@nextclaw/ui 0.24.1 → 0.24.3
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/CHANGELOG.md +30 -0
- package/dist/.vite/manifest.json +2477 -0
- package/dist/assets/{abnfDiagram-VRR7QNED-BcFJp_1X.js → abnfDiagram-VRR7QNED-Kzlh3ZEC.js} +1 -1
- package/dist/assets/account-panel-BRTSwNvA.js +1 -0
- package/dist/assets/{aiden0z-pptx-renderer.es-Dp2ezlQn.js → aiden0z-pptx-renderer.es-k1xZLzeo.js} +1 -1
- package/dist/assets/api-BnUzdltV.js +13 -0
- package/dist/assets/app-data-Bjh_zM45.js +1 -0
- package/dist/assets/app-presenter-provider-CBt-lyr_.js +109 -0
- package/dist/assets/app-presenter-provider-D3BuuOyZ.css +1 -0
- package/dist/assets/appearance-settings-page-BrOYSgG0.js +1 -0
- package/dist/assets/{arc-CkgyPMyW.js → arc-CpivM836.js} +1 -1
- package/dist/assets/architecture-TIHT7OUA-CVRF_cYQ.js +1 -0
- package/dist/assets/{architectureDiagram-ZJ3FMSHR-CMd4cIjI.js → architectureDiagram-ZJ3FMSHR-ifjW1qjI.js} +1 -1
- package/dist/assets/{blockDiagram-677ZJIJ3-Bz3tbhet.js → blockDiagram-677ZJIJ3-C_zeJrKF.js} +1 -1
- package/dist/assets/{book-open-o2x7OLiO.js → book-open-xqEj1OLE.js} +1 -1
- package/dist/assets/boxes-D6uPnkGo.js +1 -0
- package/dist/assets/{c4Diagram-LMCZKHZV-D9hFNAGv.js → c4Diagram-LMCZKHZV-CpapRftp.js} +1 -1
- package/dist/assets/card-CS8su2Zh.js +1 -0
- package/dist/assets/channel-CBrWRr4N.js +1 -0
- package/dist/assets/channels-list-page-BE0TxB3B.js +8 -0
- package/dist/assets/chevron-down-BL-yMYcX.js +1 -0
- package/dist/assets/chunk-2Q5K7J3B-B8mmRk7d.js +1 -0
- package/dist/assets/{chunk-32BRIVSS-7NrjEITq.js → chunk-32BRIVSS-BKBwdmKR.js} +1 -1
- package/dist/assets/{chunk-52WLFC77-viIcqj9q.js → chunk-52WLFC77-BgZRCpDx.js} +1 -1
- package/dist/assets/{chunk-5FCAYU7R-Vsu4J-VM.js → chunk-5FCAYU7R-YWfOINJi.js} +1 -1
- package/dist/assets/{chunk-5HE753X5-C-w6CQZK.js → chunk-5HE753X5-BZ6I07d2.js} +1 -1
- package/dist/assets/{chunk-5JV3BV7I-CuKgJQ4W.js → chunk-5JV3BV7I-B7QYgZU5.js} +1 -1
- package/dist/assets/{chunk-5TONJI2A-CYeiWZKb.js → chunk-5TONJI2A-DjyQwgL2.js} +1 -1
- package/dist/assets/{chunk-5VM5RSS4-DRCbfwIn.js → chunk-5VM5RSS4-DheHV7X2.js} +1 -1
- package/dist/assets/{chunk-7BUUIJ7U-BvydOcm3.js → chunk-7BUUIJ7U-D6bq2PKF.js} +1 -1
- package/dist/assets/{chunk-BIQX33UG-RlppOXKo.js → chunk-BIQX33UG-CL9x0ibm.js} +1 -1
- package/dist/assets/{chunk-C7G6YPKG-DAizzYwr.js → chunk-C7G6YPKG-8z3B6RUH.js} +1 -1
- package/dist/assets/{chunk-CQNSW5MT-5eChJHca.js → chunk-CQNSW5MT-DpHkxY3n.js} +1 -1
- package/dist/assets/{chunk-CYSBUYHQ-YHPr53fv.js → chunk-CYSBUYHQ-DIJDLsdJ.js} +1 -1
- package/dist/assets/{chunk-EMLP6XTP-CK4D7Hz5.js → chunk-EMLP6XTP-B-LjAyVd.js} +1 -1
- package/dist/assets/{chunk-EX3LRPZG-BmlDFIRW.js → chunk-EX3LRPZG-BChuEPvO.js} +1 -1
- package/dist/assets/{chunk-FWX5IMBZ-D0ksHZZ9.js → chunk-FWX5IMBZ-fBFt0u3f.js} +2 -2
- package/dist/assets/{chunk-HOUHSVGY-DPkq8FCm.js → chunk-HOUHSVGY-MD0SpW5A.js} +1 -1
- package/dist/assets/{chunk-ICXQ74PX-FAatv5fC.js → chunk-ICXQ74PX-DvCcw_hz.js} +1 -1
- package/dist/assets/{chunk-JG7HCLWE-DLkIi4F7.js → chunk-JG7HCLWE-B8zqBnU9.js} +1 -1
- package/dist/assets/{chunk-JWPE2WC7-DawOjNE3.js → chunk-JWPE2WC7-C9efnkGb.js} +1 -1
- package/dist/assets/{chunk-MOJQB5TN-Di52TorW.js → chunk-MOJQB5TN-gXbfqoqq.js} +1 -1
- package/dist/assets/{chunk-MOZMSUNE-PfyK9w1-.js → chunk-MOZMSUNE-twIwdkqC.js} +1 -1
- package/dist/assets/{chunk-OGEWGWER-C3jdH3Ty.js → chunk-OGEWGWER-DdR0_cWK.js} +1 -1
- package/dist/assets/{chunk-OSBZ3O6U-CecHo-f0.js → chunk-OSBZ3O6U-D7D58Foa.js} +1 -1
- package/dist/assets/{chunk-PUDLZKDR-f3IJh3sN.js → chunk-PUDLZKDR-DPILgOVY.js} +1 -1
- package/dist/assets/{chunk-Q4XR5HBZ-DQFeUPxZ.js → chunk-Q4XR5HBZ-C0JJx7lW.js} +1 -1
- package/dist/assets/{chunk-QBLGF6JB-BhUeG0y2.js → chunk-QBLGF6JB-Dbsf69ng.js} +1 -1
- package/dist/assets/{chunk-R7FJI6CG-C3XpZ-2u.js → chunk-R7FJI6CG-Bb8n616-.js} +1 -1
- package/dist/assets/{chunk-RYQCIY6F-CAqa5klQ.js → chunk-RYQCIY6F-1HOsOrSl.js} +1 -1
- package/dist/assets/{chunk-U6XO7XAA-D_WXezeD.js → chunk-U6XO7XAA-BAFDVb1v.js} +1 -1
- package/dist/assets/{chunk-V7JOEXUC-CZ70oOtp.js → chunk-V7JOEXUC-8-g68lu5.js} +1 -1
- package/dist/assets/chunk-VAUOI2AC-Cpml0inz.js +1 -0
- package/dist/assets/{chunk-VR4S4FIN-B7AHEYYk.js → chunk-VR4S4FIN-P6UGmaYd.js} +1 -1
- package/dist/assets/{chunk-WYO6CB5R-Dn9To_OI.js → chunk-WYO6CB5R-6wjFTXNP.js} +2 -2
- package/dist/assets/chunk-XXDRQBXY-nCiqnCpF.js +1 -0
- package/dist/assets/{chunk-YOTPTUD7-BYEgRBk3.js → chunk-YOTPTUD7-CLYXVZAi.js} +1 -1
- package/dist/assets/{chunk-ZGVPDNZ5-C6YtZDU0.js → chunk-ZGVPDNZ5-BRTmSAhp.js} +1 -1
- package/dist/assets/{chunk-ZIRB5QZD-DMuYtnHF.js → chunk-ZIRB5QZD-CH_1eoSV.js} +1 -1
- package/dist/assets/circle-alert-lSa3LRvS.js +1 -0
- package/dist/assets/circle-dashed-CU3yApvP.js +1 -0
- package/dist/assets/classDiagram-OUVF2IWQ-C-DRqAaW.js +1 -0
- package/dist/assets/classDiagram-v2-EOCWNBFH-DXCcZ42U.js +1 -0
- package/dist/assets/client-BtGBwLTs.js +1 -0
- package/dist/assets/config-split-page-BxDwwAGa.js +1 -0
- package/dist/assets/confirm-dialog-S5JxZcS1.js +1 -0
- package/dist/assets/{cose-bilkent-JH36ORCC-Bc2Ex5Y3.js → cose-bilkent-JH36ORCC-L7w_qScX.js} +1 -1
- package/dist/assets/{createLucideIcon-rwwpqyks.js → createLucideIcon-BNKf0_kc.js} +1 -1
- package/dist/assets/cynefin-VYW2F7L2-2SOTgxxC.js +1 -0
- package/dist/assets/{cynefinDiagram-TSTJHNR4-DVysQoGz.js → cynefinDiagram-TSTJHNR4-Bay7uDSR.js} +1 -1
- package/dist/assets/{dagre-CMhQ1cAG.js → dagre-CJ_hX8xv.js} +1 -1
- package/dist/assets/{dagre-VKFMJZFB-RYyWpPJZ.js → dagre-VKFMJZFB-DDhk-2B3.js} +1 -1
- package/dist/assets/desktop-capabilities-page-BwHxJpbl.js +1 -0
- package/dist/assets/desktop-update-config-Bfg7OdJ2.js +1 -0
- package/dist/assets/{diagram-FQU43EPY-BD6KONdF.js → diagram-FQU43EPY-somFq5y8.js} +1 -1
- package/dist/assets/{diagram-G47NLZAW-CGB2ptRR.js → diagram-G47NLZAW-hzgyQsPd.js} +1 -1
- package/dist/assets/{diagram-NH7WQ7WH-DnkOI6cU.js → diagram-NH7WQ7WH-BkJ4gEQJ.js} +1 -1
- package/dist/assets/{diagram-OA4YK3LP-DF82RZ7P.js → diagram-OA4YK3LP-CS3ZkK4w.js} +1 -1
- package/dist/assets/{diagram-WEI45ONY-Be2v7Ck9.js → diagram-WEI45ONY-BApo-JHS.js} +1 -1
- package/dist/assets/dialog-Xe73hpQz.js +5 -0
- package/dist/assets/dist-BiIcnf9j.js +1 -0
- package/dist/assets/dist-C5I0v8Qn.js +1 -0
- package/dist/assets/{dist--ta5rX12.js → dist-Cnhwure9.js} +1 -1
- package/dist/assets/{dist-aNN3iQxV.js → dist-czPa8xFO.js} +1 -1
- package/dist/assets/doc-browser-BgRP0Wni.js +1 -0
- package/dist/assets/doc-browser-C8eqJLi_.js +1 -0
- package/dist/assets/doc-browser-context-BPCDFcC-.js +1 -0
- package/dist/assets/{docx-preview-BqwAjrj3.js → docx-preview-ByCKKIVT.js} +1 -1
- package/dist/assets/{ebnfDiagram-CCIWWBDH-CP98OYk8.js → ebnfDiagram-CCIWWBDH-DWjfeEie.js} +1 -1
- package/dist/assets/ellipsis-C5YXdOUx.js +1 -0
- package/dist/assets/{erDiagram-Q63AITRT-ZLlx8xfs.js → erDiagram-Q63AITRT-DR7vWYHM.js} +1 -1
- package/dist/assets/es2015-cuwbYI-l.js +41 -0
- package/dist/assets/eventmodeling-45OFAUF4-CXZNG56U.js +1 -0
- package/dist/assets/extensions-DgKQRebe.js +1 -0
- package/dist/assets/eye-C84inPcV.js +1 -0
- package/dist/assets/flowDiagram-23GEKE2U-2065oyKr.js +1 -0
- package/dist/assets/form-actions-AIdXOoCL.js +1 -0
- package/dist/assets/{ganttDiagram-NO4QXBWP-DXCDjHR2.js → ganttDiagram-NO4QXBWP-E3l9tuaL.js} +1 -1
- package/dist/assets/gitGraph-TEB2WS4Q-B0Ln3ZuK.js +1 -0
- package/dist/assets/{gitGraphDiagram-IHSO6WYX-l2HWrTJp.js → gitGraphDiagram-IHSO6WYX-DiMvbHKf.js} +1 -1
- package/dist/assets/i18n-CKvm9zyk.js +2 -0
- package/dist/assets/i18n-provider-CPV43pMX.js +1 -0
- package/dist/assets/info-DKCQHKI2-B06uqGM4.js +1 -0
- package/dist/assets/{infoDiagram-FWYZ7A6U-D-DjX-bn.js → infoDiagram-FWYZ7A6U-BZDL0NDJ.js} +1 -1
- package/dist/assets/{ishikawaDiagram-FXEZZL3T-y_Xy128F.js → ishikawaDiagram-FXEZZL3T-BZ9WvJb2.js} +1 -1
- package/dist/assets/{journeyDiagram-5HDEW3XC-DJn5xYcQ.js → journeyDiagram-5HDEW3XC-C3TZvKM8.js} +1 -1
- package/dist/assets/{jszip.min-8hyJpgpx.js → jszip.min-D_AtKL_8.js} +1 -1
- package/dist/assets/{kanban-definition-HUTT4EX6-DJVIOR21.js → kanban-definition-HUTT4EX6-9FqauDEi.js} +1 -1
- package/dist/assets/{line-Cos7PIOj.js → line-Ca49mj80.js} +1 -1
- package/dist/assets/{linear-BtDLqtzF.js → linear-DlCeG66S.js} +1 -1
- package/dist/assets/loader-circle-K1BDdHR5.js +1 -0
- package/dist/assets/login-page-ClcrvN04.js +1 -0
- package/dist/assets/login-page-DeDQjVxv.js +1 -0
- package/dist/assets/logo-badge-C-5-zim6.js +1 -0
- package/dist/assets/main-DGqlaAaI.css +1 -0
- package/dist/assets/main-i18n-catalog.config-CpNF5aVc.js +1 -0
- package/dist/assets/main-nMVfHb5K.js +2 -0
- package/dist/assets/{map-BKnQyvd0.js → map-WMnNq9UV.js} +1 -1
- package/dist/assets/mcp-marketplace-page-CWjJGp_D.js +10 -0
- package/dist/assets/mcp-marketplace-page-fvu2NcXT.js +1 -0
- package/dist/assets/{mermaid-parser.core-XUNZhr2W.js → mermaid-parser.core-B8xk4hpS.js} +2 -2
- package/dist/assets/{mermaid.core-ySrvolIe.js → mermaid.core-CFPiczKH.js} +3 -3
- package/dist/assets/{mindmap-definition-LN4V7U3C-BypL9tei.js → mindmap-definition-LN4V7U3C-CnxA52L6.js} +1 -1
- package/dist/assets/model-config-page-Dv_zE7HN.js +1 -0
- package/dist/assets/{navigation-link-C_6oj3zz.js → navigation-link-BAQjgx2F.js} +1 -1
- package/dist/assets/{ordinal-CxxVWxYU.js → ordinal-PgiFlfBJ.js} +1 -1
- package/dist/assets/packet-7NZHBO7P-CHx-igbz.js +1 -0
- package/dist/assets/panel-app-BUUle0gP.js +1 -0
- package/dist/assets/panel-app-i18n-catalog.config-BzxE3tZb.js +1 -0
- package/dist/assets/panelStandalone-CFRBHV94.js +2 -0
- package/dist/assets/panelStandalone-Y91OJkgV.css +1 -0
- package/dist/assets/{pegDiagram-2B236MQR-D-U2KBGv.js → pegDiagram-2B236MQR-A8oz7dTH.js} +1 -1
- package/dist/assets/pie-RZYD4A2V-DOaMc-x9.js +1 -0
- package/dist/assets/{pieDiagram-ENE6RG2P-CBi3GusJ.js → pieDiagram-ENE6RG2P-mtBnkYY0.js} +1 -1
- package/dist/assets/plus-LA8-jpxP.js +1 -0
- package/dist/assets/popover-NkrFlWHp.js +1 -0
- package/dist/assets/privacy-settings-page-D6uc9f-A.js +1 -0
- package/dist/assets/projects-BD1rG75R.js +1 -0
- package/dist/assets/provider-models-5PGHb6mP.js +1 -0
- package/dist/assets/provider-scoped-model-input-DUa_9uwg.js +1 -0
- package/dist/assets/providers-config-page-DAiqxlF_.js +1 -0
- package/dist/assets/puzzle-D6gulz7u.js +1 -0
- package/dist/assets/pwa-C_Zte1xe.js +1 -0
- package/dist/assets/{quadrantDiagram-ABIIQ3AL-H0ZuvnZL.js → quadrantDiagram-ABIIQ3AL-DE1VybGO.js} +1 -1
- package/dist/assets/radar-I7S5WNFK-CXsdndDk.js +1 -0
- package/dist/assets/railroad-3IZDKUUU-DxgXdrYP.js +1 -0
- package/dist/assets/railroad-abnf-AHOZXSZD-CR1tnyjz.js +1 -0
- package/dist/assets/railroad-ebnf-EBAXGLYW-CjjxZR2U.js +1 -0
- package/dist/assets/railroad-peg-LSFZ7HO6-DgVGJCHN.js +1 -0
- package/dist/assets/{railroadDiagram-RFXS5EU6-D7Y2EqSd.js → railroadDiagram-RFXS5EU6-u9EMg14B.js} +1 -1
- package/dist/assets/{refresh-cw-DsT2kvXi.js → refresh-cw-h9Xq3LY3.js} +1 -1
- package/dist/assets/remote-BO0QP7ua.js +1 -0
- package/dist/assets/{requirementDiagram-TGXJPOKE-BiXNX1NN.js → requirementDiagram-TGXJPOKE-BAWHAqEi.js} +1 -1
- package/dist/assets/{rotate-cw-BCAs6c3R.js → rotate-cw-B6xm41Wn.js} +1 -1
- package/dist/assets/runtime-config-page-w1UAkGF_.js +1 -0
- package/dist/assets/{sankeyDiagram-HTMAVEWB-qzDeLztW.js → sankeyDiagram-HTMAVEWB-aDy-jdwF.js} +1 -1
- package/dist/assets/{save-CadRMTMQ.js → save-fff_WpY2.js} +1 -1
- package/dist/assets/{search-B6tB4fzB.js → search-CUe41wjm.js} +1 -1
- package/dist/assets/search-config-page-3xbhRlW2.js +1 -0
- package/dist/assets/secrets-config-page-Dn8_rdOj.js +3 -0
- package/dist/assets/security-config-Y1nEGM3A.js +1 -0
- package/dist/assets/select-CG5YWnwe.js +1 -0
- package/dist/assets/{sequenceDiagram-DBY2YBRQ-BtRbPQtL.js → sequenceDiagram-DBY2YBRQ-DwHC4mbX.js} +1 -1
- package/dist/assets/service-apps-panel-CGc04aMn.js +1 -0
- package/dist/assets/settings-2-CE3ELQyk.js +1 -0
- package/dist/assets/{sizeCapture-X5ZJPWSS-CMYvM3SL.js → sizeCapture-X5ZJPWSS-oOMY0Fag.js} +1 -1
- package/dist/assets/skeleton-BL9h32W7.js +1 -0
- package/dist/assets/{src-Bw-mzbQb.js → src-CLPoo5iL.js} +1 -1
- package/dist/assets/{stateDiagram-2N3HPSRC-BJ-mFeOz.js → stateDiagram-2N3HPSRC-B0Epk-VR.js} +1 -1
- package/dist/assets/stateDiagram-v2-6OUMAXLB-Ct4zTw8P.js +1 -0
- package/dist/assets/{swimlanes-5IMT3BWC-BsucVOO2.js → swimlanes-5IMT3BWC-T0w-Iuzf.js} +2 -2
- package/dist/assets/swimlanesDiagram-G3AALYLV-CdmN0PBd.js +8 -0
- package/dist/assets/tabs-BuE0qKMh.js +1 -0
- package/dist/assets/{tag-chip-BZKk0UkK.js → tag-chip-BDzpHEli.js} +1 -1
- package/dist/assets/theme-provider-B6FinATQ.js +1 -0
- package/dist/assets/{timeline-definition-FHXFAJF6-Bicewlzo.js → timeline-definition-FHXFAJF6-BEonB5Np.js} +1 -1
- package/dist/assets/tooltip-DYcuWhuP.js +1 -0
- package/dist/assets/trash-2-BPPYt2NV.js +1 -0
- package/dist/assets/treeView-QDETBFTQ-Dad4_Wc7.js +1 -0
- package/dist/assets/treemap-6X3UGDF4-9_GWWZsY.js +1 -0
- package/dist/assets/use-config-BPUM2lbo.js +1 -0
- package/dist/assets/use-desktop-capabilities-BDjArQP3.js +1 -0
- package/dist/assets/use-panel-app-scroll-restoration-DsV1IJx-.js +1 -0
- package/dist/assets/use-viewport-layout-BS18drMT.js +1 -0
- package/dist/assets/utils-CBZPzC_b.js +8 -0
- package/dist/assets/{vennDiagram-L72KCM5P-BxOOnO9x.js → vennDiagram-L72KCM5P-BDvcOCo2.js} +1 -1
- package/dist/assets/wardley-OPB4EBWU-BXpvyee9.js +1 -0
- package/dist/assets/{wardleyDiagram-EHGQE667-Cl7NltMv.js → wardleyDiagram-EHGQE667-jMLMgjzE.js} +1 -1
- package/dist/assets/x-DdXOqLnX.js +1 -0
- package/dist/assets/{xychartDiagram-FW5EYKEG-DiMIxQ7N.js → xychartDiagram-FW5EYKEG-pzrpclEv.js} +1 -1
- package/dist/index.html +56 -25
- package/dist/panel-standalone.html +30 -0
- package/package.json +4 -4
- package/panel-standalone.html +13 -0
- package/panel-standalone.tailwind.config.js +16 -0
- package/src/app/components/app-presenter-provider.tsx +8 -1
- package/src/app/components/theme-provider.tsx +0 -5
- package/src/app/index.tsx +18 -4
- package/src/app/presenters/app.presenter.ts +4 -4
- package/src/app/styles/panel-app-standalone.css +31 -0
- package/src/app/test/vitest-setup.ts +3 -0
- package/src/features/account/hooks/use-auth.ts +7 -57
- package/src/features/account/index.ts +3 -2
- package/src/features/apps/components/__tests__/apps-panel.test.tsx +7 -5
- package/src/features/apps/components/apps-panel.tsx +9 -3
- package/src/features/chat/features/message/utils/__tests__/chat-message-timeline.utils.test.ts +10 -0
- package/src/features/chat/features/session/components/__tests__/chat-sidebar-project-groups.test.tsx +90 -6
- package/src/features/chat/features/session/components/chat-sidebar-project-groups.tsx +64 -2
- package/src/features/chat/features/session/utils/__tests__/chat-sidebar-session-groups.utils.test.ts +27 -2
- package/src/features/chat/features/session/utils/chat-sidebar-session-groups.utils.ts +0 -11
- package/src/features/panel-apps/components/__tests__/panel-app-list-item.test.tsx +18 -0
- package/src/features/panel-apps/components/__tests__/panel-app-open-standalone-menu-item.test.tsx +57 -0
- package/src/features/panel-apps/components/__tests__/panel-app-toolbar.test.tsx +15 -0
- package/src/features/panel-apps/components/panel-app-list-item.tsx +5 -0
- package/src/features/panel-apps/components/panel-app-open-standalone-menu-item.tsx +32 -0
- package/src/features/panel-apps/components/panel-app-runtime-surface.tsx +141 -0
- package/src/features/{service-apps/components/service-action-authorization-dialog.tsx → panel-apps/components/panel-app-service-action-authorization-dialog.tsx} +4 -4
- package/src/features/panel-apps/components/panel-app-toolbar.tsx +5 -0
- package/src/features/panel-apps/hooks/use-panel-app-client-grant.ts +2 -2
- package/src/features/panel-apps/hooks/{use-panel-app-main-runtime.ts → use-panel-app-runtime.ts} +7 -5
- package/src/features/panel-apps/hooks/use-panel-apps.ts +14 -0
- package/src/features/panel-apps/index.ts +5 -0
- package/src/features/panel-apps/managers/__tests__/panel-app-bridge.manager.test.ts +2 -2
- package/src/features/panel-apps/managers/panel-app-bridge.manager.ts +2 -2
- package/src/features/panel-apps/managers/panel-app-service-action-authorization.manager.ts +10 -0
- package/src/features/panel-apps/pages/__tests__/panel-app-main-page.test.tsx +12 -3
- package/src/features/panel-apps/pages/__tests__/panel-app-standalone-page.test.tsx +63 -0
- package/src/features/panel-apps/pages/panel-app-main-page.tsx +9 -121
- package/src/features/panel-apps/pages/panel-app-standalone-page.tsx +29 -0
- package/src/features/panel-apps/presenters/panel-app-host.presenter.ts +9 -0
- package/src/features/panel-apps/providers/panel-app-host.provider.tsx +45 -0
- package/src/features/panel-apps/routes/__tests__/panel-app-standalone.route.test.tsx +50 -0
- package/src/features/panel-apps/routes/panel-app-standalone.route.tsx +94 -0
- package/src/features/{service-apps/stores/service-action-authorization.store.ts → panel-apps/stores/panel-app-service-action-authorization.store.ts} +6 -6
- package/src/features/projects/AGENTS.md +1 -2
- package/src/features/projects/components/project-agreement.tsx +36 -77
- package/src/features/projects/components/project-artifacts.test.tsx +90 -62
- package/src/features/projects/components/project-artifacts.tsx +81 -160
- package/src/features/projects/components/project-materials.test.tsx +80 -0
- package/src/features/projects/components/project-overview.test.tsx +80 -0
- package/src/features/projects/components/project-overview.tsx +115 -56
- package/src/features/projects/components/project-skills.tsx +24 -14
- package/src/features/projects/components/work/project-work-item-drawer.test.tsx +3 -2
- package/src/features/projects/components/work/project-work-item-drawer.tsx +8 -10
- package/src/features/projects/components/work/project-work-items.test.tsx +180 -4
- package/src/features/projects/components/work/project-work-items.tsx +278 -50
- package/src/features/projects/components/work/project-work-state-settings.tsx +7 -3
- package/src/features/projects/hooks/use-project-materials.test.tsx +65 -0
- package/src/features/projects/hooks/use-project-materials.ts +24 -0
- package/src/features/projects/hooks/use-project-work.test.tsx +165 -7
- package/src/features/projects/hooks/use-project-work.ts +88 -9
- package/src/features/projects/pages/project-home-page.tsx +52 -89
- package/src/features/projects/pages/projects-page.test.tsx +81 -32
- package/src/features/projects/presenters/project-home.presenter.test.ts +1 -64
- package/src/features/projects/presenters/project-home.presenter.ts +17 -54
- package/src/features/projects/utils/project-artifact-view.utils.test.ts +19 -53
- package/src/features/projects/utils/project-artifact-view.utils.ts +17 -47
- package/src/features/projects/utils/project-work-state-label.utils.test.ts +28 -0
- package/src/features/projects/utils/project-work-state-label.utils.ts +20 -0
- package/src/features/service-apps/index.ts +3 -3
- package/src/main.tsx +3 -0
- package/src/shared/hooks/use-auth-status.ts +49 -0
- package/src/shared/hooks/use-projects.ts +15 -1
- package/src/shared/lib/api/projects/project.utils.ts +4 -0
- package/src/shared/lib/i18n/configs/main-i18n-catalog.config.ts +78 -0
- package/src/shared/lib/i18n/configs/panel-app-i18n-catalog.config.ts +12 -0
- package/src/shared/lib/i18n/index.ts +30 -82
- package/src/shared/lib/i18n/locales/en-US/doc-browser.json +0 -55
- package/src/shared/lib/i18n/locales/en-US/panel-app.json +59 -0
- package/src/shared/lib/i18n/locales/en-US/projects.json +24 -59
- package/src/shared/lib/i18n/locales/zh-CN/doc-browser.json +0 -55
- package/src/shared/lib/i18n/locales/zh-CN/panel-app.json +59 -0
- package/src/shared/lib/i18n/locales/zh-CN/projects.json +24 -59
- package/vite.config.ts +36 -1
- package/dist/assets/api-BqVIq0lF.js +0 -13
- package/dist/assets/appearance-settings-page-CTWn1eAT.js +0 -1
- package/dist/assets/architecture-TIHT7OUA-DO2x53FK.js +0 -1
- package/dist/assets/channel-nBvMaVyP.js +0 -1
- package/dist/assets/channels-list-page-Bzn-pzyJ.js +0 -8
- package/dist/assets/chunk-2Q5K7J3B-CJgqFDS4.js +0 -1
- package/dist/assets/chunk-VAUOI2AC-BGvh3yIx.js +0 -1
- package/dist/assets/chunk-XXDRQBXY-DaBxG5gs.js +0 -1
- package/dist/assets/classDiagram-OUVF2IWQ-P6N03G2R.js +0 -1
- package/dist/assets/classDiagram-v2-EOCWNBFH-B1_uLvMv.js +0 -1
- package/dist/assets/config-split-page-CnRbXXlh.js +0 -1
- package/dist/assets/confirm-dialog-B_Hbcra2.js +0 -5
- package/dist/assets/cynefin-VYW2F7L2-B-H8Qp-n.js +0 -1
- package/dist/assets/desktop-capabilities-page-C2ayYQTr.js +0 -1
- package/dist/assets/desktop-update-config-C13czpyL.js +0 -1
- package/dist/assets/dist-BsF3hfOi.js +0 -1
- package/dist/assets/doc-browser-D8dIOo9E.js +0 -1
- package/dist/assets/doc-browser-DcuOOtpP.js +0 -1
- package/dist/assets/doc-browser-context-Dhsit2Ma.js +0 -1
- package/dist/assets/eventmodeling-45OFAUF4-YVtShyFA.js +0 -1
- package/dist/assets/extensions-CD6xvKF_.js +0 -1
- package/dist/assets/flowDiagram-23GEKE2U-BeKXabVO.js +0 -1
- package/dist/assets/form-actions-CC4Wz_lL.js +0 -1
- package/dist/assets/gitGraph-TEB2WS4Q-jTSiBj-p.js +0 -1
- package/dist/assets/index-BTsbdtv6.js +0 -109
- package/dist/assets/index-Bcfy2kTh.css +0 -1
- package/dist/assets/info-DKCQHKI2-BIporNWb.js +0 -1
- package/dist/assets/loader-circle-B6aFbB-8.js +0 -1
- package/dist/assets/mcp-marketplace-page-BtUAypA7.js +0 -1
- package/dist/assets/mcp-marketplace-page-r2MmD9xO.js +0 -10
- package/dist/assets/model-config-page-DboxoT-I.js +0 -1
- package/dist/assets/packet-7NZHBO7P-CuFMADV0.js +0 -1
- package/dist/assets/pie-RZYD4A2V-XUeIXhM9.js +0 -1
- package/dist/assets/plus-DRsq9Kvs.js +0 -1
- package/dist/assets/privacy-settings-page-C2sDBqhb.js +0 -1
- package/dist/assets/projects-BcPcx-uD.js +0 -1
- package/dist/assets/providers-config-page-CmUFl9RF.js +0 -1
- package/dist/assets/radar-I7S5WNFK-D-NNGh1k.js +0 -1
- package/dist/assets/railroad-3IZDKUUU-C67_uDaM.js +0 -1
- package/dist/assets/railroad-abnf-AHOZXSZD-BZ8Yflnd.js +0 -1
- package/dist/assets/railroad-ebnf-EBAXGLYW-B7zO7RoK.js +0 -1
- package/dist/assets/railroad-peg-LSFZ7HO6-R63PTgLz.js +0 -1
- package/dist/assets/react-BjO9I4WZ.js +0 -8
- package/dist/assets/remote-Ci6x91ES.js +0 -1
- package/dist/assets/runtime-config-page-cQKNeAjL.js +0 -1
- package/dist/assets/search-config-page-C8lOIkxn.js +0 -1
- package/dist/assets/secrets-config-page-8clzAag2.js +0 -3
- package/dist/assets/security-config-DPbM6IVT.js +0 -1
- package/dist/assets/select-CO9S_C2C.js +0 -41
- package/dist/assets/skeleton-IHILNhIW.js +0 -1
- package/dist/assets/stateDiagram-v2-6OUMAXLB-BE-HqxOK.js +0 -1
- package/dist/assets/swimlanesDiagram-G3AALYLV-Dr1H9LJH.js +0 -8
- package/dist/assets/treeView-QDETBFTQ-npJ5dbqS.js +0 -1
- package/dist/assets/treemap-6X3UGDF4-pYrBx6oa.js +0 -1
- package/dist/assets/wardley-OPB4EBWU-CmSRKLR8.js +0 -1
- package/dist/assets/x-BuvHIb1d.js +0 -1
- package/src/features/projects/components/project-requests.tsx +0 -57
- package/src/features/projects/components/project-runs.tsx +0 -60
- package/src/features/projects/hooks/use-project-observation.test.tsx +0 -93
- package/src/features/projects/hooks/use-project-observation.ts +0 -115
- package/src/features/projects/utils/project-request-response.utils.test.ts +0 -44
- package/src/features/projects/utils/project-request-response.utils.ts +0 -39
- package/src/features/service-apps/managers/service-action-authorization.manager.ts +0 -10
- /package/dist/assets/{array-BQVzeGRt.js → array-BHDgItFN.js} +0 -0
- /package/dist/assets/{chunk-DseTPa7n.js → chunk-DF37yw5_.js} +0 -0
- /package/dist/assets/{chunk-KEIR6QF5-f9psyCXK.js → chunk-KEIR6QF5-DstBw0Hk.js} +0 -0
- /package/dist/assets/{chunk-Y2CYZVJY-D1mAU_Po.js → chunk-Y2CYZVJY-CA3ymQuH.js} +0 -0
- /package/dist/assets/{config-hints-nV5HPOvq.js → config-hints-CBPHrfYk.js} +0 -0
- /package/dist/assets/{cytoscape.esm-0uDtdD0l.js → cytoscape.esm-C7xr90o_.js} +0 -0
- /package/dist/assets/{defaultLocale-DSWXGgt0.js → defaultLocale-BG1oDVag.js} +0 -0
- /package/dist/assets/{graphlib-CQ6QV4yP.js → graphlib-CNMGfuTb.js} +0 -0
- /package/dist/assets/{host-capabilities-Tk038i04.js → host-capabilities-B107nwS3.js} +0 -0
- /package/dist/assets/{init-Y6h9jGtZ.js → init-wQIZuRSH.js} +0 -0
- /package/dist/assets/{katex-ARhY9PS1.js → katex-J8JuvgNl.js} +0 -0
- /package/dist/assets/{middleware-DXsbf9xI.js → middleware-0o3JF3tS.js} +0 -0
- /package/dist/assets/{path-10BjdyLh.js → path-N-C4MRP0.js} +0 -0
- /package/dist/assets/{preload-helper-D4M6sveU.js → preload-helper-ca-nBW7U.js} +0 -0
- /package/dist/assets/{rough.esm-DxgC_14r.js → rough.esm-BeWA068d.js} +0 -0
- /package/dist/assets/{xlsx-DrDuDNAa.js → xlsx-CwUXNtD3.js} +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import zhAgents from '@/shared/lib/i18n/locales/zh-CN/agents.json';
|
|
2
|
+
import zhChannelAuth from '@/shared/lib/i18n/locales/zh-CN/channel-auth.json';
|
|
3
|
+
import zhChannels from '@/shared/lib/i18n/locales/zh-CN/channels.json';
|
|
4
|
+
import zhChat from '@/shared/lib/i18n/locales/zh-CN/chat.json';
|
|
5
|
+
import zhCore from '@/shared/lib/i18n/locales/zh-CN/core.json';
|
|
6
|
+
import zhCron from '@/shared/lib/i18n/locales/zh-CN/cron.json';
|
|
7
|
+
import zhDesktopUpdate from '@/shared/lib/i18n/locales/zh-CN/desktop-update.json';
|
|
8
|
+
import zhDocBrowser from '@/shared/lib/i18n/locales/zh-CN/doc-browser.json';
|
|
9
|
+
import zhPanelApp from '@/shared/lib/i18n/locales/zh-CN/panel-app.json';
|
|
10
|
+
import zhInbox from '@/shared/lib/i18n/locales/zh-CN/inbox.json';
|
|
11
|
+
import zhMarketplace from '@/shared/lib/i18n/locales/zh-CN/marketplace.json';
|
|
12
|
+
import zhPathPicker from '@/shared/lib/i18n/locales/zh-CN/path-picker.json';
|
|
13
|
+
import zhProjects from '@/shared/lib/i18n/locales/zh-CN/projects.json';
|
|
14
|
+
import zhPwa from '@/shared/lib/i18n/locales/zh-CN/pwa.json';
|
|
15
|
+
import zhRemote from '@/shared/lib/i18n/locales/zh-CN/remote.json';
|
|
16
|
+
import zhRuntimeControl from '@/shared/lib/i18n/locales/zh-CN/runtime-control.json';
|
|
17
|
+
import zhSearch from '@/shared/lib/i18n/locales/zh-CN/search.json';
|
|
18
|
+
import enAgents from '@/shared/lib/i18n/locales/en-US/agents.json';
|
|
19
|
+
import enChannelAuth from '@/shared/lib/i18n/locales/en-US/channel-auth.json';
|
|
20
|
+
import enChannels from '@/shared/lib/i18n/locales/en-US/channels.json';
|
|
21
|
+
import enChat from '@/shared/lib/i18n/locales/en-US/chat.json';
|
|
22
|
+
import enCore from '@/shared/lib/i18n/locales/en-US/core.json';
|
|
23
|
+
import enCron from '@/shared/lib/i18n/locales/en-US/cron.json';
|
|
24
|
+
import enDesktopUpdate from '@/shared/lib/i18n/locales/en-US/desktop-update.json';
|
|
25
|
+
import enDocBrowser from '@/shared/lib/i18n/locales/en-US/doc-browser.json';
|
|
26
|
+
import enPanelApp from '@/shared/lib/i18n/locales/en-US/panel-app.json';
|
|
27
|
+
import enInbox from '@/shared/lib/i18n/locales/en-US/inbox.json';
|
|
28
|
+
import enMarketplace from '@/shared/lib/i18n/locales/en-US/marketplace.json';
|
|
29
|
+
import enPathPicker from '@/shared/lib/i18n/locales/en-US/path-picker.json';
|
|
30
|
+
import enProjects from '@/shared/lib/i18n/locales/en-US/projects.json';
|
|
31
|
+
import enPwa from '@/shared/lib/i18n/locales/en-US/pwa.json';
|
|
32
|
+
import enRemote from '@/shared/lib/i18n/locales/en-US/remote.json';
|
|
33
|
+
import enRuntimeControl from '@/shared/lib/i18n/locales/en-US/runtime-control.json';
|
|
34
|
+
import enSearch from '@/shared/lib/i18n/locales/en-US/search.json';
|
|
35
|
+
import { registerI18nCatalogs } from '@/shared/lib/i18n';
|
|
36
|
+
|
|
37
|
+
export function installMainI18nCatalog(): void {
|
|
38
|
+
registerI18nCatalogs({
|
|
39
|
+
zh: {
|
|
40
|
+
...zhCore,
|
|
41
|
+
...zhDesktopUpdate,
|
|
42
|
+
...zhSearch,
|
|
43
|
+
...zhChannels,
|
|
44
|
+
...zhCron,
|
|
45
|
+
...zhRemote,
|
|
46
|
+
...zhRuntimeControl,
|
|
47
|
+
...zhChat,
|
|
48
|
+
...zhAgents,
|
|
49
|
+
...zhMarketplace,
|
|
50
|
+
...zhInbox,
|
|
51
|
+
...zhDocBrowser,
|
|
52
|
+
...zhPanelApp,
|
|
53
|
+
...zhPathPicker,
|
|
54
|
+
...zhPwa,
|
|
55
|
+
...zhChannelAuth,
|
|
56
|
+
...zhProjects,
|
|
57
|
+
},
|
|
58
|
+
en: {
|
|
59
|
+
...enCore,
|
|
60
|
+
...enDesktopUpdate,
|
|
61
|
+
...enSearch,
|
|
62
|
+
...enChannels,
|
|
63
|
+
...enCron,
|
|
64
|
+
...enRemote,
|
|
65
|
+
...enRuntimeControl,
|
|
66
|
+
...enChat,
|
|
67
|
+
...enAgents,
|
|
68
|
+
...enMarketplace,
|
|
69
|
+
...enInbox,
|
|
70
|
+
...enDocBrowser,
|
|
71
|
+
...enPanelApp,
|
|
72
|
+
...enPathPicker,
|
|
73
|
+
...enPwa,
|
|
74
|
+
...enChannelAuth,
|
|
75
|
+
...enProjects,
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import enCore from '@/shared/lib/i18n/locales/en-US/core.json';
|
|
2
|
+
import enPanelApp from '@/shared/lib/i18n/locales/en-US/panel-app.json';
|
|
3
|
+
import zhCore from '@/shared/lib/i18n/locales/zh-CN/core.json';
|
|
4
|
+
import zhPanelApp from '@/shared/lib/i18n/locales/zh-CN/panel-app.json';
|
|
5
|
+
import { registerI18nCatalogs } from '@/shared/lib/i18n';
|
|
6
|
+
|
|
7
|
+
export function installPanelAppI18nCatalog(): void {
|
|
8
|
+
registerI18nCatalogs({
|
|
9
|
+
zh: { ...zhCore, ...zhPanelApp },
|
|
10
|
+
en: { ...enCore, ...enPanelApp },
|
|
11
|
+
});
|
|
12
|
+
}
|
|
@@ -1,35 +1,3 @@
|
|
|
1
|
-
import zhAgents from './locales/zh-CN/agents.json';
|
|
2
|
-
import zhChannelAuth from './locales/zh-CN/channel-auth.json';
|
|
3
|
-
import zhChannels from './locales/zh-CN/channels.json';
|
|
4
|
-
import zhChat from './locales/zh-CN/chat.json';
|
|
5
|
-
import zhCore from './locales/zh-CN/core.json';
|
|
6
|
-
import zhCron from './locales/zh-CN/cron.json';
|
|
7
|
-
import zhDesktopUpdate from './locales/zh-CN/desktop-update.json';
|
|
8
|
-
import zhDocBrowser from './locales/zh-CN/doc-browser.json';
|
|
9
|
-
import zhMarketplace from './locales/zh-CN/marketplace.json';
|
|
10
|
-
import zhInbox from './locales/zh-CN/inbox.json';
|
|
11
|
-
import zhPathPicker from './locales/zh-CN/path-picker.json';
|
|
12
|
-
import zhPwa from './locales/zh-CN/pwa.json';
|
|
13
|
-
import zhProjects from './locales/zh-CN/projects.json';
|
|
14
|
-
import zhRemote from './locales/zh-CN/remote.json';
|
|
15
|
-
import zhRuntimeControl from './locales/zh-CN/runtime-control.json';
|
|
16
|
-
import zhSearch from './locales/zh-CN/search.json';
|
|
17
|
-
import enAgents from './locales/en-US/agents.json';
|
|
18
|
-
import enChannelAuth from './locales/en-US/channel-auth.json';
|
|
19
|
-
import enChannels from './locales/en-US/channels.json';
|
|
20
|
-
import enChat from './locales/en-US/chat.json';
|
|
21
|
-
import enCore from './locales/en-US/core.json';
|
|
22
|
-
import enCron from './locales/en-US/cron.json';
|
|
23
|
-
import enDesktopUpdate from './locales/en-US/desktop-update.json';
|
|
24
|
-
import enDocBrowser from './locales/en-US/doc-browser.json';
|
|
25
|
-
import enMarketplace from './locales/en-US/marketplace.json';
|
|
26
|
-
import enInbox from './locales/en-US/inbox.json';
|
|
27
|
-
import enPathPicker from './locales/en-US/path-picker.json';
|
|
28
|
-
import enPwa from './locales/en-US/pwa.json';
|
|
29
|
-
import enProjects from './locales/en-US/projects.json';
|
|
30
|
-
import enRemote from './locales/en-US/remote.json';
|
|
31
|
-
import enRuntimeControl from './locales/en-US/runtime-control.json';
|
|
32
|
-
import enSearch from './locales/en-US/search.json';
|
|
33
1
|
import {
|
|
34
2
|
getLanguage,
|
|
35
3
|
getLocale,
|
|
@@ -44,61 +12,41 @@ import {
|
|
|
44
12
|
export type { I18nLanguage };
|
|
45
13
|
export { getLanguage, getLocale, initializeI18n, LANGUAGE_OPTIONS, resolveInitialLanguage, setLanguage, subscribeLanguageChange };
|
|
46
14
|
|
|
47
|
-
type MessageCatalog = Record<string, string>;
|
|
15
|
+
export type MessageCatalog = Record<string, string>;
|
|
16
|
+
export type I18nCatalogBundle = Record<I18nLanguage, MessageCatalog>;
|
|
48
17
|
type LegacyLabelCatalog = Record<string, Record<I18nLanguage, string>>;
|
|
49
18
|
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
...zhSearch,
|
|
54
|
-
...zhChannels,
|
|
55
|
-
...zhCron,
|
|
56
|
-
...zhRemote,
|
|
57
|
-
...zhRuntimeControl,
|
|
58
|
-
...zhChat,
|
|
59
|
-
...zhAgents,
|
|
60
|
-
...zhMarketplace,
|
|
61
|
-
...zhInbox,
|
|
62
|
-
...zhDocBrowser,
|
|
63
|
-
...zhPathPicker,
|
|
64
|
-
...zhPwa,
|
|
65
|
-
...zhChannelAuth,
|
|
66
|
-
...zhProjects
|
|
19
|
+
const CATALOGS: I18nCatalogBundle = {
|
|
20
|
+
zh: {},
|
|
21
|
+
en: {},
|
|
67
22
|
};
|
|
68
23
|
|
|
69
|
-
const
|
|
70
|
-
...enCore,
|
|
71
|
-
...enDesktopUpdate,
|
|
72
|
-
...enSearch,
|
|
73
|
-
...enChannels,
|
|
74
|
-
...enCron,
|
|
75
|
-
...enRemote,
|
|
76
|
-
...enRuntimeControl,
|
|
77
|
-
...enChat,
|
|
78
|
-
...enAgents,
|
|
79
|
-
...enMarketplace,
|
|
80
|
-
...enInbox,
|
|
81
|
-
...enDocBrowser,
|
|
82
|
-
...enPathPicker,
|
|
83
|
-
...enPwa,
|
|
84
|
-
...enChannelAuth,
|
|
85
|
-
...enProjects
|
|
86
|
-
};
|
|
24
|
+
export const LABELS: LegacyLabelCatalog = {};
|
|
87
25
|
|
|
88
|
-
|
|
89
|
-
zh
|
|
90
|
-
en
|
|
91
|
-
|
|
26
|
+
export function registerI18nCatalogs(bundle: I18nCatalogBundle): void {
|
|
27
|
+
Object.assign(CATALOGS.zh, bundle.zh);
|
|
28
|
+
Object.assign(CATALOGS.en, bundle.en);
|
|
29
|
+
|
|
30
|
+
for (const key of new Set([
|
|
31
|
+
...Object.keys(CATALOGS.zh),
|
|
32
|
+
...Object.keys(CATALOGS.en),
|
|
33
|
+
])) {
|
|
34
|
+
LABELS[key] = {
|
|
35
|
+
zh: CATALOGS.zh[key] ?? CATALOGS.en[key] ?? key,
|
|
36
|
+
en: CATALOGS.en[key] ?? key,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export async function installMainI18nCatalog(): Promise<void> {
|
|
42
|
+
const catalog = await import('@/shared/lib/i18n/configs/main-i18n-catalog.config');
|
|
43
|
+
catalog.installMainI18nCatalog();
|
|
44
|
+
}
|
|
92
45
|
|
|
93
|
-
export
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
zh: zhCatalog[key] ?? enCatalog[key] ?? key,
|
|
98
|
-
en: enCatalog[key] ?? key
|
|
99
|
-
}
|
|
100
|
-
])
|
|
101
|
-
);
|
|
46
|
+
export async function installPanelAppI18nCatalog(): Promise<void> {
|
|
47
|
+
const catalog = await import('@/shared/lib/i18n/configs/panel-app-i18n-catalog.config');
|
|
48
|
+
catalog.installPanelAppI18nCatalog();
|
|
49
|
+
}
|
|
102
50
|
|
|
103
51
|
export function formatDateTime(value?: string | Date, lang: I18nLanguage = getLanguage()): string {
|
|
104
52
|
if (!value) {
|
|
@@ -134,5 +82,5 @@ export function formatNumber(value: number, lang: I18nLanguage = getLanguage()):
|
|
|
134
82
|
}
|
|
135
83
|
|
|
136
84
|
export function t(key: string, lang: I18nLanguage = getLanguage()): string {
|
|
137
|
-
return CATALOGS[lang]?.[key] ??
|
|
85
|
+
return CATALOGS[lang]?.[key] ?? CATALOGS.en[key] ?? key;
|
|
138
86
|
}
|
|
@@ -152,51 +152,6 @@
|
|
|
152
152
|
"appDataClassCache": "Cache",
|
|
153
153
|
"appDataClassTemporary": "Temporary",
|
|
154
154
|
"appDataClassLogs": "Logs",
|
|
155
|
-
"panelAppsTitle": "Panel Apps",
|
|
156
|
-
"panelAppsLoading": "Loading panel apps...",
|
|
157
|
-
"panelAppsLoadFailed": "Failed to load panel apps",
|
|
158
|
-
"panelAppsEmpty": "No panel apps yet",
|
|
159
|
-
"panelAppsEmptyTitle": "Create your first panel app",
|
|
160
|
-
"panelAppsEmptyDescription": "Panel apps are lightweight tools that open beside chat, such as dashboards, forms, calculators, and temporary workbenches.",
|
|
161
|
-
"panelAppsEmptyAskTitle": "Ask NextClaw to generate one",
|
|
162
|
-
"panelAppsEmptyAskDescription": "Start with a ready-made prompt that creates a sample local tool for this panel.",
|
|
163
|
-
"panelAppsEmptyAskAction": "Create sample panel app",
|
|
164
|
-
"panelAppsExamplePrompt": "Create a sample NextClaw Panel App for me: a personal task board. Put it in the NextClaw panels folder as a single *.panel.html file. Include adding tasks, toggling completion, filtering, and local state persistence. After creating it, tell me to refresh Panel Apps and open it. Do not ask follow-up questions first.",
|
|
165
|
-
"panelAppsEmptyFileTitle": "Add it to the panels folder",
|
|
166
|
-
"panelAppsEmptyFileDescription": "You can also add a *.panel.html file, or a *.panel folder with panel-app.json.",
|
|
167
|
-
"panelAppsPanelsPath": "Panels folder",
|
|
168
|
-
"panelAppsEmptyFiltered": "No panel apps in this view",
|
|
169
|
-
"panelAppsRefresh": "Refresh panel apps",
|
|
170
|
-
"panelAppsRefreshCurrent": "Refresh current panel app",
|
|
171
|
-
"panelAppsSortLabel": "Sort",
|
|
172
|
-
"panelAppsSortSmart": "Smart",
|
|
173
|
-
"panelAppsFavorites": "Favorites",
|
|
174
|
-
"panelAppsSortRecentOpen": "Recently Opened",
|
|
175
|
-
"panelAppsSortUpdated": "Recently Updated",
|
|
176
|
-
"panelAppsSortName": "Name",
|
|
177
|
-
"panelAppsFavorite": "Favorite panel app",
|
|
178
|
-
"panelAppsUnfavorite": "Unfavorite panel app",
|
|
179
|
-
"panelAppsMoreActions": "More panel app actions",
|
|
180
|
-
"panelAppsMainSidebarGroup": "Apps",
|
|
181
|
-
"panelAppsMainSidebarGroupCollapse": "Collapse apps",
|
|
182
|
-
"panelAppsMainSidebarGroupExpand": "Expand apps",
|
|
183
|
-
"panelAppsAddToMainSidebar": "Add to main sidebar",
|
|
184
|
-
"panelAppsRemoveFromMainSidebar": "Remove from main sidebar",
|
|
185
|
-
"panelAppsPreferenceUpdateFailed": "Could not update panel app preferences",
|
|
186
|
-
"panelAppsOpenInRightPanel": "Open in right panel",
|
|
187
|
-
"panelAppsOpenApps": "Open app management",
|
|
188
|
-
"panelAppsMainUnavailable": "This panel app is unavailable. It may be disabled, uninstalled, or removed from the workspace.",
|
|
189
|
-
"panelAppsCheckingPermission": "Checking this panel app's permissions…",
|
|
190
|
-
"panelAppsPermissionDenied": "The required NextClaw Client permission was not granted to this panel app.",
|
|
191
|
-
"panelAppsPermissionFailed": "NextClaw could not confirm this panel app's permissions.",
|
|
192
|
-
"panelAppsTryAgain": "Try again",
|
|
193
|
-
"panelAppsDelete": "Delete panel app",
|
|
194
|
-
"panelAppsDeleteConfirmTitle": "Delete panel app?",
|
|
195
|
-
"panelAppsDeleteConfirmDescription": "This will delete the panel app file and cannot be undone.",
|
|
196
|
-
"panelAppsClientGrantTitle": "NextClaw Client SDK",
|
|
197
|
-
"panelAppsClientGrantDescription": "Allow this panel app to use the full NextClaw Client SDK.",
|
|
198
|
-
"panelAppsLastOpened": "Last opened",
|
|
199
|
-
"panelAppsUpdated": "Updated",
|
|
200
155
|
"serviceAppsTitle": "Service Apps",
|
|
201
156
|
"serviceAppsLoading": "Loading service apps...",
|
|
202
157
|
"serviceAppsLoadFailed": "Failed to load service apps",
|
|
@@ -242,16 +197,6 @@
|
|
|
242
197
|
"serviceAppsLastStarted": "Last started",
|
|
243
198
|
"serviceAppsLastReady": "Last ready",
|
|
244
199
|
"serviceAppsLastFailed": "Last failed",
|
|
245
|
-
"serviceActionAuthorizationTitle": "Authorize service actions",
|
|
246
|
-
"serviceActionAuthorizationDescription": "This panel app is requesting local service actions. If allowed, these actions will stay granted for this panel app.",
|
|
247
|
-
"serviceActionAuthorizationSource": "Source",
|
|
248
|
-
"serviceActionAuthorizationAction": "Action",
|
|
249
|
-
"serviceActionAuthorizationActions": "Actions",
|
|
250
|
-
"serviceActionAuthorizationPurpose": "Purpose",
|
|
251
|
-
"serviceActionAuthorizationRisk": "Risk",
|
|
252
|
-
"serviceActionAuthorizationInput": "Input",
|
|
253
|
-
"serviceActionAuthorizationReject": "Reject",
|
|
254
|
-
"serviceActionAuthorizationAllow": "Allow",
|
|
255
200
|
"appPackagesDocumentAccessTitle": "Files and folders",
|
|
256
201
|
"appPackagesDocumentAccessUngranted": "Not granted",
|
|
257
202
|
"appPackagesDocumentAccessUnavailable": "Folder unavailable",
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"panelAppsTitle": "Panel Apps",
|
|
3
|
+
"panelAppsLoading": "Loading panel apps...",
|
|
4
|
+
"panelAppsLoadFailed": "Failed to load panel apps",
|
|
5
|
+
"panelAppsEmpty": "No panel apps yet",
|
|
6
|
+
"panelAppsEmptyTitle": "Create your first panel app",
|
|
7
|
+
"panelAppsEmptyDescription": "Panel apps are lightweight tools that open beside chat, such as dashboards, forms, calculators, and temporary workbenches.",
|
|
8
|
+
"panelAppsEmptyAskTitle": "Ask NextClaw to generate one",
|
|
9
|
+
"panelAppsEmptyAskDescription": "Start with a ready-made prompt that creates a sample local tool for this panel.",
|
|
10
|
+
"panelAppsEmptyAskAction": "Create sample panel app",
|
|
11
|
+
"panelAppsExamplePrompt": "Create a sample NextClaw Panel App for me: a personal task board. Put it in the NextClaw panels folder as a single *.panel.html file. Include adding tasks, toggling completion, filtering, and local state persistence. After creating it, tell me to refresh Panel Apps and open it. Do not ask follow-up questions first.",
|
|
12
|
+
"panelAppsEmptyFileTitle": "Add it to the panels folder",
|
|
13
|
+
"panelAppsEmptyFileDescription": "You can also add a *.panel.html file, or a *.panel folder with panel-app.json.",
|
|
14
|
+
"panelAppsPanelsPath": "Panels folder",
|
|
15
|
+
"panelAppsEmptyFiltered": "No panel apps in this view",
|
|
16
|
+
"panelAppsRefresh": "Refresh panel apps",
|
|
17
|
+
"panelAppsRefreshCurrent": "Refresh current panel app",
|
|
18
|
+
"panelAppsSortLabel": "Sort",
|
|
19
|
+
"panelAppsSortSmart": "Smart",
|
|
20
|
+
"panelAppsFavorites": "Favorites",
|
|
21
|
+
"panelAppsSortRecentOpen": "Recently Opened",
|
|
22
|
+
"panelAppsSortUpdated": "Recently Updated",
|
|
23
|
+
"panelAppsSortName": "Name",
|
|
24
|
+
"panelAppsFavorite": "Favorite panel app",
|
|
25
|
+
"panelAppsUnfavorite": "Unfavorite panel app",
|
|
26
|
+
"panelAppsMoreActions": "More panel app actions",
|
|
27
|
+
"panelAppsMainSidebarGroup": "Apps",
|
|
28
|
+
"panelAppsMainSidebarGroupCollapse": "Collapse apps",
|
|
29
|
+
"panelAppsMainSidebarGroupExpand": "Expand apps",
|
|
30
|
+
"panelAppsAddToMainSidebar": "Add to main sidebar",
|
|
31
|
+
"panelAppsRemoveFromMainSidebar": "Remove from main sidebar",
|
|
32
|
+
"panelAppsPreferenceUpdateFailed": "Could not update panel app preferences",
|
|
33
|
+
"panelAppsOpenInRightPanel": "Open in right panel",
|
|
34
|
+
"panelAppsOpenInBrowser": "Open in Browser",
|
|
35
|
+
"panelAppsOpenInNewTab": "Open in New Tab",
|
|
36
|
+
"panelAppsOpenApps": "Open app management",
|
|
37
|
+
"panelAppsMainUnavailable": "This panel app is unavailable. It may be disabled, uninstalled, or removed from the workspace.",
|
|
38
|
+
"panelAppsCheckingPermission": "Checking this panel app's permissions…",
|
|
39
|
+
"panelAppsPermissionDenied": "The required NextClaw Client permission was not granted to this panel app.",
|
|
40
|
+
"panelAppsPermissionFailed": "NextClaw could not confirm this panel app's permissions.",
|
|
41
|
+
"panelAppsTryAgain": "Try again",
|
|
42
|
+
"panelAppsDelete": "Delete panel app",
|
|
43
|
+
"panelAppsDeleteConfirmTitle": "Delete panel app?",
|
|
44
|
+
"panelAppsDeleteConfirmDescription": "This will delete the panel app file and cannot be undone.",
|
|
45
|
+
"panelAppsClientGrantTitle": "NextClaw Client SDK",
|
|
46
|
+
"panelAppsClientGrantDescription": "Allow this panel app to use the full NextClaw Client SDK.",
|
|
47
|
+
"panelAppsLastOpened": "Last opened",
|
|
48
|
+
"panelAppsUpdated": "Updated",
|
|
49
|
+
"serviceActionAuthorizationTitle": "Authorize service actions",
|
|
50
|
+
"serviceActionAuthorizationDescription": "This panel app is requesting local service actions. If allowed, these actions will stay granted for this panel app.",
|
|
51
|
+
"serviceActionAuthorizationSource": "Source",
|
|
52
|
+
"serviceActionAuthorizationAction": "Action",
|
|
53
|
+
"serviceActionAuthorizationActions": "Actions",
|
|
54
|
+
"serviceActionAuthorizationPurpose": "Purpose",
|
|
55
|
+
"serviceActionAuthorizationRisk": "Risk",
|
|
56
|
+
"serviceActionAuthorizationInput": "Input",
|
|
57
|
+
"serviceActionAuthorizationReject": "Reject",
|
|
58
|
+
"serviceActionAuthorizationAllow": "Allow"
|
|
59
|
+
}
|
|
@@ -6,22 +6,22 @@
|
|
|
6
6
|
"projectsSkills": "Skills",
|
|
7
7
|
"projectsSkillsCountSuffix": "skills",
|
|
8
8
|
"projectsAgreement": "Working rules",
|
|
9
|
-
"
|
|
9
|
+
"projectsAgreementFile": "AGENTS.md",
|
|
10
|
+
"projectsAgreementDescription": "Project working rules come from AGENTS.md at the project root.",
|
|
11
|
+
"projectsAgreementOpen": "Open working rules",
|
|
12
|
+
"projectsNoAgreement": "No AGENTS.md exists at the project root",
|
|
10
13
|
"projectsLoading": "Loading project…",
|
|
11
14
|
"projectsLoadFailed": "Failed to load project",
|
|
12
15
|
"projectsEmpty": "No registered projects",
|
|
13
16
|
"projectsChoose": "Choose a project",
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"projectsObservationSetupAction": "Let AI set up project observation",
|
|
23
|
-
"projectsObservationSetupPrompt": "Follow the built-in project observation setup guidance to establish a durable work-tracking convention for this project. Read the existing materials, then directly propose one editable recommendation containing all three assets: .nextclaw/project.yaml, the minimal always-on section in the root AGENTS.md, and the project-specific .agents/skills/project-work-tracking/SKILL.md. A Workflow describes how one work item progresses; it is not the macro lifecycle of the whole project. Markers must be emitted before a stage starts, never batched at the end. Do not turn this into a long interview; recommend directly when the evidence is sufficient. Write nothing until I confirm, then write and verify all three files together.",
|
|
24
|
-
"projectsNoData": "No observable data",
|
|
17
|
+
"projectsMoreActions": "More actions for {name}",
|
|
18
|
+
"projectsRemoveFromList": "Remove from project list",
|
|
19
|
+
"projectsRemoveConfirmTitle": "Remove from project list",
|
|
20
|
+
"projectsRemoveConfirmDescription": "The local folder, previous sessions, and project work records will not be deleted. Existing sessions remain available in the session list, and adding the same folder again restores the original project.",
|
|
21
|
+
"projectsRemoveConfirmAction": "Remove project",
|
|
22
|
+
"projectsRemoveSuccess": "Project removed from the list",
|
|
23
|
+
"projectsRemoveFailed": "Failed to remove project",
|
|
24
|
+
"projectsNoData": "No work items in this view",
|
|
25
25
|
"projectsUnavailable": "Currently unavailable",
|
|
26
26
|
"projectsWorkList": "List",
|
|
27
27
|
"projectsWorkBoard": "Board",
|
|
@@ -29,64 +29,19 @@
|
|
|
29
29
|
"projectsWorkViews": "Work item views",
|
|
30
30
|
"projectsWorkDetails": "Work item details",
|
|
31
31
|
"projectsCloseDetails": "Close details",
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"projectsWorkNoSessions": "No conversation has started in this project yet. Once substantive project work begins, AI-reported progress will appear here.",
|
|
35
|
-
"projectsWorkNoReports": "AI has not explicitly reported any work items from the existing project conversations yet. Real progress will appear here as the work continues.",
|
|
36
|
-
"projectsAiActivity": "AI runs",
|
|
37
|
-
"projectsAiRun": "Project session",
|
|
38
|
-
"projectsRunUnreported": "Work item and stage not reported yet",
|
|
39
|
-
"projectsRunState_running": "Running",
|
|
40
|
-
"projectsRunState_completed": "Finished",
|
|
41
|
-
"projectsRunState_failed": "Failed",
|
|
42
|
-
"projectsRunState_cancelled": "Cancelled",
|
|
43
|
-
"projectsRunState_idle": "Idle",
|
|
44
|
-
"projectsStartProjectWork": "Start project work",
|
|
45
|
-
"projectsStartProjectWorkPrompt": "Start working on this project. First read the project configuration and the materials relevant to this goal; I will add or revise the specific goal before sending.",
|
|
46
|
-
"projectsBoardNeedsWorkflow": "No workflow stages are available. The board does not invent stages.",
|
|
47
|
-
"projectsGanttNeedsSchedule": "No schedule markers are available. The Gantt view does not infer dates from files.",
|
|
48
|
-
"projectsUnstaged": "Stage not reported",
|
|
49
|
-
"projectsStage": "Stage",
|
|
50
|
-
"projectsSchedule": "Schedule",
|
|
51
|
-
"projectsNoArtifacts": "No artifacts matched by configuration or reported by AI",
|
|
52
|
-
"projectsNoSkills": "No project Skills are available",
|
|
53
|
-
"projectsNoContext": "No vision or working-rule sources are configured",
|
|
54
|
-
"projectsRequests": "Waiting for your reply",
|
|
55
|
-
"projectsConfirm": "Confirm",
|
|
56
|
-
"projectsReject": "Reject",
|
|
57
|
-
"projectsResponseSent": "Reply sent; waiting for AI to update",
|
|
58
|
-
"projectsResponseWaiting": "Replied; waiting for AI to update",
|
|
59
|
-
"projectsResponseFailed": "Failed to send reply",
|
|
32
|
+
"projectsNoArtifacts": "No linked artifacts yet. Link a file from a work item to show it here.",
|
|
33
|
+
"projectsNoSkills": "No project Skills found in .agents/skills",
|
|
60
34
|
"projectsActivity": "Recent activity",
|
|
61
|
-
"projectsNoActivity": "No AI-reported activity",
|
|
62
|
-
"projectsOpenSession": "Open source session",
|
|
63
|
-
"projectsAttention": "Needs attention",
|
|
64
|
-
"projectsNoAttention": "No open attention signals",
|
|
65
|
-
"projectsSourceHealth": "Sources and diagnostics",
|
|
66
35
|
"projectsArtifactsCountSuffix": "artifacts",
|
|
67
36
|
"projectsArtifactsSearchPlaceholder": "Search artifacts",
|
|
68
37
|
"projectsArtifactsShowMore": "Show more",
|
|
69
38
|
"projectsArtifactsNoMatches": "No matching artifacts",
|
|
70
|
-
"projectsArtifactsSort": "Sort",
|
|
71
|
-
"projectsArtifactsSortUpdatedDesc": "Recently updated",
|
|
72
|
-
"projectsArtifactsSortUpdatedAsc": "Oldest updated",
|
|
73
|
-
"projectsArtifactsSortCreatedDesc": "Recently created",
|
|
74
|
-
"projectsArtifactsSortName": "File name",
|
|
75
39
|
"projectsTimeJustNow": "Just now",
|
|
76
40
|
"projectsTimeMinutesAgo": "{count} minutes ago",
|
|
77
41
|
"projectsTimeHoursAgo": "{count} hours ago",
|
|
78
42
|
"projectsTimeYesterday": "Yesterday",
|
|
79
43
|
"projectsTimeDaysAgo": "{count} days ago",
|
|
80
|
-
"projectsReadable": "Readable",
|
|
81
44
|
"projectsStatus": "Status",
|
|
82
|
-
"projectsUpdated": "Updated",
|
|
83
|
-
"projectsStatus_active": "Active",
|
|
84
|
-
"projectsStatus_blocked": "Blocked",
|
|
85
|
-
"projectsStatus_completed": "Completed",
|
|
86
|
-
"projectsStatus_cancelled": "Cancelled",
|
|
87
|
-
"projectsSource_available": "Available",
|
|
88
|
-
"projectsSource_empty": "No data",
|
|
89
|
-
"projectsSource_error": "Failed",
|
|
90
45
|
"projectsWorkNewItem": "Add a work item",
|
|
91
46
|
"projectsWorkEmpty": "No work items yet. Add one here or ask AI from a project conversation.",
|
|
92
47
|
"projectsWorkShowDeleted": "Show deleted work items",
|
|
@@ -133,12 +88,22 @@
|
|
|
133
88
|
"projectsWorkCategory_started": "In progress",
|
|
134
89
|
"projectsWorkCategory_completed": "Completed",
|
|
135
90
|
"projectsWorkCategory_canceled": "Canceled",
|
|
91
|
+
"projectsWorkState_backlog": "Backlog",
|
|
92
|
+
"projectsWorkState_planned": "Planned",
|
|
93
|
+
"projectsWorkState_inProgress": "In Progress",
|
|
94
|
+
"projectsWorkState_inReview": "In Review",
|
|
95
|
+
"projectsWorkState_awaitingAcceptance": "Awaiting Acceptance",
|
|
96
|
+
"projectsWorkState_completed": "Completed",
|
|
97
|
+
"projectsWorkState_canceled": "Canceled",
|
|
136
98
|
"projectsWorkSummary": "Work summary",
|
|
137
99
|
"projectsWorkTotal": "Total",
|
|
138
100
|
"projectsWorkActive": "Active",
|
|
139
101
|
"projectsWorkNeedsAttention": "Needs attention",
|
|
140
102
|
"projectsWorkCompleted": "Completed",
|
|
141
103
|
"projectsWorkRecentlyUpdated": "Recently updated",
|
|
104
|
+
"projectsWorkLoadMore": "Load more",
|
|
105
|
+
"projectsRecentArtifacts": "Recent artifacts",
|
|
106
|
+
"projectsNoRecentArtifacts": "No artifacts have been linked to work items yet.",
|
|
142
107
|
"projectsWorkActivity_created": "Created",
|
|
143
108
|
"projectsWorkActivity_updated": "Updated",
|
|
144
109
|
"projectsWorkActivity_state-changed": "State changed",
|
|
@@ -152,51 +152,6 @@
|
|
|
152
152
|
"appDataClassCache": "缓存",
|
|
153
153
|
"appDataClassTemporary": "临时文件",
|
|
154
154
|
"appDataClassLogs": "日志",
|
|
155
|
-
"panelAppsTitle": "面板应用",
|
|
156
|
-
"panelAppsLoading": "加载面板应用中...",
|
|
157
|
-
"panelAppsLoadFailed": "面板应用加载失败",
|
|
158
|
-
"panelAppsEmpty": "暂无面板应用",
|
|
159
|
-
"panelAppsEmptyTitle": "创建你的第一个面板应用",
|
|
160
|
-
"panelAppsEmptyDescription": "面板应用是在聊天旁边打开的轻量工具,适合仪表盘、表单、计算器和临时工作台。",
|
|
161
|
-
"panelAppsEmptyAskTitle": "让 NextClaw 帮你生成",
|
|
162
|
-
"panelAppsEmptyAskDescription": "从一段现成提示词开始,让 NextClaw 直接创建一个可打开的示例小工具。",
|
|
163
|
-
"panelAppsEmptyAskAction": "生成示例面板应用",
|
|
164
|
-
"panelAppsExamplePrompt": "请直接为我创建一个示例 NextClaw Panel App:个人任务看板。请把它放到 NextClaw panels 目录,使用单文件 *.panel.html,包含任务添加、完成状态切换、筛选和本地状态保存。创建完成后告诉我刷新 Panel Apps 并打开它。不要先问我问题。",
|
|
165
|
-
"panelAppsEmptyFileTitle": "放入 panels 目录",
|
|
166
|
-
"panelAppsEmptyFileDescription": "也可以添加 *.panel.html 文件,或带 panel-app.json 的 *.panel 目录。",
|
|
167
|
-
"panelAppsPanelsPath": "面板目录",
|
|
168
|
-
"panelAppsEmptyFiltered": "当前分类暂无面板应用",
|
|
169
|
-
"panelAppsRefresh": "刷新面板应用",
|
|
170
|
-
"panelAppsRefreshCurrent": "刷新当前面板应用",
|
|
171
|
-
"panelAppsSortLabel": "排序",
|
|
172
|
-
"panelAppsSortSmart": "智能排序",
|
|
173
|
-
"panelAppsFavorites": "收藏",
|
|
174
|
-
"panelAppsSortRecentOpen": "最近打开",
|
|
175
|
-
"panelAppsSortUpdated": "最近更新",
|
|
176
|
-
"panelAppsSortName": "名称",
|
|
177
|
-
"panelAppsFavorite": "收藏面板应用",
|
|
178
|
-
"panelAppsUnfavorite": "取消收藏面板应用",
|
|
179
|
-
"panelAppsMoreActions": "更多面板应用操作",
|
|
180
|
-
"panelAppsMainSidebarGroup": "应用",
|
|
181
|
-
"panelAppsMainSidebarGroupCollapse": "收起应用",
|
|
182
|
-
"panelAppsMainSidebarGroupExpand": "展开应用",
|
|
183
|
-
"panelAppsAddToMainSidebar": "添加到主侧栏",
|
|
184
|
-
"panelAppsRemoveFromMainSidebar": "从主侧栏移除",
|
|
185
|
-
"panelAppsPreferenceUpdateFailed": "无法更新面板应用设置",
|
|
186
|
-
"panelAppsOpenInRightPanel": "在右侧面板打开",
|
|
187
|
-
"panelAppsOpenApps": "打开应用管理",
|
|
188
|
-
"panelAppsMainUnavailable": "此面板应用当前不可用。它可能已被禁用、卸载或从工作区删除。",
|
|
189
|
-
"panelAppsCheckingPermission": "正在确认此面板应用的权限…",
|
|
190
|
-
"panelAppsPermissionDenied": "未授予此面板应用所需的 NextClaw Client 权限。",
|
|
191
|
-
"panelAppsPermissionFailed": "无法确认此面板应用的权限。",
|
|
192
|
-
"panelAppsTryAgain": "重试",
|
|
193
|
-
"panelAppsDelete": "删除面板应用",
|
|
194
|
-
"panelAppsDeleteConfirmTitle": "删除面板应用?",
|
|
195
|
-
"panelAppsDeleteConfirmDescription": "将删除这个面板应用文件,删除后不可恢复。",
|
|
196
|
-
"panelAppsClientGrantTitle": "NextClaw Client SDK",
|
|
197
|
-
"panelAppsClientGrantDescription": "允许这个面板应用使用完整 NextClaw Client SDK。",
|
|
198
|
-
"panelAppsLastOpened": "上次打开",
|
|
199
|
-
"panelAppsUpdated": "更新于",
|
|
200
155
|
"serviceAppsTitle": "服务应用",
|
|
201
156
|
"serviceAppsLoading": "加载服务应用中...",
|
|
202
157
|
"serviceAppsLoadFailed": "服务应用加载失败",
|
|
@@ -242,16 +197,6 @@
|
|
|
242
197
|
"serviceAppsLastStarted": "上次启动",
|
|
243
198
|
"serviceAppsLastReady": "上次就绪",
|
|
244
199
|
"serviceAppsLastFailed": "上次失败",
|
|
245
|
-
"serviceActionAuthorizationTitle": "授权服务动作",
|
|
246
|
-
"serviceActionAuthorizationDescription": "此面板应用正在请求调用本地服务应用动作。允许后,这些动作会为该面板应用记住授权。",
|
|
247
|
-
"serviceActionAuthorizationSource": "来源",
|
|
248
|
-
"serviceActionAuthorizationAction": "动作",
|
|
249
|
-
"serviceActionAuthorizationActions": "动作",
|
|
250
|
-
"serviceActionAuthorizationPurpose": "用途",
|
|
251
|
-
"serviceActionAuthorizationRisk": "风险",
|
|
252
|
-
"serviceActionAuthorizationInput": "输入",
|
|
253
|
-
"serviceActionAuthorizationReject": "拒绝",
|
|
254
|
-
"serviceActionAuthorizationAllow": "允许",
|
|
255
200
|
"appPackagesDocumentAccessTitle": "文件与文件夹",
|
|
256
201
|
"appPackagesDocumentAccessUngranted": "未授权",
|
|
257
202
|
"appPackagesDocumentAccessUnavailable": "目录不可用",
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"panelAppsTitle": "面板应用",
|
|
3
|
+
"panelAppsLoading": "加载面板应用中...",
|
|
4
|
+
"panelAppsLoadFailed": "面板应用加载失败",
|
|
5
|
+
"panelAppsEmpty": "暂无面板应用",
|
|
6
|
+
"panelAppsEmptyTitle": "创建你的第一个面板应用",
|
|
7
|
+
"panelAppsEmptyDescription": "面板应用是在聊天旁边打开的轻量工具,适合仪表盘、表单、计算器和临时工作台。",
|
|
8
|
+
"panelAppsEmptyAskTitle": "让 NextClaw 帮你生成",
|
|
9
|
+
"panelAppsEmptyAskDescription": "从一段现成提示词开始,让 NextClaw 直接创建一个可打开的示例小工具。",
|
|
10
|
+
"panelAppsEmptyAskAction": "生成示例面板应用",
|
|
11
|
+
"panelAppsExamplePrompt": "请直接为我创建一个示例 NextClaw Panel App:个人任务看板。请把它放到 NextClaw panels 目录,使用单文件 *.panel.html,包含任务添加、完成状态切换、筛选和本地状态保存。创建完成后告诉我刷新 Panel Apps 并打开它。不要先问我问题。",
|
|
12
|
+
"panelAppsEmptyFileTitle": "放入 panels 目录",
|
|
13
|
+
"panelAppsEmptyFileDescription": "也可以添加 *.panel.html 文件,或带 panel-app.json 的 *.panel 目录。",
|
|
14
|
+
"panelAppsPanelsPath": "面板目录",
|
|
15
|
+
"panelAppsEmptyFiltered": "当前分类暂无面板应用",
|
|
16
|
+
"panelAppsRefresh": "刷新面板应用",
|
|
17
|
+
"panelAppsRefreshCurrent": "刷新当前面板应用",
|
|
18
|
+
"panelAppsSortLabel": "排序",
|
|
19
|
+
"panelAppsSortSmart": "智能排序",
|
|
20
|
+
"panelAppsFavorites": "收藏",
|
|
21
|
+
"panelAppsSortRecentOpen": "最近打开",
|
|
22
|
+
"panelAppsSortUpdated": "最近更新",
|
|
23
|
+
"panelAppsSortName": "名称",
|
|
24
|
+
"panelAppsFavorite": "收藏面板应用",
|
|
25
|
+
"panelAppsUnfavorite": "取消收藏面板应用",
|
|
26
|
+
"panelAppsMoreActions": "更多面板应用操作",
|
|
27
|
+
"panelAppsMainSidebarGroup": "应用",
|
|
28
|
+
"panelAppsMainSidebarGroupCollapse": "收起应用",
|
|
29
|
+
"panelAppsMainSidebarGroupExpand": "展开应用",
|
|
30
|
+
"panelAppsAddToMainSidebar": "添加到主侧栏",
|
|
31
|
+
"panelAppsRemoveFromMainSidebar": "从主侧栏移除",
|
|
32
|
+
"panelAppsPreferenceUpdateFailed": "无法更新面板应用设置",
|
|
33
|
+
"panelAppsOpenInRightPanel": "在右侧面板打开",
|
|
34
|
+
"panelAppsOpenInBrowser": "在浏览器中打开",
|
|
35
|
+
"panelAppsOpenInNewTab": "在新标签页中打开",
|
|
36
|
+
"panelAppsOpenApps": "打开应用管理",
|
|
37
|
+
"panelAppsMainUnavailable": "此面板应用当前不可用。它可能已被禁用、卸载或从工作区删除。",
|
|
38
|
+
"panelAppsCheckingPermission": "正在确认此面板应用的权限…",
|
|
39
|
+
"panelAppsPermissionDenied": "未授予此面板应用所需的 NextClaw Client 权限。",
|
|
40
|
+
"panelAppsPermissionFailed": "无法确认此面板应用的权限。",
|
|
41
|
+
"panelAppsTryAgain": "重试",
|
|
42
|
+
"panelAppsDelete": "删除面板应用",
|
|
43
|
+
"panelAppsDeleteConfirmTitle": "删除面板应用?",
|
|
44
|
+
"panelAppsDeleteConfirmDescription": "将删除这个面板应用文件,删除后不可恢复。",
|
|
45
|
+
"panelAppsClientGrantTitle": "NextClaw Client SDK",
|
|
46
|
+
"panelAppsClientGrantDescription": "允许这个面板应用使用完整 NextClaw Client SDK。",
|
|
47
|
+
"panelAppsLastOpened": "上次打开",
|
|
48
|
+
"panelAppsUpdated": "更新于",
|
|
49
|
+
"serviceActionAuthorizationTitle": "授权服务动作",
|
|
50
|
+
"serviceActionAuthorizationDescription": "此面板应用正在请求调用本地服务应用动作。允许后,这些动作会为该面板应用记住授权。",
|
|
51
|
+
"serviceActionAuthorizationSource": "来源",
|
|
52
|
+
"serviceActionAuthorizationAction": "动作",
|
|
53
|
+
"serviceActionAuthorizationActions": "动作",
|
|
54
|
+
"serviceActionAuthorizationPurpose": "用途",
|
|
55
|
+
"serviceActionAuthorizationRisk": "风险",
|
|
56
|
+
"serviceActionAuthorizationInput": "输入",
|
|
57
|
+
"serviceActionAuthorizationReject": "拒绝",
|
|
58
|
+
"serviceActionAuthorizationAllow": "允许"
|
|
59
|
+
}
|