@helixui/library 3.2.0-next.76 → 3.2.0-next.81

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/custom-elements.json +390 -375
  2. package/dist/components/hx-button/hx-button.d.ts.map +1 -1
  3. package/dist/components/hx-button/hx-button.styles.d.ts.map +1 -1
  4. package/dist/components/hx-button/index.js +1 -1
  5. package/dist/components/hx-side-nav/hx-nav-item.d.ts +7 -5
  6. package/dist/components/hx-side-nav/hx-nav-item.d.ts.map +1 -1
  7. package/dist/components/hx-side-nav/hx-nav-item.styles.d.ts.map +1 -1
  8. package/dist/components/hx-side-nav/hx-side-nav.d.ts +5 -4
  9. package/dist/components/hx-side-nav/hx-side-nav.d.ts.map +1 -1
  10. package/dist/components/hx-side-nav/hx-side-nav.styles.d.ts.map +1 -1
  11. package/dist/components/hx-side-nav/index.js +1 -1
  12. package/dist/components/hx-text-input/hx-text-input.d.ts +5 -5
  13. package/dist/components/hx-text-input/hx-text-input.d.ts.map +1 -1
  14. package/dist/components/hx-text-input/index.js +1 -1
  15. package/dist/components/hx-toast/hx-toast.styles.d.ts.map +1 -1
  16. package/dist/components/hx-toast/index.js +1 -1
  17. package/dist/css/helix-all.css +95 -65
  18. package/dist/css/helix-core.css +56 -36
  19. package/dist/css/helix-feedback.css +18 -13
  20. package/dist/css/helix-forms.css +4 -4
  21. package/dist/css/helix-navigation.css +17 -12
  22. package/dist/css/helix-tokens.css +43 -0
  23. package/dist/css/hx-button.css +56 -36
  24. package/dist/css/hx-side-nav.css +17 -12
  25. package/dist/css/hx-text-input.css +4 -4
  26. package/dist/css/hx-toast.css +18 -13
  27. package/dist/css/index.css +1 -1
  28. package/dist/css/manifest.json +27 -16
  29. package/dist/index.js +4 -4
  30. package/dist/shared/{hx-button-modUSOpY.js → hx-button-kWxjKqo-.js} +79 -60
  31. package/dist/shared/hx-button-kWxjKqo-.js.map +1 -0
  32. package/dist/shared/{hx-nav-item-D8xHLVOs.js → hx-nav-item-CMyMv5Gv.js} +129 -88
  33. package/dist/shared/hx-nav-item-CMyMv5Gv.js.map +1 -0
  34. package/dist/shared/{hx-text-input-B-caO5fI.js → hx-text-input-ClrrmoE1.js} +20 -21
  35. package/dist/shared/hx-text-input-ClrrmoE1.js.map +1 -0
  36. package/dist/shared/{toast-factory-DvDRAh0l.js → toast-factory-CIiZDZGZ.js} +59 -54
  37. package/dist/shared/toast-factory-CIiZDZGZ.js.map +1 -0
  38. package/figma-inventory.json +80 -44
  39. package/package.json +2 -2
  40. package/dist/shared/hx-button-modUSOpY.js.map +0 -1
  41. package/dist/shared/hx-nav-item-D8xHLVOs.js.map +0 -1
  42. package/dist/shared/hx-text-input-B-caO5fI.js.map +0 -1
  43. package/dist/shared/toast-factory-DvDRAh0l.js.map +0 -1
@@ -4,583 +4,583 @@
4
4
  "modules": [
5
5
  {
6
6
  "kind": "javascript-module",
7
- "path": "src/components/hx-action-bar/hx-action-bar.ts",
7
+ "path": "src/components/hx-accordion/hx-accordion-item.ts",
8
8
  "declarations": [
9
9
  {
10
10
  "kind": "class",
11
- "description": "A horizontal toolbar container for grouping related action buttons and controls.\nImplements the ARIA toolbar pattern with roving tabindex keyboard navigation.",
12
- "name": "HelixActionBar",
11
+ "description": "An individual accordion item with collapsible content.",
12
+ "name": "HelixAccordionItem",
13
13
  "cssProperties": [
14
14
  {
15
- "description": "Bar background color (default variant).",
16
- "name": "--hx-action-bar-bg",
17
- "default": "transparent"
18
- },
19
- {
20
- "description": "Bar border (default variant).",
21
- "name": "--hx-action-bar-border",
22
- "default": "none"
23
- },
24
- {
25
- "description": "Inner padding.",
26
- "name": "--hx-action-bar-padding",
27
- "default": "var(--hx-space-2,0.5rem) var(--hx-space-3,0.75rem)"
28
- },
29
- {
30
- "description": "Gap between slotted items.",
31
- "name": "--hx-action-bar-gap",
32
- "default": "var(--hx-space-2,0.5rem)"
33
- },
34
- {
35
- "description": "Z-index when sticky or bottom position.",
36
- "name": "--hx-action-bar-z-index",
37
- "default": "10"
38
- },
39
- {
40
- "description": "Padding.",
41
- "name": "--hx-action-bar-padding-block-start",
42
- "default": "0px"
43
- },
44
- {
45
- "description": "Padding.",
46
- "name": "--hx-action-bar-padding-block-end",
47
- "default": "0px"
48
- },
49
- {
50
- "description": "CSS custom property.",
51
- "name": "--hx-border-radius-md"
52
- },
53
- {
54
- "description": "Width.",
55
- "name": "--hx-border-width-thin"
56
- },
57
- {
58
- "description": "Color.",
59
- "name": "--hx-color-neutral-0"
60
- },
61
- {
62
- "description": "Color.",
63
- "name": "--hx-color-neutral-200"
64
- },
65
- {
66
- "description": "Color.",
67
- "name": "--hx-color-neutral-50"
15
+ "description": "Border color between items.",
16
+ "name": "--hx-accordion-border-color",
17
+ "default": "var(--hx-color-neutral-200)"
68
18
  },
69
19
  {
70
- "description": "Size token.",
71
- "name": "--hx-size-8"
20
+ "description": "Trigger padding.",
21
+ "name": "--hx-accordion-trigger-padding",
22
+ "default": "var(--hx-space-4)"
72
23
  },
73
24
  {
74
- "description": "Size token.",
75
- "name": "--hx-size-10"
25
+ "description": "Trigger text color.",
26
+ "name": "--hx-accordion-trigger-color",
27
+ "default": "var(--hx-color-neutral-800)"
76
28
  },
77
29
  {
78
- "description": "Size token.",
79
- "name": "--hx-size-12"
30
+ "description": "Trigger background color.",
31
+ "name": "--hx-accordion-trigger-bg",
32
+ "default": "transparent"
80
33
  },
81
34
  {
82
- "description": "Spacing token.",
83
- "name": "--hx-space-1"
35
+ "description": "Trigger hover background.",
36
+ "name": "--hx-accordion-trigger-hover-bg",
37
+ "default": "var(--hx-color-neutral-50)"
84
38
  },
85
39
  {
86
- "description": "Spacing token.",
87
- "name": "--hx-space-2"
40
+ "description": "Icon color.",
41
+ "name": "--hx-accordion-icon-color",
42
+ "default": "var(--hx-color-neutral-500)"
88
43
  },
89
44
  {
90
- "description": "Spacing token.",
91
- "name": "--hx-space-3"
45
+ "description": "Content padding.",
46
+ "name": "--hx-accordion-content-padding",
47
+ "default": "0 var(--hx-space-4) var(--hx-space-4)"
92
48
  },
93
49
  {
94
- "description": "Spacing token.",
95
- "name": "--hx-space-4"
50
+ "description": "Content text color.",
51
+ "name": "--hx-accordion-content-color",
52
+ "default": "var(--hx-color-neutral-600)"
96
53
  }
97
54
  ],
98
55
  "cssParts": [
99
56
  {
100
- "description": "The root toolbar container element.",
101
- "name": "base"
102
- },
103
- {
104
- "description": "The start (left) slot wrapper.",
105
- "name": "start"
57
+ "description": "The outer details element container.",
58
+ "name": "item"
106
59
  },
107
60
  {
108
- "description": "The center (default) slot wrapper.",
109
- "name": "center"
61
+ "description": "The summary/trigger element.",
62
+ "name": "trigger"
110
63
  },
111
64
  {
112
- "description": "The end (right) slot wrapper.",
113
- "name": "end"
65
+ "description": "The collapsible content area.",
66
+ "name": "content"
114
67
  },
115
68
  {
116
- "description": "The overflow slot wrapper (hidden when no overflow content).",
117
- "name": "overflow"
69
+ "description": "The expand/collapse icon.",
70
+ "name": "icon"
118
71
  }
119
72
  ],
120
73
  "slots": [
121
74
  {
122
- "description": "Left-aligned actions.",
123
- "name": "start"
75
+ "description": "The heading/trigger content for this item.",
76
+ "name": "trigger"
124
77
  },
125
78
  {
126
- "description": "Center content (default slot).",
79
+ "description": "Default slot for the collapsible body content.",
127
80
  "name": ""
128
- },
129
- {
130
- "description": "Right-aligned actions.",
131
- "name": "end"
132
- },
133
- {
134
- "description": "Actions revealed when the bar is constrained for space.",
135
- "name": "overflow"
136
81
  }
137
82
  ],
138
83
  "members": [
139
84
  {
140
85
  "kind": "field",
141
- "name": "size",
86
+ "name": "expanded",
142
87
  "type": {
143
- "text": "'sm' | 'md' | 'lg'"
88
+ "text": "boolean"
144
89
  },
145
- "default": "'md'",
146
- "description": "Size of the action bar — propagated as a data attribute to slotted children.",
147
- "attribute": "hx-size",
90
+ "default": "false",
91
+ "description": "Whether this item is expanded.",
92
+ "attribute": "expanded",
148
93
  "reflects": true
149
94
  },
150
95
  {
151
96
  "kind": "field",
152
- "name": "variant",
97
+ "name": "disabled",
153
98
  "type": {
154
- "text": "'default' | 'outlined' | 'filled'"
99
+ "text": "boolean"
155
100
  },
156
- "default": "'default'",
157
- "description": "Visual variant controlling the bar background.",
158
- "attribute": "variant",
101
+ "default": "false",
102
+ "description": "Whether this item is disabled (cannot be toggled).",
103
+ "attribute": "disabled",
159
104
  "reflects": true
160
105
  },
161
106
  {
162
107
  "kind": "field",
163
- "name": "position",
108
+ "name": "level",
164
109
  "type": {
165
- "text": "'top' | 'bottom' | 'sticky'"
110
+ "text": "1 | 2 | 3 | 4 | 5 | 6"
166
111
  },
167
- "default": "'top'",
168
- "description": "Position and sticky behavior of the action bar.\n- `top` — normal flow (default)\n- `sticky` sticks to the top of the scroll container; add `scroll-padding-top` to the\n scroll container equal to the bar height to prevent anchor targets from scrolling behind it\n- `bottom` sticks to the bottom of the scroll container with iOS safe-area-inset support",
169
- "attribute": "position",
170
- "reflects": true
112
+ "default": "3",
113
+ "description": "Heading level (1–6) applied via `role=\"heading\" aria-level` on the summary\ntrigger. Defaults to 3. Set to match the document outline around the\naccordion so screen readers surface accordion items in the heading list.",
114
+ "attribute": "level"
115
+ }
116
+ ],
117
+ "events": [
118
+ {
119
+ "name": "hx-expand",
120
+ "type": {
121
+ "text": "CustomEvent<{expanded: boolean, itemId: string}>"
122
+ },
123
+ "description": "Dispatched when the item is expanded."
171
124
  },
172
125
  {
173
- "kind": "field",
174
- "name": "accessibleLabel",
126
+ "name": "hx-collapse",
175
127
  "type": {
176
- "text": "string"
128
+ "text": "CustomEvent<{expanded: boolean, itemId: string}>"
177
129
  },
178
- "default": "''",
179
- "description": "Accessible label for the toolbar.\nRequired when multiple toolbars appear on the same page.\n\nAccepts both `accessible-label` and the standard `aria-label` HTML attribute.\nThe `accessible-label` attribute takes precedence when both are set.\n\nPreviously this was exposed as the `ariaLabel` JS property, which shadowed\nthe native `HTMLElement.ariaLabel`. That shadowing is removed; use\n`accessibleLabel` or the HTML attributes instead.",
180
- "attribute": "accessible-label"
130
+ "description": "Dispatched when the item is collapsed."
181
131
  }
182
132
  ],
183
133
  "attributes": [
184
134
  {
185
- "name": "hx-size",
135
+ "name": "expanded",
186
136
  "type": {
187
- "text": "'sm' | 'md' | 'lg'"
137
+ "text": "boolean"
188
138
  },
189
- "default": "'md'",
190
- "description": "Size of the action bar — propagated as a data attribute to slotted children.",
191
- "fieldName": "size",
192
- "attribute": "hx-size"
139
+ "default": "false",
140
+ "description": "Whether this item is expanded.",
141
+ "fieldName": "expanded",
142
+ "attribute": "expanded"
193
143
  },
194
144
  {
195
- "name": "variant",
145
+ "name": "disabled",
196
146
  "type": {
197
- "text": "'default' | 'outlined' | 'filled'"
147
+ "text": "boolean"
198
148
  },
199
- "default": "'default'",
200
- "description": "Visual variant controlling the bar background.",
201
- "fieldName": "variant",
202
- "attribute": "variant"
149
+ "default": "false",
150
+ "description": "Whether this item is disabled (cannot be toggled).",
151
+ "fieldName": "disabled",
152
+ "attribute": "disabled"
203
153
  },
204
154
  {
205
- "name": "position",
155
+ "name": "level",
206
156
  "type": {
207
- "text": "'top' | 'bottom' | 'sticky'"
157
+ "text": "1 | 2 | 3 | 4 | 5 | 6"
208
158
  },
209
- "default": "'top'",
210
- "description": "Position and sticky behavior of the action bar.\n- `top` — normal flow (default)\n- `sticky` sticks to the top of the scroll container; add `scroll-padding-top` to the\n scroll container equal to the bar height to prevent anchor targets from scrolling behind it\n- `bottom` sticks to the bottom of the scroll container with iOS safe-area-inset support",
211
- "fieldName": "position",
212
- "attribute": "position"
159
+ "default": "3",
160
+ "description": "Heading level (1–6) applied via `role=\"heading\" aria-level` on the summary\ntrigger. Defaults to 3. Set to match the document outline around the\naccordion so screen readers surface accordion items in the heading list.",
161
+ "fieldName": "level",
162
+ "attribute": "level"
163
+ }
164
+ ],
165
+ "superclass": {
166
+ "name": "HelixElement",
167
+ "module": "/src/base/index.js"
168
+ },
169
+ "tagName": "hx-accordion-item",
170
+ "customElement": true,
171
+ "summary": "Collapsible panel that can be expanded or collapsed."
172
+ },
173
+ {
174
+ "kind": "variable",
175
+ "name": "detail",
176
+ "type": {
177
+ "text": "object"
178
+ },
179
+ "default": "{ expanded, itemId: this.id || '' }"
180
+ }
181
+ ],
182
+ "exports": [
183
+ {
184
+ "kind": "js",
185
+ "name": "HelixAccordionItem",
186
+ "declaration": {
187
+ "name": "HelixAccordionItem",
188
+ "module": "src/components/hx-accordion/hx-accordion-item.ts"
189
+ }
190
+ },
191
+ {
192
+ "kind": "custom-element-definition",
193
+ "name": "hx-accordion-item",
194
+ "declaration": {
195
+ "name": "HelixAccordionItem",
196
+ "module": "src/components/hx-accordion/hx-accordion-item.ts"
197
+ }
198
+ }
199
+ ]
200
+ },
201
+ {
202
+ "kind": "javascript-module",
203
+ "path": "src/components/hx-accordion/hx-accordion.ts",
204
+ "declarations": [
205
+ {
206
+ "kind": "class",
207
+ "description": "An accordion container that manages collapsible content sections.",
208
+ "name": "HelixAccordion",
209
+ "cssProperties": [
210
+ {
211
+ "description": "Outer border radius.",
212
+ "name": "--hx-accordion-border-radius",
213
+ "default": "var(--hx-border-radius-md)"
213
214
  },
214
215
  {
215
- "name": "accessible-label",
216
+ "description": "CSS custom property.",
217
+ "name": "--hx-accordion-font-family",
218
+ "default": "var(--hx-font-family-sans)"
219
+ },
220
+ {
221
+ "description": "Font family.",
222
+ "name": "--hx-font-family-sans"
223
+ },
224
+ {
225
+ "description": "CSS custom property.",
226
+ "name": "--hx-border-radius-md"
227
+ }
228
+ ],
229
+ "cssParts": [
230
+ {
231
+ "description": "The outer container wrapping all accordion items.",
232
+ "name": "accordion"
233
+ }
234
+ ],
235
+ "slots": [
236
+ {
237
+ "description": "Default slot for hx-accordion-item elements.",
238
+ "name": ""
239
+ }
240
+ ],
241
+ "members": [
242
+ {
243
+ "kind": "field",
244
+ "name": "mode",
216
245
  "type": {
217
- "text": "string"
246
+ "text": "'single' | 'multi'"
218
247
  },
219
- "default": "''",
220
- "description": "Accessible label for the toolbar.\nRequired when multiple toolbars appear on the same page.\n\nAccepts both `accessible-label` and the standard `aria-label` HTML attribute.\nThe `accessible-label` attribute takes precedence when both are set.\n\nPreviously this was exposed as the `ariaLabel` JS property, which shadowed\nthe native `HTMLElement.ariaLabel`. That shadowing is removed; use\n`accessibleLabel` or the HTML attributes instead.",
221
- "fieldName": "accessibleLabel",
222
- "attribute": "accessible-label"
248
+ "default": "'single'",
249
+ "description": "Expansion mode: 'single' collapses all other items when one expands.\n'multi' allows multiple items open simultaneously.",
250
+ "attribute": "mode",
251
+ "reflects": true
252
+ }
253
+ ],
254
+ "attributes": [
255
+ {
256
+ "name": "mode",
257
+ "type": {
258
+ "text": "'single' | 'multi'"
259
+ },
260
+ "default": "'single'",
261
+ "description": "Expansion mode: 'single' collapses all other items when one expands.\n'multi' allows multiple items open simultaneously.",
262
+ "fieldName": "mode",
263
+ "attribute": "mode"
223
264
  }
224
265
  ],
225
266
  "superclass": {
226
267
  "name": "HelixElement",
227
268
  "module": "/src/base/index.js"
228
269
  },
229
- "tagName": "hx-action-bar",
270
+ "tagName": "hx-accordion",
230
271
  "customElement": true,
231
- "summary": "Horizontal action bar for grouping related controls."
272
+ "summary": "Collapsible content sections with single or multi-expand modes."
232
273
  }
233
274
  ],
234
275
  "exports": [
235
276
  {
236
277
  "kind": "js",
237
- "name": "HelixActionBar",
278
+ "name": "HelixAccordion",
238
279
  "declaration": {
239
- "name": "HelixActionBar",
240
- "module": "src/components/hx-action-bar/hx-action-bar.ts"
280
+ "name": "HelixAccordion",
281
+ "module": "src/components/hx-accordion/hx-accordion.ts"
241
282
  }
242
283
  },
243
284
  {
244
285
  "kind": "custom-element-definition",
245
- "name": "hx-action-bar",
286
+ "name": "hx-accordion",
246
287
  "declaration": {
247
- "name": "HelixActionBar",
248
- "module": "src/components/hx-action-bar/hx-action-bar.ts"
288
+ "name": "HelixAccordion",
289
+ "module": "src/components/hx-accordion/hx-accordion.ts"
249
290
  }
250
291
  }
251
292
  ]
252
293
  },
253
294
  {
254
295
  "kind": "javascript-module",
255
- "path": "src/components/hx-action-bar/index.ts",
296
+ "path": "src/components/hx-accordion/index.ts",
256
297
  "declarations": [],
257
298
  "exports": [
258
299
  {
259
300
  "kind": "js",
260
- "name": "HelixActionBar",
301
+ "name": "HelixAccordion",
261
302
  "declaration": {
262
- "name": "HelixActionBar",
263
- "module": "./hx-action-bar.js"
303
+ "name": "HelixAccordion",
304
+ "module": "./hx-accordion.js"
305
+ }
306
+ },
307
+ {
308
+ "kind": "js",
309
+ "name": "HelixAccordionItem",
310
+ "declaration": {
311
+ "name": "HelixAccordionItem",
312
+ "module": "./hx-accordion-item.js"
313
+ }
314
+ },
315
+ {
316
+ "kind": "js",
317
+ "name": "HxAccordionToggleDetail",
318
+ "declaration": {
319
+ "name": "HxAccordionToggleDetail",
320
+ "module": "./hx-accordion-item.js"
264
321
  }
265
322
  }
266
323
  ]
267
324
  },
268
325
  {
269
326
  "kind": "javascript-module",
270
- "path": "src/components/hx-accordion/hx-accordion-item.ts",
327
+ "path": "src/components/hx-action-bar/hx-action-bar.ts",
271
328
  "declarations": [
272
329
  {
273
330
  "kind": "class",
274
- "description": "An individual accordion item with collapsible content.",
275
- "name": "HelixAccordionItem",
331
+ "description": "A horizontal toolbar container for grouping related action buttons and controls.\nImplements the ARIA toolbar pattern with roving tabindex keyboard navigation.",
332
+ "name": "HelixActionBar",
276
333
  "cssProperties": [
277
334
  {
278
- "description": "Border color between items.",
279
- "name": "--hx-accordion-border-color",
280
- "default": "var(--hx-color-neutral-200)"
335
+ "description": "Bar background color (default variant).",
336
+ "name": "--hx-action-bar-bg",
337
+ "default": "transparent"
281
338
  },
282
339
  {
283
- "description": "Trigger padding.",
284
- "name": "--hx-accordion-trigger-padding",
285
- "default": "var(--hx-space-4)"
340
+ "description": "Bar border (default variant).",
341
+ "name": "--hx-action-bar-border",
342
+ "default": "none"
286
343
  },
287
344
  {
288
- "description": "Trigger text color.",
289
- "name": "--hx-accordion-trigger-color",
290
- "default": "var(--hx-color-neutral-800)"
345
+ "description": "Inner padding.",
346
+ "name": "--hx-action-bar-padding",
347
+ "default": "var(--hx-space-2,0.5rem) var(--hx-space-3,0.75rem)"
291
348
  },
292
349
  {
293
- "description": "Trigger background color.",
294
- "name": "--hx-accordion-trigger-bg",
295
- "default": "transparent"
350
+ "description": "Gap between slotted items.",
351
+ "name": "--hx-action-bar-gap",
352
+ "default": "var(--hx-space-2,0.5rem)"
296
353
  },
297
354
  {
298
- "description": "Trigger hover background.",
299
- "name": "--hx-accordion-trigger-hover-bg",
300
- "default": "var(--hx-color-neutral-50)"
355
+ "description": "Z-index when sticky or bottom position.",
356
+ "name": "--hx-action-bar-z-index",
357
+ "default": "10"
301
358
  },
302
359
  {
303
- "description": "Icon color.",
304
- "name": "--hx-accordion-icon-color",
305
- "default": "var(--hx-color-neutral-500)"
360
+ "description": "Padding.",
361
+ "name": "--hx-action-bar-padding-block-start",
362
+ "default": "0px"
306
363
  },
307
364
  {
308
- "description": "Content padding.",
309
- "name": "--hx-accordion-content-padding",
310
- "default": "0 var(--hx-space-4) var(--hx-space-4)"
365
+ "description": "Padding.",
366
+ "name": "--hx-action-bar-padding-block-end",
367
+ "default": "0px"
311
368
  },
312
369
  {
313
- "description": "Content text color.",
314
- "name": "--hx-accordion-content-color",
315
- "default": "var(--hx-color-neutral-600)"
370
+ "description": "CSS custom property.",
371
+ "name": "--hx-border-radius-md"
372
+ },
373
+ {
374
+ "description": "Width.",
375
+ "name": "--hx-border-width-thin"
376
+ },
377
+ {
378
+ "description": "Color.",
379
+ "name": "--hx-color-neutral-0"
380
+ },
381
+ {
382
+ "description": "Color.",
383
+ "name": "--hx-color-neutral-200"
384
+ },
385
+ {
386
+ "description": "Color.",
387
+ "name": "--hx-color-neutral-50"
388
+ },
389
+ {
390
+ "description": "Size token.",
391
+ "name": "--hx-size-8"
392
+ },
393
+ {
394
+ "description": "Size token.",
395
+ "name": "--hx-size-10"
396
+ },
397
+ {
398
+ "description": "Size token.",
399
+ "name": "--hx-size-12"
400
+ },
401
+ {
402
+ "description": "Spacing token.",
403
+ "name": "--hx-space-1"
404
+ },
405
+ {
406
+ "description": "Spacing token.",
407
+ "name": "--hx-space-2"
408
+ },
409
+ {
410
+ "description": "Spacing token.",
411
+ "name": "--hx-space-3"
412
+ },
413
+ {
414
+ "description": "Spacing token.",
415
+ "name": "--hx-space-4"
316
416
  }
317
417
  ],
318
418
  "cssParts": [
319
419
  {
320
- "description": "The outer details element container.",
321
- "name": "item"
420
+ "description": "The root toolbar container element.",
421
+ "name": "base"
322
422
  },
323
423
  {
324
- "description": "The summary/trigger element.",
325
- "name": "trigger"
424
+ "description": "The start (left) slot wrapper.",
425
+ "name": "start"
326
426
  },
327
427
  {
328
- "description": "The collapsible content area.",
329
- "name": "content"
428
+ "description": "The center (default) slot wrapper.",
429
+ "name": "center"
330
430
  },
331
431
  {
332
- "description": "The expand/collapse icon.",
333
- "name": "icon"
432
+ "description": "The end (right) slot wrapper.",
433
+ "name": "end"
434
+ },
435
+ {
436
+ "description": "The overflow slot wrapper (hidden when no overflow content).",
437
+ "name": "overflow"
334
438
  }
335
439
  ],
336
440
  "slots": [
337
441
  {
338
- "description": "The heading/trigger content for this item.",
339
- "name": "trigger"
442
+ "description": "Left-aligned actions.",
443
+ "name": "start"
444
+ },
445
+ {
446
+ "description": "Center content (default slot).",
447
+ "name": ""
448
+ },
449
+ {
450
+ "description": "Right-aligned actions.",
451
+ "name": "end"
340
452
  },
341
453
  {
342
- "description": "Default slot for the collapsible body content.",
343
- "name": ""
454
+ "description": "Actions revealed when the bar is constrained for space.",
455
+ "name": "overflow"
344
456
  }
345
457
  ],
346
458
  "members": [
347
459
  {
348
460
  "kind": "field",
349
- "name": "expanded",
461
+ "name": "size",
350
462
  "type": {
351
- "text": "boolean"
463
+ "text": "'sm' | 'md' | 'lg'"
352
464
  },
353
- "default": "false",
354
- "description": "Whether this item is expanded.",
355
- "attribute": "expanded",
465
+ "default": "'md'",
466
+ "description": "Size of the action bar — propagated as a data attribute to slotted children.",
467
+ "attribute": "hx-size",
356
468
  "reflects": true
357
469
  },
358
470
  {
359
471
  "kind": "field",
360
- "name": "disabled",
472
+ "name": "variant",
361
473
  "type": {
362
- "text": "boolean"
474
+ "text": "'default' | 'outlined' | 'filled'"
363
475
  },
364
- "default": "false",
365
- "description": "Whether this item is disabled (cannot be toggled).",
366
- "attribute": "disabled",
476
+ "default": "'default'",
477
+ "description": "Visual variant controlling the bar background.",
478
+ "attribute": "variant",
367
479
  "reflects": true
368
480
  },
369
481
  {
370
482
  "kind": "field",
371
- "name": "level",
372
- "type": {
373
- "text": "1 | 2 | 3 | 4 | 5 | 6"
374
- },
375
- "default": "3",
376
- "description": "Heading level (1–6) applied via `role=\"heading\" aria-level` on the summary\ntrigger. Defaults to 3. Set to match the document outline around the\naccordion so screen readers surface accordion items in the heading list.",
377
- "attribute": "level"
378
- }
379
- ],
380
- "events": [
381
- {
382
- "name": "hx-expand",
483
+ "name": "position",
383
484
  "type": {
384
- "text": "CustomEvent<{expanded: boolean, itemId: string}>"
485
+ "text": "'top' | 'bottom' | 'sticky'"
385
486
  },
386
- "description": "Dispatched when the item is expanded."
487
+ "default": "'top'",
488
+ "description": "Position and sticky behavior of the action bar.\n- `top` — normal flow (default)\n- `sticky` — sticks to the top of the scroll container; add `scroll-padding-top` to the\n scroll container equal to the bar height to prevent anchor targets from scrolling behind it\n- `bottom` — sticks to the bottom of the scroll container with iOS safe-area-inset support",
489
+ "attribute": "position",
490
+ "reflects": true
387
491
  },
388
492
  {
389
- "name": "hx-collapse",
493
+ "kind": "field",
494
+ "name": "accessibleLabel",
390
495
  "type": {
391
- "text": "CustomEvent<{expanded: boolean, itemId: string}>"
496
+ "text": "string"
392
497
  },
393
- "description": "Dispatched when the item is collapsed."
498
+ "default": "''",
499
+ "description": "Accessible label for the toolbar.\nRequired when multiple toolbars appear on the same page.\n\nAccepts both `accessible-label` and the standard `aria-label` HTML attribute.\nThe `accessible-label` attribute takes precedence when both are set.\n\nPreviously this was exposed as the `ariaLabel` JS property, which shadowed\nthe native `HTMLElement.ariaLabel`. That shadowing is removed; use\n`accessibleLabel` or the HTML attributes instead.",
500
+ "attribute": "accessible-label"
394
501
  }
395
502
  ],
396
503
  "attributes": [
397
504
  {
398
- "name": "expanded",
505
+ "name": "hx-size",
399
506
  "type": {
400
- "text": "boolean"
507
+ "text": "'sm' | 'md' | 'lg'"
401
508
  },
402
- "default": "false",
403
- "description": "Whether this item is expanded.",
404
- "fieldName": "expanded",
405
- "attribute": "expanded"
509
+ "default": "'md'",
510
+ "description": "Size of the action bar — propagated as a data attribute to slotted children.",
511
+ "fieldName": "size",
512
+ "attribute": "hx-size"
406
513
  },
407
514
  {
408
- "name": "disabled",
515
+ "name": "variant",
409
516
  "type": {
410
- "text": "boolean"
517
+ "text": "'default' | 'outlined' | 'filled'"
411
518
  },
412
- "default": "false",
413
- "description": "Whether this item is disabled (cannot be toggled).",
414
- "fieldName": "disabled",
415
- "attribute": "disabled"
519
+ "default": "'default'",
520
+ "description": "Visual variant controlling the bar background.",
521
+ "fieldName": "variant",
522
+ "attribute": "variant"
416
523
  },
417
524
  {
418
- "name": "level",
525
+ "name": "position",
419
526
  "type": {
420
- "text": "1 | 2 | 3 | 4 | 5 | 6"
527
+ "text": "'top' | 'bottom' | 'sticky'"
421
528
  },
422
- "default": "3",
423
- "description": "Heading level (1–6) applied via `role=\"heading\" aria-level` on the summary\ntrigger. Defaults to 3. Set to match the document outline around the\naccordion so screen readers surface accordion items in the heading list.",
424
- "fieldName": "level",
425
- "attribute": "level"
426
- }
427
- ],
428
- "superclass": {
429
- "name": "HelixElement",
430
- "module": "/src/base/index.js"
431
- },
432
- "tagName": "hx-accordion-item",
433
- "customElement": true,
434
- "summary": "Collapsible panel that can be expanded or collapsed."
435
- },
436
- {
437
- "kind": "variable",
438
- "name": "detail",
439
- "type": {
440
- "text": "object"
441
- },
442
- "default": "{ expanded, itemId: this.id || '' }"
443
- }
444
- ],
445
- "exports": [
446
- {
447
- "kind": "js",
448
- "name": "HelixAccordionItem",
449
- "declaration": {
450
- "name": "HelixAccordionItem",
451
- "module": "src/components/hx-accordion/hx-accordion-item.ts"
452
- }
453
- },
454
- {
455
- "kind": "custom-element-definition",
456
- "name": "hx-accordion-item",
457
- "declaration": {
458
- "name": "HelixAccordionItem",
459
- "module": "src/components/hx-accordion/hx-accordion-item.ts"
460
- }
461
- }
462
- ]
463
- },
464
- {
465
- "kind": "javascript-module",
466
- "path": "src/components/hx-accordion/hx-accordion.ts",
467
- "declarations": [
468
- {
469
- "kind": "class",
470
- "description": "An accordion container that manages collapsible content sections.",
471
- "name": "HelixAccordion",
472
- "cssProperties": [
473
- {
474
- "description": "Outer border radius.",
475
- "name": "--hx-accordion-border-radius",
476
- "default": "var(--hx-border-radius-md)"
477
- },
478
- {
479
- "description": "CSS custom property.",
480
- "name": "--hx-accordion-font-family",
481
- "default": "var(--hx-font-family-sans)"
482
- },
483
- {
484
- "description": "Font family.",
485
- "name": "--hx-font-family-sans"
529
+ "default": "'top'",
530
+ "description": "Position and sticky behavior of the action bar.\n- `top` — normal flow (default)\n- `sticky` sticks to the top of the scroll container; add `scroll-padding-top` to the\n scroll container equal to the bar height to prevent anchor targets from scrolling behind it\n- `bottom` sticks to the bottom of the scroll container with iOS safe-area-inset support",
531
+ "fieldName": "position",
532
+ "attribute": "position"
486
533
  },
487
534
  {
488
- "description": "CSS custom property.",
489
- "name": "--hx-border-radius-md"
490
- }
491
- ],
492
- "cssParts": [
493
- {
494
- "description": "The outer container wrapping all accordion items.",
495
- "name": "accordion"
496
- }
497
- ],
498
- "slots": [
499
- {
500
- "description": "Default slot for hx-accordion-item elements.",
501
- "name": ""
502
- }
503
- ],
504
- "members": [
505
- {
506
- "kind": "field",
507
- "name": "mode",
508
- "type": {
509
- "text": "'single' | 'multi'"
510
- },
511
- "default": "'single'",
512
- "description": "Expansion mode: 'single' collapses all other items when one expands.\n'multi' allows multiple items open simultaneously.",
513
- "attribute": "mode",
514
- "reflects": true
515
- }
516
- ],
517
- "attributes": [
518
- {
519
- "name": "mode",
535
+ "name": "accessible-label",
520
536
  "type": {
521
- "text": "'single' | 'multi'"
537
+ "text": "string"
522
538
  },
523
- "default": "'single'",
524
- "description": "Expansion mode: 'single' collapses all other items when one expands.\n'multi' allows multiple items open simultaneously.",
525
- "fieldName": "mode",
526
- "attribute": "mode"
539
+ "default": "''",
540
+ "description": "Accessible label for the toolbar.\nRequired when multiple toolbars appear on the same page.\n\nAccepts both `accessible-label` and the standard `aria-label` HTML attribute.\nThe `accessible-label` attribute takes precedence when both are set.\n\nPreviously this was exposed as the `ariaLabel` JS property, which shadowed\nthe native `HTMLElement.ariaLabel`. That shadowing is removed; use\n`accessibleLabel` or the HTML attributes instead.",
541
+ "fieldName": "accessibleLabel",
542
+ "attribute": "accessible-label"
527
543
  }
528
544
  ],
529
545
  "superclass": {
530
546
  "name": "HelixElement",
531
547
  "module": "/src/base/index.js"
532
548
  },
533
- "tagName": "hx-accordion",
549
+ "tagName": "hx-action-bar",
534
550
  "customElement": true,
535
- "summary": "Collapsible content sections with single or multi-expand modes."
551
+ "summary": "Horizontal action bar for grouping related controls."
536
552
  }
537
553
  ],
538
554
  "exports": [
539
555
  {
540
556
  "kind": "js",
541
- "name": "HelixAccordion",
557
+ "name": "HelixActionBar",
542
558
  "declaration": {
543
- "name": "HelixAccordion",
544
- "module": "src/components/hx-accordion/hx-accordion.ts"
559
+ "name": "HelixActionBar",
560
+ "module": "src/components/hx-action-bar/hx-action-bar.ts"
545
561
  }
546
562
  },
547
563
  {
548
564
  "kind": "custom-element-definition",
549
- "name": "hx-accordion",
565
+ "name": "hx-action-bar",
550
566
  "declaration": {
551
- "name": "HelixAccordion",
552
- "module": "src/components/hx-accordion/hx-accordion.ts"
567
+ "name": "HelixActionBar",
568
+ "module": "src/components/hx-action-bar/hx-action-bar.ts"
553
569
  }
554
570
  }
555
571
  ]
556
572
  },
557
573
  {
558
574
  "kind": "javascript-module",
559
- "path": "src/components/hx-accordion/index.ts",
575
+ "path": "src/components/hx-action-bar/index.ts",
560
576
  "declarations": [],
561
577
  "exports": [
562
578
  {
563
579
  "kind": "js",
564
- "name": "HelixAccordion",
565
- "declaration": {
566
- "name": "HelixAccordion",
567
- "module": "./hx-accordion.js"
568
- }
569
- },
570
- {
571
- "kind": "js",
572
- "name": "HelixAccordionItem",
573
- "declaration": {
574
- "name": "HelixAccordionItem",
575
- "module": "./hx-accordion-item.js"
576
- }
577
- },
578
- {
579
- "kind": "js",
580
- "name": "HxAccordionToggleDetail",
580
+ "name": "HelixActionBar",
581
581
  "declaration": {
582
- "name": "HxAccordionToggleDetail",
583
- "module": "./hx-accordion-item.js"
582
+ "name": "HelixActionBar",
583
+ "module": "./hx-action-bar.js"
584
584
  }
585
585
  }
586
586
  ]
@@ -22810,7 +22810,7 @@
22810
22810
  {
22811
22811
  "description": "Item text color.",
22812
22812
  "name": "--hx-nav-item-color",
22813
- "default": "var(--hx-color-neutral-300)"
22813
+ "default": "var(--hx-color-text-inverse)"
22814
22814
  },
22815
22815
  {
22816
22816
  "description": "Item hover background.",
@@ -22819,17 +22819,17 @@
22819
22819
  {
22820
22820
  "description": "Item hover text color.",
22821
22821
  "name": "--hx-nav-item-hover-color",
22822
- "default": "var(--hx-color-neutral-100)"
22822
+ "default": "var(--hx-color-text-inverse)"
22823
22823
  },
22824
22824
  {
22825
22825
  "description": "Active item background.",
22826
22826
  "name": "--hx-nav-item-active-bg",
22827
- "default": "var(--hx-color-primary-600)"
22827
+ "default": "var(--hx-color-action-primary-bg-hover)"
22828
22828
  },
22829
22829
  {
22830
22830
  "description": "Active item text color.",
22831
22831
  "name": "--hx-nav-item-active-color",
22832
- "default": "var(--hx-color-neutral-50)"
22832
+ "default": "var(--hx-color-text-on-primary-strong)"
22833
22833
  },
22834
22834
  {
22835
22835
  "description": "Item padding.",
@@ -22838,7 +22838,17 @@
22838
22838
  {
22839
22839
  "description": "Component host background color.",
22840
22840
  "name": "--hx-nav-item-host-bg",
22841
- "default": "var(--hx-color-neutral-900)"
22841
+ "default": "var(--hx-color-surface-inverse)"
22842
+ },
22843
+ {
22844
+ "description": "Tooltip background color (collapsed-rail tooltip).",
22845
+ "name": "--hx-nav-item-tooltip-bg",
22846
+ "default": "var(--hx-color-surface-inverse)"
22847
+ },
22848
+ {
22849
+ "description": "Tooltip text color (collapsed-rail tooltip).",
22850
+ "name": "--hx-nav-item-tooltip-color",
22851
+ "default": "var(--hx-color-text-inverse)"
22842
22852
  }
22843
22853
  ],
22844
22854
  "cssParts": [
@@ -23048,17 +23058,17 @@
23048
23058
  {
23049
23059
  "description": "Background color.",
23050
23060
  "name": "--hx-side-nav-bg",
23051
- "default": "var(--hx-color-neutral-900)"
23061
+ "default": "var(--hx-color-surface-inverse)"
23052
23062
  },
23053
23063
  {
23054
23064
  "description": "Text color.",
23055
23065
  "name": "--hx-side-nav-color",
23056
- "default": "var(--hx-color-neutral-100)"
23066
+ "default": "var(--hx-color-text-inverse)"
23057
23067
  },
23058
23068
  {
23059
23069
  "description": "Border color.",
23060
23070
  "name": "--hx-side-nav-border-color",
23061
- "default": "var(--hx-color-neutral-700)"
23071
+ "default": "var(--hx-color-border-strong)"
23062
23072
  },
23063
23073
  {
23064
23074
  "description": "Header padding.",
@@ -23071,9 +23081,14 @@
23071
23081
  "default": "var(--hx-space-4)"
23072
23082
  },
23073
23083
  {
23074
- "description": "Toggle button icon color.",
23084
+ "description": "Toggle button icon color (resting).",
23075
23085
  "name": "--hx-side-nav-toggle-color",
23076
- "default": "var(--hx-color-neutral-400)"
23086
+ "default": "var(--hx-color-text-inverse)"
23087
+ },
23088
+ {
23089
+ "description": "Toggle button icon color on hover.",
23090
+ "name": "--hx-side-nav-toggle-hover-color",
23091
+ "default": "var(--hx-color-text-inverse)"
23077
23092
  },
23078
23093
  {
23079
23094
  "description": "Color.",
@@ -29777,17 +29792,17 @@
29777
29792
  {
29778
29793
  "description": "Input background color.",
29779
29794
  "name": "--hx-input-bg",
29780
- "default": "var(--hx-color-neutral-0)"
29795
+ "default": "var(--hx-color-surface-default)"
29781
29796
  },
29782
29797
  {
29783
29798
  "description": "Input text color.",
29784
29799
  "name": "--hx-input-color",
29785
- "default": "var(--hx-color-neutral-800)"
29800
+ "default": "var(--hx-color-text-strong)"
29786
29801
  },
29787
29802
  {
29788
29803
  "description": "Input border color.",
29789
29804
  "name": "--hx-input-border-color",
29790
- "default": "var(--hx-color-neutral-300)"
29805
+ "default": "var(--hx-color-border-strong)"
29791
29806
  },
29792
29807
  {
29793
29808
  "description": "Input border radius.",
@@ -29807,12 +29822,12 @@
29807
29822
  {
29808
29823
  "description": "Error state color.",
29809
29824
  "name": "--hx-input-error-color",
29810
- "default": "var(--hx-color-error-500)"
29825
+ "default": "var(--hx-color-error-text)"
29811
29826
  },
29812
29827
  {
29813
29828
  "description": "Label text color.",
29814
29829
  "name": "--hx-input-label-color",
29815
- "default": "var(--hx-color-neutral-700)"
29830
+ "default": "var(--hx-color-text-strong)"
29816
29831
  },
29817
29832
  {
29818
29833
  "description": "Font size for the sm size variant.",