@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.
- package/dist/components/date/DatePicker.js +48 -53
- package/dist/components/date/DatePicker.js.map +1 -1
- package/dist/components/date/DatePicker.mjs +58 -63
- package/dist/components/date/DatePicker.mjs.map +1 -1
- package/dist/components/date/DayPicker.js.map +1 -1
- package/dist/components/date/DayPicker.mjs +4 -4
- package/dist/components/date/DayPicker.mjs.map +1 -1
- package/dist/components/date/TimeDisplay.js.map +1 -1
- package/dist/components/date/TimeDisplay.mjs +2 -2
- package/dist/components/date/TimeDisplay.mjs.map +1 -1
- package/dist/components/date/YearMonthPicker.js +26 -29
- package/dist/components/date/YearMonthPicker.js.map +1 -1
- package/dist/components/date/YearMonthPicker.mjs +31 -34
- package/dist/components/date/YearMonthPicker.mjs.map +1 -1
- package/dist/components/dialogs/ConfirmDialog.js +40 -43
- package/dist/components/dialogs/ConfirmDialog.js.map +1 -1
- package/dist/components/dialogs/ConfirmDialog.mjs +48 -51
- package/dist/components/dialogs/ConfirmDialog.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Carousel.js +40 -43
- package/dist/components/layout-and-navigation/Carousel.js.map +1 -1
- package/dist/components/layout-and-navigation/Carousel.mjs +40 -43
- package/dist/components/layout-and-navigation/Carousel.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Overlay.js +40 -43
- package/dist/components/layout-and-navigation/Overlay.js.map +1 -1
- package/dist/components/layout-and-navigation/Overlay.mjs +46 -49
- package/dist/components/layout-and-navigation/Overlay.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Pagination.js +40 -43
- package/dist/components/layout-and-navigation/Pagination.js.map +1 -1
- package/dist/components/layout-and-navigation/Pagination.mjs +50 -53
- package/dist/components/layout-and-navigation/Pagination.mjs.map +1 -1
- package/dist/components/layout-and-navigation/SearchableList.js +40 -43
- package/dist/components/layout-and-navigation/SearchableList.js.map +1 -1
- package/dist/components/layout-and-navigation/SearchableList.mjs +50 -53
- package/dist/components/layout-and-navigation/SearchableList.mjs.map +1 -1
- package/dist/components/layout-and-navigation/StepperBar.js +26 -29
- package/dist/components/layout-and-navigation/StepperBar.js.map +1 -1
- package/dist/components/layout-and-navigation/StepperBar.mjs +30 -33
- package/dist/components/layout-and-navigation/StepperBar.mjs.map +1 -1
- package/dist/components/layout-and-navigation/TextImage.js.map +1 -1
- package/dist/components/layout-and-navigation/TextImage.mjs +2 -2
- package/dist/components/layout-and-navigation/TextImage.mjs.map +1 -1
- package/dist/components/loading-states/ErrorComponent.js.map +1 -1
- package/dist/components/loading-states/ErrorComponent.mjs +2 -2
- package/dist/components/loading-states/ErrorComponent.mjs.map +1 -1
- package/dist/components/loading-states/LoadingAnimation.js.map +1 -1
- package/dist/components/loading-states/LoadingAnimation.mjs +2 -2
- package/dist/components/loading-states/LoadingAnimation.mjs.map +1 -1
- package/dist/components/loading-states/LoadingButton.js +26 -29
- package/dist/components/loading-states/LoadingButton.js.map +1 -1
- package/dist/components/loading-states/LoadingButton.mjs +26 -29
- package/dist/components/loading-states/LoadingButton.mjs.map +1 -1
- package/dist/components/modals/ConfirmModal.js +40 -43
- package/dist/components/modals/ConfirmModal.js.map +1 -1
- package/dist/components/modals/ConfirmModal.mjs +48 -51
- package/dist/components/modals/ConfirmModal.mjs.map +1 -1
- package/dist/components/modals/DiscardChangesModal.js +40 -43
- package/dist/components/modals/DiscardChangesModal.js.map +1 -1
- package/dist/components/modals/DiscardChangesModal.mjs +48 -51
- package/dist/components/modals/DiscardChangesModal.mjs.map +1 -1
- package/dist/components/modals/InputModal.js +40 -43
- package/dist/components/modals/InputModal.js.map +1 -1
- package/dist/components/modals/InputModal.mjs +48 -51
- package/dist/components/modals/InputModal.mjs.map +1 -1
- package/dist/components/modals/LanguageModal.js +43 -49
- package/dist/components/modals/LanguageModal.js.map +1 -1
- package/dist/components/modals/LanguageModal.mjs +67 -73
- package/dist/components/modals/LanguageModal.mjs.map +1 -1
- package/dist/components/modals/ThemeModal.js +43 -49
- package/dist/components/modals/ThemeModal.js.map +1 -1
- package/dist/components/modals/ThemeModal.mjs +68 -74
- package/dist/components/modals/ThemeModal.mjs.map +1 -1
- package/dist/components/properties/CheckboxProperty.js +96 -75
- package/dist/components/properties/CheckboxProperty.js.map +1 -1
- package/dist/components/properties/CheckboxProperty.mjs +98 -77
- package/dist/components/properties/CheckboxProperty.mjs.map +1 -1
- package/dist/components/properties/DateProperty.js +48 -53
- package/dist/components/properties/DateProperty.js.map +1 -1
- package/dist/components/properties/DateProperty.mjs +50 -55
- package/dist/components/properties/DateProperty.mjs.map +1 -1
- package/dist/components/properties/MultiSelectProperty.js +114 -93
- package/dist/components/properties/MultiSelectProperty.js.map +1 -1
- package/dist/components/properties/MultiSelectProperty.mjs +135 -114
- package/dist/components/properties/MultiSelectProperty.mjs.map +1 -1
- package/dist/components/properties/NumberProperty.js +48 -53
- package/dist/components/properties/NumberProperty.js.map +1 -1
- package/dist/components/properties/NumberProperty.mjs +50 -55
- package/dist/components/properties/NumberProperty.mjs.map +1 -1
- package/dist/components/properties/PropertyBase.js +48 -53
- package/dist/components/properties/PropertyBase.js.map +1 -1
- package/dist/components/properties/PropertyBase.mjs +50 -55
- package/dist/components/properties/PropertyBase.mjs.map +1 -1
- package/dist/components/properties/SelectProperty.js +65 -73
- package/dist/components/properties/SelectProperty.js.map +1 -1
- package/dist/components/properties/SelectProperty.mjs +86 -94
- package/dist/components/properties/SelectProperty.mjs.map +1 -1
- package/dist/components/properties/TextProperty.js +51 -56
- package/dist/components/properties/TextProperty.js.map +1 -1
- package/dist/components/properties/TextProperty.mjs +57 -62
- package/dist/components/properties/TextProperty.mjs.map +1 -1
- package/dist/components/table/Table.js +88 -65
- package/dist/components/table/Table.js.map +1 -1
- package/dist/components/table/Table.mjs +114 -91
- package/dist/components/table/Table.mjs.map +1 -1
- package/dist/components/table/TableFilterButton.js +40 -43
- package/dist/components/table/TableFilterButton.js.map +1 -1
- package/dist/components/table/TableFilterButton.mjs +44 -47
- package/dist/components/table/TableFilterButton.mjs.map +1 -1
- package/dist/components/table/TableSortButton.js +40 -43
- package/dist/components/table/TableSortButton.js.map +1 -1
- package/dist/components/table/TableSortButton.mjs +40 -43
- package/dist/components/table/TableSortButton.mjs.map +1 -1
- package/dist/components/user-action/Button.d.mts +3 -3
- package/dist/components/user-action/Button.d.ts +3 -3
- package/dist/components/user-action/Button.js +76 -84
- package/dist/components/user-action/Button.js.map +1 -1
- package/dist/components/user-action/Button.mjs +76 -84
- package/dist/components/user-action/Button.mjs.map +1 -1
- package/dist/components/user-action/Checkbox.js +48 -22
- package/dist/components/user-action/Checkbox.js.map +1 -1
- package/dist/components/user-action/Checkbox.mjs +48 -22
- package/dist/components/user-action/Checkbox.mjs.map +1 -1
- package/dist/components/user-action/CopyToClipboardWrapper.js.map +1 -1
- package/dist/components/user-action/CopyToClipboardWrapper.mjs +2 -2
- package/dist/components/user-action/CopyToClipboardWrapper.mjs.map +1 -1
- package/dist/components/user-action/DateAndTimePicker.js +48 -53
- package/dist/components/user-action/DateAndTimePicker.js.map +1 -1
- package/dist/components/user-action/DateAndTimePicker.mjs +60 -65
- package/dist/components/user-action/DateAndTimePicker.mjs.map +1 -1
- package/dist/components/user-action/MultiSelect.js +92 -69
- package/dist/components/user-action/MultiSelect.js.map +1 -1
- package/dist/components/user-action/MultiSelect.mjs +114 -91
- package/dist/components/user-action/MultiSelect.mjs.map +1 -1
- package/dist/components/user-action/SearchBar.js +40 -43
- package/dist/components/user-action/SearchBar.js.map +1 -1
- package/dist/components/user-action/SearchBar.mjs +42 -45
- package/dist/components/user-action/SearchBar.mjs.map +1 -1
- package/dist/components/user-action/Select.js +43 -49
- package/dist/components/user-action/Select.js.map +1 -1
- package/dist/components/user-action/Select.mjs +49 -55
- package/dist/components/user-action/Select.mjs.map +1 -1
- package/dist/components/user-action/Textarea.js +3 -3
- package/dist/components/user-action/Textarea.js.map +1 -1
- package/dist/components/user-action/Textarea.mjs +3 -3
- package/dist/components/user-action/Textarea.mjs.map +1 -1
- package/dist/css/globals.css +269 -136
- package/dist/css/uncompiled/theme/index.css +1 -2
- package/dist/hooks/useLocalStorage.js +1 -3
- package/dist/hooks/useLocalStorage.js.map +1 -1
- package/dist/hooks/useLocalStorage.mjs +3 -4
- package/dist/hooks/useLocalStorage.mjs.map +1 -1
- package/dist/index.js +141 -129
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +216 -204
- package/dist/index.mjs.map +1 -1
- package/dist/localization/LanguageProvider.js +0 -3
- package/dist/localization/LanguageProvider.js.map +1 -1
- package/dist/localization/LanguageProvider.mjs +5 -8
- package/dist/localization/LanguageProvider.mjs.map +1 -1
- package/dist/localization/useTranslation.js.map +1 -1
- package/dist/localization/useTranslation.mjs +2 -2
- package/dist/localization/useTranslation.mjs.map +1 -1
- package/dist/theming/useTheme.js +3 -6
- package/dist/theming/useTheme.js.map +1 -1
- package/dist/theming/useTheme.mjs +8 -11
- package/dist/theming/useTheme.mjs.map +1 -1
- package/package.json +1 -1
- 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
|
-
|
|
106
|
-
|
|
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
|
-
|
|
118
|
-
|
|
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
|
-
|
|
129
|
-
|
|
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: "
|
|
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
|
-
|
|
164
|
-
|
|
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
|
-
|
|
176
|
-
|
|
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
|
-
|
|
187
|
-
|
|
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
|
-
|
|
232
|
-
|
|
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
|
-
|
|
246
|
-
|
|
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
|
-
|
|
257
|
-
|
|
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
|
-
"
|
|
291
|
-
"
|
|
292
|
-
"hover:bg-button-text-hover-background":
|
|
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
|
-
|
|
67
|
-
|
|
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
|
-
|
|
79
|
-
|
|
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
|
-
|
|
90
|
-
|
|
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: "
|
|
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
|
-
|
|
125
|
-
|
|
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
|
-
|
|
137
|
-
|
|
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
|
-
|
|
148
|
-
|
|
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
|
-
|
|
193
|
-
|
|
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
|
-
|
|
207
|
-
|
|
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
|
-
|
|
218
|
-
|
|
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
|
-
"
|
|
252
|
-
"
|
|
253
|
-
"hover:bg-button-text-hover-background":
|
|
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
|