ui-style-kit-css 2.4.1 → 2.5.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 (41) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/README.md +35 -16
  3. package/dist/ui-style-kit.css +498 -423
  4. package/dist/ui-style-kit.min.css +2 -2
  5. package/dist/ui-style-kit.visual.css +498 -423
  6. package/dist/ui-style-kit.visual.min.css +2 -2
  7. package/dist/ui-style-kit.with-bridge.css +498 -423
  8. package/dist/ui-style-kit.with-bridge.min.css +2 -2
  9. package/dist/visual/art-deco.css +119 -55
  10. package/dist/visual/bauhaus.css +2 -2
  11. package/dist/visual/bento.css +2 -2
  12. package/dist/visual/brutalism.css +80 -1
  13. package/dist/visual/clay.css +2 -2
  14. package/dist/visual/cyberpunk.css +108 -29
  15. package/dist/visual/data-terminal.css +90 -11
  16. package/dist/visual/editorial-luxe.css +106 -27
  17. package/dist/visual/industrial-utility.css +112 -33
  18. package/dist/visual/maximalist.css +80 -1
  19. package/dist/visual/minimal-saas.css +85 -6
  20. package/dist/visual/neo-noir.css +2 -2
  21. package/dist/visual/neumorphism.css +80 -1
  22. package/dist/visual/organic-modern.css +2 -2
  23. package/dist/visual/paper-editorial.css +117 -38
  24. package/dist/visual/retro-glass.css +116 -37
  25. package/dist/visual/retrofuturism.css +80 -1
  26. package/dist/visual/tactile.css +80 -1
  27. package/dist/visual/technical-blueprint.css +120 -41
  28. package/dist/visual/y2k.css +95 -4
  29. package/docs/BRIDGE-MIGRATION.md +38 -0
  30. package/docs/ECOSYSTEM.md +7 -7
  31. package/docs/PUBLISHING.md +12 -12
  32. package/docs/RELEASE-2.4.2.md +37 -0
  33. package/docs/RELEASE-2.5.0.md +34 -0
  34. package/manifest.json +352 -159
  35. package/package.json +4 -4
  36. package/styles/art-deco.css +4 -21
  37. package/styles/bento.css +9 -4
  38. package/styles/components.css +79 -0
  39. package/styles/organic-modern.css +0 -1
  40. package/styles/retro-glass.css +1 -1
  41. package/styles/y2k.css +17 -3
package/CHANGELOG.md CHANGED
@@ -4,6 +4,52 @@ All notable changes to **UI Style Kit CSS** will be documented here.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [2.5.0] - 2026-09-26
8
+
9
+ ### Added
10
+
11
+ - Promoted 46 reusable Tier A and Tier B selectors for tabs, pagination, breadcrumb, skeleton, empty state, metric, chip, avatar, stepper, toast, popover, menu, segmented control, file upload, dropzone, and listbox patterns.
12
+ - Added semantic chip and toast variants plus explicit skeleton-shape and step-state hooks.
13
+ - Added deterministic generic-markup coverage for every promoted selector across all 20 runtime-selectable presets.
14
+
15
+ ### Changed
16
+
17
+ - Extended the generated universal component foundation so each promoted semantic selector resolves through preset-native paint tokens without moving behavioral state into CSS.
18
+ - Reclassified promoted suffixes from preset-only extras into the universal class inventory while retaining existing prefixed compatibility classes.
19
+ - Aligned the current compatibility matrix with the reviewed `interactive-surface-css@1.7.3` and `layout-style-css@3.2.3` release commits.
20
+
21
+ ### Fixed
22
+
23
+ - Recalibrated the pairwise identity snapshot metric to retain subtle palette differences and use viewport-specific component floors, replacing accumulating pair exceptions with one documented comparison contract.
24
+
25
+ ### Tests
26
+
27
+ - Added a focused promotion contract covering manifest roles, universal source suffixes, implementation status, variants, and state hooks.
28
+ - Expanded semantic alias, fixture, and declaration-artifact checks for the 75-selector stable component API.
29
+ - Verified all approved desktop and mobile component and native-control snapshot pairs against the repaired identity contract.
30
+
31
+ ## [2.4.2] - 2026-09-24
32
+
33
+ ### Changed
34
+
35
+ - Aligned the local candidate matrix with `interactive-surface-css@1.7.1` and `layout-style-css@3.2.1` while retaining the published minimum support floor.
36
+ - Expanded migration guidance for preset-prefixed hooks, preset-private tokens, and legacy `variant-*` state classes without adding a public variant API.
37
+ - Restored Organic Modern's authored select indicator, preserved Y2K's indicator through its late field material, aligned Retro Glass info icons with their semantic status color, and strengthened small Art Deco copy over layered dark cards.
38
+ - Scoped Bento's retained Soft Mosaic tokens to its sheet, and restored state-specific specificity for its invalid and read-only controls.
39
+ - Capped Art Deco's 12rem action measure at the available flex width so 200% text zoom remains contained.
40
+ - Preserved distinct Y2K invalid and read-only paint for both prefixed and unclassed native fields after its late bevel reset.
41
+
42
+ ### Tests
43
+
44
+ - Added focused Chromium coverage for semantic cards at 320px and 390px with native controls, long content, internally scrolling wide tables, and icon-only actions.
45
+ - Added a short-height fixture proving consumer-owned sticky positioning and internal scrolling survive the visual bundle.
46
+ - Added representative preset coverage proving icon-only actions retain neutral or subtle paint rather than inheriting primary action treatment.
47
+ - Added an exact-version coordinated-candidate preflight so unpublished local companion packages can be verified without weakening the registry-backed minimum matrix.
48
+ - Made WebKit's exhaustive Neumorphism pass use an engine-appropriate timeout and sampled Technical Blueprint connector geometry atomically to avoid cross-frame reflow noise.
49
+ - Refreshed the fixed visual baselines after the verified identity corrections and calibrated pairwise comparison floors against the closest valid preset pairs.
50
+ - Extended the visual state probes to include material-bearing pseudo-elements, covering Neo Noir's themed and pressed action faces.
51
+ - Verified the complete 4,500-case preset, theme, mode, and browser matrix with resumable one-case recovery for the Y2K state regression.
52
+
7
53
  ## [2.4.1] - 2026-09-20
8
54
 
9
55
  ### Added
package/README.md CHANGED
@@ -9,11 +9,11 @@ It is separate from, but complementary to, **Interactive Surface CSS** and **Lay
9
9
 
10
10
  ## Current release
11
11
 
12
- Version `v2.4.1` adds Signal Yellow, Botanical Green, Cobalt Electric, Stone Graphite, and Walnut Clay, bringing the registry to 25 shared color themes. Every added theme includes light, dark, and contrast modes, while existing palettes, selectors, and default/focused/visual/bridge entrypoints remain compatible.
12
+ Version `v2.5.0` is a backward-compatible semantic-component release. It promotes reusable tabs, pagination, breadcrumb, skeleton, empty-state, metric, chip, avatar, stepper, toast, popover, menu, segmented-control, file-upload, dropzone, and listbox patterns into the stable `.ui-*` API while preserving preset-owned paint.
13
13
 
14
- The available browser matrix now covers 20 presets × 25 themes × 3 modes × 3 engines (4,500 combinations). Signal Yellow keeps its vivid yellow fills while using readable light-mode ink across prefixed and semantic components.
14
+ The available browser matrix continues to cover 20 presets × 25 themes × 3 modes × 3 engines (4,500 combinations). The `v2.4.1` theme additions and Signal Yellow contrast corrections remain unchanged.
15
15
 
16
- The `v2.4.0` baseline introduced complete native-control identities, native light/dark/contrast palettes when `data-theme` is omitted, a palette-aware color workbench, a unified demo with style-specific components, and exactly pinned parser-based minification. See the [2.4.1 release notes](docs/RELEASE-2.4.1.md) for the current scope and verification boundaries.
16
+ The `v2.4.0` baseline introduced complete native-control identities, native light/dark/contrast palettes when `data-theme` is omitted, a palette-aware color workbench, a unified demo with style-specific components, and exactly pinned parser-based minification. See the [2.5.0 release notes](docs/RELEASE-2.5.0.md) for the release scope and verification boundaries.
17
17
 
18
18
  [Showcase website](https://foscat.github.io/ui-style-kit-css/)
19
19
 
@@ -56,11 +56,11 @@ These libraries stay standalone, but the current aligned set is:
56
56
 
57
57
  | Library | Aligned version | Owns |
58
58
  |---|---:|---|
59
- | `ui-style-kit-css@2.4.1` | current release target | visual identity, color themes, UI paint, native HTML styling, content wrapping, and bridge tokens |
60
- | `interactive-surface-css@1.7.0` | compatible state release | interaction-state primitives, surface behavior, state layers, and input affordances |
61
- | `layout-style-css@3.1.0` | compatible structural release | structural wrappers, grids, sections, app shells, and layout recipes |
59
+ | `ui-style-kit-css@2.5.0` | current release | visual identity, color themes, UI paint, native HTML styling, content wrapping, and bridge tokens |
60
+ | `interactive-surface-css@1.7.3` | compatible state release | interaction-state primitives, surface behavior, state layers, and input affordances |
61
+ | `layout-style-css@3.2.3` | compatible structural release | structural wrappers, grids, sections, app shells, and layout recipes |
62
62
 
63
- UI Style Kit `2.4.1` is the current release target and is verified with Interactive Surface `1.7.0`. Layout Style `3.1.0` is the compatible structural release. The validated minimum remains `ui-style-kit-css@2.1.0`, `interactive-surface-css@1.5.0`, and `layout-style-css@3.0.0`.
63
+ UI Style Kit `2.5.0` is the current release and is aligned with the reviewed Interactive Surface `1.7.3` and Layout Style `3.2.3` releases. The validated minimum remains `ui-style-kit-css@2.1.0`, `interactive-surface-css@1.5.0`, and `layout-style-css@3.0.0`.
64
64
 
65
65
  Use one, two, or all three depending on the project. UI Style Kit does not require the sibling libraries, and the optional bridge only maps shared `--usk-*` roles into Interactive Surface tokens when consumers import it.
66
66
 
@@ -115,7 +115,7 @@ Use the generated default bundle for semantic components that can switch across
115
115
  import "ui-style-kit-css";
116
116
  ```
117
117
 
118
- Use `ui-style-kit-css/visual.css` for the same 29-selector semantic runtime API without the deprecated prefixed layout selectors. The generated default, visual, and with-bridge bundles all support all 20 `data-ui` values.
118
+ Use `ui-style-kit-css/visual.css` for the same 75-selector semantic runtime API without the deprecated prefixed layout selectors. The generated default, visual, and with-bridge bundles all support all 20 `data-ui` values.
119
119
 
120
120
  Applications fixed to one preset can use a generated focused visual entrypoint. It includes semantic aliases scoped to that preset only:
121
121
 
@@ -169,15 +169,15 @@ When the bridge is attached, add `.interactive-surface` to interactable elements
169
169
 
170
170
  | Import | Raw | Gzip | Best for |
171
171
  |---|---:|---:|---|
172
- | `ui-style-kit-css/dist/ui-style-kit.min.css` | ~1994 KB | ~381 KB | Compatible runtime UI-system switchers and demos |
173
- | `ui-style-kit-css/visual.min.css` | ~1977 KB | ~379 KB | Runtime visual switching with consumer-owned layout |
174
- | `ui-style-kit-css/with-bridge.css` | ~2327 KB | ~402 KB | Deprecated runtime switcher plus stateful bridge |
172
+ | `ui-style-kit-css/dist/ui-style-kit.min.css` | ~2151 KB | ~394 KB | Compatible runtime UI-system switchers and demos |
173
+ | `ui-style-kit-css/visual.min.css` | ~2135 KB | ~392 KB | Runtime visual switching with consumer-owned layout |
174
+ | `ui-style-kit-css/with-bridge.css` | ~2494 KB | ~418 KB | Deprecated runtime switcher plus stateful bridge |
175
175
  | `ui-style-kit-css/theme-colors.css` | ~64 KB | ~8 KB | Shared color schemes for standalone style imports |
176
176
  | `ui-style-kit-css/native-elements.css` | ~31 KB | ~5 KB | Shared native HTML fallback styling |
177
177
  | `ui-style-kit-css/content-overflow.css` | ~20 KB | ~3 KB | Shared long-text containment for standalone style imports |
178
178
  | `ui-style-kit-css/interactive-surface-theme.css` | ~9 KB | ~1 KB | Canonical token-and-paint bridge for Interactive Surface state core |
179
- | `ui-style-kit-css/visual/minimal-saas.css` | ~219 KB | ~32 KB | Focused Minimal SaaS, including semantic aliases and shared foundations |
180
- | `ui-style-kit-css/visual/industrial-utility.css` | ~291 KB | ~41 KB | Focused Industrial Utility, including its instrumentation styles |
179
+ | `ui-style-kit-css/visual/minimal-saas.css` | ~334 KB | ~43 KB | Focused Minimal SaaS, including semantic aliases and shared foundations |
180
+ | `ui-style-kit-css/visual/industrial-utility.css` | ~409 KB | ~53 KB | Focused Industrial Utility, including its instrumentation styles |
181
181
 
182
182
  ## CDN usage
183
183
 
@@ -234,7 +234,7 @@ The demo labels this choice **None — style defaults**. Do not assign the liter
234
234
 
235
235
  ## Semantic component API
236
236
 
237
- `manifest.json#semanticComponentApi` is the authoritative specification for the implemented generic component API. Its 29 selectors keep the same class names while `data-ui` changes across all 20 presets. `implementationStatus` records the two retained `.ui-spinner` and `.ui-tooltip` hooks, the 27 generated semantic aliases, and an empty pending set.
237
+ `manifest.json#semanticComponentApi` is the authoritative specification for the implemented generic component API. Its 75 selectors keep the same class names while `data-ui` changes across all 20 presets. `implementationStatus` records the two retained `.ui-spinner` and `.ui-tooltip` hooks, the 73 generated semantic aliases, and an empty pending set.
238
238
 
239
239
  | Role | Generic selectors | Switching coverage |
240
240
  |---|---|---|
@@ -248,15 +248,34 @@ The demo labels this choice **None — style defaults**. Do not assign the liter
248
248
  | Table | `.ui-table`, `.ui-table-wrap` | all 20 presets |
249
249
  | Progress | `.ui-progress`, `.ui-progress-bar` | all 20 presets |
250
250
  | Toolbar | `.ui-toolbar` | all 20 presets |
251
+ | Tabs | `.ui-tabs`, `.ui-tab-list`, `.ui-tab`, `.ui-tab-panel` | all 20 presets |
252
+ | Pagination | `.ui-pagination`, `.ui-pagination-item`, `.ui-pagination-link` | all 20 presets |
253
+ | Breadcrumb | `.ui-breadcrumb`, `.ui-breadcrumb-list`, `.ui-breadcrumb-item`, `.ui-breadcrumb-link`, `.ui-breadcrumb-separator` | all 20 presets |
254
+ | Skeleton | `.ui-skeleton` | all 20 presets |
255
+ | Empty state | `.ui-empty-state`, `.ui-empty-state-icon`, `.ui-empty-state-title`, `.ui-empty-state-body`, `.ui-empty-state-actions` | all 20 presets |
256
+ | Metric | `.ui-metric`, `.ui-metric-label`, `.ui-metric-value`, `.ui-metric-detail` | all 20 presets |
257
+ | Chip | `.ui-chip`, `.ui-chip-group` | all 20 presets |
258
+ | Avatar | `.ui-avatar`, `.ui-avatar-group` | all 20 presets |
259
+ | Stepper | `.ui-stepper`, `.ui-step`, `.ui-step-marker`, `.ui-step-label` | all 20 presets |
260
+ | Toast | `.ui-toast-stack`, `.ui-toast`, `.ui-toast-title`, `.ui-toast-body`, `.ui-toast-actions` | all 20 presets |
261
+ | Popover | `.ui-popover` | all 20 presets |
262
+ | Menu | `.ui-menu`, `.ui-menu-item`, `.ui-menu-group`, `.ui-menu-separator` | all 20 presets |
263
+ | Segmented control | `.ui-segmented-control`, `.ui-segment` | all 20 presets |
264
+ | File upload | `.ui-file-upload`, `.ui-dropzone` | all 20 presets |
265
+ | Listbox | `.ui-listbox`, `.ui-listbox-option` | all 20 presets |
251
266
  | Existing generic hooks | `.ui-spinner`, `.ui-tooltip` | all 20 presets |
252
267
 
253
- The only new attribute is context-constrained `data-ui-variant`. Omit it for the neutral treatment.
268
+ Semantic paint variants use context-constrained `data-ui-variant`. Omit it for the neutral treatment.
254
269
 
255
270
  | Selector | `data-ui-variant` values |
256
271
  |---|---|
257
- | `.ui-button` | `primary`, `secondary`, `danger`, `ghost` |
272
+ | `.ui-button` | `primary`, `secondary`, `warning`, `danger`, `ghost` |
258
273
  | `.ui-badge` | `primary`, `secondary`, `success`, `warning`, `danger` |
259
274
  | `.ui-alert` | `success`, `warning`, `danger` |
275
+ | `.ui-chip` | `primary`, `secondary`, `success`, `warning`, `danger` |
276
+ | `.ui-toast` | `info`, `success`, `warning`, `danger` |
277
+
278
+ Skeleton shape uses `data-shape="text|circle|block"`. Step workflow presentation uses `data-state="complete|current|upcoming|error"`; React and application code remain responsible for behavior and ARIA state.
260
279
 
261
280
  ```html
262
281
  <body data-ui="minimal-saas" data-theme="arctic-indigo" data-mode="light">