@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
|
@@ -33,7 +33,7 @@ __export(MultiSelect_exports, {
|
|
|
33
33
|
MultiSelectUncontrolled: () => MultiSelectUncontrolled
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(MultiSelect_exports);
|
|
36
|
-
var
|
|
36
|
+
var import_react9 = require("react");
|
|
37
37
|
var import_lucide_react3 = require("lucide-react");
|
|
38
38
|
|
|
39
39
|
// src/localization/LanguageProvider.tsx
|
|
@@ -149,55 +149,147 @@ var import_lucide_react = require("lucide-react");
|
|
|
149
149
|
var import_clsx4 = __toESM(require("clsx"));
|
|
150
150
|
|
|
151
151
|
// src/components/user-action/Input.tsx
|
|
152
|
-
var
|
|
152
|
+
var import_react6 = require("react");
|
|
153
153
|
var import_clsx2 = __toESM(require("clsx"));
|
|
154
154
|
|
|
155
|
-
// src/hooks/
|
|
155
|
+
// src/hooks/useDelay.ts
|
|
156
156
|
var import_react3 = require("react");
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
setNotificationTimer(setTimeout(() => {
|
|
167
|
-
setNotificationStatus(false);
|
|
168
|
-
clearTimeout(notificationTimer);
|
|
169
|
-
}, delay));
|
|
170
|
-
clearTimeout(updateTimer);
|
|
171
|
-
}, delay));
|
|
157
|
+
var defaultOptions = {
|
|
158
|
+
delay: 3e3,
|
|
159
|
+
disabled: false
|
|
160
|
+
};
|
|
161
|
+
function useDelay(options) {
|
|
162
|
+
const [timer, setTimer] = (0, import_react3.useState)(void 0);
|
|
163
|
+
const { delay, disabled } = {
|
|
164
|
+
...defaultOptions,
|
|
165
|
+
...options
|
|
172
166
|
};
|
|
173
|
-
const
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
setNotificationStatus(true);
|
|
177
|
-
clearTimeout(notificationTimer);
|
|
178
|
-
setNotificationTimer(setTimeout(() => {
|
|
179
|
-
setNotificationStatus(false);
|
|
180
|
-
clearTimeout(notificationTimer);
|
|
181
|
-
}, delay));
|
|
182
|
-
} else {
|
|
183
|
-
setNotificationStatus(false);
|
|
167
|
+
const restartTimer = (onDelayFinish) => {
|
|
168
|
+
if (disabled) {
|
|
169
|
+
return;
|
|
184
170
|
}
|
|
171
|
+
clearTimeout(timer);
|
|
172
|
+
setTimer(setTimeout(() => {
|
|
173
|
+
onDelayFinish();
|
|
174
|
+
}, delay));
|
|
175
|
+
};
|
|
176
|
+
const clearTimer = () => {
|
|
177
|
+
clearTimeout(timer);
|
|
185
178
|
};
|
|
186
179
|
(0, import_react3.useEffect)(() => {
|
|
187
180
|
return () => {
|
|
188
|
-
clearTimeout(
|
|
189
|
-
clearTimeout(notificationTimer);
|
|
181
|
+
clearTimeout(timer);
|
|
190
182
|
};
|
|
191
|
-
}, []);
|
|
192
|
-
|
|
183
|
+
}, [timer]);
|
|
184
|
+
(0, import_react3.useEffect)(() => {
|
|
185
|
+
if (disabled) {
|
|
186
|
+
clearTimeout(timer);
|
|
187
|
+
}
|
|
188
|
+
}, [disabled, timer]);
|
|
189
|
+
return { restartTimer, clearTimer };
|
|
193
190
|
}
|
|
194
191
|
|
|
195
192
|
// src/util/noop.ts
|
|
196
193
|
var noop = () => void 0;
|
|
197
194
|
|
|
195
|
+
// src/hooks/useFocusManagement.ts
|
|
196
|
+
var import_react4 = require("react");
|
|
197
|
+
function useFocusManagement() {
|
|
198
|
+
const getFocusableElements = (0, import_react4.useCallback)(() => {
|
|
199
|
+
return Array.from(
|
|
200
|
+
document.querySelectorAll(
|
|
201
|
+
'input, button, select, textarea, a[href], [tabindex]:not([tabindex="-1"])'
|
|
202
|
+
)
|
|
203
|
+
).filter(
|
|
204
|
+
(el) => el instanceof HTMLElement && !el.hasAttribute("disabled") && !el.hasAttribute("hidden") && el.tabIndex !== -1
|
|
205
|
+
);
|
|
206
|
+
}, []);
|
|
207
|
+
const getNextFocusElement = (0, import_react4.useCallback)(() => {
|
|
208
|
+
const elements = getFocusableElements();
|
|
209
|
+
if (elements.length === 0) {
|
|
210
|
+
return void 0;
|
|
211
|
+
}
|
|
212
|
+
let nextElement = elements[0];
|
|
213
|
+
if (document.activeElement instanceof HTMLElement) {
|
|
214
|
+
const currentIndex = elements.indexOf(document.activeElement);
|
|
215
|
+
nextElement = elements[(currentIndex + 1) % elements.length];
|
|
216
|
+
}
|
|
217
|
+
return nextElement;
|
|
218
|
+
}, [getFocusableElements]);
|
|
219
|
+
const focusNext = (0, import_react4.useCallback)(() => {
|
|
220
|
+
const nextElement = getNextFocusElement();
|
|
221
|
+
nextElement?.focus();
|
|
222
|
+
}, [getNextFocusElement]);
|
|
223
|
+
const getPreviousFocusElement = (0, import_react4.useCallback)(() => {
|
|
224
|
+
const elements = getFocusableElements();
|
|
225
|
+
if (elements.length === 0) {
|
|
226
|
+
return void 0;
|
|
227
|
+
}
|
|
228
|
+
let previousElement = elements[0];
|
|
229
|
+
if (document.activeElement instanceof HTMLElement) {
|
|
230
|
+
const currentIndex = elements.indexOf(document.activeElement);
|
|
231
|
+
if (currentIndex === 0) {
|
|
232
|
+
previousElement = elements[elements.length - 1];
|
|
233
|
+
} else {
|
|
234
|
+
previousElement = elements[currentIndex - 1];
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
return previousElement;
|
|
238
|
+
}, [getFocusableElements]);
|
|
239
|
+
const focusPrevious = (0, import_react4.useCallback)(() => {
|
|
240
|
+
const previousElement = getPreviousFocusElement();
|
|
241
|
+
if (previousElement) previousElement.focus();
|
|
242
|
+
}, [getPreviousFocusElement]);
|
|
243
|
+
return {
|
|
244
|
+
getFocusableElements,
|
|
245
|
+
getNextFocusElement,
|
|
246
|
+
getPreviousFocusElement,
|
|
247
|
+
focusNext,
|
|
248
|
+
focusPrevious
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
// src/hooks/useFocusOnceVisible.ts
|
|
253
|
+
var import_react5 = __toESM(require("react"));
|
|
254
|
+
var useFocusOnceVisible = (ref, disable = false) => {
|
|
255
|
+
const [hasUsedFocus, setHasUsedFocus] = import_react5.default.useState(false);
|
|
256
|
+
(0, import_react5.useEffect)(() => {
|
|
257
|
+
if (disable || hasUsedFocus) {
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
const observer = new IntersectionObserver(([entry]) => {
|
|
261
|
+
if (entry.isIntersecting && !hasUsedFocus) {
|
|
262
|
+
ref.current?.focus();
|
|
263
|
+
setHasUsedFocus(hasUsedFocus);
|
|
264
|
+
}
|
|
265
|
+
}, {
|
|
266
|
+
threshold: 0.1
|
|
267
|
+
});
|
|
268
|
+
if (ref.current) {
|
|
269
|
+
observer.observe(ref.current);
|
|
270
|
+
}
|
|
271
|
+
return () => observer.disconnect();
|
|
272
|
+
}, [disable, hasUsedFocus, ref]);
|
|
273
|
+
};
|
|
274
|
+
|
|
198
275
|
// src/components/user-action/Input.tsx
|
|
199
276
|
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
200
|
-
var
|
|
277
|
+
var getInputClassName = ({ disabled = false, hasError = false }) => {
|
|
278
|
+
return (0, import_clsx2.default)(
|
|
279
|
+
"px-2 py-1.5 rounded-md border-2",
|
|
280
|
+
{
|
|
281
|
+
"bg-surface text-on-surface hover:border-primary focus:border-primary": !disabled && !hasError,
|
|
282
|
+
"bg-on-negative text-negative border-negative-border hover:border-negative-border-hover": !disabled && hasError,
|
|
283
|
+
"bg-disabled-background text-disabled-text border-disabled-border": disabled
|
|
284
|
+
}
|
|
285
|
+
);
|
|
286
|
+
};
|
|
287
|
+
var defaultEditCompleteOptions = {
|
|
288
|
+
onBlur: true,
|
|
289
|
+
afterDelay: true,
|
|
290
|
+
delay: 2500
|
|
291
|
+
};
|
|
292
|
+
var Input = (0, import_react6.forwardRef)(function Input2({
|
|
201
293
|
id,
|
|
202
294
|
type = "text",
|
|
203
295
|
value,
|
|
@@ -206,58 +298,73 @@ var Input = ({
|
|
|
206
298
|
onChangeText = noop,
|
|
207
299
|
onEditCompleted,
|
|
208
300
|
className = "",
|
|
301
|
+
allowEnterComplete = true,
|
|
209
302
|
expanded = true,
|
|
210
|
-
autoFocus,
|
|
303
|
+
autoFocus = false,
|
|
211
304
|
onBlur,
|
|
305
|
+
editCompleteOptions,
|
|
212
306
|
containerClassName,
|
|
307
|
+
disabled,
|
|
213
308
|
...restProps
|
|
214
|
-
})
|
|
309
|
+
}, forwardedRef) {
|
|
310
|
+
const { onBlur: allowEditCompleteOnBlur, afterDelay, delay } = { ...defaultEditCompleteOptions, ...editCompleteOptions };
|
|
215
311
|
const {
|
|
216
312
|
restartTimer,
|
|
217
|
-
|
|
218
|
-
} =
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
313
|
+
clearTimer
|
|
314
|
+
} = useDelay({ delay, disabled: !afterDelay });
|
|
315
|
+
const innerRef = (0, import_react6.useRef)(null);
|
|
316
|
+
const { focusNext } = useFocusManagement();
|
|
317
|
+
useFocusOnceVisible(innerRef, !autoFocus);
|
|
318
|
+
(0, import_react6.useImperativeHandle)(forwardedRef, () => innerRef.current);
|
|
319
|
+
const handleKeyDown = (e) => {
|
|
320
|
+
if (e.key === "Enter" && !e.shiftKey) {
|
|
321
|
+
e.preventDefault();
|
|
322
|
+
innerRef.current?.blur();
|
|
323
|
+
focusNext();
|
|
223
324
|
}
|
|
224
|
-
}
|
|
325
|
+
};
|
|
225
326
|
return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: (0, import_clsx2.default)({ "w-full": expanded }, containerClassName), children: [
|
|
226
327
|
label && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Label, { ...label, htmlFor: id, className: (0, import_clsx2.default)("mb-1", label.className) }),
|
|
227
328
|
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
228
329
|
"input",
|
|
229
330
|
{
|
|
230
|
-
|
|
331
|
+
...restProps,
|
|
332
|
+
ref: innerRef,
|
|
231
333
|
value,
|
|
232
334
|
id,
|
|
233
335
|
type,
|
|
234
|
-
|
|
336
|
+
disabled,
|
|
337
|
+
className: (0, import_clsx2.default)(getInputClassName({ disabled }), className),
|
|
338
|
+
onKeyDown: allowEnterComplete ? handleKeyDown : void 0,
|
|
235
339
|
onBlur: (event) => {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
}
|
|
239
|
-
if (onEditCompleted) {
|
|
340
|
+
onBlur?.(event);
|
|
341
|
+
if (onEditCompleted && allowEditCompleteOnBlur) {
|
|
240
342
|
onEditCompleted(event.target.value);
|
|
241
|
-
|
|
343
|
+
clearTimer();
|
|
242
344
|
}
|
|
243
345
|
},
|
|
244
346
|
onChange: (e) => {
|
|
245
347
|
const value2 = e.target.value;
|
|
246
348
|
if (onEditCompleted) {
|
|
247
349
|
restartTimer(() => {
|
|
248
|
-
|
|
249
|
-
|
|
350
|
+
if (innerRef.current) {
|
|
351
|
+
innerRef.current.blur();
|
|
352
|
+
if (!allowEditCompleteOnBlur) {
|
|
353
|
+
onEditCompleted(value2);
|
|
354
|
+
}
|
|
355
|
+
} else {
|
|
356
|
+
onEditCompleted(value2);
|
|
357
|
+
}
|
|
250
358
|
});
|
|
251
359
|
}
|
|
252
360
|
onChange(e);
|
|
253
361
|
onChangeText(value2);
|
|
254
|
-
}
|
|
255
|
-
...restProps
|
|
362
|
+
}
|
|
256
363
|
}
|
|
257
364
|
)
|
|
258
365
|
] });
|
|
259
|
-
};
|
|
260
|
-
var FormInput = (0,
|
|
366
|
+
});
|
|
367
|
+
var FormInput = (0, import_react6.forwardRef)(function FormInput2({
|
|
261
368
|
id,
|
|
262
369
|
labelText,
|
|
263
370
|
errorText,
|
|
@@ -266,19 +373,18 @@ var FormInput = (0, import_react4.forwardRef)(function FormInput2({
|
|
|
266
373
|
errorClassName,
|
|
267
374
|
containerClassName,
|
|
268
375
|
required,
|
|
376
|
+
disabled,
|
|
269
377
|
...restProps
|
|
270
378
|
}, ref) {
|
|
271
379
|
const input = /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
272
380
|
"input",
|
|
273
381
|
{
|
|
382
|
+
...restProps,
|
|
274
383
|
ref,
|
|
275
384
|
id,
|
|
276
|
-
|
|
385
|
+
disabled,
|
|
277
386
|
className: (0, import_clsx2.default)(
|
|
278
|
-
{
|
|
279
|
-
"focus:border-primary focus:ring-primary": !errorText,
|
|
280
|
-
"focus:border-negative focus:ring-negative text-negative": !!errorText
|
|
281
|
-
},
|
|
387
|
+
getInputClassName({ disabled, hasError: !!errorText }),
|
|
282
388
|
className
|
|
283
389
|
)
|
|
284
390
|
}
|
|
@@ -296,12 +402,21 @@ var FormInput = (0, import_react4.forwardRef)(function FormInput2({
|
|
|
296
402
|
// src/components/user-action/Button.tsx
|
|
297
403
|
var import_clsx3 = __toESM(require("clsx"));
|
|
298
404
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
405
|
+
var ButtonColorUtil = {
|
|
406
|
+
solid: ["primary", "secondary", "tertiary", "positive", "warning", "negative", "neutral"],
|
|
407
|
+
text: ["primary", "negative", "neutral"],
|
|
408
|
+
outline: ["primary"]
|
|
409
|
+
};
|
|
410
|
+
var IconButtonUtil = {
|
|
411
|
+
icon: [...ButtonColorUtil.solid, "transparent"]
|
|
412
|
+
};
|
|
299
413
|
var paddingMapping = {
|
|
300
414
|
small: "btn-sm",
|
|
301
415
|
medium: "btn-md",
|
|
302
416
|
large: "btn-lg"
|
|
303
417
|
};
|
|
304
418
|
var iconPaddingMapping = {
|
|
419
|
+
tiny: "icon-btn-xs",
|
|
305
420
|
small: "icon-btn-sm",
|
|
306
421
|
medium: "icon-btn-md",
|
|
307
422
|
large: "icon-btn-lg"
|
|
@@ -395,7 +510,8 @@ var IconButton = ({
|
|
|
395
510
|
positive: "bg-button-solid-positive-background text-button-solid-positive-text",
|
|
396
511
|
warning: "bg-button-solid-warning-background text-button-solid-warning-text",
|
|
397
512
|
negative: "bg-button-solid-negative-background text-button-solid-negative-text",
|
|
398
|
-
neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text"
|
|
513
|
+
neutral: "bg-button-solid-neutral-background text-button-solid-neutral-text",
|
|
514
|
+
transparent: "bg-transparent"
|
|
399
515
|
}[color];
|
|
400
516
|
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
401
517
|
"button",
|
|
@@ -404,7 +520,9 @@ var IconButton = ({
|
|
|
404
520
|
disabled: disabled || onClick === void 0,
|
|
405
521
|
className: (0, import_clsx3.default)(
|
|
406
522
|
{
|
|
407
|
-
"text-disabled-text bg-disabled-background cursor-not-allowed": disabled,
|
|
523
|
+
"text-disabled-text bg-disabled-background cursor-not-allowed": disabled && color !== "transparent",
|
|
524
|
+
"text-disabled-text cursor-not-allowed opacity-70": disabled && color === "transparent",
|
|
525
|
+
"hover:bg-button-text-hover-background": !disabled && color === "transparent",
|
|
408
526
|
[(0, import_clsx3.default)(colorClasses, "hover:brightness-90")]: !disabled
|
|
409
527
|
},
|
|
410
528
|
ButtonUtil.iconPaddingMapping[size],
|
|
@@ -417,7 +535,7 @@ var IconButton = ({
|
|
|
417
535
|
};
|
|
418
536
|
|
|
419
537
|
// src/hooks/useSearch.ts
|
|
420
|
-
var
|
|
538
|
+
var import_react7 = require("react");
|
|
421
539
|
|
|
422
540
|
// src/util/simpleSearch.ts
|
|
423
541
|
var MultiSearchWithMapping = (search, objects, mapping) => {
|
|
@@ -436,12 +554,12 @@ var useSearch = ({
|
|
|
436
554
|
initialSearch,
|
|
437
555
|
searchMapping
|
|
438
556
|
}) => {
|
|
439
|
-
const [items, setItems] = (0,
|
|
440
|
-
const [search, setSearch] = (0,
|
|
441
|
-
(0,
|
|
557
|
+
const [items, setItems] = (0, import_react7.useState)(list);
|
|
558
|
+
const [search, setSearch] = (0, import_react7.useState)(initialSearch);
|
|
559
|
+
(0, import_react7.useEffect)(() => {
|
|
442
560
|
setItems(list);
|
|
443
561
|
}, [list]);
|
|
444
|
-
const result = (0,
|
|
562
|
+
const result = (0, import_react7.useMemo)(
|
|
445
563
|
() => MultiSearchWithMapping(search, items, searchMapping),
|
|
446
564
|
[search, items, searchMapping]
|
|
447
565
|
);
|
|
@@ -459,6 +577,7 @@ var useSearch = ({
|
|
|
459
577
|
var formTranslation = {
|
|
460
578
|
en: {
|
|
461
579
|
all: "All",
|
|
580
|
+
apply: "Apply",
|
|
462
581
|
back: "Back",
|
|
463
582
|
cancel: "Cancel",
|
|
464
583
|
change: "Change",
|
|
@@ -507,6 +626,7 @@ var formTranslation = {
|
|
|
507
626
|
},
|
|
508
627
|
de: {
|
|
509
628
|
all: "Alle",
|
|
629
|
+
apply: "Anwenden",
|
|
510
630
|
back: "Zur\xFCck",
|
|
511
631
|
cancel: "Abbrechen",
|
|
512
632
|
change: "\xC4ndern",
|
|
@@ -704,9 +824,9 @@ var ChipList = ({
|
|
|
704
824
|
};
|
|
705
825
|
|
|
706
826
|
// src/hooks/useOutsideClick.ts
|
|
707
|
-
var
|
|
827
|
+
var import_react8 = require("react");
|
|
708
828
|
var useOutsideClick = (refs, handler) => {
|
|
709
|
-
(0,
|
|
829
|
+
(0, import_react8.useEffect)(() => {
|
|
710
830
|
const listener = (event) => {
|
|
711
831
|
if (event.target === null) return;
|
|
712
832
|
if (refs.some((ref) => !ref.current || ref.current.contains(event.target))) {
|
|
@@ -746,9 +866,9 @@ var MultiSelect = ({
|
|
|
746
866
|
className = ""
|
|
747
867
|
}) => {
|
|
748
868
|
const translation = useTranslation([formTranslation, defaultMultiSelectTranslation], overwriteTranslation);
|
|
749
|
-
const triggerRef = (0,
|
|
750
|
-
const menuRef = (0,
|
|
751
|
-
const [isOpen, setIsOpen] = (0,
|
|
869
|
+
const triggerRef = (0, import_react9.useRef)(null);
|
|
870
|
+
const menuRef = (0, import_react9.useRef)(null);
|
|
871
|
+
const [isOpen, setIsOpen] = (0, import_react9.useState)(false);
|
|
752
872
|
useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
|
|
753
873
|
const selectedItems = options.filter((value) => value.selected);
|
|
754
874
|
const isShowingHint = !selectedDisplayOverwrite && selectedItems.length === 0;
|
|
@@ -860,8 +980,8 @@ var MultiSelectUncontrolled = ({
|
|
|
860
980
|
onChange,
|
|
861
981
|
...props
|
|
862
982
|
}) => {
|
|
863
|
-
const [usedOptions, setUsedOptions] = (0,
|
|
864
|
-
(0,
|
|
983
|
+
const [usedOptions, setUsedOptions] = (0, import_react9.useState)(options);
|
|
984
|
+
(0, import_react9.useEffect)(() => {
|
|
865
985
|
setUsedOptions(options);
|
|
866
986
|
}, [options]);
|
|
867
987
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|