@diagrammo/dgmo 0.51.0 → 0.52.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 +15 -19
- package/.github/copilot-instructions.md +15 -19
- package/.windsurfrules +15 -19
- package/SKILL.md +15 -19
- package/dist/advanced.d.ts +70 -42
- package/dist/advanced.js +115 -119
- package/dist/auto.js +125 -123
- package/dist/auto.mjs +952 -492
- package/dist/block.js +89 -52
- package/dist/{charts-d3-7E4B4IMW.js → charts-d3-MXEP6BNP.js} +7 -7
- package/dist/{chunk-CC4YRBWV.js → chunk-3HF5YEFJ.js} +17 -7
- package/dist/{chunk-5X6YQA2J.js → chunk-3HGU63UY.js} +12 -11
- package/dist/{chunk-4XFBQT5O.js → chunk-3LK5DNED.js} +2 -2
- package/dist/{chunk-IEDMFNU7.js → chunk-3QD7VP3U.js} +9 -4
- package/dist/{chunk-JJXGQIRV.js → chunk-3YRPZ7ZZ.js} +2 -2
- package/dist/{chunk-OJTXTQA2.js → chunk-44VCIPHF.js} +21 -17
- package/dist/{chunk-RAHVMKBG.js → chunk-4AQRFDXL.js} +2 -2
- package/dist/{chunk-6MNGECP2.js → chunk-4IHAV6O7.js} +2 -2
- package/dist/{chunk-ENRS56GC.js → chunk-4UNQ6X24.js} +10 -7
- package/dist/{chunk-JM4LEPY3.js → chunk-4YFKQ5WT.js} +6 -3
- package/dist/{chunk-U5SI5NIM.js → chunk-5223KXFD.js} +39 -22
- package/dist/{chunk-NI3XQBPB.js → chunk-5BHJZH62.js} +3 -3
- package/dist/{chunk-QYTPPDAO.js → chunk-5HILBT7X.js} +2 -2
- package/dist/{chunk-I2QZFCS2.js → chunk-5NGAO4QK.js} +4 -4
- package/dist/{chunk-BGP54HVR.js → chunk-5RP7JRVP.js} +4 -4
- package/dist/{chunk-IE477RQZ.js → chunk-5SEVICBT.js} +5 -5
- package/dist/{chunk-OZPBJM5Q.js → chunk-6EJITS44.js} +8 -5
- package/dist/{chunk-F3FYUFUH.js → chunk-6HQH6JZE.js} +12 -11
- package/dist/{chunk-X7EC3L2H.js → chunk-6LBQ7ELG.js} +14 -15
- package/dist/{chunk-5WPNFSXP.js → chunk-75G3Q4DK.js} +3 -3
- package/dist/{chunk-BYJBIALT.js → chunk-77FGAVZC.js} +10 -7
- package/dist/{chunk-2EQMXBBQ.js → chunk-7BIZCTAX.js} +2 -2
- package/dist/{chunk-B63YB7X3.js → chunk-7KINELPI.js} +110 -48
- package/dist/{chunk-AB7INMR5.js → chunk-7QE3XMRK.js} +15 -14
- package/dist/{chunk-IUJODQKX.js → chunk-AAXZDUOV.js} +15 -14
- package/dist/{chunk-2UJSV2VT.js → chunk-AL672HNE.js} +3 -3
- package/dist/{chunk-WQLMU7VG.js → chunk-ARGMQ3H4.js} +2 -2
- package/dist/{chunk-OU7HLO7I.js → chunk-AUIM2NVH.js} +3 -3
- package/dist/{chunk-RXKTSFDL.js → chunk-BKVOYV6I.js} +24 -32
- package/dist/{chunk-TK2VQQX2.js → chunk-BPIZNB5O.js} +14 -12
- package/dist/{chunk-3LV2NCB6.js → chunk-BPY242XU.js} +6 -4
- package/dist/{chunk-LV4BETUU.js → chunk-BRENJ2BQ.js} +32 -2
- package/dist/{chunk-Y6GBQTBK.js → chunk-CCNDLW7Z.js} +41 -19
- package/dist/{chunk-EXOQP75F.js → chunk-CIRFIL4M.js} +47 -27
- package/dist/{chunk-RBDIYLA5.js → chunk-DAOFNU6J.js} +17 -1
- package/dist/{chunk-4VWJ4LW2.js → chunk-DYWQFQJP.js} +44 -34
- package/dist/{chunk-QZPEGJOM.js → chunk-EMLPOL77.js} +15 -8
- package/dist/{chunk-IUO34HKW.js → chunk-FHGVORFO.js} +26 -22
- package/dist/{chunk-6H7O2OPM.js → chunk-FQ7HTV52.js} +4 -2
- package/dist/{chunk-7DYOELRK.js → chunk-FQMUHRVC.js} +69 -30
- package/dist/{chunk-AFIEPDLX.js → chunk-FT3ZYWET.js} +14 -3
- package/dist/{chunk-ND76YJCN.js → chunk-FUPF2UYQ.js} +35 -11
- package/dist/{chunk-6NFYEQDX.js → chunk-FY5MSZAP.js} +15 -3
- package/dist/{chunk-IEWG6J7C.js → chunk-GCYTI3DE.js} +40 -31
- package/dist/{chunk-GNSFLJAA.js → chunk-GJFAMOGK.js} +3 -3
- package/dist/{chunk-VNSXLA6G.js → chunk-H7KENAZO.js} +16 -12
- package/dist/{chunk-KFNWFNAA.js → chunk-HBPDFCQY.js} +3 -3
- package/dist/{chunk-467TVMQL.js → chunk-HHKO6SKY.js} +2 -2
- package/dist/{chunk-6K2M4VSR.js → chunk-HQQNCY7W.js} +21 -8
- package/dist/{chunk-ZJ3LS7DW.js → chunk-HWX6ZHF3.js} +2 -2
- package/dist/{chunk-Q62FEYK3.js → chunk-ICPJPQ5C.js} +2 -2
- package/dist/{chunk-MVN25IF6.js → chunk-IM6PDDCE.js} +4 -4
- package/dist/{chunk-65WJYYKJ.js → chunk-INE5YJBZ.js} +11 -6
- package/dist/{chunk-EDA6C7MV.js → chunk-J6QROYDA.js} +13 -9
- package/dist/{chunk-3ODS2VGL.js → chunk-J7KJR3R6.js} +116 -96
- package/dist/{chunk-JEUJOX5X.js → chunk-J7TLCB2Q.js} +2 -2
- package/dist/{chunk-GD6L76WD.js → chunk-JRCOYRRH.js} +19 -7
- package/dist/{chunk-G3PF3S7P.js → chunk-K2I2XOZD.js} +9 -9
- package/dist/{chunk-5PDTIBLV.js → chunk-K4EOKJA6.js} +17 -7
- package/dist/{chunk-5SVOCD5W.js → chunk-KGVZ5VGH.js} +10 -7
- package/dist/{chunk-QHI5XVUJ.js → chunk-LBMS4AW6.js} +20 -19
- package/dist/{chunk-FTBZV6NE.js → chunk-LGT3PZCJ.js} +22 -14
- package/dist/{chunk-E7Y3SYKW.js → chunk-LTXOLDUZ.js} +9 -6
- package/dist/{chunk-GTWKD3QT.js → chunk-MUE65OTD.js} +5 -4
- package/dist/{chunk-TRM2J7ZN.js → chunk-MUVJ57EP.js} +10 -14
- package/dist/{chunk-RBHWPDBB.js → chunk-NNS4E7CW.js} +6 -4
- package/dist/{chunk-NNAAJVBU.js → chunk-NR5HCAUD.js} +1 -1
- package/dist/{chunk-NEQ6GJXB.js → chunk-ONU3U4GL.js} +2 -2
- package/dist/{chunk-XEQXCIBC.js → chunk-PRI2OD4E.js} +10 -3
- package/dist/{chunk-U6EQI3U6.js → chunk-QBZYACOG.js} +3 -3
- package/dist/{chunk-5PZT4DQG.js → chunk-QGATPIPX.js} +15 -9
- package/dist/{chunk-YGJZWZTY.js → chunk-QHXCAEMX.js} +7 -4
- package/dist/{chunk-RLFVAKEO.js → chunk-QJMKPUYK.js} +15 -5
- package/dist/{chunk-Z6XJQ6KO.js → chunk-QVENJMNX.js} +2 -2
- package/dist/{chunk-GROLTAWZ.js → chunk-QZX5S6R3.js} +2 -2
- package/dist/{chunk-TMACGPW5.js → chunk-R3YSD62R.js} +3 -3
- package/dist/{chunk-332ZR4QU.js → chunk-REJAIQ5S.js} +4 -4
- package/dist/{chunk-5F5ELR3V.js → chunk-ROOE4R4Y.js} +8 -5
- package/dist/{chunk-XHVV4NVW.js → chunk-RT7ACF77.js} +12 -2
- package/dist/{chunk-GGHRAITI.js → chunk-SMRFPVLQ.js} +3 -3
- package/dist/{chunk-JSSX2SX4.js → chunk-SWSIKFEB.js} +2 -2
- package/dist/{chunk-DY7XLRHK.js → chunk-T4A4TSTJ.js} +14 -15
- package/dist/{chunk-VB4UJ3H2.js → chunk-TJVLKNGR.js} +20 -10
- package/dist/{chunk-FC5I2KXV.js → chunk-TPFKKXCB.js} +3 -3
- package/dist/{chunk-AXW3M6OQ.js → chunk-TTIM6YTT.js} +28 -18
- package/dist/{chunk-WJ7RW65H.js → chunk-UBLHQTLV.js} +13 -12
- package/dist/{chunk-AE7II3E3.js → chunk-UNURMIQO.js} +2 -2
- package/dist/{chunk-PZDBOK2Q.js → chunk-VILVLS7P.js} +5 -3
- package/dist/{chunk-3YSQZ75W.js → chunk-VQOCMUWI.js} +37 -26
- package/dist/{chunk-P6T66CCZ.js → chunk-WBM7ZNDI.js} +3 -2
- package/dist/{chunk-4QZ43D7I.js → chunk-XD6ZYURY.js} +9 -4
- package/dist/{chunk-3JLKYGBQ.js → chunk-YIBAWQGJ.js} +6 -3
- package/dist/{chunk-ZO27FGJS.js → chunk-YTMTPUH4.js} +7 -4
- package/dist/{chunk-6BQFET7X.js → chunk-Z5QVYKR7.js} +11 -3
- package/dist/{chunk-KJGG2JKQ.js → chunk-ZEF5M5MB.js} +52 -45
- package/dist/{chunk-32XPAAET.js → chunk-ZJV7GYR4.js} +3 -3
- package/dist/{chunk-2ILHQOL3.js → chunk-ZNWAYU6N.js} +11 -7
- package/dist/cli.cjs +146 -145
- package/dist/clock.js +16 -22
- package/dist/dgmo-router-X7ZGAPIE.js +86 -0
- package/dist/{dimensions-F7B5C4BJ.js → dimensions-45H6JQEY.js} +6 -6
- package/dist/editor.js +4 -2
- package/dist/element.js +126 -124
- package/dist/element.mjs +952 -492
- package/dist/{flowchart-parser-MY53QWTZ.js → flowchart-parser-UKELHBSB.js} +4 -4
- package/dist/{flowchart-renderer-AQSMEMYF.js → flowchart-renderer-MNCDS7MV.js} +7 -7
- package/dist/highlight.d.ts +21 -1
- package/dist/highlight.js +93 -3
- package/dist/index.js +51 -51
- package/dist/{layout-JDJAEQ3P.js → layout-2L3WMRYU.js} +4 -4
- package/dist/{layout-MUPRALE5.js → layout-A4XWNVID.js} +4 -4
- package/dist/{layout-46366KBT.js → layout-A5UHRWVH.js} +3 -3
- package/dist/{layout-HYZPWAK5.js → layout-GM4UGR7B.js} +4 -3
- package/dist/{layout-CBCLPMSG.js → layout-GQQJXNYH.js} +4 -4
- package/dist/{layout-YVTNOTN4.js → layout-IIE2S5FK.js} +3 -3
- package/dist/{layout-4DIUOX2T.js → layout-VMCRX66I.js} +4 -4
- package/dist/{palettes-PRJ2RI6D.js → palettes-UDLZ2SA4.js} +2 -2
- package/dist/{parser-BKI42XBQ.js → parser-2ECN6JA2.js} +4 -4
- package/dist/{parser-C3D7MVXY.js → parser-4WTIHM5J.js} +3 -3
- package/dist/{parser-5A2UWU6B.js → parser-5H2BTSJQ.js} +3 -3
- package/dist/{parser-OK2ILHRT.js → parser-75KVXUNS.js} +4 -4
- package/dist/{parser-SRVFR7PM.js → parser-774AC53T.js} +4 -4
- package/dist/{parser-BEPSWJAD.js → parser-BE4YCSRU.js} +3 -3
- package/dist/{parser-B77S5SZM.js → parser-CNGUQUQI.js} +3 -3
- package/dist/{parser-2Q2T4C3B.js → parser-DEUUSQIN.js} +7 -7
- package/dist/{parser-5PDYJGWA.js → parser-DQAFLUJB.js} +4 -4
- package/dist/{parser-KKTJ6M3Y.js → parser-EYCKNKQA.js} +5 -5
- package/dist/{parser-UKFFZCFJ.js → parser-FXISIU6A.js} +4 -4
- package/dist/{parser-UMWPLORP.js → parser-GTB4XC7P.js} +5 -5
- package/dist/{parser-Z4TZV2CB.js → parser-GVEPAUSD.js} +4 -4
- package/dist/{parser-AIMHGJRR.js → parser-HSQGTY4G.js} +4 -4
- package/dist/{parser-OUTPNJWC.js → parser-HVKRINUS.js} +3 -3
- package/dist/{parser-JA7JQ7NF.js → parser-J5MIEYO4.js} +5 -5
- package/dist/parser-KMZIXLDZ.js +13 -0
- package/dist/{parser-CDG7CHV5.js → parser-LJHXWSXU.js} +3 -3
- package/dist/{parser-PORDUX5E.js → parser-PT3W72G5.js} +4 -4
- package/dist/{parser-CZOJ7XQ6.js → parser-SBJQDPHL.js} +4 -4
- package/dist/{parser-I6GGFKOQ.js → parser-SUWWWCMX.js} +3 -3
- package/dist/{parser-AZJ25OKK.js → parser-SXDRNZOA.js} +4 -4
- package/dist/parser-UMILOW3M.js +14 -0
- package/dist/{parser-GKLZKEIK.js → parser-UP3AZ367.js} +4 -4
- package/dist/{parser-57ILIFZ2.js → parser-WHPRV3X5.js} +5 -5
- package/dist/{parser-H6ABKHZZ.js → parser-WX3UODSJ.js} +4 -4
- package/dist/{parser-FQ6GZFMR.js → parser-XCIEN3KN.js} +4 -4
- package/dist/{parser-E2RL6JYF.js → parser-XIRTUMVN.js} +5 -5
- package/dist/{parser-3A42DZ72.js → parser-YKCGIG45.js} +3 -3
- package/dist/{parser-EH5VE7ZN.js → parser-YKYMQG3B.js} +4 -4
- package/dist/{parser-6ZKABF5S.js → parser-ZGM2OJ6Y.js} +5 -5
- package/dist/{parser-4RFTKAQX.js → parser-ZL5QUFVH.js} +4 -4
- package/dist/pert.d.ts +2 -2
- package/dist/{renderer-RYR3TJ46.js → renderer-3F7OS2AX.js} +10 -10
- package/dist/{renderer-TGTUABCI.js → renderer-4QB4K7Q3.js} +6 -6
- package/dist/{renderer-GHPZMFU2.js → renderer-5DAKMIU2.js} +3 -3
- package/dist/{renderer-3K3IB7D5.js → renderer-5H4SY7YY.js} +6 -6
- package/dist/{renderer-QIWVHWZO.js → renderer-5PIQPFOX.js} +4 -3
- package/dist/{renderer-NKJ24TEA.js → renderer-6MU37QF5.js} +6 -6
- package/dist/{renderer-QXPP4TA2.js → renderer-AQVMWJ4M.js} +9 -9
- package/dist/{renderer-2AUFT3E2.js → renderer-BDDW6K7N.js} +6 -6
- package/dist/{renderer-OYO67VZK.js → renderer-BNB3VIDY.js} +7 -7
- package/dist/{renderer-QXGN5H3A.js → renderer-CQY6ATOS.js} +5 -5
- package/dist/{renderer-CO2DW7S7.js → renderer-CVW75CXL.js} +9 -9
- package/dist/{renderer-KQB7UGDS.js → renderer-DT4XRFEP.js} +4 -3
- package/dist/{renderer-GQIESYEM.js → renderer-ERHBSTQT.js} +6 -6
- package/dist/{renderer-UV6MI64M.js → renderer-HSHHVYWF.js} +4 -3
- package/dist/{renderer-ARMJBP6C.js → renderer-IDPVUFNB.js} +8 -8
- package/dist/{renderer-QRWACQRI.js → renderer-ILX6BGKR.js} +6 -6
- package/dist/{renderer-F7U3MFCV.js → renderer-JP663HKG.js} +7 -7
- package/dist/{renderer-RGIYOTKJ.js → renderer-KNFTTOBL.js} +8 -8
- package/dist/{renderer-3YNIWF5I.js → renderer-MVUZBESR.js} +5 -5
- package/dist/{renderer-HYGHO4SJ.js → renderer-N4EBR2FV.js} +8 -8
- package/dist/{renderer-3YPZHMOU.js → renderer-NHO46CT2.js} +3 -3
- package/dist/{renderer-SRKDNDFB.js → renderer-NO2QJ5LZ.js} +7 -7
- package/dist/{renderer-2HTNBIF2.js → renderer-OGFV5RXX.js} +8 -8
- package/dist/{renderer-HCKJDFXD.js → renderer-PDLESJMS.js} +9 -9
- package/dist/{renderer-66MERVQ2.js → renderer-T4MTNINC.js} +6 -6
- package/dist/{renderer-RHT4MHFU.js → renderer-TOUGFGTM.js} +7 -7
- package/dist/{renderer-EDJ2O4S5.js → renderer-U3KPD43Y.js} +8 -8
- package/dist/{renderer-4WR6WMVF.js → renderer-X334IJU2.js} +6 -6
- package/dist/{renderer-JC3RDUT7.js → renderer-Y5OAMOCR.js} +6 -6
- package/dist/{renderer-GD2COXVL.js → renderer-YONAKAJU.js} +4 -4
- package/dist/{renderer-TXJFKPOG.js → renderer-YWMI6Y2U.js} +8 -8
- package/dist/{renderer-6RKQPNJI.js → renderer-ZWIH4WDW.js} +7 -7
- package/dist/{renderer-radial-FWABAZHB.js → renderer-radial-7CGZMVMS.js} +7 -7
- package/dist/{state-parser-6T6CNMPX.js → state-parser-BATWAID2.js} +4 -4
- package/dist/{state-renderer-AWZ3ECAX.js → state-renderer-3FKZJ3LP.js} +7 -7
- package/docs/ai-integration.md +15 -19
- package/docs/language-reference.md +13 -11
- package/package.json +1 -1
- package/dist/dgmo-router-Y2VEX46B.js +0 -86
- package/dist/parser-6BJEXUFX.js +0 -13
- package/dist/parser-OK22AC6Y.js +0 -14
|
@@ -18,10 +18,10 @@ import {
|
|
|
18
18
|
import {
|
|
19
19
|
mix,
|
|
20
20
|
valueRampStops
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-WBM7ZNDI.js";
|
|
22
22
|
import {
|
|
23
23
|
tagAttrKey
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-HHKO6SKY.js";
|
|
25
25
|
|
|
26
26
|
// src/utils/legend-d3.ts
|
|
27
27
|
var LEGEND_TEXT_DY = "0.32em";
|
|
@@ -293,4 +293,4 @@ export {
|
|
|
293
293
|
renderLegendD3,
|
|
294
294
|
renderIntegratedLegend
|
|
295
295
|
};
|
|
296
|
-
//# sourceMappingURL=chunk-
|
|
296
|
+
//# sourceMappingURL=chunk-AUIM2NVH.js.map
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
buildSwatches
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3LK5DNED.js";
|
|
4
4
|
import {
|
|
5
5
|
layoutMap,
|
|
6
6
|
mapLegendConfig,
|
|
7
7
|
mapLegendGroups,
|
|
8
8
|
parsePathRings
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ZJV7GYR4.js";
|
|
10
10
|
import {
|
|
11
11
|
renderIntegratedLegend
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-AUIM2NVH.js";
|
|
13
13
|
import {
|
|
14
14
|
parseClock
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-FY5MSZAP.js";
|
|
16
16
|
import {
|
|
17
17
|
fixedParts,
|
|
18
18
|
formatTime,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
import {
|
|
35
35
|
mix,
|
|
36
36
|
themeBaseBg
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-WBM7ZNDI.js";
|
|
38
38
|
|
|
39
39
|
// src/map/renderer.ts
|
|
40
40
|
import * as d3Selection from "d3-selection";
|
|
@@ -72,7 +72,6 @@ function renderClockCards(gCards, layout, resolved, palette, isDark, now, frameW
|
|
|
72
72
|
const hasCoords = Number.isFinite(poi.lat) && Number.isFinite(poi.lon);
|
|
73
73
|
const isFixed = poi.tzFixedOffsetMin !== void 0;
|
|
74
74
|
const sun = !isFixed && hasCoords ? sunLine(now, poi.lat, poi.lon) : null;
|
|
75
|
-
const up = sun ? sun.up : parts.h >= 6 && parts.h < 18;
|
|
76
75
|
const ts = formatTime(parts.h, parts.m, parts.s, hours12);
|
|
77
76
|
const status = workStatus(parts, work);
|
|
78
77
|
const viewerWeekday = WEEKDAY_ABBR[new Date(now).getDay()];
|
|
@@ -80,16 +79,17 @@ function renderClockCards(gCards, layout, resolved, palette, isDark, now, frameW
|
|
|
80
79
|
const line2 = [showWeekday ? parts.weekday : null, status?.text].filter(Boolean).join(" \xB7 ");
|
|
81
80
|
const mainFont = 18;
|
|
82
81
|
const sf = 8;
|
|
83
|
-
const
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
const stackGap = 3;
|
|
89
|
-
const dotGap = 15;
|
|
82
|
+
const advance = (s, f) => [...s].reduce((w, c) => w + f * (c === ":" ? 0.334 : 0.6), 0);
|
|
83
|
+
const mainW = advance(ts.main, mainFont);
|
|
84
|
+
const secW = advance(`:${ts.sec}`, sf);
|
|
85
|
+
const stackW = Math.max(secW, ts.ap ? measureText(ts.ap, sf) : 0);
|
|
86
|
+
const stackGap = 6;
|
|
90
87
|
const padX = 9;
|
|
91
|
-
const
|
|
92
|
-
const
|
|
88
|
+
const iconR = 3.5;
|
|
89
|
+
const iconGap = 5;
|
|
90
|
+
const line2Icon = status ? iconR * 2 + iconGap : 0;
|
|
91
|
+
const line1W = mainW + stackGap + stackW;
|
|
92
|
+
const line2W = line2Icon + measureText(line2, 10.5);
|
|
93
93
|
const cardW = Math.max(line1W, line2W) + padX * 2;
|
|
94
94
|
const cardH = 44;
|
|
95
95
|
const leaderGap = 7;
|
|
@@ -119,27 +119,19 @@ function renderClockCards(gCards, layout, resolved, palette, isDark, now, frameW
|
|
|
119
119
|
const leaderX = clamp(cx, cardLeft + 10, cardLeft + cardW - 10);
|
|
120
120
|
g.append("line").attr("x1", cx).attr("y1", below ? lp.cy + lp.r : lp.cy - lp.r).attr("x2", leaderX).attr("y2", below ? cardTop : cardTop + cardH).attr("stroke", border).attr("stroke-width", 1);
|
|
121
121
|
g.append("rect").attr("x", cardLeft).attr("y", cardTop).attr("width", cardW).attr("height", cardH).attr("rx", 6).attr("fill", cardFill).attr("stroke", border).attr("stroke-width", 1);
|
|
122
|
-
const
|
|
122
|
+
const statusColor = (cls) => cls === "ok" ? sw.ok : cls === "soon" ? sw.soon : sw.off;
|
|
123
123
|
const line1Y = cardTop + 20;
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
const dc = status.cls === "ok" ? sw.ok : status.cls === "soon" ? sw.soon : sw.off;
|
|
127
|
-
if (status.cls === "off") {
|
|
128
|
-
dot.attr("fill", "none").attr("stroke", dc).attr("stroke-width", 1.4);
|
|
129
|
-
} else {
|
|
130
|
-
dot.attr("fill", dc);
|
|
131
|
-
}
|
|
132
|
-
} else {
|
|
133
|
-
dot.attr("fill", up ? sw.day : sw.night);
|
|
134
|
-
}
|
|
135
|
-
const timeX = cardLeft + padX + dotGap;
|
|
136
|
-
g.append("text").attr("data-dgmo-clock-digital-part", "main").attr("x", timeX).attr("y", line1Y).attr("font-family", FONT_FAMILY).attr("fill", palette.text).attr("font-size", mainFont).attr("font-weight", 600).style("font-variant-numeric", "tabular-nums").text(ts.main);
|
|
124
|
+
const timeX = cardLeft + padX;
|
|
125
|
+
g.append("text").attr("data-dgmo-clock-digital-part", "main").attr("x", timeX).attr("y", line1Y).attr("font-family", FONT_FAMILY).attr("fill", palette.text).attr("font-size", mainFont).attr("font-weight", 600).attr("textLength", mainW).attr("lengthAdjust", "spacing").style("font-variant-numeric", "tabular-nums").text(ts.main);
|
|
137
126
|
const stackX = timeX + mainW + stackGap;
|
|
138
127
|
const capTop = line1Y - mainFont * 0.7;
|
|
139
|
-
g.append("text").attr("data-dgmo-clock-digital-part", "sec").attr("x", stackX).attr("y", capTop + sf * 0.72).attr("font-family", FONT_FAMILY).attr("fill", muted).attr("font-size", sf).style("font-variant-numeric", "tabular-nums").text(`:${ts.sec}`);
|
|
128
|
+
g.append("text").attr("data-dgmo-clock-digital-part", "sec").attr("x", stackX).attr("y", capTop + sf * 0.72).attr("font-family", FONT_FAMILY).attr("fill", muted).attr("font-size", sf).attr("textLength", secW).attr("lengthAdjust", "spacing").style("font-variant-numeric", "tabular-nums").text(`:${ts.sec}`);
|
|
140
129
|
g.append("text").attr("data-dgmo-clock-digital-part", "ap").attr("x", stackX).attr("y", line1Y).attr("font-family", FONT_FAMILY).attr("fill", muted).attr("font-size", sf).text(ts.ap);
|
|
141
130
|
const line2Y = cardTop + 36;
|
|
142
|
-
|
|
131
|
+
if (status) {
|
|
132
|
+
g.append("circle").attr("data-dgmo-clock-status-icon", "").attr("cx", cardLeft + padX + iconR).attr("cy", line2Y - 3.5).attr("r", iconR).attr("fill", statusColor(status.cls));
|
|
133
|
+
}
|
|
134
|
+
const l2 = g.append("text").attr("x", cardLeft + padX + line2Icon).attr("y", line2Y).attr("font-family", FONT_FAMILY).attr("font-size", 10.5).attr("fill", muted);
|
|
143
135
|
let needSep = false;
|
|
144
136
|
if (showWeekday) {
|
|
145
137
|
l2.append("tspan").text(parts.weekday);
|
|
@@ -789,4 +781,4 @@ export {
|
|
|
789
781
|
renderMap,
|
|
790
782
|
renderMapForExport
|
|
791
783
|
};
|
|
792
|
-
//# sourceMappingURL=chunk-
|
|
784
|
+
//# sourceMappingURL=chunk-BKVOYV6I.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
renderIntegratedLegend
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-AUIM2NVH.js";
|
|
4
4
|
import {
|
|
5
5
|
getMaxLegendReservedHeight
|
|
6
6
|
} from "./chunk-YAA6IID3.js";
|
|
@@ -20,14 +20,15 @@ import {
|
|
|
20
20
|
} from "./chunk-WCT3NYCV.js";
|
|
21
21
|
import {
|
|
22
22
|
isBlockNode
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-NR5HCAUD.js";
|
|
24
24
|
import {
|
|
25
|
-
mix
|
|
26
|
-
|
|
25
|
+
mix,
|
|
26
|
+
themeBaseBg
|
|
27
|
+
} from "./chunk-WBM7ZNDI.js";
|
|
27
28
|
import {
|
|
28
29
|
resolveTagColor,
|
|
29
30
|
tagAttrKey
|
|
30
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-HHKO6SKY.js";
|
|
31
32
|
|
|
32
33
|
// src/block/renderer.ts
|
|
33
34
|
import * as d3Selection from "d3-selection";
|
|
@@ -223,7 +224,8 @@ function renderBlock(container, parsed, palette, isDark, exportDims, options = {
|
|
|
223
224
|
activeGroup,
|
|
224
225
|
activeKey: activeGroup ? tagAttrKey(activeGroup) : null,
|
|
225
226
|
neutral,
|
|
226
|
-
|
|
227
|
+
fillMode: opts.fillMode,
|
|
228
|
+
isDark,
|
|
227
229
|
onToggle: options.onToggle
|
|
228
230
|
});
|
|
229
231
|
if (legend) {
|
|
@@ -262,7 +264,7 @@ function clipLabel(s, maxWidth, fs) {
|
|
|
262
264
|
}
|
|
263
265
|
var clipCounter = 0;
|
|
264
266
|
function drawItems(g, items, ctx, path = []) {
|
|
265
|
-
const { palette,
|
|
267
|
+
const { palette, fillMode } = ctx;
|
|
266
268
|
for (const it of items) {
|
|
267
269
|
if (it.type === "empty") {
|
|
268
270
|
g.append("rect").attr("x", it.x).attr("y", it.y).attr("width", it.w).attr("height", it.h).attr("rx", 7).attr("fill", "none").attr("stroke", ctx.neutral).attr("stroke-width", 1).attr("stroke-dasharray", "3 4").attr("opacity", 0.7);
|
|
@@ -280,17 +282,17 @@ function drawItems(g, items, ctx, path = []) {
|
|
|
280
282
|
if (v) cell.attr(`data-tag-${ctx.activeKey}`, v);
|
|
281
283
|
}
|
|
282
284
|
if (it.type === "collapsed") {
|
|
283
|
-
const fill2 = color ? solid ? color : mix(color, palette.bg, 12) : palette.surface;
|
|
285
|
+
const fill2 = color ? fillMode === "solid" ? color : fillMode === "outline" ? themeBaseBg(palette, ctx.isDark) : mix(color, palette.bg, 12) : palette.surface;
|
|
284
286
|
const cid = `dgmo-block-clip-${clipCounter++}`;
|
|
285
287
|
cell.append("clipPath").attr("id", cid).append("rect").attr("x", it.x).attr("y", it.y).attr("width", it.w).attr("height", it.h).attr("rx", 10);
|
|
286
288
|
cell.append("rect").attr("x", it.x).attr("y", it.y).attr("width", it.w).attr("height", it.h).attr("rx", 10).attr("fill", fill2).attr("stroke", stroke).attr("stroke-width", 1.5);
|
|
287
289
|
cell.append("text").attr("x", it.x + it.w / 2).attr("y", it.y + it.h / 2 + 4).attr("text-anchor", "middle").attr("font-size", 12.5).attr("font-weight", 700).attr("fill", palette.text).text(clipLabel(it.label ?? "", it.w - 24, 12.5));
|
|
288
|
-
cell.append("rect").attr("x", it.x).attr("y", it.y + it.h - BLOCK_BAR_H).attr("width", it.w).attr("height", BLOCK_BAR_H).attr("fill", solid && color ? palette.text : stroke).attr("clip-path", `url(#${cid})`);
|
|
290
|
+
cell.append("rect").attr("x", it.x).attr("y", it.y + it.h - BLOCK_BAR_H).attr("width", it.w).attr("height", BLOCK_BAR_H).attr("fill", fillMode === "solid" && color ? palette.text : stroke).attr("clip-path", `url(#${cid})`);
|
|
289
291
|
bindToggle(cell, it, ctx, it.h);
|
|
290
292
|
continue;
|
|
291
293
|
}
|
|
292
294
|
if (it.type === "container") {
|
|
293
|
-
const fill2 = color ? solid ? color : mix(color, palette.bg, 7) : palette.surface;
|
|
295
|
+
const fill2 = color ? fillMode === "solid" ? color : fillMode === "outline" ? themeBaseBg(palette, ctx.isDark) : mix(color, palette.bg, 7) : palette.surface;
|
|
294
296
|
cell.append("rect").attr("x", it.x).attr("y", it.y).attr("width", it.w).attr("height", it.h).attr("rx", 10).attr("fill", fill2).attr("stroke", stroke).attr("stroke-width", 1.5);
|
|
295
297
|
const sizeMetric = Math.min(it.w, it.h * 2.5);
|
|
296
298
|
const headerFs = Math.max(
|
|
@@ -305,7 +307,7 @@ function drawItems(g, items, ctx, path = []) {
|
|
|
305
307
|
if (it.inner) drawItems(g, it.inner, ctx, itemPath);
|
|
306
308
|
continue;
|
|
307
309
|
}
|
|
308
|
-
const fill = color ? solid ? mix(color, palette.bg, 80) : mix(color, palette.bg, 14) : palette.bg;
|
|
310
|
+
const fill = color ? fillMode === "solid" ? mix(color, palette.bg, 80) : fillMode === "outline" ? themeBaseBg(palette, ctx.isDark) : mix(color, palette.bg, 14) : palette.bg;
|
|
309
311
|
cell.attr("data-leaf", "true");
|
|
310
312
|
cell.append("rect").attr("x", it.x).attr("y", it.y).attr("width", it.w).attr("height", it.h).attr("rx", 8).attr("fill", fill).attr("stroke", stroke).attr("stroke-width", 1.25);
|
|
311
313
|
cell.append("text").attr("x", it.x + it.w / 2).attr("y", it.y + it.h / 2 + 5).attr("text-anchor", "middle").attr("font-size", 13).attr("font-weight", 600).attr("fill", palette.text).text(clipLabel(it.label ?? "", it.w - 16, 13));
|
|
@@ -359,4 +361,4 @@ export {
|
|
|
359
361
|
renderBlock,
|
|
360
362
|
authoredCollapsedIds
|
|
361
363
|
};
|
|
362
|
-
//# sourceMappingURL=chunk-
|
|
364
|
+
//# sourceMappingURL=chunk-BPIZNB5O.js.map
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
stripDefaultModifier,
|
|
12
12
|
tagAttrKey,
|
|
13
13
|
validateTagGroupNames
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-HHKO6SKY.js";
|
|
15
15
|
import {
|
|
16
16
|
parseInArrowLabel
|
|
17
17
|
} from "./chunk-FFUN5D66.js";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
splitNameAndMeta,
|
|
28
28
|
warnUnknownMetaKeys,
|
|
29
29
|
withTagAliases
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-BRENJ2BQ.js";
|
|
31
31
|
import {
|
|
32
32
|
formatDgmoError,
|
|
33
33
|
makeDgmoError,
|
|
@@ -65,7 +65,9 @@ var VALID_SHAPES = /* @__PURE__ */ new Set([
|
|
|
65
65
|
var KNOWN_C4_OPTIONS = /* @__PURE__ */ new Set(["layout", "active-tag"]);
|
|
66
66
|
var KNOWN_C4_BOOLEANS = /* @__PURE__ */ new Set([
|
|
67
67
|
"direction-tb",
|
|
68
|
-
"
|
|
68
|
+
"fill-tint",
|
|
69
|
+
"fill-solid",
|
|
70
|
+
"fill-outline",
|
|
69
71
|
"no-title"
|
|
70
72
|
]);
|
|
71
73
|
var ALL_CHART_TYPES = [
|
|
@@ -804,4 +806,4 @@ function validateDeploymentRefs(result, knownNames, pushWarning) {
|
|
|
804
806
|
export {
|
|
805
807
|
parseC4
|
|
806
808
|
};
|
|
807
|
-
//# sourceMappingURL=chunk-
|
|
809
|
+
//# sourceMappingURL=chunk-BPY242XU.js.map
|
|
@@ -268,10 +268,34 @@ function extractColor(label, palette, diagnostics, line) {
|
|
|
268
268
|
}
|
|
269
269
|
var OPTION_NOCOLON_RE = /^([a-z][a-z0-9-]*)\s+(.+)$/i;
|
|
270
270
|
var GLOBAL_BOOLEANS = /* @__PURE__ */ new Set([
|
|
271
|
-
"
|
|
271
|
+
"fill-tint",
|
|
272
|
+
"fill-solid",
|
|
273
|
+
"fill-outline",
|
|
272
274
|
"no-title",
|
|
273
275
|
"no-notes"
|
|
274
276
|
]);
|
|
277
|
+
var FILL_FAMILY_TOKENS = /* @__PURE__ */ new Set([
|
|
278
|
+
"fill-tint",
|
|
279
|
+
"fill-solid",
|
|
280
|
+
"fill-outline"
|
|
281
|
+
]);
|
|
282
|
+
function fillModeFromToken(token) {
|
|
283
|
+
switch (token.trim().toLowerCase()) {
|
|
284
|
+
case "fill-solid":
|
|
285
|
+
return "solid";
|
|
286
|
+
case "fill-outline":
|
|
287
|
+
return "outline";
|
|
288
|
+
case "fill-tint":
|
|
289
|
+
return "tint";
|
|
290
|
+
default:
|
|
291
|
+
return null;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
function fillModeFromOptions(options) {
|
|
295
|
+
if (options["fill-solid"] === "on") return "solid";
|
|
296
|
+
if (options["fill-outline"] === "on") return "outline";
|
|
297
|
+
return void 0;
|
|
298
|
+
}
|
|
275
299
|
function recognizeGlobalBoolean(token) {
|
|
276
300
|
const t = token.trim().toLowerCase();
|
|
277
301
|
return GLOBAL_BOOLEANS.has(t) ? t : null;
|
|
@@ -279,6 +303,9 @@ function recognizeGlobalBoolean(token) {
|
|
|
279
303
|
function tryParseSharedOption(line, options) {
|
|
280
304
|
const key = recognizeGlobalBoolean(line);
|
|
281
305
|
if (key) {
|
|
306
|
+
if (FILL_FAMILY_TOKENS.has(key)) {
|
|
307
|
+
for (const t of FILL_FAMILY_TOKENS) delete options[t];
|
|
308
|
+
}
|
|
282
309
|
options[key] = "on";
|
|
283
310
|
return true;
|
|
284
311
|
}
|
|
@@ -668,6 +695,9 @@ export {
|
|
|
668
695
|
measureIndent,
|
|
669
696
|
extractColor,
|
|
670
697
|
OPTION_NOCOLON_RE,
|
|
698
|
+
FILL_FAMILY_TOKENS,
|
|
699
|
+
fillModeFromToken,
|
|
700
|
+
fillModeFromOptions,
|
|
671
701
|
tryParseSharedOption,
|
|
672
702
|
parseFirstLine,
|
|
673
703
|
normalizeNumericToken,
|
|
@@ -681,4 +711,4 @@ export {
|
|
|
681
711
|
splitNameAndMeta,
|
|
682
712
|
warnUnknownMetaKeys
|
|
683
713
|
};
|
|
684
|
-
//# sourceMappingURL=chunk-
|
|
714
|
+
//# sourceMappingURL=chunk-BRENJ2BQ.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-3HDBAXF5.js";
|
|
4
4
|
import {
|
|
5
5
|
renderIntegratedLegend
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-AUIM2NVH.js";
|
|
7
7
|
import {
|
|
8
8
|
getMaxLegendReservedHeight
|
|
9
9
|
} from "./chunk-YAA6IID3.js";
|
|
@@ -22,15 +22,16 @@ import {
|
|
|
22
22
|
measureText
|
|
23
23
|
} from "./chunk-WCT3NYCV.js";
|
|
24
24
|
import {
|
|
25
|
+
contrastText,
|
|
25
26
|
getSeriesColors,
|
|
26
27
|
mix,
|
|
27
28
|
shapeFill,
|
|
28
29
|
themeBaseBg
|
|
29
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-WBM7ZNDI.js";
|
|
30
31
|
import {
|
|
31
32
|
resolveTagColor,
|
|
32
33
|
tagAttrKey
|
|
33
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-HHKO6SKY.js";
|
|
34
35
|
import {
|
|
35
36
|
resolveColor
|
|
36
37
|
} from "./chunk-TLVIHFRO.js";
|
|
@@ -628,7 +629,7 @@ function clip(s, maxW, fs) {
|
|
|
628
629
|
}
|
|
629
630
|
return lo <= 0 ? "" : s.slice(0, lo) + "\u2026";
|
|
630
631
|
}
|
|
631
|
-
function paintForAccent(palette, isDark, accent) {
|
|
632
|
+
function paintForAccent(palette, isDark, accent, fillMode) {
|
|
632
633
|
const base = themeBaseBg(palette, isDark);
|
|
633
634
|
return {
|
|
634
635
|
accent,
|
|
@@ -639,12 +640,14 @@ function paintForAccent(palette, isDark, accent) {
|
|
|
639
640
|
hair: mix(palette.text, base, 34),
|
|
640
641
|
wire: mix(palette.text, base, 30),
|
|
641
642
|
track: mix(palette.border, base, 55),
|
|
642
|
-
|
|
643
|
+
// §1.9 fill family rides through shapeFill: solid ⇒ raw accent,
|
|
644
|
+
// outline ⇒ theme base bg (accent stays on the stroke), absent ⇒ 25% tint.
|
|
645
|
+
tint: shapeFill(palette, accent, isDark, { mode: fillMode })
|
|
643
646
|
};
|
|
644
647
|
}
|
|
645
|
-
function paintFor(palette, isDark, sideColor) {
|
|
648
|
+
function paintFor(palette, isDark, sideColor, fillMode) {
|
|
646
649
|
const accent = sideColor && resolveColor(sideColor, palette) || sideColor || getSeriesColors(palette)[0];
|
|
647
|
-
return paintForAccent(palette, isDark, accent);
|
|
650
|
+
return paintForAccent(palette, isDark, accent, fillMode);
|
|
648
651
|
}
|
|
649
652
|
function resolveBracketLegend(parsed, palette) {
|
|
650
653
|
const activeTag = parsed.activeTag;
|
|
@@ -740,7 +743,8 @@ function renderBracket(container, parsed, palette, isDark, exportDims) {
|
|
|
740
743
|
});
|
|
741
744
|
}
|
|
742
745
|
const baseAccent = parsed.accentColor ?? resolveColor("blue", palette) ?? getSeriesColors(palette)[0];
|
|
743
|
-
const
|
|
746
|
+
const fillMode = parsed.fillMode;
|
|
747
|
+
const basePaint = paintForAccent(palette, isDark, baseAccent, fillMode);
|
|
744
748
|
const sideColorByLabel = /* @__PURE__ */ new Map();
|
|
745
749
|
for (const s of parsed.sides) sideColorByLabel.set(s.label, s.color);
|
|
746
750
|
const sideBarH = layout.sideLabels.length ? 30 : 0;
|
|
@@ -753,11 +757,20 @@ function renderBracket(container, parsed, palette, isDark, exportDims) {
|
|
|
753
757
|
);
|
|
754
758
|
const top = covered ? bandTop : 2;
|
|
755
759
|
const c = resolveColor(col.color, palette) ?? col.color;
|
|
756
|
-
root.append("rect").attr("x", col.x - BOX_W / 2 - 10).attr("y", top).attr("width", BOX_W + 20).attr("height", Math.max(0, layout.height - top)).attr("rx", 10).attr(
|
|
760
|
+
root.append("rect").attr("x", col.x - BOX_W / 2 - 10).attr("y", top).attr("width", BOX_W + 20).attr("height", Math.max(0, layout.height - top)).attr("rx", 10).attr(
|
|
761
|
+
"fill",
|
|
762
|
+
fillMode === "outline" ? themeBaseBg(palette, isDark) : mix(c, palette.bg, isDark ? 12 : 8)
|
|
763
|
+
).call((sel) => {
|
|
764
|
+
if (fillMode === "outline")
|
|
765
|
+
sel.attr("stroke", mix(c, palette.bg, 35)).attr("stroke-width", 1);
|
|
766
|
+
});
|
|
757
767
|
}
|
|
758
768
|
for (const s of layout.sideLabels) {
|
|
759
769
|
const c = s.color ? resolveColor(s.color, palette) ?? s.color : basePaint.accent;
|
|
760
|
-
root.append("rect").attr("x", s.x0 - 8).attr("y", 2).attr("width", s.x1 - s.x0 + 16).attr("height", 24).attr("rx", 8).attr(
|
|
770
|
+
root.append("rect").attr("x", s.x0 - 8).attr("y", 2).attr("width", s.x1 - s.x0 + 16).attr("height", 24).attr("rx", 8).attr(
|
|
771
|
+
"fill",
|
|
772
|
+
fillMode === "outline" ? themeBaseBg(palette, isDark) : mix(c, palette.bg, isDark ? 20 : 14)
|
|
773
|
+
).attr("stroke", fillMode === "outline" ? c : mix(c, palette.bg, 55)).attr("stroke-width", 1);
|
|
761
774
|
root.append("text").attr("x", (s.x0 + s.x1) / 2).attr("y", 18).attr("text-anchor", "middle").attr("font-size", 13).attr("font-weight", 800).attr("letter-spacing", 0.3).attr("fill", c).text(clip(s.label, s.x1 - s.x0, 13));
|
|
762
775
|
}
|
|
763
776
|
for (const col of layout.columns) {
|
|
@@ -772,7 +785,7 @@ function renderBracket(container, parsed, palette, isDark, exportDims) {
|
|
|
772
785
|
drawConnector(root, m, m.botFrom, m.y + HALF_SPAN2, basePaint);
|
|
773
786
|
}
|
|
774
787
|
for (const m of layout.matches) {
|
|
775
|
-
const sidePaint = m.side && sideColorByLabel.get(m.side) ? paintFor(palette, isDark, sideColorByLabel.get(m.side)) : basePaint;
|
|
788
|
+
const sidePaint = m.side && sideColorByLabel.get(m.side) ? paintFor(palette, isDark, sideColorByLabel.get(m.side), fillMode) : basePaint;
|
|
776
789
|
const topSeed = seedByName.get(m.top ?? "") ?? null;
|
|
777
790
|
const botSeed = seedByName.get(m.bot ?? "") ?? null;
|
|
778
791
|
let homeName = m.home;
|
|
@@ -810,7 +823,8 @@ function renderBracket(container, parsed, palette, isDark, exportDims) {
|
|
|
810
823
|
palette,
|
|
811
824
|
isDark,
|
|
812
825
|
m,
|
|
813
|
-
activeKey
|
|
826
|
+
activeKey,
|
|
827
|
+
fillMode
|
|
814
828
|
);
|
|
815
829
|
drawBox(
|
|
816
830
|
root,
|
|
@@ -822,7 +836,8 @@ function renderBracket(container, parsed, palette, isDark, exportDims) {
|
|
|
822
836
|
palette,
|
|
823
837
|
isDark,
|
|
824
838
|
m,
|
|
825
|
-
activeKey
|
|
839
|
+
activeKey,
|
|
840
|
+
fillMode
|
|
826
841
|
);
|
|
827
842
|
if (isUpset) drawUpset(root, m, sidePaint);
|
|
828
843
|
if (m.commentary.length) drawCommentary(root, m, palette);
|
|
@@ -841,10 +856,10 @@ function drawConnector(g, m, from, toCy, paint) {
|
|
|
841
856
|
const d = from.yA !== from.yB ? `M ${childEdge} ${from.yA} H ${midX} M ${childEdge} ${from.yB} H ${midX} M ${midX} ${vLo} V ${vHi} M ${midX} ${toCy} H ${parentEdge}` : `M ${childEdge} ${from.y} H ${midX} V ${toCy} H ${parentEdge}`;
|
|
842
857
|
g.append("path").attr("d", d).attr("fill", "none").attr("stroke", paint.wire).attr("stroke-width", 1.5);
|
|
843
858
|
}
|
|
844
|
-
function drawBox(g, cx, cy, name, info, sidePaint, palette, isDark, m, activeKey) {
|
|
859
|
+
function drawBox(g, cx, cy, name, info, sidePaint, palette, isDark, m, activeKey, fillMode) {
|
|
845
860
|
const x = cx - BOX_W / 2;
|
|
846
861
|
const y = cy - BOX_H / 2;
|
|
847
|
-
const paint = info.tagColor ? paintForAccent(palette, isDark, info.tagColor) : sidePaint;
|
|
862
|
+
const paint = info.tagColor ? paintForAccent(palette, isDark, info.tagColor, fillMode) : sidePaint;
|
|
848
863
|
const cell = g.append("g").attr("class", "dgmo-bracket-box");
|
|
849
864
|
if (m.lineNumber !== null) cell.attr("data-line-number", m.lineNumber);
|
|
850
865
|
if (activeKey && info.tagValue)
|
|
@@ -878,22 +893,29 @@ function drawBox(g, cx, cy, name, info, sidePaint, palette, isDark, m, activeKey
|
|
|
878
893
|
} else if (info.pending) {
|
|
879
894
|
stroke = mix(paint.accent, paint.hair, 50);
|
|
880
895
|
}
|
|
896
|
+
const onSolid = fillMode === "solid" && (info.isChampion || info.isWinner) ? contrastText(
|
|
897
|
+
paint.tint,
|
|
898
|
+
palette.textOnFillLight,
|
|
899
|
+
palette.textOnFillDark
|
|
900
|
+
) : null;
|
|
901
|
+
if (onSolid) textColor = onSolid;
|
|
902
|
+
const gutterColor = onSolid ?? paint.muted;
|
|
881
903
|
const rect = cell.append("rect").attr("x", x).attr("y", y).attr("width", BOX_W).attr("height", BOX_H).attr("rx", 6).attr("fill", fill).attr("stroke", stroke).attr("stroke-width", sw);
|
|
882
904
|
if (dash) rect.attr("stroke-dasharray", dash);
|
|
883
905
|
let leftPad = 11;
|
|
884
906
|
if (info.seed !== null) {
|
|
885
|
-
cell.append("text").attr("x", x + 9).attr("y", cy + 4).attr("text-anchor", "start").attr("font-size", 10).attr("font-weight", 700).attr("fill",
|
|
907
|
+
cell.append("text").attr("x", x + 9).attr("y", cy + 4).attr("text-anchor", "start").attr("font-size", 10).attr("font-weight", 700).attr("fill", gutterColor).text(info.seed);
|
|
886
908
|
leftPad = 9 + Math.max(12, measureText(String(info.seed), 10)) + 6;
|
|
887
909
|
}
|
|
888
910
|
let rightPad = 11;
|
|
889
911
|
if (info.score) rightPad += 20;
|
|
890
912
|
if (info.isHome) {
|
|
891
|
-
drawHome(cell, x + BOX_W - rightPad - 6, cy,
|
|
913
|
+
drawHome(cell, x + BOX_W - rightPad - 6, cy, gutterColor);
|
|
892
914
|
rightPad += 16;
|
|
893
915
|
}
|
|
894
916
|
cell.append("text").attr("x", x + leftPad).attr("y", cy + 4).attr("text-anchor", "start").attr("font-size", 12.5).attr("font-weight", weight).attr("fill", textColor).text(clip(isTBD ? "TBD" : name, BOX_W - leftPad - rightPad, 12.5));
|
|
895
917
|
if (info.score) {
|
|
896
|
-
cell.append("text").attr("x", x + BOX_W - 11).attr("y", cy + 4).attr("text-anchor", "end").attr("font-size", 12).attr("font-weight", info.isWinner ? 700 : 500).attr("fill", info.isWinner ? textColor :
|
|
918
|
+
cell.append("text").attr("x", x + BOX_W - 11).attr("y", cy + 4).attr("text-anchor", "end").attr("font-size", 12).attr("font-weight", info.isWinner ? 700 : 500).attr("fill", info.isWinner ? textColor : gutterColor).text(info.score);
|
|
897
919
|
}
|
|
898
920
|
}
|
|
899
921
|
function drawHome(cell, hx, cy, color) {
|
|
@@ -937,4 +959,4 @@ export {
|
|
|
937
959
|
renderBracket,
|
|
938
960
|
renderBracketForExport
|
|
939
961
|
};
|
|
940
|
-
//# sourceMappingURL=chunk-
|
|
962
|
+
//# sourceMappingURL=chunk-CCNDLW7Z.js.map
|