@helpwave/hightide 0.1.11 → 0.1.13
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 +37 -7
- package/dist/components/date/DatePicker.js.map +1 -1
- package/dist/components/date/DatePicker.mjs +37 -7
- package/dist/components/date/DatePicker.mjs.map +1 -1
- package/dist/components/date/DayPicker.js.map +1 -1
- package/dist/components/date/DayPicker.mjs.map +1 -1
- package/dist/components/date/TimePicker.js +27 -6
- package/dist/components/date/TimePicker.js.map +1 -1
- package/dist/components/date/TimePicker.mjs +27 -6
- package/dist/components/date/TimePicker.mjs.map +1 -1
- package/dist/components/date/YearMonthPicker.js +36 -6
- package/dist/components/date/YearMonthPicker.js.map +1 -1
- package/dist/components/date/YearMonthPicker.mjs +36 -6
- package/dist/components/date/YearMonthPicker.mjs.map +1 -1
- package/dist/components/dialogs/ConfirmDialog.js +16 -2
- package/dist/components/dialogs/ConfirmDialog.js.map +1 -1
- package/dist/components/dialogs/ConfirmDialog.mjs +16 -2
- package/dist/components/dialogs/ConfirmDialog.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Carousel.js +42 -9
- package/dist/components/layout-and-navigation/Carousel.js.map +1 -1
- package/dist/components/layout-and-navigation/Carousel.mjs +42 -9
- package/dist/components/layout-and-navigation/Carousel.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Expandable.js +1 -1
- package/dist/components/layout-and-navigation/Expandable.js.map +1 -1
- package/dist/components/layout-and-navigation/Expandable.mjs +1 -1
- package/dist/components/layout-and-navigation/Expandable.mjs.map +1 -1
- package/dist/components/layout-and-navigation/FAQSection.js +1 -1
- package/dist/components/layout-and-navigation/FAQSection.js.map +1 -1
- package/dist/components/layout-and-navigation/FAQSection.mjs +1 -1
- package/dist/components/layout-and-navigation/FAQSection.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Overlay.js +16 -2
- package/dist/components/layout-and-navigation/Overlay.js.map +1 -1
- package/dist/components/layout-and-navigation/Overlay.mjs +16 -2
- package/dist/components/layout-and-navigation/Overlay.mjs.map +1 -1
- package/dist/components/layout-and-navigation/Pagination.d.mts +6 -3
- package/dist/components/layout-and-navigation/Pagination.d.ts +6 -3
- package/dist/components/layout-and-navigation/Pagination.js +404 -19
- package/dist/components/layout-and-navigation/Pagination.js.map +1 -1
- package/dist/components/layout-and-navigation/Pagination.mjs +404 -19
- package/dist/components/layout-and-navigation/Pagination.mjs.map +1 -1
- package/dist/components/layout-and-navigation/SearchableList.js +187 -67
- package/dist/components/layout-and-navigation/SearchableList.js.map +1 -1
- package/dist/components/layout-and-navigation/SearchableList.mjs +183 -63
- package/dist/components/layout-and-navigation/SearchableList.mjs.map +1 -1
- package/dist/components/layout-and-navigation/StepperBar.js +37 -5
- package/dist/components/layout-and-navigation/StepperBar.js.map +1 -1
- package/dist/components/layout-and-navigation/StepperBar.mjs +37 -5
- package/dist/components/layout-and-navigation/StepperBar.mjs.map +1 -1
- package/dist/components/layout-and-navigation/TextImage.js +2 -0
- package/dist/components/layout-and-navigation/TextImage.js.map +1 -1
- package/dist/components/layout-and-navigation/TextImage.mjs +2 -0
- package/dist/components/layout-and-navigation/TextImage.mjs.map +1 -1
- package/dist/components/loading-states/LoadingAndErrorComponent.js +2 -0
- package/dist/components/loading-states/LoadingAndErrorComponent.js.map +1 -1
- package/dist/components/loading-states/LoadingAndErrorComponent.mjs +2 -0
- package/dist/components/loading-states/LoadingAndErrorComponent.mjs.map +1 -1
- package/dist/components/loading-states/LoadingAnimation.js +2 -0
- package/dist/components/loading-states/LoadingAnimation.js.map +1 -1
- package/dist/components/loading-states/LoadingAnimation.mjs +2 -0
- package/dist/components/loading-states/LoadingAnimation.mjs.map +1 -1
- package/dist/components/loading-states/LoadingButton.js +9 -0
- package/dist/components/loading-states/LoadingButton.js.map +1 -1
- package/dist/components/loading-states/LoadingButton.mjs +9 -0
- package/dist/components/loading-states/LoadingButton.mjs.map +1 -1
- package/dist/components/modals/ConfirmModal.js +16 -2
- package/dist/components/modals/ConfirmModal.js.map +1 -1
- package/dist/components/modals/ConfirmModal.mjs +16 -2
- package/dist/components/modals/ConfirmModal.mjs.map +1 -1
- package/dist/components/modals/DiscardChangesModal.js +16 -2
- package/dist/components/modals/DiscardChangesModal.js.map +1 -1
- package/dist/components/modals/DiscardChangesModal.mjs +16 -2
- package/dist/components/modals/DiscardChangesModal.mjs.map +1 -1
- package/dist/components/modals/InputModal.d.mts +1 -0
- package/dist/components/modals/InputModal.d.ts +1 -0
- package/dist/components/modals/InputModal.js +196 -76
- package/dist/components/modals/InputModal.js.map +1 -1
- package/dist/components/modals/InputModal.mjs +189 -69
- package/dist/components/modals/InputModal.mjs.map +1 -1
- package/dist/components/modals/LanguageModal.js +203 -83
- package/dist/components/modals/LanguageModal.js.map +1 -1
- package/dist/components/modals/LanguageModal.mjs +192 -72
- package/dist/components/modals/LanguageModal.mjs.map +1 -1
- package/dist/components/modals/ThemeModal.js +206 -86
- package/dist/components/modals/ThemeModal.js.map +1 -1
- package/dist/components/modals/ThemeModal.mjs +193 -73
- package/dist/components/modals/ThemeModal.mjs.map +1 -1
- package/dist/components/properties/CheckboxProperty.js +17 -5
- package/dist/components/properties/CheckboxProperty.js.map +1 -1
- package/dist/components/properties/CheckboxProperty.mjs +17 -5
- package/dist/components/properties/CheckboxProperty.mjs.map +1 -1
- package/dist/components/properties/DateProperty.js +182 -65
- package/dist/components/properties/DateProperty.js.map +1 -1
- package/dist/components/properties/DateProperty.mjs +179 -62
- package/dist/components/properties/DateProperty.mjs.map +1 -1
- package/dist/components/properties/MultiSelectProperty.js +194 -74
- package/dist/components/properties/MultiSelectProperty.js.map +1 -1
- package/dist/components/properties/MultiSelectProperty.mjs +187 -67
- package/dist/components/properties/MultiSelectProperty.mjs.map +1 -1
- package/dist/components/properties/NumberProperty.js +182 -65
- package/dist/components/properties/NumberProperty.js.map +1 -1
- package/dist/components/properties/NumberProperty.mjs +179 -62
- package/dist/components/properties/NumberProperty.mjs.map +1 -1
- package/dist/components/properties/PropertyBase.js +12 -1
- package/dist/components/properties/PropertyBase.js.map +1 -1
- package/dist/components/properties/PropertyBase.mjs +12 -1
- package/dist/components/properties/PropertyBase.mjs.map +1 -1
- package/dist/components/properties/SelectProperty.js +194 -74
- package/dist/components/properties/SelectProperty.js.map +1 -1
- package/dist/components/properties/SelectProperty.mjs +187 -67
- package/dist/components/properties/SelectProperty.mjs.map +1 -1
- package/dist/components/properties/TextProperty.js +43 -34
- package/dist/components/properties/TextProperty.js.map +1 -1
- package/dist/components/properties/TextProperty.mjs +43 -34
- package/dist/components/properties/TextProperty.mjs.map +1 -1
- package/dist/components/table/FillerRowElement.d.mts +8 -0
- package/dist/components/table/FillerRowElement.d.ts +8 -0
- package/dist/components/table/FillerRowElement.js +36 -0
- package/dist/components/table/FillerRowElement.js.map +1 -0
- package/dist/components/table/FillerRowElement.mjs +12 -0
- package/dist/components/table/FillerRowElement.mjs.map +1 -0
- package/dist/components/table/Filter.d.mts +5 -0
- package/dist/components/table/Filter.d.ts +5 -0
- package/dist/components/table/Filter.js +41 -0
- package/dist/components/table/Filter.js.map +1 -0
- package/dist/components/table/Filter.mjs +17 -0
- package/dist/components/table/Filter.mjs.map +1 -0
- package/dist/components/table/Table.d.mts +41 -0
- package/dist/components/table/Table.d.ts +41 -0
- package/dist/components/table/Table.js +1549 -0
- package/dist/components/table/Table.js.map +1 -0
- package/dist/components/table/Table.mjs +1520 -0
- package/dist/components/table/Table.mjs.map +1 -0
- package/dist/components/table/TableCell.d.mts +9 -0
- package/dist/components/table/TableCell.d.ts +9 -0
- package/dist/components/table/TableCell.js +37 -0
- package/dist/components/table/TableCell.js.map +1 -0
- package/dist/components/table/TableCell.mjs +13 -0
- package/dist/components/table/TableCell.mjs.map +1 -0
- package/dist/components/table/TableFilterButton.d.mts +11 -0
- package/dist/components/table/TableFilterButton.d.ts +11 -0
- package/dist/components/table/TableFilterButton.js +888 -0
- package/dist/components/table/TableFilterButton.js.map +1 -0
- package/dist/components/table/TableFilterButton.mjs +852 -0
- package/dist/components/table/TableFilterButton.mjs.map +1 -0
- package/dist/components/table/TableSortButton.d.mts +15 -0
- package/dist/components/table/TableSortButton.d.ts +15 -0
- package/dist/components/table/TableSortButton.js +136 -0
- package/dist/components/table/TableSortButton.js.map +1 -0
- package/dist/components/table/TableSortButton.mjs +102 -0
- package/dist/components/table/TableSortButton.mjs.map +1 -0
- package/dist/components/user-action/Button.d.mts +20 -5
- package/dist/components/user-action/Button.d.ts +20 -5
- package/dist/components/user-action/Button.js +12 -3
- package/dist/components/user-action/Button.js.map +1 -1
- package/dist/components/user-action/Button.mjs +11 -3
- package/dist/components/user-action/Button.mjs.map +1 -1
- package/dist/components/user-action/Checkbox.js +5 -4
- package/dist/components/user-action/Checkbox.js.map +1 -1
- package/dist/components/user-action/Checkbox.mjs +5 -4
- package/dist/components/user-action/Checkbox.mjs.map +1 -1
- package/dist/components/user-action/DateAndTimePicker.js +41 -9
- package/dist/components/user-action/DateAndTimePicker.js.map +1 -1
- package/dist/components/user-action/DateAndTimePicker.mjs +41 -9
- package/dist/components/user-action/DateAndTimePicker.mjs.map +1 -1
- package/dist/components/user-action/Input.d.mts +27 -7
- package/dist/components/user-action/Input.d.ts +27 -7
- package/dist/components/user-action/Input.js +173 -64
- package/dist/components/user-action/Input.js.map +1 -1
- package/dist/components/user-action/Input.mjs +172 -63
- package/dist/components/user-action/Input.mjs.map +1 -1
- package/dist/components/user-action/MultiSelect.js +195 -75
- package/dist/components/user-action/MultiSelect.js.map +1 -1
- package/dist/components/user-action/MultiSelect.mjs +187 -67
- package/dist/components/user-action/MultiSelect.mjs.map +1 -1
- package/dist/components/user-action/ScrollPicker.js +26 -5
- package/dist/components/user-action/ScrollPicker.js.map +1 -1
- package/dist/components/user-action/ScrollPicker.mjs +26 -5
- package/dist/components/user-action/ScrollPicker.mjs.map +1 -1
- package/dist/components/user-action/Select.js +195 -75
- package/dist/components/user-action/Select.js.map +1 -1
- package/dist/components/user-action/Select.mjs +187 -67
- package/dist/components/user-action/Select.mjs.map +1 -1
- package/dist/components/user-action/Textarea.d.mts +3 -1
- package/dist/components/user-action/Textarea.d.ts +3 -1
- package/dist/components/user-action/Textarea.js +31 -33
- package/dist/components/user-action/Textarea.js.map +1 -1
- package/dist/components/user-action/Textarea.mjs +31 -33
- package/dist/components/user-action/Textarea.mjs.map +1 -1
- package/dist/components/user-action/ToggleableInput.d.mts +3 -1
- package/dist/components/user-action/ToggleableInput.d.ts +3 -1
- package/dist/components/user-action/ToggleableInput.js +31 -33
- package/dist/components/user-action/ToggleableInput.js.map +1 -1
- package/dist/components/user-action/ToggleableInput.mjs +31 -33
- package/dist/components/user-action/ToggleableInput.mjs.map +1 -1
- package/dist/css/globals.css +431 -186
- package/dist/css/uncompiled/globals.css +36 -493
- package/dist/css/uncompiled/textstyles.css +69 -0
- package/dist/css/uncompiled/theme/colors-basic.css +72 -0
- package/dist/css/uncompiled/theme/colors-component.css +143 -0
- package/dist/css/uncompiled/theme/colors-semantic.css +99 -0
- package/dist/css/uncompiled/theme/index.css +5 -0
- package/dist/css/uncompiled/theme/theme.css +0 -0
- package/dist/css/uncompiled/theme/variants.css +3 -0
- package/dist/css/uncompiled/utitlity/animation.css +111 -0
- package/dist/css/uncompiled/utitlity/borderradius.css +23 -0
- package/dist/css/uncompiled/utitlity/general.css +11 -0
- package/dist/css/uncompiled/utitlity/index.css +4 -0
- package/dist/css/uncompiled/utitlity/shadow.css +29 -0
- package/dist/hooks/useDelay.d.mts +11 -0
- package/dist/hooks/useDelay.d.ts +11 -0
- package/dist/hooks/useDelay.js +64 -0
- package/dist/hooks/useDelay.js.map +1 -0
- package/dist/hooks/useDelay.mjs +40 -0
- package/dist/hooks/useDelay.mjs.map +1 -0
- package/dist/hooks/useFocusManagement.d.mts +9 -0
- package/dist/hooks/useFocusManagement.d.ts +9 -0
- package/dist/hooks/useFocusManagement.js +84 -0
- package/dist/hooks/useFocusManagement.js.map +1 -0
- package/dist/hooks/useFocusManagement.mjs +60 -0
- package/dist/hooks/useFocusManagement.mjs.map +1 -0
- package/dist/hooks/useFocusOnceVisible.d.mts +5 -0
- package/dist/hooks/useFocusOnceVisible.d.ts +5 -0
- package/dist/hooks/useFocusOnceVisible.js +60 -0
- package/dist/hooks/useFocusOnceVisible.js.map +1 -0
- package/dist/hooks/useFocusOnceVisible.mjs +26 -0
- package/dist/hooks/useFocusOnceVisible.mjs.map +1 -0
- package/dist/hooks/useRerender.d.mts +5 -0
- package/dist/hooks/useRerender.d.ts +5 -0
- package/dist/hooks/useRerender.js +33 -0
- package/dist/hooks/useRerender.js.map +1 -0
- package/dist/hooks/useRerender.mjs +9 -0
- package/dist/hooks/useRerender.mjs.map +1 -0
- package/dist/hooks/useResizeCallbackWrapper.d.mts +11 -0
- package/dist/hooks/useResizeCallbackWrapper.d.ts +11 -0
- package/dist/hooks/useResizeCallbackWrapper.js +38 -0
- package/dist/hooks/useResizeCallbackWrapper.js.map +1 -0
- package/dist/hooks/useResizeCallbackWrapper.mjs +14 -0
- package/dist/hooks/useResizeCallbackWrapper.mjs.map +1 -0
- package/dist/index.d.mts +16 -5
- package/dist/index.d.ts +16 -5
- package/dist/index.js +1428 -860
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1370 -799
- package/dist/index.mjs.map +1 -1
- package/dist/localization/defaults/form.d.mts +1 -0
- package/dist/localization/defaults/form.d.ts +1 -0
- package/dist/localization/defaults/form.js +2 -0
- package/dist/localization/defaults/form.js.map +1 -1
- package/dist/localization/defaults/form.mjs +2 -0
- package/dist/localization/defaults/form.mjs.map +1 -1
- package/dist/util/array.d.mts +11 -5
- package/dist/util/array.d.ts +11 -5
- package/dist/util/array.js +25 -4
- package/dist/util/array.js.map +1 -1
- package/dist/util/array.mjs +25 -4
- package/dist/util/array.mjs.map +1 -1
- package/dist/util/date.js.map +1 -1
- package/dist/util/date.mjs.map +1 -1
- package/dist/util/resolveSetState.d.mts +5 -0
- package/dist/util/resolveSetState.d.ts +5 -0
- package/dist/util/resolveSetState.js +32 -0
- package/dist/util/resolveSetState.js.map +1 -0
- package/dist/util/resolveSetState.mjs +8 -0
- package/dist/util/resolveSetState.mjs.map +1 -0
- package/package.json +4 -2
- package/dist/components/layout-and-navigation/Table.d.mts +0 -99
- package/dist/components/layout-and-navigation/Table.d.ts +0 -99
- package/dist/components/layout-and-navigation/Table.js +0 -688
- package/dist/components/layout-and-navigation/Table.js.map +0 -1
- package/dist/components/layout-and-navigation/Table.mjs +0 -645
- package/dist/components/layout-and-navigation/Table.mjs.map +0 -1
- package/dist/hooks/useSaveDelay.d.mts +0 -6
- package/dist/hooks/useSaveDelay.d.ts +0 -6
- package/dist/hooks/useSaveDelay.js +0 -67
- package/dist/hooks/useSaveDelay.js.map +0 -1
- package/dist/hooks/useSaveDelay.mjs +0 -43
- package/dist/hooks/useSaveDelay.mjs.map +0 -1
|
@@ -122,7 +122,7 @@ var useTranslation = (translations, overwriteTranslation = {}) => {
|
|
|
122
122
|
|
|
123
123
|
// src/components/user-action/Select.tsx
|
|
124
124
|
var import_lucide_react3 = require("lucide-react");
|
|
125
|
-
var
|
|
125
|
+
var import_react9 = require("react");
|
|
126
126
|
var import_clsx6 = __toESM(require("clsx"));
|
|
127
127
|
|
|
128
128
|
// src/components/user-action/Label.tsx
|
|
@@ -148,55 +148,147 @@ var import_lucide_react = require("lucide-react");
|
|
|
148
148
|
var import_clsx4 = __toESM(require("clsx"));
|
|
149
149
|
|
|
150
150
|
// src/components/user-action/Input.tsx
|
|
151
|
-
var
|
|
151
|
+
var import_react6 = require("react");
|
|
152
152
|
var import_clsx2 = __toESM(require("clsx"));
|
|
153
153
|
|
|
154
|
-
// src/hooks/
|
|
154
|
+
// src/hooks/useDelay.ts
|
|
155
155
|
var import_react3 = require("react");
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
setNotificationTimer(setTimeout(() => {
|
|
166
|
-
setNotificationStatus(false);
|
|
167
|
-
clearTimeout(notificationTimer);
|
|
168
|
-
}, delay));
|
|
169
|
-
clearTimeout(updateTimer);
|
|
170
|
-
}, delay));
|
|
156
|
+
var defaultOptions = {
|
|
157
|
+
delay: 3e3,
|
|
158
|
+
disabled: false
|
|
159
|
+
};
|
|
160
|
+
function useDelay(options) {
|
|
161
|
+
const [timer, setTimer] = (0, import_react3.useState)(void 0);
|
|
162
|
+
const { delay, disabled } = {
|
|
163
|
+
...defaultOptions,
|
|
164
|
+
...options
|
|
171
165
|
};
|
|
172
|
-
const
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
setNotificationStatus(true);
|
|
176
|
-
clearTimeout(notificationTimer);
|
|
177
|
-
setNotificationTimer(setTimeout(() => {
|
|
178
|
-
setNotificationStatus(false);
|
|
179
|
-
clearTimeout(notificationTimer);
|
|
180
|
-
}, delay));
|
|
181
|
-
} else {
|
|
182
|
-
setNotificationStatus(false);
|
|
166
|
+
const restartTimer = (onDelayFinish) => {
|
|
167
|
+
if (disabled) {
|
|
168
|
+
return;
|
|
183
169
|
}
|
|
170
|
+
clearTimeout(timer);
|
|
171
|
+
setTimer(setTimeout(() => {
|
|
172
|
+
onDelayFinish();
|
|
173
|
+
}, delay));
|
|
174
|
+
};
|
|
175
|
+
const clearTimer = () => {
|
|
176
|
+
clearTimeout(timer);
|
|
184
177
|
};
|
|
185
178
|
(0, import_react3.useEffect)(() => {
|
|
186
179
|
return () => {
|
|
187
|
-
clearTimeout(
|
|
188
|
-
clearTimeout(notificationTimer);
|
|
180
|
+
clearTimeout(timer);
|
|
189
181
|
};
|
|
190
|
-
}, []);
|
|
191
|
-
|
|
182
|
+
}, [timer]);
|
|
183
|
+
(0, import_react3.useEffect)(() => {
|
|
184
|
+
if (disabled) {
|
|
185
|
+
clearTimeout(timer);
|
|
186
|
+
}
|
|
187
|
+
}, [disabled, timer]);
|
|
188
|
+
return { restartTimer, clearTimer };
|
|
192
189
|
}
|
|
193
190
|
|
|
194
191
|
// src/util/noop.ts
|
|
195
192
|
var noop = () => void 0;
|
|
196
193
|
|
|
194
|
+
// src/hooks/useFocusManagement.ts
|
|
195
|
+
var import_react4 = require("react");
|
|
196
|
+
function useFocusManagement() {
|
|
197
|
+
const getFocusableElements = (0, import_react4.useCallback)(() => {
|
|
198
|
+
return Array.from(
|
|
199
|
+
document.querySelectorAll(
|
|
200
|
+
'input, button, select, textarea, a[href], [tabindex]:not([tabindex="-1"])'
|
|
201
|
+
)
|
|
202
|
+
).filter(
|
|
203
|
+
(el) => el instanceof HTMLElement && !el.hasAttribute("disabled") && !el.hasAttribute("hidden") && el.tabIndex !== -1
|
|
204
|
+
);
|
|
205
|
+
}, []);
|
|
206
|
+
const getNextFocusElement = (0, import_react4.useCallback)(() => {
|
|
207
|
+
const elements = getFocusableElements();
|
|
208
|
+
if (elements.length === 0) {
|
|
209
|
+
return void 0;
|
|
210
|
+
}
|
|
211
|
+
let nextElement = elements[0];
|
|
212
|
+
if (document.activeElement instanceof HTMLElement) {
|
|
213
|
+
const currentIndex = elements.indexOf(document.activeElement);
|
|
214
|
+
nextElement = elements[(currentIndex + 1) % elements.length];
|
|
215
|
+
}
|
|
216
|
+
return nextElement;
|
|
217
|
+
}, [getFocusableElements]);
|
|
218
|
+
const focusNext = (0, import_react4.useCallback)(() => {
|
|
219
|
+
const nextElement = getNextFocusElement();
|
|
220
|
+
nextElement?.focus();
|
|
221
|
+
}, [getNextFocusElement]);
|
|
222
|
+
const getPreviousFocusElement = (0, import_react4.useCallback)(() => {
|
|
223
|
+
const elements = getFocusableElements();
|
|
224
|
+
if (elements.length === 0) {
|
|
225
|
+
return void 0;
|
|
226
|
+
}
|
|
227
|
+
let previousElement = elements[0];
|
|
228
|
+
if (document.activeElement instanceof HTMLElement) {
|
|
229
|
+
const currentIndex = elements.indexOf(document.activeElement);
|
|
230
|
+
if (currentIndex === 0) {
|
|
231
|
+
previousElement = elements[elements.length - 1];
|
|
232
|
+
} else {
|
|
233
|
+
previousElement = elements[currentIndex - 1];
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
return previousElement;
|
|
237
|
+
}, [getFocusableElements]);
|
|
238
|
+
const focusPrevious = (0, import_react4.useCallback)(() => {
|
|
239
|
+
const previousElement = getPreviousFocusElement();
|
|
240
|
+
if (previousElement) previousElement.focus();
|
|
241
|
+
}, [getPreviousFocusElement]);
|
|
242
|
+
return {
|
|
243
|
+
getFocusableElements,
|
|
244
|
+
getNextFocusElement,
|
|
245
|
+
getPreviousFocusElement,
|
|
246
|
+
focusNext,
|
|
247
|
+
focusPrevious
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
// src/hooks/useFocusOnceVisible.ts
|
|
252
|
+
var import_react5 = __toESM(require("react"));
|
|
253
|
+
var useFocusOnceVisible = (ref, disable = false) => {
|
|
254
|
+
const [hasUsedFocus, setHasUsedFocus] = import_react5.default.useState(false);
|
|
255
|
+
(0, import_react5.useEffect)(() => {
|
|
256
|
+
if (disable || hasUsedFocus) {
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
const observer = new IntersectionObserver(([entry]) => {
|
|
260
|
+
if (entry.isIntersecting && !hasUsedFocus) {
|
|
261
|
+
ref.current?.focus();
|
|
262
|
+
setHasUsedFocus(hasUsedFocus);
|
|
263
|
+
}
|
|
264
|
+
}, {
|
|
265
|
+
threshold: 0.1
|
|
266
|
+
});
|
|
267
|
+
if (ref.current) {
|
|
268
|
+
observer.observe(ref.current);
|
|
269
|
+
}
|
|
270
|
+
return () => observer.disconnect();
|
|
271
|
+
}, [disable, hasUsedFocus, ref]);
|
|
272
|
+
};
|
|
273
|
+
|
|
197
274
|
// src/components/user-action/Input.tsx
|
|
198
275
|
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
199
|
-
var
|
|
276
|
+
var getInputClassName = ({ disabled = false, hasError = false }) => {
|
|
277
|
+
return (0, import_clsx2.default)(
|
|
278
|
+
"px-2 py-1.5 rounded-md border-2",
|
|
279
|
+
{
|
|
280
|
+
"bg-surface text-on-surface hover:border-primary focus:border-primary": !disabled && !hasError,
|
|
281
|
+
"bg-on-negative text-negative border-negative-border hover:border-negative-border-hover": !disabled && hasError,
|
|
282
|
+
"bg-disabled-background text-disabled-text border-disabled-border": disabled
|
|
283
|
+
}
|
|
284
|
+
);
|
|
285
|
+
};
|
|
286
|
+
var defaultEditCompleteOptions = {
|
|
287
|
+
onBlur: true,
|
|
288
|
+
afterDelay: true,
|
|
289
|
+
delay: 2500
|
|
290
|
+
};
|
|
291
|
+
var Input = (0, import_react6.forwardRef)(function Input2({
|
|
200
292
|
id,
|
|
201
293
|
type = "text",
|
|
202
294
|
value,
|
|
@@ -205,58 +297,73 @@ var Input = ({
|
|
|
205
297
|
onChangeText = noop,
|
|
206
298
|
onEditCompleted,
|
|
207
299
|
className = "",
|
|
300
|
+
allowEnterComplete = true,
|
|
208
301
|
expanded = true,
|
|
209
|
-
autoFocus,
|
|
302
|
+
autoFocus = false,
|
|
210
303
|
onBlur,
|
|
304
|
+
editCompleteOptions,
|
|
211
305
|
containerClassName,
|
|
306
|
+
disabled,
|
|
212
307
|
...restProps
|
|
213
|
-
})
|
|
308
|
+
}, forwardedRef) {
|
|
309
|
+
const { onBlur: allowEditCompleteOnBlur, afterDelay, delay } = { ...defaultEditCompleteOptions, ...editCompleteOptions };
|
|
214
310
|
const {
|
|
215
311
|
restartTimer,
|
|
216
|
-
|
|
217
|
-
} =
|
|
218
|
-
const
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
312
|
+
clearTimer
|
|
313
|
+
} = useDelay({ delay, disabled: !afterDelay });
|
|
314
|
+
const innerRef = (0, import_react6.useRef)(null);
|
|
315
|
+
const { focusNext } = useFocusManagement();
|
|
316
|
+
useFocusOnceVisible(innerRef, !autoFocus);
|
|
317
|
+
(0, import_react6.useImperativeHandle)(forwardedRef, () => innerRef.current);
|
|
318
|
+
const handleKeyDown = (e) => {
|
|
319
|
+
if (e.key === "Enter" && !e.shiftKey) {
|
|
320
|
+
e.preventDefault();
|
|
321
|
+
innerRef.current?.blur();
|
|
322
|
+
focusNext();
|
|
222
323
|
}
|
|
223
|
-
}
|
|
324
|
+
};
|
|
224
325
|
return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: (0, import_clsx2.default)({ "w-full": expanded }, containerClassName), children: [
|
|
225
326
|
label && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Label, { ...label, htmlFor: id, className: (0, import_clsx2.default)("mb-1", label.className) }),
|
|
226
327
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
227
328
|
"input",
|
|
228
329
|
{
|
|
229
|
-
|
|
330
|
+
...restProps,
|
|
331
|
+
ref: innerRef,
|
|
230
332
|
value,
|
|
231
333
|
id,
|
|
232
334
|
type,
|
|
233
|
-
|
|
335
|
+
disabled,
|
|
336
|
+
className: (0, import_clsx2.default)(getInputClassName({ disabled }), className),
|
|
337
|
+
onKeyDown: allowEnterComplete ? handleKeyDown : void 0,
|
|
234
338
|
onBlur: (event) => {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
}
|
|
238
|
-
if (onEditCompleted) {
|
|
339
|
+
onBlur?.(event);
|
|
340
|
+
if (onEditCompleted && allowEditCompleteOnBlur) {
|
|
239
341
|
onEditCompleted(event.target.value);
|
|
240
|
-
|
|
342
|
+
clearTimer();
|
|
241
343
|
}
|
|
242
344
|
},
|
|
243
345
|
onChange: (e) => {
|
|
244
346
|
const value2 = e.target.value;
|
|
245
347
|
if (onEditCompleted) {
|
|
246
348
|
restartTimer(() => {
|
|
247
|
-
|
|
248
|
-
|
|
349
|
+
if (innerRef.current) {
|
|
350
|
+
innerRef.current.blur();
|
|
351
|
+
if (!allowEditCompleteOnBlur) {
|
|
352
|
+
onEditCompleted(value2);
|
|
353
|
+
}
|
|
354
|
+
} else {
|
|
355
|
+
onEditCompleted(value2);
|
|
356
|
+
}
|
|
249
357
|
});
|
|
250
358
|
}
|
|
251
359
|
onChange(e);
|
|
252
360
|
onChangeText(value2);
|
|
253
|
-
}
|
|
254
|
-
...restProps
|
|
361
|
+
}
|
|
255
362
|
}
|
|
256
363
|
)
|
|
257
364
|
] });
|
|
258
|
-
};
|
|
259
|
-
var FormInput = (0,
|
|
365
|
+
});
|
|
366
|
+
var FormInput = (0, import_react6.forwardRef)(function FormInput2({
|
|
260
367
|
id,
|
|
261
368
|
labelText,
|
|
262
369
|
errorText,
|
|
@@ -265,19 +372,18 @@ var FormInput = (0, import_react4.forwardRef)(function FormInput2({
|
|
|
265
372
|
errorClassName,
|
|
266
373
|
containerClassName,
|
|
267
374
|
required,
|
|
375
|
+
disabled,
|
|
268
376
|
...restProps
|
|
269
377
|
}, ref) {
|
|
270
378
|
const input = /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
271
379
|
"input",
|
|
272
380
|
{
|
|
381
|
+
...restProps,
|
|
273
382
|
ref,
|
|
274
383
|
id,
|
|
275
|
-
|
|
384
|
+
disabled,
|
|
276
385
|
className: (0, import_clsx2.default)(
|
|
277
|
-
{
|
|
278
|
-
"focus:border-primary focus:ring-primary": !errorText,
|
|
279
|
-
"focus:border-negative focus:ring-negative text-negative": !!errorText
|
|
280
|
-
},
|
|
386
|
+
getInputClassName({ disabled, hasError: !!errorText }),
|
|
281
387
|
className
|
|
282
388
|
)
|
|
283
389
|
}
|
|
@@ -295,12 +401,21 @@ var FormInput = (0, import_react4.forwardRef)(function FormInput2({
|
|
|
295
401
|
// src/components/user-action/Button.tsx
|
|
296
402
|
var import_clsx3 = __toESM(require("clsx"));
|
|
297
403
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
404
|
+
var ButtonColorUtil = {
|
|
405
|
+
solid: ["primary", "secondary", "tertiary", "positive", "warning", "negative", "neutral"],
|
|
406
|
+
text: ["primary", "negative", "neutral"],
|
|
407
|
+
outline: ["primary"]
|
|
408
|
+
};
|
|
409
|
+
var IconButtonUtil = {
|
|
410
|
+
icon: [...ButtonColorUtil.solid, "transparent"]
|
|
411
|
+
};
|
|
298
412
|
var paddingMapping = {
|
|
299
413
|
small: "btn-sm",
|
|
300
414
|
medium: "btn-md",
|
|
301
415
|
large: "btn-lg"
|
|
302
416
|
};
|
|
303
417
|
var iconPaddingMapping = {
|
|
418
|
+
tiny: "icon-btn-xs",
|
|
304
419
|
small: "icon-btn-sm",
|
|
305
420
|
medium: "icon-btn-md",
|
|
306
421
|
large: "icon-btn-lg"
|
|
@@ -394,7 +509,8 @@ var IconButton = ({
|
|
|
394
509
|
positive: "bg-button-solid-positive-background text-button-solid-positive-text",
|
|
395
510
|
warning: "bg-button-solid-warning-background text-button-solid-warning-text",
|
|
396
511
|
negative: "bg-button-solid-negative-background text-button-solid-negative-text",
|
|
397
|
-
neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text"
|
|
512
|
+
neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text",
|
|
513
|
+
transparent: "bg-transparent"
|
|
398
514
|
}[color];
|
|
399
515
|
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
400
516
|
"button",
|
|
@@ -403,7 +519,9 @@ var IconButton = ({
|
|
|
403
519
|
disabled: disabled || onClick === void 0,
|
|
404
520
|
className: (0, import_clsx3.default)(
|
|
405
521
|
{
|
|
406
|
-
"text-disabled-text bg-disabled-background cursor-not-allowed": disabled,
|
|
522
|
+
"text-disabled-text bg-disabled-background cursor-not-allowed": disabled && color !== "transparent",
|
|
523
|
+
"text-disabled-text cursor-not-allowed opacity-70": disabled && color === "transparent",
|
|
524
|
+
"hover:bg-button-text-hover-background": !disabled && color === "transparent",
|
|
407
525
|
[(0, import_clsx3.default)(colorClasses, "hover:brightness-90")]: !disabled
|
|
408
526
|
},
|
|
409
527
|
ButtonUtil.iconPaddingMapping[size],
|
|
@@ -416,7 +534,7 @@ var IconButton = ({
|
|
|
416
534
|
};
|
|
417
535
|
|
|
418
536
|
// src/hooks/useSearch.ts
|
|
419
|
-
var
|
|
537
|
+
var import_react7 = require("react");
|
|
420
538
|
|
|
421
539
|
// src/util/simpleSearch.ts
|
|
422
540
|
var MultiSearchWithMapping = (search, objects, mapping) => {
|
|
@@ -435,12 +553,12 @@ var useSearch = ({
|
|
|
435
553
|
initialSearch,
|
|
436
554
|
searchMapping
|
|
437
555
|
}) => {
|
|
438
|
-
const [items, setItems] = (0,
|
|
439
|
-
const [search, setSearch] = (0,
|
|
440
|
-
(0,
|
|
556
|
+
const [items, setItems] = (0, import_react7.useState)(list);
|
|
557
|
+
const [search, setSearch] = (0, import_react7.useState)(initialSearch);
|
|
558
|
+
(0, import_react7.useEffect)(() => {
|
|
441
559
|
setItems(list);
|
|
442
560
|
}, [list]);
|
|
443
|
-
const result = (0,
|
|
561
|
+
const result = (0, import_react7.useMemo)(
|
|
444
562
|
() => MultiSearchWithMapping(search, items, searchMapping),
|
|
445
563
|
[search, items, searchMapping]
|
|
446
564
|
);
|
|
@@ -458,6 +576,7 @@ var useSearch = ({
|
|
|
458
576
|
var formTranslation = {
|
|
459
577
|
en: {
|
|
460
578
|
all: "All",
|
|
579
|
+
apply: "Apply",
|
|
461
580
|
back: "Back",
|
|
462
581
|
cancel: "Cancel",
|
|
463
582
|
change: "Change",
|
|
@@ -506,6 +625,7 @@ var formTranslation = {
|
|
|
506
625
|
},
|
|
507
626
|
de: {
|
|
508
627
|
all: "Alle",
|
|
628
|
+
apply: "Anwenden",
|
|
509
629
|
back: "Zur\xFCck",
|
|
510
630
|
cancel: "Abbrechen",
|
|
511
631
|
change: "\xC4ndern",
|
|
@@ -638,9 +758,9 @@ var Tile = ({
|
|
|
638
758
|
};
|
|
639
759
|
|
|
640
760
|
// src/hooks/useOutsideClick.ts
|
|
641
|
-
var
|
|
761
|
+
var import_react8 = require("react");
|
|
642
762
|
var useOutsideClick = (refs, handler) => {
|
|
643
|
-
(0,
|
|
763
|
+
(0, import_react8.useEffect)(() => {
|
|
644
764
|
const listener = (event) => {
|
|
645
765
|
if (event.target === null) return;
|
|
646
766
|
if (refs.some((ref) => !ref.current || ref.current.contains(event.target))) {
|
|
@@ -670,9 +790,9 @@ var Select = ({
|
|
|
670
790
|
className,
|
|
671
791
|
selectedDisplayOverwrite
|
|
672
792
|
}) => {
|
|
673
|
-
const triggerRef = (0,
|
|
674
|
-
const menuRef = (0,
|
|
675
|
-
const [isOpen, setIsOpen] = (0,
|
|
793
|
+
const triggerRef = (0, import_react9.useRef)(null);
|
|
794
|
+
const menuRef = (0, import_react9.useRef)(null);
|
|
795
|
+
const [isOpen, setIsOpen] = (0, import_react9.useState)(false);
|
|
676
796
|
useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
|
|
677
797
|
const selectedOption = options.find((option) => option.value === value);
|
|
678
798
|
if (value !== void 0 && selectedOption === void 0 && selectedDisplayOverwrite === void 0) {
|
|
@@ -738,20 +858,20 @@ var Select = ({
|
|
|
738
858
|
};
|
|
739
859
|
|
|
740
860
|
// src/components/layout-and-navigation/Overlay.tsx
|
|
741
|
-
var
|
|
861
|
+
var import_react11 = require("react");
|
|
742
862
|
var import_react_dom = __toESM(require("react-dom"));
|
|
743
863
|
var import_clsx8 = __toESM(require("clsx"));
|
|
744
864
|
|
|
745
865
|
// src/hooks/useHoverState.ts
|
|
746
|
-
var
|
|
866
|
+
var import_react10 = require("react");
|
|
747
867
|
var defaultUseHoverStateProps = {
|
|
748
868
|
closingDelay: 200,
|
|
749
869
|
isDisabled: false
|
|
750
870
|
};
|
|
751
871
|
var useHoverState = (props = void 0) => {
|
|
752
872
|
const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props };
|
|
753
|
-
const [isHovered, setIsHovered] = (0,
|
|
754
|
-
const [timer, setTimer] = (0,
|
|
873
|
+
const [isHovered, setIsHovered] = (0, import_react10.useState)(false);
|
|
874
|
+
const [timer, setTimer] = (0, import_react10.useState)();
|
|
755
875
|
const onMouseEnter = () => {
|
|
756
876
|
if (isDisabled) {
|
|
757
877
|
return;
|
|
@@ -767,14 +887,14 @@ var useHoverState = (props = void 0) => {
|
|
|
767
887
|
setIsHovered(false);
|
|
768
888
|
}, closingDelay));
|
|
769
889
|
};
|
|
770
|
-
(0,
|
|
890
|
+
(0, import_react10.useEffect)(() => {
|
|
771
891
|
if (timer) {
|
|
772
892
|
return () => {
|
|
773
893
|
clearTimeout(timer);
|
|
774
894
|
};
|
|
775
895
|
}
|
|
776
896
|
});
|
|
777
|
-
(0,
|
|
897
|
+
(0, import_react10.useEffect)(() => {
|
|
778
898
|
if (timer) {
|
|
779
899
|
clearTimeout(timer);
|
|
780
900
|
}
|
|
@@ -861,8 +981,8 @@ var Overlay = ({
|
|
|
861
981
|
onBackgroundClick,
|
|
862
982
|
backgroundClassName
|
|
863
983
|
}) => {
|
|
864
|
-
const [root, setRoot] = (0,
|
|
865
|
-
(0,
|
|
984
|
+
const [root, setRoot] = (0, import_react11.useState)();
|
|
985
|
+
(0, import_react11.useEffect)(() => {
|
|
866
986
|
setRoot(document.body);
|
|
867
987
|
}, []);
|
|
868
988
|
if (!root || !isOpen) return null;
|
|
@@ -924,8 +1044,8 @@ var Modal = ({
|
|
|
924
1044
|
backgroundClassName,
|
|
925
1045
|
headerProps
|
|
926
1046
|
}) => {
|
|
927
|
-
const ref = (0,
|
|
928
|
-
(0,
|
|
1047
|
+
const ref = (0, import_react11.useRef)(null);
|
|
1048
|
+
(0, import_react11.useEffect)(() => {
|
|
929
1049
|
if (!isOpen) return;
|
|
930
1050
|
const modal = ref.current;
|
|
931
1051
|
if (!modal) {
|