@pipelex/mthds-ui 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -0
- package/dist/chunk-IMQ7MVYL.js +163 -0
- package/dist/chunk-IMQ7MVYL.js.map +1 -0
- package/dist/{chunk-R34J4GFM.js → chunk-XCZLRCEJ.js} +54 -144
- package/dist/chunk-XCZLRCEJ.js.map +1 -0
- package/dist/graph/index.d.ts +4 -4
- package/dist/graph/index.js +33 -21
- package/dist/graph/react/graph-core.css +34 -0
- package/dist/graph/react/index.css +173 -0
- package/dist/graph/react/index.css.map +1 -1
- package/dist/graph/react/index.d.ts +54 -3
- package/dist/graph/react/index.js +514 -187
- package/dist/graph/react/index.js.map +1 -1
- package/dist/graph/react/stuff/StuffViewer.css +12 -0
- package/dist/graph/react/viewer/GraphToolbar.css +201 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +33 -21
- package/dist/standalone/graph-standalone.html +256 -9
- package/dist/standalone/graph-viewer.css +247 -0
- package/dist/standalone/graph-viewer.js +9 -9
- package/dist/static-graph/index.d.ts +118 -0
- package/dist/static-graph/index.js +1278 -0
- package/dist/static-graph/index.js.map +1 -0
- package/dist/{types-B3nefYpV.d.ts → types-Cm4147S5.d.ts} +59 -4
- package/package.json +7 -2
- package/dist/chunk-R34J4GFM.js.map +0 -1
|
@@ -1007,6 +1007,40 @@ svg.react-flow__connectionline {
|
|
|
1007
1007
|
.pipe-card--controller {
|
|
1008
1008
|
--pipe-card-accent: var(--text-muted);
|
|
1009
1009
|
}
|
|
1010
|
+
.pipe-card--static {
|
|
1011
|
+
background: var(--surface-sunken);
|
|
1012
|
+
border-left-style: solid;
|
|
1013
|
+
}
|
|
1014
|
+
.pipe-card-annotations {
|
|
1015
|
+
display: flex;
|
|
1016
|
+
flex-wrap: wrap;
|
|
1017
|
+
gap: 4px;
|
|
1018
|
+
min-width: 0;
|
|
1019
|
+
}
|
|
1020
|
+
.pipe-card-annotation {
|
|
1021
|
+
display: inline-flex;
|
|
1022
|
+
align-items: center;
|
|
1023
|
+
max-width: 100%;
|
|
1024
|
+
overflow: hidden;
|
|
1025
|
+
text-overflow: ellipsis;
|
|
1026
|
+
white-space: nowrap;
|
|
1027
|
+
border-radius: 4px;
|
|
1028
|
+
border: 1px solid var(--border-subtle);
|
|
1029
|
+
background: var(--surface-pill);
|
|
1030
|
+
color: var(--text-muted);
|
|
1031
|
+
font-family: var(--font-mono);
|
|
1032
|
+
font-size: 10px;
|
|
1033
|
+
line-height: 1.4;
|
|
1034
|
+
padding: 1px 6px;
|
|
1035
|
+
}
|
|
1036
|
+
.pipe-card-annotation--outcome {
|
|
1037
|
+
color: var(--color-warning);
|
|
1038
|
+
border-color: var(--ctrl-condition-border);
|
|
1039
|
+
}
|
|
1040
|
+
.pipe-card-annotation--batch {
|
|
1041
|
+
color: var(--ctrl-batch-text);
|
|
1042
|
+
border-color: var(--ctrl-batch-border);
|
|
1043
|
+
}
|
|
1010
1044
|
|
|
1011
1045
|
/* Signature (unimplemented stub) — dashed + muted so it reads as "declared,
|
|
1012
1046
|
not built yet", distinct from operator (solid accent) and controller (tinted). */
|
|
@@ -1388,6 +1422,18 @@ svg.react-flow__connectionline {
|
|
|
1388
1422
|
margin: 0;
|
|
1389
1423
|
}
|
|
1390
1424
|
|
|
1425
|
+
/* Native `Html` concept — rendered in a sandboxed iframe so the document's own
|
|
1426
|
+
<style>/layout is faithful and isolated from the host. White backdrop because
|
|
1427
|
+
these documents (invoices, quotes, reports) are authored for print/light. */
|
|
1428
|
+
.stuff-viewer-html-frame {
|
|
1429
|
+
width: 100%;
|
|
1430
|
+
height: 100%;
|
|
1431
|
+
min-height: 480px;
|
|
1432
|
+
border: none;
|
|
1433
|
+
border-radius: var(--sv-radius);
|
|
1434
|
+
background: #fff;
|
|
1435
|
+
}
|
|
1436
|
+
|
|
1391
1437
|
/* PDF embed */
|
|
1392
1438
|
.stuff-viewer-pdf {
|
|
1393
1439
|
min-height: 400px;
|
|
@@ -2185,6 +2231,207 @@ button.stuff-viewer-local-file--button:focus-visible {
|
|
|
2185
2231
|
margin: 0 2px;
|
|
2186
2232
|
}
|
|
2187
2233
|
|
|
2234
|
+
/* ─── Validation widget ─────────────────────────────────────────────────── */
|
|
2235
|
+
/* Lives in GraphToolbar.css on purpose: the VS Code extension copies exactly
|
|
2236
|
+
this stylesheet into its webview, so a separate file would need host build
|
|
2237
|
+
changes for no benefit. */
|
|
2238
|
+
|
|
2239
|
+
.graph-toolbar-validation {
|
|
2240
|
+
position: relative;
|
|
2241
|
+
display: inline-flex;
|
|
2242
|
+
}
|
|
2243
|
+
|
|
2244
|
+
.graph-toolbar-validation-btn {
|
|
2245
|
+
position: relative;
|
|
2246
|
+
}
|
|
2247
|
+
|
|
2248
|
+
.graph-toolbar-validation-btn--valid,
|
|
2249
|
+
.graph-toolbar-validation-btn--valid:hover {
|
|
2250
|
+
color: var(--color-success);
|
|
2251
|
+
}
|
|
2252
|
+
|
|
2253
|
+
.graph-toolbar-validation-btn--invalid,
|
|
2254
|
+
.graph-toolbar-validation-btn--invalid:hover {
|
|
2255
|
+
color: var(--color-error);
|
|
2256
|
+
}
|
|
2257
|
+
|
|
2258
|
+
.graph-toolbar-validation-btn--error,
|
|
2259
|
+
.graph-toolbar-validation-btn--error:hover {
|
|
2260
|
+
color: var(--color-warning);
|
|
2261
|
+
}
|
|
2262
|
+
|
|
2263
|
+
.graph-toolbar-validation-spin {
|
|
2264
|
+
animation: graph-toolbar-validation-rotate 1s linear infinite;
|
|
2265
|
+
}
|
|
2266
|
+
|
|
2267
|
+
@keyframes graph-toolbar-validation-rotate {
|
|
2268
|
+
to {
|
|
2269
|
+
transform: rotate(360deg);
|
|
2270
|
+
}
|
|
2271
|
+
}
|
|
2272
|
+
|
|
2273
|
+
.graph-toolbar-validation-badge {
|
|
2274
|
+
position: absolute;
|
|
2275
|
+
top: -5px;
|
|
2276
|
+
right: -5px;
|
|
2277
|
+
min-width: 14px;
|
|
2278
|
+
height: 14px;
|
|
2279
|
+
padding: 0 3px;
|
|
2280
|
+
box-sizing: border-box;
|
|
2281
|
+
border-radius: 7px;
|
|
2282
|
+
background: var(--color-error);
|
|
2283
|
+
color: var(--text-on-accent);
|
|
2284
|
+
font-family: var(--font-sans);
|
|
2285
|
+
font-size: 9px;
|
|
2286
|
+
line-height: 14px;
|
|
2287
|
+
font-weight: 600;
|
|
2288
|
+
text-align: center;
|
|
2289
|
+
pointer-events: none;
|
|
2290
|
+
}
|
|
2291
|
+
|
|
2292
|
+
.graph-toolbar-validation-btn--valid .graph-toolbar-validation-badge,
|
|
2293
|
+
.graph-toolbar-validation-btn--error .graph-toolbar-validation-badge {
|
|
2294
|
+
background: var(--color-warning);
|
|
2295
|
+
}
|
|
2296
|
+
|
|
2297
|
+
/* ─── Validation dropdown panel ─────────────────────────────────────────── */
|
|
2298
|
+
|
|
2299
|
+
.graph-validation-panel {
|
|
2300
|
+
position: absolute;
|
|
2301
|
+
z-index: 12;
|
|
2302
|
+
/* Viewport clamp: narrow webviews (VS Code panels) can be under 260px wide. */
|
|
2303
|
+
min-width: min(260px, calc(100vw - 24px));
|
|
2304
|
+
max-width: min(360px, calc(100vw - 24px));
|
|
2305
|
+
max-height: 320px;
|
|
2306
|
+
overflow-y: auto;
|
|
2307
|
+
padding: 6px;
|
|
2308
|
+
border-radius: 8px;
|
|
2309
|
+
background: var(--surface-overlay);
|
|
2310
|
+
border: 1px solid var(--border-default);
|
|
2311
|
+
box-shadow: var(--shadow-md);
|
|
2312
|
+
backdrop-filter: blur(6px);
|
|
2313
|
+
pointer-events: auto;
|
|
2314
|
+
font-family: var(--font-sans);
|
|
2315
|
+
cursor: default;
|
|
2316
|
+
}
|
|
2317
|
+
|
|
2318
|
+
/* Placement relative to the widget button — always unfolds toward the graph. */
|
|
2319
|
+
.graph-validation-panel--down-start {
|
|
2320
|
+
top: calc(100% + 6px);
|
|
2321
|
+
left: 0;
|
|
2322
|
+
}
|
|
2323
|
+
.graph-validation-panel--down-end {
|
|
2324
|
+
top: calc(100% + 6px);
|
|
2325
|
+
right: 0;
|
|
2326
|
+
}
|
|
2327
|
+
.graph-validation-panel--up-start {
|
|
2328
|
+
bottom: calc(100% + 6px);
|
|
2329
|
+
left: 0;
|
|
2330
|
+
}
|
|
2331
|
+
.graph-validation-panel--up-end {
|
|
2332
|
+
bottom: calc(100% + 6px);
|
|
2333
|
+
right: 0;
|
|
2334
|
+
}
|
|
2335
|
+
.graph-validation-panel--side-end {
|
|
2336
|
+
left: calc(100% + 6px);
|
|
2337
|
+
top: 0;
|
|
2338
|
+
}
|
|
2339
|
+
.graph-validation-panel--side-start {
|
|
2340
|
+
right: calc(100% + 6px);
|
|
2341
|
+
top: 0;
|
|
2342
|
+
}
|
|
2343
|
+
|
|
2344
|
+
.graph-validation-panel-header {
|
|
2345
|
+
padding: 4px 6px 6px;
|
|
2346
|
+
font-size: 11px;
|
|
2347
|
+
font-weight: 600;
|
|
2348
|
+
color: var(--text-secondary);
|
|
2349
|
+
}
|
|
2350
|
+
|
|
2351
|
+
.graph-validation-empty {
|
|
2352
|
+
padding: 2px 6px 6px;
|
|
2353
|
+
font-size: 12px;
|
|
2354
|
+
color: var(--text-secondary);
|
|
2355
|
+
}
|
|
2356
|
+
|
|
2357
|
+
.graph-validation-issues {
|
|
2358
|
+
list-style: none;
|
|
2359
|
+
margin: 0;
|
|
2360
|
+
padding: 0;
|
|
2361
|
+
display: flex;
|
|
2362
|
+
flex-direction: column;
|
|
2363
|
+
gap: 4px;
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
.graph-validation-issue {
|
|
2367
|
+
padding: 6px 8px;
|
|
2368
|
+
border-radius: 6px;
|
|
2369
|
+
border-left: 3px solid var(--color-error);
|
|
2370
|
+
background: var(--color-error-bg);
|
|
2371
|
+
font-size: 12px;
|
|
2372
|
+
color: var(--text-primary);
|
|
2373
|
+
}
|
|
2374
|
+
|
|
2375
|
+
/* The focusable/clickable element inside each <li> (keeps listitem semantics). */
|
|
2376
|
+
.graph-validation-issue-body {
|
|
2377
|
+
display: flex;
|
|
2378
|
+
flex-direction: column;
|
|
2379
|
+
gap: 2px;
|
|
2380
|
+
}
|
|
2381
|
+
|
|
2382
|
+
.graph-validation-issue--warning {
|
|
2383
|
+
border-left-color: var(--color-warning);
|
|
2384
|
+
background: var(--surface-sunken);
|
|
2385
|
+
}
|
|
2386
|
+
|
|
2387
|
+
.graph-validation-issue--clickable {
|
|
2388
|
+
cursor: pointer;
|
|
2389
|
+
}
|
|
2390
|
+
|
|
2391
|
+
.graph-validation-issue--clickable:hover {
|
|
2392
|
+
filter: brightness(1.1);
|
|
2393
|
+
}
|
|
2394
|
+
|
|
2395
|
+
.graph-validation-issue-body:focus-visible {
|
|
2396
|
+
outline: 2px solid var(--focus-ring);
|
|
2397
|
+
outline-offset: 1px;
|
|
2398
|
+
border-radius: 4px;
|
|
2399
|
+
}
|
|
2400
|
+
|
|
2401
|
+
.graph-validation-issue-meta {
|
|
2402
|
+
display: flex;
|
|
2403
|
+
align-items: baseline;
|
|
2404
|
+
gap: 6px;
|
|
2405
|
+
flex-wrap: wrap;
|
|
2406
|
+
}
|
|
2407
|
+
|
|
2408
|
+
.graph-validation-issue-context {
|
|
2409
|
+
font-family: var(--font-mono);
|
|
2410
|
+
font-size: 11px;
|
|
2411
|
+
font-weight: 600;
|
|
2412
|
+
color: var(--text-secondary);
|
|
2413
|
+
}
|
|
2414
|
+
|
|
2415
|
+
.graph-validation-issue-file {
|
|
2416
|
+
font-size: 10px;
|
|
2417
|
+
color: var(--text-dim);
|
|
2418
|
+
}
|
|
2419
|
+
|
|
2420
|
+
.graph-validation-issue-message {
|
|
2421
|
+
white-space: pre-wrap;
|
|
2422
|
+
overflow-wrap: anywhere;
|
|
2423
|
+
}
|
|
2424
|
+
|
|
2425
|
+
.graph-validation-issue-fix {
|
|
2426
|
+
font-size: 11px;
|
|
2427
|
+
color: var(--text-secondary);
|
|
2428
|
+
}
|
|
2429
|
+
|
|
2430
|
+
.graph-validation-issue-fix::before {
|
|
2431
|
+
content: "Fix: ";
|
|
2432
|
+
font-weight: 600;
|
|
2433
|
+
}
|
|
2434
|
+
|
|
2188
2435
|
/* ─── Standalone GraphViewer chrome (toolbar, theme, layout) ─────────── */
|
|
2189
2436
|
|
|
2190
2437
|
* {
|