@helpwave/hightide 0.6.3 → 0.6.4
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/index.d.mts +1 -5
- package/dist/index.d.ts +1 -5
- package/dist/index.js +570 -575
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +553 -558
- package/dist/index.mjs.map +1 -1
- package/dist/style/globals.css +20 -60
- package/dist/style/uncompiled/theme/components/tooltip.css +13 -4
- package/dist/style/uncompiled/utitlity/animation.css +0 -61
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -8200,8 +8200,7 @@ import { createContext as createContext2, useContext as useContext2, useState as
|
|
|
8200
8200
|
import { jsx as jsx15 } from "react/jsx-runtime";
|
|
8201
8201
|
var defaultConfig = {
|
|
8202
8202
|
tooltip: {
|
|
8203
|
-
appearDelay:
|
|
8204
|
-
disappearDelay: 400
|
|
8203
|
+
appearDelay: 400
|
|
8205
8204
|
},
|
|
8206
8205
|
theme: {
|
|
8207
8206
|
initialTheme: "light"
|
|
@@ -10898,6 +10897,11 @@ var InputDialog = ({
|
|
|
10898
10897
|
);
|
|
10899
10898
|
};
|
|
10900
10899
|
|
|
10900
|
+
// src/components/user-interaction/select/Select.tsx
|
|
10901
|
+
import {
|
|
10902
|
+
forwardRef as forwardRef9
|
|
10903
|
+
} from "react";
|
|
10904
|
+
|
|
10901
10905
|
// src/components/user-interaction/select/SelectContext.tsx
|
|
10902
10906
|
import { createContext as createContext8, useCallback as useCallback14, useContext as useContext8, useEffect as useEffect17, useId as useId9, useMemo as useMemo12, useRef as useRef12, useState as useState19 } from "react";
|
|
10903
10907
|
import { jsx as jsx34 } from "react/jsx-runtime";
|
|
@@ -11406,170 +11410,16 @@ var MultiSelectOption = SelectOption;
|
|
|
11406
11410
|
var MultiSelectContent = SelectContent;
|
|
11407
11411
|
var MultiSelectButton = SelectButton;
|
|
11408
11412
|
|
|
11409
|
-
// src/components/user-interaction/select/MultiSelect.tsx
|
|
11410
|
-
import { forwardRef as forwardRef9 } from "react";
|
|
11411
|
-
import { jsx as jsx36, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
11412
|
-
var MultiSelect = forwardRef9(function MultiSelect2({
|
|
11413
|
-
children,
|
|
11414
|
-
contentPanelProps,
|
|
11415
|
-
buttonProps,
|
|
11416
|
-
...props
|
|
11417
|
-
}, ref) {
|
|
11418
|
-
return /* @__PURE__ */ jsxs18(MultiSelectRoot, { ...props, children: [
|
|
11419
|
-
/* @__PURE__ */ jsx36(MultiSelectButton, { ref, ...buttonProps }),
|
|
11420
|
-
/* @__PURE__ */ jsx36(MultiSelectContent, { ...contentPanelProps, children })
|
|
11421
|
-
] });
|
|
11422
|
-
});
|
|
11423
|
-
var MultiSelectUncontrolled = forwardRef9(function MultiSelectUncontrolled2({
|
|
11424
|
-
value: initialValue,
|
|
11425
|
-
onValueChange,
|
|
11426
|
-
...props
|
|
11427
|
-
}, ref) {
|
|
11428
|
-
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
11429
|
-
return /* @__PURE__ */ jsx36(
|
|
11430
|
-
MultiSelect,
|
|
11431
|
-
{
|
|
11432
|
-
...props,
|
|
11433
|
-
ref,
|
|
11434
|
-
value,
|
|
11435
|
-
onValueChange: setValue
|
|
11436
|
-
}
|
|
11437
|
-
);
|
|
11438
|
-
});
|
|
11439
|
-
|
|
11440
|
-
// src/components/user-interaction/select/MultiSelectChipDisplay.tsx
|
|
11441
|
-
import { forwardRef as forwardRef10, useEffect as useEffect19, useImperativeHandle as useImperativeHandle4, useRef as useRef14 } from "react";
|
|
11442
|
-
import { XIcon, Plus } from "lucide-react";
|
|
11443
|
-
import { jsx as jsx37, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
11444
|
-
var MultiSelectChipDisplayButton = forwardRef10(function MultiSelectChipDisplayButton2({
|
|
11445
|
-
id,
|
|
11446
|
-
...props
|
|
11447
|
-
}, ref) {
|
|
11448
|
-
const { state, trigger, item, ids, setIds } = useSelectContext();
|
|
11449
|
-
const { register, unregister, toggleOpen } = trigger;
|
|
11450
|
-
useEffect19(() => {
|
|
11451
|
-
if (id) {
|
|
11452
|
-
setIds((prev) => ({
|
|
11453
|
-
...prev,
|
|
11454
|
-
trigger: id
|
|
11455
|
-
}));
|
|
11456
|
-
}
|
|
11457
|
-
}, [id, setIds]);
|
|
11458
|
-
const innerRef = useRef14(null);
|
|
11459
|
-
useImperativeHandle4(ref, () => innerRef.current);
|
|
11460
|
-
useEffect19(() => {
|
|
11461
|
-
register(innerRef);
|
|
11462
|
-
return () => unregister();
|
|
11463
|
-
}, [register, unregister]);
|
|
11464
|
-
const disabled = !!props?.disabled || !!state.disabled;
|
|
11465
|
-
const invalid = state.invalid;
|
|
11466
|
-
return /* @__PURE__ */ jsxs19(
|
|
11467
|
-
"div",
|
|
11468
|
-
{
|
|
11469
|
-
...props,
|
|
11470
|
-
ref: innerRef,
|
|
11471
|
-
onClick: (event) => {
|
|
11472
|
-
toggleOpen();
|
|
11473
|
-
props.onClick?.(event);
|
|
11474
|
-
},
|
|
11475
|
-
"data-name": props["data-name"] ?? "select-button-chips",
|
|
11476
|
-
"data-value": state.value.length > 0 ? "" : void 0,
|
|
11477
|
-
"data-disabled": disabled ? "" : void 0,
|
|
11478
|
-
"data-invalid": invalid ? "" : void 0,
|
|
11479
|
-
"aria-invalid": invalid,
|
|
11480
|
-
"aria-disabled": disabled,
|
|
11481
|
-
children: [
|
|
11482
|
-
state.selectedOptions.map(({ value, label }) => /* @__PURE__ */ jsxs19(Chip, { className: "gap-x-2", children: [
|
|
11483
|
-
label,
|
|
11484
|
-
/* @__PURE__ */ jsx37(
|
|
11485
|
-
Button,
|
|
11486
|
-
{
|
|
11487
|
-
onClick: () => {
|
|
11488
|
-
item.toggleSelection(value, false);
|
|
11489
|
-
},
|
|
11490
|
-
size: "xs",
|
|
11491
|
-
color: "negative",
|
|
11492
|
-
coloringStyle: "text",
|
|
11493
|
-
layout: "icon",
|
|
11494
|
-
className: "flex-row-0 items-center",
|
|
11495
|
-
children: /* @__PURE__ */ jsx37(XIcon, { className: "size-5" })
|
|
11496
|
-
}
|
|
11497
|
-
)
|
|
11498
|
-
] }, value)),
|
|
11499
|
-
/* @__PURE__ */ jsx37(
|
|
11500
|
-
Button,
|
|
11501
|
-
{
|
|
11502
|
-
id: ids.trigger,
|
|
11503
|
-
onClick: (event) => {
|
|
11504
|
-
event.stopPropagation();
|
|
11505
|
-
toggleOpen();
|
|
11506
|
-
},
|
|
11507
|
-
onKeyDown: (event) => {
|
|
11508
|
-
switch (event.key) {
|
|
11509
|
-
case "ArrowDown":
|
|
11510
|
-
toggleOpen(true, { highlightStartPositionBehavior: "first" });
|
|
11511
|
-
break;
|
|
11512
|
-
case "ArrowUp":
|
|
11513
|
-
toggleOpen(true, { highlightStartPositionBehavior: "last" });
|
|
11514
|
-
}
|
|
11515
|
-
},
|
|
11516
|
-
layout: "icon",
|
|
11517
|
-
size: "sm",
|
|
11518
|
-
color: "neutral",
|
|
11519
|
-
"aria-invalid": invalid,
|
|
11520
|
-
"aria-disabled": disabled,
|
|
11521
|
-
"aria-haspopup": "listbox",
|
|
11522
|
-
"aria-expanded": state.isOpen,
|
|
11523
|
-
"aria-controls": state.isOpen ? ids.content : void 0,
|
|
11524
|
-
className: "size-9",
|
|
11525
|
-
children: /* @__PURE__ */ jsx37(Plus, {})
|
|
11526
|
-
}
|
|
11527
|
-
)
|
|
11528
|
-
]
|
|
11529
|
-
}
|
|
11530
|
-
);
|
|
11531
|
-
});
|
|
11532
|
-
var MultiSelectChipDisplay = forwardRef10(function MultiSelectChipDisplay2({
|
|
11533
|
-
children,
|
|
11534
|
-
contentPanelProps,
|
|
11535
|
-
chipDisplayProps,
|
|
11536
|
-
...props
|
|
11537
|
-
}, ref) {
|
|
11538
|
-
return /* @__PURE__ */ jsxs19(MultiSelectRoot, { ...props, children: [
|
|
11539
|
-
/* @__PURE__ */ jsx37(MultiSelectChipDisplayButton, { ref, ...chipDisplayProps }),
|
|
11540
|
-
/* @__PURE__ */ jsx37(MultiSelectContent, { ...contentPanelProps, children })
|
|
11541
|
-
] });
|
|
11542
|
-
});
|
|
11543
|
-
var MultiSelectChipDisplayUncontrolled = forwardRef10(function MultiSelectChipDisplayUncontrolled2({
|
|
11544
|
-
value: initialValue,
|
|
11545
|
-
onValueChange,
|
|
11546
|
-
...props
|
|
11547
|
-
}, ref) {
|
|
11548
|
-
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
11549
|
-
return /* @__PURE__ */ jsx37(
|
|
11550
|
-
MultiSelectChipDisplay,
|
|
11551
|
-
{
|
|
11552
|
-
...props,
|
|
11553
|
-
ref,
|
|
11554
|
-
value,
|
|
11555
|
-
onValueChange: setValue
|
|
11556
|
-
}
|
|
11557
|
-
);
|
|
11558
|
-
});
|
|
11559
|
-
|
|
11560
11413
|
// src/components/user-interaction/select/Select.tsx
|
|
11561
|
-
import {
|
|
11562
|
-
|
|
11563
|
-
} from "react";
|
|
11564
|
-
import { jsx as jsx38, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
11565
|
-
var Select = forwardRef11(function Select2({
|
|
11414
|
+
import { jsx as jsx36, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
11415
|
+
var Select = forwardRef9(function Select2({
|
|
11566
11416
|
children,
|
|
11567
11417
|
contentPanelProps,
|
|
11568
11418
|
buttonProps,
|
|
11569
11419
|
...props
|
|
11570
11420
|
}, ref) {
|
|
11571
|
-
return /* @__PURE__ */
|
|
11572
|
-
/* @__PURE__ */
|
|
11421
|
+
return /* @__PURE__ */ jsxs18(SelectRoot, { ...props, children: [
|
|
11422
|
+
/* @__PURE__ */ jsx36(
|
|
11573
11423
|
SelectButton,
|
|
11574
11424
|
{
|
|
11575
11425
|
ref,
|
|
@@ -11581,16 +11431,16 @@ var Select = forwardRef11(function Select2({
|
|
|
11581
11431
|
}
|
|
11582
11432
|
}
|
|
11583
11433
|
),
|
|
11584
|
-
/* @__PURE__ */
|
|
11434
|
+
/* @__PURE__ */ jsx36(SelectContent, { ...contentPanelProps, children })
|
|
11585
11435
|
] });
|
|
11586
11436
|
});
|
|
11587
|
-
var SelectUncontrolled =
|
|
11437
|
+
var SelectUncontrolled = forwardRef9(function SelectUncontrolled2({
|
|
11588
11438
|
value: initialValue,
|
|
11589
11439
|
onValueChange,
|
|
11590
11440
|
...props
|
|
11591
11441
|
}, ref) {
|
|
11592
11442
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
11593
|
-
return /* @__PURE__ */
|
|
11443
|
+
return /* @__PURE__ */ jsx36(
|
|
11594
11444
|
Select,
|
|
11595
11445
|
{
|
|
11596
11446
|
...props,
|
|
@@ -11602,7 +11452,7 @@ var SelectUncontrolled = forwardRef11(function SelectUncontrolled2({
|
|
|
11602
11452
|
});
|
|
11603
11453
|
|
|
11604
11454
|
// src/components/layout/dialog/LanguageDialog.tsx
|
|
11605
|
-
import { jsx as
|
|
11455
|
+
import { jsx as jsx37, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
11606
11456
|
var LanguageDialog = ({
|
|
11607
11457
|
onClose,
|
|
11608
11458
|
titleOverwrite,
|
|
@@ -11611,15 +11461,15 @@ var LanguageDialog = ({
|
|
|
11611
11461
|
}) => {
|
|
11612
11462
|
const { locale, setLocale } = useLocale();
|
|
11613
11463
|
const translation = useHightideTranslation();
|
|
11614
|
-
return /* @__PURE__ */
|
|
11464
|
+
return /* @__PURE__ */ jsx37(
|
|
11615
11465
|
Dialog,
|
|
11616
11466
|
{
|
|
11617
11467
|
titleElement: titleOverwrite ?? translation("language"),
|
|
11618
11468
|
description: descriptionOverwrite ?? translation("chooseLanguage"),
|
|
11619
11469
|
onClose,
|
|
11620
11470
|
...props,
|
|
11621
|
-
children: /* @__PURE__ */
|
|
11622
|
-
/* @__PURE__ */
|
|
11471
|
+
children: /* @__PURE__ */ jsxs19("div", { className: "w-64", children: [
|
|
11472
|
+
/* @__PURE__ */ jsx37(
|
|
11623
11473
|
Select,
|
|
11624
11474
|
{
|
|
11625
11475
|
value: locale,
|
|
@@ -11627,10 +11477,10 @@ var LanguageDialog = ({
|
|
|
11627
11477
|
buttonProps: {
|
|
11628
11478
|
selectedDisplay: (locale2) => LocalizationUtil.languagesLocalNames[locale2]
|
|
11629
11479
|
},
|
|
11630
|
-
children: LocalizationUtil.locals.map((local) => /* @__PURE__ */
|
|
11480
|
+
children: LocalizationUtil.locals.map((local) => /* @__PURE__ */ jsx37(SelectOption, { value: local, children: LocalizationUtil.languagesLocalNames[local] }, local))
|
|
11631
11481
|
}
|
|
11632
11482
|
),
|
|
11633
|
-
/* @__PURE__ */
|
|
11483
|
+
/* @__PURE__ */ jsx37("div", { className: "flex-row-4 mt-3 justify-end", children: /* @__PURE__ */ jsx37(Button, { color: "positive", onClick: onClose, children: translation("done") }) })
|
|
11634
11484
|
] })
|
|
11635
11485
|
}
|
|
11636
11486
|
);
|
|
@@ -11641,8 +11491,8 @@ import { MonitorCog, MoonIcon, SunIcon } from "lucide-react";
|
|
|
11641
11491
|
import clsx14 from "clsx";
|
|
11642
11492
|
|
|
11643
11493
|
// src/contexts/ThemeContext.tsx
|
|
11644
|
-
import { createContext as createContext9, useCallback as useCallback15, useContext as useContext9, useEffect as
|
|
11645
|
-
import { jsx as
|
|
11494
|
+
import { createContext as createContext9, useCallback as useCallback15, useContext as useContext9, useEffect as useEffect19, useMemo as useMemo13, useState as useState20 } from "react";
|
|
11495
|
+
import { jsx as jsx38 } from "react/jsx-runtime";
|
|
11646
11496
|
var themes = ["light", "dark", "system"];
|
|
11647
11497
|
var ThemeUtil = {
|
|
11648
11498
|
themes
|
|
@@ -11668,7 +11518,7 @@ var ThemeProvider = ({ children, theme, initialTheme }) => {
|
|
|
11668
11518
|
}
|
|
11669
11519
|
return initialTheme ?? config.theme.initialTheme;
|
|
11670
11520
|
}, [config.theme.initialTheme, initialTheme, storedTheme, theme, themePreference]);
|
|
11671
|
-
|
|
11521
|
+
useEffect19(() => {
|
|
11672
11522
|
if (!theme) return;
|
|
11673
11523
|
if (theme === "system") {
|
|
11674
11524
|
deleteStoredTheme();
|
|
@@ -11676,7 +11526,7 @@ var ThemeProvider = ({ children, theme, initialTheme }) => {
|
|
|
11676
11526
|
setStoredTheme(theme);
|
|
11677
11527
|
}
|
|
11678
11528
|
}, [theme]);
|
|
11679
|
-
|
|
11529
|
+
useEffect19(() => {
|
|
11680
11530
|
document.documentElement.setAttribute("data-theme", resolvedTheme);
|
|
11681
11531
|
}, [resolvedTheme]);
|
|
11682
11532
|
const getPreference = useCallback15(() => {
|
|
@@ -11684,10 +11534,10 @@ var ThemeProvider = ({ children, theme, initialTheme }) => {
|
|
|
11684
11534
|
const prefersLight = window.matchMedia("(prefers-color-scheme: light)").matches;
|
|
11685
11535
|
setThemePreference(prefersDark ? "dark" : prefersLight ? "light" : "system");
|
|
11686
11536
|
}, []);
|
|
11687
|
-
|
|
11537
|
+
useEffect19(() => {
|
|
11688
11538
|
getPreference();
|
|
11689
11539
|
}, [getPreference]);
|
|
11690
|
-
|
|
11540
|
+
useEffect19(() => {
|
|
11691
11541
|
const darkQuery = window.matchMedia("(prefers-color-scheme: dark)");
|
|
11692
11542
|
const lightQuery = window.matchMedia("(prefers-color-scheme: light)");
|
|
11693
11543
|
const noPrefQuery = window.matchMedia("(prefers-color-scheme: no-preference)");
|
|
@@ -11700,7 +11550,7 @@ var ThemeProvider = ({ children, theme, initialTheme }) => {
|
|
|
11700
11550
|
noPrefQuery.removeEventListener("change", getPreference);
|
|
11701
11551
|
};
|
|
11702
11552
|
}, [getPreference]);
|
|
11703
|
-
return /* @__PURE__ */
|
|
11553
|
+
return /* @__PURE__ */ jsx38(
|
|
11704
11554
|
ThemeContext.Provider,
|
|
11705
11555
|
{
|
|
11706
11556
|
value: {
|
|
@@ -11726,14 +11576,14 @@ var useTheme = () => {
|
|
|
11726
11576
|
};
|
|
11727
11577
|
|
|
11728
11578
|
// src/components/layout/dialog/ThemeDialog.tsx
|
|
11729
|
-
import { jsx as
|
|
11579
|
+
import { jsx as jsx39, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
11730
11580
|
var ThemeIcon = ({ theme, className }) => {
|
|
11731
11581
|
if (theme === "dark") {
|
|
11732
|
-
return /* @__PURE__ */
|
|
11582
|
+
return /* @__PURE__ */ jsx39(MoonIcon, { className: clsx14("w-4 h-4", className) });
|
|
11733
11583
|
} else if (theme === "light") {
|
|
11734
|
-
return /* @__PURE__ */
|
|
11584
|
+
return /* @__PURE__ */ jsx39(SunIcon, { className: clsx14("w-4 h-4", className) });
|
|
11735
11585
|
} else {
|
|
11736
|
-
return /* @__PURE__ */
|
|
11586
|
+
return /* @__PURE__ */ jsx39(MonitorCog, { className: clsx14("w-4 h-4", className) });
|
|
11737
11587
|
}
|
|
11738
11588
|
};
|
|
11739
11589
|
var ThemeDialog = ({
|
|
@@ -11744,34 +11594,34 @@ var ThemeDialog = ({
|
|
|
11744
11594
|
}) => {
|
|
11745
11595
|
const { theme, setTheme } = useTheme();
|
|
11746
11596
|
const translation = useHightideTranslation();
|
|
11747
|
-
return /* @__PURE__ */
|
|
11597
|
+
return /* @__PURE__ */ jsx39(
|
|
11748
11598
|
Dialog,
|
|
11749
11599
|
{
|
|
11750
11600
|
titleElement: titleOverwrite ?? translation("pThemes", { count: 1 }),
|
|
11751
11601
|
description: descriptionOverwrite ?? translation("chooseTheme"),
|
|
11752
11602
|
onClose,
|
|
11753
11603
|
...props,
|
|
11754
|
-
children: /* @__PURE__ */
|
|
11755
|
-
/* @__PURE__ */
|
|
11604
|
+
children: /* @__PURE__ */ jsxs20("div", { className: "w-64", children: [
|
|
11605
|
+
/* @__PURE__ */ jsx39(
|
|
11756
11606
|
Select,
|
|
11757
11607
|
{
|
|
11758
11608
|
value: theme,
|
|
11759
11609
|
onValueChange: (theme2) => setTheme(theme2),
|
|
11760
11610
|
iconAppearance: "right",
|
|
11761
11611
|
buttonProps: {
|
|
11762
|
-
selectedDisplay: (value) => /* @__PURE__ */
|
|
11763
|
-
/* @__PURE__ */
|
|
11612
|
+
selectedDisplay: (value) => /* @__PURE__ */ jsxs20("div", { className: "flex-row-2 items-center", children: [
|
|
11613
|
+
/* @__PURE__ */ jsx39(ThemeIcon, { theme }),
|
|
11764
11614
|
translation("sThemeMode", { theme: value })
|
|
11765
11615
|
] }),
|
|
11766
11616
|
className: "min-w-32"
|
|
11767
11617
|
},
|
|
11768
|
-
children: ThemeUtil.themes.map((theme2) => /* @__PURE__ */
|
|
11769
|
-
/* @__PURE__ */
|
|
11618
|
+
children: ThemeUtil.themes.map((theme2) => /* @__PURE__ */ jsx39(SelectOption, { value: theme2, className: "gap-x-6 justify-between", children: /* @__PURE__ */ jsxs20("div", { className: "flex-row-2 items-center", children: [
|
|
11619
|
+
/* @__PURE__ */ jsx39(ThemeIcon, { theme: theme2 }),
|
|
11770
11620
|
translation("sThemeMode", { theme: theme2 })
|
|
11771
11621
|
] }) }, theme2))
|
|
11772
11622
|
}
|
|
11773
11623
|
),
|
|
11774
|
-
/* @__PURE__ */
|
|
11624
|
+
/* @__PURE__ */ jsx39("div", { className: "flex-row-4 mt-3 justify-end", children: /* @__PURE__ */ jsx39(Button, { autoFocus: true, color: "positive", onClick: onClose, children: translation("done") }) })
|
|
11775
11625
|
] })
|
|
11776
11626
|
}
|
|
11777
11627
|
);
|
|
@@ -11780,14 +11630,14 @@ var ThemeDialog = ({
|
|
|
11780
11630
|
// src/components/layout/loading/ErrorComponent.tsx
|
|
11781
11631
|
import { AlertOctagon } from "lucide-react";
|
|
11782
11632
|
import clsx15 from "clsx";
|
|
11783
|
-
import { jsx as
|
|
11633
|
+
import { jsx as jsx40, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
11784
11634
|
var ErrorComponent = ({
|
|
11785
11635
|
errorText,
|
|
11786
11636
|
classname
|
|
11787
11637
|
}) => {
|
|
11788
11638
|
const translation = useHightideTranslation();
|
|
11789
|
-
return /* @__PURE__ */
|
|
11790
|
-
/* @__PURE__ */
|
|
11639
|
+
return /* @__PURE__ */ jsxs21("div", { className: clsx15("flex-col-4 items-center justify-center w-full h-24", classname), children: [
|
|
11640
|
+
/* @__PURE__ */ jsx40(AlertOctagon, { size: 64, className: "text-warning" }),
|
|
11791
11641
|
errorText ?? `${translation("errorOccurred")} :(`
|
|
11792
11642
|
] });
|
|
11793
11643
|
};
|
|
@@ -11797,14 +11647,14 @@ import { useState as useState21 } from "react";
|
|
|
11797
11647
|
|
|
11798
11648
|
// src/components/layout/loading/LoadingContainer.tsx
|
|
11799
11649
|
import { clsx as clsx16 } from "clsx";
|
|
11800
|
-
import { jsx as
|
|
11650
|
+
import { jsx as jsx41 } from "react/jsx-runtime";
|
|
11801
11651
|
var LoadingContainer = ({ className }) => {
|
|
11802
|
-
return /* @__PURE__ */
|
|
11652
|
+
return /* @__PURE__ */ jsx41("div", { className: clsx16("relative overflow-hidden shimmer bg-disabled/30 rounded-md", className) });
|
|
11803
11653
|
};
|
|
11804
11654
|
|
|
11805
11655
|
// src/components/layout/loading/LoadingAndErrorComponent.tsx
|
|
11806
11656
|
import { clsx as clsx17 } from "clsx";
|
|
11807
|
-
import { Fragment as Fragment5, jsx as
|
|
11657
|
+
import { Fragment as Fragment5, jsx as jsx42 } from "react/jsx-runtime";
|
|
11808
11658
|
var LoadingAndErrorComponent = ({
|
|
11809
11659
|
children,
|
|
11810
11660
|
isLoading = false,
|
|
@@ -11824,33 +11674,33 @@ var LoadingAndErrorComponent = ({
|
|
|
11824
11674
|
}, minimumLoadingDuration);
|
|
11825
11675
|
}
|
|
11826
11676
|
if (isLoading || minimumLoadingDuration && isInMinimumLoading) {
|
|
11827
|
-
return /* @__PURE__ */
|
|
11677
|
+
return /* @__PURE__ */ jsx42(Fragment5, { children: loadingComponent ?? /* @__PURE__ */ jsx42(LoadingContainer, { className: clsx17(className) }) });
|
|
11828
11678
|
}
|
|
11829
11679
|
if (hasError) {
|
|
11830
|
-
return /* @__PURE__ */
|
|
11680
|
+
return /* @__PURE__ */ jsx42(Fragment5, { children: errorComponent ?? /* @__PURE__ */ jsx42(LoadingContainer, { className: clsx17("bg-negative", className) }) });
|
|
11831
11681
|
}
|
|
11832
|
-
return /* @__PURE__ */
|
|
11682
|
+
return /* @__PURE__ */ jsx42(Fragment5, { children });
|
|
11833
11683
|
};
|
|
11834
11684
|
|
|
11835
11685
|
// src/components/layout/loading/LoadingAnimation.tsx
|
|
11836
11686
|
import clsx18 from "clsx";
|
|
11837
|
-
import { jsx as
|
|
11687
|
+
import { jsx as jsx43, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
11838
11688
|
var LoadingAnimation = ({
|
|
11839
11689
|
loadingText,
|
|
11840
11690
|
classname
|
|
11841
11691
|
}) => {
|
|
11842
11692
|
const translation = useHightideTranslation();
|
|
11843
|
-
return /* @__PURE__ */
|
|
11844
|
-
/* @__PURE__ */
|
|
11693
|
+
return /* @__PURE__ */ jsxs22("div", { className: clsx18("flex-col-2 items-center justify-center w-full h-24", classname), children: [
|
|
11694
|
+
/* @__PURE__ */ jsx43(HelpwaveLogo, { animate: "loading" }),
|
|
11845
11695
|
loadingText ?? `${translation("loading")}...`
|
|
11846
11696
|
] });
|
|
11847
11697
|
};
|
|
11848
11698
|
|
|
11849
11699
|
// src/components/layout/navigation/BreadCrumbs.tsx
|
|
11850
11700
|
var import_link = __toESM(require_link2());
|
|
11851
|
-
import { jsx as
|
|
11701
|
+
import { jsx as jsx44, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
11852
11702
|
var BreadCrumbLink = ({ ...props }) => {
|
|
11853
|
-
return /* @__PURE__ */
|
|
11703
|
+
return /* @__PURE__ */ jsx44(
|
|
11854
11704
|
import_link.default,
|
|
11855
11705
|
{
|
|
11856
11706
|
...props,
|
|
@@ -11859,29 +11709,29 @@ var BreadCrumbLink = ({ ...props }) => {
|
|
|
11859
11709
|
);
|
|
11860
11710
|
};
|
|
11861
11711
|
var BreadCrumbDivider = () => {
|
|
11862
|
-
return /* @__PURE__ */
|
|
11712
|
+
return /* @__PURE__ */ jsx44("span", { "data-name": "breadcrumb-divider", children: "/" });
|
|
11863
11713
|
};
|
|
11864
11714
|
var BreadCrumbGroup = ({ children, divider, ...props }) => {
|
|
11865
11715
|
const items = ArrayUtil.resolveSingleOrArray(children);
|
|
11866
|
-
return /* @__PURE__ */
|
|
11716
|
+
return /* @__PURE__ */ jsx44("ul", { ...props, "data-name": props["data-name"] ?? "breadcrumb", children: items.map((item, index) => {
|
|
11867
11717
|
const isLast = index === items.length - 1;
|
|
11868
|
-
return /* @__PURE__ */
|
|
11718
|
+
return /* @__PURE__ */ jsxs23("li", { "data-name": "breadcrumb-item", children: [
|
|
11869
11719
|
item,
|
|
11870
|
-
!isLast && divider !== null && (divider ?? /* @__PURE__ */
|
|
11720
|
+
!isLast && divider !== null && (divider ?? /* @__PURE__ */ jsx44(BreadCrumbDivider, {}))
|
|
11871
11721
|
] }, index);
|
|
11872
11722
|
}) });
|
|
11873
11723
|
};
|
|
11874
11724
|
var BreadCrumbs = ({ crumbs }) => {
|
|
11875
|
-
return /* @__PURE__ */
|
|
11725
|
+
return /* @__PURE__ */ jsx44(BreadCrumbGroup, { children: crumbs.map(({ href, label }, index) => /* @__PURE__ */ jsx44(BreadCrumbLink, { href, children: label }, index)) });
|
|
11876
11726
|
};
|
|
11877
11727
|
|
|
11878
11728
|
// src/components/layout/navigation/Navigation.tsx
|
|
11879
11729
|
var import_link2 = __toESM(require_link2());
|
|
11880
|
-
import { Menu as MenuIcon, XIcon
|
|
11881
|
-
import { useEffect as
|
|
11882
|
-
import { useCallback as useCallback16, useId as useId10, useRef as
|
|
11730
|
+
import { Menu as MenuIcon, XIcon } from "lucide-react";
|
|
11731
|
+
import { useEffect as useEffect20 } from "react";
|
|
11732
|
+
import { useCallback as useCallback16, useId as useId10, useRef as useRef14, useState as useState22 } from "react";
|
|
11883
11733
|
import clsx19 from "clsx";
|
|
11884
|
-
import { Fragment as Fragment6, jsx as
|
|
11734
|
+
import { Fragment as Fragment6, jsx as jsx45, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
11885
11735
|
function isSubItem(item) {
|
|
11886
11736
|
return "items" in item && Array.isArray(item.items);
|
|
11887
11737
|
}
|
|
@@ -11892,8 +11742,8 @@ var NavigationItemWithSubItem = ({
|
|
|
11892
11742
|
...options
|
|
11893
11743
|
}) => {
|
|
11894
11744
|
const [isOpen, setOpen] = useState22(false);
|
|
11895
|
-
const containerRef =
|
|
11896
|
-
const triggerRef =
|
|
11745
|
+
const containerRef = useRef14(null);
|
|
11746
|
+
const triggerRef = useRef14(null);
|
|
11897
11747
|
const id = useId10();
|
|
11898
11748
|
const style = useFloatingElement({
|
|
11899
11749
|
active: isOpen,
|
|
@@ -11909,8 +11759,8 @@ var NavigationItemWithSubItem = ({
|
|
|
11909
11759
|
}
|
|
11910
11760
|
}, []);
|
|
11911
11761
|
const { zIndex } = useOverlayRegistry();
|
|
11912
|
-
return /* @__PURE__ */
|
|
11913
|
-
/* @__PURE__ */
|
|
11762
|
+
return /* @__PURE__ */ jsxs24(Fragment6, { children: [
|
|
11763
|
+
/* @__PURE__ */ jsxs24(
|
|
11914
11764
|
"button",
|
|
11915
11765
|
{
|
|
11916
11766
|
id: "navigation-" + id,
|
|
@@ -11926,11 +11776,11 @@ var NavigationItemWithSubItem = ({
|
|
|
11926
11776
|
"aria-controls": "navigation-items-" + id,
|
|
11927
11777
|
children: [
|
|
11928
11778
|
label,
|
|
11929
|
-
/* @__PURE__ */
|
|
11779
|
+
/* @__PURE__ */ jsx45(ExpansionIcon, { isExpanded: isOpen })
|
|
11930
11780
|
]
|
|
11931
11781
|
}
|
|
11932
11782
|
),
|
|
11933
|
-
/* @__PURE__ */
|
|
11783
|
+
/* @__PURE__ */ jsx45(
|
|
11934
11784
|
"ul",
|
|
11935
11785
|
{
|
|
11936
11786
|
id: "navigation-items-" + id,
|
|
@@ -11949,7 +11799,7 @@ var NavigationItemWithSubItem = ({
|
|
|
11949
11799
|
{ "opacity-0": !style }
|
|
11950
11800
|
),
|
|
11951
11801
|
style: { ...style, zIndex },
|
|
11952
|
-
children: items.map(({ link, label: label2, external }, index) => /* @__PURE__ */
|
|
11802
|
+
children: items.map(({ link, label: label2, external }, index) => /* @__PURE__ */ jsx45("li", { children: /* @__PURE__ */ jsx45(
|
|
11953
11803
|
import_link2.default,
|
|
11954
11804
|
{
|
|
11955
11805
|
href: link,
|
|
@@ -11963,25 +11813,25 @@ var NavigationItemWithSubItem = ({
|
|
|
11963
11813
|
] });
|
|
11964
11814
|
};
|
|
11965
11815
|
var NavigationItemList = ({ items, ...restProps }) => {
|
|
11966
|
-
return /* @__PURE__ */
|
|
11816
|
+
return /* @__PURE__ */ jsx45("ul", { ...restProps, className: clsx19("flex-row-6 items-center", restProps.className), children: items.map((item, index) => /* @__PURE__ */ jsx45("li", { children: isSubItem(item) ? /* @__PURE__ */ jsx45(NavigationItemWithSubItem, { ...item }) : /* @__PURE__ */ jsx45(import_link2.default, { href: item.link, target: item.external ? "_blank" : void 0, className: "link", children: item.label }) }, index)) });
|
|
11967
11817
|
};
|
|
11968
11818
|
var Navigation = ({ ...props }) => {
|
|
11969
11819
|
const [isMobileOpen, setIsMobileOpen] = useState22(false);
|
|
11970
11820
|
const id = useId10();
|
|
11971
|
-
const menuRef =
|
|
11972
|
-
|
|
11821
|
+
const menuRef = useRef14(null);
|
|
11822
|
+
useEffect20(() => {
|
|
11973
11823
|
menuRef.current?.focus();
|
|
11974
11824
|
}, [isMobileOpen]);
|
|
11975
11825
|
const { zIndex } = useOverlayRegistry({ isActive: isMobileOpen });
|
|
11976
|
-
return /* @__PURE__ */
|
|
11977
|
-
/* @__PURE__ */
|
|
11826
|
+
return /* @__PURE__ */ jsxs24("nav", { children: [
|
|
11827
|
+
/* @__PURE__ */ jsx45(
|
|
11978
11828
|
NavigationItemList,
|
|
11979
11829
|
{
|
|
11980
11830
|
...props,
|
|
11981
11831
|
className: clsx19("hidden", { "desktop:flex": !isMobileOpen }, props.className)
|
|
11982
11832
|
}
|
|
11983
11833
|
),
|
|
11984
|
-
/* @__PURE__ */
|
|
11834
|
+
/* @__PURE__ */ jsx45(
|
|
11985
11835
|
Button,
|
|
11986
11836
|
{
|
|
11987
11837
|
layout: "icon",
|
|
@@ -11992,10 +11842,10 @@ var Navigation = ({ ...props }) => {
|
|
|
11992
11842
|
"aria-haspopup": "true",
|
|
11993
11843
|
"aria-expanded": isMobileOpen,
|
|
11994
11844
|
"aria-controls": "navigation-menu-" + id,
|
|
11995
|
-
children: /* @__PURE__ */
|
|
11845
|
+
children: /* @__PURE__ */ jsx45(MenuIcon, { className: "w-6 h-6" })
|
|
11996
11846
|
}
|
|
11997
11847
|
),
|
|
11998
|
-
/* @__PURE__ */
|
|
11848
|
+
/* @__PURE__ */ jsxs24(
|
|
11999
11849
|
"div",
|
|
12000
11850
|
{
|
|
12001
11851
|
id: "navigation-menu-" + id,
|
|
@@ -12017,17 +11867,17 @@ var Navigation = ({ ...props }) => {
|
|
|
12017
11867
|
),
|
|
12018
11868
|
style: { zIndex },
|
|
12019
11869
|
children: [
|
|
12020
|
-
/* @__PURE__ */
|
|
11870
|
+
/* @__PURE__ */ jsx45(
|
|
12021
11871
|
Button,
|
|
12022
11872
|
{
|
|
12023
11873
|
layout: "icon",
|
|
12024
11874
|
coloringStyle: "text",
|
|
12025
11875
|
color: "neutral",
|
|
12026
11876
|
onClick: () => setIsMobileOpen(false),
|
|
12027
|
-
children: /* @__PURE__ */
|
|
11877
|
+
children: /* @__PURE__ */ jsx45(XIcon, {})
|
|
12028
11878
|
}
|
|
12029
11879
|
),
|
|
12030
|
-
/* @__PURE__ */
|
|
11880
|
+
/* @__PURE__ */ jsx45(NavigationItemList, { ...props, className: clsx19("flex-col-8", props.className) })
|
|
12031
11881
|
]
|
|
12032
11882
|
}
|
|
12033
11883
|
)
|
|
@@ -12037,8 +11887,8 @@ var Navigation = ({ ...props }) => {
|
|
|
12037
11887
|
// src/components/layout/navigation/Pagination.tsx
|
|
12038
11888
|
import { ChevronFirst, ChevronLast, ChevronLeft as ChevronLeft2, ChevronRight as ChevronRight2 } from "lucide-react";
|
|
12039
11889
|
import clsx20 from "clsx";
|
|
12040
|
-
import { useEffect as
|
|
12041
|
-
import { jsx as
|
|
11890
|
+
import { useEffect as useEffect21, useState as useState23 } from "react";
|
|
11891
|
+
import { jsx as jsx46, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
12042
11892
|
var Pagination = ({
|
|
12043
11893
|
pageIndex,
|
|
12044
11894
|
pageCount,
|
|
@@ -12051,7 +11901,7 @@ var Pagination = ({
|
|
|
12051
11901
|
const noPages = pageCount === 0;
|
|
12052
11902
|
const onFirstPage = pageIndex === 0 && !noPages;
|
|
12053
11903
|
const onLastPage = pageIndex === pageCount - 1;
|
|
12054
|
-
|
|
11904
|
+
useEffect21(() => {
|
|
12055
11905
|
if (noPages) {
|
|
12056
11906
|
setValue("0");
|
|
12057
11907
|
} else {
|
|
@@ -12061,8 +11911,8 @@ var Pagination = ({
|
|
|
12061
11911
|
const changePage = (page) => {
|
|
12062
11912
|
onPageChanged(page);
|
|
12063
11913
|
};
|
|
12064
|
-
return /* @__PURE__ */
|
|
12065
|
-
/* @__PURE__ */
|
|
11914
|
+
return /* @__PURE__ */ jsxs25("div", { className: clsx20("flex-row-1", className), style, children: [
|
|
11915
|
+
/* @__PURE__ */ jsx46(
|
|
12066
11916
|
Button,
|
|
12067
11917
|
{
|
|
12068
11918
|
layout: "icon",
|
|
@@ -12070,10 +11920,10 @@ var Pagination = ({
|
|
|
12070
11920
|
color: "neutral",
|
|
12071
11921
|
onClick: () => changePage(0),
|
|
12072
11922
|
disabled: onFirstPage || noPages,
|
|
12073
|
-
children: /* @__PURE__ */
|
|
11923
|
+
children: /* @__PURE__ */ jsx46(ChevronFirst, {})
|
|
12074
11924
|
}
|
|
12075
11925
|
),
|
|
12076
|
-
/* @__PURE__ */
|
|
11926
|
+
/* @__PURE__ */ jsx46(
|
|
12077
11927
|
Button,
|
|
12078
11928
|
{
|
|
12079
11929
|
layout: "icon",
|
|
@@ -12081,11 +11931,11 @@ var Pagination = ({
|
|
|
12081
11931
|
color: "neutral",
|
|
12082
11932
|
onClick: () => changePage(pageIndex - 1),
|
|
12083
11933
|
disabled: onFirstPage || noPages,
|
|
12084
|
-
children: /* @__PURE__ */
|
|
11934
|
+
children: /* @__PURE__ */ jsx46(ChevronLeft2, {})
|
|
12085
11935
|
}
|
|
12086
11936
|
),
|
|
12087
|
-
/* @__PURE__ */
|
|
12088
|
-
/* @__PURE__ */
|
|
11937
|
+
/* @__PURE__ */ jsxs25("div", { className: "flex-row-2 min-w-56 items-center justify-center mx-2 text-center", children: [
|
|
11938
|
+
/* @__PURE__ */ jsx46(
|
|
12089
11939
|
Input,
|
|
12090
11940
|
{
|
|
12091
11941
|
value,
|
|
@@ -12109,8 +11959,8 @@ var Pagination = ({
|
|
|
12109
11959
|
editCompleteOptions: { delay: 800 }
|
|
12110
11960
|
}
|
|
12111
11961
|
),
|
|
12112
|
-
/* @__PURE__ */
|
|
12113
|
-
/* @__PURE__ */
|
|
11962
|
+
/* @__PURE__ */ jsx46("span", { className: "select-none w-10", children: translation("of") }),
|
|
11963
|
+
/* @__PURE__ */ jsx46(
|
|
12114
11964
|
"span",
|
|
12115
11965
|
{
|
|
12116
11966
|
className: "flex-row-2 w-24 items-center justify-center select-none h-10 bg-input-background text-input-text rounded-md font-bold",
|
|
@@ -12118,7 +11968,7 @@ var Pagination = ({
|
|
|
12118
11968
|
}
|
|
12119
11969
|
)
|
|
12120
11970
|
] }),
|
|
12121
|
-
/* @__PURE__ */
|
|
11971
|
+
/* @__PURE__ */ jsx46(
|
|
12122
11972
|
Button,
|
|
12123
11973
|
{
|
|
12124
11974
|
layout: "icon",
|
|
@@ -12126,10 +11976,10 @@ var Pagination = ({
|
|
|
12126
11976
|
color: "neutral",
|
|
12127
11977
|
onClick: () => changePage(pageIndex + 1),
|
|
12128
11978
|
disabled: onLastPage || noPages,
|
|
12129
|
-
children: /* @__PURE__ */
|
|
11979
|
+
children: /* @__PURE__ */ jsx46(ChevronRight2, {})
|
|
12130
11980
|
}
|
|
12131
11981
|
),
|
|
12132
|
-
/* @__PURE__ */
|
|
11982
|
+
/* @__PURE__ */ jsx46(
|
|
12133
11983
|
Button,
|
|
12134
11984
|
{
|
|
12135
11985
|
layout: "icon",
|
|
@@ -12137,7 +11987,7 @@ var Pagination = ({
|
|
|
12137
11987
|
color: "neutral",
|
|
12138
11988
|
onClick: () => changePage(pageCount - 1),
|
|
12139
11989
|
disabled: onLastPage || noPages,
|
|
12140
|
-
children: /* @__PURE__ */
|
|
11990
|
+
children: /* @__PURE__ */ jsx46(ChevronLast, {})
|
|
12141
11991
|
}
|
|
12142
11992
|
)
|
|
12143
11993
|
] });
|
|
@@ -12146,7 +11996,7 @@ var Pagination = ({
|
|
|
12146
11996
|
// src/components/layout/navigation/StepperBar.tsx
|
|
12147
11997
|
import { Check, ChevronLeft as ChevronLeft3, ChevronRight as ChevronRight3 } from "lucide-react";
|
|
12148
11998
|
import clsx21 from "clsx";
|
|
12149
|
-
import { jsx as
|
|
11999
|
+
import { jsx as jsx47, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
12150
12000
|
var defaultState = {
|
|
12151
12001
|
currentStep: 0,
|
|
12152
12002
|
seenSteps: /* @__PURE__ */ new Set([0])
|
|
@@ -12168,12 +12018,12 @@ var StepperBar = ({
|
|
|
12168
12018
|
seenSteps.add(newStep);
|
|
12169
12019
|
onChange({ currentStep: newStep, seenSteps });
|
|
12170
12020
|
};
|
|
12171
|
-
return /* @__PURE__ */
|
|
12021
|
+
return /* @__PURE__ */ jsxs26(
|
|
12172
12022
|
"div",
|
|
12173
12023
|
{
|
|
12174
12024
|
className: clsx21("flex-row-2 justify-between", className),
|
|
12175
12025
|
children: [
|
|
12176
|
-
/* @__PURE__ */
|
|
12026
|
+
/* @__PURE__ */ jsx47("div", { className: "flex-row-2 flex-[2] justify-start", children: /* @__PURE__ */ jsxs26(
|
|
12177
12027
|
Button,
|
|
12178
12028
|
{
|
|
12179
12029
|
disabled: currentStep === 0 || disabledSteps.has(currentStep),
|
|
@@ -12182,14 +12032,14 @@ var StepperBar = ({
|
|
|
12182
12032
|
},
|
|
12183
12033
|
className: "flex-row-1 items-center justify-center",
|
|
12184
12034
|
children: [
|
|
12185
|
-
/* @__PURE__ */
|
|
12035
|
+
/* @__PURE__ */ jsx47(ChevronLeft3, { size: 14 }),
|
|
12186
12036
|
translation("back")
|
|
12187
12037
|
]
|
|
12188
12038
|
}
|
|
12189
12039
|
) }),
|
|
12190
|
-
/* @__PURE__ */
|
|
12040
|
+
/* @__PURE__ */ jsx47("div", { className: "flex-row-2 flex-[5] justify-center items-center", children: showDots && dots.map((value, index) => {
|
|
12191
12041
|
const seen = seenSteps.has(index);
|
|
12192
|
-
return /* @__PURE__ */
|
|
12042
|
+
return /* @__PURE__ */ jsx47(
|
|
12193
12043
|
"div",
|
|
12194
12044
|
{
|
|
12195
12045
|
onClick: () => seen && update(index),
|
|
@@ -12209,7 +12059,7 @@ var StepperBar = ({
|
|
|
12209
12059
|
index
|
|
12210
12060
|
);
|
|
12211
12061
|
}) }),
|
|
12212
|
-
currentStep !== numberOfSteps && /* @__PURE__ */
|
|
12062
|
+
currentStep !== numberOfSteps && /* @__PURE__ */ jsx47("div", { className: "flex-row-2 flex-[2] justify-end", children: /* @__PURE__ */ jsxs26(
|
|
12213
12063
|
Button,
|
|
12214
12064
|
{
|
|
12215
12065
|
onClick: () => update(currentStep + 1),
|
|
@@ -12217,18 +12067,18 @@ var StepperBar = ({
|
|
|
12217
12067
|
disabled: disabledSteps.has(currentStep),
|
|
12218
12068
|
children: [
|
|
12219
12069
|
translation("next"),
|
|
12220
|
-
/* @__PURE__ */
|
|
12070
|
+
/* @__PURE__ */ jsx47(ChevronRight3, { size: 14 })
|
|
12221
12071
|
]
|
|
12222
12072
|
}
|
|
12223
12073
|
) }),
|
|
12224
|
-
currentStep === numberOfSteps && /* @__PURE__ */
|
|
12074
|
+
currentStep === numberOfSteps && /* @__PURE__ */ jsx47("div", { className: "flex-row-2 flex-[2] justify-end", children: /* @__PURE__ */ jsxs26(
|
|
12225
12075
|
Button,
|
|
12226
12076
|
{
|
|
12227
12077
|
disabled: disabledSteps.has(currentStep),
|
|
12228
12078
|
onClick: onFinish,
|
|
12229
12079
|
className: "flex-row-1 items-center justify-center",
|
|
12230
12080
|
children: [
|
|
12231
|
-
/* @__PURE__ */
|
|
12081
|
+
/* @__PURE__ */ jsx47(Check, { size: 14 }),
|
|
12232
12082
|
finishText ?? translation("confirm")
|
|
12233
12083
|
]
|
|
12234
12084
|
}
|
|
@@ -12239,7 +12089,7 @@ var StepperBar = ({
|
|
|
12239
12089
|
};
|
|
12240
12090
|
var StepperBarUncontrolled = ({ state, onChange, ...props }) => {
|
|
12241
12091
|
const [usedState, setUsedState] = useOverwritableState(state, onChange);
|
|
12242
|
-
return /* @__PURE__ */
|
|
12092
|
+
return /* @__PURE__ */ jsx47(
|
|
12243
12093
|
StepperBar,
|
|
12244
12094
|
{
|
|
12245
12095
|
...props,
|
|
@@ -12251,14 +12101,14 @@ var StepperBarUncontrolled = ({ state, onChange, ...props }) => {
|
|
|
12251
12101
|
|
|
12252
12102
|
// src/components/layout/table/FillerCell.tsx
|
|
12253
12103
|
import { Minus } from "lucide-react";
|
|
12254
|
-
import { jsx as
|
|
12104
|
+
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
12255
12105
|
var FillerCell = ({ ...props }) => {
|
|
12256
|
-
return /* @__PURE__ */
|
|
12106
|
+
return /* @__PURE__ */ jsx48(
|
|
12257
12107
|
"div",
|
|
12258
12108
|
{
|
|
12259
12109
|
...props,
|
|
12260
12110
|
"data-name": PropsUtil.dataAttributes.name("table-filler-cell"),
|
|
12261
|
-
children: /* @__PURE__ */
|
|
12111
|
+
children: /* @__PURE__ */ jsx48(Minus, { className: "max-w-4 max-h-4" })
|
|
12262
12112
|
}
|
|
12263
12113
|
);
|
|
12264
12114
|
};
|
|
@@ -12278,7 +12128,7 @@ var TableFilters = {
|
|
|
12278
12128
|
};
|
|
12279
12129
|
|
|
12280
12130
|
// src/components/layout/table/Table.tsx
|
|
12281
|
-
import { useCallback as useCallback20, useEffect as useEffect28, useMemo as useMemo15, useRef as
|
|
12131
|
+
import { useCallback as useCallback20, useEffect as useEffect28, useMemo as useMemo15, useRef as useRef17, useState as useState28 } from "react";
|
|
12282
12132
|
import clsx26 from "clsx";
|
|
12283
12133
|
import {
|
|
12284
12134
|
flexRender,
|
|
@@ -12291,18 +12141,18 @@ import {
|
|
|
12291
12141
|
|
|
12292
12142
|
// src/components/layout/table/TableCell.tsx
|
|
12293
12143
|
import { clsx as clsx22 } from "clsx";
|
|
12294
|
-
import { jsx as
|
|
12144
|
+
import { jsx as jsx49 } from "react/jsx-runtime";
|
|
12295
12145
|
var TableCell = ({
|
|
12296
12146
|
children,
|
|
12297
12147
|
className
|
|
12298
12148
|
}) => {
|
|
12299
|
-
return /* @__PURE__ */
|
|
12149
|
+
return /* @__PURE__ */ jsx49("span", { className: clsx22("block max-w-full overflow-ellipsis truncate", className), children });
|
|
12300
12150
|
};
|
|
12301
12151
|
|
|
12302
12152
|
// src/hooks/useResizeCallbackWrapper.ts
|
|
12303
|
-
import { useEffect as
|
|
12153
|
+
import { useEffect as useEffect22 } from "react";
|
|
12304
12154
|
var useResizeCallbackWrapper = (callback) => {
|
|
12305
|
-
|
|
12155
|
+
useEffect22(() => {
|
|
12306
12156
|
window.addEventListener("resize", callback);
|
|
12307
12157
|
return () => {
|
|
12308
12158
|
window.removeEventListener("resize", callback);
|
|
@@ -12315,37 +12165,33 @@ import { ChevronDown as ChevronDown3, ChevronsUpDown, ChevronUp as ChevronUp2 }
|
|
|
12315
12165
|
import clsx24 from "clsx";
|
|
12316
12166
|
|
|
12317
12167
|
// src/components/user-interaction/Tooltip.tsx
|
|
12318
|
-
import {
|
|
12168
|
+
import { useEffect as useEffect23 } from "react";
|
|
12169
|
+
import { useId as useId11 } from "react";
|
|
12170
|
+
import { useCallback as useCallback17, useMemo as useMemo14, useRef as useRef15, useState as useState24 } from "react";
|
|
12319
12171
|
import { clsx as clsx23 } from "clsx";
|
|
12320
12172
|
import { createPortal as createPortal6 } from "react-dom";
|
|
12321
|
-
import { jsx as
|
|
12173
|
+
import { jsx as jsx50, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
12322
12174
|
var Tooltip = ({
|
|
12323
12175
|
tooltip,
|
|
12324
12176
|
children,
|
|
12325
|
-
appearDelay:
|
|
12326
|
-
disappearDelay: disappearDelayOverwrite,
|
|
12177
|
+
appearDelay: appearOverwrite,
|
|
12327
12178
|
tooltipClassName,
|
|
12328
12179
|
containerClassName,
|
|
12329
12180
|
position = "bottom",
|
|
12330
12181
|
disabled = false
|
|
12331
12182
|
}) => {
|
|
12332
|
-
const
|
|
12333
|
-
|
|
12334
|
-
|
|
12335
|
-
});
|
|
12183
|
+
const id = useId11();
|
|
12184
|
+
const [open, setOpen] = useState24(false);
|
|
12185
|
+
const timeoutRef = useRef15(null);
|
|
12336
12186
|
const { config } = useHightideConfig();
|
|
12337
12187
|
const appearDelay = useMemo14(
|
|
12338
|
-
() =>
|
|
12339
|
-
[config.tooltip.appearDelay
|
|
12340
|
-
);
|
|
12341
|
-
const disappearDelay = useMemo14(
|
|
12342
|
-
() => disappearDelayOverwrite ?? config.tooltip.disappearDelay,
|
|
12343
|
-
[config.tooltip.disappearDelay, disappearDelayOverwrite]
|
|
12188
|
+
() => appearOverwrite ?? config.tooltip.appearDelay,
|
|
12189
|
+
[appearOverwrite, config.tooltip.appearDelay]
|
|
12344
12190
|
);
|
|
12345
|
-
const anchorRef =
|
|
12346
|
-
const containerRef =
|
|
12347
|
-
const triangleRef =
|
|
12348
|
-
const isActive = !disabled &&
|
|
12191
|
+
const anchorRef = useRef15(null);
|
|
12192
|
+
const containerRef = useRef15(null);
|
|
12193
|
+
const triangleRef = useRef15(null);
|
|
12194
|
+
const isActive = !disabled && open;
|
|
12349
12195
|
const { isVisible, transitionState, callbacks } = useTransitionState(
|
|
12350
12196
|
useMemo14(() => ({ isOpen: isActive }), [isActive])
|
|
12351
12197
|
);
|
|
@@ -12374,66 +12220,62 @@ var Tooltip = ({
|
|
|
12374
12220
|
const regsitryOptions = useMemo14(() => ({ isActive }), [isActive]);
|
|
12375
12221
|
const { zIndex } = useOverlayRegistry(regsitryOptions);
|
|
12376
12222
|
const { zIndex: zIndexTriangle } = useOverlayRegistry(regsitryOptions);
|
|
12377
|
-
const
|
|
12378
|
-
|
|
12379
|
-
|
|
12380
|
-
|
|
12381
|
-
|
|
12382
|
-
|
|
12383
|
-
|
|
12384
|
-
|
|
12385
|
-
|
|
12386
|
-
|
|
12387
|
-
|
|
12388
|
-
|
|
12389
|
-
|
|
12390
|
-
|
|
12391
|
-
|
|
12392
|
-
|
|
12393
|
-
|
|
12394
|
-
|
|
12395
|
-
|
|
12396
|
-
|
|
12397
|
-
|
|
12398
|
-
|
|
12399
|
-
|
|
12400
|
-
|
|
12401
|
-
|
|
12402
|
-
|
|
12403
|
-
|
|
12404
|
-
|
|
12223
|
+
const openWithDelay = useCallback17(() => {
|
|
12224
|
+
if (timeoutRef.current || open) return;
|
|
12225
|
+
timeoutRef.current = window.setTimeout(() => {
|
|
12226
|
+
timeoutRef.current = null;
|
|
12227
|
+
setOpen(true);
|
|
12228
|
+
}, appearDelay);
|
|
12229
|
+
}, [appearDelay, open]);
|
|
12230
|
+
const close3 = useCallback17(() => {
|
|
12231
|
+
if (timeoutRef.current) {
|
|
12232
|
+
clearTimeout(timeoutRef.current);
|
|
12233
|
+
timeoutRef.current = null;
|
|
12234
|
+
}
|
|
12235
|
+
setOpen(false);
|
|
12236
|
+
}, []);
|
|
12237
|
+
useEffect23(() => {
|
|
12238
|
+
if (!open) return;
|
|
12239
|
+
const closeOnBlur = () => close3();
|
|
12240
|
+
const closeOnScroll = () => close3();
|
|
12241
|
+
window.addEventListener("blur", closeOnBlur);
|
|
12242
|
+
window.addEventListener("scroll", closeOnScroll, true);
|
|
12243
|
+
return () => {
|
|
12244
|
+
window.removeEventListener("blur", closeOnBlur);
|
|
12245
|
+
window.removeEventListener("scroll", closeOnScroll, true);
|
|
12246
|
+
};
|
|
12247
|
+
}, [open, close3]);
|
|
12248
|
+
useEffect23(() => {
|
|
12249
|
+
return () => {
|
|
12250
|
+
if (timeoutRef.current) {
|
|
12251
|
+
clearTimeout(timeoutRef.current);
|
|
12405
12252
|
}
|
|
12406
|
-
|
|
12407
|
-
|
|
12408
|
-
|
|
12409
|
-
timer: setTimeout(() => {
|
|
12410
|
-
setState((prevState2) => {
|
|
12411
|
-
clearTimeout(prevState2.timer);
|
|
12412
|
-
return { ...prevState2, isShown: false, timer: null };
|
|
12413
|
-
});
|
|
12414
|
-
}, disappearDelay)
|
|
12415
|
-
};
|
|
12416
|
-
});
|
|
12417
|
-
}, [disappearDelay]);
|
|
12418
|
-
return /* @__PURE__ */ jsxs29(
|
|
12253
|
+
};
|
|
12254
|
+
}, []);
|
|
12255
|
+
return /* @__PURE__ */ jsxs27(
|
|
12419
12256
|
"div",
|
|
12420
12257
|
{
|
|
12421
12258
|
ref: anchorRef,
|
|
12422
12259
|
className: clsx23("relative inline-block", containerClassName),
|
|
12423
|
-
|
|
12424
|
-
|
|
12260
|
+
"aria-describedby": isVisible ? id : void 0,
|
|
12261
|
+
onPointerEnter: openWithDelay,
|
|
12262
|
+
onPointerLeave: close3,
|
|
12263
|
+
onPointerCancel: close3,
|
|
12264
|
+
onFocus: openWithDelay,
|
|
12265
|
+
onBlur: close3,
|
|
12425
12266
|
children: [
|
|
12426
12267
|
children,
|
|
12427
|
-
/* @__PURE__ */
|
|
12268
|
+
/* @__PURE__ */ jsxs27(Visibility, { isVisible: isActive || isVisible, children: [
|
|
12428
12269
|
createPortal6(
|
|
12429
|
-
/* @__PURE__ */
|
|
12270
|
+
/* @__PURE__ */ jsx50(
|
|
12430
12271
|
"div",
|
|
12431
12272
|
{
|
|
12432
12273
|
ref: containerRef,
|
|
12274
|
+
id,
|
|
12433
12275
|
...callbacks,
|
|
12434
|
-
onPointerEnter: onEnter,
|
|
12435
12276
|
"data-name": PropsUtil.dataAttributes.name("tooltip"),
|
|
12436
12277
|
"data-state": transitionState,
|
|
12278
|
+
role: "tooltip",
|
|
12437
12279
|
className: tooltipClassName,
|
|
12438
12280
|
style: { ...css, zIndex },
|
|
12439
12281
|
children: tooltip
|
|
@@ -12442,7 +12284,7 @@ var Tooltip = ({
|
|
|
12442
12284
|
document.body
|
|
12443
12285
|
),
|
|
12444
12286
|
createPortal6(
|
|
12445
|
-
/* @__PURE__ */
|
|
12287
|
+
/* @__PURE__ */ jsx50(
|
|
12446
12288
|
"div",
|
|
12447
12289
|
{
|
|
12448
12290
|
ref: triangleRef,
|
|
@@ -12461,7 +12303,7 @@ var Tooltip = ({
|
|
|
12461
12303
|
};
|
|
12462
12304
|
|
|
12463
12305
|
// src/components/layout/table/TableSortButton.tsx
|
|
12464
|
-
import { jsx as
|
|
12306
|
+
import { jsx as jsx51, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
12465
12307
|
var TableSortButton = ({
|
|
12466
12308
|
sortDirection,
|
|
12467
12309
|
invert = false,
|
|
@@ -12473,16 +12315,16 @@ var TableSortButton = ({
|
|
|
12473
12315
|
}) => {
|
|
12474
12316
|
const translation = useHightideTranslation();
|
|
12475
12317
|
const { sortingsCount, index } = sortingIndexDisplay;
|
|
12476
|
-
let icon = /* @__PURE__ */
|
|
12318
|
+
let icon = /* @__PURE__ */ jsx51(ChevronsUpDown, { className: "size-4" });
|
|
12477
12319
|
if (sortDirection) {
|
|
12478
12320
|
let usedSortDirection = sortDirection;
|
|
12479
12321
|
if (invert) {
|
|
12480
12322
|
usedSortDirection = usedSortDirection === "desc" ? "asc" : "desc";
|
|
12481
12323
|
}
|
|
12482
|
-
icon = usedSortDirection === "asc" ? /* @__PURE__ */
|
|
12324
|
+
icon = usedSortDirection === "asc" ? /* @__PURE__ */ jsx51(ChevronUp2, { className: "size-4" }) : /* @__PURE__ */ jsx51(ChevronDown3, { className: "size-4" });
|
|
12483
12325
|
}
|
|
12484
12326
|
const hasSortingIndex = !!sortingIndexDisplay && sortingsCount > 1 && index > 0;
|
|
12485
|
-
return /* @__PURE__ */
|
|
12327
|
+
return /* @__PURE__ */ jsx51(Tooltip, { tooltip: translation("rSortingOrderAfter", { otherSortings: index - 1 }), disabled: !hasSortingIndex, children: /* @__PURE__ */ jsxs28(
|
|
12486
12328
|
Button,
|
|
12487
12329
|
{
|
|
12488
12330
|
layout: hasSortingIndex ? "default" : "icon",
|
|
@@ -12491,7 +12333,7 @@ var TableSortButton = ({
|
|
|
12491
12333
|
className: clsx24("relative", className),
|
|
12492
12334
|
...props,
|
|
12493
12335
|
children: [
|
|
12494
|
-
/* @__PURE__ */
|
|
12336
|
+
/* @__PURE__ */ jsx51(Visibility, { isVisible: hasSortingIndex, children: /* @__PURE__ */ jsx51(
|
|
12495
12337
|
"div",
|
|
12496
12338
|
{
|
|
12497
12339
|
className: clsx24("absolute bottom-0 right-1/2 translate-x-1/2 translate-y-2/3 z-1 primary coloring-solid rounded-full h-4 w-5 text-sm"),
|
|
@@ -12508,7 +12350,7 @@ var TableSortButton = ({
|
|
|
12508
12350
|
import { FilterIcon } from "lucide-react";
|
|
12509
12351
|
|
|
12510
12352
|
// src/components/user-interaction/Menu.tsx
|
|
12511
|
-
import { useCallback as useCallback18, useEffect as useEffect26, useRef as
|
|
12353
|
+
import { useCallback as useCallback18, useEffect as useEffect26, useRef as useRef16, useState as useState26 } from "react";
|
|
12512
12354
|
import clsx25 from "clsx";
|
|
12513
12355
|
|
|
12514
12356
|
// src/utils/bagFunctions.ts
|
|
@@ -12644,14 +12486,14 @@ var useOutsideClick = (refs, handler) => {
|
|
|
12644
12486
|
};
|
|
12645
12487
|
|
|
12646
12488
|
// src/components/user-interaction/Menu.tsx
|
|
12647
|
-
import { Fragment as Fragment7, jsx as
|
|
12489
|
+
import { Fragment as Fragment7, jsx as jsx52, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
12648
12490
|
var MenuItem = ({
|
|
12649
12491
|
children,
|
|
12650
12492
|
onClick,
|
|
12651
12493
|
alignment = "left",
|
|
12652
12494
|
isDisabled = false,
|
|
12653
12495
|
className
|
|
12654
|
-
}) => /* @__PURE__ */
|
|
12496
|
+
}) => /* @__PURE__ */ jsx52(
|
|
12655
12497
|
"div",
|
|
12656
12498
|
{
|
|
12657
12499
|
className: clsx25("block px-3 py-1.5 first:rounded-t-md last:rounded-b-md text-sm font-semibold text-nowrap", {
|
|
@@ -12684,8 +12526,8 @@ var Menu = ({
|
|
|
12684
12526
|
menuClassName = ""
|
|
12685
12527
|
}) => {
|
|
12686
12528
|
const { isHovered: isOpen, setIsHovered: setIsOpen } = useHoverState({ isDisabled: !showOnHover || disabled });
|
|
12687
|
-
const triggerRef =
|
|
12688
|
-
const menuRef =
|
|
12529
|
+
const triggerRef = useRef16(null);
|
|
12530
|
+
const menuRef = useRef16(null);
|
|
12689
12531
|
useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
|
|
12690
12532
|
const [isHidden, setIsHidden] = useState26(true);
|
|
12691
12533
|
const bag = {
|
|
@@ -12723,9 +12565,9 @@ var Menu = ({
|
|
|
12723
12565
|
const { zIndex } = useOverlayRegistry({
|
|
12724
12566
|
isActive: isOpen
|
|
12725
12567
|
});
|
|
12726
|
-
return /* @__PURE__ */
|
|
12568
|
+
return /* @__PURE__ */ jsxs29(Fragment7, { children: [
|
|
12727
12569
|
trigger(bag, useCallback18((el) => triggerRef.current = el, [])),
|
|
12728
|
-
createPortal7(/* @__PURE__ */
|
|
12570
|
+
createPortal7(/* @__PURE__ */ jsx52(
|
|
12729
12571
|
"div",
|
|
12730
12572
|
{
|
|
12731
12573
|
ref: menuRef,
|
|
@@ -12756,7 +12598,7 @@ var Menu = ({
|
|
|
12756
12598
|
|
|
12757
12599
|
// src/components/layout/table/TableFilterButton.tsx
|
|
12758
12600
|
import { useEffect as useEffect27, useState as useState27 } from "react";
|
|
12759
|
-
import { Fragment as Fragment8, jsx as
|
|
12601
|
+
import { Fragment as Fragment8, jsx as jsx53, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
12760
12602
|
var TableFilterButton = ({
|
|
12761
12603
|
filterType,
|
|
12762
12604
|
column
|
|
@@ -12768,21 +12610,21 @@ var TableFilterButton = ({
|
|
|
12768
12610
|
useEffect27(() => {
|
|
12769
12611
|
setFilterValue(columnFilterValue);
|
|
12770
12612
|
}, [columnFilterValue]);
|
|
12771
|
-
return /* @__PURE__ */
|
|
12613
|
+
return /* @__PURE__ */ jsx53(
|
|
12772
12614
|
Menu,
|
|
12773
12615
|
{
|
|
12774
|
-
trigger: ({ toggleOpen }, ref) => /* @__PURE__ */
|
|
12775
|
-
/* @__PURE__ */
|
|
12616
|
+
trigger: ({ toggleOpen }, ref) => /* @__PURE__ */ jsxs30("div", { ref, className: "relative", children: [
|
|
12617
|
+
/* @__PURE__ */ jsx53(
|
|
12776
12618
|
Button,
|
|
12777
12619
|
{
|
|
12778
12620
|
layout: "icon",
|
|
12779
12621
|
color: "neutral",
|
|
12780
12622
|
size: "xs",
|
|
12781
12623
|
onClick: toggleOpen,
|
|
12782
|
-
children: /* @__PURE__ */
|
|
12624
|
+
children: /* @__PURE__ */ jsx53(FilterIcon, { className: "size-4" })
|
|
12783
12625
|
}
|
|
12784
12626
|
),
|
|
12785
|
-
hasFilter && /* @__PURE__ */
|
|
12627
|
+
hasFilter && /* @__PURE__ */ jsx53(
|
|
12786
12628
|
"div",
|
|
12787
12629
|
{
|
|
12788
12630
|
className: "absolute top-0.5 right-0.5 w-2 h-2 rounded-full bg-primary pointer-events-none",
|
|
@@ -12790,9 +12632,9 @@ var TableFilterButton = ({
|
|
|
12790
12632
|
}
|
|
12791
12633
|
)
|
|
12792
12634
|
] }),
|
|
12793
|
-
children: ({ close: close3 }) => /* @__PURE__ */
|
|
12794
|
-
/* @__PURE__ */
|
|
12795
|
-
filterType === "text" && /* @__PURE__ */
|
|
12635
|
+
children: ({ close: close3 }) => /* @__PURE__ */ jsxs30("div", { className: "flex-col-1 p-2 items-start font-normal text-menu-text", children: [
|
|
12636
|
+
/* @__PURE__ */ jsx53("h4", { className: "typography-label-md-semibold", children: translation("filter") }),
|
|
12637
|
+
filterType === "text" && /* @__PURE__ */ jsx53(
|
|
12796
12638
|
Input,
|
|
12797
12639
|
{
|
|
12798
12640
|
value: filterValue ?? "",
|
|
@@ -12802,8 +12644,8 @@ var TableFilterButton = ({
|
|
|
12802
12644
|
className: "h-10"
|
|
12803
12645
|
}
|
|
12804
12646
|
),
|
|
12805
|
-
filterType === "range" && /* @__PURE__ */
|
|
12806
|
-
/* @__PURE__ */
|
|
12647
|
+
filterType === "range" && /* @__PURE__ */ jsxs30("div", { className: "flex-row-2 items-center", children: [
|
|
12648
|
+
/* @__PURE__ */ jsx53(
|
|
12807
12649
|
Input,
|
|
12808
12650
|
{
|
|
12809
12651
|
value: filterValue?.[0].toString() ?? "",
|
|
@@ -12816,8 +12658,8 @@ var TableFilterButton = ({
|
|
|
12816
12658
|
className: "h-10 input-indicator-hidden w-40"
|
|
12817
12659
|
}
|
|
12818
12660
|
),
|
|
12819
|
-
/* @__PURE__ */
|
|
12820
|
-
/* @__PURE__ */
|
|
12661
|
+
/* @__PURE__ */ jsx53("span", { className: "font-bold", children: "-" }),
|
|
12662
|
+
/* @__PURE__ */ jsx53(
|
|
12821
12663
|
Input,
|
|
12822
12664
|
{
|
|
12823
12665
|
value: filterValue?.[1].toString() ?? "",
|
|
@@ -12831,8 +12673,8 @@ var TableFilterButton = ({
|
|
|
12831
12673
|
}
|
|
12832
12674
|
)
|
|
12833
12675
|
] }),
|
|
12834
|
-
filterType === "dateRange" && /* @__PURE__ */
|
|
12835
|
-
/* @__PURE__ */
|
|
12676
|
+
filterType === "dateRange" && /* @__PURE__ */ jsxs30(Fragment8, { children: [
|
|
12677
|
+
/* @__PURE__ */ jsx53(
|
|
12836
12678
|
Input,
|
|
12837
12679
|
{
|
|
12838
12680
|
value: filterValue?.[0] ? filterValue?.[0].toISOString().slice(0, 16) : "",
|
|
@@ -12845,7 +12687,7 @@ var TableFilterButton = ({
|
|
|
12845
12687
|
className: "h-10 w-50"
|
|
12846
12688
|
}
|
|
12847
12689
|
),
|
|
12848
|
-
/* @__PURE__ */
|
|
12690
|
+
/* @__PURE__ */ jsx53(
|
|
12849
12691
|
Input,
|
|
12850
12692
|
{
|
|
12851
12693
|
value: filterValue?.[1] ? filterValue?.[1].toISOString().slice(0, 16) : "",
|
|
@@ -12859,12 +12701,12 @@ var TableFilterButton = ({
|
|
|
12859
12701
|
}
|
|
12860
12702
|
)
|
|
12861
12703
|
] }),
|
|
12862
|
-
/* @__PURE__ */
|
|
12863
|
-
hasFilter && /* @__PURE__ */
|
|
12704
|
+
/* @__PURE__ */ jsxs30("div", { className: "flex-row-2 justify-end w-full", children: [
|
|
12705
|
+
hasFilter && /* @__PURE__ */ jsx53(Button, { color: "negative", size: "sm", onClick: () => {
|
|
12864
12706
|
column.setFilterValue(void 0);
|
|
12865
12707
|
close3();
|
|
12866
12708
|
}, children: translation("remove") }),
|
|
12867
|
-
/* @__PURE__ */
|
|
12709
|
+
/* @__PURE__ */ jsx53(Button, { size: "sm", onClick: () => {
|
|
12868
12710
|
column.setFilterValue(filterValue);
|
|
12869
12711
|
close3();
|
|
12870
12712
|
}, children: translation("apply") })
|
|
@@ -12877,7 +12719,7 @@ var TableFilterButton = ({
|
|
|
12877
12719
|
// src/components/user-interaction/Checkbox.tsx
|
|
12878
12720
|
import { Check as Check2, Minus as Minus2 } from "lucide-react";
|
|
12879
12721
|
import { useCallback as useCallback19 } from "react";
|
|
12880
|
-
import { jsx as
|
|
12722
|
+
import { jsx as jsx54, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
12881
12723
|
var Checkbox = ({
|
|
12882
12724
|
value = false,
|
|
12883
12725
|
indeterminate = false,
|
|
@@ -12895,7 +12737,7 @@ var Checkbox = ({
|
|
|
12895
12737
|
onValueChange?.(!value);
|
|
12896
12738
|
onEditComplete?.(!value);
|
|
12897
12739
|
}, [onEditComplete, onValueChange, value]);
|
|
12898
|
-
return /* @__PURE__ */
|
|
12740
|
+
return /* @__PURE__ */ jsxs31(
|
|
12899
12741
|
"div",
|
|
12900
12742
|
{
|
|
12901
12743
|
...props,
|
|
@@ -12922,8 +12764,8 @@ var Checkbox = ({
|
|
|
12922
12764
|
"aria-checked": indeterminate ? "mixed" : value,
|
|
12923
12765
|
...PropsUtil.aria.interactionStates({ disabled, invalid, readOnly, required }, props),
|
|
12924
12766
|
children: [
|
|
12925
|
-
/* @__PURE__ */
|
|
12926
|
-
/* @__PURE__ */
|
|
12767
|
+
/* @__PURE__ */ jsx54(Visibility, { isVisible: indeterminate, children: /* @__PURE__ */ jsx54(Minus2, { "data-name": "checkbox-indicator", "aria-hidden": true }) }),
|
|
12768
|
+
/* @__PURE__ */ jsx54(Visibility, { isVisible: !indeterminate && (alwaysShowCheckIcon || value), children: /* @__PURE__ */ jsx54(Check2, { "data-name": "checkbox-indicator", "aria-hidden": true }) })
|
|
12927
12769
|
]
|
|
12928
12770
|
}
|
|
12929
12771
|
);
|
|
@@ -12934,7 +12776,7 @@ var CheckboxUncontrolled = ({
|
|
|
12934
12776
|
...props
|
|
12935
12777
|
}) => {
|
|
12936
12778
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
12937
|
-
return /* @__PURE__ */
|
|
12779
|
+
return /* @__PURE__ */ jsx54(
|
|
12938
12780
|
Checkbox,
|
|
12939
12781
|
{
|
|
12940
12782
|
...props,
|
|
@@ -12945,7 +12787,7 @@ var CheckboxUncontrolled = ({
|
|
|
12945
12787
|
};
|
|
12946
12788
|
|
|
12947
12789
|
// src/components/layout/table/Table.tsx
|
|
12948
|
-
import { jsx as
|
|
12790
|
+
import { jsx as jsx55, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
12949
12791
|
var Table = ({
|
|
12950
12792
|
data,
|
|
12951
12793
|
fillerRow,
|
|
@@ -12959,8 +12801,8 @@ var Table = ({
|
|
|
12959
12801
|
columns,
|
|
12960
12802
|
...tableOptions
|
|
12961
12803
|
}) => {
|
|
12962
|
-
const ref =
|
|
12963
|
-
const tableRef =
|
|
12804
|
+
const ref = useRef17(null);
|
|
12805
|
+
const tableRef = useRef17(null);
|
|
12964
12806
|
const [columnSizing, setColumnSizing] = useState28(columns.reduce((previousValue, currentValue) => {
|
|
12965
12807
|
return {
|
|
12966
12808
|
...previousValue,
|
|
@@ -13065,7 +12907,7 @@ var Table = ({
|
|
|
13065
12907
|
minSize: 60,
|
|
13066
12908
|
maxSize: 700,
|
|
13067
12909
|
cell: ({ cell }) => {
|
|
13068
|
-
return /* @__PURE__ */
|
|
12910
|
+
return /* @__PURE__ */ jsx55(TableCell, { children: cell.getValue() });
|
|
13069
12911
|
},
|
|
13070
12912
|
...defaultColumn
|
|
13071
12913
|
},
|
|
@@ -13150,8 +12992,8 @@ var Table = ({
|
|
|
13150
12992
|
}
|
|
13151
12993
|
return colSizes;
|
|
13152
12994
|
}, [table.getState().columnSizingInfo, table.getState().columnSizing]);
|
|
13153
|
-
return /* @__PURE__ */
|
|
13154
|
-
/* @__PURE__ */
|
|
12995
|
+
return /* @__PURE__ */ jsxs32("div", { ref, "data-name": PropsUtil.dataAttributes.name("table-container"), className, children: [
|
|
12996
|
+
/* @__PURE__ */ jsx55("div", { "data-name": PropsUtil.dataAttributes.name("table-scroll-wrapper"), className: tableContainerClassName, children: /* @__PURE__ */ jsxs32(
|
|
13155
12997
|
"table",
|
|
13156
12998
|
{
|
|
13157
12999
|
ref: tableRef,
|
|
@@ -13162,7 +13004,7 @@ var Table = ({
|
|
|
13162
13004
|
},
|
|
13163
13005
|
className: tableClassName,
|
|
13164
13006
|
children: [
|
|
13165
|
-
table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */
|
|
13007
|
+
table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx55("colgroup", { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx55(
|
|
13166
13008
|
"col",
|
|
13167
13009
|
{
|
|
13168
13010
|
style: {
|
|
@@ -13173,16 +13015,16 @@ var Table = ({
|
|
|
13173
13015
|
},
|
|
13174
13016
|
header.id
|
|
13175
13017
|
)) }, headerGroup.id)),
|
|
13176
|
-
/* @__PURE__ */
|
|
13177
|
-
return /* @__PURE__ */
|
|
13018
|
+
/* @__PURE__ */ jsx55("thead", { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx55("tr", { "data-name": PropsUtil.dataAttributes.name("table-header-row"), className: table.options.meta?.headerRowClassName, children: headerGroup.headers.map((header) => {
|
|
13019
|
+
return /* @__PURE__ */ jsxs32(
|
|
13178
13020
|
"th",
|
|
13179
13021
|
{
|
|
13180
13022
|
colSpan: header.colSpan,
|
|
13181
13023
|
"data-name": PropsUtil.dataAttributes.name("table-header-cell"),
|
|
13182
13024
|
className: clsx26("group/table-header-cell", header.column.columnDef.meta?.className),
|
|
13183
13025
|
children: [
|
|
13184
|
-
/* @__PURE__ */
|
|
13185
|
-
/* @__PURE__ */
|
|
13026
|
+
/* @__PURE__ */ jsx55(Visibility, { isVisible: !header.isPlaceholder, children: /* @__PURE__ */ jsxs32("div", { className: "flex-row-1 items-center", children: [
|
|
13027
|
+
/* @__PURE__ */ jsx55(Visibility, { isVisible: header.column.getCanSort(), children: /* @__PURE__ */ jsx55(
|
|
13186
13028
|
TableSortButton,
|
|
13187
13029
|
{
|
|
13188
13030
|
sortDirection: header.column.getIsSorted(),
|
|
@@ -13208,7 +13050,7 @@ var Table = ({
|
|
|
13208
13050
|
}
|
|
13209
13051
|
}
|
|
13210
13052
|
) }),
|
|
13211
|
-
/* @__PURE__ */
|
|
13053
|
+
/* @__PURE__ */ jsx55(Visibility, { isVisible: header.column.getCanFilter() && !!header.column.columnDef.meta?.filterType, children: /* @__PURE__ */ jsx55(
|
|
13212
13054
|
TableFilterButton,
|
|
13213
13055
|
{
|
|
13214
13056
|
column: header.column,
|
|
@@ -13220,7 +13062,7 @@ var Table = ({
|
|
|
13220
13062
|
header.getContext()
|
|
13221
13063
|
)
|
|
13222
13064
|
] }) }),
|
|
13223
|
-
/* @__PURE__ */
|
|
13065
|
+
/* @__PURE__ */ jsx55(Visibility, { isVisible: header.column.getCanResize(), children: /* @__PURE__ */ jsx55(
|
|
13224
13066
|
"div",
|
|
13225
13067
|
{
|
|
13226
13068
|
onPointerDown: header.getResizeHandler(),
|
|
@@ -13241,16 +13083,16 @@ var Table = ({
|
|
|
13241
13083
|
header.id
|
|
13242
13084
|
);
|
|
13243
13085
|
}) }, headerGroup.id)) }),
|
|
13244
|
-
/* @__PURE__ */
|
|
13086
|
+
/* @__PURE__ */ jsxs32("tbody", { children: [
|
|
13245
13087
|
table.getRowModel().rows.map((row) => {
|
|
13246
|
-
return /* @__PURE__ */
|
|
13088
|
+
return /* @__PURE__ */ jsx55(
|
|
13247
13089
|
"tr",
|
|
13248
13090
|
{
|
|
13249
13091
|
onClick: () => onRowClick?.(row, table),
|
|
13250
13092
|
"data-name": "table-body-row",
|
|
13251
13093
|
className: BagFunctionUtil.resolve(table.options.meta?.bodyRowClassName, row.original),
|
|
13252
13094
|
children: row.getVisibleCells().map((cell) => {
|
|
13253
|
-
return /* @__PURE__ */
|
|
13095
|
+
return /* @__PURE__ */ jsx55("td", { "data-name": "table-body-cell", children: flexRender(
|
|
13254
13096
|
cell.column.columnDef.cell,
|
|
13255
13097
|
cell.getContext()
|
|
13256
13098
|
) }, cell.id);
|
|
@@ -13260,15 +13102,15 @@ var Table = ({
|
|
|
13260
13102
|
);
|
|
13261
13103
|
}),
|
|
13262
13104
|
range(table.getState().pagination.pageSize - table.getRowModel().rows.length, { allowEmptyRange: true }).map((row, index) => {
|
|
13263
|
-
return /* @__PURE__ */
|
|
13264
|
-
return /* @__PURE__ */
|
|
13105
|
+
return /* @__PURE__ */ jsx55("tr", { children: columns.map((column) => {
|
|
13106
|
+
return /* @__PURE__ */ jsx55("td", { children: fillerRow ? fillerRow(column.id, table) : /* @__PURE__ */ jsx55(FillerCell, {}) }, column.id);
|
|
13265
13107
|
}) }, "filler-row-" + index);
|
|
13266
13108
|
})
|
|
13267
13109
|
] })
|
|
13268
13110
|
]
|
|
13269
13111
|
}
|
|
13270
13112
|
) }),
|
|
13271
|
-
/* @__PURE__ */
|
|
13113
|
+
/* @__PURE__ */ jsx55("div", { className: "flex-row-2 justify-center", children: /* @__PURE__ */ jsx55(
|
|
13272
13114
|
Pagination,
|
|
13273
13115
|
{
|
|
13274
13116
|
pageIndex: table.getState().pagination.pageIndex,
|
|
@@ -13280,7 +13122,7 @@ var Table = ({
|
|
|
13280
13122
|
};
|
|
13281
13123
|
var TableUncontrolled = ({ data, ...props }) => {
|
|
13282
13124
|
const [usedDate] = useOverwritableState(data);
|
|
13283
|
-
return /* @__PURE__ */
|
|
13125
|
+
return /* @__PURE__ */ jsx55(
|
|
13284
13126
|
Table,
|
|
13285
13127
|
{
|
|
13286
13128
|
...props,
|
|
@@ -13304,7 +13146,7 @@ var TableWithSelection = ({
|
|
|
13304
13146
|
{
|
|
13305
13147
|
id: selectionRowId,
|
|
13306
13148
|
header: ({ table }) => {
|
|
13307
|
-
return /* @__PURE__ */
|
|
13149
|
+
return /* @__PURE__ */ jsx55(
|
|
13308
13150
|
Checkbox,
|
|
13309
13151
|
{
|
|
13310
13152
|
value: table.getIsAllRowsSelected(),
|
|
@@ -13317,7 +13159,7 @@ var TableWithSelection = ({
|
|
|
13317
13159
|
);
|
|
13318
13160
|
},
|
|
13319
13161
|
cell: ({ row }) => {
|
|
13320
|
-
return /* @__PURE__ */
|
|
13162
|
+
return /* @__PURE__ */ jsx55(
|
|
13321
13163
|
Checkbox,
|
|
13322
13164
|
{
|
|
13323
13165
|
disabled: !row.getCanSelect(),
|
|
@@ -13335,15 +13177,15 @@ var TableWithSelection = ({
|
|
|
13335
13177
|
...columns
|
|
13336
13178
|
];
|
|
13337
13179
|
}, [columns, selectionRowId]);
|
|
13338
|
-
return /* @__PURE__ */
|
|
13180
|
+
return /* @__PURE__ */ jsx55(
|
|
13339
13181
|
Table,
|
|
13340
13182
|
{
|
|
13341
13183
|
columns: columnsWithSelection,
|
|
13342
13184
|
fillerRow: (columnId, table) => {
|
|
13343
13185
|
if (columnId === selectionRowId) {
|
|
13344
|
-
return /* @__PURE__ */
|
|
13186
|
+
return /* @__PURE__ */ jsx55(Checkbox, { value: false, disabled: true, className: "max-w-6" });
|
|
13345
13187
|
}
|
|
13346
|
-
return fillerRow ? fillerRow(columnId, table) : /* @__PURE__ */
|
|
13188
|
+
return fillerRow ? fillerRow(columnId, table) : /* @__PURE__ */ jsx55(FillerCell, {});
|
|
13347
13189
|
},
|
|
13348
13190
|
state: {
|
|
13349
13191
|
rowSelection,
|
|
@@ -13378,7 +13220,7 @@ var writeToClipboard = (text) => {
|
|
|
13378
13220
|
|
|
13379
13221
|
// src/components/user-interaction/CopyToClipboardWrapper.tsx
|
|
13380
13222
|
import { CheckIcon as CheckIcon2, Copy } from "lucide-react";
|
|
13381
|
-
import { jsx as
|
|
13223
|
+
import { jsx as jsx56, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
13382
13224
|
var CopyToClipboardWrapper = ({
|
|
13383
13225
|
children,
|
|
13384
13226
|
textToCopy,
|
|
@@ -13409,7 +13251,7 @@ var CopyToClipboardWrapper = ({
|
|
|
13409
13251
|
left: { borderWidth: `${triangleSize}px 0 ${triangleSize}px ${triangleSize}px` },
|
|
13410
13252
|
right: { borderWidth: `${triangleSize}px ${triangleSize}px ${triangleSize}px 0` }
|
|
13411
13253
|
};
|
|
13412
|
-
return /* @__PURE__ */
|
|
13254
|
+
return /* @__PURE__ */ jsxs33(
|
|
13413
13255
|
"div",
|
|
13414
13256
|
{
|
|
13415
13257
|
className: clsx27("relative inline-block cursor-copy", containerClassName),
|
|
@@ -13427,7 +13269,7 @@ var CopyToClipboardWrapper = ({
|
|
|
13427
13269
|
},
|
|
13428
13270
|
children: [
|
|
13429
13271
|
children,
|
|
13430
|
-
/* @__PURE__ */
|
|
13272
|
+
/* @__PURE__ */ jsxs33(
|
|
13431
13273
|
"div",
|
|
13432
13274
|
{
|
|
13433
13275
|
className: clsx27(
|
|
@@ -13442,15 +13284,15 @@ var CopyToClipboardWrapper = ({
|
|
|
13442
13284
|
opacity: isShowingIndication || isShowingConfirmation ? 1 : 0
|
|
13443
13285
|
},
|
|
13444
13286
|
children: [
|
|
13445
|
-
isShowingConfirmation && /* @__PURE__ */
|
|
13446
|
-
/* @__PURE__ */
|
|
13287
|
+
isShowingConfirmation && /* @__PURE__ */ jsxs33("div", { className: "flex-row-1", children: [
|
|
13288
|
+
/* @__PURE__ */ jsx56(CheckIcon2, { size: 16, className: "text-positive" }),
|
|
13447
13289
|
translation("copied")
|
|
13448
13290
|
] }),
|
|
13449
|
-
isShowingIndication && /* @__PURE__ */
|
|
13450
|
-
/* @__PURE__ */
|
|
13291
|
+
isShowingIndication && /* @__PURE__ */ jsxs33("div", { className: "flex-row-1 text-description", children: [
|
|
13292
|
+
/* @__PURE__ */ jsx56(Copy, { size: 16 }),
|
|
13451
13293
|
translation("clickToCopy")
|
|
13452
13294
|
] }),
|
|
13453
|
-
/* @__PURE__ */
|
|
13295
|
+
/* @__PURE__ */ jsx56(
|
|
13454
13296
|
"div",
|
|
13455
13297
|
{
|
|
13456
13298
|
className: clsx27(`absolute w-0 h-0`, triangleClasses[position]),
|
|
@@ -13468,7 +13310,7 @@ var CopyToClipboardWrapper = ({
|
|
|
13468
13310
|
// src/components/user-interaction/ScrollPicker.tsx
|
|
13469
13311
|
import { useCallback as useCallback21, useEffect as useEffect29, useState as useState30 } from "react";
|
|
13470
13312
|
import clsx28 from "clsx";
|
|
13471
|
-
import { jsx as
|
|
13313
|
+
import { jsx as jsx57, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
13472
13314
|
var up = 1;
|
|
13473
13315
|
var down = -1;
|
|
13474
13316
|
var ScrollPicker = ({
|
|
@@ -13607,7 +13449,7 @@ var ScrollPicker = ({
|
|
|
13607
13449
|
}
|
|
13608
13450
|
return clamp(1 - opacityValue / max);
|
|
13609
13451
|
};
|
|
13610
|
-
return /* @__PURE__ */
|
|
13452
|
+
return /* @__PURE__ */ jsx57(
|
|
13611
13453
|
"div",
|
|
13612
13454
|
{
|
|
13613
13455
|
className: "relative overflow-hidden",
|
|
@@ -13618,15 +13460,15 @@ var ScrollPicker = ({
|
|
|
13618
13460
|
setAnimation(({ velocity, ...animationData }) => ({ ...animationData, velocity: velocity + deltaY }));
|
|
13619
13461
|
}
|
|
13620
13462
|
},
|
|
13621
|
-
children: /* @__PURE__ */
|
|
13622
|
-
/* @__PURE__ */
|
|
13463
|
+
children: /* @__PURE__ */ jsxs34("div", { className: "absolute top-1/2 -translate-y-1/2 -translate-x-1/2 left-1/2", children: [
|
|
13464
|
+
/* @__PURE__ */ jsx57(
|
|
13623
13465
|
"div",
|
|
13624
13466
|
{
|
|
13625
13467
|
className: "absolute z-[1] top-1/2 -translate-y-1/2 -translate-x-1/2 left-1/2 w-full min-w-[40px] border border-divider/50 border-y-2 border-x-0 ",
|
|
13626
13468
|
style: { height: `${itemHeight}px` }
|
|
13627
13469
|
}
|
|
13628
13470
|
),
|
|
13629
|
-
/* @__PURE__ */
|
|
13471
|
+
/* @__PURE__ */ jsx57(
|
|
13630
13472
|
"div",
|
|
13631
13473
|
{
|
|
13632
13474
|
className: "flex-col-2 select-none",
|
|
@@ -13634,7 +13476,7 @@ var ScrollPicker = ({
|
|
|
13634
13476
|
transform: `translateY(${-transition * (distance + itemHeight)}px)`,
|
|
13635
13477
|
columnGap: `${distance}px`
|
|
13636
13478
|
},
|
|
13637
|
-
children: shownItems.map(({ name: name2, index }, arrayIndex) => /* @__PURE__ */
|
|
13479
|
+
children: shownItems.map(({ name: name2, index }, arrayIndex) => /* @__PURE__ */ jsx57(
|
|
13638
13480
|
"div",
|
|
13639
13481
|
{
|
|
13640
13482
|
className: clsx28(
|
|
@@ -13664,10 +13506,10 @@ var ScrollPicker = ({
|
|
|
13664
13506
|
};
|
|
13665
13507
|
|
|
13666
13508
|
// src/components/user-interaction/Textarea.tsx
|
|
13667
|
-
import { forwardRef as
|
|
13509
|
+
import { forwardRef as forwardRef10, useId as useId12 } from "react";
|
|
13668
13510
|
import clsx29 from "clsx";
|
|
13669
|
-
import { jsx as
|
|
13670
|
-
var Textarea =
|
|
13511
|
+
import { jsx as jsx58, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
13512
|
+
var Textarea = forwardRef10(function Textarea2({
|
|
13671
13513
|
invalid = false,
|
|
13672
13514
|
onValueChange,
|
|
13673
13515
|
onEditComplete,
|
|
@@ -13679,7 +13521,7 @@ var Textarea = forwardRef12(function Textarea2({
|
|
|
13679
13521
|
onEditComplete?.(text);
|
|
13680
13522
|
clearTimer();
|
|
13681
13523
|
};
|
|
13682
|
-
return /* @__PURE__ */
|
|
13524
|
+
return /* @__PURE__ */ jsx58(
|
|
13683
13525
|
"textarea",
|
|
13684
13526
|
{
|
|
13685
13527
|
...props,
|
|
@@ -13709,7 +13551,7 @@ var TextareaUncontrolled = ({
|
|
|
13709
13551
|
...props
|
|
13710
13552
|
}) => {
|
|
13711
13553
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
13712
|
-
return /* @__PURE__ */
|
|
13554
|
+
return /* @__PURE__ */ jsx58(
|
|
13713
13555
|
Textarea,
|
|
13714
13556
|
{
|
|
13715
13557
|
...props,
|
|
@@ -13727,9 +13569,9 @@ var TextareaWithHeadline = ({
|
|
|
13727
13569
|
containerClassName,
|
|
13728
13570
|
...props
|
|
13729
13571
|
}) => {
|
|
13730
|
-
const genId =
|
|
13572
|
+
const genId = useId12();
|
|
13731
13573
|
const usedId = id ?? genId;
|
|
13732
|
-
return /* @__PURE__ */
|
|
13574
|
+
return /* @__PURE__ */ jsxs35(
|
|
13733
13575
|
"div",
|
|
13734
13576
|
{
|
|
13735
13577
|
className: clsx29(
|
|
@@ -13741,8 +13583,8 @@ var TextareaWithHeadline = ({
|
|
|
13741
13583
|
containerClassName
|
|
13742
13584
|
),
|
|
13743
13585
|
children: [
|
|
13744
|
-
headline && /* @__PURE__ */
|
|
13745
|
-
/* @__PURE__ */
|
|
13586
|
+
headline && /* @__PURE__ */ jsx58("label", { ...headlineProps, htmlFor: usedId, className: clsx29("typography-lable-md text-label", headlineProps.className), children: headline }),
|
|
13587
|
+
/* @__PURE__ */ jsx58(
|
|
13746
13588
|
Textarea,
|
|
13747
13589
|
{
|
|
13748
13590
|
...props,
|
|
@@ -13937,7 +13779,7 @@ import clsx31 from "clsx";
|
|
|
13937
13779
|
|
|
13938
13780
|
// src/components/user-interaction/date/DayPicker.tsx
|
|
13939
13781
|
import { useMemo as useMemo16 } from "react";
|
|
13940
|
-
import { jsx as
|
|
13782
|
+
import { jsx as jsx59, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
13941
13783
|
var DayPicker = ({
|
|
13942
13784
|
displayedMonth,
|
|
13943
13785
|
value,
|
|
@@ -13960,14 +13802,14 @@ var DayPicker = ({
|
|
|
13960
13802
|
if (!providedStart) return;
|
|
13961
13803
|
return new Date(providedStart.getFullYear(), providedStart.getMonth(), providedStart.getDate());
|
|
13962
13804
|
}, [providedStart]);
|
|
13963
|
-
return /* @__PURE__ */
|
|
13964
|
-
/* @__PURE__ */
|
|
13965
|
-
weeks.map((week, index) => /* @__PURE__ */
|
|
13805
|
+
return /* @__PURE__ */ jsxs36("div", { className, "data-name": "day-picker-container", children: [
|
|
13806
|
+
/* @__PURE__ */ jsx59("div", { "data-name": "day-picker-header-row", children: weeks[0].map((weekDay, index) => /* @__PURE__ */ jsx59("div", { "data-name": "day-picker-header-item", children: new Intl.DateTimeFormat(locale, { weekday: "long" }).format(weekDay).substring(0, 2) }, index)) }),
|
|
13807
|
+
weeks.map((week, index) => /* @__PURE__ */ jsx59("div", { "data-name": "day-picker-body-row", children: week.map((date) => {
|
|
13966
13808
|
const isSelected = !!value && DateUtils.equalDate(value, date);
|
|
13967
13809
|
const isToday = DateUtils.equalDate(/* @__PURE__ */ new Date(), date);
|
|
13968
13810
|
const isSameMonth = date.getMonth() === month;
|
|
13969
13811
|
const isDayValid = isInTimeSpan(date, start, end);
|
|
13970
|
-
return /* @__PURE__ */
|
|
13812
|
+
return /* @__PURE__ */ jsx59(
|
|
13971
13813
|
"button",
|
|
13972
13814
|
{
|
|
13973
13815
|
disabled: !isDayValid,
|
|
@@ -14001,7 +13843,7 @@ var DayPickerUncontrolled = ({
|
|
|
14001
13843
|
...props
|
|
14002
13844
|
}) => {
|
|
14003
13845
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14004
|
-
return /* @__PURE__ */
|
|
13846
|
+
return /* @__PURE__ */ jsx59(
|
|
14005
13847
|
DayPicker,
|
|
14006
13848
|
{
|
|
14007
13849
|
value,
|
|
@@ -14012,9 +13854,9 @@ var DayPickerUncontrolled = ({
|
|
|
14012
13854
|
};
|
|
14013
13855
|
|
|
14014
13856
|
// src/components/user-interaction/date/YearMonthPicker.tsx
|
|
14015
|
-
import { memo, useCallback as useCallback22, useEffect as useEffect30, useLayoutEffect as useLayoutEffect3, useMemo as useMemo17, useRef as
|
|
13857
|
+
import { memo, useCallback as useCallback22, useEffect as useEffect30, useLayoutEffect as useLayoutEffect3, useMemo as useMemo17, useRef as useRef18, useState as useState31 } from "react";
|
|
14016
13858
|
import clsx30 from "clsx";
|
|
14017
|
-
import { jsx as
|
|
13859
|
+
import { jsx as jsx60, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
14018
13860
|
var YearRow = memo(function YearRow2({
|
|
14019
13861
|
year,
|
|
14020
13862
|
selectedMonthIndex,
|
|
@@ -14023,7 +13865,7 @@ var YearRow = memo(function YearRow2({
|
|
|
14023
13865
|
monthNames,
|
|
14024
13866
|
onSelect
|
|
14025
13867
|
}) {
|
|
14026
|
-
const ref =
|
|
13868
|
+
const ref = useRef18(null);
|
|
14027
13869
|
const isSelectedYear = selectedMonthIndex !== void 0;
|
|
14028
13870
|
const [isExpanded, setIsExpanded] = useState31(false);
|
|
14029
13871
|
useEffect30(() => {
|
|
@@ -14032,22 +13874,22 @@ var YearRow = memo(function YearRow2({
|
|
|
14032
13874
|
}
|
|
14033
13875
|
}, [isSelectedYear]);
|
|
14034
13876
|
const monthGrid = useMemo17(() => equalSizeGroups([...DateUtils.monthsList], 3), []);
|
|
14035
|
-
return /* @__PURE__ */
|
|
13877
|
+
return /* @__PURE__ */ jsxs37(
|
|
14036
13878
|
ExpandableRoot,
|
|
14037
13879
|
{
|
|
14038
13880
|
ref: isSelectedYear ? ref : void 0,
|
|
14039
13881
|
isExpanded,
|
|
14040
13882
|
onExpandedChange: setIsExpanded,
|
|
14041
13883
|
children: [
|
|
14042
|
-
/* @__PURE__ */
|
|
14043
|
-
/* @__PURE__ */
|
|
13884
|
+
/* @__PURE__ */ jsx60(ExpandableHeader, { className: clsx30("px-2", { "text-primary font-bold": isSelectedYear }), children: year }),
|
|
13885
|
+
/* @__PURE__ */ jsx60(ExpandableContent, { className: "gap-y-1 px-2 expadable-content-h-39", children: isExpanded && monthGrid.map((group, groupIdx) => /* @__PURE__ */ jsx60("div", { className: "flex-row-1", children: group.map((month) => {
|
|
14044
13886
|
const monthIndex = DateUtils.monthsList.indexOf(month);
|
|
14045
13887
|
const currentTimestamp = new Date(year, monthIndex).getTime();
|
|
14046
13888
|
const isAfterStart = minTimestamp === void 0 || currentTimestamp >= minTimestamp;
|
|
14047
13889
|
const isBeforeEnd = maxTimestamp === void 0 || currentTimestamp <= maxTimestamp;
|
|
14048
13890
|
const isValid = isAfterStart && isBeforeEnd;
|
|
14049
13891
|
const isSelectedMonth = monthIndex === selectedMonthIndex;
|
|
14050
|
-
return /* @__PURE__ */
|
|
13892
|
+
return /* @__PURE__ */ jsx60(
|
|
14051
13893
|
Button,
|
|
14052
13894
|
{
|
|
14053
13895
|
disabled: !isValid,
|
|
@@ -14095,7 +13937,7 @@ var YearMonthPicker = ({
|
|
|
14095
13937
|
if (!end) return;
|
|
14096
13938
|
return new Date(end.getFullYear(), end.getMonth() + 1, 0).getTime();
|
|
14097
13939
|
}, [end]);
|
|
14098
|
-
const callbackRefs =
|
|
13940
|
+
const callbackRefs = useRef18({ onValueChange, onEditComplete });
|
|
14099
13941
|
useLayoutEffect3(() => {
|
|
14100
13942
|
callbackRefs.current = { onValueChange, onEditComplete };
|
|
14101
13943
|
});
|
|
@@ -14104,7 +13946,7 @@ var YearMonthPicker = ({
|
|
|
14104
13946
|
onValueChange2?.(newDate);
|
|
14105
13947
|
onEditComplete2?.(newDate);
|
|
14106
13948
|
}, []);
|
|
14107
|
-
return /* @__PURE__ */
|
|
13949
|
+
return /* @__PURE__ */ jsx60(
|
|
14108
13950
|
InfiniteScroll,
|
|
14109
13951
|
{
|
|
14110
13952
|
itemCount: years.length,
|
|
@@ -14114,7 +13956,7 @@ var YearMonthPicker = ({
|
|
|
14114
13956
|
const year = years[index];
|
|
14115
13957
|
const isSelectedYear = value.getFullYear() === year;
|
|
14116
13958
|
const selectedMonthIndex = isSelectedYear ? value.getMonth() : void 0;
|
|
14117
|
-
return /* @__PURE__ */
|
|
13959
|
+
return /* @__PURE__ */ jsx60(
|
|
14118
13960
|
YearRow,
|
|
14119
13961
|
{
|
|
14120
13962
|
year,
|
|
@@ -14136,7 +13978,7 @@ var YearMonthPickerUncontrolled = ({
|
|
|
14136
13978
|
...props
|
|
14137
13979
|
}) => {
|
|
14138
13980
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14139
|
-
return /* @__PURE__ */
|
|
13981
|
+
return /* @__PURE__ */ jsx60(
|
|
14140
13982
|
YearMonthPicker,
|
|
14141
13983
|
{
|
|
14142
13984
|
value,
|
|
@@ -14147,7 +13989,7 @@ var YearMonthPickerUncontrolled = ({
|
|
|
14147
13989
|
};
|
|
14148
13990
|
|
|
14149
13991
|
// src/components/user-interaction/date/DatePicker.tsx
|
|
14150
|
-
import { jsx as
|
|
13992
|
+
import { jsx as jsx61, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
14151
13993
|
var DatePicker = ({
|
|
14152
13994
|
value = /* @__PURE__ */ new Date(),
|
|
14153
13995
|
start,
|
|
@@ -14163,9 +14005,9 @@ var DatePicker = ({
|
|
|
14163
14005
|
const { locale } = useLocale();
|
|
14164
14006
|
const [displayedMonth, setDisplayedMonth] = useState32(new Date(value.getFullYear(), value.getMonth(), 1));
|
|
14165
14007
|
const [displayMode, setDisplayMode] = useState32(initialDisplay);
|
|
14166
|
-
return /* @__PURE__ */
|
|
14167
|
-
/* @__PURE__ */
|
|
14168
|
-
/* @__PURE__ */
|
|
14008
|
+
return /* @__PURE__ */ jsxs38("div", { className: clsx31("flex-col-3", className), children: [
|
|
14009
|
+
/* @__PURE__ */ jsxs38("div", { className: "flex-row-2 items-center justify-between", children: [
|
|
14010
|
+
/* @__PURE__ */ jsxs38(
|
|
14169
14011
|
Button,
|
|
14170
14012
|
{
|
|
14171
14013
|
size: "sm",
|
|
@@ -14176,12 +14018,12 @@ var DatePicker = ({
|
|
|
14176
14018
|
onClick: () => setDisplayMode(displayMode === "day" ? "yearMonth" : "day"),
|
|
14177
14019
|
children: [
|
|
14178
14020
|
`${new Intl.DateTimeFormat(LocalizationUtil.localToLanguage(locale), { month: "long" }).format(displayedMonth)} ${displayedMonth.getFullYear()}`,
|
|
14179
|
-
/* @__PURE__ */
|
|
14021
|
+
/* @__PURE__ */ jsx61(ChevronDown4, { size: 16 })
|
|
14180
14022
|
]
|
|
14181
14023
|
}
|
|
14182
14024
|
),
|
|
14183
|
-
displayMode === "day" && /* @__PURE__ */
|
|
14184
|
-
/* @__PURE__ */
|
|
14025
|
+
displayMode === "day" && /* @__PURE__ */ jsxs38("div", { className: "flex-row-2 justify-end", children: [
|
|
14026
|
+
/* @__PURE__ */ jsx61(
|
|
14185
14027
|
Button,
|
|
14186
14028
|
{
|
|
14187
14029
|
size: "sm",
|
|
@@ -14192,10 +14034,10 @@ var DatePicker = ({
|
|
|
14192
14034
|
onValueChange(newDate);
|
|
14193
14035
|
setDisplayedMonth(newDate);
|
|
14194
14036
|
},
|
|
14195
|
-
children: /* @__PURE__ */
|
|
14037
|
+
children: /* @__PURE__ */ jsx61(Calendar, { className: "size-5" })
|
|
14196
14038
|
}
|
|
14197
14039
|
),
|
|
14198
|
-
/* @__PURE__ */
|
|
14040
|
+
/* @__PURE__ */ jsx61(
|
|
14199
14041
|
Button,
|
|
14200
14042
|
{
|
|
14201
14043
|
size: "sm",
|
|
@@ -14203,10 +14045,10 @@ var DatePicker = ({
|
|
|
14203
14045
|
onClick: () => {
|
|
14204
14046
|
setDisplayedMonth(subtractDuration(displayedMonth, { months: 1 }));
|
|
14205
14047
|
},
|
|
14206
|
-
children: /* @__PURE__ */
|
|
14048
|
+
children: /* @__PURE__ */ jsx61(ArrowUp, { size: 20 })
|
|
14207
14049
|
}
|
|
14208
14050
|
),
|
|
14209
|
-
/* @__PURE__ */
|
|
14051
|
+
/* @__PURE__ */ jsx61(
|
|
14210
14052
|
Button,
|
|
14211
14053
|
{
|
|
14212
14054
|
size: "sm",
|
|
@@ -14214,12 +14056,12 @@ var DatePicker = ({
|
|
|
14214
14056
|
onClick: () => {
|
|
14215
14057
|
setDisplayedMonth(addDuration(displayedMonth, { months: 1 }));
|
|
14216
14058
|
},
|
|
14217
|
-
children: /* @__PURE__ */
|
|
14059
|
+
children: /* @__PURE__ */ jsx61(ArrowDown, { size: 20 })
|
|
14218
14060
|
}
|
|
14219
14061
|
)
|
|
14220
14062
|
] })
|
|
14221
14063
|
] }),
|
|
14222
|
-
displayMode === "yearMonth" ? /* @__PURE__ */
|
|
14064
|
+
displayMode === "yearMonth" ? /* @__PURE__ */ jsx61(
|
|
14223
14065
|
YearMonthPicker,
|
|
14224
14066
|
{
|
|
14225
14067
|
...yearMonthPickerProps,
|
|
@@ -14236,7 +14078,7 @@ var DatePicker = ({
|
|
|
14236
14078
|
},
|
|
14237
14079
|
className: "h-60 max-h-60"
|
|
14238
14080
|
}
|
|
14239
|
-
) : /* @__PURE__ */
|
|
14081
|
+
) : /* @__PURE__ */ jsx61(
|
|
14240
14082
|
DayPicker,
|
|
14241
14083
|
{
|
|
14242
14084
|
...dayPickerProps,
|
|
@@ -14258,7 +14100,7 @@ var DatePickerUncontrolled = ({
|
|
|
14258
14100
|
...props
|
|
14259
14101
|
}) => {
|
|
14260
14102
|
const [date, setDate] = useOverwritableState(value, onValueChange);
|
|
14261
|
-
return /* @__PURE__ */
|
|
14103
|
+
return /* @__PURE__ */ jsx61(
|
|
14262
14104
|
DatePicker,
|
|
14263
14105
|
{
|
|
14264
14106
|
...props,
|
|
@@ -14272,8 +14114,8 @@ var DatePickerUncontrolled = ({
|
|
|
14272
14114
|
import clsx32 from "clsx";
|
|
14273
14115
|
|
|
14274
14116
|
// src/components/user-interaction/date/TimePicker.tsx
|
|
14275
|
-
import { useEffect as useEffect31, useRef as
|
|
14276
|
-
import { jsx as
|
|
14117
|
+
import { useEffect as useEffect31, useRef as useRef19 } from "react";
|
|
14118
|
+
import { jsx as jsx62, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
14277
14119
|
var TimePicker = ({
|
|
14278
14120
|
value = /* @__PURE__ */ new Date(),
|
|
14279
14121
|
onValueChange,
|
|
@@ -14282,8 +14124,8 @@ var TimePicker = ({
|
|
|
14282
14124
|
minuteIncrement = "5min",
|
|
14283
14125
|
className
|
|
14284
14126
|
}) => {
|
|
14285
|
-
const minuteRef =
|
|
14286
|
-
const hourRef =
|
|
14127
|
+
const minuteRef = useRef19(null);
|
|
14128
|
+
const hourRef = useRef19(null);
|
|
14287
14129
|
const isPM = value.getHours() > 11;
|
|
14288
14130
|
const hours = is24HourFormat ? range(24) : range(12);
|
|
14289
14131
|
let minutes = range(60);
|
|
@@ -14321,10 +14163,10 @@ var TimePicker = ({
|
|
|
14321
14163
|
onValueChange?.(newDate);
|
|
14322
14164
|
onEditComplete?.(newDate);
|
|
14323
14165
|
};
|
|
14324
|
-
return /* @__PURE__ */
|
|
14325
|
-
/* @__PURE__ */
|
|
14166
|
+
return /* @__PURE__ */ jsxs39("div", { "data-name": "time-picker-container", className, children: [
|
|
14167
|
+
/* @__PURE__ */ jsx62("div", { "data-name": "time-picker-value-column", children: hours.map((hour2) => {
|
|
14326
14168
|
const isSelected = hour2 === value.getHours() - (!is24HourFormat && isPM ? 12 : 0);
|
|
14327
|
-
return /* @__PURE__ */
|
|
14169
|
+
return /* @__PURE__ */ jsx62(
|
|
14328
14170
|
Button,
|
|
14329
14171
|
{
|
|
14330
14172
|
size: "sm",
|
|
@@ -14336,9 +14178,9 @@ var TimePicker = ({
|
|
|
14336
14178
|
hour2
|
|
14337
14179
|
);
|
|
14338
14180
|
}) }),
|
|
14339
|
-
/* @__PURE__ */
|
|
14181
|
+
/* @__PURE__ */ jsx62("div", { "data-name": "time-picker-value-column", children: minutes.map((minute) => {
|
|
14340
14182
|
const isSelected = minute === closestMinute;
|
|
14341
|
-
return /* @__PURE__ */
|
|
14183
|
+
return /* @__PURE__ */ jsx62(
|
|
14342
14184
|
Button,
|
|
14343
14185
|
{
|
|
14344
14186
|
size: "sm",
|
|
@@ -14350,8 +14192,8 @@ var TimePicker = ({
|
|
|
14350
14192
|
minute + minuteIncrement
|
|
14351
14193
|
);
|
|
14352
14194
|
}) }),
|
|
14353
|
-
!is24HourFormat && /* @__PURE__ */
|
|
14354
|
-
/* @__PURE__ */
|
|
14195
|
+
!is24HourFormat && /* @__PURE__ */ jsxs39("div", { "data-name": "time-picker-value-column", children: [
|
|
14196
|
+
/* @__PURE__ */ jsx62(
|
|
14355
14197
|
Button,
|
|
14356
14198
|
{
|
|
14357
14199
|
size: "sm",
|
|
@@ -14360,7 +14202,7 @@ var TimePicker = ({
|
|
|
14360
14202
|
children: "AM"
|
|
14361
14203
|
}
|
|
14362
14204
|
),
|
|
14363
|
-
/* @__PURE__ */
|
|
14205
|
+
/* @__PURE__ */ jsx62(
|
|
14364
14206
|
Button,
|
|
14365
14207
|
{
|
|
14366
14208
|
size: "sm",
|
|
@@ -14378,7 +14220,7 @@ var TimePickerUncontrolled = ({
|
|
|
14378
14220
|
...props
|
|
14379
14221
|
}) => {
|
|
14380
14222
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14381
|
-
return /* @__PURE__ */
|
|
14223
|
+
return /* @__PURE__ */ jsx62(
|
|
14382
14224
|
TimePicker,
|
|
14383
14225
|
{
|
|
14384
14226
|
...props,
|
|
@@ -14389,7 +14231,7 @@ var TimePickerUncontrolled = ({
|
|
|
14389
14231
|
};
|
|
14390
14232
|
|
|
14391
14233
|
// src/components/user-interaction/date/DateTimePicker.tsx
|
|
14392
|
-
import { jsx as
|
|
14234
|
+
import { jsx as jsx63, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
14393
14235
|
var DateTimePicker = ({
|
|
14394
14236
|
value = /* @__PURE__ */ new Date(),
|
|
14395
14237
|
start,
|
|
@@ -14408,7 +14250,7 @@ var DateTimePicker = ({
|
|
|
14408
14250
|
let dateDisplay;
|
|
14409
14251
|
let timeDisplay;
|
|
14410
14252
|
if (useDate) {
|
|
14411
|
-
dateDisplay = /* @__PURE__ */
|
|
14253
|
+
dateDisplay = /* @__PURE__ */ jsx63(
|
|
14412
14254
|
DatePicker,
|
|
14413
14255
|
{
|
|
14414
14256
|
...datePickerProps,
|
|
@@ -14424,7 +14266,7 @@ var DateTimePicker = ({
|
|
|
14424
14266
|
);
|
|
14425
14267
|
}
|
|
14426
14268
|
if (useTime) {
|
|
14427
|
-
timeDisplay = /* @__PURE__ */
|
|
14269
|
+
timeDisplay = /* @__PURE__ */ jsx63(
|
|
14428
14270
|
TimePicker,
|
|
14429
14271
|
{
|
|
14430
14272
|
...timePickerProps,
|
|
@@ -14437,14 +14279,14 @@ var DateTimePicker = ({
|
|
|
14437
14279
|
}
|
|
14438
14280
|
);
|
|
14439
14281
|
}
|
|
14440
|
-
return /* @__PURE__ */
|
|
14282
|
+
return /* @__PURE__ */ jsxs40("div", { className: "flex-row-2 min-h-71 max-h-71", children: [
|
|
14441
14283
|
dateDisplay,
|
|
14442
14284
|
timeDisplay
|
|
14443
14285
|
] });
|
|
14444
14286
|
};
|
|
14445
14287
|
var DateTimePickerUncontrolled = ({ value: initialValue, onValueChange, ...props }) => {
|
|
14446
14288
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14447
|
-
return /* @__PURE__ */
|
|
14289
|
+
return /* @__PURE__ */ jsx63(
|
|
14448
14290
|
DateTimePicker,
|
|
14449
14291
|
{
|
|
14450
14292
|
...props,
|
|
@@ -14455,7 +14297,7 @@ var DateTimePickerUncontrolled = ({ value: initialValue, onValueChange, ...props
|
|
|
14455
14297
|
};
|
|
14456
14298
|
|
|
14457
14299
|
// src/components/user-interaction/date/TimeDisplay.tsx
|
|
14458
|
-
import { jsx as
|
|
14300
|
+
import { jsx as jsx64 } from "react/jsx-runtime";
|
|
14459
14301
|
var TimeDisplay = ({
|
|
14460
14302
|
date,
|
|
14461
14303
|
mode = "daysFromToday"
|
|
@@ -14492,15 +14334,15 @@ var TimeDisplay = ({
|
|
|
14492
14334
|
} else {
|
|
14493
14335
|
fullString = `${date.getDate()}. ${monthToTranslation[date.getMonth()]} ${date.getFullYear()}`;
|
|
14494
14336
|
}
|
|
14495
|
-
return /* @__PURE__ */
|
|
14337
|
+
return /* @__PURE__ */ jsx64("span", { children: fullString });
|
|
14496
14338
|
};
|
|
14497
14339
|
|
|
14498
14340
|
// src/components/user-interaction/input/DateTimeInput.tsx
|
|
14499
|
-
import { useEffect as useEffect32, useMemo as useMemo18, useRef as
|
|
14341
|
+
import { useEffect as useEffect32, useMemo as useMemo18, useRef as useRef20, useState as useState33 } from "react";
|
|
14500
14342
|
import { createPortal as createPortal8 } from "react-dom";
|
|
14501
14343
|
import { CalendarIcon } from "lucide-react";
|
|
14502
14344
|
import clsx33 from "clsx";
|
|
14503
|
-
import { Fragment as Fragment9, jsx as
|
|
14345
|
+
import { Fragment as Fragment9, jsx as jsx65, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
14504
14346
|
var DateTimeInput = ({
|
|
14505
14347
|
value,
|
|
14506
14348
|
onValueChange,
|
|
@@ -14514,8 +14356,8 @@ var DateTimeInput = ({
|
|
|
14514
14356
|
const translation = useHightideTranslation();
|
|
14515
14357
|
const { locale } = useLocale();
|
|
14516
14358
|
const [isOpen, setIsOpen] = useState33(false);
|
|
14517
|
-
const anchorRef =
|
|
14518
|
-
const containerRef =
|
|
14359
|
+
const anchorRef = useRef20(null);
|
|
14360
|
+
const containerRef = useRef20(null);
|
|
14519
14361
|
const position = useFloatingElement({
|
|
14520
14362
|
active: isOpen,
|
|
14521
14363
|
anchorRef,
|
|
@@ -14535,9 +14377,9 @@ var DateTimeInput = ({
|
|
|
14535
14377
|
setIsOpen(false);
|
|
14536
14378
|
}
|
|
14537
14379
|
}, [isReadOnly]);
|
|
14538
|
-
return /* @__PURE__ */
|
|
14539
|
-
/* @__PURE__ */
|
|
14540
|
-
/* @__PURE__ */
|
|
14380
|
+
return /* @__PURE__ */ jsxs41(Fragment9, { children: [
|
|
14381
|
+
/* @__PURE__ */ jsxs41("div", { ...containerProps, ref: anchorRef, className: clsx33("relative w-full", containerProps?.className), children: [
|
|
14382
|
+
/* @__PURE__ */ jsx65(
|
|
14541
14383
|
Input,
|
|
14542
14384
|
{
|
|
14543
14385
|
...props,
|
|
@@ -14555,7 +14397,7 @@ var DateTimeInput = ({
|
|
|
14555
14397
|
)
|
|
14556
14398
|
}
|
|
14557
14399
|
),
|
|
14558
|
-
/* @__PURE__ */
|
|
14400
|
+
/* @__PURE__ */ jsx65(
|
|
14559
14401
|
Button,
|
|
14560
14402
|
{
|
|
14561
14403
|
coloringStyle: "text",
|
|
@@ -14565,12 +14407,12 @@ var DateTimeInput = ({
|
|
|
14565
14407
|
className: "absolute right-1 top-1/2 -translate-y-1/2",
|
|
14566
14408
|
disabled: isReadOnly,
|
|
14567
14409
|
onClick: () => setIsOpen((prevState) => !prevState),
|
|
14568
|
-
children: /* @__PURE__ */
|
|
14410
|
+
children: /* @__PURE__ */ jsx65(CalendarIcon, { className: "size-5" })
|
|
14569
14411
|
}
|
|
14570
14412
|
)
|
|
14571
14413
|
] }),
|
|
14572
|
-
/* @__PURE__ */
|
|
14573
|
-
/* @__PURE__ */
|
|
14414
|
+
/* @__PURE__ */ jsx65(Visibility, { isVisible: isOpen, children: createPortal8(
|
|
14415
|
+
/* @__PURE__ */ jsxs41(
|
|
14574
14416
|
"div",
|
|
14575
14417
|
{
|
|
14576
14418
|
ref: containerRef,
|
|
@@ -14581,7 +14423,7 @@ var DateTimeInput = ({
|
|
|
14581
14423
|
opacity: position ? void 0 : 0
|
|
14582
14424
|
},
|
|
14583
14425
|
children: [
|
|
14584
|
-
/* @__PURE__ */
|
|
14426
|
+
/* @__PURE__ */ jsx65(
|
|
14585
14427
|
DateTimePicker,
|
|
14586
14428
|
{
|
|
14587
14429
|
...pickerProps,
|
|
@@ -14591,8 +14433,8 @@ var DateTimeInput = ({
|
|
|
14591
14433
|
onEditComplete
|
|
14592
14434
|
}
|
|
14593
14435
|
),
|
|
14594
|
-
/* @__PURE__ */
|
|
14595
|
-
/* @__PURE__ */
|
|
14436
|
+
/* @__PURE__ */ jsxs41("div", { className: "flex-row-2 justify-end", children: [
|
|
14437
|
+
/* @__PURE__ */ jsx65(Visibility, { isVisible: !!onRemove && !!value, children: /* @__PURE__ */ jsx65(
|
|
14596
14438
|
Button,
|
|
14597
14439
|
{
|
|
14598
14440
|
size: "md",
|
|
@@ -14605,7 +14447,7 @@ var DateTimeInput = ({
|
|
|
14605
14447
|
children: translation("clear")
|
|
14606
14448
|
}
|
|
14607
14449
|
) }),
|
|
14608
|
-
/* @__PURE__ */
|
|
14450
|
+
/* @__PURE__ */ jsx65(Visibility, { isVisible: !value, children: /* @__PURE__ */ jsx65(
|
|
14609
14451
|
Button,
|
|
14610
14452
|
{
|
|
14611
14453
|
size: "md",
|
|
@@ -14615,7 +14457,7 @@ var DateTimeInput = ({
|
|
|
14615
14457
|
children: translation("cancel")
|
|
14616
14458
|
}
|
|
14617
14459
|
) }),
|
|
14618
|
-
/* @__PURE__ */
|
|
14460
|
+
/* @__PURE__ */ jsx65(
|
|
14619
14461
|
Button,
|
|
14620
14462
|
{
|
|
14621
14463
|
size: "md",
|
|
@@ -14640,7 +14482,7 @@ var DateTimeInputUncontrolled = ({
|
|
|
14640
14482
|
...props
|
|
14641
14483
|
}) => {
|
|
14642
14484
|
const [value, setValue] = useOverwritableState(initialValue);
|
|
14643
|
-
return /* @__PURE__ */
|
|
14485
|
+
return /* @__PURE__ */ jsx65(
|
|
14644
14486
|
DateTimeInput,
|
|
14645
14487
|
{
|
|
14646
14488
|
...props,
|
|
@@ -14658,21 +14500,21 @@ var DateTimeInputUncontrolled = ({
|
|
|
14658
14500
|
};
|
|
14659
14501
|
|
|
14660
14502
|
// src/components/user-interaction/input/InsideLabelInput.tsx
|
|
14661
|
-
import { useId as
|
|
14662
|
-
import { forwardRef as
|
|
14503
|
+
import { useId as useId13 } from "react";
|
|
14504
|
+
import { forwardRef as forwardRef11, useState as useState34 } from "react";
|
|
14663
14505
|
import clsx34 from "clsx";
|
|
14664
|
-
import { jsx as
|
|
14665
|
-
var InsideLabelInput =
|
|
14506
|
+
import { jsx as jsx66, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
14507
|
+
var InsideLabelInput = forwardRef11(function InsideLabelInput2({
|
|
14666
14508
|
id: customId,
|
|
14667
14509
|
label,
|
|
14668
14510
|
...props
|
|
14669
14511
|
}, forwardedRef) {
|
|
14670
14512
|
const { value } = props;
|
|
14671
14513
|
const [isFocused, setIsFocused] = useState34(false);
|
|
14672
|
-
const generatedId =
|
|
14514
|
+
const generatedId = useId13();
|
|
14673
14515
|
const id = customId ?? generatedId;
|
|
14674
|
-
return /* @__PURE__ */
|
|
14675
|
-
/* @__PURE__ */
|
|
14516
|
+
return /* @__PURE__ */ jsxs42("div", { className: clsx34("relative"), children: [
|
|
14517
|
+
/* @__PURE__ */ jsx66(
|
|
14676
14518
|
Input,
|
|
14677
14519
|
{
|
|
14678
14520
|
...props,
|
|
@@ -14690,7 +14532,7 @@ var InsideLabelInput = forwardRef13(function InsideLabelInput2({
|
|
|
14690
14532
|
}
|
|
14691
14533
|
}
|
|
14692
14534
|
),
|
|
14693
|
-
/* @__PURE__ */
|
|
14535
|
+
/* @__PURE__ */ jsx66(
|
|
14694
14536
|
"label",
|
|
14695
14537
|
{
|
|
14696
14538
|
id: id + "-label",
|
|
@@ -14712,7 +14554,7 @@ var InsideLabelInputUncontrolled = ({
|
|
|
14712
14554
|
...props
|
|
14713
14555
|
}) => {
|
|
14714
14556
|
const [value, setValue] = useOverwritableState(initialValue, props.onValueChange);
|
|
14715
|
-
return /* @__PURE__ */
|
|
14557
|
+
return /* @__PURE__ */ jsx66(
|
|
14716
14558
|
InsideLabelInput,
|
|
14717
14559
|
{
|
|
14718
14560
|
...props,
|
|
@@ -14725,7 +14567,7 @@ var InsideLabelInputUncontrolled = ({
|
|
|
14725
14567
|
// src/components/user-interaction/input/SearchBar.tsx
|
|
14726
14568
|
import { Search } from "lucide-react";
|
|
14727
14569
|
import { clsx as clsx35 } from "clsx";
|
|
14728
|
-
import { jsx as
|
|
14570
|
+
import { jsx as jsx67, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
14729
14571
|
var SearchBar = ({
|
|
14730
14572
|
value: initialValue,
|
|
14731
14573
|
onSearch,
|
|
@@ -14736,8 +14578,8 @@ var SearchBar = ({
|
|
|
14736
14578
|
}) => {
|
|
14737
14579
|
const translation = useHightideTranslation();
|
|
14738
14580
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14739
|
-
return /* @__PURE__ */
|
|
14740
|
-
/* @__PURE__ */
|
|
14581
|
+
return /* @__PURE__ */ jsxs43("div", { ...containerProps, className: clsx35("relative", containerProps?.className), children: [
|
|
14582
|
+
/* @__PURE__ */ jsx67(
|
|
14741
14583
|
InputUncontrolled,
|
|
14742
14584
|
{
|
|
14743
14585
|
...inputProps,
|
|
@@ -14748,7 +14590,7 @@ var SearchBar = ({
|
|
|
14748
14590
|
className: clsx35("pr-10 w-full", inputProps.className)
|
|
14749
14591
|
}
|
|
14750
14592
|
),
|
|
14751
|
-
/* @__PURE__ */
|
|
14593
|
+
/* @__PURE__ */ jsx67(
|
|
14752
14594
|
Button,
|
|
14753
14595
|
{
|
|
14754
14596
|
...searchButtonProps,
|
|
@@ -14758,33 +14600,33 @@ var SearchBar = ({
|
|
|
14758
14600
|
coloringStyle: "text",
|
|
14759
14601
|
onClick: () => onSearch(value),
|
|
14760
14602
|
className: clsx35("absolute right-1 top-1/2 -translate-y-1/2", searchButtonProps?.className),
|
|
14761
|
-
children: /* @__PURE__ */
|
|
14603
|
+
children: /* @__PURE__ */ jsx67(Search, { className: "w-full h-full" })
|
|
14762
14604
|
}
|
|
14763
14605
|
)
|
|
14764
14606
|
] });
|
|
14765
14607
|
};
|
|
14766
14608
|
|
|
14767
14609
|
// src/components/user-interaction/input/ToggleableInput.tsx
|
|
14768
|
-
import { forwardRef as
|
|
14610
|
+
import { forwardRef as forwardRef12, useEffect as useEffect33, useImperativeHandle as useImperativeHandle4, useRef as useRef21, useState as useState35 } from "react";
|
|
14769
14611
|
import { Pencil } from "lucide-react";
|
|
14770
14612
|
import clsx36 from "clsx";
|
|
14771
|
-
import { jsx as
|
|
14772
|
-
var ToggleableInput =
|
|
14613
|
+
import { jsx as jsx68, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
14614
|
+
var ToggleableInput = forwardRef12(function ToggleableInput2({
|
|
14773
14615
|
value,
|
|
14774
14616
|
initialState = "display",
|
|
14775
14617
|
editCompleteOptions,
|
|
14776
14618
|
...props
|
|
14777
14619
|
}, forwardedRef) {
|
|
14778
14620
|
const [isEditing, setIsEditing] = useState35(initialState !== "display");
|
|
14779
|
-
const innerRef =
|
|
14780
|
-
|
|
14621
|
+
const innerRef = useRef21(null);
|
|
14622
|
+
useImperativeHandle4(forwardedRef, () => innerRef.current);
|
|
14781
14623
|
useEffect33(() => {
|
|
14782
14624
|
if (isEditing) {
|
|
14783
14625
|
innerRef.current?.focus();
|
|
14784
14626
|
}
|
|
14785
14627
|
}, [isEditing]);
|
|
14786
|
-
return /* @__PURE__ */
|
|
14787
|
-
/* @__PURE__ */
|
|
14628
|
+
return /* @__PURE__ */ jsxs44("div", { className: clsx36("relative flex-row-2", { "flex-1": isEditing }), children: [
|
|
14629
|
+
/* @__PURE__ */ jsx68(
|
|
14788
14630
|
Input,
|
|
14789
14631
|
{
|
|
14790
14632
|
...props,
|
|
@@ -14810,9 +14652,9 @@ var ToggleableInput = forwardRef14(function ToggleableInput2({
|
|
|
14810
14652
|
})
|
|
14811
14653
|
}
|
|
14812
14654
|
),
|
|
14813
|
-
!isEditing && /* @__PURE__ */
|
|
14814
|
-
/* @__PURE__ */
|
|
14815
|
-
/* @__PURE__ */
|
|
14655
|
+
!isEditing && /* @__PURE__ */ jsxs44("div", { className: "absolute left-0 flex-row-2 items-center pointer-events-none touch-none w-full overflow-hidden", children: [
|
|
14656
|
+
/* @__PURE__ */ jsx68("span", { className: clsx36(" truncate"), children: value }),
|
|
14657
|
+
/* @__PURE__ */ jsx68(Pencil, { className: clsx36(`size-force-4`, { "text-transparent": isEditing }) })
|
|
14816
14658
|
] })
|
|
14817
14659
|
] });
|
|
14818
14660
|
});
|
|
@@ -14822,7 +14664,7 @@ var ToggleableInputUncontrolled = ({
|
|
|
14822
14664
|
...restProps
|
|
14823
14665
|
}) => {
|
|
14824
14666
|
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14825
|
-
return /* @__PURE__ */
|
|
14667
|
+
return /* @__PURE__ */ jsx68(
|
|
14826
14668
|
ToggleableInput,
|
|
14827
14669
|
{
|
|
14828
14670
|
value,
|
|
@@ -14837,7 +14679,7 @@ import { Check as Check3 } from "lucide-react";
|
|
|
14837
14679
|
|
|
14838
14680
|
// src/components/user-interaction/properties/PropertyBase.tsx
|
|
14839
14681
|
import { AlertTriangle, Trash, X as X3 } from "lucide-react";
|
|
14840
|
-
import { jsx as
|
|
14682
|
+
import { jsx as jsx69, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
14841
14683
|
var PropertyBase = ({
|
|
14842
14684
|
name: name2,
|
|
14843
14685
|
children,
|
|
@@ -14856,29 +14698,29 @@ var PropertyBase = ({
|
|
|
14856
14698
|
const isClearEnabled = allowClear && !readOnly;
|
|
14857
14699
|
const isRemoveEnabled = allowRemove && !readOnly;
|
|
14858
14700
|
const showActionsContainer = isClearEnabled || isRemoveEnabled;
|
|
14859
|
-
return /* @__PURE__ */
|
|
14701
|
+
return /* @__PURE__ */ jsxs45(
|
|
14860
14702
|
"div",
|
|
14861
14703
|
{
|
|
14862
14704
|
className: className ? `group/property ${className}` : "group/property",
|
|
14863
14705
|
"data-name": "property-root",
|
|
14864
14706
|
"data-invalid": PropsUtil.dataAttributes.bool(invalid),
|
|
14865
14707
|
children: [
|
|
14866
|
-
/* @__PURE__ */
|
|
14708
|
+
/* @__PURE__ */ jsxs45(
|
|
14867
14709
|
"div",
|
|
14868
14710
|
{
|
|
14869
14711
|
className,
|
|
14870
14712
|
"data-name": "property-title",
|
|
14871
14713
|
"data-invalid": PropsUtil.dataAttributes.bool(invalid),
|
|
14872
14714
|
children: [
|
|
14873
|
-
/* @__PURE__ */
|
|
14874
|
-
/* @__PURE__ */
|
|
14875
|
-
/* @__PURE__ */
|
|
14715
|
+
/* @__PURE__ */ jsx69(Tooltip, { tooltip: name2, containerClassName: "min-w-0", children: /* @__PURE__ */ jsxs45("div", { className: "flex-row-1 items-center", children: [
|
|
14716
|
+
/* @__PURE__ */ jsx69("div", { "data-name": "property-title-icon", children: icon }),
|
|
14717
|
+
/* @__PURE__ */ jsx69("span", { "data-name": "property-title-text", children: name2 })
|
|
14876
14718
|
] }) }),
|
|
14877
|
-
invalid && /* @__PURE__ */
|
|
14719
|
+
invalid && /* @__PURE__ */ jsx69(AlertTriangle, { className: "size-force-6" })
|
|
14878
14720
|
]
|
|
14879
14721
|
}
|
|
14880
14722
|
),
|
|
14881
|
-
/* @__PURE__ */
|
|
14723
|
+
/* @__PURE__ */ jsxs45(
|
|
14882
14724
|
"div",
|
|
14883
14725
|
{
|
|
14884
14726
|
className,
|
|
@@ -14886,8 +14728,8 @@ var PropertyBase = ({
|
|
|
14886
14728
|
"data-invalid": PropsUtil.dataAttributes.bool(invalid),
|
|
14887
14729
|
children: [
|
|
14888
14730
|
children({ required, hasValue, invalid }),
|
|
14889
|
-
showActionsContainer && /* @__PURE__ */
|
|
14890
|
-
isClearEnabled && /* @__PURE__ */
|
|
14731
|
+
showActionsContainer && /* @__PURE__ */ jsxs45("div", { "data-name": "property-actions", children: [
|
|
14732
|
+
isClearEnabled && /* @__PURE__ */ jsx69(Tooltip, { tooltip: translation("clearValue"), children: /* @__PURE__ */ jsx69(
|
|
14891
14733
|
Button,
|
|
14892
14734
|
{
|
|
14893
14735
|
onClick: onValueClear,
|
|
@@ -14896,10 +14738,10 @@ var PropertyBase = ({
|
|
|
14896
14738
|
coloringStyle: "text",
|
|
14897
14739
|
layout: "icon",
|
|
14898
14740
|
size: "sm",
|
|
14899
|
-
children: /* @__PURE__ */
|
|
14741
|
+
children: /* @__PURE__ */ jsx69(X3, { className: "size-force-5" })
|
|
14900
14742
|
}
|
|
14901
14743
|
) }),
|
|
14902
|
-
isRemoveEnabled && /* @__PURE__ */
|
|
14744
|
+
isRemoveEnabled && /* @__PURE__ */ jsx69(Tooltip, { tooltip: translation("removeProperty"), children: /* @__PURE__ */ jsx69(
|
|
14903
14745
|
Button,
|
|
14904
14746
|
{
|
|
14905
14747
|
onClick: onRemove,
|
|
@@ -14907,7 +14749,7 @@ var PropertyBase = ({
|
|
|
14907
14749
|
coloringStyle: "text",
|
|
14908
14750
|
layout: "icon",
|
|
14909
14751
|
size: "sm",
|
|
14910
|
-
children: /* @__PURE__ */
|
|
14752
|
+
children: /* @__PURE__ */ jsx69(Trash, { className: "size-force-5" })
|
|
14911
14753
|
}
|
|
14912
14754
|
) })
|
|
14913
14755
|
] })
|
|
@@ -14920,7 +14762,7 @@ var PropertyBase = ({
|
|
|
14920
14762
|
};
|
|
14921
14763
|
|
|
14922
14764
|
// src/components/user-interaction/properties/CheckboxProperty.tsx
|
|
14923
|
-
import { jsx as
|
|
14765
|
+
import { jsx as jsx70, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
14924
14766
|
var CheckboxProperty = ({
|
|
14925
14767
|
value,
|
|
14926
14768
|
onValueChange,
|
|
@@ -14929,15 +14771,15 @@ var CheckboxProperty = ({
|
|
|
14929
14771
|
...baseProps
|
|
14930
14772
|
}) => {
|
|
14931
14773
|
const translation = useHightideTranslation();
|
|
14932
|
-
return /* @__PURE__ */
|
|
14774
|
+
return /* @__PURE__ */ jsx70(
|
|
14933
14775
|
PropertyBase,
|
|
14934
14776
|
{
|
|
14935
14777
|
...baseProps,
|
|
14936
14778
|
hasValue: value !== void 0,
|
|
14937
14779
|
readOnly,
|
|
14938
|
-
icon: /* @__PURE__ */
|
|
14939
|
-
children: () => /* @__PURE__ */
|
|
14940
|
-
/* @__PURE__ */
|
|
14780
|
+
icon: /* @__PURE__ */ jsx70(Check3, { size: 24 }),
|
|
14781
|
+
children: () => /* @__PURE__ */ jsxs46("div", { className: "flex-row-2 items-center", children: [
|
|
14782
|
+
/* @__PURE__ */ jsx70(
|
|
14941
14783
|
Button,
|
|
14942
14784
|
{
|
|
14943
14785
|
color: value ? "positive" : "neutral",
|
|
@@ -14950,7 +14792,7 @@ var CheckboxProperty = ({
|
|
|
14950
14792
|
children: translation("yes")
|
|
14951
14793
|
}
|
|
14952
14794
|
),
|
|
14953
|
-
/* @__PURE__ */
|
|
14795
|
+
/* @__PURE__ */ jsx70(
|
|
14954
14796
|
Button,
|
|
14955
14797
|
{
|
|
14956
14798
|
color: !value && value !== void 0 ? "negative" : "neutral",
|
|
@@ -14970,7 +14812,7 @@ var CheckboxProperty = ({
|
|
|
14970
14812
|
|
|
14971
14813
|
// src/components/user-interaction/properties/DateProperty.tsx
|
|
14972
14814
|
import { CalendarDays } from "lucide-react";
|
|
14973
|
-
import { jsx as
|
|
14815
|
+
import { jsx as jsx71 } from "react/jsx-runtime";
|
|
14974
14816
|
var DateProperty = ({
|
|
14975
14817
|
value,
|
|
14976
14818
|
onValueChange,
|
|
@@ -14980,13 +14822,13 @@ var DateProperty = ({
|
|
|
14980
14822
|
...baseProps
|
|
14981
14823
|
}) => {
|
|
14982
14824
|
const hasValue = !!value;
|
|
14983
|
-
return /* @__PURE__ */
|
|
14825
|
+
return /* @__PURE__ */ jsx71(
|
|
14984
14826
|
PropertyBase,
|
|
14985
14827
|
{
|
|
14986
14828
|
...baseProps,
|
|
14987
14829
|
hasValue,
|
|
14988
|
-
icon: /* @__PURE__ */
|
|
14989
|
-
children: ({ invalid }) => /* @__PURE__ */
|
|
14830
|
+
icon: /* @__PURE__ */ jsx71(CalendarDays, { size: 24 }),
|
|
14831
|
+
children: ({ invalid }) => /* @__PURE__ */ jsx71(
|
|
14990
14832
|
DateTimeInput,
|
|
14991
14833
|
{
|
|
14992
14834
|
value,
|
|
@@ -15004,7 +14846,129 @@ var DateProperty = ({
|
|
|
15004
14846
|
|
|
15005
14847
|
// src/components/user-interaction/properties/MultiSelectProperty.tsx
|
|
15006
14848
|
import { List } from "lucide-react";
|
|
15007
|
-
|
|
14849
|
+
|
|
14850
|
+
// src/components/user-interaction/select/MultiSelectChipDisplay.tsx
|
|
14851
|
+
import { forwardRef as forwardRef13, useEffect as useEffect34, useImperativeHandle as useImperativeHandle5, useRef as useRef22 } from "react";
|
|
14852
|
+
import { XIcon as XIcon2, Plus } from "lucide-react";
|
|
14853
|
+
import { jsx as jsx72, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
14854
|
+
var MultiSelectChipDisplayButton = forwardRef13(function MultiSelectChipDisplayButton2({
|
|
14855
|
+
id,
|
|
14856
|
+
...props
|
|
14857
|
+
}, ref) {
|
|
14858
|
+
const { state, trigger, item, ids, setIds } = useSelectContext();
|
|
14859
|
+
const { register, unregister, toggleOpen } = trigger;
|
|
14860
|
+
useEffect34(() => {
|
|
14861
|
+
if (id) {
|
|
14862
|
+
setIds((prev) => ({
|
|
14863
|
+
...prev,
|
|
14864
|
+
trigger: id
|
|
14865
|
+
}));
|
|
14866
|
+
}
|
|
14867
|
+
}, [id, setIds]);
|
|
14868
|
+
const innerRef = useRef22(null);
|
|
14869
|
+
useImperativeHandle5(ref, () => innerRef.current);
|
|
14870
|
+
useEffect34(() => {
|
|
14871
|
+
register(innerRef);
|
|
14872
|
+
return () => unregister();
|
|
14873
|
+
}, [register, unregister]);
|
|
14874
|
+
const disabled = !!props?.disabled || !!state.disabled;
|
|
14875
|
+
const invalid = state.invalid;
|
|
14876
|
+
return /* @__PURE__ */ jsxs47(
|
|
14877
|
+
"div",
|
|
14878
|
+
{
|
|
14879
|
+
...props,
|
|
14880
|
+
ref: innerRef,
|
|
14881
|
+
onClick: (event) => {
|
|
14882
|
+
toggleOpen();
|
|
14883
|
+
props.onClick?.(event);
|
|
14884
|
+
},
|
|
14885
|
+
"data-name": props["data-name"] ?? "select-button-chips",
|
|
14886
|
+
"data-value": state.value.length > 0 ? "" : void 0,
|
|
14887
|
+
"data-disabled": disabled ? "" : void 0,
|
|
14888
|
+
"data-invalid": invalid ? "" : void 0,
|
|
14889
|
+
"aria-invalid": invalid,
|
|
14890
|
+
"aria-disabled": disabled,
|
|
14891
|
+
children: [
|
|
14892
|
+
state.selectedOptions.map(({ value, label }) => /* @__PURE__ */ jsxs47(Chip, { className: "gap-x-2", children: [
|
|
14893
|
+
label,
|
|
14894
|
+
/* @__PURE__ */ jsx72(
|
|
14895
|
+
Button,
|
|
14896
|
+
{
|
|
14897
|
+
onClick: () => {
|
|
14898
|
+
item.toggleSelection(value, false);
|
|
14899
|
+
},
|
|
14900
|
+
size: "xs",
|
|
14901
|
+
color: "negative",
|
|
14902
|
+
coloringStyle: "text",
|
|
14903
|
+
layout: "icon",
|
|
14904
|
+
className: "flex-row-0 items-center",
|
|
14905
|
+
children: /* @__PURE__ */ jsx72(XIcon2, { className: "size-5" })
|
|
14906
|
+
}
|
|
14907
|
+
)
|
|
14908
|
+
] }, value)),
|
|
14909
|
+
/* @__PURE__ */ jsx72(
|
|
14910
|
+
Button,
|
|
14911
|
+
{
|
|
14912
|
+
id: ids.trigger,
|
|
14913
|
+
onClick: (event) => {
|
|
14914
|
+
event.stopPropagation();
|
|
14915
|
+
toggleOpen();
|
|
14916
|
+
},
|
|
14917
|
+
onKeyDown: (event) => {
|
|
14918
|
+
switch (event.key) {
|
|
14919
|
+
case "ArrowDown":
|
|
14920
|
+
toggleOpen(true, { highlightStartPositionBehavior: "first" });
|
|
14921
|
+
break;
|
|
14922
|
+
case "ArrowUp":
|
|
14923
|
+
toggleOpen(true, { highlightStartPositionBehavior: "last" });
|
|
14924
|
+
}
|
|
14925
|
+
},
|
|
14926
|
+
layout: "icon",
|
|
14927
|
+
size: "sm",
|
|
14928
|
+
color: "neutral",
|
|
14929
|
+
"aria-invalid": invalid,
|
|
14930
|
+
"aria-disabled": disabled,
|
|
14931
|
+
"aria-haspopup": "listbox",
|
|
14932
|
+
"aria-expanded": state.isOpen,
|
|
14933
|
+
"aria-controls": state.isOpen ? ids.content : void 0,
|
|
14934
|
+
className: "size-9",
|
|
14935
|
+
children: /* @__PURE__ */ jsx72(Plus, {})
|
|
14936
|
+
}
|
|
14937
|
+
)
|
|
14938
|
+
]
|
|
14939
|
+
}
|
|
14940
|
+
);
|
|
14941
|
+
});
|
|
14942
|
+
var MultiSelectChipDisplay = forwardRef13(function MultiSelectChipDisplay2({
|
|
14943
|
+
children,
|
|
14944
|
+
contentPanelProps,
|
|
14945
|
+
chipDisplayProps,
|
|
14946
|
+
...props
|
|
14947
|
+
}, ref) {
|
|
14948
|
+
return /* @__PURE__ */ jsxs47(MultiSelectRoot, { ...props, children: [
|
|
14949
|
+
/* @__PURE__ */ jsx72(MultiSelectChipDisplayButton, { ref, ...chipDisplayProps }),
|
|
14950
|
+
/* @__PURE__ */ jsx72(MultiSelectContent, { ...contentPanelProps, children })
|
|
14951
|
+
] });
|
|
14952
|
+
});
|
|
14953
|
+
var MultiSelectChipDisplayUncontrolled = forwardRef13(function MultiSelectChipDisplayUncontrolled2({
|
|
14954
|
+
value: initialValue,
|
|
14955
|
+
onValueChange,
|
|
14956
|
+
...props
|
|
14957
|
+
}, ref) {
|
|
14958
|
+
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
14959
|
+
return /* @__PURE__ */ jsx72(
|
|
14960
|
+
MultiSelectChipDisplay,
|
|
14961
|
+
{
|
|
14962
|
+
...props,
|
|
14963
|
+
ref,
|
|
14964
|
+
value,
|
|
14965
|
+
onValueChange: setValue
|
|
14966
|
+
}
|
|
14967
|
+
);
|
|
14968
|
+
});
|
|
14969
|
+
|
|
14970
|
+
// src/components/user-interaction/properties/MultiSelectProperty.tsx
|
|
14971
|
+
import { jsx as jsx73 } from "react/jsx-runtime";
|
|
15008
14972
|
var MultiSelectProperty = ({
|
|
15009
14973
|
children,
|
|
15010
14974
|
value,
|
|
@@ -15013,18 +14977,18 @@ var MultiSelectProperty = ({
|
|
|
15013
14977
|
...props
|
|
15014
14978
|
}) => {
|
|
15015
14979
|
const hasValue = value.length > 0;
|
|
15016
|
-
return /* @__PURE__ */
|
|
14980
|
+
return /* @__PURE__ */ jsx73(
|
|
15017
14981
|
PropertyBase,
|
|
15018
14982
|
{
|
|
15019
14983
|
...props,
|
|
15020
14984
|
hasValue,
|
|
15021
|
-
icon: /* @__PURE__ */
|
|
15022
|
-
children: ({ invalid }) => /* @__PURE__ */
|
|
14985
|
+
icon: /* @__PURE__ */ jsx73(List, { size: 24 }),
|
|
14986
|
+
children: ({ invalid }) => /* @__PURE__ */ jsx73(
|
|
15023
14987
|
"div",
|
|
15024
14988
|
{
|
|
15025
14989
|
"data-name": "property-input-wrapper",
|
|
15026
14990
|
"data-invalid": PropsUtil.dataAttributes.bool(invalid),
|
|
15027
|
-
children: /* @__PURE__ */
|
|
14991
|
+
children: /* @__PURE__ */ jsx73(
|
|
15028
14992
|
MultiSelectChipDisplay,
|
|
15029
14993
|
{
|
|
15030
14994
|
value,
|
|
@@ -15050,7 +15014,7 @@ var MultiSelectProperty = ({
|
|
|
15050
15014
|
|
|
15051
15015
|
// src/components/user-interaction/properties/NumberProperty.tsx
|
|
15052
15016
|
import { Binary } from "lucide-react";
|
|
15053
|
-
import { jsx as
|
|
15017
|
+
import { jsx as jsx74, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
15054
15018
|
var NumberProperty = ({
|
|
15055
15019
|
value,
|
|
15056
15020
|
onRemove,
|
|
@@ -15062,20 +15026,20 @@ var NumberProperty = ({
|
|
|
15062
15026
|
}) => {
|
|
15063
15027
|
const translation = useHightideTranslation();
|
|
15064
15028
|
const hasValue = value !== void 0;
|
|
15065
|
-
return /* @__PURE__ */
|
|
15029
|
+
return /* @__PURE__ */ jsx74(
|
|
15066
15030
|
PropertyBase,
|
|
15067
15031
|
{
|
|
15068
15032
|
...baseProps,
|
|
15069
15033
|
onRemove,
|
|
15070
15034
|
hasValue,
|
|
15071
|
-
icon: /* @__PURE__ */
|
|
15072
|
-
children: ({ invalid }) => /* @__PURE__ */
|
|
15035
|
+
icon: /* @__PURE__ */ jsx74(Binary, { size: 24 }),
|
|
15036
|
+
children: ({ invalid }) => /* @__PURE__ */ jsxs48(
|
|
15073
15037
|
"div",
|
|
15074
15038
|
{
|
|
15075
15039
|
"data-name": "property-input-wrapper",
|
|
15076
15040
|
"data-invalid": PropsUtil.dataAttributes.bool(invalid),
|
|
15077
15041
|
children: [
|
|
15078
|
-
/* @__PURE__ */
|
|
15042
|
+
/* @__PURE__ */ jsx74(
|
|
15079
15043
|
Input,
|
|
15080
15044
|
{
|
|
15081
15045
|
className: "w-full pr-8",
|
|
@@ -15103,7 +15067,7 @@ var NumberProperty = ({
|
|
|
15103
15067
|
}
|
|
15104
15068
|
}
|
|
15105
15069
|
),
|
|
15106
|
-
suffix && /* @__PURE__ */
|
|
15070
|
+
suffix && /* @__PURE__ */ jsx74(
|
|
15107
15071
|
"span",
|
|
15108
15072
|
{
|
|
15109
15073
|
"data-name": "property-suffix",
|
|
@@ -15120,7 +15084,7 @@ var NumberProperty = ({
|
|
|
15120
15084
|
|
|
15121
15085
|
// src/components/user-interaction/properties/SelectProperty.tsx
|
|
15122
15086
|
import { List as List2 } from "lucide-react";
|
|
15123
|
-
import { jsx as
|
|
15087
|
+
import { jsx as jsx75 } from "react/jsx-runtime";
|
|
15124
15088
|
var SingleSelectProperty = ({
|
|
15125
15089
|
children,
|
|
15126
15090
|
value,
|
|
@@ -15129,18 +15093,18 @@ var SingleSelectProperty = ({
|
|
|
15129
15093
|
...props
|
|
15130
15094
|
}) => {
|
|
15131
15095
|
const hasValue = value !== void 0;
|
|
15132
|
-
return /* @__PURE__ */
|
|
15096
|
+
return /* @__PURE__ */ jsx75(
|
|
15133
15097
|
PropertyBase,
|
|
15134
15098
|
{
|
|
15135
15099
|
...props,
|
|
15136
15100
|
hasValue,
|
|
15137
|
-
icon: /* @__PURE__ */
|
|
15138
|
-
children: ({ invalid }) => /* @__PURE__ */
|
|
15101
|
+
icon: /* @__PURE__ */ jsx75(List2, { size: 24 }),
|
|
15102
|
+
children: ({ invalid }) => /* @__PURE__ */ jsx75(
|
|
15139
15103
|
"div",
|
|
15140
15104
|
{
|
|
15141
15105
|
"data-name": "property-input-wrapper",
|
|
15142
15106
|
"data-invalid": PropsUtil.dataAttributes.bool(invalid),
|
|
15143
|
-
children: /* @__PURE__ */
|
|
15107
|
+
children: /* @__PURE__ */ jsx75(
|
|
15144
15108
|
Select,
|
|
15145
15109
|
{
|
|
15146
15110
|
value,
|
|
@@ -15163,7 +15127,7 @@ var SingleSelectProperty = ({
|
|
|
15163
15127
|
|
|
15164
15128
|
// src/components/user-interaction/properties/TextProperty.tsx
|
|
15165
15129
|
import { Text } from "lucide-react";
|
|
15166
|
-
import { jsx as
|
|
15130
|
+
import { jsx as jsx76 } from "react/jsx-runtime";
|
|
15167
15131
|
var TextProperty = ({
|
|
15168
15132
|
value,
|
|
15169
15133
|
readOnly,
|
|
@@ -15174,14 +15138,14 @@ var TextProperty = ({
|
|
|
15174
15138
|
}) => {
|
|
15175
15139
|
const translation = useHightideTranslation();
|
|
15176
15140
|
const hasValue = value !== void 0;
|
|
15177
|
-
return /* @__PURE__ */
|
|
15141
|
+
return /* @__PURE__ */ jsx76(
|
|
15178
15142
|
PropertyBase,
|
|
15179
15143
|
{
|
|
15180
15144
|
...baseProps,
|
|
15181
15145
|
onRemove,
|
|
15182
15146
|
hasValue,
|
|
15183
|
-
icon: /* @__PURE__ */
|
|
15184
|
-
children: ({ invalid }) => /* @__PURE__ */
|
|
15147
|
+
icon: /* @__PURE__ */ jsx76(Text, { size: 24 }),
|
|
15148
|
+
children: ({ invalid }) => /* @__PURE__ */ jsx76(
|
|
15185
15149
|
Textarea,
|
|
15186
15150
|
{
|
|
15187
15151
|
className: "w-full",
|
|
@@ -15211,6 +15175,37 @@ var TextProperty = ({
|
|
|
15211
15175
|
);
|
|
15212
15176
|
};
|
|
15213
15177
|
|
|
15178
|
+
// src/components/user-interaction/select/MultiSelect.tsx
|
|
15179
|
+
import { forwardRef as forwardRef14 } from "react";
|
|
15180
|
+
import { jsx as jsx77, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
15181
|
+
var MultiSelect = forwardRef14(function MultiSelect2({
|
|
15182
|
+
children,
|
|
15183
|
+
contentPanelProps,
|
|
15184
|
+
buttonProps,
|
|
15185
|
+
...props
|
|
15186
|
+
}, ref) {
|
|
15187
|
+
return /* @__PURE__ */ jsxs49(MultiSelectRoot, { ...props, children: [
|
|
15188
|
+
/* @__PURE__ */ jsx77(MultiSelectButton, { ref, ...buttonProps }),
|
|
15189
|
+
/* @__PURE__ */ jsx77(MultiSelectContent, { ...contentPanelProps, children })
|
|
15190
|
+
] });
|
|
15191
|
+
});
|
|
15192
|
+
var MultiSelectUncontrolled = forwardRef14(function MultiSelectUncontrolled2({
|
|
15193
|
+
value: initialValue,
|
|
15194
|
+
onValueChange,
|
|
15195
|
+
...props
|
|
15196
|
+
}, ref) {
|
|
15197
|
+
const [value, setValue] = useOverwritableState(initialValue, onValueChange);
|
|
15198
|
+
return /* @__PURE__ */ jsx77(
|
|
15199
|
+
MultiSelect,
|
|
15200
|
+
{
|
|
15201
|
+
...props,
|
|
15202
|
+
ref,
|
|
15203
|
+
value,
|
|
15204
|
+
onValueChange: setValue
|
|
15205
|
+
}
|
|
15206
|
+
);
|
|
15207
|
+
});
|
|
15208
|
+
|
|
15214
15209
|
// src/components/utils/FocusTrap.tsx
|
|
15215
15210
|
import { useRef as useRef23 } from "react";
|
|
15216
15211
|
import { useImperativeHandle as useImperativeHandle6 } from "react";
|
|
@@ -15229,7 +15224,7 @@ var FocusTrap = forwardRef15(function FocusTrap2({
|
|
|
15229
15224
|
});
|
|
15230
15225
|
|
|
15231
15226
|
// src/components/utils/Transition.tsx
|
|
15232
|
-
import { useEffect as
|
|
15227
|
+
import { useEffect as useEffect35, useState as useState36 } from "react";
|
|
15233
15228
|
function Transition({
|
|
15234
15229
|
children,
|
|
15235
15230
|
show,
|
|
@@ -15238,7 +15233,7 @@ function Transition({
|
|
|
15238
15233
|
const [isOpen, setIsOpen] = useState36(show);
|
|
15239
15234
|
const [isTransitioning, setIsTransitioning] = useState36(!isOpen);
|
|
15240
15235
|
const isUsingReducedMotion = typeof window !== "undefined" && typeof window.matchMedia === "function" ? window.matchMedia("(prefers-reduced-motion: reduce)").matches : true;
|
|
15241
|
-
|
|
15236
|
+
useEffect35(() => {
|
|
15242
15237
|
setIsOpen(show);
|
|
15243
15238
|
setIsTransitioning(true);
|
|
15244
15239
|
}, [show]);
|
|
@@ -15274,7 +15269,7 @@ var HightideProvider = ({
|
|
|
15274
15269
|
};
|
|
15275
15270
|
|
|
15276
15271
|
// src/hooks/focus/useFocusGuards.ts
|
|
15277
|
-
import { useEffect as
|
|
15272
|
+
import { useEffect as useEffect36 } from "react";
|
|
15278
15273
|
var selectorName = "data-hw-focus-guard";
|
|
15279
15274
|
function FocusGuard() {
|
|
15280
15275
|
const element = document.createElement("div");
|
|
@@ -15312,7 +15307,7 @@ var FocusGuardsService = class _FocusGuardsService {
|
|
|
15312
15307
|
}
|
|
15313
15308
|
};
|
|
15314
15309
|
var useFocusGuards = () => {
|
|
15315
|
-
|
|
15310
|
+
useEffect36(() => {
|
|
15316
15311
|
FocusGuardsService.getInstance().add();
|
|
15317
15312
|
return () => {
|
|
15318
15313
|
FocusGuardsService.getInstance().remove();
|
|
@@ -15321,10 +15316,10 @@ var useFocusGuards = () => {
|
|
|
15321
15316
|
};
|
|
15322
15317
|
|
|
15323
15318
|
// src/hooks/focus/useFocusOnceVisible.ts
|
|
15324
|
-
import React5, { useEffect as
|
|
15319
|
+
import React5, { useEffect as useEffect37 } from "react";
|
|
15325
15320
|
var useFocusOnceVisible = (ref, disable = false) => {
|
|
15326
15321
|
const [hasUsedFocus, setHasUsedFocus] = React5.useState(false);
|
|
15327
|
-
|
|
15322
|
+
useEffect37(() => {
|
|
15328
15323
|
if (disable || hasUsedFocus) {
|
|
15329
15324
|
return;
|
|
15330
15325
|
}
|
|
@@ -15350,7 +15345,7 @@ var useRerender = () => {
|
|
|
15350
15345
|
};
|
|
15351
15346
|
|
|
15352
15347
|
// src/hooks/useSearch.ts
|
|
15353
|
-
import { useCallback as useCallback23, useEffect as
|
|
15348
|
+
import { useCallback as useCallback23, useEffect as useEffect38, useMemo as useMemo19, useState as useState37 } from "react";
|
|
15354
15349
|
|
|
15355
15350
|
// src/utils/simpleSearch.ts
|
|
15356
15351
|
var MultiSubjectSearchWithMapping = (search, objects, mapping) => {
|
|
@@ -15399,7 +15394,7 @@ var useSearch = ({
|
|
|
15399
15394
|
}
|
|
15400
15395
|
setResult(MultiSubjectSearchWithMapping([usedSearch, ...searchTags], list, searchMapping));
|
|
15401
15396
|
}, [searchTags, list, search, searchMapping]);
|
|
15402
|
-
|
|
15397
|
+
useEffect38(() => {
|
|
15403
15398
|
if (isSearchInstant) {
|
|
15404
15399
|
setResult(MultiSubjectSearchWithMapping([search, ...searchTags], list, searchMapping));
|
|
15405
15400
|
}
|