@zakkster/lite-ui-fx 1.2.0 → 1.4.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.
package/llms.txt CHANGED
@@ -1,7 +1,7 @@
1
1
  # @zakkster/lite-ui-fx
2
2
  > Canvas-hijacked UI components with pluggable recipe system. 50 built-in recipes.
3
3
 
4
- VERSION 1.2.0
4
+ VERSION 1.4.0
5
5
 
6
6
  ## Install
7
7
  npm i @zakkster/lite-ui-fx
@@ -33,6 +33,11 @@ width, height, padding=40, label // geometry + accessible label
33
33
  value // slider start, number 0..1 (default 0.5); out-of-range or non-number throws
34
34
  checked // toggle start, boolean (default false)
35
35
  disabled // native disabled attr + state.disabled for recipes to render
36
+ seed // recipe RNG seed (finite number)
37
+ colors // string[] palette override; wins over theme (array-palette recipes: IS the palette)
38
+ theme // { light, mid, dark } -> accent/dim/surface; partial or wrong-shape throws
39
+ text // visible canvas label; falls back to label, then the recipe default (label-in-name)
40
+ font // canvas font string; falls back to the recipe's historical font
36
41
 
37
42
  ## Element Types
38
43
  UIType.TOGGLE -> <input type="checkbox" role="switch"> -> state.toggled, onToggle(checked)
@@ -79,4 +84,11 @@ See UIFX-RECIPE-GUIDE.md (included in package).
79
84
  - Ref-counted shared Ticker (one RAF for all components)
80
85
  - Safari-safe roundRect polyfill in recipes
81
86
  - Accessibility: role=switch, aria-label, keyboard focus tracking
82
- - Zero-GC in all built-in recipes (TypedArrays, seeded RNG)
87
+ - Zero-GC in all built-in recipes: const colors + globalAlpha, precomputed
88
+ color/label LUTs, fixed preallocated particle pools, gradients built in init.
89
+ Gated per recipe by the t3-frame-alloc torture tier (default AND themed mount).
90
+ - Themeable: all 50 recipes honour { colors, theme:{light,mid,dark}, text, font },
91
+ resolved once in init (zero per-frame alloc). RECIPE_META.themeable is true for
92
+ all 50; motionSafe stays false (reduced motion is a later pass). A bare mount is
93
+ byte-identical to pre-theming. Shipped palettes + APCA contrast are authored with
94
+ @zakkster/lite-hueforge (a dev-only tool, never a runtime dependency).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zakkster/lite-ui-fx",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "Canvas-hijacked UI components with a pluggable recipe system. 50 built-in recipes across toggles, buttons, sliders, knobs, loaders, checkboxes, counters, and ratings.",
5
5
  "author": "Zahary Shinikchiev <shinikchiev@yahoo.com>",
6
6
  "license": "MIT",