@helpwave/hightide 0.1.23 → 0.1.25

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 (167) hide show
  1. package/dist/components/date/DatePicker.js +48 -53
  2. package/dist/components/date/DatePicker.js.map +1 -1
  3. package/dist/components/date/DatePicker.mjs +58 -63
  4. package/dist/components/date/DatePicker.mjs.map +1 -1
  5. package/dist/components/date/DayPicker.js.map +1 -1
  6. package/dist/components/date/DayPicker.mjs +4 -4
  7. package/dist/components/date/DayPicker.mjs.map +1 -1
  8. package/dist/components/date/TimeDisplay.js.map +1 -1
  9. package/dist/components/date/TimeDisplay.mjs +2 -2
  10. package/dist/components/date/TimeDisplay.mjs.map +1 -1
  11. package/dist/components/date/YearMonthPicker.js +26 -29
  12. package/dist/components/date/YearMonthPicker.js.map +1 -1
  13. package/dist/components/date/YearMonthPicker.mjs +31 -34
  14. package/dist/components/date/YearMonthPicker.mjs.map +1 -1
  15. package/dist/components/dialogs/ConfirmDialog.js +40 -43
  16. package/dist/components/dialogs/ConfirmDialog.js.map +1 -1
  17. package/dist/components/dialogs/ConfirmDialog.mjs +48 -51
  18. package/dist/components/dialogs/ConfirmDialog.mjs.map +1 -1
  19. package/dist/components/layout-and-navigation/Carousel.js +40 -43
  20. package/dist/components/layout-and-navigation/Carousel.js.map +1 -1
  21. package/dist/components/layout-and-navigation/Carousel.mjs +40 -43
  22. package/dist/components/layout-and-navigation/Carousel.mjs.map +1 -1
  23. package/dist/components/layout-and-navigation/Overlay.js +40 -43
  24. package/dist/components/layout-and-navigation/Overlay.js.map +1 -1
  25. package/dist/components/layout-and-navigation/Overlay.mjs +46 -49
  26. package/dist/components/layout-and-navigation/Overlay.mjs.map +1 -1
  27. package/dist/components/layout-and-navigation/Pagination.js +40 -43
  28. package/dist/components/layout-and-navigation/Pagination.js.map +1 -1
  29. package/dist/components/layout-and-navigation/Pagination.mjs +50 -53
  30. package/dist/components/layout-and-navigation/Pagination.mjs.map +1 -1
  31. package/dist/components/layout-and-navigation/SearchableList.js +40 -43
  32. package/dist/components/layout-and-navigation/SearchableList.js.map +1 -1
  33. package/dist/components/layout-and-navigation/SearchableList.mjs +50 -53
  34. package/dist/components/layout-and-navigation/SearchableList.mjs.map +1 -1
  35. package/dist/components/layout-and-navigation/StepperBar.js +26 -29
  36. package/dist/components/layout-and-navigation/StepperBar.js.map +1 -1
  37. package/dist/components/layout-and-navigation/StepperBar.mjs +30 -33
  38. package/dist/components/layout-and-navigation/StepperBar.mjs.map +1 -1
  39. package/dist/components/layout-and-navigation/TextImage.js.map +1 -1
  40. package/dist/components/layout-and-navigation/TextImage.mjs +2 -2
  41. package/dist/components/layout-and-navigation/TextImage.mjs.map +1 -1
  42. package/dist/components/loading-states/ErrorComponent.js.map +1 -1
  43. package/dist/components/loading-states/ErrorComponent.mjs +2 -2
  44. package/dist/components/loading-states/ErrorComponent.mjs.map +1 -1
  45. package/dist/components/loading-states/LoadingAnimation.js.map +1 -1
  46. package/dist/components/loading-states/LoadingAnimation.mjs +2 -2
  47. package/dist/components/loading-states/LoadingAnimation.mjs.map +1 -1
  48. package/dist/components/loading-states/LoadingButton.js +26 -29
  49. package/dist/components/loading-states/LoadingButton.js.map +1 -1
  50. package/dist/components/loading-states/LoadingButton.mjs +26 -29
  51. package/dist/components/loading-states/LoadingButton.mjs.map +1 -1
  52. package/dist/components/modals/ConfirmModal.js +40 -43
  53. package/dist/components/modals/ConfirmModal.js.map +1 -1
  54. package/dist/components/modals/ConfirmModal.mjs +48 -51
  55. package/dist/components/modals/ConfirmModal.mjs.map +1 -1
  56. package/dist/components/modals/DiscardChangesModal.js +40 -43
  57. package/dist/components/modals/DiscardChangesModal.js.map +1 -1
  58. package/dist/components/modals/DiscardChangesModal.mjs +48 -51
  59. package/dist/components/modals/DiscardChangesModal.mjs.map +1 -1
  60. package/dist/components/modals/InputModal.js +40 -43
  61. package/dist/components/modals/InputModal.js.map +1 -1
  62. package/dist/components/modals/InputModal.mjs +48 -51
  63. package/dist/components/modals/InputModal.mjs.map +1 -1
  64. package/dist/components/modals/LanguageModal.js +43 -49
  65. package/dist/components/modals/LanguageModal.js.map +1 -1
  66. package/dist/components/modals/LanguageModal.mjs +67 -73
  67. package/dist/components/modals/LanguageModal.mjs.map +1 -1
  68. package/dist/components/modals/ThemeModal.js +43 -49
  69. package/dist/components/modals/ThemeModal.js.map +1 -1
  70. package/dist/components/modals/ThemeModal.mjs +68 -74
  71. package/dist/components/modals/ThemeModal.mjs.map +1 -1
  72. package/dist/components/properties/CheckboxProperty.js +96 -75
  73. package/dist/components/properties/CheckboxProperty.js.map +1 -1
  74. package/dist/components/properties/CheckboxProperty.mjs +98 -77
  75. package/dist/components/properties/CheckboxProperty.mjs.map +1 -1
  76. package/dist/components/properties/DateProperty.js +48 -53
  77. package/dist/components/properties/DateProperty.js.map +1 -1
  78. package/dist/components/properties/DateProperty.mjs +50 -55
  79. package/dist/components/properties/DateProperty.mjs.map +1 -1
  80. package/dist/components/properties/MultiSelectProperty.js +114 -93
  81. package/dist/components/properties/MultiSelectProperty.js.map +1 -1
  82. package/dist/components/properties/MultiSelectProperty.mjs +135 -114
  83. package/dist/components/properties/MultiSelectProperty.mjs.map +1 -1
  84. package/dist/components/properties/NumberProperty.js +48 -53
  85. package/dist/components/properties/NumberProperty.js.map +1 -1
  86. package/dist/components/properties/NumberProperty.mjs +50 -55
  87. package/dist/components/properties/NumberProperty.mjs.map +1 -1
  88. package/dist/components/properties/PropertyBase.js +48 -53
  89. package/dist/components/properties/PropertyBase.js.map +1 -1
  90. package/dist/components/properties/PropertyBase.mjs +50 -55
  91. package/dist/components/properties/PropertyBase.mjs.map +1 -1
  92. package/dist/components/properties/SelectProperty.js +65 -73
  93. package/dist/components/properties/SelectProperty.js.map +1 -1
  94. package/dist/components/properties/SelectProperty.mjs +86 -94
  95. package/dist/components/properties/SelectProperty.mjs.map +1 -1
  96. package/dist/components/properties/TextProperty.js +51 -56
  97. package/dist/components/properties/TextProperty.js.map +1 -1
  98. package/dist/components/properties/TextProperty.mjs +57 -62
  99. package/dist/components/properties/TextProperty.mjs.map +1 -1
  100. package/dist/components/table/Table.js +88 -65
  101. package/dist/components/table/Table.js.map +1 -1
  102. package/dist/components/table/Table.mjs +114 -91
  103. package/dist/components/table/Table.mjs.map +1 -1
  104. package/dist/components/table/TableFilterButton.js +40 -43
  105. package/dist/components/table/TableFilterButton.js.map +1 -1
  106. package/dist/components/table/TableFilterButton.mjs +44 -47
  107. package/dist/components/table/TableFilterButton.mjs.map +1 -1
  108. package/dist/components/table/TableSortButton.js +40 -43
  109. package/dist/components/table/TableSortButton.js.map +1 -1
  110. package/dist/components/table/TableSortButton.mjs +40 -43
  111. package/dist/components/table/TableSortButton.mjs.map +1 -1
  112. package/dist/components/user-action/Button.d.mts +3 -3
  113. package/dist/components/user-action/Button.d.ts +3 -3
  114. package/dist/components/user-action/Button.js +76 -84
  115. package/dist/components/user-action/Button.js.map +1 -1
  116. package/dist/components/user-action/Button.mjs +76 -84
  117. package/dist/components/user-action/Button.mjs.map +1 -1
  118. package/dist/components/user-action/Checkbox.js +48 -22
  119. package/dist/components/user-action/Checkbox.js.map +1 -1
  120. package/dist/components/user-action/Checkbox.mjs +48 -22
  121. package/dist/components/user-action/Checkbox.mjs.map +1 -1
  122. package/dist/components/user-action/CopyToClipboardWrapper.js.map +1 -1
  123. package/dist/components/user-action/CopyToClipboardWrapper.mjs +2 -2
  124. package/dist/components/user-action/CopyToClipboardWrapper.mjs.map +1 -1
  125. package/dist/components/user-action/DateAndTimePicker.js +48 -53
  126. package/dist/components/user-action/DateAndTimePicker.js.map +1 -1
  127. package/dist/components/user-action/DateAndTimePicker.mjs +60 -65
  128. package/dist/components/user-action/DateAndTimePicker.mjs.map +1 -1
  129. package/dist/components/user-action/MultiSelect.js +92 -69
  130. package/dist/components/user-action/MultiSelect.js.map +1 -1
  131. package/dist/components/user-action/MultiSelect.mjs +114 -91
  132. package/dist/components/user-action/MultiSelect.mjs.map +1 -1
  133. package/dist/components/user-action/SearchBar.js +40 -43
  134. package/dist/components/user-action/SearchBar.js.map +1 -1
  135. package/dist/components/user-action/SearchBar.mjs +42 -45
  136. package/dist/components/user-action/SearchBar.mjs.map +1 -1
  137. package/dist/components/user-action/Select.js +43 -49
  138. package/dist/components/user-action/Select.js.map +1 -1
  139. package/dist/components/user-action/Select.mjs +49 -55
  140. package/dist/components/user-action/Select.mjs.map +1 -1
  141. package/dist/components/user-action/Textarea.js +3 -3
  142. package/dist/components/user-action/Textarea.js.map +1 -1
  143. package/dist/components/user-action/Textarea.mjs +3 -3
  144. package/dist/components/user-action/Textarea.mjs.map +1 -1
  145. package/dist/css/globals.css +269 -136
  146. package/dist/css/uncompiled/theme/index.css +1 -2
  147. package/dist/hooks/useLocalStorage.js +1 -3
  148. package/dist/hooks/useLocalStorage.js.map +1 -1
  149. package/dist/hooks/useLocalStorage.mjs +3 -4
  150. package/dist/hooks/useLocalStorage.mjs.map +1 -1
  151. package/dist/index.js +141 -129
  152. package/dist/index.js.map +1 -1
  153. package/dist/index.mjs +216 -204
  154. package/dist/index.mjs.map +1 -1
  155. package/dist/localization/LanguageProvider.js +0 -3
  156. package/dist/localization/LanguageProvider.js.map +1 -1
  157. package/dist/localization/LanguageProvider.mjs +5 -8
  158. package/dist/localization/LanguageProvider.mjs.map +1 -1
  159. package/dist/localization/useTranslation.js.map +1 -1
  160. package/dist/localization/useTranslation.mjs +2 -2
  161. package/dist/localization/useTranslation.mjs.map +1 -1
  162. package/dist/theming/useTheme.js +3 -6
  163. package/dist/theming/useTheme.js.map +1 -1
  164. package/dist/theming/useTheme.mjs +8 -11
  165. package/dist/theming/useTheme.mjs.map +1 -1
  166. package/package.json +1 -1
  167. package/dist/css/uncompiled/theme/theme.css +0 -0
@@ -66,7 +66,6 @@ var ButtonUtil = {
66
66
  };
67
67
  var SolidButton = (0, import_react.forwardRef)(function SolidButton2({
68
68
  children,
69
- disabled = false,
70
69
  color = "primary",
71
70
  size = "medium",
72
71
  startIcon,
@@ -76,35 +75,33 @@ var SolidButton = (0, import_react.forwardRef)(function SolidButton2({
76
75
  ...restProps
77
76
  }, ref) {
78
77
  const colorClasses = {
79
- primary: "bg-button-solid-primary-background text-button-solid-primary-text",
80
- secondary: "bg-button-solid-secondary-background text-button-solid-secondary-text",
81
- tertiary: "bg-button-solid-tertiary-background text-button-solid-tertiary-text",
82
- positive: "bg-button-solid-positive-background text-button-solid-positive-text",
83
- warning: "bg-button-solid-warning-background text-button-solid-warning-text",
84
- negative: "bg-button-solid-negative-background text-button-solid-negative-text",
85
- neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text"
78
+ primary: "not-disabled:bg-button-solid-primary-background not-disabled:text-button-solid-primary-text",
79
+ secondary: "not-disabled:bg-button-solid-secondary-background not-disabled:text-button-solid-secondary-text",
80
+ tertiary: "not-disabled:bg-button-solid-tertiary-background not-disabled:text-button-solid-tertiary-text",
81
+ positive: "not-disabled:bg-button-solid-positive-background not-disabled:text-button-solid-positive-text",
82
+ warning: "not-disabled:bg-button-solid-warning-background not-disabled:text-button-solid-warning-text",
83
+ negative: "not-disabled:bg-button-solid-negative-background not-disabled:text-button-solid-negative-text",
84
+ neutral: "not-disabled:bg-button-solid-neutral-background not-disabled:text-button-solid-neutral-text"
86
85
  }[color];
87
86
  const iconColorClasses = {
88
- primary: "text-button-solid-primary-icon",
89
- secondary: "text-button-solid-secondary-icon",
90
- tertiary: "text-button-solid-tertiary-icon",
91
- positive: "text-button-solid-positive-icon",
92
- warning: "text-button-solid-warning-icon",
93
- negative: "text-button-solid-negative-icon",
94
- neutral: "text-button-solid-neutral-icon"
87
+ primary: "not-group-disabled:text-button-solid-primary-icon",
88
+ secondary: "not-group-disabled:text-button-solid-secondary-icon",
89
+ tertiary: "not-group-disabled:text-button-solid-tertiary-icon",
90
+ positive: "not-group-disabled:text-button-solid-positive-icon",
91
+ warning: "not-group-disabled:text-button-solid-warning-icon",
92
+ negative: "not-group-disabled:text-button-solid-negative-icon",
93
+ neutral: "not-group-disabled:text-button-solid-neutral-icon"
95
94
  }[color];
96
95
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
97
96
  "button",
98
97
  {
99
98
  ref,
100
99
  onClick,
101
- disabled,
102
100
  className: (0, import_clsx.default)(
103
- "font-semibold",
104
- {
105
- "text-disabled-text bg-disabled-background cursor-not-allowed": disabled,
106
- [(0, import_clsx.default)(colorClasses, "hover:brightness-90")]: !disabled
107
- },
101
+ "group font-semibold",
102
+ colorClasses,
103
+ "not-disabled:hover:brightness-90",
104
+ "disabled:text-disabled-text disabled:bg-disabled-background",
108
105
  ButtonUtil.paddingMapping[size],
109
106
  className
110
107
  ),
@@ -113,10 +110,10 @@ var SolidButton = (0, import_react.forwardRef)(function SolidButton2({
113
110
  startIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
114
111
  "span",
115
112
  {
116
- className: (0, import_clsx.default)({
117
- [iconColorClasses]: !disabled,
118
- [`text-disabled-icon`]: disabled
119
- }),
113
+ className: (0, import_clsx.default)(
114
+ iconColorClasses,
115
+ "group-disabled:text-disabled-icon"
116
+ ),
120
117
  children: startIcon
121
118
  }
122
119
  ),
@@ -124,10 +121,10 @@ var SolidButton = (0, import_react.forwardRef)(function SolidButton2({
124
121
  endIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
125
122
  "span",
126
123
  {
127
- className: (0, import_clsx.default)({
128
- [iconColorClasses]: !disabled,
129
- [`text-disabled-icon`]: disabled
130
- }),
124
+ className: (0, import_clsx.default)(
125
+ iconColorClasses,
126
+ "group-disabled:text-disabled-icon"
127
+ ),
131
128
  children: endIcon
132
129
  }
133
130
  )
@@ -137,7 +134,6 @@ var SolidButton = (0, import_react.forwardRef)(function SolidButton2({
137
134
  });
138
135
  var OutlineButton = ({
139
136
  children,
140
- disabled = false,
141
137
  color = "primary",
142
138
  size = "medium",
143
139
  startIcon,
@@ -147,22 +143,20 @@ var OutlineButton = ({
147
143
  ...restProps
148
144
  }) => {
149
145
  const colorClasses = {
150
- primary: "bg-transparent border-2 border-button-outline-primary-text text-button-outline-primary-text"
146
+ primary: "not-disabled:border-button-outline-primary-text not-disabled:text-button-outline-primary-text"
151
147
  }[color];
152
148
  const iconColorClasses = {
153
- primary: "text-button-outline-primary-icon"
149
+ primary: "not-group-disabled:text-button-outline-primary-icon"
154
150
  }[color];
155
151
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
156
152
  "button",
157
153
  {
158
154
  onClick,
159
- disabled,
160
155
  className: (0, import_clsx.default)(
161
- "font-semibold",
162
- {
163
- "text-disabled-text border-disabled-outline cursor-not-allowed": disabled,
164
- [(0, import_clsx.default)(colorClasses, "hover:brightness-80")]: !disabled
165
- },
156
+ "group font-semibold bg-transparent border-2 ",
157
+ "not-disabled:hover:brightness-80",
158
+ colorClasses,
159
+ "disabled:text-disabled-text disabled:border-disabled-outline",
166
160
  ButtonUtil.paddingMapping[size],
167
161
  className
168
162
  ),
@@ -171,10 +165,10 @@ var OutlineButton = ({
171
165
  startIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
172
166
  "span",
173
167
  {
174
- className: (0, import_clsx.default)({
175
- [iconColorClasses]: !disabled,
176
- [`text-disabled-icon`]: disabled
177
- }),
168
+ className: (0, import_clsx.default)(
169
+ iconColorClasses,
170
+ "group-disabled:text-disabled-icon"
171
+ ),
178
172
  children: startIcon
179
173
  }
180
174
  ),
@@ -182,10 +176,10 @@ var OutlineButton = ({
182
176
  endIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
183
177
  "span",
184
178
  {
185
- className: (0, import_clsx.default)({
186
- [iconColorClasses]: !disabled,
187
- [`text-disabled-icon`]: disabled
188
- }),
179
+ className: (0, import_clsx.default)(
180
+ iconColorClasses,
181
+ "group-disabled:text-disabled-icon"
182
+ ),
189
183
  children: endIcon
190
184
  }
191
185
  )
@@ -195,7 +189,6 @@ var OutlineButton = ({
195
189
  };
196
190
  var TextButton = ({
197
191
  children,
198
- disabled = false,
199
192
  color = "neutral",
200
193
  size = "medium",
201
194
  startIcon,
@@ -206,32 +199,31 @@ var TextButton = ({
206
199
  ...restProps
207
200
  }) => {
208
201
  const colorClasses = {
209
- primary: "bg-transparent text-button-text-primary-text",
210
- negative: "bg-transparent text-button-text-negative-text",
211
- neutral: "bg-transparent text-button-text-neutral-text"
202
+ primary: "not-disabled:bg-transparent not-disabled:text-button-text-primary-text",
203
+ negative: "not-disabled:bg-transparent not-disabled:text-button-text-negative-text",
204
+ neutral: "not-disabled:bg-transparent not-disabled:text-button-text-neutral-text"
212
205
  }[color];
213
206
  const backgroundColor = {
214
- primary: "hover:bg-button-text-primary-text/20",
215
- negative: "hover:bg-button-text-negative-text/20",
216
- neutral: "hover:bg-button-text-neutral-text/20"
207
+ primary: "not-disabled:hover:bg-button-text-primary-text/20",
208
+ negative: "not-disabled:hover:bg-button-text-negative-text/20",
209
+ neutral: "not-disabled:hover:bg-button-text-neutral-text/20"
217
210
  }[color];
218
211
  const iconColorClasses = {
219
- primary: "text-button-text-primary-icon",
220
- negative: "text-button-text-negative-icon",
221
- neutral: "text-button-text-neutral-icon"
212
+ primary: "not-group-disabled:text-button-text-primary-icon",
213
+ negative: "not-group-disabled:text-button-text-negative-icon",
214
+ neutral: "not-group-disabled:text-button-text-neutral-icon"
222
215
  }[color];
223
216
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
224
217
  "button",
225
218
  {
226
219
  onClick,
227
- disabled,
228
220
  className: (0, import_clsx.default)(
229
- "font-semibold",
221
+ "group font-semibold",
222
+ "disabled:text-disabled-text",
223
+ colorClasses,
230
224
  {
231
- "text-disabled-text cursor-not-allowed": disabled,
232
- [colorClasses]: !disabled,
233
- [backgroundColor]: !disabled && coloredHoverBackground,
234
- "hover:bg-button-text-hover-background": !disabled && !coloredHoverBackground
225
+ [backgroundColor]: coloredHoverBackground,
226
+ "not-disabled:hover:bg-button-text-hover-background": !coloredHoverBackground
235
227
  },
236
228
  ButtonUtil.paddingMapping[size],
237
229
  className
@@ -241,10 +233,10 @@ var TextButton = ({
241
233
  startIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
242
234
  "span",
243
235
  {
244
- className: (0, import_clsx.default)({
245
- [iconColorClasses]: !disabled,
246
- [`text-disabled-icon`]: disabled
247
- }),
236
+ className: (0, import_clsx.default)(
237
+ iconColorClasses,
238
+ "group-disabled:text-disabled-icon"
239
+ ),
248
240
  children: startIcon
249
241
  }
250
242
  ),
@@ -252,10 +244,10 @@ var TextButton = ({
252
244
  endIcon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
253
245
  "span",
254
246
  {
255
- className: (0, import_clsx.default)({
256
- [iconColorClasses]: !disabled,
257
- [`text-disabled-icon`]: disabled
258
- }),
247
+ className: (0, import_clsx.default)(
248
+ iconColorClasses,
249
+ "group-disabled:text-disabled-icon"
250
+ ),
259
251
  children: endIcon
260
252
  }
261
253
  )
@@ -265,32 +257,32 @@ var TextButton = ({
265
257
  };
266
258
  var IconButton = ({
267
259
  children,
268
- disabled = false,
269
260
  color = "primary",
270
261
  size = "medium",
271
262
  className,
272
263
  ...restProps
273
264
  }) => {
274
265
  const colorClasses = {
275
- primary: "bg-button-solid-primary-background text-button-solid-primary-text",
276
- secondary: "bg-button-solid-secondary-background text-button-solid-secondary-text",
277
- tertiary: "bg-button-solid-tertiary-background text-button-solid-tertiary-text",
278
- positive: "bg-button-solid-positive-background text-button-solid-positive-text",
279
- warning: "bg-button-solid-warning-background text-button-solid-warning-text",
280
- negative: "bg-button-solid-negative-background text-button-solid-negative-text",
281
- neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text",
282
- transparent: "bg-transparent"
266
+ primary: "not-disabled:bg-button-solid-primary-background not-disabled:text-button-solid-primary-text",
267
+ secondary: "not-disabled:bg-button-solid-secondary-background not-disabled:text-button-solid-secondary-text",
268
+ tertiary: "not-disabled:bg-button-solid-tertiary-background not-disabled:text-button-solid-tertiary-text",
269
+ positive: "not-disabled:bg-button-solid-positive-background not-disabled:text-button-solid-positive-text",
270
+ warning: "not-disabled:bg-button-solid-warning-background not-disabled:text-button-solid-warning-text",
271
+ negative: "not-disabled:bg-button-solid-negative-background not-disabled:text-button-solid-negative-text",
272
+ neutral: "not-disabled:bg-button-solid-neutral-background not-disabled:text-button-solid-neutral-text",
273
+ transparent: "not-disabled:bg-transparent"
283
274
  }[color];
284
275
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
285
276
  "button",
286
277
  {
287
- disabled,
288
278
  className: (0, import_clsx.default)(
279
+ colorClasses,
280
+ "not-disabled:hover:brightness-90",
281
+ "disabled:text-disabled-text",
289
282
  {
290
- "text-disabled-text bg-disabled-background cursor-not-allowed": disabled && color !== "transparent",
291
- "text-disabled-text cursor-not-allowed opacity-70": disabled && color === "transparent",
292
- "hover:bg-button-text-hover-background": !disabled && color === "transparent",
293
- [(0, import_clsx.default)(colorClasses, "hover:brightness-90")]: !disabled
283
+ "disabled:bg-disabled-background": color !== "transparent",
284
+ "disabled:opacity-70": color === "transparent",
285
+ "not-disabled:hover:bg-button-text-hover-background": color === "transparent"
294
286
  },
295
287
  ButtonUtil.iconPaddingMapping[size],
296
288
  className
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/user-action/Button.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes, PropsWithChildren, ReactNode } from 'react'\nimport { forwardRef } from 'react'\nimport clsx from 'clsx'\n\n\nexport const ButtonColorUtil = {\n solid: ['primary', 'secondary', 'tertiary', 'positive', 'warning', 'negative', 'neutral'] as const,\n text: ['primary', 'negative', 'neutral'] as const,\n outline: ['primary'] as const,\n}\n\nexport const IconButtonUtil = {\n icon: [...ButtonColorUtil.solid, 'transparent'] as const,\n}\n\n\n/**\n * The allowed colors for the SolidButton and IconButton\n */\nexport type SolidButtonColor = typeof ButtonColorUtil.solid[number]\n/**\n * The allowed colors for the OutlineButton\n */\nexport type OutlineButtonColor = typeof ButtonColorUtil.outline[number]\n/**\n * The allowed colors for the TextButton\n */\nexport type TextButtonColor = typeof ButtonColorUtil.text[number]\n/**\n * The allowed colors for the IconButton\n */\nexport type IconButtonColor = typeof IconButtonUtil.icon[number]\n\n\n/**\n * The different sizes for a button\n */\ntype ButtonSizes = 'small' | 'medium' | 'large'\n\ntype IconButtonSize = 'tiny' | 'small' | 'medium' | 'large'\n\n/**\n * The shard properties between all button types\n */\nexport type ButtonProps = PropsWithChildren<{\n /**\n * @default 'medium'\n */\n size?: ButtonSizes,\n}> & ButtonHTMLAttributes<Element>\n\nconst paddingMapping: Record<ButtonSizes, string> = {\n small: 'btn-sm',\n medium: 'btn-md',\n large: 'btn-lg'\n}\n\nconst iconPaddingMapping: Record<IconButtonSize, string> = {\n tiny: 'icon-btn-xs',\n small: 'icon-btn-sm',\n medium: 'icon-btn-md',\n large: 'icon-btn-lg'\n}\n\nexport const ButtonUtil = {\n paddingMapping,\n iconPaddingMapping\n}\n\ntype ButtonWithIconsProps = ButtonProps & {\n startIcon?: ReactNode,\n endIcon?: ReactNode,\n}\n\nexport type SolidButtonProps = ButtonWithIconsProps & {\n color?: SolidButtonColor,\n}\n\nexport type OutlineButtonProps = ButtonWithIconsProps & {\n color?: OutlineButtonColor,\n}\n\nexport type TextButtonProps = ButtonWithIconsProps & {\n color?: TextButtonColor,\n coloredHoverBackground?: boolean,\n}\n\n/**\n * The shard properties between all button types\n */\nexport type IconButtonProps = PropsWithChildren<{\n /**\n * @default 'medium'\n */\n size?: IconButtonSize,\n color?: IconButtonColor,\n}> & ButtonHTMLAttributes<Element>\n\n/**\n * A button with a solid background and different sizes\n */\nconst SolidButton = forwardRef<HTMLButtonElement, SolidButtonProps>(function SolidButton({\n children,\n disabled = false,\n color = 'primary',\n size = 'medium',\n startIcon,\n endIcon,\n onClick,\n className,\n ...restProps\n }, ref) {\n const colorClasses = {\n primary: 'bg-button-solid-primary-background text-button-solid-primary-text',\n secondary: 'bg-button-solid-secondary-background text-button-solid-secondary-text',\n tertiary: 'bg-button-solid-tertiary-background text-button-solid-tertiary-text',\n positive: 'bg-button-solid-positive-background text-button-solid-positive-text',\n warning: 'bg-button-solid-warning-background text-button-solid-warning-text',\n negative: 'bg-button-solid-negative-background text-button-solid-negative-text',\n neutral: 'bg-button-solid-neutral-background text-button-solid-neutral-text',\n }[color]\n\n const iconColorClasses = {\n primary: 'text-button-solid-primary-icon',\n secondary: 'text-button-solid-secondary-icon',\n tertiary: 'text-button-solid-tertiary-icon',\n positive: 'text-button-solid-positive-icon',\n warning: 'text-button-solid-warning-icon',\n negative: 'text-button-solid-negative-icon',\n neutral: 'text-button-solid-neutral-icon',\n }[color]\n\n return (\n <button\n ref={ref}\n onClick={onClick}\n disabled={disabled}\n className={clsx(\n 'font-semibold',\n {\n 'text-disabled-text bg-disabled-background cursor-not-allowed': disabled,\n [clsx(colorClasses, 'hover:brightness-90')]: !disabled\n },\n ButtonUtil.paddingMapping[size],\n className\n )}\n {...restProps}\n >\n {startIcon && (\n <span\n className={clsx({\n [iconColorClasses]: !disabled,\n [`text-disabled-icon`]: disabled\n })}\n >\n {startIcon}\n </span>\n )}\n {children}\n {endIcon && (\n <span\n className={clsx({\n [iconColorClasses]: !disabled,\n [`text-disabled-icon`]: disabled\n })}\n >\n {endIcon}\n </span>\n )}\n </button>\n )\n})\n\n/**\n * A button with an outline border and different sizes\n */\nconst OutlineButton = ({\n children,\n disabled = false,\n color = 'primary',\n size = 'medium',\n startIcon,\n endIcon,\n onClick,\n className,\n ...restProps\n }: OutlineButtonProps) => {\n const colorClasses = {\n primary: 'bg-transparent border-2 border-button-outline-primary-text text-button-outline-primary-text',\n }[color]\n\n const iconColorClasses = {\n primary: 'text-button-outline-primary-icon',\n }[color]\n return (\n <button\n onClick={onClick}\n disabled={disabled}\n className={clsx(\n 'font-semibold',\n {\n 'text-disabled-text border-disabled-outline cursor-not-allowed': disabled,\n [clsx(colorClasses, 'hover:brightness-80')]: !disabled,\n },\n ButtonUtil.paddingMapping[size],\n className\n )}\n {...restProps}\n >\n {startIcon && (\n <span\n className={clsx({\n [iconColorClasses]: !disabled,\n [`text-disabled-icon`]: disabled\n })}\n >\n {startIcon}\n </span>\n )}\n {children}\n {endIcon && (\n <span\n className={clsx({\n [iconColorClasses]: !disabled,\n [`text-disabled-icon`]: disabled\n })}\n >\n {endIcon}\n </span>\n )}\n </button>\n )\n}\n\n/**\n * A text that is a button that can have different sizes\n */\nconst TextButton = ({\n children,\n disabled = false,\n color = 'neutral',\n size = 'medium',\n startIcon,\n endIcon,\n onClick,\n coloredHoverBackground = true,\n className,\n ...restProps\n }: TextButtonProps) => {\n const colorClasses = {\n primary: 'bg-transparent text-button-text-primary-text',\n negative: 'bg-transparent text-button-text-negative-text',\n neutral: 'bg-transparent text-button-text-neutral-text',\n }[color]\n\n const backgroundColor = {\n primary: 'hover:bg-button-text-primary-text/20',\n negative: 'hover:bg-button-text-negative-text/20',\n neutral: 'hover:bg-button-text-neutral-text/20',\n }[color]\n\n const iconColorClasses = {\n primary: 'text-button-text-primary-icon',\n negative: 'text-button-text-negative-icon',\n neutral: 'text-button-text-neutral-icon',\n }[color]\n\n return (\n <button\n onClick={onClick}\n disabled={disabled}\n className={clsx(\n 'font-semibold',\n {\n 'text-disabled-text cursor-not-allowed': disabled,\n [colorClasses]: !disabled,\n [backgroundColor]: !disabled && coloredHoverBackground,\n 'hover:bg-button-text-hover-background': !disabled && !coloredHoverBackground,\n },\n ButtonUtil.paddingMapping[size],\n className\n )}\n {...restProps}\n >\n {startIcon && (\n <span\n className={clsx({\n [iconColorClasses]: !disabled,\n [`text-disabled-icon`]: disabled\n })}\n >\n {startIcon}\n </span>\n )}\n {children}\n {endIcon && (\n <span\n className={clsx({\n [iconColorClasses]: !disabled,\n [`text-disabled-icon`]: disabled\n })}\n >\n {endIcon}\n </span>\n )}\n </button>\n )\n}\n\n\n/**\n * A button for icons with a solid background and different sizes\n */\nconst IconButton = ({\n children,\n disabled = false,\n color = 'primary',\n size = 'medium',\n className,\n ...restProps\n }: IconButtonProps) => {\n const colorClasses = {\n primary: 'bg-button-solid-primary-background text-button-solid-primary-text',\n secondary: 'bg-button-solid-secondary-background text-button-solid-secondary-text',\n tertiary: 'bg-button-solid-tertiary-background text-button-solid-tertiary-text',\n positive: 'bg-button-solid-positive-background text-button-solid-positive-text',\n warning: 'bg-button-solid-warning-background text-button-solid-warning-text',\n negative: 'bg-button-solid-negative-background text-button-solid-negative-text',\n neutral: 'bg-button-solid-neutral-background text-button-solid-neutral-text',\n transparent: 'bg-transparent',\n }[color]\n\n return (\n <button\n disabled={disabled}\n className={clsx(\n {\n 'text-disabled-text bg-disabled-background cursor-not-allowed': disabled && color !== 'transparent',\n 'text-disabled-text cursor-not-allowed opacity-70': disabled && color === 'transparent',\n 'hover:bg-button-text-hover-background': !disabled && color === 'transparent',\n [clsx(colorClasses, 'hover:brightness-90')]: !disabled,\n },\n ButtonUtil.iconPaddingMapping[size],\n className\n )}\n {...restProps}\n >\n {children}\n </button>\n )\n}\n\nexport { SolidButton, OutlineButton, TextButton, IconButton }\n"],"mappings":"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","names":["SolidButton","clsx"]}
1
+ {"version":3,"sources":["../../../src/components/user-action/Button.tsx"],"sourcesContent":["import type { ButtonHTMLAttributes, PropsWithChildren, ReactNode } from 'react'\nimport { forwardRef } from 'react'\nimport clsx from 'clsx'\n\n\nexport const ButtonColorUtil = {\n solid: ['primary', 'secondary', 'tertiary', 'positive', 'warning', 'negative', 'neutral'] as const,\n text: ['primary', 'negative', 'neutral'] as const,\n outline: ['primary'] as const,\n}\n\nexport const IconButtonUtil = {\n icon: [...ButtonColorUtil.solid, 'transparent'] as const,\n}\n\n\n/**\n * The allowed colors for the SolidButton and IconButton\n */\nexport type SolidButtonColor = typeof ButtonColorUtil.solid[number]\n/**\n * The allowed colors for the OutlineButton\n */\nexport type OutlineButtonColor = typeof ButtonColorUtil.outline[number]\n/**\n * The allowed colors for the TextButton\n */\nexport type TextButtonColor = typeof ButtonColorUtil.text[number]\n/**\n * The allowed colors for the IconButton\n */\nexport type IconButtonColor = typeof IconButtonUtil.icon[number]\n\n\n/**\n * The different sizes for a button\n */\ntype ButtonSizes = 'small' | 'medium' | 'large'\n\ntype IconButtonSize = 'tiny' | 'small' | 'medium' | 'large'\n\n/**\n * The shard properties between all button types\n */\nexport type ButtonProps = PropsWithChildren<{\n /**\n * @default 'medium'\n */\n size?: ButtonSizes,\n}> & ButtonHTMLAttributes<Element>\n\nconst paddingMapping: Record<ButtonSizes, string> = {\n small: 'btn-sm',\n medium: 'btn-md',\n large: 'btn-lg'\n}\n\nconst iconPaddingMapping: Record<IconButtonSize, string> = {\n tiny: 'icon-btn-xs',\n small: 'icon-btn-sm',\n medium: 'icon-btn-md',\n large: 'icon-btn-lg'\n}\n\nexport const ButtonUtil = {\n paddingMapping,\n iconPaddingMapping\n}\n\ntype ButtonWithIconsProps = ButtonProps & {\n startIcon?: ReactNode,\n endIcon?: ReactNode,\n}\n\nexport type SolidButtonProps = ButtonWithIconsProps & {\n color?: SolidButtonColor,\n}\n\nexport type OutlineButtonProps = ButtonWithIconsProps & {\n color?: OutlineButtonColor,\n}\n\nexport type TextButtonProps = ButtonWithIconsProps & {\n color?: TextButtonColor,\n coloredHoverBackground?: boolean,\n}\n\n/**\n * The shard properties between all button types\n */\nexport type IconButtonProps = PropsWithChildren<{\n /**\n * @default 'medium'\n */\n size?: IconButtonSize,\n color?: IconButtonColor,\n}> & ButtonHTMLAttributes<Element>\n\n/**\n * A button with a solid background and different sizes\n */\nconst SolidButton = forwardRef<HTMLButtonElement, SolidButtonProps>(function SolidButton({\n children,\n color = 'primary',\n size = 'medium',\n startIcon,\n endIcon,\n onClick,\n className,\n ...restProps\n }, ref) {\n const colorClasses = {\n primary: 'not-disabled:bg-button-solid-primary-background not-disabled:text-button-solid-primary-text',\n secondary: 'not-disabled:bg-button-solid-secondary-background not-disabled:text-button-solid-secondary-text',\n tertiary: 'not-disabled:bg-button-solid-tertiary-background not-disabled:text-button-solid-tertiary-text',\n positive: 'not-disabled:bg-button-solid-positive-background not-disabled:text-button-solid-positive-text',\n warning: 'not-disabled:bg-button-solid-warning-background not-disabled:text-button-solid-warning-text',\n negative: 'not-disabled:bg-button-solid-negative-background not-disabled:text-button-solid-negative-text',\n neutral: 'not-disabled:bg-button-solid-neutral-background not-disabled:text-button-solid-neutral-text',\n }[color]\n\n const iconColorClasses = {\n primary: 'not-group-disabled:text-button-solid-primary-icon',\n secondary: 'not-group-disabled:text-button-solid-secondary-icon',\n tertiary: 'not-group-disabled:text-button-solid-tertiary-icon',\n positive: 'not-group-disabled:text-button-solid-positive-icon',\n warning: 'not-group-disabled:text-button-solid-warning-icon',\n negative: 'not-group-disabled:text-button-solid-negative-icon',\n neutral: 'not-group-disabled:text-button-solid-neutral-icon',\n }[color]\n\n return (\n <button\n ref={ref}\n onClick={onClick}\n className={clsx(\n 'group font-semibold',\n colorClasses,\n 'not-disabled:hover:brightness-90',\n 'disabled:text-disabled-text disabled:bg-disabled-background',\n ButtonUtil.paddingMapping[size],\n className\n )}\n {...restProps}\n >\n {startIcon && (\n <span\n className={clsx(\n iconColorClasses,\n 'group-disabled:text-disabled-icon'\n )}\n >\n {startIcon}\n </span>\n )}\n {children}\n {endIcon && (\n <span\n className={clsx(\n iconColorClasses,\n 'group-disabled:text-disabled-icon'\n )}\n >\n {endIcon}\n </span>\n )}\n </button>\n )\n})\n\n/**\n * A button with an outline border and different sizes\n */\nconst OutlineButton = ({\n children,\n color = 'primary',\n size = 'medium',\n startIcon,\n endIcon,\n onClick,\n className,\n ...restProps\n }: OutlineButtonProps) => {\n const colorClasses = {\n primary: 'not-disabled:border-button-outline-primary-text not-disabled:text-button-outline-primary-text',\n }[color]\n\n const iconColorClasses = {\n primary: 'not-group-disabled:text-button-outline-primary-icon',\n }[color]\n return (\n <button\n onClick={onClick}\n className={clsx(\n 'group font-semibold bg-transparent border-2 ',\n 'not-disabled:hover:brightness-80',\n colorClasses,\n 'disabled:text-disabled-text disabled:border-disabled-outline',\n ButtonUtil.paddingMapping[size],\n className\n )}\n {...restProps}\n >\n {startIcon && (\n <span\n className={clsx(\n iconColorClasses,\n 'group-disabled:text-disabled-icon'\n )}\n >\n {startIcon}\n </span>\n )}\n {children}\n {endIcon && (\n <span\n className={clsx(\n iconColorClasses,\n 'group-disabled:text-disabled-icon'\n )}\n >\n {endIcon}\n </span>\n )}\n </button>\n )\n}\n\n/**\n * A text that is a button that can have different sizes\n */\nconst TextButton = ({\n children,\n color = 'neutral',\n size = 'medium',\n startIcon,\n endIcon,\n onClick,\n coloredHoverBackground = true,\n className,\n ...restProps\n }: TextButtonProps) => {\n const colorClasses = {\n primary: 'not-disabled:bg-transparent not-disabled:text-button-text-primary-text',\n negative: 'not-disabled:bg-transparent not-disabled:text-button-text-negative-text',\n neutral: 'not-disabled:bg-transparent not-disabled:text-button-text-neutral-text',\n }[color]\n\n const backgroundColor = {\n primary: 'not-disabled:hover:bg-button-text-primary-text/20',\n negative: 'not-disabled:hover:bg-button-text-negative-text/20',\n neutral: 'not-disabled:hover:bg-button-text-neutral-text/20',\n }[color]\n\n const iconColorClasses = {\n primary: 'not-group-disabled:text-button-text-primary-icon',\n negative: 'not-group-disabled:text-button-text-negative-icon',\n neutral: 'not-group-disabled:text-button-text-neutral-icon',\n }[color]\n\n return (\n <button\n onClick={onClick}\n className={clsx(\n 'group font-semibold',\n 'disabled:text-disabled-text',\n colorClasses,\n {\n [backgroundColor]: coloredHoverBackground,\n 'not-disabled:hover:bg-button-text-hover-background': !coloredHoverBackground,\n },\n ButtonUtil.paddingMapping[size],\n className\n )}\n {...restProps}\n >\n {startIcon && (\n <span\n className={clsx(\n iconColorClasses,\n 'group-disabled:text-disabled-icon'\n )}\n >\n {startIcon}\n </span>\n )}\n {children}\n {endIcon && (\n <span\n className={clsx(\n iconColorClasses,\n 'group-disabled:text-disabled-icon'\n )}\n >\n {endIcon}\n </span>\n )}\n </button>\n )\n}\n\n\n/**\n * A button for icons with a solid background and different sizes\n */\nconst IconButton = ({\n children,\n color = 'primary',\n size = 'medium',\n className,\n ...restProps\n }: IconButtonProps) => {\n const colorClasses = {\n primary: 'not-disabled:bg-button-solid-primary-background not-disabled:text-button-solid-primary-text',\n secondary: 'not-disabled:bg-button-solid-secondary-background not-disabled:text-button-solid-secondary-text',\n tertiary: 'not-disabled:bg-button-solid-tertiary-background not-disabled:text-button-solid-tertiary-text',\n positive: 'not-disabled:bg-button-solid-positive-background not-disabled:text-button-solid-positive-text',\n warning: 'not-disabled:bg-button-solid-warning-background not-disabled:text-button-solid-warning-text',\n negative: 'not-disabled:bg-button-solid-negative-background not-disabled:text-button-solid-negative-text',\n neutral: 'not-disabled:bg-button-solid-neutral-background not-disabled:text-button-solid-neutral-text',\n transparent: 'not-disabled:bg-transparent',\n }[color]\n\n return (\n <button\n className={clsx(\n colorClasses,\n 'not-disabled:hover:brightness-90',\n 'disabled:text-disabled-text',\n {\n 'disabled:bg-disabled-background': color !== 'transparent',\n 'disabled:opacity-70': color === 'transparent',\n 'not-disabled:hover:bg-button-text-hover-background': color === 'transparent',\n },\n ButtonUtil.iconPaddingMapping[size],\n className\n )}\n {...restProps}\n >\n {children}\n </button>\n )\n}\n\nexport { SolidButton, OutlineButton, TextButton, IconButton }\n"],"mappings":"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","names":["SolidButton","clsx"]}
@@ -27,7 +27,6 @@ var ButtonUtil = {
27
27
  };
28
28
  var SolidButton = forwardRef(function SolidButton2({
29
29
  children,
30
- disabled = false,
31
30
  color = "primary",
32
31
  size = "medium",
33
32
  startIcon,
@@ -37,35 +36,33 @@ var SolidButton = forwardRef(function SolidButton2({
37
36
  ...restProps
38
37
  }, ref) {
39
38
  const colorClasses = {
40
- primary: "bg-button-solid-primary-background text-button-solid-primary-text",
41
- secondary: "bg-button-solid-secondary-background text-button-solid-secondary-text",
42
- tertiary: "bg-button-solid-tertiary-background text-button-solid-tertiary-text",
43
- positive: "bg-button-solid-positive-background text-button-solid-positive-text",
44
- warning: "bg-button-solid-warning-background text-button-solid-warning-text",
45
- negative: "bg-button-solid-negative-background text-button-solid-negative-text",
46
- neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text"
39
+ primary: "not-disabled:bg-button-solid-primary-background not-disabled:text-button-solid-primary-text",
40
+ secondary: "not-disabled:bg-button-solid-secondary-background not-disabled:text-button-solid-secondary-text",
41
+ tertiary: "not-disabled:bg-button-solid-tertiary-background not-disabled:text-button-solid-tertiary-text",
42
+ positive: "not-disabled:bg-button-solid-positive-background not-disabled:text-button-solid-positive-text",
43
+ warning: "not-disabled:bg-button-solid-warning-background not-disabled:text-button-solid-warning-text",
44
+ negative: "not-disabled:bg-button-solid-negative-background not-disabled:text-button-solid-negative-text",
45
+ neutral: "not-disabled:bg-button-solid-neutral-background not-disabled:text-button-solid-neutral-text"
47
46
  }[color];
48
47
  const iconColorClasses = {
49
- primary: "text-button-solid-primary-icon",
50
- secondary: "text-button-solid-secondary-icon",
51
- tertiary: "text-button-solid-tertiary-icon",
52
- positive: "text-button-solid-positive-icon",
53
- warning: "text-button-solid-warning-icon",
54
- negative: "text-button-solid-negative-icon",
55
- neutral: "text-button-solid-neutral-icon"
48
+ primary: "not-group-disabled:text-button-solid-primary-icon",
49
+ secondary: "not-group-disabled:text-button-solid-secondary-icon",
50
+ tertiary: "not-group-disabled:text-button-solid-tertiary-icon",
51
+ positive: "not-group-disabled:text-button-solid-positive-icon",
52
+ warning: "not-group-disabled:text-button-solid-warning-icon",
53
+ negative: "not-group-disabled:text-button-solid-negative-icon",
54
+ neutral: "not-group-disabled:text-button-solid-neutral-icon"
56
55
  }[color];
57
56
  return /* @__PURE__ */ jsxs(
58
57
  "button",
59
58
  {
60
59
  ref,
61
60
  onClick,
62
- disabled,
63
61
  className: clsx(
64
- "font-semibold",
65
- {
66
- "text-disabled-text bg-disabled-background cursor-not-allowed": disabled,
67
- [clsx(colorClasses, "hover:brightness-90")]: !disabled
68
- },
62
+ "group font-semibold",
63
+ colorClasses,
64
+ "not-disabled:hover:brightness-90",
65
+ "disabled:text-disabled-text disabled:bg-disabled-background",
69
66
  ButtonUtil.paddingMapping[size],
70
67
  className
71
68
  ),
@@ -74,10 +71,10 @@ var SolidButton = forwardRef(function SolidButton2({
74
71
  startIcon && /* @__PURE__ */ jsx(
75
72
  "span",
76
73
  {
77
- className: clsx({
78
- [iconColorClasses]: !disabled,
79
- [`text-disabled-icon`]: disabled
80
- }),
74
+ className: clsx(
75
+ iconColorClasses,
76
+ "group-disabled:text-disabled-icon"
77
+ ),
81
78
  children: startIcon
82
79
  }
83
80
  ),
@@ -85,10 +82,10 @@ var SolidButton = forwardRef(function SolidButton2({
85
82
  endIcon && /* @__PURE__ */ jsx(
86
83
  "span",
87
84
  {
88
- className: clsx({
89
- [iconColorClasses]: !disabled,
90
- [`text-disabled-icon`]: disabled
91
- }),
85
+ className: clsx(
86
+ iconColorClasses,
87
+ "group-disabled:text-disabled-icon"
88
+ ),
92
89
  children: endIcon
93
90
  }
94
91
  )
@@ -98,7 +95,6 @@ var SolidButton = forwardRef(function SolidButton2({
98
95
  });
99
96
  var OutlineButton = ({
100
97
  children,
101
- disabled = false,
102
98
  color = "primary",
103
99
  size = "medium",
104
100
  startIcon,
@@ -108,22 +104,20 @@ var OutlineButton = ({
108
104
  ...restProps
109
105
  }) => {
110
106
  const colorClasses = {
111
- primary: "bg-transparent border-2 border-button-outline-primary-text text-button-outline-primary-text"
107
+ primary: "not-disabled:border-button-outline-primary-text not-disabled:text-button-outline-primary-text"
112
108
  }[color];
113
109
  const iconColorClasses = {
114
- primary: "text-button-outline-primary-icon"
110
+ primary: "not-group-disabled:text-button-outline-primary-icon"
115
111
  }[color];
116
112
  return /* @__PURE__ */ jsxs(
117
113
  "button",
118
114
  {
119
115
  onClick,
120
- disabled,
121
116
  className: clsx(
122
- "font-semibold",
123
- {
124
- "text-disabled-text border-disabled-outline cursor-not-allowed": disabled,
125
- [clsx(colorClasses, "hover:brightness-80")]: !disabled
126
- },
117
+ "group font-semibold bg-transparent border-2 ",
118
+ "not-disabled:hover:brightness-80",
119
+ colorClasses,
120
+ "disabled:text-disabled-text disabled:border-disabled-outline",
127
121
  ButtonUtil.paddingMapping[size],
128
122
  className
129
123
  ),
@@ -132,10 +126,10 @@ var OutlineButton = ({
132
126
  startIcon && /* @__PURE__ */ jsx(
133
127
  "span",
134
128
  {
135
- className: clsx({
136
- [iconColorClasses]: !disabled,
137
- [`text-disabled-icon`]: disabled
138
- }),
129
+ className: clsx(
130
+ iconColorClasses,
131
+ "group-disabled:text-disabled-icon"
132
+ ),
139
133
  children: startIcon
140
134
  }
141
135
  ),
@@ -143,10 +137,10 @@ var OutlineButton = ({
143
137
  endIcon && /* @__PURE__ */ jsx(
144
138
  "span",
145
139
  {
146
- className: clsx({
147
- [iconColorClasses]: !disabled,
148
- [`text-disabled-icon`]: disabled
149
- }),
140
+ className: clsx(
141
+ iconColorClasses,
142
+ "group-disabled:text-disabled-icon"
143
+ ),
150
144
  children: endIcon
151
145
  }
152
146
  )
@@ -156,7 +150,6 @@ var OutlineButton = ({
156
150
  };
157
151
  var TextButton = ({
158
152
  children,
159
- disabled = false,
160
153
  color = "neutral",
161
154
  size = "medium",
162
155
  startIcon,
@@ -167,32 +160,31 @@ var TextButton = ({
167
160
  ...restProps
168
161
  }) => {
169
162
  const colorClasses = {
170
- primary: "bg-transparent text-button-text-primary-text",
171
- negative: "bg-transparent text-button-text-negative-text",
172
- neutral: "bg-transparent text-button-text-neutral-text"
163
+ primary: "not-disabled:bg-transparent not-disabled:text-button-text-primary-text",
164
+ negative: "not-disabled:bg-transparent not-disabled:text-button-text-negative-text",
165
+ neutral: "not-disabled:bg-transparent not-disabled:text-button-text-neutral-text"
173
166
  }[color];
174
167
  const backgroundColor = {
175
- primary: "hover:bg-button-text-primary-text/20",
176
- negative: "hover:bg-button-text-negative-text/20",
177
- neutral: "hover:bg-button-text-neutral-text/20"
168
+ primary: "not-disabled:hover:bg-button-text-primary-text/20",
169
+ negative: "not-disabled:hover:bg-button-text-negative-text/20",
170
+ neutral: "not-disabled:hover:bg-button-text-neutral-text/20"
178
171
  }[color];
179
172
  const iconColorClasses = {
180
- primary: "text-button-text-primary-icon",
181
- negative: "text-button-text-negative-icon",
182
- neutral: "text-button-text-neutral-icon"
173
+ primary: "not-group-disabled:text-button-text-primary-icon",
174
+ negative: "not-group-disabled:text-button-text-negative-icon",
175
+ neutral: "not-group-disabled:text-button-text-neutral-icon"
183
176
  }[color];
184
177
  return /* @__PURE__ */ jsxs(
185
178
  "button",
186
179
  {
187
180
  onClick,
188
- disabled,
189
181
  className: clsx(
190
- "font-semibold",
182
+ "group font-semibold",
183
+ "disabled:text-disabled-text",
184
+ colorClasses,
191
185
  {
192
- "text-disabled-text cursor-not-allowed": disabled,
193
- [colorClasses]: !disabled,
194
- [backgroundColor]: !disabled && coloredHoverBackground,
195
- "hover:bg-button-text-hover-background": !disabled && !coloredHoverBackground
186
+ [backgroundColor]: coloredHoverBackground,
187
+ "not-disabled:hover:bg-button-text-hover-background": !coloredHoverBackground
196
188
  },
197
189
  ButtonUtil.paddingMapping[size],
198
190
  className
@@ -202,10 +194,10 @@ var TextButton = ({
202
194
  startIcon && /* @__PURE__ */ jsx(
203
195
  "span",
204
196
  {
205
- className: clsx({
206
- [iconColorClasses]: !disabled,
207
- [`text-disabled-icon`]: disabled
208
- }),
197
+ className: clsx(
198
+ iconColorClasses,
199
+ "group-disabled:text-disabled-icon"
200
+ ),
209
201
  children: startIcon
210
202
  }
211
203
  ),
@@ -213,10 +205,10 @@ var TextButton = ({
213
205
  endIcon && /* @__PURE__ */ jsx(
214
206
  "span",
215
207
  {
216
- className: clsx({
217
- [iconColorClasses]: !disabled,
218
- [`text-disabled-icon`]: disabled
219
- }),
208
+ className: clsx(
209
+ iconColorClasses,
210
+ "group-disabled:text-disabled-icon"
211
+ ),
220
212
  children: endIcon
221
213
  }
222
214
  )
@@ -226,32 +218,32 @@ var TextButton = ({
226
218
  };
227
219
  var IconButton = ({
228
220
  children,
229
- disabled = false,
230
221
  color = "primary",
231
222
  size = "medium",
232
223
  className,
233
224
  ...restProps
234
225
  }) => {
235
226
  const colorClasses = {
236
- primary: "bg-button-solid-primary-background text-button-solid-primary-text",
237
- secondary: "bg-button-solid-secondary-background text-button-solid-secondary-text",
238
- tertiary: "bg-button-solid-tertiary-background text-button-solid-tertiary-text",
239
- positive: "bg-button-solid-positive-background text-button-solid-positive-text",
240
- warning: "bg-button-solid-warning-background text-button-solid-warning-text",
241
- negative: "bg-button-solid-negative-background text-button-solid-negative-text",
242
- neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text",
243
- transparent: "bg-transparent"
227
+ primary: "not-disabled:bg-button-solid-primary-background not-disabled:text-button-solid-primary-text",
228
+ secondary: "not-disabled:bg-button-solid-secondary-background not-disabled:text-button-solid-secondary-text",
229
+ tertiary: "not-disabled:bg-button-solid-tertiary-background not-disabled:text-button-solid-tertiary-text",
230
+ positive: "not-disabled:bg-button-solid-positive-background not-disabled:text-button-solid-positive-text",
231
+ warning: "not-disabled:bg-button-solid-warning-background not-disabled:text-button-solid-warning-text",
232
+ negative: "not-disabled:bg-button-solid-negative-background not-disabled:text-button-solid-negative-text",
233
+ neutral: "not-disabled:bg-button-solid-neutral-background not-disabled:text-button-solid-neutral-text",
234
+ transparent: "not-disabled:bg-transparent"
244
235
  }[color];
245
236
  return /* @__PURE__ */ jsx(
246
237
  "button",
247
238
  {
248
- disabled,
249
239
  className: clsx(
240
+ colorClasses,
241
+ "not-disabled:hover:brightness-90",
242
+ "disabled:text-disabled-text",
250
243
  {
251
- "text-disabled-text bg-disabled-background cursor-not-allowed": disabled && color !== "transparent",
252
- "text-disabled-text cursor-not-allowed opacity-70": disabled && color === "transparent",
253
- "hover:bg-button-text-hover-background": !disabled && color === "transparent",
254
- [clsx(colorClasses, "hover:brightness-90")]: !disabled
244
+ "disabled:bg-disabled-background": color !== "transparent",
245
+ "disabled:opacity-70": color === "transparent",
246
+ "not-disabled:hover:bg-button-text-hover-background": color === "transparent"
255
247
  },
256
248
  ButtonUtil.iconPaddingMapping[size],
257
249
  className