@diagrammo/dgmo 0.51.0 → 0.53.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/.cursorrules +74 -77
- package/.github/copilot-instructions.md +74 -77
- package/.windsurfrules +74 -77
- package/SKILL.md +74 -77
- package/dist/advanced.d.ts +109 -246
- package/dist/advanced.js +296 -633
- package/dist/analyzer-TDN5KJFP.js +15 -0
- package/dist/auto.css +14 -6
- package/dist/auto.js +141 -129
- package/dist/auto.mjs +2062 -937
- package/dist/block.css +14 -6
- package/dist/block.js +123 -73
- package/dist/calculator-VBIT6GQF.js +11 -0
- package/dist/chart-meta-CPNVUZ5J.d.ts +232 -0
- package/dist/chart-meta.d.ts +2 -0
- package/dist/chart-meta.js +105 -0
- package/dist/charts-d3-DH2XA45I.js +26 -0
- package/dist/{chunk-RLFVAKEO.js → chunk-22OQWBWD.js} +25 -8
- package/dist/{chunk-I2QZFCS2.js → chunk-27STWBOK.js} +10 -8
- package/dist/{chunk-5PZT4DQG.js → chunk-2QC4HXCY.js} +41 -21
- package/dist/{chunk-HFMYN6N2.js → chunk-3B2GXZCX.js} +4 -3
- package/dist/{chunk-F3FYUFUH.js → chunk-3BEKKRH5.js} +18 -17
- package/dist/{chunk-2UJSV2VT.js → chunk-3CZLWOCI.js} +17 -7
- package/dist/{chunk-JEUJOX5X.js → chunk-3IUHKMJI.js} +2 -2
- package/dist/{chunk-7L4UJOY6.js → chunk-3TYUXC7D.js} +2 -2
- package/dist/{chunk-Y2ZE3MSG.js → chunk-43E26CDA.js} +2 -2
- package/dist/{chunk-ZO27FGJS.js → chunk-4ASVFYB2.js} +10 -7
- package/dist/{chunk-WCT3NYCV.js → chunk-4ASYQ347.js} +33 -8
- package/dist/{chunk-2ILHQOL3.js → chunk-4K42RUGC.js} +41 -13
- package/dist/{chunk-I5IGB56C.js → chunk-4QV26TEG.js} +41 -1
- package/dist/{chunk-QOOUC2J5.js → chunk-4RGZFA7H.js} +2 -2
- package/dist/{chunk-CXK4DZH3.js → chunk-4W2PE66Q.js} +12 -2
- package/dist/{chunk-EXOQP75F.js → chunk-4WGMGKCZ.js} +53 -33
- package/dist/{chunk-JED6ZDEE.js → chunk-5HWPEYWB.js} +2 -2
- package/dist/{chunk-3YSQZ75W.js → chunk-65V6IRFN.js} +46 -33
- package/dist/{chunk-TMACGPW5.js → chunk-6AUZPPAV.js} +4 -4
- package/dist/{chunk-6H7O2OPM.js → chunk-6DCOIN4W.js} +36 -6
- package/dist/{chunk-GTWKD3QT.js → chunk-6HTRCTAS.js} +7 -6
- package/dist/{chunk-VB4UJ3H2.js → chunk-6KY7OCZC.js} +21 -11
- package/dist/{chunk-YAA6IID3.js → chunk-774C2FF3.js} +2 -2
- package/dist/{chunk-WJ7RW65H.js → chunk-7GUF6SDR.js} +22 -20
- package/dist/{chunk-QYTPPDAO.js → chunk-7JDTNFAK.js} +3 -3
- package/dist/{chunk-U6EQI3U6.js → chunk-ADYKAKE3.js} +3 -3
- package/dist/{chunk-VNSXLA6G.js → chunk-AHXIMHDQ.js} +84 -20
- package/dist/chunk-AIMLCDAO.js +404 -0
- package/dist/{chunk-6MNGECP2.js → chunk-ALYZ3MAA.js} +4 -4
- package/dist/{chunk-5F5ELR3V.js → chunk-AN2DQB3G.js} +151 -20
- package/dist/{chunk-IEWG6J7C.js → chunk-AZNXGWDC.js} +91 -36
- package/dist/{chunk-4XFBQT5O.js → chunk-B4XS2AF2.js} +3 -3
- package/dist/{chunk-CC4YRBWV.js → chunk-BD3WGY4T.js} +18 -8
- package/dist/{chunk-RAHVMKBG.js → chunk-BFDVEO5R.js} +2 -2
- package/dist/{chunk-332ZR4QU.js → chunk-BR7AYN76.js} +8 -8
- package/dist/{chunk-P3NRSSUU.js → chunk-BULHGPHK.js} +3 -3
- package/dist/{chunk-PZDBOK2Q.js → chunk-CK2GMDXD.js} +11 -5
- package/dist/{chunk-467TVMQL.js → chunk-CMVZWP32.js} +3 -3
- package/dist/{chunk-GNSFLJAA.js → chunk-CQFNIIQN.js} +7 -7
- package/dist/{chunk-RBDIYLA5.js → chunk-DAOFNU6J.js} +17 -1
- package/dist/{chunk-AFIEPDLX.js → chunk-DWUMPMV2.js} +23 -11
- package/dist/{chunk-USZW2HHU.js → chunk-EQW6HOP4.js} +4 -3
- package/dist/{chunk-6BQFET7X.js → chunk-FFXCKZOU.js} +12 -4
- package/dist/{chunk-WRNFDFPU.js → chunk-FGDSTT3F.js} +2 -2
- package/dist/{chunk-6NFYEQDX.js → chunk-FLDC7ZAK.js} +34 -7
- package/dist/{chunk-IUJODQKX.js → chunk-FT7TPPZ5.js} +25 -23
- package/dist/{chunk-IEDMFNU7.js → chunk-FUKNRLIJ.js} +19 -7
- package/dist/{chunk-JJXGQIRV.js → chunk-FXCB7H5O.js} +4 -4
- package/dist/{chunk-GGHRAITI.js → chunk-GABSL6TH.js} +4 -4
- package/dist/{chunk-RXKTSFDL.js → chunk-GAWKIIPO.js} +35 -43
- package/dist/{chunk-ZJ3LS7DW.js → chunk-GMAH572Z.js} +6 -6
- package/dist/{chunk-TRM2J7ZN.js → chunk-GMIJ35PW.js} +28 -29
- package/dist/{chunk-AB7INMR5.js → chunk-GQ644SPD.js} +26 -25
- package/dist/{chunk-5QKQSSPO.js → chunk-GRM2A4BG.js} +4 -4
- package/dist/{chunk-3ODS2VGL.js → chunk-GWQJKTFS.js} +161 -704
- package/dist/{chunk-OTOHI4JO.js → chunk-H3HFC3SQ.js} +2 -2
- package/dist/{chunk-JSSX2SX4.js → chunk-HE5J53SZ.js} +4 -4
- package/dist/{chunk-2EQMXBBQ.js → chunk-HNBY6CNV.js} +3 -3
- package/dist/{chunk-J76PIKAT.js → chunk-HO3RCNF6.js} +3 -3
- package/dist/{chunk-OJTXTQA2.js → chunk-HORZ5H2L.js} +38 -31
- package/dist/{chunk-MX2EY5Y7.js → chunk-HOXKNRON.js} +2 -2
- package/dist/{chunk-E7Y3SYKW.js → chunk-I64ECJX3.js} +18 -8
- package/dist/{chunk-JM4LEPY3.js → chunk-IQJCVREL.js} +11 -8
- package/dist/{chunk-3JLKYGBQ.js → chunk-J7HI6G3G.js} +9 -6
- package/dist/{chunk-Q62FEYK3.js → chunk-JHOAH4TI.js} +3 -3
- package/dist/{chunk-OZPBJM5Q.js → chunk-JTMSWEIW.js} +11 -8
- package/dist/{chunk-P6T66CCZ.js → chunk-JYDMBWRP.js} +37 -19
- package/dist/{chunk-7DF4J4RL.js → chunk-KKHCNSKK.js} +17 -11
- package/dist/{chunk-ENRS56GC.js → chunk-KUSAVOWZ.js} +11 -8
- package/dist/{chunk-BYJBIALT.js → chunk-LC3FFD43.js} +23 -18
- package/dist/{chunk-65WJYYKJ.js → chunk-LHILKFDP.js} +16 -11
- package/dist/{chunk-NEQ6GJXB.js → chunk-LQHVDZYC.js} +52 -16
- package/dist/{chunk-5WPNFSXP.js → chunk-MA3HJZHB.js} +5 -5
- package/dist/{chunk-Z6XJQ6KO.js → chunk-MEQYZZFR.js} +3 -3
- package/dist/{chunk-MVN25IF6.js → chunk-NNUMX6WX.js} +42 -12
- package/dist/{chunk-7DYOELRK.js → chunk-NNYFQOTK.js} +78 -38
- package/dist/{chunk-NNAAJVBU.js → chunk-NR5HCAUD.js} +1 -1
- package/dist/{chunk-H6PI3KJT.js → chunk-ODUT5WMC.js} +2 -2
- package/dist/{chunk-5PDTIBLV.js → chunk-P3H7QVDH.js} +56 -19
- package/dist/{chunk-ND76YJCN.js → chunk-PIXZTCKH.js} +84 -117
- package/dist/{chunk-3LV2NCB6.js → chunk-PKNNHU7H.js} +22 -9
- package/dist/{chunk-TK2VQQX2.js → chunk-PT4SW76W.js} +20 -18
- package/dist/{chunk-AE7II3E3.js → chunk-PV2QO7QL.js} +4 -4
- package/dist/{chunk-FTBZV6NE.js → chunk-PYO4TJJ3.js} +34 -26
- package/dist/{chunk-QZPEGJOM.js → chunk-Q7AH665U.js} +28 -14
- package/dist/{chunk-QHI5XVUJ.js → chunk-QAALSCKI.js} +27 -26
- package/dist/{chunk-GD6L76WD.js → chunk-QI3BOLQB.js} +23 -11
- package/dist/{chunk-Y6GBQTBK.js → chunk-QWIBT6DS.js} +50 -28
- package/dist/{chunk-GU46PPT3.js → chunk-QXGACPS2.js} +5 -5
- package/dist/{chunk-FMDSF3OV.js → chunk-QZAW5SFH.js} +2 -2
- package/dist/{chunk-YGJZWZTY.js → chunk-R5NH5BZG.js} +12 -9
- package/dist/{chunk-U5SI5NIM.js → chunk-RJ5LBZ5U.js} +43 -26
- package/dist/{chunk-XHVV4NVW.js → chunk-RT7ACF77.js} +12 -2
- package/dist/{chunk-XEQXCIBC.js → chunk-RW5PEJ7D.js} +18 -6
- package/dist/{chunk-4VWJ4LW2.js → chunk-SG4PRYO3.js} +61 -49
- package/dist/{chunk-RBHWPDBB.js → chunk-SGPFVDUL.js} +18 -7
- package/dist/{chunk-KJGG2JKQ.js → chunk-SQCBSFT5.js} +84 -79
- package/dist/{chunk-5X6YQA2J.js → chunk-U7NKYLX2.js} +18 -16
- package/dist/chunk-U7VO6JAA.js +566 -0
- package/dist/{chunk-32XPAAET.js → chunk-UFQJMOVZ.js} +10 -10
- package/dist/{chunk-Z72XRXD4.js → chunk-UJRTPOHH.js} +3 -3
- package/dist/{chunk-EDA6C7MV.js → chunk-UK6DKJLD.js} +34 -14
- package/dist/{chunk-GROLTAWZ.js → chunk-UKP5HWB5.js} +149 -89
- package/dist/{chunk-DY7XLRHK.js → chunk-UQRIKAMH.js} +28 -27
- package/dist/{chunk-TYS6CSS5.js → chunk-UU6LUYUH.js} +2 -2
- package/dist/{chunk-NI3XQBPB.js → chunk-UVDCHR4E.js} +18 -6
- package/dist/{chunk-6K2M4VSR.js → chunk-VAO6ANGC.js} +23 -10
- package/dist/{chunk-6NYWYNBI.js → chunk-VGNIDAPQ.js} +4 -4
- package/dist/{chunk-VL2O2F3W.js → chunk-VHO3YBTB.js} +2 -2
- package/dist/{chunk-IUO34HKW.js → chunk-VIRANCNY.js} +36 -32
- package/dist/{chunk-4QZ43D7I.js → chunk-VJHBSPGF.js} +12 -14
- package/dist/{chunk-BGP54HVR.js → chunk-VKNCC2GX.js} +12 -8
- package/dist/{chunk-FC5I2KXV.js → chunk-VRRDUYOK.js} +7 -7
- package/dist/{chunk-G3PF3S7P.js → chunk-W2DINCHL.js} +15 -15
- package/dist/{chunk-OU7HLO7I.js → chunk-W5KMNC5U.js} +8 -8
- package/dist/{chunk-FFUN5D66.js → chunk-WF64MW5G.js} +2 -2
- package/dist/{chunk-X7EC3L2H.js → chunk-X3RXGSCZ.js} +48 -30
- package/dist/{chunk-KFNWFNAA.js → chunk-XEAQDIMF.js} +7 -6
- package/dist/{chunk-AXW3M6OQ.js → chunk-XG4NWFPY.js} +38 -27
- package/dist/{chunk-B63YB7X3.js → chunk-XQ4KN6JQ.js} +127 -65
- package/dist/{chunk-WBRZJOEC.js → chunk-XY3UDKKH.js} +4 -4
- package/dist/{chunk-IE477RQZ.js → chunk-YG2BEIQU.js} +14 -13
- package/dist/{chunk-LV4BETUU.js → chunk-YJVA3QUU.js} +55 -5
- package/dist/{chunk-5SVOCD5W.js → chunk-YR43LJT5.js} +20 -16
- package/dist/{chunk-TLVIHFRO.js → chunk-ZKPPI6BF.js} +2 -2
- package/dist/{chunk-WQLMU7VG.js → chunk-ZXUAPTCK.js} +3 -3
- package/dist/cli.cjs +158 -155
- package/dist/clock.js +25 -23
- package/dist/countdown.js +4 -3
- package/dist/dgmo-router-B4S23EBH.js +86 -0
- package/dist/dimensions-K6PGYYGT.js +22 -0
- package/dist/editor.js +36 -6
- package/dist/element.js +143 -131
- package/dist/element.mjs +2062 -937
- package/dist/flowchart-parser-LALR6J6F.js +21 -0
- package/dist/{flowchart-renderer-AQSMEMYF.js → flowchart-renderer-DXYB5YRF.js} +14 -14
- package/dist/highlight.d.ts +21 -1
- package/dist/highlight.js +129 -8
- package/dist/index.d.ts +4 -2
- package/dist/index.js +80 -75
- package/dist/layout-3BVDMKXI.js +15 -0
- package/dist/layout-3M5UYJHY.js +14 -0
- package/dist/{layout-JDJAEQ3P.js → layout-3V2A4MUE.js} +8 -8
- package/dist/layout-4IHCMWZN.js +19 -0
- package/dist/layout-5XGYNYVT.js +9 -0
- package/dist/layout-AZUPXWSK.js +15 -0
- package/dist/{layout-F4WO357A.js → layout-CAAKQX4W.js} +3 -3
- package/dist/layout-CB3XWCOI.js +10 -0
- package/dist/{layout-OAC4PEAC.js → layout-E6HR6PXH.js} +7 -7
- package/dist/{layout-7QXCNOVS.js → layout-HBWT2G23.js} +3 -3
- package/dist/layout-KPQWJNAG.js +14 -0
- package/dist/layout-OL2XFJXA.js +17 -0
- package/dist/layout-WCAIKGZG.js +19 -0
- package/dist/layout-WSMPBQ4Q.js +17 -0
- package/dist/layout-ZE5DRJWX.js +20 -0
- package/dist/{layout-search-55FU6HD3.js → layout-search-34DPZD43.js} +51 -35
- package/dist/legend-constants-P5EQWRQQ.js +49 -0
- package/dist/{palettes-PRJ2RI6D.js → palettes-FGTNFARW.js} +4 -4
- package/dist/{parser-KKTJ6M3Y.js → parser-275KP7JO.js} +8 -8
- package/dist/parser-27Z76SN3.js +22 -0
- package/dist/parser-3CODK6RG.js +15 -0
- package/dist/{parser-EH5VE7ZN.js → parser-3KIGEEJM.js} +6 -6
- package/dist/parser-3VSWEKBF.js +15 -0
- package/dist/parser-4E4I3GNT.js +13 -0
- package/dist/parser-5FGJSQNS.js +12 -0
- package/dist/parser-5HQXCNOS.js +12 -0
- package/dist/parser-5QPFOB5F.js +12 -0
- package/dist/parser-6B6SSZT7.js +11 -0
- package/dist/parser-6PPHAXXH.js +14 -0
- package/dist/parser-7JHWEWXM.js +13 -0
- package/dist/{parser-5PDYJGWA.js → parser-7JVIDLLR.js} +7 -7
- package/dist/parser-CKA3QMAG.js +18 -0
- package/dist/parser-CRKLXGW7.js +13 -0
- package/dist/parser-EXNBDNGY.js +11 -0
- package/dist/parser-FF4BMRSB.js +16 -0
- package/dist/parser-FOOFEJQU.js +13 -0
- package/dist/parser-G26MTBFS.js +11 -0
- package/dist/parser-GKP2MHHL.js +11 -0
- package/dist/parser-GN2MM5CC.js +11 -0
- package/dist/parser-IKWK2ZU3.js +18 -0
- package/dist/parser-IVGHXLZP.js +14 -0
- package/dist/parser-NNIL3HXU.js +11 -0
- package/dist/parser-RNLTBIJ6.js +19 -0
- package/dist/parser-UWRX52PC.js +16 -0
- package/dist/parser-VOERD6XR.js +14 -0
- package/dist/parser-XNKJCMMA.js +13 -0
- package/dist/parser-XVPTRWZ4.js +15 -0
- package/dist/parser-YSLNDFLV.js +22 -0
- package/dist/parser-ZGNXYFPS.js +15 -0
- package/dist/parser-ZQDQTB4X.js +20 -0
- package/dist/pert.d.ts +4 -2
- package/dist/registry-CaSw0PSH.d.ts +350 -0
- package/dist/renderer-2C6DJRYN.js +24 -0
- package/dist/renderer-5MPN7CXZ.js +19 -0
- package/dist/renderer-6EN5XXJZ.js +27 -0
- package/dist/renderer-6WRYVM5R.js +24 -0
- package/dist/renderer-7NQSTQMQ.js +16 -0
- package/dist/renderer-7ZNVOVFG.js +16 -0
- package/dist/{renderer-KQB7UGDS.js → renderer-AK2WO4EI.js} +7 -6
- package/dist/renderer-COLQFSFV.js +26 -0
- package/dist/renderer-CWEFGEIC.js +36 -0
- package/dist/renderer-D3BRNOMV.js +29 -0
- package/dist/renderer-HIFQVEJA.js +22 -0
- package/dist/renderer-JCZG6AYU.js +28 -0
- package/dist/{renderer-6RKQPNJI.js → renderer-JTCX6PCG.js} +13 -13
- package/dist/renderer-JWGQSTMR.js +37 -0
- package/dist/{renderer-3YPZHMOU.js → renderer-K7XLVPH5.js} +6 -6
- package/dist/renderer-KARQF3F3.js +22 -0
- package/dist/renderer-LVZAHRP6.js +34 -0
- package/dist/{renderer-QXGN5H3A.js → renderer-NE5W7CQP.js} +8 -8
- package/dist/renderer-QD2SJF2I.js +34 -0
- package/dist/renderer-RLMOTXZ6.js +37 -0
- package/dist/renderer-SQ54MDSA.js +26 -0
- package/dist/{renderer-UV6MI64M.js → renderer-TYHGXAVT.js} +7 -6
- package/dist/renderer-UKXW2QPE.js +23 -0
- package/dist/renderer-UPF7NRTI.js +28 -0
- package/dist/renderer-VMH6L6CP.js +24 -0
- package/dist/{renderer-GHPZMFU2.js → renderer-WCWI4I6A.js} +5 -5
- package/dist/renderer-WFSUBKUL.js +25 -0
- package/dist/renderer-WNFXYYGL.js +21 -0
- package/dist/{renderer-RGIYOTKJ.js → renderer-XTXSOK3L.js} +14 -14
- package/dist/renderer-YUKPS27O.js +24 -0
- package/dist/renderer-YUXGXGSW.js +27 -0
- package/dist/renderer-ZBTEX2JK.js +16 -0
- package/dist/renderer-radial-WF6VOUOD.js +21 -0
- package/dist/{resolver-EMTGNR3D.js → resolver-WFKZYBJ2.js} +4 -4
- package/dist/state-parser-L7DHZIQO.js +19 -0
- package/dist/state-renderer-TFEUOP4H.js +38 -0
- package/dist/{themes-32xj5ZTW.d.ts → themes-tbBkIVsn.d.ts} +2 -349
- package/docs/ai-integration.md +74 -77
- package/docs/language-reference.md +329 -290
- package/fonts/Inter-Bold.woff2 +0 -0
- package/fonts/Inter-Regular.woff2 +0 -0
- package/gallery/fixtures/boxes-and-lines-diverging.dgmo +1 -2
- package/gallery/fixtures/boxes-and-lines.dgmo +1 -1
- package/gallery/fixtures/clock.dgmo +1 -1
- package/gallery/fixtures/event-line.dgmo +1 -1
- package/gallery/fixtures/gantt-full.dgmo +1 -1
- package/gallery/fixtures/gantt-sprints.dgmo +9 -9
- package/gallery/fixtures/gantt.dgmo +1 -1
- package/gallery/fixtures/legacy-syntax-backcompat.dgmo +16 -0
- package/gallery/fixtures/state-tags.dgmo +40 -0
- package/gallery/fixtures/swimlane.dgmo +1 -1
- package/gallery/fixtures/timeline-intraday.dgmo +1 -1
- package/package.json +5 -1
- package/dist/analyzer-BJ54GIFB.js +0 -15
- package/dist/calculator-LDYQCDDY.js +0 -11
- package/dist/charts-d3-7E4B4IMW.js +0 -26
- package/dist/dgmo-router-Y2VEX46B.js +0 -86
- package/dist/dimensions-F7B5C4BJ.js +0 -22
- package/dist/flowchart-parser-MY53QWTZ.js +0 -21
- package/dist/layout-46366KBT.js +0 -10
- package/dist/layout-46N4JJYK.js +0 -17
- package/dist/layout-4DIUOX2T.js +0 -14
- package/dist/layout-AM2JWW3X.js +0 -15
- package/dist/layout-CBCLPMSG.js +0 -15
- package/dist/layout-EE6GE46Y.js +0 -17
- package/dist/layout-G23F7LDH.js +0 -9
- package/dist/layout-HYZPWAK5.js +0 -18
- package/dist/layout-MUPRALE5.js +0 -14
- package/dist/layout-YVTNOTN4.js +0 -20
- package/dist/layout-ZDOSXL5G.js +0 -19
- package/dist/parser-2Q2T4C3B.js +0 -22
- package/dist/parser-3A42DZ72.js +0 -11
- package/dist/parser-4RFTKAQX.js +0 -15
- package/dist/parser-57ILIFZ2.js +0 -20
- package/dist/parser-5A2UWU6B.js +0 -11
- package/dist/parser-6BJEXUFX.js +0 -13
- package/dist/parser-6ZKABF5S.js +0 -22
- package/dist/parser-AIMHGJRR.js +0 -19
- package/dist/parser-AZJ25OKK.js +0 -13
- package/dist/parser-B77S5SZM.js +0 -11
- package/dist/parser-BEPSWJAD.js +0 -11
- package/dist/parser-BKI42XBQ.js +0 -16
- package/dist/parser-C3D7MVXY.js +0 -11
- package/dist/parser-CDG7CHV5.js +0 -14
- package/dist/parser-CZOJ7XQ6.js +0 -15
- package/dist/parser-E2RL6JYF.js +0 -18
- package/dist/parser-FQ6GZFMR.js +0 -13
- package/dist/parser-GKLZKEIK.js +0 -13
- package/dist/parser-H6ABKHZZ.js +0 -12
- package/dist/parser-I6GGFKOQ.js +0 -12
- package/dist/parser-JA7JQ7NF.js +0 -15
- package/dist/parser-OK22AC6Y.js +0 -14
- package/dist/parser-OK2ILHRT.js +0 -16
- package/dist/parser-OUTPNJWC.js +0 -11
- package/dist/parser-PORDUX5E.js +0 -15
- package/dist/parser-SRVFR7PM.js +0 -13
- package/dist/parser-UKFFZCFJ.js +0 -14
- package/dist/parser-UMWPLORP.js +0 -18
- package/dist/parser-Z4TZV2CB.js +0 -12
- package/dist/renderer-2AUFT3E2.js +0 -24
- package/dist/renderer-2HTNBIF2.js +0 -34
- package/dist/renderer-3K3IB7D5.js +0 -22
- package/dist/renderer-3YNIWF5I.js +0 -16
- package/dist/renderer-4WR6WMVF.js +0 -26
- package/dist/renderer-66MERVQ2.js +0 -24
- package/dist/renderer-ARMJBP6C.js +0 -28
- package/dist/renderer-CO2DW7S7.js +0 -37
- package/dist/renderer-EDJ2O4S5.js +0 -34
- package/dist/renderer-F7U3MFCV.js +0 -22
- package/dist/renderer-GD2COXVL.js +0 -16
- package/dist/renderer-GQIESYEM.js +0 -25
- package/dist/renderer-HCKJDFXD.js +0 -37
- package/dist/renderer-HYGHO4SJ.js +0 -28
- package/dist/renderer-JC3RDUT7.js +0 -23
- package/dist/renderer-NKJ24TEA.js +0 -19
- package/dist/renderer-OYO67VZK.js +0 -26
- package/dist/renderer-QIWVHWZO.js +0 -15
- package/dist/renderer-QRWACQRI.js +0 -21
- package/dist/renderer-QXPP4TA2.js +0 -27
- package/dist/renderer-RHT4MHFU.js +0 -24
- package/dist/renderer-RYR3TJ46.js +0 -36
- package/dist/renderer-SRKDNDFB.js +0 -27
- package/dist/renderer-TGTUABCI.js +0 -24
- package/dist/renderer-TXJFKPOG.js +0 -29
- package/dist/renderer-radial-FWABAZHB.js +0 -21
- package/dist/state-parser-6T6CNMPX.js +0 -18
- package/dist/state-renderer-AWZ3ECAX.js +0 -34
|
@@ -4,10 +4,6 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
ScaleContext
|
|
6
6
|
} from "./chunk-YYVTBZZC.js";
|
|
7
|
-
import {
|
|
8
|
-
VARIANTS,
|
|
9
|
-
allTasks
|
|
10
|
-
} from "./chunk-6MNGECP2.js";
|
|
11
7
|
import {
|
|
12
8
|
TITLE_FONT_SIZE,
|
|
13
9
|
TITLE_FONT_WEIGHT,
|
|
@@ -17,15 +13,23 @@ import {
|
|
|
17
13
|
FONT_FAMILY
|
|
18
14
|
} from "./chunk-6KFWC4CO.js";
|
|
19
15
|
import {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
} from "./chunk-WCT3NYCV.js";
|
|
16
|
+
VARIANTS,
|
|
17
|
+
allTasks
|
|
18
|
+
} from "./chunk-ALYZ3MAA.js";
|
|
24
19
|
import {
|
|
25
20
|
contrastText,
|
|
26
21
|
mix,
|
|
27
22
|
themeBaseBg
|
|
28
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-JYDMBWRP.js";
|
|
24
|
+
import {
|
|
25
|
+
measureText,
|
|
26
|
+
truncateText,
|
|
27
|
+
wrapTextToWidth
|
|
28
|
+
} from "./chunk-4ASYQ347.js";
|
|
29
|
+
import {
|
|
30
|
+
fillModeFromOptions,
|
|
31
|
+
legendSuppressed
|
|
32
|
+
} from "./chunk-YJVA3QUU.js";
|
|
29
33
|
|
|
30
34
|
// src/raci/renderer.ts
|
|
31
35
|
import * as d3Selection from "d3-selection";
|
|
@@ -149,7 +153,7 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
149
153
|
const opts = typeof handlers === "function" ? { onClickLine: handlers } : handlers ?? {};
|
|
150
154
|
const onClickLine = opts.onClickLine;
|
|
151
155
|
const onMarkerDragStart = opts.onMarkerDragStart;
|
|
152
|
-
const hideLegend = opts.hideLegend ?? false;
|
|
156
|
+
const hideLegend = (opts.hideLegend ?? false) || legendSuppressed(parsed.options);
|
|
153
157
|
const collapsedPhases = opts.collapsedPhases ?? /* @__PURE__ */ new Set();
|
|
154
158
|
const hideTitle = (opts.hideTitle ?? false) || parsed.options["no-title"] === "on";
|
|
155
159
|
d3Selection.select(container).selectAll(":not([data-d3-tooltip])").remove();
|
|
@@ -158,7 +162,7 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
158
162
|
if (width <= 0 || height <= 0) return;
|
|
159
163
|
const tasksAll = [...allTasks(parsed)];
|
|
160
164
|
if (tasksAll.length === 0 && parsed.phases.length === 0) return;
|
|
161
|
-
const
|
|
165
|
+
const fillMode = fillModeFromOptions(parsed.options);
|
|
162
166
|
const surfaceBg = themeBaseBg(palette, isDark);
|
|
163
167
|
const roleCount = Math.max(1, parsed.roles.length);
|
|
164
168
|
const idealWidth = roleCount * ROLE_COL_MAX + TASK_LABEL_MAX + 2 * H_MARGIN;
|
|
@@ -312,7 +316,7 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
312
316
|
legendChipW,
|
|
313
317
|
palette,
|
|
314
318
|
surfaceBg,
|
|
315
|
-
|
|
319
|
+
fillMode,
|
|
316
320
|
onMarkerDragStart,
|
|
317
321
|
sLegendChipGap,
|
|
318
322
|
sLegendHeight,
|
|
@@ -332,7 +336,14 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
332
336
|
if (taskIdx < 0) return;
|
|
333
337
|
const yTop = rowYs[i];
|
|
334
338
|
const rh = taskRowContent.get(row.task.id)?.rowHeight ?? sRowHeight;
|
|
335
|
-
|
|
339
|
+
const bandAccent = autoAccent(taskIdx, palette);
|
|
340
|
+
const band = bandsG.append("rect").attr("class", "raci-row-band").attr("data-task-id", row.task.id).attr("x", sHMargin).attr("y", yTop + 2).attr("width", innerWidth).attr("height", rh - 4).attr("rx", 6).attr(
|
|
341
|
+
"fill",
|
|
342
|
+
fillMode === "outline" ? surfaceBg : mix(bandAccent, surfaceBg, 12)
|
|
343
|
+
);
|
|
344
|
+
if (fillMode === "outline") {
|
|
345
|
+
band.attr("stroke", bandAccent).attr("stroke-width", 1);
|
|
346
|
+
}
|
|
336
347
|
});
|
|
337
348
|
}
|
|
338
349
|
const columnsG = svg.append("g").attr("class", "raci-columns");
|
|
@@ -340,14 +351,21 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
340
351
|
const cx = roleX(i) + sColumnInset;
|
|
341
352
|
const cw = roleColW - 2 * sColumnInset;
|
|
342
353
|
const roleColor = parsed.roleColors[i] ?? autoAccent(i, palette);
|
|
343
|
-
const
|
|
344
|
-
const
|
|
354
|
+
const outline = fillMode === "outline";
|
|
355
|
+
const bodyFill = outline ? surfaceBg : mix(roleColor, themeBaseBg(palette, isDark), 16);
|
|
356
|
+
const headerFill = outline ? surfaceBg : mix(roleColor, themeBaseBg(palette, isDark), 30);
|
|
345
357
|
const colG = columnsG.append("g").attr("class", "raci-column").attr("data-role-id", roleId);
|
|
346
|
-
colG.append("rect").attr("class", "raci-column-body").attr("x", cx).attr("y", headerY).attr("width", cw).attr("height", colTotalHeight).attr("rx", sColumnRadius).attr("fill", bodyFill);
|
|
347
|
-
|
|
358
|
+
const bodyRect = colG.append("rect").attr("class", "raci-column-body").attr("x", cx).attr("y", headerY).attr("width", cw).attr("height", colTotalHeight).attr("rx", sColumnRadius).attr("fill", bodyFill);
|
|
359
|
+
if (outline) {
|
|
360
|
+
bodyRect.attr("stroke", roleColor).attr("stroke-width", 1);
|
|
361
|
+
}
|
|
362
|
+
const headerPath = colG.append("path").attr("class", "raci-column-header").attr(
|
|
348
363
|
"d",
|
|
349
364
|
topRoundedRectPath(cx, headerY, cw, sHeaderHeight, sColumnRadius)
|
|
350
365
|
).attr("fill", headerFill);
|
|
366
|
+
if (outline) {
|
|
367
|
+
headerPath.attr("stroke", roleColor).attr("stroke-width", 1);
|
|
368
|
+
}
|
|
351
369
|
const cxText = roleX(i) + roleColW / 2;
|
|
352
370
|
colG.append("text").attr("class", "raci-column-label").attr("x", cxText).attr("y", headerY + sHeaderHeight / 2).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("font-size", sRoleHeaderFont).attr("font-weight", 600).attr("fill", palette.text).text(
|
|
353
371
|
truncateText(
|
|
@@ -400,7 +418,7 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
400
418
|
roleColW,
|
|
401
419
|
parsed.variant,
|
|
402
420
|
surfaceBg,
|
|
403
|
-
|
|
421
|
+
fillMode,
|
|
404
422
|
chartCanShowSummaries,
|
|
405
423
|
sPhaseHeight,
|
|
406
424
|
sPhaseFont,
|
|
@@ -419,7 +437,7 @@ function renderRaci(container, parsed, palette, isDark, handlers, exportDims) {
|
|
|
419
437
|
roleColW,
|
|
420
438
|
palette,
|
|
421
439
|
surfaceBg,
|
|
422
|
-
|
|
440
|
+
fillMode,
|
|
423
441
|
taskDiagnostics,
|
|
424
442
|
hasAnyDiagnostic,
|
|
425
443
|
taskRowContent.get(row.task.id),
|
|
@@ -482,7 +500,7 @@ function setupColumnHover(svg) {
|
|
|
482
500
|
svg.on("mouseover", (event) => set(findRole(event.target)));
|
|
483
501
|
svg.on("mouseleave", () => set(null));
|
|
484
502
|
}
|
|
485
|
-
function renderLegend(svg, markers, variant, x, y, mode, chipW, palette, surfaceBg,
|
|
503
|
+
function renderLegend(svg, markers, variant, x, y, mode, chipW, palette, surfaceBg, fillMode, _onMarkerDragStart, sLegendChipGap, sLegendHeight, sNodeRadius, sNodeStrokeWidth, sLegendLetterFont, sLegendLabelFont) {
|
|
486
504
|
if (markers.length === 0) return;
|
|
487
505
|
const labels = MARKER_LABELS[variant];
|
|
488
506
|
const legendG = svg.append("g").attr("class", "raci-legend").attr("aria-label", `${variant.toUpperCase()} marker legend`);
|
|
@@ -492,12 +510,12 @@ function renderLegend(svg, markers, variant, x, y, mode, chipW, palette, surface
|
|
|
492
510
|
const labelText = labels[marker];
|
|
493
511
|
const chipG = legendG.append("g").attr("class", "raci-legend-chip").attr("data-marker", marker).style("cursor", "grab");
|
|
494
512
|
if (mode === "letters") {
|
|
495
|
-
const fill2 = solid ? rawColor : mix(rawColor, surfaceBg, TINT_PCT);
|
|
496
|
-
const stroke2 = solid ? mix(rawColor, surfaceBg, 70) : rawColor;
|
|
513
|
+
const fill2 = fillMode === "solid" ? rawColor : fillMode === "outline" ? surfaceBg : mix(rawColor, surfaceBg, TINT_PCT);
|
|
514
|
+
const stroke2 = fillMode === "solid" ? mix(rawColor, surfaceBg, 70) : rawColor;
|
|
497
515
|
chipG.append("rect").attr("x", cx).attr("y", y).attr("width", chipW).attr("height", sLegendHeight).attr("rx", sNodeRadius).attr("fill", fill2).attr("stroke", stroke2).attr("stroke-width", sNodeStrokeWidth);
|
|
498
516
|
chipG.append("text").attr("x", cx + chipW / 2).attr("y", y + sLegendHeight / 2).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("font-size", sLegendLetterFont).attr("font-weight", 700).attr(
|
|
499
517
|
"fill",
|
|
500
|
-
solid ? contrastText(
|
|
518
|
+
fillMode === "solid" ? contrastText(
|
|
501
519
|
fill2,
|
|
502
520
|
palette.textOnFillLight,
|
|
503
521
|
palette.textOnFillDark
|
|
@@ -505,16 +523,32 @@ function renderLegend(svg, markers, variant, x, y, mode, chipW, palette, surface
|
|
|
505
523
|
).text(marker);
|
|
506
524
|
return;
|
|
507
525
|
}
|
|
508
|
-
|
|
509
|
-
|
|
526
|
+
let fill;
|
|
527
|
+
if (fillMode === "outline") {
|
|
528
|
+
const gradId = `raci-legend-grad-${marker}`;
|
|
529
|
+
let defs = svg.select("defs");
|
|
530
|
+
if (defs.empty()) defs = svg.append("defs");
|
|
531
|
+
if (defs.select(`#${gradId}`).empty()) {
|
|
532
|
+
const grad = defs.append("linearGradient").attr("id", gradId).attr("x1", "0%").attr("y1", "0%").attr("x2", "0%").attr("y2", "100%");
|
|
533
|
+
grad.append("stop").attr("offset", "0%").attr("stop-color", mix(rawColor, surfaceBg, 38));
|
|
534
|
+
grad.append("stop").attr("offset", "100%").attr("stop-color", mix(rawColor, surfaceBg, 8));
|
|
535
|
+
}
|
|
536
|
+
fill = `url(#${gradId})`;
|
|
537
|
+
} else {
|
|
538
|
+
fill = fillMode === "solid" ? rawColor : mix(rawColor, surfaceBg, TINT_PCT);
|
|
539
|
+
}
|
|
540
|
+
const stroke = fillMode === "outline" ? rawColor : mix(rawColor, surfaceBg, 70);
|
|
510
541
|
chipG.append("rect").attr("x", cx).attr("y", y).attr("width", chipW).attr("height", sLegendHeight).attr("rx", sNodeRadius).attr("fill", fill).attr("stroke", stroke).attr("stroke-width", sNodeStrokeWidth);
|
|
511
542
|
const slabPad = 4;
|
|
512
543
|
const slabW = 24;
|
|
513
|
-
const slabFill = solid ? mix(rawColor, surfaceBg, 70) : mix(rawColor, surfaceBg, 55);
|
|
514
|
-
chipG.append("rect").attr("x", cx + slabPad).attr("y", y + slabPad).attr("width", slabW).attr("height", sLegendHeight - 2 * slabPad).attr("rx", 4).attr("fill", slabFill);
|
|
544
|
+
const slabFill = fillMode === "solid" ? mix(rawColor, surfaceBg, 70) : fillMode === "outline" ? surfaceBg : mix(rawColor, surfaceBg, 55);
|
|
545
|
+
const slabRect = chipG.append("rect").attr("x", cx + slabPad).attr("y", y + slabPad).attr("width", slabW).attr("height", sLegendHeight - 2 * slabPad).attr("rx", 4).attr("fill", slabFill);
|
|
546
|
+
if (fillMode === "outline") {
|
|
547
|
+
slabRect.attr("stroke", rawColor).attr("stroke-width", 1);
|
|
548
|
+
}
|
|
515
549
|
chipG.append("text").attr("x", cx + slabPad + slabW / 2).attr("y", y + sLegendHeight / 2).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("font-size", sLegendLetterFont).attr("font-weight", 700).attr(
|
|
516
550
|
"fill",
|
|
517
|
-
solid ? contrastText(
|
|
551
|
+
fillMode === "solid" ? contrastText(
|
|
518
552
|
slabFill,
|
|
519
553
|
palette.textOnFillLight,
|
|
520
554
|
palette.textOnFillDark
|
|
@@ -532,10 +566,16 @@ function renderLegend(svg, markers, variant, x, y, mode, chipW, palette, surface
|
|
|
532
566
|
function renderRaciForExport(container, parsed, palette, isDark, exportDims) {
|
|
533
567
|
renderRaci(container, parsed, palette, isDark, {}, exportDims);
|
|
534
568
|
}
|
|
535
|
-
function renderPhaseBar(svg, phase, x, y, width, palette, collapsed, autoColor, roles, roleX, roleColW, variant, surfaceBg,
|
|
569
|
+
function renderPhaseBar(svg, phase, x, y, width, palette, collapsed, autoColor, roles, roleX, roleColW, variant, surfaceBg, fillMode, showSummary, sPhaseHeight, sPhaseFont, sColumnInset, sNodeRadius) {
|
|
536
570
|
const phaseG = svg.append("g").attr("class", "raci-phase").attr("data-section", `phase-${phase.id}`).attr("data-section-toggle", "").attr("data-line-number", String(phase.lineNumber)).attr("data-phase-id", phase.id).attr("data-collapsed", collapsed ? "1" : "0").style("cursor", "pointer");
|
|
537
|
-
const
|
|
538
|
-
phaseG.append("rect").attr("x", x).attr("y", y + 4).attr("width", width).attr("height", sPhaseHeight - 8).attr(
|
|
571
|
+
const phaseColor = phase.color ?? autoColor;
|
|
572
|
+
const phaseRect = phaseG.append("rect").attr("x", x).attr("y", y + 4).attr("width", width).attr("height", sPhaseHeight - 8).attr(
|
|
573
|
+
"fill",
|
|
574
|
+
fillMode === "outline" ? surfaceBg : mix(phaseColor, palette.bg, 30)
|
|
575
|
+
).attr("rx", 4);
|
|
576
|
+
if (fillMode === "outline") {
|
|
577
|
+
phaseRect.attr("stroke", phaseColor).attr("stroke-width", 1.25);
|
|
578
|
+
}
|
|
539
579
|
const chevX = x + 12;
|
|
540
580
|
const chevY = y + sPhaseHeight / 2;
|
|
541
581
|
phaseG.append("text").attr("x", chevX).attr("y", chevY).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("font-family", FONT_FAMILY).attr("font-size", 9).attr("fill", palette.text).attr("opacity", 0.6).text(collapsed ? "\u25B6" : "\u25BC");
|
|
@@ -568,13 +608,13 @@ function renderPhaseBar(svg, phase, x, y, width, palette, collapsed, autoColor,
|
|
|
568
608
|
ordered.forEach((marker, i) => {
|
|
569
609
|
const cx = startX + i * (sliceW + SLICE_GAP);
|
|
570
610
|
const rawColor = markerColor(marker, palette);
|
|
571
|
-
const fill = solid ? rawColor : mix(rawColor, surfaceBg, TINT_PCT);
|
|
572
|
-
const stroke = solid ? mix(rawColor, surfaceBg, 70) : rawColor;
|
|
611
|
+
const fill = fillMode === "solid" ? rawColor : fillMode === "outline" ? surfaceBg : mix(rawColor, surfaceBg, TINT_PCT);
|
|
612
|
+
const stroke = fillMode === "solid" ? mix(rawColor, surfaceBg, 70) : rawColor;
|
|
573
613
|
const chipG = phaseG.append("g").attr("class", "raci-phase-summary");
|
|
574
614
|
chipG.append("rect").attr("x", cx).attr("y", summaryY).attr("width", sliceW).attr("height", SUMMARY_CHIP_H).attr("rx", sNodeRadius).attr("fill", fill).attr("stroke", stroke).attr("stroke-width", 1.25);
|
|
575
615
|
chipG.append("text").attr("x", cx + sliceW / 2).attr("y", summaryY + SUMMARY_CHIP_H / 2).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("font-size", SUMMARY_LETTER_FONT).attr("font-weight", 700).attr(
|
|
576
616
|
"fill",
|
|
577
|
-
solid ? contrastText(
|
|
617
|
+
fillMode === "solid" ? contrastText(
|
|
578
618
|
fill,
|
|
579
619
|
palette.textOnFillLight,
|
|
580
620
|
palette.textOnFillDark
|
|
@@ -585,7 +625,7 @@ function renderPhaseBar(svg, phase, x, y, width, palette, collapsed, autoColor,
|
|
|
585
625
|
}
|
|
586
626
|
}
|
|
587
627
|
var SLICE_GAP = 4;
|
|
588
|
-
function renderTaskRow(svg, task, parsed, x, y, labelW, roleX, roleColW, palette, surfaceBg,
|
|
628
|
+
function renderTaskRow(svg, task, parsed, x, y, labelW, roleX, roleColW, palette, surfaceBg, fillMode, taskDiagnostics, _hasAnyDiagnostic, rowContent, onClickLine, _onMarkerDragStart, sLabelFont, sDescFont, sCellPad, sRowHeight, sColumnInset, sNodeRadius, sNodeStrokeWidth, sMarkerFont, sLegendLabelFont, sStackTopGap, sViolationLineHeight) {
|
|
589
629
|
const rowG = svg.append("g").attr("class", "raci-task-row").attr("data-task-id", task.id).attr("data-line-number", String(task.lineNumber));
|
|
590
630
|
const labelX = x + 8;
|
|
591
631
|
const labelMaxW = labelW - 16;
|
|
@@ -664,7 +704,7 @@ function renderTaskRow(svg, task, parsed, x, y, labelW, roleX, roleColW, palette
|
|
|
664
704
|
const variantLabels = MARKER_LABELS[parsed.variant];
|
|
665
705
|
markers.forEach((m, i) => {
|
|
666
706
|
const rawColor = markerColor(m, palette);
|
|
667
|
-
const fill = solid ? rawColor : mix(rawColor, surfaceBg, TINT_PCT);
|
|
707
|
+
const fill = fillMode === "solid" ? rawColor : fillMode === "outline" ? surfaceBg : mix(rawColor, surfaceBg, TINT_PCT);
|
|
668
708
|
const stroke = rawColor;
|
|
669
709
|
const sliceX = cx + i * (sliceW + SLICE_GAP);
|
|
670
710
|
const sliceG = cellG.append("g").attr("class", "raci-marker-slice").attr("data-marker", m).style("cursor", "grab");
|
|
@@ -676,7 +716,7 @@ function renderTaskRow(svg, task, parsed, x, y, labelW, roleX, roleColW, palette
|
|
|
676
716
|
const textFont = showFullLabel ? sLegendLabelFont : sMarkerFont;
|
|
677
717
|
sliceG.append("text").attr("x", sliceX + sliceW / 2).attr("y", cy + ch / 2).attr("text-anchor", "middle").attr("dominant-baseline", "central").attr("font-size", textFont).attr("font-weight", MARKER_FONT_WEIGHT).attr(
|
|
678
718
|
"fill",
|
|
679
|
-
solid ? contrastText(
|
|
719
|
+
fillMode === "solid" ? contrastText(
|
|
680
720
|
fill,
|
|
681
721
|
palette.textOnFillLight,
|
|
682
722
|
palette.textOnFillDark
|
|
@@ -747,4 +787,4 @@ export {
|
|
|
747
787
|
renderRaci,
|
|
748
788
|
renderRaciForExport
|
|
749
789
|
};
|
|
750
|
-
//# sourceMappingURL=chunk-
|
|
790
|
+
//# sourceMappingURL=chunk-NNYFQOTK.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
measureText
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4ASYQ347.js";
|
|
4
4
|
|
|
5
5
|
// src/wireframe/layout.ts
|
|
6
6
|
var DESKTOP_WIDTH = 1200;
|
|
@@ -302,4 +302,4 @@ function computeFieldAlignX(children) {
|
|
|
302
302
|
export {
|
|
303
303
|
layoutWireframe
|
|
304
304
|
};
|
|
305
|
-
//# sourceMappingURL=chunk-
|
|
305
|
+
//# sourceMappingURL=chunk-ODUT5WMC.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
formatLocalISODate
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3TYUXC7D.js";
|
|
4
4
|
import {
|
|
5
5
|
parseDuration
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-EQW6HOP4.js";
|
|
7
7
|
import {
|
|
8
8
|
parseDateToken,
|
|
9
9
|
toInternal
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-DAOFNU6J.js";
|
|
11
11
|
import {
|
|
12
12
|
AUTO_TAG_COLOR_SENTINEL,
|
|
13
13
|
finalizeAutoTagColors,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
tagAttrKey,
|
|
18
18
|
validateTagGroupNames,
|
|
19
19
|
validateTagValues
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-CMVZWP32.js";
|
|
21
21
|
import {
|
|
22
22
|
normalizeName
|
|
23
23
|
} from "./chunk-NOTA6TEI.js";
|
|
@@ -25,15 +25,16 @@ import {
|
|
|
25
25
|
PERT_REGISTRY,
|
|
26
26
|
extractColor,
|
|
27
27
|
measureIndent,
|
|
28
|
+
peelTrailingCollapsedFlag,
|
|
28
29
|
splitNameAndMeta,
|
|
29
30
|
warnUnknownMetaKeys,
|
|
30
31
|
withTagAliases
|
|
31
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-YJVA3QUU.js";
|
|
32
33
|
import {
|
|
33
34
|
emit,
|
|
34
35
|
makeDgmoError,
|
|
35
36
|
suggest
|
|
36
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-4W2PE66Q.js";
|
|
37
38
|
|
|
38
39
|
// src/pert/diagnostics.ts
|
|
39
40
|
var PERT_DX = {
|
|
@@ -129,7 +130,11 @@ var PERT_DIAGNOSTICS = Object.values(PERT_DX);
|
|
|
129
130
|
var DIRECTIVE_KEYS = /* @__PURE__ */ new Set([
|
|
130
131
|
"time-unit",
|
|
131
132
|
"default-confidence",
|
|
133
|
+
// Canonical booleans (§1.9, last one wins); key+value `direction LR|TB`
|
|
134
|
+
// accepted legacy.
|
|
132
135
|
"direction",
|
|
136
|
+
"direction-lr",
|
|
137
|
+
"direction-tb",
|
|
133
138
|
"node-detail",
|
|
134
139
|
"no-analysis",
|
|
135
140
|
"trials",
|
|
@@ -138,7 +143,10 @@ var DIRECTIVE_KEYS = /* @__PURE__ */ new Set([
|
|
|
138
143
|
"start-date",
|
|
139
144
|
"end-date",
|
|
140
145
|
"no-title",
|
|
141
|
-
"
|
|
146
|
+
"no-legend",
|
|
147
|
+
"fill-tint",
|
|
148
|
+
"fill-solid",
|
|
149
|
+
"fill-outline",
|
|
142
150
|
"sprint-length",
|
|
143
151
|
"sprint-number",
|
|
144
152
|
"sprint-start",
|
|
@@ -173,7 +181,7 @@ var NEAR_DIRECTIVE_HINTS = [
|
|
|
173
181
|
{
|
|
174
182
|
stem: "time",
|
|
175
183
|
canonical: "time-unit",
|
|
176
|
-
matches: /^(d|w|m|q|y|h|min|bd|s)$/i
|
|
184
|
+
matches: /^(d|w|m|q|y|h|min|bd|sp|s)$/i
|
|
177
185
|
}
|
|
178
186
|
];
|
|
179
187
|
var GROUP_HEADER_RE = /^\[([^\]]+)\]\s*(.*)$/;
|
|
@@ -195,7 +203,8 @@ function parseEdgeLabel(label, defaultUnit) {
|
|
|
195
203
|
if (numRaw) {
|
|
196
204
|
const amount = parseFloat(numRaw);
|
|
197
205
|
if (amount !== 0) {
|
|
198
|
-
const
|
|
206
|
+
const unitLow = unitRaw?.toLowerCase();
|
|
207
|
+
const unit = unitLow ? unitLow === "sp" ? "s" : unitLow : defaultUnit;
|
|
199
208
|
if (!isValidDurationUnit(unit)) return null;
|
|
200
209
|
lag = { amount, unit };
|
|
201
210
|
}
|
|
@@ -217,7 +226,7 @@ function isValidDurationUnit(u) {
|
|
|
217
226
|
return VALID_DURATION_UNITS.has(u);
|
|
218
227
|
}
|
|
219
228
|
var ALIAS_SUFFIX_RE = /\s+as\s+([A-Za-z][A-Za-z0-9_]{0,11})\s*$/;
|
|
220
|
-
var ESTIMATE_TOKEN_RE = /^(\d+(?:\.\d+)?)(min|bd|d|w|m|q|y|h|s)?$/;
|
|
229
|
+
var ESTIMATE_TOKEN_RE = /^(\d+(?:\.\d+)?)(min|bd|sp|d|w|m|q|y|h|s)?$/;
|
|
221
230
|
var DEFAULT_OPTIONS = {
|
|
222
231
|
timeUnit: "d",
|
|
223
232
|
direction: "LR",
|
|
@@ -322,7 +331,7 @@ function parseEstimateToken(token, defaultUnit) {
|
|
|
322
331
|
if (!m) return null;
|
|
323
332
|
const amount = parseFloat(m[1]);
|
|
324
333
|
if (!Number.isFinite(amount)) return null;
|
|
325
|
-
const unit = m[2] ?? defaultUnit;
|
|
334
|
+
const unit = (m[2] === "sp" ? "s" : m[2]) ?? defaultUnit;
|
|
326
335
|
if (unit === "s") {
|
|
327
336
|
return { amount, unit: defaultUnit };
|
|
328
337
|
}
|
|
@@ -538,7 +547,13 @@ function parsePert(content, parseOpts = {}) {
|
|
|
538
547
|
contentStarted = true;
|
|
539
548
|
currentTagGroup = null;
|
|
540
549
|
const name = groupMatch[1].trim();
|
|
541
|
-
|
|
550
|
+
let tail = (groupMatch[2] ?? "").trim();
|
|
551
|
+
let bareCollapsed = false;
|
|
552
|
+
const barePeel = peelTrailingCollapsedFlag(tail);
|
|
553
|
+
if (barePeel.collapsed) {
|
|
554
|
+
bareCollapsed = true;
|
|
555
|
+
tail = barePeel.rest;
|
|
556
|
+
}
|
|
542
557
|
const meta = tail ? parsePipeMetadata(tail, metaAliasMap) : {};
|
|
543
558
|
const id = `[${normalizeName(name)}]`;
|
|
544
559
|
const tags = {};
|
|
@@ -549,7 +564,7 @@ function parsePert(content, parseOpts = {}) {
|
|
|
549
564
|
id,
|
|
550
565
|
name,
|
|
551
566
|
activityIds: [],
|
|
552
|
-
collapsed: meta["collapsed"] === "true",
|
|
567
|
+
collapsed: bareCollapsed || meta["collapsed"] === "true",
|
|
553
568
|
lineNumber,
|
|
554
569
|
...Object.keys(tags).length > 0 && { tags }
|
|
555
570
|
});
|
|
@@ -953,6 +968,7 @@ function applyDirective(key, value, lineNumber, options, error, warn, dateCfg) {
|
|
|
953
968
|
case "no-current-year":
|
|
954
969
|
return;
|
|
955
970
|
case "time-unit": {
|
|
971
|
+
const normalized = value === "sp" ? "s" : value;
|
|
956
972
|
const valid = [
|
|
957
973
|
"min",
|
|
958
974
|
"h",
|
|
@@ -964,14 +980,15 @@ function applyDirective(key, value, lineNumber, options, error, warn, dateCfg) {
|
|
|
964
980
|
"y",
|
|
965
981
|
"s"
|
|
966
982
|
];
|
|
967
|
-
if (!valid.includes(
|
|
983
|
+
if (!valid.includes(normalized)) {
|
|
984
|
+
const shown = valid.map((u) => u === "s" ? "sp" : u);
|
|
968
985
|
error(
|
|
969
986
|
lineNumber,
|
|
970
|
-
`Unknown time-unit '${value}'. Expected one of ${
|
|
987
|
+
`Unknown time-unit '${value}'. Expected one of ${shown.join(", ")}.`
|
|
971
988
|
);
|
|
972
989
|
return;
|
|
973
990
|
}
|
|
974
|
-
options.timeUnit =
|
|
991
|
+
options.timeUnit = normalized;
|
|
975
992
|
return;
|
|
976
993
|
}
|
|
977
994
|
case "default-confidence": {
|
|
@@ -982,8 +999,20 @@ function applyDirective(key, value, lineNumber, options, error, warn, dateCfg) {
|
|
|
982
999
|
options.noTitle = true;
|
|
983
1000
|
return;
|
|
984
1001
|
}
|
|
985
|
-
case "
|
|
986
|
-
options.
|
|
1002
|
+
case "no-legend": {
|
|
1003
|
+
options.noLegend = true;
|
|
1004
|
+
return;
|
|
1005
|
+
}
|
|
1006
|
+
case "fill-solid": {
|
|
1007
|
+
options.fillMode = "solid";
|
|
1008
|
+
return;
|
|
1009
|
+
}
|
|
1010
|
+
case "fill-outline": {
|
|
1011
|
+
options.fillMode = "outline";
|
|
1012
|
+
return;
|
|
1013
|
+
}
|
|
1014
|
+
case "fill-tint": {
|
|
1015
|
+
delete options.fillMode;
|
|
987
1016
|
return;
|
|
988
1017
|
}
|
|
989
1018
|
case "active-tag": {
|
|
@@ -1051,6 +1080,14 @@ function applyDirective(key, value, lineNumber, options, error, warn, dateCfg) {
|
|
|
1051
1080
|
options.direction = upper;
|
|
1052
1081
|
return;
|
|
1053
1082
|
}
|
|
1083
|
+
case "direction-lr": {
|
|
1084
|
+
options.direction = "LR";
|
|
1085
|
+
return;
|
|
1086
|
+
}
|
|
1087
|
+
case "direction-tb": {
|
|
1088
|
+
options.direction = "TB";
|
|
1089
|
+
return;
|
|
1090
|
+
}
|
|
1054
1091
|
case "node-detail": {
|
|
1055
1092
|
if (value !== "compact" && value !== "full") {
|
|
1056
1093
|
error(
|
|
@@ -1214,4 +1251,4 @@ export {
|
|
|
1214
1251
|
extractPertSymbols,
|
|
1215
1252
|
looksLikePert
|
|
1216
1253
|
};
|
|
1217
|
-
//# sourceMappingURL=chunk-
|
|
1254
|
+
//# sourceMappingURL=chunk-P3H7QVDH.js.map
|