@design-parity/report-html 0.1.58 → 0.1.59
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/overlay.d.ts +9 -6
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +24 -8
- package/dist/overlay.js.map +1 -1
- package/dist/render.d.ts +15 -5
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +38 -13
- package/dist/render.js.map +1 -1
- package/dist/typography.d.ts +12 -2
- package/dist/typography.d.ts.map +1 -1
- package/dist/typography.js +13 -3
- package/dist/typography.js.map +1 -1
- package/dist/units.d.ts +44 -0
- package/dist/units.d.ts.map +1 -0
- package/dist/units.js +68 -0
- package/dist/units.js.map +1 -0
- package/package.json +2 -2
package/dist/overlay.d.ts
CHANGED
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
* DevTools padding ring. Boxes/sizes come from bounds, captured on both sides;
|
|
13
13
|
* radius/padding render when present (a hand-authored or token-rich candidate
|
|
14
14
|
* node has them; the daemon's geometry and the reference's geometry-only
|
|
15
|
-
* capture don't yet, so they degrade to box + size).
|
|
15
|
+
* capture don't yet, so they degrade to box + size). Boxes are *drawn* in the
|
|
16
|
+
* raster's pixels and *labelled* in dp — see {@link boxMark}.
|
|
16
17
|
* - **typography** — one marker per resolved style, with adjacent uses surrounded
|
|
17
18
|
* by a shared outline. The marker keys into the reference/candidate settings
|
|
18
19
|
* table rendered beside the panels instead of repeating a wide callout over
|
|
@@ -21,11 +22,13 @@
|
|
|
21
22
|
* highlighted with their position/size drift read out. Driven by the verdict's
|
|
22
23
|
* `layout` findings, matched to a node by label.
|
|
23
24
|
*
|
|
24
|
-
* The SVG's `viewBox` is the tree's own frame (`root.bounds
|
|
25
|
-
*
|
|
26
|
-
* together and annotations stay pinned with no pixel-density maths
|
|
27
|
-
*
|
|
28
|
-
*
|
|
25
|
+
* The SVG's `viewBox` is the tree's own frame (`root.bounds`, in whatever pixel
|
|
26
|
+
* space the panel image is in), so when it's stretched over that image both
|
|
27
|
+
* scale together and annotations stay pinned with no pixel-density maths on the
|
|
28
|
+
* geometry. The tree's `boundsDensity` never moves a box; it only converts the
|
|
29
|
+
* dimensions a tag prints, so a 3× board is drawn over its own raster and reads
|
|
30
|
+
* out in dp. Label text and stroke widths are sized as a fraction of the frame
|
|
31
|
+
* width so they read the same whether the frame is ~1080px or ~411dp. Output is
|
|
29
32
|
* deterministic — coordinates are rounded, order follows the tree.
|
|
30
33
|
*/
|
|
31
34
|
import type { SemanticTree } from "@design-parity/core";
|
package/dist/overlay.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../src/overlay.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../src/overlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,KAAK,EAGV,YAAY,EACb,MAAM,qBAAqB,CAAC;AAmI7B,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjD;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAwBD;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,EAC/B,IAAI,CAAC,EAAE,oBAAoB,GAC1B,MAAM,CAgER"}
|
package/dist/overlay.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { escapeHtml } from "./html.js";
|
|
2
2
|
import { clusterTypography, typographyGroups } from "./typography.js";
|
|
3
|
+
import { statedDensity } from "./units.js";
|
|
3
4
|
/** Round to 1dp for compact, stable SVG coordinates. */
|
|
4
5
|
function r(n) {
|
|
5
6
|
return Math.round(n * 10) / 10;
|
|
@@ -57,23 +58,34 @@ function tag(x, y, text, u, fill, ink) {
|
|
|
57
58
|
`<text x="${r(pad)}" y="${r(pad + fs * 0.82)}" font-size="${r(fs)}" font-family="ui-monospace,SFMono-Regular,Menlo,monospace" fill="${ink}">${escapeHtml(text)}</text>` +
|
|
58
59
|
`</g>`);
|
|
59
60
|
}
|
|
60
|
-
/**
|
|
61
|
-
|
|
61
|
+
/**
|
|
62
|
+
* Box + radius + padding + dimension tag for one element (the box-model layer).
|
|
63
|
+
*
|
|
64
|
+
* `bd` is source pixels per dp for this panel's `bounds` (1 when unstated), and
|
|
65
|
+
* it is what keeps drawing and labelling apart. The boxes are pinned to the
|
|
66
|
+
* captured raster, so every coordinate here stays in its pixels — including the
|
|
67
|
+
* radius and padding *drawn* from tokens, which arrive in dp and are multiplied
|
|
68
|
+
* back up to reach the same space. Only the numbers the tag *prints* are the
|
|
69
|
+
* spec: sizes divided down to dp, radius and padding quoted as the dp they
|
|
70
|
+
* already are.
|
|
71
|
+
*/
|
|
72
|
+
function boxMark(n, u, bd) {
|
|
62
73
|
const { x, y, width, height } = n.bounds;
|
|
63
74
|
const stroke = 0.3 * u;
|
|
64
|
-
const
|
|
75
|
+
const drawnRadius = n.radius === undefined ? undefined : n.radius * bd;
|
|
76
|
+
const rx = drawnRadius !== undefined ? Math.min(drawnRadius, width / 2, height / 2) : 0;
|
|
65
77
|
const box = `<rect x="${r(x)}" y="${r(y)}" width="${r(width)}" height="${r(height)}" rx="${r(rx)}" fill="none" stroke="#7db4e8" stroke-width="${r(stroke)}"/>`;
|
|
66
78
|
// Padding ring: shade the inset between the border box and the content box
|
|
67
79
|
// (DevTools-style green), when the node declares uniform padding.
|
|
68
80
|
let pad = "";
|
|
69
|
-
|
|
70
|
-
|
|
81
|
+
const p = n.padding === undefined ? undefined : n.padding * bd;
|
|
82
|
+
if (p !== undefined && p > 0 && width > 2 * p && height > 2 * p) {
|
|
71
83
|
pad =
|
|
72
84
|
`<path fill="#3ddc84" fill-opacity="0.18" fill-rule="evenodd" d="` +
|
|
73
85
|
`M${r(x)},${r(y)} H${r(x + width)} V${r(y + height)} H${r(x)} Z ` +
|
|
74
86
|
`M${r(x + p)},${r(y + p)} H${r(x + width - p)} V${r(y + height - p)} H${r(x + p)} Z" />`;
|
|
75
87
|
}
|
|
76
|
-
const detail = [`${Math.round(width)}×${Math.round(height)}`];
|
|
88
|
+
const detail = [`${Math.round(width / bd)}×${Math.round(height / bd)}`];
|
|
77
89
|
if (n.radius !== undefined)
|
|
78
90
|
detail.push(`r${+n.radius}`);
|
|
79
91
|
if (n.padding !== undefined)
|
|
@@ -128,6 +140,10 @@ export function annotationSvg(tree, deltas, opts) {
|
|
|
128
140
|
if (!frame || frame.width <= 0 || frame.height <= 0)
|
|
129
141
|
return "";
|
|
130
142
|
const u = frame.width / 100;
|
|
143
|
+
// Source pixels per dp for this panel's boxes. Unstated reads as "bounds and
|
|
144
|
+
// tokens already share a space", per `SemanticTree.boundsDensity` — never as
|
|
145
|
+
// a guessed factor.
|
|
146
|
+
const boundsDensity = statedDensity(tree.boundsDensity) ?? 1;
|
|
131
147
|
// Layout deltas: match each finding to the first node with the same label and
|
|
132
148
|
// highlight it (the element's own box on this panel, with the numeric drift).
|
|
133
149
|
let layout = "";
|
|
@@ -159,14 +175,14 @@ export function annotationSvg(tree, deltas, opts) {
|
|
|
159
175
|
}
|
|
160
176
|
const boxes = nodes
|
|
161
177
|
.filter((n) => n.label !== undefined || n.role)
|
|
162
|
-
.map((n) => boxMark(n, u))
|
|
178
|
+
.map((n) => boxMark(n, u, boundsDensity))
|
|
163
179
|
.join("");
|
|
164
180
|
const typeGroups = typographyGroups(tree);
|
|
165
181
|
const typography = typeGroups
|
|
166
182
|
.map((group, index) => {
|
|
167
183
|
const marker = opts?.typographyMarkers?.get(group.key) ??
|
|
168
184
|
(index < 26 ? String.fromCharCode(65 + index) : String(index + 1));
|
|
169
|
-
return clusterTypography(group)
|
|
185
|
+
return clusterTypography(group, boundsDensity)
|
|
170
186
|
.map((bounds) => typographyMark(bounds, marker, u))
|
|
171
187
|
.join("") + group.nodes.map((node) => typographyHit(node.bounds, marker)).join("");
|
|
172
188
|
})
|
package/dist/overlay.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.js","sourceRoot":"","sources":["../src/overlay.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"overlay.js","sourceRoot":"","sources":["../src/overlay.ts"],"names":[],"mappings":"AAuCA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAa3C,wDAAwD;AACxD,SAAS,CAAC,CAAC,CAAS;IAClB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;AACjC,CAAC;AAED,sEAAsE;AACtE,SAAS,KAAK,CAAI,GAAkC;IAClD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,gFAAgF;AAChF,SAAS,OAAO,CAAC,IAAkB;IACjC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,CAAC,CAAe,EAAQ,EAAE;QACtC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACvC,GAAG,CAAC,IAAI,CAAC;gBACP,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpD,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,GAAG,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE;YAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,mEAAmE;AACnE,SAAS,IAAI,CAAC,KAAe;IAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,IAAI,GAAG,QAAQ,EACjB,IAAI,GAAG,QAAQ,EACf,IAAI,GAAG,CAAC,QAAQ,EAChB,IAAI,GAAG,CAAC,QAAQ,CAAC;IACnB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,CAAC;AACvE,CAAC;AAED,wEAAwE;AACxE,SAAS,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,IAAY,EAAE,CAAS,EAAE,IAAY,EAAE,GAAW;IACnF,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;IACnB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;IACpB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;IAC5C,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;IACvB,OAAO,CACL,2BAA2B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK;QAC5C,gBAAgB,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,WAAW,IAAI,yBAAyB;QAChG,YAAY,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,qEAAqE,GAAG,KAAK,UAAU,CAAC,IAAI,CAAC,SAAS;QACvK,MAAM,CACP,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,OAAO,CAAC,CAAS,EAAE,CAAS,EAAE,EAAU;IAC/C,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC;IACvB,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC;IACvE,MAAM,EAAE,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,gDAAgD,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAC/J,2EAA2E;IAC3E,kEAAkE;IAClE,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC;IAC/D,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAChE,GAAG;YACD,kEAAkE;gBAClE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;gBACjE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC7F,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,OAAO,uBAAuB,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC;AACvG,CAAC;AAED,8EAA8E;AAC9E,SAAS,cAAc,CAAC,MAAc,EAAE,MAAc,EAAE,CAAS;IAC/D,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;IACxB,OAAO,CACL,0CAA0C,UAAU,CAAC,MAAM,CAAC,IAAI;QAChE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,uEAAuE,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK;QAC7N,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC;QAC1C,MAAM,CACP,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,SAAS,aAAa,CAAC,MAAc,EAAE,MAAc;IACnD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACvC,OAAO,iDAAiD,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;AACpJ,CAAC;AAoBD,0DAA0D;AAC1D,SAAS,MAAM,CAAC,CAAS;IACvB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,CAAS,EAAE,CAAc,EAAE,CAAS;IACtD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;IACxB,MAAM,IAAI,GAAG,QAAQ,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC5F,OAAO,CACL,wBAAwB;QACxB,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,uEAAuE,CAAC,CAAC,MAAM,CAAC,KAAK;QAC3J,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC;QACjD,MAAM,CACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,IAA8B,EAC9B,MAA+B,EAC/B,IAA2B;IAE3B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/D,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;IAC5B,6EAA6E;IAC7E,6EAA6E;IAC7E,oBAAoB;IACpB,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAE7D,8EAA8E;IAC9E,8EAA8E;IAC9E,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS;gBAAE,SAAS;YACpC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,GAAG,MAAM;aACZ,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YACpD,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,8BAA8B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,2DAA2D,CAAC;IAEvK,+EAA+E;IAC/E,iFAAiF;IACjF,kFAAkF;IAClF,kFAAkF;IAClF,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC;QACf,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,OAAO,GAAG,OAAO,0BAA0B,MAAM,YAAY,CAAC;IAChE,CAAC;IAED,MAAM,KAAK,GAAG,KAAK;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC;SAC9C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;SACxC,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,UAAU;SAC1B,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACpB,MAAM,MAAM,GAAG,IAAI,EAAE,iBAAiB,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;YACpD,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC;aAC3C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;aAClD,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAEhD,OAAO,CACL,GAAG,OAAO,EAAE;QACZ,2BAA2B,KAAK,MAAM;QACtC,8BAA8B,UAAU,MAAM;QAC9C,0BAA0B,MAAM,MAAM;QACtC,QAAQ,CACT,CAAC;AACJ,CAAC"}
|
package/dist/render.d.ts
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
import type { SemanticTree } from "@design-parity/core";
|
|
2
2
|
import type { ReportInput } from "./types.js";
|
|
3
3
|
/**
|
|
4
|
-
* Put the candidate tree in the reference's
|
|
5
|
-
* `boundsInRoot` are device pixels (e.g. a 411dp screen renders at
|
|
6
|
-
* box-model readouts came out ~density× the reference's
|
|
7
|
-
* frame-width scale the layout diff already uses
|
|
8
|
-
*
|
|
4
|
+
* Put the candidate tree in the reference's bounds space for display. The
|
|
5
|
+
* candidate's `boundsInRoot` are device pixels (e.g. a 411dp screen renders at
|
|
6
|
+
* 1078px), so its box-model readouts came out ~density× the reference's boxes.
|
|
7
|
+
* Apply the same uniform frame-width scale the layout diff already uses
|
|
8
|
+
* ({@link diffLayout}) so both panels measure in one space. No-op on the geometry
|
|
9
|
+
* when either side lacks a root frame (assume a shared space).
|
|
10
|
+
*
|
|
11
|
+
* That space is the *reference's*, so a tree that reaches it carries the
|
|
12
|
+
* reference's `boundsDensity` — its own no longer describes boxes it no longer
|
|
13
|
+
* holds. Both halves of that matter: an unscaled reference states none, and the
|
|
14
|
+
* candidate's 2.625 surviving the move would have the overlay divide dp boxes by
|
|
15
|
+
* a device density and print a third of the truth; a scaled board states one, and
|
|
16
|
+
* it is the factor that turns these rescaled boxes back into dp. The path that
|
|
17
|
+
* cannot scale is the exception — an untransformed tree is still in its own
|
|
18
|
+
* space, and keeps the factor that describes it.
|
|
9
19
|
*/
|
|
10
20
|
export declare function toDisplayFrame(cand: SemanticTree | undefined, ref: SemanticTree | undefined): SemanticTree | undefined;
|
|
11
21
|
/**
|
package/dist/render.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAIV,YAAY,EAEb,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAIV,YAAY,EAEb,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,YAAY,CAAC;AAoPzD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,GAAG,EAAE,YAAY,GAAG,SAAS,GAC5B,YAAY,GAAG,SAAS,CAiB1B;AA8VD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAiF3D"}
|
package/dist/render.js
CHANGED
|
@@ -16,6 +16,7 @@ import { groupFindings, tokenDelta } from "./findings.js";
|
|
|
16
16
|
import { escapeHtml, isSvgSource, pngDataUri, svgDataUri } from "./html.js";
|
|
17
17
|
import { annotationSvg } from "./overlay.js";
|
|
18
18
|
import { compareTypography, normalizeFontFamily, } from "./typography.js";
|
|
19
|
+
import { inCodeUnits } from "./units.js";
|
|
19
20
|
import { pairVariants } from "./variants.js";
|
|
20
21
|
const STATUS_LABEL = {
|
|
21
22
|
pass: "Pass",
|
|
@@ -225,23 +226,44 @@ function scaleNode(n, s) {
|
|
|
225
226
|
};
|
|
226
227
|
}
|
|
227
228
|
/**
|
|
228
|
-
* Put the candidate tree in the reference's
|
|
229
|
-
* `boundsInRoot` are device pixels (e.g. a 411dp screen renders at
|
|
230
|
-
* box-model readouts came out ~density× the reference's
|
|
231
|
-
* frame-width scale the layout diff already uses
|
|
232
|
-
*
|
|
229
|
+
* Put the candidate tree in the reference's bounds space for display. The
|
|
230
|
+
* candidate's `boundsInRoot` are device pixels (e.g. a 411dp screen renders at
|
|
231
|
+
* 1078px), so its box-model readouts came out ~density× the reference's boxes.
|
|
232
|
+
* Apply the same uniform frame-width scale the layout diff already uses
|
|
233
|
+
* ({@link diffLayout}) so both panels measure in one space. No-op on the geometry
|
|
234
|
+
* when either side lacks a root frame (assume a shared space).
|
|
235
|
+
*
|
|
236
|
+
* That space is the *reference's*, so a tree that reaches it carries the
|
|
237
|
+
* reference's `boundsDensity` — its own no longer describes boxes it no longer
|
|
238
|
+
* holds. Both halves of that matter: an unscaled reference states none, and the
|
|
239
|
+
* candidate's 2.625 surviving the move would have the overlay divide dp boxes by
|
|
240
|
+
* a device density and print a third of the truth; a scaled board states one, and
|
|
241
|
+
* it is the factor that turns these rescaled boxes back into dp. The path that
|
|
242
|
+
* cannot scale is the exception — an untransformed tree is still in its own
|
|
243
|
+
* space, and keeps the factor that describes it.
|
|
233
244
|
*/
|
|
234
245
|
export function toDisplayFrame(cand, ref) {
|
|
235
246
|
if (!cand)
|
|
236
247
|
return cand;
|
|
248
|
+
if (!ref)
|
|
249
|
+
return cand;
|
|
250
|
+
const inRefSpace = (t) => {
|
|
251
|
+
if (t.boundsDensity === ref.boundsDensity)
|
|
252
|
+
return t;
|
|
253
|
+
const { boundsDensity: _own, ...rest } = t;
|
|
254
|
+
return ref.boundsDensity === undefined ? rest : { ...rest, boundsDensity: ref.boundsDensity };
|
|
255
|
+
};
|
|
237
256
|
const cw = cand.root.bounds?.width;
|
|
238
|
-
const rw = ref
|
|
257
|
+
const rw = ref.root.bounds?.width;
|
|
258
|
+
// Nothing to scale by, so nothing moved: the candidate keeps its own boxes
|
|
259
|
+
// *and* its own factor. Handing it the reference's here would have the overlay
|
|
260
|
+
// divide untouched device pixels by a density that never applied to them.
|
|
239
261
|
if (!cw || !rw)
|
|
240
262
|
return cand;
|
|
241
263
|
const s = rw / cw;
|
|
242
264
|
if (Math.abs(s - 1) < 1e-6)
|
|
243
|
-
return cand;
|
|
244
|
-
return { ...cand, root: scaleNode(cand.root, s) };
|
|
265
|
+
return inRefSpace(cand);
|
|
266
|
+
return { ...inRefSpace(cand), root: scaleNode(cand.root, s) };
|
|
245
267
|
}
|
|
246
268
|
/** Toggle bar for the per-panel annotation layers (box model, typography, layout). */
|
|
247
269
|
function annotationControls(hasLayout) {
|
|
@@ -579,11 +601,14 @@ export function renderHtmlReport(input) {
|
|
|
579
601
|
});
|
|
580
602
|
// One semantic tree per side for the whole component (geometry is theme-
|
|
581
603
|
// invariant), reused across every variant's candidate/reference panel.
|
|
582
|
-
|
|
583
|
-
//
|
|
584
|
-
//
|
|
585
|
-
|
|
586
|
-
|
|
604
|
+
// Tokens in code units (dp/sp) once, at the entry, so no reader downstream has
|
|
605
|
+
// to know a board's density — and a scaled reference stops quoting raw board
|
|
606
|
+
// pixels as `sp` beside a verdict that already converted them (issue #379).
|
|
607
|
+
const refTree = inCodeUnits(reference.layout);
|
|
608
|
+
// Display the candidate in the reference's bounds space so box-model readouts
|
|
609
|
+
// measure the same thing on both sides (its raw bounds are device px). The
|
|
610
|
+
// diff already does this internally; this is the matching fix for the overlay.
|
|
611
|
+
const candTree = toDisplayFrame(inCodeUnits(candidate.semantics), refTree);
|
|
587
612
|
const deltas = layoutDeltas(verdict);
|
|
588
613
|
const typography = compareTypography(refTree, candTree);
|
|
589
614
|
const hasVariants = rendered.length > 0;
|
package/dist/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAUnC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EAAE,aAAa,EAA+C,MAAM,cAAc,CAAC;AAC1F,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GAGpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAgB,MAAM,eAAe,CAAC;AAE3D,MAAM,YAAY,GAAG;IACnB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,oFAAoF;AACpF,SAAS,cAAc,CAAC,IAAY,EAAE,GAAsB;IAC1D,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,yEAAyE;IACzE,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC;IAChD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,+EAA+E;IAC/E,8EAA8E;IAC9E,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACtE,CAAC;AAED,kFAAkF;AAClF,MAAM,WAAW,GAA2B,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAUlE,gFAAgF;AAChF,SAAS,SAAS,CAAC,GAAW;IAC5B,MAAM,IAAI,GAAG,GAAG;SACb,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;SAC5B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,WAAW,EAAE,CAAC;IACjB,OAAO,KAAK,IAAI,EAAE,CAAC;AACrB,CAAC;AAED,yEAAyE;AACzE,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,+EAA+E;AAC/E,SAAS,MAAM,CAAC,OAAgB;IAC9B,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,QAAoB;IACxC,4EAA4E;IAC5E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,UAAU,GAAG,IAAI,CAAC;;YAChD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,OAAO,GAA2B,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CACtD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACxE,CAAC;IACF,IAAI,UAAU;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAExC,mEAAmE;IACnE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAsB,CAAC;IAChD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACtB,CAAC;YACJ,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,2CAA2C,OAAO;SAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;SAC/D,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;IAEnB,MAAM,IAAI,GAAG,QAAQ;SAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,KAAK,GAAG,OAAO;aAClB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACb,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;YACnE,IAAI,CAAC,CAAC;gBACJ,OAAO,iEAAiE,CAAC;YAC3E,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO;gBACrB,CAAC,CAAC,iCAAiC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,UAAU,CAAC,CAAC,OAAO,UAAU,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,0CAA0C;gBAC5L,CAAC,CAAC,+CAA+C,CAAC;YACpD,OAAO,2BAA2B,KAAK,OAAO,CAAC;QACjD,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,OAAO,0CAA0C,UAAU,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC;IACrF,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO;;uBAEc,IAAI;uBACJ,IAAI;;qBAEN,CAAC;AACtB,CAAC;AASD,SAAS,WAAW,CAClB,KAAY,EACZ,IAAY,EACZ,IAAmB,EACnB,MAA+B,EAC/B,IAA2B;IAE3B,IAAI,KAAa,CAAC;IAClB,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,GAAG,GAAG,wBAAwB,MAAM,gBAAgB,IAAI,UAAU,KAAK,CAAC,GAAG,UAAU,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QACzH,yEAAyE;QACzE,2EAA2E;QAC3E,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/C,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,6BAA6B,GAAG,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,yCAAyC,CAAC;IACpD,CAAC;IACD,OAAO,oCAAoC,IAAI;0BACvB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;sCACX,KAAK;oBACvB,CAAC;AACrB,CAAC;AAID,SAAS,eAAe,CAAC,KAAkC,EAAE,KAAsB;IACjF,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC;IACvB,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC;IAC9B,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,KAAK,IAAI,UAAU,CAAC;IACxD,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC;IAChE,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC;IACvF,IAAI,KAAK,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClG,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7F,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5G,OAAO,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC;AACpC,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAkC,EAAE,KAAsB;IACtF,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC;IACvB,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;IACjH,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC,UAAU,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAChH,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB,CACvB,IAA+B,EAC/B,KAAkC,EAClC,KAAkC,EAClC,QAAqC;IAErC,IAAI,CAAC,KAAK;QAAE,OAAO,qDAAqD,IAAI,oCAAoC,CAAC;IACjH,MAAM,OAAO,GAAG,CAAC,KAAsB,EAAW,EAAE,CAClD,CAAC,CAAC,KAAK,IAAI,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACvF,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAW,EAAE,CACrD,CAAC,CAAC,QAAQ,IAAI,QAAQ,KAAK,KAAK,IAAI,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACnH,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,SAAkB,EAAE,UAAU,GAAG,KAAK,EAAU,EAAE;QAC9E,MAAM,OAAO,GAAG,CAAC,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/F,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,wBAAwB,UAAU,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,QAAQ,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC;IAC5F,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC;IAC9B,MAAM,IAAI,GAAG,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;IAC/G,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG;QACf,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7E,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAChF,KAAK,CAAC,QAAQ,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1F,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC;QACxC,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5F,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ;YAC/C,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;YAChE,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACrH,OAAO,qDAAqD,IAAI,aAAa,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,+BAA+B,KAAK,gBAAgB,CAAC;AACxJ,CAAC;AAED,SAAS,0BAA0B,CAAC,UAAgC;IAClE,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK;SAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,OAAO,8CAA8C,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;4CACtC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;kBACjD,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAC5D,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;;kBAE3F,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAC5D,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;yBACpF,CAAC;IACtB,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO;;uCAE8B,IAAI;qBACtB,CAAC;AACtB,CAAC;AAED;;iCAEiC;AACjC,SAAS,SAAS,CAAC,CAAe,EAAE,CAAS;IAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,OAAO;QACL,GAAG,CAAC;QACJ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,IAA8B,EAC9B,GAA6B;IAE7B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;IACnC,MAAM,EAAE,GAAG,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;IACnC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IAClB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;AACpD,CAAC;AAED,sFAAsF;AACtF,SAAS,kBAAkB,CAAC,SAAkB;IAC5C,MAAM,YAAY,GAAG,SAAS;QAC5B,CAAC,CAAC,mHAAmH;QACrH,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;;;kHAGyG,YAAY;iBAC7G,CAAC;AAClB,CAAC;AAED,wFAAwF;AACxF,SAAS,YAAY,CAAC,OAAgB;IACpC,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,SAAS;QAC/C,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,MAAiC,CAAC;QACtE,IACE,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,EAAE,KAAK,QAAQ;YACtB,OAAO,EAAE,KAAK,QAAQ;YACtB,OAAO,EAAE,KAAK,QAAQ;YACtB,OAAO,EAAE,KAAK,QAAQ,EACtB,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,aAAa,CACpB,OAAgB,EAChB,KAAa,EACb,MAA0B,EAC1B,OAA2B,EAC3B,OAA2B,EAC3B,OAAiC,EACjC,QAAkC,EAClC,MAA8B,EAC9B,QAAgB,EAChB,UAAgC;IAEhC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC;SACtD,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAChE,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,MAAM,GAAG,GAAU,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IACvD,MAAM,IAAI,GAAU,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IACzD,MAAM,IAAI,GAAU,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;IAEpD,0EAA0E;IAC1E,8EAA8E;IAC9E,+EAA+E;IAC/E,6DAA6D;IAC7D,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IAC1B,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;IAExC,MAAM,QAAQ,GAAG,2CAA2C,KAAK;gBACnD,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,UAAU,CAAC,gBAAgB,EAAE,CAAC;gBAClG,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,UAAU,CAAC,gBAAgB,EAAE,CAAC;mBACjG,CAAC;IAElB,8EAA8E;IAC9E,sDAAsD;IACtD,MAAM,QAAQ,GAAG,OAAO;QACtB,CAAC,CAAC,gDAAgD,KAAK;gBAC3C,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;mBACxD;QACf,CAAC,CAAC,EAAE,CAAC;IAEP,+EAA+E;IAC/E,uDAAuD;IACvD,MAAM,UAAU,GAAG,SAAS;QAC1B,CAAC,CAAC,kDAAkD,KAAK;;;kDAGX,MAAM;mDACL,OAAO,mCAAmC,KAAK;;;;mFAIf,KAAK;;;;mBAIrE;QACf,CAAC,CAAC,EAAE,CAAC;IAEP,gFAAgF;IAChF,MAAM,KAAK,GAA+B,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7E,IAAI,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IACzD,IAAI,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxD,MAAM,UAAU,GACd,KAAK,CAAC,MAAM,GAAG,CAAC;QACd,CAAC,CAAC,gEAAgE,KAAK;aAClE,GAAG,CACF,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,6DAA6D,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CACtK;aACA,IAAI,CAAC,EAAE,CAAC,QAAQ;QACrB,CAAC,CAAC,EAAE,CAAC;IAET,iFAAiF;IACjF,MAAM,YAAY,GAChB,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,8BAA8B,UAAU,GAAG,QAAQ,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5F,OAAO,gCAAgC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;;oBAErF,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;0CACD,IAAI;;cAEhC,YAAY;;gBAEV,QAAQ;gBACR,QAAQ;gBACR,UAAU;;cAEZ,0BAA0B,CAAC,UAAU,CAAC;qBAC/B,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,aAAa,CAAC,UAAoD;IACzE,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACtD,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAChE,OAAO,gBAAgB,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;IACpF,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,8CAA8C,KAAK,QAAQ,CAAC;AACrE,CAAC;AAED,SAAS,cAAc,CAAC,OAAgB;IACtC,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,uFAAuF,CAAC;IACjG,CAAC;IACD,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACf,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,WAAW,GACf,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;gBACnE,CAAC,CAAC;qBACK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;qDAC5B,UAAU,CAAC,KAAK,CAAC,QAAQ,IAAI,GAAG,CAAC;iDACrC,UAAU,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;wBACxD;gBACV,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,0BAA0B,CAAC,CAAC,QAAQ;4CACT,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;;kDAEpB,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;wBAC/C,WAAW;;wBAEX,CAAC;QACjB,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO;sBACS,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;2CACJ,KAAK;qBAC3B,CAAC;IAClB,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,OAAgB;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IACpC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAChC,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,aAAa,UAAU,CAAC,GAAG,CAAC,WAC1B,KAAK,KAAK,CAAC;QACT,CAAC,CAAC,oCAAoC;QACtC,CAAC,CAAC,wBAAwB,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,iBACtD,OAAO,CACV;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO;;qCAE4B,IAAI;iBACxB,CAAC;AAClB,CAAC;AAED,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA2F6C,CAAC;AAE5D,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAuDT,CAAC;AAEP;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAkB;IACjD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAChD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,IAAI,GAAG,EAAE,CAAC;IAErC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,IAAI,EAAE;QAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAE3E,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,QAAQ,GAAe,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAC3D,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,yEAAyE;IACzE,uEAAuE;IACvE,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC;IACjC,8EAA8E;IAC9E,8EAA8E;IAC9E,wDAAwD;IACxD,MAAM,QAAQ,GAAG,cAAc,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAExD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,+EAA+E;IAC/E,+EAA+E;IAC/E,2EAA2E;IAC3E,iCAAiC;IACjC,MAAM,cAAc,GAClB,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,UAAU,CAAC,gBAAgB,EAAE,CAAC;QACrF,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACvF,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7E,MAAM,WAAW,GAAG,QAAQ;SACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CACnH;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,eAAe,GAAG,WAAW;QACjC,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC;;EAE7B,WAAW,EAAE;QACX,CAAC,CAAC,2GAA2G,CAAC;IAEhH,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,kBAAkB,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;IAElE,OAAO;;;;;SAKA,KAAK;SACL,KAAK;;;;QAIN,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,8BAA8B,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC;0BAC1E,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,uCAAuC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC;;;EAG9H,eAAe;;EAEf,cAAc,CAAC,OAAO,CAAC;EACvB,YAAY,CAAC,OAAO,CAAC;;;UAGb,MAAM;;;CAGf,CAAC;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
package/dist/typography.d.ts
CHANGED
|
@@ -39,6 +39,16 @@ export declare function typographyGroups(tree: SemanticTree | undefined): Typogr
|
|
|
39
39
|
export declare function typographyDefaults(groups: readonly TypographyGroup[]): ReadonlyMap<string, TypographyGroup>;
|
|
40
40
|
/** Pair reference and candidate styles deterministically, then assign stable A/B/C markers. */
|
|
41
41
|
export declare function compareTypography(referenceTree: SemanticTree | undefined, candidateTree: SemanticTree | undefined): TypographyComparison;
|
|
42
|
-
/**
|
|
43
|
-
|
|
42
|
+
/**
|
|
43
|
+
* Surround nearby uses of one style with a single rectangular cluster.
|
|
44
|
+
*
|
|
45
|
+
* The thresholds come from the style's line height — a token, so in dp once the
|
|
46
|
+
* report has normalised it — while the boxes they are measured against are the
|
|
47
|
+
* raster's pixels. `boundsDensity` is what puts the two in one space: at 3× a
|
|
48
|
+
* 20dp line height has to reach for 240 pixels of horizontal slack, not 80, or
|
|
49
|
+
* uses that cluster on an unscaled board split into separate outlines. Defaults
|
|
50
|
+
* to 1, which is the unstated case and every caller before a board declared a
|
|
51
|
+
* density.
|
|
52
|
+
*/
|
|
53
|
+
export declare function clusterTypography(group: TypographyGroup, boundsDensity?: number): Bounds[];
|
|
44
54
|
//# sourceMappingURL=typography.d.ts.map
|
package/dist/typography.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../src/typography.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAgB,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE/F,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACxD,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CACzD;AAQD,mFAAmF;AACnF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAMtF;AAED,iEAAiE;AACjE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAIjF;AAeD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,eAAe,EAAE,CAwClF;AAED,6FAA6F;AAC7F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAQ3G;AA2BD,+FAA+F;AAC/F,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,YAAY,GAAG,SAAS,EACvC,aAAa,EAAE,YAAY,GAAG,SAAS,GACtC,oBAAoB,CAwCtB;AAmBD
|
|
1
|
+
{"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../src/typography.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAgB,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE/F,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACxD,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CACzD;AAQD,mFAAmF;AACnF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAMtF;AAED,iEAAiE;AACjE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAIjF;AAeD,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,eAAe,EAAE,CAwClF;AAED,6FAA6F;AAC7F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,CAQ3G;AA2BD,+FAA+F;AAC/F,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,YAAY,GAAG,SAAS,EACvC,aAAa,EAAE,YAAY,GAAG,SAAS,GACtC,oBAAoB,CAwCtB;AAmBD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,SAAI,GAAG,MAAM,EAAE,CAkBrF"}
|
package/dist/typography.js
CHANGED
|
@@ -175,9 +175,19 @@ function union(nodes) {
|
|
|
175
175
|
const bottom = Math.max(...nodes.map((node) => node.bounds.y + node.bounds.height));
|
|
176
176
|
return { x: left, y: top, width: right - left, height: bottom - top };
|
|
177
177
|
}
|
|
178
|
-
/**
|
|
179
|
-
|
|
180
|
-
|
|
178
|
+
/**
|
|
179
|
+
* Surround nearby uses of one style with a single rectangular cluster.
|
|
180
|
+
*
|
|
181
|
+
* The thresholds come from the style's line height — a token, so in dp once the
|
|
182
|
+
* report has normalised it — while the boxes they are measured against are the
|
|
183
|
+
* raster's pixels. `boundsDensity` is what puts the two in one space: at 3× a
|
|
184
|
+
* 20dp line height has to reach for 240 pixels of horizontal slack, not 80, or
|
|
185
|
+
* uses that cluster on an unscaled board split into separate outlines. Defaults
|
|
186
|
+
* to 1, which is the unstated case and every caller before a board declared a
|
|
187
|
+
* density.
|
|
188
|
+
*/
|
|
189
|
+
export function clusterTypography(group, boundsDensity = 1) {
|
|
190
|
+
const lineHeight = (finite(group.typography.lineHeight) ?? 16) * boundsDensity;
|
|
181
191
|
const xGap = Math.max(12, lineHeight * 4);
|
|
182
192
|
const yGap = Math.max(8, lineHeight * 1.25);
|
|
183
193
|
const clusters = [];
|
package/dist/typography.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typography.js","sourceRoot":"","sources":["../src/typography.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"typography.js","sourceRoot":"","sources":["../src/typography.ts"],"names":[],"mappings":"AAoCA,SAAS,MAAM,CAAC,KAAkC;IAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,wBAAwB,CAAC,KAAyB;IAChE,MAAM,KAAK,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAC5B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAC/D,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;IACjG,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,OAAO,GAAG,EAAE,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;AACpG,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,mBAAmB,CAAC,KAAyB;IAC3D,MAAM,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,sCAAsC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,QAAQ,CAAC,KAAyB,EAAE,UAA2B;IACtE,OAAO;QACL,KAAK,IAAI,EAAE;QACX,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE;QAC/D,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE;QACjC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE;QACnC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,UAAU,IAAI,EAAE;QAC5D,UAAU,CAAC,aAAa,IAAI,EAAE;QAC9B,UAAU,CAAC,SAAS,IAAI,EAAE;QAC1B,UAAU,CAAC,qBAAqB,IAAI,EAAE;KACvC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,gBAAgB,CAAC,IAA8B;IAC7D,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;IAClD,MAAM,KAAK,GAAG,CAAC,IAAkB,EAAQ,EAAE;QACzC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5E,MAAM,KAAK,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;gBACjD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gBACxC,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,KAAK,GAAG;wBACN,GAAG;wBACH,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3B,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnE,GAAG,CAAC,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC;4BAC5C,CAAC,CAAC,EAAE,SAAS,EAAE,mBAAmB,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;4BAC3D,CAAC,CAAC,EAAE,CAAC;wBACP,UAAU;wBACV,KAAK,EAAE,EAAE;wBACT,KAAK,EAAE,IAAI,GAAG,EAAU;qBACzB,CAAC;oBACF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACzB,CAAC;gBACD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;oBACf,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3B,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzC,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,UAAU;oBACV,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC3C,CAAC,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC;gBACrC,IAAI,IAAI;oBAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;YAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9B,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,kBAAkB,CAAC,MAAkC;IACnE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,SAAS;QAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAqB,EAAE,KAAsB;IAC7D,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QAAE,OAAO,CAAC,GAAG,CAAC;IACxC,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC;IACzE,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,WAAW,IAAI,CAAC,CAAC;IAC3E,IAAI,WAAW;QAAE,OAAO,CAAC,EAAE,GAAG,WAAW,CAAC;IAE1C,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;IAC1B,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC;IAC3B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7G,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACnC,MAAM,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7G,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3H,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;QAAE,MAAM,IAAI,CAAC,CAAC;IAChG,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ,CAAC;QAAE,MAAM,IAAI,CAAC,CAAC;IACzE,IAAI,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,aAAa;QAAE,MAAM,IAAI,CAAC,CAAC;IACrD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,iBAAiB,CAC/B,aAAuC,EACvC,aAAuC;IAEvC,MAAM,SAAS,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC;IACvC,MAAM,KAAK,GAAqC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACpE,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;QACnB,IAAI,YAAY,GAAG,QAAQ,CAAC;QAC5B,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YACrC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YACnD,IAAI,iBAAiB,GAAG,YAAY,EAAE,CAAC;gBACrC,SAAS,GAAG,KAAK,CAAC;gBAClB,YAAY,GAAG,iBAAiB,CAAC;YACnC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,SAAS,IAAI,CAAC,IAAI,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvG,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAE5D,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACnD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAkB,EAAE;QACvD,MAAM,MAAM,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAChF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;YAC/B,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;YAC/B,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IACH,OAAO;QACL,KAAK,EAAE,MAAM;QACb,gBAAgB;QAChB,gBAAgB;QAChB,iBAAiB,EAAE,kBAAkB,CAAC,SAAS,CAAC;QAChD,iBAAiB,EAAE,kBAAkB,CAAC,eAAe,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,IAAY,EAAE,KAAa,EAAE,IAAY,EAAE,IAAY;IACtE,OAAO,CACL,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI;QACtC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI;QACrC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI;QACvC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CACvC,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,KAAkC;IAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACpF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC;AACxE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAsB,EAAE,aAAa,GAAG,CAAC;IACzE,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC;IAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,QAAQ;aACrB,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/G,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;QACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAE,CAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC"}
|
package/dist/units.d.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Density normalisation at the report's entry.
|
|
3
|
+
*
|
|
4
|
+
* A {@link SemanticTree} states its scale rather than applying it:
|
|
5
|
+
* {@link SemanticTree.density} is source pixels per dp for the values in
|
|
6
|
+
* `tokens`, and consumers divide through. `@design-parity/catalog-export` does;
|
|
7
|
+
* the Figma adapter does it for the *top-level* `reference.tokens` the token
|
|
8
|
+
* diff reads. The report reads the other half — the captured `layout` tree —
|
|
9
|
+
* and, before this, quoted its numbers raw: a 3× board reached the panels as
|
|
10
|
+
* `42sp` / `p48` against a candidate's `14sp` / `p16` while the verdict beside
|
|
11
|
+
* them called the same pair a match. A report contradicting its own verdict is
|
|
12
|
+
* worse than both sides being raw, which is what it was before the factor
|
|
13
|
+
* reached the adapter at all (issue #379).
|
|
14
|
+
*
|
|
15
|
+
* Normalising once here beats teaching `typography.ts`, `overlay.ts` and
|
|
16
|
+
* `render.ts` each about density: every reader downstream sees one unit system,
|
|
17
|
+
* and there is one place to be right about what scales.
|
|
18
|
+
*
|
|
19
|
+
* **Only `tokens` scale.** `bounds` are anchors in whatever pixel space the
|
|
20
|
+
* annotated image is in — a publisher rescales them to the raster it draws over
|
|
21
|
+
* without touching the specs those boxes describe — so they stay put, and the
|
|
22
|
+
* overlay keeps drawing in the captured raster's space. Their factor is the
|
|
23
|
+
* independent {@link SemanticTree.boundsDensity}, which governs what the
|
|
24
|
+
* overlay *prints* for a box, not where it draws it.
|
|
25
|
+
*
|
|
26
|
+
* An unstated density leaves the tree exactly as captured, object identity
|
|
27
|
+
* included. That is not a guess at 1×: it is the documented reading of an
|
|
28
|
+
* unstated scale, and it is what keeps every project that has not declared a
|
|
29
|
+
* board density seeing precisely the report it saw before.
|
|
30
|
+
*/
|
|
31
|
+
import type { SemanticTree } from "@design-parity/core";
|
|
32
|
+
/** Usable scale factor, or `undefined` for "not stated" / not a scale. */
|
|
33
|
+
export declare function statedDensity(value: number | undefined): number | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Put a tree's `tokens` in code units (dp/sp), leaving `bounds` alone.
|
|
36
|
+
*
|
|
37
|
+
* The result drops `density`, because after the division there is no factor
|
|
38
|
+
* left to state and "absent" is the contract's word for tokens that already
|
|
39
|
+
* share the code side's space — which also makes this idempotent. `bounds` and
|
|
40
|
+
* `boundsDensity` pass through untouched: they are the other half of the tree
|
|
41
|
+
* and the overlay still needs them in the raster's own pixels.
|
|
42
|
+
*/
|
|
43
|
+
export declare function inCodeUnits(tree: SemanticTree | undefined): SemanticTree | undefined;
|
|
44
|
+
//# sourceMappingURL=units.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"units.d.ts","sourceRoot":"","sources":["../src/units.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAGV,YAAY,EAEb,MAAM,qBAAqB,CAAC;AAW7B,0EAA0E;AAC1E,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAG3E;AA2CD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,SAAS,CAMpF"}
|
package/dist/units.js
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rounded to two places, matching the adapter's own division: a divided-through
|
|
3
|
+
* capture is a measurement, not a spec, and `48 / 2.625 = 18.285714…` quoted in
|
|
4
|
+
* full is false precision.
|
|
5
|
+
*/
|
|
6
|
+
function inDp(value, density) {
|
|
7
|
+
return Math.round((value / density) * 100) / 100;
|
|
8
|
+
}
|
|
9
|
+
/** Usable scale factor, or `undefined` for "not stated" / not a scale. */
|
|
10
|
+
export function statedDensity(value) {
|
|
11
|
+
if (value === undefined || !Number.isFinite(value) || value <= 0)
|
|
12
|
+
return undefined;
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Lengths only. `fontWeight` is a weight, `fontFamily` / `fontStyle` /
|
|
17
|
+
* `fontVariationSettings` are not measurements, and none of them scale.
|
|
18
|
+
*/
|
|
19
|
+
function typographyInDp(type, density) {
|
|
20
|
+
const out = { ...type };
|
|
21
|
+
if (type.fontSize !== undefined)
|
|
22
|
+
out.fontSize = inDp(type.fontSize, density);
|
|
23
|
+
if (type.lineHeight !== undefined)
|
|
24
|
+
out.lineHeight = inDp(type.lineHeight, density);
|
|
25
|
+
if (type.letterSpacing !== undefined)
|
|
26
|
+
out.letterSpacing = inDp(type.letterSpacing, density);
|
|
27
|
+
return out;
|
|
28
|
+
}
|
|
29
|
+
/** Spacing, radius and type sizes divide; colours are not lengths. */
|
|
30
|
+
function tokensInDp(tokens, density) {
|
|
31
|
+
const out = { ...tokens };
|
|
32
|
+
if (tokens.spacing) {
|
|
33
|
+
out.spacing = Object.fromEntries(Object.entries(tokens.spacing).map(([k, v]) => [k, inDp(v, density)]));
|
|
34
|
+
}
|
|
35
|
+
if (tokens.radius) {
|
|
36
|
+
out.radius = Object.fromEntries(Object.entries(tokens.radius).map(([k, v]) => [k, inDp(v, density)]));
|
|
37
|
+
}
|
|
38
|
+
if (tokens.typography) {
|
|
39
|
+
out.typography = Object.fromEntries(Object.entries(tokens.typography).map(([k, v]) => [k, typographyInDp(v, density)]));
|
|
40
|
+
}
|
|
41
|
+
return out;
|
|
42
|
+
}
|
|
43
|
+
function nodeInDp(node, density) {
|
|
44
|
+
return {
|
|
45
|
+
...node,
|
|
46
|
+
...(node.tokens ? { tokens: tokensInDp(node.tokens, density) } : {}),
|
|
47
|
+
...(node.children ? { children: node.children.map((c) => nodeInDp(c, density)) } : {}),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Put a tree's `tokens` in code units (dp/sp), leaving `bounds` alone.
|
|
52
|
+
*
|
|
53
|
+
* The result drops `density`, because after the division there is no factor
|
|
54
|
+
* left to state and "absent" is the contract's word for tokens that already
|
|
55
|
+
* share the code side's space — which also makes this idempotent. `bounds` and
|
|
56
|
+
* `boundsDensity` pass through untouched: they are the other half of the tree
|
|
57
|
+
* and the overlay still needs them in the raster's own pixels.
|
|
58
|
+
*/
|
|
59
|
+
export function inCodeUnits(tree) {
|
|
60
|
+
if (!tree)
|
|
61
|
+
return tree;
|
|
62
|
+
const density = statedDensity(tree.density);
|
|
63
|
+
if (density === undefined)
|
|
64
|
+
return tree;
|
|
65
|
+
const { density: _stated, ...rest } = tree;
|
|
66
|
+
return { ...rest, root: nodeInDp(tree.root, density) };
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=units.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"units.js","sourceRoot":"","sources":["../src/units.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@design-parity/report-html",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.59",
|
|
4
4
|
"description": "Self-contained HTML comparison page per parity run: reference | candidate | diff side by side with the verdict findings, inlined to one offline .html file (data-URI PNGs + inline CSS/JS, no external assets).",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"test": "vitest run --root ../.. packages/report-html/test"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@design-parity/core": "
|
|
23
|
+
"@design-parity/core": "0.1.59"
|
|
24
24
|
},
|
|
25
25
|
"repository": {
|
|
26
26
|
"type": "git",
|