@hypen-space/web 0.4.947 → 0.4.948

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.
Files changed (40) hide show
  1. package/dist/canvas/paint.js +23 -33
  2. package/dist/canvas/paint.js.map +1 -1
  3. package/dist/canvas/utils.js +6 -1
  4. package/dist/canvas/utils.js.map +1 -1
  5. package/dist/dom/applicators/advanced-layout.js +9 -8
  6. package/dist/dom/applicators/advanced-layout.js.map +1 -1
  7. package/dist/dom/applicators/border.js +10 -17
  8. package/dist/dom/applicators/border.js.map +1 -1
  9. package/dist/dom/applicators/effects.js +9 -8
  10. package/dist/dom/applicators/effects.js.map +1 -1
  11. package/dist/dom/applicators/font.js +2 -1
  12. package/dist/dom/applicators/font.js.map +1 -1
  13. package/dist/dom/applicators/layout.js +2 -1
  14. package/dist/dom/applicators/layout.js.map +1 -1
  15. package/dist/dom/applicators/margin.js +6 -7
  16. package/dist/dom/applicators/margin.js.map +1 -1
  17. package/dist/dom/applicators/padding.js +9 -10
  18. package/dist/dom/applicators/padding.js.map +1 -1
  19. package/dist/dom/applicators/size.d.ts +19 -0
  20. package/dist/dom/applicators/size.js +35 -9
  21. package/dist/dom/applicators/size.js.map +1 -1
  22. package/dist/dom/applicators/transform.js +5 -4
  23. package/dist/dom/applicators/transform.js.map +1 -1
  24. package/dist/dom/applicators/typography.js +14 -5
  25. package/dist/dom/applicators/typography.js.map +1 -1
  26. package/package.json +2 -2
  27. package/src/canvas/QUICKSTART.md +0 -2
  28. package/src/canvas/paint.ts +21 -32
  29. package/src/canvas/utils.ts +6 -1
  30. package/src/dom/applicators/advanced-layout.ts +9 -8
  31. package/src/dom/applicators/border.ts +10 -17
  32. package/src/dom/applicators/effects.ts +9 -8
  33. package/src/dom/applicators/font.ts +2 -1
  34. package/src/dom/applicators/layout.ts +2 -1
  35. package/src/dom/applicators/margin.ts +6 -6
  36. package/src/dom/applicators/padding.ts +9 -9
  37. package/src/dom/applicators/size.ts +34 -9
  38. package/src/dom/applicators/transform.ts +5 -4
  39. package/src/dom/applicators/typography.ts +13 -5
  40. package/src/canvas/PARITY.md +0 -254
@@ -1 +1 @@
1
- {"version":3,"file":"effects.js","sourceRoot":"","sources":["../../../src/dom/applicators/effects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effects.js","sourceRoot":"","sources":["../../../src/dom/applicators/effects.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Font Applicators with Google Fonts support
3
3
  */
4
+ import { toCssLength } from "./size.js";
4
5
  // Track loaded Google Fonts to avoid duplicate link tags
5
6
  const loadedGoogleFonts = new Set();
6
7
  // System font keywords that shouldn't be loaded from Google Fonts
@@ -61,7 +62,7 @@ function processFontFamily(value) {
61
62
  }
62
63
  export const fontHandlers = {
63
64
  fontSize: (el, value) => {
64
- el.style.fontSize = typeof value === "number" ? `${value}px` : String(value);
65
+ el.style.fontSize = toCssLength(value);
65
66
  },
66
67
  fontWeight: (el, value) => {
67
68
  el.style.fontWeight = String(value);
@@ -1 +1 @@
1
- {"version":3,"file":"font.js","sourceRoot":"","sources":["../../../src/dom/applicators/font.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"font.js","sourceRoot":"","sources":["../../../src/dom/applicators/font.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,yDAAyD;AACzD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,kEAAkE;AAClE,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO;IAC/D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS;IACxD,eAAe,EAAE,oBAAoB,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW;IACvE,iBAAiB,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ;CACjE,CAAC,CAAC;AAEH;;GAEG;AACH,SAAS,YAAY,CAAC,QAAgB;IACpC,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IACjD,OAAO,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC;QAClC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;QAC1B,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,QAAgB;IACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEnC,6CAA6C;IAC7C,IAAI,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QAClE,OAAO;IACT,CAAC;IAED,sCAAsC;IACtC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAElC,uCAAuC;IACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC;IACxB,IAAI,CAAC,IAAI,GAAG,4CAA4C,kBAAkB,CAAC,UAAU,CAAC,wDAAwD,CAAC;IAE/I,uBAAuB;IACvB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,KAAa;IACtC,uCAAuC;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAEvE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,cAAc,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,oDAAoD;IACpD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACnB,6DAA6D;QAC7D,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,GAAG,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAsC;IAC7D,QAAQ,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACtB,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,UAAU,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACxB,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,UAAU,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACxB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,sDAAsD;QACtD,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED,SAAS,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACvB,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;QACvB,kEAAkE;QAClE,oEAAoE;QACpE,+DAA+D;QAC/D,gEAAgE;QAChE,6DAA6D;QAC7D,+DAA+D;QAC/D,oEAAoE;QACpE,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACtE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS;gBAAE,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;YACxD,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK;gBAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;YAC7C,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,cAAc,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC7D,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACxB,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACvB,mCAAmC;QACnC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,aAAa,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QAC3B,kDAAkD;QAClD,EAAE,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;CACF,CAAC;AAEF,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB;;OAEG;IACH,OAAO,EAAE,cAAc;IAEvB;;OAEG;IACH,QAAQ,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEtE;;OAEG;IACH,cAAc,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;IAEnD;;OAEG;IACH,OAAO,EAAE;QACP,QAAQ;QACR,WAAW;QACX,MAAM;QACN,YAAY;QACZ,SAAS;QACT,OAAO;QACP,QAAQ;QACR,kBAAkB;QAClB,cAAc;QACd,iBAAiB;QACjB,WAAW;QACX,gBAAgB;QAChB,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,WAAW;QACX,WAAW;QACX,OAAO;QACP,OAAO;QACP,SAAS;KACV;CACF,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Layout Applicators (Flexbox/Grid)
3
3
  */
4
+ import { toCssLength } from "./size.js";
4
5
  /**
5
6
  * Maps Hypen alignment values to CSS flexbox values.
6
7
  * Ensures consistent cross-platform API (Android/iOS/Web).
@@ -92,7 +93,7 @@ export const layoutHandlers = {
92
93
  el.style.alignItems = mapAlignmentValue(String(value));
93
94
  },
94
95
  gap: (el, value) => {
95
- el.style.gap = typeof value === "number" ? `${value}px` : String(value);
96
+ el.style.gap = toCssLength(value);
96
97
  },
97
98
  // weight: unified cross-platform API (same as flex)
98
99
  // Use .weight(1) to make element take remaining space in Row/Column
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/dom/applicators/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/dom/applicators/layout.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,16 @@
1
1
  /**
2
2
  * Margin Applicators
3
3
  */
4
- // Format a value as a CSS length: numbers become "Npx", strings pass through.
5
- // Same caveat as `padding.ts#toCssLength`: rem/em/% values must survive,
6
- // otherwise `parseFloat("0.5rem")` collapses to literal `0.5px`.
4
+ import { toCssLength as toCssLengthShared } from "./size.js";
5
+ // See `padding.ts#toCssLength` — shared helper normalises `dp` / `sp` / `pt`
6
+ // (which CSS doesn't understand) to `px`, and passes `rem` / `em` / `%`
7
+ // through unchanged.
7
8
  const toCssLength = (v) => {
8
9
  if (v == null)
9
10
  return "";
10
- if (typeof v === "number")
11
- return `${v}px`;
12
11
  if (typeof v === "object" && v["0"] !== undefined)
13
12
  return toCssLength(v["0"]);
14
- return String(v);
13
+ return toCssLengthShared(v);
15
14
  };
16
15
  // Collect positional args ("0", "1", "2", "3") in order, stopping at the first gap.
17
16
  const positionalArgs = (value) => {
@@ -27,7 +26,7 @@ export const marginHandler = (el, value) => {
27
26
  return;
28
27
  }
29
28
  if (typeof value !== "object" || value === null) {
30
- el.style.margin = String(value);
29
+ el.style.margin = toCssLength(value);
31
30
  return;
32
31
  }
33
32
  // Named-keys form: { top, right, bottom, left }
@@ -1 +1 @@
1
- {"version":3,"file":"margin.js","sourceRoot":"","sources":["../../../src/dom/applicators/margin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"margin.js","sourceRoot":"","sources":["../../../src/dom/applicators/margin.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,19 @@
1
1
  /**
2
2
  * Padding Applicators
3
3
  */
4
- // Format a value as a CSS length: numbers become "Npx", strings pass through.
5
- // Strings come through verbatim because the Tailwind→CSS pipeline emits
6
- // values like `"0.5rem"` (= py-2) or `"1rem"` (= px-4); stripping the unit
7
- // via `parseFloat` collapsed them to literal `0.5px` / `1px` and the
8
- // social feed rendered with no usable spacing (avatars touched the
9
- // container edges, the BottomNav fell off-screen, etc.).
4
+ import { toCssLength as toCssLengthShared } from "./size.js";
5
+ // Format a value as a CSS length. Delegates to the shared helper in
6
+ // `size.ts` so `dp` / `sp` / `pt` normalise to `px` (CSS doesn't understand
7
+ // those suffixes). Numbers become `${n}px`; anything CSS already knows
8
+ // (`rem`, `em`, `%`, `calc(...)`, …) passes through unchanged. The object
9
+ // form (`v["0"]`) is carried over from the legacy applicator-argument
10
+ // shape that sometimes reaches this handler.
10
11
  const toCssLength = (v) => {
11
12
  if (v == null)
12
13
  return "";
13
- if (typeof v === "number")
14
- return `${v}px`;
15
14
  if (typeof v === "object" && v["0"] !== undefined)
16
15
  return toCssLength(v["0"]);
17
- return String(v);
16
+ return toCssLengthShared(v);
18
17
  };
19
18
  // Collect positional args ("0", "1", "2", "3") in order, stopping at the first
20
19
  // gap. Returns an empty array if no positional args are present.
@@ -31,7 +30,7 @@ export const paddingHandler = (el, value) => {
31
30
  return;
32
31
  }
33
32
  if (typeof value !== "object" || value === null) {
34
- el.style.padding = String(value);
33
+ el.style.padding = toCssLength(value);
35
34
  return;
36
35
  }
37
36
  // Named-keys form: { top, right, bottom, left }
@@ -1 +1 @@
1
- {"version":3,"file":"padding.js","sourceRoot":"","sources":["../../../src/dom/applicators/padding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"padding.js","sourceRoot":"","sources":["../../../src/dom/applicators/padding.ts"],"names":[],"mappings":"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"}
@@ -11,4 +11,23 @@
11
11
  * - "wrap" / "auto": fit content
12
12
  */
13
13
  import type { ApplicatorHandler } from "./types.js";
14
+ /**
15
+ * Parse a size value and return CSS-compatible string.
16
+ * Ensures cross-platform compatibility with Android/iOS.
17
+ *
18
+ * Exported for reuse by other DOM applicators (padding, margin, font,
19
+ * typography, border, …) that historically passed strings through
20
+ * untouched. CSS doesn't understand `dp` / `sp`, so `fontSize("24dp")`
21
+ * or `padding("16sp")` would otherwise be silently dropped by the
22
+ * browser even though the Android / iOS renderers accept them.
23
+ */
24
+ export declare function parseSizeValue(value: any): string | null;
25
+ /**
26
+ * Coerce a Hypen length value to a CSS length string for applicators that
27
+ * feed directly into `el.style.*`. Numbers become `${n}px`; strings with
28
+ * platform-agnostic units (`dp`, `sp`, `pt`) are normalised; anything the
29
+ * browser already understands (`em`, `rem`, `%`, `calc(...)`, …) passes
30
+ * through.
31
+ */
32
+ export declare function toCssLength(value: any): string;
14
33
  export declare const sizeHandlers: Record<string, ApplicatorHandler>;
@@ -13,8 +13,14 @@
13
13
  /**
14
14
  * Parse a size value and return CSS-compatible string.
15
15
  * Ensures cross-platform compatibility with Android/iOS.
16
+ *
17
+ * Exported for reuse by other DOM applicators (padding, margin, font,
18
+ * typography, border, …) that historically passed strings through
19
+ * untouched. CSS doesn't understand `dp` / `sp`, so `fontSize("24dp")`
20
+ * or `padding("16sp")` would otherwise be silently dropped by the
21
+ * browser even though the Android / iOS renderers accept them.
16
22
  */
17
- function parseSizeValue(value) {
23
+ export function parseSizeValue(value) {
18
24
  if (value === null || value === undefined)
19
25
  return null;
20
26
  // Numbers default to px
@@ -36,8 +42,10 @@ function parseSizeValue(value) {
36
42
  case "max":
37
43
  return "100%";
38
44
  }
39
- // Parse value with unit
40
- const match = str.match(/^(-?[\d.]+)\s*(px|dp|pt|%|vw|vh|vmin|vmax|em|rem)?$/);
45
+ // Parse value with unit. `sp` is accepted as an alias for `dp` — on web,
46
+ // density-independent and scale-independent units all collapse to CSS
47
+ // `px` at 96dpi (there's no separate text-scaling knob on the DOM side).
48
+ const match = str.match(/^(-?[\d.]+)\s*(px|dp|pt|sp|%|vw|vh|vmin|vmax|em|rem)?$/);
41
49
  if (!match) {
42
50
  // Pass through other CSS values as-is (e.g., "calc(...)", "fit-content")
43
51
  return str;
@@ -49,13 +57,17 @@ function parseSizeValue(value) {
49
57
  // Absolute pixels - use as-is
50
58
  return `${num}px`;
51
59
  case "dp":
52
- case "pt":
53
- // Density-independent points
54
- // On web, 1dp/1pt 1px at standard density (96dpi)
55
- // CSS already handles this via px, so we just use px
56
- // For true density independence, we'd need to query devicePixelRatio
57
- // but CSS px is already defined as 1/96th of an inch
60
+ case "sp":
61
+ // Density/scale-independent logical pixels.
62
+ // On web, 1dp/1sp = 1 CSS px at standard density (96dpi).
63
+ // (`sp` does not yet scale with the user's text-size preference
64
+ // that's a separate cross-renderer change.)
58
65
  return `${num}px`;
66
+ case "pt":
67
+ // Typographic point = 1/72 inch. Emit native CSS `pt` so the
68
+ // browser's own length resolution runs (1pt = 1.333… CSS px at
69
+ // 96dpi). Matches the 96/72 multiplier used on iOS and Android.
70
+ return `${num}pt`;
59
71
  case "%":
60
72
  return `${num}%`;
61
73
  case "vw":
@@ -74,6 +86,20 @@ function parseSizeValue(value) {
74
86
  return `${num}px`;
75
87
  }
76
88
  }
89
+ /**
90
+ * Coerce a Hypen length value to a CSS length string for applicators that
91
+ * feed directly into `el.style.*`. Numbers become `${n}px`; strings with
92
+ * platform-agnostic units (`dp`, `sp`, `pt`) are normalised; anything the
93
+ * browser already understands (`em`, `rem`, `%`, `calc(...)`, …) passes
94
+ * through.
95
+ */
96
+ export function toCssLength(value) {
97
+ if (value === null || value === undefined)
98
+ return "";
99
+ if (typeof value === "number")
100
+ return `${value}px`;
101
+ return parseSizeValue(value) ?? String(value);
102
+ }
77
103
  export const sizeHandlers = {
78
104
  width: (el, value) => {
79
105
  const size = parseSizeValue(value);
@@ -1 +1 @@
1
- {"version":3,"file":"size.js","sourceRoot":"","sources":["../../../src/dom/applicators/size.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"size.js","sourceRoot":"","sources":["../../../src/dom/applicators/size.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Transform Applicators
3
3
  */
4
+ import { toCssLength } from "./size.js";
4
5
  export const transformHandlers = {
5
6
  transform: (el, value) => {
6
7
  el.style.transform = String(value);
@@ -10,17 +11,17 @@ export const transformHandlers = {
10
11
  },
11
12
  translateX: (el, value) => {
12
13
  const current = el.style.transform || "";
13
- const val = typeof value === "number" ? `${value}px` : String(value);
14
+ const val = toCssLength(value);
14
15
  el.style.transform = current ? `${current} translateX(${val})` : `translateX(${val})`;
15
16
  },
16
17
  translateY: (el, value) => {
17
18
  const current = el.style.transform || "";
18
- const val = typeof value === "number" ? `${value}px` : String(value);
19
+ const val = toCssLength(value);
19
20
  el.style.transform = current ? `${current} translateY(${val})` : `translateY(${val})`;
20
21
  },
21
22
  translateZ: (el, value) => {
22
23
  const current = el.style.transform || "";
23
- const val = typeof value === "number" ? `${value}px` : String(value);
24
+ const val = toCssLength(value);
24
25
  el.style.transform = current ? `${current} translateZ(${val})` : `translateZ(${val})`;
25
26
  },
26
27
  rotate: (el, value) => {
@@ -68,7 +69,7 @@ export const transformHandlers = {
68
69
  el.style.transform = current ? `${current} skewY(${value})` : `skewY(${value})`;
69
70
  },
70
71
  perspective: (el, value) => {
71
- el.style.perspective = typeof value === "number" ? `${value}px` : String(value);
72
+ el.style.perspective = toCssLength(value);
72
73
  },
73
74
  };
74
75
  //# sourceMappingURL=transform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../src/dom/applicators/transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../src/dom/applicators/transform.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,MAAM,CAAC,MAAM,iBAAiB,GAAsC;IAClE,SAAS,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACvB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,eAAe,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QAC7B,EAAE,CAAC,KAAK,CAAC,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,UAAU,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAC/B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,GAAG,CAAC;IACxF,CAAC;IAED,UAAU,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAC/B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,GAAG,CAAC;IACxF,CAAC;IAED,UAAU,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAC/B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,GAAG,CAAC;IACxF,CAAC;IAED,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACpB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC;IAChF,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,YAAY,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;IAClF,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,YAAY,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;IAClF,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,YAAY,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;IAClF,CAAC;IAED,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC;IAClF,CAAC;IAED,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACpB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC;IACpF,CAAC;IAED,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACpB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC;IACpF,CAAC;IAED,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QAClB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC;IAChF,CAAC;IAED,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC;IAClF,CAAC;IAED,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC;IAClF,CAAC;IAED,WAAW,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;QACzB,EAAE,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;CACF,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Typography Applicators
3
3
  */
4
+ import { toCssLength } from "./size.js";
4
5
  export const typographyHandlers = {
5
6
  textAlign: (el, value) => {
6
7
  const v = String(value);
@@ -30,19 +31,27 @@ export const typographyHandlers = {
30
31
  el.style.textDecorationStyle = String(value);
31
32
  },
32
33
  textDecorationThickness: (el, value) => {
33
- el.style.textDecorationThickness = typeof value === "number" ? `${value}px` : String(value);
34
+ el.style.textDecorationThickness = toCssLength(value);
34
35
  },
35
36
  letterSpacing: (el, value) => {
36
- el.style.letterSpacing = typeof value === "number" ? `${value}px` : String(value);
37
+ el.style.letterSpacing = toCssLength(value);
37
38
  },
38
39
  wordSpacing: (el, value) => {
39
- el.style.wordSpacing = typeof value === "number" ? `${value}px` : String(value);
40
+ el.style.wordSpacing = toCssLength(value);
40
41
  },
41
42
  lineHeight: (el, value) => {
42
- el.style.lineHeight = String(value);
43
+ // `line-height` is unitless by convention when the value is a bare
44
+ // number (CSS multiplier on the element's font-size); only normalise
45
+ // when the value carries a length unit like `dp` / `sp`.
46
+ if (typeof value === "string" && /^-?[\d.]+\s*(dp|sp)$/i.test(value.trim())) {
47
+ el.style.lineHeight = toCssLength(value);
48
+ }
49
+ else {
50
+ el.style.lineHeight = String(value);
51
+ }
43
52
  },
44
53
  textIndent: (el, value) => {
45
- el.style.textIndent = typeof value === "number" ? `${value}px` : String(value);
54
+ el.style.textIndent = toCssLength(value);
46
55
  },
47
56
  textOverflow: (el, value) => {
48
57
  el.style.textOverflow = String(value);
@@ -1 +1 @@
1
- {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../../src/dom/applicators/typography.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../../src/dom/applicators/typography.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hypen-space/web",
3
- "version": "0.4.947",
3
+ "version": "0.4.948",
4
4
  "description": "Hypen web renderers - DOM and Canvas rendering for browsers",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -43,7 +43,7 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@chenglou/pretext": "^0.0.3",
46
- "@hypen-space/core": "^0.4.947",
46
+ "@hypen-space/core": "^0.4.948",
47
47
  "taffy-layout": "^2.0.3"
48
48
  },
49
49
  "devDependencies": {
@@ -398,8 +398,6 @@ const renderer = new CanvasRenderer(canvas, engine, {
398
398
  ## Next Steps
399
399
 
400
400
  - Read the [Canvas Renderer README](./README.md)
401
- - See [Canvas vs DOM comparison](../../docs/CANVAS_VS_DOM.md)
402
- - Check the [implementation plan](./plan.md)
403
401
  - Try the [example](../../examples/canvas-counter.ts)
404
402
 
405
403
  ## Getting Help
@@ -391,42 +391,31 @@ function paintButton(ctx: CanvasRenderingContext2D, node: VirtualNode): void {
391
391
  applyShadow(ctx, shadow);
392
392
  }
393
393
 
394
- // Background color based on state.
395
- //
396
- // Only the default-blue button derives a default hover/focus shade. When a
397
- // caller supplies `backgroundColor` (including "transparent" for icon-style
398
- // buttons), swap to hover/focus only if they _also_ supply an explicit
399
- // hoverColor/focusColor — otherwise the caller's intent wins and we leave
400
- // the base colour untouched. Without this, transparent nav buttons would
401
- // flash a blue rectangle on hover.
402
- const explicitBg = props.backgroundColor !== undefined;
403
- let backgroundColor = explicitBg ? props.backgroundColor : "#007bff";
404
- if (node.hovered) {
405
- if (props.hoverColor !== undefined) {
406
- backgroundColor = props.hoverColor;
407
- } else if (!explicitBg) {
408
- backgroundColor = "#0056b3";
409
- }
410
- }
411
- if (node.focused) {
412
- if (props.focusColor !== undefined) {
413
- backgroundColor = props.focusColor;
414
- } else if (!explicitBg) {
415
- backgroundColor = "#004085";
416
- }
394
+ // Resolve background from state. The DOM, iOS, and Android renderers all
395
+ // paint no background for a button until the caller supplies one — match
396
+ // that here (canvas used to default to `#007bff`, which made bare
397
+ // `Button { Text("-") }` render as a blue pill in canvas but plain text
398
+ // in DOM/native). Hover/focus only apply when the caller opts in via
399
+ // `hoverColor`/`focusColor`.
400
+ let backgroundColor: string | undefined;
401
+ if (node.hovered && props.hoverColor !== undefined) {
402
+ backgroundColor = props.hoverColor;
403
+ } else if (node.focused && props.focusColor !== undefined) {
404
+ backgroundColor = props.focusColor;
405
+ } else if (props.backgroundColor !== undefined) {
406
+ backgroundColor = props.backgroundColor;
417
407
  }
418
408
 
419
- // Support gradients for button background
420
- if (typeof backgroundColor === "string" && backgroundColor.includes("gradient")) {
421
- ctx.fillStyle = parseGradient(ctx, backgroundColor, x, y, width, height);
422
- } else {
423
- ctx.fillStyle = backgroundColor;
409
+ if (backgroundColor !== undefined) {
410
+ if (typeof backgroundColor === "string" && backgroundColor.includes("gradient")) {
411
+ ctx.fillStyle = parseGradient(ctx, backgroundColor, x, y, width, height);
412
+ } else {
413
+ ctx.fillStyle = backgroundColor;
414
+ }
415
+ drawRoundedRect(ctx, x, y, width, height, radius);
416
+ ctx.fill();
424
417
  }
425
418
 
426
- // Draw button background
427
- drawRoundedRect(ctx, x, y, width, height, radius);
428
- ctx.fill();
429
-
430
419
  // Reset shadow for border
431
420
  if (shadow) {
432
421
  ctx.shadowColor = "transparent";
@@ -37,8 +37,13 @@ export function cssLengthToPx(value: any): number | null {
37
37
  // fallback so the layout gets _some_ numeric value rather than zero.
38
38
  case "vw":
39
39
  case "vh": return n;
40
- // Point/picararely seen from the engine but honoured for completeness.
40
+ // Typographic point 1/72 inch at CSS reference density (96dpi).
41
41
  case "pt": return n * (96 / 72);
42
+ // Density-independent (dp) and scale-independent (sp) logical pixels
43
+ // collapse to CSS px 1:1 — matches the cross-platform contract where
44
+ // 1 dp = 1 iOS point = 1 CSS px at standard density.
45
+ case "dp":
46
+ case "sp": return n;
42
47
  case "pc": return n * 16;
43
48
  case "in": return n * 96;
44
49
  case "cm": return n * (96 / 2.54);