@glyphjs/components 0.7.0 → 0.8.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/dist/index.cjs +168 -156
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +168 -156
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.cjs
CHANGED
|
@@ -33,6 +33,18 @@ var dagre__default = /*#__PURE__*/_interopDefault(dagre);
|
|
|
33
33
|
var katex__default = /*#__PURE__*/_interopDefault(katex);
|
|
34
34
|
|
|
35
35
|
// src/callout/index.ts
|
|
36
|
+
var CALLOUT_BORDER_MAP = {
|
|
37
|
+
info: "var(--glyph-callout-info-border, var(--glyph-color-info, #38bdf8))",
|
|
38
|
+
warning: "var(--glyph-callout-warning-border, var(--glyph-color-warning, #d97706))",
|
|
39
|
+
error: "var(--glyph-callout-error-border, var(--glyph-color-error, #dc2626))",
|
|
40
|
+
tip: "var(--glyph-callout-tip-border, var(--glyph-color-success, #16a34a))"
|
|
41
|
+
};
|
|
42
|
+
var CALLOUT_BG_MAP = {
|
|
43
|
+
info: "var(--glyph-callout-info-bg, rgba(56, 189, 248, 0.08))",
|
|
44
|
+
warning: "var(--glyph-callout-warning-bg, rgba(217, 119, 6, 0.08))",
|
|
45
|
+
error: "var(--glyph-callout-error-bg, rgba(220, 38, 38, 0.08))",
|
|
46
|
+
tip: "var(--glyph-callout-tip-bg, rgba(22, 163, 74, 0.08))"
|
|
47
|
+
};
|
|
36
48
|
var CALLOUT_ICONS = {
|
|
37
49
|
info: "\u2139\uFE0F",
|
|
38
50
|
warning: "\u26A0\uFE0F",
|
|
@@ -48,8 +60,8 @@ var CALLOUT_LABELS = {
|
|
|
48
60
|
function Callout({ data }) {
|
|
49
61
|
const { type, title, content } = data;
|
|
50
62
|
const containerStyle11 = {
|
|
51
|
-
backgroundColor:
|
|
52
|
-
borderLeft: `4px solid
|
|
63
|
+
backgroundColor: CALLOUT_BG_MAP[type],
|
|
64
|
+
borderLeft: `4px solid ${CALLOUT_BORDER_MAP[type]}`,
|
|
53
65
|
borderRadius: "var(--glyph-radius-md, 0.1875rem)",
|
|
54
66
|
padding: "var(--glyph-spacing-md, 1rem)",
|
|
55
67
|
margin: "var(--glyph-spacing-sm, 0.5rem) 0",
|
|
@@ -119,26 +131,16 @@ var DEFAULT_WIDTH = 600;
|
|
|
119
131
|
var DEFAULT_HEIGHT = 400;
|
|
120
132
|
var MARGIN = { top: 20, right: 30, bottom: 50, left: 60 };
|
|
121
133
|
var COLOR_SCHEME = [
|
|
122
|
-
"#00d4aa",
|
|
123
|
-
|
|
124
|
-
"#
|
|
125
|
-
|
|
126
|
-
"#
|
|
127
|
-
|
|
128
|
-
"#
|
|
129
|
-
|
|
130
|
-
"#
|
|
131
|
-
|
|
132
|
-
"#84cc16",
|
|
133
|
-
// lime
|
|
134
|
-
"#f472b6",
|
|
135
|
-
// rose
|
|
136
|
-
"#fb923c",
|
|
137
|
-
// orange
|
|
138
|
-
"#818cf8",
|
|
139
|
-
// indigo
|
|
140
|
-
"#38bdf8"
|
|
141
|
-
// sky
|
|
134
|
+
"var(--glyph-palette-color-1, #00d4aa)",
|
|
135
|
+
"var(--glyph-palette-color-2, #b44dff)",
|
|
136
|
+
"var(--glyph-palette-color-3, #22c55e)",
|
|
137
|
+
"var(--glyph-palette-color-4, #e040fb)",
|
|
138
|
+
"var(--glyph-palette-color-5, #00e5ff)",
|
|
139
|
+
"var(--glyph-palette-color-6, #84cc16)",
|
|
140
|
+
"var(--glyph-palette-color-7, #f472b6)",
|
|
141
|
+
"var(--glyph-palette-color-8, #fb923c)",
|
|
142
|
+
"var(--glyph-palette-color-9, #818cf8)",
|
|
143
|
+
"var(--glyph-palette-color-10, #38bdf8)"
|
|
142
144
|
];
|
|
143
145
|
function getNumericValue(d, key) {
|
|
144
146
|
const v = d[key];
|
|
@@ -160,7 +162,7 @@ function renderAxes(g, xScale, yScale, xAxisConfig, yAxisConfig, innerWidth, inn
|
|
|
160
162
|
d32__namespace.axisBottom(xScale)
|
|
161
163
|
);
|
|
162
164
|
}
|
|
163
|
-
xAxisG.selectAll("text, line, path").attr("fill", "var(--glyph-text, #1a2035)").attr("stroke", "var(--glyph-grid, #
|
|
165
|
+
xAxisG.selectAll("text, line, path").attr("fill", "var(--glyph-text, #1a2035)").attr("stroke", "var(--glyph-grid, var(--glyph-border, #d0d8e4))");
|
|
164
166
|
if (xAxisConfig?.label) {
|
|
165
167
|
g.append("text").attr("class", "x-label").attr("x", innerWidth / 2).attr("y", innerHeight + MARGIN.bottom - 6).attr("text-anchor", "middle").attr("fill", "var(--glyph-text, #1a2035)").attr("font-size", "12px").text(inlineToText(xAxisConfig.label));
|
|
166
168
|
}
|
|
@@ -168,7 +170,7 @@ function renderAxes(g, xScale, yScale, xAxisConfig, yAxisConfig, innerWidth, inn
|
|
|
168
170
|
yAxisG.call(
|
|
169
171
|
d32__namespace.axisLeft(yScale)
|
|
170
172
|
);
|
|
171
|
-
yAxisG.selectAll("text, line, path").attr("fill", "var(--glyph-text, #1a2035)").attr("stroke", "var(--glyph-grid, #
|
|
173
|
+
yAxisG.selectAll("text, line, path").attr("fill", "var(--glyph-text, #1a2035)").attr("stroke", "var(--glyph-grid, var(--glyph-border, #d0d8e4))");
|
|
172
174
|
if (yAxisConfig?.label) {
|
|
173
175
|
g.append("text").attr("class", "y-label").attr("transform", "rotate(-90)").attr("x", -innerHeight / 2).attr("y", -MARGIN.left + 14).attr("text-anchor", "middle").attr("fill", "var(--glyph-text, #1a2035)").attr("font-size", "12px").text(inlineToText(yAxisConfig.label));
|
|
174
176
|
}
|
|
@@ -207,7 +209,7 @@ function renderOHLCSeries(g, seriesData, xScale, xScalePoint, yScale, innerWidth
|
|
|
207
209
|
const low = getNumericValue(d, "low");
|
|
208
210
|
const cx = xScalePoint(d);
|
|
209
211
|
const isBullish = close >= open;
|
|
210
|
-
const candleColor = isBullish ? "var(--glyph-chart-bullish, #22c55e)" : "var(--glyph-chart-bearish, #f87171)";
|
|
212
|
+
const candleColor = isBullish ? "var(--glyph-chart-bullish, var(--glyph-color-success, #22c55e))" : "var(--glyph-chart-bearish, var(--glyph-color-error, #f87171))";
|
|
211
213
|
g.append("line").attr("x1", cx).attr("x2", cx).attr("y1", yScale(high)).attr("y2", yScale(low)).attr("stroke", candleColor).attr("stroke-width", 1);
|
|
212
214
|
const bodyTop = yScale(Math.max(open, close));
|
|
213
215
|
const bodyBottom = yScale(Math.min(open, close));
|
|
@@ -614,11 +616,11 @@ var CONNECTOR_WIDTH = "2px";
|
|
|
614
616
|
function colorForStatus(status) {
|
|
615
617
|
switch (status) {
|
|
616
618
|
case "pending":
|
|
617
|
-
return "var(--glyph-steps-pending-color, #
|
|
619
|
+
return "var(--glyph-steps-pending-color, var(--glyph-text-muted, #6b7a94))";
|
|
618
620
|
case "active":
|
|
619
|
-
return "var(--glyph-steps-active-color, #00d4aa)";
|
|
621
|
+
return "var(--glyph-steps-active-color, var(--glyph-accent, #00d4aa))";
|
|
620
622
|
case "completed":
|
|
621
|
-
return "var(--glyph-steps-completed-color, #22c55e)";
|
|
623
|
+
return "var(--glyph-steps-completed-color, var(--glyph-color-success, #22c55e))";
|
|
622
624
|
}
|
|
623
625
|
}
|
|
624
626
|
function itemStyle(isLast) {
|
|
@@ -637,7 +639,7 @@ function connectorStyle(status) {
|
|
|
637
639
|
top: INDICATOR_SIZE,
|
|
638
640
|
bottom: 0,
|
|
639
641
|
width: CONNECTOR_WIDTH,
|
|
640
|
-
backgroundColor: status === "completed" ? "var(--glyph-steps-completed-color, #22c55e)" : "var(--glyph-steps-connector-color, #d0d8e4)"
|
|
642
|
+
backgroundColor: status === "completed" ? "var(--glyph-steps-completed-color, var(--glyph-color-success, #22c55e))" : "var(--glyph-steps-connector-color, var(--glyph-border, #d0d8e4))"
|
|
641
643
|
};
|
|
642
644
|
}
|
|
643
645
|
function indicatorStyle(status) {
|
|
@@ -667,14 +669,14 @@ var bodyStyle = {
|
|
|
667
669
|
function titleStyle(status) {
|
|
668
670
|
return {
|
|
669
671
|
fontWeight: 600,
|
|
670
|
-
color: status === "pending" ? "var(--glyph-steps-pending-color, #
|
|
672
|
+
color: status === "pending" ? "var(--glyph-steps-pending-color, var(--glyph-text-muted, #6b7a94))" : "var(--glyph-text, #1a2035)"
|
|
671
673
|
};
|
|
672
674
|
}
|
|
673
675
|
function contentStyle(status) {
|
|
674
676
|
return {
|
|
675
677
|
marginTop: "var(--glyph-spacing-xs, 0.25rem)",
|
|
676
678
|
fontSize: "0.9em",
|
|
677
|
-
color: status === "pending" ? "var(--glyph-steps-pending-color, #
|
|
679
|
+
color: status === "pending" ? "var(--glyph-steps-pending-color, var(--glyph-text-muted, #6b7a94))" : "var(--glyph-text-muted, #7a8599)"
|
|
678
680
|
};
|
|
679
681
|
}
|
|
680
682
|
|
|
@@ -723,9 +725,9 @@ function TableAggregationFooter({
|
|
|
723
725
|
{
|
|
724
726
|
style: {
|
|
725
727
|
padding: "var(--glyph-table-cell-padding, 8px 12px)",
|
|
726
|
-
borderTop: "2px solid var(--glyph-table-border, #d0d8e4)",
|
|
728
|
+
borderTop: "2px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
727
729
|
fontWeight: "bold",
|
|
728
|
-
background: "var(--glyph-table-footer-bg, #e8ecf3)",
|
|
730
|
+
background: "var(--glyph-table-footer-bg, var(--glyph-surface, #e8ecf3))",
|
|
729
731
|
color: "var(--glyph-table-footer-color, inherit)"
|
|
730
732
|
},
|
|
731
733
|
children: agg ? computeAggregation(rows, col.key, agg.fn) : ""
|
|
@@ -759,8 +761,8 @@ function TableHead({
|
|
|
759
761
|
style: {
|
|
760
762
|
padding: "var(--glyph-table-cell-padding, 8px 12px)",
|
|
761
763
|
textAlign: "left",
|
|
762
|
-
borderBottom: "2px solid var(--glyph-table-border, #d0d8e4)",
|
|
763
|
-
background: "var(--glyph-table-header-bg, #e8ecf3)",
|
|
764
|
+
borderBottom: "2px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
765
|
+
background: "var(--glyph-table-header-bg, var(--glyph-surface, #e8ecf3))",
|
|
764
766
|
color: "var(--glyph-table-header-color, inherit)",
|
|
765
767
|
cursor: col.sortable ? "pointer" : "default",
|
|
766
768
|
userSelect: col.sortable ? "none" : void 0,
|
|
@@ -790,7 +792,7 @@ function TableHead({
|
|
|
790
792
|
style: {
|
|
791
793
|
width: "100%",
|
|
792
794
|
padding: "4px 6px",
|
|
793
|
-
border: "1px solid var(--glyph-table-border, #d0d8e4)",
|
|
795
|
+
border: "1px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
794
796
|
borderRadius: "3px",
|
|
795
797
|
fontSize: "inherit",
|
|
796
798
|
boxSizing: "border-box",
|
|
@@ -934,7 +936,7 @@ function Table({
|
|
|
934
936
|
style: {
|
|
935
937
|
width: "100%",
|
|
936
938
|
borderCollapse: "collapse",
|
|
937
|
-
border: "1px solid var(--glyph-table-border, #d0d8e4)",
|
|
939
|
+
border: "1px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
938
940
|
fontFamily: "var(--glyph-font-body, inherit)",
|
|
939
941
|
fontSize: isCompact ? "0.8125rem" : "var(--glyph-table-font-size, 0.9rem)"
|
|
940
942
|
},
|
|
@@ -955,14 +957,14 @@ function Table({
|
|
|
955
957
|
"tr",
|
|
956
958
|
{
|
|
957
959
|
style: {
|
|
958
|
-
background: rowIdx % 2 === 0 ? "var(--glyph-table-row-bg, transparent)" : "var(--glyph-table-row-alt-bg, #f4f6fa)"
|
|
960
|
+
background: rowIdx % 2 === 0 ? "var(--glyph-table-row-bg, transparent)" : "var(--glyph-table-row-alt-bg, var(--glyph-surface-raised, #f4f6fa))"
|
|
959
961
|
},
|
|
960
962
|
children: columns.map((col) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
961
963
|
"td",
|
|
962
964
|
{
|
|
963
965
|
style: {
|
|
964
966
|
padding: "var(--glyph-table-cell-padding, 8px 12px)",
|
|
965
|
-
borderBottom: "1px solid var(--glyph-table-border, #d0d8e4)",
|
|
967
|
+
borderBottom: "1px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
966
968
|
color: "var(--glyph-table-cell-color, inherit)"
|
|
967
969
|
},
|
|
968
970
|
children: String(row[col.key] ?? "")
|
|
@@ -1139,14 +1141,14 @@ var MARKER_RADIUS = 8;
|
|
|
1139
1141
|
var LINE_THICKNESS = 2;
|
|
1140
1142
|
var EVENT_SPACING_MIN = 80;
|
|
1141
1143
|
var TYPE_PALETTE = [
|
|
1142
|
-
"var(--glyph-timeline-color-1, #00d4aa)",
|
|
1143
|
-
"var(--glyph-timeline-color-2, #b44dff)",
|
|
1144
|
-
"var(--glyph-timeline-color-3, #22c55e)",
|
|
1145
|
-
"var(--glyph-timeline-color-4, #e040fb)",
|
|
1146
|
-
"var(--glyph-timeline-color-5, #00e5ff)",
|
|
1147
|
-
"var(--glyph-timeline-color-6, #84cc16)",
|
|
1148
|
-
"var(--glyph-timeline-color-7, #f472b6)",
|
|
1149
|
-
"var(--glyph-timeline-color-8, #fb923c)"
|
|
1144
|
+
"var(--glyph-timeline-color-1, var(--glyph-palette-color-1, #00d4aa))",
|
|
1145
|
+
"var(--glyph-timeline-color-2, var(--glyph-palette-color-2, #b44dff))",
|
|
1146
|
+
"var(--glyph-timeline-color-3, var(--glyph-palette-color-3, #22c55e))",
|
|
1147
|
+
"var(--glyph-timeline-color-4, var(--glyph-palette-color-4, #e040fb))",
|
|
1148
|
+
"var(--glyph-timeline-color-5, var(--glyph-palette-color-5, #00e5ff))",
|
|
1149
|
+
"var(--glyph-timeline-color-6, var(--glyph-palette-color-6, #84cc16))",
|
|
1150
|
+
"var(--glyph-timeline-color-7, var(--glyph-palette-color-7, #f472b6))",
|
|
1151
|
+
"var(--glyph-timeline-color-8, var(--glyph-palette-color-8, #fb923c))"
|
|
1150
1152
|
];
|
|
1151
1153
|
function parseDate(raw) {
|
|
1152
1154
|
const d = new Date(raw);
|
|
@@ -1201,7 +1203,7 @@ function Timeline({ data }) {
|
|
|
1201
1203
|
top: 0,
|
|
1202
1204
|
bottom: 0,
|
|
1203
1205
|
width: LINE_THICKNESS,
|
|
1204
|
-
backgroundColor: "var(--glyph-timeline-line, #d0d8e4)",
|
|
1206
|
+
backgroundColor: "var(--glyph-timeline-line, var(--glyph-border, #d0d8e4))",
|
|
1205
1207
|
transform: "translateX(-50%)"
|
|
1206
1208
|
} : {
|
|
1207
1209
|
position: "absolute",
|
|
@@ -1209,7 +1211,7 @@ function Timeline({ data }) {
|
|
|
1209
1211
|
left: 0,
|
|
1210
1212
|
right: 0,
|
|
1211
1213
|
height: LINE_THICKNESS,
|
|
1212
|
-
backgroundColor: "var(--glyph-timeline-line, #d0d8e4)",
|
|
1214
|
+
backgroundColor: "var(--glyph-timeline-line, var(--glyph-border, #d0d8e4))",
|
|
1213
1215
|
transform: "translateY(-50%)"
|
|
1214
1216
|
};
|
|
1215
1217
|
const inner = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -1246,7 +1248,7 @@ function Timeline({ data }) {
|
|
|
1246
1248
|
{
|
|
1247
1249
|
style: {
|
|
1248
1250
|
fontSize: "var(--glyph-timeline-date-size, 0.75rem)",
|
|
1249
|
-
color: "var(--glyph-timeline-date-color, #
|
|
1251
|
+
color: "var(--glyph-timeline-date-color, var(--glyph-text-muted, #6b7a94))",
|
|
1250
1252
|
fontWeight: 600
|
|
1251
1253
|
},
|
|
1252
1254
|
children: formatDate(pe.event.date)
|
|
@@ -1268,7 +1270,7 @@ function Timeline({ data }) {
|
|
|
1268
1270
|
{
|
|
1269
1271
|
style: {
|
|
1270
1272
|
fontSize: "var(--glyph-timeline-desc-size, 0.8rem)",
|
|
1271
|
-
color: "var(--glyph-timeline-desc-color, #
|
|
1273
|
+
color: "var(--glyph-timeline-desc-color, var(--glyph-text-muted, #6b7a94))",
|
|
1272
1274
|
marginTop: 2
|
|
1273
1275
|
},
|
|
1274
1276
|
children: /* @__PURE__ */ jsxRuntime.jsx(runtime.RichText, { content: pe.event.description })
|
|
@@ -1342,13 +1344,13 @@ function connectorStyle2(_pe, isVertical) {
|
|
|
1342
1344
|
return {
|
|
1343
1345
|
flex: "0 0 20px",
|
|
1344
1346
|
height: LINE_THICKNESS,
|
|
1345
|
-
backgroundColor: "var(--glyph-timeline-line, #d0d8e4)"
|
|
1347
|
+
backgroundColor: "var(--glyph-timeline-line, var(--glyph-border, #d0d8e4))"
|
|
1346
1348
|
};
|
|
1347
1349
|
}
|
|
1348
1350
|
return {
|
|
1349
1351
|
flex: "0 0 20px",
|
|
1350
1352
|
width: LINE_THICKNESS,
|
|
1351
|
-
backgroundColor: "var(--glyph-timeline-line, #d0d8e4)"
|
|
1353
|
+
backgroundColor: "var(--glyph-timeline-line, var(--glyph-border, #d0d8e4))"
|
|
1352
1354
|
};
|
|
1353
1355
|
}
|
|
1354
1356
|
function labelStyle(pe, isVertical) {
|
|
@@ -1822,7 +1824,7 @@ function InteractionOverlay({
|
|
|
1822
1824
|
width,
|
|
1823
1825
|
height,
|
|
1824
1826
|
pointerEvents: "none",
|
|
1825
|
-
border: "2px solid var(--glyph-interaction-active-border, #0a9d7c)",
|
|
1827
|
+
border: "2px solid var(--glyph-interaction-active-border, var(--glyph-accent, #0a9d7c))",
|
|
1826
1828
|
borderRadius: "4px"
|
|
1827
1829
|
},
|
|
1828
1830
|
"aria-hidden": "true"
|
|
@@ -1847,8 +1849,8 @@ var TOOLTIP_STYLE = {
|
|
|
1847
1849
|
bottom: "12px",
|
|
1848
1850
|
right: "12px",
|
|
1849
1851
|
padding: "6px 10px",
|
|
1850
|
-
backgroundColor: "var(--glyph-interaction-tooltip-bg, rgba(26, 32, 53, 0.9))",
|
|
1851
|
-
color: "var(--glyph-interaction-tooltip-text, #f4f6fa)",
|
|
1852
|
+
backgroundColor: "var(--glyph-interaction-tooltip-bg, var(--glyph-tooltip-bg, rgba(26, 32, 53, 0.9)))",
|
|
1853
|
+
color: "var(--glyph-interaction-tooltip-text, var(--glyph-tooltip-text, #f4f6fa))",
|
|
1852
1854
|
borderRadius: "4px",
|
|
1853
1855
|
fontSize: "12px",
|
|
1854
1856
|
fontFamily: "Inter, system-ui, sans-serif",
|
|
@@ -1868,8 +1870,8 @@ var ACTIVATION_OVERLAY_STYLE = {
|
|
|
1868
1870
|
};
|
|
1869
1871
|
var ACTIVATION_TEXT_STYLE = {
|
|
1870
1872
|
padding: "12px 20px",
|
|
1871
|
-
backgroundColor: "var(--glyph-interaction-tooltip-bg, rgba(26, 32, 53, 0.9))",
|
|
1872
|
-
color: "var(--glyph-interaction-tooltip-text, #f4f6fa)",
|
|
1873
|
+
backgroundColor: "var(--glyph-interaction-tooltip-bg, var(--glyph-tooltip-bg, rgba(26, 32, 53, 0.9)))",
|
|
1874
|
+
color: "var(--glyph-interaction-tooltip-text, var(--glyph-tooltip-text, #f4f6fa))",
|
|
1873
1875
|
borderRadius: "6px",
|
|
1874
1876
|
fontSize: "14px",
|
|
1875
1877
|
fontFamily: "Inter, system-ui, sans-serif",
|
|
@@ -1952,28 +1954,18 @@ var BUTTON_STYLE = {
|
|
|
1952
1954
|
boxShadow: "0 2px 4px rgba(0, 0, 0, 0.1)"
|
|
1953
1955
|
};
|
|
1954
1956
|
var GROUP_PALETTE = [
|
|
1955
|
-
"#00d4aa",
|
|
1956
|
-
|
|
1957
|
-
"#
|
|
1958
|
-
|
|
1959
|
-
"#
|
|
1960
|
-
|
|
1961
|
-
"#
|
|
1962
|
-
|
|
1963
|
-
"#
|
|
1964
|
-
|
|
1965
|
-
"#84cc16",
|
|
1966
|
-
// lime
|
|
1967
|
-
"#f472b6",
|
|
1968
|
-
// rose
|
|
1969
|
-
"#fb923c",
|
|
1970
|
-
// orange
|
|
1971
|
-
"#818cf8",
|
|
1972
|
-
// indigo
|
|
1973
|
-
"#38bdf8"
|
|
1974
|
-
// sky
|
|
1957
|
+
"var(--glyph-palette-color-1, #00d4aa)",
|
|
1958
|
+
"var(--glyph-palette-color-2, #b44dff)",
|
|
1959
|
+
"var(--glyph-palette-color-3, #22c55e)",
|
|
1960
|
+
"var(--glyph-palette-color-4, #e040fb)",
|
|
1961
|
+
"var(--glyph-palette-color-5, #00e5ff)",
|
|
1962
|
+
"var(--glyph-palette-color-6, #84cc16)",
|
|
1963
|
+
"var(--glyph-palette-color-7, #f472b6)",
|
|
1964
|
+
"var(--glyph-palette-color-8, #fb923c)",
|
|
1965
|
+
"var(--glyph-palette-color-9, #818cf8)",
|
|
1966
|
+
"var(--glyph-palette-color-10, #38bdf8)"
|
|
1975
1967
|
];
|
|
1976
|
-
var DEFAULT_NODE_COLOR = "#00d4aa";
|
|
1968
|
+
var DEFAULT_NODE_COLOR = "var(--glyph-palette-color-1, #00d4aa)";
|
|
1977
1969
|
function getGroupColor(group, groupIndex) {
|
|
1978
1970
|
if (!group) return GROUP_PALETTE[0];
|
|
1979
1971
|
let idx = groupIndex.get(group);
|
|
@@ -2004,7 +1996,7 @@ function renderGraph(svgElement, layout, groupIndex, outgoingRefs, onNavigate, z
|
|
|
2004
1996
|
const height = Math.max(layout.height, 200);
|
|
2005
1997
|
svg.attr("viewBox", `0 0 ${width} ${height}`);
|
|
2006
1998
|
const defs = svg.append("defs");
|
|
2007
|
-
defs.append("marker").attr("id", ARROW_MARKER_ID).attr("viewBox", "0 0 10 10").attr("refX", 10).attr("refY", 5).attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 Z").attr("fill", "var(--glyph-edge-color, #
|
|
1999
|
+
defs.append("marker").attr("id", ARROW_MARKER_ID).attr("viewBox", "0 0 10 10").attr("refX", 10).attr("refY", 5).attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 Z").attr("fill", "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))");
|
|
2008
2000
|
const container = svgElement.parentElement ?? svgElement;
|
|
2009
2001
|
const nodeRadius = getThemeVar(container, "--glyph-node-radius", "3");
|
|
2010
2002
|
const nodeStrokeWidth = getThemeVar(container, "--glyph-node-stroke-width", "1.5");
|
|
@@ -2023,11 +2015,14 @@ function renderGraph(svgElement, layout, groupIndex, outgoingRefs, onNavigate, z
|
|
|
2023
2015
|
const edgeGroup = root.append("g").attr("class", "glyph-graph-edges");
|
|
2024
2016
|
for (const edge of layout.edges) {
|
|
2025
2017
|
const edgeG = edgeGroup.append("g").attr("class", "glyph-graph-edge");
|
|
2026
|
-
edgeG.append("path").attr("d", lineGen(edge.points) ?? "").attr("fill", "none").attr(
|
|
2018
|
+
edgeG.append("path").attr("d", lineGen(edge.points) ?? "").attr("fill", "none").attr(
|
|
2019
|
+
"stroke",
|
|
2020
|
+
edge.style?.["stroke"] ?? "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))"
|
|
2021
|
+
).attr("stroke-width", edge.style?.["stroke-width"] ?? nodeStrokeWidth).attr("marker-end", `url(#${ARROW_MARKER_ID})`).attr("stroke-dasharray", edge.type === "dashed" ? "5,5" : null);
|
|
2027
2022
|
if (edge.label) {
|
|
2028
2023
|
const mid = edge.points[Math.floor(edge.points.length / 2)];
|
|
2029
2024
|
if (mid) {
|
|
2030
|
-
edgeG.append("text").attr("x", mid.x).attr("y", mid.y - 8).attr("text-anchor", "middle").attr("font-size", "11px").attr("fill", "var(--glyph-edge-color, #
|
|
2025
|
+
edgeG.append("text").attr("x", mid.x).attr("y", mid.y - 8).attr("text-anchor", "middle").attr("font-size", "11px").attr("fill", "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))").text(inlineToText(edge.label));
|
|
2031
2026
|
}
|
|
2032
2027
|
}
|
|
2033
2028
|
}
|
|
@@ -2038,7 +2033,7 @@ function renderGraph(svgElement, layout, groupIndex, outgoingRefs, onNavigate, z
|
|
|
2038
2033
|
const isNavigable = navigableNodes.has(node.id);
|
|
2039
2034
|
const nodeX = node.x - node.width / 2;
|
|
2040
2035
|
const nodeY = node.y - node.height / 2;
|
|
2041
|
-
const defaultStroke = d32__namespace.color(color3)?.darker(0.5)?.toString() ?? "var(--glyph-edge-color, #
|
|
2036
|
+
const defaultStroke = d32__namespace.color(color3)?.darker(0.5)?.toString() ?? "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))";
|
|
2042
2037
|
if (node.type === "circle") {
|
|
2043
2038
|
nodeG.append("circle").attr("cx", node.x).attr("cy", node.y).attr("r", Math.min(node.width, node.height) / 2).attr("fill", node.style?.["fill"] ?? color3).attr("stroke", node.style?.["stroke"] ?? defaultStroke).attr("stroke-width", node.style?.["stroke-width"] ?? nodeStrokeWidth).attr("opacity", nodeFillOpacity);
|
|
2044
2039
|
} else {
|
|
@@ -2269,19 +2264,19 @@ function drawCrowsFoot(g, x, y, angle, symbol) {
|
|
|
2269
2264
|
if (symbol === "N" || symbol === "M") {
|
|
2270
2265
|
const cx = x + Math.cos(angle) * len;
|
|
2271
2266
|
const cy = y + Math.sin(angle) * len;
|
|
2272
|
-
g.append("line").attr("x1", x).attr("y1", y).attr("x2", cx).attr("y2", cy).attr("stroke", "var(--glyph-relation-line, #
|
|
2267
|
+
g.append("line").attr("x1", x).attr("y1", y).attr("x2", cx).attr("y2", cy).attr("stroke", "var(--glyph-relation-line, var(--glyph-border, #d0d8e4))").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2273
2268
|
const lx = x + Math.cos(angle + spread) * len;
|
|
2274
2269
|
const ly = y + Math.sin(angle + spread) * len;
|
|
2275
|
-
g.append("line").attr("x1", x).attr("y1", y).attr("x2", lx).attr("y2", ly).attr("stroke", "var(--glyph-relation-line, #
|
|
2270
|
+
g.append("line").attr("x1", x).attr("y1", y).attr("x2", lx).attr("y2", ly).attr("stroke", "var(--glyph-relation-line, var(--glyph-border, #d0d8e4))").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2276
2271
|
const rx = x + Math.cos(angle - spread) * len;
|
|
2277
2272
|
const ry = y + Math.sin(angle - spread) * len;
|
|
2278
|
-
g.append("line").attr("x1", x).attr("y1", y).attr("x2", rx).attr("y2", ry).attr("stroke", "var(--glyph-relation-line, #
|
|
2273
|
+
g.append("line").attr("x1", x).attr("y1", y).attr("x2", rx).attr("y2", ry).attr("stroke", "var(--glyph-relation-line, var(--glyph-border, #d0d8e4))").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2279
2274
|
} else {
|
|
2280
2275
|
const perpAngle = angle + Math.PI / 2;
|
|
2281
2276
|
const halfLen = 8;
|
|
2282
2277
|
const tx = x + Math.cos(angle) * 6;
|
|
2283
2278
|
const ty = y + Math.sin(angle) * 6;
|
|
2284
|
-
g.append("line").attr("x1", tx - Math.cos(perpAngle) * halfLen).attr("y1", ty - Math.sin(perpAngle) * halfLen).attr("x2", tx + Math.cos(perpAngle) * halfLen).attr("y2", ty + Math.sin(perpAngle) * halfLen).attr("stroke", "var(--glyph-relation-line, #
|
|
2279
|
+
g.append("line").attr("x1", tx - Math.cos(perpAngle) * halfLen).attr("y1", ty - Math.sin(perpAngle) * halfLen).attr("x2", tx + Math.cos(perpAngle) * halfLen).attr("y2", ty + Math.sin(perpAngle) * halfLen).attr("stroke", "var(--glyph-relation-line, var(--glyph-border, #d0d8e4))").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2285
2280
|
}
|
|
2286
2281
|
}
|
|
2287
2282
|
function renderRelation(svgElement, layout, zoomBehavior) {
|
|
@@ -2300,7 +2295,7 @@ function renderRelation(svgElement, layout, zoomBehavior) {
|
|
|
2300
2295
|
const edgeGroup = root.append("g").attr("class", "glyph-relation-edges");
|
|
2301
2296
|
for (const rel of layout.relationships) {
|
|
2302
2297
|
const edgeG = edgeGroup.append("g").attr("class", "glyph-relation-edge");
|
|
2303
|
-
edgeG.append("path").attr("d", lineGen(rel.points) ?? "").attr("fill", "none").attr("stroke", "var(--glyph-relation-line, #
|
|
2298
|
+
edgeG.append("path").attr("d", lineGen(rel.points) ?? "").attr("fill", "none").attr("stroke", "var(--glyph-relation-line, var(--glyph-border, #d0d8e4))").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2304
2299
|
const { fromSymbol, toSymbol } = parseCardinality(rel.cardinality);
|
|
2305
2300
|
const p0 = rel.points[0];
|
|
2306
2301
|
const p1 = rel.points[1];
|
|
@@ -2317,7 +2312,7 @@ function renderRelation(svgElement, layout, zoomBehavior) {
|
|
|
2317
2312
|
if (rel.label) {
|
|
2318
2313
|
const mid = rel.points[Math.floor(rel.points.length / 2)];
|
|
2319
2314
|
if (mid) {
|
|
2320
|
-
edgeG.append("text").attr("x", mid.x).attr("y", mid.y - 10).attr("text-anchor", "middle").attr("font-size", "11px").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-label, #6b7a94)").text(inlineToText(rel.label));
|
|
2315
|
+
edgeG.append("text").attr("x", mid.x).attr("y", mid.y - 10).attr("text-anchor", "middle").attr("font-size", "11px").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-label, var(--glyph-text-muted, #6b7a94))").text(inlineToText(rel.label));
|
|
2321
2316
|
}
|
|
2322
2317
|
}
|
|
2323
2318
|
const pFirst = rel.points[0];
|
|
@@ -2325,14 +2320,14 @@ function renderRelation(svgElement, layout, zoomBehavior) {
|
|
|
2325
2320
|
if (pFirst && pSecond) {
|
|
2326
2321
|
const fromLabelX = pFirst.x + (pSecond.x - pFirst.x) * 0.15;
|
|
2327
2322
|
const fromLabelY = pFirst.y + (pSecond.y - pFirst.y) * 0.15 - 10;
|
|
2328
|
-
edgeG.append("text").attr("x", fromLabelX).attr("y", fromLabelY).attr("text-anchor", "middle").attr("font-size", "10px").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-cardinality, #6b7a94)").text(fromSymbol);
|
|
2323
|
+
edgeG.append("text").attr("x", fromLabelX).attr("y", fromLabelY).attr("text-anchor", "middle").attr("font-size", "10px").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-cardinality, var(--glyph-text-muted, #6b7a94))").text(fromSymbol);
|
|
2329
2324
|
}
|
|
2330
2325
|
const pEnd = rel.points[rel.points.length - 1];
|
|
2331
2326
|
const pBeforeEnd = rel.points[rel.points.length - 2];
|
|
2332
2327
|
if (pEnd && pBeforeEnd) {
|
|
2333
2328
|
const toLabelX = pEnd.x + (pBeforeEnd.x - pEnd.x) * 0.15;
|
|
2334
2329
|
const toLabelY = pEnd.y + (pBeforeEnd.y - pEnd.y) * 0.15 - 10;
|
|
2335
|
-
edgeG.append("text").attr("x", toLabelX).attr("y", toLabelY).attr("text-anchor", "middle").attr("font-size", "10px").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-cardinality, #6b7a94)").text(toSymbol);
|
|
2330
|
+
edgeG.append("text").attr("x", toLabelX).attr("y", toLabelY).attr("text-anchor", "middle").attr("font-size", "10px").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-cardinality, var(--glyph-text-muted, #6b7a94))").text(toSymbol);
|
|
2336
2331
|
}
|
|
2337
2332
|
}
|
|
2338
2333
|
const entityGroup = root.append("g").attr("class", "glyph-relation-entities");
|
|
@@ -2341,24 +2336,24 @@ function renderRelation(svgElement, layout, zoomBehavior) {
|
|
|
2341
2336
|
const x = entity.x - entity.width / 2;
|
|
2342
2337
|
const y = entity.y - entity.height / 2;
|
|
2343
2338
|
const attrs = entity.attributes ?? [];
|
|
2344
|
-
entityG.append("rect").attr("x", x).attr("y", y).attr("width", entity.width).attr("height", entity.height).attr("rx", 4).attr("ry", 4).attr("fill", "var(--glyph-relation-entity-bg, #f4f6fa)").attr("stroke", "var(--glyph-relation-entity-border, #a8b5c8)").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2339
|
+
entityG.append("rect").attr("x", x).attr("y", y).attr("width", entity.width).attr("height", entity.height).attr("rx", 4).attr("ry", 4).attr("fill", "var(--glyph-relation-entity-bg, var(--glyph-surface-raised, #f4f6fa))").attr("stroke", "var(--glyph-relation-entity-border, var(--glyph-border-strong, #a8b5c8))").attr("stroke-width", "var(--glyph-node-stroke-width, 1.5)");
|
|
2345
2340
|
const headerHeight = ENTITY_HEADER_HEIGHT;
|
|
2346
|
-
entityG.append("rect").attr("x", x).attr("y", y).attr("width", entity.width).attr("height", headerHeight).attr("rx", 4).attr("ry", 4).attr("fill", "var(--glyph-relation-header-bg, #
|
|
2347
|
-
entityG.append("rect").attr("x", x).attr("y", y + headerHeight - 4).attr("width", entity.width).attr("height", 4).attr("fill", "var(--glyph-relation-header-bg, #
|
|
2348
|
-
entityG.append("text").attr("x", entity.x).attr("y", y + headerHeight / 2).attr("dy", "0.35em").attr("text-anchor", "middle").attr("font-size", "13px").attr("font-weight", "bold").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-header-text, #fff)").text(inlineToText(entity.label));
|
|
2341
|
+
entityG.append("rect").attr("x", x).attr("y", y).attr("width", entity.width).attr("height", headerHeight).attr("rx", 4).attr("ry", 4).attr("fill", "var(--glyph-relation-header-bg, var(--glyph-accent, #0a9d7c))");
|
|
2342
|
+
entityG.append("rect").attr("x", x).attr("y", y + headerHeight - 4).attr("width", entity.width).attr("height", 4).attr("fill", "var(--glyph-relation-header-bg, var(--glyph-accent, #0a9d7c))");
|
|
2343
|
+
entityG.append("text").attr("x", entity.x).attr("y", y + headerHeight / 2).attr("dy", "0.35em").attr("text-anchor", "middle").attr("font-size", "13px").attr("font-weight", "bold").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-relation-header-text, var(--glyph-text-on-accent, #fff))").text(inlineToText(entity.label));
|
|
2349
2344
|
if (attrs.length > 0) {
|
|
2350
|
-
entityG.append("line").attr("x1", x).attr("y1", y + headerHeight).attr("x2", x + entity.width).attr("y2", y + headerHeight).attr("stroke", "var(--glyph-relation-entity-border, #a8b5c8)").attr("stroke-width", 1);
|
|
2345
|
+
entityG.append("line").attr("x1", x).attr("y1", y + headerHeight).attr("x2", x + entity.width).attr("y2", y + headerHeight).attr("stroke", "var(--glyph-relation-entity-border, var(--glyph-border-strong, #a8b5c8))").attr("stroke-width", 1);
|
|
2351
2346
|
}
|
|
2352
2347
|
for (let i = 0; i < attrs.length; i++) {
|
|
2353
2348
|
const attr = attrs[i];
|
|
2354
2349
|
if (!attr) continue;
|
|
2355
2350
|
const attrY = y + headerHeight + i * ENTITY_ATTR_HEIGHT + ENTITY_ATTR_HEIGHT / 2 + 4;
|
|
2356
|
-
const textEl = entityG.append("text").attr("x", x + ENTITY_PADDING).attr("y", attrY).attr("dy", "0.35em").attr("font-size", "12px").attr("font-family", "system-ui, -apple-system, monospace").attr("fill", "var(--glyph-relation-attr-text, #1a2035)");
|
|
2351
|
+
const textEl = entityG.append("text").attr("x", x + ENTITY_PADDING).attr("y", attrY).attr("dy", "0.35em").attr("font-size", "12px").attr("font-family", "system-ui, -apple-system, monospace").attr("fill", "var(--glyph-relation-attr-text, var(--glyph-text, #1a2035))");
|
|
2357
2352
|
const nameSpan = textEl.append("tspan").text(inlineToText(attr.name));
|
|
2358
2353
|
if (attr.primaryKey) {
|
|
2359
2354
|
nameSpan.attr("font-weight", "bold").attr("text-decoration", "underline");
|
|
2360
2355
|
}
|
|
2361
|
-
textEl.append("tspan").attr("fill", "var(--glyph-relation-attr-type, #6b7a94)").text(`: ${attr.type}`);
|
|
2356
|
+
textEl.append("tspan").attr("fill", "var(--glyph-relation-attr-type, var(--glyph-text-muted, #6b7a94))").text(`: ${attr.type}`);
|
|
2362
2357
|
}
|
|
2363
2358
|
}
|
|
2364
2359
|
}
|
|
@@ -2440,6 +2435,11 @@ var relationDefinition = {
|
|
|
2440
2435
|
schema: schemas.relationSchema,
|
|
2441
2436
|
render: Relation
|
|
2442
2437
|
};
|
|
2438
|
+
var KPI_COLOR_MAP = {
|
|
2439
|
+
positive: "var(--glyph-kpi-positive, var(--glyph-color-success, #16a34a))",
|
|
2440
|
+
negative: "var(--glyph-kpi-negative, var(--glyph-color-error, #dc2626))",
|
|
2441
|
+
neutral: "var(--glyph-kpi-neutral, var(--glyph-text-muted, #6b7a94))"
|
|
2442
|
+
};
|
|
2443
2443
|
var TREND_SYMBOLS = {
|
|
2444
2444
|
up: "\u25B2",
|
|
2445
2445
|
down: "\u25BC",
|
|
@@ -2522,7 +2522,7 @@ function Kpi({ data, block, container }) {
|
|
|
2522
2522
|
const deltaStyle = {
|
|
2523
2523
|
fontSize: "0.875rem",
|
|
2524
2524
|
marginTop: "var(--glyph-spacing-xs, 0.25rem)",
|
|
2525
|
-
color:
|
|
2525
|
+
color: KPI_COLOR_MAP[sentiment]
|
|
2526
2526
|
};
|
|
2527
2527
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { role: "group", "aria-label": buildAriaLabel(metric), style: cardStyle2, children: [
|
|
2528
2528
|
/* @__PURE__ */ jsxRuntime.jsx("div", { style: labelStyle4, children: /* @__PURE__ */ jsxRuntime.jsx(runtime.RichText, { content: metric.label }) }),
|
|
@@ -2673,7 +2673,10 @@ function renderValue(value) {
|
|
|
2673
2673
|
"span",
|
|
2674
2674
|
{
|
|
2675
2675
|
"aria-label": "Supported",
|
|
2676
|
-
style: {
|
|
2676
|
+
style: {
|
|
2677
|
+
color: "var(--glyph-comparison-yes, var(--glyph-color-success, #16a34a))",
|
|
2678
|
+
fontSize: "1.25rem"
|
|
2679
|
+
},
|
|
2677
2680
|
children: "\u2713"
|
|
2678
2681
|
}
|
|
2679
2682
|
);
|
|
@@ -2682,7 +2685,10 @@ function renderValue(value) {
|
|
|
2682
2685
|
"span",
|
|
2683
2686
|
{
|
|
2684
2687
|
"aria-label": "Not supported",
|
|
2685
|
-
style: {
|
|
2688
|
+
style: {
|
|
2689
|
+
color: "var(--glyph-comparison-no, var(--glyph-color-error, #dc2626))",
|
|
2690
|
+
fontSize: "1.25rem"
|
|
2691
|
+
},
|
|
2686
2692
|
children: "\u2717"
|
|
2687
2693
|
}
|
|
2688
2694
|
);
|
|
@@ -2691,7 +2697,10 @@ function renderValue(value) {
|
|
|
2691
2697
|
"span",
|
|
2692
2698
|
{
|
|
2693
2699
|
"aria-label": "Partially supported",
|
|
2694
|
-
style: {
|
|
2700
|
+
style: {
|
|
2701
|
+
color: "var(--glyph-comparison-partial, var(--glyph-color-warning, #d97706))",
|
|
2702
|
+
fontSize: "1.25rem"
|
|
2703
|
+
},
|
|
2695
2704
|
children: "\u25D0"
|
|
2696
2705
|
}
|
|
2697
2706
|
);
|
|
@@ -2716,7 +2725,7 @@ function Comparison({
|
|
|
2716
2725
|
const tableStyle2 = {
|
|
2717
2726
|
width: "100%",
|
|
2718
2727
|
borderCollapse: "collapse",
|
|
2719
|
-
border: "1px solid var(--glyph-table-border, #d0d8e4)",
|
|
2728
|
+
border: "1px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
2720
2729
|
borderRadius: "var(--glyph-radius-md, 0.5rem)",
|
|
2721
2730
|
overflow: "hidden",
|
|
2722
2731
|
fontSize: isCompact ? "0.8125rem" : "0.875rem"
|
|
@@ -2725,8 +2734,8 @@ function Comparison({
|
|
|
2725
2734
|
padding: cellPadding,
|
|
2726
2735
|
textAlign: "center",
|
|
2727
2736
|
fontWeight: 600,
|
|
2728
|
-
background: "var(--glyph-table-header-bg, #e8ecf3)",
|
|
2729
|
-
borderBottom: "2px solid var(--glyph-table-border, #d0d8e4)",
|
|
2737
|
+
background: "var(--glyph-table-header-bg, var(--glyph-surface, #e8ecf3))",
|
|
2738
|
+
borderBottom: "2px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
2730
2739
|
color: "var(--glyph-heading, #0a0e1a)"
|
|
2731
2740
|
};
|
|
2732
2741
|
const featureThStyle = {
|
|
@@ -2737,14 +2746,14 @@ function Comparison({
|
|
|
2737
2746
|
padding: cellPadding,
|
|
2738
2747
|
textAlign: "left",
|
|
2739
2748
|
fontWeight: 600,
|
|
2740
|
-
borderBottom: "1px solid var(--glyph-table-border, #d0d8e4)",
|
|
2749
|
+
borderBottom: "1px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
2741
2750
|
fontSize: "0.8125rem"
|
|
2742
2751
|
};
|
|
2743
2752
|
const cellStyle2 = (rowIndex) => ({
|
|
2744
2753
|
padding: cellPadding,
|
|
2745
2754
|
textAlign: "center",
|
|
2746
|
-
borderBottom: "1px solid var(--glyph-table-border, #d0d8e4)",
|
|
2747
|
-
background: rowIndex % 2 === 1 ? "var(--glyph-table-row-alt-bg, transparent)" : "transparent"
|
|
2755
|
+
borderBottom: "1px solid var(--glyph-table-border, var(--glyph-border, #d0d8e4))",
|
|
2756
|
+
background: rowIndex % 2 === 1 ? "var(--glyph-table-row-alt-bg, var(--glyph-surface-raised, transparent))" : "transparent"
|
|
2748
2757
|
});
|
|
2749
2758
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { id: baseId, role: "region", "aria-label": title ?? "Comparison", style: containerStyle11, children: [
|
|
2750
2759
|
title && /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -2807,7 +2816,7 @@ function Comparison({
|
|
|
2807
2816
|
scope: "row",
|
|
2808
2817
|
style: {
|
|
2809
2818
|
...rowThStyle,
|
|
2810
|
-
background: rowIndex % 2 === 1 ? "var(--glyph-table-row-alt-bg, transparent)" : "transparent"
|
|
2819
|
+
background: rowIndex % 2 === 1 ? "var(--glyph-table-row-alt-bg, var(--glyph-surface-raised, transparent))" : "transparent"
|
|
2811
2820
|
},
|
|
2812
2821
|
children: feature.name
|
|
2813
2822
|
}
|
|
@@ -2946,8 +2955,9 @@ function CodeDiff({ data, block }) {
|
|
|
2946
2955
|
return void 0;
|
|
2947
2956
|
}
|
|
2948
2957
|
function rowColor(kind) {
|
|
2949
|
-
if (kind === "add")
|
|
2950
|
-
|
|
2958
|
+
if (kind === "add")
|
|
2959
|
+
return "var(--glyph-codediff-add-color, var(--glyph-color-success, #16a34a))";
|
|
2960
|
+
if (kind === "del") return "var(--glyph-codediff-del-color, var(--glyph-color-error, #dc2626))";
|
|
2951
2961
|
return void 0;
|
|
2952
2962
|
}
|
|
2953
2963
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { id: baseId, role: "region", "aria-label": summary, style: containerStyle11, children: [
|
|
@@ -4074,21 +4084,20 @@ function renderIcon(g, iconName, x, y, size = 20) {
|
|
|
4074
4084
|
|
|
4075
4085
|
// src/architecture/render.ts
|
|
4076
4086
|
var NODE_PALETTE = [
|
|
4077
|
-
"#00d4aa",
|
|
4078
|
-
"#b44dff",
|
|
4079
|
-
"#22c55e",
|
|
4080
|
-
"#e040fb",
|
|
4081
|
-
"#00e5ff",
|
|
4082
|
-
"#84cc16",
|
|
4083
|
-
"#f472b6",
|
|
4084
|
-
"#fb923c",
|
|
4085
|
-
"#818cf8",
|
|
4086
|
-
"#38bdf8"
|
|
4087
|
+
"var(--glyph-palette-color-1, #00d4aa)",
|
|
4088
|
+
"var(--glyph-palette-color-2, #b44dff)",
|
|
4089
|
+
"var(--glyph-palette-color-3, #22c55e)",
|
|
4090
|
+
"var(--glyph-palette-color-4, #e040fb)",
|
|
4091
|
+
"var(--glyph-palette-color-5, #00e5ff)",
|
|
4092
|
+
"var(--glyph-palette-color-6, #84cc16)",
|
|
4093
|
+
"var(--glyph-palette-color-7, #f472b6)",
|
|
4094
|
+
"var(--glyph-palette-color-8, #fb923c)",
|
|
4095
|
+
"var(--glyph-palette-color-9, #818cf8)",
|
|
4096
|
+
"var(--glyph-palette-color-10, #38bdf8)"
|
|
4087
4097
|
];
|
|
4088
4098
|
function zoneBackground(depth) {
|
|
4089
4099
|
const alphas = [0.06, 0.1, 0.14, 0.18];
|
|
4090
|
-
|
|
4091
|
-
return `rgba(0,212,170,${alpha})`;
|
|
4100
|
+
return alphas[Math.min(depth, alphas.length - 1)] ?? 0.18;
|
|
4092
4101
|
}
|
|
4093
4102
|
function getThemeVar3(container, varName, fallback) {
|
|
4094
4103
|
return getComputedStyle(container).getPropertyValue(varName).trim() || fallback;
|
|
@@ -4101,7 +4110,7 @@ function renderArchitecture(svgElement, layout, rootRef, zoomBehavior) {
|
|
|
4101
4110
|
const height = Math.max(layout.height, 200);
|
|
4102
4111
|
svg.attr("viewBox", `0 0 ${width} ${height}`);
|
|
4103
4112
|
const defs = svg.append("defs");
|
|
4104
|
-
defs.append("marker").attr("id", ARROW_MARKER_ID3).attr("viewBox", "0 0 10 10").attr("refX", 10).attr("refY", 5).attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 Z").attr("fill", "var(--glyph-edge-color, #
|
|
4113
|
+
defs.append("marker").attr("id", ARROW_MARKER_ID3).attr("viewBox", "0 0 10 10").attr("refX", 10).attr("refY", 5).attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto-start-reverse").append("path").attr("d", "M 0 0 L 10 5 L 0 10 Z").attr("fill", "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))");
|
|
4105
4114
|
const container = svgElement.parentElement ?? svgElement;
|
|
4106
4115
|
const nodeRadius = getThemeVar3(container, "--glyph-node-radius", "3");
|
|
4107
4116
|
const nodeStrokeWidth = getThemeVar3(container, "--glyph-node-stroke-width", "1.5");
|
|
@@ -4117,7 +4126,7 @@ function renderArchitecture(svgElement, layout, rootRef, zoomBehavior) {
|
|
|
4117
4126
|
const zoneGroup = root.append("g").attr("class", "glyph-architecture-zones");
|
|
4118
4127
|
for (const zone of sortedZones) {
|
|
4119
4128
|
const zoneG = zoneGroup.append("g").attr("class", "glyph-architecture-zone");
|
|
4120
|
-
zoneG.append("rect").attr("x", zone.x).attr("y", zone.y).attr("width", zone.width).attr("height", zone.height).attr("rx", nodeRadius).attr("ry", nodeRadius).attr("fill", zoneBackground(zone.depth)).attr("stroke", "var(--glyph-accent-muted, #1a4a3a)").attr("stroke-width", 1).attr("stroke-dasharray", "6,3");
|
|
4129
|
+
zoneG.append("rect").attr("x", zone.x).attr("y", zone.y).attr("width", zone.width).attr("height", zone.height).attr("rx", nodeRadius).attr("ry", nodeRadius).attr("fill", "var(--glyph-accent, #00d4aa)").attr("fill-opacity", zoneBackground(zone.depth)).attr("stroke", "var(--glyph-accent-muted, #1a4a3a)").attr("stroke-width", 1).attr("stroke-dasharray", "6,3");
|
|
4121
4130
|
zoneG.append("text").attr("x", zone.x + 10).attr("y", zone.y + 18).attr("font-size", "12px").attr("font-weight", "bold").attr("font-family", "Inter, system-ui, sans-serif").attr("fill", "var(--glyph-text-muted, #7a8599)").text(zone.label);
|
|
4122
4131
|
}
|
|
4123
4132
|
const edgeGroup = root.append("g").attr("class", "glyph-architecture-edges");
|
|
@@ -4127,7 +4136,10 @@ function renderArchitecture(svgElement, layout, rootRef, zoomBehavior) {
|
|
|
4127
4136
|
const lineGen = d32__namespace.line().x((d) => d.x).y((d) => d.y);
|
|
4128
4137
|
const strokeWidth = edge.type === "data" ? 2.5 : 1.5;
|
|
4129
4138
|
const dashArray = edge.type === "async" ? "5,5" : null;
|
|
4130
|
-
edgeG.append("path").attr("d", lineGen(edge.points) ?? "").attr("fill", "none").attr(
|
|
4139
|
+
edgeG.append("path").attr("d", lineGen(edge.points) ?? "").attr("fill", "none").attr(
|
|
4140
|
+
"stroke",
|
|
4141
|
+
edge.style?.["stroke"] ?? "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))"
|
|
4142
|
+
).attr("stroke-width", edge.style?.["stroke-width"] ?? String(strokeWidth)).attr("marker-end", `url(#${ARROW_MARKER_ID3})`).attr("stroke-dasharray", dashArray);
|
|
4131
4143
|
if (edge.label && edge.points.length > 1) {
|
|
4132
4144
|
let totalLen = 0;
|
|
4133
4145
|
const segments = [];
|
|
@@ -4168,7 +4180,7 @@ function renderArchitecture(svgElement, layout, rootRef, zoomBehavior) {
|
|
|
4168
4180
|
if (!node) continue;
|
|
4169
4181
|
const nodeG = nodeGroup.append("g").attr("class", "glyph-architecture-node");
|
|
4170
4182
|
const color3 = NODE_PALETTE[nodeIdx % NODE_PALETTE.length] ?? "#00d4aa";
|
|
4171
|
-
const defaultStroke = d32__namespace.color(color3)?.darker(0.5)?.toString() ?? "var(--glyph-edge-color, #
|
|
4183
|
+
const defaultStroke = d32__namespace.color(color3)?.darker(0.5)?.toString() ?? "var(--glyph-edge-color, var(--glyph-border, #d0d8e4))";
|
|
4172
4184
|
nodeG.append("rect").attr("x", node.x).attr("y", node.y).attr("width", node.width).attr("height", node.height).attr("rx", nodeRadius).attr("ry", nodeRadius).attr("fill", color3).attr("stroke", defaultStroke).attr("stroke-width", nodeStrokeWidth).attr("opacity", nodeFillOpacity);
|
|
4173
4185
|
if (node.icon) {
|
|
4174
4186
|
renderIcon(nodeG, node.icon, node.x + node.width / 2, node.y + 20, 18);
|
|
@@ -4746,9 +4758,9 @@ function optionLabelStyle(isSelected, submitted, isCorrectOption, isIncorrectSel
|
|
|
4746
4758
|
marginBottom: "0.375rem",
|
|
4747
4759
|
borderRadius: "var(--glyph-radius-md, 0.5rem)",
|
|
4748
4760
|
cursor: submitted ? "default" : "pointer",
|
|
4749
|
-
background: submitted ? isCorrectOption ? "var(--glyph-quiz-correct-bg,
|
|
4761
|
+
background: submitted ? isCorrectOption ? "var(--glyph-quiz-correct-bg, rgba(22, 163, 74, 0.12))" : isIncorrectSelection ? "var(--glyph-quiz-incorrect-bg, rgba(220, 38, 38, 0.1))" : "transparent" : isSelected ? "var(--glyph-surface, #e8ecf3)" : "transparent",
|
|
4750
4762
|
border: "1px solid",
|
|
4751
|
-
borderColor: submitted ? isCorrectOption ? "var(--glyph-quiz-correct, #16a34a)" : isIncorrectSelection ? "var(--glyph-quiz-incorrect, #dc2626)" : "var(--glyph-border, #d0d8e4)" : isSelected ? "var(--glyph-border, #d0d8e4)" : "transparent",
|
|
4763
|
+
borderColor: submitted ? isCorrectOption ? "var(--glyph-quiz-correct, var(--glyph-color-success, #16a34a))" : isIncorrectSelection ? "var(--glyph-quiz-incorrect, var(--glyph-color-error, #dc2626))" : "var(--glyph-border, #d0d8e4)" : isSelected ? "var(--glyph-border, #d0d8e4)" : "transparent",
|
|
4752
4764
|
fontSize: "0.875rem",
|
|
4753
4765
|
lineHeight: 1.6
|
|
4754
4766
|
};
|
|
@@ -4771,8 +4783,8 @@ function feedbackStyle(correct) {
|
|
|
4771
4783
|
marginTop: "0.75rem",
|
|
4772
4784
|
padding: "0.5rem 0.75rem",
|
|
4773
4785
|
borderRadius: "var(--glyph-radius-md, 0.5rem)",
|
|
4774
|
-
background: correct ? "var(--glyph-quiz-correct-bg,
|
|
4775
|
-
color: correct ? "var(--glyph-quiz-correct, #16a34a)" : "var(--glyph-quiz-incorrect, #dc2626)",
|
|
4786
|
+
background: correct ? "var(--glyph-quiz-correct-bg, rgba(22, 163, 74, 0.12))" : "var(--glyph-quiz-incorrect-bg, rgba(220, 38, 38, 0.1))",
|
|
4787
|
+
color: correct ? "var(--glyph-quiz-correct, var(--glyph-color-success, #16a34a))" : "var(--glyph-quiz-incorrect, var(--glyph-color-error, #dc2626))",
|
|
4776
4788
|
fontWeight: 600,
|
|
4777
4789
|
fontSize: "0.875rem"
|
|
4778
4790
|
};
|
|
@@ -5220,10 +5232,10 @@ function computeSectionLayout(sections) {
|
|
|
5220
5232
|
});
|
|
5221
5233
|
}
|
|
5222
5234
|
var PROGRESS_COLORS = [
|
|
5223
|
-
"var(--glyph-infographic-color-1, #
|
|
5224
|
-
"var(--glyph-infographic-color-2, #
|
|
5225
|
-
"var(--glyph-infographic-color-3, #
|
|
5226
|
-
"var(--glyph-infographic-color-4, #
|
|
5235
|
+
"var(--glyph-infographic-color-1, var(--glyph-palette-color-1, #00d4aa))",
|
|
5236
|
+
"var(--glyph-infographic-color-2, var(--glyph-palette-color-2, #b44dff))",
|
|
5237
|
+
"var(--glyph-infographic-color-3, var(--glyph-palette-color-3, #22c55e))",
|
|
5238
|
+
"var(--glyph-infographic-color-4, var(--glyph-palette-color-4, #e040fb))"
|
|
5227
5239
|
];
|
|
5228
5240
|
function renderStatGroup(items, keyPrefix) {
|
|
5229
5241
|
const rowStyle = {
|
|
@@ -5238,12 +5250,12 @@ function renderStatGroup(items, keyPrefix) {
|
|
|
5238
5250
|
const valueStyle = {
|
|
5239
5251
|
fontSize: "1.75rem",
|
|
5240
5252
|
fontWeight: 700,
|
|
5241
|
-
color: "var(--glyph-infographic-value-color, #
|
|
5253
|
+
color: "var(--glyph-infographic-value-color, var(--glyph-accent, #0a9d7c))",
|
|
5242
5254
|
lineHeight: 1.2
|
|
5243
5255
|
};
|
|
5244
5256
|
const labelStyle4 = {
|
|
5245
5257
|
fontSize: "0.8125rem",
|
|
5246
|
-
color: "var(--glyph-infographic-label-color, #
|
|
5258
|
+
color: "var(--glyph-infographic-label-color, var(--glyph-text-muted, #6b7a94))",
|
|
5247
5259
|
marginTop: "var(--glyph-spacing-xs, 0.25rem)",
|
|
5248
5260
|
textTransform: "uppercase",
|
|
5249
5261
|
letterSpacing: "0.06em",
|
|
@@ -5251,7 +5263,7 @@ function renderStatGroup(items, keyPrefix) {
|
|
|
5251
5263
|
};
|
|
5252
5264
|
const descStyle = {
|
|
5253
5265
|
fontSize: "0.75rem",
|
|
5254
|
-
color: "var(--glyph-infographic-desc-color, #
|
|
5266
|
+
color: "var(--glyph-infographic-desc-color, var(--glyph-text-muted, #6b7a94))",
|
|
5255
5267
|
marginTop: "var(--glyph-spacing-xs, 0.25rem)",
|
|
5256
5268
|
fontStyle: "italic"
|
|
5257
5269
|
};
|
|
@@ -5265,7 +5277,7 @@ function renderProgressGroup(items, keyPrefix, colorOffset) {
|
|
|
5265
5277
|
const trackStyle = {
|
|
5266
5278
|
height: "0.5rem",
|
|
5267
5279
|
borderRadius: "var(--glyph-radius-sm, 0.375rem)",
|
|
5268
|
-
background: "var(--glyph-infographic-track, #
|
|
5280
|
+
background: "var(--glyph-infographic-track, var(--glyph-surface, #e8ecf3))",
|
|
5269
5281
|
overflow: "hidden"
|
|
5270
5282
|
};
|
|
5271
5283
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-group": "progress", children: items.map((item, i) => {
|
|
@@ -5298,7 +5310,7 @@ function renderProgressGroup(items, keyPrefix, colorOffset) {
|
|
|
5298
5310
|
"span",
|
|
5299
5311
|
{
|
|
5300
5312
|
style: {
|
|
5301
|
-
color: "var(--glyph-infographic-value-color, #
|
|
5313
|
+
color: "var(--glyph-infographic-value-color, var(--glyph-accent, #0a9d7c))",
|
|
5302
5314
|
fontWeight: 700
|
|
5303
5315
|
},
|
|
5304
5316
|
children: [
|
|
@@ -5345,7 +5357,7 @@ function renderFactGroup(items, keyPrefix) {
|
|
|
5345
5357
|
{
|
|
5346
5358
|
style: {
|
|
5347
5359
|
marginRight: "var(--glyph-spacing-xs, 0.25rem)",
|
|
5348
|
-
color: "var(--glyph-infographic-accent, #
|
|
5360
|
+
color: "var(--glyph-infographic-accent, var(--glyph-accent, #0a9d7c))"
|
|
5349
5361
|
},
|
|
5350
5362
|
"aria-hidden": "true",
|
|
5351
5363
|
children: item.icon
|
|
@@ -5360,7 +5372,7 @@ function renderTextGroup(items, keyPrefix) {
|
|
|
5360
5372
|
fontSize: "0.875rem",
|
|
5361
5373
|
lineHeight: 1.6,
|
|
5362
5374
|
color: "var(--glyph-text, #1a2035)",
|
|
5363
|
-
borderLeft: "3px solid var(--glyph-infographic-accent, #
|
|
5375
|
+
borderLeft: "3px solid var(--glyph-infographic-accent, var(--glyph-accent, #0a9d7c))",
|
|
5364
5376
|
paddingLeft: "var(--glyph-spacing-sm, 0.5rem)"
|
|
5365
5377
|
};
|
|
5366
5378
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-group": "text", children: items.map((item, i) => /* @__PURE__ */ jsxRuntime.jsx("p", { style: pStyle, children: item.content }, `${keyPrefix}-${String(i)}`)) }, keyPrefix);
|
|
@@ -5433,7 +5445,7 @@ function renderPieGroup(items, keyPrefix, colorOffset) {
|
|
|
5433
5445
|
style: {
|
|
5434
5446
|
fontSize: "0.875rem",
|
|
5435
5447
|
fontWeight: 600,
|
|
5436
|
-
color: "var(--glyph-infographic-heading-color, #
|
|
5448
|
+
color: "var(--glyph-infographic-heading-color, var(--glyph-heading, #0a0e1a))",
|
|
5437
5449
|
marginBottom: "var(--glyph-spacing-xs, 0.25rem)"
|
|
5438
5450
|
},
|
|
5439
5451
|
children: item.label
|
|
@@ -5492,7 +5504,7 @@ function renderDividerGroup(items, keyPrefix) {
|
|
|
5492
5504
|
role: "separator",
|
|
5493
5505
|
style: {
|
|
5494
5506
|
border: "none",
|
|
5495
|
-
borderTop: `1px ${item.style ?? "solid"} var(--glyph-infographic-section-divider, #d0d8e4)`,
|
|
5507
|
+
borderTop: `1px ${item.style ?? "solid"} var(--glyph-infographic-section-divider, var(--glyph-border, #d0d8e4))`,
|
|
5496
5508
|
margin: "var(--glyph-spacing-sm, 0.5rem) 0"
|
|
5497
5509
|
}
|
|
5498
5510
|
},
|
|
@@ -5500,7 +5512,7 @@ function renderDividerGroup(items, keyPrefix) {
|
|
|
5500
5512
|
)) }, keyPrefix);
|
|
5501
5513
|
}
|
|
5502
5514
|
function renderRatingGroup(items, keyPrefix) {
|
|
5503
|
-
const starColor = "var(--glyph-infographic-star, #f59e0b)";
|
|
5515
|
+
const starColor = "var(--glyph-infographic-star, var(--glyph-rating-star-fill, #f59e0b))";
|
|
5504
5516
|
const emptyColor = "var(--glyph-text-muted, #6b7a94)";
|
|
5505
5517
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-group": "rating", children: items.map((item, i) => {
|
|
5506
5518
|
const max2 = item.max ?? 5;
|
|
@@ -5593,7 +5605,7 @@ function renderRatingGroup(items, keyPrefix) {
|
|
|
5593
5605
|
{
|
|
5594
5606
|
style: {
|
|
5595
5607
|
fontSize: "0.75rem",
|
|
5596
|
-
color: "var(--glyph-infographic-desc-color, #
|
|
5608
|
+
color: "var(--glyph-infographic-desc-color, var(--glyph-text-muted, #6b7a94))",
|
|
5597
5609
|
marginTop: "var(--glyph-spacing-xs, 0.25rem)",
|
|
5598
5610
|
fontStyle: "italic"
|
|
5599
5611
|
},
|
|
@@ -5636,11 +5648,11 @@ function Infographic({
|
|
|
5636
5648
|
margin: 0,
|
|
5637
5649
|
paddingBottom: "var(--glyph-spacing-sm, 0.5rem)",
|
|
5638
5650
|
marginBottom: "var(--glyph-spacing-md, 1rem)",
|
|
5639
|
-
borderBottom: "2px solid var(--glyph-infographic-accent, #
|
|
5651
|
+
borderBottom: "2px solid var(--glyph-infographic-accent, var(--glyph-accent, #0a9d7c))",
|
|
5640
5652
|
...useGrid ? { gridColumn: "1 / -1" } : {}
|
|
5641
5653
|
};
|
|
5642
5654
|
const sectionDividerStyle = {
|
|
5643
|
-
borderTop: "1px solid var(--glyph-infographic-section-divider, #d0d8e4)",
|
|
5655
|
+
borderTop: "1px solid var(--glyph-infographic-section-divider, var(--glyph-border, #d0d8e4))",
|
|
5644
5656
|
paddingTop: "var(--glyph-spacing-md, 1rem)",
|
|
5645
5657
|
marginTop: "var(--glyph-spacing-md, 1rem)"
|
|
5646
5658
|
};
|
|
@@ -5658,9 +5670,9 @@ function Infographic({
|
|
|
5658
5670
|
const headingStyle = {
|
|
5659
5671
|
fontWeight: 700,
|
|
5660
5672
|
fontSize: "1rem",
|
|
5661
|
-
color: "var(--glyph-infographic-heading-color, #
|
|
5673
|
+
color: "var(--glyph-infographic-heading-color, var(--glyph-heading, #0a0e1a))",
|
|
5662
5674
|
marginBottom: "var(--glyph-spacing-sm, 0.5rem)",
|
|
5663
|
-
borderLeft: "3px solid var(--glyph-infographic-accent, #
|
|
5675
|
+
borderLeft: "3px solid var(--glyph-infographic-accent, var(--glyph-accent, #0a9d7c))",
|
|
5664
5676
|
paddingLeft: "var(--glyph-spacing-sm, 0.5rem)"
|
|
5665
5677
|
};
|
|
5666
5678
|
const printCss = useGrid ? `@media print { #${cssEscape(baseId)} [data-layout="grid"] { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 0.5rem !important; } #${cssEscape(baseId)} [data-layout="grid"] > div { break-inside: avoid; } }` : "";
|
|
@@ -6640,7 +6652,7 @@ var labelStyle3 = {
|
|
|
6640
6652
|
marginBottom: "0.375rem"
|
|
6641
6653
|
};
|
|
6642
6654
|
var requiredStyle = {
|
|
6643
|
-
color: "var(--glyph-form-error, #dc2626)",
|
|
6655
|
+
color: "var(--glyph-form-error, var(--glyph-color-error, #dc2626))",
|
|
6644
6656
|
marginLeft: "0.25rem"
|
|
6645
6657
|
};
|
|
6646
6658
|
var textInputStyle = {
|
|
@@ -6677,7 +6689,7 @@ var submitButtonStyle = {
|
|
|
6677
6689
|
borderRadius: "var(--glyph-radius-md, 0.5rem)",
|
|
6678
6690
|
border: "1px solid var(--glyph-accent, #0a9d7c)",
|
|
6679
6691
|
background: "var(--glyph-accent, #0a9d7c)",
|
|
6680
|
-
color: "#fff",
|
|
6692
|
+
color: "var(--glyph-text-on-accent, #fff)",
|
|
6681
6693
|
cursor: "pointer",
|
|
6682
6694
|
fontWeight: 600,
|
|
6683
6695
|
fontSize: "0.875rem",
|
|
@@ -6686,7 +6698,7 @@ var submitButtonStyle = {
|
|
|
6686
6698
|
function invalidStyle(isInvalid) {
|
|
6687
6699
|
if (!isInvalid) return {};
|
|
6688
6700
|
return {
|
|
6689
|
-
borderColor: "var(--glyph-form-error, #dc2626)"
|
|
6701
|
+
borderColor: "var(--glyph-form-error, var(--glyph-color-error, #dc2626))"
|
|
6690
6702
|
};
|
|
6691
6703
|
}
|
|
6692
6704
|
function renderField({
|
|
@@ -6962,9 +6974,9 @@ var columnCountStyle = {
|
|
|
6962
6974
|
};
|
|
6963
6975
|
function cardStyle(isGrabbed, priority) {
|
|
6964
6976
|
const priorityColors = {
|
|
6965
|
-
high: "var(--glyph-kanban-priority-high, #dc2626)",
|
|
6966
|
-
medium: "var(--glyph-kanban-priority-medium, #
|
|
6967
|
-
low: "var(--glyph-kanban-priority-low, #22c55e)"
|
|
6977
|
+
high: "var(--glyph-kanban-priority-high, var(--glyph-color-error, #dc2626))",
|
|
6978
|
+
medium: "var(--glyph-kanban-priority-medium, var(--glyph-color-warning, #d97706))",
|
|
6979
|
+
low: "var(--glyph-kanban-priority-low, var(--glyph-color-success, #22c55e))"
|
|
6968
6980
|
};
|
|
6969
6981
|
return {
|
|
6970
6982
|
background: "var(--glyph-kanban-card-bg, var(--glyph-surface-raised, #f4f6fa))",
|