agentworkshop 0.7.38 → 0.7.40
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/.AgentWorkShop/prompts/aml-mission-default.md +20 -20
- package/.AgentWorkShop/prompts/aml-playbook.md +49 -49
- package/.AgentWorkShop/prompts/host-tools.json +1293 -1238
- package/.AgentWorkShop/prompts/peer-reply-cross-channel.md +10 -10
- package/.output/.AgentWorkShop/prompts/aml-mission-default.md +20 -20
- package/.output/.AgentWorkShop/prompts/aml-playbook.md +49 -49
- package/.output/.AgentWorkShop/prompts/host-tools.json +1293 -1238
- package/.output/.AgentWorkShop/prompts/peer-reply-cross-channel.md +10 -10
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/88GOowgO2.js +1 -0
- package/.output/public/_nuxt/{BNT8gYU92.js → BC9wjTJK2.js} +2 -2
- package/.output/public/_nuxt/BOt2SP4z.js +1 -0
- package/.output/public/_nuxt/BP-NyKVG.js +18 -0
- package/.output/public/_nuxt/{HBLJ-wei.js → BXxH0UQE.js} +1 -1
- package/.output/public/_nuxt/{zIGh7R49.js → BneN7fbu.js} +1 -1
- package/.output/public/_nuxt/BsROmY89.js +1 -0
- package/.output/public/_nuxt/{C_OLzD09.js → C4oW1HsE.js} +1 -1
- package/.output/public/_nuxt/CFxtLwjp.js +1 -0
- package/.output/public/_nuxt/{Cec0Ua3F.js → CS50LB_l.js} +1 -1
- package/.output/public/_nuxt/C_iYD-EB.js +1 -0
- package/.output/public/_nuxt/{DAe0h2MB.js → ClILjvWH.js} +1 -1
- package/.output/public/_nuxt/CssgYAAL2.js +1 -0
- package/.output/public/_nuxt/{CY9LbPCI.js → CzOCSGLe.js} +1 -1
- package/.output/public/_nuxt/D8qvkfyY.js +1 -0
- package/.output/public/_nuxt/DCn7QZ5N.js +2 -0
- package/.output/public/_nuxt/DGIuvyRN2.js +1 -0
- package/.output/public/_nuxt/{CojCTLKD.js → DGj-WEBg.js} +1 -1
- package/.output/public/_nuxt/{DDShH71m.js → DS8qj8EL.js} +1 -1
- package/.output/public/_nuxt/DTFCy6h-.js +1 -0
- package/.output/public/_nuxt/{DrYV5i68.js → DUjW5Yq5.js} +1 -1
- package/.output/public/_nuxt/DZshyNLa.js +1 -0
- package/.output/public/_nuxt/{45zuyAso.js → D_OTvQza.js} +1 -1
- package/.output/public/_nuxt/DcsCcxp4.js +1 -0
- package/.output/public/_nuxt/{DUrecWPx.js → Dihnimlk.js} +2 -2
- package/.output/public/_nuxt/Dqw1lpr-.js +1 -0
- package/.output/public/_nuxt/{BG8sCcwx.js → Dr9v6C0f.js} +9 -9
- package/.output/public/_nuxt/{8NMOXZOV.js → Du9ZJtnj.js} +1 -1
- package/.output/public/_nuxt/TownView.f-YOdXRs.css +1 -0
- package/.output/public/_nuxt/_id_.CM4bIgKY.css +1 -0
- package/.output/public/_nuxt/_id_.bNV69Dtf.css +1 -0
- package/.output/public/_nuxt/_wsId_.B4WiqkIS.css +1 -0
- package/.output/public/_nuxt/agents.ZD0rVdHE.css +1 -0
- package/.output/public/_nuxt/aml.BN8ZEW4h.css +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/f4707884-7cf4-4a31-80d2-e3d72b73745f.json +1 -0
- package/.output/public/_nuxt/channel-templates.BOtahzPi.css +1 -0
- package/.output/public/_nuxt/daq.B0D3dPAc.css +1 -0
- package/.output/public/_nuxt/dcw.8Y7FqCVN.css +1 -0
- package/.output/public/_nuxt/default.J32SgqFY.css +1 -0
- package/.output/public/_nuxt/entry.bdm0tv6M.css +1 -0
- package/.output/public/_nuxt/logs.BpKzmKsh.css +1 -0
- package/.output/public/_nuxt/monitor.D9pe7qN6.css +1 -0
- package/.output/public/_nuxt/pages.D7aSDlUI.css +1 -0
- package/.output/public/_nuxt/permissions.DwTVlFe6.css +1 -0
- package/.output/public/_nuxt/plugins.sb4nDGqr.css +1 -0
- package/.output/public/_nuxt/{Cbq-mryP.js → qr6R6Ha1.js} +1 -1
- package/.output/public/_nuxt/settings.BTgR-NiE.css +1 -0
- package/.output/public/_nuxt/teams.CxnxKVVs.css +1 -0
- package/.output/public/_nuxt/tokens.BFY7qv4f.css +1 -0
- package/.output/public/_nuxt/{town.DKIAhKnx.css → town.BBXZmeoP.css} +1 -1
- package/.output/public/_nuxt/users.DLgZ1D0h.css +1 -0
- package/.output/public/_nuxt/workshop.CR_QzeAN.css +1 -0
- package/.output/public/_nuxt/{BzHEilTt.js → xh3_vYcu.js} +1 -1
- package/.output/public/_nuxt/yF0aYMF1.js +4 -0
- package/.output/server/chunks/_/entity.mjs.map +1 -1
- package/.output/server/chunks/_/nitro.mjs +2244 -1464
- package/.output/server/chunks/_/nitro.mjs.map +1 -1
- package/.output/server/chunks/build/{TownView-jVazYOjN.mjs → TownView-BuLAsmpR.mjs} +288 -206
- package/.output/server/chunks/build/TownView-BuLAsmpR.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-CfVosNg3.mjs → _id_-BU1wfOID.mjs} +138 -138
- package/.output/server/chunks/build/{_id_-CfVosNg3.mjs.map → _id_-BU1wfOID.mjs.map} +1 -1
- package/.output/server/chunks/build/{_id_-Hwr4rZpr.mjs → _id_-BYsEua57.mjs} +33 -32
- package/.output/server/chunks/build/_id_-BYsEua57.mjs.map +1 -0
- package/.output/server/chunks/build/{_wsId_-BVg3bB77.mjs → _wsId_-BxlDcJHg.mjs} +293 -259
- package/.output/server/chunks/build/{_wsId_-BVg3bB77.mjs.map → _wsId_-BxlDcJHg.mjs.map} +1 -1
- package/.output/server/chunks/build/{agents-Bvin73QY.mjs → agents-CLQqJF2y.mjs} +21 -27
- package/.output/server/chunks/build/agents-CLQqJF2y.mjs.map +1 -0
- package/.output/server/chunks/build/{aml-BCSJCdX7.mjs → aml-_7FdFL2p.mjs} +109 -109
- package/.output/server/chunks/build/{aml-BCSJCdX7.mjs.map → aml-_7FdFL2p.mjs.map} +1 -1
- package/.output/server/chunks/build/api-error-dul30BYQ.mjs.map +1 -1
- package/.output/server/chunks/build/{channel-templates-BTq8570n.mjs → channel-templates-p6SZNjlM.mjs} +19 -19
- package/.output/server/chunks/build/{channel-templates-BTq8570n.mjs.map → channel-templates-p6SZNjlM.mjs.map} +1 -1
- package/.output/server/chunks/build/{daq-C03Uu5UE.mjs → daq-cgyjKmJu.mjs} +188 -122
- package/.output/server/chunks/build/daq-cgyjKmJu.mjs.map +1 -0
- package/.output/server/chunks/build/{dcw-6vEYVeje.mjs → dcw-CoTxBlAZ.mjs} +45 -45
- package/.output/server/chunks/build/{dcw-6vEYVeje.mjs.map → dcw-CoTxBlAZ.mjs.map} +1 -1
- package/.output/server/chunks/build/{default-hseyOqBT.mjs → default-BE4r0FZN.mjs} +158 -79
- package/.output/server/chunks/build/{default-hseyOqBT.mjs.map → default-BE4r0FZN.mjs.map} +1 -1
- package/.output/server/chunks/build/{logs-B-xhuqln.mjs → logs-BSOeZwwI.mjs} +34 -34
- package/.output/server/chunks/build/{logs-B-xhuqln.mjs.map → logs-BSOeZwwI.mjs.map} +1 -1
- package/.output/server/chunks/build/{monitor-CyfDt4nR.mjs → monitor-C0okQaXz.mjs} +33 -33
- package/.output/server/chunks/build/{monitor-CyfDt4nR.mjs.map → monitor-C0okQaXz.mjs.map} +1 -1
- package/.output/server/chunks/build/{pages-BO7yZsXA.mjs → pages-DFxjn9Xa.mjs} +33 -17
- package/.output/server/chunks/build/pages-DFxjn9Xa.mjs.map +1 -0
- package/.output/server/chunks/build/{permissions-B52oOmaO.mjs → permissions-68SsNjex.mjs} +12 -12
- package/.output/server/chunks/build/{permissions-B52oOmaO.mjs.map → permissions-68SsNjex.mjs.map} +1 -1
- package/.output/server/chunks/build/{plugins-CUWmMdyt.mjs → plugins-lGlUr1lj.mjs} +17 -17
- package/.output/server/chunks/build/{plugins-CUWmMdyt.mjs.map → plugins-lGlUr1lj.mjs.map} +1 -1
- package/.output/server/chunks/build/{settings-DoQ2Oq3P.mjs → settings-Ddd1qx2Z.mjs} +50 -47
- package/.output/server/chunks/build/settings-Ddd1qx2Z.mjs.map +1 -0
- package/.output/server/chunks/build/{teams-2kz3CusY.mjs → teams-MEDLZdMn.mjs} +38 -34
- package/.output/server/chunks/build/teams-MEDLZdMn.mjs.map +1 -0
- package/.output/server/chunks/build/{tokens-BbWLqtVz.mjs → tokens-C7fTM5C2.mjs} +14 -14
- package/.output/server/chunks/build/{tokens-BbWLqtVz.mjs.map → tokens-C7fTM5C2.mjs.map} +1 -1
- package/.output/server/chunks/build/{town-BOl6hs9B.mjs → town-qMPql9Se.mjs} +36 -10
- package/.output/server/chunks/build/town-qMPql9Se.mjs.map +1 -0
- package/.output/server/chunks/build/useDaqStream-CIBaiGAl.mjs +1 -1
- package/.output/server/chunks/build/useDcwStream-CBbiYnWe.mjs +1 -1
- package/.output/server/chunks/build/useResponsive-BKDMGTHs.mjs +49 -0
- package/.output/server/chunks/build/useResponsive-BKDMGTHs.mjs.map +1 -0
- package/.output/server/chunks/build/{users-fohSmF-J.mjs → users-Cfd5-l2-.mjs} +6 -6
- package/.output/server/chunks/build/{users-fohSmF-J.mjs.map → users-Cfd5-l2-.mjs.map} +1 -1
- package/.output/server/chunks/build/{workshop-DX5-ldc4.mjs → workshop-BL5bhfs0.mjs} +15 -15
- package/.output/server/chunks/build/{workshop-DX5-ldc4.mjs.map → workshop-BL5bhfs0.mjs.map} +1 -1
- package/.output/server/chunks/build/{workspaces-BuydxM-3.mjs → workspaces-Bgz5Ekwp.mjs} +18 -3
- package/.output/server/chunks/build/workspaces-Bgz5Ekwp.mjs.map +1 -0
- package/.output/server/chunks/routes/api/system/config-groups/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/system/settings/events.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs +6 -2
- package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/channels.post.mjs +3 -3
- package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +3 -2
- package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +2 -1
- package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +8 -6
- package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +5 -5
- package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +14 -4
- package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +4 -4
- package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +4 -3
- package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +31 -0
- package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +28 -0
- package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +32 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +34 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +33 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +34 -0
- package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs.map +1 -0
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs +2 -0
- package/.output/server/chunks/routes/api/workshop/index6.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs +3 -1
- package/.output/server/chunks/routes/api/workshop/index9.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
- package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +1 -1
- package/.output/server/chunks/routes/renderer.mjs +3 -3
- package/.output/server/chunks/virtual/entry.mjs +53 -25
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/package.json +1 -1
- package/README-zh.md +204 -40
- package/README.md +739 -591
- package/app/app.vue +9 -3
- package/app/assets/css/main.css +517 -7
- package/app/components/AppHeader.vue +98 -24
- package/app/components/AppSidebar.vue +118 -11
- package/app/components/AwChart.vue +2 -1
- package/app/components/workshop/AgentInspectorDrawer.vue +6 -6
- package/app/components/workshop/AgentLanesView.vue +52 -1
- package/app/components/workshop/AssetLibrary.vue +4 -2
- package/app/components/workshop/ChannelSessionList.vue +4 -2
- package/app/components/workshop/Composer.vue +96 -0
- package/app/components/workshop/DaqNodeRow.vue +19 -0
- package/app/components/workshop/DaqTemplateIcon.vue +33 -0
- package/app/components/workshop/DeviceTwinPanel.vue +37 -35
- package/app/components/workshop/EventBlock.vue +3 -3
- package/app/components/workshop/InspectorPanel.vue +47 -11
- package/app/components/workshop/LiveAgentBar.vue +34 -0
- package/app/components/workshop/TaskBoardView.vue +83 -33
- package/app/components/workshop/TranscriptTimeline.vue +56 -0
- package/app/components/workshop/blocks/ClusterError.vue +1 -1
- package/app/components/workshop/blocks/ClusterRoute.vue +3 -1
- package/app/components/workshop/blocks/ClusterStatus.vue +2 -2
- package/app/components/workshop/blocks/ClusterStream.vue +8 -2
- package/app/components/workshop/town/ModelPreview3D.vue +1 -1
- package/app/components/workshop/town/TownView.vue +507 -82
- package/app/composables/useResponsive.ts +88 -0
- package/app/composables/useRouteMeta.ts +3 -0
- package/app/composables/workshop/useDcwStream.ts +1 -1
- package/app/composables/workshop/useVisibleInterval.ts +2 -2
- package/app/composables/workshop/useWorkshopApi.ts +1 -1
- package/app/layouts/default.vue +46 -2
- package/app/pages/aml/index.vue +712 -616
- package/app/pages/daq/[id].vue +3 -2
- package/app/pages/daq/index.vue +209 -9
- package/app/pages/dcw/[id].vue +109 -28
- package/app/pages/dcw/index.vue +83 -23
- package/app/pages/index.vue +35 -1
- package/app/pages/logs/index.vue +147 -13
- package/app/pages/monitor.vue +56 -12
- package/app/pages/permissions/index.vue +34 -0
- package/app/pages/plugins/index.vue +35 -4
- package/app/pages/settings.vue +90 -21
- package/app/pages/tokens.vue +23 -0
- package/app/pages/town.vue +50 -5
- package/app/pages/users.vue +23 -0
- package/app/pages/workshop/agents.vue +92 -2
- package/app/pages/workshop/channel-templates.vue +53 -0
- package/app/pages/workshop/index.vue +14 -0
- package/app/pages/workshop/teams.vue +66 -6
- package/app/pages/workshop/w/[wsId].vue +202 -14
- package/app/plugins/aw-plugins.client.ts +13 -8
- package/app/stores/app.ts +33 -1
- package/app/stores/workshop/user.ts +1 -1
- package/app/stores/workshop/workspaces.ts +18 -2
- package/app/utils/api-error.ts +1 -1
- package/cli/commands/build.mjs +8 -1
- package/docker-compose.yml +6 -0
- package/docs/full-test-plan.md +4 -0
- package/docs/plugins.en.md +1 -0
- package/docs/plugins.md +1 -0
- package/i18n/locales/en.ts +3 -0
- package/i18n/locales/zh-CN.ts +3 -0
- package/nuxt.config.ts +31 -0
- package/package.json +9 -1
- package/scripts/_audit/detached-start.mjs +103 -0
- package/scripts/_audit/guard-upstream-liveness.mjs +104 -0
- package/scripts/_dbg-param-map-e2e.ts +242 -0
- package/scripts/_dbg-param-map-rest-smoke.mjs +73 -0
- package/scripts/_dbg-param-real-scenario.mjs +153 -0
- package/scripts/_dbg-perms-e2e.mjs +10 -3
- package/scripts/_dbg-protocol-matrix.mjs +453 -441
- package/scripts/_dbg-render-regression.mjs +151 -130
- package/scripts/_dbg-town-agents-probe.mjs +60 -0
- package/scripts/_dbg-visual-acceptance.mjs +63 -0
- package/scripts/api-live-e2e.mjs +40 -8
- package/scripts/capture-walkthrough.mjs +232 -0
- package/scripts/e2e-agent-team.mjs +5 -3
- package/scripts/render-walkthrough-figure.mjs +46 -0
- package/scripts/seed-walkthrough-fixture.mjs +143 -0
- package/scripts/test-plugin-hardening.mjs +8 -0
- package/scripts/three-system-e2e.mjs +6 -6
- package/scripts/ui/admin-shots.mjs +46 -0
- package/scripts/ui/audit-layout.mjs +301 -0
- package/scripts/ui/bump-microfont.mjs +39 -0
- package/scripts/ui/lib.mjs +198 -0
- package/scripts/ui/linkcheck2.mjs +37 -0
- package/scripts/ui/live-render-check.mjs +72 -0
- package/scripts/ui/md-lint.mjs +80 -0
- package/scripts/ui/perf-audit.mjs +132 -0
- package/scripts/ui/readme-assets.mjs +30 -0
- package/scripts/ui/readme-shots.mjs +42 -0
- package/scripts/ui/record.mjs +225 -0
- package/scripts/ui/seed-admin.mjs +68 -0
- package/scripts/ui/seed-demo.mjs +83 -0
- package/scripts/ui/shot-hero.mjs +25 -0
- package/scripts/ui/shots.mjs +75 -0
- package/scripts/ui/sim-ui-shot.mjs +16 -0
- package/scripts/ui/verify-nav.mjs +51 -0
- package/scripts/ui/verify-responsive.mjs +285 -0
- package/server/api/system/config-groups/[id].patch.ts +1 -1
- package/server/api/system/config-groups/index.post.ts +1 -1
- package/server/api/system/settings/events.get.ts +1 -1
- package/server/api/system/settings/index.patch.ts +1 -1
- package/server/api/workshop/agent-tools/invoke.post.ts +16 -2
- package/server/api/workshop/aml/datasets/[id].get.ts +8 -1
- package/server/api/workshop/daq/infra/reconnect.post.ts +1 -1
- package/server/api/workshop/daq/templates/[key].delete.ts +1 -0
- package/server/api/workshop/daq/templates/[key].patch.ts +1 -0
- package/server/api/workshop/daq/templates/index.post.ts +1 -0
- package/server/api/workshop/dcw/[id]/write.post.ts +10 -2
- package/server/api/workshop/dcw/[id].delete.ts +5 -2
- package/server/api/workshop/dcw/index.get.ts +2 -0
- package/server/api/workshop/dcw/lines/[id].patch.ts +1 -1
- package/server/api/workshop/dcw/params/[id]/read.post.ts +17 -0
- package/server/api/workshop/dcw/params/[id]/write.post.ts +21 -0
- package/server/api/workshop/dcw/params/[id].delete.ts +19 -0
- package/server/api/workshop/dcw/params/[id].patch.ts +23 -0
- package/server/api/workshop/dcw/params/index.get.ts +27 -0
- package/server/api/workshop/dcw/params/index.post.ts +25 -0
- package/server/api/workshop/permissions/index.get.ts +3 -1
- package/server/plugins/aw-plugins.ts +14 -3
- package/server/plugins/dev-stability-guard.ts +3 -1
- package/server/plugins/system-config.ts +6 -1
- package/server/plugins-builtin/rag-bridge/index.mjs +9 -2
- package/server/services/system-config.ts +28 -9
- package/server/services/workshop/agents/adapters/one-shot-cli-agent.ts +2 -1
- package/server/services/workshop/agents/agent-interface.ts +8 -6
- package/server/services/workshop/agents/base-agent.ts +18 -4
- package/server/services/workshop/agents/claude-agent.ts +7 -3
- package/server/services/workshop/agents/codex-agent.ts +3 -3
- package/server/services/workshop/agents/dsh-agent.ts +3 -3
- package/server/services/workshop/agents/goose-agent.ts +0 -1
- package/server/services/workshop/agents/harness-terminal.ts +14 -1
- package/server/services/workshop/agents/hermes-agent.ts +4 -2
- package/server/services/workshop/agents/host-tool-bridge.ts +5 -1
- package/server/services/workshop/agents/industrial-context.ts +4 -1
- package/server/services/workshop/agents/industrial-tools.ts +164 -6
- package/server/services/workshop/agents/omp-agent.ts +15 -9
- package/server/services/workshop/agents/opencode-agent.ts +47 -21
- package/server/services/workshop/agents/qwen-agent.ts +10 -5
- package/server/services/workshop/aml/entity.ts +3 -1
- package/server/services/workshop/aml/python-runtime.ts +3 -2
- package/server/services/workshop/daq/bus/mqtt.adapter.ts +8 -4
- package/server/services/workshop/daq/daq-controller.ts +18 -3
- package/server/services/workshop/daq/daq-runtime.ts +5 -3
- package/server/services/workshop/daq/drivers.ts +63 -8
- package/server/services/workshop/daq/host-ports.ts +3 -2
- package/server/services/workshop/daq/storage/timescale.adapter.ts +3 -1
- package/server/services/workshop/db/channel.repo.ts +4 -0
- package/server/services/workshop/db/ops.repo.ts +5 -2
- package/server/services/workshop/db/retention.ts +8 -3
- package/server/services/workshop/dcw/dcw-controller.ts +143 -16
- package/server/services/workshop/dcw/dcw-product.repo.ts +38 -1
- package/server/services/workshop/dcw/dcw-runtime.ts +3 -2
- package/server/services/workshop/dcw/drivers.ts +5 -2
- package/server/services/workshop/dcw/param-conversion.ts +78 -0
- package/server/services/workshop/dcw/param-limits.ts +142 -0
- package/server/services/workshop/dcw/param-map.repo.ts +305 -0
- package/server/services/workshop/dcw/recipe-rollback-manager.ts +13 -7
- package/server/services/workshop/runtime/agent-runtime.ts +4 -0
- package/server/services/workshop/runtime/manager.ts +9 -2
- package/server/services/workshop/settings.ts +4 -2
- package/server/types/pg.d.ts +49 -0
- package/server/utils/stability-severity.ts +13 -2
- package/shared/config/groups.mjs +22 -1
- package/shared/config/home.d.mts +28 -0
- package/shared/dcw-protocol.ts +136 -0
- package/uno.config.ts +12 -1
- package/.output/public/_nuxt/BFkgkW8u.js +0 -4
- package/.output/public/_nuxt/C5gUkRwn.js +0 -1
- package/.output/public/_nuxt/CM12FuB42.js +0 -1
- package/.output/public/_nuxt/CZiw7sEV.js +0 -1
- package/.output/public/_nuxt/Cc_9VzD42.js +0 -1
- package/.output/public/_nuxt/CdPzkOMV.js +0 -1
- package/.output/public/_nuxt/D1YDxZpZ.js +0 -1
- package/.output/public/_nuxt/D20Yamr4.js +0 -1
- package/.output/public/_nuxt/DVsjtsvZ2.js +0 -1
- package/.output/public/_nuxt/DmqknNvV.js +0 -18
- package/.output/public/_nuxt/DnUuIR83.js +0 -1
- package/.output/public/_nuxt/S_fVQwJK.js +0 -1
- package/.output/public/_nuxt/TownView.0oLiQgTC.css +0 -1
- package/.output/public/_nuxt/_id_.D-SYuyZb.css +0 -1
- package/.output/public/_nuxt/_id_.hma_BU6T.css +0 -1
- package/.output/public/_nuxt/_wsId_.B12v3PhY.css +0 -1
- package/.output/public/_nuxt/agents.BV70ioCv.css +0 -1
- package/.output/public/_nuxt/ahgEJu2R.js +0 -1
- package/.output/public/_nuxt/aml.COEKNNqK.css +0 -1
- package/.output/public/_nuxt/builds/meta/44b66249-54d0-4c8a-9057-9755a32329e2.json +0 -1
- package/.output/public/_nuxt/channel-templates.C-M5nKcC.css +0 -1
- package/.output/public/_nuxt/daq.B3265ZDn.css +0 -1
- package/.output/public/_nuxt/dcw.DLYZqEhT.css +0 -1
- package/.output/public/_nuxt/default.DE_vT238.css +0 -1
- package/.output/public/_nuxt/entry.BB-Eeh-J.css +0 -1
- package/.output/public/_nuxt/logs.CqFyMrJw.css +0 -1
- package/.output/public/_nuxt/monitor.B--1dPzs.css +0 -1
- package/.output/public/_nuxt/pages.ooEzrMm9.css +0 -1
- package/.output/public/_nuxt/permissions.B1pjGChZ.css +0 -1
- package/.output/public/_nuxt/plugins.5e5chZ67.css +0 -1
- package/.output/public/_nuxt/pz2JDAM7.js +0 -2
- package/.output/public/_nuxt/settings.Dm3M0RLy.css +0 -1
- package/.output/public/_nuxt/teams.BC75EGnR.css +0 -1
- package/.output/public/_nuxt/tokens.xRb1fSPU.css +0 -1
- package/.output/public/_nuxt/users.CXnP2E08.css +0 -1
- package/.output/public/_nuxt/workshop.Jk5HxWPE.css +0 -1
- package/.output/server/chunks/build/TownView-jVazYOjN.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-Hwr4rZpr.mjs.map +0 -1
- package/.output/server/chunks/build/agents-Bvin73QY.mjs.map +0 -1
- package/.output/server/chunks/build/daq-C03Uu5UE.mjs.map +0 -1
- package/.output/server/chunks/build/pages-BO7yZsXA.mjs.map +0 -1
- package/.output/server/chunks/build/settings-DoQ2Oq3P.mjs.map +0 -1
- package/.output/server/chunks/build/teams-2kz3CusY.mjs.map +0 -1
- package/.output/server/chunks/build/town-BOl6hs9B.mjs.map +0 -1
- package/.output/server/chunks/build/workspaces-BuydxM-3.mjs.map +0 -1
- /package/.output/public/_nuxt/{36oeS8_R2.js → 36oeS8_R.js} +0 -0
- /package/.output/public/_nuxt/{CYWVXZTS.js → CYWVXZTS2.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./BU83-NnX.js";import{w as t}from"./DdD9mCHM.js";import{$ as n,Ht as r,R as i,S as a,Ut as o,V as s,Vt as c,W as l,b as u,ct as ee,d,dt as te,f,h as p,i as m,m as h,nt as g,p as _,pt as v,tt as y,xt as b,y as x}from"./CSkxz2NX.js";import{d as S,f as C,l as ne,u as w}from"./D6uzXueg.js";import{n as re,t as ie}from"./xh3_vYcu.js";import{n as ae}from"./KZQX7xoM.js";import{t as oe}from"./aWWIh8YL.js";import{t as se}from"./DBHNsT1Y.js";import{t as ce}from"./DzbFpZRk.js";import{t as le}from"./BYhEUx8t.js";import{t as ue}from"./CYWVXZTS2.js";import{n as de,r as fe,t as pe}from"./DHFrCUxA2.js";import{t as me}from"./DZtm4l-P2.js";import{t as he}from"./CClOy-Hz2.js";import{t as ge}from"./DIaZ2PTo2.js";import{t as _e}from"./DeyBFhKH2.js";import{t as T}from"./BDNMzG2s2.js";import{t as E}from"./D0ZBQrN_2.js";import{t as ve}from"./BN6iuJEg2.js";import{t as ye}from"./zq5t1vyX.js";var be={class:`settings-page`},xe={class:`aw-page-head`},Se={class:`aw-kicker`},Ce={class:`aw-stamp`},we={class:`settings-layout`},Te={class:`settings-nav`},Ee=[`onClick`],De={class:`settings-body`},Oe={class:`section-title`},ke={class:`section-desc`},Ae={class:`set-row`},je={class:`set-text`},Me={class:`set-title`},Ne={class:`set-sub`},Pe={class:`color-swatches`},Fe=[`title`,`onClick`],Ie={class:`swatch-label`},Le={key:0,class:`i-tabler-check swatch-check`},Re={class:`toggle-row`},ze={class:`set-text`},Be={class:`set-title`},Ve={class:`set-sub`},He=[`aria-checked`],Ue={class:`toggle-row`},We={class:`set-text`},Ge={class:`set-title`},Ke={class:`set-sub`},qe={class:`section-title`},Je={class:`section-desc`},Ye={class:`rt-groups-bar`},Xe=[`title`],Ze={class:`rt-groups-count`},Qe={key:1,class:`rt-group-form`},$e=[`disabled`],et=[`role`,`tabindex`,`onClick`,`onKeydown`],tt=[`onKeydown`],nt=[`onClick`],rt={key:3,class:`rt-group-title`},it={class:`rt-group-badge`},at={class:`rt-group-fields`},ot={key:4,class:`rt-group-desc`},st=[`disabled`,`title`,`onClick`],ct=[`disabled`,`title`,`onClick`],lt=[`disabled`,`title`,`onClick`],ut=[`disabled`,`title`,`onClick`],dt=[`disabled`,`title`,`onClick`],ft={class:`rt-group-body`},pt={key:0,class:`rt-group-empty`},mt={class:`rt-main`},ht={class:`rt-title`},gt={class:`rt-sub`},_t={class:`rt-ctrl`},vt={key:3,class:`rt-color`},yt=[`value`,`onInput`],bt=[`title`,`onClick`],xt={class:`rt-actions`},St=[`disabled`],Ct={class:`rt-path aw-mono`},wt={class:`rt-group-title plugin-group-title`},Tt={class:`section-desc`},Et={key:2,class:`identity-note`},Dt={class:`plugin-main`},Ot={class:`rt-title`},kt={class:`aw-mono`},At={key:0,class:`rt-tag`},jt={key:1,class:`rt-tag src-runtime`},Mt={key:2,class:`rt-tag restart`},Nt={class:`rt-sub`},Pt={class:`rt-ctrl`},Ft={key:0,class:`plugin-health faint`},It=[`onClick`],Lt=[`aria-checked`,`disabled`,`onClick`],Rt={key:0,class:`identity-note`},zt={class:`section-title`},Bt={class:`section-desc`},Vt={class:`aw-mono`},Ht={class:`identity-note`},Ut=`aw.settings.groups.collapsed`,Wt=T(a({__name:`settings`,setup(a){let{t:T,locale:Wt,locales:Gt,setLocale:Kt}=ae(),D=re(),O=ie(),qt=t().public,k=ge(),A=ve(),j=v(`appearance`),M=_e(),N=v({}),P=v(new Set),F=v(!1),I=v(null);function L(){N.value={...M.effective},P.value=new Set}n(()=>M.loaded,e=>{e&&L()},{immediate:!0}),n(()=>M.effective,()=>{P.value.size===0&&L()},{deep:!0});function R(e){P.value.add(e),I.value=null}async function Jt(){if(P.value.size){F.value=!0,I.value=null;try{let e={};for(let t of P.value)e[t]=N.value[t];let t=await M.patch(e);L();let n=t.restartRequired??[];I.value=n.length?{type:`warning`,text:T(`settings.runtime.restartNotice`,{keys:n.join(`, `)})}:{type:`success`,text:T(`settings.runtime.savedLive`)}}catch(e){let t=e;I.value={type:`error`,text:t?.response?.data?.message||t?.message||String(e)}}finally{F.value=!1}}}async function Yt(e){try{await M.patch({[e]:null}),P.value.delete(e),N.value[e]=M.effective[e],I.value={type:`success`,text:T(`settings.runtime.keyReset`,{key:e})}}catch(e){let t=e;I.value={type:`error`,text:t?.response?.data?.message||t?.message||String(e)}}}async function Xt(){try{await M.resetAll(),L(),I.value={type:`success`,text:T(`settings.runtime.resetAllDone`)}}catch(e){let t=e;I.value={type:`error`,text:t?.response?.data?.message||t?.message||String(e)}}}let Zt={server:`settings.runtime.groupServer`,app:`settings.runtime.groupApp`,api:`settings.runtime.groupApi`,theme:`settings.runtime.groupTheme`,i18n:`settings.runtime.groupI18n`,security:`settings.runtime.groupSecurity`,daq:`settings.runtime.groupDaq`,memory:`settings.runtime.groupMemory`,omp:`settings.runtime.groupOmp`,harness:`settings.runtime.groupHarness`,dcw:`settings.runtime.groupDcw`,workshop:`settings.runtime.groupWorkshop`,backup:`settings.runtime.groupBackup`,retention:`settings.runtime.groupRetention`,log:`settings.runtime.groupLog`,plugins:`settings.runtime.groupPlugins`};function Qt(e){if(e.labelKey&&T(e.labelKey)!==e.labelKey)return T(e.labelKey);if(e.label&&e.label!==e.id)return e.label;let t=Zt[e.id];return t?T(t):e.label||e.id}function $t(e){return e.source===`plugin`?e.plugin?`${T(`settings.groups.srcPlugin`)}: ${e.plugin}`:T(`settings.groups.srcPlugin`):e.source===`user`?T(`settings.groups.srcUser`):T(`settings.groups.srcBuiltin`)}function en(e){return e===`runtime`?`src-runtime`:e===`env`?`src-env`:`src-yaml`}function tn(e){let t=e.labelKey;return t&&T(t)!==t?T(t):e.label}let z=v({});function nn(){try{z.value=JSON.parse(localStorage.getItem(Ut)??`{}`)??{}}catch{z.value={}}}function rn(){try{localStorage.setItem(Ut,JSON.stringify(z.value))}catch{}}function B(e){let t=z.value[e.id];return t===void 0?e.collapsed:t}function V(e){e.collapsible&&(z.value={...z.value,[e.id]:!B(e)},rn())}function an(){let e=M.groups.filter(e=>e.collapsible),t=e.some(e=>!B(e)),n={...z.value};for(let r of e)n[r.id]=t;z.value=n,rn()}let on=d(()=>M.groups.filter(e=>e.collapsible).some(e=>!B(e))),H=d(()=>k.isAdmin),U=v(!1),W=te({label:``,description:``,collapsed:!1}),G=v(``),K=v(``),q=v(``);async function sn(){if(W.label.trim()){G.value=`create`;try{await M.createGroup({label:W.label.trim(),description:W.description.trim(),collapsed:W.collapsed}),U.value=!1,W.label=``,W.description=``,W.collapsed=!1,e.success(T(`settings.groups.created`))}catch(t){e.error(E(t,T(`settings.groups.createFail`)))}finally{G.value=``}}}function cn(e){K.value=e.id,q.value=e.label}async function ln(t){let n=q.value.trim();if(K.value=``,n){G.value=t;try{await M.updateGroup(t,{label:n}),e.success(T(`settings.groups.renamed`))}catch(t){e.error(E(t,T(`settings.groups.updateFail`)))}finally{G.value=``}}}async function un(t,n){let r=[...M.groups],i=r.findIndex(e=>e.id===t),a=i+n;if(i<0||a<0||a>=r.length)return;let o=r[i],s=r[a];G.value=t;try{let e=[...r];e.splice(i,1),e.splice(a,0,o);let t=(a+1)*10,n=(i+1)*10;await M.updateGroup(o.id,{order:t}),await M.updateGroup(s.id,{order:n})}catch(t){e.error(E(t,T(`settings.groups.updateFail`)))}finally{G.value=``}}async function dn(t){G.value=t.id;try{await M.updateGroup(t.id,{collapsed:!t.collapsed})}catch(t){e.error(E(t,T(`settings.groups.updateFail`)))}finally{G.value=``}}async function fn(t){let n=t.fieldCount??0;if(n>0){e.warning(T(`settings.groups.deleteHasFields`,{p0:Qt(t),p1:n}));return}G.value=t.id;try{await M.deleteGroup(t.id),e.success(T(`settings.groups.deleted`))}catch(t){e.error(E(t,T(`settings.groups.deleteFail`)))}finally{G.value=``}}let J=v([]),Y=v(!1),pn=v(!1),X=v(new Set),Z=v({}),mn=e=>(e.routes??[]).some(e=>String(e.path||``).endsWith(`/health`));async function hn(){Y.value=!0;try{let e=await A.listPlugins(),t=e?.plugins??e?.data?.plugins??[];J.value=Array.isArray(t)?t:[],pn.value=!0}catch(t){e.error(E(t,T(`plugins.loadFail`)))}finally{Y.value=!1}}async function gn(t,n){if(!X.value.has(t.name)){X.value.add(t.name);try{n?await A.enablePlugin(t.name):await A.disablePlugin(t.name),t.enabled=n,e.success(T(n?`plugins.enabled`:`plugins.disabled`))}catch(t){e.error(E(t,T(`plugins.adminRequired`)))}finally{X.value.delete(t.name)}}}async function _n(e){if(mn(e)){Z.value={...Z.value,[e.name]:`checking`};try{let t=await A.pluginHealth(e.name);Z.value={...Z.value,[e.name]:vn(e.name,t)}}catch(t){Z.value={...Z.value,[e.name]:{ok:!1,reason:E(t,T(`plugins.loadFail`))}}}}}function vn(e,t){if(e===`rag-bridge`){let e=t.backend,n=t.web,r=!!e?.ok&&!!n?.ok,i=e?.ok?n?.error||n?.status||`web`:e?.error||e?.status||`backend`;return r?{ok:!0}:{ok:!1,reason:i}}if(e===`diag-bridge`){let e=t.remote;return e?.status===`ok`?{ok:!0}:{ok:!1,reason:e?.status||`remote`}}return{ok:!0}}function yn(e){return Z.value[e]===`checking`}function Q(e){let t=Z.value[e];return t&&t!==`checking`?t:null}function bn(e){return X.value.has(e)}n(j,e=>{e===`runtime`&&!pn.value&&!Y.value&&k.isLoggedIn&&hn()},{immediate:!0}),i(nn);let $=String(qt.primaryColor),xn=[{value:$,label:T(`settings.accentInk`)},{value:`#c9963f`,label:T(`settings.accentStone`)},{value:`#44615a`,label:T(`settings.accentMoss`)},{value:`#3f6094`,label:T(`settings.accentSlate`)},{value:`#6b5aa0`,label:T(`settings.accentPlum`)},{value:`#9c5744`,label:T(`settings.accentClay`)}],Sn=d(()=>D.accent??$);function Cn(t){D.setAccent(t===$?null:t),e.success(T(`settings.accentApplied`))}function wn(){D.setAccent(null),e.success(T(`settings.accentReset`))}let Tn=d(()=>Gt.value.map(e=>({label:e.name,value:e.code}))),En=e=>{e!=null&&(localStorage.setItem(`aw.locale`,String(e)),Kt(String(e)),window.location.reload())},Dn=d(()=>[{label:T(`home.fields.name`),value:O.name},{label:T(`home.fields.version`),value:`v${O.version}`},{label:T(`home.fields.mode`),value:O.mode},{label:T(`home.fields.apiBase`),value:`${O.apiBase} (${qt.apiTimeout}ms)`},{label:T(`home.fields.primary`),value:$},{label:`i18n`,value:Wt.value}]),On=d(()=>[{key:`appearance`,icon:`i-tabler-palette`,label:T(`settings.theme`)},{key:`runtime`,icon:`i-tabler-settings`,label:T(`settings.runtimeTab`)},{key:`system`,icon:`i-tabler-server-2`,label:T(`settings.systemTab`)}]);return(e,t)=>{let n=oe,i=ce,a=se,d=ue,te=pe,v=he,re=me,ie=ye,ae=fe,ge=de,_e=le;return s(),p(`div`,be,[f(`div`,xe,[f(`div`,null,[f(`p`,Se,o(b(T)(`menu.system`))+` / settings `,1),f(`h1`,null,o(b(T)(`settings.title`)),1)]),f(`span`,Ce,`v`+o(b(O).version),1)]),u(_e,{bordered:!1,class:`settings-card`},{default:y(()=>[f(`div`,we,[f(`div`,Te,[(s(!0),p(m,null,l(b(On),e=>(s(),p(`button`,{key:e.key,class:c([`nav-item`,{active:b(j)===e.key}]),onClick:t=>j.value=e.key},[f(`span`,{class:c(e.icon)},null,2),f(`span`,null,o(e.label),1)],10,Ee))),128))]),f(`div`,De,[g(f(`div`,null,[f(`h3`,Oe,o(b(T)(`settings.theme`)),1),f(`p`,ke,o(b(T)(`settings.appearanceDesc`)),1),f(`div`,Ae,[f(`div`,je,[f(`div`,Me,o(b(T)(`settings.primaryColor`)),1),f(`div`,Ne,o(b(T)(`settings.accentDesc`)),1)])]),f(`div`,Pe,[(s(),p(m,null,l(xn,e=>f(`button`,{key:e.value,class:c([`swatch`,{on:b(Sn).toLowerCase()===e.value.toLowerCase()}]),style:r({"--sw":e.value}),title:e.label,onClick:t=>Cn(e.value)},[t[10]||=f(`span`,{class:`swatch-dot`},null,-1),f(`span`,Ie,o(e.label),1),b(Sn).toLowerCase()===e.value.toLowerCase()?(s(),p(`span`,Le)):h(``,!0)],14,Fe)),64))]),f(`button`,{class:`aw-pill outline reset-btn`,onClick:wn},[t[11]||=f(`span`,{class:`i-tabler-rotate`},null,-1),x(` `+o(b(T)(`settings.accentResetAction`)),1)]),f(`div`,Re,[f(`div`,ze,[f(`div`,Be,o(b(D).isDark?b(T)(`common.dark`):b(T)(`common.light`)),1),f(`div`,Ve,o(b(T)(`settings.darkDesc`)),1)]),f(`button`,{class:c([`switch`,{on:b(D).isDark}]),role:`switch`,"aria-checked":b(D).isDark,onClick:t[0]||=e=>b(D).toggleDark()},[...t[12]||=[f(`span`,{class:`knob`},null,-1)]],10,He)]),f(`div`,Ue,[f(`div`,We,[f(`div`,Ge,o(b(T)(`header.language`)),1),f(`div`,Ke,o(b(T)(`settings.languageDesc`)),1)]),u(n,{value:b(Wt),options:b(Tn),style:{width:`140px`},onChange:En},null,8,[`value`,`options`])])],512),[[w,b(j)===`appearance`]]),g(f(`div`,null,[f(`h3`,qe,o(b(T)(`settings.runtimeTab`)),1),f(`p`,Je,o(b(T)(`settings.runtime.desc`)),1),b(I)?(s(),_(i,{key:0,type:b(I).type,"show-icon":``,class:`rt-notice`,message:b(I).text},null,8,[`type`,`message`])):h(``,!0),f(`div`,Ye,[f(`button`,{class:`aw-pill outline rt-groups-toggle`,title:b(T)(`settings.groups.toggleAll`),onClick:an},[f(`span`,{class:c(b(on)?`i-tabler-chevrons-up`:`i-tabler-chevrons-down`)},null,2),x(` `+o(b(on)?b(T)(`settings.groups.collapseAll`):b(T)(`settings.groups.expandAll`)),1)],8,Xe),f(`span`,Ze,o(b(T)(`settings.groups.count`,{p0:b(M).groups.length})),1),b(H)?(s(),p(`button`,{key:0,class:`aw-pill outline rt-groups-add`,onClick:t[1]||=e=>U.value=!b(U)},[t[13]||=f(`span`,{class:`i-tabler-plus`},null,-1),x(` `+o(b(T)(`settings.groups.newGroup`)),1)])):h(``,!0)]),b(H)&&b(U)?(s(),p(`div`,Qe,[u(a,{value:b(W).label,"onUpdate:value":t[2]||=e=>b(W).label=e,placeholder:b(T)(`settings.groups.namePlaceholder`),style:{width:`220px`},onPressEnter:sn},null,8,[`value`,`placeholder`]),u(a,{value:b(W).description,"onUpdate:value":t[3]||=e=>b(W).description=e,placeholder:b(T)(`settings.groups.descPlaceholder`),style:{width:`320px`},onPressEnter:sn},null,8,[`value`,`placeholder`]),u(d,{checked:b(W).collapsed,"onUpdate:checked":t[4]||=e=>b(W).collapsed=e},{default:y(()=>[x(o(b(T)(`settings.groups.defaultCollapsed`)),1)]),_:1},8,[`checked`]),f(`button`,{class:`aw-pill primary`,disabled:!b(W).label.trim()||b(G)===`create`,onClick:sn},o(b(G)===`create`?`…`:b(T)(`settings.groups.create`)),9,$e),f(`button`,{class:`aw-pill outline`,onClick:t[5]||=e=>U.value=!1},o(b(T)(`settings.groups.cancel`)),1)])):h(``,!0),(s(!0),p(m,null,l(b(M).groups,e=>(s(),p(`section`,{key:e.id,class:c([`rt-group`,{collapsed:B(e),"grp-plugin":e.source===`plugin`}])},[f(`header`,{class:`rt-group-head`,role:e.collapsible?`button`:void 0,tabindex:e.collapsible?0:void 0,onClick:t=>V(e),onKeydown:[S(C(t=>V(e),[`prevent`]),[`enter`]),S(C(t=>V(e),[`prevent`]),[`space`])]},[e.collapsible?(s(),p(`span`,{key:0,class:c([`rt-caret`,B(e)?`i-tabler-chevron-right`:`i-tabler-chevron-down`])},null,2)):h(``,!0),e.icon?(s(),p(`span`,{key:1,class:c([`rt-group-icon`,e.icon])},null,2)):h(``,!0),b(K)===e.id?(s(),p(m,{key:2},[g(f(`input`,{"onUpdate:modelValue":t[6]||=e=>ee(q)?q.value=e:null,class:`rt-rename aw-mono`,onClick:t[7]||=C(()=>{},[`stop`]),onKeydown:[S(C(t=>ln(e.id),[`prevent`]),[`enter`]),t[8]||=S(C(e=>K.value=``,[`prevent`]),[`esc`])]},null,40,tt),[[ne,b(q)]]),f(`button`,{class:`mini-btn`,onClick:C(t=>ln(e.id),[`stop`])},o(b(T)(`settings.groups.ok`)),9,nt)],64)):(s(),p(`h4`,rt,o(Qt(e)),1)),f(`span`,it,o($t(e)),1),f(`span`,at,o(b(T)(`settings.groups.fields`,{p0:e.fieldCount??0})),1),e.description?(s(),p(`span`,ot,o(e.description),1)):h(``,!0),b(H)&&e.source!==`plugin`?(s(),p(`span`,{key:5,class:`rt-group-ops`,onClick:t[9]||=C(()=>{},[`stop`])},[f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.moveUp`),onClick:t=>un(e.id,-1)},[...t[14]||=[f(`span`,{class:`i-tabler-arrow-up`},null,-1)]],8,st),f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.moveDown`),onClick:t=>un(e.id,1)},[...t[15]||=[f(`span`,{class:`i-tabler-arrow-down`},null,-1)]],8,ct),f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.rename`),onClick:t=>cn(e)},[...t[16]||=[f(`span`,{class:`i-tabler-pencil`},null,-1)]],8,lt),f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.defaultCollapsed`),onClick:t=>dn(e)},[f(`span`,{class:c(e.collapsed?`i-tabler-chevrons-down`:`i-tabler-chevrons-up`)},null,2)],8,ut),e.source===`user`?(s(),p(`button`,{key:0,class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.delete`),onClick:t=>fn(e)},[...t[17]||=[f(`span`,{class:`i-tabler-trash`},null,-1)]],8,dt)):h(``,!0)])):h(``,!0)],40,et),g(f(`div`,ft,[e.fieldCount??0?h(``,!0):(s(),p(`p`,pt,o(b(T)(`settings.groups.emptyHint`)),1)),(s(!0),p(m,null,l(b(M).fieldsOf(e.id),e=>(s(),p(`div`,{key:e.key,class:`rt-row`},[f(`div`,mt,[f(`div`,ht,[x(o(tn(e))+` `,1),f(`span`,{class:c([`rt-tag`,en(b(M).sourceOf(e.key))])},o(b(M).sourceOf(e.key)),3),f(`span`,{class:c([`rt-tag`,e.applies])},o(e.applies===`live`?b(T)(`settings.runtime.live`):b(T)(`settings.runtime.restart`)),3)]),f(`div`,gt,o(e.description),1)]),f(`div`,_t,[e.type===`number`?(s(),_(te,{key:0,value:b(N)[e.key],"onUpdate:value":t=>b(N)[e.key]=t,min:e.min,max:e.max,onChange:t=>R(e.key)},null,8,[`value`,`onUpdate:value`,`min`,`max`,`onChange`])):e.type===`boolean`?(s(),_(v,{key:1,checked:b(N)[e.key],"onUpdate:checked":t=>b(N)[e.key]=t,onChange:t=>R(e.key)},null,8,[`checked`,`onUpdate:checked`,`onChange`])):e.type===`select`?(s(),_(n,{key:2,value:b(N)[e.key],"onUpdate:value":t=>b(N)[e.key]=t,style:{width:`160px`},options:(e.options??[]).map(e=>({label:e,value:e})),onChange:t=>R(e.key)},null,8,[`value`,`onUpdate:value`,`options`,`onChange`])):e.type===`color`?(s(),p(`span`,vt,[f(`input`,{type:`color`,value:String(b(N)[e.key]??`#35e0a0`),onInput:t=>{b(N)[e.key]=t.target.value,R(e.key)}},null,40,yt),u(a,{value:String(b(N)[e.key]??``),style:{width:`110px`},class:`aw-mono`,onChange:t=>{b(N)[e.key]=t.target.value,R(e.key)}},null,8,[`value`,`onChange`])])):(s(),_(a,{key:4,value:b(N)[e.key],"onUpdate:value":t=>b(N)[e.key]=t,style:{width:`220px`},onChange:t=>R(e.key)},null,8,[`value`,`onUpdate:value`,`onChange`])),f(`button`,{class:`aw-pill outline rt-reset`,title:b(T)(`settings.runtime.resetKey`),onClick:t=>Yt(e.key)},[...t[18]||=[f(`span`,{class:`i-tabler-rotate`},null,-1)]],8,bt)])]))),128))],512),[[w,!B(e)]])],2))),128)),f(`div`,xt,[f(`button`,{class:`aw-pill primary`,disabled:!b(P).size||b(F),onClick:Jt},[t[19]||=f(`span`,{class:`i-tabler-device-floppy`},null,-1),x(` `+o(b(F)?`…`:b(T)(`settings.runtime.save`)),1)],8,St),f(`button`,{class:`aw-pill outline`,onClick:Xt},o(b(T)(`settings.runtime.resetAll`)),1),f(`span`,Ct,o(b(M).settingsPath),1)]),f(`h4`,wt,o(b(T)(`plugins.title`)),1),f(`p`,Tt,o(b(T)(`plugins.desc`)),1),b(k).isLoggedIn?(s(),_(re,{key:3,spinning:b(Y)},{default:y(()=>[(s(!0),p(m,null,l(b(J),e=>(s(),p(`div`,{key:e.name,class:c([`plugin-row`,{off:e.enabled===!1}])},[f(`div`,Dt,[f(`div`,Ot,[f(`span`,kt,o(e.name),1),e.version?(s(),p(`span`,At,`v`+o(e.version),1)):h(``,!0),e.builtin?(s(),p(`span`,jt,o(b(T)(`plugins.builtin`)),1)):h(``,!0),e.error?(s(),p(`span`,Mt,o(e.error),1)):h(``,!0)]),f(`div`,Nt,o(e.description||`—`),1)]),f(`div`,Pt,[yn(e.name)?(s(),p(`span`,Ft,[t[20]||=f(`span`,{class:`i-tabler-loader-2 spin`},null,-1),x(` `+o(b(T)(`plugins.healthChecking`)),1)])):Q(e.name)?(s(),p(`span`,{key:1,class:c([`plugin-health`,Q(e.name).ok?`ok`:`bad`])},[f(`span`,{class:c(Q(e.name).ok?`i-tabler-circle-check`:`i-tabler-alert-circle`)},null,2),x(` `+o(Q(e.name).ok?b(T)(`plugins.healthOk`):`${b(T)(`plugins.healthBad`)}: ${Q(e.name).reason??``}`),1)],2)):h(``,!0),mn(e)?(s(),p(`button`,{key:2,class:`aw-pill outline rt-reset`,onClick:t=>_n(e)},[t[21]||=f(`span`,{class:`i-tabler-heartbeat`},null,-1),x(` `+o(b(T)(`plugins.healthCheck`)),1)],8,It)):h(``,!0),f(`button`,{class:c([`switch`,{on:e.enabled!==!1}]),role:`switch`,"aria-checked":e.enabled!==!1,disabled:bn(e.name),onClick:t=>gn(e,e.enabled===!1)},[...t[22]||=[f(`span`,{class:`knob`},null,-1)]],10,Lt)])],2))),128)),b(J).length===0&&!b(Y)?(s(),p(`div`,Rt,o(b(T)(`plugins.empty`)),1)):h(``,!0)]),_:1},8,[`spinning`])):(s(),p(`div`,Et,o(b(T)(`plugins.needLogin`)),1)),b(J).length?(s(),_(ie,{key:4,"slot-name":`settings.plugins`})):h(``,!0)],512),[[w,b(j)===`runtime`]]),g(f(`div`,null,[f(`h3`,zt,o(b(T)(`settings.systemTab`)),1),f(`p`,Bt,o(b(T)(`settings.systemDesc`)),1),u(ge,{bordered:``,column:1,size:`small`},{default:y(()=>[(s(!0),p(m,null,l(b(Dn),e=>(s(),_(ae,{key:e.label,label:e.label},{default:y(()=>[f(`span`,Vt,o(e.value),1)]),_:2},1032,[`label`]))),128))]),_:1}),f(`p`,Ht,o(b(k).isLoggedIn?`${b(T)(`settings.identity`)}: ${b(k).user?.name} (${b(k).user?.role})`:b(T)(`settings.identityGuest`)),1)],512),[[w,b(j)===`system`]])])])]),_:1})])}}}),[[`__scopeId`,`data-v-ed43cc9b`]]);export{Wt as default};
|