@fusion.dev/helix 0.145.0 → 0.147.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 (291) hide show
  1. package/custom-elements.json +13218 -3717
  2. package/dist/accordion/item/accordion-item.css.js +4 -92
  3. package/dist/accordion/item/accordion-item.d.ts +8 -0
  4. package/dist/accordion/root/accordion-root.css.js +2 -28
  5. package/dist/announcement/root/announcement-root.css.js +10 -154
  6. package/dist/announcement/root/announcement-root.d.ts +3 -0
  7. package/dist/app-header/root/app-header-root.css.js +2 -118
  8. package/dist/area-chart/root/area-chart-root.css.js +4 -94
  9. package/dist/area-chart/root/area-chart-root.d.ts +1 -0
  10. package/dist/aura/root/aura-root.css.js +2 -54
  11. package/dist/aura/root/aura-root.d.ts +21 -9
  12. package/dist/aura/root/aura-root.js +23 -12
  13. package/dist/avatar/group/avatar-group.css.js +5 -36
  14. package/dist/avatar/group/avatar-group.d.ts +3 -0
  15. package/dist/avatar/root/avatar-root.css.js +1 -53
  16. package/dist/avatar/root/avatar-root.d.ts +2 -0
  17. package/dist/badge/root/badge-root.css.js +17 -142
  18. package/dist/badge/root/badge-root.d.ts +20 -0
  19. package/dist/badge/root/badge-root.js +6 -0
  20. package/dist/bar-chart/root/bar-chart-root.css.js +8 -292
  21. package/dist/blockquote/root/blockquote-root.css.js +1 -43
  22. package/dist/blockquote/root/blockquote-root.d.ts +2 -0
  23. package/dist/breadcrumbs/breadcrumb/breadcrumb.css.js +13 -98
  24. package/dist/breadcrumbs/root/breadcrumbs-root.css.js +7 -21
  25. package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +18 -0
  26. package/dist/breadcrumbs/root/breadcrumbs-root.js +4 -0
  27. package/dist/button/root/button-root.css.js +16 -196
  28. package/dist/button/root/button-root.d.ts +3 -0
  29. package/dist/button-group/root/button-group-root.css.js +2 -52
  30. package/dist/callout/root/callout-root.css.js +5 -137
  31. package/dist/callout/root/callout-root.d.ts +8 -2
  32. package/dist/canvas/node/canvas-node.css.js +10 -367
  33. package/dist/canvas/root/canvas-root.css.js +7 -270
  34. package/dist/card/root/card-root.css.js +5 -134
  35. package/dist/card/root/card-root.d.ts +6 -0
  36. package/dist/carousel/root/carousel-root.css.js +20 -386
  37. package/dist/chat/composer/chat-composer.css.js +4 -105
  38. package/dist/chat/message/chat-message.css.js +5 -301
  39. package/dist/chat/message/chat-message.d.ts +5 -0
  40. package/dist/chat/message/chat-message.js +2 -1
  41. package/dist/chat/root/chat-root.css.js +5 -155
  42. package/dist/chat/root/chat-root.d.ts +2 -0
  43. package/dist/chat/root/chat-root.js +2 -1
  44. package/dist/chat/typing.css.d.ts +1 -0
  45. package/dist/chat/typing.css.js +25 -0
  46. package/dist/checkbox/root/checkbox-root.css.js +12 -162
  47. package/dist/checkbox/root/checkbox-root.d.ts +2 -1
  48. package/dist/checkbox-group/root/checkbox-group-root.css.js +1 -27
  49. package/dist/code/root/code-root.css.js +3 -25
  50. package/dist/code/root/code-root.d.ts +2 -0
  51. package/dist/code-block/root/code-block-root.css.js +9 -250
  52. package/dist/code-block/root/code-block-root.d.ts +2 -1
  53. package/dist/color-input/root/color-input-root.css.js +5 -104
  54. package/dist/color-picker/root/color-picker-root.css.js +39 -329
  55. package/dist/color-picker/root/color-picker-root.d.ts +3 -0
  56. package/dist/combobox/root/combobox-root.css.js +8 -147
  57. package/dist/command/root/command-root.css.js +3 -74
  58. package/dist/copy-button/root/copy-button-root.css.js +5 -36
  59. package/dist/copy-button/root/copy-button-root.d.ts +7 -0
  60. package/dist/data-table/root/data-table-root.css.js +24 -241
  61. package/dist/data-table/root/data-table-root.d.ts +12 -0
  62. package/dist/date-input/root/date-input-root.css.js +8 -93
  63. package/dist/date-picker/root/date-picker-root.css.js +16 -278
  64. package/dist/date-picker/root/date-picker-root.d.ts +1 -0
  65. package/dist/description-list/item/description-list-item.css.js +1 -41
  66. package/dist/description-list/item/description-list-item.d.ts +7 -0
  67. package/dist/description-list/root/description-list-root.css.js +1 -34
  68. package/dist/description-list/root/description-list-root.d.ts +1 -0
  69. package/dist/dialog/root/dialog-root.css.js +7 -221
  70. package/dist/dialog/root/dialog-root.d.ts +3 -0
  71. package/dist/divider/root/divider-root.css.js +6 -81
  72. package/dist/donut-chart/root/donut-chart-root.css.js +7 -174
  73. package/dist/donut-chart/root/donut-chart-root.d.ts +3 -0
  74. package/dist/drawer/root/drawer-root.css.js +14 -193
  75. package/dist/drawer/root/drawer-root.d.ts +5 -0
  76. package/dist/drilldown/item/drilldown-item.css.js +4 -51
  77. package/dist/drilldown/item/drilldown-item.d.ts +7 -0
  78. package/dist/drilldown/root/drilldown-root.css.js +8 -109
  79. package/dist/drilldown/root/drilldown-root.d.ts +10 -0
  80. package/dist/element-events.generated.js +19 -6
  81. package/dist/empty/root/empty-root.css.js +2 -42
  82. package/dist/file-input/root/file-input-root.css.js +7 -172
  83. package/dist/file-input/root/file-input-root.d.ts +15 -0
  84. package/dist/filter-input/chip/filter-chip.css.js +2 -84
  85. package/dist/filter-input/field/filter-field.css.js +1 -3
  86. package/dist/filter-input/menu/filter-menu.css.js +1 -3
  87. package/dist/filter-input/operator/filter-operator.css.js +1 -3
  88. package/dist/filter-input/root/filter-input-root.css.js +6 -112
  89. package/dist/filter-input/root/filter-input-root.d.ts +5 -0
  90. package/dist/flex/root/flex-root.css.js +4 -198
  91. package/dist/flex/root/flex-root.d.ts +19 -8
  92. package/dist/format-date/root/format-date-root.css.js +1 -13
  93. package/dist/graph/root/graph-root.css.js +12 -444
  94. package/dist/graph/root/graph-root.d.ts +8 -0
  95. package/dist/grid/root/grid-root.css.js +1 -171
  96. package/dist/grid/root/grid-root.d.ts +4 -1
  97. package/dist/heatmap/root/heatmap-root.css.js +8 -155
  98. package/dist/heatmap/root/heatmap-root.d.ts +2 -0
  99. package/dist/icon/index.d.ts +1 -1
  100. package/dist/icon/root/icon-root.css.js +1 -18
  101. package/dist/icon/root/index.d.ts +1 -1
  102. package/dist/icon-button/root/icon-button-root.css.js +63 -186
  103. package/dist/icon-button/root/icon-button-root.d.ts +5 -0
  104. package/dist/image/root/image-root.css.js +7 -65
  105. package/dist/image/root/image-root.d.ts +3 -0
  106. package/dist/input/root/input-root.css.js +6 -79
  107. package/dist/kbd/root/kbd-root.css.js +2 -44
  108. package/dist/kbd/root/kbd-root.d.ts +9 -0
  109. package/dist/legend/root/legend-root.css.js +9 -106
  110. package/dist/legend/root/legend-root.d.ts +2 -0
  111. package/dist/lightbox/item/lightbox-item.css.js +1 -33
  112. package/dist/lightbox/root/lightbox-root.css.js +40 -144
  113. package/dist/line-chart/root/line-chart-root.css.js +4 -154
  114. package/dist/line-chart/root/line-chart-root.d.ts +3 -0
  115. package/dist/list/item/list-item.css.js +2 -94
  116. package/dist/list/root/list-root.css.js +4 -88
  117. package/dist/listbox/root/listbox-root.css.js +4 -102
  118. package/dist/listbox/root/listbox-root.d.ts +1 -0
  119. package/dist/loader/root/loader-root.css.js +5 -171
  120. package/dist/loader/root/loader-root.d.ts +2 -0
  121. package/dist/map/area/map-area.css.js +1 -23
  122. package/dist/map/buildings/map-buildings.css.js +1 -26
  123. package/dist/map/contours/map-contours.css.js +2 -5
  124. package/dist/map/landcover/map-landcover.css.js +1 -4
  125. package/dist/map/marker/map-marker.css.js +14 -327
  126. package/dist/map/points/map-points.css.js +1 -86
  127. package/dist/map/position/map-position.css.js +8 -227
  128. package/dist/map/raster/map-raster.css.js +1 -3
  129. package/dist/map/root/map-root.css.js +10 -352
  130. package/dist/map/route/map-route.css.js +1 -24
  131. package/dist/map/terrain/map-terrain.css.js +3 -7
  132. package/dist/megamenu/root/megamenu-root.css.js +15 -163
  133. package/dist/megamenu/root/megamenu-root.d.ts +19 -0
  134. package/dist/menu/item/menu-item.css.js +9 -111
  135. package/dist/menu/item/menu-item.d.ts +1 -0
  136. package/dist/menu/root/menu-root.css.js +1 -110
  137. package/dist/menu/section/menu-section.css.js +1 -13
  138. package/dist/meter/root/meter-root.css.js +20 -207
  139. package/dist/meter/root/meter-root.d.ts +4 -0
  140. package/dist/navigation/root/navigation-root.css.js +2 -54
  141. package/dist/navigation/root/navigation-root.d.ts +7 -0
  142. package/dist/notifications/group/notification-group.css.js +1 -61
  143. package/dist/notifications/notification/notification.css.js +17 -264
  144. package/dist/notifications/root/notifications-root.css.js +7 -119
  145. package/dist/notifications/root/notifications-root.d.ts +3 -1
  146. package/dist/number-input/root/number-input-root.css.js +10 -100
  147. package/dist/number-input/root/number-input-root.d.ts +8 -0
  148. package/dist/object-inspector/root/object-inspector-root.css.js +11 -166
  149. package/dist/option/group/option-group.css.js +1 -22
  150. package/dist/option/index.d.ts +1 -0
  151. package/dist/option/index.js +1 -0
  152. package/dist/option/root/option-root.css.js +3 -85
  153. package/dist/option/separator/option-separator.css.d.ts +1 -0
  154. package/dist/option/separator/option-separator.css.js +3 -0
  155. package/dist/option/separator/option-separator.d.ts +26 -0
  156. package/dist/option/separator/option-separator.js +16 -0
  157. package/dist/orb/root/orb-root.css.js +1 -41
  158. package/dist/orb/root/orb-root.d.ts +14 -6
  159. package/dist/orb/root/orb-root.js +16 -27
  160. package/dist/outline/root/outline-root.css.js +24 -122
  161. package/dist/outline/root/outline-root.d.ts +17 -4
  162. package/dist/pagination/root/pagination-root.css.js +9 -105
  163. package/dist/pagination/size/pagination-size.css.js +1 -22
  164. package/dist/pagination/summary/pagination-summary.css.js +1 -7
  165. package/dist/pin-input/root/pin-input-root.css.js +2 -73
  166. package/dist/pin-input/root/pin-input-root.d.ts +12 -2
  167. package/dist/popover/root/popover-root.css.js +6 -127
  168. package/dist/progress/root/progress-root.css.js +7 -228
  169. package/dist/progress/root/progress-root.d.ts +5 -0
  170. package/dist/qr-code/root/qr-code-root.css.js +1 -57
  171. package/dist/quote/root/quote-root.css.js +1 -17
  172. package/dist/quote/root/quote-root.d.ts +2 -0
  173. package/dist/radio/group/radio-group.css.js +1 -21
  174. package/dist/radio/root/radio-root.css.js +5 -192
  175. package/dist/radio/root/radio-root.d.ts +2 -1
  176. package/dist/rating/root/rating-root.css.js +4 -117
  177. package/dist/sandbox/frame.d.ts +5 -3
  178. package/dist/sandbox/frame.js +20 -6
  179. package/dist/sandbox/index.d.ts +1 -0
  180. package/dist/sandbox/preview/sandbox-preview.css.js +1 -12
  181. package/dist/sandbox/preview/sandbox-preview.d.ts +19 -3
  182. package/dist/sandbox/preview/sandbox-preview.js +17 -11
  183. package/dist/sandbox/root/sandbox-root.css.js +3 -70
  184. package/dist/sandbox/root/sandbox-root.d.ts +16 -4
  185. package/dist/sandbox/root/sandbox-root.js +29 -50
  186. package/dist/sandbox/source/sandbox-source.css.js +3 -25
  187. package/dist/sandbox/source/sandbox-source.d.ts +40 -0
  188. package/dist/sandbox/source/sandbox-source.js +22 -0
  189. package/dist/sandbox/status-bar/sandbox-status-bar.css.js +1 -21
  190. package/dist/sandbox/terminal/sandbox-terminal.css.js +5 -106
  191. package/dist/sandbox/terminal/sandbox-terminal.d.ts +14 -2
  192. package/dist/sandbox/terminal/sandbox-terminal.js +20 -6
  193. package/dist/sandbox/tokens.d.ts +39 -0
  194. package/dist/sandbox/tokens.js +9 -0
  195. package/dist/sandbox/toolbar/sandbox-toolbar.css.js +1 -36
  196. package/dist/scatter-chart/root/scatter-chart-root.css.js +11 -137
  197. package/dist/scatter-chart/root/scatter-chart-root.d.ts +3 -0
  198. package/dist/scroll-area/root/scroll-area-root.css.js +14 -181
  199. package/dist/select/root/select-root.css.js +4 -124
  200. package/dist/shared/chart/series.css.js +1 -36
  201. package/dist/shared/chart/terminus.css.js +1 -47
  202. package/dist/shared/chart/tooltip.css.js +1 -68
  203. package/dist/shared/collection/state.css.js +1 -9
  204. package/dist/shared/field/field-frame.css.js +3 -33
  205. package/dist/shared/field/field-inline.css.js +1 -4
  206. package/dist/shared/field/field-segments.css.js +1 -39
  207. package/dist/shared/field/field-stacked.css.js +1 -5
  208. package/dist/shared/field/field.css.js +3 -57
  209. package/dist/shared/floating/entrance.css.js +3 -34
  210. package/dist/shared/floating/panel.css.js +2 -17
  211. package/dist/shared/glyph/glyph.css.js +1 -5
  212. package/dist/shared/live/live.css.js +1 -8
  213. package/dist/shared/tags/tags.css.js +1 -39
  214. package/dist/shared/viewport/viewport.css.js +8 -135
  215. package/dist/skeleton/root/skeleton-root.css.js +12 -120
  216. package/dist/skeleton/root/skeleton-root.d.ts +1 -0
  217. package/dist/skip-link/root/skip-link-root.css.js +2 -35
  218. package/dist/skip-link/root/skip-link-root.d.ts +3 -3
  219. package/dist/slider/root/slider-root.css.js +35 -320
  220. package/dist/slider/root/slider-root.d.ts +2 -0
  221. package/dist/sparkline/root/sparkline-root.css.js +10 -96
  222. package/dist/sparkline/root/sparkline-root.d.ts +8 -0
  223. package/dist/sparkline/root/sparkline-root.js +2 -1
  224. package/dist/speed-dial/item/speed-dial-item.css.js +6 -74
  225. package/dist/speed-dial/item/speed-dial-item.d.ts +3 -0
  226. package/dist/speed-dial/root/speed-dial-root.css.js +3 -144
  227. package/dist/speed-dial/root/speed-dial-root.d.ts +7 -1
  228. package/dist/speed-dial/root/speed-dial-root.js +0 -1
  229. package/dist/splitter/root/splitter-root.css.js +11 -176
  230. package/dist/stat/group/stat-group.css.js +1 -36
  231. package/dist/stat/root/stat-root.css.js +3 -58
  232. package/dist/steps/root/steps-root.css.js +13 -70
  233. package/dist/steps/root/steps-root.d.ts +5 -0
  234. package/dist/steps/step/step.css.js +5 -156
  235. package/dist/switch/root/switch-root.css.js +2 -110
  236. package/dist/table/cell/table-cell.css.js +1 -33
  237. package/dist/table/column/table-column.css.js +7 -105
  238. package/dist/table/root/table-root.css.js +1 -43
  239. package/dist/table/row/table-row.css.js +6 -18
  240. package/dist/table/row/table-row.d.ts +2 -0
  241. package/dist/tabs/panel/tab-panel.css.js +2 -17
  242. package/dist/tabs/root/tabs-root.css.js +6 -177
  243. package/dist/tabs/root/tabs-root.d.ts +4 -0
  244. package/dist/tabs/tab/tab.css.js +10 -51
  245. package/dist/tabs/tab/tab.d.ts +7 -0
  246. package/dist/tag/group/tag-group.css.js +1 -5
  247. package/dist/tag/root/tag-root.css.js +1 -166
  248. package/dist/tag/root/tag-root.d.ts +2 -0
  249. package/dist/text/clamp.d.ts +5 -2
  250. package/dist/text/clamp.js +3 -1
  251. package/dist/text/root/text-root.css.js +11 -206
  252. package/dist/text/root/text-root.d.ts +2 -1
  253. package/dist/textarea/root/textarea-root.css.js +3 -44
  254. package/dist/time-input/root/time-input-root.css.js +7 -106
  255. package/dist/time-picker/root/time-picker-root.css.js +10 -134
  256. package/dist/time-picker/root/time-picker-root.d.ts +1 -0
  257. package/dist/timeline/group/timeline-group.css.js +1 -31
  258. package/dist/timeline/item/timeline-item.css.js +3 -134
  259. package/dist/timeline/root/timeline-root.css.js +1 -66
  260. package/dist/toast/item/toast-item.css.js +8 -240
  261. package/dist/toast/root/toast-root.css.js +1 -85
  262. package/dist/toast/root/toast-root.d.ts +1 -0
  263. package/dist/toast/root/toast-root.js +3 -1
  264. package/dist/toggle/group/toggle-group.css.js +9 -125
  265. package/dist/toggle/group/toggle-group.d.ts +6 -1
  266. package/dist/toggle/root/toggle-root.css.js +1 -23
  267. package/dist/toggle/root/toggle-root.d.ts +6 -0
  268. package/dist/toolbar/root/toolbar-root.css.js +1 -35
  269. package/dist/toolbar/root/toolbar-root.d.ts +4 -0
  270. package/dist/tooltip/root/tooltip-root.css.js +5 -101
  271. package/dist/tooltip/root/tooltip-root.d.ts +6 -0
  272. package/dist/tour/root/tour-root.css.js +2 -28
  273. package/dist/tour/stop/tour-stop.css.js +2 -109
  274. package/dist/tree/item/tree-item.css.js +14 -230
  275. package/dist/tree/item/tree-item.d.ts +9 -0
  276. package/dist/tree/root/tree-root.css.js +1 -40
  277. package/dist/trend/root/trend-root.css.js +5 -55
  278. package/dist/trend/root/trend-root.d.ts +2 -2
  279. package/dist/video/root/video-root.css.js +16 -398
  280. package/dist/video-playlist/item/video-playlist-item.css.js +12 -86
  281. package/dist/video-playlist/item/video-playlist-item.d.ts +12 -0
  282. package/dist/video-playlist/menu/video-playlist-menu.css.js +1 -41
  283. package/dist/video-playlist/root/video-playlist-root.css.js +1 -19
  284. package/dist/video-playlist/root/video-playlist-root.d.ts +2 -0
  285. package/dist/virtual-list/root/virtual-list-root.css.js +5 -28
  286. package/dist/virtual-list/root/virtual-list-root.d.ts +7 -1
  287. package/lint.json +1 -1
  288. package/package.json +9 -9
  289. package/types/jsx.d.ts +6997 -1154
  290. package/types/svelte.d.ts +1 -0
  291. package/types/vue.d.ts +2081 -271
@@ -1,241 +1,25 @@
1
1
  import { createSheet } from '@fusion.dev/helix-core';
2
- export const styles = createSheet(`:host {
3
-
4
- --_tree-chevron: var(--tree-chevron-size, var(--helix-size-icon-tight));
5
- display: block;
6
- }
7
-
8
- [part="item"] {
9
- border-radius: var(--helix-radii-sm);
10
- outline: none;
11
- }
12
-
13
- [part="row"] {
14
-
15
- align-items: center;
16
- border-radius: var(--helix-radii-sm);
17
- color: var(--helix-color-foreground-muted);
18
- cursor: pointer;
19
- display: flex;
20
-
21
- font-size: var(--_tree-text, var(--helix-text-sm));
22
- gap: var(--helix-space-2xs);
23
-
24
- margin-block-end: var(--tree-gap, var(--helix-space-2xs));
25
-
26
- block-size: max(
2
+ export const styles = createSheet(`:host {--_tree-chevron: var(--tree-chevron-size, var(--helix-size-icon-tight));display: block;}[part="item"] {border-radius: var(--helix-radii-sm);outline: none;}[part="row"] {align-items: center;background-color: var(--_tree-row-fill, transparent);border-radius: var(--tree-row-radius, var(--helix-radii-sm));color: var(--_tree-row-ink, var(--tree-row-color, var(--helix-color-foreground-muted)));cursor: pointer;display: flex;font-size: var(--_tree-text, var(--helix-text-sm));gap: var(--helix-space-2xs);margin-block-end: var(--tree-gap, var(--helix-space-2xs));block-size: max(
27
3
  var(--tree-row-size, var(--helix-size-control-tight)),
28
4
  calc(1lh + var(--helix-space-xs) * 2)
29
- );
30
- min-block-size: var(--tree-row-size, var(--helix-size-control-tight));
31
- padding-block: var(--helix-space-xs);
32
- padding-inline: var(--helix-space-xs);
33
-
34
- padding-inline-start: calc(
5
+ );min-block-size: var(--tree-row-size, var(--helix-size-control-tight));padding-block: var(--helix-space-xs);padding-inline: var(--helix-space-xs);padding-inline-start: calc(
35
6
  var(--helix-space-xs) +
36
7
  (var(--tree-level, 1) - 1) *
37
8
  var(--tree-indent, calc(var(--_tree-chevron) + var(--helix-space-2xs)))
38
- );
39
- transition: background-color var(--helix-duration-fast) var(--helix-easing-standard);
40
- user-select: none;
41
- }
42
-
43
- [part="row"]:not(:has([part="toggle"])) {
44
- padding-inline-start: calc(
9
+ );transition: background-color var(--helix-duration-fast) var(--helix-easing-standard);user-select: none;}[part="row"]:not(:has([part="toggle"])) {padding-inline-start: calc(
45
10
  var(--helix-space-xs) +
46
11
  (var(--tree-level, 1) - 1) *
47
12
  var(--tree-indent, calc(var(--_tree-chevron) + var(--helix-space-2xs))) +
48
13
  var(--_tree-reserve, calc(var(--_tree-chevron) + var(--helix-space-2xs)))
49
- );
50
- }
51
-
52
- [part="row"]:has([part="toggle"]) {
53
- color: var(--_tree-heading-ink, var(--helix-color-foreground-muted));
54
- font-size: var(--_tree-heading-text, var(--_tree-text, var(--helix-text-sm)));
55
- font-weight: var(--helix-weight-medium);
56
- letter-spacing: var(--_tree-heading-tracking, var(--helix-tracking-normal));
57
- }
58
-
59
- [part="row"]:not(:has([part="toggle"])) {
60
- font-weight: var(--helix-weight-medium);
61
- }
62
-
63
- slot[name="children"]::slotted(*) {
64
- --_tree-text: var(--_tree-nested-text, var(--helix-text-sm));
65
- }
66
-
67
- [part="row"]:hover {
68
- background-color: var(--helix-color-surface-raised);
69
- color: var(--helix-color-foreground);
70
- }
71
-
72
- :host(:state(selected)) [part="row"] {
73
- background-color: var(--helix-color-surface-sunken);
74
- color: var(--helix-color-foreground);
75
- }
76
-
77
- [part="item"]:focus-visible [part="row"],
78
- [part="row"]:focus-visible {
79
- outline: var(--helix-size-focus-ring) solid var(--helix-color-focus-ring);
80
- outline-offset: calc(var(--helix-size-focus-offset) * -1);
81
- }
82
-
83
- a[part="row"] {
84
- text-decoration: none;
85
- }
86
-
87
- [part="toggle"] {
88
- block-size: var(--_tree-chevron);
89
- color: var(--helix-color-foreground-subtle);
90
- flex: 0 0 auto;
91
- inline-size: var(--_tree-chevron);
92
- transform: rotate(-90deg);
93
- transition: transform var(--helix-duration-fast) var(--helix-easing-standard);
94
- }
95
-
96
- :host(:dir(rtl)) [part="toggle"] {
97
- transform: rotate(90deg);
98
- }
99
-
100
- :host(:state(open)) [part="toggle"] {
101
- transform: rotate(0deg);
102
- }
103
-
104
- [part="label"] {
105
-
106
- align-self: stretch;
107
- flex: 1;
108
-
109
- min-inline-size: 0;
110
- overflow: hidden;
111
- text-overflow: ellipsis;
112
- white-space: nowrap;
113
- }
114
-
115
- [part="label"] slot::slotted(a) {
116
- display: block;
117
- overflow: hidden;
118
- text-overflow: ellipsis;
119
- }
120
-
121
- slot[name="start"]::slotted(*),
122
- slot[name="end"]::slotted(*) {
123
- flex: 0 0 auto;
124
- }
125
-
126
- slot[name="end"] {
127
- align-items: center;
128
- display: flex;
129
- gap: var(--helix-space-2xs);
130
-
131
- margin-inline-start: auto;
132
- order: 1;
133
- }
134
-
135
- slot[name="start"]::slotted(*) {
136
- color: var(--helix-color-foreground-subtle);
137
- }
138
-
139
- [part="group"] {
140
- display: grid;
141
- grid-template-rows: 1fr;
142
- transition:
14
+ );}[part="row"]:has([part="toggle"]) {color: var(
15
+ --_tree-row-ink,
16
+ var(--_tree-heading-ink, var(--tree-row-color, var(--helix-color-foreground-muted)))
17
+ );font-size: var(--_tree-heading-text, var(--_tree-text, var(--helix-text-sm)));font-weight: var(--helix-weight-medium);letter-spacing: var(--_tree-heading-tracking, var(--helix-tracking-normal));}[part="row"]:not(:has([part="toggle"])) {font-weight: var(--helix-weight-medium);}slot[name="children"]::slotted(*) {--_tree-text: var(--_tree-nested-text, var(--helix-text-sm));}[part="row"]:hover {background-color: var(--tree-row-hover-background-color, var(--helix-color-surface-raised));color: var(--tree-row-hover-color, var(--helix-color-foreground));}:host(:state(selected)) [part="row"] {background-color: var(--tree-row-selected-background-color, var(--helix-color-surface-sunken));color: var(--tree-row-selected-color, var(--helix-color-foreground));}:host(:state(checked)) [part="row"] {--_tree-row-fill: var(--tree-row-checked-background-color, transparent);--_tree-row-ink: var(--tree-row-checked-color);}[part="item"]:focus-visible [part="row"],
18
+ [part="row"]:focus-visible {outline: var(--helix-size-focus-ring) solid var(--helix-color-focus-ring);outline-offset: calc(var(--helix-size-focus-offset) * -1);}a[part="row"] {text-decoration: none;}[part="toggle"] {block-size: var(--_tree-chevron);color: var(--helix-color-foreground-subtle);flex: 0 0 auto;inline-size: var(--_tree-chevron);transform: rotate(-90deg);transition: transform var(--helix-duration-fast) var(--helix-easing-standard);}:host(:dir(rtl)) [part="toggle"] {transform: rotate(90deg);}:host(:state(open)) [part="toggle"] {transform: rotate(0deg);}[part="label"] {align-self: stretch;flex: 1;min-inline-size: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}[part="label"] slot::slotted(a) {display: block;overflow: hidden;text-overflow: ellipsis;}slot[name="start"]::slotted(*),
19
+ slot[name="end"]::slotted(*) {flex: 0 0 auto;}slot[name="end"] {align-items: center;display: flex;gap: var(--helix-space-2xs);margin-inline-start: auto;order: 1;}slot[name="start"]::slotted(*) {color: var(--helix-color-foreground-subtle);}[part="group"] {display: grid;grid-template-rows: 1fr;transition:
143
20
  grid-template-rows var(--helix-duration-fast) var(--helix-easing-standard),
144
- display var(--helix-duration-fast) allow-discrete;
145
- }
146
-
147
- [part="group"] > slot {
148
- display: block;
149
- min-block-size: 0;
150
- overflow: hidden;
151
- }
152
-
153
- [part="group"][hidden] {
154
- display: none;
155
- grid-template-rows: 0fr;
156
- }
157
-
158
- @starting-style {
159
- [part="group"]:not([hidden]) {
160
- grid-template-rows: 0fr;
161
- }
162
- }
163
-
164
- [part="toggle"] {
165
-
166
- align-self: center;
167
- margin-inline-start: var(--tree-chevron-gap, var(--helix-space-none));
168
- order: var(--tree-chevron-order, 0);
169
- }
170
-
171
- slot[name="chevron"]::slotted(*) {
172
- align-self: center;
173
- block-size: var(--_tree-chevron);
174
- color: var(--helix-color-foreground-subtle);
175
- flex: 0 0 auto;
176
- inline-size: var(--_tree-chevron);
177
- margin-inline-start: var(--tree-chevron-gap, var(--helix-space-none));
178
- order: var(--tree-chevron-order, 0);
179
- transform: rotate(-90deg);
180
- transition: transform var(--helix-duration-fast) var(--helix-easing-standard);
181
- }
182
-
183
- :host(:dir(rtl)) slot[name="chevron"]::slotted(*) {
184
- transform: rotate(90deg);
185
- }
186
-
187
- :host(:state(open)) slot[name="chevron"]::slotted(*) {
188
- transform: rotate(0deg);
189
- }
190
-
191
- [part~="checkbox"] {
192
- align-self: center;
193
- background-color: var(--tree-checkbox-background-color, var(--helix-color-background));
194
- block-size: var(--tree-checkbox-size, var(--_tree-chevron));
195
- border: var(--helix-border-thin) solid
196
- var(--tree-checkbox-border-color, var(--helix-color-border));
197
- border-radius: var(--helix-radii-sm);
198
- color: var(--tree-checkbox-mark-color, var(--helix-color-foreground));
199
- display: grid;
200
- flex: 0 0 auto;
201
- inline-size: var(--tree-checkbox-size, var(--_tree-chevron));
202
- place-items: center;
203
- }
204
-
205
- [part~="checkbox-checked"],
206
- [part~="checkbox-mixed"] {
207
- border-color: var(--tree-checkbox-border-color, var(--helix-color-foreground));
208
- }
209
-
210
- [part~="checkbox"] svg {
211
- block-size: 80%;
212
- inline-size: 80%;
213
- }
214
-
215
- :host([disabled]) [part="row"] {
216
- cursor: not-allowed;
217
- opacity: 0.5;
218
- }
219
-
220
- :host([disabled]) [part="row"]:hover {
221
- background-color: transparent;
222
- color: var(--helix-color-foreground-muted);
223
- }
224
-
225
- :host(:state(loading)) [part="toggle"],
226
- :host(:state(loading)) slot[name="chevron"]::slotted(*) {
227
- animation: tree-loading var(--helix-duration-slow) var(--helix-easing-standard) infinite alternate;
228
- }
229
-
230
- @keyframes tree-loading {
231
- to {
232
- opacity: 0.3;
233
- }
234
- }
235
-
236
- @media (prefers-reduced-motion: reduce) {
237
- :host(:state(loading)) [part="toggle"],
238
- :host(:state(loading)) slot[name="chevron"]::slotted(*) {
239
- animation: none;
240
- }
241
- }`);
21
+ display var(--helix-duration-fast) allow-discrete;}[part="group"] > slot {display: block;min-block-size: 0;overflow: hidden;}[part="group"][hidden] {display: none;grid-template-rows: 0fr;}@starting-style {[part="group"]:not([hidden]) {grid-template-rows: 0fr;}}[part="toggle"] {align-self: center;margin-inline-start: var(--tree-chevron-gap, var(--helix-space-none));order: var(--tree-chevron-order, 0);}slot[name="chevron"]::slotted(*) {align-self: center;block-size: var(--_tree-chevron);color: var(--helix-color-foreground-subtle);flex: 0 0 auto;inline-size: var(--_tree-chevron);margin-inline-start: var(--tree-chevron-gap, var(--helix-space-none));order: var(--tree-chevron-order, 0);transform: rotate(-90deg);transition: transform var(--helix-duration-fast) var(--helix-easing-standard);}:host(:dir(rtl)) slot[name="chevron"]::slotted(*) {transform: rotate(90deg);}:host(:state(open)) slot[name="chevron"]::slotted(*) {transform: rotate(0deg);}[part~="checkbox"] {align-self: center;background-color: var(--tree-checkbox-background-color, var(--helix-color-background));block-size: var(--tree-checkbox-size, var(--_tree-chevron));border: var(--helix-border-thin) solid
22
+ var(--tree-checkbox-border-color, var(--helix-color-border));border-radius: var(--helix-radii-sm);color: var(--tree-checkbox-mark-color, var(--helix-color-foreground));display: grid;flex: 0 0 auto;inline-size: var(--tree-checkbox-size, var(--_tree-chevron));place-items: center;}[part~="checkbox-checked"],
23
+ [part~="checkbox-mixed"] {border-color: var(--tree-checkbox-border-color, var(--helix-color-foreground));}[part~="checkbox"] svg {block-size: 80%;inline-size: 80%;}:host([disabled]) [part="row"] {cursor: not-allowed;opacity: var(--tree-row-disabled-opacity, 0.5);}:host([disabled]) [part="row"]:hover {background-color: transparent;color: var(--tree-row-color, var(--helix-color-foreground-muted));}:host(:state(loading)) [part="toggle"],
24
+ :host(:state(loading)) slot[name="chevron"]::slotted(*) {animation: tree-loading var(--helix-duration-slow) var(--helix-easing-standard) infinite alternate;}@keyframes tree-loading {to {opacity: 0.3;}}@media (prefers-reduced-motion: reduce) {:host(:state(loading)) [part="toggle"],
25
+ :host(:state(loading)) slot[name="chevron"]::slotted(*) {animation: none;}}`);
@@ -39,6 +39,15 @@ import type { CSSResultGroup } from 'lit';
39
39
  * @cssproperty --tree-chevron-size - Size of the chevron, and the gutter a leaf reserves.
40
40
  * @cssproperty --tree-gap - Space between rows.
41
41
  * @cssproperty --tree-indent - Indent added per level.
42
+ * @cssproperty --tree-row-checked-background-color - Fill of a checked row, in a tree with `selection-mode="multiple"`. Unset, the box alone marks it.
43
+ * @cssproperty --tree-row-checked-color - Text color of a checked row, in a tree with `selection-mode="multiple"`.
44
+ * @cssproperty --tree-row-color - Text color of a row at rest.
45
+ * @cssproperty --tree-row-disabled-opacity - How faint a disabled row is drawn.
46
+ * @cssproperty --tree-row-hover-background-color - Fill of a row under the pointer.
47
+ * @cssproperty --tree-row-hover-color - Text color of a row under the pointer.
48
+ * @cssproperty --tree-row-radius - Corners of a row's fill.
49
+ * @cssproperty --tree-row-selected-background-color - Fill of the chosen row, in a tree of one choice.
50
+ * @cssproperty --tree-row-selected-color - Text color of the chosen row, in a tree of one choice.
42
51
  * @cssproperty --tree-row-size - Minimum height of a row, so rows with and without an icon match.
43
52
  */
44
53
  export declare class HelixTreeItem extends HelixHeadlessTreeItem {
@@ -1,41 +1,2 @@
1
1
  import { createSheet } from '@fusion.dev/helix-core';
2
- export const styles = createSheet(`:host {
3
- display: block;
4
- }
5
-
6
- [part="tree"] {
7
- display: flex;
8
- flex-direction: column;
9
- }
10
-
11
- :host {
12
- --tree-chevron-order: 0;
13
- }
14
-
15
- :host([chevron-placement="end"]) {
16
-
17
- --tree-chevron-order: 2;
18
- --tree-chevron-gap: var(--helix-space-none);
19
-
20
- --_tree-reserve: var(--helix-space-none);
21
- }
22
-
23
- :host([nesting="subordinate"]) {
24
- --_tree-nested-text: var(--helix-text-xs);
25
- }
26
-
27
- :host([nesting="heading"]) {
28
- --_tree-heading-ink: var(--helix-color-foreground-subtle);
29
- --_tree-heading-text: var(--helix-text-xs);
30
- --_tree-heading-tracking: var(--helix-tracking-wide);
31
- }
32
-
33
- :host([loading]) [part="tree"] {
34
- opacity: 0.5;
35
- }
36
-
37
- @media print {
38
- :host {
39
- print-color-adjust: economy;
40
- }
41
- }`);
2
+ export const styles = createSheet(`:host {display: block;}[part="tree"] {display: flex;flex-direction: column;}:host {--tree-chevron-order: 0;}:host([chevron-placement="end"]) {--tree-chevron-order: 2;--tree-chevron-gap: var(--helix-space-none);--_tree-reserve: var(--helix-space-none);}:host([nesting="subordinate"]) {--_tree-nested-text: var(--helix-text-xs);}:host([nesting="heading"]) {--_tree-heading-ink: var(--helix-color-foreground-subtle);--_tree-heading-text: var(--helix-text-xs);--_tree-heading-tracking: var(--helix-tracking-wide);}:host([loading]) [part="tree"] {opacity: 0.5;}@media print {:host {print-color-adjust: economy;}}`);
@@ -1,56 +1,6 @@
1
1
  import { createSheet } from '@fusion.dev/helix-core';
2
- export const styles = createSheet(`:host {
3
- align-items: center;
4
- display: inline-flex;
5
- font-size: var(--helix-text-sm);
6
- font-weight: var(--helix-weight-medium);
7
- gap: var(--trend-gap, var(--helix-space-2xs));
8
- line-height: var(--helix-leading-tight);
9
- }
10
-
11
- :host {
12
-
13
- --_trend-color: var(--trend-neutral-color, var(--helix-color-foreground-muted));
14
- color: var(--trend-color, var(--_trend-color));
15
- }
16
-
17
- [part="icon"] {
18
- --icon-size: var(--trend-icon-size, 1em);
19
- }
20
-
21
- slot[name="icon"]::slotted(*) {
22
- --icon-size: var(--trend-icon-size, 1em);
23
-
24
- block-size: var(--trend-icon-size, 1em);
25
- inline-size: var(--trend-icon-size, 1em);
26
- }
27
-
28
- :host([direction="up"][good="up"]),
29
- :host([direction="down"][good="down"]) {
30
- --_trend-color: var(--trend-better-color, var(--helix-color-success));
31
- }
32
-
33
- :host([direction="up"][good="down"]),
34
- :host([direction="down"][good="up"]) {
35
- --_trend-color: var(--trend-worse-color, var(--helix-color-danger));
36
- }
37
-
38
- [part="direction"] {
39
- block-size: 1px;
40
- clip-path: inset(50%);
41
- inline-size: 1px;
42
- overflow: hidden;
43
- position: absolute;
44
- white-space: nowrap;
45
- }
46
-
47
- slot[name="label"] {
48
- color: var(--trend-label-color, var(--helix-color-foreground-muted));
49
- font-weight: var(--helix-weight-regular);
50
- }
51
-
52
- @media print {
53
- :host {
54
- print-color-adjust: economy;
55
- }
56
- }`);
2
+ export const styles = createSheet(`:host {align-items: center;display: inline-flex;font-size: var(--helix-text-sm);font-weight: var(--helix-weight-medium);gap: var(--trend-gap, var(--helix-space-2xs));line-height: var(--helix-leading-tight);}:host {--_trend-color: var(--trend-neutral-color, var(--helix-color-foreground-muted));color: var(--trend-color, var(--_trend-color));}[part="icon"] {--icon-size: var(--trend-icon-size, 1em);}slot[name$="icon"]::slotted(*) {--icon-size: var(--trend-icon-size, 1em);block-size: var(--trend-icon-size, 1em);inline-size: var(--trend-icon-size, 1em);}:host(:state(better)),
3
+ :host(:not(:defined)[good="up"][movement="up"]),
4
+ :host(:not(:defined)[good="down"][movement="down"]) {--_trend-color: var(--trend-better-color, var(--helix-color-success));}:host(:state(worse)),
5
+ :host(:not(:defined)[good="up"][movement="down"]),
6
+ :host(:not(:defined)[good="down"][movement="up"]) {--_trend-color: var(--trend-worse-color, var(--helix-color-danger));}[part="direction"] {block-size: 1px;clip-path: inset(50%);inline-size: 1px;overflow: hidden;position: absolute;white-space: nowrap;}slot[name="label"] {color: var(--trend-label-color, var(--helix-color-foreground-muted));font-weight: var(--helix-weight-regular);}@media print {:host {print-color-adjust: economy;}}`);
@@ -13,7 +13,7 @@ import type { CSSResultGroup } from 'lit';
13
13
  * no surface for material, and no area for a wash. The text weight comes from
14
14
  * `Text` and the size from the region.
15
15
  *
16
- * The meaning axis is derived: `direction` and `good` resolve to success,
16
+ * The meaning axis is derived: `movement` and `good` resolve to success,
17
17
  * danger, or muted, so you state the metric's polarity once. There is no
18
18
  * `tone`, because a declared tone could disagree with the arrow.
19
19
  *
@@ -27,7 +27,7 @@ import type { CSSResultGroup } from 'lit';
27
27
  * @cssproperty --trend-better-color - Color of a move that `good` says is an improvement.
28
28
  * @cssproperty --trend-color - Color of the arrow. Setting it overrides the color that `good` sets.
29
29
  * @cssproperty --trend-gap - Space between the arrow, the metric and the label.
30
- * @cssproperty --trend-icon-size - Size of the arrow, or of a glyph in the `icon` slot.
30
+ * @cssproperty --trend-icon-size - Size of the arrow, or of a glyph in one of the icon slots.
31
31
  * @cssproperty --trend-label-color - Color of the label.
32
32
  * @cssproperty --trend-neutral-color - Color of a trend that `good` does not judge, or one that did not move.
33
33
  * @cssproperty --trend-worse-color - Color of a move that `good` says is a setback.