@helpwave/hightide 0.10.2 → 0.11.0

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.mjs CHANGED
@@ -19828,17 +19828,95 @@ var TableHeader = ({ isSticky = false }) => {
19828
19828
  ] });
19829
19829
  };
19830
19830
 
19831
- // src/components/layout/table/TableDisplay.tsx
19831
+ // src/components/layout/table/VirtualizedTableBody.tsx
19832
+ import { useEffect as useEffect46, useRef as useRef37, useState as useState36 } from "react";
19833
+ import { flexRender as flexRender4 } from "@tanstack/react-table";
19834
+ import { useVirtualizer, useWindowVirtualizer } from "@tanstack/react-virtual";
19835
+ import clsx33 from "clsx";
19832
19836
  import { jsx as jsx83, jsxs as jsxs52 } from "react/jsx-runtime";
19837
+ var VirtualizedTableBody = ({
19838
+ estimateRowHeight = 48,
19839
+ overscan = 8,
19840
+ scroll = "window"
19841
+ }) => {
19842
+ const { table, onRowClick } = useTableStateWithoutSizingContext();
19843
+ const { containerRef } = useTableContainerContext();
19844
+ const rows = table.getRowModel().rows;
19845
+ const bodyRef = useRef37(null);
19846
+ const [isMounted, setIsMounted] = useState36(false);
19847
+ const [scrollMargin, setScrollMargin] = useState36(0);
19848
+ useEffect46(() => setIsMounted(true), []);
19849
+ useEffect46(() => {
19850
+ if (scroll !== "window") return;
19851
+ const element = bodyRef.current;
19852
+ if (!element || typeof window === "undefined") return;
19853
+ const measure = () => {
19854
+ const next = element.getBoundingClientRect().top + window.scrollY;
19855
+ setScrollMargin((prev) => Math.abs(prev - next) < 1 ? prev : next);
19856
+ };
19857
+ measure();
19858
+ const resizeObserver = new ResizeObserver(measure);
19859
+ resizeObserver.observe(element);
19860
+ window.addEventListener("resize", measure);
19861
+ return () => {
19862
+ resizeObserver.disconnect();
19863
+ window.removeEventListener("resize", measure);
19864
+ };
19865
+ }, [scroll]);
19866
+ const common = {
19867
+ count: rows.length,
19868
+ estimateSize: () => estimateRowHeight,
19869
+ overscan,
19870
+ getItemKey: (index) => rows[index]?.id ?? index
19871
+ };
19872
+ const windowVirtualizer = useWindowVirtualizer({ ...common, scrollMargin });
19873
+ const containerVirtualizer = useVirtualizer({ ...common, getScrollElement: () => containerRef.current });
19874
+ const virtualizer = scroll === "window" ? windowVirtualizer : containerVirtualizer;
19875
+ const offset = scroll === "window" ? scrollMargin : 0;
19876
+ const renderRow = (row, key, measured, dataIndex) => /* @__PURE__ */ jsx83(
19877
+ "tr",
19878
+ {
19879
+ "data-index": dataIndex,
19880
+ ref: measured ? virtualizer.measureElement : void 0,
19881
+ onClick: () => onRowClick?.(row, table),
19882
+ "data-clickable": PropsUtil.dataAttributes.bool(!!onRowClick),
19883
+ "data-name": "table-body-row",
19884
+ className: clsx33(BagFunctionUtil.resolve(table.options.meta?.bodyRowClassName, row.original)),
19885
+ children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx83("td", { "data-name": "table-body-cell", className: clsx33(cell.column.columnDef.meta?.className), children: flexRender4(cell.column.columnDef.cell, cell.getContext()) }, cell.id))
19886
+ },
19887
+ key
19888
+ );
19889
+ if (!isMounted) {
19890
+ return /* @__PURE__ */ jsx83("tbody", { ref: bodyRef, children: rows.map((row) => renderRow(row, row.id, false)) });
19891
+ }
19892
+ const items = virtualizer.getVirtualItems();
19893
+ const total = virtualizer.getTotalSize();
19894
+ const paddingTop = items.length ? items[0].start - offset : 0;
19895
+ const paddingBottom = items.length ? total - (items[items.length - 1].end - offset) : 0;
19896
+ const columnCount = Math.max(1, table.getVisibleLeafColumns().length);
19897
+ return /* @__PURE__ */ jsxs52("tbody", { ref: bodyRef, children: [
19898
+ paddingTop > 0 && /* @__PURE__ */ jsx83("tr", { "aria-hidden": "true", children: /* @__PURE__ */ jsx83("td", { colSpan: columnCount, style: { height: paddingTop, padding: 0, border: 0 } }) }),
19899
+ items.map((virtualRow) => {
19900
+ const row = rows[virtualRow.index];
19901
+ if (!row) return null;
19902
+ return renderRow(row, virtualRow.key, true, virtualRow.index);
19903
+ }),
19904
+ paddingBottom > 0 && /* @__PURE__ */ jsx83("tr", { "aria-hidden": "true", children: /* @__PURE__ */ jsx83("td", { colSpan: columnCount, style: { height: paddingBottom, padding: 0, border: 0 } }) })
19905
+ ] });
19906
+ };
19907
+
19908
+ // src/components/layout/table/TableDisplay.tsx
19909
+ import { jsx as jsx84, jsxs as jsxs53 } from "react/jsx-runtime";
19833
19910
  var TableDisplay = ({
19834
19911
  children,
19835
19912
  containerProps,
19836
19913
  tableHeaderProps,
19914
+ virtualized = false,
19837
19915
  ...props
19838
19916
  }) => {
19839
19917
  const { table } = useTableStateContext();
19840
19918
  const { containerRef } = useTableContainerContext();
19841
- return /* @__PURE__ */ jsx83("div", { ...containerProps, ref: containerRef, "data-name": containerProps?.["data-name"] ?? "table-container", children: /* @__PURE__ */ jsxs52(
19919
+ return /* @__PURE__ */ jsx84("div", { ...containerProps, ref: containerRef, "data-name": containerProps?.["data-name"] ?? "table-container", children: /* @__PURE__ */ jsxs53(
19842
19920
  "table",
19843
19921
  {
19844
19922
  ...props,
@@ -19849,19 +19927,19 @@ var TableDisplay = ({
19849
19927
  },
19850
19928
  children: [
19851
19929
  children,
19852
- /* @__PURE__ */ jsx83(TableHeader, { ...tableHeaderProps }),
19853
- /* @__PURE__ */ jsx83(TableBody, {})
19930
+ /* @__PURE__ */ jsx84(TableHeader, { ...tableHeaderProps }),
19931
+ virtualized ? /* @__PURE__ */ jsx84(VirtualizedTableBody, { ...typeof virtualized === "object" ? virtualized : {} }) : /* @__PURE__ */ jsx84(TableBody, {})
19854
19932
  ]
19855
19933
  }
19856
19934
  ) });
19857
19935
  };
19858
19936
 
19859
19937
  // src/components/layout/table/TablePagination.tsx
19860
- import clsx33 from "clsx";
19861
- import { jsx as jsx84, jsxs as jsxs53 } from "react/jsx-runtime";
19938
+ import clsx34 from "clsx";
19939
+ import { jsx as jsx85, jsxs as jsxs54 } from "react/jsx-runtime";
19862
19940
  var TablePaginationMenu = ({ ...props }) => {
19863
19941
  const { table } = useTableStateWithoutSizingContext();
19864
- return /* @__PURE__ */ jsx84(
19942
+ return /* @__PURE__ */ jsx85(
19865
19943
  Pagination,
19866
19944
  {
19867
19945
  ...props,
@@ -19881,27 +19959,27 @@ var TablePageSizeSelect = ({
19881
19959
  }) => {
19882
19960
  const { table } = useTableStateWithoutSizingContext();
19883
19961
  const currentPageSize = table.getState().pagination.pageSize;
19884
- return /* @__PURE__ */ jsx84(
19962
+ return /* @__PURE__ */ jsx85(
19885
19963
  Select,
19886
19964
  {
19887
19965
  ...props,
19888
19966
  value: currentPageSize.toString(),
19889
19967
  onValueChange: (value) => table.setPageSize(Number(value)),
19890
- children: pageSizeOptions.map((size) => /* @__PURE__ */ jsx84(SelectOption, { value: size.toString(), label: size.toString() }, size))
19968
+ children: pageSizeOptions.map((size) => /* @__PURE__ */ jsx85(SelectOption, { value: size.toString(), label: size.toString() }, size))
19891
19969
  }
19892
19970
  );
19893
19971
  };
19894
19972
  var TablePagination = ({ allowChangingPageSize = true, pageSizeOptions, ...props }) => {
19895
- return /* @__PURE__ */ jsxs53("div", { ...props, className: clsx33("container flex-col-2 sm:flex-row-8 items-center justify-center", props.className), children: [
19896
- /* @__PURE__ */ jsx84(TablePaginationMenu, {}),
19897
- /* @__PURE__ */ jsx84(Visibility, { isVisible: allowChangingPageSize, children: /* @__PURE__ */ jsx84(TablePageSizeSelect, { pageSizeOptions, buttonProps: { className: "h-10 min-w-24 max-w-24" } }) })
19973
+ return /* @__PURE__ */ jsxs54("div", { ...props, className: clsx34("container flex-col-2 sm:flex-row-8 items-center justify-center", props.className), children: [
19974
+ /* @__PURE__ */ jsx85(TablePaginationMenu, {}),
19975
+ /* @__PURE__ */ jsx85(Visibility, { isVisible: allowChangingPageSize, children: /* @__PURE__ */ jsx85(TablePageSizeSelect, { pageSizeOptions, buttonProps: { className: "h-10 min-w-24 max-w-24" } }) })
19898
19976
  ] });
19899
19977
  };
19900
19978
 
19901
19979
  // src/components/user-interaction/Checkbox.tsx
19902
19980
  import { Check as Check5, Minus as Minus2 } from "lucide-react";
19903
19981
  import { useCallback as useCallback37 } from "react";
19904
- import { jsx as jsx85, jsxs as jsxs54 } from "react/jsx-runtime";
19982
+ import { jsx as jsx86, jsxs as jsxs55 } from "react/jsx-runtime";
19905
19983
  var Checkbox = ({
19906
19984
  value: controlledValue,
19907
19985
  initialValue = false,
@@ -19927,7 +20005,7 @@ var Checkbox = ({
19927
20005
  onValueChange: onChangeWrapper,
19928
20006
  defaultValue: initialValue
19929
20007
  });
19930
- return /* @__PURE__ */ jsxs54(
20008
+ return /* @__PURE__ */ jsxs55(
19931
20009
  "div",
19932
20010
  {
19933
20011
  ...props,
@@ -19954,8 +20032,8 @@ var Checkbox = ({
19954
20032
  ...PropsUtil.aria.interactionStates({ disabled, invalid, readOnly, required }, props),
19955
20033
  "data-name": props["data-name"] ?? "checkbox",
19956
20034
  children: [
19957
- /* @__PURE__ */ jsx85(Visibility, { isVisible: indeterminate, children: /* @__PURE__ */ jsx85(Minus2, { "data-name": "checkbox-indicator", className: "checkbox-indicator", "aria-hidden": true }) }),
19958
- /* @__PURE__ */ jsx85(Visibility, { isVisible: !indeterminate && (alwaysShowCheckIcon || value), children: /* @__PURE__ */ jsx85(Check5, { "data-name": "checkbox-indicator", className: "checkbox-indicator", "aria-hidden": true }) })
20035
+ /* @__PURE__ */ jsx86(Visibility, { isVisible: indeterminate, children: /* @__PURE__ */ jsx86(Minus2, { "data-name": "checkbox-indicator", className: "checkbox-indicator", "aria-hidden": true }) }),
20036
+ /* @__PURE__ */ jsx86(Visibility, { isVisible: !indeterminate && (alwaysShowCheckIcon || value), children: /* @__PURE__ */ jsx86(Check5, { "data-name": "checkbox-indicator", className: "checkbox-indicator", "aria-hidden": true }) })
19959
20037
  ]
19960
20038
  }
19961
20039
  );
@@ -19963,7 +20041,7 @@ var Checkbox = ({
19963
20041
 
19964
20042
  // src/components/layout/table/TableWithSelectionProvider.tsx
19965
20043
  import { useCallback as useCallback38, useMemo as useMemo37 } from "react";
19966
- import { jsx as jsx86 } from "react/jsx-runtime";
20044
+ import { jsx as jsx87 } from "react/jsx-runtime";
19967
20045
  var TableWithSelectionProvider = ({
19968
20046
  children,
19969
20047
  state,
@@ -19979,7 +20057,7 @@ var TableWithSelectionProvider = ({
19979
20057
  {
19980
20058
  id: selectionRowId,
19981
20059
  header: ({ table }) => {
19982
- return /* @__PURE__ */ jsx86(
20060
+ return /* @__PURE__ */ jsx87(
19983
20061
  Checkbox,
19984
20062
  {
19985
20063
  value: table.getIsAllRowsSelected(),
@@ -19992,7 +20070,7 @@ var TableWithSelectionProvider = ({
19992
20070
  );
19993
20071
  },
19994
20072
  cell: ({ row }) => {
19995
- return /* @__PURE__ */ jsx86(
20073
+ return /* @__PURE__ */ jsx87(
19996
20074
  Checkbox,
19997
20075
  {
19998
20076
  disabled: !row.getCanSelect(),
@@ -20014,15 +20092,15 @@ var TableWithSelectionProvider = ({
20014
20092
  },
20015
20093
  ...props.columns ?? []
20016
20094
  ], [selectionRowId, props.columns, translation]);
20017
- return /* @__PURE__ */ jsx86(
20095
+ return /* @__PURE__ */ jsx87(
20018
20096
  TableProvider,
20019
20097
  {
20020
20098
  ...props,
20021
20099
  fillerRowCell: useCallback38((columnId, table) => {
20022
20100
  if (columnId === selectionRowId) {
20023
- return /* @__PURE__ */ jsx86(Checkbox, { value: false, disabled: true });
20101
+ return /* @__PURE__ */ jsx87(Checkbox, { value: false, disabled: true });
20024
20102
  }
20025
- return fillerRowCell?.(columnId, table) ?? /* @__PURE__ */ jsx86(FillerCell, {});
20103
+ return fillerRowCell?.(columnId, table) ?? /* @__PURE__ */ jsx87(FillerCell, {});
20026
20104
  }, [fillerRowCell, selectionRowId]),
20027
20105
  columns: columnDef,
20028
20106
  initialState: {
@@ -20048,14 +20126,14 @@ var TableWithSelectionProvider = ({
20048
20126
  };
20049
20127
 
20050
20128
  // src/components/layout/table/Table.tsx
20051
- import clsx34 from "clsx";
20052
- import { jsx as jsx87, jsxs as jsxs55 } from "react/jsx-runtime";
20129
+ import clsx35 from "clsx";
20130
+ import { jsx as jsx88, jsxs as jsxs56 } from "react/jsx-runtime";
20053
20131
  var Table = ({ children, table, paginationOptions, displayProps, header, footer, ...props }) => {
20054
20132
  const { showPagination = true, allowChangingPageSize, pageSizeOptions } = paginationOptions ?? {};
20055
- return /* @__PURE__ */ jsx87("div", { ...props, className: clsx34("flex-col-3", props.className), children: /* @__PURE__ */ jsxs55(TableProvider, { ...table, children: [
20133
+ return /* @__PURE__ */ jsx88("div", { ...props, className: clsx35("flex-col-3", props.className), children: /* @__PURE__ */ jsxs56(TableProvider, { ...table, children: [
20056
20134
  header,
20057
- /* @__PURE__ */ jsx87(TableDisplay, { ...displayProps, children }),
20058
- /* @__PURE__ */ jsx87(Visibility, { isVisible: showPagination, children: /* @__PURE__ */ jsx87(TablePagination, { allowChangingPageSize, pageSizeOptions }) }),
20135
+ /* @__PURE__ */ jsx88(TableDisplay, { ...displayProps, children }),
20136
+ /* @__PURE__ */ jsx88(Visibility, { isVisible: showPagination, children: /* @__PURE__ */ jsx88(TablePagination, { allowChangingPageSize, pageSizeOptions }) }),
20059
20137
  footer
20060
20138
  ] }) });
20061
20139
  };
@@ -20069,17 +20147,17 @@ var TableWithSelection = ({
20069
20147
  ...props
20070
20148
  }) => {
20071
20149
  const { showPagination = true, allowChangingPageSize, pageSizeOptions } = paginationOptions ?? {};
20072
- return /* @__PURE__ */ jsx87("div", { ...props, className: clsx34("flex-col-3", props.className), children: /* @__PURE__ */ jsxs55(TableWithSelectionProvider, { ...table, children: [
20150
+ return /* @__PURE__ */ jsx88("div", { ...props, className: clsx35("flex-col-3", props.className), children: /* @__PURE__ */ jsxs56(TableWithSelectionProvider, { ...table, children: [
20073
20151
  header,
20074
- /* @__PURE__ */ jsx87(TableDisplay, { ...displayProps, children }),
20075
- /* @__PURE__ */ jsx87(Visibility, { isVisible: showPagination, children: /* @__PURE__ */ jsx87(TablePagination, { allowChangingPageSize, pageSizeOptions }) }),
20152
+ /* @__PURE__ */ jsx88(TableDisplay, { ...displayProps, children }),
20153
+ /* @__PURE__ */ jsx88(Visibility, { isVisible: showPagination, children: /* @__PURE__ */ jsx88(TablePagination, { allowChangingPageSize, pageSizeOptions }) }),
20076
20154
  footer
20077
20155
  ] }) });
20078
20156
  };
20079
20157
 
20080
20158
  // src/components/layout/table/TableColumn.tsx
20081
- import { memo as memo2, useEffect as useEffect46, useMemo as useMemo38, useState as useState36 } from "react";
20082
- import { jsx as jsx88 } from "react/jsx-runtime";
20159
+ import { memo as memo2, useEffect as useEffect47, useMemo as useMemo38, useState as useState37 } from "react";
20160
+ import { jsx as jsx89 } from "react/jsx-runtime";
20083
20161
  var TableColumnComponent = ({
20084
20162
  filterType,
20085
20163
  ...props
@@ -20090,11 +20168,11 @@ var TableColumnComponent = ({
20090
20168
  "TableColumn: For filterType === multiTags or singleTag, filterData.tags must be set.",
20091
20169
  (filterType === "multiTags" || filterType === "singleTag") && props.meta?.filterData?.tags === void 0
20092
20170
  );
20093
- const [column] = useState36({
20171
+ const [column] = useState37({
20094
20172
  ...props,
20095
20173
  filterFn
20096
20174
  });
20097
- useEffect46(() => {
20175
+ useEffect47(() => {
20098
20176
  const unsubscribe = registerColumn(column);
20099
20177
  return () => {
20100
20178
  unsubscribe();
@@ -20110,17 +20188,17 @@ var TableColumnFactory = () => memo2(
20110
20188
  );
20111
20189
  var TableColumn = (props) => {
20112
20190
  const TableColumnComponent2 = useMemo38(() => TableColumnFactory(), []);
20113
- return /* @__PURE__ */ jsx88(TableColumnComponent2, { ...props });
20191
+ return /* @__PURE__ */ jsx89(TableColumnComponent2, { ...props });
20114
20192
  };
20115
20193
 
20116
20194
  // src/components/layout/table/TableColumnSwitcher.tsx
20117
- import { useMemo as useMemo39, useRef as useRef37, useId as useId21 } from "react";
20195
+ import { useMemo as useMemo39, useRef as useRef38, useId as useId21 } from "react";
20118
20196
  import { ChevronUp as ChevronUp3, ChevronDown as ChevronDown5, ChevronLeft as ChevronLeft5, ChevronRight as ChevronRight5, Eye, EyeOff, Pin, PinOff, Columns3Cog } from "lucide-react";
20119
- import { Fragment as Fragment10, jsx as jsx89, jsxs as jsxs56 } from "react/jsx-runtime";
20197
+ import { Fragment as Fragment10, jsx as jsx90, jsxs as jsxs57 } from "react/jsx-runtime";
20120
20198
  var TableColumnSwitcherPopUp = ({ ...props }) => {
20121
20199
  const { table } = useTableStateWithoutSizingContext();
20122
20200
  const translation = useHightideTranslation();
20123
- const containerRef = useRef37(null);
20201
+ const containerRef = useRef38(null);
20124
20202
  const generatedId = useId21();
20125
20203
  const ids = useMemo39(() => ({
20126
20204
  popup: props.id ?? `table-column-picker-popup-${generatedId}`,
@@ -20247,7 +20325,7 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20247
20325
  }
20248
20326
  return columnId;
20249
20327
  };
20250
- return /* @__PURE__ */ jsxs56(
20328
+ return /* @__PURE__ */ jsxs57(
20251
20329
  PopUp,
20252
20330
  {
20253
20331
  ...props,
@@ -20263,11 +20341,11 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20263
20341
  "aria-describedby": ids.label,
20264
20342
  className: "flex-col-1 p-2 items-start min-w-72",
20265
20343
  children: [
20266
- /* @__PURE__ */ jsxs56("div", { className: "flex-col-1", children: [
20267
- /* @__PURE__ */ jsx89("span", { id: ids.label, className: "typography-title-md font-semibold", children: translation("columnPicker") }),
20268
- /* @__PURE__ */ jsx89("span", { className: "text-description typography-label-sm mb-2", children: translation("columnPickerDescription") })
20344
+ /* @__PURE__ */ jsxs57("div", { className: "flex-col-1", children: [
20345
+ /* @__PURE__ */ jsx90("span", { id: ids.label, className: "typography-title-md font-semibold", children: translation("columnPicker") }),
20346
+ /* @__PURE__ */ jsx90("span", { className: "text-description typography-label-sm mb-2", children: translation("columnPickerDescription") })
20269
20347
  ] }),
20270
- /* @__PURE__ */ jsx89("div", { className: "flex-col-1 overflow-y-auto w-full", children: columns.map((column, index) => {
20348
+ /* @__PURE__ */ jsx90("div", { className: "flex-col-1 overflow-y-auto w-full", children: columns.map((column, index) => {
20271
20349
  const columnId = column.id;
20272
20350
  const isVisible = column.getIsVisible();
20273
20351
  const pinState = column.getIsPinned();
@@ -20278,9 +20356,9 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20278
20356
  const nextIsPinned = nextColumn?.getCanPin() && !!nextColumn.getIsPinned();
20279
20357
  const canMoveUp = index > 0 && !isPinned && !prevIsPinned;
20280
20358
  const canMoveDown = index < columns.length - 1 && !isPinned && !nextIsPinned;
20281
- return /* @__PURE__ */ jsxs56("div", { className: "flex-row-2 items-center justify-between gap-2 w-full", children: [
20282
- /* @__PURE__ */ jsx89("div", { className: "flex-row-2 gap-1", children: isPinned ? /* @__PURE__ */ jsxs56(Fragment10, { children: [
20283
- /* @__PURE__ */ jsx89(
20359
+ return /* @__PURE__ */ jsxs57("div", { className: "flex-row-2 items-center justify-between gap-2 w-full", children: [
20360
+ /* @__PURE__ */ jsx90("div", { className: "flex-row-2 gap-1", children: isPinned ? /* @__PURE__ */ jsxs57(Fragment10, { children: [
20361
+ /* @__PURE__ */ jsx90(
20284
20362
  IconButton,
20285
20363
  {
20286
20364
  tooltip: translation("pinToLeft"),
@@ -20289,10 +20367,10 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20289
20367
  coloringStyle: "text",
20290
20368
  disabled: pinState === "left",
20291
20369
  onClick: () => pinColumn(columnId, "left"),
20292
- children: /* @__PURE__ */ jsx89(ChevronLeft5, { className: "size-4" })
20370
+ children: /* @__PURE__ */ jsx90(ChevronLeft5, { className: "size-4" })
20293
20371
  }
20294
20372
  ),
20295
- /* @__PURE__ */ jsx89(
20373
+ /* @__PURE__ */ jsx90(
20296
20374
  IconButton,
20297
20375
  {
20298
20376
  tooltip: translation("pinToRight"),
@@ -20301,11 +20379,11 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20301
20379
  coloringStyle: "text",
20302
20380
  disabled: pinState === "right",
20303
20381
  onClick: () => pinColumn(columnId, "right"),
20304
- children: /* @__PURE__ */ jsx89(ChevronRight5, { className: "size-4" })
20382
+ children: /* @__PURE__ */ jsx90(ChevronRight5, { className: "size-4" })
20305
20383
  }
20306
20384
  )
20307
- ] }) : /* @__PURE__ */ jsxs56(Fragment10, { children: [
20308
- /* @__PURE__ */ jsx89(
20385
+ ] }) : /* @__PURE__ */ jsxs57(Fragment10, { children: [
20386
+ /* @__PURE__ */ jsx90(
20309
20387
  IconButton,
20310
20388
  {
20311
20389
  tooltip: translation("increaseSortingPriority"),
@@ -20314,10 +20392,10 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20314
20392
  coloringStyle: "text",
20315
20393
  disabled: !canMoveUp,
20316
20394
  onClick: () => moveColumn(columnId, "up"),
20317
- children: /* @__PURE__ */ jsx89(ChevronUp3, { className: "size-4" })
20395
+ children: /* @__PURE__ */ jsx90(ChevronUp3, { className: "size-4" })
20318
20396
  }
20319
20397
  ),
20320
- /* @__PURE__ */ jsx89(
20398
+ /* @__PURE__ */ jsx90(
20321
20399
  IconButton,
20322
20400
  {
20323
20401
  tooltip: translation("decreaseSortingPriority"),
@@ -20326,13 +20404,13 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20326
20404
  coloringStyle: "text",
20327
20405
  disabled: !canMoveDown,
20328
20406
  onClick: () => moveColumn(columnId, "down"),
20329
- children: /* @__PURE__ */ jsx89(ChevronDown5, { className: "size-4" })
20407
+ children: /* @__PURE__ */ jsx90(ChevronDown5, { className: "size-4" })
20330
20408
  }
20331
20409
  )
20332
20410
  ] }) }),
20333
- /* @__PURE__ */ jsx89("div", { className: "flex-1 typography-label-lg", children: getColumnHeader(columnId) }),
20334
- /* @__PURE__ */ jsxs56(Fragment10, { children: [
20335
- /* @__PURE__ */ jsx89(Visibility, { isVisible: enableHiding, children: /* @__PURE__ */ jsx89(
20411
+ /* @__PURE__ */ jsx90("div", { className: "flex-1 typography-label-lg", children: getColumnHeader(columnId) }),
20412
+ /* @__PURE__ */ jsxs57(Fragment10, { children: [
20413
+ /* @__PURE__ */ jsx90(Visibility, { isVisible: enableHiding, children: /* @__PURE__ */ jsx90(
20336
20414
  IconButton,
20337
20415
  {
20338
20416
  tooltip: translation("changeVisibility"),
@@ -20342,10 +20420,10 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20342
20420
  disabled: !column.getCanHide(),
20343
20421
  onClick: () => toggleColumnVisibility(columnId),
20344
20422
  "aria-label": isVisible ? translation("hideColumn") : translation("showColumn"),
20345
- children: isVisible ? /* @__PURE__ */ jsx89(Eye, { className: "size-4" }) : /* @__PURE__ */ jsx89(EyeOff, { className: "size-4" })
20423
+ children: isVisible ? /* @__PURE__ */ jsx90(Eye, { className: "size-4" }) : /* @__PURE__ */ jsx90(EyeOff, { className: "size-4" })
20346
20424
  }
20347
20425
  ) }),
20348
- /* @__PURE__ */ jsx89(Visibility, { isVisible: enableColumnPinning, children: /* @__PURE__ */ jsx89(
20426
+ /* @__PURE__ */ jsx90(Visibility, { isVisible: enableColumnPinning, children: /* @__PURE__ */ jsx90(
20349
20427
  IconButton,
20350
20428
  {
20351
20429
  tooltip: translation("changePinning"),
@@ -20361,7 +20439,7 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20361
20439
  }
20362
20440
  },
20363
20441
  "aria-label": isPinned ? translation("unpin") : translation("pinLeft"),
20364
- children: !isPinned ? /* @__PURE__ */ jsx89(PinOff, { className: "size-4" }) : /* @__PURE__ */ jsx89(Pin, { className: "size-4" })
20442
+ children: !isPinned ? /* @__PURE__ */ jsx90(PinOff, { className: "size-4" }) : /* @__PURE__ */ jsx90(Pin, { className: "size-4" })
20365
20443
  }
20366
20444
  ) })
20367
20445
  ] })
@@ -20373,18 +20451,18 @@ var TableColumnSwitcherPopUp = ({ ...props }) => {
20373
20451
  };
20374
20452
  var TableColumnSwitcher = ({ buttonProps, ...props }) => {
20375
20453
  const translation = useHightideTranslation();
20376
- return /* @__PURE__ */ jsxs56(PopUpRoot, { children: [
20377
- /* @__PURE__ */ jsx89(PopUpOpener, { children: ({ props: props2 }) => /* @__PURE__ */ jsx89(
20454
+ return /* @__PURE__ */ jsxs57(PopUpRoot, { children: [
20455
+ /* @__PURE__ */ jsx90(PopUpOpener, { children: ({ props: props2 }) => /* @__PURE__ */ jsx90(
20378
20456
  IconButton,
20379
20457
  {
20380
20458
  ...props2,
20381
20459
  color: "neutral",
20382
20460
  tooltip: translation("changeColumnDisplay"),
20383
20461
  ...buttonProps,
20384
- children: /* @__PURE__ */ jsx89(Columns3Cog, { className: "size-5" })
20462
+ children: /* @__PURE__ */ jsx90(Columns3Cog, { className: "size-5" })
20385
20463
  }
20386
20464
  ) }),
20387
- /* @__PURE__ */ jsx89(TableColumnSwitcherPopUp, { ...props })
20465
+ /* @__PURE__ */ jsx90(TableColumnSwitcherPopUp, { ...props })
20388
20466
  ] });
20389
20467
  };
20390
20468
 
@@ -20392,7 +20470,7 @@ var TableColumnSwitcher = ({ buttonProps, ...props }) => {
20392
20470
  import { forwardRef as forwardRef27 } from "react";
20393
20471
 
20394
20472
  // src/components/user-interaction/Combobox/ComboboxRoot.tsx
20395
- import { useCallback as useCallback40, useId as useId22, useMemo as useMemo41, useState as useState37 } from "react";
20473
+ import { useCallback as useCallback40, useId as useId22, useMemo as useMemo41, useState as useState38 } from "react";
20396
20474
 
20397
20475
  // src/components/user-interaction/Combobox/ComboboxContext.tsx
20398
20476
  import { createContext as createContext17, useContext as useContext19 } from "react";
@@ -20472,16 +20550,16 @@ function useCombobox({
20472
20550
  }
20473
20551
 
20474
20552
  // src/components/user-interaction/Combobox/ComboboxRoot.tsx
20475
- import { jsx as jsx90 } from "react/jsx-runtime";
20553
+ import { jsx as jsx91 } from "react/jsx-runtime";
20476
20554
  function ComboboxRoot({
20477
20555
  children,
20478
20556
  onItemClick,
20479
20557
  ...hookProps
20480
20558
  }) {
20481
- const [options, setOptions] = useState37([]);
20482
- const [listRef, setListRef] = useState37(null);
20559
+ const [options, setOptions] = useState38([]);
20560
+ const [listRef, setListRef] = useState38(null);
20483
20561
  const generatedId = useId22();
20484
- const [ids, setIds] = useState37({
20562
+ const [ids, setIds] = useState38({
20485
20563
  trigger: `combobox-${generatedId}`,
20486
20564
  listbox: `combobox-${generatedId}-listbox`
20487
20565
  });
@@ -20575,12 +20653,12 @@ function ComboboxRoot({
20575
20653
  search
20576
20654
  ]
20577
20655
  );
20578
- return /* @__PURE__ */ jsx90(ComboboxContext.Provider, { value: contextValue, children });
20656
+ return /* @__PURE__ */ jsx91(ComboboxContext.Provider, { value: contextValue, children });
20579
20657
  }
20580
20658
 
20581
20659
  // src/components/user-interaction/Combobox/ComboboxInput.tsx
20582
20660
  import { forwardRef as forwardRef25, useCallback as useCallback41 } from "react";
20583
- import { jsx as jsx91 } from "react/jsx-runtime";
20661
+ import { jsx as jsx92 } from "react/jsx-runtime";
20584
20662
  var ComboboxInput = forwardRef25(
20585
20663
  function ComboboxInput2(props, ref) {
20586
20664
  const translation = useHightideTranslation();
@@ -20618,7 +20696,7 @@ var ComboboxInput = forwardRef25(
20618
20696
  },
20619
20697
  [props, highlightedId, selectOption, highlightNext, highlightPrevious, highlightFirst, highlightLast]
20620
20698
  );
20621
- return /* @__PURE__ */ jsx91(
20699
+ return /* @__PURE__ */ jsx92(
20622
20700
  Input,
20623
20701
  {
20624
20702
  ...props,
@@ -20638,17 +20716,17 @@ var ComboboxInput = forwardRef25(
20638
20716
  );
20639
20717
 
20640
20718
  // src/components/user-interaction/Combobox/ComboboxList.tsx
20641
- import { forwardRef as forwardRef26, useEffect as useEffect47, useRef as useRef38 } from "react";
20642
- import clsx35 from "clsx";
20643
- import { jsx as jsx92, jsxs as jsxs57 } from "react/jsx-runtime";
20719
+ import { forwardRef as forwardRef26, useEffect as useEffect48, useRef as useRef39 } from "react";
20720
+ import clsx36 from "clsx";
20721
+ import { jsx as jsx93, jsxs as jsxs58 } from "react/jsx-runtime";
20644
20722
  var ComboboxList = forwardRef26(
20645
20723
  function ComboboxList2({ children, ...props }, ref) {
20646
20724
  const translation = useHightideTranslation();
20647
20725
  const context = useComboboxContext();
20648
20726
  const { layout } = context;
20649
20727
  const { registerList } = layout;
20650
- const innerRef = useRef38(null);
20651
- useEffect47(() => {
20728
+ const innerRef = useRef39(null);
20729
+ useEffect48(() => {
20652
20730
  return registerList(innerRef);
20653
20731
  }, [registerList]);
20654
20732
  const setRefs = (node) => {
@@ -20657,7 +20735,7 @@ var ComboboxList = forwardRef26(
20657
20735
  else if (ref) ref.current = node;
20658
20736
  };
20659
20737
  const count = context.visibleOptionIds.length;
20660
- return /* @__PURE__ */ jsxs57(
20738
+ return /* @__PURE__ */ jsxs58(
20661
20739
  "ul",
20662
20740
  {
20663
20741
  ...props,
@@ -20669,7 +20747,7 @@ var ComboboxList = forwardRef26(
20669
20747
  "data-name": "combobox-list",
20670
20748
  children: [
20671
20749
  children,
20672
- /* @__PURE__ */ jsx92(
20750
+ /* @__PURE__ */ jsx93(
20673
20751
  "li",
20674
20752
  {
20675
20753
  role: "option",
@@ -20678,7 +20756,7 @@ var ComboboxList = forwardRef26(
20678
20756
  "aria-live": "polite",
20679
20757
  "aria-atomic": true,
20680
20758
  "data-name": "combobox-list-status",
20681
- className: clsx35({ "sr-only": count > 0 }),
20759
+ className: clsx36({ "sr-only": count > 0 }),
20682
20760
  children: translation("nResultsFound", { count })
20683
20761
  }
20684
20762
  )
@@ -20689,7 +20767,7 @@ var ComboboxList = forwardRef26(
20689
20767
  );
20690
20768
 
20691
20769
  // src/components/user-interaction/Combobox/Combobox.tsx
20692
- import { jsx as jsx93, jsxs as jsxs58 } from "react/jsx-runtime";
20770
+ import { jsx as jsx94, jsxs as jsxs59 } from "react/jsx-runtime";
20693
20771
  var Combobox = forwardRef27(function Combobox2({
20694
20772
  children,
20695
20773
  onItemClick,
@@ -20699,7 +20777,7 @@ var Combobox = forwardRef27(function Combobox2({
20699
20777
  inputProps,
20700
20778
  listProps
20701
20779
  }, ref) {
20702
- return /* @__PURE__ */ jsxs58(
20780
+ return /* @__PURE__ */ jsxs59(
20703
20781
  ComboboxRoot,
20704
20782
  {
20705
20783
  onItemClick,
@@ -20707,17 +20785,17 @@ var Combobox = forwardRef27(function Combobox2({
20707
20785
  onSearchQueryChange,
20708
20786
  initialSearchQuery,
20709
20787
  children: [
20710
- /* @__PURE__ */ jsx93(ComboboxInput, { ref, ...inputProps }),
20711
- /* @__PURE__ */ jsx93(ComboboxList, { ...listProps, children })
20788
+ /* @__PURE__ */ jsx94(ComboboxInput, { ref, ...inputProps }),
20789
+ /* @__PURE__ */ jsx94(ComboboxList, { ...listProps, children })
20712
20790
  ]
20713
20791
  }
20714
20792
  );
20715
20793
  });
20716
20794
 
20717
20795
  // src/components/user-interaction/Combobox/ComboboxOption.tsx
20718
- import { forwardRef as forwardRef28, useEffect as useEffect48, useId as useId23, useRef as useRef39 } from "react";
20719
- import clsx36 from "clsx";
20720
- import { jsx as jsx94 } from "react/jsx-runtime";
20796
+ import { forwardRef as forwardRef28, useEffect as useEffect49, useId as useId23, useRef as useRef40 } from "react";
20797
+ import clsx37 from "clsx";
20798
+ import { jsx as jsx95 } from "react/jsx-runtime";
20721
20799
  var ComboboxOption = forwardRef28(function ComboboxOption2({
20722
20800
  children,
20723
20801
  value,
@@ -20729,11 +20807,11 @@ var ComboboxOption = forwardRef28(function ComboboxOption2({
20729
20807
  }, ref) {
20730
20808
  const context = useComboboxContext();
20731
20809
  const { registerOption } = context;
20732
- const itemRef = useRef39(null);
20810
+ const itemRef = useRef40(null);
20733
20811
  const generatedId = useId23();
20734
20812
  const optionId = idProp ?? `combobox-option-${generatedId}`;
20735
20813
  const resolvedDisplay = children ?? label;
20736
- useEffect48(() => {
20814
+ useEffect49(() => {
20737
20815
  return registerOption({
20738
20816
  id: optionId,
20739
20817
  value,
@@ -20743,14 +20821,14 @@ var ComboboxOption = forwardRef28(function ComboboxOption2({
20743
20821
  ref: itemRef
20744
20822
  });
20745
20823
  }, [optionId, value, label, resolvedDisplay, disabled, registerOption]);
20746
- useEffect48(() => {
20824
+ useEffect49(() => {
20747
20825
  if (context.highlightedId === optionId) {
20748
20826
  itemRef.current?.scrollIntoView?.({ behavior: "smooth", block: "nearest" });
20749
20827
  }
20750
20828
  }, [context.highlightedId, optionId]);
20751
20829
  const isVisible = context.visibleOptionIds.includes(optionId);
20752
20830
  const isHighlighted = context.highlightedId === optionId;
20753
- return /* @__PURE__ */ jsx94(
20831
+ return /* @__PURE__ */ jsx95(
20754
20832
  "li",
20755
20833
  {
20756
20834
  ...restProps,
@@ -20769,7 +20847,7 @@ var ComboboxOption = forwardRef28(function ComboboxOption2({
20769
20847
  "data-highlighted": isHighlighted ? "" : void 0,
20770
20848
  "data-visible": isVisible ? "" : void 0,
20771
20849
  "data-disabled": disabled ? "" : void 0,
20772
- className: clsx36(!isVisible && "hidden", className),
20850
+ className: clsx37(!isVisible && "hidden", className),
20773
20851
  onClick: (event) => {
20774
20852
  if (!disabled) {
20775
20853
  context.selectOption(optionId);
@@ -20789,8 +20867,8 @@ var ComboboxOption = forwardRef28(function ComboboxOption2({
20789
20867
  ComboboxOption.displayName = "ComboboxOption";
20790
20868
 
20791
20869
  // src/components/user-interaction/CopyToClipboardWrapper.tsx
20792
- import { useState as useState38 } from "react";
20793
- import { clsx as clsx37 } from "clsx";
20870
+ import { useState as useState39 } from "react";
20871
+ import { clsx as clsx38 } from "clsx";
20794
20872
 
20795
20873
  // src/utils/writeToClipboard.ts
20796
20874
  var writeToClipboard = (text) => {
@@ -20799,7 +20877,7 @@ var writeToClipboard = (text) => {
20799
20877
 
20800
20878
  // src/components/user-interaction/CopyToClipboardWrapper.tsx
20801
20879
  import { CheckIcon as CheckIcon3, Copy } from "lucide-react";
20802
- import { jsx as jsx95, jsxs as jsxs59 } from "react/jsx-runtime";
20880
+ import { jsx as jsx96, jsxs as jsxs60 } from "react/jsx-runtime";
20803
20881
  var CopyToClipboardWrapper = ({
20804
20882
  children,
20805
20883
  textToCopy,
@@ -20812,8 +20890,8 @@ var CopyToClipboardWrapper = ({
20812
20890
  ...props
20813
20891
  }) => {
20814
20892
  const translation = useHightideTranslation();
20815
- const [isShowingConfirmation, setIsShowingConfirmation] = useState38(false);
20816
- return /* @__PURE__ */ jsxs59(
20893
+ const [isShowingConfirmation, setIsShowingConfirmation] = useState39(false);
20894
+ return /* @__PURE__ */ jsxs60(
20817
20895
  TooltipRoot,
20818
20896
  {
20819
20897
  isInitiallyShown,
@@ -20825,11 +20903,11 @@ var CopyToClipboardWrapper = ({
20825
20903
  }
20826
20904
  },
20827
20905
  children: [
20828
- /* @__PURE__ */ jsx95(TooltipTrigger, { children: ({ props: props2, callbackRef, disabled: disabled2 }) => /* @__PURE__ */ jsx95(
20906
+ /* @__PURE__ */ jsx96(TooltipTrigger, { children: ({ props: props2, callbackRef, disabled: disabled2 }) => /* @__PURE__ */ jsx96(
20829
20907
  "div",
20830
20908
  {
20831
20909
  ref: callbackRef,
20832
- className: clsx37("w-fit hover:cursor-copy", containerClassName),
20910
+ className: clsx38("w-fit hover:cursor-copy", containerClassName),
20833
20911
  ...disabled2 ? void 0 : props2,
20834
20912
  onClick: () => {
20835
20913
  if (disabled2) return;
@@ -20840,17 +20918,17 @@ var CopyToClipboardWrapper = ({
20840
20918
  children
20841
20919
  }
20842
20920
  ) }),
20843
- /* @__PURE__ */ jsx95(
20921
+ /* @__PURE__ */ jsx96(
20844
20922
  TooltipDisplay,
20845
20923
  {
20846
20924
  alignment,
20847
20925
  isAnimated,
20848
20926
  ...props,
20849
- children: isShowingConfirmation ? /* @__PURE__ */ jsxs59("div", { className: "flex-row-1", children: [
20850
- /* @__PURE__ */ jsx95(CheckIcon3, { size: 16, className: "text-positive" }),
20927
+ children: isShowingConfirmation ? /* @__PURE__ */ jsxs60("div", { className: "flex-row-1", children: [
20928
+ /* @__PURE__ */ jsx96(CheckIcon3, { size: 16, className: "text-positive" }),
20851
20929
  translation("copied")
20852
- ] }) : /* @__PURE__ */ jsxs59("div", { className: "flex-row-1 text-description", children: [
20853
- /* @__PURE__ */ jsx95(Copy, { size: 16 }),
20930
+ ] }) : /* @__PURE__ */ jsxs60("div", { className: "flex-row-1 text-description", children: [
20931
+ /* @__PURE__ */ jsx96(Copy, { size: 16 }),
20854
20932
  translation("clickToCopy")
20855
20933
  ] })
20856
20934
  }
@@ -20861,18 +20939,18 @@ var CopyToClipboardWrapper = ({
20861
20939
  };
20862
20940
 
20863
20941
  // src/components/user-interaction/Menu.tsx
20864
- import { useCallback as useCallback42, useRef as useRef40, useState as useState39 } from "react";
20865
- import clsx38 from "clsx";
20866
- import { Fragment as Fragment11, jsx as jsx96, jsxs as jsxs60 } from "react/jsx-runtime";
20942
+ import { useCallback as useCallback42, useRef as useRef41, useState as useState40 } from "react";
20943
+ import clsx39 from "clsx";
20944
+ import { Fragment as Fragment11, jsx as jsx97, jsxs as jsxs61 } from "react/jsx-runtime";
20867
20945
  var MenuItem = ({
20868
20946
  children,
20869
20947
  onClick,
20870
20948
  isDisabled = false,
20871
20949
  className
20872
- }) => /* @__PURE__ */ jsx96(
20950
+ }) => /* @__PURE__ */ jsx97(
20873
20951
  "div",
20874
20952
  {
20875
- className: clsx38("block px-3 py-1.5 first:rounded-t-md last:rounded-b-md text-sm font-semibold text-nowrap", {
20953
+ className: clsx39("block px-3 py-1.5 first:rounded-t-md last:rounded-b-md text-sm font-semibold text-nowrap", {
20876
20954
  "text-disabled cursor-not-allowed": isDisabled,
20877
20955
  "text-menu-text hover:bg-primary/20": !isDisabled,
20878
20956
  "cursor-pointer": !!onClick
@@ -20887,17 +20965,17 @@ var Menu = ({
20887
20965
  disabled = false,
20888
20966
  ...props
20889
20967
  }) => {
20890
- const triggerRef = useRef40(null);
20891
- const [isOpen, setIsOpen] = useState39(false);
20968
+ const triggerRef = useRef41(null);
20969
+ const [isOpen, setIsOpen] = useState40(false);
20892
20970
  const bag = {
20893
20971
  isOpen,
20894
20972
  close: () => setIsOpen(false),
20895
20973
  toggleOpen: () => setIsOpen((prevState) => !prevState),
20896
20974
  disabled
20897
20975
  };
20898
- return /* @__PURE__ */ jsxs60(Fragment11, { children: [
20976
+ return /* @__PURE__ */ jsxs61(Fragment11, { children: [
20899
20977
  trigger(bag, useCallback42((el) => triggerRef.current = el, [])),
20900
- /* @__PURE__ */ jsx96(
20978
+ /* @__PURE__ */ jsx97(
20901
20979
  PopUp,
20902
20980
  {
20903
20981
  ...props,
@@ -20918,21 +20996,21 @@ var Menu = ({
20918
20996
  };
20919
20997
 
20920
20998
  // src/components/user-interaction/MultiSelect/MultiSelectChipDisplay.tsx
20921
- import { forwardRef as forwardRef29, useEffect as useEffect49, useImperativeHandle as useImperativeHandle15, useRef as useRef41 } from "react";
20999
+ import { forwardRef as forwardRef29, useEffect as useEffect50, useImperativeHandle as useImperativeHandle15, useRef as useRef42 } from "react";
20922
21000
  import { XIcon as XIcon2, Plus as Plus2 } from "lucide-react";
20923
- import { jsx as jsx97, jsxs as jsxs61 } from "react/jsx-runtime";
21001
+ import { jsx as jsx98, jsxs as jsxs62 } from "react/jsx-runtime";
20924
21002
  var MultiSelectChipDisplayButton = forwardRef29(function MultiSelectChipDisplayButton2({ id, ...props }, ref) {
20925
21003
  const translation = useHightideTranslation();
20926
21004
  const context = useMultiSelectContext();
20927
21005
  const { config, layout } = context;
20928
21006
  const { setIds } = config;
20929
21007
  const { registerTrigger } = layout;
20930
- useEffect49(() => {
21008
+ useEffect50(() => {
20931
21009
  if (id) setIds((prev) => ({ ...prev, trigger: id }));
20932
21010
  }, [id, setIds]);
20933
- const innerRef = useRef41(null);
21011
+ const innerRef = useRef42(null);
20934
21012
  useImperativeHandle15(ref, () => innerRef.current);
20935
- useEffect49(() => {
21013
+ useEffect50(() => {
20936
21014
  const unregister = registerTrigger(innerRef);
20937
21015
  return () => unregister();
20938
21016
  }, [registerTrigger]);
@@ -20941,7 +21019,7 @@ var MultiSelectChipDisplayButton = forwardRef29(function MultiSelectChipDisplayB
20941
21019
  const invalid = context.invalid;
20942
21020
  const hasInteractions = !readOnly && !disabled;
20943
21021
  const selectedOptions = context.selectedIds.map((oid) => context.idToOptionMap[oid]).filter(Boolean);
20944
- return /* @__PURE__ */ jsxs61(
21022
+ return /* @__PURE__ */ jsxs62(
20945
21023
  "div",
20946
21024
  {
20947
21025
  ...props,
@@ -20961,9 +21039,9 @@ var MultiSelectChipDisplayButton = forwardRef29(function MultiSelectChipDisplayB
20961
21039
  "aria-disabled": disabled,
20962
21040
  "aria-readonly": readOnly,
20963
21041
  children: [
20964
- selectedOptions.map((opt) => /* @__PURE__ */ jsxs61("div", { "data-name": "multi-select-chip-display-chip", children: [
21042
+ selectedOptions.map((opt) => /* @__PURE__ */ jsxs62("div", { "data-name": "multi-select-chip-display-chip", children: [
20965
21043
  opt.display,
20966
- /* @__PURE__ */ jsx97(
21044
+ /* @__PURE__ */ jsx98(
20967
21045
  IconButton,
20968
21046
  {
20969
21047
  tooltip: translation("remove"),
@@ -20976,11 +21054,11 @@ var MultiSelectChipDisplayButton = forwardRef29(function MultiSelectChipDisplayB
20976
21054
  color: "negative",
20977
21055
  coloringStyle: "text",
20978
21056
  className: "flex-row-0 items-center size-7 p-1",
20979
- children: /* @__PURE__ */ jsx97(XIcon2, { className: "size-5" })
21057
+ children: /* @__PURE__ */ jsx98(XIcon2, { className: "size-5" })
20980
21058
  }
20981
21059
  )
20982
21060
  ] }, opt.id)),
20983
- /* @__PURE__ */ jsx97(
21061
+ /* @__PURE__ */ jsx98(
20984
21062
  IconButton,
20985
21063
  {
20986
21064
  id: context.config.ids.trigger,
@@ -21009,7 +21087,7 @@ var MultiSelectChipDisplayButton = forwardRef29(function MultiSelectChipDisplayB
21009
21087
  "aria-expanded": context.isOpen,
21010
21088
  "aria-controls": context.isOpen ? context.config.ids.content : void 0,
21011
21089
  className: "size-9",
21012
- children: /* @__PURE__ */ jsx97(Plus2, {})
21090
+ children: /* @__PURE__ */ jsx98(Plus2, {})
21013
21091
  }
21014
21092
  )
21015
21093
  ]
@@ -21023,17 +21101,17 @@ var MultiSelectChipDisplay = forwardRef29(
21023
21101
  chipDisplayProps,
21024
21102
  ...props
21025
21103
  }, ref) {
21026
- return /* @__PURE__ */ jsxs61(MultiSelectRoot, { ...props, children: [
21027
- /* @__PURE__ */ jsx97(MultiSelectChipDisplayButton, { ref, ...chipDisplayProps }),
21028
- /* @__PURE__ */ jsx97(MultiSelectContent, { ...contentPanelProps, children })
21104
+ return /* @__PURE__ */ jsxs62(MultiSelectRoot, { ...props, children: [
21105
+ /* @__PURE__ */ jsx98(MultiSelectChipDisplayButton, { ref, ...chipDisplayProps }),
21106
+ /* @__PURE__ */ jsx98(MultiSelectContent, { ...contentPanelProps, children })
21029
21107
  ] });
21030
21108
  }
21031
21109
  );
21032
21110
 
21033
21111
  // src/components/user-interaction/ScrollPicker.tsx
21034
- import { useCallback as useCallback43, useEffect as useEffect50, useState as useState40 } from "react";
21035
- import clsx39 from "clsx";
21036
- import { jsx as jsx98, jsxs as jsxs62 } from "react/jsx-runtime";
21112
+ import { useCallback as useCallback43, useEffect as useEffect51, useState as useState41 } from "react";
21113
+ import clsx40 from "clsx";
21114
+ import { jsx as jsx99, jsxs as jsxs63 } from "react/jsx-runtime";
21037
21115
  var up = 1;
21038
21116
  var down = -1;
21039
21117
  var ScrollPicker = ({
@@ -21052,7 +21130,7 @@ var ScrollPicker = ({
21052
21130
  transition,
21053
21131
  items,
21054
21132
  lastTimeStamp
21055
- }, setAnimation] = useState40({
21133
+ }, setAnimation] = useState41({
21056
21134
  targetIndex: selectedIndex,
21057
21135
  currentIndex: disabled ? selectedIndex : 0,
21058
21136
  velocity: 0,
@@ -21151,7 +21229,7 @@ var ScrollPicker = ({
21151
21229
  };
21152
21230
  });
21153
21231
  }, [disabled, getDirection, onChange]);
21154
- useEffect50(() => {
21232
+ useEffect51(() => {
21155
21233
  requestAnimationFrame((timestamp) => animate(timestamp, lastTimeStamp));
21156
21234
  });
21157
21235
  const opacity = (transition2, index, itemsCount) => {
@@ -21172,7 +21250,7 @@ var ScrollPicker = ({
21172
21250
  }
21173
21251
  return MathUtil.clamp(1 - opacityValue / max);
21174
21252
  };
21175
- return /* @__PURE__ */ jsx98(
21253
+ return /* @__PURE__ */ jsx99(
21176
21254
  "div",
21177
21255
  {
21178
21256
  className: "relative overflow-hidden",
@@ -21183,15 +21261,15 @@ var ScrollPicker = ({
21183
21261
  setAnimation(({ velocity, ...animationData }) => ({ ...animationData, velocity: velocity + deltaY }));
21184
21262
  }
21185
21263
  },
21186
- children: /* @__PURE__ */ jsxs62("div", { className: "absolute top-1/2 -translate-y-1/2 -translate-x-1/2 left-1/2", children: [
21187
- /* @__PURE__ */ jsx98(
21264
+ children: /* @__PURE__ */ jsxs63("div", { className: "absolute top-1/2 -translate-y-1/2 -translate-x-1/2 left-1/2", children: [
21265
+ /* @__PURE__ */ jsx99(
21188
21266
  "div",
21189
21267
  {
21190
21268
  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 ",
21191
21269
  style: { height: `${itemHeight}px` }
21192
21270
  }
21193
21271
  ),
21194
- /* @__PURE__ */ jsx98(
21272
+ /* @__PURE__ */ jsx99(
21195
21273
  "div",
21196
21274
  {
21197
21275
  className: "flex-col-2 select-none",
@@ -21199,10 +21277,10 @@ var ScrollPicker = ({
21199
21277
  transform: `translateY(${-transition * (distance + itemHeight)}px)`,
21200
21278
  columnGap: `${distance}px`
21201
21279
  },
21202
- children: shownItems.map(({ name, index }, arrayIndex) => /* @__PURE__ */ jsx98(
21280
+ children: shownItems.map(({ name, index }, arrayIndex) => /* @__PURE__ */ jsx99(
21203
21281
  "div",
21204
21282
  {
21205
- className: clsx39(
21283
+ className: clsx40(
21206
21284
  `flex-col-2 items-center justify-center rounded-md`,
21207
21285
  {
21208
21286
  "text-primary font-bold": currentIndex === index,
@@ -21230,7 +21308,7 @@ var ScrollPicker = ({
21230
21308
 
21231
21309
  // src/components/user-interaction/Switch.tsx
21232
21310
  import { useCallback as useCallback44 } from "react";
21233
- import { jsx as jsx99 } from "react/jsx-runtime";
21311
+ import { jsx as jsx100 } from "react/jsx-runtime";
21234
21312
  var Switch = ({
21235
21313
  value: controlledValue,
21236
21314
  initialValue = false,
@@ -21253,7 +21331,7 @@ var Switch = ({
21253
21331
  onValueChange: onChangeWrapper,
21254
21332
  defaultValue: initialValue
21255
21333
  });
21256
- return /* @__PURE__ */ jsx99(
21334
+ return /* @__PURE__ */ jsx100(
21257
21335
  "div",
21258
21336
  {
21259
21337
  ...props,
@@ -21278,15 +21356,15 @@ var Switch = ({
21278
21356
  "data-name": props["data-name"] ?? "switch",
21279
21357
  "data-active": PropsUtil.dataAttributes.bool(value),
21280
21358
  ...PropsUtil.dataAttributes.interactionStates({ disabled, invalid, readOnly, required }),
21281
- children: /* @__PURE__ */ jsx99("div", { "data-name": "switch-track", className: "switch-track", children: /* @__PURE__ */ jsx99("div", { "data-name": "switch-thumb", "data-active": PropsUtil.dataAttributes.bool(value), className: "switch-thumb" }) })
21359
+ children: /* @__PURE__ */ jsx100("div", { "data-name": "switch-track", className: "switch-track", children: /* @__PURE__ */ jsx100("div", { "data-name": "switch-thumb", "data-active": PropsUtil.dataAttributes.bool(value), className: "switch-thumb" }) })
21282
21360
  }
21283
21361
  );
21284
21362
  };
21285
21363
 
21286
21364
  // src/components/user-interaction/Textarea.tsx
21287
21365
  import { forwardRef as forwardRef30, useCallback as useCallback45, useId as useId24 } from "react";
21288
- import clsx40 from "clsx";
21289
- import { jsx as jsx100, jsxs as jsxs63 } from "react/jsx-runtime";
21366
+ import clsx41 from "clsx";
21367
+ import { jsx as jsx101, jsxs as jsxs64 } from "react/jsx-runtime";
21290
21368
  var Textarea = forwardRef30(function Textarea2({
21291
21369
  value: controlledValue,
21292
21370
  initialValue,
@@ -21307,7 +21385,7 @@ var Textarea = forwardRef30(function Textarea2({
21307
21385
  onEditCompleteStable(text);
21308
21386
  clearTimer();
21309
21387
  }, [onEditCompleteStable, clearTimer]);
21310
- return /* @__PURE__ */ jsx100(
21388
+ return /* @__PURE__ */ jsx101(
21311
21389
  "textarea",
21312
21390
  {
21313
21391
  ...props,
@@ -21343,10 +21421,10 @@ var TextareaWithHeadline = ({
21343
21421
  }) => {
21344
21422
  const genId = useId24();
21345
21423
  const usedId = id ?? genId;
21346
- return /* @__PURE__ */ jsxs63(
21424
+ return /* @__PURE__ */ jsxs64(
21347
21425
  "div",
21348
21426
  {
21349
- className: clsx40(
21427
+ className: clsx41(
21350
21428
  "group flex-col-3 border-2 rounded-lg",
21351
21429
  {
21352
21430
  "bg-input-background text-input-text hover:border-primary focus-within:border-primary": !disabled,
@@ -21355,13 +21433,13 @@ var TextareaWithHeadline = ({
21355
21433
  containerClassName
21356
21434
  ),
21357
21435
  children: [
21358
- headline && /* @__PURE__ */ jsx100("label", { ...headlineProps, htmlFor: usedId, className: clsx40("typography-lable-md text-label", headlineProps.className), children: headline }),
21359
- /* @__PURE__ */ jsx100(
21436
+ headline && /* @__PURE__ */ jsx101("label", { ...headlineProps, htmlFor: usedId, className: clsx41("typography-lable-md text-label", headlineProps.className), children: headline }),
21437
+ /* @__PURE__ */ jsx101(
21360
21438
  Textarea,
21361
21439
  {
21362
21440
  ...props,
21363
21441
  id: usedId,
21364
- className: clsx40(
21442
+ className: clsx41(
21365
21443
  "border-transparent focus:ring-0 focus-visible:ring-0 resize-none h-32",
21366
21444
  className
21367
21445
  )
@@ -21373,9 +21451,9 @@ var TextareaWithHeadline = ({
21373
21451
  };
21374
21452
 
21375
21453
  // src/components/user-interaction/data/FilterList.tsx
21376
- import { useMemo as useMemo42, useState as useState41 } from "react";
21454
+ import { useMemo as useMemo42, useState as useState42 } from "react";
21377
21455
  import { PlusIcon } from "lucide-react";
21378
- import { Fragment as Fragment12, jsx as jsx101, jsxs as jsxs64 } from "react/jsx-runtime";
21456
+ import { Fragment as Fragment12, jsx as jsx102, jsxs as jsxs65 } from "react/jsx-runtime";
21379
21457
  var FilterList = ({ value, onValueChange, availableItems }) => {
21380
21458
  const translation = useHightideTranslation();
21381
21459
  const filterValueToLabel = useFilterValueTranslation();
@@ -21385,7 +21463,7 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21385
21463
  acc[item.id] = item;
21386
21464
  return acc;
21387
21465
  }, {}), [availableItems]);
21388
- const [editState, setEditState] = useState41(void 0);
21466
+ const [editState, setEditState] = useState42(void 0);
21389
21467
  const valueWithEditState = useMemo42(() => {
21390
21468
  let foundEditValue = false;
21391
21469
  for (const item of value) {
@@ -21399,13 +21477,13 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21399
21477
  }
21400
21478
  return value;
21401
21479
  }, [value, editState]);
21402
- return /* @__PURE__ */ jsxs64("div", { className: "flex-row-2 flex-wrap gap-y-2", children: [
21403
- /* @__PURE__ */ jsxs64(PopUpRoot, { children: [
21404
- /* @__PURE__ */ jsx101(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsxs64(Button, { ...props, onClick: toggleOpen, color: "neutral", size: "sm", className: "min-w-36", children: [
21480
+ return /* @__PURE__ */ jsxs65("div", { className: "flex-row-2 flex-wrap gap-y-2", children: [
21481
+ /* @__PURE__ */ jsxs65(PopUpRoot, { children: [
21482
+ /* @__PURE__ */ jsx102(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsxs65(Button, { ...props, onClick: toggleOpen, color: "neutral", size: "sm", className: "min-w-36", children: [
21405
21483
  translation("addFilter"),
21406
- /* @__PURE__ */ jsx101(PlusIcon, { className: "size-4" })
21484
+ /* @__PURE__ */ jsx102(PlusIcon, { className: "size-4" })
21407
21485
  ] }) }),
21408
- /* @__PURE__ */ jsx101(PopUp, { className: "flex-col-2 p-2", children: /* @__PURE__ */ jsx101(PopUpContext.Consumer, { children: ({ setIsOpen }) => /* @__PURE__ */ jsx101(
21486
+ /* @__PURE__ */ jsx102(PopUp, { className: "flex-col-2 p-2", children: /* @__PURE__ */ jsx102(PopUpContext.Consumer, { children: ({ setIsOpen }) => /* @__PURE__ */ jsx102(
21409
21487
  Combobox,
21410
21488
  {
21411
21489
  onItemClick: (id) => {
@@ -21422,7 +21500,7 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21422
21500
  setEditState(newValue);
21423
21501
  setIsOpen(false);
21424
21502
  },
21425
- children: inactiveItems.map((item) => /* @__PURE__ */ jsxs64(ComboboxOption, { value: item.id, label: item.label, children: [
21503
+ children: inactiveItems.map((item) => /* @__PURE__ */ jsxs65(ComboboxOption, { value: item.id, label: item.label, children: [
21426
21504
  DataTypeUtils.toIcon(item.dataType),
21427
21505
  item.label
21428
21506
  ] }, item.id))
@@ -21432,7 +21510,7 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21432
21510
  valueWithEditState.map((columnFilter) => {
21433
21511
  const item = itemRecord[columnFilter.id];
21434
21512
  if (!item) return null;
21435
- return /* @__PURE__ */ jsxs64(
21513
+ return /* @__PURE__ */ jsxs65(
21436
21514
  PopUpRoot,
21437
21515
  {
21438
21516
  isOpen: editState?.id === columnFilter.id,
@@ -21450,11 +21528,11 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21450
21528
  }
21451
21529
  },
21452
21530
  children: [
21453
- /* @__PURE__ */ jsx101(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsx101(Button, { ...props, onClick: toggleOpen, color: "primary", coloringStyle: "tonal-outline", size: "sm", children: item.activeLabelBuilder ? item.activeLabelBuilder(columnFilter.value) : /* @__PURE__ */ jsxs64(Fragment12, { children: [
21454
- /* @__PURE__ */ jsx101("span", { className: "font-bold", children: item.label }),
21531
+ /* @__PURE__ */ jsx102(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsx102(Button, { ...props, onClick: toggleOpen, color: "primary", coloringStyle: "tonal-outline", size: "sm", children: item.activeLabelBuilder ? item.activeLabelBuilder(columnFilter.value) : /* @__PURE__ */ jsxs65(Fragment12, { children: [
21532
+ /* @__PURE__ */ jsx102("span", { className: "font-bold", children: item.label }),
21455
21533
  filterValueToLabel(columnFilter.value, { tags: item.tags })
21456
21534
  ] }) }) }),
21457
- /* @__PURE__ */ jsx101(PopUpContext.Consumer, { children: ({ isOpen, setIsOpen }) => item.popUpBuilder ? item.popUpBuilder({
21535
+ /* @__PURE__ */ jsx102(PopUpContext.Consumer, { children: ({ isOpen, setIsOpen }) => item.popUpBuilder ? item.popUpBuilder({
21458
21536
  value: editState?.id === columnFilter.id ? editState.value : columnFilter.value,
21459
21537
  onValueChange: (value2) => setEditState({ ...columnFilter, value: value2 }),
21460
21538
  onRemove: () => {
@@ -21467,7 +21545,7 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21467
21545
  name: item.label,
21468
21546
  isOpen,
21469
21547
  onClose: () => setIsOpen(false)
21470
- }) : /* @__PURE__ */ jsx101(
21548
+ }) : /* @__PURE__ */ jsx102(
21471
21549
  FilterPopUp,
21472
21550
  {
21473
21551
  name: item.label,
@@ -21496,8 +21574,8 @@ var FilterList = ({ value, onValueChange, availableItems }) => {
21496
21574
  // src/components/user-interaction/data/SortingList.tsx
21497
21575
  import { useMemo as useMemo43 } from "react";
21498
21576
  import { ArrowDownWideNarrow, ArrowUpNarrowWide, PlusIcon as PlusIcon2, TrashIcon as TrashIcon2, XIcon as XIcon3 } from "lucide-react";
21499
- import clsx41 from "clsx";
21500
- import { jsx as jsx102, jsxs as jsxs65 } from "react/jsx-runtime";
21577
+ import clsx42 from "clsx";
21578
+ import { jsx as jsx103, jsxs as jsxs66 } from "react/jsx-runtime";
21501
21579
  var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21502
21580
  const translation = useHightideTranslation();
21503
21581
  const activeIds = useMemo43(() => sorting.map((item) => item.id), [sorting]);
@@ -21521,13 +21599,13 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21521
21599
  const removeSort = (columnId) => {
21522
21600
  onSortingChange(sorting.filter((s) => s.id !== columnId));
21523
21601
  };
21524
- return /* @__PURE__ */ jsxs65("div", { className: "flex-row-2 flex-wrap gap-y-2", children: [
21525
- /* @__PURE__ */ jsxs65(PopUpRoot, { children: [
21526
- /* @__PURE__ */ jsx102(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsxs65(Button, { ...props, onClick: toggleOpen, color: "neutral", size: "sm", className: "min-w-36", children: [
21602
+ return /* @__PURE__ */ jsxs66("div", { className: "flex-row-2 flex-wrap gap-y-2", children: [
21603
+ /* @__PURE__ */ jsxs66(PopUpRoot, { children: [
21604
+ /* @__PURE__ */ jsx103(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsxs66(Button, { ...props, onClick: toggleOpen, color: "neutral", size: "sm", className: "min-w-36", children: [
21527
21605
  translation("addSorting"),
21528
- /* @__PURE__ */ jsx102(PlusIcon2, { className: "size-4" })
21606
+ /* @__PURE__ */ jsx103(PlusIcon2, { className: "size-4" })
21529
21607
  ] }) }),
21530
- /* @__PURE__ */ jsx102(PopUp, { className: "flex-col-2 p-2", children: /* @__PURE__ */ jsx102(PopUpContext.Consumer, { children: ({ setIsOpen }) => /* @__PURE__ */ jsx102(
21608
+ /* @__PURE__ */ jsx103(PopUp, { className: "flex-col-2 p-2", children: /* @__PURE__ */ jsx103(PopUpContext.Consumer, { children: ({ setIsOpen }) => /* @__PURE__ */ jsx103(
21531
21609
  Combobox,
21532
21610
  {
21533
21611
  onItemClick: (id) => {
@@ -21536,7 +21614,7 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21536
21614
  onSortingChange([...sorting, { id: item.id, desc: false }]);
21537
21615
  setIsOpen(false);
21538
21616
  },
21539
- children: inactiveItems.map((item) => /* @__PURE__ */ jsxs65(ComboboxOption, { value: item.id, label: item.label, children: [
21617
+ children: inactiveItems.map((item) => /* @__PURE__ */ jsxs66(ComboboxOption, { value: item.id, label: item.label, children: [
21540
21618
  DataTypeUtils.toIcon(item.dataType),
21541
21619
  item.label
21542
21620
  ] }, item.id))
@@ -21546,21 +21624,21 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21546
21624
  sorting.map((columnSort) => {
21547
21625
  const item = itemRecord[columnSort.id];
21548
21626
  if (!item) return null;
21549
- return /* @__PURE__ */ jsxs65(PopUpRoot, { children: [
21550
- /* @__PURE__ */ jsx102(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsxs65(Button, { ...props, onClick: toggleOpen, color: "secondary", coloringStyle: "tonal-outline", size: "sm", children: [
21551
- /* @__PURE__ */ jsx102("span", { className: "font-bold", children: item.label }),
21552
- columnSort.desc ? /* @__PURE__ */ jsx102(ArrowDownWideNarrow, { className: "size-5" }) : /* @__PURE__ */ jsx102(ArrowUpNarrowWide, { className: "size-5" })
21627
+ return /* @__PURE__ */ jsxs66(PopUpRoot, { children: [
21628
+ /* @__PURE__ */ jsx103(PopUpOpener, { children: ({ toggleOpen, props }) => /* @__PURE__ */ jsxs66(Button, { ...props, onClick: toggleOpen, color: "secondary", coloringStyle: "tonal-outline", size: "sm", children: [
21629
+ /* @__PURE__ */ jsx103("span", { className: "font-bold", children: item.label }),
21630
+ columnSort.desc ? /* @__PURE__ */ jsx103(ArrowDownWideNarrow, { className: "size-5" }) : /* @__PURE__ */ jsx103(ArrowUpNarrowWide, { className: "size-5" })
21553
21631
  ] }) }),
21554
- /* @__PURE__ */ jsx102(PopUpContext.Consumer, { children: ({ setIsOpen }) => /* @__PURE__ */ jsxs65(
21632
+ /* @__PURE__ */ jsx103(PopUpContext.Consumer, { children: ({ setIsOpen }) => /* @__PURE__ */ jsxs66(
21555
21633
  PopUp,
21556
21634
  {
21557
- className: clsx41("flex-col-3 p-3 min-w-64"),
21635
+ className: clsx42("flex-col-3 p-3 min-w-64"),
21558
21636
  onClose: () => setIsOpen(false),
21559
21637
  children: [
21560
- /* @__PURE__ */ jsxs65("div", { className: "flex-row-4 justify-between w-full items-center gap-2", children: [
21561
- /* @__PURE__ */ jsx102("span", { className: "typography-title-sm font-semibold", children: item.label }),
21562
- /* @__PURE__ */ jsxs65("div", { className: "flex-row-0 shrink-0 items-center", children: [
21563
- /* @__PURE__ */ jsx102(
21638
+ /* @__PURE__ */ jsxs66("div", { className: "flex-row-4 justify-between w-full items-center gap-2", children: [
21639
+ /* @__PURE__ */ jsx103("span", { className: "typography-title-sm font-semibold", children: item.label }),
21640
+ /* @__PURE__ */ jsxs66("div", { className: "flex-row-0 shrink-0 items-center", children: [
21641
+ /* @__PURE__ */ jsx103(
21564
21642
  IconButton,
21565
21643
  {
21566
21644
  tooltip: translation("removeFilter"),
@@ -21571,10 +21649,10 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21571
21649
  color: "negative",
21572
21650
  coloringStyle: "text",
21573
21651
  size: "sm",
21574
- children: /* @__PURE__ */ jsx102(TrashIcon2, { className: "size-4" })
21652
+ children: /* @__PURE__ */ jsx103(TrashIcon2, { className: "size-4" })
21575
21653
  }
21576
21654
  ),
21577
- /* @__PURE__ */ jsx102(
21655
+ /* @__PURE__ */ jsx103(
21578
21656
  IconButton,
21579
21657
  {
21580
21658
  tooltip: translation("close"),
@@ -21582,13 +21660,13 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21582
21660
  color: "neutral",
21583
21661
  coloringStyle: "text",
21584
21662
  size: "sm",
21585
- children: /* @__PURE__ */ jsx102(XIcon3, { className: "size-4" })
21663
+ children: /* @__PURE__ */ jsx103(XIcon3, { className: "size-4" })
21586
21664
  }
21587
21665
  )
21588
21666
  ] })
21589
21667
  ] }),
21590
- /* @__PURE__ */ jsxs65("div", { className: "flex-row-1 w-full gap-2", children: [
21591
- /* @__PURE__ */ jsxs65(
21668
+ /* @__PURE__ */ jsxs66("div", { className: "flex-row-1 w-full gap-2", children: [
21669
+ /* @__PURE__ */ jsxs66(
21592
21670
  Button,
21593
21671
  {
21594
21672
  type: "button",
@@ -21598,12 +21676,12 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21598
21676
  size: "md",
21599
21677
  onClick: () => setSortDirection(columnSort.id, false),
21600
21678
  children: [
21601
- /* @__PURE__ */ jsx102(ArrowUpNarrowWide, { className: "size-4" }),
21679
+ /* @__PURE__ */ jsx103(ArrowUpNarrowWide, { className: "size-4" }),
21602
21680
  translation("sortAsc")
21603
21681
  ]
21604
21682
  }
21605
21683
  ),
21606
- /* @__PURE__ */ jsxs65(
21684
+ /* @__PURE__ */ jsxs66(
21607
21685
  Button,
21608
21686
  {
21609
21687
  type: "button",
@@ -21613,7 +21691,7 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21613
21691
  size: "md",
21614
21692
  onClick: () => setSortDirection(columnSort.id, true),
21615
21693
  children: [
21616
- /* @__PURE__ */ jsx102(ArrowDownWideNarrow, { className: "size-4" }),
21694
+ /* @__PURE__ */ jsx103(ArrowDownWideNarrow, { className: "size-4" }),
21617
21695
  translation("sortDesc")
21618
21696
  ]
21619
21697
  }
@@ -21628,7 +21706,7 @@ var SortingList = ({ sorting, onSortingChange, availableItems }) => {
21628
21706
  };
21629
21707
 
21630
21708
  // src/components/user-interaction/date/TimeDisplay.tsx
21631
- import { jsx as jsx103 } from "react/jsx-runtime";
21709
+ import { jsx as jsx104 } from "react/jsx-runtime";
21632
21710
  var TimeDisplay = ({
21633
21711
  date,
21634
21712
  mode = "daysFromToday",
@@ -21679,13 +21757,13 @@ var TimeDisplay = ({
21679
21757
  } else {
21680
21758
  fullString = `${zonedDate.getDate()}. ${monthToTranslation[zonedDate.getMonth()]} ${zonedDate.getFullYear()}`;
21681
21759
  }
21682
- return /* @__PURE__ */ jsx103("span", { children: fullString });
21760
+ return /* @__PURE__ */ jsx104("span", { children: fullString });
21683
21761
  };
21684
21762
 
21685
21763
  // src/components/user-interaction/input/FlexibleDateTimeInput.tsx
21686
- import { forwardRef as forwardRef31, useState as useState42 } from "react";
21764
+ import { forwardRef as forwardRef31, useState as useState43 } from "react";
21687
21765
  import { ClockFading, ClockPlus } from "lucide-react";
21688
- import { jsx as jsx104 } from "react/jsx-runtime";
21766
+ import { jsx as jsx105 } from "react/jsx-runtime";
21689
21767
  var FlexibleDateTimeInput = forwardRef31(function FlexibleDateTimeInput2({
21690
21768
  defaultMode = "date",
21691
21769
  value: controlledValue,
@@ -21708,7 +21786,7 @@ var FlexibleDateTimeInput = forwardRef31(function FlexibleDateTimeInput2({
21708
21786
  const zoned = (date) => DateUtils.toZonedDate(date, timeZone);
21709
21787
  const unzoned = (date) => DateUtils.fromZonedDate(date, timeZone);
21710
21788
  const hasFixedTime = (date) => DateUtils.sameTime(zoned(date), fixedTime, true, true);
21711
- const [mode, setMode] = useState42(() => {
21789
+ const [mode, setMode] = useState43(() => {
21712
21790
  if (value && !hasFixedTime(value)) {
21713
21791
  return "dateTime";
21714
21792
  }
@@ -21716,7 +21794,7 @@ var FlexibleDateTimeInput = forwardRef31(function FlexibleDateTimeInput2({
21716
21794
  });
21717
21795
  const toDate = (date) => unzoned(DateUtils.withTime(zoned(date), fixedTime));
21718
21796
  const toDateTime = (date) => hasFixedTime(date) ? unzoned(DateUtils.withTime(zoned(date), zoned(/* @__PURE__ */ new Date()))) : date;
21719
- return /* @__PURE__ */ jsx104(
21797
+ return /* @__PURE__ */ jsx105(
21720
21798
  DateTimeInput,
21721
21799
  {
21722
21800
  ...props,
@@ -21729,7 +21807,7 @@ var FlexibleDateTimeInput = forwardRef31(function FlexibleDateTimeInput2({
21729
21807
  },
21730
21808
  actions: [
21731
21809
  ...actions,
21732
- /* @__PURE__ */ jsx104(
21810
+ /* @__PURE__ */ jsx105(
21733
21811
  IconButton,
21734
21812
  {
21735
21813
  size: "sm",
@@ -21743,7 +21821,7 @@ var FlexibleDateTimeInput = forwardRef31(function FlexibleDateTimeInput2({
21743
21821
  }
21744
21822
  setMode(nextMode);
21745
21823
  },
21746
- children: mode === "date" ? /* @__PURE__ */ jsx104(ClockPlus, { className: "size-5" }) : /* @__PURE__ */ jsx104(ClockFading, { className: "size-5" })
21824
+ children: mode === "date" ? /* @__PURE__ */ jsx105(ClockPlus, { className: "size-5" }) : /* @__PURE__ */ jsx105(ClockFading, { className: "size-5" })
21747
21825
  },
21748
21826
  "flexible-date-time-mode"
21749
21827
  )
@@ -21754,9 +21832,9 @@ var FlexibleDateTimeInput = forwardRef31(function FlexibleDateTimeInput2({
21754
21832
 
21755
21833
  // src/components/user-interaction/input/InsideLabelInput.tsx
21756
21834
  import { useId as useId25 } from "react";
21757
- import { forwardRef as forwardRef32, useState as useState43 } from "react";
21758
- import clsx42 from "clsx";
21759
- import { jsx as jsx105, jsxs as jsxs66 } from "react/jsx-runtime";
21835
+ import { forwardRef as forwardRef32, useState as useState44 } from "react";
21836
+ import clsx43 from "clsx";
21837
+ import { jsx as jsx106, jsxs as jsxs67 } from "react/jsx-runtime";
21760
21838
  var InsideLabelInput = forwardRef32(function InsideLabelInput2({
21761
21839
  id: customId,
21762
21840
  value: controlledValue,
@@ -21770,11 +21848,11 @@ var InsideLabelInput = forwardRef32(function InsideLabelInput2({
21770
21848
  onValueChange,
21771
21849
  defaultValue: initialValue
21772
21850
  });
21773
- const [isFocused, setIsFocused] = useState43(false);
21851
+ const [isFocused, setIsFocused] = useState44(false);
21774
21852
  const generatedId = useId25();
21775
21853
  const id = customId ?? generatedId;
21776
- return /* @__PURE__ */ jsxs66("div", { className: clsx42("relative"), children: [
21777
- /* @__PURE__ */ jsx105(
21854
+ return /* @__PURE__ */ jsxs67("div", { className: clsx43("relative"), children: [
21855
+ /* @__PURE__ */ jsx106(
21778
21856
  Input,
21779
21857
  {
21780
21858
  ...props,
@@ -21791,16 +21869,16 @@ var InsideLabelInput = forwardRef32(function InsideLabelInput2({
21791
21869
  setIsFocused(false);
21792
21870
  },
21793
21871
  "aria-labelledby": id + "-label",
21794
- className: clsx42("h-14 px-4 pb-2 py-6.5", props.className)
21872
+ className: clsx43("h-14 px-4 pb-2 py-6.5", props.className)
21795
21873
  }
21796
21874
  ),
21797
- /* @__PURE__ */ jsx105(
21875
+ /* @__PURE__ */ jsx106(
21798
21876
  "label",
21799
21877
  {
21800
21878
  id: id + "-label",
21801
21879
  "aria-hidden": true,
21802
21880
  "data-display": isFocused || !!value ? "small" : "full",
21803
- className: clsx42(
21881
+ className: clsx43(
21804
21882
  // margin left to account for the border which is ignored for absolute positions
21805
21883
  "absolute left-4 ml-0.5 top-2 transition-all delay-25 pointer-events-none touch-none",
21806
21884
  "data-[display=small]:top-2 data-[display=small]:h-force-4.5 data-[display=small]:typography-caption-sm data-[display=small]:overflow-y-hidden",
@@ -21814,8 +21892,8 @@ var InsideLabelInput = forwardRef32(function InsideLabelInput2({
21814
21892
 
21815
21893
  // src/components/user-interaction/input/SearchBar.tsx
21816
21894
  import { Search } from "lucide-react";
21817
- import { clsx as clsx43 } from "clsx";
21818
- import { jsx as jsx106, jsxs as jsxs67 } from "react/jsx-runtime";
21895
+ import { clsx as clsx44 } from "clsx";
21896
+ import { jsx as jsx107, jsxs as jsxs68 } from "react/jsx-runtime";
21819
21897
  var SearchBar = ({
21820
21898
  value: controlledValue,
21821
21899
  initialValue,
@@ -21831,8 +21909,8 @@ var SearchBar = ({
21831
21909
  onValueChange,
21832
21910
  defaultValue: initialValue
21833
21911
  });
21834
- return /* @__PURE__ */ jsxs67("div", { ...containerProps, className: clsx43("relative", containerProps?.className), children: [
21835
- /* @__PURE__ */ jsx106(
21912
+ return /* @__PURE__ */ jsxs68("div", { ...containerProps, className: clsx44("relative", containerProps?.className), children: [
21913
+ /* @__PURE__ */ jsx107(
21836
21914
  Input,
21837
21915
  {
21838
21916
  ...inputProps,
@@ -21840,10 +21918,10 @@ var SearchBar = ({
21840
21918
  onValueChange: setValue,
21841
21919
  onEditComplete: onSearch,
21842
21920
  placeholder: inputProps.placeholder ?? translation("search"),
21843
- className: clsx43("pr-10 w-full", inputProps.className)
21921
+ className: clsx44("pr-10 w-full", inputProps.className)
21844
21922
  }
21845
21923
  ),
21846
- /* @__PURE__ */ jsx106(
21924
+ /* @__PURE__ */ jsx107(
21847
21925
  IconButton,
21848
21926
  {
21849
21927
  ...searchButtonProps,
@@ -21852,18 +21930,18 @@ var SearchBar = ({
21852
21930
  color: "neutral",
21853
21931
  coloringStyle: "text",
21854
21932
  onClick: () => onSearch(value),
21855
- className: clsx43("absolute right-1.5 top-1/2 -translate-y-1/2", searchButtonProps?.className),
21856
- children: /* @__PURE__ */ jsx106(Search, { className: "w-full h-full" })
21933
+ className: clsx44("absolute right-1.5 top-1/2 -translate-y-1/2", searchButtonProps?.className),
21934
+ children: /* @__PURE__ */ jsx107(Search, { className: "w-full h-full" })
21857
21935
  }
21858
21936
  )
21859
21937
  ] });
21860
21938
  };
21861
21939
 
21862
21940
  // src/components/user-interaction/input/ToggleableInput.tsx
21863
- import { forwardRef as forwardRef33, useEffect as useEffect51, useImperativeHandle as useImperativeHandle16, useRef as useRef42, useState as useState44 } from "react";
21941
+ import { forwardRef as forwardRef33, useEffect as useEffect52, useImperativeHandle as useImperativeHandle16, useRef as useRef43, useState as useState45 } from "react";
21864
21942
  import { Pencil } from "lucide-react";
21865
- import clsx44 from "clsx";
21866
- import { jsx as jsx107, jsxs as jsxs68 } from "react/jsx-runtime";
21943
+ import clsx45 from "clsx";
21944
+ import { jsx as jsx108, jsxs as jsxs69 } from "react/jsx-runtime";
21867
21945
  var ToggleableInput = forwardRef33(function ToggleableInput2({
21868
21946
  value: controlledValue,
21869
21947
  initialValue,
@@ -21877,16 +21955,16 @@ var ToggleableInput = forwardRef33(function ToggleableInput2({
21877
21955
  onValueChange,
21878
21956
  defaultValue: initialValue
21879
21957
  });
21880
- const [isEditing, setIsEditing] = useState44(initialState !== "display");
21881
- const innerRef = useRef42(null);
21958
+ const [isEditing, setIsEditing] = useState45(initialState !== "display");
21959
+ const innerRef = useRef43(null);
21882
21960
  useImperativeHandle16(forwardedRef, () => innerRef.current);
21883
- useEffect51(() => {
21961
+ useEffect52(() => {
21884
21962
  if (isEditing) {
21885
21963
  innerRef.current?.focus();
21886
21964
  }
21887
21965
  }, [isEditing]);
21888
- return /* @__PURE__ */ jsxs68("div", { className: clsx44("relative flex-row-2", { "flex-1": isEditing }), children: [
21889
- /* @__PURE__ */ jsx107(
21966
+ return /* @__PURE__ */ jsxs69("div", { className: clsx45("relative flex-row-2", { "flex-1": isEditing }), children: [
21967
+ /* @__PURE__ */ jsx108(
21890
21968
  Input,
21891
21969
  {
21892
21970
  ...props,
@@ -21910,9 +21988,9 @@ var ToggleableInput = forwardRef33(function ToggleableInput2({
21910
21988
  "data-name": props["data-name"] ?? "togglable-input"
21911
21989
  }
21912
21990
  ),
21913
- !isEditing && /* @__PURE__ */ jsxs68("div", { className: "absolute left-0 flex-row-2 items-center pointer-events-none touch-none w-full overflow-hidden", children: [
21914
- /* @__PURE__ */ jsx107("span", { className: clsx44(" truncate"), children: value }),
21915
- /* @__PURE__ */ jsx107(Pencil, { className: clsx44(`size-force-4`, { "text-transparent": isEditing }) })
21991
+ !isEditing && /* @__PURE__ */ jsxs69("div", { className: "absolute left-0 flex-row-2 items-center pointer-events-none touch-none w-full overflow-hidden", children: [
21992
+ /* @__PURE__ */ jsx108("span", { className: clsx45(" truncate"), children: value }),
21993
+ /* @__PURE__ */ jsx108(Pencil, { className: clsx45(`size-force-4`, { "text-transparent": isEditing }) })
21916
21994
  ] })
21917
21995
  ] });
21918
21996
  });
@@ -21921,9 +21999,9 @@ var ToggleableInput = forwardRef33(function ToggleableInput2({
21921
21999
  import { Check as Check6 } from "lucide-react";
21922
22000
 
21923
22001
  // src/components/user-interaction/properties/PropertyBase.tsx
21924
- import clsx45 from "clsx";
22002
+ import clsx46 from "clsx";
21925
22003
  import { AlertTriangle, Trash, X as X4 } from "lucide-react";
21926
- import { Fragment as Fragment13, jsx as jsx108, jsxs as jsxs69 } from "react/jsx-runtime";
22004
+ import { Fragment as Fragment13, jsx as jsx109, jsxs as jsxs70 } from "react/jsx-runtime";
21927
22005
  var PropertyBase = ({
21928
22006
  name,
21929
22007
  children,
@@ -21942,8 +22020,8 @@ var PropertyBase = ({
21942
22020
  const isClearEnabled = allowClear && !readOnly;
21943
22021
  const isRemoveEnabled = allowRemove && !readOnly;
21944
22022
  const showActionsContainer = isClearEnabled || isRemoveEnabled;
21945
- const renderActionButtons = () => /* @__PURE__ */ jsxs69(Fragment13, { children: [
21946
- isClearEnabled && /* @__PURE__ */ jsx108(
22023
+ const renderActionButtons = () => /* @__PURE__ */ jsxs70(Fragment13, { children: [
22024
+ isClearEnabled && /* @__PURE__ */ jsx109(
21947
22025
  IconButton,
21948
22026
  {
21949
22027
  tooltip: translation("clearValue"),
@@ -21952,10 +22030,10 @@ var PropertyBase = ({
21952
22030
  color: "negative",
21953
22031
  coloringStyle: "text",
21954
22032
  size: "sm",
21955
- children: /* @__PURE__ */ jsx108(X4, { className: "size-force-5" })
22033
+ children: /* @__PURE__ */ jsx109(X4, { className: "size-force-5" })
21956
22034
  }
21957
22035
  ),
21958
- isRemoveEnabled && /* @__PURE__ */ jsx108(
22036
+ isRemoveEnabled && /* @__PURE__ */ jsx109(
21959
22037
  IconButton,
21960
22038
  {
21961
22039
  tooltip: translation("removeProperty"),
@@ -21963,42 +22041,42 @@ var PropertyBase = ({
21963
22041
  color: "negative",
21964
22042
  coloringStyle: "text",
21965
22043
  size: "sm",
21966
- children: /* @__PURE__ */ jsx108(Trash, { className: "size-force-5" })
22044
+ children: /* @__PURE__ */ jsx109(Trash, { className: "size-force-5" })
21967
22045
  }
21968
22046
  )
21969
22047
  ] });
21970
- return /* @__PURE__ */ jsx108(
22048
+ return /* @__PURE__ */ jsx109(
21971
22049
  "div",
21972
22050
  {
21973
- className: clsx45("group/property min-w-0 w-full", className),
22051
+ className: clsx46("group/property min-w-0 w-full", className),
21974
22052
  "data-name": "property-root",
21975
22053
  "data-invalid": PropsUtil.dataAttributes.bool(invalid),
21976
- children: /* @__PURE__ */ jsxs69("div", { "data-name": "property-inner", children: [
21977
- /* @__PURE__ */ jsxs69(
22054
+ children: /* @__PURE__ */ jsxs70("div", { "data-name": "property-inner", children: [
22055
+ /* @__PURE__ */ jsxs70(
21978
22056
  "div",
21979
22057
  {
21980
22058
  "data-name": "property-title",
21981
22059
  "data-invalid": PropsUtil.dataAttributes.bool(invalid),
21982
22060
  children: [
21983
- /* @__PURE__ */ jsxs69("div", { className: "flex min-w-0 flex-1 flex-row items-center justify-between gap-2", children: [
21984
- /* @__PURE__ */ jsx108(Tooltip, { tooltip: name, containerClassName: "min-w-0", children: /* @__PURE__ */ jsxs69("div", { className: "flex-row-1 items-center", children: [
21985
- /* @__PURE__ */ jsx108("div", { "data-name": "property-title-icon", children: icon }),
21986
- /* @__PURE__ */ jsx108("span", { "data-name": "property-title-text", children: name })
22061
+ /* @__PURE__ */ jsxs70("div", { className: "flex min-w-0 flex-1 flex-row items-center justify-between gap-2", children: [
22062
+ /* @__PURE__ */ jsx109(Tooltip, { tooltip: name, containerClassName: "min-w-0", children: /* @__PURE__ */ jsxs70("div", { className: "flex-row-1 items-center", children: [
22063
+ /* @__PURE__ */ jsx109("div", { "data-name": "property-title-icon", children: icon }),
22064
+ /* @__PURE__ */ jsx109("span", { "data-name": "property-title-text", children: name })
21987
22065
  ] }) }),
21988
- invalid && /* @__PURE__ */ jsx108(AlertTriangle, { className: "size-force-6 shrink-0" })
22066
+ invalid && /* @__PURE__ */ jsx109(AlertTriangle, { className: "size-force-6 shrink-0" })
21989
22067
  ] }),
21990
- showActionsContainer && /* @__PURE__ */ jsx108("div", { "data-name": "property-title-actions", children: renderActionButtons() })
22068
+ showActionsContainer && /* @__PURE__ */ jsx109("div", { "data-name": "property-title-actions", children: renderActionButtons() })
21991
22069
  ]
21992
22070
  }
21993
22071
  ),
21994
- /* @__PURE__ */ jsxs69(
22072
+ /* @__PURE__ */ jsxs70(
21995
22073
  "div",
21996
22074
  {
21997
22075
  "data-name": "property-content",
21998
22076
  "data-invalid": PropsUtil.dataAttributes.bool(invalid),
21999
22077
  children: [
22000
22078
  children({ required, hasValue, invalid }),
22001
- showActionsContainer && /* @__PURE__ */ jsx108("div", { "data-name": "property-actions", children: renderActionButtons() })
22079
+ showActionsContainer && /* @__PURE__ */ jsx109("div", { "data-name": "property-actions", children: renderActionButtons() })
22002
22080
  ]
22003
22081
  }
22004
22082
  )
@@ -22008,7 +22086,7 @@ var PropertyBase = ({
22008
22086
  };
22009
22087
 
22010
22088
  // src/components/user-interaction/properties/CheckboxProperty.tsx
22011
- import { jsx as jsx109, jsxs as jsxs70 } from "react/jsx-runtime";
22089
+ import { jsx as jsx110, jsxs as jsxs71 } from "react/jsx-runtime";
22012
22090
  var CheckboxProperty = ({
22013
22091
  value,
22014
22092
  onValueChange,
@@ -22017,15 +22095,15 @@ var CheckboxProperty = ({
22017
22095
  ...baseProps
22018
22096
  }) => {
22019
22097
  const translation = useHightideTranslation();
22020
- return /* @__PURE__ */ jsx109(
22098
+ return /* @__PURE__ */ jsx110(
22021
22099
  PropertyBase,
22022
22100
  {
22023
22101
  ...baseProps,
22024
22102
  hasValue: value !== void 0,
22025
22103
  readOnly,
22026
- icon: /* @__PURE__ */ jsx109(Check6, { size: 24 }),
22027
- children: () => /* @__PURE__ */ jsxs70("div", { className: "flex-row-2 items-center", children: [
22028
- /* @__PURE__ */ jsx109(
22104
+ icon: /* @__PURE__ */ jsx110(Check6, { size: 24 }),
22105
+ children: () => /* @__PURE__ */ jsxs71("div", { className: "flex-row-2 items-center", children: [
22106
+ /* @__PURE__ */ jsx110(
22029
22107
  Button,
22030
22108
  {
22031
22109
  color: value ? "positive" : "neutral",
@@ -22038,7 +22116,7 @@ var CheckboxProperty = ({
22038
22116
  children: translation("yes")
22039
22117
  }
22040
22118
  ),
22041
- /* @__PURE__ */ jsx109(
22119
+ /* @__PURE__ */ jsx110(
22042
22120
  Button,
22043
22121
  {
22044
22122
  color: !value && value !== void 0 ? "negative" : "neutral",
@@ -22058,7 +22136,7 @@ var CheckboxProperty = ({
22058
22136
 
22059
22137
  // src/components/user-interaction/properties/DateProperty.tsx
22060
22138
  import { CalendarDays } from "lucide-react";
22061
- import { jsx as jsx110 } from "react/jsx-runtime";
22139
+ import { jsx as jsx111 } from "react/jsx-runtime";
22062
22140
  var DateProperty = ({
22063
22141
  name,
22064
22142
  value,
@@ -22075,7 +22153,7 @@ var DateProperty = ({
22075
22153
  ...inputProps
22076
22154
  }) => {
22077
22155
  const hasValue = !!value;
22078
- return /* @__PURE__ */ jsx110(
22156
+ return /* @__PURE__ */ jsx111(
22079
22157
  PropertyBase,
22080
22158
  {
22081
22159
  name,
@@ -22089,9 +22167,9 @@ var DateProperty = ({
22089
22167
  onEditComplete?.(null);
22090
22168
  }),
22091
22169
  hasValue,
22092
- icon: /* @__PURE__ */ jsx110(CalendarDays, { size: 24 }),
22170
+ icon: /* @__PURE__ */ jsx111(CalendarDays, { size: 24 }),
22093
22171
  className,
22094
- children: ({ invalid }) => /* @__PURE__ */ jsx110(
22172
+ children: ({ invalid }) => /* @__PURE__ */ jsx111(
22095
22173
  DateTimeInput,
22096
22174
  {
22097
22175
  ...inputProps,
@@ -22112,7 +22190,7 @@ var DateProperty = ({
22112
22190
 
22113
22191
  // src/components/user-interaction/properties/MultiSelectProperty.tsx
22114
22192
  import { List } from "lucide-react";
22115
- import { jsx as jsx111 } from "react/jsx-runtime";
22193
+ import { jsx as jsx112 } from "react/jsx-runtime";
22116
22194
  var MultiSelectProperty = ({
22117
22195
  children,
22118
22196
  value,
@@ -22121,18 +22199,18 @@ var MultiSelectProperty = ({
22121
22199
  ...props
22122
22200
  }) => {
22123
22201
  const hasValue = value.length > 0;
22124
- return /* @__PURE__ */ jsx111(
22202
+ return /* @__PURE__ */ jsx112(
22125
22203
  PropertyBase,
22126
22204
  {
22127
22205
  ...props,
22128
22206
  hasValue,
22129
- icon: /* @__PURE__ */ jsx111(List, { size: 24 }),
22130
- children: ({ invalid }) => /* @__PURE__ */ jsx111(
22207
+ icon: /* @__PURE__ */ jsx112(List, { size: 24 }),
22208
+ children: ({ invalid }) => /* @__PURE__ */ jsx112(
22131
22209
  "div",
22132
22210
  {
22133
22211
  "data-name": "property-input-wrapper",
22134
22212
  "data-invalid": PropsUtil.dataAttributes.bool(invalid),
22135
- children: /* @__PURE__ */ jsx111(
22213
+ children: /* @__PURE__ */ jsx112(
22136
22214
  MultiSelectChipDisplay,
22137
22215
  {
22138
22216
  value,
@@ -22159,7 +22237,7 @@ var MultiSelectProperty = ({
22159
22237
 
22160
22238
  // src/components/user-interaction/properties/NumberProperty.tsx
22161
22239
  import { Binary as Binary2 } from "lucide-react";
22162
- import { jsx as jsx112, jsxs as jsxs71 } from "react/jsx-runtime";
22240
+ import { jsx as jsx113, jsxs as jsxs72 } from "react/jsx-runtime";
22163
22241
  var NumberProperty = ({
22164
22242
  value,
22165
22243
  onValueChange,
@@ -22171,20 +22249,20 @@ var NumberProperty = ({
22171
22249
  }) => {
22172
22250
  const translation = useHightideTranslation();
22173
22251
  const hasValue = value !== void 0;
22174
- return /* @__PURE__ */ jsx112(
22252
+ return /* @__PURE__ */ jsx113(
22175
22253
  PropertyBase,
22176
22254
  {
22177
22255
  ...baseProps,
22178
22256
  onValueClear,
22179
22257
  hasValue,
22180
- icon: /* @__PURE__ */ jsx112(Binary2, { size: 24 }),
22181
- children: ({ invalid }) => /* @__PURE__ */ jsxs71(
22258
+ icon: /* @__PURE__ */ jsx113(Binary2, { size: 24 }),
22259
+ children: ({ invalid }) => /* @__PURE__ */ jsxs72(
22182
22260
  "div",
22183
22261
  {
22184
22262
  "data-name": "property-input-wrapper",
22185
22263
  "data-invalid": PropsUtil.dataAttributes.bool(invalid),
22186
22264
  children: [
22187
- /* @__PURE__ */ jsx112(
22265
+ /* @__PURE__ */ jsx113(
22188
22266
  Input,
22189
22267
  {
22190
22268
  "data-name": "property-input",
@@ -22212,7 +22290,7 @@ var NumberProperty = ({
22212
22290
  }
22213
22291
  }
22214
22292
  ),
22215
- suffix && /* @__PURE__ */ jsx112(
22293
+ suffix && /* @__PURE__ */ jsx113(
22216
22294
  "span",
22217
22295
  {
22218
22296
  "data-name": "property-suffix",
@@ -22229,7 +22307,7 @@ var NumberProperty = ({
22229
22307
 
22230
22308
  // src/components/user-interaction/properties/SelectProperty.tsx
22231
22309
  import { List as List2 } from "lucide-react";
22232
- import { jsx as jsx113, jsxs as jsxs72 } from "react/jsx-runtime";
22310
+ import { jsx as jsx114, jsxs as jsxs73 } from "react/jsx-runtime";
22233
22311
  var SingleSelectProperty = ({
22234
22312
  children,
22235
22313
  value,
@@ -22238,18 +22316,18 @@ var SingleSelectProperty = ({
22238
22316
  ...props
22239
22317
  }) => {
22240
22318
  const hasValue = value !== void 0;
22241
- return /* @__PURE__ */ jsx113(
22319
+ return /* @__PURE__ */ jsx114(
22242
22320
  PropertyBase,
22243
22321
  {
22244
22322
  ...props,
22245
22323
  hasValue,
22246
- icon: /* @__PURE__ */ jsx113(List2, { size: 24 }),
22247
- children: ({ invalid }) => /* @__PURE__ */ jsx113(
22324
+ icon: /* @__PURE__ */ jsx114(List2, { size: 24 }),
22325
+ children: ({ invalid }) => /* @__PURE__ */ jsx114(
22248
22326
  "div",
22249
22327
  {
22250
22328
  "data-name": "property-input-wrapper",
22251
22329
  "data-invalid": PropsUtil.dataAttributes.bool(invalid),
22252
- children: /* @__PURE__ */ jsxs72(
22330
+ children: /* @__PURE__ */ jsxs73(
22253
22331
  SelectRoot,
22254
22332
  {
22255
22333
  value,
@@ -22259,7 +22337,7 @@ var SingleSelectProperty = ({
22259
22337
  },
22260
22338
  disabled: props.readOnly,
22261
22339
  children: [
22262
- /* @__PURE__ */ jsx113(
22340
+ /* @__PURE__ */ jsx114(
22263
22341
  SelectButton,
22264
22342
  {
22265
22343
  className: "flex-row-2 w-full items-center justify-between",
@@ -22267,7 +22345,7 @@ var SingleSelectProperty = ({
22267
22345
  "data-name": "property-input"
22268
22346
  }
22269
22347
  ),
22270
- /* @__PURE__ */ jsx113(SelectContent, { children })
22348
+ /* @__PURE__ */ jsx114(SelectContent, { children })
22271
22349
  ]
22272
22350
  }
22273
22351
  )
@@ -22279,7 +22357,7 @@ var SingleSelectProperty = ({
22279
22357
 
22280
22358
  // src/components/user-interaction/properties/TextProperty.tsx
22281
22359
  import { Text } from "lucide-react";
22282
- import { jsx as jsx114 } from "react/jsx-runtime";
22360
+ import { jsx as jsx115 } from "react/jsx-runtime";
22283
22361
  var TextProperty = ({
22284
22362
  value,
22285
22363
  readOnly,
@@ -22289,13 +22367,13 @@ var TextProperty = ({
22289
22367
  }) => {
22290
22368
  const translation = useHightideTranslation();
22291
22369
  const hasValue = value !== void 0;
22292
- return /* @__PURE__ */ jsx114(
22370
+ return /* @__PURE__ */ jsx115(
22293
22371
  PropertyBase,
22294
22372
  {
22295
22373
  ...baseProps,
22296
22374
  hasValue,
22297
- icon: /* @__PURE__ */ jsx114(Text, { size: 24 }),
22298
- children: ({ invalid }) => /* @__PURE__ */ jsx114(
22375
+ icon: /* @__PURE__ */ jsx115(Text, { size: 24 }),
22376
+ children: ({ invalid }) => /* @__PURE__ */ jsx115(
22299
22377
  Textarea,
22300
22378
  {
22301
22379
  "data-name": "property-input",
@@ -22316,7 +22394,7 @@ var TextProperty = ({
22316
22394
  // src/components/utils/Polymorphic.tsx
22317
22395
  import { Slot } from "@radix-ui/react-slot";
22318
22396
  import { forwardRef as forwardRef34 } from "react";
22319
- import { jsx as jsx115 } from "react/jsx-runtime";
22397
+ import { jsx as jsx116 } from "react/jsx-runtime";
22320
22398
  var PolymorphicSlot = forwardRef34(function PolymorphicSlot2({
22321
22399
  children,
22322
22400
  asChild,
@@ -22324,20 +22402,20 @@ var PolymorphicSlot = forwardRef34(function PolymorphicSlot2({
22324
22402
  ...props
22325
22403
  }, ref) {
22326
22404
  const Component = asChild ? Slot : defaultComponent;
22327
- return /* @__PURE__ */ jsx115(Component, { ...props, ref, children });
22405
+ return /* @__PURE__ */ jsx116(Component, { ...props, ref, children });
22328
22406
  });
22329
22407
 
22330
22408
  // src/components/utils/Transition.tsx
22331
- import { useEffect as useEffect52, useState as useState45 } from "react";
22409
+ import { useEffect as useEffect53, useState as useState46 } from "react";
22332
22410
  function Transition({
22333
22411
  children,
22334
22412
  show,
22335
22413
  includeAnimation = true
22336
22414
  }) {
22337
- const [isOpen, setIsOpen] = useState45(show);
22338
- const [isTransitioning, setIsTransitioning] = useState45(!isOpen);
22415
+ const [isOpen, setIsOpen] = useState46(show);
22416
+ const [isTransitioning, setIsTransitioning] = useState46(!isOpen);
22339
22417
  const isUsingReducedMotion = typeof window !== "undefined" && typeof window.matchMedia === "function" ? window.matchMedia("(prefers-reduced-motion: reduce)").matches : true;
22340
- useEffect52(() => {
22418
+ useEffect53(() => {
22341
22419
  setIsOpen(show);
22342
22420
  setIsTransitioning(true);
22343
22421
  }, [show]);
@@ -22362,18 +22440,18 @@ function Transition({
22362
22440
  }
22363
22441
 
22364
22442
  // src/global-contexts/HightideProvider.tsx
22365
- import { jsx as jsx116 } from "react/jsx-runtime";
22443
+ import { jsx as jsx117 } from "react/jsx-runtime";
22366
22444
  var HightideProvider = ({
22367
22445
  children,
22368
22446
  theme,
22369
22447
  locale,
22370
22448
  config
22371
22449
  }) => {
22372
- return /* @__PURE__ */ jsx116(LocaleProvider, { ...locale, children: /* @__PURE__ */ jsx116(ThemeProvider, { ...theme, children: /* @__PURE__ */ jsx116(HightideConfigProvider, { ...config, children }) }) });
22450
+ return /* @__PURE__ */ jsx117(LocaleProvider, { ...locale, children: /* @__PURE__ */ jsx117(ThemeProvider, { ...theme, children: /* @__PURE__ */ jsx117(HightideConfigProvider, { ...config, children }) }) });
22373
22451
  };
22374
22452
 
22375
22453
  // src/hooks/focus/useFocusGuards.ts
22376
- import { useEffect as useEffect53 } from "react";
22454
+ import { useEffect as useEffect54 } from "react";
22377
22455
  var selectorName = "data-hw-focus-guard";
22378
22456
  function FocusGuard() {
22379
22457
  const element = document.createElement("div");
@@ -22411,7 +22489,7 @@ var FocusGuardsService = class _FocusGuardsService {
22411
22489
  }
22412
22490
  };
22413
22491
  var useFocusGuards = () => {
22414
- useEffect53(() => {
22492
+ useEffect54(() => {
22415
22493
  FocusGuardsService.getInstance().add();
22416
22494
  return () => {
22417
22495
  FocusGuardsService.getInstance().remove();
@@ -22420,10 +22498,10 @@ var useFocusGuards = () => {
22420
22498
  };
22421
22499
 
22422
22500
  // src/hooks/focus/useFocusOnceVisible.ts
22423
- import React5, { useEffect as useEffect54 } from "react";
22501
+ import React5, { useEffect as useEffect55 } from "react";
22424
22502
  var useFocusOnceVisible = (ref, disable = false) => {
22425
22503
  const [hasUsedFocus, setHasUsedFocus] = React5.useState(false);
22426
- useEffect54(() => {
22504
+ useEffect55(() => {
22427
22505
  if (disable || hasUsedFocus) {
22428
22506
  return;
22429
22507
  }
@@ -22443,11 +22521,11 @@ var useFocusOnceVisible = (ref, disable = false) => {
22443
22521
  };
22444
22522
 
22445
22523
  // src/hooks/focus/useIsMounted.ts
22446
- import { useEffect as useEffect55, useLayoutEffect as useLayoutEffect8, useState as useState46 } from "react";
22524
+ import { useEffect as useEffect56, useLayoutEffect as useLayoutEffect8, useState as useState47 } from "react";
22447
22525
  var isClient = typeof window !== "undefined" && typeof document !== "undefined";
22448
- var useIsomorphicEffect = isClient ? useLayoutEffect8 : useEffect55;
22526
+ var useIsomorphicEffect = isClient ? useLayoutEffect8 : useEffect56;
22449
22527
  var useIsMounted = () => {
22450
- const [isMounted, setIsMounted] = useState46(false);
22528
+ const [isMounted, setIsMounted] = useState47(false);
22451
22529
  useIsomorphicEffect(() => {
22452
22530
  setIsMounted(true);
22453
22531
  return () => {
@@ -22458,10 +22536,10 @@ var useIsMounted = () => {
22458
22536
  };
22459
22537
 
22460
22538
  // src/hooks/useHandleRefs.ts
22461
- import { useEffect as useEffect56, useRef as useRef43 } from "react";
22539
+ import { useEffect as useEffect57, useRef as useRef44 } from "react";
22462
22540
  function useHandleRefs(handleRef) {
22463
- const refs = useRef43([]);
22464
- useEffect56(() => {
22541
+ const refs = useRef44([]);
22542
+ useEffect57(() => {
22465
22543
  refs.current = Object.keys(handleRef?.current ?? {}).map(
22466
22544
  () => ({ current: null })
22467
22545
  );
@@ -22499,10 +22577,10 @@ function useLogUnstableDependencies(name, value) {
22499
22577
  }
22500
22578
 
22501
22579
  // src/hooks/useOverwritableState.ts
22502
- import { useEffect as useEffect57, useState as useState47 } from "react";
22580
+ import { useEffect as useEffect58, useState as useState48 } from "react";
22503
22581
  var useOverwritableState = (overwriteValue, onChange) => {
22504
- const [state, setState] = useState47(overwriteValue);
22505
- useEffect57(() => {
22582
+ const [state, setState] = useState48(overwriteValue);
22583
+ useEffect58(() => {
22506
22584
  setState(overwriteValue);
22507
22585
  }, [overwriteValue]);
22508
22586
  const onChangeWrapper = (action) => {
@@ -22520,25 +22598,25 @@ var useRerender = () => {
22520
22598
  };
22521
22599
 
22522
22600
  // src/hooks/useUpdatingDateString.ts
22523
- import { useEffect as useEffect58, useState as useState48 } from "react";
22601
+ import { useEffect as useEffect59, useState as useState49 } from "react";
22524
22602
  var useUpdatingDateString = ({ absoluteFormat = "dateTime", localeOverride, is24HourFormat: is24HourFormatOverride, timeZone: timeZoneOverride, date }) => {
22525
22603
  const { locale: contextLocale, is24HourFormat: contextIs24HourFormat, timeZone: contextTimeZone } = useLocale();
22526
22604
  const locale = localeOverride ?? contextLocale;
22527
22605
  const is24HourFormat = is24HourFormatOverride ?? contextIs24HourFormat ?? true;
22528
22606
  const timeZone = timeZoneOverride ?? contextTimeZone;
22529
- const [dateAndTimeStrings, setDateAndTimeStrings] = useState48({
22607
+ const [dateAndTimeStrings, setDateAndTimeStrings] = useState49({
22530
22608
  compareDate: date,
22531
22609
  absolute: DateUtils.formatAbsolute(date, locale, absoluteFormat, { is24HourFormat, timeZone }),
22532
22610
  relative: DateUtils.formatRelative(date, locale)
22533
22611
  });
22534
- useEffect58(() => {
22612
+ useEffect59(() => {
22535
22613
  setDateAndTimeStrings({
22536
22614
  compareDate: date,
22537
22615
  absolute: DateUtils.formatAbsolute(date, locale, absoluteFormat, { is24HourFormat, timeZone }),
22538
22616
  relative: DateUtils.formatRelative(date, locale)
22539
22617
  });
22540
22618
  }, [date, absoluteFormat, locale, is24HourFormat, timeZone]);
22541
- useEffect58(() => {
22619
+ useEffect59(() => {
22542
22620
  let timeoutId;
22543
22621
  const startTimer = () => {
22544
22622
  const now = /* @__PURE__ */ new Date();
@@ -23085,6 +23163,7 @@ export {
23085
23163
  Transition,
23086
23164
  UseValidators,
23087
23165
  VerticalDivider,
23166
+ VirtualizedTableBody,
23088
23167
  Visibility,
23089
23168
  YearMonthPicker,
23090
23169
  buildSegmentLayout,