@tequila99/githuman 0.11.2 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +62 -2
- package/dist/cli/commands/mcp.js +112 -0
- package/dist/cli/commands/pi-acp.js +21 -0
- package/dist/cli/config.js +7 -1
- package/dist/cli/index.js +19 -8
- package/dist/cli/server-runtime.js +1 -0
- package/dist/server/adapters/agents/artifact-permission.js +88 -0
- package/dist/server/adapters/pi-acp/agent.js +98 -0
- package/dist/server/adapters/pi-acp/compatibility.js +57 -0
- package/dist/server/adapters/pi-acp/control.js +76 -0
- package/dist/server/adapters/pi-acp/errors.js +17 -0
- package/dist/server/adapters/pi-acp/extension.js +255 -0
- package/dist/server/adapters/pi-acp/launch.js +16 -0
- package/dist/server/adapters/pi-acp/mcp.js +153 -0
- package/dist/server/adapters/pi-acp/process.js +199 -0
- package/dist/server/adapters/pi-acp/session.js +409 -0
- package/dist/server/adapters/pi-acp/vendor/LICENSE +21 -0
- package/dist/server/adapters/pi-acp/vendor/README.md +29 -0
- package/dist/server/adapters/pi-acp/vendor/prompt.js +56 -0
- package/dist/server/app.js +92 -5
- package/dist/server/config/agents.js +4 -6
- package/dist/server/db/artifact-graph-migrations.js +56 -0
- package/dist/server/db/artifact-migrations.js +70 -0
- package/dist/server/db/artifact-review-migrations.js +24 -0
- package/dist/server/db/artifact-search-migrations.js +31 -0
- package/dist/server/db/artifact-validation-migrations.js +70 -0
- package/dist/server/db/index.js +3 -0
- package/dist/server/db/migrations.js +10 -0
- package/dist/server/db/sqlite-error.js +15 -0
- package/dist/server/db/transaction.js +40 -0
- package/dist/server/errors/artifacts.js +28 -0
- package/dist/server/errors/database.js +2 -0
- package/dist/server/hooks/access/require-access.js +8 -0
- package/dist/server/repositories/artifact-catalog.repo.js +283 -0
- package/dist/server/repositories/artifact-files.repo.js +181 -0
- package/dist/server/repositories/artifact-graph.repo.js +50 -0
- package/dist/server/repositories/artifact-search.repo.js +192 -0
- package/dist/server/repositories/artifact-transition.repo.js +85 -0
- package/dist/server/repositories/artifact-validation.repo.js +146 -0
- package/dist/server/repositories/notes-catalog.repo.js +2 -10
- package/dist/server/repositories/task.repo.js +114 -0
- package/dist/server/routes/agent.js +8 -1
- package/dist/server/routes/artifact-actions.js +129 -0
- package/dist/server/routes/artifact-agent.js +183 -0
- package/dist/server/routes/artifact-definitions.js +163 -0
- package/dist/server/routes/artifact-transitions.js +80 -0
- package/dist/server/routes/artifacts.js +111 -0
- package/dist/server/routes/events.js +5 -1
- package/dist/server/services/agent/agent-session.js +180 -10
- package/dist/server/services/agent/context-builder.js +30 -2
- package/dist/server/services/agent/session-registry.js +106 -2
- package/dist/server/services/agent/turn-task-context.js +1 -0
- package/dist/server/services/artifact-authorization.service.js +174 -0
- package/dist/server/services/artifact-definition.service.js +96 -0
- package/dist/server/services/artifact-export.service.js +44 -0
- package/dist/server/services/artifact-graph-validation.js +497 -0
- package/dist/server/services/artifact-graph.service.js +81 -0
- package/dist/server/services/artifact-lifecycle.service.js +343 -0
- package/dist/server/services/artifact-maintenance.service.js +55 -0
- package/dist/server/services/artifact-search.service.js +331 -0
- package/dist/server/services/artifact-storage.service.js +646 -0
- package/dist/server/services/artifact-transition.service.js +607 -0
- package/dist/server/services/artifact-type.service.js +74 -0
- package/dist/server/services/artifact-validation-jobs.service.js +518 -0
- package/dist/server/services/device-connections.js +9 -1
- package/dist/server/services/review.service.js +6 -5
- package/dist/server/services/task.service.js +225 -0
- package/dist/server/utils/artifact-actor.js +13 -0
- package/dist/server/utils/artifact-page.js +42 -0
- package/dist/server/utils/take-within-bytes.js +16 -0
- package/dist/server/utils/text.js +7 -0
- package/dist/shared/agents/schemas.js +27 -0
- package/dist/shared/app/storage-constants.js +2 -0
- package/dist/shared/artifact-tools/descriptions.js +11 -0
- package/dist/shared/artifact-tools/instructions.js +14 -0
- package/dist/shared/artifact-tools/schemas.js +119 -0
- package/dist/shared/artifact-transitions/constants.js +21 -0
- package/dist/shared/artifact-transitions/schemas.js +111 -0
- package/dist/shared/artifact-transitions/transitions.js +61 -0
- package/dist/shared/artifact-transitions/types.js +1 -0
- package/dist/shared/artifacts/constants.js +34 -0
- package/dist/shared/artifacts/mcp-constants.js +24 -0
- package/dist/shared/artifacts/normalize.js +9 -0
- package/dist/shared/artifacts/schemas.js +820 -0
- package/dist/shared/artifacts/search.js +101 -0
- package/dist/shared/artifacts/types.js +1 -0
- package/dist/shared/events/schemas.js +1 -1
- package/dist/shared/events/types.js +1 -0
- package/dist/shared/tasks/schemas.js +261 -0
- package/dist/shared/tasks/types.js +1 -0
- package/dist/shared/utils/artifact-body.js +10 -0
- package/dist/shared/utils/canonical-json.js +22 -0
- package/dist/shared/utils/is-safe-prefixed-filename.js +10 -0
- package/dist/shared/utils/is-uuid.js +4 -2
- package/dist/shared/utils/is-valid-artifact-type-id.js +9 -0
- package/dist/shared/utils/is-valid-filename-prefix.js +13 -0
- package/dist/web/assets/AccessPage-Dvj0aCkm.js +1 -0
- package/dist/web/assets/AddButton-CMC9qf51.js +4 -0
- package/dist/web/assets/AddToAgentButton-BitTdCEg.js +1 -0
- package/dist/web/assets/AppPage-Cozv2vqG.js +1 -0
- package/dist/web/assets/ArtifactDefinitionPicker-BQOoU60k.js +3 -0
- package/dist/web/assets/ArtifactDefinitionPicker-D3qdrxlC.css +1 -0
- package/dist/web/assets/ArtifactsPage-BJR-XYYs.js +2 -0
- package/dist/web/assets/ArtifactsPage-Cu1xdYNf.css +1 -0
- package/dist/web/assets/CancelButton-mkxRHwoZ.js +1 -0
- package/dist/web/assets/ClosePopup-BtDeDZsk.js +1 -0
- package/dist/web/assets/CreateButton-zCmb7snC.js +1 -0
- package/dist/web/assets/CreateReviewFabButton-BCg1TvFh.js +1 -0
- package/dist/web/assets/DialogHeader-CPL9OtDV.css +1 -0
- package/dist/web/assets/DialogHeader-CQvAZVx7.js +1 -0
- package/dist/web/assets/{ErrorNotFound-DucDzOUJ.js → ErrorNotFound-fXS367lZ.js} +1 -1
- package/dist/web/assets/{IndexPage-D5PvyGrX.css → IndexPage-5V5GLtgi.css} +1 -1
- package/dist/web/assets/IndexPage-DMTZyWQA.js +1 -0
- package/dist/web/assets/MainLayout-DWJ_-EMV.js +7 -0
- package/dist/web/assets/MainLayout-Dy74m_q1.css +1 -0
- package/dist/web/assets/NoteVisualEditor-5rHBQ3j0.js +1054 -0
- package/dist/web/assets/{NoteVisualEditor-CawpxEFB.css → NoteVisualEditor-DE4ACTRJ.css} +1 -1
- package/dist/web/assets/NotesPage-C_eoCUl7.css +1 -0
- package/dist/web/assets/NotesPage-CjaxjLBW.js +4 -0
- package/dist/web/assets/{PdfPreview-rlkcqoMF.js → PdfPreview-2NQ5gkjh.js} +2 -2
- package/dist/web/assets/ProjectFilePage-B-WUUxnq.js +1 -0
- package/dist/web/assets/QBtn-V3VXtJXi.js +1 -0
- package/dist/web/assets/QFab-CxpedhPI.js +1 -0
- package/dist/web/assets/{QForm-Be8-ucuJ.js → QForm-ClpSneeD.js} +1 -1
- package/dist/web/assets/QInput-BnqLJGXl.js +1 -0
- package/dist/web/assets/QScrollArea-js5dkUz1.js +1 -0
- package/dist/web/assets/QSpace-C7iAnGlU.js +1 -0
- package/dist/web/assets/QTabs-DIy5gWMb.js +1 -0
- package/dist/web/assets/QVirtualScroll-DkD0TczV.js +1 -0
- package/dist/web/assets/ReviewDetailPage-BgxcsTqY.css +1 -0
- package/dist/web/assets/ReviewDetailPage-Bmc8DmSu.js +1 -0
- package/dist/web/assets/ReviewsPage-DR1IWCmu.js +1 -0
- package/dist/web/assets/SearchInput-BRyN93Z1.js +1 -0
- package/dist/web/assets/StatusSwitcher-CpkH8BuC.js +1 -0
- package/dist/web/assets/{StatusSwitcher-D6i8_OfR.css → StatusSwitcher-DaE1ufAA.css} +1 -1
- package/dist/web/assets/TagFilterField-Bl3FBkB5.js +1 -0
- package/dist/web/assets/TagFilterField-DjUH0m3_.css +1 -0
- package/dist/web/assets/{TerminalView-617DZuPt.css → TerminalView-BCeke4xd.css} +1 -1
- package/dist/web/assets/{TerminalView-D4elkzN4.js → TerminalView-tEyLM5qZ.js} +12 -12
- package/dist/web/assets/{abnfDiagram-O67JEVCF-Cugru96L.js → abnfDiagram-O67JEVCF-DN9xiV9p.js} +1 -1
- package/dist/web/assets/{access-store-Cdg8oRAM.js → access-store-CwkOl71l.js} +1 -1
- package/dist/web/assets/{agent-store-D_W7iD_B.js → agent-store-Grbx4jkz.js} +5 -5
- package/dist/web/assets/architecture-7GRP2DOG-DmaYCP8T.js +1 -0
- package/dist/web/assets/{architectureDiagram-NJMV4G6O-7rMsE4Wt.js → architectureDiagram-NJMV4G6O-BVAJOucG.js} +1 -1
- package/dist/web/assets/{blockDiagram-BEXU5L5S-BvSnwUrI.js → blockDiagram-BEXU5L5S-TJAfSX44.js} +1 -1
- package/dist/web/assets/{c4Diagram-YGBWAQC7-CgmQlCVx.js → c4Diagram-YGBWAQC7-5UHyT_tW.js} +1 -1
- package/dist/web/assets/channel-B4_5H-fb.js +1 -0
- package/dist/web/assets/{chunk-3FUC2YCW-_i8udThz.js → chunk-3FUC2YCW-CelgLyJi.js} +1 -1
- package/dist/web/assets/{chunk-5DYCD2WN-Mhk2LlLk.js → chunk-5DYCD2WN-bhEAVIbQ.js} +1 -1
- package/dist/web/assets/{chunk-742MDFTN-CDVcwgEp.js → chunk-742MDFTN-ByLz4EcD.js} +1 -1
- package/dist/web/assets/{chunk-7INBJB4K-C2c1fi9s.js → chunk-7INBJB4K-CK2i0csa.js} +1 -1
- package/dist/web/assets/{chunk-7M6MHVWA-BeGkoIBL.js → chunk-7M6MHVWA-CoCiujjC.js} +1 -1
- package/dist/web/assets/{chunk-7PRAP22T-BVWTh9sT.js → chunk-7PRAP22T-CY4NCrCY.js} +1 -1
- package/dist/web/assets/{chunk-GTNCS2PH-gVhX7NZP.js → chunk-GTNCS2PH-DMB7bQGB.js} +1 -1
- package/dist/web/assets/{chunk-GWA4HPMP-BPdnIcQH.js → chunk-GWA4HPMP-F6qclPTR.js} +1 -1
- package/dist/web/assets/{chunk-MBY4JIJT-B2VfO_06.js → chunk-MBY4JIJT-CSiiBtlX.js} +1 -1
- package/dist/web/assets/{chunk-NETBCI7D-DZF_gITO.js → chunk-NETBCI7D-CBh7GChL.js} +1 -1
- package/dist/web/assets/{chunk-O7XYJQB3-CDpBWiLq.js → chunk-O7XYJQB3-B2aqz0sN.js} +1 -1
- package/dist/web/assets/{chunk-UA2S7LBM-Iv7TSRE_.js → chunk-UA2S7LBM-B_-P_eR0.js} +1 -1
- package/dist/web/assets/{chunk-WEXAMYUT-Ce6goZ2Y.js → chunk-WEXAMYUT-19nMFxzK.js} +1 -1
- package/dist/web/assets/{chunk-Z7XXMR3K-CY6E6_Ux.js → chunk-Z7XXMR3K-Co7gzRY1.js} +1 -1
- package/dist/web/assets/{chunk-ZIGJFQKS-BLzsXZBc.js → chunk-ZIGJFQKS-Eoi4K5bK.js} +1 -1
- package/dist/web/assets/{classDiagram-v2-NBCMYWYE-Dz0kD9P6.js → classDiagram-v2-NBCMYWYE-CfFGzL-A.js} +1 -1
- package/dist/web/assets/copy-code-DaqEfdXL.js +1 -0
- package/dist/web/assets/create-DedXY-KP.js +1 -0
- package/dist/web/assets/{cynefin-OW5HDTMX-DWIx3wRm.js → cynefin-OW5HDTMX-DdZXl3KU.js} +1 -1
- package/dist/web/assets/{cynefinDiagram-VND7K2PF-2D80uocv.js → cynefinDiagram-VND7K2PF-WU21nYH-.js} +1 -1
- package/dist/web/assets/{dagre-6A5THRUB-BLBhukn-.js → dagre-6A5THRUB-48z3F8Pl.js} +1 -1
- package/dist/web/assets/date-DZIuZp-w.js +1 -0
- package/dist/web/assets/{devices-store-BfZKPOhg.js → devices-store-Bfk2wdrQ.js} +1 -1
- package/dist/web/assets/{diagram-22UHCM2B-DY8dMLZ3.js → diagram-22UHCM2B-B0AZgJW9.js} +1 -1
- package/dist/web/assets/{diagram-3UASUU5V-Bf6Od1NH.js → diagram-3UASUU5V-CzEzrxuO.js} +1 -1
- package/dist/web/assets/{diagram-ATOU4E4O-CjLGcYD5.js → diagram-ATOU4E4O-w6h1bD3w.js} +1 -1
- package/dist/web/assets/{diagram-CDSNMT55-gIvaVNvs.js → diagram-CDSNMT55-BdTHQd_o.js} +1 -1
- package/dist/web/assets/{diagram-MLGK6HIB-VR5kiCi5.js → diagram-MLGK6HIB-pB4cj6c2.js} +1 -1
- package/dist/web/assets/{diagram-MPIPVDR6-CdAdj25I.js → diagram-MPIPVDR6-C7C06qyV.js} +1 -1
- package/dist/web/assets/diff-store-DBDL5Hw5.js +93 -0
- package/dist/web/assets/{dist-lgw4kcVA.js → dist-B7Cu0FBW.js} +1 -1
- package/dist/web/assets/{dist-yzAhvE-V.js → dist-B8i8y3GY.js} +1 -1
- package/dist/web/assets/{dist-C85t5q3z.js → dist-BNgPhnKo.js} +1 -1
- package/dist/web/assets/{dist-CEl-Ko94.js → dist-BWoPV5P3.js} +1 -1
- package/dist/web/assets/{dist-DLuI1PxH.js → dist-CJ7isxli.js} +1 -1
- package/dist/web/assets/{dist-joQDFmfy.js → dist-CTJJYvYG.js} +1 -1
- package/dist/web/assets/{dist-CBGyhCYv.js → dist-CZz0KXAA.js} +1 -1
- package/dist/web/assets/{dist-CIMEaJAX.js → dist-DNpwgDba.js} +1 -1
- package/dist/web/assets/{dist-CTd7Kuqx.js → dist-DWCdhk-O.js} +1 -1
- package/dist/web/assets/{dist-BU8erXQF.js → dist-DqSUdjG9.js} +1 -1
- package/dist/web/assets/{dist-C54FrSb8.js → dist-Dy9K9LOR.js} +1 -1
- package/dist/web/assets/{ebnfDiagram-ZINNZB2B-irTAlMFO.js → ebnfDiagram-ZINNZB2B-75vt7539.js} +1 -1
- package/dist/web/assets/{elk-276RUBZZ-Dj5ligvC.js → elk-276RUBZZ-DXDjJVTy.js} +1 -1
- package/dist/web/assets/{erDiagram-OPXOYQCR-Bvn6rbL1.js → erDiagram-OPXOYQCR-tNNInTmk.js} +1 -1
- package/dist/web/assets/eventmodeling-NTZA5JFV-QMRehQtM.js +1 -0
- package/dist/web/assets/flowDiagram-KWPJA3E3-DJAgsbXC.js +1 -0
- package/dist/web/assets/{ganttDiagram-FUAMR5RP-BNGAUF5H.js → ganttDiagram-FUAMR5RP-h3E8lnCd.js} +1 -1
- package/dist/web/assets/{gitGraph-4MIJSDKK-DYSHOl72.js → gitGraph-4MIJSDKK-BUwY-iv2.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-X574FWY7-BGwRHrPq.js → gitGraphDiagram-X574FWY7-C0AgQH5k.js} +1 -1
- package/dist/web/assets/i18n-CfTd46OX.js +1 -0
- package/dist/web/assets/icons-BoaZfGBj.js +1 -0
- package/dist/web/assets/index-BQU3KK1E.css +1 -0
- package/dist/web/assets/index-BTpokWxr.js +2 -0
- package/dist/web/assets/{info-A6RAGUB7-DNWR20pW.js → info-A6RAGUB7-DVMZ4hdK.js} +1 -1
- package/dist/web/assets/{infoDiagram-VRGFBTTK-BhNwJLY5.js → infoDiagram-VRGFBTTK-kLaGXGQ2.js} +1 -1
- package/dist/web/assets/{init-app-cg-B_TFN.js → init-app-Bxc_l2yT.js} +1 -1
- package/dist/web/assets/{is-D0waCELe.js → is-B1kBQ5Va.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-OU5B5YK6-CSkDpn64.js → ishikawaDiagram-OU5B5YK6-Oj7bZlyo.js} +1 -1
- package/dist/web/assets/{journeyDiagram-ZHPQQLJL-D2CEecC3.js → journeyDiagram-ZHPQQLJL-BG7V2Srs.js} +1 -1
- package/dist/web/assets/{kanban-definition-PNTS6WVX-CQHlo4Hh.js → kanban-definition-PNTS6WVX-CIJiDE6d.js} +1 -1
- package/dist/web/assets/{line-C-izH1ks.js → line-D2vEKYRZ.js} +1 -1
- package/dist/web/assets/markdown-Bm2wfvok.js +16 -0
- package/dist/web/assets/mdi-Byw1NZrZ.js +1 -0
- package/dist/web/assets/{mermaid-parser.core-CAGwq6D-.js → mermaid-parser.core-BcBEWjW6.js} +3 -3
- package/dist/web/assets/{mermaid.core--xlI_0tK.js → mermaid.core-DobO0deo.js} +4 -4
- package/dist/web/assets/{mindmap-definition-NLK3R4M7-BuCxhlwy.js → mindmap-definition-NLK3R4M7-y7Qz5gBF.js} +1 -1
- package/dist/web/assets/{packet-AYTQ26CC-Bi7x5lJK.js → packet-AYTQ26CC-oRQgKr9d.js} +1 -1
- package/dist/web/assets/{pegDiagram-GJSIUBJH-qWzBPkCQ.js → pegDiagram-GJSIUBJH-RIU8XOHq.js} +1 -1
- package/dist/web/assets/{pie-WAS4IAKB-Di0wC4XB.js → pie-WAS4IAKB-qmOlsLkx.js} +1 -1
- package/dist/web/assets/{pieDiagram-5QR66LMP-BCDVY9q2.js → pieDiagram-5QR66LMP-BM932TDA.js} +1 -1
- package/dist/web/assets/pinia-BfqEuvsi.js +1 -0
- package/dist/web/assets/pinia-Cmp1GI8k.js +1 -0
- package/dist/web/assets/preview-store-D7qF6SgX.js +2 -0
- package/dist/web/assets/{project-files-store-byqyG2ts.js → project-files-store-OhGs_H7U.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-O4NWA36T-CpFObUjT.js → quadrantDiagram-O4NWA36T-qQZYwTy7.js} +1 -1
- package/dist/web/assets/{radar-RG4KPBEZ-Br8yH8rq.js → radar-RG4KPBEZ-Kdglk6eY.js} +1 -1
- package/dist/web/assets/{railroad-74A4TZTK-CACSqhA-.js → railroad-74A4TZTK-kVhMYx4I.js} +1 -1
- package/dist/web/assets/railroad-abnf-HS5TGJTU-MiKgjOXr.js +1 -0
- package/dist/web/assets/railroad-ebnf-LZEXJU2U-BFL9h7Zx.js +1 -0
- package/dist/web/assets/railroad-peg-WCYAUIDC-ChGGfIn7.js +1 -0
- package/dist/web/assets/{railroadDiagram-XR7U4H2S-sYXRKGK1.js → railroadDiagram-XR7U4H2S-K9SrOGcT.js} +1 -1
- package/dist/web/assets/{render-C7fu7uYY.js → render-Brao9Nj2.js} +1 -1
- package/dist/web/assets/repository-store-DZgQ5H7J.js +1 -0
- package/dist/web/assets/{requirementDiagram-PLB6GJNP-C9I1JbQc.js → requirementDiagram-PLB6GJNP-CtA9ZKEx.js} +1 -1
- package/dist/web/assets/runtime-core.esm-bundler-DDnHUoIy.js +1 -0
- package/dist/web/assets/{safe-storage-C76bPypO.js → safe-storage-CvVvrm4v.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-IPEJSGJF-CuvFQhPh.js → sankeyDiagram-IPEJSGJF-BH_t4exx.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-PO4LG4MO-CaVb9Y6e.js → sequenceDiagram-PO4LG4MO-hPNPqpDa.js} +1 -1
- package/dist/web/assets/single-flight-CyDZB3rb.js +1 -0
- package/dist/web/assets/{stateDiagram-v2-GCMORJYK-Dp_APryr.js → stateDiagram-v2-GCMORJYK-BVmjZDRD.js} +1 -1
- package/dist/web/assets/{swimlanes-2SLR337P-FclUI-k0.js → swimlanes-2SLR337P-Tgk8-6jj.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-TC7HE7FX-W1zDrK61.js +8 -0
- package/dist/web/assets/{terminal-store-BnEkXuBj.js → terminal-store-CKgJjtC6.js} +1 -1
- package/dist/web/assets/theme-slSxLNv6.js +1 -0
- package/dist/web/assets/{timeline-definition-EJHVYXUP-BAqwqj3c.js → timeline-definition-EJHVYXUP-lAIHEGe8.js} +1 -1
- package/dist/web/assets/{treeView-Q6P3EWNA-D87jJbUQ.js → treeView-Q6P3EWNA-CdvzKtWf.js} +1 -1
- package/dist/web/assets/{treemap-WGGIJYW6-B6nhGhRc.js → treemap-WGGIJYW6-BxDSJfrJ.js} +1 -1
- package/dist/web/assets/use-add-agent-context-BSHGL5iV.js +1 -0
- package/dist/web/assets/use-app-theme-fmVV2QM8.js +1 -0
- package/dist/web/assets/use-countdown-D6_qSOZJ.js +1 -0
- package/dist/web/assets/use-notify-error-Dx2D9IEP.js +1 -0
- package/dist/web/assets/{use-panel-width-CjSWCFr4.js → use-panel-width-BYOPuHat.js} +1 -1
- package/dist/web/assets/use-router-link-D7geCGQI.js +1 -0
- package/dist/web/assets/use-row-height-BK8kNihW.js +1 -0
- package/dist/web/assets/use-server-events-CvcbsbIf.js +1 -0
- package/dist/web/assets/use-virtual-scroll-DixIsJk4.js +1 -0
- package/dist/web/assets/{use-workspace-navigation-CnebLvBV.js → use-workspace-navigation-AaRMWmjQ.js} +1 -1
- package/dist/web/assets/{usecaseDiagram-POWQR4AR-7YcIKxAb.js → usecaseDiagram-POWQR4AR-BH3KvMpz.js} +1 -1
- package/dist/web/assets/{vennDiagram-UO4OBE2U-BZq5cFC4.js → vennDiagram-UO4OBE2U-Dfi-raKp.js} +1 -1
- package/dist/web/assets/viewport-store-NqQS7itT.js +1 -0
- package/dist/web/assets/{vue-i18n.runtime-CEtihHHL.js → vue-i18n.runtime-JOo8b7-t.js} +2 -2
- package/dist/web/assets/{wardley-WFR3VGLG-BT8YO9H4.js → wardley-WFR3VGLG-DmbtSM24.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-VNRHLVJA-rDpXFf6D.js → wardleyDiagram-VNRHLVJA-DIzhGvI7.js} +1 -1
- package/dist/web/assets/weighted-lru-BFtZKA_y.js +1 -0
- package/dist/web/assets/workspace-navigation-xfxULfM7.js +1 -0
- package/dist/web/assets/{xychartDiagram-PMCCYNJV-ClniUuZc.js → xychartDiagram-PMCCYNJV-XgqSHH_N.js} +1 -1
- package/dist/web/index.html +9 -9
- package/package.json +5 -3
- package/dist/web/assets/AccessPage-CX3w30zw.js +0 -1
- package/dist/web/assets/AppPage-PFJG281y.js +0 -1
- package/dist/web/assets/CreateButton-Ch0b7juj.js +0 -1
- package/dist/web/assets/CreateReviewFabButton-DTuJzw3q.js +0 -1
- package/dist/web/assets/IndexPage-tgW07Qvs.js +0 -1
- package/dist/web/assets/MainLayout-C6yBhQnf.css +0 -1
- package/dist/web/assets/MainLayout-Cw4jpB1x.js +0 -8
- package/dist/web/assets/NoteVisualEditor-DiGhLhQg.js +0 -1054
- package/dist/web/assets/NotesPage-CVyVr9tl.js +0 -4
- package/dist/web/assets/NotesPage-CxGnZuVQ.css +0 -1
- package/dist/web/assets/PanelResize-B6FP9ZVB.js +0 -1
- package/dist/web/assets/ProjectFilePage-CkxfX9b1.js +0 -1
- package/dist/web/assets/QBtn-CyyV1Bx_.js +0 -1
- package/dist/web/assets/QExpansionItem-Dp9lbdVb.js +0 -4
- package/dist/web/assets/QFab-LOmZ9rev.js +0 -1
- package/dist/web/assets/QInput-Dq6131uz.js +0 -1
- package/dist/web/assets/QSelect-B34OqtIH.js +0 -1
- package/dist/web/assets/QSpace-BhOVGpQh.js +0 -1
- package/dist/web/assets/QVirtualScroll-BYgJ1Kh2.js +0 -1
- package/dist/web/assets/ReviewDetailPage-CkCilMNW.css +0 -1
- package/dist/web/assets/ReviewDetailPage-GNjBa4X0.js +0 -1
- package/dist/web/assets/ReviewsPage-An5fRS92.js +0 -1
- package/dist/web/assets/StatusSwitcher-DrFHHwGm.js +0 -1
- package/dist/web/assets/architecture-7GRP2DOG-BPCNj4lR.js +0 -1
- package/dist/web/assets/channel-CzRYxuLe.js +0 -1
- package/dist/web/assets/create-B9Tn5Xvi.js +0 -1
- package/dist/web/assets/diff-store-B4adGxC2.js +0 -93
- package/dist/web/assets/eventmodeling-NTZA5JFV-BJsTZ_nG.js +0 -1
- package/dist/web/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa-Dr0goTwe.woff +0 -0
- package/dist/web/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ-D-x-0Q06.woff2 +0 -0
- package/dist/web/assets/flowDiagram-KWPJA3E3-CvXh1Df7.js +0 -1
- package/dist/web/assets/i18n-DnlAcIbT.js +0 -1
- package/dist/web/assets/index-Cw7GJi3K.js +0 -2
- package/dist/web/assets/index-wsOPzloa.css +0 -1
- package/dist/web/assets/markdown-CvtLTiBZ.js +0 -16
- package/dist/web/assets/pinia-DO0AdKGg.js +0 -1
- package/dist/web/assets/pinia-uOZCmBi-.js +0 -1
- package/dist/web/assets/preview-store-DyO8G-ox.js +0 -1
- package/dist/web/assets/railroad-abnf-HS5TGJTU-DTBsRB1c.js +0 -1
- package/dist/web/assets/railroad-ebnf-LZEXJU2U-D3mrY4ar.js +0 -1
- package/dist/web/assets/railroad-peg-WCYAUIDC-33ZjWX0u.js +0 -1
- package/dist/web/assets/repository-store-DtRDth1L.js +0 -1
- package/dist/web/assets/runtime-core.esm-bundler-CAvPiMpd.js +0 -1
- package/dist/web/assets/single-flight-fPyIy7h5.js +0 -1
- package/dist/web/assets/swimlanesDiagram-TC7HE7FX-CuUvsn0e.js +0 -8
- package/dist/web/assets/theme-CnbaLamF.js +0 -1
- package/dist/web/assets/use-add-agent-context-xHAjjOf1.js +0 -1
- package/dist/web/assets/use-app-theme-DEowpWRR.js +0 -1
- package/dist/web/assets/use-countdown-DlcwwJrs.js +0 -1
- package/dist/web/assets/use-router-link-CUoYaYUw.js +0 -1
- package/dist/web/assets/use-row-height-BsE9-rO2.js +0 -1
- package/dist/web/assets/use-server-events-C2X4Xz00.js +0 -1
- package/dist/web/assets/use-virtual-scroll-BAZGswHv.js +0 -1
- package/dist/web/assets/viewport-store-CCHiY2QG.js +0 -1
- package/dist/web/assets/weighted-lru-BGovtJ2a.js +0 -1
- package/dist/web/assets/workspace-navigation-DdW0rSGz.js +0 -1
- /package/dist/web/assets/{PanelResize-XjrbOj2S.css → AddToAgentButton-XjrbOj2S.css} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalView-tEyLM5qZ.js","assets/runtime-core.esm-bundler-DDnHUoIy.js","assets/use-router-link-D7geCGQI.js","assets/QInput-BnqLJGXl.js","assets/event-rR76ioXz.js","assets/is-B1kBQ5Va.js","assets/create-DedXY-KP.js","assets/debounce-rZaFFwsz.js","assets/render-Brao9Nj2.js","assets/uid-B1JNhznI.js","assets/QBtn-V3VXtJXi.js","assets/use-dark-BHObfh0O.js","assets/index-BTpokWxr.js","assets/index-BQU3KK1E.css","assets/vue-i18n.runtime-JOo8b7-t.js","assets/mdi-Byw1NZrZ.js","assets/agent-store-Grbx4jkz.js","assets/pinia-BfqEuvsi.js","assets/single-flight-CyDZB3rb.js","assets/safe-storage-CvVvrm4v.js","assets/use-server-events-CvcbsbIf.js","assets/terminal-store-CKgJjtC6.js","assets/_plugin-vue_export-helper-BDNMzG2s.js","assets/QScrollArea-js5dkUz1.js","assets/ClosePopup-BtDeDZsk.js","assets/use-workspace-navigation-AaRMWmjQ.js","assets/workspace-navigation-xfxULfM7.js","assets/TerminalView-BCeke4xd.css","assets/PdfPreview-2NQ5gkjh.js","assets/PdfPreview-l_xzsLJ_.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{A as t,B as n,D as r,G as i,H as a,I as o,K as s,L as c,M as l,N as u,Nt as d,P as f,Pt as p,Q as m,S as h,T as g,V as _,Y as v,Z as y,_ as b,at as x,b as S,ct as C,d as w,dt as T,f as E,g as D,gt as O,h as k,ht as A,it as ee,jt as j,l as M,lt as N,o as te,ot as ne,p as P,pt as re,q as F,r as I,st as ie,u as L,ut as ae,v as oe,w as se,y as R,z}from"./runtime-core.esm-bundler-DDnHUoIy.js";import{_ as ce,c as le,d as ue,f as de,g as fe,i as pe,v as B}from"./use-router-link-D7geCGQI.js";import{a as me,c as he,i as ge,o as _e,r as ve,u as ye}from"./event-rR76ioXz.js";import{c as be,s as V}from"./is-B1kBQ5Va.js";import{n as xe,t as H}from"./create-DedXY-KP.js";import{a as U,d as Se,i as Ce,l as we,o as Te,r as Ee}from"./render-Brao9Nj2.js";import{t as De}from"./QInput-BnqLJGXl.js";import{a as Oe,c as ke,i as W,l as G,o as Ae,s as je,t as K}from"./QBtn-V3VXtJXi.js";import{n as Me,t as Ne}from"./use-dark-BHObfh0O.js";import{$ as Pe,A as Fe,F as Ie,G as Le,I as Re,N as q,P as J,T as ze,W as Be,a as Ve,c as He,et as Ue,f as We,it as Ge,j as Ke,k as qe,l as Je,m as Ye,o as Xe,p as Ze,s as Qe,t as $e,tt as et,y as tt}from"./index-BTpokWxr.js";import{n as Y}from"./vue-i18n.runtime-JOo8b7-t.js";import{Bt as nt,C as rt,Dt as it,E as at,Ft as ot,G as st,Gt as ct,Ht as lt,I as ut,It as dt,L as ft,Mt as pt,N as mt,Nt as ht,Ot as gt,P as _t,R as vt,Vt as yt,Wt as bt,X as xt,Z as St,_ as Ct,_t as wt,b as Tt,bt as Et,en as Dt,f as Ot,g as kt,gt as At,in as jt,j as Mt,jt as Nt,k as Pt,nn as Ft,o as It,p as Lt,r as Rt,rn as zt,u as Bt,ut as Vt,v as Ht,w as Ut,x as Wt,y as Gt,z as Kt}from"./mdi-Byw1NZrZ.js";import{n as qt,r as Jt}from"./pinia-BfqEuvsi.js";import{a as Yt,c as Xt,h as Zt,n as Qt,r as $t,t as en}from"./single-flight-CyDZB3rb.js";import{t as tn}from"./repository-store-DZgQ5H7J.js";import{A as nn,B as rn,C as an,D as on,E as sn,F as cn,I as ln,L as un,M as dn,O as fn,P as pn,R as mn,T as hn,j as gn,n as _n,t as X,w as vn,x as yn,z as bn}from"./agent-store-Grbx4jkz.js";import{a as xn,i as Sn,n as Cn,r as wn,t as Tn}from"./terminal-store-CKgJjtC6.js";import{t as En}from"./safe-storage-CvVvrm4v.js";import{n as Dn,r as On}from"./use-server-events-CvcbsbIf.js";import{n as kn,t as An}from"./devices-store-Bfk2wdrQ.js";import{t as jn}from"./access-store-CwkOl71l.js";import{n as Mn}from"./use-app-theme-fmVV2QM8.js";import{i as Nn,r as Pn,t as Fn}from"./QSpace-C7iAnGlU.js";import{c as In,n as Ln}from"./workspace-navigation-xfxULfM7.js";import{a as Rn,i as zn,n as Bn,o as Vn,r as Hn,t as Un}from"./AddButton-CMC9qf51.js";import{r as Wn}from"./use-virtual-scroll-DixIsJk4.js";import{a as Gn,c as Kn,l as Z,n as qn,o as Jn,s as Yn,t as Xn,u as Q}from"./ClosePopup-BtDeDZsk.js";import{t as $}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{i as Zn,n as Qn,r as $n,t as er}from"./QScrollArea-js5dkUz1.js";import{n as tr,t as nr}from"./use-workspace-navigation-AaRMWmjQ.js";import{a as rr,c as ir,f as ar,i as or,l as sr,n as cr,o as lr,s as ur,t as dr}from"./preview-store-D7qF6SgX.js";import{t as fr}from"./viewport-store-NqQS7itT.js";import{n as pr,t as mr}from"./QTabs-DIy5gWMb.js";import{c as hr,i as gr,l as _r,n as vr,o as yr,r as br,s as xr,t as Sr,u as Cr}from"./ArtifactDefinitionPicker-BQOoU60k.js";import{l as wr,o as Tr,t as Er}from"./use-row-height-BK8kNihW.js";import{r as Dr,t as Or}from"./DialogHeader-CQvAZVx7.js";import{a as kr,o as Ar,t as jr}from"./date-DZIuZp-w.js";import{t as Mr}from"./QVirtualScroll-DkD0TczV.js";import{t as Nr}from"./use-notify-error-Dx2D9IEP.js";import{t as Pr}from"./QForm-ClpSneeD.js";import{r as Fr}from"./use-panel-width-BYOPuHat.js";import{t as Ir}from"./use-countdown-D6_qSOZJ.js";var Lr=e=>e.trim().toLowerCase();function Rr(e,t){let n=new Set(t.map(Lr)),r=e.trim();if(!n.has(Lr(r)))return r;for(let e=1;;e++){let t=`${r} (${e})`;if(!n.has(Lr(t)))return t}}function zr(e,t){return`http://${e.includes(`:`)?`[${e}]`:e}:${t}`}var Br=[`aria-label`],Vr={key:2,class:`preview-controls__divider`},Hr={class:`preview-controls__number preview-controls__scale`},Ur={key:3,class:`preview-controls__divider`},Wr={key:4,class:`preview-controls__status`},Gr=$(R({__name:`PreviewControls`,props:{page:{default:0},pages:{},scale:{},busy:{type:Boolean,default:!1}},emits:[`navigate`,`zoom`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),P(`div`,{class:`preview-controls row items-center no-wrap`,onClick:i[4]||=B(()=>{},[`stop`])},[e.pages===void 0?E(``,!0):(o(),w(K,{key:0,class:`app-icon-control`,flat:``,dense:``,size:`var(--control-size-compact)`,icon:O(Tt),disable:e.page<=1,"aria-label":O(r)(`windows.pdfPrevious`),onClick:i[0]||=e=>n(`navigate`,-1)},null,8,[`icon`,`disable`,`aria-label`])),e.pages===void 0?E(``,!0):(o(),P(`span`,{key:1,class:`preview-controls__value`,"aria-label":O(r)(`windows.pdfPage`,{page:e.page})},[L(`span`,{class:`preview-controls__number preview-controls__page`,style:d({width:`calc(${String(e.pages).length}ch + 8px)`})},p(e.page),5),D(` / `+p(e.pages),1)],8,Br)),e.pages===void 0?E(``,!0):(o(),P(`span`,Vr)),b(K,{class:`app-icon-control`,flat:``,dense:``,size:`var(--control-size-compact)`,icon:O(pt),disable:e.scale<=O(dn),"aria-label":O(r)(`windows.zoomOut`),onClick:i[1]||=e=>n(`zoom`,-O(.25))},null,8,[`icon`,`disable`,`aria-label`]),L(`span`,Hr,p(Math.round(e.scale*100))+`%`,1),b(K,{class:`app-icon-control`,flat:``,dense:``,size:`var(--control-size-compact)`,icon:O(dt),disable:e.scale>=O(4),"aria-label":O(r)(`windows.zoomIn`),onClick:i[2]||=e=>n(`zoom`,O(.25))},null,8,[`icon`,`disable`,`aria-label`]),e.pages===void 0?E(``,!0):(o(),P(`span`,Ur)),e.pages===void 0?E(``,!0):(o(),P(`span`,Wr,[m(b(Oe,{size:`11px`},null,512),[[fe,e.busy]])])),e.pages===void 0?E(``,!0):(o(),w(K,{key:5,class:`app-icon-control`,flat:``,dense:``,size:`var(--control-size-compact)`,icon:O(Wt),disable:!e.pages||e.page>=e.pages,"aria-label":O(r)(`windows.pdfNext`),onClick:i[3]||=e=>n(`navigate`,1)},null,8,[`icon`,`disable`,`aria-label`]))]))}}),[[`__scopeId`,`data-v-2b9f0aa5`]]),Kr=H({name:`QPageContainer`,setup(e,{slots:t}){let n=U(),r=se(we,Te);if(r===Te)return console.error(`QPageContainer needs to be child of QLayout`),Te;c(Se,!0);let i=M(()=>{let e={};return r.header.space&&(e.paddingTop=`${r.header.size}px`),r.right.space&&(e[`padding${n.lang.rtl?`Left`:`Right`}`]=`${r.right.size}px`),r.footer.space&&(e.paddingBottom=`${r.footer.size}px`),r.left.space&&(e[`padding${n.lang.rtl?`Right`:`Left`}`]=`${r.left.size}px`),e});return()=>h(`div`,{class:`q-page-container`,style:i.value},Ee(t.default))}}),qr=/^(h|l)h(h|r) lpr (f|l)f(f|r)$/,Jr=H({name:`QLayout`,props:{container:Boolean,view:{type:String,default:`hhh lpr fff`,validator:e=>qr.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:t,emit:n}){let r=U(),i=T(null),a=T(null),o=()=>e.container?a.value:i.value,s=N(r.screen.height),l=N(e.container?0:r.screen.width),u=N({position:0,direction:`down`,inflectionPoint:0}),d=N(0),p=N(be.value?0:tt()),m=M(()=>`q-layout q-layout--`+(e.container?`containerized`:`standard`)),g=M(()=>e.container?null:{minHeight:r.screen.height+`px`}),_=M(()=>p.value===0?null:{[r.lang.rtl?`left`:`right`]:`${p.value}px`}),y=M(()=>p.value===0?null:{[r.lang.rtl?`right`:`left`]:0,[r.lang.rtl?`left`:`right`]:`-${p.value}px`,width:`calc(100% + ${p.value}px)`}),b=null;function x(t){let n={position:t.position.top,direction:t.direction,directionChanged:t.directionChanged,inflectionPoint:t.inflectionPoint.top,delta:t.delta.top};e.container||!document.qScrollPrevented?(b=null,S(n)):b=n}function S(t){u.value=t,e.onScroll!==void 0&&n(`scroll`,t)}function C(t){let{height:r,width:i}=t,a=!1;s.value!==r&&(a=!0,s.value=r,e.onScrollHeight!==void 0&&n(`scrollHeight`,r),E()),l.value!==i&&(a=!0,l.value=i),a&&e.onResize!==void 0&&n(`resize`,t)}function w({height:e}){d.value!==e&&(d.value=e,E())}function E(){if(e.container){let e=s.value>d.value?tt():0;p.value!==e&&(p.value=e)}}$n({target:o,onScroll:x}),Zn({target:o,debounce:100,onResize:C}),Zn(()=>({target:i,debounce:100,disabled:e.container!==!0,onResize:w}));let D=null,O={instances:{},view:M(()=>e.view),isContainer:M(()=>e.container),rootRef:i,height:s,containerHeight:d,scrollbarWidth:p,totalWidth:M(()=>e.container?l.value+p.value:r.screen.width),rows:M(()=>{let t=e.view.toLowerCase().split(` `);return{top:[...t[0]],middle:[...t[1]],bottom:[...t[2]]}}),header:ie({size:0,offset:0,space:!1}),right:ie({size:300,offset:0,space:!1}),footer:ie({size:0,offset:0,space:!1}),left:ie({size:300,offset:0,space:!1}),scroll:u,animate(){D===null?document.body.classList.add(`q-body--layout-animate`):clearTimeout(D),D=setTimeout(()=>{D=null,document.body.classList.remove(`q-body--layout-animate`)},155)},update(e,t,n){O[e][t]=n}};c(we,O);{let e=()=>{if(b!==null){let e=b;b=null,S(e)}};Ze(e),f(()=>{Ye(e)})}if(tt()>0){let t=null,n=document.documentElement,i=()=>{t=null,n.classList.remove(`hide-scrollbar`)},a=()=>{if(t===null){if(n.scrollHeight>r.screen.height)return;n.classList.add(`hide-scrollbar`)}else clearTimeout(t);t=setTimeout(i,300)},o=e=>{t!==null&&e===`remove`&&(clearTimeout(t),i()),window[`${e}EventListener`](`resize`,a)};v(()=>e.container?`remove`:`add`,o),e.container||o(`add`),f(()=>{o(`remove`)})}return()=>{let n=h(`div`,{class:m.value,style:g.value,ref:e.container?a:i,tabindex:-1},Ee(t.default));return e.container?h(`div`,{class:`q-layout-container overflow-hidden`,ref:i},[h(`div`,{class:`absolute-full`,style:_.value},[h(`div`,{class:`scroll`,style:y.value},[n])])]):n}}});function Yr(){let e=T([]);function t(t){if(e.value.some(e=>e.id===t.id))throw Error(`Application already registered: ${t.id}`);let n={...t};n.component&&=x(n.component);let r=t.persistence,i=`githuman:application:${t.id}`;if(r)try{let e=JSON.parse(En.get(i)??`null`);Zt(e)&&typeof e.version==`number`&&r.restore(e.data,e.version)}catch{}let a=r?v(()=>r.serialize(),e=>{En.set(i,JSON.stringify({version:r.version,data:e}))},{deep:!0}):()=>{};return e.value=[...e.value,n],()=>{a(),e.value=e.value.filter(e=>e!==n)}}return{applications:e,register:t}}var Xr=qt(`window-applications`,Yr),Zr={ctrl:`ctrl`,control:`ctrl`,alt:`alt`,option:`alt`,shift:`shift`,meta:`meta`,cmd:`meta`,command:`meta`,win:`meta`,super:`meta`,mod:`mod`},Qr={ctrl:`control`,alt:`alt`,shift:`shift`,meta:`meta`},$r={esc:`escape`,space:` `,spacebar:` `,plus:`+`,return:`enter`,up:`arrowup`,down:`arrowdown`,left:`arrowleft`,right:`arrowright`},ei=/^key[a-z]$/,ti=/^(digit\d|numpad(\d|add|subtract|multiply|divide|decimal|comma|equal)|minus|equal|bracketleft|bracketright|backslash|semicolon|quote|backquote|comma|period|slash|intlbackslash|intlro|intlyen)$/,ni=/^[a-z]$/,ri=V.is.mac===!0?`meta`:`ctrl`,ii=/^(button|checkbox|radio|submit|reset|file|range|color|image)$/;function ai(e){return e===`mod`?ri:e}function oi(e){let t=e.split(`+`),n=t.at(-1),r=n===``&&t.length>1?`+`:n.trim();if(r===``)return null;let i={shortcut:e,key:r.toLowerCase(),ctrl:!1,alt:!1,shift:!1,meta:!1};i.key=$r[i.key]??i.key;for(let e=0;e<t.length-1;e++){let n=t[e].trim().toLowerCase();if(n===``)continue;let r=Zr[n];if(r===void 0)return null;i[ai(r)]=!0}let a=Zr[i.key];if(a!==void 0){let e=ai(a);i[e]=!0,i.key=Qr[e]}let o=i.key.length===1,s=o?!ni.test(i.key):ti.test(i.key);return i.typing=!i.ctrl&&!i.alt&&!i.meta&&(o||s||ei.test(i.key)),i.anyShift=!i.shift&&s,i}function si(e){let t=Array.isArray(e)?e:[e],n=[];return t.forEach(e=>{if(typeof e==`string`){let t=oi(e);t!==null&&n.push(t)}}),n}function ci(e){if(e==null)return!1;if(e.isContentEditable===!0)return!0;let t=e.tagName;return t===`INPUT`?!ii.test(e.type):t===`TEXTAREA`||t===`SELECT`}function li(e,t,n,r){return e.ctrl===t.ctrlKey&&e.alt===t.altKey&&e.meta===t.metaKey&&(e.anyShift||e.shift===t.shiftKey)&&(e.key===n||e.key===r)}function ui(e,t,n){let r=M(()=>si(A(e)));function i(e){if(ue(e)||typeof e.key!=`string`)return;let i=A(n)??{};if(e.repeat&&i.repeat!==!0)return;let a=r.value;if(a.length===0)return;let o=e.key.toLowerCase(),s=typeof e.code==`string`?e.code.toLowerCase():``,c=i.ignoreInputs!==!1&&ci(e.target);for(let n of a)if((!c||!n.typing)&&li(n,e,o,s)){i.preventDefault!==!1&&e.preventDefault(),t(e,n.shortcut);return}}let{stopEventListener:a}=q(()=>A(A(n)?.target)??window,()=>A(n)?.keyup===!0?`keyup`:`keydown`,i,()=>{let e=A(n)??{};return{capture:e.capture===!0,disabled:e.disabled===!0}});return{stopKeyboardShortcut:a}}var di=[`Ctrl+Meta+ArrowLeft`,`Ctrl+Meta+ArrowRight`,`Ctrl+Meta+ArrowUp`,`Ctrl+Meta+ArrowDown`,`Ctrl+Meta+KeyM`,`Ctrl+Meta+KeyT`,`Ctrl+Shift+Backquote`];function fi(e,t,n){if(n)return!1;if(e===`Ctrl+Meta+KeyT`||e===`Ctrl+Shift+Backquote`)return t.terminalAvailable()?(e===`Ctrl+Meta+KeyT`?t.createTerminal():t.toggleTerminal(),!0):!1;if(e===`Ctrl+Meta+KeyM`)return t.minimizeAll(),!0;let r=t.activeId;if(!r)return e===`Ctrl+Meta+ArrowUp`&&t.restoreLastMinimized();switch(e){case`Ctrl+Meta+ArrowLeft`:t.toggleMode(r,`left`);break;case`Ctrl+Meta+ArrowRight`:t.toggleMode(r,`right`);break;case`Ctrl+Meta+ArrowUp`:t.toggleMode(r,`maximized`);break;case`Ctrl+Meta+ArrowDown`:t.minimize(r);break;default:return!1}return!0}function pi(){let e=tr(),t=yn(),n=Xr(),i=()=>n.applications.find(e=>e.id===ln);ui(di,async(n,a)=>{if(e.narrow.value)return;let o=!1;fi(a,{activeId:t.activeId,toggleMode:t.toggleMode,minimize:t.minimize,minimizeAll:t.minimizeAll,restoreLastMinimized:()=>(o=t.restoreLastMinimized(),o),createTerminal:()=>{i()?.create?.()},toggleTerminal:()=>{let e=t.ensure(`terminal`);e.open&&!e.minimized?t.minimize(`terminal`):i()?.activate()},terminalAvailable:()=>i()?.availability().enabled===!0},document.querySelector(`[role="dialog"][aria-modal="true"]`)!==null)&&(n.preventDefault(),n.stopImmediatePropagation()),o&&(await r(),vn(t.activeId))},{capture:!0,preventDefault:!1}),v(()=>t.activeId,async(n,i)=>{let a=i?t.windows[i]:null;e.narrow.value||a&&(!a.open||a.minimized)&&(await r(),vn(n))})}function mi(e,t){let n=yn(),r=tr();ui(`Ctrl+Meta+KeyW`,e=>{document.querySelector(`[role="dialog"][aria-modal="true"]`)||(e.preventDefault(),e.stopImmediatePropagation(),t())},()=>({capture:!0,preventDefault:!1,disabled:r.narrow.value?r.window.value!==e:!n.isActive(e)}))}var hi={x:0,y:0};function gi(e,t){let n=yn(),r=U(),i=fr(),a=M(()=>Ln(r.screen.width)),o=n.ensure(e),s=M(()=>({width:r.screen.width,height:r.screen.height})),c=M(()=>Sn(o,s.value,a.value?{x:i.metrics.offsetLeft,y:i.metrics.offsetTop,width:i.metrics.width||s.value.width,height:i.metrics.height||s.value.height}:void 0)),l=M(()=>({width:c.value.width,height:c.value.height})),u=M(()=>({x:c.value.x,y:c.value.y})),d=M(()=>({left:`${u.value.x}px`,top:`${u.value.y}px`,width:`${l.value.width}px`,height:`${l.value.height}px`,zIndex:un+Math.max(0,n.order.indexOf(e))})),f={...hi},p=null;function m(t){if(!(a.value||o.maximized)){if(t.isFirst){if(o.mode===`left`||o.mode===`right`){let n={...u.value,...l.value};gn(e,()=>{o.mode=`normal`});let r=t.position?.left??n.x+n.width/2,i=t.position?.top??n.y+24,a=Math.max(0,Math.min(1,(r-n.x)/n.width));o.position=wn({x:r-l.value.width*a,y:i-Math.min(24,i-n.y)},l.value,s.value)}f={...u.value},n.focus(e)}o.position=wn({x:f.x+(t.offset?.x??0),y:f.y+(t.offset?.y??0)},l.value,s.value),t.isFinal&&n.remember()}}function h(t,r){if(a.value||o.maximized||t.button!==0||!(t.currentTarget instanceof Element))return;t.preventDefault(),n.focus(e),t.currentTarget.setPointerCapture(t.pointerId);let i={...u.value,...l.value};(o.mode===`left`||o.mode===`right`)&&(gn(e,()=>{o.mode=`normal`}),o.position={x:i.x,y:i.y},o.windowSize={width:i.width,height:i.height}),p={edge:r,pointerId:t.pointerId,start:i,pointer:{x:t.clientX,y:t.clientY}}}function g(e){if(a.value){p=null;return}if(p?.pointerId!==e.pointerId)return;let n=xn(p.start,p.edge,{x:e.clientX-p.pointer.x,y:e.clientY-p.pointer.y},s.value,t);o.position={x:n.x,y:n.y},o.windowSize={width:n.width,height:n.height}}function _(e){p?.pointerId===e.pointerId&&(p=null,n.remember())}return{state:o,viewport:s,size:l,position:u,style:d,drag:m,start:h,move:g,end:_}}var _i=R({__name:`TerminalWindowMenu`,props:{maximized:{type:Boolean},narrow:{type:Boolean},connected:{type:Boolean},originalColors:{type:Boolean}},emits:[`toggleOriginalColors`,`minimize`,`toggleMaximized`,`closeAll`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),w(qn,null,{default:y(()=>[b(Kn,{dense:``},{default:y(()=>[b(Z,{clickable:``,onClick:i[0]||=e=>n(`toggleOriginalColors`)},{default:y(()=>[b(Q,{side:``,class:`q-pr-xs`},{default:y(()=>[b(G,{class:`app-icon-neutral`,size:`16px`,name:e.originalColors?O(Ct):O(kt)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(r)(`terminal.originalColors`)),1)]),_:1})]),_:1}),b(Ve),e.narrow?E(``,!0):m((o(),w(Z,{key:0,clickable:``,onClick:i[1]||=e=>n(`minimize`)},{default:y(()=>[b(Q,null,{default:y(()=>[D(p(O(r)(`terminal.minimize`)),1)]),_:1})]),_:1})),[[Xn]]),e.narrow?E(``,!0):m((o(),w(Z,{key:1,clickable:``,onClick:i[2]||=e=>n(`toggleMaximized`)},{default:y(()=>[b(Q,null,{default:y(()=>[D(p(O(r)(e.maximized?`terminal.restore`:`terminal.maximize`)),1)]),_:1})]),_:1})),[[Xn]]),m((o(),w(Z,{clickable:``,disable:!e.connected,onClick:i[3]||=e=>n(`closeAll`)},{default:y(()=>[b(Q,null,{default:y(()=>[D(p(O(r)(`terminal.closeAll`)),1)]),_:1})]),_:1},8,[`disable`])),[[Xn]])]),_:1})]),_:1}))}}),vi={class:`window-header row items-center no-wrap`},yi=$(R({__name:`TerminalWindowHeader`,props:{maximized:{type:Boolean},narrow:{type:Boolean},connected:{type:Boolean},originalColors:{type:Boolean}},emits:[`drag`,`toggleOriginalColors`,`minimize`,`toggleMaximized`,`closeAll`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=M(()=>i(n.maximized?`terminal.restore`:`terminal.maximize`));return(t,n)=>(o(),P(`div`,vi,[m((o(),P(`div`,{class:j([`window-header__title terminal-header__drag col row items-center`,{"terminal-header__drag--static":e.maximized}]),onDblclick:n[0]||=t=>!e.narrow&&r(`toggleMaximized`)},[b(G,{size:`16px`,name:O(Mt),class:`app-icon-neutral q-mr-sm`},null,8,[`name`]),L(`span`,null,p(O(i)(`terminal.title`)),1)],34)),[[Gn,e.narrow?void 0:e=>r(`drag`,e),void 0,{prevent:!0,mouse:!0}]]),b(K,{flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:O(mt),"aria-label":O(i)(`terminal.menu`)},{default:y(()=>[b(_i,{maximized:e.maximized,narrow:e.narrow,connected:e.connected,"original-colors":e.originalColors,onToggleOriginalColors:n[1]||=e=>r(`toggleOriginalColors`),onMinimize:n[2]||=e=>r(`minimize`),onToggleMaximized:n[3]||=e=>r(`toggleMaximized`),onCloseAll:n[4]||=e=>r(`closeAll`)},null,8,[`maximized`,`narrow`,`connected`,`original-colors`])]),_:1},8,[`icon`,`aria-label`]),e.narrow?E(``,!0):(o(),w(K,{key:0,flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:O(jt),"aria-label":O(i)(`terminal.minimize`),onClick:n[5]||=e=>r(`minimize`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(i)(`terminal.minimize`))+` · Ctrl+Win+↓`,1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`])),e.narrow?E(``,!0):(o(),w(K,{key:1,flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:e.maximized?O(Ht):O(kt),"aria-label":a.value,onClick:n[6]||=e=>r(`toggleMaximized`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(a.value)+` · Ctrl+Win+↑`,1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`])),b(K,{flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:O(Ut),disable:!e.connected,"aria-label":O(i)(`terminal.closeAll`),onClick:n[7]||=e=>r(`closeAll`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(i)(`terminal.closeAll`)),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`disable`,`aria-label`])]))}}),[[`__scopeId`,`data-v-6949977d`]]),bi={class:`terminal-tabs row items-center no-wrap`},xi={class:`row items-center no-wrap terminal-tab__body`},Si={class:`terminal-tab__name ellipsis`},Ci=$(R({__name:`TerminalTabs`,props:{sessions:{},activeId:{},busy:{type:Boolean},connected:{type:Boolean}},emits:[`activate`,`create`,`requestClose`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),P(`div`,bi,[b(mr,{"model-value":e.activeId??void 0,dense:``,shrink:``,"no-caps":``,"outside-arrows":``,"mobile-arrows":``,align:`left`,"active-color":`primary`,"indicator-color":`primary`,class:`terminal-tabs__tabs`,"onUpdate:modelValue":i[0]||=e=>n(`activate`,String(e))},{default:y(()=>[(o(!0),P(I,null,z(e.sessions,t=>(o(),w(pr,{key:t.id,name:t.id,ripple:!1,class:`terminal-tab`},{default:y(()=>[L(`div`,xi,[L(`span`,Si,p(O(Cn)(t.title)),1),b(K,{flat:``,round:``,dense:``,size:`xs`,icon:O(Ut),class:`app-icon-control q-ml-xs`,disable:!e.connected,"aria-label":O(r)(`terminal.closeTab`),onClick:B(e=>n(`requestClose`,t.id),[`stop`,`prevent`])},null,8,[`icon`,`disable`,`aria-label`,`onClick`]),b(J,{delay:O(500)},{default:y(()=>[D(p(t.title),1)]),_:2},1032,[`delay`])])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`]),b(K,{flat:``,round:``,dense:``,size:`sm`,icon:O(dt),class:`app-icon-control q-mx-xs`,loading:e.busy,disable:!e.connected||e.sessions.length>=O(8),"aria-label":O(r)(`terminal.add`),onClick:i[1]||=e=>n(`create`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(r)(`terminal.add`)),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`loading`,`disable`,`aria-label`])]))}}),[[`__scopeId`,`data-v-7838bca7`]]),wi=R({__name:`TerminalLimitedBanner`,setup(e){let{t}=Y();return(e,n)=>(o(),w(Nn,{dense:``,class:`bg-orange-2 text-dark text-caption`},{default:y(()=>[D(p(O(t)(`terminal.limited`)),1)]),_:1}))}});function Ti(e){let t=e.cloneNode(!0);if(!(t instanceof HTMLElement))throw Error(`Invalid window snapshot`);t.inert=!0,t.setAttribute(`aria-hidden`,`true`);for(let e of[t,...t.querySelectorAll(`*`)])e.removeAttribute(`id`);let n=e.querySelectorAll(`canvas`),r=t.querySelectorAll(`canvas`);return n.forEach((e,t)=>{let n=r[t];n&&e.width&&e.height&&n.getContext(`2d`)?.drawImage(e,0,0)}),t}function Ei(e){let t=[e,...e.querySelectorAll(`*`)].map(e=>({top:e.scrollTop,left:e.scrollLeft}));return e=>{let n=[e,...e.querySelectorAll(`*`)];t.forEach((e,t)=>{let r=n[t];r&&(r.scrollTop=e.top,r.scrollLeft=e.left)})}}var Di=1050,Oi=.2;function ki(e,n,i){let a=yn(),o=U(),s=window.matchMedia(`(prefers-reduced-motion: reduce)`),{registerTimeout:c,removeTimeout:l}=Be();function d(){return s.matches&&!1}let f=!1,p=0,m,h;v(i,t=>{h?.(),h=t?fn(e,t):void 0},{flush:`post`}),u(()=>{f=!0});function g(){m?.()}q(document,`visibilitychange`,()=>{document.hidden&&g()}),q(window,`resize`,g),q(s,`change`,()=>{d()&&g()}),v(()=>[n.open,n.minimized,n.mode],(t,n)=>{g();let s=++p,u=t[0]&&!t[1],h=n[0]&&!n[1],_=an(e);if(!f||Ln(o.screen.width)||hn(e)||document.hidden||d()||!_||!u&&!h)return;let v=i.value,y=h&&v?v.getBoundingClientRect():_.getBoundingClientRect(),b=h&&v?Ei(v):void 0,x=null,S=null,C,w,T=new Promise(e=>{w=e}),E=!1;function D(){E||(E=!0,C?.cancel(),S?.remove(),v&&(v.style.visibility=``),i.value&&(i.value.style.visibility=``),m===D&&(m=void 0,l()),w(),u&&!h&&a.isActive(e)&&!Ln(o.screen.width)&&vn(e))}m=D,nn(e,T),c(D,Di);try{x=h&&v?Ti(v):null,v&&(v.style.visibility=`hidden`),r().then(async()=>{if(await r(),!(E||p!==s))try{let e=i.value;if(!x&&e&&(x=Ti(e),b=Ei(e)),!x||u&&!e){D();return}let t=u?e.getBoundingClientRect():_.getBoundingClientRect(),n=h?y:t;if(!y.width||!y.height||!t.width||!t.height){D();return}S=document.createElement(`div`),S.className=`window-motion-layer`,S.inert=!0,S.setAttribute(`aria-hidden`,`true`),Object.assign(S.style,{position:`fixed`,pointerEvents:`none`,overflow:`hidden`,zIndex:e?.style.zIndex||v?.style.zIndex||`2500`,transformOrigin:`0 0`}),Object.assign(x.style,{position:`absolute`,left:`0`,top:`0`,width:`${n.width}px`,height:`${n.height}px`,visibility:`visible`,transformOrigin:`0 0`,display:`flex`}),S.append(x),document.body.append(S),b?.(x),e&&(e.style.visibility=`hidden`),Object.assign(S.style,{left:`0`,top:`0`,width:`${n.width}px`,height:`${n.height}px`,overflow:`visible`,willChange:`transform, opacity`});let r=e=>`translate(${e.left}px, ${e.top}px) scale(${e.width/n.width}, ${e.height/n.height})`;S.style.transform=r(y),C=S.animate([{transform:r(y),opacity:h?1:Oi},{transform:r(t),opacity:u?1:Oi}],{duration:300,easing:h?u?rn:bn:mn,fill:`forwards`}),C.addEventListener(`finish`,D,{once:!0}),C.addEventListener(`cancel`,D,{once:!0});return}catch{D();return}})}catch{D()}},{flush:`sync`}),t(()=>{p++,g(),h?.()})}var Ai=[`onPointerdown`],ji=$(R({__name:`WindowResizeHandles`,props:{windowId:{},minimum:{}},setup(e){let t=e,n=gi(t.windowId,t.minimum);return(e,t)=>(o(!0),P(I,null,z(O(cn),e=>(o(),P(`div`,{key:e,class:j([`terminal-resize`,`terminal-resize--`+e]),onPointerdown:t=>O(n).start(t,e),onPointermove:t[0]||=(...e)=>O(n).move&&O(n).move(...e),onPointerup:t[1]||=(...e)=>O(n).end&&O(n).end(...e),onPointercancel:t[2]||=(...e)=>O(n).end&&O(n).end(...e),onLostpointercapture:t[3]||=(...e)=>O(n).end&&O(n).end(...e)},null,42,Ai))),128))}}),[[`__scopeId`,`data-v-662195a2`]]),Mi=[`data-window-id`,`aria-label`],Ni={key:0,class:`row items-center no-wrap q-px-sm`},Pi={class:`ellipsis`},Fi={class:`floating-window__body`},Ii=$(R({__name:`FloatingWindow`,props:{windowId:{},title:{},minimum:{}},setup(e){let t=e,r=yn(),i=tr(),a=N(!1),{t:s}=Y(),{state:c,style:l}=gi(t.windowId);v(()=>[i.window.value===t.windowId,c.open],([e,t])=>{e?a.value=!0:t||(a.value=!1)},{immediate:!0});let u=F(`window`);return ki(t.windowId,c,u),(t,u)=>O(c).open||a.value?m((o(),P(`section`,{key:0,ref:`window`,tabindex:`-1`,"data-window-id":e.windowId,class:j([`floating-window`,{"floating-window--maximized":O(c).maximized||O(i).narrow.value,"floating-window--narrow":O(i).narrow.value}]),style:d(O(l)),"aria-label":e.title,onPointerdownCapture:u[0]||=t=>!O(i).narrow.value&&O(r).focus(e.windowId),onFocusin:u[1]||=t=>!O(i).narrow.value&&O(r).focus(e.windowId)},[L(`div`,{class:j([`floating-window__frame`,t.$q.dark.isActive?`bg-dark text-white`:`bg-white text-dark`])},[O(i).narrow.value?(o(),P(`div`,Ni,[b(K,{class:`app-icon-control`,flat:``,round:``,icon:O(It),"aria-label":O(s)(`workspace.back`),onClick:O(i).back},null,8,[`icon`,`aria-label`,`onClick`]),L(`span`,Pi,p(e.title),1)])):E(``,!0),n(t.$slots,`header`,{},void 0,!0),L(`div`,Fi,[n(t.$slots,`default`,{},void 0,!0)])],2),!O(c).maximized&&!O(i).narrow.value?(o(),w(ji,{key:0,"window-id":e.windowId,minimum:e.minimum},null,8,[`window-id`,`minimum`])):E(``,!0)],46,Mi)),[[fe,O(i).narrow.value?O(i).window.value===e.windowId:O(c).open&&!O(c).minimized]]):E(``,!0)}}),[[`__scopeId`,`data-v-2e47f937`]]),Li=R({__name:`TerminalCloseDialog`,props:g({all:{type:Boolean}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:g([`confirm`],[`update:modelValue`]),setup(e,{emit:t}){let n=s(e,`modelValue`),r=t,{t:i}=Y();return(t,a)=>(o(),w(Je,{modelValue:n.value,"onUpdate:modelValue":a[1]||=e=>n.value=e},{default:y(()=>[b(He,{style:{"min-width":`320px`}},{default:y(()=>[b(Qe,{class:`text-h6`},{default:y(()=>[D(p(O(i)(e.all?`terminal.closeAllTitle`:`terminal.closeTitle`)),1)]),_:1}),b(Qe,null,{default:y(()=>[D(p(O(i)(e.all?`terminal.closeAllMessage`:`terminal.closeMessage`)),1)]),_:1}),b(Xe,{align:`right`},{default:y(()=>[m(b(K,{flat:``,label:O(i)(`terminal.cancel`)},null,8,[`label`]),[[Xn]]),m(b(K,{flat:``,color:`negative`,label:O(i)(e.all?`terminal.closeAll`:`terminal.closeTab`),onClick:a[0]||=e=>r(`confirm`)},null,8,[`label`]),[[Xn]])]),_:1})]),_:1})]),_:1},8,[`modelValue`]))}}),Ri={class:`terminal-window__body`},zi={key:0,class:`q-pa-md text-grey`},Bi=$(R({__name:`TerminalWindow`,setup(e){let t=oe(()=>Ke(()=>import(`./TerminalView-tEyLM5qZ.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]))),n=Tn(),r=tr(),i=yn(),{isDark:a}=Mn(),{t:s}=Y(),{drag:c}=gi(ln),l=M(()=>n.state===`connected`),u=M(()=>n.sessions.find(e=>e.id===n.activeId)),d=M(()=>{let e=n.error;return e?`key`in e?s(`terminal.${e.key}`):e.text:``}),f=N(!1),h=N(null);function g(){if(r.narrow.value){r.back();return}n.minimize()}function _(){r.narrow.value||i.toggleMode(ln,`maximized`)}function x(e){h.value=e,f.value=!0}function S(){if(h.value===null)for(let e of n.sessions)n.close(e.id);else n.close(h.value)}return mi(ln,()=>{x(n.sessions.length>1?n.activeId:null)}),v(()=>n.sessions,e=>{let t=h.value;(!e.length||t&&!e.some(e=>e.id===t))&&(f.value=!1)}),(e,v)=>(o(),P(I,null,[b(Ii,{"window-id":O(ln),title:O(s)(`terminal.title`)},{header:y(()=>[b(yi,{narrow:O(r).narrow.value,maximized:O(n).maximized,connected:l.value,"original-colors":O(n).originalColors,onDrag:O(c),onToggleOriginalColors:v[0]||=e=>O(n).originalColors=!O(n).originalColors,onMinimize:g,onToggleMaximized:_,onCloseAll:v[1]||=e=>x(null)},null,8,[`narrow`,`maximized`,`connected`,`original-colors`,`onDrag`])]),default:y(()=>[b(Ci,{sessions:O(n).sessions,"active-id":O(n).activeId,busy:O(n).creating,connected:l.value,onActivate:O(n).activate,onCreate:O(n).create,onRequestClose:x},null,8,[`sessions`,`active-id`,`busy`,`connected`,`onActivate`,`onCreate`]),l.value?E(``,!0):(o(),w(Nn,{key:0,dense:``,class:`bg-grey-8 text-white text-caption`},{default:y(()=>[D(p(O(s)(`terminal.reconnecting`)),1)]),_:1})),O(n).error?(o(),w(Nn,{key:1,dense:``,class:`bg-red-2 text-dark text-caption`},{action:y(()=>[b(K,{class:`app-icon-control`,flat:``,dense:``,icon:O(Ut),onClick:v[2]||=e=>O(n).error=null},null,8,[`icon`])]),default:y(()=>[D(p(d.value)+` `,1)]),_:1})):E(``,!0),u.value?.mode===`pipe`?(o(),w(wi,{key:2})):E(``,!0),L(`div`,Ri,[O(n).sessions.length?E(``,!0):(o(),P(`div`,zi,p(O(s)(`terminal.empty`)),1)),(o(!0),P(I,null,z(O(n).sessions,e=>m((o(),w(O(t),{key:e.id,session:e,active:O(n).activeId===e.id&&(O(r).narrow.value?O(r).window.value===O(`terminal`):O(i).isActive(O(`terminal`))),dark:O(a),"original-colors":O(n).originalColors},null,8,[`session`,`active`,`dark`,`original-colors`])),[[fe,O(n).activeId===e.id]])),128))])]),_:1},8,[`window-id`,`title`]),b(Li,{modelValue:f.value,"onUpdate:modelValue":v[3]||=e=>f.value=e,all:h.value===null,onConfirm:S},null,8,[`modelValue`,`all`])],64))}}),[[`__scopeId`,`data-v-42de592b`]]);function Vi(e,t,n,r){let i=[];return e.forEach(e=>{r(e)?i.push(e):t.push({failedPropValidation:n,file:e})}),i}function Hi(e){return e.split(`,`).map(e=>(e=e.trim(),e===`*`?`*/`:(e.endsWith(`/*`)&&(e=e.slice(0,-1)),e.toUpperCase())))}function Ui(e,t,n=[],r=!1){let i=[...e],a=[],o=()=>({files:i,rejected:a});if(t.accept!==void 0){let e=Hi(t.accept);if(!e.includes(`*/`)&&(i=Vi(i,a,`accept`,t=>e.some(e=>(e.endsWith(`/`)?t.type.toUpperCase().startsWith(e):t.type.toUpperCase()===e)||t.name.toUpperCase().endsWith(e))),i.length===0))return o()}if(t.maxFileSize!==void 0){let e=Number.parseInt(t.maxFileSize,10);if(i=Vi(i,a,`max-file-size`,t=>t.size<=e),i.length===0)return o()}if(t.multiple!==!0&&i.length!==0&&(i=[i[0]]),i.forEach(e=>{e.__key=JSON.stringify([e.webkitRelativePath,e.lastModified,e.name,e.size])}),r){let e=new Set(n.map(e=>e.__key));i=Vi(i,a,`duplicate`,t=>!e.has(t.__key)&&(e.add(t.__key),!0))}if(i.length===0)return o();if(t.maxTotalSize!==void 0){let e=Number.parseInt(t.maxTotalSize,10),s=r?n.reduce((e,t)=>e+t.size,0):0;if(i=Vi(i,a,`max-total-size`,t=>{let n=s+t.size;return n>e?!1:(s=n,!0)}),i.length===0)return o()}if(typeof t.filter==`function`){let e=t.filter(i);i=Vi(i,a,`filter`,t=>e.includes(t))}if(t.maxFiles!==void 0){let e=Number.parseInt(t.maxFiles,10),o=r?n.length:0;i=Vi(i,a,`max-files`,()=>(o++,o<=e))}return o()}function Wi(e){let n=T([]),r=T([]);function i(){n.value=[],r.value=[]}let a=null,o=null;function s(e){if(o===null)return;let{resolve:t}=o;o=null,t(e)}function c(){let t=o?.opts??A(e)??{},i=Ui(a.files,{...t,multiple:t.multiple===!0||t.directory===!0});a.value=``,r.value=i.rejected,i.rejected.length!==0&&t.onRejected?.(i.rejected),i.files.length!==0&&(n.value=i.files,t.onChange?.(i.files)),s(i.files)}function l(){(o?.opts??A(e)??{}).onCancel?.(),s(null)}function u(){return a===null&&(a=document.createElement(`input`),a.type=`file`,a.addEventListener(`change`,c),a.addEventListener(`cancel`,l)),a}function d(t){let n={...A(e),...t},r=u();return r.multiple=n.multiple===!0,r.webkitdirectory=n.directory===!0,r.accept=n.accept??``,n.capture===void 0?r.removeAttribute(`capture`):r.setAttribute(`capture`,n.capture),s(null),new Promise(e=>{o={opts:n,resolve:e},r.click()})}return S()!==null&&t(()=>{s(null),a!==null&&(a.removeEventListener(`change`,c),a.removeEventListener(`cancel`,l),a=null)}),{acceptedPickerFiles:n,rejectedPickerFiles:r,openFilePicker:d,resetFilePicker:i}}function Gi(e,t,n=1){if(!t||!Number.isSafeInteger(t)||t<1)return null;let r=0;for(let n=1;n<t;n++){let t=e.indexOf(`
|
|
3
|
+
`,r);if(t<0)return null;r=t+1}let i=e.indexOf(`
|
|
4
|
+
`,r),a=i<0?e.length:i,o=Math.min(a,r+Math.max(0,n-1)),s=Math.min(o+1,a);return{before:e.slice(0,r),leading:e.slice(r,o),character:e.slice(o,s),trailing:e.slice(s,a),after:e.slice(a)}}var Ki={class:`project-text`},qi=$(R({__name:`TextPreview`,props:{text:{},line:{},column:{},request:{type:Boolean}},emits:[`rendered`],setup(e,{emit:t}){let n=e,i=t,a=F(`selected`),s=M(()=>Gi(n.text,n.line,n.column));return v(()=>[n.text,n.line,n.column,n.request],async()=>{await r(),i(`rendered`,a.value)},{immediate:!0}),(t,n)=>(o(),P(`pre`,Ki,[s.value?(o(),P(I,{key:0},[D(p(s.value.before),1),L(`span`,{ref_key:`selected`,ref:a,class:`project-text__selected`},[D(p(s.value.leading),1),L(`mark`,null,p(s.value.character),1),D(p(s.value.trailing),1)],512),D(p(s.value.after),1)],64)):(o(),P(I,{key:1},[D(p(e.text),1)],64))]))}}),[[`__scopeId`,`data-v-2b18c7a6`]]),Ji={text:``,image:``,pdf:null,loading:!1,error:null,missing:null,loaded:!0,stale:!1};function Yi(e,t){let n=dr(),r=X(),i=M(()=>n.data[A(e).id]??Ji),a=M(()=>{let t=A(e).source;if(t.type!==`message`)return null;let n=r.chats[t.sessionId]?.chat.items.find(e=>e.id===t.messageId);return n&&`text`in n?n.text:n});return v(a,()=>{i.value!==Ji&&(i.value.stale=!0)}),v(()=>[A(e).id,A(t),i.value.stale],()=>{A(t)&&(i.value.stale||!i.value.loaded)&&(!i.value.loading||i.value.stale)&&n.load(A(e).id)},{immediate:!0}),{entry:i,reload:()=>n.load(A(e).id)}}function Xi(){let e=null,n=S();function r(){e!==null&&(cancelAnimationFrame(e),e=null)}return n!==null&&(l(r),t(r)),{removeAnimationFrame:r,registerAnimationFrame(t){r(),(n===null||!le(n))&&(e=requestAnimationFrame(()=>{e=null,t()}))}}}var Zi=200;function Qi(e){let{registerTimeout:n,removeTimeout:r}=Be(),{registerTick:i,removeTick:a}=Le(),{registerAnimationFrame:o,removeAnimationFrame:s}=Xi(),c=!0;function l(){let t=A(e.target);if(!t||c)return!1;let n=A(e.tab);return n.scroll.x=t.scrollLeft,n.scroll.y=t.scrollTop,!0}function u(){l()&&n(e.remember,Zi)}function d(){c=!0,a(),s(),r()}function f(){d(),i(()=>{let t=A(e.target);if(t){let n=A(e.tab);t.scrollLeft=n.scroll.x,t.scrollTop=n.scroll.y;let r=A(e.anchor);if(r){let i=[...t.querySelectorAll(`[id]`)].find(e=>e.id===r);i&&(t.scrollTop+=i.getBoundingClientRect().top-t.getBoundingClientRect().top,n.scroll.y=t.scrollTop,e.remember()),e.clearAnchor?.()}}o(()=>{c=!1})})}function p(){l(),r(),e.remember()}return q(()=>window,`pagehide`,p),t(p),{rememberScroll:u,prepareRestore:d,restoreScroll:f}}var $i={key:0,class:`q-pa-md text-negative`},ea=[`innerHTML`],ta=$(R({__name:`DiagramPreview`,props:{text:{},scale:{},visible:{type:Boolean},overlay:{}},emits:[`rendered`,`zoom`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=U(),{registerTick:s,removeTick:c}=Le(),l=F(`diagram`),u=T(``),f=T(null),m=T(0),h=T(!0);return v(()=>[n.text,a.dark.isActive,m.value],async([e,t],n,i)=>{let a=!0;i(()=>{a=!1,c()}),f.value=null,h.value=!0;try{let n=await Cr.render(e,t);if(!a)return;u.value=hr(n),s(()=>{a&&(l.value&&_r(l.value),h.value=!1,r(`rendered`))})}catch(e){a&&(f.value=Qt(e),h.value=!1)}},{immediate:!0}),(t,n)=>(o(),P(I,null,[f.value?(o(),P(`div`,$i,[D(p(f.value),1),b(K,{flat:``,label:O(i)(`windows.retry`),onClick:n[0]||=e=>m.value++},null,8,[`label`])])):(o(),P(`div`,{key:1,ref_key:`diagram`,ref:l,class:`preview-diagram`,style:d({zoom:e.scale}),innerHTML:u.value},null,12,ea)),e.overlay&&e.visible&&u.value&&!f.value?(o(),w(te,{key:2,to:e.overlay},[b(Gr,{scale:e.scale,busy:h.value,onZoom:n[1]||=e=>r(`zoom`,e)},null,8,[`scale`,`busy`])],8,[`to`])):E(``,!0)],64))}}),[[`__scopeId`,`data-v-d44ed45b`]]),na={key:0,class:`q-pa-md text-negative`},ra=[`src`,`alt`],ia=$(R({__name:`ImagePreview`,props:{src:{},title:{},scale:{},visible:{type:Boolean},overlay:{}},emits:[`rendered`,`zoom`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=T(!1),s=T(0);v(()=>n.src,()=>{a.value=!1});function c(){a.value=!1,s.value++}return(t,n)=>(o(),P(I,null,[a.value?(o(),P(`div`,na,[D(p(O(i)(`windows.imageFailed`))+` `,1),b(K,{flat:``,label:O(i)(`windows.retry`),onClick:c},null,8,[`label`])])):(o(),P(`img`,{key:s.value,class:`preview-image`,src:e.src,alt:e.title,style:d({zoom:e.scale}),onLoad:n[0]||=e=>r(`rendered`),onError:n[1]||=e=>a.value=!0},null,44,ra)),e.overlay&&e.visible&&!a.value?(o(),w(te,{key:2,to:e.overlay},[b(Gr,{scale:e.scale,onZoom:n[2]||=e=>r(`zoom`,e)},null,8,[`scale`])],8,[`to`])):E(``,!0)],64))}}),[[`__scopeId`,`data-v-96021427`]]),aa={class:`preview-viewport`},oa={key:0,class:`q-pa-lg`},sa={key:1,class:`q-pa-lg text-grey-6`},ca={key:2,class:`q-pa-md text-negative`},la=[`href`],ua=$(R({__name:`PreviewContent`,props:{tab:{},visible:{type:Boolean}},setup(e){let t=oe(()=>Ke(()=>import(`./PdfPreview-2NQ5gkjh.js`),__vite__mapDeps([28,1,12,2,4,5,6,7,8,3,9,10,11,13,14,18,22,29]))),n=e,r=dr(),{t:i}=Y(),a=F(`scroll`),s=F(`overlay`),{entry:c,reload:l}=Yi(()=>n.tab,()=>n.visible),{rememberScroll:u,prepareRestore:d,restoreScroll:f}=Qi({target:a,tab:()=>n.tab,remember:r.remember,anchor:()=>r.anchorRequests[n.tab.id],clearAnchor:()=>{delete r.anchorRequests[n.tab.id]}}),m=M(()=>c.value.missing?i(`windows.missing.${c.value.missing}`):null);function h(e){n.tab.scale=Math.max(dn,Math.min(4,n.tab.scale+e)),r.remember()}function g(e){let t=a.value;if(e&&t&&r.lineRequests[n.tab.id]){let i=t.getBoundingClientRect(),a=e.getBoundingClientRect();t.scrollTop+=a.top-i.top-(t.clientHeight-a.height)/2,t.scrollLeft+=a.left-i.left-(t.clientWidth-a.width)/2,n.tab.scroll.x=t.scrollLeft,n.tab.scroll.y=t.scrollTop,r.remember()}delete r.lineRequests[n.tab.id],f()}return v(()=>[c.value.text,c.value.image,c.value.pdf,c.value.loaded,c.value.error,c.value.missing,r.anchorRequests[n.tab.id]],()=>{d(),n.tab.kind===`markdown`&&c.value.loaded&&f()},{immediate:!0}),(n,a)=>(o(),P(`div`,aa,[L(`div`,{ref:`scroll`,class:`preview-content`,onScroll:a[2]||=(...e)=>O(u)&&O(u)(...e)},[O(c).loading&&!O(c).loaded?(o(),P(`div`,oa,[b(Oe,{color:`primary`})])):m.value?(o(),P(`div`,sa,p(m.value),1)):O(c).error?(o(),P(`div`,ca,[D(p(O(c).error),1),e.tab.source.type===`file`&&e.tab.source.ref===`WORKTREE`?(o(),P(`a`,{key:0,href:O(ar)(e.tab.source.path,!0),download:``,class:`q-ml-sm`},p(O(i)(`windows.downloadFile`)),9,la)):E(``,!0),b(K,{flat:``,label:O(i)(`windows.retry`),onClick:a[0]||=e=>O(l)()},null,8,[`label`])])):e.tab.kind===`markdown`?(o(),w(xr,{key:3,class:`preview-markdown`,text:O(c).text,"preview-source":e.tab.source,"preview-title":e.tab.title,"file-links":e.tab.source.type===`file`,variant:`document`,"heading-anchors":``},null,8,[`text`,`preview-source`,`preview-title`,`file-links`])):e.tab.kind===`text`?(o(),w(qi,{key:4,text:O(c).text,line:e.tab.line,column:e.tab.column,request:!!O(r).lineRequests[e.tab.id],onRendered:g},null,8,[`text`,`line`,`column`,`request`])):e.tab.kind===`diagram`?(o(),w(ta,{key:5,text:O(c).text,scale:e.tab.scale,visible:e.visible,overlay:s.value,onZoom:h,onRendered:O(f)},null,8,[`text`,`scale`,`visible`,`overlay`,`onRendered`])):e.tab.kind===`pdf`?(o(),P(I,{key:6},[e.visible&&O(c).pdf?(o(),w(O(t),{key:0,page:e.tab.index,"onUpdate:page":a[1]||=t=>e.tab.index=t,file:O(c).pdf,scale:e.tab.scale,overlay:s.value,onZoom:h,onRemember:O(r).remember,onRendered:O(f)},null,8,[`page`,`file`,`scale`,`overlay`,`onRemember`,`onRendered`])):E(``,!0)],64)):O(c).image?(o(),w(ia,{key:7,src:O(c).image,title:e.tab.title,scale:e.tab.scale,visible:e.visible,overlay:s.value,onZoom:h,onRendered:O(f)},null,8,[`src`,`title`,`scale`,`visible`,`overlay`,`onRendered`])):E(``,!0),O(c).loading&&O(c).loaded?(o(),w(Oe,{key:8,class:`preview-refresh`,color:`primary`})):E(``,!0)],544),L(`div`,{ref_key:`overlay`,ref:s,class:`preview-overlay`},null,512)]))}}),[[`__scopeId`,`data-v-be53dd3d`]]),da={class:`window-header row items-center no-wrap`},fa=$(R({__name:`PreviewWindowHeader`,props:{maximized:{type:Boolean},narrow:{type:Boolean}},emits:[`drag`,`openFile`,`minimize`,`toggleMaximized`,`closeAll`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),P(`div`,da,[m((o(),P(`div`,{class:`window-header__title preview-title col ellipsis`,onDblclick:i[0]||=t=>!e.narrow&&n(`toggleMaximized`)},[b(G,{size:`16px`,name:O(ft),class:`app-icon-neutral q-mr-sm`},null,8,[`name`]),D(p(O(r)(`windows.preview`)),1)],32)),[[Gn,e.narrow?void 0:e=>n(`drag`,e),void 0,{prevent:!0,mouse:!0}]]),b(K,{flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:O(xt),"aria-label":O(r)(`windows.openFile`),onClick:i[1]||=e=>n(`openFile`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(r)(`windows.openFile`)),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`]),e.narrow?E(``,!0):(o(),w(K,{key:0,flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:O(jt),"aria-label":O(r)(`windows.minimize`),onClick:i[2]||=e=>n(`minimize`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(r)(`windows.minimize`))+` · Ctrl+Win+↓`,1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`])),e.narrow?E(``,!0):(o(),w(K,{key:1,flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:e.maximized?O(Ht):O(kt),"aria-label":O(r)(e.maximized?`terminal.restore`:`terminal.maximize`),onClick:i[3]||=e=>n(`toggleMaximized`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(r)(e.maximized?`terminal.restore`:`terminal.maximize`))+` · Ctrl+Win+↑`,1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`])),b(K,{flat:``,dense:``,size:`sm`,class:`app-icon-control window-header__control`,icon:O(Ut),"aria-label":O(r)(`windows.closeAll`),onClick:i[4]||=e=>n(`closeAll`)},null,8,[`icon`,`aria-label`])]))}}),[[`__scopeId`,`data-v-ce50ac9d`]]),pa={class:`preview-tabs row items-center no-wrap`},ma={class:`row items-center no-wrap`},ha={class:`preview-tab-label ellipsis`},ga=$(R({__name:`PreviewTabs`,props:{tabs:{},activeId:{}},emits:[`activate`,`openFile`,`requestClose`],setup(e,{emit:t}){let n=t,{t:r}=Y();function i(e){if(e.source.type!==`file`)return e.title;let t=zn(e.source.path,[]);return e.kind===`diagram`?`${t} · ${r(`windows.diagram`)} · ${e.index+1}`:t}return(t,a)=>(o(),P(`div`,pa,[e.tabs.length?(o(),w(mr,{key:0,"model-value":e.activeId,dense:``,shrink:``,"no-caps":``,"outside-arrows":``,"mobile-arrows":``,align:`left`,class:`preview-tabs__tabs`,"onUpdate:modelValue":a[0]||=e=>n(`activate`,String(e))},{default:y(()=>[(o(!0),P(I,null,z(e.tabs,e=>(o(),w(pr,{key:e.id,name:e.id},{default:y(()=>[L(`div`,ma,[L(`span`,ha,[D(p(i(e)),1),b(J,{delay:O(500)},{default:y(()=>[D(p(e.title),1)]),_:2},1032,[`delay`])]),b(K,{class:`app-icon-control`,flat:``,round:``,dense:``,size:`xs`,icon:O(Ut),"aria-label":O(r)(`windows.closeTab`),onClick:B(t=>n(`requestClose`,e.id),[`stop`])},null,8,[`icon`,`aria-label`,`onClick`])])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`])):E(``,!0),b(K,{flat:``,round:``,dense:``,size:`sm`,icon:O(dt),class:`app-icon-control q-mx-xs`,"aria-label":O(r)(`windows.openFile`),onClick:a[1]||=e=>n(`openFile`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(r)(`windows.openFile`)),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`])]))}}),[[`__scopeId`,`data-v-5bc7b6f7`]]),_a={class:`preview-empty column items-center justify-center q-pa-lg`},va={class:`q-my-md text-grey-6`},ya={class:`q-mt-sm text-caption text-grey-6`},ba=$(R({__name:`PreviewEmptyState`,emits:[`openFile`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(e,t)=>(o(),P(`div`,_a,[b(G,{name:O(xt),size:`48px`,class:`app-icon-neutral`},null,8,[`name`]),L(`div`,va,p(O(r)(`windows.empty`)),1),b(K,{class:`app-icon-control`,outline:``,color:`primary`,icon:O(xt),label:O(r)(`windows.openFile`),onClick:t[0]||=e=>n(`openFile`)},null,8,[`icon`,`label`]),L(`div`,ya,p(O(r)(`windows.dropFiles`)),1)]))}}),[[`__scopeId`,`data-v-9baaff3b`]]),xa={key:0,class:`preview-drop-overlay column items-center justify-center`},Sa={class:`q-mt-sm`},Ca=$(R({__name:`PreviewWindow`,setup(e){let{t}=Y(),n=U(),r=dr(),i=tr(),a=yn(),{state:s,drag:c}=gi(pn),{openFilePicker:l,resetFilePicker:u}=Wi({multiple:!0,accept:cr,onChange:e=>{m(e),u()},onRejected:e=>{for(let{file:t}of e)h(t);u()}});mi(pn,()=>{r.activeId?r.close(r.activeId):r.closeAll()});let d=T(!1),f=0;async function m(e){for(let t of Array.from(e))try{r.openLocal(t)||h(t)}catch(e){n.notify({type:`negative`,message:Qt(e)})}}function h(e){n.notify({type:`warning`,message:t(`windows.unsupportedFile`,{name:e.name})})}function g(e){e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),f++,d.value=!0)}function _(e){e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)}function v(){f=Math.max(0,f-1),f||(d.value=!1)}function x(e){e.preventDefault(),d.value=!1,f=0,e.dataTransfer?.files.length&&m(e.dataTransfer.files)}function S(e){n.dialog({title:t(e===null?`windows.closeAllTitle`:`windows.closeTitle`),message:t(e===null?`windows.closeAllMessage`:`windows.closeMessage`),cancel:{label:t(`windows.cancel`),flat:!0},ok:{label:t(e===null?`windows.closeAll`:`windows.closeTab`),color:`negative`,flat:!0}}).onOk(()=>{e===null?r.closeAll():r.close(e)})}function C(){if(i.narrow.value){i.back();return}a.minimize(pn)}function D(){i.narrow.value||a.toggleMode(pn,`maximized`)}return(e,n)=>(o(),w(Ii,{"window-id":O(pn),title:O(t)(`windows.preview`),onDragenter:g,onDragover:_,onDragleave:v,onDrop:x},{header:y(()=>[b(fa,{narrow:O(i).narrow.value,maximized:O(s).maximized,onDrag:O(c),onOpenFile:O(l),onMinimize:C,onToggleMaximized:D,onCloseAll:n[0]||=e=>S(null)},null,8,[`narrow`,`maximized`,`onDrag`,`onOpenFile`]),b(ga,{tabs:O(r).tabs,"active-id":O(r).activeId,onActivate:O(r).activate,onOpenFile:O(l),onRequestClose:S},null,8,[`tabs`,`active-id`,`onActivate`,`onOpenFile`])]),default:y(()=>[d.value?(o(),P(`div`,xa,[b(G,{class:`app-icon-neutral`,name:O(st),size:`48px`},null,8,[`name`]),L(`div`,Sa,p(O(t)(`windows.dropFiles`)),1)])):E(``,!0),O(r).activeTab?(o(),w(ua,{key:O(r).activeTab.id,tab:O(r).activeTab,visible:O(i).narrow.value?O(i).window.value===O(pn):O(s).open&&!O(s).minimized},null,8,[`tab`,`visible`])):(o(),w(ba,{key:2,onOpenFile:O(l)},null,8,[`onOpenFile`]))]),_:1},8,[`window-id`,`title`]))}}),[[`__scopeId`,`data-v-6aa40180`]]),wa=24,Ta=8;function Ea(e,t){let n=Math.max(0,t.width-e.width),r=Math.max(0,t.height-e.height),i=Math.min(Ta,n/2),a=Math.min(Ta,r/2);return{left:i,right:n-i,top:a,bottom:r-a}}function Da(e,t,n){let r=Ea(t,n);return{x:Math.max(r.left,Math.min(e.x,r.right)),y:Math.max(r.top,Math.min(e.y,r.bottom))}}function Oa(e,t,n){let r=[[`left`,e.x],[`top`,e.y],[`right`,n.width-e.x-t.width],[`bottom`,n.height-e.y-t.height]];r.sort((e,t)=>e[1]-t[1]);let i=r[0];return i&&i[1]<=wa?i[0]:`free`}function ka(e,t,n,r){let i=Da(e,n,r),a=Ea(n,r);return t===`left`&&(i.x=a.left),t===`right`&&(i.x=a.right),t===`top`&&(i.y=a.top),t===`bottom`&&(i.y=a.bottom),i}var Aa=[`aria-label`],ja=[`aria-label`],Ma={key:0},Na=$(R({__name:`WindowDock`,props:{applications:{}},setup(e){let n=e,r=yn(),i=U(),{t:a}=Y(),s=F(`dock`),{elementSize:c}=Zn({target:()=>s.value}),l=N([]),u=M(()=>({width:i.screen.width,height:i.screen.height})),f=M(()=>r.dock.edge===`left`||r.dock.edge===`right`),h=M(()=>ka(r.dock.position??{x:(u.value.width-c.value.width)/2,y:u.value.height},r.dock.edge,c.value,u.value)),g=M(()=>n.applications.map(e=>({app:e,availability:e.availability(),badge:e.badge(),active:e.active()})));t(()=>{for(let e of n.applications)sn(e.id,null)});let _={x:0,y:0};function v(e){e.isFirst&&(_={...h.value},r.dock.edge=`free`);let t={x:_.x+(e.offset?.x??0),y:_.y+(e.offset?.y??0)};r.dock.position=t,e.isFinal&&(r.dock.edge=Oa(h.value,c.value,u.value),r.remember())}async function x(e){if(e.availability().enabled&&!l.value.includes(e.id)){l.value.push(e.id);try{await e.activate()}catch(e){i.notify({type:`negative`,message:Qt(e)})}finally{l.value=l.value.filter(t=>t!==e.id)}}}return(e,t)=>(o(),P(`nav`,{ref:`dock`,class:j([`window-dock`,{"window-dock--vertical":f.value}]),style:d({left:`${h.value.x}px`,top:`${h.value.y}px`}),"aria-label":O(a)(`windows.panel`)},[m((o(),P(`div`,{class:`window-dock__handle`,"aria-label":O(a)(`windows.movePanel`)},[b(G,{class:`app-icon-neutral`,name:O(ut)},null,8,[`name`])],8,ja)),[[Gn,v,void 0,{prevent:!0,mouse:!0}]]),(o(!0),P(I,null,z(g.value,e=>(o(),P(`div`,{key:e.app.id,class:`window-dock__item`,ref_for:!0,ref:t=>O(sn)(e.app.id,t)},[b(K,{flat:``,icon:e.app.icon,class:j([`app-icon-control window-dock__button`,{"window-dock__button--running":e.active||!!e.badge,"window-dock__button--active":e.active}]),color:e.active?`white`:e.badge?`primary`:void 0,disable:!e.availability.enabled,loading:l.value.includes(e.app.id),"aria-label":e.app.title(),"aria-current":e.active?`true`:void 0,onClick:t=>x(e.app)},{default:y(()=>[e.badge?(o(),w(Qn,{key:0,floating:``,color:e.active?`white`:`primary`,"text-color":e.active?`primary`:`white`},{default:y(()=>[D(p(e.badge),1)]),_:2},1032,[`color`,`text-color`])):E(``,!0)]),_:2},1032,[`icon`,`class`,`color`,`disable`,`loading`,`aria-label`,`aria-current`,`onClick`]),b(J,{delay:O(500)},{default:y(()=>[D(p(e.availability.reason??e.app.title()),1),e.app.create?(o(),P(`div`,Ma,p(O(a)(`windows.newTerminalShortcut`)),1)):E(``,!0),L(`div`,null,p(O(a)(`windows.layoutShortcuts`)),1),L(`div`,null,p(O(a)(`windows.minimizeAllShortcut`)),1)]),_:2},1032,[`delay`])]))),128))],14,Aa))}}),[[`__scopeId`,`data-v-c4ebcdbe`]]),Pa=R({__name:`WindowHost`,setup(e){let{t:n}=Y(),{narrow:r}=tr(),i=yn(),s=Tn(),c=dr(),l=Xr(),u=M(()=>l.applications),d=l.register({id:ln,component:Bi,title:()=>n(`terminal.title`),icon:Mt,availability:()=>s.enabled?{enabled:!0}:{enabled:!1,reason:n(`terminal.unavailable`)},badge:()=>s.sessions.length||null,active:()=>i.isActive(ln),activate:()=>s.show(),create:()=>s.create()}),f=l.register({id:pn,component:Ca,title:()=>n(`windows.preview`),icon:ft,availability:()=>({enabled:!0}),badge:()=>c.tabs.length||null,active:()=>i.isActive(pn),activate:c.show});pi();let p=Dn([`files:changed`],c.invalidateFiles);return t(()=>{p.close(),d(),f()}),(e,t)=>(o(),P(I,null,[(o(!0),P(I,null,z(u.value,e=>(o(),P(I,{key:e.id},[e.component?(o(),w(a(e.component),{key:0})):E(``,!0)],64))),128)),O(r)?E(``,!0):(o(),w(Na,{key:0,applications:u.value},null,8,[`applications`]))],64))}}),Fa=1023,Ia=`githuman.navDrawerOpen`;function La(e){return e>Fa}function Ra(){return En.get(Ia)!==`closed`}function za(e){En.set(Ia,e?`open`:`closed`)}function Ba(e,t){let n=La(e);return{desktop:n,desktopOpen:t,visible:n&&t}}function Va(e,t){let n=La(t);return n===e.desktop?e:{...e,desktop:n,visible:n&&e.desktopOpen}}function Ha(e){let t=!e.visible;return{...e,visible:t,desktopOpen:e.desktop?t:e.desktopOpen}}function Ua(){let e=U(),t=N(Ba(e.screen.width,Ra())),n=M({get:()=>t.value.visible,set:e=>{t.value={...t.value,visible:e}}});function i(){t.value=Ha(t.value),t.value.desktop&&za(t.value.desktopOpen)}async function a(e){let n=Va(t.value,e.width);n!==t.value&&(t.value=n,await r(),t.value.desktop===n.desktop&&(t.value={...t.value,visible:n.visible}))}return{open:n,toggle:i,onResize:a}}var Wa=150;function Ga(e,t){e.value!==t&&(e.value=t)}var Ka=H({name:`QDrawer`,inheritAttrs:!1,props:{...et,...Me,side:{type:String,default:`left`,validator:e=>[`left`,`right`].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>[`default`,`desktop`,`mobile`].includes(e),default:`default`},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...Ue,`onLayout`,`miniState`,`escapeKey`,`pan`],setup(e,{slots:n,emit:i,attrs:a}){let o=S(),s=U(),c=Ne(e,s),{preventBodyScroll:l}=We(),{registerTimeout:d,removeTimeout:f}=Be(),p=se(we,Te);if(p===Te)return console.error(`QDrawer needs to be child of QLayout`),Te;let g,_=null,y,b=N(e.behavior===`mobile`||e.behavior!==`desktop`&&p.totalWidth.value<=e.breakpoint),x=M(()=>e.mini&&!b.value),C=M(()=>x.value?e.miniWidth:e.width),w=M(()=>e.overlay||e.miniToOverlay||p.view.value.includes(ie.value?`R`:`L`)||s.platform.is.ios&&p.isContainer.value),T=N(e.showIfAbove&&!b.value||e.modelValue===!0),E=M(()=>!e.overlay&&T.value&&!b.value),D=M(()=>e.overlay&&T.value&&!b.value),O=M(()=>!e.persistent&&(b.value||D.value));function k(e,t){if(te(),e!==!1&&p.animate(),V(0),b.value){let e=p.instances[ce.value];e?.belowBreakpoint.value&&e.hide(!1),xe(1),p.isContainer.value||l(!0)}else xe(0),e!==!1&&H(!1);d(()=>{e!==!1&&H(!0),t||i(`show`,e)},Wa)}function A(e,t){ne(),e!==!1&&p.animate(),xe(0),V(L.value*C.value),Oe(),t?f():d(()=>{i(`hide`,e)},Wa)}let{show:ee,hide:j}=Pe({showing:T,hideOnRouteChange:O,handleShow:k,handleHide:A}),{addToHistory:te,removeFromHistory:ne}=ze(T,j,O),P=M(()=>T.value&&O.value);function re(e){i(`escapeKey`),j(e)}function F(e){e?Ie(re):Re(re)}let I={belowBreakpoint:b,hide:j},ie=M(()=>e.side===`right`),L=M(()=>(s.lang.rtl?-1:1)*(ie.value?1:-1)),ae=N(0),oe=N(!1),R=N(!1),z=N(C.value*L.value),ce=M(()=>ie.value?`left`:`right`),le=M(()=>T.value&&!b.value&&!e.overlay?e.miniToOverlay?e.miniWidth:C.value:0),ue=M(()=>`fullscreen q-drawer__backdrop`+(!T.value&&!oe.value?` hidden`:``)),de=M(()=>({backgroundColor:`rgba(0,0,0,${ae.value*.4})`})),fe=M(()=>ie.value?p.rows.value.top[2]===`r`:p.rows.value.top[0]===`l`),pe=M(()=>ie.value?p.rows.value.bottom[2]===`r`:p.rows.value.bottom[0]===`l`),B=M(()=>{let e={};return p.header.space&&!fe.value&&(w.value?e.top=`${p.header.offset}px`:p.header.space&&(e.top=`${p.header.size}px`)),p.footer.space&&!pe.value&&(w.value?e.bottom=`${p.footer.offset}px`:p.footer.space&&(e.bottom=`${p.footer.size}px`)),e}),me=M(()=>{let e={"--q-drawer-width":`${C.value}px`,transform:`translateX(${z.value}px)`};return b.value?e:Object.assign(e,B.value)}),he=M(()=>`q-drawer__content fit `+(p.isContainer.value?`overflow-auto`:`scroll`)),ge=M(()=>`q-drawer q-drawer--${e.side}`+(R.value?` q-drawer--mini-animate`:``)+(e.bordered?` q-drawer--bordered`:``)+(c()?` q-drawer--dark q-dark`:``)+(oe.value?` no-transition`:T.value?``:` q-layout--prevent-focus`)+(b.value?` fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding`:` q-drawer--${x.value?`mini`:`standard`}`+(w.value||!E.value?` fixed`:``)+(e.overlay||e.miniToOverlay?` q-drawer--on-top`:``)+(fe.value?` q-drawer--top-padding`:``))),_e=M(()=>{let t=s.lang.rtl?e.side:ce.value;return[[Gn,Ce,void 0,{[t]:!0,mouse:!0,prevent:!0}]]}),ve=M(()=>{let t=s.lang.rtl?ce.value:e.side;return[[Gn,b.value&&!e.noSwipeClose?De:void 0,void 0,{[t]:!0,mouse:!0}]]}),ye=M(()=>{let t=s.lang.rtl?ce.value:e.side;return[[Gn,T.value&&!e.noSwipeBackdrop?De:void 0,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0,prevent:!0}]]});function be(){Ga(b,e.behavior===`mobile`||e.behavior!==`desktop`&&p.totalWidth.value<=e.breakpoint)}v(b,t=>{t?(g=T.value,T.value&&j(!1)):T.value?(V(0),xe(0),Oe()):!e.overlay&&e.behavior!==`mobile`&&g!==!1&&ee(!1)}),v(()=>e.side,(e,t)=>{p.instances[t]===I&&(p.instances[t]=void 0,p[t].space=!1,p[t].offset=0),p.instances[e]=I,p[e].size=C.value,p[e].space=E.value,p[e].offset=le.value}),v(p.totalWidth,()=>{(p.isContainer.value||!document.qScrollPrevented)&&be()}),v(()=>e.behavior+e.breakpoint,be),v(p.isContainer,e=>{T.value&&l(!e),e&&be()}),v(p.scrollbarWidth,()=>{V(T.value?0:void 0)}),v(le,e=>{ke(`offset`,e)}),v(E,e=>{i(`onLayout`,e),ke(`space`,e)}),v(ie,()=>{V()}),v(C,t=>{V(),W(e.miniToOverlay,t)}),v(()=>e.miniToOverlay,e=>{W(e,C.value)}),v(()=>s.lang.rtl,()=>{V()}),v(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue&&(Se(),p.animate())}),v(x,e=>{i(`miniState`,e)});function V(e){e===void 0?r(()=>{e=T.value?0:C.value,V(L.value*e)}):(p.isContainer.value&&ie.value&&(b.value||Math.abs(e)===C.value)&&(e+=L.value*p.scrollbarWidth.value),z.value=e)}function xe(e){ae.value=e}function H(e){let t=e?`remove`:p.isContainer.value?``:`add`;t!==``&&document.body.classList[t](`q-body--drawer-toggle`)}function Se(){_!==null&&clearTimeout(_),o.proxy&&o.proxy.$el&&o.proxy.$el.classList.add(`q-drawer--mini-animate`),R.value=!0,_=setTimeout(()=>{_=null,R.value=!1,o?.proxy?.$el?.classList.remove(`q-drawer--mini-animate`)},150)}function Ce(e){if(T.value)return;let t=C.value,n=On(e.distance.x,0,t);if(e.isFinal){n>=Math.min(75,t)?(ee(),i(`pan`,{type:`open`,stage:`end`})):(p.animate(),xe(0),V(L.value*t),i(`pan`,{type:`open`,stage:`cancel`})),oe.value=!1;return}V((s.lang.rtl?!ie.value:ie.value)?Math.max(t-n,0):Math.min(0,n-t)),xe(On(n/t,0,1)),e.isFirst&&(oe.value=!0,i(`pan`,{type:`open`,stage:`start`}))}function De(t){if(!T.value)return;let n=C.value,r=t.direction===e.side,a=(s.lang.rtl?!r:r)?On(t.distance.x,0,n):0;if(t.isFinal){Math.abs(a)<Math.min(75,n)?(p.animate(),xe(1),V(0),i(`pan`,{type:`close`,stage:`cancel`})):(j(),i(`pan`,{type:`close`,stage:`end`})),oe.value=!1;return}V(L.value*a),xe(On(1-a/n,0,1)),t.isFirst&&(oe.value=!0,i(`pan`,{type:`close`,stage:`start`}))}function Oe(){l(!1),H(!0)}function ke(t,n){p.update(e.side,t,n)}function W(t,n){ke(`size`,t?e.miniWidth:n)}return p.instances[e.side]=I,W(e.miniToOverlay,C.value),ke(`space`,E.value),ke(`offset`,le.value),e.showIfAbove&&!e.modelValue&&T.value&&e[`onUpdate:modelValue`]!==void 0&&i(`update:modelValue`,!0),u(()=>{i(`onLayout`,E.value),i(`miniState`,x.value),v(P,F,{immediate:!0}),g=e.showIfAbove;let t=()=>{(T.value?k:A)(!1,!0)};if(p.totalWidth.value!==0){r(t);return}y=v(p.totalWidth,()=>{y(),y=void 0,!T.value&&e.showIfAbove&&!b.value?ee(!1):t()})}),t(()=>{y?.(),Re(re),_!==null&&(clearTimeout(_),_=null),T.value&&Oe(),p.instances[e.side]===I&&(p.instances[e.side]=void 0,ke(`size`,0),ke(`offset`,0),ke(`space`,!1))}),()=>{let t=[];b.value&&(e.noSwipeOpen||t.push(m(h(`div`,{key:`open`,class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":`true`}),_e.value)),t.push(m(h(`div`,{ref:`backdrop`,class:ue.value,style:de.value,"aria-hidden":`true`,onClick:j}),ye.value)));let r={},i={};for(let e in a)e===`role`||e.startsWith(`aria-`)?r[e]=a[e]:i[e]=a[e];let o=x.value&&n.mini!==void 0,s=[h(`div`,{...i,key:String(o),class:[he.value,a.class]},o?n.mini():Ee(n.default))];return e.elevated&&T.value&&s.push(h(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),t.push(m(h(`aside`,{ref:`content`,class:ge.value,style:me.value,...r},s),ve.value)),h(`div`,{class:`q-drawer-container`},t)}}}),qa=`<circle cx="15" cy="15" r="15"></circle><circle cx="60" cy="15" r="9" fill-opacity=".3" style="animation-delay:-.4s"></circle><circle cx="105" cy="15" r="15"></circle>`,Ja=H({name:`QSpinnerDots`,props:ke,setup(e){return()=>{let t=je(e.size);return h(`svg`,{class:Ae(e.color,`dots`),fill:`currentColor`,width:t,height:t,viewBox:`0 0 120 30`,xmlns:`http://www.w3.org/2000/svg`,innerHTML:qa})}}}),Ya={get:(e,t)=>Yt(`/api/tasks/sessions/`+encodeURIComponent(e),t),assign:(e,t)=>Xt(`/api/tasks/sessions/`+encodeURIComponent(e),t)};function Xa(e){let t=ae({snapshot:null,base:null,taskIds:[],dirty:!1,loading:!1,busy:!1,changed:!1,conflict:!1,error:null,attempt:null}),n=!1,r=0,i=null;function a(t){if(t.sessionId!==e)throw Error(`Task assignment belongs to another session.`);return t}function o(e){t.base=e,t.taskIds=[...e.taskIds],t.dirty=!1,t.changed=!1,t.conflict=!1,t.attempt=null}let s=en(async()=>{if(n)return;let s=++r;i?.abort(),i=new AbortController,t.loading=!0;try{let c=a(await Ya.get(e,i.signal));if(n||s!==r||t.snapshot&&c.version<t.snapshot.version)return;t.snapshot=c,t.changed=t.base!==null&&c.version!==t.base.version,!t.dirty&&!t.busy&&o(c),t.dirty||(t.error=null)}catch(e){!n&&s===r&&(t.error=Qt(e))}finally{s===r&&(t.loading=!1)}});function c(e){!t.busy&&t.base&&(t.taskIds=[...new Set(e)].sort(),t.dirty=!0,t.attempt=null)}async function l(){t.busy||(await s(),t.snapshot&&!t.error&&o(t.snapshot))}async function u(){if(n||t.busy||t.loading||!t.base||!t.dirty||t.conflict)return;if(t.changed&&!t.attempt)throw Error(`Assignment changed. Reload before saving.`);let s=[...t.taskIds].sort(),c=t.base.version;t.attempt=vr(t.attempt,{sessionId:e,expectedVersion:c,taskIds:s}),t.busy=!0,t.error=null;try{let l=a(await Ya.assign(e,{requestId:t.attempt.requestId,expectedVersion:c,taskIds:s}));if(n)return;if(l.version!==c+1||JSON.stringify([...l.taskIds].sort())!==JSON.stringify(s))throw Error(`Saved task assignment does not match the requested scope.`);++r,i?.abort(),t.loading=!1,t.snapshot=l,o(l)}catch(e){throw n||(t.error=Qt(e),t.conflict=e instanceof $t&&e.status===409),e}finally{t.busy=!1}}function d(){++r,i?.abort(),t.loading=!1}function f(){n=!0,d()}return{state:t,setTasks:c,refresh:s,reload:l,save:u,pause:d,dispose:f}}function Za(e){let{t}=Y(),n=X(),r=gr(),i=Xa(e.chatId),a=T(!1),o=T(null),s=T(null),c=M(()=>n.chats[e.chatId]?.info),l=M(()=>c.value&&c.value.status!==`closed`),u=M(()=>o.value?r.forStore(o.value).taskLabels:null),d=M(()=>{let e=i.state.snapshot?.taskIds??c.value?.taskIds??[],n=e[0];return n?e.length>1?t(`agent.tasks.ambiguousInheritance`):t(`agent.tasks.inheritance`,{task:u.value?.get(n)?.title??n}):t(`agent.tasks.noInheritance`)}),p=M(()=>e.active&&a.value);br(()=>o.value,p);let m=!1,h=en(async()=>{if(p.value&&!m){s.value=null;try{if(!o.value){let e=await r.current();if(m||!p.value)return;o.value=e.storeId}if(await i.refresh(),m||!p.value)return;if(o.value){let e=r.forStore(o.value);await Promise.all(i.state.taskIds.map(t=>e.resolve(`task`,t)))}}catch(e){m||(s.value=Qt(e))}}});v(p,e=>{e?h():i.pause()}),v(()=>c.value?.taskIds,()=>{a.value&&e.active&&h()});let g=Dn([`artifacts:changed`],()=>{e.active&&a.value&&h()});async function _(){await i.reload(),await h()}async function y(e){i.state.taskIds.includes(e)||(i.setTasks([...i.state.taskIds,e]),await x())}async function b(e){i.setTasks(i.state.taskIds.filter(t=>t!==e)),await x()}async function x(){try{await i.save()}catch{}}return f(()=>{m=!0,g.close(),i.dispose()}),{model:i,open:a,storeId:o,localError:s,info:c,canEdit:l,labels:u,inheritanceHint:d,add:y,remove:b,save:x,reload:_}}var Qa={class:`row items-start q-gutter-sm q-mt-sm agent-session-tasks__picker-row`},$a=$(R({__name:`AgentSessionTaskPicker`,props:g({storeId:{},disable:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:g([`add`],[`update:modelValue`]),setup(e,{emit:t}){let n=t,{t:r}=Y(),i=s(e,`modelValue`);function a(){i.value&&=(n(`add`,i.value),null)}return(t,n)=>(o(),P(`div`,Qa,[b(Sr,{modelValue:i.value,"onUpdate:modelValue":n[0]||=e=>i.value=e,class:`col`,"store-id":e.storeId,kind:`task`,"popup-content-class":`agent-menu agent-session-tasks-menu`,"popup-content-style":{fontFamily:`var(--font-agent)`},disable:e.disable},null,8,[`modelValue`,`store-id`,`disable`]),b(Un,{size:`sm`,tooltip:O(r)(`agent.tasks.add`),disable:!i.value||e.disable,onClick:a},null,8,[`tooltip`,`disable`])]))}}),[[`__scopeId`,`data-v-8797e027`]]),eo=[`title`],to={key:0},no=$(R({__name:`AgentSessionTaskChip`,props:{id:{},task:{},removable:{type:Boolean}},emits:[`remove`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),w(Ar,{dense:``,size:`sm`,class:`agent-session-tasks__task`,removable:e.removable,onRemove:i[0]||=e=>n(`remove`)},{default:y(()=>[L(`span`,{class:`ellipsis`,title:e.task?.title??e.id},[D(p(e.task?.title??e.id),1),e.task?.state===`closed`?(o(),P(`span`,to,` · `+p(O(r)(`artifacts.definitions.closed`)),1)):E(``,!0)],8,eo)]),_:1},8,[`removable`]))}}),[[`__scopeId`,`data-v-972c7344`]]),ro={key:0,class:`agent-session-tasks__body`},io={key:1,role:`alert`,class:`text-negative`},ao={class:`agent-session-tasks__hint`,role:`status`},oo={key:0},so={class:`row q-gutter-xs`},co={key:4,class:`row q-gutter-sm`},lo=$(R({__name:`AgentSessionTasks`,props:{chatId:{},active:{type:Boolean}},setup(e){let t=e,{t:n}=Y(),r=T(null),{model:i,open:a,storeId:s,localError:c,info:l,canEdit:u,labels:d,inheritanceHint:f,add:m,remove:h,save:g,reload:_}=Za(t);return(e,t)=>(o(),w(Dr,{modelValue:O(a),"onUpdate:modelValue":t[1]||=e=>ee(a)?a.value=e:null,dense:``,"dense-toggle":``,class:`agent-session-tasks app-icon-expansion`,"header-class":`agent-session-tasks__header`},{header:y(()=>[b(Q,{side:``,class:`agent-session-tasks__icon`},{default:y(()=>[b(G,{name:O(rt),size:`16px`,class:`app-icon-neutral`},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`agent.tasks.title`,{count:O(l)?.taskIds?.length??0})),1)]),_:1})]),default:y(()=>[O(a)?(o(),P(`div`,ro,[O(i).state.loading||O(i).state.busy?(o(),w(yr,{key:0,indeterminate:``})):E(``,!0),O(c)||O(i).state.error?(o(),P(`div`,io,p(O(c)||O(i).state.error),1)):E(``,!0),O(i).state.changed||O(i).state.conflict?(o(),w(Nn,{key:2,dense:``,class:`agent-session-tasks__notice`},{default:y(()=>[D(p(O(n)(`agent.tasks.changed`)),1)]),_:1})):E(``,!0),L(`div`,ao,[D(p(O(f))+` `,1),O(l)?.status===`busy`?(o(),P(`div`,oo,p(O(n)(`agent.tasks.nextTurn`)),1)):E(``,!0)]),O(s)&&O(u)?(o(),w($a,{key:3,modelValue:r.value,"onUpdate:modelValue":t[0]||=e=>r.value=e,"store-id":O(s),disable:O(i).state.busy||O(i).state.loading||O(i).state.dirty||!O(i).state.base,onAdd:O(m)},null,8,[`modelValue`,`store-id`,`disable`,`onAdd`])):E(``,!0),L(`div`,so,[(o(!0),P(I,null,z(O(i).state.taskIds,e=>(o(),w(no,{key:e,id:e,task:O(d)?.get(e),removable:!(!O(u)||O(i).state.busy||O(i).state.loading||O(i).state.dirty),onRemove:t=>O(h)(e)},null,8,[`id`,`task`,`removable`,`onRemove`]))),128))]),O(c)||O(i).state.error||O(i).state.conflict||O(i).state.changed&&O(i).state.dirty?(o(),P(`div`,co,[O(i).state.dirty&&!O(i).state.conflict&&(!O(i).state.changed||O(i).state.attempt!==null)?(o(),w(K,{key:0,flat:``,dense:``,size:`sm`,label:O(n)(`agent.tasks.retry`),loading:O(i).state.busy,onClick:O(g)},null,8,[`label`,`loading`,`onClick`])):E(``,!0),b(K,{flat:``,dense:``,size:`sm`,label:O(n)(`agent.tasks.reload`),disable:O(i).state.busy,onClick:O(_)},null,8,[`label`,`disable`,`onClick`])])):E(``,!0)])):E(``,!0)]),_:1},8,[`modelValue`]))}}),[[`__scopeId`,`data-v-d4f806ad`]]),uo=H({name:`QChatMessage`,props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){function n(n){return t.stamp===void 0?e.stamp?[n,h(`div`,{class:`q-message-stamp`,[e.stampHtml?`innerHTML`:`textContent`]:e.stamp})]:[n]:[n,h(`div`,{class:`q-message-stamp`},t.stamp())]}function r(t,r,i){let a=`q-message-text q-message-text--${i}`+(e.bgColor===void 0?``:` text-${e.bgColor}`),o=`q-message-text-content q-message-text-content--${i}`+(e.textColor===void 0?``:` text-${e.textColor}`),s=r?t.length>1?e=>e:e=>h(`div`,[e]):t=>h(`div`,{[e.textHtml?`innerHTML`:`textContent`]:t});return t.map((e,t)=>h(`div`,{key:t,class:a},[h(`div`,{class:o},n(s(e)))]))}return()=>{let n=e.sent?`sent`:`received`,i=[];t.avatar===void 0?e.avatar!==void 0&&i.push(h(`img`,{class:`q-message-avatar q-message-avatar--${n}`,src:e.avatar,"aria-hidden":`true`})):i.push(t.avatar());let a=[];t.name===void 0?e.name!==void 0&&a.push(h(`div`,{class:`q-message-name q-message-name--${n}`,[e.nameHtml?`innerHTML`:`textContent`]:e.name})):a.push(h(`div`,{class:`q-message-name q-message-name--${n}`},t.name())),t.default===void 0?e.text!==void 0&&a.push(r(e.text,!1,n)):a.push(r(pe(t.default()),!0,n)),i.push(h(`div`,{class:e.size===void 0?``:`col-${e.size}`},a));let o=[];return t.label===void 0?e.label!==void 0&&o.push(h(`div`,{class:`q-message-label`,[e.labelHtml?`innerHTML`:`textContent`]:e.label})):o.push(h(`div`,{class:`q-message-label`},t.label())),o.push(h(`div`,{class:`q-message-container row items-end no-wrap`+(e.sent?` reverse`:``)},i)),h(`div`,{class:`q-message q-message-${n}`},o)}}}),fo={ratio:[String,Number]};function po(e,t){return M(()=>{let n=e.ratio||t?.value;if(typeof n==`string`&&n.trim()===``)return null;let r=Number(n);return Number.isFinite(r)&&r>0?{aspectRatio:r}:null})}var mo=1.7778,ho={value:!1};function go(e){return e.naturalHeight===0?.5:e.naturalWidth/e.naturalHeight}var _o=H({name:`QImg`,props:{...fo,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:`lazy`},loadingShowDelay:{type:[Number,String],default:0},fetchpriority:{type:String,default:`auto`},width:String,height:String,initialRatio:[Number,String],placeholderSrc:String,errorSrc:String,fit:{type:String,default:`cover`},position:{type:String,default:`50% 50%`},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,ssrPrerender:Boolean,spinnerColor:String,spinnerSize:String},emits:[`load`,`error`],setup(e,{slots:t,emit:n}){let r=N(e.initialRatio||mo),i=po(e,r),a=S(),{registerTimeout:o,removeTimeout:s}=Be(),{registerTimeout:c,removeTimeout:l}=Be(),d=M(()=>e.placeholderSrc===void 0?null:{src:e.placeholderSrc}),f=M(()=>e.errorSrc===void 0?null:{src:e.errorSrc,__qerror:!0}),p=[N(null),N(d.value)],m=N(0),g=N(!1),_=N(!1),y=null,b=be.value&&(e.ssrPrerender||e.ratio||e.height||e.initialRatio)&&(e.src||e.srcset||e.sizes)?N(!0):ho;b.value&&(y=T(null),m.value=1,p[0].value=d.value,p[1].value=O());let x=null,C=M(()=>`q-img q-img--${e.noNativeMenu?`no-`:``}menu`),w=M(()=>({width:e.width,height:e.height,...i.value})),E=M(()=>`q-img__image ${e.imgClass===void 0?``:e.imgClass+` `}q-img__image--with${e.noTransition?`out`:``}-transition q-img__image--`),D=M(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));function O(){return e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null}function k(){if(l(),e.loadingShowDelay===0){g.value=!0;return}c(()=>{g.value=!0},e.loadingShowDelay)}function A(){l(),g.value=!1}function ee({target:e}){le(a)||(s(),r.value=go(e),x!==null&&cancelAnimationFrame(x),x=requestAnimationFrame(()=>{x=requestAnimationFrame(()=>{if(x=null,le(a))return;let t=go(e);Math.abs(t-r.value)>r.value/100&&(r.value=t)})}),j(e,1))}function j(e,t){t===1e3||le(a)||(e.complete?te(e):o(()=>{j(e,t+1)},50))}function te(e){le(a)||(b.value=!1,m.value^=1,p[m.value].value=null,A(),e.getAttribute(`__qerror`)!==`true`&&(_.value=!1),n(`load`,e.currentSrc||e.src))}function ne(e){s(),A(),b.value=!1,_.value=!0,p[m.value].value=f.value,p[m.value^1].value=d.value,n(`error`,e)}function P(t){let n=p[t].value,r={key:`img_`+t,class:E.value,style:D.value,alt:e.alt===void 0?``:e.alt,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":`true`,draggable:e.draggable,...n};return m.value===t?(Object.assign(r,{class:r.class+`current`,onLoad:ee,onError:ne}),b.value&&(r.class+=` q-img__image--loaded`,r.ref=y)):r.class+=`loaded`,h(`div`,{class:`q-img__container absolute-full`,key:`img`+t},h(`img`,r))}function re(){return g.value?h(`div`,{key:`loading`,class:`q-img__loading absolute-full flex flex-center`},t.loading===void 0?e.noSpinner?void 0:[h(Oe,{color:e.spinnerColor,size:e.spinnerSize})]:t.loading()):h(`div`,{key:`content`,class:`q-img__content absolute-full q-anchor--skip`},Ee(t[_.value?`error`:`default`]))}{let e=e=>{v(O,e=>{s(),b.value=!1,_.value=!1,e===null?(A(),p[m.value^1].value=d.value):k(),p[m.value].value=e},{immediate:e})};be.value?u(()=>{let t=b.value;if(t){let e=y.value;e.complete?e.naturalWidth===0?ne(new Event(`error`)):ee({target:e}):k()}e(!t)}):e(!0)}return()=>{let t=[];return p[0].value!==null&&t.push(P(0)),p[1].value!==null&&t.push(P(1)),t.push(h(de,{name:`q-transition--fade`},re)),h(`div`,{key:`main`,class:C.value,style:w.value,...e.alt?{role:`img`,"aria-label":e.alt}:{}},t)}}});function vo(e,t){if(e.kind===`artifact`)return t(`agent.context.artifact`,{name:e.name});if(e.kind===`note`)return e.name;if(e.kind===`file`)return t(`agent.context.file`,{path:e.path});if(e.kind===`directory`)return t(`agent.context.directory`,{path:e.path});if(e.kind===`review`)return t(`agent.context.review`);if(e.kind===`attachment`)return t(`agent.context.attachment`,{name:e.name});let n=t(`agent.source.${e.source}`);return e.path===void 0?t(`agent.context.diff`,{source:n}):t(`agent.context.diffFile`,{source:n,path:e.path})}var yo=R({__name:`AgentContextChip`,props:{item:{},removable:{type:Boolean},downloadable:{type:Boolean}},emits:[`remove`,`download`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=M(()=>vo(n.item,i)),s=M(()=>n.downloadable&&n.item.kind===`attachment`);return(t,n)=>(o(),w(Ar,{dense:``,square:``,size:`sm`,removable:e.removable,clickable:s.value,icon:s.value?O(_t):void 0,label:a.value,onRemove:n[0]||=e=>r(`remove`),onClick:n[1]||=e=>s.value&&r(`download`)},null,8,[`removable`,`clickable`,`icon`,`label`]))}}),bo={key:0,class:`row q-gutter-xs q-mt-xs`},xo=[`aria-label`,`onClick`,`onKeydown`],So={key:1,class:`row q-gutter-xs q-mt-xs`},Co=$(R({__name:`AgentMessageAttachments`,props:{context:{},source:{}},setup(e){let t=e,{t:n}=Y(),r=U(),i=dr();function a(e){i.open(`image`,t.source,{title:e.name,index:t.context.indexOf(e),content:e.data})}function s(e){e.kind===`attachment`&&r.dialog({title:n(`agent.attach.downloadTitle`),message:n(`agent.attach.downloadMessage`,{name:e.name}),ok:{label:n(`agent.attach.download`),flat:!0,noCaps:!0},cancel:{label:n(`agent.newChat.cancel`),flat:!0,noCaps:!0}}).onOk(()=>{ur(e)})}let c=M(()=>t.context.filter(ir)),l=M(()=>t.context.filter(e=>!ir(e)));return(e,t)=>(o(),P(`div`,null,[c.value.length>0?(o(),P(`div`,bo,[(o(!0),P(I,null,z(c.value,(e,t)=>(o(),P(`div`,{key:t,class:`agent-item__thumb`,role:`button`,tabindex:`0`,"aria-label":e.name,onClick:t=>a(e),onKeydown:ce(t=>a(e),[`enter`])},[b(_o,{src:O(rr)(e),alt:e.name,fit:`cover`,class:`fit rounded-borders`},null,8,[`src`,`alt`])],40,xo))),128))])):E(``,!0),l.value.length>0?(o(),P(`div`,So,[(o(!0),P(I,null,z(l.value,(e,t)=>(o(),w(yo,{key:t,downloadable:``,item:e,onDownload:t=>s(e)},null,8,[`item`,`onDownload`]))),128))])):E(``,!0)]))}}),[[`__scopeId`,`data-v-a05b8739`]]),wo={class:`agent-item__text`},To=$(R({__name:`AgentUserMessage`,props:{item:{},chatId:{}},setup(e){return(t,n)=>(o(),w(uo,{sent:``,"bg-color":`primary`,"text-color":`white`,class:`agent-item`},{default:y(()=>[L(`div`,null,[L(`div`,wo,p(e.item.text),1),b(Co,{context:e.item.context,source:{type:`message`,sessionId:e.chatId,messageId:e.item.id}},null,8,[`context`,`source`])])]),_:1}))}}),[[`__scopeId`,`data-v-f80f2fb9`]]),Eo=300,Do=$(R({__name:`AgentAssistantMessage`,props:{text:{},source:{}},setup(e){let t=U();return(n,r)=>(o(),w(uo,{size:`12`,"bg-color":O(t).dark.isActive?`grey-9`:`grey-3`,"text-color":O(t).dark.isActive?`grey-2`:`grey-10`,class:`agent-item`},{default:y(()=>[b(xr,{"file-links":``,text:e.text,"preview-source":e.source,"mermaid-debounce":Eo},null,8,[`text`,`preview-source`])]),_:1},8,[`bg-color`,`text-color`]))}}),[[`__scopeId`,`data-v-67ce6781`]]);function Oo(){}Oo.prototype={diff:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=n.callback;typeof n==`function`&&(r=n,n={}),this.options=n;var i=this;function a(e){return r?(setTimeout(function(){r(void 0,e)},0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e)),t=this.removeEmpty(this.tokenize(t));var o=t.length,s=e.length,c=1,l=o+s;n.maxEditLength&&(l=Math.min(l,n.maxEditLength));var u=n.timeout??1/0,d=Date.now()+u,f=[{oldPos:-1,lastComponent:void 0}],p=this.extractCommon(f[0],t,e,0);if(f[0].oldPos+1>=s&&p+1>=o)return a([{value:this.join(t),count:t.length}]);var m=-1/0,h=1/0;function g(){for(var n=Math.max(m,-c);n<=Math.min(h,c);n+=2){var r=void 0,l=f[n-1],u=f[n+1];l&&(f[n-1]=void 0);var d=!1;if(u){var g=u.oldPos-n;d=u&&0<=g&&g<o}var _=l&&l.oldPos+1<s;if(!d&&!_){f[n]=void 0;continue}if(r=!_||d&&l.oldPos+1<u.oldPos?i.addToPath(u,!0,void 0,0):i.addToPath(l,void 0,!0,1),p=i.extractCommon(r,t,e,n),r.oldPos+1>=s&&p+1>=o)return a(ko(i,r.lastComponent,t,e,i.useLongestToken));f[n]=r,r.oldPos+1>=s&&(h=Math.min(h,n-1)),p+1>=o&&(m=Math.max(m,n+1))}c++}if(r)(function e(){setTimeout(function(){if(c>l||Date.now()>d)return r();g()||e()},0)})();else for(;c<=l&&Date.now()<=d;){var _=g();if(_)return _}},addToPath:function(e,t,n,r){var i=e.lastComponent;return i&&i.added===t&&i.removed===n?{oldPos:e.oldPos+r,lastComponent:{count:i.count+1,added:t,removed:n,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:t,removed:n,previousComponent:i}}},extractCommon:function(e,t,n,r){for(var i=t.length,a=n.length,o=e.oldPos,s=o-r,c=0;s+1<i&&o+1<a&&this.equals(t[s+1],n[o+1]);)s++,o++,c++;return c&&(e.lastComponent={count:c,previousComponent:e.lastComponent}),e.oldPos=o,s},equals:function(e,t){return this.options.comparator?this.options.comparator(e,t):e===t||this.options.ignoreCase&&e.toLowerCase()===t.toLowerCase()},removeEmpty:function(e){for(var t=[],n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t},castInput:function(e){return e},tokenize:function(e){return e.split(``)},join:function(e){return e.join(``)}};function ko(e,t,n,r,i){for(var a=[],o;t;)a.push(t),o=t.previousComponent,delete t.previousComponent,t=o;a.reverse();for(var s=0,c=a.length,l=0,u=0;s<c;s++){var d=a[s];if(!d.removed){if(!d.added&&i){var f=n.slice(l,l+d.count);f=f.map(function(e,t){var n=r[u+t];return n.length>e.length?n:e}),d.value=e.join(f)}else d.value=e.join(n.slice(l,l+d.count));l+=d.count,d.added||(u+=d.count)}else if(d.value=e.join(r.slice(u,u+d.count)),u+=d.count,s&&a[s-1].added){var p=a[s-1];a[s-1]=a[s],a[s]=p}}var m=a[c-1];return c>1&&typeof m.value==`string`&&(m.added||m.removed)&&e.equals(``,m.value)&&(a[c-2].value+=m.value,a.pop()),a}new Oo;var Ao=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,jo=/\S/,Mo=new Oo;Mo.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!jo.test(e)&&!jo.test(t)},Mo.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),n=0;n<t.length-1;n++)!t[n+1]&&t[n+2]&&Ao.test(t[n])&&Ao.test(t[n+2])&&(t[n]+=t[n+2],t.splice(n+1,2),n--);return t};var No=new Oo;No.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,`
|
|
5
|
+
`));var t=[],n=e.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(var r=0;r<n.length;r++){var i=n[r];r%2&&!this.options.newlineIsToken?t[t.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),t.push(i))}return t};function Po(e,t,n){return No.diff(e,t,n)}var Fo=new Oo;Fo.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};var Io=new Oo;Io.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function Lo(e){"@babel/helpers - typeof";return Lo=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Lo(e)}var Ro=Object.prototype.toString,zo=new Oo;zo.useLongestToken=!0,zo.tokenize=No.tokenize,zo.castInput=function(e){var t=this.options,n=t.undefinedReplacement,r=t.stringifyReplacer,i=r===void 0?function(e,t){return t===void 0?n:t}:r;return typeof e==`string`?e:JSON.stringify(Bo(e,null,null,i),i,` `)},zo.equals=function(e,t){return Oo.prototype.equals.call(zo,e.replace(/,([\r\n])/g,`$1`),t.replace(/,([\r\n])/g,`$1`))};function Bo(e,t,n,r,i){t||=[],n||=[],r&&(e=r(i,e));for(var a=0;a<t.length;a+=1)if(t[a]===e)return n[a];var o;if(Ro.call(e)===`[object Array]`){for(t.push(e),o=Array(e.length),n.push(o),a=0;a<e.length;a+=1)o[a]=Bo(e[a],t,n,r,i);return t.pop(),n.pop(),o}if(e&&e.toJSON&&(e=e.toJSON()),Lo(e)===`object`&&e!==null){t.push(e),o={},n.push(o);var s=[],c;for(c in e)e.hasOwnProperty(c)&&s.push(c);for(s.sort(),a=0;a<s.length;a+=1)c=s[a],o[c]=Bo(e[c],t,n,r,c);t.pop(),n.pop()}else o=e;return o}var Vo=new Oo;Vo.tokenize=function(e){return e.slice()},Vo.join=Vo.removeEmpty=function(e){return e};var Ho={class:`agent-diff`},Uo={class:`agent-diff__path text-mono text-caption`},Wo={class:`agent-diff__body text-mono`},Go={key:0,class:`text-caption text-grey-6 q-pa-xs`},Ko={key:1,class:`text-caption text-warning q-pa-xs`},qo=200,Jo=$(R({__name:`AgentDiffView`,props:{diff:{}},setup(e){let t={added:`+`,removed:`-`,context:` `},n=e,{t:r}=Y(),i=M(()=>{let e=[];for(let t of Po(n.diff.oldText??``,n.diff.newText)){let n=t.added?`added`:t.removed?`removed`:`context`,r=t.value.replace(/\n$/,``).split(`
|
|
6
|
+
`);for(let t of r)e.push({type:n,text:t})}return{rows:e.slice(0,qo),hidden:Math.max(0,e.length-qo)}});return(n,a)=>(o(),P(`div`,Ho,[L(`div`,Uo,p(e.diff.path),1),L(`pre`,Wo,[(o(!0),P(I,null,z(i.value.rows,(e,n)=>(o(),P(`span`,{key:n,class:j([`agent-diff__row`,`agent-diff__row--${e.type}`])},p(t[e.type])+p(e.text)+`
|
|
7
|
+
`,3))),128))]),i.value.hidden>0?(o(),P(`div`,Go,` … `+p(i.value.hidden)+` more lines `,1)):E(``,!0),e.diff.truncated?(o(),P(`div`,Ko,p(O(r)(`agent.tool.diffTruncated`)),1)):E(``,!0)]))}}),[[`__scopeId`,`data-v-60226168`]]),Yo={class:`q-px-sm q-pb-xs column q-gutter-y-xs agent-tool__body`},Xo={class:`agent-tool__caption text-grey-6`},Zo={class:`agent-tool__output text-mono`},Qo=$(R({__name:`AgentToolCard`,props:{item:{}},setup(e){let t={read:vt,edit:ot,delete:Dt,move:Kt,search:it,execute:Mt,think:Et,fetch:at,switch_mode:ct},n={pending:`grey`,in_progress:`primary`,completed:`positive`,failed:`negative`},{t:r}=Y();return(i,a)=>(o(),w(Dr,{dense:``,"dense-toggle":``,"switch-toggle-side":``,class:`app-icon-expansion agent-tool`,"default-opened":e.item.diffs.length>0},{header:y(()=>[b(Q,{avatar:``,class:`agent-tool__icon`},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:t[e.item.toolKind??``]??O(`M22.61,19L13.53,9.91C14.46,7.57 14,4.81 12.09,2.91C9.79,0.61 6.21,0.4 3.66,2.26L7.5,6.11L6.08,7.5L2.25,3.69C0.39,6.23 0.6,9.82 2.9,12.11C4.76,13.97 7.47,14.46 9.79,13.59L18.9,22.7C19.29,23.09 19.92,23.09 20.31,22.7L22.61,20.4C23,20 23,19.39 22.61,19M19.61,20.59L10.15,11.13C9.54,11.58 8.86,11.85 8.15,11.95C6.79,12.15 5.36,11.74 4.32,10.7C3.37,9.76 2.93,8.5 3,7.26L6.09,10.35L10.33,6.11L7.24,3C8.5,2.95 9.73,3.39 10.68,4.33C11.76,5.41 12.17,6.9 11.92,8.29C11.8,9 11.5,9.66 11.04,10.25L20.5,19.7L19.61,20.59Z`),size:`14px`},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[b(Wn,{class:`ellipsis`},{default:y(()=>[D(p(e.item.title||e.item.locations[0]||e.item.toolKind),1)]),_:1})]),_:1}),b(Q,{side:``},{default:y(()=>[e.item.status===`in_progress`?(o(),w(Oe,{key:0,size:`12px`,color:`primary`})):(o(),w(Qn,{key:1,outline:``,class:`agent-tool__badge`,rounded:``,color:n[e.item.status],label:e.item.status===`failed`?O(r)(`agent.tool.failed`):e.item.status===`completed`?`✓`:`…`},null,8,[`color`,`label`]))]),_:1})]),default:y(()=>[L(`div`,Yo,[(o(!0),P(I,null,z(e.item.locations.filter(t=>!e.item.diffs.some(e=>e.path===t)),e=>(o(),P(`div`,{key:e,class:`text-mono text-caption text-grey-6 ellipsis`},p(e),1))),128)),(o(!0),P(I,null,z(e.item.diffs,e=>(o(),w(Jo,{key:e.path,diff:e},null,8,[`diff`]))),128)),e.item.output?(o(),P(I,{key:0},[L(`div`,Xo,p(O(r)(`agent.tool.output`)),1),L(`pre`,Zo,p(e.item.output),1)],64)):E(``,!0)])]),_:1},8,[`default-opened`]))}}),[[`__scopeId`,`data-v-f6cfc310`]]),$o={class:`q-px-md q-pb-xs agent-thought__text`},es=$(R({__name:`AgentThoughtMessage`,props:{text:{}},setup(e){let{t}=Y();return(n,r)=>(o(),w(Dr,{dense:``,"dense-toggle":``,class:`app-icon-expansion agent-item agent-thought text-grey-6`,label:O(t)(`agent.thinking`),icon:O(Et)},{default:y(()=>[L(`div`,$o,p(e.text),1)]),_:1},8,[`label`,`icon`]))}}),[[`__scopeId`,`data-v-9ff16053`]]),ts={class:`agent-item agent-auto-approved row no-wrap items-center text-grey-6`},ns={class:`ellipsis`},rs=$(R({__name:`AgentAutoApprovedMessage`,props:{title:{}},setup(e){let{t}=Y();return(n,r)=>(o(),P(`div`,ts,[b(G,{name:O(yt),class:`app-icon-warning q-mr-xs`},null,8,[`name`]),L(`span`,ns,p(O(t)(`agent.autoApprove.approved`,{title:e.title})),1)]))}}),[[`__scopeId`,`data-v-2304a1b7`]]),is=R({__name:`AgentErrorMessage`,props:{text:{},canContinue:{type:Boolean}},emits:[`continue`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),w(Nn,{dense:``,rounded:``,class:`agent-item bg-negative text-white`},k({default:y(()=>[D(p(e.text)+` `,1)]),_:2},[e.canContinue?{name:`action`,fn:y(()=>[b(K,{flat:``,dense:``,"no-caps":``,label:O(r)(`agent.continue`),onClick:i[0]||=e=>n(`continue`)},null,8,[`label`])]),key:`0`}:void 0]),1024))}}),as=R({__name:`AgentChatItem`,props:{item:{},chatId:{},canContinue:{type:Boolean}},emits:[`continue`],setup(e,{emit:t}){let n=t;return(t,r)=>e.item.kind===`user`?(o(),w(To,{key:0,item:e.item,"chat-id":e.chatId},null,8,[`item`,`chat-id`])):e.item.kind===`agent`?(o(),w(Do,{key:1,text:e.item.text,source:{type:`message`,sessionId:e.chatId,messageId:e.item.id}},null,8,[`text`,`source`])):e.item.kind===`thought`?(o(),w(es,{key:2,text:e.item.text},null,8,[`text`])):e.item.kind===`auto-approved`?(o(),w(rs,{key:3,title:e.item.title},null,8,[`title`])):e.item.kind===`tool`?(o(),w(Qo,{key:4,class:`agent-item`,item:e.item},null,8,[`item`])):(o(),w(is,{key:5,text:e.item.text,"can-continue":e.canContinue,onContinue:r[0]||=e=>n(`continue`)},null,8,[`text`,`can-continue`]))}}),os=$(R({__name:`AgentChatBanners`,props:{autoApprovesEdits:{type:Boolean},autoApprove:{type:Boolean},reviewStale:{type:Boolean},closed:{type:Boolean},error:{}},emits:[`disable-auto-approve`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>(o(),P(I,null,[e.autoApprovesEdits&&!e.autoApprove?(o(),w(Nn,{key:0,dense:``,class:`bg-warning text-dark agent-chat-banners__banner`},{default:y(()=>[D(p(O(r)(`agent.autoApprovesEdits`)),1)]),_:1})):E(``,!0),e.autoApprove?(o(),w(Nn,{key:1,dense:``,"inline-actions":``,class:`bg-warning text-dark agent-chat-banners__banner`},{action:y(()=>[b(K,{flat:``,dense:``,"no-caps":``,color:`blue-10`,class:`text-weight-bold`,label:O(r)(`agent.autoApprove.turnOff`),onClick:i[0]||=e=>n(`disable-auto-approve`)},null,8,[`label`])]),default:y(()=>[D(p(O(r)(`agent.autoApprove.banner`))+` `,1)]),_:1})):E(``,!0),e.reviewStale?(o(),w(Nn,{key:2,dense:``,class:`bg-warning text-dark agent-chat-banners__banner`},{default:y(()=>[D(p(O(r)(`agent.reviewStale`)),1)]),_:1})):E(``,!0),e.closed?(o(),w(Nn,{key:3,dense:``,class:`bg-grey-7 text-white agent-chat-banners__banner`},{default:y(()=>[D(p(O(r)(`agent.sessionClosed`)),1)]),_:1})):E(``,!0),e.error?(o(),w(Nn,{key:4,dense:``,class:`bg-negative text-white agent-chat-banners__banner`},{default:y(()=>[D(p(e.error),1)]),_:1})):E(``,!0)],64))}}),[[`__scopeId`,`data-v-ece62303`]]);function ss(e){return e instanceof HTMLElement&&e.classList.contains(`agent-mention`)}function cs(e){let t=[];for(let n of e.childNodes)n instanceof Text?t.push({type:`text`,text:n.data}):ss(n)?t.push({type:`mention`,path:n.dataset.path??``}):n instanceof HTMLBRElement?t.push({type:`br`}):n instanceof HTMLElement&&t.push({type:`block`,children:cs(n)});return t}function ls(e){let t=document.createElement(`span`);t.className=`agent-mention`,t.contentEditable=`false`,t.dataset.path=e,t.dataset.tooltip=e;let n=document.createElement(`span`);n.className=`agent-mention__label`;let r=document.createElement(`button`);return r.type=`button`,r.className=`agent-mention__remove`,r.tabIndex=-1,r.textContent=`×`,t.append(n,r),t}function us(e,t){let n=window.getSelection(),r;if(n&&n.rangeCount>0){let e=n.getRangeAt(0).cloneRange();e.collapse(!0),r=e.getBoundingClientRect()}(!r||r.top===0&&r.height===0)&&(r=e?.getBoundingClientRect());let i=r?.top??window.innerHeight,a=r?.left??8;return{left:Math.max(8,Math.min(a,window.innerWidth-t-8)),bottom:window.innerHeight-i+6}}function ds(e){let t=window.getSelection();if(!t||!t.isCollapsed||!e||!t.focusNode||!e.contains(t.focusNode))return null;let{focusNode:n,focusOffset:r}=t;if(n instanceof Text&&r===0){let e=n.previousSibling;return ss(e)?e:null}if(n===e&&r>0){let t=e?.childNodes[r-1];return ss(t)?t:null}return null}function fs(e,t){let n=((t.target instanceof Element?t.target:null)?.closest(`.agent-mention__remove`))?.closest(`.agent-mention`);return ss(n)&&e?.contains(n)?n:null}function ps(e,t){return!!e?.contains(t.node)&&t.start>=0&&t.end<=t.node.length&&t.end>t.start&&t.node.data.slice(t.start,t.end)===t.text}function ms(e,t,n){if(!ps(e,t))return!1;let r=document.createRange();r.setStart(t.node,t.start),r.setEnd(t.node,t.end),r.deleteContents();let i=ls(n);r.insertNode(i);let a=document.createTextNode(` `);i.after(a);let o=document.createRange();o.setStart(a,1),o.collapse(!0);let s=window.getSelection();return s?.removeAllRanges(),s?.addRange(o),!0}var hs=80,gs=30;function _s(e){let{registerTimeout:n,removeTimeout:r}=Be(),i=0;function a(){r(),i++}async function o(t,n){try{let{paths:r}=await Yt(`/api/agent/files?q=${encodeURIComponent(t)}&limit=${gs}`);n===i&&e.onResult(r)}catch{n===i&&e.onError()}}function s(e){let t=++i;n(()=>{o(e,t)},hs)}return t(a),l(a),{search:s,cancel:a}}var vs=340;function ys(e,n){let r=T(null),i=null,{search:a,cancel:o}=_s({onResult(t){i&&!A(n.disabled)&&ps(A(e),i)?r.value={items:t,active:0,...us(A(e),vs)}:s()},onError:s});function s(){o(),i=null,r.value=null}function c(){let t=window.getSelection(),r=t?.focusNode;if(A(n.disabled)||!t||!t.isCollapsed||!(r instanceof Text)||!A(e)?.contains(r)){s();return}let o=Bn(r.data.slice(0,t.focusOffset));if(!o){s();return}i={node:r,start:o.start,end:t.focusOffset,text:r.data.slice(o.start,t.focusOffset)},a(o.query)}function u(t){let a=r.value?.items[t];if(A(n.disabled)||a===void 0||!i){s();return}let o=ms(A(e),i,a);s(),o&&n.onChanged()}function d(e){let t=r.value;if(!t)return!1;if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(e.preventDefault(),t.items.length>0){let n=e.key===`ArrowDown`?1:-1;r.value={...t,active:(t.active+n+t.items.length)%t.items.length}}return!0}return(e.key===`Tab`||e.key===`Enter`)&&!e.shiftKey&&t.items.length>0?(e.preventDefault(),u(t.active),!0):e.key===`Escape`&&(e.preventDefault(),s(),!0)}return v(()=>A(n.disabled),e=>{e&&s()},{flush:`sync`}),v(()=>A(e),s,{flush:`sync`}),t(s),l(s),{popup:r,closePopup:s,updateTrigger:c,pick:u,handleKeydown:d}}var bs=[`en-US`,`ru-RU`],xs=new Set([`not-allowed`,`service-not-allowed`,`audio-capture`,`language-not-supported`,`network`]);function Ss(e){if(!e?.isSecureContext)return null;let t=e.SpeechRecognition??e.webkitSpeechRecognition;return Cs(t)?t:null}function Cs(e){return typeof e==`function`}function ws(e){let t=new Set,n=[];for(let r of[...e,...bs]){let e=r.toLowerCase();r&&!t.has(e)&&(t.add(e),n.push(r))}return n}function Ts(e){return e.map(e=>e.trim()).filter(e=>e!==``).join(` `)}function Es(e,t){let n=[],r=[];for(let i=e.resultIndex;i<e.results.length;i++){let a=e.results[i];if(!a)continue;let o=a[0]?.transcript??``;a.isFinal?t.has(i)||(t.add(i),n.push(o)):r.push(o)}return{finals:n,interim:Ts(r)}}function Ds(e,t,n){return`${e!==``&&!/\s$/.test(e)?` `:``}${n}${t!==``&&!/^\s/.test(t)?` `:``}`}function Os(e){return(e.code===`Space`||e.key===` `)&&!e.ctrlKey&&e.metaKey&&e.altKey&&!e.shiftKey&&!e.repeat&&!e.isComposing}function ks(e){return e.code===`Space`||e.key===` `||!e.metaKey||!e.altKey}function As(e,t){let{t:n,locale:r}=Y(),i=re(e),a=T(!0),{popup:o,closePopup:s,updateTrigger:c,pick:l,handleKeydown:u}=ys(e,{disabled:t.disabled,onChanged:h});function d(){return i.value?Rn(cs(i.value)):{text:``,paths:[]}}function f(){return i.value?[...i.value.querySelectorAll(`.agent-mention`)]:[]}function p(){let e=f(),t=e.map(e=>e.dataset.path??``);for(let r of e){let e=r.dataset.path??``,i=zn(e,t),a=r.querySelector(`.agent-mention__label`);a&&(a.textContent=`@${i}`),r.querySelector(`.agent-mention__remove`)?.setAttribute(`aria-label`,n(`agent.mention.remove`,{name:i}))}}function m(){let e=d().text===``;e&&i.value&&f().length===0&&i.value.replaceChildren(),e!==a.value&&(a.value=e,t.onEmptyChange(e))}function h(){p(),m()}function g(e){e.remove(),p(),m()}function _(){A(t.disabled)||(m(),c())}function y(e){if(!(e.isComposing||e.keyCode===229)&&!(A(t.disabled)||u(e))){if(e.key===`Tab`&&e.shiftKey&&A(t.cycleMode))e.preventDefault(),t.onCycleMode();else if(e.key===`Enter`)e.preventDefault(),e.shiftKey?document.execCommand(`insertLineBreak`):t.onSubmit();else if(e.key===`Backspace`){let t=ds(i.value);t&&(e.preventDefault(),g(t))}}}function b(e){[`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(e.key)&&c()}function x(e){if(A(t.disabled)){e.preventDefault();return}let n=lr(e.clipboardData);if(n.length>0){e.preventDefault(),t.onFiles(n);return}let r=e.clipboardData?.getData(`text/plain`);r!==void 0&&(e.preventDefault(),document.execCommand(`insertText`,!1,r))}function S(e){fs(i.value,e)&&e.preventDefault()}function C(e){if(A(t.disabled))return;let n=fs(i.value,e);if(n){g(n),i.value?.focus();return}c()}function w(){i.value?.focus()}function E(){i.value&&i.value.replaceChildren(),s(),m()}let D=null;function O(){let e=window.getSelection();if(!e||e.rangeCount===0)return null;let t=e.getRangeAt(0);return i.value?.contains(t.startContainer)?t:null}function k(){D=O()?.cloneRange()??null}function ee(e,n){let r=i.value;if(!r||A(t.disabled)||e===``)return;s();let a=document.activeElement===r,o=(a?O():null)??D;(!o||!r.contains(o.startContainer))&&(o=document.createRange(),o.selectNodeContents(r),o.collapse(!1));let c=o.cloneRange();c.collapse(!0),c.setStart(r,0);let l=o.cloneRange();l.collapse(!1),l.setEnd(r,r.childNodes.length);let u=Ds(c.toString(),l.toString(),e);if(D=null,a||n){if(!a){r.focus();let e=window.getSelection();e?.removeAllRanges(),e?.addRange(o)}document.execCommand(`insertText`,!1,u);return}let d=document.createTextNode(u);o.deleteContents(),o.insertNode(d),h()}function j(){A(t.disabled)||(w(),document.execCommand(`insertText`,!1,`@`),c())}return v(r,p),{empty:a,popup:o,serialize:d,clear:E,focus:w,startMention:j,saveCaret:k,insertText:ee,closePopup:s,pick:l,onInput:_,onKeydown:y,onKeyup:b,onPaste:x,onMousedown:S,onClick:C}}var js=[`aria-label`],Ms={key:0,class:`q-pa-sm text-caption text-grey-6`},Ns=[`id`,`aria-selected`,`onClick`],Ps={class:`agent-mention-popup__name`},Fs={class:`agent-mention-popup__dir`},Is=$(R({__name:`AgentMentionPopup`,props:{items:{},active:{},left:{},bottom:{},idPrefix:{}},emits:[`pick`],setup(e,{emit:t}){let n=e,i=t,{t:a}=Y(),s=U(),c=M(()=>n.items.map(e=>({path:e,...Vn(e)})));return v(()=>n.active,async e=>{await r(),document.getElementById(`${n.idPrefix}-${e}`)?.scrollIntoView({block:`nearest`})}),(t,n)=>(o(),w(te,{to:`body`},[L(`div`,{class:j([`agent-mention-popup shadow-4`,O(s).dark.isActive?`bg-grey-9 text-white`:`bg-white text-dark`]),role:`listbox`,"aria-label":O(a)(`agent.mention.list`),style:d({left:`${e.left}px`,bottom:`${e.bottom}px`}),onMousedown:n[0]||=B(()=>{},[`prevent`])},[e.items.length===0?(o(),P(`div`,Ms,p(O(a)(`agent.mention.noFiles`)),1)):E(``,!0),(o(!0),P(I,null,z(c.value,({path:t,name:n,parent:r,directory:a},s)=>(o(),P(`div`,{id:`${e.idPrefix}-${s}`,key:t,role:`option`,class:j([`agent-mention-popup__item`,{"agent-mention-popup__item--active":s===e.active}]),"aria-selected":s===e.active,onClick:e=>i(`pick`,s)},[b(G,{name:O(a?St:vt),size:`16px`,class:`app-icon-neutral agent-mention-popup__icon`},null,8,[`name`]),L(`span`,Ps,p(n),1),L(`span`,Fs,p(r),1)],10,Ns))),128))],46,js)]))}}),[[`__scopeId`,`data-v-5926da49`]]),Ls={class:`agent-editor-wrap`},Rs=[`contenteditable`,`aria-label`,`aria-disabled`,`aria-expanded`,`aria-controls`,`aria-activedescendant`,`data-placeholder`],zs=$(R({__name:`AgentMentionEditor`,props:{disabled:{type:Boolean},placeholder:{},label:{},cycleMode:{type:Boolean}},emits:[`submit`,`cycle-mode`,`empty-change`,`files`],setup(e,{expose:t,emit:n}){let r=e,a=n,s=F(`root`),c=i(),{empty:l,popup:u,serialize:d,clear:f,focus:p,startMention:m,saveCaret:h,insertText:g,closePopup:_,pick:v,onInput:y,onKeydown:b,onKeyup:x,onPaste:S,onMousedown:C,onClick:T}=As(s,{disabled:()=>r.disabled,cycleMode:()=>r.cycleMode,onSubmit:()=>a(`submit`),onCycleMode:()=>a(`cycle-mode`),onEmptyChange:e=>a(`empty-change`,e),onFiles:e=>a(`files`,e)});return t({serialize:d,clear:f,focus:p,startMention:m,saveCaret:h,insertText:g}),(t,n)=>(o(),P(`div`,Ls,[L(`div`,{ref_key:`root`,ref:s,class:j([`agent-editor`,{"agent-editor--empty":O(l)}]),contenteditable:e.disabled?`false`:`true`,role:`textbox`,"aria-multiline":`true`,"aria-autocomplete":`list`,"aria-label":e.label,"aria-disabled":e.disabled?`true`:void 0,"aria-expanded":O(u)?`true`:`false`,"aria-controls":O(u)?O(c):void 0,"aria-activedescendant":O(u)?`${O(c)}-${O(u).active}`:void 0,"data-placeholder":e.placeholder,spellcheck:`true`,onInput:n[0]||=(...e)=>O(y)&&O(y)(...e),onKeydown:n[1]||=(...e)=>O(b)&&O(b)(...e),onKeyup:n[2]||=(...e)=>O(x)&&O(x)(...e),onPaste:n[3]||=(...e)=>O(S)&&O(S)(...e),onMousedown:n[4]||=(...e)=>O(C)&&O(C)(...e),onClick:n[5]||=(...e)=>O(T)&&O(T)(...e),onBlur:n[6]||=(...e)=>O(_)&&O(_)(...e)},null,42,Rs),O(u)?(o(),w(Is,{key:0,items:O(u).items,active:O(u).active,left:O(u).left,bottom:O(u).bottom,"id-prefix":O(c),onPick:O(v)},null,8,[`items`,`active`,`left`,`bottom`,`id-prefix`,`onPick`])):E(``,!0)]))}}),[[`__scopeId`,`data-v-7bc219e6`]]),Bs={class:`agent-attachment-thumb`},Vs=$(R({__name:`AgentAttachmentThumbnail`,props:{item:{}},emits:[`remove`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=M(()=>rr(n.item));return(t,n)=>(o(),P(`div`,Bs,[b(_o,{src:a.value,alt:e.item.name,fit:`cover`,class:`fit rounded-borders`},null,8,[`src`,`alt`]),b(K,{round:``,dense:``,unelevated:``,size:`xs`,color:`grey-8`,icon:O(Ut),class:`app-icon-control agent-attachment-thumb-remove`,"aria-label":O(i)(`agent.context.remove`),onClick:n[0]||=e=>r(`remove`)},null,8,[`icon`,`aria-label`])]))}}),[[`__scopeId`,`data-v-d38589f4`]]),Hs={key:0,class:`row items-center q-gutter-xs q-pa-xs`},Us=R({__name:`AgentComposerContext`,props:{items:{}},emits:[`remove`],setup(e,{emit:t}){let n=t;return(t,r)=>e.items.length>0?(o(),P(`div`,Hs,[(o(!0),P(I,null,z(e.items,(e,t)=>(o(),P(I,{key:t},[O(ir)(e)?(o(),w(Vs,{key:0,item:e,onRemove:e=>n(`remove`,t)},null,8,[`item`,`onRemove`])):(o(),w(yo,{key:1,removable:``,color:`primary`,"text-color":`white`,item:e,onRemove:e=>n(`remove`,t)},null,8,[`item`,`onRemove`]))],64))),128))])):E(``,!0)}}),Ws=$(R({__name:`AgentComposerAddMenu`,props:{disabled:{type:Boolean}},emits:[`files`,`mention`],setup(e,{emit:t}){let n=t,{t:r}=Y(),i=F(`fileInput`);function a(e){let t=e.target;t instanceof HTMLInputElement&&t.files&&(n(`files`,[...t.files]),t.value=``)}return(t,s)=>(o(),P(`div`,null,[L(`input`,{ref_key:`fileInput`,ref:i,type:`file`,multiple:``,hidden:``,onChange:a},null,544),b(K,{round:``,dense:``,flat:``,size:`sm`,icon:O(dt),class:`app-icon-control q-ma-xs`,disable:e.disabled,"aria-label":O(r)(`agent.attach.menu`)},{default:y(()=>[b(qn,{anchor:`top left`,self:`bottom left`},{default:y(()=>[b(Kn,{dense:``,class:`agent-menu agent-add-menu`},{default:y(()=>[m((o(),w(Z,{clickable:``,onClick:s[0]||=e=>i.value?.click()},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(st),size:`16px`},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(r)(`agent.attach.uploadFile`)),1)]),_:1})]),_:1})),[[Xn]]),m((o(),w(Z,{clickable:``,onClick:s[1]||=e=>n(`mention`)},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(Bt),size:`16px`},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(r)(`agent.attach.mentionFile`)),1)]),_:1})]),_:1})),[[Xn]])]),_:1})]),_:1})]),_:1},8,[`icon`,`disable`,`aria-label`])]))}}),[[`__scopeId`,`data-v-9d521ba7`]]),Gs=R({__name:`AgentComposerSubmitButton`,props:{status:{},isEmpty:{type:Boolean}},emits:[`send`,`cancel`],setup(e,{emit:t}){let n=t,{t:r}=Y();return(t,i)=>e.status===`busy`?(o(),w(K,{key:0,round:``,dense:``,flat:``,size:`sm`,color:`negative`,icon:O(bt),class:`app-icon-control q-ma-xs`,"aria-label":O(r)(`agent.cancel`),onClick:i[0]||=e=>n(`cancel`)},null,8,[`icon`,`aria-label`])):(o(),w(K,{key:1,round:``,dense:``,flat:``,size:`sm`,color:`primary`,icon:O(nt),class:`app-icon-control q-ma-xs`,disable:e.status!==`ready`||e.isEmpty,"aria-label":O(r)(`agent.send`),onClick:i[1]||=e=>n(`send`)},null,8,[`icon`,`disable`,`aria-label`]))}});function Ks(e){return e.permissions.length?`attention`:e.status===`closed`?`closed`:e.status===`busy`||e.status===`starting`?`working`:`idle`}function qs(e){let t=e.map(Ks);return t.includes(`attention`)?`attention`:t.includes(`working`)?`working`:null}var Js=[`aria-label`],Ys=$(R({__name:`AgentChatStatusDot`,props:{entry:{}},setup(e){let t=e,{t:n}=Y(),r=M(()=>Ks(t.entry.chat)),i=M(()=>r.value===`attention`?n(`agent.chats.needsAnswer`):n(`agent.status.${t.entry.chat.status}`));return(e,t)=>(o(),P(`span`,{class:`agent-dot`,"aria-label":i.value,role:`img`},[r.value===`working`?(o(),w(Ja,{key:0,color:`primary`,size:`14px`})):(o(),P(`span`,{key:1,class:j([`agent-dot__mark`,`agent-dot__mark--${r.value}`])},null,2))],8,Js))}}),[[`__scopeId`,`data-v-39759232`]]),Xs={key:0,class:`q-pa-xs`},Zs=8,Qs=$(R({__name:`AgentConfigButton`,props:{option:{},disabled:{type:Boolean},hint:{}},emits:[`select`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=N(``),s=M(()=>n.option.options??[]),c=M(()=>{let e=a.value.trim().toLowerCase();return e===``?s.value:s.value.filter(t=>t.name.toLowerCase().includes(e)||t.value.toLowerCase().includes(e))}),l=M(()=>s.value.find(e=>e.value===n.option.currentValue)?.name??String(n.option.currentValue));return(t,n)=>e.option.type===`boolean`?(o(),w(K,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,class:`app-icon-control agent-cfg`,disable:e.disabled,icon:e.option.currentValue===!0?O(Ct):O(kt),label:e.option.name,onClick:n[0]||=t=>r(`select`,e.option.currentValue!==!0)},null,8,[`disable`,`icon`,`label`])):(o(),w(K,{key:1,flat:``,dense:``,"no-caps":``,size:`sm`,"icon-right":O(Gt),class:`app-icon-control agent-cfg`,disable:e.disabled,label:l.value,"aria-label":`${e.option.name}: ${l.value}`,"aria-haspopup":`listbox`},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(e.option.name),1),e.hint?(o(),P(I,{key:0},[D(` · `+p(e.hint),1)],64)):E(``,!0)]),_:1},8,[`delay`]),b(qn,{anchor:`top left`,self:`bottom left`,onBeforeShow:n[2]||=e=>a.value=``},{default:y(()=>[s.value.length>Zs?(o(),P(`div`,Xs,[b(De,{modelValue:a.value,"onUpdate:modelValue":n[1]||=e=>a.value=e,dense:``,outlined:``,autofocus:``,placeholder:O(i)(`agent.config.filter`)},null,8,[`modelValue`,`placeholder`])])):E(``,!0),c.value.length>0?(o(),w(Mr,{key:1,items:c.value,"virtual-scroll-item-size":40,class:`agent-menu agent-cfg__list`},{default:y(({item:t})=>[m((o(),w(Z,{key:t.value,dense:``,clickable:``,onClick:e=>r(`select`,t.value)},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[t.value===e.option.currentValue?(o(),w(G,{key:0,name:O(Lt),size:`16px`,color:`primary`},null,8,[`name`])):E(``,!0)]),_:2},1024),b(Q,null,{default:y(()=>[b(Wn,null,{default:y(()=>[D(p(t.name),1)]),_:2},1024),t.description||t.group?(o(),w(Wn,{key:0,caption:``},{default:y(()=>[D(p(t.group)+p(t.group&&t.description?` · `:``)+p(t.description),1)]),_:2},1024)):E(``,!0)]),_:2},1024)]),_:2},1032,[`onClick`])),[[Xn]])]),_:1},8,[`items`])):(o(),w(Z,{key:2,dense:``},{default:y(()=>[b(Q,{class:`text-grey`},{default:y(()=>[D(p(O(i)(`agent.config.noMatch`)),1)]),_:1})]),_:1}))]),_:1})]),_:1},8,[`icon-right`,`disable`,`label`,`aria-label`]))}}),[[`__scopeId`,`data-v-05080235`]]),$s=R({__name:`AgentAutoApproveButton`,props:{enabled:{type:Boolean},disabled:{type:Boolean}},emits:[`toggle`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=M(()=>i(n.enabled?`agent.autoApprove.tooltipOn`:`agent.autoApprove.tooltipOff`));return(t,n)=>(o(),w(K,{flat:``,round:``,dense:``,size:`sm`,icon:e.enabled?O(yt):O(lt),color:e.enabled?`warning`:void 0,class:`app-icon-control`,disable:e.disabled,"aria-pressed":e.enabled,"aria-label":a.value,onClick:n[0]||=e=>r(`toggle`)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(a.value),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`color`,`disable`,`aria-pressed`,`aria-label`]))}}),ec=`githuman.agent.speechLang`,tc=N(null);function nc(){return typeof navigator>`u`?[]:navigator.languages.length>0?navigator.languages:[navigator.language]}function rc(){tc.value===null&&(tc.value=En.get(ec)??nc()[0]??`en-US`);let e=M(()=>{let e=ws(nc()),t=tc.value,n=e.some(e=>e.toLowerCase()===t?.toLowerCase());return t&&!n?[t,...e]:e});function t(e){tc.value=e,En.set(ec,e)}return{language:M(()=>tc.value??`en-US`),languages:e,setLanguage:t}}var ic=$(R({__name:`AgentSpeechLanguageButton`,setup(e){let{t,locale:n}=Y(),{language:r,languages:i,setLanguage:a}=rc();function s(e){try{return new Intl.DisplayNames([n.value],{type:`language`}).of(e)??e}catch{return e}}return(e,n)=>(o(),w(K,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:O(Nt),class:`app-icon-control agent-speech-language`,label:O(r).split(`-`)[0]?.toUpperCase(),"aria-haspopup":`listbox`,"aria-label":O(t)(`agent.voice.language`,{name:s(O(r))})},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(t)(`agent.voice.language`,{name:s(O(r))})),1)]),_:1},8,[`delay`]),b(qn,{anchor:`top left`,self:`bottom left`},{default:y(()=>[b(Kn,{dense:``,class:`agent-menu agent-speech-language__list`},{default:y(()=>[(o(!0),P(I,null,z(O(i),e=>m((o(),w(Z,{key:e,dense:``,clickable:``,onClick:t=>O(a)(e)},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[e===O(r)?(o(),w(G,{key:0,name:O(Lt),size:`16px`,color:`primary`},null,8,[`name`])):E(``,!0)]),_:2},1024),b(Q,null,{default:y(()=>[b(Wn,null,{default:y(()=>[D(p(s(e)),1)]),_:2},1024),b(Wn,{caption:``},{default:y(()=>[D(p(e),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`])),[[Xn]])),128))]),_:1})]),_:1})]),_:1},8,[`icon`,`label`,`aria-label`]))}}),[[`__scopeId`,`data-v-8a910a9d`]]),ac={class:`agent-composer__status row no-wrap items-center`},oc={class:`row no-wrap items-center agent-composer__state`},sc={class:`q-ml-xs`},cc={class:`agent-composer__options col row items-center q-gutter-x-xs`},lc={class:`agent-composer__actions row no-wrap items-center`},uc=$(R({__name:`AgentComposerSettings`,props:{entry:{},modelOption:{},modeOption:{},otherOptions:{},settingsLocked:{type:Boolean}},emits:[`select`,`toggle-auto-approve`],setup(e,{emit:t}){let n=e,r=t,{t:i}=Y(),a=M(()=>n.entry.chat.status),s=M(()=>n.entry.chat.autoApprove),c=typeof window<`u`&&Ss(window)!==null;return(t,n)=>(o(),P(`div`,ac,[L(`span`,oc,[b(Ys,{entry:e.entry},null,8,[`entry`]),L(`span`,sc,p(O(i)(`agent.status.${a.value}`)),1)]),L(`div`,cc,[e.modelOption?(o(),w(Qs,{key:0,option:e.modelOption,disabled:e.settingsLocked,onSelect:n[0]||=t=>r(`select`,e.modelOption,t)},null,8,[`option`,`disabled`])):E(``,!0),e.modeOption?(o(),w(Qs,{key:1,option:e.modeOption,disabled:e.settingsLocked,hint:O(i)(`agent.modeHint`),onSelect:n[1]||=t=>r(`select`,e.modeOption,t)},null,8,[`option`,`disabled`,`hint`])):E(``,!0),(o(!0),P(I,null,z(e.otherOptions,t=>(o(),w(Qs,{key:t.id,option:t,disabled:e.settingsLocked,onSelect:e=>r(`select`,t,e)},null,8,[`option`,`disabled`,`onSelect`]))),128))]),L(`div`,lc,[O(c)?(o(),w(ic,{key:0})):E(``,!0),b($s,{enabled:s.value,disabled:a.value===`closed`,onToggle:n[2]||=e=>r(`toggle-auto-approve`)},null,8,[`enabled`,`disabled`])])]))}}),[[`__scopeId`,`data-v-165fe17f`]]),dc=new Set([`no-speech`,`aborted`]),fc=3e3,pc=1e3,mc=null;function hc(e){let t=e.now??(()=>Date.now()),n=Symbol(`speech-input`),r;function i(){clearTimeout(r),r=void 0}let a=N(!1),o=N(!1),s=N(``),c=T(null),l=[],u=!1,d=0;function f(e){s.value=Ts([...l,e])}function p(t){i(),c.value=null;let r=Ts(l);l=[],s.value=``,a.value=!1,o.value=!1,mc===n&&(mc=null),t&&r!==``&&e.onCommit(r)}function m(){let n=e.recognizerClass;if(!n)return;let r=new n,i=new Set;r.lang=e.lang(),r.continuous=!0,r.interimResults=!0,r.addEventListener(`result`,e=>{if(r!==c.value)return;let t=Es(e,i);l.push(...t.finals),f(t.interim)}),r.addEventListener(`error`,t=>{r===c.value&&(dc.has(t.error)||(xs.has(t.error)&&(u=!0),e.onError(t.error)))}),r.addEventListener(`end`,()=>{if(r!==c.value)return;let e=t()-d;if(a.value&&!u&&e>=pc){m();return}p(!0)}),c.value=r,d=t();try{r.start()}catch(t){e.onError(t instanceof Error?t.name:`start-failed`),p(!0)}}function h(){return!e.recognizerClass||a.value||o.value||mc!==null&&mc!==n?!1:(mc=n,a.value=!0,l=[],u=!1,s.value=``,m(),!0)}function g(){if(!a.value)return;a.value=!1;let e=c.value;if(!e){p(!0);return}o.value=!0;try{e.stop()}catch{}r=setTimeout(()=>{e.abort(),p(!0)},fc)}function _(){let e=c.value;l=[],p(!1),e?.abort()}return ne(_),{supported:e.recognizerClass!==null,listening:a,finishing:o,preview:s,press:h,release:g,cancel:_}}var gc=[120,520,1040,2080,4160],_c=.16,vc=512,yc=.65,bc=.12,xc=1.4,Sc=-85,Cc=-25;function wc(e,t){let n=t??Xi(),r=T(gc.slice(1).map(()=>_c)),i=null;function a(){let e=i;i=null,n.removeAnimationFrame(),r.value=r.value.map(()=>_c),e&&(e.stream?.getTracks().forEach(e=>e.stop()),e.context.close().catch(()=>void 0))}async function o(){let e=null;try{let o=t?t.createAudioContext():new AudioContext;e={context:o,stream:null},i=e,o.resume().catch(()=>void 0);let s=await(t?t.getUserMedia():navigator.mediaDevices.getUserMedia({audio:!0}));if(i!==e){s.getTracks().forEach(e=>e.stop());return}e.stream=s;let c=o.createAnalyser();c.fftSize=vc,c.smoothingTimeConstant=yc,c.minDecibels=Sc,c.maxDecibels=Cc,o.createMediaStreamSource(s).connect(c);let l=new Uint8Array(c.frequencyBinCount),u=o.sampleRate/vc,d=gc.slice(1).map((e,t)=>({start:Math.max(1,Math.floor(gc[t]/u)),end:Math.min(l.length,Math.ceil(e/u))}));function f(){if(i===e)try{c.getByteFrequencyData(l),r.value=d.map(e=>{let t=0;for(let n=e.start;n<e.end;n++)t+=l[n];let n=t/Math.max(1,e.end-e.start)/255;return _c+.84*Math.min(1,Math.max(0,n-bc)*xc)}),n.registerAnimationFrame(f)}catch{a()}}f()}catch{i===e&&a()}}return v(e,e=>{a(),e&&o()},{flush:`sync`,immediate:!0}),ne(a),{bars:C(r)}}var Tc={key:0,class:`agent-voice`},Ec={class:`agent-voice__hidden`,"aria-live":`polite`},Dc=[`id`],Oc={key:0,class:`agent-voice__spectrum`,"aria-hidden":`true`},kc=$(R({__name:`AgentVoiceButton`,props:{disabled:{type:Boolean},active:{type:Boolean}},emits:[`press`,`commit`],setup(e,{expose:t,emit:n}){let r=new Set([` `,`Enter`]),a=e,s=n,{t:c}=Y(),l=U(),u=i(),{language:f}=rc(),m=N(``),h=hc({recognizerClass:Ss(typeof window>`u`?void 0:window),lang:()=>f.value,onCommit:e=>{m.value=c(`agent.voice.inserted`,{text:e}),s(`commit`,e)},onError:e=>{let t=xs.has(e)?e:`other`;l.notify({type:`negative`,message:c(`agent.voice.error.${t}`)})}}),{listening:g,finishing:_,preview:x}=h,{bars:S}=wc(g),C=!1;function T(){return a.disabled||!h.supported?!1:_.value?k():(s(`press`),h.press()?(m.value=c(`agent.voice.listening`),!0):k())}function k(){return m.value=c(`agent.voice.busy`),l.notify({type:`warning`,message:c(`agent.voice.busy`)}),!1}t({press:T,release:h.release});function A(e){e.button===0&&(e.currentTarget?.setPointerCapture(e.pointerId),T())}function ee(e){!r.has(e.key)||e.ctrlKey||e.metaKey||e.altKey||(C=!0,e.repeat||T())}function M(e){r.has(e.key)&&C&&(C=!1,h.release())}function te(e){e instanceof MouseEvent&&e.detail===0&&!C&&(g.value?h.release():T())}function ne(){C=!1,h.release()}return q(()=>window,`blur`,h.release,()=>({disabled:!g.value})),q(()=>document,`visibilitychange`,()=>{document.visibilityState===`hidden`&&h.release()},()=>({disabled:!g.value})),v(()=>[a.active,a.disabled],([e,t])=>{t?h.cancel():e||h.release()}),(t,n)=>O(h).supported?(o(),P(`div`,Tc,[(O(g)||O(_))&&O(x)?(o(),P(`div`,{key:0,class:j([`agent-voice__preview shadow-2`,O(l).dark.isActive?`bg-grey-9 text-white`:`bg-white text-dark`]),"aria-hidden":`true`},p(O(x)),3)):E(``,!0),L(`span`,Ec,p(m.value),1),L(`span`,{id:O(u),class:`agent-voice__hidden`},p(O(c)(`agent.voice.privacy`))+` `+p(O(c)(`agent.voice.screenReader`)),9,Dc),b(K,{round:``,dense:``,flat:!O(g)&&!O(_),unelevated:O(g)||O(_),size:`sm`,ripple:!1,class:`app-icon-control q-ma-xs agent-voice__button`,color:O(g)||O(_)?`primary`:void 0,icon:O(g)||O(_)?void 0:O(Nt),disable:e.disabled,"aria-label":O(c)(O(_)?`agent.voice.finishing`:O(g)?`agent.voice.listening`:`agent.voice.hold`),"aria-describedby":O(u),"aria-pressed":O(g),onMousedown:n[0]||=B(()=>{},[`prevent`]),onTouchstart:n[1]||=B(()=>{},[`prevent`]),onContextmenu:n[2]||=B(()=>{},[`prevent`]),onPointerdown:A,onPointerup:O(h).release,onPointercancel:O(h).release,onLostpointercapture:O(h).release,onKeydown:ee,onKeyup:M,onClick:te,onBlur:ne},{default:y(()=>[O(g)?(o(),P(`span`,Oc,[(o(!0),P(I,null,z(O(S),(e,t)=>(o(),P(`span`,{key:t,class:`agent-voice__bar`,style:d({transform:`scaleY(${e})`})},null,4))),128))])):E(``,!0),O(_)?(o(),w(Oe,{key:1,size:`18px`,"aria-hidden":`true`})):E(``,!0),O(l).platform.is.mobile?E(``,!0):(o(),w(J,{key:2,delay:O(500)},{default:y(()=>[D(p(O(c)(O(g)?`agent.voice.listening`:`agent.voice.hold`)),1),n[3]||=L(`br`,null,null,-1),D(` `+p(O(c)(`agent.voice.shortcut`)),1),n[4]||=L(`br`,null,null,-1),D(` `+p(O(c)(`agent.voice.privacy`)),1)]),_:1},8,[`delay`]))]),_:1},8,[`flat`,`unelevated`,`color`,`icon`,`disable`,`aria-label`,`aria-describedby`,`aria-pressed`,`onPointerup`,`onPointercancel`,`onLostpointercapture`])])):E(``,!0)}}),[[`__scopeId`,`data-v-db55d5da`]]);function Ac(e,t){return e.find(e=>e.category===t&&e.type===`select`)}function jc(e){let t=(e.options??[]).map(e=>e.value);if(!(t.length<2))return t[(t.indexOf(String(e.currentValue))+1)%t.length]}function Mc(e){let t=X(),{t:n}=Y(),r=Nr(),i=M(()=>t.chats[A(e)]),a=M(()=>i.value?.chat.config??[]),o=M(()=>i.value?.chat.status??`closed`),s=M(()=>Ac(a.value,`model`)),c=M(()=>Ac(a.value,`mode`)),l=M(()=>a.value.filter(e=>e!==s.value&&e!==c.value)),u=M(()=>o.value!==`ready`);async function d(i,a){try{await t.setConfig(i.id,a,A(e))}catch(e){r(n(`agent.config.failed`,{name:i.name}),e)}}function f(){let e=c.value;if(!e||u.value)return;let t=jc(e);t!==void 0&&d(e,t)}return{modelOption:s,modeOption:c,otherOptions:l,settingsLocked:u,changeConfig:d,cycleMode:f}}function Nc(e){let t=X(),{t:n}=Y(),r=U(),i=Nr();async function a(a){let o=A(e);for(let e of a)try{t.addContext(await sr(e),o)}catch(t){t instanceof or?r.notify({type:`negative`,message:n(`agent.attach.tooLarge`,{name:e.name,mb:_n/1024/1024})}):i(n(`agent.attach.readFailed`),t)}}return{attachFiles:a}}function Pc(e){let t=X(),{t:n}=Y(),r=U(),i=Nr();async function a(e,r){try{await t.setAutoApprove(e,r)}catch(e){i(n(`agent.autoApprove.failed`),e)}}function o(){let i=A(e),o=t.chats[i];if(o&&o.chat.status!==`closed`){if(o.chat.autoApprove){a(!1,i);return}r.dialog({title:n(`agent.autoApprove.confirmTitle`),message:n(`agent.autoApprove.confirmMessage`),ok:{label:n(`agent.autoApprove.confirmOk`),color:`negative`,flat:!0,noCaps:!0},cancel:{label:n(`agent.newChat.cancel`),flat:!0,noCaps:!0}}).onOk(()=>{a(!0,i)})}}return{toggleAutoApprove:o}}var Fc={key:0,class:`agent-composer`},Ic={class:`agent-composer__box`},Lc={class:`row no-wrap items-end`},Rc=$(R({__name:`AgentComposer`,props:{chatId:{},active:{type:Boolean}},setup(e,{expose:t}){let n=e,{t:i}=Y(),a=X(),{narrow:s}=tr(),c=M(()=>a.chats[n.chatId]),l=M(()=>c.value?.chat.status??`closed`),u=M(()=>c.value?.pendingContext??[]),d=M(()=>n.active||!s.value&&a.activeId===n.chatId),f=F(`editor`),p=F(`voice`),m=T(!0),h=T(!1);function g(){h.value&&(h.value=!1,p.value?.release())}q(()=>window,`keyup`,e=>{ks(e)&&(e.preventDefault(),e.stopImmediatePropagation(),g())},()=>({capture:!0,disabled:!h.value})),q(()=>window,`blur`,g,()=>({disabled:!h.value})),q(()=>document,`visibilitychange`,()=>{document.visibilityState===`hidden`&&g()},()=>({disabled:!h.value})),v(()=>[n.active,l.value],([e,t])=>{(!e||t===`closed`)&&g()},{flush:`sync`}),ne(g),q(()=>window,`keydown`,async e=>{if(h.value&&e.code===`Space`){e.preventDefault(),e.stopImmediatePropagation();return}if(Os(e)&&!document.querySelector(`[role="dialog"][aria-modal="true"]`)&&p.value&&(e.preventDefault(),e.stopImmediatePropagation(),n.active||(a.panelOpen=!0),h.value=!0,await r(),h.value&&n.active&&l.value!==`closed`)){if(!p.value?.press()){h.value=!1;return}f.value?.focus()}},()=>({capture:!0,disabled:!d.value||l.value===`closed`}));let _=Nr(),{modelOption:y,modeOption:x,otherOptions:S,settingsLocked:C,changeConfig:w,cycleMode:D}=Mc(()=>n.chatId),{attachFiles:k}=Nc(()=>n.chatId),{toggleAutoApprove:A}=Pc(()=>n.chatId);async function ee(){let e=f.value,t=n.chatId,r=e?.serialize();if(r&&r.text!==``)try{await a.send(r.text,Hn(r.paths),t)&&n.chatId===t&&f.value===e&&e?.clear()}catch(e){_(i(`agent.sendFailed`),e)}}return t({focus:()=>f.value?.focus()}),(t,n)=>c.value?(o(),P(`div`,Fc,[L(`div`,Ic,[b(Us,{items:u.value,onRemove:n[0]||=t=>O(a).removeContext(t,e.chatId)},null,8,[`items`]),L(`div`,Lc,[b(Ws,{disabled:l.value===`closed`,onFiles:O(k),onMention:n[1]||=e=>f.value?.startMention()},null,8,[`disabled`,`onFiles`]),b(zs,{ref_key:`editor`,ref:f,class:`col`,disabled:l.value===`closed`,placeholder:O(i)(`agent.placeholder`),label:O(i)(`agent.title`),"cycle-mode":O(x)!==void 0,onSubmit:ee,onCycleMode:O(D),onEmptyChange:n[2]||=e=>m.value=e,onFiles:O(k)},null,8,[`disabled`,`placeholder`,`label`,`cycle-mode`,`onCycleMode`,`onFiles`]),b(kc,{ref_key:`voice`,ref:p,disabled:l.value===`closed`,active:e.active,onPress:n[3]||=e=>f.value?.saveCaret(),onCommit:n[4]||=t=>f.value?.insertText(t,e.active)},null,8,[`disabled`,`active`]),b(Gs,{status:l.value,"is-empty":m.value,onSend:ee,onCancel:n[5]||=t=>O(a).cancel(e.chatId)},null,8,[`status`,`is-empty`])])]),b(uc,{entry:c.value,"model-option":O(y),"mode-option":O(x),"other-options":O(S),"settings-locked":O(C),onSelect:O(w),onToggleAutoApprove:O(A)},null,8,[`entry`,`model-option`,`mode-option`,`other-options`,`settings-locked`,`onSelect`,`onToggleAutoApprove`])])):E(``,!0)}}),[[`__scopeId`,`data-v-9c1d8c99`]]),zc={class:`agent-permission`},Bc={class:`row no-wrap items-center agent-permission__head`},Vc={class:`agent-permission__title`},Hc={class:`row items-center q-gutter-xs q-mt-xs`},Uc=$(R({__name:`AgentPermissionCard`,props:{permission:{}},emits:[`answer`],setup(e,{emit:t}){let n={allow_once:{color:`primary`,outline:!1,flat:!1},allow_always:{color:`primary`,outline:!0,flat:!1},reject_once:{color:`negative`,outline:!1,flat:!0},reject_always:{color:`negative`,outline:!1,flat:!0}},r=t,{t:i}=Y();return(t,a)=>(o(),P(`div`,zc,[L(`div`,Bc,[b(G,{name:O(yt),size:`14px`,class:`app-icon-warning q-mr-xs`},null,8,[`name`]),L(`span`,null,p(O(i)(`agent.permission.title`)),1)]),L(`div`,Vc,[D(p(e.permission.title)+` `,1),b(J,{delay:O(500)},{default:y(()=>[D(p(e.permission.title),1)]),_:1},8,[`delay`])]),e.permission.diffs.length>0?(o(),w(Dr,{key:0,dense:``,"dense-toggle":``,class:`app-icon-expansion agent-permission__changes`,label:O(i)(`agent.permission.showChanges`)},{default:y(()=>[(o(!0),P(I,null,z(e.permission.diffs,e=>(o(),w(Jo,{key:e.path,diff:e},null,8,[`diff`]))),128))]),_:1},8,[`label`])):E(``,!0),L(`div`,Hc,[(o(!0),P(I,null,z(e.permission.options,e=>(o(),w(K,{key:e.optionId,"no-caps":``,dense:``,size:`sm`,class:`q-px-sm`,unelevated:!n[e.kind].outline&&!n[e.kind].flat,outline:n[e.kind].outline,flat:n[e.kind].flat,color:n[e.kind].color,label:e.name,onClick:t=>r(`answer`,e.optionId)},null,8,[`unelevated`,`outline`,`flat`,`color`,`label`,`onClick`]))),128)),b(K,{"no-caps":``,dense:``,flat:``,size:`sm`,class:`q-px-sm`,label:O(i)(`agent.permission.cancel`),onClick:a[0]||=e=>r(`answer`,void 0)},null,8,[`label`])])]))}}),[[`__scopeId`,`data-v-71aeff67`]]),Wc={key:0,class:`agent-view column no-wrap`},Gc={class:`agent-view__feed`},Kc={key:0,class:`row justify-center`},qc=24,Jc=$(R({__name:`AgentChatView`,props:{chatId:{},active:{type:Boolean},autofocus:{type:Boolean}},setup(e){let t=e,{t:n}=Y(),i=Nr(),a=X(),s=M(()=>a.chats[t.chatId]),c=M(()=>s.value?.chat),l=M(()=>a.presets.find(e=>e.id===s.value?.info.presetId)),u=M(()=>c.value?.status===`busy`),d=M(()=>c.value?.items.at(-1)),f=M(()=>d.value?.kind===`error`&&c.value?.status===`ready`),p=M(()=>c.value?.items.length??0),m=M(()=>c.value?.permissions.length??0),h=M(()=>{let e=d.value;return e&&`text`in e?e.text.length:0}),g=M(()=>c.value?.items.findLast(e=>e.kind===`user`)?.id),_=F(`scroll`),x=F(`composer`),S=!0,C=0;function T(e){if(t.active){if(e.verticalPosition===C){k();return}C=e.verticalPosition,S=e.verticalPosition+e.verticalContainerSize>=e.verticalSize-qc}}function D(){_.value?.setScrollPosition(`vertical`,2**53-1)}async function k(){t.active&&S&&(await r(),t.active&&S&&D())}v([p,m,h],k),v(g,(e,n)=>{e&&e!==n&&t.active&&(S=!0,k())}),v(()=>t.active,async e=>{e&&(await r(),t.active&&(S?D():_.value?.setScrollPosition(`vertical`,C),t.autofocus!==!1&&x.value?.focus()))});async function A(){try{await a.send(`Continue`,[],t.chatId)}catch(e){i(n(`agent.sendFailed`),e)}}return(t,n)=>s.value&&c.value?(o(),P(`div`,Wc,[b(os,{"auto-approves-edits":l.value?.autoApprovesEdits??!1,"auto-approve":c.value.autoApprove,"review-stale":s.value.reviewStale,closed:c.value.status===`closed`,error:s.value.error,onDisableAutoApprove:n[0]||=t=>O(a).setAutoApprove(!1,e.chatId)},null,8,[`auto-approves-edits`,`auto-approve`,`review-stale`,`closed`,`error`]),b(lo,{"chat-id":e.chatId,active:e.active},null,8,[`chat-id`,`active`]),b(er,{ref_key:`scroll`,ref:_,class:`col agent-view__scroll`,onScroll:T},{default:y(()=>[L(`div`,Gc,[b(wr,{debounce:0,onResize:k}),(o(!0),P(I,null,z(c.value.items,t=>(o(),w(as,{key:t.id,item:t,"chat-id":e.chatId,"can-continue":f.value&&t===d.value,onContinue:A},null,8,[`item`,`chat-id`,`can-continue`]))),128)),(o(!0),P(I,null,z(c.value.permissions,t=>(o(),w(Uc,{key:t.requestId,permission:t,onAnswer:n=>O(a).answerPermission(t.requestId,n,e.chatId)},null,8,[`permission`,`onAnswer`]))),128)),u.value&&c.value.permissions.length===0?(o(),P(`div`,Kc,[b(Ja,{color:`primary`,size:`24px`})])):E(``,!0)])]),_:1},512),b(Rc,{ref_key:`composer`,ref:x,"chat-id":e.chatId,active:e.active},null,8,[`chat-id`,`active`])])):E(``,!0)}}),[[`__scopeId`,`data-v-d5c9dad9`]]),Yc={class:`agent-empty column items-center justify-center text-center fit`},Xc={class:`text-subtitle1 q-mt-md`},Zc={class:`text-caption text-grey-6 q-mt-xs agent-empty__hint`},Qc=$(R({__name:`AgentEmptyState`,setup(e){let{t}=Y(),n=X();return(e,r)=>(o(),P(`div`,Yc,[b(G,{name:O(Pn),size:`48px`,class:`app-icon-neutral`},null,8,[`name`]),L(`div`,Xc,p(O(t)(`agent.emptyState.title`)),1),L(`div`,Zc,p(O(t)(`agent.emptyState.hint`)),1),O(n).canAddChat?(o(),w(K,{key:0,color:`primary`,unelevated:``,"no-caps":``,icon:O(dt),class:`app-icon-control q-mt-md`,label:O(t)(`agent.emptyState.add`),onClick:r[0]||=e=>O(n).openNewChatDialog()},null,8,[`icon`,`label`])):E(``,!0)]))}}),[[`__scopeId`,`data-v-2d642e53`]]),$c={class:`agent-tabs row no-wrap items-center`},el={class:`row items-center no-wrap agent-tab__body`},tl={class:`agent-tab__name ellipsis`},nl=$(R({__name:`AgentTabs`,setup(e){let{t}=Y(),n=Nr(),r=U(),i=X();function a(e){let a=e.info.name;r.dialog({title:t(`agent.chats.closeTitle`),message:e.chat.status===`busy`?t(`agent.chats.closeBusy`,{name:a}):t(`agent.chats.closeMessage`,{name:a}),ok:{label:t(`agent.chats.close`),color:`negative`,flat:!0,noCaps:!0},cancel:{label:t(`agent.chats.keep`),flat:!0,noCaps:!0}}).onOk(()=>{i.closeChat(e.info.id).catch(e=>{n(t(`agent.chats.closeFailed`),e)})})}return(e,n)=>(o(),P(`div`,$c,[b(mr,{"model-value":O(i).activeId??void 0,dense:``,shrink:``,"no-caps":``,"outside-arrows":``,"mobile-arrows":``,align:`left`,"active-color":`primary`,"indicator-color":`primary`,class:`agent-tabs__tabs`,"onUpdate:modelValue":n[0]||=e=>O(i).selectChat(String(e))},{default:y(()=>[(o(!0),P(I,null,z(O(i).list,e=>(o(),w(pr,{key:e.info.id,name:e.info.id,ripple:!1,class:`agent-tab`},{default:y(()=>[L(`div`,el,[b(Ys,{entry:e,class:`q-mr-xs`},null,8,[`entry`]),L(`span`,tl,p(e.info.name),1),b(K,{flat:``,round:``,dense:``,size:`xs`,icon:O(Ut),class:`app-icon-control q-ml-xs`,"aria-label":O(t)(`agent.chats.close`),onClick:B(t=>a(e),[`stop`,`prevent`])},null,8,[`icon`,`aria-label`,`onClick`]),b(J,{delay:O(500)},{default:y(()=>[D(p(e.info.name),1)]),_:2},1032,[`delay`])])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`]),O(i).canAddChat?(o(),w(Un,{key:0,size:`sm`,class:`q-mx-xs`,tooltip:O(t)(`agent.chats.add`),onClick:n[1]||=e=>O(i).openNewChatDialog()},null,8,[`tooltip`])):E(``,!0)]))}}),[[`__scopeId`,`data-v-034fa7a4`]]),rl={class:`agent-panel column no-wrap fit`},il={class:`col agent-panel__views`},al=$(R({__name:`AgentChatPanel`,props:{active:{type:Boolean,default:!0},autofocus:{type:Boolean,default:!0}},setup(e){let t=X();return(n,r)=>(o(),P(`div`,rl,[O(t).error&&!O(t).newChatDialog.open?(o(),w(Nn,{key:0,dense:``,class:`bg-negative text-white`},{default:y(()=>[D(p(O(t).error),1)]),_:1})):E(``,!0),O(t).list.length===0?(o(),w(Qc,{key:1,class:`col`})):(o(),P(I,{key:2},[b(nl),L(`div`,il,[(o(!0),P(I,null,z(O(t).list,n=>m((o(),w(Jc,{key:n.info.id,"chat-id":n.info.id,active:e.active&&n.info.id===O(t).activeId,autofocus:e.autofocus},null,8,[`chat-id`,`active`,`autofocus`])),[[fe,n.info.id===O(t).activeId]])),128))])],64))]))}}),[[`__scopeId`,`data-v-11fe00e5`]]),ol={key:0},sl={class:`text-caption text-grey-6 q-mb-xs`},cl={key:1,class:`text-negative text-caption`},ll=$(R({__name:`AgentNewChatDialog`,setup(e){let{t}=Y(),n=X(),{presets:r,newChatDialog:i,creating:a,error:s}=Jt(n),c=M({get:()=>i.value.open,set:e=>{e||n.closeNewChatDialog()}}),l=N(null),u=N(``),d=N(!1),f=M(()=>r.value.map(e=>({value:e.id,label:e.available?e.title:`${e.title} (${t(`agent.unavailable`)})`,disable:!e.available}))),h=M(()=>r.value.find(e=>e.id===l.value)??null);function g(){return h.value?Rr(h.value.title,n.list.map(e=>e.info.name)):``}v(c,e=>{e&&(l.value=r.value.find(e=>e.id===l.value&&e.available)?.id??r.value.find(e=>e.available)?.id??null,d.value=!1,u.value=g(),s.value=null)}),v(l,()=>{d.value||(u.value=g())});async function _(){if(l.value&&!a.value)try{await n.createChat(l.value,u.value.trim()||g(),i.value.context),n.closeNewChatDialog()}catch{}}return(e,n)=>(o(),w(Je,{modelValue:c.value,"onUpdate:modelValue":n[3]||=e=>c.value=e},{default:y(()=>[b(He,{class:`agent-new-chat`},{default:y(()=>[b(Pr,{onSubmit:B(_,[`prevent`])},{default:y(()=>[b(Qe,{class:`text-h6`},{default:y(()=>[D(p(O(t)(`agent.newChat.title`)),1)]),_:1}),b(Qe,{class:`column q-gutter-y-md q-pt-none`},{default:y(()=>[b(De,{modelValue:u.value,"onUpdate:modelValue":[n[0]||=e=>u.value=e,n[1]||=e=>d.value=!0],autofocus:``,dense:``,outlined:``,maxlength:`60`,label:O(t)(`agent.newChat.name`)},null,8,[`modelValue`,`label`]),b(kr,{modelValue:l.value,"onUpdate:modelValue":n[2]||=e=>l.value=e,dense:``,outlined:``,"emit-value":``,"map-options":``,label:O(t)(`agent.newChat.agent`),options:f.value},null,8,[`modelValue`,`label`,`options`]),O(i).context.length>0?(o(),P(`div`,ol,[L(`div`,sl,p(O(t)(`agent.newChat.context`)),1),(o(!0),P(I,null,z(O(i).context,(e,t)=>(o(),w(yo,{key:t,item:e},null,8,[`item`]))),128))])):E(``,!0),O(s)?(o(),P(`div`,cl,p(O(s)),1)):E(``,!0)]),_:1}),b(Xe,{align:`right`},{default:y(()=>[m(b(K,{flat:``,"no-caps":``,label:O(t)(`agent.newChat.cancel`)},null,8,[`label`]),[[Xn]]),b(K,{type:`submit`,color:`primary`,unelevated:``,"no-caps":``,loading:O(a),disable:!l.value,label:O(t)(`agent.newChat.create`)},null,8,[`loading`,`disable`,`label`])]),_:1})]),_:1})]),_:1})]),_:1},8,[`modelValue`]))}}),[[`__scopeId`,`data-v-887d90c7`]]),ul=[`aria-label`,`aria-valuenow`],dl=360,fl=320,pl=440,ml=1e3,hl=$(R({__name:`AgentSidebar`,setup(e){let{t}=Y(),{panelOpen:n}=Jt(X()),{isDark:r}=Mn(),{narrow:i,pane:a,window:s}=tr(),c=Fr({key:`githuman.agentPanelWidth`,initial:pl,min:fl,max:()=>Math.max(fl,Math.min(ml,window.innerWidth-dl))});return(e,l)=>(o(),P(I,null,[b(Ka,{"no-swipe-open":O(i),"no-swipe-close":O(i),"no-swipe-backdrop":O(i),"model-value":!O(i)&&O(n),"onUpdate:modelValue":l[2]||=e=>{O(i)||(n.value=e)},side:`right`,bordered:``,width:O(c).width.value,breakpoint:O(900),dark:O(r),class:j([{"agent-drawer--dragging":O(c).dragging.value},`agent-drawer`])},{default:y(()=>[(o(),w(te,{defer:``,to:`#workspace-agent`,disabled:!O(i)},[b(al,{active:O(i)?O(a)===`agent`&&!O(s):O(n),autofocus:!O(i)},null,8,[`active`,`autofocus`])],8,[`disabled`])),O(i)?E(``,!0):m((o(),P(`div`,{key:0,class:`agent-drawer__handle`,role:`separator`,"aria-orientation":`vertical`,tabindex:`0`,"aria-label":O(t)(`agent.resize`),"aria-valuenow":O(c).width.value,onKeydown:[l[0]||=ce(B(e=>O(c).nudge(`wider`),[`prevent`]),[`left`]),l[1]||=ce(B(e=>O(c).nudge(`narrower`),[`prevent`]),[`right`])]},null,40,ul)),[[Gn,O(c).drag,void 0,{preserveCursor:!0,prevent:!0,mouse:!0,horizontal:!0}]])]),_:1},8,[`no-swipe-open`,`no-swipe-close`,`no-swipe-backdrop`,`model-value`,`width`,`breakpoint`,`dark`,`class`]),b(ll)],64))}}),[[`__scopeId`,`data-v-0862203d`]]),gl=H({name:`QToolbarTitle`,props:{shrink:Boolean},setup(e,{slots:t}){return()=>h(`div`,{class:`q-toolbar__title ellipsis`+(e.shrink?` col-shrink`:``)},Ee(t.default))}}),_l=H({name:`QToolbar`,props:{inset:Boolean},setup(e,{slots:t}){let n=M(()=>`q-toolbar row no-wrap items-center`+(e.inset?` q-toolbar--inset`:``));return()=>h(`div`,{class:n.value,role:`toolbar`},Ee(t.default))}});function vl(e,t){e.value!==t&&(e.value=t)}var yl=H({name:`QHeader`,props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,revealOffset:{type:Number,default:250},bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:[`reveal`,`focusin`],setup(e,{slots:n,emit:r}){let i=U(),a=se(we,Te);if(a===Te)return console.error(`QHeader needs to be child of QLayout`),Te;let o=N(Number.parseInt(e.heightHint,10)),s=N(!0),c=M(()=>e.reveal||a.view.value.includes(`H`)||i.platform.is.ios&&a.isContainer.value),l=M(()=>{if(!e.modelValue)return 0;if(c.value)return s.value?o.value:0;let t=o.value-a.scroll.value.position;return Math.max(t,0)}),u=M(()=>!e.modelValue||c.value&&!s.value),d=M(()=>e.modelValue&&u.value&&e.reveal),f=M(()=>`q-header q-layout__section--marginal `+(c.value?`fixed`:`absolute`)+`-top`+(e.bordered?` q-header--bordered`:``)+(u.value?` q-header--hidden`:``)+(e.modelValue?``:` q-layout--prevent-focus`)),p=M(()=>{let e=a.rows.value.top,t={};return e[0]===`l`&&a.left.space&&(t[i.lang.rtl?`right`:`left`]=`${a.left.size}px`),e[2]===`r`&&a.right.space&&(t[i.lang.rtl?`left`:`right`]=`${a.right.size}px`),t});function m(e,t){a.update(`header`,e,t)}Zn({debounce:0,onResize({height:e}){vl(o,e),m(`size`,e)}});function g(e){d.value&&vl(s,!0),r(`focusin`,e)}v(()=>e.modelValue,e=>{m(`space`,e),vl(s,!0),a.animate()}),v(l,e=>{m(`offset`,e)}),v(()=>e.reveal,t=>{t||vl(s,e.modelValue)}),v(s,e=>{a.animate(),r(`reveal`,e)}),v(a.scroll,t=>{e.reveal&&vl(s,t.direction===`up`||t.position<=e.revealOffset||t.position-t.inflectionPoint<100)});let _={};return a.instances.header=_,e.modelValue&&m(`size`,o.value),m(`space`,e.modelValue),m(`offset`,l.value),t(()=>{a.instances.header===_&&(a.instances.header=void 0,m(`size`,0),m(`offset`,0),m(`space`,!1))}),()=>{let t=Ce(n.default,[]);return e.elevated&&t.push(h(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),h(`header`,{class:f.value,style:p.value,onFocusin:g},t)}}}),{passive:bl,passiveCapture:xl,notPassive:Sl,notPassiveCapture:Cl}=ge,wl=[.06,6,50];function Tl(e,t){if(e.arg=t,typeof t!=`string`||t.length===0){e.sensitivity=wl;return}let n=[...wl],r=t.split(`:`);for(let e=0;e<3&&e<r.length;e++){let t=Number.parseFloat(r[e]);t&&(n[e]=t)}e.sensitivity=n}function El(e,t,n){t.modifiers=n,t.direction=Jn(n);let r=n.mouseCapture||n.mousecapture,i=n.mouse?r?xl:bl:null;t.mouseMoveOpts=r?Cl:Sl,i!==t.mouseOpts&&(t.mouseOpts!==null&&e.removeEventListener(`mousedown`,Dl,t.mouseOpts),i!==null&&e.addEventListener(`mousedown`,Dl,i),t.mouseOpts=i);let a=V.has.touch?n.capture?xl:bl:null;a!==t.touchOpts&&(t.touchOpts!==null&&e.removeEventListener(`touchstart`,Ol,t.touchOpts),a!==null&&e.addEventListener(`touchstart`,Ol,a),t.touchOpts=a)}function Dl(e){let t=e.currentTarget.__qtouchswipe;Yn(e,t)&&ve(e)&&(t.target=document,t.moveOpts=t.mouseMoveOpts,document.addEventListener(`mousemove`,t,t.moveOpts),document.addEventListener(`mouseup`,t,Cl),Al(t,e,!0))}function Ol(e){let t=e.currentTarget.__qtouchswipe;if(Yn(e,t)){let{target:n}=e;t.target=n,n.addEventListener(`touchmove`,t,Cl),n.addEventListener(`touchcancel`,t,Cl),n.addEventListener(`touchend`,t,Cl),Al(t,e,!1)}}function kl(e){e.type===`mousemove`||e.type===`touchmove`?jl(this,e):Ml(this,e)}function Al(e,t,n){V.is.firefox&&he(e.el,!0);let r=_e(t);e.event={x:r.left,y:r.top,time:Date.now(),mouse:n,dir:!1}}function jl(e,t){let{event:n}=e;if(n===void 0)return;if(n.dir!==!1){ye(t);return}let r=Date.now()-n.time;if(r===0)return;let i=_e(t),a=i.left-n.x,o=Math.abs(a),s=i.top-n.y,c=Math.abs(s),{sensitivity:l,direction:u}=e;if(!n.mouse){if(o<l[1]&&c<l[1]){Ml(e,t);return}}else if(window.getSelection().toString()!==``){Ml(e,t);return}else if(o<l[2]&&c<l[2])return;let d=o/r,f=c/r;if(u.vertical&&o<c&&o<100&&f>l[0]&&(n.dir=s<0?`up`:`down`),u.horizontal&&o>c&&c<100&&d>l[0]&&(n.dir=a<0?`left`:`right`),u.up&&o<c&&s<0&&o<100&&f>l[0]&&(n.dir=`up`),u.down&&o<c&&s>0&&o<100&&f>l[0]&&(n.dir=`down`),u.left&&o>c&&a<0&&c<100&&d>l[0]&&(n.dir=`left`),u.right&&o>c&&a>0&&c<100&&d>l[0]&&(n.dir=`right`),n.dir===!1){Ml(e,t);return}ye(t),n.mouse&&(e.styled=!0,document.body.classList.add(`no-pointer-events--children`,`non-selectable`),Ge()),e.handler({evt:t,touch:!n.mouse,mouse:n.mouse,direction:n.dir,duration:r,distance:{x:o,y:c}})}function Ml(e,t){let{event:n,target:r}=e;n!==void 0&&(n.mouse?(r.removeEventListener(`mousemove`,e,e.moveOpts),r.removeEventListener(`mouseup`,e,Cl)):(r.removeEventListener(`touchmove`,e,Cl),r.removeEventListener(`touchcancel`,e,Cl),r.removeEventListener(`touchend`,e,Cl)),V.is.firefox&&he(e.el,!1),e.styled&&(e.styled=!1,document.body.classList.remove(`no-pointer-events--children`,`non-selectable`)),t!==void 0&&n.dir!==!1&&ye(t),e.event=void 0,e.target=null)}var Nl=xe({name:`touch-swipe`,beforeMount(e,{value:t,arg:n,modifiers:r}){let i={handleEvent:kl,el:e,handler:t,arg:void 0,sensitivity:void 0,modifiers:void 0,direction:void 0,mouseOpts:null,mouseMoveOpts:null,touchOpts:null,target:null,moveOpts:null,event:void 0,styled:!1};e.__qtouchswipe=i,Tl(i,n),El(e,i,r),i.touchOpts!==null&&e.addEventListener(`touchmove`,me,Cl)},updated(e,{oldValue:t,value:n,arg:r,modifiers:i}){let a=e.__qtouchswipe;a!==void 0&&(t!==n&&(typeof n!=`function`&&Ml(a),a.handler=n),r!==a.arg&&Tl(a,r),i!==a.modifiers&&El(e,a,i))},beforeUnmount(e){let t=e.__qtouchswipe;t!==void 0&&(Ml(t),t.mouseOpts!==null&&e.removeEventListener(`mousedown`,Dl,t.mouseOpts),t.touchOpts!==null&&(e.removeEventListener(`touchstart`,Ol,t.touchOpts),e.removeEventListener(`touchmove`,me,Cl)),e.__qtouchswipe=void 0)}}),Pl=24;function Fl(){let e=tr();function t(t){let n=t.touches[0];(!e.narrow.value||e.window.value||t.touches.length!==1||!n||n.clientX<Pl||n.clientX>window.innerWidth-Pl||window.getSelection()?.toString())&&t.stopImmediatePropagation()}return{start:t,swipe:t=>{let n=e.projection.value.panes,r=n[n.indexOf(e.pane.value)+(t.direction===`left`?1:-1)];r&&e.selectPane(r)}}}var Il={class:`text-weight-medium`},Ll=$(R({__name:`MainHeader`,emits:[`toggle-drawer`,`resize`],setup(e,{emit:t}){let n=t,{t:r}=Y(),i=U(),a=tr(),s=Fl(),c=Xr(),l=M(()=>c.applications.filter(e=>e.availability().enabled));async function u(e){try{await e.activate(),(e.id===`terminal`||e.id===`preview`)&&await a.openWindow(e.id)}catch(e){i.notify({type:`negative`,message:Qt(e)})}}async function d(){try{await $e.toggle()}catch{i.notify({type:`negative`,message:r(`workspace.fullscreenFailed`)})}}let{info:f}=Jt(tn()),{version:h}=Jt(kn()),{isDark:g}=Mn(),_=X(),{enabled:v,panelOpen:x}=Jt(_);return(e,t)=>m((o(),w(yl,{onTouchstart:O(s).start,class:j(O(g)?`bg-dark text-white`:`bg-white text-dark`),bordered:``},{default:y(()=>[b(wr,{onResize:t[0]||=e=>n(`resize`,e.height)}),b(_l,null,{default:y(()=>[m(b(K,{flat:``,dense:``,round:``,icon:O(gt),"aria-label":O(r)(`nav.menu`),class:`app-icon-control q-mr-sm`,onClick:t[1]||=e=>n(`toggle-drawer`)},null,8,[`icon`,`aria-label`]),[[W]]),b(gl,{shrink:``,class:`text-weight-bold ellipsis`},{default:y(()=>[D(p(O(r)(`app.title`)),1)]),_:1}),O(h)&&!O(a).narrow.value?(o(),w(Qn,{key:0,outline:``,rounded:``,class:`text-primary q-ml-xs`},{default:y(()=>[D(` v`+p(O(h)),1)]),_:1})):E(``,!0),O(f)?(o(),P(`div`,{key:1,class:j([`row items-center q-gutter-x-sm text-body2 q-ml-md gt-sm repo-info`,O(g)?`text-grey-5`:`text-grey-7`])},[L(`span`,Il,p(O(f).name),1),O(f).branch?(o(),P(I,{key:0},[t[3]||=L(`span`,null,`/`,-1),b(Qn,{outline:``,class:`text-body2 text-primary`,rounded:``},{default:y(()=>[D(p(O(f).branch),1)]),_:1})],64)):E(``,!0)],2)):E(``,!0),b(Fn),O(a).narrow.value?(o(!0),P(I,{key:2},z(l.value,e=>(o(),w(K,{class:`app-icon-control`,key:e.id,flat:``,round:``,icon:e.icon,"aria-label":e.title(),onClick:t=>u(e)},null,8,[`icon`,`aria-label`,`onClick`]))),128)):E(``,!0),O($e).isCapable?(o(),w(K,{key:3,class:`app-icon-control`,flat:``,round:``,icon:O($e).isActive?O(wt):O(At),"aria-label":O(r)(O($e).isActive?`workspace.exitFullscreen`:`workspace.fullscreen`),onClick:d},null,8,[`icon`,`aria-label`])):E(``,!0),O(v)&&!O(a).narrow.value?m((o(),w(K,{key:4,class:`app-icon-control`,flat:``,round:``,dense:``,icon:O(Pn),color:O(x)?`primary`:void 0,"aria-label":O(r)(`nav.agent`),onClick:t[2]||=e=>x.value=!O(x)},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(r)(`nav.agent`)),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`color`,`aria-label`])),[[W]]):E(``,!0)]),_:1})]),_:1},8,[`onTouchstart`,`class`])),[[Nl,O(s).swipe,void 0,{horizontal:!0}]])}}),[[`__scopeId`,`data-v-fdeb181e`]]),Rl=(e=>(e[e.Border=-1]=`Border`,e[e.Data=0]=`Data`,e[e.Function=1]=`Function`,e[e.Position=2]=`Position`,e[e.Timing=3]=`Timing`,e[e.Alignment=4]=`Alignment`,e))(Rl||{}),zl=[0,1],Bl=[1,0],Vl=[2,3],Hl=[3,2],Ul={L:zl,M:Bl,Q:Vl,H:Hl},Wl=/^\d*$/,Gl=/^[A-Z0-9 $%*+./:-]*$/,Kl=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`,ql=1,Jl=40,Yl=3,Xl=3,Zl=40,Ql=10,$l=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],eu=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],tu=class{constructor(e,t,n,r){if(this.version=e,this.ecc=t,e<ql||e>Jl)throw RangeError(`Version value out of range`);if(r<-1||r>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let i=Array.from({length:this.size}).fill(!1);for(let e=0;e<this.size;e++)this.modules.push(i.slice()),this.types.push(i.map(()=>0));this.drawFunctionPatterns();let a=this.addEccAndInterleave(n);if(this.drawCodewords(a),r===-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(r=t,e=n),this.applyMask(t)}}this.mask=r,this.applyMask(r),this.drawFormatBits(r)}size;mask;modules=[];types=[];getModule(e,t){return e>=0&&e<this.size&&t>=0&&t<this.size&&this.modules[t][e]}drawFunctionPatterns(){for(let e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0,Rl.Timing),this.setFunctionModule(e,6,e%2==0,Rl.Timing);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);let e=this.getAlignmentPatternPositions(),t=e.length;for(let n=0;n<t;n++)for(let r=0;r<t;r++)n===0&&r===0||n===0&&r===t-1||n===t-1&&r===0||this.drawAlignmentPattern(e[n],e[r]);this.drawFormatBits(0),this.drawVersion()}drawFormatBits(e){let t=this.ecc[1]<<3|e,n=t;for(let e=0;e<10;e++)n=n<<1^(n>>>9)*1335;let r=(t<<10|n)^21522;for(let e=0;e<=5;e++)this.setFunctionModule(8,e,ru(r,e));this.setFunctionModule(8,7,ru(r,6)),this.setFunctionModule(8,8,ru(r,7)),this.setFunctionModule(7,8,ru(r,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,ru(r,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,ru(r,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,ru(r,e));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let t=0;t<12;t++)e=e<<1^(e>>>11)*7973;let t=this.version<<12|e;for(let e=0;e<18;e++){let n=ru(t,e),r=this.size-11+e%3,i=Math.floor(e/3);this.setFunctionModule(r,i,n),this.setFunctionModule(i,r,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let i=Math.max(Math.abs(r),Math.abs(n)),a=e+r,o=t+n;a>=0&&a<this.size&&o>=0&&o<this.size&&this.setFunctionModule(a,o,i!==2&&i!==4,Rl.Position)}}drawAlignmentPattern(e,t){for(let n=-2;n<=2;n++)for(let r=-2;r<=2;r++)this.setFunctionModule(e+r,t+n,Math.max(Math.abs(r),Math.abs(n))!==1,Rl.Alignment)}setFunctionModule(e,t,n,r=Rl.Function){this.modules[t][e]=n,this.types[t][e]=r}addEccAndInterleave(e){let t=this.version,n=this.ecc;if(e.length!==vu(t,n))throw RangeError(`Invalid argument`);let r=eu[n[0]][t],i=$l[n[0]][t],a=Math.floor(_u(t)/8),o=r-a%r,s=Math.floor(a/r),c=[],l=yu(i);for(let t=0,n=0;t<r;t++){let r=e.slice(n,n+s-i+(t<o?0:1));n+=r.length;let a=bu(r,l);t<o&&r.push(0),c.push(r.concat(a))}let u=[];for(let e=0;e<c[0].length;e++)c.forEach((t,n)=>{(e!==s-i||n>=o)&&u.push(t[e])});return u}drawCodewords(e){if(e.length!==Math.floor(_u(this.version)/8))throw RangeError(`Invalid argument`);let t=0;for(let n=this.size-1;n>=1;n-=2){n===6&&(n=5);for(let r=0;r<this.size;r++)for(let i=0;i<2;i++){let a=n-i,o=n+1&2?r:this.size-1-r;!this.types[o][a]&&t<e.length*8&&(this.modules[o][a]=ru(e[t>>>3],7-(t&7)),t++)}}}applyMask(e){if(e<0||e>7)throw RangeError(`Mask value out of range`);for(let t=0;t<this.size;t++)for(let n=0;n<this.size;n++){let r;switch(e){case 0:r=(n+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=n%3==0;break;case 3:r=(n+t)%3==0;break;case 4:r=(Math.floor(n/3)+Math.floor(t/2))%2==0;break;case 5:r=n*t%2+n*t%3==0;break;case 6:r=(n*t%2+n*t%3)%2==0;break;case 7:r=((n+t)%2+n*t%3)%2==0;break;default:throw Error(`Unreachable`)}!this.types[t][n]&&r&&(this.modules[t][n]=!this.modules[t][n])}}getPenaltyScore(){let e=0;for(let t=0;t<this.size;t++){let n=!1,r=0,i=[0,0,0,0,0,0,0];for(let a=0;a<this.size;a++)this.modules[t][a]===n?(r++,r===5?e+=Yl:r>5&&e++):(this.finderPenaltyAddHistory(r,i),n||(e+=this.finderPenaltyCountPatterns(i)*Zl),n=this.modules[t][a],r=1);e+=this.finderPenaltyTerminateAndCount(n,r,i)*Zl}for(let t=0;t<this.size;t++){let n=!1,r=0,i=[0,0,0,0,0,0,0];for(let a=0;a<this.size;a++)this.modules[a][t]===n?(r++,r===5?e+=Yl:r>5&&e++):(this.finderPenaltyAddHistory(r,i),n||(e+=this.finderPenaltyCountPatterns(i)*Zl),n=this.modules[a][t],r=1);e+=this.finderPenaltyTerminateAndCount(n,r,i)*Zl}for(let t=0;t<this.size-1;t++)for(let n=0;n<this.size-1;n++){let r=this.modules[t][n];r===this.modules[t][n+1]&&r===this.modules[t+1][n]&&r===this.modules[t+1][n+1]&&(e+=Xl)}let t=0;for(let e of this.modules)t=e.reduce((e,t)=>e+ +!!t,t);let n=this.size*this.size,r=Math.ceil(Math.abs(t*20-n*10)/n)-1;return e+=r*Ql,e}getAlignmentPatternPositions(){if(this.version===1)return[];{let e=Math.floor(this.version/7)+2,t=this.version===32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.length<e;r-=t)n.splice(1,0,r);return n}}finderPenaltyCountPatterns(e){let t=e[1],n=t>0&&e[2]===t&&e[3]===t*3&&e[4]===t&&e[5]===t;return(n&&e[0]>=t*4&&e[6]>=t?1:0)+(n&&e[6]>=t*4&&e[0]>=t?1:0)}finderPenaltyTerminateAndCount(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,t){t[0]===0&&(e+=this.size),t.pop(),t.unshift(e)}};function nu(e,t,n){if(t<0||t>31||e>>>t)throw RangeError(`Value out of range`);for(let r=t-1;r>=0;r--)n.push(e>>>r&1)}function ru(e,t){return!!(e>>>t&1)}var iu=class{constructor(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw RangeError(`Invalid argument`);this.bitData=n.slice()}getData(){return this.bitData.slice()}},au=[1,10,12,14],ou=[2,9,11,13],su=[4,8,16,16];function cu(e,t){return e[Math.floor((t+7)/17)+1]}function lu(e){let t=[];for(let n of e)nu(n,8,t);return new iu(su,e.length,t)}function uu(e){if(!pu(e))throw RangeError(`String contains non-numeric characters`);let t=[];for(let n=0;n<e.length;){let r=Math.min(e.length-n,3);nu(Number.parseInt(e.substring(n,n+r),10),r*3+1,t),n+=r}return new iu(au,e.length,t)}function du(e){if(!mu(e))throw RangeError(`String contains unencodable characters in alphanumeric mode`);let t=[],n=0;for(;n+2<=e.length;n+=2){let r=Kl.indexOf(e.charAt(n))*45;r+=Kl.indexOf(e.charAt(n+1)),nu(r,11,t)}return n<e.length&&nu(Kl.indexOf(e.charAt(n)),6,t),new iu(ou,e.length,t)}function fu(e){return e===``?[]:pu(e)?[uu(e)]:mu(e)?[du(e)]:[lu(gu(e))]}function pu(e){return Wl.test(e)}function mu(e){return Gl.test(e)}function hu(e,t){let n=0;for(let r of e){let e=cu(r.mode,t);if(r.numChars>=1<<e)return 1/0;n+=4+e+r.bitData.length}return n}function gu(e){e=encodeURI(e);let t=[];for(let n=0;n<e.length;n++)e.charAt(n)===`%`?(t.push(Number.parseInt(e.substring(n+1,n+3),16)),n+=2):t.push(e.charCodeAt(n));return t}function _u(e){if(e<ql||e>Jl)throw RangeError(`Version number out of range`);let t=(16*e+128)*e+64;if(e>=2){let n=Math.floor(e/7)+2;t-=(25*n-10)*n-55,e>=7&&(t-=36)}return t}function vu(e,t){return Math.floor(_u(e)/8)-$l[t[0]][e]*eu[t[0]][e]}function yu(e){if(e<1||e>255)throw RangeError(`Degree out of range`);let t=[];for(let n=0;n<e-1;n++)t.push(0);t.push(1);let n=1;for(let r=0;r<e;r++){for(let e=0;e<t.length;e++)t[e]=xu(t[e],n),e+1<t.length&&(t[e]^=t[e+1]);n=xu(n,2)}return t}function bu(e,t){let n=t.map(e=>0);for(let r of e){let e=r^n.shift();n.push(0),t.forEach((t,r)=>n[r]^=xu(t,e))}return n}function xu(e,t){if(e>>>8||t>>>8)throw RangeError(`Byte out of range`);let n=0;for(let r=7;r>=0;r--)n=n<<1^(n>>>7)*285,n^=(t>>>r&1)*e;return n}function Su(e,t,n=1,r=40,i=-1,a=!0){if(!(ql<=n&&n<=r&&r<=Jl)||i<-1||i>7)throw RangeError(`Invalid value`);let o,s;for(o=n;;o++){let n=vu(o,t)*8,i=hu(e,o);if(i<=n){s=i;break}if(o>=r)throw RangeError(`Data too long`)}for(let e of[Bl,Vl,Hl])a&&s<=vu(o,e)*8&&(t=e);let c=[];for(let t of e){nu(t.mode[0],4,c),nu(t.numChars,cu(t.mode,o),c);for(let e of t.getData())c.push(e)}let l=vu(o,t)*8;nu(0,Math.min(4,l-c.length),c),nu(0,(8-c.length%8)%8,c);for(let e=236;c.length<l;e^=253)nu(e,8,c);let u=Array.from({length:Math.ceil(c.length/8)},()=>0);return c.forEach((e,t)=>u[t>>>3]|=e<<7-(t&7)),new tu(o,t,u,i)}function Cu(e,t){let{ecc:n=`L`,boostEcc:r=!1,minVersion:i=1,maxVersion:a=40,maskPattern:o=-1,border:s=1}=t||{},c=typeof e==`string`?fu(e):Array.isArray(e)?[lu(e)]:void 0;if(!c)throw Error(`uqr only supports encoding string and binary data, but got: ${typeof e}`);let l=Su(c,Ul[n],i,a,o,r),u=wu({version:l.version,maskPattern:l.mask,size:l.size,data:l.modules,types:l.types},s);return t?.invert&&(u.data=u.data.map(e=>e.map(e=>!e))),t?.onEncoded?.(u),u}function wu(e,t=1){if(!t)return e;let{size:n}=e,r=n+t*2;e.size=r,e.data.forEach(e=>{for(let n=0;n<t;n++)e.unshift(!1),e.push(!1)});for(let n=0;n<t;n++)e.data.unshift(Array.from({length:r},e=>!1)),e.data.push(Array.from({length:r},e=>!1));let i=Rl.Border;e.types.forEach(e=>{for(let n=0;n<t;n++)e.unshift(i),e.push(i)});for(let n=0;n<t;n++)e.types.unshift(Array.from({length:r},e=>i)),e.types.push(Array.from({length:r},e=>i));return e}var Tu=[`aria-label`,`viewBox`],Eu=[`width`,`height`],Du=[`d`],Ou=$(R({__name:`QrCode`,props:{value:{},label:{}},setup(e){let t=e,n=M(()=>{let{data:e,size:n}=Cu(t.value,{border:2}),r=[];return e.forEach((e,t)=>e.forEach((e,n)=>{e&&r.push(`M${n} ${t}h1v1h-1z`)})),{size:n,path:r.join(``)}});return(t,r)=>(o(),P(`svg`,{class:`qr-code`,role:`img`,"aria-label":e.label,viewBox:`0 0 ${n.value.size} ${n.value.size}`,"shape-rendering":`crispEdges`},[L(`rect`,{width:n.value.size,height:n.value.size,fill:`#fff`},null,8,Eu),L(`path`,{d:n.value.path,fill:`#000`},null,8,Du)],8,Tu))}}),[[`__scopeId`,`data-v-db84bdf4`]]),ku={class:`text-subtitle2`},Au={class:`text-caption`},ju={key:0,class:`devices-dialog__connection column items-center`},Mu={key:1,class:`text-body2`,style:{"font-family":`var(--font-mono)`}},Nu={key:1,class:`text-caption text-grey-7`},Pu={class:`text-subtitle2`},Fu={class:`row no-wrap`},Iu={key:1,class:`text-caption text-grey-7`},Lu=80,Ru=$(R({__name:`DevicesDialog`,emits:[`close`],setup(e,{emit:t}){let n=t,r=U(),{t:i}=Y(),a=Nr(),s=An(),{lanAddresses:c,trusted:l}=Jt(s),d=T(null),f=M(()=>c.value.map(e=>zr(e,Number(window.location.port)||Lu))),m=M(()=>d.value??f.value[0]??null);u(async()=>{try{await s.loadLanAddresses()}catch(e){a(i(`devices.actionFailed`),e)}});function h(e){return i(`devices.lastSeen`,{time:jr(e.lastSeenAt),address:e.address})}function g(e){r.dialog({title:i(`devices.renameTitle`),prompt:{model:e.name,type:`text`,maxlength:64,isValid:e=>e.trim().length>0},cancel:{label:i(`devices.cancel`),flat:!0},ok:{label:i(`devices.save`)}}).onOk(t=>{s.rename(e.id,t.trim()).catch(e=>{a(i(`devices.actionFailed`),e)})})}function _(e){r.dialog({title:i(`devices.revokeTitle`),message:i(`devices.revokeMessage`,{name:e.name}),cancel:{label:i(`devices.cancel`),flat:!0},ok:{label:i(`devices.revoke`),color:`negative`}}).onOk(()=>{s.revoke(e.id).catch(e=>{a(i(`devices.actionFailed`),e)})})}return(e,t)=>(o(),w(Je,{"model-value":!0,onHide:t[1]||=e=>n(`close`)},{default:y(()=>[b(He,{style:{width:`480px`,"max-width":`90vw`}},{default:y(()=>[b(Or,{title:O(i)(`devices.title`),"close-label":O(i)(`common.filters.close`)},null,8,[`title`,`close-label`]),b(Qe,null,{default:y(()=>[L(`div`,ku,p(O(i)(`devices.connect`)),1),L(`p`,Au,p(O(i)(`devices.connectHint`)),1),m.value?(o(),P(`div`,ju,[b(Ou,{value:m.value,label:m.value},null,8,[`value`,`label`]),f.value.length>1?(o(),w(kr,{key:0,"model-value":m.value,options:f.value,label:O(i)(`devices.address`),dense:``,outlined:``,class:`devices-dialog__address`,"onUpdate:modelValue":t[0]||=e=>d.value=e},null,8,[`model-value`,`options`,`label`])):(o(),P(`div`,Mu,p(m.value),1))])):(o(),P(`p`,Nu,p(O(i)(`devices.noAddresses`)),1))]),_:1}),b(Ve),b(Qe,null,{default:y(()=>[L(`div`,Pu,p(O(i)(`devices.trusted`)),1),O(l).length>0?(o(),w(Kn,{key:0,dense:``,class:`devices-dialog__trusted`},{default:y(()=>[(o(!0),P(I,null,z(O(l),e=>(o(),w(Z,{key:e.id,class:`devices-dialog__device`},{default:y(()=>[b(Q,null,{default:y(()=>[b(Wn,{class:`ellipsis`,title:e.name},{default:y(()=>[D(p(e.name),1)]),_:2},1032,[`title`]),b(Wn,{caption:``,lines:`2`,title:h(e)},{default:y(()=>[D(p(h(e)),1)]),_:2},1032,[`title`])]),_:2},1024),b(Q,{side:``},{default:y(()=>[L(`div`,Fu,[b(K,{class:`app-icon-control`,flat:``,round:``,dense:``,icon:O(ot),"aria-label":O(i)(`devices.rename`),onClick:t=>g(e)},null,8,[`icon`,`aria-label`,`onClick`]),b(K,{class:`app-icon-control`,flat:``,round:``,dense:``,icon:O(Ot),color:`negative`,"aria-label":O(i)(`devices.revoke`),onClick:t=>_(e)},null,8,[`icon`,`aria-label`,`onClick`])])]),_:2},1024)]),_:2},1024))),128))]),_:1})):(o(),P(`p`,Iu,p(O(i)(`devices.none`)),1))]),_:1})]),_:1})]),_:1}))}}),[[`__scopeId`,`data-v-a9f964f9`]]),zu={class:`fit column no-wrap`},Bu=$(R({__name:`MainMenu`,props:{modelValue:{type:[Boolean,null],required:!0},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let t=s(e,`modelValue`),{t:n}=Y(),{narrow:r}=tr(),{isDark:i,toggleTheme:a}=Mn(),c=Tn(),l=dr(),u=X(),{enabled:d,activeId:f,panelOpen:h}=Jt(u),g=N(!0),{isLocal:_}=Jt(jn()),v=N(!1),{version:x}=Jt(kn());return(e,s)=>(o(),w(Ka,{"no-swipe-open":O(r),"no-swipe-close":O(r),"no-swipe-backdrop":O(r),modelValue:t.value,"onUpdate:modelValue":s[4]||=e=>t.value=e,breakpoint:O(Fa),bordered:``,width:220,dark:O(i)},{default:y(()=>[L(`div`,zu,[b(Kn,{class:`col scroll`},{default:y(()=>[m((o(),w(Z,{clickable:``,exact:``,to:{path:`/`}},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(ct)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`nav.changes`)),1)]),_:1})]),_:1})),[[W]]),m((o(),w(Z,{clickable:``,to:{path:`/notes`}},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(vt)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`notes.title`)),1)]),_:1})]),_:1})),[[W]]),m((o(),w(Z,{clickable:``,to:{path:`/artifacts`}},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(Rt)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`artifacts.title`)),1)]),_:1})]),_:1})),[[W]]),m((o(),w(Z,{clickable:``,to:{path:`/reviews`}},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(Pt)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`nav.reviews`)),1)]),_:1})]),_:1})),[[W]]),O(c).enabled?m((o(),w(Z,{key:0,clickable:``,onClick:O(c).show},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(Mt)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`terminal.title`)),1)]),_:1})]),_:1},8,[`onClick`])),[[W]]):E(``,!0),m((o(),w(Z,{clickable:``,onClick:O(l).show},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(ft)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`windows.preview`)),1)]),_:1})]),_:1},8,[`onClick`])),[[W]]),O(d)?(o(),w(Dr,{key:1,modelValue:g.value,"onUpdate:modelValue":s[1]||=e=>g.value=e,"expand-separator":``,class:`app-icon-expansion`,"expand-icon-class":`app-icon-neutral`},{header:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(Pn)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`agent.chats.title`)),1)]),_:1}),O(u).canAddChat?(o(),w(Q,{key:0,side:``},{default:y(()=>[b(K,{flat:``,round:``,dense:``,size:`sm`,icon:O(dt),class:`app-icon-control`,"aria-label":O(n)(`agent.chats.add`),onClick:s[0]||=B(e=>O(u).openNewChatDialog(),[`stop`])},{default:y(()=>[b(J,{delay:O(500)},{default:y(()=>[D(p(O(n)(`agent.chats.add`)),1)]),_:1},8,[`delay`])]),_:1},8,[`icon`,`aria-label`])]),_:1})):E(``,!0)]),default:y(()=>[b(Kn,{dense:``,class:`agent-menu__chats`},{default:y(()=>[(o(!0),P(I,null,z(O(u).list,e=>m((o(),w(Z,{key:e.info.id,clickable:``,active:O(h)&&e.info.id===O(f),"active-class":`text-primary`,onClick:t=>O(u).openChat(e.info.id)},{default:y(()=>[b(Q,{avatar:``,class:`agent-menu__dot`},{default:y(()=>[b(Ys,{entry:e},null,8,[`entry`])]),_:2},1024),b(Q,null,{default:y(()=>[b(Wn,{lines:`1`},{default:y(()=>[D(p(e.info.name),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`])),[[W]])),128)),O(u).list.length===0?(o(),w(Z,{key:0,dense:``},{default:y(()=>[b(Q,{class:`text-caption text-grey-6`},{default:y(()=>[D(p(O(n)(`agent.chats.empty`)),1)]),_:1})]),_:1})):E(``,!0)]),_:1})]),_:1},8,[`modelValue`])):E(``,!0)]),_:1}),b(Kn,{bordered:``,dark:O(i)},{default:y(()=>[O(x)?(o(),w(Z,{key:0,dense:``},{default:y(()=>[b(Q,{class:`text-caption`},{default:y(()=>[D(p(O(n)(`app.title`))+` v`+p(O(x)),1)]),_:1})]),_:1})):E(``,!0),O(_)?m((o(),w(Z,{key:1,clickable:``,onClick:s[2]||=e=>v.value=!0},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(ht)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(n)(`devices.menu`)),1)]),_:1})]),_:1})),[[W]]):E(``,!0),m((o(),w(Z,{clickable:``,onClick:O(a)},{default:y(()=>[b(Q,{avatar:``},{default:y(()=>[b(G,{class:`app-icon-neutral`,name:O(i)?O(zt):O(Ft)},null,8,[`name`])]),_:1}),b(Q,null,{default:y(()=>[D(p(O(i)?O(n)(`theme.switchToLight`):O(n)(`theme.switchToDark`)),1)]),_:1})]),_:1},8,[`onClick`])),[[W]])]),_:1},8,[`dark`])]),v.value?(o(),w(Ru,{key:0,onClose:s[3]||=e=>v.value=!1})):E(``,!0)]),_:1},8,[`no-swipe-open`,`no-swipe-close`,`no-swipe-backdrop`,`modelValue`,`breakpoint`,`dark`]))}}),[[`__scopeId`,`data-v-8936cf35`]]),Vu={class:`text-caption text-grey-7`},Hu={class:`text-caption text-grey-7`},Uu=$(R({__name:`DeviceRequestDialog`,setup(e){let t=U(),{t:n}=Y(),r=An(),{pending:i}=Jt(r),a=T(!1),s=T(``),c=T(``),l=T(new Set),u=M(()=>i.value.find(e=>!l.value.has(e.id))),d=Ir(()=>u.value?.expiresAt),f=M(()=>s.value.length===6);v(()=>u.value?.id,()=>{s.value=``,c.value=``}),v(d.expired,e=>{e&&u.value&&r.refresh()});function m(e,t){let n=new Set(l.value);t?n.add(e):n.delete(e),l.value=n}v(i,e=>{let t=new Set(e.map(e=>e.id)),n=[...l.value].filter(e=>t.has(e));n.length!==l.value.size&&(l.value=new Set(n))});function h(){let e=u.value;e&&!a.value&&(m(e.id,!0),t.notify({type:`warning`,message:n(`devices.request.postponed`,{name:e.name}),timeout:0,actions:[{label:n(`devices.request.answer`),color:`white`,handler:()=>m(e.id,!1)},{icon:Ut,color:`white`,round:!0,dense:!0}]}))}async function g(e){let t=u.value;if(t&&!a.value&&(!e||f.value)){a.value=!0,c.value=``;try{e?await r.approve(t,s.value):await r.revoke(t.id)}catch(e){c.value=`${n(`devices.request.failed`)}: ${Qt(e)}`,s.value=``}finally{a.value=!1}}}return(e,t)=>(o(),w(Je,{"model-value":u.value!==void 0,persistent:a.value,"onUpdate:modelValue":h},{default:y(()=>[u.value?(o(),w(He,{key:0,style:{width:`360px`,"max-width":`90vw`}},{default:y(()=>[b(Pr,{onSubmit:t[2]||=e=>g(!0)},{default:y(()=>[b(Or,{class:`q-pb-none`,title:O(n)(`devices.request.title`),"close-label":O(n)(`common.filters.close`),"disable-close":a.value},null,8,[`title`,`close-label`,`disable-close`]),b(Qe,{class:`q-gutter-y-sm`},{default:y(()=>[L(`div`,null,p(O(n)(`devices.request.from`,{name:u.value.name,address:u.value.address,host:u.value.host})),1),b(De,{modelValue:s.value,"onUpdate:modelValue":t[0]||=e=>s.value=e,dense:``,outlined:``,autofocus:``,inputmode:`numeric`,autocomplete:`off`,mask:`#`.repeat(O(6)),"unmasked-value":``,"input-class":`device-request__code`,label:O(n)(`devices.request.code`),disable:a.value||O(d).expired.value,error:c.value!==``,"error-message":c.value},null,8,[`modelValue`,`mask`,`label`,`disable`,`error`,`error-message`]),L(`div`,Vu,p(O(d).expired.value?O(n)(`devices.request.expired`):O(n)(`devices.request.expiresIn`,{time:O(d).label.value})),1),L(`div`,Hu,p(O(n)(`devices.request.warning`)),1)]),_:1}),b(Xe,{align:`right`},{default:y(()=>[b(K,{flat:``,label:O(n)(`devices.request.reject`),disable:a.value,onClick:t[1]||=e=>g(!1)},null,8,[`label`,`disable`]),b(K,{color:`primary`,type:`submit`,label:O(n)(`devices.request.approve`),loading:a.value,disable:!f.value||O(d).expired.value},null,8,[`label`,`loading`,`disable`])]),_:1})]),_:1})]),_:1})):E(``,!0)]),_:1},8,[`model-value`,`persistent`]))}}),[[`__scopeId`,`data-v-02ba31f5`]]);function Wu(e,t,n){let{agent:r,explorer:i,windows:a,terminal:o,preview:s,appInfo:c}=n,l=()=>t.currentRoute.value;return v([()=>l().fullPath,()=>r.initialized,()=>c.initialized,()=>r.enabled,()=>o.enabled,e.narrow],()=>{e.narrow.value&&r.initialized&&c.initialized&&nr(t,()=>({query:e.projection.value.query,hash:l().hash}),!0)},{immediate:!0}),v(e.narrow,e=>{if(!e)return;let n=a.activeId,s=r.enabled&&r.panelOpen?`agent`:i.selectedPath&&l().path===`/`||l().name===`note-document`||typeof l().query.folder==`string`?`content`:`list`;nr(t,()=>{let e={...l().query,uiPane:s};return delete e.uiWindow,(n===`preview`||n===`terminal`&&o.enabled)&&(e.uiWindow=n),{query:e,hash:l().hash}},!0)}),ne(i.$onAction(({name:t,after:n})=>{if(t===`selectFile`){let t=i.scrollRequest;n(()=>{(i.browseMode||i.scrollRequest!==t)&&e.selectPane(`content`)})}})),ne(r.$onAction(({name:t,args:n,after:i})=>{if(!e.narrow.value||![`openChat`,`createChat`,`addContext`].includes(t))return;let a=r.panelOpen;i(i=>{e.narrow.value&&(r.panelOpen=a,(t===`addContext`&&i===`added`||t===`createChat`&&typeof i==`string`||t===`openChat`&&typeof n[0]==`string`&&r.chats[n[0]])&&e.selectPane(`agent`))})})),ne(s.$onAction(({name:t,after:n})=>{[`show`,`open`,`openLocal`,`activate`].includes(t)&&n(n=>{(t!==`openLocal`||n!==null)&&e.openWindow(`preview`)})})),ne(o.$onAction(({name:t,after:n})=>{if(t===`show`||t===`create`){let r=o.creating;n(()=>{o.enabled&&(t===`show`||!r&&o.creating)&&e.openWindow(`terminal`)})}})),ne(a.$onAction(({name:n,args:r,after:i})=>{n===`close`&&i(()=>{e.narrow.value&&e.window.value===r[0]&&nr(t,()=>{let e={...l().query};return delete e.uiWindow,{query:e,hash:l().hash}},!0)})})),e}function Gu(){return Wu(tr(),Fe(),{agent:X(),explorer:Tr(),windows:yn(),terminal:Tn(),preview:dr(),appInfo:kn()})}function Ku(e,t){e.value!==t&&(e.value=t)}var qu=H({name:`QFooter`,props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:[`reveal`,`focusin`],setup(e,{slots:n,emit:r}){let i=U(),a=se(we,Te);if(a===Te)return console.error(`QFooter needs to be child of QLayout`),Te;let o=N(Number.parseInt(e.heightHint,10)),s=N(!0),c=N(be.value||a.isContainer.value?0:window.innerHeight),l=M(()=>e.reveal||a.view.value.includes(`F`)||i.platform.is.ios&&a.isContainer.value),u=M(()=>a.isContainer.value?a.containerHeight.value:c.value),d=M(()=>{if(!e.modelValue)return 0;if(l.value)return s.value?o.value:0;let t=a.scroll.value.position+u.value+o.value-a.height.value;return Math.max(t,0)}),f=M(()=>!e.modelValue||l.value&&!s.value),p=M(()=>e.modelValue&&f.value&&e.reveal),m=M(()=>`q-footer q-layout__section--marginal `+(l.value?`fixed`:`absolute`)+`-bottom`+(e.bordered?` q-footer--bordered`:``)+(f.value?` q-footer--hidden`:``)+(e.modelValue?``:` q-layout--prevent-focus`+(l.value?``:` hidden`))),g=M(()=>{let e=a.rows.value.bottom,t={};return e[0]===`l`&&a.left.space&&(t[i.lang.rtl?`right`:`left`]=`${a.left.size}px`),e[2]===`r`&&a.right.space&&(t[i.lang.rtl?`left`:`right`]=`${a.right.size}px`),t});function _(e,t){a.update(`footer`,e,t)}Zn({debounce:0,onResize({height:e}){Ku(o,e),_(`size`,e)}});function y(){if(!e.reveal)return;let{direction:t,position:n,inflectionPoint:r}=a.scroll.value;Ku(s,t===`up`||n-r<100||a.height.value-u.value-n-o.value<300)}function b(e){p.value&&Ku(s,!0),r(`focusin`,e)}v(()=>e.modelValue,e=>{_(`space`,e),Ku(s,!0),a.animate()}),v(d,e=>{_(`offset`,e)}),v(()=>e.reveal,t=>{t||Ku(s,e.modelValue)}),v(s,e=>{a.animate(),r(`reveal`,e)}),v([o,a.scroll,a.height],y),v(()=>i.screen.height,e=>{a.isContainer.value||Ku(c,e)});let x={};return a.instances.footer=x,e.modelValue&&_(`size`,o.value),_(`space`,e.modelValue),_(`offset`,d.value),t(()=>{a.instances.footer===x&&(a.instances.footer=void 0,_(`size`,0),_(`offset`,0),_(`space`,!1))}),()=>{let t=Ce(n.default,[]);return e.elevated&&t.push(h(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),h(`footer`,{class:m.value,style:g.value,onFocusin:b},t)}}}),Ju=$(R({__name:`WorkspaceFooter`,emits:[`resize`],setup(e,{emit:t}){let{t:n}=Y(),r=t,i=qe(),a=tr(),s=Fl(),c=X(),l=Tr(),u=M(()=>qs(c.list.map(e=>e.chat))),d=M(()=>a.projection.value.panes.map(e=>({name:e,icon:e===`agent`?In.agent:e===`list`?Vt:vt,label:e===`agent`?n(`nav.agent`):i.path.startsWith(`/artifacts`)?n(e===`list`?`artifacts.title`:`artifacts.document`):i.path.startsWith(`/reviews`)?n(`nav.reviews`):e===`list`?n(i.path.startsWith(`/notes`)?`notes.title`:`workspace.list`):i.path.startsWith(`/notes`)?n(`workspace.note`):l.browseMode?n(`workspace.file`):n(`nav.changes`)})));return(e,t)=>m((o(),w(qu,{onTouchstart:O(s).start,bordered:``,class:j([e.$q.dark.isActive?`bg-dark text-white`:`bg-white text-dark`,`workspace-footer`])},{default:y(()=>[b(wr,{onResize:t[0]||=e=>r(`resize`,e.height)}),b(mr,{"model-value":O(a).pane.value,"no-caps":``,align:`justify`,"active-color":`primary`,"indicator-color":`primary`,"onUpdate:modelValue":t[1]||=e=>O(a).selectPane(e)},{default:y(()=>[(o(!0),P(I,null,z(d.value,e=>(o(),w(pr,{key:e.name,name:e.name,icon:e.icon,label:e.label,"aria-label":e.label},{default:y(()=>[e.name===`agent`&&u.value?(o(),w(Qn,{key:0,floating:``,color:u.value===`attention`?`warning`:`primary`,label:u.value===`attention`?`!`:`…`,"aria-label":O(n)(u.value===`attention`?`agent.chats.needsAnswer`:`workspace.working`)},null,8,[`color`,`label`,`aria-label`])):E(``,!0)]),_:2},1032,[`name`,`icon`,`label`,`aria-label`]))),128))]),_:1},8,[`model-value`])]),_:1},8,[`onTouchstart`,`class`])),[[Nl,O(s).swipe,void 0,{horizontal:!0}]])}}),[[`__scopeId`,`data-v-d41a590f`]]),Yu=1,Xu=.05,Zu=150,Qu=.2;function $u(e,t,n,r,i=!1){let a=Math.abs(r-e.layoutHeight)>=Yu&&Math.abs(t.height-r)<Yu;return!n||Math.abs(t.width-e.width)>=Yu||i||a?{width:t.width,height:t.height,layoutHeight:r}:{...e,layoutHeight:r}}function ed(e,t,n){return n&&Math.abs(t.scale-1)<Xu&&Math.abs(t.width-e.width)<Yu&&e.height-t.height>=Math.max(Zu,Qu*e.height)}function td(){let e=fr(),t={width:window.innerWidth,height:window.innerHeight,layoutHeight:window.innerHeight};function n(n){let r=window.visualViewport,i={width:r?.width??window.innerWidth,height:r?.height??window.innerHeight,scale:r?.scale??1,offsetTop:r?.offsetTop??0,offsetLeft:r?.offsetLeft??0},a=document.activeElement instanceof Element&&!!document.activeElement.closest(`input:not([readonly]):not([disabled]):not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="hidden"]):not([type="reset"]), textarea:not([readonly]):not([disabled]), [contenteditable]:not([contenteditable="false"])`);t=$u(t,i,a,window.innerHeight,n?.type===`fullscreenchange`),e.keyboardOpen=!!r&&ed(t,i,a),e.metrics=i}return q(()=>window.visualViewport??window,`resize`,n),q(()=>window.visualViewport??window,`scroll`,n),q(()=>window.visualViewport?window:null,`resize`,n),q(document,`fullscreenchange`,n),q(document,`focusin`,n),q(document,`focusout`,()=>{r().then(()=>n())}),n(),e}function nd(e,t){v(()=>A(t),t=>document.body.classList.toggle(e,t),{immediate:!0}),ne(()=>document.body.classList.remove(e))}var rd=[`inert`,`aria-hidden`],id=R({__name:`MainLayout`,setup(e){let t=F(`page`),n=Gu();Er(()=>n.narrow.value),nd(`workspace-narrow`,n.narrow);let i=N(50),a=N(64),s=td(),c=M(()=>n.narrow.value&&(n.pane.value===`agent`||!!n.window.value)),l=M(()=>n.narrow.value&&n.pane.value===`agent`&&!n.window.value);v([n.pane,n.window],async()=>{n.narrow.value&&(await r(),!document.querySelector(`[role="dialog"][aria-modal="true"]`)&&(n.window.value?document.querySelector(`[data-window-id="${n.window.value}"]`):n.pane.value===`agent`?document.getElementById(`workspace-agent`):t.value?.$el)?.focus({preventScroll:!0}))});let p;u(()=>{t.value&&(p=on(t.value.$el))}),f(()=>p?.());let h=tn(),g=Dn([`files:changed`],()=>{h.fetchInfo()});f(g.close);let{enabled:x}=Jt(X()),{isLocal:S}=Jt(jn()),{open:C,toggle:T,onResize:D}=Ua();return(e,r)=>{let u=_(`router-view`);return o(),w(Jr,{view:`hHh lpr fFf`,class:j({"workspace--narrow":O(n).narrow.value,"workspace--short":O(s).metrics.height<360}),onResize:O(D)},{default:y(()=>[b(Pa),m(b(Ll,{onResize:r[0]||=e=>i.value=e,onToggleDrawer:O(T)},null,8,[`onToggleDrawer`]),[[fe,!O(n).window.value]]),b(Bu,{modelValue:O(C),"onUpdate:modelValue":r[1]||=e=>ee(C)?C.value=e:null},null,8,[`modelValue`]),O(x)?(o(),w(hl,{key:0})):E(``,!0),O(S)?(o(),w(Uu,{key:1})):E(``,!0),O(n).narrow.value&&!O(n).window.value&&!O(s).keyboardOpen?(o(),w(Ju,{key:2,onResize:r[2]||=e=>a.value=e})):E(``,!0),b(Kr,{ref_key:`page`,ref:t,tabindex:`-1`,inert:c.value,"aria-hidden":c.value,style:d(c.value?{visibility:`hidden`}:void 0)},{default:y(()=>[b(u)]),_:1},8,[`inert`,`aria-hidden`,`style`]),L(`aside`,{id:`workspace-agent`,tabindex:`-1`,inert:!l.value,"aria-hidden":!l.value,class:`workspace-agent`,style:d({visibility:l.value?`visible`:`hidden`,top:`${O(s).metrics.offsetTop+i.value}px`,height:`${Math.max(0,O(s).metrics.height-i.value-(O(s).keyboardOpen?0:a.value))}px`})},null,12,rd)]),_:1},8,[`class`,`onResize`])}}}),ad=e({default:()=>od}),od=$(id,[[`__scopeId`,`data-v-d07bf0fa`]]);export{od as default,Gr as n,ad as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.preview-controls[data-v-2b9f0aa5]{border:1px solid var(--window-divider);background:var(--window-header-bg);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;border-radius:4px;padding:2px;font-size:10px;box-shadow:0 3px 12px #00000040}.preview-controls__value[data-v-2b9f0aa5]{white-space:nowrap;padding:0 2px}.preview-controls__number[data-v-2b9f0aa5]{padding:1px 4px;display:inline-block}.preview-controls__page[data-v-2b9f0aa5]{text-align:center}.preview-controls__status[data-v-2b9f0aa5]{flex:0 0 19px;justify-content:center;align-items:center;display:flex}.preview-controls__scale[data-v-2b9f0aa5]{text-align:center;min-width:36px}.preview-controls__divider[data-v-2b9f0aa5]{border-left:1px solid var(--window-divider);height:12px;margin:0 2px}.terminal-header__drag[data-v-6949977d]{cursor:move;-webkit-user-select:none;user-select:none}.terminal-header__drag--static[data-v-6949977d]{cursor:default}.terminal-tabs[data-v-7838bca7]{border-bottom:1px solid var(--window-divider);flex:none;min-height:36px}.terminal-tabs__tabs[data-v-7838bca7]{min-width:0}.terminal-tab[data-v-7838bca7]{text-transform:none;padding:0 8px}.terminal-tab__body[data-v-7838bca7]{min-width:0;max-width:200px}.terminal-tab__name[data-v-7838bca7]{min-width:0;font-size:12px}.terminal-resize[data-v-662195a2]{z-index:2;touch-action:none;--edge:8px;--corner:12px;--outside:calc(var(--edge) / -2);--edge-inset:calc(var(--corner) + var(--outside));position:absolute}.terminal-resize--n[data-v-662195a2],.terminal-resize--s[data-v-662195a2]{left:var(--edge-inset);right:var(--edge-inset);height:var(--edge);cursor:ns-resize}.terminal-resize--e[data-v-662195a2],.terminal-resize--w[data-v-662195a2]{top:var(--edge-inset);bottom:var(--edge-inset);width:var(--edge);cursor:ew-resize}.terminal-resize--ne[data-v-662195a2],.terminal-resize--nw[data-v-662195a2],.terminal-resize--se[data-v-662195a2],.terminal-resize--sw[data-v-662195a2]{width:var(--corner);height:var(--corner)}.terminal-resize--n[data-v-662195a2],.terminal-resize--ne[data-v-662195a2],.terminal-resize--nw[data-v-662195a2]{top:var(--outside)}.terminal-resize--s[data-v-662195a2],.terminal-resize--se[data-v-662195a2],.terminal-resize--sw[data-v-662195a2]{bottom:var(--outside)}.terminal-resize--e[data-v-662195a2],.terminal-resize--ne[data-v-662195a2],.terminal-resize--se[data-v-662195a2]{right:var(--outside)}.terminal-resize--w[data-v-662195a2],.terminal-resize--nw[data-v-662195a2],.terminal-resize--sw[data-v-662195a2]{left:var(--outside)}.terminal-resize--ne[data-v-662195a2],.terminal-resize--sw[data-v-662195a2]{cursor:nesw-resize}.terminal-resize--nw[data-v-662195a2],.terminal-resize--se[data-v-662195a2]{cursor:nwse-resize}.floating-window[data-v-2e47f937]{display:flex;position:fixed}.floating-window__frame[data-v-2e47f937]{border:1px solid var(--window-divider);min-width:0;box-shadow:var(--window-shadow);border-radius:8px;flex-direction:column;flex:1;display:flex;overflow:hidden}.floating-window--maximized .floating-window__frame[data-v-2e47f937]{box-shadow:none;border:0;border-radius:0}.floating-window__body[data-v-2e47f937]{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.floating-window--narrow[data-v-2e47f937]{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.terminal-window__body[data-v-42de592b]{flex:1;min-width:0;min-height:0;display:flex}.project-text[data-v-2b18c7a6]{font-family:var(--font-mono);white-space:pre;margin:0;padding:16px}.project-text__selected[data-v-2b18c7a6]{background:#ffbe0033}.preview-diagram[data-v-d44ed45b]{width:max-content;padding:16px}.preview-diagram[data-v-d44ed45b] svg{max-width:none!important}.preview-image[data-v-96021427]{max-width:100%;margin:16px auto;display:block}.preview-viewport[data-v-be53dd3d]{flex:1;min-width:0;min-height:0;display:flex;position:relative}.preview-overlay[data-v-be53dd3d]{z-index:2;position:absolute;bottom:16px;right:16px}.preview-content[data-v-be53dd3d]{flex:1;min-height:0;position:relative;overflow:auto}.preview-markdown[data-v-be53dd3d]{padding:24px clamp(32px,8%,128px)}.preview-refresh[data-v-be53dd3d]{position:sticky;bottom:12px;left:12px}.preview-title[data-v-ce50ac9d]{cursor:move;-webkit-user-select:none;user-select:none}.preview-tabs[data-v-5bc7b6f7]{border-bottom:1px solid var(--window-divider);flex:none;min-height:36px}.preview-tabs__tabs[data-v-5bc7b6f7]{min-width:0}.preview-tab-label[data-v-5bc7b6f7]{max-width:240px}.preview-empty[data-v-9baaff3b]{flex:1}.preview-drop-overlay[data-v-6aa40180]{z-index:3;pointer-events:none;border:2px dashed var(--q-primary);background:var(--window-header-bg);color:var(--q-primary);border-radius:8px;position:absolute;inset:0}.window-dock[data-v-c4ebcdbe]{z-index:2600;border:1px solid var(--window-divider);background:color-mix(in srgb, var(--window-header-bg) 88%, black);box-shadow:var(--window-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;align-items:center;gap:4px;max-width:100vw;max-height:100vh;padding:6px;display:flex;position:fixed}body.body--dark .window-dock{background:color-mix(in srgb, var(--window-header-bg) 88%, white)}.window-dock--vertical[data-v-c4ebcdbe]{flex-direction:column}.window-dock__handle[data-v-c4ebcdbe]{cursor:move;touch-action:none;align-items:center;padding:4px;display:flex}.window-dock__button[data-v-c4ebcdbe]{border:1px solid #0000;border-radius:8px;width:42px;min-height:42px;padding:0}.window-dock__button--running[data-v-c4ebcdbe]{border-color:color-mix(in srgb, currentColor 65%, transparent);background:linear-gradient(to bottom, color-mix(in srgb, currentColor 18%, transparent), color-mix(in srgb, currentColor 7%, transparent));box-shadow:inset 0 1px 1px #ffffff38,inset 0 -1px 1px #00000026,0 2px 3px #0003}.window-dock__item[data-v-c4ebcdbe]{position:relative}.window-dock__button--active[data-v-c4ebcdbe]{border-color:var(--q-primary);background:var(--q-primary);box-shadow:inset 0 1px 1px #ffffff4d, 0 0 0 2px color-mix(in srgb, var(--q-primary) 35%, transparent), 0 2px 3px #0003}.agent-session-tasks__picker-row>.q-btn[data-v-8797e027]{width:32px;min-height:32px;margin-top:12px}.agent-session-tasks__task[data-v-972c7344]{max-width:100%;min-height:28px}.agent-session-tasks__task[data-v-972c7344] .q-chip__icon--remove{box-sizing:border-box;border-radius:50%;align-self:center;width:16px;height:16px;margin-left:4px;padding:0;font-size:13px}.agent-session-tasks[data-v-d4f806ad]{min-width:0;font-family:var(--font-agent);overflow-wrap:anywhere;flex-shrink:0;font-size:12px;line-height:1.4}.agent-session-tasks[data-v-d4f806ad] .agent-session-tasks__header{min-height:32px;font-size:inherit;padding:4px 8px}.agent-session-tasks__icon[data-v-d4f806ad]{padding-right:6px}.agent-session-tasks__body[data-v-d4f806ad]{max-height:35vh;padding:0 8px 8px;overflow-y:auto}.agent-session-tasks__hint[data-v-d4f806ad]{color:var(--app-icon-neutral);margin:4px 0 8px}.agent-session-tasks__notice[data-v-d4f806ad],.agent-session-tasks[data-v-d4f806ad] .q-field,.agent-session-tasks[data-v-d4f806ad] .q-field__label,.agent-session-tasks[data-v-d4f806ad] .q-field__bottom{font-family:inherit;font-size:12px;line-height:1.4}.agent-item__thumb[data-v-a05b8739]{cursor:zoom-in;width:72px;height:72px}.agent-item.q-message[data-v-f80f2fb9]{font-family:var(--font-agent);min-width:0;max-width:100%;margin-bottom:0}.agent-item[data-v-f80f2fb9] .q-message-text{min-height:0;padding-left:16px;padding-right:16px}.agent-item[data-v-f80f2fb9] .q-message-container>*,.agent-item[data-v-f80f2fb9] .q-message-text-content,.agent-item[data-v-f80f2fb9] .q-message-text{min-width:0;max-width:100%}.agent-item__text[data-v-f80f2fb9]{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65}.agent-item.q-message[data-v-67ce6781]{font-family:var(--font-agent);min-width:0;max-width:100%;margin-bottom:0}.agent-item[data-v-67ce6781] .q-message-text{min-height:0;padding-left:16px;padding-right:16px}.agent-item[data-v-67ce6781] .q-message-container>*,.agent-item[data-v-67ce6781] .q-message-text-content,.agent-item[data-v-67ce6781] .q-message-text{min-width:0;max-width:100%}.agent-item[data-v-67ce6781] .md-content{font-size:14px;line-height:1.65}.agent-item[data-v-67ce6781] .md-content strong,.agent-item[data-v-67ce6781] .md-content b{font-weight:500}.agent-diff[data-v-60226168]{border:1px solid var(--q-separator-color,#8080804d);border-radius:4px}.agent-diff__path[data-v-60226168]{background:var(--diff-header-bg);padding:2px 8px}.agent-diff__body[data-v-60226168]{max-width:100%;margin:0;font-size:12px;line-height:1.45;overflow-x:auto}.agent-diff__row[data-v-60226168]{white-space:pre;padding:0 8px;display:block}.agent-diff__row--added[data-v-60226168]{background:#2ea0432e}.agent-diff__row--removed[data-v-60226168]{background:#f851492e}.agent-tool[data-v-f6cfc310]{border:1px solid var(--q-separator-color,#8080804d);border-radius:6px;font-size:11px}.agent-tool[data-v-f6cfc310] .q-item{min-height:26px;padding:0 8px}.agent-tool[data-v-f6cfc310] .q-item__label{font-size:11px}.agent-tool[data-v-f6cfc310] .q-item__section--side{padding-left:6px}.agent-tool__icon[data-v-f6cfc310]{min-width:22px;padding-right:6px}.agent-tool__badge[data-v-f6cfc310]{font-size:10px}.agent-tool__caption[data-v-f6cfc310],.agent-tool__body[data-v-f6cfc310]{font-size:11px}.agent-tool__output[data-v-f6cfc310]{white-space:pre-wrap;max-height:200px;margin:0;font-size:11px;overflow:auto}.agent-thought[data-v-9ff16053]{font-size:11px}.agent-thought__text[data-v-9ff16053]{white-space:pre-wrap;font-size:11px}.agent-thought[data-v-9ff16053] .q-item{min-height:26px;padding:0 8px}.agent-thought[data-v-9ff16053] .q-item__label,.agent-thought[data-v-9ff16053] .q-item__section--main{font-size:11px}.agent-thought[data-v-9ff16053] .q-icon{font-size:14px}.agent-auto-approved[data-v-2304a1b7]{font-size:11px}.agent-auto-approved[data-v-2304a1b7] .q-icon{font-size:14px}.agent-chat-banners__banner[data-v-ece62303]{overflow-wrap:anywhere;flex:none;font-size:12px}.agent-chat-banners__banner[data-v-ece62303] .q-banner__content,.agent-chat-banners__banner[data-v-ece62303] .q-btn{font-size:12px;line-height:1.35}.agent-chat-banners__banner[data-v-ece62303] .q-banner__actions{align-self:center}.agent-mention-popup[data-v-5926da49]{z-index:6000;border:1px solid #80808059;border-radius:6px;width:340px;max-width:calc(100vw - 16px);max-height:260px;font-size:13px;position:fixed;overflow-y:auto}.agent-mention-popup__item[data-v-5926da49]{cursor:pointer;align-items:baseline;gap:8px;padding:4px 10px;display:flex}.agent-mention-popup__item--active[data-v-5926da49]{background:#1976d22e}.agent-mention-popup__icon[data-v-5926da49]{opacity:.7;flex:none}.agent-mention-popup__name[data-v-5926da49]{flex:none;font-weight:500}.agent-mention-popup__dir[data-v-5926da49]{opacity:.6;text-overflow:ellipsis;white-space:nowrap;text-align:left;direction:rtl;min-width:0;font-size:11.5px;overflow:hidden}.agent-editor-wrap[data-v-7bc219e6]{min-width:0;position:relative}.agent-editor[data-v-7bc219e6]{font-family:var(--font-agent);white-space:pre-wrap;overflow-wrap:anywhere;outline:none;min-height:24px;max-height:160px;padding:5px 4px;font-size:14px;line-height:1.65;overflow-y:auto}.agent-editor[aria-disabled=true][data-v-7bc219e6]{cursor:not-allowed;opacity:.6}.agent-editor--empty[data-v-7bc219e6]:before{content:attr(data-placeholder);opacity:.5;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;position:absolute;top:5px;left:4px;right:4px;overflow:hidden}.agent-editor[data-v-7bc219e6] .agent-mention{-webkit-user-select:none;user-select:none;white-space:nowrap;background:#1976d22e;border-radius:4px;align-items:center;margin:0 1px;padding:0 1px 0 6px;font-size:12.5px;line-height:1.6;display:inline-flex}.agent-editor[data-v-7bc219e6] .agent-mention__remove{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:0;padding:0 4px;font-size:14px;line-height:1}.agent-editor[data-v-7bc219e6] .agent-mention__remove:hover{opacity:1}.agent-attachment-thumb[data-v-d38589f4]{width:56px;height:56px;position:relative}.agent-attachment-thumb-remove[data-v-d38589f4]{position:absolute;top:-6px;right:-6px}.agent-add-menu[data-v-9d521ba7]{min-width:180px}.agent-dot[data-v-39759232]{flex:none;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.agent-dot__mark[data-v-39759232]{background:var(--q-positive);opacity:.55;border-radius:50%;width:7px;height:7px}.agent-dot__mark--attention[data-v-39759232]{background:var(--q-warning);opacity:1}.agent-dot__mark--closed[data-v-39759232]{background:var(--q-negative);opacity:1}.agent-cfg[data-v-05080235]{max-width:190px;font-size:12px}.agent-cfg[data-v-05080235] .q-btn__content{flex-wrap:nowrap}.agent-cfg[data-v-05080235] .block{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agent-cfg__list[data-v-05080235]{width:340px;min-width:220px;max-width:calc(100vw - 24px);max-height:300px}.agent-speech-language[data-v-8a910a9d]{font-size:12px}.agent-speech-language__list[data-v-8a910a9d]{width:260px;max-width:calc(100vw - 24px);max-height:300px;overflow-y:auto}.agent-composer__status[data-v-165fe17f]{min-height:28px;margin-top:4px}.agent-composer__state[data-v-165fe17f]{opacity:.8;padding-right:8px;font-size:12px}.workspace--narrow .agent-composer__status[data-v-165fe17f]{grid-template-columns:minmax(0,1fr) auto;display:grid}.workspace--narrow .agent-composer__options[data-v-165fe17f]{grid-area:1/1/auto/-1;column-gap:4px;width:100%;margin-left:0}.workspace--narrow .agent-composer__options[data-v-165fe17f]>.q-btn{max-width:100%;margin-left:0}.workspace--narrow .agent-composer__state[data-v-165fe17f]{grid-area:2/1}.workspace--narrow .agent-composer__actions[data-v-165fe17f]{grid-area:2/2}.agent-voice[data-v-db55d5da]{position:relative}.agent-voice__hidden[data-v-db55d5da]{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.agent-voice__button[data-v-db55d5da]{touch-action:none;-webkit-user-select:none;user-select:none}.agent-voice__spectrum[data-v-db55d5da]{pointer-events:none;justify-content:center;align-items:center;gap:2px;width:18px;height:18px;display:flex}.agent-voice__bar[data-v-db55d5da]{background:currentColor;border-radius:1px;width:2px;height:18px;transition:transform .1s linear}@media (prefers-reduced-motion:reduce){.agent-voice__bar[data-v-db55d5da]{transition:none}}.agent-voice__preview[data-v-db55d5da]{white-space:pre-wrap;pointer-events:none;border-radius:8px;width:max-content;max-width:min(420px,80vw);padding:6px 10px;font-size:13px;line-height:1.4;position:absolute;bottom:calc(100% + 6px);right:0}.agent-composer[data-v-9c1d8c99]{flex:none;padding:4px 16px 10px}.agent-composer__box[data-v-9c1d8c99]{border:1px solid #80808073;border-radius:8px}.agent-composer__box[data-v-9c1d8c99]:focus-within{border-color:var(--q-primary)}.agent-permission[data-v-71aeff67]{border:1px solid #8080804d;border-left:3px solid var(--q-warning);border-radius:4px;padding:6px 10px 8px;font-size:12px}.agent-permission__head[data-v-71aeff67]{opacity:.7;font-size:11px}.agent-permission__title[data-v-71aeff67]{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.agent-permission__changes[data-v-71aeff67]{font-size:11px}.agent-permission__changes[data-v-71aeff67] .q-item{min-height:24px;padding:0}.agent-view[data-v-d5c9dad9]{position:absolute;inset:0}.agent-view[data-v-d5c9dad9] .q-scrollarea__content{width:100%}.agent-view__feed[data-v-d5c9dad9]{flex-direction:column;gap:10px;padding:14px 16px;display:flex}.agent-empty[data-v-2d642e53]{padding:24px}.agent-empty__hint[data-v-2d642e53]{max-width:260px}.agent-tabs[data-v-034fa7a4]{border-bottom:1px solid var(--q-separator-color,#8080804d);flex:none}.agent-tabs__tabs[data-v-034fa7a4]{min-width:0}.agent-tab[data-v-034fa7a4]{text-transform:none;padding:0 8px}.agent-tab__body[data-v-034fa7a4]{min-width:0;max-width:180px}.agent-tab__name[data-v-034fa7a4]{min-width:0;font-size:13px}.agent-panel__views[data-v-11fe00e5]{min-height:0;position:relative}.agent-new-chat[data-v-887d90c7]{width:380px;max-width:92vw}.agent-drawer__handle[data-v-0862203d]{z-index:10;cursor:col-resize;touch-action:none;width:13px;position:absolute;top:0;bottom:0;left:-6px}.agent-drawer__handle[data-v-0862203d]:focus-visible{outline-offset:2px;outline:2px solid}.agent-drawer--dragging[data-v-0862203d]{-webkit-user-select:none;user-select:none;transition:none!important}.repo-info[data-v-fdeb181e]{line-height:1}.qr-code[data-v-db84bdf4]{width:200px;height:200px}.devices-dialog__connection[data-v-a9f964f9]{gap:24px}.devices-dialog__trusted[data-v-a9f964f9]{height:144px;overflow-y:auto}.devices-dialog__device[data-v-a9f964f9]{height:72px}.devices-dialog__address[data-v-a9f964f9]{width:100%;font-family:var(--font-mono)}.agent-menu__chats[data-v-8936cf35]{padding:4px 0 8px}.agent-menu__dot[data-v-8936cf35]{min-width:28px;padding-left:8px}.device-request__code[data-v-02ba31f5]{font-family:var(--font-mono);letter-spacing:.3em}.workspace-footer[data-v-d41a590f]{padding-bottom:env(safe-area-inset-bottom)}.workspace-footer[data-v-d41a590f] .q-tab{min-width:44px;min-height:64px}.workspace-footer[data-v-d41a590f] .q-tab__icon{font-size:28px}.workspace-agent[data-v-d07bf0fa]{min-width:0;position:fixed;left:0;right:0}
|