@hotmeshio/long-tail 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -4
- package/build/api/auth.d.ts +5 -0
- package/build/api/auth.js +42 -0
- package/build/api/bot-accounts.d.ts +50 -0
- package/build/api/bot-accounts.js +215 -0
- package/build/api/controlplane.d.ts +20 -0
- package/build/api/controlplane.js +110 -0
- package/build/api/dba.d.ts +15 -0
- package/build/api/dba.js +68 -0
- package/build/api/escalations.d.ts +70 -0
- package/build/api/escalations.js +656 -0
- package/build/api/exports.d.ts +32 -0
- package/build/api/exports.js +146 -0
- package/build/api/index.d.ts +18 -0
- package/build/api/index.js +54 -0
- package/build/api/insight.d.ts +29 -0
- package/build/api/insight.js +90 -0
- package/build/api/maintenance.d.ts +7 -0
- package/build/api/maintenance.js +28 -0
- package/build/api/mcp-runs.d.ts +16 -0
- package/build/api/mcp-runs.js +62 -0
- package/build/api/mcp.d.ts +52 -0
- package/build/api/mcp.js +212 -0
- package/build/api/namespaces.d.ts +7 -0
- package/build/{routes/escalations/helpers.js → api/namespaces.js} +24 -12
- package/build/api/roles.d.ts +25 -0
- package/build/api/roles.js +159 -0
- package/build/api/settings.d.ts +2 -0
- package/build/api/settings.js +35 -0
- package/build/api/tasks.d.ts +27 -0
- package/build/api/tasks.js +96 -0
- package/build/api/users.d.ts +44 -0
- package/build/api/users.js +162 -0
- package/build/api/workflow-sets.d.ts +26 -0
- package/build/api/workflow-sets.js +119 -0
- package/build/api/workflows.d.ts +48 -0
- package/build/api/workflows.js +298 -0
- package/build/api/yaml-workflows.d.ts +87 -0
- package/build/api/yaml-workflows.js +556 -0
- package/build/index.d.ts +4 -0
- package/build/index.js +6 -1
- package/build/lib/db/schemas/004_workflow_sets.sql +29 -0
- package/build/lib/db/schemas/005_unique_graph_topic.sql +7 -0
- package/build/lib/db/schemas/011_system_workflow_configs.sql +7 -0
- package/build/lib/events/callback.d.ts +41 -0
- package/build/lib/events/callback.js +98 -0
- package/build/modules/config.js +1 -1
- package/build/routes/auth.js +37 -36
- package/build/routes/bot-accounts.js +34 -164
- package/build/routes/controlplane.js +20 -60
- package/build/routes/dba.js +18 -28
- package/build/routes/escalations/bulk.js +17 -192
- package/build/routes/escalations/list.js +29 -75
- package/build/routes/escalations/resolve.js +3 -193
- package/build/routes/escalations/single.js +13 -122
- package/build/routes/exports.js +44 -95
- package/build/routes/index.js +2 -0
- package/build/routes/insight.js +46 -88
- package/build/routes/maintenance.js +41 -17
- package/build/routes/mcp-runs.js +52 -60
- package/build/routes/mcp.js +49 -177
- package/build/routes/namespaces.js +9 -20
- package/build/routes/roles.js +23 -97
- package/build/routes/settings.js +37 -25
- package/build/routes/tasks.js +28 -64
- package/build/routes/users.js +24 -113
- package/build/routes/workflow-sets.d.ts +2 -0
- package/build/routes/workflow-sets.js +98 -0
- package/build/routes/workflows/config.js +23 -57
- package/build/routes/workflows/discovery.js +11 -85
- package/build/routes/workflows/invocation.js +16 -84
- package/build/routes/yaml-workflows/cron.js +12 -61
- package/build/routes/yaml-workflows/crud.js +30 -223
- package/build/routes/yaml-workflows/deployment.js +15 -115
- package/build/routes/yaml-workflows/versions.js +20 -58
- package/build/sdk/index.d.ts +327 -0
- package/build/sdk/index.js +298 -0
- package/build/services/controlplane/index.d.ts +1 -2
- package/build/services/controlplane/index.js +3 -3
- package/build/services/controlplane/sql.d.ts +2 -2
- package/build/services/controlplane/sql.js +4 -5
- package/build/services/controlplane/types.d.ts +1 -0
- package/build/services/export/index.js +6 -1
- package/build/services/hotmesh-utils.js +2 -4
- package/build/services/insight/index.d.ts +7 -0
- package/build/services/insight/index.js +30 -0
- package/build/services/mcp/client/tools.js +13 -1
- package/build/services/mcp-runs/sql.js +1 -1
- package/build/services/workflow-sets/db.d.ts +16 -0
- package/build/services/workflow-sets/db.js +78 -0
- package/build/services/workflow-sets/index.d.ts +1 -0
- package/build/services/workflow-sets/index.js +11 -0
- package/build/services/workflow-sets/sql.d.ts +6 -0
- package/build/services/workflow-sets/sql.js +24 -0
- package/build/services/yaml-workflow/db-utils.d.ts +1 -0
- package/build/services/yaml-workflow/db-utils.js +4 -0
- package/build/services/yaml-workflow/db.d.ts +5 -0
- package/build/services/yaml-workflow/db.js +17 -0
- package/build/services/yaml-workflow/pipeline/build/wiring.js +14 -1
- package/build/services/yaml-workflow/pipeline/prompts.d.ts +1 -1
- package/build/services/yaml-workflow/pipeline/prompts.js +1 -1
- package/build/services/yaml-workflow/sql.d.ts +2 -1
- package/build/services/yaml-workflow/sql.js +8 -3
- package/build/services/yaml-workflow/types.d.ts +3 -0
- package/build/services/yaml-workflow/workers/callbacks.js +7 -1
- package/build/services/yaml-workflow/workers/register.js +7 -0
- package/build/start/adapters.js +4 -0
- package/build/system/index.js +6 -0
- package/build/system/mcp-servers/knowledge.js +1 -1
- package/build/system/seed/server-definitions.js +2 -1
- package/build/system/workflows/mcp-workflow-builder/activities/index.d.ts +1 -1
- package/build/system/workflows/mcp-workflow-builder/activities/index.js +2 -1
- package/build/system/workflows/mcp-workflow-builder/activities/tool-loader.d.ts +6 -0
- package/build/system/workflows/mcp-workflow-builder/activities/tool-loader.js +26 -0
- package/build/system/workflows/mcp-workflow-builder/index.js +26 -2
- package/build/system/workflows/mcp-workflow-builder/prompts.js +104 -35
- package/build/system/workflows/mcp-workflow-planner/activities/analyze.d.ts +11 -0
- package/build/system/workflows/mcp-workflow-planner/activities/analyze.js +36 -0
- package/build/system/workflows/mcp-workflow-planner/activities/index.d.ts +3 -0
- package/build/system/workflows/mcp-workflow-planner/activities/index.js +12 -0
- package/build/system/workflows/mcp-workflow-planner/activities/persist.d.ts +19 -0
- package/build/system/workflows/mcp-workflow-planner/activities/persist.js +55 -0
- package/build/system/workflows/mcp-workflow-planner/activities/plan.d.ts +10 -0
- package/build/system/workflows/mcp-workflow-planner/activities/plan.js +43 -0
- package/build/system/workflows/mcp-workflow-planner/index.d.ts +7 -0
- package/build/system/workflows/mcp-workflow-planner/index.js +152 -0
- package/build/system/workflows/mcp-workflow-planner/prompts.d.ts +7 -0
- package/build/system/workflows/mcp-workflow-planner/prompts.js +77 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/types/index.d.ts +1 -0
- package/build/types/sdk.d.ts +27 -0
- package/build/types/sdk.js +2 -0
- package/build/types/workflow-set.d.ts +44 -0
- package/build/types/workflow-set.js +5 -0
- package/dashboard/dist/assets/{AdminDashboard-BXkKGkb5.js → AdminDashboard-DRjkRSjJ.js} +2 -2
- package/dashboard/dist/assets/{AdminDashboard-BXkKGkb5.js.map → AdminDashboard-DRjkRSjJ.js.map} +1 -1
- package/dashboard/dist/assets/{AvailableEscalationsPage-DcH592mc.js → AvailableEscalationsPage-CnivX4Tz.js} +2 -2
- package/dashboard/dist/assets/{AvailableEscalationsPage-DcH592mc.js.map → AvailableEscalationsPage-CnivX4Tz.js.map} +1 -1
- package/dashboard/dist/assets/BotPicker-DwwaBhTH.js +2 -0
- package/dashboard/dist/assets/{BotPicker-A6LtzyuO.js.map → BotPicker-DwwaBhTH.js.map} +1 -1
- package/dashboard/dist/assets/{CollapsibleSection-C7nL2_mv.js → CollapsibleSection-DQpaVA0M.js} +2 -2
- package/dashboard/dist/assets/{CollapsibleSection-C7nL2_mv.js.map → CollapsibleSection-DQpaVA0M.js.map} +1 -1
- package/dashboard/dist/assets/{ConfirmDeleteModal-CWFwJrSl.js → ConfirmDeleteModal-B7JoDNvt.js} +2 -2
- package/dashboard/dist/assets/{ConfirmDeleteModal-CWFwJrSl.js.map → ConfirmDeleteModal-B7JoDNvt.js.map} +1 -1
- package/dashboard/dist/assets/{CopyableId-DbZ5c3jh.js → CopyableId-AqoZayBG.js} +2 -2
- package/dashboard/dist/assets/{CopyableId-DbZ5c3jh.js.map → CopyableId-AqoZayBG.js.map} +1 -1
- package/dashboard/dist/assets/{CredentialsPage-ClWkmLPu.js → CredentialsPage-qGw1kQzi.js} +2 -2
- package/dashboard/dist/assets/{CredentialsPage-ClWkmLPu.js.map → CredentialsPage-qGw1kQzi.js.map} +1 -1
- package/dashboard/dist/assets/{CustomDurationPicker-CtH2hReF.js → CustomDurationPicker-D1HUQcd0.js} +2 -2
- package/dashboard/dist/assets/{CustomDurationPicker-CtH2hReF.js.map → CustomDurationPicker-D1HUQcd0.js.map} +1 -1
- package/dashboard/dist/assets/{DataTable-CM5ZcpPi.js → DataTable-DKvSKoVG.js} +2 -2
- package/dashboard/dist/assets/{DataTable-CM5ZcpPi.js.map → DataTable-DKvSKoVG.js.map} +1 -1
- package/dashboard/dist/assets/{ElapsedCell-CwqavyeC.js → ElapsedCell-B0yrReGQ.js} +2 -2
- package/dashboard/dist/assets/{ElapsedCell-CwqavyeC.js.map → ElapsedCell-B0yrReGQ.js.map} +1 -1
- package/dashboard/dist/assets/{EmptyState-BBn78pmm.js → EmptyState-X0fIzYID.js} +2 -2
- package/dashboard/dist/assets/{EmptyState-BBn78pmm.js.map → EmptyState-X0fIzYID.js.map} +1 -1
- package/dashboard/dist/assets/{EscalationsOverview-BcJ2E3X7.js → EscalationsOverview-BQAT9W7r.js} +2 -2
- package/dashboard/dist/assets/{EscalationsOverview-BcJ2E3X7.js.map → EscalationsOverview-BQAT9W7r.js.map} +1 -1
- package/dashboard/dist/assets/{EventTable-C1en_KZ0.js → EventTable-CX1KNLhZ.js} +2 -2
- package/dashboard/dist/assets/{EventTable-C1en_KZ0.js.map → EventTable-CX1KNLhZ.js.map} +1 -1
- package/dashboard/dist/assets/{FilterBar-CZTlrLQT.js → FilterBar-DMTvuQy-.js} +2 -2
- package/dashboard/dist/assets/{FilterBar-CZTlrLQT.js.map → FilterBar-DMTvuQy-.js.map} +1 -1
- package/dashboard/dist/assets/{ListToolbar-Cdbsapig.js → ListToolbar-DTOSxoEy.js} +2 -2
- package/dashboard/dist/assets/{ListToolbar-Cdbsapig.js.map → ListToolbar-DTOSxoEy.js.map} +1 -1
- package/dashboard/dist/assets/{McpOverview-CSpEJxKa.js → McpOverview-BaKTIWrG.js} +2 -2
- package/dashboard/dist/assets/{McpOverview-CSpEJxKa.js.map → McpOverview-BaKTIWrG.js.map} +1 -1
- package/dashboard/dist/assets/McpQueryDetailPage-CC08T5k8.js +5 -0
- package/dashboard/dist/assets/McpQueryDetailPage-CC08T5k8.js.map +1 -0
- package/dashboard/dist/assets/McpQueryPage-CVfF9dYg.js +2 -0
- package/dashboard/dist/assets/McpQueryPage-CVfF9dYg.js.map +1 -0
- package/dashboard/dist/assets/{McpRunDetailPage-9xdxgG4d.js → McpRunDetailPage-CKs1RWeV.js} +2 -2
- package/dashboard/dist/assets/{McpRunDetailPage-9xdxgG4d.js.map → McpRunDetailPage-CKs1RWeV.js.map} +1 -1
- package/dashboard/dist/assets/{McpRunsPage-wWLqHsd4.js → McpRunsPage-CcPD_tY1.js} +2 -2
- package/dashboard/dist/assets/{McpRunsPage-wWLqHsd4.js.map → McpRunsPage-CcPD_tY1.js.map} +1 -1
- package/dashboard/dist/assets/{Modal-kB_P7ZOr.js → Modal-_2AbWxJT.js} +2 -2
- package/dashboard/dist/assets/{Modal-kB_P7ZOr.js.map → Modal-_2AbWxJT.js.map} +1 -1
- package/dashboard/dist/assets/OperatorDashboard-BGiRaRDr.js +2 -0
- package/dashboard/dist/assets/{OperatorDashboard-jc0vrgDI.js.map → OperatorDashboard-BGiRaRDr.js.map} +1 -1
- package/dashboard/dist/assets/{PageHeader-NkOeBR05.js → PageHeader-DVr5Qyzm.js} +2 -2
- package/dashboard/dist/assets/{PageHeader-NkOeBR05.js.map → PageHeader-DVr5Qyzm.js.map} +1 -1
- package/dashboard/dist/assets/{PageHeaderWithStats-ywNhrmFK.js → PageHeaderWithStats-D0KRASML.js} +2 -2
- package/dashboard/dist/assets/{PageHeaderWithStats-ywNhrmFK.js.map → PageHeaderWithStats-D0KRASML.js.map} +1 -1
- package/dashboard/dist/assets/{PriorityBadge-B2MQbSxy.js → PriorityBadge-Bx2559OU.js} +2 -2
- package/dashboard/dist/assets/{PriorityBadge-B2MQbSxy.js.map → PriorityBadge-Bx2559OU.js.map} +1 -1
- package/dashboard/dist/assets/{ProcessDetailPage-B7z7IdqE.js → ProcessDetailPage-69I--sry.js} +2 -2
- package/dashboard/dist/assets/{ProcessDetailPage-B7z7IdqE.js.map → ProcessDetailPage-69I--sry.js.map} +1 -1
- package/dashboard/dist/assets/{ProcessesListPage-C-uHadO6.js → ProcessesListPage-BDpUbua2.js} +2 -2
- package/dashboard/dist/assets/{ProcessesListPage-C-uHadO6.js.map → ProcessesListPage-BDpUbua2.js.map} +1 -1
- package/dashboard/dist/assets/{RolePill-C1dgC-fK.js → RolePill-CcAqEaSt.js} +2 -2
- package/dashboard/dist/assets/{RolePill-C1dgC-fK.js.map → RolePill-CcAqEaSt.js.map} +1 -1
- package/dashboard/dist/assets/{RolesPage-BSxrD1vm.js → RolesPage-Cl23Hjet.js} +2 -2
- package/dashboard/dist/assets/{RolesPage-BSxrD1vm.js.map → RolesPage-Cl23Hjet.js.map} +1 -1
- package/dashboard/dist/assets/{RowActions-lYaHGI-v.js → RowActions-B4mqIt3Z.js} +2 -2
- package/dashboard/dist/assets/{RowActions-lYaHGI-v.js.map → RowActions-B4mqIt3Z.js.map} +1 -1
- package/dashboard/dist/assets/{StatCard-v2TiITVr.js → StatCard-Cz_2OjAZ.js} +2 -2
- package/dashboard/dist/assets/{StatCard-v2TiITVr.js.map → StatCard-Cz_2OjAZ.js.map} +1 -1
- package/dashboard/dist/assets/{StatusBadge-DWlxevgG.js → StatusBadge-Wi2FJZsn.js} +2 -2
- package/dashboard/dist/assets/{StatusBadge-DWlxevgG.js.map → StatusBadge-Wi2FJZsn.js.map} +1 -1
- package/dashboard/dist/assets/{StepIndicator-CRM4ft28.js → StepIndicator-PW5NRDMb.js} +2 -2
- package/dashboard/dist/assets/{StepIndicator-CRM4ft28.js.map → StepIndicator-PW5NRDMb.js.map} +1 -1
- package/dashboard/dist/assets/{StickyPagination-CF0EToEU.js → StickyPagination-Bl2Uzz65.js} +2 -2
- package/dashboard/dist/assets/{StickyPagination-CF0EToEU.js.map → StickyPagination-Bl2Uzz65.js.map} +1 -1
- package/dashboard/dist/assets/{SwimlaneTimeline-CNlj7fgg.js → SwimlaneTimeline-CUPqMd0z.js} +2 -2
- package/dashboard/dist/assets/{SwimlaneTimeline-CNlj7fgg.js.map → SwimlaneTimeline-CUPqMd0z.js.map} +1 -1
- package/dashboard/dist/assets/{TagInput-CH8qMGhC.js → TagInput-BLtf86Ly.js} +2 -2
- package/dashboard/dist/assets/{TagInput-CH8qMGhC.js.map → TagInput-BLtf86Ly.js.map} +1 -1
- package/dashboard/dist/assets/{TaskDetailPage-CdWo-6mu.js → TaskDetailPage-BXJFX74D.js} +2 -2
- package/dashboard/dist/assets/{TaskDetailPage-CdWo-6mu.js.map → TaskDetailPage-BXJFX74D.js.map} +1 -1
- package/dashboard/dist/assets/{TaskQueuePill-BPj4ogVG.js → TaskQueuePill-CWYj3xKe.js} +2 -2
- package/dashboard/dist/assets/{TaskQueuePill-BPj4ogVG.js.map → TaskQueuePill-CWYj3xKe.js.map} +1 -1
- package/dashboard/dist/assets/{TasksListPage-CtRkMpKU.js → TasksListPage-C3cX94Mw.js} +2 -2
- package/dashboard/dist/assets/{TasksListPage-CtRkMpKU.js.map → TasksListPage-C3cX94Mw.js.map} +1 -1
- package/dashboard/dist/assets/{TimeAgo-Di1a3X5P.js → TimeAgo-B_5yDDHV.js} +2 -2
- package/dashboard/dist/assets/{TimeAgo-Di1a3X5P.js.map → TimeAgo-B_5yDDHV.js.map} +1 -1
- package/dashboard/dist/assets/{TimestampCell-CqrXql-S.js → TimestampCell-DRX724uU.js} +2 -2
- package/dashboard/dist/assets/{TimestampCell-CqrXql-S.js.map → TimestampCell-DRX724uU.js.map} +1 -1
- package/dashboard/dist/assets/{UserName-BUFYCnRa.js → UserName-Ca8FA469.js} +2 -2
- package/dashboard/dist/assets/{UserName-BUFYCnRa.js.map → UserName-Ca8FA469.js.map} +1 -1
- package/dashboard/dist/assets/{WorkflowExecutionPage-25iusMml.js → WorkflowExecutionPage-BBYWEV2P.js} +2 -2
- package/dashboard/dist/assets/{WorkflowExecutionPage-25iusMml.js.map → WorkflowExecutionPage-BBYWEV2P.js.map} +1 -1
- package/dashboard/dist/assets/WorkflowPill-BXifAuLi.js +2 -0
- package/dashboard/dist/assets/{WorkflowPill-DPKOcbf4.js.map → WorkflowPill-BXifAuLi.js.map} +1 -1
- package/dashboard/dist/assets/{WorkflowsDashboard-BgxslssH.js → WorkflowsDashboard-Drl3juz9.js} +2 -2
- package/dashboard/dist/assets/{WorkflowsDashboard-BgxslssH.js.map → WorkflowsDashboard-Drl3juz9.js.map} +1 -1
- package/dashboard/dist/assets/{WorkflowsOverview-Doe5L-Re.js → WorkflowsOverview-03IRrDLg.js} +2 -2
- package/dashboard/dist/assets/{WorkflowsOverview-Doe5L-Re.js.map → WorkflowsOverview-03IRrDLg.js.map} +1 -1
- package/dashboard/dist/assets/YamlWorkflowsPage-DC2cLxVi.js +2 -0
- package/dashboard/dist/assets/YamlWorkflowsPage-DC2cLxVi.js.map +1 -0
- package/dashboard/dist/assets/{bots-Bi2_O1Ts.js → bots-DZEXcgiJ.js} +2 -2
- package/dashboard/dist/assets/{bots-Bi2_O1Ts.js.map → bots-DZEXcgiJ.js.map} +1 -1
- package/dashboard/dist/assets/{escalation-Ck1KlLkT.js → escalation-Cw48lNaF.js} +2 -2
- package/dashboard/dist/assets/{escalation-Ck1KlLkT.js.map → escalation-Cw48lNaF.js.map} +1 -1
- package/dashboard/dist/assets/{escalation-columns-ohDsj2eJ.js → escalation-columns-NINpo3qf.js} +2 -2
- package/dashboard/dist/assets/{escalation-columns-ohDsj2eJ.js.map → escalation-columns-NINpo3qf.js.map} +1 -1
- package/dashboard/dist/assets/helpers-Cuu3xKfr.js +2 -0
- package/dashboard/dist/assets/helpers-Cuu3xKfr.js.map +1 -0
- package/dashboard/dist/assets/{helpers-BoD2SgUY.js → helpers-fk_qr729.js} +2 -2
- package/dashboard/dist/assets/{helpers-BoD2SgUY.js.map → helpers-fk_qr729.js.map} +1 -1
- package/dashboard/dist/assets/index-B98ipWxE.js +2 -0
- package/dashboard/dist/assets/{index-D7zYZOnH.js.map → index-B98ipWxE.js.map} +1 -1
- package/dashboard/dist/assets/{index-BEtLIsML.js → index-BIG3KooI.js} +2 -2
- package/dashboard/dist/assets/{index-BEtLIsML.js.map → index-BIG3KooI.js.map} +1 -1
- package/dashboard/dist/assets/{index-DYyLF-Qb.js → index-BwN3KP_L.js} +5 -5
- package/dashboard/dist/assets/{index-DYyLF-Qb.js.map → index-BwN3KP_L.js.map} +1 -1
- package/dashboard/dist/assets/index-Bxe8h1x4.js +17 -0
- package/dashboard/dist/assets/{index-DOkHXmyf.js.map → index-Bxe8h1x4.js.map} +1 -1
- package/dashboard/dist/assets/{index-FuohTtaM.js → index-CNI7k7oB.js} +3 -3
- package/dashboard/dist/assets/{index-FuohTtaM.js.map → index-CNI7k7oB.js.map} +1 -1
- package/dashboard/dist/assets/{index-CZrJ09p-.js → index-CORHB0WC.js} +2 -2
- package/dashboard/dist/assets/{index-CZrJ09p-.js.map → index-CORHB0WC.js.map} +1 -1
- package/dashboard/dist/assets/{index-PyCTS05D.css → index-DcIKW-cZ.css} +1 -1
- package/dashboard/dist/assets/{index-D3NyVADW.js → index-Dj-z-x8M.js} +2 -2
- package/dashboard/dist/assets/index-Dj-z-x8M.js.map +1 -0
- package/dashboard/dist/assets/{index-Bn2xHDr8.js → index-DwRytW9O.js} +3 -3
- package/dashboard/dist/assets/{index-Bn2xHDr8.js.map → index-DwRytW9O.js.map} +1 -1
- package/dashboard/dist/assets/index-aRvL-dXp.js +2 -0
- package/dashboard/dist/assets/{index-Dk2Q51o0.js.map → index-aRvL-dXp.js.map} +1 -1
- package/dashboard/dist/assets/index-b03HlbnH.js +2 -0
- package/dashboard/dist/assets/{index-BpT-6WgJ.js.map → index-b03HlbnH.js.map} +1 -1
- package/dashboard/dist/assets/{mcp-CJtYjA7A.js → mcp-BZoFryNc.js} +2 -2
- package/dashboard/dist/assets/{mcp-CJtYjA7A.js.map → mcp-BZoFryNc.js.map} +1 -1
- package/dashboard/dist/assets/mcp-query-wiw1kwm8.js +2 -0
- package/dashboard/dist/assets/mcp-query-wiw1kwm8.js.map +1 -0
- package/dashboard/dist/assets/{mcp-runs-DUWm9Z4V.js → mcp-runs-BaEKnf5v.js} +2 -2
- package/dashboard/dist/assets/{mcp-runs-DUWm9Z4V.js.map → mcp-runs-BaEKnf5v.js.map} +1 -1
- package/dashboard/dist/assets/{namespaces-BM5P2qmL.js → namespaces-BwnZI4_A.js} +2 -2
- package/dashboard/dist/assets/{namespaces-BM5P2qmL.js.map → namespaces-BwnZI4_A.js.map} +1 -1
- package/dashboard/dist/assets/{roles-lv0shpjJ.js → roles-Bgn1K8zU.js} +2 -2
- package/dashboard/dist/assets/{roles-lv0shpjJ.js.map → roles-Bgn1K8zU.js.map} +1 -1
- package/dashboard/dist/assets/{settings-Wlq92mRo.js → settings-CizYiutL.js} +2 -2
- package/dashboard/dist/assets/{settings-Wlq92mRo.js.map → settings-CizYiutL.js.map} +1 -1
- package/dashboard/dist/assets/{tasks-BFGm4PuE.js → tasks-Bmte_hc4.js} +2 -2
- package/dashboard/dist/assets/{tasks-BFGm4PuE.js.map → tasks-Bmte_hc4.js.map} +1 -1
- package/dashboard/dist/assets/{useEventHooks-DIE6ue4x.js → useEventHooks-CUCxpiI2.js} +2 -2
- package/dashboard/dist/assets/{useEventHooks-DIE6ue4x.js.map → useEventHooks-CUCxpiI2.js.map} +1 -1
- package/dashboard/dist/assets/{useYamlActivityEvents-DCwSO73t.js → useYamlActivityEvents-Cum02Ej9.js} +2 -2
- package/dashboard/dist/assets/{useYamlActivityEvents-DCwSO73t.js.map → useYamlActivityEvents-Cum02Ej9.js.map} +1 -1
- package/dashboard/dist/assets/{users-tA5-K0wA.js → users-NSDgTt-z.js} +2 -2
- package/dashboard/dist/assets/{users-tA5-K0wA.js.map → users-NSDgTt-z.js.map} +1 -1
- package/dashboard/dist/assets/{vendor-icons-BiIug1SK.js → vendor-icons-D1DdudfH.js} +93 -73
- package/dashboard/dist/assets/vendor-icons-D1DdudfH.js.map +1 -0
- package/dashboard/dist/assets/{workflows-CfLc15Wr.js → workflows-k0XRdGXx.js} +2 -2
- package/dashboard/dist/assets/{workflows-CfLc15Wr.js.map → workflows-k0XRdGXx.js.map} +1 -1
- package/dashboard/dist/assets/yaml-workflows-DAre8I78.js +2 -0
- package/dashboard/dist/assets/yaml-workflows-DAre8I78.js.map +1 -0
- package/dashboard/dist/index.html +3 -3
- package/docs/epic-integration.md +224 -0
- package/docs/events.md +28 -0
- package/docs/sdk.md +177 -0
- package/docs/story.md +157 -0
- package/docs/workflow-builder.md +371 -0
- package/package.json +3 -2
- package/build/routes/escalations/helpers.d.ts +0 -5
- package/build/routes/resolve.d.ts +0 -9
- package/build/routes/resolve.js +0 -19
- package/build/routes/yaml-workflows/helpers.d.ts +0 -2
- package/build/routes/yaml-workflows/helpers.js +0 -8
- package/dashboard/dist/assets/BotPicker-A6LtzyuO.js +0 -2
- package/dashboard/dist/assets/McpQueryDetailPage-DhqEI180.js +0 -5
- package/dashboard/dist/assets/McpQueryDetailPage-DhqEI180.js.map +0 -1
- package/dashboard/dist/assets/McpQueryPage-CIiVMlqo.js +0 -2
- package/dashboard/dist/assets/McpQueryPage-CIiVMlqo.js.map +0 -1
- package/dashboard/dist/assets/OperatorDashboard-jc0vrgDI.js +0 -2
- package/dashboard/dist/assets/RunAsSelector-CJDnyp93.js +0 -2
- package/dashboard/dist/assets/RunAsSelector-CJDnyp93.js.map +0 -1
- package/dashboard/dist/assets/WorkflowPill-DPKOcbf4.js +0 -2
- package/dashboard/dist/assets/YamlWorkflowsPage-BliAckJ6.js +0 -2
- package/dashboard/dist/assets/YamlWorkflowsPage-BliAckJ6.js.map +0 -1
- package/dashboard/dist/assets/index-BpT-6WgJ.js +0 -2
- package/dashboard/dist/assets/index-D3NyVADW.js.map +0 -1
- package/dashboard/dist/assets/index-D7zYZOnH.js +0 -2
- package/dashboard/dist/assets/index-DOkHXmyf.js +0 -17
- package/dashboard/dist/assets/index-Dk2Q51o0.js +0 -2
- package/dashboard/dist/assets/mcp-query-jQJQrs_7.js +0 -2
- package/dashboard/dist/assets/mcp-query-jQJQrs_7.js.map +0 -1
- package/dashboard/dist/assets/vendor-icons-BiIug1SK.js.map +0 -1
- package/dashboard/dist/assets/yaml-workflows-D7JXNqbM.js +0 -2
- package/dashboard/dist/assets/yaml-workflows-D7JXNqbM.js.map +0 -1
- package/docs/img/01-login.png +0 -0
- package/docs/img/02-dashboard-home.png +0 -0
- package/docs/img/03-processes-list.png +0 -0
- package/docs/img/04-escalations-list.png +0 -0
- package/docs/img/05-mcp-servers.png +0 -0
- package/docs/img/06-mcp-pipelines.png +0 -0
- package/docs/img/07-workflows-list.png +0 -0
- package/docs/img/compilation/01-query-submit.png +0 -0
- package/docs/img/compilation/02-mcp-servers.png +0 -0
- package/docs/img/compilation/03-query-completed.png +0 -0
- package/docs/img/compilation/04-wizard-original.png +0 -0
- package/docs/img/compilation/05-wizard-timeline.png +0 -0
- package/docs/img/compilation/06-wizard-profile.png +0 -0
- package/docs/img/compilation/07-wizard-deploy.png +0 -0
- package/docs/img/compilation/08-wizard-test-modal.png +0 -0
- package/docs/img/compilation/09-wizard-test-compare.png +0 -0
- package/docs/img/compilation/10-wizard-verify.png +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}body{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1))}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.btn-primary{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(108 71 255 / var(--tw-bg-opacity, 1));padding:.625rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(88 53 219 / var(--tw-bg-opacity, 1))}.btn-secondary{border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.btn-ghost{border-radius:.375rem;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(91 81 115 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-ghost:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.row-hover{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s}.row-hover:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.\!input{width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\!input::-moz-placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.\!input::placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.\!input:focus{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(108 71 255 / .3)}.input{width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.input::-moz-placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.input::placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.input:focus{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(108 71 255 / .3)}.select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(108 71 255 / .3)}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-4{top:1rem;right:1rem;bottom:1rem;left:1rem}.inset-y-0{top:0;bottom:0}.-left-\[3px\]{left:-3px}.-right-1{right:-.25rem}.-right-3{right:-.75rem}.-top-1{top:-.25rem}.-top-2\.5{top:-.625rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-3{bottom:.75rem}.left-0{left:0}.left-2\.5{left:.625rem}.left-56{left:14rem}.left-\[7px\]{left:7px}.right-0{right:0}.right-2{right:.5rem}.right-3{right:.75rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-14{top:3.5rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-6{top:1.5rem}.top-\[2\.75rem\]{top:2.75rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[45\]{z-index:45}.z-\[5\]{z-index:5}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2 / span 2}.float-right{float:right}.-mx-10{margin-left:-2.5rem;margin-right:-2.5rem}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-10{margin-left:-2.5rem}.-ml-8{margin-left:-2rem}.-ml-\[12\.5rem\]{margin-left:-12.5rem}.-ml-\[9\.75rem\]{margin-left:-9.75rem}.-mt-1{margin-top:-.25rem}.-mt-6{margin-top:-1.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-7{margin-left:1.75rem}.ml-8{margin-left:2rem}.ml-9{margin-left:2.25rem}.ml-\[19px\]{margin-left:19px}.ml-auto{margin-left:auto}.mr-16{margin-right:4rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-8{height:2rem}.h-\[12\.5rem\]{height:12.5rem}.h-\[14px\]{height:14px}.h-\[15px\]{height:15px}.h-\[16rem\]{height:16rem}.h-\[18px\]{height:18px}.h-\[7px\]{height:7px}.h-\[80px\]{height:80px}.h-\[9px\]{height:9px}.h-\[calc\(100vh-12rem\)\]{height:calc(100vh - 12rem)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-80{max-height:20rem}.max-h-\[200px\]{max-height:200px}.max-h-\[280px\]{max-height:280px}.max-h-\[300px\]{max-height:300px}.max-h-\[400px\]{max-height:400px}.max-h-\[40vh\]{max-height:40vh}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[calc\(100vh-8rem\)\]{max-height:calc(100vh - 8rem)}.max-h-none{max-height:none}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[160px\]{min-height:160px}.min-h-\[200px\]{min-height:200px}.min-h-\[300px\]{min-height:300px}.min-h-\[34px\]{min-height:34px}.min-h-\[360px\]{min-height:360px}.min-h-\[60px\]{min-height:60px}.min-h-\[80px\]{min-height:80px}.min-h-\[calc\(100vh-12rem\)\]{min-height:calc(100vh - 12rem)}.min-h-\[calc\(100vh-80px\)\]{min-height:calc(100vh - 80px)}.min-h-\[calc\(100vh-9rem\)\]{min-height:calc(100vh - 9rem)}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-52{width:13rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-8{width:2rem}.w-\[12\.5rem\]{width:12.5rem}.w-\[14px\]{width:14px}.w-\[15px\]{width:15px}.w-\[16rem\]{width:16rem}.w-\[18px\]{width:18px}.w-\[22rem\]{width:22rem}.w-\[28rem\]{width:28rem}.w-\[30\%\]{width:30%}.w-\[36rem\]{width:36rem}.w-\[380px\]{width:380px}.w-\[40vw\]{width:40vw}.w-\[48rem\]{width:48rem}.w-\[7px\]{width:7px}.w-\[9px\]{width:9px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-4{min-width:1rem}.min-w-\[180px\]{min-width:180px}.min-w-\[800px\]{min-width:800px}.min-w-\[80px\]{min-width:80px}.max-w-0{max-width:0px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[280px\]{max-width:280px}.max-w-\[85\%\]{max-width:85%}.max-w-\[90vw\]{max-width:90vw}.max-w-dashboard{max-width:1440px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[60vh\]{--tw-translate-y: -60vh;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[120vw\]{--tw-translate-x: 120vw;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-\[120deg\]{--tw-rotate: -120deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[3\]{--tw-scale-x: 3;--tw-scale-y: 3;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[triage-glow_6s_ease-in-out_infinite\]{animation:triage-glow 6s ease-in-out infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[1fr_240px\]{grid-template-columns:1fr 240px}.grid-cols-\[300px_1fr\]{grid-template-columns:300px 1fr}.grid-cols-\[3fr_1fr\]{grid-template-columns:3fr 1fr}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-surface-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(224 218 240 / var(--tw-divide-opacity, 1))}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-accent{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1))}.border-accent-faint{--tw-border-opacity: 1;border-color:rgb(232 226 248 / var(--tw-border-opacity, 1))}.border-accent-muted{--tw-border-opacity: 1;border-color:rgb(200 190 240 / var(--tw-border-opacity, 1))}.border-accent-muted\/40{border-color:#c8bef066}.border-accent\/10{border-color:#6c47ff1a}.border-accent\/20{border-color:#6c47ff33}.border-accent\/30{border-color:#6c47ff4d}.border-amber-600{--tw-border-opacity: 1;border-color:rgb(217 119 6 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-emerald-500{--tw-border-opacity: 1;border-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.border-purple-500\/20{border-color:#a855f733}.border-status-draft{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-status-error{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-status-error\/20{border-color:#dc262633}.border-status-error\/30{border-color:#dc26264d}.border-status-pending\/30{border-color:#f59e0b4d}.border-status-success{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.border-status-success\/30{border-color:#16a34a4d}.border-status-warning{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-status-warning\/20{border-color:#f59e0b33}.border-status-warning\/30{border-color:#f59e0b4d}.border-surface-border{--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1))}.border-surface-border\/30{border-color:#e0daf04d}.border-surface-border\/50{border-color:#e0daf080}.border-text-tertiary{--tw-border-opacity: 1;border-color:rgb(145 138 171 / var(--tw-border-opacity, 1))}.border-violet-500{--tw-border-opacity: 1;border-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.border-white\/70{border-color:#ffffffb3}.border-l-accent{--tw-border-opacity: 1;border-left-color:rgb(108 71 255 / var(--tw-border-opacity, 1))}.bg-\[\#6C47FF\],.bg-accent{--tw-bg-opacity: 1;background-color:rgb(108 71 255 / var(--tw-bg-opacity, 1))}.bg-accent-faint{--tw-bg-opacity: 1;background-color:rgb(232 226 248 / var(--tw-bg-opacity, 1))}.bg-accent-faint\/50{background-color:#e8e2f880}.bg-accent-muted{--tw-bg-opacity: 1;background-color:rgb(200 190 240 / var(--tw-bg-opacity, 1))}.bg-accent-muted\/20{background-color:#c8bef033}.bg-accent\/10{background-color:#6c47ff1a}.bg-accent\/15{background-color:#6c47ff26}.bg-accent\/20{background-color:#6c47ff33}.bg-accent\/5{background-color:#6c47ff0d}.bg-accent\/60{background-color:#6c47ff99}.bg-accent\/\[0\.06\]{background-color:#6c47ff0f}.bg-accent\/\[0\.08\]{background-color:#6c47ff14}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-black\/20{background-color:#0003}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/70{background-color:#3b82f6b3}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-purple-500\/10{background-color:#a855f71a}.bg-status-active{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-status-draft{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-status-draft\/30{background-color:#f973164d}.bg-status-error{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-status-error\/10{background-color:#dc26261a}.bg-status-error\/\[0\.04\]{background-color:#dc26260a}.bg-status-pending{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-status-pending\/10{background-color:#f59e0b1a}.bg-status-success{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-status-success\/10{background-color:#16a34a1a}.bg-status-success\/20{background-color:#16a34a33}.bg-status-success\/30{background-color:#16a34a4d}.bg-status-warning{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-status-warning\/10{background-color:#f59e0b1a}.bg-status-warning\/15{background-color:#f59e0b26}.bg-status-warning\/5{background-color:#f59e0b0d}.bg-surface{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-surface-border{--tw-bg-opacity: 1;background-color:rgb(224 218 240 / var(--tw-bg-opacity, 1))}.bg-surface-border\/60{background-color:#e0daf099}.bg-surface-hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.bg-surface-hover\/30{background-color:#f7f4ff4d}.bg-surface-raised{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-surface-raised\/\[0\.03\]{background-color:#ffffff08}.bg-surface-sunken{--tw-bg-opacity: 1;background-color:rgb(245 245 247 / var(--tw-bg-opacity, 1))}.bg-surface-sunken\/20{background-color:#f5f5f733}.bg-surface-sunken\/30{background-color:#f5f5f74d}.bg-surface-sunken\/40{background-color:#f5f5f766}.bg-surface-sunken\/50{background-color:#f5f5f780}.bg-surface-sunken\/80{background-color:#f5f5f7cc}.bg-surface-sunken\/90{background-color:#f5f5f7e6}.bg-surface\/90{background-color:#ffffffe6}.bg-surface\/95{background-color:#fffffff2}.bg-text-primary\/30{background-color:#1e15354d}.bg-text-secondary{--tw-bg-opacity: 1;background-color:rgb(91 81 115 / var(--tw-bg-opacity, 1))}.bg-text-tertiary{--tw-bg-opacity: 1;background-color:rgb(145 138 171 / var(--tw-bg-opacity, 1))}.bg-text-tertiary\/30{background-color:#918aab4d}.bg-transparent{background-color:transparent}.bg-violet-500{--tw-bg-opacity: 1;background-color:rgb(139 92 246 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.fill-status-active{fill:#2563eb}.fill-status-error{fill:#dc2626}.fill-status-success{fill:#16a34a}.fill-status-warning{fill:#f59e0b}.fill-text-tertiary{fill:#918aab}.stroke-current{stroke:currentColor}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-60{padding-bottom:15rem}.pl-0{padding-left:0}.pl-11{padding-left:2.75rem}.pl-14{padding-left:3.5rem}.pl-16{padding-left:4rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-52{padding-left:13rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pr-28{padding-right:7rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-6{padding-right:1.5rem}.pr-7{padding-right:1.75rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\[36px\]{padding-top:36px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace}.font-sans{font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif}.\!text-\[9px\]{font-size:9px!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[1\.5rem\]{font-size:1.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[36px\]{font-size:36px}.text-\[44px\]{font-size:44px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extralight{font-weight:200}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.15em\]{letter-spacing:.15em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent{--tw-text-opacity: 1;color:rgb(108 71 255 / var(--tw-text-opacity, 1))}.text-accent-muted{--tw-text-opacity: 1;color:rgb(200 190 240 / var(--tw-text-opacity, 1))}.text-accent\/40{color:#6c47ff66}.text-accent\/60{color:#6c47ff99}.text-accent\/70{color:#6c47ffb3}.text-accent\/75{color:#6c47ffbf}.text-accent\/80{color:#6c47ffcc}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-500\/70{color:#3b82f6b3}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-status-active{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-status-error{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-status-error\/70{color:#dc2626b3}.text-status-error\/80{color:#dc2626cc}.text-status-pending{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-status-success{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-status-success\/70{color:#16a34ab3}.text-status-success\/80{color:#16a34acc}.text-status-warning{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-surface-border{--tw-text-opacity: 1;color:rgb(224 218 240 / var(--tw-text-opacity, 1))}.text-text-inverse{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-text-primary{--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1))}.text-text-secondary{--tw-text-opacity: 1;color:rgb(91 81 115 / var(--tw-text-opacity, 1))}.text-text-tertiary{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.text-text-tertiary\/30{color:#918aab4d}.text-text-tertiary\/40{color:#918aab66}.text-text-tertiary\/50{color:#918aab80}.text-text-tertiary\/60{color:#918aab99}.text-text-tertiary\/70{color:#918aabb3}.text-violet-400{--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity, 1))}.text-violet-500{--tw-text-opacity: 1;color:rgb(139 92 246 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.decoration-text-tertiary\/30{text-decoration-color:#918aab4d}.accent-accent{accent-color:#6C47FF}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/5{--tw-shadow-color: rgb(0 0 0 / .05);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-accent{--tw-ring-opacity: 1;--tw-ring-color: rgb(108 71 255 / var(--tw-ring-opacity, 1))}.ring-offset-1{--tw-ring-offset-width: 1px}.ring-offset-surface{--tw-ring-offset-color: #FFFFFF}.brightness-150{--tw-brightness: brightness(1.5);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur: blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-\[1500ms\]{transition-duration:1.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[animation-delay\:150ms\]{animation-delay:.15s}.\[animation-delay\:300ms\]{animation-delay:.3s}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes triage-glow{0%{box-shadow:0 0 3px #6c47ff26}8.3%{box-shadow:0 0 10px 2px #6c47ff66}16.7%,to{box-shadow:0 0 3px #6c47ff26}}.animate-page-enter{animation:fadeIn .15s ease-out both}@keyframes pageFade{0%{opacity:0}to{opacity:1}}.animate-page-in{animation:pageFade .2s ease-out both}.bg-stripes{background-image:repeating-linear-gradient(-45deg,transparent,transparent 3px,rgba(255,255,255,.15) 3px,rgba(255,255,255,.15) 6px);background-color:var(--color-status-warning, #f59e0b)}.placeholder\:text-text-tertiary::-moz-placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.placeholder\:text-text-tertiary::placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.last\:border-b-0:last-child{border-bottom-width:0px}.focus-within\:ring-1:focus-within{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent\/40:hover{border-color:#6c47ff66}.hover\:border-accent\/50:hover{border-color:#6c47ff80}.hover\:border-text-tertiary:hover{--tw-border-opacity: 1;border-color:rgb(145 138 171 / var(--tw-border-opacity, 1))}.hover\:bg-accent-muted:hover{--tw-bg-opacity: 1;background-color:rgb(200 190 240 / var(--tw-bg-opacity, 1))}.hover\:bg-accent\/20:hover{background-color:#6c47ff33}.hover\:bg-accent\/30:hover{background-color:#6c47ff4d}.hover\:bg-accent\/90:hover{background-color:#6c47ffe6}.hover\:bg-accent\/\[0\.04\]:hover{background-color:#6c47ff0a}.hover\:bg-status-error\/10:hover{background-color:#dc26261a}.hover\:bg-status-error\/20:hover{background-color:#dc262633}.hover\:bg-status-error\/80:hover{background-color:#dc2626cc}.hover\:bg-status-error\/90:hover{background-color:#dc2626e6}.hover\:bg-status-success\/10:hover{background-color:#16a34a1a}.hover\:bg-status-success\/20:hover{background-color:#16a34a33}.hover\:bg-surface-hover:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-hover\/50:hover{background-color:#f7f4ff80}.hover\:bg-surface-raised:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-raised\/30:hover{background-color:#ffffff4d}.hover\:bg-surface-raised\/60:hover{background-color:#fff9}.hover\:bg-surface-sunken:hover{--tw-bg-opacity: 1;background-color:rgb(245 245 247 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-sunken\/40:hover{background-color:#f5f5f766}.hover\:text-accent:hover{--tw-text-opacity: 1;color:rgb(108 71 255 / var(--tw-text-opacity, 1))}.hover\:text-accent-hover:hover{--tw-text-opacity: 1;color:rgb(88 53 219 / var(--tw-text-opacity, 1))}.hover\:text-accent\/80:hover{color:#6c47ffcc}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-status-error:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-status-success:hover{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.hover\:text-status-warning:hover{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.hover\:text-status-warning\/80:hover{color:#f59e0bcc}.hover\:text-text-primary:hover{--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1))}.hover\:text-text-secondary:hover{--tw-text-opacity: 1;color:rgb(91 81 115 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:border-accent:focus{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-accent:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(108 71 255 / var(--tw-ring-opacity, 1))}.focus\:ring-accent\/40:focus{--tw-ring-color: rgb(108 71 255 / .4)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:no-underline:disabled{text-decoration-line:none}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group\/section:hover .group-hover\/section\:text-text-tertiary{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-accent{--tw-text-opacity: 1;color:rgb(108 71 255 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-accent-hover{--tw-text-opacity: 1;color:rgb(88 53 219 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-text-primary{--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:underline{text-decoration-line:underline}.group\/key:hover .group-hover\/key\:opacity-100,.group\/row:hover .group-hover\/row\:opacity-100{opacity:1}.group\/sorthead:hover .group-hover\/sorthead\:opacity-40{opacity:.4}.group\/task:hover .group-hover\/task\:opacity-100,.group\/trace:hover .group-hover\/trace\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:w-72{width:18rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:grid-cols-\[1fr_340px\]{grid-template-columns:1fr 340px}.lg\:grid-cols-\[1fr_360px\]{grid-template-columns:1fr 360px}.lg\:grid-cols-\[1fr_400px\]{grid-template-columns:1fr 400px}.lg\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.lg\:border-l{border-left-width:1px}.lg\:border-surface-border{--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1))}.lg\:pl-12{padding-left:3rem}}
|
|
1
|
+
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}body{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1))}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.btn-primary{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgb(108 71 255 / var(--tw-bg-opacity, 1));padding:.625rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-primary:hover{--tw-bg-opacity: 1;background-color:rgb(88 53 219 / var(--tw-bg-opacity, 1))}.btn-secondary{border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem 1.25rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-secondary:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.btn-ghost{border-radius:.375rem;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(91 81 115 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-ghost:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.row-hover{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s}.row-hover:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.\!input{width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\!input::-moz-placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.\!input::placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.\!input:focus{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(108 71 255 / .3)}.input{width:100%;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.input::-moz-placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.input::placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.input:focus{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1));outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(108 71 255 / .3)}.select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.625rem .875rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(108 71 255 / .3)}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-4{top:1rem;right:1rem;bottom:1rem;left:1rem}.inset-y-0{top:0;bottom:0}.-left-\[3px\]{left:-3px}.-right-1{right:-.25rem}.-right-3{right:-.75rem}.-top-1{top:-.25rem}.-top-2\.5{top:-.625rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-3{bottom:.75rem}.left-0{left:0}.left-2\.5{left:.625rem}.left-56{left:14rem}.left-\[7px\]{left:7px}.right-0{right:0}.right-2{right:.5rem}.right-3{right:.75rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-14{top:3.5rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-6{top:1.5rem}.top-\[2\.75rem\]{top:2.75rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[45\]{z-index:45}.z-\[5\]{z-index:5}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2 / span 2}.float-right{float:right}.-mx-10{margin-left:-2.5rem;margin-right:-2.5rem}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-10{margin-left:-2.5rem}.-ml-8{margin-left:-2rem}.-ml-\[12\.5rem\]{margin-left:-12.5rem}.-ml-\[9\.75rem\]{margin-left:-9.75rem}.-mt-1{margin-top:-.25rem}.-mt-6{margin-top:-1.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-7{margin-left:1.75rem}.ml-8{margin-left:2rem}.ml-9{margin-left:2.25rem}.ml-\[19px\]{margin-left:19px}.ml-auto{margin-left:auto}.mr-16{margin-right:4rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-60{height:15rem}.h-8{height:2rem}.h-\[12\.5rem\]{height:12.5rem}.h-\[14px\]{height:14px}.h-\[15px\]{height:15px}.h-\[16rem\]{height:16rem}.h-\[18px\]{height:18px}.h-\[7px\]{height:7px}.h-\[80px\]{height:80px}.h-\[9px\]{height:9px}.h-\[calc\(100vh-12rem\)\]{height:calc(100vh - 12rem)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-80{max-height:20rem}.max-h-\[200px\]{max-height:200px}.max-h-\[280px\]{max-height:280px}.max-h-\[300px\]{max-height:300px}.max-h-\[400px\]{max-height:400px}.max-h-\[40vh\]{max-height:40vh}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[calc\(100vh-8rem\)\]{max-height:calc(100vh - 8rem)}.max-h-none{max-height:none}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[160px\]{min-height:160px}.min-h-\[200px\]{min-height:200px}.min-h-\[300px\]{min-height:300px}.min-h-\[34px\]{min-height:34px}.min-h-\[360px\]{min-height:360px}.min-h-\[60px\]{min-height:60px}.min-h-\[80px\]{min-height:80px}.min-h-\[calc\(100vh-12rem\)\]{min-height:calc(100vh - 12rem)}.min-h-\[calc\(100vh-80px\)\]{min-height:calc(100vh - 80px)}.min-h-\[calc\(100vh-9rem\)\]{min-height:calc(100vh - 9rem)}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-52{width:13rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-8{width:2rem}.w-\[12\.5rem\]{width:12.5rem}.w-\[14px\]{width:14px}.w-\[15px\]{width:15px}.w-\[16rem\]{width:16rem}.w-\[18px\]{width:18px}.w-\[22rem\]{width:22rem}.w-\[28rem\]{width:28rem}.w-\[30\%\]{width:30%}.w-\[36rem\]{width:36rem}.w-\[380px\]{width:380px}.w-\[40vw\]{width:40vw}.w-\[48rem\]{width:48rem}.w-\[7px\]{width:7px}.w-\[9px\]{width:9px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-4{min-width:1rem}.min-w-\[180px\]{min-width:180px}.min-w-\[800px\]{min-width:800px}.min-w-\[80px\]{min-width:80px}.max-w-0{max-width:0px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[280px\]{max-width:280px}.max-w-\[85\%\]{max-width:85%}.max-w-\[90vw\]{max-width:90vw}.max-w-dashboard{max-width:1440px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[60vh\]{--tw-translate-y: -60vh;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[120vw\]{--tw-translate-x: 120vw;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-\[120deg\]{--tw-rotate: -120deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[3\]{--tw-scale-x: 3;--tw-scale-y: 3;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[triage-glow_6s_ease-in-out_infinite\]{animation:triage-glow 6s ease-in-out infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[1fr_240px\]{grid-template-columns:1fr 240px}.grid-cols-\[300px_1fr\]{grid-template-columns:300px 1fr}.grid-cols-\[3fr_1fr\]{grid-template-columns:3fr 1fr}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-surface-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(224 218 240 / var(--tw-divide-opacity, 1))}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-r-md{border-top-right-radius:.375rem;border-bottom-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-accent{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1))}.border-accent-faint{--tw-border-opacity: 1;border-color:rgb(232 226 248 / var(--tw-border-opacity, 1))}.border-accent-muted{--tw-border-opacity: 1;border-color:rgb(200 190 240 / var(--tw-border-opacity, 1))}.border-accent-muted\/40{border-color:#c8bef066}.border-accent\/10{border-color:#6c47ff1a}.border-accent\/20{border-color:#6c47ff33}.border-accent\/30{border-color:#6c47ff4d}.border-amber-600{--tw-border-opacity: 1;border-color:rgb(217 119 6 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-emerald-500{--tw-border-opacity: 1;border-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.border-purple-500\/20{border-color:#a855f733}.border-status-draft{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-status-error{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-status-error\/20{border-color:#dc262633}.border-status-error\/30{border-color:#dc26264d}.border-status-pending\/30{border-color:#f59e0b4d}.border-status-success{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.border-status-success\/30{border-color:#16a34a4d}.border-status-warning{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-status-warning\/20{border-color:#f59e0b33}.border-status-warning\/30{border-color:#f59e0b4d}.border-surface-border{--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1))}.border-surface-border\/30{border-color:#e0daf04d}.border-surface-border\/50{border-color:#e0daf080}.border-text-tertiary{--tw-border-opacity: 1;border-color:rgb(145 138 171 / var(--tw-border-opacity, 1))}.border-violet-500{--tw-border-opacity: 1;border-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.border-white\/70{border-color:#ffffffb3}.border-l-accent{--tw-border-opacity: 1;border-left-color:rgb(108 71 255 / var(--tw-border-opacity, 1))}.bg-\[\#6C47FF\],.bg-accent{--tw-bg-opacity: 1;background-color:rgb(108 71 255 / var(--tw-bg-opacity, 1))}.bg-accent-faint{--tw-bg-opacity: 1;background-color:rgb(232 226 248 / var(--tw-bg-opacity, 1))}.bg-accent-faint\/50{background-color:#e8e2f880}.bg-accent-muted{--tw-bg-opacity: 1;background-color:rgb(200 190 240 / var(--tw-bg-opacity, 1))}.bg-accent-muted\/20{background-color:#c8bef033}.bg-accent\/10{background-color:#6c47ff1a}.bg-accent\/15{background-color:#6c47ff26}.bg-accent\/20{background-color:#6c47ff33}.bg-accent\/5{background-color:#6c47ff0d}.bg-accent\/60{background-color:#6c47ff99}.bg-accent\/\[0\.06\]{background-color:#6c47ff0f}.bg-accent\/\[0\.08\]{background-color:#6c47ff14}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-black\/20{background-color:#0003}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/70{background-color:#3b82f6b3}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-purple-500\/10{background-color:#a855f71a}.bg-status-active{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-status-draft{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-status-draft\/30{background-color:#f973164d}.bg-status-error{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-status-error\/10{background-color:#dc26261a}.bg-status-error\/5{background-color:#dc26260d}.bg-status-error\/\[0\.04\]{background-color:#dc26260a}.bg-status-pending{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-status-pending\/10{background-color:#f59e0b1a}.bg-status-success{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-status-success\/10{background-color:#16a34a1a}.bg-status-success\/20{background-color:#16a34a33}.bg-status-success\/30{background-color:#16a34a4d}.bg-status-warning{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-status-warning\/10{background-color:#f59e0b1a}.bg-status-warning\/15{background-color:#f59e0b26}.bg-status-warning\/5{background-color:#f59e0b0d}.bg-surface{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-surface-border{--tw-bg-opacity: 1;background-color:rgb(224 218 240 / var(--tw-bg-opacity, 1))}.bg-surface-border\/60{background-color:#e0daf099}.bg-surface-hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.bg-surface-hover\/30{background-color:#f7f4ff4d}.bg-surface-raised{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-surface-raised\/50{background-color:#ffffff80}.bg-surface-raised\/\[0\.03\]{background-color:#ffffff08}.bg-surface-sunken{--tw-bg-opacity: 1;background-color:rgb(245 245 247 / var(--tw-bg-opacity, 1))}.bg-surface-sunken\/20{background-color:#f5f5f733}.bg-surface-sunken\/30{background-color:#f5f5f74d}.bg-surface-sunken\/40{background-color:#f5f5f766}.bg-surface-sunken\/50{background-color:#f5f5f780}.bg-surface-sunken\/80{background-color:#f5f5f7cc}.bg-surface-sunken\/90{background-color:#f5f5f7e6}.bg-surface\/90{background-color:#ffffffe6}.bg-surface\/95{background-color:#fffffff2}.bg-text-primary\/30{background-color:#1e15354d}.bg-text-secondary{--tw-bg-opacity: 1;background-color:rgb(91 81 115 / var(--tw-bg-opacity, 1))}.bg-text-tertiary{--tw-bg-opacity: 1;background-color:rgb(145 138 171 / var(--tw-bg-opacity, 1))}.bg-text-tertiary\/30{background-color:#918aab4d}.bg-transparent{background-color:transparent}.bg-violet-500{--tw-bg-opacity: 1;background-color:rgb(139 92 246 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.fill-status-active{fill:#2563eb}.fill-status-error{fill:#dc2626}.fill-status-success{fill:#16a34a}.fill-status-warning{fill:#f59e0b}.fill-text-tertiary{fill:#918aab}.stroke-current{stroke:currentColor}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-60{padding-bottom:15rem}.pl-0{padding-left:0}.pl-11{padding-left:2.75rem}.pl-14{padding-left:3.5rem}.pl-16{padding-left:4rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-52{padding-left:13rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pr-28{padding-right:7rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-6{padding-right:1.5rem}.pr-7{padding-right:1.75rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\[36px\]{padding-top:36px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace}.font-sans{font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif}.\!text-\[9px\]{font-size:9px!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[1\.5rem\]{font-size:1.5rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[36px\]{font-size:36px}.text-\[44px\]{font-size:44px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extralight{font-weight:200}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.15em\]{letter-spacing:.15em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent{--tw-text-opacity: 1;color:rgb(108 71 255 / var(--tw-text-opacity, 1))}.text-accent-muted{--tw-text-opacity: 1;color:rgb(200 190 240 / var(--tw-text-opacity, 1))}.text-accent\/40{color:#6c47ff66}.text-accent\/60{color:#6c47ff99}.text-accent\/70{color:#6c47ffb3}.text-accent\/75{color:#6c47ffbf}.text-accent\/80{color:#6c47ffcc}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-500\/70{color:#3b82f6b3}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-status-active{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-status-error{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-status-error\/70{color:#dc2626b3}.text-status-error\/80{color:#dc2626cc}.text-status-pending{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-status-success{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-status-success\/70{color:#16a34ab3}.text-status-success\/80{color:#16a34acc}.text-status-warning{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-surface-border{--tw-text-opacity: 1;color:rgb(224 218 240 / var(--tw-text-opacity, 1))}.text-text-inverse{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-text-primary{--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1))}.text-text-secondary{--tw-text-opacity: 1;color:rgb(91 81 115 / var(--tw-text-opacity, 1))}.text-text-tertiary{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.text-text-tertiary\/30{color:#918aab4d}.text-text-tertiary\/40{color:#918aab66}.text-text-tertiary\/50{color:#918aab80}.text-text-tertiary\/60{color:#918aab99}.text-text-tertiary\/70{color:#918aabb3}.text-violet-400{--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity, 1))}.text-violet-500{--tw-text-opacity: 1;color:rgb(139 92 246 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.decoration-text-tertiary\/30{text-decoration-color:#918aab4d}.accent-accent{accent-color:#6C47FF}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/5{--tw-shadow-color: rgb(0 0 0 / .05);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-accent{--tw-ring-opacity: 1;--tw-ring-color: rgb(108 71 255 / var(--tw-ring-opacity, 1))}.ring-offset-1{--tw-ring-offset-width: 1px}.ring-offset-surface{--tw-ring-offset-color: #FFFFFF}.brightness-150{--tw-brightness: brightness(1.5);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur: blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-\[1500ms\]{transition-duration:1.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[animation-delay\:150ms\]{animation-delay:.15s}.\[animation-delay\:300ms\]{animation-delay:.3s}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes triage-glow{0%{box-shadow:0 0 3px #6c47ff26}8.3%{box-shadow:0 0 10px 2px #6c47ff66}16.7%,to{box-shadow:0 0 3px #6c47ff26}}.animate-page-enter{animation:fadeIn .15s ease-out both}@keyframes pageFade{0%{opacity:0}to{opacity:1}}.animate-page-in{animation:pageFade .2s ease-out both}.bg-stripes{background-image:repeating-linear-gradient(-45deg,transparent,transparent 3px,rgba(255,255,255,.15) 3px,rgba(255,255,255,.15) 6px);background-color:var(--color-status-warning, #f59e0b)}.placeholder\:text-text-tertiary::-moz-placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.placeholder\:text-text-tertiary::placeholder{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.last\:border-b-0:last-child{border-bottom-width:0px}.focus-within\:ring-1:focus-within{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent\/40:hover{border-color:#6c47ff66}.hover\:border-accent\/50:hover{border-color:#6c47ff80}.hover\:border-text-tertiary:hover{--tw-border-opacity: 1;border-color:rgb(145 138 171 / var(--tw-border-opacity, 1))}.hover\:bg-accent-muted:hover{--tw-bg-opacity: 1;background-color:rgb(200 190 240 / var(--tw-bg-opacity, 1))}.hover\:bg-accent\/20:hover{background-color:#6c47ff33}.hover\:bg-accent\/30:hover{background-color:#6c47ff4d}.hover\:bg-accent\/90:hover{background-color:#6c47ffe6}.hover\:bg-accent\/\[0\.04\]:hover{background-color:#6c47ff0a}.hover\:bg-status-error\/10:hover{background-color:#dc26261a}.hover\:bg-status-error\/20:hover{background-color:#dc262633}.hover\:bg-status-error\/80:hover{background-color:#dc2626cc}.hover\:bg-status-error\/90:hover{background-color:#dc2626e6}.hover\:bg-status-success\/10:hover{background-color:#16a34a1a}.hover\:bg-status-success\/20:hover{background-color:#16a34a33}.hover\:bg-surface-hover:hover{--tw-bg-opacity: 1;background-color:rgb(247 244 255 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-hover\/50:hover{background-color:#f7f4ff80}.hover\:bg-surface-raised:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-raised\/30:hover{background-color:#ffffff4d}.hover\:bg-surface-raised\/60:hover{background-color:#fff9}.hover\:bg-surface-sunken:hover{--tw-bg-opacity: 1;background-color:rgb(245 245 247 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-sunken\/40:hover{background-color:#f5f5f766}.hover\:text-accent:hover{--tw-text-opacity: 1;color:rgb(108 71 255 / var(--tw-text-opacity, 1))}.hover\:text-accent-hover:hover{--tw-text-opacity: 1;color:rgb(88 53 219 / var(--tw-text-opacity, 1))}.hover\:text-accent\/80:hover{color:#6c47ffcc}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-status-error:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-status-success:hover{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.hover\:text-status-warning:hover{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.hover\:text-status-warning\/80:hover{color:#f59e0bcc}.hover\:text-text-primary:hover{--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1))}.hover\:text-text-secondary:hover{--tw-text-opacity: 1;color:rgb(91 81 115 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:border-accent:focus{--tw-border-opacity: 1;border-color:rgb(108 71 255 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-accent:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(108 71 255 / var(--tw-ring-opacity, 1))}.focus\:ring-accent\/40:focus{--tw-ring-color: rgb(108 71 255 / .4)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:no-underline:disabled{text-decoration-line:none}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group\/section:hover .group-hover\/section\:text-text-tertiary{--tw-text-opacity: 1;color:rgb(145 138 171 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-accent{--tw-text-opacity: 1;color:rgb(108 71 255 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-accent-hover{--tw-text-opacity: 1;color:rgb(88 53 219 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-text-primary{--tw-text-opacity: 1;color:rgb(30 21 53 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:underline{text-decoration-line:underline}.group\/key:hover .group-hover\/key\:opacity-100,.group\/row:hover .group-hover\/row\:opacity-100{opacity:1}.group\/sorthead:hover .group-hover\/sorthead\:opacity-40{opacity:.4}.group\/task:hover .group-hover\/task\:opacity-100,.group\/trace:hover .group-hover\/trace\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:w-72{width:18rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_240px\]{grid-template-columns:1fr 240px}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:grid-cols-\[1fr_340px\]{grid-template-columns:1fr 340px}.lg\:grid-cols-\[1fr_360px\]{grid-template-columns:1fr 360px}.lg\:grid-cols-\[1fr_400px\]{grid-template-columns:1fr 400px}.lg\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.lg\:border-l{border-left-width:1px}.lg\:border-surface-border{--tw-border-opacity: 1;border-color:rgb(224 218 240 / var(--tw-border-opacity, 1))}.lg\:pl-12{padding-left:3rem}}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{b as O,j as e,u as Ve,C as W,J as je}from"./index-DYyLF-Qb.js";import{u as z,c as ne,b as De,a as l}from"./vendor-query-DLp59M9_.js";import{P as ke}from"./PageHeaderWithStats-ywNhrmFK.js";import{D as le}from"./DataTable-CM5ZcpPi.js";import{C as U}from"./CollapsibleSection-C7nL2_mv.js";import{F as we,b as Qe}from"./FilterBar-CZTlrLQT.js";import{u as Se}from"./useFilterParams-BUyLHcx_.js";import{R as oe,a as L}from"./RowActions-lYaHGI-v.js";import{ae as J,af as G,R as Te,S as Pe,ag as Fe,E as Me,i as Re,A as _e,O as $e,ah as Ae,P as Oe,a3 as Ie}from"./vendor-icons-BiIug1SK.js";import{M as Be}from"./Modal-kB_P7ZOr.js";import{T as We}from"./TaskQueuePill-BPj4ogVG.js";import"./vendor-react-Co3Y8ikm.js";import"./EmptyState-BBn78pmm.js";function Le(){return O("/controlplane/apps")}function Je(t){return O(`/controlplane/rollcall?app_id=${encodeURIComponent(t)}`)}function qe(t){return O("/controlplane/throttle",{method:"POST",body:JSON.stringify(t)})}function Ke(t){return O("/controlplane/subscribe",{method:"POST",body:JSON.stringify(t)})}function Ue(t,a,s){let r=`/controlplane/streams?app_id=${encodeURIComponent(t)}&duration=${encodeURIComponent(a)}`;return O(r)}function ie(){return z({queryKey:["controlplane","apps"],queryFn:Le,staleTime:6e4})}function Ge(t,a){return z({queryKey:["controlplane","rollcall",t],queryFn:()=>Je(t),enabled:!!t,refetchInterval:a})}function me(){const t=De();return ne({mutationFn:qe,onSuccess:()=>{setTimeout(()=>{t.invalidateQueries({queryKey:["controlplane","rollcall"]})},1500)}})}function ze(t,a,s,r){return z({queryKey:["controlplane","streams",t,a,""],queryFn:()=>Ue(t,a),enabled:!!t,staleTime:15e3,refetchInterval:r})}function He(){return ne({mutationFn:Ke})}const Ye=[{label:"15m",value:"15m"},{label:"30m",value:"30m"},{label:"1h",value:"1h"},{label:"1d",value:"1d"},{label:"7d",value:"7d"}],Xe={pong:"text-status-success",ping:"text-accent",throttle:"text-status-warning",job:"text-purple-400",work:"text-text-secondary",activate:"text-status-error",cron:"text-text-tertiary",user:"text-text-secondary"},Ze=250;function $(t){return!!t.worker_topic}function A(t){return typeof t.throttle=="number"&&t.throttle!==0}function H(t){return t===void 0||t===0?"Normal":t===-1?"Paused":t>=864e5?`${(t/864e5).toFixed(0)}d`:t>=36e5?`${(t/36e5).toFixed(1)}h`:t>=6e4?`${(t/6e4).toFixed(1)}m`:t>=1e3?`${(t/1e3).toFixed(1)}s`:`${t}ms`}function ce(t,a){if(!t||!a)return"—";const s=parseFloat(t),r=parseFloat(a);return isNaN(s)||isNaN(r)?"—":`${(s-r).toFixed(1)} / ${s.toFixed(1)} GB`}function ue(t){return t.replace(/^hmsh:[^:]+:x:/,"")||"(engine)"}const de=[{key:"pong",label:"Pong",description:"Roll call responses"},{key:"ping",label:"Ping",description:"Roll call broadcasts"},{key:"throttle",label:"Throttle",description:"Throttle commands"},{key:"job",label:"Job",description:"Job lifecycle events"},{key:"work",label:"Work",description:"Worker dispatch events"},{key:"activate",label:"Activate",description:"Worker activation"},{key:"cron",label:"Cron",description:"Cron schedule triggers"},{key:"user",label:"User",description:"User-defined messages"}];function k(t){return`${t.engine_id}-${t.worker_topic||"engine"}`}function et(t){const a=new Map;for(const s of t){if(!s.worker_topic)continue;const r=s.worker_topic;a.has(r)||a.set(r,[]),a.get(r).push(s)}return a}function tt(t){let a=0,s=0,r=0;for(const o of t)if(o.counts)for(const[n,h]of Object.entries(o.counts))a+=h,n==="200"?s+=h:n==="500"&&(r+=h);return{total:a,success:s,errors:r}}function at(){return{key:"throttle",label:"Throttle",render:t=>{const a=t.throttle;return a===-1?e.jsxDEV("span",{className:"text-xs text-status-error font-medium",children:"Paused"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:23,columnNumber:28},this):a&&a>0?e.jsxDEV("span",{className:"text-xs text-status-warning font-medium",children:H(a)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:24,columnNumber:30},this):e.jsxDEV("span",{className:"text-xs text-text-tertiary",children:"0"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:25,columnNumber:14},this)},className:"w-24"}}function st(){return{key:"memory",label:"Memory",render:t=>{var a,s;return e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:ce((a=t.system)==null?void 0:a.TotalMemoryGB,(s=t.system)==null?void 0:s.FreeMemoryGB)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:36,columnNumber:7},this)},className:"w-36"}}function rt(t,a){return{key:"actions",label:"",render:s=>e.jsxDEV(oe,{children:[A(s)&&e.jsxDEV(L,{icon:G,title:"Resume (remove throttle)",onClick:()=>a(s),colorClass:"text-text-tertiary hover:text-status-success"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:54,columnNumber:11},this),e.jsxDEV(L,{icon:J,title:"Adjust throttle",onClick:()=>t(s)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:61,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:52,columnNumber:7},this),className:"w-16"}}function nt(t){const a=t.profiles.some(s=>t.selectedIds.has(k(s)));return[{key:"select",label:e.jsxDEV("span",{className:"inline-flex items-center gap-2",children:[e.jsxDEV("input",{type:"checkbox",checked:t.profiles.length>0&&t.profiles.every(s=>t.selectedIds.has(k(s))),onChange:t.toggleAll,className:"rounded"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:76,columnNumber:11},this),a&&t.onBulkThrottle&&e.jsxDEV(J,{className:"w-[14px] h-[14px] text-text-tertiary hover:text-accent cursor-pointer",strokeWidth:1.5,onClick:s=>{s.stopPropagation(),t.onBulkThrottle()}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:83,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:75,columnNumber:9},this),render:s=>e.jsxDEV("input",{type:"checkbox",checked:t.selectedIds.has(k(s)),onChange:r=>{r.stopPropagation(),t.toggleCheckbox(s)},onClick:r=>r.stopPropagation(),className:"rounded"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:92,columnNumber:9},this),className:"w-16"},{key:"engine_id",label:"Engine ID",render:s=>e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:s.engine_id},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:106,columnNumber:9},this),className:"w-48"},at(),{key:"processed",label:"Processed",render:s=>{const r=tt([s]);return e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:r.total.toLocaleString()},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:116,columnNumber:16},this)},className:"w-24"},st(),rt(t.onRowThrottle,t.onResumeThrottle)]}function lt({activeAppId:t,allProfiles:a,profiles:s}){const r=me(),[o,n]=l.useState(new Set),[h,i]=l.useState(!1),[f,m]=l.useState([]);l.useEffect(()=>{n(new Set)},[t]);const V=l.useCallback(p=>{n(w=>{const E=new Set(w),Q=k(p);return E.has(Q)?E.delete(Q):E.add(Q),E})},[]),y=l.useCallback(()=>{o.size===s.length?n(new Set):n(new Set(s.map(k)))},[s,o.size]),d=l.useMemo(()=>{const p=s.filter(g=>o.has(k(g)));if(p.length===0)return[];if(p.length===a.length)return[{label:"Entire Mesh"}];const w=p.filter(g=>!$(g)),E=p.filter($),Q=[];for(const g of w)Q.push({label:`Engine ${g.engine_id}`,guid:g.engine_id});const T=new Map;for(const g of E){const S=g.worker_topic;T.has(S)||T.set(S,[]),T.get(S).push(g)}for(const[g,S]of T){const R=a.filter(F=>F.worker_topic===g);if(S.length===R.length)Q.push({label:g,topic:g});else for(const F of S)Q.push({label:`${g} ${F.engine_id}`,guid:F.engine_id})}return Q},[s,a,o]);return{selectedIds:o,setSelectedIds:n,toggleCheckbox:V,toggleAll:y,throttleModalOpen:h,throttleTargets:f,selectedThrottleTargets:d,throttleMutation:r,handleBulkThrottle:p=>{const w=f.length>0?f:d;for(const E of w)r.mutate({appId:t,throttle:p,...E.topic?{topic:E.topic}:{},...E.guid?{guid:E.guid}:{}});i(!1),m([])},handleRowClick:p=>{const w=$(p)?`${p.worker_topic} ${p.engine_id}`:`Engine ${p.engine_id}`;m([{label:w,guid:p.engine_id}]),i(!0)},handleBulkThrottleOpen:()=>{m(d),i(!0)},handleResumeThrottle:p=>{r.mutate({appId:t,throttle:0,guid:p.engine_id})},handleResumeQueue:p=>{r.mutate({appId:t,throttle:0,topic:p})},handleQueueThrottle:p=>{m([{label:p,topic:p}]),i(!0)},closeThrottleModal:()=>{i(!1),m([])}}}const ot=[{label:"Resume",ms:0},{label:"0.5s",ms:500},{label:"1s",ms:1e3},{label:"5s",ms:5e3},{label:"30s",ms:3e4},{label:"Pause",ms:-1}];function it({target:t}){const a=t.label==="Entire Mesh",s=t.label==="All Engines"||t.label.startsWith("Engine "),r=a?"bg-status-error/10 text-status-error":s?"bg-blue-500/10 text-blue-500":"bg-accent/[0.06] text-text-secondary",o=t.guid?"guid":t.topic?"topic":"mesh";return e.jsxDEV("span",{className:`inline-flex items-center gap-1.5 px-2 py-0.5 text-[10px] font-medium rounded-lg ${r}`,children:[t.label,e.jsxDEV("span",{className:"text-[8px] opacity-50",children:o},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:35,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:33,columnNumber:5},this)}function mt({open:t,onClose:a,targets:s,onApply:r,isPending:o}){const[n,h]=l.useState("0");return e.jsxDEV(Be,{open:t,onClose:a,title:"Adjust Throttle",children:e.jsxDEV("div",{className:"space-y-4",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-2",children:"Targets"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:47,columnNumber:11},this),e.jsxDEV("div",{className:"flex flex-wrap gap-1.5",children:s.map((i,f)=>e.jsxDEV(it,{target:i},i.guid||i.topic||f,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:50,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:48,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:46,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-2",children:"Presets"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:56,columnNumber:11},this),e.jsxDEV("div",{className:"flex flex-wrap gap-2",children:ot.map(i=>e.jsxDEV("button",{onClick:()=>{h(i.ms===-1?"-1":String(i.ms/1e3)),r(i.ms)},disabled:o,className:`px-3 py-1.5 text-xs rounded transition-colors ${i.ms===-1?"bg-status-error/10 text-status-error hover:bg-status-error/20":i.ms===0?"bg-status-success/10 text-status-success hover:bg-status-success/20":"bg-surface-sunken text-text-secondary hover:bg-surface-hover"} disabled:opacity-50`,children:i.label},i.label,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:59,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:57,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:55,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-2",children:"Custom (seconds between messages)"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:78,columnNumber:11},this),e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("input",{type:"number",step:"0.1",min:"-1",value:n,onChange:i=>h(i.target.value),className:"input text-xs py-1.5 px-3 w-28"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:82,columnNumber:13},this),e.jsxDEV("button",{onClick:()=>{const i=parseFloat(n);isNaN(i)||r(i===-1?-1:Math.round(i*1e3))},disabled:o,className:"btn-primary text-xs py-1.5 px-4 disabled:opacity-50",children:"Apply"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:90,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:81,columnNumber:11},this),e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-1",children:"0 = resume, -1 = pause indefinitely"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:102,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:45,columnNumber:7},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:44,columnNumber:5},this)}function ct({byStream:t,onNodeFilter:a}){const[s,r]=l.useState(!1);if(l.useEffect(()=>{r(!1);const m=requestAnimationFrame(()=>r(!0));return()=>cancelAnimationFrame(m)},[t]),t.length===0)return e.jsxDEV("p",{className:"text-xs text-text-tertiary py-4 text-center",children:"No activity in this period"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:26,columnNumber:12},this);const o=t.filter(m=>m.stream_type==="engine"),n=t.filter(m=>m.stream_type==="worker"),h=Math.max(...t.map(m=>m.count)),i=m=>{const V=h>0?m.count/h*100:0,y=m.stream_type==="engine",d=y?"(all engines)":ue(m.stream_name),x=y?"bg-blue-500/70":"bg-accent/60",C=y?"text-blue-500":"text-text-tertiary";return e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("span",{className:`text-[9px] font-mono ${C} w-36 truncate text-right shrink-0`,title:m.stream_name,children:d},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:41,columnNumber:9},this),e.jsxDEV("div",{className:"flex-1 h-4 bg-surface-sunken rounded overflow-hidden",children:e.jsxDEV("div",{className:`h-full ${x} rounded transition-all duration-500 ease-out`,style:{width:s?`${V}%`:"0%"}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:48,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:47,columnNumber:9},this),e.jsxDEV("span",{className:"text-[10px] font-mono tabular-nums text-text-secondary w-12 text-right shrink-0",children:m.count.toLocaleString()},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:53,columnNumber:9},this)]},`${m.stream_type}-${m.stream_name}`,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:40,columnNumber:7},this)},f="text-[9px] uppercase tracking-widest font-semibold mb-1 cursor-pointer hover:underline";return e.jsxDEV("div",{className:"space-y-1.5",children:[o.length>0&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("p",{className:`${f} text-blue-500/70 hover:text-blue-500`,onClick:()=>a==null?void 0:a("engines"),children:"Engine Message Volume"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:66,columnNumber:11},this),o.map(i),n.length>0&&e.jsxDEV("div",{className:"h-2"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:73,columnNumber:40},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:65,columnNumber:9},this),n.length>0&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("p",{className:`${f} text-accent/70 hover:text-accent`,onClick:()=>a==null?void 0:a("workers"),children:"Worker Message Volume"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:78,columnNumber:11},this),n.map(i)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:63,columnNumber:5},this)}let ut=0;function dt({event:t}){var r,o,n;const[a,s]=l.useState(!1);return e.jsxDEV("div",{className:"border-b border-surface-border/50 last:border-b-0",children:[e.jsxDEV("button",{onClick:()=>s(!a),className:"flex items-center gap-2 py-1.5 w-full text-left hover:bg-surface-hover/50 transition-colors",children:[e.jsxDEV("span",{className:"text-[9px] font-mono text-text-tertiary whitespace-nowrap tabular-nums shrink-0",children:new Date(t.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:27,columnNumber:9},this),e.jsxDEV("span",{className:`text-[9px] font-medium px-1 py-0.5 rounded ${Xe[t.type]||"text-text-tertiary"} bg-surface-sunken whitespace-nowrap shrink-0`,children:t.type},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:30,columnNumber:9},this),e.jsxDEV("span",{className:"text-[9px] text-text-tertiary font-mono flex-1 min-w-0 break-all",children:[(r=t.data)!=null&&r.guid?String(t.data.guid):"",(o=t.data)!=null&&o.topic?` ${String(t.data.topic)}`:"",t.type==="throttle"?` → ${H((n=t.data)==null?void 0:n.throttle)}`:""]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:33,columnNumber:9},this),e.jsxDEV("svg",{className:`w-2.5 h-2.5 text-text-tertiary shrink-0 transition-transform duration-150 ${a?"rotate-180":""}`,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 9l-7 7-7-7"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:42,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:38,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:23,columnNumber:7},this),e.jsxDEV(W,{open:a,children:e.jsxDEV("div",{className:"pb-2",children:e.jsxDEV(je,{data:t.data},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:47,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:46,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:45,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:22,columnNumber:5},this)}function pt({channels:t,onToggle:a,customFilter:s,onCustomFilterChange:r}){return e.jsxDEV("div",{className:"space-y-3 pb-3 border-b border-surface-border mb-3",children:[e.jsxDEV("div",{className:"flex items-center gap-2 mb-1",children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary",children:"Channels"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:67,columnNumber:9},this),e.jsxDEV("p",{className:"text-[9px] text-text-tertiary",children:"Unchecked channels are dropped before buffering"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:70,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:66,columnNumber:7},this),e.jsxDEV("div",{className:"grid grid-cols-2 gap-1",children:de.map(o=>e.jsxDEV("label",{className:"flex items-center gap-2 cursor-pointer py-0.5",children:[e.jsxDEV("input",{type:"checkbox",checked:t.has(o.key),onChange:()=>a(o.key),className:"w-3 h-3 rounded border-border accent-accent"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:77,columnNumber:13},this),e.jsxDEV("span",{className:"text-[10px] text-text-secondary",title:o.description,children:o.label},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:83,columnNumber:13},this)]},o.key,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:76,columnNumber:11},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:74,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:"Text Filter"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:90,columnNumber:9},this),e.jsxDEV("input",{type:"text",value:s,onChange:o=>r(o.target.value),placeholder:"pong",className:"input text-[10px] font-mono py-1 px-2 w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:93,columnNumber:9},this),e.jsxDEV("p",{className:"text-[9px] text-text-tertiary mt-1",children:["Filter by event type, e.g. ",e.jsxDEV("span",{className:"font-mono",children:"pong"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:101,columnNumber:38},this),", ",e.jsxDEV("span",{className:"font-mono",children:"throttle"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:101,columnNumber:79},this),", or any text in the event data."]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:100,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:89,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:65,columnNumber:5},this)}function ht({bridgeActive:t}){const[a,s]=l.useState(!1),[r,o]=l.useState(!1),[n,h]=l.useState([]),[i,f]=l.useState(()=>new Set(de.map(u=>u.key))),[m,V]=l.useState(""),y=l.useRef(i);l.useEffect(()=>{y.current=i},[i]);const d=l.useRef(m);l.useEffect(()=>{d.current=m},[m]);const x=u=>{f(N=>{const D=new Set(N);return D.has(u)?D.delete(u):D.add(u),D})};Ve("lt.events.mesh.>",l.useCallback(u=>{var j;const N=((j=u.type)==null?void 0:j.replace("mesh.",""))||"unknown";if(!y.current.has(N))return;const D=d.current;D&&!`${N} ${JSON.stringify(u.data||u)}`.toLowerCase().includes(D.toLowerCase())||h(P=>[{id:++ut,type:N,timestamp:u.timestamp||new Date().toISOString(),data:u.data||u},...P].slice(0,Ze))},[]));const C=()=>h([]);return e.jsxDEV("div",{className:"border-l border-surface-border pl-6 pt-4 min-h-[300px] sticky top-14 self-start max-h-[calc(100vh-8rem)] flex flex-col",children:[e.jsxDEV("div",{className:"flex items-center gap-2 mb-3",children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary",children:"Event Stream"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:169,columnNumber:9},this),e.jsxDEV(Te,{className:`w-3 h-3 ${t?"text-status-success animate-pulse":"text-text-tertiary"}`},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:172,columnNumber:9},this),e.jsxDEV("span",{className:"text-[9px] text-text-tertiary",children:t?"Live":"..."},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:173,columnNumber:9},this),e.jsxDEV("span",{className:"ml-auto flex items-center gap-1",children:[e.jsxDEV("button",{onClick:()=>{s(u=>!u),o(!1)},className:`p-1 rounded transition-colors ${a?"text-accent bg-accent/10":"text-text-tertiary hover:text-text-primary"}`,title:"Configure channels",children:e.jsxDEV(Pe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:183,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:178,columnNumber:11},this),e.jsxDEV("button",{onClick:()=>{o(u=>!u),s(!1)},className:`p-1 rounded transition-colors ${r?"text-accent bg-accent/10":"text-text-tertiary hover:text-text-primary"}`,title:"View raw JSON",children:e.jsxDEV(Fe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:190,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:185,columnNumber:11},this),n.length>0&&e.jsxDEV("button",{onClick:C,className:"p-1 rounded text-text-tertiary hover:text-text-primary transition-colors",title:"Clear events",children:e.jsxDEV(Me,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:198,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:193,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:177,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:168,columnNumber:7},this),e.jsxDEV(W,{open:a,children:e.jsxDEV(pt,{channels:i,onToggle:x,customFilter:m,onCustomFilterChange:V},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:206,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:205,columnNumber:7},this),e.jsxDEV(W,{open:r,children:e.jsxDEV("div",{className:"pb-3 border-b border-surface-border mb-3",children:e.jsxDEV("pre",{className:"text-[9px] font-mono text-text-tertiary bg-surface-sunken rounded-lg p-3 max-h-[50vh] overflow-auto whitespace-pre-wrap",children:JSON.stringify(n.slice(0,50),null,2)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:217,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:216,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:215,columnNumber:7},this),n.length>0&&e.jsxDEV("p",{className:"text-[9px] text-text-tertiary mb-2",children:[n.length," events"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:225,columnNumber:9},this),e.jsxDEV("div",{className:"flex-1 overflow-y-auto",children:n.length===0?e.jsxDEV("p",{className:"text-xs text-text-tertiary py-6 text-center",children:t?"Waiting for events...":"Subscribing..."},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:233,columnNumber:11},this):n.map(u=>e.jsxDEV(dt,{event:u},u.id,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:238,columnNumber:13},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:231,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:166,columnNumber:5},this)}function bt({queue:t,workers:a,expanded:s,onToggle:r,onWorkerClick:o,onResumeThrottle:n,onQueueThrottle:h,onResumeQueue:i,byStream:f,activeDuration:m}){const V=l.useMemo(()=>{const d=f.find(x=>x.stream_type==="worker"&&ue(x.stream_name)===t);return(d==null?void 0:d.count)??0},[f,t]),y=l.useMemo(()=>[{key:"engine_id",label:"Worker ID",render:d=>e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:d.engine_id},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:55,columnNumber:9},this),className:"w-48"},{key:"throttle",label:"Throttle",render:d=>{const x=d.throttle;return x===-1?e.jsxDEV("span",{className:"text-xs text-status-error font-medium",children:"Paused"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:66,columnNumber:30},this):x&&x>0?e.jsxDEV("span",{className:"text-xs text-status-warning font-medium",children:H(x)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:67,columnNumber:32},this):e.jsxDEV("span",{className:"text-xs text-text-tertiary",children:"0"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:68,columnNumber:16},this)},className:"w-24"},{key:"memory",label:"Memory",render:d=>{var x,C;return e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:ce((x=d.system)==null?void 0:x.TotalMemoryGB,(C=d.system)==null?void 0:C.FreeMemoryGB)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:76,columnNumber:9},this)},className:"w-36"},{key:"actions",label:"",render:d=>e.jsxDEV(oe,{children:[A(d)&&e.jsxDEV(L,{icon:G,title:"Resume (remove throttle)",onClick:()=>n(d),colorClass:"text-text-tertiary hover:text-status-success"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:88,columnNumber:13},this),e.jsxDEV(L,{icon:J,title:"Adjust throttle",onClick:()=>o(d)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:95,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:86,columnNumber:9},this),className:"w-16"}],[o,n]);return e.jsxDEV("div",{children:[e.jsxDEV("button",{onClick:()=>r(t),className:"group/row relative flex items-center gap-3 w-full py-2 hover:bg-surface-hover transition-colors text-left rounded",children:[e.jsxDEV(Re,{className:`w-3.5 h-3.5 text-text-tertiary/50 transition-transform duration-200 ${s?"rotate-90":""}`,strokeWidth:2},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:112,columnNumber:9},this),e.jsxDEV(We,{queue:t,size:"sm"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:116,columnNumber:9},this),e.jsxDEV("span",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:118,columnNumber:9},this),e.jsxDEV("span",{className:`flex items-center gap-1 text-xs w-24 ${a.some(A)?"text-status-warning":"text-text-tertiary"}`,children:[e.jsxDEV(_e,{className:"w-3 h-3 shrink-0",strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:121,columnNumber:11},this),e.jsxDEV("span",{className:"font-mono tabular-nums",children:a.length},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:122,columnNumber:11},this),e.jsxDEV("span",{children:"workers"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:123,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:120,columnNumber:9},this),e.jsxDEV("span",{className:"flex items-center gap-1 text-xs font-mono text-text-tertiary w-28 justify-end mr-16",children:V>0?e.jsxDEV(e.Fragment,{children:[e.jsxDEV($e,{className:"w-3 h-3 shrink-0",strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:129,columnNumber:15},this),V.toLocaleString()," in ",m]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:128,columnNumber:13},this):e.jsxDEV("span",{className:"text-text-tertiary/40",children:"—"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:133,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:126,columnNumber:9},this),e.jsxDEV("span",{className:"absolute right-3 top-1/2 -translate-y-1/2 opacity-0 group-hover/row:opacity-100 transition-opacity flex items-center gap-2",children:[a.some(A)&&e.jsxDEV(G,{className:"w-4 h-4 text-text-tertiary hover:text-status-success",strokeWidth:1.5,onClick:d=>{d.stopPropagation(),i(t)}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:139,columnNumber:13},this),e.jsxDEV(J,{className:"w-4 h-4 text-text-tertiary hover:text-accent",strokeWidth:1.5,onClick:d=>{d.stopPropagation(),h(t)}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:148,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:137,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:108,columnNumber:7},this),e.jsxDEV(W,{open:s,children:e.jsxDEV("div",{className:"ml-6",children:e.jsxDEV(le,{columns:y,data:a,keyFn:k,onRowClick:o,emptyMessage:"No workers",inline:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:161,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:160,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:159,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:107,columnNumber:5},this)}function xt(){const{data:t}=ie(),a=me(),[s,r]=l.useState(!1),o=(t==null?void 0:t.apps)??[],n=h=>{for(const i of o)a.mutate({appId:i.appId,throttle:h});r(!1)};return s?e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("span",{className:"text-xs text-status-error",children:"Pause all queues?"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:22,columnNumber:9},this),e.jsxDEV("button",{onClick:()=>n(-1),className:"px-2.5 py-1 text-xs rounded-md bg-status-error text-white hover:bg-status-error/90 transition-colors",children:"Confirm"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:23,columnNumber:9},this),e.jsxDEV("button",{onClick:()=>r(!1),className:"px-2.5 py-1 text-xs text-text-tertiary hover:text-text-primary transition-colors",children:"Cancel"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:29,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:21,columnNumber:7},this):e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("button",{onClick:()=>r(!0),className:"flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-md text-status-error/80 hover:text-status-error hover:bg-status-error/10 transition-colors",title:"Pause all queues",children:[e.jsxDEV(Ae,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:46,columnNumber:9},this),"Pause All"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:41,columnNumber:7},this),e.jsxDEV("button",{onClick:()=>n(0),className:"flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-md text-status-success/80 hover:text-status-success hover:bg-status-success/10 transition-colors",title:"Resume all queues",children:[e.jsxDEV(Oe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:54,columnNumber:9},this),"Resume All"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:49,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:40,columnNumber:5},this)}function St(){var re;const{data:t}=ie(),a=(t==null?void 0:t.apps)??[],{filters:s,setFilter:r}=Se({filters:{app_id:"",duration:"1h"}}),o=((re=a[0])==null?void 0:re.appId)??"durable",n=s.app_id||o,h=s.duration||"1h",i=He(),f=6e4,{data:m,isLoading:V,error:y,refetch:d,isFetching:x}=Ge(n,f),{data:C}=ze(n,h,void 0,f),u=l.useMemo(()=>[...(m==null?void 0:m.profiles)??[]].sort((b,v)=>{const _=b.worker_topic||b.stream||"",B=v.worker_topic||v.stream||"";return!b.worker_topic&&v.worker_topic?-1:b.worker_topic&&!v.worker_topic?1:_.localeCompare(B)}),[m==null?void 0:m.profiles]),N=l.useMemo(()=>u.filter(c=>!$(c)),[u]),D=l.useMemo(()=>u.filter($),[u]),j=l.useMemo(()=>et(u),[u]),P=u.filter(A).length,p=l.useMemo(()=>{const c=new Set(a.map(b=>b.appId));return n&&c.add(n),[...c].sort().map(b=>({value:b,label:b}))},[a,n]),[w,E]=l.useState(new Set),Q=l.useCallback(c=>{E(b=>{const v=new Set(b);return v.has(c)?v.delete(c):v.add(c),v})},[]),T=j.size>0&&[...j.keys()].every(c=>w.has(c)),g=l.useCallback(()=>{E(T?new Set:new Set(j.keys()))},[T,j]),S="lt:controlplane:collapsed",[R,F]=l.useState(()=>{try{return JSON.parse(localStorage.getItem(S)||"{}")}catch{return{}}}),q=l.useCallback(c=>{F(b=>{const v={...b,[c]:!b[c]};return localStorage.setItem(S,JSON.stringify(v)),v})},[]),{selectedIds:M,setSelectedIds:Y,toggleCheckbox:X,throttleModalOpen:pe,throttleTargets:Z,selectedThrottleTargets:he,throttleMutation:be,handleBulkThrottle:xe,handleRowClick:I,handleBulkThrottleOpen:ee,handleResumeThrottle:K,handleResumeQueue:Ne,handleQueueThrottle:fe,closeThrottleModal:ge}=lt({activeAppId:n,allProfiles:u,profiles:u}),te=l.useCallback(()=>{const c=new Set(N.map(k)),b=N.length>0&&N.every(v=>M.has(k(v)));Y(v=>{const _=new Set(v);for(const B of c)b?_.delete(B):_.add(B);return _})},[N,M,Y]),ae=l.useCallback(()=>{N.filter(b=>M.has(k(b))).length!==0&&ee()},[N,M,ee]),ve=l.useMemo(()=>nt({profiles:N,selectedIds:M,toggleAll:te,toggleCheckbox:X,onRowThrottle:I,onResumeThrottle:K,onBulkThrottle:ae}),[N,M,te,X,I,K,ae]),Ee=l.useMemo(()=>{const c=[{label:"Engines",value:N.length,dotClass:"bg-blue-500"},{label:"Workers",value:D.length,dotClass:"bg-text-secondary"},{label:"Queues",value:j.size}];return P>0&&c.push({label:"Throttled",value:P,dotClass:"bg-status-warning"}),c},[N.length,D.length,j.size,P]),[se,ye]=l.useState(!1),Ce=l.useCallback(()=>{i.mutate({appId:n},{onSuccess:()=>ye(!0)})},[n,i]);return l.useEffect(()=>{!se&&n&&Ce()},[n]),e.jsxDEV("div",{children:[e.jsxDEV(ke,{title:"Task Queues",stats:Ee,actions:e.jsxDEV(xt,{},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:190,columnNumber:18},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:187,columnNumber:7},this),e.jsxDEV(we,{actions:e.jsxDEV("div",{className:"flex items-center gap-1",children:Ye.map(c=>e.jsxDEV("button",{onClick:()=>r("duration",c.value),className:`px-3 py-1 text-xs rounded-full transition-colors ${h===c.value?"bg-accent text-text-inverse":"text-text-tertiary hover:text-text-primary hover:bg-surface-hover"}`,children:c.label},c.value,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:197,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:195,columnNumber:11},this),children:[e.jsxDEV(Qe,{label:"Application",value:s.app_id,onChange:c=>r("app_id",c),options:p},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:212,columnNumber:9},this),e.jsxDEV("button",{onClick:()=>d(),disabled:x,className:"flex items-center gap-1.5 px-3 py-1.5 text-xs text-text-tertiary hover:text-text-primary transition-colors disabled:opacity-50",children:[e.jsxDEV(Ie,{className:`w-3.5 h-3.5 ${x?"animate-spin":""}`},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:223,columnNumber:11},this),"Roll Call"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:218,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:193,columnNumber:7},this),y&&e.jsxDEV("div",{className:"mb-6 px-4 py-3 rounded bg-status-error/10 border border-status-error/20",children:e.jsxDEV("p",{className:"text-xs text-status-error font-medium",children:y.message==="Session expired"?"Session expired — please log in again.":`Failed to load mesh data: ${y.message}`},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:231,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:230,columnNumber:9},this),e.jsxDEV("div",{className:"grid grid-cols-1 lg:grid-cols-[1fr_340px] gap-6",children:[e.jsxDEV("div",{className:"flex flex-col gap-12 mt-10",children:[e.jsxDEV(U,{title:`Stream Volume (${h})`,sectionKey:"volume",isCollapsed:!!R.volume,onToggle:q,contentClassName:"mt-4 ml-7",children:e.jsxDEV(ct,{byStream:(C==null?void 0:C.byStream)??[],onNodeFilter:()=>{},onQueueFilter:()=>{}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:250,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:243,columnNumber:11},this),e.jsxDEV(U,{title:"Worker Queues",sectionKey:"queues",isCollapsed:!!R.queues,onToggle:q,contentClassName:"mt-4 ml-7 flex flex-col gap-0",children:V?e.jsxDEV("p",{className:"text-xs text-text-tertiary",children:"Discovering mesh nodes..."},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:266,columnNumber:15},this):j.size===0?e.jsxDEV("p",{className:"text-xs text-text-tertiary",children:'No worker queues found. Click "Roll Call" to discover.'},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:268,columnNumber:15},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"flex justify-end mb-2",children:e.jsxDEV("button",{onClick:g,className:"text-[10px] text-accent hover:underline",children:T?"Collapse all":"Expand all"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:272,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:271,columnNumber:17},this),[...j.entries()].sort(([c],[b])=>c.localeCompare(b)).map(([c,b])=>e.jsxDEV(bt,{queue:c,workers:b,expanded:w.has(c),onToggle:Q,onWorkerClick:I,onResumeThrottle:K,onQueueThrottle:fe,onResumeQueue:Ne,byStream:(C==null?void 0:C.byStream)??[],activeDuration:h},c,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:279,columnNumber:21},this))]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:270,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:258,columnNumber:11},this),e.jsxDEV(U,{title:"Engines",sectionKey:"engines",isCollapsed:!!R.engines,onToggle:q,contentClassName:"mt-4 ml-7",children:e.jsxDEV(le,{columns:ve,data:N,keyFn:k,onRowClick:I,isLoading:V,emptyMessage:V?"Discovering engines...":"No engines found.",inline:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:305,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:298,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:241,columnNumber:9},this),e.jsxDEV(ht,{bridgeActive:se},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:317,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:240,columnNumber:7},this),e.jsxDEV(mt,{open:pe,onClose:ge,targets:Z.length>0?Z:he,onApply:xe,isPending:be.isPending},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:320,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:186,columnNumber:5},this)}export{St as ControlPlanePage};
|
|
2
|
-
//# sourceMappingURL=index-
|
|
1
|
+
import{b as O,j as e,u as Ve,C as W,J as je}from"./index-BwN3KP_L.js";import{u as z,c as ne,b as De,a as l}from"./vendor-query-DLp59M9_.js";import{P as ke}from"./PageHeaderWithStats-D0KRASML.js";import{D as le}from"./DataTable-DKvSKoVG.js";import{C as U}from"./CollapsibleSection-DQpaVA0M.js";import{F as we,b as Qe}from"./FilterBar-DMTvuQy-.js";import{u as Se}from"./useFilterParams-BUyLHcx_.js";import{R as oe,a as L}from"./RowActions-B4mqIt3Z.js";import{ai as J,aj as G,R as Te,S as Pe,ak as Fe,E as Me,i as Re,A as _e,Z as $e,al as Ae,P as Oe,a7 as Ie}from"./vendor-icons-D1DdudfH.js";import{M as Be}from"./Modal-_2AbWxJT.js";import{T as We}from"./TaskQueuePill-CWYj3xKe.js";import"./vendor-react-Co3Y8ikm.js";import"./EmptyState-X0fIzYID.js";function Le(){return O("/controlplane/apps")}function Je(t){return O(`/controlplane/rollcall?app_id=${encodeURIComponent(t)}`)}function qe(t){return O("/controlplane/throttle",{method:"POST",body:JSON.stringify(t)})}function Ke(t){return O("/controlplane/subscribe",{method:"POST",body:JSON.stringify(t)})}function Ue(t,a,s){let r=`/controlplane/streams?app_id=${encodeURIComponent(t)}&duration=${encodeURIComponent(a)}`;return O(r)}function ie(){return z({queryKey:["controlplane","apps"],queryFn:Le,staleTime:6e4})}function Ge(t,a){return z({queryKey:["controlplane","rollcall",t],queryFn:()=>Je(t),enabled:!!t,refetchInterval:a})}function me(){const t=De();return ne({mutationFn:qe,onSuccess:()=>{setTimeout(()=>{t.invalidateQueries({queryKey:["controlplane","rollcall"]})},1500)}})}function ze(t,a,s,r){return z({queryKey:["controlplane","streams",t,a,""],queryFn:()=>Ue(t,a),enabled:!!t,staleTime:15e3,refetchInterval:r})}function He(){return ne({mutationFn:Ke})}const Ye=[{label:"15m",value:"15m"},{label:"30m",value:"30m"},{label:"1h",value:"1h"},{label:"1d",value:"1d"},{label:"7d",value:"7d"}],Xe={pong:"text-status-success",ping:"text-accent",throttle:"text-status-warning",job:"text-purple-400",work:"text-text-secondary",activate:"text-status-error",cron:"text-text-tertiary",user:"text-text-secondary"},Ze=250;function $(t){return!!t.worker_topic}function A(t){return typeof t.throttle=="number"&&t.throttle!==0}function H(t){return t===void 0||t===0?"Normal":t===-1?"Paused":t>=864e5?`${(t/864e5).toFixed(0)}d`:t>=36e5?`${(t/36e5).toFixed(1)}h`:t>=6e4?`${(t/6e4).toFixed(1)}m`:t>=1e3?`${(t/1e3).toFixed(1)}s`:`${t}ms`}function ce(t,a){if(!t||!a)return"—";const s=parseFloat(t),r=parseFloat(a);return isNaN(s)||isNaN(r)?"—":`${(s-r).toFixed(1)} / ${s.toFixed(1)} GB`}function ue(t){return t.replace(/^hmsh:[^:]+:x:/,"")||"(engine)"}const de=[{key:"pong",label:"Pong",description:"Roll call responses"},{key:"ping",label:"Ping",description:"Roll call broadcasts"},{key:"throttle",label:"Throttle",description:"Throttle commands"},{key:"job",label:"Job",description:"Job lifecycle events"},{key:"work",label:"Work",description:"Worker dispatch events"},{key:"activate",label:"Activate",description:"Worker activation"},{key:"cron",label:"Cron",description:"Cron schedule triggers"},{key:"user",label:"User",description:"User-defined messages"}];function k(t){return`${t.engine_id}-${t.worker_topic||"engine"}`}function et(t){const a=new Map;for(const s of t){if(!s.worker_topic)continue;const r=s.worker_topic;a.has(r)||a.set(r,[]),a.get(r).push(s)}return a}function tt(t){let a=0,s=0,r=0;for(const o of t)if(o.counts)for(const[n,h]of Object.entries(o.counts))a+=h,n==="200"?s+=h:n==="500"&&(r+=h);return{total:a,success:s,errors:r}}function at(){return{key:"throttle",label:"Throttle",render:t=>{const a=t.throttle;return a===-1?e.jsxDEV("span",{className:"text-xs text-status-error font-medium",children:"Paused"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:23,columnNumber:28},this):a&&a>0?e.jsxDEV("span",{className:"text-xs text-status-warning font-medium",children:H(a)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:24,columnNumber:30},this):e.jsxDEV("span",{className:"text-xs text-text-tertiary",children:"0"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:25,columnNumber:14},this)},className:"w-24"}}function st(){return{key:"memory",label:"Memory",render:t=>{var a,s;return e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:ce((a=t.system)==null?void 0:a.TotalMemoryGB,(s=t.system)==null?void 0:s.FreeMemoryGB)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:36,columnNumber:7},this)},className:"w-36"}}function rt(t,a){return{key:"actions",label:"",render:s=>e.jsxDEV(oe,{children:[A(s)&&e.jsxDEV(L,{icon:G,title:"Resume (remove throttle)",onClick:()=>a(s),colorClass:"text-text-tertiary hover:text-status-success"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:54,columnNumber:11},this),e.jsxDEV(L,{icon:J,title:"Adjust throttle",onClick:()=>t(s)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:61,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:52,columnNumber:7},this),className:"w-16"}}function nt(t){const a=t.profiles.some(s=>t.selectedIds.has(k(s)));return[{key:"select",label:e.jsxDEV("span",{className:"inline-flex items-center gap-2",children:[e.jsxDEV("input",{type:"checkbox",checked:t.profiles.length>0&&t.profiles.every(s=>t.selectedIds.has(k(s))),onChange:t.toggleAll,className:"rounded"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:76,columnNumber:11},this),a&&t.onBulkThrottle&&e.jsxDEV(J,{className:"w-[14px] h-[14px] text-text-tertiary hover:text-accent cursor-pointer",strokeWidth:1.5,onClick:s=>{s.stopPropagation(),t.onBulkThrottle()}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:83,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:75,columnNumber:9},this),render:s=>e.jsxDEV("input",{type:"checkbox",checked:t.selectedIds.has(k(s)),onChange:r=>{r.stopPropagation(),t.toggleCheckbox(s)},onClick:r=>r.stopPropagation(),className:"rounded"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:92,columnNumber:9},this),className:"w-16"},{key:"engine_id",label:"Engine ID",render:s=>e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:s.engine_id},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:106,columnNumber:9},this),className:"w-48"},at(),{key:"processed",label:"Processed",render:s=>{const r=tt([s]);return e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:r.total.toLocaleString()},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/columns.tsx",lineNumber:116,columnNumber:16},this)},className:"w-24"},st(),rt(t.onRowThrottle,t.onResumeThrottle)]}function lt({activeAppId:t,allProfiles:a,profiles:s}){const r=me(),[o,n]=l.useState(new Set),[h,i]=l.useState(!1),[f,m]=l.useState([]);l.useEffect(()=>{n(new Set)},[t]);const V=l.useCallback(p=>{n(w=>{const E=new Set(w),Q=k(p);return E.has(Q)?E.delete(Q):E.add(Q),E})},[]),y=l.useCallback(()=>{o.size===s.length?n(new Set):n(new Set(s.map(k)))},[s,o.size]),d=l.useMemo(()=>{const p=s.filter(g=>o.has(k(g)));if(p.length===0)return[];if(p.length===a.length)return[{label:"Entire Mesh"}];const w=p.filter(g=>!$(g)),E=p.filter($),Q=[];for(const g of w)Q.push({label:`Engine ${g.engine_id}`,guid:g.engine_id});const T=new Map;for(const g of E){const S=g.worker_topic;T.has(S)||T.set(S,[]),T.get(S).push(g)}for(const[g,S]of T){const R=a.filter(F=>F.worker_topic===g);if(S.length===R.length)Q.push({label:g,topic:g});else for(const F of S)Q.push({label:`${g} ${F.engine_id}`,guid:F.engine_id})}return Q},[s,a,o]);return{selectedIds:o,setSelectedIds:n,toggleCheckbox:V,toggleAll:y,throttleModalOpen:h,throttleTargets:f,selectedThrottleTargets:d,throttleMutation:r,handleBulkThrottle:p=>{const w=f.length>0?f:d;for(const E of w)r.mutate({appId:t,throttle:p,...E.topic?{topic:E.topic}:{},...E.guid?{guid:E.guid}:{}});i(!1),m([])},handleRowClick:p=>{const w=$(p)?`${p.worker_topic} ${p.engine_id}`:`Engine ${p.engine_id}`;m([{label:w,guid:p.engine_id}]),i(!0)},handleBulkThrottleOpen:()=>{m(d),i(!0)},handleResumeThrottle:p=>{r.mutate({appId:t,throttle:0,guid:p.engine_id})},handleResumeQueue:p=>{r.mutate({appId:t,throttle:0,topic:p})},handleQueueThrottle:p=>{m([{label:p,topic:p}]),i(!0)},closeThrottleModal:()=>{i(!1),m([])}}}const ot=[{label:"Resume",ms:0},{label:"0.5s",ms:500},{label:"1s",ms:1e3},{label:"5s",ms:5e3},{label:"30s",ms:3e4},{label:"Pause",ms:-1}];function it({target:t}){const a=t.label==="Entire Mesh",s=t.label==="All Engines"||t.label.startsWith("Engine "),r=a?"bg-status-error/10 text-status-error":s?"bg-blue-500/10 text-blue-500":"bg-accent/[0.06] text-text-secondary",o=t.guid?"guid":t.topic?"topic":"mesh";return e.jsxDEV("span",{className:`inline-flex items-center gap-1.5 px-2 py-0.5 text-[10px] font-medium rounded-lg ${r}`,children:[t.label,e.jsxDEV("span",{className:"text-[8px] opacity-50",children:o},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:35,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:33,columnNumber:5},this)}function mt({open:t,onClose:a,targets:s,onApply:r,isPending:o}){const[n,h]=l.useState("0");return e.jsxDEV(Be,{open:t,onClose:a,title:"Adjust Throttle",children:e.jsxDEV("div",{className:"space-y-4",children:[e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-2",children:"Targets"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:47,columnNumber:11},this),e.jsxDEV("div",{className:"flex flex-wrap gap-1.5",children:s.map((i,f)=>e.jsxDEV(it,{target:i},i.guid||i.topic||f,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:50,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:48,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:46,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-2",children:"Presets"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:56,columnNumber:11},this),e.jsxDEV("div",{className:"flex flex-wrap gap-2",children:ot.map(i=>e.jsxDEV("button",{onClick:()=>{h(i.ms===-1?"-1":String(i.ms/1e3)),r(i.ms)},disabled:o,className:`px-3 py-1.5 text-xs rounded transition-colors ${i.ms===-1?"bg-status-error/10 text-status-error hover:bg-status-error/20":i.ms===0?"bg-status-success/10 text-status-success hover:bg-status-success/20":"bg-surface-sunken text-text-secondary hover:bg-surface-hover"} disabled:opacity-50`,children:i.label},i.label,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:59,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:57,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:55,columnNumber:9},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-2",children:"Custom (seconds between messages)"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:78,columnNumber:11},this),e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("input",{type:"number",step:"0.1",min:"-1",value:n,onChange:i=>h(i.target.value),className:"input text-xs py-1.5 px-3 w-28"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:82,columnNumber:13},this),e.jsxDEV("button",{onClick:()=>{const i=parseFloat(n);isNaN(i)||r(i===-1?-1:Math.round(i*1e3))},disabled:o,className:"btn-primary text-xs py-1.5 px-4 disabled:opacity-50",children:"Apply"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:90,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:81,columnNumber:11},this),e.jsxDEV("p",{className:"text-[10px] text-text-tertiary mt-1",children:"0 = resume, -1 = pause indefinitely"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:102,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:45,columnNumber:7},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ThrottleModal.tsx",lineNumber:44,columnNumber:5},this)}function ct({byStream:t,onNodeFilter:a}){const[s,r]=l.useState(!1);if(l.useEffect(()=>{r(!1);const m=requestAnimationFrame(()=>r(!0));return()=>cancelAnimationFrame(m)},[t]),t.length===0)return e.jsxDEV("p",{className:"text-xs text-text-tertiary py-4 text-center",children:"No activity in this period"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:26,columnNumber:12},this);const o=t.filter(m=>m.stream_type==="engine"),n=t.filter(m=>m.stream_type==="worker"),h=Math.max(...t.map(m=>m.count)),i=m=>{const V=h>0?m.count/h*100:0,y=m.stream_type==="engine",d=y?"(all engines)":ue(m.stream_name),x=y?"bg-blue-500/70":"bg-accent/60",C=y?"text-blue-500":"text-text-tertiary";return e.jsxDEV("div",{className:"flex items-center gap-3",children:[e.jsxDEV("span",{className:`text-[9px] font-mono ${C} w-36 truncate text-right shrink-0`,title:m.stream_name,children:d},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:41,columnNumber:9},this),e.jsxDEV("div",{className:"flex-1 h-4 bg-surface-sunken rounded overflow-hidden",children:e.jsxDEV("div",{className:`h-full ${x} rounded transition-all duration-500 ease-out`,style:{width:s?`${V}%`:"0%"}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:48,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:47,columnNumber:9},this),e.jsxDEV("span",{className:"text-[10px] font-mono tabular-nums text-text-secondary w-12 text-right shrink-0",children:m.count.toLocaleString()},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:53,columnNumber:9},this)]},`${m.stream_type}-${m.stream_name}`,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:40,columnNumber:7},this)},f="text-[9px] uppercase tracking-widest font-semibold mb-1 cursor-pointer hover:underline";return e.jsxDEV("div",{className:"space-y-1.5",children:[o.length>0&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("p",{className:`${f} text-blue-500/70 hover:text-blue-500`,onClick:()=>a==null?void 0:a("engines"),children:"Engine Message Volume"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:66,columnNumber:11},this),o.map(i),n.length>0&&e.jsxDEV("div",{className:"h-2"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:73,columnNumber:40},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:65,columnNumber:9},this),n.length>0&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("p",{className:`${f} text-accent/70 hover:text-accent`,onClick:()=>a==null?void 0:a("workers"),children:"Worker Message Volume"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:78,columnNumber:11},this),n.map(i)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/StreamVolumeChart.tsx",lineNumber:63,columnNumber:5},this)}let ut=0;function dt({event:t}){var r,o,n;const[a,s]=l.useState(!1);return e.jsxDEV("div",{className:"border-b border-surface-border/50 last:border-b-0",children:[e.jsxDEV("button",{onClick:()=>s(!a),className:"flex items-center gap-2 py-1.5 w-full text-left hover:bg-surface-hover/50 transition-colors",children:[e.jsxDEV("span",{className:"text-[9px] font-mono text-text-tertiary whitespace-nowrap tabular-nums shrink-0",children:new Date(t.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:27,columnNumber:9},this),e.jsxDEV("span",{className:`text-[9px] font-medium px-1 py-0.5 rounded ${Xe[t.type]||"text-text-tertiary"} bg-surface-sunken whitespace-nowrap shrink-0`,children:t.type},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:30,columnNumber:9},this),e.jsxDEV("span",{className:"text-[9px] text-text-tertiary font-mono flex-1 min-w-0 break-all",children:[(r=t.data)!=null&&r.guid?String(t.data.guid):"",(o=t.data)!=null&&o.topic?` ${String(t.data.topic)}`:"",t.type==="throttle"?` → ${H((n=t.data)==null?void 0:n.throttle)}`:""]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:33,columnNumber:9},this),e.jsxDEV("svg",{className:`w-2.5 h-2.5 text-text-tertiary shrink-0 transition-transform duration-150 ${a?"rotate-180":""}`,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:e.jsxDEV("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 9l-7 7-7-7"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:42,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:38,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:23,columnNumber:7},this),e.jsxDEV(W,{open:a,children:e.jsxDEV("div",{className:"pb-2",children:e.jsxDEV(je,{data:t.data},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:47,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:46,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:45,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:22,columnNumber:5},this)}function pt({channels:t,onToggle:a,customFilter:s,onCustomFilterChange:r}){return e.jsxDEV("div",{className:"space-y-3 pb-3 border-b border-surface-border mb-3",children:[e.jsxDEV("div",{className:"flex items-center gap-2 mb-1",children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary",children:"Channels"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:67,columnNumber:9},this),e.jsxDEV("p",{className:"text-[9px] text-text-tertiary",children:"Unchecked channels are dropped before buffering"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:70,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:66,columnNumber:7},this),e.jsxDEV("div",{className:"grid grid-cols-2 gap-1",children:de.map(o=>e.jsxDEV("label",{className:"flex items-center gap-2 cursor-pointer py-0.5",children:[e.jsxDEV("input",{type:"checkbox",checked:t.has(o.key),onChange:()=>a(o.key),className:"w-3 h-3 rounded border-border accent-accent"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:77,columnNumber:13},this),e.jsxDEV("span",{className:"text-[10px] text-text-secondary",title:o.description,children:o.label},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:83,columnNumber:13},this)]},o.key,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:76,columnNumber:11},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:74,columnNumber:7},this),e.jsxDEV("div",{children:[e.jsxDEV("p",{className:"text-[9px] font-semibold uppercase tracking-widest text-text-tertiary mb-1",children:"Text Filter"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:90,columnNumber:9},this),e.jsxDEV("input",{type:"text",value:s,onChange:o=>r(o.target.value),placeholder:"pong",className:"input text-[10px] font-mono py-1 px-2 w-full"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:93,columnNumber:9},this),e.jsxDEV("p",{className:"text-[9px] text-text-tertiary mt-1",children:["Filter by event type, e.g. ",e.jsxDEV("span",{className:"font-mono",children:"pong"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:101,columnNumber:38},this),", ",e.jsxDEV("span",{className:"font-mono",children:"throttle"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:101,columnNumber:79},this),", or any text in the event data."]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:100,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:89,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:65,columnNumber:5},this)}function ht({bridgeActive:t}){const[a,s]=l.useState(!1),[r,o]=l.useState(!1),[n,h]=l.useState([]),[i,f]=l.useState(()=>new Set(de.map(u=>u.key))),[m,V]=l.useState(""),y=l.useRef(i);l.useEffect(()=>{y.current=i},[i]);const d=l.useRef(m);l.useEffect(()=>{d.current=m},[m]);const x=u=>{f(N=>{const D=new Set(N);return D.has(u)?D.delete(u):D.add(u),D})};Ve("lt.events.mesh.>",l.useCallback(u=>{var j;const N=((j=u.type)==null?void 0:j.replace("mesh.",""))||"unknown";if(!y.current.has(N))return;const D=d.current;D&&!`${N} ${JSON.stringify(u.data||u)}`.toLowerCase().includes(D.toLowerCase())||h(P=>[{id:++ut,type:N,timestamp:u.timestamp||new Date().toISOString(),data:u.data||u},...P].slice(0,Ze))},[]));const C=()=>h([]);return e.jsxDEV("div",{className:"border-l border-surface-border pl-6 pt-4 min-h-[300px] sticky top-14 self-start max-h-[calc(100vh-8rem)] flex flex-col",children:[e.jsxDEV("div",{className:"flex items-center gap-2 mb-3",children:[e.jsxDEV("p",{className:"text-[10px] font-semibold uppercase tracking-widest text-text-tertiary",children:"Event Stream"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:169,columnNumber:9},this),e.jsxDEV(Te,{className:`w-3 h-3 ${t?"text-status-success animate-pulse":"text-text-tertiary"}`},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:172,columnNumber:9},this),e.jsxDEV("span",{className:"text-[9px] text-text-tertiary",children:t?"Live":"..."},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:173,columnNumber:9},this),e.jsxDEV("span",{className:"ml-auto flex items-center gap-1",children:[e.jsxDEV("button",{onClick:()=>{s(u=>!u),o(!1)},className:`p-1 rounded transition-colors ${a?"text-accent bg-accent/10":"text-text-tertiary hover:text-text-primary"}`,title:"Configure channels",children:e.jsxDEV(Pe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:183,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:178,columnNumber:11},this),e.jsxDEV("button",{onClick:()=>{o(u=>!u),s(!1)},className:`p-1 rounded transition-colors ${r?"text-accent bg-accent/10":"text-text-tertiary hover:text-text-primary"}`,title:"View raw JSON",children:e.jsxDEV(Fe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:190,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:185,columnNumber:11},this),n.length>0&&e.jsxDEV("button",{onClick:C,className:"p-1 rounded text-text-tertiary hover:text-text-primary transition-colors",title:"Clear events",children:e.jsxDEV(Me,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:198,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:193,columnNumber:13},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:177,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:168,columnNumber:7},this),e.jsxDEV(W,{open:a,children:e.jsxDEV(pt,{channels:i,onToggle:x,customFilter:m,onCustomFilterChange:V},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:206,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:205,columnNumber:7},this),e.jsxDEV(W,{open:r,children:e.jsxDEV("div",{className:"pb-3 border-b border-surface-border mb-3",children:e.jsxDEV("pre",{className:"text-[9px] font-mono text-text-tertiary bg-surface-sunken rounded-lg p-3 max-h-[50vh] overflow-auto whitespace-pre-wrap",children:JSON.stringify(n.slice(0,50),null,2)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:217,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:216,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:215,columnNumber:7},this),n.length>0&&e.jsxDEV("p",{className:"text-[9px] text-text-tertiary mb-2",children:[n.length," events"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:225,columnNumber:9},this),e.jsxDEV("div",{className:"flex-1 overflow-y-auto",children:n.length===0?e.jsxDEV("p",{className:"text-xs text-text-tertiary py-6 text-center",children:t?"Waiting for events...":"Subscribing..."},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:233,columnNumber:11},this):n.map(u=>e.jsxDEV(dt,{event:u},u.id,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:238,columnNumber:13},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:231,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QuorumFeed.tsx",lineNumber:166,columnNumber:5},this)}function bt({queue:t,workers:a,expanded:s,onToggle:r,onWorkerClick:o,onResumeThrottle:n,onQueueThrottle:h,onResumeQueue:i,byStream:f,activeDuration:m}){const V=l.useMemo(()=>{const d=f.find(x=>x.stream_type==="worker"&&ue(x.stream_name)===t);return(d==null?void 0:d.count)??0},[f,t]),y=l.useMemo(()=>[{key:"engine_id",label:"Worker ID",render:d=>e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:d.engine_id},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:55,columnNumber:9},this),className:"w-48"},{key:"throttle",label:"Throttle",render:d=>{const x=d.throttle;return x===-1?e.jsxDEV("span",{className:"text-xs text-status-error font-medium",children:"Paused"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:66,columnNumber:30},this):x&&x>0?e.jsxDEV("span",{className:"text-xs text-status-warning font-medium",children:H(x)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:67,columnNumber:32},this):e.jsxDEV("span",{className:"text-xs text-text-tertiary",children:"0"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:68,columnNumber:16},this)},className:"w-24"},{key:"memory",label:"Memory",render:d=>{var x,C;return e.jsxDEV("span",{className:"text-xs font-mono text-text-tertiary",children:ce((x=d.system)==null?void 0:x.TotalMemoryGB,(C=d.system)==null?void 0:C.FreeMemoryGB)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:76,columnNumber:9},this)},className:"w-36"},{key:"actions",label:"",render:d=>e.jsxDEV(oe,{children:[A(d)&&e.jsxDEV(L,{icon:G,title:"Resume (remove throttle)",onClick:()=>n(d),colorClass:"text-text-tertiary hover:text-status-success"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:88,columnNumber:13},this),e.jsxDEV(L,{icon:J,title:"Adjust throttle",onClick:()=>o(d)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:95,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:86,columnNumber:9},this),className:"w-16"}],[o,n]);return e.jsxDEV("div",{children:[e.jsxDEV("button",{onClick:()=>r(t),className:"group/row relative flex items-center gap-3 w-full py-2 hover:bg-surface-hover transition-colors text-left rounded",children:[e.jsxDEV(Re,{className:`w-3.5 h-3.5 text-text-tertiary/50 transition-transform duration-200 ${s?"rotate-90":""}`,strokeWidth:2},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:112,columnNumber:9},this),e.jsxDEV(We,{queue:t,size:"sm"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:116,columnNumber:9},this),e.jsxDEV("span",{className:"flex-1"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:118,columnNumber:9},this),e.jsxDEV("span",{className:`flex items-center gap-1 text-xs w-24 ${a.some(A)?"text-status-warning":"text-text-tertiary"}`,children:[e.jsxDEV(_e,{className:"w-3 h-3 shrink-0",strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:121,columnNumber:11},this),e.jsxDEV("span",{className:"font-mono tabular-nums",children:a.length},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:122,columnNumber:11},this),e.jsxDEV("span",{children:"workers"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:123,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:120,columnNumber:9},this),e.jsxDEV("span",{className:"flex items-center gap-1 text-xs font-mono text-text-tertiary w-28 justify-end mr-16",children:V>0?e.jsxDEV(e.Fragment,{children:[e.jsxDEV($e,{className:"w-3 h-3 shrink-0",strokeWidth:1.5},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:129,columnNumber:15},this),V.toLocaleString()," in ",m]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:128,columnNumber:13},this):e.jsxDEV("span",{className:"text-text-tertiary/40",children:"—"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:133,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:126,columnNumber:9},this),e.jsxDEV("span",{className:"absolute right-3 top-1/2 -translate-y-1/2 opacity-0 group-hover/row:opacity-100 transition-opacity flex items-center gap-2",children:[a.some(A)&&e.jsxDEV(G,{className:"w-4 h-4 text-text-tertiary hover:text-status-success",strokeWidth:1.5,onClick:d=>{d.stopPropagation(),i(t)}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:139,columnNumber:13},this),e.jsxDEV(J,{className:"w-4 h-4 text-text-tertiary hover:text-accent",strokeWidth:1.5,onClick:d=>{d.stopPropagation(),h(t)}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:148,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:137,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:108,columnNumber:7},this),e.jsxDEV(W,{open:s,children:e.jsxDEV("div",{className:"ml-6",children:e.jsxDEV(le,{columns:y,data:a,keyFn:k,onRowClick:o,emptyMessage:"No workers",inline:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:161,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:160,columnNumber:9},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:159,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/QueueCard.tsx",lineNumber:107,columnNumber:5},this)}function xt(){const{data:t}=ie(),a=me(),[s,r]=l.useState(!1),o=(t==null?void 0:t.apps)??[],n=h=>{for(const i of o)a.mutate({appId:i.appId,throttle:h});r(!1)};return s?e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("span",{className:"text-xs text-status-error",children:"Pause all queues?"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:22,columnNumber:9},this),e.jsxDEV("button",{onClick:()=>n(-1),className:"px-2.5 py-1 text-xs rounded-md bg-status-error text-white hover:bg-status-error/90 transition-colors",children:"Confirm"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:23,columnNumber:9},this),e.jsxDEV("button",{onClick:()=>r(!1),className:"px-2.5 py-1 text-xs text-text-tertiary hover:text-text-primary transition-colors",children:"Cancel"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:29,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:21,columnNumber:7},this):e.jsxDEV("div",{className:"flex items-center gap-2",children:[e.jsxDEV("button",{onClick:()=>r(!0),className:"flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-md text-status-error/80 hover:text-status-error hover:bg-status-error/10 transition-colors",title:"Pause all queues",children:[e.jsxDEV(Ae,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:46,columnNumber:9},this),"Pause All"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:41,columnNumber:7},this),e.jsxDEV("button",{onClick:()=>n(0),className:"flex items-center gap-1.5 px-2.5 py-1 text-xs rounded-md text-status-success/80 hover:text-status-success hover:bg-status-success/10 transition-colors",title:"Resume all queues",children:[e.jsxDEV(Oe,{className:"w-3.5 h-3.5"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:54,columnNumber:9},this),"Resume All"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:49,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/EmergencyControls.tsx",lineNumber:40,columnNumber:5},this)}function St(){var re;const{data:t}=ie(),a=(t==null?void 0:t.apps)??[],{filters:s,setFilter:r}=Se({filters:{app_id:"",duration:"1h"}}),o=((re=a[0])==null?void 0:re.appId)??"durable",n=s.app_id||o,h=s.duration||"1h",i=He(),f=6e4,{data:m,isLoading:V,error:y,refetch:d,isFetching:x}=Ge(n,f),{data:C}=ze(n,h,void 0,f),u=l.useMemo(()=>[...(m==null?void 0:m.profiles)??[]].sort((b,v)=>{const _=b.worker_topic||b.stream||"",B=v.worker_topic||v.stream||"";return!b.worker_topic&&v.worker_topic?-1:b.worker_topic&&!v.worker_topic?1:_.localeCompare(B)}),[m==null?void 0:m.profiles]),N=l.useMemo(()=>u.filter(c=>!$(c)),[u]),D=l.useMemo(()=>u.filter($),[u]),j=l.useMemo(()=>et(u),[u]),P=u.filter(A).length,p=l.useMemo(()=>{const c=new Set(a.map(b=>b.appId));return n&&c.add(n),[...c].sort().map(b=>({value:b,label:b}))},[a,n]),[w,E]=l.useState(new Set),Q=l.useCallback(c=>{E(b=>{const v=new Set(b);return v.has(c)?v.delete(c):v.add(c),v})},[]),T=j.size>0&&[...j.keys()].every(c=>w.has(c)),g=l.useCallback(()=>{E(T?new Set:new Set(j.keys()))},[T,j]),S="lt:controlplane:collapsed",[R,F]=l.useState(()=>{try{return JSON.parse(localStorage.getItem(S)||"{}")}catch{return{}}}),q=l.useCallback(c=>{F(b=>{const v={...b,[c]:!b[c]};return localStorage.setItem(S,JSON.stringify(v)),v})},[]),{selectedIds:M,setSelectedIds:Y,toggleCheckbox:X,throttleModalOpen:pe,throttleTargets:Z,selectedThrottleTargets:he,throttleMutation:be,handleBulkThrottle:xe,handleRowClick:I,handleBulkThrottleOpen:ee,handleResumeThrottle:K,handleResumeQueue:Ne,handleQueueThrottle:fe,closeThrottleModal:ge}=lt({activeAppId:n,allProfiles:u,profiles:u}),te=l.useCallback(()=>{const c=new Set(N.map(k)),b=N.length>0&&N.every(v=>M.has(k(v)));Y(v=>{const _=new Set(v);for(const B of c)b?_.delete(B):_.add(B);return _})},[N,M,Y]),ae=l.useCallback(()=>{N.filter(b=>M.has(k(b))).length!==0&&ee()},[N,M,ee]),ve=l.useMemo(()=>nt({profiles:N,selectedIds:M,toggleAll:te,toggleCheckbox:X,onRowThrottle:I,onResumeThrottle:K,onBulkThrottle:ae}),[N,M,te,X,I,K,ae]),Ee=l.useMemo(()=>{const c=[{label:"Engines",value:N.length,dotClass:"bg-blue-500"},{label:"Workers",value:D.length,dotClass:"bg-text-secondary"},{label:"Queues",value:j.size}];return P>0&&c.push({label:"Throttled",value:P,dotClass:"bg-status-warning"}),c},[N.length,D.length,j.size,P]),[se,ye]=l.useState(!1),Ce=l.useCallback(()=>{i.mutate({appId:n},{onSuccess:()=>ye(!0)})},[n,i]);return l.useEffect(()=>{!se&&n&&Ce()},[n]),e.jsxDEV("div",{children:[e.jsxDEV(ke,{title:"Task Queues",stats:Ee,actions:e.jsxDEV(xt,{},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:190,columnNumber:18},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:187,columnNumber:7},this),e.jsxDEV(we,{actions:e.jsxDEV("div",{className:"flex items-center gap-1",children:Ye.map(c=>e.jsxDEV("button",{onClick:()=>r("duration",c.value),className:`px-3 py-1 text-xs rounded-full transition-colors ${h===c.value?"bg-accent text-text-inverse":"text-text-tertiary hover:text-text-primary hover:bg-surface-hover"}`,children:c.label},c.value,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:197,columnNumber:15},this))},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:195,columnNumber:11},this),children:[e.jsxDEV(Qe,{label:"Application",value:s.app_id,onChange:c=>r("app_id",c),options:p},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:212,columnNumber:9},this),e.jsxDEV("button",{onClick:()=>d(),disabled:x,className:"flex items-center gap-1.5 px-3 py-1.5 text-xs text-text-tertiary hover:text-text-primary transition-colors disabled:opacity-50",children:[e.jsxDEV(Ie,{className:`w-3.5 h-3.5 ${x?"animate-spin":""}`},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:223,columnNumber:11},this),"Roll Call"]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:218,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:193,columnNumber:7},this),y&&e.jsxDEV("div",{className:"mb-6 px-4 py-3 rounded bg-status-error/10 border border-status-error/20",children:e.jsxDEV("p",{className:"text-xs text-status-error font-medium",children:y.message==="Session expired"?"Session expired — please log in again.":`Failed to load mesh data: ${y.message}`},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:231,columnNumber:11},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:230,columnNumber:9},this),e.jsxDEV("div",{className:"grid grid-cols-1 lg:grid-cols-[1fr_340px] gap-6",children:[e.jsxDEV("div",{className:"flex flex-col gap-12 mt-10",children:[e.jsxDEV(U,{title:`Stream Volume (${h})`,sectionKey:"volume",isCollapsed:!!R.volume,onToggle:q,contentClassName:"mt-4 ml-7",children:e.jsxDEV(ct,{byStream:(C==null?void 0:C.byStream)??[],onNodeFilter:()=>{},onQueueFilter:()=>{}},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:250,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:243,columnNumber:11},this),e.jsxDEV(U,{title:"Worker Queues",sectionKey:"queues",isCollapsed:!!R.queues,onToggle:q,contentClassName:"mt-4 ml-7 flex flex-col gap-0",children:V?e.jsxDEV("p",{className:"text-xs text-text-tertiary",children:"Discovering mesh nodes..."},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:266,columnNumber:15},this):j.size===0?e.jsxDEV("p",{className:"text-xs text-text-tertiary",children:'No worker queues found. Click "Roll Call" to discover.'},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:268,columnNumber:15},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"flex justify-end mb-2",children:e.jsxDEV("button",{onClick:g,className:"text-[10px] text-accent hover:underline",children:T?"Collapse all":"Expand all"},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:272,columnNumber:19},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:271,columnNumber:17},this),[...j.entries()].sort(([c],[b])=>c.localeCompare(b)).map(([c,b])=>e.jsxDEV(bt,{queue:c,workers:b,expanded:w.has(c),onToggle:Q,onWorkerClick:I,onResumeThrottle:K,onQueueThrottle:fe,onResumeQueue:Ne,byStream:(C==null?void 0:C.byStream)??[],activeDuration:h},c,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:279,columnNumber:21},this))]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:270,columnNumber:15},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:258,columnNumber:11},this),e.jsxDEV(U,{title:"Engines",sectionKey:"engines",isCollapsed:!!R.engines,onToggle:q,contentClassName:"mt-4 ml-7",children:e.jsxDEV(le,{columns:ve,data:N,keyFn:k,onRowClick:I,isLoading:V,emptyMessage:V?"Discovering engines...":"No engines found.",inline:!0},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:305,columnNumber:13},this)},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:298,columnNumber:11},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:241,columnNumber:9},this),e.jsxDEV(ht,{bridgeActive:se},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:317,columnNumber:9},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:240,columnNumber:7},this),e.jsxDEV(mt,{open:pe,onClose:ge,targets:Z.length>0?Z:he,onApply:xe,isPending:be.isPending},void 0,!1,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:320,columnNumber:7},this)]},void 0,!0,{fileName:"/app/dashboard/src/pages/admin/controlplane/ControlPlanePage.tsx",lineNumber:186,columnNumber:5},this)}export{St as ControlPlanePage};
|
|
2
|
+
//# sourceMappingURL=index-Dj-z-x8M.js.map
|