api-tests-coverage 1.0.8 → 1.0.10
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/dist/dashboard/assets/{_basePickBy-DK6M9Uvz.js → _basePickBy-DZR484hj.js} +1 -1
- package/dist/dashboard/{dist/assets/_baseUniq-BPCxdwlX.js → assets/_baseUniq-BZHS9wTU.js} +1 -1
- package/dist/dashboard/{dist/assets/arc-225azWF8.js → assets/arc-D4xT0thw.js} +1 -1
- package/dist/dashboard/{dist/assets/architectureDiagram-VXUJARFQ-BW9j-2rE.js → assets/architectureDiagram-VXUJARFQ-Bs48s9rH.js} +1 -1
- package/dist/dashboard/assets/{blockDiagram-VD42YOAC-CcWyVh_8.js → blockDiagram-VD42YOAC-BvkiW8lj.js} +1 -1
- package/dist/dashboard/{dist/assets/c4Diagram-YG6GDRKO-BJS73w81.js → assets/c4Diagram-YG6GDRKO-DuP3tG_c.js} +1 -1
- package/dist/dashboard/assets/channel-YFEOkJua.js +1 -0
- package/dist/dashboard/assets/{chunk-4BX2VUAB-BrlBx_h4.js → chunk-4BX2VUAB-BrU7mtb9.js} +1 -1
- package/dist/dashboard/assets/{chunk-55IACEB6-BTGWaOkw.js → chunk-55IACEB6-DwsmCNp_.js} +1 -1
- package/dist/dashboard/{dist/assets/chunk-B4BG7PRW-BIav900j.js → assets/chunk-B4BG7PRW-D5WlZonc.js} +1 -1
- package/dist/dashboard/{dist/assets/chunk-DI55MBZ5-CKpg9Lnh.js → assets/chunk-DI55MBZ5-B-xsiGYI.js} +1 -1
- package/dist/dashboard/assets/{chunk-FMBD7UC4-Bm9KRQE1.js → chunk-FMBD7UC4-DRb5NEMr.js} +1 -1
- package/dist/dashboard/assets/{chunk-QN33PNHL-DtWoo2Hn.js → chunk-QN33PNHL-BRSlHScq.js} +1 -1
- package/dist/dashboard/assets/{chunk-QZHKN3VN-DfaeFdsW.js → chunk-QZHKN3VN-Cix7nLqx.js} +1 -1
- package/dist/dashboard/assets/{chunk-TZMSLE5B-CM7Di7Gz.js → chunk-TZMSLE5B-BtXpcWN4.js} +1 -1
- package/dist/dashboard/assets/classDiagram-2ON5EDUG-CE9rmEXI.js +1 -0
- package/dist/dashboard/assets/classDiagram-v2-WZHVMYZB-CE9rmEXI.js +1 -0
- package/dist/dashboard/assets/clone-BAVNftx6.js +1 -0
- package/dist/dashboard/{dist/assets/cose-bilkent-S5V4N54A-BYK-qqpA.js → assets/cose-bilkent-S5V4N54A-DrNDePwE.js} +1 -1
- package/dist/dashboard/assets/{dagre-6UL2VRFP-CD25jMwx.js → dagre-6UL2VRFP-DgEqrxGj.js} +1 -1
- package/dist/dashboard/assets/{diagram-PSM6KHXK-B2ziHyX_.js → diagram-PSM6KHXK-Y-M5J_PO.js} +1 -1
- package/dist/dashboard/assets/{diagram-QEK2KX5R-DpPMBb2T.js → diagram-QEK2KX5R-BXMS0hEZ.js} +1 -1
- package/dist/dashboard/{dist/assets/diagram-S2PKOQOG-B_V6T3Do.js → assets/diagram-S2PKOQOG-Bk_jyoxg.js} +1 -1
- package/dist/dashboard/{dist/assets/erDiagram-Q2GNP2WA-C6Kdrqa_.js → assets/erDiagram-Q2GNP2WA-BbPQp6RA.js} +1 -1
- package/dist/dashboard/{dist/assets/flowDiagram-NV44I4VS-BI5jgu5F.js → assets/flowDiagram-NV44I4VS-1j044bLK.js} +1 -1
- package/dist/dashboard/assets/{ganttDiagram-JELNMOA3-DL8oIX3C.js → ganttDiagram-JELNMOA3-Cjy_BOl2.js} +1 -1
- package/dist/dashboard/{dist/assets/gitGraphDiagram-V2S2FVAM-CL6GCueq.js → assets/gitGraphDiagram-V2S2FVAM-RgQMxxaQ.js} +1 -1
- package/dist/dashboard/assets/{graph-DWVIsnRu.js → graph-BVGuJ5gs.js} +1 -1
- package/dist/dashboard/assets/index-Bt72YjAZ.css +1 -0
- package/dist/dashboard/{dist/assets/index-Dq-mm_Pc.js → assets/index-DuT2LnIf.js} +97 -96
- package/dist/dashboard/assets/{infoDiagram-HS3SLOUP-D-bnjqH3.js → infoDiagram-HS3SLOUP-CxmZGT-4.js} +1 -1
- package/dist/dashboard/{dist/assets/journeyDiagram-XKPGCS4Q-CHncp1wO.js → assets/journeyDiagram-XKPGCS4Q-CdvZAxeA.js} +1 -1
- package/dist/dashboard/{dist/assets/kanban-definition-3W4ZIXB7-CSO8OAdK.js → assets/kanban-definition-3W4ZIXB7-DTse5xX8.js} +1 -1
- package/dist/dashboard/assets/{layout-BRUlIe_x.js → layout-CnKzeCpQ.js} +1 -1
- package/dist/dashboard/assets/{mindmap-definition-VGOIOE7T-DabWpbNO.js → mindmap-definition-VGOIOE7T-BVsYbH_c.js} +1 -1
- package/dist/dashboard/assets/{pieDiagram-ADFJNKIX-x6W4JfPL.js → pieDiagram-ADFJNKIX-BpwMMFZ3.js} +1 -1
- package/dist/dashboard/{dist/assets/quadrantDiagram-AYHSOK5B-CA3wowPG.js → assets/quadrantDiagram-AYHSOK5B-C6NljtBN.js} +1 -1
- package/dist/dashboard/{dist/assets/requirementDiagram-UZGBJVZJ-BdQwEiam.js → assets/requirementDiagram-UZGBJVZJ-Ban4o6oK.js} +1 -1
- package/dist/dashboard/{dist/assets/sankeyDiagram-TZEHDZUN-C0gg8WQs.js → assets/sankeyDiagram-TZEHDZUN-BDImwZtB.js} +1 -1
- package/dist/dashboard/assets/{sequenceDiagram-WL72ISMW-DyAQKRQ-.js → sequenceDiagram-WL72ISMW-nMYJrjDT.js} +1 -1
- package/dist/dashboard/{dist/assets/stateDiagram-FKZM4ZOC-CAMqhH5J.js → assets/stateDiagram-FKZM4ZOC-DkBAMCJV.js} +1 -1
- package/dist/dashboard/assets/stateDiagram-v2-4FDKWEC3-CtkfyoSn.js +1 -0
- package/dist/dashboard/{dist/assets/timeline-definition-IT6M3QCI-BHdMKW5Z.js → assets/timeline-definition-IT6M3QCI-CGUDCWFx.js} +1 -1
- package/dist/dashboard/assets/{treemap-GDKQZRPO-CKPSdFAX.js → treemap-GDKQZRPO-D-XpcCUD.js} +1 -1
- package/dist/dashboard/{dist/assets/xychartDiagram-PRI3JC2R-C-lnMuU7.js → assets/xychartDiagram-PRI3JC2R-BlIpbwyn.js} +1 -1
- package/dist/dashboard/dist/assets/{_basePickBy-BUyUvYKO.js → _basePickBy-DZR484hj.js} +1 -1
- package/dist/dashboard/{assets/_baseUniq-BPCxdwlX.js → dist/assets/_baseUniq-BZHS9wTU.js} +1 -1
- package/dist/dashboard/dist/assets/{arc-B5aJr1w6.js → arc-D4xT0thw.js} +1 -1
- package/dist/dashboard/dist/assets/{architectureDiagram-VXUJARFQ-C7QAcrIt.js → architectureDiagram-VXUJARFQ-Bs48s9rH.js} +1 -1
- package/dist/dashboard/dist/assets/{blockDiagram-VD42YOAC-BGNUtVZX.js → blockDiagram-VD42YOAC-BvkiW8lj.js} +1 -1
- package/dist/dashboard/{assets/c4Diagram-YG6GDRKO-Bq0y8Ms0.js → dist/assets/c4Diagram-YG6GDRKO-DuP3tG_c.js} +1 -1
- package/dist/dashboard/dist/assets/channel-YFEOkJua.js +1 -0
- package/dist/dashboard/dist/assets/{chunk-4BX2VUAB-BrlBx_h4.js → chunk-4BX2VUAB-BrU7mtb9.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-55IACEB6-BTGWaOkw.js → chunk-55IACEB6-DwsmCNp_.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-B4BG7PRW-B-3Me5OV.js → chunk-B4BG7PRW-D5WlZonc.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-DI55MBZ5-BLZCyXU3.js → chunk-DI55MBZ5-B-xsiGYI.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-FMBD7UC4-BH1h7N7Y.js → chunk-FMBD7UC4-DRb5NEMr.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-QN33PNHL-C59bvcTc.js → chunk-QN33PNHL-BRSlHScq.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-QZHKN3VN-C8ruykkm.js → chunk-QZHKN3VN-Cix7nLqx.js} +1 -1
- package/dist/dashboard/dist/assets/{chunk-TZMSLE5B-BcLpi7P1.js → chunk-TZMSLE5B-BtXpcWN4.js} +1 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-CE9rmEXI.js +1 -0
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-CE9rmEXI.js +1 -0
- package/dist/dashboard/dist/assets/clone-BAVNftx6.js +1 -0
- package/dist/dashboard/dist/assets/{cose-bilkent-S5V4N54A-BbDNIhrI.js → cose-bilkent-S5V4N54A-DrNDePwE.js} +1 -1
- package/dist/dashboard/dist/assets/{dagre-6UL2VRFP-B_c-U7x0.js → dagre-6UL2VRFP-DgEqrxGj.js} +1 -1
- package/dist/dashboard/dist/assets/{diagram-PSM6KHXK-B2ziHyX_.js → diagram-PSM6KHXK-Y-M5J_PO.js} +1 -1
- package/dist/dashboard/dist/assets/{diagram-QEK2KX5R-BGYlCtOz.js → diagram-QEK2KX5R-BXMS0hEZ.js} +1 -1
- package/dist/dashboard/{assets/diagram-S2PKOQOG-BplBVLaZ.js → dist/assets/diagram-S2PKOQOG-Bk_jyoxg.js} +1 -1
- package/dist/dashboard/dist/assets/{erDiagram-Q2GNP2WA-5nn2-sLe.js → erDiagram-Q2GNP2WA-BbPQp6RA.js} +1 -1
- package/dist/dashboard/dist/assets/{flowDiagram-NV44I4VS-CBo4bgv8.js → flowDiagram-NV44I4VS-1j044bLK.js} +1 -1
- package/dist/dashboard/dist/assets/{ganttDiagram-JELNMOA3-Blw86NSz.js → ganttDiagram-JELNMOA3-Cjy_BOl2.js} +1 -1
- package/dist/dashboard/{assets/gitGraphDiagram-V2S2FVAM-5oPGxe6l.js → dist/assets/gitGraphDiagram-V2S2FVAM-RgQMxxaQ.js} +1 -1
- package/dist/dashboard/dist/assets/{graph-CzGhVX0w.js → graph-BVGuJ5gs.js} +1 -1
- package/dist/dashboard/dist/assets/index-Bt72YjAZ.css +1 -0
- package/dist/dashboard/dist/assets/{index-CbsYYBta.js → index-DuT2LnIf.js} +97 -96
- package/dist/dashboard/dist/assets/{infoDiagram-HS3SLOUP-CbvfFEOs.js → infoDiagram-HS3SLOUP-CxmZGT-4.js} +1 -1
- package/dist/dashboard/{assets/journeyDiagram-XKPGCS4Q-DkT7QyWQ.js → dist/assets/journeyDiagram-XKPGCS4Q-CdvZAxeA.js} +1 -1
- package/dist/dashboard/dist/assets/{kanban-definition-3W4ZIXB7-BD9Yqcmv.js → kanban-definition-3W4ZIXB7-DTse5xX8.js} +1 -1
- package/dist/dashboard/dist/assets/{layout-D-zuaQpz.js → layout-CnKzeCpQ.js} +1 -1
- package/dist/dashboard/dist/assets/{mindmap-definition-VGOIOE7T-BWOv2jfH.js → mindmap-definition-VGOIOE7T-BVsYbH_c.js} +1 -1
- package/dist/dashboard/dist/assets/{pieDiagram-ADFJNKIX-9zB4LrDS.js → pieDiagram-ADFJNKIX-BpwMMFZ3.js} +1 -1
- package/dist/dashboard/{assets/quadrantDiagram-AYHSOK5B-Cs_QHGFN.js → dist/assets/quadrantDiagram-AYHSOK5B-C6NljtBN.js} +1 -1
- package/dist/dashboard/{assets/requirementDiagram-UZGBJVZJ-Y6IeHRvx.js → dist/assets/requirementDiagram-UZGBJVZJ-Ban4o6oK.js} +1 -1
- package/dist/dashboard/dist/assets/{sankeyDiagram-TZEHDZUN-C2tgBc3h.js → sankeyDiagram-TZEHDZUN-BDImwZtB.js} +1 -1
- package/dist/dashboard/dist/assets/{sequenceDiagram-WL72ISMW-BJapitlJ.js → sequenceDiagram-WL72ISMW-nMYJrjDT.js} +1 -1
- package/dist/dashboard/dist/assets/{stateDiagram-FKZM4ZOC-B95YMS6o.js → stateDiagram-FKZM4ZOC-DkBAMCJV.js} +1 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-CtkfyoSn.js +1 -0
- package/dist/dashboard/dist/assets/{timeline-definition-IT6M3QCI-CgZuzj68.js → timeline-definition-IT6M3QCI-CGUDCWFx.js} +1 -1
- package/dist/dashboard/dist/assets/{treemap-GDKQZRPO-DISZoPlK.js → treemap-GDKQZRPO-D-XpcCUD.js} +1 -1
- package/dist/dashboard/dist/assets/{xychartDiagram-PRI3JC2R-Cg4RhAT2.js → xychartDiagram-PRI3JC2R-BlIpbwyn.js} +1 -1
- package/dist/dashboard/dist/index.html +2 -2
- package/dist/dashboard/index.html +2 -2
- package/dist/src/businessCoverage.d.ts.map +1 -1
- package/dist/src/businessCoverage.js +53 -2
- package/dist/src/index.js +74 -6
- package/dist/src/inference/routeInference.d.ts.map +1 -1
- package/dist/src/inference/routeInference.js +87 -1
- package/package.json +1 -1
- package/dist/dashboard/assets/arc-225azWF8.js +0 -1
- package/dist/dashboard/assets/architectureDiagram-VXUJARFQ-BW9j-2rE.js +0 -36
- package/dist/dashboard/assets/channel-CPmdNASe.js +0 -1
- package/dist/dashboard/assets/chunk-B4BG7PRW-B-3Me5OV.js +0 -165
- package/dist/dashboard/assets/chunk-DI55MBZ5-BLZCyXU3.js +0 -220
- package/dist/dashboard/assets/classDiagram-2ON5EDUG-DTSnWk0q.js +0 -1
- package/dist/dashboard/assets/classDiagram-v2-WZHVMYZB-DTSnWk0q.js +0 -1
- package/dist/dashboard/assets/clone-DiFVAewv.js +0 -1
- package/dist/dashboard/assets/cose-bilkent-S5V4N54A-CI6S9tNC.js +0 -1
- package/dist/dashboard/assets/erDiagram-Q2GNP2WA-C6Kdrqa_.js +0 -60
- package/dist/dashboard/assets/flowDiagram-NV44I4VS-CBo4bgv8.js +0 -162
- package/dist/dashboard/assets/index-B2mS1bcV.js +0 -522
- package/dist/dashboard/assets/index-DBTGeaha.css +0 -1
- package/dist/dashboard/assets/kanban-definition-3W4ZIXB7-CSO8OAdK.js +0 -89
- package/dist/dashboard/assets/sankeyDiagram-TZEHDZUN-CZT51ITh.js +0 -10
- package/dist/dashboard/assets/stateDiagram-FKZM4ZOC-DeadfBBo.js +0 -1
- package/dist/dashboard/assets/stateDiagram-v2-4FDKWEC3-D58eQQQS.js +0 -1
- package/dist/dashboard/assets/timeline-definition-IT6M3QCI-DYmeeClO.js +0 -61
- package/dist/dashboard/assets/xychartDiagram-PRI3JC2R-Ch7ZZyVX.js +0 -7
- package/dist/dashboard/dist/assets/_basePickBy-Bsd7xDyH.js +0 -1
- package/dist/dashboard/dist/assets/_basePickBy-CeCjvJWr.js +0 -1
- package/dist/dashboard/dist/assets/_basePickBy-DK6M9Uvz.js +0 -1
- package/dist/dashboard/dist/assets/_basePickBy-Dqqv96-M.js +0 -1
- package/dist/dashboard/dist/assets/_basePickBy-P9JMLvtQ.js +0 -1
- package/dist/dashboard/dist/assets/_baseUniq-BLr5OOl5.js +0 -1
- package/dist/dashboard/dist/assets/_baseUniq-C_Rmv6sJ.js +0 -1
- package/dist/dashboard/dist/assets/_baseUniq-DPFwTyBB.js +0 -1
- package/dist/dashboard/dist/assets/_baseUniq-DQMeOG5y.js +0 -1
- package/dist/dashboard/dist/assets/_baseUniq-rIzQSv0r.js +0 -1
- package/dist/dashboard/dist/assets/arc-B78X1MhT.js +0 -1
- package/dist/dashboard/dist/assets/arc-BDIdECDJ.js +0 -1
- package/dist/dashboard/dist/assets/arc-DkeMDl9N.js +0 -1
- package/dist/dashboard/dist/assets/arc-FwwTLzl4.js +0 -1
- package/dist/dashboard/dist/assets/architectureDiagram-VXUJARFQ-B3jCDh0O.js +0 -36
- package/dist/dashboard/dist/assets/architectureDiagram-VXUJARFQ-CN-Jo086.js +0 -36
- package/dist/dashboard/dist/assets/architectureDiagram-VXUJARFQ-D2t8Py1B.js +0 -36
- package/dist/dashboard/dist/assets/architectureDiagram-VXUJARFQ-pTmKi64N.js +0 -36
- package/dist/dashboard/dist/assets/blockDiagram-VD42YOAC-7B2h6RPh.js +0 -122
- package/dist/dashboard/dist/assets/blockDiagram-VD42YOAC-BYvjSDpK.js +0 -122
- package/dist/dashboard/dist/assets/blockDiagram-VD42YOAC-CcWyVh_8.js +0 -122
- package/dist/dashboard/dist/assets/blockDiagram-VD42YOAC-DGX607yw.js +0 -122
- package/dist/dashboard/dist/assets/blockDiagram-VD42YOAC-DHq7l0u0.js +0 -122
- package/dist/dashboard/dist/assets/c4Diagram-YG6GDRKO-BNb72-7t.js +0 -10
- package/dist/dashboard/dist/assets/c4Diagram-YG6GDRKO-Bq0y8Ms0.js +0 -10
- package/dist/dashboard/dist/assets/c4Diagram-YG6GDRKO-DewhyLOM.js +0 -10
- package/dist/dashboard/dist/assets/c4Diagram-YG6GDRKO-LGUphwB4.js +0 -10
- package/dist/dashboard/dist/assets/c4Diagram-YG6GDRKO-dUTtO4_k.js +0 -10
- package/dist/dashboard/dist/assets/channel-B5FEo6x8.js +0 -1
- package/dist/dashboard/dist/assets/channel-BEridnQp.js +0 -1
- package/dist/dashboard/dist/assets/channel-BTmvZfyH.js +0 -1
- package/dist/dashboard/dist/assets/channel-CPmdNASe.js +0 -1
- package/dist/dashboard/dist/assets/channel-DRY_ja-e.js +0 -1
- package/dist/dashboard/dist/assets/channel-Tp2lV-7l.js +0 -1
- package/dist/dashboard/dist/assets/chunk-4BX2VUAB-Cmagglyl.js +0 -1
- package/dist/dashboard/dist/assets/chunk-4BX2VUAB-Cs6byFto.js +0 -1
- package/dist/dashboard/dist/assets/chunk-4BX2VUAB-DRIHQhAG.js +0 -1
- package/dist/dashboard/dist/assets/chunk-4BX2VUAB-NmyQ9Lvf.js +0 -1
- package/dist/dashboard/dist/assets/chunk-4BX2VUAB-rMDV_g4i.js +0 -1
- package/dist/dashboard/dist/assets/chunk-55IACEB6-CIsqCtMh.js +0 -1
- package/dist/dashboard/dist/assets/chunk-55IACEB6-CpiM92Yh.js +0 -1
- package/dist/dashboard/dist/assets/chunk-55IACEB6-DO0Kye0T.js +0 -1
- package/dist/dashboard/dist/assets/chunk-55IACEB6-GAN8BMbh.js +0 -1
- package/dist/dashboard/dist/assets/chunk-55IACEB6-H2T0HHMf.js +0 -1
- package/dist/dashboard/dist/assets/chunk-B4BG7PRW-BWvXJTy9.js +0 -165
- package/dist/dashboard/dist/assets/chunk-B4BG7PRW-CKtaL90X.js +0 -165
- package/dist/dashboard/dist/assets/chunk-B4BG7PRW-Di8ts-Zx.js +0 -165
- package/dist/dashboard/dist/assets/chunk-B4BG7PRW-TrLVMk3o.js +0 -165
- package/dist/dashboard/dist/assets/chunk-DI55MBZ5-C4TA0qbT.js +0 -220
- package/dist/dashboard/dist/assets/chunk-DI55MBZ5-CL1ZxZeg.js +0 -220
- package/dist/dashboard/dist/assets/chunk-DI55MBZ5-GokZ0alw.js +0 -220
- package/dist/dashboard/dist/assets/chunk-DI55MBZ5-gtWRL21e.js +0 -220
- package/dist/dashboard/dist/assets/chunk-FMBD7UC4-Bm9KRQE1.js +0 -15
- package/dist/dashboard/dist/assets/chunk-FMBD7UC4-CF7D6k3W.js +0 -15
- package/dist/dashboard/dist/assets/chunk-FMBD7UC4-CpLfFRIb.js +0 -15
- package/dist/dashboard/dist/assets/chunk-FMBD7UC4-D8tBTVUA.js +0 -15
- package/dist/dashboard/dist/assets/chunk-FMBD7UC4-SoGdW77W.js +0 -15
- package/dist/dashboard/dist/assets/chunk-QN33PNHL-CRmDstMo.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QN33PNHL-DtWoo2Hn.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QN33PNHL-Dzk5VCZ3.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QN33PNHL-QXXWtthx.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QN33PNHL-aMOQTOIX.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QZHKN3VN-DfaeFdsW.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QZHKN3VN-E7ncuJVt.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QZHKN3VN-MWcGwlRW.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QZHKN3VN-Z3uL3Vu6.js +0 -1
- package/dist/dashboard/dist/assets/chunk-QZHKN3VN-wrxBFgAz.js +0 -1
- package/dist/dashboard/dist/assets/chunk-TZMSLE5B-Bk8ko3-5.js +0 -1
- package/dist/dashboard/dist/assets/chunk-TZMSLE5B-CM7Di7Gz.js +0 -1
- package/dist/dashboard/dist/assets/chunk-TZMSLE5B-C_BO0lrM.js +0 -1
- package/dist/dashboard/dist/assets/chunk-TZMSLE5B-CceRjsoP.js +0 -1
- package/dist/dashboard/dist/assets/chunk-TZMSLE5B-TeZFj1J2.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-BImA9xr-.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-CEq2N6UL.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-DTSnWk0q.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-DbYl04vP.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-Dy8_C5lE.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-2ON5EDUG-M4p4DdHs.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-BImA9xr-.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-CEq2N6UL.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-DTSnWk0q.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-DbYl04vP.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-Dy8_C5lE.js +0 -1
- package/dist/dashboard/dist/assets/classDiagram-v2-WZHVMYZB-M4p4DdHs.js +0 -1
- package/dist/dashboard/dist/assets/clone-B0_qHCw2.js +0 -1
- package/dist/dashboard/dist/assets/clone-CSVzZiwi.js +0 -1
- package/dist/dashboard/dist/assets/clone-CwK3Qr20.js +0 -1
- package/dist/dashboard/dist/assets/clone-DISkn1y_.js +0 -1
- package/dist/dashboard/dist/assets/clone-DiFVAewv.js +0 -1
- package/dist/dashboard/dist/assets/clone-UVgnSCmQ.js +0 -1
- package/dist/dashboard/dist/assets/cose-bilkent-S5V4N54A-C0bInKgj.js +0 -1
- package/dist/dashboard/dist/assets/cose-bilkent-S5V4N54A-CI6S9tNC.js +0 -1
- package/dist/dashboard/dist/assets/cose-bilkent-S5V4N54A-DHd06pux.js +0 -1
- package/dist/dashboard/dist/assets/cose-bilkent-S5V4N54A-DphDKVx6.js +0 -1
- package/dist/dashboard/dist/assets/dagre-6UL2VRFP-CD25jMwx.js +0 -4
- package/dist/dashboard/dist/assets/dagre-6UL2VRFP-CNIXE38x.js +0 -4
- package/dist/dashboard/dist/assets/dagre-6UL2VRFP-CS9rymMI.js +0 -4
- package/dist/dashboard/dist/assets/dagre-6UL2VRFP-Dmvfw_80.js +0 -4
- package/dist/dashboard/dist/assets/dagre-6UL2VRFP-Niwmlwr0.js +0 -4
- package/dist/dashboard/dist/assets/diagram-PSM6KHXK-13jc3TQv.js +0 -24
- package/dist/dashboard/dist/assets/diagram-PSM6KHXK-BrmJ7Er9.js +0 -24
- package/dist/dashboard/dist/assets/diagram-PSM6KHXK-C4AEkNvR.js +0 -24
- package/dist/dashboard/dist/assets/diagram-PSM6KHXK-D6YSgDDJ.js +0 -24
- package/dist/dashboard/dist/assets/diagram-PSM6KHXK-Dza_WM04.js +0 -24
- package/dist/dashboard/dist/assets/diagram-QEK2KX5R-175MJwNN.js +0 -43
- package/dist/dashboard/dist/assets/diagram-QEK2KX5R-B0imVv60.js +0 -43
- package/dist/dashboard/dist/assets/diagram-QEK2KX5R-BIV3o3EV.js +0 -43
- package/dist/dashboard/dist/assets/diagram-QEK2KX5R-DiyAu4P9.js +0 -43
- package/dist/dashboard/dist/assets/diagram-QEK2KX5R-DpPMBb2T.js +0 -43
- package/dist/dashboard/dist/assets/diagram-S2PKOQOG-BoE0tnmp.js +0 -24
- package/dist/dashboard/dist/assets/diagram-S2PKOQOG-BplBVLaZ.js +0 -24
- package/dist/dashboard/dist/assets/diagram-S2PKOQOG-CTGrW9gk.js +0 -24
- package/dist/dashboard/dist/assets/diagram-S2PKOQOG-DLbrPzgt.js +0 -24
- package/dist/dashboard/dist/assets/diagram-S2PKOQOG-DpUYqpiH.js +0 -24
- package/dist/dashboard/dist/assets/erDiagram-Q2GNP2WA-CqHBeobc.js +0 -60
- package/dist/dashboard/dist/assets/erDiagram-Q2GNP2WA-Cs9OJvmx.js +0 -60
- package/dist/dashboard/dist/assets/erDiagram-Q2GNP2WA-Dv8XSfJj.js +0 -60
- package/dist/dashboard/dist/assets/erDiagram-Q2GNP2WA-YGhaTIGv.js +0 -60
- package/dist/dashboard/dist/assets/flowDiagram-NV44I4VS-CFQFk4xh.js +0 -162
- package/dist/dashboard/dist/assets/flowDiagram-NV44I4VS-Czs0h8rs.js +0 -162
- package/dist/dashboard/dist/assets/flowDiagram-NV44I4VS-D9XX51TY.js +0 -162
- package/dist/dashboard/dist/assets/flowDiagram-NV44I4VS-DHVxWNFx.js +0 -162
- package/dist/dashboard/dist/assets/ganttDiagram-JELNMOA3-BnlL2FL1.js +0 -267
- package/dist/dashboard/dist/assets/ganttDiagram-JELNMOA3-C0zKIcDh.js +0 -267
- package/dist/dashboard/dist/assets/ganttDiagram-JELNMOA3-CZyJojLk.js +0 -267
- package/dist/dashboard/dist/assets/ganttDiagram-JELNMOA3-DL2yqIxp.js +0 -267
- package/dist/dashboard/dist/assets/ganttDiagram-JELNMOA3-DL8oIX3C.js +0 -267
- package/dist/dashboard/dist/assets/gitGraphDiagram-V2S2FVAM-5oPGxe6l.js +0 -65
- package/dist/dashboard/dist/assets/gitGraphDiagram-V2S2FVAM-BTvlOVhp.js +0 -65
- package/dist/dashboard/dist/assets/gitGraphDiagram-V2S2FVAM-CRmWaA7J.js +0 -65
- package/dist/dashboard/dist/assets/gitGraphDiagram-V2S2FVAM-DbNQAtGz.js +0 -65
- package/dist/dashboard/dist/assets/gitGraphDiagram-V2S2FVAM-IqGQHaKk.js +0 -65
- package/dist/dashboard/dist/assets/graph-0SQYPKUn.js +0 -1
- package/dist/dashboard/dist/assets/graph-BUXAK8S4.js +0 -1
- package/dist/dashboard/dist/assets/graph-DBDvJaxp.js +0 -1
- package/dist/dashboard/dist/assets/graph-DOoKbdQ6.js +0 -1
- package/dist/dashboard/dist/assets/graph-DWVIsnRu.js +0 -1
- package/dist/dashboard/dist/assets/index-B2mS1bcV.js +0 -522
- package/dist/dashboard/dist/assets/index-CTnNA-vP.js +0 -522
- package/dist/dashboard/dist/assets/index-DBTGeaha.css +0 -1
- package/dist/dashboard/dist/assets/index-EyiVOOa1.js +0 -522
- package/dist/dashboard/dist/assets/index-HrRX8fCW.css +0 -1
- package/dist/dashboard/dist/assets/index-k7QMCdxo.js +0 -522
- package/dist/dashboard/dist/assets/infoDiagram-HS3SLOUP-CBkGxsn0.js +0 -2
- package/dist/dashboard/dist/assets/infoDiagram-HS3SLOUP-CjIjVG9r.js +0 -2
- package/dist/dashboard/dist/assets/infoDiagram-HS3SLOUP-D-PYXUrg.js +0 -2
- package/dist/dashboard/dist/assets/infoDiagram-HS3SLOUP-D-bnjqH3.js +0 -2
- package/dist/dashboard/dist/assets/infoDiagram-HS3SLOUP-DJzR_BOe.js +0 -2
- package/dist/dashboard/dist/assets/journeyDiagram-XKPGCS4Q-CQ5xSTDU.js +0 -139
- package/dist/dashboard/dist/assets/journeyDiagram-XKPGCS4Q-CSaMpSJx.js +0 -139
- package/dist/dashboard/dist/assets/journeyDiagram-XKPGCS4Q-DB9H2kgs.js +0 -139
- package/dist/dashboard/dist/assets/journeyDiagram-XKPGCS4Q-DIxnZShx.js +0 -139
- package/dist/dashboard/dist/assets/journeyDiagram-XKPGCS4Q-DkT7QyWQ.js +0 -139
- package/dist/dashboard/dist/assets/kanban-definition-3W4ZIXB7-C78jm-e6.js +0 -89
- package/dist/dashboard/dist/assets/kanban-definition-3W4ZIXB7-Ct5tvLkE.js +0 -89
- package/dist/dashboard/dist/assets/kanban-definition-3W4ZIXB7-D3cLrQ2R.js +0 -89
- package/dist/dashboard/dist/assets/kanban-definition-3W4ZIXB7-DIQJ-dLy.js +0 -89
- package/dist/dashboard/dist/assets/layout-BRUlIe_x.js +0 -1
- package/dist/dashboard/dist/assets/layout-C0rIGZiV.js +0 -1
- package/dist/dashboard/dist/assets/layout-DEw3EHVd.js +0 -1
- package/dist/dashboard/dist/assets/layout-DI6sxc5V.js +0 -1
- package/dist/dashboard/dist/assets/layout-Dx_sC6cU.js +0 -1
- package/dist/dashboard/dist/assets/mindmap-definition-VGOIOE7T-By-QpTlY.js +0 -68
- package/dist/dashboard/dist/assets/mindmap-definition-VGOIOE7T-C1fnWvNC.js +0 -68
- package/dist/dashboard/dist/assets/mindmap-definition-VGOIOE7T-CM92aa9b.js +0 -68
- package/dist/dashboard/dist/assets/mindmap-definition-VGOIOE7T-DabWpbNO.js +0 -68
- package/dist/dashboard/dist/assets/mindmap-definition-VGOIOE7T-DlJhsH9l.js +0 -68
- package/dist/dashboard/dist/assets/pieDiagram-ADFJNKIX-B-ZMfN-z.js +0 -30
- package/dist/dashboard/dist/assets/pieDiagram-ADFJNKIX-D5o3TpJC.js +0 -30
- package/dist/dashboard/dist/assets/pieDiagram-ADFJNKIX-DV7vKoTM.js +0 -30
- package/dist/dashboard/dist/assets/pieDiagram-ADFJNKIX-Dow8SBXC.js +0 -30
- package/dist/dashboard/dist/assets/pieDiagram-ADFJNKIX-x6W4JfPL.js +0 -30
- package/dist/dashboard/dist/assets/quadrantDiagram-AYHSOK5B-BxxYLZfy.js +0 -7
- package/dist/dashboard/dist/assets/quadrantDiagram-AYHSOK5B-CHDOoeNa.js +0 -7
- package/dist/dashboard/dist/assets/quadrantDiagram-AYHSOK5B-Cs_QHGFN.js +0 -7
- package/dist/dashboard/dist/assets/quadrantDiagram-AYHSOK5B-lHEZJOJ6.js +0 -7
- package/dist/dashboard/dist/assets/quadrantDiagram-AYHSOK5B-rQFE_dn3.js +0 -7
- package/dist/dashboard/dist/assets/requirementDiagram-UZGBJVZJ-Df5xM_H_.js +0 -64
- package/dist/dashboard/dist/assets/requirementDiagram-UZGBJVZJ-Dmgv7ZrT.js +0 -64
- package/dist/dashboard/dist/assets/requirementDiagram-UZGBJVZJ-GW_7oZIz.js +0 -64
- package/dist/dashboard/dist/assets/requirementDiagram-UZGBJVZJ-Y6IeHRvx.js +0 -64
- package/dist/dashboard/dist/assets/requirementDiagram-UZGBJVZJ-hYEIPZd0.js +0 -64
- package/dist/dashboard/dist/assets/sankeyDiagram-TZEHDZUN-CZT51ITh.js +0 -10
- package/dist/dashboard/dist/assets/sankeyDiagram-TZEHDZUN-DGrHwdIQ.js +0 -10
- package/dist/dashboard/dist/assets/sankeyDiagram-TZEHDZUN-DYnsmtzq.js +0 -10
- package/dist/dashboard/dist/assets/sankeyDiagram-TZEHDZUN-DcDdVqgd.js +0 -10
- package/dist/dashboard/dist/assets/sequenceDiagram-WL72ISMW-Bl8oTfn5.js +0 -145
- package/dist/dashboard/dist/assets/sequenceDiagram-WL72ISMW-Cp0y_3Co.js +0 -145
- package/dist/dashboard/dist/assets/sequenceDiagram-WL72ISMW-DyAQKRQ-.js +0 -145
- package/dist/dashboard/dist/assets/sequenceDiagram-WL72ISMW-ICcxF9Xm.js +0 -145
- package/dist/dashboard/dist/assets/sequenceDiagram-WL72ISMW-jv03s9tU.js +0 -145
- package/dist/dashboard/dist/assets/stateDiagram-FKZM4ZOC-BtT1TP04.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-FKZM4ZOC-CmJ3FBc_.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-FKZM4ZOC-DeadfBBo.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-FKZM4ZOC-_d5I17H8.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-Be2mYRwK.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-D58eQQQS.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-DBJHmcPu.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-DI37b5or.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-DMcei2iB.js +0 -1
- package/dist/dashboard/dist/assets/stateDiagram-v2-4FDKWEC3-D_7eAFTe.js +0 -1
- package/dist/dashboard/dist/assets/timeline-definition-IT6M3QCI-CnYcftUT.js +0 -61
- package/dist/dashboard/dist/assets/timeline-definition-IT6M3QCI-D67NHbjw.js +0 -61
- package/dist/dashboard/dist/assets/timeline-definition-IT6M3QCI-DYmeeClO.js +0 -61
- package/dist/dashboard/dist/assets/timeline-definition-IT6M3QCI-EfSs86eQ.js +0 -61
- package/dist/dashboard/dist/assets/treemap-GDKQZRPO-B-4BtJ8O.js +0 -162
- package/dist/dashboard/dist/assets/treemap-GDKQZRPO-C5fkt2es.js +0 -162
- package/dist/dashboard/dist/assets/treemap-GDKQZRPO-CKPSdFAX.js +0 -162
- package/dist/dashboard/dist/assets/treemap-GDKQZRPO-Cvw8Lt-q.js +0 -162
- package/dist/dashboard/dist/assets/treemap-GDKQZRPO-DdGYbSSy.js +0 -162
- package/dist/dashboard/dist/assets/xychartDiagram-PRI3JC2R-Ch7ZZyVX.js +0 -7
- package/dist/dashboard/dist/assets/xychartDiagram-PRI3JC2R-DHOGwVjy.js +0 -7
- package/dist/dashboard/dist/assets/xychartDiagram-PRI3JC2R-WhBuJ91k.js +0 -7
- package/dist/dashboard/dist/assets/xychartDiagram-PRI3JC2R-jiOJ2YB4.js +0 -7
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
var Qp=Object.defineProperty;var Zp=(t,e,n)=>e in t?Qp(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var fn=(t,e,n)=>Zp(t,typeof e!="symbol"?e+"":e,n);import{bS as em,bT as tm,bh as Mf,bC as nm,bl as rm,bi as ze,aD as im,aE as su,bs as sm,bv as Ff,bw as Gf,bt as am,bH as au,aG as Qn,aH as oe,bj as om,bd as cm,aL as Rt,bU as lm,bV as Ln}from"./index-B2mS1bcV.js";import{k as Wr,j as Il,g as li,S as um,w as dm,x as fm,c as Uf,v as Oe,y as jf,l as hm,z as pm,A as mm,B as gm,C as ym,a as zf,d as j,i as nn,r as Qe,f as pt,D as Fe}from"./_baseUniq-BPCxdwlX.js";import{j as $l,m as M,d as Tm,f as vt,g as Vr,h as B,i as Pl,l as Wn,e as Rm}from"./_basePickBy-DK6M9Uvz.js";import{c as qe}from"./clone-DiFVAewv.js";var vm=Object.prototype,Em=vm.hasOwnProperty,ht=em(function(t,e){if(tm(e)||Mf(e)){nm(e,Wr(e),t);return}for(var n in e)Em.call(e,n)&&rm(t,n,e[n])});function Bf(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),n=n>i?i:n,n<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var s=Array(i);++r<i;)s[r]=t[r+e];return s}function cs(t){for(var e=-1,n=t==null?0:t.length,r=0,i=[];++e<n;){var s=t[e];s&&(i[r++]=s)}return i}function Am(t,e,n,r){for(var i=-1,s=t==null?0:t.length;++i<s;){var a=t[i];e(r,a,n(a),t)}return r}function Sm(t,e,n,r){return Il(t,function(i,s,a){e(r,i,n(i),a)}),r}function Cm(t,e){return function(n,r){var i=ze(n)?Am:Sm,s=e?e():{};return i(n,t,li(r),s)}}var km=200;function Nm(t,e,n,r){var i=-1,s=dm,a=!0,o=t.length,c=[],l=e.length;if(!o)return c;e.length>=km&&(s=fm,a=!1,e=new um(e));e:for(;++i<o;){var d=t[i],h=d;if(d=d!==0?d:0,a&&h===h){for(var p=l;p--;)if(e[p]===h)continue e;c.push(d)}else s(e,h,r)||c.push(d)}return c}var Ua=im(function(t,e){return su(t)?Nm(t,Uf(e,1,su,!0)):[]});function Ge(t,e,n){var r=t==null?0:t.length;return r?(e=e===void 0?1:$l(e),Bf(t,e<0?0:e,r)):[]}function Vi(t,e,n){var r=t==null?0:t.length;return r?(e=e===void 0?1:$l(e),e=r-e,Bf(t,0,e<0?0:e)):[]}function wm(t,e){for(var n=-1,r=t==null?0:t.length;++n<r;)if(!e(t[n],n,t))return!1;return!0}function bm(t,e){var n=!0;return Il(t,function(r,i,s){return n=!!e(r,i,s),n}),n}function _t(t,e,n){var r=ze(t)?wm:bm;return r(t,li(e))}function $t(t){return t&&t.length?t[0]:void 0}function ft(t,e){return Uf(M(t,e))}var _m=Object.prototype,Im=_m.hasOwnProperty,$m=Cm(function(t,e,n){Im.call(t,n)?t[n].push(e):sm(t,n,[e])}),Pm="[object String]";function it(t){return typeof t=="string"||!ze(t)&&Ff(t)&&Gf(t)==Pm}var Lm=Math.max;function tt(t,e,n,r){t=Mf(t)?t:Oe(t),n=n?$l(n):0;var i=t.length;return n<0&&(n=Lm(i+n,0)),it(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&jf(t,e,n)>-1}function ou(t,e,n){var r=t==null?0:t.length;if(!r)return-1;var i=0;return jf(t,e,i)}var Om="[object RegExp]";function xm(t){return Ff(t)&&Gf(t)==Om}var cu=au&&au.isRegExp,rn=cu?am(cu):xm,Dm="Expected a function";function Mm(t){if(typeof t!="function")throw new TypeError(Dm);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}function Pt(t,e){if(t==null)return{};var n=hm(pm(t),function(r){return[r]});return e=li(e),Tm(t,n,function(r,i){return e(r,i[0])})}function ja(t,e){var n=ze(t)?mm:gm;return n(t,Mm(li(e)))}function Fm(t,e){var n;return Il(t,function(r,i,s){return n=e(r,i,s),!n}),!!n}function qf(t,e,n){var r=ze(t)?ym:Fm;return r(t,li(e))}function Ll(t){return t&&t.length?zf(t):[]}function Gm(t,e){return t&&t.length?zf(t,li(e)):[]}function Ke(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function wt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function pn(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function Um(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function ki(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}class Wf{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){var i;const n=this.types[e.container.$type];if(!n)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const r=(i=n.properties[e.property])==null?void 0:i.referenceType;if(!r)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){const n=this.types[e];return n||{name:e,properties:{},superTypes:[]}}isInstance(e,n){return Ke(e)&&this.isSubtype(e.$type,n)}isSubtype(e,n){if(e===n)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});const i=r[n];if(i!==void 0)return i;{const s=this.types[e],a=s?s.superTypes.some(o=>this.isSubtype(o,n)):!1;return r[n]=a,a}}getAllSubTypes(e){const n=this.allSubtypes[e];if(n)return n;{const r=this.getAllTypes(),i=[];for(const s of r)this.isSubtype(s,e)&&i.push(s);return this.allSubtypes[e]=i,i}}}function Ki(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function Vf(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Kf(t){return Ki(t)&&typeof t.fullText=="string"}class Ue{constructor(e,n){this.startFn=e,this.nextFn=n}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){const e=this.iterator();let n=0,r=e.next();for(;!r.done;)n++,r=e.next();return n}toArray(){const e=[],n=this.iterator();let r;do r=n.next(),r.value!==void 0&&e.push(r.value);while(!r.done);return e}toSet(){return new Set(this)}toMap(e,n){const r=this.map(i=>[e?e(i):i,n?n(i):i]);return new Map(r)}toString(){return this.join()}concat(e){return new Ue(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),n=>{let r;if(!n.firstDone){do if(r=this.nextFn(n.first),!r.done)return r;while(!r.done);n.firstDone=!0}do if(r=n.iterator.next(),!r.done)return r;while(!r.done);return ut})}join(e=","){const n=this.iterator();let r="",i,s=!1;do i=n.next(),i.done||(s&&(r+=e),r+=jm(i.value)),s=!0;while(!i.done);return r}indexOf(e,n=0){const r=this.iterator();let i=0,s=r.next();for(;!s.done;){if(i>=n&&s.value===e)return i;s=r.next(),i++}return-1}every(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(!e(r.value))return!1;r=n.next()}return!0}some(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(e(r.value))return!0;r=n.next()}return!1}forEach(e){const n=this.iterator();let r=0,i=n.next();for(;!i.done;)e(i.value,r),i=n.next(),r++}map(e){return new Ue(this.startFn,n=>{const{done:r,value:i}=this.nextFn(n);return r?ut:{done:!1,value:e(i)}})}filter(e){return new Ue(this.startFn,n=>{let r;do if(r=this.nextFn(n),!r.done&&e(r.value))return r;while(!r.done);return ut})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,n){const r=this.iterator();let i=n,s=r.next();for(;!s.done;)i===void 0?i=s.value:i=e(i,s.value),s=r.next();return i}reduceRight(e,n){return this.recursiveReduce(this.iterator(),e,n)}recursiveReduce(e,n,r){const i=e.next();if(i.done)return r;const s=this.recursiveReduce(e,n,r);return s===void 0?i.value:n(s,i.value)}find(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(e(r.value))return r.value;r=n.next()}}findIndex(e){const n=this.iterator();let r=0,i=n.next();for(;!i.done;){if(e(i.value))return r;i=n.next(),r++}return-1}includes(e){const n=this.iterator();let r=n.next();for(;!r.done;){if(r.value===e)return!0;r=n.next()}return!1}flatMap(e){return new Ue(()=>({this:this.startFn()}),n=>{do{if(n.iterator){const s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}const{done:r,value:i}=this.nextFn(n.this);if(!r){const s=e(i);if(la(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(n.iterator);return ut})}flat(e){if(e===void 0&&(e=1),e<=0)return this;const n=e>1?this.flat(e-1):this;return new Ue(()=>({this:n.startFn()}),r=>{do{if(r.iterator){const a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}const{done:i,value:s}=n.nextFn(r.this);if(!i)if(la(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(r.iterator);return ut})}head(){const n=this.iterator().next();if(!n.done)return n.value}tail(e=1){return new Ue(()=>{const n=this.startFn();for(let r=0;r<e;r++)if(this.nextFn(n).done)return n;return n},this.nextFn)}limit(e){return new Ue(()=>({size:0,state:this.startFn()}),n=>(n.size++,n.size>e?ut:this.nextFn(n.state)))}distinct(e){return new Ue(()=>({set:new Set,internalState:this.startFn()}),n=>{let r;do if(r=this.nextFn(n.internalState),!r.done){const i=e?e(r.value):r.value;if(!n.set.has(i))return n.set.add(i),r}while(!r.done);return ut})}exclude(e,n){const r=new Set;for(const i of e){const s=n?n(i):i;r.add(s)}return this.filter(i=>{const s=n?n(i):i;return!r.has(s)})}}function jm(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function la(t){return!!t&&typeof t[Symbol.iterator]=="function"}const Hf=new Ue(()=>{},()=>ut),ut=Object.freeze({done:!0,value:void 0});function he(...t){if(t.length===1){const e=t[0];if(e instanceof Ue)return e;if(la(e))return new Ue(()=>e[Symbol.iterator](),n=>n.next());if(typeof e.length=="number")return new Ue(()=>({index:0}),n=>n.index<e.length?{done:!1,value:e[n.index++]}:ut)}return t.length>1?new Ue(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){const n=e.iterator.next();if(!n.done)return n;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){const n=t[e.collIndex++];la(n)?e.iterator=n[Symbol.iterator]():n&&typeof n.length=="number"&&(e.array=n)}}while(e.iterator||e.array||e.collIndex<t.length);return ut}):Hf}class Ol extends Ue{constructor(e,n,r){super(()=>({iterators:r!=null&&r.includeRoot?[[e][Symbol.iterator]()]:[n(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){const a=i.iterators[i.iterators.length-1].next();if(a.done)i.iterators.pop();else return i.iterators.push(n(a.value)[Symbol.iterator]()),a}return ut})}iterator(){const e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}}var Fo;(function(t){function e(s){return s.reduce((a,o)=>a+o,0)}t.sum=e;function n(s){return s.reduce((a,o)=>a*o,0)}t.product=n;function r(s){return s.reduce((a,o)=>Math.min(a,o))}t.min=r;function i(s){return s.reduce((a,o)=>Math.max(a,o))}t.max=i})(Fo||(Fo={}));function Go(t,e={}){for(const[n,r]of Object.entries(t))n.startsWith("$")||(Array.isArray(r)?r.forEach((i,s)=>{Ke(i)&&(i.$container=t,i.$containerProperty=n,i.$containerIndex=s,e.deep&&Go(i,e))}):Ke(r)&&(r.$container=t,r.$containerProperty=n,e.deep&&Go(r,e)))}function za(t,e){let n=t;for(;n;){if(e(n))return n;n=n.$container}}function Qt(t){const n=Hs(t).$document;if(!n)throw new Error("AST node has no document.");return n}function Hs(t){for(;t.$container;)t=t.$container;return t}function lu(t){return wt(t)?t.ref?[t.ref]:[]:pn(t)?t.items.map(e=>e.ref):[]}function xl(t,e){if(!t)throw new Error("Node must be an AstNode.");const n=e==null?void 0:e.range;return new Ue(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),r=>{for(;r.keyIndex<r.keys.length;){const i=r.keys[r.keyIndex];if(!i.startsWith("$")){const s=t[i];if(Ke(s)){if(r.keyIndex++,uu(s,n))return{done:!1,value:s}}else if(Array.isArray(s)){for(;r.arrayIndex<s.length;){const a=r.arrayIndex++,o=s[a];if(Ke(o)&&uu(o,n))return{done:!1,value:o}}r.arrayIndex=0}}r.keyIndex++}return ut})}function ls(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Ol(t,n=>xl(n,e))}function Zt(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new Ol(t,n=>xl(n,e),{includeRoot:!0})}function uu(t,e){var r;if(!e)return!0;const n=(r=t.$cstNode)==null?void 0:r.range;return n?ug(n,e):!1}function ua(t){return new Ue(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){const n=e.keys[e.keyIndex];if(!n.startsWith("$")){const r=t[n];if(wt(r)||pn(r))return e.keyIndex++,{done:!1,value:{reference:r,container:t,property:n}};if(Array.isArray(r)){for(;e.arrayIndex<r.length;){const i=e.arrayIndex++,s=r[i];if(wt(s)||pn(r))return{done:!1,value:{reference:s,container:t,property:n,index:i}}}e.arrayIndex=0}}e.keyIndex++}return ut})}function zm(t,e){const n=t.getTypeMetaData(e.$type),r=e;for(const i of Object.values(n.properties))i.defaultValue!==void 0&&r[i.name]===void 0&&(r[i.name]=Yf(i.defaultValue))}function Yf(t){return Array.isArray(t)?[...t.map(Yf)]:t}const lt={$type:"AbstractElement",cardinality:"cardinality"};function Bm(t){return Z.isInstance(t,lt.$type)}const Ys={$type:"AbstractParserRule"};function us(t){return Z.isInstance(t,Ys.$type)}const Ds={$type:"AbstractRule"},kt={$type:"AbstractType"},Dn={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function Ba(t){return Z.isInstance(t,Dn.$type)}const Xs={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function Xf(t){return Z.isInstance(t,Xs.$type)}const du={$type:"ArrayLiteral",elements:"elements"},fu={$type:"ArrayType",elementType:"elementType"},Mn={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function Vn(t){return Z.isInstance(t,Mn.$type)}const Uo={$type:"BooleanLiteral",true:"true"};function qm(t){return Z.isInstance(t,Uo.$type)}const Fn={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function Wm(t){return Z.isInstance(t,Fn.$type)}const sr={$type:"Condition"},Js={$type:"Conjunction",left:"left",right:"right"};function Vm(t){return Z.isInstance(t,Js.$type)}const Gn={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function qa(t){return Z.isInstance(t,Gn.$type)}const Qs={$type:"Disjunction",left:"left",right:"right"};function Km(t){return Z.isInstance(t,Qs.$type)}const jo={$type:"EndOfFile",cardinality:"cardinality"};function Hm(t){return Z.isInstance(t,jo.$type)}const On={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"},hu={$type:"GrammarImport",path:"path"},dr={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function Dl(t){return Z.isInstance(t,dr.$type)}const zo={$type:"InferredType",name:"name"};function Jf(t){return Z.isInstance(t,zo.$type)}const Vt={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function da(t){return Z.isInstance(t,Vt.$type)}const yo={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"},pu={$type:"InfixRuleOperators",precedences:"precedences"},Oi={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function Ym(t){return Z.isInstance(t,Oi.$type)}const xi={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function Kn(t){return Z.isInstance(t,xi.$type)}const Ms={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"},fr={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Xm(t){return Z.isInstance(t,fr.$type)}const Bo={$type:"Negation",value:"value"};function Jm(t){return Z.isInstance(t,Bo.$type)}const mu={$type:"NumberLiteral",value:"value"},Fs={$type:"Parameter",name:"name"},qo={$type:"ParameterReference",parameter:"parameter"};function Qm(t){return Z.isInstance(t,qo.$type)}const Dt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function on(t){return Z.isInstance(t,Dt.$type)}const To={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"},hr={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function Zm(t){return Z.isInstance(t,hr.$type)}const Wo={$type:"ReturnType",name:"name"};function eg(t){return Z.isInstance(t,Wo.$type)}const pr={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function Hn(t){return Z.isInstance(t,pr.$type)}const Di={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function tg(t){return Z.isInstance(t,Di.$type)}const gu={$type:"StringLiteral",value:"value"},mr={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function ng(t){return Z.isInstance(t,mr.$type)}const yt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"},gr={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function rg(t){return Z.isInstance(t,gr.$type)}const hn={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function cn(t){return Z.isInstance(t,hn.$type)}const yr={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function ig(t){return Z.isInstance(t,yr.$type)}const Zs={$type:"Type",name:"name",type:"type"};function sg(t){return Z.isInstance(t,Zs.$type)}const Ni={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"},wi={$type:"TypeDefinition"},yu={$type:"UnionType",types:"types"},ea={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function Qf(t){return Z.isInstance(t,ea.$type)}const Tr={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function ag(t){return Z.isInstance(t,Tr.$type)}const bi={$type:"ValueLiteral"},Mi={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function og(t){return Z.isInstance(t,Mi.$type)}class Zf extends Wf{constructor(){super(...arguments),this.types={AbstractElement:{name:lt.$type,properties:{cardinality:{name:lt.cardinality}},superTypes:[]},AbstractParserRule:{name:Ys.$type,properties:{},superTypes:[Ds.$type,kt.$type]},AbstractRule:{name:Ds.$type,properties:{},superTypes:[]},AbstractType:{name:kt.$type,properties:{},superTypes:[]},Action:{name:Dn.$type,properties:{cardinality:{name:Dn.cardinality},feature:{name:Dn.feature},inferredType:{name:Dn.inferredType},operator:{name:Dn.operator},type:{name:Dn.type,referenceType:kt.$type}},superTypes:[lt.$type]},Alternatives:{name:Xs.$type,properties:{cardinality:{name:Xs.cardinality},elements:{name:Xs.elements,defaultValue:[]}},superTypes:[lt.$type]},ArrayLiteral:{name:du.$type,properties:{elements:{name:du.elements,defaultValue:[]}},superTypes:[bi.$type]},ArrayType:{name:fu.$type,properties:{elementType:{name:fu.elementType}},superTypes:[wi.$type]},Assignment:{name:Mn.$type,properties:{cardinality:{name:Mn.cardinality},feature:{name:Mn.feature},operator:{name:Mn.operator},predicate:{name:Mn.predicate},terminal:{name:Mn.terminal}},superTypes:[lt.$type]},BooleanLiteral:{name:Uo.$type,properties:{true:{name:Uo.true,defaultValue:!1}},superTypes:[sr.$type,bi.$type]},CharacterRange:{name:Fn.$type,properties:{cardinality:{name:Fn.cardinality},left:{name:Fn.left},lookahead:{name:Fn.lookahead},parenthesized:{name:Fn.parenthesized,defaultValue:!1},right:{name:Fn.right}},superTypes:[yt.$type]},Condition:{name:sr.$type,properties:{},superTypes:[]},Conjunction:{name:Js.$type,properties:{left:{name:Js.left},right:{name:Js.right}},superTypes:[sr.$type]},CrossReference:{name:Gn.$type,properties:{cardinality:{name:Gn.cardinality},deprecatedSyntax:{name:Gn.deprecatedSyntax,defaultValue:!1},isMulti:{name:Gn.isMulti,defaultValue:!1},terminal:{name:Gn.terminal},type:{name:Gn.type,referenceType:kt.$type}},superTypes:[lt.$type]},Disjunction:{name:Qs.$type,properties:{left:{name:Qs.left},right:{name:Qs.right}},superTypes:[sr.$type]},EndOfFile:{name:jo.$type,properties:{cardinality:{name:jo.cardinality}},superTypes:[lt.$type]},Grammar:{name:On.$type,properties:{imports:{name:On.imports,defaultValue:[]},interfaces:{name:On.interfaces,defaultValue:[]},isDeclared:{name:On.isDeclared,defaultValue:!1},name:{name:On.name},rules:{name:On.rules,defaultValue:[]},types:{name:On.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:hu.$type,properties:{path:{name:hu.path}},superTypes:[]},Group:{name:dr.$type,properties:{cardinality:{name:dr.cardinality},elements:{name:dr.elements,defaultValue:[]},guardCondition:{name:dr.guardCondition},predicate:{name:dr.predicate}},superTypes:[lt.$type]},InferredType:{name:zo.$type,properties:{name:{name:zo.name}},superTypes:[kt.$type]},InfixRule:{name:Vt.$type,properties:{call:{name:Vt.call},dataType:{name:Vt.dataType},inferredType:{name:Vt.inferredType},name:{name:Vt.name},operators:{name:Vt.operators},parameters:{name:Vt.parameters,defaultValue:[]},returnType:{name:Vt.returnType,referenceType:kt.$type}},superTypes:[Ys.$type]},InfixRuleOperatorList:{name:yo.$type,properties:{associativity:{name:yo.associativity},operators:{name:yo.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:pu.$type,properties:{precedences:{name:pu.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:Oi.$type,properties:{attributes:{name:Oi.attributes,defaultValue:[]},name:{name:Oi.name},superTypes:{name:Oi.superTypes,defaultValue:[],referenceType:kt.$type}},superTypes:[kt.$type]},Keyword:{name:xi.$type,properties:{cardinality:{name:xi.cardinality},predicate:{name:xi.predicate},value:{name:xi.value}},superTypes:[lt.$type]},NamedArgument:{name:Ms.$type,properties:{calledByName:{name:Ms.calledByName,defaultValue:!1},parameter:{name:Ms.parameter,referenceType:Fs.$type},value:{name:Ms.value}},superTypes:[]},NegatedToken:{name:fr.$type,properties:{cardinality:{name:fr.cardinality},lookahead:{name:fr.lookahead},parenthesized:{name:fr.parenthesized,defaultValue:!1},terminal:{name:fr.terminal}},superTypes:[yt.$type]},Negation:{name:Bo.$type,properties:{value:{name:Bo.value}},superTypes:[sr.$type]},NumberLiteral:{name:mu.$type,properties:{value:{name:mu.value}},superTypes:[bi.$type]},Parameter:{name:Fs.$type,properties:{name:{name:Fs.name}},superTypes:[]},ParameterReference:{name:qo.$type,properties:{parameter:{name:qo.parameter,referenceType:Fs.$type}},superTypes:[sr.$type]},ParserRule:{name:Dt.$type,properties:{dataType:{name:Dt.dataType},definition:{name:Dt.definition},entry:{name:Dt.entry,defaultValue:!1},fragment:{name:Dt.fragment,defaultValue:!1},inferredType:{name:Dt.inferredType},name:{name:Dt.name},parameters:{name:Dt.parameters,defaultValue:[]},returnType:{name:Dt.returnType,referenceType:kt.$type}},superTypes:[Ys.$type]},ReferenceType:{name:To.$type,properties:{isMulti:{name:To.isMulti,defaultValue:!1},referenceType:{name:To.referenceType}},superTypes:[wi.$type]},RegexToken:{name:hr.$type,properties:{cardinality:{name:hr.cardinality},lookahead:{name:hr.lookahead},parenthesized:{name:hr.parenthesized,defaultValue:!1},regex:{name:hr.regex}},superTypes:[yt.$type]},ReturnType:{name:Wo.$type,properties:{name:{name:Wo.name}},superTypes:[]},RuleCall:{name:pr.$type,properties:{arguments:{name:pr.arguments,defaultValue:[]},cardinality:{name:pr.cardinality},predicate:{name:pr.predicate},rule:{name:pr.rule,referenceType:Ds.$type}},superTypes:[lt.$type]},SimpleType:{name:Di.$type,properties:{primitiveType:{name:Di.primitiveType},stringType:{name:Di.stringType},typeRef:{name:Di.typeRef,referenceType:kt.$type}},superTypes:[wi.$type]},StringLiteral:{name:gu.$type,properties:{value:{name:gu.value}},superTypes:[bi.$type]},TerminalAlternatives:{name:mr.$type,properties:{cardinality:{name:mr.cardinality},elements:{name:mr.elements,defaultValue:[]},lookahead:{name:mr.lookahead},parenthesized:{name:mr.parenthesized,defaultValue:!1}},superTypes:[yt.$type]},TerminalElement:{name:yt.$type,properties:{cardinality:{name:yt.cardinality},lookahead:{name:yt.lookahead},parenthesized:{name:yt.parenthesized,defaultValue:!1}},superTypes:[lt.$type]},TerminalGroup:{name:gr.$type,properties:{cardinality:{name:gr.cardinality},elements:{name:gr.elements,defaultValue:[]},lookahead:{name:gr.lookahead},parenthesized:{name:gr.parenthesized,defaultValue:!1}},superTypes:[yt.$type]},TerminalRule:{name:hn.$type,properties:{definition:{name:hn.definition},fragment:{name:hn.fragment,defaultValue:!1},hidden:{name:hn.hidden,defaultValue:!1},name:{name:hn.name},type:{name:hn.type}},superTypes:[Ds.$type]},TerminalRuleCall:{name:yr.$type,properties:{cardinality:{name:yr.cardinality},lookahead:{name:yr.lookahead},parenthesized:{name:yr.parenthesized,defaultValue:!1},rule:{name:yr.rule,referenceType:hn.$type}},superTypes:[yt.$type]},Type:{name:Zs.$type,properties:{name:{name:Zs.name},type:{name:Zs.type}},superTypes:[kt.$type]},TypeAttribute:{name:Ni.$type,properties:{defaultValue:{name:Ni.defaultValue},isOptional:{name:Ni.isOptional,defaultValue:!1},name:{name:Ni.name},type:{name:Ni.type}},superTypes:[]},TypeDefinition:{name:wi.$type,properties:{},superTypes:[]},UnionType:{name:yu.$type,properties:{types:{name:yu.types,defaultValue:[]}},superTypes:[wi.$type]},UnorderedGroup:{name:ea.$type,properties:{cardinality:{name:ea.cardinality},elements:{name:ea.elements,defaultValue:[]}},superTypes:[lt.$type]},UntilToken:{name:Tr.$type,properties:{cardinality:{name:Tr.cardinality},lookahead:{name:Tr.lookahead},parenthesized:{name:Tr.parenthesized,defaultValue:!1},terminal:{name:Tr.terminal}},superTypes:[yt.$type]},ValueLiteral:{name:bi.$type,properties:{},superTypes:[]},Wildcard:{name:Mi.$type,properties:{cardinality:{name:Mi.cardinality},lookahead:{name:Mi.lookahead},parenthesized:{name:Mi.parenthesized,defaultValue:!1}},superTypes:[yt.$type]}}}}const Z=new Zf;function Vo(t){return new Ol(t,e=>Ki(e)?e.content:[],{includeRoot:!0})}function cg(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function Ko(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function fa(t){if(!t)return;const{offset:e,end:n,range:r}=t;return{range:r,offset:e,end:n,length:n-e}}var Xt;(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Xt||(Xt={}));function lg(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return Xt.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Xt.After;const n=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,r=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return n&&r?Xt.Inside:n?Xt.OverlapBack:r?Xt.OverlapFront:Xt.Outside}function ug(t,e){return lg(t,e)>Xt.After}const dg=/^[\w\p{L}]$/u;function fg(t,e){if(t){const n=hg(t,!0);if(n&&Tu(n,e))return n;if(Kf(t)){const r=t.content.findIndex(i=>!i.hidden);for(let i=r-1;i>=0;i--){const s=t.content[i];if(Tu(s,e))return s}}}}function Tu(t,e){return Vf(t)&&e.includes(t.tokenType.name)}function hg(t,e=!0){for(;t.container;){const n=t.container;let r=n.content.indexOf(t);for(;r>0;){r--;const i=n.content[r];if(e||!i.hidden)return i}t=n}}class eh extends Error{constructor(e,n){super(e?`${n} at ${e.range.start.line}:${e.range.start.character}`:n)}}function ds(t,e="Error: Got unexpected value."){throw new Error(e)}function W(t){return t.charCodeAt(0)}function Ro(t,e){Array.isArray(t)?t.forEach(function(n){e.push(n)}):e.push(t)}function _i(t,e){if(t[e]===!0)throw"duplicate flag "+e;t[e],t[e]=!0}function ar(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function pg(){throw Error("Internal Error - Should never get here!")}function Ru(t){return t.type==="Character"}const ha=[];for(let t=W("0");t<=W("9");t++)ha.push(t);const pa=[W("_")].concat(ha);for(let t=W("a");t<=W("z");t++)pa.push(t);for(let t=W("A");t<=W("Z");t++)pa.push(t);const vu=[W(" "),W("\f"),W(`
|
|
2
|
-
`),W("\r"),W(" "),W("\v"),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W(" "),W("\u2028"),W("\u2029"),W(" "),W(" "),W(" "),W("\uFEFF")],mg=/[0-9a-fA-F]/,Gs=/[0-9]/,gg=/[1-9]/;class th{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");const n=this.disjunction();this.consumeChar("/");const r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":_i(r,"global");break;case"i":_i(r,"ignoreCase");break;case"m":_i(r,"multiLine");break;case"u":_i(r,"unicode");break;case"y":_i(r,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:n,loc:this.loc(0)}}disjunction(){const e=[],n=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(n)}}alternative(){const e=[],n=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(n)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let n;switch(this.popChar()){case"=":n="Lookahead";break;case"!":n="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":n="Lookbehind";break;case"!":n="NegativeLookbehind"}break}}ar(n);const r=this.disjunction();return this.consumeChar(")"),{type:n,value:r,loc:this.loc(e)}}return pg()}quantifier(e=!1){let n;const r=this.idx;switch(this.popChar()){case"*":n={atLeast:0,atMost:1/0};break;case"+":n={atLeast:1,atMost:1/0};break;case"?":n={atLeast:0,atMost:1};break;case"{":const i=this.integerIncludingZero();switch(this.popChar()){case"}":n={atLeast:i,atMost:i};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),n={atLeast:i,atMost:s}):n={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&n===void 0)return;ar(n);break}if(!(e===!0&&n===void 0)&&ar(n))return this.peekChar(0)==="?"?(this.consumeChar("?"),n.greedy=!1):n.greedy=!0,n.type="Quantifier",n.loc=this.loc(r),n}atom(){let e;const n=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),ar(e))return e.loc=this.loc(n),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[W(`
|
|
3
|
-
`),W("\r"),W("\u2028"),W("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,n=!1;switch(this.popChar()){case"d":e=ha;break;case"D":e=ha,n=!0;break;case"s":e=vu;break;case"S":e=vu,n=!0;break;case"w":e=pa;break;case"W":e=pa,n=!0;break}if(ar(e))return{type:"Set",value:e,complement:n}}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=W("\f");break;case"n":e=W(`
|
|
4
|
-
`);break;case"r":e=W("\r");break;case"t":e=W(" ");break;case"v":e=W("\v");break}if(ar(e))return{type:"Character",value:e}}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:W("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){const e=this.popChar();return{type:"Character",value:W(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
|
|
5
|
-
`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:const e=this.popChar();return{type:"Character",value:W(e)}}}characterClass(){const e=[];let n=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),n=!0);this.isClassAtom();){const r=this.classAtom();if(r.type,Ru(r)&&this.isRangeDash()){this.consumeChar("-");const i=this.classAtom();if(i.type,Ru(i)){if(i.value<r.value)throw Error("Range out of order in character class");e.push({from:r.value,to:i.value})}else Ro(r.value,e),e.push(W("-")),Ro(i.value,e)}else Ro(r.value,e)}return this.consumeChar("]"),{type:"Set",complement:n,value:e}}classAtom(){switch(this.peekChar()){case"]":case`
|
|
6
|
-
`:case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:W("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),e=!1;break;default:this.groupIdx++;break}const n=this.disjunction();this.consumeChar(")");const r={type:"Group",capturing:e,value:n};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(gg.test(e)===!1)throw Error("Expecting a positive integer");for(;Gs.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(Gs.test(e)===!1)throw Error("Expecting an integer");for(;Gs.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){const e=this.popChar();switch(e){case`
|
|
7
|
-
`:case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:W(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return this.peekChar()==="-"&&this.isClassAtom(1)}isDigit(){return Gs.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case`
|
|
8
|
-
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!"||this.peekChar(2)==="<"&&(this.peekChar(3)==="="||this.peekChar(3)==="!"));default:return!1}}isQuantifier(){const e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
|
|
9
|
-
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let n="";for(let i=0;i<e;i++){const s=this.popChar();if(mg.test(s)===!1)throw Error("Expecting a HexDecimal digits");n+=s}return{type:"Character",value:parseInt(n,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){const e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}class Wa{visitChildren(e){for(const n in e){const r=e[n];e.hasOwnProperty(n)&&(r.type!==void 0?this.visit(r):Array.isArray(r)&&r.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}const yg=/\r?\n/gm,Tg=new th;class Rg extends Wa{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){const n=String.fromCharCode(e.value);if(!this.multiline&&n===`
|
|
10
|
-
`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const r=Va(n);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitSet(e){if(!this.multiline){const n=this.regex.substring(e.loc.begin,e.loc.end),r=new RegExp(n);this.multiline=!!`
|
|
11
|
-
`.match(r)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const n=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}}const vo=new Rg;function vg(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),vo.reset(t),vo.visit(Tg.pattern(t)),vo.multiline}catch{return!1}}const Eg=`\f
|
|
12
|
-
\r \v \u2028\u2029 \uFEFF`.split("");function nh(t){const e=typeof t=="string"?new RegExp(t):t;return Eg.some(n=>e.test(n))}function Va(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ag(t,e){const n=Sg(t),r=e.match(n);return!!r&&r[0].length>0}function Sg(t){typeof t=="string"&&(t=new RegExp(t));const e=t,n=t.source;let r=0;function i(){let s="",a;function o(l){s+=n.substr(r,l),r+=l}function c(l){s+="(?:"+n.substr(r,l)+"|$)",r+=l}for(;r<n.length;)switch(n[r]){case"\\":switch(n[r+1]){case"c":c(3);break;case"x":c(4);break;case"u":e.unicode?n[r+2]==="{"?c(n.indexOf("}",r)-r+1):c(6):c(2);break;case"p":case"P":e.unicode?c(n.indexOf("}",r)-r+1):c(2);break;case"k":c(n.indexOf(">",r)-r+1);break;default:c(2);break}break;case"[":a=/\[(?:\\.|.)*?\]/g,a.lastIndex=r,a=a.exec(n)||[],c(a[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":o(1);break;case"{":a=/\{\d+,?\d*\}/g,a.lastIndex=r,a=a.exec(n),a?o(a[0].length):c(1);break;case"(":if(n[r+1]==="?")switch(n[r+2]){case":":s+="(?:",r+=3,s+=i()+"|$)";break;case"=":s+="(?=",r+=3,s+=i()+")";break;case"!":a=r,r+=3,i(),s+=n.substr(a,r-a);break;case"<":switch(n[r+3]){case"=":case"!":a=r,r+=4,i(),s+=n.substr(a,r-a);break;default:o(n.indexOf(">",r)-r+1),s+=i()+"|$)";break}break}else o(1),s+=i()+"|$)";break;case")":return++r,s;default:c(1);break}return s}return new RegExp(i(),t.flags)}function Cg(t){return t.rules.find(e=>on(e)&&e.entry)}function kg(t){return t.rules.filter(e=>cn(e)&&e.hidden)}function rh(t,e){const n=new Set,r=Cg(t);if(!r)return new Set(t.rules);const i=[r].concat(kg(t));for(const a of i)ih(a,n,e);const s=new Set;for(const a of t.rules)(n.has(a.name)||cn(a)&&a.hidden)&&s.add(a);return s}function ih(t,e,n){e.add(t.name),ls(t).forEach(r=>{if(Hn(r)||n){const i=r.rule.ref;i&&!e.has(i.name)&&ih(i,e,n)}})}function Ng(t){if(t.terminal)return t.terminal;if(t.type.ref){const e=ah(t.type.ref);return e==null?void 0:e.terminal}}function wg(t){return t.hidden&&!nh(Fl(t))}function bg(t,e){return!t||!e?[]:Ml(t,e,t.astNode,!0)}function sh(t,e,n){if(!t||!e)return;const r=Ml(t,e,t.astNode,!0);if(r.length!==0)return n!==void 0?n=Math.max(0,Math.min(n,r.length-1)):n=0,r[n]}function Ml(t,e,n,r){if(!r){const i=za(t.grammarSource,Vn);if(i&&i.feature===e)return[t]}return Ki(t)&&t.astNode===n?t.content.flatMap(i=>Ml(i,e,n,!1)):[]}function _g(t,e,n){if(!t)return;const r=Ig(t,e,t==null?void 0:t.astNode);if(r.length!==0)return n!==void 0?n=Math.max(0,Math.min(n,r.length-1)):n=0,r[n]}function Ig(t,e,n){if(t.astNode!==n)return[];if(Kn(t.grammarSource)&&t.grammarSource.value===e)return[t];const r=Vo(t).iterator();let i;const s=[];do if(i=r.next(),!i.done){const a=i.value;a.astNode===n?Kn(a.grammarSource)&&a.grammarSource.value===e&&s.push(a):r.prune()}while(!i.done);return s}function $g(t){var n;const e=t.astNode;for(;e===((n=t.container)==null?void 0:n.astNode);){const r=za(t.grammarSource,Vn);if(r)return r;t=t.container}}function ah(t){let e=t;return Jf(e)&&(Ba(e.$container)?e=e.$container.$container:us(e.$container)?e=e.$container:ds(e.$container)),oh(t,e,new Map)}function oh(t,e,n){var i;function r(s,a){let o;return za(s,Vn)||(o=oh(a,a,n)),n.set(t,o),o}if(n.has(t))return n.get(t);n.set(t,void 0);for(const s of ls(e)){if(Vn(s)&&s.feature.toLowerCase()==="name")return n.set(t,s),s;if(Hn(s)&&on(s.rule.ref))return r(s,s.rule.ref);if(tg(s)&&((i=s.typeRef)!=null&&i.ref))return r(s,s.typeRef.ref)}}function ch(t){return lh(t,new Set)}function lh(t,e){if(e.has(t))return!0;e.add(t);for(const n of ls(t))if(Hn(n)){if(!n.rule.ref||on(n.rule.ref)&&!lh(n.rule.ref,e)||da(n.rule.ref))return!1}else{if(Vn(n))return!1;if(Ba(n))return!1}return!!t.definition}function uh(t){if(!cn(t)){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){const e=t.returnType.ref;if(e)return e.name}}}function Hi(t){if(us(t))return on(t)&&ch(t)?t.name:uh(t)??t.name;if(Ym(t)||sg(t)||eg(t))return t.name;if(Ba(t)){const e=Pg(t);if(e)return e}else if(Jf(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Pg(t){var e;if(t.inferredType)return t.inferredType.name;if((e=t.type)!=null&&e.ref)return Hi(t.type.ref)}function Lg(t){var e;return cn(t)?((e=t.type)==null?void 0:e.name)??"string":uh(t)??t.name}function Fl(t){const e={s:!1,i:!1,u:!1},n=ui(t.definition,e),r=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(n,r)}const Gl=/[\s\S]/.source;function ui(t,e){var n;if(ng(t))return Og(t);if(rg(t))return xg(t);if(Wm(t))return Fg(t);if(ig(t)){const r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return en(ui(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}else{if(Xm(t))return Mg(t);if(ag(t))return Dg(t);if(Zm(t)){const r=t.regex.lastIndexOf("/"),i=t.regex.substring(1,r),s=t.regex.substring(r+1);return e&&(e.i=s.includes("i"),e.s=s.includes("s"),e.u=s.includes("u")),en(i,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}else{if(og(t))return en(Gl,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized});throw new Error(`Invalid terminal element: ${t==null?void 0:t.$type}, ${(n=t==null?void 0:t.$cstNode)==null?void 0:n.text}`)}}}function Og(t){return en(t.elements.map(e=>ui(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function xg(t){return en(t.elements.map(e=>ui(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function Dg(t){return en(`${Gl}*?${ui(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function Mg(t){return en(`(?!${ui(t.terminal)})${Gl}*?`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function Fg(t){return t.right?en(`[${Eo(t.left)}-${Eo(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1}):en(Eo(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function Eo(t){return Va(t.value)}function en(t,e){return(e.parenthesized||e.lookahead||e.wrap!==!1)&&(t=`(${e.lookahead??(e.parenthesized?"":"?:")}${t})`),e.cardinality?`${t}${e.cardinality}`:t}function Gg(t){const e=[],n=t.Grammar;for(const r of n.rules)cn(r)&&wg(r)&&vg(Fl(r))&&e.push(r.name);return{multilineCommentRules:e,nameRegexp:dg}}function Ho(t){console&&console.error&&console.error(`Error: ${t}`)}function dh(t){console&&console.warn&&console.warn(`Warning: ${t}`)}function fh(t){const e=new Date().getTime(),n=t();return{time:new Date().getTime()-e,value:n}}function hh(t){function e(){}e.prototype=t;const n=new e;function r(){return typeof n.bar}return r(),r(),t}function Ug(t){return jg(t)?t.LABEL:t.name}function jg(t){return it(t.LABEL)&&t.LABEL!==""}class Bt{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),j(this.definition,n=>{n.accept(e)})}}class Ze extends Bt{constructor(e){super([]),this.idx=1,ht(this,Pt(e,n=>n!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class di extends Bt{constructor(e){super(e.definition),this.orgText="",ht(this,Pt(e,n=>n!==void 0))}}class st extends Bt{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,ht(this,Pt(e,n=>n!==void 0))}}let Be=class extends Bt{constructor(e){super(e.definition),this.idx=1,ht(this,Pt(e,n=>n!==void 0))}};class mt extends Bt{constructor(e){super(e.definition),this.idx=1,ht(this,Pt(e,n=>n!==void 0))}}class gt extends Bt{constructor(e){super(e.definition),this.idx=1,ht(this,Pt(e,n=>n!==void 0))}}class Ee extends Bt{constructor(e){super(e.definition),this.idx=1,ht(this,Pt(e,n=>n!==void 0))}}class at extends Bt{constructor(e){super(e.definition),this.idx=1,ht(this,Pt(e,n=>n!==void 0))}}class ot extends Bt{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,ht(this,Pt(e,n=>n!==void 0))}}class ue{constructor(e){this.idx=1,ht(this,Pt(e,n=>n!==void 0))}accept(e){e.visit(this)}}function zg(t){return M(t,ta)}function ta(t){function e(n){return M(n,ta)}if(t instanceof Ze){const n={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return it(t.label)&&(n.label=t.label),n}else{if(t instanceof st)return{type:"Alternative",definition:e(t.definition)};if(t instanceof Be)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof mt)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof gt)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:ta(new ue({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof at)return{type:"RepetitionWithSeparator",idx:t.idx,separator:ta(new ue({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Ee)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof ot)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof ue){const n={type:"Terminal",name:t.terminalType.name,label:Ug(t.terminalType),idx:t.idx};it(t.label)&&(n.terminalLabel=t.label);const r=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(n.pattern=rn(r)?r.source:r),n}else{if(t instanceof di)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}class fi{visit(e){const n=e;switch(n.constructor){case Ze:return this.visitNonTerminal(n);case st:return this.visitAlternative(n);case Be:return this.visitOption(n);case mt:return this.visitRepetitionMandatory(n);case gt:return this.visitRepetitionMandatoryWithSeparator(n);case at:return this.visitRepetitionWithSeparator(n);case Ee:return this.visitRepetition(n);case ot:return this.visitAlternation(n);case ue:return this.visitTerminal(n);case di:return this.visitRule(n);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}function Bg(t){return t instanceof st||t instanceof Be||t instanceof Ee||t instanceof mt||t instanceof gt||t instanceof at||t instanceof ue||t instanceof di}function ma(t,e=[]){return t instanceof Be||t instanceof Ee||t instanceof at?!0:t instanceof ot?qf(t.definition,r=>ma(r,e)):t instanceof Ze&&tt(e,t)?!1:t instanceof Bt?(t instanceof Ze&&e.push(t),_t(t.definition,r=>ma(r,e))):!1}function qg(t){return t instanceof ot}function Mt(t){if(t instanceof Ze)return"SUBRULE";if(t instanceof Be)return"OPTION";if(t instanceof ot)return"OR";if(t instanceof mt)return"AT_LEAST_ONE";if(t instanceof gt)return"AT_LEAST_ONE_SEP";if(t instanceof at)return"MANY_SEP";if(t instanceof Ee)return"MANY";if(t instanceof ue)return"CONSUME";throw Error("non exhaustive match")}class Ka{walk(e,n=[]){j(e.definition,(r,i)=>{const s=Ge(e.definition,i+1);if(r instanceof Ze)this.walkProdRef(r,s,n);else if(r instanceof ue)this.walkTerminal(r,s,n);else if(r instanceof st)this.walkFlat(r,s,n);else if(r instanceof Be)this.walkOption(r,s,n);else if(r instanceof mt)this.walkAtLeastOne(r,s,n);else if(r instanceof gt)this.walkAtLeastOneSep(r,s,n);else if(r instanceof at)this.walkManySep(r,s,n);else if(r instanceof Ee)this.walkMany(r,s,n);else if(r instanceof ot)this.walkOr(r,s,n);else throw Error("non exhaustive match")})}walkTerminal(e,n,r){}walkProdRef(e,n,r){}walkFlat(e,n,r){const i=n.concat(r);this.walk(e,i)}walkOption(e,n,r){const i=n.concat(r);this.walk(e,i)}walkAtLeastOne(e,n,r){const i=[new Be({definition:e.definition})].concat(n,r);this.walk(e,i)}walkAtLeastOneSep(e,n,r){const i=Eu(e,n,r);this.walk(e,i)}walkMany(e,n,r){const i=[new Be({definition:e.definition})].concat(n,r);this.walk(e,i)}walkManySep(e,n,r){const i=Eu(e,n,r);this.walk(e,i)}walkOr(e,n,r){const i=n.concat(r);j(e.definition,s=>{const a=new st({definition:[s]});this.walk(a,i)})}}function Eu(t,e,n){return[new Be({definition:[new ue({terminalType:t.separator})].concat(t.definition)})].concat(e,n)}function fs(t){if(t instanceof Ze)return fs(t.referencedRule);if(t instanceof ue)return Kg(t);if(Bg(t))return Wg(t);if(qg(t))return Vg(t);throw Error("non exhaustive match")}function Wg(t){let e=[];const n=t.definition;let r=0,i=n.length>r,s,a=!0;for(;i&&a;)s=n[r],a=ma(s),e=e.concat(fs(s)),r=r+1,i=n.length>r;return Ll(e)}function Vg(t){const e=M(t.definition,n=>fs(n));return Ll(vt(e))}function Kg(t){return[t.terminalType]}const ph="_~IN~_";class Hg extends Ka{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,n,r){}walkProdRef(e,n,r){const i=Xg(e.referencedRule,e.idx)+this.topProd.name,s=n.concat(r),a=new st({definition:s}),o=fs(a);this.follows[i]=o}}function Yg(t){const e={};return j(t,n=>{const r=new Hg(n).startWalking();ht(e,r)}),e}function Xg(t,e){return t.name+e+ph}let na={};const Jg=new th;function Ha(t){const e=t.toString();if(na.hasOwnProperty(e))return na[e];{const n=Jg.pattern(e);return na[e]=n,n}}function Qg(){na={}}const mh="Complement Sets are not supported for first char optimization",ga=`Unable to use "first char" lexer optimizations:
|
|
13
|
-
`;function Zg(t,e=!1){try{const n=Ha(t);return Yo(n.value,{},n.flags.ignoreCase)}catch(n){if(n.message===mh)e&&dh(`${ga} Unable to optimize: < ${t.toString()} >
|
|
14
|
-
Complement Sets cannot be automatically optimized.
|
|
15
|
-
This will disable the lexer's first char optimizations.
|
|
16
|
-
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let r="";e&&(r=`
|
|
17
|
-
This will disable the lexer's first char optimizations.
|
|
18
|
-
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),Ho(`${ga}
|
|
19
|
-
Failed parsing: < ${t.toString()} >
|
|
20
|
-
Using the @chevrotain/regexp-to-ast library
|
|
21
|
-
Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+r)}}return[]}function Yo(t,e,n){switch(t.type){case"Disjunction":for(let i=0;i<t.value.length;i++)Yo(t.value[i],e,n);break;case"Alternative":const r=t.value;for(let i=0;i<r.length;i++){const s=r[i];switch(s.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}const a=s;switch(a.type){case"Character":Us(a.value,e,n);break;case"Set":if(a.complement===!0)throw Error(mh);j(a.value,c=>{if(typeof c=="number")Us(c,e,n);else{const l=c;if(n===!0)for(let d=l.from;d<=l.to;d++)Us(d,e,n);else{for(let d=l.from;d<=l.to&&d<Gi;d++)Us(d,e,n);if(l.to>=Gi){const d=l.from>=Gi?l.from:Gi,h=l.to,p=An(d),g=An(h);for(let C=p;C<=g;C++)e[C]=C}}}});break;case"Group":Yo(a.value,e,n);break;default:throw Error("Non Exhaustive Match")}const o=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type==="Group"&&Xo(a)===!1||a.type!=="Group"&&o===!1)break}break;default:throw Error("non exhaustive match!")}return Oe(e)}function Us(t,e,n){const r=An(t);e[r]=r,n===!0&&ey(t,e)}function ey(t,e){const n=String.fromCharCode(t),r=n.toUpperCase();if(r!==n){const i=An(r.charCodeAt(0));e[i]=i}else{const i=n.toLowerCase();if(i!==n){const s=An(i.charCodeAt(0));e[s]=s}}}function Au(t,e){return Vr(t.value,n=>{if(typeof n=="number")return tt(e,n);{const r=n;return Vr(e,i=>r.from<=i&&i<=r.to)!==void 0}})}function Xo(t){const e=t.quantifier;return e&&e.atLeast===0?!0:t.value?ze(t.value)?_t(t.value,Xo):Xo(t.value):!1}class ty extends Wa{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){tt(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?Au(e,this.targetCharCodes)===void 0&&(this.found=!0):Au(e,this.targetCharCodes)!==void 0&&(this.found=!0)}}function Ul(t,e){if(e instanceof RegExp){const n=Ha(e),r=new ty(t);return r.visit(n),r.found}else return Vr(e,n=>tt(t,n.charCodeAt(0)))!==void 0}const Yn="PATTERN",Fi="defaultMode",js="modes";function ny(t,e){e=Pl(e,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
|
|
22
|
-
`],tracer:(L,b)=>b()});const n=e.tracer;n("initCharCodeToOptimizedIndexMap",()=>{Ny()});let r;n("Reject Lexer.NA",()=>{r=ja(t,L=>L[Yn]===rt.NA)});let i=!1,s;n("Transform Patterns",()=>{i=!1,s=M(r,L=>{const b=L[Yn];if(rn(b)){const O=b.source;return O.length===1&&O!=="^"&&O!=="$"&&O!=="."&&!b.ignoreCase?O:O.length===2&&O[0]==="\\"&&!tt(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],O[1])?O[1]:Su(b)}else{if(Qn(b))return i=!0,{exec:b};if(typeof b=="object")return i=!0,b;if(typeof b=="string"){if(b.length===1)return b;{const O=b.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),J=new RegExp(O);return Su(J)}}else throw Error("non exhaustive match")}})});let a,o,c,l,d;n("misc mapping",()=>{a=M(r,L=>L.tokenTypeIdx),o=M(r,L=>{const b=L.GROUP;if(b!==rt.SKIPPED){if(it(b))return b;if(nn(b))return!1;throw Error("non exhaustive match")}}),c=M(r,L=>{const b=L.LONGER_ALT;if(b)return ze(b)?M(b,J=>ou(r,J)):[ou(r,b)]}),l=M(r,L=>L.PUSH_MODE),d=M(r,L=>B(L,"POP_MODE"))});let h;n("Line Terminator Handling",()=>{const L=Th(e.lineTerminatorCharacters);h=M(r,b=>!1),e.positionTracking!=="onlyOffset"&&(h=M(r,b=>B(b,"LINE_BREAKS")?!!b.LINE_BREAKS:yh(b,L)===!1&&Ul(L,b.PATTERN)))});let p,g,C,w;n("Misc Mapping #2",()=>{p=M(r,gh),g=M(s,Sy),C=Qe(r,(L,b)=>{const O=b.GROUP;return it(O)&&O!==rt.SKIPPED&&(L[O]=[]),L},{}),w=M(s,(L,b)=>({pattern:s[b],longerAlt:c[b],canLineTerminator:h[b],isCustom:p[b],short:g[b],group:o[b],push:l[b],pop:d[b],tokenTypeIdx:a[b],tokenType:r[b]}))});let D=!0,N=[];return e.safeMode||n("First Char Optimization",()=>{N=Qe(r,(L,b,O)=>{if(typeof b.PATTERN=="string"){const J=b.PATTERN.charCodeAt(0),re=An(J);Ao(L,re,w[O])}else if(ze(b.START_CHARS_HINT)){let J;j(b.START_CHARS_HINT,re=>{const ie=typeof re=="string"?re.charCodeAt(0):re,we=An(ie);J!==we&&(J=we,Ao(L,we,w[O]))})}else if(rn(b.PATTERN))if(b.PATTERN.unicode)D=!1,e.ensureOptimizations&&Ho(`${ga} Unable to analyze < ${b.PATTERN.toString()} > pattern.
|
|
23
|
-
The regexp unicode flag is not currently supported by the regexp-to-ast library.
|
|
24
|
-
This will disable the lexer's first char optimizations.
|
|
25
|
-
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{const J=Zg(b.PATTERN,e.ensureOptimizations);oe(J)&&(D=!1),j(J,re=>{Ao(L,re,w[O])})}else e.ensureOptimizations&&Ho(`${ga} TokenType: <${b.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
|
|
26
|
-
This will disable the lexer's first char optimizations.
|
|
27
|
-
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),D=!1;return L},[])}),{emptyGroups:C,patternIdxToConfig:w,charCodeToPatternIdxToConfig:N,hasCustom:i,canBeOptimized:D}}function ry(t,e){let n=[];const r=sy(t);n=n.concat(r.errors);const i=ay(r.valid),s=i.valid;return n=n.concat(i.errors),n=n.concat(iy(s)),n=n.concat(py(s)),n=n.concat(my(s,e)),n=n.concat(gy(s)),n}function iy(t){let e=[];const n=pt(t,r=>rn(r[Yn]));return e=e.concat(cy(n)),e=e.concat(dy(n)),e=e.concat(fy(n)),e=e.concat(hy(n)),e=e.concat(ly(n)),e}function sy(t){const e=pt(t,i=>!B(i,Yn)),n=M(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Ae.MISSING_PATTERN,tokenTypes:[i]})),r=Ua(t,e);return{errors:n,valid:r}}function ay(t){const e=pt(t,i=>{const s=i[Yn];return!rn(s)&&!Qn(s)&&!B(s,"exec")&&!it(s)}),n=M(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Ae.INVALID_PATTERN,tokenTypes:[i]})),r=Ua(t,e);return{errors:n,valid:r}}const oy=/[^\\][$]/;function cy(t){class e extends Wa{constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}const n=pt(t,i=>{const s=i.PATTERN;try{const a=Ha(s),o=new e;return o.visit(a),o.found}catch{return oy.test(s.source)}});return M(n,i=>({message:`Unexpected RegExp Anchor Error:
|
|
28
|
-
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
|
|
29
|
-
See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Ae.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function ly(t){const e=pt(t,r=>r.PATTERN.test(""));return M(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' must not match an empty string",type:Ae.EMPTY_MATCH_PATTERN,tokenTypes:[r]}))}const uy=/[^\\[][\^]|^\^/;function dy(t){class e extends Wa{constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}const n=pt(t,i=>{const s=i.PATTERN;try{const a=Ha(s),o=new e;return o.visit(a),o.found}catch{return uy.test(s.source)}});return M(n,i=>({message:`Unexpected RegExp Anchor Error:
|
|
30
|
-
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
|
|
31
|
-
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Ae.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function fy(t){const e=pt(t,r=>{const i=r[Yn];return i instanceof RegExp&&(i.multiline||i.global)});return M(e,r=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Ae.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[r]}))}function hy(t){const e=[];let n=M(t,s=>Qe(t,(a,o)=>(s.PATTERN.source===o.PATTERN.source&&!tt(e,o)&&o.PATTERN!==rt.NA&&(e.push(o),a.push(o)),a),[]));n=cs(n);const r=pt(n,s=>s.length>1);return M(r,s=>{const a=M(s,c=>c.name);return{message:`The same RegExp pattern ->${$t(s).PATTERN}<-has been used in all of the following Token Types: ${a.join(", ")} <-`,type:Ae.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}function py(t){const e=pt(t,r=>{if(!B(r,"GROUP"))return!1;const i=r.GROUP;return i!==rt.SKIPPED&&i!==rt.NA&&!it(i)});return M(e,r=>({message:"Token Type: ->"+r.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Ae.INVALID_GROUP_TYPE_FOUND,tokenTypes:[r]}))}function my(t,e){const n=pt(t,i=>i.PUSH_MODE!==void 0&&!tt(e,i.PUSH_MODE));return M(n,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:Ae.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function gy(t){const e=[],n=Qe(t,(r,i,s)=>{const a=i.PATTERN;return a===rt.NA||(it(a)?r.push({str:a,idx:s,tokenType:i}):rn(a)&&Ty(a)&&r.push({str:a.source,idx:s,tokenType:i})),r},[]);return j(t,(r,i)=>{j(n,({str:s,idx:a,tokenType:o})=>{if(i<a&&yy(s,r.PATTERN)){const c=`Token: ->${o.name}<- can never be matched.
|
|
32
|
-
Because it appears AFTER the Token Type ->${r.name}<-in the lexer's definition.
|
|
33
|
-
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:c,type:Ae.UNREACHABLE_PATTERN,tokenTypes:[r,o]})}})}),e}function yy(t,e){if(rn(e)){if(Ry(e))return!1;const n=e.exec(t);return n!==null&&n.index===0}else{if(Qn(e))return e(t,0,[],{});if(B(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function Ty(t){return Vr([".","\\","[","]","|","^","$","(",")","?","*","+","{"],n=>t.source.indexOf(n)!==-1)===void 0}function Ry(t){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(t.source)}function Su(t){const e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function vy(t,e,n){const r=[];return B(t,Fi)||r.push({message:"A MultiMode Lexer cannot be initialized without a <"+Fi+`> property in its definition
|
|
34
|
-
`,type:Ae.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),B(t,js)||r.push({message:"A MultiMode Lexer cannot be initialized without a <"+js+`> property in its definition
|
|
35
|
-
`,type:Ae.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),B(t,js)&&B(t,Fi)&&!B(t.modes,t.defaultMode)&&r.push({message:`A MultiMode Lexer cannot be initialized with a ${Fi}: <${t.defaultMode}>which does not exist
|
|
36
|
-
`,type:Ae.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),B(t,js)&&j(t.modes,(i,s)=>{j(i,(a,o)=>{if(nn(a))r.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${s}> at index: <${o}>
|
|
37
|
-
`,type:Ae.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(B(a,"LONGER_ALT")){const c=ze(a.LONGER_ALT)?a.LONGER_ALT:[a.LONGER_ALT];j(c,l=>{!nn(l)&&!tt(i,l)&&r.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${l.name}> on token <${a.name}> outside of mode <${s}>
|
|
38
|
-
`,type:Ae.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),r}function Ey(t,e,n){const r=[];let i=!1;const s=cs(vt(Oe(t.modes))),a=ja(s,c=>c[Yn]===rt.NA),o=Th(n);return e&&j(a,c=>{const l=yh(c,o);if(l!==!1){const h={message:ky(c,l),type:l.issue,tokenType:c};r.push(h)}else B(c,"LINE_BREAKS")?c.LINE_BREAKS===!0&&(i=!0):Ul(o,c.PATTERN)&&(i=!0)}),e&&!i&&r.push({message:`Warning: No LINE_BREAKS Found.
|
|
39
|
-
This Lexer has been defined to track line and column information,
|
|
40
|
-
But none of the Token Types can be identified as matching a line terminator.
|
|
41
|
-
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
|
|
42
|
-
for details.`,type:Ae.NO_LINE_BREAKS_FLAGS}),r}function Ay(t){const e={},n=Wr(t);return j(n,r=>{const i=t[r];if(ze(i))e[r]=[];else throw Error("non exhaustive match")}),e}function gh(t){const e=t.PATTERN;if(rn(e))return!1;if(Qn(e))return!0;if(B(e,"exec"))return!0;if(it(e))return!1;throw Error("non exhaustive match")}function Sy(t){return it(t)&&t.length===1?t.charCodeAt(0):!1}const Cy={test:function(t){const e=t.length;for(let n=this.lastIndex;n<e;n++){const r=t.charCodeAt(n);if(r===10)return this.lastIndex=n+1,!0;if(r===13)return t.charCodeAt(n+1)===10?this.lastIndex=n+2:this.lastIndex=n+1,!0}return!1},lastIndex:0};function yh(t,e){if(B(t,"LINE_BREAKS"))return!1;if(rn(t.PATTERN)){try{Ul(e,t.PATTERN)}catch(n){return{issue:Ae.IDENTIFY_TERMINATOR,errMsg:n.message}}return!1}else{if(it(t.PATTERN))return!1;if(gh(t))return{issue:Ae.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function ky(t,e){if(e.issue===Ae.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
|
|
43
|
-
The problem is in the <${t.name}> Token Type
|
|
44
|
-
Root cause: ${e.errMsg}.
|
|
45
|
-
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Ae.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
|
|
46
|
-
The problem is in the <${t.name}> Token Type
|
|
47
|
-
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function Th(t){return M(t,n=>it(n)?n.charCodeAt(0):n)}function Ao(t,e,n){t[e]===void 0?t[e]=[n]:t[e].push(n)}const Gi=256;let ra=[];function An(t){return t<Gi?t:ra[t]}function Ny(){if(oe(ra)){ra=new Array(65536);for(let t=0;t<65536;t++)ra[t]=t>255?255+~~(t/255):t}}function hs(t,e){const n=t.tokenTypeIdx;return n===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[n]===!0}function ya(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}let Cu=1;const Rh={};function ps(t){const e=wy(t);by(e),Iy(e),_y(e),j(e,n=>{n.isParent=n.categoryMatches.length>0})}function wy(t){let e=qe(t),n=t,r=!0;for(;r;){n=cs(vt(M(n,s=>s.CATEGORIES)));const i=Ua(n,e);e=e.concat(i),oe(i)?r=!1:n=i}return e}function by(t){j(t,e=>{Eh(e)||(Rh[Cu]=e,e.tokenTypeIdx=Cu++),ku(e)&&!ze(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),ku(e)||(e.CATEGORIES=[]),$y(e)||(e.categoryMatches=[]),Py(e)||(e.categoryMatchesMap={})})}function _y(t){j(t,e=>{e.categoryMatches=[],j(e.categoryMatchesMap,(n,r)=>{e.categoryMatches.push(Rh[r].tokenTypeIdx)})})}function Iy(t){j(t,e=>{vh([],e)})}function vh(t,e){j(t,n=>{e.categoryMatchesMap[n.tokenTypeIdx]=!0}),j(e.CATEGORIES,n=>{const r=t.concat(e);tt(r,n)||vh(r,n)})}function Eh(t){return B(t,"tokenTypeIdx")}function ku(t){return B(t,"CATEGORIES")}function $y(t){return B(t,"categoryMatches")}function Py(t){return B(t,"categoryMatchesMap")}function Ly(t){return B(t,"tokenTypeIdx")}const Jo={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,n,r,i,s){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${n} characters.`}};var Ae;(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Ae||(Ae={}));const Ui={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
|
|
48
|
-
`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:Jo,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Ui);class rt{constructor(e,n=Ui){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,s)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;const a=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${a}--> <${i}>`);const{time:o,value:c}=fh(s),l=o>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&l(`${a}<-- <${i}> time: ${o}ms`),this.traceInitIndent--,c}else return s()},typeof n=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
|
|
49
|
-
a boolean 2nd argument is no longer supported`);this.config=ht({},Ui,n);const r=this.config.traceInitPerf;r===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof r=="number"&&(this.traceInitMaxIdent=r,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,s=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Ui.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Cy;else if(this.config.lineTerminatorCharacters===Ui.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
|
|
50
|
-
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(n.safeMode&&n.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),ze(e)?i={modes:{defaultMode:qe(e)},defaultMode:Fi}:(s=!1,i=qe(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(vy(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(Ey(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},j(i.modes,(o,c)=>{i.modes[c]=ja(o,l=>nn(l))});const a=Wr(i.modes);if(j(i.modes,(o,c)=>{this.TRACE_INIT(`Mode: <${c}> processing`,()=>{if(this.modes.push(c),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(ry(o,a))}),oe(this.lexerDefinitionErrors)){ps(o);let l;this.TRACE_INIT("analyzeTokenTypes",()=>{l=ny(o,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:n.positionTracking,ensureOptimizations:n.ensureOptimizations,safeMode:n.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[c]=l.patternIdxToConfig,this.charCodeToPatternIdxToConfig[c]=l.charCodeToPatternIdxToConfig,this.emptyGroups=ht({},this.emptyGroups,l.emptyGroups),this.hasCustom=l.hasCustom||this.hasCustom,this.canModeBeOptimized[c]=l.canBeOptimized}})}),this.defaultMode=i.defaultMode,!oe(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){const c=M(this.lexerDefinitionErrors,l=>l.message).join(`-----------------------
|
|
51
|
-
`);throw new Error(`Errors detected in definition of Lexer:
|
|
52
|
-
`+c)}j(this.lexerDefinitionWarning,o=>{dh(o.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(s&&(this.handleModes=Fe),this.trackStartLines===!1&&(this.computeNewColumn=om),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=Fe),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{const o=Qe(this.canModeBeOptimized,(c,l,d)=>(l===!1&&c.push(d),c),[]);if(n.ensureOptimizations&&!oe(o))throw Error(`Lexer Modes: < ${o.join(", ")} > cannot be optimized.
|
|
53
|
-
Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
|
|
54
|
-
Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{Qg()}),this.TRACE_INIT("toFastProperties",()=>{hh(this)})})}tokenize(e,n=this.defaultMode){if(!oe(this.lexerDefinitionErrors)){const i=M(this.lexerDefinitionErrors,s=>s.message).join(`-----------------------
|
|
55
|
-
`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
|
|
56
|
-
`+i)}return this.tokenizeInternal(e,n)}tokenizeInternal(e,n){let r,i,s,a,o,c,l,d,h,p,g,C,w,D,N;const L=e,b=L.length;let O=0,J=0;const re=this.hasCustom?0:Math.floor(e.length/10),ie=new Array(re),we=[];let $e=this.trackStartLines?1:void 0,Se=this.trackStartLines?1:void 0;const k=Ay(this.emptyGroups),E=this.trackStartLines,m=this.config.lineTerminatorsPattern;let S=0,y=[],T=[];const v=[],$=[];Object.freeze($);let x=!1;const P=q=>{if(v.length===1&&q.tokenType.PUSH_MODE===void 0){const te=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(q);we.push({offset:q.startOffset,line:q.startLine,column:q.startColumn,length:q.image.length,message:te})}else{v.pop();const te=Wn(v);y=this.patternIdxToConfig[te],T=this.charCodeToPatternIdxToConfig[te],S=y.length;const De=this.canModeBeOptimized[te]&&this.config.safeMode===!1;T&&De?x=!0:x=!1}};function z(q){v.push(q),T=this.charCodeToPatternIdxToConfig[q],y=this.patternIdxToConfig[q],S=y.length,S=y.length;const te=this.canModeBeOptimized[q]&&this.config.safeMode===!1;T&&te?x=!0:x=!1}z.call(this,n);let G;const se=this.config.recoveryEnabled;for(;O<b;){c=null,h=-1;const q=L.charCodeAt(O);let te;if(x){const ye=An(q),de=T[ye];te=de!==void 0?de:$}else te=y;const De=te.length;for(r=0;r<De;r++){G=te[r];const ye=G.pattern;l=null;const de=G.short;if(de!==!1?q===de&&(h=1,c=ye):G.isCustom===!0?(N=ye.exec(L,O,ie,k),N!==null?(c=N[0],h=c.length,N.payload!==void 0&&(l=N.payload)):c=null):(ye.lastIndex=O,h=this.matchLength(ye,e,O)),h!==-1){if(o=G.longerAlt,o!==void 0){c=e.substring(O,O+h);const Pe=o.length;for(s=0;s<Pe;s++){const Me=y[o[s]],be=Me.pattern;if(d=null,Me.isCustom===!0?(N=be.exec(L,O,ie,k),N!==null?(a=N[0],N.payload!==void 0&&(d=N.payload)):a=null):(be.lastIndex=O,a=this.match(be,e,O)),a&&a.length>c.length){c=a,h=a.length,l=d,G=Me;break}}}break}}if(h!==-1){if(p=G.group,p!==void 0&&(c=c!==null?c:e.substring(O,O+h),g=G.tokenTypeIdx,C=this.createTokenInstance(c,O,g,G.tokenType,$e,Se,h),this.handlePayload(C,l),p===!1?J=this.addToken(ie,J,C):k[p].push(C)),E===!0&&G.canLineTerminator===!0){let ye=0,de,Pe;m.lastIndex=0;do c=c!==null?c:e.substring(O,O+h),de=m.test(c),de===!0&&(Pe=m.lastIndex-1,ye++);while(de===!0);ye!==0?($e=$e+ye,Se=h-Pe,this.updateTokenEndLineColumnLocation(C,p,Pe,ye,$e,Se,h)):Se=this.computeNewColumn(Se,h)}else Se=this.computeNewColumn(Se,h);O=O+h,this.handleModes(G,P,z,C)}else{const ye=O,de=$e,Pe=Se;let Me=se===!1;for(;Me===!1&&O<b;)for(O++,i=0;i<S;i++){const be=y[i],Q=be.pattern,ct=be.short;if(ct!==!1?L.charCodeAt(O)===ct&&(Me=!0):be.isCustom===!0?Me=Q.exec(L,O,ie,k)!==null:(Q.lastIndex=O,Me=Q.exec(e)!==null),Me===!0)break}if(w=O-ye,Se=this.computeNewColumn(Se,w),D=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(L,ye,w,de,Pe,Wn(v)),we.push({offset:ye,line:de,column:Pe,length:w,message:D}),se===!1)break}}return this.hasCustom||(ie.length=J),{tokens:ie,groups:k,errors:we}}handleModes(e,n,r,i){if(e.pop===!0){const s=e.push;n(i),s!==void 0&&r.call(this,s)}else e.push!==void 0&&r.call(this,e.push)}updateTokenEndLineColumnLocation(e,n,r,i,s,a,o){let c,l;n!==void 0&&(c=r===o-1,l=c?-1:0,i===1&&c===!0||(e.endLine=s+l,e.endColumn=a-1+-l))}computeNewColumn(e,n){return e+n}createOffsetOnlyToken(e,n,r,i){return{image:e,startOffset:n,tokenTypeIdx:r,tokenType:i}}createStartOnlyToken(e,n,r,i,s,a){return{image:e,startOffset:n,startLine:s,startColumn:a,tokenTypeIdx:r,tokenType:i}}createFullToken(e,n,r,i,s,a,o){return{image:e,startOffset:n,endOffset:n+o-1,startLine:s,endLine:s,startColumn:a,endColumn:a+o-1,tokenTypeIdx:r,tokenType:i}}addTokenUsingPush(e,n,r){return e.push(r),n}addTokenUsingMemberAccess(e,n,r){return e[n]=r,n++,n}handlePayloadNoCustom(e,n){}handlePayloadWithCustom(e,n){n!==null&&(e.payload=n)}match(e,n,r){return e.test(n)===!0?n.substring(r,e.lastIndex):null}matchLength(e,n,r){return e.test(n)===!0?e.lastIndex-r:-1}}rt.SKIPPED="This marks a skipped Token pattern, this means each token identified by it will be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.";rt.NA=/NOT_APPLICABLE/;function wr(t){return Ah(t)?t.LABEL:t.name}function Ah(t){return it(t.LABEL)&&t.LABEL!==""}const Oy="parent",Nu="categories",wu="label",bu="group",_u="push_mode",Iu="pop_mode",$u="longer_alt",Pu="line_breaks",Lu="start_chars_hint";function Sh(t){return xy(t)}function xy(t){const e=t.pattern,n={};if(n.name=t.name,nn(e)||(n.PATTERN=e),B(t,Oy))throw`The parent property is no longer supported.
|
|
57
|
-
See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return B(t,Nu)&&(n.CATEGORIES=t[Nu]),ps([n]),B(t,wu)&&(n.LABEL=t[wu]),B(t,bu)&&(n.GROUP=t[bu]),B(t,Iu)&&(n.POP_MODE=t[Iu]),B(t,_u)&&(n.PUSH_MODE=t[_u]),B(t,$u)&&(n.LONGER_ALT=t[$u]),B(t,Pu)&&(n.LINE_BREAKS=t[Pu]),B(t,Lu)&&(n.START_CHARS_HINT=t[Lu]),n}const Sn=Sh({name:"EOF",pattern:rt.NA});ps([Sn]);function jl(t,e,n,r,i,s,a,o){return{image:e,startOffset:n,endOffset:r,startLine:i,endLine:s,startColumn:a,endColumn:o,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}function Ch(t,e){return hs(t,e)}const kr={buildMismatchTokenMessage({expected:t,actual:e,previous:n,ruleName:r}){return`Expecting ${Ah(t)?`--> ${wr(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:n,customUserDescription:r,ruleName:i}){const s="Expecting: ",o=`
|
|
58
|
-
but found: '`+$t(e).image+"'";if(r)return s+r+o;{const c=Qe(t,(p,g)=>p.concat(g),[]),l=M(c,p=>`[${M(p,g=>wr(g)).join(", ")}]`),h=`one of these possible Token sequences:
|
|
59
|
-
${M(l,(p,g)=>` ${g+1}. ${p}`).join(`
|
|
60
|
-
`)}`;return s+h+o}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:n,ruleName:r}){const i="Expecting: ",a=`
|
|
61
|
-
but found: '`+$t(e).image+"'";if(n)return i+n+a;{const c=`expecting at least one iteration which starts with one of these possible Token sequences::
|
|
62
|
-
<${M(t,l=>`[${M(l,d=>wr(d)).join(",")}]`).join(" ,")}>`;return i+c+a}}};Object.freeze(kr);const Dy={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
|
|
63
|
-
inside top level rule: ->`+t.name+"<-"}},Bn={buildDuplicateFoundError(t,e){function n(d){return d instanceof ue?d.terminalType.name:d instanceof Ze?d.nonTerminalName:""}const r=t.name,i=$t(e),s=i.idx,a=Mt(i),o=n(i),c=s>0;let l=`->${a}${c?s:""}<- ${o?`with argument: ->${o}<-`:""}
|
|
64
|
-
appears more than once (${e.length} times) in the top level rule: ->${r}<-.
|
|
65
|
-
For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
|
|
66
|
-
`;return l=l.replace(/[ \t]+/g," "),l=l.replace(/\s\s+/g,`
|
|
67
|
-
`),l},buildNamespaceConflictError(t){return`Namespace conflict found in grammar.
|
|
68
|
-
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>.
|
|
69
|
-
To resolve this make sure each Terminal and Non-Terminal names are unique
|
|
70
|
-
This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
|
|
71
|
-
and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){const e=M(t.prefixPath,i=>wr(i)).join(", "),n=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix
|
|
72
|
-
in <OR${n}> inside <${t.topLevelRule.name}> Rule,
|
|
73
|
-
<${e}> may appears as a prefix path in all these alternatives.
|
|
74
|
-
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
|
|
75
|
-
For Further details.`},buildAlternationAmbiguityError(t){const e=t.alternation.idx===0?"":t.alternation.idx,n=t.prefixPath.length===0;let r=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in <OR${e}> inside <${t.topLevelRule.name}> Rule,
|
|
76
|
-
`;if(n)r+=`These alternatives are all empty (match no tokens), making them indistinguishable.
|
|
77
|
-
Only the last alternative may be empty.
|
|
78
|
-
`;else{const i=M(t.prefixPath,s=>wr(s)).join(", ");r+=`<${i}> may appears as a prefix path in all these alternatives.
|
|
79
|
-
`}return r+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
|
80
|
-
For Further details.`,r},buildEmptyRepetitionError(t){let e=Mt(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens.
|
|
81
|
-
This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
|
|
82
|
-
Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives:
|
|
83
|
-
<OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
|
|
84
|
-
has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){const e=t.topLevelRule.name,n=M(t.leftRecursionPath,s=>s.name),r=`${e} --> ${n.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
|
|
85
|
-
rule: <${e}> can be invoked from itself (directly or indirectly)
|
|
86
|
-
without consuming any Tokens. The grammar path that causes this is:
|
|
87
|
-
${r}
|
|
88
|
-
To fix this refactor your grammar to remove the left recursion.
|
|
89
|
-
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof di?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function My(t,e){const n=new Fy(t,e);return n.resolveRefs(),n.errors}class Fy extends fi{constructor(e,n){super(),this.nameToTopRule=e,this.errMsgProvider=n,this.errors=[]}resolveRefs(){j(Oe(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){const n=this.nameToTopRule[e.nonTerminalName];if(n)e.referencedRule=n;else{const r=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:r,type:et.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}class Gy extends Ka{constructor(e,n){super(),this.topProd=e,this.path=n,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=qe(this.path.ruleStack).reverse(),this.occurrenceStack=qe(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,n=[]){this.found||super.walk(e,n)}walkProdRef(e,n,r){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){const i=n.concat(r);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){oe(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}}class Uy extends Gy{constructor(e,n){super(e,n),this.path=n,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,n,r){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){const i=n.concat(r),s=new st({definition:i});this.possibleTokTypes=fs(s),this.found=!0}}}class Ya extends Ka{constructor(e,n){super(),this.topRule=e,this.occurrence=n,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}}class jy extends Ya{walkMany(e,n,r){if(e.idx===this.occurrence){const i=$t(n.concat(r));this.result.isEndOfRule=i===void 0,i instanceof ue&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,n,r)}}class Ou extends Ya{walkManySep(e,n,r){if(e.idx===this.occurrence){const i=$t(n.concat(r));this.result.isEndOfRule=i===void 0,i instanceof ue&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,n,r)}}class zy extends Ya{walkAtLeastOne(e,n,r){if(e.idx===this.occurrence){const i=$t(n.concat(r));this.result.isEndOfRule=i===void 0,i instanceof ue&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,n,r)}}class xu extends Ya{walkAtLeastOneSep(e,n,r){if(e.idx===this.occurrence){const i=$t(n.concat(r));this.result.isEndOfRule=i===void 0,i instanceof ue&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,n,r)}}function Qo(t,e,n=[]){n=qe(n);let r=[],i=0;function s(o){return o.concat(Ge(t,i+1))}function a(o){const c=Qo(s(o),e,n);return r.concat(c)}for(;n.length<e&&i<t.length;){const o=t[i];if(o instanceof st)return a(o.definition);if(o instanceof Ze)return a(o.definition);if(o instanceof Be)r=a(o.definition);else if(o instanceof mt){const c=o.definition.concat([new Ee({definition:o.definition})]);return a(c)}else if(o instanceof gt){const c=[new st({definition:o.definition}),new Ee({definition:[new ue({terminalType:o.separator})].concat(o.definition)})];return a(c)}else if(o instanceof at){const c=o.definition.concat([new Ee({definition:[new ue({terminalType:o.separator})].concat(o.definition)})]);r=a(c)}else if(o instanceof Ee){const c=o.definition.concat([new Ee({definition:o.definition})]);r=a(c)}else{if(o instanceof ot)return j(o.definition,c=>{oe(c.definition)===!1&&(r=a(c.definition))}),r;if(o instanceof ue)n.push(o.terminalType);else throw Error("non exhaustive match")}i++}return r.push({partialPath:n,suffixDef:Ge(t,i)}),r}function kh(t,e,n,r){const i="EXIT_NONE_TERMINAL",s=[i],a="EXIT_ALTERNATIVE";let o=!1;const c=e.length,l=c-r-1,d=[],h=[];for(h.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!oe(h);){const p=h.pop();if(p===a){o&&Wn(h).idx<=l&&h.pop();continue}const g=p.def,C=p.idx,w=p.ruleStack,D=p.occurrenceStack;if(oe(g))continue;const N=g[0];if(N===i){const L={idx:C,def:Ge(g),ruleStack:Vi(w),occurrenceStack:Vi(D)};h.push(L)}else if(N instanceof ue)if(C<c-1){const L=C+1,b=e[L];if(n(b,N.terminalType)){const O={idx:L,def:Ge(g),ruleStack:w,occurrenceStack:D};h.push(O)}}else if(C===c-1)d.push({nextTokenType:N.terminalType,nextTokenOccurrence:N.idx,ruleStack:w,occurrenceStack:D}),o=!0;else throw Error("non exhaustive match");else if(N instanceof Ze){const L=qe(w);L.push(N.nonTerminalName);const b=qe(D);b.push(N.idx);const O={idx:C,def:N.definition.concat(s,Ge(g)),ruleStack:L,occurrenceStack:b};h.push(O)}else if(N instanceof Be){const L={idx:C,def:Ge(g),ruleStack:w,occurrenceStack:D};h.push(L),h.push(a);const b={idx:C,def:N.definition.concat(Ge(g)),ruleStack:w,occurrenceStack:D};h.push(b)}else if(N instanceof mt){const L=new Ee({definition:N.definition,idx:N.idx}),b=N.definition.concat([L],Ge(g)),O={idx:C,def:b,ruleStack:w,occurrenceStack:D};h.push(O)}else if(N instanceof gt){const L=new ue({terminalType:N.separator}),b=new Ee({definition:[L].concat(N.definition),idx:N.idx}),O=N.definition.concat([b],Ge(g)),J={idx:C,def:O,ruleStack:w,occurrenceStack:D};h.push(J)}else if(N instanceof at){const L={idx:C,def:Ge(g),ruleStack:w,occurrenceStack:D};h.push(L),h.push(a);const b=new ue({terminalType:N.separator}),O=new Ee({definition:[b].concat(N.definition),idx:N.idx}),J=N.definition.concat([O],Ge(g)),re={idx:C,def:J,ruleStack:w,occurrenceStack:D};h.push(re)}else if(N instanceof Ee){const L={idx:C,def:Ge(g),ruleStack:w,occurrenceStack:D};h.push(L),h.push(a);const b=new Ee({definition:N.definition,idx:N.idx}),O=N.definition.concat([b],Ge(g)),J={idx:C,def:O,ruleStack:w,occurrenceStack:D};h.push(J)}else if(N instanceof ot)for(let L=N.definition.length-1;L>=0;L--){const b=N.definition[L],O={idx:C,def:b.definition.concat(Ge(g)),ruleStack:w,occurrenceStack:D};h.push(O),h.push(a)}else if(N instanceof st)h.push({idx:C,def:N.definition.concat(Ge(g)),ruleStack:w,occurrenceStack:D});else if(N instanceof di)h.push(By(N,C,w,D));else throw Error("non exhaustive match")}return d}function By(t,e,n,r){const i=qe(n);i.push(t.name);const s=qe(r);return s.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:s}}var pe;(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(pe||(pe={}));function zl(t){if(t instanceof Be||t==="Option")return pe.OPTION;if(t instanceof Ee||t==="Repetition")return pe.REPETITION;if(t instanceof mt||t==="RepetitionMandatory")return pe.REPETITION_MANDATORY;if(t instanceof gt||t==="RepetitionMandatoryWithSeparator")return pe.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof at||t==="RepetitionWithSeparator")return pe.REPETITION_WITH_SEPARATOR;if(t instanceof ot||t==="Alternation")return pe.ALTERNATION;throw Error("non exhaustive match")}function Du(t){const{occurrence:e,rule:n,prodType:r,maxLookahead:i}=t,s=zl(r);return s===pe.ALTERNATION?Xa(e,n,i):Ja(e,n,s,i)}function qy(t,e,n,r,i,s){const a=Xa(t,e,n),o=bh(a)?ya:hs;return s(a,r,o,i)}function Wy(t,e,n,r,i,s){const a=Ja(t,e,i,n),o=bh(a)?ya:hs;return s(a[0],o,r)}function Vy(t,e,n,r){const i=t.length,s=_t(t,a=>_t(a,o=>o.length===1));if(e)return function(a){const o=M(a,c=>c.GATE);for(let c=0;c<i;c++){const l=t[c],d=l.length,h=o[c];if(!(h!==void 0&&h.call(this)===!1))e:for(let p=0;p<d;p++){const g=l[p],C=g.length;for(let w=0;w<C;w++){const D=this.LA(w+1);if(n(D,g[w])===!1)continue e}return c}}};if(s&&!r){const a=M(t,c=>vt(c)),o=Qe(a,(c,l,d)=>(j(l,h=>{B(c,h.tokenTypeIdx)||(c[h.tokenTypeIdx]=d),j(h.categoryMatches,p=>{B(c,p)||(c[p]=d)})}),c),{});return function(){const c=this.LA(1);return o[c.tokenTypeIdx]}}else return function(){for(let a=0;a<i;a++){const o=t[a],c=o.length;e:for(let l=0;l<c;l++){const d=o[l],h=d.length;for(let p=0;p<h;p++){const g=this.LA(p+1);if(n(g,d[p])===!1)continue e}return a}}}}function Ky(t,e,n){const r=_t(t,s=>s.length===1),i=t.length;if(r&&!n){const s=vt(t);if(s.length===1&&oe(s[0].categoryMatches)){const o=s[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===o}}else{const a=Qe(s,(o,c,l)=>(o[c.tokenTypeIdx]=!0,j(c.categoryMatches,d=>{o[d]=!0}),o),[]);return function(){const o=this.LA(1);return a[o.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;s<i;s++){const a=t[s],o=a.length;for(let c=0;c<o;c++){const l=this.LA(c+1);if(e(l,a[c])===!1)continue e}return!0}return!1}}class Hy extends Ka{constructor(e,n,r){super(),this.topProd=e,this.targetOccurrence=n,this.targetProdType=r}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,n,r,i){return e.idx===this.targetOccurrence&&this.targetProdType===n?(this.restDef=r.concat(i),!0):!1}walkOption(e,n,r){this.checkIsTarget(e,pe.OPTION,n,r)||super.walkOption(e,n,r)}walkAtLeastOne(e,n,r){this.checkIsTarget(e,pe.REPETITION_MANDATORY,n,r)||super.walkOption(e,n,r)}walkAtLeastOneSep(e,n,r){this.checkIsTarget(e,pe.REPETITION_MANDATORY_WITH_SEPARATOR,n,r)||super.walkOption(e,n,r)}walkMany(e,n,r){this.checkIsTarget(e,pe.REPETITION,n,r)||super.walkOption(e,n,r)}walkManySep(e,n,r){this.checkIsTarget(e,pe.REPETITION_WITH_SEPARATOR,n,r)||super.walkOption(e,n,r)}}class Nh extends fi{constructor(e,n,r){super(),this.targetOccurrence=e,this.targetProdType=n,this.targetRef=r,this.result=[]}checkIsTarget(e,n){e.idx===this.targetOccurrence&&this.targetProdType===n&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,pe.OPTION)}visitRepetition(e){this.checkIsTarget(e,pe.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,pe.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,pe.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,pe.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,pe.ALTERNATION)}}function Mu(t){const e=new Array(t);for(let n=0;n<t;n++)e[n]=[];return e}function So(t){let e=[""];for(let n=0;n<t.length;n++){const r=t[n],i=[];for(let s=0;s<e.length;s++){const a=e[s];i.push(a+"_"+r.tokenTypeIdx);for(let o=0;o<r.categoryMatches.length;o++){const c="_"+r.categoryMatches[o];i.push(a+c)}}e=i}return e}function Yy(t,e,n){for(let r=0;r<t.length;r++){if(r===n)continue;const i=t[r];for(let s=0;s<e.length;s++){const a=e[s];if(i[a]===!0)return!1}}return!0}function wh(t,e){const n=M(t,a=>Qo([a],1)),r=Mu(n.length),i=M(n,a=>{const o={};return j(a,c=>{const l=So(c.partialPath);j(l,d=>{o[d]=!0})}),o});let s=n;for(let a=1;a<=e;a++){const o=s;s=Mu(o.length);for(let c=0;c<o.length;c++){const l=o[c];for(let d=0;d<l.length;d++){const h=l[d].partialPath,p=l[d].suffixDef,g=So(h);if(Yy(i,g,c)||oe(p)||h.length===e){const w=r[c];if(Zo(w,h)===!1){w.push(h);for(let D=0;D<g.length;D++){const N=g[D];i[c][N]=!0}}}else{const w=Qo(p,a+1,h);s[c]=s[c].concat(w),j(w,D=>{const N=So(D.partialPath);j(N,L=>{i[c][L]=!0})})}}}}return r}function Xa(t,e,n,r){const i=new Nh(t,pe.ALTERNATION,r);return e.accept(i),wh(i.result,n)}function Ja(t,e,n,r){const i=new Nh(t,n);e.accept(i);const s=i.result,o=new Hy(e,t,n).startWalking(),c=new st({definition:s}),l=new st({definition:o});return wh([c,l],r)}function Zo(t,e){e:for(let n=0;n<t.length;n++){const r=t[n];if(r.length===e.length){for(let i=0;i<r.length;i++){const s=e[i],a=r[i];if((s===a||a.categoryMatchesMap[s.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}function Xy(t,e){return t.length<e.length&&_t(t,(n,r)=>{const i=e[r];return n===i||i.categoryMatchesMap[n.tokenTypeIdx]})}function bh(t){return _t(t,e=>_t(e,n=>_t(n,r=>oe(r.categoryMatches))))}function Jy(t){const e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return M(e,n=>Object.assign({type:et.CUSTOM_LOOKAHEAD_VALIDATION},n))}function Qy(t,e,n,r){const i=ft(t,c=>Zy(c,n)),s=dT(t,e,n),a=ft(t,c=>oT(c,n)),o=ft(t,c=>nT(c,t,r,n));return i.concat(s,a,o)}function Zy(t,e){const n=new tT;t.accept(n);const r=n.allProductions,i=$m(r,eT),s=Pt(i,o=>o.length>1);return M(Oe(s),o=>{const c=$t(o),l=e.buildDuplicateFoundError(t,o),d=Mt(c),h={message:l,type:et.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:d,occurrence:c.idx},p=_h(c);return p&&(h.parameter=p),h})}function eT(t){return`${Mt(t)}_#_${t.idx}_#_${_h(t)}`}function _h(t){return t instanceof ue?t.terminalType.name:t instanceof Ze?t.nonTerminalName:""}class tT extends fi{constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}}function nT(t,e,n,r){const i=[];if(Qe(e,(a,o)=>o.name===t.name?a+1:a,0)>1){const a=r.buildDuplicateRuleNameError({topLevelRule:t,grammarName:n});i.push({message:a,type:et.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function rT(t,e,n){const r=[];let i;return tt(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${n}<-as it is not defined in any of the super grammars `,r.push({message:i,type:et.INVALID_RULE_OVERRIDE,ruleName:t})),r}function Ih(t,e,n,r=[]){const i=[],s=ia(e.definition);if(oe(s))return[];{const a=t.name;tt(s,t)&&i.push({message:n.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:r}),type:et.LEFT_RECURSION,ruleName:a});const c=Ua(s,r.concat([t])),l=ft(c,d=>{const h=qe(r);return h.push(d),Ih(t,d,n,h)});return i.concat(l)}}function ia(t){let e=[];if(oe(t))return e;const n=$t(t);if(n instanceof Ze)e.push(n.referencedRule);else if(n instanceof st||n instanceof Be||n instanceof mt||n instanceof gt||n instanceof at||n instanceof Ee)e=e.concat(ia(n.definition));else if(n instanceof ot)e=vt(M(n.definition,s=>ia(s.definition)));else if(!(n instanceof ue))throw Error("non exhaustive match");const r=ma(n),i=t.length>1;if(r&&i){const s=Ge(t);return e.concat(ia(s))}else return e}class Bl extends fi{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}}function iT(t,e){const n=new Bl;t.accept(n);const r=n.alternations;return ft(r,s=>{const a=Vi(s.definition);return ft(a,(o,c)=>{const l=kh([o],[],hs,1);return oe(l)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:s,emptyChoiceIdx:c}),type:et.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:s.idx,alternative:c+1}]:[]})})}function sT(t,e,n){const r=new Bl;t.accept(r);let i=r.alternations;return i=ja(i,a=>a.ignoreAmbiguities===!0),ft(i,a=>{const o=a.idx,c=a.maxLookahead||e,l=Xa(o,t,c,a),d=lT(l,a,t,n),h=uT(l,a,t,n);return d.concat(h)})}class aT extends fi{constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}}function oT(t,e){const n=new Bl;t.accept(n);const r=n.alternations;return ft(r,s=>s.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:s}),type:et.TOO_MANY_ALTS,ruleName:t.name,occurrence:s.idx}]:[])}function cT(t,e,n){const r=[];return j(t,i=>{const s=new aT;i.accept(s);const a=s.allProductions;j(a,o=>{const c=zl(o),l=o.maxLookahead||e,d=o.idx,p=Ja(d,i,c,l)[0];if(oe(vt(p))){const g=n.buildEmptyRepetitionError({topLevelRule:i,repetition:o});r.push({message:g,type:et.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),r}function lT(t,e,n,r){const i=[],s=Qe(t,(o,c,l)=>(e.definition[l].ignoreAmbiguities===!0||j(c,d=>{const h=[l];j(t,(p,g)=>{l!==g&&Zo(p,d)&&e.definition[g].ignoreAmbiguities!==!0&&h.push(g)}),h.length>1&&!Zo(i,d)&&(i.push(d),o.push({alts:h,path:d}))}),o),[]);return M(s,o=>{const c=M(o.alts,d=>d+1);return{message:r.buildAlternationAmbiguityError({topLevelRule:n,alternation:e,ambiguityIndices:c,prefixPath:o.path}),type:et.AMBIGUOUS_ALTS,ruleName:n.name,occurrence:e.idx,alternatives:o.alts}})}function uT(t,e,n,r){const i=Qe(t,(a,o,c)=>{const l=M(o,d=>({idx:c,path:d}));return a.concat(l)},[]);return cs(ft(i,a=>{if(e.definition[a.idx].ignoreAmbiguities===!0)return[];const c=a.idx,l=a.path,d=pt(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx<c&&Xy(p.path,l));return M(d,p=>{const g=[p.idx+1,c+1],C=e.idx===0?"":e.idx;return{message:r.buildAlternationPrefixAmbiguityError({topLevelRule:n,alternation:e,ambiguityIndices:g,prefixPath:p.path}),type:et.AMBIGUOUS_PREFIX_ALTS,ruleName:n.name,occurrence:C,alternatives:g}})}))}function dT(t,e,n){const r=[],i=M(e,s=>s.name);return j(t,s=>{const a=s.name;if(tt(i,a)){const o=n.buildNamespaceConflictError(s);r.push({message:o,type:et.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:a})}}),r}function fT(t){const e=Pl(t,{errMsgProvider:Dy}),n={};return j(t.rules,r=>{n[r.name]=r}),My(n,e.errMsgProvider)}function hT(t){return t=Pl(t,{errMsgProvider:Bn}),Qy(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}const $h="MismatchedTokenException",Ph="NoViableAltException",Lh="EarlyExitException",Oh="NotAllInputParsedException",xh=[$h,Ph,Lh,Oh];Object.freeze(xh);function Ta(t){return tt(xh,t.name)}class Qa extends Error{constructor(e,n){super(e),this.token=n,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}class Dh extends Qa{constructor(e,n,r){super(e,n),this.previousToken=r,this.name=$h}}class pT extends Qa{constructor(e,n,r){super(e,n),this.previousToken=r,this.name=Ph}}class mT extends Qa{constructor(e,n){super(e,n),this.name=Oh}}class gT extends Qa{constructor(e,n,r){super(e,n),this.previousToken=r,this.name=Lh}}const Co={},Mh="InRuleRecoveryException";class yT extends Error{constructor(e){super(e),this.name=Mh}}class TT{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=B(e,"recoveryEnabled")?e.recoveryEnabled:sn.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=RT)}getTokenToInsert(e){const n=jl(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return n.isInsertedInRecovery=!0,n}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,n,r,i){const s=this.findReSyncTokenType(),a=this.exportLexerState(),o=[];let c=!1;const l=this.LA(1);let d=this.LA(1);const h=()=>{const p=this.LA(0),g=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:l,previous:p,ruleName:this.getCurrRuleFullName()}),C=new Dh(g,l,this.LA(0));C.resyncedTokens=Vi(o),this.SAVE_ERROR(C)};for(;!c;)if(this.tokenMatcher(d,i)){h();return}else if(r.call(this)){h(),e.apply(this,n);return}else this.tokenMatcher(d,s)?c=!0:(d=this.SKIP_TOKEN(),this.addToResyncTokens(d,o));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,n,r){return!(r===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,n)))}getFollowsForInRuleRecovery(e,n){const r=this.getCurrentGrammarPath(e,n);return this.getNextPossibleTokenTypes(r)}tryInRuleRecovery(e,n){if(this.canRecoverWithSingleTokenInsertion(e,n))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){const r=this.SKIP_TOKEN();return this.consumeToken(),r}throw new yT("sad sad panda")}canPerformInRuleRecovery(e,n){return this.canRecoverWithSingleTokenInsertion(e,n)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,n){if(!this.canTokenTypeBeInsertedInRecovery(e)||oe(n))return!1;const r=this.LA(1);return Vr(n,s=>this.tokenMatcher(r,s))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){const n=this.getCurrFollowKey(),r=this.getFollowSetFromFollowKey(n);return tt(r,e)}findReSyncTokenType(){const e=this.flattenFollowSet();let n=this.LA(1),r=2;for(;;){const i=Vr(e,s=>Ch(n,s));if(i!==void 0)return i;n=this.LA(r),r++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return Co;const e=this.getLastExplicitRuleShortName(),n=this.getLastExplicitRuleOccurrenceIndex(),r=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:n,inRule:this.shortRuleNameToFullName(r)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,n=this.RULE_OCCURRENCE_STACK;return M(e,(r,i)=>i===0?Co:{ruleName:this.shortRuleNameToFullName(r),idxInCallingRule:n[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){const e=M(this.buildFullFollowKeyStack(),n=>this.getFollowSetFromFollowKey(n));return vt(e)}getFollowSetFromFollowKey(e){if(e===Co)return[Sn];const n=e.ruleName+e.idxInCallingRule+ph+e.inRule;return this.resyncFollows[n]}addToResyncTokens(e,n){return this.tokenMatcher(e,Sn)||n.push(e),n}reSyncTo(e){const n=[];let r=this.LA(1);for(;this.tokenMatcher(r,e)===!1;)r=this.SKIP_TOKEN(),this.addToResyncTokens(r,n);return Vi(n)}attemptInRepetitionRecovery(e,n,r,i,s,a,o){}getCurrentGrammarPath(e,n){const r=this.getHumanReadableRuleStack(),i=qe(this.RULE_OCCURRENCE_STACK);return{ruleStack:r,occurrenceStack:i,lastTok:e,lastTokOccurrence:n}}getHumanReadableRuleStack(){return M(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}}function RT(t,e,n,r,i,s,a){const o=this.getKeyForAutomaticLookahead(r,i);let c=this.firstAfterRepMap[o];if(c===void 0){const p=this.getCurrRuleFullName(),g=this.getGAstProductions()[p];c=new s(g,i).startWalking(),this.firstAfterRepMap[o]=c}let l=c.token,d=c.occurrence;const h=c.isEndOfRule;this.RULE_STACK.length===1&&h&&l===void 0&&(l=Sn,d=1),!(l===void 0||d===void 0)&&this.shouldInRepetitionRecoveryBeTried(l,d,a)&&this.tryInRepetitionRecovery(t,e,n,l)}const vT=4,Nn=8,Fh=1<<Nn,Gh=2<<Nn,ec=3<<Nn,tc=4<<Nn,nc=5<<Nn,sa=6<<Nn;function ko(t,e,n){return n|e|t}class ql{constructor(e){var n;this.maxLookahead=(n=e==null?void 0:e.maxLookahead)!==null&&n!==void 0?n:sn.maxLookahead}validate(e){const n=this.validateNoLeftRecursion(e.rules);if(oe(n)){const r=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),s=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...n,...r,...i,...s]}return n}validateNoLeftRecursion(e){return ft(e,n=>Ih(n,n,Bn))}validateEmptyOrAlternatives(e){return ft(e,n=>iT(n,Bn))}validateAmbiguousAlternationAlternatives(e,n){return ft(e,r=>sT(r,n,Bn))}validateSomeNonEmptyLookaheadPath(e,n){return cT(e,n,Bn)}buildLookaheadForAlternation(e){return qy(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Vy)}buildLookaheadForOptional(e){return Wy(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,zl(e.prodType),Ky)}}class ET{initLooksAhead(e){this.dynamicTokensEnabled=B(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:sn.dynamicTokensEnabled,this.maxLookahead=B(e,"maxLookahead")?e.maxLookahead:sn.maxLookahead,this.lookaheadStrategy=B(e,"lookaheadStrategy")?e.lookaheadStrategy:new ql({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){j(e,n=>{this.TRACE_INIT(`${n.name} Rule Lookahead`,()=>{const{alternation:r,repetition:i,option:s,repetitionMandatory:a,repetitionMandatoryWithSeparator:o,repetitionWithSeparator:c}=ST(n);j(r,l=>{const d=l.idx===0?"":l.idx;this.TRACE_INIT(`${Mt(l)}${d}`,()=>{const h=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:l.idx,rule:n,maxLookahead:l.maxLookahead||this.maxLookahead,hasPredicates:l.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=ko(this.fullRuleNameToShort[n.name],Fh,l.idx);this.setLaFuncCache(p,h)})}),j(i,l=>{this.computeLookaheadFunc(n,l.idx,ec,"Repetition",l.maxLookahead,Mt(l))}),j(s,l=>{this.computeLookaheadFunc(n,l.idx,Gh,"Option",l.maxLookahead,Mt(l))}),j(a,l=>{this.computeLookaheadFunc(n,l.idx,tc,"RepetitionMandatory",l.maxLookahead,Mt(l))}),j(o,l=>{this.computeLookaheadFunc(n,l.idx,sa,"RepetitionMandatoryWithSeparator",l.maxLookahead,Mt(l))}),j(c,l=>{this.computeLookaheadFunc(n,l.idx,nc,"RepetitionWithSeparator",l.maxLookahead,Mt(l))})})})}computeLookaheadFunc(e,n,r,i,s,a){this.TRACE_INIT(`${a}${n===0?"":n}`,()=>{const o=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:n,rule:e,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),c=ko(this.fullRuleNameToShort[e.name],r,n);this.setLaFuncCache(c,o)})}getKeyForAutomaticLookahead(e,n){const r=this.getLastExplicitRuleShortName();return ko(r,e,n)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,n){this.lookAheadFuncsCache.set(e,n)}}class AT extends fi{constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}}const zs=new AT;function ST(t){zs.reset(),t.accept(zs);const e=zs.dslMethods;return zs.reset(),e}function Fu(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset)}function Gu(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.startColumn=e.startColumn,t.startLine=e.startLine,t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine)}function CT(t,e,n){t.children[n]===void 0?t.children[n]=[e]:t.children[n].push(e)}function kT(t,e,n){t.children[e]===void 0?t.children[e]=[n]:t.children[e].push(n)}const NT="name";function Uh(t,e){Object.defineProperty(t,NT,{enumerable:!1,configurable:!0,writable:!1,value:e})}function wT(t,e){const n=Wr(t),r=n.length;for(let i=0;i<r;i++){const s=n[i],a=t[s],o=a.length;for(let c=0;c<o;c++){const l=a[c];l.tokenTypeIdx===void 0&&this[l.name](l.children,e)}}}function bT(t,e){const n=function(){};Uh(n,t+"BaseSemantics");const r={visit:function(i,s){if(ze(i)&&(i=i[0]),!nn(i))return this[i.name](i.children,s)},validateVisitor:function(){const i=IT(this,e);if(!oe(i)){const s=M(i,a=>a.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
|
|
90
|
-
${s.join(`
|
|
91
|
-
|
|
92
|
-
`).replace(/\n/g,`
|
|
93
|
-
`)}`)}}};return n.prototype=r,n.prototype.constructor=n,n._RULE_NAMES=e,n}function _T(t,e,n){const r=function(){};Uh(r,t+"BaseSemanticsWithDefaults");const i=Object.create(n.prototype);return j(e,s=>{i[s]=wT}),r.prototype=i,r.prototype.constructor=r,r}var rc;(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(rc||(rc={}));function IT(t,e){return $T(t,e)}function $T(t,e){const n=pt(e,i=>Qn(t[i])===!1),r=M(n,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:rc.MISSING_METHOD,methodName:i}));return cs(r)}class PT{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=B(e,"nodeLocationTracking")?e.nodeLocationTracking:sn.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=Fe,this.cstFinallyStateUpdate=Fe,this.cstPostTerminal=Fe,this.cstPostNonTerminal=Fe,this.cstPostRule=Fe;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Gu,this.setNodeLocationFromNode=Gu,this.cstPostRule=Fe,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=Fe,this.setNodeLocationFromNode=Fe,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Fu,this.setNodeLocationFromNode=Fu,this.cstPostRule=Fe,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=Fe,this.setNodeLocationFromNode=Fe,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=Fe,this.setNodeLocationFromNode=Fe,this.cstPostRule=Fe,this.setInitialNodeLocation=Fe;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){const n=this.LA(1);e.location={startOffset:n.startOffset,startLine:n.startLine,startColumn:n.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){const n={name:e,children:Object.create(null)};this.setInitialNodeLocation(n),this.CST_STACK.push(n)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const n=this.LA(0),r=e.location;r.startOffset<=n.startOffset?(r.endOffset=n.endOffset,r.endLine=n.endLine,r.endColumn=n.endColumn):(r.startOffset=NaN,r.startLine=NaN,r.startColumn=NaN)}cstPostRuleOnlyOffset(e){const n=this.LA(0),r=e.location;r.startOffset<=n.startOffset?r.endOffset=n.endOffset:r.startOffset=NaN}cstPostTerminal(e,n){const r=this.CST_STACK[this.CST_STACK.length-1];CT(r,n,e),this.setNodeLocationFromToken(r.location,n)}cstPostNonTerminal(e,n){const r=this.CST_STACK[this.CST_STACK.length-1];kT(r,n,e),this.setNodeLocationFromNode(r.location,e.location)}getBaseCstVisitorConstructor(){if(nn(this.baseCstVisitorConstructor)){const e=bT(this.className,Wr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(nn(this.baseCstVisitorWithDefaultsConstructor)){const e=_T(this.className,Wr(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){const e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){const e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}class LT{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):va}LA(e){const n=this.currIdx+e;return n<0||this.tokVectorLength<=n?va:this.tokVector[n]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}class OT{ACTION(e){return e.call(this)}consume(e,n,r){return this.consumeInternal(n,e,r)}subrule(e,n,r){return this.subruleInternal(n,e,r)}option(e,n){return this.optionInternal(n,e)}or(e,n){return this.orInternal(n,e)}many(e,n){return this.manyInternal(e,n)}atLeastOne(e,n){return this.atLeastOneInternal(e,n)}CONSUME(e,n){return this.consumeInternal(e,0,n)}CONSUME1(e,n){return this.consumeInternal(e,1,n)}CONSUME2(e,n){return this.consumeInternal(e,2,n)}CONSUME3(e,n){return this.consumeInternal(e,3,n)}CONSUME4(e,n){return this.consumeInternal(e,4,n)}CONSUME5(e,n){return this.consumeInternal(e,5,n)}CONSUME6(e,n){return this.consumeInternal(e,6,n)}CONSUME7(e,n){return this.consumeInternal(e,7,n)}CONSUME8(e,n){return this.consumeInternal(e,8,n)}CONSUME9(e,n){return this.consumeInternal(e,9,n)}SUBRULE(e,n){return this.subruleInternal(e,0,n)}SUBRULE1(e,n){return this.subruleInternal(e,1,n)}SUBRULE2(e,n){return this.subruleInternal(e,2,n)}SUBRULE3(e,n){return this.subruleInternal(e,3,n)}SUBRULE4(e,n){return this.subruleInternal(e,4,n)}SUBRULE5(e,n){return this.subruleInternal(e,5,n)}SUBRULE6(e,n){return this.subruleInternal(e,6,n)}SUBRULE7(e,n){return this.subruleInternal(e,7,n)}SUBRULE8(e,n){return this.subruleInternal(e,8,n)}SUBRULE9(e,n){return this.subruleInternal(e,9,n)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,n,r=Ea){if(tt(this.definedRulesNames,e)){const a={message:Bn.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:et.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(a)}this.definedRulesNames.push(e);const i=this.defineRule(e,n,r);return this[e]=i,i}OVERRIDE_RULE(e,n,r=Ea){const i=rT(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);const s=this.defineRule(e,n,r);return this[e]=s,s}BACKTRACK(e,n){return function(){this.isBackTrackingStack.push(1);const r=this.saveRecogState();try{return e.apply(this,n),!0}catch(i){if(Ta(i))return!1;throw i}finally{this.reloadRecogState(r),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return zg(Oe(this.gastProductionsCache))}}class xT{initRecognizerEngine(e,n){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=ya,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},B(n,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
|
|
94
|
-
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
|
|
95
|
-
For Further details.`);if(ze(e)){if(oe(e))throw Error(`A Token Vocabulary cannot be empty.
|
|
96
|
-
Note that the first argument for the parser constructor
|
|
97
|
-
is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
|
|
98
|
-
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
|
|
99
|
-
For Further details.`)}if(ze(e))this.tokensMap=Qe(e,(s,a)=>(s[a.name]=a,s),{});else if(B(e,"modes")&&_t(vt(Oe(e.modes)),Ly)){const s=vt(Oe(e.modes)),a=Ll(s);this.tokensMap=Qe(a,(o,c)=>(o[c.name]=c,o),{})}else if(cm(e))this.tokensMap=qe(e);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=Sn;const r=B(e,"modes")?vt(Oe(e.modes)):Oe(e),i=_t(r,s=>oe(s.categoryMatches));this.tokenMatcher=i?ya:hs,ps(Oe(this.tokensMap))}defineRule(e,n,r){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
|
|
100
|
-
Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const i=B(r,"resyncEnabled")?r.resyncEnabled:Ea.resyncEnabled,s=B(r,"recoveryValueFunc")?r.recoveryValueFunc:Ea.recoveryValueFunc,a=this.ruleShortNameIdx<<vT+Nn;this.ruleShortNameIdx++,this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a;let o;return this.outputCst===!0?o=function(...d){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),n.apply(this,d);const h=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(h),h}catch(h){return this.invokeRuleCatch(h,i,s)}finally{this.ruleFinallyStateUpdate()}}:o=function(...d){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),n.apply(this,d)}catch(h){return this.invokeRuleCatch(h,i,s)}finally{this.ruleFinallyStateUpdate()}},Object.assign(o,{ruleName:e,originalGrammarAction:n})}invokeRuleCatch(e,n,r){const i=this.RULE_STACK.length===1,s=n&&!this.isBackTracking()&&this.recoveryEnabled;if(Ta(e)){const a=e;if(s){const o=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(o))if(a.resyncedTokens=this.reSyncTo(o),this.outputCst){const c=this.CST_STACK[this.CST_STACK.length-1];return c.recoveredNode=!0,c}else return r(e);else{if(this.outputCst){const c=this.CST_STACK[this.CST_STACK.length-1];c.recoveredNode=!0,a.partialCstResult=c}throw a}}else{if(i)return this.moveToTerminatedState(),r(e);throw a}}else throw e}optionInternal(e,n){const r=this.getKeyForAutomaticLookahead(Gh,n);return this.optionInternalLogic(e,n,r)}optionInternalLogic(e,n,r){let i=this.getLaFuncFromCache(r),s;if(typeof e!="function"){s=e.DEF;const a=e.GATE;if(a!==void 0){const o=i;i=()=>a.call(this)&&o.call(this)}}else s=e;if(i.call(this)===!0)return s.call(this)}atLeastOneInternal(e,n){const r=this.getKeyForAutomaticLookahead(tc,e);return this.atLeastOneInternalLogic(e,n,r)}atLeastOneInternalLogic(e,n,r){let i=this.getLaFuncFromCache(r),s;if(typeof n!="function"){s=n.DEF;const a=n.GATE;if(a!==void 0){const o=i;i=()=>a.call(this)&&o.call(this)}}else s=n;if(i.call(this)===!0){let a=this.doSingleRepetition(s);for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(e,pe.REPETITION_MANDATORY,n.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,n],i,tc,e,zy)}atLeastOneSepFirstInternal(e,n){const r=this.getKeyForAutomaticLookahead(sa,e);this.atLeastOneSepFirstInternalLogic(e,n,r)}atLeastOneSepFirstInternalLogic(e,n,r){const i=n.DEF,s=n.SEP;if(this.getLaFuncFromCache(r).call(this)===!0){i.call(this);const o=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,o,i,xu],o,sa,e,xu)}else throw this.raiseEarlyExitException(e,pe.REPETITION_MANDATORY_WITH_SEPARATOR,n.ERR_MSG)}manyInternal(e,n){const r=this.getKeyForAutomaticLookahead(ec,e);return this.manyInternalLogic(e,n,r)}manyInternalLogic(e,n,r){let i=this.getLaFuncFromCache(r),s;if(typeof n!="function"){s=n.DEF;const o=n.GATE;if(o!==void 0){const c=i;i=()=>o.call(this)&&c.call(this)}}else s=n;let a=!0;for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[e,n],i,ec,e,jy,a)}manySepFirstInternal(e,n){const r=this.getKeyForAutomaticLookahead(nc,e);this.manySepFirstInternalLogic(e,n,r)}manySepFirstInternalLogic(e,n,r){const i=n.DEF,s=n.SEP;if(this.getLaFuncFromCache(r).call(this)===!0){i.call(this);const o=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,o,i,Ou],o,nc,e,Ou)}}repetitionSepSecondInternal(e,n,r,i,s){for(;r();)this.CONSUME(n),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,n,r,i,s],r,sa,e,s)}doSingleRepetition(e){const n=this.getLexerPosition();return e.call(this),this.getLexerPosition()>n}orInternal(e,n){const r=this.getKeyForAutomaticLookahead(Fh,n),i=ze(e)?e:e.DEF,a=this.getLaFuncFromCache(r).call(this,i);if(a!==void 0)return i[a].ALT.call(this);this.raiseNoAltException(n,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){const e=this.LA(1),n=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new mT(n,e))}}subruleInternal(e,n,r){let i;try{const s=r!==void 0?r.ARGS:void 0;return this.subruleIdx=n,i=e.apply(this,s),this.cstPostNonTerminal(i,r!==void 0&&r.LABEL!==void 0?r.LABEL:e.ruleName),i}catch(s){throw this.subruleInternalError(s,r,e.ruleName)}}subruleInternalError(e,n,r){throw Ta(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,n!==void 0&&n.LABEL!==void 0?n.LABEL:r),delete e.partialCstResult),e}consumeInternal(e,n,r){let i;try{const s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),i=s):this.consumeInternalError(e,s,r)}catch(s){i=this.consumeInternalRecovery(e,n,s)}return this.cstPostTerminal(r!==void 0&&r.LABEL!==void 0?r.LABEL:e.name,i),i}consumeInternalError(e,n,r){let i;const s=this.LA(0);throw r!==void 0&&r.ERR_MSG?i=r.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:n,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Dh(i,n,s))}consumeInternalRecovery(e,n,r){if(this.recoveryEnabled&&r.name==="MismatchedTokenException"&&!this.isBackTracking()){const i=this.getFollowsForInRuleRecovery(e,n);try{return this.tryInRuleRecovery(e,i)}catch(s){throw s.name===Mh?r:s}}else throw r}saveRecogState(){const e=this.errors,n=qe(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:n,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,n,r){this.RULE_OCCURRENCE_STACK.push(r),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(n)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){const e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Sn)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}class DT{initErrorHandler(e){this._errors=[],this.errorMessageProvider=B(e,"errorMessageProvider")?e.errorMessageProvider:sn.errorMessageProvider}SAVE_ERROR(e){if(Ta(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:qe(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return qe(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,n,r){const i=this.getCurrRuleFullName(),s=this.getGAstProductions()[i],o=Ja(e,s,n,this.maxLookahead)[0],c=[];for(let d=1;d<=this.maxLookahead;d++)c.push(this.LA(d));const l=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:o,actual:c,previous:this.LA(0),customUserDescription:r,ruleName:i});throw this.SAVE_ERROR(new gT(l,this.LA(1),this.LA(0)))}raiseNoAltException(e,n){const r=this.getCurrRuleFullName(),i=this.getGAstProductions()[r],s=Xa(e,i,this.maxLookahead),a=[];for(let l=1;l<=this.maxLookahead;l++)a.push(this.LA(l));const o=this.LA(0),c=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:a,previous:o,customUserDescription:n,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new pT(c,this.LA(1),o))}}class MT{initContentAssist(){}computeContentAssist(e,n){const r=this.gastProductionsCache[e];if(nn(r))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return kh([r],n,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){const n=$t(e.ruleStack),i=this.getGAstProductions()[n];return new Uy(i,e).startWalking()}}const Za={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(Za);const Uu=!0,ju=Math.pow(2,Nn)-1,jh=Sh({name:"RECORDING_PHASE_TOKEN",pattern:rt.NA});ps([jh]);const zh=jl(jh,`This IToken indicates the Parser is in Recording Phase
|
|
101
|
-
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(zh);const FT={name:`This CSTNode indicates the Parser is in Recording Phase
|
|
102
|
-
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}};class GT{initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){const n=e>0?e:"";this[`CONSUME${n}`]=function(r,i){return this.consumeInternalRecord(r,e,i)},this[`SUBRULE${n}`]=function(r,i){return this.subruleInternalRecord(r,e,i)},this[`OPTION${n}`]=function(r){return this.optionInternalRecord(r,e)},this[`OR${n}`]=function(r){return this.orInternalRecord(r,e)},this[`MANY${n}`]=function(r){this.manyInternalRecord(e,r)},this[`MANY_SEP${n}`]=function(r){this.manySepFirstInternalRecord(e,r)},this[`AT_LEAST_ONE${n}`]=function(r){this.atLeastOneInternalRecord(e,r)},this[`AT_LEAST_ONE_SEP${n}`]=function(r){this.atLeastOneSepFirstInternalRecord(e,r)}}this.consume=function(e,n,r){return this.consumeInternalRecord(n,e,r)},this.subrule=function(e,n,r){return this.subruleInternalRecord(n,e,r)},this.option=function(e,n){return this.optionInternalRecord(n,e)},this.or=function(e,n){return this.orInternalRecord(n,e)},this.many=function(e,n){this.manyInternalRecord(e,n)},this.atLeastOne=function(e,n){this.atLeastOneInternalRecord(e,n)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{const e=this;for(let n=0;n<10;n++){const r=n>0?n:"";delete e[`CONSUME${r}`],delete e[`SUBRULE${r}`],delete e[`OPTION${r}`],delete e[`OR${r}`],delete e[`MANY${r}`],delete e[`MANY_SEP${r}`],delete e[`AT_LEAST_ONE${r}`],delete e[`AT_LEAST_ONE_SEP${r}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,n){return()=>!0}LA_RECORD(e){return va}topLevelRuleRecord(e,n){try{const r=new di({definition:[],name:e});return r.name=e,this.recordingProdStack.push(r),n.call(this),this.recordingProdStack.pop(),r}catch(r){if(r.KNOWN_RECORDER_ERROR!==!0)try{r.message=r.message+`
|
|
103
|
-
This error was thrown during the "grammar recording phase" For more info see:
|
|
104
|
-
https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw r}throw r}}optionInternalRecord(e,n){return Ii.call(this,Be,e,n)}atLeastOneInternalRecord(e,n){Ii.call(this,mt,n,e)}atLeastOneSepFirstInternalRecord(e,n){Ii.call(this,gt,n,e,Uu)}manyInternalRecord(e,n){Ii.call(this,Ee,n,e)}manySepFirstInternalRecord(e,n){Ii.call(this,at,n,e,Uu)}orInternalRecord(e,n){return UT.call(this,e,n)}subruleInternalRecord(e,n,r){if(Ra(n),!e||B(e,"ruleName")===!1){const o=new Error(`<SUBRULE${zu(n)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
|
|
105
|
-
inside top level rule: <${this.recordingProdStack[0].name}>`);throw o.KNOWN_RECORDER_ERROR=!0,o}const i=Wn(this.recordingProdStack),s=e.ruleName,a=new Ze({idx:n,nonTerminalName:s,label:r==null?void 0:r.LABEL,referencedRule:void 0});return i.definition.push(a),this.outputCst?FT:Za}consumeInternalRecord(e,n,r){if(Ra(n),!Eh(e)){const a=new Error(`<CONSUME${zu(n)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
|
|
106
|
-
inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}const i=Wn(this.recordingProdStack),s=new ue({idx:n,terminalType:e,label:r==null?void 0:r.LABEL});return i.definition.push(s),zh}}function Ii(t,e,n,r=!1){Ra(n);const i=Wn(this.recordingProdStack),s=Qn(e)?e:e.DEF,a=new t({definition:[],idx:n});return r&&(a.separator=e.SEP),B(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(a),s.call(this),i.definition.push(a),this.recordingProdStack.pop(),Za}function UT(t,e){Ra(e);const n=Wn(this.recordingProdStack),r=ze(t)===!1,i=r===!1?t:t.DEF,s=new ot({definition:[],idx:e,ignoreAmbiguities:r&&t.IGNORE_AMBIGUITIES===!0});B(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD);const a=qf(i,o=>Qn(o.GATE));return s.hasPredicates=a,n.definition.push(s),j(i,o=>{const c=new st({definition:[]});s.definition.push(c),B(o,"IGNORE_AMBIGUITIES")?c.ignoreAmbiguities=o.IGNORE_AMBIGUITIES:B(o,"GATE")&&(c.ignoreAmbiguities=!0),this.recordingProdStack.push(c),o.ALT.call(this),this.recordingProdStack.pop()}),Za}function zu(t){return t===0?"":`${t}`}function Ra(t){if(t<0||t>ju){const e=new Error(`Invalid DSL Method idx value: <${t}>
|
|
107
|
-
Idx value must be a none negative value smaller than ${ju+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}class jT{initPerformanceTracer(e){if(B(e,"traceInitPerf")){const n=e.traceInitPerf,r=typeof n=="number";this.traceInitMaxIdent=r?n:1/0,this.traceInitPerf=r?n>0:n}else this.traceInitMaxIdent=0,this.traceInitPerf=sn.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,n){if(this.traceInitPerf===!0){this.traceInitIndent++;const r=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--> <${e}>`);const{time:i,value:s}=fh(n),a=i>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${i}ms`),this.traceInitIndent--,s}else return n()}}function zT(t,e){e.forEach(n=>{const r=n.prototype;Object.getOwnPropertyNames(r).forEach(i=>{if(i==="constructor")return;const s=Object.getOwnPropertyDescriptor(r,i);s&&(s.get||s.set)?Object.defineProperty(t.prototype,i,s):t.prototype[i]=n.prototype[i]})})}const va=jl(Sn,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(va);const sn=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:kr,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Ea=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0});var et;(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(et||(et={}));function Bu(t=void 0){return function(){return t}}class ms{static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;const n=this.className;this.TRACE_INIT("toFastProps",()=>{hh(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),j(this.definedRulesNames,i=>{const a=this[i].originalGrammarAction;let o;this.TRACE_INIT(`${i} Rule`,()=>{o=this.topLevelRuleRecord(i,a)}),this.gastProductionsCache[i]=o})}finally{this.disableRecording()}});let r=[];if(this.TRACE_INIT("Grammar Resolving",()=>{r=fT({rules:Oe(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(r)}),this.TRACE_INIT("Grammar Validations",()=>{if(oe(r)&&this.skipValidations===!1){const i=hT({rules:Oe(this.gastProductionsCache),tokenTypes:Oe(this.tokensMap),errMsgProvider:Bn,grammarName:n}),s=Jy({lookaheadStrategy:this.lookaheadStrategy,rules:Oe(this.gastProductionsCache),tokenTypes:Oe(this.tokensMap),grammarName:n});this.definitionErrors=this.definitionErrors.concat(i,s)}}),oe(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{const i=Yg(Oe(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,s;(s=(i=this.lookaheadStrategy).initialize)===null||s===void 0||s.call(i,{rules:Oe(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Oe(this.gastProductionsCache))})),!ms.DEFER_DEFINITION_ERRORS_HANDLING&&!oe(this.definitionErrors))throw e=M(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected:
|
|
108
|
-
${e.join(`
|
|
109
|
-
-------------------------------
|
|
110
|
-
`)}`)})}constructor(e,n){this.definitionErrors=[],this.selfAnalysisDone=!1;const r=this;if(r.initErrorHandler(n),r.initLexerAdapter(),r.initLooksAhead(n),r.initRecognizerEngine(e,n),r.initRecoverable(n),r.initTreeBuilder(n),r.initContentAssist(),r.initGastRecorder(n),r.initPerformanceTracer(n),B(n,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
|
|
111
|
-
Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
|
|
112
|
-
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
|
|
113
|
-
For further details.`);this.skipValidations=B(n,"skipValidations")?n.skipValidations:sn.skipValidations}}ms.DEFER_DEFINITION_ERRORS_HANDLING=!1;zT(ms,[TT,ET,PT,LT,xT,OT,DT,MT,GT,jT]);class BT extends ms{constructor(e,n=sn){const r=qe(n);r.outputCst=!1,super(e,r)}}function Kr(t,e,n){return`${t.name}_${e}_${n}`}const Cn=1,qT=2,Bh=4,qh=5,gs=7,WT=8,VT=9,KT=10,HT=11,Wh=12;class Wl{constructor(e){this.target=e}isEpsilon(){return!1}}class Vl extends Wl{constructor(e,n){super(e),this.tokenType=n}}class Vh extends Wl{constructor(e){super(e)}isEpsilon(){return!0}}class Kl extends Wl{constructor(e,n,r){super(e),this.rule=n,this.followState=r}isEpsilon(){return!0}}function YT(t){const e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};XT(e,t);const n=t.length;for(let r=0;r<n;r++){const i=t[r],s=Zn(e,i,i);s!==void 0&&oR(e,i,s)}return e}function XT(t,e){const n=e.length;for(let r=0;r<n;r++){const i=e[r],s=xe(t,i,void 0,{type:qT}),a=xe(t,i,void 0,{type:gs});s.stop=a,t.ruleToStartState.set(i,s),t.ruleToStopState.set(i,a)}}function Kh(t,e,n){return n instanceof ue?Hl(t,e,n.terminalType,n):n instanceof Ze?aR(t,e,n):n instanceof ot?tR(t,e,n):n instanceof Be?nR(t,e,n):n instanceof Ee?JT(t,e,n):n instanceof at?QT(t,e,n):n instanceof mt?ZT(t,e,n):n instanceof gt?eR(t,e,n):Zn(t,e,n)}function JT(t,e,n){const r=xe(t,e,n,{type:qh});wn(t,r);const i=hi(t,e,r,n,Zn(t,e,n));return Yh(t,e,n,i)}function QT(t,e,n){const r=xe(t,e,n,{type:qh});wn(t,r);const i=hi(t,e,r,n,Zn(t,e,n)),s=Hl(t,e,n.separator,n);return Yh(t,e,n,i,s)}function ZT(t,e,n){const r=xe(t,e,n,{type:Bh});wn(t,r);const i=hi(t,e,r,n,Zn(t,e,n));return Hh(t,e,n,i)}function eR(t,e,n){const r=xe(t,e,n,{type:Bh});wn(t,r);const i=hi(t,e,r,n,Zn(t,e,n)),s=Hl(t,e,n.separator,n);return Hh(t,e,n,i,s)}function tR(t,e,n){const r=xe(t,e,n,{type:Cn});wn(t,r);const i=M(n.definition,a=>Kh(t,e,a));return hi(t,e,r,n,...i)}function nR(t,e,n){const r=xe(t,e,n,{type:Cn});wn(t,r);const i=hi(t,e,r,n,Zn(t,e,n));return rR(t,e,n,i)}function Zn(t,e,n){const r=pt(M(n.definition,i=>Kh(t,e,i)),i=>i!==void 0);return r.length===1?r[0]:r.length===0?void 0:sR(t,r)}function Hh(t,e,n,r,i){const s=r.left,a=r.right,o=xe(t,e,n,{type:HT});wn(t,o);const c=xe(t,e,n,{type:Wh});return s.loopback=o,c.loopback=o,t.decisionMap[Kr(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",n.idx)]=o,_e(a,o),i===void 0?(_e(o,s),_e(o,c)):(_e(o,c),_e(o,i.left),_e(i.right,s)),{left:s,right:c}}function Yh(t,e,n,r,i){const s=r.left,a=r.right,o=xe(t,e,n,{type:KT});wn(t,o);const c=xe(t,e,n,{type:Wh}),l=xe(t,e,n,{type:VT});return o.loopback=l,c.loopback=l,_e(o,s),_e(o,c),_e(a,l),i!==void 0?(_e(l,c),_e(l,i.left),_e(i.right,s)):_e(l,o),t.decisionMap[Kr(e,i?"RepetitionWithSeparator":"Repetition",n.idx)]=o,{left:o,right:c}}function rR(t,e,n,r){const i=r.left,s=r.right;return _e(i,s),t.decisionMap[Kr(e,"Option",n.idx)]=i,r}function wn(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function hi(t,e,n,r,...i){const s=xe(t,e,r,{type:WT,start:n});n.end=s;for(const o of i)o!==void 0?(_e(n,o.left),_e(o.right,s)):_e(n,s);const a={left:n,right:s};return t.decisionMap[Kr(e,iR(r),r.idx)]=n,a}function iR(t){if(t instanceof ot)return"Alternation";if(t instanceof Be)return"Option";if(t instanceof Ee)return"Repetition";if(t instanceof at)return"RepetitionWithSeparator";if(t instanceof mt)return"RepetitionMandatory";if(t instanceof gt)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function sR(t,e){const n=e.length;for(let s=0;s<n-1;s++){const a=e[s];let o;a.left.transitions.length===1&&(o=a.left.transitions[0]);const c=o instanceof Kl,l=o,d=e[s+1].left;a.left.type===Cn&&a.right.type===Cn&&o!==void 0&&(c&&l.followState===a.right||o.target===a.right)?(c?l.followState=d:o.target=d,cR(t,a.right)):_e(a.right,d)}const r=e[0],i=e[n-1];return{left:r.left,right:i.right}}function Hl(t,e,n,r){const i=xe(t,e,r,{type:Cn}),s=xe(t,e,r,{type:Cn});return Yl(i,new Vl(s,n)),{left:i,right:s}}function aR(t,e,n){const r=n.referencedRule,i=t.ruleToStartState.get(r),s=xe(t,e,n,{type:Cn}),a=xe(t,e,n,{type:Cn}),o=new Kl(i,r,a);return Yl(s,o),{left:s,right:a}}function oR(t,e,n){const r=t.ruleToStartState.get(e);_e(r,n.left);const i=t.ruleToStopState.get(e);return _e(n.right,i),{left:r,right:i}}function _e(t,e){const n=new Vh(e);Yl(t,n)}function xe(t,e,n,r){const i=Object.assign({atn:t,production:n,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:t.states.length},r);return t.states.push(i),i}function Yl(t,e){t.transitions.length===0&&(t.epsilonOnlyTransitions=e.isEpsilon()),t.transitions.push(e)}function cR(t,e){t.states.splice(t.states.indexOf(e),1)}const Aa={};class ic{constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){const n=Xh(e);n in this.map||(this.map[n]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return M(this.configs,e=>e.alt)}get key(){let e="";for(const n in this.map)e+=n+":";return e}}function Xh(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(n=>n.stateNumber.toString()).join("_")}`}function lR(t,e){const n={};return r=>{const i=r.toString();let s=n[i];return s!==void 0||(s={atnStartState:t,decision:e,states:{}},n[i]=s),s}}class Jh{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,n){this.predicates[e]=n}toString(){let e="";const n=this.predicates.length;for(let r=0;r<n;r++)e+=this.predicates[r]===!0?"1":"0";return e}}const qu=new Jh;class uR extends ql{constructor(e){var n;super(),this.logging=(n=e==null?void 0:e.logging)!==null&&n!==void 0?n:r=>console.log(r)}initialize(e){this.atn=YT(e.rules),this.dfas=dR(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){const{prodOccurrence:n,rule:r,hasPredicates:i,dynamicTokensEnabled:s}=e,a=this.dfas,o=this.logging,c=Kr(r,"Alternation",n),d=this.atn.decisionMap[c].decision,h=M(Du({maxLookahead:1,occurrence:n,prodType:"Alternation",rule:r}),p=>M(p,g=>g[0]));if(Wu(h,!1)&&!s){const p=Qe(h,(g,C,w)=>(j(C,D=>{D&&(g[D.tokenTypeIdx]=w,j(D.categoryMatches,N=>{g[N]=w}))}),g),{});return i?function(g){var C;const w=this.LA(1),D=p[w.tokenTypeIdx];if(g!==void 0&&D!==void 0){const N=(C=g[D])===null||C===void 0?void 0:C.GATE;if(N!==void 0&&N.call(this)===!1)return}return D}:function(){const g=this.LA(1);return p[g.tokenTypeIdx]}}else return i?function(p){const g=new Jh,C=p===void 0?0:p.length;for(let D=0;D<C;D++){const N=p==null?void 0:p[D].GATE;g.set(D,N===void 0||N.call(this))}const w=No.call(this,a,d,g,o);return typeof w=="number"?w:void 0}:function(){const p=No.call(this,a,d,qu,o);return typeof p=="number"?p:void 0}}buildLookaheadForOptional(e){const{prodOccurrence:n,rule:r,prodType:i,dynamicTokensEnabled:s}=e,a=this.dfas,o=this.logging,c=Kr(r,i,n),d=this.atn.decisionMap[c].decision,h=M(Du({maxLookahead:1,occurrence:n,prodType:i,rule:r}),p=>M(p,g=>g[0]));if(Wu(h)&&h[0][0]&&!s){const p=h[0],g=vt(p);if(g.length===1&&oe(g[0].categoryMatches)){const w=g[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===w}}else{const C=Qe(g,(w,D)=>(D!==void 0&&(w[D.tokenTypeIdx]=!0,j(D.categoryMatches,N=>{w[N]=!0})),w),{});return function(){const w=this.LA(1);return C[w.tokenTypeIdx]===!0}}}return function(){const p=No.call(this,a,d,qu,o);return typeof p=="object"?!1:p===0}}}function Wu(t,e=!0){const n=new Set;for(const r of t){const i=new Set;for(const s of r){if(s===void 0){if(e)break;return!1}const a=[s.tokenTypeIdx].concat(s.categoryMatches);for(const o of a)if(n.has(o)){if(!i.has(o))return!1}else n.add(o),i.add(o)}}return!0}function dR(t){const e=t.decisionStates.length,n=Array(e);for(let r=0;r<e;r++)n[r]=lR(t.decisionStates[r],r);return n}function No(t,e,n,r){const i=t[e](n);let s=i.start;if(s===void 0){const o=AR(i.atnStartState);s=Zh(i,Qh(o)),i.start=s}return fR.apply(this,[i,s,n,r])}function fR(t,e,n,r){let i=e,s=1;const a=[];let o=this.LA(s++);for(;;){let c=TR(i,o);if(c===void 0&&(c=hR.apply(this,[t,i,o,s,n,r])),c===Aa)return yR(a,i,o);if(c.isAcceptState===!0)return c.prediction;i=c,a.push(o),o=this.LA(s++)}}function hR(t,e,n,r,i,s){const a=RR(e.configs,n,i);if(a.size===0)return Vu(t,e,n,Aa),Aa;let o=Qh(a);const c=ER(a,i);if(c!==void 0)o.isAcceptState=!0,o.prediction=c,o.configs.uniqueAlt=c;else if(NR(a)){const l=Rm(a.alts);o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l,pR.apply(this,[t,r,a.alts,s])}return o=Vu(t,e,n,o),o}function pR(t,e,n,r){const i=[];for(let l=1;l<=e;l++)i.push(this.LA(l).tokenType);const s=t.atnStartState,a=s.rule,o=s.production,c=mR({topLevelRule:a,ambiguityIndices:n,production:o,prefixPath:i});r(c)}function mR(t){const e=M(t.prefixPath,i=>wr(i)).join(", "),n=t.production.idx===0?"":t.production.idx;let r=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${gR(t.production)}${n}> inside <${t.topLevelRule.name}> Rule,
|
|
114
|
-
<${e}> may appears as a prefix path in all these alternatives.
|
|
115
|
-
`;return r=r+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
|
116
|
-
For Further details.`,r}function gR(t){if(t instanceof Ze)return"SUBRULE";if(t instanceof Be)return"OPTION";if(t instanceof ot)return"OR";if(t instanceof mt)return"AT_LEAST_ONE";if(t instanceof gt)return"AT_LEAST_ONE_SEP";if(t instanceof at)return"MANY_SEP";if(t instanceof Ee)return"MANY";if(t instanceof ue)return"CONSUME";throw Error("non exhaustive match")}function yR(t,e,n){const r=ft(e.configs.elements,s=>s.state.transitions),i=Gm(r.filter(s=>s instanceof Vl).map(s=>s.tokenType),s=>s.tokenTypeIdx);return{actualToken:n,possibleTokenTypes:i,tokenPath:t}}function TR(t,e){return t.edges[e.tokenTypeIdx]}function RR(t,e,n){const r=new ic,i=[];for(const a of t.elements){if(n.is(a.alt)===!1)continue;if(a.state.type===gs){i.push(a);continue}const o=a.state.transitions.length;for(let c=0;c<o;c++){const l=a.state.transitions[c],d=vR(l,e);d!==void 0&&r.add({state:d,alt:a.alt,stack:a.stack})}}let s;if(i.length===0&&r.size===1&&(s=r),s===void 0){s=new ic;for(const a of r.elements)Sa(a,s)}if(i.length>0&&!CR(s))for(const a of i)s.add(a);return s}function vR(t,e){if(t instanceof Vl&&Ch(e,t.tokenType))return t.target}function ER(t,e){let n;for(const r of t.elements)if(e.is(r.alt)===!0){if(n===void 0)n=r.alt;else if(n!==r.alt)return}return n}function Qh(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function Vu(t,e,n,r){return r=Zh(t,r),e.edges[n.tokenTypeIdx]=r,r}function Zh(t,e){if(e===Aa)return e;const n=e.configs.key,r=t.states[n];return r!==void 0?r:(e.configs.finalize(),t.states[n]=e,e)}function AR(t){const e=new ic,n=t.transitions.length;for(let r=0;r<n;r++){const s={state:t.transitions[r].target,alt:r,stack:[]};Sa(s,e)}return e}function Sa(t,e){const n=t.state;if(n.type===gs){if(t.stack.length>0){const i=[...t.stack],a={state:i.pop(),alt:t.alt,stack:i};Sa(a,e)}else e.add(t);return}n.epsilonOnlyTransitions||e.add(t);const r=n.transitions.length;for(let i=0;i<r;i++){const s=n.transitions[i],a=SR(t,s);a!==void 0&&Sa(a,e)}}function SR(t,e){if(e instanceof Vh)return{state:e.target,alt:t.alt,stack:t.stack};if(e instanceof Kl){const n=[...t.stack,e.followState];return{state:e.target,alt:t.alt,stack:n}}}function CR(t){for(const e of t.elements)if(e.state.type===gs)return!0;return!1}function kR(t){for(const e of t.elements)if(e.state.type!==gs)return!1;return!0}function NR(t){if(kR(t))return!0;const e=wR(t.elements);return bR(e)&&!_R(e)}function wR(t){const e=new Map;for(const n of t){const r=Xh(n,!1);let i=e.get(r);i===void 0&&(i={},e.set(r,i)),i[n.alt]=!0}return e}function bR(t){for(const e of Array.from(t.values()))if(Object.keys(e).length>1)return!0;return!1}function _R(t){for(const e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var sc;(function(t){function e(n){return typeof n=="string"}t.is=e})(sc||(sc={}));var Ca;(function(t){function e(n){return typeof n=="string"}t.is=e})(Ca||(Ca={}));var ac;(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(n){return typeof n=="number"&&t.MIN_VALUE<=n&&n<=t.MAX_VALUE}t.is=e})(ac||(ac={}));var Yi;(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(n){return typeof n=="number"&&t.MIN_VALUE<=n&&n<=t.MAX_VALUE}t.is=e})(Yi||(Yi={}));var ee;(function(t){function e(r,i){return r===Number.MAX_VALUE&&(r=Yi.MAX_VALUE),i===Number.MAX_VALUE&&(i=Yi.MAX_VALUE),{line:r,character:i}}t.create=e;function n(r){let i=r;return R.objectLiteral(i)&&R.uinteger(i.line)&&R.uinteger(i.character)}t.is=n})(ee||(ee={}));var Y;(function(t){function e(r,i,s,a){if(R.uinteger(r)&&R.uinteger(i)&&R.uinteger(s)&&R.uinteger(a))return{start:ee.create(r,i),end:ee.create(s,a)};if(ee.is(r)&&ee.is(i))return{start:r,end:i};throw new Error(`Range#create called with invalid arguments[${r}, ${i}, ${s}, ${a}]`)}t.create=e;function n(r){let i=r;return R.objectLiteral(i)&&ee.is(i.start)&&ee.is(i.end)}t.is=n})(Y||(Y={}));var Xi;(function(t){function e(r,i){return{uri:r,range:i}}t.create=e;function n(r){let i=r;return R.objectLiteral(i)&&Y.is(i.range)&&(R.string(i.uri)||R.undefined(i.uri))}t.is=n})(Xi||(Xi={}));var oc;(function(t){function e(r,i,s,a){return{targetUri:r,targetRange:i,targetSelectionRange:s,originSelectionRange:a}}t.create=e;function n(r){let i=r;return R.objectLiteral(i)&&Y.is(i.targetRange)&&R.string(i.targetUri)&&Y.is(i.targetSelectionRange)&&(Y.is(i.originSelectionRange)||R.undefined(i.originSelectionRange))}t.is=n})(oc||(oc={}));var ka;(function(t){function e(r,i,s,a){return{red:r,green:i,blue:s,alpha:a}}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&R.numberRange(i.red,0,1)&&R.numberRange(i.green,0,1)&&R.numberRange(i.blue,0,1)&&R.numberRange(i.alpha,0,1)}t.is=n})(ka||(ka={}));var cc;(function(t){function e(r,i){return{range:r,color:i}}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&Y.is(i.range)&&ka.is(i.color)}t.is=n})(cc||(cc={}));var lc;(function(t){function e(r,i,s){return{label:r,textEdit:i,additionalTextEdits:s}}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&R.string(i.label)&&(R.undefined(i.textEdit)||Ut.is(i))&&(R.undefined(i.additionalTextEdits)||R.typedArray(i.additionalTextEdits,Ut.is))}t.is=n})(lc||(lc={}));var uc;(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(uc||(uc={}));var dc;(function(t){function e(r,i,s,a,o,c){const l={startLine:r,endLine:i};return R.defined(s)&&(l.startCharacter=s),R.defined(a)&&(l.endCharacter=a),R.defined(o)&&(l.kind=o),R.defined(c)&&(l.collapsedText=c),l}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&R.uinteger(i.startLine)&&R.uinteger(i.startLine)&&(R.undefined(i.startCharacter)||R.uinteger(i.startCharacter))&&(R.undefined(i.endCharacter)||R.uinteger(i.endCharacter))&&(R.undefined(i.kind)||R.string(i.kind))}t.is=n})(dc||(dc={}));var Na;(function(t){function e(r,i){return{location:r,message:i}}t.create=e;function n(r){let i=r;return R.defined(i)&&Xi.is(i.location)&&R.string(i.message)}t.is=n})(Na||(Na={}));var fc;(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(fc||(fc={}));var hc;(function(t){t.Unnecessary=1,t.Deprecated=2})(hc||(hc={}));var pc;(function(t){function e(n){const r=n;return R.objectLiteral(r)&&R.string(r.href)}t.is=e})(pc||(pc={}));var Ji;(function(t){function e(r,i,s,a,o,c){let l={range:r,message:i};return R.defined(s)&&(l.severity=s),R.defined(a)&&(l.code=a),R.defined(o)&&(l.source=o),R.defined(c)&&(l.relatedInformation=c),l}t.create=e;function n(r){var i;let s=r;return R.defined(s)&&Y.is(s.range)&&R.string(s.message)&&(R.number(s.severity)||R.undefined(s.severity))&&(R.integer(s.code)||R.string(s.code)||R.undefined(s.code))&&(R.undefined(s.codeDescription)||R.string((i=s.codeDescription)===null||i===void 0?void 0:i.href))&&(R.string(s.source)||R.undefined(s.source))&&(R.undefined(s.relatedInformation)||R.typedArray(s.relatedInformation,Na.is))}t.is=n})(Ji||(Ji={}));var Xn;(function(t){function e(r,i,...s){let a={title:r,command:i};return R.defined(s)&&s.length>0&&(a.arguments=s),a}t.create=e;function n(r){let i=r;return R.defined(i)&&R.string(i.title)&&R.string(i.command)}t.is=n})(Xn||(Xn={}));var Ut;(function(t){function e(s,a){return{range:s,newText:a}}t.replace=e;function n(s,a){return{range:{start:s,end:s},newText:a}}t.insert=n;function r(s){return{range:s,newText:""}}t.del=r;function i(s){const a=s;return R.objectLiteral(a)&&R.string(a.newText)&&Y.is(a.range)}t.is=i})(Ut||(Ut={}));var qn;(function(t){function e(r,i,s){const a={label:r};return i!==void 0&&(a.needsConfirmation=i),s!==void 0&&(a.description=s),a}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&R.string(i.label)&&(R.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(R.string(i.description)||i.description===void 0)}t.is=n})(qn||(qn={}));var je;(function(t){function e(n){const r=n;return R.string(r)}t.is=e})(je||(je={}));var Jt;(function(t){function e(s,a,o){return{range:s,newText:a,annotationId:o}}t.replace=e;function n(s,a,o){return{range:{start:s,end:s},newText:a,annotationId:o}}t.insert=n;function r(s,a){return{range:s,newText:"",annotationId:a}}t.del=r;function i(s){const a=s;return Ut.is(a)&&(qn.is(a.annotationId)||je.is(a.annotationId))}t.is=i})(Jt||(Jt={}));var Qi;(function(t){function e(r,i){return{textDocument:r,edits:i}}t.create=e;function n(r){let i=r;return R.defined(i)&&Zi.is(i.textDocument)&&Array.isArray(i.edits)}t.is=n})(Qi||(Qi={}));var Hr;(function(t){function e(r,i,s){let a={kind:"create",uri:r};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function n(r){let i=r;return i&&i.kind==="create"&&R.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||R.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||R.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||je.is(i.annotationId))}t.is=n})(Hr||(Hr={}));var Yr;(function(t){function e(r,i,s,a){let o={kind:"rename",oldUri:r,newUri:i};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(o.options=s),a!==void 0&&(o.annotationId=a),o}t.create=e;function n(r){let i=r;return i&&i.kind==="rename"&&R.string(i.oldUri)&&R.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||R.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||R.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||je.is(i.annotationId))}t.is=n})(Yr||(Yr={}));var Xr;(function(t){function e(r,i,s){let a={kind:"delete",uri:r};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function n(r){let i=r;return i&&i.kind==="delete"&&R.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||R.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||R.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||je.is(i.annotationId))}t.is=n})(Xr||(Xr={}));var wa;(function(t){function e(n){let r=n;return r&&(r.changes!==void 0||r.documentChanges!==void 0)&&(r.documentChanges===void 0||r.documentChanges.every(i=>R.string(i.kind)?Hr.is(i)||Yr.is(i)||Xr.is(i):Qi.is(i)))}t.is=e})(wa||(wa={}));class Bs{constructor(e,n){this.edits=e,this.changeAnnotations=n}insert(e,n,r){let i,s;if(r===void 0?i=Ut.insert(e,n):je.is(r)?(s=r,i=Jt.insert(e,n,r)):(this.assertChangeAnnotations(this.changeAnnotations),s=this.changeAnnotations.manage(r),i=Jt.insert(e,n,s)),this.edits.push(i),s!==void 0)return s}replace(e,n,r){let i,s;if(r===void 0?i=Ut.replace(e,n):je.is(r)?(s=r,i=Jt.replace(e,n,r)):(this.assertChangeAnnotations(this.changeAnnotations),s=this.changeAnnotations.manage(r),i=Jt.replace(e,n,s)),this.edits.push(i),s!==void 0)return s}delete(e,n){let r,i;if(n===void 0?r=Ut.del(e):je.is(n)?(i=n,r=Jt.del(e,n)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(n),r=Jt.del(e,i)),this.edits.push(r),i!==void 0)return i}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}}class Ku{constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,n){let r;if(je.is(e)?r=e:(r=this.nextId(),n=e),this._annotations[r]!==void 0)throw new Error(`Id ${r} is already in use.`);if(n===void 0)throw new Error(`No annotation provided for id ${r}`);return this._annotations[r]=n,this._size++,r}nextId(){return this._counter++,this._counter.toString()}}class IR{constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new Ku(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(n=>{if(Qi.is(n)){const r=new Bs(n.edits,this._changeAnnotations);this._textEditChanges[n.textDocument.uri]=r}})):e.changes&&Object.keys(e.changes).forEach(n=>{const r=new Bs(e.changes[n]);this._textEditChanges[n]=r})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(Zi.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");const n={uri:e.uri,version:e.version};let r=this._textEditChanges[n.uri];if(!r){const i=[],s={textDocument:n,edits:i};this._workspaceEdit.documentChanges.push(s),r=new Bs(i,this._changeAnnotations),this._textEditChanges[n.uri]=r}return r}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let n=this._textEditChanges[e];if(!n){let r=[];this._workspaceEdit.changes[e]=r,n=new Bs(r),this._textEditChanges[e]=n}return n}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Ku,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,n,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;qn.is(n)||je.is(n)?i=n:r=n;let s,a;if(i===void 0?s=Hr.create(e,r):(a=je.is(i)?i:this._changeAnnotations.manage(i),s=Hr.create(e,r,a)),this._workspaceEdit.documentChanges.push(s),a!==void 0)return a}renameFile(e,n,r,i){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let s;qn.is(r)||je.is(r)?s=r:i=r;let a,o;if(s===void 0?a=Yr.create(e,n,i):(o=je.is(s)?s:this._changeAnnotations.manage(s),a=Yr.create(e,n,i,o)),this._workspaceEdit.documentChanges.push(a),o!==void 0)return o}deleteFile(e,n,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;qn.is(n)||je.is(n)?i=n:r=n;let s,a;if(i===void 0?s=Xr.create(e,r):(a=je.is(i)?i:this._changeAnnotations.manage(i),s=Xr.create(e,r,a)),this._workspaceEdit.documentChanges.push(s),a!==void 0)return a}}var mc;(function(t){function e(r){return{uri:r}}t.create=e;function n(r){let i=r;return R.defined(i)&&R.string(i.uri)}t.is=n})(mc||(mc={}));var gc;(function(t){function e(r,i){return{uri:r,version:i}}t.create=e;function n(r){let i=r;return R.defined(i)&&R.string(i.uri)&&R.integer(i.version)}t.is=n})(gc||(gc={}));var Zi;(function(t){function e(r,i){return{uri:r,version:i}}t.create=e;function n(r){let i=r;return R.defined(i)&&R.string(i.uri)&&(i.version===null||R.integer(i.version))}t.is=n})(Zi||(Zi={}));var yc;(function(t){function e(r,i,s,a){return{uri:r,languageId:i,version:s,text:a}}t.create=e;function n(r){let i=r;return R.defined(i)&&R.string(i.uri)&&R.string(i.languageId)&&R.integer(i.version)&&R.string(i.text)}t.is=n})(yc||(yc={}));var ba;(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(n){const r=n;return r===t.PlainText||r===t.Markdown}t.is=e})(ba||(ba={}));var Jr;(function(t){function e(n){const r=n;return R.objectLiteral(n)&&ba.is(r.kind)&&R.string(r.value)}t.is=e})(Jr||(Jr={}));var Tc;(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(Tc||(Tc={}));var Rc;(function(t){t.PlainText=1,t.Snippet=2})(Rc||(Rc={}));var vc;(function(t){t.Deprecated=1})(vc||(vc={}));var Ec;(function(t){function e(r,i,s){return{newText:r,insert:i,replace:s}}t.create=e;function n(r){const i=r;return i&&R.string(i.newText)&&Y.is(i.insert)&&Y.is(i.replace)}t.is=n})(Ec||(Ec={}));var Ac;(function(t){t.asIs=1,t.adjustIndentation=2})(Ac||(Ac={}));var Sc;(function(t){function e(n){const r=n;return r&&(R.string(r.detail)||r.detail===void 0)&&(R.string(r.description)||r.description===void 0)}t.is=e})(Sc||(Sc={}));var Cc;(function(t){function e(n){return{label:n}}t.create=e})(Cc||(Cc={}));var kc;(function(t){function e(n,r){return{items:n||[],isIncomplete:!!r}}t.create=e})(kc||(kc={}));var es;(function(t){function e(r){return r.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}t.fromPlainText=e;function n(r){const i=r;return R.string(i)||R.objectLiteral(i)&&R.string(i.language)&&R.string(i.value)}t.is=n})(es||(es={}));var Nc;(function(t){function e(n){let r=n;return!!r&&R.objectLiteral(r)&&(Jr.is(r.contents)||es.is(r.contents)||R.typedArray(r.contents,es.is))&&(n.range===void 0||Y.is(n.range))}t.is=e})(Nc||(Nc={}));var wc;(function(t){function e(n,r){return r?{label:n,documentation:r}:{label:n}}t.create=e})(wc||(wc={}));var bc;(function(t){function e(n,r,...i){let s={label:n};return R.defined(r)&&(s.documentation=r),R.defined(i)?s.parameters=i:s.parameters=[],s}t.create=e})(bc||(bc={}));var _c;(function(t){t.Text=1,t.Read=2,t.Write=3})(_c||(_c={}));var Ic;(function(t){function e(n,r){let i={range:n};return R.number(r)&&(i.kind=r),i}t.create=e})(Ic||(Ic={}));var $c;(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})($c||($c={}));var Pc;(function(t){t.Deprecated=1})(Pc||(Pc={}));var Lc;(function(t){function e(n,r,i,s,a){let o={name:n,kind:r,location:{uri:s,range:i}};return a&&(o.containerName=a),o}t.create=e})(Lc||(Lc={}));var Oc;(function(t){function e(n,r,i,s){return s!==void 0?{name:n,kind:r,location:{uri:i,range:s}}:{name:n,kind:r,location:{uri:i}}}t.create=e})(Oc||(Oc={}));var xc;(function(t){function e(r,i,s,a,o,c){let l={name:r,detail:i,kind:s,range:a,selectionRange:o};return c!==void 0&&(l.children=c),l}t.create=e;function n(r){let i=r;return i&&R.string(i.name)&&R.number(i.kind)&&Y.is(i.range)&&Y.is(i.selectionRange)&&(i.detail===void 0||R.string(i.detail))&&(i.deprecated===void 0||R.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}t.is=n})(xc||(xc={}));var Dc;(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(Dc||(Dc={}));var ts;(function(t){t.Invoked=1,t.Automatic=2})(ts||(ts={}));var Mc;(function(t){function e(r,i,s){let a={diagnostics:r};return i!=null&&(a.only=i),s!=null&&(a.triggerKind=s),a}t.create=e;function n(r){let i=r;return R.defined(i)&&R.typedArray(i.diagnostics,Ji.is)&&(i.only===void 0||R.typedArray(i.only,R.string))&&(i.triggerKind===void 0||i.triggerKind===ts.Invoked||i.triggerKind===ts.Automatic)}t.is=n})(Mc||(Mc={}));var Fc;(function(t){function e(r,i,s){let a={title:r},o=!0;return typeof i=="string"?(o=!1,a.kind=i):Xn.is(i)?a.command=i:a.edit=i,o&&s!==void 0&&(a.kind=s),a}t.create=e;function n(r){let i=r;return i&&R.string(i.title)&&(i.diagnostics===void 0||R.typedArray(i.diagnostics,Ji.is))&&(i.kind===void 0||R.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||Xn.is(i.command))&&(i.isPreferred===void 0||R.boolean(i.isPreferred))&&(i.edit===void 0||wa.is(i.edit))}t.is=n})(Fc||(Fc={}));var Gc;(function(t){function e(r,i){let s={range:r};return R.defined(i)&&(s.data=i),s}t.create=e;function n(r){let i=r;return R.defined(i)&&Y.is(i.range)&&(R.undefined(i.command)||Xn.is(i.command))}t.is=n})(Gc||(Gc={}));var Uc;(function(t){function e(r,i){return{tabSize:r,insertSpaces:i}}t.create=e;function n(r){let i=r;return R.defined(i)&&R.uinteger(i.tabSize)&&R.boolean(i.insertSpaces)}t.is=n})(Uc||(Uc={}));var jc;(function(t){function e(r,i,s){return{range:r,target:i,data:s}}t.create=e;function n(r){let i=r;return R.defined(i)&&Y.is(i.range)&&(R.undefined(i.target)||R.string(i.target))}t.is=n})(jc||(jc={}));var zc;(function(t){function e(r,i){return{range:r,parent:i}}t.create=e;function n(r){let i=r;return R.objectLiteral(i)&&Y.is(i.range)&&(i.parent===void 0||t.is(i.parent))}t.is=n})(zc||(zc={}));var Bc;(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(Bc||(Bc={}));var qc;(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(qc||(qc={}));var Wc;(function(t){function e(n){const r=n;return R.objectLiteral(r)&&(r.resultId===void 0||typeof r.resultId=="string")&&Array.isArray(r.data)&&(r.data.length===0||typeof r.data[0]=="number")}t.is=e})(Wc||(Wc={}));var Vc;(function(t){function e(r,i){return{range:r,text:i}}t.create=e;function n(r){const i=r;return i!=null&&Y.is(i.range)&&R.string(i.text)}t.is=n})(Vc||(Vc={}));var Kc;(function(t){function e(r,i,s){return{range:r,variableName:i,caseSensitiveLookup:s}}t.create=e;function n(r){const i=r;return i!=null&&Y.is(i.range)&&R.boolean(i.caseSensitiveLookup)&&(R.string(i.variableName)||i.variableName===void 0)}t.is=n})(Kc||(Kc={}));var Hc;(function(t){function e(r,i){return{range:r,expression:i}}t.create=e;function n(r){const i=r;return i!=null&&Y.is(i.range)&&(R.string(i.expression)||i.expression===void 0)}t.is=n})(Hc||(Hc={}));var Yc;(function(t){function e(r,i){return{frameId:r,stoppedLocation:i}}t.create=e;function n(r){const i=r;return R.defined(i)&&Y.is(r.stoppedLocation)}t.is=n})(Yc||(Yc={}));var _a;(function(t){t.Type=1,t.Parameter=2;function e(n){return n===1||n===2}t.is=e})(_a||(_a={}));var Ia;(function(t){function e(r){return{value:r}}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&(i.tooltip===void 0||R.string(i.tooltip)||Jr.is(i.tooltip))&&(i.location===void 0||Xi.is(i.location))&&(i.command===void 0||Xn.is(i.command))}t.is=n})(Ia||(Ia={}));var Xc;(function(t){function e(r,i,s){const a={position:r,label:i};return s!==void 0&&(a.kind=s),a}t.create=e;function n(r){const i=r;return R.objectLiteral(i)&&ee.is(i.position)&&(R.string(i.label)||R.typedArray(i.label,Ia.is))&&(i.kind===void 0||_a.is(i.kind))&&i.textEdits===void 0||R.typedArray(i.textEdits,Ut.is)&&(i.tooltip===void 0||R.string(i.tooltip)||Jr.is(i.tooltip))&&(i.paddingLeft===void 0||R.boolean(i.paddingLeft))&&(i.paddingRight===void 0||R.boolean(i.paddingRight))}t.is=n})(Xc||(Xc={}));var Jc;(function(t){function e(n){return{kind:"snippet",value:n}}t.createSnippet=e})(Jc||(Jc={}));var Qc;(function(t){function e(n,r,i,s){return{insertText:n,filterText:r,range:i,command:s}}t.create=e})(Qc||(Qc={}));var Zc;(function(t){function e(n){return{items:n}}t.create=e})(Zc||(Zc={}));var el;(function(t){t.Invoked=0,t.Automatic=1})(el||(el={}));var tl;(function(t){function e(n,r){return{range:n,text:r}}t.create=e})(tl||(tl={}));var nl;(function(t){function e(n,r){return{triggerKind:n,selectedCompletionInfo:r}}t.create=e})(nl||(nl={}));var rl;(function(t){function e(n){const r=n;return R.objectLiteral(r)&&Ca.is(r.uri)&&R.string(r.name)}t.is=e})(rl||(rl={}));const $R=[`
|
|
117
|
-
`,`\r
|
|
118
|
-
`,"\r"];var il;(function(t){function e(s,a,o,c){return new PR(s,a,o,c)}t.create=e;function n(s){let a=s;return!!(R.defined(a)&&R.string(a.uri)&&(R.undefined(a.languageId)||R.string(a.languageId))&&R.uinteger(a.lineCount)&&R.func(a.getText)&&R.func(a.positionAt)&&R.func(a.offsetAt))}t.is=n;function r(s,a){let o=s.getText(),c=i(a,(d,h)=>{let p=d.range.start.line-h.range.start.line;return p===0?d.range.start.character-h.range.start.character:p}),l=o.length;for(let d=c.length-1;d>=0;d--){let h=c[d],p=s.offsetAt(h.range.start),g=s.offsetAt(h.range.end);if(g<=l)o=o.substring(0,p)+h.newText+o.substring(g,o.length);else throw new Error("Overlapping edit");l=p}return o}t.applyEdits=r;function i(s,a){if(s.length<=1)return s;const o=s.length/2|0,c=s.slice(0,o),l=s.slice(o);i(c,a),i(l,a);let d=0,h=0,p=0;for(;d<c.length&&h<l.length;)a(c[d],l[h])<=0?s[p++]=c[d++]:s[p++]=l[h++];for(;d<c.length;)s[p++]=c[d++];for(;h<l.length;)s[p++]=l[h++];return s}})(il||(il={}));let PR=class{constructor(e,n,r,i){this._uri=e,this._languageId=n,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let n=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(n,r)}return this._content}update(e,n){this._content=e.text,this._version=n,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],n=this._content,r=!0;for(let i=0;i<n.length;i++){r&&(e.push(i),r=!1);let s=n.charAt(i);r=s==="\r"||s===`
|
|
119
|
-
`,s==="\r"&&i+1<n.length&&n.charAt(i+1)===`
|
|
120
|
-
`&&i++}r&&n.length>0&&e.push(n.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let n=this.getLineOffsets(),r=0,i=n.length;if(i===0)return ee.create(0,e);for(;r<i;){let a=Math.floor((r+i)/2);n[a]>e?i=a:r=a+1}let s=r-1;return ee.create(s,e-n[s])}offsetAt(e){let n=this.getLineOffsets();if(e.line>=n.length)return this._content.length;if(e.line<0)return 0;let r=n[e.line],i=e.line+1<n.length?n[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,i),r)}get lineCount(){return this.getLineOffsets().length}};var R;(function(t){const e=Object.prototype.toString;function n(g){return typeof g<"u"}t.defined=n;function r(g){return typeof g>"u"}t.undefined=r;function i(g){return g===!0||g===!1}t.boolean=i;function s(g){return e.call(g)==="[object String]"}t.string=s;function a(g){return e.call(g)==="[object Number]"}t.number=a;function o(g,C,w){return e.call(g)==="[object Number]"&&C<=g&&g<=w}t.numberRange=o;function c(g){return e.call(g)==="[object Number]"&&-2147483648<=g&&g<=2147483647}t.integer=c;function l(g){return e.call(g)==="[object Number]"&&0<=g&&g<=2147483647}t.uinteger=l;function d(g){return e.call(g)==="[object Function]"}t.func=d;function h(g){return g!==null&&typeof g=="object"}t.objectLiteral=h;function p(g,C){return Array.isArray(g)&&g.every(C)}t.typedArray=p})(R||(R={}));const LR=Object.freeze(Object.defineProperty({__proto__:null,get AnnotatedTextEdit(){return Jt},get ChangeAnnotation(){return qn},get ChangeAnnotationIdentifier(){return je},get CodeAction(){return Fc},get CodeActionContext(){return Mc},get CodeActionKind(){return Dc},get CodeActionTriggerKind(){return ts},get CodeDescription(){return pc},get CodeLens(){return Gc},get Color(){return ka},get ColorInformation(){return cc},get ColorPresentation(){return lc},get Command(){return Xn},get CompletionItem(){return Cc},get CompletionItemKind(){return Tc},get CompletionItemLabelDetails(){return Sc},get CompletionItemTag(){return vc},get CompletionList(){return kc},get CreateFile(){return Hr},get DeleteFile(){return Xr},get Diagnostic(){return Ji},get DiagnosticRelatedInformation(){return Na},get DiagnosticSeverity(){return fc},get DiagnosticTag(){return hc},get DocumentHighlight(){return Ic},get DocumentHighlightKind(){return _c},get DocumentLink(){return jc},get DocumentSymbol(){return xc},get DocumentUri(){return sc},EOL:$R,get FoldingRange(){return dc},get FoldingRangeKind(){return uc},get FormattingOptions(){return Uc},get Hover(){return Nc},get InlayHint(){return Xc},get InlayHintKind(){return _a},get InlayHintLabelPart(){return Ia},get InlineCompletionContext(){return nl},get InlineCompletionItem(){return Qc},get InlineCompletionList(){return Zc},get InlineCompletionTriggerKind(){return el},get InlineValueContext(){return Yc},get InlineValueEvaluatableExpression(){return Hc},get InlineValueText(){return Vc},get InlineValueVariableLookup(){return Kc},get InsertReplaceEdit(){return Ec},get InsertTextFormat(){return Rc},get InsertTextMode(){return Ac},get Location(){return Xi},get LocationLink(){return oc},get MarkedString(){return es},get MarkupContent(){return Jr},get MarkupKind(){return ba},get OptionalVersionedTextDocumentIdentifier(){return Zi},get ParameterInformation(){return wc},get Position(){return ee},get Range(){return Y},get RenameFile(){return Yr},get SelectedCompletionInfo(){return tl},get SelectionRange(){return zc},get SemanticTokenModifiers(){return qc},get SemanticTokenTypes(){return Bc},get SemanticTokens(){return Wc},get SignatureInformation(){return bc},get StringValue(){return Jc},get SymbolInformation(){return Lc},get SymbolKind(){return $c},get SymbolTag(){return Pc},get TextDocument(){return il},get TextDocumentEdit(){return Qi},get TextDocumentIdentifier(){return mc},get TextDocumentItem(){return yc},get TextEdit(){return Ut},get URI(){return Ca},get VersionedTextDocumentIdentifier(){return gc},WorkspaceChange:IR,get WorkspaceEdit(){return wa},get WorkspaceFolder(){return rl},get WorkspaceSymbol(){return Oc},get integer(){return ac},get uinteger(){return Yi}},Symbol.toStringTag,{value:"Module"}));class OR{constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new tp(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){const n=new Xl;return n.grammarSource=e,n.root=this.rootNode,this.current.content.push(n),this.nodeStack.push(n),n}buildLeafNode(e,n){const r=new sl(e.startOffset,e.image.length,Ko(e),e.tokenType,!n);return r.grammarSource=n,r.root=this.rootNode,this.current.content.push(r),r}removeNode(e){const n=e.container;if(n){const r=n.content.indexOf(e);r>=0&&n.content.splice(r,1)}}addHiddenNodes(e){const n=[];for(const s of e){const a=new sl(s.startOffset,s.image.length,Ko(s),s.tokenType,!0);a.root=this.rootNode,n.push(a)}let r=this.current,i=!1;if(r.content.length>0){r.content.push(...n);return}for(;r.container;){const s=r.container.content.indexOf(r);if(s>0){r.container.content.splice(s,0,...n),i=!0;break}r=r.container}i||this.rootNode.content.unshift(...n)}construct(e){const n=this.current;typeof e.$type=="string"&&!e.$infixName&&(this.current.astNode=e),e.$cstNode=n;const r=this.nodeStack.pop();(r==null?void 0:r.content.length)===0&&this.removeNode(r)}}class ep{get hidden(){return!1}get astNode(){var n,r;const e=typeof((n=this._astNode)==null?void 0:n.$type)=="string"?this._astNode:(r=this.container)==null?void 0:r.astNode;if(!e)throw new Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}}class sl extends ep{get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,n,r,i,s=!1){super(),this._hidden=s,this._offset=e,this._tokenType=i,this._length=n,this._range=r}}class Xl extends ep{constructor(){super(...arguments),this.content=new Jl(this)}get offset(){var e;return((e=this.firstNonHiddenNode)==null?void 0:e.offset)??0}get length(){return this.end-this.offset}get end(){var e;return((e=this.lastNonHiddenNode)==null?void 0:e.end)??0}get range(){const e=this.firstNonHiddenNode,n=this.lastNonHiddenNode;if(e&&n){if(this._rangeCache===void 0){const{range:r}=e,{range:i}=n;this._rangeCache={start:r.start,end:i.end.line<r.start.line?r.start:i.end}}return this._rangeCache}else return{start:ee.create(0,0),end:ee.create(0,0)}}get firstNonHiddenNode(){for(const e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){const n=this.content[e];if(!n.hidden)return n}return this.content[this.content.length-1]}}class Jl extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,Jl.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,n,...r){return this.addParents(r),super.splice(e,n,...r)}addParents(e){for(const n of e)n.container=this.parent}}class tp extends Xl{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}const al=Symbol("Datatype");function wo(t){return t.$type===al}const Hu="",np=t=>t.endsWith(Hu)?t:t+Hu;class rp{constructor(e){var i;this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const n=this.lexer.definition,r=e.LanguageMetaData.mode==="production";(i=e.shared.profilers.LangiumProfiler)!=null&&i.isActive("parsing")?this.wrapper=new GR(n,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider},e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new sp(n,{...e.parser.ParserConfig,skipValidations:r,errorMessageProvider:e.parser.ParserErrorMessageProvider})}alternatives(e,n){this.wrapper.wrapOr(e,n)}optional(e,n){this.wrapper.wrapOption(e,n)}many(e,n){this.wrapper.wrapMany(e,n)}atLeastOne(e,n){this.wrapper.wrapAtLeastOne(e,n)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}}class xR extends rp{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new OR,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,n){const r=this.computeRuleType(e);let i;da(e)&&(i=e.name,this.registerPrecedenceMap(e));const s=this.wrapper.DEFINE_RULE(np(e.name),this.startImplementation(r,i,n).bind(this));return this.allRules.set(e.name,s),on(e)&&e.entry&&(this.mainRule=s),s}registerPrecedenceMap(e){const n=e.name,r=new Map;for(let i=0;i<e.operators.precedences.length;i++){const s=e.operators.precedences[i];for(const a of s.operators)r.set(a.value,{precedence:i,rightAssoc:s.associativity==="right"})}this.operatorPrecedence.set(n,r)}computeRuleType(e){return da(e)?Hi(e):e.fragment?void 0:ch(e)?al:Hi(e)}parse(e,n={}){this.nodeBuilder.buildRootNode(e);const r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;const i=n.rule?this.allRules.get(n.rule):this.mainRule;if(!i)throw new Error(n.rule?`No rule found with name '${n.rule}'`:"No main rule available.");const s=this.doParse(i);return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,Go(s,{deep:!0}),{value:s,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}doParse(e){let n=this.wrapper.rule(e);if(this.stack.length>0&&(n=this.construct()),n===void 0)throw new Error("No result from parser");if(this.stack.length>0)throw new Error("Parser stack is not empty after parsing");return n}startImplementation(e,n,r){return i=>{const s=!this.isRecording()&&e!==void 0;if(s){const a={$type:e};this.stack.push(a),e===al?a.value="":n!==void 0&&(a.$infixName=n)}return r(i),s?this.construct():void 0}}extractHiddenTokens(e){const n=this.lexerResult.hidden;if(!n.length)return[];const r=e.startOffset;for(let i=0;i<n.length;i++)if(n[i].startOffset>r)return n.splice(0,i);return n.splice(0,n.length)}consume(e,n,r){const i=this.wrapper.wrapConsume(e,n);if(!this.isRecording()&&this.isValidToken(i)){const s=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(s);const a=this.nodeBuilder.buildLeafNode(i,r),{assignment:o,crossRef:c}=this.getAssignment(r),l=this.current;if(o){const d=Kn(r)?i.image:this.converter.convert(i.image,a);this.assign(o.operator,o.feature,d,a,c)}else if(wo(l)){let d=i.image;Kn(r)||(d=this.converter.convert(d,a).toString()),l.value+=d}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,n,r,i,s){let a;!this.isRecording()&&!r&&(a=this.nodeBuilder.buildCompositeNode(i));let o;try{o=this.wrapper.wrapSubrule(e,n,s)}finally{this.isRecording()||(o===void 0&&!r&&(o=this.construct()),o!==void 0&&a&&a.length>0&&this.performSubruleAssignment(o,i,a))}}performSubruleAssignment(e,n,r){const{assignment:i,crossRef:s}=this.getAssignment(n);if(i)this.assign(i.operator,i.feature,e,r,s);else if(!i){const a=this.current;if(wo(a))a.value+=e.toString();else if(typeof e=="object"&&e){const c=this.assignWithoutOverride(e,a);this.stack.pop(),this.stack.push(c)}}}action(e,n){if(!this.isRecording()){let r=this.current;if(n.feature&&n.operator){r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode),this.nodeBuilder.buildCompositeNode(n).content.push(r.$cstNode);const s={$type:e};this.stack.push(s),this.assign(n.operator,n.feature,r,r.$cstNode)}else r.$type=e}}construct(){if(this.isRecording())return;const e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):wo(e)?this.converter.convert(e.value,e.$cstNode):(zm(this.astReflection,e),e)}constructInfix(e,n){const r=e.parts;if(!Array.isArray(r)||r.length===0)return;const i=e.operators;if(!Array.isArray(i)||r.length<2)return r[0];let s=0,a=-1;for(let w=0;w<i.length;w++){const D=i[w],N=n.get(D)??{precedence:1/0,rightAssoc:!1};N.precedence>a?(a=N.precedence,s=w):N.precedence===a&&(N.rightAssoc||(s=w))}const o=i.slice(0,s),c=i.slice(s+1),l=r.slice(0,s+1),d=r.slice(s+1),h={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:l,operators:o},p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:d,operators:c},g=this.constructInfix(h,n),C=this.constructInfix(p,n);return{$type:e.$type,$cstNode:e.$cstNode,left:g,operator:i[s],right:C}}getAssignment(e){if(!this.assignmentMap.has(e)){const n=za(e,Vn);this.assignmentMap.set(e,{assignment:n,crossRef:n&&qa(n.terminal)?n.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,n,r,i,s){const a=this.current;let o;switch(s==="single"&&typeof r=="string"?o=this.linker.buildReference(a,n,i,r):s==="multi"&&typeof r=="string"?o=this.linker.buildMultiReference(a,n,i,r):o=r,e){case"=":{a[n]=o;break}case"?=":{a[n]=!0;break}case"+=":Array.isArray(a[n])||(a[n]=[]),a[n].push(o)}}assignWithoutOverride(e,n){for(const[i,s]of Object.entries(n)){const a=e[i];a===void 0?e[i]=s:Array.isArray(a)&&Array.isArray(s)&&(s.push(...a),e[i]=s)}const r=e.$cstNode;return r&&(r.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}}class DR{buildMismatchTokenMessage(e){return kr.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return kr.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return kr.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return kr.buildEarlyExitMessage(e)}}class ip extends DR{buildMismatchTokenMessage({expected:e,actual:n}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${n.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}}class MR extends rp{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();const n=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=n.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,n){const r=this.wrapper.DEFINE_RULE(np(e.name),this.startImplementation(n).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return n=>{const r=this.keepStackSize();try{e(n)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){const e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,n,r){this.wrapper.wrapConsume(e,n),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,n,r,i,s){this.before(i),this.wrapper.wrapSubrule(e,n,s),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){const n=this.elementStack.lastIndexOf(e);n>=0&&this.elementStack.splice(n)}}get currIdx(){return this.wrapper.currIdx}}const FR={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new ip};class sp extends BT{constructor(e,n){const r=n&&"maxLookahead"in n;super(e,{...FR,lookaheadStrategy:r?new ql({maxLookahead:n.maxLookahead}):new uR({logging:n.skipValidations?()=>{}:void 0}),...n})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,n,r){return this.RULE(e,n,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,n){return this.consume(e,n,void 0)}wrapSubrule(e,n,r){return this.subrule(e,n,{ARGS:[r]})}wrapOr(e,n){this.or(e,n)}wrapOption(e,n){this.option(e,n)}wrapMany(e,n){this.many(e,n)}wrapAtLeastOne(e,n){this.atLeastOne(e,n)}rule(e){return e.call(this,{})}}class GR extends sp{constructor(e,n,r){super(e,n),this.task=r}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,n,r){this.task.startSubTask(this.ruleName(n));try{return super.subrule(e,n,r)}finally{this.task.stopSubTask(this.ruleName(n))}}}function ap(t,e,n){return UR({parser:e,tokens:n,ruleNames:new Map},t),e}function UR(t,e){const n=rh(e,!1),r=he(e.rules).filter(on).filter(s=>n.has(s));for(const s of r){const a={...t,consume:1,optional:1,subrule:1,many:1,or:1};t.parser.rule(s,Jn(a,s.definition))}const i=he(e.rules).filter(da).filter(s=>n.has(s));for(const s of i)t.parser.rule(s,jR(t,s))}function jR(t,e){const n=e.call.rule.ref;if(!n)throw new Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(cn(n))throw new Error("Cannot use terminal rule in infix expression");const r=e.operators.precedences.flatMap(g=>g.operators),i={$type:"Group",elements:[]},s={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},a={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(s,a);const c={$container:a,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:r}},l={...s,$container:a};a.elements.push(c,l);const h=r.map(g=>t.tokens[g.value]).map((g,C)=>({ALT:()=>t.parser.consume(C,g,c)}));let p;return g=>{p??(p=Ql(t,n)),t.parser.subrule(0,p,!1,s,g),t.parser.many(0,{DEF:()=>{t.parser.alternatives(0,h),t.parser.subrule(1,p,!1,l,g)}})}}function Jn(t,e,n=!1){let r;if(Kn(e))r=HR(t,e);else if(Ba(e))r=zR(t,e);else if(Vn(e))r=Jn(t,e.terminal);else if(qa(e))r=op(t,e);else if(Hn(e))r=BR(t,e);else if(Xf(e))r=WR(t,e);else if(Qf(e))r=VR(t,e);else if(Dl(e))r=KR(t,e);else if(Hm(e)){const i=t.consume++;r=()=>t.parser.consume(i,Sn,e)}else throw new eh(e.$cstNode,`Unexpected element type: ${e.$type}`);return cp(t,n?void 0:$a(e),r,e.cardinality)}function zR(t,e){const n=Hi(e);return()=>t.parser.action(n,e)}function BR(t,e){const n=e.rule.ref;if(us(n)){const r=t.subrule++,i=on(n)&&n.fragment,s=e.arguments.length>0?qR(n,e.arguments):()=>({});let a;return o=>{a??(a=Ql(t,n)),t.parser.subrule(r,a,i,e,s(o))}}else if(cn(n)){const r=t.consume++,i=ol(t,n.name);return()=>t.parser.consume(r,i,e)}else if(n)ds();else throw new eh(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function qR(t,e){if(e.some(r=>r.calledByName)){const r=e.map(i=>{var s,a;return{parameterName:(a=(s=i.parameter)==null?void 0:s.ref)==null?void 0:a.name,predicate:Ft(i.value)}});return i=>{const s={};for(const{parameterName:a,predicate:o}of r)a&&(s[a]=o(i));return s}}else{const r=e.map(i=>Ft(i.value));return i=>{const s={};for(let a=0;a<r.length;a++)if(a<t.parameters.length){const o=t.parameters[a].name,c=r[a];s[o]=c(i)}return s}}}function Ft(t){if(Km(t)){const e=Ft(t.left),n=Ft(t.right);return r=>e(r)||n(r)}else if(Vm(t)){const e=Ft(t.left),n=Ft(t.right);return r=>e(r)&&n(r)}else if(Jm(t)){const e=Ft(t.value);return n=>!e(n)}else if(Qm(t)){const e=t.parameter.ref.name;return n=>n!==void 0&&n[e]===!0}else if(qm(t)){const e=!!t.true;return()=>e}ds()}function WR(t,e){if(e.elements.length===1)return Jn(t,e.elements[0]);{const n=[];for(const i of e.elements){const s={ALT:Jn(t,i,!0)},a=$a(i);a&&(s.GATE=Ft(a)),n.push(s)}const r=t.or++;return i=>t.parser.alternatives(r,n.map(s=>{const a={ALT:()=>s.ALT(i)},o=s.GATE;return o&&(a.GATE=()=>o(i)),a}))}}function VR(t,e){if(e.elements.length===1)return Jn(t,e.elements[0]);const n=[];for(const o of e.elements){const c={ALT:Jn(t,o,!0)},l=$a(o);l&&(c.GATE=Ft(l)),n.push(c)}const r=t.or++,i=(o,c)=>{const l=c.getRuleStack().join("-");return`uGroup_${o}_${l}`},s=o=>t.parser.alternatives(r,n.map((c,l)=>{const d={ALT:()=>!0},h=t.parser;d.ALT=()=>{if(c.ALT(o),!h.isRecording()){const g=i(r,h);h.unorderedGroups.get(g)||h.unorderedGroups.set(g,[]);const C=h.unorderedGroups.get(g);typeof(C==null?void 0:C[l])>"u"&&(C[l]=!0)}};const p=c.GATE;return p?d.GATE=()=>p(o):d.GATE=()=>{const g=h.unorderedGroups.get(i(r,h));return!(g!=null&&g[l])},d})),a=cp(t,$a(e),s,"*");return o=>{a(o),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(r,t.parser))}}function KR(t,e){const n=e.elements.map(r=>Jn(t,r));return r=>n.forEach(i=>i(r))}function $a(t){if(Dl(t))return t.guardCondition}function op(t,e,n=e.terminal){if(n)if(Hn(n)&&on(n.rule.ref)){const r=n.rule.ref,i=t.subrule++;let s;return a=>{s??(s=Ql(t,r)),t.parser.subrule(i,s,!1,e,a)}}else if(Hn(n)&&cn(n.rule.ref)){const r=t.consume++,i=ol(t,n.rule.ref.name);return()=>t.parser.consume(r,i,e)}else if(Kn(n)){const r=t.consume++,i=ol(t,n.value);return()=>t.parser.consume(r,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);const r=ah(e.type.ref),i=r==null?void 0:r.terminal;if(!i)throw new Error("Could not find name assignment for type: "+Hi(e.type.ref));return op(t,e,i)}}function HR(t,e){const n=t.consume++,r=t.tokens[e.value];if(!r)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(n,r,e)}function cp(t,e,n,r){const i=e&&Ft(e);if(!r)if(i){const s=t.or++;return a=>t.parser.alternatives(s,[{ALT:()=>n(a),GATE:()=>i(a)},{ALT:Bu(),GATE:()=>!i(a)}])}else return n;if(r==="*"){const s=t.many++;return a=>t.parser.many(s,{DEF:()=>n(a),GATE:i?()=>i(a):void 0})}else if(r==="+"){const s=t.many++;if(i){const a=t.or++;return o=>t.parser.alternatives(a,[{ALT:()=>t.parser.atLeastOne(s,{DEF:()=>n(o)}),GATE:()=>i(o)},{ALT:Bu(),GATE:()=>!i(o)}])}else return a=>t.parser.atLeastOne(s,{DEF:()=>n(a)})}else if(r==="?"){const s=t.optional++;return a=>t.parser.optional(s,{DEF:()=>n(a),GATE:i?()=>i(a):void 0})}else ds()}function Ql(t,e){const n=YR(t,e),r=t.parser.getRule(n);if(!r)throw new Error(`Rule "${n}" not found."`);return r}function YR(t,e){if(us(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let n=e,r=n.$container,i=e.$type;for(;!on(r);)(Dl(r)||Xf(r)||Qf(r))&&(i=r.elements.indexOf(n).toString()+":"+i),n=r,r=r.$container;return i=r.name+":"+i,t.ruleNames.set(e,i),i}}function ol(t,e){const n=t.tokens[e];if(!n)throw new Error(`Token "${e}" not found."`);return n}function XR(t){const e=t.Grammar,n=t.parser.Lexer,r=new MR(t);return ap(e,r,n.definition),r.finalize(),r}function JR(t){const e=QR(t);return e.finalize(),e}function QR(t){const e=t.Grammar,n=t.parser.Lexer,r=new xR(t);return ap(e,r,n.definition)}class lp{constructor(){this.diagnostics=[]}buildTokens(e,n){const r=he(rh(e,!1)),i=this.buildTerminalTokens(r),s=this.buildKeywordTokens(r,i,n);return s.push(...i),s}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){const e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(cn).filter(n=>!n.fragment).map(n=>this.buildTerminalToken(n)).toArray()}buildTerminalToken(e){const n=Fl(e),r=this.requiresCustomPattern(n)?this.regexPatternFunction(n):n,i={name:e.name,PATTERN:r};return typeof r=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=nh(n)?rt.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){const n=new RegExp(e,e.flags+"y");return(r,i)=>(n.lastIndex=i,n.exec(r))}buildKeywordTokens(e,n,r){return e.filter(us).flatMap(i=>ls(i).filter(Kn)).distinct(i=>i.value).toArray().sort((i,s)=>s.value.length-i.value.length).map(i=>this.buildKeywordToken(i,n,!!(r!=null&&r.caseInsensitive)))}buildKeywordToken(e,n,r){const i=this.buildKeywordPattern(e,r),s={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,n)};return typeof i=="function"&&(s.LINE_BREAKS=!0),s}buildKeywordPattern(e,n){return n?new RegExp(Va(e.value),"i"):e.value}findLongerAlt(e,n){return n.reduce((r,i)=>{const s=i==null?void 0:i.PATTERN;return s!=null&&s.source&&Ag("^"+s.source+"$",e.value)&&r.push(i),r},[])}}class up{convert(e,n){let r=n.grammarSource;if(qa(r)&&(r=Ng(r)),Hn(r)){const i=r.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,n)}return e}runConverter(e,n,r){var i;switch(e.name.toUpperCase()){case"INT":return Ht.convertInt(n);case"STRING":return Ht.convertString(n);case"ID":return Ht.convertID(n)}switch((i=Lg(e))==null?void 0:i.toLowerCase()){case"number":return Ht.convertNumber(n);case"boolean":return Ht.convertBoolean(n);case"bigint":return Ht.convertBigint(n);case"date":return Ht.convertDate(n);default:return n}}}var Ht;(function(t){function e(l){let d="";for(let h=1;h<l.length-1;h++){const p=l.charAt(h);if(p==="\\"){const g=l.charAt(++h);d+=n(g)}else d+=p}return d}t.convertString=e;function n(l){switch(l){case"b":return"\b";case"f":return"\f";case"n":return`
|
|
121
|
-
`;case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return l}}function r(l){return l.charAt(0)==="^"?l.substring(1):l}t.convertID=r;function i(l){return parseInt(l)}t.convertInt=i;function s(l){return BigInt(l)}t.convertBigint=s;function a(l){return new Date(l)}t.convertDate=a;function o(l){return Number(l)}t.convertNumber=o;function c(l){return l.toLowerCase()==="true"}t.convertBoolean=c})(Ht||(Ht={}));var kn={},ln={};Object.defineProperty(ln,"__esModule",{value:!0});let cl;function ll(){if(cl===void 0)throw new Error("No runtime abstraction layer installed");return cl}(function(t){function e(n){if(n===void 0)throw new Error("No runtime abstraction layer provided");cl=n}t.install=e})(ll||(ll={}));ln.default=ll;var Ie={};Object.defineProperty(Ie,"__esModule",{value:!0});Ie.stringArray=Ie.array=Ie.func=Ie.error=Ie.number=Ie.string=Ie.boolean=void 0;function ZR(t){return t===!0||t===!1}Ie.boolean=ZR;function dp(t){return typeof t=="string"||t instanceof String}Ie.string=dp;function ev(t){return typeof t=="number"||t instanceof Number}Ie.number=ev;function tv(t){return t instanceof Error}Ie.error=tv;function nv(t){return typeof t=="function"}Ie.func=nv;function fp(t){return Array.isArray(t)}Ie.array=fp;function rv(t){return fp(t)&&t.every(e=>dp(e))}Ie.stringArray=rv;var jt={};Object.defineProperty(jt,"__esModule",{value:!0});var hp=jt.Emitter=jt.Event=void 0;const iv=ln;var Yu;(function(t){const e={dispose(){}};t.None=function(){return e}})(Yu||(jt.Event=Yu={}));class sv{add(e,n=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(n),Array.isArray(r)&&r.push({dispose:()=>this.remove(e,n)})}remove(e,n=null){if(!this._callbacks)return;let r=!1;for(let i=0,s=this._callbacks.length;i<s;i++)if(this._callbacks[i]===e)if(this._contexts[i]===n){this._callbacks.splice(i,1),this._contexts.splice(i,1);return}else r=!0;if(r)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];const n=[],r=this._callbacks.slice(0),i=this._contexts.slice(0);for(let s=0,a=r.length;s<a;s++)try{n.push(r[s].apply(i[s],e))}catch(o){(0,iv.default)().console.error(o)}return n}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}}class eo{constructor(e){this._options=e}get event(){return this._event||(this._event=(e,n,r)=>{this._callbacks||(this._callbacks=new sv),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,n);const i={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,n),i.dispose=eo._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(r)&&r.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}}hp=jt.Emitter=eo;eo._noop=function(){};var me;Object.defineProperty(kn,"__esModule",{value:!0});var Zl=kn.CancellationTokenSource=me=kn.CancellationToken=void 0;const av=ln,ov=Ie,ul=jt;var Pa;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ul.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:ul.Event.None});function e(n){const r=n;return r&&(r===t.None||r===t.Cancelled||ov.boolean(r.isCancellationRequested)&&!!r.onCancellationRequested)}t.is=e})(Pa||(me=kn.CancellationToken=Pa={}));const cv=Object.freeze(function(t,e){const n=(0,av.default)().timer.setTimeout(t.bind(e),0);return{dispose(){n.dispose()}}});class Xu{constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?cv:(this._emitter||(this._emitter=new ul.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}}class lv{get token(){return this._token||(this._token=new Xu),this._token}cancel(){this._token?this._token.cancel():this._token=Pa.Cancelled}dispose(){this._token?this._token instanceof Xu&&this._token.dispose():this._token=Pa.None}}Zl=kn.CancellationTokenSource=lv;function uv(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}let aa=0,dv=10;function fv(){return aa=performance.now(),new Zl}const Nr=Symbol("OperationCancelled");function to(t){return t===Nr}async function Je(t){if(t===me.None)return;const e=performance.now();if(e-aa>=dv&&(aa=e,await uv(),aa=performance.now()),t.isCancellationRequested)throw Nr}class eu{constructor(){this.promise=new Promise((e,n)=>{this.resolve=r=>(e(r),this),this.reject=r=>(n(r),this)})}}class ns{constructor(e,n,r,i){this._uri=e,this._languageId=n,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const n=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(n,r)}return this._content}update(e,n){for(const r of e)if(ns.isIncremental(r)){const i=mp(r.range),s=this.offsetAt(i.start),a=this.offsetAt(i.end);this._content=this._content.substring(0,s)+r.text+this._content.substring(a,this._content.length);const o=Math.max(i.start.line,0),c=Math.max(i.end.line,0);let l=this._lineOffsets;const d=Ju(r.text,!1,s);if(c-o===d.length)for(let p=0,g=d.length;p<g;p++)l[p+o+1]=d[p];else d.length<1e4?l.splice(o+1,c-o,...d):this._lineOffsets=l=l.slice(0,o+1).concat(d,l.slice(c+1));const h=r.text.length-(a-s);if(h!==0)for(let p=o+1+d.length,g=l.length;p<g;p++)l[p]=l[p]+h}else if(ns.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=n}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=Ju(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);const n=this.getLineOffsets();let r=0,i=n.length;if(i===0)return{line:0,character:e};for(;r<i;){const a=Math.floor((r+i)/2);n[a]>e?i=a:r=a+1}const s=r-1;return e=this.ensureBeforeEOL(e,n[s]),{line:s,character:e-n[s]}}offsetAt(e){const n=this.getLineOffsets();if(e.line>=n.length)return this._content.length;if(e.line<0)return 0;const r=n[e.line];if(e.character<=0)return r;const i=e.line+1<n.length?n[e.line+1]:this._content.length,s=Math.min(r+e.character,i);return this.ensureBeforeEOL(s,r)}ensureBeforeEOL(e,n){for(;e>n&&pp(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){const n=e;return n!=null&&typeof n.text=="string"&&n.range!==void 0&&(n.rangeLength===void 0||typeof n.rangeLength=="number")}static isFull(e){const n=e;return n!=null&&typeof n.text=="string"&&n.range===void 0&&n.rangeLength===void 0}}var dl;(function(t){function e(i,s,a,o){return new ns(i,s,a,o)}t.create=e;function n(i,s,a){if(i instanceof ns)return i.update(s,a),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=n;function r(i,s){const a=i.getText(),o=fl(s.map(hv),(d,h)=>{const p=d.range.start.line-h.range.start.line;return p===0?d.range.start.character-h.range.start.character:p});let c=0;const l=[];for(const d of o){const h=i.offsetAt(d.range.start);if(h<c)throw new Error("Overlapping edit");h>c&&l.push(a.substring(c,h)),d.newText.length&&l.push(d.newText),c=i.offsetAt(d.range.end)}return l.push(a.substr(c)),l.join("")}t.applyEdits=r})(dl||(dl={}));function fl(t,e){if(t.length<=1)return t;const n=t.length/2|0,r=t.slice(0,n),i=t.slice(n);fl(r,e),fl(i,e);let s=0,a=0,o=0;for(;s<r.length&&a<i.length;)e(r[s],i[a])<=0?t[o++]=r[s++]:t[o++]=i[a++];for(;s<r.length;)t[o++]=r[s++];for(;a<i.length;)t[o++]=i[a++];return t}function Ju(t,e,n=0){const r=e?[n]:[];for(let i=0;i<t.length;i++){const s=t.charCodeAt(i);pp(s)&&(s===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,r.push(n+i+1))}return r}function pp(t){return t===13||t===10}function mp(t){const e=t.start,n=t.end;return e.line>n.line||e.line===n.line&&e.character>n.character?{start:n,end:e}:t}function hv(t){const e=mp(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var gp;(()=>{var t={975:k=>{function E(y){if(typeof y!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(y))}function m(y,T){for(var v,$="",x=0,P=-1,z=0,G=0;G<=y.length;++G){if(G<y.length)v=y.charCodeAt(G);else{if(v===47)break;v=47}if(v===47){if(!(P===G-1||z===1))if(P!==G-1&&z===2){if($.length<2||x!==2||$.charCodeAt($.length-1)!==46||$.charCodeAt($.length-2)!==46){if($.length>2){var se=$.lastIndexOf("/");if(se!==$.length-1){se===-1?($="",x=0):x=($=$.slice(0,se)).length-1-$.lastIndexOf("/"),P=G,z=0;continue}}else if($.length===2||$.length===1){$="",x=0,P=G,z=0;continue}}T&&($.length>0?$+="/..":$="..",x=2)}else $.length>0?$+="/"+y.slice(P+1,G):$=y.slice(P+1,G),x=G-P-1;P=G,z=0}else v===46&&z!==-1?++z:z=-1}return $}var S={resolve:function(){for(var y,T="",v=!1,$=arguments.length-1;$>=-1&&!v;$--){var x;$>=0?x=arguments[$]:(y===void 0&&(y=process.cwd()),x=y),E(x),x.length!==0&&(T=x+"/"+T,v=x.charCodeAt(0)===47)}return T=m(T,!v),v?T.length>0?"/"+T:"/":T.length>0?T:"."},normalize:function(y){if(E(y),y.length===0)return".";var T=y.charCodeAt(0)===47,v=y.charCodeAt(y.length-1)===47;return(y=m(y,!T)).length!==0||T||(y="."),y.length>0&&v&&(y+="/"),T?"/"+y:y},isAbsolute:function(y){return E(y),y.length>0&&y.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var y,T=0;T<arguments.length;++T){var v=arguments[T];E(v),v.length>0&&(y===void 0?y=v:y+="/"+v)}return y===void 0?".":S.normalize(y)},relative:function(y,T){if(E(y),E(T),y===T||(y=S.resolve(y))===(T=S.resolve(T)))return"";for(var v=1;v<y.length&&y.charCodeAt(v)===47;++v);for(var $=y.length,x=$-v,P=1;P<T.length&&T.charCodeAt(P)===47;++P);for(var z=T.length-P,G=x<z?x:z,se=-1,q=0;q<=G;++q){if(q===G){if(z>G){if(T.charCodeAt(P+q)===47)return T.slice(P+q+1);if(q===0)return T.slice(P+q)}else x>G&&(y.charCodeAt(v+q)===47?se=q:q===0&&(se=0));break}var te=y.charCodeAt(v+q);if(te!==T.charCodeAt(P+q))break;te===47&&(se=q)}var De="";for(q=v+se+1;q<=$;++q)q!==$&&y.charCodeAt(q)!==47||(De.length===0?De+="..":De+="/..");return De.length>0?De+T.slice(P+se):(P+=se,T.charCodeAt(P)===47&&++P,T.slice(P))},_makeLong:function(y){return y},dirname:function(y){if(E(y),y.length===0)return".";for(var T=y.charCodeAt(0),v=T===47,$=-1,x=!0,P=y.length-1;P>=1;--P)if((T=y.charCodeAt(P))===47){if(!x){$=P;break}}else x=!1;return $===-1?v?"/":".":v&&$===1?"//":y.slice(0,$)},basename:function(y,T){if(T!==void 0&&typeof T!="string")throw new TypeError('"ext" argument must be a string');E(y);var v,$=0,x=-1,P=!0;if(T!==void 0&&T.length>0&&T.length<=y.length){if(T.length===y.length&&T===y)return"";var z=T.length-1,G=-1;for(v=y.length-1;v>=0;--v){var se=y.charCodeAt(v);if(se===47){if(!P){$=v+1;break}}else G===-1&&(P=!1,G=v+1),z>=0&&(se===T.charCodeAt(z)?--z==-1&&(x=v):(z=-1,x=G))}return $===x?x=G:x===-1&&(x=y.length),y.slice($,x)}for(v=y.length-1;v>=0;--v)if(y.charCodeAt(v)===47){if(!P){$=v+1;break}}else x===-1&&(P=!1,x=v+1);return x===-1?"":y.slice($,x)},extname:function(y){E(y);for(var T=-1,v=0,$=-1,x=!0,P=0,z=y.length-1;z>=0;--z){var G=y.charCodeAt(z);if(G!==47)$===-1&&(x=!1,$=z+1),G===46?T===-1?T=z:P!==1&&(P=1):T!==-1&&(P=-1);else if(!x){v=z+1;break}}return T===-1||$===-1||P===0||P===1&&T===$-1&&T===v+1?"":y.slice(T,$)},format:function(y){if(y===null||typeof y!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof y);return function(T,v){var $=v.dir||v.root,x=v.base||(v.name||"")+(v.ext||"");return $?$===v.root?$+x:$+"/"+x:x}(0,y)},parse:function(y){E(y);var T={root:"",dir:"",base:"",ext:"",name:""};if(y.length===0)return T;var v,$=y.charCodeAt(0),x=$===47;x?(T.root="/",v=1):v=0;for(var P=-1,z=0,G=-1,se=!0,q=y.length-1,te=0;q>=v;--q)if(($=y.charCodeAt(q))!==47)G===-1&&(se=!1,G=q+1),$===46?P===-1?P=q:te!==1&&(te=1):P!==-1&&(te=-1);else if(!se){z=q+1;break}return P===-1||G===-1||te===0||te===1&&P===G-1&&P===z+1?G!==-1&&(T.base=T.name=z===0&&x?y.slice(1,G):y.slice(z,G)):(z===0&&x?(T.name=y.slice(1,P),T.base=y.slice(1,G)):(T.name=y.slice(z,P),T.base=y.slice(z,G)),T.ext=y.slice(P,G)),z>0?T.dir=y.slice(0,z-1):x&&(T.dir="/"),T},sep:"/",delimiter:":",win32:null,posix:null};S.posix=S,k.exports=S}},e={};function n(k){var E=e[k];if(E!==void 0)return E.exports;var m=e[k]={exports:{}};return t[k](m,m.exports,n),m.exports}n.d=(k,E)=>{for(var m in E)n.o(E,m)&&!n.o(k,m)&&Object.defineProperty(k,m,{enumerable:!0,get:E[m]})},n.o=(k,E)=>Object.prototype.hasOwnProperty.call(k,E),n.r=k=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(k,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(k,"__esModule",{value:!0})};var r={};let i;n.r(r),n.d(r,{URI:()=>p,Utils:()=>Se}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);const s=/^\w[\w\d+.-]*$/,a=/^\//,o=/^\/\//;function c(k,E){if(!k.scheme&&E)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${k.authority}", path: "${k.path}", query: "${k.query}", fragment: "${k.fragment}"}`);if(k.scheme&&!s.test(k.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(k.path){if(k.authority){if(!a.test(k.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(o.test(k.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}const l="",d="/",h=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{constructor(E,m,S,y,T,v=!1){fn(this,"scheme");fn(this,"authority");fn(this,"path");fn(this,"query");fn(this,"fragment");typeof E=="object"?(this.scheme=E.scheme||l,this.authority=E.authority||l,this.path=E.path||l,this.query=E.query||l,this.fragment=E.fragment||l):(this.scheme=function($,x){return $||x?$:"file"}(E,v),this.authority=m||l,this.path=function($,x){switch($){case"https":case"http":case"file":x?x[0]!==d&&(x=d+x):x=d}return x}(this.scheme,S||l),this.query=y||l,this.fragment=T||l,c(this,v))}static isUri(E){return E instanceof p||!!E&&typeof E.authority=="string"&&typeof E.fragment=="string"&&typeof E.path=="string"&&typeof E.query=="string"&&typeof E.scheme=="string"&&typeof E.fsPath=="string"&&typeof E.with=="function"&&typeof E.toString=="function"}get fsPath(){return L(this)}with(E){if(!E)return this;let{scheme:m,authority:S,path:y,query:T,fragment:v}=E;return m===void 0?m=this.scheme:m===null&&(m=l),S===void 0?S=this.authority:S===null&&(S=l),y===void 0?y=this.path:y===null&&(y=l),T===void 0?T=this.query:T===null&&(T=l),v===void 0?v=this.fragment:v===null&&(v=l),m===this.scheme&&S===this.authority&&y===this.path&&T===this.query&&v===this.fragment?this:new C(m,S,y,T,v)}static parse(E,m=!1){const S=h.exec(E);return S?new C(S[2]||l,re(S[4]||l),re(S[5]||l),re(S[7]||l),re(S[9]||l),m):new C(l,l,l,l,l)}static file(E){let m=l;if(i&&(E=E.replace(/\\/g,d)),E[0]===d&&E[1]===d){const S=E.indexOf(d,2);S===-1?(m=E.substring(2),E=d):(m=E.substring(2,S),E=E.substring(S)||d)}return new C("file",m,E,l,l)}static from(E){const m=new C(E.scheme,E.authority,E.path,E.query,E.fragment);return c(m,!0),m}toString(E=!1){return b(this,E)}toJSON(){return this}static revive(E){if(E){if(E instanceof p)return E;{const m=new C(E);return m._formatted=E.external,m._fsPath=E._sep===g?E.fsPath:null,m}}return E}}const g=i?1:void 0;class C extends p{constructor(){super(...arguments);fn(this,"_formatted",null);fn(this,"_fsPath",null)}get fsPath(){return this._fsPath||(this._fsPath=L(this)),this._fsPath}toString(m=!1){return m?b(this,!0):(this._formatted||(this._formatted=b(this,!1)),this._formatted)}toJSON(){const m={$mid:1};return this._fsPath&&(m.fsPath=this._fsPath,m._sep=g),this._formatted&&(m.external=this._formatted),this.path&&(m.path=this.path),this.scheme&&(m.scheme=this.scheme),this.authority&&(m.authority=this.authority),this.query&&(m.query=this.query),this.fragment&&(m.fragment=this.fragment),m}}const w={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function D(k,E,m){let S,y=-1;for(let T=0;T<k.length;T++){const v=k.charCodeAt(T);if(v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===45||v===46||v===95||v===126||E&&v===47||m&&v===91||m&&v===93||m&&v===58)y!==-1&&(S+=encodeURIComponent(k.substring(y,T)),y=-1),S!==void 0&&(S+=k.charAt(T));else{S===void 0&&(S=k.substr(0,T));const $=w[v];$!==void 0?(y!==-1&&(S+=encodeURIComponent(k.substring(y,T)),y=-1),S+=$):y===-1&&(y=T)}}return y!==-1&&(S+=encodeURIComponent(k.substring(y))),S!==void 0?S:k}function N(k){let E;for(let m=0;m<k.length;m++){const S=k.charCodeAt(m);S===35||S===63?(E===void 0&&(E=k.substr(0,m)),E+=w[S]):E!==void 0&&(E+=k[m])}return E!==void 0?E:k}function L(k,E){let m;return m=k.authority&&k.path.length>1&&k.scheme==="file"?`//${k.authority}${k.path}`:k.path.charCodeAt(0)===47&&(k.path.charCodeAt(1)>=65&&k.path.charCodeAt(1)<=90||k.path.charCodeAt(1)>=97&&k.path.charCodeAt(1)<=122)&&k.path.charCodeAt(2)===58?k.path[1].toLowerCase()+k.path.substr(2):k.path,i&&(m=m.replace(/\//g,"\\")),m}function b(k,E){const m=E?N:D;let S="",{scheme:y,authority:T,path:v,query:$,fragment:x}=k;if(y&&(S+=y,S+=":"),(T||y==="file")&&(S+=d,S+=d),T){let P=T.indexOf("@");if(P!==-1){const z=T.substr(0,P);T=T.substr(P+1),P=z.lastIndexOf(":"),P===-1?S+=m(z,!1,!1):(S+=m(z.substr(0,P),!1,!1),S+=":",S+=m(z.substr(P+1),!1,!0)),S+="@"}T=T.toLowerCase(),P=T.lastIndexOf(":"),P===-1?S+=m(T,!1,!0):(S+=m(T.substr(0,P),!1,!0),S+=T.substr(P))}if(v){if(v.length>=3&&v.charCodeAt(0)===47&&v.charCodeAt(2)===58){const P=v.charCodeAt(1);P>=65&&P<=90&&(v=`/${String.fromCharCode(P+32)}:${v.substr(3)}`)}else if(v.length>=2&&v.charCodeAt(1)===58){const P=v.charCodeAt(0);P>=65&&P<=90&&(v=`${String.fromCharCode(P+32)}:${v.substr(2)}`)}S+=m(v,!0,!1)}return $&&(S+="?",S+=m($,!1,!1)),x&&(S+="#",S+=E?x:D(x,!1,!1)),S}function O(k){try{return decodeURIComponent(k)}catch{return k.length>3?k.substr(0,3)+O(k.substr(3)):k}}const J=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function re(k){return k.match(J)?k.replace(J,E=>O(E)):k}var ie=n(975);const we=ie.posix||ie,$e="/";var Se;(function(k){k.joinPath=function(E,...m){return E.with({path:we.join(E.path,...m)})},k.resolvePath=function(E,...m){let S=E.path,y=!1;S[0]!==$e&&(S=$e+S,y=!0);let T=we.resolve(S,...m);return y&&T[0]===$e&&!E.authority&&(T=T.substring(1)),E.with({path:T})},k.dirname=function(E){if(E.path.length===0||E.path===$e)return E;let m=we.dirname(E.path);return m.length===1&&m.charCodeAt(0)===46&&(m=""),E.with({path:m})},k.basename=function(E){return we.basename(E.path)},k.extname=function(E){return we.extname(E.path)}})(Se||(Se={})),gp=r})();const{URI:It,Utils:$i}=gp;var dt;(function(t){t.basename=$i.basename,t.dirname=$i.dirname,t.extname=$i.extname,t.joinPath=$i.joinPath,t.resolvePath=$i.resolvePath;const e=typeof process=="object"&&(process==null?void 0:process.platform)==="win32";function n(a,o){return(a==null?void 0:a.toString())===(o==null?void 0:o.toString())}t.equals=n;function r(a,o){const c=typeof a=="string"?It.parse(a).path:a.path,l=typeof o=="string"?It.parse(o).path:o.path,d=c.split("/").filter(w=>w.length>0),h=l.split("/").filter(w=>w.length>0);if(e){const w=/^[A-Z]:$/;if(d[0]&&w.test(d[0])&&(d[0]=d[0].toLowerCase()),h[0]&&w.test(h[0])&&(h[0]=h[0].toLowerCase()),d[0]!==h[0])return l.substring(1)}let p=0;for(;p<d.length&&d[p]===h[p];p++);const g="../".repeat(d.length-p),C=h.slice(p).join("/");return g+C}t.relative=r;function i(a){return It.parse(a.toString()).toString()}t.normalize=i;function s(a,o){let c=typeof a=="string"?a:a.path,l=typeof o=="string"?o:o.path;return l.charAt(l.length-1)==="/"&&(l=l.slice(0,-1)),c.charAt(c.length-1)==="/"&&(c=c.slice(0,-1)),l===c?!0:l.length<c.length||l.charAt(c.length)!=="/"?!1:l.startsWith(c)}t.contains=s})(dt||(dt={}));class pv{constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return dt.normalize(e)}clear(){this.root.children.clear()}insert(e,n){const r=this.getNode(this.normalizeUri(e),!0);r.element=n}delete(e){const n=this.getNode(this.normalizeUri(e),!1);n!=null&&n.parent&&n.parent.children.delete(n.name)}has(e){var n;return((n=this.getNode(this.normalizeUri(e),!1))==null?void 0:n.element)!==void 0}hasNode(e){return this.getNode(this.normalizeUri(e),!1)!==void 0}find(e){var n;return(n=this.getNode(this.normalizeUri(e),!1))==null?void 0:n.element}findNode(e){const n=this.normalizeUri(e),r=this.getNode(n,!1);if(r)return{name:r.name,uri:dt.joinPath(It.parse(n),r.name).toString(),element:r.element}}findChildren(e){const n=this.normalizeUri(e),r=this.getNode(n,!1);return r?Array.from(r.children.values()).map(i=>({name:i.name,uri:dt.joinPath(It.parse(n),i.name).toString(),element:i.element})):[]}all(){return this.collectValues(this.root)}findAll(e){const n=this.getNode(dt.normalize(e),!1);return n?this.collectValues(n):[]}getNode(e,n){const r=e.split("/");e.charAt(e.length-1)==="/"&&r.pop();let i=this.root;for(const s of r){let a=i.children.get(s);if(!a)if(n)a={name:s,children:new Map,parent:i},i.children.set(s,a);else return;i=a}return i}collectValues(e){const n=[];e.element&&n.push(e.element);for(const r of e.children.values())n.push(...this.collectValues(r));return n}}var K;(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(K||(K={}));class mv{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,n=me.None){const r=await this.fileSystemProvider.readFile(e);return this.createAsync(e,r,n)}fromTextDocument(e,n,r){return n=n??It.parse(e.uri),me.is(r)?this.createAsync(n,e,r):this.create(n,e,r)}fromString(e,n,r){return me.is(r)?this.createAsync(n,e,r):this.create(n,e,r)}fromModel(e,n){return this.create(n,{$model:e})}create(e,n,r){if(typeof n=="string"){const i=this.parse(e,n,r);return this.createLangiumDocument(i,e,void 0,n)}else if("$model"in n){const i={value:n.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{const i=this.parse(e,n.getText(),r);return this.createLangiumDocument(i,e,n)}}async createAsync(e,n,r){if(typeof n=="string"){const i=await this.parseAsync(e,n,r);return this.createLangiumDocument(i,e,void 0,n)}else{const i=await this.parseAsync(e,n.getText(),r);return this.createLangiumDocument(i,e,n)}}createLangiumDocument(e,n,r,i){let s;if(r)s={parseResult:e,uri:n,state:K.Parsed,references:[],textDocument:r};else{const a=this.createTextDocumentGetter(n,i);s={parseResult:e,uri:n,state:K.Parsed,references:[],get textDocument(){return a()}}}return e.value.$document=s,s}async update(e,n){var a,o;const r=(a=e.parseResult.value.$cstNode)==null?void 0:a.root.fullText,i=(o=this.textDocuments)==null?void 0:o.get(e.uri.toString()),s=i?i.getText():await this.fileSystemProvider.readFile(e.uri);if(i)Object.defineProperty(e,"textDocument",{value:i});else{const c=this.createTextDocumentGetter(e.uri,s);Object.defineProperty(e,"textDocument",{get:c})}return r!==s&&(e.parseResult=await this.parseAsync(e.uri,s,n),e.parseResult.value.$document=e),e.state=K.Parsed,e}parse(e,n,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(n,r)}parseAsync(e,n,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(n,r)}createTextDocumentGetter(e,n){const r=this.serviceRegistry;let i;return()=>i??(i=dl.create(e.toString(),r.getServices(e).LanguageMetaData.languageId,0,n??""))}}class gv{constructor(e){this.documentTrie=new pv,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return he(this.documentTrie.all())}addDocument(e){const n=e.uri.toString();if(this.documentTrie.has(n))throw new Error(`A document with the URI '${n}' is already present.`);this.documentTrie.insert(n,e)}getDocument(e){const n=e.toString();return this.documentTrie.find(n)}getDocuments(e){const n=e.toString();return this.documentTrie.findAll(n)}async getOrCreateDocument(e,n){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,n),this.addDocument(r),r)}createDocument(e,n,r){if(r)return this.langiumDocumentFactory.fromString(n,e,r).then(i=>(this.addDocument(i),i));{const i=this.langiumDocumentFactory.fromString(n,e);return this.addDocument(i),i}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){const n=e.toString(),r=this.documentTrie.find(n);return r&&this.documentBuilder().resetToState(r,K.Changed),r}deleteDocument(e){const n=e.toString(),r=this.documentTrie.find(n);return r&&(r.state=K.Changed,this.documentTrie.delete(n)),r}deleteDocuments(e){const n=e.toString(),r=this.documentTrie.findAll(n);for(const i of r)i.state=K.Changed;return this.documentTrie.delete(n),r}}const or=Symbol("RefResolving");class yv{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async link(e,n=me.None){var r;if((r=this.profiler)!=null&&r.isActive("linking")){const i=this.profiler.createTask("linking",this.languageId);i.start();try{for(const s of Zt(e.parseResult.value))await Je(n),ua(s).forEach(a=>{const o=`${s.$type}:${a.property}`;i.startSubTask(o);try{this.doLink(a,e)}finally{i.stopSubTask(o)}})}finally{i.stop()}}else for(const i of Zt(e.parseResult.value))await Je(n),ua(i).forEach(s=>this.doLink(s,e))}doLink(e,n){const r=e.reference;if("_ref"in r&&r._ref===void 0){r._ref=or;try{const i=this.getCandidate(e);if(ki(i))r._ref=i;else{r._nodeDescription=i;const s=this.loadAstNode(i);r._ref=s??this.createLinkingError(e,i)}}catch(i){console.error(`An error occurred while resolving reference to '${r.$refText}':`,i);const s=i.message??String(i);r._ref={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${s}`}}n.references.push(r)}else if("_items"in r&&r._items===void 0){r._items=or;try{const i=this.getCandidates(e),s=[];if(ki(i))r._linkingError=i;else for(const a of i){const o=this.loadAstNode(a);o&&s.push({ref:o,$nodeDescription:a})}r._items=s}catch(i){r._linkingError={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${i}`},r._items=[]}n.references.push(r)}}unlink(e){for(const n of e.references)"_ref"in n?(n._ref=void 0,delete n._nodeDescription):"_items"in n&&(n._items=void 0,delete n._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){const r=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(i=>`${i.documentUri}#${i.path}`).toArray();return r.length>0?r:this.createLinkingError(e)}buildReference(e,n,r,i){const s=this,a={$refNode:r,$refText:i,_ref:void 0,get ref(){if(Ke(this._ref))return this._ref;if(Um(this._nodeDescription)){const o=s.loadAstNode(this._nodeDescription);this._ref=o??s.createLinkingError({reference:a,container:e,property:n},this._nodeDescription)}else if(this._ref===void 0){this._ref=or;const o=Hs(e).$document,c=s.getLinkedNode({reference:a,container:e,property:n});if(c.error&&o&&o.state<K.ComputedScopes)return this._ref=void 0;this._ref=c.node??c.error,this._nodeDescription=c.descr,o==null||o.references.push(this)}else this._ref===or&&s.throwCyclicReferenceError(e,n,i);return Ke(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return ki(this._ref)?this._ref:void 0}};return a}buildMultiReference(e,n,r,i){const s=this,a={$refNode:r,$refText:i,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;if(this._items===void 0){this._items=or;const o=Hs(e).$document,c=s.getCandidates({reference:a,container:e,property:n}),l=[];if(ki(c))this._linkingError=c;else for(const d of c){const h=s.loadAstNode(d);h&&l.push({ref:h,$nodeDescription:d})}this._items=l,o==null||o.references.push(this)}else this._items===or&&s.throwCyclicReferenceError(e,n,i);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(!(this.items.length>0))return this._linkingError=s.createLinkingError({reference:a,container:e,property:n})}};return a}throwCyclicReferenceError(e,n,r){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${n} (symbol '${r}')`)}getLinkedNode(e){try{const n=this.getCandidate(e);if(ki(n))return{error:n};const r=this.loadAstNode(n);return r?{node:r,descr:n}:{descr:n,error:this.createLinkingError(e,n)}}catch(n){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,n);const r=n.message??String(n);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${r}`}}}}loadAstNode(e){if(e.node)return e.node;const n=this.langiumDocuments().getDocument(e.documentUri);if(n)return this.astNodeLocator.getAstNode(n.parseResult.value,e.path)}createLinkingError(e,n){const r=Hs(e.container).$document;r&&r.state<K.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);const i=this.reflection.getReferenceType(e);return{info:e,message:`Could not resolve reference to ${i} named '${e.reference.$refText}'.`,targetDescription:n}}}function Tv(t){return typeof t.name=="string"}class Rv{getName(e){if(Tv(e))return e.name}getNameNode(e){return sh(e.$cstNode,"name")}}class vv{constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator,this.documents=e.shared.workspace.LangiumDocuments,this.hasMultiReference=Zt(e.Grammar).some(n=>qa(n)&&n.isMulti)}findDeclarations(e){if(e){const n=$g(e),r=e.astNode;if(n&&r){const i=r[n.feature];if(wt(i)||pn(i))return lu(i);if(Array.isArray(i)){for(const s of i)if((wt(s)||pn(s))&&s.$refNode&&s.$refNode.offset<=e.offset&&s.$refNode.end>=e.end)return lu(s)}}if(r){const i=this.nameProvider.getNameNode(r);if(i&&(i===e||cg(e,i)))return this.getSelfNodes(r)}}return[]}getSelfNodes(e){if(this.hasMultiReference){const n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),r=this.getNodeFromReferenceDescription(n.head());if(r){for(const i of ua(r))if(pn(i.reference)&&i.reference.items.some(s=>s.ref===e))return i.reference.items.map(s=>s.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;const n=this.documents.getDocument(e.sourceUri);if(n)return this.nodeLocator.getAstNode(n.parseResult.value,e.sourcePath)}findDeclarationNodes(e){const n=this.findDeclarations(e),r=[];for(const i of n){const s=this.nameProvider.getNameNode(i)??i.$cstNode;s&&r.push(s)}return r}findReferences(e,n){const r=[];n.includeDeclaration&&r.push(...this.getSelfReferences(e));let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return n.documentUri&&(i=i.filter(s=>dt.equals(s.sourceUri,n.documentUri))),r.push(...i),he(r)}getSelfReferences(e){const n=this.getSelfNodes(e),r=[];for(const i of n){const s=this.nameProvider.getNameNode(i);if(s){const a=Qt(i),o=this.nodeLocator.getAstNodePath(i);r.push({sourceUri:a.uri,sourcePath:o,targetUri:a.uri,targetPath:o,segment:fa(s),local:!0})}}return r}}class rs{constructor(e){if(this.map=new Map,e)for(const[n,r]of e)this.add(n,r)}get size(){return Fo.sum(he(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,n){if(n===void 0)return this.map.delete(e);{const r=this.map.get(e);if(r){const i=r.indexOf(n);if(i>=0)return r.length===1?this.map.delete(e):r.splice(i,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){const n=this.map.get(e);return n?he(n):Hf}has(e,n){if(n===void 0)return this.map.has(e);{const r=this.map.get(e);return r?r.indexOf(n)>=0:!1}}add(e,n){return this.map.has(e)?this.map.get(e).push(n):this.map.set(e,[n]),this}addAll(e,n){return this.map.has(e)?this.map.get(e).push(...n):this.map.set(e,Array.from(n)),this}forEach(e){this.map.forEach((n,r)=>n.forEach(i=>e(i,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return he(this.map.entries()).flatMap(([e,n])=>n.map(r=>[e,r]))}keys(){return he(this.map.keys())}values(){return he(this.map.values()).flat()}entriesGroupedByKey(){return he(this.map.entries())}}class Qu{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[n,r]of e)this.set(n,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,n){return this.map.set(e,n),this.inverse.set(n,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){const n=this.map.get(e);return n!==void 0?(this.map.delete(e),this.inverse.delete(n),!0):!1}}class Ev{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,n=me.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,n)}async collectExportedSymbolsForNode(e,n,r=xl,i=me.None){const s=[];this.addExportedSymbol(e,s,n);for(const a of r(e))await Je(i),this.addExportedSymbol(a,s,n);return s}addExportedSymbol(e,n,r){const i=this.nameProvider.getName(e);i&&n.push(this.descriptions.createDescription(e,i,r))}async collectLocalSymbols(e,n=me.None){const r=e.parseResult.value,i=new rs;for(const s of ls(r))await Je(n),this.addLocalSymbol(s,e,i);return i}addLocalSymbol(e,n,r){const i=e.$container;if(i){const s=this.nameProvider.getName(e);s&&r.add(i,this.descriptions.createDescription(e,s,n))}}}class Zu{constructor(e,n,r){this.elements=e,this.outerScope=n,this.caseInsensitive=(r==null?void 0:r.caseInsensitive)??!1,this.concatOuterScope=(r==null?void 0:r.concatOuterScope)??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){const n=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.find(i=>i.name.toLowerCase()===n):this.elements.find(i=>i.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){const n=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.filter(i=>i.name.toLowerCase()===n):this.elements.filter(i=>i.name===e);return(this.concatOuterScope||r.isEmpty())&&this.outerScope?r.concat(this.outerScope.getElements(e)):r}}class Av{constructor(e,n,r){this.elements=new rs,this.caseInsensitive=(r==null?void 0:r.caseInsensitive)??!1,this.concatOuterScope=(r==null?void 0:r.concatOuterScope)??!0;for(const i of e){const s=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.add(s,i)}this.outerScope=n}getElement(e){const n=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(n)[0];if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){const n=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(n);return(this.concatOuterScope||r.length===0)&&this.outerScope?he(r).concat(this.outerScope.getElements(e)):he(r)}getAllElements(){let e=he(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}}class yp{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}}class Sv extends yp{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,n){this.throwIfDisposed(),this.cache.set(e,n)}get(e,n){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(n){const r=n();return this.cache.set(e,r),r}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}}class Cv extends yp{constructor(e){super(),this.cache=new Map,this.converter=e??(n=>n)}has(e,n){return this.throwIfDisposed(),this.cacheForContext(e).has(n)}set(e,n,r){this.throwIfDisposed(),this.cacheForContext(e).set(n,r)}get(e,n,r){this.throwIfDisposed();const i=this.cacheForContext(e);if(i.has(n))return i.get(n);if(r){const s=r();return i.set(n,s),s}else return}delete(e,n){return this.throwIfDisposed(),this.cacheForContext(e).delete(n)}clear(e){if(this.throwIfDisposed(),e){const n=this.converter(e);this.cache.delete(n)}else this.cache.clear()}cacheForContext(e){const n=this.converter(e);let r=this.cache.get(n);return r||(r=new Map,this.cache.set(n,r)),r}}class kv extends Sv{constructor(e,n){super(),n?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(n,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((r,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}class Nv{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new kv(e.shared)}getScope(e){const n=[],r=this.reflection.getReferenceType(e),i=Qt(e.container).localSymbols;if(i){let a=e.container;do i.has(a)&&n.push(i.getStream(a).filter(o=>this.reflection.isSubtype(o.type,r))),a=a.$container;while(a)}let s=this.getGlobalScope(r,e);for(let a=n.length-1;a>=0;a--)s=this.createScope(n[a],s);return s}createScope(e,n,r){return new Zu(he(e),n,r)}createScopeForNodes(e,n,r){const i=he(e).map(s=>{const a=this.nameProvider.getName(s);if(a)return this.descriptions.createDescription(s,a)}).nonNullable();return new Zu(i,n,r)}getGlobalScope(e,n){return this.globalScopeCache.get(e,()=>new Av(this.indexManager.allElements(e)))}}function wv(t){return typeof t.$comment=="string"}function ed(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}class bv{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,n){const r=n??{},i=n==null?void 0:n.replacer,s=(o,c)=>this.replacer(o,c,r),a=i?(o,c)=>i(o,c,s):s;try{return this.currentDocument=Qt(e),JSON.stringify(e,a,n==null?void 0:n.space)}finally{this.currentDocument=void 0}}deserialize(e,n){const r=n??{},i=JSON.parse(e);return this.linkNode(i,i,r),i}replacer(e,n,{refText:r,sourceText:i,textRegions:s,comments:a,uriConverter:o}){var c,l,d;if(!this.ignoreProperties.has(e))if(wt(n)){const h=n.ref,p=r?n.$refText:void 0;if(h){const g=Qt(h);let C="";this.currentDocument&&this.currentDocument!==g&&(o?C=o(g.uri,h):C=g.uri.toString());const w=this.astNodeLocator.getAstNodePath(h);return{$ref:`${C}#${w}`,$refText:p}}else return{$error:((c=n.error)==null?void 0:c.message)??"Could not resolve reference",$refText:p}}else if(pn(n)){const h=r?n.$refText:void 0,p=[];for(const g of n.items){const C=g.ref,w=Qt(g.ref);let D="";this.currentDocument&&this.currentDocument!==w&&(o?D=o(w.uri,C):D=w.uri.toString());const N=this.astNodeLocator.getAstNodePath(C);p.push(`${D}#${N}`)}return{$refs:p,$refText:h}}else if(Ke(n)){let h;if(s&&(h=this.addAstNodeRegionWithAssignmentsTo({...n}),(!e||n.$document)&&(h!=null&&h.$textRegion)&&(h.$textRegion.documentURI=(l=this.currentDocument)==null?void 0:l.uri.toString())),i&&!e&&(h??(h={...n}),h.$sourceText=(d=n.$cstNode)==null?void 0:d.text),a){h??(h={...n});const p=this.commentProvider.getComment(n);p&&(h.$comment=p.replace(/\r/g,""))}return h??n}else return n}addAstNodeRegionWithAssignmentsTo(e){const n=r=>({offset:r.offset,end:r.end,length:r.length,range:r.range});if(e.$cstNode){const r=e.$textRegion=n(e.$cstNode),i=r.assignments={};return Object.keys(e).filter(s=>!s.startsWith("$")).forEach(s=>{const a=bg(e.$cstNode,s).map(n);a.length!==0&&(i[s]=a)}),e}}linkNode(e,n,r,i,s,a){for(const[c,l]of Object.entries(e))if(Array.isArray(l))for(let d=0;d<l.length;d++){const h=l[d];ed(h)?l[d]=this.reviveReference(e,c,n,h,r):Ke(h)&&this.linkNode(h,n,r,e,c,d)}else ed(l)?e[c]=this.reviveReference(e,c,n,l,r):Ke(l)&&this.linkNode(l,n,r,e,c);const o=e;o.$container=i,o.$containerProperty=s,o.$containerIndex=a}reviveReference(e,n,r,i,s){let a=i.$refText,o=i.$error,c;if(i.$ref){const l=this.getRefNode(r,i.$ref,s.uriConverter);if(Ke(l))return a||(a=this.nameProvider.getName(l)),{$refText:a??"",ref:l};o=l}else if(i.$refs){const l=[];for(const d of i.$refs){const h=this.getRefNode(r,d,s.uriConverter);Ke(h)&&l.push({ref:h})}if(l.length===0)c={$refText:a??"",items:l},o??(o="Could not resolve multi-reference");else return{$refText:a??"",items:l}}if(o)return c??(c={$refText:a??"",ref:void 0}),c.error={info:{container:e,property:n,reference:c},message:o},c}getRefNode(e,n,r){try{const i=n.indexOf("#");if(i===0){const c=this.astNodeLocator.getAstNode(e,n.substring(1));return c||"Could not resolve path: "+n}if(i<0){const c=r?r(n):It.parse(n),l=this.langiumDocuments.getDocument(c);return l?l.parseResult.value:"Could not find document for URI: "+n}const s=r?r(n.substring(0,i)):It.parse(n.substring(0,i)),a=this.langiumDocuments.getDocument(s);if(!a)return"Could not find document for URI: "+n;if(i===n.length-1)return a.parseResult.value;const o=this.astNodeLocator.getAstNode(a.parseResult.value,n.substring(i+1));return o||"Could not resolve URI: "+n}catch(i){return String(i)}}}class _v{get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e==null?void 0:e.workspace.TextDocuments}register(e){const n=e.LanguageMetaData;for(const r of n.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${n.languageId}'.`),this.fileExtensionMap.set(r,e);if(n.fileNames)for(const r of n.fileNames)this.fileNameMap.has(r)&&console.warn(`The file name ${r} is used by multiple languages. It is now assigned to '${n.languageId}'.`),this.fileNameMap.set(r,e);this.languageIdMap.set(n.languageId,e)}getServices(e){var a,o;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");const n=(o=(a=this.textDocuments)==null?void 0:a.get(e))==null?void 0:o.languageId;if(n!==void 0){const c=this.languageIdMap.get(n);if(c)return c}const r=dt.extname(e),i=dt.basename(e),s=this.fileNameMap.get(i)??this.fileExtensionMap.get(r);if(!s)throw n?new Error(`The service registry contains no services for the extension '${r}' for language '${n}'.`):new Error(`The service registry contains no services for the extension '${r}'.`);return s}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}}function ji(t){return{code:t}}var hl;(function(t){t.defaults=["fast","slow","built-in"],t.all=t.defaults})(hl||(hl={}));class Iv{constructor(e){this.entries=new rs,this.knownCategories=new Set(hl.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,n=this,r="fast"){if(r==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(r);for(const[i,s]of Object.entries(e)){const a=s;if(Array.isArray(a))for(const o of a){const c={check:this.wrapValidationException(o,n),category:r};this.addEntry(i,c)}else if(typeof a=="function"){const o={check:this.wrapValidationException(a,n),category:r};this.addEntry(i,o)}else ds()}}wrapValidationException(e,n){return async(r,i,s)=>{await this.handleException(()=>e.call(n,r,i,s),"An error occurred during validation",i,r)}}async handleException(e,n,r,i){try{await e()}catch(s){if(to(s))throw s;console.error(`${n}:`,s),s instanceof Error&&s.stack&&console.error(s.stack);const a=s instanceof Error?s.message:String(s);r("error",`${n}: ${a}`,{node:i})}}addEntry(e,n){if(e==="AstNode"){this.entries.add("AstNode",n);return}for(const r of this.reflection.getAllSubTypes(e))this.entries.add(r,n)}getChecks(e,n){let r=he(this.entries.get(e)).concat(this.entries.get("AstNode"));return n&&(r=r.filter(i=>n.includes(i.category))),r.map(i=>i.check)}registerBeforeDocument(e,n=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",n))}registerAfterDocument(e,n=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",n))}wrapPreparationException(e,n,r){return async(i,s,a,o)=>{await this.handleException(()=>e.call(r,i,s,a,o),n,s,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}}const $v=Object.freeze({validateNode:!0,validateChildren:!0});class Pv{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async validateDocument(e,n={},r=me.None){const i=e.parseResult,s=[];if(await Je(r),(!n.categories||n.categories.includes("built-in"))&&(this.processLexingErrors(i,s,n),n.stopAfterLexingErrors&&s.some(a=>{var o;return((o=a.data)==null?void 0:o.code)===Nt.LexingError})||(this.processParsingErrors(i,s,n),n.stopAfterParsingErrors&&s.some(a=>{var o;return((o=a.data)==null?void 0:o.code)===Nt.ParsingError}))||(this.processLinkingErrors(e,s,n),n.stopAfterLinkingErrors&&s.some(a=>{var o;return((o=a.data)==null?void 0:o.code)===Nt.LinkingError}))))return s;try{s.push(...await this.validateAst(i.value,n,r))}catch(a){if(to(a))throw a;console.error("An error occurred during validation:",a)}return await Je(r),s}processLexingErrors(e,n,r){var s;const i=[...e.lexerErrors,...((s=e.lexerReport)==null?void 0:s.diagnostics)??[]];for(const a of i){const o=a.severity??"error",c={severity:bo(o),range:{start:{line:a.line-1,character:a.column-1},end:{line:a.line-1,character:a.column+a.length-1}},message:a.message,data:Ov(o),source:this.getSource()};n.push(c)}}processParsingErrors(e,n,r){for(const i of e.parserErrors){let s;if(isNaN(i.token.startOffset)){if("previousToken"in i){const a=i.previousToken;if(isNaN(a.startOffset)){const o={line:0,character:0};s={start:o,end:o}}else{const o={line:a.endLine-1,character:a.endColumn};s={start:o,end:o}}}}else s=Ko(i.token);if(s){const a={severity:bo("error"),range:s,message:i.message,data:ji(Nt.ParsingError),source:this.getSource()};n.push(a)}}}processLinkingErrors(e,n,r){var i;for(const s of e.references){const a=s.error;if(a){const o={node:a.info.container,range:(i=s.$refNode)==null?void 0:i.range,property:a.info.property,index:a.info.index,data:{code:Nt.LinkingError,containerType:a.info.container.$type,property:a.info.property,refText:a.info.reference.$refText}};n.push(this.toDiagnostic("error",a.message,o))}}}async validateAst(e,n,r=me.None){const i=[],s=(a,o,c)=>{i.push(this.toDiagnostic(a,o,c))};return await this.validateAstBefore(e,n,s,r),await this.validateAstNodes(e,n,s,r),await this.validateAstAfter(e,n,s,r),i}async validateAstBefore(e,n,r,i=me.None){const s=this.validationRegistry.checksBefore;for(const a of s)await Je(i),await a(e,r,n.categories??[],i)}async validateAstNodes(e,n,r,i=me.None){var s;if((s=this.profiler)!=null&&s.isActive("validating")){const a=this.profiler.createTask("validating",this.languageId);a.start();try{const o=Zt(e).iterator();for(const c of o){a.startSubTask(c.$type);const l=this.validateSingleNodeOptions(c,n);if(l.validateNode)try{const d=this.validationRegistry.getChecks(c.$type,n.categories);for(const h of d)await h(c,r,i)}finally{a.stopSubTask(c.$type)}l.validateChildren||o.prune()}}finally{a.stop()}}else{const a=Zt(e).iterator();for(const o of a){await Je(i);const c=this.validateSingleNodeOptions(o,n);if(c.validateNode){const l=this.validationRegistry.getChecks(o.$type,n.categories);for(const d of l)await d(o,r,i)}c.validateChildren||a.prune()}}}validateSingleNodeOptions(e,n){return $v}async validateAstAfter(e,n,r,i=me.None){const s=this.validationRegistry.checksAfter;for(const a of s)await Je(i),await a(e,r,n.categories??[],i)}toDiagnostic(e,n,r){return{message:n,range:Lv(r),severity:bo(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}}function Lv(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=sh(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=_g(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function bo(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function Ov(t){switch(t){case"error":return ji(Nt.LexingError);case"warning":return ji(Nt.LexingWarning);case"info":return ji(Nt.LexingInfo);case"hint":return ji(Nt.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Nt;(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(Nt||(Nt={}));class xv{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,n,r){const i=r??Qt(e);n??(n=this.nameProvider.getName(e));const s=this.astNodeLocator.getAstNodePath(e);if(!n)throw new Error(`Node at path ${s} has no name.`);let a;const o=()=>a??(a=fa(this.nameProvider.getNameNode(e)??e.$cstNode));return{node:e,name:n,get nameSegment(){return o()},selectionSegment:fa(e.$cstNode),type:e.$type,documentUri:i.uri,path:s}}}class Dv{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,n=me.None){const r=[],i=e.parseResult.value;for(const s of Zt(i))await Je(n),ua(s).forEach(a=>{a.reference.error||r.push(...this.createInfoDescriptions(a))});return r}createInfoDescriptions(e){const n=e.reference;if(n.error||!n.$refNode)return[];let r=[];wt(n)&&n.$nodeDescription?r=[n.$nodeDescription]:pn(n)&&(r=n.items.map(c=>c.$nodeDescription).filter(c=>c!==void 0));const i=Qt(e.container).uri,s=this.nodeLocator.getAstNodePath(e.container),a=[],o=fa(n.$refNode);for(const c of r)a.push({sourceUri:i,sourcePath:s,targetUri:c.documentUri,targetPath:c.path,segment:o,local:dt.equals(c.documentUri,i)});return a}}class Mv{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){const n=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return n+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:n}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return n!==void 0?e+this.indexSeparator+n:e}getAstNode(e,n){return n.split(this.segmentSeparator).reduce((i,s)=>{if(!i||s.length===0)return i;const a=s.indexOf(this.indexSeparator);if(a>0){const o=s.substring(0,a),c=parseInt(s.substring(a+1)),l=i[o];return l==null?void 0:l[c]}return i[s]},e)}}class Fv{constructor(e){this._ready=new eu,this.onConfigurationSectionUpdateEmitter=new hp,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var n;this.workspaceConfig=((n=e.capabilities.workspace)==null?void 0:n.configuration)??!1}async initialized(e){if(this.workspaceConfig){if(e.register){const n=this.serviceRegistry.all;e.register({section:n.map(r=>this.toSectionName(r.LanguageMetaData.languageId))})}if(e.fetchConfiguration){const n=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(n);n.forEach((i,s)=>{this.updateSectionConfiguration(i.section,r[s])})}}this._ready.resolve()}updateConfiguration(e){typeof e.settings!="object"||e.settings===null||Object.entries(e.settings).forEach(([n,r])=>{this.updateSectionConfiguration(n,r),this.onConfigurationSectionUpdateEmitter.fire({section:n,configuration:r})})}updateSectionConfiguration(e,n){this.settings[e]=n}async getConfiguration(e,n){await this.ready;const r=this.toSectionName(e);if(this.settings[r])return this.settings[r][n]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}var zi={},er={},tu={},La={},U={};Object.defineProperty(U,"__esModule",{value:!0});U.Message=U.NotificationType9=U.NotificationType8=U.NotificationType7=U.NotificationType6=U.NotificationType5=U.NotificationType4=U.NotificationType3=U.NotificationType2=U.NotificationType1=U.NotificationType0=U.NotificationType=U.RequestType9=U.RequestType8=U.RequestType7=U.RequestType6=U.RequestType5=U.RequestType4=U.RequestType3=U.RequestType2=U.RequestType1=U.RequestType=U.RequestType0=U.AbstractMessageSignature=U.ParameterStructures=U.ResponseError=U.ErrorCodes=void 0;const Un=Ie;var pl;(function(t){t.ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3})(pl||(U.ErrorCodes=pl={}));class nu extends Error{constructor(e,n,r){super(n),this.code=Un.number(e)?e:pl.UnknownErrorCode,this.data=r,Object.setPrototypeOf(this,nu.prototype)}toJson(){const e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}}U.ResponseError=nu;class He{constructor(e){this.kind=e}static is(e){return e===He.auto||e===He.byName||e===He.byPosition}toString(){return this.kind}}U.ParameterStructures=He;He.auto=new He("auto");He.byPosition=new He("byPosition");He.byName=new He("byName");class ge{constructor(e,n){this.method=e,this.numberOfParams=n}get parameterStructures(){return He.auto}}U.AbstractMessageSignature=ge;class Gv extends ge{constructor(e){super(e,0)}}U.RequestType0=Gv;class Uv extends ge{constructor(e,n=He.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}}U.RequestType=Uv;class jv extends ge{constructor(e,n=He.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}}U.RequestType1=jv;class zv extends ge{constructor(e){super(e,2)}}U.RequestType2=zv;class Bv extends ge{constructor(e){super(e,3)}}U.RequestType3=Bv;class qv extends ge{constructor(e){super(e,4)}}U.RequestType4=qv;class Wv extends ge{constructor(e){super(e,5)}}U.RequestType5=Wv;class Vv extends ge{constructor(e){super(e,6)}}U.RequestType6=Vv;class Kv extends ge{constructor(e){super(e,7)}}U.RequestType7=Kv;class Hv extends ge{constructor(e){super(e,8)}}U.RequestType8=Hv;class Yv extends ge{constructor(e){super(e,9)}}U.RequestType9=Yv;class Xv extends ge{constructor(e,n=He.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}}U.NotificationType=Xv;class Jv extends ge{constructor(e){super(e,0)}}U.NotificationType0=Jv;class Qv extends ge{constructor(e,n=He.auto){super(e,1),this._parameterStructures=n}get parameterStructures(){return this._parameterStructures}}U.NotificationType1=Qv;class Zv extends ge{constructor(e){super(e,2)}}U.NotificationType2=Zv;class eE extends ge{constructor(e){super(e,3)}}U.NotificationType3=eE;class tE extends ge{constructor(e){super(e,4)}}U.NotificationType4=tE;class nE extends ge{constructor(e){super(e,5)}}U.NotificationType5=nE;class rE extends ge{constructor(e){super(e,6)}}U.NotificationType6=rE;class iE extends ge{constructor(e){super(e,7)}}U.NotificationType7=iE;class sE extends ge{constructor(e){super(e,8)}}U.NotificationType8=sE;class aE extends ge{constructor(e){super(e,9)}}U.NotificationType9=aE;var td;(function(t){function e(i){const s=i;return s&&Un.string(s.method)&&(Un.string(s.id)||Un.number(s.id))}t.isRequest=e;function n(i){const s=i;return s&&Un.string(s.method)&&i.id===void 0}t.isNotification=n;function r(i){const s=i;return s&&(s.result!==void 0||!!s.error)&&(Un.string(s.id)||Un.number(s.id)||s.id===null)}t.isResponse=r})(td||(U.Message=td={}));var tn={},nd;Object.defineProperty(tn,"__esModule",{value:!0});tn.LRUCache=tn.LinkedMap=tn.Touch=void 0;var We;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(We||(tn.Touch=We={}));class Tp{constructor(){this[nd]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){var e;return(e=this._head)==null?void 0:e.value}get last(){var e;return(e=this._tail)==null?void 0:e.value}has(e){return this._map.has(e)}get(e,n=We.None){const r=this._map.get(e);if(r)return n!==We.None&&this.touch(r,n),r.value}set(e,n,r=We.None){let i=this._map.get(e);if(i)i.value=n,r!==We.None&&this.touch(i,r);else{switch(i={key:e,value:n,next:void 0,previous:void 0},r){case We.None:this.addItemLast(i);break;case We.First:this.addItemFirst(i);break;case We.Last:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const n=this._map.get(e);if(n)return this._map.delete(e),this.removeItem(n),this._size--,n.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,n){const r=this._state;let i=this._head;for(;i;){if(n?e.bind(n)(i.value,i.key,this):e(i.value,i.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){const e=this._state;let n=this._head;const r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){const i={value:n.key,done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}values(){const e=this._state;let n=this._head;const r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){const i={value:n.value,done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}entries(){const e=this._state;let n=this._head;const r={[Symbol.iterator]:()=>r,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(n){const i={value:[n.key,n.value],done:!1};return n=n.next,i}else return{value:void 0,done:!0}}};return r}[(nd=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let n=this._head,r=this.size;for(;n&&r>e;)this._map.delete(n.key),n=n.next,r--;this._head=n,this._size=r,n&&(n.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const n=e.next,r=e.previous;if(!n||!r)throw new Error("Invalid list");n.previous=r,r.next=n}e.next=void 0,e.previous=void 0,this._state++}touch(e,n){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(n!==We.First&&n!==We.Last)){if(n===We.First){if(e===this._head)return;const r=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(r.previous=i,i.next=r),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(n===We.Last){if(e===this._tail)return;const r=e.next,i=e.previous;e===this._head?(r.previous=void 0,this._head=r):(r.previous=i,i.next=r),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((n,r)=>{e.push([r,n])}),e}fromJSON(e){this.clear();for(const[n,r]of e)this.set(n,r)}}tn.LinkedMap=Tp;class oE extends Tp{constructor(e,n=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,n),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,n=We.AsNew){return super.get(e,n)}peek(e){return super.get(e,We.None)}set(e,n){return super.set(e,n,We.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}tn.LRUCache=oE;var no={};Object.defineProperty(no,"__esModule",{value:!0});no.Disposable=void 0;var rd;(function(t){function e(n){return{dispose:n}}t.create=e})(rd||(no.Disposable=rd={}));var Qr={};Object.defineProperty(Qr,"__esModule",{value:!0});Qr.SharedArrayReceiverStrategy=Qr.SharedArraySenderStrategy=void 0;const cE=kn;var is;(function(t){t.Continue=0,t.Cancelled=1})(is||(is={}));class lE{constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;const n=new SharedArrayBuffer(4),r=new Int32Array(n,0,1);r[0]=is.Continue,this.buffers.set(e.id,n),e.$cancellationData=n}async sendCancellation(e,n){const r=this.buffers.get(n);if(r===void 0)return;const i=new Int32Array(r,0,1);Atomics.store(i,0,is.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}}Qr.SharedArraySenderStrategy=lE;class uE{constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===is.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}}class dE{constructor(e){this.token=new uE(e)}cancel(){}dispose(){}}class fE{constructor(){this.kind="request"}createCancellationTokenSource(e){const n=e.$cancellationData;return n===void 0?new cE.CancellationTokenSource:new dE(n)}}Qr.SharedArrayReceiverStrategy=fE;var mn={},ys={};Object.defineProperty(ys,"__esModule",{value:!0});ys.Semaphore=void 0;const hE=ln;class pE{constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((n,r)=>{this._waiting.push({thunk:e,resolve:n,reject:r}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,hE.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;const e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{const n=e.thunk();n instanceof Promise?n.then(r=>{this._active--,e.resolve(r),this.runNext()},r=>{this._active--,e.reject(r),this.runNext()}):(this._active--,e.resolve(n),this.runNext())}catch(n){this._active--,e.reject(n),this.runNext()}}}ys.Semaphore=pE;Object.defineProperty(mn,"__esModule",{value:!0});mn.ReadableStreamMessageReader=mn.AbstractMessageReader=mn.MessageReader=void 0;const ml=ln,Rr=Ie,_o=jt,mE=ys;var id;(function(t){function e(n){let r=n;return r&&Rr.func(r.listen)&&Rr.func(r.dispose)&&Rr.func(r.onError)&&Rr.func(r.onClose)&&Rr.func(r.onPartialMessage)}t.is=e})(id||(mn.MessageReader=id={}));class Rp{constructor(){this.errorEmitter=new _o.Emitter,this.closeEmitter=new _o.Emitter,this.partialMessageEmitter=new _o.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:new Error(`Reader received error. Reason: ${Rr.string(e.message)?e.message:"unknown"}`)}}mn.AbstractMessageReader=Rp;var gl;(function(t){function e(n){let r,i;const s=new Map;let a;const o=new Map;if(n===void 0||typeof n=="string")r=n??"utf-8";else{if(r=n.charset??"utf-8",n.contentDecoder!==void 0&&(i=n.contentDecoder,s.set(i.name,i)),n.contentDecoders!==void 0)for(const c of n.contentDecoders)s.set(c.name,c);if(n.contentTypeDecoder!==void 0&&(a=n.contentTypeDecoder,o.set(a.name,a)),n.contentTypeDecoders!==void 0)for(const c of n.contentTypeDecoders)o.set(c.name,c)}return a===void 0&&(a=(0,ml.default)().applicationJson.decoder,o.set(a.name,a)),{charset:r,contentDecoder:i,contentDecoders:s,contentTypeDecoder:a,contentTypeDecoders:o}}t.fromOptions=e})(gl||(gl={}));class gE extends Rp{constructor(e,n){super(),this.readable=e,this.options=gl.fromOptions(n),this.buffer=(0,ml.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new mE.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;const n=this.readable.onData(r=>{this.onData(r)});return this.readable.onError(r=>this.fireError(r)),this.readable.onClose(()=>this.fireClose()),n}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){const r=this.buffer.tryReadHeaders(!0);if(!r)return;const i=r.get("content-length");if(!i){this.fireError(new Error(`Header must provide a Content-Length property.
|
|
122
|
-
${JSON.stringify(Object.fromEntries(r))}`));return}const s=parseInt(i);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));return}this.nextMessageLength=s}const n=this.buffer.tryReadBody(this.nextMessageLength);if(n===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{const r=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(n):n,i=await this.options.contentTypeDecoder.decode(r,this.options);this.callback(i)}).catch(r=>{this.fireError(r)})}}catch(n){this.fireError(n)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,ml.default)().timer.setTimeout((e,n)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:n}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}}mn.ReadableStreamMessageReader=gE;var gn={};Object.defineProperty(gn,"__esModule",{value:!0});gn.WriteableStreamMessageWriter=gn.AbstractMessageWriter=gn.MessageWriter=void 0;const sd=ln,Bi=Ie,yE=ys,ad=jt,TE="Content-Length: ",od=`\r
|
|
123
|
-
`;var cd;(function(t){function e(n){let r=n;return r&&Bi.func(r.dispose)&&Bi.func(r.onClose)&&Bi.func(r.onError)&&Bi.func(r.write)}t.is=e})(cd||(gn.MessageWriter=cd={}));class vp{constructor(){this.errorEmitter=new ad.Emitter,this.closeEmitter=new ad.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,n,r){this.errorEmitter.fire([this.asError(e),n,r])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${Bi.string(e.message)?e.message:"unknown"}`)}}gn.AbstractMessageWriter=vp;var yl;(function(t){function e(n){return n===void 0||typeof n=="string"?{charset:n??"utf-8",contentTypeEncoder:(0,sd.default)().applicationJson.encoder}:{charset:n.charset??"utf-8",contentEncoder:n.contentEncoder,contentTypeEncoder:n.contentTypeEncoder??(0,sd.default)().applicationJson.encoder}}t.fromOptions=e})(yl||(yl={}));class RE extends vp{constructor(e,n){super(),this.writable=e,this.options=yl.fromOptions(n),this.errorCount=0,this.writeSemaphore=new yE.Semaphore(1),this.writable.onError(r=>this.fireError(r)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(r=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(r):r).then(r=>{const i=[];return i.push(TE,r.byteLength.toString(),od),i.push(od),this.doWrite(e,i,r)},r=>{throw this.fireError(r),r}))}async doWrite(e,n,r){try{return await this.writable.write(n.join(""),"ascii"),this.writable.write(r)}catch(i){return this.handleError(i,e),Promise.reject(i)}}handleError(e,n){this.errorCount++,this.fireError(e,n,this.errorCount)}end(){this.writable.end()}}gn.WriteableStreamMessageWriter=RE;var ro={};Object.defineProperty(ro,"__esModule",{value:!0});ro.AbstractMessageBuffer=void 0;const vE=13,EE=10,AE=`\r
|
|
124
|
-
`;class SE{constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){const n=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(n),this._totalLength+=n.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let n=0,r=0,i=0,s=0;e:for(;r<this._chunks.length;){const l=this._chunks[r];for(i=0;i<l.length;){switch(l[i]){case vE:switch(n){case 0:n=1;break;case 2:n=3;break;default:n=0}break;case EE:switch(n){case 1:n=2;break;case 3:n=4,i++;break e;default:n=0}break;default:n=0}i++}s+=l.byteLength,r++}if(n!==4)return;const a=this._read(s+i),o=new Map,c=this.toString(a,"ascii").split(AE);if(c.length<2)return o;for(let l=0;l<c.length-2;l++){const d=c[l],h=d.indexOf(":");if(h===-1)throw new Error(`Message header must separate key and value using ':'
|
|
125
|
-
${d}`);const p=d.substr(0,h),g=d.substr(h+1).trim();o.set(e?p.toLowerCase():p,g)}return o}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(e===0)return this.emptyBuffer();if(e>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){const s=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(s)}if(this._chunks[0].byteLength>e){const s=this._chunks[0],a=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,a}const n=this.allocNative(e);let r=0,i=0;for(;e>0;){const s=this._chunks[i];if(s.byteLength>e){const a=s.slice(0,e);n.set(a,r),r+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else n.set(s,r),r+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return n}}ro.AbstractMessageBuffer=SE;var Ep={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.createMessageConnection=t.ConnectionOptions=t.MessageStrategy=t.CancellationStrategy=t.CancellationSenderStrategy=t.CancellationReceiverStrategy=t.RequestCancellationReceiverStrategy=t.IdCancellationReceiverStrategy=t.ConnectionStrategy=t.ConnectionError=t.ConnectionErrors=t.LogTraceNotification=t.SetTraceNotification=t.TraceFormat=t.TraceValues=t.Trace=t.NullLogger=t.ProgressType=t.ProgressToken=void 0;const e=ln,n=Ie,r=U,i=tn,s=jt,a=kn;var o;(function(m){m.type=new r.NotificationType("$/cancelRequest")})(o||(o={}));var c;(function(m){function S(y){return typeof y=="string"||typeof y=="number"}m.is=S})(c||(t.ProgressToken=c={}));var l;(function(m){m.type=new r.NotificationType("$/progress")})(l||(l={}));class d{constructor(){}}t.ProgressType=d;var h;(function(m){function S(y){return n.func(y)}m.is=S})(h||(h={})),t.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var p;(function(m){m[m.Off=0]="Off",m[m.Messages=1]="Messages",m[m.Compact=2]="Compact",m[m.Verbose=3]="Verbose"})(p||(t.Trace=p={}));var g;(function(m){m.Off="off",m.Messages="messages",m.Compact="compact",m.Verbose="verbose"})(g||(t.TraceValues=g={})),function(m){function S(T){if(!n.string(T))return m.Off;switch(T=T.toLowerCase(),T){case"off":return m.Off;case"messages":return m.Messages;case"compact":return m.Compact;case"verbose":return m.Verbose;default:return m.Off}}m.fromString=S;function y(T){switch(T){case m.Off:return"off";case m.Messages:return"messages";case m.Compact:return"compact";case m.Verbose:return"verbose";default:return"off"}}m.toString=y}(p||(t.Trace=p={}));var C;(function(m){m.Text="text",m.JSON="json"})(C||(t.TraceFormat=C={})),function(m){function S(y){return n.string(y)?(y=y.toLowerCase(),y==="json"?m.JSON:m.Text):m.Text}m.fromString=S}(C||(t.TraceFormat=C={}));var w;(function(m){m.type=new r.NotificationType("$/setTrace")})(w||(t.SetTraceNotification=w={}));var D;(function(m){m.type=new r.NotificationType("$/logTrace")})(D||(t.LogTraceNotification=D={}));var N;(function(m){m[m.Closed=1]="Closed",m[m.Disposed=2]="Disposed",m[m.AlreadyListening=3]="AlreadyListening"})(N||(t.ConnectionErrors=N={}));class L extends Error{constructor(S,y){super(y),this.code=S,Object.setPrototypeOf(this,L.prototype)}}t.ConnectionError=L;var b;(function(m){function S(y){const T=y;return T&&n.func(T.cancelUndispatched)}m.is=S})(b||(t.ConnectionStrategy=b={}));var O;(function(m){function S(y){const T=y;return T&&(T.kind===void 0||T.kind==="id")&&n.func(T.createCancellationTokenSource)&&(T.dispose===void 0||n.func(T.dispose))}m.is=S})(O||(t.IdCancellationReceiverStrategy=O={}));var J;(function(m){function S(y){const T=y;return T&&T.kind==="request"&&n.func(T.createCancellationTokenSource)&&(T.dispose===void 0||n.func(T.dispose))}m.is=S})(J||(t.RequestCancellationReceiverStrategy=J={}));var re;(function(m){m.Message=Object.freeze({createCancellationTokenSource(y){return new a.CancellationTokenSource}});function S(y){return O.is(y)||J.is(y)}m.is=S})(re||(t.CancellationReceiverStrategy=re={}));var ie;(function(m){m.Message=Object.freeze({sendCancellation(y,T){return y.sendNotification(o.type,{id:T})},cleanup(y){}});function S(y){const T=y;return T&&n.func(T.sendCancellation)&&n.func(T.cleanup)}m.is=S})(ie||(t.CancellationSenderStrategy=ie={}));var we;(function(m){m.Message=Object.freeze({receiver:re.Message,sender:ie.Message});function S(y){const T=y;return T&&re.is(T.receiver)&&ie.is(T.sender)}m.is=S})(we||(t.CancellationStrategy=we={}));var $e;(function(m){function S(y){const T=y;return T&&n.func(T.handleMessage)}m.is=S})($e||(t.MessageStrategy=$e={}));var Se;(function(m){function S(y){const T=y;return T&&(we.is(T.cancellationStrategy)||b.is(T.connectionStrategy)||$e.is(T.messageStrategy))}m.is=S})(Se||(t.ConnectionOptions=Se={}));var k;(function(m){m[m.New=1]="New",m[m.Listening=2]="Listening",m[m.Closed=3]="Closed",m[m.Disposed=4]="Disposed"})(k||(k={}));function E(m,S,y,T){const v=y!==void 0?y:t.NullLogger;let $=0,x=0,P=0;const z="2.0";let G;const se=new Map;let q;const te=new Map,De=new Map;let ye,de=new i.LinkedMap,Pe=new Map,Me=new Set,be=new Map,Q=p.Off,ct=C.Text,Te,At=k.New;const rr=new s.Emitter,pi=new s.Emitter,mi=new s.Emitter,gi=new s.Emitter,yi=new s.Emitter,St=T&&T.cancellationStrategy?T.cancellationStrategy:we.Message;function Ti(f){if(f===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+f.toString()}function Ts(f){return f===null?"res-unknown-"+(++P).toString():"res-"+f.toString()}function Rs(){return"not-"+(++x).toString()}function vs(f,A){r.Message.isRequest(A)?f.set(Ti(A.id),A):r.Message.isResponse(A)?f.set(Ts(A.id),A):f.set(Rs(),A)}function Es(f){}function Ri(){return At===k.Listening}function vi(){return At===k.Closed}function qt(){return At===k.Disposed}function Ei(){(At===k.New||At===k.Listening)&&(At=k.Closed,pi.fire(void 0))}function As(f){rr.fire([f,void 0,void 0])}function Ss(f){rr.fire(f)}m.onClose(Ei),m.onError(As),S.onClose(Ei),S.onError(Ss);function Ai(){ye||de.size===0||(ye=(0,e.default)().timer.setImmediate(()=>{ye=void 0,Cs()}))}function Si(f){r.Message.isRequest(f)?Ns(f):r.Message.isNotification(f)?bs(f):r.Message.isResponse(f)?ws(f):_s(f)}function Cs(){if(de.size===0)return;const f=de.shift();try{const A=T==null?void 0:T.messageStrategy;$e.is(A)?A.handleMessage(f,Si):Si(f)}finally{Ai()}}const ks=f=>{try{if(r.Message.isNotification(f)&&f.method===o.type.method){const A=f.params.id,I=Ti(A),F=de.get(I);if(r.Message.isRequest(F)){const ae=T==null?void 0:T.connectionStrategy,ce=ae&&ae.cancelUndispatched?ae.cancelUndispatched(F,Es):void 0;if(ce&&(ce.error!==void 0||ce.result!==void 0)){de.delete(I),be.delete(A),ce.id=F.id,Pn(ce,f.method,Date.now()),S.write(ce).catch(()=>v.error("Sending response for canceled message failed."));return}}const le=be.get(A);if(le!==void 0){le.cancel(),ir(f);return}else Me.add(A)}vs(de,f)}finally{Ai()}};function Ns(f){if(qt())return;function A(X,fe,ne){const Le={jsonrpc:z,id:f.id};X instanceof r.ResponseError?Le.error=X.toJson():Le.result=X===void 0?null:X,Pn(Le,fe,ne),S.write(Le).catch(()=>v.error("Sending response failed."))}function I(X,fe,ne){const Le={jsonrpc:z,id:f.id,error:X.toJson()};Pn(Le,fe,ne),S.write(Le).catch(()=>v.error("Sending response failed."))}function F(X,fe,ne){X===void 0&&(X=null);const Le={jsonrpc:z,id:f.id,result:X};Pn(Le,fe,ne),S.write(Le).catch(()=>v.error("Sending response failed."))}Ps(f);const le=se.get(f.method);let ae,ce;le&&(ae=le.type,ce=le.handler);const Ne=Date.now();if(ce||G){const X=f.id??String(Date.now()),fe=O.is(St.receiver)?St.receiver.createCancellationTokenSource(X):St.receiver.createCancellationTokenSource(f);f.id!==null&&Me.has(f.id)&&fe.cancel(),f.id!==null&&be.set(X,fe);try{let ne;if(ce)if(f.params===void 0){if(ae!==void 0&&ae.numberOfParams!==0){I(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${f.method} defines ${ae.numberOfParams} params but received none.`),f.method,Ne);return}ne=ce(fe.token)}else if(Array.isArray(f.params)){if(ae!==void 0&&ae.parameterStructures===r.ParameterStructures.byName){I(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${f.method} defines parameters by name but received parameters by position`),f.method,Ne);return}ne=ce(...f.params,fe.token)}else{if(ae!==void 0&&ae.parameterStructures===r.ParameterStructures.byPosition){I(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${f.method} defines parameters by position but received parameters by name`),f.method,Ne);return}ne=ce(f.params,fe.token)}else G&&(ne=G(f.method,f.params,fe.token));const Le=ne;ne?Le.then?Le.then(Xe=>{be.delete(X),A(Xe,f.method,Ne)},Xe=>{be.delete(X),Xe instanceof r.ResponseError?I(Xe,f.method,Ne):Xe&&n.string(Xe.message)?I(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${f.method} failed with message: ${Xe.message}`),f.method,Ne):I(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${f.method} failed unexpectedly without providing any details.`),f.method,Ne)}):(be.delete(X),A(ne,f.method,Ne)):(be.delete(X),F(ne,f.method,Ne))}catch(ne){be.delete(X),ne instanceof r.ResponseError?A(ne,f.method,Ne):ne&&n.string(ne.message)?I(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${f.method} failed with message: ${ne.message}`),f.method,Ne):I(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${f.method} failed unexpectedly without providing any details.`),f.method,Ne)}}else I(new r.ResponseError(r.ErrorCodes.MethodNotFound,`Unhandled method ${f.method}`),f.method,Ne)}function ws(f){if(!qt())if(f.id===null)f.error?v.error(`Received response message without id: Error is:
|
|
126
|
-
${JSON.stringify(f.error,void 0,4)}`):v.error("Received response message without id. No further error information provided.");else{const A=f.id,I=Pe.get(A);if(Ls(f,I),I!==void 0){Pe.delete(A);try{if(f.error){const F=f.error;I.reject(new r.ResponseError(F.code,F.message,F.data))}else if(f.result!==void 0)I.resolve(f.result);else throw new Error("Should never happen.")}catch(F){F.message?v.error(`Response handler '${I.method}' failed with message: ${F.message}`):v.error(`Response handler '${I.method}' failed unexpectedly.`)}}}}function bs(f){if(qt())return;let A,I;if(f.method===o.type.method){const F=f.params.id;Me.delete(F),ir(f);return}else{const F=te.get(f.method);F&&(I=F.handler,A=F.type)}if(I||q)try{if(ir(f),I)if(f.params===void 0)A!==void 0&&A.numberOfParams!==0&&A.parameterStructures!==r.ParameterStructures.byName&&v.error(`Notification ${f.method} defines ${A.numberOfParams} params but received none.`),I();else if(Array.isArray(f.params)){const F=f.params;f.method===l.type.method&&F.length===2&&c.is(F[0])?I({token:F[0],value:F[1]}):(A!==void 0&&(A.parameterStructures===r.ParameterStructures.byName&&v.error(`Notification ${f.method} defines parameters by name but received parameters by position`),A.numberOfParams!==f.params.length&&v.error(`Notification ${f.method} defines ${A.numberOfParams} params but received ${F.length} arguments`)),I(...F))}else A!==void 0&&A.parameterStructures===r.ParameterStructures.byPosition&&v.error(`Notification ${f.method} defines parameters by position but received parameters by name`),I(f.params);else q&&q(f.method,f.params)}catch(F){F.message?v.error(`Notification handler '${f.method}' failed with message: ${F.message}`):v.error(`Notification handler '${f.method}' failed unexpectedly.`)}else mi.fire(f)}function _s(f){if(!f){v.error("Received empty message.");return}v.error(`Received message which is neither a response nor a notification message:
|
|
127
|
-
${JSON.stringify(f,null,4)}`);const A=f;if(n.string(A.id)||n.number(A.id)){const I=A.id,F=Pe.get(I);F&&F.reject(new Error("The received response has neither a result nor an error property."))}}function Ct(f){if(f!=null)switch(Q){case p.Verbose:return JSON.stringify(f,null,4);case p.Compact:return JSON.stringify(f);default:return}}function Is(f){if(!(Q===p.Off||!Te))if(ct===C.Text){let A;(Q===p.Verbose||Q===p.Compact)&&f.params&&(A=`Params: ${Ct(f.params)}
|
|
128
|
-
|
|
129
|
-
`),Te.log(`Sending request '${f.method} - (${f.id})'.`,A)}else Wt("send-request",f)}function $s(f){if(!(Q===p.Off||!Te))if(ct===C.Text){let A;(Q===p.Verbose||Q===p.Compact)&&(f.params?A=`Params: ${Ct(f.params)}
|
|
130
|
-
|
|
131
|
-
`:A=`No parameters provided.
|
|
132
|
-
|
|
133
|
-
`),Te.log(`Sending notification '${f.method}'.`,A)}else Wt("send-notification",f)}function Pn(f,A,I){if(!(Q===p.Off||!Te))if(ct===C.Text){let F;(Q===p.Verbose||Q===p.Compact)&&(f.error&&f.error.data?F=`Error data: ${Ct(f.error.data)}
|
|
134
|
-
|
|
135
|
-
`:f.result?F=`Result: ${Ct(f.result)}
|
|
136
|
-
|
|
137
|
-
`:f.error===void 0&&(F=`No result returned.
|
|
138
|
-
|
|
139
|
-
`)),Te.log(`Sending response '${A} - (${f.id})'. Processing request took ${Date.now()-I}ms`,F)}else Wt("send-response",f)}function Ps(f){if(!(Q===p.Off||!Te))if(ct===C.Text){let A;(Q===p.Verbose||Q===p.Compact)&&f.params&&(A=`Params: ${Ct(f.params)}
|
|
140
|
-
|
|
141
|
-
`),Te.log(`Received request '${f.method} - (${f.id})'.`,A)}else Wt("receive-request",f)}function ir(f){if(!(Q===p.Off||!Te||f.method===D.type.method))if(ct===C.Text){let A;(Q===p.Verbose||Q===p.Compact)&&(f.params?A=`Params: ${Ct(f.params)}
|
|
142
|
-
|
|
143
|
-
`:A=`No parameters provided.
|
|
144
|
-
|
|
145
|
-
`),Te.log(`Received notification '${f.method}'.`,A)}else Wt("receive-notification",f)}function Ls(f,A){if(!(Q===p.Off||!Te))if(ct===C.Text){let I;if((Q===p.Verbose||Q===p.Compact)&&(f.error&&f.error.data?I=`Error data: ${Ct(f.error.data)}
|
|
146
|
-
|
|
147
|
-
`:f.result?I=`Result: ${Ct(f.result)}
|
|
148
|
-
|
|
149
|
-
`:f.error===void 0&&(I=`No result returned.
|
|
150
|
-
|
|
151
|
-
`)),A){const F=f.error?` Request failed: ${f.error.message} (${f.error.code}).`:"";Te.log(`Received response '${A.method} - (${f.id})' in ${Date.now()-A.timerStart}ms.${F}`,I)}else Te.log(`Received response ${f.id} without active response promise.`,I)}else Wt("receive-response",f)}function Wt(f,A){if(!Te||Q===p.Off)return;const I={isLSPMessage:!0,type:f,message:A,timestamp:Date.now()};Te.log(I)}function un(){if(vi())throw new L(N.Closed,"Connection is closed.");if(qt())throw new L(N.Disposed,"Connection is disposed.")}function Os(){if(Ri())throw new L(N.AlreadyListening,"Connection is already listening")}function xs(){if(!Ri())throw new Error("Call listen() first.")}function dn(f){return f===void 0?null:f}function Ci(f){if(f!==null)return f}function u(f){return f!=null&&!Array.isArray(f)&&typeof f=="object"}function Ce(f,A){switch(f){case r.ParameterStructures.auto:return u(A)?Ci(A):[dn(A)];case r.ParameterStructures.byName:if(!u(A))throw new Error("Received parameters by name but param is not an object literal.");return Ci(A);case r.ParameterStructures.byPosition:return[dn(A)];default:throw new Error(`Unknown parameter structure ${f.toString()}`)}}function ke(f,A){let I;const F=f.numberOfParams;switch(F){case 0:I=void 0;break;case 1:I=Ce(f.parameterStructures,A[0]);break;default:I=[];for(let le=0;le<A.length&&le<F;le++)I.push(dn(A[le]));if(A.length<F)for(let le=A.length;le<F;le++)I.push(null);break}return I}const V={sendNotification:(f,...A)=>{un();let I,F;if(n.string(f)){I=f;const ae=A[0];let ce=0,Ne=r.ParameterStructures.auto;r.ParameterStructures.is(ae)&&(ce=1,Ne=ae);let X=A.length;const fe=X-ce;switch(fe){case 0:F=void 0;break;case 1:F=Ce(Ne,A[ce]);break;default:if(Ne===r.ParameterStructures.byName)throw new Error(`Received ${fe} parameters for 'by Name' notification parameter structure.`);F=A.slice(ce,X).map(ne=>dn(ne));break}}else{const ae=A;I=f.method,F=ke(f,ae)}const le={jsonrpc:z,method:I,params:F};return $s(le),S.write(le).catch(ae=>{throw v.error("Sending notification failed."),ae})},onNotification:(f,A)=>{un();let I;return n.func(f)?q=f:A&&(n.string(f)?(I=f,te.set(f,{type:void 0,handler:A})):(I=f.method,te.set(f.method,{type:f,handler:A}))),{dispose:()=>{I!==void 0?te.delete(I):q=void 0}}},onProgress:(f,A,I)=>{if(De.has(A))throw new Error(`Progress handler for token ${A} already registered`);return De.set(A,I),{dispose:()=>{De.delete(A)}}},sendProgress:(f,A,I)=>V.sendNotification(l.type,{token:A,value:I}),onUnhandledProgress:gi.event,sendRequest:(f,...A)=>{un(),xs();let I,F,le;if(n.string(f)){I=f;const X=A[0],fe=A[A.length-1];let ne=0,Le=r.ParameterStructures.auto;r.ParameterStructures.is(X)&&(ne=1,Le=X);let Xe=A.length;a.CancellationToken.is(fe)&&(Xe=Xe-1,le=fe);const Ot=Xe-ne;switch(Ot){case 0:F=void 0;break;case 1:F=Ce(Le,A[ne]);break;default:if(Le===r.ParameterStructures.byName)throw new Error(`Received ${Ot} parameters for 'by Name' request parameter structure.`);F=A.slice(ne,Xe).map(Jp=>dn(Jp));break}}else{const X=A;I=f.method,F=ke(f,X);const fe=f.numberOfParams;le=a.CancellationToken.is(X[fe])?X[fe]:void 0}const ae=$++;let ce;le&&(ce=le.onCancellationRequested(()=>{const X=St.sender.sendCancellation(V,ae);return X===void 0?(v.log(`Received no promise from cancellation strategy when cancelling id ${ae}`),Promise.resolve()):X.catch(()=>{v.log(`Sending cancellation messages for id ${ae} failed`)})}));const Ne={jsonrpc:z,id:ae,method:I,params:F};return Is(Ne),typeof St.sender.enableCancellation=="function"&&St.sender.enableCancellation(Ne),new Promise(async(X,fe)=>{const ne=Ot=>{X(Ot),St.sender.cleanup(ae),ce==null||ce.dispose()},Le=Ot=>{fe(Ot),St.sender.cleanup(ae),ce==null||ce.dispose()},Xe={method:I,timerStart:Date.now(),resolve:ne,reject:Le};try{await S.write(Ne),Pe.set(ae,Xe)}catch(Ot){throw v.error("Sending request failed."),Xe.reject(new r.ResponseError(r.ErrorCodes.MessageWriteError,Ot.message?Ot.message:"Unknown reason")),Ot}})},onRequest:(f,A)=>{un();let I=null;return h.is(f)?(I=void 0,G=f):n.string(f)?(I=null,A!==void 0&&(I=f,se.set(f,{handler:A,type:void 0}))):A!==void 0&&(I=f.method,se.set(f.method,{type:f,handler:A})),{dispose:()=>{I!==null&&(I!==void 0?se.delete(I):G=void 0)}}},hasPendingResponse:()=>Pe.size>0,trace:async(f,A,I)=>{let F=!1,le=C.Text;I!==void 0&&(n.boolean(I)?F=I:(F=I.sendNotification||!1,le=I.traceFormat||C.Text)),Q=f,ct=le,Q===p.Off?Te=void 0:Te=A,F&&!vi()&&!qt()&&await V.sendNotification(w.type,{value:p.toString(f)})},onError:rr.event,onClose:pi.event,onUnhandledNotification:mi.event,onDispose:yi.event,end:()=>{S.end()},dispose:()=>{if(qt())return;At=k.Disposed,yi.fire(void 0);const f=new r.ResponseError(r.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(const A of Pe.values())A.reject(f);Pe=new Map,be=new Map,Me=new Set,de=new i.LinkedMap,n.func(S.dispose)&&S.dispose(),n.func(m.dispose)&&m.dispose()},listen:()=>{un(),Os(),At=k.Listening,m.listen(ks)},inspect:()=>{(0,e.default)().console.log("inspect")}};return V.onNotification(D.type,f=>{if(Q===p.Off||!Te)return;const A=Q===p.Verbose||Q===p.Compact;Te.log(f.message,A?f.verbose:void 0)}),V.onNotification(l.type,f=>{const A=De.get(f.token);A?A(f.value):gi.fire(f)}),V}t.createMessageConnection=E})(Ep);(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ProgressType=t.ProgressToken=t.createMessageConnection=t.NullLogger=t.ConnectionOptions=t.ConnectionStrategy=t.AbstractMessageBuffer=t.WriteableStreamMessageWriter=t.AbstractMessageWriter=t.MessageWriter=t.ReadableStreamMessageReader=t.AbstractMessageReader=t.MessageReader=t.SharedArrayReceiverStrategy=t.SharedArraySenderStrategy=t.CancellationToken=t.CancellationTokenSource=t.Emitter=t.Event=t.Disposable=t.LRUCache=t.Touch=t.LinkedMap=t.ParameterStructures=t.NotificationType9=t.NotificationType8=t.NotificationType7=t.NotificationType6=t.NotificationType5=t.NotificationType4=t.NotificationType3=t.NotificationType2=t.NotificationType1=t.NotificationType0=t.NotificationType=t.ErrorCodes=t.ResponseError=t.RequestType9=t.RequestType8=t.RequestType7=t.RequestType6=t.RequestType5=t.RequestType4=t.RequestType3=t.RequestType2=t.RequestType1=t.RequestType0=t.RequestType=t.Message=t.RAL=void 0,t.MessageStrategy=t.CancellationStrategy=t.CancellationSenderStrategy=t.CancellationReceiverStrategy=t.ConnectionError=t.ConnectionErrors=t.LogTraceNotification=t.SetTraceNotification=t.TraceFormat=t.TraceValues=t.Trace=void 0;const e=U;Object.defineProperty(t,"Message",{enumerable:!0,get:function(){return e.Message}}),Object.defineProperty(t,"RequestType",{enumerable:!0,get:function(){return e.RequestType}}),Object.defineProperty(t,"RequestType0",{enumerable:!0,get:function(){return e.RequestType0}}),Object.defineProperty(t,"RequestType1",{enumerable:!0,get:function(){return e.RequestType1}}),Object.defineProperty(t,"RequestType2",{enumerable:!0,get:function(){return e.RequestType2}}),Object.defineProperty(t,"RequestType3",{enumerable:!0,get:function(){return e.RequestType3}}),Object.defineProperty(t,"RequestType4",{enumerable:!0,get:function(){return e.RequestType4}}),Object.defineProperty(t,"RequestType5",{enumerable:!0,get:function(){return e.RequestType5}}),Object.defineProperty(t,"RequestType6",{enumerable:!0,get:function(){return e.RequestType6}}),Object.defineProperty(t,"RequestType7",{enumerable:!0,get:function(){return e.RequestType7}}),Object.defineProperty(t,"RequestType8",{enumerable:!0,get:function(){return e.RequestType8}}),Object.defineProperty(t,"RequestType9",{enumerable:!0,get:function(){return e.RequestType9}}),Object.defineProperty(t,"ResponseError",{enumerable:!0,get:function(){return e.ResponseError}}),Object.defineProperty(t,"ErrorCodes",{enumerable:!0,get:function(){return e.ErrorCodes}}),Object.defineProperty(t,"NotificationType",{enumerable:!0,get:function(){return e.NotificationType}}),Object.defineProperty(t,"NotificationType0",{enumerable:!0,get:function(){return e.NotificationType0}}),Object.defineProperty(t,"NotificationType1",{enumerable:!0,get:function(){return e.NotificationType1}}),Object.defineProperty(t,"NotificationType2",{enumerable:!0,get:function(){return e.NotificationType2}}),Object.defineProperty(t,"NotificationType3",{enumerable:!0,get:function(){return e.NotificationType3}}),Object.defineProperty(t,"NotificationType4",{enumerable:!0,get:function(){return e.NotificationType4}}),Object.defineProperty(t,"NotificationType5",{enumerable:!0,get:function(){return e.NotificationType5}}),Object.defineProperty(t,"NotificationType6",{enumerable:!0,get:function(){return e.NotificationType6}}),Object.defineProperty(t,"NotificationType7",{enumerable:!0,get:function(){return e.NotificationType7}}),Object.defineProperty(t,"NotificationType8",{enumerable:!0,get:function(){return e.NotificationType8}}),Object.defineProperty(t,"NotificationType9",{enumerable:!0,get:function(){return e.NotificationType9}}),Object.defineProperty(t,"ParameterStructures",{enumerable:!0,get:function(){return e.ParameterStructures}});const n=tn;Object.defineProperty(t,"LinkedMap",{enumerable:!0,get:function(){return n.LinkedMap}}),Object.defineProperty(t,"LRUCache",{enumerable:!0,get:function(){return n.LRUCache}}),Object.defineProperty(t,"Touch",{enumerable:!0,get:function(){return n.Touch}});const r=no;Object.defineProperty(t,"Disposable",{enumerable:!0,get:function(){return r.Disposable}});const i=jt;Object.defineProperty(t,"Event",{enumerable:!0,get:function(){return i.Event}}),Object.defineProperty(t,"Emitter",{enumerable:!0,get:function(){return i.Emitter}});const s=kn;Object.defineProperty(t,"CancellationTokenSource",{enumerable:!0,get:function(){return s.CancellationTokenSource}}),Object.defineProperty(t,"CancellationToken",{enumerable:!0,get:function(){return s.CancellationToken}});const a=Qr;Object.defineProperty(t,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return a.SharedArraySenderStrategy}}),Object.defineProperty(t,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return a.SharedArrayReceiverStrategy}});const o=mn;Object.defineProperty(t,"MessageReader",{enumerable:!0,get:function(){return o.MessageReader}}),Object.defineProperty(t,"AbstractMessageReader",{enumerable:!0,get:function(){return o.AbstractMessageReader}}),Object.defineProperty(t,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return o.ReadableStreamMessageReader}});const c=gn;Object.defineProperty(t,"MessageWriter",{enumerable:!0,get:function(){return c.MessageWriter}}),Object.defineProperty(t,"AbstractMessageWriter",{enumerable:!0,get:function(){return c.AbstractMessageWriter}}),Object.defineProperty(t,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return c.WriteableStreamMessageWriter}});const l=ro;Object.defineProperty(t,"AbstractMessageBuffer",{enumerable:!0,get:function(){return l.AbstractMessageBuffer}});const d=Ep;Object.defineProperty(t,"ConnectionStrategy",{enumerable:!0,get:function(){return d.ConnectionStrategy}}),Object.defineProperty(t,"ConnectionOptions",{enumerable:!0,get:function(){return d.ConnectionOptions}}),Object.defineProperty(t,"NullLogger",{enumerable:!0,get:function(){return d.NullLogger}}),Object.defineProperty(t,"createMessageConnection",{enumerable:!0,get:function(){return d.createMessageConnection}}),Object.defineProperty(t,"ProgressToken",{enumerable:!0,get:function(){return d.ProgressToken}}),Object.defineProperty(t,"ProgressType",{enumerable:!0,get:function(){return d.ProgressType}}),Object.defineProperty(t,"Trace",{enumerable:!0,get:function(){return d.Trace}}),Object.defineProperty(t,"TraceValues",{enumerable:!0,get:function(){return d.TraceValues}}),Object.defineProperty(t,"TraceFormat",{enumerable:!0,get:function(){return d.TraceFormat}}),Object.defineProperty(t,"SetTraceNotification",{enumerable:!0,get:function(){return d.SetTraceNotification}}),Object.defineProperty(t,"LogTraceNotification",{enumerable:!0,get:function(){return d.LogTraceNotification}}),Object.defineProperty(t,"ConnectionErrors",{enumerable:!0,get:function(){return d.ConnectionErrors}}),Object.defineProperty(t,"ConnectionError",{enumerable:!0,get:function(){return d.ConnectionError}}),Object.defineProperty(t,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return d.CancellationReceiverStrategy}}),Object.defineProperty(t,"CancellationSenderStrategy",{enumerable:!0,get:function(){return d.CancellationSenderStrategy}}),Object.defineProperty(t,"CancellationStrategy",{enumerable:!0,get:function(){return d.CancellationStrategy}}),Object.defineProperty(t,"MessageStrategy",{enumerable:!0,get:function(){return d.MessageStrategy}});const h=ln;t.RAL=h.default})(La);Object.defineProperty(tu,"__esModule",{value:!0});const Gt=La;class io extends Gt.AbstractMessageBuffer{constructor(e="utf-8"){super(e),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return io.emptyBuffer}fromString(e,n){return new TextEncoder().encode(e)}toString(e,n){return n==="ascii"?this.asciiDecoder.decode(e):new TextDecoder(n).decode(e)}asNative(e,n){return n===void 0?e:e.slice(0,n)}allocNative(e){return new Uint8Array(e)}}io.emptyBuffer=new Uint8Array(0);class CE{constructor(e){this.socket=e,this._onData=new Gt.Emitter,this._messageListener=n=>{n.data.arrayBuffer().then(i=>{this._onData.fire(new Uint8Array(i))},()=>{(0,Gt.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(e){return this.socket.addEventListener("close",e),Gt.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),Gt.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),Gt.Disposable.create(()=>this.socket.removeEventListener("end",e))}onData(e){return this._onData.event(e)}}class kE{constructor(e){this.socket=e}onClose(e){return this.socket.addEventListener("close",e),Gt.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),Gt.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),Gt.Disposable.create(()=>this.socket.removeEventListener("end",e))}write(e,n){if(typeof e=="string"){if(n!==void 0&&n!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${n}`);this.socket.send(e)}else this.socket.send(e);return Promise.resolve()}end(){this.socket.close()}}const NE=new TextEncoder,Ap=Object.freeze({messageBuffer:Object.freeze({create:t=>new io(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{if(e.charset!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${e.charset}`);return Promise.resolve(NE.encode(JSON.stringify(t,void 0,0)))}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{if(!(t instanceof Uint8Array))throw new Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(e.charset).decode(t)))}})}),stream:Object.freeze({asReadableStream:t=>new CE(t),asWritableStream:t=>new kE(t)}),console,timer:Object.freeze({setTimeout(t,e,...n){const r=setTimeout(t,e,...n);return{dispose:()=>clearTimeout(r)}},setImmediate(t,...e){const n=setTimeout(t,0,...e);return{dispose:()=>clearTimeout(n)}},setInterval(t,e,...n){const r=setInterval(t,e,...n);return{dispose:()=>clearInterval(r)}}})});function Tl(){return Ap}(function(t){function e(){Gt.RAL.install(Ap)}t.install=e})(Tl||(Tl={}));tu.default=Tl;(function(t){var e=Rt&&Rt.__createBinding||(Object.create?function(c,l,d,h){h===void 0&&(h=d);var p=Object.getOwnPropertyDescriptor(l,d);(!p||("get"in p?!l.__esModule:p.writable||p.configurable))&&(p={enumerable:!0,get:function(){return l[d]}}),Object.defineProperty(c,h,p)}:function(c,l,d,h){h===void 0&&(h=d),c[h]=l[d]}),n=Rt&&Rt.__exportStar||function(c,l){for(var d in c)d!=="default"&&!Object.prototype.hasOwnProperty.call(l,d)&&e(l,c,d)};Object.defineProperty(t,"__esModule",{value:!0}),t.createMessageConnection=t.BrowserMessageWriter=t.BrowserMessageReader=void 0,tu.default.install();const i=La;n(La,t);class s extends i.AbstractMessageReader{constructor(l){super(),this._onData=new i.Emitter,this._messageListener=d=>{this._onData.fire(d.data)},l.addEventListener("error",d=>this.fireError(d)),l.onmessage=this._messageListener}listen(l){return this._onData.event(l)}}t.BrowserMessageReader=s;class a extends i.AbstractMessageWriter{constructor(l){super(),this.port=l,this.errorCount=0,l.addEventListener("error",d=>this.fireError(d))}write(l){try{return this.port.postMessage(l),Promise.resolve()}catch(d){return this.handleError(d,l),Promise.reject(d)}}handleError(l,d){this.errorCount++,this.fireError(l,d,this.errorCount)}end(){}}t.BrowserMessageWriter=a;function o(c,l,d,h){return d===void 0&&(d=i.NullLogger),i.ConnectionStrategy.is(h)&&(h={connectionStrategy:h}),(0,i.createMessageConnection)(c,l,d,h)}t.createMessageConnection=o})(er);var ld=er,Sp={};const ru=lm(LR);var H={};Object.defineProperty(H,"__esModule",{value:!0});H.ProtocolNotificationType=H.ProtocolNotificationType0=H.ProtocolRequestType=H.ProtocolRequestType0=H.RegistrationType=H.MessageDirection=void 0;const Zr=er;var ud;(function(t){t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both"})(ud||(H.MessageDirection=ud={}));class wE{constructor(e){this.method=e}}H.RegistrationType=wE;class bE extends Zr.RequestType0{constructor(e){super(e)}}H.ProtocolRequestType0=bE;class _E extends Zr.RequestType{constructor(e){super(e,Zr.ParameterStructures.byName)}}H.ProtocolRequestType=_E;class IE extends Zr.NotificationType0{constructor(e){super(e)}}H.ProtocolNotificationType0=IE;class $E extends Zr.NotificationType{constructor(e){super(e,Zr.ParameterStructures.byName)}}H.ProtocolNotificationType=$E;var Cp={},ve={};Object.defineProperty(ve,"__esModule",{value:!0});ve.objectLiteral=ve.typedArray=ve.stringArray=ve.array=ve.func=ve.error=ve.number=ve.string=ve.boolean=void 0;function PE(t){return t===!0||t===!1}ve.boolean=PE;function kp(t){return typeof t=="string"||t instanceof String}ve.string=kp;function LE(t){return typeof t=="number"||t instanceof Number}ve.number=LE;function OE(t){return t instanceof Error}ve.error=OE;function xE(t){return typeof t=="function"}ve.func=xE;function Np(t){return Array.isArray(t)}ve.array=Np;function DE(t){return Np(t)&&t.every(e=>kp(e))}ve.stringArray=DE;function ME(t,e){return Array.isArray(t)&&t.every(e)}ve.typedArray=ME;function FE(t){return t!==null&&typeof t=="object"}ve.objectLiteral=FE;var so={};Object.defineProperty(so,"__esModule",{value:!0});so.ImplementationRequest=void 0;const dd=H;var fd;(function(t){t.method="textDocument/implementation",t.messageDirection=dd.MessageDirection.clientToServer,t.type=new dd.ProtocolRequestType(t.method)})(fd||(so.ImplementationRequest=fd={}));var ao={};Object.defineProperty(ao,"__esModule",{value:!0});ao.TypeDefinitionRequest=void 0;const hd=H;var pd;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=hd.MessageDirection.clientToServer,t.type=new hd.ProtocolRequestType(t.method)})(pd||(ao.TypeDefinitionRequest=pd={}));var ei={};Object.defineProperty(ei,"__esModule",{value:!0});ei.DidChangeWorkspaceFoldersNotification=ei.WorkspaceFoldersRequest=void 0;const Oa=H;var md;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=Oa.MessageDirection.serverToClient,t.type=new Oa.ProtocolRequestType0(t.method)})(md||(ei.WorkspaceFoldersRequest=md={}));var gd;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=Oa.MessageDirection.clientToServer,t.type=new Oa.ProtocolNotificationType(t.method)})(gd||(ei.DidChangeWorkspaceFoldersNotification=gd={}));var oo={};Object.defineProperty(oo,"__esModule",{value:!0});oo.ConfigurationRequest=void 0;const yd=H;var Td;(function(t){t.method="workspace/configuration",t.messageDirection=yd.MessageDirection.serverToClient,t.type=new yd.ProtocolRequestType(t.method)})(Td||(oo.ConfigurationRequest=Td={}));var ti={};Object.defineProperty(ti,"__esModule",{value:!0});ti.ColorPresentationRequest=ti.DocumentColorRequest=void 0;const xa=H;var Rd;(function(t){t.method="textDocument/documentColor",t.messageDirection=xa.MessageDirection.clientToServer,t.type=new xa.ProtocolRequestType(t.method)})(Rd||(ti.DocumentColorRequest=Rd={}));var vd;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=xa.MessageDirection.clientToServer,t.type=new xa.ProtocolRequestType(t.method)})(vd||(ti.ColorPresentationRequest=vd={}));var ni={};Object.defineProperty(ni,"__esModule",{value:!0});ni.FoldingRangeRefreshRequest=ni.FoldingRangeRequest=void 0;const Da=H;var Ed;(function(t){t.method="textDocument/foldingRange",t.messageDirection=Da.MessageDirection.clientToServer,t.type=new Da.ProtocolRequestType(t.method)})(Ed||(ni.FoldingRangeRequest=Ed={}));var Ad;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=Da.MessageDirection.serverToClient,t.type=new Da.ProtocolRequestType0(t.method)})(Ad||(ni.FoldingRangeRefreshRequest=Ad={}));var co={};Object.defineProperty(co,"__esModule",{value:!0});co.DeclarationRequest=void 0;const Sd=H;var Cd;(function(t){t.method="textDocument/declaration",t.messageDirection=Sd.MessageDirection.clientToServer,t.type=new Sd.ProtocolRequestType(t.method)})(Cd||(co.DeclarationRequest=Cd={}));var lo={};Object.defineProperty(lo,"__esModule",{value:!0});lo.SelectionRangeRequest=void 0;const kd=H;var Nd;(function(t){t.method="textDocument/selectionRange",t.messageDirection=kd.MessageDirection.clientToServer,t.type=new kd.ProtocolRequestType(t.method)})(Nd||(lo.SelectionRangeRequest=Nd={}));var yn={};Object.defineProperty(yn,"__esModule",{value:!0});yn.WorkDoneProgressCancelNotification=yn.WorkDoneProgressCreateRequest=yn.WorkDoneProgress=void 0;const GE=er,Ma=H;var wd;(function(t){t.type=new GE.ProgressType;function e(n){return n===t.type}t.is=e})(wd||(yn.WorkDoneProgress=wd={}));var bd;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=Ma.MessageDirection.serverToClient,t.type=new Ma.ProtocolRequestType(t.method)})(bd||(yn.WorkDoneProgressCreateRequest=bd={}));var _d;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=Ma.MessageDirection.clientToServer,t.type=new Ma.ProtocolNotificationType(t.method)})(_d||(yn.WorkDoneProgressCancelNotification=_d={}));var Tn={};Object.defineProperty(Tn,"__esModule",{value:!0});Tn.CallHierarchyOutgoingCallsRequest=Tn.CallHierarchyIncomingCallsRequest=Tn.CallHierarchyPrepareRequest=void 0;const ri=H;var Id;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=ri.MessageDirection.clientToServer,t.type=new ri.ProtocolRequestType(t.method)})(Id||(Tn.CallHierarchyPrepareRequest=Id={}));var $d;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=ri.MessageDirection.clientToServer,t.type=new ri.ProtocolRequestType(t.method)})($d||(Tn.CallHierarchyIncomingCallsRequest=$d={}));var Pd;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=ri.MessageDirection.clientToServer,t.type=new ri.ProtocolRequestType(t.method)})(Pd||(Tn.CallHierarchyOutgoingCallsRequest=Pd={}));var nt={};Object.defineProperty(nt,"__esModule",{value:!0});nt.SemanticTokensRefreshRequest=nt.SemanticTokensRangeRequest=nt.SemanticTokensDeltaRequest=nt.SemanticTokensRequest=nt.SemanticTokensRegistrationType=nt.TokenFormat=void 0;const an=H;var Ld;(function(t){t.Relative="relative"})(Ld||(nt.TokenFormat=Ld={}));var ss;(function(t){t.method="textDocument/semanticTokens",t.type=new an.RegistrationType(t.method)})(ss||(nt.SemanticTokensRegistrationType=ss={}));var Od;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=an.MessageDirection.clientToServer,t.type=new an.ProtocolRequestType(t.method),t.registrationMethod=ss.method})(Od||(nt.SemanticTokensRequest=Od={}));var xd;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=an.MessageDirection.clientToServer,t.type=new an.ProtocolRequestType(t.method),t.registrationMethod=ss.method})(xd||(nt.SemanticTokensDeltaRequest=xd={}));var Dd;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=an.MessageDirection.clientToServer,t.type=new an.ProtocolRequestType(t.method),t.registrationMethod=ss.method})(Dd||(nt.SemanticTokensRangeRequest=Dd={}));var Md;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=an.MessageDirection.serverToClient,t.type=new an.ProtocolRequestType0(t.method)})(Md||(nt.SemanticTokensRefreshRequest=Md={}));var uo={};Object.defineProperty(uo,"__esModule",{value:!0});uo.ShowDocumentRequest=void 0;const Fd=H;var Gd;(function(t){t.method="window/showDocument",t.messageDirection=Fd.MessageDirection.serverToClient,t.type=new Fd.ProtocolRequestType(t.method)})(Gd||(uo.ShowDocumentRequest=Gd={}));var fo={};Object.defineProperty(fo,"__esModule",{value:!0});fo.LinkedEditingRangeRequest=void 0;const Ud=H;var jd;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=Ud.MessageDirection.clientToServer,t.type=new Ud.ProtocolRequestType(t.method)})(jd||(fo.LinkedEditingRangeRequest=jd={}));var Ve={};Object.defineProperty(Ve,"__esModule",{value:!0});Ve.WillDeleteFilesRequest=Ve.DidDeleteFilesNotification=Ve.DidRenameFilesNotification=Ve.WillRenameFilesRequest=Ve.DidCreateFilesNotification=Ve.WillCreateFilesRequest=Ve.FileOperationPatternKind=void 0;const Et=H;var zd;(function(t){t.file="file",t.folder="folder"})(zd||(Ve.FileOperationPatternKind=zd={}));var Bd;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Bd||(Ve.WillCreateFilesRequest=Bd={}));var qd;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(qd||(Ve.DidCreateFilesNotification=qd={}));var Wd;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Wd||(Ve.WillRenameFilesRequest=Wd={}));var Vd;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Vd||(Ve.DidRenameFilesNotification=Vd={}));var Kd;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolNotificationType(t.method)})(Kd||(Ve.DidDeleteFilesNotification=Kd={}));var Hd;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=Et.MessageDirection.clientToServer,t.type=new Et.ProtocolRequestType(t.method)})(Hd||(Ve.WillDeleteFilesRequest=Hd={}));var Rn={};Object.defineProperty(Rn,"__esModule",{value:!0});Rn.MonikerRequest=Rn.MonikerKind=Rn.UniquenessLevel=void 0;const Yd=H;var Xd;(function(t){t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global"})(Xd||(Rn.UniquenessLevel=Xd={}));var Jd;(function(t){t.$import="import",t.$export="export",t.local="local"})(Jd||(Rn.MonikerKind=Jd={}));var Qd;(function(t){t.method="textDocument/moniker",t.messageDirection=Yd.MessageDirection.clientToServer,t.type=new Yd.ProtocolRequestType(t.method)})(Qd||(Rn.MonikerRequest=Qd={}));var vn={};Object.defineProperty(vn,"__esModule",{value:!0});vn.TypeHierarchySubtypesRequest=vn.TypeHierarchySupertypesRequest=vn.TypeHierarchyPrepareRequest=void 0;const ii=H;var Zd;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=ii.MessageDirection.clientToServer,t.type=new ii.ProtocolRequestType(t.method)})(Zd||(vn.TypeHierarchyPrepareRequest=Zd={}));var ef;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=ii.MessageDirection.clientToServer,t.type=new ii.ProtocolRequestType(t.method)})(ef||(vn.TypeHierarchySupertypesRequest=ef={}));var tf;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=ii.MessageDirection.clientToServer,t.type=new ii.ProtocolRequestType(t.method)})(tf||(vn.TypeHierarchySubtypesRequest=tf={}));var si={};Object.defineProperty(si,"__esModule",{value:!0});si.InlineValueRefreshRequest=si.InlineValueRequest=void 0;const Fa=H;var nf;(function(t){t.method="textDocument/inlineValue",t.messageDirection=Fa.MessageDirection.clientToServer,t.type=new Fa.ProtocolRequestType(t.method)})(nf||(si.InlineValueRequest=nf={}));var rf;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=Fa.MessageDirection.serverToClient,t.type=new Fa.ProtocolRequestType0(t.method)})(rf||(si.InlineValueRefreshRequest=rf={}));var En={};Object.defineProperty(En,"__esModule",{value:!0});En.InlayHintRefreshRequest=En.InlayHintResolveRequest=En.InlayHintRequest=void 0;const ai=H;var sf;(function(t){t.method="textDocument/inlayHint",t.messageDirection=ai.MessageDirection.clientToServer,t.type=new ai.ProtocolRequestType(t.method)})(sf||(En.InlayHintRequest=sf={}));var af;(function(t){t.method="inlayHint/resolve",t.messageDirection=ai.MessageDirection.clientToServer,t.type=new ai.ProtocolRequestType(t.method)})(af||(En.InlayHintResolveRequest=af={}));var of;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=ai.MessageDirection.serverToClient,t.type=new ai.ProtocolRequestType0(t.method)})(of||(En.InlayHintRefreshRequest=of={}));var Tt={};Object.defineProperty(Tt,"__esModule",{value:!0});Tt.DiagnosticRefreshRequest=Tt.WorkspaceDiagnosticRequest=Tt.DocumentDiagnosticRequest=Tt.DocumentDiagnosticReportKind=Tt.DiagnosticServerCancellationData=void 0;const wp=er,UE=ve,oi=H;var cf;(function(t){function e(n){const r=n;return r&&UE.boolean(r.retriggerRequest)}t.is=e})(cf||(Tt.DiagnosticServerCancellationData=cf={}));var lf;(function(t){t.Full="full",t.Unchanged="unchanged"})(lf||(Tt.DocumentDiagnosticReportKind=lf={}));var uf;(function(t){t.method="textDocument/diagnostic",t.messageDirection=oi.MessageDirection.clientToServer,t.type=new oi.ProtocolRequestType(t.method),t.partialResult=new wp.ProgressType})(uf||(Tt.DocumentDiagnosticRequest=uf={}));var df;(function(t){t.method="workspace/diagnostic",t.messageDirection=oi.MessageDirection.clientToServer,t.type=new oi.ProtocolRequestType(t.method),t.partialResult=new wp.ProgressType})(df||(Tt.WorkspaceDiagnosticRequest=df={}));var ff;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=oi.MessageDirection.serverToClient,t.type=new oi.ProtocolRequestType0(t.method)})(ff||(Tt.DiagnosticRefreshRequest=ff={}));var Re={};Object.defineProperty(Re,"__esModule",{value:!0});Re.DidCloseNotebookDocumentNotification=Re.DidSaveNotebookDocumentNotification=Re.DidChangeNotebookDocumentNotification=Re.NotebookCellArrayChange=Re.DidOpenNotebookDocumentNotification=Re.NotebookDocumentSyncRegistrationType=Re.NotebookDocument=Re.NotebookCell=Re.ExecutionSummary=Re.NotebookCellKind=void 0;const as=ru,bt=ve,zt=H;var Rl;(function(t){t.Markup=1,t.Code=2;function e(n){return n===1||n===2}t.is=e})(Rl||(Re.NotebookCellKind=Rl={}));var vl;(function(t){function e(i,s){const a={executionOrder:i};return(s===!0||s===!1)&&(a.success=s),a}t.create=e;function n(i){const s=i;return bt.objectLiteral(s)&&as.uinteger.is(s.executionOrder)&&(s.success===void 0||bt.boolean(s.success))}t.is=n;function r(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=r})(vl||(Re.ExecutionSummary=vl={}));var Ga;(function(t){function e(s,a){return{kind:s,document:a}}t.create=e;function n(s){const a=s;return bt.objectLiteral(a)&&Rl.is(a.kind)&&as.DocumentUri.is(a.document)&&(a.metadata===void 0||bt.objectLiteral(a.metadata))}t.is=n;function r(s,a){const o=new Set;return s.document!==a.document&&o.add("document"),s.kind!==a.kind&&o.add("kind"),s.executionSummary!==a.executionSummary&&o.add("executionSummary"),(s.metadata!==void 0||a.metadata!==void 0)&&!i(s.metadata,a.metadata)&&o.add("metadata"),(s.executionSummary!==void 0||a.executionSummary!==void 0)&&!vl.equals(s.executionSummary,a.executionSummary)&&o.add("executionSummary"),o}t.diff=r;function i(s,a){if(s===a)return!0;if(s==null||a===null||a===void 0||typeof s!=typeof a||typeof s!="object")return!1;const o=Array.isArray(s),c=Array.isArray(a);if(o!==c)return!1;if(o&&c){if(s.length!==a.length)return!1;for(let l=0;l<s.length;l++)if(!i(s[l],a[l]))return!1}if(bt.objectLiteral(s)&&bt.objectLiteral(a)){const l=Object.keys(s),d=Object.keys(a);if(l.length!==d.length||(l.sort(),d.sort(),!i(l,d)))return!1;for(let h=0;h<l.length;h++){const p=l[h];if(!i(s[p],a[p]))return!1}}return!0}})(Ga||(Re.NotebookCell=Ga={}));var hf;(function(t){function e(r,i,s,a){return{uri:r,notebookType:i,version:s,cells:a}}t.create=e;function n(r){const i=r;return bt.objectLiteral(i)&&bt.string(i.uri)&&as.integer.is(i.version)&&bt.typedArray(i.cells,Ga.is)}t.is=n})(hf||(Re.NotebookDocument=hf={}));var ci;(function(t){t.method="notebookDocument/sync",t.messageDirection=zt.MessageDirection.clientToServer,t.type=new zt.RegistrationType(t.method)})(ci||(Re.NotebookDocumentSyncRegistrationType=ci={}));var pf;(function(t){t.method="notebookDocument/didOpen",t.messageDirection=zt.MessageDirection.clientToServer,t.type=new zt.ProtocolNotificationType(t.method),t.registrationMethod=ci.method})(pf||(Re.DidOpenNotebookDocumentNotification=pf={}));var mf;(function(t){function e(r){const i=r;return bt.objectLiteral(i)&&as.uinteger.is(i.start)&&as.uinteger.is(i.deleteCount)&&(i.cells===void 0||bt.typedArray(i.cells,Ga.is))}t.is=e;function n(r,i,s){const a={start:r,deleteCount:i};return s!==void 0&&(a.cells=s),a}t.create=n})(mf||(Re.NotebookCellArrayChange=mf={}));var gf;(function(t){t.method="notebookDocument/didChange",t.messageDirection=zt.MessageDirection.clientToServer,t.type=new zt.ProtocolNotificationType(t.method),t.registrationMethod=ci.method})(gf||(Re.DidChangeNotebookDocumentNotification=gf={}));var yf;(function(t){t.method="notebookDocument/didSave",t.messageDirection=zt.MessageDirection.clientToServer,t.type=new zt.ProtocolNotificationType(t.method),t.registrationMethod=ci.method})(yf||(Re.DidSaveNotebookDocumentNotification=yf={}));var Tf;(function(t){t.method="notebookDocument/didClose",t.messageDirection=zt.MessageDirection.clientToServer,t.type=new zt.ProtocolNotificationType(t.method),t.registrationMethod=ci.method})(Tf||(Re.DidCloseNotebookDocumentNotification=Tf={}));var ho={};Object.defineProperty(ho,"__esModule",{value:!0});ho.InlineCompletionRequest=void 0;const Rf=H;var vf;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=Rf.MessageDirection.clientToServer,t.type=new Rf.ProtocolRequestType(t.method)})(vf||(ho.InlineCompletionRequest=vf={}));(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.WorkspaceSymbolRequest=t.CodeActionResolveRequest=t.CodeActionRequest=t.DocumentSymbolRequest=t.DocumentHighlightRequest=t.ReferencesRequest=t.DefinitionRequest=t.SignatureHelpRequest=t.SignatureHelpTriggerKind=t.HoverRequest=t.CompletionResolveRequest=t.CompletionRequest=t.CompletionTriggerKind=t.PublishDiagnosticsNotification=t.WatchKind=t.RelativePattern=t.FileChangeType=t.DidChangeWatchedFilesNotification=t.WillSaveTextDocumentWaitUntilRequest=t.WillSaveTextDocumentNotification=t.TextDocumentSaveReason=t.DidSaveTextDocumentNotification=t.DidCloseTextDocumentNotification=t.DidChangeTextDocumentNotification=t.TextDocumentContentChangeEvent=t.DidOpenTextDocumentNotification=t.TextDocumentSyncKind=t.TelemetryEventNotification=t.LogMessageNotification=t.ShowMessageRequest=t.ShowMessageNotification=t.MessageType=t.DidChangeConfigurationNotification=t.ExitNotification=t.ShutdownRequest=t.InitializedNotification=t.InitializeErrorCodes=t.InitializeRequest=t.WorkDoneProgressOptions=t.TextDocumentRegistrationOptions=t.StaticRegistrationOptions=t.PositionEncodingKind=t.FailureHandlingKind=t.ResourceOperationKind=t.UnregistrationRequest=t.RegistrationRequest=t.DocumentSelector=t.NotebookCellTextDocumentFilter=t.NotebookDocumentFilter=t.TextDocumentFilter=void 0,t.MonikerRequest=t.MonikerKind=t.UniquenessLevel=t.WillDeleteFilesRequest=t.DidDeleteFilesNotification=t.WillRenameFilesRequest=t.DidRenameFilesNotification=t.WillCreateFilesRequest=t.DidCreateFilesNotification=t.FileOperationPatternKind=t.LinkedEditingRangeRequest=t.ShowDocumentRequest=t.SemanticTokensRegistrationType=t.SemanticTokensRefreshRequest=t.SemanticTokensRangeRequest=t.SemanticTokensDeltaRequest=t.SemanticTokensRequest=t.TokenFormat=t.CallHierarchyPrepareRequest=t.CallHierarchyOutgoingCallsRequest=t.CallHierarchyIncomingCallsRequest=t.WorkDoneProgressCancelNotification=t.WorkDoneProgressCreateRequest=t.WorkDoneProgress=t.SelectionRangeRequest=t.DeclarationRequest=t.FoldingRangeRefreshRequest=t.FoldingRangeRequest=t.ColorPresentationRequest=t.DocumentColorRequest=t.ConfigurationRequest=t.DidChangeWorkspaceFoldersNotification=t.WorkspaceFoldersRequest=t.TypeDefinitionRequest=t.ImplementationRequest=t.ApplyWorkspaceEditRequest=t.ExecuteCommandRequest=t.PrepareRenameRequest=t.RenameRequest=t.PrepareSupportDefaultBehavior=t.DocumentOnTypeFormattingRequest=t.DocumentRangesFormattingRequest=t.DocumentRangeFormattingRequest=t.DocumentFormattingRequest=t.DocumentLinkResolveRequest=t.DocumentLinkRequest=t.CodeLensRefreshRequest=t.CodeLensResolveRequest=t.CodeLensRequest=t.WorkspaceSymbolResolveRequest=void 0,t.InlineCompletionRequest=t.DidCloseNotebookDocumentNotification=t.DidSaveNotebookDocumentNotification=t.DidChangeNotebookDocumentNotification=t.NotebookCellArrayChange=t.DidOpenNotebookDocumentNotification=t.NotebookDocumentSyncRegistrationType=t.NotebookDocument=t.NotebookCell=t.ExecutionSummary=t.NotebookCellKind=t.DiagnosticRefreshRequest=t.WorkspaceDiagnosticRequest=t.DocumentDiagnosticRequest=t.DocumentDiagnosticReportKind=t.DiagnosticServerCancellationData=t.InlayHintRefreshRequest=t.InlayHintResolveRequest=t.InlayHintRequest=t.InlineValueRefreshRequest=t.InlineValueRequest=t.TypeHierarchySupertypesRequest=t.TypeHierarchySubtypesRequest=t.TypeHierarchyPrepareRequest=void 0;const e=H,n=ru,r=ve,i=so;Object.defineProperty(t,"ImplementationRequest",{enumerable:!0,get:function(){return i.ImplementationRequest}});const s=ao;Object.defineProperty(t,"TypeDefinitionRequest",{enumerable:!0,get:function(){return s.TypeDefinitionRequest}});const a=ei;Object.defineProperty(t,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return a.WorkspaceFoldersRequest}}),Object.defineProperty(t,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return a.DidChangeWorkspaceFoldersNotification}});const o=oo;Object.defineProperty(t,"ConfigurationRequest",{enumerable:!0,get:function(){return o.ConfigurationRequest}});const c=ti;Object.defineProperty(t,"DocumentColorRequest",{enumerable:!0,get:function(){return c.DocumentColorRequest}}),Object.defineProperty(t,"ColorPresentationRequest",{enumerable:!0,get:function(){return c.ColorPresentationRequest}});const l=ni;Object.defineProperty(t,"FoldingRangeRequest",{enumerable:!0,get:function(){return l.FoldingRangeRequest}}),Object.defineProperty(t,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return l.FoldingRangeRefreshRequest}});const d=co;Object.defineProperty(t,"DeclarationRequest",{enumerable:!0,get:function(){return d.DeclarationRequest}});const h=lo;Object.defineProperty(t,"SelectionRangeRequest",{enumerable:!0,get:function(){return h.SelectionRangeRequest}});const p=yn;Object.defineProperty(t,"WorkDoneProgress",{enumerable:!0,get:function(){return p.WorkDoneProgress}}),Object.defineProperty(t,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return p.WorkDoneProgressCreateRequest}}),Object.defineProperty(t,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return p.WorkDoneProgressCancelNotification}});const g=Tn;Object.defineProperty(t,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return g.CallHierarchyIncomingCallsRequest}}),Object.defineProperty(t,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return g.CallHierarchyOutgoingCallsRequest}}),Object.defineProperty(t,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return g.CallHierarchyPrepareRequest}});const C=nt;Object.defineProperty(t,"TokenFormat",{enumerable:!0,get:function(){return C.TokenFormat}}),Object.defineProperty(t,"SemanticTokensRequest",{enumerable:!0,get:function(){return C.SemanticTokensRequest}}),Object.defineProperty(t,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return C.SemanticTokensDeltaRequest}}),Object.defineProperty(t,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return C.SemanticTokensRangeRequest}}),Object.defineProperty(t,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return C.SemanticTokensRefreshRequest}}),Object.defineProperty(t,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return C.SemanticTokensRegistrationType}});const w=uo;Object.defineProperty(t,"ShowDocumentRequest",{enumerable:!0,get:function(){return w.ShowDocumentRequest}});const D=fo;Object.defineProperty(t,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return D.LinkedEditingRangeRequest}});const N=Ve;Object.defineProperty(t,"FileOperationPatternKind",{enumerable:!0,get:function(){return N.FileOperationPatternKind}}),Object.defineProperty(t,"DidCreateFilesNotification",{enumerable:!0,get:function(){return N.DidCreateFilesNotification}}),Object.defineProperty(t,"WillCreateFilesRequest",{enumerable:!0,get:function(){return N.WillCreateFilesRequest}}),Object.defineProperty(t,"DidRenameFilesNotification",{enumerable:!0,get:function(){return N.DidRenameFilesNotification}}),Object.defineProperty(t,"WillRenameFilesRequest",{enumerable:!0,get:function(){return N.WillRenameFilesRequest}}),Object.defineProperty(t,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return N.DidDeleteFilesNotification}}),Object.defineProperty(t,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return N.WillDeleteFilesRequest}});const L=Rn;Object.defineProperty(t,"UniquenessLevel",{enumerable:!0,get:function(){return L.UniquenessLevel}}),Object.defineProperty(t,"MonikerKind",{enumerable:!0,get:function(){return L.MonikerKind}}),Object.defineProperty(t,"MonikerRequest",{enumerable:!0,get:function(){return L.MonikerRequest}});const b=vn;Object.defineProperty(t,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return b.TypeHierarchyPrepareRequest}}),Object.defineProperty(t,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return b.TypeHierarchySubtypesRequest}}),Object.defineProperty(t,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return b.TypeHierarchySupertypesRequest}});const O=si;Object.defineProperty(t,"InlineValueRequest",{enumerable:!0,get:function(){return O.InlineValueRequest}}),Object.defineProperty(t,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return O.InlineValueRefreshRequest}});const J=En;Object.defineProperty(t,"InlayHintRequest",{enumerable:!0,get:function(){return J.InlayHintRequest}}),Object.defineProperty(t,"InlayHintResolveRequest",{enumerable:!0,get:function(){return J.InlayHintResolveRequest}}),Object.defineProperty(t,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return J.InlayHintRefreshRequest}});const re=Tt;Object.defineProperty(t,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return re.DiagnosticServerCancellationData}}),Object.defineProperty(t,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return re.DocumentDiagnosticReportKind}}),Object.defineProperty(t,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return re.DocumentDiagnosticRequest}}),Object.defineProperty(t,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return re.WorkspaceDiagnosticRequest}}),Object.defineProperty(t,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return re.DiagnosticRefreshRequest}});const ie=Re;Object.defineProperty(t,"NotebookCellKind",{enumerable:!0,get:function(){return ie.NotebookCellKind}}),Object.defineProperty(t,"ExecutionSummary",{enumerable:!0,get:function(){return ie.ExecutionSummary}}),Object.defineProperty(t,"NotebookCell",{enumerable:!0,get:function(){return ie.NotebookCell}}),Object.defineProperty(t,"NotebookDocument",{enumerable:!0,get:function(){return ie.NotebookDocument}}),Object.defineProperty(t,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return ie.NotebookDocumentSyncRegistrationType}}),Object.defineProperty(t,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return ie.DidOpenNotebookDocumentNotification}}),Object.defineProperty(t,"NotebookCellArrayChange",{enumerable:!0,get:function(){return ie.NotebookCellArrayChange}}),Object.defineProperty(t,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return ie.DidChangeNotebookDocumentNotification}}),Object.defineProperty(t,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return ie.DidSaveNotebookDocumentNotification}}),Object.defineProperty(t,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return ie.DidCloseNotebookDocumentNotification}});const we=ho;Object.defineProperty(t,"InlineCompletionRequest",{enumerable:!0,get:function(){return we.InlineCompletionRequest}});var $e;(function(u){function Ce(ke){const V=ke;return r.string(V)||r.string(V.language)||r.string(V.scheme)||r.string(V.pattern)}u.is=Ce})($e||(t.TextDocumentFilter=$e={}));var Se;(function(u){function Ce(ke){const V=ke;return r.objectLiteral(V)&&(r.string(V.notebookType)||r.string(V.scheme)||r.string(V.pattern))}u.is=Ce})(Se||(t.NotebookDocumentFilter=Se={}));var k;(function(u){function Ce(ke){const V=ke;return r.objectLiteral(V)&&(r.string(V.notebook)||Se.is(V.notebook))&&(V.language===void 0||r.string(V.language))}u.is=Ce})(k||(t.NotebookCellTextDocumentFilter=k={}));var E;(function(u){function Ce(ke){if(!Array.isArray(ke))return!1;for(let V of ke)if(!r.string(V)&&!$e.is(V)&&!k.is(V))return!1;return!0}u.is=Ce})(E||(t.DocumentSelector=E={}));var m;(function(u){u.method="client/registerCapability",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType(u.method)})(m||(t.RegistrationRequest=m={}));var S;(function(u){u.method="client/unregisterCapability",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType(u.method)})(S||(t.UnregistrationRequest=S={}));var y;(function(u){u.Create="create",u.Rename="rename",u.Delete="delete"})(y||(t.ResourceOperationKind=y={}));var T;(function(u){u.Abort="abort",u.Transactional="transactional",u.TextOnlyTransactional="textOnlyTransactional",u.Undo="undo"})(T||(t.FailureHandlingKind=T={}));var v;(function(u){u.UTF8="utf-8",u.UTF16="utf-16",u.UTF32="utf-32"})(v||(t.PositionEncodingKind=v={}));var $;(function(u){function Ce(ke){const V=ke;return V&&r.string(V.id)&&V.id.length>0}u.hasId=Ce})($||(t.StaticRegistrationOptions=$={}));var x;(function(u){function Ce(ke){const V=ke;return V&&(V.documentSelector===null||E.is(V.documentSelector))}u.is=Ce})(x||(t.TextDocumentRegistrationOptions=x={}));var P;(function(u){function Ce(V){const f=V;return r.objectLiteral(f)&&(f.workDoneProgress===void 0||r.boolean(f.workDoneProgress))}u.is=Ce;function ke(V){const f=V;return f&&r.boolean(f.workDoneProgress)}u.hasWorkDoneProgress=ke})(P||(t.WorkDoneProgressOptions=P={}));var z;(function(u){u.method="initialize",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(z||(t.InitializeRequest=z={}));var G;(function(u){u.unknownProtocolVersion=1})(G||(t.InitializeErrorCodes=G={}));var se;(function(u){u.method="initialized",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(se||(t.InitializedNotification=se={}));var q;(function(u){u.method="shutdown",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType0(u.method)})(q||(t.ShutdownRequest=q={}));var te;(function(u){u.method="exit",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType0(u.method)})(te||(t.ExitNotification=te={}));var De;(function(u){u.method="workspace/didChangeConfiguration",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(De||(t.DidChangeConfigurationNotification=De={}));var ye;(function(u){u.Error=1,u.Warning=2,u.Info=3,u.Log=4,u.Debug=5})(ye||(t.MessageType=ye={}));var de;(function(u){u.method="window/showMessage",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolNotificationType(u.method)})(de||(t.ShowMessageNotification=de={}));var Pe;(function(u){u.method="window/showMessageRequest",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType(u.method)})(Pe||(t.ShowMessageRequest=Pe={}));var Me;(function(u){u.method="window/logMessage",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolNotificationType(u.method)})(Me||(t.LogMessageNotification=Me={}));var be;(function(u){u.method="telemetry/event",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolNotificationType(u.method)})(be||(t.TelemetryEventNotification=be={}));var Q;(function(u){u.None=0,u.Full=1,u.Incremental=2})(Q||(t.TextDocumentSyncKind=Q={}));var ct;(function(u){u.method="textDocument/didOpen",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(ct||(t.DidOpenTextDocumentNotification=ct={}));var Te;(function(u){function Ce(V){let f=V;return f!=null&&typeof f.text=="string"&&f.range!==void 0&&(f.rangeLength===void 0||typeof f.rangeLength=="number")}u.isIncremental=Ce;function ke(V){let f=V;return f!=null&&typeof f.text=="string"&&f.range===void 0&&f.rangeLength===void 0}u.isFull=ke})(Te||(t.TextDocumentContentChangeEvent=Te={}));var At;(function(u){u.method="textDocument/didChange",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(At||(t.DidChangeTextDocumentNotification=At={}));var rr;(function(u){u.method="textDocument/didClose",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(rr||(t.DidCloseTextDocumentNotification=rr={}));var pi;(function(u){u.method="textDocument/didSave",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(pi||(t.DidSaveTextDocumentNotification=pi={}));var mi;(function(u){u.Manual=1,u.AfterDelay=2,u.FocusOut=3})(mi||(t.TextDocumentSaveReason=mi={}));var gi;(function(u){u.method="textDocument/willSave",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(gi||(t.WillSaveTextDocumentNotification=gi={}));var yi;(function(u){u.method="textDocument/willSaveWaitUntil",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(yi||(t.WillSaveTextDocumentWaitUntilRequest=yi={}));var St;(function(u){u.method="workspace/didChangeWatchedFiles",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolNotificationType(u.method)})(St||(t.DidChangeWatchedFilesNotification=St={}));var Ti;(function(u){u.Created=1,u.Changed=2,u.Deleted=3})(Ti||(t.FileChangeType=Ti={}));var Ts;(function(u){function Ce(ke){const V=ke;return r.objectLiteral(V)&&(n.URI.is(V.baseUri)||n.WorkspaceFolder.is(V.baseUri))&&r.string(V.pattern)}u.is=Ce})(Ts||(t.RelativePattern=Ts={}));var Rs;(function(u){u.Create=1,u.Change=2,u.Delete=4})(Rs||(t.WatchKind=Rs={}));var vs;(function(u){u.method="textDocument/publishDiagnostics",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolNotificationType(u.method)})(vs||(t.PublishDiagnosticsNotification=vs={}));var Es;(function(u){u.Invoked=1,u.TriggerCharacter=2,u.TriggerForIncompleteCompletions=3})(Es||(t.CompletionTriggerKind=Es={}));var Ri;(function(u){u.method="textDocument/completion",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ri||(t.CompletionRequest=Ri={}));var vi;(function(u){u.method="completionItem/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(vi||(t.CompletionResolveRequest=vi={}));var qt;(function(u){u.method="textDocument/hover",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(qt||(t.HoverRequest=qt={}));var Ei;(function(u){u.Invoked=1,u.TriggerCharacter=2,u.ContentChange=3})(Ei||(t.SignatureHelpTriggerKind=Ei={}));var As;(function(u){u.method="textDocument/signatureHelp",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(As||(t.SignatureHelpRequest=As={}));var Ss;(function(u){u.method="textDocument/definition",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ss||(t.DefinitionRequest=Ss={}));var Ai;(function(u){u.method="textDocument/references",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ai||(t.ReferencesRequest=Ai={}));var Si;(function(u){u.method="textDocument/documentHighlight",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Si||(t.DocumentHighlightRequest=Si={}));var Cs;(function(u){u.method="textDocument/documentSymbol",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Cs||(t.DocumentSymbolRequest=Cs={}));var ks;(function(u){u.method="textDocument/codeAction",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(ks||(t.CodeActionRequest=ks={}));var Ns;(function(u){u.method="codeAction/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ns||(t.CodeActionResolveRequest=Ns={}));var ws;(function(u){u.method="workspace/symbol",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(ws||(t.WorkspaceSymbolRequest=ws={}));var bs;(function(u){u.method="workspaceSymbol/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(bs||(t.WorkspaceSymbolResolveRequest=bs={}));var _s;(function(u){u.method="textDocument/codeLens",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(_s||(t.CodeLensRequest=_s={}));var Ct;(function(u){u.method="codeLens/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ct||(t.CodeLensResolveRequest=Ct={}));var Is;(function(u){u.method="workspace/codeLens/refresh",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType0(u.method)})(Is||(t.CodeLensRefreshRequest=Is={}));var $s;(function(u){u.method="textDocument/documentLink",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})($s||(t.DocumentLinkRequest=$s={}));var Pn;(function(u){u.method="documentLink/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Pn||(t.DocumentLinkResolveRequest=Pn={}));var Ps;(function(u){u.method="textDocument/formatting",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ps||(t.DocumentFormattingRequest=Ps={}));var ir;(function(u){u.method="textDocument/rangeFormatting",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(ir||(t.DocumentRangeFormattingRequest=ir={}));var Ls;(function(u){u.method="textDocument/rangesFormatting",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Ls||(t.DocumentRangesFormattingRequest=Ls={}));var Wt;(function(u){u.method="textDocument/onTypeFormatting",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Wt||(t.DocumentOnTypeFormattingRequest=Wt={}));var un;(function(u){u.Identifier=1})(un||(t.PrepareSupportDefaultBehavior=un={}));var Os;(function(u){u.method="textDocument/rename",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(Os||(t.RenameRequest=Os={}));var xs;(function(u){u.method="textDocument/prepareRename",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(xs||(t.PrepareRenameRequest=xs={}));var dn;(function(u){u.method="workspace/executeCommand",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(dn||(t.ExecuteCommandRequest=dn={}));var Ci;(function(u){u.method="workspace/applyEdit",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType("workspace/applyEdit")})(Ci||(t.ApplyWorkspaceEditRequest=Ci={}))})(Cp);var po={};Object.defineProperty(po,"__esModule",{value:!0});po.createProtocolConnection=void 0;const Ef=er;function jE(t,e,n,r){return Ef.ConnectionStrategy.is(r)&&(r={connectionStrategy:r}),(0,Ef.createMessageConnection)(t,e,n,r)}po.createProtocolConnection=jE;(function(t){var e=Rt&&Rt.__createBinding||(Object.create?function(s,a,o,c){c===void 0&&(c=o);var l=Object.getOwnPropertyDescriptor(a,o);(!l||("get"in l?!a.__esModule:l.writable||l.configurable))&&(l={enumerable:!0,get:function(){return a[o]}}),Object.defineProperty(s,c,l)}:function(s,a,o,c){c===void 0&&(c=o),s[c]=a[o]}),n=Rt&&Rt.__exportStar||function(s,a){for(var o in s)o!=="default"&&!Object.prototype.hasOwnProperty.call(a,o)&&e(a,s,o)};Object.defineProperty(t,"__esModule",{value:!0}),t.LSPErrorCodes=t.createProtocolConnection=void 0,n(er,t),n(ru,t),n(H,t),n(Cp,t);var r=po;Object.defineProperty(t,"createProtocolConnection",{enumerable:!0,get:function(){return r.createProtocolConnection}});var i;(function(s){s.lspReservedErrorRangeStart=-32899,s.RequestFailed=-32803,s.ServerCancelled=-32802,s.ContentModified=-32801,s.RequestCancelled=-32800,s.lspReservedErrorRangeEnd=-32800})(i||(t.LSPErrorCodes=i={}))})(Sp);(function(t){var e=Rt&&Rt.__createBinding||(Object.create?function(s,a,o,c){c===void 0&&(c=o);var l=Object.getOwnPropertyDescriptor(a,o);(!l||("get"in l?!a.__esModule:l.writable||l.configurable))&&(l={enumerable:!0,get:function(){return a[o]}}),Object.defineProperty(s,c,l)}:function(s,a,o,c){c===void 0&&(c=o),s[c]=a[o]}),n=Rt&&Rt.__exportStar||function(s,a){for(var o in s)o!=="default"&&!Object.prototype.hasOwnProperty.call(a,o)&&e(a,s,o)};Object.defineProperty(t,"__esModule",{value:!0}),t.createProtocolConnection=void 0;const r=ld;n(ld,t),n(Sp,t);function i(s,a,o,c){return(0,r.createMessageConnection)(s,a,o,c)}t.createProtocolConnection=i})(zi);var Wi;(function(t){function e(n){return{dispose:async()=>await n()}}t.create=e})(Wi||(Wi={}));class zE{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new rs,this.documentPhaseListeners=new rs,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=K.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}async build(e,n={},r=me.None){var i;for(const s of e){const a=s.uri.toString();if(s.state===K.Validated){if(typeof n.validation=="boolean"&&n.validation)this.resetToState(s,K.IndexedReferences);else if(typeof n.validation=="object"){const o=this.findMissingValidationCategories(s,n);o.length>0&&(this.buildState.set(a,{completed:!1,options:{validation:{categories:o}},result:(i=this.buildState.get(a))==null?void 0:i.result}),s.state=K.IndexedReferences)}}else this.buildState.delete(a)}this.currentState=K.Changed,await this.emitUpdate(e.map(s=>s.uri),[]),await this.buildDocuments(e,n,r)}async update(e,n,r=me.None){this.currentState=K.Changed;const i=[];for(const c of n){const l=this.langiumDocuments.deleteDocuments(c);for(const d of l)i.push(d.uri),this.cleanUpDeleted(d)}const s=(await Promise.all(e.map(c=>this.findChangedUris(c)))).flat();for(const c of s){let l=this.langiumDocuments.getDocument(c);l===void 0&&(l=this.langiumDocumentFactory.fromModel({$type:"INVALID"},c),l.state=K.Changed,this.langiumDocuments.addDocument(l)),this.resetToState(l,K.Changed)}const a=he(s).concat(i).map(c=>c.toString()).toSet();this.langiumDocuments.all.filter(c=>!a.has(c.uri.toString())&&this.shouldRelink(c,a)).forEach(c=>this.resetToState(c,K.ComputedScopes)),await this.emitUpdate(s,i),await Je(r);const o=this.sortDocuments(this.langiumDocuments.all.filter(c=>{var l;return c.state<K.Validated||!((l=this.buildState.get(c.uri.toString()))!=null&&l.completed)||this.resultsAreIncomplete(c,this.updateBuildOptions)}).toArray());await this.buildDocuments(o,this.updateBuildOptions,r)}resultsAreIncomplete(e,n){return this.findMissingValidationCategories(e,n).length>=1}findMissingValidationCategories(e,n){var o,c;const r=this.buildState.get(e.uri.toString()),i=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),s=(o=r==null?void 0:r.result)!=null&&o.validationChecks?new Set((c=r==null?void 0:r.result)==null?void 0:c.validationChecks):r!=null&&r.completed?i:new Set,a=n===void 0||n.validation===!0?i:typeof n.validation=="object"?n.validation.categories??i:[];return he(a).filter(l=>!s.has(l)).toArray()}async findChangedUris(e){var r;if(this.langiumDocuments.getDocument(e)??((r=this.textDocuments)==null?void 0:r.get(e)))return[e];try{const i=await this.fileSystemProvider.stat(e);if(i.isDirectory)return await this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(i))return[e]}catch{}return[]}async emitUpdate(e,n){await Promise.all(this.updateListeners.map(r=>r(e,n)))}sortDocuments(e){let n=0,r=e.length-1;for(;n<r;){for(;n<e.length&&this.hasTextDocument(e[n]);)n++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;n<r&&([e[n],e[r]]=[e[r],e[n]])}return e}hasTextDocument(e){var n;return!!((n=this.textDocuments)!=null&&n.get(e.uri))}shouldRelink(e,n){return e.references.some(r=>r.error!==void 0)?!0:this.indexManager.isAffected(e,n)}onUpdate(e){return this.updateListeners.push(e),Wi.create(()=>{const n=this.updateListeners.indexOf(e);n>=0&&this.updateListeners.splice(n,1)})}resetToState(e,n){switch(n){case K.Changed:case K.Parsed:this.indexManager.removeContent(e.uri);case K.IndexedContent:e.localSymbols=void 0;case K.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case K.Linked:this.indexManager.removeReferences(e.uri);case K.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case K.Validated:}e.state>n&&(e.state=n)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=K.Changed}async buildDocuments(e,n,r){this.prepareBuild(e,n),await this.runCancelable(e,K.Parsed,r,a=>this.langiumDocumentFactory.update(a,r)),await this.runCancelable(e,K.IndexedContent,r,a=>this.indexManager.updateContent(a,r)),await this.runCancelable(e,K.ComputedScopes,r,async a=>{const o=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.localSymbols=await o.collectLocalSymbols(a,r)});const i=e.filter(a=>this.shouldLink(a));await this.runCancelable(i,K.Linked,r,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,r)),await this.runCancelable(i,K.IndexedReferences,r,a=>this.indexManager.updateReferences(a,r));const s=e.filter(a=>this.shouldValidate(a)?!0:(this.markAsCompleted(a),!1));await this.runCancelable(s,K.Validated,r,async a=>{await this.validate(a,r),this.markAsCompleted(a)})}markAsCompleted(e){const n=this.buildState.get(e.uri.toString());n&&(n.completed=!0)}prepareBuild(e,n){for(const r of e){const i=r.uri.toString(),s=this.buildState.get(i);(!s||s.completed)&&this.buildState.set(i,{completed:!1,options:n,result:s==null?void 0:s.result})}}async runCancelable(e,n,r,i){for(const a of e)a.state<n&&(await Je(r),await i(a),a.state=n,await this.notifyDocumentPhase(a,n,r));const s=e.filter(a=>a.state===n);await this.notifyBuildPhase(s,n,r),this.currentState=n}onBuildPhase(e,n){return this.buildPhaseListeners.add(e,n),Wi.create(()=>{this.buildPhaseListeners.delete(e,n)})}onDocumentPhase(e,n){return this.documentPhaseListeners.add(e,n),Wi.create(()=>{this.documentPhaseListeners.delete(e,n)})}waitUntil(e,n,r){let i;return n&&"path"in n?i=n:r=n,r??(r=me.None),i?this.awaitDocumentState(e,i,r):this.awaitBuilderState(e,r)}awaitDocumentState(e,n,r){const i=this.langiumDocuments.getDocument(n);if(i){if(i.state>=e)return Promise.resolve(n);if(r.isCancellationRequested)return Promise.reject(Nr);if(this.currentState>=e&&e>i.state)return Promise.reject(new zi.ResponseError(zi.LSPErrorCodes.RequestFailed,`Document state of ${n.toString()} is ${K[i.state]}, requiring ${K[e]}, but workspace state is already ${K[this.currentState]}. Returning undefined.`))}else return Promise.reject(new zi.ResponseError(zi.LSPErrorCodes.ServerCancelled,`No document found for URI: ${n.toString()}`));return new Promise((s,a)=>{const o=this.onDocumentPhase(e,l=>{dt.equals(l.uri,n)&&(o.dispose(),c.dispose(),s(l.uri))}),c=r.onCancellationRequested(()=>{o.dispose(),c.dispose(),a(Nr)})})}awaitBuilderState(e,n){return this.currentState>=e?Promise.resolve():n.isCancellationRequested?Promise.reject(Nr):new Promise((r,i)=>{const s=this.onBuildPhase(e,()=>{s.dispose(),a.dispose(),r()}),a=n.onCancellationRequested(()=>{s.dispose(),a.dispose(),i(Nr)})})}async notifyDocumentPhase(e,n,r){const s=this.documentPhaseListeners.get(n).slice();for(const a of s)try{await Je(r),await a(e,r)}catch(o){if(!to(o))throw o}}async notifyBuildPhase(e,n,r){if(e.length===0)return;const s=this.buildPhaseListeners.get(n).slice();for(const a of s)await Je(r),await a(e,r)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,n){const r=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e),s=typeof i.validation=="object"?{...i.validation}:{};s.categories=this.findMissingValidationCategories(e,i);const a=await r.validateDocument(e,s,n);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;const o=this.buildState.get(e.uri.toString());o&&(o.result??(o.result={}),o.result.validationChecks?o.result.validationChecks=he(o.result.validationChecks).concat(s.categories).distinct().toArray():o.result.validationChecks=[...s.categories])}getBuildOptions(e){var n;return((n=this.buildState.get(e.uri.toString()))==null?void 0:n.options)??{}}}class BE{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new Cv,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,n){const r=Qt(e).uri,i=[];return this.referenceIndex.forEach(s=>{s.forEach(a=>{dt.equals(a.targetUri,r)&&a.targetPath===n&&i.push(a)})}),he(i)}allElements(e,n){let r=he(this.symbolIndex.keys());return n&&(r=r.filter(i=>!n||n.has(i))),r.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,n){return n?this.symbolByTypeIndex.get(e,n,()=>(this.symbolIndex.get(e)??[]).filter(s=>this.astReflection.isSubtype(s.type,n))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){const n=e.toString();this.symbolIndex.delete(n),this.symbolByTypeIndex.clear(n)}removeReferences(e){const n=e.toString();this.referenceIndex.delete(n)}async updateContent(e,n=me.None){const i=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,n),s=e.uri.toString();this.symbolIndex.set(s,i),this.symbolByTypeIndex.clear(s)}async updateReferences(e,n=me.None){const i=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,n);this.referenceIndex.set(e.uri.toString(),i)}isAffected(e,n){const r=this.referenceIndex.get(e.uri.toString());return r?r.some(i=>!i.local&&n.has(i.targetUri.toString())):!1}}class qE{constructor(e){this.initialBuildOptions={},this._ready=new eu,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(n=>this.initializeWorkspace(this.folders??[],n))}async initializeWorkspace(e,n=me.None){const r=await this.performStartup(e);await Je(n),await this.documentBuilder.build(r,this.initialBuildOptions,n)}async performStartup(e){const n=[],r=a=>{n.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)};await this.loadAdditionalDocuments(e,r);const i=[];await Promise.all(e.map(a=>this.getRootFolder(a)).map(async a=>this.traverseFolder(a,i)));const s=he(i).distinct(a=>a.toString()).filter(a=>!this.langiumDocuments.hasDocument(a));return await this.loadWorkspaceDocuments(s,r),this._ready.resolve(),n}async loadWorkspaceDocuments(e,n){await Promise.all(e.map(async r=>{const i=await this.langiumDocuments.getOrCreateDocument(r);n(i)}))}loadAdditionalDocuments(e,n){return Promise.resolve()}getRootFolder(e){return It.parse(e.uri)}async traverseFolder(e,n){try{const r=await this.fileSystemProvider.readDirectory(e);await Promise.all(r.map(async i=>{this.shouldIncludeEntry(i)&&(i.isDirectory?await this.traverseFolder(i.uri,n):i.isFile&&n.push(i.uri))}))}catch(r){console.error("Failure to read directory content of "+e.toString(!0),r)}}async searchFolder(e){const n=[];return await this.traverseFolder(e,n),n}shouldIncludeEntry(e){const n=dt.basename(e.uri);return n.startsWith(".")?!1:e.isDirectory?n!=="node_modules"&&n!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}}class WE{buildUnexpectedCharactersMessage(e,n,r,i,s){return Jo.buildUnexpectedCharactersMessage(e,n,r,i,s)}buildUnableToPopLexerModeMessage(e){return Jo.buildUnableToPopLexerModeMessage(e)}}const VE={mode:"full"};class KE{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const n=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(n);const r=Af(n)?Object.values(n):n,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new rt(r,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,n=VE){var i,s;const r=this.chevrotainLexer.tokenize(e);return{tokens:r.tokens,errors:r.errors,hidden:r.groups.hidden??[],report:(s=(i=this.tokenBuilder).flushLexingReport)==null?void 0:s.call(i,e)}}toTokenTypeDictionary(e){if(Af(e))return e;const n=bp(e)?Object.values(e.modes).flat():e,r={};return n.forEach(i=>r[i.name]=i),r}}function HE(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function bp(t){return t&&"modes"in t&&"defaultMode"in t}function Af(t){return!HE(t)&&!bp(t)}function YE(t,e,n){let r,i;typeof t=="string"?(i=e,r=n):(i=t.range.start,r=e),i||(i=ee.create(0,0));const s=_p(t),a=iu(r),o=QE({lines:s,position:i,options:a});return rA({index:0,tokens:o,position:i})}function XE(t,e){const n=iu(e),r=_p(t);if(r.length===0)return!1;const i=r[0],s=r[r.length-1],a=n.start,o=n.end;return!!(a!=null&&a.exec(i))&&!!(o!=null&&o.exec(s))}function _p(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(yg)}const Sf=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,JE=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function QE(t){var i,s,a;const e=[];let n=t.position.line,r=t.position.character;for(let o=0;o<t.lines.length;o++){const c=o===0,l=o===t.lines.length-1;let d=t.lines[o],h=0;if(c&&t.options.start){const g=(i=t.options.start)==null?void 0:i.exec(d);g&&(h=g.index+g[0].length)}else{const g=(s=t.options.line)==null?void 0:s.exec(d);g&&(h=g.index+g[0].length)}if(l){const g=(a=t.options.end)==null?void 0:a.exec(d);g&&(d=d.substring(0,g.index))}if(d=d.substring(0,nA(d)),El(d,h)>=d.length){if(e.length>0){const g=ee.create(n,r);e.push({type:"break",content:"",range:Y.create(g,g)})}}else{Sf.lastIndex=h;const g=Sf.exec(d);if(g){const C=g[0],w=g[1],D=ee.create(n,r+h),N=ee.create(n,r+h+C.length);e.push({type:"tag",content:w,range:Y.create(D,N)}),h+=C.length,h=El(d,h)}if(h<d.length){const C=d.substring(h),w=Array.from(C.matchAll(JE));e.push(...ZE(w,C,n,r+h))}}n++,r=0}return e.length>0&&e[e.length-1].type==="break"?e.slice(0,-1):e}function ZE(t,e,n,r){const i=[];if(t.length===0){const s=ee.create(n,r),a=ee.create(n,r+e.length);i.push({type:"text",content:e,range:Y.create(s,a)})}else{let s=0;for(const o of t){const c=o.index,l=e.substring(s,c);l.length>0&&i.push({type:"text",content:e.substring(s,c),range:Y.create(ee.create(n,s+r),ee.create(n,c+r))});let d=l.length+1;const h=o[1];if(i.push({type:"inline-tag",content:h,range:Y.create(ee.create(n,s+d+r),ee.create(n,s+d+h.length+r))}),d+=h.length,o.length===4){d+=o[2].length;const p=o[3];i.push({type:"text",content:p,range:Y.create(ee.create(n,s+d+r),ee.create(n,s+d+p.length+r))})}else i.push({type:"text",content:"",range:Y.create(ee.create(n,s+d+r),ee.create(n,s+d+r))});s=c+o[0].length}const a=e.substring(s);a.length>0&&i.push({type:"text",content:a,range:Y.create(ee.create(n,s+r),ee.create(n,s+r+a.length))})}return i}const eA=/\S/,tA=/\s*$/;function El(t,e){const n=t.substring(e).match(eA);return n?e+n.index:t.length}function nA(t){const e=t.match(tA);if(e&&typeof e.index=="number")return e.index}function rA(t){var s,a;const e=ee.create(t.position.line,t.position.character);if(t.tokens.length===0)return new Cf([],Y.create(e,e));const n=[];for(;t.index<t.tokens.length;){const o=iA(t,n[n.length-1]);o&&n.push(o)}const r=((s=n[0])==null?void 0:s.range.start)??e,i=((a=n[n.length-1])==null?void 0:a.range.end)??e;return new Cf(n,Y.create(r,i))}function iA(t,e){const n=t.tokens[t.index];if(n.type==="tag")return $p(t,!1);if(n.type==="text"||n.type==="inline-tag")return Ip(t);sA(n,e),t.index++}function sA(t,e){if(e){const n=new Lp("",t.range);"inlines"in e?e.inlines.push(n):e.content.inlines.push(n)}}function Ip(t){let e=t.tokens[t.index];const n=e;let r=e;const i=[];for(;e&&e.type!=="break"&&e.type!=="tag";)i.push(aA(t)),r=e,e=t.tokens[t.index];return new Al(i,Y.create(n.range.start,r.range.end))}function aA(t){return t.tokens[t.index].type==="inline-tag"?$p(t,!0):Pp(t)}function $p(t,e){const n=t.tokens[t.index++],r=n.content.substring(1),i=t.tokens[t.index];if((i==null?void 0:i.type)==="text")if(e){const s=Pp(t);return new $o(r,new Al([s],s.range),e,Y.create(n.range.start,s.range.end))}else{const s=Ip(t);return new $o(r,s,e,Y.create(n.range.start,s.range.end))}else{const s=n.range;return new $o(r,new Al([],s),e,s)}}function Pp(t){const e=t.tokens[t.index++];return new Lp(e.content,e.range)}function iu(t){if(!t)return iu({start:"/**",end:"*/",line:"*"});const{start:e,end:n,line:r}=t;return{start:Io(e,!0),end:Io(n,!1),line:Io(r,!0)}}function Io(t,e){if(typeof t=="string"||typeof t=="object"){const n=typeof t=="string"?Va(t):t.source;return e?new RegExp(`^\\s*${n}`):new RegExp(`\\s*${n}\\s*$`)}else return t}class Cf{constructor(e,n){this.elements=e,this.range=n}getTag(e){return this.getAllTags().find(n=>n.name===e)}getTags(e){return this.getAllTags().filter(n=>n.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(const n of this.elements)if(e.length===0)e=n.toString();else{const r=n.toString();e+=kf(e)+r}return e.trim()}toMarkdown(e){let n="";for(const r of this.elements)if(n.length===0)n=r.toMarkdown(e);else{const i=r.toMarkdown(e);n+=kf(n)+i}return n.trim()}}class $o{constructor(e,n,r,i){this.name=e,this.content=n,this.inline=r,this.range=i}toString(){let e=`@${this.name}`;const n=this.content.toString();return this.content.inlines.length===1?e=`${e} ${n}`:this.content.inlines.length>1&&(e=`${e}
|
|
152
|
-
${n}`),this.inline?`{${e}}`:e}toMarkdown(e){var n;return((n=e==null?void 0:e.renderTag)==null?void 0:n.call(e,this))??this.toMarkdownDefault(e)}toMarkdownDefault(e){const n=this.content.toMarkdown(e);if(this.inline){const s=oA(this.name,n,e??{});if(typeof s=="string")return s}let r="";(e==null?void 0:e.tag)==="italic"||(e==null?void 0:e.tag)===void 0?r="*":(e==null?void 0:e.tag)==="bold"?r="**":(e==null?void 0:e.tag)==="bold-italic"&&(r="***");let i=`${r}@${this.name}${r}`;return this.content.inlines.length===1?i=`${i} — ${n}`:this.content.inlines.length>1&&(i=`${i}
|
|
153
|
-
${n}`),this.inline?`{${i}}`:i}}function oA(t,e,n){var r;if(t==="linkplain"||t==="linkcode"||t==="link"){const i=e.indexOf(" ");let s=e;if(i>0){const o=El(e,i);s=e.substring(o),e=e.substring(0,i)}return(t==="linkcode"||t==="link"&&n.link==="code")&&(s=`\`${s}\``),((r=n.renderLink)==null?void 0:r.call(n,e,s))??cA(e,s)}}function cA(t,e){try{return It.parse(t,!0),`[${e}](${t})`}catch{return t}}class Al{constructor(e,n){this.inlines=e,this.range=n}toString(){let e="";for(let n=0;n<this.inlines.length;n++){const r=this.inlines[n],i=this.inlines[n+1];e+=r.toString(),i&&i.range.start.line>r.range.start.line&&(e+=`
|
|
154
|
-
`)}return e}toMarkdown(e){let n="";for(let r=0;r<this.inlines.length;r++){const i=this.inlines[r],s=this.inlines[r+1];n+=i.toMarkdown(e),s&&s.range.start.line>i.range.start.line&&(n+=`
|
|
155
|
-
`)}return n}}class Lp{constructor(e,n){this.text=e,this.range=n}toString(){return this.text}toMarkdown(){return this.text}}function kf(t){return t.endsWith(`
|
|
156
|
-
`)?`
|
|
157
|
-
`:`
|
|
158
|
-
|
|
159
|
-
`}class lA{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){const n=this.commentProvider.getComment(e);if(n&&XE(n))return YE(n).toMarkdown({renderLink:(i,s)=>this.documentationLinkRenderer(e,i,s),renderTag:i=>this.documentationTagRenderer(e,i)})}documentationLinkRenderer(e,n,r){const i=this.findNameInLocalSymbols(e,n)??this.findNameInGlobalScope(e,n);if(i&&i.nameSegment){const s=i.nameSegment.range.start.line+1,a=i.nameSegment.range.start.character+1,o=i.documentUri.with({fragment:`L${s},${a}`});return`[${r}](${o.toString()})`}else return}documentationTagRenderer(e,n){}findNameInLocalSymbols(e,n){const i=Qt(e).localSymbols;if(!i)return;let s=e;do{const o=i.getStream(s).find(c=>c.name===n);if(o)return o;s=s.$container}while(s)}findNameInGlobalScope(e,n){return this.indexManager.allElements().find(i=>i.name===n)}}class uA{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var n;return wv(e)?e.$comment:(n=fg(e.$cstNode,this.grammarConfig().multilineCommentRules))==null?void 0:n.text}}class dA{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,n){return Promise.resolve(this.syncParser.parse(e))}}class fA{constructor(){this.previousTokenSource=new Zl,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();const n=fv();return this.previousTokenSource=n,this.enqueue(this.writeQueue,e,n.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,n,r=me.None){const i=new eu,s={action:n,deferred:i,cancellationToken:r};return e.push(s),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;const e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:n,deferred:r,cancellationToken:i})=>{try{const s=await Promise.resolve().then(()=>n(i));r.resolve(s)}catch(s){to(s)?r.resolve(void 0):r.reject(s)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}class hA{constructor(e){this.grammarElementIdMap=new Qu,this.tokenTypeIdMap=new Qu,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(n=>({...n,message:n.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){const n=new Map,r=new Map;for(const i of Zt(e))n.set(i,{});if(e.$cstNode)for(const i of Vo(e.$cstNode))r.set(i,{});return{astNodes:n,cstNodes:r}}dehydrateAstNode(e,n){const r=n.astNodes.get(e);r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,n));for(const[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){const a=[];r[i]=a;for(const o of s)Ke(o)?a.push(this.dehydrateAstNode(o,n)):wt(o)?a.push(this.dehydrateReference(o,n)):a.push(o)}else Ke(s)?r[i]=this.dehydrateAstNode(s,n):wt(s)?r[i]=this.dehydrateReference(s,n):s!==void 0&&(r[i]=s);return r}dehydrateReference(e,n){const r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=n.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,n){const r=n.cstNodes.get(e);return Kf(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,r.astNode=n.astNodes.get(e.astNode),Ki(e)?r.content=e.content.map(i=>this.dehydrateCstNode(i,n)):Vf(e)&&(r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length,r.startLine=e.range.start.line,r.startColumn=e.range.start.character,r.endLine=e.range.end.line,r.endColumn=e.range.end.character),r}hydrate(e){const n=e.value,r=this.createHydrationContext(n);return"$cstNode"in n&&this.hydrateCstNode(n.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(n,r)}}createHydrationContext(e){const n=new Map,r=new Map;for(const s of Zt(e))n.set(s,{});let i;if(e.$cstNode)for(const s of Vo(e.$cstNode)){let a;"fullText"in s?(a=new tp(s.fullText),i=a):"content"in s?a=new Xl:"tokenType"in s&&(a=this.hydrateCstLeafNode(s)),a&&(r.set(s,a),a.root=i)}return{astNodes:n,cstNodes:r}}hydrateAstNode(e,n){const r=n.astNodes.get(e);r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode&&(r.$cstNode=n.cstNodes.get(e.$cstNode));for(const[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){const a=[];r[i]=a;for(const o of s)Ke(o)?a.push(this.setParent(this.hydrateAstNode(o,n),r)):wt(o)?a.push(this.hydrateReference(o,r,i,n)):a.push(o)}else Ke(s)?r[i]=this.setParent(this.hydrateAstNode(s,n),r):wt(s)?r[i]=this.hydrateReference(s,r,i,n):s!==void 0&&(r[i]=s);return r}setParent(e,n){return e.$container=n,e}hydrateReference(e,n,r,i){return this.linker.buildReference(n,r,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,n,r=0){const i=n.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=n.astNodes.get(e.astNode),Ki(i))for(const s of e.content){const a=this.hydrateCstNode(s,n,r++);i.content.push(a)}return i}hydrateCstLeafNode(e){const n=this.getTokenType(e.tokenType),r=e.offset,i=e.length,s=e.startLine,a=e.startColumn,o=e.endLine,c=e.endColumn,l=e.hidden;return new sl(r,i,{start:{line:s,character:a},end:{line:o,character:c}},n,l)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(const n of Zt(this.grammar))Bm(n)&&this.grammarElementIdMap.set(n,e++)}}function bn(t){return{documentation:{CommentProvider:e=>new uA(e),DocumentationProvider:e=>new lA(e)},parser:{AsyncParser:e=>new dA(e),GrammarConfig:e=>Gg(e),LangiumParser:e=>JR(e),CompletionParser:e=>XR(e),ValueConverter:()=>new up,TokenBuilder:()=>new lp,Lexer:e=>new KE(e),ParserErrorMessageProvider:()=>new ip,LexerErrorMessageProvider:()=>new WE},workspace:{AstNodeLocator:()=>new Mv,AstNodeDescriptionProvider:e=>new xv(e),ReferenceDescriptionProvider:e=>new Dv(e)},references:{Linker:e=>new yv(e),NameProvider:()=>new Rv,ScopeProvider:e=>new Nv(e),ScopeComputation:e=>new Ev(e),References:e=>new vv(e)},serializer:{Hydrator:e=>new hA(e),JsonSerializer:e=>new bv(e)},validation:{DocumentValidator:e=>new Pv(e),ValidationRegistry:e=>new Iv(e)},shared:()=>t.shared}}function _n(t){return{ServiceRegistry:e=>new _v(e),workspace:{LangiumDocuments:e=>new gv(e),LangiumDocumentFactory:e=>new mv(e),DocumentBuilder:e=>new zE(e),IndexManager:e=>new BE(e),WorkspaceManager:e=>new qE(e),FileSystemProvider:e=>t.fileSystemProvider(e),WorkspaceLock:()=>new fA,ConfigurationProvider:e=>new Fv(e)},profilers:{}}}var Nf;(function(t){t.merge=(e,n)=>os(os({},e),n)})(Nf||(Nf={}));function Ye(t,e,n,r,i,s,a,o,c){const l=[t,e,n,r,i,s,a,o,c].reduce(os,{});return Op(l)}const pA=Symbol("isProxy");function Op(t,e){const n=new Proxy({},{deleteProperty:()=>!1,set:()=>{throw new Error("Cannot set property on injected service container")},get:(r,i)=>i===pA?!0:bf(r,i,t,e||n),getOwnPropertyDescriptor:(r,i)=>(bf(r,i,t,e||n),Object.getOwnPropertyDescriptor(r,i)),has:(r,i)=>i in t,ownKeys:()=>[...Object.getOwnPropertyNames(t)]});return n}const wf=Symbol();function bf(t,e,n,r){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+t[e]);if(t[e]===wf)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in n){const i=n[e];t[e]=wf;try{t[e]=typeof i=="function"?i(r):Op(i,r)}catch(s){throw t[e]=s instanceof Error?s:void 0,s}return t[e]}else return}function os(t,e){if(e){for(const[n,r]of Object.entries(e))if(r!=null)if(typeof r=="object"){const i=t[n];typeof i=="object"&&i!==null?t[n]=os(i,r):t[n]=os({},r)}else t[n]=r}return t}class mA{stat(e){throw new Error("No file system is available.")}statSync(e){throw new Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw new Error("No file system is available.")}readBinarySync(){throw new Error("No file system is available.")}readFile(){throw new Error("No file system is available.")}readFileSync(){throw new Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}}const In={fileSystemProvider:()=>new mA},gA={Grammar:()=>{},LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},yA={AstReflection:()=>new Zf};function TA(){const t=Ye(_n(In),yA),e=Ye(bn({shared:t}),gA);return t.ServiceRegistry.register(e),e}function tr(t){const e=TA(),n=e.serializer.JsonSerializer.deserialize(t);return e.shared.workspace.LangiumDocumentFactory.fromModel(n,It.parse(`memory:/${n.name??"grammar"}.langium`)),n}var RA=Object.defineProperty,_=(t,e)=>RA(t,"name",{value:e,configurable:!0}),Sl;(t=>{t.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[[\w ]+\]/}})(Sl||(Sl={}));var Cl;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(Cl||(Cl={}));var kl;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(kl||(kl={}));var Nl;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Nl||(Nl={}));var wl;(t=>{t.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(wl||(wl={}));var bl;(t=>{t.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(bl||(bl={}));var _l;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})(_l||(_l={}));({...Sl.Terminals,...Cl.Terminals,...kl.Terminals,...Nl.Terminals,...wl.Terminals,...bl.Terminals,..._l.Terminals});var Kt={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function vA(t){return Lt.isInstance(t,Kt.$type)}_(vA,"isArchitecture");var qs={$type:"Axis",label:"label",name:"name"},oa={$type:"Branch",name:"name",order:"order"};function EA(t){return Lt.isInstance(t,oa.$type)}_(EA,"isBranch");var _f={$type:"Checkout",branch:"branch"},Ws={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},Po={$type:"ClassDefStatement",className:"className",styleText:"styleText"},vr={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function AA(t){return Lt.isInstance(t,vr.$type)}_(AA,"isCommit");var Vs={$type:"Curve",entries:"entries",label:"label",name:"name"},cr={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},xt={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},Lo={$type:"Entry",axis:"axis",value:"value"},jn={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function SA(t){return Lt.isInstance(t,jn.$type)}_(SA,"isGitGraph");var Pi={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},qi={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function CA(t){return Lt.isInstance(t,qi.$type)}_(CA,"isInfo");var Li={$type:"Item",classSelector:"classSelector",name:"name"},Oo={$type:"Junction",id:"id",in:"in"},Ks={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},Er={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function kA(t){return Lt.isInstance(t,Er.$type)}_(kA,"isMerge");var xo={$type:"Option",name:"name",value:"value"},Ar={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function NA(t){return Lt.isInstance(t,Ar.$type)}_(NA,"isPacket");var Sr={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function wA(t){return Lt.isInstance(t,Sr.$type)}_(wA,"isPacketBlock");var zn={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function bA(t){return Lt.isInstance(t,zn.$type)}_(bA,"isPie");var ca={$type:"PieSection",label:"label",value:"value"};function _A(t){return Lt.isInstance(t,ca.$type)}_(_A,"isPieSection");var xn={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},Do={$type:"Section",classSelector:"classSelector",name:"name"},lr={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},ur={$type:"Statement"},Cr={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function IA(t){return Lt.isInstance(t,Cr.$type)}_(IA,"isTreemap");var Mo={$type:"TreemapRow",indent:"indent",item:"item"},br,xp=(br=class extends Wf{constructor(){super(...arguments),this.types={Architecture:{name:Kt.$type,properties:{accDescr:{name:Kt.accDescr},accTitle:{name:Kt.accTitle},edges:{name:Kt.edges,defaultValue:[]},groups:{name:Kt.groups,defaultValue:[]},junctions:{name:Kt.junctions,defaultValue:[]},services:{name:Kt.services,defaultValue:[]},title:{name:Kt.title}},superTypes:[]},Axis:{name:qs.$type,properties:{label:{name:qs.label},name:{name:qs.name}},superTypes:[]},Branch:{name:oa.$type,properties:{name:{name:oa.name},order:{name:oa.order}},superTypes:[ur.$type]},Checkout:{name:_f.$type,properties:{branch:{name:_f.branch}},superTypes:[ur.$type]},CherryPicking:{name:Ws.$type,properties:{id:{name:Ws.id},parent:{name:Ws.parent},tags:{name:Ws.tags,defaultValue:[]}},superTypes:[ur.$type]},ClassDefStatement:{name:Po.$type,properties:{className:{name:Po.className},styleText:{name:Po.styleText}},superTypes:[]},Commit:{name:vr.$type,properties:{id:{name:vr.id},message:{name:vr.message},tags:{name:vr.tags,defaultValue:[]},type:{name:vr.type}},superTypes:[ur.$type]},Curve:{name:Vs.$type,properties:{entries:{name:Vs.entries,defaultValue:[]},label:{name:Vs.label},name:{name:Vs.name}},superTypes:[]},Direction:{name:cr.$type,properties:{accDescr:{name:cr.accDescr},accTitle:{name:cr.accTitle},dir:{name:cr.dir},statements:{name:cr.statements,defaultValue:[]},title:{name:cr.title}},superTypes:[jn.$type]},Edge:{name:xt.$type,properties:{lhsDir:{name:xt.lhsDir},lhsGroup:{name:xt.lhsGroup,defaultValue:!1},lhsId:{name:xt.lhsId},lhsInto:{name:xt.lhsInto,defaultValue:!1},rhsDir:{name:xt.rhsDir},rhsGroup:{name:xt.rhsGroup,defaultValue:!1},rhsId:{name:xt.rhsId},rhsInto:{name:xt.rhsInto,defaultValue:!1},title:{name:xt.title}},superTypes:[]},Entry:{name:Lo.$type,properties:{axis:{name:Lo.axis,referenceType:qs.$type},value:{name:Lo.value}},superTypes:[]},GitGraph:{name:jn.$type,properties:{accDescr:{name:jn.accDescr},accTitle:{name:jn.accTitle},statements:{name:jn.statements,defaultValue:[]},title:{name:jn.title}},superTypes:[]},Group:{name:Pi.$type,properties:{icon:{name:Pi.icon},id:{name:Pi.id},in:{name:Pi.in},title:{name:Pi.title}},superTypes:[]},Info:{name:qi.$type,properties:{accDescr:{name:qi.accDescr},accTitle:{name:qi.accTitle},title:{name:qi.title}},superTypes:[]},Item:{name:Li.$type,properties:{classSelector:{name:Li.classSelector},name:{name:Li.name}},superTypes:[]},Junction:{name:Oo.$type,properties:{id:{name:Oo.id},in:{name:Oo.in}},superTypes:[]},Leaf:{name:Ks.$type,properties:{classSelector:{name:Ks.classSelector},name:{name:Ks.name},value:{name:Ks.value}},superTypes:[Li.$type]},Merge:{name:Er.$type,properties:{branch:{name:Er.branch},id:{name:Er.id},tags:{name:Er.tags,defaultValue:[]},type:{name:Er.type}},superTypes:[ur.$type]},Option:{name:xo.$type,properties:{name:{name:xo.name},value:{name:xo.value,defaultValue:!1}},superTypes:[]},Packet:{name:Ar.$type,properties:{accDescr:{name:Ar.accDescr},accTitle:{name:Ar.accTitle},blocks:{name:Ar.blocks,defaultValue:[]},title:{name:Ar.title}},superTypes:[]},PacketBlock:{name:Sr.$type,properties:{bits:{name:Sr.bits},end:{name:Sr.end},label:{name:Sr.label},start:{name:Sr.start}},superTypes:[]},Pie:{name:zn.$type,properties:{accDescr:{name:zn.accDescr},accTitle:{name:zn.accTitle},sections:{name:zn.sections,defaultValue:[]},showData:{name:zn.showData,defaultValue:!1},title:{name:zn.title}},superTypes:[]},PieSection:{name:ca.$type,properties:{label:{name:ca.label},value:{name:ca.value}},superTypes:[]},Radar:{name:xn.$type,properties:{accDescr:{name:xn.accDescr},accTitle:{name:xn.accTitle},axes:{name:xn.axes,defaultValue:[]},curves:{name:xn.curves,defaultValue:[]},options:{name:xn.options,defaultValue:[]},title:{name:xn.title}},superTypes:[]},Section:{name:Do.$type,properties:{classSelector:{name:Do.classSelector},name:{name:Do.name}},superTypes:[Li.$type]},Service:{name:lr.$type,properties:{icon:{name:lr.icon},iconText:{name:lr.iconText},id:{name:lr.id},in:{name:lr.in},title:{name:lr.title}},superTypes:[]},Statement:{name:ur.$type,properties:{},superTypes:[]},Treemap:{name:Cr.$type,properties:{accDescr:{name:Cr.accDescr},accTitle:{name:Cr.accTitle},title:{name:Cr.title},TreemapRows:{name:Cr.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Mo.$type,properties:{indent:{name:Mo.indent},item:{name:Mo.item}},superTypes:[]}}}},_(br,"MermaidAstReflection"),br),Lt=new xp,If,$A=_(()=>If??(If=tr(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),$f,PA=_(()=>$f??($f=tr(`{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"GitGraphGrammarGrammar"),Pf,LA=_(()=>Pf??(Pf=tr(`{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"InfoGrammarGrammar"),Lf,OA=_(()=>Lf??(Lf=tr(`{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PacketGrammarGrammar"),Of,xA=_(()=>Of??(Of=tr(`{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PieGrammarGrammar"),xf,DA=_(()=>xf??(xf=tr(`{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}`)),"RadarGrammarGrammar"),Df,MA=_(()=>Df??(Df=tr(`{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammarGrammar"),FA={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},GA={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},UA={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},jA={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},zA={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},BA={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},qA={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},nr={AstReflection:_(()=>new xp,"AstReflection")},WA={Grammar:_(()=>$A(),"Grammar"),LanguageMetaData:_(()=>FA,"LanguageMetaData"),parser:{}},VA={Grammar:_(()=>PA(),"Grammar"),LanguageMetaData:_(()=>GA,"LanguageMetaData"),parser:{}},KA={Grammar:_(()=>LA(),"Grammar"),LanguageMetaData:_(()=>UA,"LanguageMetaData"),parser:{}},HA={Grammar:_(()=>OA(),"Grammar"),LanguageMetaData:_(()=>jA,"LanguageMetaData"),parser:{}},YA={Grammar:_(()=>xA(),"Grammar"),LanguageMetaData:_(()=>zA,"LanguageMetaData"),parser:{}},XA={Grammar:_(()=>DA(),"Grammar"),LanguageMetaData:_(()=>BA,"LanguageMetaData"),parser:{}},JA={Grammar:_(()=>MA(),"Grammar"),LanguageMetaData:_(()=>qA,"LanguageMetaData"),parser:{}},QA=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ZA=/accTitle[\t ]*:([^\n\r]*)/,eS=/title([\t ][^\n\r]*|)/,tS={ACC_DESCR:QA,ACC_TITLE:ZA,TITLE:eS},_r,mo=(_r=class extends up{runConverter(e,n,r){let i=this.runCommonConverter(e,n,r);return i===void 0&&(i=this.runCustomConverter(e,n,r)),i===void 0?super.runConverter(e,n,r):i}runCommonConverter(e,n,r){const i=tS[e.name];if(i===void 0)return;const s=i.exec(n);if(s!==null){if(s[1]!==void 0)return s[1].trim().replace(/[\t ]{2,}/gm," ");if(s[2]!==void 0)return s[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
|
|
160
|
-
`)}}},_(_r,"AbstractMermaidValueConverter"),_r),Ir,go=(Ir=class extends mo{runCustomConverter(e,n,r){}},_(Ir,"CommonValueConverter"),Ir),$r,$n=($r=class extends lp{constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,n,r){const i=super.buildKeywordTokens(e,n,r);return i.forEach(s=>{this.keywords.has(s.name)&&s.PATTERN!==void 0&&(s.PATTERN=new RegExp(s.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),i}},_($r,"AbstractMermaidTokenBuilder"),$r),Pr;Pr=class extends $n{},_(Pr,"CommonTokenBuilder");var Lr,nS=(Lr=class extends $n{constructor(){super(["gitGraph"])}},_(Lr,"GitGraphTokenBuilder"),Lr),Dp={parser:{TokenBuilder:_(()=>new nS,"TokenBuilder"),ValueConverter:_(()=>new go,"ValueConverter")}};function Mp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),VA,Dp);return e.ServiceRegistry.register(n),{shared:e,GitGraph:n}}_(Mp,"createGitGraphServices");var Or,rS=(Or=class extends $n{constructor(){super(["info","showInfo"])}},_(Or,"InfoTokenBuilder"),Or),Fp={parser:{TokenBuilder:_(()=>new rS,"TokenBuilder"),ValueConverter:_(()=>new go,"ValueConverter")}};function Gp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),KA,Fp);return e.ServiceRegistry.register(n),{shared:e,Info:n}}_(Gp,"createInfoServices");var xr,iS=(xr=class extends $n{constructor(){super(["packet"])}},_(xr,"PacketTokenBuilder"),xr),Up={parser:{TokenBuilder:_(()=>new iS,"TokenBuilder"),ValueConverter:_(()=>new go,"ValueConverter")}};function jp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),HA,Up);return e.ServiceRegistry.register(n),{shared:e,Packet:n}}_(jp,"createPacketServices");var Dr,sS=(Dr=class extends $n{constructor(){super(["pie","showData"])}},_(Dr,"PieTokenBuilder"),Dr),Mr,aS=(Mr=class extends mo{runCustomConverter(e,n,r){if(e.name==="PIE_SECTION_LABEL")return n.replace(/"/g,"").trim()}},_(Mr,"PieValueConverter"),Mr),zp={parser:{TokenBuilder:_(()=>new sS,"TokenBuilder"),ValueConverter:_(()=>new aS,"ValueConverter")}};function Bp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),YA,zp);return e.ServiceRegistry.register(n),{shared:e,Pie:n}}_(Bp,"createPieServices");var Fr,oS=(Fr=class extends $n{constructor(){super(["architecture"])}},_(Fr,"ArchitectureTokenBuilder"),Fr),Gr,cS=(Gr=class extends mo{runCustomConverter(e,n,r){if(e.name==="ARCH_ICON")return n.replace(/[()]/g,"").trim();if(e.name==="ARCH_TEXT_ICON")return n.replace(/["()]/g,"");if(e.name==="ARCH_TITLE")return n.replace(/[[\]]/g,"").trim()}},_(Gr,"ArchitectureValueConverter"),Gr),qp={parser:{TokenBuilder:_(()=>new oS,"TokenBuilder"),ValueConverter:_(()=>new cS,"ValueConverter")}};function Wp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),WA,qp);return e.ServiceRegistry.register(n),{shared:e,Architecture:n}}_(Wp,"createArchitectureServices");var Ur,lS=(Ur=class extends $n{constructor(){super(["radar-beta"])}},_(Ur,"RadarTokenBuilder"),Ur),Vp={parser:{TokenBuilder:_(()=>new lS,"TokenBuilder"),ValueConverter:_(()=>new go,"ValueConverter")}};function Kp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),XA,Vp);return e.ServiceRegistry.register(n),{shared:e,Radar:n}}_(Kp,"createRadarServices");var jr,uS=(jr=class extends $n{constructor(){super(["treemap"])}},_(jr,"TreemapTokenBuilder"),jr),dS=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,zr,fS=(zr=class extends mo{runCustomConverter(e,n,r){if(e.name==="NUMBER2")return parseFloat(n.replace(/,/g,""));if(e.name==="SEPARATOR")return n.substring(1,n.length-1);if(e.name==="STRING2")return n.substring(1,n.length-1);if(e.name==="INDENTATION")return n.length;if(e.name==="ClassDef"){if(typeof n!="string")return n;const i=dS.exec(n);if(i)return{$type:"ClassDefStatement",className:i[1],styleText:i[2]||void 0}}}},_(zr,"TreemapValueConverter"),zr);function Hp(t){const e=t.validation.TreemapValidator,n=t.validation.ValidationRegistry;if(n){const r={Treemap:e.checkSingleRoot.bind(e)};n.register(r,e)}}_(Hp,"registerValidationChecks");var Br,hS=(Br=class{checkSingleRoot(e,n){let r;for(const i of e.TreemapRows)i.item&&(r===void 0&&i.indent===void 0?r=0:i.indent===void 0?n("error","Multiple root nodes are not allowed in a treemap.",{node:i,property:"item"}):r!==void 0&&r>=parseInt(i.indent,10)&&n("error","Multiple root nodes are not allowed in a treemap.",{node:i,property:"item"}))}},_(Br,"TreemapValidator"),Br),Yp={parser:{TokenBuilder:_(()=>new uS,"TokenBuilder"),ValueConverter:_(()=>new fS,"ValueConverter")},validation:{TreemapValidator:_(()=>new hS,"TreemapValidator")}};function Xp(t=In){const e=Ye(_n(t),nr),n=Ye(bn({shared:e}),JA,Yp);return e.ServiceRegistry.register(n),Hp(n),{shared:e,Treemap:n}}_(Xp,"createTreemapServices");var Yt={},pS={info:_(async()=>{const{createInfoServices:t}=await Ln(async()=>{const{createInfoServices:n}=await Promise.resolve().then(()=>yS);return{createInfoServices:n}},void 0),e=t().Info.parser.LangiumParser;Yt.info=e},"info"),packet:_(async()=>{const{createPacketServices:t}=await Ln(async()=>{const{createPacketServices:n}=await Promise.resolve().then(()=>TS);return{createPacketServices:n}},void 0),e=t().Packet.parser.LangiumParser;Yt.packet=e},"packet"),pie:_(async()=>{const{createPieServices:t}=await Ln(async()=>{const{createPieServices:n}=await Promise.resolve().then(()=>RS);return{createPieServices:n}},void 0),e=t().Pie.parser.LangiumParser;Yt.pie=e},"pie"),architecture:_(async()=>{const{createArchitectureServices:t}=await Ln(async()=>{const{createArchitectureServices:n}=await Promise.resolve().then(()=>vS);return{createArchitectureServices:n}},void 0),e=t().Architecture.parser.LangiumParser;Yt.architecture=e},"architecture"),gitGraph:_(async()=>{const{createGitGraphServices:t}=await Ln(async()=>{const{createGitGraphServices:n}=await Promise.resolve().then(()=>ES);return{createGitGraphServices:n}},void 0),e=t().GitGraph.parser.LangiumParser;Yt.gitGraph=e},"gitGraph"),radar:_(async()=>{const{createRadarServices:t}=await Ln(async()=>{const{createRadarServices:n}=await Promise.resolve().then(()=>AS);return{createRadarServices:n}},void 0),e=t().Radar.parser.LangiumParser;Yt.radar=e},"radar"),treemap:_(async()=>{const{createTreemapServices:t}=await Ln(async()=>{const{createTreemapServices:n}=await Promise.resolve().then(()=>SS);return{createTreemapServices:n}},void 0),e=t().Treemap.parser.LangiumParser;Yt.treemap=e},"treemap")};async function mS(t,e){const n=pS[t];if(!n)throw new Error(`Unknown diagram type: ${t}`);Yt[t]||await n();const i=Yt[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new gS(i);return i.value}_(mS,"parse");var qr,gS=(qr=class extends Error{constructor(e){const n=e.lexerErrors.map(i=>i.message).join(`
|
|
161
|
-
`),r=e.parserErrors.map(i=>i.message).join(`
|
|
162
|
-
`);super(`Parsing failed: ${n} ${r}`),this.result=e}},_(qr,"MermaidParseError"),qr);const yS=Object.freeze(Object.defineProperty({__proto__:null,InfoModule:Fp,createInfoServices:Gp},Symbol.toStringTag,{value:"Module"})),TS=Object.freeze(Object.defineProperty({__proto__:null,PacketModule:Up,createPacketServices:jp},Symbol.toStringTag,{value:"Module"})),RS=Object.freeze(Object.defineProperty({__proto__:null,PieModule:zp,createPieServices:Bp},Symbol.toStringTag,{value:"Module"})),vS=Object.freeze(Object.defineProperty({__proto__:null,ArchitectureModule:qp,createArchitectureServices:Wp},Symbol.toStringTag,{value:"Module"})),ES=Object.freeze(Object.defineProperty({__proto__:null,GitGraphModule:Dp,createGitGraphServices:Mp},Symbol.toStringTag,{value:"Module"})),AS=Object.freeze(Object.defineProperty({__proto__:null,RadarModule:Vp,createRadarServices:Kp},Symbol.toStringTag,{value:"Module"})),SS=Object.freeze(Object.defineProperty({__proto__:null,TreemapModule:Yp,createTreemapServices:Xp},Symbol.toStringTag,{value:"Module"}));export{mS as p};
|