collabmd 0.1.40 → 0.1.41
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 +68 -0
- package/dist/client/assets/{CodeMirrorEditor-UCMRAMCV-CjJV4GGp.js → CodeMirrorEditor-UCMRAMCV-DHEFSr_E.js} +1 -1
- package/dist/client/assets/{ar-SA-NXDWD63E-BfWwfLiP.js → ar-SA-NXDWD63E-S8m2UyIj.js} +1 -1
- package/dist/client/assets/{arc-B59iLcOr.js → arc-OeTCl9Oy.js} +1 -1
- package/dist/client/assets/architecture-7EHR7CIX-BQpCYB3J.js +1 -0
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-Cs4u0ty-.js → architectureDiagram-3BPJPVTR-CDqq0KA0.js} +2 -2
- package/dist/client/assets/{az-AZ-MXSORGZV-D3w9H6nC.js → az-AZ-MXSORGZV-DSzWvZBB.js} +1 -1
- package/dist/client/assets/bases-preview-controller-CBHDzzot.js +143 -0
- package/dist/client/assets/{bg-BG-O6MV2KSF-CqITeIE6.js → bg-BG-O6MV2KSF-C5nBekx3.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-C4RLg7wo.js → blockDiagram-GPEHLZMM-Z9jBLpGg.js} +1 -1
- package/dist/client/assets/{bn-IN-MMW2ORAC-BZcsVFhS.js → bn-BD-T2VJNT7N-D-8xXOzM.js} +1 -1
- package/dist/client/assets/{bn-BD-T2VJNT7N-DRxwOMG_.js → bn-IN-MMW2ORAC-D-8xXOzM.js} +1 -1
- package/dist/client/assets/button-2ZnWQkWV.js +1 -0
- package/dist/client/assets/{c4Diagram-AAUBKEIU-DMK9WIWS.js → c4Diagram-AAUBKEIU-UA_Eopag.js} +1 -1
- package/dist/client/assets/{ca-ES-MKBCGNOG-D2cujUJ7.js → ca-ES-MKBCGNOG-B3Ly68p3.js} +1 -1
- package/dist/client/assets/channel-CpvwJaGK.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-Beqll06X.js → chunk-2J33WTMH-DjYq2kZ3.js} +1 -1
- package/dist/client/assets/{chunk-3OPIFGDE-Kf30X6bZ.js → chunk-3OPIFGDE-DucrRywM.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-BVNkn9EH.js → chunk-4BX2VUAB-DcdHBPEH.js} +1 -1
- package/dist/client/assets/{chunk-4EGX6M5U-6L36_8q8.js → chunk-4EGX6M5U-BfCFom1o.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-CaPPZbdp.js → chunk-55IACEB6-B7ycySPI.js} +1 -1
- package/dist/client/assets/{chunk-5DO6E6H7-BpgUf0HE.js → chunk-5DO6E6H7-DP8QnaJj.js} +1 -1
- package/dist/client/assets/{chunk-5ZQYHXKU-BJyABJSy.js → chunk-5ZQYHXKU-C4q4UVKa.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-DNANnyAn.js → chunk-727SXJPM-DdWH2cfs.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-D-ou9vaq.js → chunk-AQP2D5EJ-D8o8QwFY.js} +1 -1
- package/dist/client/assets/{chunk-BR22UD5L-CHoFxkAQ.js → chunk-BR22UD5L-CT6fcRkN.js} +1 -1
- package/dist/client/assets/{chunk-BSJP7CBP-AmT6zI00.js → chunk-BSJP7CBP-COmh28sk.js} +1 -1
- package/dist/client/assets/{chunk-CSCIHK7Q-BIoF4mTy.js → chunk-CSCIHK7Q-D0bHjxCO.js} +2 -2
- package/dist/client/assets/{chunk-FHYWG6QK-qLbgayZT.js → chunk-FHYWG6QK-Ce318laP.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-DD6CIukb.js → chunk-FMBD7UC4-CM39cCCr.js} +1 -1
- package/dist/client/assets/{chunk-KSCS5N6A-DSHzBB4H.js → chunk-KSCS5N6A-Bk33m7yK.js} +1 -1
- package/dist/client/assets/{chunk-L5ZTLDWV-Ca0loQr2.js → chunk-L5ZTLDWV-J2sQu4Os.js} +1 -1
- package/dist/client/assets/{chunk-LZXEDZCA-D4QboL2E.js → chunk-LZXEDZCA-CTmBbzaL.js} +2 -2
- package/dist/client/assets/chunk-MMN3DZ5N-pTRxhVYl.js +35 -0
- package/dist/client/assets/{chunk-MPE355IW-BGGMthoR.js → chunk-MPE355IW-C_vkbqLj.js} +1 -1
- package/dist/client/assets/{chunk-MZUSXYTE-CXyCvcyW.js → chunk-MZUSXYTE-BnVcgphH.js} +1 -1
- package/dist/client/assets/{chunk-N66VUXT2-CZ58QOjk.js → chunk-N66VUXT2-B6CG-CnY.js} +1 -1
- package/dist/client/assets/{chunk-ND2GUHAM-3Xs0Awks.js → chunk-ND2GUHAM-D-_vkA5V.js} +1 -1
- package/dist/client/assets/{chunk-NNHCCRGN--8l6bbR-.js → chunk-NNHCCRGN-DlpIbxXb.js} +6 -6
- package/dist/client/assets/{chunk-NZK2D7GU-w2jXiKa6.js → chunk-NZK2D7GU-Dc42C0Jt.js} +1 -1
- package/dist/client/assets/{chunk-O5CBEL6O-BFgstMja.js → chunk-O5CBEL6O-DdEDfb8z.js} +1 -1
- package/dist/client/assets/{chunk-PUPMXCY4-JvkUXyIj.js → chunk-PUPMXCY4-BZ88kQjK.js} +1 -1
- package/dist/client/assets/chunk-QZHKN3VN-D5YLQvjj.js +1 -0
- package/dist/client/assets/{chunk-SRAX5OIU-C_UPA-vt.js → chunk-SRAX5OIU-CiRgnkYo.js} +1 -1
- package/dist/client/assets/{chunk-UIBZB4QT-B4OybPy_.js → chunk-UIBZB4QT-r8p3pBHw.js} +1 -1
- package/dist/client/assets/{chunk-WCWK7LTN-BOL8a2ua.js → chunk-WCWK7LTN-DrKYkgXF.js} +1 -1
- package/dist/client/assets/chunk-WU5MYG2G-Cg2iUbET.js +1 -0
- package/dist/client/assets/{chunk-XPW4576I-D5FnFhOk.js → chunk-XPW4576I-BZyvtu42.js} +1 -1
- package/dist/client/assets/{chunk-Z5NKEFVG-GcpeeLo6.js → chunk-Z5NKEFVG-Dknufskm.js} +7 -7
- package/dist/client/assets/classDiagram-4FO5ZUOK-CGWY0cfg.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CGWY0cfg.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-Cx3Qt7pR.js → cose-bilkent-S5V4N54A-BuQb9WEM.js} +1 -1
- package/dist/client/assets/{cs-CZ-V77HGUP7-BXqhmWZb.js → cs-CZ-V77HGUP7-6BCNHMpz.js} +1 -1
- package/dist/client/assets/{cytoscape.esm-B_ygTtvl.js → cytoscape.esm-DelgaX4f.js} +2 -2
- package/dist/client/assets/{da-DK-I5RFNTM4-raD_lQnT.js → da-DK-I5RFNTM4-CVeCWpi2.js} +1 -1
- package/dist/client/assets/{dagre-BM42HDAG-BpURvxT4.js → dagre-BM42HDAG-ux5hA7G6.js} +1 -1
- package/dist/client/assets/{dagre-BcZLxzJJ.js → dagre-Bx709z4p.js} +1 -1
- package/dist/client/assets/{de-CH-WLRDEVBV-CyNG_YAO.js → de-CH-WLRDEVBV-CV-FNCkY.js} +1 -1
- package/dist/client/assets/{de-DE-DTI4WUSC-BAnqlByT.js → de-DE-DTI4WUSC-CV-FNCkY.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-DJH0JVlq.js → diagram-2AECGRRQ-Cx-EPj3F.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-DQG4Q1eS.js → diagram-5GNKFQAL-B6qUTxVg.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-hx21Lv-5.js → diagram-KO2AKTUF-BedClayW.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47--QODJMa9.js → diagram-LMA3HP47-DCwyG0i5.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-CB30hX1a.js → diagram-OG6HWLK6-BZD0jSxR.js} +1 -1
- package/dist/client/assets/diagram-action-icons-aa_KOv9h.js +36 -0
- package/dist/client/assets/{dist-DCqHC6ts.js → dist-B-m0-H59.js} +1 -1
- package/dist/client/assets/dist-B6Q0y0J8.js +1 -0
- package/dist/client/assets/dist-BCQCG0we.js +1 -0
- package/dist/client/assets/{dist-6oqNX0NJ.js → dist-BEyxdnUD.js} +1 -1
- package/dist/client/assets/{dist-Dv_PLWtE.js → dist-BYneHrvV.js} +1 -1
- package/dist/client/assets/dist-BsPHL5xw2.js +1 -0
- package/dist/client/assets/{dist-BBsYBvEp.js → dist-CX-kKEdL.js} +1 -1
- package/dist/client/assets/{dist-DSehUDUA.js → dist-CaLooK5r.js} +1 -1
- package/dist/client/assets/{dist-BOA6xeuH.js → dist-Cd4FT8TV.js} +1 -1
- package/dist/client/assets/{dist-q3smPWAL.js → dist-ClWZ99Dh.js} +1 -1
- package/dist/client/assets/{dist-D5hPoFa5.js → dist-D01mg-Uh.js} +1 -1
- package/dist/client/assets/{dist-CJMPm6rd.js → dist-D36UTodj.js} +1 -1
- package/dist/client/assets/{dist-CtHMYO6t.js → dist-D6YOhZ_d.js} +1 -1
- package/dist/client/assets/{dist-U35xPXYU.js → dist-D8jTFU06.js} +1 -1
- package/dist/client/assets/dist-DGI-0uwF.js +1 -0
- package/dist/client/assets/{dist-D5BVeoD4.js → dist-DGO-wCq8.js} +1 -1
- package/dist/client/assets/dist-DMKYvLqD.js +1 -0
- package/dist/client/assets/{dist-CDsAhnoa.js → dist-DRQhk99i.js} +1 -1
- package/dist/client/assets/{dist-wA96SVn6.js → dist-DScq22KK.js} +1 -1
- package/dist/client/assets/{dist-BQuic6-d.js → dist-DbpddOpB.js} +1 -1
- package/dist/client/assets/{dist-x4M0Qd0y.js → dist-Dl5uZm2T.js} +1 -1
- package/dist/client/assets/{dist-BsTc7qjG.js → dist-DvpEZjAN.js} +1 -1
- package/dist/client/assets/dist-Dw8hKOQm.js +1 -0
- package/dist/client/assets/{dist-Bhn_Fiol.js → dist-G7j-noyR.js} +1 -1
- package/dist/client/assets/dist-PItC1DRE.js +1 -0
- package/dist/client/assets/{dist-CAlqrzaF.js → dist-cMoydUa-.js} +1 -1
- package/dist/client/assets/dist-cTuGB1EW.js +9 -0
- package/dist/client/assets/{dist-DFzJ8okV.js → dist-efgaKpVU.js} +1 -1
- package/dist/client/assets/{dist-Dx8yU-RA.js → dist-nx-MGJIM.js} +1 -1
- package/dist/client/assets/{dist-UnjH15yg.js → dist-pww3cL4Q.js} +7 -7
- package/dist/client/assets/dist-uhQ-mkuh.js +2 -0
- package/dist/client/assets/{dockerfile-D8_6_FRV.js → dockerfile-BLkNEvjs.js} +1 -1
- package/dist/client/assets/drawio-editor-BM_W6Lkj.js +9 -0
- package/dist/client/assets/drawio-embed-controller-BKHnRnaj.js +1 -0
- package/dist/client/assets/drawioEditor-DBfHYCO5.js +2 -0
- package/dist/client/assets/{editor-session-BTPe8PEu.js → editor-session-VueuoR_r.js} +2 -2
- package/dist/client/assets/{el-GR-ZXDJ2OS4-De6xlnXD.js → el-GR-ZXDJ2OS4-DzgGVibO.js} +1 -1
- package/dist/client/assets/{en-CMP6EMR6-Bfz_MnNa.js → en-CMP6EMR6-l-4iz8RC.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-BvMeaml9.js → erDiagram-TEJ5UH35-7XmGIzui.js} +1 -1
- package/dist/client/assets/{es-ES-DYQHAD43-EVQAeFTZ.js → es-ES-DYQHAD43-DP98e8ox.js} +1 -1
- package/dist/client/assets/{eu-ES-QDSYU5Y3-O5XEQp0x.js → eu-ES-QDSYU5Y3-DrEfH-2N.js} +1 -1
- package/dist/client/assets/eventmodeling-FCH6USID-D-VxYsbw.js +1 -0
- package/dist/client/assets/excalidraw-editor-B3ffLqi6.css +1 -0
- package/dist/client/assets/{excalidraw-editor-DzL1T9D9.js → excalidraw-editor-C6fTkMBx.js} +4 -4
- package/dist/client/assets/excalidraw-embed-controller-BKx05cjZ.js +1 -0
- package/dist/client/assets/excalidraw-embed-reconciler-DGiagExg.js +1 -0
- package/dist/client/assets/{excalidraw-mermaid-stub-B5sWezsO.js → excalidraw-mermaid-stub-DE5FTiZB.js} +1 -1
- package/dist/client/assets/excalidraw-scene-DjODomMW.js +176 -0
- package/dist/client/assets/excalidrawEditor-DQD_lLF4.js +2 -0
- package/dist/client/assets/{export-page-BkCqT_2s.js → export-page-D0iHYSPi.js} +4 -4
- package/dist/client/assets/exportDocument-Ct-Zvf7_.js +2 -0
- package/dist/client/assets/{fa-IR-26LZG4PM-BlqI3v_N.js → fa-IR-26LZG4PM-CEwnMxEY.js} +1 -1
- package/dist/client/assets/{factor-Cz-hzBGH.js → factor-D7LVTn2l.js} +1 -1
- package/dist/client/assets/{fi-FI-6YS4KDE4-af5Lkv-j.js → fi-FI-6YS4KDE4-DPKGe_vC.js} +1 -1
- package/dist/client/assets/file-history-view-controller-CK3oHDCT.js +112 -0
- package/dist/client/assets/{flowDiagram-I6XJVG4X-DgXXcK8y.js → flowDiagram-I6XJVG4X-DgTAG2K2.js} +2 -2
- package/dist/client/assets/{fr-FR-BRLLPTZC-CwQyur9E.js → fr-FR-BRLLPTZC-CgMmN9yd.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-BMpbo3vT.js → ganttDiagram-6RSMTGT7-Curra433.js} +1 -1
- package/dist/client/assets/git-diff-view-controller-qorJ_Quo.js +150 -0
- package/dist/client/assets/git-panel-controller-DG8ws6B_.js +203 -0
- package/dist/client/assets/gitGraph-WXDBUCRP-CRS5XD98.js +1 -0
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CCdpTNJZ.js → gitGraphDiagram-PVQCEYII-DVf7-iH0.js} +1 -1
- package/dist/client/assets/{gl-ES-OKUZTLYG-BNEoLCI4.js → gl-ES-OKUZTLYG-qCIGpEXP.js} +1 -1
- package/dist/client/assets/{haxe-CcPA1xnA.js → haxe-DjVOVvNP.js} +1 -1
- package/dist/client/assets/{he-IL-26MGYIU7-WnVF9HP3.js → he-IL-26MGYIU7-_Pd-m9Sj.js} +1 -1
- package/dist/client/assets/{hi-IN-Q4ZOGTP2-DcU7ec07.js → hi-IN-Q4ZOGTP2-B4kd5rva.js} +1 -1
- package/dist/client/assets/{hu-HU-P2OXPSN5-wmJyK1Wq.js → hu-HU-P2OXPSN5-DL2sEPhQ.js} +1 -1
- package/dist/client/assets/{id-ID-2EIKXYN6-BTvn0aFf.js → id-ID-2EIKXYN6-DqXHubyc.js} +1 -1
- package/dist/client/assets/image-MLCQRF34-BT938jMR.js +1 -0
- package/dist/client/assets/index-AdGl0Mjr.js +2 -0
- package/dist/client/assets/index-V7z92VYK.css +1 -0
- package/dist/client/assets/info-J43DQDTF-CdrjkAmK.js +1 -0
- package/dist/client/assets/{infoDiagram-5YYISTIA-oYw2qnNY.js → infoDiagram-5YYISTIA-DT8NjvZp.js} +1 -1
- package/dist/client/assets/input-CXk9Zxz9.js +1 -0
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-BPqURwBR.js → ishikawaDiagram-YF4QCWOH-axeWdm72.js} +1 -1
- package/dist/client/assets/{it-IT-4CFKVXI2-CC_iQxXu.js → it-IT-4CFKVXI2-CyToZF8R.js} +1 -1
- package/dist/client/assets/{ja-JP-MAND2Z4V-ConJI8GA.js → ja-JP-MAND2Z4V-CdMMUzyq.js} +1 -1
- package/dist/client/assets/{javascript-gTK9fxz6.js → javascript-B9TABJff.js} +1 -1
- package/dist/client/assets/javascript-BRzqD9BA.js +1 -0
- package/dist/client/assets/{journeyDiagram-JHISSGLW-CvxY2Fte.js → journeyDiagram-JHISSGLW-_K7qmGID.js} +1 -1
- package/dist/client/assets/{jsx-runtime-IB1e1gmy.js → jsx-runtime-DqMcooe2.js} +1 -1
- package/dist/client/assets/{kaa-HQRTCXTJ-Caqwh_Qr.js → kaa-HQRTCXTJ-D6kVHP9w.js} +1 -1
- package/dist/client/assets/{kab-KAB-JKIKKTGH-DQBmYNc9.js → kab-KAB-JKIKKTGH-XYCYTUmV.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-Ex7702dO.js → kanban-definition-UN3LZRKU-DaPREf-3.js} +1 -1
- package/dist/client/assets/keyboard-shortcuts-Ctp9_GHy.js +1 -0
- package/dist/client/assets/{kk-KZ-HXQ63ZFC-O5qp74q-.js → kk-KZ-HXQ63ZFC-Du2sGLmI.js} +1 -1
- package/dist/client/assets/{km-KH-PKL3LSGX-2wUYTyyo.js → km-KH-PKL3LSGX-B2OnEat4.js} +1 -1
- package/dist/client/assets/{ko-KR-KXLREZX3-CYtUnW5t.js → ko-KR-KXLREZX3-CcxALsEE.js} +1 -1
- package/dist/client/assets/{ku-TR-MJ4IER3X-DtEKOAU3.js → ku-TR-MJ4IER3X-HDyr9f4z.js} +1 -1
- package/dist/client/assets/{line-DRJILpPI.js → line-CbpIuf9e.js} +1 -1
- package/dist/client/assets/{linear-rFRiXd2u.js → linear-BGe2G4b5.js} +1 -1
- package/dist/client/assets/{lt-LT-H6WFQ6FJ-Cs17Ppdf.js → lt-LT-H6WFQ6FJ-BzZe8pg9.js} +1 -1
- package/dist/client/assets/{lv-LV-GOCK6SJW-DYuTyosz.js → lv-LV-GOCK6SJW-CMspwH0q.js} +1 -1
- package/dist/client/assets/main-C8f6FlSO.js +789 -0
- package/dist/client/assets/{mermaid-parser.core-BD_OCbyj.js → mermaid-parser.core-C4gZtCl9.js} +2 -2
- package/dist/client/assets/{mermaid-runtime-CEgpdpwB.js → mermaid-runtime-CX_vmg3J.js} +3 -3
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-D4pwLdMH.js → mindmap-definition-RKZ34NQL-DB1uitpo.js} +1 -1
- package/dist/client/assets/{mr-IN-IXVLDMEQ-CIJFnklt.js → mr-IN-IXVLDMEQ-C6mqoMmX.js} +1 -1
- package/dist/client/assets/{my-MM-YG6MYTTD-em_7TGWX.js → my-MM-YG6MYTTD-Q33bVx2B.js} +1 -1
- package/dist/client/assets/navigation-D173qvIt.css +1 -0
- package/dist/client/assets/{nb-NO-XGWJISD2-BLNgPVDj.js → nb-NO-XGWJISD2-B1jdnBFb.js} +1 -1
- package/dist/client/assets/{nl-NL-XVDVCPNC-CComxzvg.js → nl-NL-XVDVCPNC-DoQkA2lu.js} +1 -1
- package/dist/client/assets/{nn-NO-EMX5MJX5-Cekj8s_-.js → nn-NO-EMX5MJX5-Db3tHf5b.js} +1 -1
- package/dist/client/assets/{nsis-QPGhLAeY.js → nsis-AQ_alPln.js} +1 -1
- package/dist/client/assets/{oc-FR-ROEINTVO-DW-kHJ81.js → oc-FR-ROEINTVO-DLu-4Ze0.js} +1 -1
- package/dist/client/assets/{ordinal-De-qfORd.js → ordinal-hYBb2elL.js} +1 -1
- package/dist/client/assets/{pa-IN-ZYN6SUDY-CnhULOGp.js → pa-IN-ZYN6SUDY-XvJuMxJR.js} +1 -1
- package/dist/client/assets/packet-YPE3B663-r4oAflYS.js +1 -0
- package/dist/client/assets/percentages-5DKR754L-D_KAYeu8.js +1 -0
- package/dist/client/assets/{pica-DcQ1xKp1.js → pica-DjQMjoX_.js} +1 -1
- package/dist/client/assets/pie-LRSECV5Y-DkaVktH1.js +1 -0
- package/dist/client/assets/{pieDiagram-4H26LBE5-C6MCExtR.js → pieDiagram-4H26LBE5-CdDwk3iQ.js} +1 -1
- package/dist/client/assets/{pl-PL-6VTG7PHC-C9rBsz9v.js → pl-PL-6VTG7PHC-DjJq8QfA.js} +1 -1
- package/dist/client/assets/preview-diagram-utils-DnqteI9Q.js +1 -0
- package/dist/client/assets/preview-render-compiler-Dts88fM3.js +35 -0
- package/dist/client/assets/preview-render-compiler-VKNqrOZN.js +1 -0
- package/dist/client/assets/preview-render-profile-CU6rvKx3.js +23 -0
- package/dist/client/assets/preview-render-worker-CFKBP7xz.js +59 -0
- package/dist/client/assets/{pt-BR-5YFKRR5G-BVyxOCjg.js → pt-BR-5YFKRR5G-Dg2lIz1V.js} +1 -1
- package/dist/client/assets/{pt-PT-GEIXXZ67-5CbVaVay.js → pt-PT-GEIXXZ67-COIg15TS.js} +1 -1
- package/dist/client/assets/{pug-lkTEco3G.js → pug-Ck0YjsGM.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CD77Rny0.js → quadrantDiagram-W4KKPZXB-C6n3eYzo.js} +1 -1
- package/dist/client/assets/{quick-switcher-controller-CVJBt6V9.js → quick-switcher-controller-CVRUPEKp.js} +1 -1
- package/dist/client/assets/radar-GUYGQ44K-Bjhhjq-k.js +1 -0
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-DdKM6ZWI.js → requirementDiagram-4Y6WPE33-B-sVI-jx.js} +1 -1
- package/dist/client/assets/{ro-RO-E2P6TFZI-DANwkfep.js → ro-RO-E2P6TFZI-CdCIa8N3.js} +1 -1
- package/dist/client/assets/{room-Cha55fQg.js → room-CpCcgtG8.js} +1 -1
- package/dist/client/assets/{ru-RU-YBIIY43T-BWZSxhA5.js → ru-RU-YBIIY43T-C5TT1jTX.js} +1 -1
- package/dist/client/assets/runtime-config-CDgeuPWN.js +1 -0
- package/dist/client/assets/runtime-paths-DvpihCEq.js +1 -0
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-BH3_LNkI.js → sankeyDiagram-5OEKKPKP-EY2cdbUV.js} +1 -1
- package/dist/client/assets/segmented-control-DhUkW6ro.js +1 -0
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-CCGL7FMW.js → sequenceDiagram-3UESZ5HK-D6h6knAb.js} +2 -2
- package/dist/client/assets/{si-LK-673C2CI2-Bqr808AJ.js → si-LK-673C2CI2-f_5ZzunQ.js} +1 -1
- package/dist/client/assets/{sk-SK-CKZHQ4AP-B2PvXXeU.js → sk-SK-CKZHQ4AP-4jimlXp1.js} +1 -1
- package/dist/client/assets/{sl-SI-557H2GWM-IPVDhzgb.js → sl-SI-557H2GWM-BnZ04ZfX.js} +1 -1
- package/dist/client/assets/{src-BshjqEL2.js → src-DSz_pbBa.js} +1 -1
- package/dist/client/assets/{stateDiagram-AJRCARHV-ljJcYRX4.js → stateDiagram-AJRCARHV-Ca8ZuIR2.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DGRDwQhE.js +1 -0
- package/dist/client/assets/subset-shared.chunk-DcaFK0zo.js +1 -0
- package/dist/client/assets/{subset-worker.chunk-BW_EF59g.js → subset-worker.chunk-CVu8sQYq.js} +1 -1
- package/dist/client/assets/{sv-SE-XOPKKDWS-CQipq9Nf.js → sv-SE-XOPKKDWS-B2uKmd06.js} +1 -1
- package/dist/client/assets/{ta-IN-XBH7DQI3-Cj2o89vS.js → ta-IN-XBH7DQI3-Bld4KtCz.js} +1 -1
- package/dist/client/assets/{th-TH-TOCWH3R4-IOX-l13w.js → th-TH-TOCWH3R4-DUlvnJTX.js} +1 -1
- package/dist/client/assets/{timeline-definition-PNZ67QCA-CUVPem2o.js → timeline-definition-PNZ67QCA-BAhvj49M.js} +1 -1
- package/dist/client/assets/{tr-TR-GXW6CYY5-DBVLEsZg.js → tr-TR-GXW6CYY5-BXTTqJlZ.js} +1 -1
- package/dist/client/assets/treeView-BLDUP644-DbX5QpdZ.js +1 -0
- package/dist/client/assets/treemap-LRROVOQU-DT4YRX1p.js +1 -0
- package/dist/client/assets/turtle-Cx3rYX2g.js +1 -0
- package/dist/client/assets/{uk-UA-IJKTNUDG-C5kaymku.js → uk-UA-IJKTNUDG-DbQpa2ug.js} +1 -1
- package/dist/client/assets/{uz-UZ-TBZZEA4V-lMna4tx1.js → uz-UZ-TBZZEA4V-Dt35hEMk.js} +1 -1
- package/dist/client/assets/vault-api-client-BPVNCJZC.js +1 -0
- package/dist/client/assets/vault-api-client-VAfZ8okg.js +1 -0
- package/dist/client/assets/{vault-utils-BbJUHPCf.js → vault-utils-kIbqyWPm.js} +1 -1
- package/dist/client/assets/{vennDiagram-CIIHVFJN-Bb1KSPKA.js → vennDiagram-CIIHVFJN-GGrxyoPK.js} +2 -2
- package/dist/client/assets/{vi-VN-MULSGNVB-BAcoCjsz.js → vi-VN-MULSGNVB-BgxNIE1N.js} +1 -1
- package/dist/client/assets/wardley-L42UT6IY-Ba5lVG9E.js +1 -0
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-EdTzLQiR.js → wardleyDiagram-YWT4CUSO-BgYuJM9o.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-BoQFrGlt.js → xychartDiagram-2RQKCTM6-DKA6F9sv.js} +1 -1
- package/dist/client/assets/{yjs-provider-reset-guard-CNmMf4Qd.js → yjs-provider-reset-guard-BicD2Ate.js} +1 -1
- package/dist/client/assets/{zh-CN-MVX3E32U-sW-DCFHP.js → zh-CN-MVX3E32U-W0nclq-N.js} +1 -1
- package/dist/client/assets/{zh-HK-JNU5RLIE-Duqu8EG_.js → zh-HK-JNU5RLIE-C2VRLD9Z.js} +1 -1
- package/dist/client/assets/{zh-TW-LENVCA6T-BHC0OLnd.js → zh-TW-LENVCA6T-Ci7udZjZ.js} +1 -1
- package/dist/client/drawio-editor.html +3 -3
- package/dist/client/excalidraw-editor.html +3 -3
- package/dist/client/export-document.html +4 -4
- package/dist/client/index.html +5 -5
- package/package.json +17 -17
- package/src/client/application/app-shell/comments-feature.js +108 -0
- package/src/client/application/app-shell/git-feature.js +6 -1
- package/src/client/application/app-shell/ui-feature-shell.js +7 -4
- package/src/client/application/app-shell/ui-feature-sidebar.js +11 -2
- package/src/client/application/app-shell-elements.js +2 -0
- package/src/client/application/diagram-chrome.js +708 -0
- package/src/client/application/mermaid-preview-hydrator.js +18 -516
- package/src/client/application/plantuml-preview-hydrator.js +22 -518
- package/src/client/application/preview-renderer.js +15 -4
- package/src/client/application/workspace-route-controller.js +11 -1
- package/src/client/bootstrap/app-shell-feature-surface.js +67 -0
- package/src/client/bootstrap/collabmd-app-shell.js +111 -356
- package/src/client/bootstrap/lazy-controller-feature.js +434 -0
- package/src/client/infrastructure/vault-api-client.js +5 -0
- package/src/client/presentation/app-shell-template.js +25 -12
- package/src/client/presentation/bases-preview-controller.js +33 -16
- package/src/client/presentation/comment-overview-controller.js +238 -0
- package/src/client/presentation/comment-ui/comment-ui-state.js +23 -0
- package/src/client/presentation/file-explorer-controller.js +9 -0
- package/src/client/presentation/file-explorer-view.js +11 -1
- package/src/client/styles/components/navigation.css +43 -8
- package/src/client/styles/components/scrollbars.css +5 -0
- package/src/client/styles/features/comment-overview.css +196 -0
- package/src/client/styles/features/comments.css +1 -0
- package/src/client/styles/layout/responsive.css +3 -2
- package/src/server/application/workspace-reconciliation.js +446 -0
- package/src/server/config/env.js +73 -0
- package/src/server/create-app-server.js +39 -32
- package/src/server/domain/bases/base-expression-runtime.js +183 -147
- package/src/server/domain/bases/base-index-snapshot-store.js +53 -2
- package/src/server/domain/bases/base-query-service.js +55 -38
- package/src/server/domain/collaboration/collaboration-document-store.js +6 -2
- package/src/server/domain/collaboration/collaboration-room.js +66 -2
- package/src/server/domain/comment-overview.js +108 -0
- package/src/server/domain/hosted-workspace-contract.js +18 -0
- package/src/server/domain/hosted-workspace.js +744 -0
- package/src/server/domain/workspace-state.js +848 -2
- package/src/server/infrastructure/github/github-app-client.js +205 -0
- package/src/server/infrastructure/github/github-setup-flow.js +86 -0
- package/src/server/infrastructure/http/create-git-api-command-handler.js +1 -1
- package/src/server/infrastructure/http/create-hosted-api-handler.js +200 -0
- package/src/server/infrastructure/http/create-request-handler.js +20 -0
- package/src/server/infrastructure/http/create-static-handler.js +4 -0
- package/src/server/infrastructure/http/create-vault-api-command-handler.js +44 -119
- package/src/server/infrastructure/http/create-vault-api-query-handler.js +18 -33
- package/src/server/infrastructure/http/request-body.js +12 -2
- package/src/server/infrastructure/persistence/hosted-metadata-store.js +500 -0
- package/src/server/infrastructure/persistence/sidecar-store.js +53 -2
- package/src/server/infrastructure/persistence/vault-content-adapter.js +8 -8
- package/src/server/infrastructure/persistence/vault-file-store.js +64 -135
- package/src/server/infrastructure/websocket/attach-collaboration-gateway.js +49 -5
- package/src/server/infrastructure/workspace/file-system-sync-service.js +24 -411
- package/src/server/infrastructure/workspace/workspace-mutation-coordinator.js +13 -621
- package/src/server/infrastructure/workspace/workspace-state-file-system-adapter.js +37 -0
- package/dist/client/assets/architecture-7EHR7CIX-M1SFnuBJ.js +0 -1
- package/dist/client/assets/channel-E9SBQ9z6.js +0 -1
- package/dist/client/assets/chunk-QZHKN3VN-9NMPSwDX.js +0 -1
- package/dist/client/assets/chunk-WMDFGAFD-EzVSth95.js +0 -35
- package/dist/client/assets/chunk-WU5MYG2G-Bl8VQmZH.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-D7YhYDLZ.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-COI4atGv.js +0 -1
- package/dist/client/assets/dist-B0U2pnHE.js +0 -1
- package/dist/client/assets/dist-B1BRR2vO.js +0 -1
- package/dist/client/assets/dist-B48_21rM.js +0 -1
- package/dist/client/assets/dist-BNDWUlMx.js +0 -9
- package/dist/client/assets/dist-BoCYrsTA.js +0 -1
- package/dist/client/assets/dist-C-W89K9S.js +0 -1
- package/dist/client/assets/dist-CBTadfRi2.js +0 -1
- package/dist/client/assets/dist-D4DGyOvV.js +0 -1
- package/dist/client/assets/dist-ihRjPW1T.js +0 -2
- package/dist/client/assets/drawio-editor-BHYoSlR7.js +0 -9
- package/dist/client/assets/drawioEditor-B-Ssnq_p.js +0 -2
- package/dist/client/assets/eventmodeling-FCH6USID-DKkN-EFL.js +0 -1
- package/dist/client/assets/excalidraw-editor-mKBCIvNR.css +0 -1
- package/dist/client/assets/excalidraw-scene-i7oBzgH8.js +0 -176
- package/dist/client/assets/excalidrawEditor-DRxzpbJ-.js +0 -2
- package/dist/client/assets/exportDocument-Dj7w1hDJ.js +0 -2
- package/dist/client/assets/gitGraph-WXDBUCRP-BIQYiPEj.js +0 -1
- package/dist/client/assets/image-KGGK4BDN-BtStV6c9.js +0 -1
- package/dist/client/assets/index-Cnyy977t.css +0 -1
- package/dist/client/assets/index-DxQmPZ_f.js +0 -2
- package/dist/client/assets/info-J43DQDTF-CO2Z2J7J.js +0 -1
- package/dist/client/assets/javascript-qUBHINSy.js +0 -1
- package/dist/client/assets/main-iuYcGt-A.js +0 -1414
- package/dist/client/assets/navigation-Du6CLhvs.css +0 -1
- package/dist/client/assets/packet-YPE3B663-VxGcYggl.js +0 -1
- package/dist/client/assets/percentages-5DKR754L-Ug3UfchV.js +0 -1
- package/dist/client/assets/pie-LRSECV5Y-7RrvmmEk.js +0 -1
- package/dist/client/assets/preview-diagram-utils-D94KrSQH.js +0 -1
- package/dist/client/assets/preview-render-compiler-CSggyCbw.js +0 -35
- package/dist/client/assets/preview-render-compiler-TPMesM_L.js +0 -1
- package/dist/client/assets/preview-render-profile-CQR0o67h.js +0 -23
- package/dist/client/assets/preview-render-worker-CifbXdlx.js +0 -59
- package/dist/client/assets/radar-GUYGQ44K-2SBnfFng.js +0 -1
- package/dist/client/assets/runtime-config-CM_2pVYD.js +0 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DXm0ynOB.js +0 -1
- package/dist/client/assets/subset-shared.chunk-C9mEHUfV.js +0 -1
- package/dist/client/assets/treeView-BLDUP644-DItqHrxu.js +0 -1
- package/dist/client/assets/treemap-LRROVOQU-DD1ESKp7.js +0 -1
- package/dist/client/assets/turtle-BkP3ExOG.js +0 -1
- package/dist/client/assets/vault-api-client-Fa51l2lE.js +0 -1
- package/dist/client/assets/wardley-L42UT6IY-BoSI-SvR.js +0 -1
- /package/dist/client/assets/{apl-C1JYSI8J.js → apl-CnwPGSsG.js} +0 -0
- /package/dist/client/assets/{array-7rJMcyYQ.js → array-BifhSqXX.js} +0 -0
- /package/dist/client/assets/{asciiarmor-DHW75j1s.js → asciiarmor-qTkVPQu6.js} +0 -0
- /package/dist/client/assets/{asn1-CQiG40kG.js → asn1-Dr8qZg38.js} +0 -0
- /package/dist/client/assets/{asterisk-BWExh0n4.js → asterisk-Bja0s6e1.js} +0 -0
- /package/dist/client/assets/{base-h1uscjTi.js → base-CxPEiHuy.js} +0 -0
- /package/dist/client/assets/{brainfuck-CTNFyOLg.js → brainfuck-D5EjA2JK.js} +0 -0
- /package/dist/client/assets/{chunk-3PELD44J-DymL2rGq.js → chunk-3PELD44J-C625MXe_.js} +0 -0
- /package/dist/client/assets/{chunk-A66AFZZU-BFHL744F.js → chunk-A66AFZZU-BbU3ThId.js} +0 -0
- /package/dist/client/assets/{chunk-LOOWOR4L-C5BUwXgZ.js → chunk-LOOWOR4L-CGCAV5nC.js} +0 -0
- /package/dist/client/assets/{chunk-tBc3Ke6Z.js → chunk-aKtaBQYM.js} +0 -0
- /package/dist/client/assets/{clike-BFTLRaGS.js → clike-DHH8Ad3s.js} +0 -0
- /package/dist/client/assets/{clojure-D-DYVqu7.js → clojure-BflJGmDX.js} +0 -0
- /package/dist/client/assets/{cmake-DtGL-Unu.js → cmake-CyVbuzPu.js} +0 -0
- /package/dist/client/assets/{cobol-DP4QggbL.js → cobol-B_OZ4V-R.js} +0 -0
- /package/dist/client/assets/{coffeescript-B7GZajzV.js → coffeescript-B2pKbFk8.js} +0 -0
- /package/dist/client/assets/{commonlisp-COlJYiQT.js → commonlisp-CcllspGY.js} +0 -0
- /package/dist/client/assets/{crystal-I_dE9xG-.js → crystal-M5-qzICs.js} +0 -0
- /package/dist/client/assets/{css-CmhPNxBE.js → css-CYpP4FRV.js} +0 -0
- /package/dist/client/assets/{cypher-DEGl2llJ.js → cypher-p9eYesGn.js} +0 -0
- /package/dist/client/assets/{d-BspB0dox.js → d-BhMjBjQP.js} +0 -0
- /package/dist/client/assets/{defaultLocale-DKHHE2Ij.js → defaultLocale-C8Fc0cco.js} +0 -0
- /package/dist/client/assets/{diff-BWuPUsEo.js → diff-ChtP43wD.js} +0 -0
- /package/dist/client/assets/{drawio-room-DrZ-gy4N.js → drawio-room-B3OZRHTH.js} +0 -0
- /package/dist/client/assets/{dtd-C6brJFPg.js → dtd-DTF72YNO.js} +0 -0
- /package/dist/client/assets/{dylan-Bft86ZSB.js → dylan-C6jEEEk-.js} +0 -0
- /package/dist/client/assets/{ebnf-D6ifG44A.js → ebnf-D4c0_ac3.js} +0 -0
- /package/dist/client/assets/{ecl-D9rhJ9-u.js → ecl-BSZaIHnp.js} +0 -0
- /package/dist/client/assets/{eiffel-DwxtewZF.js → eiffel-BEjRio4Q.js} +0 -0
- /package/dist/client/assets/{elm-B1TncobV.js → elm-Cshzl8qu.js} +0 -0
- /package/dist/client/assets/{erlang-BDJZNtt8.js → erlang-DaB2Rkuy.js} +0 -0
- /package/dist/client/assets/{excalidraw-mermaid-stub-Co4Okjfg.js → excalidraw-mermaid-stub-BNckbX2n.js} +0 -0
- /package/dist/client/assets/{fcl-CUXJFJn1.js → fcl-ClOhbFR7.js} +0 -0
- /package/dist/client/assets/{file-kind-DLz-bCzA.js → file-kind-BKPOIRPE.js} +0 -0
- /package/dist/client/assets/{forth-nvhcMz63.js → forth-Cezjo90N.js} +0 -0
- /package/dist/client/assets/{fortran-BZID-z10.js → fortran-Bt6PBEDR.js} +0 -0
- /package/dist/client/assets/{gas-DjQsZDGE.js → gas-BHEdbvp9.js} +0 -0
- /package/dist/client/assets/{gherkin-S0kHlzux.js → gherkin-oBAE_ms0.js} +0 -0
- /package/dist/client/assets/{graphlib-Dduz6oB8.js → graphlib-B8gBHxth.js} +0 -0
- /package/dist/client/assets/{groovy-Di--Vb9Z.js → groovy-BC3IOsC8.js} +0 -0
- /package/dist/client/assets/{haskell-C6qH3-aI.js → haskell-BRsoo5mP.js} +0 -0
- /package/dist/client/assets/{http-DG1Y9fpK.js → http-CLVgA2GD.js} +0 -0
- /package/dist/client/assets/{idl-B64p3NTJ.js → idl-BUZw3wgd.js} +0 -0
- /package/dist/client/assets/{image-blob-reduce.esm-CRyv8pnU.js → image-blob-reduce.esm-NzmDxm1v.js} +0 -0
- /package/dist/client/assets/{init-EmgYNkpL.js → init-D6jRqBbL.js} +0 -0
- /package/dist/client/assets/{julia-B22G9Bym.js → julia-CQfgDRfP.js} +0 -0
- /package/dist/client/assets/{katex-Beiidjxi.js → katex-C7GtLiLd.js} +0 -0
- /package/dist/client/assets/{vault-api-client-D7Ck0CvR.css → keyboard-shortcuts-D7Ck0CvR.css} +0 -0
- /package/dist/client/assets/{livescript-CkcuHqeS.js → livescript-BXxG0Yva.js} +0 -0
- /package/dist/client/assets/{lua-Cg0FqIlO.js → lua-CL1SqxuB.js} +0 -0
- /package/dist/client/assets/{mathematica-CKVhKnoY.js → mathematica-u8YMmbU0.js} +0 -0
- /package/dist/client/assets/{mbox-DANyzFJ2.js → mbox-BEMVcqjs.js} +0 -0
- /package/dist/client/assets/{mirc-BVG2S5rO.js → mirc-C9zpzAZU.js} +0 -0
- /package/dist/client/assets/{mllike-C0p7lv48.js → mllike-B45xgp2S.js} +0 -0
- /package/dist/client/assets/{modelica-vJ-Qa9jV.js → modelica-CqHI_q-D.js} +0 -0
- /package/dist/client/assets/{mscgen-vUD-SWGJ.js → mscgen-qgSLujhx.js} +0 -0
- /package/dist/client/assets/{mumps-D0KfUTSd.js → mumps-CW_TBmxz.js} +0 -0
- /package/dist/client/assets/{nginx-DkVceJrH.js → nginx-BMaDbqW3.js} +0 -0
- /package/dist/client/assets/{ntriples-BBuCIfS0.js → ntriples-d28e9m0E.js} +0 -0
- /package/dist/client/assets/{octave-BTv2CqSQ.js → octave-D2Q8cUp1.js} +0 -0
- /package/dist/client/assets/{oz-D8SjVDNU.js → oz-BwTct_5T.js} +0 -0
- /package/dist/client/assets/{pascal-T-tfhVyx.js → pascal-Dp_KdFgX.js} +0 -0
- /package/dist/client/assets/{path-vqW-z8T-.js → path-BWPyau1x.js} +0 -0
- /package/dist/client/assets/{perl-BDrCkHRd.js → perl-CdEHsPfU.js} +0 -0
- /package/dist/client/assets/{pig-BEyI4fPq.js → pig-AF4Hwhju.js} +0 -0
- /package/dist/client/assets/{powershell-DtnFc6GG.js → powershell-CzG71I4L.js} +0 -0
- /package/dist/client/assets/{preload-helper-Bo9GmnuQ.js → preload-helper-kNaey6uv.js} +0 -0
- /package/dist/client/assets/{properties-DWUvbxV9.js → properties-C357ku5U.js} +0 -0
- /package/dist/client/assets/{protobuf-CQGoYyfE.js → protobuf-D1ij_kNL.js} +0 -0
- /package/dist/client/assets/{puppet-Dd-qWO3p.js → puppet-B4hC2X4m.js} +0 -0
- /package/dist/client/assets/{python-BUyhM0Ew.js → python-BqYw9LYJ.js} +0 -0
- /package/dist/client/assets/{q-Dls1OX0D.js → q-B9NhS7L_.js} +0 -0
- /package/dist/client/assets/{r-DeZ8Mdev.js → r-DADKenSm.js} +0 -0
- /package/dist/client/assets/{rough.esm-DE_lJ5Ge.js → rough.esm-CSKSodPl.js} +0 -0
- /package/dist/client/assets/{roundRect-BMsJLtvm.js → roundRect-D01gJrlt.js} +0 -0
- /package/dist/client/assets/{rpm-CjWxLM68.js → rpm-gpDK5sbt.js} +0 -0
- /package/dist/client/assets/{ruby-CB34f2Gf.js → ruby-DsYpTuWg.js} +0 -0
- /package/dist/client/assets/{runtime-config-loader-_D2KZKn-.js → runtime-config-loader-BUK56BZz.js} +0 -0
- /package/dist/client/assets/{sas-Bji4HDQq.js → sas-C2OyD2Y6.js} +0 -0
- /package/dist/client/assets/{scheme-C3elI80V.js → scheme-CyDdOh7e.js} +0 -0
- /package/dist/client/assets/{shell-DUveK2Hb.js → shell-Du5Qg9im.js} +0 -0
- /package/dist/client/assets/{sieve-2ogwMVx4.js → sieve-BAxa3IjF.js} +0 -0
- /package/dist/client/assets/{simple-mode-pOKc0mfx.js → simple-mode-DRpGK0lJ.js} +0 -0
- /package/dist/client/assets/{smalltalk-BuGhc6lW.js → smalltalk-BLp5-jwC.js} +0 -0
- /package/dist/client/assets/{solr-DTxshpm8.js → solr-BBopId9w.js} +0 -0
- /package/dist/client/assets/{sparql-vm8qNO8J.js → sparql-Dz-mlCAC.js} +0 -0
- /package/dist/client/assets/{spreadsheet-C6Vbtl9-.js → spreadsheet-CTIncYxj.js} +0 -0
- /package/dist/client/assets/{sql-GL7dVWcd.js → sql-DcCJ9jop.js} +0 -0
- /package/dist/client/assets/{stex-CEwW0Q_0.js → stex-sDrdk2BW.js} +0 -0
- /package/dist/client/assets/{stylus-D1SZIMDs.js → stylus-DLLZ8dgm.js} +0 -0
- /package/dist/client/assets/{swift-CKcKnWv9.js → swift-DKB6_1j6.js} +0 -0
- /package/dist/client/assets/{tcl-SPk7uiDB.js → tcl-BGfruO1u.js} +0 -0
- /package/dist/client/assets/{textile-C48beRus.js → textile-DWBqthVk.js} +0 -0
- /package/dist/client/assets/{tiddlywiki-CiImjFLN.js → tiddlywiki-VlUiK86J.js} +0 -0
- /package/dist/client/assets/{tiki-HkXZ4BIW.js → tiki-CxVlf5KZ.js} +0 -0
- /package/dist/client/assets/{toml-BmfpMy1_.js → toml-LvoKBwCs.js} +0 -0
- /package/dist/client/assets/{troff-BjbEOT5E.js → troff-C2dAgh7P.js} +0 -0
- /package/dist/client/assets/{ttcn-NA-V4KnY.js → ttcn-BePYh-hG.js} +0 -0
- /package/dist/client/assets/{ttcn-cfg-TPHncdGN.js → ttcn-cfg-CY0aot7Q.js} +0 -0
- /package/dist/client/assets/{vb-C19AQWqO.js → vb-BthdM_4N.js} +0 -0
- /package/dist/client/assets/{vbscript-CHJk3s95.js → vbscript-D9f6rSsU.js} +0 -0
- /package/dist/client/assets/{velocity-Ya0P4sQU.js → velocity-CqftRsjg.js} +0 -0
- /package/dist/client/assets/{verilog-DSARZZPc.js → verilog-D-x6ne0Z.js} +0 -0
- /package/dist/client/assets/{vhdl-CnYyYTpa.js → vhdl-CMrOq2q1.js} +0 -0
- /package/dist/client/assets/{webidl-DttrYZRT.js → webidl-D5jiJvOU.js} +0 -0
- /package/dist/client/assets/{xquery-CEDTd8qs.js → xquery-fj_R-kMw.js} +0 -0
- /package/dist/client/assets/{yacas-C7dxlPB0.js → yacas-CXXgtw0p.js} +0 -0
- /package/dist/client/assets/{z80-BqEfFSnA.js → z80-CL1naaMV.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"./chunk-SRAX5OIU-
|
|
1
|
+
import"./chunk-SRAX5OIU-CiRgnkYo.js";var e={paste:`Dán`,pasteAsPlaintext:`Dán kiểu văn bản thuần`,pasteCharts:`Dán biểu đồ`,selectAll:`Chọn tất cả`,multiSelect:`Chọn thêm đối tượng này`,moveCanvas:`Di chuyển canvas`,cut:`Cắt`,copy:`Sao chép`,copyAsPng:`Sao chép vào bộ nhớ tạm dưới dạng PNG`,copyAsSvg:`Sao chép vào bộ nhớ tạm dưới dạng SVG`,copyText:`Sao chép vào bộ nhớ tạm dưới dạng chữ`,copySource:`Sao chép vào bộ nhớ tạm`,convertToCode:`Chuyển thành mã`,bringForward:`Đưa ra trước`,sendToBack:`Hạ xuống dưới`,bringToFront:`Đưa ra đầu tiên`,sendBackward:`Hạ xuống cuối`,delete:`Xóa`,copyStyles:`Sao chép định dạng`,pasteStyles:`Dán định dạng`,stroke:`Nét`,changeStroke:`Đổi màu nét vẽ`,background:`Nền`,changeBackground:`Thay đổi màu nền`,fill:`Đổ màu`,strokeWidth:`Độ dày nét`,strokeStyle:`Kiểu nét`,strokeStyle_solid:`Khối`,strokeStyle_dashed:`Gạch ngang`,strokeStyle_dotted:`Nhiều chấm`,sloppiness:`Hoa văn nét`,opacity:`Độ trong suốt`,textAlign:`Căn chỉnh văn bản`,edges:`Cạnh`,sharp:`Nhọn`,round:`Tròn`,arrowheads:`Đầu mũi tên`,arrowhead_none:`Không`,arrowhead_arrow:`Mũi tên`,arrowhead_bar:`Thanh`,arrowhead_circle:`Hình tròn`,arrowhead_circle_outline:`Hình tròn (đường viền)`,arrowhead_triangle:`Tam giác`,arrowhead_triangle_outline:`Tam giác (đường viền)`,arrowhead_diamond:`Kim cương`,arrowhead_diamond_outline:`Kim cương (đường viền)`,arrowhead_crowfoot_many:``,arrowhead_crowfoot_one:``,arrowhead_crowfoot_one_or_many:``,more_options:`Tùy chọn khác`,arrowtypes:`Loại mũi tên`,arrowtype_sharp:`Mũi tên nhọn`,arrowtype_round:`Mũi tên cong`,arrowtype_elbowed:`Mũi tên gấp khúc`,fontSize:`Cỡ chữ`,fontFamily:`Phông chữ`,addWatermark:`Làm với Excalidraw"`,handDrawn:`Vẽ tay`,normal:`Bình thường`,code:`Mã`,small:`Nhỏ`,medium:`Vừa`,large:`Lớn`,veryLarge:`Rất lớn`,solid:`Đặc`,hachure:`Nét gạch gạch`,zigzag:`Zig-zag`,crossHatch:`Nét gạch chéo`,thin:`Mỏng`,bold:`In đậm`,left:`Trái`,center:`Giữa`,right:`Phải`,extraBold:`Nét siêu đậm`,architect:`Kiến trúc sư`,artist:`Nghệ sỹ`,cartoonist:`Hoạt hình`,fileTitle:`Tên tập tin`,colorPicker:`Chọn màu`,canvasColors:`Đã dùng trên canvas`,canvasBackground:`Nền canvas`,drawingCanvas:`Canvas vẽ`,clearCanvas:`Xóa khung vẽ`,layers:`Lớp`,actions:`Chức năng`,language:`Ngôn ngữ`,liveCollaboration:`Hợp tác trực tiếp...`,duplicateSelection:`Tạo bản sao`,untitled:`Không có tiêu đề`,name:`Tên`,yourName:`Tên của bạn`,madeWithExcalidraw:`Làm với Excalidraw`,group:`Gộp nhóm lại lựa chọn`,ungroup:`Tách nhóm lựa chọn`,collaborators:`Cộng tác viên`,toggleGrid:`Bật/tắt lưới`,addToLibrary:`Thêm vào thư viện`,removeFromLibrary:`Xóa khỏi thư viện`,libraryLoadingMessage:`Đang tải thư viện…`,libraries:`Xem thư viện`,loadingScene:`Đang tải về…`,loadScene:`Tải bản vẽ từ tệp`,align:`Căn chỉnh`,alignTop:`Căn trên`,alignBottom:`Căn dưới`,alignLeft:`Canh trái`,alignRight:`Canh phải`,centerVertically:`Giữa theo chiều dọc`,centerHorizontally:`Giữa theo chiều ngang`,distributeHorizontally:`Phân bố theo chiều ngang`,distributeVertically:`Phân bố theo chiều dọc`,flipHorizontal:`Lật ngang`,flipVertical:`Lật dọc`,viewMode:`Chế độ xem`,share:`Chia sẻ`,showStroke:`Hiển thị chọn màu`,showBackground:`Hiện thị chọn màu nền`,showFonts:`Hiển thị bộ chọn phông chữ`,toggleTheme:`Chuyển đổi giao diện sáng/tối`,theme:`Chủ đề`,personalLib:`Thư viện cá nhân`,excalidrawLib:`Thư viện Excalidraw`,decreaseFontSize:`Giảm cỡ chữ`,increaseFontSize:`Tăng cỡ chữ`,unbindText:`Bỏ liên kết văn bản`,bindText:`Gắn văn bản vào khung`,createContainerFromText:`Ngắt dòng văn bản trong khung`,link:{edit:`Sửa liên kết`,editEmbed:`Chỉnh sửa liên kết nhúng`,create:`Thêm liên kết`,label:`Liên kết`,labelEmbed:`Liên kết & nhúng`,empty:`Chưa đặt liên kết`,hint:`Nhập hoặc dán liên kết vào đây`,goToElement:`Đi tới phần tử đích`},lineEditor:{edit:`Điều chỉnh nét`,editArrow:``},polygon:{breakPolygon:``,convertToPolygon:``},elementLock:{lock:`Khoá`,unlock:`Mở khoá`,lockAll:`Khóa tất cả`,unlockAll:`Mở khóa tất cả`},statusPublished:`Đã đăng tải`,sidebarLock:`Giữ thanh bên luôn mở`,selectAllElementsInFrame:`Chọn tất cả phần tử trong khung`,removeAllElementsFromFrame:`Loại bỏ tất cả các phần tử trong khung`,eyeDropper:`Chọn màu từ vùng vẽ`,textToDiagram:`Văn bản sang sơ đồ`,prompt:`Lời nhắc`,followUs:`Theo dõi chúng tôi`,discordChat:`Trò chuyện Discord`,zoomToFitViewport:`Thu phóng vừa với khung nhìn`,zoomToFitSelection:`Thu phóng vừa với vùng chọn`,zoomToFit:`Thu phóng để hiển thị toàn bộ các phần tử`,installPWA:`Cài đặt Excalidraw trên máy (PWA)`,autoResize:`Bật tự động thay đổi kích thước văn bản`,imageCropping:`Cắt ảnh`,unCroppedDimension:`Kích thước gốc (chưa cắt)`,copyElementLink:`Sao chép liên kết tới đối tượng`,linkToElement:`Liên kết đến đối tượng`,wrapSelectionInFrame:`Đưa vùng chọn vào khung`,tab:``,shapeSwitch:``},t={title:`Liên kết đến đối tượng`,desc:`Nhấp vào một hình trên vùng vẽ hoặc dán liên kết.`,notFound:`Không tìm thấy đối tượng liên kết trên vùng vẽ.`},n={noItems:`Chưa có món nào...`,hint_emptyLibrary:`Chọn một món trên canvas để thêm nó vào đây, hoặc cài đặt thư viện từ kho lưu trữ công cộng, ở bên dưới.`,hint_emptyPrivateLibrary:`Chọn một món trên canvas để thêm nó vào đây.`,search:{inputPlaceholder:``,heading:``,noResults:``,clearSearch:``}},r={title:`Tìm trên vùng vẽ`,noMatch:`Không có kết quả phù hợp...`,singleResult:`kết quả`,multipleResults:`các kết quả`,placeholder:`Tìm văn bản trên vùng vẽ`,frames:``,texts:``},i={clearReset:`Reset canvas`,exportJSON:`Xuất ra tập tin`,exportImage:`Xuất file ảnh...`,export:`Lưu vào...`,copyToClipboard:`Sao chép vào bộ nhớ tạm`,copyLink:`Sao chép liên kết`,save:`Lưu vào tập tin hiện tại`,saveAs:`Lưu thành`,load:`Mở`,getShareableLink:`Tạo liên kết để chia sẻ`,close:`Đóng`,selectLanguage:`Chọn ngôn ngữ`,scrollBackToContent:`Cuộn về nội dung chính`,zoomIn:`Phóng to`,zoomOut:`Thu nhỏ`,resetZoom:`Đặt lại thu phóng`,menu:`Bảng chọn`,done:`Xong`,edit:`Chỉnh sửa`,undo:`Hoàn tác`,redo:`Làm lại`,resetLibrary:`Cài lại thư viện`,createNewRoom:`Tạo phòng mới`,fullScreen:`Toàn màn hình`,darkMode:`Chế độ tối`,lightMode:`Chế độ sáng`,systemMode:`Chế độ hệ thống`,zenMode:`Chế độ zen`,objectsSnapMode:`Căn chỉnh theo đối tượng`,exitZenMode:`Thoát chể độ zen`,cancel:`Hủy`,saveLibNames:``,clear:`Làm sạch`,remove:`Xóa`,embed:`Bật/tắt chế độ nhúng`,publishLibrary:``,submit:`Gửi`,confirm:`Xác nhận`,embeddableInteractionButton:`Nhấn để tương tác`},a={clearReset:`Điều này sẽ dọn hết canvas. Bạn có chắc không?`,couldNotCreateShareableLink:`Không thể tạo đường dẫn chia sẻ.`,couldNotCreateShareableLinkTooBig:`Không thể tạo đường dẫn chia sẻ: bản vẽ quá lớn`,couldNotLoadInvalidFile:`Không thể load tập tin không hợp lệ`,importBackendFailed:`Nhập dữ liệu từ máy chủ thất bại.`,cannotExportEmptyCanvas:`Không thể xuất canvas trống.`,couldNotCopyToClipboard:`Không thể sao chép vào bộ nhớ tạm.`,decryptFailed:`Không thể giải mã dữ liệu.`,uploadedSecurly:`Việc tải lên đã được bảo mật với mã hóa đầu cuối, có nghĩa là máy chủ Excalidraw và bên thứ ba không thể đọc nội dung.`,loadSceneOverridePrompt:`Mở bản vẽ bên ngoài sẽ thay thế nội dung hiện tại của bạn. Bạn có muốn tiếp tục không?`,collabStopOverridePrompt:`Dừng phiên sẽ ghi đè lên bản vẽ được lưu trữ cục bộ trước đó của bạn. Bạn có chắc không?
|
|
2
2
|
|
|
3
3
|
(Nếu bạn muốn giữ bản vẽ cục bộ của mình, chỉ cần đóng tab trình duyệt.)`,errorAddingToLibrary:`Không thể thêm món vào thư viện`,errorRemovingFromLibrary:`Không thể xoá món khỏi thư viện`,confirmAddLibrary:`Hình {{numShapes}} sẽ được thêm vào thư viện. Bạn chắc chứ?`,imageDoesNotContainScene:`Hình ảnh này dường như không chứa bất kỳ dữ liệu cảnh nào. Bạn đã bật tính năng nhúng cảnh khi xuất chưa?`,cannotRestoreFromImage:`Không thể khôi phục bản vẽ từ tệp hình ảnh này.`,invalidSceneUrl:`Không thể nhập nội dung từ URL đã cung cấp. Đó có thể là do URL không đúng cú pháp hoặc không chứa dữ liệu JSON hợp lệ với Excalidraw.`,resetLibrary:`Hành động này sẽ xóa toàn bộ thư viện của bạn. Bạn chắc chắn chứ?`,removeItemsFromsLibrary:`Xoá {{count}} món từ thư viện?`,invalidEncryptionKey:`Khóa mã hóa phải có 22 ký tự. Hợp tác trực tiếp bị vô hiệu hóa.`,collabOfflineWarning:`Không có kết nối internet.
|
|
4
4
|
Thay đổi của bạn sẽ không được lưu!`,localStorageQuotaExceeded:``},o={unsupportedFileType:`Loại tập tin không được hỗ trợ.`,imageInsertError:`Không thể thêm ảnh. Hãy thử lại sau...`,fileTooBig:`Tệp tin quá lớn. Dung lượng tối đa cho phép là {{maxSize}}.`,svgImageInsertError:`Không thể thêm ảnh SVG. Mã SVG có vẻ sai.`,failedToFetchImage:`Có lỗi khi tải ảnh.`,cannotResolveCollabServer:`Không thể kết nối với máy chủ hợp tác. Hãy tải lại trang và thử lại.`,importLibraryError:`Không thể tải thư viện`,saveLibraryError:`Không thể lưu thư viện vào bộ nhớ. Hãy lưu thành tệp trên máy để đảm bảo bạn không mất các thay đổi.`,collabSaveFailed:`Không thể lưu vào cơ sở dữ liệu. Nếu vấn đề tiếp tục xảy ra, bạn nên lưu tệp vào máy để đảm bảo bạn không bị mất công việc.`,collabSaveFailed_sizeExceeded:`Không thể lưu vào cơ sở dữ liệu, canvas có vẻ quá lớn. Bạn nên lưu tệp cục bộ để đảm bảo bạn không bị mất công việc.`,imageToolNotSupported:`Hình ảnh đã được vô hiệu hóa.`,brave_measure_text_error:{line1:`Dường như bạn đang sử dụng trình duyệt Brave với cài đặt <bold>Aggressively Block Fingerprinting</bold> được bật.`,line2:`Điều này có thể gây ra lỗi cho các <bold>Text Elements</bold> trong bản vẽ của bạn.`,line3:`Chúng tôi khuyên bạn nên tắt tùy chọn này. Xem <link>hướng dẫn này</link> để biết cách thực hiện.`,line4:`Nếu tắt cài đặt này vẫn không sửa được lỗi hiển thị chữ, hãy tạo <issueLink>báo cáo lỗi</issueLink> trên GitHub hoặc liên hệ qua <discordLink>Discord</discordLink>.`},libraryElementTypeError:{embeddable:`Không thể lưu phần tử nhúng vào thư viện`,iframe:`Các phần tử IFrame không thể được thêm vào thư viện.`,image:`Thêm hình ảnh vào thư viện sẽ sớm được hỗ trợ!`},asyncPasteFailedOnRead:`Không thể dán (không thể đọc từ bộ nhớ tạm của hệ thống).`,asyncPasteFailedOnParse:`Không thể dán.`,copyToSystemClipboardFailed:`Không thể sao chép vào bộ nhớ tạm.`},s={selection:`Lựa chọn`,lasso:``,image:`Chèn ảnh`,rectangle:`Hình chữ nhật`,diamond:`Kim cương`,ellipse:`Hình elíp`,arrow:`Mũi tên`,line:`Đường kẻ`,freedraw:`Vẽ`,text:`Văn bản`,library:`Thư viện`,lock:`Giữ dụng cũ hiện tại sau khi vẽ`,penMode:`Chế độ bút vẽ - ngăn ngừa chạm nhầm`,link:`Thêm / Cập nhật liên kết cho hình đã chọn`,eraser:`Xóa`,frame:`Công cụ tạo khung`,magicframe:`Wireframe thành code`,embeddable:`Nhúng Web`,laser:`Con trỏ laser`,hand:`Tay kéo`,extraTools:`Công cụ khác`,mermaidToExcalidraw:`Mermaid sang Excalidraw`,convertElementType:``},c={rectangle:`Hình chữ nhật`,diamond:`Kim cương`,ellipse:`Hình bầu dục`,arrow:`Mũi tên`,line:`Đường kẻ`,freedraw:`Vẽ tự do`,text:`Văn bản`,image:`Hình ảnh`,group:`Nhóm`,frame:`Khung hình`,magicframe:`Wireframe thành code`,embeddable:`Nhúng Web`,selection:`Lựa chọn`,iframe:`IFrame`},l={canvasActions:`Hành động canvas`,selectedShapeActions:`Các hành động cho hình dạng đã chọn`,shapes:`Các hình khối`},u={dismissSearch:``,canvasPanning:``,linearElement:`Ấn để bắt đầu nhiểm điểm vẽ, kéo để vẽ một đường thẳng`,arrowTool:``,arrowBindModifiers:``,freeDraw:`Ấn bà kéo, thả khi bạn xong`,text:`Mẹo: bạn có thể thêm văn bản tại bất cứ đâu bằng cách ấn hai lần bằng tool lựa chọn`,embeddable:`Nhấp và kéo để tạo nội dung nhúng từ website.`,text_selected:``,text_editing:``,linearElementMulti:``,lockAngle:``,resize:``,resizeImage:``,rotate:`Giới hạn góc độ bằng cách giữ {{shortcut}} khi xoay`,lineEditor_info:``,lineEditor_line_info:``,lineEditor_pointSelected:``,lineEditor_nothingSelected:``,publishLibrary:`Chia sẻ thư viện của bạn`,bindTextToElement:`Nhấn {{shortcut}} để thêm văn bản`,createFlowchart:``,deepBoxSelect:``,eraserRevert:``,firefox_clipboard_write:`Tính năng này có thể được bật bằng cách đặt cờ "dom.events.asyncClipboard.clipboardItem" thành "true". Để thay đổi cờ trình duyệt trong Firefox, hãy truy cập trang "about:config".`,disableSnapping:``,enterCropEditor:``,leaveCropEditor:``},d={cannotShowPreview:`Không thể xem trước`,canvasTooBig:`Canvas này có thể hơi lớn.`,canvasTooBigTip:`Mẹo: hãy thử di chuyển các elements nhất lại gần nhau hơn một chút.`},f={headingMain:`Đã xảy ra lỗi. Hãy thử <button>tải lại trang</button>.`,clearCanvasMessage:`Nếu không tải lại được, hãy thử <button>dọn canvas.</button>`,clearCanvasCaveat:` Điều này sẽ dẫn đến mất dữ liệu bạn đã làm `,trackedToSentry:``,openIssueMessage:``,sceneContent:`Nội dung bản vẽ:`},p={or:`Hoặc`},m={desc_intro:`Mời mọi người cùng cộng tác trong bản vẽ của bạn.`,desc_privacy:`Đừng lo, phiên hoạt động đã được mã hóa đầu cuối, và hoàn toàn riêng tư. Ngay cả máy chủ của chúng tôi cũng không thể thấy những gì bạn vẽ.`,button_startSession:`Bắt đầu phiên`,button_stopSession:`Kết thúc phiên`,desc_inProgressIntro:`Phiên làm việc trực tiếp hiện đang diễn ra.`,desc_shareLink:`Chia sẻ liên kết này với người bạn muốn cộng tác cùng:`,desc_exitSession:`Dừng phiên sẽ đưa bạn ra khỏi phòng, nhưng bạn vẫn có thể làm việc tiếp trên máy. Những người khác sẽ không bị ảnh hưởng và vẫn cộng tác trên bản của họ.`,shareTitle:`Vào phiên làm việc chung trên Excalidraw`},h={title:`Lỗi`},g={disk_title:`Lưu về máy`,disk_details:``,disk_button:`Lưu vào tệp tin`,link_title:`Liên kết có thể chia sẻ`,link_details:`Tạo liên kết chỉ xem`,link_button:`Tạo liên kết`,excalidrawplus_description:`Lưu bản vẽ vào không gian làm việc Excalidraw+ của bạn.`,excalidrawplus_button:`Xuất`,excalidrawplus_exportError:`Hiện tại không thể xuất sang Excalidraw+...`},_={blog:`Đọc blog của chúng tôi`,click:`Nhấp`,deepSelect:``,deepBoxSelect:``,createFlowchart:``,navigateFlowchart:``,curvedArrow:`Mũi tên cong`,curvedLine:`Đường cong`,documentation:`Tài liệu`,doubleClick:`Nhấp đúp`,drag:`kéo`,editor:`Trình chỉnh sửa`,editLineArrowPoints:`Chỉnh sửa điểm của đường/mũi tên`,editText:`Chỉnh sửa văn bản / thêm nhãn`,github:`Phát hiện lỗi? Gửi phản hồi`,howto:`Làm theo hướng dẫn của chúng tôi`,or:`hoặc`,preventBinding:`Ngăn mũi tên tự gắn`,tools:`Công cụ`,shortcuts:`Phím tắt bàn phím`,textFinish:`Hoàn tất chỉnh sửa (trình soạn thảo văn bản)`,textNewLine:``,title:`Trợ giúp`,view:`Xem`,zoomToFit:``,zoomToSelection:``,toggleElementLock:`Khóa/mở khóa vùng lựa chọn`,movePageUpDown:`Chuyển trang lên/xuống`,movePageLeftRight:`Chuyển trang trái/phải`,cropStart:`Cắt ảnh`,cropFinish:``},v={title:`Dọn canvas`},y={title:``,itemName:`Tên món`,authorName:`Tên tác giả`,githubUsername:`Tên tài khoản Github`,twitterUsername:`Tên tài khoản Twitter`,libraryName:`Tên thư viện`,libraryDesc:`Mô tả thư viện`,website:`Website`,placeholder:{authorName:`Tên của bạn hoặc tên tài khoản`,libraryName:`Tên thư viện của bạn`,libraryDesc:`Mô tả thư viện của bạn để mọi người có thể hiểu được cách dùng của nó`,githubHandle:``,twitterHandle:`Tên Twitter (không bắt buộc) để chúng tôi ghi nhận bạn khi chia sẻ trên Twitter.`,website:`Đường dẫn tới trang web cá nhân của bạn hoặc tới đâu đó (tùy chọn)`},errors:{required:`Bắt buộc`,website:`Nhập đường dẫn hợp lệ`},noteDescription:`Chia sẻ thư viện của bạn vào <link>kho thư viện công khai</link> để mọi người có thể dùng trong bản vẽ của họ.`,noteGuidelines:`Thư viện cần được phê duyệt thủ công trước. Vui lòng đọc <link>hướng dẫn</link> trước khi gửi. Bạn sẽ cần tài khoản GitHub để trao đổi và chỉnh sửa khi được yêu cầu, nhưng điều này không bắt buộc.`,noteLicense:`Bằng việc gửi, bạn đồng ý rằng thư viện sẽ được phát hành theo <link>Giấy phép MIT</link>, nghĩa là bất kỳ ai cũng có thể sử dụng mà không bị hạn chế.`,noteItems:`Từng món trong thư viện phải có tên riêng để có thể lọc. Các món thư viện sau đây sẽ thêm:`,atleastOneLibItem:`Vui lòng chọn ít nhất một món thư viện để bắt đầu`,republishWarning:`Lưu ý: một số món đã chọn được đánh dấu là đã xuất bản/đã gửi. Bạn chỉ nên gửi lại các món khi cập nhật thư viện hiện có hoặc gửi.`},b={title:`Thư viện đã được gửi`,content:`Cảm ơn {{authorName}}! Thư viện của bạn đã được gửi để duyệt. Bạn có thể xem tiến trình <link>tại đây</link>.`},x={resetLibrary:`Cài lại thư viện`,removeItemsFromLib:`Xóa món đã chọn khỏi thư viện`},S={header:`Xuất thành hình ảnh`,label:{withBackground:`Nền`,onlySelected:`Chỉ phần tử đã lựa chọn`,darkMode:`Chế độ tối`,embedScene:``,scale:`Thu phóng`,padding:`Phần đệm`},tooltip:{embedScene:`Dữ liệu của bối cảnh sẽ được lưu dưới định dạng PNG/SVG vậy nên bối cảnh có thể khôi phục lại từ nó.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-NNHCCRGN-DlpIbxXb.js";import{n as e}from"./chunk-PUPMXCY4-BZ88kQjK.js";export{e as createWardleyServices};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{g as e,h as t}from"./src-
|
|
1
|
+
import{g as e,h as t}from"./src-DSz_pbBa.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,v as l,w as u,x as d,y as f}from"./chunk-CSCIHK7Q-D0bHjxCO.js";import{i as p}from"./chunk-5ZQYHXKU-C4q4UVKa.js";import{t as m}from"./chunk-WU5MYG2G-Cg2iUbET.js";import{t as h}from"./chunk-4BX2VUAB-DcdHBPEH.js";import{t as g}from"./mermaid-parser.core-C4gZtCl9.js";var _=t((e,t)=>{let n=e<=1?e*100:e;if(n<0||n>100)throw Error(`${t} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return n},`toPercent`),v=t((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=t(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=t(e=>{if(!e?.startsWith(`+`))return{};let t=/^\+'([^']*)'/.exec(e)?.[1];return e.includes(`<>`)?{flow:`bidirectional`,label:t}:e.includes(`<`)?{flow:`backward`,label:t}:e.includes(`>`)?{flow:`forward`,label:t}:{label:t}},`extractFlowFromArrow`),x=t((e,t)=>{if(h(e,t),e.size&&t.setSize(e.size.width,e.size.height),e.evolution){let n=e.evolution.stages.map(e=>e.secondName?`${e.name.trim()} / ${e.secondName.trim()}`:e.name.trim()),r=e.evolution.stages.filter(e=>e.boundary!==void 0).map(e=>e.boundary);t.updateAxes({stages:n,stageBoundaries:r})}if(e.anchors.forEach(e=>{let n=v(e.visibility,e.evolution,`Anchor "${e.name}"`);t.addNode(e.name,e.name,n.x,n.y,`anchor`)}),e.components.forEach(e=>{let n=v(e.visibility,e.evolution,`Component "${e.name}"`),r=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,i=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,a=e.decorator?.strategy;t.addNode(e.name,e.name,n.x,n.y,`component`,r,i,e.inertia,a)}),e.notes.forEach(e=>{let n=v(e.visibility,e.evolution,`Note "${e.text}"`);t.addNote(e.text,n.x,n.y)}),e.pipelines.forEach(e=>{let n=t.getNode(e.parent);if(!n||typeof n.y!=`number`)throw Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);let r=n.y;t.startPipeline(e.parent),e.components.forEach(n=>{let i=`${e.parent}_${n.name}`,a=n.label?(n.label.negX?-1:1)*n.label.offsetX:void 0,o=n.label?(n.label.negY?-1:1)*n.label.offsetY:void 0,s=_(n.evolution,`Pipeline component "${n.name}" evolution`);t.addNode(i,n.name,s,r,`pipeline-component`,a,o),t.addPipelineComponent(e.parent,i)})}),e.links.forEach(e=>{let n=!!e.arrow&&(e.arrow.includes(`-.->`)||e.arrow.includes(`.-.`)),r=y(e.fromPort)??y(e.toPort),{flow:i,label:a}=b(e.arrow);!r&&i&&(r=i);let o=e.linkLabel,s=a??o;t.addLink(t.resolveNodeId(e.from),t.resolveNodeId(e.to),n,s,r)}),e.evolves.forEach(e=>{let n=t.getNode(e.component);if(n?.y!==void 0){let r=_(e.target,`Evolve target for "${e.component}"`);t.addTrend(e.component,r,n.y)}}),e.annotations.length>0){let n=e.annotations[0],r=v(n.x,n.y,`Annotations box`);t.setAnnotationsBox(r.x,r.y)}e.annotation.forEach(e=>{let n=v(e.x,e.y,`Annotation ${e.number}`);t.addAnnotation(e.number,[{x:n.x,y:n.y}],e.text)}),e.accelerators.forEach(e=>{let n=v(e.x,e.y,`Accelerator "${e.name}"`);t.addAccelerator(e.name,n.x,n.y)}),e.deaccelerators.forEach(e=>{let n=v(e.x,e.y,`Deaccelerator "${e.name}"`);t.addDeaccelerator(e.name,n.x,n.y)})},`populateDb`),S={parser:{yy:void 0},parse:t(async t=>{let n=await g(`wardley`,t);e.debug(n);let r=S.parser?.yy;if(!r||typeof r.addNode!=`function`)throw Error(`parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);x(n,r)},`parse`)},C=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{t(this,`WardleyBuilder`)}addNode(e){let t=this.nodes.get(e.id)??{id:e.id,label:e.label},n={...t,...e,className:e.className??t.className,labelOffsetX:e.labelOffsetX??t.labelOffsetX,labelOffsetY:e.labelOffsetY??t.labelOffsetY};this.nodes.set(e.id,n)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});let t=this.nodes.get(e);t&&(t.isPipelineParent=!0)}addPipelineComponent(e,t){let n=this.pipelines.get(e);n&&n.componentIds.push(t);let r=this.nodes.get(t);r&&(r.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,t){this.annotationsBox={x:e,y:t}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,t){this.size={width:e,height:t}}getNode(e){return this.nodes.get(e)}resolveNodeId(e){if(this.nodes.has(e))return e;for(let[t,n]of this.nodes)if(n.label===e)return t;return e}build(){let e=[];for(let t of this.nodes.values()){if(typeof t.x!=`number`||typeof t.y!=`number`)throw Error(`Node "${t.label}" is missing coordinates`);e.push(t)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function w(){return d()[`wardley-beta`]}t(w,`getConfig`);function T(e,t,n,r,i,a,o,s,c){C.addNode({id:e,label:t,x:n,y:r,className:i,labelOffsetX:a,labelOffsetY:o,inertia:s,sourceStrategy:c})}t(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}t(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}t(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}t(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}t(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}t(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}t(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}t(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}t(N,`setSize`);function P(e){C.startPipeline(e)}t(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}t(F,`addPipelineComponent`);function I(e){C.setAxes(e)}t(I,`updateAxes`);function L(e){return C.getNode(e)}t(L,`getNode`);function R(e){return C.resolveNodeId(e)}t(R,`resolveNodeId`);function z(){return C.build()}t(z,`getWardleyData`);function B(){C.clear(),o()}t(B,`clear`);var V={getConfig:w,addNode:T,addLink:E,addTrend:D,addAnnotation:O,addNote:k,addAccelerator:A,addDeaccelerator:j,setAnnotationsBox:M,setSize:N,startPipeline:P,addPipelineComponent:F,updateAxes:I,getNode:L,resolveNodeId:R,getWardleyData:z,clear:B,setAccTitle:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:u,getAccDescription:l,setAccDescription:r},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=t(()=>{let{themeVariables:e}=d();return{backgroundColor:e.wardley?.backgroundColor??e.background??`#fff`,axisColor:e.wardley?.axisColor??`#000`,axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??`#222`,gridColor:e.wardley?.gridColor??`rgba(100, 100, 100, 0.2)`,componentFill:e.wardley?.componentFill??`#fff`,componentStroke:e.wardley?.componentStroke??`#000`,componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??`#222`,linkStroke:e.wardley?.linkStroke??`#000`,evolutionStroke:e.wardley?.evolutionStroke??`#dc3545`,annotationStroke:e.wardley?.annotationStroke??`#000`,annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??`#222`,annotationFill:e.wardley?.annotationFill??e.background??`#fff`}},`getTheme`),W=t(()=>{let e=d()[`wardley-beta`];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},`getConfigValues`),G={parser:S,db:V,renderer:{draw:t((n,r,i,a)=>{e.debug(`Rendering Wardley map
|
|
2
2
|
`+n);let o=W(),s=U(),l=o.nodeRadius*1.6,u=a.db,d=u.getWardleyData(),f=u.getDiagramTitle(),p=d.size?.width??o.width,h=d.size?.height??o.height,g=m(r);g.selectAll(`*`).remove(),c(g,h,p,o.useMaxWidth),g.attr(`viewBox`,`0 0 ${p} ${h}`);let _=g.append(`g`).attr(`class`,`wardley-map`),v=g.append(`defs`);v.append(`marker`).attr(`id`,`arrow-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,6).attr(`markerHeight`,6).attr(`orient`,`auto-start-reverse`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.evolutionStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-end-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-start-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,1).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 10 0 L 0 5 L 10 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),_.append(`rect`).attr(`class`,`wardley-background`).attr(`width`,p).attr(`height`,h).attr(`fill`,s.backgroundColor);let y=p-o.padding*2,b=h-o.padding*2;f&&_.append(`text`).attr(`class`,`wardley-title`).attr(`x`,p/2).attr(`y`,o.padding/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize*1.05).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(f);let x=t(e=>o.padding+e/100*y,`projectX`),S=t(e=>h-o.padding-e/100*b,`projectY`),C=_.append(`g`).attr(`class`,`wardley-axes`);C.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,h-o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1),C.append(`line`).attr(`x1`,o.padding).attr(`x2`,o.padding).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1);let w=d.axes.xLabel??`Evolution`,T=d.axes.yLabel??`Visibility`;C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-x`).attr(`x`,o.padding+y/2).attr(`y`,h-o.padding/4).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).text(w),C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-y`).attr(`x`,o.padding/3).attr(`y`,o.padding+b/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`transform`,`rotate(-90 ${o.padding/3} ${o.padding+b/2})`).text(T);let E=d.axes.stages&&d.axes.stages.length>0?d.axes.stages:H;if(E.length>0){let e=_.append(`g`).attr(`class`,`wardley-stages`),t=d.axes.stageBoundaries,n=[];if(t&&t.length===E.length){let e=0;t.forEach(t=>{n.push({start:e,end:t}),e=t})}else{let e=1/E.length;E.forEach((t,r)=>{n.push({start:r*e,end:(r+1)*e})})}E.forEach((t,r)=>{let i=n[r],a=o.padding+i.start*y,c=(a+(o.padding+i.end*y))/2;r>0&&e.append(`line`).attr(`x1`,a).attr(`x2`,a).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,`#000`).attr(`stroke-width`,1).attr(`stroke-dasharray`,`5 5`).attr(`opacity`,.8),e.append(`text`).attr(`class`,`wardley-stage-label`).attr(`x`,c).attr(`y`,h-o.padding/1.5).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize-2).attr(`text-anchor`,`middle`).text(t)})}if(o.showGrid){let e=_.append(`g`).attr(`class`,`wardley-grid`);for(let t=1;t<4;t++){let n=t/4,r=o.padding+y*n;e.append(`line`).attr(`x1`,r).attr(`x2`,r).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`),e.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,h-o.padding-b*n).attr(`y2`,h-o.padding-b*n).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`)}}let D=new Map;if(d.nodes.forEach(e=>{D.set(e.id,{x:x(e.x),y:S(e.y),node:e})}),d.pipelines.length>0){let e=_.append(`g`).attr(`class`,`wardley-pipelines`),t=_.append(`g`).attr(`class`,`wardley-pipeline-links`);d.pipelines.forEach(n=>{if(n.componentIds.length===0)return;let r=n.componentIds.map(e=>({id:e,pos:D.get(e),node:d.nodes.find(t=>t.id===e)})).filter(e=>e.pos&&e.node).sort((e,t)=>e.node.x-t.node.x);for(let e=0;e<r.length-1;e++){let n=r[e],i=r[e+1];t.append(`line`).attr(`class`,`wardley-pipeline-evolution-link`).attr(`x1`,n.pos.x).attr(`y1`,n.pos.y).attr(`x2`,i.pos.x).attr(`y2`,i.pos.y).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`)}let i=1/0,a=-1/0,c=0;if(n.componentIds.forEach(e=>{let t=D.get(e);t&&(i=Math.min(i,t.x),a=Math.max(a,t.x),c=t.y)}),i!==1/0&&a!==-1/0){let t=o.nodeRadius*4,r=c-t/2,u=D.get(n.nodeId);u&&(u.x=(i+a)/2,u.y=r-l/6),e.append(`rect`).attr(`class`,`wardley-pipeline-box`).attr(`x`,i-15).attr(`y`,r).attr(`width`,a-i+30).attr(`height`,t).attr(`fill`,`none`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}})}let O=_.append(`g`).attr(`class`,`wardley-links`),k=new Map;d.pipelines.forEach(e=>{k.set(e.nodeId,new Set(e.componentIds))});let A=d.links.filter(e=>!(!D.has(e.source)||!D.has(e.target)||k.get(e.target)?.has(e.source)));O.selectAll(`line`).data(A).enter().append(`line`).attr(`class`,e=>`wardley-link${e.dashed?` wardley-link--dashed`:``}`).attr(`x1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.x+i/s*r}).attr(`y1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.y+a/s*r}).attr(`x2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.x+i/s*r}).attr(`y2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.y+a/s*r}).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,e=>e.dashed?`6 6`:null).attr(`marker-end`,e=>e.flow===`forward`||e.flow===`bidirectional`?`url(#link-arrow-end-${r})`:null).attr(`marker-start`,e=>e.flow===`backward`||e.flow===`bidirectional`?`url(#link-arrow-start-${r})`:null),O.selectAll(`text`).data(A.filter(e=>e.label)).enter().append(`text`).attr(`class`,`wardley-link-label`).attr(`x`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=n.y-t.y,a=n.x-t.x;return r+i/Math.sqrt(a*a+i*i)*8}).attr(`y`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.y+n.y)/2,i=n.x-t.x,a=n.y-t.y,o=Math.sqrt(i*i+a*a);return r+-i/o*8}).attr(`fill`,s.axisTextColor).attr(`font-size`,o.labelFontSize).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).attr(`transform`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=(t.y+n.y)/2,a=n.x-t.x,o=n.y-t.y,s=Math.sqrt(a*a+o*o),c=o/s,l=-a/s,u=r+c*8,d=i+l*8,f=Math.atan2(o,a)*180/Math.PI;return(f>90||f<-90)&&(f+=180),`rotate(${f} ${u} ${d})`}).text(e=>e.label);let j=_.append(`g`).attr(`class`,`wardley-trends`),M=d.trends.map(e=>{let t=D.get(e.nodeId);if(!t)return null;let n=x(e.targetX),r=S(e.targetY),i=n-t.x,a=r-t.y,s=Math.sqrt(i*i+a*a),c=o.nodeRadius+2;return{origin:t,targetX:n,targetY:r,adjustedX2:s>c?n-i/s*c:n,adjustedY2:s>c?r-a/s*c:r}}).filter(e=>e!==null);j.selectAll(`line`).data(M).enter().append(`line`).attr(`class`,`wardley-trend`).attr(`x1`,e=>e.origin.x).attr(`y1`,e=>e.origin.y).attr(`x2`,e=>e.adjustedX2).attr(`y2`,e=>e.adjustedY2).attr(`stroke`,s.evolutionStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`).attr(`marker-end`,`url(#arrow-${r})`);let N=_.append(`g`).attr(`class`,`wardley-nodes`).selectAll(`g`).data(d.nodes).enter().append(`g`).attr(`class`,e=>[`wardley-node`,e.className?`wardley-node--${e.className}`:``].filter(Boolean).join(` `));N.filter(e=>e.sourceStrategy===`outsource`).append(`circle`).attr(`class`,`wardley-outsource-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#666`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`buy`).append(`circle`).attr(`class`,`wardley-buy-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#ccc`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`build`).append(`circle`).attr(`class`,`wardley-build-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#eee`).attr(`stroke`,`#000`).attr(`stroke-width`,1);let P=N.filter(e=>e.sourceStrategy===`market`);P.append(`circle`).attr(`class`,`wardley-market-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>!e.isPipelineParent&&e.sourceStrategy!==`market`&&e.className!==`anchor`).append(`circle`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1);let F=o.nodeRadius*.7,I=o.nodeRadius*1.2;if(P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x).attr(`y1`,e=>D.get(e.id).y-I).attr(`x2`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x).attr(`y2`,e=>D.get(e.id).y-I).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y-I).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),N.filter(e=>e.isPipelineParent===!0).append(`rect`).attr(`x`,e=>D.get(e.id).x-l/2).attr(`y`,e=>D.get(e.id).y-l/2).attr(`width`,l).attr(`height`,l).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.inertia===!0).append(`line`).attr(`class`,`wardley-inertia`).attr(`x1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l:o.nodeRadius*2;return t.y-n/2}).attr(`x2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l:o.nodeRadius*2;return t.y+n/2}).attr(`stroke`,s.componentStroke).attr(`stroke-width`,6),N.append(`text`).attr(`x`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetX===void 0?t.x:t.x+e.labelOffsetX;let n=o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetX===void 0&&(n+=10);let r=e.labelOffsetX??n;return t.x+r}).attr(`y`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetY===void 0?t.y-3:t.y+e.labelOffsetY;let n=-o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetY===void 0&&(n-=10);let r=e.labelOffsetY??n;return t.y+r}).attr(`class`,`wardley-node-label`).attr(`fill`,e=>e.className===`evolved`?s.evolutionStroke:e.className===`anchor`?`#000`:s.componentLabelColor).attr(`font-size`,o.labelFontSize).attr(`font-weight`,e=>e.className===`anchor`?`bold`:`normal`).attr(`text-anchor`,e=>e.className===`anchor`?`middle`:`start`).attr(`dominant-baseline`,e=>e.className===`anchor`?`middle`:`auto`).text(e=>e.label),d.annotations.length>0){let e=_.append(`g`).attr(`class`,`wardley-annotations`);if(d.annotations.forEach(t=>{let n=t.coordinates.map(e=>({x:x(e.x),y:S(e.y)}));if(n.length>1)for(let t=0;t<n.length-1;t++)e.append(`line`).attr(`class`,`wardley-annotation-line`).attr(`x1`,n[t].x).attr(`y1`,n[t].y).attr(`x2`,n[t+1].x).attr(`y2`,n[t+1].y).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`stroke-dasharray`,`4 4`);n.forEach(n=>{let r=e.append(`g`).attr(`class`,`wardley-annotation`);r.append(`circle`).attr(`cx`,n.x).attr(`cy`,n.y).attr(`r`,10).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5),r.append(`text`).attr(`x`,n.x).attr(`y`,n.y).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.number)})}),d.annotationsBox){let t=x(d.annotationsBox.x),n=S(d.annotationsBox.y),r=e.append(`g`).attr(`class`,`wardley-annotations-box`),i=[...d.annotations].filter(e=>e.text).sort((e,t)=>e.number-t.number),a=[];if(i.forEach((e,i)=>{let o=r.append(`text`).attr(`x`,t+10).attr(`y`,n+10+(i+1)*16).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`middle`).text(`${e.number}. ${e.text}`);a.push(o)}),a.length>0){let e=0,c=0;a.forEach(t=>{let n=t.node(),r=n.getComputedTextLength();e=Math.max(e,r);let i=n.getBBox();c=Math.max(c,i.height)});let l=e+20+105,u=i.length*16+20+c/2,d=o.padding,f=p-o.padding-l,m=o.padding,g=h-o.padding-u;t=Math.max(d,Math.min(t,f)),n=Math.max(m,Math.min(n,g)),a.forEach((e,r)=>{e.attr(`x`,t+10).attr(`y`,n+10+(r+1)*16)}),r.insert(`rect`,`text`).attr(`x`,t).attr(`y`,n).attr(`width`,l).attr(`height`,u).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}}}if(d.notes.length>0){let e=_.append(`g`).attr(`class`,`wardley-notes`);d.notes.forEach(t=>{let n=x(t.x),r=S(t.y);e.append(`text`).attr(`x`,n).attr(`y`,r).attr(`text-anchor`,`start`).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.text)})}if(d.accelerators.length>0){let e=_.append(`g`).attr(`class`,`wardley-accelerators`);d.accelerators.forEach(t=>{let n=x(t.x),r=S(t.y),i=`
|
|
3
3
|
M ${n} ${r-30/2}
|
|
4
4
|
L ${n+60-20} ${r-30/2}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{g as e,h as t}from"./src-
|
|
1
|
+
import{g as e,h as t}from"./src-DSz_pbBa.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-CSCIHK7Q-D0bHjxCO.js";import{t as m}from"./linear-BGe2G4b5.js";import{t as h}from"./ordinal-hYBb2elL.js";import{t as g}from"./init-D6jRqBbL.js";import{i as _}from"./chunk-5ZQYHXKU-C4q4UVKa.js";import{t as v}from"./line-CbpIuf9e.js";import{t as y}from"./chunk-WU5MYG2G-Cg2iUbET.js";import{t as b}from"./chunk-O5CBEL6O-DdEDfb8z.js";function x(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function S(){var e=h().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=x(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return S(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},g.apply(d(),arguments)}var C=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,34,35,36],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,34,35,36],E=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],D=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],O=[1,64],k={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,27:`NUMBER_WITH_DECIMAL`,28:`COMMA`,31:`ARROW_DELIMITER`,34:`NEWLINE`,35:`SEMI`,36:`EOF`,38:`STR`,39:`MD_STR`,41:`AMP`,42:`NUM`,43:`ALPHA`,44:`PLUS`,45:`EQUALS`,46:`MULT`,47:`DOT`,48:`BRKT`,49:`MINUS`,50:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:this.$=[Number(a[s-2]),...a[s]];break;case 21:this.$=[Number(a[s])];break;case 22:r.setXAxisTitle(a[s]);break;case 23:r.setXAxisTitle(a[s-1]);break;case 24:r.setXAxisTitle({type:`text`,text:``});break;case 25:r.setXAxisBand(a[s]);break;case 26:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 27:this.$=a[s-1];break;case 28:this.$=[a[s-2],...a[s]];break;case 29:this.$=[a[s]];break;case 30:r.setYAxisTitle(a[s]);break;case 31:r.setYAxisTitle(a[s-1]);break;case 32:r.setYAxisTitle({type:`text`,text:``});break;case 33:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 37:this.$={text:a[s],type:`text`};break;case 38:this.$={text:a[s],type:`text`};break;case 39:this.$={text:a[s],type:`markdown`};break;case 40:this.$=a[s];break;case 41:this.$=a[s-1]+``+a[s];break}},`anonymous`),table:[e(n,r,{3:1,4:2,7:4,5:i,34:a,35:o,36:s}),{1:[3]},e(n,r,{4:2,7:4,3:8,5:i,34:a,35:o,36:s}),e(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],34:a,35:o,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(c,[2,34]),e(c,[2,35]),e(c,[2,36]),{1:[2,1]},e(n,r,{4:2,7:4,3:21,5:i,34:a,35:o,36:s}),{1:[2,3]},e(c,[2,5]),e(n,[2,7],{4:22,34:a,35:o,36:s}),{11:23,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:39,13:38,24:x,27:S,29:40,30:41,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:45,15:44,27:C,33:46,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:49,17:48,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:52,17:51,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{20:[1,53]},{22:[1,54]},e(T,[2,18]),{1:[2,2]},e(T,[2,8]),e(T,[2,9]),e(E,[2,37],{40:55,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b}),e(E,[2,38]),e(E,[2,39]),e(D,[2,40]),e(D,[2,42]),e(D,[2,43]),e(D,[2,44]),e(D,[2,45]),e(D,[2,46]),e(D,[2,47]),e(D,[2,48]),e(D,[2,49]),e(D,[2,50]),e(D,[2,51]),e(T,[2,10]),e(T,[2,22],{30:41,29:56,24:x,27:S}),e(T,[2,24]),e(T,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,11]),e(T,[2,30],{33:60,27:C}),e(T,[2,32]),{31:[1,61]},e(T,[2,12]),{17:62,24:w},{25:63,27:O},e(T,[2,14]),{17:65,24:w},e(T,[2,16]),e(T,[2,17]),e(D,[2,41]),e(T,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(T,[2,31]),{27:[1,69]},e(T,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(T,[2,15]),e(T,[2,26]),e(T,[2,27]),{11:59,32:72,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,33]),e(T,[2,19]),{25:73,27:O},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
|
|
2
2
|
`+h.showPosition()+`
|
|
3
3
|
Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};k.lexer=(function(){return{EOF:1,parseError:t(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:t(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},`setInput`),input:t(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:t(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:t(function(){return this._more=!0,this},`more`),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:t(function(e){this.unput(this.match.slice(e))},`less`),pastInput:t(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:t(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:t(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
var e=()=>new Map,t=t=>{let n=e();return t.forEach((e,t)=>{n.set(t,e)}),n},n=(e,t,n)=>{let r=e.get(t);return r===void 0&&e.set(t,r=n()),r},r=(e,t)=>{let n=[];for(let[r,i]of e)n.push(t(i,r));return n},i=(e,t)=>{for(let[n,r]of e)if(t(r,n))return!0;return!1},a=()=>new Set,o=e=>e[e.length-1],s=(e,t)=>{for(let n=0;n<t.length;n++)e.push(t[n])},c=Array.from,l=(e,t)=>{for(let n=0;n<e.length;n++)if(!t(e[n],n,e))return!1;return!0},u=(e,t)=>{for(let n=0;n<e.length;n++)if(t(e[n],n,e))return!0;return!1},d=(e,t)=>{let n=Array(e);for(let r=0;r<e;r++)n[r]=t(r,n);return n},f=Array.isArray,p=class{constructor(){this._observers=e()}on(e,t){return n(this._observers,e,a).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(t,n){return c((this._observers.get(t)||e()).values()).forEach(e=>e(...n))}destroy(){this._observers=e()}},ee=class{constructor(){this._observers=e()}on(e,t){n(this._observers,e,a).add(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(t,n){return c((this._observers.get(t)||e()).values()).forEach(e=>e(...n))}destroy(){this._observers=e()}},m=Math.floor,te=Math.abs,ne=(e,t)=>e<t?e:t,h=(e,t)=>e>t?e:t;Number.isNaN;var re=Math.pow,ie=e=>e===0?1/e<0:e<0,ae=2**53-1,oe=-(2**53-1),se=Number.isInteger||(e=>typeof e==`number`&&isFinite(e)&&m(e)===e);Number.isNaN,Number.parseInt;var ce=String.fromCharCode;String.fromCodePoint,ce(65535);var le=e=>e.toLowerCase(),ue=/^\s*/g,de=e=>e.replace(ue,``),fe=/([A-Z])/g,pe=(e,t)=>de(e.replace(fe,e=>`${t}${le(e)}`)),me=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},he=typeof TextEncoder<`u`?new TextEncoder:null,ge=he?e=>he.encode(e):me,_e=typeof TextDecoder>`u`?null:new TextDecoder(`utf-8`,{fatal:!0,ignoreBOM:!0});_e&&_e.decode(new Uint8Array).length===1&&(_e=null);var ve=(e,t)=>d(t,()=>e).join(``),ye=class{constructor(){this.cpos=0,this.cbuf=new Uint8Array(100),this.bufs=[]}},g=()=>new ye,be=e=>{let t=e.cpos;for(let n=0;n<e.bufs.length;n++)t+=e.bufs[n].length;return t},_=e=>{let t=new Uint8Array(be(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},xe=(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(h(n,t)*2),e.cpos=0)},v=(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},Se=v,y=(e,t)=>{for(;t>127;)v(e,128|127&t),t=m(t/128);v(e,127&t)},Ce=(e,t)=>{let n=ie(t);for(n&&(t=-t),v(e,(t>63?128:0)|(n?64:0)|63&t),t=m(t/64);t>0;)v(e,(t>127?128:0)|127&t),t=m(t/128)},we=new Uint8Array(3e4),Te=we.length/3,b=he&&he.encodeInto?(e,t)=>{if(t.length<Te){let n=he.encodeInto(t,we).written||0;y(e,n);for(let t=0;t<n;t++)v(e,we[t])}else x(e,ge(t))}:(e,t)=>{let n=unescape(encodeURIComponent(t)),r=n.length;y(e,r);for(let t=0;t<r;t++)v(e,n.codePointAt(t))},Ee=(e,t)=>{let n=e.cbuf.length,r=e.cpos,i=ne(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(h(n*2,a)),e.cbuf.set(t.subarray(i)),e.cpos=a)},x=(e,t)=>{y(e,t.byteLength),Ee(e,t)},De=(e,t)=>{xe(e,t);let n=new DataView(e.cbuf.buffer,e.cpos,t);return e.cpos+=t,n},Oe=(e,t)=>De(e,4).setFloat32(0,t,!1),ke=(e,t)=>De(e,8).setFloat64(0,t,!1),Ae=(e,t)=>De(e,8).setBigInt64(0,t,!1),je=new DataView(new ArrayBuffer(4)),Me=e=>(je.setFloat32(0,e),je.getFloat32(0)===e),Ne=(e,t)=>{switch(typeof t){case`string`:v(e,119),b(e,t);break;case`number`:se(t)&&te(t)<=2147483647?(v(e,125),Ce(e,t)):Me(t)?(v(e,124),Oe(e,t)):(v(e,123),ke(e,t));break;case`bigint`:v(e,122),Ae(e,t);break;case`object`:if(t===null)v(e,126);else if(f(t)){v(e,117),y(e,t.length);for(let n=0;n<t.length;n++)Ne(e,t[n])}else if(t instanceof Uint8Array)v(e,116),x(e,t);else{v(e,118);let n=Object.keys(t);y(e,n.length);for(let r=0;r<n.length;r++){let i=n[r];b(e,i),Ne(e,t[i])}}break;case`boolean`:v(e,t?120:121);break;default:v(e,127)}},Pe=class extends ye{constructor(e){super(),this.w=e,this.s=null,this.count=0}write(e){this.s===e?this.count++:(this.count>0&&y(this,this.count-1),this.count=1,this.w(this,e),this.s=e)}},Fe=e=>{e.count>0&&(Ce(e.encoder,e.count===1?e.s:-e.s),e.count>1&&y(e.encoder,e.count-2))},Ie=class{constructor(){this.encoder=new ye,this.s=0,this.count=0}write(e){this.s===e?this.count++:(Fe(this),this.count=1,this.s=e)}toUint8Array(){return Fe(this),_(this.encoder)}},Le=e=>{if(e.count>0){let t=e.diff*2+(e.count===1?0:1);Ce(e.encoder,t),e.count>1&&y(e.encoder,e.count-2)}},Re=class{constructor(){this.encoder=new ye,this.s=0,this.count=0,this.diff=0}write(e){this.diff===e-this.s?(this.s=e,this.count++):(Le(this),this.count=1,this.diff=e-this.s,this.s=e)}toUint8Array(){return Le(this),_(this.encoder)}},ze=class{constructor(){this.sarr=[],this.s=``,this.lensE=new Ie}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 ye;return this.sarr.push(this.s),this.s=``,b(e,this.sarr.join(``)),Ee(e,this.lensE.toUint8Array()),_(e)}},S=e=>Error(e),C=()=>{throw S(`Method unimplemented`)},w=()=>{throw S(`Unexpected case`)},Be=S(`Unexpected end of array`),Ve=S(`Integer out of Range`),He=class{constructor(e){this.arr=e,this.pos=0}},T=e=>new He(e),Ue=e=>e.pos!==e.arr.length,We=(e,t)=>{let n=new Uint8Array(e.arr.buffer,e.pos+e.arr.byteOffset,t);return e.pos+=t,n},E=e=>We(e,D(e)),Ge=e=>e.arr[e.pos++],D=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>ae)throw Ve}throw Be},Ke=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>ae)throw Ve}throw Be},O=_e?e=>_e.decode(E(e)):e=>{let t=D(e);if(t===0)return``;{let n=String.fromCodePoint(Ge(e));if(--t<100)for(;t--;)n+=String.fromCodePoint(Ge(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))}},qe=(e,t)=>{let n=new DataView(e.arr.buffer,e.arr.byteOffset+e.pos,t);return e.pos+=t,n},Je=[e=>void 0,e=>null,Ke,e=>qe(e,4).getFloat32(0,!1),e=>qe(e,8).getFloat64(0,!1),e=>qe(e,8).getBigInt64(0,!1),e=>!1,e=>!0,O,e=>{let t=D(e),n={};for(let r=0;r<t;r++){let t=O(e);n[t]=Ye(e)}return n},e=>{let t=D(e),n=[];for(let r=0;r<t;r++)n.push(Ye(e));return n},E],Ye=e=>Je[127-Ge(e)](e),Xe=class extends He{constructor(e,t){super(e),this.reader=t,this.s=null,this.count=0}read(){return this.count===0&&(this.s=this.reader(this),Ue(this)?this.count=D(this)+1:this.count=-1),this.count--,this.s}},Ze=class extends He{constructor(e){super(e),this.s=0,this.count=0}read(){if(this.count===0){this.s=Ke(this);let e=ie(this.s);this.count=1,e&&(this.s=-this.s,this.count=D(this)+2)}return this.count--,this.s}},Qe=class extends He{constructor(e){super(e),this.s=0,this.count=0,this.diff=0}read(){if(this.count===0){let e=Ke(this),t=e&1;this.diff=m(e/2),this.count=1,t&&(this.count=D(this)+2)}return this.s+=this.diff,this.count--,this.s}},$e=class{constructor(e){this.decoder=new Ze(e),this.str=O(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 et=crypto.getRandomValues.bind(crypto),tt=()=>et(new Uint32Array(1))[0],nt=`10000000-1000-4000-8000-100000000000`,rt=()=>nt.replace(/[018]/g,e=>(e^tt()&15>>e/4).toString(16)),k=Date.now,it=e=>new Promise(e);Promise.all.bind(Promise);var at=e=>e===void 0?null:e,ot=new class{constructor(){this.map=new Map}setItem(e,t){this.map.set(e,t)}getItem(e){return this.map.get(e)}},st=!0;try{typeof localStorage<`u`&&localStorage&&(ot=localStorage,st=!1)}catch{}var ct=ot,lt=e=>st||addEventListener(`storage`,e),ut=e=>st||removeEventListener(`storage`,e),dt=Symbol(`Equality`),ft=(e,t)=>e===t||!!e?.[dt]?.(t)||!1,pt=e=>typeof e==`object`,mt=Object.assign,ht=Object.keys,gt=(e,t)=>{for(let n in e)t(e[n],n)},_t=(e,t)=>{let n=[];for(let r in e)n.push(t(e[r],r));return n},vt=e=>ht(e).length,yt=e=>{for(let t in e)return!1;return!0},bt=(e,t)=>{for(let n in e)if(!t(e[n],n))return!1;return!0},xt=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),St=(e,t)=>e===t||vt(e)===vt(t)&&bt(e,(e,n)=>(e!==void 0||xt(t,n))&&ft(t[n],e)),Ct=Object.freeze,wt=e=>{for(let t in e){let n=e[t];(typeof n==`object`||typeof n==`function`)&&wt(e[t])}return Ct(e)},Tt=(e,t,n=0)=>{try{for(;n<e.length;n++)e[n](...t)}finally{n<e.length&&Tt(e,t,n+1)}},Et=e=>e,Dt=(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[dt]!=null)return e[dt](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)||!Dt(e.get(n),t.get(n)))return!1;break;case void 0:case Object:if(vt(e)!==vt(t))return!1;for(let n in e)if(!xt(e,n)||!Dt(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(!Dt(e[n],t[n]))return!1;break;default:return!1}return!0},Ot=(e,t)=>t.includes(e),A=typeof process<`u`&&process.release&&/node|io\.js/.test(process.release.name)&&Object.prototype.toString.call(typeof process<`u`?process:0)===`[object process]`,kt=typeof window<`u`&&typeof document<`u`&&!A;typeof navigator<`u`&&/Mac/.test(navigator.platform);var j,At=[],jt=()=>{if(j===void 0)if(A){j=e();let t=process.argv,n=null;for(let e=0;e<t.length;e++){let r=t[e];r[0]===`-`?(n!==null&&j.set(n,``),n=r):n===null?At.push(r):(j.set(n,r),n=null)}n!==null&&j.set(n,``)}else typeof location==`object`?(j=e(),(location.search||`?`).slice(1).split(`&`).forEach(e=>{if(e.length!==0){let[t,n]=e.split(`=`);j.set(`--${pe(t,`-`)}`,n),j.set(`-${pe(t,`-`)}`,n)}})):j=e();return j},Mt=e=>jt().has(e),Nt=e=>at(A?{}[e.toUpperCase().replaceAll(`-`,`_`)]:ct.getItem(e)),Pt=e=>Mt(`--`+e)||Nt(e)!==null,Ft=Pt(`production`),It=A&&Ot({}.FORCE_COLOR,[`true`,`1`,`2`])||!Mt(`--no-colors`)&&!Pt(`no-color`)&&(!A||process.stdout.isTTY)&&(!A||Mt(`--color`)||Nt(`COLORTERM`)!==null||(Nt(`TERM`)||``).includes(`color`)),Lt=e=>new Uint8Array(e),Rt=(e,t,n)=>new Uint8Array(e,t,n),zt=e=>new Uint8Array(e),Bt=e=>{let t=``;for(let n=0;n<e.byteLength;n++)t+=ce(e[n]);return btoa(t)},Vt=e=>Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString(`base64`),Ht=e=>{let t=atob(e),n=Lt(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n},Ut=e=>{let t=Buffer.from(e,`base64`);return Rt(t.buffer,t.byteOffset,t.byteLength)},Wt=kt?Bt:Vt,Gt=kt?Ht:Ut,Kt=e=>{let t=Lt(e.byteLength);return t.set(e),t},qt=class{constructor(e,t){this.left=e,this.right=t}},M=(e,t)=>new qt(e,t),Jt=(e,t)=>e.forEach(e=>t(e.left,e.right)),Yt=e=>e.next()>=.5,Xt=(e,t,n)=>m(e.next()*(n+1-t)+t),Zt=(e,t,n)=>m(e.next()*(n+1-t)+t),Qt=(e,t,n)=>Zt(e,t,n),$t=e=>ce(Qt(e,97,122)),en=(e,t=0,n=20)=>{let r=Qt(e,t,n),i=``;for(let t=0;t<r;t++)i+=$t(e);return i},tn=(e,t)=>t[Qt(e,0,t.length-1)],nn=Symbol(`0schema`),rn=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(ve(` `,(this._rerrs.length-t)*2)+`${n.path==null?``:`[${n.path}] `}${n.has} doesn't match ${n.expected}. ${n.message}`)}return e.join(`
|
|
2
2
|
`)}},an=(e,t)=>e===t?!0:e==null||t==null||e.constructor!==t.constructor?!1:e[dt]?ft(e,t):f(e)?l(e,e=>u(t,t=>an(e,t))):pt(e)?bt(e,(e,n)=>an(e,t[n])):!1,N=class{static _dilutes=!1;extends(e){let[t,n]=[this.shape,e.shape];return this.constructor._dilutes&&([n,t]=[t,n]),an(t,n)}equals(e){return this.constructor===e.constructor&&Dt(this.shape,e.shape)}[nn](){return!0}[dt](e){return this.equals(e)}validate(e){return this.check(e)}check(e,t){C()}get nullable(){return In(this,Zn)}get optional(){return new mn(this)}cast(e){return tr(e,this),e}expect(e){return tr(e,this),e}},on=class extends N{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}},P=(e,t=null)=>new on(e,t);P(on);var sn=class extends N{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}},F=e=>new sn(e);P(sn);var cn=class extends N{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}},ln=(...e)=>new cn(e),un=P(cn),dn=RegExp.escape||(e=>e.replace(/[().|&,$^[\]]/g,e=>`\\`+e)),fn=e=>{if(Kn.check(e))return[dn(e)];if(un.check(e))return e.shape.map(e=>e+``);if(Gn.check(e))return[`[+-]?\\d+.?\\d*`];if(qn.check(e))return[`.*`];if(Ln.check(e))return e.shape.map(fn).flat(1);w()};P(class extends N{constructor(e){super(),this.shape=e,this._r=RegExp(`^`+e.map(fn).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 pn=Symbol(`optional`),mn=class extends N{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[pn](){return!0}},hn=P(mn),gn=class extends N{check(e,t){return t?.extend(null,`never`,typeof e),!1}};new gn,P(gn);var _n=class e extends N{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):bt(this.shape,(n,r)=>{let i=this._isPartial&&!xt(e,r)||n.check(e[r],t);return!i&&t?.extend(r.toString(),n.toString(),typeof e[r],`Object property does not match`),i})}},vn=e=>new _n(e),yn=P(_n),bn=F(e=>e!=null&&(e.constructor===Object||e.constructor==null)),xn=class extends N{constructor(e,t){super(),this.shape={keys:e,values:t}}check(e,t){return e!=null&&bt(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)})}},Sn=(e,t)=>new xn(e,t),Cn=P(xn),wn=class extends N{constructor(e){super(),this.shape=e}check(e,t){return e!=null&&bt(this.shape,(n,r)=>{let i=n.check(e[r],t);return!i&&t?.extend(r.toString(),`Tuple`,typeof n),i})}},Tn=(...e)=>new wn(e);P(wn);var En=class extends N{constructor(e){super(),this.shape=e.length===1?e[0]:new Fn(e)}check(e,t){let n=f(e)&&l(e,e=>this.shape.check(e));return!n&&t?.extend(null,`Array`,``),n}},Dn=(...e)=>new En(e),On=P(En),kn=F(e=>f(e)),An=class extends N{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}},jn=(e,t=null)=>new An(e,t);P(An);var Mn=jn(N),Nn=P(class extends N{constructor(e){super(),this.len=e.length-1,this.args=Tn(...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}}),Pn=F(e=>typeof e==`function`);P(class extends N{constructor(e){super(),this.shape=e}check(e,t){let n=l(this.shape,n=>n.check(e,t));return!n&&t?.extend(null,`Intersectinon`,typeof e),n}},e=>e.shape.length>0);var Fn=class extends N{static _dilutes=!0;constructor(e){super(),this.shape=e}check(e,t){let n=u(this.shape,n=>n.check(e,t));return t?.extend(null,`Union`,typeof e),n}},In=(...e)=>e.findIndex(e=>Ln.check(e))>=0?In(...e.map(e=>er(e)).map(e=>Ln.check(e)?e.shape:[e]).flat(1)):e.length===1?e[0]:new Fn(e),Ln=P(Fn),Rn=()=>!0,zn=F(Rn),Bn=P(sn,e=>e.shape===Rn),Vn=F(e=>typeof e==`bigint`),Hn=F(e=>e===Vn),Un=F(e=>typeof e==`symbol`);F(e=>e===Un);var Wn=F(e=>typeof e==`number`),Gn=F(e=>e===Wn),Kn=F(e=>typeof e==`string`),qn=F(e=>e===Kn),Jn=F(e=>typeof e==`boolean`),Yn=F(e=>e===Jn),Xn=ln(void 0);P(cn,e=>e.shape.length===1&&e.shape[0]===void 0),ln(void 0);var Zn=ln(null),Qn=P(cn,e=>e.shape.length===1&&e.shape[0]===null);P(Uint8Array),P(on,e=>e.shape===Uint8Array);var $n=In(Wn,Kn,Zn,Xn,Vn,Jn,Un);(()=>{let e=Dn(zn),t=Sn(Kn,zn),n=In(Wn,Kn,Zn,Jn,e,t);return e.shape=n,t.shape.values=n,n})();var er=e=>{if(Mn.check(e))return e;if(bn.check(e)){let t={};for(let n in e)t[n]=er(e[n]);return vn(t)}else if(kn.check(e))return In(...e.map(er));else if($n.check(e))return ln(e);else if(Pn.check(e))return P(e);w()},tr=Ft?()=>{}:(e,t)=>{let n=new rn;if(!t.check(e,n))throw S(`Expected value to be of type ${t.constructor.name}.\n${n.toString()}`)},nr=class{constructor(e){this.patterns=[],this.$state=e}if(e,t){return this.patterns.push({if:er(e),h:t}),this}else(e){return this.if(zn,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 S(`Unhandled pattern`)}}},rr=(e=>new nr(e))(zn).if(Gn,(e,t)=>Xt(t,oe,ae)).if(qn,(e,t)=>en(t)).if(Yn,(e,t)=>Yt(t)).if(Hn,(e,t)=>BigInt(Xt(t,oe,ae))).if(Ln,(e,t)=>ir(t,tn(t,e.shape))).if(yn,(e,t)=>{let n={};for(let r in e.shape){let i=e.shape[r];if(hn.check(i)){if(Yt(t))continue;i=i.shape}n[r]=rr(i,t)}return n}).if(On,(e,t)=>{let n=[],r=Zt(t,0,42);for(let i=0;i<r;i++)n.push(ir(t,e.shape));return n}).if(un,(e,t)=>tn(t,e.shape)).if(Qn,(e,t)=>null).if(Nn,(e,t)=>{let n=ir(t,e.res);return()=>n}).if(Bn,(e,t)=>ir(t,tn(t,[Wn,Kn,Zn,Xn,Vn,Jn,Dn(Wn),Sn(In(`a`,`b`,`c`),Wn)]))).if(Cn,(e,t)=>{let n={},r=Xt(t,0,3);for(let i=0;i<r;i++){let r=ir(t,e.shape.keys);n[r]=ir(t,e.shape.values)}return n}).done(),ir=(e,t)=>rr(er(t),e),I=typeof document<`u`?document:{},ar=e=>I.createElement(e),or=()=>I.createDocumentFragment();F(e=>e.nodeType===vr);var sr=e=>I.createTextNode(e);typeof DOMParser<`u`&&new DOMParser;var cr=(e,t)=>(Jt(t,(t,n)=>{n===!1?e.removeAttribute(t):n===!0?e.setAttribute(t,``):e.setAttribute(t,n)}),e),lr=e=>{let t=or();for(let n=0;n<e.length;n++)mr(t,e[n]);return t},ur=(e,t)=>(mr(e,lr(t)),e),dr=(e,t=[],n=[])=>ur(cr(ar(e),t),n);F(e=>e.nodeType===hr);var fr=sr;F(e=>e.nodeType===gr);var pr=e=>r(e,(e,t)=>`${t}:${e};`).join(``),mr=(e,t)=>e.appendChild(t),hr=I.ELEMENT_NODE,gr=I.TEXT_NODE;I.CDATA_SECTION_NODE,I.COMMENT_NODE;var _r=I.DOCUMENT_NODE;I.DOCUMENT_TYPE_NODE;var vr=I.DOCUMENT_FRAGMENT_NODE;F(e=>e.nodeType===_r);var L=Symbol,yr=L(),br=L(),xr=L(),Sr=L(),Cr=L(),wr=L(),Tr=L(),Er=L(),Dr=L(),Or=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};k();var kr={[yr]:M(`font-weight`,`bold`),[br]:M(`font-weight`,`normal`),[xr]:M(`color`,`blue`),[Cr]:M(`color`,`green`),[Sr]:M(`color`,`grey`),[wr]:M(`color`,`red`),[Tr]:M(`color`,`purple`),[Er]:M(`color`,`orange`),[Dr]:M(`color`,`black`)},Ar=It?t=>{t.length===1&&t[0]?.constructor===Function&&(t=t[0]());let n=[],r=[],i=e(),a=[],o=0;for(;o<t.length;o++){let e=t[o],a=kr[e];if(a!==void 0)i.set(a.left,a.right);else{if(e===void 0)break;if(e.constructor===String||e.constructor===Number){let t=pr(i);o>0||t.length>0?(n.push(`%c`+e),r.push(t)):n.push(e)}else break}}for(o>0&&(a=r,a.unshift(n.join(``)));o<t.length;o++){let e=t[o];e instanceof Symbol||a.push(e)}return a}:Or,jr=(...e)=>{console.log(...Ar(e)),Nr.forEach(t=>t.print(e))},Mr=(...e)=>{console.warn(...Ar(e)),e.unshift(Er),Nr.forEach(t=>t.print(e))},Nr=a(),Pr=e=>({[Symbol.iterator](){return this},next:e}),Fr=(e,t)=>Pr(()=>{let n;do n=e.next();while(!n.done&&!t(n.value));return n}),Ir=(e,t)=>Pr(()=>{let{done:n,value:r}=e.next();return{done:n,value:n?void 0:t(r)}}),Lr=class{constructor(e,t){this.clock=e,this.len=t}},Rr=class{constructor(){this.clients=new Map}},zr=(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])Zi(e,i,o.clock,o.len,n)}}),Br=(e,t)=>{let n=0,r=e.length-1;for(;n<=r;){let i=m((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},Vr=(e,t)=>{let n=e.clients.get(t.client);return n!==void 0&&Br(n,t.clock)!==null},Hr=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 Lr(r.clock,h(r.len,i.clock+i.len-r.clock)):(n<t&&(e[n]=i),n++)}e.length=n})},Ur=e=>{let t=new Rr;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++)s(a,e[t].clients.get(i)||[]);t.clients.set(i,a)}});return Hr(t),t},Wr=(e,t,r,i)=>{n(e.clients,t,()=>[]).push(new Lr(r,i))},Gr=()=>new Rr,Kr=e=>{let t=Gr();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 Lr(i,a))}}r.length>0&&t.clients.set(n,r)}),t},qr=(e,t)=>{y(e.restEncoder,t.clients.size),c(t.clients.entries()).sort((e,t)=>t[0]-e[0]).forEach(([t,n])=>{e.resetDsCurVal(),y(e.restEncoder,t);let r=n.length;y(e.restEncoder,r);for(let t=0;t<r;t++){let r=n[t];e.writeDsClock(r.clock),e.writeDsLen(r.len)}})},Jr=e=>{let t=new Rr,r=D(e.restDecoder);for(let i=0;i<r;i++){e.resetDsCurVal();let r=D(e.restDecoder),i=D(e.restDecoder);if(i>0){let a=n(t.clients,r,()=>[]);for(let t=0;t<i;t++)a.push(new Lr(e.readDsClock(),e.readDsLen()))}}return t},Yr=(e,t,n)=>{let r=new Rr,i=D(e.restDecoder);for(let a=0;a<i;a++){e.resetDsCurVal();let i=D(e.restDecoder),a=D(e.restDecoder),o=n.clients.get(i)||[],s=B(n,i);for(let n=0;n<a;n++){let n=e.readDsClock(),a=n+e.readDsLen();if(n<s){s<a&&Wr(r,i,s,a-s);let e=V(o,n),c=o[e];for(!c.deleted&&c.id.clock<n&&(o.splice(e+1,0,as(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,as(t,c,a-c.id.clock)),c.delete(t))}else Wr(r,i,n,a-n)}}if(r.clients.size>0){let e=new R;return y(e.restEncoder,0),qr(e,r),e.toUint8Array()}return null},Xr=tt,Zr=class e extends p{constructor({guid:e=rt(),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=Xr(),this.guid=e,this.collectionid=t,this.share=new Map,this.store=new Wi,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=it(e=>{this.on(`load`,()=>{this.isLoaded=!0,e(this)})});let s=()=>it(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&&U(e.parent.doc,e=>{e.subdocsLoaded.add(this)},null,!0),this.shouldLoad=!0}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(c(this.subdocs).map(e=>e.guid))}transact(e,t=null){return U(this,e,t)}get(e,t=K){let r=n(this.share,e,()=>{let e=new t;return e._integrate(this,null),e}),i=r.constructor;if(t!==K&&i!==t)if(i===K){let n=new t;n._map=r._map,r._map.forEach(e=>{for(;e!==null;e=e.left)e.parent=n}),n._start=r._start;for(let e=n._start;e!==null;e=e.right)e.parent=n;return n._length=r._length,this.share.set(e,n),n._integrate(this,null),n}else throw Error(`Type with the name ${e} has already been defined with a different constructor`);return r}getArray(e=``){return this.get(e,Za)}getText(e=``){return this.get(e,vo)}getMap(e=``){return this.get(e,eo)}getXmlElement(e=``){return this.get(e,Co)}getXmlFragment(e=``){return this.get(e,xo)}toJSON(){let e={};return this.share.forEach((t,n)=>{e[n]=t.toJSON()}),e}destroy(){this.isDestroyed=!0,c(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,U(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()}},Qr=class{constructor(e){this.restDecoder=e}resetDsCurVal(){}readDsClock(){return D(this.restDecoder)}readDsLen(){return D(this.restDecoder)}},$r=class extends Qr{readLeftID(){return z(D(this.restDecoder),D(this.restDecoder))}readRightID(){return z(D(this.restDecoder),D(this.restDecoder))}readClient(){return D(this.restDecoder)}readInfo(){return Ge(this.restDecoder)}readString(){return O(this.restDecoder)}readParentInfo(){return D(this.restDecoder)===1}readTypeRef(){return D(this.restDecoder)}readLen(){return D(this.restDecoder)}readAny(){return Ye(this.restDecoder)}readBuf(){return Kt(E(this.restDecoder))}readJSON(){return JSON.parse(O(this.restDecoder))}readKey(){return O(this.restDecoder)}},ei=class{constructor(e){this.dsCurrVal=0,this.restDecoder=e}resetDsCurVal(){this.dsCurrVal=0}readDsClock(){return this.dsCurrVal+=D(this.restDecoder),this.dsCurrVal}readDsLen(){let e=D(this.restDecoder)+1;return this.dsCurrVal+=e,e}},ti=class extends ei{constructor(e){super(e),this.keys=[],D(e),this.keyClockDecoder=new Qe(E(e)),this.clientDecoder=new Ze(E(e)),this.leftClockDecoder=new Qe(E(e)),this.rightClockDecoder=new Qe(E(e)),this.infoDecoder=new Xe(E(e),Ge),this.stringDecoder=new $e(E(e)),this.parentInfoDecoder=new Xe(E(e),Ge),this.typeRefDecoder=new Ze(E(e)),this.lenDecoder=new Ze(E(e))}readLeftID(){return new Di(this.clientDecoder.read(),this.leftClockDecoder.read())}readRightID(){return new Di(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 Ye(this.restDecoder)}readBuf(){return E(this.restDecoder)}readJSON(){return Ye(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}}},ni=class{constructor(){this.restEncoder=g()}toUint8Array(){return _(this.restEncoder)}resetDsCurVal(){}writeDsClock(e){y(this.restEncoder,e)}writeDsLen(e){y(this.restEncoder,e)}},ri=class extends ni{writeLeftID(e){y(this.restEncoder,e.client),y(this.restEncoder,e.clock)}writeRightID(e){y(this.restEncoder,e.client),y(this.restEncoder,e.clock)}writeClient(e){y(this.restEncoder,e)}writeInfo(e){Se(this.restEncoder,e)}writeString(e){b(this.restEncoder,e)}writeParentInfo(e){y(this.restEncoder,+!!e)}writeTypeRef(e){y(this.restEncoder,e)}writeLen(e){y(this.restEncoder,e)}writeAny(e){Ne(this.restEncoder,e)}writeBuf(e){x(this.restEncoder,e)}writeJSON(e){b(this.restEncoder,JSON.stringify(e))}writeKey(e){b(this.restEncoder,e)}},ii=class{constructor(){this.restEncoder=g(),this.dsCurrVal=0}toUint8Array(){return _(this.restEncoder)}resetDsCurVal(){this.dsCurrVal=0}writeDsClock(e){let t=e-this.dsCurrVal;this.dsCurrVal=e,y(this.restEncoder,t)}writeDsLen(e){e===0&&w(),y(this.restEncoder,e-1),this.dsCurrVal+=e}},R=class extends ii{constructor(){super(),this.keyMap=new Map,this.keyClock=0,this.keyClockEncoder=new Re,this.clientEncoder=new Ie,this.leftClockEncoder=new Re,this.rightClockEncoder=new Re,this.infoEncoder=new Pe(Se),this.stringEncoder=new ze,this.parentInfoEncoder=new Pe(Se),this.typeRefEncoder=new Ie,this.lenEncoder=new Ie}toUint8Array(){let e=g();return y(e,0),x(e,this.keyClockEncoder.toUint8Array()),x(e,this.clientEncoder.toUint8Array()),x(e,this.leftClockEncoder.toUint8Array()),x(e,this.rightClockEncoder.toUint8Array()),x(e,_(this.infoEncoder)),x(e,this.stringEncoder.toUint8Array()),x(e,_(this.parentInfoEncoder)),x(e,this.typeRefEncoder.toUint8Array()),x(e,this.lenEncoder.toUint8Array()),Ee(e,_(this.restEncoder)),_(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){Ne(this.restEncoder,e)}writeBuf(e){x(this.restEncoder,e)}writeJSON(e){Ne(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)}},ai=(e,t,n,r)=>{r=h(r,t[0].id.clock);let i=V(t,r);y(e.restEncoder,t.length-i),e.writeClient(n),y(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)},oi=(e,t,n)=>{let r=new Map;n.forEach((e,n)=>{B(t,n)>e&&r.set(n,e)}),Gi(t).forEach((e,t)=>{n.has(t)||r.set(t,0)}),y(e.restEncoder,r.size),c(r.entries()).sort((e,t)=>t[0]-e[0]).forEach(([n,r])=>{ai(e,t.clients.get(n),n,r)})},si=(t,n)=>{let r=e(),i=D(t.restDecoder);for(let e=0;e<i;e++){let e=D(t.restDecoder),i=Array(e),a=t.readClient(),o=D(t.restDecoder);r.set(a,{i:0,refs:i});for(let r=0;r<e;r++){let e=t.readInfo();switch(31&e){case 0:{let e=t.readLen();i[r]=new J(z(a,o),e),o+=e;break}case 10:{let e=D(t.restDecoder);i[r]=new $(z(a,o),e),o+=e;break}default:{let s=(e&192)==0,c=new Q(z(a,o),null,(e&128)==128?t.readLeftID():null,null,(e&64)==64?t.readRightID():null,s?t.readParentInfo()?n.get(t.readString()):t.readLeftID():null,s&&(e&32)==32?t.readString():null,cs(t,e));i[r]=c,o+=c.length}}}}return r},ci=(e,t,r)=>{let i=[],a=c(r.keys()).sort((e,t)=>e-t);if(a.length===0)return null;let o=()=>{if(a.length===0)return null;let e=r.get(a[a.length-1]);for(;e.refs.length===e.i;)if(a.pop(),a.length>0)e=r.get(a[a.length-1]);else return null;return e},s=o();if(s===null)return null;let l=new Wi,u=new Map,d=(e,t)=>{let n=u.get(e);(n==null||n>t)&&u.set(e,t)},f=s.refs[s.i++],p=new Map,ee=()=>{for(let e of i){let t=e.id.client,n=r.get(t);n?(n.i--,l.clients.set(t,n.refs.slice(n.i)),r.delete(t),n.i=0,n.refs=[]):l.clients.set(t,[e]),a=a.filter(e=>e!==t)}i.length=0};for(;;){if(f.constructor!==$){let a=n(p,f.id.client,()=>B(t,f.id.client))-f.id.clock;if(a<0)i.push(f),d(f.id.client,f.id.clock-1),ee();else{let n=f.getMissing(e,t);if(n!==null){i.push(f);let e=r.get(n)||{refs:[],i:0};if(e.refs.length===e.i)d(n,B(t,n)),ee();else{f=e.refs[e.i++];continue}}else (a===0||a<f.length)&&(f.integrate(e,a),p.set(f.id.client,f.id.clock+f.length))}}if(i.length>0)f=i.pop();else if(s!==null&&s.i<s.refs.length)f=s.refs[s.i++];else{if(s=o(),s===null)break;f=s.refs[s.i++]}}if(l.clients.size>0){let e=new R;return oi(e,l,new Map),y(e.restEncoder,0),{missing:u,update:e.toUint8Array()}}return null},li=(e,t)=>oi(e,t.doc.store,t.beforeState),ui=(e,t,n,r=new ti(e))=>U(t,e=>{e.local=!1;let t=!1,n=e.doc,i=n.store,a=ci(e,i,si(r,n)),o=i.pendingStructs;if(o){for(let[e,n]of o.missing)if(n<B(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=ma([o.update,a.update])}}else i.pendingStructs=a;let s=Yr(r,e,i);if(i.pendingDs){let t=new ti(T(i.pendingDs));D(t.restDecoder);let n=Yr(t,e,i);s&&n?i.pendingDs=ma([s,n]):i.pendingDs=s||n}else i.pendingDs=s;if(t){let t=i.pendingStructs.update;i.pendingStructs=null,di(e.doc,t)}},n,!1),di=(e,t,n,r=ti)=>{let i=T(t);ui(i,e,n,new r(i))},fi=(e,t,n)=>di(e,t,n,$r),pi=(e,t,n=new Map)=>{oi(e,t.store,n),qr(e,Kr(t.store))},mi=(e,t=new Uint8Array([0]),n=new R)=>{pi(n,e,_i(t));let r=[n.toUint8Array()];if(e.store.pendingDs&&r.push(e.store.pendingDs),e.store.pendingStructs&&r.push(ha(e.store.pendingStructs.update,t)),r.length>1){if(n.constructor===ri)return fa(r.map((e,t)=>t===0?e:ya(e)));if(n.constructor===R)return ma(r)}return r[0]},hi=(e,t)=>mi(e,t,new ri),gi=e=>{let t=new Map,n=D(e.restDecoder);for(let r=0;r<n;r++){let n=D(e.restDecoder),r=D(e.restDecoder);t.set(n,r)}return t},_i=e=>gi(new Qr(T(e))),vi=(e,t)=>(y(e.restEncoder,t.size),c(t.entries()).sort((e,t)=>t[0]-e[0]).forEach(([t,n])=>{y(e.restEncoder,t),y(e.restEncoder,n)}),e),yi=(e,t)=>vi(e,Gi(t.store)),bi=(e,t=new ii)=>(e instanceof Map?vi(t,e):yi(t,e),t.toUint8Array()),xi=e=>bi(e,new ni),Si=class{constructor(){this.l=[]}},Ci=()=>new Si,wi=(e,t)=>e.l.push(t),Ti=(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.`)},Ei=(e,t,n)=>Tt(e.l,[t,n]),Di=class{constructor(e,t){this.client=e,this.clock=t}},Oi=(e,t)=>e===t||e!==null&&t!==null&&e.client===t.client&&e.clock===t.clock,z=(e,t)=>new Di(e,t),ki=e=>{for(let[t,n]of e.doc.share.entries())if(n===e)return t;throw w()},Ai=(e,t)=>{for(;t!==null;){if(t.parent===e)return!0;t=t.parent._item}return!1},ji=class{constructor(e,t,n,r=0){this.type=e,this.tname=t,this.item=n,this.assoc=r}},Mi=e=>{let t={};return e.type&&(t.type=e.type),e.tname&&(t.tname=e.tname),e.item&&(t.item=e.item),e.assoc!=null&&(t.assoc=e.assoc),t},Ni=e=>new ji(e.type==null?null:z(e.type.client,e.type.clock),e.tname??null,e.item==null?null:z(e.item.client,e.item.clock),e.assoc==null?0:e.assoc),Pi=class{constructor(e,t,n=0){this.type=e,this.index=t,this.assoc=n}},Fi=(e,t,n=0)=>new Pi(e,t,n),Ii=(e,t,n)=>{let r=null,i=null;return e._item===null?i=ki(e):r=z(e._item.id.client,e._item.id.clock),new ji(r,i,t,n)},Li=(e,t,n=0)=>{let r=e._start;if(n<0){if(t===0)return Ii(e,null,n);t--}for(;r!==null;){if(!r.deleted&&r.countable){if(r.length>t)return Ii(e,z(r.id.client,r.id.clock+t),n);t-=r.length}if(r.right===null&&n<0)return Ii(e,r.lastId,n);r=r.right}return Ii(e,null,n)},Ri=(e,t)=>{let n=qi(e,t);return{item:n,diff:t.clock-n.id.clock}},zi=(e,t,n=!0)=>{let r=t.store,i=e.item,a=e.type,o=e.tname,s=e.assoc,c=null,l=0;if(i!==null){if(B(r,i.client)<=i.clock)return null;let e=n?rs(r,i):Ri(r,i),t=e.item;if(!(t instanceof Q))return null;if(c=t.parent,c._item===null||!c._item.deleted){l=t.deleted||!t.countable?0:e.diff+(s>=0?0:1);let n=t.left;for(;n!==null;)!n.deleted&&n.countable&&(l+=n.length),n=n.left}}else{if(o!==null)c=t.get(o);else if(a!==null){if(B(r,a.client)<=a.clock)return null;let{item:e}=n?rs(r,a):{item:qi(r,a)};if(e instanceof Q&&e.content instanceof Z)c=e.content.type;else return null}else throw w();l=s>=0?c._length:0}return Fi(c,l,e.assoc)},Bi=(e,t)=>e===t||e!==null&&t!==null&&e.tname===t.tname&&Oi(e.item,t.item)&&Oi(e.type,t.type)&&e.assoc===t.assoc,Vi=class{constructor(e,t){this.ds=e,this.sv=t}};((e,t)=>new Vi(e,t))(Gr(),new Map);var Hi=(e,t)=>t===void 0?!e.deleted:t.sv.has(e.id.client)&&(t.sv.get(e.id.client)||0)>e.id.clock&&!Vr(t.ds,e.id),Ui=(e,t)=>{let r=n(e.meta,Ui,a),i=e.doc.store;r.has(t)||(t.sv.forEach((t,n)=>{t<B(i,n)&&H(e,z(n,t))}),zr(e,t.ds,e=>{}),r.add(t))},Wi=class{constructor(){this.clients=new Map,this.pendingStructs=null,this.pendingDs=null}},Gi=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},B=(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},Ki=(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 w()}n.push(t)},V=(e,t)=>{let n=0,r=e.length-1,i=e[r],a=i.id.clock;if(a===t)return r;let o=m(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=m((n+r)/2)}throw w()},qi=(e,t)=>{let n=e.clients.get(t.client);return n[V(n,t.clock)]},Ji=(e,t,n)=>{let r=V(t,n),i=t[r];return i.id.clock<n&&i instanceof Q?(t.splice(r+1,0,as(e,i,n-i.id.clock)),r+1):r},H=(e,t)=>{let n=e.doc.store.clients.get(t.client);return n[Ji(e,n,t.clock)]},Yi=(e,t,n)=>{let r=t.clients.get(n.client),i=V(r,n.clock),a=r[i];return n.clock!==a.id.clock+a.length-1&&a.constructor!==J&&r.splice(i+1,0,as(e,a,n.clock-a.id.clock+1)),a},Xi=(e,t,n)=>{let r=e.clients.get(t.id.client);r[V(r,t.id.clock)]=n},Zi=(e,t,n,r,i)=>{if(r===0)return;let a=n+r,o=Ji(e,t,n),s;do s=t[o++],a<s.id.clock+s.length&&Ji(e,t,a),i(s);while(o<t.length&&t[o].id.clock<a)},Qi=class{constructor(e,t,n){this.doc=e,this.deleteSet=new Rr,this.beforeState=Gi(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}},$i=(e,t)=>t.deleteSet.clients.size===0&&!i(t.afterState,(e,n)=>t.beforeState.get(n)!==e)?!1:(Hr(t.deleteSet),li(e,t),qr(e,t.deleteSet),!0),ea=(e,t,r)=>{let i=t._item;(i===null||i.id.clock<(e.beforeState.get(i.id.client)||0)&&!i.deleted)&&n(e.changed,t,a).add(r)},ta=(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 Q&&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},na=(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=V(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 Q&&i.deleted&&!i.keep&&n(i)&&i.gc(t,!1)}}}},ra=(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=ne(r.length-1,1+V(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+ta(r,e)}})},ia=(e,t)=>{if(t<e.length){let n=e[t],r=n.doc,i=r.store,a=n.deleteSet,o=n._mergeStructs;try{Hr(a),n.afterState=Gi(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(()=>{Ei(r._dEH,t,n)}))}),e.push(()=>r.emit(`afterTransaction`,[n,r])),e.push(()=>{n._needFormattingCleanup&&ho(n)})}),Tt(e,[])}finally{r.gc&&na(a,i,r.gcFilter),ra(a,i),n.afterState.forEach((e,t)=>{let r=n.beforeState.get(t)||0;if(r!==e){let e=i.clients.get(t),n=h(V(e,r),1);for(let t=e.length-1;t>=n;)t-=1+ta(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=V(r,n);a+1<r.length&&ta(r,a+1)>1||a>0&&ta(r,a)}if(!n.local&&n.afterState.get(r.clientID)!==n.beforeState.get(r.clientID)&&(jr(Er,yr,`[yjs] `,br,wr,`Changed the client-id because another client seems to be using it.`),r.clientID=Xr()),r.emit(`afterTransactionCleanup`,[n,r]),r._observers.has(`update`)){let e=new ri;$i(e,n)&&r.emit(`update`,[e.toUint8Array(),n.origin,r,n])}if(r._observers.has(`updateV2`)){let e=new R;$i(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])):ia(e,t+1)}}},U=(e,t,n=null,r=!0)=>{let i=e._transactionCleanups,a=!1,o=null;e._transaction===null&&(a=!0,e._transaction=new Qi(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&&ia(i,0)}}return o},aa=class{constructor(e,t){this.insertions=t,this.deletions=e,this.meta=new Map}},oa=(e,t,n)=>{zr(e,n.deletions,n=>{n instanceof Q&&t.scope.some(t=>t===e.doc||Ai(t,n))&&is(n,!1)})},sa=(e,t,n)=>{let r=null,i=e.doc,a=e.scope;U(i,n=>{for(;t.length>0&&e.currStackItem===null;){let r=i.store,o=t.pop(),s=new Set,c=[],l=!1;zr(n,o.insertions,e=>{if(e instanceof Q){if(e.redone!==null){let{item:t,diff:i}=rs(r,e.id);i>0&&(t=H(n,z(t.id.client,t.id.clock+i))),e=t}!e.deleted&&a.some(t=>t===n.doc||Ai(t,e))&&c.push(e)}}),zr(n,o.deletions,e=>{e instanceof Q&&a.some(t=>t===n.doc||Ai(t,e))&&!Vr(o.insertions,e.id)&&s.add(e)}),s.forEach(t=>{l=ss(n,t,s,o.insertions,e.ignoreRemoteMapChanges,e)!==null||l});for(let t=c.length-1;t>=0;t--){let r=c[t];e.deleteFilter(r)&&(r.delete(n),l=!0)}e.currStackItem=l?o:null}n.changed.forEach((e,t)=>{e.has(null)&&t._searchMarker&&(t._searchMarker.length=0)}),r=n},e);let o=e.currStackItem;if(o!=null){let t=r.changedParentTypes;e.emit(`stack-item-popped`,[{stackItem:o,type:n,changedParentTypes:t,origin:e},e]),e.currStackItem=null}return o},ca=class extends p{constructor(e,{captureTimeout:t=500,captureTransaction:n=e=>!0,deleteFilter:r=()=>!0,trackedOrigins:i=new Set([null]),ignoreRemoteMapChanges:a=!1,doc:o=f(e)?e[0].doc:e instanceof Zr?e:e.doc}={}){super(),this.scope=[],this.doc=o,this.addToScope(e),this.deleteFilter=r,i.add(this),this.trackedOrigins=i,this.captureTransaction=n,this.undoStack=[],this.redoStack=[],this.undoing=!1,this.redoing=!1,this.currStackItem=null,this.lastChange=0,this.ignoreRemoteMapChanges=a,this.captureTimeout=t,this.afterTransactionHandler=e=>{if(!this.captureTransaction(e)||!this.scope.some(t=>e.changedParentTypes.has(t)||t===this.doc)||!this.trackedOrigins.has(e.origin)&&(!e.origin||!this.trackedOrigins.has(e.origin.constructor)))return;let t=this.undoing,n=this.redoing,r=t?this.redoStack:this.undoStack;t?this.stopCapturing():n||this.clear(!1,!0);let i=new Rr;e.afterState.forEach((t,n)=>{let r=e.beforeState.get(n)||0,a=t-r;a>0&&Wr(i,n,r,a)});let a=k(),o=!1;if(this.lastChange>0&&a-this.lastChange<this.captureTimeout&&r.length>0&&!t&&!n){let t=r[r.length-1];t.deletions=Ur([t.deletions,e.deleteSet]),t.insertions=Ur([t.insertions,i])}else r.push(new aa(e.deleteSet,i)),o=!0;!t&&!n&&(this.lastChange=a),zr(e,e.deleteSet,t=>{t instanceof Q&&this.scope.some(n=>n===e.doc||Ai(n,t))&&is(t,!0)});let s=[{stackItem:r[r.length-1],origin:e.origin,type:t?`redo`:`undo`,changedParentTypes:e.changedParentTypes},this];o?this.emit(`stack-item-added`,s):this.emit(`stack-item-updated`,s)},this.doc.on(`afterTransaction`,this.afterTransactionHandler),this.doc.on(`destroy`,()=>{this.destroy()})}addToScope(e){let t=new Set(this.scope);e=f(e)?e:[e],e.forEach(e=>{t.has(e)||(t.add(e),(e instanceof K?e.doc!==this.doc:e!==this.doc)&&Mr(`[yjs#509] Not same Y.Doc`),this.scope.push(e))})}addTrackedOrigin(e){this.trackedOrigins.add(e)}removeTrackedOrigin(e){this.trackedOrigins.delete(e)}clear(e=!0,t=!0){(e&&this.canUndo()||t&&this.canRedo())&&this.doc.transact(n=>{e&&(this.undoStack.forEach(e=>oa(n,this,e)),this.undoStack=[]),t&&(this.redoStack.forEach(e=>oa(n,this,e)),this.redoStack=[]),this.emit(`stack-cleared`,[{undoStackCleared:e,redoStackCleared:t}])})}stopCapturing(){this.lastChange=0}undo(){this.undoing=!0;let e;try{e=sa(this,this.undoStack,`undo`)}finally{this.undoing=!1}return e}redo(){this.redoing=!0;let e;try{e=sa(this,this.redoStack,`redo`)}finally{this.redoing=!1}return e}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}destroy(){this.trackedOrigins.delete(this),this.doc.off(`afterTransaction`,this.afterTransactionHandler),super.destroy()}};function*la(e){let t=D(e.restDecoder);for(let n=0;n<t;n++){let t=D(e.restDecoder),n=e.readClient(),r=D(e.restDecoder);for(let i=0;i<t;i++){let t=e.readInfo();if(t===10){let t=D(e.restDecoder);yield new $(z(n,r),t),r+=t}else if(31&t){let i=(t&192)==0,a=new Q(z(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,cs(e,t));yield a,r+=a.length}else{let t=e.readLen();yield new J(z(n,r),t),r+=t}}}}var ua=class{constructor(e,t){this.gen=la(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===$);return this.curr}},da=class{constructor(e){this.currClient=0,this.startClock=0,this.written=0,this.encoder=e,this.clientStructs=[]}},fa=e=>ma(e,$r,ri),pa=(e,t)=>{if(e.constructor===J){let{client:n,clock:r}=e.id;return new J(z(n,r+t),e.length-t)}else if(e.constructor===$){let{client:n,clock:r}=e.id;return new $(z(n,r+t),e.length-t)}else{let n=e,{client:r,clock:i}=n.id;return new Q(z(r,i+t),null,z(r,i+t-1),null,n.rightOrigin,n.parent,n.parentSub,n.content.splice(t))}},ma=(e,t=ti,n=R)=>{if(e.length===1)return e[0];let r=e.map(e=>new t(T(e))),i=r.map(e=>new ua(e,!0)),a=null,o=new n,s=new da(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===$?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)W(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===$)a.struct.length=n.id.clock+n.length-a.struct.id.clock;else{W(s,a.struct,a.offset);let e=n.id.clock-a.struct.id.clock-a.struct.length;a={struct:new $(z(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===$?a.struct.length-=t:n=pa(n,t)),a.struct.mergeWith(n)||(W(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!==$;n=e.next())W(s,a.struct,a.offset),a={struct:n,offset:0}}return a!==null&&(W(s,a.struct,a.offset),a=null),_a(s),qr(o,Ur(r.map(e=>Jr(e)))),o.toUint8Array()},ha=(e,t,n=ti,r=R)=>{let i=_i(t),a=new r,o=new da(a),s=new n(T(e)),c=new ua(s,!1);for(;c.curr;){let e=c.curr,t=e.id.client,n=i.get(t)||0;if(c.curr.constructor===$){c.next();continue}if(e.id.clock+e.length>n)for(W(o,e,h(n-e.id.clock,0)),c.next();c.curr&&c.curr.id.client===t;)W(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 _a(o),qr(a,Jr(s)),a.toUint8Array()},ga=e=>{e.written>0&&(e.clientStructs.push({written:e.written,restEncoder:_(e.encoder.restEncoder)}),e.encoder.restEncoder=g(),e.written=0)},W=(e,t,n)=>{e.written>0&&e.currClient!==t.id.client&&ga(e),e.written===0&&(e.currClient=t.id.client,e.encoder.writeClient(t.id.client),y(e.encoder.restEncoder,t.id.clock+n)),t.write(e.encoder,n),e.written++},_a=e=>{ga(e);let t=e.encoder.restEncoder;y(t,e.clientStructs.length);for(let n=0;n<e.clientStructs.length;n++){let r=e.clientStructs[n];y(t,r.written),Ee(t,r.restEncoder)}},va=(e,t,n,r)=>{let i=new n(T(e)),a=new ua(i,!1),o=new r,s=new da(o);for(let e=a.curr;e!==null;e=a.next())W(s,t(e),0);return _a(s),qr(o,Jr(i)),o.toUint8Array()},ya=e=>va(e,Et,ti,ri),ba=`You must not compute changes after the event-handler fired.`,xa=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||=Sa(this.currentTarget,this.target)}deletes(e){return Vr(this.transaction.deleteSet,e.id)}get keys(){if(this._keys===null){if(this.transaction.doc._transactionCleanups.length===0)throw S(ba);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=o(e.content.getContent());else return;else e!==null&&this.deletes(e)?(i=`update`,a=o(e.content.getContent())):(i=`add`,a=void 0)}else if(this.deletes(r))i=`delete`,a=o(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 S(ba);let t=this.target,n=a(),r=a(),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}},Sa=(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},G=()=>{Mr(`Invalid access: Add Yjs type to a document before reading data.`)},Ca=80,wa=0,Ta=class{constructor(e,t){e.marker=!0,this.p=e,this.index=t,this.timestamp=wa++}},Ea=e=>{e.timestamp=wa++},Da=(e,t,n)=>{e.p.marker=!1,e.p=t,t.marker=!0,e.index=n,e.timestamp=wa++},Oa=(e,t,n)=>{if(e.length>=Ca){let r=e.reduce((e,t)=>e.timestamp<t.timestamp?e:t);return Da(r,t,n),r}else{let r=new Ta(t,n);return e.push(r),r}},ka=(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)=>te(t-e.index)<te(t-n.index)?e:n),r=e._start,i=0;for(n!==null&&(r=n.p,i=n.index,Ea(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&&te(n.index-i)<r.parent.length/Ca?(Da(n,r,i),n):Oa(e._searchMarker,r,i)},Aa=(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=h(t,i.index+n))}},ja=(e,t,r)=>{let i=e,a=t.changedParentTypes;for(;n(a,e,()=>[]).push(r),e._item!==null;)e=e._item.parent;Ei(i._eH,r,t)},K=class{constructor(){this._item=null,this._map=new Map,this._start=null,this.doc=null,this._length=0,this._eH=Ci(),this._dEH=Ci(),this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(e,t){this.doc=e,this._item=t}_copy(){throw C()}clone(){throw C()}_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){wi(this._eH,e)}observeDeep(e){wi(this._dEH,e)}unobserve(e){Ti(this._eH,e)}unobserveDeep(e){Ti(this._dEH,e)}toJSON(){}},Ma=(e,t,n)=>{e.doc??G(),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},Na=e=>{e.doc??G();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},Pa=(e,t)=>{let n=0,r=e._start;for(e.doc??G();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}},Fa=(e,t)=>{let n=[];return Pa(e,(r,i)=>{n.push(t(r,i,e))}),n},Ia=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}}}},La=(e,t)=>{e.doc??G();let n=ka(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}},Ra=(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 Q(z(o,B(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Go(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 Q(z(o,B(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Mo(new Uint8Array(n))),i.integrate(e,0);break;case Zr:i=new Q(z(o,B(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Lo(n)),i.integrate(e,0);break;default:if(n instanceof K)i=new Q(z(o,B(s,o)),i,i&&i.lastId,c,c&&c.id,t,null,new Z(n)),i.integrate(e,0);else throw Error(`Unexpected content type in insert operation`)}}}),u()},za=()=>S(`Length exceeded!`),Ba=(e,t,n,r)=>{if(n>t._length)throw za();if(n===0)return t._searchMarker&&Aa(t._searchMarker,n,r.length),Ra(e,t,null,r);let i=n,a=ka(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&&H(e,z(o.id.client,o.id.clock+n));break}n-=o.length}return t._searchMarker&&Aa(t._searchMarker,i,r.length),Ra(e,t,o,r)},Va=(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 Ra(e,t,r,n)},Ha=(e,t,n,r)=>{if(r===0)return;let i=n,a=r,o=ka(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&&H(e,z(s.id.client,s.id.clock+n)),n-=s.length);for(;r>0&&s!==null;)s.deleted||(r<s.length&&H(e,z(s.id.client,s.id.clock+r)),s.delete(e),r-=s.length),s=s.right;if(r>0)throw za();t._searchMarker&&Aa(t._searchMarker,i,-a+r)},Ua=(e,t,n)=>{let r=t._map.get(n);r!==void 0&&r.delete(e)},Wa=(e,t,n,r)=>{let i=t._map.get(n)||null,a=e.doc,o=a.clientID,s;if(r==null)s=new Go([r]);else switch(r.constructor){case Number:case Object:case Boolean:case Array:case String:case Date:case BigInt:s=new Go([r]);break;case Uint8Array:s=new Mo(r);break;case Zr:s=new Lo(r);break;default:if(r instanceof K)s=new Z(r);else throw Error(`Unexpected content type`)}new Q(z(o,B(a.store,o)),i,i&&i.lastId,null,null,t,n,s).integrate(e,0)},Ga=(e,t)=>{e.doc??G();let n=e._map.get(t);return n!==void 0&&!n.deleted?n.content.getContent()[n.length-1]:void 0},Ka=e=>{let t={};return e.doc??G(),e._map.forEach((e,n)=>{e.deleted||(t[n]=e.content.getContent()[e.length-1])}),t},qa=(e,t)=>{e.doc??G();let n=e._map.get(t);return n!==void 0&&!n.deleted},Ja=(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&&Hi(i,t)&&(n[r]=i.content.getContent()[i.length-1])}),n},Ya=e=>(e.doc??G(),Fr(e._map.entries(),e=>!e[1].deleted)),Xa=class extends xa{},Za=class e extends K{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 K?e.clone():e)),t}get length(){return this.doc??G(),this._length}_callObserver(e,t){super._callObserver(e,t),ja(this,e,new Xa(this,e))}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):U(this.doc,n=>{Ba(n,this,e,t)})}push(e){this.doc===null?this._prelimContent.push(...e):U(this.doc,t=>{Va(t,this,e)})}unshift(e){this.insert(0,e)}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):U(this.doc,n=>{Ha(n,this,e,t)})}get(e){return La(this,e)}toArray(){return Na(this)}slice(e=0,t=this.length){return Ma(this,e,t)}toJSON(){return this.map(e=>e instanceof K?e.toJSON():e)}map(e){return Fa(this,e)}forEach(e){Pa(this,e)}[Symbol.iterator](){return Ia(this)}_write(e){e.writeTypeRef(Yo)}},Qa=e=>new Za,$a=class extends xa{constructor(e,t,n){super(e,t),this.keysChanged=n}},eo=class e extends K{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 K?e.clone():e)}),t}_callObserver(e,t){ja(this,e,new $a(this,e,t))}toJSON(){this.doc??G();let e={};return this._map.forEach((t,n)=>{if(!t.deleted){let r=t.content.getContent()[t.length-1];e[n]=r instanceof K?r.toJSON():r}}),e}get size(){return[...Ya(this)].length}keys(){return Ir(Ya(this),e=>e[0])}values(){return Ir(Ya(this),e=>e[1].content.getContent()[e[1].length-1])}entries(){return Ir(Ya(this),e=>[e[0],e[1].content.getContent()[e[1].length-1]])}forEach(e){this.doc??G(),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):U(this.doc,t=>{Ua(t,this,e)})}set(e,t){return this.doc===null?this._prelimContent.set(e,t):U(this.doc,n=>{Wa(n,this,e,t)}),t}get(e){return Ga(this,e)}has(e){return qa(this,e)}clear(){this.doc===null?this._prelimContent.clear():U(this.doc,e=>{this.forEach(function(t,n,r){Ua(e,r,n)})})}_write(e){e.writeTypeRef(Xo)}},to=e=>new eo,q=(e,t)=>e===t||typeof e==`object`&&typeof t==`object`&&e&&t&&St(e,t),no=class{constructor(e,t,n,r){this.left=e,this.right=t,this.index=n,this.currentAttributes=r}forward(){switch(this.right===null&&w(),this.right.content.constructor){case Y:this.right.deleted||oo(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}},ro=(e,t,n)=>{for(;t.right!==null&&n>0;){switch(t.right.content.constructor){case Y:t.right.deleted||oo(t.currentAttributes,t.right.content);break;default:t.right.deleted||(n<t.right.length&&H(e,z(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},io=(e,t,n,r)=>{let i=new Map,a=r?ka(t,n):null;return a?ro(e,new no(a.p.left,a.p,a.index,i),n-a.index):ro(e,new no(null,t._start,0,i),n)},ao=(e,t,n,r)=>{for(;n.right!==null&&(n.right.deleted===!0||n.right.content.constructor===Y&&q(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 Q(z(a,B(i.store,a)),s,s&&s.lastId,c,c&&c.id,t,null,new Y(o,r));l.integrate(e,0),n.right=l,n.forward()})},oo=(e,t)=>{let{key:n,value:r}=t;r===null?e.delete(n):e.set(n,r)},so=(e,t)=>{for(;e.right!==null&&(e.right.deleted||e.right.content.constructor===Y&&q(t[e.right.content.key]??null,e.right.content.value));)e.forward()},co=(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(!q(l,c)){o.set(s,l);let{left:r,right:u}=n;n.right=new Q(z(a,B(i.store,a)),r,r&&r.lastId,u,u&&u.id,t,null,new Y(s,c)),n.right.integrate(e,0),n.forward()}}return o},lo=(e,t,n,r,i)=>{n.currentAttributes.forEach((e,t)=>{i[t]===void 0&&(i[t]=null)});let a=e.doc,o=a.clientID;so(n,i);let s=co(e,t,n,i),c=r.constructor===String?new X(r):r instanceof K?new Z(r):new zo(r),{left:l,right:u,index:d}=n;t._searchMarker&&Aa(t._searchMarker,n.index,c.getLength()),u=new Q(z(o,B(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(),ao(e,t,n,s)},uo=(e,t,n,r,i)=>{let a=e.doc,o=a.clientID;so(n,i);let s=co(e,t,n,i);iterationLoop:for(;n.right!==null&&(r>0||s.size>0&&(n.right.deleted||n.right.content.constructor===Y));){if(!n.right.deleted)switch(n.right.content.constructor){case Y:{let{key:t,value:a}=n.right.content,o=i[t];if(o!==void 0){if(q(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&&H(e,z(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 Q(z(o,B(a.store,o)),n.left,n.left&&n.left.lastId,n.right,n.right&&n.right.id,t,null,new X(i)),n.right.integrate(e,0),n.forward()}ao(e,t,n,s)},fo=(t,n,r,i,a)=>{let o=n,s=e();for(;o&&(!o.countable||o.deleted);){if(!o.deleted&&o.content.constructor===Y){let e=o.content;s.set(e.key,e)}o=o.right}let c=0,l=!1;for(;n!==o;){if(r===n&&(l=!0),!n.deleted){let e=n.content;switch(e.constructor){case Y:{let{key:r,value:o}=e,u=i.get(r)??null;(s.get(r)!==e||u===o)&&(n.delete(t),c++,!l&&(a.get(r)??null)===o&&u!==o&&(u===null?a.delete(r):a.set(r,u))),!l&&!n.deleted&&oo(a,e);break}}}n=n.right}return c},po=(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===Y){let r=t.content.key;n.has(r)?t.delete(e):n.add(r)}t=t.left}},mo=n=>{let r=0;return U(n.doc,i=>{let a=n._start,o=n._start,s=e(),c=t(s);for(;o;){if(o.deleted===!1)switch(o.content.constructor){case Y:oo(c,o.content);break;default:r+=fo(i,a,o,s,c),s=t(c),a=o;break}o=o.right}}),r},ho=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&&Zi(e,n.store.clients.get(r),a,i,e=>{!e.deleted&&e.content.constructor===Y&&e.constructor!==J&&t.add(e.parent)})}U(n,n=>{zr(e,e.deleteSet,e=>{if(e instanceof J||!e.parent._hasFormatting||t.has(e.parent))return;let r=e.parent;e.content.constructor===Y?t.add(r):po(n,e)});for(let e of t)mo(e)})},go=(e,n,r)=>{let i=r,a=t(n.currentAttributes),o=n.right;for(;r>0&&n.right!==null;){if(n.right.deleted===!1)switch(n.right.content.constructor){case Z:case zo:case X:r<n.right.length&&H(e,z(n.right.id.client,n.right.id.clock+r)),r-=n.right.length,n.right.delete(e);break}n.forward()}o&&fo(e,o,n.right,a,n.currentAttributes);let s=(n.left||n.right).parent;return s._searchMarker&&Aa(s._searchMarker,n.index,-i+r),n},_o=class extends xa{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=[];U(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},yt(o)||(e.attributes=mt({},o))),c=0;break}e&&t.push(e),a=null}};for(;i!==null;){switch(i.content.constructor){case Z:case zo: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 X: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 Y:{let{key:t,value:s}=i.content;if(this.adds(i))this.deletes(i)||(q(n.get(t)??null,s)?s!==null&&i.delete(e):(a===`retain`&&u(),q(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;q(e,s)||(a===`retain`&&u(),o[t]=e)}else if(!i.deleted){r.set(t,s);let n=o[t];n!==void 0&&(q(n,s)?n!==null&&i.delete(e):(a===`retain`&&u(),s===null?delete o[t]:o[t]=s))}i.deleted||(a===`insert`&&u(),oo(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}},vo=class e extends K{constructor(e){super(),this._pending=e===void 0?[]:[()=>this.insert(0,e)],this._searchMarker=[],this._hasFormatting=!1}get length(){return this.doc??G(),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 _o(this,e,t);ja(this,e,n),!e.local&&this._hasFormatting&&(e._needFormattingCleanup=!0)}toString(){this.doc??G();let e=``,t=this._start;for(;t!==null;)!t.deleted&&t.countable&&t.content.constructor===X&&(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)):U(this.doc,n=>{let r=new no(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
|
-
`?a.insert.slice(0,-1):a.insert;(typeof o!=`string`||o.length>0)&&lo(n,this,r,o,a.attributes||{})}else a.retain===void 0?a.delete!==void 0&&go(n,r,a.delete):uo(n,this,r,a.retain,a.attributes||{})}})}toDelta(e,t,n){this.doc??G();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(Hi(s,e)||t!==void 0&&Hi(s,t))switch(s.content.constructor){case X:{let r=i.get(`ychange`);e!==void 0&&!Hi(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&&!Hi(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 Z:case zo:{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 Y:Hi(s,e)&&(c(),oo(i,s.content));break}s=s.right}c()};return e||t?U(a,n=>{e&&Ui(n,e),t&&Ui(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)):U(r,r=>{let i=io(r,this,e,!n);n||(n={},i.currentAttributes.forEach((e,t)=>{n[t]=e})),lo(r,this,i,t,n)})}insertEmbed(e,t,n){let r=this.doc;r===null?this._pending.push(()=>this.insertEmbed(e,t,n||{})):U(r,r=>{let i=io(r,this,e,!n);lo(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)):U(n,n=>{go(n,io(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)):U(r,r=>{let i=io(r,this,e,!1);i.right!==null&&uo(r,this,i,t,n)})}removeAttribute(e){this.doc===null?this._pending.push(()=>this.removeAttribute(e)):U(this.doc,t=>{Ua(t,this,e)})}setAttribute(e,t){this.doc===null?this._pending.push(()=>this.setAttribute(e,t)):U(this.doc,n=>{Wa(n,this,e,t)})}getAttribute(e){return Ga(this,e)}getAttributes(){return Ka(this)}_write(e){e.writeTypeRef(Zo)}},yo=e=>new vo,bo=class{constructor(e,t=()=>!0){this._filter=t,this._root=e,this._currentNode=e._start,this._firstCall=!0,e.doc??G()}[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===Co||t.constructor===xo)&&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})}},xo=class e extends K{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 K?e.clone():e)),t}get length(){return this.doc??G(),this._prelimContent===null?this._length:this._prelimContent.length}createTreeWalker(e){return new bo(this,e)}querySelector(e){e=e.toUpperCase();let t=new bo(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e).next();return t.done?null:t.value}querySelectorAll(e){return e=e.toUpperCase(),c(new bo(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e))}_callObserver(e,t){ja(this,e,new To(this,t,e))}toString(){return Fa(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),Pa(this,i=>{r.insertBefore(i.toDOM(e,t,n),null)}),r}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):U(this.doc,n=>{Ba(n,this,e,t)})}insertAfter(e,t){if(this.doc!==null)U(this.doc,n=>{let r=e&&e instanceof K?e._item:e;Ra(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 S(`Reference item not found`);n.splice(r,0,...t)}}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):U(this.doc,n=>{Ha(n,this,e,t)})}toArray(){return Na(this)}push(e){this.insert(this.length,e)}unshift(e){this.insert(0,e)}get(e){return La(this,e)}slice(e=0,t=this.length){return Ma(this,e,t)}forEach(e){Pa(this,e)}_write(e){e.writeTypeRef($o)}},So=e=>new xo,Co=class e extends xo{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 gt(this.getAttributes(),(e,n)=>{t.setAttribute(n,e)}),t.insert(0,this.toArray().map(e=>e instanceof K?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):U(this.doc,t=>{Ua(t,this,e)})}setAttribute(e,t){this.doc===null?this._prelimAttrs.set(e,t):U(this.doc,n=>{Wa(n,this,e,t)})}getAttribute(e){return Ga(this,e)}hasAttribute(e){return qa(this,e)}getAttributes(e){return e?Ja(this,e):Ka(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 Pa(this,i=>{r.appendChild(i.toDOM(e,t,n))}),n!==void 0&&n._createAssociation(r,this),r}_write(e){e.writeTypeRef(Qo),e.writeKey(this.nodeName)}},wo=e=>new Co(e.readKey()),To=class extends xa{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)})}},Eo=class e extends eo{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(es),e.writeKey(this.hookName)}},Do=e=>new Eo(e.readKey()),Oo=class e extends vo{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(ts)}},ko=e=>new Oo,Ao=class{constructor(e,t){this.id=e,this.length=t}get deleted(){throw C()}mergeWith(e){return!1}write(e,t,n){throw C()}integrate(e,t){throw C()}},jo=0,J=class extends Ao{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),Ki(e.doc.store,this)}write(e,t){e.writeInfo(jo),e.writeLen(this.length-t)}getMissing(e,t){return null}},Mo=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 C()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeBuf(this.content)}getRef(){return 3}},No=e=>new Mo(e.readBuf()),Po=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){Wr(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}},Fo=e=>new Po(e.readLen()),Io=(e,t)=>new Zr({guid:e,...t,shouldLoad:t.shouldLoad||t.autoLoad||!1}),Lo=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(Io(this.doc.guid,this.opts))}splice(e){throw C()}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 Lo(Io(e.readString(),e.readAny())),zo=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 C()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeJSON(this.embed)}getRef(){return 5}},Bo=e=>new zo(e.readJSON()),Y=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 C()}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}},Vo=e=>new Y(e.readKey(),e.readJSON()),Ho=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}},Uo=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 Ho(n)},Wo=Nt(`node_env`)===`development`,Go=class e{constructor(e){this.arr=e,Wo&&wt(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}},Ko=e=>{let t=e.readLen(),n=[];for(let r=0;r<t;r++)n.push(e.readAny());return new Go(n)},X=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}},qo=e=>new X(e.readString()),Jo=[Qa,to,yo,wo,So,Do,ko],Yo=0,Xo=1,Zo=2,Qo=3,$o=4,es=5,ts=6,Z=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 C()}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}},ns=e=>new Z(Jo[e.readTypeRef()](e)),rs=(e,t)=>{let n=t,r=0,i;do r>0&&(n=z(n.client,n.clock+r)),i=qi(e,n),r=n.clock-i.id.clock,n=i.redone;while(n!==null&&i instanceof Q);return{item:i,diff:r}},is=(e,t)=>{for(;e!==null&&e.keep!==t;)e.keep=t,e=e.parent._item},as=(e,t,n)=>{let{client:r,clock:i}=t.id,a=new Q(z(r,i+n),t,z(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=z(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},os=(e,t)=>u(e,e=>Vr(e.deletions,t)),ss=(e,t,n,r,i,a)=>{let o=e.doc,s=o.store,c=o.clientID,l=t.redone;if(l!==null)return H(e,l);let u=t.parent._item,d=null,f;if(u!==null&&u.deleted===!0){if(u.redone===null&&(!n.has(u)||ss(e,u,n,r,i,a)===null))return null;for(;u.redone!==null;)u=H(e,u.redone)}let p=u===null?t.parent:u.content.type;if(t.parentSub===null){for(d=t.left,f=t;d!==null;){let t=d;for(;t!==null&&t.parent._item!==u;)t=t.redone===null?null:H(e,t.redone);if(t!==null&&t.parent._item===u){d=t;break}d=d.left}for(;f!==null;){let t=f;for(;t!==null&&t.parent._item!==u;)t=t.redone===null?null:H(e,t.redone);if(t!==null&&t.parent._item===u){f=t;break}f=f.right}}else if(f=null,t.right&&!i){for(d=t;d!==null&&d.right!==null&&(d.right.redone||Vr(r,d.right.id)||os(a.undoStack,d.right.id)||os(a.redoStack,d.right.id));)for(d=d.right;d.redone;)d=H(e,d.redone);if(d&&d.right!==null)return null}else d=p._map.get(t.parentSub)||null;let ee=z(c,B(s,c)),m=new Q(ee,d,d&&d.lastId,f,f&&f.id,p,t.parentSub,t.content.copy());return t.redone=ee,is(m,!0),m.integrate(e,0),m},Q=class e extends Ao{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>=B(n,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=B(n,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===Di&&this.id.client!==this.parent.client&&this.parent.clock>=B(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=H(t,this.rightOrigin),this.right.id),this.left&&this.left.constructor===J||this.right&&this.right.constructor===J)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===Di){let e=qi(n,this.parent);e.constructor===J?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,z(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),Oi(this.origin,n.origin)){if(n.id.client<this.id.client)t=n,r.clear();else if(Oi(this.rightOrigin,n.rightOrigin))break}else if(n.origin!==null&&i.has(qi(e.doc.store,n.origin)))r.has(qi(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),Ki(e.doc.store,this),this.content.integrate(e,this),ea(e,this.parent,this.parentSub),(this.parent._item!==null&&this.parent._item.deleted||this.parentSub!==null&&this.right!==null)&&this.delete(e)}else new J(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:z(this.id.client,this.id.clock+this.length-1)}mergeWith(e){if(this.constructor===e.constructor&&Oi(e.origin,this.lastId)&&this.right===e&&Oi(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(),Wr(e.deleteSet,this.id.client,this.id.clock,this.length),ea(e,t,this.parentSub),this.content.delete(e)}}gc(e,t){if(!this.deleted)throw w();this.content.gc(e),t?Xi(e,this,new J(this.id,this.length)):this.content=new Po(this.length)}write(e,t){let n=t>0?z(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=ki(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===Di?(e.writeParentInfo(!1),e.writeLeftID(t)):w();i!==null&&e.writeString(i)}this.content.write(e,t)}},cs=(e,t)=>ls[t&31](e),ls=[()=>{w()},Fo,Uo,No,qo,Bo,Vo,ns,Ko,Ro,()=>{w()}],us=10,$=class extends Ao{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor?(this.length+=e.length,!0):!1}integrate(e,t){w()}write(e,t){e.writeInfo(us),y(e.restEncoder,this.length-t)}getMissing(e,t){return null}},ds=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{},fs=`__ $YJS$ __`;ds[fs]===!0&&console.error(`Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438`),ds[fs]=!0;var ps=new Map,ms=class{constructor(e){this.room=e,this.onmessage=null,this._onChange=t=>t.key===e&&this.onmessage!==null&&this.onmessage({data:Gt(t.newValue||``)}),lt(this._onChange)}postMessage(e){ct.setItem(this.room,Wt(zt(e)))}close(){ut(this._onChange)}},hs=typeof BroadcastChannel>`u`?ms:BroadcastChannel,gs=e=>n(ps,e,()=>{let t=a(),n=new hs(e);return n.onmessage=e=>t.forEach(t=>t(e.data,`broadcastchannel`)),{bc:n,subs:t}}),_s=(e,t)=>(gs(e).subs.add(t),t),vs=(e,t)=>{let n=gs(e),r=n.subs.delete(t);return r&&n.subs.size===0&&(n.bc.close(),ps.delete(e)),r},ys=(e,t,n=null)=>{let r=gs(e);r.bc.postMessage(t),r.subs.forEach(e=>e(t,n))},bs=(e,t)=>{y(e,0),x(e,xi(t))},xs=(e,t,n)=>{y(e,1),x(e,hi(t,n))},Ss=(e,t,n)=>xs(t,n,E(e)),Cs=(e,t,n,r)=>{try{fi(t,E(e),n)}catch(e){r?.(e),console.error(`Caught error while handling a Yjs update`,e)}},ws=(e,t)=>{y(e,2),x(e,t)},Ts=Cs,Es=(e,t,n,r,i)=>{let a=D(e);switch(a){case 0:Ss(e,t,n);break;case 1:Cs(e,n,r,i);break;case 2:Ts(e,n,r,i);break;default:throw Error(`Unknown message type`)}return a},Ds=(e,t,n)=>{switch(D(e)){case 0:n(t,O(e))}},Os=3e4,ks=class extends ee{constructor(e){super(),this.doc=e,this.clientID=e.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{let e=k();this.getLocalState()!==null&&3e4/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());let t=[];this.meta.forEach((n,r)=>{r!==this.clientID&&3e4<=e-n.lastUpdated&&this.states.has(r)&&t.push(r)}),t.length>0&&As(this,t,`timeout`)},m(Os/10)),e.on(`destroy`,()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit(`destroy`,[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(e){let t=this.clientID,n=this.meta.get(t),r=n===void 0?0:n.clock+1,i=this.states.get(t);e===null?this.states.delete(t):this.states.set(t,e),this.meta.set(t,{clock:r,lastUpdated:k()});let a=[],o=[],s=[],c=[];e===null?c.push(t):i==null?e!=null&&a.push(t):(o.push(t),Dt(i,e)||s.push(t)),(a.length>0||s.length>0||c.length>0)&&this.emit(`change`,[{added:a,updated:s,removed:c},`local`]),this.emit(`update`,[{added:a,updated:o,removed:c},`local`])}setLocalStateField(e,t){let n=this.getLocalState();n!==null&&this.setLocalState({...n,[e]:t})}getStates(){return this.states}},As=(e,t,n)=>{let r=[];for(let n=0;n<t.length;n++){let i=t[n];if(e.states.has(i)){if(e.states.delete(i),i===e.clientID){let t=e.meta.get(i);e.meta.set(i,{clock:t.clock+1,lastUpdated:k()})}r.push(i)}}r.length>0&&(e.emit(`change`,[{added:[],updated:[],removed:r},n]),e.emit(`update`,[{added:[],updated:[],removed:r},n]))},js=(e,t,n=e.states)=>{let r=t.length,i=g();y(i,r);for(let a=0;a<r;a++){let r=t[a],o=n.get(r)||null,s=e.meta.get(r).clock;y(i,r),y(i,s),b(i,JSON.stringify(o))}return _(i)},Ms=(e,t,n)=>{let r=T(t),i=k(),a=[],o=[],s=[],c=[],l=D(r);for(let t=0;t<l;t++){let t=D(r),n=D(r),l=JSON.parse(O(r)),u=e.meta.get(t),d=e.states.get(t),f=u===void 0?0:u.clock;(f<n||f===n&&l===null&&e.states.has(t))&&(l===null?t===e.clientID&&e.getLocalState()!=null?n++:e.states.delete(t):e.states.set(t,l),e.meta.set(t,{clock:n,lastUpdated:i}),u===void 0&&l!==null?a.push(t):u!==void 0&&l===null?c.push(t):l!==null&&(Dt(l,d)||s.push(t),o.push(t)))}(a.length>0||s.length>0||c.length>0)&&e.emit(`change`,[{added:a,updated:s,removed:c},n]),(a.length>0||o.length>0||c.length>0)&&e.emit(`update`,[{added:a,updated:o,removed:c},n])},Ns=e=>_t(e,(e,t)=>`${encodeURIComponent(t)}=${encodeURIComponent(e)}`).join(`&`),Ps=[];Ps[0]=(e,t,n,r,i)=>{y(e,0);let a=Es(t,e,n.doc,n);r&&a===1&&!n.synced&&(n.synced=!0)},Ps[3]=(e,t,n,r,i)=>{y(e,1),x(e,js(n.awareness,Array.from(n.awareness.getStates().keys())))},Ps[1]=(e,t,n,r,i)=>{Ms(n.awareness,E(t),n)},Ps[2]=(e,t,n,r,i)=>{Ds(t,n.doc,(e,t)=>Is(n,t))};var Fs=3e4,Is=(e,t)=>console.warn(`Permission denied to access ${e.url}.\n${t}`),Ls=(e,t,n)=>{let r=T(t),i=g(),a=D(r),o=e.messageHandlers[a];return o?o(i,r,e,n,a):console.error(`Unable to compute message`),i},Rs=(e,t,n)=>{t===e.ws&&(e.emit(`connection-close`,[n,e]),e.ws=null,t.close(),e.wsconnecting=!1,e.wsconnected?(e.wsconnected=!1,e.synced=!1,As(e.awareness,Array.from(e.awareness.getStates().keys()).filter(t=>t!==e.doc.clientID),e),e.emit(`status`,[{status:`disconnected`}])):e.wsUnsuccessfulReconnects++,setTimeout(zs,ne(re(2,e.wsUnsuccessfulReconnects)*100,e.maxBackoffTime),e))},zs=e=>{if(e.shouldConnect&&e.ws===null){let t=new e._WS(e.url,e.protocols);t.binaryType=`arraybuffer`,e.ws=t,e.wsconnecting=!0,e.wsconnected=!1,e.synced=!1,t.onmessage=n=>{e.wsLastMessageReceived=k();let r=Ls(e,new Uint8Array(n.data),!0);be(r)>1&&t.send(_(r))},t.onerror=t=>{e.emit(`connection-error`,[t,e])},t.onclose=n=>{Rs(e,t,n)},t.onopen=()=>{e.wsLastMessageReceived=k(),e.wsconnecting=!1,e.wsconnected=!0,e.wsUnsuccessfulReconnects=0,e.emit(`status`,[{status:`connected`}]);let n=g();if(y(n,0),bs(n,e.doc),t.send(_(n)),e.awareness.getLocalState()!==null){let n=g();y(n,1),x(n,js(e.awareness,[e.doc.clientID])),t.send(_(n))}},e.emit(`status`,[{status:`connecting`}])}},Bs=(e,t)=>{let n=e.ws;e.wsconnected&&n&&n.readyState===n.OPEN&&n.send(t),e.bcconnected&&ys(e.bcChannel,t,e)},Vs=class extends p{constructor(e,t,n,{connect:r=!0,awareness:i=new ks(n),params:a={},protocols:o=[],WebSocketPolyfill:s=WebSocket,resyncInterval:c=-1,maxBackoffTime:l=2500,disableBc:u=!1}={}){for(super();e[e.length-1]===`/`;)e=e.slice(0,e.length-1);this.serverUrl=e,this.bcChannel=e+`/`+t,this.maxBackoffTime=l,this.params=a,this.protocols=o,this.roomname=t,this.doc=n,this._WS=s,this.awareness=i,this.wsconnected=!1,this.wsconnecting=!1,this.bcconnected=!1,this.disableBc=u,this.wsUnsuccessfulReconnects=0,this.messageHandlers=Ps.slice(),this._synced=!1,this.ws=null,this.wsLastMessageReceived=0,this.shouldConnect=r,this._resyncInterval=0,c>0&&(this._resyncInterval=setInterval(()=>{if(this.ws&&this.ws.readyState===WebSocket.OPEN){let e=g();y(e,0),bs(e,n),this.ws.send(_(e))}},c)),this._bcSubscriber=(e,t)=>{if(t!==this){let t=Ls(this,new Uint8Array(e),!1);be(t)>1&&ys(this.bcChannel,_(t),this)}},this._updateHandler=(e,t)=>{if(t!==this){let t=g();y(t,0),ws(t,e),Bs(this,_(t))}},this.doc.on(`update`,this._updateHandler),this._awarenessUpdateHandler=({added:e,updated:t,removed:n},r)=>{let a=e.concat(t).concat(n),o=g();y(o,1),x(o,js(i,a)),Bs(this,_(o))},this._exitHandler=()=>{As(this.awareness,[n.clientID],`app closed`)},A&&typeof process<`u`&&process.on(`exit`,this._exitHandler),i.on(`update`,this._awarenessUpdateHandler),this._checkInterval=setInterval(()=>{this.wsconnected&&Fs<k()-this.wsLastMessageReceived&&Rs(this,this.ws,null)},Fs/10),r&&this.connect()}get url(){let e=Ns(this.params);return this.serverUrl+`/`+this.roomname+(e.length===0?``:`?`+e)}get synced(){return this._synced}set synced(e){this._synced!==e&&(this._synced=e,this.emit(`synced`,[e]),this.emit(`sync`,[e]))}destroy(){this._resyncInterval!==0&&clearInterval(this._resyncInterval),clearInterval(this._checkInterval),this.disconnect(),A&&typeof process<`u`&&process.off(`exit`,this._exitHandler),this.awareness.off(`update`,this._awarenessUpdateHandler),this.doc.off(`update`,this._updateHandler),super.destroy()}connectBc(){if(this.disableBc)return;this.bcconnected||=(_s(this.bcChannel,this._bcSubscriber),!0);let e=g();y(e,0),bs(e,this.doc),ys(this.bcChannel,_(e),this);let t=g();y(t,0),xs(t,this.doc),ys(this.bcChannel,_(t),this);let n=g();y(n,3),ys(this.bcChannel,_(n),this);let r=g();y(r,1),x(r,js(this.awareness,[this.doc.clientID])),ys(this.bcChannel,_(r),this)}disconnectBc(){let e=g();y(e,1),x(e,js(this.awareness,[this.doc.clientID],new Map)),Bs(this,_(e)),this.bcconnected&&=(vs(this.bcChannel,this._bcSubscriber),!1)}disconnect(){this.shouldConnect=!1,this.disconnectBc(),this.ws!==null&&Rs(this,this.ws,null)}connect(){this.shouldConnect=!0,!this.wsconnected&&this.ws===null&&(zs(this),this.connectBc())}},Hs=new Set([`Room reset`,`Server shutting down`]);function Us(e){!e||typeof e.on!=`function`||typeof e.disconnect!=`function`||e.on(`connection-close`,t=>{let n=String(t?.reason||``);Hs.has(n)&&e.disconnect()})}export{Za as a,zi as c,Mi as d,dr as f,ne as g,h,ca as i,Ni as l,M as m,Vs as n,eo as o,fr as p,Zr as r,Bi as s,Us as t,Li as u};
|
|
4
|
+
`?a.insert.slice(0,-1):a.insert;(typeof o!=`string`||o.length>0)&&lo(n,this,r,o,a.attributes||{})}else a.retain===void 0?a.delete!==void 0&&go(n,r,a.delete):uo(n,this,r,a.retain,a.attributes||{})}})}toDelta(e,t,n){this.doc??G();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(Hi(s,e)||t!==void 0&&Hi(s,t))switch(s.content.constructor){case X:{let r=i.get(`ychange`);e!==void 0&&!Hi(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&&!Hi(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 Z:case zo:{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 Y:Hi(s,e)&&(c(),oo(i,s.content));break}s=s.right}c()};return e||t?U(a,n=>{e&&Ui(n,e),t&&Ui(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)):U(r,r=>{let i=io(r,this,e,!n);n||(n={},i.currentAttributes.forEach((e,t)=>{n[t]=e})),lo(r,this,i,t,n)})}insertEmbed(e,t,n){let r=this.doc;r===null?this._pending.push(()=>this.insertEmbed(e,t,n||{})):U(r,r=>{let i=io(r,this,e,!n);lo(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)):U(n,n=>{go(n,io(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)):U(r,r=>{let i=io(r,this,e,!1);i.right!==null&&uo(r,this,i,t,n)})}removeAttribute(e){this.doc===null?this._pending.push(()=>this.removeAttribute(e)):U(this.doc,t=>{Ua(t,this,e)})}setAttribute(e,t){this.doc===null?this._pending.push(()=>this.setAttribute(e,t)):U(this.doc,n=>{Wa(n,this,e,t)})}getAttribute(e){return Ga(this,e)}getAttributes(){return Ka(this)}_write(e){e.writeTypeRef(Zo)}},yo=e=>new vo,bo=class{constructor(e,t=()=>!0){this._filter=t,this._root=e,this._currentNode=e._start,this._firstCall=!0,e.doc??G()}[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===Co||t.constructor===xo)&&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})}},xo=class e extends K{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 K?e.clone():e)),t}get length(){return this.doc??G(),this._prelimContent===null?this._length:this._prelimContent.length}createTreeWalker(e){return new bo(this,e)}querySelector(e){e=e.toUpperCase();let t=new bo(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e).next();return t.done?null:t.value}querySelectorAll(e){return e=e.toUpperCase(),c(new bo(this,t=>t.nodeName&&t.nodeName.toUpperCase()===e))}_callObserver(e,t){ja(this,e,new To(this,t,e))}toString(){return Fa(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),Pa(this,i=>{r.insertBefore(i.toDOM(e,t,n),null)}),r}insert(e,t){this.doc===null?this._prelimContent.splice(e,0,...t):U(this.doc,n=>{Ba(n,this,e,t)})}insertAfter(e,t){if(this.doc!==null)U(this.doc,n=>{let r=e&&e instanceof K?e._item:e;Ra(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 S(`Reference item not found`);n.splice(r,0,...t)}}delete(e,t=1){this.doc===null?this._prelimContent.splice(e,t):U(this.doc,n=>{Ha(n,this,e,t)})}toArray(){return Na(this)}push(e){this.insert(this.length,e)}unshift(e){this.insert(0,e)}get(e){return La(this,e)}slice(e=0,t=this.length){return Ma(this,e,t)}forEach(e){Pa(this,e)}_write(e){e.writeTypeRef($o)}},So=e=>new xo,Co=class e extends xo{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 gt(this.getAttributes(),(e,n)=>{t.setAttribute(n,e)}),t.insert(0,this.toArray().map(e=>e instanceof K?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):U(this.doc,t=>{Ua(t,this,e)})}setAttribute(e,t){this.doc===null?this._prelimAttrs.set(e,t):U(this.doc,n=>{Wa(n,this,e,t)})}getAttribute(e){return Ga(this,e)}hasAttribute(e){return qa(this,e)}getAttributes(e){return e?Ja(this,e):Ka(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 Pa(this,i=>{r.appendChild(i.toDOM(e,t,n))}),n!==void 0&&n._createAssociation(r,this),r}_write(e){e.writeTypeRef(Qo),e.writeKey(this.nodeName)}},wo=e=>new Co(e.readKey()),To=class extends xa{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)})}},Eo=class e extends eo{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(es),e.writeKey(this.hookName)}},Do=e=>new Eo(e.readKey()),Oo=class e extends vo{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(ts)}},ko=e=>new Oo,Ao=class{constructor(e,t){this.id=e,this.length=t}get deleted(){throw C()}mergeWith(e){return!1}write(e,t,n){throw C()}integrate(e,t){throw C()}},jo=0,J=class extends Ao{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),Ki(e.doc.store,this)}write(e,t){e.writeInfo(jo),e.writeLen(this.length-t)}getMissing(e,t){return null}},Mo=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 C()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeBuf(this.content)}getRef(){return 3}},No=e=>new Mo(e.readBuf()),Po=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){Wr(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}},Fo=e=>new Po(e.readLen()),Io=(e,t)=>new Zr({guid:e,...t,shouldLoad:t.shouldLoad||t.autoLoad||!1}),Lo=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(Io(this.doc.guid,this.opts))}splice(e){throw C()}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 Lo(Io(e.readString(),e.readAny())),zo=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 C()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeJSON(this.embed)}getRef(){return 5}},Bo=e=>new zo(e.readJSON()),Y=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 C()}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}},Vo=e=>new Y(e.readKey(),e.readJSON()),Ho=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}},Uo=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 Ho(n)},Wo=Nt(`node_env`)===`development`,Go=class e{constructor(e){this.arr=e,Wo&&wt(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}},Ko=e=>{let t=e.readLen(),n=[];for(let r=0;r<t;r++)n.push(e.readAny());return new Go(n)},X=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}},qo=e=>new X(e.readString()),Jo=[Qa,to,yo,wo,So,Do,ko],Yo=0,Xo=1,Zo=2,Qo=3,$o=4,es=5,ts=6,Z=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 C()}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}},ns=e=>new Z(Jo[e.readTypeRef()](e)),rs=(e,t)=>{let n=t,r=0,i;do r>0&&(n=z(n.client,n.clock+r)),i=qi(e,n),r=n.clock-i.id.clock,n=i.redone;while(n!==null&&i instanceof Q);return{item:i,diff:r}},is=(e,t)=>{for(;e!==null&&e.keep!==t;)e.keep=t,e=e.parent._item},as=(e,t,n)=>{let{client:r,clock:i}=t.id,a=new Q(z(r,i+n),t,z(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=z(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},os=(e,t)=>u(e,e=>Vr(e.deletions,t)),ss=(e,t,n,r,i,a)=>{let o=e.doc,s=o.store,c=o.clientID,l=t.redone;if(l!==null)return H(e,l);let u=t.parent._item,d=null,f;if(u!==null&&u.deleted===!0){if(u.redone===null&&(!n.has(u)||ss(e,u,n,r,i,a)===null))return null;for(;u.redone!==null;)u=H(e,u.redone)}let p=u===null?t.parent:u.content.type;if(t.parentSub===null){for(d=t.left,f=t;d!==null;){let t=d;for(;t!==null&&t.parent._item!==u;)t=t.redone===null?null:H(e,t.redone);if(t!==null&&t.parent._item===u){d=t;break}d=d.left}for(;f!==null;){let t=f;for(;t!==null&&t.parent._item!==u;)t=t.redone===null?null:H(e,t.redone);if(t!==null&&t.parent._item===u){f=t;break}f=f.right}}else{if(f=null,t.right&&!i){for(d=t;d!==null&&d.right!==null&&(d.right.redone||Vr(r,d.right.id)||os(a.undoStack,d.right.id)||os(a.redoStack,d.right.id));)for(d=d.right;d.redone;)d=H(e,d.redone);if(d&&d.right!==null)return null}else d=p._map.get(t.parentSub)||null;d!==null&&d.parent._item!==u&&(d=p._map.get(t.parentSub)||null)}let ee=z(c,B(s,c)),m=new Q(ee,d,d&&d.lastId,f,f&&f.id,p,t.parentSub,t.content.copy());return t.redone=ee,is(m,!0),m.integrate(e,0),m},Q=class e extends Ao{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>=B(n,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=B(n,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===Di&&this.id.client!==this.parent.client&&this.parent.clock>=B(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=H(t,this.rightOrigin),this.right.id),this.left&&this.left.constructor===J||this.right&&this.right.constructor===J)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===Di){let e=qi(n,this.parent);e.constructor===J?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,z(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),Oi(this.origin,n.origin)){if(n.id.client<this.id.client)t=n,r.clear();else if(Oi(this.rightOrigin,n.rightOrigin))break}else if(n.origin!==null&&i.has(qi(e.doc.store,n.origin)))r.has(qi(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),Ki(e.doc.store,this),this.content.integrate(e,this),ea(e,this.parent,this.parentSub),(this.parent._item!==null&&this.parent._item.deleted||this.parentSub!==null&&this.right!==null)&&this.delete(e)}else new J(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:z(this.id.client,this.id.clock+this.length-1)}mergeWith(e){if(this.constructor===e.constructor&&Oi(e.origin,this.lastId)&&this.right===e&&Oi(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(),Wr(e.deleteSet,this.id.client,this.id.clock,this.length),ea(e,t,this.parentSub),this.content.delete(e)}}gc(e,t){if(!this.deleted)throw w();this.content.gc(e),t?Xi(e,this,new J(this.id,this.length)):this.content=new Po(this.length)}write(e,t){let n=t>0?z(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=ki(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===Di?(e.writeParentInfo(!1),e.writeLeftID(t)):w();i!==null&&e.writeString(i)}this.content.write(e,t)}},cs=(e,t)=>ls[t&31](e),ls=[()=>{w()},Fo,Uo,No,qo,Bo,Vo,ns,Ko,Ro,()=>{w()}],us=10,$=class extends Ao{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor?(this.length+=e.length,!0):!1}integrate(e,t){w()}write(e,t){e.writeInfo(us),y(e.restEncoder,this.length-t)}getMissing(e,t){return null}},ds=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{},fs=`__ $YJS$ __`;ds[fs]===!0&&console.error(`Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438`),ds[fs]=!0;var ps=new Map,ms=class{constructor(e){this.room=e,this.onmessage=null,this._onChange=t=>t.key===e&&this.onmessage!==null&&this.onmessage({data:Gt(t.newValue||``)}),lt(this._onChange)}postMessage(e){ct.setItem(this.room,Wt(zt(e)))}close(){ut(this._onChange)}},hs=typeof BroadcastChannel>`u`?ms:BroadcastChannel,gs=e=>n(ps,e,()=>{let t=a(),n=new hs(e);return n.onmessage=e=>t.forEach(t=>t(e.data,`broadcastchannel`)),{bc:n,subs:t}}),_s=(e,t)=>(gs(e).subs.add(t),t),vs=(e,t)=>{let n=gs(e),r=n.subs.delete(t);return r&&n.subs.size===0&&(n.bc.close(),ps.delete(e)),r},ys=(e,t,n=null)=>{let r=gs(e);r.bc.postMessage(t),r.subs.forEach(e=>e(t,n))},bs=(e,t)=>{y(e,0),x(e,xi(t))},xs=(e,t,n)=>{y(e,1),x(e,hi(t,n))},Ss=(e,t,n)=>xs(t,n,E(e)),Cs=(e,t,n,r)=>{try{fi(t,E(e),n)}catch(e){r?.(e),console.error(`Caught error while handling a Yjs update`,e)}},ws=(e,t)=>{y(e,2),x(e,t)},Ts=Cs,Es=(e,t,n,r,i)=>{let a=D(e);switch(a){case 0:Ss(e,t,n);break;case 1:Cs(e,n,r,i);break;case 2:Ts(e,n,r,i);break;default:throw Error(`Unknown message type`)}return a},Ds=(e,t,n)=>{switch(D(e)){case 0:n(t,O(e))}},Os=3e4,ks=class extends ee{constructor(e){super(),this.doc=e,this.clientID=e.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{let e=k();this.getLocalState()!==null&&3e4/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());let t=[];this.meta.forEach((n,r)=>{r!==this.clientID&&3e4<=e-n.lastUpdated&&this.states.has(r)&&t.push(r)}),t.length>0&&As(this,t,`timeout`)},m(Os/10)),e.on(`destroy`,()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit(`destroy`,[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(e){let t=this.clientID,n=this.meta.get(t),r=n===void 0?0:n.clock+1,i=this.states.get(t);e===null?this.states.delete(t):this.states.set(t,e),this.meta.set(t,{clock:r,lastUpdated:k()});let a=[],o=[],s=[],c=[];e===null?c.push(t):i==null?e!=null&&a.push(t):(o.push(t),Dt(i,e)||s.push(t)),(a.length>0||s.length>0||c.length>0)&&this.emit(`change`,[{added:a,updated:s,removed:c},`local`]),this.emit(`update`,[{added:a,updated:o,removed:c},`local`])}setLocalStateField(e,t){let n=this.getLocalState();n!==null&&this.setLocalState({...n,[e]:t})}getStates(){return this.states}},As=(e,t,n)=>{let r=[];for(let n=0;n<t.length;n++){let i=t[n];if(e.states.has(i)){if(e.states.delete(i),i===e.clientID){let t=e.meta.get(i);e.meta.set(i,{clock:t.clock+1,lastUpdated:k()})}r.push(i)}}r.length>0&&(e.emit(`change`,[{added:[],updated:[],removed:r},n]),e.emit(`update`,[{added:[],updated:[],removed:r},n]))},js=(e,t,n=e.states)=>{let r=t.length,i=g();y(i,r);for(let a=0;a<r;a++){let r=t[a],o=n.get(r)||null,s=e.meta.get(r).clock;y(i,r),y(i,s),b(i,JSON.stringify(o))}return _(i)},Ms=(e,t,n)=>{let r=T(t),i=k(),a=[],o=[],s=[],c=[],l=D(r);for(let t=0;t<l;t++){let t=D(r),n=D(r),l=JSON.parse(O(r)),u=e.meta.get(t),d=e.states.get(t),f=u===void 0?0:u.clock;(f<n||f===n&&l===null&&e.states.has(t))&&(l===null?t===e.clientID&&e.getLocalState()!=null?n++:e.states.delete(t):e.states.set(t,l),e.meta.set(t,{clock:n,lastUpdated:i}),u===void 0&&l!==null?a.push(t):u!==void 0&&l===null?c.push(t):l!==null&&(Dt(l,d)||s.push(t),o.push(t)))}(a.length>0||s.length>0||c.length>0)&&e.emit(`change`,[{added:a,updated:s,removed:c},n]),(a.length>0||o.length>0||c.length>0)&&e.emit(`update`,[{added:a,updated:o,removed:c},n])},Ns=e=>_t(e,(e,t)=>`${encodeURIComponent(t)}=${encodeURIComponent(e)}`).join(`&`),Ps=[];Ps[0]=(e,t,n,r,i)=>{y(e,0);let a=Es(t,e,n.doc,n);r&&a===1&&!n.synced&&(n.synced=!0)},Ps[3]=(e,t,n,r,i)=>{y(e,1),x(e,js(n.awareness,Array.from(n.awareness.getStates().keys())))},Ps[1]=(e,t,n,r,i)=>{Ms(n.awareness,E(t),n)},Ps[2]=(e,t,n,r,i)=>{Ds(t,n.doc,(e,t)=>Is(n,t))};var Fs=3e4,Is=(e,t)=>console.warn(`Permission denied to access ${e.url}.\n${t}`),Ls=(e,t,n)=>{let r=T(t),i=g(),a=D(r),o=e.messageHandlers[a];return o?o(i,r,e,n,a):console.error(`Unable to compute message`),i},Rs=(e,t,n)=>{t===e.ws&&(e.emit(`connection-close`,[n,e]),e.ws=null,t.close(),e.wsconnecting=!1,e.wsconnected?(e.wsconnected=!1,e.synced=!1,As(e.awareness,Array.from(e.awareness.getStates().keys()).filter(t=>t!==e.doc.clientID),e),e.emit(`status`,[{status:`disconnected`}])):e.wsUnsuccessfulReconnects++,setTimeout(zs,ne(re(2,e.wsUnsuccessfulReconnects)*100,e.maxBackoffTime),e))},zs=e=>{if(e.shouldConnect&&e.ws===null){let t=new e._WS(e.url,e.protocols);t.binaryType=`arraybuffer`,e.ws=t,e.wsconnecting=!0,e.wsconnected=!1,e.synced=!1,t.onmessage=n=>{e.wsLastMessageReceived=k();let r=Ls(e,new Uint8Array(n.data),!0);be(r)>1&&t.send(_(r))},t.onerror=t=>{e.emit(`connection-error`,[t,e])},t.onclose=n=>{Rs(e,t,n)},t.onopen=()=>{e.wsLastMessageReceived=k(),e.wsconnecting=!1,e.wsconnected=!0,e.wsUnsuccessfulReconnects=0,e.emit(`status`,[{status:`connected`}]);let n=g();if(y(n,0),bs(n,e.doc),t.send(_(n)),e.awareness.getLocalState()!==null){let n=g();y(n,1),x(n,js(e.awareness,[e.doc.clientID])),t.send(_(n))}},e.emit(`status`,[{status:`connecting`}])}},Bs=(e,t)=>{let n=e.ws;e.wsconnected&&n&&n.readyState===n.OPEN&&n.send(t),e.bcconnected&&ys(e.bcChannel,t,e)},Vs=class extends p{constructor(e,t,n,{connect:r=!0,awareness:i=new ks(n),params:a={},protocols:o=[],WebSocketPolyfill:s=WebSocket,resyncInterval:c=-1,maxBackoffTime:l=2500,disableBc:u=!1}={}){for(super();e[e.length-1]===`/`;)e=e.slice(0,e.length-1);this.serverUrl=e,this.bcChannel=e+`/`+t,this.maxBackoffTime=l,this.params=a,this.protocols=o,this.roomname=t,this.doc=n,this._WS=s,this.awareness=i,this.wsconnected=!1,this.wsconnecting=!1,this.bcconnected=!1,this.disableBc=u,this.wsUnsuccessfulReconnects=0,this.messageHandlers=Ps.slice(),this._synced=!1,this.ws=null,this.wsLastMessageReceived=0,this.shouldConnect=r,this._resyncInterval=0,c>0&&(this._resyncInterval=setInterval(()=>{if(this.ws&&this.ws.readyState===WebSocket.OPEN){let e=g();y(e,0),bs(e,n),this.ws.send(_(e))}},c)),this._bcSubscriber=(e,t)=>{if(t!==this){let t=Ls(this,new Uint8Array(e),!1);be(t)>1&&ys(this.bcChannel,_(t),this)}},this._updateHandler=(e,t)=>{if(t!==this){let t=g();y(t,0),ws(t,e),Bs(this,_(t))}},this.doc.on(`update`,this._updateHandler),this._awarenessUpdateHandler=({added:e,updated:t,removed:n},r)=>{let a=e.concat(t).concat(n),o=g();y(o,1),x(o,js(i,a)),Bs(this,_(o))},this._exitHandler=()=>{As(this.awareness,[n.clientID],`app closed`)},A&&typeof process<`u`&&process.on(`exit`,this._exitHandler),i.on(`update`,this._awarenessUpdateHandler),this._checkInterval=setInterval(()=>{this.wsconnected&&Fs<k()-this.wsLastMessageReceived&&Rs(this,this.ws,null)},Fs/10),r&&this.connect()}get url(){let e=Ns(this.params);return this.serverUrl+`/`+this.roomname+(e.length===0?``:`?`+e)}get synced(){return this._synced}set synced(e){this._synced!==e&&(this._synced=e,this.emit(`synced`,[e]),this.emit(`sync`,[e]))}destroy(){this._resyncInterval!==0&&clearInterval(this._resyncInterval),clearInterval(this._checkInterval),this.disconnect(),A&&typeof process<`u`&&process.off(`exit`,this._exitHandler),this.awareness.off(`update`,this._awarenessUpdateHandler),this.doc.off(`update`,this._updateHandler),super.destroy()}connectBc(){if(this.disableBc)return;this.bcconnected||=(_s(this.bcChannel,this._bcSubscriber),!0);let e=g();y(e,0),bs(e,this.doc),ys(this.bcChannel,_(e),this);let t=g();y(t,0),xs(t,this.doc),ys(this.bcChannel,_(t),this);let n=g();y(n,3),ys(this.bcChannel,_(n),this);let r=g();y(r,1),x(r,js(this.awareness,[this.doc.clientID])),ys(this.bcChannel,_(r),this)}disconnectBc(){let e=g();y(e,1),x(e,js(this.awareness,[this.doc.clientID],new Map)),Bs(this,_(e)),this.bcconnected&&=(vs(this.bcChannel,this._bcSubscriber),!1)}disconnect(){this.shouldConnect=!1,this.disconnectBc(),this.ws!==null&&Rs(this,this.ws,null)}connect(){this.shouldConnect=!0,!this.wsconnected&&this.ws===null&&(zs(this),this.connectBc())}},Hs=new Set([`Room reset`,`Server shutting down`]);function Us(e){!e||typeof e.on!=`function`||typeof e.disconnect!=`function`||e.on(`connection-close`,t=>{let n=String(t?.reason||``);Hs.has(n)&&e.disconnect()})}export{Za as a,zi as c,Mi as d,dr as f,ne as g,h,ca as i,Ni as l,M as m,Vs as n,eo as o,fr as p,Zr as r,Bi as s,Us as t,Li as u};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"./chunk-SRAX5OIU-
|
|
1
|
+
import"./chunk-SRAX5OIU-CiRgnkYo.js";var e={paste:`粘贴`,pasteAsPlaintext:`粘贴为纯文本`,pasteCharts:`粘贴图表`,selectAll:`全部选中`,multiSelect:`添加元素到选区`,moveCanvas:`移动画布`,cut:`剪切`,copy:`拷贝`,copyAsPng:`复制为 PNG 到剪贴板`,copyAsSvg:`复制为 SVG 到剪贴板`,copyText:`复制文本到剪贴板`,copySource:`复制源码到剪贴板`,convertToCode:`转换成代码`,bringForward:`上移一层`,sendToBack:`置于底层`,bringToFront:`置于顶层`,sendBackward:`下移一层`,delete:`删除`,copyStyles:`拷贝样式`,pasteStyles:`粘贴样式`,stroke:`描边`,changeStroke:`更改描边颜色`,background:`背景`,changeBackground:`更改背景颜色`,fill:`填充`,strokeWidth:`描边宽度`,strokeStyle:`边框样式`,strokeStyle_solid:`实线`,strokeStyle_dashed:`虚线`,strokeStyle_dotted:`点虚线`,sloppiness:`线条风格`,opacity:`透明度`,textAlign:`文本对齐`,edges:`边角`,sharp:`尖锐`,round:`圆润`,arrowheads:`端点`,arrowhead_none:`无`,arrowhead_arrow:`箭头`,arrowhead_bar:`条状`,arrowhead_circle:`圆点`,arrowhead_circle_outline:`圆点(空心)`,arrowhead_triangle:`三角箭头`,arrowhead_triangle_outline:`三角箭头(空心)`,arrowhead_diamond:`菱形`,arrowhead_diamond_outline:`菱形(空心)`,arrowhead_crowfoot_many:`鸦爪标记(多)`,arrowhead_crowfoot_one:`鸦爪标记(一)`,arrowhead_crowfoot_one_or_many:`鸦爪标记(一或多)`,more_options:`更多选项`,arrowtypes:`箭头类型`,arrowtype_sharp:`直箭头`,arrowtype_round:`曲线箭头`,arrowtype_elbowed:`拐角箭头`,fontSize:`字体大小`,fontFamily:`字体`,addWatermark:`添加 “使用 Excalidraw 创建” 水印`,handDrawn:`手写`,normal:`普通`,code:`代码`,small:`小`,medium:`中`,large:`大`,veryLarge:`加大`,solid:`实心`,hachure:`线条`,zigzag:`之字形折线`,crossHatch:`交叉线条`,thin:`细`,bold:`粗`,left:`左对齐`,center:`居中`,right:`右对齐`,extraBold:`特粗`,architect:`朴素`,artist:`艺术`,cartoonist:`漫画家`,fileTitle:`文件名`,colorPicker:`取色器`,canvasColors:`画布上的`,canvasBackground:`画布背景`,drawingCanvas:`绘制 Canvas`,clearCanvas:`清除画布`,layers:`图层`,actions:`操作`,language:`语言`,liveCollaboration:`实时协作...`,duplicateSelection:`复制`,untitled:`无标题`,name:`名字`,yourName:`您的姓名`,madeWithExcalidraw:`使用 Excalidraw 创建`,group:`编组`,ungroup:`解除编组`,collaborators:`协作者`,toggleGrid:`切换网格显示`,addToLibrary:`添加到素材库中`,removeFromLibrary:`从素材库中移除`,libraryLoadingMessage:`正在加载素材库…`,libraries:`浏览素材库`,loadingScene:`正在加载绘图…`,loadScene:`从文件加载绘图`,align:`对齐`,alignTop:`顶部对齐`,alignBottom:`底端对齐`,alignLeft:`左对齐`,alignRight:`右对齐`,centerVertically:`垂直居中`,centerHorizontally:`水平居中`,distributeHorizontally:`水平等距分布`,distributeVertically:`垂直等距分布`,flipHorizontal:`水平翻转`,flipVertical:`垂直翻转`,viewMode:`查看模式`,share:`分享`,showStroke:`显示描边颜色选择器`,showBackground:`显示背景颜色选择器`,showFonts:`显示字体选择器`,toggleTheme:`切换浅色/深色主题`,theme:`主题`,personalLib:`个人素材库`,excalidrawLib:`Excalidraw 素材库`,decreaseFontSize:`缩小字体大小`,increaseFontSize:`放大字体大小`,unbindText:`取消文本绑定`,bindText:`将文本绑定到容器`,createContainerFromText:`将文本包围在容器中`,link:{edit:`编辑链接`,editEmbed:`编辑嵌入链接`,create:`添加链接`,label:`链接`,labelEmbed:`链接与嵌入`,empty:`未设定链接`,hint:`在此处输入或粘贴您的链接`,goToElement:`前往目标元素`},lineEditor:{edit:`编辑线条`,editArrow:`编辑箭头`},polygon:{breakPolygon:`解除多边形`,convertToPolygon:`转换为多边形`},elementLock:{lock:`锁定`,unlock:`解除锁定`,lockAll:`全部锁定`,unlockAll:`全部解锁`},statusPublished:`已发布`,sidebarLock:`侧边栏常驻`,selectAllElementsInFrame:`选择画框中的所有元素`,removeAllElementsFromFrame:`分离出画框中的所有元素`,eyeDropper:`从画布上取色`,textToDiagram:`文字至图表`,prompt:`Prompt`,followUs:`关注我们`,discordChat:`Discord 群组`,zoomToFitViewport:`缩放以适应视图`,zoomToFitSelection:`缩放以适应选区`,zoomToFit:`缩放以适应所有元素`,installPWA:`在本地安装 Excalidraw (PWA)`,autoResize:`启用文本自动缩放`,imageCropping:`图片裁剪`,unCroppedDimension:`未裁剪的尺寸`,copyElementLink:`复制此对象的链接`,linkToElement:`链接到对象`,wrapSelectionInFrame:`用选中的元素创建画框`,tab:`Tab`,shapeSwitch:`切换形状`},t={title:`链接到对象`,desc:`点击画布上的形状或粘贴链接。`,notFound:`在画布上找不到链接的对象。`},n={noItems:`尚未添加任何项目……`,hint_emptyLibrary:`选中画布上的项目添加到此处,或从下方的公共素材库中导入。`,hint_emptyPrivateLibrary:`选中画布上的项目添加到此处。`,search:{inputPlaceholder:`搜索库`,heading:`匹配的库`,noResults:`无匹配项……`,clearSearch:`清除搜索`}},r={title:`在画布上查找`,noMatch:`无匹配项…`,singleResult:`结果`,multipleResults:`结果`,placeholder:`在画布上查找文本…`,frames:`画框`,texts:`文本`},i={clearReset:`重置画布`,exportJSON:`导出为文件`,exportImage:`导出图片...`,export:`保存到...`,copyToClipboard:`复制到剪贴板`,copyLink:`复制链接`,save:`保存至当前文件`,saveAs:`保存为`,load:`打开`,getShareableLink:`获取共享链接`,close:`关闭`,selectLanguage:`选择语言`,scrollBackToContent:`滚动回到内容`,zoomIn:`放大`,zoomOut:`缩小`,resetZoom:`重置缩放`,menu:`菜单`,done:`完成`,edit:`编辑`,undo:`撤销`,redo:`重做`,resetLibrary:`重置素材库`,createNewRoom:`新建会议室`,fullScreen:`全屏`,darkMode:`深色模式`,lightMode:`浅色模式`,systemMode:`系统模式`,zenMode:`禅模式`,objectsSnapMode:`吸附至对象`,exitZenMode:`退出禅模式`,cancel:`取消`,saveLibNames:`保存名称并退出`,clear:`清除`,remove:`删除`,embed:`切换嵌入`,publishLibrary:`重命名或发布`,submit:`提交`,confirm:`确定`,embeddableInteractionButton:`点击以开始交互`},a={clearReset:`这将会清除整个画布。您是否要继续?`,couldNotCreateShareableLink:`无法创建共享链接`,couldNotCreateShareableLinkTooBig:`无法创建可共享链接:画布过大`,couldNotLoadInvalidFile:`无法加载无效的文件`,importBackendFailed:`从后端导入失败。`,cannotExportEmptyCanvas:`无法导出空白画布。`,couldNotCopyToClipboard:`无法复制到剪贴板。`,decryptFailed:`无法解密数据。`,uploadedSecurly:`上传已被端到端加密保护,这意味着 Excalidraw 的服务器和第三方都无法读取内容。`,loadSceneOverridePrompt:`加载外部绘图将取代您现有的内容。您想要继续吗?`,collabStopOverridePrompt:`停止会话将覆盖您先前本地存储的绘图。 您确定吗?
|
|
2
2
|
|
|
3
3
|
(如果您想保持本地绘图,只需关闭浏览器选项卡。)`,errorAddingToLibrary:`无法将项目添加到素材库中`,errorRemovingFromLibrary:`无法从素材库中移除项目`,confirmAddLibrary:`这将添加 {{numShapes}} 个形状到您的素材库中。您确定吗?`,imageDoesNotContainScene:`此图像似乎不包含任何画布数据。您是否在导出时启用了画布嵌入功能?`,cannotRestoreFromImage:`无法从此图像文件恢复画布`,invalidSceneUrl:`无法从提供的 URL 导入场景。它或者格式不正确,或者不包含有效的 Excalidraw JSON 数据。`,resetLibrary:`这将会清除你的素材库。你确定要这么做吗?`,removeItemsFromsLibrary:`确定要从素材库中删除 {{count}} 个项目吗?`,invalidEncryptionKey:`密钥必须包含22个字符。实时协作已被禁用。`,collabOfflineWarning:`无网络连接。
|
|
4
4
|
您的改动将不会被保存!`,localStorageQuotaExceeded:`超过浏览器存储配额。更改将不会被保存。`},o={unsupportedFileType:`不支持的文件格式。`,imageInsertError:`无法插入图像。请稍后再试……`,fileTooBig:`文件过大。最大允许的大小为 {{maxSize}}。`,svgImageInsertError:`无法插入 SVG 图像。该 SVG 标记似乎是无效的。`,failedToFetchImage:`无法获取图片。`,cannotResolveCollabServer:`无法连接到实时协作服务器。请重新加载页面并重试。`,importLibraryError:`无法加载素材库`,saveLibraryError:`无法将库保存至存储。请将库保存为本地文件,以确保您的更改不被丢失。`,collabSaveFailed:`无法保存到后端数据库。如果问题持续存在,您应该保存文件到本地,以确保您的工作不会丢失。`,collabSaveFailed_sizeExceeded:`无法保存到后端数据库,画布似乎过大。您应该保存文件到本地,以确保您的工作不会丢失。`,imageToolNotSupported:`图片已被禁用。`,brave_measure_text_error:{line1:`您似乎正在使用 Brave 浏览器并启用了<bold>积极阻止指纹识别</bold>的设置。`,line2:`这可能会破坏绘图中的 <bold>文本元素</bold>。`,line3:`我们强烈建议禁用此设置。您可以按照<link>这些步骤</link>来设置。`,line4:`如果禁用此设置无法修复文本元素的显示,请在 GitHub 上提交一个 <issueLink>issue</issueLink> ,或者在 <discordLink>Discord</discordLink> 上反馈`},libraryElementTypeError:{embeddable:`嵌入元素不能添加到素材库。`,iframe:`不能将 IFrame 元素添加到素材库中。`,image:`我们不久将支持添加图片到素材库`},asyncPasteFailedOnRead:`无法粘贴(无法读取系统剪贴板)。`,asyncPasteFailedOnParse:`无法粘贴。`,copyToSystemClipboardFailed:`无法复制到剪贴板。`},s={selection:`选择`,lasso:`套索选择`,image:`插入图像`,rectangle:`矩形`,diamond:`菱形`,ellipse:`椭圆`,arrow:`箭头`,line:`线条`,freedraw:`自由书写`,text:`文字`,library:`素材库`,lock:`绘制后保持所选的工具栏状态`,penMode:`笔模式 – 避免误触`,link:`为选定的形状添加或更改链接`,eraser:`橡皮`,frame:`画框工具`,magicframe:`线框图至代码`,embeddable:`嵌入网页`,laser:`激光笔`,hand:`抓手(平移工具)`,extraTools:`更多工具`,mermaidToExcalidraw:`Mermaid 至 Excalidraw`,convertElementType:`切换形状种类`},c={rectangle:`矩形`,diamond:`菱形`,ellipse:`椭圆`,arrow:`箭头`,line:`线条`,freedraw:`自由书写`,text:`文字`,image:`图片`,group:`组`,frame:`画框`,magicframe:`线框图至代码`,embeddable:`嵌入网页`,selection:`选择`,iframe:`IFrame`},l={canvasActions:`画布动作`,selectedShapeActions:`选定形状操作`,shapes:`形状`},u={dismissSearch:`按{{shortcut}}取消搜索`,canvasPanning:`要移动画布,请按住{{shortcut_1}}或{{shortcut_2}}同时拖拽鼠标,或使用抓手工具。`,linearElement:`点击创建多个点 拖动创建直线`,arrowTool:`点击创建多个点,拖动创建直线。按 {{shortcut}} 切换箭头类型。`,arrowBindModifiers:``,freeDraw:`点击并拖动,完成时松开`,text:`提示:您也可以使用选择工具双击任意位置来添加文字`,embeddable:`点击并拖动以创建嵌入网页`,text_selected:`双击或按{{shortcut}}编辑文本`,text_editing:`按{{shortcut_1}}或{{shortcut_2}}完成编辑`,linearElementMulti:`点击最后的点或按{{shortcut_1}}或{{shortcut_2}}完成`,lockAngle:`可以按住{{shortcut}}来约束角度`,resize:`缩放时按住{{shortcut_1}}可以约束宽高比例,
|