@fusion.dev/helix 0.22.0 → 0.24.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 (110) hide show
  1. package/custom-elements.json +63613 -38645
  2. package/dist/accordion/item/accordion-item.css.js +4 -0
  3. package/dist/announcement/root/announcement-root.css.js +26 -12
  4. package/dist/announcement/root/announcement-root.d.ts +17 -0
  5. package/dist/announcement/root/announcement-root.js +4 -0
  6. package/dist/app-header/root/app-header-root.css.js +6 -0
  7. package/dist/area-chart/index.d.ts +1 -0
  8. package/dist/area-chart/index.js +1 -0
  9. package/dist/area-chart/root/area-chart-root.css.d.ts +1 -0
  10. package/dist/area-chart/root/area-chart-root.css.js +97 -0
  11. package/dist/area-chart/root/area-chart-root.d.ts +38 -0
  12. package/dist/area-chart/root/area-chart-root.js +20 -0
  13. package/dist/bar-chart/root/bar-chart-root.css.js +0 -141
  14. package/dist/bar-chart/root/bar-chart-root.js +2 -1
  15. package/dist/button/root/button-root.css.js +4 -1
  16. package/dist/chat/composer/chat-composer.css.js +4 -0
  17. package/dist/chat/message/chat-message.css.js +20 -0
  18. package/dist/chat/root/chat-root.css.js +26 -0
  19. package/dist/code-block/root/code-block-root.css.js +122 -0
  20. package/dist/code-block/root/code-block-root.d.ts +5 -0
  21. package/dist/data-table/root/data-table-root.css.js +21 -3
  22. package/dist/data-table/root/data-table-root.d.ts +1 -0
  23. package/dist/data-table/root/data-table-root.js +1 -0
  24. package/dist/description-list/index.d.ts +2 -0
  25. package/dist/description-list/index.js +2 -0
  26. package/dist/description-list/item/description-list-item.css.d.ts +1 -0
  27. package/dist/description-list/item/description-list-item.css.js +31 -0
  28. package/dist/description-list/item/description-list-item.d.ts +21 -0
  29. package/dist/description-list/item/description-list-item.js +16 -0
  30. package/dist/description-list/root/description-list-root.css.d.ts +1 -0
  31. package/dist/description-list/root/description-list-root.css.js +35 -0
  32. package/dist/description-list/root/description-list-root.d.ts +62 -0
  33. package/dist/description-list/root/description-list-root.js +23 -0
  34. package/dist/donut-chart/root/donut-chart-root.css.js +0 -138
  35. package/dist/donut-chart/root/donut-chart-root.js +2 -1
  36. package/dist/element-events.generated.js +36 -8
  37. package/dist/filter-input/chip/filter-chip.css.d.ts +1 -0
  38. package/dist/filter-input/chip/filter-chip.css.js +85 -0
  39. package/dist/filter-input/chip/filter-chip.d.ts +32 -0
  40. package/dist/filter-input/chip/filter-chip.js +16 -0
  41. package/dist/filter-input/field/filter-field.css.d.ts +1 -0
  42. package/dist/filter-input/field/filter-field.css.js +4 -0
  43. package/dist/filter-input/field/filter-field.d.ts +29 -0
  44. package/dist/filter-input/field/filter-field.js +16 -0
  45. package/dist/filter-input/index.d.ts +4 -0
  46. package/dist/filter-input/index.js +4 -0
  47. package/dist/filter-input/menu/filter-menu.css.d.ts +1 -0
  48. package/dist/filter-input/menu/filter-menu.css.js +4 -0
  49. package/dist/filter-input/menu/filter-menu.d.ts +33 -0
  50. package/dist/filter-input/menu/filter-menu.js +19 -0
  51. package/dist/filter-input/operator/filter-operator.css.d.ts +1 -0
  52. package/dist/filter-input/operator/filter-operator.css.js +4 -0
  53. package/dist/filter-input/operator/filter-operator.d.ts +27 -0
  54. package/dist/filter-input/operator/filter-operator.js +16 -0
  55. package/dist/filter-input/root/filter-input-root.css.js +25 -2
  56. package/dist/filter-input/root/filter-input-root.d.ts +3 -0
  57. package/dist/heatmap/root/heatmap-root.d.ts +1 -0
  58. package/dist/heatmap/root/heatmap-root.js +1 -0
  59. package/dist/index.d.ts +5 -0
  60. package/dist/index.js +5 -0
  61. package/dist/line-chart/root/line-chart-root.css.js +0 -138
  62. package/dist/line-chart/root/line-chart-root.js +2 -1
  63. package/dist/menu/item/menu-item.css.js +33 -6
  64. package/dist/menu/item/menu-item.d.ts +2 -1
  65. package/dist/menu/root/menu-root.css.js +15 -0
  66. package/dist/navigation/root/navigation-root.css.js +2 -1
  67. package/dist/notifications/group/notification-group.css.d.ts +1 -0
  68. package/dist/notifications/group/notification-group.css.js +61 -0
  69. package/dist/notifications/group/notification-group.d.ts +37 -0
  70. package/dist/notifications/group/notification-group.js +16 -0
  71. package/dist/notifications/index.d.ts +1 -0
  72. package/dist/notifications/index.js +1 -0
  73. package/dist/notifications/notification/notification.css.js +74 -8
  74. package/dist/notifications/notification/notification.d.ts +25 -0
  75. package/dist/notifications/notification/notification.js +5 -0
  76. package/dist/notifications/root/notifications-root.css.js +8 -0
  77. package/dist/object-inspector/index.d.ts +1 -0
  78. package/dist/object-inspector/index.js +1 -0
  79. package/dist/object-inspector/root/object-inspector-root.css.d.ts +1 -0
  80. package/dist/object-inspector/root/object-inspector-root.css.js +148 -0
  81. package/dist/object-inspector/root/object-inspector-root.d.ts +35 -0
  82. package/dist/object-inspector/root/object-inspector-root.js +18 -0
  83. package/dist/sandbox/root/sandbox-root.d.ts +4 -0
  84. package/dist/sandbox/toolbar/sandbox-toolbar.css.js +7 -1
  85. package/dist/scatter-chart/index.d.ts +1 -0
  86. package/dist/scatter-chart/index.js +1 -0
  87. package/dist/scatter-chart/root/scatter-chart-root.css.d.ts +1 -0
  88. package/dist/scatter-chart/root/scatter-chart-root.css.js +138 -0
  89. package/dist/scatter-chart/root/scatter-chart-root.d.ts +38 -0
  90. package/dist/scatter-chart/root/scatter-chart-root.js +20 -0
  91. package/dist/shared/chart/tooltip.css.d.ts +1 -0
  92. package/dist/shared/chart/tooltip.css.js +141 -0
  93. package/dist/skip-link/index.d.ts +1 -0
  94. package/dist/skip-link/index.js +1 -0
  95. package/dist/skip-link/root/skip-link-root.css.d.ts +1 -0
  96. package/dist/skip-link/root/skip-link-root.css.js +36 -0
  97. package/dist/skip-link/root/skip-link-root.d.ts +42 -0
  98. package/dist/skip-link/root/skip-link-root.js +17 -0
  99. package/dist/steps/step/step.css.js +4 -0
  100. package/dist/table/column/table-column.css.js +66 -0
  101. package/dist/tag/root/tag-root.d.ts +10 -0
  102. package/dist/text/root/text-root.d.ts +26 -13
  103. package/dist/text/root/text-root.js +3 -0
  104. package/dist/time-picker/root/time-picker-root.css.js +2 -2
  105. package/dist/toast/item/toast-item.css.js +9 -4
  106. package/dist/toolbar/root/toolbar-root.css.js +6 -0
  107. package/package.json +6 -6
  108. package/types/jsx.d.ts +4797 -701
  109. package/types/svelte.d.ts +11 -0
  110. package/types/vue.d.ts +910 -52
@@ -27,8 +27,9 @@ import type { CSSResultGroup } from 'lit';
27
27
  * the ramp is named, and a page built from it is consistent because there was
28
28
  * nothing else to choose.
29
29
  *
30
- * `tone` stays separate, because color carries state rather than typography.
31
- * Folding it in would mean `caption-danger` and `label-primary` and the rest of
30
+ * `tone` and `emphasis` stay separate, because color carries state rather than
31
+ * typography, and what a line means is not how loudly it says it. Folding
32
+ * either in would mean `caption-danger` and `label-muted` and the rest of the
32
33
  * cross product, which is the explosion a named ramp exists to prevent.
33
34
  *
34
35
  * @since 0.1.0
@@ -49,23 +50,35 @@ export declare class HelixText extends HelixElement {
49
50
  */
50
51
  as?: 'span' | 'p' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'strong' | 'em' | 'code' | 'label';
51
52
  /**
52
- * Color role. A separate axis from the type ramp, because color carries
53
- * state: folding it in would mean `caption-danger` and the rest of the cross
54
- * product.
53
+ * How loud the text is, beside what it means.
54
+ *
55
+ * `muted` is the quiet ink that still has to be read, and `subtle` the
56
+ * quieter one below it. Two axes because the test says so: a line can be a
57
+ * danger *and* quiet at once, and a muted danger is what a validation hint
58
+ * under a field is.
59
+ *
60
+ * **With a `tone`, both are that tone's one quiet ink**: the tone's hue at half
61
+ * its chroma, as readable as the tone. The readable range holds one quiet step
62
+ * and not two, measured in #124 for the neutral ink, and a tone has less room
63
+ * there rather than more, so `subtle` on a tone is the same ink as `muted`
64
+ * rather than a second one that could not be read.
65
+ *
66
+ * The resting case is the absent attribute, full strength.
67
+ */
68
+ emphasis?: 'muted' | 'subtle';
69
+ /**
70
+ * What the text means. A separate axis from the type ramp, because color
71
+ * carries state: folding it in would mean `caption-danger` and the rest of the
72
+ * cross product.
55
73
  *
56
74
  * **There is no `default` value**, and one must not be added: it would match
57
75
  * no rule and fall through to the inherited ink, reading as working while
58
76
  * saying nothing. The resting case is the absent attribute.
59
77
  *
60
- * **`muted` and `subtle` are weight rather than meaning and belong on
61
- * `emphasis`, which is why this is still off the registry.** Splitting them
62
- * out is blocked on the palette rather than on the rename: there is a quiet
63
- * step for the neutral ink and none for any other tone, so a muted danger has
64
- * nothing to be made of. `primary-subtle` is a tinted *ground* and not a
65
- * quiet ink. That is #141's to derive, and until it does, folding the two
66
- * halves apart would leave three of the four combinations unsayable.
78
+ * Weight is not a tone. How loud the text is belongs on `emphasis`, which is
79
+ * why `muted` and `subtle` moved there.
67
80
  */
68
- tone?: 'muted' | 'subtle' | 'primary' | 'danger';
81
+ tone?: 'accent' | 'danger' | 'info' | 'primary' | 'success' | 'warning';
69
82
  /**
70
83
  * Type treatment.
71
84
  *
@@ -32,6 +32,9 @@ let HelixText = class HelixText extends HelixElement {
32
32
  __decorate([
33
33
  property({ reflect: true })
34
34
  ], HelixText.prototype, "as", void 0);
35
+ __decorate([
36
+ property({ reflect: true })
37
+ ], HelixText.prototype, "emphasis", void 0);
35
38
  __decorate([
36
39
  property({ reflect: true })
37
40
  ], HelixText.prototype, "tone", void 0);
@@ -111,8 +111,8 @@ background-color: var(--helix-color-surface-sunken);
111
111
  }
112
112
 
113
113
  [part="column"] [part="option"]:state(selected)::part(label) {
114
- background-color: var(--time-picker-selected-color, var(--helix-color-foreground-muted));
115
- color: var(--helix-color-foreground-on-accent);
114
+ background-color: var(--time-picker-selected-color, var(--helix-color-surface-inverse));
115
+ color: var(--helix-color-foreground-inverse);
116
116
  }
117
117
 
118
118
  [part="column"] [part="option"]::part(item)::after {
@@ -2,7 +2,11 @@ import { createSheet } from '@fusion.dev/helix-core';
2
2
  export const styles = createSheet(`:host {
3
3
 
4
4
  --helix-size-icon: var(--helix-size-icon-sm);
5
+ --helix-size-icon-loose: calc(var(--helix-size-icon) * 1.2);
6
+ --helix-size-icon-tight: calc(var(--helix-size-icon) * 0.8);
5
7
  --helix-size-control: var(--helix-size-control-sm);
8
+ --helix-size-control-loose: calc(var(--helix-size-control) * 1.2);
9
+ --helix-size-control-tight: calc(var(--helix-size-control) * 0.8);
6
10
 
7
11
  --_toast-line: calc(var(--helix-text-sm) * var(--helix-leading-normal));
8
12
 
@@ -42,7 +46,7 @@ padding: var(--toast-item-padding, var(--helix-space-sm));
42
46
 
43
47
  padding-inline-end: calc(
44
48
  var(--helix-space-sm) +
45
- var(--helix-size-control-tight) +
49
+ var(--helix-size-control) +
46
50
  var(--helix-space-2xs)
47
51
  );
48
52
 
@@ -112,19 +116,20 @@ all: unset;
112
116
  box-sizing: border-box;
113
117
 
114
118
  position: absolute;
119
+
115
120
  inset-block-start: calc(
116
121
  var(--toast-item-padding, var(--helix-space-sm)) +
117
- (var(--_toast-line) - var(--helix-size-control-tight)) /
122
+ (var(--_toast-line) - var(--helix-size-control)) /
118
123
  2
119
124
  );
120
125
  inset-inline-end: var(--helix-space-sm);
121
- block-size: var(--helix-size-control-tight);
126
+ block-size: var(--helix-size-control);
122
127
  border-radius: var(--helix-radii-sm);
123
128
  color: var(--helix-color-foreground-muted);
124
129
  cursor: pointer;
125
130
  display: inline-flex;
126
131
  flex: 0 0 auto;
127
- inline-size: var(--helix-size-control-tight);
132
+ inline-size: var(--helix-size-control);
128
133
  place-content: center;
129
134
  place-items: center;
130
135
  transition: color var(--helix-duration-fast) var(--helix-easing-standard);
@@ -2,9 +2,15 @@ import { createSheet } from '@fusion.dev/helix-core';
2
2
  export const styles = createSheet(`:host {
3
3
 
4
4
  --helix-size-checkbox: var(--helix-size-checkbox-sm);
5
+ --helix-size-checkbox-loose: calc(var(--helix-size-checkbox) * 1.2);
6
+ --helix-size-checkbox-tight: calc(var(--helix-size-checkbox) * 0.8);
5
7
 
6
8
  --helix-size-icon: var(--helix-size-icon-sm);
9
+ --helix-size-icon-loose: calc(var(--helix-size-icon) * 1.2);
10
+ --helix-size-icon-tight: calc(var(--helix-size-icon) * 0.8);
7
11
  --helix-size-control: var(--helix-size-control-sm);
12
+ --helix-size-control-loose: calc(var(--helix-size-control) * 1.2);
13
+ --helix-size-control-tight: calc(var(--helix-size-control) * 0.8);
8
14
  --helix-size-tag: var(--helix-size-tag-sm);
9
15
 
10
16
  display: inline-flex;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@fusion.dev/helix",
3
3
  "description": "Styled component tier. Extends the headless tier with token-driven presentation.",
4
- "version": "0.22.0",
4
+ "version": "0.24.0",
5
5
  "license": "MIT",
6
6
  "author": "Ross Sheppard <ross.sheppard@fusion.dev>",
7
7
  "repository": {
@@ -46,14 +46,14 @@
46
46
  },
47
47
  "bugs": "https://github.com/project-fusion/fusion/issues",
48
48
  "dependencies": {
49
- "@fusion.dev/helix-core": "0.22.0",
50
- "@fusion.dev/helix-headless": "0.22.0",
51
- "@fusion.dev/helix-styles": "0.22.0"
49
+ "@fusion.dev/helix-core": "0.24.0",
50
+ "@fusion.dev/helix-headless": "0.24.0",
51
+ "@fusion.dev/helix-styles": "0.24.0"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@custom-elements-manifest/analyzer": "^0.11.0",
55
- "@fusion.dev/helix-cem": "0.22.0",
56
- "@fusion.dev/helix-testing": "0.22.0",
55
+ "@fusion.dev/helix-cem": "0.24.0",
56
+ "@fusion.dev/helix-testing": "0.24.0",
57
57
  "@fusion.dev/scripts": "0.0.0-dev",
58
58
  "@happy-dom/global-registrator": "^20.0.0",
59
59
  "@lit-labs/ssr": "^3.3.0",