@diagrammo/dgmo 0.95.0 → 0.97.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/advanced.d.ts +190 -568
- package/dist/advanced.js +259 -470
- package/dist/block.d.ts +8 -0
- package/dist/block.js +144 -73
- package/dist/{calculator-BNH3GSJE.js → calculator-CIGGTURF.js} +2 -2
- package/dist/{chart-meta-BbjsRY7o.d.ts → chart-meta-B7niEd52.d.ts} +3 -1
- package/dist/chart-meta.d.ts +2 -2
- package/dist/chart-meta.js +19 -19
- package/dist/{chart-types-Cppnp31G.d.ts → chart-types-Dxtv4XSz.d.ts} +4 -5
- package/dist/{charts-d3-SZV2SFTM.js → charts-d3-INWEGMSD.js} +14 -14
- package/dist/{chunk-P5XA627W.js → chunk-2FMOLWX4.js} +73 -65
- package/dist/{chunk-MLY5ALOV.js → chunk-2SZILMQT.js} +57 -15
- package/dist/chunk-35A3J4Z5.js +14 -0
- package/dist/{chunk-UXNA2H2V.js → chunk-3C4OXVZJ.js} +2 -2
- package/dist/{chunk-IZHGT5HD.js → chunk-3HL6NSSQ.js} +63 -18
- package/dist/{chunk-2WQ3YZMN.js → chunk-3IUMSK72.js} +2 -2
- package/dist/{chunk-LAXMUSGW.js → chunk-44RLIAYC.js} +17 -10
- package/dist/{chunk-H7AXCRO7.js → chunk-453IWXZ3.js} +0 -11
- package/dist/{chunk-2I4UQG7W.js → chunk-47INRTZ6.js} +2 -2
- package/dist/{chunk-IN7XI6NO.js → chunk-4NMRS6HW.js} +1 -1
- package/dist/{chunk-KLBTJEIK.js → chunk-4TK26YHH.js} +2 -2
- package/dist/{chunk-CN4RDJDV.js → chunk-5TGZBHEJ.js} +1 -1
- package/dist/{chunk-IXHWS2HI.js → chunk-5WZYJC2P.js} +2 -2
- package/dist/{chunk-KBDMEOLI.js → chunk-65JFUANT.js} +1 -1
- package/dist/{chunk-D3K4U3ZM.js → chunk-6K2W3FH7.js} +8 -5
- package/dist/{chunk-NXU4N5WT.js → chunk-6OUMYNAJ.js} +1 -1
- package/dist/{chunk-KRPLP5LP.js → chunk-6PUBFB6D.js} +24 -3
- package/dist/{chunk-EXHXTMVR.js → chunk-6S2H6EKN.js} +3 -3
- package/dist/{chunk-KSZB7TIY.js → chunk-6SDEXSJY.js} +42 -22
- package/dist/{chunk-IQN2NGEU.js → chunk-6YBZFOTA.js} +13 -13
- package/dist/{chunk-IHN6WDEY.js → chunk-74XR7Z3I.js} +13 -13
- package/dist/{chunk-2J2CWWWK.js → chunk-7ASVGFW3.js} +1 -1
- package/dist/{chunk-BH2SF4TT.js → chunk-7QKWU7FX.js} +3 -3
- package/dist/{chunk-A6YINTY6.js → chunk-7RACGVUY.js} +1 -1
- package/dist/{chunk-VB4VMB2I.js → chunk-7TEAFIEJ.js} +9 -5
- package/dist/{chunk-UNCCZ3NU.js → chunk-A3V72YIL.js} +14 -1
- package/dist/{chunk-BCV2VJTM.js → chunk-A5LFM62B.js} +3 -3
- package/dist/{chunk-U6VS3T2M.js → chunk-AULFF7L2.js} +4 -4
- package/dist/{chunk-LKZCUFOW.js → chunk-B7ZH5EQ2.js} +2 -2
- package/dist/{chunk-VGAMBOOC.js → chunk-C6ME2L4T.js} +2 -2
- package/dist/{chunk-3PP746YM.js → chunk-CGP7RGLJ.js} +1 -1
- package/dist/{chunk-67N26CER.js → chunk-CLW45YKE.js} +2 -1
- package/dist/{chunk-VTESGA5F.js → chunk-CUOMNKYW.js} +4 -4
- package/dist/{chunk-CDM6XMOT.js → chunk-CUTEHGXO.js} +2 -2
- package/dist/{chunk-NERQSSYD.js → chunk-D67YE4LR.js} +1 -1
- package/dist/{chunk-XOMIYMQ3.js → chunk-D7KZE2XJ.js} +39 -17
- package/dist/{chunk-NMS5XSLX.js → chunk-DFEVFLEG.js} +3 -3
- package/dist/{chunk-EBVVMUAA.js → chunk-DKMZ4VMV.js} +1 -1
- package/dist/{chunk-V5D6GDNK.js → chunk-DRY4W4W6.js} +36 -15
- package/dist/{chunk-XJQ6Z3FO.js → chunk-E6GHXMH2.js} +8 -8
- package/dist/{chunk-KBEWVCK3.js → chunk-EBJLT7PH.js} +1 -1
- package/dist/{chunk-TASRGDYP.js → chunk-EEIGHOJR.js} +92 -23
- package/dist/{chunk-AQQUJEDN.js → chunk-EUPUVYWO.js} +1 -1
- package/dist/{chunk-7IALGIOI.js → chunk-F2OAZHOX.js} +10 -5
- package/dist/{chunk-JXGSTBW6.js → chunk-FK6HZYGK.js} +4 -14
- package/dist/{chunk-OSSTOSXU.js → chunk-FTW2E2YH.js} +7 -10
- package/dist/{chunk-5P2L5QXE.js → chunk-FZVCS2XY.js} +4 -2
- package/dist/chunk-G24NSISJ.js +69 -0
- package/dist/{chunk-EBIDNRSR.js → chunk-GFQFLLP3.js} +2 -2
- package/dist/{chunk-RQTDUZUH.js → chunk-GLLYHYGT.js} +27 -17
- package/dist/{chunk-VLC6WNRD.js → chunk-GULGSH2Z.js} +4 -0
- package/dist/{chunk-H5NVCOEJ.js → chunk-GXBH7WNN.js} +2 -2
- package/dist/{chunk-C6G36F5S.js → chunk-H242TVAE.js} +9 -9
- package/dist/{chunk-5XBYLYYI.js → chunk-H7DZYHQF.js} +3 -3
- package/dist/{chunk-GLCMUTO5.js → chunk-HQNZJMNS.js} +1 -1
- package/dist/{chunk-IY62DXT2.js → chunk-IAM3IDL4.js} +2 -2
- package/dist/{chunk-IGJEKO2P.js → chunk-II6D6NWX.js} +8 -8
- package/dist/{chunk-AULZD45V.js → chunk-IUFTAFGN.js} +2 -2
- package/dist/{chunk-FWVE373X.js → chunk-IZEKHIV6.js} +3 -3
- package/dist/{chunk-BQMHJ6OW.js → chunk-J3YM6RA5.js} +22 -14
- package/dist/{chunk-R6EGUTIV.js → chunk-J467QBZF.js} +23 -3
- package/dist/{chunk-JJ7RGTAU.js → chunk-J7JF4QKA.js} +40 -30
- package/dist/{chunk-E7F76M3U.js → chunk-JULBDTNU.js} +61 -9
- package/dist/{chunk-EPDBWATV.js → chunk-K7RRXZHS.js} +4 -2
- package/dist/{chunk-ZECJ7Q6C.js → chunk-KMB754DO.js} +33 -6
- package/dist/chunk-KNKZGRRB.js +439 -0
- package/dist/{chunk-XIUGSUE4.js → chunk-KTGJQJB3.js} +6 -2
- package/dist/{chunk-4SACN2C5.js → chunk-KW3CC7SB.js} +1 -1
- package/dist/{chunk-3GUEYQGL.js → chunk-L3K5O3Z5.js} +3 -3
- package/dist/chunk-LRTSTDJ6.js +126 -0
- package/dist/{chunk-NBAAIRFP.js → chunk-LZATSXAA.js} +5 -2
- package/dist/{chunk-USE6HIOZ.js → chunk-MJ725XHD.js} +1156 -330
- package/dist/{chunk-3KVUFHUJ.js → chunk-NBISN6FH.js} +2 -2
- package/dist/{chunk-RITTLIDJ.js → chunk-NN5RUHXV.js} +84 -16
- package/dist/{chunk-62GLKE6Q.js → chunk-NOZMRPXI.js} +112 -157
- package/dist/{chunk-4XYZJTFO.js → chunk-NQFZ7LXC.js} +14 -6
- package/dist/chunk-NTDWVTEY.js +12 -0
- package/dist/{chunk-BQO24BDM.js → chunk-O3HRF25Z.js} +1 -1
- package/dist/{chunk-ZD3QCNB7.js → chunk-OSSA5UWA.js} +3 -3
- package/dist/{chunk-UOCWYLYT.js → chunk-OZXKW5NA.js} +1 -1
- package/dist/{chunk-NPDVWFAQ.js → chunk-PLQZJZ2K.js} +1 -1
- package/dist/chunk-PRG7NIUU.js +272 -0
- package/dist/{chunk-S4SJ4LLY.js → chunk-PSNRB75I.js} +3 -3
- package/dist/{chunk-QPQWY5RU.js → chunk-PT5VFY3B.js} +38 -14
- package/dist/{chunk-KAO7JL4I.js → chunk-PU5X3P3T.js} +6 -5
- package/dist/{chunk-J7Q4AB23.js → chunk-PZ5LAAO3.js} +2 -2
- package/dist/{chunk-TOHTKLKE.js → chunk-Q5Q5JLRT.js} +1 -1
- package/dist/{chunk-Y3SIQN4J.js → chunk-Q6V342WS.js} +17 -5
- package/dist/{chunk-RBVFNUAL.js → chunk-QDPTOIG7.js} +5 -5
- package/dist/{chunk-ERT7XDQW.js → chunk-QIITSGI5.js} +1 -1
- package/dist/{chunk-NM5V5EKY.js → chunk-QLIZ7SB7.js} +1 -1
- package/dist/chunk-QLNLRZ37.js +181 -0
- package/dist/{chunk-HHVIE45A.js → chunk-QOLRTPGH.js} +6 -6
- package/dist/{chunk-2ZW4NBYX.js → chunk-R4SXMBGF.js} +1 -1
- package/dist/chunk-R4U7IIRX.js +178 -0
- package/dist/{chunk-BRGRIZQB.js → chunk-RC6PISCK.js} +4 -2
- package/dist/{chunk-UIEKW4SG.js → chunk-REKLKGR6.js} +3 -4
- package/dist/{chunk-TIIZIAGS.js → chunk-RFGQDIOI.js} +843 -233
- package/dist/{chunk-FVTYJUXR.js → chunk-ROFSIFSY.js} +4 -4
- package/dist/{chunk-VSAKEMDD.js → chunk-ROH4LYBL.js} +71 -21
- package/dist/{chunk-4UVCTLRH.js → chunk-SNDCXT5R.js} +9 -7
- package/dist/{chunk-R46N5KR4.js → chunk-SQBCNEJB.js} +2 -1
- package/dist/{chunk-66JTY4AN.js → chunk-TDUBTDXS.js} +1 -1
- package/dist/{chunk-PGSGJLUR.js → chunk-TMB4YY3J.js} +34 -4
- package/dist/{chunk-UZ7EZW3B.js → chunk-TO53KK2P.js} +6 -1
- package/dist/{chunk-5KKZXA44.js → chunk-V3ICBS2O.js} +7 -5
- package/dist/{chunk-GWQRTA5W.js → chunk-V65EDV6S.js} +3 -3
- package/dist/{chunk-VF7IKIRS.js → chunk-VKT3BVRO.js} +35 -11
- package/dist/{chunk-L5S32VZJ.js → chunk-VOO65FKC.js} +12 -12
- package/dist/{chunk-PVWIBKV2.js → chunk-VQWLASDC.js} +2 -2
- package/dist/{chunk-JILEYZ2V.js → chunk-VVL2KKG4.js} +1 -1
- package/dist/{chunk-GI5R5B3S.js → chunk-VVZDBUHA.js} +2 -2
- package/dist/{chunk-PGBTUGDB.js → chunk-W46OMHOK.js} +23 -27
- package/dist/{chunk-XCKNFFKM.js → chunk-WH6E6SHC.js} +2 -4
- package/dist/{chunk-H6BT45SN.js → chunk-WPYJAHRP.js} +1 -1
- package/dist/{chunk-LJGE43SG.js → chunk-WXGFB2O2.js} +3 -3
- package/dist/{chunk-YQMIKX54.js → chunk-XCYGOCMS.js} +102 -52
- package/dist/{chunk-BTP2BMWN.js → chunk-XEMCNQQW.js} +15 -15
- package/dist/{chunk-NVZ7R4EK.js → chunk-XMUFXJI2.js} +6 -6
- package/dist/{chunk-AM42TLSZ.js → chunk-XZGXVN4T.js} +5 -5
- package/dist/{chunk-5OTA2PUH.js → chunk-YCIBBVI2.js} +2 -2
- package/dist/{chunk-V2NQV7VL.js → chunk-YFIDR7JH.js} +2 -2
- package/dist/{chunk-USZLHYEQ.js → chunk-YFWIFKRQ.js} +3 -3
- package/dist/{chunk-6XLMTAEX.js → chunk-YIHRLY55.js} +33 -6
- package/dist/{chunk-CYRB2JTN.js → chunk-YLKPRT6U.js} +1 -1
- package/dist/{chunk-KMU65FYM.js → chunk-YSDSFXQD.js} +1 -1
- package/dist/{chunk-ZI6WC24V.js → chunk-ZBJV4KNU.js} +1 -1
- package/dist/{chunk-4EX4OKGZ.js → chunk-ZCKVTZHD.js} +41 -19
- package/dist/{chunk-7PJBJ2DU.js → chunk-ZMVMGZAJ.js} +1 -1
- package/dist/{chunk-6EFCOES2.js → chunk-ZRW4B4KF.js} +48 -14
- package/dist/{chunk-A2A2I4Z4.js → chunk-ZTKO2RD4.js} +5 -5
- package/dist/collapse-6IGH2B24.js +31 -0
- package/dist/{collapse-BSPH3BFM.js → collapse-6X5S2S3G.js} +2 -1
- package/dist/collapse-GOWNCVHZ.js +7 -0
- package/dist/collapse-HNTPLB2Q.js +11 -0
- package/dist/collapse-NUM7DPJA.js +10 -0
- package/dist/completion-registry.js +28 -39
- package/dist/countdown.js +1 -1
- package/dist/dgmo-router-RSYWR5IS.js +101 -0
- package/dist/dimensions-KXAI7U2B.js +21 -0
- package/dist/editor.js +884 -222
- package/dist/{flowchart-parser-J3VWIFWB.js → flowchart-parser-UI5VZNGJ.js} +5 -5
- package/dist/{flowchart-renderer-FECH5KK5.js → flowchart-renderer-IYWPKPCF.js} +18 -18
- package/dist/fold-at-line-DmSAa1eU.d.ts +11 -0
- package/dist/highlight.js +886 -224
- package/dist/index.d.ts +89 -6
- package/dist/index.js +91 -70
- package/dist/{layout-TIBRMWHL.js → layout-6VY3DHYD.js} +6 -6
- package/dist/{layout-5SZ5A64I.js → layout-7C2QZCEZ.js} +10 -10
- package/dist/{layout-2WESJYRE.js → layout-7E7BNOGO.js} +3 -2
- package/dist/layout-BSK374N6.js +11 -0
- package/dist/{layout-RH3N46HP.js → layout-FJDBY3WG.js} +6 -5
- package/dist/{layout-YBMT74MG.js → layout-G3RVKEC4.js} +10 -10
- package/dist/{layout-KV27UW25.js → layout-GC5XX2RH.js} +2 -2
- package/dist/{layout-JTIRCKAW.js → layout-R6ULGQJK.js} +6 -6
- package/dist/{layout-HFBK5UEG.js → layout-ROI5KVSO.js} +3 -3
- package/dist/{layout-3TSVAGWH.js → layout-SPPS225I.js} +3 -3
- package/dist/{layout-HF3PMI4H.js → layout-VTGOYGRC.js} +2 -2
- package/dist/{layout-EWXHEXNS.js → layout-WBH5IHYK.js} +10 -10
- package/dist/layout-WTHBGTH2.js +15 -0
- package/dist/layout-ZCCABSV7.js +15 -0
- package/dist/{layout-search-AWPJWBKT.js → layout-search-DSIDKKQO.js} +8 -8
- package/dist/{legend-constants-55MFBXYF.js → legend-constants-KF3MKWL2.js} +2 -2
- package/dist/{parser-NUU3DVW4.js → parser-3PMYAVFL.js} +2 -2
- package/dist/{parser-KJPPUN4D.js → parser-5KVFS4RN.js} +2 -2
- package/dist/{parser-6TDWUKM5.js → parser-BA43YPIQ.js} +3 -3
- package/dist/{parser-EFF22GYO.js → parser-CFAYEWLF.js} +3 -3
- package/dist/{parser-A3AN76RQ.js → parser-DRFEX6OX.js} +3 -3
- package/dist/{parser-H5OODY5N.js → parser-DWVBRBB2.js} +3 -3
- package/dist/{parser-BJ7RJNUM.js → parser-E4B7HJT2.js} +3 -3
- package/dist/{parser-5UZV32ZI.js → parser-FWQY3HJX.js} +2 -2
- package/dist/{parser-RTWPFKXG.js → parser-GMCXCJSP.js} +3 -3
- package/dist/{parser-NL73FSFI.js → parser-IHFHPFL7.js} +3 -3
- package/dist/{parser-BTSTKY5G.js → parser-IU6425JW.js} +6 -6
- package/dist/{parser-ZRIZFDZY.js → parser-IZYIXDJX.js} +6 -6
- package/dist/{parser-4TBSWULQ.js → parser-JQGUTDSX.js} +3 -3
- package/dist/{parser-TUAEX6ML.js → parser-JRKPOO2Z.js} +3 -3
- package/dist/{parser-KMKVFET2.js → parser-KI2XYB2R.js} +2 -2
- package/dist/parser-LDVVBP7S.js +12 -0
- package/dist/{parser-YG625J5H.js → parser-MAGFK6OK.js} +4 -4
- package/dist/{parser-AR2GON37.js → parser-MH5BDN7X.js} +4 -4
- package/dist/{parser-EAQPZX2B.js → parser-MUHFEM4G.js} +3 -3
- package/dist/{parser-RCIEKN7Y.js → parser-P375HO7Q.js} +2 -2
- package/dist/{parser-GMQJISZ6.js → parser-PYY5BRLQ.js} +2 -2
- package/dist/parser-QEMFMVF5.js +12 -0
- package/dist/{parser-GDLKUBTO.js → parser-QIPDBT5M.js} +2 -2
- package/dist/{parser-BT4NI6JY.js → parser-RNBDDEGL.js} +3 -3
- package/dist/{parser-MA7L3XND.js → parser-RSWZGQA7.js} +6 -6
- package/dist/{parser-K2DI26SC.js → parser-SGX2PVR5.js} +2 -2
- package/dist/{parser-KKF6Y5MM.js → parser-SJUEFKNM.js} +4 -3
- package/dist/{parser-3QIFY5IN.js → parser-UMNBPXG2.js} +2 -2
- package/dist/{parser-F7NDRPMA.js → parser-WE4VSBBY.js} +3 -3
- package/dist/{parser-4Y6PODW6.js → parser-WKEYS7N3.js} +3 -3
- package/dist/{parser-KLCSFQ3J.js → parser-WPXUUNA2.js} +3 -3
- package/dist/{parser-LTRQASGB.js → parser-XP3RCOTN.js} +3 -3
- package/dist/{parser-2IKPQVKX.js → parser-YV4RBHG7.js} +3 -3
- package/dist/{parser-3LT3ZUUC.js → parser-YZ3J542U.js} +2 -2
- package/dist/{redraw-AHW7EUUF.js → redraw-BZ4GI6IC.js} +6 -4
- package/dist/{redraw-STZ4WJAI.js → redraw-LEOXS7C6.js} +3 -3
- package/dist/{renderer-IGSHD3OT.js → renderer-2V5NVI3V.js} +16 -16
- package/dist/renderer-4PKYVOYL.js +39 -0
- package/dist/{renderer-IVHD7ENY.js → renderer-66SCERH7.js} +14 -12
- package/dist/renderer-6IAXRZLK.js +85 -0
- package/dist/{renderer-XCLARXCK.js → renderer-6O5SV5YE.js} +10 -10
- package/dist/{renderer-IXBOT6DU.js → renderer-7OXMSF4R.js} +4 -4
- package/dist/{renderer-AM7P4LN7.js → renderer-A36NL2SS.js} +8 -8
- package/dist/{renderer-ACQQ2JXA.js → renderer-ASPBBACI.js} +13 -11
- package/dist/{renderer-W4MUMXJE.js → renderer-BXVTYE27.js} +7 -6
- package/dist/renderer-CC6O6GQK.js +18 -0
- package/dist/{renderer-Y47EM337.js → renderer-CNDB4JTZ.js} +17 -17
- package/dist/renderer-COV2DXTM.js +41 -0
- package/dist/renderer-DXCATVLO.js +30 -0
- package/dist/{renderer-JYHA6R2D.js → renderer-E5E3OJ42.js} +12 -11
- package/dist/{renderer-DAZWHNLI.js → renderer-E7LC7HCU.js} +5 -5
- package/dist/{renderer-RUSQJFFC.js → renderer-F3JYZERE.js} +4 -4
- package/dist/{renderer-7OGGV327.js → renderer-FAFSRFGR.js} +9 -9
- package/dist/renderer-HIB6LZWZ.js +26 -0
- package/dist/renderer-HLDRRFZB.js +28 -0
- package/dist/renderer-INQMQPNN.js +22 -0
- package/dist/renderer-ITJ67HXO.js +27 -0
- package/dist/{renderer-UTEEJDGB.js → renderer-JLOKFKOZ.js} +14 -13
- package/dist/{renderer-2LYX6NHN.js → renderer-KOPJ76GS.js} +10 -10
- package/dist/{renderer-MWZC7TMD.js → renderer-M2467III.js} +14 -13
- package/dist/{renderer-HX6ICPDX.js → renderer-MYKL6VG6.js} +6 -6
- package/dist/{renderer-BXD5KVSR.js → renderer-S6L3JR6C.js} +11 -11
- package/dist/{renderer-NOYLNVTI.js → renderer-SYWVZ4CY.js} +3 -3
- package/dist/renderer-TCTZZ5Y6.js +32 -0
- package/dist/{renderer-QTPWRRJ7.js → renderer-UIHCYXBY.js} +12 -12
- package/dist/{renderer-36446HSH.js → renderer-WIBVOPRC.js} +6 -4
- package/dist/{renderer-2QPHDBZY.js → renderer-XMJ6XZGL.js} +12 -11
- package/dist/{renderer-TINHO2IO.js → renderer-ZTHXOBXW.js} +8 -8
- package/dist/{renderer-radial-WFUX3Z3C.js → renderer-radial-FC25BDCZ.js} +8 -8
- package/dist/{state-parser-PMNHLHLE.js → state-parser-2PQRH5JE.js} +6 -6
- package/dist/state-renderer-YP6HWLJR.js +43 -0
- package/dist/{themes-DzIH3Hjv.d.ts → themes-DoLdhUXV.d.ts} +1 -1
- package/docs/ai-integration.md +4 -4
- package/docs/language-reference.md +154 -104
- package/gallery/fixtures/swot-relabel.dgmo +19 -0
- package/gallery/fixtures/swot-tags.dgmo +16 -0
- package/gallery/fixtures/swot.dgmo +13 -0
- package/gallery/fixtures/whiteboard.dgmo +1 -0
- package/package.json +1 -1
- package/dist/chunk-6BQSDF77.js +0 -734
- package/dist/chunk-NWSPPGIE.js +0 -60
- package/dist/chunk-R2K5L4UA.js +0 -49
- package/dist/chunk-VBMRZCMQ.js +0 -1465
- package/dist/chunk-WZBZXZ6T.js +0 -636
- package/dist/collapse-TCVK3RPO.js +0 -8
- package/dist/dgmo-router-6YLKM6WU.js +0 -101
- package/dist/dimensions-DS6FWLRY.js +0 -21
- package/dist/layout-D4L44NRG.js +0 -11
- package/dist/layout-MXHR3P35.js +0 -15
- package/dist/layout-ND26WVX2.js +0 -15
- package/dist/layout-VDCJOZSH.js +0 -11
- package/dist/parser-PEZ7RN43.js +0 -14
- package/dist/parser-YHDGKPZI.js +0 -14
- package/dist/renderer-4VGO27EE.js +0 -41
- package/dist/renderer-6BDK47V6.js +0 -30
- package/dist/renderer-ISQJ2ELA.js +0 -25
- package/dist/renderer-KJ3V5BYP.js +0 -26
- package/dist/renderer-O6RP52CQ.js +0 -22
- package/dist/renderer-P3WR7TKD.js +0 -39
- package/dist/renderer-UGW4N2W5.js +0 -28
- package/dist/renderer-WPN2SXGT.js +0 -29
- package/dist/renderer-XDX6S7OV.js +0 -30
- package/dist/renderer-ZV6KCLCL.js +0 -85
- package/dist/state-renderer-JQ5DS66J.js +0 -42
- package/gallery/fixtures/sketch.dgmo +0 -22
|
@@ -94,6 +94,10 @@ var chartTypesData = [
|
|
|
94
94
|
id: "kanban",
|
|
95
95
|
description: "Task board columns"
|
|
96
96
|
},
|
|
97
|
+
{
|
|
98
|
+
id: "swot",
|
|
99
|
+
description: "SWOT analysis: strengths, weaknesses, opportunities and threats in four fixed panels on helpful/harmful and internal/external axes"
|
|
100
|
+
},
|
|
97
101
|
{
|
|
98
102
|
id: "raci",
|
|
99
103
|
description: "Tasks \xD7 roles responsibility matrix with constraint linting"
|
|
@@ -130,14 +134,9 @@ var chartTypesData = [
|
|
|
130
134
|
id: "block",
|
|
131
135
|
description: "Block diagram: an author-controlled grid of rectangular blocks with nested, collapsible containers \u2014 system/hardware/architecture layouts where the 2-D arrangement is the meaning"
|
|
132
136
|
},
|
|
133
|
-
{
|
|
134
|
-
id: "sketch",
|
|
135
|
-
description: "GUI-first constrained canvas: uniformly-sized shapes placed freely on a snap grid, arrows between them, meaning through tags \u2014 the markup is generated by the canvas editor",
|
|
136
|
-
beta: true
|
|
137
|
-
},
|
|
138
137
|
{
|
|
139
138
|
id: "whiteboard",
|
|
140
|
-
description: "Free-form whiteboard on an infinite canvas: rectangles, ellipses, databases, queues, free arrows, text, pasted images and freehand ink at pixel positions \u2014 drawn in the canvas; AI writes shapes, arrows and text, never ink",
|
|
139
|
+
description: "Free-form whiteboard on an infinite canvas: rectangles, ellipses, databases, queues, files, free arrows, text, pasted images and freehand ink at pixel positions \u2014 drawn in the canvas; AI writes shapes, arrows and text, never ink",
|
|
141
140
|
beta: true
|
|
142
141
|
},
|
|
143
142
|
{
|
|
@@ -248,6 +247,9 @@ var chartTypes = chartTypesData;
|
|
|
248
247
|
var CHART_TYPE_IDS = chartTypesData.map(
|
|
249
248
|
(c) => c.id
|
|
250
249
|
);
|
|
250
|
+
var RETIRED_CHART_TYPES = {
|
|
251
|
+
sketch: "whiteboard"
|
|
252
|
+
};
|
|
251
253
|
|
|
252
254
|
// src/directives-registry.ts
|
|
253
255
|
var DIRECTIVES_REGISTRY = [
|
|
@@ -255,9 +257,21 @@ var DIRECTIVES_REGISTRY = [
|
|
|
255
257
|
// Accepted in every date-bearing chart (gantt, pert, countdown, timeline,
|
|
256
258
|
// event-line). Handled inline by each parser's prescan — no parser-Set
|
|
257
259
|
// membership here — so they only contribute highlighting (DIRECTIVE_KEYWORDS).
|
|
258
|
-
{
|
|
259
|
-
|
|
260
|
-
|
|
260
|
+
{
|
|
261
|
+
token: "year",
|
|
262
|
+
category: "directive",
|
|
263
|
+
chartTypes: ["countdown", "event-line", "gantt", "pert", "timeline"]
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
token: "date-order",
|
|
267
|
+
category: "directive",
|
|
268
|
+
chartTypes: ["countdown", "event-line", "gantt", "pert", "timeline"]
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
token: "no-current-year",
|
|
272
|
+
category: "directive",
|
|
273
|
+
chartTypes: ["countdown", "event-line", "gantt", "pert", "timeline"]
|
|
274
|
+
},
|
|
261
275
|
// ── Infra ────────────────────────────────────────────────
|
|
262
276
|
// Top-level SLO options that are ALSO accepted as node colon-properties
|
|
263
277
|
// (dual membership). Highlight bare (kept in DIRECTIVE_KEYWORDS) — their
|
|
@@ -265,92 +279,413 @@ var DIRECTIVES_REGISTRY = [
|
|
|
265
279
|
{
|
|
266
280
|
token: "slo-availability",
|
|
267
281
|
category: "directive",
|
|
268
|
-
infra: ["top-level", "behavior"]
|
|
282
|
+
infra: ["top-level", "behavior"],
|
|
283
|
+
chartTypes: ["infra"]
|
|
269
284
|
},
|
|
270
285
|
{
|
|
271
286
|
token: "slo-p90-latency-ms",
|
|
272
287
|
category: "directive",
|
|
273
|
-
infra: ["top-level", "behavior"]
|
|
288
|
+
infra: ["top-level", "behavior"],
|
|
289
|
+
chartTypes: ["infra"]
|
|
274
290
|
},
|
|
275
291
|
{
|
|
276
292
|
token: "slo-warning-margin",
|
|
277
293
|
category: "directive",
|
|
278
|
-
infra: ["top-level", "behavior"]
|
|
294
|
+
infra: ["top-level", "behavior"],
|
|
295
|
+
chartTypes: ["infra"]
|
|
279
296
|
},
|
|
280
297
|
// Top-level-only options (space-separated, bare).
|
|
281
|
-
{
|
|
282
|
-
|
|
283
|
-
|
|
298
|
+
{
|
|
299
|
+
token: "default-latency-ms",
|
|
300
|
+
category: "directive",
|
|
301
|
+
infra: ["top-level"],
|
|
302
|
+
chartTypes: ["infra"]
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
token: "default-uptime",
|
|
306
|
+
category: "directive",
|
|
307
|
+
infra: ["top-level"],
|
|
308
|
+
chartTypes: ["infra"]
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
token: "default-rps",
|
|
312
|
+
category: "directive",
|
|
313
|
+
infra: ["top-level"],
|
|
314
|
+
chartTypes: ["infra"]
|
|
315
|
+
},
|
|
284
316
|
// `active-tag` is shared with gantt + map (see below).
|
|
285
317
|
// Node behavior colon-keys — highlight as propertyName.
|
|
286
|
-
{
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
{
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
{
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
318
|
+
{
|
|
319
|
+
token: "latency-ms",
|
|
320
|
+
colonKey: true,
|
|
321
|
+
infra: ["behavior"],
|
|
322
|
+
chartTypes: ["infra"]
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
token: "uptime",
|
|
326
|
+
colonKey: true,
|
|
327
|
+
infra: ["behavior"],
|
|
328
|
+
chartTypes: ["infra"]
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
token: "instances",
|
|
332
|
+
colonKey: true,
|
|
333
|
+
infra: ["behavior"],
|
|
334
|
+
chartTypes: ["infra"]
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
token: "max-rps",
|
|
338
|
+
colonKey: true,
|
|
339
|
+
infra: ["behavior"],
|
|
340
|
+
chartTypes: ["infra"]
|
|
341
|
+
},
|
|
342
|
+
{
|
|
343
|
+
token: "cache-hit",
|
|
344
|
+
colonKey: true,
|
|
345
|
+
infra: ["behavior"],
|
|
346
|
+
chartTypes: ["infra"]
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
token: "firewall-block",
|
|
350
|
+
colonKey: true,
|
|
351
|
+
infra: ["behavior"],
|
|
352
|
+
chartTypes: ["infra"]
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
token: "ratelimit-rps",
|
|
356
|
+
colonKey: true,
|
|
357
|
+
infra: ["behavior"],
|
|
358
|
+
chartTypes: ["infra"]
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
token: "buffer",
|
|
362
|
+
colonKey: true,
|
|
363
|
+
infra: ["behavior"],
|
|
364
|
+
chartTypes: ["infra"]
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
token: "drain-rate",
|
|
368
|
+
colonKey: true,
|
|
369
|
+
infra: ["behavior"],
|
|
370
|
+
chartTypes: ["infra"]
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
token: "retention-hours",
|
|
374
|
+
colonKey: true,
|
|
375
|
+
infra: ["behavior"],
|
|
376
|
+
chartTypes: ["infra"]
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
token: "partitions",
|
|
380
|
+
colonKey: true,
|
|
381
|
+
infra: ["behavior"],
|
|
382
|
+
chartTypes: ["infra"]
|
|
383
|
+
},
|
|
384
|
+
{
|
|
385
|
+
token: "concurrency",
|
|
386
|
+
colonKey: true,
|
|
387
|
+
infra: ["behavior"],
|
|
388
|
+
chartTypes: ["infra"]
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
token: "duration-ms",
|
|
392
|
+
colonKey: true,
|
|
393
|
+
infra: ["behavior"],
|
|
394
|
+
chartTypes: ["infra"]
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
token: "cold-start-ms",
|
|
398
|
+
colonKey: true,
|
|
399
|
+
infra: ["behavior"],
|
|
400
|
+
chartTypes: ["infra"]
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
token: "cb-error-threshold",
|
|
404
|
+
colonKey: true,
|
|
405
|
+
infra: ["behavior"],
|
|
406
|
+
chartTypes: ["infra"]
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
token: "cb-latency-threshold-ms",
|
|
410
|
+
colonKey: true,
|
|
411
|
+
infra: ["behavior"],
|
|
412
|
+
chartTypes: ["infra"]
|
|
413
|
+
},
|
|
302
414
|
// Edge-only colon-key.
|
|
303
|
-
{ token: "rps", colonKey: true, infra: ["edge"] },
|
|
415
|
+
{ token: "rps", colonKey: true, infra: ["edge"], chartTypes: ["infra"] },
|
|
304
416
|
// ── Gantt ────────────────────────────────────────────────
|
|
305
|
-
{
|
|
417
|
+
{
|
|
418
|
+
token: "start",
|
|
419
|
+
category: "directive",
|
|
420
|
+
gantt: ["option"],
|
|
421
|
+
chartTypes: ["gantt"]
|
|
422
|
+
},
|
|
306
423
|
{
|
|
307
424
|
token: "today-marker",
|
|
308
425
|
category: "directive",
|
|
309
|
-
gantt: ["option", "boolean"]
|
|
426
|
+
gantt: ["option", "boolean"],
|
|
427
|
+
chartTypes: ["gantt"]
|
|
310
428
|
},
|
|
311
429
|
{
|
|
312
430
|
token: "critical-path",
|
|
313
431
|
category: "directive",
|
|
314
|
-
gantt: ["option", "boolean"]
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
{
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
432
|
+
gantt: ["option", "boolean"],
|
|
433
|
+
chartTypes: ["gantt"]
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
token: "sprint-length",
|
|
437
|
+
category: "directive",
|
|
438
|
+
gantt: ["option"],
|
|
439
|
+
chartTypes: ["gantt", "pert"]
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
token: "sprint-number",
|
|
443
|
+
category: "directive",
|
|
444
|
+
gantt: ["option"],
|
|
445
|
+
chartTypes: ["gantt", "pert"]
|
|
446
|
+
},
|
|
447
|
+
{
|
|
448
|
+
token: "sprint-start",
|
|
449
|
+
category: "directive",
|
|
450
|
+
gantt: ["option"],
|
|
451
|
+
chartTypes: ["gantt", "pert"]
|
|
452
|
+
},
|
|
453
|
+
{
|
|
454
|
+
token: "fill-tint",
|
|
455
|
+
category: "directive",
|
|
456
|
+
gantt: ["boolean"],
|
|
457
|
+
chartTypes: [
|
|
458
|
+
"arc",
|
|
459
|
+
"bar",
|
|
460
|
+
"block",
|
|
461
|
+
"body",
|
|
462
|
+
"boxes-and-lines",
|
|
463
|
+
"bracket",
|
|
464
|
+
"c4",
|
|
465
|
+
"class",
|
|
466
|
+
"clock",
|
|
467
|
+
"countdown",
|
|
468
|
+
"cycle",
|
|
469
|
+
"er",
|
|
470
|
+
"event-line",
|
|
471
|
+
"family",
|
|
472
|
+
"flowchart",
|
|
473
|
+
"funnel",
|
|
474
|
+
"gantt",
|
|
475
|
+
"goal",
|
|
476
|
+
"heatmap",
|
|
477
|
+
"journey-map",
|
|
478
|
+
"kanban",
|
|
479
|
+
"line",
|
|
480
|
+
"mindmap",
|
|
481
|
+
"org",
|
|
482
|
+
"pert",
|
|
483
|
+
"pie",
|
|
484
|
+
"polar-area",
|
|
485
|
+
"pyramid",
|
|
486
|
+
"quadrant",
|
|
487
|
+
"raci",
|
|
488
|
+
"radar",
|
|
489
|
+
"ring",
|
|
490
|
+
"scatter",
|
|
491
|
+
"sequence",
|
|
492
|
+
"sitemap",
|
|
493
|
+
"state",
|
|
494
|
+
"swimlane",
|
|
495
|
+
"timeline",
|
|
496
|
+
"treemap",
|
|
497
|
+
"venn",
|
|
498
|
+
"wireframe"
|
|
499
|
+
]
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
token: "fill-solid",
|
|
503
|
+
category: "directive",
|
|
504
|
+
gantt: ["boolean"],
|
|
505
|
+
chartTypes: [
|
|
506
|
+
"arc",
|
|
507
|
+
"bar",
|
|
508
|
+
"block",
|
|
509
|
+
"body",
|
|
510
|
+
"boxes-and-lines",
|
|
511
|
+
"bracket",
|
|
512
|
+
"c4",
|
|
513
|
+
"class",
|
|
514
|
+
"clock",
|
|
515
|
+
"countdown",
|
|
516
|
+
"cycle",
|
|
517
|
+
"er",
|
|
518
|
+
"event-line",
|
|
519
|
+
"family",
|
|
520
|
+
"flowchart",
|
|
521
|
+
"funnel",
|
|
522
|
+
"gantt",
|
|
523
|
+
"goal",
|
|
524
|
+
"heatmap",
|
|
525
|
+
"journey-map",
|
|
526
|
+
"kanban",
|
|
527
|
+
"line",
|
|
528
|
+
"mindmap",
|
|
529
|
+
"org",
|
|
530
|
+
"pert",
|
|
531
|
+
"pie",
|
|
532
|
+
"polar-area",
|
|
533
|
+
"pyramid",
|
|
534
|
+
"quadrant",
|
|
535
|
+
"raci",
|
|
536
|
+
"radar",
|
|
537
|
+
"ring",
|
|
538
|
+
"scatter",
|
|
539
|
+
"sequence",
|
|
540
|
+
"sitemap",
|
|
541
|
+
"state",
|
|
542
|
+
"swimlane",
|
|
543
|
+
"timeline",
|
|
544
|
+
"treemap",
|
|
545
|
+
"venn",
|
|
546
|
+
"wireframe"
|
|
547
|
+
]
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
token: "fill-outline",
|
|
551
|
+
category: "directive",
|
|
552
|
+
gantt: ["boolean"],
|
|
553
|
+
chartTypes: [
|
|
554
|
+
"arc",
|
|
555
|
+
"bar",
|
|
556
|
+
"block",
|
|
557
|
+
"body",
|
|
558
|
+
"boxes-and-lines",
|
|
559
|
+
"bracket",
|
|
560
|
+
"c4",
|
|
561
|
+
"class",
|
|
562
|
+
"clock",
|
|
563
|
+
"countdown",
|
|
564
|
+
"cycle",
|
|
565
|
+
"er",
|
|
566
|
+
"event-line",
|
|
567
|
+
"family",
|
|
568
|
+
"flowchart",
|
|
569
|
+
"funnel",
|
|
570
|
+
"gantt",
|
|
571
|
+
"goal",
|
|
572
|
+
"heatmap",
|
|
573
|
+
"journey-map",
|
|
574
|
+
"kanban",
|
|
575
|
+
"line",
|
|
576
|
+
"mindmap",
|
|
577
|
+
"org",
|
|
578
|
+
"pert",
|
|
579
|
+
"pie",
|
|
580
|
+
"polar-area",
|
|
581
|
+
"pyramid",
|
|
582
|
+
"quadrant",
|
|
583
|
+
"raci",
|
|
584
|
+
"radar",
|
|
585
|
+
"ring",
|
|
586
|
+
"scatter",
|
|
587
|
+
"sequence",
|
|
588
|
+
"sitemap",
|
|
589
|
+
"state",
|
|
590
|
+
"swimlane",
|
|
591
|
+
"timeline",
|
|
592
|
+
"treemap",
|
|
593
|
+
"venn",
|
|
594
|
+
"wireframe"
|
|
595
|
+
]
|
|
596
|
+
},
|
|
322
597
|
// `chart` is a wireframe element keyword (CONTROL); gantt also accepts it as
|
|
323
598
|
// an option. Highlight family is control.
|
|
324
|
-
{
|
|
599
|
+
{
|
|
600
|
+
token: "chart",
|
|
601
|
+
category: "control",
|
|
602
|
+
gantt: ["option"],
|
|
603
|
+
chartTypes: ["gantt", "wireframe"]
|
|
604
|
+
},
|
|
325
605
|
// `dependencies` is ON by default → almost never written bare (authors write
|
|
326
606
|
// `no-dependencies`, which DOES highlight). Bare word collides with prose and
|
|
327
|
-
//
|
|
328
|
-
// Set derivation only.
|
|
329
|
-
{
|
|
607
|
+
// it would colour in every gantt task name, so it stays plain. Present for
|
|
608
|
+
// parser Set derivation only.
|
|
609
|
+
{
|
|
610
|
+
token: "dependencies",
|
|
611
|
+
noHighlight: true,
|
|
612
|
+
gantt: ["option", "boolean"],
|
|
613
|
+
chartTypes: ["gantt"]
|
|
614
|
+
},
|
|
330
615
|
// ── Map ──────────────────────────────────────────────────
|
|
331
616
|
// Per-element value→channel ramps (decision #20): the directive names the
|
|
332
617
|
// visual channel — `region-heat` (colour), `poi-size` (marker area),
|
|
333
618
|
// `flow-width` (stroke). The per-element key mirrors it (`heat:`/`size:`/`width:`).
|
|
334
|
-
{
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
{ token: "
|
|
341
|
-
{
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
{ token: "
|
|
619
|
+
{
|
|
620
|
+
token: "region-heat",
|
|
621
|
+
category: "directive",
|
|
622
|
+
map: true,
|
|
623
|
+
chartTypes: ["map"]
|
|
624
|
+
},
|
|
625
|
+
{ token: "poi-size", category: "directive", map: true, chartTypes: ["map"] },
|
|
626
|
+
{
|
|
627
|
+
token: "flow-width",
|
|
628
|
+
category: "directive",
|
|
629
|
+
map: true,
|
|
630
|
+
chartTypes: ["map"]
|
|
631
|
+
},
|
|
632
|
+
{ token: "locale", category: "directive", map: true, chartTypes: ["map"] },
|
|
633
|
+
{ token: "caption", category: "directive", map: true, chartTypes: ["map"] },
|
|
634
|
+
{
|
|
635
|
+
token: "no-coastline",
|
|
636
|
+
category: "directive",
|
|
637
|
+
map: true,
|
|
638
|
+
chartTypes: ["map"]
|
|
639
|
+
},
|
|
640
|
+
{ token: "no-relief", category: "directive", map: true, chartTypes: ["map"] },
|
|
641
|
+
{
|
|
642
|
+
token: "no-context-labels",
|
|
643
|
+
category: "directive",
|
|
644
|
+
map: true,
|
|
645
|
+
chartTypes: ["map"]
|
|
646
|
+
},
|
|
647
|
+
{
|
|
648
|
+
token: "no-region-labels",
|
|
649
|
+
category: "directive",
|
|
650
|
+
map: true,
|
|
651
|
+
chartTypes: ["map"]
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
token: "no-region-heat-value",
|
|
655
|
+
category: "directive",
|
|
656
|
+
map: true,
|
|
657
|
+
chartTypes: ["map"]
|
|
658
|
+
},
|
|
659
|
+
{
|
|
660
|
+
token: "no-poi-labels",
|
|
661
|
+
category: "directive",
|
|
662
|
+
map: true,
|
|
663
|
+
chartTypes: ["map"]
|
|
664
|
+
},
|
|
665
|
+
{
|
|
666
|
+
token: "no-colorize",
|
|
667
|
+
category: "directive",
|
|
668
|
+
map: true,
|
|
669
|
+
chartTypes: ["map"]
|
|
670
|
+
},
|
|
671
|
+
{ token: "no-cities", category: "directive", map: true, chartTypes: ["map"] },
|
|
672
|
+
{
|
|
673
|
+
token: "no-cluster-pois",
|
|
674
|
+
category: "directive",
|
|
675
|
+
map: true,
|
|
676
|
+
chartTypes: ["map"]
|
|
677
|
+
},
|
|
348
678
|
// ── Clock channel (BL-122): live local-time cards on POIs flagged `clock` ──
|
|
349
679
|
// Activation is the per-POI `clock` flag (peeled in the map parser, not a
|
|
350
680
|
// directive). `hours 9-17` / `days mon-fri` are the global availability
|
|
351
681
|
// window (reused verbatim from the clock chart type).
|
|
352
|
-
{
|
|
353
|
-
|
|
682
|
+
{
|
|
683
|
+
token: "hours",
|
|
684
|
+
category: "directive",
|
|
685
|
+
map: true,
|
|
686
|
+
chartTypes: ["clock", "map"]
|
|
687
|
+
},
|
|
688
|
+
{ token: "days", category: "directive", map: true, chartTypes: ["map"] },
|
|
354
689
|
// ── Shared across types ──────────────────────────────────
|
|
355
690
|
// `active-tag`: infra top-level option + gantt option + map directive.
|
|
356
691
|
// Treemap also accepts it (§24C.6, decision #48) — validated inline in its
|
|
@@ -361,24 +696,74 @@ var DIRECTIVES_REGISTRY = [
|
|
|
361
696
|
category: "directive",
|
|
362
697
|
infra: ["top-level"],
|
|
363
698
|
gantt: ["option"],
|
|
364
|
-
map: true
|
|
699
|
+
map: true,
|
|
700
|
+
chartTypes: [
|
|
701
|
+
"body",
|
|
702
|
+
"boxes-and-lines",
|
|
703
|
+
"c4",
|
|
704
|
+
"er",
|
|
705
|
+
"event-line",
|
|
706
|
+
"family",
|
|
707
|
+
"gantt",
|
|
708
|
+
"infra",
|
|
709
|
+
"journey-map",
|
|
710
|
+
"kanban",
|
|
711
|
+
"map",
|
|
712
|
+
"mindmap",
|
|
713
|
+
"org",
|
|
714
|
+
"pert",
|
|
715
|
+
"sequence",
|
|
716
|
+
"sitemap",
|
|
717
|
+
"state",
|
|
718
|
+
"swimlane",
|
|
719
|
+
"timeline",
|
|
720
|
+
"treemap",
|
|
721
|
+
"wireframe"
|
|
722
|
+
]
|
|
365
723
|
},
|
|
366
724
|
// `title`: gantt option. (The data-chart `title` directive was removed in
|
|
367
725
|
// decision #48 — it now raises E_TITLE_DIRECTIVE; the token stays here for
|
|
368
726
|
// gantt.)
|
|
369
|
-
{
|
|
727
|
+
{
|
|
728
|
+
token: "title",
|
|
729
|
+
category: "directive",
|
|
730
|
+
gantt: ["option"],
|
|
731
|
+
chartTypes: ["gantt"]
|
|
732
|
+
},
|
|
370
733
|
// `sort`: gantt option (also general, hand-listed).
|
|
371
|
-
{
|
|
734
|
+
{
|
|
735
|
+
token: "sort",
|
|
736
|
+
category: "directive",
|
|
737
|
+
gantt: ["option"],
|
|
738
|
+
chartTypes: "all"
|
|
739
|
+
},
|
|
372
740
|
// `lane-by <group>`: swimlane axis (view-state). NB not `swimlane` — that's a
|
|
373
741
|
// chart type. Kanban reads it via its own KNOWN_OPTIONS; gantt via the switch.
|
|
374
|
-
{
|
|
742
|
+
{
|
|
743
|
+
token: "lane-by",
|
|
744
|
+
category: "directive",
|
|
745
|
+
gantt: ["option"],
|
|
746
|
+
chartTypes: "all"
|
|
747
|
+
},
|
|
375
748
|
// `no-title`: gantt boolean + map directive (also general, hand-listed).
|
|
376
|
-
{
|
|
749
|
+
{
|
|
750
|
+
token: "no-title",
|
|
751
|
+
category: "directive",
|
|
752
|
+
gantt: ["boolean"],
|
|
753
|
+
map: true,
|
|
754
|
+
chartTypes: "all"
|
|
755
|
+
},
|
|
377
756
|
// `no-legend`: universal (decision #48) — every chart that renders a legend
|
|
378
757
|
// accepts it, and charts without one take it as a harmless no-op. Parsed for
|
|
379
758
|
// most types via GLOBAL_BOOLEANS in utils/parsing; gantt derives its boolean
|
|
380
759
|
// Set from here, and map from `map: true`.
|
|
381
|
-
{
|
|
760
|
+
{
|
|
761
|
+
token: "no-legend",
|
|
762
|
+
category: "directive",
|
|
763
|
+
gantt: ["boolean"],
|
|
764
|
+
map: true,
|
|
765
|
+
chartTypes: "all"
|
|
766
|
+
},
|
|
382
767
|
// `legend-inline`: universal §1.9 boolean (decision #50) — the top-center-
|
|
383
768
|
// legend data charts (bar/line/radar/scatter/function) render the title and
|
|
384
769
|
// legend on one line; every other chart accepts it as a harmless no-op.
|
|
@@ -386,7 +771,8 @@ var DIRECTIVES_REGISTRY = [
|
|
|
386
771
|
token: "legend-inline",
|
|
387
772
|
category: "directive",
|
|
388
773
|
gantt: ["boolean"],
|
|
389
|
-
map: true
|
|
774
|
+
map: true,
|
|
775
|
+
chartTypes: "all"
|
|
390
776
|
},
|
|
391
777
|
// ══════════════════════════════════════════════════════════
|
|
392
778
|
// Highlight-only vocab (no extractable parser Set).
|
|
@@ -396,40 +782,69 @@ var DIRECTIVES_REGISTRY = [
|
|
|
396
782
|
// simply their single declaration site for highlighting. Grouped by chart
|
|
397
783
|
// type. Categories route to the specializer-read sets in keywords.ts.
|
|
398
784
|
// ── Gantt (extras beyond the option/boolean Sets) ────────
|
|
399
|
-
{
|
|
400
|
-
|
|
401
|
-
|
|
785
|
+
{
|
|
786
|
+
token: "era",
|
|
787
|
+
category: "directive",
|
|
788
|
+
chartTypes: [
|
|
789
|
+
"bar",
|
|
790
|
+
"gantt",
|
|
791
|
+
"line",
|
|
792
|
+
"pie",
|
|
793
|
+
"polar-area",
|
|
794
|
+
"radar",
|
|
795
|
+
"timeline"
|
|
796
|
+
]
|
|
797
|
+
},
|
|
798
|
+
{ token: "marker", category: "directive", chartTypes: ["gantt", "timeline"] },
|
|
799
|
+
{ token: "holiday", category: "directive", chartTypes: ["gantt"] },
|
|
402
800
|
// `workweek` is also the canonical weekday-window directive on clock and map
|
|
403
801
|
// clock-cards (decision #48; `days` stays as the legacy alias).
|
|
404
|
-
{
|
|
405
|
-
|
|
802
|
+
{
|
|
803
|
+
token: "workweek",
|
|
804
|
+
category: "directive",
|
|
805
|
+
map: true,
|
|
806
|
+
chartTypes: ["clock", "gantt", "map"]
|
|
807
|
+
},
|
|
808
|
+
{ token: "no-dependencies", category: "directive", chartTypes: ["gantt"] },
|
|
406
809
|
// ── Tech-radar ───────────────────────────────────────────
|
|
407
|
-
{ token: "rings", category: "directive" },
|
|
810
|
+
{ token: "rings", category: "directive", chartTypes: ["tech-radar"] },
|
|
408
811
|
// Blip listing is default-on everywhere (decision #48): `no-blip-legend`
|
|
409
812
|
// suppresses it; `show-blip-legend` stays as the parse-accepted legacy no-op.
|
|
410
|
-
{
|
|
411
|
-
|
|
412
|
-
|
|
813
|
+
{
|
|
814
|
+
token: "no-blip-legend",
|
|
815
|
+
category: "directive",
|
|
816
|
+
chartTypes: ["tech-radar"]
|
|
817
|
+
},
|
|
818
|
+
{
|
|
819
|
+
token: "show-blip-legend",
|
|
820
|
+
category: "directive",
|
|
821
|
+
chartTypes: ["tech-radar"]
|
|
822
|
+
},
|
|
823
|
+
{ token: "trend", category: "directive", chartTypes: ["tech-radar"] },
|
|
413
824
|
// ── Tags / shared directives ─────────────────────────────
|
|
414
|
-
{ token: "tags", category: "directive" },
|
|
415
|
-
{ token: "import", category: "directive" },
|
|
416
|
-
{
|
|
825
|
+
{ token: "tags", category: "directive", chartTypes: "all" },
|
|
826
|
+
{ token: "import", category: "directive", chartTypes: "all" },
|
|
827
|
+
{
|
|
828
|
+
token: "hide",
|
|
829
|
+
category: "directive",
|
|
830
|
+
chartTypes: ["boxes-and-lines", "kanban", "org"]
|
|
831
|
+
},
|
|
417
832
|
// `focus <name>`: org subtree drill-down (view-state, source-backed) — the
|
|
418
833
|
// export re-roots to that person/team with the ancestor breadcrumb trail.
|
|
419
834
|
// Org reads it via its own KNOWN_OPTIONS; registered here for highlighting.
|
|
420
|
-
{ token: "focus", category: "directive" },
|
|
421
|
-
{ token: "direction", category: "directive" },
|
|
835
|
+
{ token: "focus", category: "directive", chartTypes: ["org"] },
|
|
836
|
+
{ token: "direction", category: "directive", chartTypes: "all" },
|
|
422
837
|
// ── Clock ────────────────────────────────────────────────
|
|
423
838
|
// The board's flat directives — highlight-only (the parser validates them
|
|
424
839
|
// inline, no extractable Set). `no-title` + `direction` are already listed
|
|
425
840
|
// above (shared). Values (analog is a bare flag; color-by's
|
|
426
841
|
// place|work|daylight|time|none) highlight as plain tokens.
|
|
427
|
-
{ token: "analog", category: "directive" },
|
|
428
|
-
{ token: "hours", category: "directive" },
|
|
429
|
-
{ token: "days", category: "directive" },
|
|
430
|
-
{ token: "no-sun", category: "directive" },
|
|
431
|
-
{ token: "time-24", category: "directive" },
|
|
432
|
-
{ token: "color-by", category: "directive" },
|
|
842
|
+
{ token: "analog", category: "directive", chartTypes: ["clock"] },
|
|
843
|
+
{ token: "hours", category: "directive", chartTypes: ["clock"] },
|
|
844
|
+
{ token: "days", category: "directive", chartTypes: ["clock"] },
|
|
845
|
+
{ token: "no-sun", category: "directive", chartTypes: ["clock"] },
|
|
846
|
+
{ token: "time-24", category: "directive", chartTypes: ["clock"] },
|
|
847
|
+
{ token: "color-by", category: "directive", chartTypes: ["clock"] },
|
|
433
848
|
// ── Boxes-and-lines ──────────────────────────────────────
|
|
434
849
|
// `heat <Label> [low] [high]` is the value→colour ramp directive, but `heat`
|
|
435
850
|
// is NOT registered as a directive keyword: it is dual-use with the `heat:`
|
|
@@ -439,72 +854,186 @@ var DIRECTIVES_REGISTRY = [
|
|
|
439
854
|
// as a property in both positions — exactly the treemap `heat` precedent.
|
|
440
855
|
// Box values render by default since decision #48; `show-values` stays as
|
|
441
856
|
// the parse-accepted legacy no-op (suppress with the shared `no-value`).
|
|
442
|
-
{
|
|
857
|
+
{
|
|
858
|
+
token: "show-values",
|
|
859
|
+
category: "directive",
|
|
860
|
+
chartTypes: ["boxes-and-lines"]
|
|
861
|
+
},
|
|
443
862
|
// Treemap's legacy plural spelling of the same suppression (decision #48
|
|
444
863
|
// made the shared singular `no-value` canonical). Registered so a legacy
|
|
445
864
|
// document still highlights it as a directive rather than plain text.
|
|
446
|
-
{ token: "no-values", category: "directive" },
|
|
865
|
+
{ token: "no-values", category: "directive", chartTypes: ["treemap"] },
|
|
447
866
|
// ── Swimlane ─────────────────────────────────────────────
|
|
448
|
-
{ token: "lane", category: "directive" },
|
|
867
|
+
{ token: "lane", category: "directive", chartTypes: ["swimlane"] },
|
|
449
868
|
// ── ER ───────────────────────────────────────────────────
|
|
450
|
-
{ token: "notation", category: "directive" },
|
|
869
|
+
{ token: "notation", category: "directive", chartTypes: ["er"] },
|
|
451
870
|
// ── Class ────────────────────────────────────────────────
|
|
452
|
-
{ token: "extends", category: "directive" },
|
|
453
|
-
{ token: "implements", category: "directive" },
|
|
454
|
-
{ token: "abstract", category: "directive" },
|
|
455
|
-
{ token: "interface", category: "directive" },
|
|
456
|
-
{ token: "enum", category: "directive" },
|
|
871
|
+
{ token: "extends", category: "directive", chartTypes: ["class"] },
|
|
872
|
+
{ token: "implements", category: "directive", chartTypes: ["class"] },
|
|
873
|
+
{ token: "abstract", category: "directive", chartTypes: ["class"] },
|
|
874
|
+
{ token: "interface", category: "directive", chartTypes: ["class"] },
|
|
875
|
+
{ token: "enum", category: "directive", chartTypes: ["class"] },
|
|
457
876
|
// ── C4 ───────────────────────────────────────────────────
|
|
458
|
-
{ token: "containers", category: "directive" },
|
|
459
|
-
{ token: "components", category: "directive" },
|
|
460
|
-
{ token: "deployment", category: "directive" },
|
|
461
|
-
{ token: "technology", category: "directive" },
|
|
877
|
+
{ token: "containers", category: "directive", chartTypes: ["c4"] },
|
|
878
|
+
{ token: "components", category: "directive", chartTypes: ["c4"] },
|
|
879
|
+
{ token: "deployment", category: "directive", chartTypes: ["c4"] },
|
|
880
|
+
{ token: "technology", category: "directive", chartTypes: ["c4"] },
|
|
462
881
|
// ── Infra (directives beyond the option/behavior Sets) ───
|
|
463
|
-
{ token: "sub-node-label", category: "directive" },
|
|
464
|
-
{ token: "show-sub-node-count", category: "directive" },
|
|
465
|
-
{ token: "animate", category: "directive" },
|
|
882
|
+
{ token: "sub-node-label", category: "directive", chartTypes: ["org"] },
|
|
883
|
+
{ token: "show-sub-node-count", category: "directive", chartTypes: ["org"] },
|
|
884
|
+
{ token: "animate", category: "directive", chartTypes: ["infra"] },
|
|
466
885
|
// ── Sequence ─────────────────────────────────────────────
|
|
467
|
-
{ token: "activations", category: "directive" },
|
|
468
|
-
{ token: "no-activations", category: "directive" },
|
|
469
|
-
{ token: "autonumber", category: "directive" },
|
|
886
|
+
{ token: "activations", category: "directive", chartTypes: ["sequence"] },
|
|
887
|
+
{ token: "no-activations", category: "directive", chartTypes: ["sequence"] },
|
|
888
|
+
{ token: "autonumber", category: "directive", chartTypes: ["sequence"] },
|
|
470
889
|
// ── Map element leaders (not in DIRECTIVE_SET) ───────────
|
|
471
|
-
{ token: "poi", category: "directive" },
|
|
472
|
-
{ token: "route", category: "directive" },
|
|
890
|
+
{ token: "poi", category: "directive", chartTypes: ["map"] },
|
|
891
|
+
{ token: "route", category: "directive", chartTypes: ["map"] },
|
|
473
892
|
// ── Data charts ──────────────────────────────────────────
|
|
474
|
-
{ token: "stacked", category: "directive" },
|
|
475
|
-
{
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
{
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
893
|
+
{ token: "stacked", category: "directive", chartTypes: "all" },
|
|
894
|
+
{
|
|
895
|
+
token: "no-name",
|
|
896
|
+
category: "directive",
|
|
897
|
+
chartTypes: ["funnel", "pie", "polar-area", "scatter"]
|
|
898
|
+
},
|
|
899
|
+
{
|
|
900
|
+
token: "no-value",
|
|
901
|
+
category: "directive",
|
|
902
|
+
chartTypes: [
|
|
903
|
+
"bar",
|
|
904
|
+
"boxes-and-lines",
|
|
905
|
+
"funnel",
|
|
906
|
+
"goal",
|
|
907
|
+
"heatmap",
|
|
908
|
+
"line",
|
|
909
|
+
"pie",
|
|
910
|
+
"polar-area",
|
|
911
|
+
"radar",
|
|
912
|
+
"treemap"
|
|
913
|
+
]
|
|
914
|
+
},
|
|
915
|
+
{
|
|
916
|
+
token: "no-percent",
|
|
917
|
+
category: "directive",
|
|
918
|
+
chartTypes: ["funnel", "goal", "pie", "polar-area", "treemap"]
|
|
919
|
+
},
|
|
920
|
+
{
|
|
921
|
+
token: "series",
|
|
922
|
+
category: "directive",
|
|
923
|
+
chartTypes: [
|
|
924
|
+
"bar",
|
|
925
|
+
"function",
|
|
926
|
+
"funnel",
|
|
927
|
+
"heatmap",
|
|
928
|
+
"line",
|
|
929
|
+
"pie",
|
|
930
|
+
"polar-area",
|
|
931
|
+
"radar",
|
|
932
|
+
"sankey",
|
|
933
|
+
"scatter"
|
|
934
|
+
]
|
|
935
|
+
},
|
|
936
|
+
{ token: "orientation", category: "directive", chartTypes: "all" },
|
|
937
|
+
{
|
|
938
|
+
token: "x-label",
|
|
939
|
+
category: "directive",
|
|
940
|
+
chartTypes: ["bar", "function", "line", "quadrant", "scatter"]
|
|
941
|
+
},
|
|
942
|
+
{
|
|
943
|
+
token: "y-label",
|
|
944
|
+
category: "directive",
|
|
945
|
+
chartTypes: ["bar", "function", "line", "quadrant", "scatter"]
|
|
946
|
+
},
|
|
947
|
+
{ token: "size-label", category: "directive", chartTypes: ["scatter"] },
|
|
948
|
+
{ token: "columns", category: "directive", chartTypes: ["block", "heatmap"] },
|
|
949
|
+
{ token: "rows", category: "directive", chartTypes: "all" },
|
|
950
|
+
{ token: "labels", category: "directive", chartTypes: "all" },
|
|
951
|
+
{ token: "rotate", category: "directive", chartTypes: ["wordcloud"] },
|
|
952
|
+
{ token: "scale", category: "directive", chartTypes: "all" },
|
|
953
|
+
{
|
|
954
|
+
token: "values",
|
|
955
|
+
category: "directive",
|
|
956
|
+
chartTypes: ["pert", "tech-radar"]
|
|
957
|
+
},
|
|
958
|
+
{
|
|
959
|
+
token: "orientation-horizontal",
|
|
960
|
+
category: "directive",
|
|
961
|
+
chartTypes: ["bar"]
|
|
962
|
+
},
|
|
490
963
|
// ── Slope ────────────────────────────────────────────────
|
|
491
|
-
{ token: "period", category: "directive" },
|
|
964
|
+
{ token: "period", category: "directive", chartTypes: "all" },
|
|
492
965
|
// ── Quadrant ─────────────────────────────────────────────
|
|
493
|
-
{ token: "x-axis", category: "directive" },
|
|
494
|
-
{ token: "y-axis", category: "directive" },
|
|
495
|
-
{
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
966
|
+
{ token: "x-axis", category: "directive", chartTypes: "all" },
|
|
967
|
+
{ token: "y-axis", category: "directive", chartTypes: "all" },
|
|
968
|
+
{
|
|
969
|
+
token: "top-right",
|
|
970
|
+
category: "directive",
|
|
971
|
+
chartTypes: ["quadrant", "tech-radar"]
|
|
972
|
+
},
|
|
973
|
+
{
|
|
974
|
+
token: "top-left",
|
|
975
|
+
category: "directive",
|
|
976
|
+
chartTypes: ["quadrant", "tech-radar"]
|
|
977
|
+
},
|
|
978
|
+
{
|
|
979
|
+
token: "bottom-right",
|
|
980
|
+
category: "directive",
|
|
981
|
+
chartTypes: ["quadrant", "tech-radar"]
|
|
982
|
+
},
|
|
983
|
+
{
|
|
984
|
+
token: "bottom-left",
|
|
985
|
+
category: "directive",
|
|
986
|
+
chartTypes: ["quadrant", "tech-radar"]
|
|
987
|
+
},
|
|
499
988
|
// ── Layout (cross-chart) ─────────────────────────────────
|
|
500
|
-
{
|
|
501
|
-
|
|
502
|
-
|
|
989
|
+
{
|
|
990
|
+
token: "direction-tb",
|
|
991
|
+
category: "directive",
|
|
992
|
+
chartTypes: [
|
|
993
|
+
"boxes-and-lines",
|
|
994
|
+
"c4",
|
|
995
|
+
"clock",
|
|
996
|
+
"flowchart",
|
|
997
|
+
"infra",
|
|
998
|
+
"org",
|
|
999
|
+
"pert",
|
|
1000
|
+
"sitemap",
|
|
1001
|
+
"state",
|
|
1002
|
+
"swimlane",
|
|
1003
|
+
"version-control"
|
|
1004
|
+
]
|
|
1005
|
+
},
|
|
1006
|
+
{
|
|
1007
|
+
token: "direction-lr",
|
|
1008
|
+
category: "directive",
|
|
1009
|
+
chartTypes: [
|
|
1010
|
+
"boxes-and-lines",
|
|
1011
|
+
"c4",
|
|
1012
|
+
"clock",
|
|
1013
|
+
"flowchart",
|
|
1014
|
+
"infra",
|
|
1015
|
+
"org",
|
|
1016
|
+
"pert",
|
|
1017
|
+
"sitemap",
|
|
1018
|
+
"state",
|
|
1019
|
+
"swimlane",
|
|
1020
|
+
"version-control"
|
|
1021
|
+
]
|
|
1022
|
+
},
|
|
1023
|
+
{ token: "orientation-vertical", category: "directive", chartTypes: "all" },
|
|
503
1024
|
// ── Pyramid ──────────────────────────────────────────────
|
|
504
|
-
{ token: "inverted", category: "directive" },
|
|
1025
|
+
{ token: "inverted", category: "directive", chartTypes: ["pyramid"] },
|
|
505
1026
|
// ── Color / notes (cross-chart) ──────────────────────────
|
|
506
|
-
{
|
|
507
|
-
|
|
1027
|
+
{
|
|
1028
|
+
token: "color",
|
|
1029
|
+
category: "directive",
|
|
1030
|
+
chartTypes: "all"
|
|
1031
|
+
},
|
|
1032
|
+
{
|
|
1033
|
+
token: "no-notes",
|
|
1034
|
+
category: "directive",
|
|
1035
|
+
chartTypes: ["flowchart", "goal", "state", "whiteboard"]
|
|
1036
|
+
},
|
|
508
1037
|
// ── Emphasis family (§1.11, decision #49) ────────────────
|
|
509
1038
|
// `highlight <Name>…` / `dim <Name>…` — the figure/ground axis, orthogonal
|
|
510
1039
|
// to color (§1.5) and to the chart-wide `fill-*` family (§1.9). Both are
|
|
@@ -517,122 +1046,180 @@ var DIRECTIVES_REGISTRY = [
|
|
|
517
1046
|
// tokens are registered together so the whole family lights up at once.
|
|
518
1047
|
//
|
|
519
1048
|
// Supported on `sankey` and `family` today; every further chart type is a
|
|
520
|
-
// separate decision
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
1049
|
+
// separate decision, made by adding it to `chartTypes` below (#1734).
|
|
1050
|
+
{
|
|
1051
|
+
token: "highlight",
|
|
1052
|
+
category: "directive",
|
|
1053
|
+
chartTypes: ["family", "sankey"]
|
|
1054
|
+
},
|
|
1055
|
+
{ token: "dim", category: "directive", chartTypes: ["family", "sankey"] },
|
|
525
1056
|
// ── RACI ─────────────────────────────────────────────────
|
|
526
|
-
{ token: "roles", category: "directive" },
|
|
1057
|
+
{ token: "roles", category: "directive", chartTypes: ["raci"] },
|
|
527
1058
|
// ── Cycle ────────────────────────────────────────────────
|
|
528
|
-
{
|
|
529
|
-
|
|
1059
|
+
{
|
|
1060
|
+
token: "direction-counterclockwise",
|
|
1061
|
+
category: "directive",
|
|
1062
|
+
chartTypes: ["cycle"]
|
|
1063
|
+
},
|
|
1064
|
+
{ token: "circle-nodes", category: "directive", chartTypes: ["cycle"] },
|
|
530
1065
|
// ── Journey-map ──────────────────────────────────────────
|
|
531
|
-
{ token: "persona", category: "directive" },
|
|
1066
|
+
{ token: "persona", category: "directive", chartTypes: ["journey-map"] },
|
|
532
1067
|
// ── Function ─────────────────────────────────────────────
|
|
533
|
-
{ token: "x", category: "directive" },
|
|
534
|
-
{
|
|
1068
|
+
{ token: "x", category: "directive", chartTypes: ["function"] },
|
|
1069
|
+
{
|
|
1070
|
+
token: "fill",
|
|
1071
|
+
category: "directive",
|
|
1072
|
+
chartTypes: ["function", "line", "whiteboard"]
|
|
1073
|
+
},
|
|
535
1074
|
// ── Wordcloud ────────────────────────────────────────────
|
|
536
|
-
{ token: "max", category: "directive" },
|
|
537
|
-
{
|
|
1075
|
+
{ token: "max", category: "directive", chartTypes: ["wordcloud"] },
|
|
1076
|
+
{
|
|
1077
|
+
token: "size",
|
|
1078
|
+
category: "directive",
|
|
1079
|
+
chartTypes: ["whiteboard", "wordcloud"]
|
|
1080
|
+
},
|
|
538
1081
|
// ── Arc ──────────────────────────────────────────────────
|
|
539
|
-
{ token: "order", category: "directive" },
|
|
1082
|
+
{ token: "order", category: "directive", chartTypes: ["arc"] },
|
|
540
1083
|
// ── PERT ─────────────────────────────────────────────────
|
|
541
|
-
{ token: "time-unit", category: "directive" },
|
|
542
|
-
{ token: "default-confidence", category: "directive" },
|
|
543
|
-
{ token: "node-detail", category: "directive" },
|
|
544
|
-
{ token: "trials", category: "directive" },
|
|
545
|
-
{ token: "seed", category: "directive" },
|
|
546
|
-
{ token: "scrubber-trials", category: "directive" },
|
|
1084
|
+
{ token: "time-unit", category: "directive", chartTypes: ["pert"] },
|
|
1085
|
+
{ token: "default-confidence", category: "directive", chartTypes: ["pert"] },
|
|
1086
|
+
{ token: "node-detail", category: "directive", chartTypes: ["pert"] },
|
|
1087
|
+
{ token: "trials", category: "directive", chartTypes: ["pert"] },
|
|
1088
|
+
{ token: "seed", category: "directive", chartTypes: ["bracket", "pert"] },
|
|
1089
|
+
{ token: "scrubber-trials", category: "directive", chartTypes: ["pert"] },
|
|
547
1090
|
// `start-date` is also gantt's canonical project-start option (decision #48;
|
|
548
1091
|
// bare `start` above stays as the legacy alias).
|
|
549
|
-
{
|
|
550
|
-
|
|
1092
|
+
{
|
|
1093
|
+
token: "start-date",
|
|
1094
|
+
category: "directive",
|
|
1095
|
+
gantt: ["option"],
|
|
1096
|
+
chartTypes: ["gantt", "pert"]
|
|
1097
|
+
},
|
|
1098
|
+
{ token: "end-date", category: "directive", chartTypes: ["pert"] },
|
|
551
1099
|
// ── Goal ─────────────────────────────────────────────────
|
|
552
1100
|
// Mode flags, value-key leaders, and opt-outs. `now`/`target` collide with
|
|
553
1101
|
// label prose ("start now", "on target"), but the arrow-label demotion pass
|
|
554
1102
|
// (see highlight-api LABEL_WORD_NODES) treats any keyword-bearing label as
|
|
555
1103
|
// text and demotes them, so they highlight only as line leaders.
|
|
556
|
-
{ token: "thermometer", category: "directive" },
|
|
557
|
-
{ token: "gauge", category: "directive" },
|
|
558
|
-
{
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
1104
|
+
{ token: "thermometer", category: "directive", chartTypes: ["goal"] },
|
|
1105
|
+
{ token: "gauge", category: "directive", chartTypes: ["goal"] },
|
|
1106
|
+
{
|
|
1107
|
+
token: "now",
|
|
1108
|
+
category: "directive",
|
|
1109
|
+
chartTypes: ["event-line", "goal", "pert"]
|
|
1110
|
+
},
|
|
1111
|
+
{ token: "target", category: "directive", chartTypes: ["countdown", "goal"] },
|
|
1112
|
+
{ token: "no-note", category: "directive", chartTypes: ["goal"] },
|
|
1113
|
+
{ token: "no-auto-color", category: "directive", chartTypes: ["goal"] },
|
|
562
1114
|
// ── Control-flow + wireframe element keywords (CONTROL) ──
|
|
563
|
-
{ token: "if", category: "control" },
|
|
564
|
-
{ token: "else", category: "control" },
|
|
565
|
-
{ token: "loop", category: "control" },
|
|
566
|
-
{ token: "parallel", category: "control" },
|
|
567
|
-
{
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
1115
|
+
{ token: "if", category: "control", chartTypes: ["sequence"] },
|
|
1116
|
+
{ token: "else", category: "control", chartTypes: ["sequence"] },
|
|
1117
|
+
{ token: "loop", category: "control", chartTypes: ["sequence"] },
|
|
1118
|
+
{ token: "parallel", category: "control", chartTypes: ["gantt", "sequence"] },
|
|
1119
|
+
{
|
|
1120
|
+
token: "note",
|
|
1121
|
+
category: "control",
|
|
1122
|
+
chartTypes: [
|
|
1123
|
+
"boxes-and-lines",
|
|
1124
|
+
"class",
|
|
1125
|
+
"countdown",
|
|
1126
|
+
"er",
|
|
1127
|
+
"flowchart",
|
|
1128
|
+
"goal",
|
|
1129
|
+
"sequence",
|
|
1130
|
+
"state",
|
|
1131
|
+
"swimlane",
|
|
1132
|
+
"version-control",
|
|
1133
|
+
"whiteboard"
|
|
1134
|
+
]
|
|
1135
|
+
},
|
|
1136
|
+
{ token: "nav", category: "control", chartTypes: ["wireframe"] },
|
|
1137
|
+
{ token: "tabs", category: "control", chartTypes: ["wireframe"] },
|
|
1138
|
+
{ token: "table", category: "control", chartTypes: ["wireframe"] },
|
|
1139
|
+
{
|
|
1140
|
+
token: "image",
|
|
1141
|
+
category: "control",
|
|
1142
|
+
chartTypes: ["whiteboard", "wireframe"]
|
|
1143
|
+
},
|
|
1144
|
+
{ token: "modal", category: "control", chartTypes: ["wireframe"] },
|
|
1145
|
+
{ token: "skeleton", category: "control", chartTypes: ["wireframe"] },
|
|
1146
|
+
{ token: "alert", category: "control", chartTypes: ["wireframe"] },
|
|
1147
|
+
{
|
|
1148
|
+
token: "progress",
|
|
1149
|
+
category: "control",
|
|
1150
|
+
chartTypes: ["gantt", "wireframe"]
|
|
1151
|
+
},
|
|
1152
|
+
{ token: "mobile", category: "control", chartTypes: ["wireframe"] },
|
|
577
1153
|
// Whiteboard element leaders (§39). `image` is shared with wireframe above
|
|
578
1154
|
// and `text` stays an ER modifier; `database` / `queue` are left plain
|
|
579
|
-
// because
|
|
580
|
-
{ token: "rectangle", category: "control" },
|
|
581
|
-
{ token: "ellipse", category: "control" },
|
|
582
|
-
{ token: "arrow", category: "control" },
|
|
583
|
-
{ token: "ink", category: "control" },
|
|
1155
|
+
// because sequence uses them as values, not line leaders.
|
|
1156
|
+
{ token: "rectangle", category: "control", chartTypes: ["whiteboard"] },
|
|
1157
|
+
{ token: "ellipse", category: "control", chartTypes: ["whiteboard"] },
|
|
1158
|
+
{ token: "arrow", category: "control", chartTypes: ["whiteboard"] },
|
|
1159
|
+
{ token: "ink", category: "control", chartTypes: ["whiteboard"] },
|
|
1160
|
+
// ── SWOT section keywords (CONTROL) ──────────────────────
|
|
1161
|
+
{ token: "strengths", category: "control", chartTypes: ["swot"] },
|
|
1162
|
+
{ token: "weaknesses", category: "control", chartTypes: ["swot"] },
|
|
1163
|
+
{ token: "opportunities", category: "control", chartTypes: ["swot"] },
|
|
1164
|
+
{ token: "threats", category: "control", chartTypes: ["swot"] },
|
|
1165
|
+
{ token: "no-axes", category: "directive", chartTypes: ["swot"] },
|
|
1166
|
+
{ token: "no-tint-items", category: "directive", chartTypes: ["swot"] },
|
|
584
1167
|
// ── Kanban status keywords (STATUS) ──────────────────────
|
|
585
|
-
{ token: "na", category: "status" },
|
|
586
|
-
{ token: "todo", category: "status" },
|
|
587
|
-
{ token: "wip", category: "status" },
|
|
588
|
-
{ token: "done", category: "status" },
|
|
589
|
-
{ token: "blocked", category: "status" },
|
|
590
|
-
{ token: "in-progress", category: "status" },
|
|
591
|
-
{ token: "backlog", category: "status" },
|
|
592
|
-
{ token: "ready", category: "status" },
|
|
1168
|
+
{ token: "na", category: "status", chartTypes: ["kanban"] },
|
|
1169
|
+
{ token: "todo", category: "status", chartTypes: ["kanban"] },
|
|
1170
|
+
{ token: "wip", category: "status", chartTypes: ["kanban"] },
|
|
1171
|
+
{ token: "done", category: "status", chartTypes: ["kanban"] },
|
|
1172
|
+
{ token: "blocked", category: "status", chartTypes: ["kanban"] },
|
|
1173
|
+
{ token: "in-progress", category: "status", chartTypes: ["kanban"] },
|
|
1174
|
+
{ token: "backlog", category: "status", chartTypes: ["kanban"] },
|
|
1175
|
+
{ token: "ready", category: "status", chartTypes: ["kanban"] },
|
|
593
1176
|
// ── Modifiers + ER column types/modifiers (MODIFIER) ─────
|
|
594
1177
|
// `collapsed` is the bare trailing group-line flag made canonical by
|
|
595
1178
|
// decision #48 (`[Fulfillment] collapsed`). It is deliberately a bare
|
|
596
1179
|
// MODIFIER rather than a colon key: the legacy `collapsed: true` form still
|
|
597
1180
|
// parses and still highlights (as `modifier` instead of `propertyName`),
|
|
598
1181
|
// whereas leaving it colon-only left the canonical bare form as plain text.
|
|
599
|
-
{ token: "collapsed", category: "modifier" },
|
|
600
|
-
{ token: "as", category: "modifier" },
|
|
601
|
-
{ token: "alias", category: "modifier" },
|
|
602
|
-
{ token: "aka", category: "modifier" },
|
|
603
|
-
{ token: "position", category: "modifier" },
|
|
604
|
-
{ token: "default", category: "modifier" },
|
|
605
|
-
{ token: "pk", category: "modifier" },
|
|
606
|
-
{ token: "fk", category: "modifier" },
|
|
607
|
-
{ token: "nullable", category: "modifier" },
|
|
608
|
-
{ token: "unique", category: "modifier" },
|
|
609
|
-
{ token: "int", category: "modifier" },
|
|
610
|
-
{ token: "varchar", category: "modifier" },
|
|
611
|
-
{
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
{ token: "
|
|
1182
|
+
{ token: "collapsed", category: "modifier", chartTypes: "all" },
|
|
1183
|
+
{ token: "as", category: "modifier", chartTypes: "all" },
|
|
1184
|
+
{ token: "alias", category: "modifier", chartTypes: "all" },
|
|
1185
|
+
{ token: "aka", category: "modifier", chartTypes: "all" },
|
|
1186
|
+
{ token: "position", category: "modifier", chartTypes: "all" },
|
|
1187
|
+
{ token: "default", category: "modifier", chartTypes: "all" },
|
|
1188
|
+
{ token: "pk", category: "modifier", chartTypes: ["er"] },
|
|
1189
|
+
{ token: "fk", category: "modifier", chartTypes: ["er"] },
|
|
1190
|
+
{ token: "nullable", category: "modifier", chartTypes: ["er"] },
|
|
1191
|
+
{ token: "unique", category: "modifier", chartTypes: ["er"] },
|
|
1192
|
+
{ token: "int", category: "modifier", chartTypes: ["class", "er"] },
|
|
1193
|
+
{ token: "varchar", category: "modifier", chartTypes: ["class", "er"] },
|
|
1194
|
+
{
|
|
1195
|
+
token: "text",
|
|
1196
|
+
category: "modifier",
|
|
1197
|
+
chartTypes: ["class", "er", "whiteboard"]
|
|
1198
|
+
},
|
|
1199
|
+
{ token: "boolean", category: "modifier", chartTypes: ["class", "er"] },
|
|
1200
|
+
{ token: "date", category: "modifier", chartTypes: ["class", "er"] },
|
|
1201
|
+
{ token: "timestamp", category: "modifier", chartTypes: ["class", "er"] },
|
|
1202
|
+
{ token: "float", category: "modifier", chartTypes: ["class", "er"] },
|
|
1203
|
+
{ token: "decimal", category: "modifier", chartTypes: ["class", "er"] },
|
|
617
1204
|
// ── Bracket ──────────────────────────────────────────────
|
|
618
1205
|
// `beats` / `vs` are the infix match keywords; the rest are line directives.
|
|
619
1206
|
// (`seed` and `no-legend` already appear above — shared, not re-listed.)
|
|
620
|
-
{ token: "beats", category: "control" },
|
|
621
|
-
{ token: "vs", category: "control" },
|
|
622
|
-
{ token: "rounds", category: "directive" },
|
|
623
|
-
{ token: "accent", category: "directive" },
|
|
624
|
-
{ token: "no-round", category: "modifier" },
|
|
625
|
-
{ token: "no-rounds", category: "modifier" },
|
|
626
|
-
{ token: "single-elim", category: "modifier" },
|
|
627
|
-
{ token: "double-elim", category: "modifier" },
|
|
628
|
-
{ token: "seeded", category: "modifier" },
|
|
1207
|
+
{ token: "beats", category: "control", chartTypes: ["bracket"] },
|
|
1208
|
+
{ token: "vs", category: "control", chartTypes: ["bracket"] },
|
|
1209
|
+
{ token: "rounds", category: "directive", chartTypes: ["bracket"] },
|
|
1210
|
+
{ token: "accent", category: "directive", chartTypes: "all" },
|
|
1211
|
+
{ token: "no-round", category: "modifier", chartTypes: ["bracket"] },
|
|
1212
|
+
{ token: "no-rounds", category: "modifier", chartTypes: ["bracket"] },
|
|
1213
|
+
{ token: "single-elim", category: "modifier", chartTypes: ["bracket"] },
|
|
1214
|
+
{ token: "double-elim", category: "modifier", chartTypes: ["bracket"] },
|
|
1215
|
+
{ token: "seeded", category: "modifier", chartTypes: ["bracket"] },
|
|
629
1216
|
// ── Live link (§38) ──────────────────────────────────────
|
|
630
1217
|
// The pointer type's one directive. Registered so it highlights and
|
|
631
1218
|
// autocompletes like `palette` does — §38 justifies the shape by calling it
|
|
632
1219
|
// "the ordinary DGMO directive shape", and an unregistered `url` would make
|
|
633
1220
|
// that sentence false in the editor: `editor/tokens.ts` specializes only
|
|
634
1221
|
// against the keyword registries, so it would render as plain identifier text.
|
|
635
|
-
{ token: "url", category: "directive" }
|
|
1222
|
+
{ token: "url", category: "directive", chartTypes: ["live-link"] }
|
|
636
1223
|
];
|
|
637
1224
|
function tokensWhere(pred) {
|
|
638
1225
|
const out = /* @__PURE__ */ new Set();
|
|
@@ -668,6 +1255,21 @@ var REGISTRY_STATUS_TOKENS = tokensWhere(
|
|
|
668
1255
|
var REGISTRY_MODIFIER_TOKENS = tokensWhere(
|
|
669
1256
|
(e) => e.category === "modifier" && !e.colonKey && !e.noHighlight
|
|
670
1257
|
);
|
|
1258
|
+
var REGISTRY_TOKEN_CHART_TYPES = (() => {
|
|
1259
|
+
const out = /* @__PURE__ */ new Map();
|
|
1260
|
+
for (const e of DIRECTIVES_REGISTRY) {
|
|
1261
|
+
const prev = out.get(e.token);
|
|
1262
|
+
if (prev === "all") continue;
|
|
1263
|
+
if (e.chartTypes === "all") {
|
|
1264
|
+
out.set(e.token, "all");
|
|
1265
|
+
continue;
|
|
1266
|
+
}
|
|
1267
|
+
const set = prev ?? /* @__PURE__ */ new Set();
|
|
1268
|
+
for (const t of e.chartTypes) set.add(t);
|
|
1269
|
+
out.set(e.token, set);
|
|
1270
|
+
}
|
|
1271
|
+
return out;
|
|
1272
|
+
})();
|
|
671
1273
|
var REGISTRY_COLON_KEY_TOKENS = tokensWhere((e) => !!e.colonKey);
|
|
672
1274
|
var REGISTRY_NON_HIGHLIGHT_TOKENS = tokensWhere(
|
|
673
1275
|
(e) => !!e.noHighlight
|
|
@@ -757,10 +1359,13 @@ var KANBAN_REGISTRY = staticRegistry([
|
|
|
757
1359
|
"collapsed"
|
|
758
1360
|
// `[Column] collapsed: true` view-state marker
|
|
759
1361
|
]);
|
|
1362
|
+
var SWOT_REGISTRY = staticRegistry([]);
|
|
760
1363
|
var SITEMAP_REGISTRY = staticRegistry([
|
|
761
1364
|
"color",
|
|
762
1365
|
"description",
|
|
763
|
-
"status"
|
|
1366
|
+
"status",
|
|
1367
|
+
"collapsed"
|
|
1368
|
+
// page / `[Container]` view-state marker (#1741)
|
|
764
1369
|
]);
|
|
765
1370
|
var GANTT_REGISTRY = staticRegistry([
|
|
766
1371
|
"color",
|
|
@@ -781,18 +1386,17 @@ var PERT_REGISTRY = staticRegistry([
|
|
|
781
1386
|
var BOXES_AND_LINES_REGISTRY = staticRegistry([
|
|
782
1387
|
"color",
|
|
783
1388
|
"description",
|
|
784
|
-
"heat"
|
|
785
|
-
]);
|
|
786
|
-
var STATE_REGISTRY = staticRegistry([]);
|
|
787
|
-
var SKETCH_REGISTRY = staticRegistry([
|
|
788
|
-
"shape",
|
|
789
|
-
"at",
|
|
1389
|
+
"heat",
|
|
790
1390
|
"collapsed"
|
|
1391
|
+
// `[Group] collapsed: true` view-state marker (#1741)
|
|
791
1392
|
]);
|
|
1393
|
+
var STATE_REGISTRY = staticRegistry([]);
|
|
792
1394
|
var TIMELINE_REGISTRY = staticRegistry([
|
|
793
1395
|
"color",
|
|
794
1396
|
"description",
|
|
795
|
-
"duration"
|
|
1397
|
+
"duration",
|
|
1398
|
+
"collapsed"
|
|
1399
|
+
// `[Lane] collapsed: true` view-state marker (#1741)
|
|
796
1400
|
]);
|
|
797
1401
|
var MINDMAP_REGISTRY = staticRegistry([
|
|
798
1402
|
"color",
|
|
@@ -819,7 +1423,9 @@ var JOURNEY_MAP_REGISTRY = staticRegistry([
|
|
|
819
1423
|
"emotion",
|
|
820
1424
|
"pain",
|
|
821
1425
|
"opportunity",
|
|
822
|
-
"thought"
|
|
1426
|
+
"thought",
|
|
1427
|
+
"collapsed"
|
|
1428
|
+
// `[Phase] collapsed: true` view-state marker (#1741)
|
|
823
1429
|
]);
|
|
824
1430
|
var PYRAMID_REGISTRY = staticRegistry([
|
|
825
1431
|
"color",
|
|
@@ -832,7 +1438,9 @@ var RING_REGISTRY = staticRegistry([
|
|
|
832
1438
|
var TREEMAP_REGISTRY = staticRegistry(["heat"]);
|
|
833
1439
|
var RACI_REGISTRY = staticRegistry([
|
|
834
1440
|
"color",
|
|
835
|
-
"description"
|
|
1441
|
+
"description",
|
|
1442
|
+
"collapsed"
|
|
1443
|
+
// `[Phase] collapsed: true` view-state marker (#1741)
|
|
836
1444
|
]);
|
|
837
1445
|
var FAMILY_PERSON_REGISTRY = staticRegistry([
|
|
838
1446
|
"sex",
|
|
@@ -1595,6 +2203,7 @@ function warnUnknownMetaKeys(meta, registry, warn, nameToScan) {
|
|
|
1595
2203
|
export {
|
|
1596
2204
|
chartTypes,
|
|
1597
2205
|
CHART_TYPE_IDS,
|
|
2206
|
+
RETIRED_CHART_TYPES,
|
|
1598
2207
|
INFRA_TOP_LEVEL_OPTION_SET,
|
|
1599
2208
|
INFRA_BEHAVIOR_KEY_SET,
|
|
1600
2209
|
INFRA_EDGE_ONLY_KEY_SET,
|
|
@@ -1605,6 +2214,7 @@ export {
|
|
|
1605
2214
|
REGISTRY_CONTROL_TOKENS,
|
|
1606
2215
|
REGISTRY_STATUS_TOKENS,
|
|
1607
2216
|
REGISTRY_MODIFIER_TOKENS,
|
|
2217
|
+
REGISTRY_TOKEN_CHART_TYPES,
|
|
1608
2218
|
REGISTRY_COLON_KEY_TOKENS,
|
|
1609
2219
|
withTagAliases,
|
|
1610
2220
|
isReservedKey,
|
|
@@ -1616,12 +2226,12 @@ export {
|
|
|
1616
2226
|
ER_REGISTRY,
|
|
1617
2227
|
EVENT_LINE_REGISTRY,
|
|
1618
2228
|
KANBAN_REGISTRY,
|
|
2229
|
+
SWOT_REGISTRY,
|
|
1619
2230
|
SITEMAP_REGISTRY,
|
|
1620
2231
|
GANTT_REGISTRY,
|
|
1621
2232
|
PERT_REGISTRY,
|
|
1622
2233
|
BOXES_AND_LINES_REGISTRY,
|
|
1623
2234
|
STATE_REGISTRY,
|
|
1624
|
-
SKETCH_REGISTRY,
|
|
1625
2235
|
TIMELINE_REGISTRY,
|
|
1626
2236
|
MINDMAP_REGISTRY,
|
|
1627
2237
|
TECH_RADAR_REGISTRY,
|