@geometra/core 1.49.0 → 1.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/README.md +14 -4
  2. package/dist/a11y.d.ts.map +1 -1
  3. package/dist/a11y.js +3 -2
  4. package/dist/a11y.js.map +1 -1
  5. package/dist/animation-choreography.d.ts +88 -0
  6. package/dist/animation-choreography.d.ts.map +1 -0
  7. package/dist/animation-choreography.js +283 -0
  8. package/dist/animation-choreography.js.map +1 -0
  9. package/dist/animation.d.ts.map +1 -1
  10. package/dist/animation.js +3 -2
  11. package/dist/animation.js.map +1 -1
  12. package/dist/app.js +2 -2
  13. package/dist/app.js.map +1 -1
  14. package/dist/focus.d.ts +2 -0
  15. package/dist/focus.d.ts.map +1 -1
  16. package/dist/focus.js +5 -2
  17. package/dist/focus.js.map +1 -1
  18. package/dist/gestures.d.ts +110 -0
  19. package/dist/gestures.d.ts.map +1 -0
  20. package/dist/gestures.js +248 -0
  21. package/dist/gestures.js.map +1 -0
  22. package/dist/hit-test.d.ts +6 -5
  23. package/dist/hit-test.d.ts.map +1 -1
  24. package/dist/hit-test.js +39 -44
  25. package/dist/hit-test.js.map +1 -1
  26. package/dist/index.d.ts +15 -5
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +12 -4
  29. package/dist/index.js.map +1 -1
  30. package/dist/layout-bounds.d.ts +13 -5
  31. package/dist/layout-bounds.d.ts.map +1 -1
  32. package/dist/layout-bounds.js +17 -7
  33. package/dist/layout-bounds.js.map +1 -1
  34. package/dist/performance-now.d.ts +14 -3
  35. package/dist/performance-now.d.ts.map +1 -1
  36. package/dist/performance-now.js +18 -4
  37. package/dist/performance-now.js.map +1 -1
  38. package/dist/selection.d.ts +2 -0
  39. package/dist/selection.d.ts.map +1 -1
  40. package/dist/selection.js +5 -2
  41. package/dist/selection.js.map +1 -1
  42. package/dist/text-input.d.ts +10 -1
  43. package/dist/text-input.d.ts.map +1 -1
  44. package/dist/text-input.js +12 -1
  45. package/dist/text-input.js.map +1 -1
  46. package/dist/types.d.ts +46 -6
  47. package/dist/types.d.ts.map +1 -1
  48. package/dist/virtual-scroll.d.ts +26 -5
  49. package/dist/virtual-scroll.d.ts.map +1 -1
  50. package/dist/virtual-scroll.js +40 -9
  51. package/dist/virtual-scroll.js.map +1 -1
  52. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"text-input.js","sourceRoot":"","sources":["../src/text-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-input.js","sourceRoot":"","sources":["../src/text-input.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -16,12 +16,27 @@ export interface DirectionProps {
16
16
  /** When omitted or `auto`, inherits the parent’s resolved `ltr` / `rtl`. */
17
17
  dir?: Direction;
18
18
  }
19
+ /**
20
+ * Per-corner border radius. Any omitted corner defaults to `0`. Used when you need asymmetric rounded
21
+ * corners; for uniform rounding, pass a plain `number` to {@link StyleProps.borderRadius} instead.
22
+ */
23
+ export interface BorderRadiusCorners {
24
+ topLeft?: number;
25
+ topRight?: number;
26
+ bottomLeft?: number;
27
+ bottomRight?: number;
28
+ }
19
29
  /** Style properties for visual rendering (not layout). */
20
30
  export interface StyleProps {
21
31
  backgroundColor?: string;
22
32
  color?: string;
23
33
  borderColor?: string;
24
- borderRadius?: number;
34
+ /**
35
+ * Border radius in pixels. Accepts a single `number` for uniform rounding or a {@link BorderRadiusCorners}
36
+ * object for per-corner control. Canvas and WebGPU renderers support both shapes; terminal renderer ignores
37
+ * border radius.
38
+ */
39
+ borderRadius?: number | BorderRadiusCorners;
25
40
  borderWidth?: number;
26
41
  opacity?: number;
27
42
  /** Cursor to show when hovering this element. */
@@ -57,7 +72,14 @@ export interface StyleProps {
57
72
  blur: number;
58
73
  color: string;
59
74
  };
60
- /** Linear gradient background (overrides backgroundColor when set). */
75
+ /**
76
+ * Gradient background (overrides backgroundColor when set). Linear gradients use an angle in
77
+ * degrees (0° = top→bottom, 90° = right→left, 180° = top→bottom, CSS semantics). Radial gradients
78
+ * draw from a center point outward to a radius; `center` is normalized to the box (0..1 on each
79
+ * axis; defaults to (0.5, 0.5)) and `radius` is normalized to the box's half-diagonal
80
+ * (defaults to 1 — reaches the farthest corner). Renderers that don't support the selected
81
+ * gradient type fall back to the first stop's color.
82
+ */
61
83
  gradient?: {
62
84
  type: 'linear';
63
85
  /** Angle in degrees. Default: 180 (top to bottom). */
@@ -66,6 +88,19 @@ export interface StyleProps {
66
88
  offset: number;
67
89
  color: string;
68
90
  }>;
91
+ } | {
92
+ type: 'radial';
93
+ /** Center point in normalized box coordinates (0..1). Default: (0.5, 0.5) */
94
+ center?: {
95
+ x: number;
96
+ y: number;
97
+ };
98
+ /** Radius normalized to the box's half-diagonal. Default: 1 */
99
+ radius?: number;
100
+ stops: Array<{
101
+ offset: number;
102
+ color: string;
103
+ }>;
69
104
  };
70
105
  }
71
106
  /** Semantic properties for SEO and accessibility. */
@@ -277,8 +312,12 @@ export type Component<P = Record<string, never>> = (props: P) => UIElement;
277
312
  export interface FrameTimings {
278
313
  /**
279
314
  * Wall time for `computeLayout` (or equivalent) in milliseconds.
280
- * `createApp` passes a finite, non-negative value; renderers that implement optional `setFrameTimings`
281
- * may clamp similarly when invoked outside `createApp`.
315
+ *
316
+ * {@link import('./app.js').createApp} measures with {@link import('./performance-now.js').safePerformanceNowMs}
317
+ * and passes the delta through {@link import('./performance-now.js').clampNonNegativeLayoutWallMs}, so the value
318
+ * is always a primitive finite non-negative number (including `0` when the clock is unusable or the raw delta is
319
+ * corrupt). Custom hosts that call `setFrameTimings` without `createApp` should apply the same sanitization for
320
+ * consistent inspector and telemetry behavior.
282
321
  */
283
322
  layoutMs: number;
284
323
  }
@@ -289,8 +328,9 @@ export interface Renderer {
289
328
  /** Clean up renderer resources. */
290
329
  destroy(): void;
291
330
  /**
292
- * When present, called by `createApp` after layout and before `render`
293
- * so backends (e.g. canvas inspector) can show layout vs paint split.
331
+ * When present, called by {@link import('./app.js').createApp} immediately after `computeLayout` and before
332
+ * `render` with {@link FrameTimings} (`layoutMs` only). Lets backends (e.g. canvas inspector HUD) split Yoga/layout
333
+ * wall time from paint; see {@link FrameTimings.layoutMs} for measurement and clamping rules.
294
334
  */
295
335
  setFrameTimings?(timings: FrameTimings): void;
296
336
  }
@@ -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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"}
@@ -1,16 +1,16 @@
1
1
  /** Indices describing the visible slice of a virtual list after {@link syncVirtualWindow}. */
2
2
  export interface VirtualWindowState {
3
3
  /** First visible row index (inclusive), in `[0, totalRows - 1]` when `totalRows > 0`. */
4
- start: number;
4
+ readonly start: number;
5
5
  /** Last visible row index (inclusive); equals `start` when at most one row is visible. */
6
- end: number;
6
+ readonly end: number;
7
7
  /** Selection index after clamping to valid row range. */
8
- selected: number;
8
+ readonly selected: number;
9
9
  }
10
10
  /**
11
11
  * Inclusive last row index for a window starting at `start`. When `start + safeWindow - 1` overflows or is
12
- * otherwise non-finite, returns `maxIndex` when it is finite, else `0` (same overflow idea as
13
- * {@link import('./layout-bounds.js').pointInInclusiveLayoutRect}).
12
+ * otherwise non-finite, returns `Math.max(0, maxIndex)` when `maxIndex` is finite, else `0` (same overflow idea as
13
+ * {@link import('./layout-bounds.js').pointInInclusiveLayoutRect}; negative caps clamp like the finite-`spanEnd` branch).
14
14
  *
15
15
  * When `spanEnd` is finite but `maxIndex` is not, returns `spanEnd` so corrupt caps cannot yield `NaN` from
16
16
  * `Math.min`. {@link syncVirtualWindow} always passes a non-negative integer `maxIndex`. When both are
@@ -18,6 +18,17 @@ export interface VirtualWindowState {
18
18
  * while `spanEnd` is still positive.
19
19
  *
20
20
  * Exported for parity tests and advanced virtual-list math; {@link syncVirtualWindow} is the primary API.
21
+ *
22
+ * @param start — Window start row (inclusive). `syncVirtualWindow` passes floored non-negative indices; direct callers may pass corrupt values — NaN/±Inf on `start` or `safeWindow` are rejected by {@link isFinitePlainNumber} before `+`, yielding non-finite `spanEnd` and falling through to the `maxIndex` / `0` branches (see tests). Non-number values (including `BigInt` and boxed numbers) are treated like invalid span operands — they must not reach `+` (which throws on `bigint`/`number` mix) or `Number.isFinite(bigint)` (which throws in ECMAScript).
23
+ * @param maxIndex — Inclusive last row index in the list. Only **primitive** finite numbers are honored (same as
24
+ * {@link isFinitePlainNumber}); `NaN`, `±Infinity`, boxed numbers, and non-numbers are treated like a missing cap.
25
+ * Negative values clamp to `0` before `Math.min` with `spanEnd` so a corrupt cap cannot produce a negative end when `spanEnd` is still positive.
26
+ * @param safeWindow — Visible row count for the span (`start + safeWindow - 1`). `syncVirtualWindow` always passes `≥ 1`; smaller or negative windows can yield negative `spanEnd` (documented for direct callers).
27
+ * @returns Inclusive last visible row index, or a safe fallback when `spanEnd` or `maxIndex` is non-finite (see implementation).
28
+ *
29
+ * @example
30
+ * // Ten rows visible in a window of 3 starting at row 2 → last visible row is 4.
31
+ * inclusiveEndIndex(2, 99, 3) // => 4
21
32
  */
22
33
  export declare function inclusiveEndIndex(start: number, maxIndex: number, safeWindow: number): number;
23
34
  /**
@@ -32,8 +43,18 @@ export declare function inclusiveEndIndex(start: number, maxIndex: number, safeW
32
43
  * adjusting for selection.
33
44
  * Non-finite arguments use the same defaults as empty/reset UI state (`0` rows, window `1`, selection/start `0`).
34
45
  *
46
+ * @remarks Host or deserialized state may supply non-numbers, boxed numbers, bigint, symbols, etc. Each
47
+ * argument is sanitized through the same primitive-finite rules as
48
+ * {@link import('./layout-bounds.js').isFinitePlainNumber} (via internal helpers) so window indices never
49
+ * propagate `NaN` or `±Infinity`. See `packages/core/src/__tests__/virtual-scroll.test.ts` for corrupt-input cases.
50
+ *
35
51
  * @returns Indices with `start <= end`, selection clamped to `[0, totalRows - 1]` (or `0` when empty), and
36
52
  * `selected` always inside `[start, end]` whenever `totalRows > 0`.
53
+ *
54
+ * @example
55
+ * // 100 rows, 10 visible, selection at row 20, window was scrolled to start at 15.
56
+ * syncVirtualWindow(100, 10, 20, 15)
57
+ * // => { start: 15, end: 24, selected: 20 }
37
58
  */
38
59
  export declare function syncVirtualWindow(totalRows: number, windowSize: number, selected: number, currentStart: number): VirtualWindowState;
39
60
  //# sourceMappingURL=virtual-scroll.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-scroll.d.ts","sourceRoot":"","sources":["../src/virtual-scroll.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,MAAM,WAAW,kBAAkB;IACjC,yFAAyF;IACzF,KAAK,EAAE,MAAM,CAAA;IACb,0FAA0F;IAC1F,GAAG,EAAE,MAAM,CAAA;IACX,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAA;CACjB;AAiBD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAW7F;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,kBAAkB,CAsBpB"}
1
+ {"version":3,"file":"virtual-scroll.d.ts","sourceRoot":"","sources":["../src/virtual-scroll.ts"],"names":[],"mappings":"AAEA,8FAA8F;AAC9F,MAAM,WAAW,kBAAkB;IACjC,yFAAyF;IACzF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,yDAAyD;IACzD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAoBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAiB7F;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,kBAAkB,CAsBpB"}
@@ -1,6 +1,10 @@
1
- /** Only plain finite `number` values count (`typeof` + `Number.isFinite`, same idea as `layoutBoundsAreFinite` in `layout-bounds.js`). */
1
+ import { isFinitePlainNumber } from './layout-bounds.js';
2
+ /**
3
+ * Only primitive finite numbers count — same rule as {@link isFinitePlainNumber} / protocol patch validation
4
+ * so corrupt host props cannot slip boxed numbers or strings into window math.
5
+ */
2
6
  function finiteOr(n, fallback) {
3
- return typeof n === 'number' && Number.isFinite(n) ? n : fallback;
7
+ return isFinitePlainNumber(n) ? n : fallback;
4
8
  }
5
9
  /** Non-negative integer row index / count: finite numbers only, then floored (aligned with `windowSize` flooring). */
6
10
  function intRowMetric(n, fallback) {
@@ -8,12 +12,12 @@ function intRowMetric(n, fallback) {
8
12
  }
9
13
  /** Like `Math.max(0, n)` but maps non-finite `n` to `0` so corrupt floats cannot poison window indices. */
10
14
  function nonNegativeOrZero(n) {
11
- return Number.isFinite(n) ? Math.max(0, n) : 0;
15
+ return isFinitePlainNumber(n) ? Math.max(0, n) : 0;
12
16
  }
13
17
  /**
14
18
  * Inclusive last row index for a window starting at `start`. When `start + safeWindow - 1` overflows or is
15
- * otherwise non-finite, returns `maxIndex` when it is finite, else `0` (same overflow idea as
16
- * {@link import('./layout-bounds.js').pointInInclusiveLayoutRect}).
19
+ * otherwise non-finite, returns `Math.max(0, maxIndex)` when `maxIndex` is finite, else `0` (same overflow idea as
20
+ * {@link import('./layout-bounds.js').pointInInclusiveLayoutRect}; negative caps clamp like the finite-`spanEnd` branch).
17
21
  *
18
22
  * When `spanEnd` is finite but `maxIndex` is not, returns `spanEnd` so corrupt caps cannot yield `NaN` from
19
23
  * `Math.min`. {@link syncVirtualWindow} always passes a non-negative integer `maxIndex`. When both are
@@ -21,18 +25,35 @@ function nonNegativeOrZero(n) {
21
25
  * while `spanEnd` is still positive.
22
26
  *
23
27
  * Exported for parity tests and advanced virtual-list math; {@link syncVirtualWindow} is the primary API.
28
+ *
29
+ * @param start — Window start row (inclusive). `syncVirtualWindow` passes floored non-negative indices; direct callers may pass corrupt values — NaN/±Inf on `start` or `safeWindow` are rejected by {@link isFinitePlainNumber} before `+`, yielding non-finite `spanEnd` and falling through to the `maxIndex` / `0` branches (see tests). Non-number values (including `BigInt` and boxed numbers) are treated like invalid span operands — they must not reach `+` (which throws on `bigint`/`number` mix) or `Number.isFinite(bigint)` (which throws in ECMAScript).
30
+ * @param maxIndex — Inclusive last row index in the list. Only **primitive** finite numbers are honored (same as
31
+ * {@link isFinitePlainNumber}); `NaN`, `±Infinity`, boxed numbers, and non-numbers are treated like a missing cap.
32
+ * Negative values clamp to `0` before `Math.min` with `spanEnd` so a corrupt cap cannot produce a negative end when `spanEnd` is still positive.
33
+ * @param safeWindow — Visible row count for the span (`start + safeWindow - 1`). `syncVirtualWindow` always passes `≥ 1`; smaller or negative windows can yield negative `spanEnd` (documented for direct callers).
34
+ * @returns Inclusive last visible row index, or a safe fallback when `spanEnd` or `maxIndex` is non-finite (see implementation).
35
+ *
36
+ * @example
37
+ * // Ten rows visible in a window of 3 starting at row 2 → last visible row is 4.
38
+ * inclusiveEndIndex(2, 99, 3) // => 4
24
39
  */
25
40
  export function inclusiveEndIndex(start, maxIndex, safeWindow) {
26
- const spanEnd = start + safeWindow - 1;
41
+ const spanEnd = isFinitePlainNumber(start) && isFinitePlainNumber(safeWindow) ? start + safeWindow - 1 : Number.NaN;
42
+ // Match start/safeWindow: only primitive finite numbers (NaN/±Infinity/boxed values → NaN cap).
43
+ const maxIdx = isFinitePlainNumber(maxIndex) ? maxIndex : Number.NaN;
27
44
  if (!Number.isFinite(spanEnd)) {
28
- return Number.isFinite(maxIndex) ? maxIndex : 0;
45
+ // Match the finite-span branch: clamp corrupt negative caps so callers never get a negative end when
46
+ // span math overflowed (syncVirtualWindow always supplies non-negative maxIndex; direct callers may not).
47
+ if (!Number.isFinite(maxIdx))
48
+ return 0;
49
+ return Math.max(0, maxIdx);
29
50
  }
30
- if (!Number.isFinite(maxIndex)) {
51
+ if (!Number.isFinite(maxIdx)) {
31
52
  return spanEnd;
32
53
  }
33
54
  // maxIndex is always non-negative from syncVirtualWindow; clamp so direct callers with corrupt
34
55
  // negative caps cannot produce a negative end when spanEnd is still positive.
35
- return Math.min(Math.max(0, maxIndex), spanEnd);
56
+ return Math.min(Math.max(0, maxIdx), spanEnd);
36
57
  }
37
58
  /**
38
59
  * Keep the selected row index visible inside a fixed-size virtual window.
@@ -46,8 +67,18 @@ export function inclusiveEndIndex(start, maxIndex, safeWindow) {
46
67
  * adjusting for selection.
47
68
  * Non-finite arguments use the same defaults as empty/reset UI state (`0` rows, window `1`, selection/start `0`).
48
69
  *
70
+ * @remarks Host or deserialized state may supply non-numbers, boxed numbers, bigint, symbols, etc. Each
71
+ * argument is sanitized through the same primitive-finite rules as
72
+ * {@link import('./layout-bounds.js').isFinitePlainNumber} (via internal helpers) so window indices never
73
+ * propagate `NaN` or `±Infinity`. See `packages/core/src/__tests__/virtual-scroll.test.ts` for corrupt-input cases.
74
+ *
49
75
  * @returns Indices with `start <= end`, selection clamped to `[0, totalRows - 1]` (or `0` when empty), and
50
76
  * `selected` always inside `[start, end]` whenever `totalRows > 0`.
77
+ *
78
+ * @example
79
+ * // 100 rows, 10 visible, selection at row 20, window was scrolled to start at 15.
80
+ * syncVirtualWindow(100, 10, 20, 15)
81
+ * // => { start: 15, end: 24, selected: 20 }
51
82
  */
52
83
  export function syncVirtualWindow(totalRows, windowSize, selected, currentStart) {
53
84
  const safeTotal = intRowMetric(totalRows, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-scroll.js","sourceRoot":"","sources":["../src/virtual-scroll.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtual-scroll.js","sourceRoot":"","sources":["../src/virtual-scroll.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.49.0",
3
+ "version": "1.53.0",
4
4
  "description": "DOM-free UI framework core: components, signals, reconciler",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -39,7 +39,7 @@
39
39
  "check": "tsc --noEmit"
40
40
  },
41
41
  "dependencies": {
42
- "textura": "^1.49.0"
42
+ "textura": "^1.53.0"
43
43
  },
44
44
  "optionalDependencies": {
45
45
  "@napi-rs/canvas": "^0.1.65"