unspaghettit 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -10
- package/build/client/_app/immutable/assets/0.DFMDYAU9.css +1 -0
- package/build/client/_app/immutable/assets/0.DFMDYAU9.css.br +0 -0
- package/build/client/_app/immutable/assets/0.DFMDYAU9.css.gz +0 -0
- package/build/client/_app/immutable/assets/3.B3akUL9A.css +1 -0
- package/build/client/_app/immutable/assets/3.B3akUL9A.css.br +0 -0
- package/build/client/_app/immutable/assets/3.B3akUL9A.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{ByNzXSTs.js → BO66rBOa2.js} +1 -1
- package/build/client/_app/immutable/chunks/BO66rBOa2.js.br +0 -0
- package/build/client/_app/immutable/chunks/BO66rBOa2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DsHardz9.js → BOrLmFwJ.js} +1 -1
- package/build/client/_app/immutable/chunks/BOrLmFwJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/BOrLmFwJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BPl9BITm.js +3 -0
- package/build/client/_app/immutable/chunks/BPl9BITm.js.br +0 -0
- package/build/client/_app/immutable/chunks/BPl9BITm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BfMYiIUi.js +1 -0
- package/build/client/_app/immutable/chunks/BfMYiIUi.js.br +0 -0
- package/build/client/_app/immutable/chunks/BfMYiIUi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bp2_Vghh.js +1 -0
- package/build/client/_app/immutable/chunks/Bp2_Vghh.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bp2_Vghh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{C8VYoO28.js → Bp8HpEPe2.js} +1 -1
- package/build/client/_app/immutable/chunks/Bp8HpEPe2.js.br +0 -0
- package/build/client/_app/immutable/chunks/{C8VYoO28.js.gz → Bp8HpEPe2.js.gz} +0 -0
- package/build/client/_app/immutable/chunks/C8rRKIXT.js +1 -0
- package/build/client/_app/immutable/chunks/C8rRKIXT.js.br +0 -0
- package/build/client/_app/immutable/chunks/C8rRKIXT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BsIqn_3K2.js → CJjJLwzv2.js} +1 -1
- package/build/client/_app/immutable/chunks/CJjJLwzv2.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJjJLwzv2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cl7Z3e6-.js +1 -0
- package/build/client/_app/immutable/chunks/Cl7Z3e6-.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cl7Z3e6-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CxyLMlpt2.js +2 -0
- package/build/client/_app/immutable/chunks/CxyLMlpt2.js.br +0 -0
- package/build/client/_app/immutable/chunks/CxyLMlpt2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D6jhrpTg.js +1 -0
- package/build/client/_app/immutable/chunks/D6jhrpTg.js.br +0 -0
- package/build/client/_app/immutable/chunks/D6jhrpTg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D8YEa1po.js +1 -0
- package/build/client/_app/immutable/chunks/D8YEa1po.js.br +0 -0
- package/build/client/_app/immutable/chunks/D8YEa1po.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D9dKmajw.js +1 -0
- package/build/client/_app/immutable/chunks/D9dKmajw.js.br +0 -0
- package/build/client/_app/immutable/chunks/D9dKmajw.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DBJWcC6Y.js +1 -0
- package/build/client/_app/immutable/chunks/DBJWcC6Y.js.br +0 -0
- package/build/client/_app/immutable/chunks/DBJWcC6Y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DHoA038D.js +1 -0
- package/build/client/_app/immutable/chunks/DHoA038D.js.br +2 -0
- package/build/client/_app/immutable/chunks/DHoA038D.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DKgYpi6_.js +1 -0
- package/build/client/_app/immutable/chunks/DKgYpi6_.js.br +0 -0
- package/build/client/_app/immutable/chunks/DKgYpi6_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DatGSObE.js +1 -0
- package/build/client/_app/immutable/chunks/DatGSObE.js.br +0 -0
- package/build/client/_app/immutable/chunks/DatGSObE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dg0acPpT.js +1 -0
- package/build/client/_app/immutable/chunks/Dg0acPpT.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dg0acPpT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DjWKKtqp.js +1 -0
- package/build/client/_app/immutable/chunks/DjWKKtqp.js.br +1 -0
- package/build/client/_app/immutable/chunks/DjWKKtqp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dq0DUAz1.js +1 -0
- package/build/client/_app/immutable/chunks/Dq0DUAz1.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dq0DUAz1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DZ7_iXX8.js → HKLi1Yz3.js} +1 -1
- package/build/client/_app/immutable/chunks/HKLi1Yz3.js.br +0 -0
- package/build/client/_app/immutable/chunks/HKLi1Yz3.js.gz +0 -0
- package/build/client/_app/immutable/chunks/N7PXjlRH.js +1 -0
- package/build/client/_app/immutable/chunks/N7PXjlRH.js.br +0 -0
- package/build/client/_app/immutable/chunks/N7PXjlRH.js.gz +0 -0
- package/build/client/_app/immutable/chunks/aNMRV4sP2.js +5 -0
- package/build/client/_app/immutable/chunks/aNMRV4sP2.js.br +0 -0
- package/build/client/_app/immutable/chunks/aNMRV4sP2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/cMamJTsF.js +1 -0
- package/build/client/_app/immutable/chunks/cMamJTsF.js.br +0 -0
- package/build/client/_app/immutable/chunks/cMamJTsF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/hpWJNn0t2.js +2 -0
- package/build/client/_app/immutable/chunks/hpWJNn0t2.js.br +0 -0
- package/build/client/_app/immutable/chunks/hpWJNn0t2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/iQu0D9Ux.js +1 -0
- package/build/client/_app/immutable/chunks/iQu0D9Ux.js.br +0 -0
- package/build/client/_app/immutable/chunks/iQu0D9Ux.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ib21i2T_.js +6 -0
- package/build/client/_app/immutable/chunks/ib21i2T_.js.br +0 -0
- package/build/client/_app/immutable/chunks/ib21i2T_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/suTxxv1t.js +1 -0
- package/build/client/_app/immutable/chunks/suTxxv1t.js.br +1 -0
- package/build/client/_app/immutable/chunks/suTxxv1t.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CLgh6Mx_.js +2 -0
- package/build/client/_app/immutable/entry/app.CLgh6Mx_.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CLgh6Mx_.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.D5GPCQZD.js +1 -0
- package/build/client/_app/immutable/entry/start.D5GPCQZD.js.br +0 -0
- package/build/client/_app/immutable/entry/start.D5GPCQZD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.BOoI-hsu.js +4 -0
- package/build/client/_app/immutable/nodes/0.BOoI-hsu.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.BOoI-hsu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.KYdA6ppX.js +1 -0
- package/build/client/_app/immutable/nodes/1.KYdA6ppX.js.br +2 -0
- package/build/client/_app/immutable/nodes/1.KYdA6ppX.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DBz20KgG.js +1 -0
- package/build/client/_app/immutable/nodes/2.DBz20KgG.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DBz20KgG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.19DIoFtw.js +1 -0
- package/build/client/_app/immutable/nodes/3.19DIoFtw.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.19DIoFtw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.BvMzqBJj.js +3 -0
- package/build/client/_app/immutable/nodes/4.BvMzqBJj.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BvMzqBJj.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.Dq6obSGG.js +42 -0
- package/build/client/_app/immutable/nodes/5.Dq6obSGG.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.Dq6obSGG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.BOHISqs-.js +5 -0
- package/build/client/_app/immutable/nodes/6.BOHISqs-.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BOHISqs-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.CemgNJfw.js +1 -0
- package/build/client/_app/immutable/nodes/7.CemgNJfw.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.CemgNJfw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.DejSfIYh.js +5 -0
- package/build/client/_app/immutable/nodes/8.DejSfIYh.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DejSfIYh.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.l6ZO_YE3.js → 9.CMW6a2Lg.js} +51 -48
- package/build/client/_app/immutable/nodes/9.CMW6a2Lg.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.CMW6a2Lg.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/0-C_o0oz-N.js +15 -0
- package/build/server/chunks/0-C_o0oz-N.js.map +1 -0
- package/build/server/chunks/1-DPpKAKXV.js +9 -0
- package/build/server/chunks/{1-58bNZ9nH.js.map → 1-DPpKAKXV.js.map} +1 -1
- package/build/server/chunks/2-AlfFqtL1.js +9 -0
- package/build/server/chunks/2-AlfFqtL1.js.map +1 -0
- package/build/server/chunks/3-vbjUt_51.js +16 -0
- package/build/server/chunks/3-vbjUt_51.js.map +1 -0
- package/build/server/chunks/4-BNow4x6D.js +16 -0
- package/build/server/chunks/4-BNow4x6D.js.map +1 -0
- package/build/server/chunks/5-D7OCJpxD.js +9 -0
- package/build/server/chunks/5-D7OCJpxD.js.map +1 -0
- package/build/server/chunks/6-QQ7r8Rd5.js +9 -0
- package/build/server/chunks/6-QQ7r8Rd5.js.map +1 -0
- package/build/server/chunks/7-CbPLGaIG.js +9 -0
- package/build/server/chunks/7-CbPLGaIG.js.map +1 -0
- package/build/server/chunks/8-CVO-E-sf.js +9 -0
- package/build/server/chunks/8-CVO-E-sf.js.map +1 -0
- package/build/server/chunks/9-DxT1baO5.js +9 -0
- package/build/server/chunks/9-DxT1baO5.js.map +1 -0
- package/build/server/chunks/{FeatureCard-CDB0iQEO.js → FeatureCard-BQOY6gJQ.js} +2 -2
- package/build/server/chunks/{FeatureCard-CDB0iQEO.js.map → FeatureCard-BQOY6gJQ.js.map} +1 -1
- package/build/server/chunks/{FeatureJson-BKCG8vk2.js → FeatureJson-Bv-qiOSf.js} +2 -2
- package/build/server/chunks/{FeatureJson-BKCG8vk2.js.map → FeatureJson-Bv-qiOSf.js.map} +1 -1
- package/build/server/chunks/FeatureTransforms-UWDHmWEg.js +311 -0
- package/build/server/chunks/FeatureTransforms-UWDHmWEg.js.map +1 -0
- package/build/server/chunks/{FeatureValidator-DDdFIzr8.js → FeatureValidator-B8qEjAUW.js} +235 -3
- package/build/server/chunks/FeatureValidator-B8qEjAUW.js.map +1 -0
- package/build/server/chunks/{ManageTagsDialog-CT8-t_GJ.js → ManageTagsDialog-DBxA3tM2.js} +4 -3
- package/build/server/chunks/ManageTagsDialog-DBxA3tM2.js.map +1 -0
- package/build/server/chunks/{ProjectsIndex-yg-CEhxx.js → ProjectsIndex-CoDrvRya.js} +8 -8
- package/build/server/chunks/ProjectsIndex-CoDrvRya.js.map +1 -0
- package/build/server/chunks/{RenameTag-nSZ6Leh-.js → RenameTag-BuWLMl1m.js} +2 -2
- package/build/server/chunks/{RenameTag-nSZ6Leh-.js.map → RenameTag-BuWLMl1m.js.map} +1 -1
- package/build/server/chunks/TagDotStrip-B1XQ0m0Y.js +88 -0
- package/build/server/chunks/TagDotStrip-B1XQ0m0Y.js.map +1 -0
- package/build/server/chunks/{TagFilterSelect-BlEttqQE.js → TagFilterSelect-DbO0Qduh.js} +4 -3
- package/build/server/chunks/TagFilterSelect-DbO0Qduh.js.map +1 -0
- package/build/server/chunks/{TagPalette-CvQJ40bt.js → TagPalette-CtMNYCmu.js} +6 -2
- package/build/server/chunks/TagPalette-CtMNYCmu.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-D2SACu8G.js → _layout.svelte-BREws55o.js} +99 -37
- package/build/server/chunks/_layout.svelte-BREws55o.js.map +1 -0
- package/build/server/chunks/{_page.svelte-Dbu42LbU.js → _page.svelte-B1s7jxaQ.js} +9 -8
- package/build/server/chunks/{_page.svelte-Dbu42LbU.js.map → _page.svelte-B1s7jxaQ.js.map} +1 -1
- package/build/server/chunks/_page.svelte-B7hT3P8E.js +29 -0
- package/build/server/chunks/{_page.svelte-CsqELhKQ.js.map → _page.svelte-B7hT3P8E.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DYOnk7iP.js → _page.svelte-BKKCa9H5.js} +11 -8
- package/build/server/chunks/{_page.svelte-DYOnk7iP.js.map → _page.svelte-BKKCa9H5.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-C2jPZylo.js → _page.svelte-BKTveFAj.js} +16 -14
- package/build/server/chunks/_page.svelte-BKTveFAj.js.map +1 -0
- package/build/server/chunks/_page.svelte-BqSC-1vK.js +404 -0
- package/build/server/chunks/_page.svelte-BqSC-1vK.js.map +1 -0
- package/build/server/chunks/{_page.svelte-bbz79XAC.js → _page.svelte-BtI2zZ_Z.js} +38 -282
- package/build/server/chunks/_page.svelte-BtI2zZ_Z.js.map +1 -0
- package/build/server/chunks/_page.svelte-De508ek8.js +29 -0
- package/build/server/chunks/{_page.svelte-C3FIXVWr.js.map → _page.svelte-De508ek8.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BUfFGiJQ.js → _page.svelte-Zf9H4KOP.js} +16 -14
- package/build/server/chunks/_page.svelte-Zf9H4KOP.js.map +1 -0
- package/build/server/chunks/{_server.ts-Bs4QqmRJ.js → _server.ts-0uNTZKwF.js} +7 -6
- package/build/server/chunks/{_server.ts-Bs4QqmRJ.js.map → _server.ts-0uNTZKwF.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bnpe4TIM.js → _server.ts-BIBWjQI-.js} +5 -4
- package/build/server/chunks/{_server.ts-Bnpe4TIM.js.map → _server.ts-BIBWjQI-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-FARjojeH.js → _server.ts-BihpbxOW.js} +5 -4
- package/build/server/chunks/{_server.ts-FARjojeH.js.map → _server.ts-BihpbxOW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-efMdTu3p.js → _server.ts-BuoQ02BW.js} +5 -4
- package/build/server/chunks/{_server.ts-efMdTu3p.js.map → _server.ts-BuoQ02BW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DDtoQw0L.js → _server.ts-CWvU15tL.js} +5 -4
- package/build/server/chunks/{_server.ts-DDtoQw0L.js.map → _server.ts-CWvU15tL.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B80OMNjj.js → _server.ts-D4EO0VHu.js} +6 -5
- package/build/server/chunks/{_server.ts-B80OMNjj.js.map → _server.ts-D4EO0VHu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DZi40j_b.js → _server.ts-DDa0Nk_S.js} +5 -4
- package/build/server/chunks/{_server.ts-DZi40j_b.js.map → _server.ts-DDa0Nk_S.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BaT7ADxX.js → _server.ts-DcZPhyhK.js} +7 -6
- package/build/server/chunks/{_server.ts-BaT7ADxX.js.map → _server.ts-DcZPhyhK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CMPK37Vt.js → _server.ts-DsbbVoOn.js} +5 -4
- package/build/server/chunks/{_server.ts-CMPK37Vt.js.map → _server.ts-DsbbVoOn.js.map} +1 -1
- package/build/server/chunks/{_server.ts-y0yINgGA.js → _server.ts-Dy5zQHe2.js} +8 -7
- package/build/server/chunks/{_server.ts-y0yINgGA.js.map → _server.ts-Dy5zQHe2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CagU2lG4.js → _server.ts-YnfXkeMJ.js} +8 -7
- package/build/server/chunks/_server.ts-YnfXkeMJ.js.map +1 -0
- package/build/server/chunks/{_server.ts-RzdFK98M.js → _server.ts-vcaqdwxS.js} +5 -4
- package/build/server/chunks/_server.ts-vcaqdwxS.js.map +1 -0
- package/build/server/chunks/{browserContainer-D4Rbh5md.js → browserContainer-CNX7ANld.js} +115 -30
- package/build/server/chunks/browserContainer-CNX7ANld.js.map +1 -0
- package/build/server/chunks/builderModeStore.svelte-ihupr-3p.js +681 -0
- package/build/server/chunks/builderModeStore.svelte-ihupr-3p.js.map +1 -0
- package/build/server/chunks/{client-DzD76Kll.js → client-DfpLcAZ9.js} +2 -2
- package/build/server/chunks/{client-DzD76Kll.js.map → client-DfpLcAZ9.js.map} +1 -1
- package/build/server/chunks/{error.svelte-BYvfCaDL.js → error.svelte-C35KOpru.js} +4 -4
- package/build/server/chunks/{error.svelte-BYvfCaDL.js.map → error.svelte-C35KOpru.js.map} +1 -1
- package/build/server/chunks/eventBus-B9k-Vzso.js +19 -0
- package/build/server/chunks/eventBus-B9k-Vzso.js.map +1 -0
- package/build/server/chunks/{featuresStore.svelte-C5UcVnjA.js → featuresStore.svelte-DR1gYZyu.js} +6 -5
- package/build/server/chunks/featuresStore.svelte-DR1gYZyu.js.map +1 -0
- package/build/server/chunks/{internal-BA0a_nCh.js → internal-BPKrFkK1.js} +2 -2
- package/build/server/chunks/{internal-BA0a_nCh.js.map → internal-BPKrFkK1.js.map} +1 -1
- package/build/server/chunks/{projectsStore.svelte-CCIKC4cA.js → projectsStore.svelte-QDz5PchX.js} +3 -2
- package/build/server/chunks/projectsStore.svelte-QDz5PchX.js.map +1 -0
- package/build/server/chunks/{reconcile-CYtw0vAj.js → reconcile-Dv7jS3C8.js} +3 -3
- package/build/server/chunks/{reconcile-CYtw0vAj.js.map → reconcile-Dv7jS3C8.js.map} +1 -1
- package/build/server/chunks/shared-server-CCs2CV3b.js +14 -0
- package/build/server/chunks/shared-server-CCs2CV3b.js.map +1 -0
- package/build/server/chunks/{snapshotRepository-D04sCQ0-.js → snapshotRepository-BPXCjX92.js} +40 -8
- package/build/server/chunks/snapshotRepository-BPXCjX92.js.map +1 -0
- package/build/server/chunks/{state-BVel4q-J.js → state-CpLVNZq7.js} +2 -2
- package/build/server/chunks/{state-BVel4q-J.js.map → state-CpLVNZq7.js.map} +1 -1
- package/build/server/chunks/{sync-BFBTG9bE.js → sync-DZ3dn761.js} +2 -2
- package/build/server/chunks/{sync-BFBTG9bE.js.map → sync-DZ3dn761.js.map} +1 -1
- package/build/server/chunks/{syncBridge-B90NwG8R.js → syncBridge-BwXzPdjJ.js} +2 -2
- package/build/server/chunks/{syncBridge-B90NwG8R.js.map → syncBridge-BwXzPdjJ.js.map} +1 -1
- package/build/server/chunks/{TagDotStrip-K9ispK6D.js → tagPaletteStore.svelte-DfZOBvgY.js} +5 -87
- package/build/server/chunks/tagPaletteStore.svelte-DfZOBvgY.js.map +1 -0
- package/build/server/chunks/{tourStore.svelte-C2hizkdG.js → tourStore.svelte-CYs4oLjF.js} +2 -2
- package/build/server/chunks/tourStore.svelte-CYs4oLjF.js.map +1 -0
- package/build/server/index.js +2 -12
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +36 -28
- package/build/server/manifest.js.map +1 -1
- package/cli/README.md +46 -20
- package/cli/clients/claude-code.ts +5 -4
- package/cli/clients/claude-desktop.ts +5 -4
- package/cli/commands/dashboard.ts +38 -4
- package/cli/commands/init.ts +147 -84
- package/cli/commands/view.ts +77 -0
- package/cli/skills/unspa-audit/SKILL.md +9 -0
- package/cli/skills/unspa-edit/SKILL.md +91 -0
- package/cli/skills/unspa-implement/SKILL.md +46 -1
- package/cli/unspa.ts +57 -13
- package/cli/util/context-files.ts +5 -3
- package/cli/util/views.ts +38 -0
- package/mcp-server/resources/operations.ts +2 -1
- package/mcp-server/tools/_evolution.ts +53 -0
- package/mcp-server/tools/action.ts +64 -6
- package/mcp-server/tools/batch.ts +34 -24
- package/mcp-server/tools/feature.ts +17 -9
- package/mcp-server/tools/queue.ts +101 -9
- package/mcp-server/tools/specGaps.ts +14 -1
- package/package.json +3 -1
- package/src/features/behavior-model/application/use-cases/MutateFeature.ts +20 -31
- package/src/features/behavior-model/application/use-cases/SaveFeature.ts +13 -9
- package/src/features/behavior-model/domain/entities/Action.ts +167 -95
- package/src/features/behavior-model/domain/services/FeatureTransforms.ts +49 -0
- package/src/features/behavior-model/domain/services/FeatureValidator.ts +50 -0
- package/src/features/behavior-model/infrastructure/persistence/snapshot-discovery.ts +28 -3
- package/src/features/behavior-model/presentation/components/ActionEditor.svelte +55 -7
- package/src/features/builder-mode/application/use-cases/GetBuilderModeDashboard.ts +41 -0
- package/src/features/builder-mode/application/use-cases/GetBuilderModeProject.ts +42 -0
- package/src/features/builder-mode/domain/BuilderModeDashboard.ts +172 -0
- package/src/features/builder-mode/infrastructure/adapters/defaultBuilderHost.ts +27 -0
- package/src/features/builder-mode/presentation/components/BuilderModeDashboard.svelte +1335 -0
- package/src/features/builder-mode/presentation/components/BuilderTagChips.svelte +289 -0
- package/src/features/builder-mode/presentation/components/ClampedDescription.svelte +174 -0
- package/src/features/builder-mode/presentation/components/GameScore.svelte +194 -0
- package/src/features/builder-mode/presentation/ports/BuilderHostPorts.ts +39 -0
- package/src/features/builder-mode/presentation/stores/builderModeStore.svelte.ts +679 -0
- package/src/features/implementation-queue/application/use-cases/EnqueueQueueItem.ts +16 -5
- package/src/features/implementation-queue/application/use-cases/SetQueueItemTarget.ts +38 -0
- package/src/features/implementation-queue/domain/entities/QueueItem.ts +43 -0
- package/src/features/implementation-queue/domain/services/QueueOperations.ts +26 -1
- package/src/features/maturity/domain/MaturityScorer.ts +13 -4
- package/src/features/mcp-tools/application/tools/listActions.ts +9 -1
- package/src/features/projects/infrastructure/io/ProjectJson.ts +25 -4
- package/src/lib/views/enabled.ts +19 -0
- package/src/lib/views/registry.ts +72 -0
- package/src/routes/+layout.svelte +583 -348
- package/src/routes/builder-mode/+page.svelte +9 -0
- package/src/routes/builder-mode/+page.ts +12 -0
- package/src/routes/tutorial/+page.svelte +8 -0
- package/src/shared/infrastructure/container.ts +208 -199
- package/build/client/_app/immutable/assets/0.BgNAkMzG.css +0 -1
- package/build/client/_app/immutable/assets/0.BgNAkMzG.css.br +0 -0
- package/build/client/_app/immutable/assets/0.BgNAkMzG.css.gz +0 -0
- package/build/client/_app/immutable/chunks/8V0Jan-K.js +0 -2
- package/build/client/_app/immutable/chunks/8V0Jan-K.js.br +0 -0
- package/build/client/_app/immutable/chunks/8V0Jan-K.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B5jHfatx.js +0 -1
- package/build/client/_app/immutable/chunks/B5jHfatx.js.br +0 -0
- package/build/client/_app/immutable/chunks/B5jHfatx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BQQLoxQo.js +0 -5
- package/build/client/_app/immutable/chunks/BQQLoxQo.js.br +0 -0
- package/build/client/_app/immutable/chunks/BQQLoxQo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BZCGqXF-.js +0 -1
- package/build/client/_app/immutable/chunks/BZCGqXF-.js.br +0 -2
- package/build/client/_app/immutable/chunks/BZCGqXF-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BpZHquM3.js +0 -1
- package/build/client/_app/immutable/chunks/BpZHquM3.js.br +0 -0
- package/build/client/_app/immutable/chunks/BpZHquM3.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsIqn_3K2.js.br +0 -0
- package/build/client/_app/immutable/chunks/BsIqn_3K2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BxAqshUk.js +0 -1
- package/build/client/_app/immutable/chunks/BxAqshUk.js.br +0 -0
- package/build/client/_app/immutable/chunks/BxAqshUk.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ByNzXSTs.js.br +0 -0
- package/build/client/_app/immutable/chunks/ByNzXSTs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C0OSZ2OV.js +0 -1
- package/build/client/_app/immutable/chunks/C0OSZ2OV.js.br +0 -0
- package/build/client/_app/immutable/chunks/C0OSZ2OV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C2XQCtR3.js +0 -1
- package/build/client/_app/immutable/chunks/C2XQCtR3.js.br +0 -0
- package/build/client/_app/immutable/chunks/C2XQCtR3.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C8VYoO28.js.br +0 -0
- package/build/client/_app/immutable/chunks/CKUA0lwj.js +0 -1
- package/build/client/_app/immutable/chunks/CKUA0lwj.js.br +0 -0
- package/build/client/_app/immutable/chunks/CKUA0lwj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CM5qK71w.js +0 -6
- package/build/client/_app/immutable/chunks/CM5qK71w.js.br +0 -0
- package/build/client/_app/immutable/chunks/CM5qK71w.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CiC9AlkQ.js +0 -1
- package/build/client/_app/immutable/chunks/CiC9AlkQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/CiC9AlkQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DF6QYH3p.js +0 -3
- package/build/client/_app/immutable/chunks/DF6QYH3p.js.br +0 -0
- package/build/client/_app/immutable/chunks/DF6QYH3p.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DGo7EzwK.js +0 -1
- package/build/client/_app/immutable/chunks/DGo7EzwK.js.br +0 -0
- package/build/client/_app/immutable/chunks/DGo7EzwK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DOrHTzKX2.js +0 -2
- package/build/client/_app/immutable/chunks/DOrHTzKX2.js.br +0 -0
- package/build/client/_app/immutable/chunks/DOrHTzKX2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DZ7_iXX8.js.br +0 -0
- package/build/client/_app/immutable/chunks/DZ7_iXX8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DayeafKd.js +0 -1
- package/build/client/_app/immutable/chunks/DayeafKd.js.br +0 -0
- package/build/client/_app/immutable/chunks/DayeafKd.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DsHardz9.js.br +0 -1
- package/build/client/_app/immutable/chunks/DsHardz9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dvd8XBNO.js +0 -1
- package/build/client/_app/immutable/chunks/Dvd8XBNO.js.br +0 -1
- package/build/client/_app/immutable/chunks/Dvd8XBNO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/lYfEZr7V.js +0 -1
- package/build/client/_app/immutable/chunks/lYfEZr7V.js.br +0 -0
- package/build/client/_app/immutable/chunks/lYfEZr7V.js.gz +0 -0
- package/build/client/_app/immutable/chunks/nx-Rqoe9.js +0 -1
- package/build/client/_app/immutable/chunks/nx-Rqoe9.js.br +0 -0
- package/build/client/_app/immutable/chunks/nx-Rqoe9.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CBQ5lc4C.js +0 -2
- package/build/client/_app/immutable/entry/app.CBQ5lc4C.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CBQ5lc4C.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CwosiFCq.js +0 -1
- package/build/client/_app/immutable/entry/start.CwosiFCq.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CwosiFCq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.CrNDTsZU.js +0 -3
- package/build/client/_app/immutable/nodes/0.CrNDTsZU.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.CrNDTsZU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.DIhR9Se9.js +0 -1
- package/build/client/_app/immutable/nodes/1.DIhR9Se9.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.DIhR9Se9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.Cxe9W2ys.js +0 -1
- package/build/client/_app/immutable/nodes/2.Cxe9W2ys.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.Cxe9W2ys.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.Db_qGhZh.js +0 -3
- package/build/client/_app/immutable/nodes/3.Db_qGhZh.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.Db_qGhZh.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.CNlfoebz.js +0 -42
- package/build/client/_app/immutable/nodes/4.CNlfoebz.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.CNlfoebz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.52vWUOmx.js +0 -5
- package/build/client/_app/immutable/nodes/5.52vWUOmx.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.52vWUOmx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.DEa_tOGv.js +0 -1
- package/build/client/_app/immutable/nodes/6.DEa_tOGv.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DEa_tOGv.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.Bj0xztLC.js +0 -5
- package/build/client/_app/immutable/nodes/7.Bj0xztLC.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.Bj0xztLC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.l6ZO_YE3.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.l6ZO_YE3.js.gz +0 -0
- package/build/server/chunks/0-BpC7BfBT.js +0 -15
- package/build/server/chunks/0-BpC7BfBT.js.map +0 -1
- package/build/server/chunks/1-58bNZ9nH.js +0 -9
- package/build/server/chunks/2-DF_NN0lE.js +0 -9
- package/build/server/chunks/2-DF_NN0lE.js.map +0 -1
- package/build/server/chunks/3-NRtKEkC_.js +0 -16
- package/build/server/chunks/3-NRtKEkC_.js.map +0 -1
- package/build/server/chunks/4-MZJkDNx2.js +0 -9
- package/build/server/chunks/4-MZJkDNx2.js.map +0 -1
- package/build/server/chunks/5-Lq13lWK3.js +0 -9
- package/build/server/chunks/5-Lq13lWK3.js.map +0 -1
- package/build/server/chunks/6-DqZ3Anew.js +0 -9
- package/build/server/chunks/6-DqZ3Anew.js.map +0 -1
- package/build/server/chunks/7-BOAHc6Hs.js +0 -9
- package/build/server/chunks/7-BOAHc6Hs.js.map +0 -1
- package/build/server/chunks/8-DBHj3VAe.js +0 -9
- package/build/server/chunks/8-DBHj3VAe.js.map +0 -1
- package/build/server/chunks/FeatureValidator-DDdFIzr8.js.map +0 -1
- package/build/server/chunks/ManageTagsDialog-CT8-t_GJ.js.map +0 -1
- package/build/server/chunks/ProjectsIndex-yg-CEhxx.js.map +0 -1
- package/build/server/chunks/TagDotStrip-K9ispK6D.js.map +0 -1
- package/build/server/chunks/TagFilterSelect-BlEttqQE.js.map +0 -1
- package/build/server/chunks/TagPalette-CvQJ40bt.js.map +0 -1
- package/build/server/chunks/_layout.svelte-D2SACu8G.js.map +0 -1
- package/build/server/chunks/_page.svelte-BUfFGiJQ.js.map +0 -1
- package/build/server/chunks/_page.svelte-C2jPZylo.js.map +0 -1
- package/build/server/chunks/_page.svelte-C3FIXVWr.js +0 -27
- package/build/server/chunks/_page.svelte-CsqELhKQ.js +0 -27
- package/build/server/chunks/_page.svelte-bbz79XAC.js.map +0 -1
- package/build/server/chunks/_server.ts-CagU2lG4.js.map +0 -1
- package/build/server/chunks/_server.ts-RzdFK98M.js.map +0 -1
- package/build/server/chunks/browserContainer-D4Rbh5md.js.map +0 -1
- package/build/server/chunks/featuresStore.svelte-C5UcVnjA.js.map +0 -1
- package/build/server/chunks/projectsStore.svelte-CCIKC4cA.js.map +0 -1
- package/build/server/chunks/snapshotRepository-D04sCQ0-.js.map +0 -1
- package/build/server/chunks/tourStore.svelte-C2hizkdG.js.map +0 -1
- /package/build/client/_app/immutable/assets/{8.nv0I59TU.css → 9.nv0I59TU.css} +0 -0
- /package/build/client/_app/immutable/assets/{8.nv0I59TU.css.br → 9.nv0I59TU.css.br} +0 -0
- /package/build/client/_app/immutable/assets/{8.nv0I59TU.css.gz → 9.nv0I59TU.css.gz} +0 -0
- /package/build/client/_app/immutable/chunks/{BQ9GodWX.js → BQ9GodWX2.js} +0 -0
- /package/build/client/_app/immutable/chunks/{BQ9GodWX.js.br → BQ9GodWX2.js.br} +0 -0
- /package/build/client/_app/immutable/chunks/{BQ9GodWX.js.gz → BQ9GodWX2.js.gz} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{ut as e}from"./C0OSZ2OV.js";import{t}from"./CKUA0lwj.js";var n=(e,t)=>`${e}:${t}`,r=`data`,i=`snapshot`,a=()=>new Map,o=e=>{let t=a();return e.forEach((e,n)=>{t.set(n,e)}),t},s=(e,t,n)=>{let r=e.get(t);return r===void 0&&e.set(t,r=n()),r},c=(e,t)=>{let n=[];for(let[r,i]of e)n.push(t(i,r));return n},l=(e,t)=>{for(let[n,r]of e)if(t(r,n))return!0;return!1},u=()=>new Set,d=e=>e[e.length-1],ee=(e,t)=>{for(let n=0;n<t.length;n++)e.push(t[n])},f=Array.from,te=(e,t)=>{for(let n=0;n<e.length;n++)if(!t(e[n],n,e))return!1;return!0},ne=(e,t)=>{for(let n=0;n<e.length;n++)if(t(e[n],n,e))return!0;return!1},re=(e,t)=>{let n=Array(e);for(let r=0;r<e;r++)n[r]=t(r,n);return n},ie=Array.isArray,ae=class{constructor(){this._observers=a()}on(e,t){return s(this._observers,e,u).add(t),t}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};this.on(e,n)}off(e,t){let n=this._observers.get(e);n!==void 0&&(n.delete(t),n.size===0&&this._observers.delete(e))}emit(e,t){return f((this._observers.get(e)||a()).values()).forEach(e=>e(...t))}destroy(){this._observers=a()}},p=Math.floor,oe=Math.abs,se=(e,t)=>e<t?e:t,m=(e,t)=>e>t?e:t;Number.isNaN;var ce=e=>e===0?1/e<0:e<0,le=2**53-1,ue=-(2**53-1),de=Number.isInteger||(e=>typeof e==`number`&&isFinite(e)&&p(e)===e);Number.isNaN,Number.parseInt;var fe=String.fromCharCode;String.fromCodePoint,fe(65535);var pe=e=>e.toLowerCase(),me=/^\s*/g,he=e=>e.replace(me,``),ge=/([A-Z])/g,_e=(e,t)=>he(e.replace(ge,e=>`${t}${pe(e)}`)),ve=e=>{let t=unescape(encodeURIComponent(e)),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.codePointAt(e);return r},ye=typeof TextEncoder<`u`?new TextEncoder:null,be=ye?e=>ye.encode(e):ve,xe=typeof TextDecoder>`u`?null:new TextDecoder(`utf-8`,{fatal:!0,ignoreBOM:!0});xe&&xe.decode(new Uint8Array).length===1&&(xe=null);var Se=(e,t)=>re(t,()=>e).join(``),Ce=class{constructor(){this.cpos=0,this.cbuf=new Uint8Array(100),this.bufs=[]}},we=()=>new Ce,Te=e=>{let t=e.cpos;for(let n=0;n<e.bufs.length;n++)t+=e.bufs[n].length;return t},h=e=>{let t=new Uint8Array(Te(e)),n=0;for(let r=0;r<e.bufs.length;r++){let i=e.bufs[r];t.set(i,n),n+=i.length}return t.set(new Uint8Array(e.cbuf.buffer,0,e.cpos),n),t},Ee=(e,t)=>{let n=e.cbuf.length;n-e.cpos<t&&(e.bufs.push(new Uint8Array(e.cbuf.buffer,0,e.cpos)),e.cbuf=new Uint8Array(m(n,t)*2),e.cpos=0)},g=(e,t)=>{let n=e.cbuf.length;e.cpos===n&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(n*2),e.cpos=0),e.cbuf[e.cpos++]=t},De=g,_=(e,t)=>{for(;t>127;)g(e,128|127&t),t=p(t/128);g(e,127&t)},Oe=(e,t)=>{let n=ce(t);for(n&&(t=-t),g(e,(t>63?128:0)|(n?64:0)|63&t),t=p(t/64);t>0;)g(e,(t>127?128:0)|127&t),t=p(t/128)},ke=new Uint8Array(3e4),Ae=ke.length/3,je=ye&&ye.encodeInto?(e,t)=>{if(t.length<Ae){let n=ye.encodeInto(t,ke).written||0;_(e,n);for(let t=0;t<n;t++)g(e,ke[t])}else v(e,be(t))}:(e,t)=>{let n=unescape(encodeURIComponent(t)),r=n.length;_(e,r);for(let t=0;t<r;t++)g(e,n.codePointAt(t))},Me=(e,t)=>{let n=e.cbuf.length,r=e.cpos,i=se(n-r,t.length),a=t.length-i;e.cbuf.set(t.subarray(0,i),r),e.cpos+=i,a>0&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(m(n*2,a)),e.cbuf.set(t.subarray(i)),e.cpos=a)},v=(e,t)=>{_(e,t.byteLength),Me(e,t)},Ne=(e,t)=>{Ee(e,t);let n=new DataView(e.cbuf.buffer,e.cpos,t);return e.cpos+=t,n},Pe=(e,t)=>Ne(e,4).setFloat32(0,t,!1),Fe=(e,t)=>Ne(e,8).setFloat64(0,t,!1),Ie=(e,t)=>Ne(e,8).setBigInt64(0,t,!1),Le=new DataView(new ArrayBuffer(4)),Re=e=>(Le.setFloat32(0,e),Le.getFloat32(0)===e),ze=(e,t)=>{switch(typeof t){case`string`:g(e,119),je(e,t);break;case`number`:de(t)&&oe(t)<=2147483647?(g(e,125),Oe(e,t)):Re(t)?(g(e,124),Pe(e,t)):(g(e,123),Fe(e,t));break;case`bigint`:g(e,122),Ie(e,t);break;case`object`:if(t===null)g(e,126);else if(ie(t)){g(e,117),_(e,t.length);for(let n=0;n<t.length;n++)ze(e,t[n])}else if(t instanceof Uint8Array)g(e,116),v(e,t);else{g(e,118);let n=Object.keys(t);_(e,n.length);for(let r=0;r<n.length;r++){let i=n[r];je(e,i),ze(e,t[i])}}break;case`boolean`:g(e,t?120:121);break;default:g(e,127)}},Be=class extends Ce{constructor(e){super(),this.w=e,this.s=null,this.count=0}write(e){this.s===e?this.count++:(this.count>0&&_(this,this.count-1),this.count=1,this.w(this,e),this.s=e)}},Ve=e=>{e.count>0&&(Oe(e.encoder,e.count===1?e.s:-e.s),e.count>1&&_(e.encoder,e.count-2))},He=class{constructor(){this.encoder=new Ce,this.s=0,this.count=0}write(e){this.s===e?this.count++:(Ve(this),this.count=1,this.s=e)}toUint8Array(){return Ve(this),h(this.encoder)}},Ue=e=>{if(e.count>0){let t=e.diff*2+(e.count===1?0:1);Oe(e.encoder,t),e.count>1&&_(e.encoder,e.count-2)}},We=class{constructor(){this.encoder=new Ce,this.s=0,this.count=0,this.diff=0}write(e){this.diff===e-this.s?(this.s=e,this.count++):(Ue(this),this.count=1,this.diff=e-this.s,this.s=e)}toUint8Array(){return Ue(this),h(this.encoder)}},Ge=class{constructor(){this.sarr=[],this.s=``,this.lensE=new He}write(e){this.s+=e,this.s.length>19&&(this.sarr.push(this.s),this.s=``),this.lensE.write(e.length)}toUint8Array(){let e=new Ce;return this.sarr.push(this.s),this.s=``,je(e,this.sarr.join(``)),Me(e,this.lensE.toUint8Array()),h(e)}},y=e=>Error(e),b=()=>{throw y(`Method unimplemented`)},x=()=>{throw y(`Unexpected case`)},Ke=y(`Unexpected end of array`),qe=y(`Integer out of Range`),Je=class{constructor(e){this.arr=e,this.pos=0}},Ye=e=>new Je(e),Xe=e=>e.pos!==e.arr.length,Ze=(e,t)=>{let n=new Uint8Array(e.arr.buffer,e.pos+e.arr.byteOffset,t);return e.pos+=t,n},S=e=>Ze(e,C(e)),Qe=e=>e.arr[e.pos++],C=e=>{let t=0,n=1,r=e.arr.length;for(;e.pos<r;){let r=e.arr[e.pos++];if(t+=(r&127)*n,n*=128,r<128)return t;if(t>le)throw qe}throw Ke},$e=e=>{let t=e.arr[e.pos++],n=t&63,r=64,i=(t&64)>0?-1:1;if(!(t&128))return i*n;let a=e.arr.length;for(;e.pos<a;){if(t=e.arr[e.pos++],n+=(t&127)*r,r*=128,t<128)return i*n;if(n>le)throw qe}throw Ke},w=xe?e=>xe.decode(S(e)):e=>{let t=C(e);if(t===0)return``;{let n=String.fromCodePoint(Qe(e));if(--t<100)for(;t--;)n+=String.fromCodePoint(Qe(e));else for(;t>0;){let r=t<1e4?t:1e4,i=e.arr.subarray(e.pos,e.pos+r);e.pos+=r,n+=String.fromCodePoint.apply(null,i),t-=r}return decodeURIComponent(escape(n))}},et=(e,t)=>{let n=new DataView(e.arr.buffer,e.arr.byteOffset+e.pos,t);return e.pos+=t,n},tt=[e=>void 0,e=>null,$e,e=>et(e,4).getFloat32(0,!1),e=>et(e,8).getFloat64(0,!1),e=>et(e,8).getBigInt64(0,!1),e=>!1,e=>!0,w,e=>{let t=C(e),n={};for(let r=0;r<t;r++){let t=w(e);n[t]=nt(e)}return n},e=>{let t=C(e),n=[];for(let r=0;r<t;r++)n.push(nt(e));return n},S],nt=e=>tt[127-Qe(e)](e),rt=class extends Je{constructor(e,t){super(e),this.reader=t,this.s=null,this.count=0}read(){return this.count===0&&(this.s=this.reader(this),Xe(this)?this.count=C(this)+1:this.count=-1),this.count--,this.s}},it=class extends Je{constructor(e){super(e),this.s=0,this.count=0}read(){if(this.count===0){this.s=$e(this);let e=ce(this.s);this.count=1,e&&(this.s=-this.s,this.count=C(this)+2)}return this.count--,this.s}},at=class extends Je{constructor(e){super(e),this.s=0,this.count=0,this.diff=0}read(){if(this.count===0){let e=$e(this),t=e&1;this.diff=p(e/2),this.count=1,t&&(this.count=C(this)+2)}return this.s+=this.diff,this.count--,this.s}},ot=class{constructor(e){this.decoder=new it(e),this.str=w(this.decoder),this.spos=0}read(){let e=this.spos+this.decoder.read(),t=this.str.slice(this.spos,e);return this.spos=e,t}};crypto.subtle;var st=crypto.getRandomValues.bind(crypto),ct=()=>st(new Uint32Array(1))[0],lt=`10000000-1000-4000-8000-100000000000`,ut=()=>lt.replace(/[018]/g,e=>(e^ct()&15>>e/4).toString(16)),dt=Date.now,ft=e=>new Promise(e);Promise.all.bind(Promise);var pt=e=>e===void 0?null:e,mt=new class{constructor(){this.map=new Map}setItem(e,t){this.map.set(e,t)}getItem(e){return this.map.get(e)}};try{typeof localStorage<`u`&&localStorage&&(mt=localStorage)}catch{}var ht=mt,gt=Symbol(`Equality`),_t=(e,t)=>e===t||!!e?.[gt]?.(t)||!1,vt=e=>typeof e==`object`,yt=Object.assign,bt=Object.keys,xt=(e,t)=>{for(let n in e)t(e[n],n)},St=e=>bt(e).length,Ct=e=>{for(let t in e)return!1;return!0},wt=(e,t)=>{for(let n in e)if(!t(e[n],n))return!1;return!0},Tt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Et=(e,t)=>e===t||St(e)===St(t)&&wt(e,(e,n)=>(e!==void 0||Tt(t,n))&&_t(t[n],e)),Dt=Object.freeze,Ot=e=>{for(let t in e){let n=e[t];(typeof n==`object`||typeof n==`function`)&&Ot(e[t])}return Dt(e)},kt=(e,t,n=0)=>{try{for(;n<e.length;n++)e[n](...t)}finally{n<e.length&&kt(e,t,n+1)}},At=e=>e,jt=(e,t)=>{if(e===t)return!0;if(e==null||t==null||e.constructor!==t.constructor&&(e.constructor||Object)!==(t.constructor||Object))return!1;if(e[gt]!=null)return e[gt](t);switch(e.constructor){case ArrayBuffer:e=new Uint8Array(e),t=new Uint8Array(t);case Uint8Array:if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;break;case Set:if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;break;case Map:if(e.size!==t.size)return!1;for(let n of e.keys())if(!t.has(n)||!jt(e.get(n),t.get(n)))return!1;break;case void 0:case Object:if(St(e)!==St(t))return!1;for(let n in e)if(!Tt(e,n)||!jt(e[n],t[n]))return!1;break;case Array:if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!jt(e[n],t[n]))return!1;break;default:return!1}return!0},Mt=(e,t)=>t.includes(e),Nt=typeof process<`u`&&process.release&&/node|io\.js/.test(process.release.name)&&Object.prototype.toString.call(typeof process<`u`?process:0)===`[object process]`;typeof navigator<`u`&&/Mac/.test(navigator.platform);var T,Pt=[],Ft=()=>{if(T===void 0)if(Nt){T=a();let e=process.argv,t=null;for(let n=0;n<e.length;n++){let r=e[n];r[0]===`-`?(t!==null&&T.set(t,``),t=r):t===null?Pt.push(r):(T.set(t,r),t=null)}t!==null&&T.set(t,``)}else typeof location==`object`?(T=a(),(location.search||`?`).slice(1).split(`&`).forEach(e=>{if(e.length!==0){let[t,n]=e.split(`=`);T.set(`--${_e(t,`-`)}`,n),T.set(`-${_e(t,`-`)}`,n)}})):T=a();return T},It=e=>Ft().has(e),Lt=e=>pt(Nt?{}[e.toUpperCase().replaceAll(`-`,`_`)]:ht.getItem(e)),Rt=e=>It(`--`+e)||Lt(e)!==null,zt=Rt(`production`),Bt=Nt&&Mt({}.FORCE_COLOR,[`true`,`1`,`2`])||!It(`--no-colors`)&&!Rt(`no-color`)&&(!Nt||process.stdout.isTTY)&&(!Nt||It(`--color`)||Lt(`COLORTERM`)!==null||(Lt(`TERM`)||``).includes(`color`)),Vt=e=>new Uint8Array(e),Ht=e=>{let t=Vt(e.byteLength);return t.set(e),t},Ut=class{constructor(e,t){this.left=e,this.right=t}},E=(e,t)=>new Ut(e,t),Wt=e=>e.next()>=.5,Gt=(e,t,n)=>p(e.next()*(n+1-t)+t),Kt=(e,t,n)=>p(e.next()*(n+1-t)+t),qt=(e,t,n)=>Kt(e,t,n),Jt=e=>fe(qt(e,97,122)),Yt=(e,t=0,n=20)=>{let r=qt(e,t,n),i=``;for(let t=0;t<r;t++)i+=Jt(e);return i},Xt=(e,t)=>t[qt(e,0,t.length-1)],Zt=Symbol(`0schema`),Qt=class{constructor(){this._rerrs=[]}extend(e,t,n,r=null){this._rerrs.push({path:e,expected:t,has:n,message:r})}toString(){let e=[];for(let t=this._rerrs.length-1;t>0;t--){let n=this._rerrs[t];e.push(Se(` `,(this._rerrs.length-t)*2)+`${n.path==null?``:`[${n.path}] `}${n.has} doesn't match ${n.expected}. ${n.message}`)}return e.join(`
|
|
1
|
+
import{ft as e}from"./Bp2_Vghh.js";import{t}from"./C8rRKIXT.js";var n=(e,t)=>`${e}:${t}`,r=`data`,i=`snapshot`,a=()=>new Map,o=e=>{let t=a();return e.forEach((e,n)=>{t.set(n,e)}),t},s=(e,t,n)=>{let r=e.get(t);return r===void 0&&e.set(t,r=n()),r},c=(e,t)=>{let n=[];for(let[r,i]of e)n.push(t(i,r));return n},l=(e,t)=>{for(let[n,r]of e)if(t(r,n))return!0;return!1},u=()=>new Set,d=e=>e[e.length-1],ee=(e,t)=>{for(let n=0;n<t.length;n++)e.push(t[n])},f=Array.from,te=(e,t)=>{for(let n=0;n<e.length;n++)if(!t(e[n],n,e))return!1;return!0},ne=(e,t)=>{for(let n=0;n<e.length;n++)if(t(e[n],n,e))return!0;return!1},re=(e,t)=>{let n=Array(e);for(let r=0;r<e;r++)n[r]=t(r,n);return n},ie=Array.isArray,ae=class{constructor(){this._observers=a()}on(e,t){return s(this._observers,e,u).add(t),t}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};this.on(e,n)}off(e,t){let n=this._observers.get(e);n!==void 0&&(n.delete(t),n.size===0&&this._observers.delete(e))}emit(e,t){return f((this._observers.get(e)||a()).values()).forEach(e=>e(...t))}destroy(){this._observers=a()}},p=Math.floor,oe=Math.abs,se=(e,t)=>e<t?e:t,m=(e,t)=>e>t?e:t;Number.isNaN;var ce=e=>e===0?1/e<0:e<0,le=2**53-1,ue=-(2**53-1),de=Number.isInteger||(e=>typeof e==`number`&&isFinite(e)&&p(e)===e);Number.isNaN,Number.parseInt;var fe=String.fromCharCode;String.fromCodePoint,fe(65535);var pe=e=>e.toLowerCase(),me=/^\s*/g,he=e=>e.replace(me,``),ge=/([A-Z])/g,_e=(e,t)=>he(e.replace(ge,e=>`${t}${pe(e)}`)),ve=e=>{let t=unescape(encodeURIComponent(e)),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.codePointAt(e);return r},ye=typeof TextEncoder<`u`?new TextEncoder:null,be=ye?e=>ye.encode(e):ve,xe=typeof TextDecoder>`u`?null:new TextDecoder(`utf-8`,{fatal:!0,ignoreBOM:!0});xe&&xe.decode(new Uint8Array).length===1&&(xe=null);var Se=(e,t)=>re(t,()=>e).join(``),Ce=class{constructor(){this.cpos=0,this.cbuf=new Uint8Array(100),this.bufs=[]}},we=()=>new Ce,Te=e=>{let t=e.cpos;for(let n=0;n<e.bufs.length;n++)t+=e.bufs[n].length;return t},h=e=>{let t=new Uint8Array(Te(e)),n=0;for(let r=0;r<e.bufs.length;r++){let i=e.bufs[r];t.set(i,n),n+=i.length}return t.set(new Uint8Array(e.cbuf.buffer,0,e.cpos),n),t},Ee=(e,t)=>{let n=e.cbuf.length;n-e.cpos<t&&(e.bufs.push(new Uint8Array(e.cbuf.buffer,0,e.cpos)),e.cbuf=new Uint8Array(m(n,t)*2),e.cpos=0)},g=(e,t)=>{let n=e.cbuf.length;e.cpos===n&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(n*2),e.cpos=0),e.cbuf[e.cpos++]=t},De=g,_=(e,t)=>{for(;t>127;)g(e,128|127&t),t=p(t/128);g(e,127&t)},Oe=(e,t)=>{let n=ce(t);for(n&&(t=-t),g(e,(t>63?128:0)|(n?64:0)|63&t),t=p(t/64);t>0;)g(e,(t>127?128:0)|127&t),t=p(t/128)},ke=new Uint8Array(3e4),Ae=ke.length/3,je=ye&&ye.encodeInto?(e,t)=>{if(t.length<Ae){let n=ye.encodeInto(t,ke).written||0;_(e,n);for(let t=0;t<n;t++)g(e,ke[t])}else v(e,be(t))}:(e,t)=>{let n=unescape(encodeURIComponent(t)),r=n.length;_(e,r);for(let t=0;t<r;t++)g(e,n.codePointAt(t))},Me=(e,t)=>{let n=e.cbuf.length,r=e.cpos,i=se(n-r,t.length),a=t.length-i;e.cbuf.set(t.subarray(0,i),r),e.cpos+=i,a>0&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(m(n*2,a)),e.cbuf.set(t.subarray(i)),e.cpos=a)},v=(e,t)=>{_(e,t.byteLength),Me(e,t)},Ne=(e,t)=>{Ee(e,t);let n=new DataView(e.cbuf.buffer,e.cpos,t);return e.cpos+=t,n},Pe=(e,t)=>Ne(e,4).setFloat32(0,t,!1),Fe=(e,t)=>Ne(e,8).setFloat64(0,t,!1),Ie=(e,t)=>Ne(e,8).setBigInt64(0,t,!1),Le=new DataView(new ArrayBuffer(4)),Re=e=>(Le.setFloat32(0,e),Le.getFloat32(0)===e),ze=(e,t)=>{switch(typeof t){case`string`:g(e,119),je(e,t);break;case`number`:de(t)&&oe(t)<=2147483647?(g(e,125),Oe(e,t)):Re(t)?(g(e,124),Pe(e,t)):(g(e,123),Fe(e,t));break;case`bigint`:g(e,122),Ie(e,t);break;case`object`:if(t===null)g(e,126);else if(ie(t)){g(e,117),_(e,t.length);for(let n=0;n<t.length;n++)ze(e,t[n])}else if(t instanceof Uint8Array)g(e,116),v(e,t);else{g(e,118);let n=Object.keys(t);_(e,n.length);for(let r=0;r<n.length;r++){let i=n[r];je(e,i),ze(e,t[i])}}break;case`boolean`:g(e,t?120:121);break;default:g(e,127)}},Be=class extends Ce{constructor(e){super(),this.w=e,this.s=null,this.count=0}write(e){this.s===e?this.count++:(this.count>0&&_(this,this.count-1),this.count=1,this.w(this,e),this.s=e)}},Ve=e=>{e.count>0&&(Oe(e.encoder,e.count===1?e.s:-e.s),e.count>1&&_(e.encoder,e.count-2))},He=class{constructor(){this.encoder=new Ce,this.s=0,this.count=0}write(e){this.s===e?this.count++:(Ve(this),this.count=1,this.s=e)}toUint8Array(){return Ve(this),h(this.encoder)}},Ue=e=>{if(e.count>0){let t=e.diff*2+(e.count===1?0:1);Oe(e.encoder,t),e.count>1&&_(e.encoder,e.count-2)}},We=class{constructor(){this.encoder=new Ce,this.s=0,this.count=0,this.diff=0}write(e){this.diff===e-this.s?(this.s=e,this.count++):(Ue(this),this.count=1,this.diff=e-this.s,this.s=e)}toUint8Array(){return Ue(this),h(this.encoder)}},Ge=class{constructor(){this.sarr=[],this.s=``,this.lensE=new He}write(e){this.s+=e,this.s.length>19&&(this.sarr.push(this.s),this.s=``),this.lensE.write(e.length)}toUint8Array(){let e=new Ce;return this.sarr.push(this.s),this.s=``,je(e,this.sarr.join(``)),Me(e,this.lensE.toUint8Array()),h(e)}},y=e=>Error(e),b=()=>{throw y(`Method unimplemented`)},x=()=>{throw y(`Unexpected case`)},Ke=y(`Unexpected end of array`),qe=y(`Integer out of Range`),Je=class{constructor(e){this.arr=e,this.pos=0}},Ye=e=>new Je(e),Xe=e=>e.pos!==e.arr.length,Ze=(e,t)=>{let n=new Uint8Array(e.arr.buffer,e.pos+e.arr.byteOffset,t);return e.pos+=t,n},S=e=>Ze(e,C(e)),Qe=e=>e.arr[e.pos++],C=e=>{let t=0,n=1,r=e.arr.length;for(;e.pos<r;){let r=e.arr[e.pos++];if(t+=(r&127)*n,n*=128,r<128)return t;if(t>le)throw qe}throw Ke},$e=e=>{let t=e.arr[e.pos++],n=t&63,r=64,i=(t&64)>0?-1:1;if(!(t&128))return i*n;let a=e.arr.length;for(;e.pos<a;){if(t=e.arr[e.pos++],n+=(t&127)*r,r*=128,t<128)return i*n;if(n>le)throw qe}throw Ke},w=xe?e=>xe.decode(S(e)):e=>{let t=C(e);if(t===0)return``;{let n=String.fromCodePoint(Qe(e));if(--t<100)for(;t--;)n+=String.fromCodePoint(Qe(e));else for(;t>0;){let r=t<1e4?t:1e4,i=e.arr.subarray(e.pos,e.pos+r);e.pos+=r,n+=String.fromCodePoint.apply(null,i),t-=r}return decodeURIComponent(escape(n))}},et=(e,t)=>{let n=new DataView(e.arr.buffer,e.arr.byteOffset+e.pos,t);return e.pos+=t,n},tt=[e=>void 0,e=>null,$e,e=>et(e,4).getFloat32(0,!1),e=>et(e,8).getFloat64(0,!1),e=>et(e,8).getBigInt64(0,!1),e=>!1,e=>!0,w,e=>{let t=C(e),n={};for(let r=0;r<t;r++){let t=w(e);n[t]=nt(e)}return n},e=>{let t=C(e),n=[];for(let r=0;r<t;r++)n.push(nt(e));return n},S],nt=e=>tt[127-Qe(e)](e),rt=class extends Je{constructor(e,t){super(e),this.reader=t,this.s=null,this.count=0}read(){return this.count===0&&(this.s=this.reader(this),Xe(this)?this.count=C(this)+1:this.count=-1),this.count--,this.s}},it=class extends Je{constructor(e){super(e),this.s=0,this.count=0}read(){if(this.count===0){this.s=$e(this);let e=ce(this.s);this.count=1,e&&(this.s=-this.s,this.count=C(this)+2)}return this.count--,this.s}},at=class extends Je{constructor(e){super(e),this.s=0,this.count=0,this.diff=0}read(){if(this.count===0){let e=$e(this),t=e&1;this.diff=p(e/2),this.count=1,t&&(this.count=C(this)+2)}return this.s+=this.diff,this.count--,this.s}},ot=class{constructor(e){this.decoder=new it(e),this.str=w(this.decoder),this.spos=0}read(){let e=this.spos+this.decoder.read(),t=this.str.slice(this.spos,e);return this.spos=e,t}};crypto.subtle;var st=crypto.getRandomValues.bind(crypto),ct=()=>st(new Uint32Array(1))[0],lt=`10000000-1000-4000-8000-100000000000`,ut=()=>lt.replace(/[018]/g,e=>(e^ct()&15>>e/4).toString(16)),dt=Date.now,ft=e=>new Promise(e);Promise.all.bind(Promise);var pt=e=>e===void 0?null:e,mt=new class{constructor(){this.map=new Map}setItem(e,t){this.map.set(e,t)}getItem(e){return this.map.get(e)}};try{typeof localStorage<`u`&&localStorage&&(mt=localStorage)}catch{}var ht=mt,gt=Symbol(`Equality`),_t=(e,t)=>e===t||!!e?.[gt]?.(t)||!1,vt=e=>typeof e==`object`,yt=Object.assign,bt=Object.keys,xt=(e,t)=>{for(let n in e)t(e[n],n)},St=e=>bt(e).length,Ct=e=>{for(let t in e)return!1;return!0},wt=(e,t)=>{for(let n in e)if(!t(e[n],n))return!1;return!0},Tt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Et=(e,t)=>e===t||St(e)===St(t)&&wt(e,(e,n)=>(e!==void 0||Tt(t,n))&&_t(t[n],e)),Dt=Object.freeze,Ot=e=>{for(let t in e){let n=e[t];(typeof n==`object`||typeof n==`function`)&&Ot(e[t])}return Dt(e)},kt=(e,t,n=0)=>{try{for(;n<e.length;n++)e[n](...t)}finally{n<e.length&&kt(e,t,n+1)}},At=e=>e,jt=(e,t)=>{if(e===t)return!0;if(e==null||t==null||e.constructor!==t.constructor&&(e.constructor||Object)!==(t.constructor||Object))return!1;if(e[gt]!=null)return e[gt](t);switch(e.constructor){case ArrayBuffer:e=new Uint8Array(e),t=new Uint8Array(t);case Uint8Array:if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;break;case Set:if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;break;case Map:if(e.size!==t.size)return!1;for(let n of e.keys())if(!t.has(n)||!jt(e.get(n),t.get(n)))return!1;break;case void 0:case Object:if(St(e)!==St(t))return!1;for(let n in e)if(!Tt(e,n)||!jt(e[n],t[n]))return!1;break;case Array:if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!jt(e[n],t[n]))return!1;break;default:return!1}return!0},Mt=(e,t)=>t.includes(e),Nt=typeof process<`u`&&process.release&&/node|io\.js/.test(process.release.name)&&Object.prototype.toString.call(typeof process<`u`?process:0)===`[object process]`;typeof navigator<`u`&&/Mac/.test(navigator.platform);var T,Pt=[],Ft=()=>{if(T===void 0)if(Nt){T=a();let e=process.argv,t=null;for(let n=0;n<e.length;n++){let r=e[n];r[0]===`-`?(t!==null&&T.set(t,``),t=r):t===null?Pt.push(r):(T.set(t,r),t=null)}t!==null&&T.set(t,``)}else typeof location==`object`?(T=a(),(location.search||`?`).slice(1).split(`&`).forEach(e=>{if(e.length!==0){let[t,n]=e.split(`=`);T.set(`--${_e(t,`-`)}`,n),T.set(`-${_e(t,`-`)}`,n)}})):T=a();return T},It=e=>Ft().has(e),Lt=e=>pt(Nt?{}[e.toUpperCase().replaceAll(`-`,`_`)]:ht.getItem(e)),Rt=e=>It(`--`+e)||Lt(e)!==null,zt=Rt(`production`),Bt=Nt&&Mt({}.FORCE_COLOR,[`true`,`1`,`2`])||!It(`--no-colors`)&&!Rt(`no-color`)&&(!Nt||process.stdout.isTTY)&&(!Nt||It(`--color`)||Lt(`COLORTERM`)!==null||(Lt(`TERM`)||``).includes(`color`)),Vt=e=>new Uint8Array(e),Ht=e=>{let t=Vt(e.byteLength);return t.set(e),t},Ut=class{constructor(e,t){this.left=e,this.right=t}},E=(e,t)=>new Ut(e,t),Wt=e=>e.next()>=.5,Gt=(e,t,n)=>p(e.next()*(n+1-t)+t),Kt=(e,t,n)=>p(e.next()*(n+1-t)+t),qt=(e,t,n)=>Kt(e,t,n),Jt=e=>fe(qt(e,97,122)),Yt=(e,t=0,n=20)=>{let r=qt(e,t,n),i=``;for(let t=0;t<r;t++)i+=Jt(e);return i},Xt=(e,t)=>t[qt(e,0,t.length-1)],Zt=Symbol(`0schema`),Qt=class{constructor(){this._rerrs=[]}extend(e,t,n,r=null){this._rerrs.push({path:e,expected:t,has:n,message:r})}toString(){let e=[];for(let t=this._rerrs.length-1;t>0;t--){let n=this._rerrs[t];e.push(Se(` `,(this._rerrs.length-t)*2)+`${n.path==null?``:`[${n.path}] `}${n.has} doesn't match ${n.expected}. ${n.message}`)}return e.join(`
|
|
2
2
|
`)}},$t=(e,t)=>e===t?!0:e==null||t==null||e.constructor!==t.constructor?!1:e[gt]?_t(e,t):ie(e)?te(e,e=>ne(t,t=>$t(e,t))):vt(e)?wt(e,(e,n)=>$t(e,t[n])):!1,D=class{static _dilutes=!1;extends(e){let[t,n]=[this.shape,e.shape];return this.constructor._dilutes&&([n,t]=[t,n]),$t(t,n)}equals(e){return this.constructor===e.constructor&&jt(this.shape,e.shape)}[Zt](){return!0}[gt](e){return this.equals(e)}validate(e){return this.check(e)}check(e,t){b()}get nullable(){return A(this,Un)}get optional(){return new ln(this)}cast(e){return qn(e,this),e}expect(e){return qn(e,this),e}},en=class extends D{constructor(e,t){super(),this.shape=e,this._c=t}check(e,t=void 0){let n=e?.constructor===this.shape&&(this._c==null||this._c(e));return!n&&t?.extend(null,this.shape.name,e?.constructor.name,e?.constructor===this.shape?`Check failed`:`Constructor match failed`),n}},O=(e,t=null)=>new en(e,t);O(en);var tn=class extends D{constructor(e){super(),this.shape=e}check(e,t){let n=this.shape(e);return!n&&t?.extend(null,`custom prop`,e?.constructor.name,`failed to check custom prop`),n}},k=e=>new tn(e);O(tn);var nn=class extends D{constructor(e){super(),this.shape=e}check(e,t){let n=this.shape.some(t=>t===e);return!n&&t?.extend(null,this.shape.join(` | `),e.toString()),n}},rn=(...e)=>new nn(e),an=O(nn),on=RegExp.escape||(e=>e.replace(/[().|&,$^[\]]/g,e=>`\\`+e)),sn=e=>{if(M.check(e))return[on(e)];if(an.check(e))return e.shape.map(e=>e+``);if(Rn.check(e))return[`[+-]?\\d+.?\\d*`];if(zn.check(e))return[`.*`];if(jn.check(e))return e.shape.map(sn).flat(1);x()};O(class extends D{constructor(e){super(),this.shape=e,this._r=RegExp(`^`+e.map(sn).map(e=>`(${e.join(`|`)})`).join(``)+`$`)}check(e,t){let n=this._r.exec(e)!=null;return!n&&t?.extend(null,this._r.toString(),e.toString(),`String doesn't match string template.`),n}});var cn=Symbol(`optional`),ln=class extends D{constructor(e){super(),this.shape=e}check(e,t){let n=e===void 0||this.shape.check(e);return!n&&t?.extend(null,`undefined (optional)`,`()`),n}get[cn](){return!0}},un=O(ln),dn=class extends D{check(e,t){return t?.extend(null,`never`,typeof e),!1}};new dn,O(dn);var fn=class e extends D{constructor(e,t=!1){super(),this.shape=e,this._isPartial=t}static _dilutes=!0;get partial(){return new e(this.shape,!0)}check(e,t){return e==null?(t?.extend(null,`object`,`null`),!1):wt(this.shape,(n,r)=>{let i=this._isPartial&&!Tt(e,r)||n.check(e[r],t);return!i&&t?.extend(r.toString(),n.toString(),typeof e[r],`Object property does not match`),i})}},pn=e=>new fn(e),mn=O(fn),hn=k(e=>e!=null&&(e.constructor===Object||e.constructor==null)),gn=class extends D{constructor(e,t){super(),this.shape={keys:e,values:t}}check(e,t){return e!=null&&wt(e,(n,r)=>{let i=this.shape.keys.check(r,t);return!i&&t?.extend(r+``,`Record`,typeof e,i?`Key doesn't match schema`:`Value doesn't match value`),i&&this.shape.values.check(n,t)})}},_n=(e,t)=>new gn(e,t),vn=O(gn),yn=class extends D{constructor(e){super(),this.shape=e}check(e,t){return e!=null&&wt(this.shape,(n,r)=>{let i=n.check(e[r],t);return!i&&t?.extend(r.toString(),`Tuple`,typeof n),i})}},bn=(...e)=>new yn(e);O(yn);var xn=class extends D{constructor(e){super(),this.shape=e.length===1?e[0]:new An(e)}check(e,t){let n=ie(e)&&te(e,e=>this.shape.check(e));return!n&&t?.extend(null,`Array`,``),n}},Sn=(...e)=>new xn(e),Cn=O(xn),wn=k(e=>ie(e)),Tn=class extends D{constructor(e,t){super(),this.shape=e,this._c=t}check(e,t){let n=e instanceof this.shape&&(this._c==null||this._c(e));return!n&&t?.extend(null,this.shape.name,e?.constructor.name),n}},En=(e,t=null)=>new Tn(e,t);O(Tn);var Dn=En(D),On=O(class extends D{constructor(e){super(),this.len=e.length-1,this.args=bn(...e.slice(-1)),this.res=e[this.len]}check(e,t){let n=e.constructor===Function&&e.length<=this.len;return!n&&t?.extend(null,`function`,typeof e),n}}),kn=k(e=>typeof e==`function`);O(class extends D{constructor(e){super(),this.shape=e}check(e,t){let n=te(this.shape,n=>n.check(e,t));return!n&&t?.extend(null,`Intersectinon`,typeof e),n}},e=>e.shape.length>0);var An=class extends D{static _dilutes=!0;constructor(e){super(),this.shape=e}check(e,t){let n=ne(this.shape,n=>n.check(e,t));return t?.extend(null,`Union`,typeof e),n}},A=(...e)=>e.findIndex(e=>jn.check(e))>=0?A(...e.map(e=>Kn(e)).map(e=>jn.check(e)?e.shape:[e]).flat(1)):e.length===1?e[0]:new An(e),jn=O(An),Mn=()=>!0,Nn=k(Mn),Pn=O(tn,e=>e.shape===Mn),Fn=k(e=>typeof e==`bigint`),In=k(e=>e===Fn),Ln=k(e=>typeof e==`symbol`);k(e=>e===Ln);var j=k(e=>typeof e==`number`),Rn=k(e=>e===j),M=k(e=>typeof e==`string`),zn=k(e=>e===M),Bn=k(e=>typeof e==`boolean`),Vn=k(e=>e===Bn),Hn=rn(void 0);O(nn,e=>e.shape.length===1&&e.shape[0]===void 0),rn(void 0);var Un=rn(null),Wn=O(nn,e=>e.shape.length===1&&e.shape[0]===null);O(Uint8Array),O(en,e=>e.shape===Uint8Array);var Gn=A(j,M,Un,Hn,Fn,Bn,Ln);(()=>{let e=Sn(Nn),t=_n(M,Nn),n=A(j,M,Un,Bn,e,t);return e.shape=n,t.shape.values=n,n})();var Kn=e=>{if(Dn.check(e))return e;if(hn.check(e)){let t={};for(let n in e)t[n]=Kn(e[n]);return pn(t)}else if(wn.check(e))return A(...e.map(Kn));else if(Gn.check(e))return rn(e);else if(kn.check(e))return O(e);x()},qn=zt?()=>{}:(e,t)=>{let n=new Qt;if(!t.check(e,n))throw y(`Expected value to be of type ${t.constructor.name}.\n${n.toString()}`)},Jn=class{constructor(e){this.patterns=[],this.$state=e}if(e,t){return this.patterns.push({if:Kn(e),h:t}),this}else(e){return this.if(Nn,e)}done(){return(e,t)=>{for(let n=0;n<this.patterns.length;n++){let r=this.patterns[n];if(r.if.check(e))return r.h(e,t)}throw y(`Unhandled pattern`)}}},Yn=(e=>new Jn(e))(Nn).if(Rn,(e,t)=>Gt(t,ue,le)).if(zn,(e,t)=>Yt(t)).if(Vn,(e,t)=>Wt(t)).if(In,(e,t)=>BigInt(Gt(t,ue,le))).if(jn,(e,t)=>N(t,Xt(t,e.shape))).if(mn,(e,t)=>{let n={};for(let r in e.shape){let i=e.shape[r];if(un.check(i)){if(Wt(t))continue;i=i.shape}n[r]=Yn(i,t)}return n}).if(Cn,(e,t)=>{let n=[],r=Kt(t,0,42);for(let i=0;i<r;i++)n.push(N(t,e.shape));return n}).if(an,(e,t)=>Xt(t,e.shape)).if(Wn,(e,t)=>null).if(On,(e,t)=>{let n=N(t,e.res);return()=>n}).if(Pn,(e,t)=>N(t,Xt(t,[j,M,Un,Hn,Fn,Bn,Sn(j),_n(A(`a`,`b`,`c`),j)]))).if(vn,(e,t)=>{let n={},r=Gt(t,0,3);for(let i=0;i<r;i++){let r=N(t,e.shape.keys);n[r]=N(t,e.shape.values)}return n}).done(),N=(e,t)=>Yn(Kn(t),e),P=typeof document<`u`?document:{};k(e=>e.nodeType===er),typeof DOMParser<`u`&&new DOMParser,k(e=>e.nodeType===Zn),k(e=>e.nodeType===Qn);var Xn=e=>c(e,(e,t)=>`${t}:${e};`).join(``),Zn=P.ELEMENT_NODE,Qn=P.TEXT_NODE;P.CDATA_SECTION_NODE,P.COMMENT_NODE;var $n=P.DOCUMENT_NODE;P.DOCUMENT_TYPE_NODE;var er=P.DOCUMENT_FRAGMENT_NODE;k(e=>e.nodeType===$n);var F=Symbol,tr=F(),nr=F(),rr=F(),ir=F(),ar=F(),or=F(),sr=F(),cr=F(),lr=F(),ur=e=>{e.length===1&&e[0]?.constructor===Function&&(e=e[0]());let t=[],n=[],r=0;for(;r<e.length;r++){let n=e[r];if(n===void 0)break;if(n.constructor===String||n.constructor===Number)t.push(n);else if(n.constructor===Object)break}for(r>0&&n.push(t.join(``));r<e.length;r++){let t=e[r];t instanceof Symbol||n.push(t)}return n};dt();var dr={[tr]:E(`font-weight`,`bold`),[nr]:E(`font-weight`,`normal`),[rr]:E(`color`,`blue`),[ar]:E(`color`,`green`),[ir]:E(`color`,`grey`),[or]:E(`color`,`red`),[sr]:E(`color`,`purple`),[cr]:E(`color`,`orange`),[lr]:E(`color`,`black`)},fr=Bt?e=>{e.length===1&&e[0]?.constructor===Function&&(e=e[0]());let t=[],n=[],r=a(),i=[],o=0;for(;o<e.length;o++){let i=e[o],a=dr[i];if(a!==void 0)r.set(a.left,a.right);else{if(i===void 0)break;if(i.constructor===String||i.constructor===Number){let e=Xn(r);o>0||e.length>0?(t.push(`%c`+i),n.push(e)):t.push(i)}else break}}for(o>0&&(i=n,i.unshift(t.join(``)));o<e.length;o++){let t=e[o];t instanceof Symbol||i.push(t)}return i}:ur,pr=(...e)=>{console.log(...fr(e)),hr.forEach(t=>t.print(e))},mr=(...e)=>{console.warn(...fr(e)),e.unshift(cr),hr.forEach(t=>t.print(e))},hr=u(),gr=e=>({[Symbol.iterator](){return this},next:e}),_r=(e,t)=>gr(()=>{let n;do n=e.next();while(!n.done&&!t(n.value));return n}),vr=(e,t)=>gr(()=>{let{done:n,value:r}=e.next();return{done:n,value:n?void 0:t(r)}}),yr=class{constructor(e,t){this.clock=e,this.len=t}},br=class{constructor(){this.clients=new Map}},xr=(e,t,n)=>t.clients.forEach((t,r)=>{let i=e.doc.store.clients.get(r);if(i!=null){let r=i[i.length-1],a=r.id.clock+r.length;for(let r=0,o=t[r];r<t.length&&o.clock<a;o=t[++r])xi(e,i,o.clock,o.len,n)}}),Sr=(e,t)=>{let n=0,r=e.length-1;for(;n<=r;){let i=p((n+r)/2),a=e[i],o=a.clock;if(o<=t){if(t<o+a.len)return i;n=i+1}else r=i-1}return null},Cr=(e,t)=>{let n=e.clients.get(t.client);return n!==void 0&&Sr(n,t.clock)!==null},wr=e=>{e.clients.forEach(e=>{e.sort((e,t)=>e.clock-t.clock);let t,n;for(t=1,n=1;t<e.length;t++){let r=e[n-1],i=e[t];r.clock+r.len>=i.clock?e[n-1]=new yr(r.clock,m(r.len,i.clock+i.len-r.clock)):(n<t&&(e[n]=i),n++)}e.length=n})},Tr=e=>{let t=new br;for(let n=0;n<e.length;n++)e[n].clients.forEach((r,i)=>{if(!t.clients.has(i)){let a=r.slice();for(let t=n+1;t<e.length;t++)ee(a,e[t].clients.get(i)||[]);t.clients.set(i,a)}});return wr(t),t},Er=(e,t,n,r)=>{s(e.clients,t,()=>[]).push(new yr(n,r))},Dr=()=>new br,Or=e=>{let t=Dr();return e.clients.forEach((e,n)=>{let r=[];for(let t=0;t<e.length;t++){let n=e[t];if(n.deleted){let i=n.id.clock,a=n.length;if(t+1<e.length)for(let n=e[t+1];t+1<e.length&&n.deleted;n=e[++t+1])a+=n.length;r.push(new yr(i,a))}}r.length>0&&t.clients.set(n,r)}),t},I=(e,t)=>{_(e.restEncoder,t.clients.size),f(t.clients.entries()).sort((e,t)=>t[0]-e[0]).forEach(([t,n])=>{e.resetDsCurVal(),_(e.restEncoder,t);let r=n.length;_(e.restEncoder,r);for(let t=0;t<r;t++){let r=n[t];e.writeDsClock(r.clock),e.writeDsLen(r.len)}})},kr=e=>{let t=new br,n=C(e.restDecoder);for(let r=0;r<n;r++){e.resetDsCurVal();let n=C(e.restDecoder),r=C(e.restDecoder);if(r>0){let i=s(t.clients,n,()=>[]);for(let t=0;t<r;t++)i.push(new yr(e.readDsClock(),e.readDsLen()))}}return t},Ar=(e,t,n)=>{let r=new br,i=C(e.restDecoder);for(let a=0;a<i;a++){e.resetDsCurVal();let i=C(e.restDecoder),a=C(e.restDecoder),o=n.clients.get(i)||[],s=z(n,i);for(let n=0;n<a;n++){let n=e.readDsClock(),a=n+e.readDsLen();if(n<s){s<a&&Er(r,i,s,a-s);let e=B(o,n),c=o[e];for(!c.deleted&&c.id.clock<n&&(o.splice(e+1,0,Co(t,c,n-c.id.clock)),e++);e<o.length&&(c=o[e++],c.id.clock<a);)c.deleted||(a<c.id.clock+c.length&&o.splice(e,0,Co(t,c,a-c.id.clock)),c.delete(t))}else Er(r,i,n,a-n)}}if(r.clients.size>0){let e=new L;return _(e.restEncoder,0),I(e,r),e.toUint8Array()}return null},jr=ct,Mr=class e extends ae{constructor({guid:e=ut(),collectionid:t=null,gc:n=!0,gcFilter:r=()=>!0,meta:i=null,autoLoad:a=!1,shouldLoad:o=!0}={}){super(),this.gc=n,this.gcFilter=r,this.clientID=jr(),this.guid=e,this.collectionid=t,this.share=new Map,this.store=new mi,this._transaction=null,this._transactionCleanups=[],this.subdocs=new Set,this._item=null,this.shouldLoad=o,this.autoLoad=a,this.meta=i,this.isLoaded=!1,this.isSynced=!1,this.isDestroyed=!1,this.whenLoaded=ft(e=>{this.on(`load`,()=>{this.isLoaded=!0,e(this)})});let s=()=>ft(e=>{let t=n=>{(n===void 0||n===!0)&&(this.off(`sync`,t),e())};this.on(`sync`,t)});this.on(`sync`,e=>{e===!1&&this.isSynced&&(this.whenSynced=s()),this.isSynced=e===void 0||e===!0,this.isSynced&&!this.isLoaded&&this.emit(`load`,[this])}),this.whenSynced=s()}load(){let e=this._item;e!==null&&!this.shouldLoad&&H(e.parent.doc,e=>{e.subdocsLoaded.add(this)},null,!0),this.shouldLoad=!0}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(f(this.subdocs).map(e=>e.guid))}transact(e,t=null){return H(this,e,t)}get(e,t=G){let n=s(this.share,e,()=>{let e=new t;return e._integrate(this,null),e}),r=n.constructor;if(t!==G&&r!==t)if(r===G){let r=new t;r._map=n._map,n._map.forEach(e=>{for(;e!==null;e=e.left)e.parent=r}),r._start=n._start;for(let e=r._start;e!==null;e=e.right)e.parent=r;return r._length=n._length,this.share.set(e,r),r._integrate(this,null),r}else throw Error(`Type with the name ${e} has already been defined with a different constructor`);return n}getArray(e=``){return this.get(e,_a)}getText(e=``){return this.get(e,La)}getMap(e=``){return this.get(e,ba)}getXmlElement(e=``){return this.get(e,Ha)}getXmlFragment(e=``){return this.get(e,Ba)}toJSON(){let e={};return this.share.forEach((t,n)=>{e[n]=t.toJSON()}),e}destroy(){this.isDestroyed=!0,f(this.subdocs).forEach(e=>e.destroy());let t=this._item;if(t!==null){this._item=null;let n=t.content;n.doc=new e({guid:this.guid,...n.opts,shouldLoad:!1}),n.doc._item=t,H(t.parent.doc,e=>{let r=n.doc;t.deleted||e.subdocsAdded.add(r),e.subdocsRemoved.add(this)},null,!0)}this.emit(`destroyed`,[!0]),this.emit(`destroy`,[this]),super.destroy()}},Nr=class{constructor(e){this.restDecoder=e}resetDsCurVal(){}readDsClock(){return C(this.restDecoder)}readDsLen(){return C(this.restDecoder)}},Pr=class extends Nr{readLeftID(){return R(C(this.restDecoder),C(this.restDecoder))}readRightID(){return R(C(this.restDecoder),C(this.restDecoder))}readClient(){return C(this.restDecoder)}readInfo(){return Qe(this.restDecoder)}readString(){return w(this.restDecoder)}readParentInfo(){return C(this.restDecoder)===1}readTypeRef(){return C(this.restDecoder)}readLen(){return C(this.restDecoder)}readAny(){return nt(this.restDecoder)}readBuf(){return Ht(S(this.restDecoder))}readJSON(){return JSON.parse(w(this.restDecoder))}readKey(){return w(this.restDecoder)}},Fr=class{constructor(e){this.dsCurrVal=0,this.restDecoder=e}resetDsCurVal(){this.dsCurrVal=0}readDsClock(){return this.dsCurrVal+=C(this.restDecoder),this.dsCurrVal}readDsLen(){let e=C(this.restDecoder)+1;return this.dsCurrVal+=e,e}},Ir=class extends Fr{constructor(e){super(e),this.keys=[],C(e),this.keyClockDecoder=new at(S(e)),this.clientDecoder=new it(S(e)),this.leftClockDecoder=new at(S(e)),this.rightClockDecoder=new at(S(e)),this.infoDecoder=new rt(S(e),Qe),this.stringDecoder=new ot(S(e)),this.parentInfoDecoder=new rt(S(e),Qe),this.typeRefDecoder=new it(S(e)),this.lenDecoder=new it(S(e))}readLeftID(){return new ci(this.clientDecoder.read(),this.leftClockDecoder.read())}readRightID(){return new ci(this.clientDecoder.read(),this.rightClockDecoder.read())}readClient(){return this.clientDecoder.read()}readInfo(){return this.infoDecoder.read()}readString(){return this.stringDecoder.read()}readParentInfo(){return this.parentInfoDecoder.read()===1}readTypeRef(){return this.typeRefDecoder.read()}readLen(){return this.lenDecoder.read()}readAny(){return nt(this.restDecoder)}readBuf(){return S(this.restDecoder)}readJSON(){return nt(this.restDecoder)}readKey(){let e=this.keyClockDecoder.read();if(e<this.keys.length)return this.keys[e];{let e=this.stringDecoder.read();return this.keys.push(e),e}}},Lr=class{constructor(){this.restEncoder=we()}toUint8Array(){return h(this.restEncoder)}resetDsCurVal(){}writeDsClock(e){_(this.restEncoder,e)}writeDsLen(e){_(this.restEncoder,e)}},Rr=class extends Lr{writeLeftID(e){_(this.restEncoder,e.client),_(this.restEncoder,e.clock)}writeRightID(e){_(this.restEncoder,e.client),_(this.restEncoder,e.clock)}writeClient(e){_(this.restEncoder,e)}writeInfo(e){De(this.restEncoder,e)}writeString(e){je(this.restEncoder,e)}writeParentInfo(e){_(this.restEncoder,+!!e)}writeTypeRef(e){_(this.restEncoder,e)}writeLen(e){_(this.restEncoder,e)}writeAny(e){ze(this.restEncoder,e)}writeBuf(e){v(this.restEncoder,e)}writeJSON(e){je(this.restEncoder,JSON.stringify(e))}writeKey(e){je(this.restEncoder,e)}},zr=class{constructor(){this.restEncoder=we(),this.dsCurrVal=0}toUint8Array(){return h(this.restEncoder)}resetDsCurVal(){this.dsCurrVal=0}writeDsClock(e){let t=e-this.dsCurrVal;this.dsCurrVal=e,_(this.restEncoder,t)}writeDsLen(e){e===0&&x(),_(this.restEncoder,e-1),this.dsCurrVal+=e}},L=class extends zr{constructor(){super(),this.keyMap=new Map,this.keyClock=0,this.keyClockEncoder=new We,this.clientEncoder=new He,this.leftClockEncoder=new We,this.rightClockEncoder=new We,this.infoEncoder=new Be(De),this.stringEncoder=new Ge,this.parentInfoEncoder=new Be(De),this.typeRefEncoder=new He,this.lenEncoder=new He}toUint8Array(){let e=we();return _(e,0),v(e,this.keyClockEncoder.toUint8Array()),v(e,this.clientEncoder.toUint8Array()),v(e,this.leftClockEncoder.toUint8Array()),v(e,this.rightClockEncoder.toUint8Array()),v(e,h(this.infoEncoder)),v(e,this.stringEncoder.toUint8Array()),v(e,h(this.parentInfoEncoder)),v(e,this.typeRefEncoder.toUint8Array()),v(e,this.lenEncoder.toUint8Array()),Me(e,h(this.restEncoder)),h(e)}writeLeftID(e){this.clientEncoder.write(e.client),this.leftClockEncoder.write(e.clock)}writeRightID(e){this.clientEncoder.write(e.client),this.rightClockEncoder.write(e.clock)}writeClient(e){this.clientEncoder.write(e)}writeInfo(e){this.infoEncoder.write(e)}writeString(e){this.stringEncoder.write(e)}writeParentInfo(e){this.parentInfoEncoder.write(+!!e)}writeTypeRef(e){this.typeRefEncoder.write(e)}writeLen(e){this.lenEncoder.write(e)}writeAny(e){ze(this.restEncoder,e)}writeBuf(e){v(this.restEncoder,e)}writeJSON(e){ze(this.restEncoder,e)}writeKey(e){let t=this.keyMap.get(e);t===void 0?(this.keyClockEncoder.write(this.keyClock++),this.stringEncoder.write(e)):this.keyClockEncoder.write(t)}},Br=(e,t,n,r)=>{r=m(r,t[0].id.clock);let i=B(t,r);_(e.restEncoder,t.length-i),e.writeClient(n),_(e.restEncoder,r);let a=t[i];a.write(e,r-a.id.clock);for(let n=i+1;n<t.length;n++)t[n].write(e,0)},Vr=(e,t,n)=>{let r=new Map;n.forEach((e,n)=>{z(t,n)>e&&r.set(n,e)}),hi(t).forEach((e,t)=>{n.has(t)||r.set(t,0)}),_(e.restEncoder,r.size),f(r.entries()).sort((e,t)=>t[0]-e[0]).forEach(([n,r])=>{Br(e,t.clients.get(n),n,r)})},Hr=(e,t)=>{let n=a(),r=C(e.restDecoder);for(let i=0;i<r;i++){let r=C(e.restDecoder),i=Array(r),a=e.readClient(),o=C(e.restDecoder);n.set(a,{i:0,refs:i});for(let n=0;n<r;n++){let r=e.readInfo();switch(31&r){case 0:{let t=e.readLen();i[n]=new q(R(a,o),t),o+=t;break}case 10:{let t=C(e.restDecoder);i[n]=new Q(R(a,o),t),o+=t;break}default:{let s=(r&192)==0,c=new Z(R(a,o),null,(r&128)==128?e.readLeftID():null,null,(r&64)==64?e.readRightID():null,s?e.readParentInfo()?t.get(e.readString()):e.readLeftID():null,s&&(r&32)==32?e.readString():null,wo(e,r));i[n]=c,o+=c.length}}}}return n},Ur=(e,t,n)=>{let r=[],i=f(n.keys()).sort((e,t)=>e-t);if(i.length===0)return null;let a=()=>{if(i.length===0)return null;let e=n.get(i[i.length-1]);for(;e.refs.length===e.i;)if(i.pop(),i.length>0)e=n.get(i[i.length-1]);else return null;return e},o=a();if(o===null)return null;let c=new mi,l=new Map,u=(e,t)=>{let n=l.get(e);(n==null||n>t)&&l.set(e,t)},d=o.refs[o.i++],ee=new Map,te=()=>{for(let e of r){let t=e.id.client,r=n.get(t);r?(r.i--,c.clients.set(t,r.refs.slice(r.i)),n.delete(t),r.i=0,r.refs=[]):c.clients.set(t,[e]),i=i.filter(e=>e!==t)}r.length=0};for(;;){if(d.constructor!==Q){let i=s(ee,d.id.client,()=>z(t,d.id.client))-d.id.clock;if(i<0)r.push(d),u(d.id.client,d.id.clock-1),te();else{let a=d.getMissing(e,t);if(a!==null){r.push(d);let e=n.get(a)||{refs:[],i:0};if(e.refs.length===e.i)u(a,z(t,a)),te();else{d=e.refs[e.i++];continue}}else (i===0||i<d.length)&&(d.integrate(e,i),ee.set(d.id.client,d.id.clock+d.length))}}if(r.length>0)d=r.pop();else if(o!==null&&o.i<o.refs.length)d=o.refs[o.i++];else{if(o=a(),o===null)break;d=o.refs[o.i++]}}if(c.clients.size>0){let e=new L;return Vr(e,c,new Map),_(e.restEncoder,0),{missing:l,update:e.toUint8Array()}}return null},Wr=(e,t)=>Vr(e,t.doc.store,t.beforeState),Gr=(e,t,n,r=new Ir(e))=>H(t,e=>{e.local=!1;let t=!1,n=e.doc,i=n.store,a=Ur(e,i,Hr(r,n)),o=i.pendingStructs;if(o){for(let[e,n]of o.missing)if(n<z(i,e)){t=!0;break}if(a){for(let[e,t]of a.missing){let n=o.missing.get(e);(n==null||n>t)&&o.missing.set(e,t)}o.update=Pi([o.update,a.update])}}else i.pendingStructs=a;let s=Ar(r,e,i);if(i.pendingDs){let t=new Ir(Ye(i.pendingDs));C(t.restDecoder);let n=Ar(t,e,i);s&&n?i.pendingDs=Pi([s,n]):i.pendingDs=s||n}else i.pendingDs=s;if(t){let t=i.pendingStructs.update;i.pendingStructs=null,Kr(e.doc,t)}},n,!1),Kr=(e,t,n,r=Ir)=>{let i=Ye(t);Gr(i,e,n,new r(i))},qr=(e,t,n)=>Kr(e,t,n,Pr),Jr=(e,t,n=new Map)=>{Vr(e,t.store,n),I(e,Or(t.store))},Yr=(e,t=new Uint8Array([0]),n=new L)=>{Jr(n,e,Qr(t));let r=[n.toUint8Array()];if(e.store.pendingDs&&r.push(e.store.pendingDs),e.store.pendingStructs&&r.push(Fi(e.store.pendingStructs.update,t)),r.length>1){if(n.constructor===Rr)return Mi(r.map((e,t)=>t===0?e:zi(e)));if(n.constructor===L)return Pi(r)}return r[0]},Xr=(e,t)=>Yr(e,t,new Rr),Zr=e=>{let t=new Map,n=C(e.restDecoder);for(let r=0;r<n;r++){let n=C(e.restDecoder),r=C(e.restDecoder);t.set(n,r)}return t},Qr=e=>Zr(new Nr(Ye(e))),$r=(e,t)=>(_(e.restEncoder,t.size),f(t.entries()).sort((e,t)=>t[0]-e[0]).forEach(([t,n])=>{_(e.restEncoder,t),_(e.restEncoder,n)}),e),ei=(e,t)=>$r(e,hi(t.store)),ti=(e,t=new zr)=>(e instanceof Map?$r(t,e):ei(t,e),t.toUint8Array()),ni=e=>ti(e,new Lr),ri=class{constructor(){this.l=[]}},ii=()=>new ri,ai=(e,t)=>e.l.push(t),oi=(e,t)=>{let n=e.l,r=n.length;e.l=n.filter(e=>t!==e),r===e.l.length&&console.error(`[yjs] Tried to remove event handler that doesn't exist.`)},si=(e,t,n)=>kt(e.l,[t,n]),ci=class{constructor(e,t){this.client=e,this.clock=t}},li=(e,t)=>e===t||e!==null&&t!==null&&e.client===t.client&&e.clock===t.clock,R=(e,t)=>new ci(e,t),ui=e=>{for(let[t,n]of e.doc.share.entries())if(n===e)return t;throw x()},di=class{constructor(e,t){this.ds=e,this.sv=t}};((e,t)=>new di(e,t))(Dr(),new Map);var fi=(e,t)=>t===void 0?!e.deleted:t.sv.has(e.id.client)&&(t.sv.get(e.id.client)||0)>e.id.clock&&!Cr(t.ds,e.id),pi=(e,t)=>{let n=s(e.meta,pi,u),r=e.doc.store;n.has(t)||(t.sv.forEach((t,n)=>{t<z(r,n)&&V(e,R(n,t))}),xr(e,t.ds,e=>{}),n.add(t))},mi=class{constructor(){this.clients=new Map,this.pendingStructs=null,this.pendingDs=null}},hi=e=>{let t=new Map;return e.clients.forEach((e,n)=>{let r=e[e.length-1];t.set(n,r.id.clock+r.length)}),t},z=(e,t)=>{let n=e.clients.get(t);if(n===void 0)return 0;let r=n[n.length-1];return r.id.clock+r.length},gi=(e,t)=>{let n=e.clients.get(t.id.client);if(n===void 0)n=[],e.clients.set(t.id.client,n);else{let e=n[n.length-1];if(e.id.clock+e.length!==t.id.clock)throw x()}n.push(t)},B=(e,t)=>{let n=0,r=e.length-1,i=e[r],a=i.id.clock;if(a===t)return r;let o=p(t/(a+i.length-1)*r);for(;n<=r;){if(i=e[o],a=i.id.clock,a<=t){if(t<a+i.length)return o;n=o+1}else r=o-1;o=p((n+r)/2)}throw x()},_i=(e,t)=>{let n=e.clients.get(t.client);return n[B(n,t.clock)]},vi=(e,t,n)=>{let r=B(t,n),i=t[r];return i.id.clock<n&&i instanceof Z?(t.splice(r+1,0,Co(e,i,n-i.id.clock)),r+1):r},V=(e,t)=>{let n=e.doc.store.clients.get(t.client);return n[vi(e,n,t.clock)]},yi=(e,t,n)=>{let r=t.clients.get(n.client),i=B(r,n.clock),a=r[i];return n.clock!==a.id.clock+a.length-1&&a.constructor!==q&&r.splice(i+1,0,Co(e,a,n.clock-a.id.clock+1)),a},bi=(e,t,n)=>{let r=e.clients.get(t.id.client);r[B(r,t.id.clock)]=n},xi=(e,t,n,r,i)=>{if(r===0)return;let a=n+r,o=vi(e,t,n),s;do s=t[o++],a<s.id.clock+s.length&&vi(e,t,a),i(s);while(o<t.length&&t[o].id.clock<a)},Si=class{constructor(e,t,n){this.doc=e,this.deleteSet=new br,this.beforeState=hi(e.store),this.afterState=new Map,this.changed=new Map,this.changedParentTypes=new Map,this._mergeStructs=[],this.origin=t,this.meta=new Map,this.local=n,this.subdocsAdded=new Set,this.subdocsRemoved=new Set,this.subdocsLoaded=new Set,this._needFormattingCleanup=!1}},Ci=(e,t)=>t.deleteSet.clients.size===0&&!l(t.afterState,(e,n)=>t.beforeState.get(n)!==e)?!1:(wr(t.deleteSet),Wr(e,t),I(e,t.deleteSet),!0),wi=(e,t,n)=>{let r=t._item;(r===null||r.id.clock<(e.beforeState.get(r.id.client)||0)&&!r.deleted)&&s(e.changed,t,u).add(n)},Ti=(e,t)=>{let n=e[t],r=e[t-1],i=t;for(;i>0;n=r,r=e[--i-1]){if(r.deleted===n.deleted&&r.constructor===n.constructor&&r.mergeWith(n)){n instanceof Z&&n.parentSub!==null&&n.parent._map.get(n.parentSub)===n&&n.parent._map.set(n.parentSub,r);continue}break}let a=t-i;return a&&e.splice(t+1-a,a),a},Ei=(e,t,n)=>{for(let[r,i]of e.clients.entries()){let e=t.clients.get(r);for(let r=i.length-1;r>=0;r--){let a=i[r],o=a.clock+a.len;for(let r=B(e,a.clock),i=e[r];r<e.length&&i.id.clock<o;i=e[++r]){let i=e[r];if(a.clock+a.len<=i.id.clock)break;i instanceof Z&&i.deleted&&!i.keep&&n(i)&&i.gc(t,!1)}}}},Di=(e,t)=>{e.clients.forEach((e,n)=>{let r=t.clients.get(n);for(let t=e.length-1;t>=0;t--){let n=e[t],i=se(r.length-1,1+B(r,n.clock+n.len-1));for(let e=i,t=r[e];e>0&&t.id.clock>=n.clock;t=r[e])e-=1+Ti(r,e)}})},Oi=(e,t)=>{if(t<e.length){let n=e[t],r=n.doc,i=r.store,a=n.deleteSet,o=n._mergeStructs;try{wr(a),n.afterState=hi(n.doc.store),r.emit(`beforeObserverCalls`,[n,r]);let e=[];n.changed.forEach((t,r)=>e.push(()=>{(r._item===null||!r._item.deleted)&&r._callObserver(n,t)})),e.push(()=>{n.changedParentTypes.forEach((t,r)=>{r._dEH.l.length>0&&(r._item===null||!r._item.deleted)&&(t=t.filter(e=>e.target._item===null||!e.target._item.deleted),t.forEach(e=>{e.currentTarget=r,e._path=null}),t.sort((e,t)=>e.path.length-t.path.length),e.push(()=>{si(r._dEH,t,n)}))}),e.push(()=>r.emit(`afterTransaction`,[n,r])),e.push(()=>{n._needFormattingCleanup&&Pa(n)})}),kt(e,[])}finally{r.gc&&Ei(a,i,r.gcFilter),Di(a,i),n.afterState.forEach((e,t)=>{let r=n.beforeState.get(t)||0;if(r!==e){let e=i.clients.get(t),n=m(B(e,r),1);for(let t=e.length-1;t>=n;)t-=1+Ti(e,t)}});for(let e=o.length-1;e>=0;e--){let{client:t,clock:n}=o[e].id,r=i.clients.get(t),a=B(r,n);a+1<r.length&&Ti(r,a+1)>1||a>0&&Ti(r,a)}if(!n.local&&n.afterState.get(r.clientID)!==n.beforeState.get(r.clientID)&&(pr(cr,tr,`[yjs] `,nr,or,`Changed the client-id because another client seems to be using it.`),r.clientID=jr()),r.emit(`afterTransactionCleanup`,[n,r]),r._observers.has(`update`)){let e=new Rr;Ci(e,n)&&r.emit(`update`,[e.toUint8Array(),n.origin,r,n])}if(r._observers.has(`updateV2`)){let e=new L;Ci(e,n)&&r.emit(`updateV2`,[e.toUint8Array(),n.origin,r,n])}let{subdocsAdded:s,subdocsLoaded:c,subdocsRemoved:l}=n;(s.size>0||l.size>0||c.size>0)&&(s.forEach(e=>{e.clientID=r.clientID,e.collectionid??=r.collectionid,r.subdocs.add(e)}),l.forEach(e=>r.subdocs.delete(e)),r.emit(`subdocs`,[{loaded:c,added:s,removed:l},r,n]),l.forEach(e=>e.destroy())),e.length<=t+1?(r._transactionCleanups=[],r.emit(`afterAllTransactions`,[r,e])):Oi(e,t+1)}}},H=(e,t,n=null,r=!0)=>{let i=e._transactionCleanups,a=!1,o=null;e._transaction===null&&(a=!0,e._transaction=new Si(e,n,r),i.push(e._transaction),i.length===1&&e.emit(`beforeAllTransactions`,[e]),e.emit(`beforeTransaction`,[e._transaction,e]));try{o=t(e._transaction)}finally{if(a){let t=e._transaction===i[0];e._transaction=null,t&&Oi(i,0)}}return o};function*ki(e){let t=C(e.restDecoder);for(let n=0;n<t;n++){let t=C(e.restDecoder),n=e.readClient(),r=C(e.restDecoder);for(let i=0;i<t;i++){let t=e.readInfo();if(t===10){let t=C(e.restDecoder);yield new Q(R(n,r),t),r+=t}else if(31&t){let i=(t&192)==0,a=new Z(R(n,r),null,(t&128)==128?e.readLeftID():null,null,(t&64)==64?e.readRightID():null,i?e.readParentInfo()?e.readString():e.readLeftID():null,i&&(t&32)==32?e.readString():null,wo(e,t));yield a,r+=a.length}else{let t=e.readLen();yield new q(R(n,r),t),r+=t}}}}var Ai=class{constructor(e,t){this.gen=ki(e),this.curr=null,this.done=!1,this.filterSkips=t,this.next()}next(){do this.curr=this.gen.next().value||null;while(this.filterSkips&&this.curr!==null&&this.curr.constructor===Q);return this.curr}},ji=class{constructor(e){this.currClient=0,this.startClock=0,this.written=0,this.encoder=e,this.clientStructs=[]}},Mi=e=>Pi(e,Pr,Rr),Ni=(e,t)=>{if(e.constructor===q){let{client:n,clock:r}=e.id;return new q(R(n,r+t),e.length-t)}else if(e.constructor===Q){let{client:n,clock:r}=e.id;return new Q(R(n,r+t),e.length-t)}else{let n=e,{client:r,clock:i}=n.id;return new Z(R(r,i+t),null,R(r,i+t-1),null,n.rightOrigin,n.parent,n.parentSub,n.content.splice(t))}},Pi=(e,t=Ir,n=L)=>{if(e.length===1)return e[0];let r=e.map(e=>new t(Ye(e))),i=r.map(e=>new Ai(e,!0)),a=null,o=new n,s=new ji(o);for(;i=i.filter(e=>e.curr!==null),i.sort((e,t)=>{if(e.curr.id.client===t.curr.id.client){let n=e.curr.id.clock-t.curr.id.clock;return n===0?e.curr.constructor===t.curr.constructor?0:e.curr.constructor===Q?1:-1:n}else return t.curr.id.client-e.curr.id.client}),i.length!==0;){let e=i[0],t=e.curr.id.client;if(a!==null){let n=e.curr,r=!1;for(;n!==null&&n.id.clock+n.length<=a.struct.id.clock+a.struct.length&&n.id.client>=a.struct.id.client;)n=e.next(),r=!0;if(n===null||n.id.client!==t||r&&n.id.clock>a.struct.id.clock+a.struct.length)continue;if(t!==a.struct.id.client)U(s,a.struct,a.offset),a={struct:n,offset:0},e.next();else if(a.struct.id.clock+a.struct.length<n.id.clock)if(a.struct.constructor===Q)a.struct.length=n.id.clock+n.length-a.struct.id.clock;else{U(s,a.struct,a.offset);let e=n.id.clock-a.struct.id.clock-a.struct.length;a={struct:new Q(R(t,a.struct.id.clock+a.struct.length),e),offset:0}}else{let t=a.struct.id.clock+a.struct.length-n.id.clock;t>0&&(a.struct.constructor===Q?a.struct.length-=t:n=Ni(n,t)),a.struct.mergeWith(n)||(U(s,a.struct,a.offset),a={struct:n,offset:0},e.next())}}else a={struct:e.curr,offset:0},e.next();for(let n=e.curr;n!==null&&n.id.client===t&&n.id.clock===a.struct.id.clock+a.struct.length&&n.constructor!==Q;n=e.next())U(s,a.struct,a.offset),a={struct:n,offset:0}}return a!==null&&(U(s,a.struct,a.offset),a=null),Li(s),I(o,Tr(r.map(e=>kr(e)))),o.toUint8Array()},Fi=(e,t,n=Ir,r=L)=>{let i=Qr(t),a=new r,o=new ji(a),s=new n(Ye(e)),c=new Ai(s,!1);for(;c.curr;){let e=c.curr,t=e.id.client,n=i.get(t)||0;if(c.curr.constructor===Q){c.next();continue}if(e.id.clock+e.length>n)for(U(o,e,m(n-e.id.clock,0)),c.next();c.curr&&c.curr.id.client===t;)U(o,c.curr,0),c.next();else for(;c.curr&&c.curr.id.client===t&&c.curr.id.clock+c.curr.length<=n;)c.next()}return Li(o),I(a,kr(s)),a.toUint8Array()},Ii=e=>{e.written>0&&(e.clientStructs.push({written:e.written,restEncoder:h(e.encoder.restEncoder)}),e.encoder.restEncoder=we(),e.written=0)},U=(e,t,n)=>{e.written>0&&e.currClient!==t.id.client&&Ii(e),e.written===0&&(e.currClient=t.id.client,e.encoder.writeClient(t.id.client),_(e.encoder.restEncoder,t.id.clock+n)),t.write(e.encoder,n),e.written++},Li=e=>{Ii(e);let t=e.encoder.restEncoder;_(t,e.clientStructs.length);for(let n=0;n<e.clientStructs.length;n++){let r=e.clientStructs[n];_(t,r.written),Me(t,r.restEncoder)}},Ri=(e,t,n,r)=>{let i=new n(Ye(e)),a=new Ai(i,!1),o=new r,s=new ji(o);for(let e=a.curr;e!==null;e=a.next())U(s,t(e),0);return Li(s),I(o,kr(i)),o.toUint8Array()},zi=e=>Ri(e,At,Ir,Rr),Bi=`You must not compute changes after the event-handler fired.`,Vi=class{constructor(e,t){this.target=e,this.currentTarget=e,this.transaction=t,this._changes=null,this._keys=null,this._delta=null,this._path=null}get path(){return this._path||=Hi(this.currentTarget,this.target)}deletes(e){return Cr(this.transaction.deleteSet,e.id)}get keys(){if(this._keys===null){if(this.transaction.doc._transactionCleanups.length===0)throw y(Bi);let e=new Map,t=this.target;this.transaction.changed.get(t).forEach(n=>{if(n!==null){let r=t._map.get(n),i,a;if(this.adds(r)){let e=r.left;for(;e!==null&&this.adds(e);)e=e.left;if(this.deletes(r))if(e!==null&&this.deletes(e))i=`delete`,a=d(e.content.getContent());else return;else e!==null&&this.deletes(e)?(i=`update`,a=d(e.content.getContent())):(i=`add`,a=void 0)}else if(this.deletes(r))i=`delete`,a=d(r.content.getContent());else return;e.set(n,{action:i,oldValue:a})}}),this._keys=e}return this._keys}get delta(){return this.changes.delta}adds(e){return e.id.clock>=(this.transaction.beforeState.get(e.id.client)||0)}get changes(){let e=this._changes;if(e===null){if(this.transaction.doc._transactionCleanups.length===0)throw y(Bi);let t=this.target,n=u(),r=u(),i=[];if(e={added:n,deleted:r,delta:i,keys:this.keys},this.transaction.changed.get(t).has(null)){let e=null,a=()=>{e&&i.push(e)};for(let i=t._start;i!==null;i=i.right)i.deleted?this.deletes(i)&&!this.adds(i)&&((e===null||e.delete===void 0)&&(a(),e={delete:0}),e.delete+=i.length,r.add(i)):this.adds(i)?((e===null||e.insert===void 0)&&(a(),e={insert:[]}),e.insert=e.insert.concat(i.content.getContent()),n.add(i)):((e===null||e.retain===void 0)&&(a(),e={retain:0}),e.retain+=i.length);e!==null&&e.retain===void 0&&a()}this._changes=e}return e}},Hi=(e,t)=>{let n=[];for(;t._item!==null&&t!==e;){if(t._item.parentSub!==null)n.unshift(t._item.parentSub);else{let e=0,r=t._item.parent._start;for(;r!==t._item&&r!==null;)!r.deleted&&r.countable&&(e+=r.length),r=r.right;n.unshift(e)}t=t._item.parent}return n},W=()=>{mr(`Invalid access: Add Yjs type to a document before reading data.`)},Ui=80,Wi=0,Gi=class{constructor(e,t){e.marker=!0,this.p=e,this.index=t,this.timestamp=Wi++}},Ki=e=>{e.timestamp=Wi++},qi=(e,t,n)=>{e.p.marker=!1,e.p=t,t.marker=!0,e.index=n,e.timestamp=Wi++},Ji=(e,t,n)=>{if(e.length>=Ui){let r=e.reduce((e,t)=>e.timestamp<t.timestamp?e:t);return qi(r,t,n),r}else{let r=new Gi(t,n);return e.push(r),r}},Yi=(e,t)=>{if(e._start===null||t===0||e._searchMarker===null)return null;let n=e._searchMarker.length===0?null:e._searchMarker.reduce((e,n)=>oe(t-e.index)<oe(t-n.index)?e:n),r=e._start,i=0;for(n!==null&&(r=n.p,i=n.index,Ki(n));r.right!==null&&i<t;){if(!r.deleted&&r.countable){if(t<i+r.length)break;i+=r.length}r=r.right}for(;r.left!==null&&i>t;)r=r.left,!r.deleted&&r.countable&&(i-=r.length);for(;r.left!==null&&r.left.id.client===r.id.client&&r.left.id.clock+r.left.length===r.id.clock;)r=r.left,!r.deleted&&r.countable&&(i-=r.length);return n!==null&&oe(n.index-i)<r.parent.length/Ui?(qi(n,r,i),n):Ji(e._searchMarker,r,i)},Xi=(e,t,n)=>{for(let r=e.length-1;r>=0;r--){let i=e[r];if(n>0){let t=i.p;for(t.marker=!1;t&&(t.deleted||!t.countable);)t=t.left,t&&!t.deleted&&t.countable&&(i.index-=t.length);if(t===null||t.marker===!0){e.splice(r,1);continue}i.p=t,t.marker=!0}(t<i.index||n>0&&t===i.index)&&(i.index=m(t,i.index+n))}},Zi=(e,t,n)=>{let r=e,i=t.changedParentTypes;for(;s(i,e,()=>[]).push(n),e._item!==null;)e=e._item.parent;si(r._eH,n,t)},G=class{constructor(){this._item=null,this._map=new Map,this._start=null,this.doc=null,this._length=0,this._eH=ii(),this._dEH=ii(),this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(e,t){this.doc=e,this._item=t}_copy(){throw b()}clone(){throw b()}_write(e){}get _first(){let e=this._start;for(;e!==null&&e.deleted;)e=e.right;return e}_callObserver(e,t){!e.local&&this._searchMarker&&(this._searchMarker.length=0)}observe(e){ai(this._eH,e)}observeDeep(e){ai(this._dEH,e)}unobserve(e){oi(this._eH,e)}unobserveDeep(e){oi(this._dEH,e)}toJSON(){}},Qi=(e,t,n)=>{e.doc??W(),t<0&&(t=e._length+t),n<0&&(n=e._length+n);let r=n-t,i=[],a=e._start;for(;a!==null&&r>0;){if(a.countable&&!a.deleted){let e=a.content.getContent();if(e.length<=t)t-=e.length;else{for(let n=t;n<e.length&&r>0;n++)i.push(e[n]),r--;t=0}}a=a.right}return i},$i=e=>{e.doc??W();let t=[],n=e._start;for(;n!==null;){if(n.countable&&!n.deleted){let e=n.content.getContent();for(let n=0;n<e.length;n++)t.push(e[n])}n=n.right}return t},ea=(e,t)=>{let n=0,r=e._start;for(e.doc??W();r!==null;){if(r.countable&&!r.deleted){let i=r.content.getContent();for(let r=0;r<i.length;r++)t(i[r],n++,e)}r=r.right}},ta=(e,t)=>{let n=[];return ea(e,(r,i)=>{n.push(t(r,i,e))}),n},na=e=>{let t=e._start,n=null,r=0;return{[Symbol.iterator](){return this},next:()=>{if(n===null){for(;t!==null&&t.deleted;)t=t.right;if(t===null)return{done:!0,value:void 0};n=t.content.getContent(),r=0,t=t.right}let e=n[r++];return n.length<=r&&(n=null),{done:!1,value:e}}}},ra=(e,t)=>{e.doc??W();let n=Yi(e,t),r=e._start;for(n!==null&&(r=n.p,t-=n.index);r!==null;r=r.right)if(!r.deleted&&r.countable){if(t<r.length)return r.content.getContent()[t];t-=r.length}},ia=(e,t,n,r)=>{let i=n,a=e.doc,o=a.clientID,s=a.store,c=n===null?t._start:n.right,l=[],u=()=>{l.length>0&&(i=new Z(R(o,z(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new uo(l)),i.integrate(e,0),l=[])};r.forEach(n=>{if(n===null)l.push(n);else switch(n.constructor){case Number:case Object:case Boolean:case Array:case String:l.push(n);break;default:switch(u(),n.constructor){case Uint8Array:case ArrayBuffer:i=new Z(R(o,z(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Za(new Uint8Array(n))),i.integrate(e,0);break;case Mr:i=new Z(R(o,z(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new no(n)),i.integrate(e,0);break;default:if(n instanceof G)i=new Z(R(o,z(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new X(n)),i.integrate(e,0);else throw Error(`Unexpected content type in insert operation`)}}}),u()},aa=()=>y(`Length exceeded!`),oa=(e,t,n,r)=>{if(n>t._length)throw aa();if(n===0)return t._searchMarker&&Xi(t._searchMarker,n,r.length),ia(e,t,null,r);let i=n,a=Yi(t,n),o=t._start;for(a!==null&&(o=a.p,n-=a.index,n===0&&(o=o.prev,n+=o&&o.countable&&!o.deleted?o.length:0));o!==null;o=o.right)if(!o.deleted&&o.countable){if(n<=o.length){n<o.length&&V(e,R(o.id.client,o.id.clock+n));break}n-=o.length}return t._searchMarker&&Xi(t._searchMarker,i,r.length),ia(e,t,o,r)},sa=(e,t,n)=>{let r=(t._searchMarker||[]).reduce((e,t)=>t.index>e.index?t:e,{index:0,p:t._start}).p;if(r)for(;r.right;)r=r.right;return ia(e,t,r,n)},ca=(e,t,n,r)=>{if(r===0)return;let i=n,a=r,o=Yi(t,n),s=t._start;for(o!==null&&(s=o.p,n-=o.index);s!==null&&n>0;s=s.right)!s.deleted&&s.countable&&(n<s.length&&V(e,R(s.id.client,s.id.clock+n)),n-=s.length);for(;r>0&&s!==null;)s.deleted||(r<s.length&&V(e,R(s.id.client,s.id.clock+r)),s.delete(e),r-=s.length),s=s.right;if(r>0)throw aa();t._searchMarker&&Xi(t._searchMarker,i,-a+r)},la=(e,t,n)=>{let r=t._map.get(n);r!==void 0&&r.delete(e)},ua=(e,t,n,r)=>{let i=t._map.get(n)||null,a=e.doc,o=a.clientID,s;if(r==null)s=new uo([r]);else switch(r.constructor){case Number:case Object:case Boolean:case Array:case String:case Date:case BigInt:s=new uo([r]);break;case Uint8Array:s=new Za(r);break;case Mr:s=new no(r);break;default:if(r instanceof G)s=new X(r);else throw Error(`Unexpected content type`)}new Z(R(o,z(a.store,o)),i,i&&i.lastId,null,null,t,n,s).integrate(e,0)},da=(e,t)=>{e.doc??W();let n=e._map.get(t);return n!==void 0&&!n.deleted?n.content.getContent()[n.length-1]:void 0},fa=e=>{let t={};return e.doc??W(),e._map.forEach((e,n)=>{e.deleted||(t[n]=e.content.getContent()[e.length-1])}),t},pa=(e,t)=>{e.doc??W();let n=e._map.get(t);return n!==void 0&&!n.deleted},ma=(e,t)=>{let n={};return e._map.forEach((e,r)=>{let i=e;for(;i!==null&&(!t.sv.has(i.id.client)||i.id.clock>=(t.sv.get(i.id.client)||0));)i=i.left;i!==null&&fi(i,t)&&(n[r]=i.content.getContent()[i.length-1])}),n},ha=e=>(e.doc??W(),_r(e._map.entries(),e=>!e[1].deleted)),ga=class extends Vi{},_a=class e extends G{constructor(){super(),this._prelimContent=[],this._searchMarker=[]}static from(t){let n=new e;return n.push(t),n}_integrate(e,t){super._integrate(e,t),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new e}clone(){let t=new e;return t.insert(0,this.toArray().map(e=>e instanceof G?e.clone():e)),t}get length(){return this.doc??W(),this._length}_callObserver(e,t){super._callObserver(e,t),Zi(this,e,new ga(this,e))}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):H(this.doc,n=>{oa(n,this,e,t)})}push(e){this.doc===null?this._prelimContent.push(...e):H(this.doc,t=>{sa(t,this,e)})}unshift(e){this.insert(0,e)}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):H(this.doc,n=>{ca(n,this,e,t)})}get(e){return ra(this,e)}toArray(){return $i(this)}slice(e=0,t=this.length){return Qi(this,e,t)}toJSON(){return this.map(e=>e instanceof G?e.toJSON():e)}map(e){return ta(this,e)}forEach(e){ea(this,e)}[Symbol.iterator](){return na(this)}_write(e){e.writeTypeRef(ho)}},va=e=>new _a,ya=class extends Vi{constructor(e,t,n){super(e,t),this.keysChanged=n}},ba=class e extends G{constructor(e){super(),this._prelimContent=null,e===void 0?this._prelimContent=new Map:this._prelimContent=new Map(e)}_integrate(e,t){super._integrate(e,t),this._prelimContent.forEach((e,t)=>{this.set(t,e)}),this._prelimContent=null}_copy(){return new e}clone(){let t=new e;return this.forEach((e,n)=>{t.set(n,e instanceof G?e.clone():e)}),t}_callObserver(e,t){Zi(this,e,new ya(this,e,t))}toJSON(){this.doc??W();let e={};return this._map.forEach((t,n)=>{if(!t.deleted){let r=t.content.getContent()[t.length-1];e[n]=r instanceof G?r.toJSON():r}}),e}get size(){return[...ha(this)].length}keys(){return vr(ha(this),e=>e[0])}values(){return vr(ha(this),e=>e[1].content.getContent()[e[1].length-1])}entries(){return vr(ha(this),e=>[e[0],e[1].content.getContent()[e[1].length-1]])}forEach(e){this.doc??W(),this._map.forEach((t,n)=>{t.deleted||e(t.content.getContent()[t.length-1],n,this)})}[Symbol.iterator](){return this.entries()}delete(e){this.doc===null?this._prelimContent.delete(e):H(this.doc,t=>{la(t,this,e)})}set(e,t){return this.doc===null?this._prelimContent.set(e,t):H(this.doc,n=>{ua(n,this,e,t)}),t}get(e){return da(this,e)}has(e){return pa(this,e)}clear(){this.doc===null?this._prelimContent.clear():H(this.doc,e=>{this.forEach(function(t,n,r){la(e,r,n)})})}_write(e){e.writeTypeRef(go)}},xa=e=>new ba,K=(e,t)=>e===t||typeof e==`object`&&typeof t==`object`&&e&&t&&Et(e,t),Sa=class{constructor(e,t,n,r){this.left=e,this.right=t,this.index=n,this.currentAttributes=r}forward(){switch(this.right===null&&x(),this.right.content.constructor){case J:this.right.deleted||Ea(this.currentAttributes,this.right.content);break;default:this.right.deleted||(this.index+=this.right.length);break}this.left=this.right,this.right=this.right.right}},Ca=(e,t,n)=>{for(;t.right!==null&&n>0;){switch(t.right.content.constructor){case J:t.right.deleted||Ea(t.currentAttributes,t.right.content);break;default:t.right.deleted||(n<t.right.length&&V(e,R(t.right.id.client,t.right.id.clock+n)),t.index+=t.right.length,n-=t.right.length);break}t.left=t.right,t.right=t.right.right}return t},wa=(e,t,n,r)=>{let i=new Map,a=r?Yi(t,n):null;return a?Ca(e,new Sa(a.p.left,a.p,a.index,i),n-a.index):Ca(e,new Sa(null,t._start,0,i),n)},Ta=(e,t,n,r)=>{for(;n.right!==null&&(n.right.deleted===!0||n.right.content.constructor===J&&K(r.get(n.right.content.key),n.right.content.value));)n.right.deleted||r.delete(n.right.content.key),n.forward();let i=e.doc,a=i.clientID;r.forEach((r,o)=>{let s=n.left,c=n.right,l=new Z(R(a,z(i.store,a)),s,s&&s.lastId,c,c&&c.id,t,null,new J(o,r));l.integrate(e,0),n.right=l,n.forward()})},Ea=(e,t)=>{let{key:n,value:r}=t;r===null?e.delete(n):e.set(n,r)},Da=(e,t)=>{for(;e.right!==null&&(e.right.deleted||e.right.content.constructor===J&&K(t[e.right.content.key]??null,e.right.content.value));)e.forward()},Oa=(e,t,n,r)=>{let i=e.doc,a=i.clientID,o=new Map;for(let s in r){let c=r[s],l=n.currentAttributes.get(s)??null;if(!K(l,c)){o.set(s,l);let{left:r,right:u}=n;n.right=new Z(R(a,z(i.store,a)),r,r&&r.lastId,u,u&&u.id,t,null,new J(s,c)),n.right.integrate(e,0),n.forward()}}return o},ka=(e,t,n,r,i)=>{n.currentAttributes.forEach((e,t)=>{i[t]===void 0&&(i[t]=null)});let a=e.doc,o=a.clientID;Da(n,i);let s=Oa(e,t,n,i),c=r.constructor===String?new Y(r):r instanceof G?new X(r):new io(r),{left:l,right:u,index:d}=n;t._searchMarker&&Xi(t._searchMarker,n.index,c.getLength()),u=new Z(R(o,z(a.store,o)),l,l&&l.lastId,u,u&&u.id,t,null,c),u.integrate(e,0),n.right=u,n.index=d,n.forward(),Ta(e,t,n,s)},Aa=(e,t,n,r,i)=>{let a=e.doc,o=a.clientID;Da(n,i);let s=Oa(e,t,n,i);iterationLoop:for(;n.right!==null&&(r>0||s.size>0&&(n.right.deleted||n.right.content.constructor===J));){if(!n.right.deleted)switch(n.right.content.constructor){case J:{let{key:t,value:a}=n.right.content,o=i[t];if(o!==void 0){if(K(o,a))s.delete(t);else{if(r===0)break iterationLoop;s.set(t,a)}n.right.delete(e)}else n.currentAttributes.set(t,a);break}default:r<n.right.length&&V(e,R(n.right.id.client,n.right.id.clock+r)),r-=n.right.length;break}n.forward()}if(r>0){let i=``;for(;r>0;r--)i+=`
|
|
3
3
|
`;n.right=new Z(R(o,z(a.store,o)),n.left,n.left&&n.left.lastId,n.right,n.right&&n.right.id,t,null,new Y(i)),n.right.integrate(e,0),n.forward()}Ta(e,t,n,s)},ja=(e,t,n,r,i)=>{let o=t,s=a();for(;o&&(!o.countable||o.deleted);){if(!o.deleted&&o.content.constructor===J){let e=o.content;s.set(e.key,e)}o=o.right}let c=0,l=!1;for(;t!==o;){if(n===t&&(l=!0),!t.deleted){let n=t.content;switch(n.constructor){case J:{let{key:a,value:o}=n,u=r.get(a)??null;(s.get(a)!==n||u===o)&&(t.delete(e),c++,!l&&(i.get(a)??null)===o&&u!==o&&(u===null?i.delete(a):i.set(a,u))),!l&&!t.deleted&&Ea(i,n);break}}}t=t.right}return c},Ma=(e,t)=>{for(;t&&t.right&&(t.right.deleted||!t.right.countable);)t=t.right;let n=new Set;for(;t&&(t.deleted||!t.countable);){if(!t.deleted&&t.content.constructor===J){let r=t.content.key;n.has(r)?t.delete(e):n.add(r)}t=t.left}},Na=e=>{let t=0;return H(e.doc,n=>{let r=e._start,i=e._start,s=a(),c=o(s);for(;i;){if(i.deleted===!1)switch(i.content.constructor){case J:Ea(c,i.content);break;default:t+=ja(n,r,i,s,c),s=o(c),r=i;break}i=i.right}}),t},Pa=e=>{let t=new Set,n=e.doc;for(let[r,i]of e.afterState.entries()){let a=e.beforeState.get(r)||0;i!==a&&xi(e,n.store.clients.get(r),a,i,e=>{!e.deleted&&e.content.constructor===J&&e.constructor!==q&&t.add(e.parent)})}H(n,n=>{xr(e,e.deleteSet,e=>{if(e instanceof q||!e.parent._hasFormatting||t.has(e.parent))return;let r=e.parent;e.content.constructor===J?t.add(r):Ma(n,e)});for(let e of t)Na(e)})},Fa=(e,t,n)=>{let r=n,i=o(t.currentAttributes),a=t.right;for(;n>0&&t.right!==null;){if(t.right.deleted===!1)switch(t.right.content.constructor){case X:case io:case Y:n<t.right.length&&V(e,R(t.right.id.client,t.right.id.clock+n)),n-=t.right.length,t.right.delete(e);break}t.forward()}a&&ja(e,a,t.right,i,t.currentAttributes);let s=(t.left||t.right).parent;return s._searchMarker&&Xi(s._searchMarker,t.index,-r+n),t},Ia=class extends Vi{constructor(e,t,n){super(e,t),this.childListChanged=!1,this.keysChanged=new Set,n.forEach(e=>{e===null?this.childListChanged=!0:this.keysChanged.add(e)})}get changes(){if(this._changes===null){let e={keys:this.keys,delta:this.delta,added:new Set,deleted:new Set};this._changes=e}return this._changes}get delta(){if(this._delta===null){let e=this.target.doc,t=[];H(e,e=>{let n=new Map,r=new Map,i=this.target._start,a=null,o={},s=``,c=0,l=0,u=()=>{if(a!==null){let e=null;switch(a){case`delete`:l>0&&(e={delete:l}),l=0;break;case`insert`:(typeof s==`object`||s.length>0)&&(e={insert:s},n.size>0&&(e.attributes={},n.forEach((t,n)=>{t!==null&&(e.attributes[n]=t)}))),s=``;break;case`retain`:c>0&&(e={retain:c},Ct(o)||(e.attributes=yt({},o))),c=0;break}e&&t.push(e),a=null}};for(;i!==null;){switch(i.content.constructor){case X:case io:this.adds(i)?this.deletes(i)||(u(),a=`insert`,s=i.content.getContent()[0],u()):this.deletes(i)?(a!==`delete`&&(u(),a=`delete`),l+=1):i.deleted||(a!==`retain`&&(u(),a=`retain`),c+=1);break;case Y:this.adds(i)?this.deletes(i)||(a!==`insert`&&(u(),a=`insert`),s+=i.content.str):this.deletes(i)?(a!==`delete`&&(u(),a=`delete`),l+=i.length):i.deleted||(a!==`retain`&&(u(),a=`retain`),c+=i.length);break;case J:{let{key:t,value:s}=i.content;if(this.adds(i))this.deletes(i)||(K(n.get(t)??null,s)?s!==null&&i.delete(e):(a===`retain`&&u(),K(s,r.get(t)??null)?delete o[t]:o[t]=s));else if(this.deletes(i)){r.set(t,s);let e=n.get(t)??null;K(e,s)||(a===`retain`&&u(),o[t]=e)}else if(!i.deleted){r.set(t,s);let n=o[t];n!==void 0&&(K(n,s)?n!==null&&i.delete(e):(a===`retain`&&u(),s===null?delete o[t]:o[t]=s))}i.deleted||(a===`insert`&&u(),Ea(n,i.content));break}}i=i.right}for(u();t.length>0;){let e=t[t.length-1];if(e.retain!==void 0&&e.attributes===void 0)t.pop();else break}}),this._delta=t}return this._delta}},La=class e extends G{constructor(e){super(),this._pending=e===void 0?[]:[()=>this.insert(0,e)],this._searchMarker=[],this._hasFormatting=!1}get length(){return this.doc??W(),this._length}_integrate(e,t){super._integrate(e,t);try{this._pending.forEach(e=>e())}catch(e){console.error(e)}this._pending=null}_copy(){return new e}clone(){let t=new e;return t.applyDelta(this.toDelta()),t}_callObserver(e,t){super._callObserver(e,t);let n=new Ia(this,e,t);Zi(this,e,n),!e.local&&this._hasFormatting&&(e._needFormattingCleanup=!0)}toString(){this.doc??W();let e=``,t=this._start;for(;t!==null;)!t.deleted&&t.countable&&t.content.constructor===Y&&(e+=t.content.str),t=t.right;return e}toJSON(){return this.toString()}applyDelta(e,{sanitize:t=!0}={}){this.doc===null?this._pending.push(()=>this.applyDelta(e)):H(this.doc,n=>{let r=new Sa(null,this._start,0,new Map);for(let i=0;i<e.length;i++){let a=e[i];if(a.insert!==void 0){let o=!t&&typeof a.insert==`string`&&i===e.length-1&&r.right===null&&a.insert.slice(-1)===`
|
|
4
4
|
`?a.insert.slice(0,-1):a.insert;(typeof o!=`string`||o.length>0)&&ka(n,this,r,o,a.attributes||{})}else a.retain===void 0?a.delete!==void 0&&Fa(n,r,a.delete):Aa(n,this,r,a.retain,a.attributes||{})}})}toDelta(e,t,n){this.doc??W();let r=[],i=new Map,a=this.doc,o=``,s=this._start;function c(){if(o.length>0){let e={},t=!1;i.forEach((n,r)=>{t=!0,e[r]=n});let n={insert:o};t&&(n.attributes=e),r.push(n),o=``}}let l=()=>{for(;s!==null;){if(fi(s,e)||t!==void 0&&fi(s,t))switch(s.content.constructor){case Y:{let r=i.get(`ychange`);e!==void 0&&!fi(s,e)?(r===void 0||r.user!==s.id.client||r.type!==`removed`)&&(c(),i.set(`ychange`,n?n(`removed`,s.id):{type:`removed`})):t!==void 0&&!fi(s,t)?(r===void 0||r.user!==s.id.client||r.type!==`added`)&&(c(),i.set(`ychange`,n?n(`added`,s.id):{type:`added`})):r!==void 0&&(c(),i.delete(`ychange`)),o+=s.content.str;break}case X:case io:{c();let e={insert:s.content.getContent()[0]};if(i.size>0){let t={};e.attributes=t,i.forEach((e,n)=>{t[n]=e})}r.push(e);break}case J:fi(s,e)&&(c(),Ea(i,s.content));break}s=s.right}c()};return e||t?H(a,n=>{e&&pi(n,e),t&&pi(n,t),l()},`cleanup`):l(),r}insert(e,t,n){if(t.length<=0)return;let r=this.doc;r===null?this._pending.push(()=>this.insert(e,t,n)):H(r,r=>{let i=wa(r,this,e,!n);n||(n={},i.currentAttributes.forEach((e,t)=>{n[t]=e})),ka(r,this,i,t,n)})}insertEmbed(e,t,n){let r=this.doc;r===null?this._pending.push(()=>this.insertEmbed(e,t,n||{})):H(r,r=>{let i=wa(r,this,e,!n);ka(r,this,i,t,n||{})})}delete(e,t){if(t===0)return;let n=this.doc;n===null?this._pending.push(()=>this.delete(e,t)):H(n,n=>{Fa(n,wa(n,this,e,!0),t)})}format(e,t,n){if(t===0)return;let r=this.doc;r===null?this._pending.push(()=>this.format(e,t,n)):H(r,r=>{let i=wa(r,this,e,!1);i.right!==null&&Aa(r,this,i,t,n)})}removeAttribute(e){this.doc===null?this._pending.push(()=>this.removeAttribute(e)):H(this.doc,t=>{la(t,this,e)})}setAttribute(e,t){this.doc===null?this._pending.push(()=>this.setAttribute(e,t)):H(this.doc,n=>{ua(n,this,e,t)})}getAttribute(e){return da(this,e)}getAttributes(){return fa(this)}_write(e){e.writeTypeRef(_o)}},Ra=e=>new La,za=class{constructor(e,t=()=>!0){this._filter=t,this._root=e,this._currentNode=e._start,this._firstCall=!0,e.doc??W()}[Symbol.iterator](){return this}next(){let e=this._currentNode,t=e&&e.content&&e.content.type;if(e!==null&&(!this._firstCall||e.deleted||!this._filter(t)))do if(t=e.content.type,!e.deleted&&(t.constructor===Ha||t.constructor===Ba)&&t._start!==null)e=t._start;else for(;e!==null;){let t=e.next;if(t!==null){e=t;break}else e=e.parent===this._root?null:e.parent._item}while(e!==null&&(e.deleted||!this._filter(e.content.type)));return this._firstCall=!1,e===null?{value:void 0,done:!0}:(this._currentNode=e,{value:e.content.type,done:!1})}},Ba=class e extends G{constructor(){super(),this._prelimContent=[]}get firstChild(){let e=this._first;return e?e.content.getContent()[0]:null}_integrate(e,t){super._integrate(e,t),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new e}clone(){let t=new e;return t.insert(0,this.toArray().map(e=>e instanceof G?e.clone():e)),t}get length(){return this.doc??W(),this._prelimContent===null?this._length:this._prelimContent.length}createTreeWalker(e){return new za(this,e)}querySelector(e){e=e.toUpperCase();let t=new za(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e).next();return t.done?null:t.value}querySelectorAll(e){return e=e.toUpperCase(),f(new za(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e))}_callObserver(e,t){Zi(this,e,new Wa(this,t,e))}toString(){return ta(this,e=>e.toString()).join(``)}toJSON(){return this.toString()}toDOM(e=document,t={},n){let r=e.createDocumentFragment();return n!==void 0&&n._createAssociation(r,this),ea(this,i=>{r.insertBefore(i.toDOM(e,t,n),null)}),r}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):H(this.doc,n=>{oa(n,this,e,t)})}insertAfter(e,t){if(this.doc!==null)H(this.doc,n=>{let r=e&&e instanceof G?e._item:e;ia(n,this,r,t)});else{let n=this._prelimContent,r=e===null?0:n.findIndex(t=>t===e)+1;if(r===0&&e!==null)throw y(`Reference item not found`);n.splice(r,0,...t)}}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):H(this.doc,n=>{ca(n,this,e,t)})}toArray(){return $i(this)}push(e){this.insert(this.length,e)}unshift(e){this.insert(0,e)}get(e){return ra(this,e)}slice(e=0,t=this.length){return Qi(this,e,t)}forEach(e){ea(this,e)}_write(e){e.writeTypeRef(yo)}},Va=e=>new Ba,Ha=class e extends Ba{constructor(e=`UNDEFINED`){super(),this.nodeName=e,this._prelimAttrs=new Map}get nextSibling(){let e=this._item?this._item.next:null;return e?e.content.type:null}get prevSibling(){let e=this._item?this._item.prev:null;return e?e.content.type:null}_integrate(e,t){super._integrate(e,t),this._prelimAttrs.forEach((e,t)=>{this.setAttribute(t,e)}),this._prelimAttrs=null}_copy(){return new e(this.nodeName)}clone(){let t=new e(this.nodeName);return xt(this.getAttributes(),(e,n)=>{t.setAttribute(n,e)}),t.insert(0,this.toArray().map(e=>e instanceof G?e.clone():e)),t}toString(){let e=this.getAttributes(),t=[],n=[];for(let t in e)n.push(t);n.sort();let r=n.length;for(let i=0;i<r;i++){let r=n[i];t.push(r+`="`+e[r]+`"`)}let i=this.nodeName.toLocaleLowerCase();return`<${i}${t.length>0?` `+t.join(` `):``}>${super.toString()}</${i}>`}removeAttribute(e){this.doc===null?this._prelimAttrs.delete(e):H(this.doc,t=>{la(t,this,e)})}setAttribute(e,t){this.doc===null?this._prelimAttrs.set(e,t):H(this.doc,n=>{ua(n,this,e,t)})}getAttribute(e){return da(this,e)}hasAttribute(e){return pa(this,e)}getAttributes(e){return e?ma(this,e):fa(this)}toDOM(e=document,t={},n){let r=e.createElement(this.nodeName),i=this.getAttributes();for(let e in i){let t=i[e];typeof t==`string`&&r.setAttribute(e,t)}return ea(this,i=>{r.appendChild(i.toDOM(e,t,n))}),n!==void 0&&n._createAssociation(r,this),r}_write(e){e.writeTypeRef(vo),e.writeKey(this.nodeName)}},Ua=e=>new Ha(e.readKey()),Wa=class extends Vi{constructor(e,t,n){super(e,n),this.childListChanged=!1,this.attributesChanged=new Set,t.forEach(e=>{e===null?this.childListChanged=!0:this.attributesChanged.add(e)})}},Ga=class e extends ba{constructor(e){super(),this.hookName=e}_copy(){return new e(this.hookName)}clone(){let t=new e(this.hookName);return this.forEach((e,n)=>{t.set(n,e)}),t}toDOM(e=document,t={},n){let r=t[this.hookName],i;return i=r===void 0?document.createElement(this.hookName):r.createDom(this),i.setAttribute(`data-yjs-hook`,this.hookName),n!==void 0&&n._createAssociation(i,this),i}_write(e){e.writeTypeRef(bo),e.writeKey(this.hookName)}},Ka=e=>new Ga(e.readKey()),qa=class e extends La{get nextSibling(){let e=this._item?this._item.next:null;return e?e.content.type:null}get prevSibling(){let e=this._item?this._item.prev:null;return e?e.content.type:null}_copy(){return new e}clone(){let t=new e;return t.applyDelta(this.toDelta()),t}toDOM(e=document,t,n){let r=e.createTextNode(this.toString());return n!==void 0&&n._createAssociation(r,this),r}toString(){return this.toDelta().map(e=>{let t=[];for(let n in e.attributes){let r=[];for(let t in e.attributes[n])r.push({key:t,value:e.attributes[n][t]});r.sort((e,t)=>e.key<t.key?-1:1),t.push({nodeName:n,attrs:r})}t.sort((e,t)=>e.nodeName<t.nodeName?-1:1);let n=``;for(let e=0;e<t.length;e++){let r=t[e];n+=`<${r.nodeName}`;for(let e=0;e<r.attrs.length;e++){let t=r.attrs[e];n+=` ${t.key}="${t.value}"`}n+=`>`}n+=e.insert;for(let e=t.length-1;e>=0;e--)n+=`</${t[e].nodeName}>`;return n}).join(``)}toJSON(){return this.toString()}_write(e){e.writeTypeRef(xo)}},Ja=e=>new qa,Ya=class{constructor(e,t){this.id=e,this.length=t}get deleted(){throw b()}mergeWith(e){return!1}write(e,t,n){throw b()}integrate(e,t){throw b()}},Xa=0,q=class extends Ya{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor?(this.length+=e.length,!0):!1}integrate(e,t){t>0&&(this.id.clock+=t,this.length-=t),gi(e.doc.store,this)}write(e,t){e.writeInfo(Xa),e.writeLen(this.length-t)}getMissing(e,t){return null}},Za=class e{constructor(e){this.content=e}getLength(){return 1}getContent(){return[this.content]}isCountable(){return!0}copy(){return new e(this.content)}splice(e){throw b()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeBuf(this.content)}getRef(){return 3}},Qa=e=>new Za(e.readBuf()),$a=class e{constructor(e){this.len=e}getLength(){return this.len}getContent(){return[]}isCountable(){return!1}copy(){return new e(this.len)}splice(t){let n=new e(this.len-t);return this.len=t,n}mergeWith(e){return this.len+=e.len,!0}integrate(e,t){Er(e.deleteSet,t.id.client,t.id.clock,this.len),t.markDeleted()}delete(e){}gc(e){}write(e,t){e.writeLen(this.len-t)}getRef(){return 1}},eo=e=>new $a(e.readLen()),to=(e,t)=>new Mr({guid:e,...t,shouldLoad:t.shouldLoad||t.autoLoad||!1}),no=class e{constructor(e){e._item&&console.error(`This document was already integrated as a sub-document. You should create a second instance instead with the same guid.`),this.doc=e;let t={};this.opts=t,e.gc||(t.gc=!1),e.autoLoad&&(t.autoLoad=!0),e.meta!==null&&(t.meta=e.meta)}getLength(){return 1}getContent(){return[this.doc]}isCountable(){return!0}copy(){return new e(to(this.doc.guid,this.opts))}splice(e){throw b()}mergeWith(e){return!1}integrate(e,t){this.doc._item=t,e.subdocsAdded.add(this.doc),this.doc.shouldLoad&&e.subdocsLoaded.add(this.doc)}delete(e){e.subdocsAdded.has(this.doc)?e.subdocsAdded.delete(this.doc):e.subdocsRemoved.add(this.doc)}gc(e){}write(e,t){e.writeString(this.doc.guid),e.writeAny(this.opts)}getRef(){return 9}},ro=e=>new no(to(e.readString(),e.readAny())),io=class e{constructor(e){this.embed=e}getLength(){return 1}getContent(){return[this.embed]}isCountable(){return!0}copy(){return new e(this.embed)}splice(e){throw b()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeJSON(this.embed)}getRef(){return 5}},ao=e=>new io(e.readJSON()),J=class e{constructor(e,t){this.key=e,this.value=t}getLength(){return 1}getContent(){return[]}isCountable(){return!1}copy(){return new e(this.key,this.value)}splice(e){throw b()}mergeWith(e){return!1}integrate(e,t){let n=t.parent;n._searchMarker=null,n._hasFormatting=!0}delete(e){}gc(e){}write(e,t){e.writeKey(this.key),e.writeJSON(this.value)}getRef(){return 6}},oo=e=>new J(e.readKey(),e.readJSON()),so=class e{constructor(e){this.arr=e}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new e(this.arr)}splice(t){let n=new e(this.arr.slice(t));return this.arr=this.arr.slice(0,t),n}mergeWith(e){return this.arr=this.arr.concat(e.arr),!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){let n=this.arr.length;e.writeLen(n-t);for(let r=t;r<n;r++){let t=this.arr[r];e.writeString(t===void 0?`undefined`:JSON.stringify(t))}}getRef(){return 2}},co=e=>{let t=e.readLen(),n=[];for(let r=0;r<t;r++){let t=e.readString();t===`undefined`?n.push(void 0):n.push(JSON.parse(t))}return new so(n)},lo=Lt(`node_env`)===`development`,uo=class e{constructor(e){this.arr=e,lo&&Ot(e)}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new e(this.arr)}splice(t){let n=new e(this.arr.slice(t));return this.arr=this.arr.slice(0,t),n}mergeWith(e){return this.arr=this.arr.concat(e.arr),!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){let n=this.arr.length;e.writeLen(n-t);for(let r=t;r<n;r++){let t=this.arr[r];e.writeAny(t)}}getRef(){return 8}},fo=e=>{let t=e.readLen(),n=[];for(let r=0;r<t;r++)n.push(e.readAny());return new uo(n)},Y=class e{constructor(e){this.str=e}getLength(){return this.str.length}getContent(){return this.str.split(``)}isCountable(){return!0}copy(){return new e(this.str)}splice(t){let n=new e(this.str.slice(t));this.str=this.str.slice(0,t);let r=this.str.charCodeAt(t-1);return r>=55296&&r<=56319&&(this.str=this.str.slice(0,t-1)+`�`,n.str=`�`+n.str.slice(1)),n}mergeWith(e){return this.str+=e.str,!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeString(t===0?this.str:this.str.slice(t))}getRef(){return 4}},po=e=>new Y(e.readString()),mo=[va,xa,Ra,Ua,Va,Ka,Ja],ho=0,go=1,_o=2,vo=3,yo=4,bo=5,xo=6,X=class e{constructor(e){this.type=e}getLength(){return 1}getContent(){return[this.type]}isCountable(){return!0}copy(){return new e(this.type._copy())}splice(e){throw b()}mergeWith(e){return!1}integrate(e,t){this.type._integrate(e.doc,t)}delete(e){let t=this.type._start;for(;t!==null;)t.deleted?t.id.clock<(e.beforeState.get(t.id.client)||0)&&e._mergeStructs.push(t):t.delete(e),t=t.right;this.type._map.forEach(t=>{t.deleted?t.id.clock<(e.beforeState.get(t.id.client)||0)&&e._mergeStructs.push(t):t.delete(e)}),e.changed.delete(this.type)}gc(e){let t=this.type._start;for(;t!==null;)t.gc(e,!0),t=t.right;this.type._start=null,this.type._map.forEach(t=>{for(;t!==null;)t.gc(e,!0),t=t.left}),this.type._map=new Map}write(e,t){this.type._write(e)}getRef(){return 7}},So=e=>new X(mo[e.readTypeRef()](e)),Co=(e,t,n)=>{let{client:r,clock:i}=t.id,a=new Z(R(r,i+n),t,R(r,i+n-1),t.right,t.rightOrigin,t.parent,t.parentSub,t.content.splice(n));return t.deleted&&a.markDeleted(),t.keep&&(a.keep=!0),t.redone!==null&&(a.redone=R(t.redone.client,t.redone.clock+n)),t.right=a,a.right!==null&&(a.right.left=a),e._mergeStructs.push(a),a.parentSub!==null&&a.right===null&&a.parent._map.set(a.parentSub,a),t.length=n,a},Z=class e extends Ya{constructor(e,t,n,r,i,a,o,s){super(e,s.getLength()),this.origin=n,this.left=t,this.right=r,this.rightOrigin=i,this.parent=a,this.parentSub=o,this.redone=null,this.content=s,this.info=this.content.isCountable()?2:0}set marker(e){(this.info&8)>0!==e&&(this.info^=8)}get marker(){return(this.info&8)>0}get keep(){return(this.info&1)>0}set keep(e){this.keep!==e&&(this.info^=1)}get countable(){return(this.info&2)>0}get deleted(){return(this.info&4)>0}set deleted(e){this.deleted!==e&&(this.info^=4)}markDeleted(){this.info|=4}getMissing(t,n){if(this.origin&&this.origin.client!==this.id.client&&this.origin.clock>=z(n,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=z(n,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===ci&&this.id.client!==this.parent.client&&this.parent.clock>=z(n,this.parent.client))return this.parent.client;if(this.origin&&=(this.left=yi(t,n,this.origin),this.left.lastId),this.rightOrigin&&=(this.right=V(t,this.rightOrigin),this.right.id),this.left&&this.left.constructor===q||this.right&&this.right.constructor===q)this.parent=null;else if(!this.parent)this.left&&this.left.constructor===e?(this.parent=this.left.parent,this.parentSub=this.left.parentSub):this.right&&this.right.constructor===e&&(this.parent=this.right.parent,this.parentSub=this.right.parentSub);else if(this.parent.constructor===ci){let e=_i(n,this.parent);e.constructor===q?this.parent=null:this.parent=e.content.type}return null}integrate(e,t){if(t>0&&(this.id.clock+=t,this.left=yi(e,e.doc.store,R(this.id.client,this.id.clock-1)),this.origin=this.left.lastId,this.content=this.content.splice(t),this.length-=t),this.parent){if(!this.left&&(!this.right||this.right.left!==null)||this.left&&this.left.right!==this.right){let t=this.left,n;if(t!==null)n=t.right;else if(this.parentSub!==null)for(n=this.parent._map.get(this.parentSub)||null;n!==null&&n.left!==null;)n=n.left;else n=this.parent._start;let r=new Set,i=new Set;for(;n!==null&&n!==this.right;){if(i.add(n),r.add(n),li(this.origin,n.origin)){if(n.id.client<this.id.client)t=n,r.clear();else if(li(this.rightOrigin,n.rightOrigin))break}else if(n.origin!==null&&i.has(_i(e.doc.store,n.origin)))r.has(_i(e.doc.store,n.origin))||(t=n,r.clear());else break;n=n.right}this.left=t}if(this.left!==null){let e=this.left.right;this.right=e,this.left.right=this}else{let e;if(this.parentSub!==null)for(e=this.parent._map.get(this.parentSub)||null;e!==null&&e.left!==null;)e=e.left;else e=this.parent._start,this.parent._start=this;this.right=e}this.right===null?this.parentSub!==null&&(this.parent._map.set(this.parentSub,this),this.left!==null&&this.left.delete(e)):this.right.left=this,this.parentSub===null&&this.countable&&!this.deleted&&(this.parent._length+=this.length),gi(e.doc.store,this),this.content.integrate(e,this),wi(e,this.parent,this.parentSub),(this.parent._item!==null&&this.parent._item.deleted||this.parentSub!==null&&this.right!==null)&&this.delete(e)}else new q(this.id,this.length).integrate(e,0)}get next(){let e=this.right;for(;e!==null&&e.deleted;)e=e.right;return e}get prev(){let e=this.left;for(;e!==null&&e.deleted;)e=e.left;return e}get lastId(){return this.length===1?this.id:R(this.id.client,this.id.clock+this.length-1)}mergeWith(e){if(this.constructor===e.constructor&&li(e.origin,this.lastId)&&this.right===e&&li(this.rightOrigin,e.rightOrigin)&&this.id.client===e.id.client&&this.id.clock+this.length===e.id.clock&&this.deleted===e.deleted&&this.redone===null&&e.redone===null&&this.content.constructor===e.content.constructor&&this.content.mergeWith(e.content)){let t=this.parent._searchMarker;return t&&t.forEach(t=>{t.p===e&&(t.p=this,!this.deleted&&this.countable&&(t.index-=this.length))}),e.keep&&(this.keep=!0),this.right=e.right,this.right!==null&&(this.right.left=this),this.length+=e.length,!0}return!1}delete(e){if(!this.deleted){let t=this.parent;this.countable&&this.parentSub===null&&(t._length-=this.length),this.markDeleted(),Er(e.deleteSet,this.id.client,this.id.clock,this.length),wi(e,t,this.parentSub),this.content.delete(e)}}gc(e,t){if(!this.deleted)throw x();this.content.gc(e),t?bi(e,this,new q(this.id,this.length)):this.content=new $a(this.length)}write(e,t){let n=t>0?R(this.id.client,this.id.clock+t-1):this.origin,r=this.rightOrigin,i=this.parentSub,a=this.content.getRef()&31|(n===null?0:128)|(r===null?0:64)|(i===null?0:32);if(e.writeInfo(a),n!==null&&e.writeLeftID(n),r!==null&&e.writeRightID(r),n===null&&r===null){let t=this.parent;if(t._item!==void 0){let n=t._item;if(n===null){let n=ui(t);e.writeParentInfo(!0),e.writeString(n)}else e.writeParentInfo(!1),e.writeLeftID(n.id)}else t.constructor===String?(e.writeParentInfo(!0),e.writeString(t)):t.constructor===ci?(e.writeParentInfo(!1),e.writeLeftID(t)):x();i!==null&&e.writeString(i)}this.content.write(e,t)}},wo=(e,t)=>To[t&31](e),To=[()=>{x()},eo,co,Qa,po,ao,oo,So,fo,ro,()=>{x()}],Eo=10,Q=class extends Ya{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor?(this.length+=e.length,!0):!1}integrate(e,t){x()}write(e,t){e.writeInfo(Eo),_(e.restEncoder,this.length-t)}getMissing(e,t){return null}},Do=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{},Oo=`__ $YJS$ __`;Do[Oo]===!0&&console.error(`Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438`),Do[Oo]=!0;var ko=new TextEncoder,Ao=new TextDecoder,jo=(e,t)=>{let n=ko.encode(JSON.stringify(t)),r=new Uint8Array(1+n.length);return r[0]=e,r.set(n,1),r},Mo=e=>{if(e.kind===`sync_step1`){let t=new Uint8Array(1+e.stateVector.length);return t[0]=0,t.set(e.stateVector,1),t}if(e.kind===`sync_step2`){let t=new Uint8Array(1+e.update.length);return t[0]=1,t.set(e.update,1),t}if(e.kind===`update`){let t=new Uint8Array(1+e.update.length);return t[0]=2,t.set(e.update,1),t}return e.kind===`history_snapshot`?jo(3,e.view):e.kind===`history_append`?jo(4,{entry:e.entry,cursor:e.cursor}):e.kind===`history_jump`?jo(5,{entryId:e.entryId}):jo(6,{})},No=e=>{try{return JSON.parse(Ao.decode(e))}catch{return null}},Po=e=>{if(e.length<1)return null;let t=e[0],n=e.subarray(1);if(t===0)return{kind:`sync_step1`,stateVector:n};if(t===1)return{kind:`sync_step2`,update:n};if(t===2)return{kind:`update`,update:n};if(t===3){let e=No(n);return!e||!Array.isArray(e.entries)||typeof e.cursor!=`number`?null:{kind:`history_snapshot`,view:e}}if(t===4){let e=No(n);return!e||!e.entry||typeof e.cursor!=`number`?null:{kind:`history_append`,entry:e.entry,cursor:e.cursor}}if(t===5){let e=No(n);return!e||typeof e.entryId!=`string`?null:{kind:`history_jump`,entryId:e.entryId}}return t===6?{kind:`history_clear`}:null},Fo=()=>location.protocol===`https:`?`wss:`:`ws:`,Io=()=>`${Fo()}//${location.host}/sync`,Lo=1e3,Ro=8e3,zo=class{roomId;doc=new Mr;map=this.doc.getMap(i);ws=null;listeners=new Set;historyListeners=new Set;historyView={entries:[],cursor:-1};connected=!1;closed=!1;backoffMs=Lo;reconnectTimer=null;buffered=[];constructor(e){this.roomId=e,this.doc.on(`update`,(e,t)=>{let n=t===`remote`;n||this.send(Mo({kind:`update`,update:e}));let i=this.map.get(r),a=n?`remote`:`local`;for(let e of this.listeners)e(i??null,a)})}connect(){if(this.ws||this.closed)return;let n=t.author,r=e.token,i=new URLSearchParams({author:n});r.length>0&&i.set(`token`,r);let a=`${Io()}/${encodeURIComponent(this.roomId)}?${i.toString()}`,o=new WebSocket(a);o.binaryType=`arraybuffer`,this.ws=o,o.addEventListener(`open`,()=>{this.connected=!0,this.backoffMs=Lo;for(let e of this.buffered)o.send(e);this.buffered=[],o.send(Mo({kind:`sync_step1`,stateVector:ni(this.doc)}))}),o.addEventListener(`message`,e=>{let t=e.data instanceof ArrayBuffer?new Uint8Array(e.data):null;if(!t)return;let n=Po(t);if(n){if(n.kind===`sync_step1`){let e=Xr(this.doc,n.stateVector);o.send(Mo({kind:`sync_step2`,update:e}));return}if(n.kind===`sync_step2`||n.kind===`update`){qr(this.doc,n.update,`remote`);return}if(n.kind===`history_snapshot`){this.historyView=n.view,this.fanHistoryChange();return}if(n.kind===`history_append`){n.cursor<this.historyView.entries.length&&(this.historyView={entries:this.historyView.entries.slice(0,n.cursor),cursor:n.cursor}),this.historyView={entries:[...this.historyView.entries,n.entry],cursor:n.cursor},this.fanHistoryChange();return}}}),o.addEventListener(`close`,()=>{this.ws=null,this.connected=!1,!this.closed&&this.scheduleReconnect()}),o.addEventListener(`error`,()=>{})}scheduleReconnect(){if(this.reconnectTimer)return;let e=this.backoffMs;this.backoffMs=Math.min(this.backoffMs*2,Ro),this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=null,this.connect()},e)}send(e){if(this.connected&&this.ws&&this.ws.readyState===WebSocket.OPEN){this.ws.send(e);return}this.buffered.push(e)}get snapshot(){return this.map.get(`data`)??null}setSnapshot(e){this.doc.transact(()=>{this.map.set(r,e)})}observe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}get history(){return this.historyView}historyEntry(e){return this.historyView.entries.find(t=>t.id===e)??null}observeHistory(e){return this.historyListeners.add(e),()=>{this.historyListeners.delete(e)}}undo(){let e=this.historyView.entries[this.historyView.cursor-1];e&&this.jumpTo(e.id)}redo(){let e=this.historyView.entries[this.historyView.cursor+1];e&&this.jumpTo(e.id)}get canUndo(){return this.historyView.cursor>0}get canRedo(){return this.historyView.cursor<this.historyView.entries.length-1}jumpTo(e){this.send(Mo({kind:`history_jump`,entryId:e}))}clearHistory(){this.send(Mo({kind:`history_clear`}))}fanHistoryChange(){for(let e of this.historyListeners)e(this.historyView)}destroy(){if(this.closed=!0,this.listeners.clear(),this.historyListeners.clear(),this.reconnectTimer&&=(clearTimeout(this.reconnectTimer),null),this.ws){try{this.ws.close()}catch{}this.ws=null}this.doc.destroy()}},Bo=new Map,Vo=()=>{if(typeof WebSocket>`u`)throw Error(`Sync client is only available in the browser`)},Ho=(e,t)=>{Vo();let r=n(e,t),i=Bo.get(r);if(i)return i;let a=new zo(r);return Bo.set(r,a),a.connect(),a},$=e=>!!e&&typeof e==`object`&&!Array.isArray(e),Uo=e=>!!e&&typeof e==`object`&&typeof e.id==`string`,Wo=(e,t)=>{for(let n of Object.keys(e))n in t||delete e[n];for(let n of Object.keys(t)){let r=t[n];if(!(n in e)){e[n]=r;continue}let i=e[n];Array.isArray(i)&&Array.isArray(r)?Go(i,r):$(i)&&$(r)?Wo(i,r):i!==r&&(e[n]=r)}},Go=(e,t)=>{let n=e.every(Uo),r=t.every(Uo);if(n&&r){let n=e,r=t,i=new Map;for(let e of n)i.set(e.id,e);for(let e=0;e<r.length;e+=1){let t=r[e],a=i.get(t.id),o=n[e];if(a&&o&&o.id===t.id){Wo(a,t);continue}if(a){let r=n.indexOf(a);r!==e&&(n.splice(r,1),n.splice(e,0,a)),Wo(a,t)}else n.splice(e,0,t),i.set(t.id,t)}n.length>r.length&&n.splice(r.length,n.length-r.length);return}e.length>t.length&&e.splice(t.length,e.length-t.length);for(let n=0;n<t.length;n+=1){let r=t[n];if(n>=e.length){e.push(r);continue}let i=e[n];Array.isArray(i)&&Array.isArray(r)?Go(i,r):$(i)&&$(r)?Wo(i,r):i!==r&&(e[n]=r)}},Ko=(e,t)=>(Array.isArray(e)&&Array.isArray(t)?Go(e,t):$(e)&&$(t)&&Wo(e,t),e),qo=e=>JSON.parse(JSON.stringify(e));export{Ko as n,Ho as r,qo as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{et as e,tt as t,z as n}from"./BPl9BITm.js";var r=`unspa.identity.name`,i=`unspa.identity.asked`,a=40,o=`Anonymous`,s=e=>e.replace(/[^\p{L}\p{N} \-_.@'’]/gu,``).trim().slice(0,a),c=new class{#e=t(``);get name(){return n(this.#e)}set name(t){e(this.#e,t,!0)}initialized=!1;init(){if(this.initialized||(this.initialized=!0,typeof localStorage>`u`))return;let e=localStorage.getItem(r);e&&(this.name=s(e))}setName(e){let t=s(e);this.name=t,!(typeof localStorage>`u`)&&(t.length>0?localStorage.setItem(r,t):localStorage.removeItem(r))}get hasBeenAsked(){return typeof localStorage>`u`?!0:localStorage.getItem(i)===`1`}markAsked(){typeof localStorage>`u`||localStorage.setItem(i,`1`)}get author(){return this.name.length>0?this.name:o}};export{c as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{F as e,O as t,k as n}from"./Bp2_Vghh.js";var r=(t,n)=>{let r=n;for(let n of t.stateOverrides)r=e(r,n.path,n.value);return r},i=(e,t,n)=>{let r={},i=new Set(t.parameters.map(e=>e.name));for(let t of e.parameterOverrides)i.has(t.parameterName)&&(r[t.parameterName]=t.value);return{...r,...n}},a=(t,n)=>{let r=n;for(let n of t.stateOverrides)r=e(r,n.path,n.value);return r},o=(e,t,n)=>{let r={},i=new Set(t.parameters.map(e=>e.name));for(let t of e.parameterOverrides)i.has(t.parameterName)&&(r[t.parameterName]=t.value);return{...r,...n}},s=e=>({path:e,stateDefinitions:0,parameterBindings:0,parameterResources:0,actionRequiredStates:0,ruleConditions:0,setStateEffects:0,invariantConditions:0,personaStateOverrides:0,otherDataFields:0}),c=(e,t)=>e===t,l=(e,r)=>{if(!t(e))return 0;let i=e;switch(i.kind){case`literal`:return 0;case`param`:return 0;case`state`:return+(String(i.path)===r);case`neg`:case`not`:case`sum`:case`count`:case`sum_pluck`:return l(i.operand,r);case`count_where`:return l(i.operand,r)+l(i.equals,r);case`switch`:{let e=0;for(let t of i.cases){for(let i of n(t.when))c(String(i.left),r)&&(e+=1),e+=l(i.right,r);e+=l(t.then,r)}return e+=l(i.default,r),e}case`add`:case`sub`:case`mul`:case`div`:case`mod`:case`min`:case`max`:return l(i.left,r)+l(i.right,r)}},u=(e,t)=>{let r=0;for(let i of n(e))c(String(i.left),t)&&(r+=1),r+=l(i.right,t);return r},d=(e,t)=>{let n=String(t),r={...s(t)};for(let t of e.surfaces){for(let e of t.stateDefinitions)c(String(e.path),n)&&(r.stateDefinitions+=1);for(let e of t.actions){for(let t of e.requiredStates)c(String(t),n)&&(r.actionRequiredStates+=1);for(let t of e.parameters)c(t.bindToStatePath?String(t.bindToStatePath):void 0,n)&&(r.parameterBindings+=1);for(let t of e.rules)r.ruleConditions+=u(t.condition,n),t.effect.type===`set_state`&&(c(String(t.effect.path),n)&&(r.setStateEffects+=1),r.setStateEffects+=l(t.effect.value,n));for(let t of e.effects)t.type===`set_state`&&(c(String(t.path),n)&&(r.setStateEffects+=1),r.setStateEffects+=l(t.value,n));for(let t of e.invariants)r.invariantConditions+=u(t.condition,n)}for(let e of t.rules)r.ruleConditions+=u(e.condition,n),e.effect.type===`set_state`&&(c(String(e.effect.path),n)&&(r.setStateEffects+=1),r.setStateEffects+=l(e.effect.value,n));for(let e of t.invariants)r.invariantConditions+=u(e.condition,n)}for(let t of e.personas)for(let e of t.stateOverrides)c(String(e.path),n)&&(r.personaStateOverrides+=1);for(let t of e.entities)for(let e of t.fields)c(e.path?String(e.path):void 0,n)&&(r.otherDataFields+=1);return r},f=e=>e.stateDefinitions+e.parameterBindings+e.parameterResources+e.actionRequiredStates+e.ruleConditions+e.setStateEffects+e.invariantConditions+e.personaStateOverrides+e.otherDataFields,p=e=>{let t=[],n=(e,n)=>{e>0&&t.push(`${e} ${n}`)};return n(e.stateDefinitions,e.stateDefinitions===1?`state definition`:`state definitions`),n(e.ruleConditions,e.ruleConditions===1?`rule condition`:`rule conditions`),n(e.setStateEffects,e.setStateEffects===1?`set_state effect`:`set_state effects`),n(e.parameterBindings,e.parameterBindings===1?`parameter binding`:`parameter bindings`),n(e.actionRequiredStates,e.actionRequiredStates===1?`action requirement`:`action requirements`),n(e.invariantConditions,e.invariantConditions===1?`invariant`:`invariants`),n(e.personaStateOverrides,e.personaStateOverrides===1?`persona override`:`persona overrides`),n(e.otherDataFields,e.otherDataFields===1?`data field`:`data fields`),t.join(`, `)};export{a,o as i,p as n,i as o,f as r,r as s,d as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=new Set,t=(t,n)=>{let r={name:t,...n?{payload:n}:{},at:new Date().toISOString()};for(let t of e)try{t(r)}catch{}},n=t=>(e.add(t),()=>e.delete(t));export{n,t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{A as e,I as t,L as n,N as r,Q as i,W as a,X as o,Z as s,a as c,ct as l,j as u,k as d,lt as f,mt as p,rt as m,u as h,v as g,z as _}from"./BPl9BITm.js";import"./xihTtKlq.js";import{t as ee}from"./D9dKmajw.js";import{t as te}from"./aNMRV4sP2.js";var ne=r(`<a class="block"><p class="line-clamp-3 text-sm leading-6 text-slate-600"> </p></a>`),re=r(`<p class="text-sm leading-6 text-slate-500">No description yet. Open this feature to shape its behavior model.</p>`),v=r(`<span class="px-1">/</span>`),ie=r(`<span class="text-red-600"> </span> <!>`,1),ae=r(`<span class="text-amber-700"> </span>`),oe=r(`<span class="text-emerald-700">All checks pass</span>`),se=r(`<button type="button"> </button>`),y=r(`<article class="group relative flex h-full min-h-52 flex-col justify-between overflow-hidden rounded-xl border border-cyan-100 bg-white p-5 shadow-sm shadow-cyan-950/5 transition duration-150 hover:-translate-y-0.5 hover:border-cyan-200 hover:bg-cyan-50/20 hover:shadow-md hover:shadow-cyan-950/10 focus-within:border-cyan-300"><div></div> <div class="space-y-4"><div class="flex items-start justify-between gap-3"><a class="block min-w-0 flex-1"><h3 class="truncate text-base font-semibold text-slate-950 group-hover:text-brand-800"> </h3></a> <div class="flex shrink-0 flex-col items-end gap-1"><span><span class="text-[9px] font-semibold uppercase tracking-wide opacity-70">Mat</span> <span class="tabular-nums"> </span></span> <span><span class="text-[9px] font-semibold uppercase tracking-wide opacity-70">Impl</span> <span class="tabular-nums"> </span></span></div></div> <!> <!> <div class="space-y-2"><!> <div class="text-xs text-slate-500"><!> <!> <!></div></div></div> <div class="mt-5 flex items-center justify-between gap-3 border-t border-hairline pt-3 text-xs text-slate-500"><span class="min-w-0 flex-1 truncate"> </span> <div class="flex shrink-0 items-center gap-1"><!> <button type="button" class="rounded px-2 py-1 text-slate-400 opacity-0 transition group-hover:opacity-100 group-focus-within:opacity-100 hover:bg-red-50 hover:text-red-600"> </button></div></div></article>`);function b(t,r){f(r,!0);let b=c(r,`tagTypeOptions`,19,()=>[]),x=c(r,`deleteLabel`,3,`Delete`),S=c(r,`queued`,3,!1),C=e=>e>=80?`bg-emerald-50 text-emerald-700 border-emerald-200`:e>=50?`bg-amber-50 text-amber-800 border-amber-200`:`bg-red-50 text-red-700 border-red-200`,ce=m(()=>C(r.summary.maturityPercentage)),le=m(()=>r.summary.implementationPercentage===null||!r.summary.implementationHasReport?`bg-slate-50 text-slate-500 border-slate-200`:C(r.summary.implementationPercentage)),ue=m(()=>r.summary.implementationPercentage===null?`-`:r.summary.implementationHasReport?`${r.summary.implementationPercentage}%`:`-`),w=m(()=>r.summary.implementationPercentage===null?`No taggable entities yet (actions, events, rules...)`:r.summary.implementationHasReport?`Implementation coverage: ${r.summary.implementationFoundCount} of ${r.summary.implementationExpectedCount} expected tags found in code`:`No .unspa.json report yet. Run report_implementation_status_batch to populate.`),T=m(()=>r.summary.maturityPercentage>=80?`from-emerald-400 via-brand-mint to-brand-500`:r.summary.maturityPercentage>=50?`from-amber-400 via-brand-ochre to-brand-peach`:`from-red-400 via-brand-coral to-brand-pink`);var E=y(),D=o(E),O=i(D,2),k=o(O),A=o(k),j=o(A),de=o(j,!0);p(j),p(A);var M=i(A,2),N=o(M),P=i(o(N),2),F=o(P);p(P),p(N);var I=i(N,2),L=i(o(I),2),R=o(L,!0);p(L),p(I),p(M),p(k);var z=i(k,2),B=t=>{var n=ne(),i=o(n),s=o(i,!0);p(i),p(n),a(()=>{h(n,`href`,`/features/${r.summary.id}`),e(s,r.summary.description)}),u(t,n)},V=e=>{u(e,re())};d(z,e=>{r.summary.description?e(B):e(V,-1)});var H=i(z,2);ee(H,{get tags(){return r.summary.tags},get onAddTag(){return r.onAddTag},get onRemoveTag(){return r.onRemoveTag},get typeOptions(){return b()}});var U=i(H,2),W=o(U);te(W,{get percentage(){return r.summary.maturityPercentage},size:`sm`,get ariaLabel(){return`Maturity ${r.summary.maturityPercentage??``}%`}});var G=i(W,2),K=o(G),fe=t=>{var n=ie(),c=s(n),l=o(c);p(c);var f=i(c,2),m=e=>{u(e,v())};d(f,e=>{r.summary.recommendedIssueCount>0&&e(m)}),a(()=>e(l,`${r.summary.criticalIssueCount??``} critical`)),u(t,n)};d(K,e=>{r.summary.criticalIssueCount>0&&e(fe)});var q=i(K,2),J=t=>{var n=ae(),i=o(n);p(n),a(()=>e(i,`${r.summary.recommendedIssueCount??``} recommended`)),u(t,n)};d(q,e=>{r.summary.recommendedIssueCount>0&&e(J)});var pe=i(q,2),me=e=>{u(e,oe())};d(pe,e=>{r.summary.criticalIssueCount===0&&r.summary.recommendedIssueCount===0&&e(me)}),p(G),p(U),p(O);var Y=i(O,2),X=o(Y),he=o(X);p(X);var Z=i(X,2),Q=o(Z),ge=t=>{var i=se(),s=o(i,!0);p(i),a(()=>{g(i,1,`rounded px-2 py-1 transition ${S()?`font-medium text-brand-700 opacity-100 hover:bg-cyan-50 hover:text-brand-900`:`text-slate-400 opacity-0 hover:bg-cyan-50 hover:text-brand-800 group-hover:opacity-100 group-focus-within:opacity-100`}`),h(i,`title`,S()?`In implementation queue (click to remove)`:`Add to implementation queue`),e(s,S()?`✓ queued`:`+ queue`)}),n(`click`,i,function(...e){(S()?r.onRemoveFromQueue:r.onAddToQueue)?.apply(this,e)}),u(t,i)};d(Q,e=>{(r.onAddToQueue||r.onRemoveFromQueue)&&e(ge)});var $=i(Q,2),_e=o($,!0);p($),p(Z),p(Y),p(E),a(t=>{g(D,1,`absolute inset-x-0 top-0 h-1 bg-linear-to-r ${_(T)??``}`),h(A,`href`,`/features/${r.summary.id}`),e(de,r.summary.name),g(N,1,`inline-flex items-center gap-1 rounded-md border px-1.5 py-0.5 text-[10px] font-medium ${_(ce)??``}`),h(N,`title`,`Maturity score: how complete this feature's behavior model is (${r.summary.maturityPercentage??``}% of spec quality checks pass)`),e(F,`${r.summary.maturityPercentage??``}%`),g(I,1,`inline-flex items-center gap-1 rounded-md border px-1.5 py-0.5 text-[10px] font-medium ${_(le)??``}`),h(I,`title`,_(w)),e(R,_(ue)),e(he,`${r.summary.surfaceCount??``} surface${r.summary.surfaceCount===1?``:`s`} / ${r.summary.actionCount??``}
|
|
2
|
+
action${r.summary.actionCount===1?``:`s`} / Updated ${t??``}`),e(_e,x())},[()=>new Date(r.summary.updatedAt).toLocaleDateString()]),n(`click`,$,function(...e){r.onDelete?.apply(this,e)}),u(t,E),l()}t([`click`]);export{b as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,E as t,G as n,I as r,L as i,M as a,N as o,Q as s,R as c,W as l,X as u,Y as d,Z as f,_ as p,a as m,c as h,ct as g,et as _,j as v,k as y,l as b,lt as x,mt as S,p as C,pt as w,rt as T,s as E,tt as D,u as O,v as k,z as A}from"./BPl9BITm.js";import"./xihTtKlq.js";import{at as j,lt as M,nt as N,ut as P}from"./Bp2_Vghh.js";import{n as F,t as I}from"./D8YEa1po.js";import{n as L}from"./D9dKmajw.js";var R=o(`<button type="button"></button>`),z=o(`<div class="absolute right-0 z-30 mt-2 w-56 rounded-lg border border-hairline bg-white p-3 shadow-lg" role="dialog" aria-label="Color picker"><p class="mb-2 text-[10px] font-semibold uppercase tracking-wider text-slate-500">Presets</p> <div class="grid grid-cols-5 gap-2"></div> <div class="mt-3 border-t border-hairline pt-3"><label class="flex items-center justify-between gap-2 text-xs text-slate-700"><span class="font-medium">Custom</span> <input type="color" class="h-7 w-12 cursor-pointer rounded border border-slate-300 bg-white p-0.5"/></label></div> <div class="mt-2"><button type="button" class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-xs font-medium text-slate-600 transition hover:bg-slate-50 hover:text-red-700 disabled:cursor-default disabled:opacity-40 disabled:hover:bg-transparent disabled:hover:text-slate-600"><!> <span>No color</span></button></div></div>`),B=o(`<div class="relative inline-block"><button type="button" class="flex size-6 cursor-pointer items-center justify-center overflow-hidden rounded-full ring-1 ring-inset ring-slate-300 transition hover:ring-slate-500" aria-haspopup="dialog" title="Pick a color"><!></button> <!></div>`);function V(e,r){x(r,!0);let a=m(r,`label`,3,`tag`),o=D(!1),c=D(null),d=D(null);function f(){_(o,!A(o))}function h(){_(o,!1)}n(()=>{if(!A(o))return;let e=e=>{let t=e.target;A(c)?.contains(t)||A(d)?.contains(t)||h()},t=e=>{e.key===`Escape`&&h()};return window.addEventListener(`pointerdown`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`keydown`,t)}});function j(e){r.onChange(e),h()}function M(e){let t=e.target.value;r.onChange(N(t))}function P(e){let t=e.target.value;r.onChange(N(t)),h()}var I=B(),V=u(I),H=u(V),U=e=>{L(e,{color:null,size:4})};y(H,e=>{r.value||e(U)}),S(V),E(V,e=>_(d,e),()=>A(d));var W=s(V,2),G=e=>{var n=z(),o=s(u(n),2);t(o,21,()=>F,e=>e.color,(e,t)=>{let n=T(()=>r.value===A(t).color);var o=R();let s;l(()=>{s=k(o,1,`flex size-7 items-center justify-center rounded-full ring-offset-2 transition hover:scale-110`,null,s,{"ring-2":A(n),"ring-slate-900":A(n)}),p(o,`background-color: ${A(t).color??``};`),O(o,`title`,A(t).name),O(o,`aria-label`,`Set ${a()} color to ${A(t).name}`)}),i(`click`,o,()=>j(A(t).color)),v(e,o)}),S(o);var d=s(o,2),f=u(d),m=s(u(f),2);b(m),S(f),S(d);var h=s(d,2),g=u(h);L(u(g),{color:null,size:4}),w(2),S(g),S(h),S(n),E(n,e=>_(c,e),()=>A(c)),l(()=>{C(m,r.value??`#94a3b8`),O(m,`aria-label`,`Custom color for ${a()}`),g.disabled=r.value===null}),i(`input`,m,M),i(`change`,m,P),i(`click`,g,()=>j(null)),v(e,n)};y(W,e=>{A(o)&&e(G)}),S(I),l(()=>{p(V,r.value?`background-color: ${r.value};`:`background-color: white;`),O(V,`aria-expanded`,A(o)),O(V,`aria-label`,`Pick a color for ${a()}`)}),i(`click`,V,f),v(e,I),g()}r([`click`,`input`,`change`]);var H=o(`<p class="text-sm text-slate-500">No tags yet. Add a tag to a project or feature to start grouping.</p>`),U=o(`<li class="flex items-center justify-between gap-3 rounded-md px-2 py-1 text-sm hover:bg-slate-50"><span class="truncate text-slate-700"> </span> <button type="button" class="rounded px-2 py-1 text-xs font-medium text-slate-500 hover:bg-slate-100 hover:text-slate-900">Rename</button></li>`),W=o(`<li class="space-y-2"><div class="flex items-center justify-between gap-3"><div class="flex min-w-0 items-center gap-2"><!> <span class="truncate text-sm font-semibold text-slate-900"> </span> <span class="text-xs text-slate-500"> </span></div> <!></div> <ul class="space-y-1 pl-5"></ul></li>`),G=o(`<ul class="space-y-5"></ul>`),K=o(`<p class="text-sm text-red-700"> </p>`),q=o(`<div class="fixed inset-0 z-50 flex items-start justify-center bg-slate-950/40 px-4 py-24 backdrop-blur-sm" role="presentation"><div class="w-full max-w-md overflow-hidden rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="rename-tag-title"><header class="border-b border-hairline px-5 py-4"><h3 id="rename-tag-title" class="text-base font-semibold text-slate-950"> </h3> <p class="mt-1 text-xs text-slate-500">Updates every project and feature that uses this tag.</p></header> <div class="space-y-3 px-5 py-4"><label class="block text-sm"><span class="mb-1 block text-xs font-medium uppercase tracking-wide text-slate-500">Type</span> <input type="text" class="h-9 w-full rounded-md border border-slate-300 px-3 text-sm outline-none focus:border-brand-700"/></label> <label class="block text-sm"><span class="mb-1 block text-xs font-medium uppercase tracking-wide text-slate-500">Value</span> <input type="text" class="h-9 w-full rounded-md border border-slate-300 px-3 text-sm outline-none focus:border-brand-700"/></label> <!></div> <footer class="flex items-center justify-end gap-2 border-t border-hairline bg-slate-50 px-5 py-3"><button type="button" class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-700 hover:bg-slate-100 disabled:opacity-40">Cancel</button> <button type="button" class="rounded-md bg-slate-900 px-3 py-1.5 text-sm font-medium text-white hover:bg-slate-800 disabled:opacity-40"> </button></footer></div></div>`),J=o(`<div class="fixed inset-0 z-40 flex items-start justify-center bg-slate-950/30 px-4 py-16 backdrop-blur-sm" role="presentation"><div class="w-full max-w-2xl overflow-hidden rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="manage-tags-title"><header class="flex items-start justify-between gap-4 border-b border-hairline px-5 py-4"><div><h2 id="manage-tags-title" class="text-base font-semibold text-slate-950">Manage tags</h2> <p class="mt-1 text-sm text-slate-500">Set a color per tag type, or rename a tag everywhere it appears.</p></div> <button type="button" class="rounded-md px-2 py-1 text-sm text-slate-500 hover:bg-slate-100 hover:text-slate-900" aria-label="Close">x</button></header> <div class="max-h-[60vh] overflow-y-auto px-5 py-4"><!></div> <footer class="flex items-center justify-end gap-2 border-t border-hairline bg-slate-50 px-5 py-3"><button type="button" class="rounded-md px-3 py-1.5 text-sm font-medium text-slate-700 hover:bg-slate-100">Done</button></footer></div></div> <!>`,1);function Y(n,r){x(r,!0);let o=D(null),p=T(()=>{let e=new Map;for(let t of r.tags){let n=t.type.trim().toLowerCase();if(!n)continue;let r=e.get(n);r?r.tags.some(e=>M(e)===M(t))||r.tags.push(t):e.set(n,{tags:[t]})}return[...e.entries()].sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>({key:e,display:j(e),tags:[...t.tags].sort((e,t)=>e.value.localeCompare(t.value))}))});async function m(e,t){try{await I.setTypeColor(e,t)}catch(e){console.error(`Failed to set tag color`,e)}}function C(e){_(o,{tag:e,type:j(e.type),value:j(e.value),busy:!1,error:null},!0)}function E(){_(o,null)}async function k(){let e=A(o);if(!e)return;let t=e.tag,n={type:e.type.trim(),value:e.value.trim()};if(!n.type||!n.value){_(o,{...e,error:`Type and value are required`},!0);return}if(M(t)===M(n)){_(o,null);return}_(o,{...e,busy:!0,error:null},!0);try{let e=await I.renameTag(t,n);_(o,null),await r.onRenamed?.({from:t,to:n,projectsUpdated:e.projectsUpdated,featuresUpdated:e.featuresUpdated})}catch(t){_(o,{...e,busy:!1,error:t.message},!0)}}function N(e){e.key===`Escape`&&(A(o)?E():r.onClose())}var F=a();c(`keydown`,d,N);var R=f(F),z=n=>{var a=J(),c=f(a),d=u(c),g=u(d),_=s(u(g),2);S(g);var x=s(g,2),D=u(x),N=e=>{v(e,H())},F=n=>{var r=G();t(r,21,()=>A(p),e=>e.key,(n,r)=>{let a=T(()=>I.colorFor(A(r).key));var o=W(),c=u(o),d=u(c),f=u(d);L(f,{get color(){return A(a)},size:2.5});var p=s(f,2),h=u(p,!0);S(p);var g=s(p,2),_=u(g);S(g),S(d),V(s(d,2),{get value(){return A(a)},onChange:e=>m(A(r).key,e),get label(){return A(r).display}}),S(c);var y=s(c,2);t(y,21,()=>A(r).tags,e=>M(e),(t,n)=>{var r=U(),a=u(r),o=u(a,!0);S(a);var c=s(a,2);S(r),l((t,n)=>{O(a,`title`,t),e(o,n)},[()=>P(A(n)),()=>j(A(n).value)]),i(`click`,c,()=>C(A(n))),v(t,r)}),S(y),S(o),l(()=>{e(h,A(r).display),e(_,`(${A(r).tags.length??``} value${A(r).tags.length===1?``:`s`})`)}),v(n,o)}),S(r),v(n,r)};y(D,e=>{A(p).length===0?e(N):e(F,-1)}),S(x);var R=s(x,2),z=u(R);S(R),S(d),S(c);var B=s(c,2),Y=t=>{var n=q(),r=u(n),a=u(r),c=u(a),d=u(c);S(c),w(2),S(a);var f=s(a,2),p=u(f),m=s(u(p),2);b(m),S(p);var g=s(p,2),_=s(u(g),2);b(_),S(g);var x=s(g,2),C=t=>{var n=K(),r=u(n,!0);S(n),l(()=>e(r,A(o).error)),v(t,n)};y(x,e=>{A(o).error&&e(C)}),S(f);var T=s(f,2),D=u(T),O=s(D,2),j=u(O,!0);S(O),S(T),S(r),S(n),l(t=>{e(d,`Rename "${t??``}"`),m.disabled=A(o).busy,_.disabled=A(o).busy,D.disabled=A(o).busy,O.disabled=A(o).busy,e(j,A(o).busy?`Renaming...`:`Rename everywhere`)},[()=>P(A(o).tag)]),i(`click`,n,e=>{e.currentTarget===e.target&&!A(o)?.busy&&E()}),h(m,()=>A(o).type,e=>A(o).type=e),h(_,()=>A(o).value,e=>A(o).value=e),i(`click`,D,E),i(`click`,O,k),v(t,n)};y(B,e=>{A(o)&&e(Y)}),i(`click`,c,e=>{e.currentTarget===e.target&&r.onClose()}),i(`click`,_,function(...e){r.onClose?.apply(this,e)}),i(`click`,z,function(...e){r.onClose?.apply(this,e)}),v(n,a)};y(R,e=>{r.open&&e(z)}),v(n,F),g()}r([`click`]);export{Y as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,et as t,rt as n,tt as r,z as i}from"./BPl9BITm.js";import{$ as a,et as o,rt as s,t as c,tt as l}from"./Bp2_Vghh.js";var u=[{name:`Rose`,color:`#f43f5e`},{name:`Orange`,color:`#f97316`},{name:`Amber`,color:`#f59e0b`},{name:`Lime`,color:`#84cc16`},{name:`Emerald`,color:`#10b981`},{name:`Teal`,color:`#14b8a6`},{name:`Sky`,color:`#0ea5e9`},{name:`Violet`,color:`#8b5cf6`},{name:`Fuchsia`,color:`#d946ef`},{name:`Slate`,color:`#64748b`}],d=(e,t)=>{let n=new Map;if(u.length===0)return n;let r=[...new Set(e.map(e=>e.trim().toLowerCase()).filter(e=>e.length>0))].sort(),i=new Set;for(let e of Object.values(t.assignments))typeof e==`string`&&i.add(e);let a=u.filter(e=>!i.has(e.color)),o=a.length>0?a:u,s=0;for(let e of r){let r=t.assignments[e];typeof r!=`string`&&r!==null&&(n.set(e,o[s%o.length].color),s++)}return n},f=new class{#e=r(e(a));get palette(){return i(this.#e)}set palette(e){t(this.#e,e,!0)}#t=r(!1);get loaded(){return i(this.#t)}set loaded(e){t(this.#t,e,!0)}#n=r(null);get error(){return i(this.#n)}set error(e){t(this.#n,e,!0)}#r=r(e([]));get knownTypes(){return i(this.#r)}set knownTypes(e){t(this.#r,e,!0)}#i=n(()=>d(this.knownTypes,this.palette));get autoColors(){return i(this.#i)}set autoColors(e){t(this.#i,e)}async refresh(){try{let e=await c();this.palette=await e.useCases.getTagPalette(),this.loaded=!0,this.error=null}catch(e){this.error=e.message}}registerTypes(e){if(e.length===0)return;let t=new Set(this.knownTypes),n=!1;for(let r of e){let e=r.trim().toLowerCase();e&&(t.has(e)||(t.add(e),n=!0))}n&&(this.knownTypes=[...t])}colorFor(e){return l(this.palette,e)?null:o(this.palette,e)||(this.autoColors.get(e.trim().toLowerCase())??null)}colorForTag(e){return this.colorFor(e.type)}explicitAssignmentFor(e){return l(this.palette,e)?null:o(this.palette,e)??void 0}isExplicitlyCleared(e){return l(this.palette,e)}async setTypeColor(e,t){let n=this.palette;t!==null&&(this.palette=s(n,e,t));try{let n=await(await c()).useCases.setTagTypeColor({type:e,color:t});this.palette=n}catch(e){throw this.palette=n,this.error=e.message,e}}async renameTag(e,t){let n=await(await c()).useCases.renameTag({from:e,to:t});return await this.refresh(),{projectsUpdated:n.projectsUpdated,featuresUpdated:n.featuresUpdated}}};export{u as n,f as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,D as t,E as n,I as r,L as i,M as a,N as o,P as s,Q as c,R as l,V as u,W as d,X as f,Z as p,_ as m,a as h,c as g,ct as _,et as v,j as y,k as b,l as x,lt as S,mt as C,rt as w,s as T,tt as E,u as D,v as O,z as k}from"./BPl9BITm.js";import"./xihTtKlq.js";import{at as A,ut as j}from"./Bp2_Vghh.js";import{t as M}from"./D8YEa1po.js";var N={isAbsent:!0,dotBackground:null,pillBackground:`#ffffff`,pillRing:`#e2e8f0`,pillText:`#475569`},P=e=>e?{isAbsent:!1,dotBackground:e,pillBackground:`color-mix(in srgb, ${e} 18%, white)`,pillRing:`color-mix(in srgb, ${e} 45%, white)`,pillText:`color-mix(in srgb, ${e} 55%, black)`}:N,F=o(`<span aria-hidden="true"></span>`),I=s(`<svg viewBox="0 0 16 16" aria-hidden="true"><circle cx="8" cy="8" r="6.5" fill="white" stroke="#cbd5e1" stroke-width="1"></circle><line x1="3.5" y1="12.5" x2="12.5" y2="3.5" stroke="#dc2626" stroke-width="1.5" stroke-linecap="round"></line></svg>`);function L(e,t){let n=h(t,`size`,3,2),r={1.5:`size-1.5`,2:`size-2`,2.5:`size-2.5`,3:`size-3`,4:`size-4`,5:`size-5`},i=w(()=>r[n()]);var o=a(),s=p(o),c=e=>{var n=F();d(()=>{O(n,1,`block shrink-0 rounded-full ring-1 ring-inset ring-black/10 ${k(i)??``}`),m(n,`background-color: ${t.color??``};`)}),y(e,n)},l=e=>{var t=I();d(()=>O(t,0,`block shrink-0 ${k(i)??``}`)),y(e,t)};b(s,e=>{t.color?e(c):e(l,-1)}),y(e,o)}var R=0,z=o(`<button type="button" class="ml-0.5 flex size-3 shrink-0 items-center justify-center rounded-full text-[9px] leading-none opacity-0 transition group-hover/chip:opacity-70 hover:opacity-100! hover:bg-white/60">×</button>`),B=o(`<span class="group/chip inline-flex max-w-full items-center gap-1 rounded-full px-1.5 py-0.5 text-[10px] font-medium"><!> <span class="truncate"> </span> <!></span>`),V=o(`<button type="button" aria-label="Add tag" title="Add tag"> </button>`),H=o(`<option></option>`),U=o(`<datalist></datalist>`),W=o(`<form class="inline-flex items-center gap-1"><input type="text" placeholder="Type" class="h-5.5 w-20 rounded border border-slate-300 px-1.5 text-[11px] outline-none focus:border-brand-700"/> <!> <input type="text" placeholder="Value" class="h-5.5 w-24 rounded border border-slate-300 px-1.5 text-[11px] outline-none focus:border-brand-700"/> <button type="submit" class="h-5.5 rounded bg-slate-900 px-2 text-[11px] font-medium text-white disabled:opacity-40">Add</button> <button type="button" class="h-5.5 rounded px-1 text-[11px] text-slate-500 hover:text-slate-800">Cancel</button></form>`),G=o(`<div class="flex flex-wrap items-center gap-1.5"><!> <!></div>`);function K(r,o){S(o,!0);let s=h(o,`typeOptions`,19,()=>[]),N=h(o,`addLabel`,3,`+`),F=E(!1),I=E(``),K=E(``),q=E(null),J=`tagdotstrip-types-${++R}`,Y=w(()=>!!(o.tags&&o.tags.length>0));async function X(){v(F,!0),await u(),k(q)?.focus()}function Z(){v(F,!1),v(I,``),v(K,``)}async function ee(e){e.preventDefault();let t=k(I).trim(),n=k(K).trim();!t||!n||(await o.onAddTag?.(t,n),Z())}function Q(e){e.key===`Escape`&&Z()}var $=a(),te=p($),ne=r=>{var u=G(),h=f(u),_=r=>{var s=a();n(p(s),17,()=>o.tags,t,(t,n)=>{let r=w(()=>M.colorForTag(k(n))),a=w(()=>P(k(r)));var s=B(),l=f(s);L(l,{get color(){return k(r)},size:1.5});var u=c(l,2),p=f(u,!0);C(u);var h=c(u,2),g=e=>{var t=z();d((e,n)=>{D(t,`aria-label`,e),D(t,`title`,n)},[()=>`Remove tag ${j(k(n))}`,()=>`Remove ${j(k(n))}`]),i(`click`,t,()=>o.onRemoveTag?.(k(n).type,k(n).value)),y(e,t)};b(h,e=>{o.onRemoveTag&&e(g)}),C(s),d((t,n)=>{m(s,`background-color: ${k(a).pillBackground??``}; color: ${k(a).pillText??``}; box-shadow: inset 0 0 0 1px ${k(a).pillRing??``};`),D(s,`title`,t),e(p,n)},[()=>j(k(n)),()=>A(k(n).value)]),y(t,s)}),y(r,s)};b(h,e=>{o.tags&&e(_)});var S=c(h,2),E=t=>{var r=a(),o=p(r),u=t=>{var n=V();let r;var a=f(n,!0);C(n),d(()=>{r=O(n,1,`inline-flex h-4 items-center rounded-sm px-1 text-[10px] font-medium text-slate-400 opacity-0 transition group-hover:opacity-100 group-focus-within:opacity-100 hover:bg-slate-100 hover:text-slate-700`,null,r,{"opacity-100":!k(Y)}),e(a,N())}),i(`click`,n,X),y(t,n)},m=e=>{var t=W(),r=f(t);x(r),T(r,e=>v(q,e),()=>k(q));var a=c(r,2),o=e=>{var t=U();n(t,20,s,e=>e,(e,t)=>{var n=H(),r={};d(()=>{r!==(r=t)&&(n.value=(n.__value=t)??``)}),y(e,n)}),C(t),d(()=>D(t,`id`,J)),y(e,t)};b(a,e=>{s().length>0&&e(o)});var u=c(a,2);x(u);var p=c(u,2),m=c(p,2);C(t),d(e=>{D(r,`list`,s().length>0?J:void 0),p.disabled=e},[()=>k(I).trim().length===0||k(K).trim().length===0]),l(`submit`,t,ee),i(`keydown`,r,Q),g(r,()=>k(I),e=>v(I,e)),i(`keydown`,u,Q),g(u,()=>k(K),e=>v(K,e)),i(`click`,m,Z),y(e,t)};b(o,e=>{k(F)?e(m,-1):e(u)}),y(t,r)};b(S,e=>{o.onAddTag&&e(E)}),C(u),y(r,u)};b(te,e=>{(k(Y)||o.onAddTag)&&e(ne)}),y(r,$),_()}r([`click`,`keydown`]);export{L as n,K as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,E as t,F as n,G as r,I as i,L as a,N as o,Q as s,R as c,V as l,W as u,X as d,Y as f,Z as p,a as m,c as h,ct as g,et as _,j as v,k as y,l as b,lt as x,m as S,mt as C,n as w,p as T,r as E,rt as D,s as O,tt as k,u as A,z as j}from"./BPl9BITm.js";import{t as M}from"./DatGSObE.js";import"./xihTtKlq.js";import{at as N,gt as P,it as ee,lt as F,mt as te,pt as ne,st as re,t as I,vt as ie}from"./Bp2_Vghh.js";import{t as ae}from"./BOrLmFwJ.js";import"./DHoA038D.js";import{t as L}from"./cMamJTsF.js";import{t as R}from"./BfMYiIUi.js";import{t as oe}from"./D8YEa1po.js";import{t as se}from"./DKgYpi6_.js";import{t as z}from"./D9dKmajw.js";import{t as ce}from"./Dhqg7r_2.js";import{a as le,i as ue,r as de,s as fe}from"./HKLi1Yz3.js";import{t as pe}from"./N7PXjlRH.js";import{t as me}from"./D6jhrpTg.js";var B=o(`<a class="block"><p class="line-clamp-3 text-sm leading-6 text-slate-600"> </p></a>`),V=o(`<p class="text-sm leading-6 text-slate-500">No description yet. Add a note so collaborators know what belongs here.</p>`),he=o(`<article data-tour="project-card" class="group relative flex h-full min-h-52 flex-col justify-between overflow-hidden rounded-xl border border-cyan-100 bg-white p-5 shadow-sm shadow-cyan-950/5 transition duration-150 hover:-translate-y-0.5 hover:border-cyan-200 hover:bg-cyan-50/20 hover:shadow-md hover:shadow-cyan-950/10 focus-within:border-cyan-300"><div class="absolute inset-x-0 top-0 h-1 bg-gradient-to-r from-brand-500 via-brand-mint to-violet-400"></div> <div class="space-y-3"><div class="flex items-start justify-between gap-3"><a class="block min-w-0 flex-1"><h3 class="truncate text-base font-semibold text-slate-950 group-hover:text-brand-800"> </h3></a> <span class="shrink-0 rounded-md border border-cyan-100 bg-cyan-50 px-2 py-0.5 text-xs font-medium text-brand-800" title="Features in project"> </span></div> <!></div> <div class="mt-5 flex items-end justify-between gap-3 border-t border-hairline pt-3 text-xs text-slate-500"><div class="min-w-0 flex-1 space-y-2"><!> <span class="block truncate"> </span></div> <div class="flex shrink-0 items-center gap-1"><button type="button" class="rounded px-2 py-1 text-slate-400 opacity-0 transition group-hover:opacity-100 group-focus-within:opacity-100 hover:bg-red-50 hover:text-red-600"> </button></div></div></article>`);function ge(t,n){x(n,!0);let r=m(n,`tagTypeOptions`,19,()=>[]),i=m(n,`deleteLabel`,3,`Delete`);function o(){R.openProject(String(n.summary.id))}var c=he(),l=s(d(c),2),f=d(l),p=d(f),h=d(p),_=d(h,!0);C(h),C(p);var b=s(p,2),S=d(b);C(b),C(f);var w=s(f,2),T=t=>{var r=B(),i=d(r),s=d(i,!0);C(i),C(r),u(()=>{A(r,`href`,`/projects/${n.summary.id}`),e(s,n.summary.description)}),a(`click`,r,o),v(t,r)},E=e=>{v(e,V())};y(w,e=>{n.summary.description?e(T):e(E,-1)}),C(l);var D=s(l,2),O=d(D),k=d(O);z(k,{get tags(){return n.summary.tags},get onAddTag(){return n.onAddTag},get onRemoveTag(){return n.onRemoveTag},get typeOptions(){return r()}});var j=s(k,2),M=d(j);C(j),C(O);var N=s(O,2),P=d(N),ee=d(P,!0);C(P),C(N),C(D),C(c),u(t=>{A(p,`href`,`/projects/${n.summary.id}`),e(_,n.summary.name),e(S,`${n.summary.featureCount??``} feature${n.summary.featureCount===1?``:`s`}`),e(M,`Updated ${t??``}`),e(ee,i())},[()=>new Date(n.summary.updatedAt).toLocaleDateString()]),a(`click`,p,o),a(`click`,P,function(...e){n.onDelete?.apply(this,e)}),v(t,c),g()}i([`click`]);var _e=o(`<form data-tour="new-project-form" class="grid gap-3 rounded-xl border border-cyan-100 bg-cyan-50/40 p-4 md:grid-cols-[1fr_1.6fr_auto] md:items-end"><div><label for="proj-name" class="mb-1.5 block text-xs font-medium text-slate-700">Project name</label> <input id="proj-name" type="text" placeholder="e.g. Acme Platform" class="h-10 w-full rounded-md border border-cyan-100 bg-white px-3 text-sm outline-none focus:border-brand-700 focus:ring-2 focus:ring-brand-100" required=""/></div> <div><label for="proj-desc" class="mb-1.5 block text-xs font-medium text-slate-700">Description</label> <input id="proj-desc" data-tour="new-project-description" type="text" placeholder="What product or initiative does this group?" class="h-10 w-full rounded-md border border-cyan-100 bg-white px-3 text-sm outline-none focus:border-brand-700 focus:ring-2 focus:ring-brand-100" required=""/></div> <button type="submit" class="h-10 rounded-md bg-brand-800 px-4 text-sm font-medium text-white hover:bg-brand-900 disabled:cursor-not-allowed disabled:opacity-50"> </button></form>`);function ve(t,n){x(n,!0);let i=k(``),a=k(``),o=k(!1),f=k(null),p=D(()=>ce(L.currentStep,`new-project`,j(i)));r(()=>{j(f)&&l().then(()=>j(f)?.focus())});async function m(e){if(e.preventDefault(),!j(o)&&j(i).trim().length!==0&&j(a).trim().length!==0){_(o,!0);try{await n.onSubmit(j(i).trim(),j(a).trim()),_(i,``),_(a,``)}finally{_(o,!1)}}}var y=_e(),S=d(y),w=s(d(S),2);b(w),O(w,e=>_(f,e),()=>j(f)),C(S);var T=s(S,2),E=s(d(T),2);b(E),C(T);var M=s(T,2),N=d(M,!0);C(M),C(y),u(t=>{A(M,`title`,j(p).blocked?`Tutorial: name must be exactly "${j(p).requiredValue}"`:void 0),M.disabled=t,e(N,j(o)?`Creating...`:`New project`)},[()=>j(o)||j(i).trim().length===0||j(a).trim().length===0||j(p).blocked]),c(`submit`,y,m),h(w,()=>j(i),e=>_(i,e)),h(E,()=>j(a),e=>_(a,e)),v(t,y),g()}var ye=o(`<button type="button" class="h-8 rounded-md px-2 text-xs font-medium text-slate-500 hover:bg-slate-50 hover:text-slate-900">Clear</button>`),be=o(`<div class="rounded-lg border border-dashed border-hairline bg-white p-8 text-center text-sm text-slate-500">Loading projects...</div>`),xe=o(`<div class="rounded-lg border border-red-200 bg-red-50 p-4 text-sm text-red-700"> </div>`),Se=o(`<div class="space-y-3"><p>No projects yet.</p> <button type="button" class="rounded-md bg-slate-900 px-4 py-2 text-sm font-medium text-white">Create first project</button></div>`),Ce=o(`<div class="rounded-lg border border-dashed border-hairline bg-white p-8 text-center text-sm text-slate-500"><!></div>`),we=o(`<li><!></li>`),Te=o(`<ul class="grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3"></ul>`),Ee=o(`<div class="fixed inset-0 z-40 flex items-start justify-center bg-slate-950/30 px-4 py-24 backdrop-blur-sm" role="presentation"><div class="w-full max-w-3xl rounded-xl border border-hairline bg-white shadow-xl" role="dialog" aria-modal="true" aria-labelledby="new-project-title"><header class="flex items-start justify-between gap-4 border-b border-hairline px-5 py-4"><div><h2 id="new-project-title" class="text-base font-semibold text-slate-950">New project</h2> <p class="mt-1 text-sm text-slate-500">Create a project for related behavior models.</p></div> <button type="button" class="rounded-md px-2 py-1 text-sm text-slate-500 hover:bg-slate-100 hover:text-slate-900" aria-label="Close">x</button></header> <div class="p-5"><!></div></div></div>`),De=o(`<div class="mx-auto max-w-7xl px-4 py-8 sm:px-6"><header class="mb-6 border-b border-slate-200 pb-6"><div class="flex items-center justify-between gap-3"><p class="text-xs font-semibold uppercase tracking-wide text-brand-700">Home</p> <button type="button" class="inline-flex items-center gap-1.5 rounded-md border border-slate-300 bg-white px-3 py-1.5 text-xs font-medium text-slate-700 transition hover:border-brand-300 hover:bg-cyan-50 hover:text-brand-800 disabled:opacity-50" title="Restore a project from a .unspa file"><span aria-hidden="true">⬆</span> </button> <input type="file" accept=".unspa,application/octet-stream,application/json" class="hidden"/></div> <div class="mt-2 max-w-3xl"><h1 class="text-4xl font-semibold tracking-tight text-slate-950">Projects</h1> <p class="mt-2 max-w-2xl text-sm leading-6 text-slate-600">Group related behavior models and inspect their resources, data, events, and transitions together.</p></div> <div class="mt-6 flex flex-col gap-3 rounded-xl border border-slate-200 bg-white p-3 shadow-sm shadow-slate-950/5 lg:flex-row lg:items-center lg:justify-between"><div class="flex min-w-0 items-center rounded-lg border border-hairline bg-white p-1 lg:flex-1"><label for="project-search" class="sr-only">Search projects</label> <input id="project-search" type="search" placeholder="Search projects..." class="h-9 w-full min-w-0 rounded-md border-0 bg-transparent px-3 text-sm outline-none placeholder:text-slate-400"/> <!></div> <div class="flex flex-col gap-2 sm:flex-row sm:items-center"><!> <label class="flex h-10 items-center gap-2 rounded-lg border border-hairline bg-white px-3 text-sm text-slate-600"><span class="text-xs font-medium">Sort</span> <select class="bg-transparent text-sm font-medium text-slate-800 outline-none"><option>Updated</option><option>Name</option><option>Features</option></select></label> <button type="button" data-tour="new-project-button" class="inline-flex h-10 items-center justify-center gap-2 rounded-md bg-slate-900 px-4 text-sm font-medium text-white hover:bg-slate-800"><span class="text-base leading-none" aria-hidden="true">+</span> New project</button></div></div></header> <section aria-labelledby="projects-list-title"><div class="mb-3 flex flex-col gap-1 sm:flex-row sm:items-end sm:justify-between"><div><h2 id="projects-list-title" class="text-base font-semibold text-slate-950">Your projects</h2> <p class="text-sm text-slate-500">Open a project to inspect the features it groups.</p></div> <p class="text-xs text-slate-500"> </p></div> <!></section></div> <!> <!>`,1);function Oe(i,o){x(o,!0);let l=null,m=k(`all`),h=k(!1),A=k(!1),L=k(`updated`);E(()=>{R.refresh(),oe.refresh(),l=ae(e=>{(e.kind===`project`||e.kind===`feature`)&&R.refreshSilent()})}),w(()=>{l?.(),l=null});function z(e){let t=[...e.tags??[]];return e.customTag?.trim()&&t.push({type:e.customTagType?.trim()||`Tag`,value:e.customTag.trim()}),t}async function ce(e,t){await M(`/projects/${await R.create(e,t)}`)}let B=k(!1),V=k(null);function he(){j(B)||j(V)?.click()}async function _e(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){_(B,!0);try{let e=await ue(n),t=await ie({title:`Import .unspa file`,message:`Enter the passphrase used when "${n.name}" was exported. A wrong passphrase will not corrupt anything — the file just stays encrypted.`,inputLabel:`Passphrase`,password:!0,confirmLabel:`Import`,tone:`info`});if(t===null)return;let r=await de(e,t);await R.refreshSilent(),await ne({title:`Import complete`,message:`Restored project with ${r.featuresImported} feature(s) and ${r.statusesImported} implementation-status sidecar(s).`,tone:`success`}),await M(`/projects/${r.projectId}`)}catch(e){await ne({title:`Import failed`,message:e instanceof le?`That file is not a valid .unspa bundle: ${e.message}`:e instanceof fe?e.message:`Import failed: ${e.message}`,tone:`danger`})}finally{_(B,!1)}}}async function Oe(e){R.stagePendingDelete(e);let t=R.summaries.find(t=>String(t.id)===String(e))?.name??`this project`,n=await I(),r=((await n.useCases.getProject(e))?.featureIds??[]).map(String),i=[];if(r.length===0){if(!await P({title:`Delete "${t}"?`,message:`This project has no linked features. Removing it cannot be undone.`,confirmLabel:`Delete project`,tone:`danger`})){R.clearPendingDelete();return}}else{let e=await Promise.all(r.map(async e=>({id:e,label:(await n.useCases.getFeatureCard(e))?.name??e,defaultChecked:!0}))),a=await te({title:`Delete "${t}"?`,message:`This project links to ${r.length} feature${r.length===1?``:`s`}. Tick the ones you want to delete in the same batch. Anything left unchecked stays available as an unassigned feature.`,items:e,confirmLabel:`Delete project + selected`,cancelLabel:`Cancel`,tone:`danger`});if(!a.confirmed){R.clearPendingDelete();return}i=a.selectedIds}for(let e of i)await n.useCases.deleteFeature(e);await R.remove(e),i.length>0&&await se.refreshSilent()}function ke(e){e.key===`Escape`&&_(h,!1)}let H=D(()=>(R.search.trim().length===0?[...R.summaries]:R.summaries.filter(e=>{let t=R.search.toLowerCase();return e.name.toLowerCase().includes(t)||(e.description??``).toLowerCase().includes(t)})).filter(e=>Ae(e,j(m))).sort((e,t)=>j(L)===`name`?e.name.localeCompare(t.name):j(L)===`count`?t.featureCount-e.featureCount:new Date(t.updatedAt).getTime()-new Date(e.updatedAt).getTime()));function Ae(e,t){let n=z(e);if(t===`all`)return!0;if(t===`untagged`)return n.length===0;let r=F(t);return n.some(e=>F(e)===r)}let U=D(()=>{let e=[];for(let t of R.summaries)for(let n of z(t))e.push(n);return e});r(()=>{oe.registerTypes(j(U).map(e=>e.type))});let je=D(()=>[...new Set(j(U).map(e=>N(e.type)))].sort((e,t)=>e.localeCompare(t)));function Me(e){return R.summaries.filter(t=>Ae(t,e)).length}async function Ne(e,t,n){let r=await I(),i=await r.useCases.getProject(e);i&&(await r.useCases.saveProject({...i,tags:ee(z(i),{type:t,value:n})}),await R.refreshSilent())}async function Pe(e,t,n){let r=await I(),i=await r.useCases.getProject(e);if(!i)return;let a=re(z(i),{type:t,value:n});await r.useCases.saveProject({...i,tags:a,customTagType:void 0,customTag:void 0}),j(m)!==`all`&&j(m)!==`untagged`&&F(j(m))===F({type:t,value:n})&&_(m,`all`),await R.refreshSilent()}var Fe=De();c(`keydown`,f,ke);var W=p(Fe),G=d(W),K=d(G),q=s(d(K),2),Ie=s(d(q));C(q);var Le=s(q,2);O(Le,e=>_(V,e),()=>j(V)),C(K);var Re=s(K,4),J=d(Re),Y=s(d(J),2);b(Y);var ze=s(Y,2),Be=e=>{var t=ye();a(`click`,t,()=>R.setSearch(``)),v(e,t)},Ve=D(()=>R.search.trim().length>0);y(ze,e=>{j(Ve)&&e(Be)}),C(J);var He=s(J,2),Ue=d(He);pe(Ue,{get tags(){return j(U)},get value(){return j(m)},onChange:e=>_(m,e,!0),onManage:()=>_(A,!0),countLabel:Me});var X=s(Ue,2),Z=s(d(X),2),Q=d(Z);Q.value=Q.__value=`updated`;var $=s(Q);$.value=$.__value=`name`;var We=s($);We.value=We.__value=`count`,C(Z),C(X);var Ge=s(X,2);C(He),C(Re),C(G);var Ke=s(G,2),qe=d(Ke),Je=s(d(qe),2),Ye=d(Je);C(Je),C(qe);var Xe=s(qe,2),Ze=e=>{v(e,be())},Qe=t=>{var n=xe(),r=d(n,!0);C(n),u(()=>e(r,R.error)),v(t,n)},$e=e=>{var t=Ce(),r=d(t),i=e=>{var t=Se(),n=s(d(t),2);C(t),a(`click`,n,()=>_(h,!0)),v(e,t)},o=e=>{v(e,n(`No projects match your search.`))};y(r,e=>{R.summaries.length===0?e(i):e(o,-1)}),C(t),v(e,t)},et=e=>{var n=Te();t(n,21,()=>j(H),e=>e.id,(e,t)=>{var n=we();ge(d(n),{get summary(){return j(t)},get tagTypeOptions(){return j(je)},onAddTag:(e,n)=>Ne(j(t).id,e,n),onRemoveTag:(e,n)=>Pe(j(t).id,e,n),onDelete:()=>Oe(j(t).id)}),C(n),v(e,n)}),C(n),v(e,n)};y(Xe,e=>{R.loading?e(Ze):R.error?e(Qe,1):j(H).length===0?e($e,2):e(et,-1)}),C(Ke),C(W);var tt=s(W,2),nt=e=>{var t=Ee(),n=d(t),r=d(n),i=s(d(r),2);C(r);var o=s(r,2);ve(d(o),{onSubmit:ce}),C(o),C(n),C(t),a(`click`,t,e=>{e.currentTarget===e.target&&_(h,!1)}),a(`click`,i,()=>_(h,!1)),v(e,t)};y(tt,e=>{j(h)&&e(nt)}),me(s(tt,2),{get open(){return j(A)},get tags(){return j(U)},onClose:()=>_(A,!1),onRenamed:()=>R.refreshSilent()}),u(()=>{q.disabled=j(B),e(Ie,` ${j(B)?`Importing...`:`Import .unspa`}`),T(Y,R.search),e(Ye,`${j(H).length??``} shown`)}),a(`click`,q,he),a(`change`,Le,_e),a(`input`,Y,e=>R.setSearch(e.target.value)),S(Z,()=>j(L),e=>_(L,e)),a(`click`,Ge,()=>_(h,!0)),v(i,Fe),g()}i([`click`,`change`,`input`]);export{Oe as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./DatGSObE.js";
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,et as t,tt as n,z as r}from"./BPl9BITm.js";import{_ as i,g as a,h as o,it as s,ot as c,st as l,t as u,v as d}from"./Bp2_Vghh.js";import{t as f}from"./Cl7Z3e6-.js";import{t as p}from"./BfMYiIUi.js";var m=e=>JSON.stringify({format:`unspaghettit`,version:1,feature:e},null,2),h=e=>{if(`actions`in e)return e;if(`capabilities`in e){let{capabilities:t,...n}=e;return{...n,actions:t}}return e},g=e=>{let t;try{t=JSON.parse(e)}catch(e){throw Error(`Invalid JSON: ${e.message}`)}if(!t||typeof t!=`object`)throw Error(`Expected a feature export object`);let n=t;if(n.format!==`unspaghettit`)throw Error(`Not an Unspaghettit export (missing format field)`);if(n.version!==1)throw Error(`Unsupported export version: ${n.version}`);let r=n.feature??n.experience;if(!r)throw Error(`Export envelope is missing a feature`);let s=(r.surfaces??[]).map(e=>h(e)),l=r,u=l.entities??l.data??[];return o(d(i(a({...r,tags:c(r.tags),surfaces:s,personas:r.personas??[],resources:r.resources??[],entities:u}))))},_=new class{#e=n(!0);get loading(){return r(this.#e)}set loading(e){t(this.#e,e,!0)}#t=n(e([]));get summaries(){return r(this.#t)}set summaries(e){t(this.#t,e,!0)}#n=n(null);get error(){return r(this.#n)}set error(e){t(this.#n,e,!0)}async refresh(){try{this.loading=!0,this.error=null;let e=await u();this.summaries=[...await e.useCases.listFeaturesWithMaturity()]}catch(e){this.error=e.message}finally{this.loading=!1}}async refreshSilent(){try{let e=await u();this.summaries=[...await e.useCases.listFeaturesWithMaturity()],this.error=null}catch(e){this.error=e.message}}async create(e,t){let n=await(await u()).useCases.createFeature({name:e,description:t});return await this.refreshSilent(),f(`feature.created`,{id:n.id,name:n.name}),n.id}async addTag(e,t){let n=await u(),r=await n.useCases.getFeature(e);r&&(await n.useCases.saveFeature({...r,tags:s(r.tags,t)}),await this.refreshSilent())}async removeTag(e,t){let n=await u(),r=await n.useCases.getFeature(e);r&&(await n.useCases.saveFeature({...r,tags:l(r.tags,t)}),await this.refreshSilent())}async remove(e){this.summaries=this.summaries.filter(t=>String(t.id)!==String(e)),await(await u()).useCases.deleteFeature(e),f(`feature.deleted`,{id:e})}async loadSamples(){let e=await(await u()).useCases.loadSamples();return await this.refreshSilent(),await p.refreshSilent(),e}async importJson(e){let t=g(e),n=await u(),r=this.summaries.some(e=>e.id===t.id),i=await n.useCases.saveFeature(t);return await this.refreshSilent(),{id:i.id,name:i.name,overwrote:r}}};export{m as n,_ as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{B as e,H as t,V as n,et as r,ot as i,r as a,t as o,tt as s,z as c}from"./BPl9BITm.js";var l=class{constructor(e,t){this.status=e,typeof t==`string`?this.body={message:t}:t?this.body=t:this.body={message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},u=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},d=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function f(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function p(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function ee(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(e,t,n,r=!1){let i=new URL(e);Object.defineProperty(i,"searchParams",{value:new Proxy(i.searchParams,{get(e,r){if(r===`get`||r===`getAll`||r===`has`)return(t,...i)=>(n(t),e[r](t,...i));t();let i=Reflect.get(e,r);return typeof i==`function`?i.bind(e):i}}),enumerable:!0,configurable:!0});let a=[`href`,`pathname`,`search`,`toString`,`toJSON`];r&&a.push(`hash`);for(let n of a)Object.defineProperty(i,n,{get(){return t(),e[n]},enumerable:!0,configurable:!0});return i}function g(){}function _(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function te(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var ne=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(ae(e)),ne(e,t));var v=new Map;function re(e,t){let n=ae(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent),i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),r.getAttribute(`data-b64`)!==null&&(e=te(e)),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function ie(e,t,n){if(v.size>0){let t=ae(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function ae(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${_(...e)}"]`}return n}var oe=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,se=/^\/\((?:.+)\)$/;function ce(e){let t=[];return{pattern:e===`/`||se.test(e)?/^\/$/:RegExp(`^${ue(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return fe(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return fe(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=oe.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return fe(e)}).join(``)}).join(``)}/?$`),params:t}}function le(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function ue(e){return e.slice(1).split(`/`).filter(le)}function de(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0)if(s.rest)c=``;else continue;if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function fe(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function pe({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=ce(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return de(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function me(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function he(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var y=globalThis.__sveltekit_644wac?.base??``,ge=globalThis.__sveltekit_644wac?.assets??y??``,_e=`1780274074793`,ve=`sveltekit:snapshot`,ye=`sveltekit:scroll`,be=`sveltekit:states`,xe=`sveltekit:pageurl`,b=`sveltekit:history`,x=`sveltekit:navigation`,S={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},Se=location.origin;function Ce(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function C(){return{x:pageXOffset,y:pageYOffset}}function w(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var we={...S,"":S.hover};function Te(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function Ee(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=Te(e)}}function De(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||E(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===Se&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function T(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=w(s,`preload-code`)),i===null&&(i=w(s,`preload-data`)),t===null&&(t=w(s,`keepfocus`)),n===null&&(n=w(s,`noscroll`)),a===null&&(a=w(s,`reload`)),o===null&&(o=w(s,`replacestate`)),s=Te(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:we[r??`off`],preload_data:we[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Oe(e){let t=i(e),n=!0;function r(){n=!0,t.update(e=>e)}function a(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:r,set:a,subscribe:o}}var ke={v:g};function Ae(){let{set:e,subscribe:t}=i(!1);async function n(){clearTimeout(void 0);try{let t=await fetch(`${ge}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==_e;return n&&(e(!0),ke.v(),clearTimeout(void 0)),n}catch{return!1}}return{subscribe:t,check:n}}function E(e,t,n){return e.origin!==Se||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function je(e){}Uint8Array.fromBase64,typeof process==`object`&&process.versions?.node;var Me=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);new Set([...Me,`entries`]);var Ne=new Set([...Me]);new Set([...Ne,`actions`,`entries`]),new Set([`GET`,`POST`,`PATCH`,`PUT`,`DELETE`,`OPTIONS`,`HEAD`,`fallback`,`prerender`,`trailingSlash`,`config`,`entries`]);function Pe(e){return e.filter(e=>e!=null)}function D(e,t){return e+`/`+t}function Fe(e){return e instanceof l||e instanceof d?e.status:500}function Ie(e){return e instanceof d?e.text:`Internal Error`}var O,k,Le,Re=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),ze=`a:`;Re?(O={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(ze)},k={current:null},Le={current:!1}):(O=new class{#e=s({});get data(){return c(this.#e)}set data(e){r(this.#e,e)}#t=s(null);get form(){return c(this.#t)}set form(e){r(this.#t,e)}#n=s(null);get error(){return c(this.#n)}set error(e){r(this.#n,e)}#r=s({});get params(){return c(this.#r)}set params(e){r(this.#r,e)}#i=s({id:null});get route(){return c(this.#i)}set route(e){r(this.#i,e)}#a=s({});get state(){return c(this.#a)}set state(e){r(this.#a,e)}#o=s(-1);get status(){return c(this.#o)}set status(e){r(this.#o,e)}#s=s(new URL(ze));get url(){return c(this.#s)}set url(e){r(this.#s,e)}},k=new class{#e=s(null);get current(){return c(this.#e)}set current(e){r(this.#e,e)}},Le=new class{#e=s(!1);get current(){return c(this.#e)}set current(e){r(this.#e,e)}},ke.v=()=>Le.current=!0);function Be(e){Object.assign(O,e)}var Ve={spanContext(){return He},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},He={traceId:``,spanId:``,traceFlags:0},{onMount:Ue,tick:We}=o,Ge=t??(e=>e()),Ke=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),A=null,j=me(`sveltekit:scroll`)??{},M=me(`sveltekit:snapshot`)??{},N={url:Oe({}),page:Oe({}),navigating:i(null),updated:Ae()};function qe(e){j[e]=C()}function Je(e,t){let n=e+1;for(;j[n];)delete j[n],n+=1;for(n=t+1;M[n];)delete M[n],n+=1}function P(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(g)}async function Ye(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(y||`/`);e&&await e.update()}}var Xe,Ze,F,I,Qe,L,R=[],z=[],B=null;function V(){B?.fork?.then(e=>e?.discard()),B=null}var H=new Map,$e=new Set,et=new Set,U=new Set,W={branch:[],error:null,url:null,nav:null},tt=!1,nt=!1,rt=!0,G=!1,K=!1,it=!1,at=!1,ot,q,J,Y,st=new Set,ct=new Map,lt=new Map;async function ut(e,t,n){globalThis.__sveltekit_644wac&&(globalThis.__sveltekit_644wac.query,globalThis.__sveltekit_644wac.prerender),document.URL!==location.href&&(location.href=location.href),L=e,await e.hooks.init?.(),Xe=pe(e),I=document.documentElement,Qe=t,Ze=e.nodes[0],F=e.nodes[1],Ze(),F(),q=history.state?.[b],J=history.state?.[x],q||(q=J=Date.now(),history.replaceState({...history.state,[b]:q,[x]:J},``));let r=j[q];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await zt(Qe,n)):(await Z({type:`enter`,url:Ce(L.hash?Wt(new URL(location.href)):location.href),replace_state:!0}),i()),Rt()}function dt(){R.length=0,at=!1}function ft(e){z.some(e=>e?.snapshot)&&(M[e]=z.map(e=>e?.snapshot?.capture()))}function pt(e){M[e]?.forEach((e,t)=>{z[t]?.snapshot?.restore(e)})}function mt(){qe(q),he(ye,j),ft(J),he(ve,M)}async function ht(e,t,r,i){let a,o;t.invalidateAll&&V(),await Z({type:`goto`,url:Ce(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:r,nav_token:i,accept:()=>{if(t.invalidateAll){at=!0,a=new Set;for(let[e,t]of ct)for(let n of t.keys())a.add(D(e,n));o=new Set;for(let[e,t]of lt)for(let n of t.keys())o.add(D(e,n))}t.invalidate&&t.invalidate.forEach(It)}}),t.invalidateAll&&n().then(n).then(()=>{for(let[e,t]of ct)for(let[n,{resource:r}]of t)a?.has(D(e,n))&&r.refresh();for(let[e,t]of lt)for(let[n,{resource:r}]of t)o?.has(D(e,n))&&r.reconnect()})}async function gt(e){if(e.id!==B?.id){V();let t={};st.add(t),B={id:e.id,token:t,promise:Et({...e,preload:t}).then(e=>(st.delete(t),e.type===`loaded`&&e.state.error&&V(),e)),fork:null}}return B.promise}async function _t(e){let t=(await X(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function vt(e,t,n){let r={params:W.params,route:{id:W.route?.id??null},url:new URL(location.href)};if(W={...e.state,nav:r},Be(e.props.page),ot=new L.root({target:t,props:{...e.props,stores:N,components:z},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),pt(J),n){let e={from:null,to:{...r,scroll:j[q]??C()},willUnload:!1,type:`enter`,complete:Promise.resolve()};U.forEach(t=>t(e))}nt=!0}async function yt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(y&&(e.pathname===y||e.pathname===y+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=f(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Pe(n).map(e=>e.node.component),page:$(O)}};s!==void 0&&(l.props.form=s);let u={},d=!O,p=0;for(let e=0;e<Math.max(n.length,W.branch.length);e+=1){let t=n[e],r=W.branch[e];t?.data!==r?.data&&(d=!0),t&&(u={...u,...t.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!W.url||e.href!==W.url.href||W.error!==a||s!==void 0&&s!==O.form||d)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:d?u:O.data}),l}async function bt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o=null,s=!0,c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},l=await e();if(l.universal?.load){function e(...e){for(let t of e){let{href:e}=new URL(t,n);c.dependencies.add(e)}}let u={tracing:{enabled:!1,root:Ve,current:Ve},route:new Proxy(i,{get:(e,t)=>(s&&(c.route=!0),e[t])}),params:new Proxy(r,{get:(e,t)=>(s&&c.params.add(t),e[t])}),data:a?.data??null,url:h(n,()=>{s&&(c.url=!0)},e=>{s&&c.search_params.add(e)},L.hash),async fetch(t,r){t instanceof Request&&(r={body:t.method===`GET`||t.method===`HEAD`?void 0:await t.blob(),cache:t.cache,credentials:t.credentials,headers:[...t.headers].length>0?t?.headers:void 0,integrity:t.integrity,keepalive:t.keepalive,method:t.method,mode:t.mode,redirect:t.redirect,referrer:t.referrer,referrerPolicy:t.referrerPolicy,signal:t.signal,...r});let{resolved:i,promise:a}=xt(t,r,n);return s&&e(i.href),a},setHeaders:g,depends:e,parent(){return s&&(c.parent=!0),t()},untrack(e){s=!1;try{return e()}finally{s=!0}}};o=await l.universal.load.call(null,u)??null}return{node:l,loader:e,server:a,universal:l.universal?.load?{type:`data`,data:o,uses:c}:null,data:o??a?.data??null,slash:l.universal?.trailingSlash??a?.slash}}function xt(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:nt?ie(r,i.href,t):re(r,t)}}function St(e,t,n,r,i,a){if(at)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==W.params[e])return!0;for(let e of i.dependencies)if(R.some(t=>t(new URL(e))))return!0;return!1}function Ct(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function wt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Tt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:$(O),constructors:[]}}}async function Et({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(B?.id===e)return st.delete(B.token),B.promise;let{errors:o,layouts:s,leaf:c}=i,d=[...s,c];o.forEach(e=>e?.().catch(g)),d.forEach(e=>e?.[1]().catch(g));let f=W.url?e!==jt(W.url):!1,p=W.route?i.id!==W.route.id:!1,ee=wt(W.url,n),m=!1,h=d.map(async(e,t)=>{if(!e)return;let a=W.branch[t];return e[1]===a?.loader&&!St(m,p,f,ee,a.universal?.uses,r)?a:(m=!0,bt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await h[n])?.data);return e},server_data_node:Ct(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of h)e.catch(g);let _=[];for(let e=0;e<d.length;e+=1)if(d[e])try{_.push(await h[e])}catch(t){if(t instanceof u)return{type:`redirect`,location:t.location};if(st.has(a))return Tt({error:await Q(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Fe(t),c;if(t instanceof l)c=t.body;else{if(await N.updated.check())return await Ye(),await P(n);c=await Q(t,{params:r,url:n,route:{id:i.id}})}let d=await Dt(e,_,o);return d?yt({url:n,params:r,branch:_.slice(0,d.idx).concat(d.node),errors:o,status:s,error:c,route:i}):await Nt(n,{id:i.id},c,s)}else _.push(void 0);return yt({url:n,params:r,branch:_,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Dt(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Ot({status:e,error:t,url:n,route:r}){let i={};try{return yt({url:n,params:i,branch:[await bt({loader:Ze,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:Ct(null)}),{node:await F(),loader:F,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(e){if(e instanceof u)return ht(new URL(e.location,location.href),{},0);throw e}}async function kt(e){let t=e.href;if(H.has(t))return H.get(t);let n;try{let r=(async()=>{let t=await L.hooks.reroute({url:new URL(e),fetch:async(t,n)=>xt(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);L.hash?n.hash=t:n.pathname=t,t=n}return t})();H.set(t,r),n=await r}catch{H.delete(t);return}return n}async function X(e,t){if(e&&!E(e,y,L.hash)){let n=await kt(e);if(!n)return;let r=At(n);for(let n of Xe){let i=n.exec(r);if(i)return{id:jt(e),invalidating:t,route:n,params:ee(i),url:e}}}}function At(e){return p(L.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(y.length))||`/`}function jt(e){return(L.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Mt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=Ut(W,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return G||$e.forEach(e=>e(c)),o?null:s}async function Z({type:t,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:u={},accept:f=g,block:p=g,event:ee}){let m=Y;Y=u;let h=await X(r,!1),_=t===`enter`?Ut(W,h,r,t):Mt({url:r,type:t,delta:i?.delta,intent:h,scroll:i?.scroll,event:ee});if(!_){p(),Y===u&&(Y=m);return}let te=q,ne=J;f(),G=!0,nt&&_.navigation.type!==`enter`&&N.navigating.set(k.current=_.navigation);let v=h&&await Et(h);if(!v){if(E(r,y,L.hash))return await P(r,s);v=await Nt(r,{id:null},await Q(new d(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=h?.url||r,Y!==u)return _.reject(Error(`navigation aborted`)),!1;if(v.type===`redirect`){if(l<20){await Z({type:t,url:new URL(v.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:u}),_.fulfil(void 0);return}v=await Ot({status:500,error:await Q(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}})}else v.props.page.status>=400&&await N.updated.check()&&(await Ye(),await P(r,s));if(dt(),qe(te),ft(ne),v.props.page.url.pathname!==r.pathname&&(r.pathname=v.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[b]:q+=e,[x]:J+=e,[be]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||Je(q,J)}let re=h&&B?.id===h.id?B.fork:null;B?.fork&&!re&&V(),B=null,v.props.page.state=c;let ie;if(nt){let t=(await Promise.all(Array.from(et,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{U.delete(e)})}t.push(e),t.forEach(e=>{U.add(e)})}let n=_.navigation.to;W={...v.state,nav:{params:n.params,route:n.route,url:n.url}},v.props.page&&(v.props.page.url=r);let i=re&&await re;i?ie=i.commit():(A=null,ot.$set(v.props),A&&Object.assign(v.props.page,A),Be(v.props.page),ie=e?.()),it=!0}else await vt(v,Qe,!1);let{activeElement:ae}=document;if(await ie,await n(),await n(),Y!==u)return _.reject(Error(`navigation aborted`)),!1;v.props.page&&A&&Object.assign(v.props.page,A);let oe=null;if(rt){let e=i?i.scroll:o?C():null;e?scrollTo(e.x,e.y):(oe=r.hash&&document.getElementById(Gt(r)))?oe.scrollIntoView():scrollTo(0,0)}let se=document.activeElement!==ae&&document.activeElement!==document.body;!a&&!se&&Ht(r,!oe),rt=!0,G=!1,t===`popstate`&&pt(J),_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=C()),U.forEach(e=>e(_.navigation)),N.navigating.set(k.current=null)}async function Nt(e,t,n,r,i){return e.origin===Se&&e.pathname===location.pathname&&!tt?await Ot({status:r,error:n,url:e,route:t}):await P(e,i)}function Pt(){let e,t={element:void 0,href:void 0},n;I.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{a(n,S.hover)},20)});function r(e){e.defaultPrevented||a(e.composedPath()[0],S.tap)}I.addEventListener(`mousedown`,r),I.addEventListener(`touchstart`,r,{passive:!0});let i=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(_t(new URL(t.target.href)),i.unobserve(t.target))},{threshold:0});async function a(e,r){let i=Ee(e,I),a=i===t.element&&i?.href===t.href&&r>=n;if(!i||a)return;let{url:o,external:s,download:c}=De(i,y,L.hash);if(s||c)return;let l=T(i),u=o&&jt(W.url)===jt(o);if(!(l.reload||u))if(r<=l.preload_data){t={element:i,href:i.href},n=S.tap;let e=await X(o,!1);if(!e)return;gt(e)}else r<=l.preload_code&&(t={element:i,href:i.href},n=r,_t(o))}function o(){i.disconnect();for(let e of I.querySelectorAll(`a`)){let{url:t,external:n,download:r}=De(e,y,L.hash);if(n||r)continue;let a=T(e);a.reload||(a.preload_code===S.viewport&&i.observe(e),a.preload_code===S.eager&&_t(t))}}U.add(o),o()}function Q(e,t){if(e instanceof l)return e.body;let n=Fe(e),r=Ie(e);return L.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Ft(e,t={}){return e=new URL(Ce(e)),e.origin===Se?ht(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function It(e){if(typeof e==`function`)R.push(e);else{let{href:t}=new URL(e,location.href);R.push(e=>e.href===t)}}function Lt(e,t){let n={[b]:q,[x]:J,[xe]:O.url.href,[be]:t};history.replaceState(n,``,Ce(e)),O.state=t,ot.$set({page:Ge(()=>$(O))})}function Rt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(mt(),!G){let e=Ut(W,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};$e.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&mt()}),!navigator.connection?.saveData&&!/2g/.test(navigator.connection?.effectiveType)&&Pt(),I.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=Ee(t.composedPath()[0],I);if(!n)return;let{url:r,external:i,target:a,download:o}=De(n,y,L.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=T(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol===`https:`||r.protocol===`http:`)||o)return;let[c,l]=(L.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Mt({url:r,type:`link`,event:t})?G=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=W.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(K=!0,qe(q),e(r),!s.replace_state)return;K=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),I.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(E(r,y,!1))return;let i=e.target,a=T(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Vt)if(t.state?.[`sveltekit:history`]){let n=t.state[b];if(Y={},n===q)return;let r=j[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[x],s=W.url?m(location)===m(W.url):!1;if(o===J&&(it||s)){i!==O.state&&(O.state=i),e(a),j[q]=C(),r&&scrollTo(r.x,r.y),q=n;return}let c=n-q;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{q=n,J=o},block:()=>{history.go(-c)},nav_token:Y,event:t})}else K||(e(new URL(location.href)),L.hash&&location.reload())}),addEventListener(`hashchange`,()=>{K&&(K=!1,history.replaceState({...history.state,[b]:++q,[x]:J},``,location.href))});for(let e of document.querySelectorAll(`link`))Ke.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&N.navigating.set(k.current=null)});function e(e){W.url=O.url=e,N.page.set($(O)),N.page.notify()}}async function zt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){tt=!0;let l=new URL(location.href),d;({params:i={},route:a={id:null}}=await X(l,!1)||{}),d=Xe.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Bt(r.uses)),bt({loader:L.nodes[t],url:l,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:Ct(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await yt({url:l,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof u){await P(new URL(t.location,location.href));return}f=await Ot({status:Fe(t),error:await Q(t,{url:l,params:i,route:a}),url:l,route:a}),e.textContent=``,p=!1}f.props.page&&(f.props.page.state={}),await vt(f,e,p)}function Bt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Vt=!1;function Ht(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=Gt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=C();setTimeout(()=>{let a=history.state;Vt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Vt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function Ut(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(g),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:C()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function $(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Wt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Gt(e){let t;if(L.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{k as a,je as c,N as i,u as l,Lt as n,O as o,ut as r,Le as s,Ft as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as e}from"./Bp2_Vghh.js";var t=class extends Error{kind;id;constructor(e,t){super(`${e} ${t} not found in feature`),this.kind=e,this.id=t,this.name=`EntityNotFoundInFeatureError`}},n=(e,n,r,i)=>{let a=!1,o=e.map(e=>e.id===n?(a=!0,i(e)):e);if(!a)throw new t(r,n);return o},r=(e,t,r)=>({...e,surfaces:n(e.surfaces,String(t),`surface`,r)}),i=(e,t,r)=>({...e,actions:n(e.actions,String(t),`action`,r)}),a=(e,t)=>({...e,surfaces:[...e.surfaces,t]}),o=(e,t)=>({...e,surfaces:e.surfaces.filter(e=>e.id!==t)}),s=(e,t,n)=>{if(t===n||t<0||n<0||t>=e.length||n>=e.length)return e;let r=e.slice(),i=r[t];return r[t]=r[n],r[n]=i,r},c=(e,t)=>{let n=h(e,e[t].id),r=t;for(let i=t+1;i<e.length&&!(h(e,e[i].id)<=n);i+=1)r=i;return{start:t,end:r}},l=(e,t,n)=>{let r=e.surfaces,i=r.findIndex(e=>e.id===t);if(i<0)return e;let a=h(r,t),o=c(r,i);if(n===1){let t=o.end+1;if(t>=r.length||h(r,r[t].id)!==a)return e;let n=c(r,t);return{...e,surfaces:[...r.slice(0,o.start),...r.slice(n.start,n.end+1),...r.slice(o.start,o.end+1),...r.slice(n.end+1)]}}if(o.start===0)return e;let s=o.start-1;if(h(r,r[s].id)<a)return e;let l=s;for(;l>0&&h(r,r[l].id)>a;)--l;return{...e,surfaces:[...r.slice(0,l),...r.slice(o.start,o.end+1),...r.slice(l,o.start),...r.slice(o.end+1)]}},u=(e,t)=>{let n=e.findIndex(e=>e.id===t);if(n<=0)return!1;let r=h(e,t);return h(e,e[n-1].id)>=r},d=(e,t)=>{let n=e.findIndex(e=>e.id===t);if(n<0)return!1;let r=h(e,t),i=c(e,n).end+1;return i>=e.length?!1:h(e,e[i].id)===r},f=(e,t,n)=>{if(n.targetId===t)return e;let r=e.surfaces,i=r.findIndex(e=>e.id===t),a=r.findIndex(e=>e.id===n.targetId);if(i<0||a<0)return e;let o=c(r,i);if(a>=o.start&&a<=o.end)return e;let s=r[a],l=n.kind===`inside`?s.id:s.parentSurfaceId??null;if(l===t||l!==null&&p(r,l,t))return e;let u=[{...r[i],parentSurfaceId:l??void 0},...r.slice(o.start+1,o.end+1)],d=[...r.slice(0,o.start),...r.slice(o.end+1)],f=d.findIndex(e=>e.id===n.targetId);if(f<0)return e;let m;return m=n.kind===`before`?f:c(d,f).end+1,{...e,surfaces:[...d.slice(0,m),...u,...d.slice(m)]}},p=(e,t,n)=>{let r=e.find(e=>e.id===t),i=0;for(;r?.parentSurfaceId&&i<32;){if(r.parentSurfaceId===n)return!0;r=e.find(e=>e.id===r.parentSurfaceId),i++}return!1},m=(e,t,n)=>n!==null&&(n===t||!e.surfaces.some(e=>e.id===n)||p(e.surfaces,n,t))?e:r(e,t,e=>({...e,parentSurfaceId:n??void 0})),h=(e,t)=>{let n=0,r=e.find(e=>e.id===t);for(;r?.parentSurfaceId&&n<32;){let t=e.find(e=>e.id===r.parentSurfaceId);if(!t)break;r=t,n++}return n},g=(e,t,n)=>r(e,t,e=>({...e,...n})),_=(e,t,n)=>r(e,t,e=>({...e,stateDefinitions:[...e.stateDefinitions,n]})),v=(e,n,i,a)=>r(e,n,e=>{let n=e.stateDefinitions.find(e=>e.id===i);if(!n)throw new t(`stateDefinition`,String(i));let r={...n,...a},o=`enumValues`in a&&!y(n.enumValues,r.enumValues),s=`type`in a&&n.type!==r.type,c=e.stateDefinitions.map(e=>e.id===i?r:e);if(!o&&!s)return{...e,stateDefinitions:c};let l=r.path,u=r.type===`enum`?r.enumValues:void 0,d=r.type===`enum`;return{...e,stateDefinitions:c,actions:e.actions.map(e=>({...e,parameters:e.parameters.map(e=>{if(e.bindToStatePath!==l||e.type!==`enum`)return e;if(!d){let{enumValues:t,...n}=e;return n}return u===void 0?e:{...e,enumValues:u}})}))}}),y=(e,t)=>{if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0},b=(e,t,n)=>r(e,t,e=>({...e,stateDefinitions:e.stateDefinitions.filter(e=>e.id!==n)})),x=(e,t,n)=>r(e,t,e=>({...e,actions:[...e.actions,n]})),S=(e,t,n)=>r(e,t,e=>({...e,actions:e.actions.filter(e=>e.id!==n)})),C=(e,t)=>({...e,surfaces:e.surfaces.map(e=>({...e,actions:e.actions.map(e=>{if(e.id!==t||e.evolution===void 0)return e;let{evolution:n,...r}=e;return r})}))}),w=(e,t)=>({...e,surfaces:e.surfaces.map(e=>({...e,actions:e.actions.map(e=>e.id===t&&e.evolution!==void 0&&e.evolution.dismissed!==!0?{...e,evolution:{...e.evolution,dismissed:!0}}:e)}))}),T=(e,t,n,i)=>r(e,t,e=>{let t=e.actions.findIndex(e=>e.id===n);return t<0?e:{...e,actions:s(e.actions,t,t+i)}}),E=(e,t,n,a,o)=>r(e,t,e=>i(e,n,e=>{let t=e.parameters.findIndex(e=>e.id===a);return t<0?e:{...e,parameters:s(e.parameters,t,t+o)}})),D=(e,t,n,i)=>r(e,t,e=>{let t=e.stateDefinitions.findIndex(e=>e.id===n);return t<0?e:{...e,stateDefinitions:s(e.stateDefinitions,t,t+i)}}),O=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,...a}))),k=(t,a,o,s,c)=>r(t,a,t=>{let r=i(t,o,e=>({...e,parameters:n(e.parameters,String(s),`parameter`,e=>({...e,...c}))})),a=r.actions.find(e=>e.id===o)?.parameters.find(e=>e.id===s);if(!a||!a.bindToStatePath)return r;let l=a.bindToStatePath,u=e(a.type);return{...r,stateDefinitions:r.stateDefinitions.map(e=>e.path===l?{...e,type:u,enumValues:a.type===`enum`?a.enumValues:void 0}:e)}}),A=(e,t,n)=>r(e,t,e=>({...e,rules:[...e.rules,n]})),j=(e,t,n)=>r(e,t,e=>({...e,rules:e.rules.filter(e=>e.id!==n)})),M=(e,t,i)=>r(e,t,e=>({...e,rules:n(e.rules,String(i.id),`rule`,()=>i)})),N=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,rules:[...e.rules,a]}))),P=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,rules:e.rules.filter(e=>e.id!==a)}))),F=(e,t,a,o)=>r(e,t,e=>i(e,a,e=>({...e,rules:n(e.rules,String(o.id),`rule`,()=>o)}))),I=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,effects:[...e.effects,a]}))),ee=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,effects:e.effects.filter(e=>e.id!==a)}))),L=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,invariants:[...e.invariants,a]}))),R=(e,t,a,o,s)=>r(e,t,e=>i(e,a,e=>({...e,invariants:n(e.invariants,String(o),`invariant`,e=>({...e,...s}))}))),z=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,invariants:e.invariants.filter(e=>e.id!==a)}))),B=(e,t,n)=>r(e,t,e=>({...e,invariants:[...e.invariants,n]})),V=(e,t,i,a)=>r(e,t,e=>({...e,invariants:n(e.invariants,String(i),`invariant`,e=>({...e,...a}))})),H=(e,t,n)=>r(e,t,e=>({...e,invariants:e.invariants.filter(e=>e.id!==n)})),U=(e,t)=>({...e,featureInvariants:[...e.featureInvariants??[],t]}),W=(e,t,r)=>({...e,featureInvariants:n(e.featureInvariants??[],String(t),`featureInvariant`,e=>({...e,...r}))}),G=(e,t)=>({...e,featureInvariants:(e.featureInvariants??[]).filter(e=>e.id!==t)}),K=(e,t,n)=>r(e,t,e=>({...e,transitions:[...e.transitions,n]})),q=(e,t,i,a)=>r(e,t,e=>({...e,transitions:n(e.transitions,String(i),`transition`,e=>({...e,...a}))})),J=(e,t,n)=>r(e,t,e=>({...e,transitions:e.transitions.filter(e=>e.id!==n)})),Y=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,scenarios:[...e.scenarios??[],a]}))),X=(e,t,a,o,s)=>r(e,t,e=>i(e,a,e=>({...e,scenarios:n(e.scenarios??[],String(o),`scenario`,e=>({...e,...s}))}))),Z=(e,t,n,a)=>r(e,t,e=>i(e,n,e=>({...e,scenarios:(e.scenarios??[]).filter(e=>e.id!==a)}))),Q=(e,t)=>({...e,resources:[...e.resources,t]}),$=(e,t)=>({...e,resources:n(e.resources,String(t.id),`resource`,()=>t)}),te=(e,t)=>({...e,resources:e.resources.filter(e=>e.id!==t)}),ne=(e,t)=>({...e,entities:[...e.entities,t]}),re=(e,t)=>({...e,entities:n(e.entities,String(t.id),`entity`,()=>t)}),ie=(e,t)=>({...e,entities:e.entities.filter(e=>e.id!==t)}),ae=(e,t)=>({...e,events:[...e.events??[],t]}),oe=(e,t)=>({...e,events:n(e.events??[],String(t.id),`event`,()=>t)}),se=(e,t)=>({...e,events:(e.events??[]).filter(e=>e.id!==t)});export{q as $,H as A,h as B,f as C,se as D,ie as E,b as F,R as G,re as H,o as I,$ as J,V as K,J as L,P as M,j as N,G as O,Z as P,v as Q,g as R,l as S,ee as T,oe as U,O as V,W,M as X,F as Y,X as Z,C as _,U as a,E as b,Q as c,Y as d,_ as f,u as g,d as h,ae as i,te as j,z as k,N as l,K as m,I as n,L as o,a as p,k as q,ne as r,B as s,x as t,A as u,w as v,S as w,D as x,T as y,m as z};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{l as e}from"./DatGSObE.js";function t(t,n){throw new e(t,n.toString())}export{t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
�+�import{l as e}from"./DatGSObE.js";function t(t,n){throw new e(t,n.toString())}export{t};
|
|
Binary file
|