@pipelex/mthds-ui 0.13.0 → 0.15.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/{chunk-XCZLRCEJ.js → chunk-O62372BD.js} +64 -2
- package/dist/chunk-O62372BD.js.map +1 -0
- package/dist/chunk-QD5YDMWV.js +1 -0
- package/dist/{chunk-IMQ7MVYL.js → chunk-YC7TW3BW.js} +16 -2
- package/dist/chunk-YC7TW3BW.js.map +1 -0
- package/dist/graph/index.d.ts +38 -3
- package/dist/graph/index.js +13 -3
- package/dist/graph/react/graph-core.css +71 -2
- package/dist/graph/react/index.d.ts +8 -2
- package/dist/graph/react/index.js +282 -143
- package/dist/graph/react/index.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +13 -3
- package/dist/pipeRefs-BQJO5nh5.d.ts +19 -0
- package/dist/standalone/graph-standalone.html +82 -12
- package/dist/standalone/graph-viewer.css +71 -2
- package/dist/standalone/graph-viewer.js +11 -10
- package/dist/static-graph/index.d.ts +18 -1
- package/dist/static-graph/index.js +39 -12
- package/dist/static-graph/index.js.map +1 -1
- package/dist/{types-Cm4147S5.d.ts → types-DFIZ_rx6.d.ts} +42 -4
- package/package.json +1 -1
- package/dist/chunk-IMQ7MVYL.js.map +0 -1
- package/dist/chunk-L24K3TZU.js +0 -1
- package/dist/chunk-XCZLRCEJ.js.map +0 -1
- /package/dist/{chunk-L24K3TZU.js.map → chunk-QD5YDMWV.js.map} +0 -0
package/dist/graph/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../chunk-
|
|
1
|
+
import "../chunk-QD5YDMWV.js";
|
|
2
2
|
import {
|
|
3
3
|
DARK_PALETTE_COLORS,
|
|
4
4
|
DEFAULT_GRAPH_CONFIG,
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
MAX_VISIBLE_CONTROLLER_CHILDREN,
|
|
8
8
|
applyControllers,
|
|
9
9
|
applyFolds,
|
|
10
|
+
applyValidationDecorations,
|
|
10
11
|
asPipeCallNode,
|
|
11
12
|
buildChildToControllerMap,
|
|
12
13
|
buildContainmentChain,
|
|
@@ -16,6 +17,7 @@ import {
|
|
|
16
17
|
buildElkGraph,
|
|
17
18
|
buildGraph,
|
|
18
19
|
buildPipeCardPayload,
|
|
20
|
+
buildValidationDecorations,
|
|
19
21
|
estimateNodeDimensions,
|
|
20
22
|
extractAbsolutePositions,
|
|
21
23
|
findCousinControllers,
|
|
@@ -28,8 +30,9 @@ import {
|
|
|
28
30
|
outermostFoldedAncestor,
|
|
29
31
|
outputPortId,
|
|
30
32
|
resolveConceptRef,
|
|
33
|
+
resolveIssueTargetNodeId,
|
|
31
34
|
validateGraphSpec
|
|
32
|
-
} from "../chunk-
|
|
35
|
+
} from "../chunk-O62372BD.js";
|
|
33
36
|
import {
|
|
34
37
|
ARROW_CLOSED_MARKER,
|
|
35
38
|
CONTROLLER_PADDING_BOTTOM,
|
|
@@ -52,13 +55,15 @@ import {
|
|
|
52
55
|
isDryGraphSpec,
|
|
53
56
|
isStaticGraphSpec,
|
|
54
57
|
isStuffNodeId,
|
|
58
|
+
makePipeRef,
|
|
55
59
|
nodeHeight,
|
|
56
60
|
nodeWidth,
|
|
61
|
+
parsePipeRef,
|
|
57
62
|
stuffDigestFromId,
|
|
58
63
|
stuffNodeId,
|
|
59
64
|
toolbarOrientation,
|
|
60
65
|
toolbarSide
|
|
61
|
-
} from "../chunk-
|
|
66
|
+
} from "../chunk-YC7TW3BW.js";
|
|
62
67
|
import "../chunk-2NMEKWO5.js";
|
|
63
68
|
export {
|
|
64
69
|
ARROW_CLOSED_MARKER,
|
|
@@ -85,6 +90,7 @@ export {
|
|
|
85
90
|
VALIDATION_STATE,
|
|
86
91
|
applyControllers,
|
|
87
92
|
applyFolds,
|
|
93
|
+
applyValidationDecorations,
|
|
88
94
|
asPipeCallNode,
|
|
89
95
|
buildChildToControllerMap,
|
|
90
96
|
buildContainmentChain,
|
|
@@ -94,6 +100,7 @@ export {
|
|
|
94
100
|
buildElkGraph,
|
|
95
101
|
buildGraph,
|
|
96
102
|
buildPipeCardPayload,
|
|
103
|
+
buildValidationDecorations,
|
|
97
104
|
estimateNodeDimensions,
|
|
98
105
|
extractAbsolutePositions,
|
|
99
106
|
findCousinControllers,
|
|
@@ -107,11 +114,14 @@ export {
|
|
|
107
114
|
isDryGraphSpec,
|
|
108
115
|
isStaticGraphSpec,
|
|
109
116
|
isStuffNodeId,
|
|
117
|
+
makePipeRef,
|
|
110
118
|
nodeHeight,
|
|
111
119
|
nodeWidth,
|
|
112
120
|
outermostFoldedAncestor,
|
|
113
121
|
outputPortId,
|
|
122
|
+
parsePipeRef,
|
|
114
123
|
resolveConceptRef,
|
|
124
|
+
resolveIssueTargetNodeId,
|
|
115
125
|
stuffDigestFromId,
|
|
116
126
|
stuffNodeId,
|
|
117
127
|
toolbarOrientation,
|
|
@@ -126,16 +126,22 @@
|
|
|
126
126
|
var(--shadow-lg) !important;
|
|
127
127
|
z-index: 1000 !important;
|
|
128
128
|
}
|
|
129
|
-
/* Pipe cards handle their own selection styling — suppress the wrapper outline
|
|
129
|
+
/* Pipe cards handle their own selection styling — suppress the wrapper outline.
|
|
130
|
+
The outline reset excludes .node-validation-flash: the flash animates the
|
|
131
|
+
wrapper outline, and an !important reset would override the animation. */
|
|
130
132
|
.react-flow__node-pipeCard {
|
|
131
133
|
background: transparent !important;
|
|
132
134
|
border: none !important;
|
|
133
135
|
box-shadow: none !important;
|
|
134
|
-
outline: none !important;
|
|
135
136
|
padding: 0 !important;
|
|
136
137
|
}
|
|
138
|
+
.react-flow__node-pipeCard:not(.node-validation-flash) {
|
|
139
|
+
outline: none !important;
|
|
140
|
+
}
|
|
137
141
|
.react-flow__node-pipeCard.selected {
|
|
138
142
|
box-shadow: none !important;
|
|
143
|
+
}
|
|
144
|
+
.react-flow__node-pipeCard.selected:not(.node-validation-flash) {
|
|
139
145
|
outline: none !important;
|
|
140
146
|
}
|
|
141
147
|
.react-flow__node-pipeCard.selected .pipe-card {
|
|
@@ -586,3 +592,66 @@
|
|
|
586
592
|
.pipe-card--tb .pipe-card-io-pill-concept {
|
|
587
593
|
max-width: 100px;
|
|
588
594
|
}
|
|
595
|
+
|
|
596
|
+
/* ─── Validation decorations (severity ring + count badge) ─────────────────
|
|
597
|
+
Stamped by GraphViewer from targeted ValidationIssues. The ring is an
|
|
598
|
+
outline so node geometry (and therefore layout) never changes; the badge
|
|
599
|
+
lives in the header flow, which is size-locked by the ELK dimensions. */
|
|
600
|
+
|
|
601
|
+
.node-validation-ring--error {
|
|
602
|
+
outline: 2px solid var(--color-error);
|
|
603
|
+
outline-offset: 1px;
|
|
604
|
+
}
|
|
605
|
+
.node-validation-ring--warning {
|
|
606
|
+
outline: 1.5px solid var(--color-warning);
|
|
607
|
+
outline-offset: 1px;
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
.node-validation-badge {
|
|
611
|
+
flex-shrink: 0;
|
|
612
|
+
min-width: 16px;
|
|
613
|
+
height: 16px;
|
|
614
|
+
padding: 0 4px;
|
|
615
|
+
border: none;
|
|
616
|
+
border-radius: 999px;
|
|
617
|
+
font-family: var(--font-sans);
|
|
618
|
+
font-size: 10px;
|
|
619
|
+
font-weight: 700;
|
|
620
|
+
line-height: 16px;
|
|
621
|
+
text-align: center;
|
|
622
|
+
box-sizing: border-box;
|
|
623
|
+
}
|
|
624
|
+
.node-validation-badge--error {
|
|
625
|
+
background: var(--color-error);
|
|
626
|
+
color: #fff;
|
|
627
|
+
}
|
|
628
|
+
.node-validation-badge--warning {
|
|
629
|
+
background: var(--color-warning);
|
|
630
|
+
color: rgba(0, 0, 0, 0.85);
|
|
631
|
+
}
|
|
632
|
+
button.node-validation-badge {
|
|
633
|
+
cursor: pointer;
|
|
634
|
+
}
|
|
635
|
+
/* The controller header disables pointer events (it overlays children); the
|
|
636
|
+
badge re-enables them for its tooltip and click-through to the panel. */
|
|
637
|
+
.controller-group-header .node-validation-badge {
|
|
638
|
+
pointer-events: auto;
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
/* Transient highlight when a validation-panel row navigates to its node.
|
|
642
|
+
Applied to the ReactFlow node wrapper; the animation fades the halo out and
|
|
643
|
+
the class is cleared (or dropped by the next rebuild) once it has played. */
|
|
644
|
+
.react-flow__node.node-validation-flash {
|
|
645
|
+
animation: node-validation-flash 1.6s ease-out;
|
|
646
|
+
}
|
|
647
|
+
@keyframes node-validation-flash {
|
|
648
|
+
0%,
|
|
649
|
+
50% {
|
|
650
|
+
outline: 3px solid var(--color-accent-strong);
|
|
651
|
+
outline-offset: 5px;
|
|
652
|
+
}
|
|
653
|
+
100% {
|
|
654
|
+
outline: 3px solid transparent;
|
|
655
|
+
outline-offset: 5px;
|
|
656
|
+
}
|
|
657
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import { a as GraphNodeData, b as GraphEdge, c as GraphNode, G as GraphSpec, d as GraphConfig, e as GraphDirection, F as FoldMode, f as GraphThemeMode, T as ToolbarPosition, g as GraphTheme, h as PipeStatus, i as ValidationState, V as ValidationIssue, L as LabelDescriptor, j as PipeControllerType, k as FoldToggleOptions, l as PipeType, m as GraphSpecMode, n as GraphSpecNode, C as ConceptInfo, o as GraphSpecNodeIoItem } from '../../types-
|
|
4
|
-
export { p as PipeOperatorType } from '../../types-
|
|
3
|
+
import { a as GraphNodeData, b as GraphEdge, c as GraphNode, G as GraphSpec, d as GraphConfig, e as GraphDirection, F as FoldMode, f as GraphThemeMode, T as ToolbarPosition, g as GraphTheme, h as PipeStatus, i as ValidationState, V as ValidationIssue, L as LabelDescriptor, j as PipeControllerType, k as FoldToggleOptions, N as NodeValidationSummary, l as PipeType, m as GraphSpecMode, n as GraphSpecNode, C as ConceptInfo, o as GraphSpecNodeIoItem } from '../../types-DFIZ_rx6.js';
|
|
4
|
+
export { p as PipeOperatorType } from '../../types-DFIZ_rx6.js';
|
|
5
5
|
import { Edge, Node, ReactFlowInstance } from '@xyflow/react';
|
|
6
6
|
|
|
7
7
|
/** Data for rendering a stuff (data item) in the StuffViewer component. */
|
|
@@ -237,6 +237,8 @@ interface ControllerGroupData {
|
|
|
237
237
|
isCollapsed?: boolean;
|
|
238
238
|
onToggleCollapse?: () => void;
|
|
239
239
|
onToggleFold?: (options?: FoldToggleOptions) => void;
|
|
240
|
+
validation?: NodeValidationSummary;
|
|
241
|
+
onValidationBadgeClick?: () => void;
|
|
240
242
|
}
|
|
241
243
|
declare function ControllerGroupNode({ data }: {
|
|
242
244
|
data: ControllerGroupData;
|
|
@@ -266,6 +268,10 @@ interface PipeCardData {
|
|
|
266
268
|
direction?: PipeCardDirection;
|
|
267
269
|
/** When set, the card renders an unfold button that invokes this callback. */
|
|
268
270
|
onExpand?: (options?: FoldToggleOptions) => void;
|
|
271
|
+
/** Validation decoration (severity ring + count badge), stamped by GraphViewer. */
|
|
272
|
+
validation?: NodeValidationSummary;
|
|
273
|
+
/** Badge click handler (opens the validation panel), stamped alongside `validation`. */
|
|
274
|
+
onValidationBadgeClick?: () => void;
|
|
269
275
|
}
|
|
270
276
|
|
|
271
277
|
interface PipeCardNodeProps {
|