system-canvas 0.1.15 → 0.1.17
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.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/slots.d.ts.map +1 -1
- package/dist/slots.js +135 -13
- package/dist/slots.js.map +1 -1
- package/dist/text.d.ts +15 -0
- package/dist/text.d.ts.map +1 -1
- package/dist/text.js +53 -6
- package/dist/text.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export { rollupNodes, rollupNodesDeep } from './rollup.js';
|
|
|
9
9
|
export { computeCategorySlotRegions, resolveAccessor, resolveAccessorOr, getCategorySlots, pickRefIndicatorCorner, slotEntries, computeReflowReservations, } from './slots.js';
|
|
10
10
|
export type { ReflowReservations } from './slots.js';
|
|
11
11
|
export { getAtPath, setAtPath } from './paths.js';
|
|
12
|
-
export { measureTextWidth, wrapText, wrapTextWithBreaks } from './text.js';
|
|
12
|
+
export { measureTextWidth, truncateToWidth, wrapText, wrapTextWithBreaks, } from './text.js';
|
|
13
13
|
export { resolveCanvas, buildNodeMap, getNodeLabel, getGroupChildren, validateCanvas, generateNodeId, getNodeMenuOptions, createNodeFromOption, addNode, updateNode, removeNode, generateEdgeId, addEdge, updateEdge, removeEdge, } from './canvas.js';
|
|
14
14
|
export declare const themes: {
|
|
15
15
|
readonly dark: import("./types.js").CanvasTheme;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,eAAe,EACf,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,UAAU,EACV,eAAe,EACf,UAAU,EACV,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,4BAA4B,EAC5B,UAAU,EACV,UAAU,EACV,cAAc,EACd,UAAU,EACV,eAAe,EAEf,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,iBAAiB,GAClB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,SAAS,EACT,aAAa,EACb,UAAU,EACV,cAAc,EACd,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAGhD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAG3E,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAG1D,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,yBAAyB,GAC1B,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGpD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAKjD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,eAAe,EACf,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,UAAU,EACV,eAAe,EACf,UAAU,EACV,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,4BAA4B,EAC5B,UAAU,EACV,UAAU,EACV,cAAc,EACd,UAAU,EACV,eAAe,EAEf,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,iBAAiB,GAClB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,SAAS,EACT,aAAa,EACb,UAAU,EACV,cAAc,EACd,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAGhD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAG3E,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAG1D,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,yBAAyB,GAC1B,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGpD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAKjD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,kBAAkB,GACnB,MAAM,WAAW,CAAA;AAGlB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,EACP,UAAU,EACV,UAAU,EACV,cAAc,EACd,OAAO,EACP,UAAU,EACV,UAAU,GACX,MAAM,aAAa,CAAA;AAUpB,eAAO,MAAM,MAAM;;;;;;;CAOT,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ export { getAtPath, setAtPath } from './paths.js';
|
|
|
17
17
|
// Text measurement & wrapping (used by `kind: 'text'` slots; exported for
|
|
18
18
|
// consumers writing `kind: 'custom'` body renderers that need the same
|
|
19
19
|
// wrap behavior).
|
|
20
|
-
export { measureTextWidth, wrapText, wrapTextWithBreaks } from './text.js';
|
|
20
|
+
export { measureTextWidth, truncateToWidth, wrapText, wrapTextWithBreaks, } from './text.js';
|
|
21
21
|
// Canvas helpers
|
|
22
22
|
export { resolveCanvas, buildNodeMap, getNodeLabel, getGroupChildren, validateCanvas, generateNodeId, getNodeMenuOptions, createNodeFromOption, addNode, updateNode, removeNode, generateEdgeId, addEdge, updateEdge, removeEdge, } from './canvas.js';
|
|
23
23
|
// Convenience theme collection
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6DA,SAAS;AACT,OAAO,EACL,SAAS,EACT,aAAa,EACb,UAAU,EACV,cAAc,EACd,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAE1B,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAA;AAG7B,eAAe;AACf,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE3E,iBAAiB;AACjB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AAErB,iCAAiC;AACjC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAA;AAEzB,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE1D,wBAAwB;AACxB,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,yBAAyB,GAC1B,MAAM,YAAY,CAAA;AAGnB,wEAAwE;AACxE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEjD,0EAA0E;AAC1E,uEAAuE;AACvE,kBAAkB;AAClB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6DA,SAAS;AACT,OAAO,EACL,SAAS,EACT,aAAa,EACb,UAAU,EACV,cAAc,EACd,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAE1B,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAA;AAG7B,eAAe;AACf,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE3E,iBAAiB;AACjB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAA;AAErB,iCAAiC;AACjC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,kBAAkB,CAAA;AAEzB,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE1D,wBAAwB;AACxB,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,EACX,yBAAyB,GAC1B,MAAM,YAAY,CAAA;AAGnB,wEAAwE;AACxE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAEjD,0EAA0E;AAC1E,uEAAuE;AACvE,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,kBAAkB,GACnB,MAAM,WAAW,CAAA;AAElB,iBAAiB;AACjB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,EACP,UAAU,EACV,UAAU,EACV,cAAc,EACd,OAAO,EACP,UAAU,EACV,UAAU,GACX,MAAM,aAAa,CAAA;AAEpB,+BAA+B;AAC/B,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,aAAa,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,EAAE,UAAU,IAAI,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,YAAY,IAAI,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9D,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,MAAM;IACb,SAAS,EAAE,UAAU;IACrB,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,QAAQ;CACT,CAAA"}
|
package/dist/slots.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../src/slots.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EAEX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,QAAQ,EACT,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"slots.d.ts","sourceRoot":"","sources":["../src/slots.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EAEX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,QAAQ,EACT,MAAM,YAAY,CAAA;AA8EnB;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,WAAW,EAClB,KAAK,CAAC,EAAE,aAAa,GACpB,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAmNhC;AA4DD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,CAAC,CAEjF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,EACrC,QAAQ,EAAE,CAAC,EACX,GAAG,EAAE,WAAW,GACf,CAAC,CAGH;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,WAAW,GACjB,aAAa,GAAG,SAAS,CAI3B;AAMD,KAAK,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,CAAA;AAEnE;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,aAAa,GAAG,SAAS,GAC/B,MAAM,CAyBR;AAMD;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,aAAa,GACnB,KAAK,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAwBjC;AAMD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,aAAa,GAAG,SAAS,GAC/B,kBAAkB,CAEpB"}
|
package/dist/slots.js
CHANGED
|
@@ -29,6 +29,47 @@ const TAB_BADGE_EM = 1.4;
|
|
|
29
29
|
const TAB_BADGE_LIFT = 10;
|
|
30
30
|
/** How far the tab badge extends past the node's right edge (in px). */
|
|
31
31
|
const TAB_BADGE_OVERHANG = 8;
|
|
32
|
+
/**
|
|
33
|
+
* Clearance width (icon footprint + gap) that a header / footer region
|
|
34
|
+
* must leave for a sibling corner slot. Returns 0 for non-badge or
|
|
35
|
+
* absent specs so header geometry stays byte-identical to the
|
|
36
|
+
* pre-patch behavior when no corner badge is present.
|
|
37
|
+
*
|
|
38
|
+
* Mirrors the rendered-width logic in `computeReflowReservationsInternal`'s
|
|
39
|
+
* `topLeft` reservation block (see the body-label `left` block in
|
|
40
|
+
* `computeReflowReservationsInternal` below) so an icon with an
|
|
41
|
+
* explicit oversize `size` is fully cleared. Static-number `size`
|
|
42
|
+
* accessors are honored; function accessors (`(ctx) => …`) fall back
|
|
43
|
+
* to the region-width footprint, matching the existing body-label
|
|
44
|
+
* convention.
|
|
45
|
+
*
|
|
46
|
+
* `color` slots are edge strips, not corner badges — they paint at
|
|
47
|
+
* `LEFT_EDGE_PX` thickness and don't intrude into header territory.
|
|
48
|
+
* `progress` / `count` / `pill` / `text` / `custom` in corner regions
|
|
49
|
+
* are not enclosed in this clearance because none of them are used as
|
|
50
|
+
* header-adjacent siblings today; if a future pattern wants pill
|
|
51
|
+
* clearance on the header, extend this helper.
|
|
52
|
+
*/
|
|
53
|
+
function cornerSlotClearance(spec, fontSize) {
|
|
54
|
+
if (!spec)
|
|
55
|
+
return 0;
|
|
56
|
+
if (spec.kind !== 'dot' && spec.kind !== 'icon')
|
|
57
|
+
return 0;
|
|
58
|
+
const corner = CORNER_EM * fontSize;
|
|
59
|
+
let renderedWidth = corner;
|
|
60
|
+
if (spec.kind === 'icon') {
|
|
61
|
+
const explicitSize = spec.size;
|
|
62
|
+
if (typeof explicitSize === 'number' && explicitSize > corner) {
|
|
63
|
+
renderedWidth = explicitSize;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const gap = Math.max(8, Math.round(fontSize * 0.75));
|
|
67
|
+
// The badge is centered in a `corner`-wide region; for an oversize
|
|
68
|
+
// icon, the extra width spills symmetrically. Half-spill on the
|
|
69
|
+
// inner side + the icon's own footprint + the gap.
|
|
70
|
+
const overhang = Math.max(0, (renderedWidth - corner) / 2);
|
|
71
|
+
return overhang + corner + gap;
|
|
72
|
+
}
|
|
32
73
|
/**
|
|
33
74
|
* Compute the region rect (in canvas-space) for every slot position on a
|
|
34
75
|
* resolved node. Pure geometry — no knowledge of which slots are actually
|
|
@@ -176,18 +217,64 @@ export function computeCategorySlotRegions(node, theme, slots) {
|
|
|
176
217
|
width: corner,
|
|
177
218
|
height: corner,
|
|
178
219
|
},
|
|
179
|
-
header: {
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
220
|
+
header: (() => {
|
|
221
|
+
// The header strip would otherwise overlap a `topLeft` /
|
|
222
|
+
// `topRight` corner badge (dot/icon): header starts at
|
|
223
|
+
// `HEADER_INSET_X` (14) while a corner badge occupies
|
|
224
|
+
// `CORNER_INSET` (8) to `CORNER_INSET + corner` (~24). Shift
|
|
225
|
+
// the header's left/right edges to clear the badge plus a
|
|
226
|
+
// small gap — same arithmetic the body-label reservation
|
|
227
|
+
// uses in `computeReflowReservationsInternal`. `color` slots
|
|
228
|
+
// are thin edge strips, not corner badges, and don't need
|
|
229
|
+
// clearance here.
|
|
230
|
+
let hx = x + HEADER_INSET_X;
|
|
231
|
+
let hw = Math.max(0, width - HEADER_INSET_X * 2);
|
|
232
|
+
const leftClear = cornerSlotClearance(slots?.topLeft, fs);
|
|
233
|
+
if (leftClear > 0) {
|
|
234
|
+
const leftEdge = x + CORNER_INSET + leftClear;
|
|
235
|
+
const shift = Math.max(0, leftEdge - hx);
|
|
236
|
+
hx += shift;
|
|
237
|
+
hw = Math.max(0, hw - shift);
|
|
238
|
+
}
|
|
239
|
+
const rightClear = cornerSlotClearance(slots?.topRight, fs);
|
|
240
|
+
if (rightClear > 0) {
|
|
241
|
+
const rightEdge = x + width - CORNER_INSET - rightClear;
|
|
242
|
+
const currentRight = hx + hw;
|
|
243
|
+
const shrink = Math.max(0, currentRight - rightEdge);
|
|
244
|
+
hw = Math.max(0, hw - shrink);
|
|
245
|
+
}
|
|
246
|
+
return { x: hx, y: y + HEADER_INSET_Y, width: hw, height: header };
|
|
247
|
+
})(),
|
|
248
|
+
footer: (() => {
|
|
249
|
+
// Same treatment as the header for `bottomLeft` / `bottomRight`
|
|
250
|
+
// sibling badges. Not exercised by anything in the demo today,
|
|
251
|
+
// but the asymmetry is real — a footer text starting at
|
|
252
|
+
// `HEADER_INSET_X` overlaps a bottomLeft corner badge by ~10px
|
|
253
|
+
// at `fs=13`. Patching for symmetry now is cheaper than
|
|
254
|
+
// fielding the next bug report.
|
|
255
|
+
let fx = x + HEADER_INSET_X;
|
|
256
|
+
let fw = Math.max(0, width - HEADER_INSET_X * 2);
|
|
257
|
+
const leftClear = cornerSlotClearance(slots?.bottomLeft, fs);
|
|
258
|
+
if (leftClear > 0) {
|
|
259
|
+
const leftEdge = x + CORNER_INSET + leftClear;
|
|
260
|
+
const shift = Math.max(0, leftEdge - fx);
|
|
261
|
+
fx += shift;
|
|
262
|
+
fw = Math.max(0, fw - shift);
|
|
263
|
+
}
|
|
264
|
+
const rightClear = cornerSlotClearance(slots?.bottomRight, fs);
|
|
265
|
+
if (rightClear > 0) {
|
|
266
|
+
const rightEdge = x + width - CORNER_INSET - rightClear;
|
|
267
|
+
const currentRight = fx + fw;
|
|
268
|
+
const shrink = Math.max(0, currentRight - rightEdge);
|
|
269
|
+
fw = Math.max(0, fw - shrink);
|
|
270
|
+
}
|
|
271
|
+
return {
|
|
272
|
+
x: fx,
|
|
273
|
+
y: y + height - FOOTER_INSET_Y - footer,
|
|
274
|
+
width: fw,
|
|
275
|
+
height: footer,
|
|
276
|
+
};
|
|
277
|
+
})(),
|
|
191
278
|
body: {
|
|
192
279
|
x: bodyX,
|
|
193
280
|
y: bodyY,
|
|
@@ -395,9 +482,44 @@ function computeReflowReservationsInternal(node, theme, slots) {
|
|
|
395
482
|
// brand-glyph icon in `topLeft` (the canonical "platform" use case) is
|
|
396
483
|
// visually the same affordance as a status dot — a small thing next to
|
|
397
484
|
// the title.
|
|
485
|
+
//
|
|
486
|
+
// For `kind: 'icon'`, the consumer can override the auto-fit size via
|
|
487
|
+
// `spec.size`. When that explicit size exceeds the slot region's
|
|
488
|
+
// width, the icon visibly overflows the slot box — the renderer
|
|
489
|
+
// centers the glyph in the region, so a larger icon pokes out
|
|
490
|
+
// symmetrically left AND right of the region. Reserve the icon's
|
|
491
|
+
// actual rendered width (anchored at the slot's left edge), not just
|
|
492
|
+
// the region's width, so the title clears the overflowing glyph
|
|
493
|
+
// instead of crashing into it.
|
|
494
|
+
//
|
|
495
|
+
// We deliberately use a static-value read for `spec.size` rather than
|
|
496
|
+
// resolving the accessor. The accessor needs a full `SlotContext`
|
|
497
|
+
// (region, theme, canvases, rollups) which we don't have here in the
|
|
498
|
+
// pure-geometry reservation pass — and 99% of icon size overrides
|
|
499
|
+
// are static numbers, not per-node-dynamic. Function-valued sizes
|
|
500
|
+
// fall back to the region-width reservation; an icon dynamically
|
|
501
|
+
// sized larger than its slot can still set a static lower bound or
|
|
502
|
+
// accept the visual crowding.
|
|
503
|
+
//
|
|
504
|
+
// The padding-after-icon is keyed off `fontSize` so it scales with
|
|
505
|
+
// the theme. At fontSize 13 (the default) the gap is 10px — enough
|
|
506
|
+
// breathing room that the title doesn't read as crowding the glyph.
|
|
398
507
|
if (slots.topLeft &&
|
|
399
508
|
(slots.topLeft.kind === 'dot' || slots.topLeft.kind === 'icon')) {
|
|
400
|
-
|
|
509
|
+
const region = regions.topLeft;
|
|
510
|
+
let renderedWidth = region.width;
|
|
511
|
+
if (slots.topLeft.kind === 'icon') {
|
|
512
|
+
const explicitSize = slots.topLeft.size;
|
|
513
|
+
if (typeof explicitSize === 'number' && explicitSize > region.width) {
|
|
514
|
+
renderedWidth = explicitSize;
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
// The icon is centered in the region; its left edge is at
|
|
518
|
+
// `region.x + (region.width - renderedWidth) / 2`. The body title
|
|
519
|
+
// needs to clear THAT left edge plus the rendered width.
|
|
520
|
+
const iconLeftFromNode = region.x - node.x + (region.width - renderedWidth) / 2;
|
|
521
|
+
const gap = Math.max(8, Math.round(theme.node.fontSize * 0.75));
|
|
522
|
+
left = Math.max(left, iconLeftFromNode + renderedWidth + gap);
|
|
401
523
|
}
|
|
402
524
|
// Dashboard-card pattern. Two flavors:
|
|
403
525
|
//
|
package/dist/slots.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slots.js","sourceRoot":"","sources":["../src/slots.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slots.js","sourceRoot":"","sources":["../src/slots.ts"],"names":[],"mappings":"AAYA,8EAA8E;AAC9E,kBAAkB;AAClB,EAAE;AACF,yEAAyE;AACzE,yEAAyE;AACzE,wEAAwE;AACxE,8EAA8E;AAE9E,MAAM,YAAY,GAAG,CAAC,CAAA;AACtB,MAAM,SAAS,GAAG,IAAI,CAAA;AACtB,MAAM,SAAS,GAAG,GAAG,CAAA;AACrB,MAAM,SAAS,GAAG,GAAG,CAAA;AACrB,MAAM,cAAc,GAAG,EAAE,CAAA;AACzB,MAAM,cAAc,GAAG,EAAE,CAAA;AACzB,MAAM,cAAc,GAAG,EAAE,CAAA;AACzB;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAC,CAAA;AACrB,MAAM,aAAa,GAAG,CAAC,CAAA;AACvB,MAAM,YAAY,GAAG,CAAC,CAAA;AACtB,sEAAsE;AACtE,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAC5B,MAAM,wBAAwB,GAAG,IAAI,CAAA;AACrC,yDAAyD;AACzD,MAAM,YAAY,GAAG,GAAG,CAAA;AACxB,sEAAsE;AACtE,MAAM,cAAc,GAAG,EAAE,CAAA;AACzB,wEAAwE;AACxE,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAE5B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAS,mBAAmB,CAC1B,IAA0B,EAC1B,QAAgB;IAEhB,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAA;IACnB,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,CAAA;IACzD,MAAM,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;IACnC,IAAI,aAAa,GAAG,MAAM,CAAA;IAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,YAAY,GAAI,IAAwC,CAAC,IAAI,CAAA;QACnE,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,GAAG,MAAM,EAAE,CAAC;YAC9D,aAAa,GAAG,YAAY,CAAA;QAC9B,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAA;IACpD,mEAAmE;IACnE,gEAAgE;IAChE,mDAAmD;IACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1D,OAAO,QAAQ,GAAG,MAAM,GAAG,GAAG,CAAA;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,IAAkB,EAClB,KAAkB,EAClB,KAAqB;IAErB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACpC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAA;IAC9B,MAAM,MAAM,GAAG,SAAS,GAAG,EAAE,CAAA;IAC7B,MAAM,MAAM,GAAG,SAAS,GAAG,EAAE,CAAA;IAC7B,MAAM,MAAM,GAAG,SAAS,GAAG,EAAE,CAAA;IAC7B,MAAM,GAAG,GAAG,YAAY,GAAG,EAAE,CAAA;IAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CACzB,kBAAkB,EAClB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,wBAAwB,CAAC,CAC9C,CAAA;IACD,wEAAwE;IACxE,qEAAqE;IACrE,uEAAuE;IACvE,wEAAwE;IACxE,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACpE,MAAM,KAAK,GAAG,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAA;IACvC,MAAM,KAAK,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAA;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;IACrF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACvF,wEAAwE;IACxE,uEAAuE;IACvE,mEAAmE;IACnE,4CAA4C;IAC5C,OAAO;QACL,OAAO,EAAE;YACP,CAAC;YACD,CAAC;YACD,KAAK;YACL,MAAM,EAAE,WAAW;SACpB;QACD,UAAU,EAAE;YACV,CAAC;YACD,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,UAAU;YAC1B,KAAK;YACL,MAAM,EAAE,UAAU;SACnB;QACD,QAAQ,EAAE;YACR,CAAC;YACD,CAAC;YACD,KAAK,EAAE,YAAY;YACnB,MAAM;SACP;QACD,SAAS,EAAE;YACT,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,aAAa;YAC5B,CAAC;YACD,KAAK,EAAE,aAAa;YACpB,MAAM;SACP;QACD,OAAO,EAAE,CAAC,GAAG,EAAE;YACb,6DAA6D;YAC7D,2BAA2B;YAC3B,EAAE;YACF,2DAA2D;YAC3D,iCAAiC;YACjC,EAAE;YACF,yDAAyD;YACzD,6DAA6D;YAC7D,8DAA8D;YAC9D,6DAA6D;YAC7D,4BAA4B;YAC5B,EAAE;YACF,2DAA2D;YAC3D,4DAA4D;YAC5D,2DAA2D;YAC3D,6DAA6D;YAC7D,0DAA0D;YAC1D,EAAE;YACF,+DAA+D;YAC/D,+DAA+D;YAC/D,2DAA2D;YAC3D,sBAAsB;YACtB,MAAM,SAAS,GAAG,KAAK,EAAE,MAAM,KAAK,SAAS,CAAA;YAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;YACrD,MAAM,KAAK,GAAG,SAAS;gBACrB,CAAC,CAAC,wDAAwD;oBACxD,2DAA2D;oBAC3D,sDAAsD;oBACtD,CAAC,GAAG,cAAc,GAAG,EAAE,GAAG,CAAC;gBAC7B,CAAC,CAAC,uCAAuC;oBACvC,CAAC,GAAG,cAAc,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC,CAAA;YAClD,OAAO;gBACL,CAAC,EAAE,CAAC,GAAG,cAAc;gBACrB,CAAC,EAAE,KAAK;gBACR,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,cAAc,GAAG,CAAC,CAAC;gBAC9C,MAAM,EAAE,UAAU;aACnB,CAAA;QACH,CAAC,CAAC,EAAE;QACJ,aAAa,EAAE;YACb,8DAA8D;YAC9D,6DAA6D;YAC7D,+DAA+D;YAC/D,mBAAmB;YACnB,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,GAAG,GAAG,kBAAkB;YACvC,CAAC,EAAE,CAAC,GAAG,cAAc;YACrB,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;SACZ;QACD,OAAO,EAAE,CAAC,GAAG,EAAE;YACb,+DAA+D;YAC/D,kEAAkE;YAClE,EAAE;YACF,kEAAkE;YAClE,gEAAgE;YAChE,kEAAkE;YAClE,gEAAgE;YAChE,iEAAiE;YACjE,6DAA6D;YAC7D,mDAAmD;YACnD,EAAE;YACF,gEAAgE;YAChE,mEAAmE;YACnE,gEAAgE;YAChE,MAAM,aAAa,GACjB,KAAK,EAAE,OAAO,KAAK,SAAS;gBAC5B,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC;gBAC/D,KAAK,CAAC,MAAM,KAAK,SAAS,CAAA;YAC5B,MAAM,KAAK,GAAG,aAAa;gBACzB,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;gBAC3B,CAAC,CAAC,CAAC,GAAG,YAAY,CAAA;YACpB,OAAO;gBACL,CAAC,EAAE,CAAC,GAAG,YAAY;gBACnB,CAAC,EAAE,KAAK;gBACR,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,MAAM;aACf,CAAA;QACH,CAAC,CAAC,EAAE;QACJ,QAAQ,EAAE;YACR,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,MAAM;YACpC,CAAC,EAAE,CAAC,GAAG,YAAY;YACnB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;SACf;QACD,UAAU,EAAE;YACV,CAAC,EAAE,CAAC,GAAG,YAAY;YACnB,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,YAAY,GAAG,MAAM;YACrC,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;SACf;QACD,WAAW,EAAE;YACX,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,MAAM;YACpC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,YAAY,GAAG,MAAM;YACrC,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;SACf;QACD,MAAM,EAAE,CAAC,GAAG,EAAE;YACZ,yDAAyD;YACzD,uDAAuD;YACvD,sDAAsD;YACtD,6DAA6D;YAC7D,0DAA0D;YAC1D,yDAAyD;YACzD,6DAA6D;YAC7D,0DAA0D;YAC1D,kBAAkB;YAClB,IAAI,EAAE,GAAG,CAAC,GAAG,cAAc,CAAA;YAC3B,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,cAAc,GAAG,CAAC,CAAC,CAAA;YAChD,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;YACzD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,GAAG,SAAS,CAAA;gBAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAA;gBACxC,EAAE,IAAI,KAAK,CAAA;gBACX,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAA;YAC9B,CAAC;YACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;YAC3D,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,UAAU,CAAA;gBACvD,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,CAAA;gBAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,CAAA;gBACpD,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAA;YAC/B,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;QACpE,CAAC,CAAC,EAAE;QACJ,MAAM,EAAE,CAAC,GAAG,EAAE;YACZ,gEAAgE;YAChE,+DAA+D;YAC/D,wDAAwD;YACxD,+DAA+D;YAC/D,wDAAwD;YACxD,gCAAgC;YAChC,IAAI,EAAE,GAAG,CAAC,GAAG,cAAc,CAAA;YAC3B,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,cAAc,GAAG,CAAC,CAAC,CAAA;YAChD,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;YAC5D,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,GAAG,SAAS,CAAA;gBAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAA;gBACxC,EAAE,IAAI,KAAK,CAAA;gBACX,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAA;YAC9B,CAAC;YACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;YAC9D,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,UAAU,CAAA;gBACvD,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,CAAA;gBAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC,CAAA;gBACpD,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAA;YAC/B,CAAC;YACD,OAAO;gBACL,CAAC,EAAE,EAAE;gBACL,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,cAAc,GAAG,MAAM;gBACvC,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,MAAM;aACf,CAAA;QACH,CAAC,CAAC,EAAE;QACJ,IAAI,EAAE;YACJ,CAAC,EAAE,KAAK;YACR,CAAC,EAAE,KAAK;YACR,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,UAAU;SACnB;KACF,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,uBAAuB,CAC9B,IAAkB,EAClB,KAAkB,EAClB,KAAgC;IAEhC,iEAAiE;IACjE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,GAAG,EAAE,cAAc;YACnB,MAAM,EAAE,cAAc;YACtB,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,cAAc;SACtB,CAAA;IACH,CAAC;IACD,MAAM,CAAC,GAAG,iCAAiC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC/D,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IAEzC,mEAAmE;IACnE,6DAA6D;IAC7D,+DAA+D;IAC/D,iEAAiE;IACjE,uDAAuD;IACvD,EAAE;IACF,mEAAmE;IACnE,kEAAkE;IAClE,kEAAkE;IAClE,iCAAiC;IACjC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAA;QAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;QACrD,6DAA6D;QAC7D,iEAAiE;QACjE,4DAA4D;QAC5D,MAAM,iBAAiB,GAAG,cAAc,GAAG,EAAE,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,CAAA;QAClE,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAA;IACxC,CAAC;IAED,kEAAkE;IAClE,6DAA6D;IAC7D,OAAO;QACL,GAAG;QACH,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC;QAC1C,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC;QACtC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,cAAc,CAAC;KACzC,CAAA;AACH,CAAC;AAED,gEAAgE;AAChE,SAAS,IAAI,CAAI,CAAkB;IACjC,OAAO,OAAO,CAAC,KAAK,UAAU,CAAA;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAI,QAAyB,EAAE,GAAgB;IAC5E,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAqC,EACrC,QAAW,EACX,GAAgB;IAEhB,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAA;IAC3C,OAAO,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAkB,EAClB,KAAkB;IAElB,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAA;IACpC,MAAM,GAAG,GAAmC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC3E,OAAO,GAAG,EAAE,KAAK,CAAA;AACnB,CAAC;AAQD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB,CACpC,aAAqB,EACrB,KAAgC;IAEhC,IAAI,CAAC,KAAK;QAAE,OAAO,aAAa,CAAA;IAEhC,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAW,EAAE;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;QACzB,IAAI,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACtE,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,aAAa,CAAC,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAC5E,oEAAoE;QACpE,IAAI,CAAC,KAAK,UAAU,IAAI,KAAK,CAAC,aAAa;YAAE,OAAO,IAAI,CAAA;QACxD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,OAAO,aAAa,CAAA;IAElD,qEAAqE;IACrE,MAAM,KAAK,GAA6B;QACtC,OAAO,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,YAAY,CAAC;QAClD,QAAQ,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC;QAClD,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC;QAClD,WAAW,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC;KACnD,CAAA;IACD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAA;IAC5B,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,UAAU,WAAW,CACzB,KAAoB;IAEpB,MAAM,SAAS,GAAmB;QAChC,SAAS;QACT,YAAY;QACZ,UAAU;QACV,WAAW;QACX,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,SAAS;QACT,SAAS;QACT,UAAU;QACV,YAAY;QACZ,aAAa;QACb,mEAAmE;QACnE,iEAAiE;QACjE,eAAe;KAChB,CAAA;IACD,MAAM,GAAG,GAAoC,EAAE,CAAA;IAC/C,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAClB,IAAI,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAaD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,yBAAyB,CACvC,IAAkB,EAClB,KAAkB,EAClB,KAAgC;IAEhC,OAAO,iCAAiC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAC9D,CAAC;AAED;;;;GAIG;AACH,SAAS,iCAAiC,CACxC,IAAkB,EAClB,KAAkB,EAClB,KAAgC;IAEhC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;IAE3D,qEAAqE;IACrE,wEAAwE;IACxE,4DAA4D;IAC5D,MAAM,OAAO,GAAG,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACvD,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,IAAI,KAAK,CAAC,MAAM;QAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,cAAc,GAAG,CAAC,CAAA;IAClE,IAAI,KAAK,CAAC,MAAM;QAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,cAAc,GAAG,CAAC,CAAA;IACrE,IAAI,KAAK,CAAC,QAAQ;QAAE,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAA;IACrD,IAAI,KAAK,CAAC,SAAS;QAAE,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAA;IACxD,uEAAuE;IACvE,kEAAkE;IAClE,mEAAmE;IACnE,uEAAuE;IACvE,uEAAuE;IACvE,aAAa;IACb,EAAE;IACF,sEAAsE;IACtE,iEAAiE;IACjE,gEAAgE;IAChE,8DAA8D;IAC9D,iEAAiE;IACjE,qEAAqE;IACrE,gEAAgE;IAChE,+BAA+B;IAC/B,EAAE;IACF,sEAAsE;IACtE,kEAAkE;IAClE,qEAAqE;IACrE,kEAAkE;IAClE,kEAAkE;IAClE,iEAAiE;IACjE,mEAAmE;IACnE,8BAA8B;IAC9B,EAAE;IACF,mEAAmE;IACnE,mEAAmE;IACnE,oEAAoE;IACpE,IACE,KAAK,CAAC,OAAO;QACb,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,EAC/D,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,aAAa,GAAG,MAAM,CAAC,KAAK,CAAA;QAChC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAClC,MAAM,YAAY,GAAI,KAAK,CAAC,OAA2C,CAAC,IAAI,CAAA;YAC5E,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;gBACpE,aAAa,GAAG,YAAY,CAAA;YAC9B,CAAC;QACH,CAAC;QACD,0DAA0D;QAC1D,kEAAkE;QAClE,yDAAyD;QACzD,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;QAC/E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAA;QAC/D,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,GAAG,aAAa,GAAG,GAAG,CAAC,CAAA;IAC/D,CAAC;IAED,uCAAuC;IACvC,EAAE;IACF,uEAAuE;IACvE,uEAAuE;IACvE,oEAAoE;IACpE,EAAE;IACF,uEAAuE;IACvE,oEAAoE;IACpE,qEAAqE;IACrE,0EAA0E;IAC1E,sEAAsE;IACtE,8DAA8D;IAC9D,EAAE;IACF,sEAAsE;IACtE,2BAA2B;IAC3B,MAAM,eAAe,GACnB,KAAK,CAAC,MAAM,KAAK,SAAS;QAC1B,KAAK,CAAC,QAAQ,KAAK,SAAS;QAC5B,KAAK,CAAC,OAAO,KAAK,SAAS;QAC3B,KAAK,CAAC,MAAM,KAAK,SAAS,CAAA;IAC5B,MAAM,mBAAmB,GACvB,KAAK,CAAC,OAAO,KAAK,SAAS;QAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IACjE,MAAM,WAAW,GAAG,eAAe,IAAI,mBAAmB,CAAA;IAC1D,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,eAAe,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACrC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;QACrC,CAAC;QACD,iEAAiE;QACjE,kEAAkE;QAClE,8DAA8D;QAC9D,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;QACrC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;IACzC,CAAC;IACD,oEAAoE;IACpE,sEAAsE;IACtE,uCAAuC;IACvC,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACrD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAA;IAChE,CAAC;IAED,qDAAqD;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,MAAM,CAAA;IAC5C,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,GAAG,GAAG,CAAC,CAAA;QACP,MAAM,GAAG,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,KAAK,CAAA;IAC1C,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,CAAA;QACR,KAAK,GAAG,CAAC,CAAA;IACX,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;AACrC,CAAC"}
|
package/dist/text.d.ts
CHANGED
|
@@ -31,4 +31,19 @@ export declare function wrapText(text: string, maxWidth: number, fontSize: numbe
|
|
|
31
31
|
* for fixed-height regions where overflow would clip mid-glyph.
|
|
32
32
|
*/
|
|
33
33
|
export declare function wrapTextWithBreaks(text: string, maxWidth: number, fontSize: number, maxLines?: number): string[];
|
|
34
|
+
/**
|
|
35
|
+
* Trim `text` to fit within `maxWidth` at `fontSize`, appending an
|
|
36
|
+
* ellipsis when truncation occurs. Character-wise — drops one
|
|
37
|
+
* character at a time from the end, suitable for single-token strings
|
|
38
|
+
* (usernames, file paths, ids) that have no word boundaries to step
|
|
39
|
+
* back through.
|
|
40
|
+
*
|
|
41
|
+
* Returns the original string unchanged when it already fits, so
|
|
42
|
+
* callers can use this unconditionally without measuring first.
|
|
43
|
+
*
|
|
44
|
+
* For paragraph-style text where dropping whole words reads better,
|
|
45
|
+
* use `wrapTextWithBreaks` with a `maxLines` cap instead — its
|
|
46
|
+
* truncation step is word-aware.
|
|
47
|
+
*/
|
|
48
|
+
export declare function truncateToWidth(text: string, maxWidth: number, fontSize: number): string;
|
|
34
49
|
//# sourceMappingURL=text.d.ts.map
|
package/dist/text.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AA8BA;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,MAAM,EAAE,CAmBV;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,EAAE,CAkBV"}
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AA8BA;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGvE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,MAAM,EAAE,CAmBV;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,EAAE,CAkBV;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,MAAM,CA2BR"}
|
package/dist/text.js
CHANGED
|
@@ -106,10 +106,56 @@ export function wrapTextWithBreaks(text, maxWidth, fontSize, maxLines) {
|
|
|
106
106
|
return out;
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
109
|
-
* Trim `
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
*
|
|
109
|
+
* Trim `text` to fit within `maxWidth` at `fontSize`, appending an
|
|
110
|
+
* ellipsis when truncation occurs. Character-wise — drops one
|
|
111
|
+
* character at a time from the end, suitable for single-token strings
|
|
112
|
+
* (usernames, file paths, ids) that have no word boundaries to step
|
|
113
|
+
* back through.
|
|
114
|
+
*
|
|
115
|
+
* Returns the original string unchanged when it already fits, so
|
|
116
|
+
* callers can use this unconditionally without measuring first.
|
|
117
|
+
*
|
|
118
|
+
* For paragraph-style text where dropping whole words reads better,
|
|
119
|
+
* use `wrapTextWithBreaks` with a `maxLines` cap instead — its
|
|
120
|
+
* truncation step is word-aware.
|
|
121
|
+
*/
|
|
122
|
+
export function truncateToWidth(text, maxWidth, fontSize) {
|
|
123
|
+
if (!text)
|
|
124
|
+
return text;
|
|
125
|
+
if (maxWidth <= 0)
|
|
126
|
+
return text;
|
|
127
|
+
if (measureTextWidth(text, fontSize) <= maxWidth)
|
|
128
|
+
return text;
|
|
129
|
+
const ellipsis = '…';
|
|
130
|
+
// Binary search the longest prefix that fits with the ellipsis
|
|
131
|
+
// appended. Avoids an O(n) measure loop on long strings without
|
|
132
|
+
// changing the visual result.
|
|
133
|
+
let lo = 0;
|
|
134
|
+
let hi = text.length;
|
|
135
|
+
let best = 0;
|
|
136
|
+
while (lo <= hi) {
|
|
137
|
+
const mid = (lo + hi) >> 1;
|
|
138
|
+
const candidate = text.slice(0, mid) + ellipsis;
|
|
139
|
+
if (measureTextWidth(candidate, fontSize) <= maxWidth) {
|
|
140
|
+
best = mid;
|
|
141
|
+
lo = mid + 1;
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
hi = mid - 1;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
// best === 0 means even the ellipsis alone doesn't fit (region too
|
|
148
|
+
// narrow). Return the lone ellipsis so the caller still gets a
|
|
149
|
+
// visible "there is content here" indicator rather than an empty
|
|
150
|
+
// string that reads as missing.
|
|
151
|
+
return text.slice(0, best) + ellipsis;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Trim `line` so that `line + '…'` fits within `maxWidth`. Word-aware:
|
|
155
|
+
* drops one whole word at a time from the end. Falls back to
|
|
156
|
+
* character-wise truncation via `truncateToWidth` when the whole line
|
|
157
|
+
* is a single long word (e.g. a long username or file path) — otherwise
|
|
158
|
+
* the result would still overflow.
|
|
113
159
|
*/
|
|
114
160
|
function ellipsize(line, maxWidth, fontSize) {
|
|
115
161
|
const ellipsis = '…';
|
|
@@ -123,7 +169,8 @@ function ellipsize(line, maxWidth, fontSize) {
|
|
|
123
169
|
if (measureTextWidth(candidate, fontSize) <= maxWidth)
|
|
124
170
|
return candidate;
|
|
125
171
|
}
|
|
126
|
-
// Single word longer than maxWidth —
|
|
127
|
-
|
|
172
|
+
// Single word longer than maxWidth — fall back to character-wise
|
|
173
|
+
// truncation so the rendered text actually fits.
|
|
174
|
+
return truncateToWidth(line, maxWidth, fontSize);
|
|
128
175
|
}
|
|
129
176
|
//# sourceMappingURL=text.js.map
|
package/dist/text.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "system-canvas",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"description": "Interactive, zoomable SVG diagrams from JSON Canvas documents. Pure TypeScript core with types, themes, edge routing, and viewport math.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|