@geometra/core 1.1.0 → 1.1.1

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 (66) hide show
  1. package/dist/animation.d.ts +20 -1
  2. package/dist/animation.d.ts.map +1 -1
  3. package/dist/animation.js +33 -3
  4. package/dist/animation.js.map +1 -1
  5. package/dist/app.d.ts.map +1 -1
  6. package/dist/app.js +2 -1
  7. package/dist/app.js.map +1 -1
  8. package/dist/direction.d.ts +1 -0
  9. package/dist/direction.d.ts.map +1 -1
  10. package/dist/direction.js +6 -1
  11. package/dist/direction.js.map +1 -1
  12. package/dist/elements.d.ts +12 -3
  13. package/dist/elements.d.ts.map +1 -1
  14. package/dist/elements.js +12 -3
  15. package/dist/elements.js.map +1 -1
  16. package/dist/focus-trap.d.ts +3 -2
  17. package/dist/focus-trap.d.ts.map +1 -1
  18. package/dist/focus-trap.js +6 -2
  19. package/dist/focus-trap.js.map +1 -1
  20. package/dist/focus.d.ts +8 -1
  21. package/dist/focus.d.ts.map +1 -1
  22. package/dist/focus.js +37 -8
  23. package/dist/focus.js.map +1 -1
  24. package/dist/fonts.d.ts +10 -4
  25. package/dist/fonts.d.ts.map +1 -1
  26. package/dist/fonts.js +25 -6
  27. package/dist/fonts.js.map +1 -1
  28. package/dist/hit-test.d.ts +19 -3
  29. package/dist/hit-test.d.ts.map +1 -1
  30. package/dist/hit-test.js +48 -31
  31. package/dist/hit-test.js.map +1 -1
  32. package/dist/index.d.ts +2 -1
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +2 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/keyboard.d.ts +10 -2
  37. package/dist/keyboard.d.ts.map +1 -1
  38. package/dist/keyboard.js +10 -2
  39. package/dist/keyboard.js.map +1 -1
  40. package/dist/layout-bounds.d.ts +16 -0
  41. package/dist/layout-bounds.d.ts.map +1 -0
  42. package/dist/layout-bounds.js +27 -0
  43. package/dist/layout-bounds.js.map +1 -0
  44. package/dist/node.d.ts +9 -0
  45. package/dist/node.d.ts.map +1 -1
  46. package/dist/node.js +9 -2
  47. package/dist/node.js.map +1 -1
  48. package/dist/selection.d.ts +7 -2
  49. package/dist/selection.d.ts.map +1 -1
  50. package/dist/selection.js +17 -4
  51. package/dist/selection.js.map +1 -1
  52. package/dist/seo.d.ts +12 -2
  53. package/dist/seo.d.ts.map +1 -1
  54. package/dist/seo.js +43 -12
  55. package/dist/seo.js.map +1 -1
  56. package/dist/signals.d.ts +40 -5
  57. package/dist/signals.d.ts.map +1 -1
  58. package/dist/signals.js +28 -5
  59. package/dist/signals.js.map +1 -1
  60. package/dist/tree.d.ts +11 -1
  61. package/dist/tree.d.ts.map +1 -1
  62. package/dist/tree.js +16 -2
  63. package/dist/tree.js.map +1 -1
  64. package/dist/types.d.ts +5 -1
  65. package/dist/types.d.ts.map +1 -1
  66. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"selection.js","sourceRoot":"","sources":["../src/selection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection.js","sourceRoot":"","sources":["../src/selection.ts"],"names":[],"mappings":"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"}
package/dist/seo.d.ts CHANGED
@@ -33,7 +33,11 @@ export interface SemanticHTMLOptions {
33
33
  description?: string;
34
34
  image?: string;
35
35
  };
36
- /** Additional <head> content (raw HTML string). */
36
+ /**
37
+ * Additional `<head>` markup appended verbatim (unlike `title`, meta `content`, and body text,
38
+ * this string is not HTML-escaped).
39
+ * Treat as trusted, pre-sanitized HTML only; never pass end-user strings here without escaping.
40
+ */
37
41
  headExtra?: string;
38
42
  }
39
43
  /**
@@ -44,13 +48,19 @@ export interface SemanticHTMLOptions {
44
48
  * version for real users.
45
49
  *
46
50
  * When `props.dir` is `ltr`, `rtl`, or `auto` on a box, text, or image node, the HTML `dir`
47
- * attribute is emitted on that element’s tag.
51
+ * attribute is emitted on that element’s tag. Images also honor `semantic.role` and
52
+ * `semantic.ariaLabel` (escaped), alongside `alt` from props or `semantic.alt`.
48
53
  *
49
54
  * `semantic.tag` is validated as a safe HTML local name (letter, then letters/digits/hyphen, ≤128
50
55
  * chars); invalid values fall back to font/box inference so crawlers cannot receive broken markup.
51
56
  *
52
57
  * Default box tags: `onClick` maps to `<button>` only for an empty box or a box whose sole child is
53
58
  * `text()`; otherwise `div` (compound click targets should use `semantic.tag` / roles when needed).
59
+ *
60
+ * HTML5 void elements (`input`, `br`, `img`, …) never get a closing tag; if a void `semantic.tag`
61
+ * has text content or box children, that content is serialized as following siblings (valid markup).
62
+ *
63
+ * `options.headExtra` is concatenated raw; all other string options and tree text are escaped.
54
64
  */
55
65
  export declare function toSemanticHTML(tree: UIElement, options?: SemanticHTMLOptions): string;
56
66
  //# sourceMappingURL=seo.d.ts.map
package/dist/seo.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"seo.d.ts","sourceRoot":"","sources":["../src/seo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAyC,MAAM,YAAY,CAAA;AAElF,4CAA4C;AAC5C,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,2BAA2B;IAC3B,EAAE,CAAC,EAAE;QACH,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,6CAA6C;QAC7C,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,kCAAkC;QAClC,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IACD,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA2QD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,SAAS,EACf,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAkDR"}
1
+ {"version":3,"file":"seo.d.ts","sourceRoot":"","sources":["../src/seo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAyC,MAAM,YAAY,CAAA;AAElF,4CAA4C;AAC5C,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,2BAA2B;IAC3B,EAAE,CAAC,EAAE;QACH,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,6CAA6C;QAC7C,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,kCAAkC;QAClC,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IACD;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA+RD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,SAAS,EACf,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAoDR"}
package/dist/seo.js CHANGED
@@ -4,9 +4,10 @@
4
4
  * Covers `%`, viewport units (including dynamic `d*`, small `s*`, and large `l*` variants), common font-relative units (`ch`, `cap`, `math`), and absolute lengths
5
5
  * (`pt`, `pc`, `in`, `cm`, `mm`, `Q`) aligned with typical `fonts.ts` shorthand shapes (subset of units;
6
6
  * coarse px mapping for tier heuristics only). Longer viewport unit tokens precede shorter prefixes
7
- * (e.g. `dvmin` before `vmin`), aligned with `fonts.ts`.
7
+ * (e.g. `dvmin` before `vmin`), aligned with `fonts.ts`. A negative lookbehind skips digit runs
8
+ * immediately after `-` so `-32px` is not read as `32px`.
8
9
  */
9
- const FONT_SIZE_LENGTH = /(\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)\s*(%|px|rem|em|pt|pc|in|cm|mm|Q|math|dvmin|dvmax|svmin|svmax|lvmin|lvmax|dvh|dvw|dvi|dvb|svh|svw|svi|svb|lvh|lvw|lvi|lvb|vmin|vmax|vh|vw|vi|vb|rlh|lh|rcap|rch|rex|ric|cap|ch|ex|ic|cqmin|cqmax|cqw|cqh|cqi|cqb)(?=[\s,;/]|$)/i;
10
+ const FONT_SIZE_LENGTH = /(?<!-)(\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)\s*(%|px|rem|em|pt|pc|in|cm|mm|Q|math|dvmin|dvmax|svmin|svmax|lvmin|lvmax|dvh|dvw|dvi|dvb|svh|svw|svi|svb|lvh|lvw|lvi|lvb|vmin|vmax|vh|vw|vi|vb|rlh|lh|rcap|rch|rex|ric|cap|ch|ex|ic|cqmin|cqmax|cqw|cqh|cqi|cqb)(?=[\s,;/]|$)/i;
10
11
  /**
11
12
  * True when the **leading** font shorthand style segment (before the first font-size length token)
12
13
  * indicates bold weight: `bold` / `bolder` as whole tokens, or numeric 700–900.
@@ -132,8 +133,11 @@ function inferTag(element) {
132
133
  if (sizeMatch) {
133
134
  const n = parseFloat(sizeMatch[1]);
134
135
  const unit = sizeMatch[2];
135
- if (Number.isFinite(n))
136
- size = fontLengthToApproxPx(n, unit);
136
+ if (Number.isFinite(n)) {
137
+ const px = fontLengthToApproxPx(n, unit);
138
+ if (Number.isFinite(px) && px > 0)
139
+ size = px;
140
+ }
137
141
  }
138
142
  const stylePrefix = sizeMatch && sizeMatch.index !== undefined ? font.slice(0, sizeMatch.index) : font;
139
143
  const isBold = isFontBoldShorthand(stylePrefix);
@@ -223,9 +227,17 @@ function elementToHTML(element, indent) {
223
227
  if (element.kind === 'image') {
224
228
  const imgEl = element;
225
229
  const alt = imgEl.semantic?.alt ?? imgEl.props.alt ?? '';
230
+ const attrs = [];
226
231
  const dir = dirAttribute(imgEl.props);
227
- const dirStr = dir ? ` ${dir}` : '';
228
- return `${pad}<img src="${escapeHTML(imgEl.props.src)}" alt="${escapeHTML(alt)}"${dirStr}>`;
232
+ if (dir)
233
+ attrs.push(dir);
234
+ if (imgEl.semantic?.role)
235
+ attrs.push(`role="${escapeHTML(imgEl.semantic.role)}"`);
236
+ if (imgEl.semantic?.ariaLabel) {
237
+ attrs.push(`aria-label="${escapeHTML(imgEl.semantic.ariaLabel)}"`);
238
+ }
239
+ const attrStr = attrs.length ? ' ' + attrs.join(' ') : '';
240
+ return `${pad}<img src="${escapeHTML(imgEl.props.src)}" alt="${escapeHTML(alt)}"${attrStr}>`;
229
241
  }
230
242
  if (element.kind === 'text') {
231
243
  const tag = sanitizeHtmlTagName(element.semantic?.tag, inferTag(element));
@@ -238,7 +250,14 @@ function elementToHTML(element, indent) {
238
250
  if (element.semantic?.ariaLabel)
239
251
  attrs.push(`aria-label="${escapeHTML(element.semantic.ariaLabel)}"`);
240
252
  const attrStr = attrs.length ? ' ' + attrs.join(' ') : '';
241
- return `${pad}<${tag}${attrStr}>${escapeHTML(element.props.text)}</${tag}>`;
253
+ const body = escapeHTML(element.props.text);
254
+ if (VOID_HTML_TAGS.has(tag.toLowerCase())) {
255
+ const voidOpen = `${pad}<${tag}${attrStr}>`;
256
+ if (body === '')
257
+ return voidOpen;
258
+ return `${voidOpen}\n${pad}${body}`;
259
+ }
260
+ return `${pad}<${tag}${attrStr}>${body}</${tag}>`;
242
261
  }
243
262
  const tag = sanitizeHtmlTagName(element.semantic?.tag, inferBoxTag(element));
244
263
  const attrs = [];
@@ -254,10 +273,14 @@ function elementToHTML(element, indent) {
254
273
  attrs.push(`aria-label="${escapeHTML(element.semantic.alt)}"`);
255
274
  }
256
275
  const attrStr = attrs.length ? ' ' + attrs.join(' ') : '';
276
+ if (VOID_HTML_TAGS.has(tag.toLowerCase())) {
277
+ const voidOpen = `${pad}<${tag}${attrStr}>`;
278
+ if (element.children.length === 0)
279
+ return voidOpen;
280
+ const childLines = element.children.map(c => elementToHTML(c, indent + 1)).join('\n');
281
+ return `${voidOpen}\n${childLines}`;
282
+ }
257
283
  if (element.children.length === 0) {
258
- if (VOID_HTML_TAGS.has(tag.toLowerCase())) {
259
- return `${pad}<${tag}${attrStr}>`;
260
- }
261
284
  return `${pad}<${tag}${attrStr}></${tag}>`;
262
285
  }
263
286
  const children = element.children.map(c => elementToHTML(c, indent + 1)).join('\n');
@@ -271,13 +294,19 @@ function elementToHTML(element, indent) {
271
294
  * version for real users.
272
295
  *
273
296
  * When `props.dir` is `ltr`, `rtl`, or `auto` on a box, text, or image node, the HTML `dir`
274
- * attribute is emitted on that element’s tag.
297
+ * attribute is emitted on that element’s tag. Images also honor `semantic.role` and
298
+ * `semantic.ariaLabel` (escaped), alongside `alt` from props or `semantic.alt`.
275
299
  *
276
300
  * `semantic.tag` is validated as a safe HTML local name (letter, then letters/digits/hyphen, ≤128
277
301
  * chars); invalid values fall back to font/box inference so crawlers cannot receive broken markup.
278
302
  *
279
303
  * Default box tags: `onClick` maps to `<button>` only for an empty box or a box whose sole child is
280
304
  * `text()`; otherwise `div` (compound click targets should use `semantic.tag` / roles when needed).
305
+ *
306
+ * HTML5 void elements (`input`, `br`, `img`, …) never get a closing tag; if a void `semantic.tag`
307
+ * has text content or box children, that content is serialized as following siblings (valid markup).
308
+ *
309
+ * `options.headExtra` is concatenated raw; all other string options and tree text are escaped.
281
310
  */
282
311
  export function toSemanticHTML(tree, options = {}) {
283
312
  const meta = [
@@ -322,7 +351,9 @@ export function toSemanticHTML(tree, options = {}) {
322
351
  if (options.headExtra)
323
352
  meta.push(options.headExtra);
324
353
  const body = elementToHTML(tree, 2);
325
- const lang = escapeHTML(options.lang ?? 'en');
354
+ // Only accept string lang; ignore other runtime shapes so malformed options never reach escapeHTML.
355
+ const rawLang = typeof options.lang === 'string' ? options.lang.trim() : '';
356
+ const lang = escapeHTML(rawLang || 'en');
326
357
  return `<!DOCTYPE html>
327
358
  <html lang="${lang}">
328
359
  <head>
package/dist/seo.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"seo.js","sourceRoot":"","sources":["../src/seo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seo.js","sourceRoot":"","sources":["../src/seo.ts"],"names":[],"mappings":"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"}
package/dist/signals.d.ts CHANGED
@@ -1,18 +1,53 @@
1
- /** Minimal signals-based reactivity system. */
2
- /** Batch multiple signal updates into a single flush. */
1
+ /**
2
+ * Minimal signals-based reactivity for Geometra trees and apps.
3
+ *
4
+ * Reading `signal` / `computed` `.value` inside an active `effect` or `computed`
5
+ * registers a dependency; `peek()` reads without subscribing. `batch` defers
6
+ * subscriber flushes so multiple writes coalesce into one downstream pass.
7
+ */
8
+ /**
9
+ * Run `fn` while deferring subscriber notifications. Updates flush once the
10
+ * outermost `batch` ends (including after `fn` throws). Nested `batch` calls
11
+ * share the same deferral depth.
12
+ */
3
13
  export declare function batch(fn: () => void): void;
14
+ /** Writable reactive cell. */
4
15
  export interface Signal<T> {
16
+ /** Current value; subscribes the active `effect` / `computed` when read. */
5
17
  readonly value: T;
18
+ /**
19
+ * Replace the stored value. Notifies dependents when the next value is not
20
+ * `Object.is`-equal to the current one (so `NaN` is stable; `+0` and `-0` differ).
21
+ */
6
22
  set(value: T): void;
23
+ /** Read the value without registering a dependency. */
7
24
  peek(): T;
8
25
  }
9
- /** Create a reactive signal. */
26
+ /**
27
+ * Create a signal with initial value `initial`.
28
+ */
10
29
  export declare function signal<T>(initial: T): Signal<T>;
30
+ /** Read-only derived value; recomputes when dependencies used in the last run change. */
11
31
  export interface Computed<T> {
32
+ /**
33
+ * Current derived value. Recomputes lazily when dirty; subscribes the active
34
+ * subscriber when read (except while the computed body is running).
35
+ */
12
36
  readonly value: T;
13
37
  }
14
- /** Create a derived computation that re-runs when dependencies change. */
38
+ /**
39
+ * Create a memoized computation from `fn`. Dependencies are the signals and
40
+ * computeds read while `fn` ran on the last evaluation; conditional reads drop
41
+ * stale edges on the next run.
42
+ *
43
+ * @throws If two or more computeds depend on each other in a cycle (unsupported).
44
+ */
15
45
  export declare function computed<T>(fn: () => T): Computed<T>;
16
- /** Run a side effect whenever its signal dependencies change. Returns a dispose function. */
46
+ /**
47
+ * Run a side effect whenever its signal dependencies change. Returns a dispose function.
48
+ * If `fn` throws on the **first** run, the error propagates and no dispose function is returned.
49
+ * If `fn` throws on a later run (after a dependency update), the error propagates to the code
50
+ * that triggered the flush (e.g. `signal.set`); remaining subscribers in the same flush are skipped.
51
+ */
17
52
  export declare function effect(fn: () => void): () => void;
18
53
  //# sourceMappingURL=signals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../src/signals.ts"],"names":[],"mappings":"AAAA,+CAA+C;AA4B/C,yDAAyD;AACzD,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAY1C;AAED,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;IACnB,IAAI,IAAI,CAAC,CAAA;CACV;AAED,gCAAgC;AAChC,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAgC/C;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;CAClB;AAED,0EAA0E;AAC1E,wBAAgB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAuCpD;AAED,6FAA6F;AAC7F,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAoBjD"}
1
+ {"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../src/signals.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA4BH;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAY1C;AAED,8BAA8B;AAC9B,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;IACnB,uDAAuD;IACvD,IAAI,IAAI,CAAC,CAAA;CACV;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAgC/C;AAED,yFAAyF;AACzF,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAuCpD;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAoBjD"}
package/dist/signals.js CHANGED
@@ -1,4 +1,10 @@
1
- /** Minimal signals-based reactivity system. */
1
+ /**
2
+ * Minimal signals-based reactivity for Geometra trees and apps.
3
+ *
4
+ * Reading `signal` / `computed` `.value` inside an active `effect` or `computed`
5
+ * registers a dependency; `peek()` reads without subscribing. `batch` defers
6
+ * subscriber flushes so multiple writes coalesce into one downstream pass.
7
+ */
2
8
  let currentSubscriber = null;
3
9
  const batchQueue = new Set();
4
10
  let batchDepth = 0;
@@ -22,7 +28,11 @@ function releaseSubscriber(sub) {
22
28
  c();
23
29
  cleanups.clear();
24
30
  }
25
- /** Batch multiple signal updates into a single flush. */
31
+ /**
32
+ * Run `fn` while deferring subscriber notifications. Updates flush once the
33
+ * outermost `batch` ends (including after `fn` throws). Nested `batch` calls
34
+ * share the same deferral depth.
35
+ */
26
36
  export function batch(fn) {
27
37
  batchDepth++;
28
38
  try {
@@ -38,7 +48,9 @@ export function batch(fn) {
38
48
  }
39
49
  }
40
50
  }
41
- /** Create a reactive signal. */
51
+ /**
52
+ * Create a signal with initial value `initial`.
53
+ */
42
54
  export function signal(initial) {
43
55
  let value = initial;
44
56
  const subscribers = new Set();
@@ -73,7 +85,13 @@ export function signal(initial) {
73
85
  },
74
86
  };
75
87
  }
76
- /** Create a derived computation that re-runs when dependencies change. */
88
+ /**
89
+ * Create a memoized computation from `fn`. Dependencies are the signals and
90
+ * computeds read while `fn` ran on the last evaluation; conditional reads drop
91
+ * stale edges on the next run.
92
+ *
93
+ * @throws If two or more computeds depend on each other in a cycle (unsupported).
94
+ */
77
95
  export function computed(fn) {
78
96
  let cached;
79
97
  let dirty = true;
@@ -114,7 +132,12 @@ export function computed(fn) {
114
132
  },
115
133
  };
116
134
  }
117
- /** Run a side effect whenever its signal dependencies change. Returns a dispose function. */
135
+ /**
136
+ * Run a side effect whenever its signal dependencies change. Returns a dispose function.
137
+ * If `fn` throws on the **first** run, the error propagates and no dispose function is returned.
138
+ * If `fn` throws on a later run (after a dependency update), the error propagates to the code
139
+ * that triggered the flush (e.g. `signal.set`); remaining subscribers in the same flush are skipped.
140
+ */
118
141
  export function effect(fn) {
119
142
  let disposed = false;
120
143
  const run = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"signals.js","sourceRoot":"","sources":["../src/signals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signals.js","sourceRoot":"","sources":["../src/signals.ts"],"names":[],"mappings":"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"}
package/dist/tree.d.ts CHANGED
@@ -1,5 +1,15 @@
1
1
  import type { LayoutNode } from 'textura';
2
2
  import type { UIElement } from './types.js';
3
- /** Convert a UIElement tree into a textura LayoutNode tree for layout computation. */
3
+ /**
4
+ * Convert a {@link UIElement} tree into a Textura {@link LayoutNode} for Yoga/WASM layout.
5
+ *
6
+ * Strips everything that is not consumed by Textura layout: colors, borders, opacity, cursor,
7
+ * `pointerEvents`, `zIndex`, `overflow` / `scrollX` / `scrollY`, `boxShadow`, `gradient`,
8
+ * `selectable`, `dir`, and image `src` / `alt` / `objectFit`. Remaining props are flex and
9
+ * sizing fields that belong in the layout pipeline.
10
+ *
11
+ * Runtime fields on boxes (`handlers`, `semantic`, `key`) are not part of `element.props` and
12
+ * are unchanged on the live tree — they are not copied into the layout snapshot.
13
+ */
4
14
  export declare function toLayoutTree(element: UIElement): LayoutNode;
5
15
  //# sourceMappingURL=tree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../src/tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AA6B3C,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,GAAG,UAAU,CAW3D"}
1
+ {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../src/tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAiC3C;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,GAAG,UAAU,CAW3D"}
package/dist/tree.js CHANGED
@@ -1,4 +1,8 @@
1
- /** Style/visual props that must be stripped before passing to Yoga layout. */
1
+ /**
2
+ * Removes paint, hit-target, scroll-container, and non-Yoga metadata from element props.
3
+ * Keep this list aligned with {@link StyleProps}, text/image-only fields, and `dir` /
4
+ * `selectable` (see tests in `tree.test.ts`).
5
+ */
2
6
  function stripStyleProps(props) {
3
7
  const layoutProps = { ...props };
4
8
  delete layoutProps.backgroundColor;
@@ -24,7 +28,17 @@ function stripStyleProps(props) {
24
28
  delete layoutProps.objectFit;
25
29
  return layoutProps;
26
30
  }
27
- /** Convert a UIElement tree into a textura LayoutNode tree for layout computation. */
31
+ /**
32
+ * Convert a {@link UIElement} tree into a Textura {@link LayoutNode} for Yoga/WASM layout.
33
+ *
34
+ * Strips everything that is not consumed by Textura layout: colors, borders, opacity, cursor,
35
+ * `pointerEvents`, `zIndex`, `overflow` / `scrollX` / `scrollY`, `boxShadow`, `gradient`,
36
+ * `selectable`, `dir`, and image `src` / `alt` / `objectFit`. Remaining props are flex and
37
+ * sizing fields that belong in the layout pipeline.
38
+ *
39
+ * Runtime fields on boxes (`handlers`, `semantic`, `key`) are not part of `element.props` and
40
+ * are unchanged on the live tree — they are not copied into the layout snapshot.
41
+ */
28
42
  export function toLayoutTree(element) {
29
43
  const layoutProps = stripStyleProps(element.props);
30
44
  if (element.kind === 'text' || element.kind === 'image') {
package/dist/tree.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../src/tree.ts"],"names":[],"mappings":"AAGA,8EAA8E;AAC9E,SAAS,eAAe,CAAC,KAA8B;IACrD,MAAM,WAAW,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;IAChC,OAAO,WAAW,CAAC,eAAe,CAAA;IAClC,OAAO,WAAW,CAAC,KAAK,CAAA;IACxB,OAAO,WAAW,CAAC,WAAW,CAAA;IAC9B,OAAO,WAAW,CAAC,YAAY,CAAA;IAC/B,OAAO,WAAW,CAAC,WAAW,CAAA;IAC9B,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,OAAO,WAAW,CAAC,MAAM,CAAA;IACzB,OAAO,WAAW,CAAC,aAAa,CAAA;IAChC,OAAO,WAAW,CAAC,MAAM,CAAA;IACzB,OAAO,WAAW,CAAC,QAAQ,CAAA;IAC3B,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,OAAO,WAAW,CAAC,SAAS,CAAA;IAC5B,OAAO,WAAW,CAAC,QAAQ,CAAA;IAC3B,OAAO,WAAW,CAAC,UAAU,CAAA;IAC7B,wEAAwE;IACxE,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,mBAAmB;IACnB,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,OAAO,WAAW,CAAC,SAAS,CAAA;IAC5B,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,YAAY,CAAC,OAAkB;IAC7C,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAA;IAE7E,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxD,OAAO,WAAyB,CAAA;IAClC,CAAC;IAED,OAAO;QACL,GAAG,WAAW;QACd,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;KAC/B,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../src/tree.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAA8B;IACrD,MAAM,WAAW,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;IAChC,OAAO,WAAW,CAAC,eAAe,CAAA;IAClC,OAAO,WAAW,CAAC,KAAK,CAAA;IACxB,OAAO,WAAW,CAAC,WAAW,CAAA;IAC9B,OAAO,WAAW,CAAC,YAAY,CAAA;IAC/B,OAAO,WAAW,CAAC,WAAW,CAAA;IAC9B,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,OAAO,WAAW,CAAC,MAAM,CAAA;IACzB,OAAO,WAAW,CAAC,aAAa,CAAA;IAChC,OAAO,WAAW,CAAC,MAAM,CAAA;IACzB,OAAO,WAAW,CAAC,QAAQ,CAAA;IAC3B,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,OAAO,WAAW,CAAC,OAAO,CAAA;IAC1B,OAAO,WAAW,CAAC,SAAS,CAAA;IAC5B,OAAO,WAAW,CAAC,QAAQ,CAAA;IAC3B,OAAO,WAAW,CAAC,UAAU,CAAA;IAC7B,wEAAwE;IACxE,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,mBAAmB;IACnB,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,OAAO,WAAW,CAAC,GAAG,CAAA;IACtB,OAAO,WAAW,CAAC,SAAS,CAAA;IAC5B,OAAO,WAAW,CAAA;AACpB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,OAAkB;IAC7C,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAA;IAE7E,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACxD,OAAO,WAAyB,CAAA;IAClC,CAAC;IAED,OAAO;QACL,GAAG,WAAW;QACd,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;KAC/B,CAAA;AACjB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -150,7 +150,11 @@ export interface CompositionHitEvent {
150
150
  export type Component<P = Record<string, never>> = (props: P) => UIElement;
151
151
  /** Optional per-frame timings supplied by the host (e.g. `createApp` after Yoga). */
152
152
  export interface FrameTimings {
153
- /** Wall time for `computeLayout` (or equivalent) in milliseconds. */
153
+ /**
154
+ * Wall time for `computeLayout` (or equivalent) in milliseconds.
155
+ * `createApp` passes a finite, non-negative value; renderers that implement optional `setFrameTimings`
156
+ * may clamp similarly when invoked outside `createApp`.
157
+ */
154
158
  layoutMs: number;
155
159
  }
156
160
  /** Interface that all render backends implement. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geometra/core",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "DOM-free UI framework core: components, signals, reconciler",
5
5
  "license": "MIT",
6
6
  "type": "module",