ui-style-kit-css 2.0.3 → 2.1.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 (43) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +81 -15
  3. package/STYLE-MAP.md +9 -1
  4. package/dist/ui-style-kit.css +10563 -4496
  5. package/dist/ui-style-kit.min.css +7 -1
  6. package/dist/ui-style-kit.visual.css +11125 -0
  7. package/dist/ui-style-kit.visual.min.css +7 -0
  8. package/dist/ui-style-kit.with-bridge.css +10567 -4499
  9. package/dist/ui-style-kit.with-bridge.min.css +7 -1
  10. package/dist/visual/bauhaus.css +2948 -0
  11. package/dist/visual/bento.css +2967 -0
  12. package/dist/visual/brutalism.css +2731 -0
  13. package/dist/visual/cyberpunk.css +2757 -0
  14. package/dist/visual/maximalist.css +2955 -0
  15. package/dist/visual/minimal-saas.css +2946 -0
  16. package/dist/visual/neumorphism.css +2952 -0
  17. package/dist/visual/retro-glass.css +2768 -0
  18. package/dist/visual/retrofuturism.css +2939 -0
  19. package/dist/visual/tactile.css +2933 -0
  20. package/dist/visual/y2k.css +2729 -0
  21. package/docs/ECOSYSTEM.md +59 -0
  22. package/docs/NATIVE-ELEMENTS.md +52 -0
  23. package/docs/PUBLISHING.md +19 -4
  24. package/docs/TOKENS.md +13 -0
  25. package/manifest.json +436 -0
  26. package/package.json +33 -4
  27. package/styles/bauhaus.css +1 -0
  28. package/styles/bento.css +1 -0
  29. package/styles/brutalism.css +6 -5
  30. package/styles/compat-layout.css +88 -0
  31. package/styles/components.css +671 -0
  32. package/styles/content-overflow.css +292 -0
  33. package/styles/cyberpunk.css +3 -2
  34. package/styles/interactive-surface-bridge.css +5 -3
  35. package/styles/interactive-surface-theme.css +114 -0
  36. package/styles/maximalist.css +2 -1
  37. package/styles/minimal-saas.css +1 -0
  38. package/styles/native-elements.css +213 -10
  39. package/styles/neumorphism.css +1 -0
  40. package/styles/retro-glass.css +3 -2
  41. package/styles/retrofuturism.css +1 -0
  42. package/styles/tactile.css +1 -0
  43. package/styles/y2k.css +3 -2
@@ -0,0 +1,59 @@
1
+ # Ecosystem Compatibility
2
+
3
+ UI Style Kit CSS is the visual layer in the three-library CSS ecosystem. It can run alone, but it also has stable integration points for Interactive Surface CSS and Layout Style CSS.
4
+
5
+ ## Aligned Versions
6
+
7
+ | Library | Current aligned version | Owns |
8
+ |---|---:|---|
9
+ | `ui-style-kit-css@2.1.0` | staged source target | visual identity, color themes, UI paint, native HTML styling, content wrapping, and bridge tokens |
10
+ | `interactive-surface-css@1.5.0` | published release | interaction-state primitives, surface behavior, state layers, and input affordances |
11
+ | `layout-style-css@2.1.0` | staged source target | structural wrappers, grids, sections, app shells, and layout recipes |
12
+
13
+ UI Style Kit `2.1.0` and Layout Style `2.1.0` remain staged source targets until approved release steps complete. Interactive Surface `1.5.0` is the released companion state engine for this upgrade path.
14
+
15
+ ## Adoption Paths
16
+
17
+ ### Use one
18
+
19
+ Use UI Style Kit by itself when an app needs visual identity, theme roles, native element styling, and long-text containment without layout primitives or richer interaction-state behavior.
20
+
21
+ ```js
22
+ import "ui-style-kit-css/minimal-saas.css";
23
+ ```
24
+
25
+ ### Use two
26
+
27
+ Pair UI Style Kit with Interactive Surface CSS when controls need the sibling interaction-state primitives. Import UI paint first, its public token bridge second, and the sibling state core third.
28
+
29
+ ```js
30
+ import "ui-style-kit-css/visual/minimal-saas.css";
31
+ import "ui-style-kit-css/interactive-surface-theme.css";
32
+ import "interactive-surface-css/state-core.css";
33
+ ```
34
+
35
+ Pair UI Style Kit with Layout Style CSS when the app already has interaction behavior but needs structural wrappers, grids, and sections.
36
+
37
+ ```js
38
+ import "ui-style-kit-css/visual/minimal-saas.css";
39
+ import "layout-style-css";
40
+ ```
41
+
42
+ ### Use all three
43
+
44
+ Use all three libraries when a project needs structural layout, visual styling, and interaction-state behavior in separate layers.
45
+
46
+ ```js
47
+ import "ui-style-kit-css/visual.css";
48
+ import "ui-style-kit-css/interactive-surface-theme.css";
49
+ import "interactive-surface-css/state-core.css";
50
+ import "layout-style-css";
51
+ ```
52
+
53
+ ## Ownership Boundaries
54
+
55
+ - UI Style Kit CSS owns visual identity, color themes, UI paint, scoped native element styling, content wrapping, and the bridge token mapping.
56
+ - Interactive Surface CSS owns interaction-state semantics, input affordances, state layers, and surface behavior.
57
+ - Layout Style CSS owns structural wrappers, layout recipes, grids, app shells, and section composition.
58
+
59
+ The canonical theme bridge does not make Interactive Surface a dependency of UI Style Kit. It only maps shared `--usk-*` roles to `--interactive-surface-*` tokens and provides paint; `state-core.css` continues to own interaction mechanics. The older `interactive-surface-bridge` and `with-bridge` exports are deprecated compatibility paths whose stateful behavior remains unchanged.
@@ -0,0 +1,52 @@
1
+ # Native Element Coverage
2
+
3
+ UI Style Kit uses a hybrid-native policy: it themes safe element boxes and exposed subparts, uses `accent-color` and `color-scheme` as fallbacks, and leaves inaccessible browser popups to the platform.
4
+
5
+ ## Classification
6
+
7
+ | Classification | Elements and surfaces |
8
+ |---|---|
9
+ | Fully themed | `html`, `body`, `main`, `section`, `header`, `footer`, `nav`, `article`, `aside`, `address`, `form`, `fieldset`, `legend`, `label`, `input`, `textarea`, `select`, `button`, `table`, `caption`, `thead`, `tbody`, `tfoot`, `tr`, `th`, `td`, `details`, `summary`, `dialog`, `progress`, `meter`, `menu`, `search`, headings `h1`-`h6`, `hgroup`, paragraphs, lists, definition lists, blockquotes, `code`, `kbd`, `samp`, `pre`, `mark`, `abbr`, `strong`, `b`, `em`, `i`, `cite`, `var`, `q`, `ins`, `del`, `s`, `u`, `sub`, `sup`, `output`, `time`, `data`, `dfn`, `ruby`, `rt`, `rp`, `bdi`, and `bdo` |
10
+ | Progressively enhanced | `img`, `picture`, `video`, `audio`, `canvas`, `svg`, `math`, `iframe`, `object`, `embed`, `map`, `area`, `col`, `colgroup`, `optgroup`, `option`, `slot`, `selectedcontent`, `br`, and `wbr` |
11
+ | Platform-owned | `select` popup, `datalist popup`, color picker dialog, date/time picker dialogs, native media controls, autofill menus, spellcheck menus, and operating-system file pickers |
12
+ | Non-rendered | `base`, `datalist`, `head`, `link`, `meta`, `noscript`, `script`, `source`, `style`, `template`, `title`, and `track` |
13
+
14
+ `selectedcontent` is classified as progressive enhancement because support is still emerging. `datalist` remains non-rendered; the input box is themed, but the datalist popup is platform-owned.
15
+
16
+ ## Exposed Subparts
17
+
18
+ The native layer styles safely exposed parts where engines allow it:
19
+
20
+ - placeholder text
21
+ - file selector buttons, including hover, focus, active, and disabled states
22
+ - range tracks and thumbs
23
+ - color swatches
24
+ - progress and meter tracks and values
25
+ - calendar picker indicators
26
+ - search cancellation controls
27
+ - number spinners
28
+ - select picker indicators where supported
29
+ - summary and list markers
30
+ - supported scrollbars
31
+
32
+ ## Native Tokens
33
+
34
+ Preset files map existing `--usk-native-*` roles through their active visual system. The shared native layer also defines these sizing and paint tokens:
35
+
36
+ ```css
37
+ --usk-native-control-min-block-size
38
+ --usk-native-control-padding-block
39
+ --usk-native-control-padding-inline
40
+ --usk-native-subcontrol-padding-block
41
+ --usk-native-subcontrol-padding-inline
42
+ --usk-native-border-width
43
+ --usk-native-field-gap
44
+ --usk-native-panel-padding
45
+ --usk-native-track
46
+ --usk-native-track-fill
47
+ --usk-native-thumb
48
+ --usk-native-thumb-border
49
+ --usk-native-indicator
50
+ ```
51
+
52
+ Invalid paint activates only through `[aria-invalid="true"]`, `.is-invalid`, or `:user-invalid`. Required empty controls do not get danger paint before user interaction.
@@ -3,21 +3,36 @@
3
3
  ## Dry run
4
4
 
5
5
  ```bash
6
- npm run check
7
- npm run pack:dry-run
6
+ npm run release:verify
8
7
  ```
9
8
 
10
- `npm run check` rebuilds dist CSS, runs stylelint, executes package, class API, shared theme-color, and vendor-prefix unit checks, validates core text/link contrast pairs and filled component `on-*` contrast pairs, and confirms package metadata. `npm run pack:dry-run` shows the exact files that would publish.
9
+ `npm run release:verify` is the non-publishing release gate. It runs `npm run check`, `npm run test:e2e`, `npm run test:axe`, `npm run test:visual`, `npm run test:matrix`, `npm run check:ecosystem:packs`, `npm audit --audit-level=moderate`, and `npm run pack:dry-run`.
10
+
11
+ `npm run check` rebuilds dist CSS, runs stylelint, executes package, class API, shared theme-color, and vendor-prefix unit checks, validates core text/link contrast pairs and filled component `on-*` contrast pairs, and confirms package metadata. Browser gates cover regular demo flows, representative Axe scans, curated visual smoke checks, and the sharded 990-combination matrix. `npm run check:ecosystem:packs` verifies standalone, pairwise, and all-three packed package compatibility for the canonical visual/theme/state/layout imports and the deprecated bridge imports. `npm run pack:dry-run` shows the exact files that would publish.
12
+
13
+ By default, `npm run check:ecosystem:packs` packs this repository, packs the sibling `../Layout-Style-CSS` checkout, and packs the published `interactive-surface-css@1.5.0` artifact. Use `-- --layout-repo <path>` or `-- --interactive-spec <specifier>` when validating a different local Layout Style checkout or a different Interactive Surface package source.
14
+
15
+ `npm run build` uses exactly pinned CSS Tree parsing and Lightning CSS formatting/minification. Generated minified bundles retain the release banner while preserving grammar-sensitive selector and `calc()` whitespace.
11
16
 
12
17
  The npm artifact is library-focused: `dist/`, `styles/`, docs, and metadata. Demo pages, favicon source assets, and social preview images remain checked in for GitHub Pages but are excluded from the tarball to keep package installs small.
13
18
 
14
19
  ## Publish
15
20
 
21
+ No package, tag, or registry release occurs without explicit approval.
22
+
23
+ For this ecosystem upgrade, use the approval-gated rollout order below:
24
+
25
+ 1. Release `ui-style-kit-css@2.0.4` as the correctness hotfix from the merged hotfix content on `origin/main`. The 2.0.4 hotfix release line must pass `npm run release:verify` before any tag or publish step.
26
+ 2. Confirm the already published `interactive-surface-css@1.5.0` companion state engine remains available from npm.
27
+ 3. Release `ui-style-kit-css@2.1.0` after the hotfix is live.
28
+ 4. Release `layout-style-css@2.1.0` after UI Style Kit 2.1 is live and Layout replaces its temporary GitHub UI fixture with the registry package.
29
+ 5. Run the final all-three packed compatibility suite against the published packages.
30
+
16
31
  ```bash
17
32
  npm publish
18
33
  ```
19
34
 
20
- For GitHub releases, create or dispatch a release for the matching package tag, such as `v2.0.3`. The release workflows verify that `package.json`, `package-lock.json`, `CHANGELOG.md`, and generated dist banners are aligned before publishing.
35
+ `prepublishOnly` runs `npm run release:verify`, so a direct `npm publish` still has the full release gate. For GitHub releases, create or dispatch a release for the matching package tag, such as `v2.1.0`. The release workflows verify that `package.json`, `package-lock.json`, `CHANGELOG.md`, and generated dist banners are aligned before publishing.
21
36
 
22
37
  ## Versioning
23
38
 
package/docs/TOKENS.md CHANGED
@@ -142,6 +142,19 @@ Native HTML coverage is shared in `styles/native-elements.css` to avoid repeatin
142
142
  --usk-native-radius-sm
143
143
  --usk-native-radius
144
144
  --usk-native-radius-lg
145
+ --usk-native-border-width
146
+ --usk-native-field-gap
147
+ --usk-native-panel-padding
148
+ --usk-native-control-min-block-size
149
+ --usk-native-control-padding-block
150
+ --usk-native-control-padding-inline
151
+ --usk-native-subcontrol-padding-block
152
+ --usk-native-subcontrol-padding-inline
153
+ --usk-native-track
154
+ --usk-native-track-fill
155
+ --usk-native-thumb
156
+ --usk-native-thumb-border
157
+ --usk-native-indicator
145
158
  --usk-native-shadow
146
159
  --usk-native-shadow-md
147
160
  --usk-native-focus-ring
package/manifest.json ADDED
@@ -0,0 +1,436 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "name": "ui-style-kit-css",
4
+ "version": "2.1.0",
5
+ "cascadeLayers": [
6
+ "ui-style-kit.theme_colors",
7
+ "ui-style-kit.native_elements",
8
+ "ui-style-kit.components",
9
+ "ui-style-kit.presets",
10
+ "ui-style-kit.compat_layout"
11
+ ],
12
+ "presets": [
13
+ {
14
+ "id": "minimal-saas",
15
+ "label": "Minimal SaaS",
16
+ "prefix": "saas",
17
+ "entrypoints": {
18
+ "default": "./minimal-saas.css",
19
+ "visual": "./visual/minimal-saas.css"
20
+ }
21
+ },
22
+ {
23
+ "id": "bento",
24
+ "label": "Bento UI",
25
+ "prefix": "bento",
26
+ "entrypoints": {
27
+ "default": "./bento.css",
28
+ "visual": "./visual/bento.css"
29
+ }
30
+ },
31
+ {
32
+ "id": "maximalist",
33
+ "label": "Maximalist / Playful",
34
+ "prefix": "max",
35
+ "entrypoints": {
36
+ "default": "./maximalist.css",
37
+ "visual": "./visual/maximalist.css"
38
+ }
39
+ },
40
+ {
41
+ "id": "bauhaus",
42
+ "label": "Bauhaus / Swiss Modern",
43
+ "prefix": "bau",
44
+ "entrypoints": {
45
+ "default": "./bauhaus.css",
46
+ "visual": "./visual/bauhaus.css"
47
+ }
48
+ },
49
+ {
50
+ "id": "tactile",
51
+ "label": "Skeuomorphic / Tactile",
52
+ "prefix": "tactile",
53
+ "entrypoints": {
54
+ "default": "./tactile.css",
55
+ "visual": "./visual/tactile.css"
56
+ }
57
+ },
58
+ {
59
+ "id": "neumorphism",
60
+ "label": "Neumorphism",
61
+ "prefix": "neo",
62
+ "entrypoints": {
63
+ "default": "./neumorphism.css",
64
+ "visual": "./visual/neumorphism.css"
65
+ }
66
+ },
67
+ {
68
+ "id": "retrofuturism",
69
+ "label": "Retrofuturism",
70
+ "prefix": "retro",
71
+ "entrypoints": {
72
+ "default": "./retrofuturism.css",
73
+ "visual": "./visual/retrofuturism.css"
74
+ }
75
+ },
76
+ {
77
+ "id": "brutalism",
78
+ "label": "Brutalism",
79
+ "prefix": "brutal",
80
+ "entrypoints": {
81
+ "default": "./brutalism.css",
82
+ "visual": "./visual/brutalism.css"
83
+ }
84
+ },
85
+ {
86
+ "id": "cyberpunk",
87
+ "label": "Cyberpunk",
88
+ "prefix": "cyber",
89
+ "entrypoints": {
90
+ "default": "./cyberpunk.css",
91
+ "visual": "./visual/cyberpunk.css"
92
+ }
93
+ },
94
+ {
95
+ "id": "y2k",
96
+ "label": "Y2K",
97
+ "prefix": "y2k",
98
+ "entrypoints": {
99
+ "default": "./y2k.css",
100
+ "visual": "./visual/y2k.css"
101
+ }
102
+ },
103
+ {
104
+ "id": "retro-glass",
105
+ "label": "Retro Glass",
106
+ "prefix": "rg",
107
+ "entrypoints": {
108
+ "default": "./retro-glass.css",
109
+ "visual": "./visual/retro-glass.css"
110
+ }
111
+ }
112
+ ],
113
+ "themes": [
114
+ "midnight-gold",
115
+ "ocean-steel",
116
+ "forest-moss",
117
+ "sunset-ember",
118
+ "royal-plum",
119
+ "graphite-cyan",
120
+ "desert-sage",
121
+ "rose-quartz",
122
+ "cyber-lime",
123
+ "arctic-indigo"
124
+ ],
125
+ "modes": [
126
+ "light",
127
+ "dark",
128
+ "contrast"
129
+ ],
130
+ "nativeElements": {
131
+ "fullyThemed": [
132
+ "a",
133
+ "abbr",
134
+ "address",
135
+ "article",
136
+ "aside",
137
+ "b",
138
+ "bdi",
139
+ "bdo",
140
+ "blockquote",
141
+ "body",
142
+ "button",
143
+ "caption",
144
+ "cite",
145
+ "code",
146
+ "data",
147
+ "dd",
148
+ "del",
149
+ "details",
150
+ "dfn",
151
+ "dialog",
152
+ "div",
153
+ "dl",
154
+ "dt",
155
+ "em",
156
+ "fieldset",
157
+ "figcaption",
158
+ "figure",
159
+ "footer",
160
+ "form",
161
+ "h1",
162
+ "h2",
163
+ "h3",
164
+ "h4",
165
+ "h5",
166
+ "h6",
167
+ "header",
168
+ "hgroup",
169
+ "hr",
170
+ "html",
171
+ "i",
172
+ "input",
173
+ "ins",
174
+ "kbd",
175
+ "label",
176
+ "legend",
177
+ "li",
178
+ "main",
179
+ "mark",
180
+ "menu",
181
+ "meter",
182
+ "nav",
183
+ "ol",
184
+ "output",
185
+ "p",
186
+ "pre",
187
+ "progress",
188
+ "q",
189
+ "rp",
190
+ "rt",
191
+ "ruby",
192
+ "s",
193
+ "samp",
194
+ "search",
195
+ "section",
196
+ "select",
197
+ "small",
198
+ "span",
199
+ "strong",
200
+ "sub",
201
+ "summary",
202
+ "sup",
203
+ "table",
204
+ "tbody",
205
+ "td",
206
+ "textarea",
207
+ "tfoot",
208
+ "th",
209
+ "thead",
210
+ "time",
211
+ "tr",
212
+ "u",
213
+ "ul",
214
+ "var"
215
+ ],
216
+ "progressivelyEnhanced": [
217
+ "area",
218
+ "audio",
219
+ "br",
220
+ "canvas",
221
+ "col",
222
+ "colgroup",
223
+ "embed",
224
+ "iframe",
225
+ "img",
226
+ "map",
227
+ "math",
228
+ "object",
229
+ "optgroup",
230
+ "option",
231
+ "picture",
232
+ "selectedcontent",
233
+ "slot",
234
+ "svg",
235
+ "video",
236
+ "wbr"
237
+ ],
238
+ "platformOwned": [
239
+ "audio-controls",
240
+ "color-picker-dialog",
241
+ "datalist-popup",
242
+ "date-time-picker-dialog",
243
+ "select-popup",
244
+ "video-controls"
245
+ ],
246
+ "nonRendered": [
247
+ "base",
248
+ "datalist",
249
+ "head",
250
+ "link",
251
+ "meta",
252
+ "noscript",
253
+ "script",
254
+ "source",
255
+ "style",
256
+ "template",
257
+ "title",
258
+ "track"
259
+ ]
260
+ },
261
+ "classApi": {
262
+ "universalVisualSuffixes": [
263
+ "alert",
264
+ "alert-body",
265
+ "alert-danger",
266
+ "alert-success",
267
+ "alert-title",
268
+ "alert-warning",
269
+ "badge",
270
+ "badge-danger",
271
+ "badge-primary",
272
+ "badge-secondary",
273
+ "badge-success",
274
+ "badge-warning",
275
+ "bg-primary",
276
+ "bg-secondary",
277
+ "border",
278
+ "button",
279
+ "button-danger",
280
+ "button-ghost",
281
+ "button-pill",
282
+ "button-primary",
283
+ "button-secondary",
284
+ "card",
285
+ "check",
286
+ "check-control",
287
+ "copy",
288
+ "disabled",
289
+ "divider",
290
+ "field",
291
+ "heading",
292
+ "help-text",
293
+ "hover-lift",
294
+ "icon-button",
295
+ "input",
296
+ "inset",
297
+ "kicker",
298
+ "label",
299
+ "loading-spinner",
300
+ "nav",
301
+ "nav-link",
302
+ "panel",
303
+ "pill",
304
+ "progress",
305
+ "progress-bar",
306
+ "radio",
307
+ "radio-control",
308
+ "rounded",
309
+ "rounded-lg",
310
+ "rounded-xl",
311
+ "select",
312
+ "skip-link",
313
+ "spinner",
314
+ "spinner-lg",
315
+ "spinner-sm",
316
+ "sr-only",
317
+ "subtitle",
318
+ "surface",
319
+ "surface-lg",
320
+ "surface-sm",
321
+ "switch",
322
+ "switch-thumb",
323
+ "switch-track",
324
+ "table",
325
+ "table-wrap",
326
+ "text-accent",
327
+ "text-danger",
328
+ "text-muted",
329
+ "text-primary",
330
+ "text-secondary",
331
+ "text-success",
332
+ "text-warning",
333
+ "textarea",
334
+ "title",
335
+ "toolbar",
336
+ "tooltip",
337
+ "tooltip-arrow",
338
+ "tooltip-bottom",
339
+ "tooltip-left",
340
+ "tooltip-right",
341
+ "tooltip-top",
342
+ "visually-hidden",
343
+ "well"
344
+ ],
345
+ "presetExtras": {
346
+ "minimal-saas": [
347
+ "empty-state",
348
+ "metric",
349
+ "metric-label",
350
+ "metric-value"
351
+ ],
352
+ "bento": [
353
+ "grid-feature",
354
+ "stat",
355
+ "stat-label",
356
+ "stat-value",
357
+ "tile",
358
+ "tile-lg",
359
+ "tile-md",
360
+ "tile-sm"
361
+ ],
362
+ "maximalist": [
363
+ "callout",
364
+ "sticker",
365
+ "wiggle"
366
+ ],
367
+ "bauhaus": [
368
+ "block",
369
+ "composition",
370
+ "rail"
371
+ ],
372
+ "tactile": [
373
+ "bevel",
374
+ "knob",
375
+ "pressed"
376
+ ],
377
+ "neumorphism": [],
378
+ "retrofuturism": [],
379
+ "brutalism": [
380
+ "pressed"
381
+ ],
382
+ "cyberpunk": [
383
+ "console"
384
+ ],
385
+ "y2k": [
386
+ "bubble"
387
+ ],
388
+ "retro-glass": [
389
+ "console"
390
+ ]
391
+ },
392
+ "deprecatedStructuralSuffixes": [
393
+ "page",
394
+ "container",
395
+ "section",
396
+ "grid",
397
+ "stack",
398
+ "cluster",
399
+ "split"
400
+ ]
401
+ },
402
+ "nativeParts": {
403
+ "standard": [
404
+ "accent-color",
405
+ "color-scheme",
406
+ "dialog-backdrop",
407
+ "file-selector-button",
408
+ "list-marker",
409
+ "placeholder",
410
+ "selection",
411
+ "summary-marker"
412
+ ],
413
+ "vendorSpecific": [
414
+ "calendar-picker-indicator",
415
+ "color-swatch",
416
+ "number-spinner",
417
+ "progress-track",
418
+ "progress-value",
419
+ "range-thumb",
420
+ "range-track",
421
+ "scrollbar",
422
+ "search-cancel-button",
423
+ "select-indicator"
424
+ ],
425
+ "platformOwned": [
426
+ "color-picker-dialog",
427
+ "datalist-popup",
428
+ "date-time-picker-dialog",
429
+ "select-option-rendering",
430
+ "select-popup"
431
+ ],
432
+ "nonRendered": [
433
+ "datalist"
434
+ ]
435
+ }
436
+ }