@fusion.dev/helix 0.0.0-dev → 0.0.3

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 (227) hide show
  1. package/custom-elements.json +5565 -5519
  2. package/dist/accordion/item/accordion-item.css.js +1 -19
  3. package/dist/accordion/root/accordion-root.css.js +1 -1
  4. package/dist/accordion/root/accordion-root.d.ts +1 -1
  5. package/dist/accordion/root/accordion-root.js +1 -1
  6. package/dist/announcement/root/announcement-root.css.js +1 -7
  7. package/dist/app-header/root/app-header-root.css.js +1 -7
  8. package/dist/app-header/root/app-header-root.d.ts +20 -23
  9. package/dist/app-header/root/app-header-root.js +4 -4
  10. package/dist/aura/root/aura-axis.d.ts +5 -7
  11. package/dist/aura/root/aura-axis.js +5 -7
  12. package/dist/aura/root/aura-root.css.js +1 -1
  13. package/dist/aura/root/aura-root.d.ts +75 -87
  14. package/dist/aura/root/aura-root.js +100 -109
  15. package/dist/aura/root/aura-shader.d.ts +10 -13
  16. package/dist/aura/root/aura-shader.js +165 -238
  17. package/dist/avatar/group/avatar-group.css.js +1 -1
  18. package/dist/avatar/root/avatar-root.css.js +1 -1
  19. package/dist/badge/root/badge-root.css.js +1 -13
  20. package/dist/badge/root/badge-root.d.ts +4 -5
  21. package/dist/bar-chart/root/bar-chart-root.css.js +1 -13
  22. package/dist/bar-chart/root/bar-chart-root.d.ts +51 -60
  23. package/dist/bar-chart/root/bar-chart-root.js +10 -17
  24. package/dist/blockquote/root/blockquote-root.css.js +1 -1
  25. package/dist/breadcrumbs/breadcrumb/breadcrumb.css.js +1 -7
  26. package/dist/breadcrumbs/root/breadcrumbs-root.css.js +1 -1
  27. package/dist/button/root/button-root.css.js +1 -7
  28. package/dist/button/root/button-root.d.ts +16 -25
  29. package/dist/button/root/button-root.js +3 -3
  30. package/dist/button-group/root/button-group-root.css.js +1 -1
  31. package/dist/button-group/root/button-group-root.d.ts +5 -7
  32. package/dist/callout/root/callout-root.css.js +1 -1
  33. package/dist/callout/root/callout-root.d.ts +4 -4
  34. package/dist/callout/root/callout-root.js +4 -4
  35. package/dist/card/root/card-root.css.js +2 -2
  36. package/dist/card/root/card-root.d.ts +38 -48
  37. package/dist/card/root/card-root.js +8 -11
  38. package/dist/carousel/root/carousel-root.css.js +1 -11
  39. package/dist/carousel/root/carousel-root.d.ts +39 -43
  40. package/dist/carousel/root/carousel-root.js +7 -7
  41. package/dist/chat/composer/chat-composer.css.js +1 -1
  42. package/dist/chat/message/chat-message.css.js +1 -7
  43. package/dist/chat/message/chat-message.d.ts +8 -13
  44. package/dist/chat/root/chat-root.css.js +1 -1
  45. package/dist/checkbox/root/checkbox-root.css.js +1 -14
  46. package/dist/checkbox-group/root/checkbox-group-root.css.js +1 -1
  47. package/dist/code/root/code-root.css.js +9 -7
  48. package/dist/code/root/code-root.d.ts +4 -0
  49. package/dist/code/root/code-root.js +4 -0
  50. package/dist/code-block/root/code-block-root.css.js +1 -1
  51. package/dist/color-input/root/color-input-root.css.js +2 -2
  52. package/dist/color-input/root/color-input-root.js +3 -3
  53. package/dist/color-picker/root/color-picker-root.css.js +1 -9
  54. package/dist/color-picker/root/color-picker-root.js +3 -3
  55. package/dist/combobox/root/combobox-root.css.js +1 -8
  56. package/dist/combobox/root/combobox-root.js +1 -1
  57. package/dist/command/root/command-root.css.js +1 -1
  58. package/dist/copy-button/root/copy-button-root.css.js +1 -1
  59. package/dist/data-table/root/data-table-root.css.js +9 -3
  60. package/dist/data-table/root/data-table-root.d.ts +4 -1
  61. package/dist/data-table/root/data-table-root.js +4 -1
  62. package/dist/date-input/root/date-input-root.css.js +1 -1
  63. package/dist/date-picker/root/date-picker-root.css.js +1 -7
  64. package/dist/date-picker/root/date-picker-root.d.ts +1 -1
  65. package/dist/date-picker/root/date-picker-root.js +1 -1
  66. package/dist/dialog/root/dialog-root.css.js +1 -1
  67. package/dist/dialog/root/dialog-root.d.ts +15 -20
  68. package/dist/dialog/root/dialog-root.js +2 -2
  69. package/dist/divider/root/divider-root.css.js +1 -1
  70. package/dist/donut-chart/root/donut-chart-root.css.js +2 -20
  71. package/dist/donut-chart/root/donut-chart-root.d.ts +14 -19
  72. package/dist/donut-chart/root/donut-chart-root.js +6 -7
  73. package/dist/drawer/root/drawer-root.css.js +1 -11
  74. package/dist/drawer/root/drawer-root.d.ts +3 -7
  75. package/dist/drilldown/item/drilldown-item.css.js +1 -1
  76. package/dist/drilldown/root/drilldown-root.css.js +1 -1
  77. package/dist/element-events.generated.js +1 -1
  78. package/dist/empty/root/empty-root.css.js +1 -1
  79. package/dist/file-input/root/file-input-root.css.js +1 -1
  80. package/dist/file-input/root/file-input-root.js +1 -2
  81. package/dist/flex/root/flex-root.css.js +1 -1
  82. package/dist/flex/root/flex-root.d.ts +6 -6
  83. package/dist/flex/root/flex-root.js +9 -9
  84. package/dist/format-date/root/format-date-root.css.js +1 -1
  85. package/dist/grid/root/grid-root.css.js +1 -1
  86. package/dist/grid/root/grid-root.d.ts +8 -8
  87. package/dist/grid/root/grid-root.js +8 -9
  88. package/dist/heatmap/root/heatmap-root.css.js +2 -2
  89. package/dist/heatmap/root/heatmap-root.d.ts +11 -12
  90. package/dist/heatmap/root/heatmap-root.js +11 -12
  91. package/dist/icon/glyph.css.js +1 -1
  92. package/dist/icon/root/icon-root.css.js +1 -1
  93. package/dist/icon-button/root/icon-button-root.css.js +1 -7
  94. package/dist/icon-button/root/icon-button-root.d.ts +10 -10
  95. package/dist/icon-button/root/icon-button-root.js +4 -4
  96. package/dist/image/root/image-root.css.js +1 -7
  97. package/dist/input/root/input-root.css.js +1 -9
  98. package/dist/kbd/root/kbd-root.css.js +1 -1
  99. package/dist/legend/root/legend-root.css.js +1 -1
  100. package/dist/legend/root/legend-root.d.ts +34 -37
  101. package/dist/legend/root/legend-root.js +10 -10
  102. package/dist/line-chart/root/line-chart-root.css.js +1 -8
  103. package/dist/line-chart/root/line-chart-root.d.ts +6 -9
  104. package/dist/list/item/list-item.css.js +1 -1
  105. package/dist/list/root/list-root.css.js +1 -1
  106. package/dist/list/root/list-root.d.ts +4 -7
  107. package/dist/listbox/root/listbox-root.css.js +3 -3
  108. package/dist/listbox/root/listbox-root.d.ts +2 -0
  109. package/dist/listbox/root/listbox-root.js +2 -0
  110. package/dist/loader/root/loader-root.css.js +1 -1
  111. package/dist/loader/root/loader-root.d.ts +5 -9
  112. package/dist/loader/root/loader-root.js +2 -2
  113. package/dist/megamenu/root/megamenu-root.css.js +3 -2
  114. package/dist/menu/item/menu-item.css.js +1 -7
  115. package/dist/menu/root/menu-root.css.js +1 -1
  116. package/dist/meter/root/meter-root.css.js +1 -14
  117. package/dist/meter/root/meter-root.d.ts +18 -18
  118. package/dist/meter/root/meter-root.js +6 -8
  119. package/dist/mixins/mixin-control-surface/mixin-control-surface.d.ts +1 -1
  120. package/dist/navigation/root/navigation-root.css.js +1 -7
  121. package/dist/notifications/notification/notification.css.js +1 -7
  122. package/dist/notifications/root/notifications-root.css.js +1 -1
  123. package/dist/number-input/root/number-input-root.css.js +1 -9
  124. package/dist/option/group/option-group.css.js +1 -1
  125. package/dist/option/root/option-root.css.js +1 -1
  126. package/dist/outline/root/outline-root.css.js +1 -14
  127. package/dist/outline/root/outline-root.d.ts +1 -1
  128. package/dist/outline/root/outline-root.js +1 -1
  129. package/dist/pagination/root/pagination-root.css.js +1 -12
  130. package/dist/pagination/size/pagination-size.css.js +1 -1
  131. package/dist/pagination/summary/pagination-summary.css.js +1 -1
  132. package/dist/pin-input/root/pin-input-root.css.js +1 -7
  133. package/dist/popover/root/popover-root.css.js +4 -2
  134. package/dist/progress/root/progress-root.css.js +1 -7
  135. package/dist/progress/root/progress-root.d.ts +10 -9
  136. package/dist/qr-code/root/qr-code-root.css.js +1 -1
  137. package/dist/qr-code/root/qr-code-root.d.ts +1 -1
  138. package/dist/qr-code/root/qr-code-root.js +1 -1
  139. package/dist/quote/root/quote-root.css.js +1 -1
  140. package/dist/radio/group/radio-group.css.js +1 -1
  141. package/dist/radio/root/radio-root.css.js +1 -14
  142. package/dist/radio/root/radio-root.d.ts +20 -18
  143. package/dist/radio/root/radio-root.js +5 -6
  144. package/dist/rating/root/rating-root.css.js +1 -1
  145. package/dist/rating/root/rating-root.d.ts +4 -5
  146. package/dist/sandbox/preview/sandbox-preview.css.js +1 -1
  147. package/dist/sandbox/preview/sandbox-preview.d.ts +48 -44
  148. package/dist/sandbox/preview/sandbox-preview.js +63 -50
  149. package/dist/sandbox/root/sandbox-root.css.js +1 -2
  150. package/dist/sandbox/root/sandbox-root.d.ts +50 -59
  151. package/dist/sandbox/root/sandbox-root.js +75 -91
  152. package/dist/sandbox/source/sandbox-source.css.js +1 -1
  153. package/dist/sandbox/source/sandbox-source.d.ts +21 -29
  154. package/dist/sandbox/source/sandbox-source.js +26 -34
  155. package/dist/sandbox/status-bar/sandbox-status-bar.css.js +1 -1
  156. package/dist/sandbox/terminal/sandbox-terminal.css.js +1 -1
  157. package/dist/sandbox/toolbar/sandbox-toolbar.css.js +1 -1
  158. package/dist/scroll-area/root/scroll-area-root.css.js +5 -5
  159. package/dist/select/root/select-root.css.js +2 -15
  160. package/dist/select/root/select-root.d.ts +4 -4
  161. package/dist/select/root/select-root.js +5 -7
  162. package/dist/shared/chart/series.css.js +1 -1
  163. package/dist/shared/chart/terminus.css.js +1 -1
  164. package/dist/shared/field/field-inline.css.js +1 -1
  165. package/dist/shared/field/field-stacked.css.js +1 -1
  166. package/dist/shared/field/field.css.js +1 -1
  167. package/dist/skeleton/root/skeleton-root.css.js +1 -1
  168. package/dist/slider/root/slider-root.css.js +1 -3
  169. package/dist/sparkline/root/sparkline-root.css.js +1 -1
  170. package/dist/sparkline/root/sparkline-root.d.ts +22 -24
  171. package/dist/sparkline/root/sparkline-root.js +6 -6
  172. package/dist/speed-dial/item/speed-dial-item.css.js +1 -7
  173. package/dist/speed-dial/root/speed-dial-root.css.js +1 -1
  174. package/dist/splitter/root/splitter-root.css.js +1 -14
  175. package/dist/stat/group/stat-group.css.js +1 -1
  176. package/dist/stat/root/stat-root.css.js +1 -1
  177. package/dist/steps/root/steps-root.css.js +1 -1
  178. package/dist/steps/step/step.css.js +1 -8
  179. package/dist/steps/step/step.js +1 -1
  180. package/dist/switch/root/switch-root.css.js +1 -8
  181. package/dist/table/cell/table-cell.css.js +1 -1
  182. package/dist/table/column/table-column.css.js +1 -1
  183. package/dist/table/root/table-root.css.js +1 -1
  184. package/dist/table/row/table-row.css.js +1 -1
  185. package/dist/tabs/panel/tab-panel.css.js +1 -1
  186. package/dist/tabs/root/tabs-root.css.js +1 -7
  187. package/dist/tabs/tab/tab.css.js +2 -8
  188. package/dist/tag/root/tag-root.css.js +1 -1
  189. package/dist/tag/root/tag-root.d.ts +10 -19
  190. package/dist/tag/root/tag-root.js +3 -3
  191. package/dist/text/root/text-root.css.js +1 -1
  192. package/dist/text/root/text-root.d.ts +13 -14
  193. package/dist/text/root/text-root.js +6 -6
  194. package/dist/textarea/root/textarea-root.css.js +1 -7
  195. package/dist/time-input/root/time-input-root.css.js +1 -1
  196. package/dist/time-input/root/time-input-root.js +1 -1
  197. package/dist/time-picker/root/time-picker-root.css.js +1 -7
  198. package/dist/time-picker/root/time-picker-root.js +1 -1
  199. package/dist/timeline/item/timeline-item.css.js +1 -1
  200. package/dist/timeline/root/timeline-root.css.js +1 -1
  201. package/dist/toast/item/toast-item.css.js +1 -1
  202. package/dist/toast/root/toast-root.css.js +1 -1
  203. package/dist/toggle/group/toggle-group.css.js +1 -7
  204. package/dist/toggle/group/toggle-group.d.ts +6 -9
  205. package/dist/toggle/root/toggle-root.css.js +1 -1
  206. package/dist/toolbar/root/toolbar-root.css.js +1 -1
  207. package/dist/tooltip/root/tooltip-root.css.js +1 -1
  208. package/dist/tooltip/root/tooltip-root.d.ts +6 -7
  209. package/dist/tour/root/tour-root.css.js +1 -7
  210. package/dist/tour/stop/tour-stop.css.js +2 -2
  211. package/dist/tree/item/tree-item.css.js +1 -17
  212. package/dist/tree/root/tree-root.css.js +1 -1
  213. package/dist/tree/root/tree-root.d.ts +0 -2
  214. package/dist/trend/root/trend-root.css.js +1 -1
  215. package/dist/trend/root/trend-root.d.ts +4 -7
  216. package/dist/trend/root/trend-root.js +4 -7
  217. package/dist/video/root/video-root.css.js +1 -12
  218. package/dist/video/root/video-root.d.ts +3 -8
  219. package/dist/video-playlist/item/video-playlist-item.css.js +1 -7
  220. package/dist/video-playlist/menu/video-playlist-menu.css.js +1 -1
  221. package/dist/video-playlist/root/video-playlist-root.css.js +1 -1
  222. package/dist/virtual-list/root/virtual-list-root.css.js +1 -1
  223. package/elements.css +4 -5
  224. package/helix.css +31 -0
  225. package/jsx.d.ts +11625 -14561
  226. package/package.json +10 -8
  227. package/vue.d.ts +3594 -4231
@@ -1,4 +1,4 @@
1
- // Generated from src/meter/root/meter-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/meter/root/meter-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;
@@ -89,12 +89,6 @@ translate: -50%;
89
89
  z-index: var(--helix-layer-raised);
90
90
  }
91
91
 
92
- @media (prefers-reduced-motion: reduce) {
93
- [part="indicator"] {
94
- transition: none;
95
- }
96
- }
97
-
98
92
  :host([shape="arc"]),
99
93
  :host([shape="ring"]) {
100
94
  display: inline-grid;
@@ -186,13 +180,6 @@ stroke: var(--_meter-hue);
186
180
  grid-area: 1 / 1;
187
181
  }
188
182
 
189
- @media (prefers-reduced-motion: reduce) {
190
- :host([shape="arc"]) [part="indicator"],
191
- :host([shape="ring"]) [part="indicator"] {
192
- transition: none;
193
- }
194
- }
195
-
196
183
  @media print {
197
184
  :host {
198
185
  box-shadow: none;
@@ -7,17 +7,15 @@ import type { CSSResultGroup } from 'lit';
7
7
  * The bar `Progress` draws, at twice the height and on the house corner rather
8
8
  * than its pill.
9
9
  *
10
- * It shipped at the progress height, on the argument that the two stand beside
11
- * each other in a panel. Rendered side by side that turned out backwards: they
12
- * *are* two unrelated controls, and a reader telling a level from a task at a
13
- * glance is the point rather than the cost. A meter also carries more, a fill
14
- * and a mark at each threshold, and at eight pixels those marks are hairlines.
15
- * At sixteen they are unmistakable.
10
+ * Taller than a progress bar rather than matched to it. The two are unrelated
11
+ * controls, and a reader telling a level from a task at a glance is the point
12
+ * rather than the cost. A meter also carries more, a fill and a mark at each
13
+ * threshold, and at eight pixels those marks are hairlines. At sixteen they are
14
+ * unmistakable.
16
15
  *
17
16
  * The corner is the ticks' doing: they cut the fill into segments, and a
18
17
  * pill-ended bar comes out as a run whose outer ends are round and whose inner
19
- * ends are square. `radii-full` on an eight pixel bar was a four pixel pill
20
- * anyway, so this is only a change at all because the bar grew.
18
+ * ends are square.
21
19
  *
22
20
  * What else differs is what the color means. A progress bar is one color because
23
21
  * there is one thing to say; a meter's fill takes the success, warning or danger
@@ -57,17 +55,19 @@ export declare class HelixMeter extends HelixHeadlessMeter {
57
55
  * How much ink the reading claims.
58
56
  *
59
57
  * `subtle` is the reading as a wash of its own color: still legible, no longer
60
- * the loudest thing in the region. The case is a dashboard: several meters where one is the number being watched and the rest are context, which is a fact about the region rather than about any one of them and is exactly what this axis is for.
58
+ * the loudest thing in the region. The case is a dashboard of several meters
59
+ * where one is the number being watched and the rest are context, which is a
60
+ * fact about the region rather than about any one of them.
61
61
  *
62
- * **One value and not the four, which is the judgment this axis asks for
63
- * rather than a partial sweep.** `ghost` would leave a track with nothing in
64
- * it, which is not a quiet reading but an absent one. `outlined` is the
65
- * interesting refusal: `BarChart` makes it work by keeping the area and fading
66
- * it toward the page, so an outlined column still encodes its value, and the
67
- * reason it earns the value there is that a chart has other series for the
68
- * outlined one to be a *different kind of fact from* (a forecast, a target,
69
- * a budget). A meter reports one quantity against its own range, and the bands it already carries say which part of that range it is in, so there is no second kind of fact for an outline to name. `solid` is the resting state and is written by not
70
- * writing it, per the rule that a reflected property takes no default.
62
+ * **One value and not the four.** `ghost` would leave a track with nothing in
63
+ * it, which is not a quiet reading but an absent one. `outlined` earns its
64
+ * place in `BarChart`, which keeps the area and fades it toward the page, only
65
+ * because a chart has other series for the outlined one to be a *different
66
+ * kind of fact from* (a forecast, a target, a budget). A meter reports one
67
+ * quantity against its own range, and the bands it carries already say which
68
+ * part of that range it is in, so there is no second kind of fact for an
69
+ * outline to name. `solid` is the resting state and is written by not writing
70
+ * it, per the rule that a reflected property takes no default.
71
71
  */
72
72
  emphasis?: 'subtle';
73
73
  static styles: CSSResultGroup;
@@ -15,17 +15,15 @@ import { styles } from './meter-root.css.js';
15
15
  * The bar `Progress` draws, at twice the height and on the house corner rather
16
16
  * than its pill.
17
17
  *
18
- * It shipped at the progress height, on the argument that the two stand beside
19
- * each other in a panel. Rendered side by side that turned out backwards: they
20
- * *are* two unrelated controls, and a reader telling a level from a task at a
21
- * glance is the point rather than the cost. A meter also carries more, a fill
22
- * and a mark at each threshold, and at eight pixels those marks are hairlines.
23
- * At sixteen they are unmistakable.
18
+ * Taller than a progress bar rather than matched to it. The two are unrelated
19
+ * controls, and a reader telling a level from a task at a glance is the point
20
+ * rather than the cost. A meter also carries more, a fill and a mark at each
21
+ * threshold, and at eight pixels those marks are hairlines. At sixteen they are
22
+ * unmistakable.
24
23
  *
25
24
  * The corner is the ticks' doing: they cut the fill into segments, and a
26
25
  * pill-ended bar comes out as a run whose outer ends are round and whose inner
27
- * ends are square. `radii-full` on an eight pixel bar was a four pixel pill
28
- * anyway, so this is only a change at all because the bar grew.
26
+ * ends are square.
29
27
  *
30
28
  * What else differs is what the color means. A progress bar is one color because
31
29
  * there is one thing to say; a meter's fill takes the success, warning or danger
@@ -3,7 +3,7 @@ type Constructor<T> = new (...args: any[]) => T;
3
3
  /**
4
4
  * How much ink a control claims and what it means, for the three that are buttons.
5
5
  *
6
- * **The first mixin in `helix/styled`, and it belongs here rather than in core.**
6
+ * **It belongs here rather than in `core`.**
7
7
  * `helix/core` is consumed by the headless tier, which must never take styling,
8
8
  * and these two properties are purely presentational: they carry no behavior,
9
9
  * no ARIA and no form participation, only which rules a stylesheet applies.
@@ -1,4 +1,4 @@
1
- // Generated from src/navigation/root/navigation-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/navigation/root/navigation-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;
@@ -37,12 +37,6 @@ z-index: var(--helix-layer-base);
37
37
  opacity: 1;
38
38
  }
39
39
 
40
- @media (prefers-reduced-motion: reduce) {
41
- [part="indicator"] {
42
- transition: opacity var(--helix-duration-fast) var(--helix-easing-standard);
43
- }
44
- }
45
-
46
40
  @media print {
47
41
  :host {
48
42
  display: none;
@@ -1,4 +1,4 @@
1
- // Generated from src/notifications/notification/notification.css by `bun run styles`. Do not edit.
1
+ // Generated from src/notifications/notification/notification.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
 
@@ -127,12 +127,6 @@ pointer-events: auto;
127
127
  }
128
128
  }
129
129
 
130
- @media (prefers-reduced-motion: reduce) {
131
- [part="trailing"] > * {
132
- transition: none;
133
- }
134
- }
135
-
136
130
  [part="actions"] {
137
131
  align-items: center;
138
132
  display: flex;
@@ -1,4 +1,4 @@
1
- // Generated from src/notifications/root/notifications-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/notifications/root/notifications-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
 
@@ -1,4 +1,4 @@
1
- // Generated from src/number-input/root/number-input-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/number-input/root/number-input-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: flex;
@@ -122,14 +122,6 @@ block-size: var(--helix-size-icon-tight);
122
122
  inline-size: var(--helix-size-icon-tight);
123
123
  }
124
124
 
125
- @media (prefers-reduced-motion: reduce) {
126
- [part="field"],
127
- [part="decrement"],
128
- [part="increment"] {
129
- transition: none;
130
- }
131
- }
132
-
133
125
  :host([scrub]) [part="label"] {
134
126
  cursor: ew-resize;
135
127
  touch-action: none;
@@ -1,4 +1,4 @@
1
- // Generated from src/option/group/option-group.css by `bun run styles`. Do not edit.
1
+ // Generated from src/option/group/option-group.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;
@@ -1,4 +1,4 @@
1
- // Generated from src/option/root/option-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/option/root/option-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
 
@@ -1,4 +1,4 @@
1
- // Generated from src/outline/root/outline-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/outline/root/outline-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;
@@ -58,13 +58,6 @@ inset-inline-start var(--helix-duration-fast) var(--helix-easing-decelerate),
58
58
  opacity var(--helix-duration-fast) var(--helix-easing-standard);
59
59
  }
60
60
 
61
- @media (prefers-reduced-motion: reduce) {
62
- [part="indicator"],
63
- [part="indicator"][data-moving] {
64
- transition: opacity var(--helix-duration-fast) var(--helix-easing-standard);
65
- }
66
- }
67
-
68
61
  ::slotted(a) {
69
62
  border-radius: var(--helix-radii-sm);
70
63
  color: var(--helix-color-foreground-muted);
@@ -131,12 +124,6 @@ var(--outline-indent, var(--helix-space-sm))
131
124
  );
132
125
  }
133
126
 
134
- @media (prefers-reduced-motion: reduce) {
135
- ::slotted(a) {
136
- transition: none;
137
- }
138
- }
139
-
140
127
  @media print {
141
128
  :host {
142
129
  box-shadow: none;
@@ -8,7 +8,7 @@ import type { CSSResultGroup } from 'lit';
8
8
  * the shape a table of contents has taken since printed marginalia: the line
9
9
  * says the list is one thing, and the lit segment says where in it you are.
10
10
  *
11
- * Nesting is the consumer's, expressed as `data-level` on a link. A outline
11
+ * Nesting is the consumer's, expressed as `data-level` on a link. An outline
12
12
  * that read heading levels itself would have to look at the document, and the
13
13
  * document is not always where the headings are.
14
14
  *
@@ -15,7 +15,7 @@ import { styles } from './outline-root.css.js';
15
15
  * the shape a table of contents has taken since printed marginalia: the line
16
16
  * says the list is one thing, and the lit segment says where in it you are.
17
17
  *
18
- * Nesting is the consumer's, expressed as `data-level` on a link. A outline
18
+ * Nesting is the consumer's, expressed as `data-level` on a link. An outline
19
19
  * that read heading levels itself would have to look at the document, and the
20
20
  * document is not always where the headings are.
21
21
  *
@@ -1,4 +1,4 @@
1
- // Generated from src/pagination/root/pagination-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/pagination/root/pagination-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  align-items: center;
@@ -140,17 +140,6 @@ font-weight: var(--helix-weight-medium);
140
140
  padding-inline: var(--helix-space-xs);
141
141
  }
142
142
 
143
- @media (prefers-reduced-motion: reduce) {
144
- [part="first"],
145
- [part="gap"],
146
- [part="last"],
147
- [part="page"],
148
- [part="previous"],
149
- [part="next"] {
150
- transition: none;
151
- }
152
- }
153
-
154
143
  @media print {
155
144
  :host {
156
145
  display: none;
@@ -1,4 +1,4 @@
1
- // Generated from src/pagination/size/pagination-size.css by `bun run styles`. Do not edit.
1
+ // Generated from src/pagination/size/pagination-size.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: inline-flex;
@@ -1,4 +1,4 @@
1
- // Generated from src/pagination/summary/pagination-summary.css by `bun run styles`. Do not edit.
1
+ // Generated from src/pagination/summary/pagination-summary.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  color: var(--helix-color-foreground-subtle);
@@ -1,4 +1,4 @@
1
- // Generated from src/pin-input/root/pin-input-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/pin-input/root/pin-input-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: flex;
@@ -56,12 +56,6 @@ background-color: transparent;
56
56
  font-size: var(--helix-text-xl);
57
57
  }
58
58
 
59
- @media (prefers-reduced-motion: reduce) {
60
- [part="cell"] {
61
- transition: none;
62
- }
63
- }
64
-
65
59
  [part="cell"]::placeholder {
66
60
  color: var(--helix-color-foreground-subtle);
67
61
  }
@@ -1,4 +1,4 @@
1
- // Generated from src/popover/root/popover-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/popover/root/popover-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
 
@@ -36,8 +36,10 @@ padding: var(--popover-padding, var(--helix-space-none));
36
36
  [part="popover"] {
37
37
  opacity: 0;
38
38
  --_travel: calc(var(--helix-space-2xs) * -1);
39
+
40
+ --_popover-from: 0.96;
39
41
  transform: translateY(var(--_travel));
40
- scale: var(--_popover-from, 0.96);
42
+ scale: var(--_popover-from);
41
43
  transition:
42
44
  opacity var(--helix-duration-fast) var(--helix-easing-standard),
43
45
  scale var(--helix-duration-fast) var(--helix-easing-emphasized),
@@ -1,4 +1,4 @@
1
- // Generated from src/progress/root/progress-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/progress/root/progress-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;
@@ -43,12 +43,6 @@ transition: scale var(--helix-duration-normal) var(--helix-easing-decelerate);
43
43
  transform-origin: right center;
44
44
  }
45
45
 
46
- @media (prefers-reduced-motion: reduce) {
47
- [part="indicator"] {
48
- transition: none;
49
- }
50
- }
51
-
52
46
  :host([indeterminate]) {
53
47
  --_progress-cycle: calc(var(--helix-duration-slow) * 5);
54
48
  }
@@ -30,17 +30,18 @@ export declare class HelixProgress extends HelixHeadlessProgress {
30
30
  * How much ink the bar claims.
31
31
  *
32
32
  * `subtle` is the bar as a wash of its own color: still legible, no longer
33
- * the loudest thing in the region. The case is a background task: something uploading while the reader is doing something else has to be visible and must not compete with what they are actually looking at.
33
+ * the loudest thing in the region. The case is a background task, which has to
34
+ * be visible and must not compete with what the reader is actually looking at.
34
35
  *
35
- * **One value and not the four, which is the judgment this axis asks for
36
- * rather than a partial sweep.** `ghost` would leave a track with nothing in
36
+ * **One value and not the four.** `ghost` would leave a track with nothing in
37
37
  * it, which is not a quiet reading but an absent one. `outlined` is the
38
- * interesting refusal: `BarChart` makes it work by keeping the area and fading
39
- * it toward the page, so an outlined column still encodes its value, and the
40
- * reason it earns the value there is that a chart has other series for the
41
- * outlined one to be a *different kind of fact from* (a forecast, a target,
42
- * a budget). A progress bar is alone in its region and has nothing to differ from, so an outline there costs legibility and buys no distinction. `solid` is the resting state and is written by not
43
- * writing it, per the rule that a reflected property takes no default.
38
+ * interesting refusal: `BarChart` earns it by keeping the area and fading it
39
+ * toward the page, so an outlined column still encodes its value and stands as
40
+ * a *different kind of fact* from the series beside it (a forecast, a target,
41
+ * a budget). A progress bar is alone in its region and has nothing to differ
42
+ * from, so an outline there costs legibility and buys no distinction. `solid`
43
+ * is the resting state and is written by not writing it, per the rule that a
44
+ * reflected property takes no default.
44
45
  * @cssproperty --progress-size - Thickness of the bar.
45
46
  * @cssproperty --progress-track-color - Fill of the part that is not.
46
47
  */
@@ -1,4 +1,4 @@
1
- // Generated from src/qr-code/root/qr-code-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/qr-code/root/qr-code-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  --_qr-size: var(--qr-code-size, 12rem);
@@ -5,7 +5,7 @@ import type { CSSResultGroup } from 'lit';
5
5
  *
6
6
  * @description
7
7
  * The picture is the headless tier's. What this adds is a size that can be set
8
- * once, the colours a scanner needs, and the box that holds a center mark.
8
+ * once, the colors a scanner needs, and the box that holds a center mark.
9
9
  *
10
10
  * **The ink is `currentColor` and the ground is a real fill.** A code has to be
11
11
  * dark on light to read, and the pair that guarantees it is not the page's
@@ -12,7 +12,7 @@ import { styles } from './qr-code-root.css.js';
12
12
  *
13
13
  * @description
14
14
  * The picture is the headless tier's. What this adds is a size that can be set
15
- * once, the colours a scanner needs, and the box that holds a center mark.
15
+ * once, the colors a scanner needs, and the box that holds a center mark.
16
16
  *
17
17
  * **The ink is `currentColor` and the ground is a real fill.** A code has to be
18
18
  * dark on light to read, and the pair that guarantees it is not the page's
@@ -1,4 +1,4 @@
1
- // Generated from src/quote/root/quote-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/quote/root/quote-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: inline;
@@ -1,4 +1,4 @@
1
- // Generated from src/radio/group/radio-group.css by `bun run styles`. Do not edit.
1
+ // Generated from src/radio/group/radio-group.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: flex;
@@ -1,4 +1,4 @@
1
- // Generated from src/radio/root/radio-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/radio/root/radio-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;
@@ -72,13 +72,6 @@ font-weight: var(--helix-weight-medium);
72
72
  line-height: var(--helix-leading-tight);
73
73
  }
74
74
 
75
- @media (prefers-reduced-motion: reduce) {
76
- [part="mark"],
77
- [part="box"] {
78
- transition: none;
79
- }
80
- }
81
-
82
75
  :host([variant="card"]) {
83
76
  display: block;
84
77
  }
@@ -127,12 +120,6 @@ margin-block-start: calc(
127
120
  display: none;
128
121
  }
129
122
 
130
- @media (prefers-reduced-motion: reduce) {
131
- :host([variant="card"]) [part="item"] {
132
- transition: none;
133
- }
134
- }
135
-
136
123
  :host([variant="chip"]) [part="box"] {
137
124
  display: none;
138
125
  }
@@ -30,21 +30,6 @@ import type { CSSResultGroup } from 'lit';
30
30
  */
31
31
  export declare class HelixRadio extends HelixHeadlessRadio {
32
32
  static styles: CSSResultGroup;
33
- /**
34
- * How the choice presents itself.
35
- *
36
- * - `plain` is the default and is never written: a circle beside its words,
37
- * which is what a list of choices should be almost always.
38
- * - `card` puts it in a bounded surface, for options that need room to
39
- * explain themselves: a description, an icon, a price. It is the half a
40
- * `data-card` link cannot do, because a link reports no value and belongs
41
- * to no group, so a card that is genuinely an answer has to be this.
42
- *
43
- * The circle stays in both. A card whose only marker was its own border would
44
- * ask a reader to compare surfaces across a row to find the answer, and would
45
- * leave nothing for a high-contrast display.
46
- */
47
- variant?: 'chip' | 'plain' | 'card';
48
33
  /**
49
34
  * Takes the circle away, leaving the card as the whole control.
50
35
  *
@@ -56,15 +41,32 @@ export declare class HelixRadio extends HelixHeadlessRadio {
56
41
  * reported to a screen reader, and still the thing a form submits.
57
42
  *
58
43
  * Safe because the card already carries the answer in its surface, a raised
59
- * fill inside a primary edge and a three-pixel ring of it. That ring is
60
- * recent, and before it there was nothing left saying which card was chosen,
61
- * which is why this is a property now and could not have been one then.
44
+ * fill inside a primary edge and a three-pixel ring of it. Without that ring
45
+ * nothing would be left saying which card was chosen.
62
46
  *
63
47
  * Not on `Checkbox`, deliberately. A radio card with no circle is still
64
48
  * unmistakably one-of-many because its siblings behave that way; a checkbox
65
49
  * card with no box loses the only thing that says you may pick several.
66
50
  */
67
51
  hideControl: boolean;
52
+ /**
53
+ * How the choice presents itself.
54
+ *
55
+ * - `plain` is the default and is never written: a circle beside its words,
56
+ * which is what a list of choices should be almost always.
57
+ * - `card` puts it in a bounded surface, for options that need room to
58
+ * explain themselves: a description, an icon, a price. It is the half a
59
+ * `data-card` link cannot do, because a link reports no value and belongs
60
+ * to no group, so a card that is genuinely an answer has to be this.
61
+ * - `chip` is the answer as its own small surface, for a row of short
62
+ * choices read at a glance. It hides the circle, the surface being the
63
+ * whole mark, which is why `hide-control` says it is unnecessary here.
64
+ *
65
+ * The circle stays in both. A card whose only marker was its own border would
66
+ * ask a reader to compare surfaces across a row to find the answer, and would
67
+ * leave nothing for a high-contrast display.
68
+ */
69
+ variant?: 'chip' | 'plain' | 'card';
68
70
  }
69
71
  declare global {
70
72
  interface HTMLElementTagNameMap {
@@ -50,9 +50,8 @@ let HelixRadio = class HelixRadio extends HelixHeadlessRadio {
50
50
  * reported to a screen reader, and still the thing a form submits.
51
51
  *
52
52
  * Safe because the card already carries the answer in its surface, a raised
53
- * fill inside a primary edge and a three-pixel ring of it. That ring is
54
- * recent, and before it there was nothing left saying which card was chosen,
55
- * which is why this is a property now and could not have been one then.
53
+ * fill inside a primary edge and a three-pixel ring of it. Without that ring
54
+ * nothing would be left saying which card was chosen.
56
55
  *
57
56
  * Not on `Checkbox`, deliberately. A radio card with no circle is still
58
57
  * unmistakably one-of-many because its siblings behave that way; a checkbox
@@ -62,12 +61,12 @@ let HelixRadio = class HelixRadio extends HelixHeadlessRadio {
62
61
  }
63
62
  static { this.styles = styles; }
64
63
  };
65
- __decorate([
66
- property({ reflect: true })
67
- ], HelixRadio.prototype, "variant", void 0);
68
64
  __decorate([
69
65
  property({ attribute: 'hide-control', reflect: true, type: Boolean })
70
66
  ], HelixRadio.prototype, "hideControl", void 0);
67
+ __decorate([
68
+ property({ reflect: true })
69
+ ], HelixRadio.prototype, "variant", void 0);
71
70
  HelixRadio = __decorate([
72
71
  customElement('helix-radio')
73
72
  ], HelixRadio);
@@ -1,4 +1,4 @@
1
- // Generated from src/rating/root/rating-root.css by `bun run styles`. Do not edit.
1
+ // Generated from src/rating/root/rating-root.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
 
@@ -37,11 +37,10 @@ export declare class HelixRating extends HelixHeadlessRating {
37
37
  * *different* drawings is a set of choices rather than a quantity: that is
38
38
  * `Radio.Group`, whose options already carry a value and a name each.
39
39
  *
40
- * **Undefaulted, because it reflects.** Defaulted to `marks` it wrote
41
- * `appearance="marks"` onto every rating the server rendered, which React
42
- * held no prop for and reported as a hydration mismatch. The stylesheet was
43
- * already written the right way round, naming only `dots`, so marks is what
44
- * an unset one draws and nothing else had to move.
40
+ * **Undefaulted, because it reflects.** A default of `marks` writes
41
+ * `appearance="marks"` onto every server-rendered rating, which React holds no
42
+ * prop for and reports as a hydration mismatch. The stylesheet names only
43
+ * `dots`, so an unset one draws marks anyway.
45
44
  */
46
45
  variant?: 'dots' | 'marks';
47
46
  }
@@ -1,4 +1,4 @@
1
- // Generated from src/sandbox/preview/sandbox-preview.css by `bun run styles`. Do not edit.
1
+ // Generated from src/sandbox/preview/sandbox-preview.css by `turbo run styles`. Do not edit.
2
2
  import { createSheet } from '@fusion.dev/helix-core';
3
3
  export const styles = createSheet(`:host {
4
4
  display: block;