@plastic-js/tsumiki 0.1.51 → 0.1.53

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 (57) hide show
  1. package/dist/components/Accordion.js +6 -6
  2. package/dist/components/Avatar.js +4 -4
  3. package/dist/components/BackToTop.js +3 -3
  4. package/dist/components/BottomNavigation.js +4 -4
  5. package/dist/components/BottomSheet.js +1 -2
  6. package/dist/components/Button.js +17 -19
  7. package/dist/components/Checkbox.js +11 -29
  8. package/dist/components/Clipboard.js +2 -2
  9. package/dist/components/CloseButton.js +4 -4
  10. package/dist/components/Collapsible.js +3 -3
  11. package/dist/components/ColorPicker.js +6 -6
  12. package/dist/components/Combobox.js +10 -9
  13. package/dist/components/{DateInput.js → DatePicker.js} +37 -22
  14. package/dist/components/Dialog.js +7 -7
  15. package/dist/components/Drawer.js +7 -7
  16. package/dist/components/Field.js +3 -3
  17. package/dist/components/Fieldset.js +2 -2
  18. package/dist/components/FileUpload.js +12 -12
  19. package/dist/components/FilterGroup.js +50 -109
  20. package/dist/components/Input.js +15 -14
  21. package/dist/components/Link.js +2 -2
  22. package/dist/components/Listbox.js +7 -6
  23. package/dist/components/Menu.js +8 -7
  24. package/dist/components/MoneyInput.js +1 -1
  25. package/dist/components/NumberInput.js +8 -9
  26. package/dist/components/Pagination.js +8 -8
  27. package/dist/components/Popover.js +5 -5
  28. package/dist/components/Progress.js +3 -3
  29. package/dist/components/RadioGroup.js +5 -10
  30. package/dist/components/RatingGroup.js +5 -5
  31. package/dist/components/SearchInput.js +4 -1
  32. package/dist/components/Select.js +51 -25
  33. package/dist/components/SelectPc.js +18 -20
  34. package/dist/components/SignaturePad.js +6 -7
  35. package/dist/components/Skeleton.js +1 -1
  36. package/dist/components/Slider.js +7 -7
  37. package/dist/components/Spinner.js +1 -1
  38. package/dist/components/Steps.js +23 -23
  39. package/dist/components/Switch.js +19 -10
  40. package/dist/components/Tabs.js +5 -5
  41. package/dist/components/TagsInput.js +6 -6
  42. package/dist/components/Toast.js +14 -14
  43. package/dist/components/Toggle.js +7 -7
  44. package/dist/components/ToggleGroup.js +19 -8
  45. package/dist/components/Tour.js +3 -3
  46. package/dist/components/TreeView.js +5 -5
  47. package/dist/index.js +2 -2
  48. package/dist/tsumiki.css +1 -1
  49. package/docs/api.md +48 -136
  50. package/docs/component-api-pattern.md +1 -1
  51. package/docs/scroll-lock-issue.md +3 -3
  52. package/package.json +1 -1
  53. package/src/styles/color.css +42 -0
  54. package/src/styles/semantic.css +212 -0
  55. package/src/styles/shadow.css +1 -0
  56. package/src/styles/theme.css +14 -0
  57. package/src/styles/tokens.css +1 -0
@@ -10,7 +10,7 @@ var _tmpl = template("<div><div><!><!></div><!></div>");
10
10
  var backdropClass = css({
11
11
  position: "fixed",
12
12
  inset: 0,
13
- background: "rgba(0, 0, 0, 0.6)",
13
+ background: "var(--tsu-bg-overlay)",
14
14
  backdropFilter: "blur(4px)",
15
15
  "&[hidden]": { display: "none" }
16
16
  });
@@ -24,8 +24,8 @@ var positionerClass = css({
24
24
  });
25
25
  var contentClass = css({
26
26
  pointerEvents: "auto",
27
- background: "var(--tsu-surface)",
28
- borderLeft: "1px solid var(--tsu-neutral-7)",
27
+ background: "var(--tsu-bg-panel)",
28
+ borderLeft: "1px solid var(--tsu-border)",
29
29
  width: "min(320px, calc(100vw - 24px))",
30
30
  height: "100%",
31
31
  display: "flex",
@@ -39,7 +39,7 @@ var headClass = css({
39
39
  alignItems: "center",
40
40
  justifyContent: "space-between",
41
41
  padding: "18px var(--tsu-container-padding-lg)",
42
- borderBottom: "1px solid var(--tsu-neutral-7)",
42
+ borderBottom: "1px solid var(--tsu-border)",
43
43
  flexShrink: 0
44
44
  });
45
45
  var titleWrapClass = css({
@@ -50,7 +50,7 @@ var titleWrapClass = css({
50
50
  });
51
51
  var titleIconClass = css({
52
52
  flexShrink: 0,
53
- color: "var(--tsu-accent-9)"
53
+ color: "var(--tsu-accent-solid-bg)"
54
54
  });
55
55
  var titleClass = css({
56
56
  fontSize: "18px",
@@ -63,7 +63,7 @@ var closeBtnClass = css({
63
63
  borderRadius: "50%",
64
64
  background: "transparent",
65
65
  border: "none",
66
- color: "var(--tsu-neutral-11)",
66
+ color: "var(--tsu-text-secondary)",
67
67
  fontSize: "22px",
68
68
  lineHeight: 1,
69
69
  cursor: "pointer",
@@ -80,7 +80,7 @@ var bodyClass = css({
80
80
  var descClass = css({
81
81
  margin: "8px 0 0",
82
82
  fontSize: "var(--tsu-comp-font-size-sm)",
83
- color: "var(--tsu-neutral-11)",
83
+ color: "var(--tsu-text-secondary)",
84
84
  lineHeight: 1.5
85
85
  });
86
86
  var ArkRoot = Drawer.Root;
@@ -33,18 +33,18 @@ var inputWrapClass = css({
33
33
  gap: "var(--tsu-spacing-xs)"
34
34
  });
35
35
  var requiredClass = css({
36
- color: "var(--tsu-danger-9)",
36
+ color: "var(--tsu-danger-solid-bg)",
37
37
  marginLeft: "var(--tsu-spacing-xxs)"
38
38
  });
39
39
  var errorTextClass = css({
40
40
  fontSize: "var(--tsu-font-size-sm)",
41
- color: "var(--tsu-danger-9)",
41
+ color: "var(--tsu-danger-solid-bg)",
42
42
  margin: 0,
43
43
  flexBasis: "100%"
44
44
  });
45
45
  var helperTextClass = css({
46
46
  fontSize: "var(--tsu-font-size-sm)",
47
- color: "var(--tsu-neutral-11)",
47
+ color: "var(--tsu-text-secondary)",
48
48
  margin: 0,
49
49
  flexBasis: "100%"
50
50
  });
@@ -7,7 +7,7 @@ var rootClass = css({
7
7
  display: "flex",
8
8
  flexDirection: "column",
9
9
  gap: "var(--tsu-spacing-xs)",
10
- border: "1px solid var(--tsu-neutral-7)",
10
+ border: "1px solid var(--tsu-border)",
11
11
  borderRadius: "var(--tsu-radius-l1-md)",
12
12
  padding: "var(--tsu-spacing-lg)"
13
13
  });
@@ -20,7 +20,7 @@ var legendClass = css({
20
20
  });
21
21
  var helperClass = css({
22
22
  fontSize: "var(--tsu-font-size-sm)",
23
- color: "var(--tsu-neutral-11)",
23
+ color: "var(--tsu-text-secondary)",
24
24
  margin: 0
25
25
  });
26
26
  var read = (v) => typeof v === "function" ? v() : v;
@@ -23,22 +23,22 @@ var dropzoneClass = css({
23
23
  justifyContent: "center",
24
24
  gap: "var(--tsu-spacing-sm)",
25
25
  padding: "var(--tsu-spacing-xl)",
26
- border: "2px dashed var(--tsu-accent-7)",
26
+ border: "2px dashed var(--tsu-accent-outline-border)",
27
27
  borderRadius: "var(--tsu-radius-l2-md)",
28
- backgroundColor: "var(--tsu-surface)",
28
+ backgroundColor: "var(--tsu-bg-panel)",
29
29
  cursor: "pointer",
30
30
  minHeight: "120px",
31
31
  transition: "border-color var(--tsu-transition-fast), background-color var(--tsu-transition-fast)",
32
32
  touchAction: "manipulation",
33
33
  "&[data-disabled]": {
34
- opacity: .5,
34
+ opacity: "var(--tsu-disabled-opacity)",
35
35
  cursor: "not-allowed",
36
36
  pointerEvents: "none"
37
37
  }
38
38
  });
39
39
  var dropzoneTextClass = css({
40
40
  fontSize: "var(--tsu-font-size-sm)",
41
- color: "var(--tsu-neutral-9)",
41
+ color: "var(--tsu-text-subtle)",
42
42
  textAlign: "center"
43
43
  });
44
44
  var itemGroupClass = css({
@@ -54,8 +54,8 @@ var itemClass = css({
54
54
  alignItems: "center",
55
55
  gap: "var(--tsu-spacing-sm)",
56
56
  padding: "var(--tsu-spacing-sm) var(--tsu-spacing-md)",
57
- backgroundColor: "var(--tsu-surface)",
58
- border: "1px solid var(--tsu-neutral-5)",
57
+ backgroundColor: "var(--tsu-bg-panel)",
58
+ border: "1px solid var(--tsu-border)",
59
59
  borderRadius: "var(--tsu-radius-l2-md)"
60
60
  });
61
61
  var itemNameClass = css({
@@ -68,7 +68,7 @@ var itemNameClass = css({
68
68
  });
69
69
  var itemSizeTextClass = css({
70
70
  fontSize: "var(--tsu-font-size-xs)",
71
- color: "var(--tsu-neutral-9)",
71
+ color: "var(--tsu-text-subtle)",
72
72
  marginTop: "var(--tsu-spacing-xxs)"
73
73
  });
74
74
  var itemDeleteClass = css({
@@ -80,7 +80,7 @@ var itemDeleteClass = css({
80
80
  flexShrink: 0,
81
81
  border: "none",
82
82
  background: "none",
83
- color: "var(--tsu-neutral-9)",
83
+ color: "var(--tsu-text-subtle)",
84
84
  cursor: "pointer",
85
85
  borderRadius: "var(--tsu-radius-l1-md)",
86
86
  padding: 0
@@ -90,16 +90,16 @@ var clearClass = css({
90
90
  alignItems: "center",
91
91
  gap: "var(--tsu-spacing-xs)",
92
92
  padding: "var(--tsu-spacing-sm) var(--tsu-spacing-md)",
93
- border: "1px solid var(--tsu-neutral-7)",
93
+ border: "1px solid var(--tsu-neutral-outline-border)",
94
94
  borderRadius: "var(--tsu-radius-l2-md)",
95
- backgroundColor: "var(--tsu-surface)",
96
- color: "var(--tsu-neutral-11)",
95
+ backgroundColor: "var(--tsu-bg-panel)",
96
+ color: "var(--tsu-text-secondary)",
97
97
  fontSize: "var(--tsu-font-size-sm)",
98
98
  cursor: "pointer",
99
99
  fontFamily: "inherit",
100
100
  touchAction: "manipulation",
101
101
  "&:disabled": {
102
- opacity: .5,
102
+ opacity: "var(--tsu-disabled-opacity)",
103
103
  cursor: "not-allowed"
104
104
  }
105
105
  });
@@ -1,46 +1,10 @@
1
- import ToggleGroup, { ToggleGroupItem } from "./ToggleGroup.js";
1
+ import Button from "./Button.js";
2
2
  import { insert, jsx, mergeProps, setProp, template } from "@plastic-js/plastic/jsx-runtime";
3
3
  import { css } from "@emotion/css";
4
4
  import { mergeProps as mergeProps$1, splitProps } from "@plastic-js/plastic";
5
5
  //#region src/components/FilterGroup.jsx
6
- var _tmpl = template("<button type=\"button\"></button>");
6
+ var _tmpl = template("<div></div>");
7
7
  var access = (v) => typeof v === "function" ? v() : v;
8
- var sizeVars = {
9
- xs: {
10
- "--_tg-padding-y": "var(--tsu-comp-padding-y-xs)",
11
- "--_tg-padding-x": "var(--tsu-comp-padding-x-xs)",
12
- "--_tg-font-size": "var(--tsu-comp-font-size-xs)",
13
- "--_tg-radius": "var(--tsu-radius-l1-xs)"
14
- },
15
- sm: {
16
- "--_tg-padding-y": "var(--tsu-comp-padding-y-sm)",
17
- "--_tg-padding-x": "var(--tsu-comp-padding-x-sm)",
18
- "--_tg-font-size": "var(--tsu-comp-font-size-sm)",
19
- "--_tg-radius": "var(--tsu-radius-l1-sm)"
20
- },
21
- md: {
22
- "--_tg-padding-y": "var(--tsu-comp-padding-y-md)",
23
- "--_tg-padding-x": "var(--tsu-comp-padding-x-md)",
24
- "--_tg-font-size": "var(--tsu-comp-font-size-md)",
25
- "--_tg-radius": "var(--tsu-radius-l1-md)"
26
- },
27
- lg: {
28
- "--_tg-padding-y": "var(--tsu-comp-padding-y-lg)",
29
- "--_tg-padding-x": "var(--tsu-comp-padding-x-lg)",
30
- "--_tg-font-size": "var(--tsu-comp-font-size-lg)",
31
- "--_tg-radius": "var(--tsu-radius-l1-lg)"
32
- },
33
- xl: {
34
- "--_tg-padding-y": "var(--tsu-comp-padding-y-xl)",
35
- "--_tg-padding-x": "var(--tsu-comp-padding-x-xl)",
36
- "--_tg-font-size": "var(--tsu-comp-font-size-xl)",
37
- "--_tg-radius": "var(--tsu-radius-l1-xl)"
38
- }
39
- };
40
- var defaultStyle = {
41
- "--_tg-border": "var(--tsu-accent-9)",
42
- "--_fg-gap": "var(--tsu-spacing-sm)"
43
- };
44
8
  var rootClass = css({
45
9
  display: "flex",
46
10
  width: "100%",
@@ -53,47 +17,22 @@ var stickyClass = css({
53
17
  zIndex: "var(--tsu-z-dropdown)",
54
18
  backgroundColor: "var(--tsu-surface)"
55
19
  });
56
- var allClass = css({
57
- display: "flex",
58
- alignItems: "center",
59
- justifyContent: "center",
60
- flexShrink: 0,
61
- padding: "var(--_tg-padding-y, var(--tsu-comp-padding-y-md)) var(--_tg-padding-x, var(--tsu-comp-padding-x-md))",
62
- border: "1px solid var(--_tg-border)",
20
+ var pillClass = css({
63
21
  borderRadius: "var(--tsu-radius-round)",
64
- background: "transparent",
65
- color: "var(--tsu-neutral-11)",
66
- fontSize: "var(--_tg-font-size, var(--tsu-comp-font-size-md))",
67
- fontWeight: "var(--tsu-font-weight-medium)",
68
- fontFamily: "inherit",
69
- cursor: "pointer",
70
- touchAction: "manipulation",
71
- transition: "background-color var(--tsu-transition-fast), color var(--tsu-transition-fast)",
72
- "&[data-state=\"on\"]": {
73
- backgroundColor: "var(--tsu-accent-9)",
74
- color: "var(--tsu-bg)"
75
- },
76
- "&:disabled": {
77
- opacity: .5,
78
- cursor: "not-allowed"
79
- }
22
+ flexShrink: 0
80
23
  });
24
+ var selectedItemClass = css({ backgroundColor: "var(--tsu-accent-outline-bg-active)" });
81
25
  var groupClass = css({
82
- border: "none",
83
- overflowX: "auto",
84
- overflowY: "hidden",
26
+ display: "flex",
27
+ alignItems: "center",
28
+ gap: "var(--_fg-gap, var(--tsu-spacing-sm))",
85
29
  flex: "1 1 auto",
86
30
  minWidth: 0,
87
- gap: "var(--_fg-gap, var(--tsu-spacing-sm))",
31
+ overflowX: "auto",
32
+ overflowY: "hidden",
88
33
  scrollbarWidth: "none",
89
34
  "::-webkit-scrollbar": { display: "none" }
90
35
  });
91
- var itemClass = css({
92
- border: "1px solid var(--_tg-border)",
93
- borderRadius: "var(--tsu-radius-round)",
94
- flexShrink: 0,
95
- "&:last-child": { border: "1px solid var(--_tg-border)" }
96
- });
97
36
  var FilterGroup = (props = {}) => {
98
37
  const [local, rest] = splitProps(mergeProps$1({
99
38
  size: "md",
@@ -120,7 +59,11 @@ var FilterGroup = (props = {}) => {
120
59
  if (allActive()) return;
121
60
  emit([]);
122
61
  };
123
- const handleChange = (value) => emit(value);
62
+ const handleItemClick = (itemValue) => {
63
+ const current = value();
64
+ emit(current.includes(itemValue) ? current.filter((v) => v !== itemValue) : [...current, itemValue]);
65
+ };
66
+ const buttonClassNames = [pillClass, local.buttonClass].filter(Boolean).join(" ");
124
67
  return jsx("div", mergeProps(rest, {
125
68
  className: () => [
126
69
  rootClass,
@@ -128,50 +71,48 @@ var FilterGroup = (props = {}) => {
128
71
  local.className
129
72
  ].filter(Boolean).join(" "),
130
73
  style: () => ({
131
- ...defaultStyle,
132
- ...sizeVars[access(local.size)],
74
+ "--_fg-gap": "var(--tsu-spacing-sm)",
133
75
  ...typeof sticky() === "number" ? { top: `${sticky()}px` } : void 0
134
76
  }),
135
- children: [() => {
136
- const _el0 = _tmpl.cloneNode(true);
137
- insert(_el0, () => local.allLabel);
138
- setProp(_el0, "className", () => [allClass, local.buttonClass].filter(Boolean).join(" "));
139
- setProp(_el0, "data-state", () => allActive() ? "on" : "off");
140
- setProp(_el0, "onClick", () => handleAllClick);
141
- return _el0;
142
- }, jsx(ToggleGroup, mergeProps({
143
- multiple: true,
77
+ children: [jsx(Button, mergeProps({
78
+ type: "button",
144
79
  get size() {
145
80
  return local.size;
146
81
  },
147
- get value() {
148
- return allActive() ? [] : value();
149
- },
150
- onValueChange: handleChange,
151
- get className() {
152
- return [groupClass, local.groupClass].filter(Boolean).join(" ");
82
+ get solid() {
83
+ return allActive();
153
84
  },
154
- children: () => local.items.map((item) => jsx(ToggleGroupItem, mergeProps({
155
- get key() {
156
- return item.value;
157
- },
158
- get value() {
159
- return item.value;
160
- },
161
- get disabled() {
162
- return item.disabled;
163
- },
164
- get className() {
165
- return [itemClass, local.buttonClass].filter(Boolean).join(" ");
166
- },
167
- children: () => item.label
168
- })))
169
- }))]
85
+ className: buttonClassNames,
86
+ onClick: handleAllClick,
87
+ children: () => local.allLabel
88
+ })), () => {
89
+ const _el0 = _tmpl.cloneNode(true);
90
+ insert(_el0, () => local.items.map((item) => {
91
+ const selected = value().includes(item.value);
92
+ return jsx(Button, mergeProps({
93
+ get key() {
94
+ return item.value;
95
+ },
96
+ type: "button",
97
+ get size() {
98
+ return local.size;
99
+ },
100
+ intent: selected ? "default" : "neutral",
101
+ get disabled() {
102
+ return item.disabled;
103
+ },
104
+ get className() {
105
+ return [selected && selectedItemClass, buttonClassNames].filter(Boolean).join(" ");
106
+ },
107
+ onClick: () => handleItemClick(item.value),
108
+ children: () => item.label
109
+ }));
110
+ }));
111
+ setProp(_el0, "className", () => [groupClass, local.groupClass].filter(Boolean).join(" "));
112
+ return _el0;
113
+ }]
170
114
  }));
171
115
  };
172
- FilterGroup.origin = {
173
- ToggleGroup,
174
- ToggleGroupItem
175
- };
116
+ FilterGroup.origin = { Button };
176
117
  //#endregion
177
118
  export { FilterGroup as default };
@@ -65,7 +65,7 @@ var variantClasses = {
65
65
  }
66
66
  }),
67
67
  outline: css({
68
- border: "1px solid var(--_input-border, var(--tsu-accent-8))",
68
+ border: "1px solid var(--_input-border)",
69
69
  color: "var(--tsu-fg)",
70
70
  "&:focus-within": {
71
71
  backgroundColor: "var(--tsu-focus-bg)",
@@ -74,18 +74,16 @@ var variantClasses = {
74
74
  })
75
75
  };
76
76
  var intentClasses = {
77
- default: css({ "--_input-border": "var(--tsu-accent-8)" }),
78
- neutral: css({ "--_input-border": "var(--tsu-neutral-6)" }),
79
- danger: css({ "--_input-border": "var(--tsu-danger-9)" })
77
+ default: css({ "--_input-border": "var(--tsu-accent-outline-border)" }),
78
+ neutral: css({ "--_input-border": "var(--tsu-neutral-outline-border)" }),
79
+ danger: css({ "--_input-border": "var(--tsu-danger-outline-border)" })
80
80
  };
81
81
  var errorClass = css({
82
- borderColor: "var(--tsu-danger-9) !important",
83
- "&:focus-within": { borderColor: "var(--tsu-danger-9) !important" }
82
+ borderColor: "var(--tsu-danger-outline-border) !important",
83
+ "&:focus-within": { borderColor: "var(--tsu-danger-outline-border) !important" }
84
84
  });
85
85
  var disabledClass = css({
86
- backgroundColor: "var(--tsu-disabled-bg) !important",
87
- borderColor: "var(--tsu-disabled-border) !important",
88
- color: "var(--tsu-disabled-fg) !important",
86
+ opacity: "var(--tsu-disabled-opacity)",
89
87
  cursor: "not-allowed"
90
88
  });
91
89
  var inputClass = css({
@@ -97,13 +95,13 @@ var inputClass = css({
97
95
  fontSize: "inherit",
98
96
  color: "inherit",
99
97
  padding: 0,
100
- "&::placeholder": { color: "var(--tsu-neutral-11)" }
98
+ "&::placeholder": { color: "var(--tsu-text-secondary)" }
101
99
  });
102
100
  var affixClass = css({
103
101
  flexShrink: 0,
104
102
  display: "inline-flex",
105
103
  alignItems: "center",
106
- color: "var(--tsu-neutral-11)",
104
+ color: "var(--tsu-text-secondary)",
107
105
  userSelect: "none",
108
106
  "& > svg": {
109
107
  width: "1.3em",
@@ -124,16 +122,19 @@ var eyeButtonClass = css({
124
122
  background: "none",
125
123
  border: "none",
126
124
  borderRadius: "var(--tsu-radius-l1-sm)",
127
- color: "var(--tsu-neutral-11)",
125
+ color: "var(--tsu-text-secondary)",
128
126
  cursor: "pointer",
129
127
  "& svg": {
130
128
  width: "100%",
131
129
  height: "100%",
132
130
  display: "block"
133
131
  },
134
- "&:hover": { color: "var(--tsu-fg)" },
132
+ "&:active": {
133
+ color: "var(--tsu-fg)",
134
+ backgroundColor: "var(--tsu-pressed)"
135
+ },
135
136
  "&:focus-visible": {
136
- outline: "2px solid var(--tsu-accent-9)",
137
+ outline: "2px solid var(--tsu-accent-outline-border-hover)",
137
138
  outlineOffset: "1px"
138
139
  }
139
140
  });
@@ -3,14 +3,14 @@ import { css } from "@emotion/css";
3
3
  import { mergeProps as mergeProps$1, splitProps } from "@plastic-js/plastic";
4
4
  //#region src/components/Link.jsx
5
5
  var baseClass = css({
6
- color: "var(--tsu-accent-11)",
6
+ color: "var(--tsu-accent-plain-fg)",
7
7
  textDecoration: "none",
8
8
  cursor: "pointer",
9
9
  fontWeight: "var(--tsu-font-weight-medium)",
10
10
  transition: "color var(--tsu-transition-fast), text-decoration-color var(--tsu-transition-fast)",
11
11
  "&:hover": {
12
12
  textDecoration: "underline",
13
- textDecorationColor: "var(--tsu-accent-6)"
13
+ textDecorationColor: "var(--tsu-accent-subtle-bg-hover)"
14
14
  },
15
15
  "&:focus-visible": {
16
16
  outline: "2px solid var(--tsu-focus-border)",
@@ -4,8 +4,8 @@ import { Listbox } from "@plastic-js/ark";
4
4
  import { splitProps } from "@plastic-js/plastic";
5
5
  //#region src/components/Listbox.jsx
6
6
  css({
7
- backgroundColor: "var(--tsu-surface)",
8
- border: "1px solid var(--tsu-neutral-6)",
7
+ backgroundColor: "var(--tsu-bg-panel)",
8
+ border: "1px solid var(--tsu-border)",
9
9
  borderRadius: "var(--tsu-radius-l2-md)",
10
10
  boxShadow: "var(--tsu-shadow-lg)",
11
11
  zIndex: "var(--tsu-z-dropdown)",
@@ -21,12 +21,13 @@ css({
21
21
  color: "var(--tsu-fg)",
22
22
  cursor: "pointer",
23
23
  "&[data-highlighted]": {
24
- backgroundColor: "var(--tsu-accent-3)",
25
- color: "var(--tsu-accent-9)"
24
+ backgroundColor: "var(--tsu-pressed-accent)",
25
+ color: "var(--tsu-accent-subtle-fg)"
26
26
  },
27
27
  "&[data-disabled]": {
28
- color: "var(--tsu-disabled-fg)",
29
- pointerEvents: "none"
28
+ opacity: "var(--tsu-disabled-opacity)",
29
+ pointerEvents: "none",
30
+ cursor: "not-allowed"
30
31
  }
31
32
  });
32
33
  var Listbox$1 = (props = {}) => {
@@ -6,8 +6,8 @@ import { splitProps } from "@plastic-js/plastic";
6
6
  //#region src/components/Menu.jsx
7
7
  var positionerClass = css({ zIndex: "var(--tsu-z-dropdown)" });
8
8
  var contentClass = css({
9
- backgroundColor: "var(--tsu-surface)",
10
- border: "1px solid var(--tsu-neutral-6)",
9
+ backgroundColor: "var(--tsu-bg-panel)",
10
+ border: "1px solid var(--tsu-border)",
11
11
  borderRadius: "var(--tsu-radius-l2-md)",
12
12
  boxShadow: "var(--tsu-shadow-lg)",
13
13
  padding: "6px",
@@ -31,17 +31,18 @@ var itemClass = css({
31
31
  textAlign: "left",
32
32
  lineHeight: 1.4,
33
33
  "&[data-highlighted]": {
34
- backgroundColor: "var(--tsu-accent-3)",
35
- color: "var(--tsu-accent-9)"
34
+ backgroundColor: "var(--tsu-pressed-accent)",
35
+ color: "var(--tsu-accent-subtle-fg)"
36
36
  },
37
37
  "&[data-disabled]": {
38
- opacity: .4,
39
- pointerEvents: "none"
38
+ opacity: "var(--tsu-disabled-opacity)",
39
+ pointerEvents: "none",
40
+ cursor: "not-allowed"
40
41
  }
41
42
  });
42
43
  var separatorClass = css({
43
44
  height: "1px",
44
- backgroundColor: "var(--tsu-neutral-6)",
45
+ backgroundColor: "var(--tsu-border)",
45
46
  margin: "4px 0"
46
47
  });
47
48
  var Menu$1 = (props = {}) => {
@@ -9,7 +9,7 @@ var affixSuffixClass = css({
9
9
  fontWeight: "var(--tsu-font-weight-semibold)",
10
10
  paddingLeft: "10px",
11
11
  marginLeft: "var(--tsu-spacing-xs)",
12
- borderLeft: "1px solid var(--tsu-neutral-7)"
12
+ borderLeft: "1px solid var(--tsu-border)"
13
13
  });
14
14
  var read = (value) => {
15
15
  return typeof value === "function" ? value() : value;
@@ -13,7 +13,7 @@ var rootBaseClass = css({
13
13
  });
14
14
  var variantClasses = {
15
15
  solid: css({
16
- backgroundColor: "var(--tsu-surface)",
16
+ backgroundColor: "var(--tsu-bg-control)",
17
17
  border: "1px solid transparent",
18
18
  "&:focus-within": {
19
19
  backgroundColor: "var(--tsu-focus-bg)",
@@ -21,7 +21,7 @@ var variantClasses = {
21
21
  }
22
22
  }),
23
23
  outline: css({
24
- border: "1px solid var(--tsu-accent-8)",
24
+ border: "1px solid var(--tsu-accent-outline-border)",
25
25
  "&:focus-within": {
26
26
  backgroundColor: "var(--tsu-focus-bg)",
27
27
  borderColor: "var(--tsu-focus-border)"
@@ -29,8 +29,8 @@ var variantClasses = {
29
29
  })
30
30
  };
31
31
  var disabledClass = css({
32
- borderColor: "var(--tsu-disabled-border)",
33
- "& *": { color: "var(--tsu-disabled-fg)" }
32
+ opacity: "var(--tsu-disabled-opacity)",
33
+ cursor: "not-allowed"
34
34
  });
35
35
  var sizeClasses = {
36
36
  xs: css({
@@ -62,8 +62,7 @@ var inputClass = css({
62
62
  color: "var(--tsu-fg)",
63
63
  fontFamily: "inherit",
64
64
  textAlign: "center",
65
- padding: 0,
66
- "&:disabled": { color: "var(--tsu-disabled-fg)" }
65
+ padding: 0
67
66
  });
68
67
  var btnClass = css({
69
68
  width: "28px",
@@ -73,14 +72,14 @@ var btnClass = css({
73
72
  justifyContent: "center",
74
73
  border: "none",
75
74
  background: "transparent",
76
- color: "var(--tsu-neutral-11)",
75
+ color: "var(--tsu-text-secondary)",
77
76
  cursor: "pointer",
78
77
  fontFamily: "inherit",
79
78
  fontSize: "14px",
80
79
  touchAction: "manipulation",
81
- "&:active:not(:disabled)": { backgroundColor: "var(--tsu-accent-3)" },
80
+ "&:active:not(:disabled)": { backgroundColor: "var(--tsu-pressed-accent)" },
82
81
  "&:disabled": {
83
- color: "var(--tsu-disabled-fg)",
82
+ color: "var(--tsu-text-subtle)",
84
83
  cursor: "not-allowed"
85
84
  }
86
85
  });
@@ -16,10 +16,10 @@ var itemClass = css({
16
16
  minWidth: "var(--tsu-level-primary-md)",
17
17
  height: "var(--tsu-level-primary-md)",
18
18
  padding: "0 var(--tsu-spacing-sm)",
19
- border: "1px solid var(--tsu-neutral-5)",
19
+ border: "1px solid var(--tsu-neutral-outline-border)",
20
20
  borderRadius: "var(--tsu-radius-l2-md)",
21
- backgroundColor: "var(--tsu-surface)",
22
- color: "var(--tsu-neutral-11)",
21
+ backgroundColor: "var(--tsu-bg-panel)",
22
+ color: "var(--tsu-text-secondary)",
23
23
  fontSize: "var(--tsu-font-size-sm)",
24
24
  fontWeight: "var(--tsu-font-weight-medium)",
25
25
  cursor: "pointer",
@@ -27,12 +27,12 @@ var itemClass = css({
27
27
  touchAction: "manipulation",
28
28
  transition: "background-color var(--tsu-transition-fast), border-color var(--tsu-transition-fast)",
29
29
  "&[data-selected]": {
30
- backgroundColor: "var(--tsu-accent-9)",
31
- borderColor: "var(--tsu-accent-8)",
32
- color: "var(--tsu-bg)"
30
+ backgroundColor: "var(--tsu-accent-solid-bg)",
31
+ borderColor: "var(--tsu-accent-solid-bg)",
32
+ color: "var(--tsu-accent-solid-fg)"
33
33
  },
34
34
  "&:disabled, &[data-disabled]": {
35
- opacity: .5,
35
+ opacity: "var(--tsu-disabled-opacity)",
36
36
  cursor: "not-allowed"
37
37
  }
38
38
  });
@@ -41,7 +41,7 @@ var ellipsisClass = css({
41
41
  alignItems: "center",
42
42
  justifyContent: "center",
43
43
  width: "var(--tsu-level-primary-md)",
44
- color: "var(--tsu-neutral-9)",
44
+ color: "var(--tsu-text-subtle)",
45
45
  fontSize: "var(--tsu-font-size-sm)",
46
46
  userSelect: "none"
47
47
  });
@@ -21,15 +21,15 @@ var positionerClass = css({
21
21
  });
22
22
  var contentClass = css({
23
23
  padding: "var(--tsu-container-padding-sm)",
24
- backgroundColor: "var(--tsu-surface)",
24
+ backgroundColor: "var(--tsu-bg-panel)",
25
25
  borderRadius: "var(--tsu-radius-l2-md)",
26
26
  boxShadow: "var(--tsu-shadow-lg)",
27
- border: "1px solid var(--tsu-neutral-6)",
27
+ border: "1px solid var(--tsu-border)",
28
28
  animation: `${popoverIn} var(--tsu-transition-fast)`
29
29
  });
30
30
  var arrowClass = css({
31
31
  "--arrow-size": "8px",
32
- "--arrow-background": "var(--tsu-surface)"
32
+ "--arrow-background": "var(--tsu-bg-panel)"
33
33
  });
34
34
  var closeTriggerClass = css({
35
35
  display: "flex",
@@ -44,7 +44,7 @@ var closeTriggerClass = css({
44
44
  border: "none",
45
45
  borderRadius: "var(--tsu-radius-l1-md)",
46
46
  background: "transparent",
47
- color: "var(--tsu-neutral-11)",
47
+ color: "var(--tsu-text-secondary)",
48
48
  cursor: "pointer",
49
49
  touchAction: "manipulation"
50
50
  });
@@ -59,7 +59,7 @@ var descriptionClass = css({
59
59
  margin: 0,
60
60
  marginTop: "4px",
61
61
  fontSize: "var(--tsu-comp-font-size-sm)",
62
- color: "var(--tsu-neutral-11)",
62
+ color: "var(--tsu-text-secondary)",
63
63
  lineHeight: 1.5
64
64
  });
65
65
  var Popover$1 = (props = {}) => {