@maycombhq/atticus 0.0.0-stage → 2.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +177 -0
- package/README.md +17 -2
- package/THIRD-PARTY-LICENSES.txt +2607 -0
- package/dist/bin.js +47 -0
- package/dist/chunk-23W7VWKR.js +2609 -0
- package/dist/chunk-2C5B464C.js +106 -0
- package/dist/chunk-2LLFKP7C.js +53 -0
- package/dist/chunk-2MD7TXSG.js +166 -0
- package/dist/chunk-2UIQBDJO.js +131 -0
- package/dist/chunk-32MPK524.js +378 -0
- package/dist/chunk-3ALD2W2A.js +95 -0
- package/dist/chunk-3G4YI4ZU.js +16 -0
- package/dist/chunk-4AK7IBVP.js +915 -0
- package/dist/chunk-4BMDGTED.js +69 -0
- package/dist/chunk-4NDAAFQT.js +103 -0
- package/dist/chunk-4Q3NN7VF.js +32 -0
- package/dist/chunk-4RS5KZQD.js +25 -0
- package/dist/chunk-4SKZDI62.js +22 -0
- package/dist/chunk-55YODD3N.js +385 -0
- package/dist/chunk-56YQ6ROQ.js +3479 -0
- package/dist/chunk-5A5L3T2U.js +583 -0
- package/dist/chunk-5FEOD73Z.js +374 -0
- package/dist/chunk-5GDRCDQB.js +32 -0
- package/dist/chunk-5WS2YOGD.js +95 -0
- package/dist/chunk-65NYPGRC.js +766 -0
- package/dist/chunk-6BVONWJ7.js +50 -0
- package/dist/chunk-6D4FRTFF.js +53 -0
- package/dist/chunk-6GPJOFV4.js +149 -0
- package/dist/chunk-6JCPI55B.js +92 -0
- package/dist/chunk-6JUBZBMW.js +56 -0
- package/dist/chunk-6SCVQZX5.js +2522 -0
- package/dist/chunk-6TACQN3N.js +41 -0
- package/dist/chunk-72TXNLOC.js +496 -0
- package/dist/chunk-76WKMA4J.js +14 -0
- package/dist/chunk-7EFILTCI.js +67 -0
- package/dist/chunk-7EKXJZ2Y.js +2902 -0
- package/dist/chunk-7EOBHUMC.js +133 -0
- package/dist/chunk-7JUKDRSZ.js +1726 -0
- package/dist/chunk-7NN5VWDC.js +43 -0
- package/dist/chunk-7UFQZXZA.js +5949 -0
- package/dist/chunk-A3KPZJ5M.js +131 -0
- package/dist/chunk-A6AC72A5.js +48 -0
- package/dist/chunk-A7KZKIZX.js +166 -0
- package/dist/chunk-ABWHYWNI.js +101 -0
- package/dist/chunk-AFFIK6JI.js +46 -0
- package/dist/chunk-AHOQZ4OK.js +37 -0
- package/dist/chunk-AVJDSJ2F.js +18 -0
- package/dist/chunk-AXXCPAP6.js +203 -0
- package/dist/chunk-AY3QXYMB.js +41 -0
- package/dist/chunk-B2OKWJIU.js +143 -0
- package/dist/chunk-B632FH3I.js +251 -0
- package/dist/chunk-BLW4SXCU.js +38 -0
- package/dist/chunk-BVS2K73A.js +33 -0
- package/dist/chunk-BWZ77RQT.js +25 -0
- package/dist/chunk-BYBUDX4T.js +163 -0
- package/dist/chunk-BYZCY6SP.js +230 -0
- package/dist/chunk-C6EKFH7J.js +169 -0
- package/dist/chunk-C6MZFGN7.js +271 -0
- package/dist/chunk-CAQZUNOH.js +1150 -0
- package/dist/chunk-CD4XHYGY.js +856 -0
- package/dist/chunk-CEZQOLEO.js +1217 -0
- package/dist/chunk-CHWTETW7.js +128 -0
- package/dist/chunk-CMV7TGU6.js +31 -0
- package/dist/chunk-CNUKCS2T.js +2741 -0
- package/dist/chunk-CP3L3FH7.js +549 -0
- package/dist/chunk-CPGCA6GZ.js +41 -0
- package/dist/chunk-CWM6KM5G.js +315 -0
- package/dist/chunk-CXDSTRUJ.js +873 -0
- package/dist/chunk-D3PO4DOZ.js +261 -0
- package/dist/chunk-DFBCSHVT.js +69 -0
- package/dist/chunk-DHPACDG7.js +104 -0
- package/dist/chunk-DPC5Y5DL.js +3898 -0
- package/dist/chunk-DPUYDDQG.js +164 -0
- package/dist/chunk-DQN7TF5D.js +325 -0
- package/dist/chunk-EADP3PEN.js +450 -0
- package/dist/chunk-ED2LWWIP.js +878 -0
- package/dist/chunk-EHVTK3UE.js +116 -0
- package/dist/chunk-EPTBZ3GP.js +101 -0
- package/dist/chunk-EXIMEJ2X.js +545 -0
- package/dist/chunk-EYWIDJFU.js +130 -0
- package/dist/chunk-F44OMYIN.js +54 -0
- package/dist/chunk-F7HYOUFF.js +287 -0
- package/dist/chunk-FALXWAMD.js +182 -0
- package/dist/chunk-FBNPE7HS.js +49 -0
- package/dist/chunk-FSWUD5QB.js +108 -0
- package/dist/chunk-FVQISWPW.js +296 -0
- package/dist/chunk-G2B4ZQGH.js +240 -0
- package/dist/chunk-GK6XK5SP.js +1227 -0
- package/dist/chunk-GLEBK5L3.js +34 -0
- package/dist/chunk-GNB5QDDI.js +25 -0
- package/dist/chunk-GQ4N4WKF.js +1142 -0
- package/dist/chunk-GRMR5TRQ.js +119 -0
- package/dist/chunk-HC6XKREB.js +334 -0
- package/dist/chunk-HFQCFSJR.js +60 -0
- package/dist/chunk-HJDICQA4.js +102 -0
- package/dist/chunk-HLJAXMM4.js +233 -0
- package/dist/chunk-HVIMMDVB.js +162 -0
- package/dist/chunk-HZVLAPN5.js +32 -0
- package/dist/chunk-I3E7CX4H.js +155 -0
- package/dist/chunk-IQFTZ37C.js +2919 -0
- package/dist/chunk-ITY3VJRX.js +285 -0
- package/dist/chunk-JBTK5OP2.js +55 -0
- package/dist/chunk-JPGCERE2.js +26 -0
- package/dist/chunk-JQDNHIBC.js +38 -0
- package/dist/chunk-JRBCWLOR.js +307 -0
- package/dist/chunk-JRZQA2JM.js +212 -0
- package/dist/chunk-KCBJCA66.js +45 -0
- package/dist/chunk-KJPMEAI4.js +705 -0
- package/dist/chunk-KQDZXGNR.js +14 -0
- package/dist/chunk-KUUQR4HA.js +264 -0
- package/dist/chunk-L24C55VN.js +7923 -0
- package/dist/chunk-L3BX5ZIB.js +400 -0
- package/dist/chunk-L6SGQIR3.js +471 -0
- package/dist/chunk-LBENYT3H.js +66 -0
- package/dist/chunk-LNAJW6FB.js +47 -0
- package/dist/chunk-MC3H7736.js +19910 -0
- package/dist/chunk-MMOSZPWJ.js +273 -0
- package/dist/chunk-MXCHWULV.js +285 -0
- package/dist/chunk-N3E56YPN.js +344 -0
- package/dist/chunk-NHFQMOVK.js +180 -0
- package/dist/chunk-NQU6KNQF.js +27 -0
- package/dist/chunk-OIK5YPTN.js +391 -0
- package/dist/chunk-OLWFG75W.js +4330 -0
- package/dist/chunk-ONPUIE7Y.js +29 -0
- package/dist/chunk-OW7D2PJL.js +376 -0
- package/dist/chunk-P63VL4HE.js +2357 -0
- package/dist/chunk-PA4YNUMU.js +45 -0
- package/dist/chunk-PAMPPUR6.js +4500 -0
- package/dist/chunk-PBS3OFNN.js +113 -0
- package/dist/chunk-PFT3VTS4.js +214 -0
- package/dist/chunk-PFTA6BZF.js +49 -0
- package/dist/chunk-PNN5KLAY.js +119 -0
- package/dist/chunk-PRPPGYZG.js +104 -0
- package/dist/chunk-PUKEZ37F.js +666 -0
- package/dist/chunk-Q3HOFXZJ.js +76 -0
- package/dist/chunk-Q5AMFEWD.js +119 -0
- package/dist/chunk-QKRNMBJO.js +80 -0
- package/dist/chunk-QSU47IQ5.js +36 -0
- package/dist/chunk-QSXK2RGH.js +688 -0
- package/dist/chunk-QXNWYUYI.js +52 -0
- package/dist/chunk-R6RY4Q5T.js +51 -0
- package/dist/chunk-RCU3MPY2.js +1496 -0
- package/dist/chunk-RLIB4JUN.js +174 -0
- package/dist/chunk-RYSCLMU3.js +1991 -0
- package/dist/chunk-RZUZ4RJJ.js +415 -0
- package/dist/chunk-S2A7YC3Q.js +41433 -0
- package/dist/chunk-S2FBBX7D.js +540 -0
- package/dist/chunk-S34B4QPI.js +430 -0
- package/dist/chunk-SETWVXOJ.js +2078 -0
- package/dist/chunk-SMA4N4AC.js +211 -0
- package/dist/chunk-SP2I63OO.js +252 -0
- package/dist/chunk-STHSY74Q.js +242 -0
- package/dist/chunk-STUPFGXY.js +3206 -0
- package/dist/chunk-T5I4S2W3.js +34 -0
- package/dist/chunk-T6AIP7H5.js +3851 -0
- package/dist/chunk-TANFV3MZ.js +531 -0
- package/dist/chunk-TAVDMUV3.js +189 -0
- package/dist/chunk-TBSQJ6IV.js +324 -0
- package/dist/chunk-TIZHP7KE.js +408 -0
- package/dist/chunk-TV45EUGM.js +51 -0
- package/dist/chunk-TW2KPPUC.js +4087 -0
- package/dist/chunk-V2YTAIQO.js +1075 -0
- package/dist/chunk-V5PKHHQQ.js +1963 -0
- package/dist/chunk-VF4IOZZO.js +184 -0
- package/dist/chunk-VJTINHZI.js +48 -0
- package/dist/chunk-VKLILA2D.js +205 -0
- package/dist/chunk-VOGCSYOI.js +16 -0
- package/dist/chunk-VPTTCYOC.js +16101 -0
- package/dist/chunk-WY6PP6AA.js +53 -0
- package/dist/chunk-WYFIXP54.js +174 -0
- package/dist/chunk-WZ2BXIGG.js +34 -0
- package/dist/chunk-XJNDSYGO.js +147 -0
- package/dist/chunk-XPCM366L.js +70 -0
- package/dist/chunk-XSQKGVYA.js +69 -0
- package/dist/chunk-XUPVB7TL.js +207 -0
- package/dist/chunk-XZRON6IV.js +131 -0
- package/dist/chunk-Y4NG2FP5.js +94 -0
- package/dist/chunk-YEDDOYSC.js +27809 -0
- package/dist/chunk-YGMCXNTY.js +41 -0
- package/dist/chunk-YJKPTX6J.js +228 -0
- package/dist/chunk-YMZ3TNYB.js +18 -0
- package/dist/chunk-Z6LF7HQN.js +22 -0
- package/dist/chunk-Z7SG32ZY.js +55 -0
- package/dist/chunk-ZDPAS56H.js +76 -0
- package/dist/chunk-ZJSP24X4.js +1247 -0
- package/dist/chunk-ZMAINWBW.js +18 -0
- package/dist/chunk-ZMFPW66A.js +22 -0
- package/dist/chunk-ZUIAOKXI.js +1611 -0
- package/dist/chunk-ZVM6AKKM.js +47 -0
- package/dist/files.json +1888 -0
- package/dist/fixtures/forge/README.md +19 -0
- package/dist/fixtures/forge/expected/discrepancies.yaml +54 -0
- package/dist/fixtures/forge/expected/inputs.yaml +38 -0
- package/dist/fixtures/forge/expected/scan.yaml +342 -0
- package/dist/fixtures/forge/inputs/diagrams/forge-context.drawio +23 -0
- package/dist/fixtures/forge/inputs/partner-specs/northwind-pay-openapi.yaml +11 -0
- package/dist/fixtures/forge/inputs/tickets/ado-stories.json +4 -0
- package/dist/fixtures/forge/inputs/tickets/closed-service-requests.json +5 -0
- package/dist/fixtures/forge/inputs/wiki/integration-patterns.md +11 -0
- package/dist/fixtures/forge/inputs/wiki/ledger-solution-spec.md +9 -0
- package/dist/fixtures/forge/inputs/wiki/snow-firewall-request.md +4 -0
- package/dist/fixtures/forge/metarepo/judgments/reaches/84af5b6af24f7ca8c23013f3.yaml +17 -0
- package/dist/fixtures/forge/metarepo/judgments/reaches/c3917555edebddce8cecb647.yaml +17 -0
- package/dist/fixtures/forge/metarepo/judgments/reaches/c5fafd6601f8ca9e34e0bbd0.yaml +17 -0
- package/dist/fixtures/forge/metarepo/org-pack/agents/architecture-critic.yaml +9 -0
- package/dist/fixtures/forge/metarepo/org-pack/agents/story-writer.yaml +10 -0
- package/dist/fixtures/forge/metarepo/org-pack/checklists/architecture.yaml +115 -0
- package/dist/fixtures/forge/metarepo/org-pack/dialects/forge.yaml +111 -0
- package/dist/fixtures/forge/metarepo/org-pack/gates.yaml +22 -0
- package/dist/fixtures/forge/metarepo/org-pack/pack.yaml +11 -0
- package/dist/fixtures/forge/metarepo/org-pack/patterns/A.EB.PUB.yaml +12 -0
- package/dist/fixtures/forge/metarepo/org-pack/patterns/D.JDBC.yaml +12 -0
- package/dist/fixtures/forge/metarepo/org-pack/patterns/S.DIR.BFF.yaml +12 -0
- package/dist/fixtures/forge/metarepo/org-pack/patterns/S.GW.SOR.yaml +13 -0
- package/dist/fixtures/forge/metarepo/org-pack/patterns/S.GW.VND.yaml +14 -0
- package/dist/fixtures/forge/metarepo/org-pack/process/change-templates/feature.md +37 -0
- package/dist/fixtures/forge/metarepo/org-pack/process/skills/add-forge-endpoint/SKILL.md +17 -0
- package/dist/fixtures/forge/metarepo/org-pack/process/snow/firewall-rule.yaml +14 -0
- package/dist/fixtures/forge/metarepo/org-pack/process/snow/gateway-route.yaml +13 -0
- package/dist/fixtures/forge/metarepo/org-pack/profiles/forge/profile.yaml +12 -0
- package/dist/fixtures/forge/metarepo/org-pack/profiles/forge/repos.manifest.yaml +44 -0
- package/dist/fixtures/forge/metarepo/org-pack/roles.yaml +14 -0
- package/dist/fixtures/forge/metarepo/org-pack/runtime.yaml +14 -0
- package/dist/fixtures/forge/metarepo/org-pack/sources.yaml +3 -0
- package/dist/fixtures/forge/repos/forge-events/topics/payments.initiated.yaml +4 -0
- package/dist/fixtures/forge/repos/forge-events/topics/transfers.completed.yaml +4 -0
- package/dist/fixtures/forge/repos/forge-gateway/proxies/ledger-v1/apiproxy/ledger-v1.xml +3 -0
- package/dist/fixtures/forge/repos/forge-gateway/proxies/ledger-v1/apiproxy/policies/SpikeArrest.xml +3 -0
- package/dist/fixtures/forge/repos/forge-gateway/proxies/ledger-v1/apiproxy/policies/VerifyOAuth.xml +4 -0
- package/dist/fixtures/forge/repos/forge-gateway/proxies/ledger-v1/apiproxy/proxies/default.xml +14 -0
- package/dist/fixtures/forge/repos/forge-gateway/proxies/ledger-v1/apiproxy/targets/ledger.xml +5 -0
- package/dist/fixtures/forge/repos/forge-infra/alerts/ledger-api.yaml +5 -0
- package/dist/fixtures/forge/repos/forge-infra/k8s/ledger-api.yaml +15 -0
- package/dist/fixtures/forge/repos/forge-infra/k8s/portal-bff.yaml +7 -0
- package/dist/fixtures/forge/repos/forge-infra/terraform/ledger-db.tf +9 -0
- package/dist/fixtures/forge/repos/forge-ledger/api/ledger-openapi.yaml +31 -0
- package/dist/fixtures/forge/repos/forge-ledger/forge.yaml +4 -0
- package/dist/fixtures/forge/repos/forge-ledger/src/main/java/forge/ledger/LedgerEndpoints.java +13 -0
- package/dist/fixtures/forge/repos/forge-ledger/src/main/java/forge/ledger/LedgerEvents.java +11 -0
- package/dist/fixtures/forge/repos/forge-ledger/src/main/java/forge/ledger/NorthwindClient.java +10 -0
- package/dist/fixtures/forge/repos/forge-ledger/src/main/resources/application.yml +3 -0
- package/dist/fixtures/forge/repos/forge-ledger/src/main/resources/db/migration/V1__create_account.sql +5 -0
- package/dist/fixtures/forge/repos/forge-ledger/src/main/resources/db/migration/V2__create_entry.sql +7 -0
- package/dist/fixtures/forge/repos/forge-portal-bff/pom.xml +1 -0
- package/dist/fixtures/forge/repos/forge-portal-bff/src/main/java/forge/portal/AuditPublisher.java +12 -0
- package/dist/fixtures/forge/repos/forge-portal-bff/src/main/java/forge/portal/BalanceController.java +16 -0
- package/dist/fixtures/forge/repos/forge-portal-bff/src/main/java/forge/portal/LedgerClient.java +13 -0
- package/dist/fixtures/forge/repos/forge-portal-bff/src/main/java/forge/portal/PaymentEvents.java +13 -0
- package/dist/fixtures/forge/repos/forge-portal-bff/src/main/resources/application.yml +8 -0
- package/dist/fixtures/forge/repos/forge-portal-ui/package.json +1 -0
- package/dist/fixtures/forge/repos/forge-portal-ui/src/api/balance.ts +5 -0
- package/dist/fixtures/forge/repos/forge-reports-job/src/main/java/forge/reports/DailyEntriesJob.java +19 -0
- package/dist/fixtures/forge/repos/forge-reports-job/src/main/resources/application.yml +3 -0
- package/dist/fixtures/forge-change/README.md +41 -0
- package/dist/fixtures/forge-change/expected/findings.yaml +301 -0
- package/dist/fixtures/forge-change/expected/stories.yaml +101 -0
- package/dist/fixtures/forge-change/judgments/personal-data/0b5f3dbf5257a22275d8c74b.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/2759a66770134c417440bf2d.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/31b1ea2f14d0737f1aca79fd.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/49afd70c08228e65ad6ca1ed.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/761cabcb8a39f5e5866d2dd6.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/adae902b90cc8ffa0c765145.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/ba11bb933105ec9493e065dd.yaml +18 -0
- package/dist/fixtures/forge-change/judgments/personal-data/bdbcd1cdac3021c68063c3e7.yaml +18 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/brief.md +35 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/change.yaml +120 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/data.md +18 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/design.md +29 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/interfaces.md +17 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/mappings.md +26 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/proposal.md +35 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/snow.md +12 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/specs/transfer-limits/spec.md +19 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/stories/s1-refuse-over-limit.md +17 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/stories/s2-show-remaining.md +16 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/stories/s3-audit-refusals.md +18 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/stories/s4-velocity-check.md +16 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/stories.md +8 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/tasks.md +12 -0
- package/dist/fixtures/forge-change/openspec/changes/add-transfer-limit/ux.md +7 -0
- package/dist/fixtures/forge-change/org-pack/agents/code-and-test-critic.yaml +13 -0
- package/dist/fixtures/forge-change/org-pack/agents/complete-critic.yaml +12 -0
- package/dist/fixtures/forge-change/org-pack/agents/safe-critic.yaml +12 -0
- package/dist/fixtures/forge-change/org-pack/agents/ship-critic.yaml +11 -0
- package/dist/fixtures/forge-change/org-pack/agents/true-critic.yaml +11 -0
- package/dist/fixtures/forge-change/org-pack/checklists/review.yaml +54 -0
- package/dist/fixtures/forge-change/org-pack/gates.yaml +25 -0
- package/dist/fixtures/forge-change/org-pack/teams/team-ledger/checklists/ledger-team.yaml +227 -0
- package/dist/fixtures/forge-change/recordings/complete-critic/2ad84f84bf39c1d5412697e69fe23034d6983ec45a00314bf0975e627589a3c5.json +12 -0
- package/dist/fixtures/forge-change/recordings/complete-critic/417c98d8e54a4387d0fd93441c49f44c2868958739070d855c1dce0c41e24db3.json +12 -0
- package/dist/fixtures/forge-change/recordings/complete-critic/50203ee22e9cb3ef047295edb6538fe7d5695e1e4b139f3c929013dc6ce47021.json +12 -0
- package/dist/fixtures/forge-change/recordings/complete-critic/89f18d67f5d9c325bf35e2a9e020f9ddb6ee13b8523315037f0905cc57c040b1.json +12 -0
- package/dist/fixtures/forge-change/recordings/complete-critic/b4097867d26ae8eadc8b9efa8cdd86897013358035f0b40086c299a59c4ba121.json +12 -0
- package/dist/fixtures/forge-change/recordings/safe-critic/302d06f49664dd67ad2e21ab9cf74c1b0f7d3f750709c6ed8eff2b70983274e2.json +12 -0
- package/dist/fixtures/forge-change/recordings/safe-critic/32f1049c9a5ab4a759543290db4644ec6e221cc45fdfdcf06193837c6a8ce0b9.json +12 -0
- package/dist/fixtures/forge-change/recordings/safe-critic/4e4a84bfc04b9f26ca4250319a879901ff7a1c081c71e46a117675fee05026b0.json +12 -0
- package/dist/fixtures/forge-change/recordings/safe-critic/604af0fcdd6df6b76208fa88305fdc15c37606c2a4d1ae816477e46ac8c2dd04.json +12 -0
- package/dist/fixtures/forge-change/recordings/safe-critic/f0bf50af11f14c50d07904f0dffe1c8c20fb0cd89770645a8824c1d30a443955.json +12 -0
- package/dist/fixtures/forge-change/recordings/ship-critic/350954b58833b2c04880c67db45a1b328b7fd541d9f0d943b63905b8875488a6.json +12 -0
- package/dist/fixtures/forge-change/recordings/ship-critic/4af95c6c96a206777cec9de1f9c2d8c55a36ddc9b8db2f81d6eb83217b835efa.json +12 -0
- package/dist/fixtures/forge-change/recordings/ship-critic/76c34522a49cf7587a4e5689a5030d384603fa780b8aba97d27815cbc829683e.json +12 -0
- package/dist/fixtures/forge-change/recordings/ship-critic/a3b2cd1ace48587e5994333db03b34c3a0f9dec4f1932f1730ddfb687f6918c8.json +12 -0
- package/dist/fixtures/forge-change/recordings/ship-critic/de288a4fa64d0fc20890f9a787080ce6eac5203b7b9b72d884df11e8cf111835.json +12 -0
- package/dist/fixtures/forge-change/recordings/story-writer/1ddb00eac2aaf91a5ec5d9dfd220116be9f75aec6546a4a3a3b050ed89af2864.json +12 -0
- package/dist/packages/assistant-kit/frameworks-kit/README.md +86 -0
- package/dist/packages/assistant-kit/frameworks-kit/checklist.md +11 -0
- package/dist/packages/assistant-kit/frameworks-kit/examples/tide-lantern.yaml +56 -0
- package/dist/packages/assistant-kit/frameworks-kit/examples/tide-platform.yaml +43 -0
- package/dist/packages/assistant-kit/frameworks-kit/prompts/write-framework-model.md +12 -0
- package/dist/packages/assistant-kit/kit/README.md +98 -0
- package/dist/packages/assistant-kit/kit/c2-reference.md +334 -0
- package/dist/packages/assistant-kit/kit/checklist.md +39 -0
- package/dist/packages/assistant-kit/kit/examples/house-http-client.yaml +102 -0
- package/dist/packages/assistant-kit/kit/examples/tide-apigee.yaml +56 -0
- package/dist/packages/assistant-kit/kit/examples/tide-apim.yaml +32 -0
- package/dist/packages/assistant-kit/kit/examples/tide-kong.yaml +44 -0
- package/dist/packages/assistant-kit/kit/prompts/write-dialect.md +34 -0
- package/dist/packages/assistant-kit/kit/worked-example.md +198 -0
- package/dist/packages/conformance/sample/README.md +4 -0
- package/dist/packages/conformance/sample/inputs/notes.md +3 -0
- package/dist/packages/conformance/sample/inputs/systems.csv +3 -0
- package/dist/packages/conformance/sample/repo/api/greeter.proto +6 -0
- package/dist/packages/conformance/sample/repo/api/openapi.yaml +10 -0
- package/dist/packages/conformance/sample/repo/api/schema.graphql +3 -0
- package/dist/packages/conformance/sample/repo/db/V1__create_greeting.sql +4 -0
- package/dist/packages/conformance/sample/repo/package.json +7 -0
- package/dist/packages/conformance/sample/repo/src/main/java/sample/HelloController.java +10 -0
- package/dist/packages/conformance/sample/repo/web/app.ts +4 -0
- package/dist/packages/evals/datasets/critic-lenses.yaml +62 -0
- package/dist/packages/evals/datasets/dialect-writer.yaml +14 -0
- package/dist/packages/evals/datasets/feature-namer.yaml +34 -0
- package/dist/packages/evals/datasets/glossary-definer.yaml +25 -0
- package/dist/packages/evals/datasets/story-writer.yaml +13 -0
- package/dist/packages/evals/datasets/template-writer.yaml +16 -0
- package/dist/packages/evals/datasets/test-writer.yaml +18 -0
- package/dist/packages/executors/reference/reference-executor.mjs +233 -0
- package/dist/packages/extractors/dialects/argocd.yaml +45 -0
- package/dist/packages/extractors/dialects/fixtures/jaxrs/accounts-service/src/main/java/forge/accounts/AccountResource.java +47 -0
- package/dist/packages/extractors/dialects/fixtures/jaxrs/accounts-service/src/main/java/forge/accounts/AuditClient.java +12 -0
- package/dist/packages/extractors/dialects/fixtures/jaxrs/accounts-service/src/main/java/forge/accounts/LedgerClient.java +17 -0
- package/dist/packages/extractors/dialects/fixtures/micronaut/statements-service/src/main/java/forge/statements/LedgerClient.java +14 -0
- package/dist/packages/extractors/dialects/fixtures/micronaut/statements-service/src/main/java/forge/statements/RatesClient.java +11 -0
- package/dist/packages/extractors/dialects/fixtures/micronaut/statements-service/src/main/java/forge/statements/StatementController.java +36 -0
- package/dist/packages/extractors/dialects/fixtures/micronaut/statements-service/src/main/resources/application.yml +7 -0
- package/dist/packages/extractors/dialects/fixtures/quarkus-reactive-messaging/fraud-service/src/main/java/forge/fraud/FraudScorer.java +27 -0
- package/dist/packages/extractors/dialects/fixtures/quarkus-reactive-messaging/fraud-service/src/main/resources/application.properties +4 -0
- package/dist/packages/extractors/dialects/fixtures/terraform-aws/forge-aws-infra/envs/prod/api.tf +38 -0
- package/dist/packages/extractors/dialects/fixtures/terraform-aws/forge-aws-infra/envs/prod/main.tf +95 -0
- package/dist/packages/extractors/dialects/fixtures/terraform-aws/forge-aws-infra/envs/prod/terraform.tfvars +1 -0
- package/dist/packages/extractors/dialects/fixtures/terraform-aws/forge-aws-infra/envs/prod/variables.tf +4 -0
- package/dist/packages/extractors/dialects/fixtures/terraform-azure/forge-azure-infra/main.tf +102 -0
- package/dist/packages/extractors/dialects/fixtures/terraform-gcp/forge-gcp-infra/main.tf +51 -0
- package/dist/packages/extractors/dialects/harness.yaml +101 -0
- package/dist/packages/extractors/dialects/jaxrs.yaml +155 -0
- package/dist/packages/extractors/dialects/micronaut.yaml +207 -0
- package/dist/packages/extractors/dialects/quarkus-reactive-messaging.yaml +158 -0
- package/dist/packages/extractors/dialects/tekton.yaml +71 -0
- package/dist/packages/extractors/dialects/terraform-aws.yaml +267 -0
- package/dist/packages/extractors/dialects/terraform-azure.yaml +212 -0
- package/dist/packages/extractors/dialects/terraform-gcp.yaml +109 -0
- package/dist/packages/extractors/grammars/README.md +11 -0
- package/dist/packages/extractors/grammars/tree-sitter-groovy.LICENSE +21 -0
- package/dist/packages/extractors/grammars/tree-sitter-groovy.wasm +0 -0
- package/dist/packages/extractors/grammars/vendored.json +11 -0
- package/dist/packages/learn/lessons/architect-diagrams-and-code.yaml +69 -0
- package/dist/packages/learn/lessons/business-analyst-story-bar.yaml +94 -0
- package/dist/packages/learn/lessons/delivery-lead-release-readiness.yaml +44 -0
- package/dist/packages/learn/lessons/designer-features-in-user-words.yaml +57 -0
- package/dist/packages/learn/lessons/developer-find-your-way.yaml +60 -0
- package/dist/packages/learn/lessons/everyone-first-hour.yaml +74 -0
- package/dist/packages/learn/lessons/platform-lead-coverage-and-defences.yaml +58 -0
- package/dist/packages/learn/lessons/product-owner-first-change.yaml +167 -0
- package/dist/packages/learn/lessons/qa-tests-and-trace.yaml +53 -0
- package/dist/packages/learn/lessons/team-lead-initiative.yaml +146 -0
- package/dist/packages/naysayer/constitution/constitution.yaml +286 -0
- package/dist/packages/naysayer/starter/review.yaml +256 -0
- package/dist/packages/sdk/npm/index.js +8892 -0
- package/dist/packages/speckit/rules/drift.yaml +78 -0
- package/dist/packages/taskrun/rules/conform.yaml +38 -0
- package/dist/packages/testgen/rules/trace.yaml +49 -0
- package/dist/packages/ui/dist/assets/elk-api-tma0MCuh.js +2 -0
- package/dist/packages/ui/dist/assets/elk-worker.min--dAJroGl.js +6401 -0
- package/dist/packages/ui/dist/assets/elk-worker.min-DdYmS5kP.js +2 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2 +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff +0 -0
- package/dist/packages/ui/dist/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2 +0 -0
- package/dist/packages/ui/dist/assets/index-B54fm9FQ.js +29 -0
- package/dist/packages/ui/dist/assets/index-DD_hufQz.css +1 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2 +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
- package/dist/packages/ui/dist/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-devanagari-600-normal-BtY48IV_.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-devanagari-600-normal-DhS7ScYx.woff2 +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-devanagari-700-normal-BQQOj9BB.woff2 +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-devanagari-700-normal-DBRwWuxA.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-600-normal-CXCVEoA9.woff2 +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-600-normal-Dx02qI2_.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-700-normal-BPDUZo87.woff2 +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-ext-600-normal-BleIgkPp.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2 +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-ext-700-normal-BPaQ7tlD.woff +0 -0
- package/dist/packages/ui/dist/assets/rajdhani-latin-ext-700-normal-S6aYESQK.woff2 +0 -0
- package/dist/packages/ui/dist/favicon.svg +1 -0
- package/dist/packages/ui/dist/index.html +15 -0
- package/dist/third-party.json +575 -0
- package/dist/vendor/@fission-ai/openspec/bin/openspec.js +85986 -0
- package/dist/vendor/@fission-ai/openspec/package.json +82 -0
- package/dist/vendor/@fission-ai/openspec/schemas/spec-driven/schema.yaml +248 -0
- package/dist/vendor/@fission-ai/openspec/schemas/spec-driven/templates/design.md +21 -0
- package/dist/vendor/@fission-ai/openspec/schemas/spec-driven/templates/proposal.md +34 -0
- package/dist/vendor/@fission-ai/openspec/schemas/spec-driven/templates/spec.md +13 -0
- package/dist/vendor/@fission-ai/openspec/schemas/spec-driven/templates/tasks.md +11 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-c_sharp.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-go.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-java.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-javascript.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-kotlin.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-php.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-python.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-ruby.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-rust.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-scala.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-tsx.wasm +0 -0
- package/dist/vendor/tree-sitter-wasms/out/tree-sitter-typescript.wasm +0 -0
- package/dist/vendor/web-tree-sitter/tree-sitter.wasm +0 -0
- package/package.json +36 -3
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t,t.exports),e=null),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,o)=>(o=n==null?{}:e(i(n)),s(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n)),l=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.for(`react.view_transition`),m=Symbol.iterator;function h(e){return typeof e!=`object`||!e?null:(e=m&&e[m]||e[`@@iterator`],typeof e==`function`?e:null)}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,v={};function y(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function b(){}b.prototype=y.prototype;function x(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}var S=x.prototype=new b;S.constructor=x,_(S,y.prototype),S.isPureReactComponent=!0;var C=Array.isArray;function w(){}var T={H:null,A:null,T:null,S:null},E=Object.prototype.hasOwnProperty;function D(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ee(e,t){return D(e.type,t,e.props)}function te(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function O(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var k=/\/+/g;function ne(e,t){return typeof e==`object`&&e&&e.key!=null?O(``+e.key):t.toString(36)}function re(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(w,w):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function ie(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,ie(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+ne(e,0):a,C(o)?(i=``,c!=null&&(i=c.replace(k,`$&/`)+`/`),ie(o,r,i,``,function(e){return e})):o!=null&&(te(o)&&(o=ee(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(k,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(C(e))for(var u=0;u<e.length;u++)a=e[u],s=l+ne(a,u),c+=ie(a,r,i,s,o);else if(u=h(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+ne(a,u++),c+=ie(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return ie(re(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function ae(e,t,n){if(e==null)return e;var r=[],i=0;return ie(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function A(e){if(e._status===-1){var t=e._result,n=t();n.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t,n.status===void 0&&(n.status=`fulfilled`,n.value=t))},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t,n.status===void 0&&(n.status=`rejected`,n.reason=t))}),e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return e._result.default;throw e._result}var j=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)};function oe(e){var t=T.T,n={};n.types=t===null?null:t.types,T.T=n;try{var r=e(),i=T.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(w,j)}catch(e){j(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),T.T=t}}function se(e){var t=T.T;if(t!==null){var n=t.types;n===null?t.types=[e]:n.indexOf(e)===-1&&n.push(e)}else oe(se.bind(null,e))}var M={map:ae,forEach:function(e,t,n){ae(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ae(e,function(){t++}),t},toArray:function(e){return ae(e,function(e){return e})||[]},only:function(e){if(!te(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=M,e.Component=y,e.Fragment=r,e.Profiler=a,e.PureComponent=x,e.StrictMode=i,e.Suspense=l,e.ViewTransition=p,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},e.addTransitionType=se,e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=_({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!E.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return D(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)E.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return D(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=te,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:A}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=oe,e.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},e.use=function(e){return T.H.use(e)},e.useActionState=function(e,t,n){return T.H.useActionState(e,t,n)},e.useCallback=function(e,t){return T.H.useCallback(e,t)},e.useContext=function(e){return T.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return T.H.useEffect(e,t)},e.useEffectEvent=function(e){return T.H.useEffectEvent(e)},e.useId=function(){return T.H.useId()},e.useImperativeHandle=function(e,t,n){return T.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return T.H.useMemo(e,t)},e.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return T.H.useReducer(e,t,n)},e.useRef=function(e){return T.H.useRef(e)},e.useState=function(e){return T.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return T.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return T.H.useTransition()},e.version=`19.3.1`})),d=o(((e,t)=>{t.exports=u()})),f=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,ee());else{var t=n(l);t!==null&&k(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&k(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?ee():S=!1}}}var ee;if(typeof y==`function`)ee=function(){y(D)};else if(typeof MessageChannel<`u`){var te=new MessageChannel,O=te.port2;te.port1.onmessage=D,ee=function(){O.postMessage(null)}}else ee=function(){_(D,0)};function k(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,k(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,ee()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{var t=d();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`),o=Symbol.for(`react.recoverable`),s=Symbol.for(`react.optimistic_key`);function c(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:r===s?s:``+r,children:e,containerInfo:t,implementation:n}}var l=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function u(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.browser=function(e){return{$$typeof:o,_reason:e}},e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return c(e,t,null,r)},e.flushSync=function(e){var t=l.T,n=i.p;try{if(l.T=null,i.p=2,e)return e()}finally{l.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=u(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=u(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}}else t??i.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=u(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=u(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}else i.d.m(e)}},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return l.H.useFormState(e,t,n)},e.useFormStatus=function(){return l.H.useHostTransitionStatus()},e.version=`19.3.1`})),h=o(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=m()})),g=o((e=>{var t=p(),n=d(),r=h();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){for(var t=e,n=t;n&&!n.alternate;)t=n,t.flags&4098&&(e=t.return),n=t.return;for(;t.return;)t=t.return;return t.tag===3?e:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function f(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=f(e),t!==null)return t;e=e.sibling}return null}function m(e,t,n,r,i,a){for(;e!==null;){if((e.tag===5||e.tag===27||e.tag===6)&&n(e,r,i,a)||(e.tag!==22||e.memoizedState===null)&&(t||e.tag!==5&&e.tag!==27)&&m(e.child,t,n,r,i,a))return!0;e=e.sibling}return!1}function g(e){for(e=e.return;e!==null;){if(e.tag===3||e.tag===5||e.tag===27)return e;e=e.return}return null}function _(e){var t=!1;for(e=e.return;e!==null&&(e.tag===4&&(t=!0),e.tag!==3&&e.tag!==5&&e.tag!==27);)e=e.return;return t}function v(e){var t=[null,null],n=g(e);return n===null||y(t,e,n.child,{foundSelf:!1}),t}function y(e,t,n,r){for(;n!==null;){if(n===t)r.foundSelf=!0;else if(n.tag===5||n.tag===27||n.tag===6){if(r.foundSelf)return e[1]=n,!0;e[0]=n}else if((n.tag!==22||n.memoizedState===null)&&y(e,t,n.child,r))return!0;n=n.sibling}return!1}function b(e){switch(e.tag){case 5:case 27:case 6:return e.stateNode;case 3:return e.stateNode.containerInfo;default:throw Error(i(559))}}var x=null,S=null;function C(e,t,n){return e===n||e===t&&(x=e,!0)}function w(e,t,n){return e===n?(S=e,!1):e===t&&(S!==null&&(x=e),!0)}function T(e){if(e===null)return null;do e=e===null?null:e.return;while(e&&e.tag!==5&&e.tag!==27&&e.tag!==3);return e||null}function E(e,t,n){for(var r=0,i=e;i;i=n(i))r++;i=0;for(var a=t;a;a=n(a))i++;for(;0<r-i;)e=n(e),r--;for(;0<i-r;)t=n(t),i--;for(;r--;){if(e===t||t!==null&&e===t.alternate)return e;e=n(e),t=n(t)}return null}var D=Object.assign,ee=Symbol.for(`react.element`),te=Symbol.for(`react.transitional.element`),O=Symbol.for(`react.portal`),k=Symbol.for(`react.fragment`),ne=Symbol.for(`react.strict_mode`),re=Symbol.for(`react.profiler`),ie=Symbol.for(`react.consumer`),ae=Symbol.for(`react.context`),A=Symbol.for(`react.forward_ref`),j=Symbol.for(`react.suspense`),oe=Symbol.for(`react.suspense_list`),se=Symbol.for(`react.memo`),M=Symbol.for(`react.lazy`),ce=Symbol.for(`react.activity`),N=Symbol.for(`react.legacy_hidden`),le=Symbol.for(`react.memo_cache_sentinel`),ue=Symbol.for(`react.view_transition`),P=Symbol.for(`react.recoverable`),F=Symbol.iterator;function de(e){return typeof e!=`object`||!e?null:(e=F&&e[F]||e[`@@iterator`],typeof e==`function`?e:null)}var fe=Symbol.for(`react.client.reference`);function pe(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===fe?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case k:return`Fragment`;case re:return`Profiler`;case ne:return`StrictMode`;case j:return`Suspense`;case oe:return`SuspenseList`;case ce:return`Activity`;case ue:return`ViewTransition`}if(typeof e==`object`)switch(e.$$typeof){case O:return`Portal`;case ae:return e.displayName||`Context`;case ie:return(e._context.displayName||`Context`)+`.Consumer`;case A:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case se:return t=e.displayName||null,t===null?pe(e.type)||`Memo`:t;case M:t=e._payload,e=e._init;try{return pe(e(t))}catch{}}return null}var me=Array.isArray,I=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,he=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ge={pending:!1,data:null,method:null,action:null},_e=[],ve=-1;function ye(e){return{current:e}}function be(e){0>ve||(e.current=_e[ve],_e[ve]=null,ve--)}function xe(e,t){ve++,_e[ve]=e.current,e.current=t}var Se=ye(null),Ce=ye(null),we=ye(null),Te=ye(null);function Ee(e,t){switch(xe(we,t),xe(Ce,e),xe(Se,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Tp(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Tp(t),e=Ep(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}be(Se),xe(Se,e)}function De(){be(Se),be(Ce),be(we)}function Oe(e){var t=e.memoizedState;t!==null&&(xh._currentValue=t.memoizedState,xe(Te,e)),t=Se.current;var n=Ep(t,e.type);t!==n&&(xe(Ce,e),xe(Se,n))}function ke(e){Ce.current===e&&(be(Se),be(Ce)),Te.current===e&&(be(Te),xh._currentValue=ge)}var Ae,je;function Me(e){if(Ae===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Ae=t&&t[1]||``,je=-1<e.stack.indexOf(`
|
|
2
|
+
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
3
|
+
`+Ae+e+je}var Ne=!1;function Pe(e,t){if(!e||Ne)return``;Ne=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}n=!1;try{var i=Object.getOwnPropertyDescriptor(e.prototype,`props`);Object.defineProperty(e.prototype,"props",{configurable:!0,set:function(){throw Error()}}),n=!0,new e}finally{n&&(i===void 0?delete e.prototype.props:Object.defineProperty(e.prototype,"props",i))}}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
4
|
+
`),l=s.split(`
|
|
5
|
+
`);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
|
|
6
|
+
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{Ne=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?Me(n):``}function Fe(e,t){switch(e.tag){case 26:case 27:case 5:return Me(e.type);case 16:return Me(`Lazy`);case 13:return e.child!==t&&t!==null?Me(`Suspense Fallback`):Me(`Suspense`);case 19:return Me(`SuspenseList`);case 0:case 15:return Pe(e.type,!1);case 11:return Pe(e.type.render,!1);case 1:return Pe(e.type,!0);case 31:return Me(`Activity`);case 30:return Me(`ViewTransition`);default:return``}}function Ie(e){try{var t=``,n=null;do t+=Fe(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
7
|
+
Error generating stack: `+e.message+`
|
|
8
|
+
`+e.stack}}var Le=Object.prototype.hasOwnProperty,Re=t.unstable_scheduleCallback,ze=t.unstable_cancelCallback,Be=t.unstable_shouldYield,Ve=t.unstable_requestPaint,He=t.unstable_now,Ue=t.unstable_getCurrentPriorityLevel,We=t.unstable_ImmediatePriority,Ge=t.unstable_UserBlockingPriority,Ke=t.unstable_NormalPriority,qe=t.unstable_LowPriority,Je=t.unstable_IdlePriority,Ye=t.log,L=t.unstable_setDisableYieldValue,Xe=null,Ze=null;function Qe(e){if(typeof Ye==`function`&&L(e),Ze&&typeof Ze.setStrictMode==`function`)try{Ze.setStrictMode(Xe,e)}catch{}}var $e=Math.clz32?Math.clz32:nt,et=Math.log,tt=Math.LN2;function nt(e){return e>>>=0,e===0?32:31-(et(e)/tt|0)|0}var rt=256,it=262144,at=4194304;function ot(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function st(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=ot(n))):i=ot(o):i=ot(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=ot(n))):i=ot(o)):i=ot(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function ct(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function lt(e,t){t&8&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0<n;){var r=31-$e(n),i=1<<r;t|=e[r],n&=~i}return t}function ut(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function dt(){var e=at;return at<<=1,!(at&62914560)&&(at=4194304),e}function ft(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function pt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function mt(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-$e(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&ht(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function ht(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-$e(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function gt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-$e(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function _t(e,t){var n=t&-t;return n=n&42?1:vt(n),(n&(e.suspendedLanes|t))===0?n:0}function vt(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function yt(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function bt(){var e=he.p;return e===0?(e=window.event,e===void 0?32:Lh(e.type)):e}function xt(e,t){var n=he.p;try{return he.p=e,t()}finally{he.p=n}}var St=Math.random().toString(36).slice(2),Ct=`__reactFiber$`+St,wt=`__reactProps$`+St,Tt=`__reactContainer$`+St,Et=`__reactEvents$`+St,Dt=`__reactListeners$`+St,Ot=`__reactHandles$`+St,kt=`__reactResources$`+St,At=`__reactMarker$`+St,jt=`__reactLoad$`+St;function Mt(e){delete e[Ct],delete e[wt],delete e[Dt],delete e[Ot]}function Nt(e){var t;if(t=e[Ct])return t;for(var n=e.parentNode;n;){if(t=n[Tt]||n[Ct]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Dm(e);e!==null;){if(n=e[Ct])return n;e=Dm(e)}return t}e=n,n=e.parentNode}return null}function Pt(e){if(e=e[Ct]||e[Tt]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Ft(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function It(e){var t=e[kt];return t||=e[kt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function Lt(e){e[At]=!0}function Rt(e){e[jt]=void 0}var zt=new Set,Bt={};function Vt(e,t){Ht(e,t),Ht(e+`Capture`,t)}function Ht(e,t){for(Bt[e]=t,e=0;e<t.length;e++)zt.add(t[e])}var Ut=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),Wt={},Gt={};function Kt(e){return Le.call(Gt,e)?!0:Le.call(Wt,e)?!1:Ut.test(e)?Gt[e]=!0:(Wt[e]=!0,!1)}var qt=!1;function Jt(){var e=qt;return qt=!1,e}function Yt(e,t,n){if(Kt(t)){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,n)}}}function Xt(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,n)}}function Zt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,r)}}function Qt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function $t(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function en(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function tn(e){if(!e._valueTracker){var t=$t(e)?`checked`:`value`;e._valueTracker=en(e,t,``+e[t])}}function nn(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=$t(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}var rn=/[\n"\\]/g;function an(e){return e.replace(rn,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function on(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Qt(t)):e.value!==``+Qt(t)&&(e.value=``+Qt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):cn(e,Qt(n)):o===`number`&&e.value==t?cn(e,Qt(e.value)):cn(e,Qt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Qt(s):e.removeAttribute(`name`)}function sn(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){tn(e);return}n=n==null?``:``+Qt(n),t=t==null?n:``+Qt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),tn(e)}function cn(e,t){e.defaultValue!==``+t&&(e.defaultValue=``+t)}function ln(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+Qt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function un(e,t,n){t!=null&&(t=``+Qt(t),t!==e.value&&(e.value=t),n==null)?e.defaultValue!==t&&(e.defaultValue=t):e.defaultValue=n==null?``:``+Qt(n)}function dn(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(me(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=Qt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),tn(e)}function fn(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var pn=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function mn(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||pn.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function hn(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``,qt=!0);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&(mn(e,a,r),qt=!0)}else for(var o in t)t.hasOwnProperty(o)&&mn(e,o,t[o])}function gn(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var _n=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`maskType`,`mask-type`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),vn=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function yn(e){return vn.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function bn(){}var xn=null;function Sn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Cn=null,wn=null;function Tn(e){var t=Pt(e);if(t&&(e=t.stateNode)){var n=e[wt]||null;a:switch(e=t.stateNode,t.type){case`input`:if(on(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+an(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[wt]||null;if(!a)throw Error(i(90));on(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&nn(r)}break a;case`textarea`:un(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&ln(e,!!n.multiple,t,!1)}}}var En=!1;function Dn(e,t,n){if(En)return e(t,n);En=!0;try{return e(t)}finally{if(En=!1,(Cn!==null||wn!==null)&&(Zd(),Cn&&(t=Cn,e=wn,wn=Cn=null,Tn(t),e)))for(t=0;t<e.length;t++)Tn(e[t])}}function On(e,t){var n=e.stateNode;if(n===null)return null;var r=n[wt]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=e!==`button`&&e!==`input`&&e!==`select`&&e!==`textarea`),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var kn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,An=!1;if(kn)try{var jn={};Object.defineProperty(jn,"passive",{get:function(){An=!0}}),window.addEventListener(`test`,jn,jn),window.removeEventListener(`test`,jn,jn)}catch{An=!1}var Mn=null,Nn=null,Pn=null;function Fn(){if(Pn)return Pn;var e,t=Nn,n=t.length,r,i=`value`in Mn?Mn.value:Mn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return Pn=i.slice(e,1<r?1-r:void 0)}function In(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Ln(){return!0}function Rn(){return!1}function zn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?Ln:Rn,this.isPropagationStopped=Rn,this}return D(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=Ln)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=Ln)},persist:function(){},isPersistent:Ln}),t}var Bn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Vn=zn(Bn),Hn=D({},Bn,{view:0,detail:0}),Un=zn(Hn),Wn,Gn,Kn,qn=D({},Hn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:ir,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Kn&&(Kn&&e.type===`mousemove`?(Wn=e.screenX-Kn.screenX,Gn=e.screenY-Kn.screenY):Gn=Wn=0,Kn=e),Wn)},movementY:function(e){return`movementY`in e?e.movementY:Gn}}),Jn=zn(qn),Yn=zn(D({},qn,{dataTransfer:0})),Xn=zn(D({},Hn,{relatedTarget:0})),Zn=zn(D({},Bn,{animationName:0,elapsedTime:0,pseudoElement:0})),Qn=zn(D({},Bn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),$n=zn(D({},Bn,{data:0})),er={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},tr={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},nr={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function rr(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=nr[e])?!!t[e]:!1}function ir(){return rr}var ar=zn(D({},Hn,{key:function(e){if(e.key){var t=er[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=In(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?tr[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:ir,charCode:function(e){return e.type===`keypress`?In(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?In(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),or=zn(D({},qn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),sr=zn(D({},Bn,{submitter:0})),cr=zn(D({},Hn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:ir})),lr=zn(D({},Bn,{propertyName:0,elapsedTime:0,pseudoElement:0})),ur=zn(D({},qn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),dr=zn(D({},Bn,{newState:0,oldState:0,source:0})),fr=[9,13,27,32],pr=kn&&`CompositionEvent`in window,mr=null;kn&&`documentMode`in document&&(mr=document.documentMode);var hr=kn&&`TextEvent`in window&&!mr,gr=kn&&(!pr||mr&&8<mr&&11>=mr),_r=` `,vr=!1;function yr(e,t){switch(e){case`keyup`:return fr.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function br(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var xr=!1;function Sr(e,t){switch(e){case`compositionend`:return br(t);case`keypress`:return t.which===32?(vr=!0,_r):null;case`textInput`:return e=t.data,e===_r&&vr?null:e;default:return null}}function Cr(e,t){if(xr)return e===`compositionend`||!pr&&yr(e,t)?(e=Fn(),Pn=Nn=Mn=null,xr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return gr&&t.locale!==`ko`?null:t.data;default:return null}}var wr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Tr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!wr[e.type]:t===`textarea`}function Er(e,t,n,r){Cn?wn?wn.push(r):wn=[r]:Cn=r,t=cp(t,`onChange`),0<t.length&&(n=new Vn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var Dr=null,Or=null;function kr(e){ep(e,0)}function Ar(e){if(nn(Ft(e)))return e}function jr(e,t){if(e===`change`)return t}var Mr=!1;if(kn){var Nr;if(kn){var Pr=`oninput`in document;if(!Pr){var Fr=document.createElement(`div`);Fr.setAttribute(`oninput`,`return;`),Pr=typeof Fr.oninput==`function`}Nr=Pr}else Nr=!1;Mr=Nr&&(!document.documentMode||9<document.documentMode)}function Ir(){Dr&&(Dr.detachEvent(`onpropertychange`,Lr),Or=Dr=null)}function Lr(e){if(e.propertyName===`value`&&Ar(Or)){var t=[];Er(t,Or,e,Sn(e)),Dn(kr,t)}}function Rr(e,t,n){e===`focusin`?(Ir(),Dr=t,Or=n,Dr.attachEvent(`onpropertychange`,Lr)):e===`focusout`&&Ir()}function zr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Ar(Or)}function Br(e,t){if(e===`click`)return Ar(t)}function Vr(e,t){if(e===`input`||e===`change`)return Ar(t)}function Hr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var Ur=typeof Object.is==`function`?Object.is:Hr;function Wr(e,t){if(Ur(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!Le.call(t,i)||!Ur(e[i],t[i]))return!1}return!0}function Gr(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function Kr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function qr(e,t){var n=Kr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Kr(n)}}function Jr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Jr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Yr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Gr(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Gr(e.document)}return t}function Xr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var Zr=kn&&`documentMode`in document&&11>=document.documentMode,Qr=null,$r=null,ei=null,ti=!1;function ni(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ti||Qr==null||Qr!==Gr(r)||(r=Qr,`selectionStart`in r&&Xr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),ei&&Wr(ei,r)||(ei=r,r=cp($r,`onSelect`),0<r.length&&(t=new Vn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Qr)))}function ri(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var ii={animationend:ri(`Animation`,`AnimationEnd`),animationiteration:ri(`Animation`,`AnimationIteration`),animationstart:ri(`Animation`,`AnimationStart`),transitionrun:ri(`Transition`,`TransitionRun`),transitionstart:ri(`Transition`,`TransitionStart`),transitioncancel:ri(`Transition`,`TransitionCancel`),transitionend:ri(`Transition`,`TransitionEnd`)},ai={},oi={};kn&&(oi=document.createElement(`div`).style,`AnimationEvent`in window||(delete ii.animationend.animation,delete ii.animationiteration.animation,delete ii.animationstart.animation),`TransitionEvent`in window||delete ii.transitionend.transition);function si(e){if(ai[e])return ai[e];if(!ii[e])return e;var t=ii[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in oi)return ai[e]=t[n];return e}var ci=si(`animationend`),li=si(`animationiteration`),ui=si(`animationstart`),di=si(`transitionrun`),fi=si(`transitionstart`),pi=si(`transitioncancel`),mi=si(`transitionend`),hi=new Map,gi=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error fullscreenChange fullscreenError gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);gi.push(`scrollEnd`);function _i(e,t){hi.set(e,t),Vt(t,[e])}var vi=0;function yi(e,t){if(e.name!=null&&e.name!==`auto`)return e.name;if(t.autoName!==null)return t.autoName;e=Md.identifierPrefix;var n=vi++;return e=`_`+e+`t_`+n.toString(32)+`_`,t.autoName=e}function bi(e){if(e==null||typeof e==`string`)return e;var t=null,n=Bd;if(n!==null)for(var r=0;r<n.length;r++){var i=e[n[r]];if(i!=null){if(i===`none`)return`none`;t=t==null?i:t+(` `+i)}}return t??e.default}function xi(e,t){return e=bi(e),t=bi(t),t==null?e===`auto`?null:e:t===`auto`?null:t}var Si=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},Ci=[],wi=0,Ti=0;function Ei(){for(var e=wi,t=Ti=wi=0;t<e;){var n=Ci[t];Ci[t++]=null;var r=Ci[t];Ci[t++]=null;var i=Ci[t];Ci[t++]=null;var a=Ci[t];if(Ci[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&Ai(n,i,a)}}function Di(e,t,n,r){Ci[wi++]=e,Ci[wi++]=t,Ci[wi++]=n,Ci[wi++]=r,Ti|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function Oi(e,t,n,r){return Di(e,t,n,r),ji(e)}function ki(e,t){return Di(e,null,null,t),ji(e)}function Ai(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-$e(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function ji(e){if(50<Vd)throw Vd=0,Hd=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Mi={};function Ni(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pi(e,t,n,r){return new Ni(e,t,n,r)}function Fi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Ii(e,t){var n=e.alternate;return n===null?(n=Pi(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&1206910976,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function Li(e,t){e.flags&=1206910978;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function Ri(e,t,n,r,a,o){var s=0;if(r=e,typeof r==`function`)Fi(r)&&(s=1);else if(typeof r==`string`)s=sh(e,n,Se.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(r){case ce:return e=Pi(31,n,t,a),e.elementType=ce,e.lanes=o,e;case k:return zi(n.children,a,o,t);case ne:s=8,a|=24;break;case re:return e=Pi(12,n,t,a|2),e.elementType=re,e.lanes=o,e;case j:return e=Pi(13,n,t,a),e.elementType=j,e.lanes=o,e;case oe:return e=Pi(19,n,t,a),e.elementType=oe,e.lanes=o,e;case N:case ue:return e=a|32,e=Pi(30,n,t,e),e.elementType=ue,e.lanes=o,e.stateNode={autoName:null,paired:null,clones:null,ref:null},e;default:if(typeof r==`object`&&r)switch(r.$$typeof){case ae:s=10;break a;case ie:s=9;break a;case A:s=11;break a;case se:s=14;break a;case M:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=Pi(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function zi(e,t,n,r){return e=Pi(7,e,r,t),e.lanes=n,e}function Bi(e,t,n){return e=Pi(6,e,null,t),e.lanes=n,e}function Vi(e){var t=Pi(18,null,null,0);return t.stateNode=e,t}function Hi(e,t,n){return t=Pi(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var Ui=new WeakMap;function Wi(e,t){if(typeof e==`object`&&e){var n=Ui.get(e);return n===void 0?(t={value:e,source:t,stack:Ie(t)},Ui.set(e,t),t):n}return{value:e,source:t,stack:Ie(t)}}var Gi=[],Ki=0,qi=null,Ji=0,Yi=[],Xi=0,Zi=null,Qi=1,$i=``;function ea(e,t){Gi[Ki++]=Ji,Gi[Ki++]=qi,qi=e,Ji=t}function ta(e,t,n){Yi[Xi++]=Qi,Yi[Xi++]=$i,Yi[Xi++]=Zi,Zi=e;var r=Qi;e=$i;var i=32-$e(r)-1;r&=~(1<<i),n+=1;var a=32-$e(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Qi=1<<32-$e(t)+i|n<<i|r,$i=a+e}else Qi=1<<a|n<<i|r,$i=e}function na(e){e.return!==null&&(ea(e,1),ta(e,1,0))}function ra(e){for(;e===qi;)qi=Gi[--Ki],Gi[Ki]=null,Ji=Gi[--Ki],Gi[Ki]=null;for(;e===Zi;)Zi=Yi[--Xi],Yi[Xi]=null,$i=Yi[--Xi],Yi[Xi]=null,Qi=Yi[--Xi],Yi[Xi]=null}function ia(e,t){Yi[Xi++]=Qi,Yi[Xi++]=$i,Yi[Xi++]=Zi,Qi=t.id,$i=t.overflow,Zi=e}var aa=null,oa=null,sa=!1,ca=null,la=!1,ua=Error(i(519));function da(e){throw _a(Wi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),ua}function fa(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[Ct]=e,t[wt]=r,n){case`dialog`:tp(`cancel`,t),tp(`close`,t);break;case`iframe`:case`object`:case`embed`:tp(`load`,t);break;case`video`:case`audio`:for(n=0;n<Qf.length;n++)tp(Qf[n],t);break;case`source`:tp(`error`,t);break;case`img`:case`image`:case`link`:tp(`error`,t),tp(`load`,t);break;case`details`:tp(`toggle`,t);break;case`input`:tp(`invalid`,t),sn(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:tp(`invalid`,t);break;case`textarea`:tp(`invalid`,t),dn(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||mp(t.textContent,n)?(r.popover!=null&&(tp(`beforetoggle`,t),tp(`toggle`,t)),r.onScroll!=null&&tp(`scroll`,t),r.onScrollEnd!=null&&tp(`scrollend`,t),r.onClick!=null&&(t.onclick=bn),t=!0):t=!1,t||da(e,!0)}function pa(e){for(aa=e.return;aa;)switch(aa.tag){case 5:case 31:case 13:la=!1;return;case 27:case 3:la=!0;return;default:aa=aa.return}}function ma(e){if(e!==aa)return!1;if(!sa)return pa(e),sa=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||Op(e.type,e.memoizedProps)),n=!n),n&&oa&&da(e),pa(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));oa=Em(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));oa=Em(e)}else t===27?(t=oa,Lp(e.type)?(e=Tm,Tm=null,oa=e):oa=t):oa=aa?wm(e.stateNode.nextSibling):null;return!0}function ha(){oa=aa=null,sa=!1}function ga(){var e=ca;return e!==null&&(wd===null?wd=e:wd.push.apply(wd,e),ca=null),e}function _a(e){ca===null?ca=[e]:ca.push(e)}var va=ye(null),ya=null,ba=null;function xa(e,t,n){xe(va,t._currentValue),t._currentValue=n}function Sa(e){e._currentValue=va.current,be(va)}function Ca(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function wa(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Ca(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),Ca(s,n,e),s=null}else a.tag===13&&a.memoizedState!==null&&a.memoizedState.dehydrated===null?(a.lanes|=n,s=a.alternate,s!==null&&(s.lanes|=n),Ca(a.return,n,e),s=a.child,s=s===null?null:s.sibling):s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Ta(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;Ur(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===Te.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[xh]:e.push(xh))}a=a.return}return e!==null&&wa(t,e,n,r),t.flags|=262144,e!==null}function Ea(e){for(e=e.firstContext;e!==null;){if(!Ur(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Da(e){ya=e,ba=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Oa(e){return Aa(ya,e)}function ka(e,t){return ya===null&&Da(e),Aa(e,t)}function Aa(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},ba===null){if(e===null)throw Error(i(308));ba=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else ba=ba.next=t;return n}var ja=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},Ma=t.unstable_scheduleCallback,Na=t.unstable_NormalPriority,Pa={$$typeof:ae,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Fa(){return{controller:new ja,data:new Map,refCount:0}}function Ia(e){e.refCount--,e.refCount===0&&Ma(Na,function(){e.controller.abort()})}function La(e,t){if(e.pendingLanes&4194048){var n=e.transitionTypes;for(n===null&&(n=e.transitionTypes=[]),e=0;e<t.length;e++){var r=t[e];n.indexOf(r)===-1&&n.push(r)}}}var Ra=null;function za(e){var t=e.transitionTypes;return e.transitionTypes=null,t}var Ba=null,Va=0,Ha=0,Ua=null;function Wa(e,t){if(Ba===null){var n=Ba=[];Va=0,Ha=qf(),Ua={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return Va++,t.then(Ga,Ga),t}function Ga(){if(--Va===0&&(Ra=null,Ba!==null)){Ua!==null&&(Ua.status=`fulfilled`);var e=Ba;Ba=null,Ha=0,Ua=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Ka(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var qa=I.S;I.S=function(e,t){if(Dd=He(),typeof t==`object`&&t&&typeof t.then==`function`&&Wa(e,t),Ra!==null)for(var n=Nf;n!==null;)La(n,Ra),n=n.next;if(n=e.types,n!==null){for(var r=Nf;r!==null;)La(r,n),r=r.next;if(Ha!==0){r=Ra,r===null&&(r=Ra=[]);for(var i=0;i<n.length;i++){var a=n[i];r.indexOf(a)===-1&&r.push(a)}}}qa!==null&&qa(e,t)};var Ja=ye(null);function Ya(){var e=Ja.current;return e===null?cd.pooledCache:e}function Xa(e,t){t===null?xe(Ja,Ja.current):xe(Ja,t.pool)}function Za(){var e=Ya();return e===null?null:{parent:Pa._currentValue,pool:e}}var Qa=Error(i(460)),$a=Error(i(474)),eo=Error(i(542)),to={then:function(){}};function no(e){return e=e.status,e===`fulfilled`||e===`rejected`}function ro(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(bn,bn),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,so(e),e===void 0&&!(`reason`in t)?Error(i(600)):e;default:if(typeof t.status==`string`)t.then(bn,bn);else{if(e=cd,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,so(e),e}throw ao=t,Qa}}function io(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(ao=e,Qa):e}}var ao=null;function oo(){if(ao===null)throw Error(i(459));var e=ao;return ao=null,e}function so(e){if(e===Qa||e===eo)throw Error(i(483))}var co=null,lo=0;function uo(e){var t=lo;return lo+=1,co===null&&(co=[]),ro(co,e,t)}function fo(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function po(e,t){throw t.$$typeof===ee?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function mo(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=Ii(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=134217730,n):(r=r.index,r<n?(t.flags|=2,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=134217730),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=Bi(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===k?(e=d(e,t,n.props.children,r,n.key),fo(e,n),e):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===M&&io(i)===t.type)?(t=a(t,n.props),fo(t,n),t.return=e,t):(t=Ri(n.type,n.key,n.props,null,e.mode,r),fo(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=Hi(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=zi(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=Bi(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case te:return n=Ri(t.type,t.key,t.props,null,e.mode,n),fo(n,t),n.return=e,n;case O:return t=Hi(t,e.mode,n),t.return=e,t;case M:return t=io(t),f(e,t,n)}if(me(t)||de(t))return t=zi(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,uo(t),n);if(t.$$typeof===ae)return f(e,ka(e,t),n);po(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case te:return n.key===i?l(e,t,n,r):null;case O:return n.key===i?u(e,t,n,r):null;case M:return n=io(n),p(e,t,n,r)}if(me(n)||de(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,uo(n),r);if(n.$$typeof===ae)return p(e,t,ka(e,n),r);po(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case te:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case O:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case M:return r=io(r),m(e,t,n,r,i)}if(me(r)||de(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,uo(r),i);if(r.$$typeof===ae)return m(e,t,n,ka(t,r),i);po(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),sa&&ea(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return sa&&ea(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&(_=g.alternate,_!==null&&d.delete(_.key===null?h:_.key)),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),sa&&ea(i,h),l}function g(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),sa&&ea(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return sa&&ea(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&(_=v.alternate,_!==null&&h.delete(_.key===null?g:_.key)),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),sa&&ea(a,g),u}function _(e,r,o,c){if(typeof o==`object`&&o&&o.type===k&&o.key===null&&o.props.ref===void 0&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case te:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===k){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),fo(c,o),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===M&&io(l)===r.type){n(e,r.sibling),c=a(r,o.props),fo(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===k?(c=zi(o.props.children,e.mode,c,o.key),fo(c,o),c.return=e,e=c):(c=Ri(o.type,o.key,o.props,null,e.mode,c),fo(c,o),c.return=e,e=c)}return s(e);case O:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=Hi(o,e.mode,c),c.return=e,e=c}return s(e);case M:return o=io(o),_(e,r,o,c)}if(me(o))return h(e,r,o,c);if(de(o)){if(l=de(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return _(e,r,uo(o),c);if(o.$$typeof===ae)return _(e,r,ka(e,o),c);po(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=Bi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{lo=0;var i=_(e,t,n,r);return co=null,i}catch(t){if(t===Qa||t===eo)throw t;var a=Pi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var ho=mo(!0),go=mo(!1),_o=!1;function vo(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function yo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function bo(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xo(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,sd&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ji(e),Ai(e,null,n),t}return Di(e,r,t,n),ji(e)}function So(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,gt(e,n)}}function Co(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n}else e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var wo=!1;function To(){if(wo){var e=Ua;if(e!==null)throw e}}function Eo(e,t,n,r){wo=!1;var i=e.updateQueue;_o=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(ud&f)===f:(r&f)===f){f!==0&&f===Ha&&(wo=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,h=s;f=t;var g=n;switch(h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(g,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(g,d,f):m,f==null)break a;d=D({},d,f);break a;case 2:_o=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),vd|=o,e.lanes=o,e.memoizedState=d}}function Do(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Oo(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)Do(n[e],t)}var ko=ye(null),Ao=ye(0);function jo(e,t){e=gd,xe(Ao,e),xe(ko,t),gd=e|t.baseLanes}function Mo(){xe(Ao,gd),xe(ko,ko.current)}function No(){gd=Ao.current,be(ko),be(Ao)}var Po=ye(null),Fo=null;function Io(e){var t=e.alternate;xe(Vo,Vo.current&1),xe(Po,e),Fo===null&&(t===null||ko.current!==null||t.memoizedState!==null)&&(Fo=e)}function Lo(e){xe(Vo,Vo.current),xe(Po,e),Fo===null&&(Fo=e)}function Ro(e){e.tag===22?(xe(Vo,Vo.current),xe(Po,e),Fo===null&&(Fo=e)):zo()}function zo(){xe(Vo,Vo.current),xe(Po,Po.current)}function Bo(e){be(Po),Fo===e&&(Fo=null),be(Vo)}var Vo=ye(0);function Ho(e,t){xe(Po,Po.current),xe(Vo,t)}function Uo(e){be(Vo),be(Po),Fo===e&&(Fo=null)}function Wo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||xm(n)||Sm(n)))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==`independent`){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Go=0,Ko=null,qo=null,Jo=null,Yo=!1,Xo=!1,Zo=!1,Qo=0,$o=0,es=null,ts=0;function ns(){throw Error(i(321))}function rs(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Ur(e[n],t[n]))return!1;return!0}function is(e,t,n,r,i,a){return Go=a,Ko=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,I.H=e===null||e.memoizedState===null?bc:xc,Zo=!1,a=n(r,i),Zo=!1,Xo&&(a=os(t,n,r,i)),as(e),a}function as(e){I.H=yc;var t=qo!==null&&qo.next!==null;if(Go=0,Jo=qo=Ko=null,Yo=!1,$o=0,es=null,t)throw Error(i(300));e===null||Rc||(e=e.dependencies,e!==null&&Ea(e)&&(Rc=!0))}function os(e,t,n,r){Ko=e;var a=0;do{if(Xo&&(es=null),$o=0,Xo=!1,25<=a)throw Error(i(301));if(a+=1,Jo=qo=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}I.H=Sc,o=t(n,r)}while(Xo);return o}function ss(){var e=I.H,t=e.useState()[0];return t=typeof t.then==`function`?ms(t):t,e=e.useState()[0],(qo===null?null:qo.memoizedState)!==e&&(Ko.flags|=1024),t}function cs(){var e=Qo!==0;return Qo=0,e}function ls(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function us(e){if(Yo){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Yo=!1}Go=0,Jo=qo=Ko=null,Xo=!1,$o=Qo=0,es=null}function ds(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Jo===null?Ko.memoizedState=Jo=e:Jo=Jo.next=e,Jo}function fs(){if(qo===null){var e=Ko.alternate;e=e===null?null:e.memoizedState}else e=qo.next;var t=Jo===null?Ko.memoizedState:Jo.next;if(t!==null)Jo=t,qo=e;else{if(e===null)throw Ko.alternate===null?Error(i(467)):Error(i(310));qo=e,e={memoizedState:qo.memoizedState,baseState:qo.baseState,baseQueue:qo.baseQueue,queue:qo.queue,next:null},Jo===null?Ko.memoizedState=Jo=e:Jo=Jo.next=e}return Jo}function ps(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function ms(e){var t=$o;return $o+=1,es===null&&(es=[]),e=ro(es,e,t),t=Ko,(Jo===null?t.memoizedState:Jo.next)===null&&(t=t.alternate,I.H=t===null||t.memoizedState===null?bc:xc),e}function hs(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return ms(e);if(e.$$typeof===P)return;if(e.$$typeof===ae)return Oa(e)}throw Error(i(438,String(e)))}function gs(e){var t=null,n=Ko.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Ko.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=ps(),Ko.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=le;return t.index++,n}function _s(e,t){return typeof t==`function`?t(e):t}function vs(e){return ys(fs(),qo,e)}function ys(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(Go&f)===f:(ud&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===Ha&&(d=!0);else if((Go&p)===p){u=u.next,p===Ha&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,Ko.lanes|=p,vd|=p;f=u.action,Zo&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,Ko.lanes|=f,vd|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!Ur(o,e.memoizedState)&&(Rc=!0,d&&(n=Ua,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function bs(e){var t=fs(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);Ur(o,t.memoizedState)||(Rc=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function xs(e,t,n){var r=Ko,a=fs(),o=sa;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!Ur((qo||a).memoizedState,n);if(s&&(a.memoizedState=n,Rc=!0),a=a.queue,Gs(ws.bind(null,r,a,e),[e]),e=a.getSnapshot!==t||s||Jo!==null&&!!(Jo.memoizedState.tag&1),Bs(e?9:8,{destroy:void 0},Cs.bind(null,r,a,n,t),null),e){if(r.flags|=2048,cd===null)throw Error(i(349));o||Go&127||Ss(r,t,n)}return n}function Ss(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Ko.updateQueue,t===null?(t=ps(),Ko.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Cs(e,t,n,r){t.value=n,t.getSnapshot=r,Ts(t)&&Es(e)}function ws(e,t,n){return n(function(){Ts(t)&&Es(e)})}function Ts(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Ur(e,n)}catch{return!0}}function Es(e){var t=ki(e,2);t!==null&&Kd(t,e,2)}function Ds(e){var t=ds();if(typeof e==`function`){var n=e;if(e=n(),Zo){Qe(!0);try{n()}finally{Qe(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:e},t}function Os(e,t,n,r){return e.baseState=n,ys(e,qo,typeof r==`function`?r:_s)}function ks(e,t,n,r,a){if(gc(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};I.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,As(t,o)):(o.next=n.next,t.pending=n.next=o)}}function As(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=I.T,o={};o.types=a===null?null:a.types,I.T=o;try{var s=n(i,r),c=I.S;c!==null&&c(o,s),R(e,t,s)}catch(n){Ms(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),I.T=a}}else try{a=n(i,r),R(e,t,a)}catch(n){Ms(e,t,n)}}function R(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){js(e,t,n)},function(n){return Ms(e,t,n)}):js(e,t,n)}function js(e,t,n){t.status=`fulfilled`,t.value=n,Ns(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,As(e,n)))}function Ms(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,Ns(t),t=t.next;while(t!==r)}e.action=null}function Ns(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Ps(e,t){return t}function Fs(e,t){if(sa){var n=cd.formState;if(n!==null){a:{var r=Ko;if(sa){if(oa){b:{for(var i=oa,a=la;i.nodeType!==8;)if(!a||(i=wm(i.nextSibling),i===null)){i=null;break b}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){oa=wm(i.nextSibling),r=i.data===`F!`;break a}}da(r)}r=!1}r&&(t=n[0])}}return n=ds(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ps,lastRenderedState:t},n.queue=r,n=pc.bind(null,Ko,r),r.dispatch=n,r=Ds(!1),a=hc.bind(null,Ko,!1,r.queue),r=ds(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=ks.bind(null,Ko,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function Is(e){return Ls(fs(),qo,e)}function Ls(e,t,n){if(t=ys(e,t,Ps)[0],e=vs(_s)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=ms(t)}catch(e){throw e===Qa?eo:e}else r=t;t=fs();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Ko.flags|=2048,Bs(9,{destroy:void 0},Rs.bind(null,i,n),null)),[r,a,e]}function Rs(e,t){e.action=t}function zs(e){var t=fs(),n=qo;if(n!==null)return Ls(t,n,e);fs(),t=t.memoizedState,n=fs();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function Bs(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=Ko.updateQueue,t===null&&(t=ps(),Ko.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Vs(){return fs().memoizedState}function Hs(e,t,n,r){var i=ds();Ko.flags|=e,i.memoizedState=Bs(1|t,{destroy:void 0},n,r===void 0?null:r)}function Us(e,t,n,r){var i=fs();r=r===void 0?null:r;var a=i.memoizedState.inst;qo!==null&&r!==null&&rs(r,qo.memoizedState.deps)?i.memoizedState=Bs(t,a,n,r):(Ko.flags|=e,i.memoizedState=Bs(1|t,a,n,r))}function Ws(e,t){Hs(8390656,8,e,t)}function Gs(e,t){Us(2048,8,e,t)}function Ks(e){Ko.flags|=4;var t=Ko.updateQueue;if(t===null)t=ps(),Ko.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function qs(e){var t=fs().memoizedState;return Ks({ref:t,nextImpl:e}),function(){if(sd&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function Js(e,t){return Us(4,2,e,t)}function Ys(e,t){return Us(4,4,e,t)}function Xs(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Zs(e,t,n){n=n==null?null:n.concat([e]),Us(4,4,Xs.bind(null,t,e),n)}function Qs(){}function $s(e,t){var n=fs();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&rs(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function ec(e,t){var n=fs();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&rs(t,r[1]))return r[0];if(r=e(),Zo){Qe(!0);try{e()}finally{Qe(!1)}}return n.memoizedState=[r,t],r}function tc(e,t,n){return n===void 0||Go&1073741824&&!(ud&261930)?e.memoizedState=t:(e.memoizedState=n,e=Wd(),Ko.lanes|=e,vd|=e,n)}function nc(e,t,n,r){return Ur(n,t)?n:ko.current===null?!(Go&106)||Go&1073741824&&!(ud&261930)?(Rc=!0,e.memoizedState=n):(e=Wd(),Ko.lanes|=e,vd|=e,t):(e=tc(e,n,r),Ur(e,t)||(Rc=!0),e)}function rc(e,t,n,r,i){var a=he.p;he.p=a!==0&&8>a?a:8;var o=I.T,s={};s.types=o===null?null:o.types,I.T=s,hc(e,!1,t,n);try{var c=i(),l=I.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?mc(e,t,Ka(c,r),Ud(e)):mc(e,t,r,Ud(e))}catch(n){mc(e,t,{then:function(){},status:`rejected`,reason:n},Ud())}finally{he.p=a,o!==null&&s.types!==null&&(o.types=s.types),I.T=o}}function ic(){}function ac(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=oc(e).queue;rc(e,a,t,ge,n===null?ic:function(){return sc(e),n(r)})}function oc(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ge,baseState:ge,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:ge},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function sc(e){var t=oc(e);t.next===null&&(t=e.alternate.memoizedState),mc(e,t.next.queue,{},Ud())}function cc(){return Oa(xh)}function lc(){return fs().memoizedState}function uc(){return fs().memoizedState}function dc(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Ud();e=bo(n);var r=xo(t,e,n);r!==null&&(Kd(r,t,n),So(r,t,n)),t={cache:Fa()},e.payload=t;return}t=t.return}}function fc(e,t,n){var r=Ud();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},gc(e)?_c(t,n):(n=Oi(e,t,n,r),n!==null&&(Kd(n,e,r),vc(n,t,r)))}function pc(e,t,n){mc(e,t,n,Ud())}function mc(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(gc(e))_c(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Ur(s,o))return Di(e,t,i,0),cd===null&&Ei(),!1}catch{}if(n=Oi(e,t,i,r),n!==null)return Kd(n,e,r),vc(n,t,r),!0}return!1}function hc(e,t,n,r){if(r={lane:2,revertLane:qf(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},gc(e)){if(t)throw Error(i(479))}else t=Oi(e,n,r,2),t!==null&&Kd(t,e,2)}function gc(e){var t=e.alternate;return e===Ko||t!==null&&t===Ko}function _c(e,t){Xo=Yo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function vc(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,gt(e,n)}}var yc={readContext:Oa,use:hs,useCallback:ns,useContext:ns,useEffect:ns,useImperativeHandle:ns,useLayoutEffect:ns,useInsertionEffect:ns,useMemo:ns,useReducer:ns,useRef:ns,useState:ns,useDebugValue:ns,useDeferredValue:ns,useTransition:ns,useSyncExternalStore:ns,useId:ns,useHostTransitionStatus:ns,useFormState:ns,useActionState:ns,useOptimistic:ns,useMemoCache:ns,useCacheRefresh:ns,useEffectEvent:ns},bc={readContext:Oa,use:hs,useCallback:function(e,t){return ds().memoizedState=[e,t===void 0?null:t],e},useContext:Oa,useEffect:Ws,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),Hs(4194308,4,Xs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Hs(4194308,4,e,t)},useInsertionEffect:function(e,t){Hs(4,2,e,t)},useMemo:function(e,t){var n=ds();t=t===void 0?null:t;var r=e();if(Zo){Qe(!0);try{e()}finally{Qe(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=ds();if(n!==void 0){var i=n(t);if(Zo){Qe(!0);try{n(t)}finally{Qe(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=fc.bind(null,Ko,e),[r.memoizedState,e]},useRef:function(e){var t=ds();return e={current:e},t.memoizedState=e},useState:function(e){e=Ds(e);var t=e.queue,n=pc.bind(null,Ko,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:Qs,useDeferredValue:function(e,t){return tc(ds(),e,t)},useTransition:function(){var e=Ds(!1);return e=rc.bind(null,Ko,e.queue,!0,!1),ds().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=Ko,a=ds();if(sa){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),cd===null)throw Error(i(349));ud&127||Ss(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Ws(ws.bind(null,r,o,e),[e]),r.flags|=2048,Bs(9,{destroy:void 0},Cs.bind(null,r,o,n,t),null),n},useId:function(){var e=ds(),t=cd.identifierPrefix;if(sa){var n=$i,r=Qi;n=(r&~(1<<32-$e(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=Qo++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=ts++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:cc,useFormState:Fs,useActionState:Fs,useOptimistic:function(e){var t=ds();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=hc.bind(null,Ko,!0,n),n.dispatch=t,[e,t]},useMemoCache:gs,useCacheRefresh:function(){return ds().memoizedState=dc.bind(null,Ko)},useEffectEvent:function(e){var t=ds(),n={impl:e};return t.memoizedState=n,function(){if(sd&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},xc={readContext:Oa,use:hs,useCallback:$s,useContext:Oa,useEffect:Gs,useImperativeHandle:Zs,useInsertionEffect:Js,useLayoutEffect:Ys,useMemo:ec,useReducer:vs,useRef:Vs,useState:function(){return vs(_s)},useDebugValue:Qs,useDeferredValue:function(e,t){return nc(fs(),qo.memoizedState,e,t)},useTransition:function(){var e=vs(_s)[0],t=fs().memoizedState;return[typeof e==`boolean`?e:ms(e),t]},useSyncExternalStore:xs,useId:lc,useHostTransitionStatus:cc,useFormState:Is,useActionState:Is,useOptimistic:function(e,t){return Os(fs(),qo,e,t)},useMemoCache:gs,useCacheRefresh:uc,useEffectEvent:qs},Sc={readContext:Oa,use:hs,useCallback:$s,useContext:Oa,useEffect:Gs,useImperativeHandle:Zs,useInsertionEffect:Js,useLayoutEffect:Ys,useMemo:ec,useReducer:bs,useRef:Vs,useState:function(){return bs(_s)},useDebugValue:Qs,useDeferredValue:function(e,t){var n=fs();return qo===null?tc(n,e,t):nc(n,qo.memoizedState,e,t)},useTransition:function(){var e=bs(_s)[0],t=fs().memoizedState;return[typeof e==`boolean`?e:ms(e),t]},useSyncExternalStore:xs,useId:lc,useHostTransitionStatus:cc,useFormState:zs,useActionState:zs,useOptimistic:function(e,t){var n=fs();return qo===null?(n.baseState=e,[e,n.queue.dispatch]):Os(n,qo,e,t)},useMemoCache:gs,useCacheRefresh:uc,useEffectEvent:qs};function Cc(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:D({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var wc={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Ud(),i=bo(r);i.payload=t,n!=null&&(i.callback=n),t=xo(e,i,r),t!==null&&(Kd(t,e,r),So(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Ud(),i=bo(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=xo(e,i,r),t!==null&&(Kd(t,e,r),So(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ud(),r=bo(n);r.tag=2,t!=null&&(r.callback=t),t=xo(e,r,n),t!==null&&(Kd(t,e,n),So(t,e,n))}};function Tc(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Wr(n,r)||!Wr(i,a):!0}function Ec(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&wc.enqueueReplaceState(t,t.state,null)}function Dc(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=D({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Oc(e){Si(e)}function kc(e){console.error(e)}function Ac(e){Si(e)}function jc(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Mc(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Nc(e,t,n){return n=bo(n),n.tag=3,n.payload={element:null},n.callback=function(){jc(e,t)},n}function Pc(e){return e=bo(e),e.tag=3,e}function Fc(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Mc(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Mc(t,n,r),typeof i!=`function`&&(Ad===null?Ad=new Set([this]):Ad.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function Ic(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Ta(t,n,a,!0),n=Po.current,n!==null){switch(n.tag){case 31:case 13:case 19:return Fo===null?af():n.alternate===null&&_d===0&&(_d=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===to?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Df(e,r,a)),!1;case 22:return n.flags|=65536,r===to?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Df(e,r,a)),!1}throw Error(i(435,n.tag))}return Df(e,r,a),af(),!1}if(sa)return t=Po.current,t===null?(r!==ua&&(t=Error(i(423),{cause:r}),_a(Wi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=Wi(r,n),a=Nc(e.stateNode,r,a),Co(e,a),_d!==4&&(_d=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==ua&&(e=Error(i(422),{cause:r}),_a(Wi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=Wi(o,n),Cd===null?Cd=[o]:Cd.push(o),_d!==4&&(_d=2),t===null)return!0;r=Wi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=Nc(n.stateNode,r,e),Co(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(Ad===null||!Ad.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=Pc(a),Fc(a,e,n,r),Co(n,a),!1;break;case 22:if(n.memoizedState!==null)return n.flags|=65536,!1}n=n.return}while(n!==null);return!1}var Lc=Error(i(461)),Rc=!1;function zc(e,t,n,r){t.child=e===null?go(t,null,n,r):ho(t,e.child,n,r)}function Bc(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return Da(t),r=is(e,t,n,o,a,i),s=cs(),e!==null&&!Rc?(ls(e,t,i),ml(e,t,i)):(sa&&s&&na(t),t.flags|=1,zc(e,t,r,i),t.child)}function Vc(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!Fi(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,Hc(e,t,a,r,i)):(e=Ri(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!hl(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Wr:n,n(o,r)&&e.ref===t.ref)return ml(e,t,i)}return t.flags|=1,e=Ii(a,r),e.ref=t.ref,e.return=t,t.child=e}function Hc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Wr(a,r)&&e.ref===t.ref){if(Rc=!1,t.pendingProps=r=a,hl(e,i))e.flags&131072&&(Rc=!0);else return t.lanes=e.lanes,ml(e,t,i)}}return Xc(e,t,n,r,i)}function Uc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return Gc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Xa(t,a===null?null:a.cachePool),a===null?Mo():jo(t,a),Ro(t);else return r=t.lanes=536870912,Gc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&Xa(t,null),Mo(),zo()):(Xa(t,a.cachePool),jo(t,a),zo(),t.memoizedState=null);return zc(e,t,i,n),t.child}function Wc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function Gc(e,t,n,r,i){var a=Ya();return a=a===null?null:{parent:Pa._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&Xa(t,null),Mo(),Ro(t),e!==null&&Ta(e,t,r,!0),t.childLanes=i,null}function Kc(e,t){return t=al({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function qc(e,t,n){return ho(t,e.child,null,n),e=Kc(t,t.pendingProps),e.flags|=2,Bo(t),t.memoizedState=null,e}function Jc(e,t,n){var r=t.pendingProps,a=!!(t.flags&128);if(t.flags&=-129,e===null){if(sa){if(r.mode===`hidden`)return e=Kc(t,r),t.lanes=536870912,e.memoizedState={baseLanes:0,cachePool:null},Wc(null,e);if(Lo(t),(e=oa)?(e=bm(e,la),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Zi===null?null:{id:Qi,overflow:$i},retryLane:536870912,hydrationErrors:null},n=Vi(e),n.return=t,t.child=n,aa=t,oa=null)):e=null,e===null)throw da(t);return t.lanes=536870912,null}return Kc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(Lo(t),a){if(t.flags&256)t.flags&=-257,t=qc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558))}else if(Rc||Ta(e,t,n,!1),a=(n&e.childLanes)!==0,Rc||a){if(ko.current===null){if(r=cd,r!==null&&(s=_t(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,ki(e,s),Kd(r,e,s),Lc;af()}t=qc(e,t,n)}else e=o.treeContext,oa=wm(s.nextSibling),aa=t,sa=!0,ca=null,la=!1,e!==null&&ia(t,e),t=Kc(t,r),t.flags|=134221824;return t}return e=Ii(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Yc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function Xc(e,t,n,r,i){return Da(t),n=is(e,t,n,r,void 0,i),r=cs(),e!==null&&!Rc?(ls(e,t,i),ml(e,t,i)):(sa&&r&&na(t),t.flags|=1,zc(e,t,n,i),t.child)}function Zc(e,t,n,r,i,a){return Da(t),t.updateQueue=null,n=os(t,r,n,i),as(e),r=cs(),e!==null&&!Rc?(ls(e,t,a),ml(e,t,a)):(sa&&r&&na(t),t.flags|=1,zc(e,t,n,a),t.child)}function Qc(e,t,n,r,i){if(Da(t),t.stateNode===null){var a=Mi,o=n.contextType;typeof o==`object`&&o&&(a=Oa(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=wc,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},vo(t),o=n.contextType,a.context=typeof o==`object`&&o?Oa(o):Mi,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Cc(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&wc.enqueueReplaceState(a,a.state,null),Eo(t,r,a,i),To(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Dc(n,s);a.props=c;var l=a.context,u=n.contextType;o=Mi,typeof u==`object`&&u&&(o=Oa(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Ec(t,a,r,o),_o=!1;var f=t.memoizedState;a.state=f,Eo(t,r,a,i),To(),l=t.memoizedState,s||f!==l||_o?(typeof d==`function`&&(Cc(t,n,d,r),l=t.memoizedState),(c=_o||Tc(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,yo(e,t),o=t.memoizedProps,u=Dc(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=Mi,typeof l==`object`&&l&&(c=Oa(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Ec(t,a,r,c),_o=!1,f=t.memoizedState,a.state=f,Eo(t,r,a,i),To();var p=t.memoizedState;o!==d||f!==p||_o||e!==null&&e.dependencies!==null&&Ea(e.dependencies)?(typeof s==`function`&&(Cc(t,n,s,r),p=t.memoizedState),(u=_o||Tc(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Ea(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,Yc(e,t),r=!!(t.flags&128),a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=ho(t,e.child,null,i),t.child=ho(t,null,n,i)):zc(e,t,n,i),t.memoizedState=a.state,e=t.child):e=ml(e,t,i),e}function $c(e,t,n,r){return ha(),t.flags|=256,zc(e,t,n,r),t.child}var el={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function tl(e){return{baseLanes:e,cachePool:Za()}}function nl(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=xd),e}function rl(e,t,n){var r=t.pendingProps,i=!1,a=!!(t.flags&128),o;if((o=a)||(o=e!==null&&e.memoizedState===null?!1:!!(Vo.current&2)),o&&(i=!0,t.flags&=-129),o=!!(t.flags&32),t.flags&=-33,e===null){if(sa){if(i?Io(t):zo(),(e=oa)?(e=bm(e,la),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Zi===null?null:{id:Qi,overflow:$i},retryLane:536870912,hydrationErrors:null},n=Vi(e),n.return=t,t.child=n,aa=t,oa=null)):e=null,e===null)throw da(t);return t.lanes=Sm(e)?32:536870912,null}return a=r.children,r=r.fallback,i?(zo(),i=t.mode,a=al({mode:`hidden`,children:a},i),r=zi(r,i,n,null),a.return=t,r.return=t,a.sibling=r,t.child=a,r=t.child,r.memoizedState=tl(n),r.childLanes=nl(e,o,n),t.memoizedState=el,Wc(null,r)):(Io(t),il(t,a))}var s=e.memoizedState;if(s!==null){var c=s.dehydrated;if(c!==null)return sl(e,t,a,o,r,c,s,n)}return i?(zo(),i=r.fallback,a=t.mode,s=e.child,c=s.sibling,r=Ii(s,{mode:`hidden`,children:r.children}),r.subtreeFlags=s.subtreeFlags&1206910976,c===null?(i=zi(i,a,n,null),i.flags|=2):i=Ii(c,i),i.return=t,r.return=t,r.sibling=i,t.child=r,Wc(null,r),r=t.child,i=e.child.memoizedState,i===null?i=tl(n):(a=i.cachePool,a===null?a=Za():(s=Pa._currentValue,a=a.parent===s?a:{parent:s,pool:s}),i={baseLanes:i.baseLanes|n,cachePool:a}),r.memoizedState=i,r.childLanes=nl(e,o,n),t.memoizedState=el,Wc(e.child,r)):(Io(t),n=e.child,e=n.sibling,n=Ii(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(o=t.deletions,o===null?(t.deletions=[e],t.flags|=16):o.push(e)),t.child=n,t.memoizedState=null,n)}function il(e,t){return t=al({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function al(e,t){return e=Pi(22,e,null,t),e.lanes=0,e}function ol(e,t,n){return ho(t,e.child,null,n),e=il(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function sl(e,t,n,r,a,o,s,c){if(n)return t.flags&256?(Io(t),t.flags&=-257,ol(e,t,c)):t.memoizedState===null?(zo(),o=a.fallback,s=t.mode,a=al({mode:`visible`,children:a.children},s),o=zi(o,s,c,null),o.flags|=2,a.return=t,o.return=t,a.sibling=o,t.child=a,ho(t,e.child,null,c),a=t.child,a.memoizedState=tl(c),a.childLanes=nl(e,r,c),t.memoizedState=el,Wc(null,a)):(zo(),t.child=e.child,t.flags|=128,null);if(Io(t),Sm(o)){if(r=o.nextSibling&&o.nextSibling.dataset,r)var l=r.dgst;return r=l,r!==``&&(a=Error(i(419)),a.stack=``,a.digest=r,_a({value:a,source:null,stack:null})),ol(e,t,c)}if(Rc||Ta(e,t,c,!1),r=(c&e.childLanes)!==0,Rc||r){if(ko.current!==null)return ol(e,t,c);if(r=cd,r!==null&&(a=_t(r,c),a!==0&&a!==s.retryLane))throw s.retryLane=a,ki(e,a),Kd(r,e,a),Lc;return xm(o)||af(),ol(e,t,c)}return xm(o)?(t.flags|=192,t.child=e.child,null):(e=s.treeContext,oa=wm(o.nextSibling),aa=t,sa=!0,ca=null,la=!1,e!==null&&ia(t,e),t=il(t,a.children),t.flags|=134221824,t)}function cl(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ca(e.return,t,n)}function ll(e){for(var t=null;e!==null;){var n=e.alternate;n!==null&&Wo(n)===null&&(t=e),e=e.sibling}return t}function ul(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function dl(e){var t=e.child;for(e.child=null;t!==null;){var n=t.sibling;t.sibling=e.child,e.child=t,t=n}}function fl(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=Vo.current;if(t.flags&128)return Ho(t,o),null;var s=!!(o&2);if(s?(o=o&1|2,t.flags|=128):o&=1,Ho(t,o),i===`backwards`&&e!==null?(dl(e),zc(e,t,r,n),dl(e)):zc(e,t,r,n),r=sa?Ji:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&cl(e,n,t);else if(e.tag===19)cl(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`backwards`:n=ll(t.child),n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null,dl(t)),ul(t,!0,i,null,a,r);break;case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Wo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}ul(t,!0,n,null,a,r);break;case`together`:ul(t,!1,null,null,void 0,r);break;case`independent`:t.memoizedState=null;break;default:n=ll(t.child),n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),ul(t,!1,i,n,a,r)}return t.child}function pl(e,t,n){var r=t.pendingProps;return xa(t,t.type,r.value),zc(e,t,r.children,n),t.child}function ml(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),vd|=t.lanes,(n&t.childLanes)===0){if(e!==null){if(Ta(e,t,n,!1),(n&t.childLanes)===0)return null}else return null}if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Ii(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Ii(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function hl(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&Ea(e)))}function gl(e,t,n){switch(t.tag){case 3:Ee(t,t.stateNode.containerInfo),xa(t,Pa,e.memoizedState.cache),ha();break;case 27:case 5:Oe(t);break;case 4:Ee(t,t.stateNode.containerInfo);break;case 10:xa(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Lo(t),null;break;case 13:var r=t.memoizedState;if(r!==null){if(r.dehydrated!==null)return Io(t),t.flags|=128,null;r=Ta(e,t,n,!1);var i=t.child.childLanes;return r||(n&i)!==0?rl(e,t,n):(Io(t),e=ml(e,t,n),e===null?null:e.sibling)}Io(t);break;case 19:if(t.flags&128)return fl(e,t,n);if(i=!!(e.flags&128),r=(n&t.childLanes)!==0,r||=(Ta(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return fl(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Ho(t,Vo.current),r)break;return null;case 22:return t.lanes=0,Uc(e,t,n,t.pendingProps);case 24:xa(t,Pa,e.memoizedState.cache)}return ml(e,t,n)}function _l(e,t,n){if(e!==null){if(e.memoizedProps!==t.pendingProps)Rc=!0;else{if(!hl(e,n)&&!(t.flags&128))return Rc=!1,gl(e,t,n);Rc=!!(e.flags&131072)}}else Rc=!1,sa&&t.flags&1048576&&ta(t,Ji,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=io(t.elementType),t.type=e,typeof e==`function`)Fi(e)?(r=Dc(e,r),t.tag=1,t=Qc(null,t,e,r,n)):(t.tag=0,t=Xc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===A){t.tag=11,t=Bc(null,t,e,r,n);break a}if(a===se){t.tag=14,t=Vc(null,t,e,r,n);break a}if(a===ae){t.tag=10,t.type=e,t=pl(null,t,n);break a}}throw t=pe(e)||e,Error(i(306,t,``))}}return t;case 0:return Xc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=Dc(r,t.pendingProps),Qc(e,t,r,a,n);case 3:a:{if(Ee(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,yo(e,t),Eo(t,r,null,n);var s=t.memoizedState;if(r=s.cache,xa(t,Pa,r),r!==o.cache&&wa(t,[Pa],n,!0),To(),r=s.element,o.isDehydrated){if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=$c(e,t,r,n);break a}if(r!==a){a=Wi(Error(i(424)),t),_a(a),t=$c(e,t,r,n);break a}switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(oa=wm(e.firstChild),aa=t,sa=!0,ca=null,la=!0,n=go(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|134221824,n=n.sibling}else{if(ha(),r===a){t=ml(e,t,n);break a}zc(e,t,r,n)}t=t.child}return t;case 26:return Yc(e,t),e===null?(n=qm(t.type,null,t.pendingProps,null))?t.memoizedState=n:sa||(t.stateNode=Dp(t.type,t.pendingProps,we.current,t)):t.memoizedState=qm(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return Oe(t),e===null&&sa&&(r=t.stateNode=km(t.type,t.pendingProps,we.current),aa=t,la=!0,a=oa,Lp(t.type)?(Tm=a,oa=wm(r.firstChild)):oa=a),zc(e,t,t.pendingProps.children,n),Yc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&sa&&((a=r=oa)&&(r=vm(r,t.type,t.pendingProps,la),r===null?a=!1:(t.stateNode=r,aa=t,oa=wm(r.firstChild),la=!1,a=!0)),a||da(t)),Oe(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Op(a,o)?r=null:s!==null&&Op(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=is(e,t,ss,null,null,n),xh._currentValue=a),Yc(e,t),zc(e,t,r,n),t.child;case 6:return e===null&&sa&&((e=n=oa)&&(n=ym(n,t.pendingProps,la),n===null?e=!1:(t.stateNode=n,aa=t,oa=null,e=!0)),e||da(t)),null;case 13:return rl(e,t,n);case 4:return Ee(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ho(t,null,r,n):zc(e,t,r,n),t.child;case 11:return Bc(e,t,t.type,t.pendingProps,n);case 7:return r=t.pendingProps,Yc(e,t),zc(e,t,r,n),t.child;case 8:return zc(e,t,t.pendingProps.children,n),t.child;case 12:return zc(e,t,t.pendingProps.children,n),t.child;case 10:return pl(e,t,n);case 9:return a=t.type._context,r=t.pendingProps.children,Da(t),a=Oa(a),r=r(a),t.flags|=1,zc(e,t,r,n),t.child;case 14:return Vc(e,t,t.type,t.pendingProps,n);case 15:return Hc(e,t,t.type,t.pendingProps,n);case 19:return fl(e,t,n);case 31:return Jc(e,t,n);case 22:return Uc(e,t,n,t.pendingProps);case 24:return Da(t),r=Oa(Pa),e===null?(a=Ya(),a===null&&(a=cd,o=Fa(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},vo(t),xa(t,Pa,a)):((e.lanes&n)!==0&&(yo(e,t),Eo(t,null,null,n),To()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,xa(t,Pa,r),r!==a.cache&&wa(t,[Pa],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),xa(t,Pa,r))),zc(e,t,t.pendingProps.children,n),t.child;case 30:return t.stateNode===null&&(t.stateNode={autoName:null,paired:null,clones:null,ref:null}),r=t.pendingProps,r.name!=null&&r.name!==`auto`?t.flags|=e===null?18882560:18874368:sa&&na(t),e!==null&&e.memoizedProps.name!==r.name?t.flags|=4194816:Yc(e,t),zc(e,t,r.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function vl(e){e.flags|=4}function yl(e,t,n,r,i){var a;if((a=!!(e.mode&32))&&(a=n===null?ch(t,r):ch(t,r)&&(r.src!==n.src||r.srcSet!==n.srcSet)),a){if(e.flags|=16777216,(i&335544128)===i){if(e.stateNode.complete)e.flags|=8192;else if(tf())e.flags|=8192;else throw ao=to,$a}}else e.flags&=-16777217}function bl(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!lh(t)){if(tf())e.flags|=8192;else throw ao=to,$a}}function xl(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:dt(),e.lanes|=t,Sd|=t)}function Sl(e,t){if(!sa)switch(e.tailMode){case`visible`:break;case`collapsed`:for(var n=e.tail,r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null;break;default:for(t=e.tail,n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null}}function Cl(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&1206910976,r|=i.flags&1206910976,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function wl(e,t,n){var r=t.pendingProps;switch(ra(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Cl(t),null;case 1:return Cl(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Sa(Pa),De(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(ma(t)?vl(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ga())),Cl(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(vl(t),o===null?(Cl(t),yl(t,a,null,r,n)):(Cl(t),bl(t,o))):o?o===e.memoizedState?(Cl(t),t.flags&=-16777217):(vl(t),Cl(t),bl(t,o)):(e=e.memoizedProps,e!==r&&vl(t),Cl(t),yl(t,a,e,r,n)),null;case 27:if(ke(t),n=we.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&vl(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Cl(t),t.subtreeFlags&=-33554433,null}e=Se.current,ma(t)?fa(t,e):(e=km(a,r,n),t.stateNode=e,vl(t))}return Cl(t),t.subtreeFlags&=-33554433,null;case 5:if(ke(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&vl(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Cl(t),t.subtreeFlags&=-33554433,null}if(o=Se.current,ma(t))fa(t,o);else{var s=wp(we.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[Ct]=t,o[wt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(_p(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&vl(t)}}return Cl(t),t.subtreeFlags&=-33554433,yl(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&vl(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=we.current,ma(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=aa,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[Ct]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||mp(e.nodeValue,n)),e||da(t,!0)}else e=wp(e).createTextNode(r),e[Ct]=t,t.stateNode=e}return Cl(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=ma(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[Ct]=t}else ha(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Cl(t),e=!1}else n=ga(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Bo(t),t):(Bo(t),null);if(t.flags&128)throw Error(i(558))}return Cl(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=ma(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[Ct]=t}else ha(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Cl(t),a=!1}else a=ga(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Bo(t),t):(Bo(t),null)}return Bo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),xl(t,t.updateQueue),Cl(t),null);case 4:return De(),e===null&&ip(t.stateNode.containerInfo),t.flags|=67108864,Cl(t),null;case 10:return Sa(t.type),Cl(t),null;case 19:if(Uo(t),r=t.memoizedState,r===null)return Cl(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)Sl(r,!1);else{if(_d!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=Wo(e),o!==null){for(t.flags|=128,Sl(r,!1),e=o.updateQueue,t.updateQueue=e,xl(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Li(n,e),n=n.sibling;return Ho(t,Vo.current&1|2),sa&&ea(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&He()>Od&&(t.flags|=128,a=!0,Sl(r,!1),t.lanes=4194304)}}else{if(!a){if(e=Wo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,xl(t,e),Sl(r,!0),r.tail===null&&r.tailMode!==`collapsed`&&r.tailMode!==`visible`&&!o.alternate&&!sa)return Cl(t),null}else 2*He()-r.renderingStartTime>Od&&n!==536870912&&(t.flags|=128,a=!0,Sl(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}if(r.tail!==null){e=r.tail;a:{for(n=e;n!==null;){if(n.alternate!==null){n=!1;break a}n=n.sibling}n=!0}return r.rendering=e,r.tail=e.sibling,r.renderingStartTime=He(),e.sibling=null,o=Vo.current,o=a?o&1|2:o&1,r.tailMode===`visible`||r.tailMode===`collapsed`||!n||sa?Ho(t,o):(n=o,xe(Po,t),xe(Vo,n),Fo===null&&(Fo=t)),sa&&ea(t,r.treeForkCount),e}return Cl(t),null;case 22:case 23:return Bo(t),No(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Cl(t),t.subtreeFlags&6&&(t.flags|=8192)):Cl(t),n=t.updateQueue,n!==null&&xl(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&be(Ja),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Sa(Pa),Cl(t),null;case 25:return null;case 30:return t.flags|=33554432,Cl(t),null}throw Error(i(156,t.tag))}function Tl(e,t){switch(ra(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Sa(Pa),De(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ke(t),null;case 31:if(t.memoizedState!==null){if(Bo(t),t.alternate===null)throw Error(i(340));ha()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Bo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));ha()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Uo(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return De(),null;case 10:return Sa(t.type),null;case 22:case 23:return Bo(t),No(),e!==null&&be(Ja),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Sa(Pa),null;case 25:return null;default:return null}}function El(e,t){switch(ra(t),t.tag){case 3:Sa(Pa),De();break;case 26:case 27:case 5:ke(t);break;case 4:De();break;case 31:t.memoizedState!==null&&Bo(t);break;case 13:Bo(t);break;case 19:Uo(t);break;case 10:Sa(t.type);break;case 22:case 23:Bo(t),No(),e!==null&&be(Ja);break;case 24:Sa(Pa)}}function Dl(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Ef(t,t.return,e)}}function Ol(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Ef(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Ef(t,t.return,e)}}function kl(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Oo(t,n)}catch(t){Ef(e,e.return,t)}}}function Al(e,t,n){n.props=Dc(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Ef(e,t,n)}}function jl(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:var i=e.stateNode,a=yi(e.memoizedProps,i);(i.ref===null||i.ref.name!==a)&&(i.ref=Yp(a)),r=i.ref;break;case 7:if(e.stateNode===null){var o=new Xp(e);m(e.child,!1,pm,o,void 0,void 0),e.stateNode=o}r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Ef(e,t,n)}}function Ml(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){Ef(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Ef(e,t,n)}else n.current=null}}function Nl(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var n=0;n<t.length;n++)hm(e.stateNode,t[n])}function Pl(e){for(var t=e.return;t!==null&&(Ll(t)&&hm(e.stateNode,t.stateNode),!Il(t));)t=t.return}function Fl(e){for(var t=e.return;t!==null&&(Ll(t)&&gm(e.stateNode,t.stateNode),!Il(t));)t=t.return}function Il(e){return e.tag===5||e.tag===3||e.tag===27}function Ll(e){return e&&e.tag===7&&e.stateNode!==null}function Rl(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Ef(e,e.return,t)}}function zl(e,t,n){try{var r=e.stateNode;yp(r,e.type,n,t),r[wt]=t}catch(t){Ef(e,e.return,t)}}function Bl(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Lp(e.type)||e.tag===4}function Vl(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Bl(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Lp(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Hl(e,t,n,r){var i=e.tag;if(i===5||i===6)i=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(i,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(i),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=bn)),Nl(e,r),qt=!0;else if(i!==4&&(i===27&&(Nl(e,r),r=null,Lp(e.type)&&(n=e.stateNode,t=null)),e=e.child,e!==null))for(Hl(e,t,n,r),e=e.sibling;e!==null;)Hl(e,t,n,r),e=e.sibling}function Ul(e,t,n,r){var i=e.tag;if(i===5||i===6)i=e.stateNode,t?n.insertBefore(i,t):n.appendChild(i),Nl(e,r),qt=!0;else if(i!==4&&(i===27&&(Nl(e,r),r=null,Lp(e.type)&&(n=e.stateNode)),e=e.child,e!==null))for(Ul(e,t,n,r),e=e.sibling;e!==null;)Ul(e,t,n,r),e=e.sibling}function Wl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);_p(t,r,n),t[Ct]=e,t[wt]=n}catch(t){Ef(e,e.return,t)}}var Gl=!1,Kl=null;function ql(e){(e.tag===30||e.subtreeFlags&33554432)&&(Gl=!0)}var Jl=null;function Yl(){var e=Jl;return Jl=null,e}var Xl=0;function Zl(e,t,n,r,i){return Xl=0,Ql(e.child,t,n,r,i)}function Ql(e,t,n,r,i){for(var a=!1;e!==null;){if(e.tag===5){var o=e.stateNode;if(r!==null){var s=Up(o);r.push(s),s.view&&(a=!0)}else a||Up(o).view&&(a=!0);Gl=!0,Bp(o,Xl===0?t:t+`_`+Xl,n),Xl++}else(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&i||Ql(e.child,t,n,r,i)&&(a=!0));e=e.sibling}return a}function $l(e,t){for(;e!==null;)e.tag===5?Vp(e.stateNode,e.memoizedProps):(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&t||$l(e.child,t)),e=e.sibling}function eu(e){if(e.subtreeFlags&18874368)for(e=e.child;e!==null;){if((e.tag!==22||e.memoizedState===null)&&(eu(e),e.tag===30&&e.flags&18874368&&e.stateNode.paired)){var t=e.memoizedProps;if(t.name==null||t.name===`auto`)throw Error(i(544));var n=t.name;t=xi(t.default,t.share),t!==`none`&&(Zl(e,n,t,null,!1)||$l(e.child,!1))}e=e.sibling}}function tu(e,t){if(e.tag===30){var n=e.stateNode,r=e.memoizedProps,i=yi(r,n),a=xi(r.default,n.paired?r.share:r.enter);a===`none`?eu(e):Zl(e,i,a,null,!1)?(eu(e),n.paired||t||Gd(e,r.onEnter)):$l(e.child,!1)}else if(e.subtreeFlags&33554432)for(e=e.child;e!==null;)tu(e,t),e=e.sibling;else eu(e)}function nu(e){if(Kl!==null&&Kl.size!==0){var t=Kl;if(e.subtreeFlags&18874368)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&e.flags&18874368){var n=e.memoizedProps,r=n.name;if(r!=null&&r!==`auto`){var i=t.get(r);if(i!==void 0){var a=xi(n.default,n.share);if(a!==`none`&&(Zl(e,r,a,null,!1)?(a=e.stateNode,i.paired=a,a.paired=i,Gd(e,n.onShare)):$l(e.child,!1)),t.delete(r),t.size===0)break}}}nu(e)}e=e.sibling}}}function ru(e){if(e.tag===30){var t=e.memoizedProps,n=yi(t,e.stateNode),r=Kl===null?void 0:Kl.get(n),i=xi(t.default,r===void 0?t.exit:t.share);i!==`none`&&(Zl(e,n,i,null,!1)?r===void 0?Gd(e,t.onExit):(i=e.stateNode,r.paired=i,i.paired=r,Kl.delete(n),Gd(e,t.onShare)):$l(e.child,!1)),Kl!==null&&nu(e)}else if(e.subtreeFlags&33554432)for(e=e.child;e!==null;)ru(e),e=e.sibling;else Kl!==null&&nu(e)}function iu(e){for(e=e.child;e!==null;){if(e.tag===30){var t=e.memoizedProps,n=yi(t,e.stateNode);t=xi(t.default,t.update),e.flags&=-5,t!==`none`&&Zl(e,n,t,e.memoizedState=[],!1)}else e.subtreeFlags&33554432&&iu(e);e=e.sibling}}function au(e){if(e.subtreeFlags&18874368)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&e.flags&18874368){var t=e.stateNode;t.paired!==null&&(t.paired=null,$l(e.child,!1))}au(e)}e=e.sibling}}function ou(e){if(e.tag===30)e.stateNode.paired=null,$l(e.child,!1),au(e);else if(e.subtreeFlags&33554432)for(e=e.child;e!==null;)ou(e),e=e.sibling;else au(e)}function su(e){for(e=e.child;e!==null;)e.tag===30?$l(e.child,!1):e.subtreeFlags&33554432&&su(e),e=e.sibling}function cu(e,t,n,r,i,a,o){for(var s=!1;t!==null;){if(t.tag===5){var c=t.stateNode;if(a!==null&&Xl<a.length){var l=a[Xl],u=Up(c);(l.view||u.view)&&(s=!0);var d;if(d=!(e.flags&4)){if(u.clip)d=!0;else{d=l.rect;var f=u.rect;d=d.y!==f.y||d.x!==f.x||d.height!==f.height||d.width!==f.width}}d&&(e.flags|=4),u.abs?u=!l.abs:(l=l.rect,u=u.rect,u=l.height!==u.height||l.width!==u.width),u&&(e.flags|=32)}else e.flags|=32;e.flags&4&&Bp(c,Xl===0?n:n+`_`+Xl,i),s&&e.flags&4||(Jl===null&&(Jl=[]),Jl.push(c,Xl===0?r:r+`_`+Xl,t.memoizedProps)),Xl++}else(t.tag!==22||t.memoizedState===null)&&(t.tag===30&&o?e.flags|=t.flags&32:cu(e,t.child,n,r,i,a,o)&&(s=!0));t=t.sibling}return s}function lu(e,t){for(e=e.child;e!==null;){if(e.tag===30){var n=e.memoizedProps,r=e.stateNode,i=yi(n,r),a=xi(n.default,n.update);if(t){r=r.clones;var o=r===null?null:r.map(Wp)}else o=e.memoizedState,e.memoizedState=null;r=e;var s=e.child;Xl=0,i=cu(r,s,i,i,a,o,!1),e.flags&4&&i&&(t||Gd(e,n.onUpdate))}else e.subtreeFlags&33554432&&lu(e,t);e=e.sibling}}var uu=!1,du=!1,fu=!1,pu=!1,mu=typeof WeakSet==`function`?WeakSet:Set,hu=null,gu=!1,_u=!1,vu=!1,yu=!1;function bu(e,t,n){if(e=e.containerInfo,Sp=Ah,e=Yr(e),Xr(e)){if(`selectionStart`in e)var r={start:e.selectionStart,end:e.selectionEnd};else a:{r=(r=e.ownerDocument)&&r.defaultView||window;var i=r.getSelection&&r.getSelection();if(i&&i.rangeCount!==0){r=i.anchorNode;var a=i.anchorOffset,o=i.focusNode;i=i.focusOffset;try{r.nodeType,o.nodeType}catch{r=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==r||a!==0&&f.nodeType!==3||(c=s+a),f!==o||i!==0&&f.nodeType!==3||(l=s+i),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===r&&++u===a&&(c=s),p===o&&++d===i&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}r=c===-1||l===-1?null:{start:c,end:l}}else r=null}r||={start:0,end:0}}else r=null;for(Cp={focusedElem:e,selectionRange:r},Ah=!1,n=(n&335544064)===n,hu=t,t=n?9270:1024;hu!==null;){if(e=hu,n&&(r=e.deletions,r!==null))for(a=0;a<r.length;a++)n&&ru(r[a]);if(e.alternate===null&&e.flags&2)n&&ql(e),xu(n);else{if(e.tag===22){if(r=e.alternate,e.memoizedState!==null){r!==null&&r.memoizedState===null&&n&&ru(r),xu(n);continue}if(r!==null&&r.memoizedState!==null){n&&ql(e),xu(n);continue}}r=e.child,(e.subtreeFlags&t)!==0&&r!==null?(r.return=e,hu=r):(n&&iu(e),xu(n))}}Kl=null}function xu(e){for(;hu!==null;){var t=hu,n=e,r=t.alternate,a=t.flags;switch(t.tag){case 0:case 11:case 15:break;case 1:if(a&1024&&r!==null){n=void 0,a=r.memoizedProps,r=r.memoizedState;var o=t.stateNode;try{var s=Dc(t.type,a);n=o.getSnapshotBeforeUpdate(s,r),o.__reactInternalSnapshotBeforeUpdate=n}catch(e){Ef(t,t.return,e)}}break;case 3:if(a&1024){if(r=t.stateNode.containerInfo,n=r.nodeType,n===9)_m(r);else if(n===1)switch(r.nodeName){case`HEAD`:case`HTML`:case`BODY`:_m(r);break;default:r.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;case 30:n&&r!==null&&(n=yi(r.memoizedProps,r.stateNode),a=t.memoizedProps,a=xi(a.default,a.update),a!==`none`&&Zl(r,n,a,r.memoizedState=[],!0));break;default:if(a&1024)throw Error(i(163))}if(r=t.sibling,r!==null){r.return=t.return,hu=r;break}hu=t.return}}function Su(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:Hu(e,n),r&4&&Dl(5,n);break;case 1:if(Hu(e,n),r&4){if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Ef(n,n.return,e)}else{var i=Dc(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Ef(n,n.return,e)}}}r&64&&kl(n),r&512&&jl(n,n.return);break;case 3:if(Hu(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Oo(e,t)}catch(e){Ef(n,n.return,e)}}break;case 27:t===null&&r&4&&Wl(n);case 26:case 5:Hu(e,n),t===null&&r&4&&Rl(n),r&512&&jl(n,n.return);break;case 12:Hu(e,n);break;case 31:Hu(e,n),r&4&&ju(e,n);break;case 13:Hu(e,n),r&4&&Mu(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=Af.bind(null,n),Cm(e,n))));break;case 22:if(r=n.memoizedState!==null||uu,!r){var a=t!==null&&t.memoizedState!==null||du;t=uu,i=du,uu=r,(du=a)&&!i?(r=2,n.subtreeFlags&8772&&(r|=1),Wu(e,n,r)):Hu(e,n),uu=t,du=i}break;case 30:Hu(e,n),r&512&&jl(n,n.return);break;case 7:r&512&&jl(n,n.return);default:Hu(e,n)}}function Cu(e,t){for(e=e.child;e!==null;)wu(e,t),e=e.sibling}function wu(e,t){switch(e.tag){case 5:case 26:try{var n=e.stateNode;if(t){var r=n.style;typeof r.setProperty==`function`?r.setProperty(`display`,`none`,`important`):r.display=`none`}else{var i=e.stateNode,a=e.memoizedProps.style,o=a!=null&&a.hasOwnProperty(`display`)?a.display:null;i.style.display=o==null||typeof o==`boolean`?``:(``+o).trim()}}catch(t){Ef(e,e.return,t)}Tu(e,t);break;case 6:try{e.stateNode.nodeValue=t?``:e.memoizedProps,qt=!0}catch(t){Ef(e,e.return,t)}break;case 18:try{var s=e.stateNode;t?zp(s,!0):zp(e.stateNode,!1)}catch(t){Ef(e,e.return,t)}break;case 22:case 23:e.memoizedState===null&&Cu(e,t);break;default:Cu(e,t)}}function Tu(e,t){if(e.subtreeFlags&67108864)for(e=e.child;e!==null;){a:{var n=e,r=t;switch(n.tag){case 4:wu(n,r);break a;case 22:n.memoizedState===null&&Tu(n,r);break a;default:Tu(n,r)}}e=e.sibling}}function Eu(e){var t=e.alternate;t!==null&&(e.alternate=null,Eu(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Mt(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Du=null,Ou=!1;function ku(e,t,n){for(n=n.child;n!==null;)Au(e,t,n),n=n.sibling}function Au(e,t,n){if(Ze&&typeof Ze.onCommitFiberUnmount==`function`)try{Ze.onCommitFiberUnmount(Xe,n)}catch{}switch(n.tag){case 26:du||Ml(n,t),ku(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&!du&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:du||Ml(n,t),Fl(n);var r=Du,i=Ou;Lp(n.type)&&(Du=n.stateNode,Ou=!1),ku(e,t,n),Am(n.stateNode,n.type,n.memoizedProps),Du=r,Ou=i;break;case 5:du||Ml(n,t),Fl(n);case 6:if(n.tag===6&&Fl(n),r=Du,i=Ou,Du=null,ku(e,t,n),Du=r,Ou=i,Du!==null){if(Ou)try{(Du.nodeType===9?Du.body:Du.nodeName===`HTML`?Du.ownerDocument.body:Du).removeChild(n.stateNode),qt=!0}catch(e){Ef(n,t,e)}else try{Du.removeChild(n.stateNode),qt=!0}catch(e){Ef(n,t,e)}}break;case 18:Du!==null&&(Ou?(e=Du,Rp(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),tg(e)):Rp(Du,n.stateNode));break;case 4:r=Du,i=Ou,Du=n.stateNode.containerInfo,Ou=!0,ku(e,t,n),Du=r,Ou=i;break;case 0:case 11:case 14:case 15:Ol(2,n,t),du||Ol(4,n,t),ku(e,t,n);break;case 1:du||(Ml(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Al(n,t,r)),ku(e,t,n);break;case 21:ku(e,t,n);break;case 22:du=(r=du)||n.memoizedState!==null,ku(e,t,n),du=r;break;case 30:Ml(n,t),ku(e,t,n);break;case 7:du||Ml(n,t),ku(e,t,n);break;default:ku(e,t,n)}}function ju(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{tg(e)}catch(e){Ef(t,t.return,e)}}}function Mu(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{tg(e)}catch(e){Ef(t,t.return,e)}}function Nu(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new mu),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new mu),t;default:throw Error(i(435,e.tag))}}function Pu(e,t){var n=Nu(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=jf.bind(null,e,t);t.then(r,r)}})}function Fu(e,t,n){var r=t.deletions;if(r!==null)for(var a=0;a<r.length;a++){var o=r[a],s=e,c=t,l=c;a:for(;l!==null;){switch(l.tag){case 27:if(Lp(l.type)){Du=l.stateNode,Ou=!1;break a}break;case 5:Du=l.stateNode,Ou=!1;break a;case 3:case 4:Du=l.stateNode.containerInfo,Ou=!0;break a}l=l.return}if(Du===null)throw Error(i(160));Au(s,c,o),Du=null,Ou=!1,s=o.alternate,s!==null&&(s.return=null),o.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Lu(t,e,n),t=t.sibling}var Iu=null;function Lu(e,t,n){var r=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(a&4&&(r=e.updateQueue,r=r===null?null:r.events,r!==null))for(var o=0;o<r.length;o++){var s=r[o];s.ref.impl=s.nextImpl}Fu(t,e,n),Ru(e),a&4&&(Ol(3,e,e.return),Dl(3,e),Ol(5,e,e.return));break;case 1:Fu(t,e,n),Ru(e),a&512&&(du||r===null||Ml(r,r.return)),a&64&&uu&&(e=e.updateQueue,e!==null&&(t=e.callbacks,t!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?t:n.concat(t))));break;case 26:if(o=Iu,Fu(t,e,n),Ru(e),a&512&&(du||r===null||Ml(r,r.return)),a&4){if(a=r===null?null:r.memoizedState,n=e.memoizedState,r===null){if(n===null){if(e.stateNode===null){if(uu)e.stateNode=Dp(e.type,e.memoizedProps,t.containerInfo,e);else{a:{t=e.type,n=e.memoizedProps,a=o.ownerDocument||o;b:switch(t){case`title`:r=a.getElementsByTagName(`title`)[0],(!r||r[At]||r[Ct]||r.namespaceURI===`http://www.w3.org/2000/svg`||r.hasAttribute(`itemprop`))&&(r=a.createElement(t),a.head.insertBefore(r,a.querySelector(`head > title`))),_p(r,t,n),r[Ct]=e,Lt(r),t=r;break a;case`link`:if(o=ah(`link`,`href`,a).get(t+(n.href||``))){for(s=0;s<o.length;s++)if(r=o[s],r.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&r.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&r.getAttribute(`title`)===(n.title==null?null:n.title)&&r.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){o.splice(s,1);break b}}r=a.createElement(t),_p(r,t,n),a.head.appendChild(r);break;case`meta`:if(o=ah(`meta`,`content`,a).get(t+(n.content||``))){for(s=0;s<o.length;s++)if(r=o[s],r.getAttribute(`content`)===(n.content==null?null:``+n.content)&&r.getAttribute(`name`)===(n.name==null?null:n.name)&&r.getAttribute(`property`)===(n.property==null?null:n.property)&&r.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&r.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){o.splice(s,1);break b}}r=a.createElement(t),_p(r,t,n),a.head.appendChild(r);break;default:throw Error(i(468,t))}r[Ct]=e,Lt(r),t=r}e.stateNode=t}}else uu||oh(o,e.type,e.stateNode)}else e.stateNode=eh(o,n,e.memoizedProps)}else a===n?n===null&&e.stateNode!==null&&zl(e,e.memoizedProps,r.memoizedProps):(a===null?(t=r.stateNode,t===null||du||t.parentNode.removeChild(t)):a.count--,n===null?uu||oh(o,e.type,e.stateNode):eh(o,n,e.memoizedProps))}break;case 27:Fu(t,e,n),Ru(e),a&512&&(du||r===null||Ml(r,r.return)),r!==null&&a&4&&zl(e,e.memoizedProps,r.memoizedProps);break;case 5:if(o=fu,fu=!1,Fu(t,e,n),fu=o,Ru(e),a&512&&(du||r===null||Ml(r,r.return)),e.flags&32){t=e.stateNode;try{fn(t,``),qt=!0}catch(t){Ef(e,e.return,t)}}a&4&&e.stateNode!=null&&(t=e.memoizedProps,zl(e,t,r===null?t:r.memoizedProps)),a&1024&&(pu=!0);break;case 6:if(Fu(t,e,n),Ru(e),a&4){if(e.stateNode===null)throw Error(i(162));t=e.memoizedProps,n=e.stateNode;try{n.nodeValue=t,qt=!0}catch(t){Ef(e,e.return,t)}}break;case 3:if(qt=!1,ih=null,o=Iu,Iu=Pm(t.containerInfo),Fu(t,e,n),Iu=o,Ru(e),a&4&&r!==null&&r.memoizedState.isDehydrated)try{tg(t.containerInfo)}catch(t){Ef(e,e.return,t)}pu&&(pu=!1,zu(e)),qt=!1;break;case 4:a=fu,fu=uu,r=Jt(),o=Iu,Iu=Pm(e.stateNode.containerInfo),Fu(t,e,n),Ru(e),Iu=o,qt&&_u&&(vu=!0),qt=r,fu=a;break;case 12:Fu(t,e,n),Ru(e);break;case 31:Fu(t,e,n),Ru(e),a&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Pu(e,t)));break;case 13:Fu(t,e,n),Ru(e),e.child.flags&8192&&e.memoizedState!==null!=(r!==null&&r.memoizedState!==null)&&(Ed=He()),a&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Pu(e,t)));break;case 22:o=e.memoizedState!==null,s=r!==null&&r.memoizedState!==null;var c=uu,l=du,u=fu;uu=c||o,fu=u||o,du=l||s,Fu(t,e,n),du=l,fu=u,uu=c,Ru(e),a&8192&&(t=e.stateNode,t._visibility=o?t._visibility&-2:t._visibility|1,!o||r===null||s||uu||du||(t=s||du,n=uu,r=du,uu=o||uu,du=t,Uu(e,2),uu=n,du=r),!o&&fu||Cu(e,o)),a&4&&(t=e.updateQueue,t!==null&&(n=t.retryQueue,n!==null&&(t.retryQueue=null,Pu(e,n))));break;case 19:Fu(t,e,n),Ru(e),a&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Pu(e,t)));break;case 30:a&512&&(du||r===null||Ml(r,r.return)),a=Jt(),o=_u,s=(n&335544064)===n,c=e.memoizedProps,_u=s&&xi(c.default,c.update)!==`none`,Fu(t,e,n),Ru(e),s&&r!==null&&qt&&(e.flags|=4),_u=o,qt=a;break;case 21:break;case 7:a&512&&(du||r===null||Ml(r,r.return)),r&&r.stateNode!==null&&(r.stateNode._fragmentFiber=e);default:Fu(t,e,n),Ru(e)}}function Ru(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Bl(r)){n=r;break}r=r.return}r=null;for(var a=e.return;a!==null;){if(Ll(a)){var o=a.stateNode;r===null?r=[o]:r.push(o)}if(Il(a))break;a=a.return}var s=r;if(n==null)throw Error(i(160));switch(n.tag){case 27:var c=n.stateNode;Ul(e,Vl(e),c,s);break;case 5:var l=n.stateNode;n.flags&32&&(fn(l,``),n.flags&=-33),Ul(e,Vl(e),l,s);break;case 3:case 4:var u=n.stateNode.containerInfo;Hl(e,Vl(e),u,s);break;default:throw Error(i(161))}}catch(t){Ef(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function zu(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;zu(t),t.tag===5&&t.flags&1024&&(t=t.stateNode,Ah=!0,t.reset(),Ah=!1),e=e.sibling}}function Bu(e,t){if(t.subtreeFlags&9270)for(t=t.child;t!==null;)Vu(t,e),t=t.sibling;else lu(t,!1)}function Vu(e,t){var n=e.alternate;if(n===null)tu(e,!1);else switch(e.tag){case 3:if(yu=gu=!1,Yl(),Bu(t,e),!gu&&!vu){if(e=Jl,e!==null)for(var r=0;r<e.length;r+=3){n=e[r];var i=e[r+1];Vp(n,e[r+2]),n=n.ownerDocument.documentElement,n!==null&&n.animate({opacity:[0,0],pointerEvents:[`none`,`none`]},{duration:0,fill:`forwards`,pseudoElement:`::view-transition-group(`+i+`)`})}e=t.containerInfo,e=e.nodeType===9?e.documentElement:e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName===``&&(e.style.viewTransitionName=`none`,e.animate({opacity:[0,0],pointerEvents:[`none`,`none`]},{duration:0,fill:`forwards`,pseudoElement:`::view-transition-group(root)`}),e.animate({width:[0,0],height:[0,0]},{duration:0,fill:`forwards`,pseudoElement:`::view-transition`})),yu=!0}Jl=null;break;case 5:Bu(t,e);break;case 4:r=gu,gu=!1,Bu(t,e),gu&&(vu=!0),gu=r;break;case 22:e.memoizedState===null&&(n.memoizedState===null?Bu(t,e):tu(e,!1));break;case 30:r=gu,i=Yl(),gu=!1,Bu(t,e),gu&&(e.flags|=4);var a=e.memoizedProps,o=e.stateNode;t=yi(a,o),o=yi(n.memoizedProps,o);var s=xi(a.default,a.update);s===`none`?t=!1:(a=n.memoizedState,n.memoizedState=null,n=e.child,Xl=0,t=cu(e,n,t,o,s,a,!0),Xl!==(a===null?0:a.length)&&(e.flags|=32)),e.flags&4&&t?(Gd(e,e.memoizedProps.onUpdate),Jl=i):i!==null&&(i.push.apply(i,Jl),Jl=i),gu=e.flags&32?!0:r;break;default:Bu(t,e)}}function Hu(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Su(e,t.alternate,t),t=t.sibling}function Uu(e,t){for(e=e.child;e!==null;){var n=e,r=t;switch(n.tag){case 0:case 11:case 14:case 15:Ol(4,n,n.return),Uu(n,r);break;case 1:Ml(n,n.return);var i=n.stateNode;typeof i.componentWillUnmount==`function`&&Al(n,n.return,i),Uu(n,r);break;case 27:r&2&&Am(n.stateNode,n.type,n.memoizedProps);case 5:Ml(n,n.return),n.tag!==5&&n.tag!==27||Fl(n),Uu(n,r);break;case 6:Fl(n);break;case 26:Ml(n,n.return),i=n.stateNode,n.memoizedState!==null||i===null||du||i.parentNode.removeChild(i),Uu(n,r);break;case 22:n.memoizedState===null&&Uu(n,r);break;case 30:Ml(n,n.return),Uu(n,r);break;case 7:Ml(n,n.return);default:Uu(n,r)}e=e.sibling}}function Wu(e,t,n){for(n=t.subtreeFlags&8772?n:n&-2,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags,s=!!(n&1);switch(a.tag){case 0:case 11:case 15:Wu(i,a,n),Dl(4,a);break;case 1:if(Wu(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Ef(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var c=r.stateNode;try{var l=i.shared.hiddenCallbacks;if(l!==null)for(i.shared.hiddenCallbacks=null,i=0;i<l.length;i++)Do(l[i],c)}catch(e){Ef(r,r.return,e)}}s&&o&64&&kl(a),jl(a,a.return);break;case 27:n&2&&Wl(a);case 5:a.tag!==5&&a.tag!==27||Pl(a),Wu(i,a,n),s&&r===null&&o&4&&Rl(a),jl(a,a.return);break;case 6:Pl(a);break;case 26:c=a.stateNode,a.memoizedState!==null||c===null||uu||oh(Pm(c.ownerDocument),a.type,c),Wu(i,a,n),s&&r===null&&o&4&&Rl(a),jl(a,a.return);break;case 12:Wu(i,a,n);break;case 31:Wu(i,a,n),s&&o&4&&ju(i,a);break;case 13:Wu(i,a,n),s&&o&4&&Mu(i,a);break;case 22:a.memoizedState===null&&Wu(i,a,n),jl(a,a.return);break;case 30:Wu(i,a,n),jl(a,a.return);break;case 7:jl(a,a.return);default:Wu(i,a,n)}t=t.sibling}}function Gu(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&Ia(n))}function Ku(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Ia(e))}function qu(e,t,n,r){var i=(n&335544064)===n;if(t.subtreeFlags&(i?10262:10256))for(t=t.child;t!==null;)Ju(e,t,n,r),t=t.sibling;else i&&su(t)}function Ju(e,t,n,r){var i=(n&335544064)===n;i&&t.alternate===null&&t.return!==null&&t.return.alternate!==null&&ou(t);var a=t.flags;switch(t.tag){case 0:case 11:case 15:qu(e,t,n,r),a&2048&&Dl(9,t);break;case 1:qu(e,t,n,r);break;case 3:qu(e,t,n,r),i&&yu&&(e=e.containerInfo,e=e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,e.style.viewTransitionName===`root`&&(e.style.viewTransitionName=``),e=e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName===`none`&&(e.style.viewTransitionName=``)),a&2048&&(a=null,t.alternate!==null&&(a=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==a&&(t.refCount++,a!=null&&Ia(a)));break;case 12:if(a&2048){qu(e,t,n,r),a=t.stateNode;try{var o=t.memoizedProps,s=o.id,c=o.onPostCommit;typeof c==`function`&&c(s,t.alternate===null?`mount`:`update`,a.passiveEffectDuration,-0)}catch(e){Ef(t,t.return,e)}}else qu(e,t,n,r);break;case 31:qu(e,t,n,r);break;case 13:qu(e,t,n,r);break;case 23:break;case 22:o=t.stateNode,s=t.alternate,t.memoizedState===null?(i&&s!==null&&s.memoizedState!==null&&ou(t),o._visibility&2?qu(e,t,n,r):(o._visibility|=2,Yu(e,t,n,r,!!(t.subtreeFlags&10256)||!1))):(i&&s!==null&&s.memoizedState===null&&ou(s),o._visibility&2?qu(e,t,n,r):Xu(e,t)),a&2048&&Gu(s,t);break;case 24:qu(e,t,n,r),a&2048&&Ku(t.alternate,t);break;case 30:i&&(a=t.alternate,a!==null&&($l(a.child,!0),$l(t.child,!0))),qu(e,t,n,r);break;default:qu(e,t,n,r)}}function Yu(e,t,n,r,i){for(i&&=!!(t.subtreeFlags&10256)||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:Yu(a,o,s,c,i),Dl(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,Yu(a,o,s,c,i)):u._visibility&2?Yu(a,o,s,c,i):Xu(a,o),i&&l&2048&&Gu(o.alternate,o);break;case 24:Yu(a,o,s,c,i),i&&l&2048&&Ku(o.alternate,o);break;default:Yu(a,o,s,c,i)}t=t.sibling}}function Xu(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Xu(n,r),i&2048&&Gu(r.alternate,r);break;case 24:Xu(n,r),i&2048&&Ku(r.alternate,r);break;default:Xu(n,r)}t=t.sibling}}var Zu=8192;function Qu(e,t,n){if(e.subtreeFlags&Zu)for(e=e.child;e!==null;)$u(e,t,n),e=e.sibling}function $u(e,t,n){switch(e.tag){case 26:Qu(e,t,n),e.flags&Zu&&(e.memoizedState===null?(e=e.stateNode,(t&335544128)===t&&dh(n,e)):fh(n,Iu,e.memoizedState,e.memoizedProps));break;case 5:Qu(e,t,n),e.flags&Zu&&(e=e.stateNode,(t&335544128)===t&&dh(n,e));break;case 3:case 4:var r=Iu;Iu=Pm(e.stateNode.containerInfo),Qu(e,t,n),Iu=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Zu,Zu=16777216,Qu(e,t,n),Zu=r):Qu(e,t,n));break;case 30:if((e.flags&Zu)!==0&&(r=e.memoizedProps.name,r!=null&&r!==`auto`)){var i=e.stateNode;i.paired=null,Kl===null&&(Kl=new Map),Kl.set(r,i)}Qu(e,t,n);break;default:Qu(e,t,n)}}function ed(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function td(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];hu=r,id(r,e)}ed(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)nd(e),e=e.sibling}function nd(e){switch(e.tag){case 0:case 11:case 15:td(e),e.flags&2048&&Ol(9,e,e.return);break;case 3:td(e);break;case 12:td(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,rd(e)):td(e);break;default:td(e)}}function rd(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];hu=r,id(r,e)}ed(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Ol(8,t,t.return),rd(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,rd(t));break;default:rd(t)}e=e.sibling}}function id(e,t){for(;hu!==null;){var n=hu;switch(n.tag){case 0:case 11:case 15:Ol(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:Ia(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,hu=r;else a:for(n=e;hu!==null;){r=hu;var i=r.sibling,a=r.return;if(Eu(r),r===n){hu=null;break a}if(i!==null){i.return=a,hu=i;break a}hu=a}}}var ad={getCacheForType:function(e){var t=Oa(Pa),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return Oa(Pa).controller.signal}},od=typeof WeakMap==`function`?WeakMap:Map,sd=0,cd=null,ld=null,ud=0,dd=0,fd=null,pd=!1,md=!1,hd=!1,gd=0,_d=0,vd=0,yd=0,bd=0,xd=0,Sd=0,Cd=null,wd=null,Td=!1,Ed=0,Dd=0,Od=1/0,kd=null,Ad=null,jd=0,Md=null,Nd=null,Pd=0,Fd=0,Id=null,Ld=null,Rd=null,zd=null,Bd=null,Vd=0,Hd=null;function Ud(){return sd&2&&ud!==0?ud&-ud:I.T===null?bt():qf()}function Wd(){if(xd===0){if(!(ud&536870912)||sa){var e=it;it<<=1,!(it&3932160)&&(it=262144),xd=e}else xd=536870912}return e=Po.current,e!==null&&(e.flags|=32),xd}function Gd(e,t){if(t!=null){var n=e.stateNode,r=n.ref;r===null&&(r=n.ref=Yp(yi(e.memoizedProps,n))),zd===null&&(zd=[]),zd.push(t.bind(null,r))}}function Kd(e,t,n){(e===cd&&(dd===2||dd===9)||e.cancelPendingCommit!==null)&&($d(e,0),Xd(e,ud,xd,!1)),pt(e,n),(!(sd&2)||e!==cd)&&(e===cd&&(!(sd&2)&&(yd|=n),_d===4&&Xd(e,ud,xd,!1)),zf(e))}function qd(e,t,n){if(sd&6)throw Error(i(327));var r=!n&&!(t&127)&&(t&e.expiredLanes)===0||ct(e,t),a=r?cf(e,t):of(e,t,!0),o=r;do{if(a===0){md&&!r&&Xd(e,t,0,!1);break}if(n=e.current.alternate,o&&!Yd(n))a=of(e,t,!1),o=!1;else{if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=Cd;var l=c.current.memoizedState.isDehydrated;if(l&&($d(c,s).flags|=256),s=of(c,s,!1),s!==2&&s!==6){if(hd&&!l){c.errorRecoveryDisabledLanes|=o,yd|=o,a=4;break a}o=wd,wd=a,o!==null&&(wd===null?wd=o:wd.push.apply(wd,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){$d(e,0),Xd(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t&&(t&62914560)!==t)break;case 6:Xd(r,t,xd,!pd);break a;case 2:wd=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=Ed+300-He(),10<a)){if(Xd(r,t,xd,!pd),st(r,0,!0)!==0)break a;Pd=t,r.timeoutHandle=jp(Jd.bind(null,r,n,wd,kd,Td,t,xd,yd,Sd,pd,o,`Throttled`,-0,0),a);break a}Jd(r,n,wd,kd,Td,t,xd,yd,Sd,pd,o,null,-0,0)}break}}while(1);zf(e)}function Jd(e,t,n,r,i,a,o,s,c,l,u,d,f,p){e.timeoutHandle=-1;var m=t.subtreeFlags,h=(a&335544064)===a;d=null,(h||m&8192||(m&16785408)==16785408)&&(d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:bn},Kl=null,$u(t,a,d),h&&(m=d,h=e.containerInfo,h=(h.nodeType===9?h:h.ownerDocument).__reactViewTransition,h!=null&&(m.count++,m.waitingForViewTransition=!0,m=gh.bind(m),h.finished.then(m,m))),m=(a&62914560)===a?Ed-He():(a&4194048)===a?Dd-He():0,m=mh(d,m),m!==null)?(Pd=a,e.cancelPendingCommit=m(hf.bind(null,e,t,a,n,r,i,o,s,c,l,u,d,null,f,p)),Xd(e,a,o,!l)):hf(e,t,a,n,r,i,o,s,c,l,u,d)}function Yd(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Ur(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Xd(e,t,n,r){t=lt(e,t),t&=~bd,t&=~yd,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-$e(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&ht(e,n,t)}function Zd(){return sd&6?!0:(Bf(0,!1),!1)}function Qd(){if(ld!==null){if(dd===0)var e=ld.return;else e=ld,ba=ya=null,us(e),co=null,lo=0,e=ld;for(;e!==null;)El(e.alternate,e),e=e.return;ld=null}}function $d(e,t){var n=e.timeoutHandle;return n!==-1&&(e.timeoutHandle=-1,Mp(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),Pd=0,Qd(),cd=e,ld=n=Ii(e.current,null),ud=t,dd=0,fd=null,pd=!1,md=ct(e,t),hd=!1,Sd=xd=bd=yd=vd=_d=0,wd=Cd=null,Td=!1,gd=lt(e,t),Ei(),n}function ef(e,t){Ko=null,I.H=yc,t===Qa||t===eo?(t=oo(),dd=3):t===$a?(t=oo(),dd=4):dd=t===Lc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,fd=t,ld===null&&(_d=1,jc(e,Wi(t,e.current)))}function tf(){var e=Po.current;return e===null?!0:(ud&4194048)===ud?Fo===null:(ud&62914560)===ud||ud&536870912?e===Fo:!1}function nf(){var e=I.H;return I.H=yc,e===null?yc:e}function rf(){var e=I.A;return I.A=ad,e}function af(){_d=4,pd||(ud&4194048)!==ud&&Po.current!==null||(md=!0),!(vd&134217727)&&!(yd&134217727)||cd===null||Xd(cd,ud,xd,!1)}function of(e,t,n){var r=sd;sd|=2;var i=nf(),a=rf();(cd!==e||ud!==t)&&(kd=null,$d(e,t)),t=!1;var o=_d;a:do try{if(dd!==0&&ld!==null){var s=ld,c=fd;switch(dd){case 8:Qd(),o=6;break a;case 3:case 2:case 9:case 6:Po.current===null&&(t=!0);var l=dd;if(dd=0,fd=null,ff(e,s,c,l),n&&md){o=0;break a}break;default:l=dd,dd=0,fd=null,ff(e,s,c,l)}}sf(),o=_d;break}catch(t){ef(e,t)}while(1);return t&&e.shellSuspendCounter++,ba=ya=null,sd=r,I.H=i,I.A=a,ld===null&&(cd=null,ud=0,Ei()),o}function sf(){for(;ld!==null;)uf(ld)}function cf(e,t){var n=sd;sd|=2;var r=nf(),a=rf();cd!==e||ud!==t?(kd=null,Od=He()+500,$d(e,t)):md=ct(e,t);a:do try{if(dd!==0&&ld!==null){t=ld;var o=fd;b:switch(dd){case 1:dd=0,fd=null,ff(e,t,o,1);break;case 2:case 9:if(no(o)){dd=0,fd=null,df(t);break}t=function(){dd!==2&&dd!==9||cd!==e||(dd=7),zf(e)},o.then(t,t);break a;case 3:dd=7;break a;case 4:dd=5;break a;case 7:no(o)?(dd=0,fd=null,df(t)):(dd=0,fd=null,ff(e,t,o,7));break;case 5:var s=null;switch(ld.tag){case 26:s=ld.memoizedState;case 5:case 27:var c=ld;if(s?lh(s):c.stateNode.complete){dd=0,fd=null;var l=c.sibling;if(l!==null)ld=l;else{var u=c.return;u===null?ld=null:(ld=u,pf(u))}break b}}dd=0,fd=null,ff(e,t,o,5);break;case 6:dd=0,fd=null,ff(e,t,o,6);break;case 8:Qd(),_d=6;break a;default:throw Error(i(462))}}lf();break}catch(t){ef(e,t)}while(1);return ba=ya=null,I.H=r,I.A=a,sd=n,ld===null?(cd=null,ud=0,Ei(),_d):0}function lf(){for(;ld!==null&&!Be();)uf(ld)}function uf(e){var t=_l(e.alternate,e,gd);e.memoizedProps=e.pendingProps,t===null?pf(e):ld=t}function df(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=Zc(n,t,t.pendingProps,t.type,void 0,ud);break;case 11:t=Zc(n,t,t.pendingProps,t.type.render,t.ref,ud);break;case 5:us(t);var r=t;r===aa&&(sa?(pa(r),r.tag===5&&r.stateNode!=null&&(oa=r.stateNode)):(pa(r),sa=!0));default:El(n,t),t=ld=Li(t,gd),t=_l(n,t,gd)}e.memoizedProps=e.pendingProps,t===null?pf(e):ld=t}function ff(e,t,n,r){ba=ya=null,us(t),co=null,lo=0;var i=t.return;try{if(Ic(e,i,t,n,ud)){_d=1,jc(e,Wi(n,e.current)),ld=null;return}}catch(t){if(i!==null)throw ld=i,t;_d=1,jc(e,Wi(n,e.current)),ld=null;return}t.flags&32768?(sa||r===1?e=!0:md||ud&536870912?e=!1:(pd=e=!0,(r===2||r===9||r===3||r===6)&&(r=Po.current,r!==null&&r.tag===13&&(r.flags|=16384))),mf(t,e)):pf(t)}function pf(e){var t=e;do{if(t.flags&32768){mf(t,pd);return}e=t.return;var n=wl(t.alternate,t,gd);if(n!==null){ld=n;return}if(t=t.sibling,t!==null){ld=t;return}ld=t=e}while(t!==null);_d===0&&(_d=5)}function mf(e,t){do{var n=Tl(e.alternate,e);if(n!==null){n.flags&=32767,ld=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){ld=e;return}ld=e=n}while(e!==null);_d=6,ld=null}function hf(e,t,n,r,a,o,s,c,l,u,d,f){e.cancelPendingCommit=null;do Cf();while(jd!==0);if(sd&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));e===cd&&(ld=cd=null,ud=0),Nd=t,Md=e,Pd=n,Id=a,Ld=r,gf(e,t,n,s,c,l,f)}}function gf(e,t,n,r,i,a,o){var s=t.lanes|t.childLanes;if(Fd=s,s|=Ti,mt(e,n,s,r,i,a),zd=null,(n&335544064)===n?(Bd=za(e),r=10262):(Bd=null,r=10256),(t.subtreeFlags&r)!==0||(t.flags&r)!==0?(e.callbackNode=null,e.callbackPriority=0,Mf(Ke,function(){return wf(),null})):(e.callbackNode=null,e.callbackPriority=0),Gl=!1,r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=I.T,I.T=null,i=he.p,he.p=2,a=sd,sd|=4;try{bu(e,t,n)}finally{sd=a,he.p=i,I.T=r}}jd=1,Gl?Rd=qp(o,e.containerInfo,Bd,yf,bf,vf,xf,wf,_f,null,null):(yf(),bf(),xf())}function _f(e){if(jd!==0){var t=Md.onRecoverableError;t(e,{componentStack:null})}}function vf(){jd===3&&(jd=0,Vu(Nd,Md),jd=4)}function yf(){if(jd===1){jd=0;var e=Md,t=Nd,n=Pd,r=!!(t.flags&13878);if(t.subtreeFlags&13878||r){r=I.T,I.T=null;var i=he.p;he.p=2;var a=sd;sd|=4;try{_u=vu=!1,Lu(t,e,n),n=Cp;var o=Yr(e.containerInfo),s=n.focusedElem,c=n.selectionRange;if(o!==s&&s&&s.ownerDocument&&Jr(s.ownerDocument.documentElement,s)){if(c!==null&&Xr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=qr(s,h),v=qr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}Ah=!!Sp,Cp=Sp=null}finally{sd=a,he.p=i,I.T=r}}e.current=t,jd=2}}function bf(){if(jd===2){jd=0;var e=Md,t=Nd,n=!!(t.flags&8772);if(t.subtreeFlags&8772||n){n=I.T,I.T=null;var r=he.p;he.p=2;var i=sd;sd|=4;try{Su(e,t.alternate,t)}finally{sd=i,he.p=r,I.T=n}}jd=3}}function xf(){if(jd===4||jd===3){jd=0;var e=Rd;Rd=null,Ve();var t=Md,n=Nd,r=Pd,i=Ld,a=(r&335544064)===r?10262:10256;if((n.subtreeFlags&a)!==0||(n.flags&a)!==0?jd=5:(jd=0,Nd=Md=null,Sf(t,t.pendingLanes)),a=t.pendingLanes,a===0&&(Ad=null),yt(r),n=n.stateNode,Ze&&typeof Ze.onCommitFiberRoot==`function`)try{Ze.onCommitFiberRoot(Xe,n,void 0,(n.current.flags&128)==128)}catch{}if(i!==null){n=I.T,a=he.p,he.p=2,I.T=null;try{for(var o=t.onRecoverableError,s=0;s<i.length;s++){var c=i[s];o(c.value,{componentStack:c.stack})}}finally{I.T=n,he.p=a}}if(i=zd,o=Bd,Bd=null,i!==null&&(zd=null,o===null&&(o=[]),e!==null))for(c=0;c<i.length;c++)n=(0,i[c])(o),n!==void 0&&e.finished.finally(n);Pd&3&&Cf(),zf(t),a=t.pendingLanes,r&261930&&a&42?t===Hd?Vd++:(Vd=0,Hd=t):(Vd=0,Hd=null),Bf(0,!1)}}function Sf(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Ia(t)))}function Cf(){return Rd!==null&&(Rd.skipTransition(),Rd=null),yf(),bf(),xf(),wf()}function wf(){if(jd!==5)return!1;var e=Md,t=Fd;Fd=0;var n=yt(Pd),r=I.T,a=he.p;try{he.p=32>n?32:n,I.T=null,n=Id,Id=null;var o=Md,s=Pd;if(jd=0,Nd=Md=null,Pd=0,sd&6)throw Error(i(331));var c=sd;if(sd|=4,nd(o.current),Ju(o,o.current,s,n),sd=c,Bf(0,!1),Ze&&typeof Ze.onPostCommitFiberRoot==`function`)try{Ze.onPostCommitFiberRoot(Xe,o)}catch{}return!0}finally{he.p=a,I.T=r,Sf(e,t)}}function Tf(e,t,n){t=Wi(n,t),t=Nc(e.stateNode,t,2),e=xo(e,t,2),e!==null&&(pt(e,2),zf(e))}function Ef(e,t,n){if(e.tag===3)Tf(e,e,n);else for(;t!==null;){if(t.tag===3){Tf(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(Ad===null||!Ad.has(r))){e=Wi(n,e),n=Pc(2),r=xo(t,n,2),r!==null&&(Fc(n,r,t,e),pt(r,2),zf(r));break}}t=t.return}}function Df(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new od;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(hd=!0,i.add(n),e=Of.bind(null,e,t,n),t.then(e,e))}function Of(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,cd===e&&(ud&n)===n&&(_d===4||_d===3&&(ud&62914560)===ud&&300>He()-Ed?sd&2?bd|=n:$d(e,0):bd|=n,Sd===ud&&(Sd=0)),zf(e)}function kf(e,t){t===0&&(t=dt()),e=ki(e,t),e!==null&&(pt(e,t),zf(e))}function Af(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),kf(e,n)}function jf(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),kf(e,n)}function Mf(e,t){return Re(e,t)}var Nf=null,Pf=null,Ff=!1,If=!1,Lf=!1,Rf=0;function zf(e){e!==Pf&&e.next===null&&(Pf===null?Nf=Pf=e:Pf=Pf.next=e),If=!0,Ff||(Ff=!0,Kf())}function Bf(e,t){if(!Lf&&If){Lf=!0;do for(var n=!1,r=Nf;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-$e(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Gf(r,a))}else a=ud,a=st(r,r===cd?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||ct(r,a)||(n=!0,Gf(r,a))}r=r.next}while(n);Lf=!1}}function Vf(){Hf()}function Hf(){If=Ff=!1;var e=0;Rf!==0&&Ap()&&(e=Rf);for(var t=He(),n=null,r=Nf;r!==null;){var i=r.next,a=Uf(r,t);a===0?(r.next=null,n===null?Nf=i:n.next=i,i===null&&(Pf=n)):(n=r,(e!==0||a&3)&&(If=!0)),r=i}jd!==0&&jd!==5||Bf(e,!1),Rf!==0&&(Rf=0)}function Uf(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-$e(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=ut(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=cd,n=ud,n=st(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(dd===2||dd===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&ze(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||ct(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&ze(r),yt(n)){case 2:case 8:n=Ge;break;case 32:n=Ke;break;case 268435456:n=Je;break;default:n=Ke}return r=Wf.bind(null,e),n=Re(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&ze(r),e.callbackPriority=2,e.callbackNode=null,2}function Wf(e,t){if(jd!==0&&jd!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Cf()&&e.callbackNode!==n)return null;var r=ud;return r=st(e,e===cd?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(qd(e,r,t),Uf(e,He()),e.callbackNode!=null&&e.callbackNode===n?Wf.bind(null,e):null)}function Gf(e,t){if(Cf())return null;qd(e,t,!0)}function Kf(){Fp(function(){sd&6?Re(We,Vf):Hf()})}function qf(){if(Rf===0){var e=Ha;e===0&&(e=rt,rt<<=1,!(rt&261888)&&(rt=256)),Rf=e}return Rf}function Jf(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:yn(e)}function Yf(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=Jf((i[wt]||null).action),o=r.submitter;o&&(t=(t=o[wt]||null)?Jf(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new Vn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(Rf!==0){var e=new FormData(i,o);ac(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=new FormData(i,o),ac(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var Xf=0;Xf<gi.length;Xf++){var Zf=gi[Xf];_i(Zf.toLowerCase(),`on`+(Zf[0].toUpperCase()+Zf.slice(1)))}_i(ci,`onAnimationEnd`),_i(li,`onAnimationIteration`),_i(ui,`onAnimationStart`),_i(`dblclick`,`onDoubleClick`),_i(`focusin`,`onFocus`),_i(`focusout`,`onBlur`),_i(di,`onTransitionRun`),_i(fi,`onTransitionStart`),_i(pi,`onTransitionCancel`),_i(mi,`onTransitionEnd`),Ht(`onMouseEnter`,[`mouseout`,`mouseover`]),Ht(`onMouseLeave`,[`mouseout`,`mouseover`]),Ht(`onPointerEnter`,[`pointerout`,`pointerover`]),Ht(`onPointerLeave`,[`pointerout`,`pointerover`]),Vt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),Vt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),Vt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),Vt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),Vt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),Vt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var Qf=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),$f=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(Qf));function ep(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Si(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Si(e)}i.currentTarget=null,a=c}}}}function tp(e,t){var n=t[Et];n===void 0&&(n=t[Et]=new Set);var r=e+`__bubble`;n.has(r)||(ap(t,e,2,!1),n.add(r))}function np(e,t,n){var r=0;t&&(r|=4),ap(n,e,r,t)}var rp=`_reactListening`+Math.random().toString(36).slice(2);function ip(e){if(!e[rp]){e[rp]=!0,zt.forEach(function(t){t!==`selectionchange`&&($f.has(t)||np(t,!1,e),np(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[rp]||(t[rp]=!0,np(`selectionchange`,!1,t))}}function ap(e,t,n,r){switch(Lh(t)){case 2:var i=jh;break;case 8:i=Mh;break;default:i=Nh}n=i.bind(null,t,n,e),i=void 0,!An||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function op(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=Nt(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}Dn(function(){var r=a,i=Sn(n),s=[];a:{var c=hi.get(e);if(c!==void 0){var l=Vn,u=e;switch(e){case`keypress`:if(In(n)===0)break a;case`keydown`:case`keyup`:l=ar;break;case`focusin`:u=`focus`,l=Xn;break;case`focusout`:u=`blur`,l=Xn;break;case`beforeblur`:case`afterblur`:l=Xn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=Jn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=Yn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=cr;break;case ci:case li:case ui:l=Zn;break;case mi:l=lr;break;case`scroll`:case`scrollend`:l=Un;break;case`wheel`:l=ur;break;case`copy`:case`cut`:case`paste`:l=Qn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=or;break;case`submit`:l=sr;break;case`toggle`:case`beforetoggle`:l=dr}var d=!!(t&4),f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=On(m,p),g!=null&&d.push(sp(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(l=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,l&&n!==xn&&(u=n.relatedTarget||n.fromElement)&&(Nt(u)||u[Tt]))break a;(c||l)&&(u=i.window===i?i:(l=i.ownerDocument)?l.defaultView||l.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?Nt(l):null,l!==null&&(f=o(l),d=l.tag,l!==f||d!==5&&d!==27&&d!==6)&&(l=null)):(c=null,l=r),c!==l&&(d=Jn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=or,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=c==null?u:Ft(c),h=l==null?u:Ft(l),u=new d(g,m+`leave`,c,n,i),u.target=f,u.relatedTarget=h,g=null,Nt(i)===r&&(d=new d(p,m+`enter`,l,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,d=c&&l?E(c,l,lp):null,c!==null&&up(s,u,c,d,!1),l!==null&&f!==null&&up(s,f,l,d,!0)))}a:{if(c=r?Ft(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var _=jr;else if(Tr(c)){if(Mr)_=Vr;else{_=zr;var v=Rr}}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&gn(r.elementType)&&(_=jr):_=Br;if(_&&=_(e,r)){Er(s,_,n,i);break a}v&&v(e,c,r)}switch(v=r?Ft(r):window,e){case`focusin`:(Tr(v)||v.contentEditable===`true`)&&(Qr=v,$r=r,ei=null);break;case`focusout`:ei=$r=Qr=null;break;case`mousedown`:ti=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:ti=!1,ni(s,n,i);break;case`selectionchange`:if(Zr)break;case`keydown`:case`keyup`:ni(s,n,i)}var y;if(pr)b:{switch(e){case`compositionstart`:var b=`onCompositionStart`;break b;case`compositionend`:b=`onCompositionEnd`;break b;case`compositionupdate`:b=`onCompositionUpdate`;break b}b=void 0}else xr?yr(e,n)&&(b=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(b=`onCompositionStart`);b&&(gr&&n.locale!==`ko`&&(xr||b!==`onCompositionStart`?b===`onCompositionEnd`&&xr&&(y=Fn()):(Mn=i,Nn=`value`in Mn?Mn.value:Mn.textContent,xr=!0)),v=cp(r,b),0<v.length&&(b=new $n(b,e,null,n,i),s.push({event:b,listeners:v}),y?b.data=y:(y=br(n),y!==null&&(b.data=y)))),(y=hr?Sr(e,n):Cr(e,n))&&(b=cp(r,`onBeforeInput`),0<b.length&&(v=new $n(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:v,listeners:b}),v.data=y)),Yf(s,e,r,n,i)}ep(s,t)})}function sp(e,t,n){return{instance:e,listener:t,currentTarget:n}}function cp(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=On(e,n),i!=null&&r.unshift(sp(e,i,a)),i=On(e,t),i!=null&&r.push(sp(e,i,a))),e.tag===3)return r;e=e.return}return[]}function lp(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function up(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=On(n,a),l!=null&&o.unshift(sp(n,l,c))):i||(l=On(n,a),l!=null&&o.push(sp(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var dp=/\r\n?/g,fp=/\u0000|\uFFFD/g;function pp(e){return(typeof e==`string`?e:``+e).replace(dp,`
|
|
9
|
+
`).replace(fp,``)}function mp(e,t){return t=pp(t),pp(e)===t}function hp(e,t,n,r,a,o){switch(n){case`children`:if(typeof r==`string`)t===`body`||t===`textarea`&&r===``||fn(e,r);else if(typeof r==`number`||typeof r==`bigint`)t!==`body`&&fn(e,``+r);else return;break;case`className`:Xt(e,`class`,r);break;case`tabIndex`:Xt(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Xt(e,n,r);break;case`style`:hn(e,r,o);return;case`data`:if(t!==`object`){Xt(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)||r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=yn(r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}if(typeof o==`function`&&(n===`formAction`?(t!==`input`&&hp(e,t,`name`,a.name,a,null),hp(e,t,`formEncType`,a.formEncType,a,null),hp(e,t,`formMethod`,a.formMethod,a,null),hp(e,t,`formTarget`,a.formTarget,a,null)):(hp(e,t,`encType`,a.encType,a,null),hp(e,t,`method`,a.method,a,null),hp(e,t,`target`,a.target,a,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=yn(r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=bn);return;case`onScroll`:r!=null&&tp(`scroll`,e);return;case`onScrollEnd`:r!=null&&tp(`scrollend`,e);return;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));o?.__html!==n&&(e.innerHTML=n)}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=yn(r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`credentialless`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:tp(`beforetoggle`,e),tp(`toggle`,e),Yt(e,`popover`,r);break;case`xlinkActuate`:Zt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Zt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Zt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Zt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Zt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Zt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Zt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Zt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Zt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:Yt(e,`is`,r);break;case`innerText`:case`textContent`:return;default:if(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)n=_n.get(n)||n,Yt(e,n,r);else return}qt=!0}function gp(e,t,n,r,a,o){switch(n){case`style`:hn(e,r,o);return;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));o?.__html!==n&&(e.innerHTML=n)}}break;case`children`:if(typeof r==`string`)fn(e,r);else if(typeof r==`number`||typeof r==`bigint`)fn(e,``+r);else return;break;case`onScroll`:r!=null&&tp(`scroll`,e);return;case`onScrollEnd`:r!=null&&tp(`scrollend`,e);return;case`onClick`:r!=null&&(e.onclick=bn);return;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:return;case`innerText`:case`textContent`:return;default:if(!Bt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),o=n.slice(2,a?n.length-7:void 0),t=e[wt]||null,t=t==null?null:t[n],typeof t==`function`&&e.removeEventListener(o,t,a),typeof r==`function`)){typeof t!=`function`&&t!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(o,r,a);break a}qt=!0,n in e?e[n]=r:!0===r?e.setAttribute(n,``):Yt(e,n,r)}return}qt=!0}function _p(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:tp(`error`,e),tp(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:hp(e,t,o,s,n,null)}}a&&hp(e,t,`srcSet`,n.srcSet,n,null),r&&hp(e,t,`src`,n.src,n,null);return;case`input`:tp(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:hp(e,t,r,d,n,null)}}sn(e,o,c,l,u,s,a,!1);return;case`select`:for(a in tp(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:hp(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&ln(e,!!r,n,!0):ln(e,!!r,t,!1);return;case`textarea`:for(s in tp(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:hp(e,t,s,c,n,null)}dn(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:hp(e,t,l,r,n,null)}return;case`dialog`:tp(`beforetoggle`,e),tp(`toggle`,e),tp(`cancel`,e),tp(`close`,e);break;case`iframe`:case`object`:tp(`load`,e);break;case`video`:case`audio`:for(r=0;r<Qf.length;r++)tp(Qf[r],e);break;case`image`:tp(`error`,e),tp(`load`,e);break;case`details`:tp(`toggle`,e);break;case`embed`:case`source`:case`link`:tp(`error`,e),tp(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:hp(e,t,u,r,n,null)}return;default:if(gn(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&gp(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&hp(e,t,c,r,n,null))}var vp={};function yp(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||hp(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:m!==f&&(qt=!0),o=m;break;case`name`:m!==f&&(qt=!0),a=m;break;case`checked`:m!==f&&(qt=!0),u=m;break;case`defaultChecked`:m!==f&&(qt=!0),d=m;break;case`value`:m!==f&&(qt=!0),s=m;break;case`defaultValue`:m!==f&&(qt=!0),c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&hp(e,t,p,m,r,f)}}on(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||hp(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:o!==l&&(qt=!0),p=o;break;case`defaultValue`:o!==l&&(qt=!0),c=o;break;case`multiple`:o!==l&&(qt=!0),s=o;default:o!==l&&hp(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?ln(e,!!n,n?[]:``,!1):ln(e,!!n,t,!0)):ln(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:hp(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:a!==o&&(qt=!0),p=a;break;case`defaultValue`:a!==o&&(qt=!0),m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&hp(e,t,s,a,r,o)}un(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:hp(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:p!==m&&(qt=!0),e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:hp(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&hp(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:hp(e,t,u,p,r,m)}return;default:if(gn(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&gp(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||gp(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&hp(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||hp(e,t,f,p,r,m)}function bp(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function xp(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&bp(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&bp(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Sp=null,Cp=null;function wp(e){return e.nodeType===9?e:e.ownerDocument}function Tp(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Ep(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Dp(e,t,n,r){return n=wp(n).createElement(e),n[Ct]=r,n[wt]=t,_p(n,e,t),Lt(n),n}function Op(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var kp=null;function Ap(){var e=window.event;return e&&e.type===`popstate`?e!==kp&&(kp=e,!0):(kp=null,!1)}var jp=typeof setTimeout==`function`?setTimeout:void 0,Mp=typeof clearTimeout==`function`?clearTimeout:void 0,Np=typeof Promise==`function`?Promise:void 0,Pp=typeof requestAnimationFrame==`function`?requestAnimationFrame:jp,Fp=typeof queueMicrotask==`function`?queueMicrotask:Np===void 0?jp:function(e){return Np.resolve(null).then(e).catch(Ip)};function Ip(e){setTimeout(function(){throw e})}function Lp(e){return e===`head`}function Rp(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8){if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),tg(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)jm(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,jm(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[At]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&jm(e.ownerDocument.body)}n=i}while(n);tg(t)}function zp(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8){if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++}n=r}while(n)}function Bp(e,t,n){if(t=CSS.escape(t)===t?t:`r-`+btoa(t).replace(/=/g,``),e.style.viewTransitionName=t,n!=null&&(e.style.viewTransitionClass=n),n=getComputedStyle(e),n.display===`inline`){if(t=e.getClientRects(),t.length===1)var r=1;else for(var i=r=0;i<t.length;i++){var a=t[i];0<a.width&&0<a.height&&r++}r===1&&(e=e.style,e.display=t.length===1?`inline-block`:`block`,e.marginTop=`-`+n.paddingTop,e.marginBottom=`-`+n.paddingBottom)}}function Vp(e,t){e=e.style,t=t.style;var n=t==null?null:t.hasOwnProperty(`viewTransitionName`)?t.viewTransitionName:t.hasOwnProperty(`view-transition-name`)?t[`view-transition-name`]:null;e.viewTransitionName=n==null||typeof n==`boolean`?``:(``+n).trim(),n=t==null?null:t.hasOwnProperty(`viewTransitionClass`)?t.viewTransitionClass:t.hasOwnProperty(`view-transition-class`)?t[`view-transition-class`]:null,e.viewTransitionClass=n==null||typeof n==`boolean`?``:(``+n).trim(),e.display===`inline-block`&&(t==null?e.display=e.margin=``:(n=t.display,e.display=n==null||typeof n==`boolean`?``:n,n=t.margin,n==null?(n=t.hasOwnProperty(`marginTop`)?t.marginTop:t[`margin-top`],e.marginTop=n==null||typeof n==`boolean`?``:n,t=t.hasOwnProperty(`marginBottom`)?t.marginBottom:t[`margin-bottom`],e.marginBottom=t==null||typeof t==`boolean`?``:t):e.margin=n))}function Hp(e,t,n){return n=n.ownerDocument.defaultView,{rect:e,abs:t.position===`absolute`||t.position===`fixed`,clip:t.clipPath!==`none`||t.overflow!==`visible`||t.filter!==`none`||t.mask!==`none`||t.mask!==`none`||t.borderRadius!==`0px`,view:0<=e.bottom&&0<=e.right&&e.top<=n.innerHeight&&e.left<=n.innerWidth}}function Up(e){return Hp(e.getBoundingClientRect(),getComputedStyle(e),e)}function Wp(e){var t=e.getBoundingClientRect();t=new DOMRect(t.x+2e4,t.y+2e4,t.width,t.height);var n=getComputedStyle(e);return Hp(t,n,e)}function Gp(e){return e.documentElement.clientHeight}function Kp(e){this.addEventListener(`load`,e),this.addEventListener(`error`,e)}function qp(e,t,n,r,i,a,o,s,c){var l=t.nodeType===9?t:t.ownerDocument;try{var u=l.startViewTransition({update:function(){var t=l.defaultView,n=t.navigation&&t.navigation.transition,o=l.fonts.status;r();var s=[];if(o===`loaded`&&(Gp(l),l.fonts.status===`loading`&&s.push(l.fonts.ready)),o=s.length,e!==null)for(var c=e.suspenseyImages,u=0,d=0;d<c.length;d++){var f=c[d];if(!f.complete){var p=f.getBoundingClientRect();if(0<p.bottom&&0<p.right&&p.top<t.innerHeight&&p.left<t.innerWidth){if(u+=uh(f),u>ph){s.length=o;break}f=new Promise(Kp.bind(f)),s.push(f)}}}if(0<s.length)return t=Promise.race([Promise.all(s),new Promise(function(e){return setTimeout(e,500)})]).then(i,i),(n?Promise.allSettled([n.finished,t]):t).then(a,a);if(i(),n)return n.finished.then(a,a);a()},types:n});l.__reactViewTransition=u;var d=[];return u.ready.then(function(){for(var e=l.documentElement.getAnimations({subtree:!0}),t=0;t<e.length;t++){var n=e[t],r=n.effect,i=r.pseudoElement;if(i!=null&&i.startsWith(`::view-transition`)){d.push(n),n=r.getKeyframes();for(var a=i=void 0,s=!0,c=0;c<n.length;c++){var u=n[c],f=u.width;if(i===void 0)i=f;else if(i!==f){s=!1;break}if(f=u.height,a===void 0)a=f;else if(a!==f){s=!1;break}delete u.width,delete u.height,u.transform===`none`&&delete u.transform}s&&i!==void 0&&a!==void 0&&(r.setKeyframes(n),s=getComputedStyle(r.target,r.pseudoElement),s.width!==i||s.height!==a)&&(s=n[0],s.width=i,s.height=a,s=n[n.length-1],s.width=i,s.height=a,r.setKeyframes(n))}}o()},function(e){l.__reactViewTransition===u&&(l.__reactViewTransition=null);try{if(typeof e==`object`&&e)switch(e.name){case`InvalidStateError`:(e.message===`View transition was skipped because document visibility state is hidden.`||e.message===`Skipping view transition because document visibility state has become hidden.`||e.message===`Skipping view transition because viewport size changed.`||e.message===`Transition was aborted because of invalid state`)&&(e=null)}e!==null&&c(e)}finally{r(),i(),o()}}),u.finished.finally(function(){for(var e=0;e<d.length;e++)d[e].cancel();l.__reactViewTransition===u&&(l.__reactViewTransition=null),s()}),u}catch{return r(),i(),o(),null}}function Jp(e,t){this._scope=document.documentElement,this._selector=`::view-transition-`+e+`(`+t+`)`}Jp.prototype.animate=function(e,t){return t=typeof t==`number`?{duration:t}:D({},t),t.pseudoElement=this._selector,this._scope.animate(e,t)},Jp.prototype.getAnimations=function(){for(var e=this._scope,t=this._selector,n=e.getAnimations({subtree:!0}),r=[],i=0;i<n.length;i++){var a=n[i].effect;a!==null&&a.target===e&&a.pseudoElement===t&&r.push(n[i])}return r},Jp.prototype.getComputedStyle=function(){return getComputedStyle(this._scope,this._selector)};function Yp(e){return{name:e,group:new Jp(`group`,e),imagePair:new Jp(`image-pair`,e),old:new Jp(`old`,e),new:new Jp(`new`,e)}}function Xp(e){this._fragmentFiber=e,this._observers=this._eventListeners=null}Xp.prototype.addEventListener=function(e,t,n){var r=null,i=null;if(!(n!=null&&typeof n!=`boolean`&&(r=n.signal||null,r!==null&&r.aborted))){this._eventListeners===null&&(this._eventListeners=[]);var a=this._eventListeners;if(tm(a,e,t,n)===-1){var o=this,s=t;n!=null&&typeof n!=`boolean`&&!0===n.once&&(s=function(r){o.removeEventListener(e,t,n),typeof t==`function`?t.call(this,r):t.handleEvent(r)}),r!==null&&(i=o.removeEventListener.bind(o,e,t,n),r.addEventListener(`abort`,i,{once:!0}),i=r.removeEventListener.bind(r,`abort`,i)),r=$p(n),a.push({type:e,listener:t,optionsOrUseCapture:n,attachedListener:s,cleanup:i}),m(this._fragmentFiber.child,!1,Zp,e,s,r)}this._eventListeners=a}};function Zp(e,t,n,r){return b(e).addEventListener(t,n,r),!1}Xp.prototype.removeEventListener=function(e,t,n){var r=this._eventListeners;if(r!==null&&(t=tm(r,e,t,n),t!==-1)){var i=r[t];n=i.attachedListener;var a=i.cleanup;i=$p(i.optionsOrUseCapture),m(this._fragmentFiber.child,!1,Qp,e,n,i),r.splice(t,1),a!==null&&a()}};function Qp(e,t,n,r){return b(e).removeEventListener(t,n,r),!1}function $p(e){return e!=null&&typeof e!=`boolean`&&(!0===e.once||e.signal instanceof AbortSignal)?{capture:e.capture,passive:e.passive}:e}function em(e){return e==null?`c=0`:typeof e==`boolean`?`c=`+(e?`1`:`0`):`c=`+(e.capture?`1`:`0`)}function tm(e,t,n,r){if(e.length===0)return-1;r=em(r);for(var i=0;i<e.length;i++){var a=e[i];if(a.type===t&&a.listener===n&&em(a.optionsOrUseCapture)===r)return i}return-1}Xp.prototype.dispatchEvent=function(e){var t=g(this._fragmentFiber);if(t===null)return!0;t=b(t);var n=this._eventListeners;if(n!==null&&0<n.length||!e.bubbles){var r=t.nodeType===9?t.createComment(``):document.createTextNode(``);if(n)for(var i=0;i<n.length;i++){var a=n[i];r.addEventListener(a.type,a.attachedListener,$p(a.optionsOrUseCapture))}if(t.appendChild(r),e=r.dispatchEvent(e),n)for(i=0;i<n.length;i++)a=n[i],r.removeEventListener(a.type,a.attachedListener,$p(a.optionsOrUseCapture));return t.removeChild(r),e}return t.dispatchEvent(e)},Xp.prototype.focus=function(e){m(this._fragmentFiber.child,!0,nm,e,void 0,void 0)};function nm(e,t){return e.tag!==6&&(e=b(e),Om(e,t))}Xp.prototype.focusLast=function(e){var t=[];m(this._fragmentFiber.child,!0,rm,t,void 0,void 0);for(var n=t.length-1;0<=n&&!nm(t[n],e);n--);};function rm(e,t){return t.push(e),!1}Xp.prototype.blur=function(){var e=g(this._fragmentFiber);e!==null&&(e=b(e),e=wp(e).activeElement,e!==null&&m(this._fragmentFiber.child,!1,im,e,void 0,void 0))};function im(e,t){return e.tag!==6&&(e=b(e),e===t||e.contains(t)?(t.blur(),!0):!1)}Xp.prototype.observeUsing=function(e){this._observers===null&&(this._observers=new Set),this._observers.add(e),m(this._fragmentFiber.child,!1,am,e,void 0,void 0)};function am(e,t){return e.tag===6||(e=b(e),t.observe(e)),!1}Xp.prototype.unobserveUsing=function(e){var t=this._observers;if(t!==null&&t.has(e)){t.delete(e),m(this._fragmentFiber.child,!1,om,e,void 0,void 0);for(var n=t=0;n<sm.length;n++){var r=sm[n];r.fragmentInstance===this&&r.observer===e?e.unobserve(r.instance):sm[t++]=r}sm.length=t}};function om(e,t){return e.tag===6||(e=b(e),t.unobserve(e)),!1}var sm=[],cm=!1;function lm(e,t,n){sm.push({fragmentInstance:e,observer:t,instance:n}),cm||(cm=!0,z(function(){cm=!1;var e=sm;sm=[];for(var t=0;t<e.length;t++){var n=e[t];n.observer.unobserve(n.instance)}}))}Xp.prototype.getClientRects=function(){var e=[];return m(this._fragmentFiber.child,!1,um,e,void 0,void 0),e};function um(e,t){if(e.tag===6){e=e.stateNode;var n=e.ownerDocument.createRange();n.selectNodeContents(e),t.push.apply(t,n.getClientRects())}else e=b(e),t.push.apply(t,e.getClientRects());return!1}Xp.prototype.getRootNode=function(e){var t=g(this._fragmentFiber);return t===null?this:b(t).getRootNode(e)},Xp.prototype.compareDocumentPosition=function(e){var t=g(this._fragmentFiber);if(t===null)return Node.DOCUMENT_POSITION_DISCONNECTED;var n=[];m(this._fragmentFiber.child,!1,rm,n,void 0,void 0);var r=b(t);if(n.length===0){if(n=r,_(this._fragmentFiber)){a:{for(t=this._fragmentFiber.return;t!==null;){if(t.tag===4){t=t.stateNode.containerInfo;break a}if(t.tag===3||t.tag===5||t.tag===27)break;t=t.return}t=null}t!=null&&(n=t)}t=this._fragmentFiber;var i=r=n.compareDocumentPosition(e);return n===e?i=Node.DOCUMENT_POSITION_CONTAINS:r&Node.DOCUMENT_POSITION_CONTAINED_BY&&(n=v(t)[1],n===null?i=Node.DOCUMENT_POSITION_PRECEDING:(e=b(n).compareDocumentPosition(e),i=e===0||e&Node.DOCUMENT_POSITION_FOLLOWING?Node.DOCUMENT_POSITION_FOLLOWING:Node.DOCUMENT_POSITION_PRECEDING)),i|=Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC}t=b(n[0]),i=b(n[n.length-1]);var a=_(this._fragmentFiber)?t.parentElement:r;if(a==null)return Node.DOCUMENT_POSITION_DISCONNECTED;r=a.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY,a=a.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_CONTAINED_BY;var o=t.compareDocumentPosition(e),s=i.compareDocumentPosition(e),c=o&Node.DOCUMENT_POSITION_CONTAINED_BY||s&Node.DOCUMENT_POSITION_CONTAINED_BY;return s=r&&a&&o&Node.DOCUMENT_POSITION_FOLLOWING&&s&Node.DOCUMENT_POSITION_PRECEDING,t=r&&t===e||a&&i===e||c||s?Node.DOCUMENT_POSITION_CONTAINED_BY:!r&&t===e||!a&&i===e?Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:o,t&Node.DOCUMENT_POSITION_DISCONNECTED||t&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC||dm(t,this._fragmentFiber,n[0],n[n.length-1],e)?t:Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC};function dm(e,t,n,r,i){var a=Nt(i);if(e&Node.DOCUMENT_POSITION_CONTAINED_BY){if(n=!!a)a:{for(;a!==null;){if(a.tag===7&&(a===t||a.alternate===t)){n=!0;break a}a=a.return}n=!1}return n}if(e&Node.DOCUMENT_POSITION_CONTAINS){if(a===null)return a=i.ownerDocument,i===a||i===a.documentElement||i===a.body;a:{for(a=t,t=g(t);a!==null;){if(!(a.tag!==5&&a.tag!==3&&a.tag!==27||a!==t&&a.alternate!==t)){a=!0;break a}a=a.return}a=!1}return a}return e&Node.DOCUMENT_POSITION_PRECEDING?((t=!!a)&&!(t=a===n)&&(t=E(n,a,T),t===null?t=!1:(m(t,!0,C,a,n),a=x,x=null,t=a!==null)),t):e&Node.DOCUMENT_POSITION_FOLLOWING?((t=!!a)&&!(t=a===r)&&(t=E(r,a,T),t===null?t=!1:(m(t,!0,w,a,r),a=x,S=x=null,t=a!==null)),t):!1}function fm(e,t){var n=e.ownerDocument.createRange();n.selectNodeContents(e),e=n.getBoundingClientRect(),window.scrollTo(window.scrollX+e.left,t?window.scrollY+e.top:window.scrollY+e.bottom-window.innerHeight)}Xp.prototype.scrollIntoView=function(e){if(typeof e==`object`)throw Error(i(566));var t=[];m(this._fragmentFiber.child,!1,rm,t,void 0,void 0);var n=!1!==e;if(t.length===0){var r=v(this._fragmentFiber);if(r=n?r[1]||r[0]||g(this._fragmentFiber):r[0]||r[1],r===null)return;if(r.tag===6){e=b(r),fm(e,n);return}if(r=b(r),r.nodeType!==9){if(r.nodeType===11){n=`host`in r?r.host:null,n!==null&&n.scrollIntoView(e);return}r.scrollIntoView(e)}}for(r=n?t.length-1:0;r!==(n?-1:t.length);){var a=t[r];a.tag===6?(a=b(a),fm(a,n)):b(a).scrollIntoView(e),r+=n?-1:1}};function pm(e,t){return e=b(e),mm(e,t),!1}function mm(e,t){e.reactFragments??=new Set,e.reactFragments.add(t)}function hm(e,t){var n=t._eventListeners;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];e.addEventListener(i.type,i.attachedListener,$p(i.optionsOrUseCapture))}e.nodeType!==3&&(n=t._observers,n!==null&&n.forEach(function(n){for(var r=0,i=0;i<sm.length;i++){var a=sm[i];(a.fragmentInstance!==t||a.observer!==n||a.instance!==e)&&(sm[r++]=a)}sm.length=r,n.observe(e)}),mm(e,t))}function gm(e,t){var n=t._eventListeners;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];e.removeEventListener(i.type,i.attachedListener,$p(i.optionsOrUseCapture))}e.nodeType!==3&&(n=t._observers,n!==null&&n.forEach(function(n){typeof n.rootMargin==`string`?lm(t,n,e):n.unobserve(e)}),e.reactFragments!=null&&e.reactFragments.delete(t))}function _m(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:_m(n),Mt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function vm(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r){if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e}else if(!e[At])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=wm(e.nextSibling),e===null)break}return null}function ym(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=wm(e.nextSibling),e===null))return null;return e}function bm(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=wm(e.nextSibling),e===null))return null;return e}function xm(e){return e.data===`$?`||e.data===`$~`}function Sm(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function Cm(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function wm(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var Tm=null;function Em(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return wm(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function Dm(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function Om(e,t){function n(){r=!0}if(e.ownerDocument.activeElement===e)return!0;var r=!1;try{e.ownerDocument.addEventListener(`focus`,n,!0),(e.focus||HTMLElement.prototype.focus).call(e,t)}finally{e.ownerDocument.removeEventListener(`focus`,n,!0)}return r}function z(e){Pp(function(){Pp(function(t){return e(t)})})}function km(e,t,n){switch(t=wp(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function Am(e,t,n){for(var r in n){var i=n[r];n.hasOwnProperty(r)&&i!=null&&hp(e,t,r,null,vp,i)}n.dangerouslySetInnerHTML!=null&&(e.textContent=``),e.onclick===bn&&(e.onclick=null),Mt(e)}function jm(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Mt(e)}var Mm=new Map,Nm=new Set;function Pm(e){if(typeof e.getRootNode==`function`){var t=e.getRootNode();if(t.nodeType===9||t.nodeType===11)return t}return e.nodeType===9?e:e.ownerDocument}var Fm=he.d;he.d={f:Im,r:Lm,D:Bm,C:Vm,L:Hm,m:Um,X:Gm,S:Wm,M:Km};function Im(){var e=Fm.f(),t=Zd();return e||t}function Lm(e){var t=Pt(e);t!==null&&t.tag===5&&t.type===`form`?sc(t):Fm.r(e)}var Rm=typeof document>`u`?null:document;function zm(e,t,n){var r=Rm;if(r&&typeof t==`string`&&t){var i=an(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),Nm.has(i)||(Nm.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),_p(t,`link`,e),Lt(t),r.head.appendChild(t)))}}function Bm(e){Fm.D(e),zm(`dns-prefetch`,e,null)}function Vm(e,t){Fm.C(e,t),zm(`preconnect`,e,t)}function Hm(e,t,n){Fm.L(e,t,n);var r=Rm;if(r&&e&&t){var i=`link[rel="preload"][as="`+an(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+an(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+an(n.imageSizes)+`"]`)):i+=`[href="`+an(e)+`"]`;var a=i;switch(t){case`style`:a=Jm(e);break;case`script`:a=Qm(e)}if(!(Mm.has(a)||(e=D({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),Mm.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Ym(a))||t===`script`&&r.querySelector($m(a))))){var o=r.createElement(`link`);_p(o,`link`,e),t===`style`&&(o[jt]=!0,o.onload=o.onerror=function(){Rt(o)}),Lt(o),r.head.appendChild(o)}}}function Um(e,t){Fm.m(e,t);var n=Rm;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+an(r)+`"][href="`+an(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Qm(e)}if(!Mm.has(a)&&(e=D({rel:`modulepreload`,href:e},t),Mm.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector($m(a)))return}r=n.createElement(`link`),_p(r,`link`,e),Lt(r),n.head.appendChild(r)}}}function Wm(e,t,n){Fm.S(e,t,n);var r=Rm;if(r&&e){var i=It(r).hoistableStyles,a=Jm(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Ym(a)))s.loading=5;else{e=D({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=Mm.get(a))&&nh(e,n);var c=o=r.createElement(`link`);Lt(c),_p(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,th(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Gm(e,t){Fm.X(e,t);var n=Rm;if(n&&e){var r=It(n).hoistableScripts,i=Qm(e),a=r.get(i);a||(a=n.querySelector($m(i)),a||(e=D({src:e,async:!0},t),(t=Mm.get(i))&&rh(e,t),a=n.createElement(`script`),Lt(a),_p(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Km(e,t){Fm.M(e,t);var n=Rm;if(n&&e){var r=It(n).hoistableScripts,i=Qm(e),a=r.get(i);a||(a=n.querySelector($m(i)),a||(e=D({src:e,async:!0,type:`module`},t),(t=Mm.get(i))&&rh(e,t),a=n.createElement(`script`),Lt(a),_p(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function qm(e,t,n,r){var a=(a=we.current)?Pm(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=Jm(n.href),t=It(a).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Jm(n.href);var o=It(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Ym(e)))?o._p||(s.instance=o,s.state.loading=5):(o=Mm.get(e),o||(o={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Mm.set(e,o)),Zm(a,e,o,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=Qm(n),t=It(a).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Jm(e){return`href="`+an(e)+`"`}function Ym(e){return`link[rel="stylesheet"][`+e+`]`}function Xm(e){return D({},e,{"data-precedence":e.precedence,precedence:null})}function Zm(e,t,n,r){if(t=e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)){if(!0!==t[jt]){r.loading=1;return}}else t=e.createElement(`link`),t[jt]=!0,t.onload=t.onerror=Rt.bind(null,t),_p(t,`link`,n),Lt(t),e.head.appendChild(t);r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2})}function Qm(e){return`[src="`+an(e)+`"]`}function $m(e){return`script[async]`+e}function eh(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+an(n.href)+`"]`);if(r)return t.instance=r,Lt(r),r;var a=D({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),Lt(r),_p(r,`style`,a),th(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Jm(n.href);var o=e.querySelector(Ym(a));if(o)return t.state.loading|=4,t.instance=o,Lt(o),o;r=Xm(n),(a=Mm.get(a))&&nh(r,a),o=(e.ownerDocument||e).createElement(`link`),Lt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),_p(o,`link`,r),t.state.loading|=4,th(o,n.precedence,e),t.instance=o;case`script`:return o=Qm(n.src),(a=e.querySelector($m(o)))?(t.instance=a,Lt(a),a):(r=n,(a=Mm.get(o))&&(r=D({},n),rh(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),Lt(a),_p(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,th(r,n.precedence,e));return t.instance}function th(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function nh(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function rh(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var ih=null;function ah(e,t,n){if(ih===null){var r=new Map,i=ih=new Map;i.set(n,r)}else i=ih,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[At]||a[Ct]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function oh(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function sh(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function ch(e,t){return e===`img`&&t.src!=null&&t.src!==``&&t.onLoad==null&&t.loading!==`lazy`}function lh(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function uh(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio==`number`?devicePixelRatio:1)*.25}function dh(e,t){typeof t.decode==`function`&&(e.imgCount++,t.complete||(e.imgBytes+=uh(t),e.suspenseyImages.push(t)),e=_h.bind(e),t.decode().then(e,e))}function fh(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Jm(r.href),a=t.querySelector(Ym(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=gh.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,Lt(a);return}a=t.ownerDocument||t,r=Xm(r),(i=Mm.get(i))&&nh(r,i),a=a.createElement(`link`),Lt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),_p(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=gh.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var ph=0;function mh(e,t){return e.stylesheets&&e.count===0&&yh(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&yh(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&ph===0&&(ph=62500*xp());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&yh(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>ph?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function hh(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)yh(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function gh(){this.count--,hh(this)}function _h(){this.imgCount--,hh(this)}var vh=null;function yh(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,vh=new Map,t.forEach(bh,e),vh=null,gh.call(e))}function bh(e,t){if(!(t.state.loading&4)){var n=vh.get(e);if(n)var r=n.get(null);else{n=new Map,vh.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=gh.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var xh={$$typeof:ae,Provider:null,Consumer:null,_currentValue:ge,_currentValue2:ge,_threadCount:0};function Sh(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=ft(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ft(0),this.hiddenUpdates=ft(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.transitionTypes=null,this.incompleteTransitions=new Map}function Ch(e,t,n,r,i,a,o,s,c,l,u,d){return e=new Sh(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=Pi(3,null,null,t),e.current=a,a.stateNode=e,t=Fa(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},vo(a),e}function wh(e){return e?(e=Mi,e):Mi}function Th(e,t,n,r,i,a){i=wh(i),r.context===null?r.context=i:r.pendingContext=i,r=bo(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=xo(e,r,t),n!==null&&(Kd(n,e,t),So(n,e,t))}function Eh(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Dh(e,t){Eh(e,t),(e=e.alternate)&&Eh(e,t)}function Oh(e){if(e.tag===13||e.tag===31){var t=ki(e,67108864);t!==null&&Kd(t,e,67108864),Dh(e,67108864)}}function kh(e){if(e.tag===13||e.tag===31){var t=Ud();t=vt(t);var n=ki(e,t);n!==null&&Kd(n,e,t),Dh(e,t)}}var Ah=!0;function jh(e,t,n,r){var i=I.T;I.T=null;var a=he.p;try{he.p=2,Nh(e,t,n,r)}finally{he.p=a,I.T=i}}function Mh(e,t,n,r){var i=I.T;I.T=null;var a=he.p;try{he.p=8,Nh(e,t,n,r)}finally{he.p=a,I.T=i}}function Nh(e,t,n,r){if(Ah){var i=Ph(r);if(i===null)op(e,t,r,Fh,n),Gh(e,r);else if(qh(i,e,t,n,r))r.stopPropagation();else if(Gh(e,r),t&4&&-1<Wh.indexOf(e)){for(;i!==null;){var a=Pt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=ot(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-$e(o);s.entanglements[1]|=c,o&=~c}zf(a),!(sd&6)&&(Od=He()+500,Bf(0,!1))}}break;case 31:case 13:s=ki(a,2),s!==null&&Kd(s,a,2),Zd(),Dh(a,2)}if(a=Ph(r),a===null&&op(e,t,r,Fh,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else op(e,t,r,null,n)}}function Ph(e){return e=Sn(e),Ih(e)}var Fh=null;function Ih(e){if(Fh=null,e=Nt(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return Fh=e,null}function Lh(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`fullscreenerror`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`resize`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(Ue()){case We:return 2;case Ge:return 8;case Ke:case qe:return 32;case Je:return 268435456;default:return 32}default:return 32}}var Rh=!1,zh=null,B=null,Bh=null,Vh=new Map,Hh=new Map,Uh=[],Wh=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Gh(e,t){switch(e){case`focusin`:case`focusout`:zh=null;break;case`dragenter`:case`dragleave`:B=null;break;case`mouseover`:case`mouseout`:Bh=null;break;case`pointerover`:case`pointerout`:Vh.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:Hh.delete(t.pointerId)}}function Kh(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=Pt(t),t!==null&&Oh(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function qh(e,t,n,r,i){switch(t){case`focusin`:return zh=Kh(zh,e,t,n,r,i),!0;case`dragenter`:return B=Kh(B,e,t,n,r,i),!0;case`mouseover`:return Bh=Kh(Bh,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return Vh.set(a,Kh(Vh.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,Hh.set(a,Kh(Hh.get(a)||null,e,t,n,r,i)),!0}return!1}function Jh(e){var t=Nt(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,xt(e.priority,function(){kh(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,xt(e.priority,function(){kh(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Yh(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Ph(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);xn=r,n.target.dispatchEvent(r),xn=null}else return t=Pt(n),t!==null&&Oh(t),e.blockedOn=n,!1;t.shift()}return!0}function Xh(e,t,n){Yh(e)&&n.delete(t)}function Zh(){Rh=!1,zh!==null&&Yh(zh)&&(zh=null),B!==null&&Yh(B)&&(B=null),Bh!==null&&Yh(Bh)&&(Bh=null),Vh.forEach(Xh),Hh.forEach(Xh)}function Qh(e,n){e.blockedOn===n&&(e.blockedOn=null,Rh||(Rh=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Zh)))}var $h=null;function eg(e){$h!==e&&($h=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){$h===e&&($h=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(Ih(r||n)===null)continue;break}var a=Pt(n);a!==null&&(e.splice(t,3),t-=3,ac(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function tg(e){function t(t){return Qh(t,e)}zh!==null&&Qh(zh,e),B!==null&&Qh(B,e),Bh!==null&&Qh(Bh,e),Vh.forEach(t),Hh.forEach(t);for(var n=0;n<Uh.length;n++){var r=Uh[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<Uh.length&&(n=Uh[0],n.blockedOn===null);)Jh(n),n.blockedOn===null&&Uh.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[wt]||null;if(typeof a==`function`)o||eg(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[wt]||null)s=o.formAction;else if(Ih(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),eg(n)}}}function ng(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function rg(e){this._internalRoot=e}ig.prototype.render=rg.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;Th(n,Ud(),e,t,null,null)},ig.prototype.unmount=rg.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Th(e.current,2,null,e,null,null),Zd(),t[Tt]=null}};function ig(e){this._internalRoot=e}ig.prototype.unstable_scheduleHydration=function(e){if(e){var t=bt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Uh.length&&t!==0&&t<Uh[n].priority;n++);Uh.splice(n,0,e),n===0&&Jh(e)}};var ag=n.version;if(ag!==`19.3.1`)throw Error(i(527,ag,`19.3.1`));he.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:f(e),e=e===null?null:e.stateNode,e};var og={bundleType:0,version:`19.3.1`,rendererPackageName:`react-dom`,currentDispatcherRef:I,reconcilerVersion:`19.3.1`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var sg=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!sg.isDisabled&&sg.supportsFiber)try{Xe=sg.inject(og),Ze=sg}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=Oc,s=kc,c=Ac;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=Ch(e,1,!1,null,null,n,r,null,o,s,c,ng),e[Tt]=t.current,ip(e),new rg(t)}})),_=o(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=g()})),v=c(d(),1),y=_(),b=/^#\/[a-z][a-z0-9-]*(\/[^?\s]*)?(\?[^\s]*)?$/,x=e=>typeof e==`object`&&!!e;function S(e,t){let n=0,r=new Map,i=new Map,a=new Set,o=[];return t(e=>{if(x(e)){if(e.type===`api-reply`&&typeof e.id==`number`){let t=r.get(e.id);r.delete(e.id),t?.({status:Number(e.status),body:e.body})}else if(e.type===`run-progress`&&typeof e.id==`number`)typeof e.line==`string`&&i.get(e.id)?.onLine(e.line);else if(e.type===`run-end`&&typeof e.id==`number`){let t=i.get(e.id);i.delete(e.id),t?.done({state:typeof e.state==`string`?e.state:`failed`,lines:Array.isArray(e.lines)?e.lines.filter(e=>typeof e==`string`):[],...typeof e.runId==`string`?{runId:e.runId}:{}})}else if(e.type===`event`&&x(e.event)&&typeof e.event.type==`string`)for(let t of a)t(e.event);else if(e.type===`navigate`&&typeof e.hash==`string`&&b.test(e.hash))for(let t of o)t(e.hash)}}),{call(t,i){let a=++n;return new Promise(n=>{r.set(a,n),e({type:`api`,id:a,method:i.method,path:t,...i.body===void 0?{}:{body:i.body}})})},runStep(t,r){let a=++n;return new Promise(n=>{i.set(a,{onLine:r,done:n}),e({type:`run-step`,id:a,args:t})})},onEvent(e){return a.add(e),()=>a.delete(e)},onNavigate(e){o.push(e)}}}function C(e){return t=>{if(!(t.button!==0||t.ctrlKey||t.metaKey||t.shiftKey||t.altKey))for(let n of t.composedPath()){let t=n;if(t.tagName?.toLowerCase()!==`a`)continue;let r=t.getAttribute?.(`href`);r&&b.test(r)&&e(r);return}}}var w;function T(){if(w!==void 0)return w??void 0;let e=globalThis.acquireVsCodeApi;if(typeof e!=`function`||typeof window>`u`){w=null;return}let t=e();return w=S(e=>t.postMessage(e),e=>window.addEventListener(`message`,t=>e(t.data))),w.onNavigate(e=>{location.hash!==e&&(location.hash=e)}),window.addEventListener(`click`,C(e=>{location.hash!==e&&(location.hash=e)})),w}var E={app:{loading:`Loading`,cantLoad:e=>`Couldn't load this: ${e}`,tryAgain:`Try again`,scrollTable:e=>`Table: ${e} (scrolls sideways)`,scrollCode:`Code block (scrolls sideways)`,changePicker:`Change`,noChanges:`No changes yet`,offline:`The Atticus server isn't answering. Check that atticus ui is still running in its terminal (start it again with atticus ui if it stopped), then press Try again or reload the page.`,notJson:e=>`The server answered with something that isn't Atticus's (status ${e}). Check that the address is the one atticus ui printed.`,offlinePanel:`The Atticus server the extension started isn't answering. Run Atticus: Open the app from the Command Palette to start it again, then press Try again.`,offlineShort:`the server isn't answering (the note at the top says how to fix it)`,online:`The server is answering again.`,working:`Working on it…`,ccReading:`Reading your metarepo…`,ccCantRead:`Couldn't read what needs attention: each panel below says why.`,notLoaded:`not loaded`,checking:`Checking…`,checkedAt:e=>`Checked again at ${e}.`,newTab:`(opens in a new tab)`,askEmpty:`Type a question first.`,tourEscape:`Esc closes the tour`,needId:`Type a record id first, for example ledger-db.account. The Knowledge explorer finds one.`,needFolder:`Type the folder for the sandbox first: a new, empty one.`,noExecutors:`No tool is set up on this machine yet, so there is nothing to check.`,forceSnow:`To replace it, tick “Replace a snow.md a person edited” and draft again.`,forceStories:e=>`Edit them on this page, or to replace them run atticus plan stories ${e} --force in a terminal.`,panelNoSave:(e,t)=>`The VS Code panel can't save files, so ${e} wasn't saved. Copy the text below into a file, or run ${t} in a terminal.`},theme:{label:`Theme`,hint:`System follows your computer's light or dark setting.`,choices:{system:`System`,light:`Light`,dark:`Dark`}},findings:{needsReason:`Not relevant and Waive need a reason: type it above first.`,cantWaive:`This rule can't be waived`},flows:{title:`Flows`,intro:`Each flow is what happens, step by step, when something starts it: who calls, what the code does, and the components, tables and topics it reaches. Every step cites the file and line it was read from.`,repo:`Repo`,filter:`Find a flow`,filterHint:`Name, id or what starts it`,listTitle:`Flows`,noSpecs:`No repo has a spec yet. Draft one with atticus spec draft <repo>, or /atticus-spec in Copilot Chat or Claude Code.`,noFlows:`This repo's spec has no flows yet.`,noMatch:`No flow matches. Try part of its name or what starts it.`,pick:`Pick a flow from the list to see its steps.`,counts:(e,t)=>`${e} step${e===1?``:`s`}, ${t} confirmed`,unreadable:`These files don't read:`,file:`File`,copyFile:`Copy the file's path`,calledBy:`Called by`,notJoined:`The estate pass hasn't run, so calls to other repos aren't linked to their flows. Run atticus estate join.`,start:`Start`,goesTo:(e,t)=>`Goes to ${e} on ${t}.`,backTo:e=>`Goes back to ${e}.`,opens:(e,t)=>`Opens "${e}" in ${t}`,unjoined:e=>`Not linked to a flow: ${e}`,more:e=>`and ${e} more`,confirmed:{check:`Confirmed by the check`,ai:`Confirmed by the AI`,person:`Confirmed by a person`},notConfirmed:`Not confirmed yet`,errorsTitle:`When it goes wrong`,noErrors:`The spec names no error paths for this flow.`,diagram:e=>`The steps of ${e}`,lanes:{caller:`starts it`,gateway:`gateway`,self:`runs the flow`,component:`called`,store:`table`,topic:`topic`},kinds:{endpoint:`Endpoint`,action:`Action`,page:`Page`,listener:`Listener`,job:`Job`,entry:`Entry`,lookup:`Lookup`,read:`Read`,write:`Write`,"call-out":`Call`,publish:`Publish`,transform:`Transform`,validate:`Validate`,branch:`Branch`,log:`Log`,respond:`Respond`,loop:`Loop`,retry:`Retry`},openFlows:`Flows of this repo`,frame:(e,t,n)=>`${e===`retry`?`Retry`:`Loop`}: steps ${t} to ${n} again`,marks:{added:`Added`,changed:`Changed`,removed:`Removed`},was:e=>`Before: ${e}`,newLane:`new`,change:`Change`,pickRepo:`A repo's flows`,changeIntro:`The flows this change adds, changes or removes, each drawn beside today's: added steps say Added, changed ones say Changed with what they did before, removed ones say Removed and are struck through.`,noTargets:e=>`${e} has no target flows yet. Run atticus change architecture ${e}, or /atticus-architecture in Copilot Chat or Claude Code.`,targetsTitle:`Target flows`,targetCounts:(e,t,n)=>[e?`${e} added`:``,t?`${t} changed`:``,n?`${n} removed`:``].filter(Boolean).join(`, `)||`no step changes`,deltaKinds:{new:`New flow`,modify:`Changed flow`,remove:`Removed flow`},whyChange:`Why`,openTargets:`Its target flows`},questions:{title:`Questions`,intro:`When the code doesn't settle something, Atticus asks here. Your answer is written to the question's file in questions/; then run the command shown, and the step reads it.`,filter:`Show`,filterOpen:`Open`,filterAll:`All`,listTitle:`Questions`,empty:`No questions are waiting. A scan step adds one here when the code is unclear.`,emptyAll:`No questions yet. A scan step adds one here when the code is unclear.`,unreadable:e=>`${e} isn't a valid question file.`,pickFromList:`Pick a question from the list to answer it.`,askedBy:(e,t)=>`Asked by ${e} on ${t}`,evidence:`What it read`,notShown:`Not shown: the file isn't here, or the line is past its end.`,options:`Your answer`,optionChanges:`It would change`,ownWords:`In my own words`,ownWordsLabel:`Your answer, in your own words`,scope:`Who the answer is for`,scopeRepo:e=>`This repo only (${e})`,scopeType:e=>`Every repo of type ${e}`,scopeTypeOther:`Every repo of a type`,typeLabel:`The repo type`,proposed:`proposed`,submit:`Save the answer`,saving:`Saving`,pickOne:`Pick one of the options, or answer in your own words.`,needWords:`Write your answer, or pick one of the options.`,needType:`Say which repo type the answer is for, or keep it to this repo.`,saved:e=>`Saved to ${e}. Commit it for review with the rest of the scan.`,skillWritten:e=>`Also written under Answers in ${e}.`,skillMissing:e=>`${e} isn't there yet, so the answer is kept in the question file, with that path.`,next:`Run this next; it reads your answer:`,copy:`Copy the command`,answered:(e,t)=>`Answered by ${e} on ${t}`,retired:`This question is retired; nothing reads its answer.`,change:`Change the answer`},knowledge:{nav:{sources:`Knowledge sources`,documents:`Documents`,items:`Knowledge items`,search:`Search the wikis`,parties:`Teams, vendors and products`,orgpack:`Org pack from the wikis`},emptyGo:`Open Knowledge sources to add or sync a wiki`,documents:{title:`Documents`,intro:`Files dropped in the metarepo's inputs/ are general knowledge: decisions, runbooks, specs, request forms and slides. Sync reads them into a snapshot, and your assistant reads that into knowledge items, each quote checked against the file. A file for one change only goes in that change's Files attached instead.`,add:`Add files`,adding:`Adding…`,added:e=>`Added ${e} file${e===1?``:`s`} to inputs/inbox/. Commit them through a pull request.`,sync:`Sync inputs/`,syncing:`Syncing…`,syncedNow:`inputs/ is read into a new snapshot. Your assistant reads it into items next.`,listTitle:`Files in inputs/`,empty:`Nothing in inputs/ yet. Add files here, or run atticus intake add <files>.`,neverSynced:`Not synced yet: Sync reads what can be read into a snapshot.`,synced:(e,t,n)=>`Snapshot of ${e}: ${t} of ${n} file${n===1?``:`s`} read.`,kindLabel:`Kind`,anyKind:`Any kind`,systemLabel:`System`,anySystem:`Any system`,filtered:`documents`,kinds:{document:`Document`,spreadsheet:`Spreadsheet`,diagram:`Diagram`,image:`Picture`,openapi:`OpenAPI spec`,swagger:`Swagger spec`,asyncapi:`AsyncAPI spec`,payload:`Payload sample`,"ticket-export":`Ticket export`,unknown:`Unknown`},states:{read:`Read`,skipped:`Not read`,"not-synced":`Not synced yet`},inbox:`In the inbox`,systems:e=>`About ${e}`,noSystems:`Names no system`,age:e=>e===0?`changed today`:`changed ${e} day${e===1?``:`s`} ago`,items:(e,t)=>`${e} knowledge item${e===1?``:`s`}, ${t} verified`,verified:`verified`,why:e=>`Not read: ${e}.`,newer:e=>`A newer version is ${e}.`,duplicate:e=>`The same file as ${e}.`,readTitle:`Read them into knowledge items`,readWhy:`Your assistant reads the snapshot of inputs/ into patterns, standards, processes, requests, decisions and constraints. Atticus checks every quote against the file.`},kinds:{pattern:`Pattern`,standard:`Standard`,process:`Process`,request:`Request`,decision:`Decision`,constraint:`Constraint`,team:`Team`,vendor:`Vendor`,product:`Product`,project:`Project`},groups:[{title:`Requests and processes`,kinds:[`request`,`process`]},{title:`Standards and patterns`,kinds:[`standard`,`pattern`]},{title:`Decisions and constraints`,kinds:[`decision`,`constraint`]},{title:`Teams and vendors`,kinds:[`team`,`vendor`]},{title:`Products and projects`,kinds:[`product`,`project`]}],fields:{title:`Title`,name:`Name`,appliesWhen:`Applies when`,leadTime:`Lead time`,handledBy:`Handled by`,catalogueItem:`Catalogue item`,inputs:`It needs`,steps:`Steps`,notes:`Notes`,definition:`Definition`,rules:`Rules`,reason:`Reason`,owner:`Owner`,responsibilities:`Responsibilities`,owns:`Owns`,uses:`Uses`,contacts:`Contacts`,channel:`Channel`,aliases:`Also called`,description:`What it is`,ownedBy:`Owned by`,usedBy:`Used by`,vendor:`Vendor`,systems:`Systems`,urls:`Links`,decision:`Decision`,stance:`Stance`},review:{verified:(e,t)=>`✓ Verified by ${e} on ${t}`,corrected:(e,t)=>`✓ Corrected by ${e} on ${t}`,rejected:(e,t)=>`✗ Rejected by ${e} on ${t}`,stale:e=>`Check again: its page changed since ${e} reviewed it`,none:`Not yet verified: check it against its page`,because:`Why`,correctedFields:e=>`Corrected: ${e}`},ai:{intro:`This step needs a model. Run the command in a terminal at the metarepo:`,slash:`Or type this in Copilot Chat or Claude Code:`,copy:`Copy the command`,copySlash:`Copy the slash command`},sources:{intro:`The wikis and docs repos in org-pack/sources.yaml. Sync copies a source's pages to a dated snapshot; the knowledge scan then reads the snapshot with your assistant, and every quote is checked.`,listTitle:`Sources`,empty:`No wiki is in sources.yaml yet. Add one below.`,type:`Type`,location:`Where`,ref:`Branch or tag`,path:`Folder of its pages`,checkout:`Checkout`,owner:`Owner`,tags:`Tags`,noTags:`No tags: it is read for every kind`,authority:`Authority`,authorities:{standard:`Standard: the organisation's own rules`,platform:`Platform: a shared platform team's guidance`,framework:`Framework: a framework's own documentation`,team:`Team: a team's pages`,reference:`Reference: glossaries and notes`},noAuthority:`Not set: it ranks as a team's pages`,byPage:e=>`${e} page override${e===1?``:`s`} in sources.yaml`,scope:`Applies to`,everywhere:`Every task: no appliesTo in sources.yaml`,restricted:`Restricted pages`,readsRestricted:`Read: the metarepo's audience may read them`,skipsRestricted:`Skipped, path and reason only`,maxPages:e=>`A scan reads at most ${e} page${e===1?``:`s`} of it a run`,snapshot:`Newest snapshot`,noSnapshot:`Never synced`,snapshotLine:(e,t,n)=>`${e}: ${t} page${t===1?``:`s`}, ${n} day${n===1?``:`s`} old`,commit:e=>`at commit ${e.slice(0,7)}`,scanned:e=>`The knowledge scan read the snapshot of ${e}`,notScanned:`The knowledge scan hasn't read it yet`,stale:e=>`Sync it again: the snapshot is older than ${e} days`,unsynced:`Not synced yet: sync it so the knowledge scan can read it`,sync:e=>`Sync ${e}`,syncing:`Syncing`,synced:e=>`Synced ${e}.`,scanLabel:`Knowledge scan`,addTitle:`Add a source`,addIntro:`Atticus checks the wiki and writes its entry into org-pack/sources.yaml, keeping the file's comments. Commit the file through a pull request: merging it is the approval.`,addType:`Type of wiki`,addLocation:`Location: a URL, or a folder relative to the metarepo`,addId:`Id (optional; made from the location when empty)`,addPath:`Folder of its pages (git only)`,addRef:`Branch or tag (git only; default the repository's default branch)`,addSubmodule:`Keep it as a submodule of the metarepo (git only)`,addKinds:`Kinds of knowledge it holds, comma-separated`,addFrameworks:`Frameworks it is about, comma-separated`,addOwner:`Owner`,addSave:`Write it into sources.yaml (otherwise only show the entry)`,add:`Add the source`,adding:`Adding`,needLocation:`Say where the wiki is.`,gitOnly:`Branch, folder and submodule are for a git wiki.`,notSlug:e=>`${e} isn't a tag: use lowercase letters, digits and dashes.`,problems:`These files don't read:`},scan:{title:`What the last scan changed`,never:`No knowledge scan has run yet.`,at:e=>`Scanned on ${e}`,added:`New`,changed:`Changed`,removed:`Gone`,nothing:`The last scan changed no item.`,flags:(e,t,n)=>`${e} conflict${e===1?``:`s`} between pages, ${t} quarantined text${t===1?``:`s`}, ${n} item${n===1?``:`s`} that failed the checks`,checkAgain:`Reviews to check again`,noCheckAgain:`No review waits to be checked again.`,rescan:`Read every source again (only changed pages go to your assistant):`},items:{intro:`What the knowledge scan read from the wikis, as people reviewed it. A tick lasts until the page under it changes; a rejected item is left out of plans and answers, and still listed here with its reason.`,kind:`Kind`,allKinds:`All kinds`,empty:`There are no knowledge items yet. Sync a source on the Knowledge sources page, then read it with your assistant.`,noMatch:`No item matches.`,pick:`Pick an item to see it and review it.`,reviewStart:e=>e?`Review what no one has checked (${e})`:`Nothing waits for a review`,reviewStop:`Stop reviewing`,reviewKeys:e=>`Review mode, ${e} waiting: j or ↓ next, k or ↑ back, v verify and go on, c correct, r reject.`,missing:e=>`There is no knowledge item ${e}: a rescan may have removed it, or the link is wrong. Pick one from the list.`,count:e=>`${e} item${e===1?``:`s`}`,quote:`What the page says`,page:(e,t)=>`${e}${t?`, line ${t}`:``}`,links:`Links`,noLinks:`The page gives no link for it.`,conflict:`Another page disagrees with it: see the conflicts in knowledge/scan.yaml.`,verify:`Verify`,correct:`Correct`,reject:`Reject`,cancel:`Cancel`,save:`Save the correction`,saving:`Saving`,rejectWhy:`Why is it wrong? The next person reads it.`,rejectSave:`Reject it`,needWhy:`Say why it is wrong.`,noChange:`Change a field first, or cancel.`,verified:e=>`Verified ${e}. Commit knowledge/reviews/ through a pull request.`,corrected:e=>`Corrected ${e}. Everything that reads it uses the correction from now on.`,rejected:e=>`Rejected ${e}: plans and answers leave it out.`,correctIntro:`Only the fields a person may correct are here. What the page quoted can't be corrected: a quote is checked word for word.`,addValue:`Add one`,remove:`Remove`,linkLabel:`Label`,linkUrl:`Address (https://…)`,badUrl:e=>`${e} isn't an http(s) address.`,item:e=>`Item ${e}`,link:e=>`Link ${e}`,open:`Open the item`},search:{intro:`Look for a term or phrase across every wiki. The plain search runs here and shows the pages and sections that mention it. Your assistant then reads only those pages and proposes what they hold about it; every quote is checked.`,label:`A term or phrase`,placeholder:`e.g. new starter, Kafka topic, change freeze`,go:`Search`,needText:`Type a word or phrase to look for first.`,searching:`Searching the wikis again…`,noSnapshot:`No source has a snapshot yet: sync one on the Knowledge sources page first.`,none:e=>`No page of the wikis mentions "${e}". There is nothing to send to your assistant.`,found:(e,t)=>`${e} section${e===1?``:`s`} on ${t} page${t===1?``:`s`} mention it.`,next:`Have your assistant read those pages:`,savedTitle:`Saved searches`,noSaved:`No search has been saved yet. Each search your assistant runs is saved here.`,candidates:(e,t)=>`${e} found, ${t} kept`,fresh:`New`,known:e=>`Already known as ${e}`,kept:(e,t)=>`Kept as a ${e} by ${t}`,keepAs:`Keep as`,keep:`Keep`,keeping:`Keeping`,keepOf:e=>`Keep ${e}`,keptNote:(e,t)=>`Kept ${e} as a ${t}, verified by you. Commit knowledge/items/ and reviews/ through a pull request.`,pick:`Pick a saved search to see what it found.`},parties:{intro:`The teams, vendors, products and projects the wikis name: what each team owns and uses, who owns each product, and the other names people use for them.`,empty:`No team, vendor or product has been read from the wikis yet. The knowledge scan reads them.`,teams:`Teams`,vendors:`Vendors`,products:`Products and projects`,owns:`Owns`,uses:`Uses`,usedBy:`Used by`,ownedBy:`Owned by`,aliases:`Also called`,responsibilities:`Responsible for`,none:`None named`,review:`Review it on the Knowledge items page`},orgpack:{intro:`The products and vendors the wikis name, drafted as each platform profile's systems. Accept the ones you pick: Atticus writes them into profile.yaml, keeping its comments, and you commit it through a pull request.`,empty:`The org pack has no platform profile yet.`,noDraft:`No draft yet for this platform.`,draft:`Draft from the wikis`,drafting:`Drafting`,drafted:e=>`Drafted ${e} system${e===1?``:`s`}.`,nothing:`The profile already has every system the knowledge items name.`,add:`Add`,update:`Update`,gains:e=>`gains ${e}`,verified:e=>`✓ Verified by ${e}`,unverified:`Not yet verified: check it against its page`,accept:`Accept the picked systems`,accepting:`Accepting`,pickOne:`Pick at least one system.`,accepted:(e,t,n)=>`Added ${e} and updated ${t} in ${n}. Commit it through a pull request: merging it is the approval.`,pick:e=>`Accept ${e}`,at:e=>`Drafted on ${e}`,command:`Or in a terminal:`},needs:{title:`What this change needs`,intro:`What the organisation needs from this change, from the knowledge items: requests to raise, standards to follow, decisions to keep to, teams to involve. Atticus never raises one: you do, then mark it here.`,none:e=>`${e} has no needs list yet. Find what it needs early: a request's lead time runs from the day it is raised.`,empty:`Nothing in the knowledge items applies to this change.`,groups:[{title:`Requests and processes to raise`,kinds:[`request`,`process`]},{title:`Standards and patterns to follow`,kinds:[`standard`,`pattern`]},{title:`Decisions and constraints that apply`,kinds:[`decision`,`constraint`]},{title:`Teams, vendors and products to involve`,kinds:[`team`,`vendor`,`product`,`project`]}],for:e=>e===`change`?`the whole change`:e.replace(`:`,` `),leadTime:`Lead time`,handledBy:`Handled by`,catalogueItem:`Catalogue item`,inputs:`It needs`,steps:`How`,rules:`Rules`,links:`Links`,why:`Why`,when:e=>`Needed ${e.replace(`-`,` `)}`,from:e=>`From ${e}`,fromStories:`Suggested by the stories stage`,open:`Open`,done:(e,t)=>`Done by ${e}${t?`: ${t}`:``}`,notNeeded:(e,t)=>`Not needed (${e}): ${t}`,markDone:`Done`,markDoneOf:e=>`Done: ${e}`,markSkipOf:e=>`Not needed: ${e}`,reopenOf:e=>`Reopen: ${e}`,openAgain:`open again`,markSkip:`Not needed`,reopen:`Reopen`,doneNote:`Note (optional), e.g. the CTASK number`,skipNote:`Why it isn't needed (a reviewer reads it)`,save:`Save`,cancel:`Cancel`,needWhy:`Say why it isn't needed.`,marked:(e,t)=>`${e} is ${t}. Commit needs.yaml with the change.`,considered:`Considered and left out`,openCount:e=>`${e} open`}},nav:{main:`Main`,dashboard:`Overview`,onboarding:`Onboarding`,feature:`Feature design`,architecture:`Architecture`,stories:`Stories`,tasks:`Tasks`,knowledge:`Knowledge`,sections:{Home:`Home`,Map:`Map`,Change:`Change`,Questions:`Questions`,Knowledge:`Knowledge`,SetUp:`Set up`,Atticus:`Atticus`},groups:{Define:`Define`,Design:`Design`,Plan:`Plan`,Build:`Build`,Release:`Release`},tabs:e=>`${e} pages`,youAreHere:`You are here`,ofChange:e=>`change ${e}`,screens:{home:`Home`,canvas:`Estate canvas`,trust:`Trust`,explore:`Search the catalog`,map:`Ecosystem map`,impact:`Impact explorer`,features:`Features`,orgpack:`Org pack`,intake:`Intake`,scans:`Scans`,brief:`Feature brief`,ux:`Prototypes and UX`,archReview:`Architecture review`,diagrams:`Diagrams`,reconcile:`Reconcile`,contracts:`Contracts`,mappings:`API mappings`,breakdown:`Breakdown`,initiatives:`Initiatives`,changes:`All changes`,tasks:`Task board`,trace:`Test trace`,todo:`Manual steps`,release:`Release plan`,serviceDesk:`Service desk queue`,governance:`Governance`,evals:`AI quality`,learning:`Learning`,settings:`Settings`,ai:`AI`,repos:`Repos`,cockpit:`At a glance`,systems:`Systems`,runs:`Model runs`,history:`Prompt history`,words:`What the words mean`,changeDiagram:`Change diagram`,estimate:`Estimate`,conformance:`Code against design`,changeKnowledge:`Knowledge`}},trust:{intro:`How far to trust each repo's map. Your assistant reads a repo and writes facts, each citing a file and line; the verifier keeps the facts whose line says what they claim and rejects the rest. Here is what it kept and rejected, how much of the code the facts cover, whether they are of the commit the checkout is at, and whether the catalog is built from them or from the built-in readers.`,empty:`No repo is listed yet. Add your repos in Set up › Repos, then have your assistant read one with /atticus-map <repo>.`,reportIn:e=>`The verifier's reports are in ${e}/.`,summary:(e,t)=>`${e} of ${t} repos trusted`,states:{"not-read":`Not read yet`,unverified:`Not verified`,rejected:`Facts rejected`,stale:`Facts of another commit`,unwritten:`Verified, not in the catalog`,"unknown-files":`Files not read yet`,trusted:`Trusted`},why:{notRead:`Your assistant hasn't read this repo yet, so any map of it comes from the built-in readers.`,unverified:`Its facts haven't been checked by the verifier yet.`,rejected:e=>`The verifier rejected ${e} fact${e===1?``:`s`}: the cited line doesn't say what the fact claims. Fix ${e===1?`it`:`them`} and verify again.`,stale:(e,t)=>`The facts are of commit ${e.slice(0,7)}, but the checkout is at ${t.slice(0,7)}. Read the repo again.`,unwritten:`Its facts are verified, but the catalog isn't built from them yet.`,unknownFiles:(e,t)=>`${e} source file${e===1?` has`:`s have`} no fact citing ${e===1?`it`:`them`} yet: read ${e===1?`it`:`them`}, or exclude generated code in org-pack/scan/${t}.yaml.`,trusted:`Every fact is verified at the checkout's commit, every source file is read, and the catalog is built from the facts.`},builtOn:`Built on`,builtOnNone:`Not read yet`,builtOnOne:(e,t,n)=>`${e}${t?` ${t}`:``} (${n})`,builtOnModule:(e,t)=>`${e}, in ${t}`,builtOnGap:e=>`${e}: none of its patterns are in the facts`,builtOnIntro:`What each repo's build files declare it is built on, each read from the line that declares it. Where a repo declares a framework and its facts show none of that framework's patterns — a Spring Boot service with no route, a React app with no screen — the entry points were probably missed, and that is a question for a person rather than something to be decided here.`,kept:`Facts kept`,rejected:`Rejected`,redacted:e=>`${e} quote${e===1?``:`s`} redacted`,coverage:`Coverage`,coverageOf:(e,t,n,r)=>`${Math.round(e*100)}%: ${t} file${t===1?``:`s`} read, ${n} not read, ${r} excluded`,noReport:`No verifier's report yet`,commit:`Commit`,sameCommit:e=>`${e.slice(0,7)}, the checkout's`,otherCommit:(e,t)=>`Facts ${e.slice(0,7)}, checkout ${t.slice(0,7)}`,noCheckout:e=>`Facts ${e.slice(0,7)}; no checkout to compare with`,noFactsCommit:`No facts yet`,catalogFrom:`Catalog from`,from:{facts:`Its facts`,readers:`The built-in readers`,both:`Its facts and the readers`,none:`Nothing yet`},records:(e,t)=>`${e} record${e===1?``:`s`} from facts, ${t} from readers`,unknownFiles:e=>`The ${e} file${e===1?``:`s`} no fact cites yet`,more:(e,t)=>`and ${e} more, listed in ${t}`,files:(e,t)=>`Files: ${e}, ${t}`},changeKnowledge:{title:`Knowledge that applies`,onFeature:`The pages attached to this change, ranked, with their source, the tasks that use them and the pages that disagree, are on the change's Knowledge page. Confirm or exclude them there.`,openPage:`Open the change's knowledge`,intro:`What the change's stages picked from the org's knowledge, with why: from the feature stage on, each picks the patterns, standards, decisions, processes and requests, and the wiki and document sections, that its own input leads to. Confirm what applies, and every later stage that takes its kind picks it; exclude what doesn't, and no later stage picks it again.`,none:`No knowledge is attached to this change yet. The feature stage is the first that picks pages from the org's wikis, documents and standards. Once the brief is written, run:`,featureCommand:e=>`atticus change feature ${e}`,working:`Writing knowledge.yaml…`,caption:`Knowledge that applies to this change`,item:`Item`,why:`Why`,stages:`Stages`,status:`Status`,actions:`Confirm or exclude`,statuses:{suggested:`Suggested`,confirmed:`Confirmed`,excluded:`Excluded`},confirm:`Confirm`,exclude:`Exclude`,confirmItem:e=>`Confirm ${e}`,excludeItem:e=>`Exclude ${e}`,kinds:{Pattern:`Pattern or standard`,Decision:`Decision`,ProcessDefinition:`Process or request`,Party:`Team or vendor`,Product:`Product`,GlossaryTerm:`Term`,SourceDocument:`Document`,WikiSection:`Wiki section`,DocumentSection:`Document section`},nearMisses:e=>`Nearly picked (${e}): left out for room`,nearMissStage:e=>`left out of ${e}`,set:(e,t,n)=>`${e} is ${t}, in ${n}. Commit it with the change's files:`,copyCommit:`Copy the git command`,noStages:`a person`,fromSource:(e,t)=>t?`from ${e} (${t})`:`from ${e}`,tasks:e=>{let t=typeof e==`string`?[e]:e;return`task${t.length===1?``:`s`} ${t.join(`, `)}`}},knowledgeConflicts:{title:`Pages that disagree`,intro:`Two pages say different things about the same item. A person decides which applies (or both, in different cases); nothing is picked for them. A signal may suggest a page (it replaces the other, its owner handles the item, its source is tagged for the kind, it is in the team's space, or it was edited last), but only suggests. When code verified in a repo holds one page's value, the code settles it: a document never overrides a fact verified from code.`,says:(e,t)=>`${e} says "${t}"`,open:e=>`Waiting for a person: question ${e} (atticus questions answer ${e} --option <n>, or on the Questions page).`,notAsked:`No one has been asked yet; a change that relies on it asks a person which applies.`,applies:(e,t)=>`${e} applies (${t}).`,both:(e,t)=>`Both apply, in different cases (${e}${t?`: "${t}"`:``}).`,byPerson:e=>`answered by ${e}`,byCode:(e,t,n,r)=>`settled by the code: ${e} ${t} has ${n}, verified at ${r}`,suggested:(e,t,n)=>`Suggested, not decided: ${e}, by ${t} (${n}).`},conformance:{title:`Code against design`,intro:`Does the code do what the design says? Each repo's branch is scanned at its commit and checked against the change's target flows: every call, table, column, migration and endpoint they add must be there, every call they remove gone, and nothing they don't name added. Every item cites its file and line. No AI; a person can dismiss a finding as not relevant.`,none:`No change yet. Start one from a brief, then run its architecture stage.`,noTargets:e=>`${e} has no target flows yet, so there is nothing to check the code against. Its architecture stage writes them:`,notChecked:e=>`${e}'s code hasn't been checked against its target flows yet. A task run checks it when its build passes, or run:`,repo:(e,t)=>`${e} at ${t}`,commits:(e,t)=>`Commit ${e.slice(0,12)}, compared with ${t.slice(0,12)}`,task:e=>`Only the steps task ${e} builds`,counts:e=>`${e.found} found, ${e.missing} missing, ${e.stillThere} still there, ${e.unexpected} not in the design`,allGood:`Everything its target flows add is there, and nothing they don't name.`,itemsCaption:e=>`What the check looked for in ${e}, and what it found`,status:{found:`Found`,missing:`Missing`,"still-there":`Still there`,unexpected:`Not in the design`},col:{status:`Result`,what:`What`,step:`Step`,task:`Task`,at:`Where`,finding:`Finding`},step:(e,t)=>t?`${e} item ${t}`:`${e} trigger`,noStep:`no target flow`,unchecked:`Not checked by a scan`,uncheckedIntro:`A scan can't show these steps; a person or a test checks them.`,gate:e=>e?`The findings are on the conform gate, round ${e}. Dismiss one as not relevant from the change's findings.`:`Nothing was written to the conform gate.`,problems:`What couldn't be read`,run:`Check the code again`},estimate:{title:`Estimate`,intro:`How big the change is, counted from its target flows: each step it adds, changes or removes is a unit of work, classed by what it reaches. The days come from the org pack's ranges, summed; every unit and driver says where it comes from. No AI, and never a number nobody stands behind.`,none:`No change yet. Start one from a brief, then run its architecture stage.`,noTargets:e=>`${e} has no target flows yet, so there is nothing to size. Its architecture stage writes them:`,effort:`Effort`,effortRange:(e,t,n)=>`${e} to ${t} developer days (most likely ${n})`,noDays:e=>`${e} unit${e===1?``:`s`} of work, and no days:`,noTable:`the org pack has no estimates.yaml, so no unit has a range. Add one with the ranges your teams agree.`,noMatch:`no class in the org pack's estimates.yaml matches this work.`,from:(e,t)=>`from ${e} of ${t} units of work; the rest need a class and count for nothing yet`,calendar:`Calendar`,waiting:e=>`Waiting, from the release forecast: ${e} working days`,longer:e=>e===`work`?`The work takes longer than the waiting.`:`The waiting takes longer than the work.`,noWait:`No waiting worked out: the release forecast couldn't be read.`,calibration:`Calibration`,notCalibrated:(e,t)=>e?`Not calibrated yet: the ranges are ${e}'s, from ${t??`estimates.yaml`}. Once past changes record their effort, the ranges are checked against them.`:`Not calibrated yet, and no ranges to calibrate.`,drivers:`What drives it`,driversCaption:`What makes the change bigger or riskier, with where it comes from`,noDrivers:`Nothing makes it bigger or riskier than its units of work.`,widens:e=>`widens the upper end ${e}×`,work:`The work`,workCaption:e=>`Every unit of work in ${e}`,needsClass:`needs a class`,perRepo:`By repo`,col:{what:`What`,count:`How many`,effect:`Effect`,source:`From`,repo:`Repo`,flow:`Flow`,step:`Step`,cls:`Class`,days:`Days`,units:`Units`},days:e=>`${e.p20}–${e.p80} (${e.p50})`,problems:`What couldn't be read`},changeDiagram:{title:`Change diagram`,intro:`What the change touches, drawn from its target flows: each component, entry and table, marked + new, ◇ changed or ✕ retired; the rest is there for context. A part is new only when the target flow says so.`,pick:`Change`,none:`No change yet. Start one from a brief, then run its architecture stage.`,noTargets:e=>`${e} has no target flows yet, so there is nothing to draw. Its architecture stage writes them:`,legend:`Legend`,legendNew:`+ New`,legendModify:`◇ Changed`,legendRetire:`✕ Retired`,legendContext:`Unmarked: there for context`,parts:`Every part and its mark`,caption:e=>`The parts of ${e}'s picture`,lines:`Every line and its mark`,col:{part:`Part`,kind:`Kind`,in:`In`,mark:`Mark`,from:`From`,to:`To`,what:`What`},mark:{new:`New`,modify:`Changed`,retire:`Retired`,none:`Context`},from:(e,t)=>`Drawn from ${e} target flow${e===1?``:`s`} in ${t}.`,problems:`What couldn't be drawn`,mermaid:`The same picture as Mermaid`,mermaidHint:`Paste it into a pull request, a wiki or a chat that draws Mermaid.`,copyMermaid:`Copy the Mermaid`,flows:e=>`The target flows of ${e}, step by step`},runNext:{title:`Run next`,copy:`Copy the command`,copySlash:`Copy the slash command`,terminal:`In a terminal, at the metarepo:`,slash:`Or type this in Copilot Chat or Claude Code:`,slashIn:e=>`Or type this in Copilot Chat or Claude Code in ${e}:`,noSlash:`No slash command does this step yet. Run the command in a terminal.`,whatNext:`Not sure what comes next? Type /atticus-next in Copilot Chat or Claude Code, or run atticus next.`,after:`After that`,install:`atticus assistant-files writes the slash commands into the metarepo, where Copilot Chat and Claude Code both read them:`,plugin:`For Claude Code, add the Atticus plugin: it carries the metarepo's slash commands, and says the next step when a session starts in a metarepo.`,commands:[{name:`/atticus-next`,args:`[--all]`,where:`metarepo`,what:`Says the next step to take, its command and why.`},{name:`/atticus-map`,args:`<repo>`,where:`metarepo`,what:`Reads a repo into facts, each citing its line; Atticus checks every one and the assistant loops until all pass.`},{name:`/atticus-probe`,args:``,where:`metarepo`,what:`Shows Atticus what the assistant can do here (open a file, write one, run a command) after atticus probe, so the first read of a repo is handed to it the way it can take it.`},{name:`/atticus-survey`,args:`<repo>`,where:`metarepo`,what:`Drafts a repo's scan settings; Atticus checks them against the code.`},{name:`/atticus-verify`,args:`<repo>`,where:`metarepo`,what:`Compares a repo's code with its last scan; Atticus checks every item.`},{name:`/atticus-spec`,args:`<repo>`,where:`metarepo`,what:`Writes a repo's spec of flows and loops until the spec check passes.`},{name:`/atticus-answer`,args:`[question]`,where:`metarepo`,what:`Explains the open questions; the person chooses each answer.`},{name:`/atticus-knowledge`,args:`<source>`,where:`metarepo`,what:`Reads a knowledge source into items; Atticus checks every quote.`},{name:`/atticus-find`,args:`<term or phrase>`,where:`metarepo`,what:`Searches every wiki for it and proposes what the pages hold about it; Atticus checks every quote.`},{name:`/atticus-needs`,args:`<change>`,where:`metarepo`,what:`Says what a change needs from the organisation: requests to raise, standards to follow, teams to involve.`},{name:`/atticus-feature`,args:`<change>`,where:`metarepo`,what:`Places a change on the estate's flows and features, looping with the checks and critic.`},{name:`/atticus-architecture`,args:`<change>`,where:`metarepo`,what:`Writes a change's target flows from its feature, looping with the checks and critic.`},{name:`/atticus-stories`,args:`<change>`,where:`metarepo`,what:`Writes a change's stories and tasks from its approved design.`},{name:`/atticus-small`,args:`<change>`,where:`metarepo`,what:`Plans a small change in one step: its place on the flows, its target flows and its stories.`},{name:`/atticus-draft`,args:`<change>`,where:`metarepo`,what:`Drafts a change's proposal, spec and interfaces from its brief and the catalog.`},{name:`/atticus-attach`,args:`<change> <files…>`,where:`metarepo`,what:`Attaches a spec, screenshot, PDF or document to a change, for its steps to read and cite.`},{name:`/atticus-knowledge-ask`,args:`<question>`,where:`metarepo`,what:`Answers a question from the knowledge items only, citing each one.`},{name:`/atticus-ask`,args:`<question>`,where:`metarepo`,what:`Answers a question about the systems from the catalog.`},{name:`/atticus-impact`,args:`<record id>`,where:`metarepo`,what:`Lists what a change to one record reaches.`},{name:`/atticus-critic`,args:`<change>`,where:`metarepo`,what:`Reviews a change with the critic's AI lenses, one at a time; every finding is recorded.`},{name:`/atticus-plan`,args:`<change>`,where:`metarepo`,what:`The old name of /atticus-stories, kept for one version.`},{name:`/atticus-snow`,args:`<change>`,where:`metarepo`,what:`Drafts the service-desk requests a change needs.`},{name:`/atticus-release`,args:`<change>`,where:`metarepo`,what:`Checks whether a change is ready to release.`},{name:`/atticus-task`,args:`<change> <task>`,where:`metarepo`,what:`Starts a task with its context loaded: its story, criteria, today's code and the files to change. In a code repo, /atticus-task <task>.`}]},work:{loading:`Loading`,unreadable:`These files couldn't be read:`,estate:`What is read and trusted`,coverage:`Onboarded and read`,reposListed:`repos in the manifests`,reposCloned:`cloned`,reposScanned:`in the catalog`,records:`facts in the catalog`,openOnboarding:`Open Onboarding`,trustNone:`No repo is listed yet, so there is no map to trust.`,allTrusted:`Every repo's map is trusted: its facts are verified and of the commit checked out.`,notTrusted:`Not trusted yet`,openTrust:`Open Map › Trust`,inFlight:`Changes in flight`,noChanges:`No change is in flight. Start one with atticus change new "<title>" --type <type>.`,stageCol:`Stage`,changeCol:`Change`,stateCol:`State`,commandCol:`Run`,slashTitle:`Slash commands in Copilot Chat and Claude Code`,slashIntro:`These slash commands are in Copilot Chat once atticus assistant-files has written them, and in Claude Code through the Atticus plugin. In each AI step your assistant does the model work and Atticus checks it.`,slashWhere:{metarepo:`the metarepo`,repo:`a code repo`},onbIntro:`Pick the repos, connect the knowledge sources, then run the steps in order. Each step is a command; this page shows which one is next.`,steps:`Steps, in order`,stepPick:`Pick the repos: edit the manifest. Each repo is one entry.`,stepPickNone:`There is no manifest yet. Propose one from a folder of clones or your Git host's organisation:`,stepAddOne:`Or add one repo at a time, saying what it is in your own words. That line goes into every reading prompt, the questions a join asks and these views:`,stepSync:`Clone the repos, or bring the clones up to date:`,stepRead:`Have your assistant read each repo and write its facts, each citing its line:`,stepWrite:`Check the facts against the code and put them in the catalog:`,stepAnswer:`Answer the questions the scan raised:`,stepAnswerLink:`Open the Questions page`,stepTrust:`See how far to trust each repo's map, and the files not read yet:`,done:`DONE`,todo:`TO DO`,repos:`Repos`,noRepos:`No repos in any manifest yet.`,repoCol:`Repo`,aboutCol:`What it is`,aboutDraft:`Unconfirmed draft`,aboutMissing:`Nothing says yet. Say what it is, in one line:`,typeCol:`Type in the manifest`,matchCol:`Matched repo type`,matchHint:`Run to see the match and its evidence:`,cloneCol:`Clone`,cloned:`CLONED`,notCloned:`NOT YET`,settingsCol:`Scan settings`,settingsMissing:`none yet`,lastScanCol:`In the catalog`,notScanned:`nothing yet`,recordCount:e=>`${e} fact${e===1?``:`s`}`,atCommit:e=>`at ${e.slice(0,7)}`,sources:`Knowledge sources`,sourcesMissing:e=>`${e} isn't there. Add a wiki with atticus sources add <type> <location>; it prints the entry to paste.`,sourcesNone:e=>`${e} lists no wikis or absorbed repos yet.`,sourcesFile:`File`,wikiCol:`Wiki`,kindCol:`Kind`,whereCol:`Location`,spacesCol:`Spaces`,ownerCol:`Owner`,absorbedTitle:`Absorbed repos`,syncSources:`Read the wikis:`,pickChange:`Change`,noChangeYet:`No change yet. Start one with atticus change new "<title>" --type <type>.`,noChangeTitle:`No change yet`,noChangeCommand:`atticus change new "<title>" --type <type>`,noChangeLink:`All changes lists every change once you start one.`,pickAChangeTitle:`Pick a change`,pickAChange:`This tab is about one change. Pick it in All changes, and every tab of Change follows it.`,openAllChanges:`Open All changes`,stageIs:e=>`This change is at the ${e} stage.`,goStage:e=>`Open ${e}`,files:`The change's files`,noFiles:`No files for this change yet.`,fileCol:`File`,statusCol:`Status`,tasks:`Tasks`,noTasks:`No tasks yet. Write them with atticus plan stories <change>.`,taskCol:`Task`,repoTaskCol:`Repo`,runCol:`Run it`,taskDone:`DONE`,taskOpen:`OPEN`,taskInRepo:e=>`Prints the same context for any assistant, to read before coding in ${e}.`,stage:{feature:`feature`,architecture:`architecture`,stories:`stories`,tasks:`tasks`,release:`release`,done:`done`},why:{discover:`There are no repos to work on until a manifest lists them.`,sync:e=>`${e} repo${e===1?` isn't`:`s aren't`} cloned yet.`,read:{"not-read":e=>`${e} isn't read yet: your assistant reads it and writes its facts, each citing its line, and atticus verify checks every one.`,unverified:e=>`${e}'s facts aren't verified yet: atticus verify checks each against the line it cites.`,rejected:e=>`Some of ${e}'s facts were rejected: your assistant fixes them from the rejected file, then verify runs again.`,stale:e=>`${e}'s facts are of another commit than its checkout: your assistant reads what changed again.`,unwritten:e=>`${e}'s facts are verified but not in the catalog yet: atticus verify --write puts them there.`},write:e=>`When the read is done, atticus verify ${e} --write checks the facts and puts them in the catalog.`,answer:e=>`${e} question${e===1?` is`:`s are`} waiting. Answer on the Questions page; it shows the command to rerun.`,onboarded:`Every repo is read and its facts verified. Map › Trust says how far to trust each repo's map; atticus next says what comes next.`,change:(e,t)=>`${e} is at the ${t} stage.`,newChange:`Everything is onboarded and no change is in flight. Start one.`,feature:`Your assistant places the change on the estate's flows and features; Atticus checks and criticises every draft until nothing blocks.`,architecture:`Your assistant writes the target flows; Atticus checks and criticises every draft until nothing blocks.`,stories:`Writes the stories, stories.md and tasks.md from the approved design.`,task:(e,t)=>`Task ${e} in ${t} is the next open one. /atticus-task gives your assistant its context: the story, the criteria, the step with today's code and the files to change.`,small:`A small change: your assistant places it, writes its target flows and words its stories in one step; Atticus runs every stage's checks and the critic at its gate.`,later:`The change is past this stage; its status says what it needs now.`,refresh:`The diagram is drawn from the catalog. When a repo's code has changed, your assistant reads it again and atticus verify --write puts its facts in the catalog.`,stageDone:(e,t)=>`The ${e} stage is done; the change now waits on its hand-off gate. ${t}`,stageBlocked:(e,t)=>`The ${e} stage is done, but the gate can't be raised yet: ${t}`,stageUnderWay:(e,t)=>t===`questions`?`The ${e} stage waits for answers to its questions; run it again once they are answered.`:t===`waiting`?`The ${e} stage is with your assistant: finish its hand-off, then run it again.`:t===`stopped`?`The ${e} stage stopped for a person to fix a file; run it again once it is fixed.`:`The ${e} stage is drafting; run it again to go on.`,critic:`Reviews the change's files against the checklists.`,handoff:`Opens the stage's hand-off PR; merging it approves the stage.`,questionsList:`Lists the open questions with their files.`},architectureIntro:`The diagram is drawn from the catalog. A change at the design stage shows its next step here.`},shell:{aiOff:`AI OFF`,textOnlyAi:`TEXT-ONLY AI`,aiIsOffIn:`AI is off in this organisation: no AI step runs; people write and the rule checks review.`,imageReadingIsOff:`Image reading is off: pictures go to a person in Intake.`,setYourGitUser:`SET YOUR GIT USER`,recordedAs:(e,t,n)=>`${e}${t} · recorded as ${n}`,askAtticus:`Ask Atticus`,askWhatBreaksIf:e=>`Ask: what breaks if ${e} changes?`,askNeutral:`Ask: who calls a component, or what breaks if a table changes?`,ask:`Ask`,help:`Help`,replayTheTour:`Replay the tour`,skipToContent:`Skip to content`},boundary:{couldntBeShown:e=>`${e} couldn't be shown`,somethingOnThisScreen:e=>`Something on this screen failed: ${e}. The other screens still work; reload to try again.`},flowView:{nodesInGroupsEdges:(e,t,n,r)=>`${e}: ${t} nodes in ${n} groups, ${r} edges.`,callsInsideIt:e=>`, ${e} calls inside it`,edgePointAtAnother:(e,t,n,r,i)=>`${e}: ${t} edge${n}${r}${i}. Point at another box, or click it again to clear.`,everythingHereIsOne:`Everything here is one system: open Container to see its components and how they connect.`,edgesPointAtA:e=>`${e} edges. Point at a box to light its edges; dashed lines are asynchronous.`},menu:{atticus:`ATTICUS`,askAtticus:`Ask Atticus`,morePages:`More pages`,keysMac:`Cmd+K`,keys:`Ctrl+K`,anyPage:e=>`${e}: any page`},palette:{askItem:e=>`Ask: ${e}`,askDetail:`answer from the catalog, with the query shown`,goToAScreen:`Go to a screen, change or record, or ask a question`,goToAScreen2:`Go to a screen, change or record… or ask a question`,nothingMatches:`Nothing matches.`,results:`Results`,toMoveEnterTo:`↑ ↓ to move · Enter to open · Esc to close`,goToAnything:`Go to anything`},tour:{tourOf:(e,t,n)=>`Tour · ${e} of ${t} · ${n}`,steps:{home:{title:`Your home`,body:`Home is one page. First what needs a person across every change (changes in each phase, blocking findings, open needs, questions and manual steps) and the step to run next; then what is read and trusted, and each change in flight with the stage it is at. Beside it: Map, Change, Questions, Knowledge and Set up. Everyone sees the same screens; Ctrl+K jumps anywhere.`},ask:{title:`Ask in plain words`,body:`Type a question such as “who calls <a component>?” or “what breaks if <a table> changes?” in the box at the top. Atticus answers from the catalog and always shows the query it ran.`},change:{title:`One change, a tab per stage`,body:`Change opens on All changes: pick one, and the tabs follow it. At a glance says where the change is and what blocks it; then a tab for each stage: feature, architecture, stories and tasks. Each shows that stage's files and the command to run next; Feature also lists the org knowledge that applies, to confirm or exclude. Watch a change you aren't on, and your digest says how it is doing.`},assistant:{title:`Run a step in your assistant`,body:`The AI steps run in your assistant, not here: type /atticus-next in Copilot Chat or Claude Code and it says what comes next and runs it when you ask. Its questions come back here to answer, and this page follows along.`},approve:{title:`Approving is the pull request`,body:`Each phase ends with a hand-off PR in the metarepo. Merging it approves the gate; your Git host's rules decide who may approve. Atticus records you by your Git user.`}},skipTheTour:`Skip the tour`,back:`Back`,next:`Next`,done:`Done`},glossary:{title:`What the words mean`,intro:`Atticus's own words, each in one plain sentence. atticus explain <word> says the same on the command line.`,link:`Words`,linkTitle:`What Atticus's words mean`,terms:[{term:`metarepo`,says:`The Git repo Atticus keeps for your estate: the catalog read from your repos' code, the changes in flight, the knowledge and the org pack. Its pull requests are how things get approved.`},{term:`org pack`,says:`Your organisation's settings for Atticus, in org-pack/: the repos and their types, the change types, the checklists and how AI runs here, changed through a pull request.`},{term:`catalog`,says:`What Atticus read from your code: systems, components, endpoints, tables, settings and how they connect, each citing the file and line it came from.`},{term:`estate`,says:`All your systems and the repos behind them, as the catalog describes them.`},{term:`flow`,says:`One path through your code from a trigger (an endpoint, a job, a message) to what it reads, writes and returns, step by step, read from the code.`},{term:`change`,says:`A piece of work from idea to release, kept in the metarepo with its brief, its design, its stories and its tasks.`},{term:`target flow`,says:`How a flow will run once a change is in: the steps it adds, changes or removes, with what each reads and writes.`},{term:`hand-off`,says:`The pull request in the metarepo that ends a phase of a change; merging it approves the phase's gate.`},{term:`gate`,says:`The point between two phases of a change where its findings are checked and a person approves, by merging the hand-off pull request.`},{term:`finding`,says:`Something the critic or a check raised about a change (blocking, a risk, a gap or an idea), citing where it is; a person decides what to do with it.`},{term:`critic`,says:`The AI reviewer that reads a change at a gate, one lens at a time, and raises findings.`},{term:`lens`,says:`One way the critic reads a change, such as security, data or architecture, each with its own rules.`},{term:`checking round`,says:`One more critic round after a gate's rounds are used, which reviews only what a person fixed.`},{term:`question`,says:`Something Atticus asked a person because the code doesn't say, with options and the lines it read; the answer is kept in the metarepo for the steps that read it.`},{term:`knowledge item`,says:`A fact read from a wiki or a document you added (a process, a standard, a decision, a team), quoted with its page, until a person verifies it.`},{term:`need`,says:`Something a change needs from the organisation, such as a firewall rule or an access request, with how to ask for it and who handles it.`},{term:`dialect`,says:`The rules that tell Atticus's scanner how to read one framework or language, your own house frameworks included.`},{term:`base clone`,says:`Atticus's own read-only copy of a repo, in the metarepo's workspace/, which the scans read; it never touches your working copy.`},{term:`slash command`,says:`A command you type in your assistant's chat, such as /atticus-next, that runs one Atticus step with the assistant's model.`},{term:`service desk`,says:`Your operations ticketing system, where a change's release and access requests are raised.`}]},filter:{label:`Filter`,placeholder:`Words to match, for example forge-ledger`,shown:(e,t)=>`${e} of ${t} shown`,words:e=>`“${e}”`,inRepo:e=>`in ${e}`,inChange:e=>`in ${e}`,among:e=>`among ${e}`,nothingMatches:e=>`Nothing matches ${e}.`,clear:`Clear the filter`,repo:`Repo`,allRepos:`All repos`},common:{nothingHereYet:`Nothing here yet.`,of:(e,t,n)=>`${e}: ${t} of ${n}`},across:{findings:`Findings`,tasks:`Tasks`,stories:`Stories`,tests:`Tests`,requests:`Requests`,releases:`Releases`,needs:`Needs`,change:`Change`,severity:`Severity`,finding:`Finding`,where:`Where`,state:`State`,task:`Task`,repo:`Repo`,what:`What`,done:`Done`,story:`Story`,title:`Title`,repos:`Repos`,written:`Written`,requirementsTested:`Requirements tested`,gaps:`Gaps`,firstGaps:`First gaps`,request:`Request`,for:`For`,missing:`Missing`,risk:`Risk`,next:`Next`,handOff:`Hand-off`,noFindingsOnAny:`No findings on any open change. Run the critic on a change to review it.`,noTasksYetTasks:`No tasks yet: tasks come with a change's plan.`,noStoriesYetWrite:`No stories yet: write them on a change's Breakdown.`,noOpenChangesTo:`No open changes to trace.`,noServiceRequestsDrafted:`No service requests drafted on any open change.`,noOpenChanges:`No open changes.`,notYet:`not yet`,noneOpen:`none open`,acrossChanges:`Across changes`,ofAcrossOpenChange:(e,t,n,r)=>`${e} of ${t} across ${n} open change${r}`,acrossOpenChanges:e=>`${e} across open changes`,nothingMatches:e=>`Nothing matches “${e}”.`,acrossChanges2:e=>`${e} across changes`,needsIntro:`Every open need of every open change: the requests to raise, the standards to follow and the teams to involve. Done, Not needed and Reopen work as on a change's page.`,needsShowAll:`Show the needs done or not needed too`,needsCount:(e,t)=>`${e} open need${e===1?``:`s`} across ${t} open change${t===1?``:`s`}`,needsNone:`No open needs on any change.`,needsNoChanges:`No open changes.`,needsOf:e=>`Needs of ${e}`,needsNotYet:e=>`${e} change${e===1?` hasn't`:`s haven't`} been looked at for needs yet`,needsCantRead:(e,t)=>`Couldn't read the needs of ${e}: ${t}`},changes:{define:`Define`,design:`Design`,plan:`Plan`,build:`Build`,release:`Release`,handOffPrOpened:`Hand-off PR opened. Reviewers approve it on the Git host; merging it approves the gate.`,syncedWithTheGit:`Synced with the Git host.`,criticRoundStartedThe:`Critic round started: the rule checks ran and any AI lens is with your assistant. Mark each run done below.`,theRuleChecksRan:`The rule checks ran. AI is off here, so no lens waits.`,checkedTheAnswer:`Checked the answer.`,readyToTryAgain:`Ready to try again.`,findAChange:`Find a change`,idTitleOrRepo:`Id, title or repo`,state:`State`,everyState:`Every state`,blocked:`Blocked`,blocked2:`BLOCKED`,noChangeMatches:`No change matches.`,changes:`Changes`,acrossAllChanges:`Across all changes`,noChangesYetStart:`No changes yet. Start one with atticus change new.`,currentPhase:e=>`${e}: current phase`,done:`done`,toCome:`to come`,phases:`Phases`,text:e=>`${e} text`,save:`Save`,close:`Close`,ifSomeoneSavedMeanwhile:`If someone saved meanwhile, Atticus refuses the save and asks you to reload.`,edit:e=>`Edit ${e}`,reason:`Reason`,reasonNeededToWaive:`Reason (needed to waive or dismiss)`,applyFix:`Apply fix`,owner:`owner`,ask:e=>`Ask ${e}`,notRelevant:`Not relevant`,waive:`Waive`,next:`Next`,risk:e=>`RISK ${e}`,handOff:(e,t,n)=>`${e} HAND-OFF · ${t}${n}`,whatBlocksTheHand:`What blocks the hand-off`,raiseHandOff:`Raise hand-off`,syncAndMergeWhen:`Sync and merge when approved`,runTheCriticYour:`Run the critic (your assistant)`,runTheRuleChecks:`Run the rule checks`,artifact:`Artifact`,status:`Status`,findings:`Findings`,actions:`Actions`,edit2:`Edit`,artifacts:`Artifacts`,checks:`checks`,noOpenFindingsOn:`No open findings on this change.`,openFindings:`Open findings`,done2:`DONE`,byHand:`BY HAND`,runWithAi:`Run with AI`,inputs:`Files attached`,promote:`Copy to general knowledge`,promoteFor:e=>`Copy ${e} to general knowledge`,promoted:e=>`${e} is copied to the metarepo's inputs/inbox/: general knowledge, read at the next sync. This change keeps its copy. Commit both through a pull request.`,attachLabel:`Attach a file`,attachHelp:`A spec, screenshot, PDF, email export or document. It is copied into the change's inputs/, and the change's steps read it as data, citing it by line or page.`,noInputs:`No file is attached yet.`,attached:e=>`Attached ${e}. The change's steps read it from now on.`,attachTooLarge:e=>`That file is ${e} MB; the app attaches files up to 15 MB. For a larger one, run atticus change attach in a terminal.`,inputFile:`File`,inputKind:`What it is`,inputWho:`Attached`,inputWhen:(e,t)=>`${e}, ${t.slice(0,10)}`,inputRead:(e,t)=>e===`text`?`Read, cited by ${t??`line`}`:`Not read: open it to see it`,inputOlder:e=>`Older version: ${e} replaces it`,inputHidden:`Hides instructions: kept out of every AI step until a person decides`,prototypes:`The prototype, compared`,noPrototypes:e=>`No prototype is attached. Compare one with the estate: atticus change attach ${e} --prototype <repo>`,prototypeMarker:`Prototype`,prototypeUnconfirmed:`a draft nobody has confirmed`,prototypeNoAbout:`Nothing says what it is yet.`,prototypeCounts:e=>`${e.exists} exist, ${e.changes} change, ${e.new} new, ${e.vendor} only a vendor provides`,prototypeGroup:{exists:`Exists`,changes:`Changes`,new:`New`,vendor:`Only a vendor`},prototypeGroupHelp:{exists:`The estate serves it as the prototype needs.`,changes:`The estate serves the operation, but not as the prototype needs.`,new:`Nothing in the estate serves it.`,vendor:`Only a vendor provides it, so it needs a route through the external gateway.`},prototypeNoCalls:`None.`,prototypeGroupCount:(e,t)=>`${e} · ${t}`,prototypeLeg:{"ui-bff":`UI to BFF`,"bff-mock":`BFF to mock`},prototypeCites:(e,t)=>`Prototype: ${e} → ${t}`,prototypeEstate:(e,t)=>`Estate: ${e} ${t}`,prototypeVendor:(e,t)=>`Vendor: ${e} ${t}`,prototypeLeft:e=>`${e} call${e===1?``:`s`} reach${e===1?`es`:``} nothing in the prototype and ${e===1?`isn't`:`aren't`} compared.`,noTasksYetThey:`No tasks yet: they come with the plan.`,tasks:`Tasks`,markDone:`Mark done`,retry:`Retry`,noAiRunsYet:`No AI runs yet.`,aiRuns:`AI runs`,pickAChangeOn:`Pick a change on the left, or start one with `,atticusChangeNew:`atticus change new`,noChangeSelected:`No change selected`},commandCenter:{select:e=>`Select ${e}`,bulkTitle:`Act on the selected items`,selected:e=>`${e} selected`,bulkAction:`What to do`,bulkNeedDone:e=>`Mark ${e} need${e===1?``:`s`} done`,bulkNeedNot:e=>`Mark ${e} need${e===1?``:`s`} not needed`,bulkStepSkip:e=>`Skip ${e} manual step${e===1?``:`s`}`,bulkTicket:`The ticket or note, for all of them`,bulkWhy:`Why, for all of them`,bulkDo:e=>`Do it for ${e}`,bulkClear:`Clear the selection`,bulkDone:(e,t)=>t?`Done for ${e}; ${t} couldn't be changed: open each to see why.`:`Done for ${e}.`,howStepsRun:`How AI steps run:`,howStepsRunChange:`Change in Set up › AI`,howStepsRunCantRead:`Atticus couldn't read how AI steps run here (org-pack/runtime.yaml).`,define:`Define`,design:`Design`,plan:`Plan`,build:`Build`,release:`Release`,theCatalogIsAccepted:`The catalog is accepted as the baseline, with your name, in catalog/baseline.yaml. Commit it and open a pull request: merging it makes it the baseline on main.`,changesInFlight2:`Changes in flight`,blockingFindings:`Blocking findings`,openOwnerQuestions:`Open owner questions`,factsInTheCatalog:`Facts in the catalog`,checksFromCode:`Checks from code`,aiLenses:`AI lenses`,done:` (done)`,toDo:` (to do)`,optional:` · optional`,acceptTheCatalogAs:`Accept the catalog as the baseline`,afterWalkingTheEcosystem:`After walking the ecosystem map with the architect. Every later scan, document and change is compared with it. It is a file in the metarepo, so it reaches main through a pull request.`,setUpAtticus:`Set up Atticus`,ofDone:(e,t)=>`${e} of ${t} done`,showMyDigest:`Show my digest`,sendItToMe:`Send it to me`,sentTo:e=>`Sent to ${e}.`,thingsNeedAttention:e=>`${e} things need attention.`,nothingIsBlockedRight:`Nothing is blocked right now.`,liveFromYourMetarepo:e=>`Live from your metarepo · you are ${e}`,liveFromYourMetarepo2:`Live from your metarepo`,approvingIsThePull:`Approving is the pull request: each phase ends with a hand-off PR, and merging it approves the gate. Your Git host decides who may approve.`,keyNumbers:`Key numbers`,currentPhase:e=>`${e}: current phase`,done2:`done`,toCome:`to come`,noChangeInFlight:`No change in flight. Start one with atticus change new.`,gatePipeline:e=>`Gate pipeline · ${e}`,gatePipeline2:`Gate pipeline`,interfacesInTheCatalog:`Interfaces in the catalog`,interfaces:`Interfaces`,theCatalogIsEmpty:`The catalog is empty. Read a repo first: atticus map <repo>, then atticus verify <repo> --write.`,systemMap:`System map`,explore:`Explore`,loading:`Loading…`,couldntLoadWhatNeeds:`Couldn't load what needs a person. Check that atticus ui is still running, then reload.`,nothingNeedsAPerson:`Nothing needs a person right now.`,needsAPerson:`Needs a person`,waitingOnYou:`Waiting on you`,waitingIntro:`What waits on a person across every change, by kind.`,waitQuestions:`Questions to answer`,waitNeeds:`Needs still open`,waitSteps:`Manual steps to do`,waitBlocking:`Blocking findings`,openNeeds:`Open needs`,byChangeIntro:`Grouped by change, changes with something blocking first; then what belongs to no change.`,noChangeGroup:`Not part of a change`,blocked:`BLOCKED`,groupCount:e=>`${e} waiting`,inState:e=>`in ${e}`,sectionNeeds:`Open needs`,sectionFindings:`Findings`,sectionSteps:`Manual steps`,sectionQuestions:e=>e?`Questions · ${e}`:`Questions`,sectionTriage:`To sort out`,sectionKnowledge:`Knowledge to verify`,knowledgeToVerify:e=>`${e} knowledge item${e===1?``:`s`} no one has verified yet`,knowledgeDetail:`Verify, correct or reject each against its page`,findings:e=>`${e} findings`,noOpenFindings:`No open findings.`,findingsByLens:`Findings by lens`,openFindingsBySource:`Open findings by source`,whereFindingsComeFrom:`Where findings come from`,records:e=>`${e} records`,noFactsYet:`No facts yet.`,catalog:`Catalog`,aPersonApprovesEvery:`A person approves every write · Atticus never touches live systems · every fact keeps its evidence`},explore:{evidence:`Evidence`,noEvidenceRecordedTreat:`No evidence recorded: treat this fact as unconfirmed.`,whatBreaksIfThis:`What breaks if this changes`,isOwnedBy:` is owned by `,theCatalogDoesntKnow:`The catalog doesn't know who owns `,yet:` yet.`,queryRun:`Query run: `,editItBelowTo:` · edit it below to refine`,ask:e=>`Ask: ${e}`,search:`Search`,tryDailyLimitKind:`Try: daily limit · kind:interface via:gateway · "ledger-db"`,wordsMatchIdsAnd:`Words match ids and names; `,kind:`kind:`,system:`system:`,status:`status:`,narrowIt:` narrow it.`,searchTheCatalog:`Search the catalog`,searchForAService:`Search for a service, a table, a topic, a term or a feature.`,searchResults:`Search results`,nothingMatchesTryFewer:`Nothing matches. Try fewer words.`,results:`Results`,theCatalogIsEmpty:`The catalog is empty. Read a repo first: atticus map <repo>, then atticus verify <repo> --write.`,around:e=>`Around ${e}`,theWholeEstate:`The whole estate`},knowCommon:{table:`Table`},design:{interfaces:`Interfaces`,tables:`Tables`,result:`Result`,what:`What`,next:`Next`,diagramLabel:`Diagram label`,matched:`Matched`,how:`How`,similar:`Similar`,context:`Context`,data:`Data`,events:`Events`,container:`Container`,sequence:`Sequence`,item:`Item`,party:`Party`,due:`Due`,forecast2:`Forecast`,status:`Status`,commitment:`Commitment`,neededBy:`Needed by`,noInTheCatalog:e=>`No ${e} in the catalog.`,evidence:`Evidence`,noEvidenceTreatIt:`No evidence: treat it as unconfirmed.`,thePathOfTheCall:`The path of the call`,scopesIt:e=>`scopes ${e}`,noScopeDemanded:`no scope demanded`,theCallerMeets:e=>`the caller meets ${e}`,thenReaches:e=>`then reaches ${e}`,noRouteRecordedFor:`The catalog has no gateway route for this call: only that it goes through a gateway.`,consumersAndDependants:`Consumers and dependants`,seeImpact:`See impact`,nothingInTheCatalog:`Nothing in the catalog depends on it.`,record:`Record`,apis:`APIs`,interfacesAndEvents:`Interfaces and events`,dataStores:`Data stores`,dataStoresComeFrom:`Data stores come from DDL, migrations, ORM mappings and DBA exports, never live databases.`,contractsList:`Contracts list`,contracts:`Contracts`,chooseAnApiAn:`Choose an API, an interface or a table to see its evidence and who depends on it.`,pickAContract:`Pick a contract`,contractsByKind:`Contracts by kind`,contractMix:`Contract mix`,ofInterfacesVerifiedFrom:(e,t)=>`${e} of ${t} interfaces verified from code`,aVendorSpecIs:`A vendor spec is a document until its caller is scanned; code wins when they differ.`,fieldMappings:`Field mappings`,verifiedFromCode:`Verified from code`,noDiagramsYetPut:`No diagrams yet. Put draw.io, Visio, Lucid CSV or Mermaid files under `,inputsDiagrams:`inputs/diagrams/`,orAddThemOn:` (or add them on `,intake:`Intake`,thenComeBack:`), then come back.`,reconcileADiagramAgainst:`Reconcile a diagram against the catalog`,edgesMatchCode:(e,t)=>`${e}/${t} edges match code`,toResolve:e=>`${e} TO RESOLVE`,inSync:`IN SYNC`,checkAgain:`Check again`,ofDrawnEdgesAgree:(e,t)=>`${e} of ${t} drawn edges agree with code`,drawnEdgesAgreeWith:`drawn edges agree with the code`,itemsToResolveBy:`Items to resolve by kind`,labelsMatchedToThe:(e,t)=>`${e}/${t} labels matched to the catalog`,noDiagramsCouldBe:`No diagrams could be read.`,diagrams:`Diagrams`,pickADiagram:`Pick a diagram.`,all:e=>`All ${e}`,filterItems:`Filter items`,everyDrawnEdgeAgrees:`Every drawn edge agrees with the code.`,itemsToResolve:`Items to resolve`,codeWinsOverA:`Code wins over a diagram: a conflict goes to `,triage:`triage`,untilAPersonDecides:` until a person decides.`,edgeByEdge:e=>`Edge by edge · ${e}`,edgeByEdge2:`Edge by edge`,ofEdgesAgreeWith:(e,t)=>`${e} of ${t} edges agree with code`,diagramLabels:`Diagram labels`,noMatch:`NO MATCH`,confirmANameWith:`Confirm a name with `,atticusAliasLabelId:`atticus alias "<label>" <id>`,itIsSavedTo:`; it is saved to the alias table.`,nameMatching:`Name matching`,view:`View`,system:`System`,drawnFromTheCatalog:`Drawn from the catalog; rebuilt whenever it changes. Edits happen in draw.io and come back through the metarepo.`,generatedViews:`Generated views`,nothingToDrawThe:e=>`Nothing to draw: the catalog has nothing for the ${e} view.`,theCatalogIsEmpty:`The catalog is empty. Read a repo first: atticus map <repo>, then atticus verify <repo> --write.`,view2:e=>`${e} view`,mermaidSource:`Mermaid source`,nothingToDrawFor:`Nothing to draw for this view yet.`,mermaid:`Mermaid`,copied:`Copied`,copy:`Copy`,diagramsUnder:`Diagrams under `,areComparedWithThe:` are compared with the catalog on `,reconcile:`Reconcile`,diagramsInTheMetarepo:`Diagrams in the metarepo`,writeTheDrawIo:`Write the draw.io shape library with `,atticusDiagramLibraryFile:`atticus diagram library <file>`,andLoadItIn:` and load it in draw.io, or in the draw.io integration for IntelliJ or VS Code: boxes keep their catalog ids.`,catalogShapeLibrary:`Catalog shape library`,nothingPlannedYet:`Nothing planned yet.`,today:e=>`today ${e}`,target:e=>`target ${e}`,timelineOfPlanItems:(e,t,n)=>`Timeline of ${e} plan items from ${t}; today ${n}`,changesParties:(e,t,n)=>`${e} · ${t} changes · ${n} parties`,noInitiativesYet:`No initiatives yet.`,startOneFromA:`Start one from a guided journey: `,atticusInitiativeNewTitle:`atticus initiative new "<title>" --journey new-feature`,initiatives:`Initiatives`,criticalPath:`Critical path`,planItems:`Plan items`,forecast:e=>` · forecast ${e}`,target2:(e,t)=>`Target ${e}${t}`,timeline:`Timeline`,noCommitmentsYet:`No commitments yet.`,commitments:`Commitments`,whoOwesWhat:`Who owes what`},know:{verifiedFromCode:`verified from code`,fromDocumentsOnly:`from documents only`,coverageBySystemAnd2:`Coverage by system and area`,component:`Component`,record:`Record`,kind:`Kind`,why:`Why`,owner:`Owner`,confirmedByPeople:`Confirmed by people`,foundInCodeOnly:`Found in code only`,unknown2:`Unknown`,code:`Code`,pattern:`Pattern`,interaction:`Interaction`,route:`Route`,target:`Target`,term:`Term`,definition:`Definition`,file:`File`,readAs:`Read as`,about:`About`,facts:`Facts`,status:`Status`,sync:`Sync`,scan2:`Scan`,repo:`Repo`,platform:`Platform`,type:`Type`,baseClone:`Base clone`,guideTo:e=>`Guide to ${e}`,guide:e=>`Guide · ${e}`,generatedFromTheCatalog:`Generated from the catalog`,theCatalogIsEmpty:`The catalog is empty. Read a repo first: atticus map <repo>, then atticus verify <repo> --write.`,around:e=>`Around ${e}`,ecosystemMap:`Ecosystem map`,showAll:`Show all`,clickANodeTo:`Click a node to centre it`,gaps:e=>` · ${e} gaps`,verified:(e,t,n)=>`${e}/${t} verified${n}`,factsVerifiedFromCode:e=>`${e}: facts verified from code`,noSystemsYet:`No systems yet.`,systems:`Systems`,coverageBySystemAnd:`Coverage by system and area`,notExpected:`not expected`,notExpected2:(e,t)=>`${e} · ${t}: not expected`,whatTheCatalogKnows:`What the catalog knows`,factsByRepo:{intro:`No System record says more yet, so this is what each repo's verified facts say. Map › Trust says how far to trust them.`,caption:`Facts by repo`,repo:`Repo`,entries:`Entries`,tables:`Tables`,calls:`Calls`,flows:`Flows`,none:`No repo has facts yet: read one with atticus map <repo>, then atticus verify <repo> --write.`,cantRead:e=>`${e}'s facts couldn't be read.`},ask:e=>` · ask ${e}`,ownerUnknown:` · owner unknown`,questionsForOwners:`Questions for owners`,noOpenQuestionsEvery:`No open questions: every gap has an answer.`,recordId:`Record id`,aComponentInterfaceTable:`A component, interface, table, column or topic id, e.g. ledger-db.account`,showImpact:`Show impact`,incidentModeOn:`Incident mode on`,incidentMode:`Incident mode`,findAnIdIn:`Find an id in the Knowledge explorer`,whatBreaksIfThis:`What breaks if this changes`,noOwnerRecordedFor:e=>`No owner recorded for ${e}.`,fromTheLastScan:`From the catalog. Atticus never connects to live systems, consoles or monitoring.`,ownersToCall:`Owners to call`,noAlertsDashboardsOr:`No alerts, dashboards or runbooks in the catalog for what it reaches.`,whatWatchesIt:`What watches it`,noChangeTouchesWhat:`No change touches what it reaches.`,recentNearbyChanges:`Recent nearby changes`,nothingDependsOnIt:`Nothing depends on it.`,blastRadiusOf:e=>`Blast radius of ${e}`,recordsAffectedBy:e=>`Records affected by ${e}`,hop:(e,t)=>`${e} hop${t}`,recordsHopsAway:(e,t)=>`${e} records ${t} hops away`,blastRadius:`Blast radius`,affectedRecords:`Affected records`,unknown:`UNKNOWN`,nothingDependsOnIt2:`Nothing depends on it in the catalog.`,affected:`Affected`,noGapsTheCatalog:`No gaps: the catalog knows every hop.`,readOnlyAtticusNever:`Read-only. Atticus never connects to live systems; this is the catalog's view.`,whatWouldSharpenThis:`What would sharpen this`,featuresByHowThey:`Features by how they were named`,entryPoints:e=>`${e} entry points`,features:`Features`,noFeaturesFoundYet:`No features found yet. Read the repos first.`,featuresFoundInCode:`Features found in code`,pickAFeature:`Pick a feature.`,noWorkItemsLinked:`NO WORK ITEMS LINKED`,item:`item`,entryPoints2:`Entry points`,recordsInTheFlow:e=>`Records in the flow (${e})`,knowledgeGaps:`Knowledge gaps`,noneEveryHopIs:`None: every hop is known.`,nameTagOrLink:`Name, tag or link it with `,atticusFeatureName:e=>`atticus feature name ${e} …`,featureTag:`feature tag`,or:` or `,featureLink:`feature link`,theChangeGoesIn:`: the change goes in by PR.`,feature:`Feature`,problems:(e,t)=>`${e} problems: ${t}`,valid:`VALID`,usingBuiltInDefaults:e=>`Using built-in defaults for ${e}.`,orgPack:`Org pack`,integrationPatterns:`Integration patterns`,noPatternsYet:`No patterns yet.`,rulesV:(e,t)=>`${e} rules · v${t}`,steps:e=>`${e} steps`,checklistsAndProcedures:`Checklists and procedures`,glossary:`Glossary`,needsADefinition:`NEEDS A DEFINITION`,noTermsYet:`No terms yet.`,filesInInputs:`files in inputs/`,files:`Files`,factsTaken:`Facts taken`,filesByStatus:`Files by status`,nothingYet:`Nothing yet.`,whatHappenedToThem:`What happened to them`,nothingHiddenOrAimed:`Nothing hidden or aimed at an AI reader. Ingested content is data, never instructions.`,defences:`Defences`,filesReadFromInputs:`Files read from inputs/`,noSystemNamed:`no system named`,quarantined:`QUARANTINED`,nothingInInputsYet:`Nothing in inputs/ yet. Drop diagrams, documents, API specs and exports there (or run atticus intake add <file>).`,intake:`Intake`,inputs:`inputs/`,eachChoiceIsSaved:`Each choice is saved as a curated decision in your name. Code always wins over a document until a person decides.`,nothingToTriage:`Nothing to triage.`,needsYou:`Needs you`,ofReposCloned:(e,t)=>`${e} of ${t} repos cloned`,reposClonedLocally:`repos cloned locally`,syncRepos:`Sync repos`,scanNow:`Scan now`,jobProgress:`Job progress`,jobState:{queued:`Waiting to start`,running:`Running`,done:`Done`,failed:`It stopped with problems`,cancelled:`Cancelled: it stopped before writing anything more`},cancelJob:`Cancel`,cancelling:`Stopping…`,cancelJobHint:`Stops at the next repo; what was already written stays.`,jobProblems:`What went wrong`,scansReadFilesOnly:`Scans read files only: no network, no AI.`,scan:`Scan`,repos:`Repos`,cloned:`CLONED`,notYet:`NOT YET`,noReposInAny:`No repos in any manifest yet.`,noFactsYet:`No facts yet.`,catalog:`Catalog`},phase:{theRuleChecksRan:`The rule checks ran; any AI lens is with your assistant. Finish each with atticus handoff done.`,theRuleChecksRan2:`The rule checks ran. AI is off here, so no lens waits.`,handOffPrRaised:`Hand-off PR raised. A person approves and merges it.`,syncedWithTheHand:`Synced with the hand-off PR.`,sourceField:`Source field`,targetField:`Target field`,rule:`Rule`,whenMissingOrInvalid:`When missing or invalid`,transform:`Transform`,record:`Record`,theStoryWritersPrompt:`The story writer's prompt is ready for your assistant.`,requirement:`Requirement`,story2:`Story`,test:`Test`,code:`Code`,gap:`Gap`,what:`What`,handOff:(e,t)=>` · hand-off ${e} ${t}`,approvalMerge:`Approval: merge `,pr:e=>`PR #${e}`,onTheGitHost:` on the Git host; that approves the gate.`,approvalRaiseTheHand:`Approval: raise the hand-off; merging its PR approves the gate.`,runTheCritic:`Run the critic`,runTheRuleChecks:`Run the rule checks`,raiseHandOff:`Raise hand-off`,syncAndMergeWhen:`Sync and merge when approved`,gate:`Gate`,notWrittenYetFor:`Not written yet for this change. It is drafted when the change reaches this phase, or by its agent.`,noSuchArtifact:e=>`This change has no ${e}. Atticus 2 writes a change's brief, design, stories and tasks in its stages instead: see Feature design, Architecture and Stories.`,text:e=>`${e} text`,edit:`Edit`,for:e=>` for ${e}`,question:(e,t)=>`Question${e}: ${t}`,noOpenFindingsOn:`No open findings on this. Run the critic to check it.`,criticFindings:`Critic findings`,open:e=>`${e} open`,featureBrief:`Feature brief`,prototypesAndUx:`Prototypes and UX`,dropADesignExport:`Drop a design export (frames as images or PDF, or a prototype link file) into `,inputs:`inputs/`,fromThe:` from the `,intake:`Intake`,screenAtticusReadsThe:` screen. Atticus reads the screens and states as data, drafts requirements from them into the UX artifact, and the UX lens checks loading, empty, error and done states and WCAG 2.1 AA contrast.`,bringInAPrototype:`Bring in a prototype`,repoPlansCompared:e=>`${e} repo plans compared`,noRepoPlansYet:`No repo plans yet: design compared with code`,inSync:`IN SYNC`,designVsPlansVs:`Design vs plans vs code`,architectureReview:`Architecture review`,everyHopInDesign:`Every hop in design.md carries a pattern code; the critic checks each against the code. Code wins over a diagram; conflicts go to triage.`,theOrgPackHas:`The org pack has no patterns yet.`,integrationPatterns:`Integration patterns`,orgPack:`Org pack`,vendorSpecsWhiteboardPhotos:`Vendor specs, whiteboard photos and standards go in through `,diagramsAreComparedEdge:`; diagrams are compared edge by edge on `,reconcile:`Reconcile`,ingestedContentIsData:`. Ingested content is data, never instructions.`,yourMaterial:`Your material`,noMappingChange:`NO MAPPING CHANGE`,fields:e=>`${e} FIELDS`,fieldMappingsFor:e=>`Field mappings for ${e}`,noFieldRowsYet:`No field rows yet for this hop.`,mappedTodayInThe:e=>`Mapped today in the catalog · ${e}`,catalogFieldMappingsFor:e=>`Catalog field mappings for ${e}`,theCatalogHasNo:`The catalog has no field mappings yet, so there is nothing to compare with.`,noHopsInMappings:`No hops yet. A change taken through the stages gets these from its target flows, in Architecture; a change with a mappings.md gets them from there — a section per hop: source field, target field, rule, and what happens when it is missing.`,readFromMappingsFile:`from mappings.md`,readFromTargetFlow:e=>`from the target flow ${e}`,fieldMappings:`Field mappings`,byHopWithThe:`by hop, with the catalog`,apiMappings:`API mappings`,eachHopsSourceField:`Each hop's source field, transform and target field are checked against the catalog's columns and schemas: a required target with no source, a narrowing type (80 to 40 characters) or personal data leaving the estate is a finding. Tests generated from the stories trace back to these rows on `,testTrace:`Test trace`,howMappingsAreChecked:`How mappings are checked`,ofStoriesReady:(e,t)=>`${e} of ${t} stories ready`,barMet:`BAR MET`,needs:e=>`NEEDS ${e}%`,noStoryCovers:e=>`No story covers: ${e}`,noStoriesYetWrite:`No stories yet. Write them with AI from the approved design.`,storyBar:`Story bar`,theStoryWriterDrafts:`The story writer drafts stories, acceptance criteria and repo tasks from the approved design. You edit them before the plan gate.`,writeStoriesWithAi:`Write stories with AI`,storiesAndTasks:`Stories and tasks`,breakdown:`Breakdown`,done:(e,t)=>`${e}/${t} done`,ofTasksDone:(e,t,n)=>`${e}: ${t} of ${n} tasks done`,done2:`DONE`,runWithAi:`Run with AI`,byHand:`BY HAND`,story:e=>` · story ${e}`,noTasksYetThey:`No tasks yet: they come from tasks.md once the stories are written.`,handDownPreview:`Hand-down preview`,tasksByRepo:`Tasks by repo`,tasks:e=>`${e} tasks`,ofRunsFinished:(e,t)=>`${e} of ${t} runs finished`,everyWriteIsApproved:`Every write is approved by a person; AI never pushes to protected branches.`,noRunsYet:`No runs yet.`,aiTaskRuns:`AI task runs`,taskBoard:`Task board`,tasksInCrossRepo:`Tasks in cross-repo order. Run a ready task with AI: Atticus hands the Spec Kit feature down to the repo, prepares the prompt for your assistant and reads the result back at the PR.`,everyRequirementShouldReach:`Every requirement should reach a story, a test, code and a release. Gaps are flagged before QA sign-off.`,requirementToCode:`Requirement to code`,noRequirement:`NO REQUIREMENT`,noStory:`NO STORY`,noTest:`NO TEST`,nothingToTraceYet:`Nothing to trace yet: the change has no requirements with scenarios.`,traceGaps:`Trace gaps`,noGapsEveryRequirement:`No gaps: every requirement reaches a story and a test.`,gapsBeforeQaSign:`Gaps before QA sign-off`,ofRowsHaveA:(e,t)=>`${e} of ${t} rows have a test`,ofTracedToA:(e,t)=>`${e} of ${t} traced to a test`,gapsByKind:`Gaps by kind`,scenarioCoverage:`Scenario coverage`,theTestStrategyAsks:`The test strategy asks for nothing extra here.`,requiredKindsComeFrom:`Required kinds come from the change type and risk in the org pack's test strategy. Tests are generated from story scenarios, then reviewed by a person.`,testKindsThisChange:`Test kinds this change needs`},notBuilt:{thisScreenIsBeing:`This screen is being built. Everything it will show is already available from the command line: run `,atticusHelp:`atticus --help`,toFindTheCommand:` to find the command.`},evals:{actedOn:(e,t)=>`${e} of ${t} acted on`,quarantinedNeverSentTo:`quarantined, never sent to a model`,everyCasePassed:`every case passed`,noFindingsResolvedYet:`no findings resolved yet`,everyCaseLatestRun:`every case, latest run`,noEvalRunYet:`no eval run yet`,scanningInputsAndThe:`Scanning inputs/ and the wiki folders again.`,testASkillBefore:`Test a skill before anyone relies on it.`,mode:`Mode`,mockNoModel:`Mock (no model)`,replaySavedAnswers:`Replay saved answers`,agent:`Agent`,everyAgent:`Every agent`,running:`Running…`,newEvalRun:`New eval run`,findingsKeptByPeople:`Findings kept by people`,agentsPassing:`Agents passing`,hiddenInstructionsHeld:`Hidden instructions held`,qualitySignals:`Quality signals`,met:`MET`,notMet:`NOT MET`,live:(e,t,n)=>`LIVE ${e}/${t} ${n}`,regressed:e=>`${e} REGRESSED`,passRate:e=>`${e} pass rate`,noEvalRunsYet:`No eval runs yet. Start one above (mock or replay).`,passRateByAgent:`Pass rate by agent`,ingestedContentIsData:`Ingested content is data, never instructions. A document with hidden or imperative text aimed at an AI reader is left out of every context pack until a person cleans the source. Facts verified from code are never overridden by a document.`,quarantined:`QUARANTINED`,marked:`MARKED`,hidden:` · hidden`,encoded:` · encoded`,line:(e,t,n,r)=>`line ${e} · ${t}${n}: ${r}`,flaggedTextOnLine:e=>`Flagged text on line ${e}, shown inert`,quarantined2:e=>`QUARANTINED · ${e}`,atticusNeverLetsA:e=>`Atticus never lets a quarantined source through on its own: clean or replace it, then scan again. Scanned ${e}.`,nothingRiskyInInputs:`Nothing risky in inputs/ or the wiki folders.`,scanAgain:`Scan again`,ingestedContentDefences:`Ingested-content defences`,quarantined3:e=>`${e} quarantined`,skipped:e=>` · ${e} skipped`,failed:e=>`${e} FAILED`,allPassed:`ALL PASSED`,noEvalRunsYet2:`No eval runs yet.`,evalRuns:`Eval runs`,approvedModelsLiveEvals:e=>`Approved models: ${e}. Live evals call a real model, so run them from a terminal: `,atticusEvalRunMode:`atticus eval run --mode live`,locked:`LOCKED`,availableOnceModelMode:e=>`Available once model mode is approved in runtime.yaml. It runs the same eval suite on each model and shows pass rate side by side. Not available in ${e} mode.`,compareModels:`Compare models`},governance:{allInTheExplorer:e=>`All ${e} in the explorer`,governance:`Governance`,theOrgPackConforms:`The org pack conforms.`,someRulesNeedA:`Some rules need a decision.`,fromTheFilesAnd:`From the files and the last scan`,ofConformanceChecksPass:(e,t)=>`${e} of ${t} conformance checks pass`,ofChecksPass:(e,t,n)=>`${e} of ${t} checks pass${n}.`,conformance:`Conformance`,orgPackChecks:`org pack checks`,constitutionRules:`Constitution rules`,locked:`LOCKED`,orgPackRules:`Org-pack rules`,teamRules:`Team rules`,activeWaivers:`Active waivers`,constitutionRulesCantBe:(e,t)=>`Constitution rules can't be waived or loosened. ${e} rules are in force; ${t} of them can be waived, each with a reason.`,refused:(e,t,n)=>`Refused ${e}${t}: ${n}`,rulesAndWaivers:`Rules and waivers`,rule:`Rule`,findings:`Findings`,dismissed:`Dismissed`,waived:`Waived`,overridden:`Overridden`,overridden2:e=>`${e} overridden`,acrossARuleDismissed:e=>`Across ${e}. A rule dismissed again and again is a candidate for a checklist change, reviewed in a PR.`,noCriticFindingsYet:`No critic findings yet, so nothing to measure.`,howOftenRulesAre:`How often rules are overridden`,by:(e,t)=>` · by ${e} ${t}`,reason:e=>`Reason: ${e}`,noActiveWaivers:`No active waivers.`,waivers:`Waivers`,sensitiveData:`Sensitive data`,columnsTaggedWithA:`Columns tagged with a data classification, and so where tagged fields live.`,noColumnsAreTagged:`No columns are tagged yet. Tag sensitive fields as curated decisions so their flows show here.`,authenticationGaps:`Authentication gaps`,callsWithNoOauth2:`Calls with no OAuth2, mTLS or API key declared in code or config.`,everyCallDeclaresHow:`Every call declares how it authenticates.`,timeoutsAndRetries:`Timeouts and retries`,timeoutAndRetrySettings:`Timeout and retry settings, to compare a caller's patience with what it calls.`,noTimeoutOrRetry:`No timeout or retry settings were found in code or config.`,retiring:`Retiring`,recordsPlannedForRetirement:`Records planned for retirement; check who still depends on them.`,nothingIsPlannedFor:`Nothing is planned for retirement.`,readOnlyBlastRadius:`Read-only blast radius from the catalog. Atticus never connects to live systems, consoles or monitoring. `,openTheImpactExplorer:`Open the impact explorer`,incidentMode:`Incident mode`},learning:{inProgress:`IN PROGRESS`,everyone:`Everyone`,youHaveFinishedThis:`You have finished this lesson.`,stepOf:(e,t)=>`Step ${e} of ${t}`,tryInTheSandbox:`Try in the sandbox`,copy:e=>`Copy ${e}`,checkMyWork:`Check my work`,hideTheHint:`Hide the hint`,showAHint:`Show a hint`,hint:e=>`Hint: ${e}`,lessonsRunOnlyIn:`Lessons run only in a practice sandbox: a throwaway copy of the invented Forge estate. No network, no real systems, no real data. This metarepo isn't one, so lessons are read-only here.`,aNewEmptyFolder:`A new, empty folder for the sandbox`,homeYouAtticusSandbox:`/home/you/atticus-sandbox`,makeASandbox:`Make a sandbox`,learning:`Learning`,practiceSandboxOfflineForge:`PRACTICE SANDBOX · OFFLINE FORGE`,notASandbox:`NOT A SANDBOX`,lessonsBuiltOnThe:`Lessons built on the Forge estate, with a sandbox to practise in. Nothing here touches a real system.`,ofLessonsDone:(e,t)=>`${e} of ${t} lessons done`,ofDone:(e,t)=>`${e} of ${t} done.`,progress:`Progress`,lessonsDone:e=>`${e} lessons done`,noLessonsAreInstalled:`No lessons are installed.`,progressByKindOf:`Progress by kind of work`,lessonsDone2:`lessons done`,practiseInASandbox:`Practise in a sandbox`,exercise:e=>`Exercise · ${e}`,done:`done`,writtenFor:`Written for`,min:(e,t,n)=>`${e} · ${t} min · ${n}`,continue:`Continue`,done2:`Done`,start:`Start`,lessonsRunInA:`Lessons run in a practice sandbox`,noLessonsWrittenFor:`No lessons written for this kind of work.`,lessonsAndExercisesUse:`Lessons and exercises use only the invented Forge ecosystem. A check passes from what the sandbox's files say, never from a model.`,lessons:`Lessons`},release:{atGoNoGo:`AT GO / NO-GO`,postReleaseReview:`POST-RELEASE REVIEW`,noneNeeded:`NONE NEEDED`,knowledgeGap:`knowledge gap`,approvedNotMerged:`APPROVED, NOT MERGED`,notRaised:`NOT RAISED`,goNoGoPr2:`Go / no-go PR opened. Reviewers decide on the Git host; merging it is the go.`,syncedWithTheGit:`Synced with the Git host.`,archivedItsReposWere:`Archived. Its repos were rescanned.`,changes:`Changes`,noChangesInFlight:`No changes in flight.`,next:`Next`,type:e=>`TYPE ${e}`,risk:e=>`RISK ${e}`,requests:`Requests`,snowMdListsNo:`snow.md lists no service-desk request.`,ofFiled:(e,t)=>`${e} of ${t} filed.`,findings:`Findings`,blocking:(e,t)=>`${e} blocking, ${t}.`,goNoGoPr:`Go / no-go PR`,approvedBy:e=>`; approved by ${e}`,mergingIsTheGo:(e,t)=>`Merging ${e} is the go${t}.`,goNoGoIs:`Go / no-go is the release hand-off PR: merging it is the go.`,archiveGate:`Archive gate`,opensOnceReleasedMerged:`Opens once released, merged, built and the catalog matches.`,gatesToGoLive:`Gates to go-live`,aPersonApprovesEvery:`A person approves every gate by merging its hand-off PR; the Git host decides who may approve, and the person who raised a PR can't be its only approver.`,askForGoNo:`Ask for go / no-go`,theChangeReachesGo:`The change reaches go / no-go after QA`,syncAndMergeWhen:`Sync and merge when approved`,readsThePrMerges:`Reads the PR; merges it as you once it is approved and the Git host's checks pass`,archive:`Archive`,archivesTheChangeAnd:`Archives the change and rescans its repos`,nothingStopsThisChange:`Nothing stops this change right now.`,whatStopsIt:`What stops it`,theChangeMayBe:`The change may be archived.`,alsoTouchesAgreeAn:e=>`Also touches ${e}. Agree an order before release.`,overlap:`OVERLAP`,noOtherOpenChange:`No other open change touches the same things.`,conflictsWithOtherChanges:`Conflicts with other changes`,forTheApprovalBoard:`For the approval board or an audit: one Markdown document generated from the change folder (summary, every file with its sha-256, critic rounds and waivers, approvals, trace, requests and steps, drift and AI runs), each item with its source.`,kb:e=>`${e} KB`,evidenceFiles:`Evidence files`,theChangeFolderIs:`The change folder is empty.`,evidencePack:`Evidence pack`,pickAChangeOn:`Pick a change on the left. Changes reach go / no-go after QA.`,noChangeSelected:`No change selected`},releaseViews:{gatewayRoute:`GATEWAY ROUTE`,rollout:`Rollout`,rollback2:`Rollback`,readiness:`Readiness`,verification:`Verification`,hypercare:`Hypercare`,onTrack:`ON TRACK`,atRisk:`AT RISK`,noTarget:`NO TARGET`,waitingForAPerson:`waiting for a person to file it`,notFiled:`not filed`,workingDay:`working day`,noLeadTimeTo:`, no lead time to forecast`,business:`Business`,technical:`Technical`,recorded:`Recorded.`,workedOutFromInterfaces:`Worked out from interfaces.md, data.md, stories.md and the catalog: a route before its caller, a topic before its publisher, a migration before the code that reads it, a callee before its caller.`,n0BeforeAnything:`0 · Before anything`,from:e=>` · from ${e}`,waitsOn:e=>`Waits on ${e}`,rollback:`Rollback`,deployOrder:`Deploy order`,beforeStep:e=>`, before step ${e}`,notPlaced:`Not placed`,criticReleaseLensStill:`Critic, release lens: still open`,nothingToDeployYet:`Nothing to deploy yet: interfaces.md, data.md, tasks.md and stories.md name no repo.`,deploymentPlan:`Deployment plan`,computed:`computed`,noDate:`No date`,released:`Released.`,readyToReleaseBy:e=>`Ready to release by this day at the earliest (${e} from today).`,target:(e,t)=>`Target ${e} (${t}).`,noTargetDateThe:`No target date: the change isn't part of an initiative with one.`,whatSetsTheDay:`What sets the day`,waitOnAService:e=>`; ${e} wait on a service request`,tasksOfDone:(e,t,n)=>`Tasks: ${e} of ${t} done${n}.`,forecast:`Forecast`,fromDatesNoEstimates:`from dates, no estimates`,rolloutReadinessAndHypercare:`Rollout, readiness and hypercare`,fromDesignMd:`from design.md`,signsOff:`Signs off`,copyTheSecurityReview:`Copy the security review draft`,interfacesMdListsNo:`interfaces.md lists no new or changed interfaces.`,newOrChangedInterfaces:`New or changed interfaces and their auth`,operation:`Operation`,callerCallee:`Caller → callee`,auth:`Auth`,crosses:`Crosses`,saidNowhere:`said nowhere`,no:`no`,dataFieldsTouched:`Data fields touched`,dataMdAddsNo:`data.md adds no fields.`,looksLikePersonalData:` (judged personal data)`,dataCrossingABoundary:`Data crossing a boundary`,noNewOrChanged:`No new or changed call crosses a system boundary.`,mappingsMdDoesntSay:`mappings.md doesn't say which fields it sends.`,vendorsSecretsAndFindings:`Vendors, secrets and findings`,aNewVendor:`a new vendor`,alreadyCalled:e=>`already called (${e})`,noVendorSecretOr:`No vendor, secret or open security finding.`,gapsForTheReviewer:`Gaps for the reviewer`,securityReviewDraft:`Security review draft`,fromTheCatalogAnd:`from the catalog and the change`,audience:`Audience`,copyTheReleaseNotes:`Copy the release notes`,releaseNotes:`Release notes`,generatedNoAi:`from the change folder; what breaks callers is judged`,measuredByOn:(e,t,n,r)=>`${e}, measured by ${t} on ${n}${r}`,notMeasuredYet:`Not measured yet.`,measured:`MEASURED`,open:`OPEN`,recordedButBriefMd:e=>`${e}: recorded, but brief.md no longer has this measure.`,measure:`Measure`,chooseAMeasure:`Choose a measure`,whatYouMeasured:`What you measured`,howOptional:`How (optional)`,as:e=>` as ${e}`,record:e=>`Record${e}`,recordAnOutcome:`Record an outcome`,briefMdHasNo:`brief.md has no "Success measures" section, so there is nothing to measure after release.`,outcomes:`Outcomes`,theBriefsSuccessMeasures:`the brief's success measures`,exportEvidencePack:`Export evidence pack`,evidenceMd:e=>`evidence-${e}.md`,copyEvidenceMd:e=>`Copy evidence-${e}.md`},serviceDesk:{toFile2:`TO FILE`,waitingForYou:`WAITING FOR YOU`,drafted:`Drafted.`,filedAsAStep:`Filed as a step.`,toFile3:`To file`,waitingForYou2:`Waiting for you`,filed:`Filed`,pastRequest:`past request`,requestTemplate:`request template`,draftTheRequestsA:`Draft the requests a change needs`,replaceASnowMd:`Replace a snow.md a person edited`,draftFromTheOrg:`Draft from the org pack's templates`,noChangesToDraft:`No changes to draft requests for.`,template:e=>`TEMPLATE ${e}`,noTemplateMatches:`NO TEMPLATE MATCHES`,leadTimeDays:e=>`Lead time ${e} days. `,noneNamed:`none named`,approversValuesComeFrom:(e,t)=>`${e}Approvers: ${t}. Values come from snow.md; edit them there.`,fields:`Fields`,copyAllFields:`Copy all fields`,required:` · required`,missingFillItIn:`Missing: fill it in snow.md`,empty:`Empty`,copy:e=>`Copy ${e}`,atticusNeverCallsThe:`Atticus never calls the desk from here. Filing makes a step in To-do with every field ready to copy; you submit it in the desk and record the number.`,fileSCompleteDrafts:e=>`File ${e}'s complete drafts as steps`,fillFirst:e=>`Fill ${e} first`,fillInSnowMd:e=>`Fill ${e} in snow.md before filing.`,filedAsStep:`Filed as step `,submitItInThe:`. Submit it in the desk, then `,recordTheRequestNumber:`record the request number in To-do`,filedAs:e=>`Filed as ${e}`,open:`open`,serviceDeskQueue:`Service desk queue`,toFile:e=>`${e} to file.`,nothingToFile:`Nothing to file.`,show:`Show`,draftsOnlyYouFile:`Drafts only: you file them. Next: the `,releasePlan:`release plan`,requests:`Requests`,noDraftsYet:`No drafts yet.`,queue:`Queue`,writesFromTheApp:`Writes from the app become steps you perform. Reads come from an export you load into inputs/.`,from:(e,t)=>`${e} from ${t}.`,noDeskExportLoaded:`No desk export loaded yet.`,inTheOrgPack:(e,t)=>`${e} ${t} in the org pack.`,serviceDeskAdapter:`Service desk adapter`,approveEachWrite:e=>`${e} · APPROVE EACH WRITE`,noneAllowedHere:`NONE ALLOWED HERE`,calledThroughTheCommon:`Called through the common step spec from `,toDo:`To-do`,noCredentialsPassTo:`. No credentials pass to the tool. `,executorsAllowList:`Executors allow-list`,localAutomationTool:`Local automation tool`,toFill:e=>` · ${e} to fill`,noneInThisView:`None in this view.`,noServiceDeskDrafts:`No service-desk drafts. Draft them for a change below.`,pickARequestOn:`Pick a request on the left.`,noRequestSelected:`No request selected`,draftRequests:`Draft requests`},systems:{title:`Systems`,pick:`Which system`,empty:`No system in the catalog yet: read the repos first.`,openPage:`Open its page`,inFlight:`Changes in flight in its repos`,noChanges:`No change in flight touches its repos.`,questions:`Open questions about it`,noQuestions:`No open question about it.`},cockpit:{title:`This change at a glance`,none:`No change yet: start one with atticus change new, and All changes lists it.`,where:`Where it is`,state:(e,t)=>`In ${e}, ${t} risk.`,stages:{feature:`Placement`,architecture:`Target flows`,stories:`Stories`},stageScreen:{feature:`feature-design`,architecture:`architecture`,stories:`stories`},marks:{done:`done`,current:`in progress`,todo:`to come`},stage:(e,t)=>`${e}: ${t}`,progress:(e,t,n)=>[`${e} draft${e===1?``:`s`}`,`${t} critic round${t===1?``:`s`}`,...n?[`${n} question${n===1?``:`s`} to answer`]:[]].join(`, `),next:`What's next`,copySlash:`Copy the slash command`,copyCommand:`Copy the command`,blocks:`What blocks it`,questions:e=>`${e} question${e===1?``:`s`} wait for a person`,repos:`Repos and branches`,noRepos:`No repo has a branch for this change yet: atticus workspace open makes them.`,branchOn:(e,t)=>`${e}, from ${t}`,pr:`the pull request`,watch:`Watch this change`,unwatch:`Stop watching`,watched:`You watch it: your digest says how it is doing.`,unwatched:`You no longer watch it.`,like:{title:`Earlier changes like this one`,intro:`Archived changes whose brief is nearest this one's. One you pick is attached to this change as an example its steps read, as data.`,byWords:e=>`By shared words, since ${e}.`,none:`No archived change is near this one yet.`,archived:e=>`archived ${e}`,use:`Use as an example`,used:`Attached to this change (Files attached): its steps read it as an example.`}},repos:{title:`Repos and their branches`,intro:`The catalog is read from each repo's default branch: that is the baseline, the one the hand-off PRs build on. Other branches people work on can be scanned beside it and compared with it, never merged into it.`,empty:`No repo is listed yet: run atticus repos discover <folder>, or add one to a repos.manifest.yaml.`,typeOwner:(e,t)=>`${e} · ${t}`,about:`What it is`,noAbout:`Nothing says yet`,aboutHint:`One line: what it is for, who uses it. It goes into every reading prompt, the questions a join asks and these views, so a repo whose id says nothing can still be read and placed. Up to 300 characters.`,aboutWhy:`A person's note, not read from the code: where the two disagree, the facts read from the code are what counts.`,aboutBy:e=>`said by ${e}`,aboutDraft:`Unconfirmed draft`,aboutDraftWhy:e=>`${e} drafted this from what it read. Until a person confirms it, it is marked unconfirmed everywhere it is used.`,aboutCites:`Read from`,editAbout:`Say what it is`,editAboutDraft:`Confirm, change or drop`,acceptAbout:`Confirm it`,rejectAbout:`Drop it`,aboutSaved:`Saved to the manifest: commit it in a pull request. Every reading prompt, question and view now says what this repo is.`,aboutDropped:`Dropped from the manifest: commit it in a pull request. Nothing says what this repo is now.`,aboutTooLong:e=>`One line, up to ${e} characters.`,aboutEmpty:`Say what it is, in one line, before saving.`,url:`URL`,defaultBranch:`Default branch`,atCommit:e=>`read at ${e}`,remoteSays:e=>`The remote's default is ${e}`,branches:`Other branches`,noBranches:`None listed`,branchesHint:`One a line, for example develop or release/2026.11. Each can be scanned beside the baseline.`,scanned:(e,t,n)=>`${e} scanned on ${t}, at ${n}`,scan:e=>`Scan ${e}`,scanStarted:e=>`Scanning ${e} beside the baseline: follow it on Scans.`,compare:(e,t)=>`Compare ${e} with ${t}`,comparedNow:`Compared.`,compared:(e,t,n,r)=>`${e} against the baseline: ${t} added, ${n} removed, ${r} changed.`,edit:`Edit branches`,save:`Save to the manifest`,saved:`Saved to the manifest: commit it in a pull request. Run atticus workspace sync if the default branch changed.`},aiSettings:{title:`How AI runs here`,intro:`Choose whether AI runs, which assistants your people use, and whether Atticus may call a model itself. Saving writes the org pack's runtime.yaml.`,aiLabel:`AI here`,ai:{on:`On: every AI step may run`,"text-only":`Text only: no step is given a picture`,off:`Off: no AI step runs; people write what agents would draft`},assistantsLabel:`Assistants your people use`,assistantsHint:`Atticus writes the slash commands, instructions and skills for each one ticked.`,defaultAssistant:`Default assistant`,modesLabel:`How a step runs`,modes:{"hand-off":`Hand-off: the person's own assistant does the step`,model:`Model: Atticus calls the provider below`,"headless-claude-code":`Headless Claude Code: Claude Code runs the step on this machine`},defaultMode:`Default`,providerLabel:`Model provider`,noProvider:`None: AI steps hand off to the person's assistant`,providerHint:`Used when a step runs in model mode. A key never goes here: name the environment variable that holds it in keyEnv. For a provider Atticus has no built-in for, add a plugin: atticus plugin add vertex, or your own in org-pack/plugins/model-providers/.`,pluginProvider:(e,t)=>t?`${e} (plugin)`:`${e} (plugin, not pinned yet: atticus plugin pin ${e})`,keySet:e=>`${e} is set on this machine.`,keyNotSet:e=>`${e} isn't set on this machine: set it to the key before testing.`,keyLabel:e=>`The key for ${e}`,setKey:`Set the key on this machine`,keyKept:e=>`Kept ${e} in this machine's credential store. It never goes in runtime.yaml.`,save:`Save`,saved:e=>`Saved ${e}. Commit it in a pull request: the org pack is reviewed like code.`,saveNote:e=>`Saving writes ${e}; commit it in a pull request.`,test:`Test the provider`,budgetsLabel:`Models and budgets`,modelsLabel:`Models allowed`,modelsHint:`One model id a line. Model mode refuses any other; empty allows any.`,defaultTokensLabel:`Tokens for a step`,perAgentLabel:`Tokens for an agent`,perAgentHint:`One a line, for example architect: 300000. Others get the tokens for a step.`,badDefaultTokens:`The tokens for a step must be a whole number above 0, such as 200000.`,badBudgetLine:e=>`"${e}" doesn't read as an agent and its tokens: write it as architect: 300000.`,answered:(e,t)=>`${e} answered in ${t} ms.`,notAnswered:e=>`It didn't answer: ${e}`},settings:{handOff:`Hand-off`,yourOwnAssistantCopilot:`Your own assistant (Copilot or Claude Code) does the work. Atticus builds the context pack, watches the branch, then checks the result.`,model:`Model`,directModelAccessThrough:`Direct model access through an approved gateway. Unlocks draft-and-PR runs and model comparisons.`,headlessClaudeCode:`Headless Claude Code`,claudeCodeRunsA:`Claude Code runs a task on its own in the change's worktree; a person still approves every write.`,workTracker:`Work tracker`,serviceDesk:`Service desk`,gitHost:`Git host`,wiki:`Wiki`,notifications:`Notifications`,designTool:`Design tool`,modelProvider:`Model provider`,liveFallsBackTo:`live; falls back to steps for a person when it can't be reached`,writesBecomeStepsIn:`writes become steps in To-do; reads come from exports`,inMemoryForTests:`in-memory, for tests and demos`,notSet:`NOT SET`,notConfigured:`not configured`,everyAiStepMay:`Every AI step may run, in the modes allowed below.`,textOnly:`TEXT ONLY`,noAiStepIs:`No AI step is given a picture; pictures go to a person in Intake.`,noAiStepRuns:`No AI step runs. People write what agents would draft, the rule checks review it, and no gate waits for an AI lens.`,saved:`Saved.`,assistants:`Assistants`,editors:`Editors`,models:`Models`,noneApproved:`none approved`,autonomy:`Autonomy`,contextBudget:`Context budget`,runRecords:`Run records`,buildEngine:`Build engine`,telemetry:`Telemetry`,platforms:`Platforms`,checkAgain:`Check again`,theSameChecksAs:`The same checks as `,atticusDoctor:`atticus doctor`,nothingLeavesThisMachine:`. Nothing leaves this machine, and no secret is shown.`,noChecksRan:`No checks ran.`,thisMachine:`This machine`,ready:`READY`,needsFixing:`NEEDS FIXING`,loading:`Loading`,yourDigestListsThe:`Your digest lists the hand-offs waiting on your review and the blocking findings on changes you own. Atticus sends it only when you press Send it to me on Home, or when your own scheduled job runs `,atticusDigestAsSend:e=>`atticus digest --as ${e} --send`,howOften:`How often`,off:`Off`,daily:`Daily`,weekly:`Weekly`,whereItGoes:`Where it goes`,aDirectMessage:e=>`@${e} (a direct message)`,save:`Save`,yourNotifications:`Your notifications`,atticusMeYaml:`.atticus/me.yaml`,settings:`Settings`,readOnlySetBy:`Read-only · set by the org pack, changed by PR`,aiInThisOrganisation:`AI in this organisation`,default:`DEFAULT`,allowed:`ALLOWED`,notApproved:`NOT APPROVED`,safetyInEveryMode:`Safety, in every mode:`,aPersonApprovesEvery:` a person approves every write, AI never pushes to protected branches or deploys, scans never call the network or a model, and ingested content is data, never instructions. These rules can't be configured.`,runtimeModes:`Runtime modes`,runtimeYaml:`runtime.yaml`,everyOutsideSystemSits:`Every outside system sits behind an adapter. When one can't be reached, a manual adapter turns writes into steps a person does.`,system:`System`,adapter:`Adapter`,testsAlwaysUseThe:`Tests always use the mock. Atticus never connects to live databases, consoles or monitoring.`,adapters:`Adapters`,builtInDefaultsFor:e=>`Built-in defaults for: ${e}.`,openTheOrgPack:`Open the org pack`,orgPack:`Org pack`,theCriticRunsAt:`The critic runs at every gate; the org pack can add checks, never remove lenses. Constitution rules can't be waived. A gate is approved when its hand-off PR merges; your Git host decides who may approve.`,gate:`Gate`,phase:`Phase`,checklists:`Checklists`,checks:`Checks`,authorRounds:`Author rounds`,noLimit:`no limit`,noGates:`No gates.`,gates:`Gates`,gatesYaml:`gates.yaml`,proceduresCallLocalAutomation:`Procedures call local automation tools through one step spec. A tool the org pack doesn't allow doesn't run, and no credentials are passed to a tool. Tools are set up per machine in .atticus/executors.yaml.`,noToolsAreSet:`No tools are set up on this machine.`,executor:`Executor`,kind:`Kind`,allowedFor:`Allowed for`,approval:`Approval`,nothingOff:`NOTHING (OFF)`,eachWrite:`each write`,procedureAllowsWhichIsnt:(e,t)=>`Procedure ${e} allows ${t}, which isn't set up here.`,checkTheyAnswer:`Check they answer`,addingAToolTo:`Adding a tool to the allow-list is an org-pack PR that its owners review.`,executorsAllowList:`Executors allow-list`,setUp:e=>`${e} set up`},runShared:{workTracker:`Work tracker`,serviceDesk:`Service desk`,gitHost:`Git host`,wiki:`Wiki`,notifications:`Notifications`,designTool:`Design tool`,copied:`Copied`,selectAndCopy:`Select and copy`,copy:`Copy`,notSet:`NOT SET`,manual:`MANUAL`,mock:`MOCK`,connected:e=>`CONNECTED · ${e}`},todo:{theseAreTheExact:`These are the exact inputs the tool gets. Approve them to run it.`,copiedTheFieldsAs:`Copied the fields as CSV, ready to import.`,allChanges:`All changes`,noChange2:`No change`,done2:`Done`,open2:`Open`,waitingOnOthers:`Waiting on others`,workItem:`work item`,choose:`Choose`,patDana:`pat, dana`,localTool:`LOCAL TOOL`,aToolOnThe:`A tool on the allow-list can do this step for you. You approve the exact inputs; it gets no credentials.`,tool:`Tool`,showTheInputs:`Show the inputs`,inputsTheToolGets:`Inputs the tool gets`,sha256:e=>`sha-256 ${e}…`,runWithIApprove:e=>`Run with ${e}, I approve these inputs`,manual:`MANUAL`,procedure:e=>`PROCEDURE ${e}`,whyThisIsManual:e=>`Why this is manual: ${e}. `,whereEveryValueComes:(e,t)=>`Where: ${e}. ${t}Every value comes from the change files. Nothing is sent until you do it.`,it:`it`,them:`them`,doFirstThisStep:(e,t)=>`Do ${e} first: this step depends on ${t}.`,fieldsToCopy:`Fields to copy`,copyAllFields:`Copy all fields`,copyAsCsv:`Copy as CSV`,empty:`Empty`,copy:e=>`Copy ${e}`,whenItsDoneRecord:`When it's done, record`,optional:` (optional)`,markDone:`Mark done`,reasonToSkip:`Reason to skip`,skipWithThisReason:`Skip with this reason`,done:`Done`,skipped:`Skipped`,byALocalTool:` (by a local tool)`,byOn:(e,t,n,r,i,a)=>`${e} by ${t} on ${n}${r}.${i}${a}`,toDoAndManual:`To-do and manual steps`,waitForAPerson:e=>`${e} wait for a person.`,nothingToDoEvery:`Nothing to do: every manual step is done.`,change:`Change`,stepsAPersonDoes:`Steps a person does in the work tracker, service desk or Git host when Atticus can't reach them.`,ofStepsDone:(e,t)=>`${e} of ${t} steps done`,steps:`Steps`,noManualStepsYet:`No manual steps yet.`,progress:`Progress`,open:e=>`${e} OPEN`,exportsInInputs:(e,t)=>`Exports in inputs/: ${e}, ${t}.`,noExportsInInputs:`No exports in inputs/ yet: drop a tracker or desk export there so Atticus can check results.`,whereStepsComeFrom:`Where steps come from`,allowListedToolsCan:`Allow-listed tools can do a step for you. A person approves each write and no credentials are passed. `,executorsAllowList:`Executors allow-list`,noToolsSetUp:`No tools set up on this machine (.atticus/executors.yaml).`,localAutomation:`Local automation`,noChange:`no change`,waits:`WAITS`,toDo:`TO DO`,openSteps:`Open steps`,noOpenSteps:`No open steps.`,pickAStepOn:`Pick a step on the left.`,step:`Step`,noStepSelected:`No step selected`,procedure2:`Procedure`,toolsAllowed:`Tools allowed`,writes:`Writes`,lastRun:`Last run`,noneOff:`none (off)`,notHere:` · not here`,setUpHere:`Set up here`,notSetUpOn:`Not set up on this machine`,neverRun:`never run`,theOrgPackHas:`The org pack has no procedures yet (process/procedures).`,eachRunShowsThe:`Each run shows the exact inputs first, waits for your approval, and logs what happened. Protected branches and deploys are never touched.`,proceduresALocalTool:`Procedures a local tool can run`,nothingDoneYet:`Nothing done yet.`,ownerNotKnown:`owner not known`,copyQuestionText:`Copy question text`,openChange:`Open change`,eachQuestionIsAsked:`Each question is asked once and the answer is reused at every gate. Asking happens outside Atticus: copy the text, then record the answer on the change.`,noOwnerQuestionsWaiting:`No owner questions waiting.`,ownerQuestionsWaiting:`Owner questions waiting`},dashboardExtra:{of:(e,t,n)=>`${e} of ${t} ${n}`},graph:{map:`Map`},me:{aiIsOffHere:`AI is off here, so write it yourself: the critic's rule checks still review it.`},flowsScreen:{thisFlow:`this flow`},flowsModel:{whoCallsThisEntry:`Who calls this entry point isn't known yet.`,callerNotKnown:`Caller not known`,calledByFlows:(e,t)=>t?`${e} and ${t} more`:e,start:`Start`},runs:{title:`Model runs`,intro:`What Atticus asked a model and what came back, for every AI step, newest first. A prompt and an answer are shown as text, as they were written.`,listTitle:`Runs`,caption:`Model runs, newest first`,cols:{step:`Step or change`,agent:`Agent`,model:`Model`,round:`Round`,state:`State`,answered:`Answered`,handedBack:`Handed back`,when:`When`},classes:{read:`Read`,draft:`Draft`,critic:`Critic`,knowledge:`Knowledge`,quick:`Quick`},modelCell:(e,t)=>`${t??`Not recorded`}${e?` · ${e}`:``}`,modelNotRecorded:`Not recorded`,yes:`Yes`,notYet:`Not yet`,problems:e=>e===0?`Nothing`:e===1?`1 problem`:`${e} problems`,states:{prepared:`Prepared`,waiting:`Waiting for its answer`,produced:`Answered, not checked yet`,validated:`Passed the checks`,failed:`Failed`,cancelled:`Cancelled`},empty:`No model runs yet. A run is listed here once an AI step starts: run one from its page, or with its command or slash command.`,emptyFor:e=>`No model runs for ${e} yet.`,onlyFor:e=>`Only the runs of ${e}.`,showAll:`Show every run`,pick:`Open a run from the list to read what it was asked and what it answered.`,back:`Back to every run`,missing:e=>`There is no run ${e}. It may have been removed from .runs/.`,runTitle:(e,t)=>`${e}, round ${t}`,prompt:`Prompt`,answer:`Answer`,noAnswer:`No answer yet: the run is waiting for one.`,handedBack:`Handed back`,noneHandedBack:`Nothing was handed back: this is the step's first round.`,roundProblems:e=>`Round ${e}: the problems the checks found`,failedAnswer:e=>`The answer round ${e} gave`,noFailedAnswer:`The answer that failed them isn't in the prompt.`,tools:{title:`What the model looked up`,offered:(e,t)=>`Read-only tools offered: ${e||`none`}. The model called them ${t===1?`once`:`${t} times`}.`,stopped:e=>`A cap stopped the tool calls (${e}).`,call:(e,t,n,r)=>`Round ${e}: ${t}, ${n} tokens back${r?`, refused`:``}`,returned:e=>`What ${e} gave back`},retrieval:{title:`How the context was found`,expansion:(e,t)=>`The model read the input first${e?` (run ${e})`:``}${t?`, an answer kept from before`:``}.`,terms:e=>`Search terms: ${e||`none`}.`,name:(e,t,n,r)=>`${e}: ${t?`the index's ${t}`:n?`new in this change`:`nothing in the index`} ("${r}")`,dropped:(e,t)=>`Left out: ${e}, ${t}.`,rerank:(e,t,n)=>`The model ordered ${e} candidates. Kept, in its order: ${t||`none`}. Judged not needed: ${n||`none`}.`,rerankIgnored:e=>`The model's order of ${e} candidates named one it wasn't shown, so the engine's order stood.`,meaning:e=>`Meaning: ${e}.`},rounds:`Rounds of this step`,round:e=>`Round ${e}`,thisRound:`(this one)`,facts:{agent:`Agent`,runtime:`Runs with`,stepClass:`Kind of step`,model:`Model`,state:`State`,started:`Started`,finished:`Finished`,size:`Prompt size`,file:`Prompt file`},tokens:e=>`${e} tokens`,textBox:e=>`${e}, scrolls on its own`,forChange:e=>`Model runs for ${e}`,knowledge:`Model runs of the knowledge steps`,surveys:`Model runs of the surveys`,all:`Every model run`},history:{title:`Prompt history`,intro:`What people asked their assistant in this metarepo and what it answered, by session, newest first. It is kept on this machine only, in .atticus/history/, and never committed. Each prompt and response is shown as text, as it was written.`,what:`Recorded: prompts and replies in Claude Code with the Atticus plugin, and @atticus requests and replies in VS Code. Copilot's other chats can't be recorded: VS Code gives extensions no access to them, and Copilot in IntelliJ gives plugins no chat at all.`,recordingOn:`Recording is on. atticus history off stops it on this machine.`,offOrgPack:`Recording is off for everyone: the org pack's runtime.yaml says history: { record: false }. What was kept before is still here.`,offLocal:`Recording is off on this machine: atticus history on turns it back on. What was kept before is still here.`,empty:`No prompts yet. With the Atticus plugin in Claude Code, or @atticus in VS Code, each prompt and reply in this metarepo is listed here.`,change:`Change`,everyChange:`Every change`,session:e=>`Session ${e}`,surfaces:{"claude-code":`Claude Code`,vscode:`VS Code, @atticus`,cli:`Command line`},onlySession:e=>`Only session ${e}.`,showAll:`Show every session`,prompt:`Prompt`,response:`Response`,noResponse:`No response yet.`,command:`Command`,about:`About`,box:(e,t)=>`${e} ${t}, scrolls on its own`,truncated:e=>`Cut at 64 KB: the text was ${e} bytes.`,masked:`Parts that looked like a secret were masked (***) before it was kept.`,newest:(e,t)=>`The newest ${e} of ${t} turns. atticus history --limit n lists more.`,turns:e=>e===1?`1 turn`:`${e} turns`},runStep:{withCopilot:`Run with Copilot`,withModel:e=>`Run with ${e}`,running:`Running…`,busy:`The step is running. The button comes back when it ends.`,hintCopilot:`Copilot runs it in VS Code, with your consent, and the checks read its answer.`,hintModel:e=>`The server runs it with ${e}, as runtime.yaml sets, and the checks read its answer.`,started:e=>`Started on the server with ${e}.`,progress:`Progress`,output:`What the step printed`,ends:{done:`Done: the step finished.`,handoff:`Handed off: the prompt waits for its answer.`,question:`It asked a question: answer it in Waiting on you, then run the step again.`,stopped:`It stopped: its checks found problems. Read the run to see them.`,failed:`It failed.`,cancelled:`Cancelled.`,"too-long":`It stopped: the prompt was too long for the model.`,"no-consent":`It didn't run: Copilot wasn't allowed to use the model.`,"no-model":`It didn't run: no Copilot model is available.`,"model-error":`It stopped: the model answered with an error.`,"too-many-rounds":`It stopped: the checks still found problems after the last round.`},refused:e=>`It didn't run: ${e}`,ended:e=>`It ended: ${e}.`,openRun:`Read the run in Model runs`,openRuns:`Open Model runs`,cancel:`Cancel`,cancelling:`Stopping…`,cancelHint:`Stops the model call; nothing from this run is kept.`,cantStart:e=>`Couldn't start it: ${e}`},nextStep:{releasePlan:`Release plan`},evidence:{cite:e=>`Where this was found: ${e}`,citeOf:(e,t)=>`Where this was found: ${t}, ${e}`,loading:`Reading the facts for this line…`,quote:`The line, as the reader quoted it`,noQuote:`No quote was kept for this line.`,facts:e=>`${e} fact${e===1?``:`s`} on this line`,by:{assistant:`read by the assistant`,reader:`read by a built-in reader`,person:`a person's fact`},verified:{line:`checked on its line by atticus verify`,sample:`checked by a sample session`,person:`confirmed by a person`,none:`not checked yet: run atticus verify`},gaps:{unverified:`No fact verified from code cites this`,question:`A question is open on this`,corrected:`A person corrected this; atticus verify applies it`},short:{unverified:`unproven`,question:`question open`,corrected:`corrected`},noFacts:e=>`${e} has no facts yet: what is drawn from it comes from the built-in readers, not from a read the verifier checked.`,openQuestion:`Answer it`,correct:`Correct this`,correctFact:e=>`Correct the fact ${e}`,close:`Close`,correctTitle:e=>`Correct ${e}`,correctIntro:`Say the fact is wrong, or put the claim right. Atticus writes your correction to the repo's corrections file; atticus verify applies it every time it runs, so the next read keeps it. A corrected claim is still checked on its line: the code must say it.`,wrong:`It is wrong`,edit:`Put the claim right`,reason:`Why (required to mark it wrong)`,reasonOptional:`Why (optional)`,line:`Line it is on`,save:`Save the correction`,saving:`Writing the correction…`,needReason:`Say why the fact is wrong first.`,nothingChanged:`Change a field or the line first.`,saved:e=>`Written to ${e}. Commit it with the metarepo's other files, then run atticus verify to apply it:`,copyCommit:`Copy the git command`,copyVerify:`Copy the verify command`,correction:(e,t)=>e===`wrong`?`Marked wrong by ${t}`:`Corrected by ${t}`,links:`Links`,noLinks:`No link starts or ends here in this view.`,linkOf:(e,t,n)=>`${e} ${n} ${t}`},stageReview:{title:`What the critic found`,intro:`The critic's findings on this stage's latest draft, each with what you can do about it: make the fix, say it isn't relevant, waive it where the rule allows, or ask its owner. Or leave a comment: the stage's next run gives it to your assistant as your answer, with the next draft.`,notRun:`This stage hasn't run for this change yet, so there is nothing to review. Run it first:`,noRound:e=>e?`The critic hasn't reviewed a draft at the ${e} gate yet. The stage runs it on each draft that passes its checks.`:`No gate in gates.yaml reviews this stage's phase, so the critic doesn't run here.`,clean:(e,t)=>`Nothing found at the ${e} gate, round ${t}.`,round:(e,t,n)=>`${n} finding${n===1?``:`s`} at the ${e} gate, round ${t}`,loopState:{drafting:`The stage is drafting.`,waiting:`The stage waits on your assistant's answer.`,questions:`The stage waits on the questions below.`,stopped:`The stage stopped: its assistant couldn't fix what was found.`,done:`The stage is done.`},severity:{blocking:`Blocking`,gap:`Knowledge gap`,risk:`Risk`,idea:`Idea`},state:{open:`Open`,applied:`Fixed`,dismissed:`Not relevant`,waived:`Waived`,asked:`Asked`},where:`Where`,why:`Why`,fix:`The fix`,options:`What you can do`,apply:`Make the fix`,applyFor:e=>`Make the fix for ${e}`,dismiss:`Not relevant`,dismissFor:e=>`Not relevant: ${e}`,waive:`Waive`,waiveFor:e=>`Waive ${e}`,ask:e=>`Ask ${e}`,askFor:(e,t)=>`Ask ${t} about ${e}`,cantWaive:`This rule can't be waived: fix it, or say it isn't relevant with why.`,reason:e=>`Why, for ${e} (needed for not relevant and waive)`,needReason:`Write why first: not relevant and waive need a reason.`,acted:e=>`Recorded: ${e}.`,actions:{apply:`the fix is made`,"not-relevant":`not relevant`,waive:`waived`,ask:`asked of its owner`},resolved:(e,t)=>`${e} by ${t}`,proposed:(e,t)=>`Proposed by the assistant (${e}) as ${t===`fixed`?`fixed`:`not relevant`}, waiting on a person`,question:e=>`The question for ${e}`,comments:`Comments`,comment:e=>`Your comment on ${e}`,commentHint:`Say what the next draft should do about it. Your words go to the assistant as your answer.`,saveComment:`Save the comment`,savingComment:`Writing the comment…`,needComment:`Write the comment first.`,read:`read by a draft`,unread:`not read yet: run the stage`,commented:e=>`Written to ${e}. Commit them, then run the stage again: its next draft reads your comment.`,copyCommit:`Copy the git command`,questions:`The stage's questions`,noQuestions:`The stage has no question for a person.`,answered:e=>`Answered: ${e}`,answerIt:e=>`Answer: ${e}`,next:`Then run the stage again`,nextWhy:`It reads your answers, comments and choices, drafts again where they ask, and the critic checks the new draft.`,pickForArchitecture:`Pick a change to see what the critic found in its architecture.`}},D=class extends Error{problem;constructor(e){super(e.detail??e.title),this.problem=e}};function ee(){return document.querySelector(`meta[name="atticus-token"]`)?.content??``}function te(e=!1){return{type:`about:blank`,title:`Server not answering`,status:0,detail:e?E.app.offlinePanel:E.app.offline}}var O=`atticus:server`,k=!1;function ne(e){e!==!k&&(k=!e,typeof dispatchEvent==`function`&&dispatchEvent(new CustomEvent(O,{detail:{up:e}})))}var re=e=>e===E.app.offline||e===E.app.offlinePanel;function ie(e,t){if(e)try{return JSON.parse(e)}catch{throw new D({type:`about:blank`,title:`Not an Atticus answer`,status:t,detail:E.app.notJson(t)})}}var ae=`The Atticus app isn't answering`;async function A(e,t={}){let n=T();if(n){let r=await n.call(e,{method:t.method??`GET`,...t.body===void 0?{}:{body:t.body}});if(t.signal?.aborted)throw new DOMException(`Aborted`,`AbortError`);if(r.status===503&&r.body?.title===ae)throw ne(!1),new D(te(!0));if(ne(!0),r.status<200||r.status>=300)throw new D(r.body??{type:`about:blank`,title:`Request failed`,status:r.status});return r.body}let r,i;try{r=await fetch(e,{method:t.method??`GET`,headers:{"X-Atticus-Token":ee(),...t.body===void 0?{}:{"Content-Type":`application/json`}},...t.body===void 0?{}:{body:JSON.stringify(t.body)},...t.signal?{signal:t.signal}:{}}),i=await r.text()}catch(e){throw t.signal?.aborted?e:(ne(!1),new D(te()))}ne(!0);let a=ie(i,r.status);if(!r.ok)throw new D(a??{type:`about:blank`,title:r.statusText||`Request failed`,status:r.status});return a}function j(e){let[t,n]=(0,v.useState)({state:`loading`}),[r,i]=(0,v.useState)(0),[a,o]=(0,v.useState)(!1),[s,c]=(0,v.useState)(),l=(0,v.useCallback)(()=>i(e=>e+1),[]),u=(0,v.useRef)(!1);return(0,v.useEffect)(()=>{if(!e)return;let t=new AbortController;return u.current&&o(!0),A(e,{signal:t.signal}).then(e=>n({state:`ready`,data:e}),e=>{t.signal.aborted||n({state:`error`,error:e instanceof Error?e.message:String(e),...e instanceof D&&e.problem.notYet?{notYet:!0}:{}})}).finally(()=>{t.signal.aborted||(u.current=!0,o(!1),c(Date.now()))}),()=>t.abort()},[e,r]),{...t,reload:l,refreshing:a,...s===void 0?{}:{at:s}}}var oe=e=>e.type===`file.changed`||e.type===`run.changed`||e.type===`index.rebuilt`;function se(...e){let t=(0,v.useRef)(e);t.current=e,M(e=>{if(oe(e))for(let e of t.current)e?.reload()})}function M(e){let t=(0,v.useRef)(e);t.current=e,(0,v.useEffect)(()=>{let e=T();if(e)return e.onEvent(e=>t.current(e));let n,r=!1,i=500,a=()=>{if(r)return;let e=new URL(`/api/events`,location.href);e.protocol=e.protocol===`https:`?`wss:`:`ws:`,e.searchParams.set(`token`,ee()),n=new WebSocket(e),n.onmessage=e=>{try{t.current(JSON.parse(String(e.data)))}catch{}},n.onopen=()=>{i=500},n.onclose=()=>{r||(setTimeout(a,i),i=Math.min(i*2,1e4))}};return a(),()=>{r=!0,n?.close()}},[])}var ce=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),N=o(((e,t)=>{t.exports=ce()}))(),le=E.common;function ue(e){return t=>{t.key!==`Escape`||t.defaultPrevented||t.nativeEvent.isComposing||(t.preventDefault(),t.stopPropagation(),e())}}function P(e){let t=e.labelledBy??(e.title?`p-${e.title.toLowerCase().replace(/[^a-z0-9]+/g,`-`)}`:void 0);return(0,N.jsxs)(`section`,{className:`panel ${e.kind??``}`,"aria-labelledby":e.title?t:void 0,style:{gridColumn:e.span,gridRow:e.rows},children:[e.title&&(0,N.jsxs)(`div`,{className:`row between`,style:{marginBottom:10},children:[(0,N.jsx)(`h2`,{id:t,className:`h`,children:e.title}),e.meta&&(0,N.jsx)(`span`,{className:`hud`,children:e.meta})]}),e.children]})}function F(e){return e.of.state===`loading`?(0,N.jsxs)(`div`,{className:`stack`,"aria-busy":`true`,"aria-live":`polite`,children:[(0,N.jsx)(`span`,{className:`sr`,children:E.app.loading}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`80%`}}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`60%`}}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`70%`}})]}):e.of.state===`error`&&e.of.notYet?(0,N.jsx)(`div`,{className:`state`,children:e.of.error}):e.of.state===`error`?(0,N.jsx)(de,{error:e.of.error,retry:e.of.reload}):e.empty?.(e.of.data)?e.emptyContent===void 0?(0,N.jsx)(`div`,{className:`state`,children:e.emptyText??le.nothingHereYet}):(0,N.jsx)(N.Fragment,{children:e.emptyContent}):(0,N.jsx)(N.Fragment,{children:e.children(e.of.data)})}function de({error:e,retry:t}){return(0,N.jsxs)(`div`,{className:`state error`,role:`alert`,children:[(0,N.jsx)(`p`,{style:{margin:0},children:E.app.cantLoad(re(e)?E.app.offlineShort:e)}),t&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,style:{marginTop:8},onClick:t,children:E.app.tryAgain})]})}function fe({href:e,children:t}){return(0,N.jsxs)(`a`,{href:e,target:`_blank`,rel:`noreferrer noopener`,children:[t,(0,N.jsxs)(`span`,{className:`sr`,children:[` `,E.app.newTab]})]})}function pe(e){let[t,n]=(0,v.useState)(!1);return(0,N.jsxs)(`span`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.of.refreshing,onClick:()=>{n(!0),(e.run??e.of.reload)()},children:e.of.refreshing?E.app.checking:e.label}),(0,N.jsx)(`span`,{role:`status`,className:`muted`,style:{fontSize:12},children:t&&!e.of.refreshing&&e.of.at?E.app.checkedAt(new Date(e.of.at).toTimeString().slice(0,8)):``})]})}function me(e){let t=e.size??56,n=t/2-5,r=2*Math.PI*n,i=e.max>0?Math.min(e.value/e.max,1):0;return(0,N.jsxs)(`svg`,{role:`img`,"aria-label":e.label,width:t,height:t,viewBox:`0 0 ${t} ${t}`,children:[(0,N.jsx)(`circle`,{cx:t/2,cy:t/2,r:n,fill:`none`,stroke:`var(--track)`,strokeWidth:4}),(0,N.jsx)(`circle`,{cx:t/2,cy:t/2,r:n,fill:`none`,stroke:e.color??`var(--accent)`,strokeWidth:4,strokeLinecap:`round`,strokeDasharray:`${r*i} ${r}`,transform:`rotate(-90 ${t/2} ${t/2})`,style:{filter:`drop-shadow(0 0 var(--glow-size) ${e.color??`var(--accent)`})`}}),(0,N.jsx)(`text`,{x:t/2,y:t/2+5,textAnchor:`middle`,fill:`var(--text)`,fontFamily:`Rajdhani, sans-serif`,fontWeight:700,fontSize:t/4,children:e.text??`${e.value}/${e.max}`})]})}function I(e){let t=e.parts.reduce((e,t)=>e+t.value,0),n=2*Math.PI*26,r=0;return(0,N.jsxs)(`div`,{className:`row`,style:{gap:12},children:[(0,N.jsxs)(`svg`,{role:`img`,"aria-label":`${e.title}: ${e.parts.map(e=>`${e.label} ${e.value}`).join(`, `)}`,width:70,height:70,viewBox:`0 0 70 70`,children:[(0,N.jsx)(`circle`,{cx:35,cy:35,r:26,fill:`none`,stroke:`var(--track)`,strokeWidth:10}),e.parts.map(e=>{let i=t?e.value/t*n:0,a=(0,N.jsx)(`circle`,{cx:35,cy:35,r:26,fill:`none`,stroke:e.color,strokeWidth:10,strokeDasharray:`${i} ${n}`,strokeDashoffset:-r,transform:`rotate(-90 35 35)`},e.label);return r+=i,a})]}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0,display:`flex`,flexDirection:`column`,gap:5,fontSize:11.5},children:e.parts.map(e=>(0,N.jsxs)(`li`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,style:{width:8,height:8,borderRadius:2,background:e.color}}),e.label,` `,e.value]},e.label))})]})}function he(e){let t=e.max>0?Math.round(e.value/e.max*100):0;return(0,N.jsx)(`div`,{role:`img`,"aria-label":le.of(e.label,e.value,e.max),className:`track`,children:(0,N.jsx)(`span`,{style:{width:`${t}%`,background:e.color,boxShadow:e.color?`0 0 10px ${e.color}`:void 0}})})}var ge=E.knowCommon;function _e(e,t,n=!1){let r=j(n?void 0:`/api/view/${e}${t?`/${encodeURIComponent(t)}`:``}`);return r.state===`ready`?{state:`ready`,data:r.data.data,reload:r.reload}:r}function ve(e,t){let n=e.split(`?`)[1];return n?new URLSearchParams(n).get(t)??void 0:void 0}function ye(e,t,n){location.hash=`#/${e}?${t}=${encodeURIComponent(n)}`}function be(e,t){let n=j(`/api/changes`),r=ve(e,`change`)??(n.state===`ready`?n.data[0]?.id:void 0);return{id:r,picker:(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:E.app.changePicker}),(0,N.jsxs)(`select`,{value:r??``,onChange:e=>ye(t,`change`,e.target.value),disabled:n.state!==`ready`||n.data.length===0,style:{height:32,background:`var(--box)`,color:`var(--text)`,border:`1px solid var(--line-2)`,borderRadius:7,padding:`0 8px`,font:`inherit`},children:[n.state===`ready`&&n.data.length===0&&(0,N.jsx)(`option`,{value:``,children:E.app.noChanges}),n.state===`ready`&&n.data.map(e=>(0,N.jsxs)(`option`,{value:e.id,children:[e.id,` · `,e.state]},e.id))]})]}),none:n.state===`ready`&&n.data.length===0,list:n}}function xe(e){return(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsx)(P,{title:e.title,span:`1 / -1`,children:e.list.state===`error`?(0,N.jsx)(de,{error:e.list.error,retry:e.list.reload}):(0,N.jsxs)(`div`,{"aria-busy":`true`,"aria-live":`polite`,children:[(0,N.jsx)(`span`,{className:`sr`,children:E.app.loading}),(0,N.jsx)(`div`,{className:`skeleton`})]})})})}function Se(e){return e.split(/(`[^`]+`|\*\*[^*]+\*\*|_\([^)]*\)_)/).map((e,t)=>e.startsWith("`")&&e.endsWith("`")&&e.length>1?(0,N.jsx)(`code`,{className:`mono`,style:{fontSize:`0.92em`,color:`var(--accent)`},children:e.slice(1,-1)},t):e.startsWith(`_(`)&&e.endsWith(`)_`)?(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:`0.85em`},children:e.slice(1,-1)},t):e.startsWith(`**`)&&e.endsWith(`**`)&&e.length>3?(0,N.jsx)(`strong`,{children:e.slice(2,-2)},t):e)}var Ce=e=>e.trim().replace(/^\|/,``).replace(/\|$/,``).split(`|`).map(e=>e.trim());function we({text:e}){let t=[],n=[],r=[],i=[],a=()=>{if(i.length&&t.push((0,N.jsx)(`p`,{style:{margin:`4px 0 8px`,lineHeight:1.6,color:`var(--text-2)`},children:Se(i.join(` `))},`p${t.length}`)),i=[],n.length&&t.push((0,N.jsx)(`ul`,{style:{margin:`4px 0 8px`,paddingLeft:20,lineHeight:1.6},children:n.map((e,t)=>(0,N.jsx)(`li`,{children:Se(e)},t))},`l${t.length}`)),n=[],r.length){let[e,...n]=r,i=n.filter(e=>!/^\s*\|?\s*:?-{2,}/.test(e));t.push((0,N.jsx)(`div`,{style:{overflowX:`auto`,position:`relative`,margin:`6px 0 10px`},tabIndex:0,role:`region`,"aria-label":E.app.scrollTable(Ce(e).join(`, `)),children:(0,N.jsxs)(`table`,{style:{borderCollapse:`collapse`,width:`100%`,fontSize:12},children:[(0,N.jsx)(`thead`,{children:(0,N.jsx)(`tr`,{children:Ce(e).map((e,t)=>(0,N.jsx)(`th`,{className:`hud`,style:{textAlign:`left`,fontWeight:400,fontSize:10,padding:`4px 10px 6px 0`},children:e},t))})}),(0,N.jsx)(`tbody`,{children:i.map((e,t)=>(0,N.jsx)(`tr`,{style:{borderTop:`1px solid var(--rule)`,verticalAlign:`top`},children:Ce(e).map((e,t)=>(0,N.jsx)(`td`,{style:{padding:`6px 10px 6px 0`,color:`var(--text-2)`},children:Se(e)},t))},t))})]})},`t${t.length}`))}r=[]},o=!1,s=[];for(let c of e.split(`
|
|
10
|
+
`)){let e=c.trimEnd();if(/^```/.test(e)){o?(t.push((0,N.jsx)(`pre`,{className:`mono`,tabIndex:0,role:`region`,"aria-label":E.app.scrollCode,style:{fontSize:11.5,background:`var(--box)`,border:`1px solid var(--line)`,borderRadius:8,padding:10,overflowX:`auto`},children:s.join(`
|
|
11
|
+
`)},`c${t.length}`)),s=[]):a(),o=!o;continue}if(o){s.push(c);continue}let l=/^(#{1,4})\s+(.*)$/.exec(e),u=/^\s*(?:[-*]|\d+\.)\s+(?:\[[ xX]\]\s+)?(.*)$/.exec(e);if(e.trimStart().startsWith(`|`)){if(n.length){let e=r;r=[],a(),r=e}r.push(e)}else if(r.length&&a(),l){a();let e=l[1].length;t.push((0,N.jsx)(`div`,{className:e<=2?`h`:`hud`,style:{margin:`12px 0 6px`,fontSize:e<=1?16:e===2?14:11},children:Se(l[2])},t.length))}else u?(i.length&&a(),n.push(u[1])):!e.trim()||/^<!--/.test(e)?a():(n.length&&a(),i.push(e.trim()))}return a(),(0,N.jsx)(`div`,{children:t})}function Te(e){return e instanceof D?e.problem.detail??e.problem.title:e instanceof Error?e.message:String(e)}function Ee(){let[e,t]=(0,v.useState)(!1),[n,r]=(0,v.useState)();return{busy:e,note:n,run:async(e,n)=>{t(!0),r({ok:!0,text:E.app.working,working:!0});try{await e(),r({ok:!0,text:n})}catch(e){r({ok:!1,text:Te(e)})}finally{t(!1)}}}}function De({note:e}){return e?(0,N.jsx)(`p`,{role:e.ok?`status`:`alert`,"aria-busy":e.working?!0:void 0,style:{margin:`8px 0 0`,whiteSpace:`pre-line`,color:e.working?`var(--text-2)`:e.ok?`var(--green)`:`var(--magenta-text)`,fontSize:12.5},children:e.text}):null}function Oe(e){return(0,N.jsx)(`div`,{style:{overflowX:`auto`,position:`relative`},tabIndex:0,role:`region`,"aria-label":e.caption??ge.table,children:(0,N.jsxs)(`table`,{style:{width:`100%`,borderCollapse:`collapse`,fontSize:12.5,minWidth:480},children:[e.caption&&(0,N.jsx)(`caption`,{className:`sr`,children:e.caption}),(0,N.jsx)(`thead`,{children:(0,N.jsx)(`tr`,{className:`hud`,style:{textAlign:`left`,fontSize:10},children:e.cols.map(e=>(0,N.jsx)(`th`,{scope:`col`,style:{padding:`4px 8px 6px 0`,fontWeight:400,width:e.width},children:e.label},e.label))})}),(0,N.jsx)(`tbody`,{children:e.rows.map(t=>(0,N.jsx)(`tr`,{style:{borderTop:`1px solid var(--rule)`,verticalAlign:`top`},children:e.cols.map(e=>(0,N.jsx)(`td`,{className:e.mono?`mono`:void 0,style:{padding:`7px 8px 7px 0`,wordBreak:`break-word`},children:e.cell(t)},e.label))},e.rowKey(t)))})]})})}var ke=e=>Array.isArray(e)?e.join(`, `):e==null?``:String(e),Ae=E.flowView;function je(e,t=5){return e.length<=t?e.join(`, `):`${e.slice(0,t).join(`, `)} and ${e.length-t} more`}var Me=(e,t=0)=>t?`${e} · ${t} inside`:e,Ne=6.6,Pe=22,Fe=10,Ie=96,Le=24,Re=10,ze=24,Be=16,Ve=e=>Math.max(64,Math.ceil(e.length*Ne)+18),He=e=>(Math.round(e*10)/10).toString();function Ue(e){let t=new Map;for(let n of e.edges)n.from===n.to&&t.set(n.from,(t.get(n.from)??0)+1);let n=t=>{let n=e.nodes.find(e=>e.id===t);return n?.group?`group:${n.group}`:`node:${t}`},r=[...e.nodes.filter(e=>!e.group).map(e=>`node:${e.id}`),...e.groups.filter(t=>e.nodes.some(e=>e.group===t.id)).map(e=>`group:${e.id}`)].sort(),i=new Map(r.map(e=>[e,new Set]));for(let t of e.edges){let e=n(t.from),r=n(t.to);e!==r&&i.has(e)&&i.has(r)&&i.get(r).add(e)}let a=new Map;for(;a.size<r.length;){let e=r.filter(e=>!a.has(e)),t=e.filter(e=>[...i.get(e)].every(e=>a.has(e)));if(!t.length){let n=e=>[...i.get(e)].filter(e=>!a.has(e)).length;t=[e.reduce((e,t)=>n(t)<n(e)?t:e)]}for(let e of t)a.set(e,Math.max(0,...[...i.get(e)].filter(e=>a.has(e)).map(e=>a.get(e)+1)))}let o=new Map,s=new Map;for(let n of r){if(n.startsWith(`node:`)){let r=e.nodes.find(e=>`node:${e.id}`===n);s.set(n,{w:Ve(Me(r.label,t.get(r.id))),h:Pe});continue}let r=e.groups.find(e=>`group:${e.id}`===n),i=e.nodes.filter(e=>e.group===r.id),a=Math.ceil(i.length/Be),c=Math.ceil(i.length/a),l=Math.max(...i.map(e=>Ve(e.label)));o.set(n,i.map((e,t)=>({id:e.id,col:Math.floor(t/c),row:t%c,w:l}))),s.set(n,{w:Math.max(Ve(r.label)+12,a*l+(a-1)*Fe+20),h:ze+c*Pe+(c-1)*Fe+Re})}let c=[...new Set(a.values())].sort((e,t)=>e-t),l=new Map,u=Le,d=0,f=[];for(let e of c){let t=r.filter(t=>a.get(t)===e);for(let e=0;e<t.length;e+=Be){let n=t.slice(e,e+Be),r=Math.max(...n.map(e=>s.get(e).w)),i=n.reduce((e,t)=>e+s.get(t).h,0)+(n.length-1)*Fe*2;f.push({units:n,x:u,h:i}),d=Math.max(d,i),u+=r+Ie}}for(let e of f){let t=Le+(d-e.h)/2;for(let n of e.units){let r=s.get(n);l.set(n,{x:e.x,y:t,w:r.w,h:r.h}),t+=r.h+20}}let p=new Map,m=new Map;for(let e of r){let t=l.get(e);if(e.startsWith(`node:`))p.set(e.slice(5),t);else{m.set(e.slice(6),t);for(let n of o.get(e))p.set(n.id,{x:t.x+Re+n.col*(n.w+Fe),y:t.y+ze+n.row*32,w:n.w,h:Pe})}}let h=e.edges.filter(e=>e.from!==e.to&&p.has(e.from)&&p.has(e.to)).map(e=>{let t=p.get(e.from),n=p.get(e.to),r=t.y+t.h/2,i=n.y+n.h/2,a;if(n.x>t.x+t.w){let e=t.x+t.w,o=(e+n.x)/2;a=`M${He(e)} ${He(r)} C${He(o)} ${He(r)} ${He(o)} ${He(i)} ${He(n.x)} ${He(i)}`}else{let e=Math.max(0,Math.min(t.x,n.x)-40);a=`M${He(t.x)} ${He(r)} C${He(e)} ${He(r)} ${He(e)} ${He(i)} ${He(n.x)} ${He(i)}`}return{id:e.id,from:e.from,to:e.to,label:e.label,async:e.async,d:a}}),g=[...p.values(),...m.values()];return{width:Math.max(320,...g.map(e=>e.x+e.w+Le)),height:Math.max(160,...g.map(e=>e.y+e.h+Le)),nodes:p,groups:m,edges:h,inside:t}}function We({view:e,height:t=460,selected:n,highlight:r=[],onPick:i}){let a=(0,v.useMemo)(()=>Ue(e),[e]),[o,s]=(0,v.useState)(n),c=new Set(r),l=e=>o!==void 0&&(e.from===o||e.to===o),u=t=>e.nodes.find(e=>e.id===t)?.label??t,d=o?a.edges.filter(l):[];return(0,N.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[(0,N.jsx)(`div`,{style:{overflow:`auto`,maxHeight:t,border:`1px solid var(--line-2)`,borderRadius:8},children:(0,N.jsxs)(`svg`,{role:`group`,"aria-label":Ae.nodesInGroupsEdges(e.title,e.nodes.length,e.groups.length,e.edges.length),width:a.width,height:a.height,viewBox:`0 0 ${a.width} ${a.height}`,style:{display:`block`},children:[(0,N.jsx)(`defs`,{children:(0,N.jsx)(`marker`,{id:`flow-arrow`,viewBox:`0 0 8 8`,refX:`7`,refY:`4`,markerWidth:`7`,markerHeight:`7`,orient:`auto`,children:(0,N.jsx)(`path`,{d:`M0 0 L8 4 L0 8 z`,fill:`var(--accent)`})})}),e.groups.map(e=>{let t=a.groups.get(e.id);return t?(0,N.jsxs)(`g`,{children:[(0,N.jsx)(`rect`,{x:t.x,y:t.y,width:t.w,height:t.h,rx:8,fill:`var(--wash)`,stroke:`var(--accent)`,strokeOpacity:.35,strokeDasharray:e.kind===`datastore`?void 0:`3 4`}),(0,N.jsx)(`text`,{x:t.x+Re,y:t.y+16,fontFamily:`Rajdhani, sans-serif`,fontWeight:700,fontSize:12,letterSpacing:`0.08em`,fill:`var(--flow-label)`,children:e.label})]},`group-${e.id}`):null}),(0,N.jsx)(`g`,{fill:`none`,children:a.edges.map(e=>(0,N.jsx)(`path`,{d:e.d,stroke:l(e)?`var(--accent-soft)`:`var(--accent)`,strokeOpacity:o===void 0?.45:l(e)?1:.12,strokeWidth:l(e)?1.6:1,strokeDasharray:e.async?`5 4`:void 0,markerEnd:`url(#flow-arrow)`,children:(0,N.jsx)(`title`,{children:`${u(e.from)} → ${u(e.to)}${e.label?`: ${e.label}`:``}`})},e.id))}),e.nodes.map(e=>{let t=a.nodes.get(e.id);if(!t)return null;let n=o===e.id;return(0,N.jsxs)(`g`,{tabIndex:0,role:`button`,"aria-label":`${e.label} (${e.kind})`,"aria-pressed":n,style:{cursor:`pointer`,outline:`none`},onMouseEnter:()=>s(e.id),onFocus:()=>s(e.id),onClick:()=>{s(n?void 0:e.id),i?.(e.id)},children:[(0,N.jsx)(`rect`,{x:t.x,y:t.y,width:t.w,height:t.h,rx:e.kind===`table`?3:6,fill:n?`var(--picked-on)`:c.has(e.id)?`var(--picked-strong)`:`var(--box)`,stroke:n||c.has(e.id)?`var(--accent-soft)`:e.kind===`table`?`var(--flow-table)`:`var(--accent)`,strokeWidth:n?1.6:1}),(0,N.jsx)(`text`,{x:t.x+9,y:t.y+15,fontFamily:`JetBrains Mono, monospace`,fontSize:11,fill:n?`var(--text)`:`var(--accent-pale)`,children:Me(e.label,a.inside.get(e.id))})]},e.id)})]})}),(0,N.jsx)(`p`,{className:`muted`,style:{fontSize:12,margin:0},"aria-live":`polite`,children:o?Ae.edgePointAtAnother(u(o),d.length,d.length===1?``:`s`,d.length?` (${je([...new Set(d.map(e=>e.label).filter(Boolean))])})`:``,a.inside.get(o)?Ae.callsInsideIt(a.inside.get(o)??0):``):e.type===`context`&&e.nodes.length===1?Ae.everythingHereIsOne:Ae.edgesPointAtA(a.edges.length)})]})}var Ge=E.graph,Ke=new Set([`event-bus`,`pubsub`,`mq`]),qe={System:`system`,Component:`component`,Table:`table`,Endpoint:`topic`};function Je(e,t=Ge.map){let n=new Set(e.nodes.map(e=>e.system).filter(e=>!!e)),r=e.nodes.filter(e=>e.kind===`System`&&n.has(e.id)).map(e=>({id:e.id,label:e.label||e.id,kind:`system`})),i=new Set(r.map(e=>e.id)),a=e.nodes.filter(e=>!i.has(e.id)).map(e=>({id:e.id,label:e.label||e.id,kind:qe[e.kind]??`box`,...e.system&&i.has(e.system)?{group:e.system}:{}})),o=new Map;for(let t of e.edges){if(i.has(t.from)||i.has(t.to))continue;let e=`${t.from}\u0000${t.to}\u0000${t.via}`,n=o.get(e);n?n.n++:o.set(e,{id:t.id,from:t.from,to:t.to,via:t.via,n:1})}return{type:`context`,title:t,groups:r,nodes:a,edges:[...o.values()].map(e=>({id:e.id,from:e.from,to:e.to,label:e.n>1?`${e.n} × ${e.via}`:e.via,async:Ke.has(e.via)}))}}function Ye({g:e,focus:t,highlight:n=[],onPick:r,height:i=430}){let a=(0,v.useMemo)(()=>Je(e),[e]);return(0,N.jsx)(We,{view:a,height:i,...t?{selected:t}:{},highlight:n,...r?{onPick:r}:{}},t??``)}var L=E.know,Xe={verified:{bg:`var(--cov-verified)`,label:L.verifiedFromCode},"document-only":{bg:`var(--cov-doc)`,label:L.fromDocumentsOnly},unknown:{bg:`var(--cov-unknown)`,label:`unknown`}};function Ze({system:e,link:t}){let n=j(`/api/guide/${encodeURIComponent(e)}`);return(0,N.jsx)(P,{title:L.guide(e),span:`1 / -1`,meta:t?(0,N.jsx)(`a`,{href:`#/systems?system=${encodeURIComponent(e)}`,children:E.systems.openPage}):L.generatedFromTheCatalog,children:(0,N.jsx)(F,{of:n,children:t=>(0,N.jsx)(`div`,{tabIndex:0,role:`region`,"aria-label":L.guideTo(e),style:{maxHeight:560,overflowY:`auto`,paddingRight:6},children:(0,N.jsx)(we,{text:t.markdown})})})})}function Qe(e){let t=t=>e.facts.filter(e=>e.kind===t),n=new Set(t(`store`).map(e=>`${e.claim.store??``}.${e.claim.name??``}`));return{repo:e.repo,entries:t(`entry`).length,tables:n.size,calls:t(`call`).length,flows:t(`flow`).length}}function $e(e){let t=j(e?`/api/trust`:void 0),[n,r]=(0,v.useState)({state:`loading`}),i=t.state===`ready`?t.data.repos.filter(e=>e.facts.present).map(e=>e.repo).join(` `):void 0,a=t.state===`error`?t.error:void 0;return(0,v.useEffect)(()=>{if(a!==void 0)return r({state:`error`,error:a});if(i===void 0)return;let e=!0;return Promise.all(i.split(` `).filter(Boolean).map(e=>A(`/api/facts/${encodeURIComponent(e)}`))).then(t=>e&&r({state:`ready`,data:t.map(Qe)}),t=>e&&r({state:`error`,error:t instanceof Error?t.message:String(t)})),()=>{e=!1}},[i,a]),n}function et({of:e}){let t=L.factsByRepo;return(0,N.jsx)(F,{of:e,empty:e=>e.length===0,emptyText:t.none,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[t.intro,` `,(0,N.jsx)(`a`,{href:`#/trust`,children:E.work.openTrust})]}),(0,N.jsx)(Oe,{caption:t.caption,rows:e,rowKey:e=>e.repo,cols:[{label:t.repo,cell:e=>e.repo,mono:!0},{label:t.entries,cell:e=>e.entries},{label:t.tables,cell:e=>e.tables},{label:t.calls,cell:e=>e.calls},{label:t.flows,cell:e=>e.flows}]})]})})}function tt(){let e=j(`/api/graph`),t=_e(`coverage`),n=_e(`questions`),r=j(`/api/catalog/kinds`),i=r.state===`ready`&&!r.data.some(e=>e.kind===`System`&&e.count>0),a=$e(i),[o,s]=(0,v.useState)();return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:o?L.around(o):L.ecosystemMap,kind:`hero`,span:`span 8`,rows:`span 2`,meta:o?(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>s(void 0),children:L.showAll}):L.clickANodeTo,children:(0,N.jsx)(F,{of:e,empty:e=>e.nodes.length===0,emptyText:L.theCatalogIsEmpty,children:e=>(0,N.jsx)(Ye,{g:e,...o?{focus:o}:{},onPick:s,height:520})})}),(0,N.jsx)(P,{title:L.systems,span:`span 4`,rows:`span 2`,children:(0,N.jsx)(F,{of:t,empty:e=>e.systems.length===0,emptyText:L.noSystemsYet,children:e=>(0,N.jsx)(`div`,{className:`stack`,children:e.systems.map(e=>{let t=e.verified+e.documentOnly+e.unknown;return(0,N.jsxs)(`button`,{type:`button`,onClick:()=>s(e.system),className:`stack`,style:{gap:4,background:`transparent`,border:0,color:`inherit`,textAlign:`left`,font:`inherit`,cursor:`pointer`,padding:`6px 0`,borderBottom:`1px solid var(--rule)`},children:[(0,N.jsxs)(`span`,{className:`row between`,children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12.5},children:e.system}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:L.verified(e.verified,t,e.gaps?L.gaps(e.gaps):``)})]}),(0,N.jsx)(he,{value:e.verified,max:Math.max(t,1),label:L.factsVerifiedFromCode(e.system)})]},e.system)})})})}),o&&t.state===`ready`&&t.data.systems.some(e=>e.system===o)&&(0,N.jsx)(Ze,{system:o,link:!0}),(0,N.jsx)(P,{title:L.whatTheCatalogKnows,span:`span 8`,children:i?(0,N.jsx)(et,{of:a}):(0,N.jsx)(F,{of:t,empty:e=>e.systems.length===0,emptyText:L.noSystemsYet,children:e=>{let t=[...new Set(e.systems.flatMap(e=>e.areas.map(e=>e.area)))];return(0,N.jsxs)(`div`,{style:{overflowX:`auto`,position:`relative`},tabIndex:0,role:`region`,"aria-label":E.app.scrollTable(L.coverageBySystemAnd2),children:[(0,N.jsxs)(`table`,{style:{borderCollapse:`separate`,borderSpacing:4,width:`100%`,fontSize:11},children:[(0,N.jsx)(`caption`,{className:`sr`,children:L.coverageBySystemAnd}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{}),t.map(e=>(0,N.jsx)(`th`,{className:`hud`,style:{fontSize:9.5,fontWeight:400,textAlign:`center`},children:e},e))]})}),(0,N.jsx)(`tbody`,{children:e.systems.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{className:`mono`,style:{textAlign:`left`,fontWeight:400,paddingRight:8},children:e.system}),t.map(t=>{let n=e.areas.find(e=>e.area===t);if(!n)return(0,N.jsx)(`td`,{title:L.notExpected2(e.system,t),children:(0,N.jsx)(`span`,{className:`sr`,children:L.notExpected})},t);let r=Xe[n.state]??Xe.unknown;return(0,N.jsxs)(`td`,{title:`${e.system} · ${n.area}: ${r.label}${n.records.length?` (${n.records.length})`:``}`,style:{background:r.bg,height:26,borderRadius:4,textAlign:`center`,border:`1px solid var(--cov-line)`},children:[(0,N.jsx)(`span`,{className:`sr`,children:r.label}),n.records.length?(0,N.jsx)(`span`,{"aria-hidden":`true`,children:n.records.length}):null]},n.area)})]},e.system))})]}),(0,N.jsx)(`div`,{className:`row`,style:{gap:14,marginTop:8,flexWrap:`wrap`},children:Object.entries(Xe).map(([e,t])=>(0,N.jsxs)(`span`,{className:`row`,style:{gap:6,fontSize:11.5},children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,style:{width:12,height:12,borderRadius:3,background:t.bg,display:`inline-block`}}),t.label]},e))})]})}})}),(0,N.jsx)(P,{title:L.questionsForOwners,span:`span 4`,meta:n.state===`ready`?n.data.questions.length:void 0,children:(0,N.jsx)(F,{of:n,empty:e=>e.questions.length===0,emptyText:L.noOpenQuestionsEvery,children:e=>(0,N.jsx)(`ul`,{tabIndex:0,"aria-label":L.questionsForOwners,style:{listStyle:`none`,margin:0,padding:0,maxHeight:300,overflowY:`auto`},className:`stack`,children:e.questions.slice(0,12).map(e=>(0,N.jsxs)(`li`,{className:`stack`,style:{gap:2,paddingBottom:6,borderBottom:`1px solid var(--rule)`},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.question}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.system??``,e.owner?L.ask(e.owner):L.ownerUnknown]})]},e.id))})})})]})}function nt(e){let t=new Map,n=new Map(e.affected.map(e=>[e.id,e.kind])),r=new Map;t.set(e.root,{id:e.root,kind:`Component`,label:e.root,status:`current`});for(let i of e.affected){t.set(i.id,{id:i.id,kind:i.kind,label:i.id,status:`current`});for(let e=1;e<i.path.length;e++){let a=i.path[e-1],o=i.path[e];t.has(a)||t.set(a,{id:a,kind:n.get(a)??L.component,label:a,status:`current`}),r.set(`${a}>${o}`,{id:`${a}>${o}`,from:a,to:o,via:``,confidence:`verified`,status:`current`})}}return{nodes:[...t.values()],edges:[...r.values()]}}function rt({hash:e}){let t=ve(e,`q`)??``,[n,r]=(0,v.useState)(t),i=ve(e,`incident`)===`1`,a=j(t?`/api/impact/${encodeURIComponent(t)}?depth=4`:void 0),o=j(t&&i?`/api/incident/${encodeURIComponent(t)}`:void 0),[s,c]=(0,v.useState)(!1),l=e=>{e.preventDefault(),n.trim()?(c(!1),location.hash=`#/impact?q=${encodeURIComponent(n.trim())}${i?`&incident=1`:``}`):c(!0)},u=new Map;if(a.state===`ready`)for(let e of a.data.affected)u.set(e.path.length-1,(u.get(e.path.length-1)??0)+1);let d=a.state===`ready`?nt(a.data):void 0;return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(P,{title:L.whatBreaksIfThis,span:`1 / -1`,children:[(0,N.jsxs)(`form`,{onSubmit:l,className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`label`,{htmlFor:`impact-id`,className:`sr`,children:L.recordId}),(0,N.jsx)(`input`,{id:`impact-id`,value:n,onChange:e=>{r(e.target.value),c(!1)},"aria-describedby":s?`impact-blank`:void 0,placeholder:L.aComponentInterfaceTable,style:{flex:`1 1 360px`,height:40,background:`var(--box)`,color:`var(--text)`,border:`1px solid var(--accent)`,borderRadius:10,padding:`0 12px`,font:`inherit`}}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,children:L.showImpact}),(0,N.jsx)(`button`,{type:`button`,className:`btn ${i?`danger`:``}`,"aria-pressed":i,onClick:()=>location.hash=`#/impact?q=${encodeURIComponent(n.trim())}${i?``:`&incident=1`}`,children:i?L.incidentModeOn:L.incidentMode}),(0,N.jsx)(`a`,{href:`#/explore`,className:`muted`,style:{fontSize:12},children:L.findAnIdIn})]}),s&&(0,N.jsx)(`p`,{id:`impact-blank`,role:`alert`,className:`run-note bad`,children:E.app.needId})]}),t&&i&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(P,{title:L.ownersToCall,span:`span 4`,kind:`dark`,children:(0,N.jsx)(F,{of:o,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[e.call.map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{className:`chip blocking`,children:e.owner}),(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:11.5},children:e.systems.join(`, `)})]},e.owner)),e.ownerUnknown.length>0&&(0,N.jsx)(`p`,{style:{margin:0,fontSize:12.5,color:`var(--amber-text)`},children:L.noOwnerRecordedFor(e.ownerUnknown.join(`, `))}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:11.5},children:L.fromTheLastScan})]})})}),(0,N.jsx)(P,{title:L.whatWatchesIt,span:`span 4`,children:(0,N.jsx)(F,{of:o,empty:e=>e.watch.length===0,emptyText:L.noAlertsDashboardsOr,children:e=>(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,fontSize:12.5,lineHeight:1.6},children:e.watch.map((e,t)=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`chip dim`,children:e.kind}),` `,e.name,` `,(0,N.jsxs)(`span`,{className:`mono muted`,children:[`(`,e.component,`)`]})]},t))})})}),(0,N.jsx)(P,{title:L.recentNearbyChanges,span:`span 4`,children:(0,N.jsx)(F,{of:o,empty:e=>e.recentChanges.length===0,emptyText:L.noChangeTouchesWhat,children:e=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:6},children:e.recentChanges.map(e=>(0,N.jsxs)(`a`,{href:`#/changes/${encodeURIComponent(e.id)}`,className:`list-row`,style:{textDecoration:`none`,color:`inherit`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.title}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.id,` · `,e.updatedAt.slice(0,10),` · `,e.systems.join(`, `)]})]}),(0,N.jsx)(`span`,{className:`chip`,children:e.state.toUpperCase()})]},e.id))})})})]}),t?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(P,{title:L.blastRadiusOf(t),kind:`hero`,span:`span 9`,children:(0,N.jsx)(F,{of:a,empty:e=>e.affected.length===0,emptyText:L.nothingDependsOnIt,children:()=>(0,N.jsx)(Ye,{g:d,focus:t,height:380})})}),(0,N.jsx)(P,{title:L.blastRadius,span:`span 3`,kind:`dark`,children:(0,N.jsx)(F,{of:a,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`span`,{className:`big`,children:e.affected.length}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:L.recordsAffectedBy(e.root)}),[...u.entries()].sort((e,t)=>e[0]-t[0]).map(([e,t])=>(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,style:{width:56,fontSize:10},children:L.hop(e,e===1?``:`s`)}),(0,N.jsx)(`div`,{style:{flex:1},children:(0,N.jsx)(he,{value:t,max:Math.max(...u.values()),label:L.recordsHopsAway(t,e)})}),(0,N.jsx)(`span`,{className:`n`,children:t})]},e))]})})}),(0,N.jsx)(P,{title:L.affected,span:`span 8`,children:(0,N.jsx)(F,{of:a,empty:e=>e.affected.length===0,emptyText:L.nothingDependsOnIt2,children:e=>(0,N.jsx)(Oe,{caption:L.affectedRecords,rows:e.affected,rowKey:e=>`${e.kind}/${e.id}`,cols:[{label:L.record,cell:e=>e.id,mono:!0},{label:L.kind,cell:e=>(0,N.jsx)(`span`,{className:`chip dim`,children:e.kind})},{label:L.why,cell:e=>e.reason},{label:L.owner,cell:e=>e.owner?(0,N.jsx)(`span`,{className:`chip dim`,style:{whiteSpace:`nowrap`},children:e.owner}):(0,N.jsx)(`span`,{className:`chip warn`,children:L.unknown})}]})})}),(0,N.jsxs)(P,{title:L.whatWouldSharpenThis,span:`span 4`,children:[(0,N.jsx)(F,{of:a,empty:e=>e.gaps.length===0,emptyText:L.noGapsTheCatalog,children:e=>(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,lineHeight:1.6},children:e.gaps.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.record}),`: `,e.question]},`${e.record}/${e.field}`))})}),(0,N.jsx)(`p`,{className:`muted`,style:{fontSize:11.5,margin:`10px 0 0`},children:L.readOnlyAtticusNever})]})]}):null]})}function it({records:e}){let t=j(`/api/graph`),n=new Set(e.flatMap(e=>[e,e.split(`.`)[0]]));return(0,N.jsx)(F,{of:t,empty:e=>e.nodes.length===0,emptyText:``,children:e=>(0,N.jsx)(`div`,{style:{border:`1px solid var(--line)`,borderRadius:10,background:`var(--inset)`},children:(0,N.jsx)(Ye,{g:e,highlight:e.nodes.filter(e=>n.has(e.id)).map(e=>e.id),height:300})})})}function at({hash:e}){let t=_e(`features`),n=ve(e,`id`)??(t.state===`ready`?t.data.features[0]?.id:void 0),r=_e(`features`,n,!n);return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:L.featuresFoundInCode,span:`span 4`,rows:`span 2`,meta:t.state===`ready`?t.data.features.length:void 0,children:(0,N.jsx)(F,{of:t,empty:e=>e.features.length===0,emptyText:L.noFeaturesFoundYet,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(I,{title:L.featuresByHowThey,parts:[{label:L.confirmedByPeople,value:e.coverage.confirmed.length,color:`var(--green)`},{label:L.foundInCodeOnly,value:e.coverage.detectedOnly.length,color:`var(--accent)`},{label:L.unknown2,value:e.coverage.unknown.length,color:`var(--amber)`}]}),(0,N.jsx)(`nav`,{"aria-label":L.features,className:`stack`,style:{gap:2},children:e.features.map(e=>(0,N.jsxs)(`a`,{href:`#/features?id=${encodeURIComponent(e.id)}`,"aria-current":e.id===n?`page`:void 0,className:`list-row`,style:{textDecoration:`none`,padding:`7px 6px`,borderRadius:6,background:e.id===n?`var(--picked)`:void 0},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{children:e.name??e.id}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:L.entryPoints(e.entryPoints.length)})]}),(0,N.jsx)(`span`,{className:`chip ${e.namedBy===`detected`?``:e.namedBy===`ai`?`ai`:`done`}`,children:e.namedBy.toUpperCase()})]},e.id))})]})})}),(0,N.jsx)(P,{title:r.state===`ready`?r.data.feature.name??r.data.feature.id:L.feature,span:`span 8`,rows:`span 2`,meta:r.state===`ready`?r.data.system:void 0,children:n?(0,N.jsx)(F,{of:r,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:14},children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`span`,{className:`chip`,children:e.feature.confidence.toUpperCase()}),e.feature.tags.map(e=>(0,N.jsx)(`span`,{className:`chip dim`,children:e},e)),e.feature.externalRefs.length===0?(0,N.jsx)(`span`,{className:`chip warn`,children:L.noWorkItemsLinked}):e.feature.externalRefs.map((e,t)=>(0,N.jsxs)(`span`,{className:`chip done`,children:[e.system??L.item,` `,e.id??``]},t))]}),(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:L.entryPoints2}),(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,lineHeight:1.7},className:`mono`,children:e.feature.entryPoints.map(e=>(0,N.jsx)(`li`,{children:e},e))})]}),(0,N.jsx)(it,{records:[...e.feature.records,...e.feature.entryPoints]}),(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:L.recordsInTheFlow(e.feature.records.length)}),(0,N.jsx)(`p`,{className:`mono`,style:{margin:0,fontSize:11.5,lineHeight:1.7,color:`var(--text-2)`},children:e.feature.records.join(` · `)})]}),(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:L.knowledgeGaps}),e.looseEnds.length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:L.noneEveryHopIs}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,lineHeight:1.6},children:e.looseEnds.map((e,t)=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`chip warn`,children:e.kind}),` `,e.text]},t))})]}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:[L.nameTagOrLink,(0,N.jsx)(`span`,{className:`mono`,children:L.atticusFeatureName(e.feature.id)}),`,`,` `,(0,N.jsx)(`span`,{className:`mono`,children:L.featureTag}),` `,L.or,(0,N.jsx)(`span`,{className:`mono`,children:L.featureLink}),L.theChangeGoesIn]})]})}):(0,N.jsx)(`p`,{className:`muted`,children:L.pickAFeature})})]})}function ot(){let e=j(`/api/orgpack`),t=_e(`glossary`);return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:L.orgPack,span:`span 4`,kind:`dark`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[Object.entries(e.counts).map(([e,t])=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:e}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:16},children:t})]},e)),e.problems.length?(0,N.jsx)(`p`,{role:`alert`,style:{color:`var(--magenta-text)`,margin:0},children:L.problems(e.problems.length,e.problems.map(e=>`${e.file}: ${e.message}`).join(`; `))}):(0,N.jsx)(`span`,{className:`chip done`,style:{width:`fit-content`},children:L.valid}),e.defaulted.length>0&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:L.usingBuiltInDefaults(e.defaulted.join(`, `))})]})})}),(0,N.jsx)(P,{title:L.integrationPatterns,span:`span 8`,children:(0,N.jsx)(F,{of:e,empty:e=>!e.patterns?.length,emptyText:L.noPatternsYet,children:e=>(0,N.jsx)(Oe,{caption:L.integrationPatterns,rows:e.patterns??[],rowKey:e=>e.code,cols:[{label:L.code,cell:e=>(0,N.jsx)(`span`,{className:`chip`,children:e.code}),width:`130px`},{label:L.pattern,cell:e=>(0,N.jsx)(`span`,{title:e.definition,children:e.name})},{label:L.interaction,cell:e=>e.interaction},{label:L.route,cell:e=>e.route},{label:L.target,cell:e=>e.targetType}]})})}),(0,N.jsx)(P,{title:L.checklistsAndProcedures,span:`span 4`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(e.checklists??[]).map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:e.name}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:L.rulesV(e.rules,e.version)})]},e.name)),(e.procedures??[]).map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:e.title??e.id}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:L.steps(e.steps)})]},e.id))]})})}),(0,N.jsx)(P,{title:L.glossary,span:`span 8`,children:(0,N.jsx)(F,{of:t,empty:e=>e.terms.length===0,emptyText:L.noTermsYet,children:e=>(0,N.jsx)(Oe,{caption:L.glossary,rows:e.terms,rowKey:e=>e.id,cols:[{label:L.term,cell:e=>e.term,width:`180px`},{label:L.definition,cell:e=>e.definition??(0,N.jsx)(`span`,{className:`chip warn`,children:L.needsADefinition})}]})})})]})}function st(e){let t=Ee();return e.options.length===0?null:(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:e.options.map((n,r)=>(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:t.busy,onClick:()=>void t.run(()=>A(`/api/triage/${encodeURIComponent(e.item)}/decide`,{method:`POST`,body:{option:r+1}}).then(()=>e.done(`Decided: ${n.label}.`)),`Decided: ${n.label}.`),children:n.label},r))}),(0,N.jsx)(De,{note:t.note?.ok&&!t.note.working?void 0:t.note})]})}var ct={read:`var(--green)`,"needs-reading":`var(--accent)`,"no-reader":`var(--violet)`,unresolved:`var(--amber)`,duplicate:`var(--gone)`,superseded:`var(--gone)`,failed:`var(--magenta)`};function lt(){let e=_e(`intake`),t=_e(`triage`),[n,r]=(0,v.useState)(),i=e.state===`ready`?e.data.documents:[],a=[...new Set(i.map(e=>e.status))],o=i.reduce((e,t)=>e+t.records.length,0);return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:L.files,span:`span 3`,kind:`dark`,children:(0,N.jsx)(F,{of:e,children:()=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`span`,{className:`big`,children:i.length}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:L.filesInInputs})]})})}),(0,N.jsx)(P,{title:L.factsTaken,span:`span 2`,kind:`dark`,children:(0,N.jsx)(`span`,{className:`big`,children:o})}),(0,N.jsx)(P,{title:L.whatHappenedToThem,span:`span 3`,children:(0,N.jsx)(F,{of:e,empty:()=>i.length===0,emptyText:L.nothingYet,children:()=>(0,N.jsx)(I,{title:L.filesByStatus,parts:a.map(e=>({label:e,value:i.filter(t=>t.status===e).length,color:ct[e]??`var(--accent-pale)`}))})})}),(0,N.jsx)(P,{title:L.defences,span:`span 4`,children:(0,N.jsx)(F,{of:e,children:()=>{let e=i.filter(e=>e.defences&&e.defences.risk!==`cleared`);return e.length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:L.nothingHiddenOrAimed}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,fontSize:12.5},children:e.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.path}),`: `,e.defences.reason]},e.path))})}})}),(0,N.jsx)(P,{title:L.intake,span:`span 8`,meta:L.inputs,children:(0,N.jsx)(F,{of:e,empty:e=>e.documents.length===0,emptyText:L.nothingInInputsYet,children:e=>(0,N.jsx)(Oe,{caption:L.filesReadFromInputs,rows:e.documents,rowKey:e=>e.path,cols:[{label:L.file,cell:e=>e.path,mono:!0},{label:L.readAs,cell:e=>e.classification},{label:L.about,cell:e=>ke(e.systems)||(0,N.jsx)(`span`,{className:`muted`,children:L.noSystemNamed})},{label:L.facts,cell:e=>e.records.length},{label:L.status,cell:e=>e.defences?.risk===`high`?(0,N.jsx)(`span`,{className:`chip blocking`,title:e.defences.reason,children:L.quarantined}):(0,N.jsx)(`span`,{className:`chip ${e.status===`read`?`done`:e.status===`failed`||e.status===`unresolved`?`warn`:`dim`}`,children:e.status.toUpperCase()})}]})})}),(0,N.jsx)(P,{title:L.needsYou,span:`span 4`,meta:t.state===`ready`?t.data.items.length:void 0,children:(0,N.jsx)(F,{of:t,empty:e=>e.items.length===0,emptyText:L.nothingToTriage,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[n&&(0,N.jsx)(De,{note:{ok:!0,text:n}}),e.items.map(e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4,padding:`6px 0`,borderBottom:`1px solid var(--rule)`},children:[(0,N.jsxs)(`span`,{className:`row between`,style:{alignItems:`flex-start`},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.summary}),(0,N.jsx)(`span`,{className:`chip ${e.kind===`defences`?`blocking`:`warn`}`,children:e.kind.toUpperCase()})]}),(0,N.jsxs)(`span`,{className:`mono muted`,style:{fontSize:11},children:[e.id,` · `,e.source.path,e.source.line?`:${e.source.line}`:``]}),(0,N.jsx)(st,{item:e.id,options:e.options,done:e=>{r(e),t.reload()}})]},e.id)),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:L.eachChoiceIsSaved})]})})})]})}function ut(){let e=j(`/api/repos`),t=j(`/api/catalog/kinds`),[n,r]=(0,v.useState)(),i=Ee();M(i=>{n&&i.jobId===n.id&&(i.type===`job.progress`&&r({...n,progress:{done:Number(i.done),total:Number(i.total),message:String(i.message)}}),i.type===`job.done`&&(A(`/api/jobs/${n.id}`).then(r),e.reload(),t.reload()))});let[a,o]=(0,v.useState)(!1),s=(e,t)=>i.run(async()=>{o(!1);let t=await A(e,{method:`POST`,body:{}});r(await A(`/api/jobs/${t.jobId}`))},`${t} started.`),c=e=>{o(!0),A(`/api/jobs/${e}/cancel`,{method:`POST`,body:{}}).catch(()=>void 0)},l=e.state===`ready`?e.data.filter(e=>e.baseClone.present).length:0,u=e.state===`ready`?e.data.length:0;return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:L.scan,span:`span 4`,kind:`dark`,children:(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(me,{value:l,max:Math.max(u,1),size:64,label:L.ofReposCloned(l,u)}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12.5},children:L.reposClonedLocally})]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:i.busy,onClick:()=>void s(`/api/workspace/sync`,L.sync),children:L.syncRepos}),(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:i.busy,onClick:()=>void s(`/api/scan`,L.scan2),children:L.scanNow})]}),n&&(0,N.jsxs)(`div`,{className:`stack`,role:`status`,"aria-live":`polite`,children:[(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[L.jobState[n.state]??n.state,n.state===`running`?` · ${n.progress.message}`:``]}),(0,N.jsx)(he,{value:n.progress.done,max:Math.max(n.progress.total,1),label:L.jobProgress}),n.state===`running`&&(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,alignItems:`center`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:a,"aria-describedby":`scan-cancel-hint`,onClick:()=>c(n.id),children:a?L.cancelling:L.cancelJob}),(0,N.jsx)(`span`,{id:`scan-cancel-hint`,className:`muted`,style:{fontSize:12},children:L.cancelJobHint})]}),n.errors.length>0&&(0,N.jsx)(`ul`,{"aria-label":L.jobProblems,style:{margin:0,paddingLeft:18,color:`var(--magenta-text)`},children:n.errors.map((e,t)=>(0,N.jsx)(`li`,{children:e},`${t}:${e}`))})]}),(0,N.jsx)(De,{note:i.note}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:11.5},children:L.scansReadFilesOnly})]})}),(0,N.jsx)(P,{title:L.repos,span:`span 8`,children:(0,N.jsx)(F,{of:e,empty:e=>e.length===0,emptyText:L.noReposInAny,children:e=>(0,N.jsx)(Oe,{caption:L.repos,rows:e,rowKey:e=>e.id,cols:[{label:L.repo,cell:e=>e.id,mono:!0},{label:L.platform,cell:e=>e.platform},{label:L.type,cell:e=>e.type??``},{label:L.baseClone,cell:e=>(0,N.jsx)(`span`,{className:`chip ${e.baseClone.present?`done`:`dim`}`,children:e.baseClone.present?L.cloned:L.notYet})}]})})}),(0,N.jsx)(P,{title:L.catalog,span:`1 / -1`,children:(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:L.noFactsYet,children:e=>(0,N.jsx)(`div`,{style:{display:`grid`,gridTemplateColumns:`repeat(auto-fill, minmax(150px, 1fr))`,gap:10},children:e.map(e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.kind}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:20},children:e.count})]},e.kind))})})})]})}var dt=E.systems;function ft(e,t){let n=new Set(e.repos??[]);return t.filter(e=>![`released`,`archived`].includes(e.state)).filter(e=>e.repos.some(e=>n.has(e))).sort((e,t)=>e.title.localeCompare(t.title))}var pt=e=>`#/systems?system=${encodeURIComponent(e)}`;function mt(e){return(0,N.jsx)(`nav`,{"aria-label":dt.pick,children:(0,N.jsx)(`ul`,{className:`row`,style:{gap:6,flexWrap:`wrap`,listStyle:`none`,padding:0,margin:0},children:e.systems.map(t=>(0,N.jsx)(`li`,{children:(0,N.jsx)(`a`,{className:`chip`,href:pt(t.id),"aria-current":t.id===e.current?`page`:void 0,children:t.name??t.id})},t.id))})})}function ht({hash:e}){let t=j(`/api/catalog/System?limit=500`),n=j(`/api/changes`),r=_e(`questions`);se(t,n,r);let i=ve(e,`system`),a=t.state===`ready`?t.data.items:[],o=i??a[0]?.id,s=a.find(e=>e.id===o),c=r.state===`ready`?(r.data.questions??[]).filter(e=>e.system===o):[];return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:dt.title,span:`1 / -1`,children:(0,N.jsx)(F,{of:t,empty:e=>e.items.length===0,emptyText:dt.empty,children:()=>(0,N.jsx)(mt,{systems:a,current:o})})}),o&&(0,N.jsx)(Ze,{system:o}),s&&(0,N.jsx)(P,{title:dt.inFlight,span:`span 6`,children:n.state===`ready`?ft(s,n.data).length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:dt.noChanges}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:ft(s,n.data).map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{href:`#/cockpit?change=${encodeURIComponent(e.id)}`,children:e.title}),(0,N.jsx)(`span`,{className:`muted`,children:` · ${e.state}`})]},e.id))}):(0,N.jsx)(F,{of:n,children:()=>null})}),s&&(0,N.jsx)(P,{title:dt.questions,span:`span 6`,children:c.length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:dt.noQuestions}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:c.map(e=>(0,N.jsx)(`li`,{children:e.question},e.id))})})]})}var gt=E.runShared;function _t(e){return e instanceof D?e.problem.detail??e.problem.title:e instanceof Error?e.message:String(e)}function vt(e,t){return e.replace(/Re-run with --force to [^.]*\./,t)}var yt=e=>t=>{throw Error(vt(_t(t),e))};function bt(){let[e,t]=(0,v.useState)(!1),[n,r]=(0,v.useState)();return{busy:e,note:n,run:async(e,n)=>{t(!0),r({ok:!0,text:E.app.working,working:!0});try{let t=await e();r({ok:!0,text:typeof n==`string`?n:n(t)})}catch(e){r({ok:!1,text:_t(e)})}finally{t(!1)}},clear:()=>r(void 0)}}function xt({note:e}){return e?(0,N.jsx)(`p`,{role:e.ok?`status`:`alert`,"aria-busy":e.working?!0:void 0,className:`run-note ${e.working?`working`:e.ok?`ok`:`bad`}`,children:e.text}):null}function St({text:e,label:t}){let[n,r]=(0,v.useState)();return(0,N.jsx)(`button`,{type:`button`,className:`btn run-copy`,"aria-label":t,onClick:()=>{navigator.clipboard?navigator.clipboard.writeText(e).then(()=>r(`copied`),()=>r(`failed`)):r(`failed`),setTimeout(()=>r(void 0),2e3)},children:n===`copied`?gt.copied:n===`failed`?gt.selectAndCopy:gt.copy})}function Ct({rows:e}){return(0,N.jsx)(`dl`,{className:`run-facts`,children:e.map(([e,t])=>(0,N.jsxs)(`div`,{style:{display:`contents`},children:[(0,N.jsx)(`dt`,{className:`hud`,children:e}),(0,N.jsx)(`dd`,{children:t})]},e))})}function wt(e){return(0,N.jsx)(`div`,{role:`group`,"aria-label":e.label,className:`row run-choice`,children:e.options.map(t=>(0,N.jsx)(`button`,{type:`button`,className:`btn ${e.value===t.value?`on`:``}`,"aria-pressed":e.value===t.value,onClick:()=>e.onChange(t.value),children:t.label},t.value))})}function Tt({type:e}){return e?e===`manual`?(0,N.jsx)(`span`,{className:`chip warn`,children:gt.manual}):e===`mock`?(0,N.jsx)(`span`,{className:`chip dim`,children:gt.mock}):(0,N.jsx)(`span`,{className:`chip done`,children:gt.connected(e.toUpperCase())}):(0,N.jsx)(`span`,{className:`chip dim`,children:gt.notSet})}var Et={"work-tracker":gt.workTracker,"service-desk":gt.serviceDesk,"git-host":gt.gitHost,wiki:gt.wiki,notify:gt.notifications,design:gt.designTool},Dt=e=>e?e.slice(0,10):``,Ot=(e,t)=>`${e} ${t}${e===1?``:`s`}`,kt=E.runStep,At=new Set([`scan survey`,`scan verify`,`spec draft`,`knowledge scan`,`change feature`,`change architecture`,`change draft`,`plan stories`,`change needs`,`knowledge find`,`knowledge ask`]);function jt(e){let t=[],n=/"((?:[^"\\]|\\.)*)"|'([^']*)'|(\S+)/g,r;for(;r=n.exec(e);)if(r[1]!==void 0)t.push(r[1].replace(/\\(.)/g,`$1`));else if(r[2]!==void 0)t.push(r[2]);else if(/["']/.test(r[3]))return;else t.push(r[3]);return t}function Mt(e){let t=jt(e.trim());if(!t||t[0]!==`atticus`||t.length<3)return;let n=t.slice(1);if((n[0]===`critic`&&n[1]!==`stats`||At.has(`${n[0]} ${n[1]}`))&&!n.some(e=>e.startsWith(`-`)||/[<>]/.test(e)||e.trim()===``))return n}function Nt(e){return e.panel?{kind:`copilot`}:typeof e.serverModel==`string`&&e.serverModel?{kind:`model`,model:e.serverModel}:{kind:`copy`}}var Pt;function Ft(e){let[t,n]=(0,v.useState)(void 0);return(0,v.useEffect)(()=>{if(!e)return;let t=!0;return Pt??=A(`/api/runs?limit=1`).then(e=>e.serverModel??null,()=>(Pt=void 0,null)),Pt.then(e=>{t&&n(e)}),()=>{t=!1}},[e]),t}var It=new Set([`done`,`failed`,`cancelled`]);async function Lt(e,t){let n=await t.call(`/api/runs`,{method:`POST`,body:{args:e}});t.onJob?.(n.jobId),t.onLine(kt.started(n.model));let r=``;for(;;){let e=await t.call(`/api/jobs/${encodeURIComponent(n.jobId)}`),i=e.progress?.message??``;if(i&&i!==r&&t.onLine(i),r=i,It.has(e.state)){let n=e.result??{},r=Array.isArray(n.lines)?n.lines.filter(e=>typeof e==`string`):e.errors,i=e.state===`done`?n.code===0||n.code===void 0?`done`:`stopped`:e.state,a=typeof n.runId==`string`?n.runId:await t.call(`/api/runs?limit=1`).then(t=>t.runs.find(t=>t.startedAt>=e.startedAt)?.runId).catch(()=>void 0);return{state:i,lines:r,...a?{runId:a}:{}}}await t.wait(700)}}var Rt=e=>e instanceof D?e.problem.detail??e.problem.title:e instanceof Error?e.message:String(e),zt=new Set([`refused`,`not-started`]);function Bt(e){return zt.has(e.state)?kt.refused(e.lines[0]??e.state):kt.ends[e.state]??kt.ended(e.state)}function Vt(e){let t=(0,v.useId)();if(e.choice.kind===`copy`)return null;let n=e.choice.kind===`copilot`?kt.withCopilot:kt.withModel(e.choice.model),r=e.choice.kind===`copilot`?kt.hintCopilot:kt.hintModel(e.choice.model),i=e.state.phase===`running`,a=e.state;return(0,N.jsxs)(`div`,{className:`runstep stack`,children:[(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`center`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:i,"aria-describedby":`${t}-why`,onClick:e.onRun,children:i?kt.running:n}),i&&e.onCancel&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.stopping,title:kt.cancelHint,onClick:e.onCancel,children:e.stopping?kt.cancelling:kt.cancel}),(0,N.jsx)(`span`,{id:`${t}-why`,className:`muted`,style:{fontSize:12},children:i?kt.busy:r})]}),(0,N.jsxs)(`div`,{"aria-live":`polite`,className:`runstep-live`,children:[a.lines.length>0&&(0,N.jsx)(`ul`,{className:`runstep-lines mono`,"aria-label":kt.progress,children:a.lines.map((e,t)=>(0,N.jsx)(`li`,{children:e},`${t}:${e}`))}),a.phase===`ended`&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`p`,{className:`runstep-end`,children:Bt(a.end)}),!zt.has(a.end.state)&&a.end.lines.length>0&&(0,N.jsx)(`pre`,{className:`runstep-out`,tabIndex:0,role:`region`,"aria-label":kt.output,children:a.end.lines.join(`
|
|
12
|
+
`)}),!zt.has(a.end.state)&&(0,N.jsx)(`a`,{href:a.end.runId?`#/runs?run=${encodeURIComponent(a.end.runId)}`:`#/runs`,children:a.end.runId?kt.openRun:kt.openRuns})]})]}),a.phase===`error`&&(0,N.jsx)(`p`,{role:`alert`,className:`run-note bad`,children:kt.cantStart(a.error)})]})}function Ht({command:e}){let t=Mt(e),n=T(),r=Ft(!!t&&!n),[i,a]=(0,v.useState)({phase:`idle`,lines:[]}),[o,s]=(0,v.useState)(),[c,l]=(0,v.useState)(!1),u=(0,v.useRef)(!0);if((0,v.useEffect)(()=>(u.current=!0,()=>{u.current=!1}),[]),!t)return null;let d=Nt({panel:!!n,serverModel:r}),f=e=>{u.current&&a(t=>({phase:`running`,lines:[...t.lines,e]}))},p=()=>{a({phase:`running`,lines:[]}),s(void 0),l(!1),(n?n.runStep(t,f):Lt(t,{call:(e,t)=>A(e,t??{}),wait:e=>new Promise(t=>setTimeout(t,e)),onLine:f,onJob:e=>{u.current&&s(e)}})).then(e=>{u.current&&a(t=>({phase:`ended`,lines:t.lines,end:e}))},e=>{u.current&&a(t=>({phase:`error`,lines:t.lines,error:Rt(e)}))})},m=o?()=>{l(!0),A(`/api/jobs/${encodeURIComponent(o)}/cancel`,{method:`POST`,body:{}}).catch(()=>void 0)}:void 0;return(0,N.jsx)(Vt,{choice:d,state:i,onRun:p,...m?{onCancel:m}:{},stopping:c})}function Ut(e){if(typeof e==`string`||typeof e==`number`)return``+e;let t=``;if(Array.isArray(e))for(let n=0,r;n<e.length;n++)(r=Ut(e[n]))!==``&&(t+=(t&&` `)+r);else for(let n in e)e[n]&&(t+=(t&&` `)+n);return t}var Wt={value:()=>{}};function Gt(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new Kt(n)}function Kt(e){this._=e}function qt(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}Kt.prototype=Gt.prototype={constructor:Kt,on:function(e,t){var n=this._,r=qt(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=Jt(n[i],e.name)))return i}else{if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=Yt(n[i],e.name,t);else if(t==null)for(i in n)n[i]=Yt(n[i],e.name,null);return this}},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new Kt(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function Jt(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function Yt(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=Wt,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var Xt={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function Zt(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),Xt.hasOwnProperty(t)?{space:Xt[t],local:e}:e}function Qt(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function $t(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function en(e){var t=Zt(e);return(t.local?$t:Qt)(t)}function tn(){}function nn(e){return e==null?tn:function(){return this.querySelector(e)}}function rn(e){typeof e!=`function`&&(e=nn(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new Kr(r,this._parents)}function an(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function on(){return[]}function sn(e){return e==null?on:function(){return this.querySelectorAll(e)}}function cn(e){return function(){return an(e.apply(this,arguments))}}function ln(e){e=typeof e==`function`?cn(e):sn(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new Kr(r,i)}function un(e){return function(){return this.matches(e)}}function dn(e){return function(t){return t.matches(e)}}var fn=Array.prototype.find;function pn(e){return function(){return fn.call(this.children,e)}}function mn(){return this.firstElementChild}function hn(e){return this.select(e==null?mn:pn(typeof e==`function`?e:dn(e)))}var gn=Array.prototype.filter;function _n(){return Array.from(this.children)}function vn(e){return function(){return gn.call(this.children,e)}}function yn(e){return this.selectAll(e==null?_n:vn(typeof e==`function`?e:dn(e)))}function bn(e){typeof e!=`function`&&(e=un(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new Kr(r,this._parents)}function xn(e){return Array(e.length)}function Sn(){return new Kr(this._enter||this._groups.map(xn),this._parents)}function Cn(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Cn.prototype={constructor:Cn,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function wn(e){return function(){return e}}function Tn(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new Cn(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function En(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new Cn(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function Dn(e){return e.__data__}function On(e,t){if(!arguments.length)return Array.from(this,Dn);var n=t?En:Tn,r=this._parents,i=this._groups;typeof e!=`function`&&(e=wn(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=kn(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new Kr(o,r),o._enter=s,o._exit=c,o}function kn(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function An(){return new Kr(this._exit||this._groups.map(xn),this._parents)}function jn(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function Mn(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new Kr(s,this._parents)}function Nn(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function Pn(e){e||=Fn;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new Kr(i,this._parents).order()}function Fn(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function In(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Ln(){return Array.from(this)}function Rn(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function zn(){let e=0;for(let t of this)++e;return e}function Bn(){return!this.node()}function Vn(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function Hn(e){return function(){this.removeAttribute(e)}}function Un(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Wn(e,t){return function(){this.setAttribute(e,t)}}function Gn(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function Kn(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function qn(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function Jn(e,t){var n=Zt(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?Un:Hn:typeof t==`function`?n.local?qn:Kn:n.local?Gn:Wn)(n,t))}function Yn(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Xn(e){return function(){this.style.removeProperty(e)}}function Zn(e,t,n){return function(){this.style.setProperty(e,t,n)}}function Qn(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function $n(e,t,n){return arguments.length>1?this.each((t==null?Xn:typeof t==`function`?Qn:Zn)(e,t,n??``)):er(this.node(),e)}function er(e,t){return e.style.getPropertyValue(t)||Yn(e).getComputedStyle(e,null).getPropertyValue(t)}function tr(e){return function(){delete this[e]}}function nr(e,t){return function(){this[e]=t}}function rr(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function ir(e,t){return arguments.length>1?this.each((t==null?tr:typeof t==`function`?rr:nr)(e,t)):this.node()[e]}function ar(e){return e.trim().split(/^|\s+/)}function or(e){return e.classList||new sr(e)}function sr(e){this._node=e,this._names=ar(e.getAttribute(`class`)||``)}sr.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function cr(e,t){for(var n=or(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function lr(e,t){for(var n=or(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function ur(e){return function(){cr(this,e)}}function dr(e){return function(){lr(this,e)}}function fr(e,t){return function(){(t.apply(this,arguments)?cr:lr)(this,e)}}function pr(e,t){var n=ar(e+``);if(arguments.length<2){for(var r=or(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?fr:t?ur:dr)(n,t))}function mr(){this.textContent=``}function hr(e){return function(){this.textContent=e}}function gr(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function _r(e){return arguments.length?this.each(e==null?mr:(typeof e==`function`?gr:hr)(e)):this.node().textContent}function vr(){this.innerHTML=``}function yr(e){return function(){this.innerHTML=e}}function br(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function xr(e){return arguments.length?this.each(e==null?vr:(typeof e==`function`?br:yr)(e)):this.node().innerHTML}function Sr(){this.nextSibling&&this.parentNode.appendChild(this)}function Cr(){return this.each(Sr)}function wr(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Tr(){return this.each(wr)}function Er(e){var t=typeof e==`function`?e:en(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Dr(){return null}function Or(e,t){var n=typeof e==`function`?e:en(e),r=t==null?Dr:typeof t==`function`?t:nn(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function kr(){var e=this.parentNode;e&&e.removeChild(this)}function Ar(){return this.each(kr)}function jr(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Mr(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Nr(e){return this.select(e?Mr:jr)}function Pr(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function Fr(e){return function(t){e.call(this,t,this.__data__)}}function Ir(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function Lr(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function Rr(e,t,n){return function(){var r=this.__on,i,a=Fr(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function zr(e,t,n){var r=Ir(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}}else{for(s=t?Rr:Lr,i=0;i<a;++i)this.each(s(r[i],t,n));return this}}function Br(e,t,n){var r=Yn(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function Vr(e,t){return function(){return Br(this,e,t)}}function Hr(e,t){return function(){return Br(this,e,t.apply(this,arguments))}}function Ur(e,t){return this.each((typeof t==`function`?Hr:Vr)(e,t))}function*Wr(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var Gr=[null];function Kr(e,t){this._groups=e,this._parents=t}function qr(){return new Kr([[document.documentElement]],Gr)}function Jr(){return this}Kr.prototype=qr.prototype={constructor:Kr,select:rn,selectAll:ln,selectChild:hn,selectChildren:yn,filter:bn,data:On,enter:Sn,exit:An,join:jn,merge:Mn,selection:Jr,order:Nn,sort:Pn,call:In,nodes:Ln,node:Rn,size:zn,empty:Bn,each:Vn,attr:Jn,style:$n,property:ir,classed:pr,text:_r,html:xr,raise:Cr,lower:Tr,append:Er,insert:Or,remove:Ar,clone:Nr,datum:Pr,on:zr,dispatch:Ur,[Symbol.iterator]:Wr};function Yr(e){return typeof e==`string`?new Kr([[document.querySelector(e)]],[document.documentElement]):new Kr([[e]],Gr)}function Xr(e){let t;for(;t=e.sourceEvent;)e=t;return e}function Zr(e,t){if(e=Xr(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}var Qr={passive:!1},$r={capture:!0,passive:!1};function ei(e){e.stopImmediatePropagation()}function ti(e){e.preventDefault(),e.stopImmediatePropagation()}function ni(e){var t=e.document.documentElement,n=Yr(e).on(`dragstart.drag`,ti,$r);`onselectstart`in t?n.on(`selectstart.drag`,ti,$r):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=`none`)}function ri(e,t){var n=e.document.documentElement,r=Yr(e).on(`dragstart.drag`,null);t&&(r.on(`click.drag`,ti,$r),setTimeout(function(){r.on(`click.drag`,null)},0)),`onselectstart`in n?r.on(`selectstart.drag`,null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var ii=e=>()=>e;function ai(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}ai.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function oi(e){return!e.ctrlKey&&!e.button}function si(){return this.parentNode}function ci(e,t){return t??{x:e.x,y:e.y}}function li(){return navigator.maxTouchPoints||`ontouchstart`in this}function ui(){var e=oi,t=si,n=ci,r=li,i={},a=Gt(`start`,`drag`,`end`),o=0,s,c,l,u,d=0;function f(e){e.on(`mousedown.drag`,p).filter(r).on(`touchstart.drag`,g).on(`touchmove.drag`,_,Qr).on(`touchend.drag touchcancel.drag`,v).style(`touch-action`,`none`).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}function p(n,r){if(!u&&e.call(this,n,r)){var i=y(this,t.call(this,n,r),n,r,`mouse`);i&&(Yr(n.view).on(`mousemove.drag`,m,$r).on(`mouseup.drag`,h,$r),ni(n.view),ei(n),l=!1,s=n.clientX,c=n.clientY,i(`start`,n))}}function m(e){if(ti(e),!l){var t=e.clientX-s,n=e.clientY-c;l=t*t+n*n>d}i.mouse(`drag`,e)}function h(e){Yr(e.view).on(`mousemove.drag mouseup.drag`,null),ri(e.view,l),ti(e),i.mouse(`end`,e)}function g(n,r){if(e.call(this,n,r))for(var i=n.changedTouches,a=t.call(this,n,r),o=i.length,s=0,c;s<o;++s)(c=y(this,a,n,r,i[s].identifier,i[s]))&&(ei(n),c(`start`,n,i[s]))}function _(e){for(var t=e.changedTouches,n=t.length,r=0,a;r<n;++r)(a=i[t[r].identifier])&&(ti(e),a(`drag`,e,t[r]))}function v(e){var t=e.changedTouches,n=t.length,r,a;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),r=0;r<n;++r)(a=i[t[r].identifier])&&(ei(e),a(`end`,e,t[r]))}function y(e,t,r,s,c,l){var u=a.copy(),d=Zr(l||r,t),p,m,h;if((h=n.call(e,new ai(`beforestart`,{sourceEvent:r,target:f,identifier:c,active:o,x:d[0],y:d[1],dx:0,dy:0,dispatch:u}),s))!=null)return p=h.x-d[0]||0,m=h.y-d[1]||0,function n(r,a,l){var g=d,_;switch(r){case`start`:i[c]=n,_=o++;break;case`end`:delete i[c],--o;case`drag`:d=Zr(l||a,t),_=o}u.call(r,e,new ai(r,{sourceEvent:a,subject:h,target:f,identifier:c,active:_,x:d[0]+p,y:d[1]+m,dx:d[0]-g[0],dy:d[1]-g[1],dispatch:u}),s)}}return f.filter=function(t){return arguments.length?(e=typeof t==`function`?t:ii(!!t),f):e},f.container=function(e){return arguments.length?(t=typeof e==`function`?e:ii(e),f):t},f.subject=function(e){return arguments.length?(n=typeof e==`function`?e:ii(e),f):n},f.touchable=function(e){return arguments.length?(r=typeof e==`function`?e:ii(!!e),f):r},f.on=function(){var e=a.on.apply(a,arguments);return e===a?f:e},f.clickDistance=function(e){return arguments.length?(d=(e=+e)*e,f):Math.sqrt(d)},f}function di(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function fi(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function pi(){}var mi=.7,hi=1/mi,gi=`\\s*([+-]?\\d+)\\s*`,_i=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,vi=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,yi=/^#([0-9a-f]{3,8})$/,bi=RegExp(`^rgb\\(${gi},${gi},${gi}\\)$`),xi=RegExp(`^rgb\\(${vi},${vi},${vi}\\)$`),Si=RegExp(`^rgba\\(${gi},${gi},${gi},${_i}\\)$`),Ci=RegExp(`^rgba\\(${vi},${vi},${vi},${_i}\\)$`),wi=RegExp(`^hsl\\(${_i},${vi},${vi}\\)$`),Ti=RegExp(`^hsla\\(${_i},${vi},${vi},${_i}\\)$`),Ei={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};di(pi,ji,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Di,formatHex:Di,formatHex8:Oi,formatHsl:ki,formatRgb:Ai,toString:Ai});function Di(){return this.rgb().formatHex()}function Oi(){return this.rgb().formatHex8()}function ki(){return Wi(this).formatHsl()}function Ai(){return this.rgb().formatRgb()}function ji(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=yi.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Mi(t):n===3?new Ii(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ni(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ni(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=bi.exec(e))?new Ii(t[1],t[2],t[3],1):(t=xi.exec(e))?new Ii(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Si.exec(e))?Ni(t[1],t[2],t[3],t[4]):(t=Ci.exec(e))?Ni(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=wi.exec(e))?Ui(t[1],t[2]/100,t[3]/100,1):(t=Ti.exec(e))?Ui(t[1],t[2]/100,t[3]/100,t[4]):Ei.hasOwnProperty(e)?Mi(Ei[e]):e===`transparent`?new Ii(NaN,NaN,NaN,0):null}function Mi(e){return new Ii(e>>16&255,e>>8&255,e&255,1)}function Ni(e,t,n,r){return r<=0&&(e=t=n=NaN),new Ii(e,t,n,r)}function Pi(e){return e instanceof pi||(e=ji(e)),e?(e=e.rgb(),new Ii(e.r,e.g,e.b,e.opacity)):new Ii}function Fi(e,t,n,r){return arguments.length===1?Pi(e):new Ii(e,t,n,r??1)}function Ii(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}di(Ii,Fi,fi(pi,{brighter(e){return e=e==null?hi:hi**+e,new Ii(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mi:mi**+e,new Ii(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Ii(Vi(this.r),Vi(this.g),Vi(this.b),Bi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Li,formatHex:Li,formatHex8:Ri,formatRgb:zi,toString:zi}));function Li(){return`#${Hi(this.r)}${Hi(this.g)}${Hi(this.b)}`}function Ri(){return`#${Hi(this.r)}${Hi(this.g)}${Hi(this.b)}${Hi((isNaN(this.opacity)?1:this.opacity)*255)}`}function zi(){let e=Bi(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Vi(this.r)}, ${Vi(this.g)}, ${Vi(this.b)}${e===1?`)`:`, ${e})`}`}function Bi(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Vi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Hi(e){return e=Vi(e),(e<16?`0`:``)+e.toString(16)}function Ui(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Ki(e,t,n,r)}function Wi(e){if(e instanceof Ki)return new Ki(e.h,e.s,e.l,e.opacity);if(e instanceof pi||(e=ji(e)),!e)return new Ki;if(e instanceof Ki)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new Ki(o,s,c,e.opacity)}function Gi(e,t,n,r){return arguments.length===1?Wi(e):new Ki(e,t,n,r??1)}function Ki(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}di(Ki,Gi,fi(pi,{brighter(e){return e=e==null?hi:hi**+e,new Ki(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mi:mi**+e,new Ki(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Ii(Yi(e>=240?e-240:e+120,i,r),Yi(e,i,r),Yi(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Ki(qi(this.h),Ji(this.s),Ji(this.l),Bi(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Bi(this.opacity);return`${e===1?`hsl(`:`hsla(`}${qi(this.h)}, ${Ji(this.s)*100}%, ${Ji(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function qi(e){return e=(e||0)%360,e<0?e+360:e}function Ji(e){return Math.max(0,Math.min(1,e||0))}function Yi(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var Xi=e=>()=>e;function Zi(e,t){return function(n){return e+n*t}}function Qi(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function $i(e){return(e=+e)==1?ea:function(t,n){return n-t?Qi(t,n,e):Xi(isNaN(t)?n:t)}}function ea(e,t){var n=t-e;return n?Zi(e,n):Xi(isNaN(e)?t:e)}var ta=(function e(t){var n=$i(t);function r(e,t){var r=n((e=Fi(e)).r,(t=Fi(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=ea(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function na(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var ra=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,ia=new RegExp(ra.source,`g`);function aa(e){return function(){return e}}function oa(e){return function(t){return e(t)+``}}function sa(e,t){var n=ra.lastIndex=ia.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=ra.exec(e))&&(i=ia.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:na(r,i)})),n=ia.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?oa(c[0].x):aa(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}var ca=180/Math.PI,la={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ua(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*ca,skewX:Math.atan(c)*ca,scaleX:o,scaleY:s}}var da;function fa(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?la:ua(t.a,t.b,t.c,t.d,t.e,t.f)}function pa(e){return e==null||(da||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),da.setAttribute(`transform`,e),!(e=da.transform.baseVal.consolidate()))?la:(e=e.matrix,ua(e.a,e.b,e.c,e.d,e.e,e.f))}function ma(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:na(e,i)},{i:c-2,x:na(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:na(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:na(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:na(e,n)},{i:s-2,x:na(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var ha=ma(fa,`px, `,`px)`,`deg)`),ga=ma(pa,`, `,`)`,`)`),_a=1e-12;function va(e){return((e=Math.exp(e))+1/e)/2}function ya(e){return((e=Math.exp(e))-1/e)/2}function ba(e){return((e=Math.exp(2*e))-1)/(e+1)}var xa=(function e(t,n,r){function i(e,i){var a=e[0],o=e[1],s=e[2],c=i[0],l=i[1],u=i[2],d=c-a,f=l-o,p=d*d+f*f,m,h;if(p<_a)h=Math.log(u/s)/t,m=function(e){return[a+e*d,o+e*f,s*Math.exp(t*e*h)]};else{var g=Math.sqrt(p),_=(u*u-s*s+r*p)/(2*s*n*g),v=(u*u-s*s-r*p)/(2*u*n*g),y=Math.log(Math.sqrt(_*_+1)-_);h=(Math.log(Math.sqrt(v*v+1)-v)-y)/t,m=function(e){var r=e*h,i=va(y),c=s/(n*g)*(i*ba(t*r+y)-ya(y));return[a+c*d,o+c*f,s*i/va(t*r+y)]}}return m.duration=h*1e3*t/Math.SQRT2,m}return i.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},i})(Math.SQRT2,2,4),Sa=0,Ca=0,wa=0,Ta=1e3,Ea,Da,Oa=0,ka=0,Aa=0,ja=typeof performance==`object`&&performance.now?performance:Date,Ma=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Na(){return ka||=(Ma(Pa),ja.now()+Aa)}function Pa(){ka=0}function Fa(){this._call=this._time=this._next=null}Fa.prototype=Ia.prototype={constructor:Fa,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Na():+n)+(t==null?0:+t),!this._next&&Da!==this&&(Da?Da._next=this:Ea=this,Da=this),this._call=e,this._time=n,Va()},stop:function(){this._call&&(this._call=null,this._time=1/0,Va())}};function Ia(e,t,n){var r=new Fa;return r.restart(e,t,n),r}function La(){Na(),++Sa;for(var e=Ea,t;e;)(t=ka-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Sa}function Ra(){ka=(Oa=ja.now())+Aa,Sa=Ca=0;try{La()}finally{Sa=0,Ba(),ka=0}}function za(){var e=ja.now(),t=e-Oa;t>Ta&&(Aa-=t,Oa=e)}function Ba(){for(var e,t=Ea,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Ea=n);Da=e,Va(r)}function Va(e){Sa||(Ca&&=clearTimeout(Ca),e-ka>24?(e<1/0&&(Ca=setTimeout(Ra,e-ja.now()-Aa)),wa&&=clearInterval(wa)):(wa||=(Oa=ja.now(),setInterval(za,Ta)),Sa=1,Ma(Ra)))}function Ha(e,t,n){var r=new Fa;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Ua=Gt(`start`,`end`,`cancel`,`interrupt`),Wa=[];function Ga(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Ya(e,n,{name:t,index:r,group:i,on:Ua,tween:Wa,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function Ka(e,t){var n=Ja(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function qa(e,t){var n=Ja(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function Ja(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Ya(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Ia(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return Ha(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(Ha(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function Xa(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n)(r=n[o]).name===t?(i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]):a=!1;a&&delete e.__transition}}function Za(e){return this.each(function(){Xa(this,e)})}function Qa(e,t){var n,r;return function(){var i=qa(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function $a(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=qa(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function eo(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=Ja(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Qa:$a)(n,e,t))}function to(e,t,n){var r=e._id;return e.each(function(){var e=qa(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return Ja(e,r).value[t]}}function no(e,t){var n;return(typeof t==`number`?na:t instanceof ji?ta:(n=ji(t))?(t=n,ta):sa)(e,t)}function ro(e){return function(){this.removeAttribute(e)}}function io(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ao(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function oo(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function so(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function co(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function lo(e,t){var n=Zt(e),r=n===`transform`?ga:no;return this.attrTween(e,typeof t==`function`?(n.local?co:so)(n,r,to(this,`attr.`+e,t)):t==null?(n.local?io:ro)(n):(n.local?oo:ao)(n,r,t))}function uo(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function fo(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function po(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&fo(e,i)),n}return i._value=t,i}function mo(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&uo(e,i)),n}return i._value=t,i}function ho(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=Zt(e);return this.tween(n,(r.local?po:mo)(r,t))}function go(e,t){return function(){Ka(this,e).delay=+t.apply(this,arguments)}}function _o(e,t){return t=+t,function(){Ka(this,e).delay=t}}function vo(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?go:_o)(t,e)):Ja(this.node(),t).delay}function yo(e,t){return function(){qa(this,e).duration=+t.apply(this,arguments)}}function bo(e,t){return t=+t,function(){qa(this,e).duration=t}}function xo(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?yo:bo)(t,e)):Ja(this.node(),t).duration}function So(e,t){if(typeof t!=`function`)throw Error();return function(){qa(this,e).ease=t}}function Co(e){var t=this._id;return arguments.length?this.each(So(t,e)):Ja(this.node(),t).ease}function wo(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();qa(this,e).ease=n}}function To(e){if(typeof e!=`function`)throw Error();return this.each(wo(this._id,e))}function Eo(e){typeof e!=`function`&&(e=un(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new ts(r,this._parents,this._name,this._id)}function Do(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new ts(o,this._parents,this._name,this._id)}function Oo(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function ko(e,t,n){var r,i,a=Oo(t)?Ka:qa;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function Ao(e,t){var n=this._id;return arguments.length<2?Ja(this.node(),n).on.on(e):this.each(ko(n,e,t))}function jo(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function Mo(){return this.on(`end.remove`,jo(this._id))}function No(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=nn(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,Ga(l[f],t,n,f,l,Ja(u,n)));return new ts(a,this._parents,t,n)}function Po(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=sn(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=Ja(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&Ga(p,t,n,h,f,m);a.push(f),o.push(u)}return new ts(a,o,t,n)}var Fo=qr.prototype.constructor;function Io(){return new Fo(this._groups,this._parents)}function Lo(e,t){var n,r,i;return function(){var a=er(this,e),o=(this.style.removeProperty(e),er(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function Ro(e){return function(){this.style.removeProperty(e)}}function zo(e,t,n){var r,i=n+``,a;return function(){var o=er(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function Bo(e,t,n){var r,i,a;return function(){var o=er(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),er(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function Vo(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=qa(this,e),l=c.on,u=c.value[a]==null?s||=Ro(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function Ho(e,t,n){var r=(e+=``)==`transform`?ha:no;return t==null?this.styleTween(e,Lo(e,r)).on(`end.style.`+e,Ro(e)):typeof t==`function`?this.styleTween(e,Bo(e,r,to(this,`style.`+e,t))).each(Vo(this._id,e)):this.styleTween(e,zo(e,r,t),n).on(`end.style.`+e,null)}function Uo(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Wo(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&Uo(e,a,n)),r}return a._value=t,a}function Go(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,Wo(e,t,n??``))}function Ko(e){return function(){this.textContent=e}}function qo(e){return function(){var t=e(this);this.textContent=t??``}}function Jo(e){return this.tween(`text`,typeof e==`function`?qo(to(this,`text`,e)):Ko(e==null?``:e+``))}function Yo(e){return function(t){this.textContent=e.call(this,t)}}function Xo(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&Yo(r)),t}return r._value=e,r}function Zo(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,Xo(e))}function Qo(){for(var e=this._name,t=this._id,n=ns(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=Ja(c,t);Ga(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new ts(r,this._parents,e,n)}function $o(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=qa(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var es=0;function ts(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function ns(){return++es}var rs=qr.prototype;ts.prototype={constructor:ts,select:No,selectAll:Po,selectChild:rs.selectChild,selectChildren:rs.selectChildren,filter:Eo,merge:Do,selection:Io,transition:Qo,call:rs.call,nodes:rs.nodes,node:rs.node,size:rs.size,empty:rs.empty,each:rs.each,on:Ao,attr:lo,attrTween:ho,style:Ho,styleTween:Go,text:Jo,textTween:Zo,remove:Mo,tween:eo,delay:vo,duration:xo,ease:Co,easeVarying:To,end:$o,[Symbol.iterator]:rs[Symbol.iterator]};function is(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var as={time:null,delay:0,duration:250,ease:is};function os(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function ss(e){var t,n;e instanceof ts?(t=e._id,e=e._name):(t=ns(),(n=as).time=Na(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&Ga(c,e,t,l,o,n||os(c,t));return new ts(r,this._parents,e,t)}qr.prototype.interrupt=Za,qr.prototype.transition=ss;var cs=e=>()=>e;function ls(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function us(e,t,n){this.k=e,this.x=t,this.y=n}us.prototype={constructor:us,scale:function(e){return e===1?this:new us(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new us(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var ds=new us(1,0,0);fs.prototype=us.prototype;function fs(e){for(;!e.__zoom;)if(!(e=e.parentNode))return ds;return e.__zoom}function ps(e){e.stopImmediatePropagation()}function ms(e){e.preventDefault(),e.stopImmediatePropagation()}function hs(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function gs(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function _s(){return this.__zoom||ds}function vs(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function ys(){return navigator.maxTouchPoints||`ontouchstart`in this}function bs(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function xs(){var e=hs,t=gs,n=bs,r=vs,i=ys,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=xa,l=Gt(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,_s).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,E).filter(i).on(`touchstart.zoom`,D).on(`touchmove.zoom`,ee).on(`touchend.zoom touchcancel.zoom`,te).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,_s),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(ds.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new us(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new us(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new us(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=Yr(this.that).datum();l.call(e,this.that,new ls(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=Zr(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],Xa(this),s.start();ms(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=Yr(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=Zr(t,i),l=t.clientX,u=t.clientY;ni(t.view),ps(t),a.mouse=[c,this.__zoom.invert(c)],Xa(this),a.start();function d(e){if(ms(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=Zr(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),ri(e.view,a.moved),ms(e),a.event(e).end()}}function E(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=Zr(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);ms(r),s>0?Yr(this).transition().duration(s).call(x,d,c,r):Yr(this).call(_.transform,d,c,r)}}function D(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(ps(t),s=0;s<i;++s)c=r[s],l=Zr(c,this),l=[l,this.__zoom.invert(l),c.identifier],a.touch0?!a.touch1&&a.touch0[2]!==l[2]&&(a.touch1=l,a.taps=0):(a.touch0=l,o=!0,a.taps=1+!!u);u&&=clearTimeout(u),o&&(a.taps<2&&(d=l[0],u=setTimeout(function(){u=null},p)),Xa(this),a.start())}}function ee(e,...t){if(this.__zooming){var r=S(this,t).event(e),i=e.changedTouches,a=i.length,s,c,l,u;for(ms(e),s=0;s<a;++s)c=i[s],l=Zr(c,this),r.touch0&&r.touch0[2]===c.identifier?r.touch0[0]=l:r.touch1&&r.touch1[2]===c.identifier&&(r.touch1[0]=l);if(c=r.that.__zoom,r.touch1){var d=r.touch0[0],f=r.touch0[1],p=r.touch1[0],m=r.touch1[1],h=(h=p[0]-d[0])*h+(h=p[1]-d[1])*h,g=(g=m[0]-f[0])*g+(g=m[1]-f[1])*g;c=v(c,Math.sqrt(h/g)),l=[(d[0]+p[0])/2,(d[1]+p[1])/2],u=[(f[0]+m[0])/2,(f[1]+m[1])/2]}else if(r.touch0)l=r.touch0[0],u=r.touch0[1];else return;r.zoom(`touch`,n(y(c,l,u),r.extent,o))}}function te(e,...t){if(this.__zooming){var n=S(this,t).event(e),r=e.changedTouches,i=r.length,a,o;for(ps(e),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),a=0;a<i;++a)o=r[a],n.touch0&&n.touch0[2]===o.identifier?delete n.touch0:n.touch1&&n.touch1[2]===o.identifier&&delete n.touch1;if(n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0)n.touch0[1]=this.__zoom.invert(n.touch0[0]);else if(n.end(),n.taps===2&&(o=Zr(o,this),Math.hypot(d[0]-o[0],d[1]-o[1])<g)){var s=Yr(this).on(`dblclick.zoom`);s&&s.apply(this,arguments)}}}return _.wheelDelta=function(e){return arguments.length?(r=typeof e==`function`?e:cs(+e),_):r},_.filter=function(t){return arguments.length?(e=typeof t==`function`?t:cs(!!t),_):e},_.touchable=function(e){return arguments.length?(i=typeof e==`function`?e:cs(!!e),_):i},_.extent=function(e){return arguments.length?(t=typeof e==`function`?e:cs([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),_):t},_.scaleExtent=function(e){return arguments.length?(a[0]=+e[0],a[1]=+e[1],_):[a[0],a[1]]},_.translateExtent=function(e){return arguments.length?(o[0][0]=+e[0][0],o[1][0]=+e[1][0],o[0][1]=+e[0][1],o[1][1]=+e[1][1],_):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},_.constrain=function(e){return arguments.length?(n=e,_):n},_.duration=function(e){return arguments.length?(s=+e,_):s},_.interpolate=function(e){return arguments.length?(c=e,_):c},_.on=function(){var e=l.on.apply(l,arguments);return e===l?_:e},_.clickDistance=function(e){return arguments.length?(h=(e=+e)*e,_):Math.sqrt(h)},_.tapDistance=function(e){return arguments.length?(g=+e,_):g},_}var Ss={error001:()=>`[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001`,error002:()=>`It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.`,error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>`The React Flow parent container needs a width and a height to render the graph.`,error005:()=>`Only child nodes can use a parent extent.`,error006:()=>`Can't create edge. An edge needs a source and a target.`,error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e===`source`?n:r}", edge id: ${t}.`,error010:()=>`Handle: No node id found. Make sure to only use a Handle inside a custom Node.`,error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e=`react`)=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`},Cs=[[-1/0,-1/0],[1/0,1/0]],ws=[`Enter`,` `,`Escape`],Ts;(function(e){e.Strict=`strict`,e.Loose=`loose`})(Ts||={});var Es;(function(e){e.Free=`free`,e.Vertical=`vertical`,e.Horizontal=`horizontal`})(Es||={});var Ds;(function(e){e.Partial=`partial`,e.Full=`full`})(Ds||={});var Os={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null},ks;(function(e){e.Bezier=`default`,e.Straight=`straight`,e.Step=`step`,e.SmoothStep=`smoothstep`,e.SimpleBezier=`simplebezier`})(ks||={});var As;(function(e){e.Arrow=`arrow`,e.ArrowClosed=`arrowclosed`})(As||={});var R;(function(e){e.Left=`left`,e.Top=`top`,e.Right=`right`,e.Bottom=`bottom`})(R||={});var js={[R.Left]:R.Right,[R.Right]:R.Left,[R.Top]:R.Bottom,[R.Bottom]:R.Top};function Ms(e){return e===null?null:e?`valid`:`invalid`}var Ns=e=>`id`in e&&`source`in e&&`target`in e,Ps=e=>`id`in e&&`position`in e&&!(`source`in e)&&!(`target`in e),Fs=e=>`id`in e&&`internals`in e&&!(`source`in e)&&!(`target`in e),Is=(e,t=[0,0])=>{let{width:n,height:r}=fc(e),i=e.origin??t,a=n*i[0],o=r*i[1];return{x:e.position.x-a,y:e.position.y-o}},Ls=(e,t={nodeOrigin:[0,0],nodeLookup:void 0})=>e.length===0?{x:0,y:0,width:0,height:0}:Qs(e.reduce((e,n)=>{let r=typeof n==`string`,i=!t.nodeLookup&&!r?n:void 0;return t.nodeLookup&&(i=r?t.nodeLookup.get(n):Fs(n)?n:t.nodeLookup.get(n.id)),Xs(e,i?ec(i,t.nodeOrigin):{x:0,y:0,x2:0,y2:0})},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),Rs=(e,t={})=>{if(e.size===0)return{x:0,y:0,width:0,height:0};let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return e.forEach(e=>{if(t.filter===void 0||t.filter(e)){let t=ec(e);n=Xs(n,t)}}),Qs(n)},zs=(e,t,[n,r,i]=[0,0,1],a=!1,o=!1)=>{let s={...sc(t,[n,r,i]),width:t.width/i,height:t.height/i},c=[];for(let t of e.values()){let{measured:e,selectable:n=!0,hidden:r=!1}=t;if(o&&!n||r)continue;let i=e.width??t.width??t.initialWidth??null,l=e.height??t.height??t.initialHeight??null,u=nc(s,$s(t)),d=(i??0)*(l??0),f=a&&u>0;(!t.internals.handleBounds||f||u>=d||t.dragging)&&c.push(t)}return c},Bs=(e,t)=>{let n=new Set;return e.forEach(e=>{n.add(e.id)}),t.filter(e=>n.has(e.source)||n.has(e.target))};function Vs(e,t){let n=new Map,r=t?.nodes?new Set(t.nodes.map(e=>e.id)):null;return e.forEach(e=>{e.measured.width&&e.measured.height&&(t?.includeHiddenNodes||!e.hidden)&&(!r||r.has(e.id))&&n.set(e.id,e)}),n}async function Hs({nodes:e,width:t,height:n,panZoom:r,minZoom:i,maxZoom:a},o){if(e.size===0)return Promise.resolve(!1);let s=lc(Rs(e),t,n,o?.minZoom??i,o?.maxZoom??a,o?.padding??.1);return await r.setViewport(s,{duration:o?.duration}),Promise.resolve(!0)}function Us({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:a}){let o=n.get(e),s=o.parentId?n.get(o.parentId):void 0,{x:c,y:l}=s?s.internals.positionAbsolute:{x:0,y:0},u=o.origin??r,d=i;if(o.extent===`parent`&&!o.expandParent){if(!s)a?.(`005`,Ss.error005());else{let e=s.measured.width,t=s.measured.height;e&&t&&(d=[[c,l],[c+e,l+t]])}}else s&&dc(o.extent)&&(d=[[o.extent[0][0]+c,o.extent[0][1]+l],[o.extent[1][0]+c,o.extent[1][1]+l]]);let f=dc(d)?Ks(t,d,o.measured):t;return{position:{x:f.x-c+o.measured.width*u[0],y:f.y-l+o.measured.height*u[1]},positionAbsolute:f}}async function Ws({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:i}){let a=new Set(e.map(e=>e.id)),o=[];for(let e of n){if(e.deletable===!1)continue;let t=a.has(e.id),n=!t&&e.parentId&&o.find(t=>t.id===e.parentId);(t||n)&&o.push(e)}let s=new Set(t.map(e=>e.id)),c=r.filter(e=>e.deletable!==!1),l=Bs(o,c);for(let e of c)s.has(e.id)&&!l.find(t=>t.id===e.id)&&l.push(e);if(!i)return{edges:l,nodes:o};let u=await i({nodes:o,edges:l});return typeof u==`boolean`?u?{edges:l,nodes:o}:{edges:[],nodes:[]}:u}var Gs=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),Ks=(e={x:0,y:0},t,n)=>({x:Gs(e.x,t[0][0],t[1][0]-(n?.width??0)),y:Gs(e.y,t[0][1],t[1][1]-(n?.height??0))});function qs(e,t,n){let{width:r,height:i}=fc(n),{x:a,y:o}=n.internals.positionAbsolute;return Ks(e,[[a,o],[a+r,o+i]],t)}var Js=(e,t,n)=>e<t?Gs(Math.abs(e-t),1,t)/t:e>n?-Gs(Math.abs(e-n),1,t)/t:0,Ys=(e,t,n=15,r=40)=>[Js(e.x,r,t.width-r)*n,Js(e.y,r,t.height-r)*n],Xs=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),Zs=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),Qs=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),$s=(e,t=[0,0])=>{let{x:n,y:r}=Fs(e)?e.internals.positionAbsolute:Is(e,t);return{x:n,y:r,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},ec=(e,t=[0,0])=>{let{x:n,y:r}=Fs(e)?e.internals.positionAbsolute:Is(e,t);return{x:n,y:r,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:r+(e.measured?.height??e.height??e.initialHeight??0)}},tc=(e,t)=>Qs(Xs(Zs(e),Zs(t))),nc=(e,t)=>{let n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},rc=e=>ic(e.width)&&ic(e.height)&&ic(e.x)&&ic(e.y),ic=e=>!isNaN(e)&&isFinite(e),ac=(e,t)=>{},oc=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),sc=({x:e,y:t},[n,r,i],a=!1,o=[1,1])=>{let s={x:(e-n)/i,y:(t-r)/i};return a?oc(s,o):s},cc=({x:e,y:t},[n,r,i])=>({x:e*i+n,y:t*i+r}),lc=(e,t,n,r,i,a)=>{let o=t/(e.width*(1+a)),s=n/(e.height*(1+a)),c=Gs(Math.min(o,s),r,i),l=e.x+e.width/2,u=e.y+e.height/2;return{x:t/2-l*c,y:n/2-u*c,zoom:c}},uc=()=>typeof navigator<`u`&&navigator?.userAgent?.indexOf(`Mac`)>=0;function dc(e){return e!==void 0&&e!==`parent`}function fc(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function pc(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function mc(e,t={width:0,height:0},n,r,i){let a={...e},o=r.get(n);if(o){let e=o.origin||i;a.x+=o.internals.positionAbsolute.x-(t.width??0)*e[0],a.y+=o.internals.positionAbsolute.y-(t.height??0)*e[1]}return a}function hc(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:i}){let{x:a,y:o}=xc(e),s=sc({x:a-(i?.left??0),y:o-(i?.top??0)},r),{x:c,y:l}=n?oc(s,t):s;return{xSnapped:c,ySnapped:l,...s}}var gc=e=>({width:e.offsetWidth,height:e.offsetHeight}),_c=e=>e.getRootNode?.()||window?.document,vc=[`INPUT`,`SELECT`,`TEXTAREA`];function yc(e){let t=e.composedPath?.()?.[0]||e.target;return vc.includes(t?.nodeName)||t?.hasAttribute?.(`contenteditable`)||!!t?.closest(`.nokey`)}var bc=e=>`clientX`in e,xc=(e,t)=>{let n=bc(e),r=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:i-(t?.top??0)}},Sc=(e,t,n,r,i)=>{let a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(t=>{let a=t.getBoundingClientRect();return{id:t.getAttribute(`data-handleid`),type:e,nodeId:i,position:t.getAttribute(`data-handlepos`),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...gc(t)}})};function Cc({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:o,targetControlY:s}){let c=e*.125+i*.375+o*.375+n*.125,l=t*.125+a*.375+s*.375+r*.125;return[c,l,Math.abs(c-e),Math.abs(l-t)]}function wc(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function Tc({pos:e,x1:t,y1:n,x2:r,y2:i,c:a}){switch(e){case R.Left:return[t-wc(t-r,a),n];case R.Right:return[t+wc(r-t,a),n];case R.Top:return[t,n-wc(n-i,a)];case R.Bottom:return[t,n+wc(i-n,a)]}}function Ec({sourceX:e,sourceY:t,sourcePosition:n=R.Bottom,targetX:r,targetY:i,targetPosition:a=R.Top,curvature:o=.25}){let[s,c]=Tc({pos:n,x1:e,y1:t,x2:r,y2:i,c:o}),[l,u]=Tc({pos:a,x1:r,y1:i,x2:e,y2:t,c:o}),[d,f,p,m]=Cc({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:l,targetControlY:u});return[`M${e},${t} C${s},${c} ${l},${u} ${r},${i}`,d,f,p,m]}function Dc({sourceX:e,sourceY:t,targetX:n,targetY:r}){let i=Math.abs(n-e)/2,a=n<e?n+i:n-i,o=Math.abs(r-t)/2;return[a,r<t?r+o:r-o,i,o]}function Oc({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:i=!1}){if(!i)return r;let a=n||t.selected||e.selected,o=Math.max(e.internals.z||0,t.internals.z||0,1e3);return r+(a?o:0)}function kc({sourceNode:e,targetNode:t,width:n,height:r,transform:i}){let a=Xs(ec(e),ec(t));return a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1),nc({x:-i[0]/i[2],y:-i[1]/i[2],width:n/i[2],height:r/i[2]},Qs(a))>0}var Ac=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||``}-${n}${r||``}`,jc=(e,t)=>t.some(t=>t.source===e.source&&t.target===e.target&&(t.sourceHandle===e.sourceHandle||!t.sourceHandle&&!e.sourceHandle)&&(t.targetHandle===e.targetHandle||!t.targetHandle&&!e.targetHandle)),Mc=(e,t)=>{if(!e.source||!e.target)return Ss.error006(),t;let n;return n=Ns(e)?{...e}:{...e,id:Ac(e)},jc(n,t)?t:(n.sourceHandle===null&&delete n.sourceHandle,n.targetHandle===null&&delete n.targetHandle,t.concat(n))};function Nc({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[i,a,o,s]=Dc({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,i,a,o,s]}var Pc={[R.Left]:{x:-1,y:0},[R.Right]:{x:1,y:0},[R.Top]:{x:0,y:-1},[R.Bottom]:{x:0,y:1}},Fc=({source:e,sourcePosition:t=R.Bottom,target:n})=>t===R.Left||t===R.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},Ic=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2);function Lc({source:e,sourcePosition:t=R.Bottom,target:n,targetPosition:r=R.Top,center:i,offset:a}){let o=Pc[t],s=Pc[r],c={x:e.x+o.x*a,y:e.y+o.y*a},l={x:n.x+s.x*a,y:n.y+s.y*a},u=Fc({source:c,sourcePosition:t,target:l}),d=u.x===0?`y`:`x`,f=u[d],p=[],m,h,g={x:0,y:0},_={x:0,y:0},[v,y,b,x]=Dc({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(o[d]*s[d]===-1){m=i.x??v,h=i.y??y;let e=[{x:m,y:c.y},{x:m,y:l.y}],t=[{x:c.x,y:h},{x:l.x,y:h}];p=o[d]===f?d===`x`?e:t:d===`x`?t:e}else{let i=[{x:c.x,y:l.y}],u=[{x:l.x,y:c.y}];if(p=d===`x`?o.x===f?u:i:o.y===f?i:u,t===r){let t=Math.abs(e[d]-n[d]);if(t<=a){let r=Math.min(a-1,a-t);o[d]===f?g[d]=(c[d]>e[d]?-1:1)*r:_[d]=(l[d]>n[d]?-1:1)*r}}if(t!==r){let e=d===`x`?`y`:`x`,t=o[d]===s[e],n=c[e]>l[e],r=c[e]<l[e];(o[d]===1&&(!t&&n||t&&r)||o[d]!==1&&(!t&&r||t&&n))&&(p=d===`x`?i:u)}let v={x:c.x+g.x,y:c.y+g.y},y={x:l.x+_.x,y:l.y+_.y};Math.max(Math.abs(v.x-p[0].x),Math.abs(y.x-p[0].x))>=Math.max(Math.abs(v.y-p[0].y),Math.abs(y.y-p[0].y))?(m=(v.x+y.x)/2,h=p[0].y):(m=p[0].x,h=(v.y+y.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...p,{x:l.x+_.x,y:l.y+_.y},n],m,h,b,x]}function Rc(e,t,n,r){let i=Math.min(Ic(e,t)/2,Ic(t,n)/2,r),{x:a,y:o}=t;if(e.x===a&&a===n.x||e.y===o&&o===n.y)return`L${a} ${o}`;if(e.y===o){let t=e.x<n.x?-1:1,r=e.y<n.y?1:-1;return`L ${a+i*t},${o}Q ${a},${o} ${a},${o+i*r}`}let s=e.x<n.x?1:-1;return`L ${a},${o+i*(e.y<n.y?-1:1)}Q ${a},${o} ${a+i*s},${o}`}function zc({sourceX:e,sourceY:t,sourcePosition:n=R.Bottom,targetX:r,targetY:i,targetPosition:a=R.Top,borderRadius:o=5,centerX:s,centerY:c,offset:l=20}){let[u,d,f,p,m]=Lc({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:i},targetPosition:a,center:{x:s,y:c},offset:l});return[u.reduce((e,t,n)=>{let r=``;return r=n>0&&n<u.length-1?Rc(u[n-1],t,u[n+1],o):`${n===0?`M`:`L`}${t.x} ${t.y}`,e+=r,e},``),d,f,p,m]}function Bc(e){return e&&!!(e.internals.handleBounds||e.handles?.length)&&!!(e.measured.width||e.width||e.initialWidth)}function Vc(e){let{sourceNode:t,targetNode:n}=e;if(!Bc(t)||!Bc(n))return null;let r=t.internals.handleBounds||Hc(t.handles),i=n.internals.handleBounds||Hc(n.handles),a=Wc(r?.source??[],e.sourceHandle),o=Wc(e.connectionMode===Ts.Strict?i?.target??[]:(i?.target??[]).concat(i?.source??[]),e.targetHandle);if(!a||!o)return e.onError?.(`008`,Ss.error008(a?`target`:`source`,{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;let s=a?.position||R.Bottom,c=o?.position||R.Top,l=Uc(t,a,s),u=Uc(n,o,c);return{sourceX:l.x,sourceY:l.y,targetX:u.x,targetY:u.y,sourcePosition:s,targetPosition:c}}function Hc(e){if(!e)return null;let t=[],n=[];for(let r of e)r.width=r.width??1,r.height=r.height??1,r.type===`source`?t.push(r):r.type===`target`&&n.push(r);return{source:t,target:n}}function Uc(e,t,n=R.Left,r=!1){let i=(t?.x??0)+e.internals.positionAbsolute.x,a=(t?.y??0)+e.internals.positionAbsolute.y,{width:o,height:s}=t??fc(e);if(r)return{x:i+o/2,y:a+s/2};switch(t?.position??n){case R.Top:return{x:i+o/2,y:a};case R.Right:return{x:i+o,y:a+s/2};case R.Bottom:return{x:i+o/2,y:a+s};case R.Left:return{x:i,y:a+s/2}}}function Wc(e,t){return e&&(t?e.find(e=>e.id===t):e[0])||null}function Gc(e,t){return e?typeof e==`string`?e:`${t?`${t}__`:``}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join(`&`)}`:``}function Kc(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let a=new Set;return e.reduce((e,o)=>([o.markerStart||r,o.markerEnd||i].forEach(r=>{if(r&&typeof r==`object`){let i=Gc(r,t);a.has(i)||(e.push({id:i,color:r.color||n,...r}),a.add(i))}}),e),[]).sort((e,t)=>e.id.localeCompare(t.id))}var qc={nodeOrigin:[0,0],nodeExtent:Cs,elevateNodesOnSelect:!0,defaults:{}},Jc={...qc,checkEquality:!0};function Yc(e,t){let n={...e};for(let e in t)t[e]!==void 0&&(n[e]=t[e]);return n}function Xc(e,t,n){let r=Yc(qc,n);for(let n of e.values())if(n.parentId)$c(n,e,t,r);else{let e=Ks(Is(n,r.nodeOrigin),dc(n.extent)?n.extent:r.nodeExtent,fc(n));n.internals.positionAbsolute=e}}function Zc(e,t,n,r){let i=Yc(Jc,r),a=new Map(t),o=i?.elevateNodesOnSelect?1e3:0;t.clear(),n.clear();for(let s of e){let e=a.get(s.id);if(i.checkEquality&&s===e?.internals.userNode)t.set(s.id,e);else{let n=Ks(Is(s,i.nodeOrigin),dc(s.extent)?s.extent:i.nodeExtent,fc(s));e={...i.defaults,...s,measured:{width:s.measured?.width,height:s.measured?.height},internals:{positionAbsolute:n,handleBounds:s.measured?e?.internals.handleBounds:void 0,z:el(s,o),userNode:s}},t.set(s.id,e)}s.parentId&&$c(e,t,n,r)}}function Qc(e,t){if(!e.parentId)return;let n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function $c(e,t,n,r){let{elevateNodesOnSelect:i,nodeOrigin:a,nodeExtent:o}=Yc(qc,r),s=e.parentId,c=t.get(s);if(!c){console.warn(`Parent node ${s} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}Qc(e,n);let{x:l,y:u,z:d}=tl(e,c,a,o,i?1e3:0),{positionAbsolute:f}=e.internals,p=l!==f.x||u!==f.y;(p||d!==e.internals.z)&&(e.internals={...e.internals,positionAbsolute:p?{x:l,y:u}:f,z:d})}function el(e,t){return(ic(e.zIndex)?e.zIndex:0)+(e.selected?t:0)}function tl(e,t,n,r,i){let{x:a,y:o}=t.internals.positionAbsolute,s=fc(e),c=Is(e,n),l=dc(e.extent)?Ks(c,e.extent,s):c,u=Ks({x:a+l.x,y:o+l.y},r,s);e.extent===`parent`&&(u=qs(u,s,t));let d=el(e,i),f=t.internals.z??0;return{x:u.x,y:u.y,z:f>d?f:d}}function nl(e,t,n,r=[0,0]){let i=[],a=new Map;for(let n of e){let e=t.get(n.parentId);if(!e)continue;let r=tc(a.get(n.parentId)?.expandedRect??$s(e),n.rect);a.set(n.parentId,{expandedRect:r,parent:e})}return a.size>0&&a.forEach(({expandedRect:t,parent:a},o)=>{let s=a.internals.positionAbsolute,c=fc(a),l=a.origin??r,u=t.x<s.x?Math.round(Math.abs(s.x-t.x)):0,d=t.y<s.y?Math.round(Math.abs(s.y-t.y)):0,f=Math.max(c.width,Math.round(t.width)),p=Math.max(c.height,Math.round(t.height)),m=(f-c.width)*l[0],h=(p-c.height)*l[1];(u>0||d>0||m||h)&&(i.push({id:o,type:`position`,position:{x:a.position.x-u+m,y:a.position.y-d+h}}),n.get(o)?.forEach(t=>{e.some(e=>e.id===t.id)||i.push({id:t.id,type:`position`,position:{x:t.position.x+u,y:t.position.y+d}})})),(c.width<t.width||c.height<t.height||u||d)&&i.push({id:o,type:`dimensions`,setAttributes:!0,dimensions:{width:f+(u?l[0]*u-m:0),height:p+(d?l[1]*d-h:0)}})}),i}function rl(e,t,n,r,i,a){let o=r?.querySelector(`.xyflow__viewport`),s=!1;if(!o)return{changes:[],updatedInternals:s};let c=[],l=window.getComputedStyle(o),{m22:u}=new window.DOMMatrixReadOnly(l.transform),d=[];for(let r of e.values()){let e=t.get(r.id);if(e){if(e.hidden)e.internals={...e.internals,handleBounds:void 0},s=!0;else{let o=gc(r.nodeElement),l=e.measured.width!==o.width||e.measured.height!==o.height;if(o.width&&o.height&&(l||!e.internals.handleBounds||r.force)){let f=r.nodeElement.getBoundingClientRect(),p=dc(e.extent)?e.extent:a,{positionAbsolute:m}=e.internals;e.parentId&&e.extent===`parent`?m=qs(m,o,t.get(e.parentId)):p&&(m=Ks(m,p,o)),e.measured=o,e.internals={...e.internals,positionAbsolute:m,handleBounds:{source:Sc(`source`,r.nodeElement,f,u,e.id),target:Sc(`target`,r.nodeElement,f,u,e.id)}},e.parentId&&$c(e,t,n,{nodeOrigin:i}),s=!0,l&&(c.push({id:e.id,type:`dimensions`,dimensions:o}),e.expandParent&&e.parentId&&d.push({id:e.id,parentId:e.parentId,rect:$s(e,i)}))}}}}if(d.length>0){let e=nl(d,t,n,i);c.push(...e)}return{changes:c,updatedInternals:s}}async function il({delta:e,panZoom:t,transform:n,translateExtent:r,width:i,height:a}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);let o=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],r),s=!!o&&(o.x!==n[0]||o.y!==n[1]||o.k!==n[2]);return Promise.resolve(s)}function al(e,t,n){e.clear(),t.clear();for(let r of n){let{source:n,target:i,sourceHandle:a=null,targetHandle:o=null}=r,s=`${n}-source-${a}`,c=`${i}-target-${o}`,l=e.get(s)||new Map,u=e.get(c)||new Map,d={edgeId:r.id,source:n,target:i,sourceHandle:a,targetHandle:o};t.set(r.id,r),e.set(s,l.set(`${i}-${o}`,d)),e.set(c,u.set(`${n}-${a}`,d))}}function ol(e,t){if(!e.parentId)return!1;let n=t.get(e.parentId);return n?n.selected?!0:ol(n,t):!1}function sl(e,t,n){let r=e;do{if(r?.matches(t))return!0;if(r===n)return!1;r=r.parentElement}while(r);return!1}function cl(e,t,n,r){let i=new Map;for(let[a,o]of e)if((o.selected||o.id===r)&&(!o.parentId||!ol(o,e))&&(o.draggable||t&&o.draggable===void 0)){let t=e.get(a);t&&i.set(a,{id:a,position:t.position||{x:0,y:0},distance:{x:n.x-t.internals.positionAbsolute.x,y:n.y-t.internals.positionAbsolute.y},extent:t.extent,parentId:t.parentId,origin:t.origin,expandParent:t.expandParent,internals:{positionAbsolute:t.internals.positionAbsolute||{x:0,y:0}},measured:{width:t.measured.width??0,height:t.measured.height??0}})}return i}function ll({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){let i=[];for(let[e,a]of t){let t=n.get(e)?.internals.userNode;t&&i.push({...t,position:a.position,dragging:r})}if(!e)return[i[0],i];let a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:i[0],i]}function ul({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:i}){let a={x:null,y:null},o=0,s=new Map,c=!1,l={x:0,y:0},u=null,d=!1,f=null,p=!1;function m({noDragClassName:m,handleSelector:h,domNode:g,isSelectable:_,nodeId:v,nodeClickDistance:y=0}){f=Yr(g);function b({x:e,y:n},i){let{nodeLookup:o,nodeExtent:c,snapGrid:l,snapToGrid:u,nodeOrigin:d,onNodeDrag:f,onSelectionDrag:p,onError:m,updateNodePositions:h}=t();a={x:e,y:n};let g=!1,_={x:0,y:0,x2:0,y2:0};s.size>1&&c&&(_=Zs(Rs(s)));for(let[t,r]of s){if(!o.has(t))continue;let i={x:e-r.distance.x,y:n-r.distance.y};u&&(i=oc(i,l));let a=[[c[0][0],c[0][1]],[c[1][0],c[1][1]]];if(s.size>1&&c&&!r.extent){let{positionAbsolute:e}=r.internals,t=e.x-_.x+c[0][0],n=e.x+r.measured.width-_.x2+c[1][0],i=e.y-_.y+c[0][1],o=e.y+r.measured.height-_.y2+c[1][1];a=[[t,i],[n,o]]}let{position:f,positionAbsolute:p}=Us({nodeId:t,nextPosition:i,nodeLookup:o,nodeExtent:a,nodeOrigin:d,onError:m});g=g||r.position.x!==f.x||r.position.y!==f.y,r.position=f,r.internals.positionAbsolute=p}if(g&&(h(s,!0),i&&(r||f||!v&&p))){let[e,t]=ll({nodeId:v,dragItems:s,nodeLookup:o});r?.(i,s,e,t),f?.(i,e,t),v||p?.(i,t)}}async function x(){if(!u)return;let{transform:e,panBy:n,autoPanSpeed:r}=t(),[i,s]=Ys(l,u,r);(i!==0||s!==0)&&(a.x=(a.x??0)-i/e[2],a.y=(a.y??0)-s/e[2],await n({x:i,y:s})&&b(a,null)),o=requestAnimationFrame(x)}function S(r){let{nodeLookup:i,multiSelectionActive:o,nodesDraggable:c,transform:l,snapGrid:f,snapToGrid:p,selectNodesOnDrag:m,onNodeDragStart:h,onSelectionDragStart:g,unselectNodesAndEdges:y}=t();d=!0,(!m||!_)&&!o&&v&&(i.get(v)?.selected||y()),_&&m&&v&&e?.(v);let b=hc(r.sourceEvent,{transform:l,snapGrid:f,snapToGrid:p,containerBounds:u});if(a=b,s=cl(i,c,b,v),s.size>0&&(n||h||!v&&g)){let[e,t]=ll({nodeId:v,dragItems:s,nodeLookup:i});n?.(r.sourceEvent,s,e,t),h?.(r.sourceEvent,e,t),v||g?.(r.sourceEvent,t)}}let C=ui().clickDistance(y).on(`start`,e=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:o,snapToGrid:s}=t();u=n?.getBoundingClientRect()||null,p=!1,r===0&&S(e),a=hc(e.sourceEvent,{transform:i,snapGrid:o,snapToGrid:s,containerBounds:u}),l=xc(e.sourceEvent,u)}).on(`drag`,e=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:o,nodeDragThreshold:f,nodeLookup:m}=t(),h=hc(e.sourceEvent,{transform:r,snapGrid:i,snapToGrid:o,containerBounds:u});if((e.sourceEvent.type===`touchmove`&&e.sourceEvent.touches.length>1||v&&!m.has(v))&&(p=!0),!p){if(!c&&n&&d&&(c=!0,x()),!d){let t=h.xSnapped-(a.x??0),n=h.ySnapped-(a.y??0);Math.sqrt(t*t+n*n)>f&&S(e)}(a.x!==h.xSnapped||a.y!==h.ySnapped)&&s&&d&&(l=xc(e.sourceEvent,u),b(h,e.sourceEvent))}}).on(`end`,e=>{if(d&&!p&&(c=!1,d=!1,cancelAnimationFrame(o),s.size>0)){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:o}=t();if(r(s,!1),i||a||!v&&o){let[t,r]=ll({nodeId:v,dragItems:s,nodeLookup:n,dragging:!1});i?.(e.sourceEvent,s,t,r),a?.(e.sourceEvent,t,r),v||o?.(e.sourceEvent,r)}}}).filter(e=>{let t=e.target;return!e.button&&(!m||!sl(t,`.${m}`,g))&&(!h||sl(t,h,g))});f.call(C)}function h(){f?.on(`.drag`,null)}return{update:m,destroy:h}}function dl(e,t,n){let r=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(let e of t.values())nc(i,$s(e))>0&&r.push(e);return r}var fl=250;function pl(e,t,n,r){let i=[],a=1/0,o=dl(e,n,t+fl);for(let n of o){let o=[...n.internals.handleBounds?.source??[],...n.internals.handleBounds?.target??[]];for(let s of o){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;let{x:o,y:c}=Uc(n,s,s.position,!0),l=Math.sqrt((o-e.x)**2+(c-e.y)**2);l>t||(l<a?(i=[{...s,x:o,y:c}],a=l):l===a&&i.push({...s,x:o,y:c}))}}if(!i.length)return null;if(i.length>1){let e=r.type===`source`?`target`:`source`;return i.find(t=>t.type===e)??i[0]}return i[0]}function ml(e,t,n,r,i,a=!1){let o=r.get(e);if(!o)return null;let s=i===`strict`?o.internals.handleBounds?.[t]:[...o.internals.handleBounds?.source??[],...o.internals.handleBounds?.target??[]],c=(n?s?.find(e=>e.id===n):s?.[0])??null;return c&&a?{...c,...Uc(o,c,c.position,!0)}:c}function hl(e,t){return e||(t?.classList.contains(`target`)?`target`:t?.classList.contains(`source`)?`source`:null)}function gl(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}var _l=()=>!0;function vl(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:a,isTarget:o,domNode:s,nodeLookup:c,lib:l,autoPanOnConnect:u,flowId:d,panBy:f,cancelConnection:p,onConnectStart:m,onConnect:h,onConnectEnd:g,isValidConnection:_=_l,onReconnectEnd:v,updateConnection:y,getTransform:b,getFromHandle:x,autoPanSpeed:S}){let C=_c(e.target),w=0,T,{x:E,y:D}=xc(e),ee=C?.elementFromPoint(E,D),te=hl(a,ee),O=s?.getBoundingClientRect();if(!O||!te)return;let k=ml(i,te,r,c,t);if(!k)return;let ne=xc(e,O),re=!1,ie=null,ae=!1,A=null;function j(){if(!u||!O)return;let[e,t]=Ys(ne,O,S);f({x:e,y:t}),w=requestAnimationFrame(j)}let oe={...k,nodeId:i,type:te,position:k.position},se=c.get(i),M={inProgress:!0,isValid:null,from:Uc(se,oe,R.Left,!0),fromHandle:oe,fromPosition:oe.position,fromNode:se,to:ne,toHandle:null,toPosition:js[oe.position],toNode:null};y(M);let ce=M;m?.(e,{nodeId:i,handleId:r,handleType:te});function N(e){if(!x()||!oe){le(e);return}let a=b();ne=xc(e,O),T=pl(sc(ne,a,!1,[1,1]),n,c,oe),re||=(j(),!0);let s=yl(e,{handle:T,connectionMode:t,fromNodeId:i,fromHandleId:r,fromType:o?`target`:`source`,isValidConnection:_,doc:C,lib:l,flowId:d,nodeLookup:c});A=s.handleDomNode,ie=s.connection,ae=gl(!!T,s.isValid);let u={...ce,isValid:ae,to:T&&ae?cc({x:T.x,y:T.y},a):ne,toHandle:s.toHandle,toPosition:ae&&s.toHandle?s.toHandle.position:js[oe.position],toNode:s.toHandle?c.get(s.toHandle.nodeId):null};ae&&T&&ce.toHandle&&u.toHandle&&ce.toHandle.type===u.toHandle.type&&ce.toHandle.nodeId===u.toHandle.nodeId&&ce.toHandle.id===u.toHandle.id&&ce.to.x===u.to.x&&ce.to.y===u.to.y||(y(u),ce=u)}function le(e){(T||A)&&ie&&ae&&h?.(ie);let{inProgress:t,...n}=ce,r={...n,toPosition:ce.toHandle?ce.toPosition:null};g?.(e,r),a&&v?.(e,r),p(),cancelAnimationFrame(w),re=!1,ae=!1,ie=null,A=null,C.removeEventListener(`mousemove`,N),C.removeEventListener(`mouseup`,le),C.removeEventListener(`touchmove`,N),C.removeEventListener(`touchend`,le)}C.addEventListener(`mousemove`,N),C.addEventListener(`mouseup`,le),C.addEventListener(`touchmove`,N),C.addEventListener(`touchend`,le)}function yl(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:a,doc:o,lib:s,flowId:c,isValidConnection:l=_l,nodeLookup:u}){let d=a===`target`,f=t?o.querySelector(`.${s}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:p,y:m}=xc(e),h=o.elementFromPoint(p,m),g=h?.classList.contains(`${s}-flow__handle`)?h:f,_={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){let e=hl(void 0,g),t=g.getAttribute(`data-nodeid`),a=g.getAttribute(`data-handleid`),o=g.classList.contains(`connectable`),s=g.classList.contains(`connectableend`);if(!t||!e)return _;let c={source:d?t:r,sourceHandle:d?a:i,target:d?r:t,targetHandle:d?i:a};_.connection=c,_.isValid=o&&s&&(n===Ts.Strict?d&&e===`source`||!d&&e===`target`:t!==r||a!==i)&&l(c),_.toHandle=ml(t,e,a,u,n,!1)}return _}var bl={onPointerDown:vl,isValid:yl};function xl({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){let i=Yr(e);function a({translateExtent:e,width:a,height:o,zoomStep:s=10,pannable:c=!0,zoomable:l=!0,inversePan:u=!1}){let d=e=>{let r=n();if(e.sourceEvent.type!==`wheel`||!t)return;let i=-e.sourceEvent.deltaY*(e.sourceEvent.deltaMode===1?.05:e.sourceEvent.deltaMode?1:.002)*s,a=r[2]*2**i;t.scaleTo(a)},f=[0,0],p=xs().on(`start`,e=>{(e.sourceEvent.type===`mousedown`||e.sourceEvent.type===`touchstart`)&&(f=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY])}).on(`zoom`,c?i=>{let s=n();if(i.sourceEvent.type!==`mousemove`&&i.sourceEvent.type!==`touchmove`||!t)return;let c=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],l=[c[0]-f[0],c[1]-f[1]];f=c;let d=r()*Math.max(s[2],Math.log(s[2]))*(u?-1:1),p={x:s[0]-l[0]*d,y:s[1]-l[1]*d},m=[[0,0],[a,o]];t.setViewportConstrained({x:p.x,y:p.y,zoom:s[2]},m,e)}:null).on(`zoom.wheel`,l?d:null);i.call(p,{})}function o(){i.on(`zoom`,null)}return{update:a,destroy:o,pointer:Zr}}var Sl=(e,t)=>e.x!==t.x||e.y!==t.y||e.zoom!==t.k,Cl=e=>({x:e.x,y:e.y,zoom:e.k}),wl=({x:e,y:t,zoom:n})=>ds.translate(e,t).scale(n),Tl=(e,t)=>e.target.closest(`.${t}`),El=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),Dl=(e,t=0,n=()=>{})=>{let r=typeof t==`number`&&t>0;return r||n(),r?e.transition().duration(t).on(`end`,n):e},Ol=e=>{let t=e.ctrlKey&&uc()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function kl({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:o,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:l}){return u=>{if(Tl(u,t))return!1;u.preventDefault(),u.stopImmediatePropagation();let d=n.property(`__zoom`).k||1;if(u.ctrlKey&&o){let e=Zr(u),t=d*2**Ol(u);r.scaleTo(n,t,e,u);return}let f=u.deltaMode===1?20:1,p=i===Es.Vertical?0:u.deltaX*f,m=i===Es.Horizontal?0:u.deltaY*f;!uc()&&u.shiftKey&&i!==Es.Vertical&&(p=u.deltaY*f,m=0),r.translateBy(n,-(p/d)*a,-(m/d)*a,{internal:!0});let h=Cl(n.property(`__zoom`));clearTimeout(e.panScrollTimeout),e.isPanScrolling||(e.isPanScrolling=!0,s?.(u,h)),e.isPanScrolling&&(c?.(u,h),e.panScrollTimeout=setTimeout(()=>{l?.(u,h),e.isPanScrolling=!1},150))}}function Al({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,i){if(!t&&r.type===`wheel`&&!r.ctrlKey||Tl(r,e))return null;r.preventDefault(),n.call(this,r,i)}}function jl({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=Cl(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,r.sourceEvent?.type===`mousedown`&&t(!0),n&&n?.(r.sourceEvent,i)}}function Ml({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&El(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,Cl(a.transform))}}function Nl({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:a}){return o=>{if(!o.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&El(t,e.mouseButton??0)&&!e.usedRightMouseButton&&o.sourceEvent&&a(o.sourceEvent),e.usedRightMouseButton=!1,r(!1),i&&Sl(e.prevViewport,o.transform))){let t=Cl(o.transform);e.prevViewport=t,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(o.sourceEvent,t)},n?150:0)}}}function Pl({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:i,zoomOnDoubleClick:a,userSelectionActive:o,noWheelClassName:s,noPanClassName:c,lib:l}){return u=>{let d=e||t,f=n&&u.ctrlKey;if(u.button===1&&u.type===`mousedown`&&(Tl(u,`${l}-flow__node`)||Tl(u,`${l}-flow__edge`)))return!0;if(!r&&!d&&!i&&!a&&!n||o||Tl(u,s)&&u.type===`wheel`||Tl(u,c)&&(u.type!==`wheel`||i&&u.type===`wheel`&&!e)||!n&&u.ctrlKey&&u.type===`wheel`)return!1;if(!n&&u.type===`touchstart`&&u.touches?.length>1)return u.preventDefault(),!1;if(!d&&!i&&!f&&u.type===`wheel`||!r&&(u.type===`mousedown`||u.type===`touchstart`)||Array.isArray(r)&&!r.includes(u.button)&&u.type===`mousedown`)return!1;let p=Array.isArray(r)&&r.includes(u.button)||!u.button||u.button<=1;return(!u.ctrlKey||u.type===`wheel`)&&p}}function Fl({domNode:e,minZoom:t,maxZoom:n,paneClickDistance:r,translateExtent:i,viewport:a,onPanZoom:o,onPanZoomStart:s,onPanZoomEnd:c,onDraggingChange:l}){let u={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},d=e.getBoundingClientRect(),f=xs().clickDistance(!ic(r)||r<0?0:r).scaleExtent([t,n]).translateExtent(i),p=Yr(e).call(f);y({x:a.x,y:a.y,zoom:Gs(a.zoom,t,n)},[[0,0],[d.width,d.height]],i);let m=p.on(`wheel.zoom`),h=p.on(`dblclick.zoom`);f.wheelDelta(Ol);function g(e,t){return p?new Promise(n=>{f?.transform(Dl(p,t?.duration,()=>n(!0)),e)}):Promise.resolve(!1)}function _({noWheelClassName:e,noPanClassName:t,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:a,panOnScrollMode:d,panOnScrollSpeed:g,preventScrolling:_,zoomOnPinch:y,zoomOnScroll:b,zoomOnDoubleClick:x,zoomActivationKeyPressed:S,lib:C,onTransformChange:w}){r&&!u.isZoomingOrPanning&&v();let T=i&&!S&&!r?kl({zoomPanValues:u,noWheelClassName:e,d3Selection:p,d3Zoom:f,panOnScrollMode:d,panOnScrollSpeed:g,zoomOnPinch:y,onPanZoomStart:s,onPanZoom:o,onPanZoomEnd:c}):Al({noWheelClassName:e,preventScrolling:_,d3ZoomHandler:m});if(p.on(`wheel.zoom`,T,{passive:!1}),!r){let e=jl({zoomPanValues:u,onDraggingChange:l,onPanZoomStart:s});f.on(`start`,e);let t=Ml({zoomPanValues:u,panOnDrag:a,onPaneContextMenu:!!n,onPanZoom:o,onTransformChange:w});f.on(`zoom`,t);let r=Nl({zoomPanValues:u,panOnDrag:a,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:c,onDraggingChange:l});f.on(`end`,r)}let E=Pl({zoomActivationKeyPressed:S,panOnDrag:a,zoomOnScroll:b,panOnScroll:i,zoomOnDoubleClick:x,zoomOnPinch:y,userSelectionActive:r,noPanClassName:t,noWheelClassName:e,lib:C});f.filter(E),x?p.on(`dblclick.zoom`,h):p.on(`dblclick.zoom`,null)}function v(){f.on(`zoom`,null)}async function y(e,t,n){let r=wl(e),i=f?.constrain()(r,t,n);return i&&await g(i),new Promise(e=>e(i))}async function b(e,t){let n=wl(e);return await g(n,t),new Promise(e=>e(n))}function x(e){if(p){let t=wl(e),n=p.property(`__zoom`);(n.k!==e.zoom||n.x!==e.x||n.y!==e.y)&&f?.transform(p,t,null,{sync:!0})}}function S(){let e=p?fs(p.node()):{x:0,y:0,k:1};return{x:e.x,y:e.y,zoom:e.k}}function C(e,t){return p?new Promise(n=>{f?.scaleTo(Dl(p,t?.duration,()=>n(!0)),e)}):Promise.resolve(!1)}function w(e,t){return p?new Promise(n=>{f?.scaleBy(Dl(p,t?.duration,()=>n(!0)),e)}):Promise.resolve(!1)}function T(e){f?.scaleExtent(e)}function E(e){f?.translateExtent(e)}function D(e){let t=!ic(e)||e<0?0:e;f?.clickDistance(t)}return{update:_,destroy:v,setViewport:b,setViewportConstrained:y,getViewport:S,scaleTo:C,scaleBy:w,setScaleExtent:T,setTranslateExtent:E,syncViewport:x,setClickDistance:D}}var Il;(function(e){e.Line=`line`,e.Handle=`handle`})(Il||={});function Ll({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:i,affectsY:a}){let o=e-t,s=n-r,c=[o>0?1:o<0?-1:0,s>0?1:s<0?-1:0];return o&&i&&(c[0]*=-1),s&&a&&(c[1]*=-1),c}function Rl(e){return{isHorizontal:e.includes(`right`)||e.includes(`left`),isVertical:e.includes(`bottom`)||e.includes(`top`),affectsX:e.includes(`left`),affectsY:e.includes(`top`)}}function zl(e,t){return Math.max(0,t-e)}function Bl(e,t){return Math.max(0,e-t)}function Vl(e,t,n){return Math.max(0,t-e,e-n)}function Hl(e,t){return e?!t:t}function Ul(e,t,n,r,i,a,o,s){let{affectsX:c,affectsY:l}=t,{isHorizontal:u,isVertical:d}=t,f=u&&d,{xSnapped:p,ySnapped:m}=n,{minWidth:h,maxWidth:g,minHeight:_,maxHeight:v}=r,{x:y,y:b,width:x,height:S,aspectRatio:C}=e,w=Math.floor(u?p-e.pointerX:0),T=Math.floor(d?m-e.pointerY:0),E=x+(c?-w:w),D=S+(l?-T:T),ee=-a[0]*x,te=-a[1]*S,O=Vl(E,h,g),k=Vl(D,_,v);if(o){let e=0,t=0;c&&w<0?e=zl(y+w+ee,o[0][0]):!c&&w>0&&(e=Bl(y+E+ee,o[1][0])),l&&T<0?t=zl(b+T+te,o[0][1]):!l&&T>0&&(t=Bl(b+D+te,o[1][1])),O=Math.max(O,e),k=Math.max(k,t)}if(s){let e=0,t=0;c&&w>0?e=Bl(y+w,s[0][0]):!c&&w<0&&(e=zl(y+E,s[1][0])),l&&T>0?t=Bl(b+T,s[0][1]):!l&&T<0&&(t=zl(b+D,s[1][1])),O=Math.max(O,e),k=Math.max(k,t)}if(i){if(u){let e=Vl(E/C,_,v)*C;if(O=Math.max(O,e),o){let e=0;e=!c&&!l||c&&!l&&f?Bl(b+te+E/C,o[1][1])*C:zl(b+te+(c?w:-w)/C,o[0][1])*C,O=Math.max(O,e)}if(s){let e=0;e=!c&&!l||c&&!l&&f?zl(b+E/C,s[1][1])*C:Bl(b+(c?w:-w)/C,s[0][1])*C,O=Math.max(O,e)}}if(d){let e=Vl(D*C,h,g)/C;if(k=Math.max(k,e),o){let e=0;e=!c&&!l||l&&!c&&f?Bl(y+D*C+ee,o[1][0])/C:zl(y+(l?T:-T)*C+ee,o[0][0])/C,k=Math.max(k,e)}if(s){let e=0;e=!c&&!l||l&&!c&&f?zl(y+D*C,s[1][0])/C:Bl(y+(l?T:-T)*C,s[0][0])/C,k=Math.max(k,e)}}}T+=T<0?k:-k,w+=w<0?O:-O,i&&(f?E>D*C?T=(Hl(c,l)?-w:w)/C:w=(Hl(c,l)?-T:T)*C:u?(T=w/C,l=c):(w=T*C,c=l));let ne=c?y+w:y,re=l?b+T:b;return{width:x+(c?-w:w),height:S+(l?-T:T),x:a[0]*w*(c?-1:1)+ne,y:a[1]*T*(l?-1:1)+re}}var Wl={width:0,height:0,x:0,y:0},Gl={...Wl,pointerX:0,pointerY:0,aspectRatio:1};function Kl(e){return[[0,0],[e.measured.width,e.measured.height]]}function ql(e,t,n){let r=t.position.x+e.position.x,i=t.position.y+e.position.y,a=e.measured.width??0,o=e.measured.height??0,s=n[0]*a,c=n[1]*o;return[[r-s,i-c],[r+a-s,i+o-c]]}function Jl({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:i}){let a=Yr(e);function o({controlPosition:e,boundaries:o,keepAspectRatio:s,onResizeStart:c,onResize:l,onResizeEnd:u,shouldResize:d}){let f={...Wl},p={...Gl},m=Rl(e),h,g=null,_=[],v,y,b,x=ui().on(`start`,e=>{let{nodeLookup:r,transform:i,snapGrid:a,snapToGrid:o,nodeOrigin:s,paneDomNode:l}=n();if(h=r.get(t),!h)return;g=l?.getBoundingClientRect()??null;let{xSnapped:u,ySnapped:d}=hc(e.sourceEvent,{transform:i,snapGrid:a,snapToGrid:o,containerBounds:g});f={width:h.measured.width??0,height:h.measured.height??0,x:h.position.x??0,y:h.position.y??0},p={...f,pointerX:u,pointerY:d,aspectRatio:f.width/f.height},v=void 0,h.parentId&&(h.extent===`parent`||h.expandParent)&&(v=r.get(h.parentId),y=v&&h.extent===`parent`?Kl(v):void 0),_=[],b=void 0;for(let[e,n]of r)if(n.parentId===t&&(_.push({id:e,position:{...n.position},extent:n.extent}),n.extent===`parent`||n.expandParent)){let e=ql(n,h,n.origin??s);b=b?[[Math.min(e[0][0],b[0][0]),Math.min(e[0][1],b[0][1])],[Math.max(e[1][0],b[1][0]),Math.max(e[1][1],b[1][1])]]:e}c?.(e,{...f})}).on(`drag`,e=>{let{transform:t,snapGrid:i,snapToGrid:a,nodeOrigin:c}=n(),u=hc(e.sourceEvent,{transform:t,snapGrid:i,snapToGrid:a,containerBounds:g}),x=[];if(!h)return;let{x:S,y:C,width:w,height:T}=f,E={},D=h.origin??c,{width:ee,height:te,x:O,y:k}=Ul(p,m,u,o,s,D,y,b),ne=ee!==w,re=te!==T,ie=O!==S&&ne,ae=k!==C&&re;if(!ie&&!ae&&!ne&&!re)return;if((ie||ae||D[0]===1||D[1]===1)&&(E.x=ie?O:f.x,E.y=ae?k:f.y,f.x=E.x,f.y=E.y,_.length>0)){let e=O-S,t=k-C;for(let n of _)n.position={x:n.position.x-e+D[0]*(ee-w),y:n.position.y-t+D[1]*(te-T)},x.push(n)}if((ne||re)&&(E.width=ne?ee:f.width,E.height=re?te:f.height,f.width=E.width,f.height=E.height),v&&h.expandParent){let e=D[0]*(E.width??0);E.x&&E.x<e&&(f.x=e,p.x-=E.x-e);let t=D[1]*(E.height??0);E.y&&E.y<t&&(f.y=t,p.y-=E.y-t)}let A=Ll({width:f.width,prevWidth:w,height:f.height,prevHeight:T,affectsX:m.affectsX,affectsY:m.affectsY}),j={...f,direction:A};d?.(e,j)!==!1&&(l?.(e,j),r(E,x))}).on(`end`,e=>{u?.(e,{...f}),i?.()});a.call(x)}function s(){a.on(`.drag`,null)}return{update:o,destroy:s}}var Yl=o((e=>{var t=d();function n(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var r=typeof Object.is==`function`?Object.is:n,i=t.useState,a=t.useEffect,o=t.useLayoutEffect,s=t.useDebugValue;function c(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),c=r[0].inst,u=r[1];return o(function(){c.value=n,c.getSnapshot=t,l(c)&&u({inst:c})},[e,n,t]),a(function(){return l(c)&&u({inst:c}),e(function(){l(c)&&u({inst:c})})},[e]),s(n),n}function l(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}catch{return!0}}function u(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?u:c;e.useSyncExternalStore=t.useSyncExternalStore===void 0?f:t.useSyncExternalStore})),Xl=o(((e,t)=>{t.exports=Yl()})),Zl=o((e=>{var t=d(),n=Xl();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=n.useSyncExternalStore,o=t.useRef,s=t.useEffect,c=t.useMemo,l=t.useDebugValue;e.useSyncExternalStoreWithSelector=function(e,t,n,r,u){var d=o(null);if(d.current===null){var f={hasValue:!1,value:null};d.current=f}else f=d.current;d=c(function(){function e(e){if(!a){if(a=!0,o=e,e=r(e),u!==void 0&&f.hasValue){var t=f.value;if(u(t,e))return s=t}return s=e}if(t=s,i(o,e))return t;var n=r(e);return u!==void 0&&u(t,n)?(o=e,t):(o=e,s=n)}var a=!1,o,s,c=n===void 0?null:n;return[function(){return e(t())},c===null?void 0:function(){return e(c())}]},[t,n,r,u]);var p=a(e,d[0],d[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),l(p),p}})),Ql=c(o(((e,t)=>{t.exports=Zl()}))(),1),$l=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{n.clear()}},o=t=e(r,i,a);return a},eu=e=>e?$l(e):$l,{useDebugValue:tu}=v.default,{useSyncExternalStoreWithSelector:nu}=Ql.default,ru=e=>e;function iu(e,t=ru,n){let r=nu(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return tu(r),r}var au=(e,t)=>{let n=eu(e),r=(e,r=t)=>iu(n,e,r);return Object.assign(r,n),r},ou=(e,t)=>e?au(e,t):au;function su(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var cu=h(),lu=(0,v.createContext)(null),uu=lu.Provider,du=Ss.error001();function fu(e,t){let n=(0,v.useContext)(lu);if(n===null)throw Error(du);return iu(n,e,t)}function pu(){let e=(0,v.useContext)(lu);if(e===null)throw Error(du);return(0,v.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}var mu={display:`none`},hu={position:`absolute`,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0px, 0px, 0px, 0px)`,clipPath:`inset(100%)`},gu=`react-flow__node-desc`,_u=`react-flow__edge-desc`,vu=`react-flow__aria-live`,yu=e=>e.ariaLiveMessage;function bu({rfId:e}){let t=fu(yu);return(0,N.jsx)(`div`,{id:`${vu}-${e}`,"aria-live":`assertive`,"aria-atomic":`true`,style:hu,children:t})}function xu({rfId:e,disableKeyboardA11y:t}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{id:`${gu}-${e}`,style:mu,children:[`Press enter or space to select a node.`,!t&&`You can then use the arrow keys to move the node around.`,` Press delete to remove it and escape to cancel.`,` `]}),(0,N.jsx)(`div`,{id:`${_u}-${e}`,style:mu,children:`Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.`}),!t&&(0,N.jsx)(bu,{rfId:e})]})}var Su=e=>e.userSelectionActive?`none`:`all`,Cu=(0,v.forwardRef)(({position:e=`top-left`,children:t,className:n,style:r,...i},a)=>{let o=fu(Su),s=`${e}`.split(`-`);return(0,N.jsx)(`div`,{className:Ut([`react-flow__panel`,n,...s]),style:{...r,pointerEvents:o},ref:a,...i,children:t})});function wu({proOptions:e,position:t=`bottom-right`}){return e?.hideAttribution?null:(0,N.jsx)(Cu,{position:t,className:`react-flow__attribution`,"data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev`,children:(0,N.jsx)(`a`,{href:`https://reactflow.dev`,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`React Flow attribution`,children:`React Flow`})})}var Tu=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},Eu=e=>e.id;function Du(e,t){return su(e.selectedNodes.map(Eu),t.selectedNodes.map(Eu))&&su(e.selectedEdges.map(Eu),t.selectedEdges.map(Eu))}function Ou({onSelectionChange:e}){let t=pu(),{selectedNodes:n,selectedEdges:r}=fu(Tu,Du);return(0,v.useEffect)(()=>{let i={nodes:n,edges:r};e?.(i),t.getState().onSelectionChangeHandlers.forEach(e=>e(i))},[n,r,e]),null}var ku=e=>!!e.onSelectionChangeHandlers;function Au({onSelectionChange:e}){let t=fu(ku);return e||t?(0,N.jsx)(Ou,{onSelectionChange:e}):null}var ju=[0,0],Mu={x:0,y:0,zoom:1},Nu=[...`nodes.edges.defaultNodes.defaultEdges.onConnect.onConnectStart.onConnectEnd.onClickConnectStart.onClickConnectEnd.nodesDraggable.nodesConnectable.nodesFocusable.edgesFocusable.edgesReconnectable.elevateNodesOnSelect.elevateEdgesOnSelect.minZoom.maxZoom.nodeExtent.onNodesChange.onEdgesChange.elementsSelectable.connectionMode.snapGrid.snapToGrid.translateExtent.connectOnClick.defaultEdgeOptions.fitView.fitViewOptions.onNodesDelete.onEdgesDelete.onDelete.onNodeDrag.onNodeDragStart.onNodeDragStop.onSelectionDrag.onSelectionDragStart.onSelectionDragStop.onMoveStart.onMove.onMoveEnd.noPanClassName.nodeOrigin.autoPanOnConnect.autoPanOnNodeDrag.onError.connectionRadius.isValidConnection.selectNodesOnDrag.nodeDragThreshold.onBeforeDelete.debug.autoPanSpeed.paneClickDistance`.split(`.`),`rfId`],Pu=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setPaneClickDistance:e.setPaneClickDistance}),Fu={translateExtent:Cs,nodeOrigin:ju,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:`nopan`,rfId:`1`,paneClickDistance:0};function Iu(e){let{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:o,reset:s,setDefaultNodesAndEdges:c,setPaneClickDistance:l}=fu(Pu,su),u=pu();(0,v.useEffect)(()=>(c(e.defaultNodes,e.defaultEdges),()=>{d.current=Fu,s()}),[]);let d=(0,v.useRef)(Fu);return(0,v.useEffect)(()=>{for(let s of Nu){let c=e[s];c!==d.current[s]&&e[s]!==void 0&&(s===`nodes`?t(c):s===`edges`?n(c):s===`minZoom`?r(c):s===`maxZoom`?i(c):s===`translateExtent`?a(c):s===`nodeExtent`?o(c):s===`paneClickDistance`?l(c):s===`fitView`?u.setState({fitViewOnInit:c}):s===`fitViewOptions`?u.setState({fitViewOnInitOptions:c}):u.setState({[s]:c}))}d.current=e},Nu.map(t=>e[t])),null}function Lu(){return typeof window>`u`||!window.matchMedia?null:window.matchMedia(`(prefers-color-scheme: dark)`)}function Ru(e){let[t,n]=(0,v.useState)(e===`system`?null:e);return(0,v.useEffect)(()=>{if(e!==`system`){n(e);return}let t=Lu(),r=()=>n(t?.matches?`dark`:`light`);return r(),t?.addEventListener(`change`,r),()=>{t?.removeEventListener(`change`,r)}},[e]),t===null?Lu()?.matches?`dark`:`light`:t}var zu=typeof document<`u`?document:null;function Bu(e=null,t={target:zu,actInsideInputWithModifier:!0}){let[n,r]=(0,v.useState)(!1),i=(0,v.useRef)(!1),a=(0,v.useRef)(new Set([])),[o,s]=(0,v.useMemo)(()=>{if(e!==null){let t=(Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`).map(e=>e.replace(`+`,`
|
|
13
|
+
`).replace(`
|
|
14
|
+
|
|
15
|
+
`,`
|
|
16
|
+
+`).split(`
|
|
17
|
+
`));return[t,t.reduce((e,t)=>e.concat(...t),[])]}return[[],[]]},[e]);return(0,v.useEffect)(()=>{let n=t?.target||zu;if(e!==null){let e=e=>{if(i.current=e.ctrlKey||e.metaKey||e.shiftKey,(!i.current||i.current&&!t.actInsideInputWithModifier)&&yc(e))return!1;let n=Hu(e.code,s);a.current.add(e[n]),Vu(o,a.current,!1)&&(e.preventDefault(),r(!0))},c=e=>{if((!i.current||i.current&&!t.actInsideInputWithModifier)&&yc(e))return!1;let n=Hu(e.code,s);Vu(o,a.current,!0)?(r(!1),a.current.clear()):a.current.delete(e[n]),e.key===`Meta`&&a.current.clear(),i.current=!1},l=()=>{a.current.clear(),r(!1)};return n?.addEventListener(`keydown`,e),n?.addEventListener(`keyup`,c),window.addEventListener(`blur`,l),window.addEventListener(`contextmenu`,l),()=>{n?.removeEventListener(`keydown`,e),n?.removeEventListener(`keyup`,c),window.removeEventListener(`blur`,l),window.removeEventListener(`contextmenu`,l)}}},[e,r]),n}function Vu(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function Hu(e,t){return t.includes(e)?`code`:`key`}var Uu=()=>{let e=pu();return(0,v.useMemo)(()=>({zoomIn:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:t?.duration}):Promise.resolve(!1)},zoomOut:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:t?.duration}):Promise.resolve(!1)},zoomTo:(t,n)=>{let{panZoom:r}=e.getState();return r?r.scaleTo(t,{duration:n?.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[r,i,a],panZoom:o}=e.getState();return o?(await o.setViewport({x:t.x??r,y:t.y??i,zoom:t.zoom??a},{duration:n?.duration}),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},fitView:t=>{let{nodeLookup:n,minZoom:r,maxZoom:i,panZoom:a,domNode:o}=e.getState();if(!a||!o)return Promise.resolve(!1);let s=Vs(n,t),{width:c,height:l}=gc(o);return Hs({nodes:s,width:c,height:l,minZoom:r,maxZoom:i,panZoom:a},t)},setCenter:async(t,n,r)=>{let{width:i,height:a,maxZoom:o,panZoom:s}=e.getState(),c=r?.zoom===void 0?o:r.zoom,l=i/2-t*c,u=a/2-n*c;return s?(await s.setViewport({x:l,y:u,zoom:c},{duration:r?.duration}),Promise.resolve(!0)):Promise.resolve(!1)},fitBounds:async(t,n)=>{let{width:r,height:i,minZoom:a,maxZoom:o,panZoom:s}=e.getState(),c=lc(t,r,i,a,o,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(t,n={snapToGrid:!0})=>{let{transform:r,snapGrid:i,domNode:a}=e.getState();if(!a)return t;let{x:o,y:s}=a.getBoundingClientRect();return sc({x:t.x-o,y:t.y-s},r,n.snapToGrid,i)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:i,y:a}=r.getBoundingClientRect(),o=cc(t,n);return{x:o.x+i,y:o.y+a}}}),[])};function Wu(e,t){let n=[],r=new Map,i=[];for(let t of e)if(t.type===`add`){i.push(t);continue}else if(t.type===`remove`||t.type===`replace`)r.set(t.id,[t]);else{let e=r.get(t.id);e?e.push(t):r.set(t.id,[t])}for(let e of t){let t=r.get(e.id);if(!t){n.push(e);continue}if(t[0].type===`remove`)continue;if(t[0].type===`replace`){n.push({...t[0].item});continue}let i={...e};for(let e of t)Gu(e,i);n.push(i)}return i.length&&i.forEach(e=>{e.index===void 0?n.push({...e.item}):n.splice(e.index,0,{...e.item})}),n}function Gu(e,t){switch(e.type){case`select`:t.selected=e.selected;break;case`position`:e.position!==void 0&&(t.position=e.position),e.dragging!==void 0&&(t.dragging=e.dragging);break;case`dimensions`:e.dimensions!==void 0&&(t.measured??={},t.measured.width=e.dimensions.width,t.measured.height=e.dimensions.height,e.setAttributes&&(t.width=e.dimensions.width,t.height=e.dimensions.height)),typeof e.resizing==`boolean`&&(t.resizing=e.resizing)}}function Ku(e,t){return Wu(e,t)}function qu(e,t){return Wu(e,t)}function Ju(e,t){return{id:e,type:`select`,selected:t}}function Yu(e,t=new Set,n=!1){let r=[];for(let[i,a]of e){let e=t.has(i);(a.selected!==void 0||e)&&a.selected!==e&&(n&&(a.selected=e),r.push(Ju(a.id,e)))}return r}function Xu({items:e=[],lookup:t}){let n=[],r=new Map(e.map(e=>[e.id,e]));for(let[r,i]of e.entries()){let e=t.get(i.id),a=e?.internals?.userNode??e;a!==void 0&&a!==i&&n.push({id:i.id,item:i,type:`replace`}),a===void 0&&n.push({item:i,type:`add`,index:r})}for(let[e]of t)r.get(e)===void 0&&n.push({id:e,type:`remove`});return n}function Zu(e){return{id:e.id,type:`remove`}}var Qu=e=>Ps(e),$u=e=>Ns(e);function ed(e){return(0,v.forwardRef)(e)}var td=typeof window<`u`?v.useLayoutEffect:v.useEffect;function nd(e){let[t,n]=(0,v.useState)(BigInt(0)),[r]=(0,v.useState)(()=>rd(()=>n(e=>e+BigInt(1))));return td(()=>{let t=r.get();t.length&&(e(t),r.reset())},[t]),r}function rd(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}var id=(0,v.createContext)(null);function ad({children:e}){let t=pu(),n=nd((0,v.useCallback)(e=>{let{nodes:n=[],setNodes:r,hasDefaultNodes:i,onNodesChange:a,nodeLookup:o}=t.getState(),s=n;for(let t of e)s=typeof t==`function`?t(s):t;i?r(s):a&&a(Xu({items:s,lookup:o}))},[])),r=nd((0,v.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:i,onEdgesChange:a,edgeLookup:o}=t.getState(),s=n;for(let t of e)s=typeof t==`function`?t(s):t;i?r(s):a&&a(Xu({items:s,lookup:o}))},[])),i=(0,v.useMemo)(()=>({nodeQueue:n,edgeQueue:r}),[]);return(0,N.jsx)(id.Provider,{value:i,children:e})}function od(){let e=(0,v.useContext)(id);if(!e)throw Error(`useBatchContext must be used within a BatchProvider`);return e}var sd=e=>!!e.panZoom;function cd(){let e=Uu(),t=pu(),n=od(),r=fu(sd),i=(0,v.useMemo)(()=>{let e=e=>t.getState().nodeLookup.get(e),r=e=>{n.nodeQueue.push(e)},i=e=>{n.edgeQueue.push(e)},a=e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState(),i=Qu(e)?e:n.get(e.id),a=i.parentId?mc(i.position,i.measured,i.parentId,n,r):i.position;return $s({...i,position:a,width:i.measured?.width??i.width,height:i.measured?.height??i.height})},o=(e,t,n={replace:!1})=>{r(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&Qu(e)?e:{...r,...e}}return r}))},s=(e,t,n={replace:!1})=>{i(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&$u(e)?e:{...r,...e}}return r}))};return{getNodes:()=>t.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},getEdge:e=>t.getState().edgeLookup.get(e),setNodes:r,setEdges:i,addNodes:e=>{let t=Array.isArray(e)?e:[e];n.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];n.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:n=[],transform:r}=t.getState(),[i,a,o]=r;return{nodes:e.map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:i,y:a,zoom:o}}},deleteElements:async({nodes:e=[],edges:n=[]})=>{let{nodes:r,edges:i,onNodesDelete:a,onEdgesDelete:o,triggerNodeChanges:s,triggerEdgeChanges:c,onDelete:l,onBeforeDelete:u}=t.getState(),{nodes:d,edges:f}=await Ws({nodesToRemove:e,edgesToRemove:n,nodes:r,edges:i,onBeforeDelete:u}),p=f.length>0,m=d.length>0;if(p){let e=f.map(Zu);o?.(f),c(e)}if(m){let e=d.map(Zu);a?.(d),s(e)}return(m||p)&&l?.({nodes:d,edges:f}),{deletedNodes:d,deletedEdges:f}},getIntersectingNodes:(e,n=!0,r)=>{let i=rc(e),o=i?e:a(e),s=r!==void 0;return o?(r||t.getState().nodes).filter(r=>{let a=t.getState().nodeLookup.get(r.id);if(a&&!i&&(r.id===e.id||!a.internals.positionAbsolute))return!1;let c=nc($s(s?r:a),o);return n&&c>0||c>=o.width*o.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let r=rc(e)?e:a(e);if(!r)return!1;let i=nc(r,t);return n&&i>0||i>=r.width*r.height},updateNode:o,updateNodeData:(e,t,n={replace:!1})=>{o(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},getNodesBounds:e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState();return Ls(e,{nodeLookup:n,nodeOrigin:r})},getHandleConnections:({type:e,id:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${e}-${n??null}`)?.values()??[])}},[]);return(0,v.useMemo)(()=>({...i,...e,viewportInitialized:r}),[r])}var ld=e=>e.selected,ud={actInsideInputWithModifier:!1},dd=typeof window<`u`?window:void 0;function fd({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=pu(),{deleteElements:r}=cd(),i=Bu(e,ud),a=Bu(t,{target:dd});(0,v.useEffect)(()=>{if(i){let{edges:e,nodes:t}=n.getState();r({nodes:t.filter(ld),edges:e.filter(ld)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,v.useEffect)(()=>{n.setState({multiSelectionActive:a})},[a])}function pd(e){let t=pu();(0,v.useEffect)(()=>{let n=()=>{if(!e.current)return!1;let n=gc(e.current);(n.height===0||n.width===0)&&t.getState().onError?.(`004`,Ss.error004()),t.setState({width:n.width||500,height:n.height||500})};if(e.current){n(),window.addEventListener(`resize`,n);let t=new ResizeObserver(()=>n());return t.observe(e.current),()=>{window.removeEventListener(`resize`,n),t&&e.current&&t.unobserve(e.current)}}},[])}var md={position:`absolute`,width:`100%`,height:`100%`,top:0,left:0},hd=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib});function gd({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:i=.5,panOnScrollMode:a=Es.Free,zoomOnDoubleClick:o=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:l,minZoom:u,maxZoom:d,zoomActivationKeyCode:f,preventScrolling:p=!0,children:m,noWheelClassName:h,noPanClassName:g,onViewportChange:_,isControlledViewport:y,paneClickDistance:b}){let x=pu(),S=(0,v.useRef)(null),{userSelectionActive:C,lib:w}=fu(hd,su),T=Bu(f),E=(0,v.useRef)();pd(S);let D=(0,v.useCallback)(e=>{_?.({x:e[0],y:e[1],zoom:e[2]}),y||x.setState({transform:e})},[_,y]);return(0,v.useEffect)(()=>{if(S.current){E.current=Fl({domNode:S.current,minZoom:u,maxZoom:d,translateExtent:l,viewport:c,paneClickDistance:b,onDraggingChange:e=>x.setState({paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:r}=x.getState();r?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:r}=x.getState();r?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:r}=x.getState();r?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=E.current.getViewport();return x.setState({panZoom:E.current,transform:[e,t,n],domNode:S.current.closest(`.react-flow`)}),()=>{E.current?.destroy()}}},[]),(0,v.useEffect)(()=>{E.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:i,panOnScrollMode:a,zoomOnDoubleClick:o,panOnDrag:s,zoomActivationKeyPressed:T,preventScrolling:p,noPanClassName:g,userSelectionActive:C,noWheelClassName:h,lib:w,onTransformChange:D})},[e,t,n,r,i,a,o,s,T,p,g,C,h,w,D]),(0,N.jsx)(`div`,{className:`react-flow__renderer`,ref:S,style:md,children:m})}var _d=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function vd(){let{userSelectionActive:e,userSelectionRect:t}=fu(_d,su);return e&&t?(0,N.jsx)(`div`,{className:`react-flow__selection react-flow__container`,style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}var yd=(e,t)=>n=>{n.target===t.current&&e?.(n)},bd=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging});function xd({isSelecting:e,selectionKeyPressed:t,selectionMode:n=Ds.Full,panOnDrag:r,selectionOnDrag:i,onSelectionStart:a,onSelectionEnd:o,onPaneClick:s,onPaneContextMenu:c,onPaneScroll:l,onPaneMouseEnter:u,onPaneMouseMove:d,onPaneMouseLeave:f,children:p}){let m=(0,v.useRef)(null),h=pu(),g=(0,v.useRef)(0),_=(0,v.useRef)(0),y=(0,v.useRef)(),b=(0,v.useRef)(new Map),{userSelectionActive:x,elementsSelectable:S,dragging:C}=fu(bd,su),w=S&&(e||x),T=(0,v.useRef)(!1),E=(0,v.useRef)(!1),D=()=>{h.setState({userSelectionActive:!1,userSelectionRect:null}),g.current=0,_.current=0},ee=e=>{T.current?T.current=!1:(s?.(e),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1}))},te=e=>{Array.isArray(r)&&r?.includes(2)?e.preventDefault():c?.(e)},O=l?e=>l(e):void 0,k=t=>{let{resetSelectedElements:n,domNode:r,edgeLookup:i}=h.getState();if(y.current=r?.getBoundingClientRect(),!S||!e||t.button!==0||t.target!==m.current||!y.current)return;t.target?.setPointerCapture?.(t.pointerId),E.current=!0,T.current=!1,b.current=new Map;for(let[e,t]of i)b.current.set(t.source,b.current.get(t.source)?.add(e)||new Set([e])),b.current.set(t.target,b.current.get(t.target)?.add(e)||new Set([e]));let{x:o,y:s}=xc(t.nativeEvent,y.current);n(),h.setState({userSelectionRect:{width:0,height:0,startX:o,startY:s,x:o,y:s}}),a?.(t)},ne=e=>{let{userSelectionRect:t,edgeLookup:r,transform:i,nodeLookup:a,triggerNodeChanges:o,triggerEdgeChanges:s}=h.getState();if(!y.current||!t)return;T.current=!0;let{x:c,y:l}=xc(e.nativeEvent,y.current),{startX:u,startY:d}=t,f={startX:u,startY:d,x:c<u?c:u,y:l<d?l:d,width:Math.abs(c-u),height:Math.abs(l-d)},p=zs(a,f,i,n===Ds.Partial,!0),m=new Set,v=new Set;for(let e of p){v.add(e.id);let t=b.current.get(e.id);if(t)for(let e of t)m.add(e)}g.current!==v.size&&(g.current=v.size,o(Yu(a,v,!0))),_.current!==m.size&&(_.current=m.size,s(Yu(r,m))),h.setState({userSelectionRect:f,userSelectionActive:!0,nodesSelectionActive:!1})},re=e=>{if(e.button!==0||!E.current)return;e.target?.releasePointerCapture?.(e.pointerId);let{userSelectionRect:n}=h.getState();!x&&n&&e.target===m.current&&ee?.(e),g.current>0&&h.setState({nodesSelectionActive:!0}),D(),o?.(e),(t||i)&&(T.current=!1),E.current=!1},ie=r===!0||Array.isArray(r)&&r.includes(0);return(0,N.jsxs)(`div`,{className:Ut([`react-flow__pane`,{draggable:ie,dragging:C,selection:e}]),onClick:w?void 0:yd(ee,m),onContextMenu:yd(te,m),onWheel:yd(O,m),onPointerEnter:w?void 0:u,onPointerDown:w?k:d,onPointerMove:w?ne:d,onPointerUp:w?re:void 0,onPointerLeave:f,ref:m,style:md,children:[p,(0,N.jsx)(vd,{})]})}function Sd({id:e,store:t,unselect:n=!1,nodeRef:r}){let{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:o,nodeLookup:s,onError:c}=t.getState(),l=s.get(e);l?(t.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&o)&&(a({nodes:[l],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):i([e])):c?.(`012`,Ss.error012(e))}function Cd({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:i,isSelectable:a,nodeClickDistance:o}){let s=pu(),[c,l]=(0,v.useState)(!1),u=(0,v.useRef)();return(0,v.useEffect)(()=>{u.current=ul({getStoreItems:()=>s.getState(),onNodeMouseDown:t=>{Sd({id:t,store:s,nodeRef:e})},onDragStart:()=>{l(!0)},onDragStop:()=>{l(!1)}})},[]),(0,v.useEffect)(()=>{if(t)u.current?.destroy();else if(e.current)return u.current?.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:o}),()=>{u.current?.destroy()}},[n,r,t,a,e,i]),c}var wd=e=>t=>t.selected&&(t.draggable||e&&t.draggable===void 0);function Td(){let e=pu();return(0,v.useCallback)(t=>{let{nodeExtent:n,snapToGrid:r,snapGrid:i,nodesDraggable:a,onError:o,updateNodePositions:s,nodeLookup:c,nodeOrigin:l}=e.getState(),u=new Map,d=wd(a),f=r?i[0]:5,p=r?i[1]:5,m=t.direction.x*f*t.factor,h=t.direction.y*p*t.factor;for(let[,e]of c){if(!d(e))continue;let t={x:e.internals.positionAbsolute.x+m,y:e.internals.positionAbsolute.y+h};r&&(t=oc(t,i));let{position:a,positionAbsolute:s}=Us({nodeId:e.id,nextPosition:t,nodeLookup:c,nodeExtent:n,nodeOrigin:l,onError:o});e.position=a,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}var Ed=(0,v.createContext)(null),Dd=Ed.Provider;Ed.Consumer;var Od=()=>(0,v.useContext)(Ed),kd=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),Ad=(e,t,n)=>r=>{let{connectionClickStartHandle:i,connectionMode:a,connection:o}=r,{fromHandle:s,toHandle:c,isValid:l}=o,u=c?.nodeId===e&&c?.id===t&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===t&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===t&&i?.type===n,isPossibleEndHandle:a===Ts.Strict?s?.type!==n:e!==s?.nodeId||t!==s?.id,connectionInProcess:!!s,valid:u&&l}};function jd({type:e=`source`,position:t=R.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:o,onConnect:s,children:c,className:l,onMouseDown:u,onTouchStart:d,...f},p){let m=o||null,h=e===`target`,g=pu(),_=Od(),{connectOnClick:v,noPanClassName:y,rfId:b}=fu(kd,su),{connectingFrom:x,connectingTo:S,clickConnecting:C,isPossibleEndHandle:w,connectionInProcess:T,valid:E}=fu(Ad(_,m,e),su);_||g.getState().onError?.(`010`,Ss.error010());let D=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=g.getState(),i={...t,...e};if(r){let{edges:e,setEdges:t}=g.getState();t(Mc(i,e))}n?.(i),s?.(i)},ee=e=>{if(!_)return;let t=bc(e.nativeEvent);if(i&&(t&&e.button===0||!t)){let t=g.getState();bl.onPointerDown(e.nativeEvent,{autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:h,handleId:m,nodeId:_,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:t.onConnectEnd,updateConnection:t.updateConnection,onConnect:D,isValidConnection:n||t.isValidConnection,getTransform:()=>g.getState().transform,getFromHandle:()=>g.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed})}t?u?.(e):d?.(e)};return(0,N.jsx)(`div`,{"data-handleid":m,"data-nodeid":_,"data-handlepos":t,"data-id":`${b}-${_}-${m}-${e}`,className:Ut([`react-flow__handle`,`react-flow__handle-${t}`,`nodrag`,y,l,{source:!h,target:h,connectable:r,connectablestart:i,connectableend:a,clickconnecting:C,connectingfrom:x,connectingto:S,valid:E,connectionindicator:r&&(!T||w)&&(T?a:i)}]),onMouseDown:ee,onTouchStart:ee,onClick:v?t=>{let{onClickConnectStart:r,onClickConnectEnd:a,connectionClickStartHandle:o,connectionMode:s,isValidConnection:c,lib:l,rfId:u,nodeLookup:d,connection:f}=g.getState();if(!_||!o&&!i)return;if(!o){r?.(t.nativeEvent,{nodeId:_,handleId:m,handleType:e}),g.setState({connectionClickStartHandle:{nodeId:_,type:e,id:m}});return}let p=_c(t.target),h=n||c,{connection:v,isValid:y}=bl.isValid(t.nativeEvent,{handle:{nodeId:_,id:m,type:e},connectionMode:s,fromNodeId:o.nodeId,fromHandleId:o.id||null,fromType:o.type,isValidConnection:h,flowId:u,doc:p,lib:l,nodeLookup:d});y&&v&&D(v);let b=structuredClone(f);delete b.inProgress,b.toPosition=b.toHandle?b.toHandle.position:null,a?.(t,b),g.setState({connectionClickStartHandle:null})}:void 0,ref:p,...f,children:c})}var Md=(0,v.memo)(ed(jd));function Nd({data:e,isConnectable:t,sourcePosition:n=R.Bottom}){return(0,N.jsxs)(N.Fragment,{children:[e?.label,(0,N.jsx)(Md,{type:`source`,position:n,isConnectable:t})]})}function Pd({data:e,isConnectable:t,targetPosition:n=R.Top,sourcePosition:r=R.Bottom}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Md,{type:`target`,position:n,isConnectable:t}),e?.label,(0,N.jsx)(Md,{type:`source`,position:r,isConnectable:t})]})}function Fd(){return null}function Id({data:e,isConnectable:t,targetPosition:n=R.Top}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Md,{type:`target`,position:n,isConnectable:t}),e?.label]})}var Ld={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},Rd={input:Nd,default:Pd,output:Id,group:Fd};function zd(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}var Bd=e=>{let{width:t,height:n,x:r,y:i}=Rs(e.nodeLookup,{filter:e=>!!e.selected});return{width:ic(t)?t:null,height:ic(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${i}px)`}};function Vd({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=pu(),{width:i,height:a,transformString:o,userSelectionActive:s}=fu(Bd,su),c=Td(),l=(0,v.useRef)(null);if((0,v.useEffect)(()=>{n||l.current?.focus({preventScroll:!0})},[n]),Cd({nodeRef:l}),s||!i||!a)return null;let u=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,N.jsx)(`div`,{className:Ut([`react-flow__nodesselection`,`react-flow__container`,t]),style:{transform:o},children:(0,N.jsx)(`div`,{ref:l,className:`react-flow__nodesselection-rect`,onContextMenu:u,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(Ld,e.key)&&(e.preventDefault(),c({direction:Ld[e.key],factor:e.shiftKey?4:1}))},style:{width:i,height:a}})})}var Hd=typeof window<`u`?window:void 0,Ud=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function Wd({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:l,selectionOnDrag:u,selectionMode:d,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:m,panActivationKeyCode:h,zoomActivationKeyCode:g,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:b,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:w,defaultViewport:T,translateExtent:E,minZoom:D,maxZoom:ee,preventScrolling:te,onSelectionContextMenu:O,noWheelClassName:k,noPanClassName:ne,disableKeyboardA11y:re,onViewportChange:ie,isControlledViewport:ae}){let{nodesSelectionActive:A,userSelectionActive:j}=fu(Ud),oe=Bu(l,{target:Hd}),se=Bu(h,{target:Hd}),M=se||w,ce=se||b,le=u&&M!==!0,ue=oe||j||le;return fd({deleteKeyCode:c,multiSelectionKeyCode:m}),(0,N.jsx)(gd,{onPaneContextMenu:a,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:ce,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:!oe&&M,defaultViewport:T,translateExtent:E,minZoom:D,maxZoom:ee,zoomActivationKeyCode:g,preventScrolling:te,noWheelClassName:k,noPanClassName:ne,onViewportChange:ie,isControlledViewport:ae,paneClickDistance:s,children:(0,N.jsxs)(xd,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,panOnDrag:M,isSelecting:!!ue,selectionMode:d,selectionKeyPressed:oe,selectionOnDrag:le,children:[e,A&&(0,N.jsx)(Vd,{onSelectionContextMenu:O,noPanClassName:ne,disableKeyboardA11y:re})]})})}Wd.displayName=`FlowRenderer`;var Gd=(0,v.memo)(Wd),Kd=e=>t=>e?zs(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(e=>e.id):Array.from(t.nodeLookup.keys());function qd(e){return fu((0,v.useCallback)(Kd(e),[e]),su)}var Jd=e=>e.updateNodeInternals;function Yd(){let e=fu(Jd),[t]=(0,v.useState)(()=>typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute(`data-id`);n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,v.useEffect)(()=>()=>{t?.disconnect()},[t]),t}function Xd({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){let i=pu(),a=(0,v.useRef)(null),o=(0,v.useRef)(null),s=(0,v.useRef)(e.sourcePosition),c=(0,v.useRef)(e.targetPosition),l=(0,v.useRef)(t),u=n&&!!e.internals.handleBounds;return(0,v.useEffect)(()=>{a.current&&!e.hidden&&(!u||o.current!==a.current)&&(o.current&&r?.unobserve(o.current),r?.observe(a.current),o.current=a.current)},[u,e.hidden]),(0,v.useEffect)(()=>()=>{o.current&&=(r?.unobserve(o.current),null)},[]),(0,v.useEffect)(()=>{if(a.current){let n=l.current!==t,r=s.current!==e.sourcePosition,o=c.current!==e.targetPosition;(n||r||o)&&(l.current=t,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),a}function Zd({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onContextMenu:a,onDoubleClick:o,nodesDraggable:s,elementsSelectable:c,nodesConnectable:l,nodesFocusable:u,resizeObserver:d,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:m,rfId:h,nodeTypes:g,nodeExtent:_,nodeClickDistance:v,onError:y}){let{node:b,internals:x,isParent:S}=fu(t=>{let n=t.nodeLookup.get(e),r=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:r}},su),C=b.type||`default`,w=g?.[C]||Rd[C];w===void 0&&(y?.(`003`,Ss.error003(C)),C=`default`,w=Rd.default);let T=!!(b.draggable||s&&b.draggable===void 0),E=!!(b.selectable||c&&b.selectable===void 0),D=!!(b.connectable||l&&b.connectable===void 0),ee=!!(b.focusable||u&&b.focusable===void 0),te=pu(),O=pc(b),k=Xd({node:b,nodeType:C,hasDimensions:O,resizeObserver:d}),ne=Cd({nodeRef:k,disabled:b.hidden||!T,noDragClassName:f,handleSelector:b.dragHandle,nodeId:e,isSelectable:E,nodeClickDistance:v}),re=Td();if(b.hidden)return null;let ie=fc(b),ae=zd(b),A=E||T||t||n||r||i,j=n?e=>n(e,{...x.userNode}):void 0,oe=r?e=>r(e,{...x.userNode}):void 0,se=i?e=>i(e,{...x.userNode}):void 0,M=a?e=>a(e,{...x.userNode}):void 0,ce=o?e=>o(e,{...x.userNode}):void 0,le=n=>{let{selectNodesOnDrag:r,nodeDragThreshold:i}=te.getState();E&&(!r||!T||i>0)&&Sd({id:e,store:te,nodeRef:k}),t&&t(n,{...x.userNode})},ue=t=>{if(!(yc(t.nativeEvent)||m)){if(ws.includes(t.key)&&E){let n=t.key===`Escape`;Sd({id:e,store:te,unselect:n,nodeRef:k})}else T&&b.selected&&Object.prototype.hasOwnProperty.call(Ld,t.key)&&(t.preventDefault(),te.setState({ariaLiveMessage:`Moved selected node ${t.key.replace(`Arrow`,``).toLowerCase()}. New position, x: ${~~x.positionAbsolute.x}, y: ${~~x.positionAbsolute.y}`}),re({direction:Ld[t.key],factor:t.shiftKey?4:1}))}};return(0,N.jsx)(`div`,{className:Ut([`react-flow__node`,`react-flow__node-${C}`,{[p]:T},b.className,{selected:b.selected,selectable:E,parent:S,draggable:T,dragging:ne}]),ref:k,style:{zIndex:x.z,transform:`translate(${x.positionAbsolute.x}px,${x.positionAbsolute.y}px)`,pointerEvents:A?`all`:`none`,visibility:O?`visible`:`hidden`,...b.style,...ae},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:j,onMouseMove:oe,onMouseLeave:se,onContextMenu:M,onClick:le,onDoubleClick:ce,onKeyDown:ee?ue:void 0,tabIndex:ee?0:void 0,role:ee?`button`:void 0,"aria-describedby":m?void 0:`${gu}-${h}`,"aria-label":b.ariaLabel,children:(0,N.jsx)(Dd,{value:e,children:(0,N.jsx)(w,{id:e,data:b.data,type:C,positionAbsoluteX:x.positionAbsolute.x,positionAbsoluteY:x.positionAbsolute.y,selected:b.selected,selectable:E,draggable:T,deletable:b.deletable??!0,isConnectable:D,sourcePosition:b.sourcePosition,targetPosition:b.targetPosition,dragging:ne,dragHandle:b.dragHandle,zIndex:x.z,parentId:b.parentId,...ie})})})}var Qd=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function $d(e){let{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,onError:a}=fu(Qd,su),o=qd(e.onlyRenderVisibleElements),s=Yd();return(0,N.jsx)(`div`,{className:`react-flow__nodes`,style:md,children:o.map(o=>(0,N.jsx)(Zd,{id:o,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:a},o))})}$d.displayName=`NodeRenderer`;var ef=(0,v.memo)($d);function tf(e){return fu((0,v.useCallback)(t=>{if(!e)return t.edges.map(e=>e.id);let n=[];if(t.width&&t.height)for(let e of t.edges){let r=t.nodeLookup.get(e.source),i=t.nodeLookup.get(e.target);r&&i&&kc({sourceNode:r,targetNode:i,width:t.width,height:t.height,transform:t.transform})&&n.push(e.id)}return n},[e]),su)}var nf=({color:e=`none`,strokeWidth:t=1})=>(0,N.jsx)(`polyline`,{style:{stroke:e,strokeWidth:t},strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`,points:`-5,-4 0,0 -5,4`}),rf=({color:e=`none`,strokeWidth:t=1})=>(0,N.jsx)(`polyline`,{style:{stroke:e,fill:e,strokeWidth:t},strokeLinecap:`round`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4 -5,-4`}),af={[As.Arrow]:nf,[As.ArrowClosed]:rf};function of(e){let t=pu();return(0,v.useMemo)(()=>Object.prototype.hasOwnProperty.call(af,e)?af[e]:(t.getState().onError?.(`009`,Ss.error009(e)),null),[e])}var sf=({id:e,type:t,color:n,width:r=12.5,height:i=12.5,markerUnits:a=`strokeWidth`,strokeWidth:o,orient:s=`auto-start-reverse`})=>{let c=of(t);return c?(0,N.jsx)(`marker`,{className:`react-flow__arrowhead`,id:e,markerWidth:`${r}`,markerHeight:`${i}`,viewBox:`-10 -10 20 20`,markerUnits:a,orient:s,refX:`0`,refY:`0`,children:(0,N.jsx)(c,{color:n,strokeWidth:o})}):null},cf=({defaultColor:e,rfId:t})=>{let n=fu(e=>e.edges),r=fu(e=>e.defaultEdgeOptions),i=(0,v.useMemo)(()=>Kc(n,{id:t,defaultColor:e,defaultMarkerStart:r?.markerStart,defaultMarkerEnd:r?.markerEnd}),[n,r,t,e]);return i.length?(0,N.jsx)(`svg`,{className:`react-flow__marker`,children:(0,N.jsx)(`defs`,{children:i.map(e=>(0,N.jsx)(sf,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};cf.displayName=`MarkerDefinitions`;var lf=(0,v.memo)(cf);function uf({x:e,y:t,label:n,labelStyle:r={},labelShowBg:i=!0,labelBgStyle:a={},labelBgPadding:o=[2,4],labelBgBorderRadius:s=2,children:c,className:l,...u}){let[d,f]=(0,v.useState)({x:1,y:0,width:0,height:0}),p=Ut([`react-flow__edge-textwrapper`,l]),m=(0,v.useRef)(null);return(0,v.useEffect)(()=>{if(m.current){let e=m.current.getBBox();f({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n===void 0||!n?null:(0,N.jsxs)(`g`,{transform:`translate(${e-d.width/2} ${t-d.height/2})`,className:p,visibility:d.width?`visible`:`hidden`,...u,children:[i&&(0,N.jsx)(`rect`,{width:d.width+2*o[0],x:-o[0],y:-o[1],height:d.height+2*o[1],className:`react-flow__edge-textbg`,style:a,rx:s,ry:s}),(0,N.jsx)(`text`,{className:`react-flow__edge-text`,y:d.height/2,dy:`0.3em`,ref:m,style:r,children:n}),c]})}uf.displayName=`EdgeText`;var df=(0,v.memo)(uf);function ff({path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:l=20,...u}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`path`,{...u,d:e,fill:`none`,className:Ut([`react-flow__edge-path`,u.className])}),l&&(0,N.jsx)(`path`,{d:e,fill:`none`,strokeOpacity:0,strokeWidth:l,className:`react-flow__edge-interaction`}),r&&ic(t)&&ic(n)?(0,N.jsx)(df,{x:t,y:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function pf({pos:e,x1:t,y1:n,x2:r,y2:i}){return e===R.Left||e===R.Right?[.5*(t+r),n]:[t,.5*(n+i)]}function mf({sourceX:e,sourceY:t,sourcePosition:n=R.Bottom,targetX:r,targetY:i,targetPosition:a=R.Top}){let[o,s]=pf({pos:n,x1:e,y1:t,x2:r,y2:i}),[c,l]=pf({pos:a,x1:r,y1:i,x2:e,y2:t}),[u,d,f,p]=Cc({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:o,sourceControlY:s,targetControlX:c,targetControlY:l});return[`M${e},${t} C${o},${s} ${c},${l} ${r},${i}`,u,d,f,p]}function hf(e){return(0,v.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o=R.Bottom,targetPosition:s=R.Top,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})=>{let[v,y,b]=mf({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s}),x=e.isInternal?void 0:t;return(0,N.jsx)(ff,{id:x,path:v,labelX:y,labelY:b,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})})}var gf=hf({isInternal:!1}),_f=hf({isInternal:!0});gf.displayName=`SimpleBezierEdge`,_f.displayName=`SimpleBezierEdgeInternal`;function vf(e){return(0,v.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,sourcePosition:p=R.Bottom,targetPosition:m=R.Top,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=zc({sourceX:n,sourceY:r,sourcePosition:p,targetX:i,targetY:a,targetPosition:m,borderRadius:_?.borderRadius,offset:_?.offset}),S=e.isInternal?void 0:t;return(0,N.jsx)(ff,{id:S,path:y,labelX:b,labelY:x,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:g,interactionWidth:v})})}var yf=vf({isInternal:!1}),bf=vf({isInternal:!0});yf.displayName=`SmoothStepEdge`,bf.displayName=`SmoothStepEdgeInternal`;function xf(e){return(0,v.memo)(({id:t,...n})=>{let r=e.isInternal?void 0:t;return(0,N.jsx)(yf,{...n,id:r,pathOptions:(0,v.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}var Sf=xf({isInternal:!1}),Cf=xf({isInternal:!0});Sf.displayName=`StepEdge`,Cf.displayName=`StepEdgeInternal`;function wf(e){return(0,v.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})=>{let[g,_,v]=Nc({sourceX:n,sourceY:r,targetX:i,targetY:a}),y=e.isInternal?void 0:t;return(0,N.jsx)(ff,{id:y,path:g,labelX:_,labelY:v,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})})}var Tf=wf({isInternal:!1}),Ef=wf({isInternal:!0});Tf.displayName=`StraightEdge`,Ef.displayName=`StraightEdgeInternal`;function Df(e){return(0,v.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o=R.Bottom,targetPosition:s=R.Top,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=Ec({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s,curvature:_?.curvature}),S=e.isInternal?void 0:t;return(0,N.jsx)(ff,{id:S,path:y,labelX:b,labelY:x,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:v})})}var Of=Df({isInternal:!1}),kf=Df({isInternal:!0});Of.displayName=`BezierEdge`,kf.displayName=`BezierEdgeInternal`;var Af={default:kf,straight:Ef,step:Cf,smoothstep:bf,simplebezier:_f},jf={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},Mf=(e,t,n)=>n===R.Left?e-t:n===R.Right?e+t:e,Nf=(e,t,n)=>n===R.Top?e-t:n===R.Bottom?e+t:e,Pf=`react-flow__edgeupdater`;function Ff({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:i,onMouseEnter:a,onMouseOut:o,type:s}){return(0,N.jsx)(`circle`,{onMouseDown:i,onMouseEnter:a,onMouseOut:o,className:Ut([Pf,`${Pf}-${s}`]),cx:Mf(t,r,e),cy:Nf(n,r,e),r,stroke:`transparent`,fill:`transparent`})}function If({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:i,targetX:a,targetY:o,sourcePosition:s,targetPosition:c,onReconnect:l,onReconnectStart:u,onReconnectEnd:d,setReconnecting:f,setUpdateHover:p}){let m=pu(),h=(e,t)=>{if(e.button!==0)return;let{autoPanOnConnect:r,domNode:i,isValidConnection:a,connectionMode:o,connectionRadius:s,lib:c,onConnectStart:p,onConnectEnd:h,cancelConnection:g,nodeLookup:_,rfId:v,panBy:y,updateConnection:b}=m.getState(),x=t.type===`target`;f(!0),u?.(e,n,t.type),bl.onPointerDown(e.nativeEvent,{autoPanOnConnect:r,connectionMode:o,connectionRadius:s,domNode:i,handleId:t.id,nodeId:t.nodeId,nodeLookup:_,isTarget:x,edgeUpdaterType:t.type,lib:c,flowId:v,cancelConnection:g,panBy:y,isValidConnection:a,onConnect:e=>l?.(n,e),onConnectStart:p,onConnectEnd:h,onReconnectEnd:(e,r)=>{f(!1),d?.(e,n,t.type,r)},updateConnection:b,getTransform:()=>m.getState().transform,getFromHandle:()=>m.getState().connection.fromHandle})},g=e=>h(e,{nodeId:n.target,id:n.targetHandle??null,type:`target`}),_=e=>h(e,{nodeId:n.source,id:n.sourceHandle??null,type:`source`}),v=()=>p(!0),y=()=>p(!1);return(0,N.jsxs)(N.Fragment,{children:[(e===!0||e===`source`)&&(0,N.jsx)(Ff,{position:s,centerX:r,centerY:i,radius:t,onMouseDown:g,onMouseEnter:v,onMouseOut:y,type:`source`}),(e===!0||e===`target`)&&(0,N.jsx)(Ff,{position:c,centerX:a,centerY:o,radius:t,onMouseDown:_,onMouseEnter:v,onMouseOut:y,type:`target`})]})}function Lf({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:i,onDoubleClick:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,rfId:m,edgeTypes:h,noPanClassName:g,onError:_,disableKeyboardA11y:y}){let b=fu(t=>t.edgeLookup.get(e)),x=fu(e=>e.defaultEdgeOptions);b=x?{...x,...b}:b;let S=b.type||`default`,C=h?.[S]||Af[S];C===void 0&&(_?.(`011`,Ss.error011(S)),S=`default`,C=Af.default);let w=!!(b.focusable||t&&b.focusable===void 0),T=d!==void 0&&(b.reconnectable||n&&b.reconnectable===void 0),E=!!(b.selectable||r&&b.selectable===void 0),D=(0,v.useRef)(null),[ee,te]=(0,v.useState)(!1),[O,k]=(0,v.useState)(!1),ne=pu(),{zIndex:re,sourceX:ie,sourceY:ae,targetX:A,targetY:j,sourcePosition:oe,targetPosition:se}=fu((0,v.useCallback)(t=>{let n=t.nodeLookup.get(b.source),r=t.nodeLookup.get(b.target);if(!n||!r)return{zIndex:b.zIndex,...jf};let i=Vc({id:e,sourceNode:n,targetNode:r,sourceHandle:b.sourceHandle||null,targetHandle:b.targetHandle||null,connectionMode:t.connectionMode,onError:_});return{zIndex:Oc({selected:b.selected,zIndex:b.zIndex,sourceNode:n,targetNode:r,elevateOnSelect:t.elevateEdgesOnSelect}),...i||jf}},[b.source,b.target,b.sourceHandle,b.targetHandle,b.selected,b.zIndex]),su),M=(0,v.useMemo)(()=>b.markerStart?`url('#${Gc(b.markerStart,m)}')`:void 0,[b.markerStart,m]),ce=(0,v.useMemo)(()=>b.markerEnd?`url('#${Gc(b.markerEnd,m)}')`:void 0,[b.markerEnd,m]);if(b.hidden||ie===null||ae===null||A===null||j===null)return null;let le=t=>{let{addSelectedEdges:n,unselectNodesAndEdges:r,multiSelectionActive:a}=ne.getState();E&&(ne.setState({nodesSelectionActive:!1}),b.selected&&a?(r({nodes:[],edges:[b]}),D.current?.blur()):n([e])),i&&i(t,b)},ue=a?e=>{a(e,{...b})}:void 0,P=o?e=>{o(e,{...b})}:void 0,F=s?e=>{s(e,{...b})}:void 0,de=c?e=>{c(e,{...b})}:void 0,fe=l?e=>{l(e,{...b})}:void 0;return(0,N.jsx)(`svg`,{style:{zIndex:re},children:(0,N.jsxs)(`g`,{className:Ut([`react-flow__edge`,`react-flow__edge-${S}`,b.className,g,{selected:b.selected,animated:b.animated,inactive:!E&&!i,updating:ee,selectable:E}]),onClick:le,onDoubleClick:ue,onContextMenu:P,onMouseEnter:F,onMouseMove:de,onMouseLeave:fe,onKeyDown:w?t=>{if(!y&&ws.includes(t.key)&&E){let{unselectNodesAndEdges:n,addSelectedEdges:r}=ne.getState();t.key===`Escape`?(D.current?.blur(),n({edges:[b]})):r([e])}}:void 0,tabIndex:w?0:void 0,role:w?`button`:`img`,"data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":b.ariaLabel===null?void 0:b.ariaLabel||`Edge from ${b.source} to ${b.target}`,"aria-describedby":w?`${_u}-${m}`:void 0,ref:D,children:[!O&&(0,N.jsx)(C,{id:e,source:b.source,target:b.target,type:b.type,selected:b.selected,animated:b.animated,selectable:E,deletable:b.deletable??!0,label:b.label,labelStyle:b.labelStyle,labelShowBg:b.labelShowBg,labelBgStyle:b.labelBgStyle,labelBgPadding:b.labelBgPadding,labelBgBorderRadius:b.labelBgBorderRadius,sourceX:ie,sourceY:ae,targetX:A,targetY:j,sourcePosition:oe,targetPosition:se,data:b.data,style:b.style,sourceHandleId:b.sourceHandle,targetHandleId:b.targetHandle,markerStart:M,markerEnd:ce,pathOptions:`pathOptions`in b?b.pathOptions:void 0,interactionWidth:b.interactionWidth}),T&&(0,N.jsx)(If,{edge:b,isReconnectable:T,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,sourceX:ie,sourceY:ae,targetX:A,targetY:j,sourcePosition:oe,targetPosition:se,setUpdateHover:te,setReconnecting:k})]})})}var Rf=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function zf({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:i,onReconnect:a,onEdgeContextMenu:o,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:l,onEdgeClick:u,reconnectRadius:d,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,disableKeyboardA11y:h}){let{edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,onError:y}=fu(Rf,su),b=tf(t);return(0,N.jsxs)(`div`,{className:`react-flow__edges`,children:[(0,N.jsx)(lf,{defaultColor:e,rfId:n}),b.map(e=>(0,N.jsx)(Lf,{id:e,edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,noPanClassName:i,onReconnect:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,onClick:u,reconnectRadius:d,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,rfId:n,onError:y,edgeTypes:r,disableKeyboardA11y:h},e))]})}zf.displayName=`EdgeRenderer`;var Bf=(0,v.memo)(zf),Vf=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function Hf({children:e}){let t=fu(Vf);return(0,N.jsx)(`div`,{className:`react-flow__viewport xyflow__viewport react-flow__container`,style:{transform:t},children:e})}function Uf(e){let t=cd(),n=(0,v.useRef)(!1);(0,v.useEffect)(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}var Wf=e=>e.panZoom?.syncViewport;function Gf(e){let t=fu(Wf),n=pu();return(0,v.useEffect)(()=>{e&&(t?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function Kf(e){return e.connection.inProgress?{...e.connection,to:sc(e.connection.to,e.transform)}:{...e.connection}}function qf(e){return e?t=>e(Kf(t)):Kf}function Jf(e){return fu(qf(e),su)}var Yf=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function Xf({containerStyle:e,style:t,type:n,component:r}){let{nodesConnectable:i,width:a,height:o,isValid:s,inProgress:c}=fu(Yf,su);return a&&i&&c?(0,N.jsx)(`svg`,{style:e,width:a,height:o,className:`react-flow__connectionline react-flow__container`,children:(0,N.jsx)(`g`,{className:Ut([`react-flow__connection`,Ms(s)]),children:(0,N.jsx)(Zf,{style:t,type:n,CustomComponent:r,isValid:s})})}):null}var Zf=({style:e,type:t=ks.Bezier,CustomComponent:n,isValid:r})=>{let{inProgress:i,from:a,fromNode:o,fromHandle:s,fromPosition:c,to:l,toNode:u,toHandle:d,toPosition:f}=Jf();if(!i)return;if(n)return(0,N.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:o,fromHandle:s,fromX:a.x,fromY:a.y,toX:l.x,toY:l.y,fromPosition:c,toPosition:f,connectionStatus:Ms(r),toNode:u,toHandle:d});let p=``,m={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:l.x,targetY:l.y,targetPosition:f};switch(t){case ks.Bezier:[p]=Ec(m);break;case ks.SimpleBezier:[p]=mf(m);break;case ks.Step:[p]=zc({...m,borderRadius:0});break;case ks.SmoothStep:[p]=zc(m);break;default:[p]=Nc(m)}return(0,N.jsx)(`path`,{d:p,fill:`none`,className:`react-flow__connection-path`,style:e})};Zf.displayName=`ConnectionLine`;var Qf={};function $f(e=Qf){(0,v.useRef)(e),pu(),(0,v.useEffect)(()=>{},[e])}function ep(){pu(),(0,v.useRef)(!1),(0,v.useEffect)(()=>{},[])}function tp({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:o,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,onSelectionContextMenu:d,onSelectionStart:f,onSelectionEnd:p,connectionLineType:m,connectionLineStyle:h,connectionLineComponent:g,connectionLineContainerStyle:_,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,deleteKeyCode:w,onlyRenderVisibleElements:T,elementsSelectable:E,defaultViewport:D,translateExtent:ee,minZoom:te,maxZoom:O,preventScrolling:k,defaultMarkerColor:ne,zoomOnScroll:re,zoomOnPinch:ie,panOnScroll:ae,panOnScrollSpeed:A,panOnScrollMode:j,zoomOnDoubleClick:oe,panOnDrag:se,onPaneClick:M,onPaneMouseEnter:ce,onPaneMouseMove:le,onPaneMouseLeave:ue,onPaneScroll:P,onPaneContextMenu:F,paneClickDistance:de,nodeClickDistance:fe,onEdgeContextMenu:pe,onEdgeMouseEnter:me,onEdgeMouseMove:I,onEdgeMouseLeave:he,reconnectRadius:ge,onReconnect:_e,onReconnectStart:ve,onReconnectEnd:ye,noDragClassName:be,noWheelClassName:xe,noPanClassName:Se,disableKeyboardA11y:Ce,nodeExtent:we,rfId:Te,viewport:Ee,onViewportChange:De}){return $f(e),$f(t),ep(),Uf(n),Gf(Ee),(0,N.jsx)(Gd,{onPaneClick:M,onPaneMouseEnter:ce,onPaneMouseMove:le,onPaneMouseLeave:ue,onPaneContextMenu:F,onPaneScroll:P,paneClickDistance:de,deleteKeyCode:w,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,elementsSelectable:E,zoomOnScroll:re,zoomOnPinch:ie,zoomOnDoubleClick:oe,panOnScroll:ae,panOnScrollSpeed:A,panOnScrollMode:j,panOnDrag:se,defaultViewport:D,translateExtent:ee,minZoom:te,maxZoom:O,onSelectionContextMenu:d,preventScrolling:k,noDragClassName:be,noWheelClassName:xe,noPanClassName:Se,disableKeyboardA11y:Ce,onViewportChange:De,isControlledViewport:!!Ee,children:(0,N.jsxs)(Hf,{children:[(0,N.jsx)(Bf,{edgeTypes:t,onEdgeClick:i,onEdgeDoubleClick:o,onReconnect:_e,onReconnectStart:ve,onReconnectEnd:ye,onlyRenderVisibleElements:T,onEdgeContextMenu:pe,onEdgeMouseEnter:me,onEdgeMouseMove:I,onEdgeMouseLeave:he,reconnectRadius:ge,defaultMarkerColor:ne,noPanClassName:Se,disableKeyboardA11y:Ce,rfId:Te}),(0,N.jsx)(Xf,{style:h,type:m,component:g,containerStyle:_}),(0,N.jsx)(`div`,{className:`react-flow__edgelabel-renderer`}),(0,N.jsx)(ef,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,nodeClickDistance:fe,onlyRenderVisibleElements:T,noPanClassName:Se,noDragClassName:be,disableKeyboardA11y:Ce,nodeExtent:we,rfId:Te}),(0,N.jsx)(`div`,{className:`react-flow__viewport-portal`})]})})}tp.displayName=`GraphView`;var np=(0,v.memo)(tp),rp=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,nodeOrigin:s,nodeExtent:c}={})=>{let l=new Map,u=new Map,d=new Map,f=new Map,p=r??t??[],m=n??e??[],h=s??[0,0],g=c??Cs;al(d,f,p),Zc(m,l,u,{nodeOrigin:h,nodeExtent:g,elevateNodesOnSelect:!1});let _=[0,0,1];if(o&&i&&a){let{x:e,y:t,zoom:n}=lc(Rs(l,{filter:e=>!(!e.width&&!e.initialWidth||!e.height&&!e.initialHeight)}),i,a,.5,2,.1);_=[e,t,n]}return{rfId:`1`,width:0,height:0,transform:_,nodes:m,nodeLookup:l,parentLookup:u,edges:p,edgeLookup:f,connectionLookup:d,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:.5,maxZoom:2,translateExtent:Cs,nodeExtent:g,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Ts.Strict,domNode:null,paneDragging:!1,noPanClassName:`nopan`,nodeOrigin:h,nodeDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!1,fitViewOnInit:!1,fitViewDone:!1,fitViewOnInitOptions:void 0,selectNodesOnDrag:!0,multiSelectionActive:!1,connection:{...Os},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:``,autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanSpeed:15,connectionRadius:20,onError:ac,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:`react`,debug:!1}},ip=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,nodeOrigin:s,nodeExtent:c})=>ou((l,u)=>({...rp({nodes:e,edges:t,width:i,height:a,fitView:o,nodeOrigin:s,nodeExtent:c,defaultNodes:n,defaultEdges:r}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:r,elevateNodesOnSelect:i}=u();Zc(e,t,n,{nodeOrigin:r,nodeExtent:c,elevateNodesOnSelect:i,checkEquality:!0}),l({nodes:e})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=u();al(t,n,e),l({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=u();t(e),l({hasDefaultNodes:!0})}if(t){let{setEdges:e}=u();e(t),l({hasDefaultEdges:!0})}},updateNodeInternals:(e,t={triggerFitView:!0})=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:i,fitViewOnInit:a,fitViewDone:o,fitViewOnInitOptions:s,domNode:c,nodeOrigin:d,nodeExtent:f,debug:p,fitViewSync:m}=u(),{changes:h,updatedInternals:g}=rl(e,r,i,c,d,f);if(g){if(Xc(r,i,{nodeOrigin:d,nodeExtent:f}),t.triggerFitView){let e=o;!o&&a&&(e=m({...s,nodes:s?.nodes})),l({fitViewDone:e})}else l({});h?.length>0&&(p&&console.log(`React Flow: trigger node changes`,h),n?.(h))}},updateNodePositions:(e,t=!1)=>{let n=[],r=[];for(let[i,a]of e){let e=!!(a?.expandParent&&a?.parentId&&a?.position),o={id:i,type:`position`,position:e?{x:Math.max(0,a.position.x),y:Math.max(0,a.position.y)}:a.position,dragging:t};e&&n.push({id:i,parentId:a.parentId,rect:{...a.internals.positionAbsolute,width:a.measured.width,height:a.measured.height}}),r.push(o)}if(n.length>0){let{nodeLookup:e,parentLookup:t,nodeOrigin:i}=u(),a=nl(n,e,t,i);r.push(...a)}u().triggerNodeChanges(r)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:r,hasDefaultNodes:i,debug:a}=u();e?.length&&(i&&n(Ku(e,r)),a&&console.log(`React Flow: trigger node changes`,e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:r,hasDefaultEdges:i,debug:a}=u();e?.length&&(i&&n(qu(e,r)),a&&console.log(`React Flow: trigger edge changes`,e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=u();t?i(e.map(e=>Ju(e,!0))):(i(Yu(r,new Set([...e]),!0)),a(Yu(n)))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=u();t?a(e.map(e=>Ju(e,!0))):(a(Yu(n,new Set([...e]))),i(Yu(r,new Set,!0)))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:r,nodeLookup:i,triggerNodeChanges:a,triggerEdgeChanges:o}=u(),s=e||r,c=t||n,l=s.map(e=>{let t=i.get(e.id);return t&&(t.selected=!1),Ju(e.id,!1)}),d=c.map(e=>Ju(e.id,!1));a(l),o(d)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=u();t?.setScaleExtent([e,n]),l({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=u();t?.setScaleExtent([n,e]),l({maxZoom:e})},setTranslateExtent:e=>{u().panZoom?.setTranslateExtent(e),l({translateExtent:e})},setPaneClickDistance:e=>{u().panZoom?.setClickDistance(e)},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:r}=u(),i=t.reduce((e,t)=>t.selected?[...e,Ju(t.id,!1)]:e,[]),a=e.reduce((e,t)=>t.selected?[...e,Ju(t.id,!1)]:e,[]);n(i),r(a)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:r,nodeOrigin:i,elevateNodesOnSelect:a,nodeExtent:o}=u();(e[0][0]!==o[0][0]||e[0][1]!==o[0][1]||e[1][0]!==o[1][0]||e[1][1]!==o[1][1])&&(Zc(t,n,r,{nodeOrigin:i,nodeExtent:e,elevateNodesOnSelect:a,checkEquality:!1}),l({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:r,panZoom:i,translateExtent:a}=u();return il({delta:e,panZoom:i,transform:t,translateExtent:a,width:n,height:r})},fitView:e=>{let{panZoom:t,width:n,height:r,minZoom:i,maxZoom:a,nodeLookup:o}=u();return t?Hs({nodes:Vs(o,e),width:n,height:r,panZoom:t,minZoom:i,maxZoom:a},e):Promise.resolve(!1)},fitViewSync:e=>{let{panZoom:t,width:n,height:r,minZoom:i,maxZoom:a,nodeLookup:o}=u();if(!t)return!1;let s=Vs(o,e);return Hs({nodes:s,width:n,height:r,panZoom:t,minZoom:i,maxZoom:a},e),s.size>0},cancelConnection:()=>{l({connection:{...Os}})},updateConnection:e=>{l({connection:e})},reset:()=>l({...rp()})}),Object.is);function ap({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:i,initialHeight:a,fitView:o,nodeOrigin:s,nodeExtent:c,children:l}){let[u]=(0,v.useState)(()=>ip({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,nodeOrigin:s,nodeExtent:c}));return(0,N.jsx)(uu,{value:u,children:(0,N.jsx)(ad,{children:l})})}function op({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:i,width:a,height:o,fitView:s,nodeOrigin:c,nodeExtent:l}){return(0,v.useContext)(lu)?(0,N.jsx)(N.Fragment,{children:e}):(0,N.jsx)(ap,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:i,initialWidth:a,initialHeight:o,fitView:s,nodeOrigin:c,nodeExtent:l,children:e})}var sp={width:`100%`,height:`100%`,overflow:`hidden`,position:`relative`,zIndex:0};function cp({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:i,nodeTypes:a,edgeTypes:o,onNodeClick:s,onEdgeClick:c,onInit:l,onMove:u,onMoveStart:d,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,onNodeMouseEnter:v,onNodeMouseMove:y,onNodeMouseLeave:b,onNodeContextMenu:x,onNodeDoubleClick:S,onNodeDragStart:C,onNodeDrag:w,onNodeDragStop:T,onNodesDelete:E,onEdgesDelete:D,onDelete:ee,onSelectionChange:te,onSelectionDragStart:O,onSelectionDrag:k,onSelectionDragStop:ne,onSelectionContextMenu:re,onSelectionStart:ie,onSelectionEnd:ae,onBeforeDelete:A,connectionMode:j,connectionLineType:oe=ks.Bezier,connectionLineStyle:se,connectionLineComponent:M,connectionLineContainerStyle:ce,deleteKeyCode:le=`Backspace`,selectionKeyCode:ue=`Shift`,selectionOnDrag:P=!1,selectionMode:F=Ds.Full,panActivationKeyCode:de=`Space`,multiSelectionKeyCode:fe=uc()?`Meta`:`Control`,zoomActivationKeyCode:pe=uc()?`Meta`:`Control`,snapToGrid:me,snapGrid:I,onlyRenderVisibleElements:he=!1,selectNodesOnDrag:ge,nodesDraggable:_e,nodesConnectable:ve,nodesFocusable:ye,nodeOrigin:be=ju,edgesFocusable:xe,edgesReconnectable:Se,elementsSelectable:Ce=!0,defaultViewport:we=Mu,minZoom:Te=.5,maxZoom:Ee=2,translateExtent:De=Cs,preventScrolling:Oe=!0,nodeExtent:ke,defaultMarkerColor:Ae=`#b1b1b7`,zoomOnScroll:je=!0,zoomOnPinch:Me=!0,panOnScroll:Ne=!1,panOnScrollSpeed:Pe=.5,panOnScrollMode:Fe=Es.Free,zoomOnDoubleClick:Ie=!0,panOnDrag:Le=!0,onPaneClick:Re,onPaneMouseEnter:ze,onPaneMouseMove:Be,onPaneMouseLeave:Ve,onPaneScroll:He,onPaneContextMenu:Ue,paneClickDistance:We=0,nodeClickDistance:Ge=0,children:Ke,onReconnect:qe,onReconnectStart:Je,onReconnectEnd:Ye,onEdgeContextMenu:L,onEdgeDoubleClick:Xe,onEdgeMouseEnter:Ze,onEdgeMouseMove:Qe,onEdgeMouseLeave:$e,reconnectRadius:et=10,onNodesChange:tt,onEdgesChange:nt,noDragClassName:rt=`nodrag`,noWheelClassName:it=`nowheel`,noPanClassName:at=`nopan`,fitView:ot,fitViewOptions:st,connectOnClick:ct,attributionPosition:lt,proOptions:ut,defaultEdgeOptions:dt,elevateNodesOnSelect:ft,elevateEdgesOnSelect:pt,disableKeyboardA11y:mt=!1,autoPanOnConnect:ht,autoPanOnNodeDrag:gt,autoPanSpeed:_t,connectionRadius:vt,isValidConnection:yt,onError:bt,style:xt,id:St,nodeDragThreshold:Ct,viewport:wt,onViewportChange:Tt,width:Et,height:Dt,colorMode:Ot=`light`,debug:kt,...At},jt){let Mt=St||`1`,Nt=Ru(Ot);return(0,N.jsx)(`div`,{"data-testid":`rf__wrapper`,...At,style:{...xt,...sp},ref:jt,className:Ut([`react-flow`,i,Nt]),id:St,children:(0,N.jsxs)(op,{nodes:e,edges:t,width:Et,height:Dt,fitView:ot,nodeOrigin:be,nodeExtent:ke,children:[(0,N.jsx)(np,{onInit:l,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:v,onNodeMouseMove:y,onNodeMouseLeave:b,onNodeContextMenu:x,onNodeDoubleClick:S,nodeTypes:a,edgeTypes:o,connectionLineType:oe,connectionLineStyle:se,connectionLineComponent:M,connectionLineContainerStyle:ce,selectionKeyCode:ue,selectionOnDrag:P,selectionMode:F,deleteKeyCode:le,multiSelectionKeyCode:fe,panActivationKeyCode:de,zoomActivationKeyCode:pe,onlyRenderVisibleElements:he,defaultViewport:we,translateExtent:De,minZoom:Te,maxZoom:Ee,preventScrolling:Oe,zoomOnScroll:je,zoomOnPinch:Me,zoomOnDoubleClick:Ie,panOnScroll:Ne,panOnScrollSpeed:Pe,panOnScrollMode:Fe,panOnDrag:Le,onPaneClick:Re,onPaneMouseEnter:ze,onPaneMouseMove:Be,onPaneMouseLeave:Ve,onPaneScroll:He,onPaneContextMenu:Ue,paneClickDistance:We,nodeClickDistance:Ge,onSelectionContextMenu:re,onSelectionStart:ie,onSelectionEnd:ae,onReconnect:qe,onReconnectStart:Je,onReconnectEnd:Ye,onEdgeContextMenu:L,onEdgeDoubleClick:Xe,onEdgeMouseEnter:Ze,onEdgeMouseMove:Qe,onEdgeMouseLeave:$e,reconnectRadius:et,defaultMarkerColor:Ae,noDragClassName:rt,noWheelClassName:it,noPanClassName:at,rfId:Mt,disableKeyboardA11y:mt,nodeExtent:ke,viewport:wt,onViewportChange:Tt}),(0,N.jsx)(Iu,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,nodesDraggable:_e,nodesConnectable:ve,nodesFocusable:ye,edgesFocusable:xe,edgesReconnectable:Se,elementsSelectable:Ce,elevateNodesOnSelect:ft,elevateEdgesOnSelect:pt,minZoom:Te,maxZoom:Ee,nodeExtent:ke,onNodesChange:tt,onEdgesChange:nt,snapToGrid:me,snapGrid:I,connectionMode:j,translateExtent:De,connectOnClick:ct,defaultEdgeOptions:dt,fitView:ot,fitViewOptions:st,onNodesDelete:E,onEdgesDelete:D,onDelete:ee,onNodeDragStart:C,onNodeDrag:w,onNodeDragStop:T,onSelectionDrag:k,onSelectionDragStart:O,onSelectionDragStop:ne,onMove:u,onMoveStart:d,onMoveEnd:f,noPanClassName:at,nodeOrigin:be,rfId:Mt,autoPanOnConnect:ht,autoPanOnNodeDrag:gt,autoPanSpeed:_t,onError:bt,connectionRadius:vt,isValidConnection:yt,selectNodesOnDrag:ge,nodeDragThreshold:Ct,onBeforeDelete:A,paneClickDistance:We,debug:kt}),(0,N.jsx)(Au,{onSelectionChange:te}),Ke,(0,N.jsx)(wu,{proOptions:ut,position:lt}),(0,N.jsx)(xu,{rfId:Mt,disableKeyboardA11y:mt})]})})}var lp=ed(cp),up=e=>e.domNode?.querySelector(`.react-flow__edgelabel-renderer`);function dp({children:e}){let t=fu(up);return t?(0,cu.createPortal)(e,t):null}function fp(e){return fu((0,v.useCallback)(t=>t.nodeLookup.get(e),[e]),su)}function pp({dimensions:e,lineWidth:t,variant:n,className:r}){return(0,N.jsx)(`path`,{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:Ut([`react-flow__background-pattern`,n,r])})}function mp({radius:e,className:t}){return(0,N.jsx)(`circle`,{cx:e,cy:e,r:e,className:Ut([`react-flow__background-pattern`,`dots`,t])})}var hp;(function(e){e.Lines=`lines`,e.Dots=`dots`,e.Cross=`cross`})(hp||={});var gp={[hp.Dots]:1,[hp.Lines]:1,[hp.Cross]:6},_p=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function vp({id:e,variant:t=hp.Dots,gap:n=20,size:r,lineWidth:i=1,offset:a=0,color:o,bgColor:s,style:c,className:l,patternClassName:u}){let d=(0,v.useRef)(null),{transform:f,patternId:p}=fu(_p,su),m=r||gp[t],h=t===hp.Dots,g=t===hp.Cross,_=Array.isArray(n)?n:[n,n],y=[_[0]*f[2]||1,_[1]*f[2]||1],b=m*f[2],x=Array.isArray(a)?a:[a,a],S=g?[b,b]:y,C=[x[0]*f[2]||1+S[0]/2,x[1]*f[2]||1+S[1]/2],w=`${p}${e||``}`;return(0,N.jsxs)(`svg`,{className:Ut([`react-flow__background`,l]),style:{...c,...md,"--xy-background-color-props":s,"--xy-background-pattern-color-props":o},ref:d,"data-testid":`rf__background`,children:[(0,N.jsx)(`pattern`,{id:w,x:f[0]%y[0],y:f[1]%y[1],width:y[0],height:y[1],patternUnits:`userSpaceOnUse`,patternTransform:`translate(-${C[0]},-${C[1]})`,children:h?(0,N.jsx)(mp,{radius:b/2,className:u}):(0,N.jsx)(pp,{dimensions:S,lineWidth:i,variant:t,className:u})}),(0,N.jsx)(`rect`,{x:`0`,y:`0`,width:`100%`,height:`100%`,fill:`url(#${w})`})]})}vp.displayName=`Background`;var yp=(0,v.memo)(vp);function bp(){return(0,N.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,children:(0,N.jsx)(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`})})}function xp(){return(0,N.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`,children:(0,N.jsx)(`path`,{d:`M0 0h32v4.2H0z`})})}function Sp(){return(0,N.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`,children:(0,N.jsx)(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`})})}function Cp(){return(0,N.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,N.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`})})}function wp(){return(0,N.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,N.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z`})})}function Tp({children:e,className:t,...n}){return(0,N.jsx)(`button`,{type:`button`,className:Ut([`react-flow__controls-button`,t]),...n,children:e})}var Ep=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom});function Dp({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:o,onFitView:s,onInteractiveChange:c,className:l,children:u,position:d=`bottom-left`,orientation:f=`vertical`,"aria-label":p=`React Flow controls`}){let m=pu(),{isInteractive:h,minZoomReached:g,maxZoomReached:_}=fu(Ep,su),{zoomIn:v,zoomOut:y,fitView:b}=cd();return(0,N.jsxs)(Cu,{className:Ut([`react-flow__controls`,f===`horizontal`?`horizontal`:`vertical`,l]),position:d,style:e,"data-testid":`rf__controls`,"aria-label":p,children:[t&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Tp,{onClick:()=>{v(),a?.()},className:`react-flow__controls-zoomin`,title:`zoom in`,"aria-label":`zoom in`,disabled:_,children:(0,N.jsx)(bp,{})}),(0,N.jsx)(Tp,{onClick:()=>{y(),o?.()},className:`react-flow__controls-zoomout`,title:`zoom out`,"aria-label":`zoom out`,disabled:g,children:(0,N.jsx)(xp,{})})]}),n&&(0,N.jsx)(Tp,{className:`react-flow__controls-fitview`,onClick:()=>{b(i),s?.()},title:`fit view`,"aria-label":`fit view`,children:(0,N.jsx)(Sp,{})}),r&&(0,N.jsx)(Tp,{className:`react-flow__controls-interactive`,onClick:()=>{m.setState({nodesDraggable:!h,nodesConnectable:!h,elementsSelectable:!h}),c?.(!h)},title:`toggle interactivity`,"aria-label":`toggle interactivity`,children:h?(0,N.jsx)(wp,{}):(0,N.jsx)(Cp,{})}),u]})}Dp.displayName=`Controls`;var Op=(0,v.memo)(Dp);function kp({id:e,x:t,y:n,width:r,height:i,style:a,color:o,strokeColor:s,strokeWidth:c,className:l,borderRadius:u,shapeRendering:d,selected:f,onClick:p}){let{background:m,backgroundColor:h}=a||{},g=o||m||h;return(0,N.jsx)(`rect`,{className:Ut([`react-flow__minimap-node`,{selected:f},l]),x:t,y:n,rx:u,ry:u,width:r,height:i,style:{fill:g,stroke:s,strokeWidth:c},shapeRendering:d,onClick:p?t=>p(t,e):void 0})}var Ap=(0,v.memo)(kp),jp=e=>e.nodes.map(e=>e.id),Mp=e=>e instanceof Function?e:()=>e;function Np({nodeStrokeColor:e,nodeColor:t,nodeClassName:n=``,nodeBorderRadius:r=5,nodeStrokeWidth:i,nodeComponent:a=Ap,onClick:o}){let s=fu(jp,su),c=Mp(t),l=Mp(e),u=Mp(n),d=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`;return(0,N.jsx)(N.Fragment,{children:s.map(e=>(0,N.jsx)(Fp,{id:e,nodeColorFunc:c,nodeStrokeColorFunc:l,nodeClassNameFunc:u,nodeBorderRadius:r,nodeStrokeWidth:i,NodeComponent:a,onClick:o,shapeRendering:d},e))})}function Pp({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:o,NodeComponent:s,onClick:c}){let{node:l,x:u,y:d,width:f,height:p}=fu(t=>{let n=t.nodeLookup.get(e),{x:r,y:i}=n.internals.positionAbsolute,{width:a,height:o}=fc(n);return{node:n,x:r,y:i,width:a,height:o}},su);return!l||l.hidden||!pc(l)?null:(0,N.jsx)(s,{x:u,y:d,width:f,height:p,style:l.style,selected:!!l.selected,className:r(l),color:t(l),borderRadius:i,strokeColor:n(l),strokeWidth:a,shapeRendering:o,onClick:c,id:l.id})}var Fp=(0,v.memo)(Pp),Ip=(0,v.memo)(Np),Lp=200,Rp=150,zp=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?tc(Rs(e.nodeLookup),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height}},Bp=`react-flow__minimap-desc`;function Vp({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:i=``,nodeBorderRadius:a=5,nodeStrokeWidth:o,nodeComponent:s,bgColor:c,maskColor:l,maskStrokeColor:u,maskStrokeWidth:d,position:f=`bottom-right`,onClick:p,onNodeClick:m,pannable:h=!1,zoomable:g=!1,ariaLabel:_=`React Flow mini map`,inversePan:y,zoomStep:b=10,offsetScale:x=5}){let S=pu(),C=(0,v.useRef)(null),{boundingRect:w,viewBB:T,rfId:E,panZoom:D,translateExtent:ee,flowWidth:te,flowHeight:O}=fu(zp,su),k=e?.width??Lp,ne=e?.height??Rp,re=w.width/k,ie=w.height/ne,ae=Math.max(re,ie),A=ae*k,j=ae*ne,oe=x*ae,se=w.x-(A-w.width)/2-oe,M=w.y-(j-w.height)/2-oe,ce=A+oe*2,le=j+oe*2,ue=`${Bp}-${E}`,P=(0,v.useRef)(0),F=(0,v.useRef)();P.current=ae,(0,v.useEffect)(()=>{if(C.current&&D)return F.current=xl({domNode:C.current,panZoom:D,getTransform:()=>S.getState().transform,getViewScale:()=>P.current}),()=>{F.current?.destroy()}},[D]),(0,v.useEffect)(()=>{F.current?.update({translateExtent:ee,width:te,height:O,inversePan:y,pannable:h,zoomStep:b,zoomable:g})},[h,g,y,b,ee,te,O]);let de=p?e=>{let[t,n]=F.current?.pointer(e)||[0,0];p(e,{x:t,y:n})}:void 0,fe=m?(0,v.useCallback)((e,t)=>{m(e,S.getState().nodeLookup.get(t))},[]):void 0;return(0,N.jsx)(Cu,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c==`string`?c:void 0,"--xy-minimap-mask-background-color-props":typeof l==`string`?l:void 0,"--xy-minimap-mask-stroke-color-props":typeof u==`string`?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof d==`number`?d*ae:void 0,"--xy-minimap-node-background-color-props":typeof r==`string`?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n==`string`?n:void 0,"--xy-minimap-node-stroke-width-props":typeof o==`string`?o:void 0},className:Ut([`react-flow__minimap`,t]),"data-testid":`rf__minimap`,children:(0,N.jsxs)(`svg`,{width:k,height:ne,viewBox:`${se} ${M} ${ce} ${le}`,className:`react-flow__minimap-svg`,role:`img`,"aria-labelledby":ue,ref:C,onClick:de,children:[_&&(0,N.jsx)(`title`,{id:ue,children:_}),(0,N.jsx)(Ip,{onClick:fe,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:o,nodeComponent:s}),(0,N.jsx)(`path`,{className:`react-flow__minimap-mask`,d:`M${se-oe},${M-oe}h${ce+oe*2}v${le+oe*2}h${-ce-oe*2}z
|
|
18
|
+
M${T.x},${T.y}h${T.width}v${T.height}h${-T.width}z`,fillRule:`evenodd`,pointerEvents:`none`})]})})}Vp.displayName=`MiniMap`;var Hp=(0,v.memo)(Vp);function Up({nodeId:e,position:t,variant:n=Il.Handle,className:r,style:i={},children:a,color:o,minWidth:s=10,minHeight:c=10,maxWidth:l=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:d=!1,shouldResize:f,onResizeStart:p,onResize:m,onResizeEnd:h}){let g=Od(),_=typeof e==`string`?e:g,y=pu(),b=(0,v.useRef)(null),x=n===Il.Line?`right`:`bottom-right`,S=t??x,C=(0,v.useRef)(null);(0,v.useEffect)(()=>{if(b.current&&_)return C.current||=Jl({domNode:b.current,nodeId:_,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,domNode:a}=y.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,paneDomNode:a}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:i,nodeOrigin:a}=y.getState(),o=[],s={x:e.x,y:e.y},c=r.get(_);if(c&&c.expandParent&&c.parentId){let t=c.origin??a,n=e.width??c.measured.width,l=e.height??c.measured.height,u=nl([{id:c.id,parentId:c.parentId,rect:{width:n,height:l,...mc({x:e.x??c.position.x,y:e.y??c.position.y},{width:n,height:l},c.parentId,r,t)}}],r,i,a);o.push(...u),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*l,e.y):void 0}if(s.x!==void 0&&s.y!==void 0){let e={id:_,type:`position`,position:{...s}};o.push(e)}if(e.width!==void 0&&e.height!==void 0){let t={id:_,type:`dimensions`,resizing:!0,setAttributes:!0,dimensions:{width:e.width,height:e.height}};o.push(t)}for(let e of t){let t={...e,type:`position`};o.push(t)}n(o)},onEnd:()=>{let e={id:_,type:`dimensions`,resizing:!1};y.getState().triggerNodeChanges([e])}}),C.current.update({controlPosition:S,boundaries:{minWidth:s,minHeight:c,maxWidth:l,maxHeight:u},keepAspectRatio:d,onResizeStart:p,onResize:m,onResizeEnd:h,shouldResize:f}),()=>{C.current?.destroy()}},[S,s,c,l,u,d,p,m,h,f]);let w=S.split(`-`),T=n===Il.Line?`borderColor`:`backgroundColor`,E=o?{...i,[T]:o}:i;return(0,N.jsx)(`div`,{className:Ut([`react-flow__resize-control`,`nodrag`,...w,n,r]),ref:b,style:E,children:a})}(0,v.memo)(Up);var Wp={crossingsPerEdge:.5,overlaps:0,detailedNodes:60,overviewLeaves:300,layoutMs500:1500},Gp={width:1600,height:900},Kp=(e,t,n)=>(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x),qp=(e,t)=>Math.abs(e.x-t.x)<1e-9&&Math.abs(e.y-t.y)<1e-9;function Jp(e,t,n,r){if(qp(e,n)||qp(e,r)||qp(t,n)||qp(t,r))return!1;let i=Kp(n,r,e),a=Kp(n,r,t),o=Kp(e,t,n),s=Kp(e,t,r);return(i>0&&a<0||i<0&&a>0)&&(o>0&&s<0||o<0&&s>0)}function Yp(e){let t=e.edges.map(e=>{let t=[];for(let n=1;n<e.points.length;n++)t.push([e.points[n-1],e.points[n]]);return t}),n=0;for(let e=0;e<t.length;e++)for(let r=e+1;r<t.length;r++)for(let[i,a]of t[e])for(let[e,o]of t[r])Jp(i,a,e,o)&&n++;let r=new Map(e.nodes.map(e=>[e.id,e.parent])),i=(e,t)=>{for(let n=r.get(t);n;n=r.get(n))if(n===e)return!0;return!1},a=0;for(let t=0;t<e.nodes.length;t++)for(let n=t+1;n<e.nodes.length;n++){let r=e.nodes[t],o=e.nodes[n];if(i(r.id,o.id)||i(o.id,r.id))continue;let s=Math.min(r.x+r.width,o.x+o.width)-Math.max(r.x,o.x),c=Math.min(r.y+r.height,o.y+o.height)-Math.max(r.y,o.y);s>0&&c>0&&a++}let o=new Set(e.nodes.map(e=>e.parent).filter(Boolean)),s=t.reduce((e,t)=>e+t.reduce((e,[t,n])=>e+Math.hypot(n.x-t.x,n.y-t.y),0),0),c=[...e.nodes.flatMap(e=>[e.x,e.x+e.width]),...e.edges.flatMap(e=>e.points.map(e=>e.x))],l=[...e.nodes.flatMap(e=>[e.y,e.y+e.height]),...e.edges.flatMap(e=>e.points.map(e=>e.y))],u=c.length?Math.max(...c)-Math.min(...c):0,d=l.length?Math.max(...l)-Math.min(...l):0;return{nodes:e.nodes.length,leaves:e.nodes.filter(e=>!o.has(e.id)).length,edges:e.edges.length,crossings:n,crossingsPerEdge:e.edges.length?n/e.edges.length:0,overlaps:a,averageEdgeLength:e.edges.length?s/e.edges.length:0,width:u,height:d,screens:u*d/(Gp.width*Gp.height)}}function Xp(e,t=`detailed`){let n=[];return e.crossingsPerEdge>Wp.crossingsPerEdge&&n.push(`crossings`),e.overlaps>Wp.overlaps&&n.push(`overlaps`),t===`detailed`&&e.nodes>Wp.detailedNodes&&n.push(`nodes`),t===`overview`&&e.leaves>Wp.overviewLeaves&&n.push(`leaves`),n}function Zp(e,t,n=16){let r={},i=[],a=new Map(e.map(e=>[e.id,e.parent])),o=(e,t)=>{for(let n=a.get(t);n;n=a.get(n))if(n===e)return!0;for(let n=a.get(e);n;n=a.get(n))if(n===t)return!0;return!1};for(let n of e){let e=t[n.id];e&&(r[n.id]={x:e.x,y:e.y},i.push({...n,x:e.x,y:e.y}))}let s=e=>i.find(t=>!o(t.id,e.id)&&Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)>0&&Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y)>0);for(let a of e){if(t[a.id])continue;let e={...a};for(let t=0,r=s(e);r&&t<1e3;t++,r=s(e))e.y=r.y+r.height+n;r[a.id]={x:e.x,y:e.y},i.push(e)}return r}var Qp=`__root__`,$p=16,em=36;function tm(e){return{"elk.algorithm":`layered`,"elk.direction":e,"elk.edgeRouting":`ORTHOGONAL`,"elk.hierarchyHandling":`INCLUDE_CHILDREN`,"elk.spacing.nodeNode":`32`,"elk.layered.spacing.nodeNodeBetweenLayers":`64`,"elk.spacing.edgeLabel":`4`,"elk.edgeLabels.placement":`CENTER`,"elk.layered.considerModelOrder.strategy":`NODES_AND_EDGES`}}function nm(e){let t=new Map;for(let n of e.groups)t.set(n.id,n.parent);for(let n of e.nodes)t.set(n.id,n.parent);let n=new Set(e.groups.map(e=>e.id)),r=new Map;for(let e of t.keys()){let i=[],a=new Set([e]);for(let r=t.get(e);r&&n.has(r)&&!a.has(r);r=t.get(r))i.push(r),a.add(r);r.set(e,i)}return r}function rm(e,t,n){let r=e.get(t)??[],i=new Set(e.get(n)??[]);return r.find(e=>i.has(e))??`__root__`}var im=e=>[...e].sort((e,t)=>e.id<t.id?-1:+(e.id>t.id));function am(e,t){let n=nm(e),r=new Map;r.set(Qp,{id:Qp,layoutOptions:tm(t),children:[],edges:[]});for(let t of im(e.groups))r.set(t.id,{id:t.id,layoutOptions:{"elk.padding":`[top=${t.header??em},left=${$p},bottom=${$p},right=${$p}]`},children:[],edges:[]});for(let t of im(e.nodes))r.has(t.id)||r.set(t.id,{id:t.id,width:t.width,height:t.height});let i=e=>n.get(e)?.[0]??`__root__`;for(let t of im(e.groups))r.get(i(t.id)).children.push(r.get(t.id));for(let t of im(e.nodes)){let n=r.get(t.id);e.groups.some(e=>e.id===t.id)||r.get(i(t.id)).children.push(n)}let a=[];for(let t of im(e.edges)){if(t.from===t.to||!n.has(t.from)||!n.has(t.to)){a.push(t.id);continue}let e={id:t.id,sources:[t.from],targets:[t.to]};t.label&&(e.labels=[{text:t.id,width:t.label.width,height:t.label.height}]),r.get(rm(n,t.from,t.to)).edges.push(e)}return{graph:r.get(Qp),dropped:a}}function om(e,t,n=[]){let r=new Set(t.groups.map(e=>e.id)),i={},a={},o=(e,t,n)=>{for(let a of e.children??[]){let e={id:a.id,x:a.x??0,y:a.y??0,width:a.width??0,height:a.height??0,group:r.has(a.id)};n&&(e.parent=n),i[a.id]=e,o(a,{x:t.x+e.x,y:t.y+e.y},a.id)}for(let n of e.edges??[]){let e=n.sections?.[0];if(!e)continue;let r=e=>({x:e.x+t.x,y:e.y+t.y}),i={id:n.id,from:n.sources[0],to:n.targets[0],points:[e.startPoint,...e.bendPoints??[],e.endPoint].map(r)},o=n.labels?.[0];o&&o.x!==void 0&&o.y!==void 0&&(i.label=r({x:o.x,y:o.y})),a[n.id]=i}};return o(e,{x:0,y:0}),{boxes:i,routes:a,dropped:n}}function sm(e,t){let n=0,r=0,i=new Set;for(let a=e[t];a&&!i.has(a.id);a=a.parent?e[a.parent]:void 0)i.add(a.id),n+=a.x,r+=a.y;return{x:n,y:r}}var cm=16;function lm(e,t){if(!Object.keys(t).filter(t=>e.boxes[t]).length)return e;let n=new Map(Object.keys(e.boxes).map(t=>[t,sm(e.boxes,t)])),r={};for(let[t,n]of Object.entries(e.boxes))r[t]={...n};let i=e=>e?1+i(r[e]?.parent):0,a=[...Object.values(r).filter(e=>e.group).map(e=>e.id).sort((e,t)=>i(t)-i(e)||(e<t?-1:1)),void 0];for(let e of a){let n=Object.values(r).filter(t=>t.parent===e).sort((e,t)=>e.id<t.id?-1:1),i={};for(let e of n)t[e.id]&&(i[e.id]=t[e.id]);let a=Zp(n.map(e=>({id:e.id,x:e.x,y:e.y,width:e.width,height:e.height})),i);for(let e of n)Object.assign(r[e.id],a[e.id]);if(e&&n.length){let t=r[e];t.width=Math.max(t.width,...n.map(e=>r[e.id].x+e.width+cm)),t.height=Math.max(t.height,...n.map(e=>r[e.id].y+e.height+cm))}}let o=new Set(Object.keys(r).filter(t=>{let i=n.get(t),a=sm(r,t),o=e.boxes[t],s=r[t];return[i.x-a.x,i.y-a.y,o.width-s.width,o.height-s.height].some(e=>Math.abs(e)>.5)})),s={};for(let[t,n]of Object.entries(e.routes))!o.has(n.from)&&!o.has(n.to)&&(s[t]=n);return{boxes:r,routes:s,dropped:e.dropped}}async function um(e,t=location.href,n=e=>fetch(e).then(e=>e.text()),r=e=>URL.createObjectURL(new Blob([e],{type:`text/javascript`}))){let i=new URL(e,t),a=new URL(t);return i.origin!==`null`&&i.origin===a.origin?i.href:r(await n(i.href))}var dm=`modulepreload`,fm=function(e,t){return new URL(e,t).href},pm={},mm=function(e){return e.pathname.endsWith(`.css`)},hm=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},gm=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=fm(t,n);let r=s(t),i=mm(r);return hm(pm,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:dm,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};function _m(e){return{name:`elk`,async layout(t,n){let{graph:r,dropped:i}=am(t,n);return om(await e.layout(r),t,i)}}}var vm;function ym(){return vm??=Promise.all([gm(()=>import(`./elk-api-tma0MCuh.js`).then(e=>c(e.default,1)),[],import.meta.url),gm(()=>import(`./elk-worker.min-DdYmS5kP.js`),[],import.meta.url)]).then(async([e,t])=>_m(new e.default({workerUrl:await um(t.default)}))),vm}function bm(e,t){let n=t=>{let n=sm(e.boxes,t),r=e.boxes[t];return{x:n.x+r.width/2,y:n.y+r.height/2}};return{nodes:Object.values(e.boxes).map(t=>({id:t.id,...sm(e.boxes,t.id),width:t.width,height:t.height,...t.parent?{parent:t.parent}:{}})),edges:t.filter(t=>e.boxes[t.from]&&e.boxes[t.to]&&t.from!==t.to).map(t=>({id:t.id,points:e.routes[t.id]?.points??[n(t.from),n(t.to)]}))}}async function xm(e,t,n,r,i){let a=lm(await(i??await ym()).layout({nodes:e,edges:t,groups:n},r.direction),r.pinned??{}),o=Yp(bm(a,t));return{...a,score:o,over:Xp(o,`detailed`)}}function Sm(e){let t=/^(.+):(\d+)$/.exec(e.trim());return t?{file:t[1],line:Number(t[2])}:void 0}function Cm(e,t,n){let r=[];for(let i of e.facts){i.cite.file===t&&i.cite.line===n&&r.push({fact:i,spot:i.cite});for(let e of i.steps??[])e.file===t&&e.line===n&&r.push({fact:i,spot:e,step:e.what})}return r}var wm=(e,t,n)=>e.questions.filter(e=>e.evidence.includes(`${t}:${n}`)),Tm=e=>!!e.correction&&(e.correction.action===`wrong`||e.by!==`person`);function Em(e,t){if(!e||!t.length)return[];let n=t.flatMap(t=>Cm(e,t.file,t.line)),r=[];return n.some(e=>e.fact.verified!==`none`)||r.push(`unverified`),t.some(t=>wm(e,t.file,t.line).length)&&r.push(`question`),n.some(e=>Tm(e.fact))&&r.push(`corrected`),r}function Dm(e,t,n={}){let r=new Map;for(let t of e){if(!t.repo)continue;let e=t.at?Sm(t.at):t.path&&t.line?{file:t.path,line:t.line}:void 0;e&&r.set(t.repo,[...r.get(t.repo)??[],e])}if(!r.size)return n.bare&&e.length===0?[`unverified`]:[];let i=new Set,a=0,o=0;for(let[e,n]of r){let r=t(e);if(!r)continue;a++;let s=Em(r,n);s.includes(`unverified`)&&o++;for(let e of s)e!==`unverified`&&i.add(e)}return a>0&&o===a&&i.add(`unverified`),[...i].sort()}var Om=e=>[...new Set(e.map(e=>e.repo).filter(e=>!!e))],z={title:`Architecture`,lens:`Lens`,lenses:{architecture:`Architecture`,repo:`Repo`,data:`Data`,integration:`Integration`,infrastructure:`Infrastructure`},breadcrumbs:`Where you are`,canvas:`Picture`,canvasLabel:`The picture of this part of the estate`,canvasHelp:`Drag a box to move it; its links follow. Double-click a box to open it here. Scroll or use the buttons to zoom. The outline below has the same boxes for keyboards.`,layingOut:`Laying out the picture`,layoutFailed:e=>`Couldn't lay out the picture: ${e}`,minimap:`Map of the whole picture`,keep:`Keep this arrangement`,keeping:`Keeping`,kept:e=>`Kept in ${e}. The view opens like this next time.`,keepFailed:e=>`Couldn't keep the arrangement: ${e}`,keptNothing:`Drag a box first: only boxes you moved are kept.`,tidy:`Tidy up`,reset:`Reset`,resetDone:`Arrangement dropped. Every box is placed by the layout again.`,moved:e=>`${e} box${e===1?``:`es`} placed by you`,openHere:`Open here`,closeHere:`Close here`,gapsOn:e=>`${e} thing${e===1?``:`s`} missing`,sharedGaps:e=>`Every part here is missing the same thing: ${e}.`,insideGaps:e=>`every part inside is missing: ${e}`,insideLinks:e=>`${e} link${e===1?``:`s`} inside`,edgeCount:(e,t)=>`${e} × ${t}`,legible:{nodes:e=>`This picture has ${e} boxes, more than about 60 can be read at once.`,crossings:`Too many links cross in this picture to follow them.`,api:`This view is clearer another way.`,focus:`Open one in focus to see who reads and writes it.`,collapse:`Close the parts opened here to see the whole again.`,group:`Open one part at a time instead.`},collapseAll:`Close the parts opened here`,openPart:e=>`Open ${e}`,outline:`Outline`,outlineHelp:`Tab moves through the boxes. Enter opens one. Escape closes it. Arrow keys move up and down.`,inspector:`Details`,pick:`Pick a box to see its details.`,open:`Open`,close:`Close`,focus:`Show in focus`,focusOff:`Back to the whole view`,focusHint:`Tables are clearer one at a time. Open one in focus to see who reads and writes it.`,groupHint:`This view has more boxes than can be read at once. Open a part of it instead.`,empty:`Nothing to show here in this lens.`,emptyEstate:`The catalog is empty. Read a repo first (atticus map <repo>, then atticus verify <repo> --write), then come back.`,properties:`Properties`,kind:`Kind`,stateLabel:`State`,loading:`Loading`,loadFailed:e=>`Couldn't load this: ${e}`,evidence:`Where it was found`,noEvidence:`No file cited.`,gaps:`What is missing`,noGaps:`Nothing missing.`,next:`Next step`,copy:`Copy`,copied:`Copied`,state:{current:`Current`,new:`New`,changed:`Changed`,retired:`Retired`},gap:{inferred:`Seen at one end only`,"no-repo":`No repo known`,"no-system":`No system known`,"no-component":`No component known`,"no-owner":`No owner known`,"no-store":`No store known`,"no-endpoint":`Endpoint not found`,"not-in-catalog":`Not in the catalog`,conflicts:`Sources disagree`,unverified:`No fact verified from code`,question:`A question is open on it`,corrected:`A correction waits for atticus verify`},edges:(e,t)=>`${e} link${e===1?``:`s`}${t?`, ${t} implied link${t===1?``:`s`} hidden`:``}`,outsideMark:`outside`,children:e=>`${e} inside`},km=e=>e.length>1?e[0].gaps.filter(t=>e.every(e=>e.gaps.includes(t))):[];function Am(e,t,n){let r=e.get(t)?.node;if(!r)return[];let i=[],a=(t,r,o)=>{let s=n.has(t.id)&&e.has(t.id),c=s?e.get(t.id).children:[],l=km(c);i.push({node:t,depth:r,expanded:s,gaps:t.gaps.filter(e=>!o.includes(e)),inside:l});for(let e of c)a(e,r+1,l)};return a(r,0,[]),i}function jm(e,t,n){let r=e.findIndex(e=>e.node.id===t);if(r<0)return;let i=e[r];switch(n){case`ArrowDown`:return{focus:e[Math.min(e.length-1,r+1)].node.id};case`ArrowUp`:return{focus:e[Math.max(0,r-1)].node.id};case`Home`:return{focus:e[0].node.id};case`End`:return{focus:e[e.length-1].node.id};case`Enter`:case`ArrowRight`:return i.node.childCount>0?{open:t}:{select:t};case`Escape`:case`ArrowLeft`:return i.expanded?{close:t}:i.node.parent&&e.some(e=>e.node.id===i.node.parent)?{focus:i.node.parent}:void 0;default:return}}var Mm=(e,t={})=>({id:e.id,label:e.label,kind:e.kind,gaps:e.gaps,childCount:e.childCount,outside:!1,group:!1,inside:0,...t}),Nm=new Set([`component`,`endpoint`,`topic`,`client`,`store`,`table`,`deployment`]);function Pm(e,t){let n=(e,t)=>t.some(t=>!e.gaps.includes(t))?{...e,gaps:[...e.gaps,...t.filter(t=>!e.gaps.includes(t))]}:e,r=e=>n(e,Dm(e.evidence,t,{bare:!!e.record&&Nm.has(e.kind)})),i=new Map;for(let[a,o]of e)i.set(a,{...o,node:r(o.node),children:o.children.map(r),outside:o.outside.map(r),edges:o.edges.map(e=>n(e,Dm(e.evidence,t)))});return i}function Fm(e){let t=new Set;for(let n of e.values())for(let e of[n.node,...n.children,...n.outside,...n.edges])for(let n of e.evidence)n.repo&&t.add(n.repo);return[...t].sort()}var Im=(e,t)=>e>1?z.edgeCount(e,t):t;function Lm(e,t,n,r){let i=new Map,a=new Map;if(r){for(let e of[r.node,...r.neighbours])i.set(e.id,Mm(e));for(let e of r.edges)a.set(e.id,e)}else{let r=e.get(t);if(!r)return{boxes:[],links:[]};let o=(t,r)=>{for(let e of t.edges)a.set(e.id,e);for(let a of t.children){if(i.has(a.id))continue;let t=n.has(a.id)?e.get(a.id):void 0;i.set(a.id,Mm(a,{group:!!t,...r?{parent:r}:{}})),t&&o(t,a.id)}};o(r);for(let e of r.outside)i.has(e.id)||i.set(e.id,Mm(e,{outside:!0}))}let o=(e,t)=>{for(let n=i.get(e)?.parent;n;n=i.get(n)?.parent)if(n===t)return!0;return!1},s=[...a.values()].filter(e=>i.has(e.from)&&i.has(e.to)),c=e=>s.some(t=>t!==e&&t.type===e.type&&(i.get(e.to).group&&t.from===e.from&&o(t.to,e.to)||i.get(e.from).group&&t.to===e.to&&o(t.from,e.from))),l=[];for(let e of s)e.from===e.to?i.get(e.from).inside+=e.count:c(e)||l.push({id:e.id,from:e.from,to:e.to,type:e.type,count:e.count,label:Im(e.count,e.type),async:e.sync===`async`||e.type===`publishes`||e.type===`subscribes`,gaps:e.gaps});let u=[...i.values()].filter(e=>!e.outside),d=u.length>1?u[0].gaps.filter(e=>u.every(t=>t.gaps.includes(e))):[];if(d.length)for(let e of u)i.set(e.id,{...e,gaps:e.gaps.filter(e=>!d.includes(e))});return{boxes:[...i.values()],links:l,shared:d}}function Rm(e){return e===`architecture`||e===`infrastructure`?`DOWN`:`RIGHT`}function zm(e){return{width:Math.min(280,Math.max(150,Math.ceil(e.label.length*7.5)+56)),height:64}}function Bm(e,t,n,r){let i=e.includes(`nodes`)?`nodes`:e.includes(`crossings`)?`crossings`:void 0;if(!i&&!t)return;let a=i??`api`;if(t?.mode===`focus`&&t.id)return{mode:`focus`,id:t.id,why:a};if(n.size)return{mode:`collapse`,why:a};let o=[...r].filter(e=>e.childCount>0).sort((e,t)=>t.childCount-e.childCount||(e.id<t.id?-1:1))[0];return o?{mode:`group`,id:o.id,why:a}:{mode:`group`,why:a}}function Vm(e,t,n=`node`){return[e,...n===`focus`?[`focus`]:[],t.replace(/:/g,`-`)].join(`.`)}function Hm(e){let t=e.path.map(e=>e.id),n=e.node.childCount>0||t.length===0?[...t,e.node.id]:t;return{current:n[n.length-1],expanded:n,selected:e.node.id}}function Um({n:e}){return(0,N.jsxs)(`span`,{className:`arch-gap`,children:[(0,N.jsxs)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 12 12`,"aria-hidden":`true`,focusable:`false`,children:[(0,N.jsx)(`path`,{d:`M6 1 L11 11 H1 Z`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`}),(0,N.jsx)(`path`,{d:`M6 5 V7.5 M6 9 V9.5`,stroke:`currentColor`,strokeWidth:`1.5`})]}),z.gapsOn(e)]})}function Wm({data:e}){let{box:t,dir:n}=e,r=[`arch-box`,t.group?`group`:``,t.outside?`outside`:``,t.gaps.length?`gappy`:``,e.selected?`picked`:``,t.mark?`m-${t.mark}`:``].join(` `);return(0,N.jsxs)(`div`,{className:r,title:t.gaps.map(e=>z.gap[e]??e).join(`, `)||void 0,children:[(0,N.jsx)(Md,{type:`target`,position:n===`RIGHT`?R.Left:R.Top}),(0,N.jsxs)(`div`,{className:`arch-box-head`,children:[(0,N.jsx)(`span`,{className:`hud`,children:t.kind}),t.childCount>0&&!t.group&&(0,N.jsx)(`span`,{className:`hud`,children:z.children(t.childCount)})]}),(0,N.jsxs)(`div`,{className:`arch-box-label`,children:[t.label,t.outside&&` (${z.outsideMark})`]}),(t.gaps.length>0||t.inside>0)&&(0,N.jsxs)(`div`,{className:`arch-box-foot`,children:[t.gaps.length>0&&(0,N.jsx)(Um,{n:t.gaps.length}),t.inside>0&&(0,N.jsx)(`span`,{className:`hud`,children:z.insideLinks(t.inside)})]}),(0,N.jsx)(Md,{type:`source`,position:n===`RIGHT`?R.Right:R.Bottom})]})}var Gm=(e,t)=>!!e&&!!t&&Math.abs(e.x-t.x)<.5&&Math.abs(e.y-t.y)<.5;function Km(e){let t=e.map((e,t)=>`${t?`L`:`M`}${e.x},${e.y}`).join(` `),n=Math.max(1,Math.floor(e.length/2)),r=e[n-1],i=e[n];return[t,(r.x+i.x)/2,(r.y+i.y)/2]}function qm(e){let t=fp(e.source),n=fp(e.target),r=e.data,[i,a,o]=r.points&&Gm(t?.internals.positionAbsolute,r.ends?.from)&&Gm(n?.internals.positionAbsolute,r.ends?.to)?Km(r.points):zc({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition}),s=`arch-link ${r.link.async?`async`:``} ${r.link.gaps.length?`gappy`:``} ${r.link.mark?`m-${r.link.mark}`:``}`;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(ff,{id:e.id,path:i,className:s,...e.markerEnd?{markerEnd:e.markerEnd}:{}}),(0,N.jsx)(dp,{children:(0,N.jsxs)(`div`,{className:`arch-link-label nodrag nopan ${r.link.gaps.length?`gappy`:``} ${r.link.mark?`m-${r.link.mark}`:``}`,style:{transform:`translate(-50%, -50%) translate(${a}px, ${o}px)`},children:[r.link.gaps.length>0&&(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`⚠ `}),r.link.label,r.link.gaps.length>0&&(0,N.jsxs)(`span`,{className:`sr`,children:[` (`,z.gapsOn(r.link.gaps.length),`)`]})]})})]})}var Jm={box:Wm},Ym=.6,Xm={link:qm};function Zm(e){return{nodes:e.boxes.map(e=>({id:e.id,...zm(e),...e.parent?{parent:e.parent}:{}})),groups:e.boxes.filter(e=>e.group).map(e=>({id:e.id,...e.parent?{parent:e.parent}:{}})),edges:e.links.map(e=>({id:e.id,from:e.from,to:e.to,label:{width:Math.ceil(e.label.length*6.6)+16,height:20}}))}}function Qm(e,t,n,r){let i=e=>{let n=e?t.boxes[e]:void 0;return n?1+i(n.parent):0};return{nodes:e.boxes.filter(e=>t.boxes[e.id]).map(e=>{let i=t.boxes[e.id];return{id:e.id,type:`box`,position:{x:i.x,y:i.y},data:{box:e,dir:n,selected:e.id===r},width:i.width,height:i.height,ariaLabel:`${e.kind} ${e.label}${e.gaps.length?`, ${z.gapsOn(e.gaps.length)}`:``}`,...e.parent?{parentId:e.parent,expandParent:!0}:{},...e.group?{zIndex:-1}:{}}}).sort((e,t)=>i(e.id)-i(t.id)),edges:e.links.filter(e=>t.boxes[e.from]&&t.boxes[e.to]&&e.from!==e.to).map(e=>{let n=t.routes[e.id],r={link:e};return n&&(r.points=n.points,r.ends={from:sm(t.boxes,e.from),to:sm(t.boxes,e.to)}),{id:e.id,source:e.from,target:e.to,type:`link`,data:r,markerEnd:{type:As.ArrowClosed,width:16,height:16},ariaLabel:`${e.from} ${e.label} ${e.to}`}})}}function $m(e){let[t,n]=(0,v.useState)(e.initial?{state:`ready`}:{state:`running`}),[r]=(0,v.useState)(()=>e.initial?Qm(e.graph,e.initial,e.direction,e.selected):void 0),[i,a]=(0,v.useState)(r?.nodes??[]),[o,s]=(0,v.useState)(r?.edges??[]),c=(0,v.useRef)(void 0),l=(0,v.useRef)(e.pinned);l.current=e.pinned;let u=(0,v.useRef)(e);u.current=e;let d=`${(0,v.useMemo)(()=>JSON.stringify([e.direction,e.graph.boxes.map(e=>[e.id,e.parent??``,e.group]),e.graph.links.map(e=>[e.id,e.label])]),[e.graph,e.direction])}#${e.tidy}`,f=(0,v.useRef)(e.initial?d:``);(0,v.useEffect)(()=>{if(f.current===d)return;f.current=d;let e=!0,{graph:t,direction:r,engine:i}=u.current,o=Zm(t);return n(e=>e.state===`ready`?e:{state:`running`}),xm(o.nodes,o.edges,o.groups,{direction:r,pinned:l.current},i).then(i=>{if(!e)return;let o=Qm(t,i,r,u.current.selected);a(o.nodes),s(o.edges),n({state:`ready`}),u.current.onLaid(i),requestAnimationFrame(()=>void c.current?.fitView({padding:.08,duration:200,minZoom:Ym}))},t=>e&&n({state:`failed`,error:t instanceof Error?t.message:String(t)})),()=>{e=!1}},[d]),(0,v.useEffect)(()=>{let t=new Map(e.graph.boxes.map(e=>[e.id,e]));a(n=>n.map(n=>{let r=t.get(n.id)??n.data.box,i=n.id===e.selected;return r===n.data.box&&i===n.data.selected?n:{...n,data:{...n.data,box:r,selected:i}}}))},[e.graph,e.selected]);let p=(0,v.useCallback)(e=>a(t=>Ku(e,t)),[]);return t.state===`failed`?(0,N.jsx)(`div`,{className:`state error`,role:`alert`,children:z.layoutFailed(t.error)}):(0,N.jsx)(`div`,{className:`arch-canvas`,style:{height:e.height??560},"aria-busy":t.state===`running`,children:t.state===`running`&&!i.length?(0,N.jsxs)(`div`,{className:`stack`,"aria-live":`polite`,children:[(0,N.jsx)(`span`,{className:`sr`,children:z.layingOut}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`70%`}}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`50%`}})]}):(0,N.jsxs)(lp,{nodes:i,edges:o,nodeTypes:Jm,edgeTypes:Xm,onNodesChange:p,onInit:e=>{c.current=e},onNodeClick:(t,n)=>e.onSelect(n.id),onSelectionChange:({nodes:t})=>{t.length===1&&t[0].id!==e.selected&&e.onSelect(t[0].id)},onNodeDoubleClick:(t,n)=>{n.data.box.childCount>0&&e.onToggle(n.id)},onNodeDragStop:(t,n,r)=>{for(let t of r.length?r:[n])e.onMoved(t.id,t.position)},nodesConnectable:!1,edgesFocusable:!1,zoomOnDoubleClick:!1,minZoom:.1,fitView:!0,fitViewOptions:{padding:.08,minZoom:Ym},colorMode:`dark`,"aria-label":z.canvasLabel,children:[(0,N.jsx)(yp,{gap:24}),(0,N.jsx)(Op,{showInteractive:!1}),(0,N.jsx)(Hp,{pannable:!0,zoomable:!0,ariaLabel:z.minimap})]})})}var eh=E.runNext;function th({text:e,label:t}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`work-cmd`,children:[(0,N.jsx)(`code`,{className:`mono`,children:e}),(0,N.jsx)(St,{text:e,label:`${t}: ${e}`})]}),(0,N.jsx)(Ht,{command:e})]})}function nh({slash:e}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-say`,children:e.where===E.work.slashWhere.metarepo?eh.slash:eh.slashIn(e.where)}),(0,N.jsx)(th,{text:e.command,label:eh.copySlash})]})}function rh({step:e}){return(0,N.jsxs)(`section`,{className:`panel hero work-next`,"aria-labelledby":`run-next`,children:[(0,N.jsx)(`h2`,{id:`run-next`,className:`h`,children:eh.title}),(0,N.jsx)(`p`,{className:`work-why`,children:e.why}),(0,N.jsx)(`p`,{className:`work-say`,children:eh.terminal}),(0,N.jsx)(th,{text:e.command,label:eh.copy}),e.slash?(0,N.jsx)(nh,{slash:e.slash}):(0,N.jsx)(`p`,{className:`work-say`,children:eh.noSlash}),(0,N.jsx)(`p`,{className:`work-say`,children:eh.whatNext}),e.link&&(0,N.jsx)(`p`,{style:{margin:`8px 0 0`},children:(0,N.jsx)(`a`,{href:e.link.href,children:e.link.label})}),e.after&&e.after.length>0&&(0,N.jsxs)(`details`,{className:`work-after`,children:[(0,N.jsx)(`summary`,{children:eh.after}),(0,N.jsx)(`ol`,{children:e.after.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`p`,{className:`work-say`,children:e.why}),(0,N.jsx)(th,{text:e.command,label:eh.copy}),e.slash&&(0,N.jsx)(nh,{slash:e.slash})]},e.command))})]})]})}function ih({of:e,step:t}){return(0,N.jsx)(F,{of:e,children:e=>(0,N.jsx)(rh,{step:t(e)})})}function ah({bare:e=!1}){let t=E.work,n=(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-why`,children:t.pickAChange}),(0,N.jsx)(`p`,{className:`work-say`,children:(0,N.jsx)(`a`,{href:`#/changes`,children:t.openAllChanges})})]});return e?(0,N.jsx)(`div`,{className:`state`,children:n}):(0,N.jsxs)(`section`,{className:`panel`,"aria-labelledby":`pick-a-change`,style:{gridColumn:`1 / -1`},children:[(0,N.jsx)(`h2`,{id:`pick-a-change`,className:`h`,children:t.pickAChangeTitle}),n]})}function oh({title:e}){let t=E.work;return(0,N.jsxs)(`section`,{className:`panel`,"aria-labelledby":`no-change`,style:{gridColumn:`1 / -1`},children:[(0,N.jsx)(`h2`,{id:`no-change`,className:`h`,children:e??t.noChangeTitle}),(0,N.jsx)(`p`,{className:`work-why`,children:t.noChangeYet}),(0,N.jsx)(`p`,{className:`work-say`,children:eh.terminal}),(0,N.jsx)(th,{text:t.noChangeCommand,label:eh.copy}),(0,N.jsx)(`p`,{className:`work-say`,children:(0,N.jsx)(`a`,{href:`#/changes`,children:t.noChangeLink})})]})}function sh({list:e}){return e.length===0?null:(0,N.jsxs)(`div`,{className:`state error`,role:`alert`,children:[E.work.unreadable,(0,N.jsx)(`ul`,{children:e.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`code`,{className:`mono`,children:e.file}),`: `,e.message]},`${e.file}:${e.message}`))})]})}var ch=E.evidence,lh=(0,v.createContext)(void 0),uh=()=>(0,v.useContext)(lh);function dh({children:e}){let[t,n]=(0,v.useState)(new Map),r=(0,v.useRef)(new Set),i=(0,v.useCallback)(e=>{r.current.add(e),n(t=>t.get(e)?.state===`ready`?t:new Map(t).set(e,{state:`loading`})),A(`/api/facts/${encodeURIComponent(e)}`).then(t=>n(n=>new Map(n).set(e,{state:`ready`,data:t})),t=>n(n=>new Map(n).set(e,{state:`error`,error:_t(t)})))},[]);M(e=>{if(e.type===`file.changed`&&typeof e.path==`string`&&/(^|\/)facts\//.test(e.path))for(let e of r.current)i(e)});let a=(0,v.useMemo)(()=>({of:e=>t.get(e),need:e=>{r.current.has(e)||i(e)},reload:i}),[t,i]);return(0,N.jsx)(lh.Provider,{value:a,children:e})}var fh={unverified:`△`,question:`?`,corrected:`✎`};function ph({gaps:e,short:t=!1}){return e.length?(0,N.jsx)(`span`,{className:`ev-gaps`,children:e.map(e=>(0,N.jsxs)(`span`,{className:`ev-gap ev-${e}`,children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:fh[e]}),` `,t?ch.short[e]:ch.gaps[e]]},e))}):null}function mh({hit:e}){let t=e.fact;return(0,N.jsxs)(`span`,{className:`ev-fact`,children:[(0,N.jsx)(`code`,{className:`mono`,children:e.step??t.label}),` `,(0,N.jsxs)(`span`,{className:`muted`,children:[ch.by[t.by]??t.by,` · `,ch.verified[t.verified]??t.verified]}),t.correction&&(0,N.jsxs)(`span`,{className:`ev-corr`,children:[` · `,ch.correction(t.correction.action,t.correction.by)]})]})}function hh(e){let t=Sm(e.at),n=e.of?.state===`ready`?e.of.data:void 0,r=n&&t?Cm(n,t.file,t.line):[],i=r.find(e=>e.spot.quote)?.spot.quote;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`span`,{className:`ev-place mono`,children:[e.repo?`${e.repo} · `:``,e.at]}),e.of?.state===`loading`&&(0,N.jsx)(`span`,{className:`ev-say`,children:ch.loading}),n&&!n.present&&e.repo&&(0,N.jsx)(`span`,{className:`ev-say`,children:ch.noFacts(e.repo)}),n&&n.present&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`ev-say`,children:ch.quote}),i?(0,N.jsx)(`code`,{className:`ev-quote mono`,children:i}):(0,N.jsx)(`span`,{className:`ev-say`,children:ch.noQuote}),r.map(e=>(0,N.jsx)(mh,{hit:e},`${e.fact.id}:${e.step??``}`))]}),n&&t&&(0,N.jsx)(ph,{gaps:Em(n,[t])})]})}function gh({repo:e,at:t}){let n=uh();(0,v.useEffect)(()=>{e&&n?.need(e)},[e,n]);let r=e?n?.of(e):void 0,[i,a]=(0,v.useState)(!1),[o,s]=(0,v.useState)(!1),c=(0,v.useId)(),l=(0,v.useRef)(null),u=Sm(t),d=r?.state===`ready`?r.data:void 0,f=d&&u?Em(d,[u]):[],p=t.split(`/`).pop();return(0,N.jsxs)(`span`,{className:`ev-wrap${i?` open`:``}${o?` quiet`:``}`,onKeyDown:e=>{e.key===`Escape`&&!i&&s(!0)},onMouseLeave:()=>s(!1),onBlur:()=>s(!1),children:[(0,N.jsxs)(`button`,{ref:l,type:`button`,className:`ev-cite${f.length?` gappy`:``}`,"aria-describedby":c,"aria-expanded":i,"aria-label":e?ch.citeOf(t,e):ch.cite(t),onClick:()=>a(e=>!e),children:[(0,N.jsx)(`code`,{className:`mono`,children:p}),f.length>0&&(0,N.jsx)(ph,{gaps:f,short:!0})]}),(0,N.jsx)(`span`,{role:`tooltip`,id:c,className:`ev-tip`,children:(0,N.jsx)(hh,{repo:e,at:t,of:r})}),i&&(0,N.jsx)(_h,{repo:e,at:t,of:r,onClose:()=>{a(!1),l.current?.focus()}})]})}function _h(e){let t=Sm(e.at),n=e.of?.state===`ready`?e.of.data:void 0,r=n&&t?Cm(n,t.file,t.line):[],i=n&&t?wm(n,t.file,t.line):[],[a,o]=(0,v.useState)(),s=[...new Map(r.map(e=>[e.fact.id,e.fact])).values()];return(0,N.jsxs)(`div`,{className:`ev-details`,role:`group`,"aria-label":ch.cite(e.at),onKeyDown:ue(e.onClose),children:[(0,N.jsx)(hh,{repo:e.repo,at:e.at,of:e.of}),i.length>0&&(0,N.jsx)(`ul`,{className:`ev-list`,children:i.map(e=>(0,N.jsxs)(`li`,{children:[e.question,` `,(0,N.jsx)(`a`,{href:`#/questions/${e.id}`,children:ch.openQuestion})]},e.id))}),e.repo&&s.length>0&&(0,N.jsx)(`ul`,{className:`ev-list`,children:s.map(t=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-label":ch.correctFact(t.label),"aria-expanded":a===t.id,onClick:()=>o(a===t.id?void 0:t.id),children:ch.correct}),` `,(0,N.jsx)(`code`,{className:`mono`,children:t.label}),a===t.id&&(0,N.jsx)(bh,{repo:e.repo,fact:t,onClose:()=>o(void 0)})]},t.id))}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:e.onClose,children:ch.close})]})}function vh(e,t){let n=t.reason.trim();if(t.action===`wrong`)return n?{body:{fact:e.id,action:`wrong`,reason:n}}:{error:ch.needReason};let r=Object.fromEntries(Object.entries(t.set).filter(([t,n])=>(e.claim[t]??``)!==n.trim())),i=Number(t.line),a=Number.isInteger(i)&&i>0&&i!==e.cite.line;return!Object.keys(r).length&&!a?{error:ch.nothingChanged}:{body:{fact:e.id,action:`edit`,...Object.keys(r).length?{set:r}:{},...a?{line:i}:{},...n?{reason:n}:{}}}}function yh(e){let t=(0,v.useId)(),[n,r]=(0,v.useState)({action:`wrong`,reason:``,set:{...e.fact.claim},line:String(e.fact.cite.line)}),[i,a]=(0,v.useState)(),o=e.saving??{state:`idle`},s=o.state===`working`;return(0,N.jsxs)(`form`,{className:`ev-correct stack`,onSubmit:t=>{t.preventDefault();let r=vh(e.fact,n);if(`error`in r)return a(r.error);a(void 0),e.onSave?.(r.body)},onKeyDown:ue(e.onClose),"aria-labelledby":`${t}-t`,children:[(0,N.jsx)(`h3`,{id:`${t}-t`,className:`h`,style:{fontSize:14},children:ch.correctTitle(e.fact.label)}),(0,N.jsx)(`p`,{className:`ev-say`,children:ch.correctIntro}),(0,N.jsxs)(`fieldset`,{className:`ev-choice`,children:[(0,N.jsx)(`legend`,{className:`sr`,children:ch.correctTitle(e.fact.label)}),[`wrong`,`edit`].map(e=>(0,N.jsxs)(`label`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`input`,{type:`radio`,name:`${t}-action`,value:e,checked:n.action===e,onChange:()=>r({...n,action:e})}),e===`wrong`?ch.wrong:ch.edit]},e))]}),n.action===`edit`&&(0,N.jsxs)(`div`,{className:`ev-fields`,children:[Object.keys(e.fact.claim).map(e=>(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:e}),(0,N.jsx)(`input`,{value:n.set[e]??``,onChange:t=>r({...n,set:{...n.set,[e]:t.target.value}})})]},e)),(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:ch.line}),(0,N.jsx)(`input`,{type:`number`,min:1,value:n.line,onChange:e=>r({...n,line:e.target.value})})]})]}),(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:n.action===`wrong`?ch.reason:ch.reasonOptional}),(0,N.jsx)(`textarea`,{rows:2,value:n.reason,onChange:e=>r({...n,reason:e.target.value})})]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:s,children:s?ch.saving:ch.save}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:e.onClose,children:ch.close})]}),i&&(0,N.jsx)(`p`,{role:`alert`,className:`state error`,style:{margin:0},children:i}),o.state===`working`&&(0,N.jsx)(`p`,{role:`status`,"aria-busy":`true`,className:`ev-say`,children:ch.saving}),o.state===`error`&&(0,N.jsx)(`p`,{role:`alert`,className:`state error`,style:{margin:0},children:o.text}),o.state===`done`&&(0,N.jsxs)(`div`,{role:`status`,children:[(0,N.jsx)(`p`,{className:`ev-say`,children:ch.saved(o.result.file)}),(0,N.jsx)(th,{text:o.result.commit,label:ch.copyCommit}),(0,N.jsx)(th,{text:o.result.verify,label:ch.copyVerify})]})]})}function bh(e){let t=uh(),[n,r]=(0,v.useState)({state:`idle`});return(0,N.jsx)(yh,{repo:e.repo,fact:e.fact,saving:n,onSave:n=>{r({state:`working`}),A(`/api/facts/${encodeURIComponent(e.repo)}/corrections`,{method:`POST`,body:n}).then(n=>{r({state:`done`,result:n}),t?.reload(e.repo)},e=>r({state:`error`,text:_t(e)}))},onClose:e.onClose})}var xh=[`architecture`,`repo`,`data`,`integration`,`infrastructure`],Sh=(e,t)=>`/api/graph/node/${encodeURIComponent(e)}?lens=${t}`;function Ch(e){return(0,N.jsx)(dh,{children:(0,N.jsx)(wh,{...e})})}function wh({hash:e,screen:t=`architecture`}){let n=ve(e,`lens`),r=xh.includes(n??``)?n:`architecture`,i=ve(e,`node`),[a,o]=(0,v.useState)(new Map),s=uh(),c=Fm(a).join(` `);(0,v.useEffect)(()=>{for(let e of c.split(` `).filter(Boolean))s?.need(e)},[c,s]);let l=(0,v.useMemo)(()=>Pm(a,e=>{let t=s?.of(e);return t?.state===`ready`?t.data:void 0}),[a,s]),[u,d]=(0,v.useState)({state:`loading`}),[f,p]=(0,v.useState)(`estate`),[m,h]=(0,v.useState)(new Set([`estate`])),[g,_]=(0,v.useState)(),[y,b]=(0,v.useState)(),[x,S]=(0,v.useState)(new Set),[C,w]=(0,v.useState)(),[T,E]=(0,v.useState)({state:`loading`,key:``}),[ee,te]=(0,v.useState)(0),[O,k]=(0,v.useState)({state:`idle`}),ne=(0,v.useRef)(new Map),re=(0,v.useCallback)(async(e,t)=>{let n=await A(Sh(e,r));return o(r=>new Map(t??r).set(e,n)),n},[r]);(0,v.useEffect)(()=>{let e=!0;return d({state:`loading`}),p(`estate`),h(new Set([`estate`])),_(void 0),b(void 0),S(new Set),re(`estate`,new Map).then(async()=>{let t=i&&i!==`estate`?await re(i).catch(()=>void 0):void 0;if(t&&e){let e=Hm(t);for(let n of e.expanded)n!==`estate`&&n!==t.node.id&&await re(n).catch(()=>void 0);h(new Set(e.expanded)),p(e.current),_(e.selected)}e&&d({state:`ready`})},t=>e&&d({state:`error`,error:t instanceof Error?t.message:String(t),...t instanceof D&&t.problem.notYet?{notYet:!0}:{}})),()=>{e=!1}},[re,i]),M(e=>{if(e.type===`file.changed`&&typeof e.path==`string`&&e.path.startsWith(`catalog`))for(let e of l.keys())re(e).catch(()=>void 0)});let ie=e=>{if(y){if(y.node.id===e)return y.node;let t=y.neighbours.find(t=>t.id===e);if(t)return t}for(let t of l.values()){if(t.node.id===e)return t.node;let n=t.children.find(t=>t.id===e)??t.outside.find(t=>t.id===e);if(n)return n}},ae=async e=>{let t=ie(e);if(!t||t.childCount===0)_(e);else try{l.has(e)||await re(e),h(t=>new Set(t).add(e)),p(e),_(e),b(void 0),S(new Set)}catch(e){d({state:`error`,error:e instanceof Error?e.message:String(e)})}},j=e=>{h(t=>{let n=new Set(t);return n.delete(e),n});let t=ie(e)?.parent;f===e&&t?(p(t),S(new Set)):se(e),b(void 0)},oe=async e=>{if(x.has(e))return se(e);try{l.has(e)||await re(e),S(t=>new Set(t).add(e)),h(t=>new Set(t).add(e)),_(e)}catch(e){d({state:`error`,error:e instanceof Error?e.message:String(e)})}},se=e=>S(t=>{let n=new Set(t),r=t=>{for(let n=ie(t)?.parent;n;n=ie(n)?.parent)if(n===e)return!0;return!1};for(let i of t)(i===e||r(i))&&n.delete(i);return n}),ce=async e=>{try{b(await A(`/api/graph/focus/${encodeURIComponent(e)}?lens=${r}`)),_(e)}catch(e){d({state:`error`,error:e instanceof Error?e.message:String(e)})}},le=(0,v.useMemo)(()=>Am(l,`estate`,m),[l,m]),ue=l.get(f),F=(0,v.useMemo)(()=>Lm(l,f,x,y),[l,f,x,y]),de=y?y.node.id:f,fe=Vm(r,de,y?`focus`:`node`);(0,v.useEffect)(()=>{let e=!0;return E({state:`loading`,key:fe}),k({state:`idle`}),w(void 0),A(`/api/graph/layout/${encodeURIComponent(fe)}`).then(t=>e&&E({state:`ready`,key:fe,pinned:t.positions,moved:0}),t=>e&&E({state:`error`,key:fe,error:t instanceof Error?t.message:String(t)})),()=>{e=!1}},[fe]);let pe=async(e,t)=>{k({state:`saving`});try{let n=await A(`/api/graph/layout/${encodeURIComponent(fe)}`,{method:`PUT`,body:{lens:r,node:de,positions:e}});return E({state:`ready`,key:fe,pinned:n.positions,moved:0}),k({state:`done`,text:t||z.kept(n.path)}),!0}catch(e){return k({state:`error`,text:z.keepFailed(e instanceof Error?e.message:String(e))}),!1}},me=T.state===`ready`?T.pinned:{},I=!y&&ue?Bm(C?.over??[],ue.suggest,x,ue.children):void 0,he=(e,t)=>{let n=jm(le,e,t.key);n&&(t.preventDefault(),`focus`in n?ne.current.get(n.focus)?.focus():`open`in n?ae(n.open):`close`in n?j(n.close):_(n.select))},ge=g?ie(g):void 0,_e=ue?[...ue.path,ue.node]:[];return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:z.title,span:`1 / -1`,children:(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:12},children:[(0,N.jsx)(`div`,{role:`tablist`,"aria-label":z.lens,className:`row`,style:{gap:6},children:xh.map(e=>(0,N.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e===r,className:`btn ${e===r?`primary`:``}`,onClick:()=>ye(t,`lens`,e),children:z.lenses[e]},e))}),(0,N.jsx)(`nav`,{"aria-label":z.breadcrumbs,children:(0,N.jsx)(`ol`,{className:`row`,style:{gap:4,listStyle:`none`,margin:0,padding:0},children:_e.map((e,t)=>(0,N.jsxs)(`li`,{className:`row`,style:{gap:4},children:[t>0&&(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),t===_e.length-1&&!y?(0,N.jsx)(`span`,{className:`chip`,"aria-current":`location`,children:e.label}):(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-current":t===_e.length-1?`location`:void 0,onClick:()=>{e.id!==f&&S(new Set),p(e.id),b(void 0)},children:e.label})]},e.id))})})]})}),u.state===`loading`&&(0,N.jsx)(P,{span:`1 / -1`,children:(0,N.jsxs)(`div`,{className:`stack`,"aria-busy":`true`,"aria-live":`polite`,children:[(0,N.jsx)(`span`,{className:`sr`,children:z.loading}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`80%`}}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`60%`}})]})}),u.state===`error`&&(0,N.jsx)(P,{span:`1 / -1`,children:u.notYet?(0,N.jsx)(`div`,{className:`state`,children:z.emptyEstate}):(0,N.jsx)(`div`,{className:`state error`,role:`alert`,children:z.loadFailed(u.error)})}),u.state===`ready`&&ue&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(P,{title:z.canvas,span:`1 / span 8`,meta:z.edges(F.links.length,y?0:ue.hiddenEdges),children:[I&&(0,N.jsxs)(`div`,{className:`state arch-notice`,role:`status`,children:[(0,N.jsxs)(`p`,{children:[I.why===`nodes`?z.legible.nodes(C?.score.nodes??0):z.legible[I.why],` `,z.legible[I.mode]]}),I.mode===`focus`&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>void ce(I.id),children:z.focus}),I.mode===`collapse`&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>S(new Set),children:z.collapseAll}),I.mode===`group`&&I.id&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>void ae(I.id),children:z.openPart(ie(I.id)?.label??I.id)})]}),F.shared&&F.shared.length>0&&(0,N.jsxs)(`p`,{className:`arch-shared`,children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`⚠ `}),z.sharedGaps(F.shared.map(e=>z.gap[e]??e).join(`; `))]}),(0,N.jsx)(Eh,{ready:T.state===`ready`,saving:O.state===`saving`,moved:T.state===`ready`?T.moved:0,...y?{onFocusOff:()=>b(void 0)}:{},onKeep:()=>{Object.keys(me).length?pe(me,``):k({state:`error`,text:z.keptNothing})},onTidy:()=>te(e=>e+1),onReset:()=>void pe({},z.resetDone).then(e=>e&&te(e=>e+1))}),O.state===`done`&&(0,N.jsx)(`p`,{className:`hud`,role:`status`,children:O.text}),O.state===`error`&&(0,N.jsx)(`p`,{className:`state error`,role:`alert`,children:O.text}),F.boxes.length?T.state===`error`?(0,N.jsx)(`div`,{className:`state error`,role:`alert`,children:z.loadFailed(T.error)}):T.state===`loading`||T.key!==fe?(0,N.jsxs)(`div`,{className:`stack`,"aria-busy":`true`,"aria-live":`polite`,children:[(0,N.jsx)(`span`,{className:`sr`,children:z.layingOut}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`70%`}})]}):(0,N.jsx)($m,{graph:F,direction:Rm(r),pinned:me,tidy:ee,...g?{selected:g}:{},onSelect:e=>_(e),onToggle:e=>void oe(e),onMoved:(e,t)=>E(n=>n.state===`ready`?{...n,pinned:{...n.pinned,[e]:{x:t.x,y:t.y}},moved:n.moved+ +!n.pinned[e]}:n),onLaid:w},fe):(0,N.jsx)(`div`,{className:`state`,children:z.empty}),(0,N.jsx)(`p`,{className:`hud`,style:{marginTop:8},children:z.canvasHelp})]}),(0,N.jsx)(P,{title:z.inspector,span:`span 4`,children:ge?(0,N.jsx)(Th,{node:ge,isCurrent:ge.id===f,onOpen:ae,onFocus:ce,lens:r,links:(y?.edges??ue.edges).filter(e=>e.from===ge.id||e.to===ge.id),labelOf:e=>ie(e)?.label??e,...!y&&F.boxes.some(e=>e.id===ge.id)?{here:{open:x.has(ge.id),toggle:()=>void oe(ge.id)}}:{}}):(0,N.jsx)(`p`,{children:z.pick})}),(0,N.jsxs)(P,{title:z.outline,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`hud`,id:`outline-help`,children:z.outlineHelp}),(0,N.jsx)(`ul`,{role:`tree`,"aria-describedby":`outline-help`,style:{listStyle:`none`,padding:0},children:le.map(e=>(0,N.jsx)(`li`,{role:`treeitem`,"aria-level":e.depth+1,"aria-expanded":e.node.childCount>0?e.expanded:void 0,"aria-selected":e.node.id===g,style:{paddingLeft:e.depth*18},children:(0,N.jsxs)(`button`,{type:`button`,className:`btn ${e.node.id===f?`primary`:``}`,ref:t=>{t?ne.current.set(e.node.id,t):ne.current.delete(e.node.id)},onKeyDown:t=>he(e.node.id,t),onClick:()=>_(e.node.id),onDoubleClick:()=>void(e.expanded?j(e.node.id):ae(e.node.id)),children:[(0,N.jsx)(`span`,{className:`hud`,children:e.node.kind}),` `,e.node.label,e.node.childCount>0&&` · ${z.children(e.node.childCount)}`,e.gaps.length>0&&` · ${z.gaps}: ${e.gaps.map(e=>z.gap[e]??e).join(`, `)}`,e.inside.length>0&&` · ${z.insideGaps(e.inside.map(e=>z.gap[e]??e).join(`, `))}`]})},e.node.id))})]})]})]})}function Th({node:e,isCurrent:t,lens:n,onOpen:r,onFocus:i,here:a,links:o=[],labelOf:s=e=>e}){return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`h3`,{className:`h`,children:e.label}),(0,N.jsx)(Ct,{rows:[[z.kind,e.kind],[z.stateLabel,z.state[e.state]],...Object.entries(e.properties).map(([e,t])=>[e,Array.isArray(t)?t.join(`, `):String(t)])]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6},children:[e.childCount>0&&!t&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>r(e.id),children:z.open}),e.childCount>0&&a&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:a.toggle,children:a.open?z.closeHere:z.openHere}),e.kind===`repo`&&(0,N.jsx)(`a`,{className:`btn`,href:`#/flows?repo=${encodeURIComponent(e.label)}`,children:E.flows.openFlows}),e.kind===`system`&&e.id.startsWith(`system:`)&&e.record&&(0,N.jsx)(`a`,{className:`btn`,href:pt(e.id.slice(7)),children:E.systems.openPage}),e.kind!==`estate`&&(n===`data`||e.kind===`table`)&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>i(e.id),children:z.focus})]}),(0,N.jsx)(`h4`,{className:`hud`,children:z.gaps}),e.gaps.length?(0,N.jsx)(`ul`,{children:e.gaps.map(e=>(0,N.jsx)(`li`,{children:z.gap[e]??e},e))}):(0,N.jsx)(`p`,{children:z.noGaps}),(0,N.jsx)(`h4`,{className:`hud`,children:z.evidence}),e.evidence.length?(0,N.jsx)(`ul`,{children:e.evidence.map(e=>(0,N.jsxs)(`li`,{children:[e.repo&&(0,N.jsxs)(`span`,{className:`mono`,children:[e.repo,`: `]}),(0,N.jsx)(gh,{repo:e.repo,at:e.at})]},`${e.repo??``}:${e.at}`))}):(0,N.jsx)(`p`,{children:z.noEvidence}),(0,N.jsx)(`h4`,{className:`hud`,children:E.evidence.links}),o.length?(0,N.jsx)(`ul`,{children:o.map(e=>(0,N.jsxs)(`li`,{children:[E.evidence.linkOf(s(e.from),s(e.to),e.type),e.gaps.length>0&&` · ${z.gaps}: ${e.gaps.map(e=>z.gap[e]??e).join(`, `)}`,e.evidence.length>0&&(0,N.jsx)(`ul`,{children:e.evidence.map(e=>(0,N.jsxs)(`li`,{children:[e.repo&&(0,N.jsxs)(`span`,{className:`mono`,children:[e.repo,`: `]}),(0,N.jsx)(gh,{repo:e.repo,at:e.at})]},`${e.repo??``}:${e.at}`))})]},e.id))}):(0,N.jsx)(`p`,{children:E.evidence.noLinks}),e.next&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`h4`,{className:`hud`,children:z.next}),(0,N.jsx)(`p`,{children:e.next.why}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`code`,{className:`mono`,children:e.next.command}),(0,N.jsx)(St,{text:e.next.command,label:`${z.copy}: ${e.next.command}`})]}),(0,N.jsx)(Ht,{command:e.next.command})]})]})}function Eh(e){return(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`,marginBottom:8},children:[e.onFocusOff&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:e.onFocusOff,children:z.focusOff}),(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:!e.ready||e.saving,onClick:e.onKeep,children:e.saving?z.keeping:z.keep}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:!e.ready,onClick:e.onTidy,children:z.tidy}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:!e.ready||e.saving,onClick:e.onReset,children:z.reset}),e.moved>0&&(0,N.jsx)(`span`,{className:`hud`,children:z.moved(e.moved)})]})}var Dh=E.me,Oh=(0,v.createContext)({saveNotify:async()=>void 0});function kh({children:e}){let t=j(`/api/me`),[n,r]=(0,v.useState)(),i=n??(t.state===`ready`?t.data:void 0),a=async e=>{r(await A(`/api/me/notify`,{method:`PUT`,body:e}))};return(0,N.jsx)(Oh.Provider,{value:{...i?{me:i}:{},saveNotify:a},children:e})}var Ah=()=>(0,v.useContext)(Oh),jh=()=>Ah().me?.ai!==`off`,Mh=Dh.aiIsOffHere,Nh=e=>e.toLowerCase().split(/\s+/).filter(Boolean);function Ph(e,t){let n=Nh(t);if(!n.length)return!0;let r=e.filter(e=>!!e).map(e=>e.toLowerCase());return n.every(e=>r.some(t=>t.includes(e)))}var Fh=E.filter;function Ih(e){return[e.text?.trim()?Fh.words(e.text.trim()):``,e.kind?Fh.among(e.kind):``,e.repo?Fh.inRepo(e.repo):``,e.change?Fh.inChange(e.change):``].filter(Boolean).join(` `)}function Lh(e){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4,...e.grow?{flex:`1 1 200px`}:{}},children:[(0,N.jsx)(`label`,{htmlFor:e.id,className:`hud`,style:{fontSize:10},children:Fh.label}),(0,N.jsx)(`input`,{id:e.id,className:`field`,value:e.value,placeholder:Fh.placeholder,autoComplete:`off`,onChange:t=>e.onChange(t.target.value)})]})}function Rh(e){return(0,N.jsx)(`p`,{className:`hud`,"aria-live":`polite`,style:{margin:0,fontSize:10,minHeight:`1em`},children:e.active?Fh.shown(e.shown,e.total):``})}function zh(e){return(0,N.jsxs)(`div`,{className:`state stack`,style:{gap:8,alignItems:`flex-start`},children:[(0,N.jsx)(`span`,{children:Fh.nothingMatches(e.what)}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>{e.onClear(),e.focus&&document.getElementById(e.focus)?.focus()},children:Fh.clear})]})}var B=E.runs;function Bh(e){let t=e.label??(e.change?B.forChange(e.change):B.all);return(0,N.jsx)(`a`,{className:`runs-link`,href:Vh({...e.change?{change:e.change}:{},...e.q?{q:e.q}:{}}),children:t})}function Vh(e){let t=new URLSearchParams;e.change&&t.set(`change`,e.change),e.q&&t.set(`q`,e.q),e.run&&t.set(`run`,e.run);let n=t.toString();return`#/runs${n?`?${n}`:``}`}var Hh=e=>B.states[e]??e,Uh=e=>e.replace(`T`,` `).slice(0,16),Wh=e=>e?B.classes[e]??e:void 0,Gh=e=>B.modelCell(Wh(e.stepClass),e.model);function Kh(e,t){return e.filter(e=>Ph([e.change,e.agent,e.runId,e.state,Hh(e.state),e.runtime,e.model??``,Wh(e.stepClass)??``],t))}function qh(e){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[e.change&&(0,N.jsxs)(`p`,{className:`work-say`,style:{margin:0},children:[B.onlyFor(e.change),` `,(0,N.jsx)(`a`,{href:`#/runs`,children:B.showAll})]}),(0,N.jsx)(F,{of:e.of,empty:e=>e.runs.length===0,emptyContent:(0,N.jsx)(`div`,{className:`state`,children:e.change?B.emptyFor(e.change):B.empty}),children:t=>{let n=Kh(t.runs,e.text);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`div`,{role:`search`,children:(0,N.jsx)(Lh,{id:`runs-find`,value:e.text,onChange:t=>e.onText?.(t)})}),(0,N.jsx)(Rh,{shown:n.length,total:t.runs.length,active:!!e.text.trim()}),n.length===0?(0,N.jsx)(zh,{what:Ih({text:e.text}),onClear:()=>e.onClear?.(),focus:`runs-find`}):(0,N.jsx)(Oe,{caption:B.caption,rows:n,rowKey:e=>e.runId,cols:[{label:B.cols.step,cell:t=>(0,N.jsxs)(`a`,{href:Vh({run:t.runId}),"aria-current":t.runId===e.current?`page`:void 0,children:[t.change,(0,N.jsx)(`span`,{className:`mono runs-id`,children:t.runId})]})},{label:B.cols.agent,cell:e=>e.agent,mono:!0},{label:B.cols.model,cell:e=>Gh(e)},{label:B.cols.round,cell:e=>e.attempt},{label:B.cols.state,cell:e=>(0,N.jsx)(`span`,{className:`chip ${Jh[e.state]??`dim`}`,children:Hh(e.state)})},{label:B.cols.answered,cell:e=>e.answered?B.yes:B.notYet},{label:B.cols.handedBack,cell:e=>B.problems(e.handedBack)},{label:B.cols.when,cell:e=>(0,N.jsx)(`time`,{dateTime:e.startedAt,children:Uh(e.startedAt)}),mono:!0}]})]})}})]})}var Jh={validated:`done`,produced:`warn`,waiting:`warn`,failed:`blocking`};function Yh({text:e,label:t}){return(0,N.jsx)(`pre`,{className:`runs-text`,tabIndex:0,role:`region`,"aria-label":B.textBox(t),children:e})}function Xh(e){return(0,N.jsx)(F,{of:e.of,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:14},children:[(0,N.jsx)(Ct,{rows:[[B.facts.agent,(0,N.jsx)(`span`,{className:`mono`,children:e.run.agent})],[B.facts.runtime,e.run.runtime],...e.run.stepClass?[[B.facts.stepClass,Wh(e.run.stepClass)]]:[],[B.facts.model,e.run.model?(0,N.jsx)(`span`,{className:`mono`,children:e.run.model}):B.modelNotRecorded],[B.facts.state,Hh(e.run.state)],[B.facts.started,(0,N.jsx)(`time`,{dateTime:e.run.startedAt,children:Uh(e.run.startedAt)})],...e.run.finishedAt?[[B.facts.finished,(0,N.jsx)(`time`,{dateTime:e.run.finishedAt,children:Uh(e.run.finishedAt)})]]:[],...e.run.promptTokens===void 0?[]:[[B.facts.size,B.tokens(e.run.promptTokens)]],...e.run.promptPath?[[B.facts.file,(0,N.jsx)(`code`,{className:`mono`,children:e.run.promptPath})]]:[]]}),e.rounds.length>1&&(0,N.jsxs)(`nav`,{"aria-label":B.rounds,children:[(0,N.jsx)(`h3`,{className:`hud runs-h`,children:B.rounds}),(0,N.jsx)(`ol`,{className:`runs-rounds`,children:e.rounds.map(t=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{href:Vh({run:t.runId}),"aria-current":t.runId===e.run.runId?`page`:void 0,children:B.round(t.attempt)}),` `,(0,N.jsx)(`span`,{className:`muted`,children:Hh(t.state)}),t.runId===e.run.runId&&(0,N.jsxs)(`span`,{className:`muted`,children:[` `,B.thisRound]})]},t.runId))})]}),(0,N.jsxs)(`div`,{className:`runs-pair`,children:[(0,N.jsxs)(`section`,{"aria-labelledby":`run-prompt`,children:[(0,N.jsx)(`h3`,{id:`run-prompt`,className:`hud runs-h`,children:B.prompt}),(0,N.jsx)(Yh,{text:e.prompt,label:B.prompt})]}),(0,N.jsxs)(`section`,{"aria-labelledby":`run-answer`,children:[(0,N.jsx)(`h3`,{id:`run-answer`,className:`hud runs-h`,children:B.answer}),e.answer===void 0?(0,N.jsx)(`div`,{className:`state`,children:B.noAnswer}):(0,N.jsx)(Yh,{text:e.answer,label:B.answer})]})]}),e.tools&&(0,N.jsxs)(`section`,{"aria-labelledby":`run-tools`,children:[(0,N.jsx)(`h3`,{id:`run-tools`,className:`hud runs-h`,children:B.tools.title}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:B.tools.offered(e.tools.offered.join(`, `),e.tools.calls.length)}),e.tools.stopped&&(0,N.jsx)(`p`,{className:`muted`,role:`note`,children:B.tools.stopped(e.tools.stopped)}),e.tools.calls.map((e,t)=>(0,N.jsxs)(`section`,{"aria-labelledby":`run-tool-${t}`,children:[(0,N.jsx)(`h4`,{id:`run-tool-${t}`,className:`runs-h4`,children:B.tools.call(e.round,e.name,e.tokens,e.error===!0)}),(0,N.jsx)(`pre`,{className:`runs-line`,children:JSON.stringify(e.input)}),(0,N.jsx)(Yh,{text:e.output,label:B.tools.returned(e.name)})]},`${t}:${e.name}`))]}),e.retrieval&&(e.retrieval.expansion||e.retrieval.rerank||e.retrieval.meaning)&&(0,N.jsxs)(`section`,{"aria-labelledby":`run-retrieval`,children:[(0,N.jsx)(`h3`,{id:`run-retrieval`,className:`hud runs-h`,children:B.retrieval.title}),e.retrieval.expansion&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0},children:[B.retrieval.expansion(e.retrieval.expansion.run,e.retrieval.expansion.cached),` `,B.retrieval.terms(e.retrieval.expansion.terms.join(`; `))]}),(0,N.jsxs)(`ul`,{children:[e.retrieval.expansion.names.map(e=>(0,N.jsx)(`li`,{children:B.retrieval.name(e.name,e.id,e.new===!0,e.quote)},`n:${e.name}`)),e.retrieval.expansion.dropped.map(e=>(0,N.jsx)(`li`,{children:B.retrieval.dropped(e.name,e.why)},`d:${e.name}`))]})]}),e.retrieval.rerank&&(0,N.jsx)(`p`,{className:`muted`,children:e.retrieval.rerank.used?B.retrieval.rerank(e.retrieval.rerank.shown,e.retrieval.rerank.order.join(`, `),e.retrieval.rerank.dropped.join(`, `)):B.retrieval.rerankIgnored(e.retrieval.rerank.shown)}),e.retrieval.meaning&&(0,N.jsx)(`p`,{className:`muted`,children:B.retrieval.meaning(e.retrieval.meaning)})]}),(0,N.jsxs)(`section`,{"aria-labelledby":`run-back`,children:[(0,N.jsx)(`h3`,{id:`run-back`,className:`hud runs-h`,children:B.handedBack}),e.handedBack.length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:B.noneHandedBack}):e.handedBack.map(e=>(0,N.jsxs)(`div`,{className:`runs-pair`,children:[(0,N.jsxs)(`section`,{"aria-labelledby":`run-back-${e.attempt}`,children:[(0,N.jsx)(`h4`,{id:`run-back-${e.attempt}`,className:`runs-h4`,children:B.roundProblems(e.attempt)}),(0,N.jsx)(`ul`,{className:`runs-problems`,children:e.problems.map((e,t)=>(0,N.jsx)(`li`,{children:(0,N.jsx)(`pre`,{className:`runs-line`,children:e})},`${t}:${e}`))})]}),(0,N.jsxs)(`section`,{"aria-labelledby":`run-failed-${e.attempt}`,children:[(0,N.jsx)(`h4`,{id:`run-failed-${e.attempt}`,className:`runs-h4`,children:B.failedAnswer(e.attempt)}),e.previousAnswer===void 0?(0,N.jsx)(`p`,{className:`muted`,children:B.noFailedAnswer}):(0,N.jsx)(Yh,{text:e.previousAnswer,label:B.failedAnswer(e.attempt)})]})]},e.attempt))]})]})})}function Zh({hash:e}){let t=ve(e,`change`),n=ve(e,`run`),[r,i]=(0,v.useState)(ve(e,`q`)??``),a=ve(e,`q`);(0,v.useEffect)(()=>i(a??``),[a]);let o=j(`/api/runs${t?`?change=${encodeURIComponent(t)}`:``}`),s=j(n?`/api/runs/${encodeURIComponent(n)}/transcript`:void 0);M(e=>{e.type===`file.changed`&&(o.reload(),n&&s.reload())});let c=s.state===`ready`&&s.data.run.runId===n?s:{state:`loading`};return(0,N.jsxs)(`div`,{className:`bento`,children:[n&&(0,N.jsxs)(P,{title:c.state===`ready`?B.runTitle(c.data.run.change,c.data.run.attempt):B.title,span:`1 / -1`,labelledBy:`run-detail`,children:[(0,N.jsx)(`p`,{style:{margin:`0 0 10px`},children:(0,N.jsx)(`a`,{href:Vh(t?{change:t}:{}),children:B.back})}),s.state===`error`?(0,N.jsx)(Xh,{of:{...s,error:s.error||B.missing(n)}}):(0,N.jsx)(Xh,{of:c})]}),(0,N.jsxs)(P,{title:n?B.listTitle:B.title,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:B.intro}),(0,N.jsx)(qh,{of:o,text:r,onText:i,onClear:()=>i(``),...t?{change:t}:{},...n?{current:n}:{}}),!n&&o.state===`ready`&&o.data.runs.length>0&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:B.pick})]})]})}var Qh=E.knowledge,$h=e=>Qh.kinds[e]??e,eg=e=>Qh.fields[e]??e,tg=e=>e.slice(0,10);function ng(e){return e?e.state===`verified`?Qh.review.verified(e.by,tg(e.at)):e.state===`corrected`?Qh.review.corrected(e.by,tg(e.at)):e.state===`rejected`?Qh.review.rejected(e.by,tg(e.at)):Qh.review.stale(e.by):Qh.review.none}var rg={verified:`done`,corrected:`done`,rejected:`blocking`,stale:`warn`};function ig({review:e}){return(0,N.jsx)(`span`,{className:`chip ${e?rg[e.state]:`dim`}`,children:ng(e)})}function ag({command:e,slash:t,why:n,runs:r}){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[n&&(0,N.jsx)(`p`,{className:`work-why`,children:n}),(0,N.jsx)(`p`,{className:`work-say`,children:Qh.ai.intro}),(0,N.jsx)(th,{text:e,label:Qh.ai.copy}),t&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-say`,children:Qh.ai.slash}),(0,N.jsx)(th,{text:t,label:Qh.ai.copySlash})]}),r&&(0,N.jsx)(`p`,{className:`work-say`,children:(0,N.jsx)(Bh,{...r})})]})}function og({text:e}){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsx)(`div`,{className:`state`,children:e}),(0,N.jsx)(`p`,{style:{margin:0},children:(0,N.jsx)(`a`,{href:`#/wikis`,children:Qh.emptyGo})}),(0,N.jsx)(ag,{command:`atticus knowledge scan`,slash:`/atticus-knowledge`,runs:{q:`knowledge`,label:E.runs.knowledge}})]})}function sg({conflicts:e}){let t=E.knowledgeConflicts;if(!e.length)return null;let n=e=>`${e.source}/${e.page}`;return(0,N.jsx)(`ul`,{className:`stack`,style:{listStyle:`none`,padding:0,margin:0,gap:8},children:e.map(e=>{let r=e.decided,i=r?r.by===`person`?t.byPerson(r.who):t.byCode(r.kind,r.record,r.value,r.at):void 0,a=r?void 0:e.suggested;return(0,N.jsxs)(`li`,{role:`note`,children:[(0,N.jsxs)(`p`,{style:{margin:0},children:[(0,N.jsx)(`span`,{className:`mono`,children:e.about.join(`, `)}),e.summary?(0,N.jsxs)(`span`,{className:`muted`,children:[` · `,e.summary]}):null]}),(0,N.jsx)(`ul`,{style:{margin:`4px 0`,paddingLeft:18},children:e.pages.map(e=>(0,N.jsx)(`li`,{children:t.says(n(e),e.says)},n(e)))}),(0,N.jsx)(`p`,{className:`work-say`,style:{margin:0},children:i?e.applies.length>1?t.both(i,r?.by===`person`?r.words:void 0):t.applies(e.applies.map(n).join(`, `),i):e.question?.state===`open`?t.open(e.question.id):t.notAsked}),a?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:t.suggested(n(a),a.signal,a.detail)}):null]},e.key)})})}function cg({urls:e}){return e.length?(0,N.jsx)(`ul`,{style:{margin:`4px 0`,paddingLeft:18},children:e.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(fe,{href:e.url,children:e.label??e.url}),e.label&&(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11,marginLeft:6},children:e.url})]},e.url))}):null}function lg(e){let t=e.quote;if(t)return Qh.items.page(`${t.source}/${t.page}${t.section?` (${t.section})`:``}`,t.line)}function ug(e){let t=e.indexOf(`#`);return t<0?e:`${e.slice(0,t)} (${e.slice(t+1)})`}var dg=e=>e.quote?.text,fg=e=>Array.isArray(e.urls)?e.urls:[];function pg(e){return Array.isArray(e)?e.map(e=>typeof e==`object`&&e?e.label??e.url:String(e)).join(`, `):e==null?``:String(e)}function mg(e,t){let n=t.toLowerCase().split(/\s+/).filter(Boolean);if(!n.length)return!0;let r=e.record,i=[e.id,e.title,e.kind,pg(r.handledBy),pg(r.owner),pg(r.ownedBy),pg(r.aliases),pg(r.appliesWhen),dg(r)??``].join(` `).toLowerCase();return n.every(e=>i.includes(e))}function hg(e,t){return t.map(t=>({title:t.title,items:e.filter(e=>t.kinds.includes(e.kind))})).filter(e=>e.items.length>0)}function gg(e){let t={};for(let[n,r]of Object.entries(e.fields)){let i=e.record[n];t[n]=r===`text`?typeof i==`string`?i:``:r===`list`?Array.isArray(i)?i.map(String):[]:fg(e.record).map(e=>({url:e.url,...e.label?{label:e.label}:{}}))}return t}var _g=(e,t)=>JSON.stringify(e)===JSON.stringify(t);function vg(e,t){let n=gg(e),r={};for(let[i,a]of Object.entries(e.fields)){let e=t[i]??n[i];if(a===`text`)e=e.trim();else if(a===`list`)e=e.map(e=>e.trim()).filter(Boolean);else{let t=[];for(let n of e){let e=n.url.trim(),r=n.label?.trim();if(e||r){if(!/^https?:\/\/\S+$/.test(e))return{error:Qh.items.badUrl(e||r||``)};t.push(r?{url:e,label:r}:{url:e})}}e=t}_g(e,n[i])||(r[i]=e)}return!Object.keys(r).length&&!e.review?.corrected?.length?{error:Qh.items.noChange}:{set:r}}function yg(e){let t=e.split(`,`).map(e=>e.trim()).filter(Boolean),n=t.find(e=>!/^[a-z0-9][a-z0-9._-]*$/.test(e));return n?{error:Qh.sources.notSlug(n)}:t}var bg=E.knowledge.needs,xg=E.knowledge.review;function Sg(e){let t=e.review;return t?.state===`verified`||t?.state===`corrected`?{text:xg.verified(t.by,t.at.slice(0,10)),ok:!0}:t?.state===`stale`?{text:xg.stale(t.by),ok:!1}:t?.state===`rejected`?{text:xg.rejected(t.by,t.at.slice(0,10)),ok:!1,rejected:!0}:{text:xg.none,ok:!1}}function Cg(e){return e===`open`?bg.openAgain:e===`not-needed`?bg.markSkip.toLowerCase():e}function wg(e,t,n){return e===`not-needed`&&!t.trim()?{error:bg.needWhy}:{body:{status:e,for:n,...e!==`open`&&t.trim()?{note:t.trim()}:{}}}}function Tg({n:e}){let t=[];return e.leadTime&&t.push([bg.leadTime,e.leadTime]),e.handledBy&&t.push([bg.handledBy,e.handledBy]),e.catalogueItem&&t.push([bg.catalogueItem,e.catalogueItem]),e.inputs.length&&t.push([bg.inputs,e.inputs.join(`, `)]),t.length?(0,N.jsx)(`dl`,{className:`run-facts`,style:{margin:`4px 0`},children:t.map(([e,t])=>(0,N.jsxs)(`div`,{style:{display:`contents`},children:[(0,N.jsx)(`dt`,{children:e}),(0,N.jsx)(`dd`,{children:t})]},e))}):null}function Eg(e){let t=e.n,[n,r]=(0,v.useState)(),[i,a]=(0,v.useState)(``),[o,s]=(0,v.useState)(),c=Sg(t),l=`need-${e.scope?`${e.scope}-`:``}${t.item}-${t.for}`.replace(/[^a-z0-9-]/gi,`-`),u=(0,v.useRef)(null),d=(0,v.useRef)(null),f=(0,v.useRef)(null),p=(0,v.useRef)(null),m=(0,v.useRef)(!1),h=(0,v.useRef)(`title`);(0,v.useEffect)(()=>{n?d.current?.focus():m.current&&({title:u,done:f,"not-needed":p}[h.current].current??u.current)?.focus(),m.current=!!n},[n]);let g=()=>{h.current=n??`title`,s(void 0),r(void 0)},_=o=>{let c=wg(o,i,t.for);`error`in c?(s(c.error),d.current?.focus()):(s(void 0),h.current=`title`,r(void 0),a(``),n||u.current?.focus(),e.onMark?.(t,c.body))};return(0,N.jsxs)(`li`,{className:`list-row`,style:{display:`block`},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsxs)(`span`,{children:[(0,N.jsx)(`a`,{ref:u,id:`${l}-t`,href:`#/knowledge?item=${encodeURIComponent(t.item)}`,style:t.status===`not-needed`?{textDecoration:`line-through`}:void 0,children:(0,N.jsx)(`strong`,{children:t.title})}),` `,(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[`(`,bg.for(t.for),`) · `,$h(t.kind)]})]}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`chip ${c.ok?`done`:c.rejected?`blocking`:`warn`}`,children:c.text}),(0,N.jsx)(`span`,{className:`chip ${t.status===`open`?`ai`:`dim`}`,children:t.status===`open`?bg.open:t.status===`done`?bg.done(t.by??``,t.note):bg.notNeeded(t.by??``,t.note??``)})]})]}),(0,N.jsx)(Tg,{n:t}),(0,N.jsxs)(`p`,{style:{margin:`4px 0`},children:[(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[bg.why,`:`]}),` `,t.why,t.because&&(0,N.jsxs)(N.Fragment,{children:[` `,(0,N.jsx)(`q`,{children:t.because.quote}),` `,(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11},children:`${t.because.file}${t.because.line?`:${t.because.line}`:``}`})]})]}),t.when&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:`2px 0`,fontSize:12},children:bg.when(t.when)}),t.rules.length>0&&(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:bg.rules}),(0,N.jsx)(`ul`,{style:{margin:`2px 0`,paddingLeft:18},children:t.rules.map(e=>(0,N.jsx)(`li`,{children:e},e))})]}),t.steps.length>0&&(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:bg.steps}),(0,N.jsx)(`ol`,{style:{margin:`2px 0`,paddingLeft:20},children:t.steps.map((e,t)=>(0,N.jsx)(`li`,{children:e},t))})]}),t.urls.length>0&&(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:bg.links}),(0,N.jsx)(cg,{urls:t.urls})]}),(0,N.jsxs)(`p`,{className:`muted mono`,style:{margin:`2px 0`,fontSize:11},children:[t.from===`stories`?bg.fromStories:``,t.page?`${t.from===`stories`?` · `:``}${bg.from(ug(t.page))}`:``]}),e.onMark&&!n&&(0,N.jsx)(`div`,{className:`row`,style:{gap:8,marginTop:4},children:t.status===`open`?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:e.busy,ref:f,"aria-label":bg.markDoneOf(t.title),onClick:()=>r(`done`),children:bg.markDone}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy,ref:p,"aria-label":bg.markSkipOf(t.title),onClick:()=>r(`not-needed`),children:bg.markSkip})]}):(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy,"aria-label":bg.reopenOf(t.title),onClick:()=>_(`open`),children:bg.reopen})}),n&&(0,N.jsxs)(`form`,{className:`stack`,style:{gap:6,marginTop:6},onKeyDown:ue(g),onSubmit:e=>{e.preventDefault(),_(n)},children:[(0,N.jsx)(`label`,{htmlFor:`${l}-note`,className:`hud`,style:{fontSize:10},children:n===`done`?bg.doneNote:bg.skipNote}),(0,N.jsx)(`input`,{ref:d,id:`${l}-note`,className:`field`,"aria-describedby":o?`${l}-err`:void 0,"aria-invalid":o?!0:void 0,value:i,onChange:e=>a(e.target.value)}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:e.busy,children:bg.save}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:g,children:bg.cancel})]}),o&&(0,N.jsx)(`p`,{id:`${l}-err`,role:`alert`,style:{margin:0,color:`var(--magenta-text)`,fontSize:12.5},children:o})]})]})}function Dg(e){return(0,N.jsx)(F,{of:e.of,children:t=>t.present?(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsxs)(`p`,{className:`hud`,style:{fontSize:10,margin:0},children:[t.file,` · `,bg.openCount(t.needs.filter(e=>e.status===`open`).length)]}),t.needs.length===0&&(0,N.jsx)(`div`,{className:`state`,children:bg.empty}),hg(t.needs,bg.groups).map(t=>(0,N.jsxs)(`section`,{"aria-label":t.title,children:[(0,N.jsx)(`h3`,{className:`hud`,style:{fontSize:11,margin:`6px 0`},children:t.title}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:t.items.map(t=>(0,N.jsx)(Eg,{n:t,onMark:e.onMark,busy:e.busy},`${t.item}|${t.for}`))})]},t.title)),t.considered.length>0&&(0,N.jsxs)(`details`,{children:[(0,N.jsx)(`summary`,{children:bg.considered}),(0,N.jsx)(`ul`,{style:{margin:`4px 0`,paddingLeft:18},children:t.considered.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.item}),`: `,e.why]},e.item))})]})]}):(0,N.jsx)(ag,{command:t.command,slash:t.slash,why:bg.none(t.change),runs:{change:t.change}})})}function Og({change:e,span:t}){let n=j(`/api/changes/${encodeURIComponent(e)}/needs`),[r,i]=(0,v.useState)(!1),[a,o]=(0,v.useState)();return M(e=>{e.type===`file.changed`&&n.reload()}),(0,N.jsxs)(`section`,{className:`panel`,"aria-labelledby":`needs-${e}`,style:{gridColumn:t??`1 / -1`},children:[(0,N.jsx)(`h2`,{id:`needs-${e}`,className:`h`,style:{marginBottom:6},children:bg.title}),(0,N.jsxs)(`p`,{className:`work-say`,style:{marginTop:0},children:[bg.intro,` `,(0,N.jsx)(Bh,{change:e})]}),(0,N.jsx)(Dg,{of:n,onMark:(t,r)=>{i(!0),o({ok:!0,text:E.app.working,working:!0}),A(`/api/changes/${encodeURIComponent(e)}/needs/${encodeURIComponent(t.item)}`,{method:`POST`,body:r}).then(e=>o({ok:!0,text:bg.marked(e.need.title,Cg(e.need.status))})).catch(e=>o({ok:!1,text:Te(e)})).finally(()=>{i(!1),n.reload()})},busy:r}),(0,N.jsx)(De,{note:a})]})}var kg=E.across,Ag=E.knowledge.needs,jg=e=>e.filter(e=>e.state!==`archived`),Mg=(e,t)=>`${e}|${t.item}|${t.for}`;function Ng(e,t){let n=(e,n)=>Ph([e.change,e.title,JSON.stringify(n)],t.text),r=[],i=0;for(let a of e){if(!a.needs?.present)continue;i+=a.needs.needs.filter(e=>e.status===`open`).length;let e=a.needs.needs.filter(e=>(t.all||e.status===`open`||t.kept?.has(Mg(a.change,e)))&&n(a,e));e.length&&r.push({change:a.change,title:a.title,needs:e})}return{groups:r,open:i,notYet:e.filter(e=>e.needs&&!e.needs.present).map(e=>({change:e.change,title:e.title,command:e.needs.command,slash:e.needs.slash})),errors:e.filter(e=>e.error!==void 0).map(e=>({change:e.change,title:e.title,error:e.error}))}}var Pg=e=>`needs-across-${e.replace(/[^a-z0-9-]/gi,`-`)}`;function Fg(e){return(0,N.jsx)(F,{of:e.of,empty:e=>e.length===0,emptyText:kg.needsNoChanges,children:t=>{let n=Ng(t,e);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(`p`,{className:`muted`,"aria-live":`polite`,style:{margin:0,fontSize:12},children:kg.needsCount(n.open,t.length)}),n.errors.map(e=>(0,N.jsx)(`p`,{role:`alert`,style:{margin:0,color:`var(--magenta-text)`,fontSize:12.5},children:kg.needsCantRead(e.change,e.error)},e.change)),n.groups.length===0&&(e.text.trim()?(0,N.jsx)(zh,{what:Ih({text:e.text}),onClear:()=>e.onClear?.(),focus:`across-filter`}):(0,N.jsx)(`div`,{className:`state`,children:kg.needsNone})),n.groups.map(t=>(0,N.jsxs)(`section`,{"aria-labelledby":Pg(t.change),children:[(0,N.jsxs)(`h3`,{id:Pg(t.change),className:`h`,style:{fontSize:14,margin:`6px 0`},children:[(0,N.jsx)(`a`,{href:`#/changes/${encodeURIComponent(t.change)}`,children:t.title}),` `,(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11},children:t.change})]}),(0,N.jsx)(`p`,{className:`work-say`,style:{margin:`0 0 4px`},children:(0,N.jsx)(Bh,{change:t.change})}),hg(t.needs,Ag.groups).map(n=>(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`h4`,{className:`hud`,style:{fontSize:11,margin:`6px 0`},children:n.title}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:n.items.map(n=>(0,N.jsx)(Eg,{n,scope:t.change,busy:e.busy,onMark:e.onMark?(n,r)=>e.onMark(t.change,n,r):void 0},Mg(t.change,n)))})]},n.title))]},t.change)),n.notYet.length>0&&(0,N.jsxs)(`details`,{children:[(0,N.jsx)(`summary`,{children:kg.needsNotYet(n.notYet.length)}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:`6px 0 0`,padding:0},className:`stack`,children:n.notYet.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{href:`#/changes/${encodeURIComponent(e.change)}`,children:e.title}),(0,N.jsx)(ag,{command:e.command,slash:e.slash,why:Ag.none(e.change),runs:{change:e.change}})]},e.change))})]})]})}})}function Ig(e){let[t,n]=(0,v.useState)({state:`loading`}),[r,i]=(0,v.useState)(0),a=e.state===`error`?e.reload:void 0,o=(0,v.useCallback)(()=>{a?.(),i(e=>e+1)},[a]),s=e.state===`ready`?JSON.stringify(jg(e.data).map(e=>[e.id,e.title])):void 0,c=e.state===`error`?e.error:void 0,l=e.state===`error`&&e.notYet;return(0,v.useEffect)(()=>{if(c!==void 0){n({state:`error`,error:c,...l?{notYet:!0}:{}});return}if(s===void 0)return;let e=new AbortController,t=JSON.parse(s);return Promise.all(t.map(([t,n])=>A(`/api/changes/${encodeURIComponent(t)}/needs`,{signal:e.signal}).then(e=>({change:t,title:n,needs:e}),e=>({change:t,title:n,error:Te(e)})))).then(t=>{e.signal.aborted||n({state:`ready`,data:t})}),()=>e.abort()},[s,c,l,r]),{...t,reload:o}}function Lg({text:e,onClear:t}){let n=j(`/api/changes`),r=Ig(n),[i,a]=(0,v.useState)(!1),[o,s]=(0,v.useState)(new Set),[c,l]=(0,v.useState)(!1),[u,d]=(0,v.useState)();return M(e=>{e.type===`file.changed`&&(n.reload(),r.reload())}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(`p`,{className:`work-say`,style:{margin:0},children:kg.needsIntro}),(0,N.jsxs)(`label`,{className:`row`,style:{gap:6,fontSize:12.5},children:[(0,N.jsx)(`input`,{type:`checkbox`,checked:i,onChange:e=>a(e.target.checked)}),kg.needsShowAll]}),(0,N.jsx)(De,{note:u}),(0,N.jsx)(Fg,{of:r,all:i,text:e,kept:o,onMark:(e,t,n)=>{l(!0),s(n=>new Set([...n,Mg(e,t)])),d({ok:!0,text:E.app.working,working:!0}),A(`/api/changes/${encodeURIComponent(e)}/needs/${encodeURIComponent(t.item)}`,{method:`POST`,body:n}).then(e=>d({ok:!0,text:Ag.marked(e.need.title,Cg(e.need.status))})).catch(e=>d({ok:!1,text:Te(e)})).finally(()=>{l(!1),r.reload()})},busy:c,...t?{onClear:t}:{}})]})}var V=E.across,Rg=[{id:`findings`,label:V.findings},{id:`tasks`,label:V.tasks},{id:`stories`,label:V.stories},{id:`tests`,label:V.tests},{id:`requests`,label:V.requests},{id:`releases`,label:V.releases},{id:`needs`,label:V.needs}],zg=e=>e==null?``:String(e),Bg=e=>(0,N.jsx)(`a`,{href:`#/changes/${e.change}`,className:`mono`,children:e.change}),Vg=(e,t=``)=>(0,N.jsx)(`span`,{className:`chip ${t}`,children:e.toUpperCase()}),Hg={findings:[{label:V.change,cell:Bg,width:`18%`},{label:V.severity,cell:e=>Vg(zg(e.severity),e.severity===`blocking`?`blocking`:``)},{label:V.finding,cell:e=>zg(e.summary)},{label:V.where,cell:e=>`${zg(e.gate)} · ${zg(e.artifact)}`,mono:!0},{label:V.state,cell:e=>zg(e.state)}],tasks:[{label:V.change,cell:Bg,width:`18%`},{label:V.task,cell:e=>zg(e.id),mono:!0},{label:V.repo,cell:e=>zg(e.repo),mono:!0},{label:V.what,cell:e=>zg(e.description)},{label:V.done,cell:e=>e.done?Vg(`done`,`done`):Vg(`open`)}],stories:[{label:V.change,cell:Bg,width:`18%`},{label:V.story,cell:e=>zg(e.id),mono:!0},{label:V.title,cell:e=>zg(e.title)},{label:V.repos,cell:e=>e.repos.join(`, `),mono:!0},{label:V.written,cell:e=>e.written?`${zg(e.criteria)} criteria`:(0,N.jsx)(`span`,{className:`muted`,children:V.notYet})}],tests:[{label:V.change,cell:Bg,width:`18%`},{label:V.requirementsTested,cell:e=>`${zg(e.tested)} of ${zg(e.rows)}`},{label:V.gaps,cell:e=>e.gaps?Vg(`${zg(e.gaps)} gaps`,`warn`):Vg(`none`,`done`)},{label:V.firstGaps,cell:e=>e.topGaps.join(`; `)}],requests:[{label:V.change,cell:Bg,width:`18%`},{label:V.request,cell:e=>zg(e.heading)},{label:V.for,cell:e=>zg(e.record),mono:!0},{label:V.state,cell:e=>Vg(zg(e.state),e.state===`filed`?`done`:e.state===`to-file`?`warn`:``)},{label:V.missing,cell:e=>e.missing.length?e.missing.join(`, `):`nothing`}],releases:[{label:V.change,cell:Bg,width:`18%`},{label:V.state,cell:e=>Vg(e.changeState,e.atRelease?`done`:``)},{label:V.risk,cell:e=>zg(e.risk)},{label:V.next,cell:e=>zg(e.nextStep)},{label:V.handOff,cell:e=>{let t=e.handoff;return t?(0,N.jsx)(fe,{href:t.pr,children:`${t.phase} · ${t.state}`}):(0,N.jsx)(`span`,{className:`muted`,children:V.noneOpen})}}]},Ug={findings:V.noFindingsOnAny,tasks:V.noTasksYetTasks,stories:V.noStoriesYetWrite,tests:V.noOpenChangesTo,requests:V.noServiceRequestsDrafted,releases:V.noOpenChanges};function Wg(e,t){return e.filter(e=>Ph([JSON.stringify(e)],t))}function Gg({view:e}){let t=j(e===`needs`?void 0:`/api/across?view=${e}`);se(t);let[n,r]=(0,v.useState)(``),i=Rg.find(t=>t.id===e).label;return(0,N.jsxs)(P,{title:V.acrossChanges2(i),span:`span 9`,rows:`span 3`,children:[(0,N.jsx)(`nav`,{"aria-label":V.acrossChanges,className:`row`,style:{gap:6,flexWrap:`wrap`,marginBottom:10},children:Rg.map(t=>(0,N.jsx)(`a`,{href:`#/changes?across=${t.id}`,"aria-current":t.id===e?`page`:void 0,className:`btn ${t.id===e?`primary`:``}`,children:t.label},t.id))}),(0,N.jsx)(`div`,{style:{marginBottom:10},children:(0,N.jsx)(Lh,{id:`across-filter`,value:n,onChange:r})}),e===`needs`?(0,N.jsx)(Lg,{text:n,onClear:()=>r(``)}):(0,N.jsx)(Kg,{data:t,view:e,text:n,label:i,onClear:()=>r(``)})]})}function Kg(e){let{data:t,view:n,text:r,label:i}=e;return(0,N.jsx)(N.Fragment,{children:(0,N.jsx)(F,{of:t,empty:e=>e.rows.length===0,emptyText:Ug[n],children:t=>{let a=Wg(t.rows,r);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(`p`,{className:`muted`,role:`status`,style:{margin:0,fontSize:12},children:V.ofAcrossOpenChange(a.length,t.rows.length,t.changes,t.changes===1?``:`s`)}),a.length?(0,N.jsx)(Oe,{rows:a,cols:Hg[n],rowKey:e=>`${e.change}|${zg(e.id??e.heading??``)}|${a.indexOf(e)}`,caption:V.acrossOpenChanges(i)}):(0,N.jsx)(zh,{what:Ih({text:r}),onClear:e.onClear,focus:`across-filter`})]})}})})}var qg=E.changes,Jg=15;function Yg(e){let t=``;for(let n=0;n<e.length;n+=32768)t+=String.fromCharCode(...e.subarray(n,n+32768));return btoa(t)}function Xg({change:e}){let t=j(`/api/changes/${e}/inputs`),n=Ee(),r=Ee(),i=(0,v.useRef)(null),a=(0,v.useId)();return M(e=>{e.type===`file.changed`&&t.reload()}),(0,N.jsx)(P,{title:qg.inputs,span:`span 4`,meta:t.state===`ready`?t.data.files.length:void 0,children:(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:a,className:`hud`,children:qg.attachLabel}),(0,N.jsx)(`input`,{id:a,ref:i,type:`file`,disabled:n.busy,"aria-describedby":`${a}-help`,onChange:r=>{let a=r.target.files?.[0];a&&n.run(async()=>{if(a.size>Jg*1024*1024)throw Error(qg.attachTooLarge(Math.ceil(a.size/1048576)));let n=Yg(new Uint8Array(await a.arrayBuffer())),r=await A(`/api/changes/${e}/inputs`,{method:`POST`,body:{name:a.name,content:n}});return t.reload(),i.current&&(i.current.value=``),r},qg.attached(a.name))}}),(0,N.jsx)(`span`,{id:`${a}-help`,className:`muted`,style:{fontSize:12},children:qg.attachHelp}),(0,N.jsx)(De,{note:n.note}),(0,N.jsx)(De,{note:r.note})]}),(0,N.jsx)(F,{of:t,empty:e=>e.files.length===0,emptyText:qg.noInputs,children:t=>(0,N.jsxs)(`table`,{style:{width:`100%`,borderCollapse:`collapse`,fontSize:12.5},children:[(0,N.jsx)(`caption`,{className:`sr`,children:qg.inputs}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{className:`hud`,style:{textAlign:`left`,fontSize:10},children:[(0,N.jsx)(`th`,{style:{padding:`4px 0`,fontWeight:400},children:qg.inputFile}),(0,N.jsx)(`th`,{style:{fontWeight:400},children:qg.inputKind}),(0,N.jsx)(`th`,{style:{fontWeight:400},children:qg.inputWho})]})}),(0,N.jsx)(`tbody`,{children:t.files.map(t=>(0,N.jsxs)(`tr`,{style:{borderTop:`1px solid var(--rule)`},children:[(0,N.jsx)(`td`,{className:`mono`,style:{padding:`7px 0`,wordBreak:`break-all`},children:t.path}),(0,N.jsx)(`td`,{children:(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{children:`${t.kind} · ${t.format}`}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:qg.inputRead(t.read,t.citeBy)}),t.supersededBy&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:qg.inputOlder(t.supersededBy)}),t.defences?.risk===`high`&&(0,N.jsx)(`span`,{className:`chip blocking`,children:qg.inputHidden})]})}),(0,N.jsx)(`td`,{children:(0,N.jsxs)(`span`,{className:`stack`,style:{gap:4,alignItems:`flex-start`},children:[(0,N.jsx)(`span`,{children:qg.inputWhen(t.addedBy,t.addedAt)}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:r.busy,"aria-label":qg.promoteFor(t.path),onClick:()=>void r.run(()=>A(`/api/changes/${e}/inputs/${encodeURIComponent(t.path.replace(/^inputs\//,``))}/promote`,{method:`POST`}),qg.promoted(t.path)),children:qg.promote})]})})]},t.path))})]})})]})})}var Zg=E.changes,Qg=[`exists`,`changes`,`new`,`vendor`];function $g({c:e}){return(0,N.jsxs)(`li`,{className:`stack`,style:{gap:3,borderTop:`1px solid var(--rule)`,paddingTop:6},children:[(0,N.jsxs)(`span`,{children:[(0,N.jsx)(`span`,{className:`chip`,children:Zg.prototypeLeg[e.leg]}),` `,(0,N.jsx)(`span`,{className:`mono`,children:[e.method,e.path].filter(Boolean).join(` `)})]}),(0,N.jsx)(`span`,{children:e.sentence}),(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11.5,wordBreak:`break-all`},children:Zg.prototypeCites(e.call.at,e.lands.at)}),e.estate&&(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11.5,wordBreak:`break-all`},children:Zg.prototypeEstate(e.estate.entry.repo,e.estate.entry.at)}),e.vendor?.at&&(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11.5,wordBreak:`break-all`},children:Zg.prototypeVendor(e.vendor.name,e.vendor.at)}),e.differences.length>0&&(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:e.differences.map((e,t)=>(0,N.jsx)(`li`,{children:e.message},t))})]})}function e_({p:e}){let t=`proto-${e.repo}`;return(0,N.jsxs)(`article`,{className:`stack`,style:{gap:8},"aria-labelledby":t,children:[(0,N.jsxs)(`h3`,{id:t,className:`h`,style:{fontSize:13},children:[(0,N.jsx)(`span`,{className:`chip`,children:Zg.prototypeMarker}),` `,(0,N.jsx)(`span`,{className:`mono`,children:e.repo})]}),(0,N.jsx)(`span`,{className:`muted`,children:e.about?`${e.about.text}${e.about.trust===`suggested`?` (${Zg.prototypeUnconfirmed})`:``}`:Zg.prototypeNoAbout}),e.problem&&(0,N.jsx)(`div`,{className:`state`,role:`status`,children:e.problem}),e.comparison&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`hud`,children:Zg.prototypeCounts(e.comparison.counts)}),Qg.map(t=>{let n=e.comparison.calls.filter(e=>e.group===t);return(0,N.jsxs)(`section`,{className:`stack`,style:{gap:4},"aria-label":Zg.prototypeGroup[t],children:[(0,N.jsx)(`h4`,{className:`hud`,style:{margin:0},children:Zg.prototypeGroupCount(Zg.prototypeGroup[t],n.length)}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:Zg.prototypeGroupHelp[t]}),n.length?(0,N.jsx)(`ul`,{className:`stack`,style:{gap:6,listStyle:`none`,margin:0,padding:0},children:n.map(e=>(0,N.jsx)($g,{c:e},e.id))}):(0,N.jsx)(`span`,{className:`muted`,children:Zg.prototypeNoCalls})]},t)}),e.comparison.left.length>0&&(0,N.jsx)(`span`,{className:`muted`,children:Zg.prototypeLeft(e.comparison.left.length)})]})]})}function t_({change:e}){let t=j(`/api/changes/${e}/prototypes`);return M(e=>{e.type===`file.changed`&&t.reload()}),(0,N.jsx)(P,{title:Zg.prototypes,span:`span 4`,meta:t.state===`ready`?t.data.prototypes.length:void 0,children:(0,N.jsx)(F,{of:t,empty:e=>e.prototypes.length===0,emptyContent:(0,N.jsx)(`div`,{className:`state`,children:Zg.noPrototypes(e)}),children:e=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:14},children:e.prototypes.map(e=>(0,N.jsx)(e_,{p:e},e.repo))})})})}var H=E.changes;function n_(e,t,n){let r=t.toLowerCase().split(/\s+/).filter(Boolean);return e.filter(e=>{if(n===`blocked`&&!e.openFindings.blocking||n&&n!==`blocked`&&e.state!==n)return!1;let t=[e.id,e.title,e.type,...e.repos??[]].join(` `).toLowerCase();return r.every(e=>t.includes(e))})}var r_=[`define`,`design`,`plan`,`build`,`qa`,`release-ready`],i_={define:H.define,design:H.design,plan:H.plan,build:H.build,qa:`QA`,"release-ready":H.release};function a_({list:e,current:t,across:n}){let[r,i]=(0,v.useState)(``),[a,o]=(0,v.useState)(``);return(0,N.jsx)(P,{title:H.changes,span:`span 3`,rows:`span 3`,children:(0,N.jsx)(F,{of:e,empty:e=>e.length===0,emptyText:H.noChangesYetStart,children:e=>{let s=[...new Set(e.map(e=>e.state))],c=n_(e,r,a);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`change-filter`,className:`hud`,style:{fontSize:10},children:H.findAChange}),(0,N.jsx)(`input`,{id:`change-filter`,className:`field`,value:r,placeholder:H.idTitleOrRepo,onChange:e=>i(e.target.value)}),(0,N.jsx)(`label`,{htmlFor:`change-state`,className:`sr`,children:H.state}),(0,N.jsxs)(`select`,{id:`change-state`,className:`field`,value:a,onChange:e=>o(e.target.value),children:[(0,N.jsx)(`option`,{value:``,children:H.everyState}),(0,N.jsx)(`option`,{value:`blocked`,children:H.blocked}),s.map(e=>(0,N.jsx)(`option`,{value:e,children:i_[e]??e},e))]})]}),(0,N.jsxs)(`nav`,{"aria-label":H.changes,className:`stack`,style:{gap:2},children:[c.map(e=>(0,N.jsxs)(`a`,{href:`#/changes/${e.id}`,"aria-current":!n&&e.id===t?`page`:void 0,className:`list-row`,style:{textDecoration:`none`,padding:`8px 6px`,borderRadius:6,background:!n&&e.id===t?`var(--picked)`:void 0},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12},children:e.id}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e.title})]}),(0,N.jsx)(`span`,{className:`chip ${e.openFindings.blocking?`blocking`:``}`,children:e.openFindings.blocking?H.blocked2:(i_[e.state]??e.state).toUpperCase()})]},e.id)),c.length===0&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:H.noChangeMatches})]}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4,borderTop:`1px solid var(--line)`,paddingTop:8},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:H.acrossAllChanges}),(0,N.jsx)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:Rg.map(e=>(0,N.jsx)(`a`,{href:`#/changes?across=${e.id}`,"aria-current":n===e.id?`page`:void 0,className:`chip`,style:{textDecoration:`none`},children:e.label},e.id))})]})]})}})})}function o_({state:e}){let t=r_.indexOf(e);return(0,N.jsx)(`ol`,{className:`row between`,style:{listStyle:`none`,margin:0,padding:0},"aria-label":H.phases,children:r_.map((e,n)=>(0,N.jsxs)(`li`,{className:`stack`,style:{alignItems:`center`,gap:6},"aria-current":n===t?`step`:void 0,children:[n===t?(0,N.jsx)(me,{value:n+1,max:r_.length,size:46,label:H.currentPhase(i_[e]??``)}):(0,N.jsx)(`span`,{role:`img`,"aria-label":`${i_[e]}: ${n<t?H.done:H.toCome}`,style:{width:42,height:42,borderRadius:`50%`,border:`1.5px solid ${n<t?`var(--btn-text)`:`var(--step-off)`}`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:n<t?`✓`:``}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10,color:n===t?`var(--accent)`:void 0},children:i_[e]})]},e))})}function s_({change:e,artifact:t,onClose:n}){let r=j(`/api/changes/${e}/artifacts/${t}`),[i,a]=(0,v.useState)(),o=Ee(),s=(0,v.useRef)(null),c=r.state===`ready`;return(0,v.useEffect)(()=>{c&&s.current?.focus()},[c]),(0,N.jsx)(P,{title:H.edit(t),span:`1 / -1`,meta:r.state===`ready`?r.data.path:void 0,children:(0,N.jsx)(F,{of:r,children:c=>(0,N.jsxs)(`form`,{onSubmit:n=>{n.preventDefault(),o.run(()=>A(`/api/changes/${e}/artifacts/${t}`,{method:`PUT`,body:{content:i??c.content,baseSha256:c.sha256}}).then(()=>r.reload()),`Saved ${c.path}.`)},onKeyDown:ue(n),className:`stack`,children:[(0,N.jsx)(`label`,{htmlFor:`artifact-text`,className:`sr`,children:H.text(t)}),(0,N.jsx)(`textarea`,{ref:s,id:`artifact-text`,value:i??c.content,onChange:e=>a(e.target.value),rows:18,spellCheck:!0,style:{width:`100%`,background:`var(--box)`,color:`var(--text)`,border:`1px solid var(--line-2)`,borderRadius:8,padding:12,font:`13px/1.6 var(--mono)`}}),(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:o.busy,children:H.save}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:n,children:H.close}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:H.ifSomeoneSavedMeanwhile})]}),(0,N.jsx)(De,{note:o.note})]})})})}var c_=E.findings.needsReason,l_=E.findings.cantWaive;function u_({change:e,f:t,done:n}){let[r,i]=(0,v.useState)(``),a=Ee(),o=i=>a.run(()=>A(`/api/findings/${e}/${t.id}/action`,{method:`POST`,body:{action:i,gate:t.gate,...r?{reason:r}:{}}}).then(n),`Recorded: ${i.replace(/-/g,` `)}.`);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsx)(`label`,{className:`sr`,htmlFor:`reason-${t.id}`,children:H.reason}),(0,N.jsx)(`input`,{id:`reason-${t.id}`,value:r,onChange:e=>i(e.target.value),placeholder:H.reasonNeededToWaive,style:{height:30,background:`var(--box)`,color:`var(--text)`,border:`1px solid var(--line-2)`,borderRadius:6,padding:`0 8px`}}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:a.busy,onClick:()=>void o(`apply`),children:H.applyFix}),t.question&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:a.busy,onClick:()=>void o(`ask`),children:H.ask(t.question.owner??H.owner)}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:a.busy||!r,title:r?void 0:c_,"aria-describedby":r?void 0:`why-${t.id}`,onClick:()=>void o(`not-relevant`),children:H.notRelevant}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:a.busy||!r||!t.waivable,title:t.waivable?r?void 0:c_:l_,"aria-describedby":!t.waivable||!r?`why-${t.id}`:void 0,onClick:()=>void o(`waive`),children:H.waive})]}),(!r||!t.waivable)&&(0,N.jsx)(`p`,{id:`why-${t.id}`,className:`muted`,style:{margin:0,fontSize:11.5},children:[r?``:c_,t.waivable?``:`${l_}.`].filter(Boolean).join(` `)}),(0,N.jsx)(De,{note:a.note})]})}function d_({id:e}){let t=jh(),n=j(`/api/changes/${e}`),r=j(`/api/changes/${e}/status`),i=j(`/api/changes/${e}/tasks`),a=j(`/api/changes/${e}/runs`),o=j(`/api/findings?change=${e}&state=open`),[s,c]=(0,v.useState)(),l=(0,v.useRef)(new Map),u=()=>{let e=s;c(void 0),e&&l.current.get(e)?.focus()},d=Ee(),f=Ee(),p=Ee(),m=()=>{n.reload(),r.reload(),o.reload(),a.reload(),i.reload()};return M(e=>{(e.type===`file.changed`||e.type===`run.changed`)&&m()}),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(P,{title:n.state===`ready`?`${n.data.id} · ${n.data.title}`:e,span:`span 9`,kind:`hero`,children:(0,N.jsx)(F,{of:n,children:n=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:14},children:[(0,N.jsx)(o_,{state:n.state}),(0,N.jsx)(F,{of:r,children:r=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`p`,{style:{margin:0,fontSize:14},children:[(0,N.jsx)(`span`,{className:`hud`,style:{marginRight:8},children:H.next}),r.nextStep]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`span`,{className:`chip ${r.risk.level===`high`?`blocking`:r.risk.level===`medium`?`warn`:``}`,children:H.risk(r.risk.level.toUpperCase())}),n.handoff&&(0,N.jsx)(`span`,{className:`chip`,children:H.handOff(n.handoff.phase.toUpperCase(),n.handoff.state.toUpperCase(),n.handoff.pr?` · ${n.handoff.pr}`:``)})]}),r.blockers.length>0&&(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,color:`var(--text-2)`,lineHeight:1.6},"aria-label":H.whatBlocksTheHand,children:r.blockers.map(e=>(0,N.jsx)(`li`,{children:e.message},e.message))}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:d.busy,onClick:()=>void d.run(()=>A(`/api/changes/${e}/handoff`,{method:`POST`,body:{}}).then(m),H.handOffPrOpened),children:H.raiseHandOff}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:d.busy,onClick:()=>void d.run(()=>A(`/api/changes/${e}/sync`,{method:`POST`,body:{}}).then(m),H.syncedWithTheGit),children:H.syncAndMergeWhen}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:f.busy,onClick:()=>void f.run(()=>A(`/api/changes/${e}/critic`,{method:`POST`,body:{}}).then(m),t?H.criticRoundStartedThe:H.theRuleChecksRan),children:t?H.runTheCriticYour:H.runTheRuleChecks})]}),(0,N.jsx)(De,{note:d.note}),(0,N.jsx)(De,{note:f.note})]})})]})})}),s&&(0,N.jsx)(s_,{change:e,artifact:s,onClose:u}),(0,N.jsx)(P,{title:H.artifacts,span:`span 5`,children:(0,N.jsx)(F,{of:n,empty:e=>e.artifacts.length===0,children:e=>(0,N.jsxs)(`table`,{style:{width:`100%`,borderCollapse:`collapse`,fontSize:12.5},children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{className:`hud`,style:{textAlign:`left`,fontSize:10},children:[(0,N.jsx)(`th`,{style:{padding:`4px 0`,fontWeight:400},children:H.artifact}),(0,N.jsx)(`th`,{style:{fontWeight:400},children:H.status}),(0,N.jsx)(`th`,{style:{fontWeight:400},children:H.findings}),(0,N.jsx)(`th`,{style:{fontWeight:400},children:(0,N.jsx)(`span`,{className:`sr`,children:H.actions})})]})}),(0,N.jsx)(`tbody`,{children:e.artifacts.map(e=>(0,N.jsxs)(`tr`,{style:{borderTop:`1px solid var(--rule)`},children:[(0,N.jsx)(`td`,{className:`mono`,style:{padding:`7px 0`},children:e.artifact}),(0,N.jsx)(`td`,{children:(0,N.jsx)(`span`,{className:`chip ${e.status===`done`?`done`:e.status===`blocked`?`dim`:`warn`}`,children:e.status.toUpperCase()})}),(0,N.jsx)(`td`,{children:e.openFindings||``}),(0,N.jsx)(`td`,{style:{textAlign:`right`},children:e.status!==`blocked`&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,ref:t=>{t?l.current.set(e.artifact,t):l.current.delete(e.artifact)},onClick:()=>c(e.artifact),"aria-label":H.edit(e.artifact),children:H.edit2})})]},e.artifact))})]})})}),(0,N.jsx)(Xg,{change:e}),(0,N.jsx)(t_,{change:e}),(0,N.jsx)(P,{title:H.openFindings,span:`span 4`,meta:o.state===`ready`?o.data.length:void 0,children:(0,N.jsx)(F,{of:o,empty:e=>e.length===0,emptyText:H.noOpenFindingsOn,children:t=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:12},children:t.map(t=>(0,N.jsxs)(`article`,{className:`stack`,style:{gap:6,borderTop:`1px solid var(--rule)`,paddingTop:10},children:[(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`chip ${t.severity===`blocking`?`blocking`:t.severity===`gap`?`warn`:`dim`}`,children:t.severity.toUpperCase()}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[t.gate,` · `,t.lens??H.checks,` · `,t.artifact]})]}),(0,N.jsx)(`div`,{style:{fontSize:13},children:t.question?.text??t.summary}),(0,N.jsx)(`div`,{className:`muted`,style:{fontSize:12},children:t.why}),(0,N.jsx)(u_,{change:e,f:t,done:m})]},`${t.gate}/${t.id}`))})})}),(0,N.jsxs)(P,{title:H.tasks,span:`span 5`,children:[(0,N.jsx)(F,{of:i,empty:e=>e.length===0,emptyText:H.noTasksYetThey,children:n=>n.map(n=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsxs)(`span`,{style:{fontSize:12.5},children:[(0,N.jsx)(`span`,{className:`mono`,children:n.id}),` `,n.description]}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[n.repo,n.story?` · ${n.story}`:``]})]}),n.done?(0,N.jsx)(`span`,{className:`chip done`,children:H.done2}):t?(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:p.busy,onClick:()=>void p.run(()=>A(`/api/changes/${e}/runs`,{method:`POST`,body:{agent:`task-runner`,runtime:`hand-off`,task:n.id,autonomy:`draft`}}).then(m),`Task ${n.id} handed to your assistant. Open the prompt, then mark it done.`),children:H.runWithAi}):(0,N.jsx)(`span`,{className:`chip dim`,title:Mh,children:H.byHand})]},n.id))}),(0,N.jsx)(De,{note:p.note})]}),(0,N.jsx)(P,{title:H.aiRuns,span:`span 4`,children:(0,N.jsx)(F,{of:a,empty:e=>e.length===0,emptyText:H.noAiRunsYet,children:e=>e.slice().reverse().map(e=>(0,N.jsxs)(`div`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.agent}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.runtime,` · `,e.promptPath??e.runId]}),e.errors.length>0&&(0,N.jsx)(`span`,{style:{color:`var(--magenta-text)`,fontSize:12},children:e.errors.join(`; `)})]}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`chip ${e.state===`validated`?`done`:e.state===`failed`?`blocking`:`ai`}`,children:e.state.toUpperCase()}),(e.state===`waiting`||e.state===`prepared`)&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>void p.run(()=>A(`/api/runs/${e.runId}/done`,{method:`POST`,body:{}}).then(m),H.checkedTheAnswer),children:H.markDone}),e.state===`failed`&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>void p.run(()=>A(`/api/runs/${e.runId}/retry`,{method:`POST`,body:{}}).then(m),H.readyToTryAgain),children:H.retry})]})]},e.runId))})}),(0,N.jsx)(Og,{change:e,span:`span 9`})]})}function f_({hash:e}){let t=e.replace(/^#\/?changes\/?/,``).split(`?`)[0]||void 0,n=new URLSearchParams(e.split(`?`)[1]??``).get(`across`),r=Rg.find(e=>e.id===n)?.id,i=j(`/api/changes`),a=i.state===`ready`?i.data[0]?.id:void 0,o=t??a;return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(a_,{list:i,current:o,across:r}),r&&!t?(0,N.jsx)(Gg,{view:r},r):o?(0,N.jsx)(d_,{id:o},o):(0,N.jsx)(P,{title:H.noChangeSelected,span:`span 9`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0},children:[H.pickAChangeOn,(0,N.jsx)(`code`,{className:`mono`,children:H.atticusChangeNew}),`.`]})})]})}var p_=E.trust,m_=E.runNext;function h_(e){let t=e.verify.report;switch(e.state){case`not-read`:return p_.why.notRead;case`unverified`:return p_.why.unverified;case`rejected`:return p_.why.rejected(t?.rejected??0);case`stale`:return p_.why.stale(t?.commit??e.facts.commit??``,e.checkout.commit??``);case`unwritten`:return p_.why.unwritten;case`unknown-files`:return p_.why.unknownFiles(t?.coverage.unknown??0,e.repo);default:return p_.why.trusted}}function g_(e){let t=e.verify.report?.commit??e.facts.commit;return t?e.checkout.commit?e.sameCommit?p_.sameCommit(t):p_.otherCommit(t,e.checkout.commit):p_.noCheckout(t):p_.noFactsCommit}var __=e=>e===`trusted`?`done`:e===`rejected`||e===`stale`?`blocking`:`warn`;function v_({r:e}){let t=e.verify.report,n=`trust-${e.repo}`;return(0,N.jsxs)(`article`,{className:`list-row`,style:{display:`block`},"aria-labelledby":n,children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsx)(`h3`,{id:n,className:`h`,style:{fontSize:14,margin:0},children:e.repo}),(0,N.jsx)(`span`,{className:`chip ${__(e.state)}`,children:p_.states[e.state]})]}),(0,N.jsx)(`p`,{className:`work-why`,style:{margin:`6px 0`},children:h_(e)}),(0,N.jsxs)(`dl`,{className:`run-facts`,style:{margin:`8px 0`},children:[(0,N.jsx)(`dt`,{children:p_.kept}),(0,N.jsxs)(`dd`,{children:[t?t.accepted:p_.noReport,t&&t.redacted>0?` (${p_.redacted(t.redacted)})`:``]}),(0,N.jsx)(`dt`,{children:p_.rejected}),(0,N.jsx)(`dd`,{children:t?t.rejected:p_.noReport}),(0,N.jsx)(`dt`,{children:p_.coverage}),(0,N.jsx)(`dd`,{children:t?p_.coverageOf(t.coverage.ratio,t.coverage.read,t.coverage.unknown,t.coverage.excluded):p_.noReport}),(0,N.jsx)(`dt`,{children:p_.builtOn}),(0,N.jsx)(`dd`,{children:e.frameworks?.length?e.frameworks.map(e=>e.component?p_.builtOnModule(p_.builtOnOne(e.name,e.version,e.cite),e.component):p_.builtOnOne(e.name,e.version,e.cite)).join(`, `):p_.builtOnNone}),(0,N.jsx)(`dt`,{children:p_.commit}),(0,N.jsx)(`dd`,{className:`mono`,children:g_(e)}),(0,N.jsx)(`dt`,{children:p_.catalogFrom}),(0,N.jsxs)(`dd`,{children:[p_.from[e.catalog.from],` · `,p_.records(e.catalog.fromFacts,e.catalog.fromReaders)]})]}),(e.frameworks??[]).filter(e=>e.gap).map(e=>(0,N.jsxs)(`p`,{className:`work-say`,children:[(0,N.jsx)(`strong`,{children:p_.builtOnGap(e.name)}),` `,e.gap]},`gap-${e.name}-${e.cite}`)),t&&t.unknownFiles.length>0&&(0,N.jsxs)(`details`,{children:[(0,N.jsx)(`summary`,{children:p_.unknownFiles(t.coverage.unknown)}),(0,N.jsx)(`ul`,{className:`mono`,style:{margin:`4px 0 0`,paddingLeft:18,fontSize:12},children:t.unknownFiles.map(e=>(0,N.jsx)(`li`,{children:e},e))}),t.coverage.unknown>t.unknownFiles.length&&(0,N.jsx)(`p`,{className:`work-say`,children:p_.more(t.coverage.unknown-t.unknownFiles.length,e.verify.path)})]}),e.next&&(0,N.jsxs)(`div`,{style:{marginTop:8},children:[e.next.slash&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-say`,children:m_.slash}),(0,N.jsx)(th,{text:e.next.slash,label:m_.copySlash})]}),(0,N.jsx)(`p`,{className:`work-say`,children:m_.terminal}),(0,N.jsx)(th,{text:e.next.command,label:m_.copy})]}),(0,N.jsx)(`p`,{className:`work-say mono`,style:{margin:`6px 0 0`},children:p_.files(e.facts.path,e.verify.path)})]})}function y_({of:e}){return(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsxs)(P,{title:E.nav.screens.trust,span:`1 / -1`,meta:e.state===`ready`&&e.data.repos.length?p_.summary(e.data.repos.filter(e=>e.state===`trusted`).length,e.data.repos.length):void 0,children:[(0,N.jsx)(`p`,{className:`work-why`,style:{marginTop:0},children:p_.intro}),(0,N.jsx)(F,{of:e,empty:e=>e.repos.length===0&&!e.problems.length,emptyText:p_.empty,children:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(sh,{list:e.problems}),(0,N.jsx)(`p`,{className:`work-say`,children:p_.reportIn(e.factsDir)}),(0,N.jsx)(`div`,{className:`stack`,style:{gap:12},children:e.repos.map(e=>(0,N.jsx)(v_,{r:e},e.repo))})]})})]})})}function b_(){let e=j(`/api/trust`);return se(e),(0,N.jsx)(y_,{of:e})}var x_={define:`brief`,design:`arch-review`,plan:`breakdown`,build:`tasks`,qa:`trace`,"release-ready":`release`,"post-release-review":`release`,returned:`brief`},S_=[[`brief`,`brief`],[`proposal`,`brief`],[`ux`,`ux`],[`design`,`arch-review`],[`interfaces`,`arch-review`],[`data`,`arch-review`],[`mappings`,`mappings`],[`stories`,`breakdown`],[`specs`,`breakdown`],[`tasks`,`breakdown`],[`snow`,`breakdown`],[`tests`,`trace`],[`security`,`release`]],C_=(e,t)=>`#/${e}${t?`?change=${encodeURIComponent(t)}`:``}`;function w_(e){let t=[];for(let n of e.changes){let e=x_[n.state];e&&t.push({kind:`phase`,title:`${n.title} is in ${n.state}`,detail:`${n.id} · ${n.type}`,href:C_(e,n.id),id:n.id,change:n.id,...n.updatedAt?{since:n.updatedAt}:{}})}for(let n of e.findings)n.state===`open`&&(n.severity===`blocking`||n.severity===`gap`)&&t.push({kind:`finding`,title:n.summary,detail:`${n.severity} · ${n.artifact}${n.change?` · ${n.change}`:``}`,href:C_(S_.find(([e])=>n.artifact.startsWith(e))?.[1]??`changes`,n.change),id:n.id,...n.change?{change:n.change}:{},...n.severity===`blocking`?{blocking:!0}:{}});for(let n of e.needs??[])n.status===`open`&&t.push({kind:`need`,title:n.title,detail:[n.kind,n.handledBy,n.leadTime,n.change].filter(Boolean).join(` · `),href:`#/changes?across=needs`,id:n.item,change:n.change});for(let n of e.triage)t.push({kind:`triage`,title:n.summary,detail:n.kind,href:`#/intake`,id:n.id});for(let n of e.questions)t.push({kind:`question`,title:n.question,detail:`${n.system??``}${n.owner?` · ask ${n.owner}`:``}`,href:`#/map`,id:n.id,...n.system?{repo:n.system}:{}});for(let n of e.questionFiles??[])t.push({kind:`question`,title:n.question,detail:`${n.repo} · ${n.id}`,href:`#/questions/${encodeURIComponent(n.id)}`,id:n.id,repo:n.repo});for(let n of e.steps)t.push({kind:`step`,title:n.title,detail:`${n.system}${n.change?` · ${n.change}`:``}`,href:`#/todo`,id:n.id,...n.change?{change:n.change}:{}});return e.knowledgeToVerify&&t.push({kind:`knowledge`,title:E.commandCenter.knowledgeToVerify(e.knowledgeToVerify),detail:E.commandCenter.knowledgeDetail,href:`#/knowledge`}),t}var T_=[`need`,`finding`,`step`],E_=[`question`,`need`,`finding`,`step`,`triage`,`knowledge`];function D_(e,t,n){let r=e.filter(e=>e.kind!==`phase`),i=new Map(t.map((e,t)=>[e.id,{...e,n:t}])),a=r.filter(e=>Ph([e.title,e.id,e.change,e.change&&i.get(e.change)?.title,e.repo],n)),o=(e,t)=>t.flatMap(t=>{let n=e.filter(e=>e.kind===t);return n.length?t===`finding`?[{kind:t,items:[...n.filter(e=>e.blocking),...n.filter(e=>!e.blocking)]}]:t===`question`?[...new Set(n.map(e=>e.repo??``))].sort((e,t)=>e?t?e.localeCompare(t):-1:1).map(e=>({kind:t,...e?{repo:e}:{},items:n.filter(t=>(t.repo??``)===e)})):[{kind:t,items:n}]:[]}),s=[...new Set(a.map(e=>e.change).filter(e=>!!e))],c=e=>i.get(e.change??``)?.n??2**53-1,l=s.map(e=>{let t=a.filter(t=>t.change===e),n=i.get(e);return{change:e,title:n?.title??e,...n?.state?{state:n.state}:{},blocking:t.filter(e=>e.blocking).length,count:t.length,sections:o(t,T_)}}).sort((e,t)=>Number(t.blocking>0)-Number(e.blocking>0)||c(e)-c(t)),u=a.filter(e=>!e.change);return u.length&&l.push({title:E.commandCenter.noChangeGroup,blocking:0,count:u.length,sections:o(u,E_)}),{groups:l,shown:a.length,total:r.length}}var O_=E.nextStep,k_=E.work;function A_(e){switch(e){case`draft`:case`define`:case`returned`:return`feature`;case`design`:return`architecture`;case`plan`:return`stories`;case`build`:case`qa`:return`tasks`;case`released`:case`archived`:return`done`;default:return`release`}}var j_={feature:{id:`feature-design`,label:E.nav.feature},architecture:{id:`architecture`,label:E.nav.architecture},stories:{id:`stories`,label:E.nav.stories},tasks:{id:`task-list`,label:E.nav.tasks},release:{id:`release`,label:O_.releasePlan},done:void 0},M_=e=>A_(e.state)!==`done`,N_=(e,t)=>`#/${e}${t?`?change=${encodeURIComponent(t)}`:``}`,P_=e=>({command:e,where:k_.slashWhere.metarepo}),F_=e=>({command:`atticus critic ${e}`,why:k_.why.critic,slash:P_(`/atticus-critic ${e}`)}),I_=e=>({command:`atticus change handoff ${e} --approve`,why:k_.why.handoff});function L_(e,t){return{command:`atticus task run ${e} ${t.id}`,why:k_.why.task(t.id,t.repo),slash:P_(`/atticus-task ${e} ${t.id}`),after:[{command:`atticus task context ${e} ${t.id}`,why:k_.taskInRepo(t.repo)}]}}function R_(e,t){let n=A_(e.state);return e.fastPath&&(n===`feature`||n===`architecture`||n===`stories`)?{command:`atticus change small ${e.id}`,why:k_.why.small,slash:P_(`/atticus-small ${e.id}`),after:[I_(e.id)]}:z_(n,e,t)}function z_(e,t,n){switch(e){case`feature`:return{command:`atticus change feature ${t.id}`,why:k_.why.feature,slash:P_(`/atticus-feature ${t.id}`),after:[I_(t.id)]};case`architecture`:return{command:`atticus change architecture ${t.id}`,why:k_.why.architecture,slash:P_(`/atticus-architecture ${t.id}`),after:[I_(t.id)]};case`stories`:return{command:`atticus plan stories ${t.id}`,why:k_.why.stories,slash:P_(`/atticus-stories ${t.id}`),after:[F_(t.id),I_(t.id)]};case`tasks`:{let e=n?.find(e=>!e.done);return e?L_(t.id,e):{command:`atticus change status ${t.id}`,why:k_.why.later}}default:return{command:`atticus change status ${t.id}`,why:k_.why.later,...e===`release`?{slash:P_(`/atticus-release ${t.id}`)}:{}}}}var B_=new Set([`drafting`,`waiting`,`questions`,`stopped`]);function V_(e,t,n){let r=n.reasons.filter(e=>e.code!==`no-handoff`&&e.code!==`pr-not-merged`&&e.code!==`changes-requested`),i={command:`atticus change status ${t.id}`};if(r.length)return{...i,why:k_.why.stageBlocked(e,r[0].message)};let a=k_.why.stageDone(e,n.nextStep);return n.reasons.some(e=>e.code===`pr-not-merged`)?{command:`atticus change sync ${t.id}`,why:a}:n.reasons.some(e=>e.code===`no-handoff`||e.code===`changes-requested`)?{...I_(t.id),why:a}:{...i,why:a}}function H_(e,t,n,r){let i=r?.stages.find(t=>t.stage===e);if(r&&i&&!t.fastPath&&A_(t.state)!==`done`){if(i.state===`done`)return V_(e,t,r);if(B_.has(i.state))return{...z_(e,t,n),why:k_.why.stageUnderWay(e,i.state)}}let a=A_(t.state);if(a===e)return R_(t,n);let o=e=>e===`feature`||e===`architecture`||e===`stories`;if(t.fastPath&&o(a)&&o(e))return R_(t,n);let s=j_[a];return{command:`atticus change status ${t.id}`,why:k_.stageIs(k_.stage[a]),...s?{link:{href:N_(s.id,t.id),label:k_.goStage(s.label)}}:{}}}function U_(e,t){return t===void 0?void 0:e.find(e=>e.id===t)}function W_(e){let t=e.repos;return{listed:t.length,cloned:t.filter(e=>e.cloned).length,settings:t.filter(e=>e.scanSettings.present).length,scanned:t.filter(e=>e.lastScan!==null).length,records:e.catalog.records}}var G_=new Set([`not-read`,`unverified`,`rejected`,`stale`,`unwritten`]);function K_(e){return{command:`atticus map ${e}`,why:k_.why.read[`not-read`](e),slash:P_(`/atticus-map ${e}`),after:[{command:`atticus verify ${e} --write`,why:k_.why.write(e)}]}}function q_(e,t,n){let r=e.repos;if(r.length===0)return{command:`atticus repos discover <folder>`,why:k_.why.discover};let i=r.filter(e=>!e.cloned);if(i.length)return{command:`atticus workspace sync`,why:k_.why.sync(i.length)};let a={href:`#/trust`,label:k_.openTrust};if(n){let e=new Set(r.map(e=>e.id)),t=n.repos.find(t=>e.has(t.repo)&&G_.has(t.state)&&t.next);if(t?.next)return{command:t.next.command,why:k_.why.read[t.state](t.repo),...t.next.slash?{slash:P_(t.next.slash)}:{},link:a}}else{let e=r.find(e=>e.lastScan===null);if(e)return{...K_(e.id),link:a}}return t>0?{command:`atticus questions list --state open`,why:k_.why.answer(t),slash:P_(`/atticus-answer`),link:{href:`#/questions`,label:k_.stepAnswerLink}}:{command:`atticus next`,why:k_.why.onboarded,link:a,done:!0}}function J_(e,t,n){return q_(e,t,n).done===!0}function Y_(e,t,n,r){if(!J_(e,t,r)){let n=q_(e,t,r);return n.link?n:{...n,link:{href:`#/onboarding`,label:k_.openOnboarding}}}let i=n.find(M_);if(!i)return{command:`atticus change new "<title>" --type <type>`,why:k_.why.newChange};let a=A_(i.state),o=j_[a];return{...R_(i),why:k_.why.change(i.id,k_.stage[a]),...o?{link:{href:N_(o.id,i.id),label:k_.goStage(o.label)}}:{}}}function X_(e,t){if(t)return H_(`architecture`,t.change,void 0,t.cockpit);let n=e.find(e=>A_(e.state)===`architecture`);return n?R_(n):{command:`atticus map <repo>`,why:k_.why.refresh,slash:P_(`/atticus-map <repo>`),after:[{command:`atticus verify <repo> --write`,why:k_.why.write(`<repo>`)}]}}var Z_=E.dashboardExtra,Q_=E.work,$_=E.runNext;function ev({v:e}){let t=W_(e),n=Math.max(t.listed,1),r=[[t.cloned,Q_.reposCloned],[t.scanned,Q_.reposScanned]];return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(sh,{list:e.problems}),(0,N.jsxs)(`p`,{style:{margin:0},children:[(0,N.jsx)(`span`,{className:`n`,style:{fontSize:22},children:t.listed}),` `,Q_.reposListed,` ·`,` `,(0,N.jsx)(`span`,{className:`n`,style:{fontSize:22},children:t.records}),` `,Q_.records]}),(0,N.jsx)(`div`,{className:`row`,style:{gap:18,flexWrap:`wrap`},children:r.map(([e,r])=>(0,N.jsxs)(`div`,{className:`stack`,style:{alignItems:`center`,gap:4},children:[(0,N.jsx)(me,{value:e,max:n,label:Z_.of(e,t.listed,r),text:`${e}/${t.listed}`}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:r})]},r))}),(0,N.jsx)(`a`,{href:`#/onboarding`,children:Q_.openOnboarding})]})}function tv({changes:e}){let t=e.filter(M_);return t.length===0?(0,N.jsx)(`div`,{className:`state`,children:Q_.noChanges}):(0,N.jsx)(Oe,{caption:Q_.inFlight,rows:t,rowKey:e=>e.id,cols:[{label:Q_.changeCol,cell:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`code`,{className:`mono`,children:e.id}),(0,N.jsx)(`br`,{}),(0,N.jsx)(`span`,{className:`muted`,children:e.title})]})},{label:Q_.stateCol,cell:e=>e.openFindings?.blocking?(0,N.jsxs)(N.Fragment,{children:[e.state,` `,(0,N.jsx)(`span`,{className:`chip blocking`,children:E.commandCenter.blocked})]}):e.state},{label:Q_.stageCol,cell:e=>{let t=A_(e.state),n=j_[t];return n?(0,N.jsx)(`a`,{href:`#/${n.id}?change=${encodeURIComponent(e.id)}`,children:n.label}):Q_.stage[t]}},{label:Q_.commandCol,cell:e=>(0,N.jsx)(th,{text:R_(e).command,label:$_.copy})}]})}function nv(){return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Q_.slashIntro}),(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,lineHeight:1.7},children:$_.commands.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsxs)(`code`,{className:`mono`,children:[e.name,` `,e.args]}),` `,e.what,` `,(0,N.jsxs)(`span`,{className:`muted`,children:[`(`,Q_.slashWhere[e.where],`)`]})]},e.name))}),(0,N.jsx)(`p`,{className:`work-say`,children:$_.install}),(0,N.jsx)(th,{text:`atticus assistant-files`,label:$_.copy}),(0,N.jsx)(`p`,{className:`work-say`,children:$_.plugin}),(0,N.jsx)(th,{text:`/plugin marketplace add maycombhq/atticus`,label:$_.copy}),(0,N.jsx)(th,{text:`/plugin install atticus@maycombhq`,label:$_.copy})]})}function rv(e,t,n){for(let r of[e,t,n])if(r.state===`error`)return r;return e.state!==`ready`||t.state!==`ready`||n.state!==`ready`?{state:`loading`}:{state:`ready`,data:{onboarding:e.data,changes:t.data,questions:n.data}}}function iv(e){let t=e.trust?.state===`ready`?e.trust.data:void 0;return(0,N.jsx)(F,{of:rv(e.onboarding,e.changes,e.questions),children:e=>(0,N.jsx)(rh,{step:Y_(e.onboarding,e.questions.questions.length,e.changes,t)})})}function av({v:e}){let t=E.trust,n=e.repos.filter(e=>e.state!==`trusted`);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsx)(sh,{list:e.problems}),(0,N.jsx)(`p`,{style:{margin:0},children:t.summary(e.repos.length-n.length,e.repos.length)}),n.length===0?(0,N.jsx)(`p`,{className:`work-say`,style:{margin:0},children:Q_.allTrusted}):(0,N.jsx)(`ul`,{"aria-label":Q_.notTrusted,style:{margin:0,paddingLeft:18,lineHeight:1.7},children:n.slice(0,5).map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.repo}),` `,(0,N.jsx)(`span`,{className:`chip ${__(e.state)}`,children:t.states[e.state]})]},e.repo))}),(0,N.jsx)(`a`,{href:`#/trust`,children:Q_.openTrust})]})}function ov(e){return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:Q_.estate,span:`span 5`,children:(0,N.jsxs)(`div`,{className:`stack`,style:{gap:14},children:[(0,N.jsx)(F,{of:e.onboarding,children:e=>(0,N.jsx)(ev,{v:e})}),(0,N.jsx)(F,{of:e.trust,empty:e=>e.repos.length===0&&e.problems.length===0,emptyText:Q_.trustNone,children:e=>(0,N.jsx)(av,{v:e})})]})}),(0,N.jsx)(P,{title:Q_.inFlight,span:`span 7`,meta:e.changes.state===`ready`?String(e.changes.data.filter(M_).length):void 0,children:(0,N.jsx)(F,{of:e.changes,children:e=>(0,N.jsx)(tv,{changes:e})})})]})}var U=E.commandCenter,sv=[`define`,`design`,`plan`,`build`,`qa`,`release-ready`],cv={define:U.define,design:U.design,plan:U.plan,build:U.build,qa:`QA`,"release-ready":U.release},lv=new Set([...sv,`returned`,`post-release-review`]);function uv({runs:e,failed:t}){return t?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:U.howStepsRunCantRead}):e?(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[U.howStepsRun,` `,(0,N.jsx)(`strong`,{children:e}),` · `,(0,N.jsx)(`a`,{href:`#/ai`,children:U.howStepsRunChange})]}):null}function dv(){let e=j(`/api/settings/ai`);return M(t=>{t.type===`file.changed`&&e.reload()}),(0,N.jsx)(uv,{...e.state===`ready`&&e.data.runs?{runs:e.data.runs}:{},failed:e.state===`error`})}function fv(){let e=j(`/api/setup`),[t,n]=(0,v.useState)();if(e.state!==`ready`||e.data.baselined)return null;let r=e.data,i=r.steps.filter(e=>e.done).length,a=r.steps.find(e=>e.id===`scan`)?.done,o=async()=>{try{await A(`/api/baseline`,{method:`POST`,body:{}}),n({ok:!0,text:U.theCatalogIsAccepted}),e.reload()}catch(e){n({ok:!1,text:e instanceof D?e.problem.detail??e.problem.title:String(e)})}};return(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsxs)(P,{title:U.setUpAtticus,kind:`hero`,span:`1 / -1`,meta:U.ofDone(i,r.steps.length),children:[(0,N.jsx)(`ol`,{style:{listStyle:`none`,margin:0,padding:0},className:`stack`,children:r.steps.map(e=>(0,N.jsxs)(`li`,{className:`row`,style:{alignItems:`flex-start`,gap:10},children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,className:`chip ${e.done?`done`:e.optional?`dim`:`warn`}`,style:{minWidth:24,textAlign:`center`},children:e.done?`✓`:`·`}),(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsxs)(`span`,{style:{fontSize:13},children:[e.label,(0,N.jsx)(`span`,{className:`sr`,children:e.done?U.done:U.toDo}),(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[` `,`· `,e.detail,e.optional?U.optional:``]})]}),!e.done&&e.fix&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:e.fix})]})]},e.id))}),a&&(0,N.jsxs)(`div`,{className:`row`,style:{marginTop:12,gap:10,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void o(),children:U.acceptTheCatalogAs}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:U.afterWalkingTheEcosystem})]}),t&&(0,N.jsx)(`p`,{role:t.ok?`status`:`alert`,style:{margin:`8px 0 0`,fontSize:12.5},children:t.text})]})})}function pv(){let[e,t]=(0,v.useState)(!1),[n,r]=(0,v.useState)(),[i,a]=(0,v.useState)(),o=async e=>{t(!0),a(void 0);try{r(await A(`/api/me/digest`,{method:`POST`,body:{send:e}}))}catch(e){a(e instanceof D?e.problem.detail??e.problem.title:String(e))}finally{t(!1)}};return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6,marginTop:10},children:[(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e,onClick:()=>void o(!1),children:U.showMyDigest}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e,onClick:()=>void o(!0),children:U.sendItToMe})]}),i&&(0,N.jsx)(`p`,{role:`alert`,style:{margin:0,color:`var(--magenta-text)`,fontSize:12.5},children:i}),n&&(0,N.jsxs)(`div`,{role:`status`,className:`stack`,style:{gap:2,fontSize:12.5},children:[(0,N.jsx)(`strong`,{children:n.title}),n.lines.map((e,t)=>(0,N.jsx)(`span`,{className:`clamp2`,children:e},t)),n.sent&&(0,N.jsx)(`span`,{style:{color:`var(--green)`},children:U.sentTo(n.sent.channel)}),n.notSent&&(0,N.jsx)(`span`,{className:`muted`,children:n.notSent})]})]})}function mv(e){let t=[{label:U.waitQuestions,n:e.questions,href:`#/questions`},{label:U.waitNeeds,n:e.needs,href:`#/changes?across=needs`},{label:U.waitSteps,n:e.steps,href:`#/todo`},{label:U.waitBlocking,n:e.blocking,href:`#/changes?across=findings`}];return(0,N.jsx)(`ul`,{className:`row`,style:{listStyle:`none`,margin:0,padding:0,gap:8,flexWrap:`wrap`},children:t.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsxs)(`a`,{href:e.href,className:`btn`,children:[e.label,` `,(0,N.jsx)(`span`,{className:`chip ${e.n?`warn`:`dim`}`,children:e.n===void 0?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`–`}),(0,N.jsx)(`span`,{className:`sr`,children:E.app.notLoaded})]}):e.n})]})},e.href))})}var hv={need:()=>U.sectionNeeds,finding:()=>U.sectionFindings,step:()=>U.sectionSteps,question:e=>U.sectionQuestions(e.repo),triage:()=>U.sectionTriage,knowledge:()=>U.sectionKnowledge},gv=e=>`waiting-${(e??`no-change`).replace(/[^a-z0-9-]/gi,`-`)}`,_v=`waiting-filter`,vv=e=>e.kind===`need`&&!!e.change&&!!e.id||e.kind===`step`&&!!e.id,yv=e=>`${e.kind}|${e.change??``}|${e.id??``}`;function bv(e,t,n){let r=n.trim();return r?e.flatMap(e=>t===`step-skip`&&e.kind===`step`&&e.id?[{path:`/api/todo/${encodeURIComponent(e.id)}/done`,body:{skip:!0,note:r,...e.change?{change:e.change}:{}}}]:t!==`step-skip`&&e.kind===`need`&&e.change&&e.id?[{path:`/api/changes/${encodeURIComponent(e.change)}/needs/${encodeURIComponent(e.id)}`,body:{status:t===`need-done`?`done`:`not-needed`,note:r}}]:[]):[]}function xv({x:e,selected:t,onSelect:n}){return(0,N.jsxs)(`li`,{className:`row`,style:{gap:6,alignItems:`flex-start`},children:[n&&vv(e)&&(0,N.jsx)(`input`,{type:`checkbox`,"aria-label":U.select(e.title),checked:!!t,onChange:e=>n(e.target.checked),style:{marginTop:10}}),(0,N.jsxs)(`a`,{href:e.href,className:`list-row`,style:{alignItems:`flex-start`,textDecoration:`none`,color:`inherit`},children:[(0,N.jsxs)(`span`,{style:{minWidth:0},children:[(0,N.jsx)(`span`,{className:`clamp2`,style:{fontSize:12.5},children:e.title}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.detail})]}),(0,N.jsx)(`span`,{className:`chip ${e.blocking?`blocking`:e.kind===`finding`?`warn`:``}`,children:e.kind.toUpperCase()})]})]})}function Sv(e){let t=e.selected.filter(e=>e.kind===`need`).length,n=e.selected.filter(e=>e.kind===`step`).length,[r,i]=(0,v.useState)(t?`need-done`:`step-skip`),[a,o]=(0,v.useState)(``),s=bv(e.selected,r,a||`-`).length;return(0,N.jsxs)(`form`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`flex-end`},"aria-label":U.bulkTitle,onSubmit:t=>{t.preventDefault(),a.trim()&&e.onDo(r,a)},children:[(0,N.jsx)(`span`,{children:U.selected(e.selected.length)}),(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:U.bulkAction}),(0,N.jsxs)(`select`,{id:`bulk-action`,className:`field`,value:r,onChange:e=>i(e.target.value),children:[t>0&&(0,N.jsx)(`option`,{value:`need-done`,children:U.bulkNeedDone(t)}),t>0&&(0,N.jsx)(`option`,{value:`need-not-needed`,children:U.bulkNeedNot(t)}),n>0&&(0,N.jsx)(`option`,{value:`step-skip`,children:U.bulkStepSkip(n)})]})]}),(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:r===`need-done`?U.bulkTicket:U.bulkWhy}),(0,N.jsx)(`input`,{id:`bulk-note`,className:`field`,value:a,onChange:e=>o(e.target.value),required:!0})]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:e.busy||!a.trim(),children:U.bulkDo(s)}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:e.onClear,children:U.bulkClear})]})}function Cv(e){let[t,n]=(0,v.useState)(new Set),[r,i]=(0,v.useState)(!1);if(e.state===`loading`)return(0,N.jsx)(`div`,{className:`state`,role:`status`,children:U.loading});if(e.state===`error`)return(0,N.jsx)(`div`,{className:`state`,role:`alert`,children:U.couldntLoadWhatNeeds});let a=D_(e.items,e.changes,e.text);return a.total===0?(0,N.jsx)(`div`,{className:`state`,children:U.nothingNeedsAPerson}):(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:U.byChangeIntro}),(0,N.jsx)(Lh,{id:_v,value:e.text,onChange:e.onText}),e.onBulk&&t.size>0&&(0,N.jsx)(Sv,{selected:e.items.filter(e=>t.has(yv(e))),busy:r,onClear:()=>n(new Set),onDo:(r,a)=>{i(!0),e.onBulk(e.items.filter(e=>t.has(yv(e))),r,a).finally(()=>{i(!1),n(new Set)})}}),(0,N.jsx)(Rh,{shown:a.shown,total:a.total,active:!!e.text.trim()}),a.groups.length===0&&(0,N.jsx)(zh,{what:Ih({text:e.text}),onClear:()=>e.onText(``),focus:_v}),a.groups.map(r=>(0,N.jsxs)(`section`,{"aria-labelledby":gv(r.change),children:[(0,N.jsxs)(`h3`,{id:gv(r.change),className:`h row`,style:{fontSize:14,margin:`6px 0`,gap:6,flexWrap:`wrap`},children:[r.change?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`a`,{href:`#/changes/${encodeURIComponent(r.change)}`,children:r.title}),(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11},children:r.change})]}):(0,N.jsx)(`span`,{children:r.title}),(0,N.jsx)(`span`,{className:`chip`,children:U.groupCount(r.count)}),r.blocking>0&&(0,N.jsx)(`span`,{className:`chip blocking`,children:U.blocked}),r.state&&(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:U.inState(r.state)})]}),r.sections.map(r=>(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`h4`,{className:`hud`,style:{fontSize:11,margin:`6px 0`},children:hv[r.kind](r)}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:r.items.map((r,i)=>(0,N.jsx)(xv,{x:r,selected:t.has(yv(r)),...e.onBulk?{onSelect:e=>n(t=>{let n=new Set(t);return e?n.add(yv(r)):n.delete(yv(r)),n})}:{}},`${r.id??``}|${i}`))})]},`${r.kind}|${r.repo??``}`))]},r.change??``))]})}function wv(){let e=j(`/api/changes`),t=j(`/api/findings?state=open`),n=j(`/api/catalog/kinds`),r=j(`/api/view/questions`),i=j(`/api/view/triage`),a=j(`/api/todo`),o=j(`/api/questions?state=open`),s=j(`/api/onboarding`),c=j(`/api/trust`),l=j(`/api/knowledge/items`),[u,d]=(0,v.useState)(``),[f,p]=(0,v.useState)(),{me:m}=Ah(),h=Ig(e),g=h.state===`ready`?h.data.flatMap(e=>(e.needs?.needs??[]).map(t=>({...t,change:e.change}))):[],_=w_({needs:g,changes:e.state===`ready`?e.data:[],findings:t.state===`ready`?t.data:[],questions:r.state===`ready`?r.data.data?.questions??[]:[],triage:i.state===`ready`?i.data.data?.items??[]:[],steps:a.state===`ready`?a.data.steps:[],questionFiles:o.state===`ready`?o.data.questions:[],...l.state===`ready`?{knowledgeToVerify:l.data.items.filter(e=>!e.review||e.review.state===`stale`).length}:{}}),y=j(`/api/graph`),b=y.state===`ready`?[...new Set(y.data.nodes.map(e=>e.system??(e.kind===`System`?e.id:void 0)))].filter(e=>!!e).sort():[],x=j(y.state!==`ready`||y.data.nodes.length===0?void 0:b.length===1?`/api/diagram/container/graph?focus=${encodeURIComponent(b[0])}`:`/api/diagram/context/graph`);M(i=>{(i.type===`index.rebuilt`||i.type===`file.changed`)&&(n.reload(),y.reload(),x.reload(),e.reload(),t.reload()),i.type===`file.changed`&&(s.reload(),c.reload(),h.reload(),a.reload(),r.reload(),o.reload(),l.reload()),i.type===`run.changed`&&t.reload()});let S=e.state===`ready`?e.data.filter(e=>lv.has(e.state)):[],C=t.state===`ready`?t.data:[],w=C.filter(e=>e.severity===`blocking`),T=C.filter(e=>e.severity===`gap`),D=r.state===`ready`?r.data.data?.questions?.length??0:0,ee=n.state===`ready`?n.data.reduce((e,t)=>e+t.count,0):0,te=n.state===`ready`?n.data.find(e=>e.kind===`Interface`)?.count??0:0,O=S[0],k=new Map;for(let e of C)k.set(e.lens??`checks`,(k.get(e.lens??`checks`)??0)+1);let ne=Math.max(1,...k.values());return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24,letterSpacing:`0.02em`},children:e.state===`error`||t.state===`error`?E.app.ccCantRead:e.state!==`ready`||t.state!==`ready`?E.app.ccReading:w.length+T.length>0?U.thingsNeedAttention(w.length+T.length):U.nothingIsBlockedRight}),(0,N.jsx)(`span`,{className:`hud`,children:m?U.liveFromYourMetarepo(m.user):U.liveFromYourMetarepo2})]}),(0,N.jsx)(dv,{}),(0,N.jsx)(fv,{}),(0,N.jsx)(iv,{onboarding:s,changes:e,questions:o,trust:c}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(P,{title:U.waitingOnYou,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 8px`,fontSize:12.5},children:U.waitingIntro}),(0,N.jsx)(mv,{questions:r.state===`ready`?D:void 0,needs:h.state===`ready`?g.filter(e=>e.status===`open`).length:void 0,steps:a.state===`ready`?a.data.steps.length:void 0,blocking:t.state===`ready`?w.length:void 0})]}),(0,N.jsxs)(P,{title:U.needsAPerson,span:`1 / -1`,meta:_.filter(e=>e.kind!==`phase`).length||void 0,children:[(0,N.jsx)(Cv,{onBulk:async(e,t,n)=>{let r=0,i=bv(e,t,n);for(let e of i)await A(e.path,{method:`POST`,body:e.body}).catch(()=>{r++});p(U.bulkDone(i.length-r,r)),h.reload(),a.reload()},items:_,changes:e.state===`ready`?e.data:[],text:u,onText:d,state:e.state===`loading`||t.state===`loading`?`loading`:e.state===`error`||t.state===`error`?`error`:`ready`}),f&&(0,N.jsx)(`p`,{role:`status`,className:`muted`,style:{margin:`6px 0 0`},children:f}),m&&(0,N.jsx)(pv,{})]})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:U.approvingIsThePull}),(0,N.jsx)(ov,{onboarding:s,trust:c,changes:e}),(0,N.jsx)(`div`,{className:`bento`,role:`list`,"aria-label":U.keyNumbers,children:[{label:U.changesInFlight2,value:e.state===`ready`?S.length:void 0,color:`var(--text)`},{label:U.blockingFindings,value:t.state===`ready`?w.length:void 0,color:w.length?`var(--magenta)`:`var(--text)`},{label:U.openOwnerQuestions,value:r.state===`ready`?D:void 0,color:D?`var(--amber)`:`var(--text)`},{label:U.factsInTheCatalog,value:n.state===`ready`?ee:void 0,color:`var(--accent)`}].map(e=>(0,N.jsxs)(`div`,{role:`listitem`,className:`panel`,style:{gridColumn:`span 3`},children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10},children:e.label}),(0,N.jsx)(`div`,{className:`n`,style:{fontSize:30,color:e.color},children:e.value===void 0?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`–`}),(0,N.jsx)(`span`,{className:`sr`,children:E.app.notLoaded})]}):e.value.toLocaleString()})]},e.label))}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:O?U.gatePipeline(O.id):U.gatePipeline2,span:`span 5`,children:(0,N.jsx)(F,{of:e,empty:()=>!O,emptyText:U.noChangeInFlight,children:()=>{let e=sv.indexOf(O.state);return(0,N.jsx)(`div`,{className:`row between`,style:{gap:6},children:sv.map((t,n)=>(0,N.jsxs)(`div`,{className:`stack`,style:{alignItems:`center`,gap:6},children:[n===e?(0,N.jsx)(me,{value:n+1,max:sv.length,size:48,label:U.currentPhase(cv[t]??``)}):(0,N.jsx)(`span`,{"aria-label":`${cv[t]}: ${n<e?U.done2:U.toCome}`,role:`img`,style:{width:44,height:44,borderRadius:`50%`,border:`1.5px solid ${n<e?`var(--btn-text)`:`var(--step-off)`}`,display:`flex`,alignItems:`center`,justifyContent:`center`,color:n<e?`var(--btn-text)`:`var(--muted)`},children:n<e?`✓`:``}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10,color:n===e?`var(--accent)`:void 0},children:cv[t]})]},t))})}})}),(0,N.jsx)(P,{title:U.catalog,span:`span 4`,children:(0,N.jsx)(F,{of:n,empty:e=>e.length===0,emptyText:U.noFactsYet,children:e=>{let t=[...e].sort((e,t)=>t.count-e.count).slice(0,5),n=Math.max(1,...t.map(e=>e.count));return(0,N.jsx)(`div`,{className:`stack`,children:t.map(e=>(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,style:{width:110,fontSize:10},children:e.kind}),(0,N.jsx)(`div`,{style:{flex:1},children:(0,N.jsx)(he,{value:e.count,max:n,label:U.records(e.kind)})}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:14},children:e.count})]},e.kind))})}})}),(0,N.jsx)(P,{title:U.interfaces,kind:`dark`,span:`span 3`,children:(0,N.jsx)(F,{of:n,children:()=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`span`,{className:`big`,children:te}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:U.interfacesInTheCatalog})]})})}),(0,N.jsx)(P,{title:U.systemMap,kind:`hero`,span:`span 8`,rows:`span 2`,meta:(0,N.jsx)(`a`,{href:`#/explore`,children:U.explore}),children:(0,N.jsx)(F,{of:y,empty:e=>e.nodes.length===0,emptyText:U.theCatalogIsEmpty,children:()=>(0,N.jsx)(F,{of:x,empty:e=>e.view.nodes.length===0,emptyText:U.theCatalogIsEmpty,children:e=>(0,N.jsx)(We,{view:e.view,height:420})})})}),(0,N.jsx)(P,{title:U.findingsByLens,span:`span 4`,children:(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:U.noOpenFindings,children:()=>(0,N.jsx)(`div`,{className:`stack`,children:[...k.entries()].sort((e,t)=>t[1]-e[1]).map(([e,t])=>(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,style:{width:96,fontSize:10},children:e}),(0,N.jsx)(`div`,{style:{flex:1},children:(0,N.jsx)(he,{value:t,max:ne,label:U.findings(e)})}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:14},children:t})]},e))})})}),(0,N.jsx)(P,{title:U.whereFindingsComeFrom,kind:`dark`,span:`span 4`,children:(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:U.noOpenFindings,children:e=>(0,N.jsx)(I,{title:U.openFindingsBySource,parts:[{label:U.checksFromCode,value:e.filter(e=>e.layer!==`ai`).length,color:`var(--accent)`},{label:U.aiLenses,value:e.filter(e=>e.layer===`ai`).length,color:`var(--magenta)`}]})})})]}),(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsx)(P,{title:E.work.slashTitle,span:`1 / -1`,children:(0,N.jsx)(nv,{})})}),(0,N.jsx)(`p`,{className:`hud`,style:{textAlign:`center`,fontSize:10,color:`var(--faint)`},children:U.aPersonApprovesEvery})]})}var Tv=E.explore,Ev=[`name`,`description`,`system`,`owner`,`ownerComponent`,`from`,`to`,`via`,`method`,`normalizedPath`,`type`,`runtime`,`table`,`dataType`];function Dv(e){return e==null?``:typeof e==`string`||typeof e==`number`||typeof e==`boolean`?String(e):Array.isArray(e)?e.map(Dv).join(`, `):JSON.stringify(e)}function Ov(e,t){let n=e.split(`?`)[1];return n?new URLSearchParams(n).get(t)??``:``}var kv=e=>Ov(e,`q`);function Av({row:e}){let t=j(`/api/catalog/${e.kind}/${encodeURIComponent(e.id)}`);return(0,N.jsx)(P,{title:e.id,meta:e.kind,span:`span 4`,rows:`span 2`,children:(0,N.jsx)(F,{of:t,children:e=>{let t=Object.keys(e).filter(e=>![`kind`,`id`,`evidence`,`schemaVersion`,`flags`].includes(e)),n=[...Ev.filter(e=>t.includes(e)),...t.filter(e=>!Ev.includes(e))];return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsx)(`dl`,{style:{margin:0,display:`grid`,gridTemplateColumns:`120px 1fr`,gap:`6px 10px`,fontSize:12.5},children:n.map(t=>(0,N.jsxs)(`div`,{style:{display:`contents`},children:[(0,N.jsx)(`dt`,{className:`hud`,style:{fontSize:10},children:t}),(0,N.jsx)(`dd`,{className:/^(from|to|system|owner|ownerComponent|table)$/.test(t)?`mono`:``,style:{margin:0,wordBreak:`break-word`},children:Dv(e[t])})]},t))}),(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:Tv.evidence}),(e.evidence??[]).length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:Tv.noEvidenceRecordedTreat}):(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0,display:`flex`,flexDirection:`column`,gap:6},children:(e.evidence??[]).map((e,t)=>(0,N.jsxs)(`li`,{style:{fontSize:12.5},children:[(0,N.jsx)(`span`,{className:`chip ${e.source===`code`||e.source===`config`?``:e.source===`document`||e.source===`diagram`?`warn`:`ai`}`,children:e.source.toUpperCase()}),` `,(0,N.jsxs)(`span`,{className:`mono`,children:[e.repo?`${e.repo} · `:``,e.path??``,e.line?`:${e.line}`:``]})]},t))})]}),(0,N.jsx)(`a`,{href:`#/impact?q=${encodeURIComponent(e.id)}`,className:`btn`,style:{display:`inline-flex`,alignItems:`center`,textDecoration:`none`,width:`fit-content`},children:Tv.whatBreaksIfThis})]})}})})}function jv({hash:e}){let t=kv(e),n=Ov(e,`ask`),r=j(n?`/api/ask?q=${encodeURIComponent(n)}`:void 0),[i,a]=(0,v.useState)(t),[o,s]=(0,v.useState)(t);(0,v.useEffect)(()=>{a(t),s(t)},[t]),(0,v.useEffect)(()=>{r.state===`ready`&&(r.data.action===`impact`&&r.data.id?location.hash=`#/impact?q=${encodeURIComponent(r.data.id)}`:(a(r.data.query),s(r.data.query)))},[r.state,r.state===`ready`?r.data:void 0]);let[c,l]=(0,v.useState)(),u=j(o?`/api/search?q=${encodeURIComponent(o)}&limit=60`:void 0),d=c&&(c.kind===`Component`||c.kind===`System`)?c.id:c?.system,f=j(d?`/api/graph?focus=${encodeURIComponent(d)}&depth=2`:`/api/graph`);return se(u,f),(0,N.jsxs)(`div`,{className:`bento`,children:[n&&(0,N.jsx)(P,{title:Tv.ask(n),kind:`hero`,span:`1 / -1`,children:(0,N.jsx)(F,{of:r,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsx)(`p`,{style:{margin:0},children:e.explanation}),e.action===`owner`&&(0,N.jsx)(`p`,{style:{margin:0,fontSize:18},children:e.owner?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.id}),` `,Tv.isOwnedBy,(0,N.jsx)(`span`,{className:`chip done`,children:e.owner})]}):(0,N.jsxs)(N.Fragment,{children:[Tv.theCatalogDoesntKnow,(0,N.jsx)(`span`,{className:`mono`,children:e.id}),` `,Tv.yet]})}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[Tv.queryRun,(0,N.jsx)(`span`,{className:`mono`,style:{color:`var(--accent)`},children:e.query}),Tv.editItBelowTo]}),e.error&&(0,N.jsx)(`span`,{role:`alert`,style:{color:`var(--magenta-text)`},children:e.error})]})})}),(0,N.jsx)(P,{title:Tv.searchTheCatalog,span:`1 / -1`,children:(0,N.jsxs)(`form`,{role:`search`,onSubmit:e=>{e.preventDefault(),l(void 0),s(i.trim()),history.replaceState(null,``,`#/explore?q=${encodeURIComponent(i.trim())}`)},className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`label`,{htmlFor:`kq`,className:`sr`,children:Tv.search}),(0,N.jsx)(`input`,{id:`kq`,value:i,onChange:e=>a(e.target.value),placeholder:Tv.tryDailyLimitKind,style:{flex:`1 1 360px`,height:40,background:`var(--box)`,color:`var(--text)`,border:`1px solid var(--accent)`,borderRadius:10,padding:`0 12px`,font:`inherit`}}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,children:Tv.search}),(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[Tv.wordsMatchIdsAnd,(0,N.jsx)(`span`,{className:`mono`,children:Tv.kind}),`, `,(0,N.jsx)(`span`,{className:`mono`,children:Tv.system}),`,`,` `,(0,N.jsx)(`span`,{className:`mono`,children:Tv.status}),` `,Tv.narrowIt]})]})}),(0,N.jsx)(P,{title:Tv.results,span:`span 3`,rows:`span 2`,meta:u.state===`ready`?u.data.total:void 0,children:o?(0,N.jsx)(F,{of:u,empty:e=>e.rows.length===0,emptyText:Tv.nothingMatchesTryFewer,children:e=>(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},"aria-label":Tv.searchResults,children:e.rows.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsxs)(`button`,{type:`button`,onClick:()=>l(e),"aria-pressed":c?.id===e.id&&c?.kind===e.kind,className:`list-row`,style:{width:`100%`,background:c?.id===e.id?`var(--picked)`:`transparent`,border:0,color:`inherit`,font:`inherit`,textAlign:`left`,cursor:`pointer`,padding:`7px 6px`,borderRadius:6},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12,wordBreak:`break-all`},children:e.id}),e.name&&e.name!==e.id&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e.name})]}),(0,N.jsx)(`span`,{className:`chip dim`,children:e.kind})]})},`${e.kind}/${e.id}`))})}):(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:Tv.searchForAService})}),(0,N.jsx)(P,{title:d?Tv.around(d):Tv.theWholeEstate,kind:`hero`,span:c?`span 5`:`span 9`,rows:`span 2`,children:(0,N.jsx)(F,{of:f,empty:e=>e.nodes.length===0,emptyText:Tv.theCatalogIsEmpty,children:e=>(0,N.jsx)(Ye,{g:e,...d?{focus:d}:{},highlight:u.state===`ready`?u.data.rows.map(e=>e.id):[]})})}),c&&(0,N.jsx)(Av,{row:c},`${c.kind}/${c.id}`)]})}var Mv=E.flowsModel,Nv={action:`A person`,page:`A person`,job:`A schedule`,listener:`A message`},Pv=6,Fv=e=>e.length>Pv?`${e.slice(0,Pv).join(`, `)} and ${e.length-Pv} more`:e.join(`, `),Iv=e=>e?.path?`${e.path}${e.line===void 0?``:`:${e.line}`}`:void 0,Lv=new Set([`loop`,`retry`]);function Rv(e){let t=e.data??{},n=[];for(let e of[`sends`,`returns`,`reads`,`checks`])t[e]?.length&&n.push(`${e}: ${Fv(t[e])}`);return(t.from?.length||t.to?.length)&&n.push(`maps: ${Fv(t.from??[])} → ${Fv(t.to??[])}`),e.store?.columns.length&&n.push(`columns: ${Fv(e.store.columns)}`),e.repeats&&n.push(`repeats steps ${e.repeats.from} to ${e.repeats.to}`),n}function zv(e){let t=e.trigger,n=[],r=[{id:`caller`,label:t.caller?.who??Nv[t.kind]??(n.push(Mv.whoCallsThisEntry),Mv.callerNotKnown),kind:`caller`}],i=t.caller?.via&&t.caller.via!==`direct`?t.caller.via:void 0;i&&r.push({id:`gateway`,label:i,kind:`gateway`}),r.push({id:`self`,label:e.component,kind:`self`});let a=(e,t,n,i)=>{let a=r.find(t=>t.id===e);return a?i&&(a.isNew=!0):r.push({id:e,label:t,kind:n,...i?{isNew:!0}:{}}),e},o=[{n:0,shown:Mv.start,kind:t.kind,what:t.what,from:`caller`,to:`self`,...i?{label:`via ${i}`}:{},back:!1,fields:[],...Iv(t.evidence[0])?{cite:Iv(t.evidence[0])}:{},more:Math.max(0,t.evidence.length-1),frames:[]}];e.steps.forEach((t,r)=>{let i=r+1,s=`self`,c,l=!1;if(t.kind===`call-out`&&t.to)s=a(`component:${t.to.component}`,t.to.component,`component`,t.to.new),c=t.to.entry;else if(t.kind===`publish`){let e=t.to?.entry??t.refs?.[0]??`a topic`;s=a(`topic:${e}`,e,`topic`,t.to?.new)}else t.store&&[`read`,`write`,`lookup`].includes(t.kind)?s=a(`store:${t.store.table}`,t.store.table,`store`,t.store.new):t.kind===`respond`&&(s=`caller`,l=!0);let u=e.target?t.target:i,d=e.target?void 0:e.calls.find(e=>e.step===i),f=e.target?void 0:e.unmatched.find(e=>e.step===i);Lv.has(t.kind)&&!t.repeats&&t.mark!==`removed`&&n.push(`Step ${u??i} is a ${t.kind} that doesn't say which steps it repeats yet.`),o.push({n:i,shown:u===void 0?t.today===void 0?``:`was ${t.today}`:String(u),kind:t.kind,what:t.what,from:`self`,to:s,...c?{label:c}:{},back:l,fields:Rv(t),...Iv(t.evidence[0])?{cite:Iv(t.evidence[0])}:{},more:Math.max(0,t.evidence.length-1),...t.confirmedBy?{confirmedBy:t.confirmedBy}:{},...d?{opens:{repo:d.repo,flow:d.flow,...d.name?{name:d.name}:{}}}:{},...f?{unjoined:f.message}:{},frames:[],...t.mark&&t.mark!==`same`?{mark:t.mark}:{},...t.was&&t.was.what!==t.what?{was:t.was.what}:{},...t.why?{why:t.why}:{}})});let s=t=>e.target?o.find(n=>n.n>0&&e.steps[n.n-1].target===t)?.n:t,c=[];e.steps.forEach((t,n)=>{if(!Lv.has(t.kind)||!t.repeats||t.mark===`removed`)return;let r=s(t.repeats.from),i=s(t.repeats.to);if(r===void 0||i===void 0||r>i||i>e.steps.length)return;let a=n+1;c.push({kind:t.kind,step:a,from:Math.min(r,a),to:Math.max(i,a),depth:0,repeats:t.repeats})}),c.sort((e,t)=>e.from-t.from||t.to-e.to),c.forEach((e,t)=>{e.depth=c.slice(0,t).filter(t=>t.from<=e.from&&t.to>=e.to).length});for(let e of c)for(let t=e.from;t<=e.to;t++)o[t].frames.push({depth:e.depth,kind:e.kind,first:t===e.from,last:t===e.to,repeats:e.repeats});for(let e of o)e.frames.sort((e,t)=>e.depth-t.depth);return{lanes:r,rows:o,frames:c,errors:e.errors.map(e=>({when:e.when,then:e.then,...Iv(e.evidence[0])?{cite:Iv(e.evidence[0])}:{}})),gaps:n}}function Bv(e){let t=e.calledBy[0],n=e.flow.trigger.caller??(t?{who:Mv.calledByFlows(t.name??t.flow,e.calledBy.length-1)}:void 0);return zv({component:e.flow.component,trigger:{...e.flow.trigger,caller:n},steps:e.flow.steps,errors:e.flow.errors,calls:e.calls,unmatched:e.unmatched,target:!1})}function Vv(e){return zv({component:e.component,trigger:{...e.trigger,evidence:e.triggerEvidence},steps:e.steps,errors:[],calls:[],unmatched:[],target:!0})}var Hv=E.flowsScreen,Uv=E.flows,Wv=(e,t)=>`#/flows?repo=${encodeURIComponent(e)}${t?`&flow=${encodeURIComponent(t)}`:``}`,Gv=(e,t)=>`#/flows?change=${encodeURIComponent(e)}${t?`&flow=${encodeURIComponent(t)}`:``}`,Kv=e=>Uv.kinds[e]??e;function qv({at:e,repo:t}){return(0,N.jsx)(gh,{repo:t,at:e})}function Jv({by:e}){return e?(0,N.jsxs)(`span`,{className:`seq-ok`,children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`✓ `}),Uv.confirmed[e]??e]}):(0,N.jsxs)(`span`,{className:`seq-unsure`,children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`○ `}),Uv.notConfirmed]})}function Yv({r:e,lanes:t,now:n,repo:r}){let i=(0,v.useRef)(null);(0,v.useEffect)(()=>{n&&i.current?.scrollIntoView({block:`center`,behavior:`smooth`})},[n]);let a=e=>t.findIndex(t=>t.id===e)+1,o=a(e.from),s=a(e.to),c=e.n===0?o:a(`self`),l=Math.min(o,s),u=Math.max(o,s),d=u-l+1,f=t[s-1];return(0,N.jsxs)(`li`,{ref:i,className:`seq-row${n?` seq-now`:``}`,...n?{"aria-current":`step`}:{},children:[e.frames.map(e=>(0,N.jsx)(`span`,{className:`seq-frame ${e.kind}${e.first?` first`:``}${e.last?` last`:``}`,style:{"--depth":e.depth},"aria-hidden":`true`,children:e.first&&(0,N.jsx)(`span`,{className:`seq-frame-label`,children:Uv.frame(e.kind,e.repeats.from,e.repeats.to)})},e.depth)),t.map((e,t)=>(0,N.jsx)(`span`,{className:`seq-life`,style:{gridColumn:t+1},"aria-hidden":`true`},e.id)),o!==s&&(0,N.jsx)(`span`,{className:`seq-arrow ${s>o?`right`:`left`}${e.back?` back`:``}`,style:{gridColumn:`${l} / ${u+1}`,"--span":d},"aria-hidden":`true`,children:e.label&&(0,N.jsx)(`em`,{children:e.label})}),(0,N.jsxs)(`div`,{className:`seq-box k-${e.kind}${e.mark?` m-${e.mark}`:``}`,style:{gridColumn:c},children:[(0,N.jsxs)(`div`,{className:`seq-top`,children:[(0,N.jsx)(`span`,{className:`seq-n`,children:e.shown}),(0,N.jsx)(`span`,{className:`seq-kind`,children:Kv(e.kind)}),e.mark&&(0,N.jsx)(`span`,{className:`seq-mark m-${e.mark}`,children:Uv.marks[e.mark]})]}),(0,N.jsx)(`p`,{className:`seq-what`,children:e.what}),e.was&&(0,N.jsx)(`p`,{className:`seq-was`,children:Uv.was(e.was)}),e.why&&(0,N.jsx)(`p`,{className:`seq-why`,children:e.why}),o!==s&&(0,N.jsx)(`p`,{className:`sr`,children:e.back?Uv.backTo(f.label):Uv.goesTo(e.label??f.label,f.label)}),e.fields.length>0&&(0,N.jsx)(`ul`,{className:`seq-fields`,children:e.fields.map(e=>(0,N.jsx)(`li`,{children:e},e))}),e.cite&&(0,N.jsxs)(`p`,{className:`seq-cite`,children:[(0,N.jsx)(qv,{at:e.cite,repo:r}),e.more>0&&(0,N.jsxs)(`span`,{children:[` `,Uv.more(e.more)]})]}),e.n>0&&e.mark!==`added`&&(0,N.jsx)(Jv,{by:e.confirmedBy}),e.opens&&(0,N.jsx)(`a`,{className:`seq-opens`,href:Wv(e.opens.repo,e.opens.flow),children:Uv.opens(e.opens.name??e.opens.flow,e.opens.repo)}),e.unjoined&&(0,N.jsx)(`p`,{className:`seq-unjoined`,children:Uv.unjoined(e.unjoined)})]})]})}function Xv({seq:e,name:t,current:n,hideErrors:r,repo:i}){let a=e.frames.reduce((e,t)=>Math.max(e,t.depth+1),0),o={"--lanes":e.lanes.length,"--frames":a};return(0,N.jsxs)(`div`,{className:`seq-wrap`,children:[(0,N.jsxs)(`div`,{className:`seq`,style:o,tabIndex:0,role:`region`,"aria-label":Uv.diagram(t??Hv.thisFlow),children:[(0,N.jsx)(`div`,{className:`seq-row seq-head`,"aria-hidden":`true`,children:e.lanes.map((e,t)=>(0,N.jsxs)(`div`,{className:`seq-lane ${e.kind}${e.isNew?` new`:``}`,style:{gridColumn:t+1},children:[(0,N.jsx)(`strong`,{children:e.label}),(0,N.jsxs)(`small`,{children:[Uv.lanes[e.kind],e.isNew?` · ${Uv.newLane}`:``]})]},e.id))}),(0,N.jsx)(`ol`,{className:`seq-steps`,"aria-label":Uv.diagram(t??Hv.thisFlow),children:e.rows.map(t=>(0,N.jsx)(Yv,{r:t,lanes:e.lanes,now:t.n===n,repo:i},t.n))})]}),!r&&(0,N.jsx)(`h3`,{className:`h seq-h`,children:Uv.errorsTitle}),r?null:e.errors.length?(0,N.jsx)(`ul`,{className:`seq-errors`,children:e.errors.map((e,t)=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{children:e.when}),` `,(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`→`}),` `,(0,N.jsx)(`strong`,{children:e.then}),e.cite&&(0,N.jsx)(qv,{at:e.cite,repo:i})]},t))}):(0,N.jsx)(`p`,{className:`muted`,children:Uv.noErrors})]})}var Zv=(e,t)=>{let n=t.trim().toLowerCase();return!n||[e.name,e.id,e.trigger.what].some(e=>e.toLowerCase().includes(n))};function Qv(e){let t=e.spec.flows.filter(t=>Zv(t,e.filter));return(0,N.jsxs)(`div`,{className:`stack`,children:[e.spec.flows.length===0?(0,N.jsx)(`div`,{className:`state`,children:Uv.noFlows}):t.length===0?(0,N.jsx)(`div`,{className:`state`,children:Uv.noMatch}):(0,N.jsx)(`ul`,{className:`flow-list`,children:t.map(t=>(0,N.jsx)(`li`,{children:(0,N.jsxs)(`a`,{href:Wv(e.spec.repo,t.id),"aria-current":t.id===e.current?`true`:void 0,children:[(0,N.jsx)(`span`,{className:`flow-name`,children:t.name}),(0,N.jsxs)(`span`,{className:`flow-trigger`,children:[(0,N.jsx)(`span`,{className:`seq-kind`,children:Kv(t.trigger.kind)}),` `,t.trigger.what]}),(0,N.jsx)(`span`,{className:`flow-counts`,children:Uv.counts(t.steps,t.confirmed)})]})},t.id))}),e.spec.problems.length>0&&(0,N.jsxs)(`div`,{className:`state error`,children:[Uv.unreadable,(0,N.jsx)(`ul`,{children:e.spec.problems.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`code`,{children:e.file}),`: `,e.message]},e.file))})]})]})}function $v({repo:e,flow:t,step:n}){let r=j(`/api/specs/${encodeURIComponent(e)}/flows/${encodeURIComponent(t)}`);return M(e=>{e.type===`file.changed`&&typeof e.path==`string`&&e.path.includes(`specs`)&&r.reload()}),(0,N.jsx)(F,{of:r,children:t=>{let r=Bv(t);return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`h2`,{className:`h`,children:t.flow.name}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`hud`,children:Uv.file}),(0,N.jsx)(`code`,{children:t.file}),(0,N.jsx)(St,{text:t.file,label:Uv.copyFile})]}),t.calledBy.length>0&&(0,N.jsxs)(`p`,{children:[Uv.calledBy,`:`,` `,t.calledBy.map((e,t)=>(0,N.jsxs)(`span`,{children:[t>0&&`, `,(0,N.jsx)(`a`,{href:Wv(e.repo,e.flow),children:e.name??e.flow}),` (`,e.repo,`)`]},`${e.flow}.${e.step}`))]}),!t.joined&&(0,N.jsx)(`p`,{className:`muted`,children:Uv.notJoined}),r.gaps.map(e=>(0,N.jsx)(`p`,{className:`seq-unjoined`,children:e},e)),(0,N.jsx)(Xv,{seq:r,name:t.flow.name,repo:e,...n===void 0?{}:{current:n}})]})}})}function ey(e){let{repo:t,flow:n}=e,r=j(`/api/specs/${encodeURIComponent(t)}`),[i,a]=(0,v.useState)(e.q??``);return(0,N.jsxs)(`div`,{className:`flows-grid`,children:[(0,N.jsxs)(P,{title:Uv.listTitle,children:[(0,N.jsxs)(`label`,{className:`stack`,style:{gap:4,marginBottom:10},children:[(0,N.jsx)(`span`,{className:`hud`,children:Uv.filter}),(0,N.jsx)(`input`,{id:`flow-filter`,type:`search`,placeholder:Uv.filterHint,value:i,onChange:e=>a(e.target.value)})]}),(0,N.jsx)(F,{of:r,children:e=>(0,N.jsx)(Qv,{spec:e,filter:i,current:n})})]}),(0,N.jsx)(P,{children:n?(0,N.jsx)($v,{repo:t,flow:n,...e.step===void 0?{}:{step:e.step}}):(0,N.jsx)(`div`,{className:`state`,children:Uv.pick})})]})}function ty(e){return(0,N.jsxs)(`div`,{className:`stack`,children:[e.list.flows.length===0?(0,N.jsx)(`div`,{className:`state`,children:Uv.noTargets(e.list.change)}):(0,N.jsx)(`ul`,{className:`flow-list`,children:e.list.flows.map(t=>(0,N.jsx)(`li`,{children:(0,N.jsxs)(`a`,{href:Gv(e.list.change,t.flow),"aria-current":t.flow===e.current?`true`:void 0,children:[(0,N.jsx)(`span`,{className:`flow-name`,children:t.name}),(0,N.jsxs)(`span`,{className:`flow-trigger`,children:[(0,N.jsx)(`span`,{className:`seq-kind d-${t.change}`,children:Uv.deltaKinds[t.change]}),` `,t.repo]}),(0,N.jsx)(`span`,{className:`flow-counts`,children:Uv.targetCounts(t.added,t.changed,t.removed)})]})},t.flow))}),e.list.problems.length>0&&(0,N.jsxs)(`div`,{className:`state error`,children:[Uv.unreadable,(0,N.jsx)(`ul`,{children:e.list.problems.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsx)(`code`,{children:e})},e))})]})]})}function ny({change:e,flow:t}){let n=j(`/api/changes/${encodeURIComponent(e)}/target-flows/${encodeURIComponent(t)}`);return M(e=>{e.type===`file.changed`&&typeof e.path==`string`&&e.path.includes(`changes`)&&n.reload()}),(0,N.jsx)(F,{of:n,children:e=>{let t=Vv(e);return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`h2`,{className:`h`,children:e.name}),(0,N.jsxs)(`p`,{children:[(0,N.jsx)(`span`,{className:`seq-kind d-${e.delta}`,children:Uv.deltaKinds[e.delta]}),` `,Uv.targetCounts(e.counts.added,e.counts.changed,e.counts.removed),`.`,` `,e.delta!==`new`&&(0,N.jsx)(`a`,{href:Wv(e.repo,e.flow),children:e.flow})]}),(0,N.jsxs)(`p`,{children:[(0,N.jsx)(`span`,{className:`hud`,children:Uv.whyChange}),` `,e.why]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`hud`,children:Uv.file}),(0,N.jsx)(`code`,{children:e.file}),(0,N.jsx)(St,{text:e.file,label:Uv.copyFile})]}),[...e.problems,...t.gaps].map(e=>(0,N.jsx)(`p`,{className:`seq-unjoined`,children:e},e)),(0,N.jsx)(Xv,{seq:t,name:e.name,repo:e.repo,hideErrors:!0})]})}})}function ry({change:e,flow:t}){let n=j(`/api/changes/${encodeURIComponent(e)}/target-flows`);return(0,N.jsxs)(`div`,{className:`flows-grid`,children:[(0,N.jsxs)(P,{title:Uv.targetsTitle,children:[(0,N.jsx)(`p`,{className:`muted`,style:{marginTop:0},children:Uv.changeIntro}),(0,N.jsx)(F,{of:n,children:e=>(0,N.jsx)(ty,{list:e,current:t})})]}),(0,N.jsx)(P,{children:t?(0,N.jsx)(ny,{change:e,flow:t}):(0,N.jsx)(`div`,{className:`state`,children:Uv.pick})})]})}function iy(e){return e.list.state!==`ready`||e.list.data.length===0?null:(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,children:Uv.change}),(0,N.jsxs)(`select`,{id:`flow-change`,value:e.change??``,onChange:e=>location.hash=e.target.value?Gv(e.target.value):`#/flows`,children:[(0,N.jsx)(`option`,{value:``,children:Uv.pickRepo}),e.list.data.map(e=>(0,N.jsx)(`option`,{value:e.id,children:e.title},e.id))]})]})}function ay({hash:e}){let t=j(`/api/specs`),n=j(`/api/changes`),r=ve(e,`change`),i=ve(e,`repo`),a=ve(e,`flow`),o=ve(e,`q`),s=Number(ve(e,`step`)),c=Number.isInteger(s)&&s>=0?s:void 0;return(0,N.jsx)(dh,{children:(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(P,{title:Uv.title,children:[(0,N.jsx)(`p`,{className:`muted`,style:{marginTop:0},children:Uv.intro}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:16,flexWrap:`wrap`},children:[(0,N.jsx)(iy,{list:n,...r?{change:r}:{}}),!r&&(0,N.jsx)(F,{of:t,empty:e=>e.repos.length===0,emptyText:Uv.noSpecs,children:e=>{let t=i??e.repos[0].repo;return(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,children:Uv.repo}),(0,N.jsx)(`select`,{id:`flow-repo`,value:t,onChange:e=>location.hash=Wv(e.target.value),children:e.repos.map(e=>(0,N.jsxs)(`option`,{value:e.repo,children:[e.repo,` (`,e.flows,`)`]},e.repo))})]})}})]})]}),r&&(0,N.jsx)(ry,{change:r,flow:a},r),!r&&t.state===`ready`&&t.data.repos.length>0&&(0,N.jsx)(ey,{repo:i??t.data.repos[0].repo,flow:a,q:o,step:c},`${i}?${o}`)]})})}var oy=E.questions,sy=/^q-[0-9a-f]{12}$/;function cy({e}){return(0,N.jsxs)(`figure`,{style:{margin:0},children:[(0,N.jsxs)(`figcaption`,{children:[(0,N.jsx)(`code`,{className:`mono`,children:e.ref}),!e.found&&(0,N.jsx)(`span`,{className:`muted`,style:{marginLeft:6,fontSize:12},children:oy.notShown})]}),e.found&&(0,N.jsx)(`pre`,{className:`mono`,style:{margin:`4px 0 0`,fontSize:12,overflowX:`auto`},children:e.lines.map((t,n)=>{let r=e.start+n,i=r===e.line;return(0,N.jsxs)(`span`,{style:{display:`block`},"aria-current":i?`true`:void 0,children:[(0,N.jsx)(`span`,{className:`muted`,children:`${String(r).padStart(4)} `}),i?(0,N.jsx)(`mark`,{children:t}):t]},r)})})]})}function ly({id:e,refs:t}){let n=j(`/api/questions/${e}/evidence`);return n.state===`ready`?(0,N.jsx)(`div`,{className:`stack`,style:{gap:8},children:n.data.excerpts.map(e=>(0,N.jsx)(cy,{e},e.ref))}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:t.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsx)(`code`,{className:`mono`,children:e})},e))})}function uy(e){let t=decodeURIComponent(e.replace(/^#\/?/,``).split(/[?]/)[0].split(`/`)[1]??``);return sy.test(t)?t:void 0}function dy(e){if(e.pick===void 0)return{error:oy.pickOne};let t=e.pick===`words`?e.text.trim()?{text:e.text.trim()}:void 0:{option:e.pick};return t?e.scope===`repo-type`?e.repoType.trim()?{body:{...t,scope:`repo-type`,repoType:e.repoType.trim()}}:{error:oy.needType}:{body:{...t,scope:`repo`}}:{error:oy.needWords}}var fy=e=>e.slice(0,10),py=e=>/[.!?]$/.test(e.trim())?e.trim():`${e.trim()}.`,my=e=>[...new Set(e.map(e=>e.repo))].sort((e,t)=>e.localeCompare(t)),hy=(e,t)=>e.filter(e=>(!t.repo||e.repo===t.repo)&&Ph([e.question,e.id,e.repo],t.text)),gy=`questions-filter`;function _y(e){let t=e.text??``,n=e.repo??``;return(0,N.jsx)(F,{of:e.of,empty:e=>e.questions.length===0&&e.problems.length===0,emptyText:e.all?oy.emptyAll:oy.empty,children:r=>{let i=hy(r.questions,{text:t,repo:n}),a=!!t.trim()||!!n;return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[r.problems.map(e=>(0,N.jsxs)(`p`,{className:`state error`,role:`alert`,style:{margin:0},children:[oy.unreadable(e.file),` `,e.message]},e.file)),(0,N.jsx)(Rh,{shown:i.length,total:r.questions.length,active:a}),a&&i.length===0&&r.questions.length>0&&(0,N.jsx)(zh,{what:Ih({text:t,repo:n}),onClear:()=>e.onClear?.(),focus:gy}),i.length>0&&(0,N.jsx)(`ul`,{className:`stack`,style:{listStyle:`none`,margin:0,padding:0,gap:6},children:i.map(t=>(0,N.jsx)(`li`,{children:(0,N.jsxs)(`a`,{href:`#/questions/${t.id}`,"aria-current":t.id===e.current?`true`:void 0,className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{children:t.question}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[t.repo,` · `,t.state,` · `,t.id]})]})},t.id))})]})}})}function vy({result:e}){return(0,N.jsxs)(`div`,{role:`status`,className:`stack`,style:{gap:6},children:[(0,N.jsx)(`p`,{style:{margin:0},children:oy.saved(`questions/${e.question.id}.yaml`)}),e.skill&&(0,N.jsx)(`p`,{style:{margin:0},children:e.skill.written?oy.skillWritten(e.skill.path):oy.skillMissing(e.skill.path)}),(0,N.jsx)(`p`,{style:{margin:0},children:oy.next}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,alignItems:`center`,flexWrap:`wrap`},children:[(0,N.jsx)(`code`,{className:`mono`,children:e.rerun}),(0,N.jsx)(St,{text:e.rerun,label:oy.copy})]})]})}function yy(e){let t=e.question,[n,r]=(0,v.useState)({pick:t.answer?.option??(t.answer?.text?`words`:void 0),text:t.answer?.text??``,scope:t.answer?.scope.level??t.scope.level,repoType:t.scope.level===`repo-type`?t.scope.id:``}),[i,a]=(0,v.useState)(!1),[o,s]=(0,v.useState)(),[c,l]=(0,v.useState)(),u=e=>r(t=>({...t,...e})),d=async r=>{r.preventDefault();let i=dy(n);if(`error`in i)s(i.error);else{a(!0),s(void 0);try{let n=await A(`/api/questions/${t.id}/answer`,{method:`POST`,body:i.body});l(n),e.onAnswered(n)}catch(e){s(_t(e))}finally{a(!1)}}},f=`q-${t.id}`;return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsx)(`h2`,{className:`h`,style:{margin:0},children:t.question}),(0,N.jsxs)(`p`,{className:`hud`,style:{margin:0,fontSize:10},children:[oy.askedBy(t.askedBy.command,fy(t.askedBy.at)),` · `,t.repo]}),(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`h3`,{className:`hud`,style:{margin:`0 0 4px`,fontSize:10},children:oy.evidence}),(0,N.jsx)(ly,{id:t.id,refs:t.evidence})]}),t.answer&&(0,N.jsxs)(`p`,{style:{margin:0},children:[oy.answered(t.answer.by,fy(t.answer.at)),`:`,` `,t.answer.text??t.options[(t.answer.option??1)-1]?.label]}),t.state===`retired`?(0,N.jsx)(`p`,{className:`state`,children:oy.retired}):(0,N.jsxs)(`form`,{className:`stack`,style:{gap:10},onSubmit:e=>void d(e),noValidate:!0,children:[(0,N.jsxs)(`fieldset`,{className:`stack`,style:{gap:6,border:0,padding:0,margin:0},children:[(0,N.jsx)(`legend`,{className:`hud`,style:{fontSize:10,marginBottom:4},children:t.answer?oy.change:oy.options}),t.options.map((e,t)=>{let r=`${f}-o${t+1}`;return(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,alignItems:`flex-start`},children:[(0,N.jsx)(`input`,{type:`radio`,id:r,name:`${f}-pick`,checked:n.pick===t+1,onChange:()=>u({pick:t+1}),"aria-describedby":`${r}-d`}),(0,N.jsxs)(`label`,{htmlFor:r,className:`stack`,style:{gap:2},children:[(0,N.jsxs)(`span`,{children:[t+1,`. `,e.label]}),(0,N.jsxs)(`span`,{id:`${r}-d`,className:`muted`,style:{fontSize:12},children:[py(e.means),` `,oy.optionChanges,`: `,py(e.changes)]})]})]},r)}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,alignItems:`flex-start`},children:[(0,N.jsx)(`input`,{type:`radio`,id:`${f}-words`,name:`${f}-pick`,checked:n.pick===`words`,onChange:()=>u({pick:`words`})}),(0,N.jsx)(`label`,{htmlFor:`${f}-words`,children:oy.ownWords})]}),n.pick===`words`&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`${f}-text`,className:`hud`,style:{fontSize:10},children:oy.ownWordsLabel}),(0,N.jsx)(`textarea`,{id:`${f}-text`,className:`field`,rows:3,value:n.text,onChange:e=>u({text:e.target.value})})]})]}),(0,N.jsxs)(`fieldset`,{className:`stack`,style:{gap:6,border:0,padding:0,margin:0},children:[(0,N.jsx)(`legend`,{className:`hud`,style:{fontSize:10,marginBottom:4},children:oy.scope}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`radio`,id:`${f}-repo`,name:`${f}-scope`,checked:n.scope===`repo`,onChange:()=>u({scope:`repo`})}),(0,N.jsxs)(`label`,{htmlFor:`${f}-repo`,children:[oy.scopeRepo(t.repo),t.scope.level===`repo`?` (${oy.proposed})`:``]})]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`radio`,id:`${f}-type`,name:`${f}-scope`,checked:n.scope===`repo-type`,onChange:()=>u({scope:`repo-type`})}),(0,N.jsx)(`label`,{htmlFor:`${f}-type`,children:t.scope.level===`repo-type`?`${oy.scopeType(t.scope.id)} (${oy.proposed})`:oy.scopeTypeOther})]}),n.scope===`repo-type`&&t.scope.level!==`repo-type`&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`${f}-type-id`,className:`hud`,style:{fontSize:10},children:oy.typeLabel}),(0,N.jsx)(`input`,{id:`${f}-type-id`,className:`field`,value:n.repoType,onChange:e=>u({repoType:e.target.value})})]})]}),o&&(0,N.jsx)(`p`,{role:`alert`,className:`state error`,style:{margin:0},children:o}),(0,N.jsx)(`div`,{children:(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:i,children:i?oy.saving:oy.submit})})]}),c&&(0,N.jsx)(vy,{result:c})]})}function by({id:e,onAnswered:t}){let n=j(`/api/questions/${e}`);se(n);let r=(0,v.useRef)(null);return(0,v.useEffect)(()=>{n.state===`ready`&&r.current?.focus()},[n.state,e]),(0,N.jsx)(`div`,{ref:r,tabIndex:-1,children:(0,N.jsx)(F,{of:n,children:e=>(0,N.jsx)(yy,{question:e,onAnswered:t},e.id)})})}function xy({hash:e}){let[t,n]=(0,v.useState)(`open`),r=j(t===`open`?`/api/questions?state=open`:`/api/questions`);se(r);let i=uy(e),[a,o]=(0,v.useState)(``),[s,c]=(0,v.useState)(``),l=[...new Set([...r.state===`ready`?my(r.data.questions):[],...s?[s]:[]])].sort((e,t)=>e.localeCompare(t));return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:oy.title}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsx)(Lh,{id:gy,value:a,onChange:o}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`questions-repo`,className:`hud`,style:{fontSize:10},children:E.filter.repo}),(0,N.jsxs)(`select`,{id:`questions-repo`,className:`field`,value:s,onChange:e=>c(e.target.value),children:[(0,N.jsx)(`option`,{value:``,children:E.filter.allRepos}),l.map(e=>(0,N.jsx)(`option`,{value:e,children:e},e))]})]}),(0,N.jsx)(wt,{label:oy.filter,value:t,options:[{value:`open`,label:oy.filterOpen},{value:`all`,label:oy.filterAll}],onChange:n})]})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`4px 0 12px`,fontSize:12.5,lineHeight:1.55},children:oy.intro}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:oy.listTitle,span:`span 5`,children:(0,N.jsx)(_y,{of:r,current:i,all:t===`all`,text:a,repo:s,onClear:()=>{o(``),c(``)}})}),(0,N.jsx)(`section`,{className:`panel`,style:{gridColumn:`span 7`},children:i?(0,N.jsx)(by,{id:i,onAnswered:r.reload}):(0,N.jsx)(`div`,{className:`state`,children:oy.pickFromList})})]})]})}var W=E.design,Sy=e=>e.kind===`Endpoint`?`${String(e.method??``)} ${String(e.normalizedPath??e.path??e.id)}`.trim():e.kind===`Interface`?`${String(e.from??`?`)} → ${String(e.to??`?`)}${e.via?` · ${String(e.via)}`:``}`:e.name??e.id;function Cy({kind:e,title:t,pick:n,picked:r}){let i=j(`/api/catalog/${e}?limit=200`);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsxs)(`div`,{className:`row between`,children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:t}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:14},children:i.state===`ready`?i.data.total:``})]}),(0,N.jsx)(F,{of:i,empty:e=>e.items.length===0,emptyText:W.noInTheCatalog(t.toLowerCase()),children:e=>(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:e.items.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsxs)(`button`,{type:`button`,"aria-pressed":r===e.id,onClick:()=>n(e),className:`list-row`,style:{width:`100%`,background:r===e.id?`var(--picked)`:`transparent`,border:0,color:`inherit`,font:`inherit`,textAlign:`left`,cursor:`pointer`,padding:`6px`,borderRadius:6},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:11.5,wordBreak:`break-all`},children:Sy(e)}),(0,N.jsx)(`span`,{className:`chip ${e.confidence===`verified`?`done`:`warn`}`,children:(e.confidence??`unknown`).toUpperCase()})]})},e.id))})})]})}function wy({evidence:e}){let t=uh(),n=Om(e).join(` `);return(0,v.useEffect)(()=>{for(let e of n.split(` `).filter(Boolean))t?.need(e)},[n,t]),(0,N.jsx)(ph,{gaps:Dm(e,e=>{let n=t?.of(e);return n?.state===`ready`?n.data:void 0},{bare:!0})})}function Ty({r:e}){let t=j(`/api/catalog/GatewayRoute?limit=500`),n=e=>`${e.repo??``}|${e.path??``}:${e.line??``}`,r=(e.evidence??[]).filter(e=>e.side===`gateway`&&e.path).map(n),i=e=>r.length?e.flatMap(e=>{let t=(e.evidence??[])[0],i=t?.path?r.indexOf(n(t)):-1;return i<0?[]:[{x:e,n:i}]}).sort((e,t)=>e.n-t.n||(e.x.id<t.x.id?-1:1)).map(e=>e.x):[];return(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:W.thePathOfTheCall}),(0,N.jsx)(F,{of:t,empty:e=>i(e.items).length===0,emptyText:W.noRouteRecordedFor,children:t=>(0,N.jsxs)(`ol`,{className:`stack`,style:{gap:4,margin:0,paddingLeft:18,fontSize:12.5},children:[i(t.items).map((t,n)=>{let r=t.scopes??[],i=t.policies??[];return(0,N.jsxs)(`li`,{children:[(0,N.jsxs)(`span`,{className:`mono`,children:[String(t.proxy??t.id),` `,String(t.basepath??``)]}),` `,(0,N.jsx)(`span`,{className:`chip ${r.length?`done`:`blocking`}`,children:r.length?W.scopesIt(r.join(`, `)):W.noScopeDemanded}),` `,(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:n===0&&e.auth?W.theCallerMeets(String(e.auth)):i.join(`, `)||W.thenReaches(String(t.target??``))})]},t.id)}),(0,N.jsx)(`li`,{children:(0,N.jsxs)(`span`,{className:`mono`,children:[String(e.to??``),` `,String(e.method??``),` `,String(e.normalizedPath??``)]})})]})})]})}function Ey({r:e}){let t=j(`/api/catalog/${e.kind}/${encodeURIComponent(e.id)}`),n=j(`/api/impact/${encodeURIComponent(e.id)}?depth=2`);return(0,N.jsx)(P,{title:Sy(e),span:`span 5`,rows:`span 2`,meta:e.kind,children:(0,N.jsx)(F,{of:t,children:t=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:W.evidence}),(0,N.jsx)(wy,{evidence:t.evidence??[]}),(t.evidence??[]).length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:W.noEvidenceTreatIt}):(t.evidence??[]).map((e,t)=>(0,N.jsxs)(`div`,{style:{fontSize:12.5,marginBottom:4},children:[(0,N.jsx)(`span`,{className:`chip ${e.source===`code`?``:`warn`}`,children:e.source.toUpperCase()}),` `,e.path&&e.line?(0,N.jsxs)(N.Fragment,{children:[e.repo&&(0,N.jsxs)(`span`,{className:`mono`,children:[e.repo,` · `]}),(0,N.jsx)(gh,{repo:e.repo,at:`${e.path}:${e.line}`})]}):(0,N.jsxs)(`span`,{className:`mono`,children:[e.repo?`${e.repo} · `:``,e.path??``]})]},t))]}),t.kind===`Interface`&&t.via===`gateway`?(0,N.jsx)(Ty,{r:t}):null,(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10,marginBottom:6},children:W.consumersAndDependants}),(0,N.jsx)(F,{of:n,empty:e=>e.affected.length===0,emptyText:W.nothingInTheCatalog,children:t=>(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[t.affected.filter(e=>e.kind===`Component`).map(e=>(0,N.jsx)(`span`,{className:`chip dim`,children:e.id},e.id)),(0,N.jsx)(`a`,{href:`#/impact?q=${encodeURIComponent(e.id)}`,children:W.seeImpact})]})})]}),(0,N.jsxs)(`details`,{children:[(0,N.jsx)(`summary`,{className:`hud`,style:{fontSize:10,cursor:`pointer`},children:W.record}),(0,N.jsx)(`pre`,{className:`mono`,style:{fontSize:11,whiteSpace:`pre-wrap`,color:`var(--text-2)`},children:JSON.stringify(Object.fromEntries(Object.entries(t).filter(([e])=>e!==`evidence`)),null,2)})]})]})})})}function Dy(){let e=j(`/api/catalog/kinds`),t=j(`/api/catalog/Interface?limit=500`),[n,r]=(0,v.useState)(),i=j(`/api/catalog/Endpoint?limit=1`),a=n??(i.state===`ready`?i.data.items[0]:void 0),o=t=>e.state===`ready`?e.data.find(e=>e.kind===t)?.count??0:0,s=t.state===`ready`?t.data.items.filter(e=>e.confidence===`verified`).length:0,c=t.state===`ready`?t.data.items.length:0;return(0,N.jsx)(dh,{children:(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:W.contracts,span:`span 4`,rows:`span 2`,children:(0,N.jsxs)(`div`,{className:`stack`,tabIndex:0,role:`region`,"aria-label":W.contractsList,style:{gap:14,maxHeight:640,overflowY:`auto`},children:[(0,N.jsx)(Cy,{kind:`Endpoint`,title:W.apis,pick:r,...a?{picked:a.id}:{}}),(0,N.jsx)(Cy,{kind:`Interface`,title:W.interfacesAndEvents,pick:r,...a?{picked:a.id}:{}}),(0,N.jsx)(Cy,{kind:`Table`,title:W.dataStores,pick:r,...a?{picked:a.id}:{}}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:11.5},children:W.dataStoresComeFrom})]})}),a?(0,N.jsx)(Ey,{r:a},`${a.kind}/${a.id}`):(0,N.jsx)(P,{title:W.pickAContract,span:`span 5`,rows:`span 2`,children:(0,N.jsx)(`div`,{className:`state`,children:W.chooseAnApiAn})}),(0,N.jsx)(P,{title:W.contractMix,span:`span 3`,kind:`dark`,children:(0,N.jsx)(F,{of:e,children:()=>(0,N.jsx)(I,{title:W.contractsByKind,parts:[{label:`APIs`,value:o(`Endpoint`),color:`var(--accent)`},{label:W.interfaces,value:o(`Interface`),color:`var(--violet)`},{label:W.tables,value:o(`Table`),color:`var(--amber)`}]})})}),(0,N.jsx)(P,{title:W.verifiedFromCode,span:`span 3`,children:(0,N.jsx)(F,{of:t,children:()=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(me,{value:s,max:Math.max(c,1),size:64,label:W.ofInterfacesVerifiedFrom(s,c)}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:11.5},children:W.aVendorSpecIs}),(0,N.jsx)(`a`,{href:`#/mappings`,children:W.fieldMappings})]})})})]})})}var Oy=/^inputs\/diagrams\/.+\.(drawio|drawio\.xml|vsdx|mmd|mermaid|csv)$/i;function ky(e){return e===`error`?!0:e?e.documents.some(e=>Oy.test(e.path)):void 0}function Ay(){let e=j(`/api/knowledge/documents`),t=ky(e.state===`ready`?e.data:e.state===`error`?`error`:void 0);return{r:j(t?`/api/view/reconcile`:void 0),none:t===!1}}var jy=e=>/No diagrams to reconcile/.test(e);function My({hash:e}){let{r:t,none:n}=Ay(),r=ve(e,`file`),[i,a]=(0,v.useState)(`all`);if(M(e=>{e.type===`job.done`&&t.reload()}),n||t.state===`error`&&jy(t.error))return(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsx)(P,{title:W.reconcileADiagramAgainst,span:`1 / -1`,children:(0,N.jsxs)(`div`,{className:`state`,children:[W.noDiagramsYetPut,(0,N.jsx)(`span`,{className:`mono`,children:W.inputsDiagrams}),` `,W.orAddThemOn,(0,N.jsx)(`a`,{href:`#/intake`,children:W.intake}),W.thenComeBack]})})});let o=t.state===`ready`?t.data.data.diagrams:[],s=o.find(e=>e.file===r)??o[0],c=s?[...new Set(s.items.map(e=>e.type))]:[],l=s?s.items.filter(e=>i===`all`||e.type===i):[];return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:W.diagrams,span:`span 4`,children:(0,N.jsx)(F,{of:t,empty:()=>o.length===0,emptyText:W.noDiagramsCouldBe,children:()=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[o.map(e=>(0,N.jsxs)(`a`,{href:`#/reconcile?file=${encodeURIComponent(e.file)}`,"aria-current":e===s?`page`:void 0,className:`list-row`,style:{textDecoration:`none`,padding:6,borderRadius:6,background:e===s?`var(--picked)`:void 0},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:11.5},children:e.file.replace(/^inputs\/diagrams\//,``)}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:W.edgesMatchCode(e.matches.length,e.edges)})]}),(0,N.jsx)(`span`,{className:`chip ${e.items.length?`warn`:`done`}`,children:e.items.length?W.toResolve(e.items.length):W.inSync})]},e.file)),(0,N.jsx)(pe,{of:t,label:W.checkAgain}),s&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12,marginTop:10},children:[(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(me,{value:s.matches.length,max:Math.max(s.edges,1),size:72,label:W.ofDrawnEdgesAgree(s.matches.length,s.edges)}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12.5},children:W.drawnEdgesAgreeWith})]}),(0,N.jsx)(I,{title:W.itemsToResolveBy,parts:c.map((e,t)=>({label:e,value:s.items.filter(t=>t.type===e).length,color:[`var(--magenta)`,`var(--amber)`,`var(--accent)`,`var(--violet)`,`var(--green)`,`var(--accent-pale)`][t%6]}))}),s.names.length>0&&(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:W.labelsMatchedToThe(s.names.filter(e=>e.id).length,s.names.length)})]})]})})}),(0,N.jsx)(P,{title:s?W.edgeByEdge(s.file.split(`/`).pop()??``):W.edgeByEdge2,span:`span 8`,meta:s?(0,N.jsx)(he,{value:s.matches.length,max:Math.max(s.edges,1),label:W.ofEdgesAgreeWith(s.matches.length,s.edges)}):void 0,children:s?(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(`div`,{className:`row`,role:`group`,"aria-label":W.filterItems,style:{flexWrap:`wrap`,gap:6},children:[`all`,...c].map(e=>(0,N.jsx)(`button`,{type:`button`,className:`btn ${i===e?`primary`:``}`,"aria-pressed":i===e,onClick:()=>a(e),children:e===`all`?W.all(s.items.length):`${e} ${s.items.filter(t=>t.type===e).length}`},e))}),l.length===0?(0,N.jsx)(`div`,{className:`state`,children:W.everyDrawnEdgeAgrees}):(0,N.jsx)(Oe,{caption:W.itemsToResolve,rows:l,rowKey:e=>e.id,cols:[{label:W.result,cell:e=>(0,N.jsx)(`span`,{className:`chip ${/mismatch|conflict|unknown/.test(e.type)?`blocking`:`warn`}`,children:e.type}),width:`150px`},{label:W.what,cell:e=>e.summary},{label:W.next,cell:e=>e.suggestion?.text??``}]}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:11.5},children:[W.codeWinsOverA,(0,N.jsx)(`a`,{href:`#/intake`,children:W.triage}),` `,W.untilAPersonDecides]})]}):(0,N.jsx)(`div`,{className:`state`,children:W.pickADiagram})}),s&&s.names.some(e=>!e.id||e.how!==`exact`)&&(0,N.jsxs)(P,{title:W.nameMatching,span:`1 / -1`,children:[(0,N.jsx)(Oe,{caption:W.diagramLabels,rows:s.names.filter(e=>!e.id||e.how!==`exact`),rowKey:e=>e.name,cols:[{label:W.diagramLabel,cell:e=>e.name},{label:W.matched,cell:e=>e.id?(0,N.jsx)(`span`,{className:`mono`,children:e.id}):(0,N.jsx)(`span`,{className:`chip warn`,children:W.noMatch})},{label:W.how,cell:e=>e.how??``},{label:W.similar,cell:e=>e.similar.slice(0,3).join(`, `),mono:!0}]}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:[W.confirmANameWith,(0,N.jsx)(`span`,{className:`mono`,children:W.atticusAliasLabelId}),W.itIsSavedTo]})]})]})}var Ny=[{id:`context`,label:W.context,focus:!1},{id:`data`,label:W.data,focus:!1},{id:`event`,label:W.events,focus:!1},{id:`container`,label:W.container,focus:!0},{id:`sequence`,label:W.sequence,focus:!0}];function Py({hash:e}){let t=ve(e,`view`)??`context`,n=Ny.find(e=>e.id===t)??Ny[0],r=_e(`coverage`),i=r.state===`ready`?r.data.systems.map(e=>e.system):[],[a,o]=(0,v.useState)(),s=a??i[0],c=j(n.focus&&!s?void 0:`/api/diagram/${n.id}${n.focus&&s?`?focus=${encodeURIComponent(s)}`:``}`),l=n.id!==`sequence`,u=j(!l||n.focus&&!s?void 0:`/api/diagram/${n.id}/graph${n.focus&&s?`?focus=${encodeURIComponent(s)}`:``}`),d=j(l?void 0:s?`/api/graph?focus=${encodeURIComponent(s)}&depth=1`:`/api/graph`),[f,p]=(0,v.useState)(!1);return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:W.generatedViews,span:`1 / -1`,children:(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`div`,{role:`tablist`,"aria-label":W.view,className:`row`,style:{gap:6},children:Ny.map(e=>(0,N.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e.id===n.id,className:`btn ${e.id===n.id?`primary`:``}`,onClick:()=>ye(`diagrams`,`view`,e.id),children:e.label},e.id))}),n.focus&&(0,N.jsxs)(`label`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:W.system}),(0,N.jsx)(`select`,{value:s??``,onChange:e=>o(e.target.value),style:{height:32,background:`var(--box)`,color:`var(--text)`,border:`1px solid var(--line-2)`,borderRadius:7,padding:`0 8px`,font:`inherit`},children:i.map(e=>(0,N.jsx)(`option`,{children:e},e))})]}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:W.drawnFromTheCatalog})]})}),(0,N.jsx)(P,{title:W.view2(n.label),kind:`hero`,span:`span 7`,rows:`span 2`,children:l?(0,N.jsx)(F,{of:u,empty:e=>e.view.nodes.length===0,emptyText:W.nothingToDrawThe(n.label.toLowerCase()),children:e=>(0,N.jsx)(We,{view:e.view,height:460})}):(0,N.jsx)(F,{of:d,empty:e=>e.nodes.length===0,emptyText:W.theCatalogIsEmpty,children:e=>(0,N.jsx)(Ye,{g:e,...n.focus&&s?{focus:s}:{},height:460})})}),(0,N.jsx)(P,{title:W.mermaid,span:`span 5`,rows:`span 2`,meta:c.state===`ready`?(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>{navigator.clipboard?.writeText(c.data.text).then(()=>p(!0))},children:f?W.copied:W.copy}):void 0,children:(0,N.jsx)(F,{of:c,empty:e=>!e.text.trim(),emptyText:W.nothingToDrawFor,children:e=>(0,N.jsx)(`pre`,{className:`mono`,tabIndex:0,"aria-label":W.mermaidSource,style:{margin:0,fontSize:11.5,lineHeight:1.55,whiteSpace:`pre-wrap`,maxHeight:460,overflowY:`auto`,color:`var(--text-2)`},children:e.text})})}),(0,N.jsx)(P,{title:W.diagramsInTheMetarepo,span:`span 7`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[W.diagramsUnder,(0,N.jsx)(`span`,{className:`mono`,children:W.inputsDiagrams}),` `,W.areComparedWithThe,(0,N.jsx)(`a`,{href:`#/reconcile`,children:W.reconcile}),`.`]})}),(0,N.jsx)(P,{title:W.catalogShapeLibrary,span:`span 5`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[W.writeTheDrawIo,(0,N.jsx)(`span`,{className:`mono`,children:W.atticusDiagramLibraryFile}),` `,W.andLoadItIn]})})]})}var Fy={done:`var(--green)`,open:`var(--accent)`,"at-risk":`var(--amber)`,slipped:`var(--magenta)`};function Iy({s:e}){let t=e=>Date.parse(`${e}T00:00:00Z`)/864e5,n=e.items;if(n.length===0)return(0,N.jsx)(`div`,{className:`state`,children:W.nothingPlannedYet});let r=Math.min(t(e.today),...n.map(e=>t(e.start))),i=Math.max(...n.map(e=>Math.max(t(e.due),t(e.projectedFinish))),r+1),a=e=>230+(t(e)-r)/(i-r)*520,o=n.length*26+30;return(0,N.jsxs)(`svg`,{role:`img`,"aria-label":W.timelineOfPlanItems(n.length,n[0].start,e.today),viewBox:`0 0 760 ${o}`,style:{width:`100%`,display:`block`},children:[n.map((e,t)=>{let n=10+t*26,r=Fy[e.status]??`var(--accent)`;return(0,N.jsxs)(`g`,{children:[(0,N.jsx)(`text`,{x:0,y:n+13,fill:e.critical?`var(--text)`:`var(--muted-2)`,fontSize:11,fontFamily:`IBM Plex Sans, sans-serif`,children:e.what.length>34?`${e.what.slice(0,33)}…`:e.what}),(0,N.jsx)(`rect`,{x:a(e.start),y:n+3,width:Math.max(a(e.projectedFinish)-a(e.start),3),height:12,rx:3,fill:r,opacity:.75,style:{filter:`drop-shadow(0 0 var(--glow-size) ${r})`}}),(0,N.jsx)(`line`,{x1:a(e.due),x2:a(e.due),y1:n,y2:n+18,stroke:`var(--text)`,strokeWidth:1.5})]},e.key)}),(0,N.jsx)(`line`,{x1:a(e.today),x2:a(e.today),y1:0,y2:o-16,stroke:`var(--magenta)`,strokeDasharray:`3 3`}),(0,N.jsx)(`text`,{x:a(e.today)+4,y:o-4,fill:`var(--magenta-text)`,fontSize:10,fontFamily:`JetBrains Mono, monospace`,children:W.today(e.today)}),e.targetRelease&&(0,N.jsx)(`text`,{x:750,y:o-4,textAnchor:`end`,fill:`var(--muted-2)`,fontSize:10,fontFamily:`JetBrains Mono, monospace`,children:W.target(e.targetRelease)})]})}var Ly={"on-track":`done`,done:`done`,"at-risk":`warn`,slipped:`blocking`,open:`dim`,"not-planned":`dim`};function Ry({hash:e}){let t=j(`/api/initiatives`),n=ve(e,`id`),r=t.state===`ready`?t.data.find(e=>e.initiative===n)??t.data[0]:void 0;return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(P,{title:W.initiatives,span:`span 4`,children:[(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:W.noInitiativesYet,children:e=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:6},children:e.map(e=>(0,N.jsxs)(`a`,{href:`#/initiatives?id=${encodeURIComponent(e.initiative)}`,"aria-current":e===r?`page`:void 0,className:`stack`,style:{gap:4,textDecoration:`none`,color:`inherit`,padding:8,borderRadius:8,border:`1px solid var(--line)`,background:e===r?`var(--picked-faint)`:void 0},children:[(0,N.jsxs)(`span`,{className:`row between`,children:[(0,N.jsx)(`span`,{style:{fontWeight:600},children:e.title}),(0,N.jsx)(`span`,{className:`chip ${Ly[e.status]??``}`,children:e.status.toUpperCase()})]}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:W.changesParties(e.journey,e.changes.length,new Set(e.commitments.map(e=>e.party)).size)})]},e.initiative))})}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:`10px 0 0`,fontSize:12},children:[W.startOneFromA,(0,N.jsx)(`span`,{className:`mono`,children:W.atticusInitiativeNewTitle}),`.`]})]}),r?(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 8`},children:[(0,N.jsx)(P,{title:r.title,kind:`hero`,span:`span 8`,meta:r.targetRelease?W.target2(r.targetRelease,r.projectedRelease?W.forecast(r.projectedRelease):``):void 0,children:(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[r.criticalPath.length>0&&(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:W.criticalPath}),r.criticalPath.map((e,t)=>(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[t>0&&(0,N.jsx)(`span`,{"aria-hidden":`true`,children:`›`}),(0,N.jsx)(`span`,{className:`chip`,children:e})]},e))]}),(0,N.jsx)(Oe,{caption:W.planItems,rows:r.items,rowKey:e=>e.key,cols:[{label:W.item,cell:e=>(0,N.jsx)(`span`,{className:e.critical?``:`muted`,children:e.what})},{label:W.party,cell:e=>e.party??``},{label:W.due,cell:e=>e.due,mono:!0},{label:W.forecast2,cell:e=>e.projectedFinish,mono:!0},{label:W.status,cell:e=>(0,N.jsx)(`span`,{className:`chip ${Ly[e.status]??``}`,title:e.why,children:e.status.toUpperCase()})}]})]})}),(0,N.jsx)(P,{title:W.timeline,span:`span 8`,kind:`dark`,children:(0,N.jsx)(Iy,{s:r})}),(0,N.jsxs)(P,{title:W.whoOwesWhat,span:`span 8`,children:[r.commitments.length===0?(0,N.jsx)(`div`,{className:`state`,children:W.noCommitmentsYet}):(0,N.jsx)(Oe,{caption:W.commitments,rows:r.commitments,rowKey:e=>e.id,cols:[{label:W.party,cell:e=>e.party},{label:W.commitment,cell:e=>e.what},{label:W.neededBy,cell:e=>e.neededBy,mono:!0},{label:W.status,cell:e=>(0,N.jsx)(`span`,{className:`chip ${Ly[e.status]??``}`,title:e.why,children:e.status.toUpperCase()})}]}),r.notes.map((e,t)=>(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:e},t))]})]}):null]})}var G=E.phase,zy={blocking:`blocking`,gap:`warn`,risk:`warn`,idea:`dim`};function By(e){let t=j(`/api/changes/${e.id}`),n=j(`/api/changes/${e.id}/status`),r=Ee(),i=jh(),a=()=>{t.reload(),n.reload(),e.reload()},o=(0,N.jsx)(P,{title:e.title,kind:`hero`,meta:e.picker,children:(0,N.jsx)(F,{of:t,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:14},children:[(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`span`,{style:{fontSize:18,fontWeight:600},children:e.title}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[e.id,` · `,e.type,e.handoff?G.handOff(e.handoff.phase,e.handoff.state):``]})]}),(0,N.jsx)(o_,{state:e.state})]})})}),s=(0,N.jsx)(P,{title:G.gate,kind:`dark`,children:(0,N.jsx)(F,{of:n,children:t=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(`p`,{style:{margin:0,lineHeight:1.5},children:t.nextStep}),t.blockers.length>0&&(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,fontSize:12.5,color:`var(--magenta-text)`},children:t.blockers.map((e,t)=>(0,N.jsx)(`li`,{children:e.message},t))}),t.handoff?(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[G.approvalMerge,(0,N.jsx)(fe,{href:t.handoff.pr.url,children:G.pr(t.handoff.pr.number)}),` `,G.onTheGitHost]}):(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:G.approvalRaiseTheHand}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[e.critic&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:r.busy,onClick:()=>void r.run(()=>A(`/api/changes/${e.id}/critic`,{method:`POST`,body:{}}).then(a),i?G.theRuleChecksRan:G.theRuleChecksRan2),children:i?G.runTheCritic:G.runTheRuleChecks}),(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:r.busy,onClick:()=>void r.run(()=>A(`/api/changes/${e.id}/handoff`,{method:`POST`,body:{}}).then(a),G.handOffPrRaised),children:G.raiseHandOff}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:r.busy,onClick:()=>void r.run(()=>A(`/api/changes/${e.id}/sync`,{method:`POST`,body:{}}).then(a),G.syncedWithTheHand),children:G.syncAndMergeWhen})]}),(0,N.jsx)(De,{note:r.note})]})})});return e.part===`hero`?o:s}function Vy(e,t){return e===`error`?!0:e?e.artifacts.some(e=>e.artifact===t):void 0}function Hy({change:e,artifact:t,listed:n,span:r}){let i=j(n?`/api/changes/${e}/artifacts/${t}`:void 0),[a,o]=(0,v.useState)(!1),s=(0,v.useRef)(null),c=(0,v.useRef)(!1);if((0,v.useEffect)(()=>{!a&&c.current&&s.current?.focus(),c.current=a},[a]),a)return(0,N.jsx)(s_,{change:e,artifact:t,onClose:()=>{o(!1),i.reload()}});let l=t[0].toUpperCase()+t.slice(1);if(n===!1)return(0,N.jsx)(P,{title:l,span:r,children:(0,N.jsx)(`div`,{className:`state`,children:G.noSuchArtifact(t)})});let u=i.state===`error`;return(0,N.jsx)(P,{title:l,span:r,meta:u?void 0:(0,N.jsx)(`button`,{ref:s,type:`button`,className:`btn`,onClick:()=>o(!0),children:G.edit}),children:u?(0,N.jsx)(`div`,{className:`state`,children:G.notWrittenYetFor}):(0,N.jsx)(F,{of:i,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`mono muted`,style:{fontSize:11},children:e.path}),(0,N.jsx)(`div`,{tabIndex:0,role:`region`,"aria-label":G.text(t),style:{maxHeight:520,overflowY:`auto`,paddingRight:6},children:(0,N.jsx)(we,{text:e.content})})]})})})}function Uy({change:e,artifacts:t,span:n,rows:r,tick:i=0}){let a=j(`/api/findings?change=${e}&state=open`),[o,s]=(0,v.useState)();M(e=>{(e.type===`file.changed`||e.type===`run.changed`)&&a.reload()}),(0,v.useEffect)(()=>{i&&a.reload()},[i]);let c=a.state===`ready`?a.data.filter(e=>t.some(t=>e.artifact.startsWith(t))):[];return(0,N.jsx)(P,{title:G.criticFindings,span:n,...r?{rows:r}:{},meta:a.state===`ready`?G.open(c.length):void 0,children:(0,N.jsx)(F,{of:a,empty:()=>c.length===0,emptyText:G.noOpenFindingsOn,children:()=>(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},className:`stack`,children:c.map(t=>(0,N.jsxs)(`li`,{style:{borderBottom:`1px solid var(--rule)`,paddingBottom:8},children:[(0,N.jsxs)(`button`,{type:`button`,"aria-expanded":o===t.id,onClick:()=>s(o===t.id?void 0:t.id),style:{all:`unset`,cursor:`pointer`,display:`flex`,flexDirection:`column`,gap:4,width:`100%`},children:[(0,N.jsxs)(`span`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`chip ${zy[t.severity]??``}`,children:t.severity.toUpperCase()}),t.lens&&(0,N.jsx)(`span`,{className:`chip ai`,children:t.lens}),(0,N.jsx)(`span`,{className:`mono muted`,style:{fontSize:10.5},children:t.artifact})]}),(0,N.jsx)(`span`,{style:{fontSize:13},children:t.summary})]}),o===t.id&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8,marginTop:8},children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:t.why}),t.question&&(0,N.jsx)(`p`,{style:{margin:0,fontSize:12.5},children:G.question(t.question.owner?G.for(t.question.owner):``,t.question.text)}),(0,N.jsx)(u_,{change:e,f:t,done:()=>a.reload()})]})]},t.id))})})})}function Wy(){return(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsx)(oh,{})})}function Gy(e){let t=be(e.hash,e.screen),[n,r]=(0,v.useState)(0),i=j(t.id?`/api/changes/${t.id}`:void 0),a=i.state===`ready`?i.data:i.state===`error`?`error`:void 0;if(t.none)return(0,N.jsx)(Wy,{});if(!t.id)return(0,N.jsx)(xe,{list:t.list,title:e.title});let o={id:t.id,title:e.title,picker:t.picker,...e.critic?{critic:e.critic}:{},reload:()=>r(n+1)};return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 8`},children:[(0,N.jsx)(By,{part:`hero`,...o}),e.main?.(t.id),e.artifacts.map(e=>(0,N.jsx)(Hy,{change:t.id,artifact:e,listed:Vy(a,e)},e))]}),(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 4`},children:[(0,N.jsx)(By,{part:`gate`,...o}),(0,N.jsx)(Uy,{change:t.id,artifacts:e.artifacts,tick:n}),e.extra?.(t.id)]})]},t.id)}function Ky({hash:e}){return(0,N.jsx)(Gy,{hash:e,screen:`brief`,title:G.featureBrief,artifacts:[`brief`,`proposal`],critic:`business-critic`})}function qy({hash:e}){return(0,N.jsx)(Gy,{hash:e,screen:`ux`,title:G.prototypesAndUx,artifacts:[`ux`],critic:`ux-critic`,extra:()=>(0,N.jsx)(P,{title:G.bringInAPrototype,span:`span 4`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5,lineHeight:1.6},children:[G.dropADesignExport,(0,N.jsx)(`span`,{className:`mono`,children:G.inputs}),` `,G.fromThe,(0,N.jsx)(`a`,{href:`#/intake`,children:G.intake}),` `,G.screenAtticusReadsThe]})})})}function Jy({change:e}){let t=_e(`drift`,e);return(0,N.jsx)(P,{title:G.designVsPlansVs,span:`span 4`,children:(0,N.jsx)(F,{of:t,children:e=>{let t=e.findings.filter(e=>e.state===`open`);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:e.plans.length?G.repoPlansCompared(e.plans.length):G.noRepoPlansYet}),t.length===0?(0,N.jsx)(`span`,{className:`chip done`,style:{width:`fit-content`},children:G.inSync}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18,lineHeight:1.6,fontSize:12.5},children:t.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`chip ${zy[e.severity]??``}`,children:e.severity.toUpperCase()}),` `,e.summary]},e.id))})]})}})})}function Yy({hash:e}){let t=j(`/api/orgpack`);return(0,N.jsx)(Gy,{hash:e,screen:`arch-review`,title:G.architectureReview,artifacts:[`design`,`interfaces`],critic:`architecture-critic`,extra:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Jy,{change:e}),(0,N.jsx)(P,{title:G.integrationPatterns,span:`span 4`,meta:(0,N.jsx)(`a`,{href:`#/orgpack`,children:G.orgPack}),children:(0,N.jsx)(F,{of:t,empty:e=>!e.patterns?.length,emptyText:G.theOrgPackHas,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[e.patterns.map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{className:`chip`,children:e.code}),(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.name})]},e.code)),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`6px 0 0`,fontSize:11.5},children:G.everyHopInDesign})]})})}),(0,N.jsx)(P,{title:G.yourMaterial,span:`span 4`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5,lineHeight:1.6},children:[G.vendorSpecsWhiteboardPhotos,(0,N.jsx)(`a`,{href:`#/intake`,children:G.intake}),G.diagramsAreComparedEdge,(0,N.jsx)(`a`,{href:`#/reconcile`,children:G.reconcile}),G.ingestedContentIsData]})})]})})}function Xy(e){if(!e)return;if(e===`mappings.md`)return G.readFromMappingsFile;let t=e.replace(/^target-flows\//,``).replace(/\.yaml$/,``);return G.readFromTargetFlow(t)}function Zy({change:e}){let t=j(`/api/changes/${encodeURIComponent(e)}/mappings`);return(0,N.jsx)(P,{title:G.fieldMappings,meta:G.byHopWithThe,children:(0,N.jsx)(F,{of:t,empty:e=>e.hops.length===0,emptyText:G.noHopsInMappings,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:14},children:[e.hops.map(e=>(0,N.jsxs)(`section`,{"aria-label":e.heading,className:`stack`,style:{gap:6},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`h3`,{className:`mono`,style:{margin:0,fontSize:13},children:e.heading}),e.noChange?(0,N.jsx)(`span`,{className:`chip`,children:G.noMappingChange}):(0,N.jsx)(`span`,{className:`chip`,children:G.fields(e.rows.length)})]}),Xy(e.from)&&(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Xy(e.from)}),e.note&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:e.note}),e.rows.length>0&&(0,N.jsx)(Oe,{rows:e.rows,rowKey:e=>String(e.line),caption:G.fieldMappingsFor(e.heading),cols:[{label:G.sourceField,cell:e=>e.source,mono:!0},{label:G.targetField,cell:e=>e.target,mono:!0},{label:G.rule,cell:e=>e.rule},{label:G.whenMissingOrInvalid,cell:e=>e.whenMissing}]}),!e.noChange&&e.rows.length===0&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:G.noFieldRowsYet}),e.asIs.length>0&&(0,N.jsxs)(`details`,{children:[(0,N.jsx)(`summary`,{className:`hud`,style:{fontSize:10,cursor:`pointer`},children:G.mappedTodayInThe(e.asIs.length)}),(0,N.jsx)(Oe,{rows:e.asIs,rowKey:e=>e.id,caption:G.catalogFieldMappingsFor(e.heading),cols:[{label:G.sourceField,cell:e=>e.source,mono:!0},{label:G.targetField,cell:e=>e.target,mono:!0},{label:G.transform,cell:e=>e.transform??``},{label:G.record,cell:e=>e.id,mono:!0}]})]})]},`${e.from??``}#${e.line}`)),e.catalogMappings===0&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:G.theCatalogHasNo})]})})})}function Qy({hash:e}){return(0,N.jsx)(Gy,{hash:e,screen:`mappings`,title:G.apiMappings,artifacts:[`mappings`],critic:`architecture-critic`,main:e=>(0,N.jsx)(Zy,{change:e}),extra:()=>(0,N.jsx)(P,{title:G.howMappingsAreChecked,span:`span 4`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5,lineHeight:1.6},children:[G.eachHopsSourceField,(0,N.jsx)(`a`,{href:`#/trace`,children:G.testTrace}),`.`]})})})}function $y({change:e}){let t=_e(`story-bar`,e);return(0,N.jsx)(P,{title:G.storyBar,span:`span 4`,kind:`dark`,children:(0,N.jsx)(F,{of:t,empty:e=>!e||e.stories.length===0,emptyText:G.noStoriesYetWrite,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(me,{value:e.ready.passed,max:Math.max(e.ready.total,1),size:64,label:G.ofStoriesReady(e.ready.passed,e.ready.total)}),(0,N.jsx)(`span`,{className:`chip ${e.met?`done`:`warn`}`,children:e.met?G.barMet:G.needs(Math.round(e.ready.min*100))})]}),e.stories.filter(e=>!e.ready).map(e=>(0,N.jsxs)(`div`,{style:{fontSize:12.5},children:[(0,N.jsx)(`span`,{className:`mono`,children:e.id}),`: `,e.problems.join(`; `)]},e.id)),e.gaps.filter(e=>!e.covered).map(e=>(0,N.jsx)(`div`,{style:{fontSize:12.5,color:`var(--amber-text)`},children:G.noStoryCovers(e.what)},e.id))]})})})}function eb({change:e}){let t=Ee(),n=jh();return(0,N.jsx)(P,{title:G.storiesAndTasks,span:`span 4`,children:(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:G.theStoryWriterDrafts}),n?(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:t.busy,onClick:()=>void t.run(()=>A(`/api/changes/${e}/runs`,{method:`POST`,body:{agent:`story-writer`,runtime:`hand-off`}}).catch(yt(E.app.forceStories(e))),G.theStoryWritersPrompt),children:G.writeStoriesWithAi}):(0,N.jsx)(`p`,{style:{margin:0,fontSize:12.5},children:Mh}),(0,N.jsx)(De,{note:t.note})]})})}function tb({hash:e}){return(0,N.jsx)(Gy,{hash:e,screen:`breakdown`,title:G.breakdown,artifacts:[`stories`,`tasks`],critic:`story-critic`,extra:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)($y,{change:e}),(0,N.jsx)(eb,{change:e}),(0,N.jsx)(nb,{change:e,span:`span 4`,compact:!0})]})})}function nb({change:e,span:t,compact:n}){let r=j(`/api/changes/${e}/tasks`),i=jh(),[a,o]=(0,v.useState)({}),[s,c]=(0,v.useState)({}),l=(e,t)=>o(n=>({...n,[e]:t})),u=async t=>{c(e=>({...e,[t.id]:!0})),l(t.id,E.app.working);try{let n=await A(`/api/changes/${e}/runs`,{method:`POST`,body:{agent:`task-runner`,task:t.id,runtime:`hand-off`}});l(t.id,`Run ${n.runId} prepared: your assistant takes it from here.`)}catch(e){l(t.id,e instanceof D?e.problem.detail??e.problem.title:String(e))}finally{c(e=>({...e,[t.id]:!1}))}};return(0,N.jsx)(P,{title:n?G.handDownPreview:G.tasksByRepo,span:t,meta:r.state===`ready`?G.tasks(r.data.length):void 0,children:(0,N.jsx)(F,{of:r,empty:e=>e.length===0,emptyText:G.noTasksYetThey,children:e=>{let t=[...new Set(e.map(e=>e.repo))].sort();return(0,N.jsx)(`div`,{className:`stack`,style:{gap:12},children:t.map(t=>{let r=e.filter(e=>e.repo===t),o=r.filter(e=>e.done).length;return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsxs)(`div`,{className:`row between`,children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12.5},children:t}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:G.done(o,r.length)})]}),(0,N.jsx)(he,{value:o,max:r.length,label:G.ofTasksDone(t,o,r.length)}),!n&&r.map(e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4,padding:`6px 0 6px 10px`,borderLeft:`2px solid ${e.done?`var(--green)`:`var(--line-2)`}`},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{style:{fontSize:13},children:[(0,N.jsx)(`span`,{className:`mono muted`,children:e.id}),` `,e.description]}),e.done?(0,N.jsx)(`span`,{className:`chip done`,children:G.done2}):i?(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:s[e.id],onClick:()=>void u(e),children:G.runWithAi}):(0,N.jsx)(`span`,{className:`chip dim`,title:Mh,children:G.byHand})]}),(0,N.jsxs)(`span`,{className:`mono muted`,style:{fontSize:10.5},children:[e.branch,e.story?G.story(e.story):``]}),a[e.id]&&(0,N.jsx)(`span`,{role:`status`,style:{fontSize:12},children:a[e.id]})]},e.id))]},t)})})}})})}function rb({change:e}){let t=j(`/api/changes/${e}/runs`);M(e=>{e.type===`run.changed`&&t.reload()});let n=t.state===`ready`?t.data.filter(e=>e.state===`validated`).length:0;return(0,N.jsx)(P,{title:G.aiTaskRuns,span:`span 4`,kind:`dark`,children:(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:G.noRunsYet,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(me,{value:n,max:e.length,size:60,label:G.ofRunsFinished(n,e.length)}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:G.everyWriteIsApproved})]}),e.slice(-8).map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:11.5},children:e.runId}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.agent,` · `,e.runtime]})]}),(0,N.jsx)(`span`,{className:`chip ${e.errors.length?`blocking`:e.state===`validated`?`done`:e.state===`failed`?`blocking`:``}`,children:e.state.toUpperCase()})]},e.runId))]})})})}function ib({hash:e}){let t=be(e,`tasks`);return t.none?(0,N.jsx)(Wy,{}):t.id?(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:G.taskBoard,span:`1 / -1`,meta:t.picker,children:(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:G.tasksInCrossRepo})}),(0,N.jsx)(nb,{change:t.id,span:`span 8`}),(0,N.jsxs)(`div`,{className:`stack`,style:{gridColumn:`span 4`,gap:16},children:[(0,N.jsx)(rb,{change:t.id}),(0,N.jsx)(Jy,{change:t.id})]})]},t.id):(0,N.jsx)(xe,{list:t.list,title:G.taskBoard})}function ab({hash:e}){let t=be(e,`trace`),n=_e(`trace`,t.id,!t.id),r=j(t.id?`/api/changes/${t.id}/status`:void 0);if(t.none)return(0,N.jsx)(Wy,{});if(!t.id)return(0,N.jsx)(xe,{list:t.list,title:G.testTrace});let i=n.state===`ready`?n.data.rows.filter(e=>e.tests.length>0).length:0,a=n.state===`ready`?n.data.rows.length:0;return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 8`},children:[(0,N.jsxs)(P,{title:G.testTrace,kind:`hero`,meta:t.picker,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 12px`,fontSize:12.5},children:G.everyRequirementShouldReach}),(0,N.jsx)(F,{of:n,empty:e=>e.rows.length===0,emptyText:G.nothingToTraceYet,children:e=>(0,N.jsx)(Oe,{caption:G.requirementToCode,rows:e.rows,rowKey:e=>`${e.requirement?.key??``}/${e.story??``}/${e.criterion?.n??``}`,cols:[{label:G.requirement,cell:e=>e.requirement?(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{children:e.requirement.requirement}),e.requirement.scenario&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e.requirement.scenario})]}):(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`chip warn`,style:{width:`fit-content`},children:G.noRequirement}),e.criterion&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e.criterion.text})]})},{label:G.story2,cell:e=>e.story??(0,N.jsx)(`span`,{className:`chip warn`,children:G.noStory}),mono:!0},{label:G.test,cell:e=>e.tests.length?e.tests.join(`, `):(0,N.jsx)(`span`,{className:`chip blocking`,children:G.noTest}),mono:!0},{label:G.code,cell:e=>e.code.slice(0,3).join(`, `),mono:!0}]})})]}),(0,N.jsx)(P,{title:G.gapsBeforeQaSign,meta:n.state===`ready`?n.data.gaps.length:void 0,children:(0,N.jsx)(F,{of:n,empty:e=>e.gaps.length===0,emptyText:G.noGapsEveryRequirement,children:e=>(0,N.jsx)(Oe,{caption:G.traceGaps,rows:e.gaps,rowKey:e=>`${e.kind}/${e.subject}`,cols:[{label:G.gap,cell:e=>(0,N.jsx)(`span`,{className:`chip warn`,children:e.kind}),width:`190px`},{label:G.what,cell:e=>e.summary}]})})})]}),(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 4`},children:[(0,N.jsx)(P,{title:G.scenarioCoverage,kind:`dark`,children:(0,N.jsx)(F,{of:n,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(me,{value:i,max:Math.max(a,1),size:72,label:G.ofRowsHaveA(i,a),text:a?`${Math.round(i/a*100)}%`:`–`}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12.5},children:G.ofTracedToA(i,a)})]}),(0,N.jsx)(I,{title:G.gapsByKind,parts:[...new Set(e.gaps.map(e=>e.kind))].map((t,n)=>({label:t,value:e.gaps.filter(e=>e.kind===t).length,color:[`var(--amber)`,`var(--magenta)`,`var(--violet)`,`var(--accent)`][n%4]}))})]})})}),(0,N.jsxs)(P,{title:G.testKindsThisChange,children:[(0,N.jsx)(F,{of:r,empty:e=>!e.tests?.required?.length,emptyText:G.theTestStrategyAsks,children:e=>(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[e.tests.required.map(e=>(0,N.jsx)(`span`,{className:`chip`,children:String(e).toUpperCase()},String(e))),e.tests.note&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:e.tests.note})]})}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`10px 0 0`,fontSize:11.5},children:G.requiredKindsComeFrom})]})]})]})}var ob={map:()=>(0,N.jsx)(tt,{}),systems:ht,impact:rt,features:at,orgpack:()=>(0,N.jsx)(ot,{}),intake:()=>(0,N.jsx)(lt,{}),scans:()=>(0,N.jsx)(ut,{}),brief:Ky,ux:qy,"arch-review":Yy,diagrams:Py,reconcile:My,contracts:()=>(0,N.jsx)(Dy,{}),mappings:Qy,breakdown:tb,initiatives:Ry,tasks:ib,trace:ab},sb=E.knowledge.documents,cb=864e5;function lb(e,t){if(!e)return;let n=Math.floor((t-Date.parse(e))/cb);return Number.isFinite(n)?sb.age(Math.max(0,n)):void 0}function ub(e,t){let n=t.text.trim().toLowerCase();return e.filter(e=>(!t.kind||e.kind===t.kind)&&(!t.system||e.systems.includes(t.system))&&(!n||e.path.toLowerCase().includes(n)||(e.title??``).toLowerCase().includes(n)))}function db({d:e,now:t}){let n=lb(e.modifiedAt,t),r=e.items.filter(e=>e.verified).length;return(0,N.jsxs)(`article`,{className:`list-row`,style:{display:`block`},"aria-label":e.path,children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsx)(`span`,{className:`mono`,style:{wordBreak:`break-all`},children:e.path}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`chip`,children:sb.kinds[e.kind]??e.kind}),(0,N.jsx)(`span`,{className:`chip ${e.state===`read`?``:`warn`}`,children:sb.states[e.state]}),e.inbox&&(0,N.jsx)(`span`,{className:`chip`,children:sb.inbox})]})]}),e.title&&e.title!==e.path&&(0,N.jsx)(`p`,{style:{margin:`4px 0 0`},children:e.title}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`4px 0 0`,fontSize:12.5},children:[e.systems.length?sb.systems(e.systems.join(`, `)):sb.noSystems,n,e.items.length?sb.items(e.items.length,r):void 0].filter(Boolean).join(` · `)}),e.reason&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:`4px 0 0`,fontSize:12.5},children:sb.why(e.reason)}),e.supersededBy&&!e.reason&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:`4px 0 0`,fontSize:12.5},children:sb.newer(e.supersededBy)}),e.duplicateOf&&!e.reason&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:`4px 0 0`,fontSize:12.5},children:sb.duplicate(e.duplicateOf)}),e.items.length>0&&(0,N.jsx)(`ul`,{style:{margin:`6px 0 0`,paddingLeft:18},children:e.items.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{href:`#/knowledge?q=${encodeURIComponent(e.id)}`,children:e.title}),e.verified?` (${sb.verified})`:``]},e.id))})]})}function fb(e){let[t,n]=(0,v.useState)(``),[r,i]=(0,v.useState)(``),[a,o]=(0,v.useState)(``),s=e.now??Date.now(),c=e.data.documents,l=[...new Set(c.map(e=>e.kind))].sort(),u=[...new Set(c.flatMap(e=>e.systems))].sort(),d=ub(c,{kind:t,system:r,text:a}),f=!!(t||r||a.trim()),p=c.filter(e=>e.state===`read`).length;return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:e.data.snapshot?sb.synced(e.data.snapshot.date,p,c.length):sb.neverSynced}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsx)(Lh,{id:`documents-filter`,value:a,onChange:o,grow:!0}),(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:sb.kindLabel}),(0,N.jsxs)(`select`,{id:`documents-kind`,className:`field`,value:t,onChange:e=>n(e.target.value),children:[(0,N.jsx)(`option`,{value:``,children:sb.anyKind}),l.map(e=>(0,N.jsx)(`option`,{value:e,children:sb.kinds[e]??e},e))]})]}),(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:sb.systemLabel}),(0,N.jsxs)(`select`,{id:`documents-system`,className:`field`,value:r,onChange:e=>i(e.target.value),children:[(0,N.jsx)(`option`,{value:``,children:sb.anySystem}),u.map(e=>(0,N.jsx)(`option`,{value:e,children:e},e))]})]})]}),(0,N.jsx)(Rh,{shown:d.length,total:c.length,active:f}),d.length===0?(0,N.jsx)(zh,{what:sb.filtered,onClear:()=>{n(``),i(``),o(``)},focus:`documents-filter`}):(0,N.jsx)(`div`,{className:`stack`,style:{gap:6},children:d.map(e=>(0,N.jsx)(db,{d:e,now:s},e.path))})]})}var pb=e=>{let t=``,n=new Uint8Array(e);for(let e=0;e<n.length;e+=32768)t+=String.fromCharCode(...n.subarray(e,e+32768));return btoa(t)};function mb(){let e=j(`/api/knowledge/documents`);se(e);let t=Ee(),n=Ee();return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(P,{title:sb.title,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 8px`,maxWidth:`70ch`},children:sb.intro}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`label`,{className:`btn`,htmlFor:`documents-add`,children:n.busy?sb.adding:sb.add}),(0,N.jsx)(`input`,{id:`documents-add`,type:`file`,multiple:!0,className:`sr`,disabled:n.busy,onChange:t=>{let r=[...t.target.files??[]];t.target.value=``,r.length&&n.run(async()=>{for(let e of r)await A(`/api/knowledge/documents`,{method:`POST`,body:{name:e.name,content:pb(await e.arrayBuffer())}});e.reload()},sb.added(r.length))}}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:t.busy,onClick:()=>void t.run(async()=>{await A(`/api/knowledge/sources/inputs/sync`,{method:`POST`}),e.reload()},sb.syncedNow),children:t.busy?sb.syncing:sb.sync})]}),(0,N.jsx)(De,{note:n.note}),(0,N.jsx)(De,{note:t.note})]}),(0,N.jsx)(P,{title:sb.listTitle,children:(0,N.jsx)(F,{of:e,empty:e=>e.documents.length===0,emptyText:sb.empty,children:e=>(0,N.jsx)(fb,{data:e})})}),(0,N.jsx)(P,{title:sb.readTitle,children:(0,N.jsx)(ag,{command:`atticus knowledge scan --source inputs`,slash:`/atticus-knowledge inputs`,why:sb.readWhy})})]})}var hb=E.knowledge,K=hb.items;function gb(e,t){if(!t)return{};let n=e.find(e=>e.id===t);return n?{item:n}:{missing:t}}function _b(){let e=(0,v.useRef)(null);return(0,v.useEffect)(()=>{e.current?.querySelector(`input, textarea, select`)?.focus()},[]),e}var vb=[`decision`,`stance`];function yb(e){let t=e.screen??`knowledge`;return(0,N.jsx)(F,{of:e.of,empty:e=>e.items.length===0,emptyContent:(0,N.jsx)(og,{text:K.empty}),children:n=>{let r=n.items.filter(t=>(!e.kind||t.kind===e.kind)&&mg(t,e.text)),i=hg(r,hb.groups);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(sh,{list:n.problems}),(0,N.jsx)(`p`,{className:`hud`,style:{fontSize:10,margin:`0 0 6px`},"aria-live":`polite`,children:K.count(r.length)}),i.length===0&&(e.onClear?(0,N.jsx)(zh,{what:Ih({text:e.text,...e.kind?{kind:$h(e.kind)}:{}}),onClear:e.onClear,focus:`item-find`}):(0,N.jsx)(`div`,{className:`state`,children:K.noMatch})),i.map(n=>(0,N.jsxs)(`section`,{"aria-label":n.title,style:{marginBottom:10},children:[(0,N.jsx)(`h3`,{className:`hud`,style:{fontSize:11,margin:`6px 0`},children:`${n.title} (${n.items.length})`}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:n.items.map(n=>(0,N.jsxs)(`li`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`a`,{href:`#/${t}?item=${encodeURIComponent(n.id)}`,"aria-current":n.id===e.current?`true`:void 0,children:n.title}),(0,N.jsxs)(`span`,{className:`muted mono`,style:{fontSize:11},children:[$h(n.kind),` · `,n.id]})]}),(0,N.jsx)(ig,{review:n.review})]},n.id))})]},n.title))]})}})}function bb(e){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:e.id,className:`hud`,style:{fontSize:10},children:e.label}),(0,N.jsx)(`input`,{id:e.id,className:`field`,value:e.value,onChange:t=>e.onChange(t.target.value)})]})}function xb(e){return(0,N.jsxs)(`fieldset`,{className:`stack`,style:{gap:4,border:0,padding:0,margin:0},children:[(0,N.jsx)(`legend`,{className:`hud`,style:{fontSize:10},children:e.label}),e.value.map((t,n)=>(0,N.jsxs)(`div`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`input`,{className:`field`,"aria-label":`${e.label}: ${K.item(n+1)}`,value:t,onChange:t=>e.onChange(e.value.map((e,r)=>r===n?t.target.value:e))}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-label":`${K.remove} ${e.label}: ${K.item(n+1)}`,onClick:()=>e.onChange(e.value.filter((e,t)=>t!==n)),children:K.remove})]},n)),(0,N.jsx)(`div`,{children:(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-label":`${K.addValue}: ${e.label}`,onClick:()=>e.onChange([...e.value,``]),children:K.addValue})})]})}function Sb(e){let t=(t,n)=>e.onChange(e.value.map((e,r)=>r===t?{...e,...n}:e));return(0,N.jsxs)(`fieldset`,{className:`stack`,style:{gap:4,border:0,padding:0,margin:0},children:[(0,N.jsx)(`legend`,{className:`hud`,style:{fontSize:10},children:e.label}),e.value.map((n,r)=>(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`input`,{className:`field`,style:{flex:`1 1 120px`},"aria-label":`${K.link(r+1)}: ${K.linkLabel}`,placeholder:K.linkLabel,value:n.label??``,onChange:e=>t(r,{label:e.target.value})}),(0,N.jsx)(`input`,{className:`field`,style:{flex:`2 1 220px`},"aria-label":`${K.link(r+1)}: ${K.linkUrl}`,placeholder:K.linkUrl,value:n.url,onChange:e=>t(r,{url:e.target.value})}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-label":`${K.remove} ${K.link(r+1)}`,onClick:()=>e.onChange(e.value.filter((e,t)=>t!==r)),children:K.remove})]},r)),(0,N.jsx)(`div`,{children:(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-label":`${K.addValue}: ${e.label}`,onClick:()=>e.onChange([...e.value,{url:``,label:``}]),children:K.addValue})})]})}function Cb(e){let[t,n]=(0,v.useState)(()=>gg(e.item)),[r,i]=(0,v.useState)(),a=(e,t)=>n(n=>({...n,[e]:t})),o=n=>{n.preventDefault();let r=vg(e.item,t);`error`in r?i(r.error):(i(void 0),e.onSave(r.set))},s=`fix-${e.item.id}`,c=_b();return(0,N.jsxs)(`form`,{ref:c,onSubmit:o,onKeyDown:ue(e.onCancel),className:`stack`,style:{gap:10},"aria-label":K.correct,children:[(0,N.jsx)(`p`,{className:`work-say`,children:K.correctIntro}),Object.entries(e.item.fields).map(([e,n])=>n===`text`?(0,N.jsx)(bb,{id:`${s}-${e}`,label:eg(e),value:t[e],onChange:t=>a(e,t)},e):n===`list`?(0,N.jsx)(xb,{id:`${s}-${e}`,label:eg(e),value:t[e],onChange:t=>a(e,t)},e):(0,N.jsx)(Sb,{id:`${s}-${e}`,label:eg(e),value:t[e],onChange:t=>a(e,t)},e)),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:e.busy,children:e.busy?K.saving:K.save}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:e.onCancel,children:K.cancel})]}),r&&(0,N.jsx)(`p`,{role:`alert`,style:{margin:0,color:`var(--magenta-text)`,fontSize:12.5},children:r})]})}function wb(e){let[t,n]=(0,v.useState)(``),[r,i]=(0,v.useState)(),a=_b();return(0,N.jsxs)(`form`,{ref:a,className:`stack`,style:{gap:8},"aria-label":K.reject,onKeyDown:ue(e.onCancel),onSubmit:n=>{n.preventDefault(),t.trim()?e.onSave(t.trim()):(i(K.needWhy),document.getElementById(`reject-why`)?.focus())},children:[(0,N.jsx)(`label`,{htmlFor:`reject-why`,className:`hud`,style:{fontSize:10},children:K.rejectWhy}),(0,N.jsx)(`textarea`,{id:`reject-why`,className:`field`,"aria-describedby":r?`reject-why-err`:void 0,"aria-invalid":r?!0:void 0,rows:3,value:t,onChange:e=>n(e.target.value)}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn danger`,disabled:e.busy,children:e.busy?K.saving:K.rejectSave}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:e.onCancel,children:K.cancel})]}),r&&(0,N.jsx)(`p`,{id:`reject-why-err`,role:`alert`,style:{margin:0,color:`var(--magenta-text)`,fontSize:12.5},children:r})]})}function Tb(e){let t=e.item,n=t.record,r=[...Object.keys(t.fields).filter(e=>e!==`urls`),...vb].filter(e=>pg(n[e])!==``),i=dg(n),a=lg(n),o=(t,n)=>e.onReview?.(t,n),s=(0,v.useRef)(null),c=(0,v.useRef)(null),l=(0,v.useRef)(null),u=(0,v.useRef)(void 0);return(0,v.useEffect)(()=>{if(e.mode||e.busy||!u.current)return;let t={verify:s,correct:c,reject:l}[u.current];u.current=void 0,t.current?.focus()},[e.mode,e.busy]),(0,N.jsxs)(`article`,{className:`stack`,style:{gap:10},"aria-labelledby":`item-${t.id}`,children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsx)(`h3`,{id:`item-${t.id}`,className:`n`,style:{fontSize:18,margin:0},children:t.title}),(0,N.jsx)(ig,{review:t.review})]}),(0,N.jsxs)(`p`,{className:`muted mono`,style:{margin:0,fontSize:11.5},children:[$h(t.kind),` · `,t.id]}),t.review?.note&&(0,N.jsxs)(`p`,{style:{margin:0},children:[(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[hb.review.because,`:`]}),` `,t.review.note]}),t.review?.corrected?.length?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:hb.review.correctedFields(t.review.corrected.map(eg).join(`, `))}):null,t.conflict&&!t.conflicts?.length&&(0,N.jsx)(`p`,{role:`note`,className:`chip warn`,style:{margin:0},children:K.conflict}),t.conflicts?.length?(0,N.jsxs)(`section`,{"aria-label":E.knowledgeConflicts.title,children:[(0,N.jsx)(`p`,{role:`note`,className:`chip warn`,style:{margin:`0 0 6px`},children:E.knowledgeConflicts.title}),(0,N.jsx)(sg,{conflicts:t.conflicts})]}):null,(0,N.jsx)(`dl`,{className:`run-facts`,style:{margin:0},children:r.map(e=>(0,N.jsxs)(`div`,{style:{display:`contents`},children:[(0,N.jsx)(`dt`,{children:eg(e)}),(0,N.jsx)(`dd`,{children:Array.isArray(n[e])&&t.fields[e]===`list`?(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:n[e].map((e,t)=>(0,N.jsx)(`li`,{children:String(e)},t))}):pg(n[e])})]},e))}),i&&(0,N.jsxs)(`figure`,{style:{margin:0},children:[(0,N.jsx)(`figcaption`,{className:`hud`,style:{fontSize:10},children:K.quote}),(0,N.jsx)(`blockquote`,{style:{margin:`4px 0`,paddingLeft:10,borderLeft:`2px solid var(--line-2)`},children:i}),a&&(0,N.jsx)(`p`,{className:`muted mono`,style:{margin:0,fontSize:11.5},children:a})]}),(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:K.links}),fg(n).length?(0,N.jsx)(cg,{urls:fg(n)}):(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:K.noLinks})]}),e.onReview&&!e.mode&&(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,ref:s,disabled:e.busy,onClick:()=>{u.current=`verify`,o({verdict:`verified`},K.verified(t.id))},children:K.verify}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,ref:c,disabled:e.busy||Object.keys(t.fields).length===0,onClick:()=>{u.current=`correct`,e.onMode?.(`correct`)},children:K.correct}),(0,N.jsx)(`button`,{type:`button`,className:`btn danger`,ref:l,disabled:e.busy,onClick:()=>{u.current=`reject`,e.onMode?.(`reject`)},children:K.reject})]}),e.mode===`correct`&&(0,N.jsx)(Cb,{item:t,busy:e.busy,onCancel:()=>e.onMode?.(void 0),onSave:e=>o({verdict:`corrected`,set:e},K.corrected(t.id))}),e.mode===`reject`&&(0,N.jsx)(wb,{busy:e.busy,onCancel:()=>e.onMode?.(void 0),onSave:e=>o({verdict:`rejected`,note:e},K.rejected(t.id))}),(0,N.jsx)(`span`,{className:`sr`,"aria-live":`polite`,children:ng(t.review)})]})}function Eb(e){return(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,marginBottom:10},role:`search`,children:[(0,N.jsx)(Lh,{id:`item-find`,value:e.text,onChange:e.onText,grow:!0}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`item-kind`,className:`hud`,style:{fontSize:10},children:K.kind}),(0,N.jsxs)(`select`,{id:`item-kind`,className:`field`,value:e.kind,onChange:t=>e.onKind(t.target.value),children:[(0,N.jsx)(`option`,{value:``,children:K.allKinds}),Object.keys(hb.kinds).map(e=>(0,N.jsx)(`option`,{value:e,children:$h(e)},e))]})]})]})}function Db(e){return e.filter(e=>!e.review||e.review.state===`stale`)}function Ob(e,t,n){if(!e.length)return;let r=e.findIndex(e=>e.id===t);return r<0?e[0].id:e[Math.min(e.length-1,Math.max(0,r+n))].id}function kb(e){return{j:`next`,ArrowDown:`next`,k:`prev`,ArrowUp:`prev`,v:`verify`,c:`correct`,r:`reject`}[e]}var Ab=e=>`#/knowledge?item=${encodeURIComponent(e)}`;function jb({hash:e}){let t=j(`/api/knowledge/items`),n=ve(e,`item`),[r,i]=(0,v.useState)(``),[a,o]=(0,v.useState)(ve(e,`kind`)??``),[s,c]=(0,v.useState)(),[l,u]=(0,v.useState)(!1),[d,f]=(0,v.useState)(),[p,m]=(0,v.useState)(!1);(0,v.useEffect)(()=>f(void 0),[n]),M(e=>{e.type===`file.changed`&&t.reload()});let{item:h,missing:g}=t.state===`ready`?gb(t.data.items,n):{},_=t.state===`ready`?Db(t.data.items):[],y=e=>{e&&(window.location.hash=Ab(e))},b=(e,n)=>{if(!h)return;let r=p?Ob(_,h.id,1):void 0;u(!0),f({ok:!0,text:E.app.working,working:!0}),A(`/api/knowledge/items/${encodeURIComponent(h.id)}/review`,{method:`POST`,body:e}).then(()=>{f({ok:!0,text:n}),c(void 0),t.reload(),r&&r!==h.id&&y(r)}).catch(e=>f({ok:!1,text:Te(e)})).finally(()=>u(!1))};return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(P,{title:hb.nav.items,span:`span 5`,children:[(0,N.jsxs)(`p`,{className:`work-say`,style:{marginTop:0},children:[K.intro,` `,(0,N.jsx)(Bh,{q:`knowledge`,label:E.runs.knowledge})]}),(0,N.jsx)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,marginBottom:8},children:(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-pressed":p,disabled:!p&&_.length===0,onClick:()=>{let e=!p;m(e),e&&!_.some(e=>e.id===n)&&y(Ob(_,n,1))},children:p?K.reviewStop:K.reviewStart(_.length)})}),(0,N.jsx)(Eb,{text:r,kind:a,onText:i,onKind:o}),(0,N.jsx)(yb,{of:t,text:r,kind:a,current:n,onClear:()=>{i(``),o(``)}})]}),(0,N.jsx)(P,{title:h?.title??K.open,span:`span 7`,labelledBy:`item-detail`,children:h?(0,N.jsxs)(`div`,{tabIndex:p?0:void 0,role:p?`group`:void 0,"aria-label":p?K.reviewStop:void 0,"aria-keyshortcuts":p?`j k v c r`:void 0,onKeyDown:e=>{if(!p||s||l)return;let t=e.target;if(/^(INPUT|TEXTAREA|SELECT)$/.test(t.tagName))return;let n=kb(e.key);n&&(e.preventDefault(),n===`next`||n===`prev`?y(Ob(_,h.id,n===`next`?1:-1)):n===`verify`?b({verdict:`verified`},K.verified(h.id)):c({id:h.id,mode:n}))},children:[p&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 8px`,fontSize:12.5},children:K.reviewKeys(_.length)}),(0,N.jsx)(Tb,{item:h,onReview:b,busy:l,mode:s?.id===h.id?s.mode:void 0,onMode:e=>c(e?{id:h.id,mode:e}:void 0)},h.id),(0,N.jsx)(De,{note:d})]}):(0,N.jsx)(`div`,{className:`state`,children:g?K.missing(g):K.pick})})]})}var Mb=E.knowledge.orgpack,Nb=e=>e.filter(e=>e.verified).map(e=>e.from);function Pb(e){if(e.action===`add`)return`${e.system.boundary}${e.system.owner?`, ${e.system.owner}`:``}${e.system.aliases.length?`, ${e.system.aliases.join(`, `)}`:``}`;let t=[e.adds?.aliases?.length?e.adds.aliases.join(`, `):``,e.adds?.owner?e.adds.owner:``].filter(Boolean).join(`; `);return Mb.gains(t)}function Fb(e){let t=e.d,[n,r]=(0,v.useState)(()=>Nb(t.proposals)),[i,a]=(0,v.useState)(),o=(e,t)=>r(n=>t?[...new Set([...n,e])]:n.filter(t=>t!==e));return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy,onClick:()=>e.onDraft?.(t.platform),children:e.busy?Mb.drafting:Mb.draft}),t.at&&(0,N.jsx)(`span`,{className:`hud`,children:Mb.at(t.at.slice(0,10))})]}),(0,N.jsx)(`p`,{className:`work-say`,children:Mb.command}),(0,N.jsx)(th,{text:t.command,label:E.knowledge.ai.copy}),t.present?t.proposals.length===0?(0,N.jsx)(`div`,{className:`state`,children:Mb.nothing}):(0,N.jsxs)(`form`,{onSubmit:r=>{r.preventDefault(),n.length?(a(void 0),e.onAccept?.(t.platform,n)):a(Mb.pickOne)},children:[(0,N.jsxs)(`fieldset`,{style:{border:0,padding:0,margin:0},children:[(0,N.jsx)(`legend`,{className:`sr`,children:t.platform}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:t.proposals.map(e=>(0,N.jsxs)(`li`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`label`,{className:`row`,style:{gap:8,alignItems:`flex-start`},children:[(0,N.jsx)(`input`,{type:`checkbox`,"aria-label":Mb.pick(e.system.name),checked:n.includes(e.from),onChange:t=>o(e.from,t.target.checked)}),(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsxs)(`span`,{children:[(0,N.jsx)(`span`,{className:`chip dim`,children:e.action===`add`?Mb.add:Mb.update}),` `,(0,N.jsx)(`strong`,{children:e.system.name}),` `,(0,N.jsx)(`span`,{className:`muted mono`,style:{fontSize:11},children:e.system.id})]}),(0,N.jsx)(`span`,{style:{fontSize:12},children:Pb(e)}),e.quote&&(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[`"`,e.quote,`" (`,e.page?`${ug(e.page)}, `:``,(0,N.jsx)(`a`,{href:`#/knowledge?item=${encodeURIComponent(e.from)}`,children:e.from}),`)`]}),e.notes.map(e=>(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:e},e))]})]}),(0,N.jsx)(`span`,{className:`chip ${e.verified?`done`:`warn`}`,children:e.verified?Mb.verified(e.verifiedBy??``):Mb.unverified})]},e.from))})]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:e.busy,style:{marginTop:8},children:e.busy?Mb.accepting:Mb.accept}),i&&(0,N.jsx)(`p`,{role:`alert`,style:{margin:`6px 0 0`,color:`var(--magenta-text)`,fontSize:12.5},children:i})]}):(0,N.jsx)(`div`,{className:`state`,children:Mb.noDraft})]})}function Ib(e){return(0,N.jsx)(F,{of:e.of,empty:e=>e.platforms.length===0,emptyText:Mb.empty,children:t=>(0,N.jsx)(`div`,{className:`bento`,children:t.platforms.map(t=>(0,N.jsx)(P,{title:t.platform,span:`1 / -1`,children:(0,N.jsx)(Fb,{d:t,onDraft:e.onDraft,onAccept:e.onAccept,busy:e.busy},`${t.platform}:${t.at??``}:${t.proposals.length}`)},t.platform))})})}function Lb(){let e=j(`/api/orgpack/draft`),[t,n]=(0,v.useState)(!1),[r,i]=(0,v.useState)(),a=(0,v.useRef)(null);M(t=>{t.type===`file.changed`&&e.reload()});let o=t=>{n(!0),i({ok:!0,text:E.app.working,working:!0}),t().then(e=>i({ok:!0,text:e})).catch(e=>i({ok:!1,text:Te(e)})).finally(()=>{n(!1),e.reload(),a.current?.focus()})};return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:Mb.intro}),(0,N.jsx)(`div`,{ref:a,tabIndex:-1,children:(0,N.jsx)(De,{note:r})}),(0,N.jsx)(Ib,{of:e,busy:t,onDraft:e=>o(async()=>{let t=(await A(`/api/orgpack/draft`,{method:`POST`,body:{platform:e}})).platforms.find(t=>t.platform===e)?.proposals.length??0;return t?Mb.drafted(t):Mb.nothing}),onAccept:(e,t)=>o(async()=>{let n=await A(`/api/orgpack/draft/${encodeURIComponent(e)}/accept`,{method:`POST`,body:{only:t}});return Mb.accepted(n.added.length,n.updated.length,n.file)})})]})}var Rb=E.knowledge,zb=Rb.parties,Bb=e=>Array.isArray(e)?e.map(String):[],Vb=e=>typeof e==`string`&&e?e:void 0,Hb=e=>e.trim().toLowerCase(),Ub=e=>new Set([e.id,e.title,...Bb(e.record.aliases)].map(Hb));function Wb(e){let t=e.filter(e=>e.kind===`product`||e.kind===`project`),n=e=>{let n=Ub(e),r=e=>!!Vb(e)&&n.has(Hb(Vb(e))),i=(e,t)=>{let n=new Set(e.map(Hb));return[...e,...t.filter(e=>!n.has(Hb(e))&&n.add(Hb(e)))]},a=e.record,o=e.kind===`team`||e.kind===`vendor`;return{item:e,aliases:Bb(a.aliases),responsibilities:Bb(a.responsibilities),owns:o?i(Bb(a.owns),t.filter(t=>r(t.record.ownedBy)||e.kind===`vendor`&&r(t.record.vendor)).map(e=>e.title)):[],uses:o?i(Bb(a.uses),t.filter(e=>Bb(e.record.usedBy).some(e=>r(e))).map(e=>e.title)):[],...Vb(a.ownedBy)?{ownedBy:Vb(a.ownedBy)}:{},usedBy:Bb(a.usedBy),...Vb(a.vendor)?{vendor:Vb(a.vendor)}:{}}},r=t=>e.filter(e=>t.includes(e.kind)).map(n).sort((e,t)=>e.item.title.localeCompare(t.item.title));return{teams:r([`team`]),vendors:r([`vendor`]),products:r([`product`,`project`])}}function Gb({label:e,names:t}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`dt`,{children:e}),(0,N.jsx)(`dd`,{children:t.length?t.join(`, `):(0,N.jsx)(`span`,{className:`muted`,children:zb.none})})]})}function Kb({v:e}){let t=e.item,n=t.kind===`product`||t.kind===`project`;return(0,N.jsxs)(`li`,{className:`list-row`,style:{display:`block`},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsxs)(`span`,{children:[(0,N.jsx)(`a`,{href:`#/knowledge?item=${encodeURIComponent(t.id)}`,title:zb.review,children:(0,N.jsx)(`strong`,{children:t.title})}),` `,(0,N.jsxs)(`span`,{className:`muted mono`,style:{fontSize:11},children:[$h(t.kind),` · `,t.id]})]}),(0,N.jsx)(ig,{review:t.review})]}),(0,N.jsxs)(`dl`,{className:`run-facts`,style:{margin:`6px 0 0`},children:[e.aliases.length>0&&(0,N.jsx)(Gb,{label:zb.aliases,names:e.aliases}),e.responsibilities.length>0&&(0,N.jsx)(Gb,{label:zb.responsibilities,names:e.responsibilities}),n?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Gb,{label:zb.ownedBy,names:e.ownedBy?[e.ownedBy]:[]}),(0,N.jsx)(Gb,{label:zb.usedBy,names:e.usedBy}),e.vendor&&(0,N.jsx)(Gb,{label:Rb.fields.vendor,names:[e.vendor]})]}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Gb,{label:zb.owns,names:e.owns}),(0,N.jsx)(Gb,{label:zb.uses,names:e.uses})]})]}),(0,N.jsx)(cg,{urls:fg(t.record)})]})}function qb({title:e,list:t}){return(0,N.jsx)(P,{title:`${e} (${t.length})`,span:`span 4`,children:t.length===0?(0,N.jsx)(`div`,{className:`state`,children:zb.none}):(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:t.map(e=>(0,N.jsx)(Kb,{v:e},e.item.id))})})}function Jb({of:e}){return(0,N.jsx)(F,{of:e,empty:e=>!e.items.some(e=>[`team`,`vendor`,`product`,`project`].includes(e.kind)),emptyContent:(0,N.jsx)(P,{title:Rb.nav.parties,children:(0,N.jsx)(og,{text:zb.empty})}),children:e=>{let t=Wb(e.items.filter(e=>e.review?.state!==`rejected`));return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(qb,{title:zb.teams,list:t.teams}),(0,N.jsx)(qb,{title:zb.vendors,list:t.vendors}),(0,N.jsx)(qb,{title:zb.products,list:t.products})]})}})}function Yb(){let e=j(`/api/knowledge/items`);return M(t=>{t.type===`file.changed`&&e.reload()}),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:zb.intro}),(0,N.jsx)(Jb,{of:e})]})}var Xb=E.knowledge,Zb=Xb.search,Qb=(e,t)=>{let n=new URLSearchParams;e&&n.set(`q`,e),t&&n.set(`find`,t);let r=n.toString();return`#/wiki-search${r?`?${r}`:``}`};function $b({of:e}){return(0,N.jsx)(F,{of:e,children:e=>e.sources===0?(0,N.jsx)(`div`,{className:`state`,children:Zb.noSnapshot}):e.matches.length===0?(0,N.jsx)(`div`,{className:`state`,children:Zb.none(e.phrase)}):(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(`p`,{style:{margin:0},"aria-live":`polite`,children:Zb.found(e.matches.length,e.pages.length)}),e.pages.map(t=>(0,N.jsxs)(`section`,{"aria-label":t,children:[(0,N.jsx)(`h3`,{className:`mono`,style:{fontSize:12.5,margin:`4px 0`},children:t}),(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:e.matches.filter(e=>`${e.source}/${e.page}`===t).map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:`${e.section||t} · ${e.line}`}),(0,N.jsx)(`div`,{style:{color:`var(--text-2)`},children:e.excerpt})]},`${e.section}:${e.line}`))})]},t)),(0,N.jsx)(ag,{command:e.command,slash:e.slash,why:Zb.next,runs:{q:`knowledge`,label:E.runs.knowledge}})]})})}function ex(e){return(0,N.jsx)(F,{of:e.of,empty:e=>e.finds.length===0,emptyText:Zb.noSaved,children:t=>(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:t.finds.map(t=>(0,N.jsxs)(`li`,{className:`list-row`,children:[(0,N.jsx)(`a`,{href:Qb(e.q??``,t.slug),"aria-current":t.slug===e.current?`true`:void 0,children:t.phrase}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[Zb.candidates(t.candidates.length,t.candidates.filter(e=>e.kept).length),` ·`,` `,t.at.slice(0,10)]})]},t.slug))})})}function tx(e){let t=e.c,[n,r]=(0,v.useState)(t.kind),i=(0,v.useRef)(null),a=(0,v.useRef)(!!t.kept);(0,v.useEffect)(()=>{t.kept&&!a.current&&i.current?.focus(),a.current=!!t.kept},[t.kept]);let o=lg(t.record),s=dg(t.record);return(0,N.jsxs)(`li`,{ref:i,tabIndex:-1,className:`list-row`,style:{display:`block`},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsxs)(`span`,{children:[(0,N.jsx)(`strong`,{children:t.title}),` `,(0,N.jsxs)(`span`,{className:`muted mono`,style:{fontSize:11},children:[$h(t.kind),` · `,t.id]})]}),(0,N.jsx)(`span`,{className:`chip ${t.kept?`done`:t.known?`dim`:`ai`}`,children:t.kept?Zb.kept($h(t.kept.as),t.kept.by):t.known?Zb.known(t.known):Zb.fresh})]}),s&&(0,N.jsx)(`blockquote`,{style:{margin:`4px 0`,paddingLeft:10,borderLeft:`2px solid var(--line-2)`},children:s}),o&&(0,N.jsx)(`p`,{className:`muted mono`,style:{margin:0,fontSize:11},children:o}),(0,N.jsx)(cg,{urls:fg(t.record)}),!t.known&&!t.kept&&e.onKeep&&(0,N.jsxs)(`form`,{className:`row`,style:{gap:8,marginTop:6},onSubmit:r=>{r.preventDefault(),e.onKeep?.(t.id,n)},children:[(0,N.jsx)(`label`,{htmlFor:`keep-${t.id}`,className:`hud`,style:{fontSize:10},children:Zb.keepAs}),(0,N.jsx)(`select`,{id:`keep-${t.id}`,className:`field`,value:n,onChange:e=>r(e.target.value),children:t.keepAs.map(e=>(0,N.jsx)(`option`,{value:e,children:$h(e)},e))}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:e.busy,"aria-label":Zb.keepOf(t.title),children:e.keeping===t.id?Zb.keeping:Zb.keep})]})]})}function nx(e){return(0,N.jsx)(F,{of:e.of,children:t=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsxs)(`p`,{className:`muted mono`,style:{margin:0,fontSize:11.5},children:[t.file,` · `,t.at.slice(0,10)]}),(0,N.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0},children:t.candidates.map(t=>(0,N.jsx)(tx,{c:t,onKeep:e.onKeep,busy:e.busy,keeping:e.keeping},t.id))})]})})}function rx({hash:e}){let t=ve(e,`q`)??``,n=ve(e,`find`),[r,i]=(0,v.useState)(t);(0,v.useEffect)(()=>i(t),[t]);let a=j(t?`/api/knowledge/search?q=${encodeURIComponent(t)}`:void 0),o=j(`/api/knowledge/finds`),s=j(n?`/api/knowledge/finds/${encodeURIComponent(n)}`:void 0),[c,l]=(0,v.useState)(),u=c!==void 0,[d,f]=(0,v.useState)();(0,v.useEffect)(()=>f(void 0),[n]),M(e=>{e.type===`file.changed`&&(o.reload(),s.reload())});let[p,m]=(0,v.useState)(!1);return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(P,{title:Xb.nav.search,span:`span 7`,children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:Zb.intro}),(0,N.jsxs)(`form`,{role:`search`,className:`row`,style:{gap:8,marginBottom:12},onSubmit:e=>{if(e.preventDefault(),!r.trim()){m(!0);return}m(!1);let t=Qb(r.trim(),n);location.hash===t?a.reload():location.hash=t},children:[(0,N.jsx)(`label`,{htmlFor:`wiki-q`,className:`sr`,children:Zb.label}),(0,N.jsx)(`input`,{id:`wiki-q`,className:`field`,style:{flex:1},value:r,placeholder:Zb.placeholder,"aria-describedby":p?`wiki-q-blank`:void 0,onChange:e=>{i(e.target.value),m(!1)}}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,children:Zb.go})]}),p&&(0,N.jsx)(`p`,{id:`wiki-q-blank`,role:`alert`,className:`run-note bad`,style:{marginTop:-4},children:Zb.needText}),(0,N.jsx)(`p`,{role:`status`,className:`muted`,style:{margin:`0 0 6px`,fontSize:12},children:a.refreshing?Zb.searching:``}),t&&(0,N.jsx)($b,{of:a})]}),(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 5`},children:[(0,N.jsx)(P,{title:Zb.savedTitle,children:(0,N.jsx)(ex,{of:o,current:n,q:t})}),n&&(0,N.jsxs)(P,{title:s.state===`ready`?s.data.phrase:n,labelledBy:`find-detail`,children:[(0,N.jsx)(nx,{of:s,onKeep:(e,t)=>{n&&(l(e),f({ok:!0,text:E.app.working,working:!0}),A(`/api/knowledge/finds/${encodeURIComponent(n)}/keep`,{method:`POST`,body:{item:e,as:t}}).then(()=>{f({ok:!0,text:Zb.keptNote(e,$h(t))}),s.reload(),o.reload()}).catch(e=>f({ok:!1,text:Te(e)})).finally(()=>l(void 0)))},busy:u,keeping:c}),(0,N.jsx)(De,{note:d})]})]})]})}var q=E.knowledge.sources,ix=E.knowledge.scan;function ax(e){let t=e.s;return(0,N.jsxs)(`article`,{className:`list-row`,style:{display:`block`},"aria-labelledby":`src-${t.id}`,children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsx)(`h3`,{id:`src-${t.id}`,className:`h`,style:{fontSize:14,margin:0},children:t.id}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[t.stale&&(0,N.jsx)(`span`,{className:`chip warn`,children:t.snapshot?q.stale(e.staleDays):q.unsynced}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy,onClick:()=>e.onSync(t.id),children:e.busy?q.syncing:q.sync(t.id)})]})]}),(0,N.jsxs)(`dl`,{className:`run-facts`,style:{margin:`8px 0`},children:[(0,N.jsx)(`dt`,{children:q.type}),(0,N.jsx)(`dd`,{children:t.type}),(0,N.jsx)(`dt`,{children:q.location}),(0,N.jsx)(`dd`,{className:`mono`,style:{wordBreak:`break-all`},children:t.location}),t.ref&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`dt`,{children:q.ref}),(0,N.jsx)(`dd`,{className:`mono`,children:t.ref})]}),t.path&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`dt`,{children:q.path}),(0,N.jsx)(`dd`,{className:`mono`,children:t.path})]}),t.checkout&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`dt`,{children:q.checkout}),(0,N.jsx)(`dd`,{children:t.checkout})]}),(0,N.jsx)(`dt`,{children:q.owner}),(0,N.jsx)(`dd`,{children:t.owner??`—`}),(0,N.jsx)(`dt`,{children:q.tags}),(0,N.jsx)(`dd`,{children:t.tags.kinds.length+t.tags.frameworks.length?[...t.tags.kinds,...t.tags.frameworks].join(`, `):q.noTags}),(0,N.jsx)(`dt`,{children:q.authority}),(0,N.jsxs)(`dd`,{children:[t.authority?q.authorities[t.authority]??t.authority:q.noAuthority,t.byPage?`; ${q.byPage(t.byPage)}`:``]}),(0,N.jsx)(`dt`,{children:q.scope}),(0,N.jsx)(`dd`,{children:t.scope??q.everywhere}),(0,N.jsx)(`dt`,{children:q.restricted}),(0,N.jsxs)(`dd`,{children:[t.readRestricted?q.readsRestricted:q.skipsRestricted,t.maxPages?`; ${q.maxPages(t.maxPages)}`:``]}),(0,N.jsx)(`dt`,{children:q.snapshot}),(0,N.jsx)(`dd`,{children:t.snapshot?`${q.snapshotLine(t.snapshot.date,t.snapshot.pages,t.snapshot.ageDays)}${t.snapshot.commit?`, ${q.commit(t.snapshot.commit)}`:``}`:q.noSnapshot}),(0,N.jsx)(`dt`,{children:q.scanLabel}),(0,N.jsx)(`dd`,{children:t.scanned?q.scanned(t.scanned.date):q.notScanned})]}),(0,N.jsx)(ag,{command:t.commands.scan,slash:t.commands.slash,runs:{q:`knowledge`,label:E.runs.knowledge}})]})}function ox(e){return(0,N.jsx)(F,{of:e.of,children:t=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(sh,{list:t.problems}),t.sources.length===0?(0,N.jsx)(`div`,{className:`state`,children:q.empty}):t.sources.map(n=>(0,N.jsx)(ax,{s:n,staleDays:t.staleDays,onSync:e.onSync,busy:e.syncing===n.id},n.id))]})})}var sx={type:`git`,location:``,id:``,path:``,ref:``,submodule:!1,kinds:``,frameworks:``,owner:``,save:!0};function cx(e){if(!e.location.trim())return{error:q.needLocation};let t=e.type===`git`;if(!t&&(e.path.trim()||e.ref.trim()||e.submodule))return{error:q.gitOnly};let n=yg(e.kinds);if(!Array.isArray(n))return n;let r=yg(e.frameworks);return Array.isArray(r)?{body:{type:e.type,location:e.location.trim(),...e.id.trim()?{id:e.id.trim()}:{},...t&&e.path.trim()?{path:e.path.trim()}:{},...t&&e.ref.trim()?{ref:e.ref.trim()}:{},...t&&e.submodule?{submodule:!0}:{},...n.length?{kinds:n}:{},...r.length?{frameworks:r}:{},...e.owner.trim()?{owner:e.owner.trim()}:{},save:e.save}}:r}function lx(e){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:e.id,className:`hud`,style:{fontSize:10},children:e.label}),(0,N.jsx)(`input`,{id:e.id,className:`field`,value:e.value,disabled:e.disabled,list:e.list,onChange:t=>e.onChange(t.target.value)})]})}function ux(e){let[t,n]=(0,v.useState)(e.initial??sx),[r,i]=(0,v.useState)(!1),[a,o]=(0,v.useState)(),s=e=>n(t=>({...t,...e})),c=t.type===`git`;return(0,N.jsxs)(`form`,{onSubmit:r=>{r.preventDefault();let a=cx(t);`error`in a?o({ok:!1,text:a.error}):(i(!0),o(void 0),A(`/api/knowledge/sources`,{method:`POST`,body:a.body}).then(r=>{o({ok:!0,text:r.lines.join(`
|
|
19
|
+
`)}),t.save&&(n(sx),e.onAdded?.())}).catch(e=>o({ok:!1,text:Te(e)})).finally(()=>i(!1)))},className:`stack`,style:{gap:10},"aria-labelledby":`add-source`,children:[(0,N.jsx)(`p`,{className:`work-say`,children:q.addIntro}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`src-type`,className:`hud`,style:{fontSize:10},children:q.addType}),(0,N.jsx)(`select`,{id:`src-type`,className:`field`,value:t.type,onChange:e=>s({type:e.target.value}),children:e.types.map(e=>(0,N.jsx)(`option`,{value:e,children:e},e))})]}),(0,N.jsx)(lx,{id:`src-location`,label:q.addLocation,value:t.location,onChange:e=>s({location:e})}),(0,N.jsx)(lx,{id:`src-id`,label:q.addId,value:t.id,onChange:e=>s({id:e})}),(0,N.jsx)(lx,{id:`src-path`,label:q.addPath,value:t.path,disabled:!c,onChange:e=>s({path:e})}),(0,N.jsx)(lx,{id:`src-ref`,label:q.addRef,value:t.ref,disabled:!c,onChange:e=>s({ref:e})}),(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`checkbox`,checked:t.submodule,disabled:!c,onChange:e=>s({submodule:e.target.checked})}),q.addSubmodule]}),(0,N.jsx)(lx,{id:`src-kinds`,label:q.addKinds,value:t.kinds,list:`src-kind-list`,onChange:e=>s({kinds:e})}),(0,N.jsx)(`datalist`,{id:`src-kind-list`,children:e.kinds.map(e=>(0,N.jsx)(`option`,{value:e},e))}),(0,N.jsx)(lx,{id:`src-frameworks`,label:q.addFrameworks,value:t.frameworks,onChange:e=>s({frameworks:e})}),(0,N.jsx)(lx,{id:`src-owner`,label:q.addOwner,value:t.owner,onChange:e=>s({owner:e})}),(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`checkbox`,checked:t.save,onChange:e=>s({save:e.target.checked})}),q.addSave]}),(0,N.jsx)(`div`,{children:(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:r,children:r?q.adding:q.add})}),(0,N.jsx)(De,{note:a})]})}function dx({label:e,ids:t}){return t.length?(0,N.jsxs)(`div`,{style:{margin:`6px 0`},children:[(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[e,` (`,t.length,`)`]}),(0,N.jsx)(`ul`,{style:{margin:`2px 0`,paddingLeft:18},children:t.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsx)(`a`,{href:`#/knowledge?item=${encodeURIComponent(e)}`,className:`mono`,children:e})},e))})]}):null}function fx({of:e}){return(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[e.scannedAt?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{style:{margin:0},children:ix.at(e.scannedAt.slice(0,10))}),e.changes&&e.changes.added.length+e.changes.changed.length+e.changes.removed.length?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(dx,{label:ix.added,ids:e.changes.added}),(0,N.jsx)(dx,{label:ix.changed,ids:e.changes.changed}),(0,N.jsx)(dx,{label:ix.removed,ids:e.changes.removed})]}):(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:ix.nothing}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:ix.flags(e.conflicts,e.injections,e.failed)})]}):(0,N.jsx)(`div`,{className:`state`,children:ix.never}),(0,N.jsx)(`h3`,{className:`hud`,style:{fontSize:11,margin:`6px 0 0`},children:ix.checkAgain}),e.checkAgain.length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:ix.noCheckAgain}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:e.checkAgain.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{href:`#/knowledge?item=${encodeURIComponent(e.id)}`,children:e.title}),` `,(0,N.jsxs)(`span`,{className:`muted mono`,style:{fontSize:11},children:[e.id,` · `,e.by]})]},e.id))}),(0,N.jsx)(ag,{command:e.command,slash:e.slash,why:ix.rescan,runs:{q:`knowledge`,label:E.runs.knowledge}})]})})}function px(){let e=j(`/api/knowledge/sources`),t=j(`/api/knowledge/scan`),[n,r]=(0,v.useState)(),i=Ee();return M(n=>{n.type===`file.changed`&&(e.reload(),t.reload())}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsxs)(P,{title:q.listTitle,span:`span 7`,children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:q.intro}),(0,N.jsx)(De,{note:i.note}),(0,N.jsx)(ox,{of:e,onSync:t=>{r(t),i.run(()=>A(`/api/knowledge/sources/${encodeURIComponent(t)}/sync`,{method:`POST`,body:{}}).then(e.reload),q.synced(t)).finally(()=>r(void 0))},syncing:n})]}),(0,N.jsxs)(`div`,{className:`column`,style:{gridColumn:`span 5`},children:[(0,N.jsx)(P,{title:ix.title,children:(0,N.jsx)(fx,{of:t})}),(0,N.jsx)(P,{title:q.addTitle,labelledBy:`add-source`,children:(0,N.jsx)(F,{of:e,children:t=>(0,N.jsx)(ux,{types:t.types,kinds:t.kindSuggestions,onAdded:e.reload})})})]})]})}var mx={wikis:()=>(0,N.jsx)(px,{}),documents:()=>(0,N.jsx)(mb,{}),knowledge:jb,"wiki-search":rx,parties:()=>(0,N.jsx)(Yb,{}),"orgpack-draft":()=>(0,N.jsx)(Lb,{})},J=E.evals,hx=e=>`${Math.round(e*100)}%`;function gx({label:e,value:t,sub:n}){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:e}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:28,color:`var(--accent)`},children:t}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:n})]})}function _x(){let e=j(`/api/evals`),t=j(`/api/evals/defences`),[n,r]=(0,v.useState)(`mock`),[i,a]=(0,v.useState)(``),o=bt(),s=bt();M(t=>{t.type===`file.changed`&&e.reload()});let c=e.state===`ready`?e.data.quality?.agents??[]:[],l=t.state===`ready`?t.data.files.filter(e=>e.risk===`high`):[],u=t.state===`ready`?t.data.files.filter(e=>e.risk===`medium`):[];return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:J.testASkillBefore}),(0,N.jsxs)(`form`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},onSubmit:t=>{t.preventDefault(),o.run(()=>A(`/api/evals/run`,{method:`POST`,body:{mode:n,...i?{agents:[i]}:{}}}).then(t=>(e.reload(),t)),e=>{let t=e.report,n=t.results?.filter(e=>!e.pass).length??0;return`Eval run ${t.runId} finished: ${n?`${Ot(n,`case`)} failed`:J.everyCasePassed}.`})},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`eval-mode`,children:[J.mode,(0,N.jsxs)(`select`,{id:`eval-mode`,className:`run-select`,value:n,onChange:e=>r(e.target.value),children:[(0,N.jsx)(`option`,{value:`mock`,children:J.mockNoModel}),(0,N.jsx)(`option`,{value:`replay`,children:J.replaySavedAnswers})]})]}),(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`eval-agent`,children:[J.agent,(0,N.jsxs)(`select`,{id:`eval-agent`,className:`run-select`,value:i,onChange:e=>a(e.target.value),children:[(0,N.jsx)(`option`,{value:``,children:J.everyAgent}),c.map(e=>(0,N.jsx)(`option`,{children:e.agent},e.agent))]})]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:o.busy,children:o.busy?J.running:J.newEvalRun})]})]}),(0,N.jsx)(xt,{note:o.note}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:J.qualitySignals,span:`span 5`,children:(0,N.jsx)(F,{of:e,children:e=>{let n=e.findings.applied+e.findings.dismissed+e.findings.waived,r=c.filter(e=>e.passRate===1).length;return(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,alignItems:`flex-start`},children:[(0,N.jsx)(gx,{label:J.findingsKeptByPeople,value:n?hx(e.findings.applied/n):`–`,sub:n?J.actedOn(e.findings.applied,n):J.noFindingsResolvedYet}),(0,N.jsx)(gx,{label:J.agentsPassing,value:c.length?`${r}/${c.length}`:`–`,sub:c.length?J.everyCaseLatestRun:J.noEvalRunYet}),(0,N.jsx)(gx,{label:J.hiddenInstructionsHeld,value:t.state===`ready`?String(l.length+t.data.items.length):`–`,sub:J.quarantinedNeverSentTo})]})}})}),(0,N.jsx)(P,{title:J.passRateByAgent,span:`span 7`,children:(0,N.jsx)(F,{of:e,empty:()=>c.length===0,emptyText:J.noEvalRunsYet,children:()=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:8},children:c.map(e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsxs)(`div`,{className:`row between`,children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12},children:e.agent}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`chip dim`,children:e.mode.toUpperCase()}),e.liveBar&&(0,N.jsx)(`span`,{className:`chip ${e.liveBar.pass?`done`:`blocking`}`,children:J.live(e.liveBar.min,e.liveBar.runs,e.liveBar.pass?J.met:J.notMet)}),e.regressed.length>0&&(0,N.jsx)(`span`,{className:`chip blocking`,title:e.regressed.join(`, `),children:J.regressed(e.regressed.length)}),(0,N.jsx)(`span`,{style:{fontSize:12},children:hx(e.passRate)})]})]}),(0,N.jsx)(he,{value:Math.round(e.passRate*100),max:100,color:e.passRate<1?`var(--amber)`:void 0,label:J.passRate(e.agent)})]},e.agent))})})}),(0,N.jsxs)(P,{title:J.ingestedContentDefences,meta:t.state===`ready`?J.quarantined3(l.length+t.data.items.length):void 0,span:`span 7`,rows:`span 2`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 8px`,fontSize:12.5},children:J.ingestedContentIsData}),(0,N.jsx)(F,{of:t,empty:e=>e.files.length===0&&e.items.length===0,emptyText:J.nothingRiskyInInputs,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[[...l,...u].map(e=>(0,N.jsxs)(`article`,{className:`stack`,style:{gap:4,borderTop:`1px solid var(--rule)`,paddingTop:8},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12},children:e.path}),(0,N.jsx)(`span`,{className:`chip ${e.risk===`high`?`blocking`:`warn`}`,children:e.risk===`high`?J.quarantined:J.marked})]}),(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[e.reason,`. `,e.action,`.`]}),e.signals.slice(0,2).map(e=>(0,N.jsx)(`code`,{className:`run-inert`,"aria-label":J.flaggedTextOnLine(e.line),children:J.line(e.line,e.rule,e.hidden?J.hidden:e.encoded?J.encoded:``,e.excerpt)},`${e.line}${e.rule}`))]},e.path)),e.items.map(e=>(0,N.jsxs)(`article`,{className:`stack`,style:{gap:4,borderTop:`1px solid var(--rule)`,paddingTop:8},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.origin}),(0,N.jsx)(`span`,{className:`chip blocking`,children:J.quarantined2(e.change)})]}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:e.summary}),(0,N.jsx)(`span`,{style:{fontSize:12},children:e.fix})]},`${e.change}${e.file}${e.source}`)),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:J.atticusNeverLetsA(Ot(e.scanned,`file`))})]})}),(0,N.jsx)(`div`,{className:`row`,style:{marginTop:8},children:(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:s.busy,onClick:()=>void s.run(async()=>{t.reload()},J.scanningInputsAndThe),children:J.scanAgain})}),(0,N.jsx)(xt,{note:s.note})]}),(0,N.jsx)(P,{title:J.evalRuns,span:`span 5`,children:(0,N.jsx)(F,{of:e,empty:e=>e.runs.length===0,emptyText:J.noEvalRunsYet2,children:e=>e.runs.slice().reverse().slice(0,8).map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:11.5},children:e.runId}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[Dt(e.startedAt),` · `,Ot(e.agents.length,`agent`),e.skipped?J.skipped(e.skipped):``]})]}),(0,N.jsx)(`span`,{className:`chip ${e.failed?`blocking`:`done`}`,children:e.failed?J.failed(e.failed):J.allPassed})]},e.runId))})}),(0,N.jsx)(P,{title:J.compareModels,span:`span 5`,children:(0,N.jsx)(F,{of:e,children:e=>e.modes.allowed.includes(`model`)&&e.models.length>1?(0,N.jsxs)(`p`,{style:{margin:0,fontSize:12.5},children:[J.approvedModelsLiveEvals(e.models.join(`, `)),(0,N.jsx)(`code`,{className:`mono`,children:J.atticusEvalRunMode}),`.`]}):(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`span`,{className:`chip dim`,style:{alignSelf:`flex-start`},children:J.locked}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:J.availableOnceModelMode(e.modes.default)})]})})})]})]})}var vx=E.governance;function yx(e){let t=j(e.go?`/api/search?q=${encodeURIComponent(e.query)}&limit=8`:void 0),{onDone:n}=e;return(0,v.useEffect)(()=>{t.state!==`loading`&&n()},[t.state,n]),(0,N.jsxs)(P,{title:e.title,span:e.span,meta:t.state===`ready`&&t.data.total?t.data.total:void 0,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 6px`,fontSize:12},children:e.why}),(0,N.jsx)(F,{of:t,empty:e=>e.total===0,emptyText:e.emptyText,children:t=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:0},children:[t.rows.map(t=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`a`,{href:`#/explore?q=${encodeURIComponent(t.id)}`,style:{fontSize:12.5},children:t.name||t.id}),(0,N.jsx)(`span`,{className:`chip ${e.warn?`warn`:`dim`}`,children:t.system??t.kind})]},t.id)),t.total>t.rows.length&&(0,N.jsx)(`a`,{href:`#/explore?q=${encodeURIComponent(e.query)}`,style:{fontSize:12,marginTop:6},children:vx.allInTheExplorer(t.total)})]})})]})}function bx(){let e=j(`/api/governance`),[t,n]=(0,v.useState)(0),[r]=(0,v.useState)(()=>[0,1,2,3].map(e=>()=>n(t=>Math.max(t,e+1))));return M(t=>{(t.type===`file.changed`||t.type===`index.rebuilt`)&&e.reload()}),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:e.state===`ready`?e.data.conformance.passed?vx.theOrgPackConforms:vx.someRulesNeedA:vx.governance}),(0,N.jsx)(`span`,{className:`hud`,children:vx.fromTheFilesAnd})]}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:vx.conformance,meta:vx.orgPackChecks,span:`span 6`,children:(0,N.jsx)(F,{of:e,children:e=>{let{pass:t,fail:n,warn:r}=e.conformance.summary,i=t+n,a=i?Math.round(t/i*100):0,o=e.conformance.results.filter(e=>e.status!==`pass`);return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(me,{value:t,max:i,size:72,text:`${a}%`,color:n?`var(--amber)`:`var(--green)`,label:vx.ofConformanceChecksPass(t,i)}),(0,N.jsx)(`span`,{style:{fontSize:12.5},children:vx.ofChecksPass(t,i,r?`, ${Ot(r,`warning`)}`:``)})]}),o.length>0&&(0,N.jsx)(`ul`,{className:`run-steps`,style:{fontSize:12},children:o.slice(0,6).map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`chip ${e.status===`fail`?`blocking`:`warn`}`,children:e.status.toUpperCase()}),` `,e.file?`${e.file}: `:``,e.message]},`${e.check}${e.file??``}${e.message}`))})]})}})}),(0,N.jsx)(P,{title:vx.rulesAndWaivers,span:`span 6`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:0},children:[(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:vx.constitutionRules}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`n`,style:{fontSize:18},children:e.rules.constitution}),(0,N.jsx)(`span`,{className:`chip dim`,children:vx.locked})]})]}),(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:vx.orgPackRules}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:18},children:e.rules.org})]}),(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:vx.teamRules}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:18},children:e.rules.team})]}),(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:vx.activeWaivers}),(0,N.jsx)(`span`,{className:`n`,style:{fontSize:18,color:e.waivers.length?`var(--amber)`:void 0},children:e.waivers.length})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:vx.constitutionRulesCantBe(e.rules.inForce,e.rules.waivable)}),e.rules.refused.map(e=>(0,N.jsx)(`p`,{className:`run-note bad`,children:vx.refused(e.file,e.rule?` (${e.rule})`:``,e.reason)},`${e.file}${e.rule??``}`))]})})}),(0,N.jsx)(P,{title:vx.howOftenRulesAre,span:`span 7`,children:(0,N.jsx)(F,{of:e,empty:e=>e.overrides.rules.length===0,emptyText:vx.noCriticFindingsYet,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{children:vx.rule}),(0,N.jsx)(`th`,{children:vx.findings}),(0,N.jsx)(`th`,{children:vx.dismissed}),(0,N.jsx)(`th`,{children:vx.waived}),(0,N.jsx)(`th`,{children:vx.overridden})]})}),(0,N.jsx)(`tbody`,{children:e.overrides.rules.slice(0,12).map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{className:`mono`,style:{fontSize:11.5},children:e.rule}),(0,N.jsx)(`td`,{children:e.total}),(0,N.jsx)(`td`,{children:e.dismissed}),(0,N.jsx)(`td`,{children:e.waived}),(0,N.jsxs)(`td`,{style:{minWidth:110},children:[(0,N.jsxs)(`span`,{style:{fontSize:11.5},children:[Math.round(e.overrideRate*100),`%`]}),(0,N.jsx)(he,{value:Math.round(e.overrideRate*100),max:100,color:e.overrideRate>=.5?`var(--amber)`:void 0,label:vx.overridden2(e.rule)})]})]},e.rule))})]}),e.overrides.suggestions.map(e=>(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:e.message},e.rule)),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:vx.acrossARuleDismissed(Ot(e.overrides.changes,`change`))})]})})}),(0,N.jsx)(P,{title:vx.waivers,span:`span 5`,children:(0,N.jsx)(F,{of:e,empty:e=>e.waivers.length===0,emptyText:vx.noActiveWaivers,children:e=>e.waivers.map(e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2,padding:`6px 0`,borderBottom:`1px solid var(--rule)`},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.summary}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.rule,` · `,e.change,` · `,e.gate,e.by?vx.by(e.by,Dt(e.at)):``]}),e.reason&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:vx.reason(e.reason)})]},`${e.change}${e.gate}${e.rule}`))})}),(0,N.jsx)(yx,{go:t>=0,onDone:r[0],title:vx.sensitiveData,why:vx.columnsTaggedWithA,query:`kind:column has:classification`,emptyText:vx.noColumnsAreTagged,span:`span 6`}),(0,N.jsx)(yx,{go:t>=1,onDone:r[1],title:vx.authenticationGaps,why:vx.callsWithNoOauth2,query:`kind:interface missing:auth`,emptyText:vx.everyCallDeclaresHow,span:`span 6`,warn:!0}),(0,N.jsx)(yx,{go:t>=2,onDone:r[2],title:vx.timeoutsAndRetries,why:vx.timeoutAndRetrySettings,query:`kind:setting settingKind:timeout,retry`,emptyText:vx.noTimeoutOrRetry,span:`span 6`}),(0,N.jsx)(yx,{go:t>=3,onDone:r[3],title:vx.retiring,why:vx.recordsPlannedForRetirement,query:`status:planned-retire`,emptyText:vx.nothingIsPlannedFor,span:`span 6`}),(0,N.jsx)(P,{title:vx.incidentMode,span:`span 12`,children:(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[vx.readOnlyBlastRadius,(0,N.jsx)(`a`,{href:`#/impact`,children:vx.openTheImpactExplorer})]})})]})]})}var xx=E.learning,Sx={"not-started":{label:`NEW`,cls:`dim`},"in-progress":{label:xx.inProgress,cls:`warn`},done:{label:`DONE`,cls:`done`}};function Cx({cur:e,reload:t}){let[n,r]=(0,v.useState)(``),[i,a]=(0,v.useState)(!1),o=bt(),s=e.step;return s?(0,N.jsxs)(`form`,{className:`stack`,style:{gap:12},onSubmit:e=>{e.preventDefault(),o.run(()=>A(`/api/learning/check`,{method:`POST`,body:n?{answer:n}:{}}).then(e=>{if(e.pass&&(r(``),a(!1),t()),!e.pass)throw Error(`Not yet: ${e.message}${e.hint?`\nHint: ${e.hint}`:``}`);return e}),e=>`Passed: ${e.message}`)},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:xx.stepOf(s.n,e.steps)}),(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:18},children:s.title}),(0,N.jsx)(`p`,{className:`run-text`,children:s.body}),s.commands.length>0&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:xx.tryInTheSandbox}),s.commands.map(e=>(0,N.jsxs)(`div`,{className:`row between run-field`,style:{gridTemplateColumns:`1fr auto`},children:[(0,N.jsx)(`code`,{className:`value`,children:e}),(0,N.jsx)(St,{text:e,label:xx.copy(e)})]},e))]}),s.question&&(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`learn-answer`,children:[s.question,(0,N.jsx)(`input`,{id:`learn-answer`,className:`run-input`,value:n,onChange:e=>r(e.target.value)})]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:o.busy,children:xx.checkMyWork}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-expanded":i,onClick:()=>a(e=>!e),children:i?xx.hideTheHint:xx.showAHint})]}),i&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:xx.hint(s.hint)}),(0,N.jsx)(xt,{note:o.note})]}):(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`run-note ok`,children:xx.youHaveFinishedThis}),(0,N.jsx)(`p`,{className:`run-text`,children:e.outro})]})}function wx(){let[e,t]=(0,v.useState)(``),[n,r]=(0,v.useState)(!1),i=bt();return(0,N.jsxs)(`form`,{className:`stack`,onSubmit:t=>{t.preventDefault(),e.trim()?(r(!1),i.run(()=>A(`/api/learning/sandbox`,{method:`POST`,body:{dir:e}}),e=>`Made a practice sandbox. Start the app there with: atticus ui --root ${e.root}`)):r(!0)},children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:xx.lessonsRunOnlyIn}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`sandbox-dir`,style:{flex:`1 1 260px`},children:[xx.aNewEmptyFolder,(0,N.jsx)(`input`,{id:`sandbox-dir`,className:`run-input`,value:e,onChange:e=>{t(e.target.value),r(!1)},"aria-describedby":n?`sandbox-dir-blank`:void 0,placeholder:xx.homeYouAtticusSandbox})]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:i.busy,children:xx.makeASandbox})]}),n&&(0,N.jsx)(`p`,{id:`sandbox-dir-blank`,role:`alert`,className:`run-note bad`,children:E.app.needFolder}),(0,N.jsx)(xt,{note:i.note})]})}function Tx(){let e=j(`/api/learning`);se(e);let[t,n]=(0,v.useState)(`all`),r=bt(),i=e.state===`ready`?e.data.roles:[],a=e.state===`ready`?e.data.lessons.filter(e=>t===`all`||e.role===t):[],o=e.state===`ready`?{done:e.data.lessons.filter(e=>e.state===`done`).length,all:e.data.lessons.length}:{done:0,all:0};return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:xx.learning}),e.state===`ready`&&(0,N.jsx)(`span`,{className:`chip ${e.data.sandbox?`done`:`dim`}`,children:e.data.sandbox?xx.practiceSandboxOfflineForge:xx.notASandbox})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:xx.lessonsBuiltOnThe}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:xx.progress,span:`span 4`,children:(0,N.jsx)(F,{of:e,children:()=>(0,N.jsxs)(`div`,{className:`row`,style:{alignItems:`flex-start`},children:[(0,N.jsx)(me,{value:o.done,max:o.all,size:72,text:o.all?`${Math.round(o.done/o.all*100)}%`:`0%`,label:xx.ofLessonsDone(o.done,o.all)}),(0,N.jsx)(`span`,{style:{fontSize:12.5},children:xx.ofDone(o.done,Ot(o.all,`lesson`))})]})})}),(0,N.jsx)(P,{title:xx.progressByKindOf,meta:xx.lessonsDone2,span:`span 8`,children:(0,N.jsx)(F,{of:e,empty:()=>i.length===0,emptyText:xx.noLessonsAreInstalled,children:()=>(0,N.jsx)(`div`,{style:{display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(180px, 1fr))`,gap:`8px 16px`},children:i.map(e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsxs)(`div`,{className:`row between`,children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.role}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[e.done,`/`,e.lessons]})]}),(0,N.jsx)(he,{value:e.done,max:e.lessons,label:xx.lessonsDone(e.role)})]},e.role))})})}),e.state===`ready`&&!e.data.sandbox&&(0,N.jsx)(P,{title:xx.practiseInASandbox,span:`span 12`,children:(0,N.jsx)(wx,{})}),e.state===`ready`&&e.data.current&&(0,N.jsx)(P,{title:xx.exercise(e.data.current.title),meta:e.data.current.completed?xx.done:void 0,span:`span 12`,kind:`hero`,children:(0,N.jsx)(Cx,{cur:e.data.current,reload:()=>e.reload()},e.data.current.lesson)}),(0,N.jsxs)(P,{title:xx.lessons,span:`span 12`,children:[(0,N.jsx)(`div`,{style:{marginBottom:10},children:(0,N.jsx)(wt,{label:xx.writtenFor,value:t,onChange:n,options:[{value:`all`,label:xx.everyone},...i.map(e=>({value:e.role,label:e.role}))]})}),(0,N.jsx)(F,{of:e,empty:()=>a.length===0,emptyText:xx.noLessonsWrittenFor,children:t=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:0},children:a.map(n=>(0,N.jsxs)(`article`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:3,minWidth:0},children:[(0,N.jsxs)(`span`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{style:{fontSize:13.5},children:n.title}),(0,N.jsxs)(`span`,{className:`chip ${Sx[n.state].cls}`,children:[Sx[n.state].label,n.state===`in-progress`?` · ${n.done}/${n.steps}`:``]})]}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12.5},children:n.summary}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:xx.min(n.role,n.minutes,Ot(n.steps,`step`))})]}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:!t.sandbox||r.busy||n.state===`done`,title:t.sandbox?void 0:xx.lessonsRunInA,"aria-label":`${n.state===`in-progress`?xx.continue:xx.start} ${n.title}`,onClick:()=>void r.run(()=>A(`/api/learning/start`,{method:`POST`,body:{lesson:n.id}}).then(t=>(e.reload(),t)),e=>[`Started ${n.title}.`,...e.setup].join(` `)),children:n.state===`in-progress`?xx.continue:n.state===`done`?xx.done2:xx.start})]},n.id))})}),(0,N.jsx)(xt,{note:r.note}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:xx.lessonsAndExercisesUse})]})]})]})}var Y=E.releaseViews,Ex={migration:`MIGRATION`,topic:`TOPIC`,"gateway-route":Y.gatewayRoute,code:`CODE`},Dx={rollout:Y.rollout,rollback:Y.rollback2,readiness:Y.readiness,verification:Y.verification,hypercare:Y.hypercare},Ox={released:{label:`RELEASED`,chip:`done`},"on-track":{label:Y.onTrack,chip:`done`},"at-risk":{label:Y.atRisk,chip:`warn`},late:{label:`LATE`,chip:`blocking`},"no-target":{label:Y.noTarget,chip:`dim`}};function kx(e,t){return(0,v.useEffect)(()=>{t&&e.reload()},[t]),e}function Ax(e){let t=e.state===`filed`?`filed${e.number?` as ${e.number}`:``}`:e.state===`waiting`?Y.waitingForAPerson:Y.notFiled;return`${e.requestType}${e.record?` for ${e.record}`:``}: ${t}${e.readyBy?`, ready by ${e.readyBy} (${Ot(e.waitDays??0,Y.workingDay)})`:Y.noLeadTimeTo}${e.missing.length?`. Missing ${e.missing.join(`, `)}`:``}.`}function jx({id:e,tick:t}){let n=kx(j(`/api/release/${e}/plan`),t);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(P,{title:Y.deploymentPlan,meta:n.state===`ready`?Ot(n.data.steps.length,`step`):Y.computed,span:`span 5`,children:(0,N.jsx)(F,{of:n,empty:e=>e.steps.length===0,emptyText:Y.nothingToDeployYet,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Y.workedOutFromInterfaces}),e.before.length>0&&(0,N.jsx)(`div`,{className:`list-row`,style:{alignItems:`flex-start`},children:(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:Y.n0BeforeAnything}),e.before.map(e=>(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[Ax(e),` `,(0,N.jsx)(`span`,{className:`hud`,children:e.source})]},e.heading))]})}),(0,N.jsx)(`ol`,{"aria-label":Y.deployOrder,className:`stack`,style:{listStyle:`none`,margin:0,padding:0,gap:0},children:e.steps.map(e=>(0,N.jsxs)(`li`,{className:`list-row`,style:{alignItems:`flex-start`,padding:`8px 0`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:3,minWidth:0},children:[(0,N.jsxs)(`span`,{style:{fontSize:12.5},children:[e.n,` · `,(0,N.jsx)(`span`,{className:`mono`,children:e.repo}),e.waitDays>0&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:Y.from(e.earliest)})]}),e.what.map(e=>(0,N.jsx)(`span`,{style:{fontSize:12},children:e},e)),e.why.map(e=>(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e},e)),e.waitsOn.map(e=>(0,N.jsx)(`span`,{style:{fontSize:11.5,color:`var(--amber)`},children:Y.waitsOn(Ax(e))},e.heading)),(0,N.jsxs)(`span`,{style:{fontSize:11.5},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5,marginRight:6},children:Y.rollback}),e.rollback.text?(0,N.jsxs)(N.Fragment,{children:[e.rollback.text,` `,(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.rollback.source})]}):(0,N.jsx)(`span`,{style:{color:`var(--magenta-text)`},children:e.rollback.gap})]})]}),(0,N.jsx)(`span`,{className:`chip ${e.kind===`code`?`dim`:`warn`}`,children:Ex[e.kind]})]},e.n))}),e.external.map(e=>(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:[e.what,e.beforeStep?Y.beforeStep(e.beforeStep):``,`.`]},e.what)),e.unplaced.length>0&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Y.notPlaced}),(0,N.jsx)(`ul`,{className:`run-steps`,children:e.unplaced.map(e=>(0,N.jsx)(`li`,{children:e.why},e.id))})]}),e.findings.length>0&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Y.criticReleaseLensStill}),(0,N.jsx)(`ul`,{className:`run-steps`,children:e.findings.map(e=>(0,N.jsxs)(`li`,{children:[e.summary,` `,(0,N.jsx)(`span`,{className:`hud`,children:e.path})]},e.id))})]})]})})}),(0,N.jsx)(P,{title:Y.forecast,meta:Y.fromDatesNoEstimates,span:`span 4`,children:(0,N.jsx)(F,{of:n,children:e=>{let t=e.forecast,n=Ox[t.status];return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:8,alignItems:`baseline`},children:[(0,N.jsx)(`span`,{style:{fontSize:20},className:`mono`,children:t.ready??Y.noDate}),(0,N.jsx)(`span`,{className:`chip ${n.chip}`,children:n.label})]}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:[t.status===`released`?Y.released:Y.readyToReleaseBy(Ot(t.waitDays,Y.workingDay)),` `,t.target?Y.target(t.target.date,t.target.source):Y.noTargetDateThe]}),t.drivers.length>0&&(0,N.jsx)(`ul`,{className:`run-steps`,"aria-label":Y.whatSetsTheDay,children:t.drivers.map(e=>(0,N.jsxs)(`li`,{children:[e.until,`: `,e.what,` `,(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.source})]},e.what))}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Y.tasksOfDone(t.tasks.done,t.tasks.total,t.tasks.waitingOnRequests.length?Y.waitOnAService(t.tasks.waitingOnRequests.join(`, `)):``)}),t.notes.map(e=>(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:11.5},children:e},e))]})}})}),(0,N.jsx)(P,{title:Y.rolloutReadinessAndHypercare,meta:Y.fromDesignMd,span:`span 9`,children:(0,N.jsx)(F,{of:n,children:e=>(0,N.jsx)(`dl`,{className:`run-facts`,children:e.sections.map(e=>(0,N.jsxs)(`div`,{style:{display:`contents`},children:[(0,N.jsx)(`dt`,{className:`hud`,children:Dx[e.name]??e.name}),(0,N.jsx)(`dd`,{children:e.text?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`run-text`,children:e.text}),` `,(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.source})]}):(0,N.jsx)(`span`,{style:{color:`var(--amber)`},children:e.gap})})]},e.name))})})})]})}function Mx({id:e,tick:t}){let n=kx(j(`/api/release/${e}/security`),t);return(0,N.jsx)(P,{title:Y.securityReviewDraft,meta:Y.fromTheCatalogAnd,span:`span 12`,children:(0,N.jsx)(F,{of:n,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsxs)(`p`,{style:{margin:0,fontSize:12.5},children:[(0,N.jsx)(`span`,{className:`hud`,style:{marginRight:8},children:Y.signsOff}),e.signOff.how]}),(0,N.jsx)(St,{text:e.markdown,label:Y.copyTheSecurityReview})]}),e.interfaces.length===0?(0,N.jsx)(`p`,{className:`state`,children:Y.interfacesMdListsNo}):(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`caption`,{className:`sr`,children:Y.newOrChangedInterfaces}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:Y.operation}),(0,N.jsx)(`th`,{scope:`col`,children:Y.callerCallee}),(0,N.jsx)(`th`,{scope:`col`,children:Y.auth}),(0,N.jsx)(`th`,{scope:`col`,children:Y.crosses})]})}),(0,N.jsx)(`tbody`,{children:e.interfaces.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{className:`mono`,children:e.operation}),(0,N.jsxs)(`td`,{children:[e.caller,` → `,e.callee,` (`,e.change,`)`]}),(0,N.jsxs)(`td`,{children:[(0,N.jsx)(`span`,{className:`chip ${e.auth===`not stated`?`blocking`:`done`}`,children:e.auth.toUpperCase()}),` `,(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.authSource??Y.saidNowhere})]}),(0,N.jsx)(`td`,{children:e.crosses??Y.no})]},`${e.operation}|${e.caller}`))})]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:16,alignItems:`flex-start`},children:[(0,N.jsxs)(`div`,{className:`stack`,style:{flex:`1 1 260px`,gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Y.dataFieldsTouched}),e.fields.length===0?(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:Y.dataMdAddsNo}):(0,N.jsx)(`ul`,{className:`run-steps`,children:e.fields.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.field}),`: `,e.classification,e.personalLooking?Y.looksLikePersonalData:``]},e.field))})]}),(0,N.jsxs)(`div`,{className:`stack`,style:{flex:`1 1 260px`,gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Y.dataCrossingABoundary}),e.crossings.length===0?(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:Y.noNewOrChanged}):(0,N.jsx)(`ul`,{className:`run-steps`,children:e.crossings.map(e=>(0,N.jsxs)(`li`,{children:[e.operation,`: `,e.from,` → `,e.to,` (`,e.toBoundary,`).`,` `,e.fields.length?e.fields.map(e=>`${e.field} (${e.classification}${e.sensitive===`yes`?`, sensitive`:``})`).join(`; `):e.note??Y.mappingsMdDoesntSay]},e.operation))})]}),(0,N.jsxs)(`div`,{className:`stack`,style:{flex:`1 1 260px`,gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Y.vendorsSecretsAndFindings}),(0,N.jsxs)(`ul`,{className:`run-steps`,children:[e.vendors.map(e=>(0,N.jsxs)(`li`,{children:[e.name,`:`,` `,e.isNew?Y.aNewVendor:Y.alreadyCalled(Ot(e.existing,`interface`)),`;`,` `,e.operations.join(`, `)]},e.name)),e.secrets.map(e=>(0,N.jsxs)(`li`,{children:[e.what,` `,(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.source})]},`${e.what}|${e.source}`)),e.findings.map(e=>(0,N.jsxs)(`li`,{children:[e.severity,`: `,e.summary]},e.id)),e.vendors.length+e.secrets.length+e.findings.length===0&&(0,N.jsx)(`li`,{children:Y.noVendorSecretOr})]})]})]}),e.gaps.length>0&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Y.gapsForTheReviewer}),(0,N.jsx)(`ul`,{className:`run-steps`,children:e.gaps.map(e=>(0,N.jsx)(`li`,{children:e},e))})]})]})})})}function Nx({id:e,tick:t}){let[n,r]=(0,v.useState)(`business`),i=kx(j(`/api/release/${e}/notes?audience=${n}`),t);return(0,N.jsx)(P,{title:Y.releaseNotes,meta:Y.generatedNoAi,span:`span 6`,children:(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsx)(wt,{label:Y.audience,value:n,options:[{value:`business`,label:Y.business},{value:`technical`,label:Y.technical}],onChange:r}),i.state===`ready`&&(0,N.jsx)(St,{text:i.data.markdown,label:Y.copyTheReleaseNotes})]}),(0,N.jsx)(F,{of:i,children:e=>(0,N.jsx)(`pre`,{className:`run-text`,tabIndex:0,"aria-label":Y.releaseNotes,style:{maxHeight:320,overflow:`auto`,fontFamily:`var(--mono)`,fontSize:12},children:e.markdown})})]})})}function Px({id:e,tick:t}){let n=kx(j(`/api/outcomes?change=${e}`),t),r=j(`/api/health`),i=bt(),[a,o]=(0,v.useState)(``),[s,c]=(0,v.useState)(``),[l,u]=(0,v.useState)(``),d=t=>{t.preventDefault(),i.run(()=>A(`/api/release/${e}/outcomes`,{method:`POST`,body:{measure:a,value:s,...l.trim()?{note:l}:{}}}).then(()=>{c(``),u(``),n.reload()}),Y.recorded)};return(0,N.jsx)(P,{title:Y.outcomes,meta:Y.theBriefsSuccessMeasures,span:`span 6`,children:(0,N.jsx)(F,{of:n,empty:e=>e.measures.length===0,emptyText:Y.briefMdHasNo,children:t=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(`ul`,{className:`stack`,style:{listStyle:`none`,margin:0,padding:0,gap:0},children:t.measures.map(e=>(0,N.jsxs)(`li`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsxs)(`span`,{style:{fontSize:12.5},children:[e.n,` · `,e.measure]}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:e.latest?Y.measuredByOn(e.latest.value,e.latest.by,Dt(e.latest.at),e.values.length>1?` (${Ot(e.values.length,`value`)})`:``):Y.notMeasuredYet})]}),(0,N.jsx)(`span`,{className:`chip ${e.latest?`done`:`dim`}`,children:e.latest?Y.measured:Y.open})]},e.id))}),t.orphans.map(e=>(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Y.recordedButBriefMd(e.measure)},e.id)),t.canRecord?(0,N.jsxs)(`form`,{onSubmit:d,className:`stack`,"aria-label":Y.recordAnOutcome,children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`om-${e}`,style:{flex:`1 1 200px`},children:[Y.measure,(0,N.jsxs)(`select`,{id:`om-${e}`,className:`run-select`,value:a,required:!0,onChange:e=>o(e.target.value),children:[(0,N.jsx)(`option`,{value:``,children:Y.chooseAMeasure}),t.measures.map(e=>(0,N.jsxs)(`option`,{value:e.id,children:[e.n,` · `,e.measure]},e.id))]})]}),(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`ov-${e}`,style:{flex:`1 1 160px`},children:[Y.whatYouMeasured,(0,N.jsx)(`input`,{id:`ov-${e}`,className:`run-input`,value:s,required:!0,onChange:e=>c(e.target.value)})]})]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`on-${e}`,style:{flex:`1 1 240px`},children:[Y.howOptional,(0,N.jsx)(`input`,{id:`on-${e}`,className:`run-input`,value:l,onChange:e=>u(e.target.value)})]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:i.busy||!a||!s.trim(),children:Y.record(r.state===`ready`?Y.as(r.data.user):``)})]}),(0,N.jsx)(xt,{note:i.note})]}):(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:t.why})]})})})}function Fx(e,t){let n=URL.createObjectURL(new Blob([t],{type:`text/markdown;charset=utf-8`})),r=document.createElement(`a`);r.href=n,r.download=e,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}function Ix(e,t,n){let r=`evidence-${e}.md`;return n?{saved:!1,text:E.app.panelNoSave(r,`atticus release evidence ${e} --out <folder>`)}:{saved:!0,text:`Saved ${r}: the summary, ${Ot(t.files.length,`file`)} with their sha-256, rounds, waivers, approvals, trace, requests, drift and AI runs.`}}function Lx({id:e}){let t=bt(),[n,r]=(0,v.useState)();return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:t.busy,onClick:()=>void t.run(()=>A(`/api/release/${e}/evidence`).then(t=>{let n=!!T();return n?r(t.markdown):Fx(`evidence-${e}.md`,t.markdown),Ix(e,t,n)}),e=>e.text),children:Y.exportEvidencePack})}),(0,N.jsx)(xt,{note:t.note}),n!==void 0&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`label`,{htmlFor:`evidence-${e}`,className:`sr`,children:Y.evidenceMd(e)}),(0,N.jsx)(`textarea`,{id:`evidence-${e}`,className:`run-textarea`,readOnly:!0,rows:10,value:n}),(0,N.jsx)(`div`,{children:(0,N.jsx)(St,{text:n,label:Y.copyEvidenceMd(e)})})]})]})}var X=E.release,Rx={"release-ready":X.atGoNoGo,released:`RELEASED`,"post-release-review":X.postReleaseReview};function zx({list:e,current:t}){return(0,N.jsx)(P,{title:X.changes,span:`span 3`,rows:`span 3`,children:(0,N.jsx)(F,{of:e,empty:e=>e.length===0,emptyText:X.noChangesInFlight,children:e=>(0,N.jsx)(`nav`,{"aria-label":X.changes,className:`stack`,style:{gap:2},children:e.map(e=>(0,N.jsxs)(`a`,{href:`#/release/${e.id}`,"aria-current":e.id===t?`page`:void 0,className:`list-row`,style:{textDecoration:`none`,padding:`8px 6px`,borderRadius:6,background:e.id===t?`var(--picked)`:void 0},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:12},children:e.id}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e.title})]}),(0,N.jsx)(`span`,{className:`chip ${e.atRelease?`warn`:`dim`}`,children:Rx[e.state]??e.state.toUpperCase()})]},e.id))})})})}function Bx(e){return(0,N.jsxs)(`li`,{"aria-label":`${e.label}: ${e.value}`,children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:e.label}),(0,N.jsx)(`span`,{className:`chip ${e.ok?`done`:e.warn?`warn`:`blocking`}`,style:{alignSelf:`flex-start`},children:e.value}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:e.detail})]})}function Vx({id:e}){let t=j(`/api/release/${e}`),n=bt(),[r,i]=(0,v.useState)(0);M(e=>{e.type===`file.changed`&&(t.reload(),i(e=>e+1))});let a=(e,r,i)=>void n.run(()=>A(e,{method:`POST`,body:r}).then(()=>t.reload()),i);return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(P,{title:t.state===`ready`?`${t.data.change.id} · ${t.data.change.title}`:e,span:`span 9`,kind:`hero`,children:(0,N.jsx)(F,{of:t,children:t=>{let r=t.openFindings.blocking+t.openFindings.gap,i=t.handoff?.approvals.map(e=>e.by)??[];return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsxs)(`p`,{style:{margin:0,fontSize:14},children:[(0,N.jsx)(`span`,{className:`hud`,style:{marginRight:8},children:X.next}),t.status.nextStep]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`span`,{className:`chip dim`,children:X.type(t.change.type.toUpperCase())}),(0,N.jsx)(`span`,{className:`chip ${t.status.risk.level===`high`?`blocking`:t.status.risk.level===`medium`?`warn`:``}`,children:X.risk(t.status.risk.level.toUpperCase())}),(0,N.jsx)(`span`,{className:`chip`,children:(Rx[t.change.state]??t.change.state).toUpperCase()})]}),(0,N.jsxs)(`ul`,{className:`run-gates`,"aria-label":X.gatesToGoLive,children:[(0,N.jsx)(Bx,{label:X.requests,value:t.requests.total===0?X.noneNeeded:t.requests.toFile?`${t.requests.toFile} NOT FILED`:`${t.requests.filed} FILED`,ok:t.requests.toFile===0,detail:t.requests.total===0?X.snowMdListsNo:X.ofFiled(t.requests.filed,t.requests.total)}),(0,N.jsx)(Bx,{label:X.findings,value:r?`${r} OPEN`:`CLEAR`,ok:r===0,detail:X.blocking(t.openFindings.blocking,Ot(t.openFindings.gap,X.knowledgeGap))}),(0,N.jsx)(Bx,{label:X.goNoGoPr,value:t.handoff?t.handoff.state===`merged`?`MERGED`:i.length?X.approvedNotMerged:t.handoff.state.toUpperCase():t.change.state===`release-ready`?X.notRaised:`LATER`,ok:t.handoff?.state===`merged`,warn:!t.handoff,detail:t.handoff?X.mergingIsTheGo(t.handoff.pr,i.length?X.approvedBy(i.join(`, `)):``):X.goNoGoIs}),(0,N.jsx)(Bx,{label:X.archiveGate,value:t.archive.pass?`OPEN`:`${t.archive.blockers.length} BLOCKERS`,ok:t.archive.pass,warn:!t.archive.pass&&t.change.state!==`released`,detail:X.opensOnceReleasedMerged})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:X.aPersonApprovesEvery}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:n.busy||t.change.state!==`release-ready`||!!t.handoff&&t.handoff.state===`open`,title:t.change.state===`release-ready`?void 0:X.theChangeReachesGo,onClick:()=>a(`/api/changes/${e}/handoff`,{},X.goNoGoPr2),children:X.askForGoNo}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:n.busy||!t.handoff,title:X.readsThePrMerges,onClick:()=>a(`/api/changes/${e}/sync`,{},X.syncedWithTheGit),children:X.syncAndMergeWhen}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:n.busy||![`released`,`post-release-review`].includes(t.change.state),title:X.archivesTheChangeAnd,onClick:()=>a(`/api/release/${e}/archive`,{},X.archivedItsReposWere),children:X.archive})]}),(0,N.jsx)(xt,{note:n.note})]})}})}),(0,N.jsx)(jx,{id:e,tick:r}),(0,N.jsx)(P,{title:X.whatStopsIt,span:`span 6`,children:(0,N.jsx)(F,{of:t,empty:e=>e.status.blockers.length+e.status.reasons.length===0,emptyText:X.nothingStopsThisChange,children:e=>(0,N.jsx)(`ul`,{className:`run-steps`,children:[...e.status.blockers,...e.status.reasons].filter((e,t,n)=>n.findIndex(t=>t.message===e.message)===t).map(e=>(0,N.jsx)(`li`,{children:e.message},e.message))})})}),(0,N.jsx)(P,{title:X.archiveGate,span:`span 6`,children:(0,N.jsx)(F,{of:t,children:e=>e.archive.pass?(0,N.jsx)(`p`,{className:`run-note ok`,children:X.theChangeMayBe}):(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`ul`,{className:`run-steps`,children:e.archive.blockers.map(e=>(0,N.jsx)(`li`,{children:e.message},e.message))}),e.archive.notes.map(e=>(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:e},e))]})})}),(0,N.jsx)(P,{title:X.conflictsWithOtherChanges,span:`span 6`,children:(0,N.jsx)(F,{of:t,empty:e=>e.conflicts.length===0,emptyText:X.noOtherOpenChange,children:e=>e.conflicts.map(e=>(0,N.jsxs)(`div`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`a`,{href:`#/release/${e.with}`,className:`mono`,children:e.with}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:X.alsoTouchesAgreeAn(Object.entries(e.overlap).filter(([,e])=>e.length).map(([e,t])=>`${e} ${t.join(`, `)}`).join(`; `))})]}),(0,N.jsx)(`span`,{className:`chip warn`,children:X.overlap})]},e.with))})}),(0,N.jsx)(P,{title:X.evidencePack,meta:t.state===`ready`?Ot(t.data.evidence.length,`file`):void 0,span:`span 6`,children:(0,N.jsx)(F,{of:t,empty:e=>e.evidence.length===0,emptyText:X.theChangeFolderIs,children:t=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:X.forTheApprovalBoard}),(0,N.jsx)(Lx,{id:e}),(0,N.jsx)(`ul`,{tabIndex:0,"aria-label":X.evidenceFiles,style:{listStyle:`none`,margin:0,padding:0,maxHeight:220,overflow:`auto`},children:t.evidence.map(e=>(0,N.jsxs)(`li`,{className:`list-row`,style:{padding:`4px 0`},children:[(0,N.jsx)(`span`,{className:`mono`,style:{fontSize:11.5},children:e.path}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:9.5},children:e.bytes<1024?`${e.bytes} B`:X.kb(Math.round(e.bytes/1024))})]},e.path))})]})})}),(0,N.jsx)(Mx,{id:e,tick:r}),(0,N.jsx)(Nx,{id:e,tick:r}),(0,N.jsx)(Px,{id:e,tick:r})]})}function Hx({hash:e}){let t=e.replace(/^#\/?release\/?/,``).split(`?`)[0]||void 0,n=j(`/api/release`),r=t??(n.state===`ready`?n.data[0]?.id:void 0);return(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(zx,{list:n,current:r}),r?(0,N.jsx)(Vx,{id:r},r):(0,N.jsx)(P,{title:X.noChangeSelected,span:`span 9`,children:(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:X.pickAChangeOn})})]})}var Ux=E.repos;function Wx(e){return[...new Set(e.split(/[\n,]/).map(e=>e.trim()).filter(Boolean))]}function Gx({c:e}){return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},"aria-live":`polite`,children:[(0,N.jsx)(`p`,{style:{margin:0},children:Ux.compared(e.branch,e.added.length,e.removed.length,e.changed.length)}),e.added.length+e.removed.length+e.changed.length>0&&(0,N.jsxs)(`ul`,{className:`mono`,style:{margin:0,paddingLeft:18,fontSize:12},children:[e.added.map(e=>(0,N.jsxs)(`li`,{children:[`+ `,e]},`+${e}`)),e.removed.map(e=>(0,N.jsxs)(`li`,{children:[`- `,e]},`-${e}`)),e.changed.map(e=>(0,N.jsxs)(`li`,{children:[`~ `,e.record,` (`,e.fields.join(`, `),`)`]},`~${e.record}`))]})]})}function Kx({r:e,onChanged:t}){let n=e.description,r=n?.trust===`suggested`,[i,a]=(0,v.useState)(!1),[o,s]=(0,v.useState)(n?.text??``),c=Ee(),l=(n,r)=>c.run(async()=>{let r=await A(`/api/repos/${e.id}/description`,{method:`PUT`,body:n});return a(!1),t?.(),r},r),u=o.trim().length>300,d=!o.trim();return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4,margin:`8px 0`},children:[(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`baseline`},children:[(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:Ux.about}),r&&(0,N.jsx)(`span`,{className:`chip warn`,title:Ux.aboutDraftWhy(n.by??`Your assistant`),children:Ux.aboutDraft})]}),(0,N.jsxs)(`p`,{style:{margin:0,maxWidth:`70ch`},children:[n?n.text:(0,N.jsx)(`span`,{className:`muted`,children:Ux.noAbout}),n?.by&&!r&&(0,N.jsx)(`span`,{className:`muted`,children:` · ${Ux.aboutBy(n.by)}`})]}),n&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12,maxWidth:`70ch`},children:r?Ux.aboutDraftWhy(n.by??`Your assistant`):Ux.aboutWhy}),r&&!!n?.cites?.length&&(0,N.jsx)(`p`,{className:`muted mono`,style:{margin:0,fontSize:12},children:`${Ux.aboutCites}: ${n.cites.map(e=>`${e.file}:${e.line}`).join(`, `)}`}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-expanded":i,"aria-controls":`repo-${e.id}-about-form`,onClick:()=>a(!i),children:n?Ux.editAboutDraft:Ux.editAbout}),r&&(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:c.busy,onClick:()=>void l({accept:!0},Ux.aboutSaved),children:Ux.acceptAbout}),n&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:c.busy,onClick:()=>void l({reject:!0},Ux.aboutDropped),children:Ux.rejectAbout})]}),i&&(0,N.jsxs)(`form`,{id:`repo-${e.id}-about-form`,className:`stack`,style:{gap:4},onSubmit:e=>{e.preventDefault(),!(d||u)&&l({text:o.trim()},Ux.aboutSaved)},children:[(0,N.jsxs)(`label`,{className:`stack`,htmlFor:`repo-${e.id}-about`,children:[(0,N.jsx)(`span`,{children:Ux.about}),(0,N.jsx)(`span`,{className:`muted`,id:`repo-${e.id}-about-hint`,children:Ux.aboutHint})]}),(0,N.jsx)(`textarea`,{id:`repo-${e.id}-about`,className:`field`,rows:2,maxLength:300,value:o,"aria-describedby":`repo-${e.id}-about-hint`,"aria-invalid":u||void 0,onChange:e=>s(e.target.value)}),u&&(0,N.jsx)(`p`,{role:`alert`,style:{margin:0},children:Ux.aboutTooLong(300)}),(0,N.jsx)(`div`,{className:`row`,style:{gap:8},children:(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:c.busy||d||u,children:Ux.save})}),d&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Ux.aboutEmpty})]}),(0,N.jsx)(De,{note:c.note})]})}function qx({r:e,onChanged:t}){let[n,r]=(0,v.useState)(!1),[i,a]=(0,v.useState)(e.defaultBranch),[o,s]=(0,v.useState)(e.branches.join(`
|
|
20
|
+
`)),[c,l]=(0,v.useState)(),u=Ee(),d=Ee(),f=e.remoteDefault&&e.remoteDefault!==e.defaultBranch;return(0,N.jsxs)(`article`,{className:`list-row`,style:{display:`block`},"aria-labelledby":`repo-${e.id}`,children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,gap:8},children:[(0,N.jsx)(`h3`,{id:`repo-${e.id}`,className:`h`,style:{fontSize:14,margin:0},children:e.id}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:Ux.typeOwner(e.type,e.owner)})]}),(0,N.jsx)(Kx,{r:e,onChanged:t}),(0,N.jsxs)(`dl`,{className:`run-facts`,style:{margin:`8px 0`},children:[(0,N.jsx)(`dt`,{children:Ux.url}),(0,N.jsx)(`dd`,{className:`mono`,style:{wordBreak:`break-all`},children:e.url}),(0,N.jsx)(`dt`,{children:Ux.defaultBranch}),(0,N.jsxs)(`dd`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.defaultBranch}),e.commit&&(0,N.jsx)(`span`,{className:`muted`,children:` · ${Ux.atCommit(e.commit.slice(0,7))}`}),f&&(0,N.jsx)(`span`,{className:`chip warn`,style:{marginLeft:6},children:Ux.remoteSays(e.remoteDefault)})]}),(0,N.jsx)(`dt`,{children:Ux.branches}),(0,N.jsx)(`dd`,{children:e.branches.length?e.branches.join(`, `):Ux.noBranches})]}),e.scans.length>0&&(0,N.jsx)(`ul`,{style:{margin:`0 0 8px`,paddingLeft:18,fontSize:12.5},children:e.scans.map(e=>(0,N.jsx)(`li`,{children:Ux.scanned(e.branch,e.scannedAt.slice(0,10),e.commit.slice(0,7))},e.branch))}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[e.branches.map(t=>(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:u.busy,onClick:()=>void u.run(()=>A(`/api/scan`,{method:`POST`,body:{repos:[e.id],ref:t}}),Ux.scanStarted(t)),children:Ux.scan(t)},`scan-${t}`)),e.scans.map(t=>(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:u.busy,onClick:()=>void u.run(async()=>{l(await A(`/api/repos/compare?branch=${encodeURIComponent(t.branch)}`))},Ux.comparedNow),children:Ux.compare(t.branch,e.defaultBranch)},`cmp-${t.branch}`)),(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-expanded":n,onClick:()=>r(!n),children:Ux.edit})]}),(0,N.jsx)(De,{note:u.note}),c&&(0,N.jsx)(Gx,{c}),n&&(0,N.jsxs)(`form`,{className:`stack`,style:{marginTop:8},onSubmit:n=>{n.preventDefault(),d.run(async()=>{let n=await A(`/api/repos/${e.id}/branches`,{method:`PUT`,body:{defaultBranch:i,branches:Wx(o)}});return t?.(),n},Ux.saved)},children:[(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{style:{minWidth:140},children:Ux.defaultBranch}),(0,N.jsx)(`input`,{id:`repo-${e.id}-default`,className:`field mono`,value:i,onChange:e=>a(e.target.value)})]}),(0,N.jsxs)(`label`,{className:`stack`,htmlFor:`repo-${e.id}-branches`,children:[(0,N.jsx)(`span`,{children:Ux.branches}),(0,N.jsx)(`span`,{className:`muted`,children:Ux.branchesHint})]}),(0,N.jsx)(`textarea`,{id:`repo-${e.id}-branches`,className:`field mono`,rows:3,value:o,onChange:e=>s(e.target.value)}),(0,N.jsx)(`div`,{className:`row`,style:{gap:8},children:(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:d.busy,children:Ux.save})}),(0,N.jsx)(De,{note:d.note})]})]})}function Jx(){let e=j(`/api/repos/branches`);return se(e),(0,N.jsxs)(P,{title:Ux.title,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 8px`,maxWidth:`70ch`},children:Ux.intro}),(0,N.jsx)(F,{of:e,empty:e=>e.repos.length===0,emptyText:Ux.empty,children:t=>(0,N.jsx)(`div`,{className:`stack`,style:{gap:8},children:t.repos.map(t=>(0,N.jsx)(qx,{r:t,onChanged:e.reload},t.id))})})]})}var Z=E.serviceDesk,Yx={"to-file":{label:Z.toFile2,cls:`warn`},waiting:{label:Z.waitingForYou,cls:`ai`},filed:{label:`FILED`,cls:`done`}},Xx=e=>`${e.change}|${e.heading}`;function Zx({done:e}){let t=j(`/api/changes`),[n,r]=(0,v.useState)(``),[i,a]=(0,v.useState)(!1),o=bt();return(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:Z.noChangesToDraft,children:t=>(0,N.jsxs)(`form`,{className:`stack`,onSubmit:r=>{r.preventDefault();let a=n||t[0].id;o.run(()=>A(`/api/service-desk/${a}/draft`,{method:`POST`,body:i?{force:!0}:{}}).then(t=>(e(),t)).catch(yt(E.app.forceSnow)),e=>e.lines.join(`
|
|
21
|
+
`)||Z.drafted)},children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`draft-change`,children:[Z.draftTheRequestsA,(0,N.jsx)(`select`,{id:`draft-change`,className:`run-select`,value:n||t[0].id,onChange:e=>r(e.target.value),children:t.map(e=>(0,N.jsxs)(`option`,{value:e.id,children:[e.id,` (`,e.state,`)`]},e.id))})]}),(0,N.jsxs)(`label`,{className:`row`,style:{gap:6,fontSize:12.5},htmlFor:`draft-force`,children:[(0,N.jsx)(`input`,{id:`draft-force`,type:`checkbox`,checked:i,onChange:e=>a(e.target.checked)}),Z.replaceASnowMd]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn`,disabled:o.busy,children:Z.draftFromTheOrg})]}),(0,N.jsx)(xt,{note:o.note})]})})}function Qx({r:e,done:t}){let n=bt(),r=e.fields.map(e=>`${e.name}: ${e.value}`).join(`
|
|
22
|
+
`);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`span`,{className:`chip ${Yx[e.state].cls}`,children:Yx[e.state].label}),(0,N.jsx)(`a`,{className:`chip`,href:`#/changes/${e.change}`,children:e.change}),e.template?(0,N.jsx)(`span`,{className:`chip dim`,children:Z.template(e.template)}):(0,N.jsx)(`span`,{className:`chip blocking`,children:Z.noTemplateMatches})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:Z.approversValuesComeFrom(e.leadTimeDays===void 0?``:Z.leadTimeDays(e.leadTimeDays),e.approvers.join(`, `)||Z.noneNamed)}),(0,N.jsxs)(`div`,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{marginBottom:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:Z.fields}),(0,N.jsx)(St,{text:r,label:Z.copyAllFields})]}),e.fields.map(e=>(0,N.jsxs)(`div`,{className:`run-field`,children:[(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:10},children:[e.name,e.required?Z.required:``]}),(0,N.jsx)(`span`,{className:`value ${e.value?``:`empty`}`,children:e.value||(e.required?Z.missingFillItIn:Z.empty)}),e.value?(0,N.jsx)(St,{text:e.value,label:Z.copy(e.name)}):(0,N.jsx)(`span`,{})]},e.name))]}),e.state===`to-file`&&(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:Z.atticusNeverCallsThe}),(0,N.jsx)(`div`,{className:`row`,children:(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:n.busy||e.missing.length>0,title:e.missing.length?Z.fillFirst(e.missing.join(`, `)):void 0,onClick:()=>void n.run(()=>A(`/api/service-desk/${e.change}/submit`,{method:`POST`,body:{}}).then(e=>(t(),e)),e=>e.lines.join(`
|
|
23
|
+
`)||Z.filedAsAStep),children:Z.fileSCompleteDrafts(e.change)})}),e.missing.length>0&&(0,N.jsx)(`p`,{className:`run-note bad`,children:Z.fillInSnowMd(e.missing.join(`, `))})]}),e.state===`waiting`&&(0,N.jsxs)(`p`,{style:{margin:0,fontSize:12.5},children:[Z.filedAsStep,(0,N.jsx)(`span`,{className:`mono`,children:e.step}),Z.submitItInThe,(0,N.jsx)(`a`,{href:`#/todo`,children:Z.recordTheRequestNumber}),`.`]}),e.state===`filed`&&(0,N.jsxs)(`p`,{className:`run-note ok`,children:[Z.filedAs(e.number??``),e.url?(0,N.jsxs)(N.Fragment,{children:[` `,`(`,(0,N.jsx)(fe,{href:e.url,children:Z.open}),`)`]}):null,`.`]}),(0,N.jsx)(xt,{note:n.note})]})}function $x(){let e=j(`/api/service-desk`),[t,n]=(0,v.useState)(`all`),[r,i]=(0,v.useState)();M(t=>{t.type===`file.changed`&&e.reload()});let a=e.state===`ready`?e.data.requests:[],o=a.filter(e=>t===`all`||e.state===t),s=o.find(e=>Xx(e)===r)??o[0],c=e=>a.filter(t=>t.state===e).length;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:e.state===`ready`?c(`to-file`)?Z.toFile(Ot(c(`to-file`),`request`)):Z.nothingToFile:Z.serviceDeskQueue}),(0,N.jsx)(wt,{label:Z.show,value:t,onChange:n,options:[{value:`all`,label:`All ${a.length}`},{value:`to-file`,label:`To file ${c(`to-file`)}`},{value:`waiting`,label:`Waiting ${c(`waiting`)}`},{value:`filed`,label:`Filed ${c(`filed`)}`}]})]}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0},children:[Z.draftsOnlyYouFile,(0,N.jsx)(`a`,{href:`#/release`,children:Z.releasePlan}),`.`]}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:Z.queue,span:`span 4`,children:(0,N.jsx)(F,{of:e,empty:()=>a.length===0,emptyText:Z.noDraftsYet,children:()=>(0,N.jsx)(I,{title:Z.requests,parts:[{label:Z.toFile3,value:c(`to-file`),color:`var(--amber)`},{label:Z.waitingForYou2,value:c(`waiting`),color:`var(--violet)`},{label:Z.filed,value:c(`filed`),color:`var(--green)`}]})})}),(0,N.jsx)(P,{title:Z.serviceDeskAdapter,span:`span 4`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`div`,{className:`row`,children:(0,N.jsx)(Tt,{type:e.adapter.configured})}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:Z.writesFromTheApp}),(0,N.jsx)(`p`,{style:{margin:0,fontSize:12.5},children:Z.inTheOrgPack(e.exports.files.length?Z.from(Ot(e.exports.requests,Z.pastRequest),Ot(e.exports.files.length,`export`)):Z.noDeskExportLoaded,Ot(e.templates.length,Z.requestTemplate))})]})})}),(0,N.jsx)(P,{title:Z.localAutomationTool,span:`span 4`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:e.executors.length?e.executors.map(e=>(0,N.jsx)(`span`,{className:`chip ai`,children:Z.approveEachWrite(e)},e)):(0,N.jsx)(`span`,{className:`chip dim`,children:Z.noneAllowedHere})}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[Z.calledThroughTheCommon,(0,N.jsx)(`a`,{href:`#/todo`,children:Z.toDo}),Z.noCredentialsPassTo,(0,N.jsx)(`a`,{href:`#/settings`,children:Z.executorsAllowList})]})]})})}),(0,N.jsx)(P,{title:Z.requests,meta:o.length,span:`span 4`,rows:`span 2`,children:(0,N.jsx)(F,{of:e,empty:()=>o.length===0,emptyText:a.length?Z.noneInThisView:Z.noServiceDeskDrafts,children:()=>(0,N.jsx)(`nav`,{"aria-label":Z.requests,className:`stack`,style:{gap:2},children:Object.entries(o.reduce((e,t)=>((e[t.requestType]??=[]).push(t),e),{})).map(([e,t])=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10,marginTop:6},children:e}),t.map(e=>(0,N.jsxs)(`button`,{type:`button`,className:`run-pick`,"aria-current":s&&Xx(s)===Xx(e)?`true`:void 0,onClick:()=>i(Xx(e)),children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.record||e.heading}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.change,e.missing.length?Z.toFill(e.missing.length):``]})]}),(0,N.jsx)(`span`,{className:`chip ${Yx[e.state].cls}`,children:Yx[e.state].label})]},Xx(e)))]},e))})})}),(0,N.jsx)(P,{title:s?s.heading:Z.noRequestSelected,span:`span 8`,kind:`hero`,children:(0,N.jsx)(F,{of:e,empty:()=>!s,emptyText:Z.pickARequestOn,children:()=>(0,N.jsx)(Qx,{r:s,done:()=>e.reload()},Xx(s))})}),(0,N.jsx)(P,{title:Z.draftRequests,span:`span 8`,children:(0,N.jsx)(Zx,{done:()=>e.reload()})})]})]})}var eS=E.aiSettings,tS=e=>e.split(/\r?\n/).map(e=>e.trim()).filter(Boolean);function nS(e){let t=/^\d+$/.test(e.defaultTokens.trim())?Number(e.defaultTokens.trim()):NaN;if(!Number.isSafeInteger(t)||t<=0)return{error:eS.badDefaultTokens};let n={};for(let t of tS(e.perAgent)){let e=/^([a-z0-9][a-z0-9-]*)\s*:\s*(\d+)$/.exec(t);if(!e||Number(e[2])<=0)return{error:eS.badBudgetLine(t)};n[e[1]]=Number(e[2])}return{models:{allowed:tS(e.models),recommended:e.recommended},budgets:{defaultTokens:t,perAgent:n}}}var rS=[`hand-off`,`model`,`headless-claude-code`],iS=[`on`,`text-only`,`off`];function aS(e){let t=e.limits?nS(e.limits):void 0;if(t&&`error`in t)throw Error(t.error);return{...t??{},ai:e.ai,modes:e.modes,assistants:e.assistants,model:e.provider?{type:e.provider,settings:Object.fromEntries(Object.entries(e.settings).filter(([,e])=>e.trim()!==``))}:null}}var oS=e=>({ai:e.ai,modes:e.modes,assistants:{allowed:e.assistants.filter(e=>e.allowed).map(e=>e.id),default:e.assistants.find(e=>e.default)?.id??e.assistants[0]?.id??`copilot`},provider:e.model?.type??``,settings:Object.fromEntries(Object.entries(e.model?.settings??{}).map(([e,t])=>[e,String(t)])),limits:{models:e.models.allowed.join(`
|
|
24
|
+
`),recommended:e.models.recommended,defaultTokens:String(e.budgets.defaultTokens),perAgent:Object.entries(e.budgets.perAgent).map(([e,t])=>`${e}: ${t}`).join(`
|
|
25
|
+
`)}}),sS=(e,t,n)=>n?[...new Set([...e,t])]:e.filter(e=>e!==t);function cS(e){let[t,n]=(0,v.useState)(()=>oS(e.data)),r=bt(),i=bt(),a=bt(),[o,s]=(0,v.useState)(``),c=e.data.providers.find(e=>e.type===t.provider)?.settings??[],l=t.settings.keyEnv?.trim(),u=e.data.model?.type;return(0,N.jsxs)(`form`,{className:`stack`,onSubmit:n=>{n.preventDefault(),r.run(async()=>{await A(`/api/settings/ai`,{method:`PUT`,body:aS(t)}),e.onSaved?.()},eS.saved(e.data.path))},children:[(0,N.jsx)(`h2`,{className:`h`,children:eS.title}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,maxWidth:`70ch`},children:eS.intro}),(0,N.jsxs)(`fieldset`,{className:`stack`,children:[(0,N.jsx)(`legend`,{className:`hud`,children:eS.aiLabel}),iS.map(e=>(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`radio`,id:`ai-on-${e}`,name:`ai`,checked:t.ai===e,onChange:()=>n({...t,ai:e})}),eS.ai[e]]},e))]}),(0,N.jsxs)(`fieldset`,{className:`stack`,children:[(0,N.jsx)(`legend`,{className:`hud`,children:eS.assistantsLabel}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:eS.assistantsHint}),e.data.assistants.map(e=>(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`checkbox`,id:`ai-assistant-${e.id}`,checked:t.assistants.allowed.includes(e.id),onChange:r=>n({...t,assistants:{...t.assistants,allowed:sS(t.assistants.allowed,e.id,r.target.checked)}})}),e.name]},e.id)),(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[eS.defaultAssistant,(0,N.jsx)(`select`,{id:`ai-default-assistant`,className:`field`,value:t.assistants.default,onChange:e=>n({...t,assistants:{...t.assistants,default:e.target.value}}),children:e.data.assistants.filter(e=>t.assistants.allowed.includes(e.id)).map(e=>(0,N.jsx)(`option`,{value:e.id,children:e.name},e.id))})]})]}),(0,N.jsxs)(`fieldset`,{className:`stack`,children:[(0,N.jsx)(`legend`,{className:`hud`,children:eS.modesLabel}),rS.map(e=>(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`input`,{type:`checkbox`,id:`ai-mode-${e}`,checked:t.modes.allowed.includes(e),onChange:r=>n({...t,modes:{...t.modes,allowed:sS(t.modes.allowed,e,r.target.checked)}})}),eS.modes[e]]},e)),(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[eS.defaultMode,(0,N.jsx)(`select`,{id:`ai-default-mode`,className:`field`,value:t.modes.default,onChange:e=>n({...t,modes:{...t.modes,default:e.target.value}}),children:t.modes.allowed.map(e=>(0,N.jsx)(`option`,{value:e,children:eS.modes[e]},e))})]})]}),(0,N.jsxs)(`fieldset`,{className:`stack`,children:[(0,N.jsx)(`legend`,{className:`hud`,children:eS.providerLabel}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:eS.providerHint}),(0,N.jsxs)(`select`,{id:`ai-provider`,className:`field`,"aria-label":eS.providerLabel,value:t.provider,onChange:e=>n({...t,provider:e.target.value}),children:[(0,N.jsx)(`option`,{value:``,children:eS.noProvider}),e.data.providers.map(e=>(0,N.jsx)(`option`,{value:e.type,children:e.plugin?eS.pluginProvider(e.type,!!e.pinned):e.type},e.type))]}),c.map(e=>(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{className:`mono`,style:{minWidth:140},children:e}),(0,N.jsx)(`input`,{id:`ai-setting-${e}`,className:`field`,value:t.settings[e]??``,onChange:r=>n({...t,settings:{...t.settings,[e]:r.target.value}})})]},e)),l&&u===t.provider&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},role:`note`,children:e.data.keySet?eS.keySet(l):eS.keyNotSet(l)}),l&&(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`label`,{htmlFor:`ai-key`,className:`mono`,children:eS.keyLabel(l)}),(0,N.jsx)(`input`,{id:`ai-key`,type:`password`,className:`field`,autoComplete:`off`,value:o,onChange:e=>s(e.target.value)}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:a.busy||!o.trim(),onClick:()=>void a.run(async()=>{await A(`/api/settings/ai/key`,{method:`POST`,body:{name:l,value:o}}),s(``),e.onSaved?.()},eS.keyKept(l)),children:eS.setKey})]}),(0,N.jsx)(xt,{note:a.note})]}),t.limits&&(0,N.jsxs)(`fieldset`,{className:`stack`,children:[(0,N.jsx)(`legend`,{className:`hud`,children:eS.budgetsLabel}),(0,N.jsxs)(`label`,{className:`stack`,htmlFor:`ai-models`,children:[(0,N.jsx)(`span`,{children:eS.modelsLabel}),(0,N.jsx)(`span`,{className:`muted`,children:eS.modelsHint})]}),(0,N.jsx)(`textarea`,{id:`ai-models`,className:`field mono`,rows:3,value:t.limits.models,onChange:e=>n({...t,limits:{...t.limits,models:e.target.value}})}),(0,N.jsxs)(`label`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`span`,{style:{minWidth:140},children:eS.defaultTokensLabel}),(0,N.jsx)(`input`,{id:`ai-default-tokens`,className:`field mono`,inputMode:`numeric`,value:t.limits.defaultTokens,onChange:e=>n({...t,limits:{...t.limits,defaultTokens:e.target.value}})})]}),(0,N.jsxs)(`label`,{className:`stack`,htmlFor:`ai-per-agent`,children:[(0,N.jsx)(`span`,{children:eS.perAgentLabel}),(0,N.jsx)(`span`,{className:`muted`,children:eS.perAgentHint})]}),(0,N.jsx)(`textarea`,{id:`ai-per-agent`,className:`field mono`,rows:3,value:t.limits.perAgent,onChange:e=>n({...t,limits:{...t.limits,perAgent:e.target.value}})})]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:10,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:r.busy,children:eS.save}),u&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:i.busy,onClick:()=>void i.run(()=>A(`/api/settings/ai/test`,{method:`POST`,body:{}}).then(e=>{if(!e.ok)throw Error(eS.notAnswered(e.error??``));return e}),e=>{let t=e;return eS.answered(t.model??u,t.ms??0)}),children:eS.test}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:eS.saveNote(e.data.path)})]}),(0,N.jsx)(xt,{note:r.note}),(0,N.jsx)(xt,{note:i.note})]})}function lS(){let e=j(`/api/settings/ai`);return se(e),(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsx)(P,{title:eS.title,span:`1 / -1`,children:(0,N.jsx)(F,{of:e,children:t=>(0,N.jsx)(cS,{data:t,onSaved:e.reload},JSON.stringify(t))})})})}var Q=E.settings,uS=[{id:`hand-off`,name:Q.handOff,what:Q.yourOwnAssistantCopilot},{id:`model`,name:Q.model,what:Q.directModelAccessThrough},{id:`headless-claude-code`,name:Q.headlessClaudeCode,what:Q.claudeCodeRunsA}],dS={workTracker:Q.workTracker,serviceDesk:Q.serviceDesk,gitHost:Q.gitHost,wiki:Q.wiki,notify:Q.notifications,design:Q.designTool,model:Q.modelProvider},fS={live:{cls:`done`,label:`CONNECTED`,what:Q.liveFallsBackTo},manual:{cls:`warn`,label:`MANUAL`,what:Q.writesBecomeStepsIn},mock:{cls:`dim`,label:`MOCK`,what:Q.inMemoryForTests},"not-set":{cls:`dim`,label:Q.notSet,what:Q.notConfigured}},pS={on:{label:`ON`,what:Q.everyAiStepMay},"text-only":{label:Q.textOnly,what:Q.noAiStepIs},off:{label:`OFF`,what:Q.noAiStepRuns}};function mS(){let[e,t]=(0,v.useState)(0),n=j(`/api/doctor${e?`?fresh=1&n=${e}`:``}`),r={ok:`done`,warn:`warn`,fail:`blocking`};return(0,N.jsx)(P,{title:Q.thisMachine,meta:n.state===`ready`?n.data.ok?Q.ready:Q.needsFixing:void 0,span:`span 12`,children:(0,N.jsx)(F,{of:n,empty:e=>e.checks.length===0,emptyText:Q.noChecksRan,children:i=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[i.checks.map(e=>(0,N.jsxs)(`div`,{className:`row between`,style:{alignItems:`flex-start`,gap:10},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsxs)(`span`,{style:{fontSize:12.5},children:[e.label,` `,(0,N.jsxs)(`span`,{className:`muted`,children:[`· `,e.detail]})]}),e.status!==`ok`&&e.fix&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:e.fix})]}),(0,N.jsx)(`span`,{className:`chip ${r[e.status]}`,children:e.status.toUpperCase()})]},e.id)),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(pe,{of:n,label:Q.checkAgain,run:()=>t(e+1)}),(0,N.jsxs)(`span`,{className:`muted`,style:{fontSize:12},children:[Q.theSameChecksAs,(0,N.jsx)(`code`,{className:`mono`,children:Q.atticusDoctor}),Q.nothingLeavesThisMachine]})]})]})})})}function hS(){let{me:e,saveNotify:t}=Ah(),[n,r]=(0,v.useState)(),[i,a]=(0,v.useState)(),o=bt(),s=n??e?.notify?.digest??`off`,c=i??e?.notify?.channel??``;return(0,N.jsx)(P,{title:Q.yourNotifications,meta:Q.atticusMeYaml,span:`span 12`,children:e?(0,N.jsxs)(`form`,{className:`stack`,style:{gap:8},onSubmit:e=>{e.preventDefault(),o.run(()=>t({digest:s,...c.trim()?{channel:c.trim()}:{}}),Q.saved)},children:[(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5,lineHeight:1.55},children:[Q.yourDigestListsThe,(0,N.jsx)(`code`,{className:`mono`,style:{whiteSpace:`nowrap`},children:Q.atticusDigestAsSend(e.user)}),`.`]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`notify-digest`,className:`hud`,style:{fontSize:10},children:Q.howOften}),(0,N.jsxs)(`select`,{id:`notify-digest`,className:`field`,value:s,onChange:e=>r(e.target.value),children:[(0,N.jsx)(`option`,{value:`off`,children:Q.off}),(0,N.jsx)(`option`,{value:`daily`,children:Q.daily}),(0,N.jsx)(`option`,{value:`weekly`,children:Q.weekly})]})]}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4,flex:1,minWidth:180},children:[(0,N.jsx)(`label`,{htmlFor:`notify-channel`,className:`hud`,style:{fontSize:10},children:Q.whereItGoes}),(0,N.jsx)(`input`,{id:`notify-channel`,className:`field`,value:c,placeholder:Q.aDirectMessage(e.user),onChange:e=>a(e.target.value)})]}),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:o.busy,children:Q.save})]}),(0,N.jsx)(xt,{note:o.note})]}):(0,N.jsxs)(`div`,{className:`stack`,"aria-busy":`true`,children:[(0,N.jsx)(`span`,{className:`sr`,children:Q.loading}),(0,N.jsx)(`div`,{className:`skeleton`,style:{width:`70%`}})]})})}function gS(){let e=j(`/api/settings`);se(e);let t=Ah().me?.ai??`on`,n=bt();return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:Q.settings}),(0,N.jsx)(`span`,{className:`hud`,children:Q.readOnlySetBy})]}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:Q.runtimeModes,meta:Q.runtimeYaml,span:`span 7`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsxs)(`div`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{style:{fontSize:13},children:Q.aiInThisOrganisation}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:pS[t].what})]}),(0,N.jsx)(`span`,{className:`chip ${t===`on`?`done`:`warn`}`,children:pS[t].label})]}),uS.map(t=>{let n=e.runtime.modes.allowed.includes(t.id),r=e.runtime.modes.default===t.id;return(0,N.jsxs)(`div`,{className:`list-row`,style:{alignItems:`flex-start`},children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{style:{fontSize:13},children:t.name}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12},children:t.what})]}),(0,N.jsx)(`span`,{className:`chip ${r?``:n?`done`:`dim`}`,children:r?Q.default:n?Q.allowed:Q.notApproved})]},t.id)}),(0,N.jsxs)(`div`,{className:`run-safety`,role:`note`,children:[(0,N.jsx)(`strong`,{style:{color:`var(--green)`},children:Q.safetyInEveryMode}),` `,Q.aPersonApprovesEvery]}),(0,N.jsx)(Ct,{rows:[[Q.assistants,`${e.runtime.assistants.allowed.join(`, `)} (default ${e.runtime.assistants.default})`],[Q.editors,e.runtime.editors.join(`, `)],[Q.models,e.runtime.models.allowed.join(`, `)||Q.noneApproved],[Q.autonomy,`${e.runtime.autonomy.default} by default; at most ${e.runtime.autonomy.maxFixRounds} build-fix rounds${Object.keys(e.runtime.autonomy.capPerRepo).length?`; capped: ${Object.entries(e.runtime.autonomy.capPerRepo).map(([e,t])=>`${e} ${t}`).join(`, `)}`:``}`],[Q.contextBudget,`${e.runtime.budgets.defaultTokens.toLocaleString()} tokens per pack`],[Q.runRecords,`kept ${e.runtime.retention.runsDays} days in .runs/ (git-ignored)`],[Q.buildEngine,e.runtime.buildEngine.default],[Q.telemetry,e.runtime.telemetry.enabled?`on`:`off`]]})]})})}),(0,N.jsx)(P,{title:Q.adapters,span:`span 5`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:Q.everyOutsideSystemSits}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{children:Q.system}),(0,N.jsx)(`th`,{children:Q.adapter})]})}),(0,N.jsx)(`tbody`,{children:e.adapters.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsxs)(`td`,{children:[dS[e.kind]??e.kind,(0,N.jsx)(`div`,{className:`muted`,style:{fontSize:11.5},children:fS[e.mode].what})]}),(0,N.jsx)(`td`,{children:(0,N.jsxs)(`span`,{className:`chip ${fS[e.mode].cls}`,children:[fS[e.mode].label,e.mode===`live`?` · ${e.type}`:``]})})]},e.kind))})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Q.testsAlwaysUseThe})]})})}),(0,N.jsx)(_S,{s:e,check:n}),(0,N.jsx)(P,{title:Q.orgPack,span:`span 5`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(Ct,{rows:[[Q.platforms,e.orgPack.platforms.join(`, `)||`none`],...Object.entries(e.orgPack.counts).map(([e,t])=>[e.replace(/([A-Z])/g,` $1`).toLowerCase(),String(t)])]}),e.orgPack.defaulted.length>0&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Q.builtInDefaultsFor(e.orgPack.defaulted.join(`, `))}),e.orgPack.problems.map(e=>(0,N.jsxs)(`p`,{className:`run-note bad`,children:[e.file,e.path?` ${e.path}`:``,`: `,e.message]},`${e.file}${e.path}${e.message}`)),(0,N.jsx)(`a`,{href:`#/orgpack`,style:{fontSize:12.5},children:Q.openTheOrgPack})]})})}),(0,N.jsx)(mS,{}),(0,N.jsx)(hS,{}),(0,N.jsx)(P,{title:Q.gates,meta:Q.gatesYaml,span:`span 12`,children:(0,N.jsx)(F,{of:e,empty:e=>e.gates.length===0,emptyText:Q.noGates,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:Q.theCriticRunsAt}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{children:Q.gate}),(0,N.jsx)(`th`,{children:Q.phase}),(0,N.jsx)(`th`,{children:Q.checklists}),(0,N.jsx)(`th`,{children:Q.checks}),(0,N.jsx)(`th`,{children:Q.authorRounds})]})}),(0,N.jsx)(`tbody`,{children:e.gates.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{className:`mono`,children:e.id}),(0,N.jsx)(`td`,{children:e.phase}),(0,N.jsx)(`td`,{children:e.checklists.join(`, `)||`-`}),(0,N.jsx)(`td`,{children:e.checks.join(`, `)||`-`}),(0,N.jsx)(`td`,{children:e.maxAuthorRounds??Q.noLimit})]},e.id))})]})]})})})]})]})}function _S({s:e,check:t}){return(0,N.jsx)(P,{title:Q.executorsAllowList,meta:e.state===`ready`?Q.setUp(e.data.executors.configured.length):void 0,span:`span 7`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:Q.proceduresCallLocalAutomation}),e.executors.configured.length===0?(0,N.jsx)(`p`,{className:`state`,children:Q.noToolsAreSet}):(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{children:Q.executor}),(0,N.jsx)(`th`,{children:Q.kind}),(0,N.jsx)(`th`,{children:Q.allowedFor}),(0,N.jsx)(`th`,{children:Q.approval})]})}),(0,N.jsx)(`tbody`,{children:e.executors.configured.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsxs)(`td`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.name}),(0,N.jsx)(`div`,{className:`muted`,style:{fontSize:11},children:e.where})]}),(0,N.jsx)(`td`,{children:e.transport}),(0,N.jsx)(`td`,{children:e.allowedFor.length?e.allowedFor.join(`, `):(0,N.jsx)(`span`,{className:`chip dim`,children:Q.nothingOff})}),(0,N.jsx)(`td`,{children:Q.eachWrite})]},e.name))})]}),e.executors.missing.map(e=>(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Q.procedureAllowsWhichIsnt(e.procedure,e.executor)},`${e.procedure}${e.executor}`)),e.executors.problems.map(e=>(0,N.jsx)(`p`,{className:`run-note bad`,children:e},e)),(0,N.jsxs)(`div`,{className:`row`,children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:t.busy||e.executors.configured.length===0,"aria-describedby":e.executors.configured.length===0?`no-executors`:void 0,onClick:()=>void t.run(()=>A(`/api/settings/executors/check`),e=>{let t=e;return[...t.executors.map(e=>`${e.name}: ${e.reachable?`answers${e.version?` (${e.version})`:``}`:`doesn't answer${e.problem?` (${e.problem})`:``}`}`),...t.problems].join(`
|
|
26
|
+
`)}),children:Q.checkTheyAnswer}),e.executors.configured.length===0&&(0,N.jsx)(`span`,{id:`no-executors`,className:`muted`,style:{fontSize:12},children:E.app.noExecutors})]}),(0,N.jsx)(xt,{note:t.note}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:Q.addingAToolTo})]})})})}var $=E.todo;function vS(e){let t={id:e.id,value:e.value,required:e.f.required,className:`run-input`};if(e.f.format===`choice`||e.f.format===`yes-no`){let n=e.f.format===`yes-no`?[`yes`,`no`]:e.f.choices??[];return(0,N.jsxs)(`select`,{...t,className:`run-select`,onChange:t=>e.onChange(t.target.value),children:[(0,N.jsx)(`option`,{value:``,children:$.choose}),n.map(e=>(0,N.jsx)(`option`,{children:e},e))]})}let n=e.f.format===`url`?`url`:e.f.format===`date`?`date`:e.f.format===`number`||e.f.format===`integer`?`number`:`text`;return(0,N.jsx)(`input`,{...t,type:n,placeholder:e.f.help??(e.f.format===`handles`?$.patDana:``),onChange:t=>e.onChange(t.target.value)})}function yS({step:e,done:t}){let[n,r]=(0,v.useState)(e.executors[0]??``),[i,a]=(0,v.useState)(),o=bt();return e.executors.length===0?null:(0,N.jsxs)(`div`,{className:`stack`,style:{borderTop:`1px solid var(--rule)`,paddingTop:10},children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`chip ai`,children:$.localTool}),(0,N.jsx)(`span`,{style:{fontSize:12.5,color:`var(--text-2)`},children:$.aToolOnThe})]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`exec-${e.id}`,children:[$.tool,(0,N.jsx)(`select`,{id:`exec-${e.id}`,className:`run-select`,value:n,onChange:e=>{r(e.target.value),a(void 0)},children:e.executors.map(e=>(0,N.jsx)(`option`,{children:e},e))})]}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,style:{alignSelf:`flex-end`},disabled:o.busy,onClick:()=>void o.run(()=>A(`/api/todo/${e.id}/run?with=${encodeURIComponent(n)}${e.change?`&change=${encodeURIComponent(e.change)}`:``}`).then(a),$.theseAreTheExact),children:$.showTheInputs})]}),i&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`pre`,{className:`run-inert`,"aria-label":$.inputsTheToolGets,style:{borderStyle:`solid`},children:JSON.stringify(i.inputs,null,2)}),(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:$.sha256(i.inputsSha256.slice(0,16))}),(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,disabled:o.busy,onClick:()=>void o.run(()=>A(`/api/todo/${e.id}/run`,{method:`POST`,body:{with:n,inputsSha256:i.inputsSha256,...e.change?{change:e.change}:{}}}).then(e=>(t(),e)),e=>e.lines.join(`
|
|
27
|
+
`)||`${n} did the step.`),children:$.runWithIApprove(n)})]}),(0,N.jsx)(xt,{note:o.note})]})}function bS({step:e,done:t}){let[n,r]=(0,v.useState)({}),[i,a]=(0,v.useState)(``),o=bt(),s=bt(),c=e.fields.map(e=>`${e.name}: ${e.value}`).join(`
|
|
28
|
+
`);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:[(0,N.jsx)(`span`,{className:`chip`,children:(Et[e.system]??e.system).toUpperCase()}),(0,N.jsx)(`span`,{className:`chip warn`,children:$.manual}),e.procedure&&(0,N.jsx)(`span`,{className:`chip dim`,children:$.procedure(e.procedure)}),e.change&&(0,N.jsx)(`a`,{className:`chip`,href:`#/changes/${e.change}`,children:e.change})]}),(0,N.jsx)(`p`,{style:{margin:0,fontSize:15},children:e.title}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:$.whereEveryValueComes(e.where,e.reason?$.whyThisIsManual(e.reason):``)}),e.waitsFor.length>0&&(0,N.jsx)(`p`,{className:`run-note bad`,role:`note`,children:$.doFirstThisStep(e.waitsFor.join(`, `),e.waitsFor.length===1?$.it:$.them)}),e.instructions.length>0&&(0,N.jsx)(`ol`,{className:`run-steps`,children:e.instructions.map(e=>(0,N.jsx)(`li`,{children:e},e))}),e.fields.length>0&&(0,N.jsxs)(`div`,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{marginBottom:4},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:$.fieldsToCopy}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(St,{text:c,label:$.copyAllFields}),(0,N.jsx)(`button`,{type:`button`,className:`btn run-copy`,disabled:o.busy,onClick:()=>void o.run(()=>A(`/api/todo/${e.id}/export?format=csv${e.change?`&change=${encodeURIComponent(e.change)}`:``}`).then(e=>{if(!navigator.clipboard)throw Error(`This browser won't copy from here; use Copy all fields.`);return navigator.clipboard.writeText(e.text)}),$.copiedTheFieldsAs),children:$.copyAsCsv})]})]}),e.fields.map(e=>(0,N.jsxs)(`div`,{className:`run-field`,children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:e.name}),(0,N.jsx)(`span`,{className:`value ${e.value?``:`empty`}`,children:e.value||$.empty}),e.value?(0,N.jsx)(St,{text:e.value,label:$.copy(e.name)}):(0,N.jsx)(`span`,{})]},e.name)),(0,N.jsx)(xt,{note:o.note})]}),e.state===`open`?(0,N.jsxs)(`form`,{onSubmit:r=>{r.preventDefault();let i=Object.fromEntries(Object.entries(n).filter(([,e])=>e.trim()));s.run(()=>A(`/api/todo/${e.id}/done`,{method:`POST`,body:{values:i,...e.change?{change:e.change}:{}}}).then(t),`Recorded step ${e.id}.`)},className:`stack`,children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10},children:$.whenItsDoneRecord}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[e.result.map(t=>(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`r-${e.id}-${t.name}`,children:[t.label,t.required?``:$.optional,(0,N.jsx)(vS,{f:t,id:`r-${e.id}-${t.name}`,value:n[t.name]??``,onChange:e=>r(n=>({...n,[t.name]:e}))})]},t.name)),(0,N.jsx)(`button`,{type:`submit`,className:`btn primary`,disabled:s.busy,children:$.markDone})]}),(0,N.jsxs)(`div`,{className:`row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`label`,{className:`run-label`,htmlFor:`skip-${e.id}`,style:{flex:`1 1 240px`},children:[$.reasonToSkip,(0,N.jsx)(`input`,{id:`skip-${e.id}`,className:`run-input`,value:i,onChange:e=>a(e.target.value)})]}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:s.busy||!i.trim(),onClick:()=>void s.run(()=>A(`/api/todo/${e.id}/done`,{method:`POST`,body:{skip:!0,note:i,...e.change?{change:e.change}:{}}}).then(t),`Skipped step ${e.id}.`),children:$.skipWithThisReason})]}),(0,N.jsx)(xt,{note:s.note}),(0,N.jsx)(yS,{step:e,done:t})]}):(0,N.jsx)(`p`,{className:`run-note ok`,children:$.byOn(e.state===`done`?$.done:$.skipped,e.recorded?.by??``,Dt(e.recorded?.at),e.recorded?.via===`executor`?$.byALocalTool:``,e.recorded?.note?` ${e.recorded.note}`:``,Object.entries(e.recorded?.values??{}).map(([e,t])=>` ${e}: ${String(t)}.`).join(``))})]})}var xS=(e,t)=>Ph([e.title,e.id,e.change,e.system],t),SS=`todo-filter`;function CS(){let e=j(`/api/todo?all=1`),t=j(`/api/findings`),[n,r]=(0,v.useState)(),[i,a]=(0,v.useState)(`all`),[o,s]=(0,v.useState)(``);M(n=>{n.type===`file.changed`&&(e.reload(),t.reload())});let c=e.state===`ready`?e.data.steps.filter(e=>i===`all`||(e.change??`none`)===i):[],l=c.filter(e=>e.state===`open`),u=c.filter(e=>e.state!==`open`),d=l.filter(e=>e.waitsFor.length>0),f=!!o.trim(),p=l.filter(e=>xS(e,o)),m=u.filter(e=>xS(e,o)),h=Ih({text:o,...i===`all`?{}:{change:i===`none`?$.noChange2:i}}),g=e.state===`ready`?[...new Set(e.data.steps.map(e=>e.change??`none`))]:[],_=c.find(e=>e.id===n)??l[0],y=t.state===`ready`?t.data.filter(e=>e.question&&(e.state===`open`||e.state===`asked`)):[];return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`},children:[(0,N.jsx)(`p`,{className:`n`,style:{margin:0,fontSize:24},children:e.state===`ready`?l.length?$.waitForAPerson(Ot(l.length,`step`)):$.nothingToDoEvery:$.toDoAndManual}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(Lh,{id:SS,value:o,onChange:s}),(0,N.jsx)(Rh,{shown:p.length+m.length,total:c.length,active:f})]}),g.length>1&&(0,N.jsx)(wt,{label:$.change,value:i,onChange:a,options:[{value:`all`,label:$.allChanges},...g.map(e=>({value:e,label:e===`none`?$.noChange2:e}))]})]})]}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:$.stepsAPersonDoes}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:$.progress,span:`span 3`,children:(0,N.jsx)(F,{of:e,empty:()=>c.length===0,emptyText:$.noManualStepsYet,children:()=>(0,N.jsxs)(`div`,{className:`stack`,style:{alignItems:`flex-start`},children:[(0,N.jsx)(me,{value:u.length,max:c.length,size:72,label:$.ofStepsDone(u.length,c.length)}),(0,N.jsx)(I,{title:$.steps,parts:[{label:$.done2,value:u.length,color:`var(--green)`},{label:$.open2,value:l.length-d.length,color:`var(--accent)`},{label:$.waitingOnOthers,value:d.length,color:`var(--amber)`}]})]})})}),(0,N.jsx)(P,{title:$.whereStepsComeFrom,span:`span 4`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2},children:[e.sources.filter(e=>e.configured||e.open).map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsx)(`span`,{children:Et[e.system]??e.system}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[e.open>0&&(0,N.jsx)(`span`,{className:`chip warn`,children:$.open(e.open)}),(0,N.jsx)(Tt,{type:e.configured})]})]},e.system)),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:e.exports.files.length?$.exportsInInputs(Ot(e.exports.workItems,$.workItem),Ot(e.exports.requests,`request`)):$.noExportsInInputs})]})})}),(0,N.jsx)(P,{title:$.localAutomation,span:`span 5`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`p`,{className:`muted`,style:{margin:0,fontSize:12.5},children:[$.allowListedToolsCan,(0,N.jsx)(`a`,{href:`#/settings`,children:$.executorsAllowList})]}),(0,N.jsx)(`div`,{className:`row`,style:{flexWrap:`wrap`,gap:6},children:e.executors.configured.length?e.executors.configured.map(e=>(0,N.jsx)(`span`,{className:`chip ai`,children:e},e)):(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:12.5},children:$.noToolsSetUp})}),e.executors.problems.map(e=>(0,N.jsx)(`p`,{className:`run-note bad`,children:e},e))]})})}),(0,N.jsx)(P,{title:$.openSteps,meta:f?`${p.length}/${l.length}`:l.length,span:`span 4`,rows:`span 2`,children:(0,N.jsx)(F,{of:e,empty:()=>l.length===0,emptyText:$.noOpenSteps,children:()=>p.length===0?(0,N.jsx)(zh,{what:h,onClear:()=>s(``),focus:SS}):(0,N.jsx)(`nav`,{"aria-label":$.openSteps,className:`stack`,style:{gap:2},children:Object.entries(p.reduce((e,t)=>((e[t.system]??=[]).push(t),e),{})).map(([e,t])=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,style:{fontSize:10,marginTop:6},children:Et[e]??e}),t.map(e=>(0,N.jsxs)(`button`,{type:`button`,className:`run-pick`,"aria-current":e.id===_?.id?`true`:void 0,onClick:()=>r(e.id),children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.title}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.change??$.noChange,` · `,e.id]})]}),(0,N.jsx)(`span`,{className:`chip ${e.waitsFor.length?`warn`:``}`,children:e.waitsFor.length?$.waits:$.toDo})]},`${e.change}/${e.id}`))]},e))})})}),(0,N.jsx)(P,{title:_?$.step:$.noStepSelected,span:`span 8`,rows:`span 2`,kind:`hero`,children:(0,N.jsx)(F,{of:e,empty:()=>!_,emptyText:$.pickAStepOn,children:()=>(0,N.jsx)(bS,{step:_,done:()=>e.reload()},`${_.change}/${_.id}`)})}),(0,N.jsxs)(P,{title:$.proceduresALocalTool,span:`span 7`,children:[(0,N.jsx)(F,{of:e,empty:e=>e.procedures.length===0,emptyText:$.theOrgPackHas,children:e=>(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{children:$.procedure2}),(0,N.jsx)(`th`,{children:$.toolsAllowed}),(0,N.jsx)(`th`,{children:$.writes}),(0,N.jsx)(`th`,{children:$.lastRun})]})}),(0,N.jsx)(`tbody`,{children:e.procedures.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsxs)(`td`,{children:[e.name,(0,N.jsxs)(`div`,{className:`hud`,style:{fontSize:9.5},children:[e.id,` · `,e.status]})]}),(0,N.jsx)(`td`,{children:e.allowed.length===0?(0,N.jsx)(`span`,{className:`muted`,children:$.noneOff}):e.allowed.map(t=>(0,N.jsxs)(`span`,{className:`chip ${e.configured.includes(t)?`ai`:`dim`}`,title:e.configured.includes(t)?$.setUpHere:$.notSetUpOn,style:{marginRight:4},children:[t,e.configured.includes(t)?``:$.notHere]},t))}),(0,N.jsx)(`td`,{children:e.writes}),(0,N.jsx)(`td`,{children:e.lastRun?`${Dt(e.lastRun.at)} · ${e.lastRun.status} · ${e.lastRun.executor}`:$.neverRun})]},e.id))})]})}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:$.eachRunShowsThe})]}),(0,N.jsx)(P,{title:$.done,meta:f?`${m.length}/${u.length}`:u.length,span:`span 5`,children:(0,N.jsx)(F,{of:e,empty:()=>u.length===0,emptyText:$.nothingDoneYet,children:()=>m.length===0?(0,N.jsx)(`div`,{className:`state`,children:E.filter.nothingMatches(h)}):m.map(e=>(0,N.jsxs)(`button`,{type:`button`,className:`run-pick`,"aria-current":e.id===_?.id?`true`:void 0,onClick:()=>r(e.id),children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.title}),(0,N.jsx)(`span`,{className:`chip ${e.state===`done`?`done`:`dim`}`,children:e.state.toUpperCase()})]},`${e.change}/${e.id}`))})}),(0,N.jsx)(P,{title:$.ownerQuestionsWaiting,meta:y.length||void 0,span:`span 12`,children:(0,N.jsx)(F,{of:t,empty:()=>y.length===0,emptyText:$.noOwnerQuestionsWaiting,children:()=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:0},children:[y.map(e=>(0,N.jsxs)(`div`,{className:`list-row`,children:[(0,N.jsxs)(`span`,{className:`stack`,style:{gap:2,minWidth:0},children:[(0,N.jsx)(`span`,{style:{fontSize:12.5},children:e.question.text}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.question.owner??$.ownerNotKnown,` · `,e.change,` · `,e.gate]})]}),(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`chip ${e.state===`asked`?`ai`:`warn`}`,children:e.state.toUpperCase()}),(0,N.jsx)(St,{text:e.question.text,label:$.copyQuestionText}),(0,N.jsx)(`a`,{className:`btn`,href:`#/changes/${e.change}`,style:{display:`inline-flex`,alignItems:`center`,textDecoration:`none`},children:$.openChange})]})]},`${e.change}/${e.gate}/${e.id}`)),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`,fontSize:12},children:$.eachQuestionIsAsked})]})})})]})]})}var wS={todo:CS,release:Hx,"service-desk":$x,governance:bx,evals:_x,learning:Tx,settings:gS,ai:lS,repos:Jx},TS=E.history,ES=e=>e.replace(`T`,` `).slice(0,16),DS=(e,t)=>`hs-${e}-${t}`.replace(/[^A-Za-z0-9_-]/g,`-`);function OS(e){let t=new URLSearchParams;e.change&&t.set(`change`,e.change),e.session&&t.set(`session`,e.session),e.q&&t.set(`q`,e.q);let n=t.toString();return`#/history${n?`?${n}`:``}`}function kS(e,t){return e.filter(e=>(!t.change||e.change===t.change)&&(!t.session||e.session===t.session)&&Ph([e.prompt?.text,e.response?.text,e.prompt?.command,e.change,e.session,TS.surfaces[e.surface]],t.text))}function AS(e){let t=new Map;for(let n of e){let e=`${n.surface}\u0000${n.session}`,r=t.get(e)??{session:n.session,surface:n.surface,turns:[]};r.turns.push(n),t.set(e,r)}return[...t.values()]}function jS(e){return[...new Set(e.flatMap(e=>e.change?[e.change]:[]))].sort()}function MS({r:e,what:t}){return(0,N.jsxs)(`div`,{className:`history-said`,children:[(0,N.jsxs)(`h4`,{className:`runs-h4`,children:[t,` `,(0,N.jsx)(`time`,{dateTime:e.at,children:ES(e.at)})]}),e.truncated&&(0,N.jsx)(`p`,{className:`history-note`,children:TS.truncated(e.size)}),e.masked&&(0,N.jsx)(`p`,{className:`history-note`,children:TS.masked}),(0,N.jsx)(`pre`,{className:`runs-text`,tabIndex:0,role:`region`,"aria-label":TS.box(t,e.id),children:e.text})]})}function NS({t:e}){let t=e.prompt?.command??e.response?.command;return(0,N.jsxs)(`li`,{className:`history-turn`,children:[(e.change||t)&&(0,N.jsxs)(`p`,{className:`history-tags`,children:[e.change&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`hud`,children:TS.about}),` `,(0,N.jsx)(`a`,{href:OS({change:e.change}),children:e.change})]}),t&&(0,N.jsxs)(N.Fragment,{children:[` `,(0,N.jsx)(`span`,{className:`hud`,children:TS.command}),` `,(0,N.jsx)(`code`,{className:`mono`,children:t})]})]}),(0,N.jsxs)(`div`,{className:`runs-pair`,children:[e.prompt?(0,N.jsx)(MS,{r:e.prompt,what:TS.prompt}):(0,N.jsx)(`div`,{}),e.response?(0,N.jsx)(MS,{r:e.response,what:TS.response}):(0,N.jsxs)(`div`,{className:`history-said`,children:[(0,N.jsx)(`h4`,{className:`runs-h4`,children:TS.response}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:TS.noResponse})]})]})]})}function PS({r:e}){return(0,N.jsx)(`p`,{className:`work-say`,style:{margin:0},children:e.on?TS.recordingOn:e.offBy===`org-pack`?TS.offOrgPack:TS.offLocal})}function FS(e){return(0,N.jsx)(F,{of:e.of,empty:e=>e.total===0,emptyContent:e.of.state===`ready`?(0,N.jsxs)(`div`,{className:`stack`,style:{gap:8},children:[(0,N.jsx)(PS,{r:e.of.data.recording}),(0,N.jsx)(`div`,{className:`state`,children:TS.empty}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:TS.what})]}):null,children:t=>{let n=kS(t.turns,{text:e.text,...e.change?{change:e.change}:{},...e.session?{session:e.session}:{}}),r=!!e.text.trim()||!!e.change||!!e.session;return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:10},children:[(0,N.jsx)(PS,{r:t.recording}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:TS.what}),e.session&&(0,N.jsxs)(`p`,{className:`work-say`,style:{margin:0},children:[TS.onlySession(e.session),` `,(0,N.jsx)(`a`,{href:OS(e.change?{change:e.change}:{}),children:TS.showAll})]}),(0,N.jsxs)(`div`,{className:`row history-filters`,role:`search`,children:[(0,N.jsx)(Lh,{id:`history-find`,value:e.text,onChange:t=>e.onText?.(t),grow:!0}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(`label`,{htmlFor:`history-change`,className:`hud`,style:{fontSize:10},children:TS.change}),(0,N.jsxs)(`select`,{id:`history-change`,className:`field`,value:e.change??``,onChange:t=>e.onChange?.(t.target.value),children:[(0,N.jsx)(`option`,{value:``,children:TS.everyChange}),jS(t.turns).map(e=>(0,N.jsx)(`option`,{value:e,children:e},e))]})]})]}),(0,N.jsx)(Rh,{shown:n.length,total:t.turns.length,active:r}),n.length===0?(0,N.jsx)(zh,{what:Ih({text:e.text,...e.change?{change:e.change}:{}}),onClear:()=>{e.onText?.(``),e.onChange?.(``)},focus:`history-find`}):AS(n).map(e=>(0,N.jsxs)(`section`,{className:`history-session`,"aria-labelledby":DS(e.surface,e.session),children:[(0,N.jsxs)(`h3`,{id:DS(e.surface,e.session),className:`history-h`,children:[(0,N.jsx)(`a`,{href:OS({session:e.session}),children:TS.session(e.session)}),` `,(0,N.jsxs)(`span`,{className:`muted`,children:[TS.surfaces[e.surface]??e.surface,`, `,TS.turns(e.turns.length)]})]}),(0,N.jsx)(`ol`,{className:`history-turns`,children:e.turns.map(e=>(0,N.jsx)(NS,{t:e},e.prompt?.id??e.response?.id))})]},`${e.surface}:${e.session}`)),t.total>t.turns.length&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0,fontSize:12},children:TS.newest(t.turns.length,t.total)})]})}})}function IS({hash:e}){let t=ve(e,`change`),n=ve(e,`session`),r=ve(e,`q`),[i,a]=(0,v.useState)(r??``);(0,v.useEffect)(()=>a(r??``),[r]);let o=j(`/api/history?limit=1000`);return M(e=>{e.type===`file.changed`&&o.reload()}),(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsxs)(P,{title:TS.title,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:TS.intro}),(0,N.jsx)(FS,{of:o,text:i,onText:a,...t?{change:t}:{},...n?{session:n}:{},onChange:e=>{location.hash=OS({...e?{change:e}:{},...n?{session:n}:{}})}})]})})}var LS=E.glossary;function RS(){return(0,N.jsxs)(P,{title:LS.title,children:[(0,N.jsx)(`p`,{className:`muted`,children:LS.intro}),(0,N.jsx)(`dl`,{className:`words`,children:LS.terms.map(e=>(0,N.jsxs)(`div`,{id:`word-${e.term.replace(/ /g,`-`)}`,children:[(0,N.jsx)(`dt`,{children:(0,N.jsx)(`strong`,{children:e.term})}),(0,N.jsx)(`dd`,{style:{margin:`2px 0 10px`},children:e.says})]},e.term))})]})}var zS=E.stageReview,BS=E.runNext;function VS({w:e}){return e?e.state===`working`?(0,N.jsx)(`p`,{role:`status`,"aria-busy":`true`,className:`work-say`,children:zS.savingComment}):e.state===`error`?(0,N.jsx)(`p`,{role:`alert`,className:`state error`,style:{margin:`6px 0 0`},children:e.text}):e.state===`acted`?(0,N.jsx)(`p`,{role:`status`,className:`work-say`,children:zS.acted(zS.actions[e.action]??e.action)}):(0,N.jsxs)(`div`,{role:`status`,children:[(0,N.jsx)(`p`,{className:`work-say`,children:zS.commented(e.result.files.join(`, `))}),(0,N.jsx)(th,{text:e.result.commit,label:zS.copyCommit})]}):null}function HS(e){let t=e.item.finding,n=e.item.options,r=(0,v.useId)(),[i,a]=(0,v.useState)(``),[o,s]=(0,v.useState)(``),[c,l]=(0,v.useState)(),u=e.wrote?.state===`working`,d=t=>{if((t===`not-relevant`||t===`waive`)&&!i.trim())return l(zS.needReason);l(void 0),e.onAct?.(e.item,t,i.trim())},f=t=>{if(t.preventDefault(),!o.trim())return l(zS.needComment);l(void 0),e.onComment?.(e.item,o.trim())},p=t.state===`open`,m=n.apply||n.dismiss||n.waive||!!n.ask;return(0,N.jsxs)(`article`,{className:`stage-finding`,"aria-labelledby":`${r}-h`,children:[(0,N.jsxs)(`div`,{className:`row`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsx)(`span`,{className:`chip ${t.severity===`blocking`?`blocking`:t.severity===`gap`?`warn`:`dim`}`,children:zS.severity[t.severity]??t.severity}),(0,N.jsx)(`span`,{className:`chip ${p?``:`done`}`,children:zS.state[t.state]??t.state}),(0,N.jsx)(`code`,{className:`mono muted`,children:t.id})]}),(0,N.jsx)(`h3`,{id:`${r}-h`,className:`h`,style:{fontSize:15,margin:`6px 0`},children:t.summary}),(0,N.jsxs)(`dl`,{className:`stage-facts`,children:[(0,N.jsx)(`dt`,{children:zS.where}),(0,N.jsx)(`dd`,{children:(0,N.jsxs)(`code`,{className:`mono`,children:[t.artifact,t.locator.line?`:${t.locator.line}`:``]})}),(0,N.jsx)(`dt`,{children:zS.why}),(0,N.jsx)(`dd`,{children:t.why}),(0,N.jsx)(`dt`,{children:zS.fix}),(0,N.jsx)(`dd`,{children:n.fix}),n.ask&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`dt`,{children:zS.question(n.ask.owner)}),(0,N.jsx)(`dd`,{children:n.ask.text})]})]}),p&&e.item.proposal&&(0,N.jsxs)(`p`,{role:`note`,className:`work-say`,children:[zS.proposed(e.item.proposal.by,e.item.proposal.claim),e.item.proposal.reason?`: ${e.item.proposal.reason}`:``]}),t.resolution&&(0,N.jsxs)(`p`,{className:`work-say`,children:[zS.resolved(zS.state[t.state]??t.state,t.resolution.by),t.resolution.reason?`: ${t.resolution.reason}`:``]}),p&&m&&(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6},children:[(0,N.jsx)(`span`,{className:`hud`,children:zS.options}),(n.dismiss||n.waive)&&(0,N.jsxs)(`label`,{className:`stack`,style:{gap:2},children:[(0,N.jsx)(`span`,{className:`hud`,children:zS.reason(t.id)}),(0,N.jsx)(`input`,{className:`field`,value:i,onChange:e=>a(e.target.value)})]}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[n.apply&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:u,"aria-label":zS.applyFor(t.id),onClick:()=>d(`apply`),children:zS.apply}),n.dismiss&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:u,"aria-label":zS.dismissFor(t.id),onClick:()=>d(`not-relevant`),children:zS.dismiss}),n.waive&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:u,"aria-label":zS.waiveFor(t.id),onClick:()=>d(`waive`),children:zS.waive}),n.ask&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:u,"aria-label":zS.askFor(t.id,n.ask.owner),onClick:()=>d(`ask`),children:zS.ask(n.ask.owner)})]}),n.dismiss&&!n.waive&&t.severity===`blocking`&&(0,N.jsx)(`p`,{className:`work-say`,children:zS.cantWaive})]}),(0,N.jsxs)(`div`,{className:`stack`,style:{gap:6,marginTop:8},children:[e.item.comments.length>0&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`hud`,children:zS.comments}),(0,N.jsx)(`ul`,{className:`stage-comments`,children:e.item.comments.map(e=>(0,N.jsxs)(`li`,{children:[e.text,` `,(0,N.jsxs)(`span`,{className:`muted`,children:[`— `,e.by,`, `,e.at.slice(0,10),` · `,e.read?zS.read:zS.unread]})]},e.question))})]}),(0,N.jsxs)(`form`,{className:`stack`,style:{gap:4},onSubmit:f,children:[(0,N.jsx)(`label`,{htmlFor:`${r}-c`,className:`hud`,children:zS.comment(t.id)}),(0,N.jsx)(`textarea`,{id:`${r}-c`,className:`field`,rows:2,value:o,"aria-describedby":`${r}-ch`,onChange:e=>s(e.target.value)}),(0,N.jsx)(`p`,{id:`${r}-ch`,className:`work-say`,style:{margin:0},children:zS.commentHint}),(0,N.jsx)(`div`,{children:(0,N.jsx)(`button`,{type:`submit`,className:`btn`,disabled:u,children:u?zS.savingComment:zS.saveComment})})]}),c&&(0,N.jsx)(`p`,{role:`alert`,className:`state error`,style:{margin:0},children:c}),(0,N.jsx)(VS,{w:e.wrote})]})]})}function US({qs:e,onAnswered:t}){return e.length?(0,N.jsx)(`ul`,{className:`stage-comments`,children:e.map(e=>(0,N.jsx)(`li`,{children:e.state===`open`?(0,N.jsxs)(`details`,{children:[(0,N.jsx)(`summary`,{children:zS.answerIt(e.question)}),(0,N.jsx)(yy,{question:e,onAnswered:t})]}):(0,N.jsxs)(N.Fragment,{children:[e.question,` `,(0,N.jsx)(`span`,{className:`muted`,children:zS.answered(e.answer?.text??e.options[(e.answer?.option??1)-1]?.label??``)})]})},e.id))}):(0,N.jsx)(`p`,{className:`work-say`,children:zS.noQuestions})}function WS(e){return(0,N.jsxs)(P,{title:zS.title,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`work-why`,style:{marginTop:0},children:zS.intro}),(0,N.jsx)(F,{of:e.of,empty:e=>!e.loop.present&&e.findings.length===0,emptyContent:e.of.state===`ready`?(0,N.jsxs)(`div`,{className:`state`,children:[(0,N.jsx)(`p`,{style:{margin:`0 0 8px`},children:zS.notRun}),(0,N.jsx)(`p`,{className:`work-say`,children:BS.terminal}),(0,N.jsx)(th,{text:e.of.data.next.command,label:BS.copy}),(0,N.jsx)(`p`,{className:`work-say`,children:BS.slash}),(0,N.jsx)(th,{text:e.of.data.next.slash,label:BS.copySlash})]}):void 0,children:t=>(0,N.jsxs)(`div`,{className:`stack`,style:{gap:12},children:[t.loop.state&&(0,N.jsx)(`p`,{className:`work-say`,children:zS.loopState[t.loop.state]??t.loop.state}),t.round===null||!t.gate?(0,N.jsx)(`div`,{className:`state`,children:zS.noRound(t.gate)}):t.findings.length===0?(0,N.jsx)(`div`,{className:`state`,children:zS.clean(t.gate,t.round)}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`hud`,style:{margin:0},children:zS.round(t.gate,t.round,t.findings.length)}),t.findings.map(t=>(0,N.jsx)(HS,{item:t,...e.wrote?.[t.finding.id]?{wrote:e.wrote[t.finding.id]}:{},...e.onAct?{onAct:e.onAct}:{},...e.onComment?{onComment:e.onComment}:{}},`${t.finding.gate}/${t.finding.id}`))]}),(0,N.jsx)(`h3`,{className:`h`,style:{fontSize:15,margin:`8px 0 0`},children:zS.questions}),(0,N.jsx)(US,{qs:t.questions,onAnswered:()=>e.onAnswered?.()}),(0,N.jsx)(`h3`,{className:`h`,style:{fontSize:15,margin:`8px 0 0`},children:zS.next}),(0,N.jsx)(`p`,{className:`work-why`,style:{margin:0},children:zS.nextWhy}),(0,N.jsx)(`p`,{className:`work-say`,children:BS.terminal}),(0,N.jsx)(th,{text:t.next.command,label:BS.copy}),(0,N.jsx)(`p`,{className:`work-say`,children:BS.slash}),(0,N.jsx)(th,{text:t.next.slash,label:BS.copySlash}),t.problems.length>0&&(0,N.jsx)(sh,{list:t.problems})]})})]})}function GS({change:e,stage:t}){let n=`/api/changes/${encodeURIComponent(e)}/stages/${t}`,r=j(n);se(r);let[i,a]=(0,v.useState)({}),o=(e,t)=>a(n=>({...n,[e]:t}));return(0,N.jsx)(WS,{of:r,wrote:i,onAct:(t,n,i)=>{let a=t.finding;o(a.id,{state:`working`}),A(`/api/findings/${encodeURIComponent(e)}/${encodeURIComponent(a.id)}/action`,{method:`POST`,body:{action:n,gate:a.gate,...i?{reason:i}:{},...n===`ask`&&t.options.ask?{askedOf:t.options.ask.owner}:{}}}).then(()=>{o(a.id,{state:`acted`,action:n}),r.reload()},e=>o(a.id,{state:`error`,text:Te(e)}))},onComment:(e,t)=>{let i=e.finding;o(i.id,{state:`working`}),A(`${n}/comments`,{method:`POST`,body:{finding:i.id,gate:i.gate,text:t}}).then(e=>{o(i.id,{state:`commented`,result:e}),r.reload()},e=>o(i.id,{state:`error`,text:Te(e)}))},onAnswered:()=>r.reload()})}var KS=E.work,qS=E.runNext,JS={feature:[`brief`,`proposal`,`specs`,`interfaces`,`ux`],stories:[`stories`,`tasks`,`snow`],tasks:[`tasks`]};function YS(e){let t=`pick-${e.screen}`;return(0,N.jsxs)(`div`,{className:`row`,style:{gap:8},children:[(0,N.jsx)(`label`,{htmlFor:t,className:`hud`,style:{fontSize:10},children:KS.pickChange}),(0,N.jsx)(`select`,{id:t,className:`run-select`,value:e.current??``,onChange:t=>ye(e.screen,`change`,t.target.value),children:e.list.map(e=>(0,N.jsxs)(`option`,{value:e.id,children:[e.id,` · `,e.state]},e.id))})]})}function XS({detail:e,stage:t}){let n=JS[t],r=e.artifacts.filter(e=>n.includes(e.artifact));return r.length===0?(0,N.jsx)(`div`,{className:`state`,children:KS.noFiles}):(0,N.jsx)(Oe,{caption:KS.files,rows:r,rowKey:e=>e.artifact,cols:[{label:KS.fileCol,cell:e=>e.path,mono:!0},{label:KS.statusCol,cell:e=>(0,N.jsx)(`span`,{className:`chip ${e.status===`done`?`done`:e.status===`ready`?`warn`:`dim`}`,children:e.status.toUpperCase()})}]})}function ZS({change:e,tasks:t}){return t.length===0?(0,N.jsx)(`div`,{className:`state`,children:KS.noTasks.replace(`<change>`,e)}):(0,N.jsx)(Oe,{caption:KS.tasks,rows:t,rowKey:e=>`${e.repo}:${e.id}`,cols:[{label:KS.taskCol,cell:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`code`,{className:`mono`,children:e.id}),` `,e.description]})},{label:KS.repoTaskCol,cell:e=>e.repo,mono:!0},{label:KS.statusCol,cell:e=>(0,N.jsx)(`span`,{className:`chip ${e.done?`done`:`dim`}`,children:e.done?KS.taskDone:KS.taskOpen})},{label:KS.runCol,cell:t=>{let n=L_(e,t);return(0,N.jsxs)(`div`,{className:`stack`,style:{gap:4},children:[(0,N.jsx)(th,{text:n.command,label:qS.copy}),(0,N.jsx)(th,{text:n.slash.command,label:qS.copySlash})]})}}]})}function QS(e){let t=j_[e.stage].id,n=e.cockpit?.state===`ready`?e.cockpit.data:void 0;return(0,N.jsx)(F,{of:e.list,empty:e=>e.length===0,emptyContent:(0,N.jsx)(oh,{}),children:r=>{let i=U_(r,e.wanted);if(!i)return(0,N.jsx)(ah,{});let a=e.tasks?.state===`ready`?e.tasks.data:void 0;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,marginBottom:12},children:[(0,N.jsx)(`p`,{style:{margin:0},children:(0,N.jsx)(`span`,{className:`n`,style:{fontSize:20},children:i.title})}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:12,flexWrap:`wrap`},children:[(0,N.jsx)(Bh,{change:i.id}),e.stage===`tasks`&&(0,N.jsx)(`a`,{href:`#/conformance?change=${encodeURIComponent(i.id)}`,children:E.conformance.title}),(0,N.jsx)(YS,{list:r,current:i.id,screen:t})]})]}),e.stage===`tasks`&&e.tasks?.state===`loading`?(0,N.jsx)(F,{of:e.tasks,children:()=>null}):e.cockpit?.state===`loading`?(0,N.jsx)(F,{of:e.cockpit,children:()=>null}):(0,N.jsx)(rh,{step:H_(e.stage,i,a,n)}),(0,N.jsxs)(`div`,{className:`bento`,children:[e.stage!==`tasks`&&(0,N.jsx)(GS,{change:i.id,stage:e.stage===`feature`?`feature`:`stories`}),(0,N.jsx)(P,{title:KS.files,span:e.stage===`tasks`?`span 4`:`1 / -1`,children:e.detail?(0,N.jsx)(F,{of:e.detail,children:t=>(0,N.jsx)(XS,{detail:t,stage:e.stage})}):(0,N.jsx)(`div`,{className:`state`,children:KS.noFiles})}),e.stage===`tasks`&&(0,N.jsx)(P,{title:KS.tasks,span:`span 8`,children:e.tasks?(0,N.jsx)(F,{of:e.tasks,children:e=>(0,N.jsx)(ZS,{change:i.id,tasks:e})}):(0,N.jsx)(`div`,{className:`state`,children:KS.noTasks.replace(`<change>`,i.id)})}),e.stage===`feature`&&(0,N.jsx)(Xg,{change:i.id}),e.stage===`feature`&&(0,N.jsxs)(P,{title:E.changeKnowledge.title,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`work-why`,style:{marginTop:0},children:E.changeKnowledge.onFeature}),(0,N.jsx)(`p`,{className:`work-say`,style:{margin:0},children:(0,N.jsx)(`a`,{href:`#/change-knowledge?change=${encodeURIComponent(i.id)}`,children:E.changeKnowledge.openPage})})]}),(0,N.jsx)(Og,{change:i.id})]})]})}})}function $S(e,t){let n=j(`/api/changes`),r=ve(e,`change`),i=n.state===`ready`?U_(n.data,r):void 0,a=j(i?`/api/changes/${i.id}`:void 0),o=j(i&&t===`tasks`?`/api/changes/${i.id}/tasks`:void 0),s=j(i&&t!==`tasks`?`/api/changes/${i.id}/cockpit`:void 0);return M(e=>{e.type===`file.changed`&&(n.reload(),a.reload(),o.reload(),s.reload())}),(0,N.jsx)(QS,{stage:t,list:n,wanted:r,detail:i?a:void 0,tasks:i&&t===`tasks`?o:void 0,cockpit:i&&t!==`tasks`?s:void 0})}function eC({hash:e}){return $S(e,`feature`)}function tC({hash:e}){return $S(e,`stories`)}function nC({hash:e}){return $S(e,`tasks`)}function rC({list:e,wanted:t,cockpit:n}){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 12px`,fontSize:12.5,lineHeight:1.55},children:KS.architectureIntro}),(0,N.jsx)(F,{of:e,children:e=>{let r=U_(e,t);return r&&n?.state===`loading`?(0,N.jsx)(F,{of:n,children:()=>null}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(rh,{step:X_(e,r?{change:r,...n?.state===`ready`?{cockpit:n.data}:{}}:void 0)}),(0,N.jsx)(`p`,{className:`work-say`,style:{margin:`0 0 8px`},children:(0,N.jsx)(Bh,{...e.find(e=>A_(e.state)===`architecture`)?{change:e.find(e=>A_(e.state)===`architecture`).id}:{}})}),e.length>0&&(0,N.jsx)(`p`,{className:`row`,style:{gap:12,flexWrap:`wrap`,margin:`8px 0 0`},children:e.map(e=>(0,N.jsxs)(`span`,{className:`row`,style:{gap:12},children:[(0,N.jsxs)(`a`,{href:`#/flows?change=${encodeURIComponent(e.id)}`,children:[E.flows.openTargets,`: `,e.title]}),(0,N.jsxs)(`a`,{href:`#/change-diagram?change=${encodeURIComponent(e.id)}`,children:[E.changeDiagram.title,`: `,e.title]}),(0,N.jsxs)(`a`,{href:`#/estimate?change=${encodeURIComponent(e.id)}`,children:[E.estimate.title,`: `,e.title]})]},e.id))})]})}})]})}function iC({list:e,wanted:t}){if(e.state!==`ready`||e.data.length===0)return null;let n=U_(e.data,t);return(0,N.jsx)(`div`,{className:`bento`,style:{marginBottom:12},children:n?(0,N.jsx)(GS,{change:n.id,stage:`architecture`}):(0,N.jsxs)(P,{title:E.stageReview.title,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`work-say`,style:{marginTop:0},children:E.stageReview.pickForArchitecture}),(0,N.jsx)(`ul`,{className:`stage-comments`,children:e.data.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{href:`#/architecture?change=${encodeURIComponent(e.id)}`,children:e.title}),` `,(0,N.jsx)(`span`,{className:`muted`,children:e.id})]},e.id))})]})})}function aC({hash:e}){let t=j(`/api/changes`),n=ve(e,`change`),r=t.state===`ready`?U_(t.data,n):void 0,i=j(r?`/api/changes/${r.id}/cockpit`:void 0);return M(e=>{e.type===`file.changed`&&(t.reload(),i.reload())}),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(rC,{list:t,wanted:n,...r?{cockpit:i}:{}}),(0,N.jsx)(iC,{list:t,wanted:ve(e,`change`)}),(0,N.jsx)(Ch,{hash:e})]})}var oC=E.changeDiagram;function sC(e){let t=new Set(e.nodes.map(e=>e.group).filter(Boolean));return{boxes:[...e.groups.filter(e=>t.has(e.id)).map(e=>({id:e.id,label:e.label,kind:e.kind,gaps:[],childCount:0,outside:!1,group:!0,inside:0})),...e.nodes.map(e=>({id:e.id,label:e.label,kind:e.kind,gaps:[],childCount:0,outside:!1,group:!1,inside:0,...e.group?{parent:e.group}:{},...e.legend?{mark:e.legend}:{}}))],links:e.edges.map(e=>({id:e.id,from:e.from,to:e.to,type:`change`,count:1,label:e.label,async:e.async,gaps:[],...e.legend?{mark:e.legend}:{}}))}}var cC=e=>oC.mark[e??`none`]??oC.mark.none;function lC(){return(0,N.jsxs)(`ul`,{className:`cd-legend`,"aria-label":oC.legend,children:[(0,N.jsx)(`li`,{className:`cd-key m-new`,children:oC.legendNew}),(0,N.jsx)(`li`,{className:`cd-key m-modify`,children:oC.legendModify}),(0,N.jsx)(`li`,{className:`cd-key m-retire`,children:oC.legendRetire}),(0,N.jsx)(`li`,{className:`cd-key`,children:oC.legendContext})]})}function uC({map:e}){let t=(0,v.useMemo)(()=>sC(e),[e]),n=new Map(e.groups.map(e=>[e.id,e.label])),r=new Map(e.nodes.map(e=>[e.id,e.label]));return e.flows?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`p`,{className:`muted`,style:{margin:`0 0 8px`},children:[oC.from(e.flows,e.source),` `,(0,N.jsx)(`a`,{href:Gv(e.change),children:oC.flows(e.change)})]}),(0,N.jsx)(lC,{}),(0,N.jsx)(`div`,{className:`cd-canvas`,children:(0,N.jsx)($m,{graph:t,direction:`RIGHT`,pinned:{},tidy:0,onSelect:()=>void 0,onToggle:()=>void 0,onMoved:()=>void 0,onLaid:()=>void 0,height:460})}),e.problems.length>0&&(0,N.jsxs)(`div`,{role:`note`,className:`cd-problems`,children:[(0,N.jsx)(`h3`,{className:`hud`,children:oC.problems}),(0,N.jsx)(`ul`,{children:e.problems.map(e=>(0,N.jsx)(`li`,{children:e},e))})]}),(0,N.jsx)(`h3`,{className:`hud`,children:oC.parts}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`caption`,{className:`sr`,children:oC.caption(e.change)}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:oC.col.part}),(0,N.jsx)(`th`,{scope:`col`,children:oC.col.kind}),(0,N.jsx)(`th`,{scope:`col`,children:oC.col.in}),(0,N.jsx)(`th`,{scope:`col`,children:oC.col.mark})]})}),(0,N.jsx)(`tbody`,{children:e.nodes.map(e=>(0,N.jsxs)(`tr`,{className:e.legend?`m-${e.legend}`:``,children:[(0,N.jsx)(`td`,{className:`mono`,children:e.id}),(0,N.jsx)(`td`,{children:e.kind}),(0,N.jsx)(`td`,{children:e.group?n.get(e.group)??e.group:``}),(0,N.jsx)(`td`,{children:cC(e.legend)})]},e.id))})]}),(0,N.jsx)(`h3`,{className:`hud`,children:oC.lines}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:oC.col.from}),(0,N.jsx)(`th`,{scope:`col`,children:oC.col.what}),(0,N.jsx)(`th`,{scope:`col`,children:oC.col.to}),(0,N.jsx)(`th`,{scope:`col`,children:oC.col.mark})]})}),(0,N.jsx)(`tbody`,{children:e.edges.map(e=>(0,N.jsxs)(`tr`,{className:e.legend?`m-${e.legend}`:``,children:[(0,N.jsx)(`td`,{className:`mono`,children:r.get(e.from)??e.from}),(0,N.jsx)(`td`,{className:`mono`,children:e.label}),(0,N.jsx)(`td`,{className:`mono`,children:r.get(e.to)??e.to}),(0,N.jsx)(`td`,{children:cC(e.legend)})]},e.id))})]}),(0,N.jsx)(`h3`,{className:`hud`,children:oC.mermaid}),(0,N.jsx)(`p`,{className:`muted`,children:oC.mermaidHint}),(0,N.jsxs)(`div`,{className:`cd-mermaid`,children:[(0,N.jsx)(`pre`,{tabIndex:0,"aria-label":oC.mermaid,children:e.mermaid}),(0,N.jsx)(St,{text:e.mermaid,label:oC.copyMermaid})]})]}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{children:oC.noTargets(e.change)}),(0,N.jsx)(th,{text:`atticus change architecture ${e.change}`,label:E.runNext.copy})]})}function dC({hash:e}){let t=j(`/api/changes`),n=ve(e,`change`)??(t.state===`ready`?t.data[0]?.id:void 0)??void 0,r=j(n?`/api/changes/${encodeURIComponent(n)}/map`:void 0);return M(()=>r.reload()),(0,N.jsxs)(P,{title:oC.title,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 12px`,fontSize:12.5,lineHeight:1.55},children:oC.intro}),(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:oC.none,children:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(YS,{list:e,current:n,screen:`change-diagram`}),n&&(0,N.jsx)(F,{of:r,children:e=>(0,N.jsx)(uC,{map:e})})]})})]})}var fC=E.conformance,pC=e=>`${e.repo?`${e.repo}:`:``}${e.path}${e.line?`:${e.line}`:``}`;function mC({r:e}){let t=e.counts.missing+e.counts.stillThere+e.counts.unexpected>0,n=`conf-${e.repo}`;return(0,N.jsxs)(`section`,{"aria-labelledby":n,className:`est-band`,children:[(0,N.jsx)(`h3`,{id:n,className:`hud`,children:fC.repo(e.repo,e.ref)}),(0,N.jsxs)(`p`,{className:`muted`,style:{margin:`0 0 4px`},children:[fC.commits(e.commit,e.base),e.task?`. ${fC.task(e.task)}`:``]}),(0,N.jsx)(`p`,{className:`est-big`,children:t?fC.counts(e.counts):fC.allGood}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`caption`,{className:`sr`,children:fC.itemsCaption(e.repo)}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:fC.col.status}),(0,N.jsx)(`th`,{scope:`col`,children:fC.col.what}),(0,N.jsx)(`th`,{scope:`col`,children:fC.col.step}),(0,N.jsx)(`th`,{scope:`col`,children:fC.col.task}),(0,N.jsx)(`th`,{scope:`col`,children:fC.col.at}),(0,N.jsx)(`th`,{scope:`col`,children:fC.col.finding})]})}),(0,N.jsx)(`tbody`,{children:e.items.map((e,t)=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{children:e.status===`found`?fC.status[e.status]:(0,N.jsx)(`strong`,{children:fC.status[e.status]})}),(0,N.jsx)(`td`,{children:e.what}),(0,N.jsx)(`td`,{className:`mono`,children:e.flow?fC.step(e.flow,e.item):fC.noStep}),(0,N.jsx)(`td`,{className:`mono`,children:e.task??``}),(0,N.jsx)(`td`,{className:`mono`,children:e.at.map(pC).join(`, `)}),(0,N.jsx)(`td`,{className:`mono`,children:e.finding?`${e.finding.id} (${e.finding.state})`:``})]},`${e.status}.${e.check}.${e.flow??``}.${e.item??``}.${e.record??``}.${t}`))})]}),e.unchecked.length>0&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`h4`,{className:`hud`,children:fC.unchecked}),(0,N.jsx)(`p`,{className:`muted`,children:fC.uncheckedIntro}),(0,N.jsx)(`ul`,{children:e.unchecked.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:fC.step(e.flow,e.item)}),` (`,e.kind,`): `,e.why]},`${e.flow}.${e.item??`trigger`}`))})]}),e.problems.length>0&&(0,N.jsxs)(`div`,{role:`note`,className:`cd-problems`,children:[(0,N.jsx)(`h4`,{className:`hud`,children:fC.problems}),(0,N.jsx)(`ul`,{children:e.problems.map(e=>(0,N.jsx)(`li`,{children:e},e))})]})]})}function hC({c:e}){return e.flows?e.results.length?(0,N.jsxs)(N.Fragment,{children:[e.results.map(e=>(0,N.jsx)(mC,{r:e},e.repo)),(0,N.jsx)(`p`,{children:fC.gate(e.round)}),(0,N.jsx)(`p`,{className:`hud`,style:{margin:`8px 0 4px`},children:fC.run}),(0,N.jsx)(th,{text:`atticus change conform ${e.change}`,label:E.runNext.copy}),e.problems.length>0&&(0,N.jsxs)(`div`,{role:`note`,className:`cd-problems`,children:[(0,N.jsx)(`h3`,{className:`hud`,children:fC.problems}),(0,N.jsx)(`ul`,{children:e.problems.map(e=>(0,N.jsx)(`li`,{children:e},e))})]})]}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{children:fC.notChecked(e.change)}),(0,N.jsx)(th,{text:`atticus change conform ${e.change}`,label:E.runNext.copy})]}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{children:fC.noTargets(e.change)}),(0,N.jsx)(th,{text:`atticus change architecture ${e.change}`,label:E.runNext.copy})]})}function gC({hash:e}){let t=j(`/api/changes`),n=ve(e,`change`)??(t.state===`ready`?t.data[0]?.id:void 0),r=j(n?`/api/changes/${encodeURIComponent(n)}/conformance`:void 0);return M(()=>r.reload()),(0,N.jsxs)(P,{title:fC.title,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 12px`,fontSize:12.5,lineHeight:1.55},children:fC.intro}),(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:fC.none,children:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(YS,{list:e,current:n,screen:`conformance`}),n&&(0,N.jsx)(F,{of:r,children:e=>(0,N.jsx)(hC,{c:e})})]})})]})}var _C=[`Home`,`Map`,`Change`,`Questions`,`Knowledge`,`SetUp`],vC=[..._C,`Atticus`],yC=[`Define`,`Design`,`Plan`,`Build`,`Release`],bC=E.nav,xC=E.nav.screens,SC=E.knowledge.nav,CC=[{id:`home`,label:xC.home,section:`Home`,also:[E.commandCenter.waitingOnYou,bC.dashboard]},{id:`words`,label:xC.words,section:`Home`,aside:!0},{id:`canvas`,label:xC.canvas,section:`Map`},{id:`flows`,label:E.flows.title,section:`Map`},{id:`contracts`,label:xC.contracts,section:`Map`},{id:`impact`,label:xC.impact,section:`Map`},{id:`trust`,label:xC.trust,section:`Map`},{id:`explore`,label:xC.explore,section:`Map`,aside:!0},{id:`systems`,label:xC.systems,section:`Map`,aside:!0},{id:`map`,label:xC.map,section:`Map`,full:!0},{id:`features`,label:xC.features,section:`Map`,full:!0},{id:`mappings`,label:xC.mappings,section:`Map`,full:!0},{id:`diagrams`,label:xC.diagrams,section:`Map`,full:!0},{id:`reconcile`,label:xC.reconcile,section:`Map`,full:!0},{id:`governance`,label:xC.governance,section:`Map`,full:!0},{id:`initiatives`,label:xC.initiatives,section:`Map`,full:!0},{id:`changes`,label:xC.changes,section:`Change`},{id:`cockpit`,label:xC.cockpit,section:`Change`,group:`Define`},{id:`brief`,label:xC.brief,section:`Change`,group:`Define`,full:!0},{id:`ux`,label:xC.ux,section:`Change`,group:`Define`,full:!0},{id:`feature-design`,label:bC.feature,section:`Change`,group:`Define`},{id:`change-knowledge`,label:xC.changeKnowledge,section:`Change`,group:`Define`,also:[E.changeKnowledge.title]},{id:`architecture`,label:bC.architecture,section:`Change`,group:`Design`},{id:`arch-review`,label:xC.archReview,section:`Change`,group:`Design`,full:!0},{id:`change-diagram`,label:xC.changeDiagram,section:`Change`,group:`Design`,aside:!0},{id:`stories`,label:bC.stories,section:`Change`,group:`Plan`},{id:`breakdown`,label:xC.breakdown,section:`Change`,group:`Plan`,full:!0},{id:`estimate`,label:xC.estimate,section:`Change`,group:`Plan`,full:!0},{id:`task-list`,label:bC.tasks,section:`Change`,group:`Build`},{id:`tasks`,label:xC.tasks,section:`Change`,group:`Build`,full:!0},{id:`conformance`,label:xC.conformance,section:`Change`,group:`Build`,full:!0},{id:`trace`,label:xC.trace,section:`Change`,group:`Build`,full:!0},{id:`todo`,label:xC.todo,section:`Change`,group:`Build`,full:!0},{id:`release`,label:xC.release,section:`Change`,group:`Release`,full:!0},{id:`service-desk`,label:xC.serviceDesk,section:`Change`,group:`Release`,full:!0},{id:`questions`,label:E.questions.title,section:`Questions`},{id:`knowledge`,label:SC.items,section:`Knowledge`},{id:`wikis`,label:SC.sources,section:`Knowledge`},{id:`documents`,label:SC.documents,section:`Knowledge`},{id:`wiki-search`,label:SC.search,section:`Knowledge`},{id:`parties`,label:SC.parties,section:`Knowledge`,full:!0},{id:`orgpack-draft`,label:SC.orgpack,section:`Knowledge`,full:!0},{id:`repos`,label:xC.repos,section:`SetUp`},{id:`ai`,label:xC.ai,section:`SetUp`},{id:`runs`,label:xC.runs,section:`SetUp`},{id:`orgpack`,label:xC.orgpack,section:`SetUp`},{id:`onboarding`,label:bC.onboarding,section:`SetUp`,aside:!0},{id:`scans`,label:xC.scans,section:`SetUp`,full:!0},{id:`intake`,label:xC.intake,section:`SetUp`,full:!0},{id:`settings`,label:xC.settings,section:`SetUp`,full:!0},{id:`history`,label:xC.history,section:`Atticus`,full:!0},{id:`evals`,label:xC.evals,section:`Atticus`,full:!0},{id:`learning`,label:xC.learning,section:`Atticus`,full:!0}],wC=e=>bC.sections[e],TC=e=>bC.groups[e],EC=(e,t=!1)=>CC.filter(n=>n.section===e&&!n.under&&(t||!n.full&&!n.aside)),DC=(e,t=!1)=>EC(e,t)[0];function OC(){return vC.flatMap(e=>{let t=CC.filter(t=>t.section===e&&t.full);if(!t.length)return[];if(e!==`Change`)return[{section:e,pages:t}];let n=yC.map(e=>({phase:e,pages:t.filter(t=>t.group===e)})).filter(e=>e.pages.length);return[{section:e,pages:n.flatMap(e=>e.pages),phases:n}]})}var kC={dashboard:`home`};function AC(e){let t=e.replace(/^#\/?/,``).split(/[/?]/)[0]||`home`,n=kC[t]??t;return CC.find(e=>e.id===n)??CC[0]}function jC(e){let t=e.replace(/^#\/?/,``),n=/^changes\/([^/?]+)/.exec(t);if(n)return decodeURIComponent(n[1]);let r=t.split(`?`)[1];return r?new URLSearchParams(r).get(`change`)??void 0:void 0}function MC(e,t){return e.section!==`Change`||!t?`#/${e.id}`:e.id===`changes`?`#/changes/${encodeURIComponent(t)}`:`#/${e.id}?change=${encodeURIComponent(t)}`}var NC=E.cockpit,PC=(e,t)=>{let n=AC(e);return n?MC(n,t):`#/${e}`};function FC(e){return e.state===`done`?`done`:e.state===`not-started`?`todo`:`current`}function IC({c:e}){return(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`section`,{"aria-labelledby":`cockpit-where`,className:`stack`,style:{gap:6},children:[(0,N.jsx)(`h3`,{id:`cockpit-where`,className:`hud`,children:NC.where}),(0,N.jsx)(`p`,{style:{margin:0},children:NC.state(e.state,e.risk.level)}),e.work&&(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:e.work}),(0,N.jsx)(`ol`,{className:`row`,style:{gap:6,flexWrap:`wrap`,listStyle:`none`,padding:0,margin:0},children:e.stages.map(t=>{let n=FC(t);return(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`a`,{className:`chip ${n===`done`?``:n===`current`?`warn`:``}`,href:PC(NC.stageScreen[t.stage],e.id),"aria-current":n===`current`?`step`:void 0,children:NC.stage(NC.stages[t.stage],NC.marks[n])}),(t.drafts>0||t.openQuestions>0)&&(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5,marginLeft:4},children:NC.progress(t.drafts,t.rounds,t.openQuestions)})]},t.stage)})})]}),(0,N.jsxs)(`section`,{"aria-labelledby":`cockpit-next`,className:`stack`,style:{gap:6},children:[(0,N.jsx)(`h3`,{id:`cockpit-next`,className:`hud`,children:NC.next}),(0,N.jsx)(`p`,{style:{margin:0},children:e.nextStep}),e.next&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:e.next.why}),e.next.slash&&(0,N.jsx)(th,{text:e.next.slash,label:NC.copySlash}),(0,N.jsx)(th,{text:e.next.command,label:NC.copyCommand})]})]}),e.reasons.length>0&&(0,N.jsxs)(`section`,{"aria-labelledby":`cockpit-blocks`,className:`stack`,style:{gap:6},children:[(0,N.jsx)(`h3`,{id:`cockpit-blocks`,className:`hud`,children:NC.blocks}),(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:e.reasons.map(e=>(0,N.jsx)(`li`,{children:e.message},`${e.code}-${e.message}`))})]}),e.openQuestions>0&&(0,N.jsx)(`p`,{style:{margin:0},children:(0,N.jsx)(`a`,{href:PC(`questions`,e.id),children:NC.questions(e.openQuestions)})}),(0,N.jsxs)(`section`,{"aria-labelledby":`cockpit-repos`,className:`stack`,style:{gap:6},children:[(0,N.jsx)(`h3`,{id:`cockpit-repos`,className:`hud`,children:NC.repos}),e.repos.length===0?(0,N.jsx)(`p`,{className:`muted`,style:{margin:0},children:NC.noRepos}):(0,N.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:e.repos.map(e=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`span`,{className:`mono`,children:e.id}),`: `,NC.branchOn(e.branch,e.base),e.pr&&(0,N.jsxs)(N.Fragment,{children:[` · `,(0,N.jsx)(`a`,{href:e.pr,children:NC.pr})]})]},e.id))})]})]})}function LC(e){let t=NC.like;return(0,N.jsxs)(`section`,{"aria-label":t.title,children:[(0,N.jsx)(`h3`,{children:t.title}),(0,N.jsx)(`p`,{className:`muted`,children:t.intro}),e.r.how===`words`&&e.r.note&&e.r.changes.length>0&&(0,N.jsx)(`p`,{className:`muted`,children:t.byWords(e.r.note)}),e.r.changes.length===0?(0,N.jsx)(`p`,{className:`muted`,children:t.none}):(0,N.jsx)(`ul`,{className:`plain`,children:e.r.changes.map(n=>(0,N.jsxs)(`li`,{children:[(0,N.jsx)(`strong`,{children:n.title}),n.archived&&(0,N.jsxs)(`span`,{className:`muted`,children:[` · `,t.archived(n.archived)]}),n.summary&&(0,N.jsx)(`div`,{children:n.summary}),e.onUse&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy,onClick:()=>e.onUse?.(n.id),children:t.use})]},n.id))})]})}function RC({change:e}){let t=j(`/api/past-changes?change=${encodeURIComponent(e)}`),n=Ee();return(0,N.jsx)(F,{of:t,children:t=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(LC,{r:t,busy:n.busy,onUse:t=>void n.run(()=>A(`/api/changes/${encodeURIComponent(e)}/like`,{method:`POST`,body:{like:t}}),NC.like.used)}),(0,N.jsx)(De,{note:n.note})]})})}function zC(e){let t=Ee();return(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,"aria-pressed":e.watching,disabled:t.busy,onClick:()=>void t.run(async()=>{await A(`/api/me/watch`,{method:`PUT`,body:{change:e.change,watch:!e.watching}}),e.onChanged?.()},e.watching?NC.unwatched:NC.watched),children:e.watching?NC.unwatch:NC.watch}),(0,N.jsx)(De,{note:t.note})]})}function BC(e){return!e.current||!e.list.some(t=>t.id===e.current)?(0,N.jsx)(ah,{bare:!0}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(YS,{list:e.list,current:e.current,screen:`cockpit`}),(0,N.jsx)(F,{of:e.c,children:e=>(0,N.jsx)(IC,{c:e})}),(0,N.jsx)(RC,{change:e.current})]})}function VC({hash:e}){let t=j(`/api/changes`),n=ve(e,`change`),r=j(n?`/api/changes/${encodeURIComponent(n)}/cockpit`:void 0),i=j(`/api/me`);return se(r),(0,N.jsx)(P,{title:NC.title,meta:n&&i.state===`ready`?(0,N.jsx)(zC,{change:n,watching:(i.data.watching??[]).includes(n),onChanged:i.reload}):void 0,children:(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:NC.none,children:e=>(0,N.jsx)(BC,{list:e,current:n,c:r})})})}var HC=E.estimate;function UC({e}){if(!e.units.length)return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{children:HC.noTargets(e.change)}),(0,N.jsx)(th,{text:`atticus change architecture ${e.change}`,label:E.runNext.copy})]});let t=e.units.length-e.needsClass;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`section`,{"aria-labelledby":`est-effort`,className:`est-band`,children:[(0,N.jsx)(`h3`,{id:`est-effort`,className:`hud`,children:HC.effort}),e.effort?(0,N.jsxs)(`p`,{className:`est-big`,children:[HC.effortRange(e.effort.p20,e.effort.p80,e.effort.p50),` `,(0,N.jsx)(`span`,{className:`muted`,children:HC.from(t,e.units.length)})]}):(0,N.jsxs)(`p`,{className:`est-big`,children:[HC.noDays(e.units.length),` `,e.table?HC.noMatch:HC.noTable]})]}),(0,N.jsxs)(`section`,{"aria-labelledby":`est-calendar`,className:`est-band`,children:[(0,N.jsx)(`h3`,{id:`est-calendar`,className:`hud`,children:HC.calendar}),(0,N.jsxs)(`p`,{children:[e.calendar.waitDays===void 0?HC.noWait:HC.waiting(e.calendar.waitDays),e.calendar.longer&&(0,N.jsxs)(N.Fragment,{children:[` `,HC.longer(e.calendar.longer)]})]})]}),(0,N.jsxs)(`section`,{"aria-labelledby":`est-calibration`,className:`est-band`,children:[(0,N.jsx)(`h3`,{id:`est-calibration`,className:`hud`,children:HC.calibration}),(0,N.jsx)(`p`,{children:HC.notCalibrated(e.calibration.source,e.table)})]}),(0,N.jsx)(`h3`,{className:`hud`,children:HC.drivers}),e.drivers.length?(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`caption`,{className:`sr`,children:HC.driversCaption}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:HC.col.what}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.count}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.effect}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.source})]})}),(0,N.jsx)(`tbody`,{children:e.drivers.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{children:e.what}),(0,N.jsx)(`td`,{children:e.count}),(0,N.jsx)(`td`,{children:e.widens?HC.widens(e.widens):``}),(0,N.jsx)(`td`,{className:`mono`,children:e.source??``})]},e.id))})]}):(0,N.jsx)(`p`,{children:HC.noDrivers}),e.perRepo.length>1&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`h3`,{className:`hud`,children:HC.perRepo}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:HC.col.repo}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.units}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.days})]})}),(0,N.jsx)(`tbody`,{children:e.perRepo.map(e=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{className:`mono`,children:e.repo}),(0,N.jsx)(`td`,{children:e.units}),(0,N.jsx)(`td`,{children:e.effort?HC.days(e.effort):HC.needsClass})]},e.repo))})]})]}),(0,N.jsx)(`h3`,{className:`hud`,children:HC.work}),(0,N.jsxs)(`table`,{className:`run-table`,children:[(0,N.jsx)(`caption`,{className:`sr`,children:HC.workCaption(e.change)}),(0,N.jsx)(`thead`,{children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{scope:`col`,children:HC.col.repo}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.flow}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.step}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.what}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.cls}),(0,N.jsx)(`th`,{scope:`col`,children:HC.col.days})]})}),(0,N.jsx)(`tbody`,{children:e.units.map((e,t)=>(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`td`,{className:`mono`,children:e.repo}),(0,N.jsx)(`td`,{className:`mono`,children:e.flow}),(0,N.jsx)(`td`,{children:e.step??``}),(0,N.jsx)(`td`,{children:e.what}),(0,N.jsx)(`td`,{className:`mono`,children:e.class}),(0,N.jsx)(`td`,{children:e.days?HC.days(e.days):(0,N.jsx)(`strong`,{children:HC.needsClass})})]},`${e.flow}.${e.step??`flow`}.${t}`))})]}),e.problems.length>0&&(0,N.jsxs)(`div`,{role:`note`,className:`cd-problems`,children:[(0,N.jsx)(`h3`,{className:`hud`,children:HC.problems}),(0,N.jsx)(`ul`,{children:e.problems.map(e=>(0,N.jsx)(`li`,{children:e},e))})]})]})}function WC({hash:e}){let t=j(`/api/changes`),n=ve(e,`change`)??(t.state===`ready`?t.data[0]?.id:void 0),r=j(n?`/api/changes/${encodeURIComponent(n)}/estimate`:void 0);return M(()=>r.reload()),(0,N.jsxs)(P,{title:HC.title,children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 12px`,fontSize:12.5,lineHeight:1.55},children:HC.intro}),(0,N.jsx)(F,{of:t,empty:e=>e.length===0,emptyText:HC.none,children:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(YS,{list:e,current:n,screen:`estimate`}),n&&(0,N.jsx)(F,{of:r,children:e=>(0,N.jsx)(UC,{e})})]})})]})}var GC=E.changeKnowledge,KC=E.runNext,qC=e=>e.title??e.id,JC=e=>GC.kinds[e]??e;function YC({item:e}){return(0,N.jsxs)(N.Fragment,{children:[e.title?(0,N.jsx)(`span`,{children:e.title}):(0,N.jsx)(`code`,{className:`mono`,children:e.id}),` `,(0,N.jsx)(`span`,{className:`muted`,children:JC(e.kind)}),e.title&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`br`,{}),(0,N.jsx)(`code`,{className:`mono muted`,children:e.id})]}),e.source&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`br`,{}),(0,N.jsx)(`span`,{className:`muted`,children:GC.fromSource(e.source,e.authority)})]})]})}function XC(e){return(0,N.jsxs)(`span`,{className:`row`,style:{gap:6,flexWrap:`wrap`},children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy||e.item.status===`confirmed`,"aria-label":GC.confirmItem(qC(e.item)),onClick:()=>e.onSet(e.item.id,`confirmed`),children:GC.confirm}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,disabled:e.busy||e.item.status===`excluded`,"aria-label":GC.excludeItem(qC(e.item)),onClick:()=>e.onSet(e.item.id,`excluded`),children:GC.exclude})]})}function ZC({w:e,named:t}){return e.state===`idle`?null:e.state===`working`?(0,N.jsx)(`p`,{role:`status`,"aria-busy":`true`,className:`work-say`,children:GC.working}):e.state===`error`?(0,N.jsx)(`p`,{role:`alert`,className:`state error`,style:{margin:`8px 0 0`},children:e.text}):(0,N.jsxs)(`div`,{role:`status`,style:{marginTop:8},children:[(0,N.jsx)(`p`,{className:`work-say`,children:GC.set(t(e.id),GC.statuses[e.status].toLowerCase(),e.result.file)}),(0,N.jsx)(th,{text:e.result.commit,label:GC.copyCommit})]})}function QC(e){let t=e.written??{state:`idle`},n=t=>{let n=e.of.state===`ready`?e.of.data:void 0,r=[...n?.items??[],...n?.nearMisses??[]].find(e=>e.id===t);return r?qC(r):t},r=t.state===`working`,i=e.onSet??(()=>void 0);return(0,N.jsxs)(P,{title:GC.title,span:`1 / -1`,children:[(0,N.jsx)(`p`,{className:`work-why`,style:{marginTop:0},children:GC.intro}),(0,N.jsx)(F,{of:e.of,empty:e=>!e.present,emptyContent:(0,N.jsxs)(`div`,{className:`state`,children:[(0,N.jsx)(`p`,{style:{margin:`0 0 8px`},children:GC.none}),(0,N.jsx)(`p`,{className:`work-say`,children:KC.terminal}),(0,N.jsx)(th,{text:GC.featureCommand(e.change),label:KC.copy})]}),children:e=>(0,N.jsxs)(N.Fragment,{children:[e.items.length>0?(0,N.jsx)(Oe,{caption:GC.caption,rows:e.items,rowKey:e=>e.id,cols:[{label:GC.item,cell:e=>(0,N.jsx)(YC,{item:e})},{label:GC.why,cell:e=>[e.reason,e.stages.join(`, `)||(e.tasks?.length?``:GC.noStages),e.tasks?.length?GC.tasks(e.tasks):``].filter(Boolean).join(` · `)},{label:GC.status,cell:e=>(0,N.jsx)(`span`,{className:`chip ${e.status===`confirmed`?`done`:e.status===`excluded`?`dim`:`warn`}`,children:GC.statuses[e.status]})},{label:GC.actions,cell:e=>(0,N.jsx)(XC,{item:e,busy:r,onSet:i})}]}):(0,N.jsx)(`div`,{className:`state`,children:GC.none}),e.nearMisses.length>0&&(0,N.jsxs)(`details`,{style:{marginTop:8},children:[(0,N.jsx)(`summary`,{children:GC.nearMisses(e.nearMisses.length)}),(0,N.jsx)(`ul`,{className:`stack`,style:{listStyle:`none`,padding:0,margin:`8px 0 0`},children:e.nearMisses.map(e=>(0,N.jsxs)(`li`,{className:`row between`,style:{gap:8,flexWrap:`wrap`},children:[(0,N.jsxs)(`span`,{children:[(0,N.jsx)(YC,{item:e}),` `,(0,N.jsxs)(`span`,{className:`muted`,children:[`· `,GC.nearMissStage(e.stage)]})]}),(0,N.jsx)(XC,{item:e,busy:r,onSet:i})]},e.id))})]}),e.conflicts?.length?(0,N.jsxs)(`section`,{"aria-label":E.knowledgeConflicts.title,style:{marginTop:12},children:[(0,N.jsx)(`h3`,{style:{margin:`0 0 4px`},children:E.knowledgeConflicts.title}),(0,N.jsx)(`p`,{className:`work-why`,style:{marginTop:0},children:E.knowledgeConflicts.intro}),(0,N.jsx)(sg,{conflicts:e.conflicts})]}):null,(0,N.jsx)(ZC,{w:t,named:n})]})})]})}function $C({change:e}){let t=`/api/changes/${encodeURIComponent(e)}/knowledge`,n=j(t);se(n);let[r,i]=(0,v.useState)({state:`idle`});return(0,N.jsx)(QC,{change:e,of:n,written:r,onSet:(e,r)=>{i({state:`working`}),A(`${t}/${encodeURIComponent(e)}`,{method:`POST`,body:{status:r}}).then(t=>{i({state:`done`,id:e,status:r,result:t}),n.reload()}).catch(e=>i({state:`error`,text:Te(e)}))}})}function ew(e){return(0,N.jsx)(F,{of:e.list,empty:e=>e.length===0,emptyContent:(0,N.jsx)(oh,{}),children:t=>{let n=U_(t,e.wanted);return n?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(`div`,{className:`row between`,style:{flexWrap:`wrap`,marginBottom:12},children:[(0,N.jsx)(`p`,{style:{margin:0},children:(0,N.jsx)(`span`,{className:`n`,style:{fontSize:20},children:n.title})}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:12,flexWrap:`wrap`},children:[(0,N.jsx)(Bh,{change:n.id}),(0,N.jsx)(YS,{list:t,current:n.id,screen:`change-knowledge`})]})]}),(0,N.jsx)(`div`,{className:`bento`,children:e.panel(n.id)})]}):(0,N.jsx)(ah,{})}})}function tw({hash:e}){let t=j(`/api/changes`);return M(e=>{e.type===`file.changed`&&t.reload()}),(0,N.jsx)(ew,{list:t,wanted:ve(e,`change`),panel:e=>(0,N.jsx)($C,{change:e})})}var nw=E.work;function rw({done:e}){return(0,N.jsx)(`span`,{className:`chip ${e?`done`:`dim`}`,children:e?nw.done:nw.todo})}function iw({v:e,openQuestions:t}){let n=W_(e),r=e.repos[0]?.id??`<repo>`,i=e.repos.find(e=>e.lastScan===null)?.id??r,a=n.listed>0&&n.scanned===n.listed;return(0,N.jsxs)(`ol`,{className:`work-steps`,children:[(0,N.jsxs)(`li`,{children:[(0,N.jsxs)(`p`,{children:[(0,N.jsx)(rw,{done:n.listed>0}),` `,e.manifests.length?nw.stepPick:nw.stepPickNone]}),e.manifests.map(e=>(0,N.jsx)(`p`,{children:(0,N.jsx)(`code`,{className:`mono`,children:e.path})},e.path)),(0,N.jsx)(th,{text:`atticus repos discover <folder>`,label:E.runNext.copy}),(0,N.jsx)(`p`,{className:`work-say`,children:nw.stepAddOne}),(0,N.jsx)(th,{text:`atticus repo add <url> --description "what it is"`,label:E.runNext.copy})]}),(0,N.jsxs)(`li`,{children:[(0,N.jsxs)(`p`,{children:[(0,N.jsx)(rw,{done:n.listed>0&&n.cloned===n.listed}),` `,nw.stepSync]}),(0,N.jsx)(th,{text:`atticus workspace sync`,label:E.runNext.copy})]}),(0,N.jsxs)(`li`,{children:[(0,N.jsxs)(`p`,{children:[(0,N.jsx)(rw,{done:a}),` `,nw.stepRead]}),(0,N.jsx)(th,{text:`atticus map ${i}`,label:E.runNext.copy}),(0,N.jsx)(`p`,{className:`work-say`,children:E.runNext.slash}),(0,N.jsx)(th,{text:`/atticus-map ${i}`,label:E.runNext.copySlash})]}),(0,N.jsxs)(`li`,{children:[(0,N.jsxs)(`p`,{children:[(0,N.jsx)(rw,{done:a}),` `,nw.stepWrite]}),(0,N.jsx)(th,{text:`atticus verify ${i} --write`,label:E.runNext.copy})]}),(0,N.jsx)(`li`,{children:(0,N.jsxs)(`p`,{children:[(0,N.jsx)(rw,{done:a&&t===0}),` `,nw.stepAnswer,` `,(0,N.jsx)(`a`,{href:`#/questions`,children:nw.stepAnswerLink})]})}),(0,N.jsx)(`li`,{children:(0,N.jsxs)(`p`,{children:[nw.stepTrust,` `,(0,N.jsx)(`a`,{href:`#/trust`,children:nw.openTrust})]})})]})}function aw({v:e}){return e.repos.length===0?(0,N.jsx)(`div`,{className:`state`,children:nw.noRepos}):(0,N.jsx)(Oe,{caption:nw.repos,rows:e.repos,rowKey:e=>e.id,cols:[{label:nw.repoCol,cell:e=>e.id,mono:!0},{label:nw.aboutCol,cell:e=>e.description?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{children:e.description.text}),e.description.trust===`suggested`&&(0,N.jsx)(`span`,{className:`chip warn`,style:{marginLeft:6},children:nw.aboutDraft})]}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:nw.aboutMissing}),(0,N.jsx)(th,{text:`atticus repo describe ${e.id}`,label:E.runNext.copy})]})},{label:nw.typeCol,cell:e=>e.type,mono:!0},{label:nw.matchCol,cell:e=>(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:nw.matchHint}),(0,N.jsx)(th,{text:`atticus repo-type detect ${e.id}`,label:E.runNext.copy})]})},{label:nw.cloneCol,cell:e=>(0,N.jsx)(`span`,{className:`chip ${e.cloned?`done`:`dim`}`,children:e.cloned?nw.cloned:nw.notCloned})},{label:nw.settingsCol,cell:e=>e.scanSettings.present?(0,N.jsx)(`code`,{className:`mono`,children:e.scanSettings.path}):(0,N.jsx)(`span`,{className:`muted`,children:nw.settingsMissing})},{label:nw.lastScanCol,cell:e=>e.lastScan?(0,N.jsxs)(`span`,{children:[nw.recordCount(e.lastScan.records),e.lastScan.commit?` ${nw.atCommit(e.lastScan.commit)}`:``,(0,N.jsx)(`br`,{}),(0,N.jsx)(`span`,{className:`muted`,style:{fontSize:11.5},children:Object.entries(e.lastScan.kinds).sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])).map(([e,t])=>`${e} ${t}`).join(`, `)})]}):(0,N.jsx)(`span`,{className:`muted`,children:nw.notScanned})}]})}function ow({v:e}){let t=e.sources;return t.present?(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsxs)(`p`,{style:{margin:0},children:[nw.sourcesFile,`: `,(0,N.jsx)(`code`,{className:`mono`,children:t.path})]}),t.wikis.length===0&&t.absorbed.length===0&&(0,N.jsx)(`div`,{className:`state`,children:nw.sourcesNone(t.path)}),t.wikis.length>0&&(0,N.jsx)(Oe,{caption:nw.sources,rows:t.wikis,rowKey:e=>e.id,cols:[{label:nw.wikiCol,cell:e=>e.id,mono:!0},{label:nw.kindCol,cell:e=>e.type},{label:nw.whereCol,cell:e=>e.location,mono:!0},{label:nw.spacesCol,cell:e=>e.spaces.join(`, `)},{label:nw.ownerCol,cell:e=>e.owner??``}]}),t.absorbed.length>0&&(0,N.jsx)(Oe,{caption:nw.absorbedTitle,rows:t.absorbed,rowKey:e=>e.id,cols:[{label:nw.absorbedTitle,cell:e=>e.id,mono:!0},{label:nw.kindCol,cell:e=>`${e.format} · ${e.mode}`},{label:nw.whereCol,cell:e=>e.url,mono:!0}]}),t.wikis.length>0&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`work-say`,children:nw.syncSources}),(0,N.jsx)(th,{text:`atticus sources sync`,label:E.runNext.copy})]})]}):(0,N.jsx)(`div`,{className:`state`,children:nw.sourcesMissing(t.path)})}function sw({of:e,questions:t,trust:n}){let r=t.state===`ready`?t.data.questions.length:0;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`p`,{className:`muted`,style:{margin:`0 0 12px`,fontSize:12.5,lineHeight:1.55},children:nw.onbIntro}),(0,N.jsx)(ih,{of:e,step:e=>q_(e,r,n?.state===`ready`?n.data:void 0)}),(0,N.jsxs)(`div`,{className:`bento`,children:[(0,N.jsx)(P,{title:nw.steps,span:`span 5`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsx)(iw,{v:e,openQuestions:r})})}),(0,N.jsx)(P,{title:nw.sources,span:`span 7`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsx)(ow,{v:e})})}),(0,N.jsx)(P,{title:nw.repos,span:`1 / -1`,children:(0,N.jsx)(F,{of:e,children:e=>(0,N.jsxs)(`div`,{className:`stack`,children:[(0,N.jsx)(sh,{list:e.problems}),(0,N.jsx)(aw,{v:e})]})})})]})]})}function cw(){let e=j(`/api/onboarding`),t=j(`/api/questions?state=open`),n=j(`/api/trust`);return M(r=>{r.type===`file.changed`&&(e.reload(),t.reload(),n.reload())}),(0,N.jsx)(sw,{of:e,questions:t,trust:n})}var lw={onboarding:()=>(0,N.jsx)(cw,{}),"feature-design":eC,"change-knowledge":tw,architecture:aC,stories:tC,"task-list":nC,canvas:({hash:e})=>(0,N.jsx)(Ch,{hash:e,screen:`canvas`}),trust:()=>(0,N.jsx)(b_,{}),home:()=>(0,N.jsx)(wv,{}),changes:f_,explore:jv,flows:ay,questions:xy,...ob,...mx,...wS,runs:Zh,history:IS,"change-diagram":dC,estimate:WC,cockpit:VC,conformance:gC,words:RS},uw=E.notBuilt;function dw({screen:e}){return(0,N.jsx)(P,{title:e.label,children:(0,N.jsxs)(`p`,{style:{margin:0,color:`var(--text-2)`,lineHeight:1.6},children:[uw.thisScreenIsBeing,(0,N.jsx)(`code`,{className:`mono`,children:uw.atticusHelp}),` `,uw.toFindTheCommand]})})}var fw=E.boundary,pw=class extends v.Component{state={};static getDerivedStateFromError(e){return{error:e instanceof Error?e.message:String(e)}}render(){return this.state.error?(0,N.jsx)(`div`,{className:`bento`,children:(0,N.jsxs)(`section`,{className:`panel`,style:{gridColumn:`1 / -1`},role:`alert`,children:[(0,N.jsx)(`h2`,{className:`h`,children:fw.couldntBeShown(this.props.name)}),(0,N.jsx)(`p`,{className:`muted`,style:{margin:`8px 0 0`},children:fw.somethingOnThisScreen(this.state.error)})]})}):this.props.children}},mw=E.palette,hw=`atticus:open-palette`;function gw(e,t,n){let r=e.trim().toLowerCase(),i=e=>!r||e.toLowerCase().includes(r),a=[...CC.filter(e=>i(e.label)||i(e.id)||(e.also??[]).some(i)).map(e=>({kind:`screen`,label:e.label,detail:e.group?`${wC(e.section)} · ${TC(e.group)}`:wC(e.section),href:`#/${e.id}`})),...t.filter(e=>i(e.id)||i(e.title)).map(e=>({kind:`change`,label:e.title,detail:`${e.id} · ${e.state}`,href:`#/changes/${encodeURIComponent(e.id)}`})),...n.map(e=>({kind:`record`,label:e.name&&e.name!==e.id?`${e.id} · ${e.name}`:e.id,detail:e.kind,href:e.kind===`Capability`?`#/features?id=${encodeURIComponent(e.id)}`:`#/explore?q=${encodeURIComponent(e.id)}`}))];return r&&a.push({kind:`ask`,label:mw.askItem(e.trim()),detail:mw.askDetail,href:`#/explore?ask=${encodeURIComponent(e.trim())}`}),a.slice(0,14)}function _w(){let[e,t]=(0,v.useState)(!1),[n,r]=(0,v.useState)(``),[i,a]=(0,v.useState)(0),[o,s]=(0,v.useState)([]),[c,l]=(0,v.useState)([]),u=(0,v.useRef)(null),d=(0,v.useRef)(null);(0,v.useEffect)(()=>{let e=e=>{(e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`k`&&(e.preventDefault(),d.current=document.activeElement,t(e=>!e))},n=()=>{d.current=document.activeElement,t(!0)};return addEventListener(`keydown`,e),addEventListener(hw,n),()=>{removeEventListener(`keydown`,e),removeEventListener(hw,n)}},[]),(0,v.useEffect)(()=>{e&&(r(``),a(0),u.current?.focus(),A(`/api/changes`).then(s).catch(()=>s([])))},[e]),(0,v.useEffect)(()=>{let t=n.trim();if(!e||t.length<2){l([]);return}let r=setTimeout(()=>{A(`/api/search?q=${encodeURIComponent(t.split(/\s+/)[0])}&limit=6`).then(e=>l(e.rows)).catch(()=>l([]))},150);return()=>clearTimeout(r)},[n,e]);let f=(0,v.useMemo)(()=>gw(n,o,c),[n,o,c]),p=()=>{t(!1),d.current?.focus?.()},m=e=>{e&&(location.hash=e.href,p())};return e?(0,N.jsx)(`div`,{className:`palette-backdrop`,onClick:p,children:(0,N.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-label":mw.goToAnything,className:`palette panel`,onClick:e=>e.stopPropagation(),onKeyDown:e=>{e.key===`Escape`?p():e.key===`ArrowDown`?(e.preventDefault(),a(e=>Math.min(e+1,f.length-1))):e.key===`ArrowUp`?(e.preventDefault(),a(e=>Math.max(e-1,0))):e.key===`Enter`&&(e.preventDefault(),m(f[i]))},children:[(0,N.jsx)(`label`,{htmlFor:`palette-input`,className:`sr`,children:mw.goToAScreen}),(0,N.jsx)(`input`,{id:`palette-input`,ref:u,value:n,onChange:e=>{r(e.target.value),a(0)},placeholder:mw.goToAScreen2,role:`combobox`,"aria-expanded":`true`,"aria-controls":`palette-list`,"aria-activedescendant":f[i]?`palette-${i}`:void 0,autoComplete:`off`}),(0,N.jsxs)(`ul`,{id:`palette-list`,role:`listbox`,"aria-label":mw.results,children:[f.map((e,t)=>(0,N.jsxs)(`li`,{id:`palette-${t}`,role:`option`,"aria-selected":t===i,onMouseEnter:()=>a(t),onClick:()=>m(e),children:[(0,N.jsx)(`span`,{children:e.label}),(0,N.jsxs)(`span`,{className:`hud`,style:{fontSize:9.5},children:[e.kind,` · `,e.detail]})]},`${e.kind}/${e.href}`)),f.length===0&&(0,N.jsx)(`li`,{className:`muted`,children:mw.nothingMatches})]}),(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:9.5,marginTop:8},children:mw.toMoveEnterTo})]})}):null}var vw=E.tour,yw=e=>`.nav a[href="#/${e}"]`,bw=[{...vw.steps.home,target:yw(`home`)},{...vw.steps.ask,target:`.ask-form`},{...vw.steps.change,target:yw(`changes`)},{...vw.steps.assistant},{...vw.steps.approve,target:yw(`changes`)}],xw=`atticus.tour.done`,Sw=e=>`${xw}:${e}`,Cw=()=>{try{return localStorage}catch{return}};function ww(e,t=Cw()){try{return t?.getItem(Sw(e))===`1`}catch{return!1}}function Tw(e,t=Cw()){try{t?.setItem(Sw(e),`1`)}catch{}}var Ew=()=>dispatchEvent(new Event(`atticus:tour`));function Dw({metarepo:e}){let[t,n]=(0,v.useState)(!1),[r,i]=(0,v.useState)(0),a=e??``,o=()=>Tw(a);(0,v.useEffect)(()=>{e!==void 0&&!ww(e??``)&&window.self===window.top&&(i(0),n(!0))},[e]),(0,v.useEffect)(()=>{if(!t)return;let e=()=>{Tw(a),n(!1)};return addEventListener(`hashchange`,e),()=>removeEventListener(`hashchange`,e)},[t,a]),(0,v.useEffect)(()=>{let e=()=>{i(0),n(!0)};return addEventListener(`atticus:tour`,e),()=>removeEventListener(`atticus:tour`,e)},[]);let s=bw[r];(0,v.useEffect)(()=>{if(!t||!s?.target)return;let e=document.querySelector(s.target);return e?.classList.add(`tour-target`),()=>e?.classList.remove(`tour-target`)},[t,s]),(0,v.useEffect)(()=>{if(!t)return;let e=e=>{e.key===`Escape`&&(o(),n(!1))};return addEventListener(`keydown`,e),()=>removeEventListener(`keydown`,e)},[t]);let c=(0,v.useRef)(null);(0,v.useEffect)(()=>{if(!t)return;let e=document.activeElement;return()=>e?.focus?.()},[t]),(0,v.useEffect)(()=>{t&&c.current?.querySelector(`.btn.primary`)?.focus()},[t,r]);let l=e=>{if(e.key!==`Tab`)return;let t=[...c.current?.querySelectorAll(`button`)??[]];if(!t.length)return;let n=t.indexOf(document.activeElement);t[e.shiftKey?n<=0?t.length-1:n-1:n===t.length-1?0:n+1].focus(),e.preventDefault()};if(!t||!s)return null;let u=()=>{o(),n(!1)};return(0,N.jsxs)(`div`,{ref:c,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`tour-title`,className:`tour panel hero`,onKeyDown:l,children:[(0,N.jsx)(`div`,{className:`hud`,style:{fontSize:10},children:vw.tourOf(r+1,bw.length,E.app.tourEscape)}),(0,N.jsx)(`h2`,{id:`tour-title`,className:`h`,style:{margin:`6px 0`},children:s.title}),(0,N.jsx)(`p`,{style:{margin:`0 0 12px`,lineHeight:1.55,fontSize:13},children:s.body}),(0,N.jsxs)(`div`,{className:`row between`,children:[(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:u,children:vw.skipTheTour}),(0,N.jsxs)(`div`,{className:`row`,style:{gap:6},children:[r>0&&(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>i(r-1),children:vw.back}),r<bw.length-1?(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,onClick:()=>i(r+1),children:vw.next}):(0,N.jsx)(`button`,{type:`button`,className:`btn primary`,onClick:u,children:vw.done})]})]})]})}var Ow=E.menu;function kw(){return(0,N.jsxs)(`svg`,{"aria-hidden":`true`,width:`26`,height:`26`,viewBox:`0 0 24 24`,fill:`none`,stroke:`var(--accent)`,strokeLinecap:`round`,style:{filter:`drop-shadow(0 0 var(--glow-size) var(--accent))`},children:[(0,N.jsxs)(`g`,{strokeWidth:`1.25`,children:[(0,N.jsx)(`circle`,{cx:`6.5`,cy:`12.4`,r:`4.5`}),(0,N.jsx)(`circle`,{cx:`17.5`,cy:`12.4`,r:`4.5`}),(0,N.jsx)(`path`,{d:`M11 11.4 H13`})]}),(0,N.jsx)(`path`,{strokeWidth:`1.05`,d:`M3.7 11.3 Q3.9 10.0 5.2 9.6 M20.3 11.3 Q20.1 10.0 18.8 9.6`})]})}var Aw=`atticus.menu.more`;function jw(){try{return globalThis.localStorage}catch{return}}function Mw(e=jw()){try{let t=e?.getItem(Aw);return t===`open`||t!==`closed`&&void 0}catch{return}}function Nw(e,t=jw()){try{t?.setItem(Aw,e?`open`:`closed`)}catch{}}function Pw(e){return/Mac|iPhone|iPad|iPod/.test(e??``)?Ow.keysMac:Ow.keys}function Fw(){try{let e=globalThis.navigator;return e?.userAgentData?.platform||e?.platform}catch{return}}function Iw({current:e,hash:t,full:n}){let[r,i]=(0,v.useState)(()=>Mw()),a=(0,v.useRef)(null),o=OC(),s=o.reduce((e,t)=>e+t.pages.length,0),c=e.under??e.id,l=o.some(e=>e.pages.some(e=>e.id===c)),u=r??(n||l),d=jC(t),f=e=>{i(e),Nw(e)},p=e=>(0,N.jsx)(`a`,{href:MC(e,d),"aria-current":e.id===c?`page`:void 0,children:e.label},e.id);return(0,N.jsxs)(`div`,{className:`more`,onKeyDown:e=>{e.key===`Escape`&&u&&(e.stopPropagation(),f(!1),a.current?.focus())},children:[(0,N.jsxs)(`button`,{ref:a,type:`button`,className:`more-toggle`,"aria-expanded":u,"aria-controls":`more-pages`,onClick:()=>f(!u),children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,className:`more-caret`,children:`▸`}),(0,N.jsx)(`span`,{children:Ow.morePages}),(0,N.jsx)(`span`,{className:`more-count`,children:s})]}),(0,N.jsx)(`div`,{id:`more-pages`,className:`more-pages`,hidden:!u,children:o.map(e=>(0,N.jsxs)(`div`,{role:`group`,"aria-label":wC(e.section),children:[(0,N.jsx)(`span`,{className:`more-group`,"aria-hidden":`true`,children:wC(e.section)}),e.phases?e.phases.map(e=>(0,N.jsxs)(`div`,{role:`group`,"aria-label":TC(e.phase),children:[(0,N.jsx)(`span`,{className:`more-phase`,"aria-hidden":`true`,children:TC(e.phase)}),e.pages.map(p)]},e.phase)):e.pages.map(p)]},e.section))})]})}function Lw({current:e,hash:t=``,full:n=!1}){return(0,N.jsxs)(`nav`,{"aria-label":E.nav.main,className:`nav`,children:[(0,N.jsxs)(`div`,{className:`brand`,children:[(0,N.jsx)(kw,{}),Ow.atticus]}),(0,N.jsx)(`div`,{role:`group`,"aria-label":E.nav.main,children:_C.map(t=>{let n=DC(t);return(0,N.jsx)(`a`,{href:`#/${n.id}`,"aria-current":e.section===t?`page`:void 0,children:wC(t)},t)})}),(0,N.jsxs)(`a`,{className:`ask`,href:`#/explore`,children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,style:{width:8,height:8,borderRadius:`50%`,background:`var(--accent)`,boxShadow:`0 0 8px var(--accent)`}}),Ow.askAtticus]}),(0,N.jsx)(Iw,{current:e,hash:t,full:n}),(0,N.jsx)(`button`,{type:`button`,className:`menu-hint hud`,onClick:()=>dispatchEvent(new Event(hw)),children:Ow.anyPage(Pw(Fw()))})]})}var Rw=E.nav;function zw({current:e,hash:t,full:n=!1}){let r=EC(e.section,n),i=wC(e.section),a=e.section===`Change`?jC(t):void 0;if(r.length<2&&(r[0]?.id===e.id||!r.length))return null;let o=e.under??e.id,s=e=>(0,N.jsx)(`a`,{href:MC(e,a),"aria-current":e.id===o?`page`:void 0,children:e.label},e.id),c=n&&e.section===`Change`,l=c?r.filter(e=>!e.group):r;return(0,N.jsxs)(`div`,{className:`section-tabs`,children:[(0,N.jsxs)(`nav`,{"aria-label":Rw.youAreHere,className:`crumbs hud`,children:[(0,N.jsx)(`span`,{children:i}),a&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,children:` › `}),(0,N.jsx)(`span`,{children:Rw.ofChange(a)})]}),(0,N.jsx)(`span`,{"aria-hidden":`true`,children:` › `}),(0,N.jsx)(`span`,{"aria-current":`location`,children:e.label})]}),r.length>1&&(0,N.jsxs)(`nav`,{"aria-label":Rw.tabs(i),className:`tabs`,children:[l.map(s),c&&yC.map(e=>{let t=r.filter(t=>t.group===e);return t.length?(0,N.jsxs)(`span`,{role:`group`,"aria-label":TC(e),className:`tab-group`,children:[(0,N.jsx)(`span`,{className:`tab-group-name`,"aria-hidden":`true`,children:TC(e)}),t.map(s)]},e):null})]})]})}var Bw=[`system`,`light`,`dark`],Vw=`atticus.theme`;function Hw(){try{return globalThis.localStorage}catch{return}}function Uw(e=Hw()){try{let t=e?.getItem(Vw);return Bw.includes(t)?t:`system`}catch{return`system`}}function Ww(e,t=Hw()){try{t?.setItem(Vw,e)}catch{}}function Gw(e,t){return e===`system`?t?`light`:`dark`:e}function Kw(e=document){let t=e.body?.classList;return!!t&&[`vscode-light`,`vscode-dark`,`vscode-high-contrast`].some(e=>t.contains(e))}function qw(e,t,n=document){if(Kw(n))return;let r=Gw(e,t);n.documentElement.dataset.theme=r,n.documentElement.style.colorScheme=r}var Jw=`(prefers-color-scheme: light)`,Yw=()=>!!globalThis.matchMedia?.(Jw).matches;function Xw(){qw(Uw(),Yw())}function Zw(){let[e,t]=(0,v.useState)(()=>Uw());return(0,v.useEffect)(()=>{if(qw(e,Yw()),e!==`system`)return;let t=globalThis.matchMedia?.(Jw);if(!t)return;let n=()=>qw(`system`,t.matches);return t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)},[e]),[e,e=>{Ww(e),t(e)}]}var Qw=E.shell;function $w(){let[e,t]=(0,v.useState)(location.hash);return(0,v.useEffect)(()=>{let e=()=>t(location.hash);return addEventListener(`hashchange`,e),()=>removeEventListener(`hashchange`,e)},[]),e}function eT(){let{me:e}=Ah();return!e||e.ai===`on`?null:(0,N.jsx)(`span`,{className:`chip warn`,title:e.ai===`off`?Qw.aiIsOffIn:Qw.imageReadingIsOff,children:e.ai===`off`?Qw.aiOff:Qw.textOnlyAi})}function tT({health:e}){let{me:t}=Ah(),n=t?.name?`${t.name} (${e.user})`:e.user;return(0,N.jsxs)(N.Fragment,{children:[t?.warning&&(0,N.jsx)(`span`,{className:`chip warn`,title:t.warning,role:`note`,"aria-label":t.warning,children:Qw.setYourGitUser}),(0,N.jsxs)(`span`,{className:`chip dim`,title:Qw.recordedAs(e.root,t?.email?` · ${t.email}`:``,e.user),children:[n,` · v`,e.version]})]})}function nT(){let[e,t]=Zw();return(0,N.jsxs)(`span`,{className:`row`,style:{gap:6},children:[(0,N.jsx)(`label`,{htmlFor:`theme`,className:`hud`,style:{fontSize:9.5},children:E.theme.label}),(0,N.jsx)(`select`,{id:`theme`,className:`field`,style:{height:28,fontSize:12},title:E.theme.hint,value:e,onChange:e=>t(e.target.value),children:Bw.map(e=>(0,N.jsx)(`option`,{value:e,children:E.theme.choices[e]},e))})]})}function rT(e,t){let n=e?.rows[0]?.id??t?.rows[0]?.id;return n?Qw.askWhatBreaksIf(n):Qw.askNeutral}function iT(){let e=j(`/api/search?q=kind:table&limit=1`),t=j(e.state===`error`||e.state===`ready`&&!e.data.rows.length?`/api/search?q=kind:endpoint&limit=1`:void 0);return rT(e.state===`ready`?e.data:void 0,t.state===`ready`?t.data:void 0)}function aT({health:e}){let t=iT(),[n,r]=(0,v.useState)(``),[i,a]=(0,v.useState)(!1);return(0,N.jsxs)(`header`,{className:`topbar`,children:[(0,N.jsxs)(`form`,{role:`search`,className:`ask-form`,onSubmit:e=>{e.preventDefault(),n.trim()?location.hash=`#/explore?ask=${encodeURIComponent(n.trim())}`:(a(!0),document.getElementById(`ask`)?.focus())},children:[(0,N.jsx)(`label`,{htmlFor:`ask`,className:`sr`,children:Qw.askAtticus}),(0,N.jsx)(`input`,{id:`ask`,value:n,onChange:e=>{r(e.target.value),a(!1)},"aria-describedby":i?`ask-blank`:void 0,placeholder:t}),(0,N.jsx)(`button`,{type:`submit`,className:`btn`,"aria-label":Qw.ask,children:Qw.ask}),(0,N.jsx)(`span`,{id:`ask-blank`,role:`status`,className:i?`chip warn`:`sr`,children:i?E.app.askEmpty:``})]}),(0,N.jsx)(eT,{}),!T()&&!Kw()&&(0,N.jsx)(nT,{}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,onClick:Ew,title:Qw.replayTheTour,children:Qw.help}),(0,N.jsx)(`a`,{className:`btn`,href:`#/words`,title:E.glossary.linkTitle,children:E.glossary.link}),e&&(0,N.jsx)(tT,{health:e})]})}function oT(){let[e,t]=(0,v.useState)({down:!1,epoch:0});return(0,v.useEffect)(()=>{let e=e=>{let n=e.detail.up;t(e=>n?{down:!1,epoch:e.epoch+1}:{...e,down:!0})};return addEventListener(O,e),()=>removeEventListener(O,e)},[]),e}function sT({inPanel:e}){let[t,n]=(0,v.useState)(!1);return(0,N.jsxs)(`div`,{className:`state error`,role:`alert`,style:{marginBottom:12},children:[(0,N.jsx)(`p`,{style:{margin:0},children:e?E.app.offlinePanel:E.app.offline}),(0,N.jsx)(`button`,{type:`button`,className:`btn`,style:{marginTop:8},disabled:t,onClick:()=>{n(!0),A(`/api/health`).catch(()=>void 0).finally(()=>n(!1))},children:t?E.app.checking:E.app.tryAgain})]})}function cT(){let e=$w(),t=AC(e),n=j(`/api/health`),r=n.state===`ready`&&n.data.full===!0,i=oT(),a=n.reload;(0,v.useEffect)(()=>{i.epoch&&a()},[i.epoch,a]),(0,v.useEffect)(()=>{document.title=`${t.label} · Atticus`},[t]);let o=(0,v.useRef)(void 0);return(0,v.useEffect)(()=>{o.current!==void 0&&o.current!==t.id&&document.getElementById(`main`)?.focus({preventScroll:!0}),o.current=t.id},[t.id]),(0,N.jsx)(kh,{children:(0,N.jsxs)(`div`,{className:`shell`,children:[(0,N.jsx)(`a`,{className:`skip`,href:`#main`,children:Qw.skipToContent}),(0,N.jsx)(Lw,{current:t,hash:e,full:r}),(0,N.jsx)(_w,{}),(0,N.jsx)(Dw,{metarepo:n.state===`ready`?n.data.root:n.state===`error`?null:void 0}),(0,N.jsxs)(`main`,{id:`main`,className:`main`,tabIndex:-1,children:[(0,N.jsx)(aT,{health:n.state===`ready`?n.data:void 0}),(0,N.jsx)(`h1`,{className:`sr`,children:t.label}),(0,N.jsx)(zw,{current:t,hash:e,full:r}),i.down&&(0,N.jsx)(sT,{inPanel:!!T()}),(()=>{let n=lw[t.id];return n?(0,N.jsx)(pw,{name:t.label,children:(0,N.jsx)(n,{hash:e})},`${t.id}:${i.epoch}`):(0,N.jsx)(dw,{screen:t})})()]})]})})}T()||Xw(),(0,y.createRoot)(document.getElementById(`root`)).render((0,N.jsx)(v.StrictMode,{children:(0,N.jsx)(cT,{})}));export{l as n,o as t};
|
|
29
|
+
//# sourceMappingURL=index-B54fm9FQ.js.map
|