@fusion.dev/helix 0.2.0 → 0.3.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 (270) hide show
  1. package/custom-elements.json +256 -256
  2. package/dist/accordion/item/accordion-item.css.js +0 -1
  3. package/dist/accordion/item/accordion-item.js +0 -29
  4. package/dist/accordion/root/accordion-root.css.js +0 -1
  5. package/dist/accordion/root/accordion-root.js +0 -20
  6. package/dist/announcement/root/announcement-root.css.js +0 -1
  7. package/dist/announcement/root/announcement-root.js +0 -16
  8. package/dist/app-header/root/app-header-root.css.js +0 -1
  9. package/dist/app-header/root/app-header-root.js +0 -45
  10. package/dist/aura/root/aura-axis.js +0 -58
  11. package/dist/aura/root/aura-root.css.js +0 -1
  12. package/dist/aura/root/aura-root.js +0 -520
  13. package/dist/aura/root/aura-shader.js +0 -35
  14. package/dist/avatar/group/avatar-group.css.js +0 -1
  15. package/dist/avatar/group/avatar-group.js +0 -24
  16. package/dist/avatar/root/avatar-root.css.js +0 -1
  17. package/dist/avatar/root/avatar-root.js +0 -23
  18. package/dist/badge/root/badge-root.css.js +0 -1
  19. package/dist/badge/root/badge-root.d.ts +2 -6
  20. package/dist/badge/root/badge-root.js +0 -18
  21. package/dist/bar-chart/root/bar-chart-root.css.js +0 -1
  22. package/dist/bar-chart/root/bar-chart-root.js +0 -50
  23. package/dist/blockquote/root/blockquote-root.css.js +0 -1
  24. package/dist/blockquote/root/blockquote-root.js +0 -17
  25. package/dist/breadcrumbs/breadcrumb/breadcrumb.css.js +0 -1
  26. package/dist/breadcrumbs/breadcrumb/breadcrumb.js +0 -28
  27. package/dist/breadcrumbs/root/breadcrumbs-root.css.js +0 -1
  28. package/dist/breadcrumbs/root/breadcrumbs-root.js +0 -19
  29. package/dist/button/root/button-root.css.js +0 -1
  30. package/dist/button/root/button-root.js +0 -38
  31. package/dist/button-group/root/button-group-root.css.js +0 -1
  32. package/dist/button-group/root/button-group-root.js +0 -24
  33. package/dist/callout/root/callout-root.css.js +0 -1
  34. package/dist/callout/root/callout-root.js +0 -26
  35. package/dist/card/root/card-root.css.js +0 -1
  36. package/dist/card/root/card-root.js +0 -45
  37. package/dist/carousel/root/carousel-root.css.js +0 -1
  38. package/dist/carousel/root/carousel-root.js +0 -24
  39. package/dist/chat/composer/chat-composer.css.js +0 -1
  40. package/dist/chat/composer/chat-composer.js +0 -26
  41. package/dist/chat/message/chat-message.css.js +0 -1
  42. package/dist/chat/message/chat-message.js +0 -29
  43. package/dist/chat/root/chat-root.css.js +0 -1
  44. package/dist/chat/root/chat-root.js +0 -38
  45. package/dist/checkbox/root/checkbox-root.css.js +0 -1
  46. package/dist/checkbox/root/checkbox-root.js +0 -26
  47. package/dist/checkbox-group/root/checkbox-group-root.css.js +0 -1
  48. package/dist/checkbox-group/root/checkbox-group-root.js +0 -15
  49. package/dist/code/root/code-root.css.js +0 -1
  50. package/dist/code/root/code-root.js +0 -21
  51. package/dist/code-block/root/code-block-root.css.js +0 -1
  52. package/dist/code-block/root/code-block-root.js +0 -19
  53. package/dist/color-input/root/color-input-root.css.js +0 -1
  54. package/dist/color-input/root/color-input-root.js +0 -42
  55. package/dist/color-picker/root/color-picker-root.css.js +0 -1
  56. package/dist/color-picker/root/color-picker-root.js +0 -42
  57. package/dist/combobox/root/combobox-root.css.js +0 -1
  58. package/dist/combobox/root/combobox-root.js +0 -28
  59. package/dist/command/root/command-root.css.js +0 -1
  60. package/dist/command/root/command-root.js +0 -21
  61. package/dist/copy-button/root/copy-button-root.css.js +0 -1
  62. package/dist/copy-button/root/copy-button-root.js +0 -14
  63. package/dist/data-table/root/data-table-root.css.js +0 -1
  64. package/dist/data-table/root/data-table-root.js +0 -39
  65. package/dist/date-input/root/date-input-root.css.js +0 -1
  66. package/dist/date-input/root/date-input-root.js +0 -38
  67. package/dist/date-picker/root/date-picker-root.css.js +0 -1
  68. package/dist/date-picker/root/date-picker-root.js +0 -28
  69. package/dist/dialog/root/dialog-root.css.js +0 -1
  70. package/dist/dialog/root/dialog-root.js +0 -31
  71. package/dist/divider/root/divider-root.css.js +0 -1
  72. package/dist/divider/root/divider-root.js +0 -24
  73. package/dist/donut-chart/root/donut-chart-root.css.js +0 -1
  74. package/dist/donut-chart/root/donut-chart-root.js +0 -49
  75. package/dist/drawer/root/drawer-root.css.js +0 -1
  76. package/dist/drawer/root/drawer-root.js +0 -38
  77. package/dist/drilldown/item/drilldown-item.css.js +0 -1
  78. package/dist/drilldown/item/drilldown-item.js +0 -15
  79. package/dist/drilldown/root/drilldown-root.css.js +0 -1
  80. package/dist/drilldown/root/drilldown-root.js +0 -23
  81. package/dist/element-events.generated.js +0 -5
  82. package/dist/empty/root/empty-root.css.js +0 -1
  83. package/dist/empty/root/empty-root.js +0 -16
  84. package/dist/file-input/root/file-input-root.css.js +0 -1
  85. package/dist/file-input/root/file-input-root.js +0 -30
  86. package/dist/flex/root/flex-root.css.js +0 -1
  87. package/dist/flex/root/flex-root.js +0 -32
  88. package/dist/format-date/root/format-date-root.css.js +0 -1
  89. package/dist/format-date/root/format-date-root.js +0 -17
  90. package/dist/grid/root/grid-root.css.js +0 -1
  91. package/dist/grid/root/grid-root.js +0 -69
  92. package/dist/heatmap/root/heatmap-root.css.js +0 -1
  93. package/dist/heatmap/root/heatmap-root.d.ts +9 -11
  94. package/dist/heatmap/root/heatmap-root.js +0 -73
  95. package/dist/icon/glyph.css.js +0 -1
  96. package/dist/icon/root/icon-root.css.js +0 -1
  97. package/dist/icon/root/icon-root.js +0 -19
  98. package/dist/icon-button/root/icon-button-root.css.js +0 -1
  99. package/dist/icon-button/root/icon-button-root.js +0 -35
  100. package/dist/image/root/image-root.css.js +0 -1
  101. package/dist/image/root/image-root.js +0 -28
  102. package/dist/index.js +0 -5
  103. package/dist/input/root/input-root.css.js +0 -1
  104. package/dist/input/root/input-root.js +0 -28
  105. package/dist/kbd/root/kbd-root.css.js +0 -1
  106. package/dist/kbd/root/kbd-root.js +0 -20
  107. package/dist/legend/root/legend-root.css.js +0 -1
  108. package/dist/legend/root/legend-root.js +0 -35
  109. package/dist/line-chart/root/line-chart-root.css.js +0 -1
  110. package/dist/line-chart/root/line-chart-root.js +0 -47
  111. package/dist/list/item/list-item.css.js +0 -1
  112. package/dist/list/item/list-item.js +0 -38
  113. package/dist/list/root/list-root.css.js +0 -1
  114. package/dist/list/root/list-root.js +0 -23
  115. package/dist/listbox/root/listbox-root.css.js +0 -1
  116. package/dist/listbox/root/listbox-root.js +0 -22
  117. package/dist/loader/root/loader-root.css.js +0 -1
  118. package/dist/loader/root/loader-root.js +0 -19
  119. package/dist/megamenu/root/megamenu-root.css.js +0 -1
  120. package/dist/megamenu/root/megamenu-root.js +0 -24
  121. package/dist/menu/item/menu-item.css.js +0 -1
  122. package/dist/menu/item/menu-item.js +0 -16
  123. package/dist/menu/root/menu-root.css.js +0 -1
  124. package/dist/menu/root/menu-root.js +0 -26
  125. package/dist/meter/root/meter-root.css.js +0 -1
  126. package/dist/meter/root/meter-root.js +0 -50
  127. package/dist/mixins/mixin-control-surface/mixin-control-surface.js +0 -3
  128. package/dist/navigation/root/navigation-root.css.js +0 -1
  129. package/dist/navigation/root/navigation-root.js +0 -18
  130. package/dist/notifications/notification/notification.css.js +0 -1
  131. package/dist/notifications/notification/notification.js +0 -53
  132. package/dist/notifications/root/notifications-root.css.js +0 -1
  133. package/dist/notifications/root/notifications-root.js +0 -31
  134. package/dist/number-input/root/number-input-root.css.js +0 -1
  135. package/dist/number-input/root/number-input-root.js +0 -31
  136. package/dist/option/group/option-group.css.js +0 -1
  137. package/dist/option/group/option-group.js +0 -13
  138. package/dist/option/root/option-root.css.js +0 -1
  139. package/dist/option/root/option-root.js +0 -20
  140. package/dist/outline/root/outline-root.css.js +0 -1
  141. package/dist/outline/root/outline-root.js +0 -21
  142. package/dist/pagination/root/pagination-root.css.js +0 -1
  143. package/dist/pagination/root/pagination-root.js +0 -49
  144. package/dist/pagination/size/pagination-size.css.js +0 -1
  145. package/dist/pagination/size/pagination-size.js +0 -25
  146. package/dist/pagination/summary/pagination-summary.css.js +0 -1
  147. package/dist/pagination/summary/pagination-summary.js +0 -13
  148. package/dist/pin-input/root/pin-input-root.css.js +0 -1
  149. package/dist/pin-input/root/pin-input-root.js +0 -27
  150. package/dist/popover/root/popover-root.css.js +0 -1
  151. package/dist/popover/root/popover-root.js +0 -30
  152. package/dist/progress/root/progress-root.css.js +0 -1
  153. package/dist/progress/root/progress-root.js +0 -25
  154. package/dist/qr-code/root/qr-code-root.css.js +0 -1
  155. package/dist/qr-code/root/qr-code-root.js +0 -27
  156. package/dist/quote/root/quote-root.css.js +0 -1
  157. package/dist/quote/root/quote-root.js +0 -15
  158. package/dist/radio/group/radio-group.css.js +0 -1
  159. package/dist/radio/group/radio-group.js +0 -16
  160. package/dist/radio/root/radio-root.css.js +0 -1
  161. package/dist/radio/root/radio-root.js +0 -46
  162. package/dist/rating/root/rating-root.css.js +0 -1
  163. package/dist/rating/root/rating-root.js +0 -22
  164. package/dist/sandbox/index.js +0 -14
  165. package/dist/sandbox/preview/sandbox-preview.css.js +0 -1
  166. package/dist/sandbox/preview/sandbox-preview.js +0 -182
  167. package/dist/sandbox/root/sandbox-root.css.js +0 -1
  168. package/dist/sandbox/root/sandbox-root.js +1 -295
  169. package/dist/sandbox/source/sandbox-source.css.js +0 -1
  170. package/dist/sandbox/source/sandbox-source.js +0 -77
  171. package/dist/sandbox/status-bar/sandbox-status-bar.css.js +0 -1
  172. package/dist/sandbox/status-bar/sandbox-status-bar.js +0 -38
  173. package/dist/sandbox/terminal/sandbox-terminal.css.js +0 -1
  174. package/dist/sandbox/terminal/sandbox-terminal.js +0 -54
  175. package/dist/sandbox/toolbar/sandbox-toolbar.css.js +0 -1
  176. package/dist/sandbox/toolbar/sandbox-toolbar.js +0 -29
  177. package/dist/scroll-area/root/scroll-area-root.css.js +0 -1
  178. package/dist/scroll-area/root/scroll-area-root.js +0 -24
  179. package/dist/select/root/select-root.css.js +0 -1
  180. package/dist/select/root/select-root.js +0 -33
  181. package/dist/shared/chart/series.css.js +0 -1
  182. package/dist/shared/chart/terminus.css.js +0 -1
  183. package/dist/shared/field/field-inline.css.js +0 -1
  184. package/dist/shared/field/field-stacked.css.js +0 -1
  185. package/dist/shared/field/field.css.js +0 -1
  186. package/dist/skeleton/root/skeleton-root.css.js +0 -1
  187. package/dist/skeleton/root/skeleton-root.js +0 -18
  188. package/dist/slider/root/slider-root.css.js +0 -1
  189. package/dist/slider/root/slider-root.js +0 -32
  190. package/dist/sparkline/root/sparkline-root.css.js +0 -1
  191. package/dist/sparkline/root/sparkline-root.js +0 -40
  192. package/dist/speed-dial/item/speed-dial-item.css.js +0 -1
  193. package/dist/speed-dial/item/speed-dial-item.js +0 -16
  194. package/dist/speed-dial/root/speed-dial-root.css.js +0 -1
  195. package/dist/speed-dial/root/speed-dial-root.js +0 -16
  196. package/dist/splitter/root/splitter-root.css.js +0 -1
  197. package/dist/splitter/root/splitter-root.js +0 -50
  198. package/dist/stat/group/stat-group.css.js +0 -1
  199. package/dist/stat/group/stat-group.js +0 -19
  200. package/dist/stat/root/stat-root.css.js +0 -1
  201. package/dist/stat/root/stat-root.js +0 -17
  202. package/dist/steps/root/steps-root.css.js +0 -1
  203. package/dist/steps/root/steps-root.js +0 -26
  204. package/dist/steps/step/step.css.js +0 -1
  205. package/dist/steps/step/step.js +0 -12
  206. package/dist/switch/root/switch-root.css.js +0 -1
  207. package/dist/switch/root/switch-root.js +0 -32
  208. package/dist/table/cell/table-cell.css.js +0 -1
  209. package/dist/table/cell/table-cell.js +0 -14
  210. package/dist/table/column/table-column.css.js +0 -1
  211. package/dist/table/column/table-column.js +0 -13
  212. package/dist/table/root/table-root.css.js +0 -1
  213. package/dist/table/root/table-root.js +0 -19
  214. package/dist/table/row/table-row.css.js +0 -1
  215. package/dist/table/row/table-row.js +0 -14
  216. package/dist/tabs/panel/tab-panel.css.js +0 -1
  217. package/dist/tabs/panel/tab-panel.js +0 -16
  218. package/dist/tabs/root/tabs-root.css.js +0 -1
  219. package/dist/tabs/root/tabs-root.js +0 -19
  220. package/dist/tabs/tab/tab.css.js +0 -1
  221. package/dist/tabs/tab/tab.js +0 -16
  222. package/dist/tag/root/tag-root.css.js +0 -1
  223. package/dist/tag/root/tag-root.js +0 -25
  224. package/dist/text/root/text-root.css.js +0 -1
  225. package/dist/text/root/text-root.js +0 -48
  226. package/dist/textarea/root/textarea-root.css.js +0 -1
  227. package/dist/textarea/root/textarea-root.js +0 -17
  228. package/dist/time-input/root/time-input-root.css.js +0 -1
  229. package/dist/time-input/root/time-input-root.js +0 -31
  230. package/dist/time-picker/root/time-picker-root.css.js +0 -1
  231. package/dist/time-picker/root/time-picker-root.js +0 -29
  232. package/dist/timeline/item/timeline-item.css.js +0 -1
  233. package/dist/timeline/item/timeline-item.js +0 -17
  234. package/dist/timeline/root/timeline-root.css.js +0 -1
  235. package/dist/timeline/root/timeline-root.js +0 -15
  236. package/dist/toast/item/toast-item.css.js +0 -1
  237. package/dist/toast/item/toast-item.js +0 -21
  238. package/dist/toast/root/toast-root.css.js +0 -1
  239. package/dist/toast/root/toast-root.js +0 -27
  240. package/dist/toggle/group/toggle-group.css.js +0 -1
  241. package/dist/toggle/group/toggle-group.js +0 -25
  242. package/dist/toggle/root/toggle-root.css.js +0 -1
  243. package/dist/toggle/root/toggle-root.js +0 -18
  244. package/dist/toolbar/root/toolbar-root.css.js +0 -1
  245. package/dist/toolbar/root/toolbar-root.js +0 -19
  246. package/dist/tooltip/root/tooltip-root.css.js +0 -1
  247. package/dist/tooltip/root/tooltip-root.js +0 -22
  248. package/dist/tour/root/tour-root.css.js +0 -1
  249. package/dist/tour/root/tour-root.js +0 -14
  250. package/dist/tour/stop/tour-stop.css.js +0 -1
  251. package/dist/tour/stop/tour-stop.js +0 -22
  252. package/dist/tree/item/tree-item.css.js +0 -1
  253. package/dist/tree/item/tree-item.js +0 -34
  254. package/dist/tree/root/tree-root.css.js +0 -1
  255. package/dist/tree/root/tree-root.js +0 -27
  256. package/dist/trend/root/trend-root.css.js +0 -1
  257. package/dist/trend/root/trend-root.js +0 -34
  258. package/dist/video/root/video-root.css.js +0 -1
  259. package/dist/video/root/video-root.js +0 -37
  260. package/dist/video-playlist/item/video-playlist-item.css.js +0 -1
  261. package/dist/video-playlist/item/video-playlist-item.js +0 -15
  262. package/dist/video-playlist/menu/video-playlist-menu.css.js +0 -1
  263. package/dist/video-playlist/menu/video-playlist-menu.js +0 -36
  264. package/dist/video-playlist/root/video-playlist-root.css.js +0 -1
  265. package/dist/video-playlist/root/video-playlist-root.js +0 -16
  266. package/dist/virtual-list/root/virtual-list-root.css.js +0 -1
  267. package/dist/virtual-list/root/virtual-list-root.js +0 -21
  268. package/jsx.d.ts +1538 -2818
  269. package/package.json +7 -7
  270. package/vue.d.ts +3 -7
@@ -1,4 +1,3 @@
1
- // Generated from src/icon/glyph.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`[data-glyph] {
4
3
  block-size: var(--icon-size, var(--helix-size-icon));
@@ -1,4 +1,3 @@
1
- // Generated from src/icon/root/icon-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  block-size: var(--icon-size, var(--helix-size-icon));
@@ -7,25 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessIcon } from '@fusion.dev/helix-headless/icon';
9
9
  import { styles } from './icon-root.css.js';
10
- /**
11
- * @summary Renders a named icon from the Helix set.
12
- *
13
- * @description
14
- * Draws in `currentColor` and sizes from `--icon-size`, so an icon inherits the
15
- * color of the text it sits in and a container can resize it without reaching
16
- * for a prop. Inside a button that hook is set in `em`, which keeps the icon in
17
- * proportion as the button's own size changes.
18
- *
19
- * @since 0.1.0
20
- * @status stable
21
- * @category media
22
- * @aliases Glyph, Symbol
23
- * @documentation https://helix.fusion.dev/components/icon
24
- *
25
- * @csspart svg - The rendered SVG.
26
- *
27
- * @cssproperty --icon-size - Edge length of the icon's box.
28
- */
29
10
  let HelixIcon = class HelixIcon extends HelixHeadlessIcon {
30
11
  static { this.styles = styles; }
31
12
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/icon-button/root/icon-button-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: inline-flex;
@@ -9,44 +9,9 @@ import { HelixHeadlessIconButton } from '@fusion.dev/helix-headless/icon-button'
9
9
  import { property } from 'lit/decorators.js';
10
10
  import { MixinControlSurface } from '../../mixins/mixin-control-surface/mixin-control-surface.js';
11
11
  import { styles } from './icon-button-root.css.js';
12
- /**
13
- * @summary A square button whose content is an icon.
14
- *
15
- * @description
16
- * Top-level rather than `Button.Icon`, because a namespace means composition:
17
- * `Tabs.Tab` is part of a tab set, and an icon-only button is not part of a
18
- * button. It is a button with different content and a different shape, which
19
- * makes it its own component.
20
- *
21
- * `label` is not optional in practice. An icon-only control with no accessible
22
- * name is announced as "button" and nothing else, which is the single most
23
- * common way a toolbar becomes unusable without sight.
24
- *
25
- * @since 0.1.0
26
- * @status stable
27
- * @category actions
28
- * @aliases Icon button, Square button
29
- * @documentation https://helix.fusion.dev/components/icon-button
30
- *
31
- * @slot - The icon.
32
- *
33
- * @csspart button - The inner button or anchor.
34
- *
35
- * @cssproperty --icon-button-radius - Corner radius of the control, which a group flattens through `--button-radius-start` and `--button-radius-end`.
36
- * @cssproperty --icon-button-shadow - What it casts, where it is raised off the page.
37
- * @cssproperty --icon-button-size - Edge length of the control.
38
- */
39
12
  let HelixIconButton = class HelixIconButton extends MixinControlSurface(HelixHeadlessIconButton) {
40
13
  constructor() {
41
14
  super(...arguments);
42
- /**
43
- * Whether it is raised off the page it sits on.
44
- *
45
- * Separate from `shape`, because they are separate facts: a docked control is
46
- * raised whatever its outline, and a circle inside a toolbar is not raised at
47
- * all. Shadow rather than a border, since what is under a floating control is
48
- * the page and a line drawn on the page is not the same as being above it.
49
- */
50
15
  this.raised = false;
51
16
  }
52
17
  static { this.styles = styles; }
@@ -1,4 +1,3 @@
1
- // Generated from src/image/root/image-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  aspect-ratio: var(--image-aspect, auto);
@@ -8,37 +8,9 @@ import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessImage } from '@fusion.dev/helix-headless/image';
9
9
  import { property } from 'lit/decorators.js';
10
10
  import { styles } from './image-root.css.js';
11
- /**
12
- * @summary A picture that says whether it arrived.
13
- *
14
- * @description
15
- * Presentation only: the box the picture is given, how it fills it, and the
16
- * fade when it lands. What the three states are and when they change is the
17
- * base class.
18
- *
19
- * @since 0.1.0
20
- * @status experimental
21
- * @category media
22
- * @aliases Picture, Img, Figure
23
- * @documentation https://helix.fusion.dev/components/image
24
- *
25
- * @cssproperty --image-aspect - The ratio of the box, as `16 / 9`.
26
- * @cssproperty --image-fit - How the picture fills it.
27
- * @cssproperty --image-placeholder-color - The resting surface behind both stand-ins.
28
- * @cssproperty --image-position - Which part survives a crop.
29
- * @cssproperty --image-radius - Corner radius, under `rounded`.
30
- */
31
11
  let HelixImage = class HelixImage extends HelixHeadlessImage {
32
12
  constructor() {
33
13
  super(...arguments);
34
- /**
35
- * Whether the corners are cut.
36
- *
37
- * A boolean rather than a radius, because the radius is a token and the
38
- * question a consumer is answering is whether this picture is a card's
39
- * surface or a page's. `--image-radius` moves it for the case that is
40
- * neither.
41
- */
42
14
  this.rounded = false;
43
15
  }
44
16
  static { this.styles = styles; }
package/dist/index.js CHANGED
@@ -1,9 +1,4 @@
1
1
  import './element-events.generated.js';
2
- /**
3
- * Everything core exports, forwarded whole. See the note in `helix/headless`:
4
- * a hand-kept list drifts, and it drifts silently until a component happens to
5
- * declare a public member with a type nobody forwarded yet.
6
- */
7
2
  export * from '@fusion.dev/helix-core';
8
3
  export * from './accordion/index.js';
9
4
  export * from './announcement/index.js';
@@ -1,4 +1,3 @@
1
- // Generated from src/input/root/input-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: flex;
@@ -6,39 +6,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessInput } from '@fusion.dev/helix-headless/input';
9
- /* The clear and reveal buttons render one, and a custom element registers on
10
- import: a consumer importing this family alone would otherwise get an inert
11
- unknown element where the mark should be. */
12
9
  import '../../icon/index.js';
13
10
  import { styles as glyphStyles } from '../../icon/glyph.css.js';
14
11
  import { styles as fieldStyles } from '../../shared/field/field.css.js';
15
12
  import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
16
13
  import { styles } from './input-root.css.js';
17
- /**
18
- * @summary A single line of text a reader types into.
19
- *
20
- * @description
21
- * The frame is the field rather than the input, so anything slotted at either
22
- * end sits inside the same box as the text and the focus ring is drawn once,
23
- * around the whole control, instead of around a smaller box within it.
24
- *
25
- * The input itself is the native one, stripped rather than replaced, so the
26
- * caret, the selection, the autofill, and the keyboard a phone chooses are all
27
- * the platform's.
28
- *
29
- * Height comes from the region, like every other control: `data-density` on
30
- * whatever holds it, not a `size` here. Invalid styling waits for
31
- * `:user-invalid`, because a field is not wrong before anyone has filled it in.
32
- *
33
- * @since 0.1.0
34
- * @status experimental
35
- * @category forms
36
- * @aliases TextField, Field, TextInput
37
- * @documentation https://helix.fusion.dev/components/input
38
- *
39
- * @cssproperty --input-background-color - Fill behind the text.
40
- * @cssproperty --input-size - Height of the field.
41
- */
42
14
  let HelixInput = class HelixInput extends HelixHeadlessInput {
43
15
  static { this.styles = [glyphStyles, fieldStyles, fieldStackedStyles, styles]; }
44
16
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/kbd/root/kbd-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: inline-flex;
@@ -7,26 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessKbd } from '@fusion.dev/helix-headless/kbd';
9
9
  import { styles } from './kbd-root.css.js';
10
- /**
11
- * @summary A keyboard key or chord, set inline with text.
12
- *
13
- * @description
14
- * Drawn as a physical key: a hairline, a sunken fill, and one inset shadow
15
- * along the bottom edge that reads as depth without becoming a picture of a
16
- * key.
17
- *
18
- * Sized in `em`, so it stays proportional to whatever it is set inside rather
19
- * than holding one size and looking wrong in a heading.
20
- *
21
- * @since 0.1.0
22
- * @status stable
23
- * @category typography
24
- * @aliases Key, Shortcut, Hotkey
25
- * @documentation https://helix.fusion.dev/components/kbd
26
- *
27
- * @cssproperty --kbd-background-color - Fill of the key.
28
- * @cssproperty --kbd-border-color - Color of the hairline and the edge.
29
- */
30
10
  let HelixKbd = class HelixKbd extends HelixHeadlessKbd {
31
11
  static { this.styles = styles; }
32
12
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/legend/root/legend-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: block;
@@ -9,43 +9,8 @@ import { HelixHeadlessLegend } from '@fusion.dev/helix-headless/legend';
9
9
  import { property } from 'lit/decorators.js';
10
10
  import { styles as seriesStyles } from '../../shared/chart/series.css.js';
11
11
  import { styles } from './legend-root.css.js';
12
- /**
13
- * @summary The names a chart draws, each beside the color it is drawn in.
14
- *
15
- * @description
16
- * A row that wraps, because a legend sits under a chart as wide as the chart
17
- * and there is no arrangement of eight names that fits every width. Set
18
- * `--legend-direction` to `column` where it sits beside one instead.
19
- *
20
- * The eight series colors are mapped here rather than in the tier below, which
21
- * carries the index and holds no tokens. Eight rules, because an index in
22
- * markup cannot select a token and a custom property set inline would be the
23
- * headless tier naming a color.
24
- *
25
- * @since 0.1.0
26
- * @status experimental
27
- * @category charts
28
- * @groups charts
29
- * @aliases Key, Series Key
30
- * @documentation https://helix.fusion.dev/components/legend
31
- *
32
- * @cssproperty --legend-direction - `row`, which wraps, or `column`.
33
- * @cssproperty --legend-gap - Space between entries.
34
- * @cssproperty --legend-swatch-size - Size of the color patch.
35
- * @cssproperty --legend-swatch-stroke - Width of the edge an `outlined` or
36
- * `subtle` swatch is drawn with.
37
- */
38
12
  let HelixLegend = class HelixLegend extends HelixHeadlessLegend {
39
13
  static { this.styles = [seriesStyles, styles]; }
40
- /**
41
- * Marks each entry with the treatment its name was given.
42
- *
43
- * After the update rather than during it, because the entries are what the
44
- * tier below rendered and matching happens against the names it chose to show.
45
- * The same shape `BarChart.updated` uses on its bars, and for the same reason:
46
- * a per-series answer cannot be a selector, since CSS cannot match an
47
- * attribute against a list.
48
- */
49
14
  updated(changed) {
50
15
  super.updated(changed);
51
16
  const showing = this.names().map((name) => name.trim().toLowerCase());
@@ -1,4 +1,3 @@
1
- // Generated from src/line-chart/root/line-chart-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: grid;
@@ -11,54 +11,7 @@ import { styles as seriesStyles } from '../../shared/chart/series.css.js';
11
11
  import { styles as terminusStyles } from '../../shared/chart/terminus.css.js';
12
12
  import { styles } from './line-chart-root.css.js';
13
13
  import '../../tooltip/index.js';
14
- /**
15
- * @summary A series over time as a line, read from a table.
16
- *
17
- * @description
18
- * The lines take the series palette in order, so a chart of one is series one
19
- * and a chart of four is the first four, and a legend beside it maps the same
20
- * twenty-four.
21
- *
22
- * The stroke does not scale with the box. `preserveAspectRatio="none"` is what
23
- * lets one drawing fill a narrow card and a wide panel, and without
24
- * `vector-effect: non-scaling-stroke` the same line comes out hairline in the
25
- * first and heavy in the second. It rescues strokes and not geometry, which is
26
- * why the readings are joined by lines and marked by nothing: a circle in a
27
- * stretched coordinate space is an ellipse, and there is no vector-effect that
28
- * answers for a shape.
29
- *
30
- * @since 0.1.0
31
- * @status experimental
32
- * @category charts
33
- * @groups charts
34
- * @aliases Time Series, Trend Chart, Multi-line Chart
35
- * @documentation https://helix.fusion.dev/components/line-chart
36
- *
37
- * @cssproperty --line-chart-area-opacity - How much of a line's color its wash takes.
38
- * @cssproperty --line-chart-band-color - The slot the pointer is resting in.
39
- * @cssproperty --line-chart-block-size - Height of the drawing.
40
- * @cssproperty --line-chart-gap - Space between the drawing and its labels.
41
- * @cssproperty --line-chart-gridline-color - One rule across the plot, under `gridlines`.
42
- * @cssproperty --line-chart-width - Thickness of a line.
43
- */
44
14
  let HelixLineChart = class HelixLineChart extends HelixHeadlessLineChart {
45
- /**
46
- * **The styled tier, so the tooltip this renders is the styled one.**
47
- *
48
- * `tag()` builds a child's tag name from this prefix, and the base declares
49
- * `helix-headless-`. Every other styled component that renders a child
50
- * overrides it; the three charts that draw a tooltip did not, so a
51
- * `helix-bar-chart` on a page put a `helix-headless-tooltip` in its shadow
52
- * root: the behavior with none of the surface. What showed was the browser's
53
- * own popover defaults, a white 1.5px border, square corners, `0.25em` of
54
- * padding and the page's font size, which is why the reading bubble looked
55
- * like no other tooltip on the site.
56
- *
57
- * Measured before the fix: the chart's bubble computed
58
- * `border: 1.5px solid rgb(255, 255, 255)`, `border-radius: 0px`,
59
- * `padding: 3.5px`, `font-size: 14px`. The masthead's, a `helix-tooltip`,
60
- * had the component's own `none`, `radii-sm`, `2xs xs` and `text-xs`.
61
- */
62
15
  static { this.tier = 'helix-'; }
63
16
  static { this.styles = [seriesStyles, terminusStyles, styles]; }
64
17
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/list/item/list-item.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: block;
@@ -8,46 +8,8 @@ import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessListItem } from '@fusion.dev/helix-headless/list';
9
9
  import { html } from 'lit';
10
10
  import { styles } from './list-item.css.js';
11
- /**
12
- * @summary One row of a list.
13
- *
14
- * @description
15
- * A grid rather than a flex row, so the supporting text lines up under the
16
- * label rather than under the leading icon. The leading and trailing regions
17
- * hold their own width and the middle takes the rest.
18
- *
19
- * @since 0.1.0
20
- * @status stable
21
- * @aliases Row, Entry
22
- * @documentation https://helix.fusion.dev/components/list
23
- *
24
- * @csspart rail - The cell a railed list draws its number in.
25
- *
26
- * @cssproperty --list-item-padding - Padding inside the row.
27
- * @cssproperty --list-item-rail-content - What the rail cell shows. Written by the list.
28
- * @cssproperty --list-item-rail-display - Whether there is a rail at all. Written by the list.
29
- * @cssproperty --list-item-term-weight - Weight of a description list's term.
30
- */
31
11
  let HelixListItem = class HelixListItem extends HelixHeadlessListItem {
32
12
  static { this.styles = styles; }
33
- /**
34
- * The rail cell, which this tier can afford because it has a sheet.
35
- *
36
- * An element rather than `[part="row"]::before`, which could hold the same
37
- * counter. Generated content can only ever be a string, and this cell is the
38
- * one place a row's ordinal lives, so a consumer replacing it with a state
39
- * mark or a step glyph wants somewhere to put it. It is also a name: a part is
40
- * in `custom-elements.json` and a pseudo-element on another part is not, and a
41
- * hook nobody can find is a hook nobody uses.
42
- *
43
- * Always rendered, because a row cannot know whether its list asked for a
44
- * rail, and drawn `display: none` until the list says so. *Absent* and not
45
- * *empty*: an empty box is free to layout and is not free to the native
46
- * marker, which aligns to the first line box it can see. Measured against the
47
- * same tree without it, every row and label sat on the identical pixel and 178
48
- * pixels of the markers on a plain ordered list moved, which is a retaken
49
- * baseline for a feature that list is not using.
50
- */
51
13
  renderRail() {
52
14
  return html `<span part="rail"></span>`;
53
15
  }
@@ -1,4 +1,3 @@
1
- // Generated from src/list/root/list-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: flex;
@@ -8,32 +8,9 @@ import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessList } from '@fusion.dev/helix-headless/list';
9
9
  import { property } from 'lit/decorators.js';
10
10
  import { styles } from './list-root.css.js';
11
- /**
12
- * @summary A set of rows, read as a set.
13
- *
14
- * @description
15
- * Rules between rows rather than around each one, so a list reads as one object
16
- * with divisions instead of as a stack of cards. `divided` is off by default,
17
- * because space alone separates rows perfectly well and a rule at every seam is
18
- * decoration doing what emptiness already does.
19
- *
20
- * @since 0.1.0
21
- * @status stable
22
- * @category data
23
- * @aliases Rows, Stack, Menu
24
- * @documentation https://helix.fusion.dev/components/list
25
- *
26
- * @cssproperty --list-gap - Space between rows.
27
- * @cssproperty --list-marker-gutter - Room the ordered and unordered markers hang into.
28
- * @cssproperty --list-rail-inline-size - The width of the rail's track.
29
- * @cssproperty --list-rail-style - What a rail counts with. Any `list-style-type`.
30
- */
31
11
  let HelixList = class HelixList extends HelixHeadlessList {
32
12
  constructor() {
33
13
  super(...arguments);
34
- /**
35
- * Whether a rule sits between rows.
36
- */
37
14
  this.divided = false;
38
15
  }
39
16
  static { this.styles = styles; }
@@ -1,4 +1,3 @@
1
- // Generated from src/listbox/root/listbox-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: flex;
@@ -9,28 +9,6 @@ import { HelixHeadlessListbox } from '@fusion.dev/helix-headless/listbox';
9
9
  import { styles as fieldStyles } from '../../shared/field/field.css.js';
10
10
  import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
11
11
  import { styles } from './listbox-root.css.js';
12
- /**
13
- * @summary A list of options, one or several of which are the answer.
14
- *
15
- * @description
16
- * A framed, scrolling list with the field's three parts around it. The frame is
17
- * the list rather than the host, so a filter that empties it leaves a box with
18
- * a message in it rather than a border collapsing to nothing.
19
- *
20
- * `--listbox-max-block-size` is what makes it scroll rather than run down the
21
- * page. The keyboard brings the active option into that box itself, so a long
22
- * list moves under the reader rather than the reader moving to find it.
23
- *
24
- * @since 0.1.0
25
- * @status experimental
26
- * @category forms
27
- * @aliases Options, Select list
28
- * @documentation https://helix.fusion.dev/components/listbox
29
- *
30
- * @cssproperty --listbox-background-color - The panel's fill. `transparent` where the list is already inside one.
31
- * @cssproperty --listbox-border - The panel's border, as a shorthand. `none` where the list is already inside one.
32
- * @cssproperty --listbox-max-block-size - How tall it gets before it scrolls.
33
- */
34
12
  let HelixListbox = class HelixListbox extends HelixHeadlessListbox {
35
13
  static { this.styles = [fieldStyles, fieldStackedStyles, styles]; }
36
14
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/loader/root/loader-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  color: inherit;
@@ -8,25 +8,6 @@ import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessLoader } from '@fusion.dev/helix-headless/loader';
9
9
  import { property } from 'lit/decorators.js';
10
10
  import { styles } from './loader-root.css.js';
11
- /**
12
- * @summary Says that something indeterminate is in progress.
13
- *
14
- * @description
15
- * Sized in `em`, so it matches whatever text it sits beside without being told.
16
- * The color is `currentColor` for the same reason: a loader inside a primary
17
- * button is on the accent, and one in body copy is not, and neither should have
18
- * to say so.
19
- *
20
- * @since 0.1.0
21
- * @status stable
22
- * @category feedback
23
- * @aliases Spinner, Busy, Activity
24
- * @documentation https://helix.fusion.dev/components/loader
25
- *
26
- * @cssproperty --loader-color - Color of the moving arc.
27
- * @cssproperty --loader-size - Diameter. Defaults to 1.5em.
28
- * @cssproperty --loader-track-color - Color of the circle behind it.
29
- */
30
11
  let HelixLoader = class HelixLoader extends HelixHeadlessLoader {
31
12
  static { this.styles = styles; }
32
13
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/megamenu/root/megamenu-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: inline-flex;
@@ -7,30 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessMegamenu } from '@fusion.dev/helix-headless/megamenu';
9
9
  import { styles } from './megamenu-root.css.js';
10
- /**
11
- * @summary A section of a navigation that opens a panel of destinations.
12
- *
13
- * @description
14
- * Presentation only: the trigger, and the panel it opens as a grid of columns.
15
- * Everything about what opens it and what closes it is the base class.
16
- *
17
- * @since 0.1.0
18
- * @status experimental
19
- * @category navigation
20
- * @aliases Mega menu, Flyout, Nav panel
21
- * @documentation https://helix.fusion.dev/components/megamenu
22
- *
23
- * @cssproperty --megamenu-backdrop - A filter behind the panel, for glass.
24
- * @cssproperty --megamenu-background-color - The panel's own fill.
25
- * @cssproperty --megamenu-border-width - Width of the panel's edge. Follows
26
- * `--helix-border-floating`, which is `0`, so the panel is told apart by its lift unless a
27
- * theme says otherwise.
28
- * @cssproperty --megamenu-column-size - The narrowest a column goes before the grid wraps.
29
- * @cssproperty --megamenu-full-size - How wide the band's contents may get, centered in it.
30
- * @cssproperty --megamenu-shadow - Lift under the panel. Follows `--helix-shadow-floating`: a
31
- * floating surface sits over content nobody can predict, so it keeps a lift by default.
32
- * @cssproperty --megamenu-size - How wide the panel may get.
33
- */
34
10
  let HelixMegamenu = class HelixMegamenu extends HelixHeadlessMegamenu {
35
11
  static { this.styles = styles; }
36
12
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/menu/item/menu-item.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: block;
@@ -7,22 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessMenuItem } from '@fusion.dev/helix-headless/menu';
9
9
  import { styles } from './menu-item.css.js';
10
- /**
11
- * @summary One row in a menu: a command, a choice, or a way into a submenu.
12
- *
13
- * @description
14
- * The tick and the arrow hold their space whether or not they are showing, so
15
- * the labels in a menu start at one place and the rows read as a column rather
16
- * than as a ragged list.
17
- *
18
- * @since 0.1.0
19
- * @status experimental
20
- * @aliases Menu option, Menu row
21
- * @documentation https://helix.fusion.dev/components/menu
22
- *
23
- * @cssproperty --menu-item-hover-color - Fill under the pointer.
24
- * @cssproperty --menu-item-start - Width of the leading column, for a row carrying more than a mark.
25
- */
26
10
  let HelixMenuItem = class HelixMenuItem extends HelixHeadlessMenuItem {
27
11
  static { this.styles = styles; }
28
12
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/menu/root/menu-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
 
@@ -7,32 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { customElement } from '@fusion.dev/helix-core';
8
8
  import { HelixHeadlessMenu } from '@fusion.dev/helix-headless/menu';
9
9
  import { styles } from './menu-root.css.js';
10
- /**
11
- * @summary A menu of commands, opened from a trigger.
12
- *
13
- * @description
14
- * The surface is in the top layer, so it needs no `z-index` and cannot be
15
- * clipped by whatever it sits inside.
16
- *
17
- * A submenu replaces the page rather than opening beside it, so the panel stays
18
- * one panel and reads the same on a phone as on a desk.
19
- *
20
- * @since 0.1.0
21
- * @status experimental
22
- * @category overlays
23
- * @aliases Dropdown, Action menu
24
- * @documentation https://helix.fusion.dev/components/menu
25
- *
26
- * @cssproperty --menu-background-color - Fill of the surface.
27
- * @cssproperty --menu-border-color - Color of the panel's edge.
28
- * @cssproperty --menu-border-width - Width of the panel's edge. Follows
29
- * `--helix-border-floating`, which is `0`, so the panel is told apart by its lift unless a
30
- * theme says otherwise.
31
- * @cssproperty --menu-max-block-size - Tallest the surface grows before it scrolls.
32
- * @cssproperty --menu-min-inline-size - Narrowest the surface gets.
33
- * @cssproperty --menu-shadow - Lift under the panel. Follows `--helix-shadow-floating`: a
34
- * floating surface sits over content nobody can predict, so it keeps a lift by default.
35
- */
36
10
  let HelixMenu = class HelixMenu extends HelixHeadlessMenu {
37
11
  static { this.styles = styles; }
38
12
  };
@@ -1,4 +1,3 @@
1
- // Generated from src/meter/root/meter-root.css by `turbo run styles`. Do not edit.
2
1
  import { createSheet } from '@fusion.dev/helix-core';
3
2
  export const styles = createSheet(`:host {
4
3
  display: block;