@tequila99/githuman 0.2.3 → 0.3.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 +26 -0
- package/dist/cli/commands/export.js +2 -1
- package/dist/cli/server-runtime.js +13 -1
- package/dist/cli/startup-message.js +3 -2
- package/dist/server/adapters/agents/event-mapper.js +140 -0
- package/dist/server/app.js +21 -12
- package/dist/server/config/agents.js +141 -0
- package/dist/server/errors/agents.js +12 -0
- package/dist/server/errors/comments.js +2 -0
- package/dist/server/errors/export.js +2 -0
- package/dist/server/errors/http.js +4 -0
- package/dist/server/errors/reviews.js +3 -0
- package/dist/server/hooks/agents/local-origin.js +33 -0
- package/dist/server/repositories/review.repo.js +1 -3
- package/dist/server/routes/agent.js +135 -0
- package/dist/server/routes/comments.js +17 -67
- package/dist/server/routes/diff.js +5 -6
- package/dist/server/routes/events.js +6 -1
- package/dist/server/routes/export.js +6 -15
- package/dist/server/routes/git.js +12 -21
- package/dist/server/routes/reviews.js +11 -43
- package/dist/server/services/agent/agent-session.js +497 -0
- package/dist/server/services/agent/context-builder.js +137 -0
- package/dist/server/services/agent/file-index.js +58 -0
- package/dist/server/services/agent/session-registry.js +100 -0
- package/dist/server/services/comment.service.js +1 -2
- package/dist/server/services/diff.service.js +2 -1
- package/dist/server/services/export.service.js +1 -2
- package/dist/server/services/git.service.js +6 -7
- package/dist/server/services/review.service.js +3 -3
- package/dist/server/utils/executable.js +26 -0
- package/dist/server/utils/file-name.js +6 -0
- package/dist/server/utils/sse.js +11 -0
- package/dist/server/utils/text.js +29 -0
- package/dist/shared/agents/chat-names.js +17 -0
- package/dist/shared/agents/constants.js +6 -0
- package/dist/shared/agents/context-format.js +17 -0
- package/dist/shared/agents/file-search.js +48 -0
- package/dist/shared/agents/schemas.js +51 -0
- package/dist/shared/agents/types.js +11 -0
- package/dist/shared/app/types.js +1 -0
- package/dist/shared/comments/types.js +1 -0
- package/dist/shared/diff/types.js +4 -0
- package/dist/shared/{types.js → events/types.js} +0 -3
- package/dist/shared/git/types.js +1 -0
- package/dist/shared/http/types.js +1 -0
- package/dist/shared/network/loopback.js +4 -0
- package/dist/shared/reviews/types.js +1 -0
- package/dist/shared/utils/error-message.js +3 -0
- package/dist/shared/utils/guards.js +4 -0
- package/dist/web/assets/AppPage-CSb8txs5.js +1 -0
- package/dist/web/assets/CreateReviewFabButton-B18DLuH6.js +1 -0
- package/dist/web/assets/CreateReviewFabButton-Cufd8hVJ.css +1 -0
- package/dist/web/assets/{ErrorNotFound-BuL12Ld8.js → ErrorNotFound-B5uYICL4.js} +1 -1
- package/dist/web/assets/IndexPage-B-hkrnvt.css +1 -0
- package/dist/web/assets/IndexPage-Cm_ssBeC.js +1 -0
- package/dist/web/assets/MainLayout-ChxXEt_Q.css +1 -0
- package/dist/web/assets/MainLayout-ClBPF545.js +7 -0
- package/dist/web/assets/QBtn-E32fUOKx.js +1 -0
- package/dist/web/assets/QItemLabel-Co6oCEUr.js +1 -0
- package/dist/web/assets/QMenu-BZ1eK_rS.js +1 -0
- package/dist/web/assets/QSelect-D1V4tbDr.js +1 -0
- package/dist/web/assets/ReviewDetailPage-BWa3EEkv.css +1 -0
- package/dist/web/assets/ReviewDetailPage-Ct0hXwZL.js +1 -0
- package/dist/web/assets/ReviewsPage-CbLAU6OM.js +1 -0
- package/dist/web/assets/StatusSwitcher-C0k4efwK.js +4 -0
- package/dist/web/assets/StatusSwitcher-CZYtI0ID.css +1 -0
- package/dist/web/assets/abnfDiagram-O67JEVCF-DkOrqZLn.js +1 -0
- package/dist/web/assets/agent-icon-BKoq2a6T.js +17 -0
- package/dist/web/assets/agent-icon-BUd-vCRS.css +1 -0
- package/dist/web/assets/agent-store-CEQ6MmTC.js +1 -0
- package/dist/web/assets/app-info-store-CIqmSeWK.js +1 -0
- package/dist/web/assets/arc-BALAYY3f.js +1 -0
- package/dist/web/assets/architecture-7GRP2DOG-CTkghkmX.js +1 -0
- package/dist/web/assets/architectureDiagram-NJMV4G6O-C-xtrMea.js +36 -0
- package/dist/web/assets/array-BifhSqXX.js +1 -0
- package/dist/web/assets/blockDiagram-BEXU5L5S-DYo9Os-m.js +140 -0
- package/dist/web/assets/c4Diagram-YGBWAQC7-BpSFjUAX.js +38 -0
- package/dist/web/assets/channel-f9cE6NV9.js +1 -0
- package/dist/web/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
- package/dist/web/assets/chunk-3FUC2YCW-DtUqbu5K.js +2 -0
- package/dist/web/assets/chunk-5DYCD2WN-DeYTIM8k.js +1 -0
- package/dist/web/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
- package/dist/web/assets/chunk-742MDFTN-8BfKAsu6.js +1 -0
- package/dist/web/assets/chunk-7INBJB4K-PXK092EZ.js +62 -0
- package/dist/web/assets/chunk-7M6MHVWA-Db9reT-V.js +213 -0
- package/dist/web/assets/chunk-7PRAP22T-CNFpjNaH.js +1 -0
- package/dist/web/assets/chunk-DUW6YSOI-Dgx8z5s3.js +1 -0
- package/dist/web/assets/chunk-FOHPRMQF-CoA4358r.js +161 -0
- package/dist/web/assets/chunk-GTNCS2PH-C5gqOp1W.js +88 -0
- package/dist/web/assets/chunk-GWA4HPMP-BquHLG8L.js +1 -0
- package/dist/web/assets/chunk-J5ZVWO5B-oDCd-gWO.js +1 -0
- package/dist/web/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
- package/dist/web/assets/chunk-MBY4JIJT-DyOEFgCh.js +72 -0
- package/dist/web/assets/chunk-NETBCI7D-Bd3ij3-b.js +1 -0
- package/dist/web/assets/chunk-O7XYJQB3-DQvIvDe6.js +126 -0
- package/dist/web/assets/chunk-UA2S7LBM-BDIHwgCZ.js +1 -0
- package/dist/web/assets/chunk-WEXAMYUT-DwQKTsK-.js +1 -0
- package/dist/web/assets/chunk-XXDRQBXY-DTdiON6C.js +1 -0
- package/dist/web/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
- package/dist/web/assets/chunk-Z7XXMR3K-CIvnaGnU.js +10 -0
- package/dist/web/assets/chunk-ZIGJFQKS-BdT_T5CV.js +2 -0
- package/dist/web/assets/classDiagram-v2-NBCMYWYE-BUoclHlO.js +217 -0
- package/dist/web/assets/{core-Ruj7F7dx.js → core-B8kUiZoM.js} +1 -1
- package/dist/web/assets/cose-bilkent-JH36ORCC-C16eW6pc.js +1 -0
- package/dist/web/assets/create-B9ZqyTxV.js +1 -0
- package/dist/web/assets/cynefin-OW5HDTMX-1mS7ZeoM.js +1 -0
- package/dist/web/assets/cynefinDiagram-VND7K2PF-D1PC4YT4.js +62 -0
- package/dist/web/assets/cytoscape.esm-B-1iW2ft.js +321 -0
- package/dist/web/assets/dagre-6A5THRUB-amODOP74.js +4 -0
- package/dist/web/assets/debounce-CDIE7CV6.js +1 -0
- package/dist/web/assets/defaultLocale-BFoDCU3G.js +1 -0
- package/dist/web/assets/diagram-22UHCM2B-wUvcsN_B.js +200 -0
- package/dist/web/assets/diagram-3UASUU5V-CLiOVs2l.js +24 -0
- package/dist/web/assets/diagram-ATOU4E4O-Cs5cFGgz.js +3 -0
- package/dist/web/assets/diagram-CDSNMT55-C8Jb-YeE.js +30 -0
- package/dist/web/assets/diagram-MLGK6HIB-DA6C9fVB.js +24 -0
- package/dist/web/assets/diagram-MPIPVDR6-BOaFKuUi.js +41 -0
- package/dist/web/assets/dist-DuFVAX6Y.js +1 -0
- package/dist/web/assets/ebnfDiagram-ZINNZB2B-e5jvn-EE.js +1 -0
- package/dist/web/assets/elk-276RUBZZ-D7Gcu17D.js +27 -0
- package/dist/web/assets/engine-oniguruma-HbxpIAu4.js +1 -0
- package/dist/web/assets/erDiagram-OPXOYQCR-Cn1bBUF8.js +99 -0
- package/dist/web/assets/event-rR76ioXz.js +1 -0
- package/dist/web/assets/eventmodeling-NTZA5JFV-BjGpd42n.js +1 -0
- package/dist/web/assets/export-file-Di_2jvjP.js +1 -0
- package/dist/web/assets/fira-code-symbols2-400-normal-9X26I2LK.woff2 +0 -0
- package/dist/web/assets/fira-code-symbols2-500-normal-B5s_njw3.woff2 +0 -0
- package/dist/web/assets/fira-code-symbols2-600-normal-Bu3RnO39.woff2 +0 -0
- package/dist/web/assets/flowDiagram-KWPJA3E3-a3N8MVB8.js +1 -0
- package/dist/web/assets/ganttDiagram-FUAMR5RP-C3U8jeJB.js +292 -0
- package/dist/web/assets/gitGraph-4MIJSDKK-C165DC0H.js +1 -0
- package/dist/web/assets/gitGraphDiagram-X574FWY7-CVHdT1OC.js +106 -0
- package/dist/web/assets/golos-text-cyrillic-400-normal-BwL4n7Pb.woff +0 -0
- package/dist/web/assets/golos-text-cyrillic-400-normal-C7us6pn1.woff2 +0 -0
- package/dist/web/assets/golos-text-cyrillic-500-normal-BSLQUuP1.woff2 +0 -0
- package/dist/web/assets/golos-text-cyrillic-500-normal-hXinzVVQ.woff +0 -0
- package/dist/web/assets/golos-text-cyrillic-ext-400-normal-Bo67NYBq.woff2 +0 -0
- package/dist/web/assets/golos-text-cyrillic-ext-400-normal-D592xEk3.woff +0 -0
- package/dist/web/assets/golos-text-cyrillic-ext-500-normal-CLsu_eDI.woff2 +0 -0
- package/dist/web/assets/golos-text-cyrillic-ext-500-normal-InHNvB7v.woff +0 -0
- package/dist/web/assets/golos-text-latin-400-normal-Coi1FYaD.woff2 +0 -0
- package/dist/web/assets/golos-text-latin-400-normal-DOuJOmdK.woff +0 -0
- package/dist/web/assets/golos-text-latin-500-normal-BQo4s7Kn.woff +0 -0
- package/dist/web/assets/golos-text-latin-500-normal-BznAvurO.woff2 +0 -0
- package/dist/web/assets/golos-text-latin-ext-400-normal-BXgyX_iE.woff +0 -0
- package/dist/web/assets/golos-text-latin-ext-400-normal-BjKcJWKY.woff2 +0 -0
- package/dist/web/assets/golos-text-latin-ext-500-normal-9vZPKadr.woff2 +0 -0
- package/dist/web/assets/golos-text-latin-ext-500-normal-BmtMVntR.woff +0 -0
- package/dist/web/assets/graphlib-DS17s2tU.js +1 -0
- package/dist/web/assets/i18n-CyUPETur.js +1 -0
- package/dist/web/assets/{index-JAYe_SFI.css → index-C6ArNnKs.css} +1 -1
- package/dist/web/assets/index-C_B6Z2lc.js +2 -0
- package/dist/web/assets/info-A6RAGUB7-cbWtF3FJ.js +1 -0
- package/dist/web/assets/infoDiagram-VRGFBTTK-C_kWn3Ai.js +2 -0
- package/dist/web/assets/init-C-OQMol4.js +1 -0
- package/dist/web/assets/init-app-DnfYD-0k.js +1 -0
- package/dist/web/assets/is-ChHvR1Z-.js +1 -0
- package/dist/web/assets/ishikawaDiagram-OU5B5YK6-Xb9cDRr7.js +70 -0
- package/dist/web/assets/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff +0 -0
- package/dist/web/assets/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2 +0 -0
- package/dist/web/assets/jetbrains-mono-cyrillic-ext-500-normal-C9ShMxGR.woff2 +0 -0
- package/dist/web/assets/jetbrains-mono-cyrillic-ext-500-normal-CEVyPk4Y.woff +0 -0
- package/dist/web/assets/jetbrains-mono-cyrillic-ext-600-normal-DVvC-yKp.woff +0 -0
- package/dist/web/assets/jetbrains-mono-cyrillic-ext-600-normal-Dj6eZy5f.woff2 +0 -0
- package/dist/web/assets/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2 +0 -0
- package/dist/web/assets/jetbrains-mono-vietnamese-500-normal-BvH7FW2L.woff2 +0 -0
- package/dist/web/assets/jetbrains-mono-vietnamese-600-normal-Dtizs43-.woff2 +0 -0
- package/dist/web/assets/journeyDiagram-ZHPQQLJL-6eZcefap.js +139 -0
- package/dist/web/assets/kanban-definition-PNTS6WVX-D_z_AsKR.js +89 -0
- package/dist/web/assets/katex-ZlcWpGUi.js +257 -0
- package/dist/web/assets/line-v7JtZ-Za.js +1 -0
- package/dist/web/assets/linear-hp1KWmiC.js +1 -0
- package/dist/web/assets/mermaid-parser.core-Cwwk5NqO.js +7 -0
- package/dist/web/assets/mermaid.core-BjPJhwW0.js +44 -0
- package/dist/web/assets/mindmap-definition-NLK3R4M7-lQohhDXq.js +96 -0
- package/dist/web/assets/ordinal-BDEzSJ7C.js +1 -0
- package/dist/web/assets/packet-AYTQ26CC-DxiGe6nt.js +1 -0
- package/dist/web/assets/path-fybaL0A-.js +1 -0
- package/dist/web/assets/pegDiagram-GJSIUBJH-XZRpQTLx.js +1 -0
- package/dist/web/assets/pie-WAS4IAKB-fxN0O90k.js +1 -0
- package/dist/web/assets/pieDiagram-5QR66LMP-M_bBKE-n.js +39 -0
- package/dist/web/assets/pinia-0B8sIOgD.js +1 -0
- package/dist/web/assets/pinia-DbmXdZbT.js +1 -0
- package/dist/web/assets/quadrantDiagram-O4NWA36T-BNxVPrq3.js +7 -0
- package/dist/web/assets/radar-RG4KPBEZ-Cd-5aokk.js +1 -0
- package/dist/web/assets/railroad-74A4TZTK-BvSKL8Ze.js +1 -0
- package/dist/web/assets/railroad-abnf-HS5TGJTU-CB32K25L.js +1 -0
- package/dist/web/assets/railroad-ebnf-LZEXJU2U-CqQR3zRl.js +1 -0
- package/dist/web/assets/railroad-peg-WCYAUIDC-DRSdB-oL.js +1 -0
- package/dist/web/assets/railroadDiagram-XR7U4H2S-D664lPSL.js +1 -0
- package/dist/web/assets/requirementDiagram-PLB6GJNP-B_1Dl0-3.js +84 -0
- package/dist/web/assets/rough.esm-Dy-Kn_BL.js +1 -0
- package/dist/web/assets/runtime-core.esm-bundler-Carm8LUR.js +1 -0
- package/dist/web/assets/safe-storage-CWaD6Dq3.js +1 -0
- package/dist/web/assets/sankeyDiagram-IPEJSGJF-BvFmMC_F.js +40 -0
- package/dist/web/assets/sequenceDiagram-PO4LG4MO-DMK1ey4g.js +169 -0
- package/dist/web/assets/single-flight-r8B7stt1.js +1 -0
- package/dist/web/assets/sizeCapture-INFHLROL-B0uUizjq.js +1 -0
- package/dist/web/assets/src-Cy0hT8a0.js +1 -0
- package/dist/web/assets/stateDiagram-v2-GCMORJYK-VVElU-_E.js +291 -0
- package/dist/web/assets/swimlanes-2SLR337P-DyfYJvHL.js +1 -0
- package/dist/web/assets/swimlanesDiagram-TC7HE7FX-BQ0mK2BI.js +8 -0
- package/dist/web/assets/theme-BFceB3b9.js +1 -0
- package/dist/web/assets/timeline-definition-EJHVYXUP-DBoRb7uC.js +120 -0
- package/dist/web/assets/treeView-Q6P3EWNA-D8AoZg1Y.js +1 -0
- package/dist/web/assets/treemap-WGGIJYW6-DhcVtZsu.js +1 -0
- package/dist/web/assets/use-app-theme-DxZW-eOR.js +1 -0
- package/dist/web/assets/use-panel-width-CY75Fomr.js +1 -0
- package/dist/web/assets/usecaseDiagram-POWQR4AR-BCfvWOH4.js +328 -0
- package/dist/web/assets/vennDiagram-UO4OBE2U-BIk6-FLo.js +34 -0
- package/dist/web/assets/{vue-i18n.runtime-CxBM6QPV.js → vue-i18n.runtime-BQwnBdmC.js} +2 -2
- package/dist/web/assets/wardley-WFR3VGLG-BMHH70A3.js +1 -0
- package/dist/web/assets/wardleyDiagram-VNRHLVJA-DB-cxlSq.js +78 -0
- package/dist/web/assets/xychartDiagram-PMCCYNJV-BejE-3gi.js +7 -0
- package/dist/web/index.html +8 -6
- package/package.json +12 -3
- package/dist/web/assets/AppPage-B9tWPrzn.js +0 -1
- package/dist/web/assets/CreateReviewFabButton-BqWdgfEf.css +0 -1
- package/dist/web/assets/CreateReviewFabButton-DcXpOlBP.js +0 -1
- package/dist/web/assets/IndexPage-CsgdLXZh.css +0 -1
- package/dist/web/assets/IndexPage-y9DcUqW9.js +0 -1
- package/dist/web/assets/MainLayout-BRPoh8y0.css +0 -1
- package/dist/web/assets/MainLayout-fQytypS5.js +0 -1
- package/dist/web/assets/Platform-DDGYwfzl.js +0 -1
- package/dist/web/assets/QBtn-DGiC5uLo.js +0 -1
- package/dist/web/assets/QTooltip-CPN6UvuX.js +0 -1
- package/dist/web/assets/ReviewDetailPage-CL6A5zjH.css +0 -1
- package/dist/web/assets/ReviewDetailPage-aMMuYtax.js +0 -1
- package/dist/web/assets/ReviewsPage-B1CTHU13.js +0 -1
- package/dist/web/assets/StatusSwitcher-Bj-XCwSr.js +0 -3
- package/dist/web/assets/StatusSwitcher-BydQq1LI.css +0 -1
- package/dist/web/assets/app-info-store-Dw8pPU-w.js +0 -1
- package/dist/web/assets/client-De34x_P_.js +0 -1
- package/dist/web/assets/engine-oniguruma-Bon2Icja.js +0 -1
- package/dist/web/assets/event-D0kaqRwq.js +0 -1
- package/dist/web/assets/format-Bb6ahGqi.js +0 -1
- package/dist/web/assets/i18n-Dw0eMaZf.js +0 -1
- package/dist/web/assets/index-i1Dlwasy.js +0 -2
- package/dist/web/assets/init-app-CPTVCTFc.js +0 -1
- package/dist/web/assets/pinia-ClnoFqXt.js +0 -1
- package/dist/web/assets/pinia-jMX0pzvu.js +0 -1
- package/dist/web/assets/runtime-core.esm-bundler-Db5Q9Gsb.js +0 -1
- package/dist/web/assets/theme-CgDsrcvS.js +0 -1
- package/dist/web/assets/use-app-theme-D0Pl-VfI.js +0 -1
- package/dist/web/assets/use-server-events-pJWjsMIC.js +0 -1
package/dist/web/index.html
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
<!doctype html><html><head><title>GitHuman</title><meta charset=utf-8><meta name=description content="Review AI agent code changes before commit — Vue edition"><meta name=format-detection content="telephone=no"><meta name=msapplication-tap-highlight content=no><meta name=viewport content="width=device-width,initial-scale=1"><meta http-equiv=Content-Security-Policy content="default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline';"><link rel=icon type=image/png sizes=128x128 href=/icons/favicon-128x128.png><link rel=icon type=image/png sizes=96x96 href=/icons/favicon-96x96.png><link rel=icon type=image/png sizes=32x32 href=/icons/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/icons/favicon-16x16.png><link rel=icon type=image/ico href=/favicon.ico> <script type="module" crossorigin src="/assets/index-
|
|
2
|
-
<link rel="modulepreload" crossorigin href="/assets/runtime-core.esm-bundler-
|
|
3
|
-
<link rel="modulepreload" crossorigin href="/assets/event-
|
|
4
|
-
<link rel="modulepreload" crossorigin href="/assets/
|
|
5
|
-
<link rel="modulepreload" crossorigin href="/assets/
|
|
6
|
-
<link rel="
|
|
1
|
+
<!doctype html><html><head><title>GitHuman</title><meta charset=utf-8><meta name=description content="Review AI agent code changes before commit — Vue edition"><meta name=format-detection content="telephone=no"><meta name=msapplication-tap-highlight content=no><meta name=viewport content="width=device-width,initial-scale=1"><meta http-equiv=Content-Security-Policy content="default-src 'self'; script-src 'self' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data:;"><link rel=icon type=image/png sizes=128x128 href=/icons/favicon-128x128.png><link rel=icon type=image/png sizes=96x96 href=/icons/favicon-96x96.png><link rel=icon type=image/png sizes=32x32 href=/icons/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/icons/favicon-16x16.png><link rel=icon type=image/ico href=/favicon.ico> <script type="module" crossorigin src="/assets/index-C_B6Z2lc.js"></script>
|
|
2
|
+
<link rel="modulepreload" crossorigin href="/assets/runtime-core.esm-bundler-Carm8LUR.js">
|
|
3
|
+
<link rel="modulepreload" crossorigin href="/assets/event-rR76ioXz.js">
|
|
4
|
+
<link rel="modulepreload" crossorigin href="/assets/create-B9ZqyTxV.js">
|
|
5
|
+
<link rel="modulepreload" crossorigin href="/assets/QBtn-E32fUOKx.js">
|
|
6
|
+
<link rel="modulepreload" crossorigin href="/assets/is-ChHvR1Z-.js">
|
|
7
|
+
<link rel="modulepreload" crossorigin href="/assets/debounce-CDIE7CV6.js">
|
|
8
|
+
<link rel="stylesheet" crossorigin href="/assets/index-C6ArNnKs.css">
|
|
7
9
|
</head><body><div id=q-app></div></body></html>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tequila99/githuman",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Review AI agent code changes before commit — Vue edition",
|
|
5
5
|
"homepage": "https://github.com/tequila99/githuman#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"build:server": "tsc -p tsconfig.build.json && chmod +x dist/cli/index.js",
|
|
31
31
|
"build:web": "quasar build",
|
|
32
32
|
"start": "node dist/cli/index.js serve",
|
|
33
|
-
"test": "pnpm run test:server && pnpm run test:cli && pnpm run test:web && pnpm run test:lint-rules",
|
|
33
|
+
"test": "pnpm run test:server && pnpm run test:cli && pnpm run test:shared && pnpm run test:web && pnpm run test:lint-rules",
|
|
34
34
|
"test:server": "node --test 'tests/server/**/*.test.ts'",
|
|
35
35
|
"test:cli": "node --test 'tests/cli/**/*.test.ts'",
|
|
36
36
|
"test:web": "node --import ./tests/web/register-web-alias-loader.mjs --test 'tests/web/**/*.test.ts'",
|
|
@@ -42,10 +42,13 @@
|
|
|
42
42
|
"lint": "oxfmt && oxlint --fix && oxfmt",
|
|
43
43
|
"lint:check": "oxfmt --check && oxlint",
|
|
44
44
|
"postinstall": "node -e \"require('node:fs').existsSync('quasar.config.ts')&&require('node:child_process').execSync('quasar prepare --silent',{stdio:'inherit'})\"",
|
|
45
|
-
"prepublishOnly": "pnpm run build && pnpm run typecheck && pnpm test"
|
|
45
|
+
"prepublishOnly": "pnpm run build && pnpm run typecheck && pnpm test",
|
|
46
|
+
"test:shared": "node --test 'tests/shared/**/*.test.ts'"
|
|
46
47
|
},
|
|
47
48
|
"dependencies": {
|
|
49
|
+
"@agentclientprotocol/sdk": "^1.5.1",
|
|
48
50
|
"@fastify/cors": "^10.0.0",
|
|
51
|
+
"@fastify/error": "^4.2.0",
|
|
49
52
|
"@fastify/one-line-logger": "^2.0.2",
|
|
50
53
|
"@fastify/sse": "^0.4.0",
|
|
51
54
|
"@fastify/static": "^8.0.0",
|
|
@@ -61,15 +64,21 @@
|
|
|
61
64
|
},
|
|
62
65
|
"devDependencies": {
|
|
63
66
|
"@fontsource/fira-code": "^5.3.0",
|
|
67
|
+
"@fontsource/golos-text": "^5.3.0",
|
|
64
68
|
"@fontsource/jetbrains-mono": "^5.3.0",
|
|
65
69
|
"@fontsource/syne": "^5.3.0",
|
|
66
70
|
"@intlify/unplugin-vue-i18n": "^11.0.0",
|
|
71
|
+
"@mdi/js": "^7.4.47",
|
|
67
72
|
"@playwright/test": "^1.57.0",
|
|
68
73
|
"@quasar/app-vite": "^3.8.1",
|
|
69
74
|
"@quasar/extras": "^2.0.4",
|
|
70
75
|
"@types/diff": "^5.2.0",
|
|
76
|
+
"@types/markdown-it": "^14.2.0",
|
|
71
77
|
"@types/node": "^22.19.11",
|
|
72
78
|
"autoprefixer": "^10.4.27",
|
|
79
|
+
"dompurify": "^3.4.16",
|
|
80
|
+
"markdown-it": "^15.0.2",
|
|
81
|
+
"mermaid": "^12.0.0",
|
|
73
82
|
"oxfmt": "^0.x",
|
|
74
83
|
"oxlint": "~1.82.0",
|
|
75
84
|
"oxlint-tsgolint": "^7.0.2001",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{E as e,F as t,H as n,M as r,O as i,Q as a,S as o,U as s,W as c,b as l,et as u,g as ee,h as d,it as f,l as p,s as m,v as h,w as g}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{D as _,P as te,S as v,f as ne,g as y,j as b,m as x,t as S,w as C,y as w}from"./QBtn-DGiC5uLo.js";import{d as T,f as E,i as D,u as re}from"./event-D0kaqRwq.js";import{B as ie,D as ae,E as oe,G as O,H as k,I as A,J as j,K as M,L as N,R as se,S as ce,T as P,U as F,V as I,W as le,X as ue,Y as de,Z as fe,_ as pe,ot as L,q as me,v as R,w as he,x as z,z as ge}from"./index-i1Dlwasy.js";import{n as _e}from"./vue-i18n.runtime-CxBM6QPV.js";import{n as ve}from"./pinia-jMX0pzvu.js";import{r as B}from"./client-De34x_P_.js";import{_ as ye,c as be,d as xe,f as Se,g as V,l as Ce,r as we,s as Te,t as H,u as U}from"./format-Bb6ahGqi.js";function W(e){if(e.length<2||e[0]!==`"`||e[e.length-1]!==`"`)return e;let t=e.slice(1,-1),n=[];for(let e=0;e<t.length;e++){let r=t[e];r===`\\`&&/^[0-7]{3}$/.test(t.slice(e+1,e+4))?(n.push(parseInt(t.slice(e+1,e+4),8)),e+=3):r===`\\`&&t[e+1]===`"`?(n.push(34),e+=1):r===`\\`&&t[e+1]===`\\`?(n.push(92),e+=1):n.push((r??``).charCodeAt(0))}return new TextDecoder(`utf-8`).decode(new Uint8Array(n))}function G(e){let t=null,n=null;function r(){let r=e().finally(()=>{t===r&&!n&&(t=null)});return t=r,r}return()=>t?(n??=t.catch(()=>{}).then(()=>(n=null,r())),n):r()}function Ee(e){return{...e,oldPath:W(e.oldPath),newPath:W(e.newPath)}}function De(e,t){let n=new Map(e.map(e=>[e.newPath||e.oldPath,e]));return t.map(e=>{let t=n.get(e.newPath||e.oldPath);return t&&JSON.stringify(t)===JSON.stringify(e)?t:e})}var Oe=ve(`diff`,()=>{let e=a([]),t=a([]),n=a(!1),r=a(!1),i=a(null),o=m(()=>n.value&&!r.value),s=m(()=>[...e.value,...t.value].map(e=>e.newPath||e.oldPath)),c=G(l);async function l(){n.value=!0;try{let[n,r]=await Promise.all([B(`/api/diff/staged`),B(`/api/diff/unstaged`)]);e.value=De(e.value,n.map(Ee)),t.value=De(t.value,r.map(Ee)),i.value=null}catch(n){r.value||(e.value=[],t.value=[]),i.value=n instanceof Error?n.message:String(n)}finally{n.value=!1,r.value=!0}}return{stagedFiles:e,unstagedFiles:t,loading:n,initialLoading:o,error:i,changedPaths:s,fetchDiff:c}}),ke=T({props:[`store`,`barStyle`,`verticalBarStyle`,`horizontalBarStyle`],setup(e){return()=>[h(`div`,{class:e.store.scroll.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":`true`,onMousedown:e.store.onVerticalMousedown}),h(`div`,{class:e.store.scroll.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":`true`,onMousedown:e.store.onHorizontalMousedown}),c(h(`div`,{ref:e.store.scroll.vertical.ref,class:e.store.scroll.vertical.thumbClass.value,style:e.store.scroll.vertical.style.value,"aria-hidden":`true`}),e.store.thumbVertDir),c(h(`div`,{ref:e.store.scroll.horizontal.ref,class:e.store.scroll.horizontal.thumbClass.value,style:e.store.scroll.horizontal.style.value,"aria-hidden":`true`}),e.store.thumbHorizDir)]}}),Ae=[`vertical`,`horizontal`],K={vertical:{offset:`offsetY`,scroll:`scrollTop`,dir:`down`,dist:`y`},horizontal:{offset:`offsetX`,scroll:`scrollLeft`,dir:`right`,dist:`x`}},q={prevent:!0,mouse:!0,mouseAllDir:!0},je=e=>e>=250?50:Math.ceil(e/5),J=(e,t)=>t?-e:e;function Me(e,t){return Ae.includes(e)?!0:(console.error(`[QScrollArea]: wrong first param of ${t} (vertical/horizontal)`),!1)}var Ne=T({name:`QScrollArea`,props:{...R,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],verticalOffset:{type:Array,default:()=>[0,0]},horizontalOffset:{type:Array,default:()=>[0,0]},contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(t,{slots:r,emit:o}){let s=a(!1),c=a(!1),l=a(!1),d={vertical:a(0),horizontal:a(0)},f={vertical:{ref:u(null),position:a(0),size:a(0)},horizontal:{ref:u(null),position:a(0),size:a(0)}},{proxy:p}=ee(),_=v(),te=pe(t,_),y=null,b,x=u(null),S=m(()=>`q-scrollarea`+(te()?` q-scrollarea--dark`:``));Object.assign(d,{verticalInner:m(()=>d.vertical.value-t.verticalOffset[0]-t.verticalOffset[1]),horizontalInner:m(()=>d.horizontal.value-t.horizontalOffset[0]-t.horizontalOffset[1])}),f.vertical.percentage=m(()=>{let e=f.vertical.size.value-d.vertical.value;if(e<=0)return 0;let t=H(f.vertical.position.value/e,0,1);return Math.round(t*1e4)/1e4}),f.vertical.thumbHidden=m(()=>!(t.visible===null?l.value:t.visible)&&!s.value&&!c.value||f.vertical.size.value<=d.vertical.value+1),f.vertical.thumbStart=m(()=>t.verticalOffset[0]+f.vertical.percentage.value*(d.verticalInner.value-f.vertical.thumbSize.value)),f.vertical.thumbSize=m(()=>Math.round(H(d.verticalInner.value*d.verticalInner.value/f.vertical.size.value,je(d.verticalInner.value),d.verticalInner.value))),f.vertical.style=m(()=>({...t.thumbStyle,...t.verticalThumbStyle,top:`${f.vertical.thumbStart.value}px`,height:`${f.vertical.thumbSize.value}px`,[_.lang.rtl?`left`:`right`]:`${t.horizontalOffset[+!_.lang.rtl]}px`})),f.vertical.thumbClass=m(()=>`q-scrollarea__thumb q-scrollarea__thumb--v absolute-right`+(f.vertical.thumbHidden.value?` q-scrollarea__thumb--invisible`:``)),f.vertical.barClass=m(()=>`q-scrollarea__bar q-scrollarea__bar--v absolute-right`+(f.vertical.thumbHidden.value?` q-scrollarea__bar--invisible`:``)),f.horizontal.percentage=m(()=>{let e=f.horizontal.size.value-d.horizontal.value;if(e<=0)return 0;let t=H(J(f.horizontal.position.value,_.lang.rtl)/e,0,1);return Math.round(t*1e4)/1e4}),f.horizontal.thumbHidden=m(()=>!(t.visible===null?l.value:t.visible)&&!s.value&&!c.value||f.horizontal.size.value<=d.horizontal.value+1),f.horizontal.thumbStart=m(()=>t.horizontalOffset[+!!_.lang.rtl]+f.horizontal.percentage.value*(d.horizontalInner.value-f.horizontal.thumbSize.value)),f.horizontal.thumbSize=m(()=>Math.round(H(d.horizontalInner.value*d.horizontalInner.value/f.horizontal.size.value,je(d.horizontalInner.value),d.horizontalInner.value))),f.horizontal.style=m(()=>({...t.thumbStyle,...t.horizontalThumbStyle,[_.lang.rtl?`right`:`left`]:`${f.horizontal.thumbStart.value}px`,width:`${f.horizontal.thumbSize.value}px`,bottom:`${t.verticalOffset[1]}px`})),f.horizontal.thumbClass=m(()=>`q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom`+(f.horizontal.thumbHidden.value?` q-scrollarea__thumb--invisible`:``)),f.horizontal.barClass=m(()=>`q-scrollarea__bar q-scrollarea__bar--h absolute-bottom`+(f.horizontal.thumbHidden.value?` q-scrollarea__bar--invisible`:``));let C=m(()=>t.tabindex===void 0?f.vertical.size.value>d.vertical.value+1||f.horizontal.size.value>d.horizontal.value+1?0:void 0:t.tabindex),w=m(()=>f.vertical.thumbHidden.value&&f.horizontal.thumbHidden.value?t.contentStyle:t.contentActiveStyle);function T(){return{verticalPosition:f.vertical.position.value,verticalPercentage:f.vertical.percentage.value,verticalSize:f.vertical.size.value,verticalContainerSize:d.vertical.value,verticalContainerInnerSize:d.verticalInner.value,horizontalPosition:f.horizontal.position.value,horizontalPercentage:f.horizontal.percentage.value,horizontalSize:f.horizontal.size.value,horizontalContainerSize:d.horizontal.value,horizontalContainerInnerSize:d.horizontalInner.value}}let E=L(()=>{let e=T();e.ref=p,o(`scroll`,e)},0);function D(e,t,n){Me(e,`setScrollPosition`)&&(e===`vertical`?N:A)(x.value,t,n)}function re({height:e,width:t}){let n=!1;d.vertical.value!==e&&(d.vertical.value=e,n=!0),d.horizontal.value!==t&&(d.horizontal.value=t,n=!0),n&&k()}function ie({position:e}){let t=!1;f.vertical.position.value!==e.top&&(f.vertical.position.value=e.top,t=!0),f.horizontal.position.value!==e.left&&(f.horizontal.position.value=e.left,t=!0),t&&k()}function ae({height:e,width:t}){f.horizontal.size.value!==t&&(f.horizontal.size.value=t,k()),f.vertical.size.value!==e&&(f.vertical.size.value=e,k())}function oe(e,t){let n=f[t];if(e.isFirst){if(n.thumbHidden.value)return;b=t===`horizontal`?J(n.position.value,_.lang.rtl):n.position.value,c.value=!0}else if(!c.value)return;e.isFinal&&(c.value=!1);let r=K[t],i=(n.size.value-d[t].value)/(d[t+`Inner`].value-n.thumbSize.value),a=e.distance[r.dist],o=(e.direction===r.dir?1:-1)*(t===`horizontal`&&_.lang.rtl?-1:1),s=b+o*a*i;j(t===`horizontal`?J(s,_.lang.rtl):s,t)}function O(e,n){let r=f[n];if(!r.thumbHidden.value){let i=n===`horizontal`&&_.lang.rtl,a=n===`vertical`?t.verticalOffset[0]:t.horizontalOffset[+!!i],o=(i?d.horizontal.value-e.offsetX:e[K[n].offset])-a,s=r.thumbStart.value-a;if(o<s||o>s+r.thumbSize.value){let e=o-r.thumbSize.value/2,t=H(e/(d[n+`Inner`].value-r.thumbSize.value),0,1);j(i?J(t*Math.max(0,r.size.value-d[n].value),_.lang.rtl):t*Math.max(0,r.size.value-d[n].value),n)}r.ref.value!==null&&r.ref.value.dispatchEvent(new MouseEvent(e.type,e))}}function k(){s.value=!0,y!==null&&clearTimeout(y),y=setTimeout(()=>{y=null,s.value=!1},t.delay),t.onScroll!==void 0&&E()}function j(e,t){x.value[K[t].scroll]=e}let M=null;function se(){M!==null&&clearTimeout(M),M=setTimeout(()=>{M=null,l.value=!0},_.platform.is.ios?50:0)}function ce(){M!==null&&(clearTimeout(M),M=null),l.value=!1}let P=null;n(()=>_.lang.rtl,(e,t)=>{x.value!==null&&A(x.value,J(J(f.horizontal.position.value,t),e))}),i(()=>{P={top:f.vertical.position.value,left:f.horizontal.position.value}}),g(()=>{if(P===null)return;let e=x.value;e!==null&&(A(e,P.left),N(e,P.top))}),e(E.cancel),Object.assign(p,{getScrollTarget:()=>x.value,getScroll:T,getScrollPosition:()=>({top:f.vertical.position.value,left:f.horizontal.position.value}),getScrollPercentage:()=>({top:f.vertical.percentage.value,left:f.horizontal.percentage.value}),setScrollPosition:D,setScrollPercentage(e,t,n){if(!Me(e,`setScrollPercentage`))return;let r=t*(f[e].size.value-d[e].value);D(e,e===`horizontal`?J(r,_.lang.rtl):r,n)}});let F={scroll:f,thumbVertDir:[[we,e=>{oe(e,`vertical`)},void 0,{vertical:!0,...q}]],thumbHorizDir:[[we,e=>{oe(e,`horizontal`)},void 0,{horizontal:!0,...q}]],onVerticalMousedown(e){O(e,`vertical`)},onHorizontalMousedown(e){O(e,`horizontal`)}};return()=>h(`div`,{class:S.value,onMouseenter:se,onMouseleave:ce},[h(`div`,{ref:x,class:`q-scrollarea__container scroll relative-position fit hide-scrollbar`,tabindex:C.value},[h(`div`,{class:`q-scrollarea__content absolute`,style:w.value},ne(r.default,[h(V,{debounce:0,onResize:ae})])),h(ye,{axis:`both`,onScroll:ie})]),h(V,{debounce:0,onResize:re}),h(ke,{store:F,barStyle:t.barStyle,verticalBarStyle:t.verticalBarStyle,horizontalBarStyle:t.horizontalBarStyle})])}}),Pe=d({__name:`CancelButton`,setup(e){let{t}=_e();return(e,n)=>(r(),p(S,o({padding:`2px 8px`},e.$attrs,{dense:``,flat:``,color:`warning`,label:f(t)(`reviews.comments.cancel`)}),null,16,[`label`]))}}),Fe=d({__name:`CreateButton`,setup(e){let{t}=_e();return(e,n)=>(r(),p(S,o({padding:`2px 8px`,label:f(t)(`reviews.create.submit`)},e.$attrs,{unelevated:``,dense:``,color:`accent`}),null,16,[`label`]))}}),Ie={hover:Boolean,hoverDelay:{type:Number,default:0},hoverHideDelay:{type:Number,default:150}};function Le({props:e,canShow:t,show:n,canHide:r,hide:i}){let{removeTimeout:a,registerTimeout:o}=fe();function s(r){e.hover===!0&&r.pointerType!==`touch`&&(a(),t(r)&&(e.hoverDelay>0?o(()=>{n(r)},e.hoverDelay):n(r)))}function c(t){a(),r(t)&&o(()=>{i(t)},e.hoverHideDelay)}function l(t){e.hover===!0&&t.pointerType!==`touch`&&c(t)}function u(e){e.pointerType!==`touch`&&a()}return{clearHoverTimer:a,hoverShow:s,hoverHide:l,scheduleHoverHide:c,onHoverContentEnter:u}}var Y=null,{notPassiveCapture:X,passiveCapture:Re}=D,Z=[];function Q(e){Y!==null&&(clearTimeout(Y),Y=null);let t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains(`no-pointer-events`))return;let n=null,r=!1;for(let e=F.length-1;e>=0;e--){let t=F[e].$,i=t.type.name;if(i!==`QTooltip`){if(i===`QDialog`){if(t.props.seamless!==!0){if(r===!1)return;n=new Set(F.slice(e+1).map(e=>e.contentEl));break}continue}r=!0}}for(let r=Z.length-1;r>=0;r--){let i=Z[r];if(n!==null&&!n.has(i.innerRef.value))return;if((i.anchorEl.value===null||!i.anchorEl.value.contains(t)&&!z(i.anchorEl.value,t))&&(t===document.body||i.innerRef.value!==null&&!i.innerRef.value.contains(t)&&!z(i.innerRef.value,t)))e.qClickOutside=!0,i.onClickOutside(e);else return}}function ze(e){e.pointerType!==`touch`&&(Y!==null&&clearTimeout(Y),Y=setTimeout(()=>{Y=null,Q(e)},0))}function Be(e){Z.push(e),Z.length===1&&(document.addEventListener(`pointerdown`,ze,Re),document.addEventListener(`mousedown`,Q,X),document.addEventListener(`touchstart`,Q,X))}function Ve(e){let t=Z.indexOf(e);t!==-1&&(Z.splice(t,1),Z.length===0&&(Y!==null&&(clearTimeout(Y),Y=null),document.removeEventListener(`pointerdown`,ze,Re),document.removeEventListener(`mousedown`,Q,X),document.removeEventListener(`touchstart`,Q,X)))}var He=`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"])`,Ue=T({name:`QMenu`,inheritAttrs:!1,props:{...Se,...j,...R,...O,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:U},self:{type:String,validator:U},offset:{type:Array,validator:Ce},touchPosition:Boolean,...Ie,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...me,`click`,`escapeKey`],setup(t,{slots:r,emit:i,attrs:o}){let s=null,c,l=!1,d=ee(),{proxy:f}=d,p=v(),g=u(null),_=a(!1),ne=m(()=>!t.persistent&&!t.noRouteDismiss),b=pe(t,p),{registerTick:S,removeTick:C}=de(),{registerTransitionEnd:T}=ue(t),{transitionProps:E,transitionStyle:D}=le(t),{anchorEl:O,canShow:A,anchorEvents:j}=xe({showing:_,getPopupRole:()=>o.role}),{show:N,hide:F}=M({showing:_,canShow:A,canHide(e){return l&&!_e.value?e?.type!==`click`:!0},handleShow:Ee,handleHide:De,handleRouteChange:Oe,hideOnRouteChange:ne,processOnMount:!0}),{clearHoverTimer:I,hoverShow:fe,scheduleHoverHide:L,onHoverContentEnter:me}=Le({props:t,canShow:()=>!_.value,show:N,canHide:e=>_.value&&!W(e.relatedTarget),hide:F});Object.assign(j,{hoverShow:fe,hoverHide:G});let{showPortal:R,hidePortal:z,portalIsAccessible:_e,renderPortal:ve}=se(d,g,J,`menu`),B={anchorEl:O,innerRef:g,onClickOutside(e){if(!t.persistent&&_.value)return F(e),(e.type===`touchstart`||e.target.classList.contains(`q-dialog__backdrop`))&&re(e),!0}},ye=m(()=>be(t.anchor||(t.cover?`center middle`:`bottom start`),p.lang.rtl)),Se=m(()=>t.cover?ye.value:be(t.self||`top start`,p.lang.rtl)),V=Te({props:t,$q:p,anchorEl:O,innerRef:g,showing:_,anchorOrigin:ye,selfOrigin:Se}),Ce=m(()=>`q-menu scroll`+(V.viaCssAnchor?``:` q-position-engine`)+(t.square?` q-menu--square`:``)+(b()?` q-menu--dark q-dark`:``)),we=m(()=>t.autoClose?{onClick:Ae}:{}),H=m(()=>_.value&&!t.persistent);n(H,e=>{e?(oe(q),Be(B)):(ae(q),Ve(B))});function U(){ge(()=>{let e=g.value;e&&e.contains!==void 0&&!e.contains(document.activeElement)&&(e=e.querySelector(`[autofocus][tabindex], [data-autofocus][tabindex]`)||e.querySelector(`[autofocus] [tabindex], [data-autofocus] [tabindex]`)||e.querySelector(`[autofocus], [data-autofocus]`)||e,e.focus({preventScroll:!0}))})}function W(e){if(e==null)return!1;if(O.value!==null&&O.value.contains(e)||g.value!==null&&g.value.contains(e))return!0;let t=k(e);for(;t!=null;){if(t===f)return!0;t=w(t)}return!1}function G(e){if(e.pointerType===`touch`)return;L(e);let t=w(f);for(;t!=null;)t.$options.name===`QMenu`&&t.$props.hover===!0&&t.__qHoverHide?.(e),t=w(t)}function Ee(e){l=t.hover&&e?.type===`pointerenter`,I(),s=t.noRefocus||l?null:document.activeElement,he(K),R(!1,l),V.handleShow(!l&&(t.touchPosition||t.contextMenu)?e:void 0),!t.noFocus&&!l&&document.activeElement.blur(),S(()=>{V.handleTick(),!t.noFocus&&!l&&U()}),T(()=>{p.platform.is.ios&&(c=t.autoClose,g.value.click()),V.viaCssAnchor||V.track(),R(!0),i(`show`,e)})}function De(e){if(l=!1,C(),z(),ke(!0),s!==null&&(e===void 0||!e.qClickOutside)){let t=(e?.type.indexOf(`key`)===0?s.closest(`[tabindex]:not([tabindex^="-"])`):void 0)||s;s=null,ge(()=>{t.isConnected&&t.focus({preventScroll:!0})})}T(()=>{z(!0),V.releaseAnchor(!1),i(`hide`,e)})}function Oe(){s=null}function ke(e){I(),V.releaseAnchor(e),(e||_.value)&&(P(K),Ve(B),ae(q)),e||(s=null)}function Ae(e){c?c=!1:(ie(f,e),i(`click`,e))}function K(e){H.value&&!t.noFocus&&!l&&!y(g.value,e.target)&&!ce(g.value,e.target)&&U()}function q(e){t.noEscDismiss||(i(`escapeKey`),F(e))}function je(e){if(e.keyCode!==9||e.defaultPrevented||!H.value||g.value===null)return;let t=g.value,n=t.querySelectorAll(He),r=n.length===0?null:n[e.shiftKey?0:n.length-1];(r===null||document.activeElement===r||e.shiftKey&&document.activeElement===t)&&(P(K),s!==null&&s.isConnected&&(s.closest(`[tabindex]:not([tabindex^="-"])`)||s).focus({preventScroll:!0}),s=null,F(e))}function J(){return h(te,E(),()=>_.value?h(`div`,{...o,ref:g,tabindex:-1,onKeydown:[].concat(o.onKeydown||[],je),...t.hover?{onPointerenter:[].concat(o.onPointerenter||[],me),onPointerleave:[].concat(o.onPointerleave||[],G)}:{},class:[Ce.value,o.class],style:[o.style,D(),V.positionStyle.value],...we.value},x(r.default)):null)}return e(()=>{ke(!1)}),Object.assign(f,{focus:U,updatePosition:V.updatePosition}),f.__qHoverHide=L,ve}});function We(e){return e===!1?0:e===!0||e===void 0?1:Number.parseInt(e,10)||0}function $(e){let t=e.currentTarget,n=t.__qclosepopup;n!==0&&setTimeout(()=>{let r=k(t);r!==void 0&&I(r,e,n)},0)}function Ge(e){b(e,13)&&$(e)}var Ke=E({name:`close-popup`,beforeMount(e,{value:t}){e.__qclosepopup=We(t),e.addEventListener(`click`,$),e.addEventListener(`keyup`,Ge)},updated(e,{value:t,oldValue:n}){t!==n&&e.__qclosepopup!==void 0&&(e.__qclosepopup=We(t))},beforeUnmount(e){e.__qclosepopup!==void 0&&(e.removeEventListener(`click`,$),e.removeEventListener(`keyup`,Ge),e.__qclosepopup=void 0)}}),qe=T({name:`QPage`,props:{padding:Boolean,styleFn:Function},setup(e,{slots:t}){let n=v(),r=l(_,C);if(r===C)return console.error(`QPage needs to be a deep child of QLayout`),C;if(l(`_q_pc_`,C)===C)return console.error(`QPage needs to be child of QPageContainer`),C;let i=m(()=>{let t=(r.header.space?r.header.size:0)+(r.footer.space?r.footer.size:0);if(typeof e.styleFn==`function`){let i=r.isContainer.value?r.containerHeight.value:n.screen.height;return e.styleFn(t,i)}return{minHeight:r.isContainer.value?r.containerHeight.value-t+`px`:n.screen.height===0?t===0?`100vh`:`calc(100vh - ${t}px)`:n.screen.height-t+`px`}}),a=m(()=>`q-page${e.padding?` q-layout-padding`:``}`);return()=>h(`main`,{class:a.value,style:i.value},x(t.default))}}),Je=d({__name:`AppPage`,setup(e){function n(e,t){return{height:`${t-e}px`}}return(e,i)=>(r(),p(qe,{"style-fn":n},{default:s(()=>[t(e.$slots,`default`)]),_:3}))}});export{Ie as a,Ne as c,W as d,Le as i,Oe as l,Ke as n,Fe as o,Ue as r,Pe as s,Je as t,G as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.review-create-dialog[data-v-c9b736c2]{width:420px;max-width:90vw}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{H as e,M as t,N as n,Q as r,S as i,U as a,W as o,b as s,bt as c,c as l,d as u,et as d,g as f,h as p,it as m,l as h,m as g,r as _,s as v,v as y,x as b,z as x}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{C as S,D as C,R as w,S as T,T as ee,c as E,f as te,m as D,t as O,w as k}from"./QBtn-DGiC5uLo.js";import{d as A}from"./event-D0kaqRwq.js";import{J as j,K as ne,d as re,g as M,h as N,m as P,n as F,q as I,y as L}from"./index-i1Dlwasy.js";import{n as ie}from"./vue-i18n.runtime-CxBM6QPV.js";import{n as R,r as z}from"./pinia-jMX0pzvu.js";import{a as B,i as V,n as H,r as U,t as W}from"./client-De34x_P_.js";import{r as G}from"./format-Bb6ahGqi.js";import{a as K,i as q,l as J,n as Y,o as ae,s as oe}from"./AppPage-B9tWPrzn.js";var X=R(`active-review`,()=>{let e=r(null),t=r([]),n=r(!1),i=v(()=>{let e=new Map;for(let n of t.value){let t=e.get(n.filePath);t?t.push(n):e.set(n.filePath,[n])}return e});async function a(){n.value=!0;try{let n=(await U(`/api/reviews`)).filter(e=>e.status===`in_progress`).sort((e,t)=>t.createdAt.localeCompare(e.createdAt));e.value=n[0]??null,t.value=e.value?await U(`/api/reviews/${e.value.id}/comments`):[]}finally{n.value=!1}}function o(n){e.value=n,t.value=[]}async function s(t){e.value&&(await V(`/api/reviews/${e.value.id}`,{status:t}),await a())}async function c(n){if(!e.value)throw Error(`No active review`);let r=await B(`/api/reviews/${e.value.id}/comments`,n);return t.value=[...t.value,r],r}async function l(e,n){let r=await V(`/api/comments/${e}`,{content:n});t.value=t.value.map(t=>t.id===e?r:t)}async function u(e){await H(`/api/comments/${e}`),t.value=t.value.filter(t=>t.id!==e)}async function d(e){let n=await V(`/api/comments/${e}/resolve`);t.value=t.value.map(t=>t.id===e?n:t)}async function f(e){let n=await V(`/api/comments/${e}/unresolve`);t.value=t.value.map(t=>t.id===e?n:t)}return{activeReview:e,comments:t,loading:n,commentsByFile:i,refresh:a,setActiveReview:o,setStatus:s,createComment:c,editComment:l,deleteComment:u,resolveComment:d,unresolveComment:f}}),se=p({__name:`SearchInput`,props:{modelValue:{},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let n=x(e,`modelValue`);return(e,r)=>(t(),h(F,i({modelValue:n.value,"onUpdate:modelValue":r[0]||=e=>n.value=e},e.$attrs,{dense:``,outlined:``,clearable:``}),{prepend:a(()=>[g(E,{name:`search`,size:`xs`})]),_:1},16,[`modelValue`]))}}),ce=A({name:`QItemLabel`,props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){let n=v(()=>Number.parseInt(e.lines,10)),r=v(()=>`q-item__label`+(e.overline?` q-item__label--overline text-overline`:``)+(e.caption?` q-item__label--caption text-caption`:``)+(e.header?` q-item__label--header`:``)+(n.value===1?` ellipsis`:``)),i=v(()=>e.lines!==void 0&&n.value>1?{overflow:`hidden`,display:`-webkit-box`,"-webkit-box-orient":`vertical`,"-webkit-line-clamp":n.value}:null);return()=>y(`div`,{style:i.value,class:r.value},D(t.default))}}),le=[`top`,`right`,`bottom`,`left`],Z={type:{type:String,default:`a`},outline:Boolean,push:Boolean,flat:Boolean,unelevated:Boolean,color:String,textColor:String,glossy:Boolean,square:Boolean,padding:String,label:{type:[String,Number],default:``},labelPosition:{type:String,default:`right`,validator:e=>le.includes(e)},externalLabel:Boolean,hideLabel:{type:Boolean},labelClass:[Array,String,Object],labelStyle:[Array,String,Object],disable:Boolean,tabindex:[Number,String]},ue=[`label`],de=Object.keys(Z).filter(e=>!ue.includes(e)&&O.props[e]!==void 0);function fe(e){let t={};for(let n of de)t[n]=e[n];return t}function pe(e,t){return{formClass:v(()=>`q-fab--form-${e.square?`square`:`rounded`}`),stacked:v(()=>!e.externalLabel&&[`top`,`bottom`].includes(e.labelPosition)),labelProps:v(()=>{if(e.externalLabel){let n=e.hideLabel===null?!t.value:e.hideLabel;return{action:`push`,data:{class:[e.labelClass,`q-fab__label q-tooltip--style q-fab__label--external q-fab__label--external-${e.labelPosition}`+(n?` q-fab__label--external-hidden`:``)],style:e.labelStyle}}}return{action:[`left`,`top`].includes(e.labelPosition)?`unshift`:`push`,data:{class:[e.labelClass,`q-fab__label q-fab__label--internal q-fab__label--internal-${e.labelPosition}`+(e.hideLabel?` q-fab__label--internal-hidden`:``)],style:e.labelStyle}}})}}var me=[`up`,`right`,`down`,`left`],he=[`left`,`center`,`right`],Q=180,ge=A({name:`QFab`,props:{...Z,...j,icon:String,activeIcon:String,hideIcon:Boolean,hideLabel:{...Z.hideLabel,default:null},direction:{type:String,default:`right`,validator:e=>me.includes(e)},...K,persistent:Boolean,stagger:{type:Number,default:40},verticalActionsAlign:{type:String,default:`center`,validator:e=>he.includes(e)}},emits:I,setup(t,{slots:i}){let a=d(null),o=r(t.modelValue===!0),s=re(),c=T(),{formClass:l,stacked:u,labelProps:f}=pe(t,o),p=v(()=>!t.persistent),{show:m,hide:h,toggle:g}=ne({showing:o,hideOnRouteChange:p}),_=0,{clearHoverTimer:b,hoverShow:x,hoverHide:S}=q({props:t,canShow:()=>!o.value,show:e=>{_=Date.now(),m(e)},canHide:()=>o.value,hide:h});e(o,b);function C(e){o.value&&Date.now()-_<Q||g(e)}let w=v(()=>({opened:o.value})),k=v(()=>`q-fab z-fab row inline justify-center q-fab--align-${t.verticalActionsAlign} ${l.value}`+(o.value?` q-fab--opened`:` q-fab--closed`)),A=v(()=>`q-fab__actions flex no-wrap inline q-fab__actions--${t.direction} q-fab__actions--${o.value?`opened`:`closed`}`),j=v(()=>t.hover?{onPointerenter:x,onPointerleave:S}:{}),M=v(()=>{let e={id:s.value,style:`--q-fab-stagger: ${t.stagger}ms`};return o.value||(e[`aria-hidden`]=`true`),e}),N=v(()=>`q-fab__icon-holder q-fab__icon-holder--${o.value?`opened`:`closed`}`);function P(e,n){let r=i[e],a=`q-fab__${e} absolute-full`;return r===void 0?y(E,{class:a,name:t[n]||c.iconSet.fab[n]}):y(`div`,{class:a},r(w.value))}function F(){let e=[];return t.hideIcon||e.push(y(`div`,{class:N.value},[P(`icon`,`icon`),P(`active-icon`,`activeIcon`)])),(t.label!==``||i.label!==void 0)&&e[f.value.action](y(`div`,f.value.data,i.label===void 0?[t.label]:i.label(w.value))),te(i.tooltip,e)}return n(ee,{showing:o,onChildClick(e){h(e),e?.qAvoidFocus!==!0&&a.value?.$el.focus()}}),()=>y(`div`,{class:k.value,...j.value},[y(O,{ref:a,class:l.value,...fe(t),noWrap:!0,stack:u.value,noCaps:!0,fab:!0,"aria-expanded":o.value?`true`:`false`,"aria-controls":s.value,onClick:C},F),y(`div`,{class:A.value,...M.value},D(i.default))])}}),_e={position:{type:String,default:`bottom-right`,validator:e=>[`top-right`,`top-left`,`bottom-right`,`bottom-left`,`top`,`right`,`bottom`,`left`].includes(e)},offset:{type:Array,validator:e=>e.length===2},expand:Boolean};function ve(){let{props:e}=f(),t=T(),n=s(C,k);if(n===k)return console.error(`QPageSticky needs to be child of QLayout`),k;let r=v(()=>{let t=e.position;return{top:t.includes(`top`),right:t.includes(`right`),bottom:t.includes(`bottom`),left:t.includes(`left`),vertical:t===`top`||t===`bottom`,horizontal:t===`left`||t===`right`}}),i=v(()=>n.header.offset),a=v(()=>n.right.offset),o=v(()=>n.footer.offset),c=v(()=>n.left.offset),l=v(()=>{let n=0,s=0,l=r.value,u=t.lang.rtl?-1:1;l.top&&i.value!==0?s=`${i.value}px`:l.bottom&&o.value!==0&&(s=`${-o.value}px`),l.left&&c.value!==0?n=`${u*c.value}px`:l.right&&a.value!==0&&(n=`${-u*a.value}px`);let d={transform:`translate(${n}, ${s})`};return e.offset&&(d.margin=`${e.offset[1]}px ${e.offset[0]}px`),l.vertical?(c.value!==0&&(d[t.lang.rtl?`right`:`left`]=`${c.value}px`),a.value!==0&&(d[t.lang.rtl?`left`:`right`]=`${a.value}px`)):l.horizontal&&(i.value!==0&&(d.top=`${i.value}px`),o.value!==0&&(d.bottom=`${o.value}px`)),d}),u=v(()=>`q-page-sticky row flex-center fixed-${e.position} q-page-sticky--${e.expand?`expand`:`shrink`}`);function d(t){let n=D(t.default);return y(`div`,{class:u.value,style:l.value},e.expand?n:[y(`div`,n)])}return{$layout:n,getStickyContent:d}}var ye=A({name:`QPageSticky`,props:_e,setup(e,{slots:t}){let{getStickyContent:n}=ve();return()=>n(t)}});function be(e){let t=new URLSearchParams;e.search&&t.set(`search`,e.search),e.createdFrom&&t.set(`createdFrom`,e.createdFrom),e.createdTo&&t.set(`createdTo`,e.createdTo),e.files&&e.files.length>0&&t.set(`files`,e.files.join(`,`));let n=t.toString();return n?`?${n}`:``}var $=R(`reviews`,()=>{let e=r([]),t=r(!1),n=r(null);async function i(r={}){t.value=!0,n.value=null;try{e.value=await U(`/api/reviews${be(r)}`)}catch(t){e.value=[],n.value=t instanceof Error?t.message:String(t)}finally{t.value=!1}}async function a(t){let n=await B(`/api/reviews`,t);return e.value=[n,...e.value],n}return{reviews:e,loading:t,error:n,fetchReviews:i,createReview:a}}),xe={class:`text-h6`},Se=S(p({__name:`ReviewCreateDialog`,props:{modelValue:{type:Boolean,required:!0},modelModifiers:{}},emits:b([`created`,`hide`],[`update:modelValue`]),setup(e,{emit:n}){let i=x(e,`modelValue`),s=n,{t:u}=ie(),d=$(),f=r(``),p=r(!1),_=r(null);function v(){f.value=``,p.value=!1,_.value=null}async function y(){p.value=!0,_.value=null;try{let e=f.value.trim(),t=await d.createReview(e?{name:e}:{});i.value=!1,v(),s(`created`,t)}catch(e){_.value=e instanceof W||e instanceof Error?e.message:String(e)}finally{p.value=!1}}function b(){v(),s(`hide`)}return(e,n)=>(t(),h(L,{modelValue:i.value,"onUpdate:modelValue":n[1]||=e=>i.value=e,onHide:b},{default:a(()=>[g(M,{class:`review-create-dialog`},{default:a(()=>[g(N,null,{default:a(()=>[l(`div`,xe,c(m(u)(`reviews.create.title`)),1)]),_:1}),g(N,{class:`q-gutter-y-md`},{default:a(()=>[g(F,{modelValue:f.value,"onUpdate:modelValue":n[0]||=e=>f.value=e,dense:``,outlined:``,label:m(u)(`reviews.create.nameLabel`),hint:m(u)(`reviews.create.nameHint`),error:!!_.value,"error-message":_.value??void 0,onKeyup:w(y,[`enter`])},null,8,[`modelValue`,`label`,`hint`,`error`,`error-message`])]),_:1}),g(P,{align:`right`},{default:a(()=>[o(g(oe,null,null,512),[[Y]]),g(ae,{loading:p.value,onClick:y},null,8,[`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]))}}),[[`__scopeId`,`data-v-c9b736c2`]]),Ce=p({__name:`CreateReviewFabButton`,emits:[`created`],setup(e,{emit:n}){let i=n,s=X(),c=J(),{activeReview:l}=z(s),{changedPaths:d}=z(c),f=r(!1),p=r(!1),m=r([18,18]),h=r(!1),y=v(()=>d.value.length===0||l.value!==null);function b(e){h.value=e.isFirst!==!0&&e.isFinal!==!0,m.value=[m.value[0]-(e.delta?.x??0),m.value[1]-(e.delta?.y??0)]}function x(e){s.setActiveReview(e),i(`created`,e)}return(e,n)=>(t(),u(_,null,[g(ye,{position:`bottom-right`,offset:m.value},{default:a(()=>[o(g(ge,{modelValue:p.value,"onUpdate:modelValue":n[0]||=e=>p.value=e,icon:`add`,color:`accent`,disable:y.value||h.value,onClick:n[1]||=e=>f.value=!0},null,8,[`modelValue`,`disable`]),[[G,b,void 0,{prevent:!0,mouse:!0}]])]),_:1},8,[`offset`]),g(Se,{modelValue:f.value,"onUpdate:modelValue":n[2]||=e=>f.value=e,onCreated:x,onHide:n[3]||=e=>p.value=!1},null,8,[`modelValue`])],64))}});export{X as a,se as i,$ as n,ce as r,Ce as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.file-explorer[data-v-1ce1b104]{height:100%}[data-v-1ce1b104] .file-explorer__panel{flex-direction:column;flex-shrink:0;min-width:0;height:100%;display:flex}[data-v-1ce1b104] .file-explorer__content{flex-direction:column;flex-wrap:no-wrap;display:flex}.file-tree-node__icon-section[data-v-43168dd7]{min-width:0!important;padding-right:6px!important}.file-tree-node__label[data-v-43168dd7]{width:100%;min-width:0}.file-tree-node__chevron[data-v-43168dd7]{transition:transform .15s}.file-tree-node__chevron--expanded[data-v-43168dd7]{transform:rotate(90deg)}.file-tree-node--selected[data-v-43168dd7]{font-weight:500}.file-list-item__icon-section[data-v-77d2a0e7]{min-width:0!important;padding-right:6px!important}.file-list-item__path-label[data-v-77d2a0e7]{width:100%;min-width:0}.file-list-item--selected[data-v-77d2a0e7],[data-v-77d2a0e7] .file-list-item--selected{font-weight:500}.file-list-item__actions[data-v-77d2a0e7]{gap:2px;flex-direction:row!important;padding:0 0 0 6px!important}.file-list-item__stats[data-v-77d2a0e7]{padding-right:0!important}.file-list-panel__scroll[data-v-32cc9fb2] .q-scrollarea__content{width:100%}.active-review-bar[data-v-725a73f5]{min-height:36px}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,C as t,E as n,F as r,H as i,I as a,J as o,M as s,N as c,O as l,P as u,Q as d,U as f,W as p,b as m,bt as h,c as g,d as _,et as v,g as y,h as b,it as x,k as S,l as C,m as w,p as T,r as E,s as D,u as O,v as k,vt as A,w as ee,x as j,yt as M,z as N}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{A as te,C as P,N as ne,S as F,c as I,f as re,j as ie,m as L,o as R,s as ae,t as z,w as B,z as V}from"./QBtn-DGiC5uLo.js";import{d as H,u as oe}from"./event-D0kaqRwq.js";import{Y as se,Z as ce,_ as U,d as W,f as le,it as ue,p as G,t as K,v as de}from"./index-i1Dlwasy.js";import{n as q}from"./vue-i18n.runtime-CxBM6QPV.js";import{n as fe,r as J}from"./pinia-jMX0pzvu.js";import{a as pe,r as me}from"./client-De34x_P_.js";import{n as Y}from"./use-server-events-pJWjsMIC.js";import{a as he,g as ge,h as _e,o as X,r as ve}from"./format-Bb6ahGqi.js";import{n as ye,t as Z}from"./QTooltip-CPN6UvuX.js";import{c as Q,d as be,l as xe,t as Se,u as Ce}from"./AppPage-B9tWPrzn.js";import{a as we,c as $,i as Te,l as Ee,n as De,o as Oe,r as ke,s as Ae,t as je}from"./StatusSwitcher-Bj-XCwSr.js";import{a as Me,i as Ne,r as Pe,t as Fe}from"./CreateReviewFabButton-DcXpOlBP.js";function Ie(e){return e.toSorted((e,t)=>e.type===t.type?e.name.localeCompare(t.name):e.type===`directory`?-1:1).map(e=>({...e,children:e.children?Ie(e.children):void 0}))}function Le(e,t){let n=[];for(let r of e){let e=r.split(`/`),i=n;for(let n=0;n<e.length;n++){let a=e[n];if(!a)continue;let o=n===e.length-1,s=e.slice(0,n+1).join(`/`),c=i.find(e=>e.name===a);c||(c={name:a,path:s,type:o?`file`:`directory`,isChanged:o?t.has(r):!1,children:o?void 0:[]},i.push(c)),!o&&c.children&&(i=c.children)}}return Ie(n)}function Re(e,t){if(!t.trim())return e;let n=t.toLowerCase(),r=e=>{if(e.type===`file`)return e.path.toLowerCase().includes(n)?e:null;let t=e.children?.map(r).filter(e=>e!==null);return t&&t.length>0?{...e,children:t}:e.name.toLowerCase().includes(n)?e:null};return e.map(r).filter(e=>e!==null)}function ze(){let e=d([]),t=d(!1),n=d(!1),r=d(null),i=D(()=>!n.value),a=0;async function o(i,o=[]){let s=++a;t.value=!0;try{let t=await me(`/api/git/tree/${encodeURIComponent(i)}`);if(s!==a)return;e.value=Le(t.files.map(be),new Set(o)),r.value=null}catch(e){if(s!==a)return;r.value=e instanceof Error?e.message:String(e)}finally{s===a&&(t.value=!1,n.value=!0)}}function s(){++a,e.value=[],t.value=!1,n.value=!1,r.value=null}return{tree:e,loading:t,initialLoading:i,error:r,fetchTree:o,reset:s}}function Be(e){return e.type===`file`?e.isChanged:e.children?.some(Be)??!1}var Ve=fe(`file-explorer`,()=>{let e=xe(),{tree:n,initialLoading:r,error:a,fetchTree:o,reset:s}=ze(),{lines:c,isBinary:l,loading:u,error:f,fetchContent:p,reset:m}=Ee(),h=d(`staged`),g=d(!1),_=d(``),v=d(null),y=d(new Set),b=d(new Set),x=D(()=>h.value===`staged`?e.stagedFiles:e.unstagedFiles),S=D(()=>{let e=(_.value??``).trim().toLowerCase();return e?x.value.filter(t=>$(t).toLowerCase().includes(e)):x.value}),C=D(()=>Re(n.value,_.value??``)),w=D(()=>{let e=0,t=n=>{for(let r of n)r.type===`file`?e++:r.children&&t(r.children)};return t(n.value),e});i(n,e=>{let t=new Set,n=e=>{for(let r of e)r.type===`directory`&&r.children&&(Be(r)&&t.add(r.path),n(r.children))};n(e),y.value=t},{immediate:!0}),i(h,()=>{v.value=null,b.value=new Set}),i(v,e=>{if(g.value){if(!e){m();return}p(e,`WORKTREE`)}});function T(e){let t=new Set(y.value);t.has(e)?t.delete(e):t.add(e),y.value=t}function E(e){let t=new Set(b.value);t.has(e)?t.delete(e):t.add(e),b.value=t}function O(e){v.value=e,E(e)}function k(e){v.value=e,b.value.has(e)||(b.value=new Set(b.value).add(e))}function A(){b.value=new Set(x.value.map($))}function ee(){b.value=new Set}function j(e){v.value=e,!g.value&&(b.value.has(e)||(b.value=new Set(b.value).add(e)),t(()=>{document.getElementById(`diff-file-${e}`)?.scrollIntoView({block:`nearest`})}))}let M=0,N=d(!1),te=Ce(async()=>{N.value=!0;try{await e.fetchDiff(),g.value&&(await o(`WORKTREE`,e.changedPaths),v.value&&await p(v.value,`WORKTREE`))}finally{N.value=!1}});i(g,e=>{_.value=``,v.value=null,e?te():(s(),m())});async function P(){M=Date.now(),await te()}async function ne(){Date.now()-M<400||await te()}return{source:h,browseMode:g,filter:_,selectedPath:v,expandedFolders:y,expandedFiles:b,tree:n,treeInitialLoading:r,treeError:a,refreshing:N,browseFileLines:c,browseFileIsBinary:l,browseFileLoading:u,browseFileError:f,diffFiles:x,filteredDiffFiles:S,filteredTree:C,totalTreeFiles:w,toggleFolder:T,toggleFileCard:E,handleCardToggle:O,expandFile:k,expandAllFiles:A,collapseAllFiles:ee,selectFile:j,refresh:P,refreshFromServerEvent:ne}}),He=H({name:`QSplitter`,props:{...de,modelValue:{type:Number,required:!0},reverse:Boolean,unit:{type:String,default:`%`,validator:e=>[`%`,`px`].includes(e)},limits:{type:Array,validator:e=>e.length!==2||typeof e[0]!=`number`||typeof e[1]!=`number`?!1:e[0]>=0&&e[0]<=e[1]},emitImmediately:Boolean,horizontal:Boolean,disable:Boolean,beforeClass:[Array,String,Object],afterClass:[Array,String,Object],separatorClass:[Array,String,Object],separatorStyle:[Array,String,Object],separatorAriaLabel:String},emits:[`update:modelValue`],setup(e,{slots:n,emit:r}){let a=F(),o=U(e,a),s=v(null),c={before:v(null),after:v(null)},l=W(),u=D(()=>`q-splitter no-wrap ${e.horizontal?`q-splitter--horizontal column`:`q-splitter--vertical row`} q-splitter--${e.disable?`disabled`:`workable`}`+(o()?` q-splitter--dark`:``)),d=D(()=>e.horizontal?`height`:`width`),f=D(()=>e.reverse?`after`:`before`),m=D(()=>e.limits===void 0?e.unit===`%`?[10,90]:[50,1/0]:e.limits);function h(t){return(e.unit===`%`?t:Math.round(t))+e.unit}let g=D(()=>({[f.value]:{[d.value]:h(e.modelValue)}})),_,y,b,x,S;function C(t){if(t.isFirst){let t=s.value.getBoundingClientRect()[d.value];_=e.horizontal?`up`:`left`,y=e.unit===`%`?100:t,b=Math.min(y,m.value[1],Math.max(m.value[0],e.modelValue)),x=(e.reverse?-1:1)*(e.horizontal?1:a.lang.rtl?-1:1)*(e.unit===`%`?t===0?0:100/t:1),s.value.classList.add(`q-splitter--active`);return}if(t.isFinal){S!==e.modelValue&&r(`update:modelValue`,S),s.value.classList.remove(`q-splitter--active`);return}let n=b+x*(t.direction===_?-1:1)*t.distance[e.horizontal?`y`:`x`];S=Math.min(y,m.value[1],Math.max(m.value[0],n)),c[f.value].value.style[d.value]=h(S),e.emitImmediately&&e.modelValue!==S&&r(`update:modelValue`,S)}let w=D(()=>[[ve,e.disable?void 0:C,void 0,{[e.horizontal?`vertical`:`horizontal`]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]),T=D(()=>{let t={role:`separator`,"aria-orientation":e.horizontal?`horizontal`:`vertical`,"aria-label":e.separatorAriaLabel||a.lang.label.resize};if(e.disable)t[`aria-disabled`]=`true`;else{let n=m.value;t.tabindex=0,t[`aria-controls`]=l.value,t[`aria-valuemin`]=n[0],n[1]!==1/0&&(t[`aria-valuemax`]=n[1]),t[`aria-valuenow`]=Math.round(e.modelValue*100)/100}return t}),E=null;function O(t){let{keyCode:n}=t,i=e.horizontal?[38,40]:[37,39];if(n!==13&&n!==36&&n!==35&&!i.includes(n))return;oe(t);let o=m.value,c=e.unit===`%`?100:s.value.getBoundingClientRect()[d.value],l;if(n===13)e.modelValue===o[0]?l=E===null?e.modelValue:E:(E=e.modelValue,l=o[0]);else if(n===36)l=o[0];else if(n===35)l=o[1];else{let t=(n===i[0]?-1:1)*(e.reverse?-1:1)*(e.horizontal?1:a.lang.rtl?-1:1);l=e.modelValue+t*(e.unit===`%`?1:10)}let u=Math.min(c,o[1],Math.max(o[0],l));u!==e.modelValue&&r(`update:modelValue`,u)}function A(e,t){e<t[0]?r(`update:modelValue`,t[0]):e>t[1]&&r(`update:modelValue`,t[1])}return i(()=>e.modelValue,e=>{A(e,m.value)}),i(()=>e.limits,()=>{t(()=>{A(e.modelValue,m.value)})}),()=>{let t=[k(`div`,{ref:c.before,id:f.value===`before`?l.value:void 0,class:[`q-splitter__panel q-splitter__before`+(e.reverse?` col`:``),e.beforeClass],style:g.value.before},L(n.before)),k(`div`,{class:[`q-splitter__separator`,e.separatorClass],style:e.separatorStyle,...T.value,onKeydown:e.disable?void 0:O},[p(k(`div`,{class:`q-splitter__separator-area absolute-full`},L(n.separator)),w.value)]),k(`div`,{ref:c.after,id:f.value===`after`?l.value:void 0,class:[`q-splitter__panel q-splitter__after`+(e.reverse?``:` col`),e.afterClass],style:g.value.after},L(n.after))];return k(`div`,{class:u.value,ref:s},re(n.default,t))}}}),Ue=260,We=220,Ge=600,Ke=P(b({__name:`PanelResize`,setup(e){let t=d(Ue),n=D(()=>[We,Ge]);return(e,i)=>(s(),C(He,{modelValue:t.value,"onUpdate:modelValue":i[0]||=e=>t.value=e,limits:n.value,unit:`px`,class:`file-explorer`,"before-class":`file-explorer__panel`,"after-class":`file-explorer__content`},{before:f(()=>[r(e.$slots,`panel`,{},void 0,!0)]),after:f(()=>[r(e.$slots,`content`,{},void 0,!0)]),_:3},8,[`modelValue`,`limits`]))}}),[[`__scopeId`,`data-v-1ce1b104`]]),qe=0,Je=[`click`,`keydown`],Ye={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>`t_${qe++}`},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}},Xe=[13,32];function Ze(e,t,r,i){let a=m(te,B);if(a===B)return console.error(`QTab/QRouteTab component needs to be child of QTabs`),B;let{proxy:o}=y(),s=v(null),c=v(null),l=v(null);function u(){return e.disable||e.ripple===!1?!1:{keyCodes:Xe,early:!0,...e.ripple===!0?{}:e.ripple}}function d(t){let n=a.tabProps.value;return`q-tab relative-position self-stretch flex flex-center text-center`+(t?` q-tab--active`+(n.activeClass?` `+n.activeClass:``)+(n.activeColor?` text-${n.activeColor}`:``)+(n.activeBgColor?` bg-${n.activeBgColor}`:``):` q-tab--inactive`)+(e.icon&&e.label&&!n.inlineLabel?` q-tab--full`:``)+(e.noCaps||n.noCaps?` q-tab--no-caps`:``)+(e.disable?` disabled`:` q-focusable q-hoverable cursor-pointer`)+(i===void 0?``:i.linkClass.value)}function f(){return`q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable `+(a.tabProps.value.inlineLabel?`row no-wrap q-tab__content--inline`:`column`)+(e.contentClass===void 0?``:` ${e.contentClass}`)}let h=D(()=>a.currentModel.value===e.name),g=D(()=>{if(e.disable||a.hasFocus.value)return-1;let t=a.tabStopName.value;return t===null||t===e.name?e.tabindex||0:-1});function _(t,n){if(!n&&!t?.qAvoidFocus&&s.value?.focus({preventScroll:!0}),e.disable){i?.hasRouterLink.value===!0&&oe(t);return}if(i===void 0){a.updateModel({name:e.name}),r(`click`,t);return}if(i.hasRouterLink.value){let n=(n={})=>{let r,o=n.to===void 0||ue(n.to,e.to)?a.avoidRouteWatcher=le():null;return i.navigateToRouterLink(t,{...n,returnRouterError:!0}).catch(e=>{r=e}).then(t=>{if(o===a.avoidRouteWatcher&&(a.avoidRouteWatcher=!1,r===void 0&&(t===void 0||t.message?.startsWith(`Avoided redundant navigation`)===!0)&&a.updateModel({name:e.name})),n.returnRouterError)return r===void 0?t:Promise.reject(r)})};r(`click`,t,n),t.defaultPrevented||n();return}r(`click`,t)}function b(e){r(`keydown`,e),!e.defaultPrevented&&(ie(e,[13,32])?_(e,!0):e.keyCode>=35&&e.keyCode<=40&&!e.altKey&&!e.metaKey&&!ne(e)&&a.onKbdNavigate(e.keyCode,o.$el)&&oe(e))}function x(){let n=a.tabProps.value,r=n.narrowIndicator,i=[],o=k(`div`,{ref:l,class:[`q-tab__indicator`,n.indicatorClass]});e.icon!==void 0&&i.push(k(I,{class:`q-tab__icon`,name:e.icon})),e.label!==void 0&&i.push(k(`div`,{class:`q-tab__label`},e.label)),e.alert&&i.push(e.alertIcon===void 0?k(`div`,{class:`q-tab__alert`+(e.alert===!0?``:` text-${e.alert}`)}):k(I,{class:`q-tab__alert-icon`,color:e.alert===!0?void 0:e.alert,name:e.alertIcon})),r&&i.push(o);let c=[k(`div`,{class:`q-focus-helper`,tabindex:-1,ref:s}),k(`div`,{class:f()},re(t.default,i))];return r||c.push(o),c}let C={name:D(()=>e.name),disable:D(()=>e.disable),rootRef:c,tabIndicatorRef:l,routeData:i};n(()=>{a.unregisterTab(C)}),S(()=>{a.registerTab(C)});function w(t,n){let r={ref:c,class:d(h.value),tabindex:g.value,role:`tab`,"aria-selected":h.value?`true`:`false`,"aria-disabled":e.disable?`true`:void 0,onClick:_,onKeydown:b,...n};return p(k(t,r,x()),[[R,u()]])}return{renderTab:w,$tabs:a}}var Qe=H({name:`QTab`,props:Ye,emits:Je,setup(e,{slots:t,emit:n}){let{renderTab:r}=Ze(e,t,n);return()=>r(`div`)}});function $e(e,t,n){let r=n?[`left`,`right`]:[`top`,`bottom`];return`absolute-${t?r[0]:r[1]}${e?` text-${e}`:``}`}function et(e,t){for(let n in e)if(e[n]!==t[n])return!1;return!0}var tt=[`left`,`center`,`right`,`justify`],nt=H({name:`QTabs`,props:{modelValue:[Number,String],align:{type:String,default:`center`,validator:e=>tt.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:r}){let{proxy:a}=y(),o=F(),{registerTick:s}=se(),{registerTick:u}=se(),{registerTick:f}=se(),{registerTimeout:p,removeTimeout:m}=ce(),{registerTimeout:h,removeTimeout:g}=ce(),_=v(null),b=v(null),x=d(e.modelValue),S=d(!1),C=d(!0),w=d(!1),T=d(!1),E=[],O=d(0),A=d(!1),j=null,M=null,N,P=D(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:$e(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),ne=D(()=>{let e=O.value,t=x.value,n=null;for(let r=0;r<e;r++){let e=E[r];if(!e.disable.value){if(e.name.value===t)return t;n===null&&(n=e.name.value)}}return n}),re=D(()=>`q-tabs__content--align-${S.value?`left`:T.value?`justify`:e.align}`),ie=D(()=>`q-tabs row no-wrap items-center q-tabs--${S.value?``:`not-`}scrollable q-tabs--${e.vertical?`vertical`:`horizontal`} q-tabs__arrows--${e.outsideArrows?`outside`:`inside`} q-tabs--mobile-with${e.mobileArrows?``:`out`}-arrows`+(e.dense?` q-tabs--dense`:``)+(e.shrink?` col-shrink`:``)+(e.stretch?` self-stretch`:``)),R=D(()=>`q-tabs__content row no-wrap items-center self-stretch hide-scrollbar relative-position `+re.value+(e.contentClass===void 0?``:` ${e.contentClass}`)),ae=D(()=>e.vertical?`height`:`width`),z=D(()=>!e.vertical&&o.lang.rtl===!0);i(z,W),i(()=>e.modelValue,e=>{B({name:e,setCurrent:!0,skipEmit:!0})}),i(()=>e.outsideArrows,V);function B({name:t,setCurrent:n,skipEmit:i}){x.value!==t&&(!i&&e[`onUpdate:modelValue`]!==void 0&&r(`update:modelValue`,t),(n||e[`onUpdate:modelValue`]===void 0)&&(oe(x.value,t),x.value=t))}function V(){s(()=>{_.value&&H({width:_.value.offsetWidth,height:_.value.offsetHeight})})}function H(t){if(b.value===null)return;let n=t[ae.value],r=Array.prototype.reduce.call(b.value.children,(e,t)=>e+t.getBoundingClientRect()[ae.value],0),i=n>0&&r-n>1;S.value=i,i&&u(W),T.value=n<Number.parseInt(e.breakpoint,10)}function oe(t,n){let r=t!=null&&t!==``?E.find(e=>e.name.value===t):null,i=n!=null&&n!==``?E.find(e=>e.name.value===n):null;if(Q)Q=!1;else if(r&&i){let t=r.tabIndicatorRef.value,n=i.tabIndicatorRef.value;j!==null&&(clearTimeout(j),j=null),t.style.transition=`none`,t.style.transform=`none`,n.style.transition=`none`,n.style.transform=`none`;let a=t.getBoundingClientRect(),o=n.getBoundingClientRect();n.style.transform=e.vertical?`translate3d(0,${a.top-o.top}px,0) scale3d(1,${o.height?a.height/o.height:1},1)`:`translate3d(${a.left-o.left}px,0,0) scale3d(${o.width?a.width/o.width:1},1,1)`,f(()=>{j=setTimeout(()=>{j=null,n.style.transition=`transform .25s cubic-bezier(.4, 0, .2, 1)`,n.style.transform=`none`},70)})}i&&S.value&&U(i.rootRef.value)}function U(t){let{left:n,width:r,top:i,height:a}=b.value.getBoundingClientRect(),o=t.getBoundingClientRect(),s=e.vertical?o.top-i:o.left-n;if(s<0){b.value[e.vertical?`scrollTop`:`scrollLeft`]+=Math.floor(s),W();return}s+=e.vertical?o.height-a:o.width-r,s>0&&(b.value[e.vertical?`scrollTop`:`scrollLeft`]+=Math.ceil(s),W())}function W(){let t=b.value;if(t===null)return;let n=t.getBoundingClientRect(),r=e.vertical?t.scrollTop:Math.abs(t.scrollLeft);z.value?(C.value=Math.ceil(r+n.width)<t.scrollWidth-1,w.value=r>0):(C.value=r>0,w.value=e.vertical?Math.ceil(r+n.height)<t.scrollHeight:Math.ceil(r+n.width)<t.scrollWidth)}function le(e){M!==null&&clearInterval(M),M=setInterval(()=>{fe(e)&&K()},5)}function ue(){le(z.value?2**53-1:0)}function G(){le(z.value?0:2**53-1)}function K(){M!==null&&(clearInterval(M),M=null)}function de(t,n){let r=Array.prototype.filter.call(b.value.children,e=>e===n||e.matches?.(`.q-tab.q-focusable`)),i=r.length;if(i===0)return;if(t===36)return U(r[0]),r[0].focus(),!0;if(t===35)return U(r[i-1]),r[i-1].focus(),!0;let a=t===(e.vertical?38:37),o=t===(e.vertical?40:39),s=a?-1:o?1:void 0;if(s!==void 0){let t=e.vertical!==!0&&z.value?-1:1,a=(r.indexOf(n)+s*t+i)%i;return U(r[a]),r[a].focus({preventScroll:!0}),!0}}let q=D(()=>z.value?{get:e=>Math.abs(e.scrollLeft),set:(e,t)=>{e.scrollLeft=-t}}:e.vertical?{get:e=>e.scrollTop,set:(e,t)=>{e.scrollTop=t}}:{get:e=>e.scrollLeft,set:(e,t)=>{e.scrollLeft=t}});function fe(e){let t=b.value,{get:n,set:r}=q.value,i=!1,a=n(t),o=e<a?-1:1;return a+=o*5,a<0?(i=!0,a=0):(o===-1&&a<=e||o===1&&a>=e)&&(i=!0,a=e),r(t,a),W(),i}function J(){let e=null,t={matchedLen:0,queryDiff:9999,hrefLen:0},n=E.filter(e=>e.routeData?.hasRouterLink.value===!0),{hash:r,query:i}=a.$route,o=Object.keys(i).length;for(let a of n){let n=a.routeData.exact.value===!0;if(!a.routeData[n?`linkIsExactActive`:`linkIsActive`].value)continue;let{hash:s,query:c,matched:l,href:u}=a.routeData.resolvedLink.value,d=Object.keys(c).length;if(n){if(s!==r||d!==o||!et(i,c))continue;e=a.name.value;break}if(s!==``&&s!==r||d!==0&&!et(c,i))continue;let f={matchedLen:l.length,queryDiff:o-d,hrefLen:u.length-s.length};if(f.matchedLen>t.matchedLen){e=a.name.value,t=f;continue}if(f.matchedLen===t.matchedLen){if(f.queryDiff<t.queryDiff)e=a.name.value,t=f;else if(f.queryDiff!==t.queryDiff)continue;f.hrefLen>t.hrefLen&&(e=a.name.value,t=f)}}if(e===null&&E.some(e=>e.routeData===void 0&&e.name.value===x.value)){Q=!1;return}B({name:e,setCurrent:!0})}function pe(e){if(m(),!A.value&&_.value!==null&&e.target&&typeof e.target.closest==`function`){let t=e.target.closest(`.q-tab`);t&&_.value.contains(t)&&(A.value=!0,S.value&&U(t))}}function me(){p(()=>{A.value=!1},30)}function Y(){ve.avoidRouteWatcher===!1?h(J):g()}function he(){if(N===void 0){let e=i(()=>a.$route.fullPath,Y);N=()=>{e(),N=void 0}}}function _e(e){E.push(e),O.value++,V(),e.routeData===void 0||a.$route===void 0?h(()=>{if(S.value){let e=x.value,t=e!=null&&e!==``?E.find(t=>t.name.value===e):null;t&&U(t.rootRef.value)}}):(he(),e.routeData.hasRouterLink.value&&Y())}function X(e){E.splice(E.indexOf(e),1),O.value--,V(),N!==void 0&&e.routeData!==void 0&&(E.every(e=>e.routeData===void 0)&&N(),Y())}let ve={currentModel:x,tabProps:P,hasFocus:A,tabStopName:ne,registerTab:_e,unregisterTab:X,verifyRouteModel:Y,updateModel:B,onKbdNavigate:de,avoidRouteWatcher:!1};c(te,ve);function ye(){j!==null&&clearTimeout(j),K(),N?.()}let Z=!1,Q=!1;return n(ye),l(()=>{Z=N!==void 0,ye()}),ee(()=>{Z&&(he(),Q=!0,Y()),V()}),()=>k(`div`,{ref:_,class:ie.value,role:`tablist`,"aria-orientation":e.vertical?`vertical`:`horizontal`,onFocusin:pe,onFocusout:me},[k(ge,{onResize:H}),k(`div`,{ref:b,class:R.value,onScroll:W},L(t.default)),k(I,{class:`q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon`+(C.value?``:` q-tabs__arrow--faded`),name:e.leftIcon||o.iconSet.tabs[e.vertical?`up`:`left`],onMousedownPassive:ue,onTouchstartPassive:ue,onMouseupPassive:K,onMouseleavePassive:K,onTouchendPassive:K}),k(I,{class:`q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon`+(w.value?``:` q-tabs__arrow--faded`),name:e.rightIcon||o.iconSet.tabs[e.vertical?`down`:`right`],onMousedownPassive:G,onTouchstartPassive:G,onMouseupPassive:K,onMouseleavePassive:K,onTouchendPassive:K})])}}),rt={class:`row items-center no-wrap q-gutter-x-xs`},it={class:`row items-center no-wrap q-gutter-x-xs`},at=b({__name:`FileExplorerTabs`,props:j({stagedFilesLength:{},unstagedFilesLength:{}},{modelValue:{default:`staged`},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=N(e,`modelValue`),{t:n}=q();return(r,i)=>(s(),C(nt,{modelValue:t.value,"onUpdate:modelValue":i[0]||=e=>t.value=e,dense:``,"no-caps":``,align:`left`,"narrow-indicator":``,class:`text-primary q-mb-sm`},{default:f(()=>[w(Qe,{name:`staged`},{default:f(()=>[g(`div`,rt,[g(`span`,null,h(x(n)(`changes.staged`)),1),w(_e,{color:`positive`,rounded:``},{default:f(()=>[T(h(e.stagedFilesLength),1)]),_:1})])]),_:1}),w(Qe,{name:`unstaged`},{default:f(()=>[g(`div`,it,[g(`span`,null,h(x(n)(`changes.unstaged`)),1),w(_e,{color:`warning`,rounded:``},{default:f(()=>[T(h(e.unstagedFilesLength),1)]),_:1})])]),_:1})]),_:1},8,[`modelValue`]))}}),ot={class:`file-tree-node`},st={class:`row items-center no-wrap q-gutter-x-xs`},ct={class:`ellipsis file-tree-node__label`},lt={class:`ellipsis file-tree-node__label`},ut={key:2},dt=P(b({__name:`FileTreeNode`,props:{node:{},selectedPath:{},expandedFolders:{},level:{}},emits:[`toggle-folder`,`file-select`],setup(e,{emit:t}){let n=e,r=t,i=8+n.level*12;return(t,n)=>{let o=a(`FileTreeNode`,!0);return s(),_(`div`,ot,[e.node.type===`directory`?p((s(),C(he,{key:0,clickable:``,dense:``,style:M({paddingLeft:`${i}px`}),onClick:n[0]||=t=>r(`toggle-folder`,e.node.path)},{default:f(()=>[w(X,{avatar:``,class:`file-tree-node__icon-section`},{default:f(()=>[g(`div`,st,[w(I,{name:`chevron_right`,size:`xs`,class:A([`file-tree-node__chevron`,{"file-tree-node__chevron--expanded":e.expandedFolders.has(e.node.path)}])},null,8,[`class`]),w(I,{name:e.expandedFolders.has(e.node.path)?`folder_open`:`folder`,size:`xs`,color:`warning`},null,8,[`name`])])]),_:1}),w(X,{class:`text-mono`},{default:f(()=>[g(`div`,ct,[T(h(e.node.name)+` `,1),w(Z,{anchor:`top middle`,self:`bottom middle`},{default:f(()=>[T(h(e.node.path),1)]),_:1})])]),_:1}),e.node.children?(s(),C(X,{key:0,side:``,class:`text-caption text-grey-6`},{default:f(()=>[T(h(e.node.children.length),1)]),_:1})):O(``,!0)]),_:1},8,[`style`])),[[R]]):p((s(),C(he,{key:1,clickable:``,dense:``,active:e.node.path===e.selectedPath,"active-class":`file-tree-node--selected`,style:M({paddingLeft:`${i+20}px`}),onClick:n[1]||=t=>r(`file-select`,e.node.path)},{default:f(()=>[w(X,{avatar:``,class:`file-tree-node__icon-section`},{default:f(()=>[w(I,{name:`insert_drive_file`,size:`xs`,color:`grey-6`})]),_:1}),w(X,{class:`text-mono`},{default:f(()=>[g(`div`,lt,[T(h(e.node.name)+` `,1),w(Z,{anchor:`top middle`,self:`bottom middle`},{default:f(()=>[T(h(e.node.path),1)]),_:1})])]),_:1}),e.node.isChanged?(s(),C(X,{key:0,side:``},{default:f(()=>[w(I,{name:`fiber_manual_record`,size:`8px`,color:`warning`})]),_:1})):O(``,!0)]),_:1},8,[`active`,`style`])),[[R]]),e.node.type===`directory`&&e.expandedFolders.has(e.node.path)&&e.node.children?(s(),_(`div`,ut,[(s(!0),_(E,null,u(e.node.children,t=>(s(),C(o,{key:t.path,node:t,"selected-path":e.selectedPath,"expanded-folders":e.expandedFolders,level:e.level+1,onToggleFolder:n[2]||=e=>r(`toggle-folder`,e),onFileSelect:n[3]||=e=>r(`file-select`,e)},null,8,[`node`,`selected-path`,`expanded-folders`,`level`]))),128))])):O(``,!0)])}}}),[[`__scopeId`,`data-v-43168dd7`]]);function ft(){let e=F(),{t}=q(),n=Ve();async function r(r,i,a){try{await pe(i,{paths:[r]}),await n.refresh()}catch(n){e.notify({type:`negative`,message:t(a),caption:n instanceof Error?n.message:String(n)})}}function i(e){return r(e,`/api/git/stage`,`changes.actions.stageError`)}function a(e){return r(e,`/api/git/unstage`,`changes.actions.unstageError`)}function o(n){e.dialog({title:t(`changes.actions.discardConfirmTitle`),message:t(`changes.actions.discardConfirmMessage`,{path:n}),persistent:!0,ok:{label:t(`changes.actions.discardConfirmOk`),color:`negative`,flat:!0},cancel:{label:t(`changes.actions.discardConfirmCancel`),flat:!0}}).onOk(()=>{r(n,`/api/git/discard`,`changes.actions.discardError`)})}return{stage:i,unstage:a,discard:o}}var pt={class:`ellipsis file-list-item__path-label`},mt={class:`text-caption`},ht={class:`text-positive`},gt={class:`text-negative q-ml-xs`},_t=P(b({__name:`FileListItem`,props:{file:{},selected:{type:Boolean},source:{}},emits:[`click`],setup(e){let{t}=q(),{stage:n,unstage:r,discard:i}=ft(),a={added:`A`,modified:`M`,deleted:`D`,renamed:`R`},o={added:`positive`,modified:`warning`,deleted:`negative`,renamed:`purple`};return(c,l)=>p((s(),C(he,{clickable:``,dense:``,active:e.selected,"active-class":`file-list-item--selected`,onClick:l[3]||=e=>c.$emit(`click`)},{default:f(()=>[w(X,{avatar:``,class:`file-list-item__icon-section`},{default:f(()=>[g(`span`,{class:A([`text-caption text-weight-bold text-mono`,`text-${o[e.file.status]}`])},h(a[e.file.status]),3)]),_:1}),w(X,{class:`text-mono`},{default:f(()=>[g(`div`,pt,[T(h(x($)(e.file))+` `,1),w(Z,{anchor:`top middle`,self:`bottom middle`},{default:f(()=>[T(h(x($)(e.file)),1)]),_:1})])]),_:1}),w(X,{side:``,class:`file-list-item__stats`},{default:f(()=>[g(`span`,mt,[g(`span`,ht,`+`+h(e.file.additions),1),g(`span`,gt,`-`+h(e.file.deletions),1)])]),_:1}),w(X,{side:``,class:`file-list-item__actions`},{default:f(()=>[e.source===`unstaged`?(s(),_(E,{key:0},[p((s(),C(z,{flat:``,dense:``,round:``,size:`sm`,icon:`undo`,"aria-label":x(t)(`changes.actions.discard`),onClick:l[0]||=V(t=>x(i)(x($)(e.file)),[`stop`])},{default:f(()=>[w(Z,null,{default:f(()=>[T(h(x(t)(`changes.actions.discard`)),1)]),_:1})]),_:1},8,[`aria-label`])),[[R]]),p((s(),C(z,{flat:``,dense:``,round:``,size:`sm`,icon:`add`,"aria-label":x(t)(`changes.actions.stage`),onClick:l[1]||=V(t=>x(n)(x($)(e.file)),[`stop`])},{default:f(()=>[w(Z,null,{default:f(()=>[T(h(x(t)(`changes.actions.stage`)),1)]),_:1})]),_:1},8,[`aria-label`])),[[R]])],64)):p((s(),C(z,{key:1,flat:``,dense:``,round:``,size:`sm`,icon:`remove`,"aria-label":x(t)(`changes.actions.unstage`),onClick:l[2]||=V(t=>x(r)(x($)(e.file)),[`stop`])},{default:f(()=>[w(Z,null,{default:f(()=>[T(h(x(t)(`changes.actions.unstage`)),1)]),_:1})]),_:1},8,[`aria-label`])),[[R]])]),_:1})]),_:1},8,[`active`])),[[R]])}}),[[`__scopeId`,`data-v-77d2a0e7`]]),vt=b({__name:`BrowseModeToggle`,props:{modelValue:{type:Boolean,default:!1},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let t=N(e,`modelValue`),{t:n}=q();return(e,r)=>(s(),C(he,null,{default:f(()=>[w(X,null,{default:f(()=>[w(Pe,null,{default:f(()=>[T(h(x(n)(`browse.toggle`)),1)]),_:1})]),_:1}),w(X,{side:``},{default:f(()=>[w(K,{modelValue:t.value,"onUpdate:modelValue":r[0]||=e=>t.value=e,dense:``,size:`xs`},null,8,[`modelValue`])]),_:1})]),_:1}))}}),yt={class:`file-list-panel__header q-pa-sm`},bt={key:1,class:`text-subtitle2 q-mb-sm`},xt={key:0,class:`text-primary`},St={key:0,class:`row justify-center q-pa-lg`},Ct={key:0,class:`text-caption text-grey-6 q-px-md q-py-sm`},wt={key:0,class:`text-caption text-grey-6 q-px-md q-py-sm`},Tt=P(b({__name:`FileListPanel`,setup(e){let{t}=q(),{stagedFiles:n,unstagedFiles:r,initialLoading:i,error:a}=J(xe()),c=Ve(),{source:l,browseMode:d,filter:p,selectedPath:m,expandedFolders:v,treeInitialLoading:y,treeError:b,filteredDiffFiles:S,filteredTree:D,totalTreeFiles:k}=J(c);return(e,A)=>(s(),_(E,null,[g(`div`,yt,[x(d)?(s(),_(`div`,bt,[T(h(x(t)(`browse.allFiles`))+` `,1),x(k)>0||!x(b)?(s(),_(`span`,xt,`(`+h(x(k))+`)`,1)):O(``,!0)])):(s(),C(at,{key:0,modelValue:x(l),"onUpdate:modelValue":A[0]||=e=>o(l)?l.value=e:null,"staged-files-length":x(n).length,"unstaged-files-length":x(r).length},null,8,[`modelValue`,`staged-files-length`,`unstaged-files-length`])),w(Ne,{modelValue:x(p),"onUpdate:modelValue":A[1]||=e=>o(p)?p.value=e:null,placeholder:x(d)?x(t)(`browse.searchPlaceholder`):x(t)(`changes.filterPlaceholder`)},null,8,[`modelValue`,`placeholder`])]),w(G),w(Q,{class:`col file-list-panel__scroll`,"content-style":`padding: 4px 0`,"content-active-style":`padding: 4px 0`},{default:f(()=>[(x(d)?x(y):x(i))?(s(),_(`div`,St,[w(ae,{color:`primary`,size:`2em`})])):x(d)?(s(),_(E,{key:1},[x(D).length===0&&(!x(b)||x(p)&&x(k)>0)?(s(),_(`p`,Ct,h(x(p)?x(t)(`browse.noMatchingFiles`):x(t)(`browse.noFiles`)),1)):O(``,!0),(s(!0),_(E,null,u(x(D),e=>(s(),C(dt,{key:e.path,node:e,"selected-path":x(m),"expanded-folders":x(v),level:0,onToggleFolder:x(c).toggleFolder,onFileSelect:x(c).selectFile},null,8,[`node`,`selected-path`,`expanded-folders`,`onToggleFolder`,`onFileSelect`]))),128))],64)):(s(),_(E,{key:2},[x(S).length===0&&(x(p)||!x(a))?(s(),_(`p`,wt,h(x(p)?x(t)(`browse.noMatchingFiles`):x(t)(`changes.emptyFileList`)),1)):O(``,!0),(s(!0),_(E,null,u(x(S),e=>(s(),C(_t,{key:x($)(e),file:e,selected:x(m)===x($)(e),source:x(l),onClick:t=>x(c).selectFile(x($)(e))},null,8,[`file`,`selected`,`source`,`onClick`]))),128))],64))]),_:1}),w(G),w(vt,{modelValue:x(d),"onUpdate:modelValue":A[2]||=e=>o(d)?d.value=e:null},null,8,[`modelValue`])],64))}}),[[`__scopeId`,`data-v-32cc9fb2`]]),Et={class:`diff-status-bar row items-center q-gutter-x-md q-pa-sm text-body2`},Dt={class:`text-weight-medium`},Ot={class:`text-positive`},kt={class:`text-negative`},At={key:0,class:`text-grey-6`},jt={key:1,class:`text-grey-6`},Mt={key:2,class:`text-grey-6`},Nt={key:3,class:`text-grey-6`},Pt=b({__name:`DiffStatusBar`,props:{files:{}},emits:[`expand-all`,`collapse-all`],setup(e,{emit:t}){let n=e,r=t,{t:i}=q(),a=D(()=>{let e=n.files.reduce((e,t)=>e+t.additions,0),t=n.files.reduce((e,t)=>e+t.deletions,0),r=n.files.filter(e=>e.status===`added`).length,i=n.files.filter(e=>e.status===`modified`).length,a=n.files.filter(e=>e.status===`deleted`).length,o=n.files.filter(e=>e.status===`renamed`).length;return{total:n.files.length,additions:e,deletions:t,added:r,modified:i,deleted:a,renamed:o}});return(e,t)=>(s(),_(`div`,Et,[g(`span`,Dt,h(x(i)(`changes.filesChanged`,{count:a.value.total})),1),g(`span`,Ot,` +`+h(a.value.additions)+` `+h(x(i)(`changes.additions`)),1),g(`span`,kt,` -`+h(a.value.deletions)+` `+h(x(i)(`changes.deletions`)),1),a.value.added?(s(),_(`span`,At,h(a.value.added)+` `+h(x(i)(`changes.added`)),1)):O(``,!0),a.value.modified?(s(),_(`span`,jt,h(a.value.modified)+` `+h(x(i)(`changes.modified`)),1)):O(``,!0),a.value.deleted?(s(),_(`span`,Mt,h(a.value.deleted)+` `+h(x(i)(`changes.deletedPlural`)),1)):O(``,!0),a.value.renamed?(s(),_(`span`,Nt,h(a.value.renamed)+` `+h(x(i)(`changes.renamed`)),1)):O(``,!0),w(ye),w(z,{dense:``,flat:``,"no-caps":``,size:`sm`,icon:`unfold_more`,label:x(i)(`changes.expandAll`),onClick:t[0]||=e=>r(`expand-all`)},null,8,[`label`]),w(z,{dense:``,flat:``,"no-caps":``,size:`sm`,icon:`unfold_less`,label:x(i)(`changes.collapseAll`),onClick:t[1]||=e=>r(`collapse-all`)},null,8,[`label`])]))}}),Ft={key:0,class:`active-review-bar row items-center q-gutter-x-sm q-px-sm no-wrap`},It={class:`text-body2 ellipsis`},Lt=P(b({__name:`ActiveReviewBar`,setup(e){let{t}=q(),n=F(),r=Me(),{activeReview:i}=J(r);function a(e){r.setStatus(e).catch(e=>{n.notify({type:`negative`,message:t(`reviews.comments.error`),caption:e instanceof Error?e.message:String(e)})})}return(e,n)=>x(i)?(s(),_(`div`,Ft,[w(I,{name:`rate_review`,size:`18px`,color:`primary`}),g(`span`,It,h(x(i).name??x(t)(`reviews.list.unnamed`)),1),w(ye),w(je,{status:x(i).status,onChange:a},null,8,[`status`])])):O(``,!0)}}),[[`__scopeId`,`data-v-725a73f5`]]),Rt=H({name:`QBanner`,props:{...de,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let n=F(),r=U(e,n),i=D(()=>`q-banner row items-center`+(e.dense?` q-banner--dense`:``)+(r()?` q-banner--dark q-dark`:``)+(e.rounded?` rounded-borders`:``)),a=D(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions?`auto`:`all`}`);return()=>{let n=[k(`div`,{class:`q-banner__avatar col-auto row items-center self-start`},L(t.avatar)),k(`div`,{class:`q-banner__content col text-body2`},L(t.default))],r=L(t.action);return r!==void 0&&n.push(k(`div`,{class:a.value},r)),k(`div`,{class:i.value+(!e.inlineActions&&r!==void 0?` q-banner--top-padding`:``),role:`alert`},n)}}}),zt={role:`alert`},Bt={class:`text-caption`},Vt=b({__name:`LoadErrorBanner`,props:{title:{},message:{},loading:{type:Boolean}},emits:[`retry`],setup(e,{emit:t}){let n=t,{t:r}=q();return(t,i)=>(s(),C(Rt,{dense:``,class:`bg-negative text-white`,role:`none`},{action:f(()=>[w(z,{flat:``,dense:``,color:`white`,label:x(r)(`changes.retry`),loading:e.loading,onClick:i[0]||=e=>n(`retry`)},null,8,[`label`,`loading`])]),default:f(()=>[g(`div`,zt,[T(h(e.title)+` `,1),g(`div`,Bt,h(e.message),1)])]),_:1}))}}),Ht={key:1,class:`q-pa-md text-grey-6`},Ut=b({__name:`DiffPanel`,setup(e){let{t}=q(),n=F(),r=Ve(),i=Me(),{diffFiles:a,expandedFiles:o}=J(r),{error:c,loading:l}=J(xe()),{activeReview:d,commentsByFile:p}=J(i);async function m(e){try{await e()}catch(e){n.notify({type:`negative`,message:t(`reviews.comments.error`),caption:e instanceof Error?e.message:String(e)})}}function g(e){m(()=>i.createComment(e))}function v(e,t){m(()=>i.editComment(e,t))}function y(e){m(()=>i.deleteComment(e))}function b(e){m(()=>i.resolveComment(e))}function S(e){m(()=>i.unresolveComment(e))}return(e,n)=>(s(),_(E,null,[x(c)?(s(),C(Vt,{key:0,title:x(t)(`changes.loadError`),message:x(c),loading:x(l),onRetry:n[0]||=e=>x(r).refresh()},null,8,[`title`,`message`,`loading`])):O(``,!0),x(a).length===0&&!x(c)?(s(),_(`div`,Ht,h(x(t)(`changes.emptyDiffPanel`)),1)):x(a).length>0?(s(),_(E,{key:2},[w(Lt),x(d)?(s(),C(G,{key:0})):O(``,!0),w(Pt,{files:x(a),onExpandAll:x(r).expandAllFiles,onCollapseAll:x(r).collapseAllFiles},null,8,[`files`,`onExpandAll`,`onCollapseAll`]),w(G),w(Q,{class:`col`,"content-style":`padding: 8px; width: 100%; max-width: 100%`,"content-active-style":`padding: 8px; width: 100%; max-width: 100%`},{default:f(()=>[(s(!0),_(E,null,u(x(a),e=>(s(),C(De,{key:x($)(e),file:e,expanded:x(o).has(x($)(e)),commentable:!!x(d),"comments-editable":!!x(d),comments:x(p).get(x($)(e))??[],onToggle:t=>x(r).handleCardToggle(x($)(e)),onExpand:t=>x(r).expandFile(x($)(e)),onCreateComment:g,onEditComment:v,onDeleteComment:y,onResolveComment:b,onUnresolveComment:S},null,8,[`file`,`expanded`,`commentable`,`comments-editable`,`comments`,`onToggle`,`onExpand`]))),128))]),_:1})],64)):O(``,!0),!x(d)&&x(a).length>0?(s(),C(Fe,{key:3})):O(``,!0)],64))}}),Wt={key:1,class:`q-pa-md text-grey-6`},Gt={key:0,class:`row justify-center q-pa-lg`},Kt={key:1,class:`q-pa-md text-grey-6`},qt={class:`text-caption`},Jt={key:2,class:`q-pa-md text-grey-6`},Yt=b({__name:`FileContentPanel`,setup(e){let{t}=q(),n=Ve(),{selectedPath:r,browseFileLines:a,browseFileIsBinary:o,browseFileLoading:c,browseFileError:l,treeError:u,refreshing:p}=J(n),{error:m}=J(xe()),v=D(()=>m.value?{title:t(`changes.loadError`),message:m.value}:u.value?{title:t(`browse.treeLoadError`),message:u.value}:null),y=d(!1);return i(r,e=>{y.value=e?ke(e):!1},{immediate:!0}),(e,i)=>(s(),_(E,null,[v.value?(s(),C(Vt,{key:0,title:v.value.title,message:v.value.message,loading:x(p),onRetry:i[0]||=e=>x(n).refresh()},null,8,[`title`,`message`,`loading`])):O(``,!0),x(r)?(s(),C(Oe,{key:2,class:`col`},{header:f(()=>[w(we,{path:x(r)},{default:f(()=>[w(Te,{modelValue:y.value,"onUpdate:modelValue":i[1]||=e=>y.value=e},null,8,[`modelValue`])]),_:1},8,[`path`])]),default:f(()=>[x(c)&&x(a).length===0&&!x(l)?(s(),_(`div`,Gt,[w(ae,{color:`primary`,size:`2em`})])):x(l)?(s(),_(`div`,Kt,[T(h(x(t)(`changes.fullFileLoadError`))+` `,1),g(`div`,qt,h(x(l)),1),w(z,{flat:``,dense:``,color:`primary`,class:`q-mt-sm`,label:x(t)(`changes.retry`),loading:x(p),onClick:i[2]||=e=>x(n).refresh()},null,8,[`label`,`loading`])])):x(o)?(s(),_(`div`,Jt,h(x(t)(`changes.binaryFile`)),1)):(s(),C(Q,{key:3,class:`col`,"content-style":`padding: 8px`,"content-active-style":`padding: 8px`},{default:f(()=>[w(Ae,{path:x(r),lines:x(a),wrap:y.value},null,8,[`path`,`lines`,`wrap`])]),_:1}))]),_:1})):(s(),_(`div`,Wt,h(x(t)(`browse.selectFile`)),1))],64))}}),Xt=b({__name:`FileExplorer`,setup(t){let n=Ve(),r=Me(),{browseMode:i}=J(n);S(()=>{n.refresh(),r.refresh()});let a=Y([`files:changed`],()=>void n.refreshFromServerEvent());e(()=>a.close());let o=Y([`review:created`,`review:updated`,`review:deleted`,`comment:created`,`comment:updated`,`comment:deleted`],()=>void r.refresh());return e(()=>o.close()),(e,t)=>(s(),C(Ke,null,{panel:f(()=>[w(Tt)]),content:f(()=>[x(i)?(s(),C(Yt,{key:0})):(s(),C(Ut,{key:1}))]),_:1}))}}),Zt=b({__name:`IndexPage`,setup(e){return(e,t)=>(s(),C(Se,null,{default:f(()=>[w(Xt)]),_:1}))}});export{Zt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.repo-info[data-v-a2aececf]{line-height:1}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,C as t,E as n,H as r,I as i,M as a,N as o,Q as s,U as c,W as l,Z as u,b as d,bt as f,c as p,d as m,et as ee,g as te,h,it as g,k as ne,l as _,m as v,p as y,r as b,s as x,u as S,v as C,vt as w,z as T}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{C as E,D as re,S as D,c as O,f as k,h as ie,k as ae,m as A,o as j,t as M,w as N}from"./QBtn-DGiC5uLo.js";import{d as P}from"./event-D0kaqRwq.js";import{r as oe}from"./Platform-DDGYwfzl.js";import{A as se,D as ce,E as le,J as F,K as ue,N as I,O as de,Q as fe,Z as pe,_ as me,k as L,q as R,v as z}from"./index-i1Dlwasy.js";import{n as B}from"./vue-i18n.runtime-CxBM6QPV.js";import{r as V}from"./pinia-jMX0pzvu.js";import{n as H,t as he}from"./app-info-store-Dw8pPU-w.js";import{n as U}from"./use-app-theme-D0Pl-VfI.js";import{_ as W,a as G,g as K,h as q,i as ge,o as J,r as _e,t as ve}from"./format-Bb6ahGqi.js";import{n as ye,t as be}from"./QTooltip-CPN6UvuX.js";var xe=P({name:`QPageContainer`,setup(e,{slots:t}){let n=D(),r=d(re,N);if(r===N)return console.error(`QPageContainer needs to be child of QLayout`),N;o(ae,!0);let i=x(()=>{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()=>C(`div`,{class:`q-page-container`,style:i.value},A(t.default))}}),Se=/^(h|l)h(h|r) lpr (f|l)f(f|r)$/,Ce=P({name:`QLayout`,props:{container:Boolean,view:{type:String,default:`hhh lpr fff`,validator:e=>Se.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(t,{slots:n,emit:i}){let a=D(),c=ee(null),l=s(a.screen.height),d=s(t.container?0:a.screen.width),f=s({position:0,direction:`down`,inflectionPoint:0}),p=s(0),m=s(oe.value?0:I()),te=x(()=>`q-layout q-layout--`+(t.container?`containerized`:`standard`)),h=x(()=>t.container?null:{minHeight:a.screen.height+`px`}),g=x(()=>m.value===0?null:{[a.lang.rtl?`left`:`right`]:`${m.value}px`}),ne=x(()=>m.value===0?null:{[a.lang.rtl?`right`:`left`]:0,[a.lang.rtl?`left`:`right`]:`-${m.value}px`,width:`calc(100% + ${m.value}px)`}),_=null;function v(e){let n={position:e.position.top,direction:e.direction,directionChanged:e.directionChanged,inflectionPoint:e.inflectionPoint.top,delta:e.delta.top};t.container||!document.qScrollPrevented?(_=null,y(n)):_=n}function y(e){f.value=e,t.onScroll!==void 0&&i(`scroll`,e)}function b(e){let{height:n,width:r}=e,a=!1;l.value!==n&&(a=!0,l.value=n,t.onScrollHeight!==void 0&&i(`scrollHeight`,n),w()),d.value!==r&&(a=!0,d.value=r),a&&t.onResize!==void 0&&i(`resize`,e)}function S({height:e}){p.value!==e&&(p.value=e,w())}function w(){if(t.container){let e=l.value>p.value?I():0;m.value!==e&&(m.value=e)}}let T=null,E={instances:{},view:x(()=>t.view),isContainer:x(()=>t.container),rootRef:c,height:l,containerHeight:p,scrollbarWidth:m,totalWidth:x(()=>t.container?d.value+m.value:a.screen.width),rows:x(()=>{let e=t.view.toLowerCase().split(` `);return{top:[...e[0]],middle:[...e[1]],bottom:[...e[2]]}}),header:u({size:0,offset:0,space:!1}),right:u({size:300,offset:0,space:!1}),footer:u({size:0,offset:0,space:!1}),left:u({size:300,offset:0,space:!1}),scroll:f,animate(){T===null?document.body.classList.add(`q-body--layout-animate`):clearTimeout(T),T=setTimeout(()=>{T=null,document.body.classList.remove(`q-body--layout-animate`)},155)},update(e,t,n){E[e][t]=n}};o(re,E);{let t=()=>{if(_!==null){let e=_;_=null,y(e)}};L(t),e(()=>{se(t)})}if(I()>0){let n=null,i=document.documentElement,o=()=>{n=null,i.classList.remove(`hide-scrollbar`)},s=()=>{if(n===null){if(i.scrollHeight>a.screen.height)return;i.classList.add(`hide-scrollbar`)}else clearTimeout(n);n=setTimeout(o,300)},c=e=>{n!==null&&e===`remove`&&(clearTimeout(n),o()),window[`${e}EventListener`](`resize`,s)};r(()=>t.container?`remove`:`add`,c),t.container||c(`add`),e(()=>{c(`remove`)})}return()=>{let e=k(n.default,[C(W,{onScroll:v}),C(K,{onResize:b})]),r=C(`div`,{class:te.value,style:h.value,ref:t.container?void 0:c,tabindex:-1},e);return t.container?C(`div`,{class:`q-layout-container overflow-hidden`,ref:c},[C(K,{onResize:S}),C(`div`,{class:`absolute-full`,style:g.value},[C(`div`,{class:`scroll`,style:ne.value},[r])])]):r}}}),we=P({name:`QToolbarTitle`,props:{shrink:Boolean},setup(e,{slots:t}){return()=>C(`div`,{class:`q-toolbar__title ellipsis`+(e.shrink?` col-shrink`:``)},A(t.default))}}),Y=P({name:`QToolbar`,props:{inset:Boolean},setup(e,{slots:t}){let n=x(()=>`q-toolbar row no-wrap items-center`+(e.inset?` q-toolbar--inset`:``));return()=>C(`div`,{class:n.value,role:`toolbar`},A(t.default))}});function X(e,t){e.value!==t&&(e.value=t)}var Z=P({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:t,emit:i}){let a=D(),o=d(re,N);if(o===N)return console.error(`QHeader needs to be child of QLayout`),N;let c=s(Number.parseInt(e.heightHint,10)),l=s(!0),u=x(()=>e.reveal||o.view.value.includes(`H`)||a.platform.is.ios&&o.isContainer.value),f=x(()=>{if(!e.modelValue)return 0;if(u.value)return l.value?c.value:0;let t=c.value-o.scroll.value.position;return Math.max(t,0)}),p=x(()=>!e.modelValue||u.value&&!l.value),m=x(()=>e.modelValue&&p.value&&e.reveal),ee=x(()=>`q-header q-layout__section--marginal `+(u.value?`fixed`:`absolute`)+`-top`+(e.bordered?` q-header--bordered`:``)+(p.value?` q-header--hidden`:``)+(e.modelValue?``:` q-layout--prevent-focus`)),te=x(()=>{let e=o.rows.value.top,t={};return e[0]===`l`&&o.left.space&&(t[a.lang.rtl?`right`:`left`]=`${o.left.size}px`),e[2]===`r`&&o.right.space&&(t[a.lang.rtl?`left`:`right`]=`${o.right.size}px`),t});function h(e,t){o.update(`header`,e,t)}function g({height:e}){X(c,e),h(`size`,e)}function ne(e){m.value&&X(l,!0),i(`focusin`,e)}r(()=>e.modelValue,e=>{h(`space`,e),X(l,!0),o.animate()}),r(f,e=>{h(`offset`,e)}),r(()=>e.reveal,t=>{t||X(l,e.modelValue)}),r(l,e=>{o.animate(),i(`reveal`,e)}),r(o.scroll,t=>{e.reveal&&X(l,t.direction===`up`||t.position<=e.revealOffset||t.position-t.inflectionPoint<100)});let _={};return o.instances.header=_,e.modelValue&&h(`size`,c.value),h(`space`,e.modelValue),h(`offset`,f.value),n(()=>{o.instances.header===_&&(o.instances.header=void 0,h(`size`,0),h(`offset`,0),h(`space`,!1))}),()=>{let n=ie(t.default,[]);return e.elevated&&n.push(C(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),n.push(C(K,{debounce:0,onResize:g})),C(`header`,{class:ee.value,style:te.value,onFocusin:ne},n)}}}),Te={class:`text-weight-medium`},Ee={class:`row items-center gt-sm`},De=E(h({__name:`MainHeader`,emits:[`toggle-drawer`],setup(e,{emit:t}){let n=t,{t:r}=B(),{info:i}=V(H()),{version:o}=V(he()),{isDark:s,toggleTheme:u}=U();return(e,t)=>(a(),_(Z,{class:w(g(s)?`bg-dark text-white`:`bg-white text-dark`),bordered:``},{default:c(()=>[v(Y,null,{default:c(()=>[l(v(M,{flat:``,dense:``,round:``,icon:`menu`,"aria-label":g(r)(`nav.menu`),class:`q-mr-sm`,onClick:t[0]||=e=>n(`toggle-drawer`)},null,8,[`aria-label`]),[[j]]),v(we,{shrink:``,class:`text-weight-bold gt-xs`},{default:c(()=>[y(f(g(r)(`app.title`)),1)]),_:1}),g(o)?(a(),_(q,{key:0,outline:``,rounded:``,class:`text-primary q-ml-xs`},{default:c(()=>[y(` v`+f(g(o)),1)]),_:1})):S(``,!0),g(i)?(a(),m(`div`,{key:1,class:w([`row items-center q-gutter-x-sm text-body2 q-ml-md gt-sm repo-info`,g(s)?`text-grey-5`:`text-grey-7`])},[p(`span`,Te,f(g(i).name),1),g(i).branch?(a(),m(b,{key:0},[t[1]||=p(`span`,null,`/`,-1),v(q,{outline:``,class:`text-body2 text-primary`,rounded:``},{default:c(()=>[y(f(g(i).branch),1)]),_:1})],64)):S(``,!0)],2)):S(``,!0),v(ye),p(`div`,Ee,[v(M,{to:{path:`/`},flat:``,"no-caps":``,label:g(r)(`nav.changes`)},null,8,[`label`]),v(M,{to:{path:`/reviews`},flat:``,"no-caps":``,label:g(r)(`nav.reviews`)},null,8,[`label`])]),l((a(),_(M,{flat:``,round:``,dense:``,size:`sm`,icon:g(s)?`light_mode`:`dark_mode`,"aria-label":g(s)?g(r)(`theme.switchToLight`):g(r)(`theme.switchToDark`),class:`q-ml-xs gt-xs`,onClick:g(u)},{default:c(()=>[v(be,null,{default:c(()=>[y(f(g(s)?g(r)(`theme.switchToLight`):g(r)(`theme.switchToDark`)),1)]),_:1})]),_:1},8,[`icon`,`aria-label`,`onClick`])),[[j]])]),_:1})]),_:1},8,[`class`]))}}),[[`__scopeId`,`data-v-a2aececf`]]),Oe=150;function ke(e,t){e.value!==t&&(e.value=t)}var Ae=P({name:`QDrawer`,inheritAttrs:!1,props:{...F,...z,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:[...R,`onLayout`,`miniState`,`escapeKey`],setup(e,{slots:i,emit:a,attrs:o}){let c=te(),u=D(),f=me(e,u),{preventBodyScroll:p}=de(),{registerTimeout:m,removeTimeout:ee}=pe(),h=d(re,N);if(h===N)return console.error(`QDrawer needs to be child of QLayout`),N;let g,_=null,v,y=s(e.behavior===`mobile`||e.behavior!==`desktop`&&h.totalWidth.value<=e.breakpoint),b=x(()=>e.mini&&!y.value),S=x(()=>b.value?e.miniWidth:e.width),w=x(()=>e.overlay||e.miniToOverlay||h.view.value.includes(R.value?`R`:`L`)||u.platform.is.ios&&h.isContainer.value),T=s(e.showIfAbove&&!y.value||e.modelValue===!0),E=x(()=>!e.overlay&&T.value&&!y.value),O=x(()=>e.overlay&&T.value&&!y.value),k=x(()=>!e.persistent&&(y.value||O.value));function ie(e,t){if(P(),e!==!1&&h.animate(),X(0),y.value){let e=h.instances[U.value];e?.belowBreakpoint.value&&e.hide(!1),Z(1),h.isContainer.value||p(!0)}else Z(0),e!==!1&&Te(!1);m(()=>{e!==!1&&Te(!0),t||a(`show`,e)},Oe)}function ae(e,t){oe(),e!==!1&&h.animate(),Z(0),X(z.value*S.value),je(),t?ee():m(()=>{a(`hide`,e)},Oe)}let{show:j,hide:M}=ue({showing:T,hideOnRouteChange:k,handleShow:ie,handleHide:ae}),{addToHistory:P,removeFromHistory:oe}=fe(T,M,k),se=x(()=>T.value&&k.value);function F(e){a(`escapeKey`),M(e)}function I(e){e?le(F):ce(F)}let L={belowBreakpoint:y,hide:M},R=x(()=>e.side===`right`),z=x(()=>(u.lang.rtl?-1:1)*(R.value?1:-1)),B=s(0),V=s(!1),H=s(!1),he=s(S.value*z.value),U=x(()=>R.value?`left`:`right`),W=x(()=>T.value&&!y.value&&!e.overlay?e.miniToOverlay?e.miniWidth:S.value:0),G=x(()=>`fullscreen q-drawer__backdrop`+(!T.value&&!V.value?` hidden`:``)),K=x(()=>({backgroundColor:`rgba(0,0,0,${B.value*.4})`})),q=x(()=>R.value?h.rows.value.top[2]===`r`:h.rows.value.top[0]===`l`),ge=x(()=>R.value?h.rows.value.bottom[2]===`r`:h.rows.value.bottom[0]===`l`),J=x(()=>{let e={};return h.header.space&&!q.value&&(w.value?e.top=`${h.header.offset}px`:h.header.space&&(e.top=`${h.header.size}px`)),h.footer.space&&!ge.value&&(w.value?e.bottom=`${h.footer.offset}px`:h.footer.space&&(e.bottom=`${h.footer.size}px`)),e}),ye=x(()=>{let e={width:`${S.value}px`,transform:`translateX(${he.value}px)`};return y.value?e:Object.assign(e,J.value)}),be=x(()=>`q-drawer__content fit `+(h.isContainer.value?`overflow-auto`:`scroll`)),xe=x(()=>`q-drawer q-drawer--${e.side}`+(H.value?` q-drawer--mini-animate`:``)+(e.bordered?` q-drawer--bordered`:``)+(f()?` q-drawer--dark q-dark`:``)+(V.value?` no-transition`:T.value?``:` q-layout--prevent-focus`)+(y.value?` fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding`:` q-drawer--${b.value?`mini`:`standard`}`+(w.value||!E.value?` fixed`:``)+(e.overlay||e.miniToOverlay?` q-drawer--on-top`:``)+(q.value?` q-drawer--top-padding`:``))),Se=x(()=>{let t=u.lang.rtl?e.side:U.value;return[[_e,De,void 0,{[t]:!0,mouse:!0}]]}),Ce=x(()=>{let t=u.lang.rtl?U.value:e.side;return[[_e,y.value&&!e.noSwipeClose?Ae:void 0,void 0,{[t]:!0,mouse:!0}]]}),we=x(()=>{let t=u.lang.rtl?U.value:e.side;return[[_e,T.value&&!e.noSwipeBackdrop?Ae:void 0,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0}]]});function Y(){ke(y,e.behavior===`mobile`||e.behavior!==`desktop`&&h.totalWidth.value<=e.breakpoint)}r(y,t=>{t?(g=T.value,T.value&&M(!1)):T.value?(X(0),Z(0),je()):!e.overlay&&e.behavior!==`mobile`&&g!==!1&&j(!1)}),r(()=>e.side,(e,t)=>{h.instances[t]===L&&(h.instances[t]=void 0,h[t].space=!1,h[t].offset=0),h.instances[e]=L,h[e].size=S.value,h[e].space=E.value,h[e].offset=W.value}),r(h.totalWidth,()=>{(h.isContainer.value||!document.qScrollPrevented)&&Y()}),r(()=>e.behavior+e.breakpoint,Y),r(h.isContainer,e=>{T.value&&p(!e),e&&Y()}),r(h.scrollbarWidth,()=>{X(T.value?0:void 0)}),r(W,e=>{Q(`offset`,e)}),r(E,e=>{a(`onLayout`,e),Q(`space`,e)}),r(R,()=>{X()}),r(S,t=>{X(),$(e.miniToOverlay,t)}),r(()=>e.miniToOverlay,e=>{$(e,S.value)}),r(()=>u.lang.rtl,()=>{X()}),r(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue&&(Ee(),h.animate())}),r(b,e=>{a(`miniState`,e)});function X(e){e===void 0?t(()=>{e=T.value?0:S.value,X(z.value*e)}):(h.isContainer.value&&R.value&&(y.value||Math.abs(e)===S.value)&&(e+=z.value*h.scrollbarWidth.value),he.value=e)}function Z(e){B.value=e}function Te(e){let t=e?`remove`:h.isContainer.value?``:`add`;t!==``&&document.body.classList[t](`q-body--drawer-toggle`)}function Ee(){_!==null&&clearTimeout(_),c.proxy&&c.proxy.$el&&c.proxy.$el.classList.add(`q-drawer--mini-animate`),H.value=!0,_=setTimeout(()=>{_=null,H.value=!1,c?.proxy?.$el?.classList.remove(`q-drawer--mini-animate`)},150)}function De(e){if(T.value)return;let t=S.value,n=ve(e.distance.x,0,t);if(e.isFinal){n>=Math.min(75,t)?j():(h.animate(),Z(0),X(z.value*t)),V.value=!1;return}X((u.lang.rtl?!R.value:R.value)?Math.max(t-n,0):Math.min(0,n-t)),Z(ve(n/t,0,1)),e.isFirst&&(V.value=!0)}function Ae(t){if(!T.value)return;let n=S.value,r=t.direction===e.side,i=(u.lang.rtl?!r:r)?ve(t.distance.x,0,n):0;if(t.isFinal){Math.abs(i)<Math.min(75,n)?(h.animate(),Z(1),X(0)):M(),V.value=!1;return}X(z.value*i),Z(ve(1-i/n,0,1)),t.isFirst&&(V.value=!0)}function je(){p(!1),Te(!0)}function Q(t,n){h.update(e.side,t,n)}function $(t,n){Q(`size`,t?e.miniWidth:n)}return h.instances[e.side]=L,$(e.miniToOverlay,S.value),Q(`space`,E.value),Q(`offset`,W.value),e.showIfAbove&&!e.modelValue&&T.value&&e[`onUpdate:modelValue`]!==void 0&&a(`update:modelValue`,!0),ne(()=>{a(`onLayout`,E.value),a(`miniState`,b.value),r(se,I,{immediate:!0}),g=e.showIfAbove;let n=()=>{(T.value?ie:ae)(!1,!0)};if(h.totalWidth.value!==0){t(n);return}v=r(h.totalWidth,()=>{v(),v=void 0,!T.value&&e.showIfAbove&&!y.value?j(!1):n()})}),n(()=>{v?.(),ce(F),_!==null&&(clearTimeout(_),_=null),T.value&&je(),h.instances[e.side]===L&&(h.instances[e.side]=void 0,Q(`size`,0),Q(`offset`,0),Q(`space`,!1))}),()=>{let t=[];y.value&&(e.noSwipeOpen||t.push(l(C(`div`,{key:`open`,class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":`true`}),Se.value)),t.push(l(C(`div`,{ref:`backdrop`,class:G.value,style:K.value,"aria-hidden":`true`,onClick:M}),we.value)));let n={},r={};for(let e in o)e===`role`||e.startsWith(`aria-`)?n[e]=o[e]:r[e]=o[e];let a=b.value&&i.mini!==void 0,s=[C(`div`,{...r,key:String(a),class:[be.value,o.class]},a?i.mini():A(i.default))];return e.elevated&&T.value&&s.push(C(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),t.push(l(C(`aside`,{ref:`content`,class:xe.value,style:ye.value,...n},s),Ce.value)),C(`div`,{class:`q-drawer-container`},t)}}}),je={class:`fit column no-wrap`},Q=h({__name:`MainMenu`,props:{modelValue:{type:[Boolean,null],required:!0},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let t=T(e,`modelValue`),{t:n}=B(),{isDark:r,toggleTheme:i}=U();return(e,o)=>(a(),_(Ae,{modelValue:t.value,"onUpdate:modelValue":o[0]||=e=>t.value=e,"show-if-above":``,bordered:``,width:220,dark:g(r)},{default:c(()=>[p(`div`,je,[v(ge,{class:`col scroll`},{default:c(()=>[l((a(),_(G,{clickable:``,to:{path:`/`}},{default:c(()=>[v(J,{avatar:``},{default:c(()=>[v(O,{name:`compare_arrows`})]),_:1}),v(J,null,{default:c(()=>[y(f(g(n)(`nav.changes`)),1)]),_:1})]),_:1})),[[j]]),l((a(),_(G,{clickable:``,to:{path:`/reviews`}},{default:c(()=>[v(J,{avatar:``},{default:c(()=>[v(O,{name:`rate_review`})]),_:1}),v(J,null,{default:c(()=>[y(f(g(n)(`nav.reviews`)),1)]),_:1})]),_:1})),[[j]])]),_:1}),v(ge,{bordered:``,dark:g(r)},{default:c(()=>[l((a(),_(G,{clickable:``,onClick:g(i)},{default:c(()=>[v(J,{avatar:``},{default:c(()=>[v(O,{name:g(r)?`light_mode`:`dark_mode`},null,8,[`name`])]),_:1}),v(J,null,{default:c(()=>[y(f(g(r)?g(n)(`theme.switchToLight`):g(n)(`theme.switchToDark`)),1)]),_:1})]),_:1},8,[`onClick`])),[[j]])]),_:1},8,[`dark`])])]),_:1},8,[`modelValue`,`dark`]))}}),$=h({__name:`MainLayout`,setup(e){let t=s(!1);function n(){t.value=!t.value}return(e,r)=>{let o=i(`router-view`);return a(),_(Ce,{view:`hHh lpr fFf`},{default:c(()=>[v(De,{onToggleDrawer:n}),v(Q,{modelValue:t.value,"onUpdate:modelValue":r[0]||=e=>t.value=e},null,8,[`modelValue`]),v(xe,null,{default:c(()=>[v(o)]),_:1})]),_:1})}}});export{$ as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Q as e,Z as t}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{m as n}from"./event-D0kaqRwq.js";var r=e(!1),i,a=512;function o(e){return typeof e==`string`?e.slice(0,a).toLowerCase():``}var s=/(?:^|\s)version\/([\w.]+)/,c=/(?:^|\s)applewebkit\/[\w.]+/,l=/(?:^|\s)safari\/[\w.]+/;function u(e){let t=s.exec(e);return t!==null&&c.test(e)&&l.test(e)?{browser:`safari`,version:t[1]}:null}var d=/(edg|edga|edgios)\/([\w.]+)/,f=/(opr)[\/]([\w.]+)/,p=/(vivaldi)[\/]([\w.]+)/,m=/(chrome|crios)[\/]([\w.]+)/,h=/(firefox|fxios)[\/]([\w.]+)/,g=/(webkit)[\/]([\w.]+)/;function _(e,t){let n=d.exec(e)||f.exec(e)||p.exec(e)||m.exec(e);if(n===null){let r=u(e);if(r!==null)return{...r,platform:t[0]||``};n=h.exec(e)||g.exec(e)||[]}return{browser:n[5]||n[3]||n[1]||``,version:n[4]||n[2]||`0`,platform:t[0]||``}}var v=/(ipad)/,y=/(ipod)/,b=/(iphone)/,x=/(android)/,S=/(win)/,C=/(mac)/,w=/(linux)/,T=/(cros)/;function E(e){return v.exec(e)||y.exec(e)||b.exec(e)||x.exec(e)||S.exec(e)||C.exec(e)||w.exec(e)||T.exec(e)||[]}var D=`ontouchstart`in window||window.navigator.maxTouchPoints>0;function O(e){let t=o(e),n=_(t,E(t)),a={mobile:!1,desktop:!1,cordova:!1,capacitor:!1,nativeMobile:!1,electron:!1,bex:!1,linux:!1,mac:!1,win:!1,cros:!1,chrome:!1,firefox:!1,opera:!1,safari:!1,vivaldi:!1,edge:!1,webkit:!1,android:!1,ios:!1,ipad:!1,iphone:!1,ipod:!1};n.browser&&(a[n.browser]=!0,a.version=n.version,a.versionNumber=Number.parseInt(n.version,10)),n.platform&&(a[n.platform]=!0);let s=a.android||a.ios||a.ipad||a.iphone||a.ipod;if(s===!0||t.includes(`mobile`)?a.mobile=!0:a.desktop=!0,a.edga||a.edgios||a.edg?(a.edge=!0,n.browser=`edge`):a.crios?(a.chrome=!0,n.browser=`chrome`):a.fxios&&(a.firefox=!0,n.browser=`firefox`),(a.ipod||a.ipad||a.iphone)&&(a.ios=!0),a.vivaldi&&=(n.browser=`vivaldi`,!0),(a.chrome||a.opr||a.safari||a.vivaldi||a.mobile&&!a.ios&&!s)&&(a.webkit=!0),a.opr&&(n.browser=`opera`,a.opera=!0),a.name=n.browser,a.platform=n.platform,t.includes(`electron`))a.electron=!0;else if(document.location.href.includes(`-extension://`))a.bex=!0;else{if(window.Capacitor===void 0?(window._cordovaNative!==void 0||window.cordova!==void 0)&&(a.cordova=!0,a.nativeMobile=!0,a.nativeMobileWrapper=`cordova`):(a.capacitor=!0,a.nativeMobile=!0,a.nativeMobileWrapper=`capacitor`),r.value&&(i={is:{...a}}),D&&a.mac&&(a.desktop&&a.safari||a.nativeMobile&&!a.android&&!a.ios&&!a.ipad)){delete a.mac,delete a.desktop;let e=Math.min(window.innerHeight,window.innerWidth)>414?`ipad`:`iphone`;Object.assign(a,{mobile:!0,ios:!0,platform:e,[e]:!0})}!a.mobile&&window.navigator.userAgentData&&window.navigator.userAgentData.mobile&&(delete a.desktop,a.mobile=!0)}return a}var k=navigator.userAgent,A={has:{touch:!1,webStorage:!1},within:{iframe:!1}},j={userAgent:k,is:O(k),has:{touch:D},within:{iframe:window.self!==window.top}},M={install(e){let{$q:n}=e;r.value?(e.onSSRHydrated.push(()=>{Object.assign(n.platform,j),r.value=!1}),n.platform=t(this)):n.platform=this}};{let e;n(j.has,`webStorage`,()=>{if(e!==void 0)return e;try{if(window.localStorage)return e=!0,!0}catch{}return e=!1,!1}),Object.assign(M,j),r.value&&(Object.assign(M,i,A),i=null)}export{j as n,r,M as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{E as e,L as t,R as n,V as r,W as i,_ as a,_t as o,at as s,b as c,ct as l,dt as u,et as d,f,ft as p,g as m,gt as h,ht as g,it as _,j as v,lt as y,m as b,mt as x,n as S,o as C,ot as w,pt as T,r as E,s as D,st as O,t as ee,tt as te,ut as k,v as A,xt as ne}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{d as j,f as M,i as N,l as re,o as ie,s as ae,u as P}from"./event-D0kaqRwq.js";var oe=void 0,se=typeof window<`u`&&window.trustedTypes;if(se)try{oe=se.createPolicy(`vue`,{createHTML:e=>e})}catch{}var ce=oe?e=>oe.createHTML(e):e=>e,le=`http://www.w3.org/2000/svg`,ue=`http://www.w3.org/1998/Math/MathML`,F=typeof document<`u`?document:null,de=F&&F.createElement(`template`),fe={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?F.createElementNS(le,e):t===`mathml`?F.createElementNS(ue,e):n?F.createElement(e,{is:n}):F.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>F.createTextNode(e),createComment:e=>F.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>F.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),i!==a&&(i=i.nextSibling););else{de.innerHTML=ce(r===`svg`?`<svg>${e}</svg>`:r===`mathml`?`<math>${e}</math>`:e);let i=de.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},I=`transition`,L=`animation`,R=Symbol(`_vtc`),pe={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},me=O({},S,pe),he=(e=>(e.displayName=`Transition`,e.props=me,e))((e,{slots:t})=>A(ee,_e(e),t)),z=(e,t=[])=>{k(e)?e.forEach(e=>e(...t)):e&&e(...t)},ge=e=>e?k(e)?e.some(e=>e.length>1):e.length>1:!1;function _e(e){let t={};for(let n in e)n in pe||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:c=a,appearActiveClass:l=o,appearToClass:u=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=ve(i),h=m&&m[0],g=m&&m[1],{onBeforeEnter:_,onEnter:v,onEnterCancelled:y,onLeave:b,onLeaveCancelled:x,onBeforeAppear:S=_,onAppear:C=v,onAppearCancelled:w=y}=t,T=(e,t,n,r)=>{e._enterCancelled=r,V(e,t?u:s),V(e,t?l:o),n&&n()},E=(e,t)=>{e._isLeaving=!1,V(e,d),V(e,p),V(e,f),t&&t()},D=e=>(t,n)=>{let i=e?C:v,o=()=>T(t,e,n);z(i,[t,o]),be(()=>{V(t,e?c:a),B(t,e?u:s),ge(i)||Se(t,r,h,o)})};return O(t,{onBeforeEnter(e){z(_,[e]),B(e,a),B(e,o)},onBeforeAppear(e){z(S,[e]),B(e,c),B(e,l)},onEnter:D(!1),onAppear:D(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>E(e,t);B(e,d),e._enterCancelled?(B(e,f),Ee(e)):(Ee(e),B(e,f)),be(()=>{e._isLeaving&&(V(e,d),B(e,p),ge(b)||Se(e,r,g,n))}),z(b,[e,n])},onEnterCancelled(e){T(e,!1,void 0,!0),z(y,[e])},onAppearCancelled(e){T(e,!0,void 0,!0),z(w,[e])},onLeaveCancelled(e){E(e),z(x,[e])}})}function ve(e){if(e==null)return null;if(T(e))return[ye(e.enter),ye(e.leave)];{let t=ye(e);return[t,t]}}function ye(e){return ne(e)}function B(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[R]||(e[R]=new Set)).add(t)}function V(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[R];n&&(n.delete(t),n.size||(e[R]=void 0))}function be(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var xe=0;function Se(e,t,n,r){let i=e._endId=++xe,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Ce(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u<c&&d()},s+1),e.addEventListener(l,f)}function Ce(e,t){let n=window.getComputedStyle(e),r=e=>(n[e]||``).split(`, `),i=r(`${I}Delay`),a=r(`${I}Duration`),o=we(i,a),s=r(`${L}Delay`),c=r(`${L}Duration`),l=we(s,c),u=null,d=0,f=0;t===I?o>0&&(u=I,d=o,f=a.length):t===L?l>0&&(u=L,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?I:L:null,f=u?u===I?a.length:c.length:0);let p=u===I&&/\b(?:transform|all)(?:,|$)/.test(r(`${I}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function we(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((t,n)=>Te(t)+Te(e[n])))}function Te(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function Ee(e){return(e?e.ownerDocument:document).body.offsetHeight}function De(e,t,n){let r=e[R];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var H=Symbol(`_vod`),Oe=Symbol(`_vsh`),ke={name:`show`,beforeMount(e,{value:t},{transition:n}){e[H]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):U(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),U(e,!0),r.enter(e)):r.leave(e,()=>{U(e,!1)}):U(e,t))},beforeUnmount(e,{value:t}){U(e,t)}};function U(e,t){e.style.display=t?e[H]:`none`,e[Oe]=!t}var Ae=Symbol(``),je=/(?:^|;)\s*display\s*:/;function Me(e,t,n){let r=e.style,i=h(n),a=!1;if(n&&!i){if(t){if(h(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??G(r,t,``)}else for(let e in t)n[e]??G(r,e,``)}for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?G(r,i,``):Ie(e,i,!h(t)&&t?t[i]:void 0,o)||G(r,i,o)}}else if(i){if(t!==n){let e=r[Ae];e&&(n+=`;`+e),r.cssText=n,a=je.test(n)}}else t&&e.removeAttribute(`style`);H in e&&(e[H]=a?r.display:``,e[Oe]&&(r.display=`none`))}var W=/\s*!important$/;function G(e,t,n){if(k(n))n.forEach(n=>G(e,t,n));else if(n??=``,t.startsWith(`--`))W.test(n)?e.setProperty(t,n.replace(W,``),`important`):e.setProperty(t,n);else{let r=Fe(e,t);W.test(n)?e.setProperty(l(r),n.replace(W,``),`important`):e[r]=n}}var Ne=[`Webkit`,`Moz`,`ms`],Pe={};function Fe(e,t){let n=Pe[t];if(n)return n;let r=s(t);if(r!==`filter`&&r in e)return Pe[t]=r;r=w(r);for(let n=0;n<Ne.length;n++){let i=Ne[n]+r;if(i in e)return Pe[t]=i}return t}function Ie(e,t,n,r){return e.tagName===`TEXTAREA`&&(t===`width`||t===`height`)&&h(r)&&n===r}var Le=`http://www.w3.org/1999/xlink`;function Re(e,t,n,r,i,a=g(t)){r&&t.startsWith(`xlink:`)?n==null?e.removeAttributeNS(Le,t.slice(6,t.length)):e.setAttributeNS(Le,t,n):n==null||a&&!y(n)?e.removeAttribute(t):e.setAttribute(t,a?``:o(n)?String(n):n)}function ze(e,t,n,r,i){if(t===`innerHTML`||t===`textContent`){n!=null&&(e[t]=t===`innerHTML`?ce(n):n);return}let a=e.tagName;if(t===`value`&&a!==`PROGRESS`&&!a.includes(`-`)){let r=a===`OPTION`?e.getAttribute(`value`)||``:e.value,i=n==null?e.type===`checkbox`?`on`:``:String(n);(r!==i||!(`_value`in e))&&(e.value=i),n??e.removeAttribute(t),e._value=n;return}let o=!1;if(n===``||n==null){let r=typeof e[t];r===`boolean`?n=y(n):n==null&&r===`string`?(n=``,o=!0):r===`number`&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(i||t)}function Be(e,t,n,r){e.addEventListener(t,n,r)}function Ve(e,t,n,r){e.removeEventListener(t,n,r)}var He=Symbol(`_vei`);function Ue(e,t,n,r,i=null){let a=e[He]||(e[He]={}),o=a[t];if(r&&o)o.value=r;else{let[n,s]=Ke(t);r?Be(e,n,a[t]=Xe(r,i),s):o&&(Ve(e,n,o,s),a[t]=void 0)}}var We=/(Once|Passive|Capture)$/,Ge=/^on:?(?:Once|Passive|Capture)$/;function Ke(e){let t,n;for(;(n=e.match(We))&&!Ge.test(e);)t||={},e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===`:`?e.slice(3):l(e.slice(2)),t]}var qe=0,Je=Promise.resolve(),Ye=()=>qe||=(Je.then(()=>qe=0),Date.now());function Xe(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(k(r)){let n=e.stopImmediatePropagation;e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0};let i=r.slice(),a=[e];for(let n=0;n<i.length&&!e._stopped;n++){let e=i[n];e&&C(e,t,5,a)}}else C(r,t,5,[e])};return n.value=e,n.attached=Ye(),n}var Ze=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Qe=(e,t,n,r,i,a)=>{let o=i===`svg`;t===`class`?De(e,r,o):t===`style`?Me(e,n,r):x(t)?p(t)||Ue(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),1):t[0]===`^`?(t=t.slice(1),0):$e(e,t,r,o))?(ze(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&Re(e,t,r,o,a,t!==`value`)):e._isVueCE&&(et(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!h(r)))?ze(e,s(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),Re(e,t,r,o))};function $e(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&Ze(t)&&u(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return Ze(t)&&h(n)?!1:t in e}function et(e,t){let n=e._def.props;if(!n)return!1;let r=s(t);return Array.isArray(n)?n.some(e=>s(e)===r):Object.keys(n).some(e=>s(e)===r)}var tt=new WeakMap,nt=new WeakMap,K=Symbol(`_moveCb`),rt=Symbol(`_enterCb`),it=(e=>(delete e.props.mode,e))({name:`TransitionGroup`,props:O({},me,{tag:String,moveClass:String}),setup(e,{slots:i}){let o=m(),s=r(),c,l;return v(()=>{if(!c.length)return;let t=e.moveClass||`${e.name||`v`}-move`;if(!lt(c[0].el,o.vnode.el,t)){c=[];return}c.forEach(at),c.forEach(ot);let n=c.filter(st);Ee(o.vnode.el),n.forEach(e=>{let n=e.el,r=n.style;B(n,t),r.transform=r.webkitTransform=r.transitionDuration=``;let i=n[K]=e=>{e&&e.target!==n||(!e||e.propertyName.endsWith(`transform`))&&(n.removeEventListener(`transitionend`,i),n[K]=null,V(n,t))};n.addEventListener(`transitionend`,i)}),c=[]}),()=>{let r=te(e),u=_e(r),d=r.tag||E;if(c=[],l)for(let e=0;e<l.length;e++){let r=l[e];r.el&&r.el instanceof Element&&!r.el[Oe]&&(c.push(r),n(r,t(r,u,s,o)),tt.set(r,ct(r.el)))}l=i.default?a(i.default()):[];for(let e=0;e<l.length;e++){let r=l[e];r.key!=null&&n(r,t(r,u,s,o))}return b(d,null,l)}}});function at(e){let t=e.el;t[K]&&t[K](),t[rt]&&t[rt]()}function ot(e){nt.set(e,ct(e.el))}function st(e){let t=tt.get(e),n=nt.get(e),r=t.left-n.left,i=t.top-n.top;if(r||i){let t=e.el,n=t.style,a=t.getBoundingClientRect(),o=1,s=1;return t.offsetWidth&&(o=a.width/t.offsetWidth),t.offsetHeight&&(s=a.height/t.offsetHeight),(!Number.isFinite(o)||o===0)&&(o=1),(!Number.isFinite(s)||s===0)&&(s=1),Math.abs(o-1)<.01&&(o=1),Math.abs(s-1)<.01&&(s=1),n.transform=n.webkitTransform=`translate(${r/o}px,${i/s}px)`,n.transitionDuration=`0s`,e}}function ct(e){let t=e.getBoundingClientRect();return{left:t.left,top:t.top}}function lt(e,t,n){let r=e.cloneNode(),i=e[R];i&&i.forEach(e=>{e.split(/\s+/).forEach(e=>e&&r.classList.remove(e))}),n.split(/\s+/).forEach(e=>e&&r.classList.add(e)),r.style.display=`none`;let a=t.nodeType===1?t:t.parentNode;a.appendChild(r);let{hasTransform:o}=Ce(r);return a.removeChild(r),o}var ut=[`ctrl`,`shift`,`alt`,`meta`],dt={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>ut.some(n=>e[`${n}Key`]&&!t.includes(n))},ft=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e<t.length;e++){let r=dt[t[e]];if(r&&r(n,t))return}return e(n,...r)}))},pt={esc:`escape`,space:` `,up:`arrow-up`,left:`arrow-left`,right:`arrow-right`,down:`arrow-down`,delete:`backspace`},mt=(e,t)=>{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=l(n.key);if(t.some(e=>e===r||pt[e]===r))return e(n)}))},ht=O({patchProp:Qe},fe),gt;function _t(){return gt||=f(ht)}var vt=((...e)=>{let t=_t().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=bt(e);if(!r)return;let i=t._component;!u(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,yt(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function yt(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function bt(e){return h(e)?document.querySelector(e):e}var xt=!1;function St(e){xt=e.isComposing===!0}function Ct(e){return xt||e!==Object(e)||e.isComposing||e.qKeyEvent}function q(e,t){return!Ct(e)&&(Array.isArray(t)?t.includes(e.keyCode):t===e.keyCode)}var wt=`_q_l_`,Tt=`_q_li_`,Et=`_q_pc_`,Dt=`_q_f_`,Ot=`_q_fo_`,kt=`_q_tabs_`;function At(){}var jt=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n};function Mt(){return m()?.appContext.config.globalProperties.$q??c(`_q_`)}function Nt(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Pt(e){return e.appContext.config.globalProperties.$router!==void 0}function Ft(e){return e.isUnmounted===!0||e.isDeactivated===!0}function It(e,t){let n=e.style;for(let e in t)n[e]=t[e]}function Lt(e){if(e==null)return;if(typeof e==`string`)try{return document.querySelector(e)||void 0}catch{return}let t=_(e);if(t)return t.$el||t}function Rt(e,t){if(e==null||e.contains(t))return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function zt(e,t){return e===void 0?t:e()||t}function Bt(e,t){if(e!==void 0){let t=e();if(t!=null)return[...t]}return t}function J(e,t){return e===void 0?t:t.concat(e())}function Vt(e,t){return e===void 0?t:t===void 0?e():t.concat(e())}var Ht={xs:18,sm:24,md:32,lg:38,xl:46},Ut={size:String};function Wt(e){let t=new Map;return n=>{if(n===void 0)return null;let r=t.get(n);return r===void 0&&(t.size>500&&t.clear(),r={fontSize:n in e?`${e[n]}px`:n},t.set(n,r)),r}}var Gt=Wt(Ht),Kt=`0 0 24 24`,qt={"mdi-":`mdi `,"icon-":``,"fa-":``,"bt-":`bt `,"eva-":`eva `,"iconfont ":``,"ti-":`themify-icon `,"bi-":`bootstrap-icons `,"i-":``},Jt=Object.keys(qt),Yt={o_:`-outlined`,r_:`-round`,s_:`-sharp`},Xt={sym_o_:`-outlined`,sym_r_:`-rounded`,sym_s_:`-sharp`};function Zt(e){let t=e.codePointAt(0);if(t!==102&&t!==108||e.codePointAt(1)!==97)return!1;let n=e.codePointAt(2);return n===32||e.codePointAt(3)===32&&(n===115||n===114||n===108||n===98||n===100||n===107)}function Qt(e){return e===32||e>=9&&e<=13||e===160||e===5760||e>=8192&&e<=8202||e===8232||e===8233||e===8239||e===8287||e===12288||e===65279}function $t(e){let t=e.codePointAt(0);if(t!==77&&t!==109)return!1;let n=1,r=e.codePointAt(n);return Qt(r)&&(r=e.codePointAt(++n)),(r===43||r===45)&&(r=e.codePointAt(++n)),r===46&&(r=e.codePointAt(++n)),r>=48&&r<=57}var en={cls:``},tn={"aria-hidden":`true`};function nn(e,t){if(e.startsWith(`img:`))return{cls:``,img:!0,src:e.slice(4)};if(e.startsWith(`svguse:`)){let[t,n]=e.split(`|`);return{cls:``,svguse:!0,src:t.slice(7),viewBox:n||Kt}}if(e.startsWith(`ion-`))return{cls:` ionicons `+(e.startsWith(`ion-md`)||e.startsWith(`ion-ios`)||e.startsWith(`ion-logo`)?e:`ion-${t?`ios`:`md`}${e.slice(3)}`)};if(e.startsWith(`sym_`)){let t=Xt[e.slice(0,6)];if(t!==void 0)return{cls:` notranslate material-symbols`+t,content:e.slice(6),ligature:!0}}for(let t of Jt)if(e.startsWith(t))return{cls:` ${qt[t]}${e}`};if(Zt(e))return{cls:` `+e};if($t(e)){let[t,n]=e.split(`|`);return{cls:``,svg:!0,viewBox:n||Kt,nodes:t.split(`&&`).map(e=>{let[t,n,r]=e.split(`@@`);return{d:t,style:n,transform:r}})}}let n=` notranslate material-icons`,r=Yt[e.slice(0,2)];return r===void 0?{cls:n,content:e,ligature:!0}:{cls:n+r,content:e.slice(2),ligature:!0}}var rn=new Map,an=new Map;function on(e,t){let n=t?an:rn,r=n.get(e);return r===void 0&&(n.size>1e3&&n.clear(),r=nn(e,t),n.set(e,r)),r}var sn=new WeakMap;function cn(e,t,n){let r=sn.get(e);r===void 0&&(r=new Map,sn.set(e,r));let i=(n===!0?`ios;`:`md;`)+t,a=r.get(i);if(a===void 0){r.size>1e3&&r.clear();let o=e(t);if(o===void 0)a=on(t,n);else if(o.icon!==void 0)a=o.icon===`none`||!o.icon?en:on(o.icon,n);else{let{cls:e,content:t}=o;a={cls:e===void 0?``:` `+e,content:t,ligature:t!==void 0&&t.trim().length!==0}}r.set(i,a)}return a}var ln=j({name:`QIcon`,props:{...Ut,tag:{type:String,default:`i`},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){let n=Mt(),r=n.platform.is.ios,i=null,a=en,o=null;return()=>{let s=e.name;(s!==i||n.iconMapFn!==o)&&(i=s,o=n.iconMapFn,a=s===`none`||!s?en:o===null?on(s,r):cn(o,s,r));let c=a,l={"aria-hidden":`true`,class:`q-icon`+(e.left?` on-left`:``)+(e.right?` on-right`:``)+(e.color===void 0?``:` text-${e.color}`)+c.cls};return e.size!==void 0&&(l.style=Gt(e.size)),c.content===void 0?c.img?A(e.tag,l,J(t.default,[A(`img`,{src:c.src})])):c.svg?A(e.tag,l,J(t.default,[A(`svg`,{viewBox:c.viewBox},c.nodes.map(e=>A(`path`,e)))])):c.svguse?A(e.tag,l,J(t.default,[A(`svg`,{viewBox:c.viewBox},[A(`use`,{"xlink:href":c.src})])])):A(e.tag,l,zt(t.default)):A(e.tag,l,J(t.default,[c.ligature?A(`span`,tn,c.content):c.content]))}}}),un={size:{type:[String,Number],default:`1em`},color:String};function dn(e){return e in Ht?`${Ht[e]}px`:e}function fn(e,t){return`q-spinner`+(t?` q-spinner-${t}`:``)+(e?` text-${e}`:``)}var pn=j({name:`QSpinner`,props:{...un,thickness:{type:Number,default:5}},setup(e){return()=>{let t=dn(e.size);return A(`svg`,{class:fn(e.color,`mat`),width:t,height:t,viewBox:`0 0 50 50`},[A(`circle`,{class:`path`,cx:`25`,cy:`25`,r:`20`,fill:`none`,stroke:`currentColor`,"stroke-width":e.thickness,"stroke-miterlimit":`10`})])}}}),mn=50,hn=100,gn=300,{passive:_n}=N,vn=[[],[[`click`,bn],[`keyup`,xn]],[[`pointerdown`,bn],[`pointercancel`,Sn],[`pointerleave`,Sn],[`keydown`,xn]]];function yn(e,t,n,r){n.stop&&re(e);let i=n.color,a=n.center||r===!0,o=document.createElement(`span`),s=document.createElement(`span`),c=ie(e),{left:l,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.hypot(d,f),m=p/2,h=`${(d-p)/2}px`,g=a?h:`${c.left-l-m}px`,_=`${(f-p)/2}px`,v=a?_:`${c.top-u-m}px`;s.className=`q-ripple__inner`,It(s,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${g},${v},0) scale3d(.2,.2,1)`,opacity:0}),o.className=`q-ripple${i?` text-`+i:``}`,o.setAttribute(`dir`,`ltr`),o.append(s),t.append(o);let y,b=0,x=()=>{o.remove();let e=n.ripples.indexOf(w);e!==-1&&n.ripples.splice(e,1)},S=()=>{b=2,s.classList.remove(`q-ripple__inner--enter`),s.classList.add(`q-ripple__inner--leave`),s.style.opacity=0,y=setTimeout(x,275)},C=()=>{b=1,s.classList.add(`q-ripple__inner--enter`),s.style.transform=`translate3d(${h},${_},0) scale3d(1,1,1)`,s.style.opacity=.2,y=setTimeout(S,250)},w={pointerId:e.type===`pointerdown`?e.pointerId:null,abort(){clearTimeout(y),o.remove()},cancel(){w.pointerId=null,b!==2&&(clearTimeout(y),b===0?x():S())}};n.ripples.push(w),y=setTimeout(C,e.type===`pointerdown`&&e.pointerType===`touch`?hn:mn)}function bn(e){if(!e.qSkipRipple){let t=e.currentTarget;yn(e,t,t.__qripple,e.qKeyEvent===!0)}}function xn(e){let t=e.currentTarget,n=t.__qripple;if(!e.qSkipRipple&&q(e,n.keyCodes)){let r=Date.now();r-n.keyTime>=gn&&(n.keyTime=r,yn(e,t,n,!0))}}function Sn(e){if(e.type===`pointerleave`&&e.buttons===0)return;let{ripples:t}=e.currentTarget.__qripple;for(let n=t.length-1;n>=0;n--){let r=t[n];r.pointerId===e.pointerId&&r.cancel()}}function Cn(e,t){return e!==t&&(e.early!==t.early||e.stop!==t.stop||e.center!==t.center)}function wn(e,{modifiers:t,value:n,arg:r}){let i={...e.cfg,...t,...n},a=i.keyCodes||13;e.arg=r,e.modifiers=t,e.early=i.early===!0,e.stop=i.stop===!0,e.center=i.center===!0,e.color=i.color||r,e.keyCodes=Array.isArray(a)?a.flat():a}function Tn(e,t){let n=t.enabled?t.early?2:1:0;if(n!==t.bound){for(let[n,r]of vn[t.bound])e.removeEventListener(n,r,_n);for(let[t,r]of vn[n])e.addEventListener(t,r,_n);t.bound=n}}var En=M({name:`ripple`,beforeMount(e,t){let n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;let r={cfg:n.ripple,enabled:t.value!==!1,arg:void 0,modifiers:void 0,early:!1,stop:!1,center:!1,color:void 0,keyCodes:13,keyTime:0,bound:0,ripples:[]};wn(r,t),e.__qripple=r,Tn(e,r)},updated(e,t){let n=e.__qripple;if(n===void 0)return;let{value:r,oldValue:i,arg:a,modifiers:o}=t;n.enabled=r!==!1,n.enabled&&(r!==i||a!==n.arg||Cn(o,n.modifiers))&&wn(n,t),Tn(e,n)},beforeUnmount(e){let t=e.__qripple;t!==void 0&&(t.ripples.forEach(e=>{e.abort()}),t.enabled=!1,Tn(e,t),e.__qripple=void 0)}}),Dn={left:`start`,center:`center`,right:`end`,between:`between`,around:`around`,evenly:`evenly`,stretch:`stretch`},On=Object.keys(Dn),kn={align:{type:String,validator:e=>On.includes(e)}};function An(e){return()=>{let t=e.align===void 0?e.vertical?`stretch`:`left`:e.align;return`${e.vertical?`items`:`justify`}-${Dn[t]}`}}function jn(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}function Mn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Nn(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!Array.isArray(i)||i.length!==r.length||r.some((e,t)=>e!==i[t]))return!1}return!0}function Pn(e,t){return Array.isArray(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function Fn(e,t){return Array.isArray(e)?Pn(e,t):Array.isArray(t)?Pn(t,e):e===t}function In(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(!Fn(e[n],t[n]))return!1;return!0}var Ln={to:[String,Object],replace:Boolean,href:String,target:String,disable:Boolean},Rn={...Ln,exact:Boolean,activeClass:{type:String,default:`q-router-link--active`},exactActiveClass:{type:String,default:`q-router-link--exact-active`}},zn={},Bn={value:!1},Vn={value:null},Hn={value:``};function Un({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){let n=m(),{props:r,proxy:i,emit:a}=n,o=D(()=>!r.disable&&r.href!==void 0);if(!Pt(n))return{hasRouterLink:Bn,hasHrefLink:o,hasLink:o,linkTag:D(()=>r.type===`a`||o.value?`a`:r.tag||e||`div`),resolvedLink:Vn,linkIsActive:Bn,linkIsExactActive:Bn,linkClass:Hn,linkAttrs:D(()=>o.value?{href:r.href,target:r.target}:zn),getLink:()=>null,navigateToRouterLink(e){return e.preventDefault(),Promise.resolve(!1)},navigateOnClick(e){a(`click`,e)}};let s=D(t?()=>!r.disable&&!o.value&&r.to!==void 0&&r.to!==null&&r.to!==``:()=>!o.value&&r.to!==void 0&&r.to!==null&&r.to!==``),c=D(()=>s.value?v(r.to):null),l=D(()=>c.value!==null),u=D(()=>o.value||l.value),d=D(()=>r.type===`a`||u.value?`a`:r.tag||e||`div`),f=D(()=>o.value?{href:r.href,target:r.target}:l.value?{href:c.value.href,target:r.target}:zn),p=D(()=>{if(!l.value)return-1;let{matched:e}=c.value,{length:t}=e,n=e[t-1];if(n===void 0)return-1;let r=i.$route.matched;if(r.length===0)return-1;let a=r.findIndex(Mn.bind(null,n));if(a!==-1)return a;let o=jn(e[t-2]);return t>1&&jn(n)===o&&r.at(-1).path!==o?r.findIndex(Mn.bind(null,e[t-2])):a}),h=D(()=>l.value&&p.value!==-1&&Nn(i.$route.params,c.value.params)),g=D(()=>h.value&&p.value===i.$route.matched.length-1&&In(i.$route.params,c.value.params)),_=D(()=>l.value?g.value?` ${r.exactActiveClass} ${r.activeClass}`:r.exact?``:h.value?` ${r.activeClass}`:``:``);function v(e){try{return i.$router.resolve(e)}catch{}return null}function y(e,{returnRouterError:t,to:n=r.to,replace:a=r.replace}={}){if(r.disable)return e.preventDefault(),Promise.resolve(!1);if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey||e.button!==void 0&&e.button!==0||r.target===`_blank`)return Promise.resolve(!1);e.preventDefault();let o=i.$router[a?`replace`:`push`](n);return t?o:o.then(()=>{}).catch(()=>{})}function b(e){if(l.value){let t=t=>y(e,t);a(`click`,e,t),e.defaultPrevented||t()}else a(`click`,e)}return{hasRouterLink:l,hasHrefLink:o,hasLink:u,linkTag:d,resolvedLink:c,linkIsActive:h,linkIsExactActive:g,linkClass:_,linkAttrs:f,getLink:v,navigateToRouterLink:y,navigateOnClick:b}}var Wn={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Gn=Wt({xs:8,sm:10,md:14,lg:20,xl:24}),Kn=[`button`,`submit`,`reset`],qn=/[^\s]\/[^\s]/,Jn=[`flat`,`outline`,`push`,`unelevated`];function Yn(e,t){return e.flat?`flat`:e.outline?`outline`:e.push?`push`:e.unelevated?`unelevated`:t}var Xn={...Ut,...Ln,type:{type:String,default:`button`},label:[Number,String],icon:String,iconRight:String,...Jn.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...kn.align,default:`center`},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean,round:Boolean};function Zn(e){let t=An(e),{hasRouterLink:n,hasLink:r,linkTag:i,linkAttrs:a,navigateOnClick:o}=Un({fallbackTag:`button`}),s=D(()=>{let t=e.fab||e.fabMini?{}:Gn(e.size);return e.padding===void 0?t:{...t,padding:e.padding.split(/\s+/).map(e=>e in Wn?Wn[e]+`px`:e).join(` `),minWidth:`0`,minHeight:`0`}}),c=D(()=>e.rounded||e.fab||e.fabMini),l=D(()=>!e.disable&&!e.loading),u=D(()=>l.value?e.tabindex||0:-1),d=D(()=>Yn(e,`standard`)),f=D(()=>{let t={tabindex:u.value};return r.value?Object.assign(t,a.value):Kn.includes(e.type)&&(t.type=e.type),i.value===`a`?(e.disable&&(t[`aria-disabled`]=`true`),t.href===void 0&&(t.role=`button`),!n.value&&qn.test(e.type)&&(t.type=e.type)):e.disable&&(t.disabled=``,t[`aria-disabled`]=`true`),e.loading&&e.percentage!==void 0&&Object.assign(t,{role:`progressbar`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),t});return{classes:D(()=>{let t;e.color===void 0?e.textColor&&(t=`text-${e.textColor}`):t=e.flat||e.outline?`text-${e.textColor||e.color}`:`bg-${e.color} text-${e.textColor||`white`}`;let n=e.round?`round`:`rectangle${c.value?` q-btn--rounded`:e.square?` q-btn--square`:``}`;return`q-btn--${d.value} q-btn--${n}`+(t===void 0?``:` `+t)+(l.value?` q-btn--actionable q-focusable q-hoverable`:e.disable?` disabled`:``)+(e.fab?` q-btn--fab`:e.fabMini?` q-btn--fab-mini`:``)+(e.noCaps?` q-btn--no-uppercase`:``)+(e.dense?` q-btn--dense`:``)+(e.stretch?` no-border-radius self-stretch`:``)+(e.glossy?` glossy`:``)+(e.square?` q-btn--square`:``)}),style:s,innerClasses:D(()=>t()+(e.stack?` column`:` row`)+(e.noWrap?` no-wrap text-no-wrap`:``)+(e.loading?` q-btn__content--hidden`:``)),attributes:f,hasLink:r,linkTag:i,navigateOnClick:o,isActionable:l}}var{passiveCapture:Y}=N,X=null,Z=null,Q=null;function $(e){P(e),e.qSkipRipple=!0}var Qn=j({name:`QBtn`,props:{...Xn,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:[`click`,`keydown`,`mousedown`,`keyup`],setup(t,{slots:n,emit:r}){let{proxy:a}=m(),o=Mt(),{classes:s,style:c,innerClasses:l,attributes:u,hasLink:f,linkTag:p,navigateOnClick:h,isActionable:g}=Zn(t),_=d(null),v=d(null),y=null,b,x=null,S=null,C=D(()=>t.label!==void 0&&t.label!==null&&t.label!==``),w=D(()=>t.disable||t.ripple===!1?!1:{keyCodes:f.value?[13,32]:[13],...t.ripple===!0?{}:t.ripple}),T=D(()=>({center:t.round})),E=D(()=>{let e=Math.max(0,Math.min(100,t.percentage));return e>0?{transition:`transform 0.6s`,transform:`translateX(${e-100}%)`}:{}}),O=D(()=>{if(t.loading)return{onMousedown:$,onTouchstart:$,onClick:$,onKeydown:$,onKeyup:$};if(g.value){let e={onClick:te,onKeydown:k,onMousedown:j};if(o.platform.has.touch){let n=t.onTouchstart===void 0?`Passive`:``;e[`onTouchstart${n}`]=ne}return e}return{onClick:P}}),ee=D(()=>({ref:_,class:`q-btn q-btn-item non-selectable no-outline `+s.value,style:c.value,...u.value,...O.value}));function te(e){if(_.value!==null){if(e!==void 0){if(e.defaultPrevented)return;let n=document.activeElement;if(t.type===`submit`&&n!==document.body&&!_.value.contains(n)&&!n.contains(_.value)){e.qAvoidFocus||_.value.focus();let t=()=>{S=null,document.removeEventListener(`keydown`,P,!0),document.removeEventListener(`keyup`,t,Y),_.value?.removeEventListener(`blur`,t,Y)};S=t,document.addEventListener(`keydown`,P,!0),document.addEventListener(`keyup`,t,Y),_.value.addEventListener(`blur`,t,Y)}}h(e)}}function k(e){_.value!==null&&(r(`keydown`,e),q(e,[13,32])&&Z!==_.value&&(Z!==null&&N(),e.defaultPrevented||(e.qAvoidFocus||_.value.focus(),Z=_.value,_.value.classList.add(`q-btn--active`),document.addEventListener(`keyup`,M,!0),_.value.addEventListener(`blur`,M,Y)),P(e)))}function ne(e){_.value!==null&&(r(`touchstart`,e),!e.defaultPrevented&&(X!==_.value&&(X!==null&&N(),X=_.value,y=e.target,y.addEventListener(`touchcancel`,M,Y),y.addEventListener(`touchend`,M,Y)),b=!0,x!==null&&clearTimeout(x),x=setTimeout(()=>{x=null,b=!1},200)))}function j(e){_.value!==null&&(e.qSkipRipple=b===!0,r(`mousedown`,e),!e.defaultPrevented&&Q!==_.value&&(Q!==null&&N(),Q=_.value,_.value.classList.add(`q-btn--active`),document.addEventListener(`mouseup`,M,Y)))}function M(e){if(_.value!==null){if(e?.type===`keyup`){if(Z===_.value&&q(e,[13,32])){let t=new MouseEvent(`click`,e);t.qKeyEvent=!0,e.defaultPrevented&&ae(t),e.cancelBubble&&re(t),_.value.dispatchEvent(t),P(e),e.qKeyEvent=!0}r(`keyup`,e)}N()}}function N(e){S?.();let t=v.value;!e&&(X===_.value||Q===_.value)&&t!==null&&t!==document.activeElement&&(t.setAttribute(`tabindex`,-1),t.focus({preventScroll:!0})),X===_.value&&(y!==null&&(y.removeEventListener(`touchcancel`,M,Y),y.removeEventListener(`touchend`,M,Y)),X=y=null),Q===_.value&&(document.removeEventListener(`mouseup`,M,Y),Q=null),Z===_.value&&(document.removeEventListener(`keyup`,M,!0),_.value?.removeEventListener(`blur`,M,Y),Z=null),_.value?.classList.remove(`q-btn--active`)}return e(()=>{N(!0)}),Object.assign(a,{click:e=>{g.value&&te(e)}}),()=>{let e=[];t.icon!==void 0&&e.push(A(ln,{name:t.icon,left:!t.stack&&C.value,role:`img`})),C.value&&e.push(A(`span`,{class:`block`},[t.label])),e=J(n.default,e),t.iconRight!==void 0&&!t.round&&e.push(A(ln,{name:t.iconRight,right:!t.stack&&C.value,role:`img`}));let r=[A(`span`,{class:`q-focus-helper`,ref:v})];return t.loading&&t.percentage!==void 0&&r.push(A(`span`,{class:`q-btn__progress absolute-full overflow-hidden`+(t.darkPercentage?` q-btn__progress--dark`:``)},[A(`span`,{class:`q-btn__progress-indicator fit block`,style:E.value})])),r.push(A(`span`,{class:`q-btn__content text-center col items-center q-anchor--skip `+l.value},e)),t.loading!==null&&r.push(A(he,{name:`q-transition--fade`},()=>t.loading?[A(`span`,{key:`loading`,class:`absolute-full flex flex-center`},n.loading===void 0?[A(pn)]:n.loading())]:null)),i(A(p.value,ee.value,r),[[En,w.value,void 0,T.value]])}}});export{kt as A,jt as C,wt as D,Ot as E,it as F,vt as I,ke as L,St as M,Ct as N,Tt as O,he as P,mt as R,Mt as S,Dt as T,It as _,kn as a,Pt as b,ln as c,Ut as d,J as f,Rt as g,Bt as h,An as i,q as j,Et as k,Wt as l,zt as m,Un as n,En as o,Vt as p,Rn as r,pn as s,Qn as t,Gt as u,Lt as v,At as w,Ft as x,Nt as y,ft as z};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{E as e,H as t,Q as n,et as r,g as i,s as a,v as o}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{P as ee,S as te,m as s}from"./QBtn-DGiC5uLo.js";import{d as c,n as l,o as u,t as d}from"./event-D0kaqRwq.js";import{D as f,E as p,G as m,J as h,K as ne,R as re,W as ie,X as ae,Y as oe,d as se,q as g}from"./index-i1Dlwasy.js";import{c as _,d as ce,l as v,m as y,p as b,s as x,u as S}from"./format-Bb6ahGqi.js";var C=c({name:`QSpace`,setup(){let e=o(`div`,{class:`q-space`});return()=>e}}),w=0,le=100,T=4;function ue(e){return e.pointerType===`touch`||e.pointerType===`pen`&&e.buttons!==0}var E=c({name:`QTooltip`,inheritAttrs:!1,props:{...b,...h,...m,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...m.transitionShow,default:`jump-down`},transitionHide:{...m.transitionHide,default:`jump-up`},anchor:{type:String,default:`bottom middle`,validator:S},self:{type:String,default:`top middle`,validator:S},offset:{type:Array,default:()=>[14,14],validator:v},cursorPosition:Boolean,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...g],setup(c,{slots:m,emit:h,attrs:g}){let v,b=!1,S=null,C=null,E,D=i(),O=te(),k=r(null),A=n(!1),de=se();function j(){return g.id||de.value}let M=a(()=>_(c.anchor,O.lang.rtl)),N=a(()=>_(c.self,O.lang.rtl)),P=a(()=>!c.persistent),{registerTimeout:F,registerTransitionEnd:I}=ae(c),{transitionProps:L,transitionStyle:R}=ie(c),{anchorEl:z,canShow:B,anchorEvents:V}=ce({showing:A,configureAnchorEl:be}),{show:H,hide:U}=ne({showing:A,canShow:B,handleShow:he,handleHide:ge,hideOnRouteChange:P,processOnMount:!0});Object.assign(V,{delayShow:J,delayHide:ve,onFocusin:ye,onPointerdown:_e,onCursorMove:X});let{showPortal:W,hidePortal:G,renderPortal:fe}=re(D,k,we,`tooltip`),{registerTick:pe,removeTick:me}=oe(),K=x({props:c,$q:O,anchorEl:z,innerRef:k,showing:A,anchorOrigin:M,selfOrigin:N,trackContent:!0});t(()=>(c.modelValue===null||c[`onUpdate:modelValue`])&&A.value===!0&&c.persistent!==!0,e=>{(e===!0?p:f)(Q)});function he(e){l(V,`cursorTemp`),W(),xe(),K.handleShow(c.cursorPosition?e:void 0),pe(K.handleTick),I(()=>{W(!0),h(`show`,e)})}function ge(e){me(),G(),q(!0),I(()=>{G(!0),K.releaseAnchor(!1),h(`hide`,e)})}function q(e){K.releaseAnchor(e),f(Q),S=null,l(V,`tooltipTemp`),l(V,`cursorTemp`),Se(),$(!1)}function J(e){if(e.pointerType===`touch`&&e.isPrimary===!1)return;let t=ue(e);if(t&&Z(e),c.cursorPosition&&!t){let t=u(e);if(t.left!==void 0){C=t,d(V,`cursorTemp`,[[z.value,`pointermove`,`onCursorMove`,`passive`]]),Y(e);return}}F(()=>{H(e)},c.delay)}function Y(e){F(()=>{H(e)},Math.max(c.delay,le))}function X(e){let t=u(e);Math.abs(t.left-C.left)<=T&&Math.abs(t.top-C.top)<=T||(C=t,Y(e))}function Z(e){S=e.pointerType,v!==void 0&&(clearTimeout(v),v=void 0),y(),$(!0);let t=z.value,n=[`touchmove`,`touchcancel`,`touchend`,`click`].map(e=>[t,e,`delayHide`,`passiveCapture`]);d(V,`tooltipTemp`,n)}function _e(e){e.pointerType===`pen`&&S===null&&Z(e)}function ve(e){if((e.pointerType!==`touch`||e.isPrimary!==!1)&&!(e.type===`focusout`&&z.value!==null&&z.value.contains(e.relatedTarget))){if(l(V,`cursorTemp`),S!==null){let t=S===`pen`&&(e.type===`click`||e.type===`touchend`);if(S=null,l(V,`tooltipTemp`),y(),v=setTimeout(()=>{v=void 0,$(!1)},10),t)return}F(()=>{U(e)},c.hideDelay)}}function ye(e){let t=e.target;t&&t.matches(`:focus-visible`)&&J(e)}function Q(e){U(e)}function be(){if(c.noParentEvent||z.value===null)return;let e=[[z.value,`pointerenter`,`delayShow`,`passive`],[z.value,`pointerdown`,`onPointerdown`,`passive`],[z.value,`pointerleave`,`delayHide`,`passive`],[z.value,`focusin`,`onFocusin`,`passive`],[z.value,`focusout`,`delayHide`,`passive`]];d(V,`anchor`,e)}function $(e){b!==e&&(b=e,w+=e?1:-1,document.body.classList.toggle(`non-selectable`,w>0),!e&&v!==void 0&&(clearTimeout(v),v=void 0))}function xe(){let e=z.value,t=j();if(e===null||t===void 0)return;let n=(e.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(Boolean);E={el:e,id:t,added:!n.includes(t)},E.added&&(n.push(t),e.setAttribute(`aria-describedby`,n.join(` `)))}function Se(){if(E?.added===!0){let{el:e,id:t}=E,n=(e.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(e=>e!==``&&e!==t);n.length===0?e.removeAttribute(`aria-describedby`):e.setAttribute(`aria-describedby`,n.join(` `))}E=void 0}function Ce(){return A.value?o(`div`,{...g,id:j(),ref:k,class:[`q-tooltip q-tooltip--style no-pointer-events`+(K.viaCssAnchor?``:` q-position-engine`),g.class],style:[g.style,R(),K.positionStyle.value],role:`tooltip`},s(m.default)):null}function we(){return o(ee,L(),Ce)}return e(()=>{q(!1)}),Object.assign(D.proxy,{updatePosition:K.updatePosition}),fe}});export{C as n,E as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.review-detail-page[data-v-fccae3d8]{height:100%}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,H as t,M as n,P as r,Q as i,S as a,U as o,bt as s,c,d as l,h as u,it as d,k as f,l as p,m,p as h,r as g,s as _,u as v}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{C as y,S as b,c as ee,s as x,t as S,z as C}from"./QBtn-DGiC5uLo.js";import{et as w,p as T,tt as E}from"./index-i1Dlwasy.js";import{n as D}from"./vue-i18n.runtime-CxBM6QPV.js";import{n as O,r as k}from"./pinia-jMX0pzvu.js";import{i as A,n as j,r as M}from"./client-De34x_P_.js";import{n as N}from"./use-server-events-pJWjsMIC.js";import{n as P,t as F}from"./QTooltip-CPN6UvuX.js";import{c as te,d as I,t as L}from"./AppPage-B9tWPrzn.js";import{c as R,n as z,t as B}from"./StatusSwitcher-Bj-XCwSr.js";function V(e){return{...e,oldPath:I(e.oldPath),newPath:I(e.newPath)}}var H=O(`review-detail`,()=>{let e=i(null),t=i([]),n=i(!1),r=i(null),a=_(()=>e.value?JSON.parse(e.value.snapshotData).map(V):[]),o=_(()=>{let e=new Map;for(let n of t.value){let t=e.get(n.filePath);t?t.push(n):e.set(n.filePath,[n])}return e});async function s(i){n.value=!0,r.value=null;try{let[n,r]=await Promise.all([M(`/api/reviews/${i}`),M(`/api/reviews/${i}/comments`)]);e.value=n,t.value=r}catch(n){e.value=null,t.value=[],r.value=n instanceof Error?n.message:String(n)}finally{n.value=!1}}async function c(){e.value&&(t.value=await M(`/api/reviews/${e.value.id}/comments`))}async function l(t){e.value&&=await A(`/api/reviews/${e.value.id}`,{status:t})}async function u(e,n){let r=await A(`/api/comments/${e}`,{content:n});t.value=t.value.map(t=>t.id===e?r:t)}async function d(e){await j(`/api/comments/${e}`),t.value=t.value.filter(t=>t.id!==e)}async function f(e){let n=await A(`/api/comments/${e}/resolve`);t.value=t.value.map(t=>t.id===e?n:t)}async function p(e){let n=await A(`/api/comments/${e}/unresolve`);t.value=t.value.map(t=>t.id===e?n:t)}return{review:e,comments:t,loading:n,error:r,files:a,commentsByFile:o,load:s,refreshComments:c,setStatus:l,editComment:u,deleteComment:d,resolveComment:f,unresolveComment:p}}),U=u({__name:`DownloadButton`,props:{url:{},filename:{},tooltip:{}},setup(e){let t=e,r=b(),{t:c}=D(),l=i(!1);async function u(){l.value=!0;try{let e=await fetch(t.url);if(!e.ok)throw Error(`Request failed with status ${e.status}`);let n=await e.text(),r=URL.createObjectURL(new Blob([n],{type:`text/markdown`})),i=document.createElement(`a`);i.href=r,i.download=t.filename,i.click(),URL.revokeObjectURL(r)}catch(e){r.notify({type:`negative`,message:c(`reviews.detail.downloadError`),caption:e instanceof Error?e.message:String(e)})}finally{l.value=!1}}return(t,r)=>(n(),p(S,a(t.$attrs,{padding:`4px`,flat:``,dense:``,round:``,loading:l.value,icon:`download`,"aria-label":e.tooltip,onClick:C(u,[`stop`])}),{default:o(()=>[e.tooltip?(n(),p(F,{key:0},{default:o(()=>[h(s(e.tooltip),1)]),_:1})):v(``,!0)]),_:1},16,[`loading`,`aria-label`]))}}),W={class:`review-detail-page__header q-pa-sm`},G={class:`row items-center q-gutter-x-sm`},K={class:`text-h6 ellipsis`},q={class:`row items-center q-gutter-x-sm q-mt-xs`},J={class:`text-caption text-grey-6`},Y={key:0,class:`q-pa-md text-grey-6`},X=y(u({__name:`ReviewDetailPage`,setup(a){let{t:u}=D(),y=b(),C=w(),O=E(),A=H(),{review:j,files:M,commentsByFile:F,loading:I}=k(A),V=_(()=>String(C.params.id)),X=i(new Set),Z=_(()=>M.value.filter(e=>(F.value.get(R(e))??[]).length>0)),ne=_(()=>`/api/reviews/${V.value}/export?format=markdown`),re=_(()=>`${(j.value?.name??j.value?.id??`review`).replace(/[/\\:*?"<>|]/g,`-`)}.md`);function Q(){A.load(V.value),X.value=new Set}f(Q),t(V,Q);let ie=N([`comment:created`,`comment:updated`,`comment:deleted`],()=>void A.refreshComments());e(()=>ie.close());function ae(e){let t=new Set(X.value);t.has(e)?t.delete(e):t.add(e),X.value=t}function oe(e){X.value=new Set(X.value).add(e)}function se(e){A.setStatus(e)}async function $(e){try{await e()}catch(e){y.notify({type:`negative`,message:u(`reviews.comments.error`),caption:e instanceof Error?e.message:String(e)})}}function ce(e,t){$(()=>A.editComment(e,t))}function le(e){$(()=>A.deleteComment(e))}function ue(e){$(()=>A.resolveComment(e))}function de(e){$(()=>A.unresolveComment(e))}function fe(){O.push(`/reviews`)}return(e,t)=>d(I)?(n(),p(L,{key:0,class:`row justify-center q-pa-lg`},{default:o(()=>[m(x,{color:`primary`,size:`2em`})]),_:1})):d(j)?(n(),p(L,{key:2,class:`review-detail-page column no-wrap q-pa-md`},{default:o(()=>[c(`div`,W,[c(`div`,G,[m(S,{flat:``,dense:``,round:``,icon:`arrow_back`,onClick:fe}),c(`div`,K,s(d(j).name??d(u)(`reviews.list.unnamed`)),1),m(P),m(U,{url:ne.value,filename:re.value,tooltip:d(u)(`reviews.detail.download`)},null,8,[`url`,`filename`,`tooltip`])]),c(`div`,q,[c(`span`,J,[m(ee,{name:`account_tree`,size:`14px`}),h(` `+s(d(j).branch??d(u)(`reviews.list.unknownBranch`)),1)]),m(P),m(B,{status:d(j).status,onChange:se},null,8,[`status`])])]),m(T),m(te,{class:`col`,"content-style":`padding: 8px`},{default:o(()=>[Z.value.length===0?(n(),l(`p`,Y,s(d(u)(`reviews.detail.noComments`)),1)):v(``,!0),(n(!0),l(g,null,r(Z.value,e=>(n(),p(z,{key:d(R)(e),file:e,expanded:X.value.has(d(R)(e)),comments:d(F).get(d(R)(e))??[],"comments-only":``,"comments-editable":``,"no-full-file":``,onToggle:t=>ae(d(R)(e)),onExpand:t=>oe(d(R)(e)),onEditComment:ce,onDeleteComment:le,onResolveComment:ue,onUnresolveComment:de},null,8,[`file`,`expanded`,`comments`,`onToggle`,`onExpand`]))),128))]),_:1})]),_:1})):(n(),p(L,{key:1,class:`q-pa-lg text-grey-6`},{default:o(()=>[h(s(d(u)(`reviews.detail.notFound`)),1)]),_:1}))}}),[[`__scopeId`,`data-v-fccae3d8`]]);export{X as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,C as t,D as n,E as r,H as i,M as a,O as o,P as s,Q as c,T as l,U as u,W as d,bt as f,c as p,d as m,et as h,g,h as _,it as v,j as y,k as b,l as x,m as S,p as C,r as w,s as T,u as E,v as D,w as O,z as k}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{C as A,N as ee,S as te,c as j,d as ne,f as re,j as ie,l as M,o as N,p as P,s as ae,t as F,y as oe}from"./QBtn-DGiC5uLo.js";import{a as I,d as L,l as R,s as se,u as z}from"./event-D0kaqRwq.js";import{H as ce,_ as le,a as ue,c as de,i as fe,it as pe,l as B,n as me,o as he,ot as ge,p as _e,r as ve,s as ye,tt as be,u as xe,v as Se,y as Ce}from"./index-i1Dlwasy.js";import{n as we}from"./vue-i18n.runtime-CxBM6QPV.js";import{r as Te}from"./pinia-jMX0pzvu.js";import{n as V}from"./use-server-events-pJWjsMIC.js";import{a as Ee,h as H,i as De,n as Oe,o as ke}from"./format-Bb6ahGqi.js";import{a as Ae,c as je,i as Me,l as Ne,r as Pe,t as Fe}from"./AppPage-B9tWPrzn.js";import{a as U,i as Ie,n as Le,r as Re,t as ze}from"./CreateReviewFabButton-DcXpOlBP.js";var Be=L({name:`QField`,inheritAttrs:!1,props:{...B,tag:{type:String,default:`label`}},emits:de,setup(){return ye(xe({tagProp:!0}))}});function Ve(e){e.keyCode===32&&z(e)}var He=M({xs:8,sm:10,md:14,lg:20,xl:24}),Ue=L({name:`QChip`,props:{...Se,...ne,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:{type:Boolean,default:null},onClick:Function,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:[`update:modelValue`,`update:selected`,`remove`],setup(e,{slots:t,emit:n}){let r=te(),i=le(e,r),a=T(()=>e.selected||e.icon!==void 0),o=T(()=>e.selected?e.iconSelected||r.iconSet.chip.selected:e.icon),s=T(()=>e.iconRemove||r.iconSet.chip.remove),c=T(()=>(e.clickable===null?e.onClick!==void 0:e.clickable)||e.selected!==null),l=T(()=>!e.disable&&c.value),u=T(()=>{let t=e.outline&&e.color||e.textColor;return`q-chip row inline no-wrap items-center`+(!e.outline&&e.color!==void 0?` bg-${e.color}`:``)+(t?` text-${t} q-chip--colored`:``)+(e.disable?` disabled`:``)+(e.dense?` q-chip--dense`:``)+(e.outline?` q-chip--outline`:``)+(e.selected?` q-chip--selected`:``)+(l.value?` q-chip--clickable cursor-pointer non-selectable q-hoverable`:``)+(e.square?` q-chip--square`:``)+(i()?` q-chip--dark q-dark`:``)}),f=T(()=>({chip:e.disable?{role:`button`,tabindex:-1,"aria-disabled":`true`}:{role:`button`,tabindex:e.tabindex||0,...e.selected===null?{}:{"aria-pressed":e.selected?`true`:`false`}},remove:{role:`button`,"aria-hidden":`false`,"aria-label":e.removeAriaLabel||r.lang.label.remove,...e.disable?{tabindex:-1,"aria-disabled":`true`}:{tabindex:e.tabindex||0}}}));function p(e){[13,32].includes(e.keyCode)&&(m(e),z(e))}function m(t){e.disable||(n(`update:selected`,!e.selected),n(`click`,t))}function h(t){(t.keyCode===void 0||[13,32].includes(t.keyCode))&&(z(t),e.disable||(n(`update:modelValue`,!1),n(`remove`)))}function g(){let n=[];l.value&&n.push(D(`div`,{class:`q-focus-helper`})),a.value&&n.push(D(j,{class:`q-chip__icon q-chip__icon--left`,name:o.value}));let r=e.label===void 0?void 0:[D(`div`,{class:`ellipsis`},[e.label])];return n.push(D(`div`,{class:`q-chip__content col row no-wrap items-center q-anchor--skip`},P(t.default,r))),e.iconRight&&n.push(D(j,{class:`q-chip__icon q-chip__icon--right`,name:e.iconRight})),e.removable&&n.push(D(j,{class:`q-chip__icon q-chip__icon--remove cursor-pointer`,name:s.value,...f.value.remove,onClick:h,onKeydown:Ve,onKeyup:h})),n}return()=>{if(!e.modelValue)return;let t={class:u.value};return e.size!==void 0&&(t.style=He(e.size)),c.value&&Object.assign(t,f.value.chip),l.value&&Object.assign(t,{onClick:m,onKeydown:Ve,onKeyup:p}),d(D(`div`,t,g()),[[N,e.disable||e.ripple===!1?!1:e.ripple]])}}}),W=1e3,We=[`start`,`center`,`end`,`start-force`,`center-force`,`end-force`],Ge=Array.prototype.filter,Ke=window.getComputedStyle(document.body).overflowAnchor===void 0?I:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;let n=e.children||[];Ge.call(n,e=>e.dataset&&e.dataset.qVsAnchor!==void 0).forEach(e=>{delete e.dataset.qVsAnchor});let r=n[t];r?.dataset&&(r.dataset.qVsAnchor=``)}))};function qe(e,t){return e+t}function Je(e,t,n,r,i,a,o,s){let c=e===window?document.scrollingElement||document.documentElement:e,l=i?`width`:`height`,u={scrollStart:0,scrollViewSize:-o-s,scrollMaxSize:0,offsetStart:-o,offsetEnd:-s};if(i?(e===window?(u.scrollStart=window.scrollX,u.scrollViewSize+=document.documentElement.clientWidth):(u.scrollStart=c.scrollLeft,u.scrollViewSize+=c.clientWidth),u.scrollMaxSize=c.scrollWidth,a&&(u.scrollStart=-u.scrollStart)):(e===window?(u.scrollStart=window.scrollY,u.scrollViewSize+=document.documentElement.clientHeight):(u.scrollStart=c.scrollTop,u.scrollViewSize+=c.clientHeight),u.scrollMaxSize=c.scrollHeight),n!==null)for(let e=n.previousElementSibling;e!==null;e=e.previousElementSibling)e.classList.contains(`q-virtual-scroll--skip`)||(u.offsetStart+=e.getBoundingClientRect()[l]);if(r!==null)for(let e=r.nextElementSibling;e!==null;e=e.nextElementSibling)e.classList.contains(`q-virtual-scroll--skip`)||(u.offsetEnd+=e.getBoundingClientRect()[l]);if(t!==e){let n=c.getBoundingClientRect(),r=t.getBoundingClientRect();i?(u.offsetStart+=r.left-n.left,u.offsetEnd-=r.width):(u.offsetStart+=r.top-n.top,u.offsetEnd-=r.height),e!==window&&(u.offsetStart+=u.scrollStart),u.offsetEnd+=u.scrollMaxSize-u.offsetStart}return u}function Ye(e,t,n,r){if(t===`end`&&(t=(e===window?document.body:e)[n?`scrollWidth`:`scrollHeight`]),e===window){let e,i;n?(r&&(t=-t),e=t,i=window.scrollY):(e=window.scrollX,i=t),window.scrollTo({left:e,top:i,behavior:`instant`})}else n?(r&&(t=-t),e.scrollTo({left:t,behavior:`instant`})):e.scrollTo({top:t,behavior:`instant`})}function Xe(e,t,n,r){if(n>=r)return 0;let i=t.length,a=Math.floor(n/W),o=Math.floor((r-1)/W)+1,s=0;for(let t=a;t<o;t++)s+=e[t];if(n%W!==0)for(let e=a*W;e<n;e++)s-=t[e];if(r%W!==0&&r!==i){let e=Math.min(o*W,i);for(let n=r;n<e;n++)s-=t[n]}return s}var G={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]};Object.keys(G);var K={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...G};function Ze({virtualScrollLength:e,getVirtualScrollTarget:n,getVirtualScrollEl:a,virtualScrollItemSizeComputed:s}){let{props:u,emit:d,proxy:f}=g(),p=te(),m,_,v,y=[],b,x=c(0),S=c(0),C=c({}),w=h(null),E=h(null),k=h(null),A=c({from:0,to:0}),ee=T(()=>u.tableColspan===void 0?100:u.tableColspan);s===void 0&&(s=T(()=>u.virtualScrollItemSize));let j=T(()=>s.value+`;`+u.virtualScrollHorizontal),ne=T(()=>j.value+`;`+u.virtualScrollSliceRatioBefore+`;`+u.virtualScrollSliceRatioAfter);i(ne,()=>{I()}),i(j,re);function re(){oe(_,!0)}function ie(e){oe(e===void 0?_:e)}function M(t,r){let i=n();if(i==null||i.nodeType===8)return;let o=Je(i,a(),w.value,E.value,u.virtualScrollHorizontal,p.lang.rtl,u.virtualScrollStickySizeStart,u.virtualScrollStickySizeEnd);v!==o.scrollViewSize&&I(o.scrollViewSize),P(i,o,Math.min(e.value-1,Math.max(0,Number.parseInt(t,10)||0)),0,We.includes(r)?r:_!==-1&&t>_?`end`:`start`)}function N(){let t=n();if(t==null||t.nodeType===8)return;let r=Je(t,a(),w.value,E.value,u.virtualScrollHorizontal,p.lang.rtl,u.virtualScrollStickySizeStart,u.virtualScrollStickySizeEnd),i=e.value-1,o=r.scrollMaxSize-r.offsetStart-r.offsetEnd-S.value;if(m===r.scrollStart)return;if(r.scrollMaxSize<=0){P(t,r,0,0);return}v!==r.scrollViewSize&&I(r.scrollViewSize),ae(A.value.from);let s=Math.floor(r.scrollMaxSize-Math.max(r.scrollViewSize,r.offsetEnd)-Math.min(b[i],r.scrollViewSize/2));if(s>0&&Math.ceil(r.scrollStart)>=s){P(t,r,i,r.scrollMaxSize-r.offsetEnd-y.reduce(qe,0));return}let c=0,l=r.scrollStart-r.offsetStart,d=l;if(l<=o&&l+r.scrollViewSize>=x.value)l-=x.value,c=A.value.from,d=l;else for(let e=0;l>=y[e]&&c<i;e++)l-=y[e],c+=W;for(;l>0&&c<i;)l-=b[c],l>-r.scrollViewSize?(c++,d=l):d=b[c]+l;P(t,r,c,d)}function P(t,n,r,i,a){let o=typeof a==`string`&&a.includes(`-force`),s=o?a.replace(`-force`,``):a,c=s===void 0?`start`:s,l=Math.max(0,r-C.value[c]),d=l+C.value.total;d>e.value&&(d=e.value,l=Math.max(0,d-C.value.total)),m=n.scrollStart;let f=l!==A.value.from||d!==A.value.to;if(!f&&s===void 0){R(r);return}let{activeElement:h}=document,g=k.value;f&&g!==null&&g!==h&&g.contains(h)&&(g.addEventListener(`focusout`,F),setTimeout(()=>{g?.removeEventListener(`focusout`,F)},0)),Ke(g,r-l);let _=s===void 0?0:b.slice(l,r).reduce(qe,0);if(f){let t=d>=A.value.from&&l<=A.value.to?A.value.to:d;A.value={from:l,to:t},x.value=Xe(y,b,0,l),S.value=Xe(y,b,d,e.value),requestAnimationFrame(()=>{A.value.to!==d&&m===n.scrollStart&&(A.value={from:A.value.from,to:d},S.value=Xe(y,b,d,e.value))})}requestAnimationFrame(()=>{if(m!==n.scrollStart)return;f&&ae(l);let e=b.slice(l,r).reduce(qe,0),a=e+n.offsetStart+x.value,c=a+b[r],d=a+i;if(s!==void 0){let t=e-_,i=n.scrollStart+t;d=!o&&i<a&&c<i+n.scrollViewSize?i:s===`end`?c-n.scrollViewSize:a-(s===`start`?0:Math.round((n.scrollViewSize-b[r])/2))}m=d,Ye(t,d,u.virtualScrollHorizontal,p.lang.rtl),R(r)})}function ae(e){let t=k.value;if(t){let n=Ge.call(t.children,e=>e.classList&&!e.classList.contains(`q-virtual-scroll--skip`)),r=n.length,i=u.virtualScrollHorizontal?e=>e.getBoundingClientRect().width:e=>e.getBoundingClientRect().height,a=e,o,s;for(let e=0;e<r;){for(o=i(n[e]),e++;e<r&&n[e].classList.contains(`q-virtual-scroll--with-prev`);)o+=i(n[e]),e++;s=o-b[a],s!==0&&(b[a]+=s,y[Math.floor(a/W)]+=s),a++}}}function F(){k.value?.focus({preventScroll:!0})}function oe(n,r){let i=Number(s.value);(r||!Array.isArray(b))&&(b=[]);let a=b.length;b.length=e.value;for(let t=e.value-1;t>=a;t--)b[t]=i;let o=Math.floor((e.value-1)/W);y=[];for(let t=0;t<=o;t++){let n=0,r=Math.min((t+1)*W,e.value);for(let e=t*W;e<r;e++)n+=b[e];y.push(n)}_=-1,m=void 0,x.value=Xe(y,b,0,A.value.from),S.value=Xe(y,b,A.value.to,e.value),n>=0?(ae(A.value.from),t(()=>{M(n)})):se()}function I(e){if(e===void 0&&typeof window<`u`){let t=n();t!=null&&t.nodeType!==8&&(e=Je(t,a(),w.value,E.value,u.virtualScrollHorizontal,p.lang.rtl,u.virtualScrollStickySizeStart,u.virtualScrollStickySizeEnd).scrollViewSize)}v=e;let t=Number.parseFloat(u.virtualScrollSliceRatioBefore)||0,r=Number.parseFloat(u.virtualScrollSliceRatioAfter)||0,i=1+t+r,o=e===void 0||e<=0?1:Math.ceil(e/s.value),c=Math.max(1,o,Math.ceil((u.virtualScrollSliceSize>0?u.virtualScrollSliceSize:10)/i));C.value={total:Math.ceil(c*i),start:Math.ceil(c*t),center:Math.ceil(c*(.5+t)),end:Math.ceil(c*(1+t)),view:o}}function L(e,t,n){let r=u.virtualScrollHorizontal?`width`:`height`,i={[`--q-virtual-scroll-item-`+r]:s.value+`px`};return[e===`tbody`?D(e,{class:`q-virtual-scroll__padding`,key:`before`,ref:w,"aria-hidden":`true`},[D(`tr`,[D(`td`,{style:{[r]:`${x.value}px`,...i},colspan:ee.value})])]):D(e,{class:`q-virtual-scroll__padding`,key:`before`,ref:w,"aria-hidden":`true`,style:{[r]:`${x.value}px`,...i}}),D(e,{class:`q-virtual-scroll__content`,key:`content`,ref:k,tabindex:-1,...n},t.flat()),e===`tbody`?D(e,{class:`q-virtual-scroll__padding`,key:`after`,ref:E,"aria-hidden":`true`},[D(`tr`,[D(`td`,{style:{[r]:`${S.value}px`,...i},colspan:ee.value})])]):D(e,{class:`q-virtual-scroll__padding`,key:`after`,ref:E,"aria-hidden":`true`,style:{[r]:`${S.value}px`,...i}})]}function R(e){_!==e&&(u.onVirtualScroll!==void 0&&d(`virtualScroll`,{index:e,from:A.value.from,to:A.value.to-1,direction:e<_?`decrease`:`increase`,ref:f}),_=e)}I();{let t=Math.min(e.value,C.value.total),n=Number(s.value);A.value={from:0,to:t},S.value=Number.isFinite(n)?Math.max(0,(e.value-t)*n):0}let se=ge(N,p.platform.is.ios?120:35);l(()=>{I()});let z=!1;return o(()=>{z=!0}),O(()=>{if(!z)return;let e=n();m!==void 0&&e!=null&&e.nodeType!==8?Ye(e,m,u.virtualScrollHorizontal,p.lang.rtl):M(_)}),r(()=>{se.cancel()}),Object.assign(f,{scrollTo:M,reset:re,refresh:ie}),{virtualScrollSliceRange:A,virtualScrollSliceSizeComputed:C,setVirtualScrollSize:I,onVirtualScrollEvt:se,localResetVirtualScroll:oe,padVirtualScroll:L,scrollTo:M,reset:re,refresh:ie}}var Qe=e=>[`add`,`add-unique`,`toggle`].includes(e),$e=".*+?^${}()|[]\\",et=Object.keys(B);function tt(e,t){if(typeof e==`function`)return e;let n=e===void 0?t:e;return e=>typeof e==`object`&&e&&n in e?e[n]:e}var q=L({name:`QSelect`,inheritAttrs:!1,props:{...K,...ue,...B,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,hideDialogClose:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,noOptionLabel:String,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,noChipRemove:Boolean,newValueMode:{type:String,validator:Qe},mapOptions:Boolean,emitValue:Boolean,noOptionPrefetch:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>[`default`,`menu`,`dialog`].includes(e),default:`default`},...Ae,virtualScrollItemSize:K.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...de,`add`,`remove`,`inputValue`,`keyup`,`keypress`,`keydown`,`popupShow`,`popupHide`,`filterAbort`],setup(e,{slots:a,emit:o}){let{proxy:s}=g(),l=te(),u=c(!1),d=c(!1),f=c(-1),p=c(``),m=c(!1),_=c(!1),v=null,x=null,S=!1,C=0,w,E=!1,O,k,A=null,ne,M,N,P,ae=h(null),F=h(null),I=h(null),L=h(null),le=h(null),ue=fe(e),de=ve(xt),B=T(()=>Array.isArray(e.options)?e.options.length:0),{virtualScrollSliceRange:me,virtualScrollSliceSizeComputed:ge,localResetVirtualScroll:_e,padVirtualScroll:be,onVirtualScrollEvt:Se,scrollTo:we,setVirtualScrollSize:Te}=Ze({virtualScrollLength:B,getVirtualScrollTarget:_t,getVirtualScrollEl:gt,virtualScrollItemSizeComputed:T(()=>e.virtualScrollItemSize===void 0?e.optionsDense?24:48:e.virtualScrollItemSize)}),V=xe(),H=T(()=>{let t=e.mapOptions&&!e.multiple,n=e.modelValue!==void 0&&(e.modelValue!==null||t)?e.multiple&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue]:[];if(e.mapOptions&&Array.isArray(e.options)){let r=e.mapOptions&&w!==void 0?w:[],i=n.map(e=>lt(e,r));return e.modelValue===null&&t?i.filter(e=>e!==null):i}return n}),De=T(()=>{let t={};return et.forEach(n=>{let r=e[n];r!==void 0&&(t[n]=r)}),t}),Ae=T(()=>e.optionsDark===null?V.isDark():e.optionsDark),je=T(()=>he(H.value)),Ne=T(()=>{let t=`q-field__input q-placeholder col`;return e.hideSelected||H.value.length===0?[t,e.inputClass]:(t+=` q-field__input--padding`,e.inputClass===void 0?t:[t,e.inputClass])}),Fe=T(()=>(e.virtualScrollHorizontal?`q-virtual-scroll--horizontal`:``)+(e.popupContentClass?` `+e.popupContentClass:``)),U=T(()=>B.value===0);function Ie(){return a[`no-option`]!==void 0||e.noOptionLabel!==void 0}let Le=T(()=>H.value.map(e=>K.value(e)).join(`, `)),ze=T(()=>e.displayValue===void 0?Le.value:e.displayValue),Ve=T(()=>e.optionsHtml?()=>!0:e=>e?.html===!0),He=T(()=>e.displayValueHtml||e.displayValue===void 0&&(e.optionsHtml||H.value.some(Ve.value))),W=T(()=>V.focused.value?e.tabindex:-1),We=T(()=>{let t={tabindex:e.disable===!0?void 0:e.tabindex,role:`combobox`,"aria-label":e.label,"aria-readonly":e.readonly?`true`:`false`,"aria-autocomplete":e.useInput?`list`:`none`,"aria-expanded":u.value?`true`:`false`};return u.value&&!U.value&&(t[`aria-controls`]=`${V.targetUid.value}_lb`),f.value>=0&&(t[`aria-activedescendant`]=`${V.targetUid.value}_${f.value}`),t}),Ge=T(()=>({id:`${V.targetUid.value}_lb`,role:`listbox`,"aria-multiselectable":e.multiple?`true`:`false`})),Ke=T(()=>H.value.map((e,t)=>({index:t,opt:e,html:Ve.value(e),selected:!0,removeAtIndex:ot,toggleOption:J,tabindex:W.value}))),qe=T(()=>{if(B.value===0)return[];let{from:t,to:n}=me.value;return e.options.slice(t,n).map((n,r)=>{let i=q.value(n)===!0,a=ut(n),o=t+r,s={clickable:!0,active:a,activeClass:Xe.value,manualFocus:!0,focused:!1,disable:i,tabindex:-1,dense:e.optionsDense,dark:Ae.value,role:`option`,"aria-selected":a?`true`:`false`,"aria-setsize":B.value,"aria-posinset":o+1,id:`${V.targetUid.value}_${o}`,onClick:()=>{J(n)}};return i||(f.value===o&&(s.focused=!0),s.onPointermove=e=>{e.pointerType!==`touch`&&u.value&&Y(o)}),{index:o,opt:n,html:Ve.value(n),label:K.value(n),selected:s.active,focused:s.focused,toggleOption:J,setOptionIndex:Y,itemProps:s}})}),Je=T(()=>e.dropdownIcon===void 0?l.iconSet.arrow.dropdown:e.dropdownIcon),Ye=T(()=>!e.optionsCover&&!e.outlined&&!e.standout&&!e.borderless&&!e.rounded),Xe=T(()=>e.optionsSelectedClass===void 0?e.color===void 0?``:`text-${e.color}`:e.optionsSelectedClass),G=T(()=>tt(e.optionValue,`value`)),K=T(()=>tt(e.optionLabel,`label`)),q=T(()=>tt(e.optionDisable,`disable`)),nt=T(()=>H.value.map(G.value)),rt=T(()=>{let e={onInput:xt,onChange:de,onKeydown:ht,onKeyup:pt,onKeypress:mt,onFocus:dt,onClick(e){O&&R(e)}};return e.onCompositionstart=e.onCompositionupdate=e.onCompositionend=de,e});i(H,t=>{w=t,e.useInput&&e.fillInput&&!e.multiple&&!V.innerLoading.value&&(!d.value&&!u.value||!je.value)&&(k||$(),(d.value||u.value)&&X(``)),E&&wt()&&(E=!1)},{immediate:!0}),i(()=>e.fillInput,$),i(u,Vt),i(B,Ht);function it(t){return e.emitValue?G.value(t):t}function at(t){if(t!==-1&&t<H.value.length){if(e.multiple){let n=[...e.modelValue];o(`remove`,{index:t,value:n.splice(t,1)[0]}),o(`update:modelValue`,n)}else o(`update:modelValue`,null)}}function ot(e){at(e),V.focus()}function st(t,n){let r=it(t);if(!e.multiple){e.fillInput&&Ct(K.value(t),!0,!0),o(`update:modelValue`,r);return}if(H.value.length===0){o(`add`,{index:0,value:r}),o(`update:modelValue`,e.multiple?[r]:r);return}if(n&&ut(t)||e.maxValues!==void 0&&e.modelValue.length>=e.maxValues)return;let i=[...e.modelValue];o(`add`,{index:i.length,value:r}),i.push(r),o(`update:modelValue`,i)}function J(t,n){if(!V.editable.value||t===void 0||q.value(t)===!0)return;let r=G.value(t);if(!e.multiple){let i=!n&&d.value;n||(Ct(e.fillInput?K.value(t):``,!0,!0),Q()),i||F.value?.focus(),(H.value.length===0||!pe(G.value(H.value[0]),r))&&o(`update:modelValue`,e.emitValue?r:t);return}if((!O||m.value)&&V.focus(),dt(),H.value.length===0){let n=e.emitValue?r:t;o(`add`,{index:0,value:n}),o(`update:modelValue`,e.multiple?[n]:n);return}let i=[...e.modelValue],a=nt.value.findIndex(e=>pe(e,r));if(a!==-1)o(`remove`,{index:a,value:i.splice(a,1)[0]});else{if(e.maxValues!==void 0&&i.length>=e.maxValues)return;let n=e.emitValue?r:t;o(`add`,{index:i.length,value:n}),i.push(n)}o(`update:modelValue`,i)}function Y(e){let t=e!==-1&&e<B.value?e:-1;f.value!==t&&(f.value=t)}function ct(t=1,n){if(u.value){let r=f.value;do r=Oe(r+t,-1,B.value-1);while(r!==-1&&r!==f.value&&q.value(e.options[r])===!0);f.value!==r&&(Y(r),we(r),!n&&e.useInput&&e.fillInput&&St(r>=0?K.value(e.options[r]):ne,!0))}}function lt(t,n){let r=e=>pe(G.value(e),t);return e.options.find(r)||n.find(r)||t}function ut(e){let t=G.value(e);return nt.value.find(e=>pe(e,t))!==void 0}function dt(t){e.useInput&&F.value!==null&&(t===void 0||F.value===t.target&&t.target.value===Le.value)&&F.value.select()}function ft(e){ie(e,27)&&u.value&&(R(e),Q(e),$()),o(`keyup`,e)}function pt(t){let{value:n}=t.target;if(t.keyCode!==void 0){ft(t);return}if(t.target.value=``,v!==null&&(clearTimeout(v),v=null),x!==null&&(clearTimeout(x),x=null),$(),typeof n==`string`&&n.length!==0){let t=n.toLocaleLowerCase(),r=n=>{let r=e.options.find(e=>String(n.value(e)).toLocaleLowerCase()===t);return r!==void 0&&(H.value.includes(r)?Q():J(r),!0)},i=e=>{!r(G)&&!e&&!r(K)&&X(n,!0,()=>i(!0))};i()}else V.clearValue(t)}function mt(e){o(`keypress`,e)}function ht(n){if(o(`keydown`,n),n.defaultPrevented||ee(n))return;let r=p.value.length!==0&&(e.newValueMode!==void 0||e.onNewValue!==void 0),i=!n.shiftKey&&!e.disableTabSelection&&!e.multiple&&(f.value!==-1||r);if(n.keyCode===27){se(n);return}if(n.keyCode===9&&!i){Pt(n);return}if(n.target===void 0||n.target.id!==V.targetUid.value||!V.editable.value)return;if((n.keyCode===40||n.keyCode===38)&&!V.innerLoading.value&&!u.value){z(n),Z(n);return}if(n.keyCode===8&&(e.useChips&&!e.noChipRemove||e.clearable)&&!e.hideSelected&&p.value.length===0){(e.clearable||q.value(H.value.at(-1))!==!0)&&(e.multiple&&Array.isArray(e.modelValue)?at(e.modelValue.length-1):!e.multiple&&e.modelValue!==null&&o(`update:modelValue`,null));return}(n.keyCode===35||n.keyCode===36)&&(typeof p.value!=`string`||p.value.length===0)&&(z(n),f.value=-1,ct(n.keyCode===36?1:-1,e.multiple)),(n.keyCode===33||n.keyCode===34)&&ge.value!==void 0&&(z(n),f.value=Math.max(-1,Math.min(B.value,f.value+(n.keyCode===33?-1:1)*ge.value.view)),ct(n.keyCode===33?1:-1,e.multiple)),(n.keyCode===38||n.keyCode===40)&&(z(n),ct(n.keyCode===38?-1:1,e.multiple));let a=B.value;if((N===void 0||P<Date.now())&&(N=``),a>0&&!e.useInput&&n.key!==void 0&&n.key.length===1&&!n.altKey&&!n.ctrlKey&&!n.metaKey&&(n.keyCode!==32||N.length!==0)){u.value||Z(n);let r=n.key.toLocaleLowerCase(),i=N.length===1&&N[0]===r;P=Date.now()+1500,i||(z(n),N+=r);let o=RegExp(`^`+[...N].map(e=>$e.includes(e)?`\\`+e:e).join(`.*`),`i`),s=f.value;if(i||s<0||!o.test(K.value(e.options[s])))do s=Oe(s+1,-1,a-1);while(s!==f.value&&(q.value(e.options[s])===!0||!o.test(K.value(e.options[s]))));f.value!==s&&t(()=>{Y(s),we(s),s>=0&&e.useInput&&e.fillInput&&St(K.value(e.options[s]),!0)});return}if(n.keyCode===13||n.keyCode===32&&!e.useInput&&N===``||n.keyCode===9&&i){if(n.keyCode!==9&&z(n),f.value!==-1&&f.value<a){J(e.options[f.value]);return}if(r){let t=(t,n)=>{if(n){if(!Qe(n))return}else n=e.newValueMode;Ct(``,!e.multiple,!0),t!=null&&((n===`toggle`?J:st)(t,n===`add-unique`),e.multiple||(F.value?.focus(),Q()))};if(e.onNewValue===void 0?t(p.value):o(`newValue`,p.value,t),!e.multiple)return}u.value?Pt(n):V.innerLoading.value||Z(n)}}function gt(){return O?le.value:I.value!==null&&I.value.contentEl!==null?I.value.contentEl:void 0}function _t(){return gt()}function vt(){return e.hideSelected?[]:a[`selected-item`]===void 0?a.selected===void 0?e.useChips?Ke.value.map((t,n)=>D(Ue,{key:`option-`+n,removable:!e.noChipRemove&&V.editable.value&&q.value(t.opt)!==!0,dense:!0,textColor:e.color,tabindex:W.value,onRemove(){t.removeAtIndex(n)}},()=>D(`span`,{class:`ellipsis`,[t.html?`innerHTML`:`textContent`]:K.value(t.opt)}))):[D(`span`,{class:`q-select__selected-value ellipsis`,[He.value?`innerHTML`:`textContent`]:ze.value})]:[a.selected()].flat():Ke.value.map(e=>a[`selected-item`](e))}function yt(){if(U.value)return a[`no-option`]===void 0?e.noOptionLabel===void 0?void 0:[D(Ee,()=>D(ke,{class:`text-grey`},()=>D(Re,()=>e.noOptionLabel)))]:a[`no-option`]({inputValue:p.value});let t=a.option===void 0?e=>D(Ee,{key:e.index,...e.itemProps},()=>D(ke,()=>D(Re,()=>D(`span`,{[e.html?`innerHTML`:`textContent`]:e.label})))):a.option,n=be(`div`,qe.value.map(t),Ge.value);return a[`before-options`]!==void 0&&(n=[a[`before-options`](),...n].flat()),re(a[`after-options`],n)}function bt(t,n){let r=n?{...We.value,...V.splitAttrs.attributes.value}:void 0,i={ref:n?F:void 0,key:`i_t`,class:Ne.value,style:e.inputStyle,value:p.value===void 0?``:p.value,type:`search`,...r,id:n?V.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":t===!0||e.autofocus||void 0,disabled:e.disable,readonly:e.readonly,...rt.value};return n&&Object.assign(i,V.getErrorAriaAttrs(i)),!t&&O&&(Array.isArray(i.class)?i.class=[...i.class,`no-pointer-events`]:i.class+=` no-pointer-events`),D(`input`,i)}function xt(t){v!==null&&(clearTimeout(v),v=null),x!==null&&(clearTimeout(x),x=null),!t?.target?.qComposing&&(St(t.target.value||``),k=!0,ne=p.value,!V.focused.value&&(!O||m.value)&&V.focus(),e.onFilter!==void 0&&(O&&!d.value?Z(t):v=setTimeout(()=>{v=null,X(p.value)},e.inputDebounce)))}function St(t,n){p.value!==t&&(x!==null&&(clearTimeout(x),x=null),p.value=t,n||e.inputDebounce===0||e.inputDebounce===`0`?o(`inputValue`,t):x=setTimeout(()=>{x=null,o(`inputValue`,t)},e.inputDebounce))}function Ct(t,n,r){k=r!==!0,e.useInput&&(St(t,!0),(n||k)&&(ne=t),n||X(t))}function X(n,r,i){if(e.onFilter===void 0||!r&&!V.focused.value&&!S)return;V.innerLoading.value?o(`filterAbort`):(V.innerLoading.value=!0,_.value=!0),n!==``&&!e.multiple&&H.value.length!==0&&!k&&n===K.value(H.value[0])&&(n=``);let a=setTimeout(()=>{u.value&&=!1},10);A!==null&&clearTimeout(A),A=a,o(`filter`,n,(e,n)=>{(r||V.focused.value||S)&&A===a&&(clearTimeout(A),typeof e==`function`&&e(),_.value=!1,t(()=>{V.innerLoading.value=!1,V.editable.value&&(r?u.value&&Q():u.value?Vt(!0):u.value=!0),typeof n==`function`&&t(()=>{n(s)}),typeof i==`function`&&t(()=>{i(s)})}))},()=>{(r||V.focused.value||S)&&A===a&&(clearTimeout(A),V.innerLoading.value=!1,_.value=!1),u.value&&=!1})}function wt(){return B.value!==0||H.value.every(e=>typeof e==`object`&&!!e)?!1:(X(``,!0,$),!0)}function Tt(){return D(Pe,{ref:I,class:Fe.value,style:e.popupContentStyle,modelValue:u.value,fit:!e.menuShrink,cover:e.optionsCover&&!U.value&&!e.useInput,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:Ae.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:e.popupNoRouteDismiss,square:Ye.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,onScrollPassive:Se,onBeforeShow:Wt,onBeforeHide:Et,onShow:Dt,...e.hover?{onPointerenter:zt,onPointerleave:Rt}:{}},yt)}function Et(e){Gt(e),Pt()}function Dt(){Te()}function Ot(e){R(e),F.value?.focus(),m.value=!0,l.platform.is.ios&&window.scrollTo(window.scrollX,0)}function kt(e){R(e),t(()=>{m.value=!1})}function At(){let t=[D(Be,{class:`col-auto ${V.fieldClass.value}`,...De.value,for:V.targetUid.value,dark:Ae.value,square:!0,loading:_.value,itemAligned:!1,filled:!0,stackLabel:p.value.length!==0,...V.splitAttrs.listeners.value,onFocus:Ot,onBlur:kt},{...a,rawControl:()=>V.getControl(!0),before:void 0,after:void 0,append:e.hideDialogClose?a.append:()=>{let t=D(`button`,{class:`q-select__dialog-close`+(e.color===void 0?``:` text-${e.color}`),type:`button`,tabindex:0,onClick:Q},l.lang.label.close);return a.append===void 0?[t]:[...a.append(),t]}})];return u.value&&t.push(D(`div`,{ref:le,class:Fe.value+` scroll`,style:e.popupContentStyle,onClick:se,onScrollPassive:Se},yt())),D(Ce,{ref:L,modelValue:d.value,position:e.useInput?`top`:void 0,noFocus:!0,transitionShow:M,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,noRouteDismiss:e.popupNoRouteDismiss,onBeforeShow:Wt,onBeforeHide:jt,onHide:Mt,onShow:Nt},()=>D(`div`,{class:`q-select__dialog`+(Ae.value?` q-select__dialog--dark q-dark`:``)+(m.value?` q-select__dialog--focused`:``)},t))}function jt(t){if(Gt(t),L.value!==null){let n=!l.platform.is.mobile||!e.useInput||t!==void 0&&(t.type.indexOf(`key`)===0||t.type===`click`&&t.detail===0)?V.rootRef.value.querySelector(`.q-field__native > .q-select__focus-target, .q-field__native > .q-field__input`):null;L.value.__updateRefocusTarget(n)}V.focused.value=!1}function Mt(e){Q(),V.focused.value||o(`blur`,e),$()}function Nt(){let e=document.activeElement;(e===null||e.id!==V.targetUid.value)&&F.value!==null&&F.value!==e&&F.value.focus(),Te()}function Pt(e){d.value||(It(),S=!1,f.value=-1,u.value&&(e!==void 0&&(e.qSelectHandled=!0),u.value=!1,I.value?.hide(e)),V.focused.value||(A!==null&&(clearTimeout(A),A=null),V.innerLoading.value&&(o(`filterAbort`),V.innerLoading.value=!1,_.value=!1)))}function Ft(e){if(e==null)return!1;let t=I.value===null?null:I.value.contentEl;if(V.controlRef.value!==null&&V.controlRef.value.contains(e)||t!==null&&t.contains(e))return!0;let n=ce(e);for(;n!=null;){if(n===s)return!0;n=oe(n)}return!1}let{clearHoverTimer:It,hoverShow:Lt,hoverHide:Rt,onHoverContentEnter:zt}=Me({props:e,canShow:()=>!O&&!S&&!u.value&&V.editable.value,show:Bt,canHide:e=>S&&!Ft(e.relatedTarget),hide:Q});function Bt(t){(e.onFilter!==void 0||!U.value||Ie())&&(S=!0,C=Date.now(),t.qSelectHandled=!0,e.onFilter===void 0?(u.value=!0,I.value?.show(t)):X(p.value))}function Z(n){V.editable.value&&(It(),S=!1,n!==void 0&&(n.qSelectHandled=!0),O?(V.onControlFocusin(n),V.focus(),d.value=!0,L.value?.show(n),t(()=>{V.focus()})):V.focus(),e.onFilter===void 0?(!U.value||Ie())&&(u.value=!0,I.value?.show(n)):X(p.value))}function Q(e){d.value&&(e!==void 0&&(e.qSelectHandled=!0),d.value=!1,L.value?.hide(e)),Pt(e)}function $(){e.useInput&&Ct(!e.multiple&&e.fillInput&&H.value.length!==0?K.value(H.value[0])??``:``,!0,!0)}function Vt(t){let n=-1;if(t){if(H.value.length!==0){let t=G.value(H.value[0]);n=e.options.findIndex(e=>pe(G.value(e),t))}_e(n)}Y(n)}function Ht(e,n){u.value&&!V.innerLoading.value&&(_e(-1,!0),t(()=>{u.value&&!V.innerLoading.value&&(e>n?_e():Vt(!0))}))}function Ut(){d.value||I.value?.updatePosition()}function Wt(e){e!==void 0&&e.qSelectHandled!==!0&&R(e),o(`popupShow`,e),V.hasPopupOpen=!0,S||V.onControlFocusin(e)}function Gt(e){e!==void 0&&e.qSelectHandled!==!0&&R(e),o(`popupHide`,e),V.hasPopupOpen=!1,V.onControlFocusout(e,$)}function Kt(){O=!l.platform.is.mobile&&e.behavior!==`dialog`?!1:e.behavior!==`menu`&&(!e.useInput||Ie()||e.onFilter!==void 0||!U.value),M=l.platform.is.ios&&O&&e.useInput?`fade`:e.transitionShow}return n(Kt),y(Ut),!e.noOptionPrefetch&&e.mapOptions&&e.onFilter!==void 0&&b(()=>{E=!wt()}),Kt(),r(()=>{v!==null&&clearTimeout(v),x!==null&&clearTimeout(x)}),Object.assign(s,{showPopup:Z,hidePopup:Q,removeAtIndex:at,add:st,toggleOption:J,getOptionIndex:()=>f.value,setOptionIndex:Y,moveOptionSelection:ct,filter:X,updateMenuPosition:Ut,updateInputValue:Ct,isOptionSelected:ut,getEmittingOptionValue:it,isOptionDisabled:(...e)=>q.value(...e)===!0,getOptionValue:(...e)=>G.value(...e),getOptionLabel:(...e)=>K.value(...e)}),Object.assign(V,{innerValue:H,fieldClass:T(()=>`q-select q-field--auto-height q-select--with${e.useInput?``:`out`}-input q-select--with${e.useChips?``:`out`}-chips q-select--${e.multiple?`multiple`:`single`}`),inputRef:ae,targetRef:F,hasValue:je,showPopup:Z,floatingLabel:T(()=>!e.hideSelected&&je.value||typeof p.value==`number`||p.value.length!==0||he(e.displayValue)),getControlChild:()=>{if(V.editable.value&&(d.value||!U.value||Ie()))return O?At():Tt();V.hasPopupOpen&&=!1},controlEvents:{onFocusin(e){It(),S=!1,V.onControlFocusin(e)},onFocusout(e){V.onControlFocusout(e,()=>{$(),Pt(e)})},onClick(t){if(se(t),!O&&u.value){if(S&&Date.now()-C<(e.transitionDuration===void 0?300:Number(e.transitionDuration))){S=!1,V.focus();return}Pt(t),F.value?.focus();return}Z(t)},onPointerenter:Lt,onPointerleave:Rt},getControl:t=>{let n=vt(),r=t===!0||!d.value||!O;if(e.useInput)n.push(bt(t,r));else{let i=r?{...We.value,...V.splitAttrs.attributes.value}:void 0,a={ref:r?F:void 0,key:`d_t`,class:`q-select__focus-target`,value:ze.value,readonly:!0,"data-autofocus":t===!0||e.autofocus||void 0,...i,disabled:e.disable,id:r?V.targetUid.value:void 0,onKeydown:ht,onKeyup:ft,onKeypress:mt};r&&Object.assign(a,V.getErrorAriaAttrs(a)),n.push(D(`input`,a)),r&&V.editable.value&&typeof e.autocomplete==`string`&&e.autocomplete.length!==0&&n.push(D(`input`,{class:`q-select__autocomplete-input`,autocomplete:e.autocomplete,tabindex:-1,onKeyup:pt}))}if(!e.disable){let t=ue();if(t!==void 0){let r=nt.value.map(e=>D(`option`,{value:e,selected:!0}));n.push(D(`select`,{class:`hidden`,name:t,multiple:e.multiple},r))}}return D(`div`,{class:`q-field__native row items-center`,...V.splitAttrs.listeners.value},n)},shouldHideLoadingIndicator:()=>e.hideDropdownIcon===!0,getInnerAppend:()=>!e.loading&&!_.value&&!e.hideDropdownIcon?[D(j,{class:`q-select__dropdown-icon`+(u.value?` rotate-180`:``),name:Je.value})]:null}),ye(V)}}),nt={class:`review-filters q-pa-md q-gutter-y-sm`},rt={class:`row q-gutter-x-sm`},it=500,at=_({__name:`ReviewFilters`,props:{search:{required:!0},searchModifiers:{},createdFrom:{required:!0},createdFromModifiers:{},createdTo:{required:!0},createdToModifiers:{},files:{required:!0},filesModifiers:{}},emits:[`update:search`,`update:createdFrom`,`update:createdTo`,`update:files`],setup(e){let t=k(e,`search`),n=k(e,`createdFrom`),r=k(e,`createdTo`),i=k(e,`files`),{t:o}=we();return(e,s)=>(a(),m(`div`,nt,[S(Ie,{modelValue:t.value,"onUpdate:modelValue":s[0]||=e=>t.value=e,debounce:it,placeholder:v(o)(`reviews.filters.searchPlaceholder`)},null,8,[`modelValue`,`placeholder`]),p(`div`,rt,[S(me,{modelValue:n.value,"onUpdate:modelValue":s[1]||=e=>n.value=e,dense:``,outlined:``,type:`date`,class:`col`,debounce:it,label:v(o)(`reviews.filters.from`)},null,8,[`modelValue`,`label`]),S(me,{modelValue:r.value,"onUpdate:modelValue":s[2]||=e=>r.value=e,dense:``,outlined:``,type:`date`,class:`col`,debounce:it,label:v(o)(`reviews.filters.to`)},null,8,[`modelValue`,`label`])]),S(q,{modelValue:i.value,"onUpdate:modelValue":s[3]||=e=>i.value=e,dense:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"hide-dropdown-icon":``,"new-value-mode":`add-unique`,label:v(o)(`reviews.filters.files`),hint:v(o)(`reviews.filters.filesHint`)},null,8,[`modelValue`,`label`,`hint`])]))}}),ot=_({__name:`ReviewListItem`,props:{review:{}},emits:[`click`],setup(e){let t=e,{t:n}=we(),r={in_progress:`grey-7`,approved:`positive`,changes_requested:`negative`},i=T(()=>t.review.name??n(`reviews.list.unnamed`)),o=T(()=>t.review.branch??n(`reviews.list.unknownBranch`)),s=T(()=>new Date(t.review.createdAt).toLocaleString());return(t,c)=>d((a(),x(Ee,{clickable:``,onClick:c[0]||=e=>t.$emit(`click`)},{default:u(()=>[S(ke,{avatar:``},{default:u(()=>[S(j,{color:r[e.review.status],name:`rate_review`},null,8,[`color`])]),_:1}),S(ke,null,{default:u(()=>[S(Re,{class:`text-body2`},{default:u(()=>[C(f(i.value),1)]),_:1}),S(Re,{caption:``},{default:u(()=>[S(j,{name:`account_tree`,size:`14px`,class:`q-mr-xs`}),C(f(o.value)+` `,1),c[1]||=p(`span`,{class:`q-mx-sm`},`·`,-1),C(` `+f(s.value),1)]),_:1})]),_:1}),S(ke,{side:``},{default:u(()=>[S(H,{color:r[e.review.status],outline:``,rounded:``},{default:u(()=>[C(f(v(n)(`reviews.status.${e.review.status}`)),1)]),_:1},8,[`color`])]),_:1})]),_:1})),[[N]])}}),st={class:`text-h6 q-px-sm`},J={key:0,class:`row justify-center q-pa-lg`},Y={key:1,class:`q-pa-lg text-center text-grey-6`},ct=A(_({__name:`ReviewsPage`,setup(t){let{t:n}=we(),r=be(),o=Le(),l=Ne(),d=U(),{reviews:h,loading:g}=Te(o),_=c(null),y=c(null),C=c(null),T=c([]);function D(){o.fetchReviews({search:_.value??``,createdFrom:y.value,createdTo:C.value,files:T.value})}b(D),i([_,y,C,T],D),b(()=>{l.fetchDiff(),d.refresh()});let O=V([`review:created`,`review:updated`,`review:deleted`],()=>{D(),d.refresh()});e(()=>O.close());let k=V([`files:changed`],()=>void l.fetchDiff());e(()=>k.close());function A(e){r.push(`/reviews/${e}`)}function ee(e){r.push(`/reviews/${e.id}`)}return(e,t)=>(a(),x(Fe,{class:`reviews-page column no-wrap`},{default:u(()=>[p(`div`,st,f(v(n)(`nav.reviews`)),1),S(_e),S(at,{search:_.value,"onUpdate:search":t[0]||=e=>_.value=e,"created-from":y.value,"onUpdate:createdFrom":t[1]||=e=>y.value=e,"created-to":C.value,"onUpdate:createdTo":t[2]||=e=>C.value=e,files:T.value,"onUpdate:files":t[3]||=e=>T.value=e},null,8,[`search`,`created-from`,`created-to`,`files`]),S(_e),S(je,{class:`col`},{default:u(()=>[v(g)?(a(),m(`div`,J,[S(ae,{color:`primary`,size:`2em`})])):v(h).length===0?(a(),m(`div`,Y,[p(`p`,null,f(v(n)(`reviews.list.empty`)),1),S(F,{flat:``,color:`primary`,label:v(n)(`reviews.list.emptyAction`),to:{path:`/`}},null,8,[`label`])])):E(``,!0),S(De,{class:`q-pa-md`,separator:``,padding:``},{default:u(()=>[(a(!0),m(w,null,s(v(h),e=>(a(),x(ot,{key:e.id,review:e,onClick:t=>A(e.id)},null,8,[`review`,`onClick`]))),128))]),_:1})]),_:1}),S(ze,{onCreated:ee})]),_:1}))}}),[[`__scopeId`,`data-v-38ce03eb`]]);export{ct as default};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/typescript-Utq2Cl8c.js","assets/typescript-j_1H8WHN.js","assets/javascript-Yelw-5ZN.js","assets/javascript-BzbQS41l.js","assets/vue-CSBlZ1UP.js","assets/css-LbU1hoFO.js","assets/html-BcACZWSP.js","assets/json-B88Oqtu5.js","assets/json-CaljABEy.js","assets/css-CdtkT07m.js","assets/scss-DHtrkMkT.js","assets/html-DDNsd9lV.js","assets/core-Ruj7F7dx.js","assets/engine-oniguruma-Bon2Icja.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{A as e,B as t,F as n,H as r,M as i,P as a,Q as o,S as s,U as c,W as l,bt as u,c as d,d as f,h as p,it as m,k as h,l as g,m as _,p as v,r as y,s as b,u as x,vt as S,yt as C,z as w}from"./runtime-core.esm-bundler-Db5Q9Gsb.js";import{C as T,L as E,R as D,S as O,c as k,o as A,s as j,t as M,z as N}from"./QBtn-DGiC5uLo.js";import{f as P}from"./event-D0kaqRwq.js";import{T as F,n as I,nt as L,t as ee,w as te}from"./index-i1Dlwasy.js";import{n as R}from"./vue-i18n.runtime-CxBM6QPV.js";import{r as ne}from"./client-De34x_P_.js";import{n as re}from"./use-server-events-pJWjsMIC.js";import{a as z,g as ie,h as B,i as ae,o as V}from"./format-Bb6ahGqi.js";import{n as H,t as U}from"./QTooltip-CPN6UvuX.js";import{l as oe,n as se,o as ce,r as le,s as ue}from"./AppPage-B9tWPrzn.js";function W(){let e=o([]),t=o(!1),n=o(!1),r=o(null),i=0,a=null;async function s(o,s){let l=`${s}:${o}`;l!==a&&(c(),a=l);let u=++i;n.value=!0;try{let n=o.split(`/`).map(encodeURIComponent).join(`/`),a=await ne(`/api/git/file/${n}?ref=${encodeURIComponent(s)}`);if(u!==i)return;e.value=a.lines,t.value=a.isBinary,r.value=null}catch(e){if(u!==i)return;r.value=e instanceof Error?e.message:String(e)}finally{u===i&&(n.value=!1)}}function c(){++i,n.value=!1,a=null,e.value=[],t.value=!1,r.value=null}return{lines:e,isBinary:t,loading:n,error:r,fetchContent:s,reset:c}}function G(e){return e.newPath||e.oldPath}var de={class:`diff-line__prefix`},fe={class:`diff-line__content`},pe=T(p({__name:`DiffLineRow`,props:{line:{},tokens:{},oldSelected:{type:Boolean},newSelected:{type:Boolean},selectable:{type:Boolean},wrap:{type:Boolean}},emits:[`old-mousedown`,`old-mouseenter`,`new-mousedown`,`new-mouseenter`],setup(e,{emit:t}){let n=e,r=t,o=b(()=>({added:`+`,removed:`-`,context:` `})[n.line.type]),s=b(()=>n.line.type===`added`?`diff-line--added`:n.line.type===`removed`?`diff-line--removed`:``);function c(e){return e.colorLight&&e.colorDark?`light-dark(${e.colorLight}, ${e.colorDark})`:e.colorLight??e.colorDark}return(t,n)=>(i(),f(`div`,{class:S([`diff-line row no-wrap text-mono`,[s.value,{"diff-line--wrap":e.wrap}]])},[d(`span`,{class:S([`diff-line__gutter`,{"diff-line__gutter--selectable":e.selectable&&e.line.oldLineNumber,"diff-line__gutter--selected":e.oldSelected}]),onMousedown:n[0]||=t=>e.line.oldLineNumber&&r(`old-mousedown`),onMouseenter:n[1]||=t=>e.line.oldLineNumber&&r(`old-mouseenter`)},u(e.line.oldLineNumber??``),35),d(`span`,{class:S([`diff-line__gutter`,{"diff-line__gutter--selectable":e.selectable&&e.line.newLineNumber,"diff-line__gutter--selected":e.newSelected}]),onMousedown:n[2]||=t=>e.line.newLineNumber&&r(`new-mousedown`),onMouseenter:n[3]||=t=>e.line.newLineNumber&&r(`new-mouseenter`)},u(e.line.newLineNumber??``),35),d(`span`,de,u(o.value),1),d(`span`,fe,[e.tokens?(i(!0),f(y,{key:0},a(e.tokens,(e,t)=>(i(),f(`span`,{key:t,style:C({color:c(e)})},u(e.content),5))),128)):(i(),f(y,{key:1},[v(u(e.line.content),1)],64))])],2))}}),[[`__scopeId`,`data-v-ea9014d8`]]),me={class:`comment-form q-pa-sm`},he={class:`row items-center justify-between q-mt-xs`},ge={key:0,class:`text-caption comment-form__line-range`},_e={class:`row q-gutter-x-sm`},K=T(p({__name:`CommentForm`,props:{initialContent:{},submitLabel:{},lineRange:{default:null}},emits:[`submit`,`cancel`],setup(e,{emit:t}){let n=e,r=t,{t:a}=R(),s=o(n.initialContent??``);function c(){let e=s.value.trim();e&&r(`submit`,e)}return(t,n)=>(i(),f(`div`,me,[_(I,{modelValue:s.value,"onUpdate:modelValue":n[0]||=e=>s.value=e,dense:``,outlined:``,autofocus:``,type:`textarea`,autogrow:``,placeholder:m(a)(`reviews.comments.placeholder`),onKeyup:D(N(c,[`ctrl`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeyup`]),d(`div`,he,[e.lineRange?(i(),f(`span`,ge,u(e.lineRange.start===e.lineRange.end?m(a)(`reviews.comments.line`,{line:e.lineRange.start}):m(a)(`reviews.comments.lineRange`,{start:e.lineRange.start,end:e.lineRange.end})),1)):x(``,!0),_(H),d(`div`,_e,[_(ue,{size:`sm`,onClick:n[1]||=e=>r(`cancel`)}),_(ce,{size:`sm`,label:e.submitLabel,disable:!s.value.trim(),onClick:c},null,8,[`label`,`disable`])])])]))}}),[[`__scopeId`,`data-v-08847daa`]]),ve=p({__name:`DeleteButton`,props:{tooltip:{}},setup(e){return(t,n)=>(i(),g(M,s(t.$attrs,{padding:`4px`,flat:``,dense:``,round:``,icon:`delete_outline`,color:`warning`}),{default:c(()=>[e.tooltip?(i(),g(U,{key:0},{default:c(()=>[v(u(e.tooltip),1)]),_:1})):x(``,!0)]),_:1},16))}}),ye=p({__name:`EditButton`,props:{tooltip:{}},setup(e){return(t,n)=>(i(),g(M,s(t.$attrs,{padding:`4px`,flat:``,dense:``,round:``,icon:`edit`,color:`secondary`}),{default:c(()=>[e.tooltip?(i(),g(U,{key:0},{default:c(()=>[v(u(e.tooltip),1)]),_:1})):x(``,!0)]),_:1},16))}}),be={class:`comment-item__body`},xe={key:0,class:`comment-item__suggestion text-mono`},Se={class:`row items-center q-gutter-x-xs q-mt-xs`},Ce=T(p({__name:`CommentItem`,props:{comment:{},readonly:{type:Boolean}},emits:[`edit`,`delete`,`resolve`,`unresolve`],setup(e,{emit:t}){let n=e,r=t,a=O(),{t:s}=R(),l=o(!1);function p(){a.dialog({title:s(`reviews.comments.deleteConfirmTitle`),message:s(`reviews.comments.deleteConfirmMessage`),persistent:!0,ok:{label:s(`reviews.comments.deleteConfirmOk`),color:`negative`,flat:!0},cancel:{label:s(`reviews.comments.deleteConfirmCancel`),flat:!0}}).onOk(()=>{r(`delete`)})}function h(e){r(`edit`,e),l.value=!1}function b(){n.comment.resolved?r(`unresolve`):r(`resolve`)}return(t,n)=>(i(),f(`div`,{class:S([`comment-item q-pa-sm`,{"comment-item--resolved":e.comment.resolved}])},[l.value&&!e.readonly?(i(),g(K,{key:0,"initial-content":e.comment.content,"submit-label":m(s)(`reviews.comments.save`),onSubmit:h,onCancel:n[0]||=e=>l.value=!1},null,8,[`initial-content`,`submit-label`])):(i(),f(y,{key:1},[d(`div`,be,u(e.comment.content),1),e.comment.suggestion?(i(),f(`pre`,xe,u(e.comment.suggestion),1)):x(``,!0),d(`div`,Se,[e.comment.resolved?(i(),g(B,{key:0,color:`positive`,outline:``},{default:c(()=>[v(u(m(s)(`reviews.comments.resolved`)),1)]),_:1})):x(``,!0),_(H),e.readonly?x(``,!0):(i(),f(y,{key:1},[_(M,{flat:``,dense:``,rounded:``,padding:`4px 12px`,size:`sm`,color:`primary`,label:e.comment.resolved?m(s)(`reviews.comments.unresolve`):m(s)(`reviews.comments.resolve`),onClick:b},null,8,[`label`]),_(ye,{size:`sm`,tooltip:m(s)(`reviews.comments.edit`),onClick:n[1]||=e=>l.value=!0},null,8,[`tooltip`]),_(ve,{size:`sm`,tooltip:m(s)(`reviews.comments.delete`),onClick:p},null,8,[`tooltip`])],64))])],64))],2))}}),[[`__scopeId`,`data-v-2017b0cb`]]),we={class:`comment-thread q-pa-sm q-gutter-y-sm`},q=T(p({__name:`CommentThread`,props:{comments:{},showNewForm:{type:Boolean},readonly:{type:Boolean},pendingLineRange:{default:null}},emits:[`submit-new`,`cancel-new`,`edit`,`delete`,`resolve`,`unresolve`],setup(e,{emit:t}){let n=t,{t:r}=R();return(t,o)=>(i(),f(`div`,we,[(i(!0),f(y,null,a(e.comments,t=>(i(),g(Ce,{key:t.id,comment:t,readonly:e.readonly,onEdit:e=>n(`edit`,t.id,e),onDelete:e=>n(`delete`,t.id),onResolve:e=>n(`resolve`,t.id),onUnresolve:e=>n(`unresolve`,t.id)},null,8,[`comment`,`readonly`,`onEdit`,`onDelete`,`onResolve`,`onUnresolve`]))),128)),e.showNewForm&&!e.readonly?(i(),g(K,{key:0,"submit-label":m(r)(`reviews.comments.submit`),"line-range":e.pendingLineRange,onSubmit:o[0]||=e=>n(`submit-new`,e),onCancel:o[1]||=e=>n(`cancel-new`)},null,8,[`submit-label`,`line-range`])):x(``,!0)]))}}),[[`__scopeId`,`data-v-0040f8a5`]]);function J(t){let n=o(null);function r(e,t){n.value={column:e,start:t,current:t}}function i(e,t){n.value&&n.value.column===e&&(n.value.current=t)}function a(e,t){if(!n.value||n.value.column!==e)return!1;let r=Math.min(n.value.start,n.value.current),i=Math.max(n.value.start,n.value.current);return t>=r&&t<=i}function s(){if(!n.value)return;let{column:e,start:r,current:i}=n.value;n.value=null,t({column:e,startKey:Math.min(r,i),endKey:Math.max(r,i)})}return h(()=>window.addEventListener(`mouseup`,s)),e(()=>window.removeEventListener(`mouseup`,s)),{start:r,enter:i,isSelected:a}}var Te={key:0,class:`diff-hunk`},Ee={class:`diff-hunk__header text-mono text-primary`},De=T(p({__name:`DiffHunkView`,props:{hunk:{},lineTokens:{},commentable:{type:Boolean},comments:{},commentsOnly:{type:Boolean},commentsEditable:{type:Boolean},wrap:{type:Boolean}},emits:[`create-comment`,`edit-comment`,`delete-comment`,`resolve-comment`,`unresolve-comment`],setup(e,{emit:t}){let n=e,r=t,s=b(()=>`@@ -${n.hunk.oldStart},${n.hunk.oldLines} +${n.hunk.newStart},${n.hunk.newLines} @@`),c=o(null),l=o(`context`),p=J(e=>{c.value=e;let t=n.hunk.lines.find(t=>e.column===`old`?t.oldLineNumber===e.startKey:t.newLineNumber===e.startKey);l.value=t?.type??`context`});function m(e,t){n.commentable&&t!==null&&p.start(e,t)}function h(e,t){n.commentable&&t!==null&&p.enter(e,t)}function v(e,t){return!n.commentable||t===null?!1:c.value&&c.value.column===e&&t>=c.value.startKey&&t<=c.value.endKey?!0:p.isSelected(e,t)}function S(e){return e.lineType===`removed`?`old`:`new`}function C(e){return(n.comments??[]).some(t=>{if(t.lineNumber===null||t.lineNumberEnd===null)return!1;let n=S(t)===`old`?e.oldLineNumber:e.newLineNumber;return n!==null&&n>=t.lineNumber&&n<=t.lineNumberEnd})}let w=b(()=>n.hunk.lines.map((e,t)=>({line:e,index:t})).filter(e=>!n.commentsOnly||C(e.line)));function T(e,t){return t===null?[]:(n.comments??[]).filter(n=>S(n)===e&&n.lineNumberEnd===t)}function E(e,t){return!!c.value&&c.value.column===e&&t===c.value.endKey}function D(e){return[...T(`old`,e.oldLineNumber),...T(`new`,e.newLineNumber)]}function O(e){return D(e).length>0||E(`old`,e.oldLineNumber)||E(`new`,e.newLineNumber)}function k(e){return E(`old`,e.oldLineNumber)||E(`new`,e.newLineNumber)}function A(e){c.value&&=(r(`create-comment`,{lineNumber:c.value.startKey,lineNumberEnd:c.value.endKey,lineType:l.value,content:e}),null)}function j(){c.value=null}return(t,n)=>!e.commentsOnly||w.value.length>0?(i(),f(`div`,Te,[d(`div`,Ee,u(s.value),1),(i(!0),f(y,null,a(w.value,({line:t,index:a})=>(i(),f(y,{key:a},[_(pe,{line:t,tokens:e.lineTokens?.[a],selectable:e.commentable,wrap:e.wrap,"old-selected":v(`old`,t.oldLineNumber),"new-selected":v(`new`,t.newLineNumber),onOldMousedown:e=>m(`old`,t.oldLineNumber),onOldMouseenter:e=>h(`old`,t.oldLineNumber),onNewMousedown:e=>m(`new`,t.newLineNumber),onNewMouseenter:e=>h(`new`,t.newLineNumber)},null,8,[`line`,`tokens`,`selectable`,`wrap`,`old-selected`,`new-selected`,`onOldMousedown`,`onOldMouseenter`,`onNewMousedown`,`onNewMouseenter`]),O(t)?(i(),g(q,{key:0,comments:D(t),readonly:!e.commentsEditable,"show-new-form":k(t),"pending-line-range":c.value&&{start:c.value.startKey,end:c.value.endKey},onSubmitNew:A,onCancelNew:j,onEdit:n[0]||=(e,t)=>r(`edit-comment`,e,t),onDelete:n[1]||=e=>r(`delete-comment`,e),onResolve:n[2]||=e=>r(`resolve-comment`,e),onUnresolve:n[3]||=e=>r(`unresolve-comment`,e)},null,8,[`comments`,`readonly`,`show-new-form`,`pending-line-range`])):x(``,!0)],64))),128))])):x(``,!0)}}),[[`__scopeId`,`data-v-553c5515`]]),Oe={class:`file-content-line__content`},ke=T(p({__name:`FileContentLine`,props:{lineNumber:{},content:{},tokens:{},selected:{type:Boolean},selectable:{type:Boolean},wrap:{type:Boolean}},emits:[`gutter-mousedown`,`gutter-mouseenter`],setup(e,{emit:t}){let n=t;function r(e){return e.colorLight&&e.colorDark?`light-dark(${e.colorLight}, ${e.colorDark})`:e.colorLight??e.colorDark}return(t,o)=>(i(),f(`div`,{class:S([`file-content-line row no-wrap text-mono`,{"file-content-line--wrap":e.wrap}])},[d(`span`,{class:S([`file-content-line__gutter`,{"file-content-line__gutter--selectable":e.selectable,"file-content-line__gutter--selected":e.selected}]),onMousedown:o[0]||=e=>n(`gutter-mousedown`),onMouseenter:o[1]||=e=>n(`gutter-mouseenter`)},u(e.lineNumber),35),d(`span`,Oe,[e.tokens?(i(!0),f(y,{key:0},a(e.tokens,(e,t)=>(i(),f(`span`,{key:t,style:C({color:r(e)})},u(e.content),5))),128)):(i(),f(y,{key:1},[v(u(e.content||` `),1)],64))])],2))}}),[[`__scopeId`,`data-v-791dfa37`]]),Ae={ts:`typescript`,tsx:`tsx`,js:`javascript`,jsx:`jsx`,mjs:`javascript`,cjs:`javascript`,vue:`vue`,json:`json`,md:`markdown`,css:`css`,scss:`scss`,html:`html`,yml:`yaml`,yaml:`yaml`,sh:`bash`,py:`python`,go:`go`,rs:`rust`,java:`java`,kt:`kotlin`,kts:`kotlin`},Y={typescript:()=>L(()=>import(`./typescript-Utq2Cl8c.js`),__vite__mapDeps([0,1])),tsx:()=>L(()=>import(`./tsx-udAQXfEw.js`),[]),javascript:()=>L(()=>import(`./javascript-Yelw-5ZN.js`),__vite__mapDeps([2,3])),jsx:()=>L(()=>import(`./jsx-Bz0zcwM4.js`),[]),vue:()=>L(()=>import(`./vue-CSBlZ1UP.js`),__vite__mapDeps([4,5,3,6,7,1])),json:()=>L(()=>import(`./json-CaljABEy.js`),__vite__mapDeps([8,7])),markdown:()=>L(()=>import(`./markdown-BYOwaDjH.js`),[]),css:()=>L(()=>import(`./css-CdtkT07m.js`),__vite__mapDeps([9,5])),scss:()=>L(()=>import(`./scss-DHtrkMkT.js`),__vite__mapDeps([10,5])),html:()=>L(()=>import(`./html-DDNsd9lV.js`),__vite__mapDeps([11,6,5,3])),yaml:()=>L(()=>import(`./yaml-rwi0_p6S.js`),[]),bash:()=>L(()=>import(`./bash-CLZ0U2zV.js`),[]),python:()=>L(()=>import(`./python-gzcpVVnB.js`),[]),go:()=>L(()=>import(`./go-rLFTqkRN.js`),[]),rust:()=>L(()=>import(`./rust-Cfkwpbl8.js`),[]),java:()=>L(()=>import(`./java-BXcb2rRD.js`),[]),kotlin:()=>L(()=>import(`./kotlin-DhhofPvG.js`),[])},X={light:()=>L(()=>import(`./github-light-EUqPIrTm.js`),[]),dark:()=>L(()=>import(`./github-dark-C-LZuMrd.js`),[])};function Z(e){let t=e.split(`.`);return t.length<2?`text`:Ae[t.pop().toLowerCase()]??`text`}var Q=null,$=new Set;async function je(e){Q||=(async()=>{let[{createHighlighterCore:e},{createOnigurumaEngine:t}]=await Promise.all([L(()=>import(`./core-Ruj7F7dx.js`),__vite__mapDeps([12,13])),L(()=>import(`./engine-oniguruma-Bon2Icja.js`),[])]);return e({themes:[X.light(),X.dark()],langs:[],engine:t(()=>L(()=>import(`./wasm-BnjxR4X6.js`),[]))})})();let t=await Q;return $.has(e)||(await t.loadLanguage(Y[e]()),$.add(e)),t}async function Me(e,t){if(e===`text`||!Y[e]||t.length===0)return null;try{return(await je(e)).codeToTokensWithThemes(t.join(`
|
|
3
|
-
`),{lang:e,themes:{light:`github-light`,dark:`github-dark`}}).map(e=>e.map(e=>({content:e.content,colorLight:e.variants.light?.color,colorDark:e.variants.dark?.color})))}catch{return null}}async function Ne(e){let t=e.hunks.flatMap(e=>e.lines.map(e=>e.content));return Me(Z(e.newPath||e.oldPath),t)}async function Pe(e,t){return Me(Z(e),t)}var Fe={class:`file-content-view`},Ie=T(p({__name:`FileContentView`,props:{path:{},lines:{},commentable:{type:Boolean},comments:{},commentsEditable:{type:Boolean},wrap:{type:Boolean}},emits:[`create-comment`,`edit-comment`,`delete-comment`,`resolve-comment`,`unresolve-comment`],setup(e,{emit:t}){let n=e,s=t,c=o(null),l=0;r(()=>[n.path,n.lines],async([e,t])=>{let n=++l;if(c.value=null,t.length>0){let r=await Pe(e,t);n===l&&(c.value=r)}},{immediate:!0});let u=o(null),d=J(e=>{u.value=e});function p(e){return n.commentable?u.value&&e>=u.value.startKey&&e<=u.value.endKey?!0:d.isSelected(`full`,e):!1}function m(e){return(n.comments??[]).filter(t=>t.lineNumberEnd===e)}function h(e){return!!u.value&&e===u.value.endKey}function v(e){n.commentable&&d.start(`full`,e)}function b(e){n.commentable&&d.enter(`full`,e)}function S(e){u.value&&=(s(`create-comment`,{lineNumber:u.value.startKey,lineNumberEnd:u.value.endKey,content:e}),null)}function C(){u.value=null}return(t,n)=>(i(),f(`div`,Fe,[(i(!0),f(y,null,a(e.lines,(t,r)=>(i(),f(y,{key:r},[_(ke,{"line-number":r+1,content:t,tokens:c.value?.[r],selectable:e.commentable,selected:p(r+1),wrap:e.wrap,onGutterMousedown:e=>v(r+1),onGutterMouseenter:e=>b(r+1)},null,8,[`line-number`,`content`,`tokens`,`selectable`,`selected`,`wrap`,`onGutterMousedown`,`onGutterMouseenter`]),m(r+1).length>0||h(r+1)?(i(),g(q,{key:0,comments:m(r+1),readonly:!e.commentsEditable,"show-new-form":h(r+1),"pending-line-range":u.value&&{start:u.value.startKey,end:u.value.endKey},onSubmitNew:S,onCancelNew:C,onEdit:n[0]||=(e,t)=>s(`edit-comment`,e,t),onDelete:n[1]||=e=>s(`delete-comment`,e),onResolve:n[2]||=e=>s(`resolve-comment`,e),onUnresolve:n[3]||=e=>s(`unresolve-comment`,e)},null,8,[`comments`,`readonly`,`show-new-form`,`pending-line-range`])):x(``,!0)],64))),128))]))}}),[[`__scopeId`,`data-v-c9af4aae`]]),Le={key:0,class:`row justify-center q-pa-lg`},Re={key:1,class:`text-caption text-grey-6 q-pa-md q-mb-none`},ze={key:2,class:`text-caption text-grey-6 q-pa-md`},Be={key:3,class:`text-caption text-grey-6 q-pa-md q-mb-none`},Ve=p({__name:`DiffFileFullView`,props:{path:{},commentable:{type:Boolean,default:!1},comments:{default:()=>[]},commentsEditable:{type:Boolean},wrap:{type:Boolean}},emits:[`create-comment`,`edit-comment`,`delete-comment`,`resolve-comment`,`unresolve-comment`],setup(t,{emit:n}){let a=t,o=n,{t:s}=R(),{lines:c,isBinary:l,loading:p,error:h,fetchContent:y}=W();r(()=>a.path,e=>{y(e,`WORKTREE`)},{immediate:!0});let x=re([`files:changed`],()=>{y(a.path,`WORKTREE`)});e(()=>x.close());let S=oe(),C=b(()=>S.unstagedFiles.some(e=>e.status===`deleted`&&G(e)===a.path));return(e,n)=>m(p)&&m(c).length===0&&!m(h)?(i(),f(`div`,Le,[_(j,{color:`primary`,size:`2em`})])):C.value?(i(),f(`p`,Re,u(m(s)(`changes.fullFileDeleted`)),1)):m(h)?(i(),f(`div`,ze,[v(u(m(s)(`changes.fullFileLoadError`))+` `,1),d(`div`,null,u(m(h)),1)])):m(l)?(i(),f(`p`,Be,u(m(s)(`changes.binaryFile`)),1)):(i(),g(Ie,{key:4,path:t.path,lines:m(c),commentable:t.commentable,"comments-editable":t.commentsEditable,comments:t.comments,wrap:t.wrap,onCreateComment:n[0]||=e=>o(`create-comment`,e),onEditComment:n[1]||=(e,t)=>o(`edit-comment`,e,t),onDeleteComment:n[2]||=e=>o(`delete-comment`,e),onResolveComment:n[3]||=e=>o(`resolve-comment`,e),onUnresolveComment:n[4]||=e=>o(`unresolve-comment`,e)},null,8,[`path`,`lines`,`commentable`,`comments-editable`,`comments`,`wrap`]))}}),He={},Ue={class:`file-card-frame`};function We(e,t){return i(),f(`div`,Ue,[n(e.$slots,`header`,{},void 0,!0),n(e.$slots,`default`,{},void 0,!0)])}var Ge=T(He,[[`render`,We],[`__scopeId`,`data-v-d451c02f`]]),Ke={childList:!0,subtree:!0,attributes:!0,characterData:!0,attributeOldValue:!0,characterDataOldValue:!0};function qe(e,t,n){if(typeof n!=`function`){t.handler=void 0,t.observer!==void 0&&(t.observer.disconnect(),t.observer=void 0);return}t.handler=n,t.observer===void 0&&(t.observer=new MutationObserver(n=>{(t.handler(n)===!1||t.once===!0)&&Je(e)}),t.observer.observe(e,t.opts))}function Je(e){let t=e.__qmutation;t!==void 0&&(t.observer?.disconnect(),e.__qmutation=void 0)}var Ye=P({name:`mutation`,mounted(e,{modifiers:{once:t,...n},value:r}){let i={once:t,opts:Object.keys(n).length===0?Ke:n};qe(e,i,r),e.__qmutation=i},updated(e,{oldValue:t,value:n}){if(t!==n){let t=e.__qmutation;t!==void 0&&qe(e,t,n)}},beforeUnmount:Je}),Xe={class:`horizontal-scroll-body`},Ze=[`tabindex`,`aria-label`],Qe={class:`horizontal-scroll-body__content`},$e=T(p({__name:`HorizontalScrollBody`,props:{label:{}},setup(e){let a=t(`viewport`),s=t(`bar`),c=o(0),u=o(!1);function p(){let e=a.value;e&&(c.value=e.scrollWidth,u.value=e.scrollWidth>e.clientWidth+1)}r([c,u],()=>m(a.value,s.value),{flush:`post`});function m(e,t){e&&t&&t.scrollLeft!==e.scrollLeft&&(t.scrollLeft=e.scrollLeft)}return(t,r)=>(i(),f(`div`,Xe,[l((i(),f(`div`,{ref_key:`viewport`,ref:a,class:`horizontal-scroll-body__viewport`,tabindex:u.value?0:void 0,role:`group`,"aria-label":e.label,onScroll:r[0]||=e=>m(a.value,s.value)},[d(`div`,Qe,[n(t.$slots,`default`,{},void 0,!0)]),_(ie,{debounce:0,onResize:p})],40,Ze)),[[Ye,p,void 0,{childList:!0,subtree:!0,characterData:!0}]]),l(d(`div`,{ref_key:`bar`,ref:s,class:`horizontal-scroll-body__bar`,"aria-hidden":`true`,tabindex:`-1`,onScroll:r[1]||=e=>m(s.value,a.value)},[d(`div`,{style:C({width:`${c.value}px`,height:`1px`})},null,4)],544),[[E,u.value]])]))}}),[[`__scopeId`,`data-v-8d2efd69`]]);function et(e){let t=document.createElement(`textarea`);t.value=e,t.contentEditable=`true`,t.style.position=`fixed`;let n=()=>{};te(n),document.body.append(t),t.focus(),t.select();let r=document.execCommand(`copy`);return t.remove(),F(n),r}function tt(e){if(navigator.clipboard)return navigator.clipboard.writeText(e);let t=et(e);return t?Promise.resolve(!0):Promise.reject(t)}var nt=p({__name:`CopyButton`,props:{value:{},tooltip:{}},setup(e){let t=e,n=o(!1),r;async function a(){try{await tt(t.value),n.value=!0,clearTimeout(r),r=setTimeout(()=>{n.value=!1},1500)}catch{}}return(t,r)=>l((i(),g(M,{flat:``,dense:``,round:``,size:`sm`,color:n.value?`positive`:void 0,icon:n.value?`check`:`content_copy`,"aria-label":e.tooltip,onClick:N(a,[`stop`])},{default:c(()=>[_(U,null,{default:c(()=>[v(u(e.tooltip),1)]),_:1})]),_:1},8,[`color`,`icon`,`aria-label`])),[[A]])}}),rt={class:`file-card-header row items-center no-wrap`},it={class:`file-card-header__name row items-center no-wrap`},at={class:`ellipsis text-mono file-card-header__path`},ot=T(p({__name:`FileCardHeader`,props:{path:{}},setup(e){let{t}=R();return(r,a)=>(i(),f(`div`,rt,[n(r.$slots,`leading`,{},void 0,!0),d(`div`,it,[d(`span`,at,u(e.path),1),_(nt,{value:e.path,tooltip:m(t)(`common.copyPath`)},null,8,[`value`,`tooltip`]),n(r.$slots,`badges`,{},void 0,!0)]),_(H),n(r.$slots,`default`,{},void 0,!0)]))}}),[[`__scopeId`,`data-v-28b34b1f`]]),st=p({__name:`FileHeaderMenu`,props:{modelValue:{type:Boolean,required:!0},modelModifiers:{}},emits:[`update:modelValue`],setup(e){let t=w(e,`modelValue`),{t:n}=R();return(e,r)=>l((i(),g(M,{flat:``,round:``,dense:``,size:`sm`,icon:`more_vert`,"aria-label":m(n)(`changes.fileActions`)},{default:c(()=>[_(le,null,{default:c(()=>[_(ae,{dense:``},{default:c(()=>[l((i(),g(z,{clickable:``,onClick:r[0]||=e=>t.value=!t.value},{default:c(()=>[_(V,{side:``},{default:c(()=>[_(k,{name:t.value?`check_box`:`check_box_outline_blank`},null,8,[`name`])]),_:1}),_(V,null,{default:c(()=>[v(u(m(n)(`changes.wrapLines`)),1)]),_:1})]),_:1})),[[se]])]),_:1})]),_:1})]),_:1},8,[`aria-label`])),[[A]])}}),ct={key:0,class:`comment-count-badge relative-position inline-block`},lt=T(p({__name:`CommentCountBadge`,props:{count:{}},setup(e){let{t}=R();return(n,r)=>e.count>0?(i(),f(`span`,ct,[_(k,{name:`mode_comment`,size:`20px`}),_(B,{color:`primary`,floating:``,rounded:``},{default:c(()=>[v(u(e.count),1)]),_:1}),_(U,null,{default:c(()=>[v(u(m(t)(`reviews.comments.count`,{count:e.count})),1)]),_:1})])):x(``,!0)}}),[[`__scopeId`,`data-v-1178be5a`]]);function ut(e){return Z(e)===`markdown`}var dt={class:`diff-file-card__status-section`},ft={class:`text-caption diff-file-card__stats`},pt={class:`text-positive`},mt={class:`text-negative q-ml-xs`},ht={key:0,class:`text-caption text-grey-6 q-pa-md q-mb-none`},gt={key:1,class:`text-caption text-grey-6 q-pa-md q-mb-none`},_t=T(p({__name:`DiffFileCard`,props:{file:{},expanded:{type:Boolean},commentable:{type:Boolean,default:!1},comments:{default:()=>[]},commentsOnly:{type:Boolean},commentsEditable:{type:Boolean},noFullFile:{type:Boolean,default:!1}},emits:[`toggle`,`expand`,`create-comment`,`edit-comment`,`delete-comment`,`resolve-comment`,`unresolve-comment`],setup(e,{emit:t}){let n=e,s=t,{t:p}=R(),h={added:`positive`,modified:`warning`,deleted:`negative`,renamed:`purple`},C=b(()=>G(n.file)),w=o(ut(C.value)),T=b(()=>(n.comments??[]).filter(e=>e.lineType!==null)),E=b(()=>(n.comments??[]).filter(e=>e.lineType===null)),D=o(`diff`),O=b({get:()=>D.value===`full`,set:e=>{e?(D.value=`full`,n.expanded||s(`expand`)):n.expanded&&(D.value=`diff`)}}),j=o(null),M=0;r(()=>n.file,async e=>{let t=++M;D.value=`diff`,j.value=null;let n=await Ne(e);t===M&&(j.value=n)},{immediate:!0});function P(e){if(!j.value)return null;let t=n.file.hunks.slice(0,e).reduce((e,t)=>e+t.lines.length,0);return j.value.slice(t,t+n.file.hunks[e].lines.length)}function F(e){s(`create-comment`,{filePath:C.value,...e})}function I(e){s(`create-comment`,{filePath:C.value,lineType:null,...e})}return(t,n)=>(i(),g(Ge,{id:`diff-file-${C.value}`,class:`diff-file-card`},{header:c(()=>[l((i(),g(z,{clickable:``,dense:``,class:`diff-file-card__header-item`,onClick:n[4]||=e=>s(`toggle`)},{default:c(()=>[_(ot,{path:C.value},{leading:c(()=>[_(k,{name:`chevron_right`,size:`xs`,class:S([`diff-file-card__chevron`,{"diff-file-card__chevron--expanded":e.expanded}])},null,8,[`class`])]),badges:c(()=>[_(lt,{count:e.comments.length},null,8,[`count`])]),default:c(()=>[!e.noFullFile&&e.file.status!==`deleted`?(i(),f(`div`,{key:0,class:`diff-file-card__toggle-section`,onClick:n[1]||=N(()=>{},[`stop`])},[_(ee,{modelValue:O.value,"onUpdate:modelValue":n[0]||=e=>O.value=e,"left-label":``,dense:``,size:`xs`,label:m(p)(`changes.showFullFile`)},null,8,[`modelValue`,`label`])])):x(``,!0),d(`div`,dt,[_(B,{color:h[e.file.status],outline:``,rounded:``},{default:c(()=>[v(u(m(p)(`changes.fileStatus.${e.file.status}`)),1)]),_:1},8,[`color`])]),d(`span`,ft,[d(`span`,pt,`+`+u(e.file.additions),1),d(`span`,mt,`-`+u(e.file.deletions),1)]),d(`div`,{onClick:n[3]||=N(()=>{},[`stop`])},[_(st,{modelValue:w.value,"onUpdate:modelValue":n[2]||=e=>w.value=e},null,8,[`modelValue`])])]),_:1},8,[`path`])]),_:1})),[[A]])]),default:c(()=>[e.expanded?(i(),g($e,{key:0,class:`diff-file-card__body`,label:C.value},{default:c(()=>[D.value===`full`?(i(),g(Ve,{key:0,path:C.value,commentable:e.commentable,"comments-editable":e.commentsEditable,comments:E.value,wrap:w.value,onCreateComment:I,onEditComment:n[5]||=(e,t)=>s(`edit-comment`,e,t),onDeleteComment:n[6]||=e=>s(`delete-comment`,e),onResolveComment:n[7]||=e=>s(`resolve-comment`,e),onUnresolveComment:n[8]||=e=>s(`unresolve-comment`,e)},null,8,[`path`,`commentable`,`comments-editable`,`comments`,`wrap`])):(i(),f(y,{key:1},[e.file.isBinary?(i(),f(`p`,ht,u(m(p)(`changes.binaryFile`)),1)):e.file.hunks.length===0?(i(),f(`p`,gt,u(m(p)(`changes.noTextChanges`)),1)):x(``,!0),(i(!0),f(y,null,a(e.file.hunks,(t,r)=>(i(),g(De,{key:r,hunk:t,"line-tokens":P(r),commentable:e.commentable,"comments-editable":e.commentsEditable,comments:T.value,"comments-only":e.commentsOnly,wrap:w.value,onCreateComment:F,onEditComment:n[9]||=(e,t)=>s(`edit-comment`,e,t),onDeleteComment:n[10]||=e=>s(`delete-comment`,e),onResolveComment:n[11]||=e=>s(`resolve-comment`,e),onUnresolveComment:n[12]||=e=>s(`unresolve-comment`,e)},null,8,[`hunk`,`line-tokens`,`commentable`,`comments-editable`,`comments`,`comments-only`,`wrap`]))),128))],64))]),_:1},8,[`label`])):x(``,!0)]),_:1},8,[`id`]))}}),[[`__scopeId`,`data-v-3754ca08`]]),vt={class:`row q-gutter-x-sm no-wrap`},yt=p({__name:`StatusSwitcher`,props:{status:{}},emits:[`change`],setup(e,{emit:t}){let n=e,r=t,{t:o}=R(),s=O(),c=[{value:`in_progress`,color:`grey-7`},{value:`approved`,color:`primary`},{value:`changes_requested`,color:`warning`}];function l(e){e.value!==n.status&&s.dialog({title:o(`reviews.confirmStatusChange.title`),message:o(`reviews.confirmStatusChange.message`,{status:o(`reviews.status.${e.value}`)}),persistent:!0,ok:{label:o(`reviews.confirmStatusChange.ok`),color:`accent`},cancel:{label:o(`reviews.confirmStatusChange.cancel`),flat:!0}}).onOk(()=>{r(`change`,e.value)})}return(t,n)=>(i(),f(`div`,vt,[(i(),f(y,null,a(c,t=>_(M,{key:t.value,dense:``,size:`sm`,padding:`2px 8px`,"no-caps":``,outline:e.status!==t.value,unelevated:e.status===t.value,color:t.color,label:m(o)(`reviews.status.${t.value}`),onClick:e=>l(t)},null,8,[`outline`,`unelevated`,`color`,`label`,`onClick`])),64))]))}});export{ot as a,G as c,st as i,W as l,_t as n,Ge as o,ut as r,Ie as s,yt as t};
|