feat: Add Swagger documentation support and restructure routes

- Added @elysiajs/swagger dependency to package.json for API documentation.
- Removed the old bed router and replaced it with a new history router.
- Created a new state router to manage WebSocket connections and state updates.
- Implemented a comprehensive state management system with the StateManager service.
- Introduced AlarmManagement and BedService services for handling alarms and sensor readings.
- Established a new MQTT service for managing MQTT connections and subscriptions.
- Created an AlarmStateStore to manage volatile alerts and their states.
- Defined FrontendState types for structured state management and WebSocket messaging.
This commit is contained in:
Siwat Sirichai 2025-06-21 18:56:34 +07:00
parent a767dc3635
commit 4ae5196ef1
12 changed files with 1189 additions and 1 deletions

19
routes/swagger.ts Normal file
View file

@ -0,0 +1,19 @@
import swagger from "@elysiajs/swagger";
import Elysia from "elysia";
const swaggerElysia = new Elysia()
swaggerElysia.use(swagger({
path: '/api/docs',
documentation: {
info: {
title: "Siwat System API Template",
description: "API documentation",
version: "1.0.0",
},
tags: [
// Define your tags here
],
},
}))
export default swaggerElysia;