@fusion.dev/helix 0.143.0 → 0.144.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 (105) hide show
  1. package/custom-elements.json +10028 -511
  2. package/dist/badge/root/badge-root.css.js +35 -0
  3. package/dist/badge/root/badge-root.d.ts +16 -0
  4. package/dist/badge/root/badge-root.js +3 -0
  5. package/dist/blockquote/root/blockquote-root.css.js +5 -5
  6. package/dist/blockquote/root/blockquote-root.d.ts +5 -0
  7. package/dist/button/root/button-root.css.js +38 -1
  8. package/dist/button/root/button-root.d.ts +5 -0
  9. package/dist/button/root/button-root.js +2 -1
  10. package/dist/callout/root/callout-root.css.js +69 -11
  11. package/dist/callout/root/callout-root.d.ts +25 -2
  12. package/dist/callout/root/callout-root.js +4 -0
  13. package/dist/card/root/card-root.css.js +26 -1
  14. package/dist/card/root/card-root.d.ts +11 -0
  15. package/dist/checkbox-group/root/checkbox-group-root.d.ts +2 -0
  16. package/dist/checkbox-group/root/checkbox-group-root.js +2 -0
  17. package/dist/code-block/root/code-block-root.css.js +23 -0
  18. package/dist/code-block/root/code-block-root.d.ts +15 -0
  19. package/dist/code-block/root/code-block-root.js +8 -0
  20. package/dist/color-picker/root/color-picker-root.css.js +64 -0
  21. package/dist/color-picker/root/color-picker-root.d.ts +2 -0
  22. package/dist/copy-button/root/copy-button-root.css.js +5 -0
  23. package/dist/date-input/root/date-input-root.css.js +19 -0
  24. package/dist/date-input/root/date-input-root.d.ts +8 -0
  25. package/dist/date-input/root/date-input-root.js +2 -0
  26. package/dist/date-picker/root/date-picker-root.css.js +68 -0
  27. package/dist/date-picker/root/date-picker-root.d.ts +1 -0
  28. package/dist/dialog/root/dialog-root.css.js +47 -0
  29. package/dist/divider/root/divider-root.css.js +8 -3
  30. package/dist/divider/root/divider-root.d.ts +17 -1
  31. package/dist/divider/root/divider-root.js +4 -0
  32. package/dist/drawer/root/drawer-root.css.js +28 -1
  33. package/dist/element-events.generated.js +8 -5
  34. package/dist/empty/root/empty-root.css.js +9 -9
  35. package/dist/empty/root/empty-root.d.ts +9 -0
  36. package/dist/file-input/root/file-input-root.js +2 -0
  37. package/dist/filter-input/root/filter-input-root.js +2 -0
  38. package/dist/heatmap/root/heatmap-root.css.js +33 -5
  39. package/dist/heatmap/root/heatmap-root.d.ts +4 -1
  40. package/dist/icon/index.d.ts +1 -0
  41. package/dist/icon/index.js +1 -0
  42. package/dist/icon/root/icon-root.d.ts +1 -1
  43. package/dist/icon/root/icon-root.js +1 -1
  44. package/dist/icon/root/index.d.ts +2 -0
  45. package/dist/icon/root/index.js +2 -0
  46. package/dist/icon-button/root/icon-button-root.css.js +37 -0
  47. package/dist/icon-button/root/icon-button-root.d.ts +4 -0
  48. package/dist/icon-button/root/icon-button-root.js +2 -1
  49. package/dist/input/root/input-root.css.js +3 -3
  50. package/dist/input/root/input-root.d.ts +3 -0
  51. package/dist/legend/root/legend-root.css.js +40 -13
  52. package/dist/legend/root/legend-root.d.ts +6 -0
  53. package/dist/legend/root/legend-root.js +1 -1
  54. package/dist/lightbox/root/lightbox-root.css.js +84 -0
  55. package/dist/lightbox/root/lightbox-root.d.ts +1 -0
  56. package/dist/loader/root/loader-root.css.js +10 -0
  57. package/dist/loader/root/loader-root.d.ts +3 -0
  58. package/dist/meter/root/meter-root.css.js +23 -1
  59. package/dist/meter/root/meter-root.d.ts +5 -0
  60. package/dist/notifications/notification/notification.css.js +5 -0
  61. package/dist/number-input/root/number-input-root.css.js +3 -3
  62. package/dist/number-input/root/number-input-root.d.ts +3 -0
  63. package/dist/pin-input/root/pin-input-root.css.js +12 -5
  64. package/dist/pin-input/root/pin-input-root.d.ts +5 -0
  65. package/dist/popover/root/popover-root.css.js +36 -0
  66. package/dist/popover/root/popover-root.d.ts +1 -0
  67. package/dist/progress/root/progress-root.css.js +22 -1
  68. package/dist/progress/root/progress-root.d.ts +5 -0
  69. package/dist/quote/root/quote-root.css.js +1 -1
  70. package/dist/quote/root/quote-root.d.ts +1 -0
  71. package/dist/shared/chart/tooltip.css.js +25 -2
  72. package/dist/shared/field/field-segments.css.d.ts +1 -0
  73. package/dist/shared/field/field-segments.css.js +40 -0
  74. package/dist/skeleton/root/skeleton-root.css.js +56 -5
  75. package/dist/skeleton/root/skeleton-root.d.ts +17 -1
  76. package/dist/skeleton/root/skeleton-root.js +3 -0
  77. package/dist/stat/root/stat-root.css.js +7 -7
  78. package/dist/stat/root/stat-root.d.ts +8 -0
  79. package/dist/switch/root/switch-root.css.js +13 -5
  80. package/dist/switch/root/switch-root.d.ts +25 -1
  81. package/dist/switch/root/switch-root.js +7 -0
  82. package/dist/tag/group/tag-group.css.d.ts +1 -0
  83. package/dist/tag/group/tag-group.css.js +6 -0
  84. package/dist/tag/group/tag-group.d.ts +25 -0
  85. package/dist/tag/group/tag-group.js +16 -0
  86. package/dist/tag/index.d.ts +1 -0
  87. package/dist/tag/index.js +1 -0
  88. package/dist/tag/root/tag-root.css.js +50 -0
  89. package/dist/tag/root/tag-root.d.ts +4 -0
  90. package/dist/textarea/root/textarea-root.css.js +12 -4
  91. package/dist/textarea/root/textarea-root.d.ts +4 -0
  92. package/dist/time-input/root/time-input-root.css.js +19 -0
  93. package/dist/time-input/root/time-input-root.d.ts +8 -0
  94. package/dist/time-input/root/time-input-root.js +2 -0
  95. package/dist/toast/item/toast-item.css.js +16 -0
  96. package/dist/toggle/group/toggle-group.css.js +16 -0
  97. package/dist/tour/root/tour-root.css.js +8 -0
  98. package/dist/tour/stop/tour-stop.css.js +32 -0
  99. package/dist/trend/root/trend-root.css.js +12 -5
  100. package/dist/trend/root/trend-root.d.ts +6 -1
  101. package/lint.json +1 -1
  102. package/package.json +6 -6
  103. package/types/jsx.d.ts +4556 -111
  104. package/types/svelte.d.ts +1 -0
  105. package/types/vue.d.ts +1307 -24
@@ -25,6 +25,14 @@ import '../../time-picker/index.js';
25
25
  * @cssproperty --time-input-border-width - Width of the panel's edge. Defaults to
26
26
  * `--helix-border-floating`, which is `0`, so the panel stands out by its shadow unless
27
27
  * your theme sets a width.
28
+ * @cssproperty --time-input-segment-focus-background-color - The fill behind the
29
+ * segment with focus, in `segmented`. It follows `--helix-color-primary`.
30
+ * @cssproperty --time-input-segment-focus-color - The text of the segment with
31
+ * focus, in `segmented`.
32
+ * @cssproperty --time-input-segment-literal-color - The text the locale writes
33
+ * between two segments, in `segmented`.
34
+ * @cssproperty --time-input-segment-placeholder-color - The dashes of a segment
35
+ * with nothing in it, in `segmented`. It matches the text field's placeholder.
28
36
  * @cssproperty --time-input-shadow - Shadow under the panel. Defaults to
29
37
  * `--helix-shadow-floating`, because the panel can sit over any content.
30
38
  */
@@ -10,6 +10,7 @@ import '../../tag/index.js';
10
10
  import '../../time-picker/index.js';
11
11
  import { styles as fieldStyles } from '../../shared/field/field.css.js';
12
12
  import { styles as fieldFrameStyles } from '../../shared/field/field-frame.css.js';
13
+ import { styles as fieldSegmentsStyles } from '../../shared/field/field-segments.css.js';
13
14
  import { styles as fieldStackedStyles } from '../../shared/field/field-stacked.css.js';
14
15
  import { styles as floatingEntranceStyles } from '../../shared/floating/entrance.css.js';
15
16
  import { styles as floatingPanelStyles } from '../../shared/floating/panel.css.js';
@@ -21,6 +22,7 @@ let HelixTimeInput = class HelixTimeInput extends HelixHeadlessTimeInput {
21
22
  fieldStyles,
22
23
  fieldFrameStyles,
23
24
  fieldStackedStyles,
25
+ fieldSegmentsStyles,
24
26
  tagRowStyles,
25
27
  floatingPanelStyles,
26
28
  floatingEntranceStyles,
@@ -150,6 +150,22 @@ outline: var(--helix-size-focus-ring) solid var(--helix-color-focus-ring);
150
150
  outline-offset: var(--helix-size-focus-offset);
151
151
  }
152
152
 
153
+ [part="item"],
154
+ [part="item"] > * {
155
+ touch-action: pan-y;
156
+ }
157
+
158
+ [part="content"] > slot {
159
+ display: block;
160
+ touch-action: pan-y;
161
+ }
162
+
163
+ [part="item"][data-swiping] {
164
+ transition: none;
165
+ translate: var(--toast-swipe-x, 0) 0;
166
+ user-select: none;
167
+ }
168
+
153
169
  [part="timer"] {
154
170
  animation: helix-toast-drain var(--toast-duration, 0ms) linear forwards;
155
171
  background-color: var(--_toast-severity, var(--helix-color-foreground-muted));
@@ -111,4 +111,20 @@ gap: var(--helix-space-sm);
111
111
 
112
112
  [part="row"] [part="track"] {
113
113
  flex: 1 1 auto;
114
+ }
115
+
116
+ :host([selection-mode="multiple"]) ::slotted(helix-toggle:state(pressed)) {
117
+ background-color: var(--toggle-group-indicator-color, var(--_indicator-surface));
118
+ border-radius: var(--_toggle-radius, var(--helix-radii-sm));
119
+ box-shadow: var(--helix-shadow-sm);
120
+ }
121
+
122
+ :host([orientation="vertical"]) [part="track"] {
123
+ align-items: stretch;
124
+ flex-direction: column;
125
+ flex-wrap: nowrap;
126
+ }
127
+
128
+ :host([orientation="vertical"]) ::slotted(helix-toggle) {
129
+ flex: 0 0 auto;
114
130
  }`);
@@ -17,6 +17,14 @@ inline-size var(--helix-duration-normal) var(--helix-easing-standard);
17
17
  z-index: var(--helix-layer-overlay);
18
18
  }
19
19
 
20
+ [part="backdrop"] {
21
+ background-color: var(--tour-scrim-color, var(--helix-color-overlay));
22
+ inset: 0;
23
+ pointer-events: none;
24
+ position: fixed;
25
+ z-index: var(--helix-layer-overlay);
26
+ }
27
+
20
28
  @media print {
21
29
  :host {
22
30
  display: none;
@@ -31,6 +31,34 @@ outline: none;
31
31
  display: none;
32
32
  }
33
33
 
34
+ :host([type="dialog"]) [part="bubble"] {
35
+ margin: auto;
36
+ }
37
+
38
+ :host([type="floating"]) [part="bubble"] {
39
+ inset: auto;
40
+ inset-block-end: var(--helix-space-lg);
41
+ inset-inline-end: var(--helix-space-lg);
42
+ }
43
+
44
+ ::slotted([slot="heading"]) {
45
+ font-size: var(--helix-text-md);
46
+ font-weight: var(--helix-weight-semibold);
47
+ margin: var(--helix-space-none);
48
+ }
49
+
50
+ ::slotted([slot="description"]) {
51
+ color: var(--helix-color-foreground-muted);
52
+ font-size: var(--helix-text-sm);
53
+ margin: var(--helix-space-none);
54
+ }
55
+
56
+ [part="progress"] {
57
+ color: var(--helix-color-foreground-muted);
58
+ font-size: var(--helix-text-sm);
59
+ font-variant-numeric: tabular-nums;
60
+ }
61
+
34
62
  [part="content"] {
35
63
  display: flex;
36
64
  flex-direction: column;
@@ -75,4 +103,8 @@ border-left: var(--helix-border-thin) solid var(--helix-color-border);
75
103
  [part="bubble"][data-placement^="left"] [part~="arrow"] {
76
104
  border-right: var(--helix-border-thin) solid var(--helix-color-border);
77
105
  border-top: var(--helix-border-thin) solid var(--helix-color-border);
106
+ }
107
+
108
+ :host([type]) [part~="arrow"] {
109
+ display: none;
78
110
  }`);
@@ -4,13 +4,13 @@ align-items: center;
4
4
  display: inline-flex;
5
5
  font-size: var(--helix-text-sm);
6
6
  font-weight: var(--helix-weight-medium);
7
- gap: var(--helix-space-2xs);
7
+ gap: var(--trend-gap, var(--helix-space-2xs));
8
8
  line-height: var(--helix-leading-tight);
9
9
  }
10
10
 
11
11
  :host {
12
12
 
13
- --_trend-color: var(--helix-color-foreground-muted);
13
+ --_trend-color: var(--trend-neutral-color, var(--helix-color-foreground-muted));
14
14
  color: var(--trend-color, var(--_trend-color));
15
15
  }
16
16
 
@@ -18,14 +18,21 @@ color: var(--trend-color, var(--_trend-color));
18
18
  --icon-size: var(--trend-icon-size, 1em);
19
19
  }
20
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
+
21
28
  :host([direction="up"][good="up"]),
22
29
  :host([direction="down"][good="down"]) {
23
- --_trend-color: var(--helix-color-success);
30
+ --_trend-color: var(--trend-better-color, var(--helix-color-success));
24
31
  }
25
32
 
26
33
  :host([direction="up"][good="down"]),
27
34
  :host([direction="down"][good="up"]) {
28
- --_trend-color: var(--helix-color-danger);
35
+ --_trend-color: var(--trend-worse-color, var(--helix-color-danger));
29
36
  }
30
37
 
31
38
  [part="direction"] {
@@ -38,7 +45,7 @@ white-space: nowrap;
38
45
  }
39
46
 
40
47
  slot[name="label"] {
41
- color: var(--helix-color-foreground-muted);
48
+ color: var(--trend-label-color, var(--helix-color-foreground-muted));
42
49
  font-weight: var(--helix-weight-regular);
43
50
  }
44
51
 
@@ -24,8 +24,13 @@ import type { CSSResultGroup } from 'lit';
24
24
  * @aliases Delta, Change, Movement
25
25
  * @documentation https://fusion.dev/helix/components/trend
26
26
  *
27
+ * @cssproperty --trend-better-color - Color of a move that `good` says is an improvement.
27
28
  * @cssproperty --trend-color - Color of the arrow. Setting it overrides the color that `good` sets.
28
- * @cssproperty --trend-icon-size - Size of the arrow.
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.
31
+ * @cssproperty --trend-label-color - Color of the label.
32
+ * @cssproperty --trend-neutral-color - Color of a trend that `good` does not judge, or one that did not move.
33
+ * @cssproperty --trend-worse-color - Color of a move that `good` says is a setback.
29
34
  */
30
35
  export declare class HelixTrend extends HelixHeadlessTrend {
31
36
  static styles: CSSResultGroup;