@helpwave/hightide 0.1.47 → 0.1.48

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.js CHANGED
@@ -38,12 +38,12 @@ var require_use_sync_external_store_shim_production = __commonJS({
38
38
  return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
39
39
  }
40
40
  var objectIs = "function" === typeof Object.is ? Object.is : is;
41
- var useState36 = React21.useState;
42
- var useEffect39 = React21.useEffect;
41
+ var useState37 = React21.useState;
42
+ var useEffect40 = React21.useEffect;
43
43
  var useLayoutEffect3 = React21.useLayoutEffect;
44
44
  var useDebugValue = React21.useDebugValue;
45
45
  function useSyncExternalStore$2(subscribe2, getSnapshot) {
46
- var value = getSnapshot(), _useState = useState36({ inst: { value, getSnapshot } }), inst = _useState[0].inst, forceUpdate = _useState[1];
46
+ var value = getSnapshot(), _useState = useState37({ inst: { value, getSnapshot } }), inst = _useState[0].inst, forceUpdate = _useState[1];
47
47
  useLayoutEffect3(
48
48
  function() {
49
49
  inst.value = value;
@@ -52,7 +52,7 @@ var require_use_sync_external_store_shim_production = __commonJS({
52
52
  },
53
53
  [subscribe2, value, getSnapshot]
54
54
  );
55
- useEffect39(
55
+ useEffect40(
56
56
  function() {
57
57
  checkIfSnapshotChanged(inst) && forceUpdate({ inst });
58
58
  return subscribe2(function() {
@@ -101,7 +101,7 @@ var require_use_sync_external_store_shim_development = __commonJS({
101
101
  "The result of getSnapshot should be cached to avoid an infinite loop"
102
102
  ), didWarnUncachedGetSnapshot = true);
103
103
  }
104
- cachedValue = useState36({
104
+ cachedValue = useState37({
105
105
  inst: { value, getSnapshot }
106
106
  });
107
107
  var inst = cachedValue[0].inst, forceUpdate = cachedValue[1];
@@ -113,7 +113,7 @@ var require_use_sync_external_store_shim_development = __commonJS({
113
113
  },
114
114
  [subscribe2, value, getSnapshot]
115
115
  );
116
- useEffect39(
116
+ useEffect40(
117
117
  function() {
118
118
  checkIfSnapshotChanged(inst) && forceUpdate({ inst });
119
119
  return subscribe2(function() {
@@ -139,7 +139,7 @@ var require_use_sync_external_store_shim_development = __commonJS({
139
139
  return getSnapshot();
140
140
  }
141
141
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
142
- var React21 = require("react"), objectIs = "function" === typeof Object.is ? Object.is : is, useState36 = React21.useState, useEffect39 = React21.useEffect, useLayoutEffect3 = React21.useLayoutEffect, useDebugValue = React21.useDebugValue, didWarnOld18Alpha = false, didWarnUncachedGetSnapshot = false, shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
142
+ var React21 = require("react"), objectIs = "function" === typeof Object.is ? Object.is : is, useState37 = React21.useState, useEffect40 = React21.useEffect, useLayoutEffect3 = React21.useLayoutEffect, useDebugValue = React21.useDebugValue, didWarnOld18Alpha = false, didWarnUncachedGetSnapshot = false, shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
143
143
  exports2.useSyncExternalStore = void 0 !== React21.useSyncExternalStore ? React21.useSyncExternalStore : shim;
144
144
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
145
145
  }();
@@ -6470,6 +6470,8 @@ __export(index_exports, {
6470
6470
  SolidButton: () => SolidButton,
6471
6471
  StepperBar: () => StepperBar,
6472
6472
  StepperBarUncontrolled: () => StepperBarUncontrolled,
6473
+ Tab: () => Tab,
6474
+ TabView: () => TabView,
6473
6475
  Table: () => Table,
6474
6476
  TableCell: () => TableCell,
6475
6477
  TableFilterButton: () => TableFilterButton,
@@ -6545,6 +6547,7 @@ __export(index_exports, {
6545
6547
  useRerender: () => useRerender,
6546
6548
  useResizeCallbackWrapper: () => useResizeCallbackWrapper,
6547
6549
  useSearch: () => useSearch,
6550
+ useTabContext: () => useTabContext,
6548
6551
  useTheme: () => useTheme,
6549
6552
  useTranslatedValidators: () => useTranslatedValidators,
6550
6553
  validateEmail: () => validateEmail,
@@ -7174,7 +7177,7 @@ var hightideTranslation = {
7174
7177
  });
7175
7178
  },
7176
7179
  "themes": ({ count }) => {
7177
- return import_internationalization.TranslationGen.resolveSelect(count, {
7180
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7178
7181
  "=1": `Farbschema`,
7179
7182
  "other": `Farbschemas`
7180
7183
  });
@@ -7186,19 +7189,19 @@ var hightideTranslation = {
7186
7189
  "time.april": `April`,
7187
7190
  "time.august": `August`,
7188
7191
  "time.century": ({ count }) => {
7189
- return import_internationalization.TranslationGen.resolveSelect(count, {
7192
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7190
7193
  "=1": `Jahrhundert`,
7191
7194
  "other": `Jahrhunderte`
7192
7195
  });
7193
7196
  },
7194
7197
  "time.day": ({ count }) => {
7195
- return import_internationalization.TranslationGen.resolveSelect(count, {
7198
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7196
7199
  "=1": `Tag`,
7197
7200
  "other": `Tage`
7198
7201
  });
7199
7202
  },
7200
7203
  "time.decade": ({ count }) => {
7201
- return import_internationalization.TranslationGen.resolveSelect(count, {
7204
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7202
7205
  "=1": `Jahrzehnt`,
7203
7206
  "other": `Jahrzehnte`
7204
7207
  });
@@ -7206,7 +7209,7 @@ var hightideTranslation = {
7206
7209
  "time.december": `December`,
7207
7210
  "time.february": `Febuar`,
7208
7211
  "time.hour": ({ count }) => {
7209
- return import_internationalization.TranslationGen.resolveSelect(count, {
7212
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7210
7213
  "=1": `Stunde`,
7211
7214
  "other": `Stunden`
7212
7215
  });
@@ -7221,25 +7224,25 @@ var hightideTranslation = {
7221
7224
  "time.march": `M\xE4rz`,
7222
7225
  "time.may": `Mai`,
7223
7226
  "time.microsecond": ({ count }) => {
7224
- return import_internationalization.TranslationGen.resolveSelect(count, {
7227
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7225
7228
  "=1": `Mikrosekunde`,
7226
7229
  "other": `Mikrosekunden`
7227
7230
  });
7228
7231
  },
7229
7232
  "time.millisecond": ({ count }) => {
7230
- return import_internationalization.TranslationGen.resolveSelect(count, {
7233
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7231
7234
  "=1": `Millisekunde`,
7232
7235
  "other": `Millisekunden`
7233
7236
  });
7234
7237
  },
7235
7238
  "time.minute": ({ count }) => {
7236
- return import_internationalization.TranslationGen.resolveSelect(count, {
7239
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7237
7240
  "=1": `Minute`,
7238
7241
  "other": `Minuten`
7239
7242
  });
7240
7243
  },
7241
7244
  "time.month": ({ count }) => {
7242
- return import_internationalization.TranslationGen.resolveSelect(count, {
7245
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7243
7246
  "=1": `Monat`,
7244
7247
  "other": `Monate`
7245
7248
  });
@@ -7262,7 +7265,7 @@ var hightideTranslation = {
7262
7265
  });
7263
7266
  },
7264
7267
  "time.nanosecond": ({ count }) => {
7265
- return import_internationalization.TranslationGen.resolveSelect(count, {
7268
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7266
7269
  "=1": `Nanosekunde`,
7267
7270
  "other": `Nanosekunden`
7268
7271
  });
@@ -7270,7 +7273,7 @@ var hightideTranslation = {
7270
7273
  "time.november": `November`,
7271
7274
  "time.october": `October`,
7272
7275
  "time.second": ({ count }) => {
7273
- return import_internationalization.TranslationGen.resolveSelect(count, {
7276
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7274
7277
  "=1": `Sekunde`,
7275
7278
  "other": `Sekunden`
7276
7279
  });
@@ -7279,7 +7282,7 @@ var hightideTranslation = {
7279
7282
  "time.today": `Heute`,
7280
7283
  "time.tomorrow": `Morgen`,
7281
7284
  "time.year": ({ count }) => {
7282
- return import_internationalization.TranslationGen.resolveSelect(count, {
7285
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7283
7286
  "=1": `Jahr`,
7284
7287
  "other": `Jahre`
7285
7288
  });
@@ -7410,7 +7413,7 @@ var hightideTranslation = {
7410
7413
  });
7411
7414
  },
7412
7415
  "themes": ({ count }) => {
7413
- return import_internationalization.TranslationGen.resolveSelect(count, {
7416
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7414
7417
  "=1": `Theme`,
7415
7418
  "other": `Themes`
7416
7419
  });
@@ -7422,19 +7425,19 @@ var hightideTranslation = {
7422
7425
  "time.april": `April`,
7423
7426
  "time.august": `August`,
7424
7427
  "time.century": ({ count }) => {
7425
- return import_internationalization.TranslationGen.resolveSelect(count, {
7428
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7426
7429
  "=1": `Century`,
7427
7430
  "other": `Centuries`
7428
7431
  });
7429
7432
  },
7430
7433
  "time.day": ({ count }) => {
7431
- return import_internationalization.TranslationGen.resolveSelect(count, {
7434
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7432
7435
  "=1": `Day`,
7433
7436
  "other": `Days`
7434
7437
  });
7435
7438
  },
7436
7439
  "time.decade": ({ count }) => {
7437
- return import_internationalization.TranslationGen.resolveSelect(count, {
7440
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7438
7441
  "=1": `Decade`,
7439
7442
  "other": `Decades`
7440
7443
  });
@@ -7442,7 +7445,7 @@ var hightideTranslation = {
7442
7445
  "time.december": `December`,
7443
7446
  "time.february": `Febuary`,
7444
7447
  "time.hour": ({ count }) => {
7445
- return import_internationalization.TranslationGen.resolveSelect(count, {
7448
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7446
7449
  "=1": `Hour`,
7447
7450
  "other": `Hours`
7448
7451
  });
@@ -7457,25 +7460,25 @@ var hightideTranslation = {
7457
7460
  "time.march": `March`,
7458
7461
  "time.may": `May`,
7459
7462
  "time.microsecond": ({ count }) => {
7460
- return import_internationalization.TranslationGen.resolveSelect(count, {
7463
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7461
7464
  "=1": `Microsecond`,
7462
7465
  "other": `Microseconds`
7463
7466
  });
7464
7467
  },
7465
7468
  "time.millisecond": ({ count }) => {
7466
- return import_internationalization.TranslationGen.resolveSelect(count, {
7469
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7467
7470
  "=1": `Millisecond`,
7468
7471
  "other": `Milliseconds`
7469
7472
  });
7470
7473
  },
7471
7474
  "time.minute": ({ count }) => {
7472
- return import_internationalization.TranslationGen.resolveSelect(count, {
7475
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7473
7476
  "=1": `Minute`,
7474
7477
  "other": `Minutes`
7475
7478
  });
7476
7479
  },
7477
7480
  "time.month": ({ count }) => {
7478
- return import_internationalization.TranslationGen.resolveSelect(count, {
7481
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7479
7482
  "=1": `Month`,
7480
7483
  "other": `Months`
7481
7484
  });
@@ -7498,7 +7501,7 @@ var hightideTranslation = {
7498
7501
  });
7499
7502
  },
7500
7503
  "time.nanosecond": ({ count }) => {
7501
- return import_internationalization.TranslationGen.resolveSelect(count, {
7504
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7502
7505
  "=1": `Nanosecond`,
7503
7506
  "other": `Nanoseconds`
7504
7507
  });
@@ -7506,7 +7509,7 @@ var hightideTranslation = {
7506
7509
  "time.november": `November`,
7507
7510
  "time.october": `October`,
7508
7511
  "time.second": ({ count }) => {
7509
- return import_internationalization.TranslationGen.resolveSelect(count, {
7512
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7510
7513
  "=1": `Second`,
7511
7514
  "other": `Seconds`
7512
7515
  });
@@ -7515,7 +7518,7 @@ var hightideTranslation = {
7515
7518
  "time.today": `Today`,
7516
7519
  "time.tomorrow": `Tomorrow`,
7517
7520
  "time.year": ({ count }) => {
7518
- return import_internationalization.TranslationGen.resolveSelect(count, {
7521
+ return import_internationalization.TranslationGen.resolvePlural(count, {
7519
7522
  "=1": `Year`,
7520
7523
  "other": `Years`
7521
7524
  });
@@ -12953,9 +12956,102 @@ var ScrollArea2 = ({
12953
12956
  );
12954
12957
  };
12955
12958
 
12956
- // src/components/layout/TextImage.tsx
12959
+ // src/components/layout/TabView.tsx
12960
+ var import_react27 = require("react");
12961
+ var import_react28 = require("react");
12957
12962
  var import_clsx26 = __toESM(require("clsx"));
12958
12963
  var import_jsx_runtime40 = require("react/jsx-runtime");
12964
+ var TabContext = (0, import_react28.createContext)(null);
12965
+ function useTabContext() {
12966
+ const ctx = (0, import_react28.useContext)(TabContext);
12967
+ if (!ctx) throw new Error("useTabContext must be used inside a <TabView>");
12968
+ return ctx;
12969
+ }
12970
+ function TabView({ children, outerDivProps, onTabChanged, initialTabIndex = 0, ...props }) {
12971
+ const [tabs, setTabs] = (0, import_react28.useState)([]);
12972
+ const [active, setActiveState] = (0, import_react28.useState)(null);
12973
+ const buttonRefs = (0, import_react28.useRef)({});
12974
+ const setActive = (id) => {
12975
+ setActiveState(id);
12976
+ onTabChanged?.(id);
12977
+ };
12978
+ const register = (id, label) => {
12979
+ setTabs((prev) => {
12980
+ const exists = prev.some((t) => t.id === id);
12981
+ if (!exists) {
12982
+ const updated = [...prev, { id, label }];
12983
+ if (active === null && updated[initialTabIndex]) {
12984
+ setActive(updated[initialTabIndex].id);
12985
+ }
12986
+ return updated;
12987
+ }
12988
+ return prev;
12989
+ });
12990
+ };
12991
+ const unregister = (id) => {
12992
+ setTabs((prev) => prev.filter((t) => t.id !== id));
12993
+ delete buttonRefs.current[id];
12994
+ };
12995
+ const onKeyDown = (e, id) => {
12996
+ const idx = tabs.findIndex((t) => t.id === id);
12997
+ if (idx === -1) return;
12998
+ let nextIdx = idx;
12999
+ if (e.key === "ArrowRight") nextIdx = (idx + 1) % tabs.length;
13000
+ else if (e.key === "ArrowLeft") nextIdx = (idx - 1 + tabs.length) % tabs.length;
13001
+ else return;
13002
+ const nextId = tabs[nextIdx].id;
13003
+ setActive(nextId);
13004
+ buttonRefs.current[nextId]?.focus();
13005
+ };
13006
+ const value = { active, setActive, register, unregister, tabs };
13007
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(TabContext.Provider, { value, children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { ...outerDivProps, className: (0, import_clsx26.default)("w-full", props.className), children: [
13008
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { role: "tablist", ...props, className: (0, import_clsx26.default)("flex-row-0"), children: tabs.map((t) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
13009
+ "button",
13010
+ {
13011
+ role: "tab",
13012
+ "aria-selected": active === t.id,
13013
+ "aria-controls": `${t.id}-panel`,
13014
+ id: `${t.id}-tab`,
13015
+ tabIndex: active === t.id ? 0 : -1,
13016
+ ref: (el) => buttonRefs.current[t.id] = el,
13017
+ onClick: () => setActive(t.id),
13018
+ onKeyDown: (e) => onKeyDown(e, t.id),
13019
+ className: (0, import_clsx26.default)(
13020
+ "flex-row-0 grow justify-center px-3 pb-1 typography-label-md border-b-2",
13021
+ active === t.id ? "border-primary" : "text-description hover:text-on-background"
13022
+ ),
13023
+ children: t.label
13024
+ },
13025
+ t.id
13026
+ )) }),
13027
+ children
13028
+ ] }) });
13029
+ }
13030
+ function Tab({ id: customId, label, children, ...props }) {
13031
+ const { active, register, unregister } = useTabContext();
13032
+ const generatedId = (0, import_react27.useId)();
13033
+ const id = customId ?? generatedId;
13034
+ (0, import_react28.useEffect)(() => {
13035
+ register(id, label);
13036
+ return () => unregister(id);
13037
+ }, [id, label]);
13038
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
13039
+ "div",
13040
+ {
13041
+ role: "tabpanel",
13042
+ id: `${id}-panel`,
13043
+ "aria-labelledby": `${id}-tab`,
13044
+ hidden: active !== id,
13045
+ className: "mt-4 text-sm",
13046
+ ...props,
13047
+ children: active === id && children
13048
+ }
13049
+ );
13050
+ }
13051
+
13052
+ // src/components/layout/TextImage.tsx
13053
+ var import_clsx27 = __toESM(require("clsx"));
13054
+ var import_jsx_runtime41 = require("react/jsx-runtime");
12959
13055
  var TextImage = ({
12960
13056
  title,
12961
13057
  description,
@@ -12977,25 +13073,25 @@ var TextImage = ({
12977
13073
  secondary: "text-text-image-secondary-text bg-linear-to-r from-30% from-text-image-secondary-background to-text-image-secondary-background/55",
12978
13074
  dark: "text-text-image-dark-text bg-linear-to-r from-30% from-text-image-dark-background to-text-image-dark-background/55"
12979
13075
  };
12980
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
13076
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
12981
13077
  "div",
12982
13078
  {
12983
- className: (0, import_clsx26.default)("rounded-2xl w-full", className),
13079
+ className: (0, import_clsx27.default)("rounded-2xl w-full", className),
12984
13080
  style: {
12985
13081
  backgroundImage: `url(${imageUrl})`,
12986
13082
  backgroundSize: "cover"
12987
13083
  },
12988
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
13084
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
12989
13085
  "div",
12990
13086
  {
12991
- className: (0, import_clsx26.default)(`flex-col-2 px-6 py-12 rounded-2xl h-full`, colorMapping[color], contentClassName),
13087
+ className: (0, import_clsx27.default)(`flex-col-2 px-6 py-12 rounded-2xl h-full`, colorMapping[color], contentClassName),
12992
13088
  children: [
12993
- badge && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: (0, import_clsx26.default)(`chip-full mb-2 py-2 px-4 w-fit`, chipColorMapping[color]), children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-lg font-bold", children: badge }) }),
12994
- /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: "flex-col-1 overflow-hidden", children: [
12995
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "typography-title-lg", children: title }),
12996
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "text-ellipsis overflow-hidden", children: description })
13089
+ badge && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: (0, import_clsx27.default)(`chip-full mb-2 py-2 px-4 w-fit`, chipColorMapping[color]), children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-lg font-bold", children: badge }) }),
13090
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "flex-col-1 overflow-hidden", children: [
13091
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "typography-title-lg", children: title }),
13092
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "text-ellipsis overflow-hidden", children: description })
12997
13093
  ] }),
12998
- onShowMoreClicked && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex-row-2 mt-2 underline", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("button", { onClick: onShowMoreClicked, children: translation("showMore") }) })
13094
+ onShowMoreClicked && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex-row-2 mt-2 underline", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("button", { onClick: onShowMoreClicked, children: translation("showMore") }) })
12999
13095
  ]
13000
13096
  }
13001
13097
  )
@@ -13004,7 +13100,7 @@ var TextImage = ({
13004
13100
  };
13005
13101
 
13006
13102
  // src/components/layout/VerticalDivider.tsx
13007
- var import_jsx_runtime41 = require("react/jsx-runtime");
13103
+ var import_jsx_runtime42 = require("react/jsx-runtime");
13008
13104
  var VerticalDivider = ({
13009
13105
  width = 1,
13010
13106
  height = 100,
@@ -13012,7 +13108,7 @@ var VerticalDivider = ({
13012
13108
  dashGap = 4,
13013
13109
  dashLength = 4
13014
13110
  }) => {
13015
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { style: { width: width + "px", height: height + "px" }, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
13111
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { style: { width: width + "px", height: height + "px" }, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
13016
13112
  "svg",
13017
13113
  {
13018
13114
  width,
@@ -13021,7 +13117,7 @@ var VerticalDivider = ({
13021
13117
  fill: "none",
13022
13118
  xmlns: "http://www.w3.org/2000/svg",
13023
13119
  children: [
13024
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
13120
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
13025
13121
  "line",
13026
13122
  {
13027
13123
  opacity: "0.5",
@@ -13035,7 +13131,7 @@ var VerticalDivider = ({
13035
13131
  strokeLinecap: "round"
13036
13132
  }
13037
13133
  ),
13038
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
13134
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
13039
13135
  "linearGradient",
13040
13136
  {
13041
13137
  id: "paint_linear",
@@ -13045,9 +13141,9 @@ var VerticalDivider = ({
13045
13141
  y2: height,
13046
13142
  gradientUnits: "userSpaceOnUse",
13047
13143
  children: [
13048
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("stop", { stopOpacity: "0", stopColor: "currentColor" }),
13049
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("stop", { offset: "0.5", stopColor: "currentColor" }),
13050
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("stop", { offset: "1", stopColor: "currentColor", stopOpacity: "0" })
13144
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("stop", { stopOpacity: "0", stopColor: "currentColor" }),
13145
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("stop", { offset: "0.5", stopColor: "currentColor" }),
13146
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("stop", { offset: "1", stopColor: "currentColor", stopOpacity: "0" })
13051
13147
  ]
13052
13148
  }
13053
13149
  ) })
@@ -13058,32 +13154,32 @@ var VerticalDivider = ({
13058
13154
 
13059
13155
  // src/components/loading-states/ErrorComponent.tsx
13060
13156
  var import_lucide_react8 = require("lucide-react");
13061
- var import_clsx27 = __toESM(require("clsx"));
13062
- var import_jsx_runtime42 = require("react/jsx-runtime");
13157
+ var import_clsx28 = __toESM(require("clsx"));
13158
+ var import_jsx_runtime43 = require("react/jsx-runtime");
13063
13159
  var ErrorComponent = ({
13064
13160
  errorText,
13065
13161
  classname
13066
13162
  }) => {
13067
13163
  const translation = useHightideTranslation();
13068
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: (0, import_clsx27.default)("flex-col-4 items-center justify-center w-full h-24", classname), children: [
13069
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react8.AlertOctagon, { size: 64, className: "text-warning" }),
13164
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: (0, import_clsx28.default)("flex-col-4 items-center justify-center w-full h-24", classname), children: [
13165
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react8.AlertOctagon, { size: 64, className: "text-warning" }),
13070
13166
  errorText ?? `${translation("errorOccurred")} :(`
13071
13167
  ] });
13072
13168
  };
13073
13169
 
13074
13170
  // src/components/loading-states/LoadingAndErrorComponent.tsx
13075
- var import_react27 = require("react");
13171
+ var import_react29 = require("react");
13076
13172
 
13077
13173
  // src/components/loading-states/LoadingContainer.tsx
13078
- var import_clsx28 = require("clsx");
13079
- var import_jsx_runtime43 = require("react/jsx-runtime");
13174
+ var import_clsx29 = require("clsx");
13175
+ var import_jsx_runtime44 = require("react/jsx-runtime");
13080
13176
  var LoadingContainer = ({ className }) => {
13081
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: (0, import_clsx28.clsx)("relative overflow-hidden shimmer bg-disabled-background rounded-md", className) });
13177
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: (0, import_clsx29.clsx)("relative overflow-hidden shimmer bg-disabled-background rounded-md", className) });
13082
13178
  };
13083
13179
 
13084
13180
  // src/components/loading-states/LoadingAndErrorComponent.tsx
13085
- var import_clsx29 = require("clsx");
13086
- var import_jsx_runtime44 = require("react/jsx-runtime");
13181
+ var import_clsx30 = require("clsx");
13182
+ var import_jsx_runtime45 = require("react/jsx-runtime");
13087
13183
  var LoadingAndErrorComponent = ({
13088
13184
  children,
13089
13185
  isLoading = false,
@@ -13093,8 +13189,8 @@ var LoadingAndErrorComponent = ({
13093
13189
  minimumLoadingDuration = 200,
13094
13190
  className
13095
13191
  }) => {
13096
- const [isInMinimumLoading, setIsInMinimumLoading] = (0, import_react27.useState)(false);
13097
- const [hasUsedMinimumLoading, setHasUsedMinimumLoading] = (0, import_react27.useState)(false);
13192
+ const [isInMinimumLoading, setIsInMinimumLoading] = (0, import_react29.useState)(false);
13193
+ const [hasUsedMinimumLoading, setHasUsedMinimumLoading] = (0, import_react29.useState)(false);
13098
13194
  if (minimumLoadingDuration && !isInMinimumLoading && !hasUsedMinimumLoading) {
13099
13195
  setIsInMinimumLoading(true);
13100
13196
  setTimeout(() => {
@@ -13103,41 +13199,41 @@ var LoadingAndErrorComponent = ({
13103
13199
  }, minimumLoadingDuration);
13104
13200
  }
13105
13201
  if (isLoading || minimumLoadingDuration && isInMinimumLoading) {
13106
- return loadingComponent ?? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(LoadingContainer, { className: (0, import_clsx29.clsx)(className) });
13202
+ return loadingComponent ?? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(LoadingContainer, { className: (0, import_clsx30.clsx)(className) });
13107
13203
  }
13108
13204
  if (hasError) {
13109
- return errorComponent ?? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(LoadingContainer, { className: (0, import_clsx29.clsx)("bg-negative", className) });
13205
+ return errorComponent ?? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(LoadingContainer, { className: (0, import_clsx30.clsx)("bg-negative", className) });
13110
13206
  }
13111
13207
  return children;
13112
13208
  };
13113
13209
 
13114
13210
  // src/components/loading-states/LoadingAnimation.tsx
13115
- var import_clsx30 = __toESM(require("clsx"));
13116
- var import_jsx_runtime45 = require("react/jsx-runtime");
13211
+ var import_clsx31 = __toESM(require("clsx"));
13212
+ var import_jsx_runtime46 = require("react/jsx-runtime");
13117
13213
  var LoadingAnimation = ({
13118
13214
  loadingText,
13119
13215
  classname
13120
13216
  }) => {
13121
13217
  const translation = useHightideTranslation();
13122
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: (0, import_clsx30.default)("flex-col-2 items-center justify-center w-full h-24", classname), children: [
13123
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HelpwaveLogo, { animate: "loading" }),
13218
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: (0, import_clsx31.default)("flex-col-2 items-center justify-center w-full h-24", classname), children: [
13219
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(HelpwaveLogo, { animate: "loading" }),
13124
13220
  loadingText ?? `${translation("loading")}...`
13125
13221
  ] });
13126
13222
  };
13127
13223
 
13128
13224
  // src/components/loading-states/LoadingButton.tsx
13129
- var import_clsx31 = __toESM(require("clsx"));
13130
- var import_jsx_runtime46 = require("react/jsx-runtime");
13225
+ var import_clsx32 = __toESM(require("clsx"));
13226
+ var import_jsx_runtime47 = require("react/jsx-runtime");
13131
13227
  var LoadingButton = ({ isLoading = false, size = "medium", onClick, ...rest }) => {
13132
13228
  const paddingClass = ButtonUtil.paddingMapping[size];
13133
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "inline-block relative", children: [
13134
- isLoading && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: (0, import_clsx31.default)("flex-row-2 absolute inset-0 items-center justify-center bg-white/40", paddingClass), children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(HelpwaveLogo, { animate: "loading", className: "text-white" }) }),
13135
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(SolidButton, { ...rest, disabled: rest.disabled, onClick })
13229
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "inline-block relative", children: [
13230
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: (0, import_clsx32.default)("flex-row-2 absolute inset-0 items-center justify-center bg-white/40", paddingClass), children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(HelpwaveLogo, { animate: "loading", className: "text-white" }) }),
13231
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(SolidButton, { ...rest, disabled: rest.disabled, onClick })
13136
13232
  ] });
13137
13233
  };
13138
13234
 
13139
13235
  // src/components/loading-states/ProgressIndicator.tsx
13140
- var import_jsx_runtime47 = require("react/jsx-runtime");
13236
+ var import_jsx_runtime48 = require("react/jsx-runtime");
13141
13237
  var sizeMapping = { small: 16, medium: 24, big: 48 };
13142
13238
  var ProgressIndicator = ({
13143
13239
  progress,
@@ -13154,7 +13250,7 @@ var ProgressIndicator = ({
13154
13250
  if (direction === "clockwise") {
13155
13251
  rotation += 360 * progress;
13156
13252
  }
13157
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
13253
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
13158
13254
  "svg",
13159
13255
  {
13160
13256
  style: {
@@ -13163,7 +13259,7 @@ var ProgressIndicator = ({
13163
13259
  transform: `rotate(${rotation}deg)`
13164
13260
  },
13165
13261
  children: [
13166
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
13262
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13167
13263
  "circle",
13168
13264
  {
13169
13265
  cx: center,
@@ -13174,7 +13270,7 @@ var ProgressIndicator = ({
13174
13270
  className: "stroke-progress-indicator-fill"
13175
13271
  }
13176
13272
  ),
13177
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
13273
+ /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13178
13274
  "circle",
13179
13275
  {
13180
13276
  cx: center,
@@ -13194,34 +13290,34 @@ var ProgressIndicator = ({
13194
13290
 
13195
13291
  // src/components/navigation/BreadCrumb.tsx
13196
13292
  var import_link = __toESM(require_link2());
13197
- var import_clsx32 = __toESM(require("clsx"));
13198
- var import_react28 = require("react");
13199
- var import_jsx_runtime48 = require("react/jsx-runtime");
13293
+ var import_clsx33 = __toESM(require("clsx"));
13294
+ var import_react30 = require("react");
13295
+ var import_jsx_runtime49 = require("react/jsx-runtime");
13200
13296
  var BreadCrumb = ({ crumbs, linkClassName, containerClassName }) => {
13201
13297
  const color = "text-description";
13202
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: (0, import_clsx32.default)("flex-row-0.5 items-center", containerClassName), children: crumbs.map((crumb, index) => {
13298
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: (0, import_clsx33.default)("flex-row-0.5 items-center", containerClassName), children: crumbs.map((crumb, index) => {
13203
13299
  const isLast = index === crumbs.length - 1;
13204
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(import_react28.Fragment, { children: [
13205
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
13300
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_react30.Fragment, { children: [
13301
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
13206
13302
  import_link.default,
13207
13303
  {
13208
13304
  href: crumb.link,
13209
- className: (0, import_clsx32.default)("btn-sm hover:bg-description/20", linkClassName, { [color]: !isLast }),
13305
+ className: (0, import_clsx33.default)("btn-sm hover:bg-description/20", linkClassName, { [color]: !isLast }),
13210
13306
  children: crumb.display
13211
13307
  }
13212
13308
  ),
13213
- !isLast && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: (0, import_clsx32.default)(`px-1`, color), children: "/" })
13309
+ !isLast && /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("span", { className: (0, import_clsx33.default)(`px-1`, color), children: "/" })
13214
13310
  ] }, index);
13215
13311
  }) });
13216
13312
  };
13217
13313
 
13218
13314
  // src/components/navigation/Navigation.tsx
13219
13315
  var import_lucide_react9 = require("lucide-react");
13220
- var import_react29 = require("react");
13221
- var import_react30 = require("react");
13316
+ var import_react31 = require("react");
13317
+ var import_react32 = require("react");
13222
13318
  var import_link2 = __toESM(require_link2());
13223
- var import_clsx33 = __toESM(require("clsx"));
13224
- var import_jsx_runtime49 = require("react/jsx-runtime");
13319
+ var import_clsx34 = __toESM(require("clsx"));
13320
+ var import_jsx_runtime50 = require("react/jsx-runtime");
13225
13321
  function isSubItem(item) {
13226
13322
  return "items" in item && Array.isArray(item.items);
13227
13323
  }
@@ -13231,10 +13327,10 @@ var NavigationItemWithSubItem = ({
13231
13327
  horizontalAlignment = "center",
13232
13328
  ...options
13233
13329
  }) => {
13234
- const [isOpen, setOpen] = (0, import_react30.useState)(false);
13235
- const containerRef = (0, import_react30.useRef)();
13236
- const triggerRef = (0, import_react30.useRef)(null);
13237
- const id = (0, import_react30.useId)();
13330
+ const [isOpen, setOpen] = (0, import_react32.useState)(false);
13331
+ const containerRef = (0, import_react32.useRef)();
13332
+ const triggerRef = (0, import_react32.useRef)(null);
13333
+ const id = (0, import_react32.useId)();
13238
13334
  const style = useFloatingElement({
13239
13335
  active: isOpen,
13240
13336
  containerRef,
@@ -13242,14 +13338,14 @@ var NavigationItemWithSubItem = ({
13242
13338
  horizontalAlignment,
13243
13339
  ...options
13244
13340
  });
13245
- const onBlur = (0, import_react30.useCallback)((event) => {
13341
+ const onBlur = (0, import_react32.useCallback)((event) => {
13246
13342
  const nextFocus = event.relatedTarget;
13247
13343
  if (!containerRef.current?.contains(nextFocus) && !triggerRef.current?.contains(nextFocus)) {
13248
13344
  setOpen(false);
13249
13345
  }
13250
13346
  }, []);
13251
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(import_jsx_runtime49.Fragment, { children: [
13252
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
13347
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(import_jsx_runtime50.Fragment, { children: [
13348
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
13253
13349
  "button",
13254
13350
  {
13255
13351
  id: "navigation-" + id,
@@ -13264,11 +13360,11 @@ var NavigationItemWithSubItem = ({
13264
13360
  "aria-controls": "navigation-items-" + id,
13265
13361
  children: [
13266
13362
  label,
13267
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(ExpansionIcon, { isExpanded: isOpen })
13363
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(ExpansionIcon, { isExpanded: isOpen })
13268
13364
  ]
13269
13365
  }
13270
13366
  ),
13271
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
13367
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
13272
13368
  "ul",
13273
13369
  {
13274
13370
  id: "navigation-items-" + id,
@@ -13282,12 +13378,12 @@ var NavigationItemWithSubItem = ({
13282
13378
  },
13283
13379
  onBlur,
13284
13380
  hidden: !isOpen,
13285
- className: (0, import_clsx33.default)(
13381
+ className: (0, import_clsx34.default)(
13286
13382
  "fixed flex-col-4 p-4 bg-surface text-on-surface shadow-side shadow-hw-bottom rounded-md z-2001",
13287
13383
  { "opacity-0": !style }
13288
13384
  ),
13289
13385
  style,
13290
- children: items.map(({ link, label: label2, external }, index) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
13386
+ children: items.map(({ link, label: label2, external }, index) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
13291
13387
  import_link2.default,
13292
13388
  {
13293
13389
  href: link,
@@ -13301,24 +13397,24 @@ var NavigationItemWithSubItem = ({
13301
13397
  ] });
13302
13398
  };
13303
13399
  var NavigationItemList = ({ items, ...restProps }) => {
13304
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("ul", { ...restProps, className: (0, import_clsx33.default)("flex-row-6 items-center", restProps.className), children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("li", { children: isSubItem(item) ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(NavigationItemWithSubItem, { ...item }) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_link2.default, { href: item.link, target: item.external ? "_blank" : void 0, className: "link", children: item.label }) }, index)) });
13400
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("ul", { ...restProps, className: (0, import_clsx34.default)("flex-row-6 items-center", restProps.className), children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("li", { children: isSubItem(item) ? /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(NavigationItemWithSubItem, { ...item }) : /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_link2.default, { href: item.link, target: item.external ? "_blank" : void 0, className: "link", children: item.label }) }, index)) });
13305
13401
  };
13306
13402
  var Navigation = ({ ...props }) => {
13307
- const [isMobileOpen, setIsMobileOpen] = (0, import_react30.useState)(false);
13308
- const id = (0, import_react30.useId)();
13309
- const menuRef = (0, import_react30.useRef)(null);
13310
- (0, import_react29.useEffect)(() => {
13403
+ const [isMobileOpen, setIsMobileOpen] = (0, import_react32.useState)(false);
13404
+ const id = (0, import_react32.useId)();
13405
+ const menuRef = (0, import_react32.useRef)(null);
13406
+ (0, import_react31.useEffect)(() => {
13311
13407
  menuRef.current?.focus();
13312
13408
  }, [isMobileOpen]);
13313
- return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("nav", { children: [
13314
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
13409
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("nav", { children: [
13410
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
13315
13411
  NavigationItemList,
13316
13412
  {
13317
13413
  ...props,
13318
- className: (0, import_clsx33.default)("hidden", { "desktop:flex": !isMobileOpen }, props.className)
13414
+ className: (0, import_clsx34.default)("hidden", { "desktop:flex": !isMobileOpen }, props.className)
13319
13415
  }
13320
13416
  ),
13321
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
13417
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
13322
13418
  IconButton,
13323
13419
  {
13324
13420
  color: "transparent",
@@ -13327,10 +13423,10 @@ var Navigation = ({ ...props }) => {
13327
13423
  "aria-haspopup": "true",
13328
13424
  "aria-expanded": isMobileOpen,
13329
13425
  "aria-controls": "navigation-menu-" + id,
13330
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react9.Menu, { className: "w-6 h-6" })
13426
+ children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react9.Menu, { className: "w-6 h-6" })
13331
13427
  }
13332
13428
  ),
13333
- /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(
13429
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
13334
13430
  "div",
13335
13431
  {
13336
13432
  id: "navigation-menu-" + id,
@@ -13343,7 +13439,7 @@ var Navigation = ({ ...props }) => {
13343
13439
  event.stopPropagation();
13344
13440
  }
13345
13441
  },
13346
- className: (0, import_clsx33.default)(
13442
+ className: (0, import_clsx34.default)(
13347
13443
  "flex-col-8 items-center justify-center fixed inset-0 p-8 w-screen h-screen z-2000 bg-surface text-on-surface",
13348
13444
  {
13349
13445
  "desktop:hidden": isMobileOpen
@@ -13351,8 +13447,8 @@ var Navigation = ({ ...props }) => {
13351
13447
  props.className
13352
13448
  ),
13353
13449
  children: [
13354
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(IconButton, { color: "transparent", onClick: () => setIsMobileOpen(false), children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_lucide_react9.XIcon, {}) }),
13355
- /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(NavigationItemList, { ...props, className: (0, import_clsx33.default)("flex-col-8", props.className) })
13450
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(IconButton, { color: "transparent", onClick: () => setIsMobileOpen(false), children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react9.XIcon, {}) }),
13451
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(NavigationItemList, { ...props, className: (0, import_clsx34.default)("flex-col-8", props.className) })
13356
13452
  ]
13357
13453
  }
13358
13454
  )
@@ -13361,9 +13457,9 @@ var Navigation = ({ ...props }) => {
13361
13457
 
13362
13458
  // src/components/navigation/Pagination.tsx
13363
13459
  var import_lucide_react10 = require("lucide-react");
13364
- var import_clsx34 = __toESM(require("clsx"));
13365
- var import_react31 = require("react");
13366
- var import_jsx_runtime50 = require("react/jsx-runtime");
13460
+ var import_clsx35 = __toESM(require("clsx"));
13461
+ var import_react33 = require("react");
13462
+ var import_jsx_runtime51 = require("react/jsx-runtime");
13367
13463
  var Pagination = ({
13368
13464
  pageIndex,
13369
13465
  pageCount,
@@ -13372,11 +13468,11 @@ var Pagination = ({
13372
13468
  style
13373
13469
  }) => {
13374
13470
  const translation = useHightideTranslation();
13375
- const [value, setValue] = (0, import_react31.useState)((pageIndex + 1).toString());
13471
+ const [value, setValue] = (0, import_react33.useState)((pageIndex + 1).toString());
13376
13472
  const noPages = pageCount === 0;
13377
13473
  const onFirstPage = pageIndex === 0 && !noPages;
13378
13474
  const onLastPage = pageIndex === pageCount - 1;
13379
- (0, import_react31.useEffect)(() => {
13475
+ (0, import_react33.useEffect)(() => {
13380
13476
  if (noPages) {
13381
13477
  setValue("0");
13382
13478
  } else {
@@ -13386,15 +13482,15 @@ var Pagination = ({
13386
13482
  const changePage = (page) => {
13387
13483
  onPageChanged(page);
13388
13484
  };
13389
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: (0, import_clsx34.default)("flex-row-1", className), style, children: [
13390
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(IconButton, { color: "transparent", onClick: () => changePage(0), disabled: onFirstPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react10.ChevronFirst, {}) }),
13391
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageIndex - 1), disabled: onFirstPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react10.ChevronLeft, {}) }),
13392
- /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex-row-2 min-w-56 items-center justify-center mx-2 text-center", children: [
13393
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
13485
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: (0, import_clsx35.default)("flex-row-1", className), style, children: [
13486
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(IconButton, { color: "transparent", onClick: () => changePage(0), disabled: onFirstPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react10.ChevronFirst, {}) }),
13487
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageIndex - 1), disabled: onFirstPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react10.ChevronLeft, {}) }),
13488
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex-row-2 min-w-56 items-center justify-center mx-2 text-center", children: [
13489
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
13394
13490
  Input,
13395
13491
  {
13396
13492
  value,
13397
- className: (0, import_clsx34.default)(
13493
+ className: (0, import_clsx35.default)(
13398
13494
  "w-full text-center font-bold input-indicator-hidden h-10"
13399
13495
  ),
13400
13496
  type: "number",
@@ -13414,8 +13510,8 @@ var Pagination = ({
13414
13510
  editCompleteOptions: { delay: 800 }
13415
13511
  }
13416
13512
  ),
13417
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "select-none w-10", children: translation("of") }),
13418
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
13513
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "select-none w-10", children: translation("of") }),
13514
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
13419
13515
  "span",
13420
13516
  {
13421
13517
  className: "flex-row-2 flex-1 items-center justify-center select-none h-10 bg-input-background text-input-text rounded-md font-bold",
@@ -13423,15 +13519,15 @@ var Pagination = ({
13423
13519
  }
13424
13520
  )
13425
13521
  ] }),
13426
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageIndex + 1), disabled: onLastPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react10.ChevronRight, {}) }),
13427
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageCount - 1), disabled: onLastPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react10.ChevronLast, {}) })
13522
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageIndex + 1), disabled: onLastPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react10.ChevronRight, {}) }),
13523
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageCount - 1), disabled: onLastPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react10.ChevronLast, {}) })
13428
13524
  ] });
13429
13525
  };
13430
13526
 
13431
13527
  // src/components/navigation/StepperBar.tsx
13432
13528
  var import_lucide_react11 = require("lucide-react");
13433
- var import_clsx35 = __toESM(require("clsx"));
13434
- var import_jsx_runtime51 = require("react/jsx-runtime");
13529
+ var import_clsx36 = __toESM(require("clsx"));
13530
+ var import_jsx_runtime52 = require("react/jsx-runtime");
13435
13531
  var defaultState = {
13436
13532
  currentStep: 0,
13437
13533
  seenSteps: /* @__PURE__ */ new Set([0])
@@ -13453,12 +13549,12 @@ var StepperBar = ({
13453
13549
  seenSteps.add(newStep);
13454
13550
  onChange({ currentStep: newStep, seenSteps });
13455
13551
  };
13456
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
13552
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
13457
13553
  "div",
13458
13554
  {
13459
- className: (0, import_clsx35.default)("flex-row-2 justify-between", className),
13555
+ className: (0, import_clsx36.default)("flex-row-2 justify-between", className),
13460
13556
  children: [
13461
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "flex-row-2 flex-[2] justify-start", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
13557
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "flex-row-2 flex-[2] justify-start", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
13462
13558
  SolidButton,
13463
13559
  {
13464
13560
  disabled: currentStep === 0 || disabledSteps.has(currentStep),
@@ -13467,18 +13563,18 @@ var StepperBar = ({
13467
13563
  },
13468
13564
  className: "flex-row-1 items-center justify-center",
13469
13565
  children: [
13470
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react11.ChevronLeft, { size: 14 }),
13566
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react11.ChevronLeft, { size: 14 }),
13471
13567
  translation("back")
13472
13568
  ]
13473
13569
  }
13474
13570
  ) }),
13475
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "flex-row-2 flex-[5] justify-center items-center", children: showDots && dots.map((value, index) => {
13571
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "flex-row-2 flex-[5] justify-center items-center", children: showDots && dots.map((value, index) => {
13476
13572
  const seen = seenSteps.has(index);
13477
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
13573
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13478
13574
  "div",
13479
13575
  {
13480
13576
  onClick: () => seen && update(index),
13481
- className: (0, import_clsx35.default)(
13577
+ className: (0, import_clsx36.default)(
13482
13578
  "rounded-full w-4 h-4",
13483
13579
  {
13484
13580
  "bg-stepperbar-dot-active hover:brightness-75": index === currentStep && seen && !disabledSteps.has(currentStep),
@@ -13494,7 +13590,7 @@ var StepperBar = ({
13494
13590
  index
13495
13591
  );
13496
13592
  }) }),
13497
- currentStep !== numberOfSteps && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "flex-row-2 flex-[2] justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
13593
+ currentStep !== numberOfSteps && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "flex-row-2 flex-[2] justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
13498
13594
  SolidButton,
13499
13595
  {
13500
13596
  onClick: () => update(currentStep + 1),
@@ -13502,18 +13598,18 @@ var StepperBar = ({
13502
13598
  disabled: disabledSteps.has(currentStep),
13503
13599
  children: [
13504
13600
  translation("next"),
13505
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react11.ChevronRight, { size: 14 })
13601
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react11.ChevronRight, { size: 14 })
13506
13602
  ]
13507
13603
  }
13508
13604
  ) }),
13509
- currentStep === numberOfSteps && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "flex-row-2 flex-[2] justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
13605
+ currentStep === numberOfSteps && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { className: "flex-row-2 flex-[2] justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
13510
13606
  SolidButton,
13511
13607
  {
13512
13608
  disabled: disabledSteps.has(currentStep),
13513
13609
  onClick: onFinish,
13514
13610
  className: "flex-row-1 items-center justify-center",
13515
13611
  children: [
13516
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_lucide_react11.Check, { size: 14 }),
13612
+ /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react11.Check, { size: 14 }),
13517
13613
  finishText ?? translation("confirm")
13518
13614
  ]
13519
13615
  }
@@ -13524,7 +13620,7 @@ var StepperBar = ({
13524
13620
  };
13525
13621
  var StepperBarUncontrolled = ({ state, onChange, ...props }) => {
13526
13622
  const [usedState, setUsedState] = useOverwritableState(state, onChange);
13527
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
13623
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13528
13624
  StepperBar,
13529
13625
  {
13530
13626
  ...props,
@@ -13539,7 +13635,7 @@ var import_lucide_react14 = require("lucide-react");
13539
13635
 
13540
13636
  // src/components/user-action/Checkbox.tsx
13541
13637
  var import_lucide_react12 = require("lucide-react");
13542
- var import_clsx36 = __toESM(require("clsx"));
13638
+ var import_clsx37 = __toESM(require("clsx"));
13543
13639
 
13544
13640
  // node_modules/@radix-ui/react-checkbox/dist/index.mjs
13545
13641
  var React19 = __toESM(require("react"), 1);
@@ -13664,7 +13760,7 @@ function useSize(element) {
13664
13760
  }
13665
13761
 
13666
13762
  // node_modules/@radix-ui/react-checkbox/dist/index.mjs
13667
- var import_jsx_runtime52 = require("react/jsx-runtime");
13763
+ var import_jsx_runtime53 = require("react/jsx-runtime");
13668
13764
  var CHECKBOX_NAME = "Checkbox";
13669
13765
  var [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);
13670
13766
  var [CheckboxProviderImpl, useCheckboxContext] = createCheckboxContext(CHECKBOX_NAME);
@@ -13712,7 +13808,7 @@ function CheckboxProvider(props) {
13712
13808
  bubbleInput,
13713
13809
  setBubbleInput
13714
13810
  };
13715
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13811
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13716
13812
  CheckboxProviderImpl,
13717
13813
  {
13718
13814
  scope: __scopeCheckbox,
@@ -13746,7 +13842,7 @@ var CheckboxTrigger = React19.forwardRef(
13746
13842
  return () => form.removeEventListener("reset", reset);
13747
13843
  }
13748
13844
  }, [control, setChecked]);
13749
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13845
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13750
13846
  Primitive.button,
13751
13847
  {
13752
13848
  type: "button",
@@ -13788,7 +13884,7 @@ var Checkbox = React19.forwardRef(
13788
13884
  form,
13789
13885
  ...checkboxProps
13790
13886
  } = props;
13791
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13887
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13792
13888
  CheckboxProvider,
13793
13889
  {
13794
13890
  __scopeCheckbox,
@@ -13800,8 +13896,8 @@ var Checkbox = React19.forwardRef(
13800
13896
  name,
13801
13897
  form,
13802
13898
  value,
13803
- internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(import_jsx_runtime52.Fragment, { children: [
13804
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13899
+ internal_do_not_use_render: ({ isFormControl }) => /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(import_jsx_runtime53.Fragment, { children: [
13900
+ /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13805
13901
  CheckboxTrigger,
13806
13902
  {
13807
13903
  ...checkboxProps,
@@ -13809,7 +13905,7 @@ var Checkbox = React19.forwardRef(
13809
13905
  __scopeCheckbox
13810
13906
  }
13811
13907
  ),
13812
- isFormControl && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13908
+ isFormControl && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13813
13909
  CheckboxBubbleInput,
13814
13910
  {
13815
13911
  __scopeCheckbox
@@ -13826,11 +13922,11 @@ var CheckboxIndicator = React19.forwardRef(
13826
13922
  (props, forwardedRef) => {
13827
13923
  const { __scopeCheckbox, forceMount, ...indicatorProps } = props;
13828
13924
  const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);
13829
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13925
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13830
13926
  Presence,
13831
13927
  {
13832
13928
  present: forceMount || isIndeterminate(context.checked) || context.checked === true,
13833
- children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13929
+ children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13834
13930
  Primitive.span,
13835
13931
  {
13836
13932
  "data-state": getState(context.checked),
@@ -13882,7 +13978,7 @@ var CheckboxBubbleInput = React19.forwardRef(
13882
13978
  }
13883
13979
  }, [bubbleInput, prevChecked, checked, hasConsumerStoppedPropagationRef]);
13884
13980
  const defaultCheckedRef = React19.useRef(isIndeterminate(checked) ? false : checked);
13885
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
13981
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
13886
13982
  Primitive.input,
13887
13983
  {
13888
13984
  type: "checkbox",
@@ -13924,7 +14020,7 @@ function getState(checked) {
13924
14020
  }
13925
14021
 
13926
14022
  // src/components/user-action/Checkbox.tsx
13927
- var import_jsx_runtime53 = require("react/jsx-runtime");
14023
+ var import_jsx_runtime54 = require("react/jsx-runtime");
13928
14024
  var checkboxSizeMapping = {
13929
14025
  sm: "size-5 border-1",
13930
14026
  md: "size-6 border-1",
@@ -13946,14 +14042,14 @@ var Checkbox2 = ({
13946
14042
  }) => {
13947
14043
  const usedSizeClass = checkboxSizeMapping[size];
13948
14044
  const innerIconSize = checkboxIconSizeMapping[size];
13949
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
14045
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
13950
14046
  Checkbox,
13951
14047
  {
13952
14048
  ...props,
13953
14049
  disabled,
13954
14050
  checked: indeterminate ? "indeterminate" : checked,
13955
14051
  onCheckedChange: onChange,
13956
- className: (0, import_clsx36.default)(
14052
+ className: (0, import_clsx37.default)(
13957
14053
  usedSizeClass,
13958
14054
  `flex-col-0 items-center justify-center rounded`,
13959
14055
  {
@@ -13964,10 +14060,10 @@ var Checkbox2 = ({
13964
14060
  },
13965
14061
  className
13966
14062
  ),
13967
- children: /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(CheckboxIndicator, { children: [
13968
- !checked && !indeterminate && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: (0, import_clsx36.default)("bg-input-background", innerIconSize) }),
13969
- checked && !indeterminate && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react12.Check, { className: innerIconSize }),
13970
- indeterminate && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react12.Minus, { className: innerIconSize })
14063
+ children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(CheckboxIndicator, { children: [
14064
+ !checked && !indeterminate && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: (0, import_clsx37.default)("bg-input-background", innerIconSize) }),
14065
+ checked && !indeterminate && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_lucide_react12.Check, { className: innerIconSize }),
14066
+ indeterminate && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_lucide_react12.Minus, { className: innerIconSize })
13971
14067
  ] })
13972
14068
  }
13973
14069
  );
@@ -13978,7 +14074,7 @@ var CheckboxUncontrolled = ({
13978
14074
  ...props
13979
14075
  }) => {
13980
14076
  const [checked, setChecked] = useOverwritableState(initialChecked, onChange);
13981
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
14077
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
13982
14078
  Checkbox2,
13983
14079
  {
13984
14080
  ...props,
@@ -13990,8 +14086,8 @@ var CheckboxUncontrolled = ({
13990
14086
 
13991
14087
  // src/components/properties/PropertyBase.tsx
13992
14088
  var import_lucide_react13 = require("lucide-react");
13993
- var import_clsx37 = __toESM(require("clsx"));
13994
- var import_jsx_runtime54 = require("react/jsx-runtime");
14089
+ var import_clsx38 = __toESM(require("clsx"));
14090
+ var import_jsx_runtime55 = require("react/jsx-runtime");
13995
14091
  var PropertyBase = ({
13996
14092
  name,
13997
14093
  input,
@@ -14004,11 +14100,11 @@ var PropertyBase = ({
14004
14100
  }) => {
14005
14101
  const translation = useHightideTranslation();
14006
14102
  const requiredAndNoValue = softRequired && !hasValue;
14007
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: (0, import_clsx37.default)("flex-row-0 group", className), children: [
14008
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
14103
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: (0, import_clsx38.default)("flex-row-0 group", className), children: [
14104
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
14009
14105
  "div",
14010
14106
  {
14011
- className: (0, import_clsx37.default)(
14107
+ className: (0, import_clsx38.default)(
14012
14108
  "flex-row-2 max-w-48 min-w-48 px-3 py-2 items-center rounded-l-xl border-2 border-r-0",
14013
14109
  {
14014
14110
  "bg-property-title-background text-property-title-text group-hover:border-primary": !requiredAndNoValue,
@@ -14017,15 +14113,15 @@ var PropertyBase = ({
14017
14113
  className
14018
14114
  ),
14019
14115
  children: [
14020
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "max-w-6 min-w-6 text-text-primary", children: icon }),
14021
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "font-semibold", children: name })
14116
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "max-w-6 min-w-6 text-text-primary", children: icon }),
14117
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { className: "font-semibold", children: name })
14022
14118
  ]
14023
14119
  }
14024
14120
  ),
14025
- /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
14121
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
14026
14122
  "div",
14027
14123
  {
14028
- className: (0, import_clsx37.default)(
14124
+ className: (0, import_clsx38.default)(
14029
14125
  "flex-row-2 grow px-3 py-2 justify-between items-center rounded-r-xl border-2 border-l-0 min-h-15",
14030
14126
  {
14031
14127
  "bg-input-background text-input-text group-hover:border-primary": !requiredAndNoValue,
@@ -14035,13 +14131,13 @@ var PropertyBase = ({
14035
14131
  ),
14036
14132
  children: [
14037
14133
  input({ softRequired, hasValue }),
14038
- requiredAndNoValue && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "text-warning", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_lucide_react13.AlertTriangle, { size: 24 }) }),
14039
- onRemove && !readOnly && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
14134
+ requiredAndNoValue && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "text-warning", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react13.AlertTriangle, { size: 24 }) }),
14135
+ onRemove && !readOnly && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
14040
14136
  TextButton,
14041
14137
  {
14042
14138
  onClick: onRemove,
14043
14139
  color: "negative",
14044
- className: (0, import_clsx37.default)("items-center"),
14140
+ className: (0, import_clsx38.default)("items-center"),
14045
14141
  disabled: !hasValue,
14046
14142
  children: translation("remove")
14047
14143
  }
@@ -14053,8 +14149,8 @@ var PropertyBase = ({
14053
14149
  };
14054
14150
 
14055
14151
  // src/components/properties/CheckboxProperty.tsx
14056
- var import_react32 = require("react");
14057
- var import_jsx_runtime55 = require("react/jsx-runtime");
14152
+ var import_react34 = require("react");
14153
+ var import_jsx_runtime56 = require("react/jsx-runtime");
14058
14154
  var CheckboxProperty = ({
14059
14155
  value,
14060
14156
  onChange,
@@ -14062,16 +14158,16 @@ var CheckboxProperty = ({
14062
14158
  ...baseProps
14063
14159
  }) => {
14064
14160
  const translation = useHightideTranslation();
14065
- const id = (0, import_react32.useId)();
14066
- return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
14161
+ const id = (0, import_react34.useId)();
14162
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
14067
14163
  PropertyBase,
14068
14164
  {
14069
14165
  ...baseProps,
14070
14166
  hasValue: true,
14071
14167
  readOnly,
14072
- icon: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_lucide_react14.Check, { size: 24 }),
14073
- input: () => /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "flex-row-2 items-center", children: [
14074
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
14168
+ icon: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react14.Check, { size: 24 }),
14169
+ input: () => /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex-row-2 items-center", children: [
14170
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
14075
14171
  Checkbox2,
14076
14172
  {
14077
14173
  id,
@@ -14081,7 +14177,7 @@ var CheckboxProperty = ({
14081
14177
  "aria-labelledby": id + "label"
14082
14178
  }
14083
14179
  ),
14084
- /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Label, { id: id + "label", children: `${translation("yes")}/${translation("no")}` })
14180
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Label, { id: id + "label", children: `${translation("yes")}/${translation("no")}` })
14085
14181
  ] })
14086
14182
  }
14087
14183
  );
@@ -14089,8 +14185,8 @@ var CheckboxProperty = ({
14089
14185
 
14090
14186
  // src/components/properties/DateProperty.tsx
14091
14187
  var import_lucide_react15 = require("lucide-react");
14092
- var import_clsx38 = __toESM(require("clsx"));
14093
- var import_jsx_runtime56 = require("react/jsx-runtime");
14188
+ var import_clsx39 = __toESM(require("clsx"));
14189
+ var import_jsx_runtime57 = require("react/jsx-runtime");
14094
14190
  var DateProperty = ({
14095
14191
  value,
14096
14192
  onChange,
@@ -14101,16 +14197,16 @@ var DateProperty = ({
14101
14197
  }) => {
14102
14198
  const hasValue = !!value;
14103
14199
  const dateText = value ? type === "dateTime" ? formatDateTime(value) : formatDate(value) : "";
14104
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
14200
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
14105
14201
  PropertyBase,
14106
14202
  {
14107
14203
  ...baseProps,
14108
14204
  hasValue,
14109
- icon: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_lucide_react15.CalendarDays, { size: 24 }),
14110
- input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
14205
+ icon: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react15.CalendarDays, { size: 24 }),
14206
+ input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
14111
14207
  Input,
14112
14208
  {
14113
- className: (0, import_clsx38.default)("!ring-0 !border-0 !outline-0 !p-0 !m-0 !shadow-none !w-fit !rounded-none", { "bg-surface-warning": softRequired && !hasValue }),
14209
+ className: (0, import_clsx39.default)("!ring-0 !border-0 !outline-0 !p-0 !m-0 !shadow-none !w-fit !rounded-none", { "bg-surface-warning": softRequired && !hasValue }),
14114
14210
  value: dateText,
14115
14211
  type: type === "dateTime" ? "datetime-local" : "date",
14116
14212
  readOnly,
@@ -14132,8 +14228,8 @@ var DateProperty = ({
14132
14228
 
14133
14229
  // src/components/properties/MultiSelectProperty.tsx
14134
14230
  var import_lucide_react16 = require("lucide-react");
14135
- var import_clsx39 = __toESM(require("clsx"));
14136
- var import_jsx_runtime57 = require("react/jsx-runtime");
14231
+ var import_clsx40 = __toESM(require("clsx"));
14232
+ var import_jsx_runtime58 = require("react/jsx-runtime");
14137
14233
  var MultiSelectProperty = ({
14138
14234
  children,
14139
14235
  values,
@@ -14141,25 +14237,25 @@ var MultiSelectProperty = ({
14141
14237
  ...props
14142
14238
  }) => {
14143
14239
  const hasValue = values.length > 0;
14144
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
14240
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
14145
14241
  PropertyBase,
14146
14242
  {
14147
14243
  ...props,
14148
14244
  hasValue,
14149
- icon: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react16.List, { size: 24 }),
14150
- input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
14245
+ icon: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_lucide_react16.List, { size: 24 }),
14246
+ input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
14151
14247
  MultiSelectChipDisplay,
14152
14248
  {
14153
14249
  values,
14154
14250
  onValuesChanged,
14155
14251
  disabled: props.readOnly,
14156
14252
  contentPanelProps: {
14157
- className: (0, import_clsx39.default)(
14253
+ className: (0, import_clsx40.default)(
14158
14254
  "!border-none !min-h-10"
14159
14255
  )
14160
14256
  },
14161
14257
  chipDisplayProps: {
14162
- className: (0, import_clsx39.default)({
14258
+ className: (0, import_clsx40.default)({
14163
14259
  "!bg-warning !text-surface-warning": softRequired && !hasValue
14164
14260
  })
14165
14261
  },
@@ -14172,8 +14268,8 @@ var MultiSelectProperty = ({
14172
14268
 
14173
14269
  // src/components/properties/NumberProperty.tsx
14174
14270
  var import_lucide_react17 = require("lucide-react");
14175
- var import_clsx40 = __toESM(require("clsx"));
14176
- var import_jsx_runtime58 = require("react/jsx-runtime");
14271
+ var import_clsx41 = __toESM(require("clsx"));
14272
+ var import_jsx_runtime59 = require("react/jsx-runtime");
14177
14273
  var NumberProperty = ({
14178
14274
  value,
14179
14275
  onChange,
@@ -14185,22 +14281,22 @@ var NumberProperty = ({
14185
14281
  }) => {
14186
14282
  const translation = useHightideTranslation();
14187
14283
  const hasValue = value !== void 0;
14188
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
14284
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
14189
14285
  PropertyBase,
14190
14286
  {
14191
14287
  ...baseProps,
14192
14288
  onRemove,
14193
14289
  hasValue,
14194
- icon: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_lucide_react17.Binary, { size: 24 }),
14195
- input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
14290
+ icon: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react17.Binary, { size: 24 }),
14291
+ input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
14196
14292
  "div",
14197
14293
  {
14198
- className: (0, import_clsx40.default)("flex-row-2 grow", { "text-warning": softRequired && !hasValue }),
14294
+ className: (0, import_clsx41.default)("flex-row-2 grow", { "text-warning": softRequired && !hasValue }),
14199
14295
  children: [
14200
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
14296
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
14201
14297
  Input,
14202
14298
  {
14203
- className: (0, import_clsx40.default)("!ring-0 !border-0 !outline-0 !p-0 !m-0 !w-fit !shadow-none !rounded-none", { "bg-surface-warning placeholder-warning": softRequired && !hasValue }),
14299
+ className: (0, import_clsx41.default)("!ring-0 !border-0 !outline-0 !p-0 !m-0 !w-fit !shadow-none !rounded-none", { "bg-surface-warning placeholder-warning": softRequired && !hasValue }),
14204
14300
  value: value?.toString() ?? "",
14205
14301
  type: "number",
14206
14302
  readOnly,
@@ -14223,7 +14319,7 @@ var NumberProperty = ({
14223
14319
  }
14224
14320
  }
14225
14321
  ),
14226
- suffix && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: (0, import_clsx40.default)("ml-1", { "bg-surface-warning": softRequired && !hasValue }), children: suffix })
14322
+ suffix && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: (0, import_clsx41.default)("ml-1", { "bg-surface-warning": softRequired && !hasValue }), children: suffix })
14227
14323
  ]
14228
14324
  }
14229
14325
  )
@@ -14233,8 +14329,8 @@ var NumberProperty = ({
14233
14329
 
14234
14330
  // src/components/properties/SelectProperty.tsx
14235
14331
  var import_lucide_react18 = require("lucide-react");
14236
- var import_clsx41 = __toESM(require("clsx"));
14237
- var import_jsx_runtime59 = require("react/jsx-runtime");
14332
+ var import_clsx42 = __toESM(require("clsx"));
14333
+ var import_jsx_runtime60 = require("react/jsx-runtime");
14238
14334
  var SingleSelectProperty = ({
14239
14335
  children,
14240
14336
  value,
@@ -14243,20 +14339,20 @@ var SingleSelectProperty = ({
14243
14339
  ...props
14244
14340
  }) => {
14245
14341
  const hasValue = value !== void 0;
14246
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
14342
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
14247
14343
  PropertyBase,
14248
14344
  {
14249
14345
  ...props,
14250
14346
  hasValue,
14251
- icon: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react18.List, { size: 24 }),
14252
- input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
14347
+ icon: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react18.List, { size: 24 }),
14348
+ input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
14253
14349
  Select,
14254
14350
  {
14255
14351
  value,
14256
14352
  onValueChanged,
14257
14353
  disabled: props.readOnly,
14258
14354
  buttonProps: {
14259
- className: (0, import_clsx41.default)(
14355
+ className: (0, import_clsx42.default)(
14260
14356
  "border-none w-full",
14261
14357
  {
14262
14358
  "!bg-warning !text-surface-warning": softRequired && !hasValue
@@ -14273,13 +14369,13 @@ var SingleSelectProperty = ({
14273
14369
 
14274
14370
  // src/components/properties/TextProperty.tsx
14275
14371
  var import_lucide_react19 = require("lucide-react");
14276
- var import_clsx43 = __toESM(require("clsx"));
14372
+ var import_clsx44 = __toESM(require("clsx"));
14277
14373
 
14278
14374
  // src/components/user-action/Textarea.tsx
14279
- var import_react33 = require("react");
14280
- var import_clsx42 = __toESM(require("clsx"));
14281
- var import_jsx_runtime60 = require("react/jsx-runtime");
14282
- var Textarea = (0, import_react33.forwardRef)(function Textarea2({
14375
+ var import_react35 = require("react");
14376
+ var import_clsx43 = __toESM(require("clsx"));
14377
+ var import_jsx_runtime61 = require("react/jsx-runtime");
14378
+ var Textarea = (0, import_react35.forwardRef)(function Textarea2({
14283
14379
  id,
14284
14380
  onChange,
14285
14381
  onChangeText,
@@ -14297,12 +14393,12 @@ var Textarea = (0, import_react33.forwardRef)(function Textarea2({
14297
14393
  onEditCompleted?.(text);
14298
14394
  clearTimer();
14299
14395
  };
14300
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
14396
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
14301
14397
  "textarea",
14302
14398
  {
14303
14399
  ref,
14304
14400
  id,
14305
- className: (0, import_clsx42.default)(
14401
+ className: (0, import_clsx43.default)(
14306
14402
  "resize-none w-full h-32 overflow-y-scroll",
14307
14403
  "py-2 px-3 rounded-md border-2 border-transparent focus-style-none",
14308
14404
  {
@@ -14335,7 +14431,7 @@ var TextareaUncontrolled = ({
14335
14431
  ...props
14336
14432
  }) => {
14337
14433
  const [text, setText] = useOverwritableState(value, onChangeText);
14338
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
14434
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
14339
14435
  Textarea,
14340
14436
  {
14341
14437
  ...props,
@@ -14353,12 +14449,12 @@ var TextareaWithHeadline = ({
14353
14449
  containerClassName,
14354
14450
  ...props
14355
14451
  }) => {
14356
- const genId = (0, import_react33.useId)();
14452
+ const genId = (0, import_react35.useId)();
14357
14453
  const usedId = id ?? genId;
14358
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
14454
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
14359
14455
  "div",
14360
14456
  {
14361
- className: (0, import_clsx42.default)(
14457
+ className: (0, import_clsx43.default)(
14362
14458
  "group flex-col-3 border-2 rounded-lg",
14363
14459
  {
14364
14460
  "bg-input-background text-input-text hover:border-primary focus-within:border-primary": !disabled,
@@ -14367,13 +14463,13 @@ var TextareaWithHeadline = ({
14367
14463
  containerClassName
14368
14464
  ),
14369
14465
  children: [
14370
- headline && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(Label, { size: "md", ...headlineProps, htmlFor: usedId, children: headline }),
14371
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
14466
+ headline && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Label, { size: "md", ...headlineProps, htmlFor: usedId, children: headline }),
14467
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
14372
14468
  Textarea,
14373
14469
  {
14374
14470
  ...props,
14375
14471
  id: usedId,
14376
- className: (0, import_clsx42.default)(
14472
+ className: (0, import_clsx43.default)(
14377
14473
  "border-transparent focus:ring-0 focus-visible:ring-0 resize-none h-32",
14378
14474
  className
14379
14475
  ),
@@ -14386,7 +14482,7 @@ var TextareaWithHeadline = ({
14386
14482
  };
14387
14483
 
14388
14484
  // src/components/properties/TextProperty.tsx
14389
- var import_jsx_runtime61 = require("react/jsx-runtime");
14485
+ var import_jsx_runtime62 = require("react/jsx-runtime");
14390
14486
  var TextProperty = ({
14391
14487
  value,
14392
14488
  readOnly,
@@ -14397,17 +14493,17 @@ var TextProperty = ({
14397
14493
  }) => {
14398
14494
  const translation = useHightideTranslation();
14399
14495
  const hasValue = value !== void 0;
14400
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
14496
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
14401
14497
  PropertyBase,
14402
14498
  {
14403
14499
  ...baseProps,
14404
14500
  onRemove,
14405
14501
  hasValue,
14406
- icon: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react19.Text, { size: 24 }),
14407
- input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
14502
+ icon: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react19.Text, { size: 24 }),
14503
+ input: ({ softRequired }) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
14408
14504
  Textarea,
14409
14505
  {
14410
- className: (0, import_clsx43.default)({
14506
+ className: (0, import_clsx44.default)({
14411
14507
  "bg-surface-warning placeholder-warning": softRequired && !hasValue
14412
14508
  }),
14413
14509
  rows: 5,
@@ -14436,12 +14532,12 @@ var TextProperty = ({
14436
14532
  };
14437
14533
 
14438
14534
  // src/components/table/FillerRowElement.tsx
14439
- var import_clsx44 = require("clsx");
14440
- var import_jsx_runtime62 = require("react/jsx-runtime");
14535
+ var import_clsx45 = require("clsx");
14536
+ var import_jsx_runtime63 = require("react/jsx-runtime");
14441
14537
  var FillerRowElement = ({
14442
14538
  className
14443
14539
  }) => {
14444
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: (0, import_clsx44.clsx)("flex flex-row items-center w-1/2 h-4 text-disabled font-bold", className), children: "-" });
14540
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: (0, import_clsx45.clsx)("flex flex-row items-center w-1/2 h-4 text-disabled font-bold", className), children: "-" });
14445
14541
  };
14446
14542
 
14447
14543
  // src/components/table/Filter.ts
@@ -14459,25 +14555,25 @@ var TableFilters = {
14459
14555
  };
14460
14556
 
14461
14557
  // src/components/table/Table.tsx
14462
- var import_react39 = require("react");
14463
- var import_clsx48 = __toESM(require("clsx"));
14558
+ var import_react41 = require("react");
14559
+ var import_clsx49 = __toESM(require("clsx"));
14464
14560
  var import_react_table = require("@tanstack/react-table");
14465
14561
  var import_react_custom_scrollbars_23 = require("react-custom-scrollbars-2");
14466
14562
 
14467
14563
  // src/components/table/TableCell.tsx
14468
- var import_clsx45 = require("clsx");
14469
- var import_jsx_runtime63 = require("react/jsx-runtime");
14564
+ var import_clsx46 = require("clsx");
14565
+ var import_jsx_runtime64 = require("react/jsx-runtime");
14470
14566
  var TableCell = ({
14471
14567
  children,
14472
14568
  className
14473
14569
  }) => {
14474
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: (0, import_clsx45.clsx)("block max-w-full overflow-ellipsis truncate", className), children });
14570
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: (0, import_clsx46.clsx)("block max-w-full overflow-ellipsis truncate", className), children });
14475
14571
  };
14476
14572
 
14477
14573
  // src/hooks/useResizeCallbackWrapper.ts
14478
- var import_react34 = require("react");
14574
+ var import_react36 = require("react");
14479
14575
  var useResizeCallbackWrapper = (callback) => {
14480
- (0, import_react34.useEffect)(() => {
14576
+ (0, import_react36.useEffect)(() => {
14481
14577
  window.addEventListener("resize", callback);
14482
14578
  return () => {
14483
14579
  window.removeEventListener("resize", callback);
@@ -14487,8 +14583,8 @@ var useResizeCallbackWrapper = (callback) => {
14487
14583
 
14488
14584
  // src/components/table/TableSortButton.tsx
14489
14585
  var import_lucide_react20 = require("lucide-react");
14490
- var import_clsx46 = __toESM(require("clsx"));
14491
- var import_jsx_runtime64 = require("react/jsx-runtime");
14586
+ var import_clsx47 = __toESM(require("clsx"));
14587
+ var import_jsx_runtime65 = require("react/jsx-runtime");
14492
14588
  var TableSortButton = ({
14493
14589
  sortDirection,
14494
14590
  invert = false,
@@ -14496,20 +14592,20 @@ var TableSortButton = ({
14496
14592
  className,
14497
14593
  ...buttonProps
14498
14594
  }) => {
14499
- let icon = /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react20.ChevronsUpDown, { className: "w-full h-full" });
14595
+ let icon = /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react20.ChevronsUpDown, { className: "w-full h-full" });
14500
14596
  if (sortDirection) {
14501
14597
  let usedSortDirection = sortDirection;
14502
14598
  if (invert) {
14503
14599
  usedSortDirection = usedSortDirection === "desc" ? "asc" : "desc";
14504
14600
  }
14505
- icon = usedSortDirection === "asc" ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react20.ChevronUp, { className: "w-full h-full" }) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react20.ChevronDown, { className: "w-full h-full" });
14601
+ icon = usedSortDirection === "asc" ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react20.ChevronUp, { className: "w-full h-full" }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react20.ChevronDown, { className: "w-full h-full" });
14506
14602
  }
14507
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
14603
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
14508
14604
  IconButton,
14509
14605
  {
14510
14606
  size: "tiny",
14511
14607
  color,
14512
- className: (0, import_clsx46.default)(className),
14608
+ className: (0, import_clsx47.default)(className),
14513
14609
  ...buttonProps,
14514
14610
  children: icon
14515
14611
  }
@@ -14520,8 +14616,8 @@ var TableSortButton = ({
14520
14616
  var import_lucide_react21 = require("lucide-react");
14521
14617
 
14522
14618
  // src/components/user-action/Menu.tsx
14523
- var import_react37 = require("react");
14524
- var import_clsx47 = __toESM(require("clsx"));
14619
+ var import_react39 = require("react");
14620
+ var import_clsx48 = __toESM(require("clsx"));
14525
14621
 
14526
14622
  // src/utils/bagFunctions.ts
14527
14623
  var resolve = (children, bag) => {
@@ -14592,15 +14688,15 @@ var usePopoverPosition = (trigger, options) => {
14592
14688
  };
14593
14689
 
14594
14690
  // src/hooks/useHoverState.ts
14595
- var import_react35 = require("react");
14691
+ var import_react37 = require("react");
14596
14692
  var defaultUseHoverStateProps = {
14597
14693
  closingDelay: 200,
14598
14694
  isDisabled: false
14599
14695
  };
14600
14696
  var useHoverState = (props = void 0) => {
14601
14697
  const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props };
14602
- const [isHovered, setIsHovered] = (0, import_react35.useState)(false);
14603
- const [timer, setTimer] = (0, import_react35.useState)();
14698
+ const [isHovered, setIsHovered] = (0, import_react37.useState)(false);
14699
+ const [timer, setTimer] = (0, import_react37.useState)();
14604
14700
  const onMouseEnter = () => {
14605
14701
  if (isDisabled) {
14606
14702
  return;
@@ -14616,14 +14712,14 @@ var useHoverState = (props = void 0) => {
14616
14712
  setIsHovered(false);
14617
14713
  }, closingDelay));
14618
14714
  };
14619
- (0, import_react35.useEffect)(() => {
14715
+ (0, import_react37.useEffect)(() => {
14620
14716
  if (timer) {
14621
14717
  return () => {
14622
14718
  clearTimeout(timer);
14623
14719
  };
14624
14720
  }
14625
14721
  });
14626
- (0, import_react35.useEffect)(() => {
14722
+ (0, import_react37.useEffect)(() => {
14627
14723
  if (timer) {
14628
14724
  clearTimeout(timer);
14629
14725
  }
@@ -14636,9 +14732,9 @@ var useHoverState = (props = void 0) => {
14636
14732
  };
14637
14733
 
14638
14734
  // src/hooks/useOutsideClick.ts
14639
- var import_react36 = require("react");
14735
+ var import_react38 = require("react");
14640
14736
  var useOutsideClick = (refs, handler) => {
14641
- (0, import_react36.useEffect)(() => {
14737
+ (0, import_react38.useEffect)(() => {
14642
14738
  const listener = (event) => {
14643
14739
  if (event.target === null) return;
14644
14740
  if (refs.some((ref) => !ref.current || ref.current.contains(event.target))) {
@@ -14656,17 +14752,17 @@ var useOutsideClick = (refs, handler) => {
14656
14752
  };
14657
14753
 
14658
14754
  // src/components/user-action/Menu.tsx
14659
- var import_jsx_runtime65 = require("react/jsx-runtime");
14755
+ var import_jsx_runtime66 = require("react/jsx-runtime");
14660
14756
  var MenuItem = ({
14661
14757
  children,
14662
14758
  onClick,
14663
14759
  alignment = "left",
14664
14760
  isDisabled = false,
14665
14761
  className
14666
- }) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
14762
+ }) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14667
14763
  "div",
14668
14764
  {
14669
- className: (0, import_clsx47.default)("block px-3 py-1.5 first:rounded-t-md last:rounded-b-md text-sm font-semibold text-nowrap", {
14765
+ className: (0, import_clsx48.default)("block px-3 py-1.5 first:rounded-t-md last:rounded-b-md text-sm font-semibold text-nowrap", {
14670
14766
  "text-right": alignment === "right",
14671
14767
  "text-left": alignment === "left",
14672
14768
  "text-disabled cursor-not-allowed": isDisabled,
@@ -14696,10 +14792,10 @@ var Menu = ({
14696
14792
  menuClassName = ""
14697
14793
  }) => {
14698
14794
  const { isHovered: isOpen, setIsHovered: setIsOpen } = useHoverState({ isDisabled: !showOnHover || disabled });
14699
- const triggerRef = (0, import_react37.useRef)(null);
14700
- const menuRef = (0, import_react37.useRef)(null);
14795
+ const triggerRef = (0, import_react39.useRef)(null);
14796
+ const menuRef = (0, import_react39.useRef)(null);
14701
14797
  useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
14702
- const [isHidden, setIsHidden] = (0, import_react37.useState)(true);
14798
+ const [isHidden, setIsHidden] = (0, import_react39.useState)(true);
14703
14799
  const bag = {
14704
14800
  isOpen,
14705
14801
  close: () => setIsOpen(false),
@@ -14710,7 +14806,7 @@ var Menu = ({
14710
14806
  triggerRef.current?.getBoundingClientRect(),
14711
14807
  { verticalAlignment: alignmentVertical, horizontalAlignment: alignmentHorizontal, disabled }
14712
14808
  );
14713
- (0, import_react37.useEffect)(() => {
14809
+ (0, import_react39.useEffect)(() => {
14714
14810
  if (!isOpen) return;
14715
14811
  const triggerEl = triggerRef.current;
14716
14812
  if (!triggerEl) return;
@@ -14727,19 +14823,19 @@ var Menu = ({
14727
14823
  window.removeEventListener("resize", close);
14728
14824
  };
14729
14825
  }, [isOpen, setIsOpen]);
14730
- (0, import_react37.useEffect)(() => {
14826
+ (0, import_react39.useEffect)(() => {
14731
14827
  if (isOpen) {
14732
14828
  setIsHidden(false);
14733
14829
  }
14734
14830
  }, [isOpen]);
14735
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(import_jsx_runtime65.Fragment, { children: [
14831
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
14736
14832
  trigger(bag, triggerRef),
14737
- (0, import_react_dom4.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
14833
+ (0, import_react_dom4.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14738
14834
  "div",
14739
14835
  {
14740
14836
  ref: menuRef,
14741
14837
  onClick: (e) => e.stopPropagation(),
14742
- className: (0, import_clsx47.default)(
14838
+ className: (0, import_clsx48.default)(
14743
14839
  "absolute rounded-md bg-menu-background text-menu-text shadow-around-lg shadow-strong z-[300]",
14744
14840
  {
14745
14841
  "animate-pop-in": isOpen,
@@ -14763,25 +14859,25 @@ var Menu = ({
14763
14859
  };
14764
14860
 
14765
14861
  // src/components/table/TableFilterButton.tsx
14766
- var import_react38 = require("react");
14767
- var import_jsx_runtime66 = require("react/jsx-runtime");
14862
+ var import_react40 = require("react");
14863
+ var import_jsx_runtime67 = require("react/jsx-runtime");
14768
14864
  var TableFilterButton = ({
14769
14865
  filterType,
14770
14866
  column
14771
14867
  }) => {
14772
14868
  const translation = useHightideTranslation();
14773
14869
  const columnFilterValue = column.getFilterValue();
14774
- const [filterValue, setFilterValue] = (0, import_react38.useState)(columnFilterValue);
14870
+ const [filterValue, setFilterValue] = (0, import_react40.useState)(columnFilterValue);
14775
14871
  const hasFilter = !!filterValue;
14776
- (0, import_react38.useEffect)(() => {
14872
+ (0, import_react40.useEffect)(() => {
14777
14873
  setFilterValue(columnFilterValue);
14778
14874
  }, [columnFilterValue]);
14779
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14875
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14780
14876
  Menu,
14781
14877
  {
14782
- trigger: ({ toggleOpen }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { ref, className: "relative", children: [
14783
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(IconButton, { color: "neutral", size: "tiny", onClick: toggleOpen, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react21.FilterIcon, {}) }),
14784
- hasFilter && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14878
+ trigger: ({ toggleOpen }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { ref, className: "relative", children: [
14879
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(IconButton, { color: "neutral", size: "tiny", onClick: toggleOpen, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react21.FilterIcon, {}) }),
14880
+ hasFilter && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14785
14881
  "div",
14786
14882
  {
14787
14883
  className: "absolute top-0.5 right-0.5 w-2 h-2 rounded-full bg-primary pointer-events-none",
@@ -14789,9 +14885,9 @@ var TableFilterButton = ({
14789
14885
  }
14790
14886
  )
14791
14887
  ] }),
14792
- children: ({ close }) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex-col-1 p-2 items-start font-normal text-menu-text", children: [
14793
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("h4", { className: "typography-label-md-semibold", children: translation("filter") }),
14794
- filterType === "text" && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14888
+ children: ({ close }) => /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex-col-1 p-2 items-start font-normal text-menu-text", children: [
14889
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("h4", { className: "typography-label-md-semibold", children: translation("filter") }),
14890
+ filterType === "text" && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14795
14891
  Input,
14796
14892
  {
14797
14893
  value: filterValue ?? "",
@@ -14801,8 +14897,8 @@ var TableFilterButton = ({
14801
14897
  className: "h-10"
14802
14898
  }
14803
14899
  ),
14804
- filterType === "range" && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex-row-2 items-center", children: [
14805
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14900
+ filterType === "range" && /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex-row-2 items-center", children: [
14901
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14806
14902
  Input,
14807
14903
  {
14808
14904
  value: filterValue?.[0] ?? "",
@@ -14815,8 +14911,8 @@ var TableFilterButton = ({
14815
14911
  className: "h-10 input-indicator-hidden w-40"
14816
14912
  }
14817
14913
  ),
14818
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "font-bold", children: "-" }),
14819
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14914
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "font-bold", children: "-" }),
14915
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14820
14916
  Input,
14821
14917
  {
14822
14918
  value: filterValue?.[1] ?? "",
@@ -14830,8 +14926,8 @@ var TableFilterButton = ({
14830
14926
  }
14831
14927
  )
14832
14928
  ] }),
14833
- filterType === "dateRange" && /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(import_jsx_runtime66.Fragment, { children: [
14834
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14929
+ filterType === "dateRange" && /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(import_jsx_runtime67.Fragment, { children: [
14930
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14835
14931
  Input,
14836
14932
  {
14837
14933
  value: filterValue?.[0] ? filterValue?.[0].toISOString().slice(0, 16) : "",
@@ -14844,7 +14940,7 @@ var TableFilterButton = ({
14844
14940
  className: "h-10 w-50"
14845
14941
  }
14846
14942
  ),
14847
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
14943
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
14848
14944
  Input,
14849
14945
  {
14850
14946
  value: filterValue?.[1] ? filterValue?.[1].toISOString().slice(0, 16) : "",
@@ -14858,12 +14954,12 @@ var TableFilterButton = ({
14858
14954
  }
14859
14955
  )
14860
14956
  ] }),
14861
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex-row-2 justify-end w-full", children: [
14862
- hasFilter && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SolidButton, { color: "negative", size: "small", onClick: () => {
14957
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex-row-2 justify-end w-full", children: [
14958
+ hasFilter && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(SolidButton, { color: "negative", size: "small", onClick: () => {
14863
14959
  column.setFilterValue(void 0);
14864
14960
  close();
14865
14961
  }, children: translation("remove") }),
14866
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SolidButton, { size: "small", onClick: () => {
14962
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(SolidButton, { size: "small", onClick: () => {
14867
14963
  column.setFilterValue(filterValue);
14868
14964
  close();
14869
14965
  }, children: translation("apply") })
@@ -14874,7 +14970,7 @@ var TableFilterButton = ({
14874
14970
  };
14875
14971
 
14876
14972
  // src/components/table/Table.tsx
14877
- var import_jsx_runtime67 = require("react/jsx-runtime");
14973
+ var import_jsx_runtime68 = require("react/jsx-runtime");
14878
14974
  var Table = ({
14879
14975
  data,
14880
14976
  fillerRow,
@@ -14887,22 +14983,22 @@ var Table = ({
14887
14983
  columns,
14888
14984
  ...tableOptions
14889
14985
  }) => {
14890
- const ref = (0, import_react39.useRef)(null);
14891
- const tableRef = (0, import_react39.useRef)(null);
14892
- const [columnSizing, setColumnSizing] = (0, import_react39.useState)(columns.reduce((previousValue, currentValue) => {
14986
+ const ref = (0, import_react41.useRef)(null);
14987
+ const tableRef = (0, import_react41.useRef)(null);
14988
+ const [columnSizing, setColumnSizing] = (0, import_react41.useState)(columns.reduce((previousValue, currentValue) => {
14893
14989
  return {
14894
14990
  ...previousValue,
14895
14991
  [currentValue.id]: currentValue.minSize ?? defaultColumn.minSize
14896
14992
  };
14897
14993
  }, {}));
14898
- const [columnSizingInfo, setColumnSizingInfo] = (0, import_react39.useState)();
14899
- const [pagination, setPagination] = (0, import_react39.useState)({
14994
+ const [columnSizingInfo, setColumnSizingInfo] = (0, import_react41.useState)();
14995
+ const [pagination, setPagination] = (0, import_react41.useState)({
14900
14996
  pageSize: 10,
14901
14997
  pageIndex: 0,
14902
14998
  ...initialState?.pagination
14903
14999
  });
14904
- const [columnFilters, setColumnFilters] = (0, import_react39.useState)(initialState?.columnFilters);
14905
- const computedColumnMinWidths = (0, import_react39.useMemo)(() => {
15000
+ const [columnFilters, setColumnFilters] = (0, import_react41.useState)(initialState?.columnFilters);
15001
+ const computedColumnMinWidths = (0, import_react41.useMemo)(() => {
14906
15002
  return columns.reduce((previousValue, column) => {
14907
15003
  return {
14908
15004
  ...previousValue,
@@ -14911,7 +15007,7 @@ var Table = ({
14911
15007
  };
14912
15008
  }, {});
14913
15009
  }, [columns, defaultColumn]);
14914
- const computedColumnMaxWidths = (0, import_react39.useMemo)(() => {
15010
+ const computedColumnMaxWidths = (0, import_react41.useMemo)(() => {
14915
15011
  return columns.reduce((previousValue, column) => {
14916
15012
  return {
14917
15013
  ...previousValue,
@@ -14919,12 +15015,12 @@ var Table = ({
14919
15015
  };
14920
15016
  }, {});
14921
15017
  }, [columns, defaultColumn]);
14922
- const tableMinWidth = (0, import_react39.useMemo)(() => {
15018
+ const tableMinWidth = (0, import_react41.useMemo)(() => {
14923
15019
  return columns.reduce((sum, column) => {
14924
15020
  return sum + computedColumnMinWidths[column.id];
14925
15021
  }, 0);
14926
15022
  }, [columns, computedColumnMinWidths]);
14927
- const updateColumnSizes = (0, import_react39.useMemo)(() => {
15023
+ const updateColumnSizes = (0, import_react41.useMemo)(() => {
14928
15024
  return (previous) => {
14929
15025
  const updateSizing = {
14930
15026
  ...columnSizing,
@@ -14993,7 +15089,7 @@ var Table = ({
14993
15089
  minSize: 60,
14994
15090
  maxSize: 700,
14995
15091
  cell: ({ cell }) => {
14996
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(TableCell, { children: cell.getValue() });
15092
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(TableCell, { children: cell.getValue() });
14997
15093
  },
14998
15094
  ...defaultColumn
14999
15095
  },
@@ -15041,18 +15137,18 @@ var Table = ({
15041
15137
  columnResizeMode: "onChange",
15042
15138
  ...tableOptions
15043
15139
  });
15044
- const [hasInitializedSizing, setHasInitializedSizing] = (0, import_react39.useState)(false);
15045
- (0, import_react39.useEffect)(() => {
15140
+ const [hasInitializedSizing, setHasInitializedSizing] = (0, import_react41.useState)(false);
15141
+ (0, import_react41.useEffect)(() => {
15046
15142
  if (!hasInitializedSizing && ref.current) {
15047
15143
  setHasInitializedSizing(true);
15048
15144
  table.setColumnSizing(updateColumnSizes(columnSizing));
15049
15145
  }
15050
15146
  }, [columnSizing, hasInitializedSizing]);
15051
- useResizeCallbackWrapper((0, import_react39.useCallback)(() => {
15147
+ useResizeCallbackWrapper((0, import_react41.useCallback)(() => {
15052
15148
  table.setColumnSizing(updateColumnSizes);
15053
15149
  }, [updateColumnSizes]));
15054
15150
  const pageCount = table.getPageCount();
15055
- (0, import_react39.useEffect)(() => {
15151
+ (0, import_react41.useEffect)(() => {
15056
15152
  const totalPages = pageCount;
15057
15153
  if (totalPages === 0) {
15058
15154
  if (pagination.pageIndex !== 0) {
@@ -15068,7 +15164,7 @@ var Table = ({
15068
15164
  }));
15069
15165
  }
15070
15166
  }, [data, pageCount, pagination.pageSize, pagination.pageIndex]);
15071
- const columnSizeVars = (0, import_react39.useMemo)(() => {
15167
+ const columnSizeVars = (0, import_react41.useMemo)(() => {
15072
15168
  const headers = table.getFlatHeaders();
15073
15169
  const colSizes = {};
15074
15170
  for (let i = 0; i < headers.length; i++) {
@@ -15078,24 +15174,24 @@ var Table = ({
15078
15174
  }
15079
15175
  return colSizes;
15080
15176
  }, [table.getState().columnSizingInfo, table.getState().columnSizing]);
15081
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { ref, className: (0, import_clsx48.default)("flex-col-4", className), children: [
15082
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15177
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { ref, className: (0, import_clsx49.default)("flex-col-4", className), children: [
15178
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15083
15179
  import_react_custom_scrollbars_23.Scrollbars,
15084
15180
  {
15085
15181
  autoHeight: true,
15086
15182
  autoHeightMax: tableRef.current?.offsetHeight ? tableRef.current?.offsetHeight + 2 : void 0,
15087
15183
  autoHide: true,
15088
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
15184
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
15089
15185
  "table",
15090
15186
  {
15091
15187
  ref: tableRef,
15092
- className: (0, import_clsx48.default)(tableClassName),
15188
+ className: (0, import_clsx49.default)(tableClassName),
15093
15189
  style: {
15094
15190
  ...columnSizeVars,
15095
15191
  width: Math.floor(Math.max(table.getTotalSize() - columns.length, ref.current?.offsetWidth ?? table.getTotalSize()))
15096
15192
  },
15097
15193
  children: [
15098
- table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("colgroup", { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15194
+ table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("colgroup", { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15099
15195
  "col",
15100
15196
  {
15101
15197
  style: {
@@ -15106,22 +15202,22 @@ var Table = ({
15106
15202
  },
15107
15203
  header.id
15108
15204
  )) }, headerGroup.id)),
15109
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("thead", { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("tr", { className: table.options.meta?.headerRowClassName, children: headerGroup.headers.map((header) => {
15110
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
15205
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("thead", { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("tr", { className: table.options.meta?.headerRowClassName, children: headerGroup.headers.map((header) => {
15206
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
15111
15207
  "th",
15112
15208
  {
15113
15209
  colSpan: header.colSpan,
15114
- className: (0, import_clsx48.default)("relative group", header.column.columnDef.meta?.className),
15210
+ className: (0, import_clsx49.default)("relative group", header.column.columnDef.meta?.className),
15115
15211
  children: [
15116
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "flex-row-2 w-full", children: header.isPlaceholder ? null : /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex-row-1 items-center", children: [
15117
- header.column.getCanSort() && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15212
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex-row-2 w-full", children: header.isPlaceholder ? null : /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-row-1 items-center", children: [
15213
+ header.column.getCanSort() && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15118
15214
  TableSortButton,
15119
15215
  {
15120
15216
  sortDirection: header.column.getIsSorted(),
15121
15217
  onClick: () => header.column.toggleSorting()
15122
15218
  }
15123
15219
  ),
15124
- header.column.getCanFilter() && header.column.columnDef.meta?.filterType ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15220
+ header.column.getCanFilter() && header.column.columnDef.meta?.filterType ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15125
15221
  TableFilterButton,
15126
15222
  {
15127
15223
  column: header.column,
@@ -15133,7 +15229,7 @@ var Table = ({
15133
15229
  header.getContext()
15134
15230
  )
15135
15231
  ] }) }),
15136
- header.column.getCanResize() && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15232
+ header.column.getCanResize() && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15137
15233
  "div",
15138
15234
  {
15139
15235
  onMouseDown: header.getResizeHandler(),
@@ -15152,18 +15248,18 @@ var Table = ({
15152
15248
  header.id
15153
15249
  );
15154
15250
  }) }, headerGroup.id)) }),
15155
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("tbody", { children: [
15251
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("tbody", { children: [
15156
15252
  table.getRowModel().rows.map((row) => {
15157
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("tr", { onClick: () => onRowClick?.(row, table), className: table.options.meta?.bodyRowClassName, children: row.getVisibleCells().map((cell) => {
15158
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("td", { children: (0, import_react_table.flexRender)(
15253
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("tr", { onClick: () => onRowClick?.(row, table), className: table.options.meta?.bodyRowClassName, children: row.getVisibleCells().map((cell) => {
15254
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("td", { children: (0, import_react_table.flexRender)(
15159
15255
  cell.column.columnDef.cell,
15160
15256
  cell.getContext()
15161
15257
  ) }, cell.id);
15162
15258
  }) }, row.id);
15163
15259
  }),
15164
15260
  range(table.getState().pagination.pageSize - table.getRowModel().rows.length, { allowEmptyRange: true }).map((row, index) => {
15165
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("tr", { children: columns.map((column) => {
15166
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("td", { children: fillerRow ? fillerRow(column.id, table) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(FillerRowElement, {}) }, column.id);
15261
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("tr", { children: columns.map((column) => {
15262
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("td", { children: fillerRow ? fillerRow(column.id, table) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(FillerRowElement, {}) }, column.id);
15167
15263
  }) }, "filler-row-" + index);
15168
15264
  })
15169
15265
  ] })
@@ -15172,7 +15268,7 @@ var Table = ({
15172
15268
  )
15173
15269
  }
15174
15270
  ),
15175
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "flex-row-2 justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15271
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex-row-2 justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15176
15272
  Pagination,
15177
15273
  {
15178
15274
  pageIndex: table.getState().pagination.pageIndex,
@@ -15184,7 +15280,7 @@ var Table = ({
15184
15280
  };
15185
15281
  var TableUncontrolled = ({ data, ...props }) => {
15186
15282
  const [usedDate] = useOverwritableState(data);
15187
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15283
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15188
15284
  Table,
15189
15285
  {
15190
15286
  ...props,
@@ -15203,12 +15299,12 @@ var TableWithSelection = ({
15203
15299
  meta,
15204
15300
  ...props
15205
15301
  }) => {
15206
- const columnsWithSelection = (0, import_react39.useMemo)(() => {
15302
+ const columnsWithSelection = (0, import_react41.useMemo)(() => {
15207
15303
  return [
15208
15304
  {
15209
15305
  id: selectionRowId,
15210
15306
  header: ({ table }) => {
15211
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15307
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15212
15308
  Checkbox2,
15213
15309
  {
15214
15310
  checked: table.getIsAllRowsSelected(),
@@ -15221,7 +15317,7 @@ var TableWithSelection = ({
15221
15317
  );
15222
15318
  },
15223
15319
  cell: ({ row }) => {
15224
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15320
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15225
15321
  Checkbox2,
15226
15322
  {
15227
15323
  disabled: !row.getCanSelect(),
@@ -15239,15 +15335,15 @@ var TableWithSelection = ({
15239
15335
  ...columns
15240
15336
  ];
15241
15337
  }, [columns, selectionRowId]);
15242
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
15338
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15243
15339
  Table,
15244
15340
  {
15245
15341
  columns: columnsWithSelection,
15246
15342
  fillerRow: (columnId, table) => {
15247
15343
  if (columnId === selectionRowId) {
15248
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Checkbox2, { checked: false, disabled: true, className: "max-w-6" });
15344
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Checkbox2, { checked: false, disabled: true, className: "max-w-6" });
15249
15345
  }
15250
- return fillerRow ? fillerRow(columnId, table) : /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(FillerRowElement, {});
15346
+ return fillerRow ? fillerRow(columnId, table) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(FillerRowElement, {});
15251
15347
  },
15252
15348
  state: {
15253
15349
  rowSelection,
@@ -15261,7 +15357,7 @@ var TableWithSelection = ({
15261
15357
  },
15262
15358
  meta: {
15263
15359
  ...meta,
15264
- bodyRowClassName: (0, import_clsx48.default)(
15360
+ bodyRowClassName: (0, import_clsx49.default)(
15265
15361
  { "cursor-pointer": !disableClickRowClickSelection },
15266
15362
  meta?.bodyRowClassName
15267
15363
  )
@@ -15272,8 +15368,8 @@ var TableWithSelection = ({
15272
15368
  };
15273
15369
 
15274
15370
  // src/components/user-action/CopyToClipboardWrapper.tsx
15275
- var import_react40 = require("react");
15276
- var import_clsx49 = require("clsx");
15371
+ var import_react42 = require("react");
15372
+ var import_clsx50 = require("clsx");
15277
15373
 
15278
15374
  // src/utils/writeToClipboard.ts
15279
15375
  var writeToClipboard = (text) => {
@@ -15282,7 +15378,7 @@ var writeToClipboard = (text) => {
15282
15378
 
15283
15379
  // src/components/user-action/CopyToClipboardWrapper.tsx
15284
15380
  var import_lucide_react22 = require("lucide-react");
15285
- var import_jsx_runtime68 = require("react/jsx-runtime");
15381
+ var import_jsx_runtime69 = require("react/jsx-runtime");
15286
15382
  var CopyToClipboardWrapper = ({
15287
15383
  children,
15288
15384
  textToCopy,
@@ -15292,8 +15388,8 @@ var CopyToClipboardWrapper = ({
15292
15388
  zIndex = 10
15293
15389
  }) => {
15294
15390
  const translation = useHightideTranslation();
15295
- const [isShowingIndication, setIsShowingIndication] = (0, import_react40.useState)(false);
15296
- const [isShowingConfirmation, setIsShowingConfirmation] = (0, import_react40.useState)(false);
15391
+ const [isShowingIndication, setIsShowingIndication] = (0, import_react42.useState)(false);
15392
+ const [isShowingConfirmation, setIsShowingConfirmation] = (0, import_react42.useState)(false);
15297
15393
  const positionClasses = {
15298
15394
  top: `bottom-full left-1/2 -translate-x-1/2 mb-[6px]`,
15299
15395
  bottom: `top-full left-1/2 -translate-x-1/2 mt-[6px]`,
@@ -15313,10 +15409,10 @@ var CopyToClipboardWrapper = ({
15313
15409
  left: { borderWidth: `${triangleSize}px 0 ${triangleSize}px ${triangleSize}px` },
15314
15410
  right: { borderWidth: `${triangleSize}px ${triangleSize}px ${triangleSize}px 0` }
15315
15411
  };
15316
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
15412
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
15317
15413
  "div",
15318
15414
  {
15319
- className: (0, import_clsx49.clsx)("relative inline-block cursor-copy", containerClassName),
15415
+ className: (0, import_clsx50.clsx)("relative inline-block cursor-copy", containerClassName),
15320
15416
  onMouseEnter: () => {
15321
15417
  setIsShowingIndication(true);
15322
15418
  },
@@ -15331,10 +15427,10 @@ var CopyToClipboardWrapper = ({
15331
15427
  },
15332
15428
  children: [
15333
15429
  children,
15334
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
15430
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
15335
15431
  "div",
15336
15432
  {
15337
- className: (0, import_clsx49.clsx)(
15433
+ className: (0, import_clsx50.clsx)(
15338
15434
  `absolute text-xs font-semibold text-tooltip-text px-2 py-1 rounded whitespace-nowrap
15339
15435
  shadow-around-md bg-tooltip-background cursor-default pointer-events-none`,
15340
15436
  "transition-opacity duration-200",
@@ -15346,18 +15442,18 @@ var CopyToClipboardWrapper = ({
15346
15442
  opacity: isShowingIndication || isShowingConfirmation ? 1 : 0
15347
15443
  },
15348
15444
  children: [
15349
- isShowingConfirmation && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-row-1", children: [
15350
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react22.CheckIcon, { size: 16, className: "text-positive" }),
15445
+ isShowingConfirmation && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-row-1", children: [
15446
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react22.CheckIcon, { size: 16, className: "text-positive" }),
15351
15447
  translation("copied")
15352
15448
  ] }),
15353
- isShowingIndication && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-row-1 text-description", children: [
15354
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react22.Copy, { size: 16 }),
15449
+ isShowingIndication && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-row-1 text-description", children: [
15450
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react22.Copy, { size: 16 }),
15355
15451
  translation("clickToCopy")
15356
15452
  ] }),
15357
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
15453
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
15358
15454
  "div",
15359
15455
  {
15360
- className: (0, import_clsx49.clsx)(`absolute w-0 h-0`, triangleClasses[position]),
15456
+ className: (0, import_clsx50.clsx)(`absolute w-0 h-0`, triangleClasses[position]),
15361
15457
  style: { ...triangleStyle[position], zIndex: zIndex + 1 }
15362
15458
  }
15363
15459
  )
@@ -15370,8 +15466,8 @@ var CopyToClipboardWrapper = ({
15370
15466
  };
15371
15467
 
15372
15468
  // src/components/user-action/DateAndTimePicker.tsx
15373
- var import_clsx50 = __toESM(require("clsx"));
15374
- var import_jsx_runtime69 = require("react/jsx-runtime");
15469
+ var import_clsx51 = __toESM(require("clsx"));
15470
+ var import_jsx_runtime70 = require("react/jsx-runtime");
15375
15471
  var DateTimePicker = ({
15376
15472
  value = /* @__PURE__ */ new Date(),
15377
15473
  start = subtractDuration(/* @__PURE__ */ new Date(), { years: 50 }),
@@ -15389,7 +15485,7 @@ var DateTimePicker = ({
15389
15485
  let dateDisplay;
15390
15486
  let timeDisplay;
15391
15487
  if (useDate) {
15392
- dateDisplay = /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
15488
+ dateDisplay = /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15393
15489
  DatePicker,
15394
15490
  {
15395
15491
  ...datePickerProps,
@@ -15403,25 +15499,25 @@ var DateTimePicker = ({
15403
15499
  );
15404
15500
  }
15405
15501
  if (useTime) {
15406
- timeDisplay = /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
15502
+ timeDisplay = /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15407
15503
  TimePicker,
15408
15504
  {
15409
15505
  ...timePickerProps,
15410
- className: (0, import_clsx50.default)("h-full", { "justify-between w-full": mode === "time" }),
15506
+ className: (0, import_clsx51.default)("h-full", { "justify-between w-full": mode === "time" }),
15411
15507
  maxHeight: 250,
15412
15508
  time: value,
15413
15509
  onChange
15414
15510
  }
15415
15511
  );
15416
15512
  }
15417
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-col-2 w-fit", children: [
15418
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-row-4", children: [
15513
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex-col-2 w-fit", children: [
15514
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex-row-4", children: [
15419
15515
  dateDisplay,
15420
15516
  timeDisplay
15421
15517
  ] }),
15422
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex-row-2 justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-row-2 mt-1", children: [
15423
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(SolidButton, { size: "medium", color: "negative", onClick: onRemove, children: translation("clear") }),
15424
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
15518
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "flex-row-2 justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex-row-2 mt-1", children: [
15519
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(SolidButton, { size: "medium", color: "negative", onClick: onRemove, children: translation("clear") }),
15520
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15425
15521
  SolidButton,
15426
15522
  {
15427
15523
  size: "medium",
@@ -15434,9 +15530,9 @@ var DateTimePicker = ({
15434
15530
  };
15435
15531
 
15436
15532
  // src/components/user-action/ScrollPicker.tsx
15437
- var import_react41 = require("react");
15438
- var import_clsx51 = __toESM(require("clsx"));
15439
- var import_jsx_runtime70 = require("react/jsx-runtime");
15533
+ var import_react43 = require("react");
15534
+ var import_clsx52 = __toESM(require("clsx"));
15535
+ var import_jsx_runtime71 = require("react/jsx-runtime");
15440
15536
  var up = 1;
15441
15537
  var down = -1;
15442
15538
  var ScrollPicker = ({
@@ -15455,7 +15551,7 @@ var ScrollPicker = ({
15455
15551
  transition,
15456
15552
  items,
15457
15553
  lastTimeStamp
15458
- }, setAnimation] = (0, import_react41.useState)({
15554
+ }, setAnimation] = (0, import_react43.useState)({
15459
15555
  targetIndex: selectedIndex,
15460
15556
  currentIndex: disabled ? selectedIndex : 0,
15461
15557
  velocity: 0,
@@ -15471,7 +15567,7 @@ var ScrollPicker = ({
15471
15567
  const itemHeight = 40;
15472
15568
  const distance = 8;
15473
15569
  const containerHeight = itemHeight * (itemsShownCount - 2) + distance * (itemsShownCount - 2 + 1);
15474
- const getDirection = (0, import_react41.useCallback)((targetIndex, currentIndex2, transition2, length) => {
15570
+ const getDirection = (0, import_react43.useCallback)((targetIndex, currentIndex2, transition2, length) => {
15475
15571
  if (targetIndex === currentIndex2) {
15476
15572
  return transition2 > 0 ? up : down;
15477
15573
  }
@@ -15481,7 +15577,7 @@ var ScrollPicker = ({
15481
15577
  }
15482
15578
  return distanceForward >= length / 2 ? down : up;
15483
15579
  }, []);
15484
- const animate = (0, import_react41.useCallback)((timestamp, startTime) => {
15580
+ const animate = (0, import_react43.useCallback)((timestamp, startTime) => {
15485
15581
  setAnimation((prevState) => {
15486
15582
  const {
15487
15583
  targetIndex,
@@ -15554,7 +15650,7 @@ var ScrollPicker = ({
15554
15650
  };
15555
15651
  });
15556
15652
  }, [disabled, getDirection, onChange]);
15557
- (0, import_react41.useEffect)(() => {
15653
+ (0, import_react43.useEffect)(() => {
15558
15654
  requestAnimationFrame((timestamp) => animate(timestamp, lastTimeStamp));
15559
15655
  });
15560
15656
  const opacity = (transition2, index, itemsCount) => {
@@ -15575,7 +15671,7 @@ var ScrollPicker = ({
15575
15671
  }
15576
15672
  return clamp(1 - opacityValue / max);
15577
15673
  };
15578
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15674
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
15579
15675
  "div",
15580
15676
  {
15581
15677
  className: "relative overflow-hidden",
@@ -15586,15 +15682,15 @@ var ScrollPicker = ({
15586
15682
  setAnimation(({ velocity, ...animationData }) => ({ ...animationData, velocity: velocity + deltaY }));
15587
15683
  }
15588
15684
  },
15589
- children: /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "absolute top-1/2 -translate-y-1/2 -translate-x-1/2 left-1/2", children: [
15590
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15685
+ children: /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "absolute top-1/2 -translate-y-1/2 -translate-x-1/2 left-1/2", children: [
15686
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
15591
15687
  "div",
15592
15688
  {
15593
15689
  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 ",
15594
15690
  style: { height: `${itemHeight}px` }
15595
15691
  }
15596
15692
  ),
15597
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15693
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
15598
15694
  "div",
15599
15695
  {
15600
15696
  className: "flex-col-2 select-none",
@@ -15602,10 +15698,10 @@ var ScrollPicker = ({
15602
15698
  transform: `translateY(${-transition * (distance + itemHeight)}px)`,
15603
15699
  columnGap: `${distance}px`
15604
15700
  },
15605
- children: shownItems.map(({ name, index }, arrayIndex) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
15701
+ children: shownItems.map(({ name, index }, arrayIndex) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
15606
15702
  "div",
15607
15703
  {
15608
- className: (0, import_clsx51.default)(
15704
+ className: (0, import_clsx52.default)(
15609
15705
  `flex-col-2 items-center justify-center rounded-md`,
15610
15706
  {
15611
15707
  "text-primary font-bold": currentIndex === index,
@@ -15633,8 +15729,8 @@ var ScrollPicker = ({
15633
15729
 
15634
15730
  // src/components/user-action/SearchBar.tsx
15635
15731
  var import_lucide_react23 = require("lucide-react");
15636
- var import_clsx52 = require("clsx");
15637
- var import_jsx_runtime71 = require("react/jsx-runtime");
15732
+ var import_clsx53 = require("clsx");
15733
+ var import_jsx_runtime72 = require("react/jsx-runtime");
15638
15734
  var SearchBar = ({
15639
15735
  placeholder,
15640
15736
  onSearch,
@@ -15643,21 +15739,21 @@ var SearchBar = ({
15643
15739
  ...inputProps
15644
15740
  }) => {
15645
15741
  const translation = useHightideTranslation();
15646
- return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: (0, import_clsx52.clsx)("flex-row-2 justify-between items-center", containerClassName), children: [
15647
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
15742
+ return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: (0, import_clsx53.clsx)("flex-row-2 justify-between items-center", containerClassName), children: [
15743
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
15648
15744
  Input,
15649
15745
  {
15650
15746
  ...inputProps,
15651
15747
  placeholder: placeholder ?? translation("search")
15652
15748
  }
15653
15749
  ),
15654
- onSearch && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(IconButton, { color: "neutral", disabled: disableOnSearch, onClick: onSearch, children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react23.Search, { className: "w-full h-full" }) })
15750
+ onSearch && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(IconButton, { color: "neutral", disabled: disableOnSearch, onClick: onSearch, children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_lucide_react23.Search, { className: "w-full h-full" }) })
15655
15751
  ] });
15656
15752
  };
15657
15753
 
15658
15754
  // src/components/user-action/Tooltip.tsx
15659
- var import_clsx53 = require("clsx");
15660
- var import_jsx_runtime72 = require("react/jsx-runtime");
15755
+ var import_clsx54 = require("clsx");
15756
+ var import_jsx_runtime73 = require("react/jsx-runtime");
15661
15757
  var Tooltip = ({
15662
15758
  tooltip,
15663
15759
  children,
@@ -15687,17 +15783,17 @@ var Tooltip = ({
15687
15783
  left: { borderWidth: `${triangleSize}px 0 ${triangleSize}px ${triangleSize}px` },
15688
15784
  right: { borderWidth: `${triangleSize}px ${triangleSize}px ${triangleSize}px 0` }
15689
15785
  };
15690
- return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
15786
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
15691
15787
  "div",
15692
15788
  {
15693
- className: (0, import_clsx53.clsx)("relative inline-block", containerClassName),
15789
+ className: (0, import_clsx54.clsx)("relative inline-block", containerClassName),
15694
15790
  ...handlers,
15695
15791
  children: [
15696
15792
  children,
15697
- isHovered && /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
15793
+ isHovered && /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
15698
15794
  "div",
15699
15795
  {
15700
- className: (0, import_clsx53.clsx)(
15796
+ className: (0, import_clsx54.clsx)(
15701
15797
  `opacity-0 absolute text-xs font-semibold text-tooltip-text px-2 py-1 rounded whitespace-nowrap
15702
15798
  animate-tooltip-fade-in shadow-around-md bg-tooltip-background`,
15703
15799
  positionClasses[position],
@@ -15706,10 +15802,10 @@ var Tooltip = ({
15706
15802
  style: { zIndex, animationDelay: animationDelay + "ms" },
15707
15803
  children: [
15708
15804
  tooltip,
15709
- /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
15805
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
15710
15806
  "div",
15711
15807
  {
15712
- className: (0, import_clsx53.clsx)(`absolute w-0 h-0`, triangleClasses[position]),
15808
+ className: (0, import_clsx54.clsx)(`absolute w-0 h-0`, triangleClasses[position]),
15713
15809
  style: { ...triangleStyle[position], zIndex: zIndex + 1 }
15714
15810
  }
15715
15811
  )
@@ -15722,26 +15818,26 @@ var Tooltip = ({
15722
15818
  };
15723
15819
 
15724
15820
  // src/components/user-action/input/InsideLabelInput.tsx
15725
- var import_react42 = require("react");
15726
- var import_react43 = require("react");
15727
- var import_clsx54 = __toESM(require("clsx"));
15728
- var import_jsx_runtime73 = require("react/jsx-runtime");
15729
- var InsideLabelInput = (0, import_react43.forwardRef)(function InsideLabelInput2({
15821
+ var import_react44 = require("react");
15822
+ var import_react45 = require("react");
15823
+ var import_clsx55 = __toESM(require("clsx"));
15824
+ var import_jsx_runtime74 = require("react/jsx-runtime");
15825
+ var InsideLabelInput = (0, import_react45.forwardRef)(function InsideLabelInput2({
15730
15826
  id: customId,
15731
15827
  label,
15732
15828
  ...props
15733
15829
  }, forwardedRef) {
15734
15830
  const { value } = props;
15735
- const [isFocused, setIsFocused] = (0, import_react43.useState)(false);
15736
- const generatedId = (0, import_react42.useId)();
15831
+ const [isFocused, setIsFocused] = (0, import_react45.useState)(false);
15832
+ const generatedId = (0, import_react44.useId)();
15737
15833
  const id = customId ?? generatedId;
15738
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: (0, import_clsx54.default)("relative"), children: [
15739
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
15834
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: (0, import_clsx55.default)("relative"), children: [
15835
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
15740
15836
  Input,
15741
15837
  {
15742
15838
  ...props,
15743
15839
  id,
15744
- className: (0, import_clsx54.default)("h-14 px-4 pb-2 py-6.5", props.className),
15840
+ className: (0, import_clsx55.default)("h-14 px-4 pb-2 py-6.5", props.className),
15745
15841
  ref: forwardedRef,
15746
15842
  "aria-labelledby": id + "-label",
15747
15843
  onFocus: (event) => {
@@ -15754,13 +15850,13 @@ var InsideLabelInput = (0, import_react43.forwardRef)(function InsideLabelInput2
15754
15850
  }
15755
15851
  }
15756
15852
  ),
15757
- /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
15853
+ /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
15758
15854
  "label",
15759
15855
  {
15760
15856
  id: id + "-label",
15761
15857
  "aria-hidden": true,
15762
15858
  "data-display": isFocused || !!value ? "small" : "full",
15763
- className: (0, import_clsx54.default)(
15859
+ className: (0, import_clsx55.default)(
15764
15860
  // margin left to account for the border which is ignored for absolute positions
15765
15861
  "absolute left-4 ml-0.5 top-2 transition-all delay-25 pointer-events-none touch-none",
15766
15862
  "data-[display=small]:top-2 data-[display=small]:h-force-4.5 data-[display=small]:typography-caption-sm data-[display=small]:overflow-y-hidden",
@@ -15776,7 +15872,7 @@ var InsideLabelInputUncontrolled = ({
15776
15872
  ...props
15777
15873
  }) => {
15778
15874
  const [value, setValue] = useOverwritableState(initialValue, props.onChangeText);
15779
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
15875
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
15780
15876
  InsideLabelInput,
15781
15877
  {
15782
15878
  ...props,
@@ -15787,26 +15883,26 @@ var InsideLabelInputUncontrolled = ({
15787
15883
  };
15788
15884
 
15789
15885
  // src/components/user-action/input/ToggleableInput.tsx
15790
- var import_react44 = require("react");
15886
+ var import_react46 = require("react");
15791
15887
  var import_lucide_react24 = require("lucide-react");
15792
- var import_clsx55 = __toESM(require("clsx"));
15793
- var import_jsx_runtime74 = require("react/jsx-runtime");
15794
- var ToggleableInput = (0, import_react44.forwardRef)(function ToggleableInput2({
15888
+ var import_clsx56 = __toESM(require("clsx"));
15889
+ var import_jsx_runtime75 = require("react/jsx-runtime");
15890
+ var ToggleableInput = (0, import_react46.forwardRef)(function ToggleableInput2({
15795
15891
  value,
15796
15892
  initialState = "display",
15797
15893
  editCompleteOptions,
15798
15894
  ...props
15799
15895
  }, forwardedRef) {
15800
- const [isEditing, setIsEditing] = (0, import_react44.useState)(initialState !== "display");
15801
- const innerRef = (0, import_react44.useRef)(null);
15802
- (0, import_react44.useImperativeHandle)(forwardedRef, () => innerRef.current);
15803
- (0, import_react44.useEffect)(() => {
15896
+ const [isEditing, setIsEditing] = (0, import_react46.useState)(initialState !== "display");
15897
+ const innerRef = (0, import_react46.useRef)(null);
15898
+ (0, import_react46.useImperativeHandle)(forwardedRef, () => innerRef.current);
15899
+ (0, import_react46.useEffect)(() => {
15804
15900
  if (isEditing) {
15805
15901
  innerRef.current?.focus();
15806
15902
  }
15807
15903
  }, [isEditing]);
15808
- return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: (0, import_clsx55.default)("relative flex-row-2", { "flex-1": isEditing }), children: [
15809
- /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
15904
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: (0, import_clsx56.default)("relative flex-row-2", { "flex-1": isEditing }), children: [
15905
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
15810
15906
  Input,
15811
15907
  {
15812
15908
  ...props,
@@ -15825,16 +15921,16 @@ var ToggleableInput = (0, import_react44.forwardRef)(function ToggleableInput2({
15825
15921
  ...editCompleteOptions,
15826
15922
  allowEnterComplete: true
15827
15923
  },
15828
- className: (0, import_clsx55.default)(`w-full ring-0 outline-0 decoration-primary underline-offset-4`, {
15924
+ className: (0, import_clsx56.default)(`w-full ring-0 outline-0 decoration-primary underline-offset-4`, {
15829
15925
  "underline": isEditing,
15830
15926
  "text-transparent": !isEditing
15831
15927
  }),
15832
15928
  defaultStyle: false
15833
15929
  }
15834
15930
  ),
15835
- !isEditing && /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("div", { className: "absolute left-0 flex-row-2 items-center pointer-events-none touch-none w-full overflow-hidden", children: [
15836
- /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("span", { className: (0, import_clsx55.default)(" truncate"), children: value }),
15837
- /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_lucide_react24.Pencil, { className: (0, import_clsx55.default)(`size-force-4`, { "text-transparent": isEditing }) })
15931
+ !isEditing && /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: "absolute left-0 flex-row-2 items-center pointer-events-none touch-none w-full overflow-hidden", children: [
15932
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("span", { className: (0, import_clsx56.default)(" truncate"), children: value }),
15933
+ /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_lucide_react24.Pencil, { className: (0, import_clsx56.default)(`size-force-4`, { "text-transparent": isEditing }) })
15838
15934
  ] })
15839
15935
  ] });
15840
15936
  });
@@ -15844,7 +15940,7 @@ var ToggleableInputUncontrolled = ({
15844
15940
  ...restProps
15845
15941
  }) => {
15846
15942
  const [value, setValue] = useOverwritableState(initialValue, onChangeText);
15847
- return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
15943
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
15848
15944
  ToggleableInput,
15849
15945
  {
15850
15946
  value,
@@ -15855,33 +15951,33 @@ var ToggleableInputUncontrolled = ({
15855
15951
  };
15856
15952
 
15857
15953
  // src/components/utils/FocusTrap.tsx
15858
- var import_react45 = require("react");
15859
- var import_react46 = require("react");
15860
15954
  var import_react47 = require("react");
15861
- var import_jsx_runtime75 = require("react/jsx-runtime");
15862
- var FocusTrap = (0, import_react47.forwardRef)(function FocusTrap2({
15955
+ var import_react48 = require("react");
15956
+ var import_react49 = require("react");
15957
+ var import_jsx_runtime76 = require("react/jsx-runtime");
15958
+ var FocusTrap = (0, import_react49.forwardRef)(function FocusTrap2({
15863
15959
  active = true,
15864
15960
  initialFocus,
15865
15961
  focusFirst = false,
15866
15962
  ...props
15867
15963
  }, forwardedRef) {
15868
- const innerRef = (0, import_react45.useRef)(null);
15869
- (0, import_react46.useImperativeHandle)(forwardedRef, () => innerRef.current);
15964
+ const innerRef = (0, import_react47.useRef)(null);
15965
+ (0, import_react48.useImperativeHandle)(forwardedRef, () => innerRef.current);
15870
15966
  useFocusTrap({ container: innerRef, active, initialFocus, focusFirst });
15871
- return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { ref: innerRef, ...props });
15967
+ return /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { ref: innerRef, ...props });
15872
15968
  });
15873
15969
 
15874
15970
  // src/components/utils/Transition.tsx
15875
- var import_react48 = require("react");
15971
+ var import_react50 = require("react");
15876
15972
  function Transition({
15877
15973
  children,
15878
15974
  show,
15879
15975
  includeAnimation = true
15880
15976
  }) {
15881
- const [isOpen, setIsOpen] = (0, import_react48.useState)(show);
15882
- const [isTransitioning, setIsTransitioning] = (0, import_react48.useState)(!isOpen);
15977
+ const [isOpen, setIsOpen] = (0, import_react50.useState)(show);
15978
+ const [isTransitioning, setIsTransitioning] = (0, import_react50.useState)(!isOpen);
15883
15979
  const isUsingReducedMotion = typeof window !== "undefined" && typeof window.matchMedia === "function" ? window.matchMedia("(prefers-reduced-motion: reduce)").matches : true;
15884
- (0, import_react48.useEffect)(() => {
15980
+ (0, import_react50.useEffect)(() => {
15885
15981
  setIsOpen(show);
15886
15982
  setIsTransitioning(true);
15887
15983
  }, [show]);
@@ -15906,7 +16002,7 @@ function Transition({
15906
16002
  }
15907
16003
 
15908
16004
  // src/hooks/focus/useFocusGuards.ts
15909
- var import_react49 = require("react");
16005
+ var import_react51 = require("react");
15910
16006
  var selectorName = "data-hw-focus-guard";
15911
16007
  function FocusGuard() {
15912
16008
  const element = document.createElement("div");
@@ -15944,7 +16040,7 @@ var FocusGuardsService = class _FocusGuardsService {
15944
16040
  }
15945
16041
  };
15946
16042
  var useFocusGuards = () => {
15947
- (0, import_react49.useEffect)(() => {
16043
+ (0, import_react51.useEffect)(() => {
15948
16044
  FocusGuardsService.getInstance().add();
15949
16045
  return () => {
15950
16046
  FocusGuardsService.getInstance().remove();
@@ -15953,10 +16049,10 @@ var useFocusGuards = () => {
15953
16049
  };
15954
16050
 
15955
16051
  // src/hooks/focus/useFocusOnceVisible.ts
15956
- var import_react50 = __toESM(require("react"));
16052
+ var import_react52 = __toESM(require("react"));
15957
16053
  var useFocusOnceVisible = (ref, disable = false) => {
15958
- const [hasUsedFocus, setHasUsedFocus] = import_react50.default.useState(false);
15959
- (0, import_react50.useEffect)(() => {
16054
+ const [hasUsedFocus, setHasUsedFocus] = import_react52.default.useState(false);
16055
+ (0, import_react52.useEffect)(() => {
15960
16056
  if (disable || hasUsedFocus) {
15961
16057
  return;
15962
16058
  }
@@ -15976,13 +16072,13 @@ var useFocusOnceVisible = (ref, disable = false) => {
15976
16072
  };
15977
16073
 
15978
16074
  // src/hooks/useRerender.ts
15979
- var import_react51 = require("react");
16075
+ var import_react53 = require("react");
15980
16076
  var useRerender = () => {
15981
- return (0, import_react51.useReducer)(() => ({}), {})[1];
16077
+ return (0, import_react53.useReducer)(() => ({}), {})[1];
15982
16078
  };
15983
16079
 
15984
16080
  // src/hooks/useSearch.ts
15985
- var import_react52 = require("react");
16081
+ var import_react54 = require("react");
15986
16082
 
15987
16083
  // src/utils/simpleSearch.ts
15988
16084
  var MultiSubjectSearchWithMapping = (search, objects, mapping) => {
@@ -16021,34 +16117,34 @@ var useSearch = ({
16021
16117
  filter,
16022
16118
  disabled = false
16023
16119
  }) => {
16024
- const [search, setSearch] = (0, import_react52.useState)(initialSearch ?? "");
16025
- const [result, setResult] = (0, import_react52.useState)(list);
16026
- const searchTags = (0, import_react52.useMemo)(() => additionalSearchTags ?? [], [additionalSearchTags]);
16027
- const updateSearch = (0, import_react52.useCallback)((newSearch) => {
16120
+ const [search, setSearch] = (0, import_react54.useState)(initialSearch ?? "");
16121
+ const [result, setResult] = (0, import_react54.useState)(list);
16122
+ const searchTags = (0, import_react54.useMemo)(() => additionalSearchTags ?? [], [additionalSearchTags]);
16123
+ const updateSearch = (0, import_react54.useCallback)((newSearch) => {
16028
16124
  const usedSearch = newSearch ?? search;
16029
16125
  if (newSearch) {
16030
16126
  setSearch(search);
16031
16127
  }
16032
16128
  setResult(MultiSubjectSearchWithMapping([usedSearch, ...searchTags], list, searchMapping));
16033
16129
  }, [searchTags, list, search, searchMapping]);
16034
- (0, import_react52.useEffect)(() => {
16130
+ (0, import_react54.useEffect)(() => {
16035
16131
  if (isSearchInstant) {
16036
16132
  setResult(MultiSubjectSearchWithMapping([search, ...searchTags], list, searchMapping));
16037
16133
  }
16038
16134
  }, [searchTags, isSearchInstant, list, search, searchMapping, additionalSearchTags]);
16039
- const filteredResult = (0, import_react52.useMemo)(() => {
16135
+ const filteredResult = (0, import_react54.useMemo)(() => {
16040
16136
  if (!filter) {
16041
16137
  return result;
16042
16138
  }
16043
16139
  return result.filter(filter);
16044
16140
  }, [result, filter]);
16045
- const sortedAndFilteredResult = (0, import_react52.useMemo)(() => {
16141
+ const sortedAndFilteredResult = (0, import_react54.useMemo)(() => {
16046
16142
  if (!sortingFunction) {
16047
16143
  return filteredResult;
16048
16144
  }
16049
16145
  return filteredResult.sort(sortingFunction);
16050
16146
  }, [filteredResult, sortingFunction]);
16051
- const usedResult = (0, import_react52.useMemo)(() => {
16147
+ const usedResult = (0, import_react54.useMemo)(() => {
16052
16148
  if (!disabled) {
16053
16149
  return sortedAndFilteredResult;
16054
16150
  }
@@ -16362,6 +16458,8 @@ var noop = () => void 0;
16362
16458
  SolidButton,
16363
16459
  StepperBar,
16364
16460
  StepperBarUncontrolled,
16461
+ Tab,
16462
+ TabView,
16365
16463
  Table,
16366
16464
  TableCell,
16367
16465
  TableFilterButton,
@@ -16437,6 +16535,7 @@ var noop = () => void 0;
16437
16535
  useRerender,
16438
16536
  useResizeCallbackWrapper,
16439
16537
  useSearch,
16538
+ useTabContext,
16440
16539
  useTheme,
16441
16540
  useTranslatedValidators,
16442
16541
  validateEmail,