/** @jsxImportSource https://esm.d8d.fun/hono@4.7.4/jsx */ import { Hono } from 'hono' import { corsMiddleware, withAuth, setEnvVariables } from './middlewares.ts' import type { APIClient } from '@d8d-appcontainer/api' // 导入路由模块 import { createAuthRoutes } from "./routes_auth.ts" import { createUserRoutes } from "./routes_users.ts" import { createKnowInfoRoutes } from "./routes_know_info.ts" import { createFileUploadRoutes } from "./routes_file_upload.ts" import { createFileCategoryRoutes } from "./routes_file_category.ts" import { createThemeRoutes } from "./routes_theme.ts" import { createChartRoutes } from "./routes_charts.ts" import { createMapRoutes } from "./routes_maps.ts" import { createSystemSettingsRoutes } from "./routes_system_settings.ts" import { createMessagesRoutes } from "./routes_messages.ts" import { createMigrationsRoutes } from "./routes_migrations.ts" import { createHomeRoutes } from "./routes_home.ts" import { createZichanRoutes } from "./routes_zichan.ts"; import { createZichanAreaRoutes } from "./routes_zichan_area.ts"; import { createModbusRtuDeviceRoutes } from "./routes_modbus_rtu_device.ts"; import { createZichanCategoryRoutes } from "./routes_zichan_category.ts"; import { createZichanTransferRoutes } from "./routes_zichan_transfer.ts"; import { createDeviceTypesRoutes } from "./routes_device_types.ts"; import { createDeviceInstancesRoutes } from "./routes_device_instances.ts"; import { createBigRoutes } from "./routes_big.ts"; import { createRackServerTypeRoutes } from "./routes_rack_server_type.ts"; import { createRackServerRoutes } from "./routes_rack_server.ts"; import { createRackRoutes } from "./routes_rack.ts"; import { createMonitorDataRoutes } from "./routes_monitor_data.ts"; import { createMonitorMapRoutes } from "./routes_monitor_map.ts"; import { createDeviceAlertRulesRoutes } from "./routes_device_alert_rules.ts"; import { createAlertNotifyConfigsRoutes } from "./routes_alert_notify_configs.ts"; import { createAlertHandlesRoutes } from "./routes_alert_handles.ts"; import { createAlertsRoutes } from "./routes_alerts.ts"; import { createInspectionsRoutes } from "./routes_inspections.ts"; import { createWorkOrderRoutes } from "./routes_work_orders.ts"; import { createSmsRoutes } from "./routes_sms.ts"; export function createRouter(apiClient: APIClient, moduleDir: string) { const router = new Hono() // 添加CORS中间件 router.use('/*', corsMiddleware) // 创建API路由 const api = new Hono() // 设置环境变量 api.use('*', setEnvVariables(apiClient, moduleDir)) // 注册所有路由 api.route('/auth', createAuthRoutes(withAuth)) api.route('/sms', createSmsRoutes(withAuth)) api.route('/users', createUserRoutes(withAuth)) api.route('/know-infos', createKnowInfoRoutes(withAuth)) api.route('/upload', createFileUploadRoutes(withAuth)) api.route('/file-categories', createFileCategoryRoutes(withAuth)) api.route('/theme', createThemeRoutes(withAuth)) api.route('/charts', createChartRoutes(withAuth)) api.route('/map', createMapRoutes(withAuth)) api.route('/settings', createSystemSettingsRoutes(withAuth)) api.route('/messages', createMessagesRoutes(withAuth)) api.route('/migrations', createMigrationsRoutes(withAuth)) api.route('/home', createHomeRoutes(withAuth)) // 注册资产管理路由 api.route('/zichan', createZichanRoutes(withAuth)) // 注册资产归属区域管理路由 api.route('/zichan-areas', createZichanAreaRoutes(withAuth)) // 注册资产分类管理路由 api.route('/zichan-categories', createZichanCategoryRoutes(withAuth)) // 注册资产流转管理路由 api.route('/zichan-transfer', createZichanTransferRoutes(withAuth)) api.route('/device/types', createDeviceTypesRoutes(withAuth)); api.route('/device/instances', createDeviceInstancesRoutes(withAuth)); api.route('/device/modbus-rtu', createModbusRtuDeviceRoutes(withAuth)); api.route('/rack-server-types', createRackServerTypeRoutes(withAuth)) api.route('/racks', createRackRoutes(withAuth)) api.route('/rack-servers', createRackServerRoutes(withAuth)) api.route('/monitor/data', createMonitorDataRoutes(withAuth)) api.route('/monitor', createMonitorMapRoutes(withAuth)) api.route('/device-alert-rules', createDeviceAlertRulesRoutes(withAuth)) api.route('/alert-notify-configs', createAlertNotifyConfigsRoutes(withAuth)) api.route('/alert-handles', createAlertHandlesRoutes(withAuth)) api.route('/alerts', createAlertsRoutes(withAuth)) // 添加设备告警路由 // 注册巡检API路由 api.route('/inspections', createInspectionsRoutes(withAuth)) // 注册工单API路由 api.route('/work-orders', createWorkOrderRoutes(withAuth)) // 注册大屏API路由 api.route('/big', createBigRoutes(withAuth)) // 注册API路由到主路由器 router.route('/api', api) return router }