@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/CHANGELOG.md +93 -1
- package/UIFX-RECIPE-GUIDE.md +3 -2
- package/UIFXController.d.ts +13 -0
- package/UIFXController.js +33 -3
- package/UIFXRecipes.d.ts +77 -51
- package/UIFXRecipes.js +1044 -490
- package/llms.txt +14 -2
- package/package.json +1 -1
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.
|
|
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
|
|
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.
|
|
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",
|