@helpwave/hightide 0.1.18 → 0.1.19

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.
Files changed (253) hide show
  1. package/dist/components/branding/HelpwaveBadge.js +7 -7
  2. package/dist/components/branding/HelpwaveBadge.js.map +1 -1
  3. package/dist/components/branding/HelpwaveBadge.mjs +7 -7
  4. package/dist/components/branding/HelpwaveBadge.mjs.map +1 -1
  5. package/dist/components/date/DatePicker.js +65 -38
  6. package/dist/components/date/DatePicker.js.map +1 -1
  7. package/dist/components/date/DatePicker.mjs +54 -27
  8. package/dist/components/date/DatePicker.mjs.map +1 -1
  9. package/dist/components/date/DayPicker.js +3 -3
  10. package/dist/components/date/DayPicker.js.map +1 -1
  11. package/dist/components/date/DayPicker.mjs +3 -3
  12. package/dist/components/date/DayPicker.mjs.map +1 -1
  13. package/dist/components/date/TimePicker.js +4 -4
  14. package/dist/components/date/TimePicker.js.map +1 -1
  15. package/dist/components/date/TimePicker.mjs +4 -4
  16. package/dist/components/date/TimePicker.mjs.map +1 -1
  17. package/dist/components/date/YearMonthPicker.js +46 -19
  18. package/dist/components/date/YearMonthPicker.js.map +1 -1
  19. package/dist/components/date/YearMonthPicker.mjs +44 -17
  20. package/dist/components/date/YearMonthPicker.mjs.map +1 -1
  21. package/dist/components/dialogs/ConfirmDialog.js +32 -28
  22. package/dist/components/dialogs/ConfirmDialog.js.map +1 -1
  23. package/dist/components/dialogs/ConfirmDialog.mjs +18 -14
  24. package/dist/components/dialogs/ConfirmDialog.mjs.map +1 -1
  25. package/dist/components/icons-and-geometry/Avatar.js +2 -2
  26. package/dist/components/icons-and-geometry/Avatar.js.map +1 -1
  27. package/dist/components/icons-and-geometry/Avatar.mjs +2 -2
  28. package/dist/components/icons-and-geometry/Avatar.mjs.map +1 -1
  29. package/dist/components/icons-and-geometry/Ring.js +2 -2
  30. package/dist/components/icons-and-geometry/Ring.js.map +1 -1
  31. package/dist/components/icons-and-geometry/Ring.mjs +2 -2
  32. package/dist/components/icons-and-geometry/Ring.mjs.map +1 -1
  33. package/dist/components/layout-and-navigation/BreadCrumb.js +1 -1
  34. package/dist/components/layout-and-navigation/BreadCrumb.js.map +1 -1
  35. package/dist/components/layout-and-navigation/BreadCrumb.mjs +1 -1
  36. package/dist/components/layout-and-navigation/BreadCrumb.mjs.map +1 -1
  37. package/dist/components/layout-and-navigation/Carousel.js +84 -15
  38. package/dist/components/layout-and-navigation/Carousel.js.map +1 -1
  39. package/dist/components/layout-and-navigation/Carousel.mjs +76 -7
  40. package/dist/components/layout-and-navigation/Carousel.mjs.map +1 -1
  41. package/dist/components/layout-and-navigation/Chip.js +1 -1
  42. package/dist/components/layout-and-navigation/Chip.js.map +1 -1
  43. package/dist/components/layout-and-navigation/Chip.mjs +1 -1
  44. package/dist/components/layout-and-navigation/Chip.mjs.map +1 -1
  45. package/dist/components/layout-and-navigation/Expandable.d.mts +7 -1
  46. package/dist/components/layout-and-navigation/Expandable.d.ts +7 -1
  47. package/dist/components/layout-and-navigation/Expandable.js +36 -9
  48. package/dist/components/layout-and-navigation/Expandable.js.map +1 -1
  49. package/dist/components/layout-and-navigation/Expandable.mjs +36 -10
  50. package/dist/components/layout-and-navigation/Expandable.mjs.map +1 -1
  51. package/dist/components/layout-and-navigation/FAQSection.js +34 -11
  52. package/dist/components/layout-and-navigation/FAQSection.js.map +1 -1
  53. package/dist/components/layout-and-navigation/FAQSection.mjs +36 -13
  54. package/dist/components/layout-and-navigation/FAQSection.mjs.map +1 -1
  55. package/dist/components/layout-and-navigation/Overlay.js +92 -19
  56. package/dist/components/layout-and-navigation/Overlay.js.map +1 -1
  57. package/dist/components/layout-and-navigation/Overlay.mjs +81 -8
  58. package/dist/components/layout-and-navigation/Overlay.mjs.map +1 -1
  59. package/dist/components/layout-and-navigation/Pagination.js +82 -9
  60. package/dist/components/layout-and-navigation/Pagination.js.map +1 -1
  61. package/dist/components/layout-and-navigation/Pagination.mjs +79 -6
  62. package/dist/components/layout-and-navigation/Pagination.mjs.map +1 -1
  63. package/dist/components/layout-and-navigation/SearchableList.js +127 -25
  64. package/dist/components/layout-and-navigation/SearchableList.js.map +1 -1
  65. package/dist/components/layout-and-navigation/SearchableList.mjs +126 -24
  66. package/dist/components/layout-and-navigation/SearchableList.mjs.map +1 -1
  67. package/dist/components/layout-and-navigation/StepperBar.js +22 -16
  68. package/dist/components/layout-and-navigation/StepperBar.js.map +1 -1
  69. package/dist/components/layout-and-navigation/StepperBar.mjs +19 -13
  70. package/dist/components/layout-and-navigation/StepperBar.mjs.map +1 -1
  71. package/dist/components/layout-and-navigation/TextImage.js +7 -3
  72. package/dist/components/layout-and-navigation/TextImage.js.map +1 -1
  73. package/dist/components/layout-and-navigation/TextImage.mjs +7 -3
  74. package/dist/components/layout-and-navigation/TextImage.mjs.map +1 -1
  75. package/dist/components/layout-and-navigation/Tile.d.mts +2 -2
  76. package/dist/components/layout-and-navigation/Tile.d.ts +2 -2
  77. package/dist/components/layout-and-navigation/Tile.js +7 -7
  78. package/dist/components/layout-and-navigation/Tile.js.map +1 -1
  79. package/dist/components/layout-and-navigation/Tile.mjs +7 -7
  80. package/dist/components/layout-and-navigation/Tile.mjs.map +1 -1
  81. package/dist/components/loading-states/ErrorComponent.js +1 -1
  82. package/dist/components/loading-states/ErrorComponent.js.map +1 -1
  83. package/dist/components/loading-states/ErrorComponent.mjs +1 -1
  84. package/dist/components/loading-states/ErrorComponent.mjs.map +1 -1
  85. package/dist/components/loading-states/LoadingAndErrorComponent.js +6 -2
  86. package/dist/components/loading-states/LoadingAndErrorComponent.js.map +1 -1
  87. package/dist/components/loading-states/LoadingAndErrorComponent.mjs +6 -2
  88. package/dist/components/loading-states/LoadingAndErrorComponent.mjs.map +1 -1
  89. package/dist/components/loading-states/LoadingAnimation.js +5 -1
  90. package/dist/components/loading-states/LoadingAnimation.js.map +1 -1
  91. package/dist/components/loading-states/LoadingAnimation.mjs +5 -1
  92. package/dist/components/loading-states/LoadingAnimation.mjs.map +1 -1
  93. package/dist/components/loading-states/LoadingButton.js +8 -6
  94. package/dist/components/loading-states/LoadingButton.js.map +1 -1
  95. package/dist/components/loading-states/LoadingButton.mjs +8 -6
  96. package/dist/components/loading-states/LoadingButton.mjs.map +1 -1
  97. package/dist/components/modals/ConfirmModal.js +32 -28
  98. package/dist/components/modals/ConfirmModal.js.map +1 -1
  99. package/dist/components/modals/ConfirmModal.mjs +18 -14
  100. package/dist/components/modals/ConfirmModal.mjs.map +1 -1
  101. package/dist/components/modals/DiscardChangesModal.js +28 -24
  102. package/dist/components/modals/DiscardChangesModal.js.map +1 -1
  103. package/dist/components/modals/DiscardChangesModal.mjs +18 -14
  104. package/dist/components/modals/DiscardChangesModal.mjs.map +1 -1
  105. package/dist/components/modals/InputModal.js +32 -28
  106. package/dist/components/modals/InputModal.js.map +1 -1
  107. package/dist/components/modals/InputModal.mjs +18 -14
  108. package/dist/components/modals/InputModal.mjs.map +1 -1
  109. package/dist/components/modals/LanguageModal.js +728 -434
  110. package/dist/components/modals/LanguageModal.js.map +1 -1
  111. package/dist/components/modals/LanguageModal.mjs +728 -430
  112. package/dist/components/modals/LanguageModal.mjs.map +1 -1
  113. package/dist/components/modals/ThemeModal.js +732 -438
  114. package/dist/components/modals/ThemeModal.js.map +1 -1
  115. package/dist/components/modals/ThemeModal.mjs +731 -433
  116. package/dist/components/modals/ThemeModal.mjs.map +1 -1
  117. package/dist/components/properties/CheckboxProperty.js +110 -35
  118. package/dist/components/properties/CheckboxProperty.js.map +1 -1
  119. package/dist/components/properties/CheckboxProperty.mjs +110 -35
  120. package/dist/components/properties/CheckboxProperty.mjs.map +1 -1
  121. package/dist/components/properties/DateProperty.js +118 -41
  122. package/dist/components/properties/DateProperty.js.map +1 -1
  123. package/dist/components/properties/DateProperty.mjs +114 -37
  124. package/dist/components/properties/DateProperty.mjs.map +1 -1
  125. package/dist/components/properties/MultiSelectProperty.d.mts +10 -3
  126. package/dist/components/properties/MultiSelectProperty.d.ts +10 -3
  127. package/dist/components/properties/MultiSelectProperty.js +915 -463
  128. package/dist/components/properties/MultiSelectProperty.js.map +1 -1
  129. package/dist/components/properties/MultiSelectProperty.mjs +920 -464
  130. package/dist/components/properties/MultiSelectProperty.mjs.map +1 -1
  131. package/dist/components/properties/NumberProperty.js +101 -18
  132. package/dist/components/properties/NumberProperty.js.map +1 -1
  133. package/dist/components/properties/NumberProperty.mjs +101 -18
  134. package/dist/components/properties/NumberProperty.mjs.map +1 -1
  135. package/dist/components/properties/PropertyBase.js +103 -20
  136. package/dist/components/properties/PropertyBase.js.map +1 -1
  137. package/dist/components/properties/PropertyBase.mjs +99 -16
  138. package/dist/components/properties/PropertyBase.mjs.map +1 -1
  139. package/dist/components/properties/SelectProperty.d.mts +9 -2
  140. package/dist/components/properties/SelectProperty.d.ts +9 -2
  141. package/dist/components/properties/SelectProperty.js +682 -243
  142. package/dist/components/properties/SelectProperty.js.map +1 -1
  143. package/dist/components/properties/SelectProperty.mjs +686 -243
  144. package/dist/components/properties/SelectProperty.mjs.map +1 -1
  145. package/dist/components/properties/TextProperty.js +133 -46
  146. package/dist/components/properties/TextProperty.js.map +1 -1
  147. package/dist/components/properties/TextProperty.mjs +133 -46
  148. package/dist/components/properties/TextProperty.mjs.map +1 -1
  149. package/dist/components/table/Table.js +285 -185
  150. package/dist/components/table/Table.js.map +1 -1
  151. package/dist/components/table/Table.mjs +270 -166
  152. package/dist/components/table/Table.mjs.map +1 -1
  153. package/dist/components/table/TableFilterButton.js +179 -78
  154. package/dist/components/table/TableFilterButton.js.map +1 -1
  155. package/dist/components/table/TableFilterButton.mjs +160 -55
  156. package/dist/components/table/TableFilterButton.mjs.map +1 -1
  157. package/dist/components/table/TableSortButton.js +72 -3
  158. package/dist/components/table/TableSortButton.js.map +1 -1
  159. package/dist/components/table/TableSortButton.mjs +72 -3
  160. package/dist/components/table/TableSortButton.mjs.map +1 -1
  161. package/dist/components/user-action/Button.d.mts +15 -2
  162. package/dist/components/user-action/Button.d.ts +15 -2
  163. package/dist/components/user-action/Button.js +12 -12
  164. package/dist/components/user-action/Button.js.map +1 -1
  165. package/dist/components/user-action/Button.mjs +12 -12
  166. package/dist/components/user-action/Button.mjs.map +1 -1
  167. package/dist/components/user-action/Checkbox.js +6 -15
  168. package/dist/components/user-action/Checkbox.js.map +1 -1
  169. package/dist/components/user-action/Checkbox.mjs +6 -15
  170. package/dist/components/user-action/Checkbox.mjs.map +1 -1
  171. package/dist/components/user-action/CopyToClipboardWrapper.js +6 -2
  172. package/dist/components/user-action/CopyToClipboardWrapper.js.map +1 -1
  173. package/dist/components/user-action/CopyToClipboardWrapper.mjs +6 -2
  174. package/dist/components/user-action/CopyToClipboardWrapper.mjs.map +1 -1
  175. package/dist/components/user-action/DateAndTimePicker.js +79 -48
  176. package/dist/components/user-action/DateAndTimePicker.js.map +1 -1
  177. package/dist/components/user-action/DateAndTimePicker.mjs +65 -34
  178. package/dist/components/user-action/DateAndTimePicker.mjs.map +1 -1
  179. package/dist/components/user-action/Menu.d.mts +11 -6
  180. package/dist/components/user-action/Menu.d.ts +11 -6
  181. package/dist/components/user-action/Menu.js +128 -31
  182. package/dist/components/user-action/Menu.js.map +1 -1
  183. package/dist/components/user-action/Menu.mjs +134 -33
  184. package/dist/components/user-action/Menu.mjs.map +1 -1
  185. package/dist/components/user-action/MultiSelect.d.mts +17 -7
  186. package/dist/components/user-action/MultiSelect.d.ts +17 -7
  187. package/dist/components/user-action/MultiSelect.js +796 -375
  188. package/dist/components/user-action/MultiSelect.js.map +1 -1
  189. package/dist/components/user-action/MultiSelect.mjs +781 -356
  190. package/dist/components/user-action/MultiSelect.mjs.map +1 -1
  191. package/dist/components/user-action/ScrollPicker.js +2 -2
  192. package/dist/components/user-action/ScrollPicker.js.map +1 -1
  193. package/dist/components/user-action/ScrollPicker.mjs +2 -2
  194. package/dist/components/user-action/ScrollPicker.mjs.map +1 -1
  195. package/dist/components/user-action/SearchBar.d.mts +14 -0
  196. package/dist/components/user-action/SearchBar.d.ts +14 -0
  197. package/dist/components/user-action/SearchBar.js +673 -0
  198. package/dist/components/user-action/SearchBar.js.map +1 -0
  199. package/dist/components/user-action/SearchBar.mjs +637 -0
  200. package/dist/components/user-action/SearchBar.mjs.map +1 -0
  201. package/dist/components/user-action/Select.d.mts +18 -5
  202. package/dist/components/user-action/Select.d.ts +18 -5
  203. package/dist/components/user-action/Select.js +764 -355
  204. package/dist/components/user-action/Select.js.map +1 -1
  205. package/dist/components/user-action/Select.mjs +761 -349
  206. package/dist/components/user-action/Select.mjs.map +1 -1
  207. package/dist/components/user-action/Textarea.d.mts +1 -1
  208. package/dist/components/user-action/Textarea.d.ts +1 -1
  209. package/dist/components/user-action/Textarea.js +13 -3
  210. package/dist/components/user-action/Textarea.js.map +1 -1
  211. package/dist/components/user-action/Textarea.mjs +13 -3
  212. package/dist/components/user-action/Textarea.mjs.map +1 -1
  213. package/dist/components/user-action/ToggleableInput.js +2 -2
  214. package/dist/components/user-action/ToggleableInput.js.map +1 -1
  215. package/dist/components/user-action/ToggleableInput.mjs +2 -2
  216. package/dist/components/user-action/ToggleableInput.mjs.map +1 -1
  217. package/dist/css/globals.css +251 -113
  218. package/dist/css/uncompiled/globals.css +19 -13
  219. package/dist/css/uncompiled/theme/colors-component.css +12 -3
  220. package/dist/css/uncompiled/theme/colors-semantic.css +10 -7
  221. package/dist/css/uncompiled/utitlity/animation.css +70 -1
  222. package/dist/css/uncompiled/utitlity/general.css +16 -0
  223. package/dist/hooks/usePopoverPosition.d.mts +15 -0
  224. package/dist/hooks/usePopoverPosition.d.ts +15 -0
  225. package/dist/hooks/usePopoverPosition.js +81 -0
  226. package/dist/hooks/usePopoverPosition.js.map +1 -0
  227. package/dist/hooks/usePopoverPosition.mjs +57 -0
  228. package/dist/hooks/usePopoverPosition.mjs.map +1 -0
  229. package/dist/hooks/useSearch.d.mts +7 -2
  230. package/dist/hooks/useSearch.d.ts +7 -2
  231. package/dist/hooks/useSearch.js +44 -15
  232. package/dist/hooks/useSearch.js.map +1 -1
  233. package/dist/hooks/useSearch.mjs +45 -16
  234. package/dist/hooks/useSearch.mjs.map +1 -1
  235. package/dist/index.d.mts +6 -4
  236. package/dist/index.d.ts +6 -4
  237. package/dist/index.js +1102 -819
  238. package/dist/index.js.map +1 -1
  239. package/dist/index.mjs +1001 -718
  240. package/dist/index.mjs.map +1 -1
  241. package/dist/localization/defaults/form.d.mts +2 -0
  242. package/dist/localization/defaults/form.d.ts +2 -0
  243. package/dist/localization/defaults/form.js +4 -0
  244. package/dist/localization/defaults/form.js.map +1 -1
  245. package/dist/localization/defaults/form.mjs +4 -0
  246. package/dist/localization/defaults/form.mjs.map +1 -1
  247. package/dist/util/simpleSearch.d.mts +1 -1
  248. package/dist/util/simpleSearch.d.ts +1 -1
  249. package/dist/util/simpleSearch.js +4 -1
  250. package/dist/util/simpleSearch.js.map +1 -1
  251. package/dist/util/simpleSearch.mjs +4 -1
  252. package/dist/util/simpleSearch.mjs.map +1 -1
  253. package/package.json +1 -1
@@ -34,7 +34,7 @@ __export(Table_exports, {
34
34
  TableWithSelection: () => TableWithSelection
35
35
  });
36
36
  module.exports = __toCommonJS(Table_exports);
37
- var import_react14 = require("react");
37
+ var import_react15 = require("react");
38
38
 
39
39
  // src/components/layout-and-navigation/Pagination.tsx
40
40
  var import_lucide_react = require("lucide-react");
@@ -130,6 +130,7 @@ var useTranslation = (translations, overwriteTranslation = {}) => {
130
130
  // src/localization/defaults/form.ts
131
131
  var formTranslation = {
132
132
  en: {
133
+ add: "Add",
133
134
  all: "All",
134
135
  apply: "Apply",
135
136
  back: "Back",
@@ -142,6 +143,7 @@ var formTranslation = {
142
143
  confirm: "Confirm",
143
144
  copy: "Copy",
144
145
  copied: "Copied",
146
+ create: "Create",
145
147
  decline: "Decline",
146
148
  delete: "Delete",
147
149
  discard: "Discard",
@@ -184,6 +186,7 @@ var formTranslation = {
184
186
  yes: "Yes"
185
187
  },
186
188
  de: {
189
+ add: "Hinzuf\xFCgen",
187
190
  all: "Alle",
188
191
  apply: "Anwenden",
189
192
  back: "Zur\xFCck",
@@ -196,6 +199,7 @@ var formTranslation = {
196
199
  confirm: "Best\xE4tigen",
197
200
  copy: "Kopieren",
198
201
  copied: "Kopiert",
202
+ create: "Erstellen",
199
203
  decline: "Ablehnen",
200
204
  delete: "L\xF6schen",
201
205
  discard: "Verwerfen",
@@ -517,9 +521,10 @@ var clamp = (value, min = 0, max = 1) => {
517
521
  };
518
522
 
519
523
  // src/components/layout-and-navigation/Pagination.tsx
520
- var import_react7 = require("react");
524
+ var import_react8 = require("react");
521
525
 
522
526
  // src/components/user-action/Button.tsx
527
+ var import_react7 = require("react");
523
528
  var import_clsx3 = __toESM(require("clsx"));
524
529
  var import_jsx_runtime4 = require("react/jsx-runtime");
525
530
  var ButtonColorUtil = {
@@ -545,7 +550,7 @@ var ButtonUtil = {
545
550
  paddingMapping,
546
551
  iconPaddingMapping
547
552
  };
548
- var SolidButton = ({
553
+ var SolidButton = (0, import_react7.forwardRef)(function SolidButton2({
549
554
  children,
550
555
  disabled = false,
551
556
  color = "primary",
@@ -555,7 +560,7 @@ var SolidButton = ({
555
560
  onClick,
556
561
  className,
557
562
  ...restProps
558
- }) => {
563
+ }, ref) {
559
564
  const colorClasses = {
560
565
  primary: "bg-button-solid-primary-background text-button-solid-primary-text",
561
566
  secondary: "bg-button-solid-secondary-background text-button-solid-secondary-text",
@@ -577,8 +582,9 @@ var SolidButton = ({
577
582
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
578
583
  "button",
579
584
  {
580
- onClick: disabled ? void 0 : onClick,
581
- disabled: disabled || onClick === void 0,
585
+ ref,
586
+ onClick,
587
+ disabled,
582
588
  className: (0, import_clsx3.default)(
583
589
  {
584
590
  "text-disabled-text bg-disabled-background cursor-not-allowed": disabled,
@@ -613,13 +619,12 @@ var SolidButton = ({
613
619
  ]
614
620
  }
615
621
  );
616
- };
622
+ });
617
623
  var IconButton = ({
618
624
  children,
619
625
  disabled = false,
620
626
  color = "primary",
621
627
  size = "medium",
622
- onClick,
623
628
  className,
624
629
  ...restProps
625
630
  }) => {
@@ -636,8 +641,7 @@ var IconButton = ({
636
641
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
637
642
  "button",
638
643
  {
639
- onClick: disabled ? void 0 : onClick,
640
- disabled: disabled || onClick === void 0,
644
+ disabled,
641
645
  className: (0, import_clsx3.default)(
642
646
  {
643
647
  "text-disabled-text bg-disabled-background cursor-not-allowed": disabled && color !== "transparent",
@@ -665,11 +669,11 @@ var Pagination = ({
665
669
  style
666
670
  }) => {
667
671
  const translation = useTranslation([formTranslation], overwriteTranslation);
668
- const [value, setValue] = (0, import_react7.useState)((pageIndex + 1).toString());
672
+ const [value, setValue] = (0, import_react8.useState)((pageIndex + 1).toString());
669
673
  const noPages = pageCount === 0;
670
674
  const onFirstPage = pageIndex === 0 && !noPages;
671
675
  const onLastPage = pageIndex === pageCount - 1;
672
- (0, import_react7.useEffect)(() => {
676
+ (0, import_react8.useEffect)(() => {
673
677
  if (noPages) {
674
678
  setValue("0");
675
679
  } else {
@@ -679,10 +683,10 @@ var Pagination = ({
679
683
  const changePage = (page) => {
680
684
  onPageChanged(page);
681
685
  };
682
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: (0, import_clsx4.default)("row gap-x-1", className), style, children: [
686
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: (0, import_clsx4.default)("flex-row-1", className), style, children: [
683
687
  /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(IconButton, { color: "transparent", onClick: () => changePage(0), disabled: onFirstPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react.ChevronFirst, {}) }),
684
688
  /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(IconButton, { color: "transparent", onClick: () => changePage(pageIndex - 1), disabled: onFirstPage || noPages, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react.ChevronLeft, {}) }),
685
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "row min-w-56 gap-x-2 items-center justify-center mx-2 text-center", children: [
689
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex-row-2 min-w-56 items-center justify-center mx-2 text-center", children: [
686
690
  /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
687
691
  Input,
688
692
  {
@@ -712,7 +716,7 @@ var Pagination = ({
712
716
  /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
713
717
  "span",
714
718
  {
715
- className: "row flex-1 items-center justify-center select-none h-10 bg-surface text-on-surface rounded-md font-bold",
719
+ className: "flex-row-2 flex-1 items-center justify-center select-none h-10 bg-surface text-on-surface rounded-md font-bold",
716
720
  children: pageCount
717
721
  }
718
722
  )
@@ -762,18 +766,18 @@ var range = (endOrRange, options) => {
762
766
  var import_react_custom_scrollbars_2 = require("react-custom-scrollbars-2");
763
767
 
764
768
  // src/components/user-action/Checkbox.tsx
765
- var import_react8 = require("react");
769
+ var import_react9 = require("react");
766
770
  var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"));
767
771
  var import_lucide_react2 = require("lucide-react");
768
772
  var import_clsx5 = __toESM(require("clsx"));
769
773
  var import_jsx_runtime6 = require("react/jsx-runtime");
770
774
  var checkboxSizeMapping = {
771
- small: "size-4",
775
+ small: "size-5",
772
776
  medium: "size-6",
773
777
  large: "size-8"
774
778
  };
775
779
  var checkboxIconSizeMapping = {
776
- small: "size-3",
780
+ small: "size-4",
777
781
  medium: "size-5",
778
782
  large: "size-7"
779
783
  };
@@ -802,7 +806,7 @@ var Checkbox = ({
802
806
  const newValue = checked === "indeterminate" ? false : !checked;
803
807
  propagateChange(newValue);
804
808
  };
805
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: (0, import_clsx5.default)("row justify-center items-center", containerClassName), children: [
809
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: (0, import_clsx5.default)("group flex-row-2 items-center cursor-pointer", containerClassName), onClick: changeValue, children: [
806
810
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
807
811
  CheckboxPrimitive.Root,
808
812
  {
@@ -812,10 +816,9 @@ var Checkbox = ({
812
816
  id,
813
817
  className: (0, import_clsx5.default)(usedSizeClass, `items-center border-2 rounded outline-none `, {
814
818
  "text-disabled-text border-disabled-outline bg-disabled-background cursor-not-allowed": disabled,
815
- "focus:border-primary": !disabled,
819
+ "focus:border-primary group-hover:border-primary ": !disabled,
816
820
  "bg-surface": !disabled && !checked,
817
- "bg-primary/30 border-primary text-primary": !disabled && checked === true || checked === "indeterminate",
818
- "hover:border-primary focus:hover:border-primary": !disabled && !checked
821
+ "bg-primary/30 border-primary text-primary": !disabled && checked === true || checked === "indeterminate"
819
822
  }, className),
820
823
  children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(CheckboxPrimitive.Indicator, { children: [
821
824
  checked === true && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react2.Check, { className: innerIconSize }),
@@ -823,15 +826,7 @@ var Checkbox = ({
823
826
  ] })
824
827
  }
825
828
  ),
826
- label && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
827
- Label,
828
- {
829
- ...label,
830
- className: (0, import_clsx5.default)("cursor-pointer", label.className),
831
- htmlFor: id,
832
- onClick: changeValue
833
- }
834
- )
829
+ label && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Label, { ...label, className: (0, import_clsx5.default)(label.className), htmlFor: id })
835
830
  ] });
836
831
  };
837
832
 
@@ -839,13 +834,13 @@ var Checkbox = ({
839
834
  var import_lucide_react3 = require("lucide-react");
840
835
 
841
836
  // src/components/user-action/Menu.tsx
842
- var import_react11 = require("react");
837
+ var import_react12 = require("react");
843
838
  var import_clsx6 = __toESM(require("clsx"));
844
839
 
845
840
  // src/hooks/useOutsideClick.ts
846
- var import_react9 = require("react");
841
+ var import_react10 = require("react");
847
842
  var useOutsideClick = (refs, handler) => {
848
- (0, import_react9.useEffect)(() => {
843
+ (0, import_react10.useEffect)(() => {
849
844
  const listener = (event) => {
850
845
  if (event.target === null) return;
851
846
  if (refs.some((ref) => !ref.current || ref.current.contains(event.target))) {
@@ -863,15 +858,15 @@ var useOutsideClick = (refs, handler) => {
863
858
  };
864
859
 
865
860
  // src/hooks/useHoverState.ts
866
- var import_react10 = require("react");
861
+ var import_react11 = require("react");
867
862
  var defaultUseHoverStateProps = {
868
863
  closingDelay: 200,
869
864
  isDisabled: false
870
865
  };
871
866
  var useHoverState = (props = void 0) => {
872
867
  const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props };
873
- const [isHovered, setIsHovered] = (0, import_react10.useState)(false);
874
- const [timer, setTimer] = (0, import_react10.useState)();
868
+ const [isHovered, setIsHovered] = (0, import_react11.useState)(false);
869
+ const [timer, setTimer] = (0, import_react11.useState)();
875
870
  const onMouseEnter = () => {
876
871
  if (isDisabled) {
877
872
  return;
@@ -887,14 +882,14 @@ var useHoverState = (props = void 0) => {
887
882
  setIsHovered(false);
888
883
  }, closingDelay));
889
884
  };
890
- (0, import_react10.useEffect)(() => {
885
+ (0, import_react11.useEffect)(() => {
891
886
  if (timer) {
892
887
  return () => {
893
888
  clearTimeout(timer);
894
889
  };
895
890
  }
896
891
  });
897
- (0, import_react10.useEffect)(() => {
892
+ (0, import_react11.useEffect)(() => {
898
893
  if (timer) {
899
894
  clearTimeout(timer);
900
895
  }
@@ -917,53 +912,150 @@ var BagFunctionUtil = {
917
912
  resolve
918
913
  };
919
914
 
915
+ // src/hooks/usePopoverPosition.ts
916
+ var defaultPopoverPositionOptions = {
917
+ edgePadding: 16,
918
+ outerGap: 4,
919
+ horizontalAlignment: "leftInside",
920
+ verticalAlignment: "bottomOutside",
921
+ disabled: false
922
+ };
923
+ var usePopoverPosition = (trigger, options) => {
924
+ const {
925
+ edgePadding,
926
+ outerGap,
927
+ verticalAlignment,
928
+ horizontalAlignment,
929
+ disabled
930
+ } = { ...defaultPopoverPositionOptions, ...options };
931
+ if (disabled || !trigger) {
932
+ return {};
933
+ }
934
+ const left = {
935
+ leftOutside: trigger.left - outerGap,
936
+ leftInside: trigger.left,
937
+ rightOutside: trigger.right + outerGap,
938
+ rightInside: trigger.right,
939
+ center: trigger.left + trigger.width / 2
940
+ }[horizontalAlignment];
941
+ const top = {
942
+ topOutside: trigger.top - outerGap,
943
+ topInside: trigger.top,
944
+ bottomOutside: trigger.bottom + outerGap,
945
+ bottomInside: trigger.bottom,
946
+ center: trigger.top + trigger.height / 2
947
+ }[verticalAlignment];
948
+ const translateX = {
949
+ leftOutside: "-100%",
950
+ leftInside: void 0,
951
+ rightOutside: void 0,
952
+ rightInside: "-100%",
953
+ center: "-50%"
954
+ }[horizontalAlignment];
955
+ const translateY = {
956
+ topOutside: "-100%",
957
+ topInside: void 0,
958
+ bottomOutside: void 0,
959
+ bottomInside: "-100%",
960
+ center: "-50%"
961
+ }[verticalAlignment];
962
+ return {
963
+ left: Math.max(left, edgePadding),
964
+ top: Math.max(top, edgePadding),
965
+ translate: [translateX ?? "0", translateY ?? "0"].join(" ")
966
+ };
967
+ };
968
+
920
969
  // src/components/user-action/Menu.tsx
970
+ var import_react_dom = require("react-dom");
921
971
  var import_jsx_runtime7 = require("react/jsx-runtime");
972
+ function getScrollableParents(element) {
973
+ const scrollables = [];
974
+ let parent = element.parentElement;
975
+ while (parent) {
976
+ scrollables.push(parent);
977
+ parent = parent.parentElement;
978
+ }
979
+ return scrollables;
980
+ }
922
981
  var Menu = ({
923
982
  trigger,
924
983
  children,
925
- alignment = "tl",
984
+ alignmentHorizontal = "leftInside",
985
+ alignmentVertical = "bottomOutside",
926
986
  showOnHover = false,
987
+ disabled = false,
927
988
  menuClassName = ""
928
989
  }) => {
929
- const { isHovered: isOpen, setIsHovered: setIsOpen, handlers } = useHoverState({ isDisabled: !showOnHover });
930
- const triggerRef = (0, import_react11.useRef)(null);
931
- const menuRef = (0, import_react11.useRef)(null);
990
+ const { isHovered: isOpen, setIsHovered: setIsOpen } = useHoverState({ isDisabled: !showOnHover || disabled });
991
+ const triggerRef = (0, import_react12.useRef)(null);
992
+ const menuRef = (0, import_react12.useRef)(null);
932
993
  useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
933
- const bag = { isOpen, close: () => setIsOpen(false) };
934
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
935
- "div",
936
- {
937
- className: "relative",
938
- ...handlers,
939
- children: [
940
- trigger(() => setIsOpen(!isOpen), triggerRef),
941
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
942
- "div",
994
+ const [isHidden, setIsHidden] = (0, import_react12.useState)(true);
995
+ const bag = {
996
+ isOpen,
997
+ close: () => setIsOpen(false),
998
+ toggleOpen: () => setIsOpen((prevState) => !prevState),
999
+ disabled
1000
+ };
1001
+ const menuPosition = usePopoverPosition(
1002
+ triggerRef.current?.getBoundingClientRect(),
1003
+ { verticalAlignment: alignmentVertical, horizontalAlignment: alignmentHorizontal, disabled }
1004
+ );
1005
+ (0, import_react12.useEffect)(() => {
1006
+ if (!isOpen) return;
1007
+ const triggerEl = triggerRef.current;
1008
+ if (!triggerEl) return;
1009
+ const scrollableParents = getScrollableParents(triggerEl);
1010
+ const close = () => setIsOpen(false);
1011
+ scrollableParents.forEach((parent) => {
1012
+ parent.addEventListener("scroll", close);
1013
+ });
1014
+ window.addEventListener("resize", close);
1015
+ return () => {
1016
+ scrollableParents.forEach((parent) => {
1017
+ parent.removeEventListener("scroll", close);
1018
+ });
1019
+ window.removeEventListener("resize", close);
1020
+ };
1021
+ }, [isOpen, setIsOpen]);
1022
+ (0, import_react12.useEffect)(() => {
1023
+ if (isOpen) {
1024
+ setIsHidden(false);
1025
+ }
1026
+ }, [isOpen]);
1027
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [
1028
+ trigger(bag, triggerRef),
1029
+ (0, import_react_dom.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1030
+ "div",
1031
+ {
1032
+ ref: menuRef,
1033
+ onClick: (e) => e.stopPropagation(),
1034
+ className: (0, import_clsx6.default)(
1035
+ "absolute rounded-md bg-menu-background text-menu-text shadow-around-lg z-10",
943
1036
  {
944
- ref: menuRef,
945
- onClick: (e) => e.stopPropagation(),
946
- className: (0, import_clsx6.default)(
947
- "absolute top-full mt-1 min-w-40 rounded-lg bg-menu-background text-menu-text shadow-around-lg z-10",
948
- {
949
- "top-0": alignment[0] === "t",
950
- "bottom-0": alignment[0] === "b",
951
- "left-0": alignment[1] === "l",
952
- "right-0": alignment[1] === "r",
953
- "hidden": !isOpen
954
- },
955
- menuClassName
956
- ),
957
- children: BagFunctionUtil.resolve(children, bag)
1037
+ "animate-pop-in": isOpen,
1038
+ "animate-pop-out": !isOpen,
1039
+ "hidden": isHidden
1040
+ },
1041
+ menuClassName
1042
+ ),
1043
+ onAnimationEnd: () => {
1044
+ if (!isOpen) {
1045
+ setIsHidden(true);
958
1046
  }
959
- )
960
- ]
961
- }
962
- );
1047
+ },
1048
+ style: {
1049
+ ...menuPosition
1050
+ },
1051
+ children: BagFunctionUtil.resolve(children, bag)
1052
+ }
1053
+ ), document.body)
1054
+ ] });
963
1055
  };
964
1056
 
965
1057
  // src/components/table/TableFilterButton.tsx
966
- var import_react12 = require("react");
1058
+ var import_react13 = require("react");
967
1059
  var import_jsx_runtime8 = require("react/jsx-runtime");
968
1060
  var defaultTableFilterTranslation = {
969
1061
  en: {
@@ -989,16 +1081,16 @@ var TableFilterButton = ({
989
1081
  }) => {
990
1082
  const translation = useTranslation([formTranslation, defaultTableFilterTranslation]);
991
1083
  const columnFilterValue = column.getFilterValue();
992
- const [filterValue, setFilterValue] = (0, import_react12.useState)(columnFilterValue);
1084
+ const [filterValue, setFilterValue] = (0, import_react13.useState)(columnFilterValue);
993
1085
  const hasFilter = !!filterValue;
994
- (0, import_react12.useEffect)(() => {
1086
+ (0, import_react13.useEffect)(() => {
995
1087
  setFilterValue(columnFilterValue);
996
1088
  }, [columnFilterValue]);
997
1089
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
998
1090
  Menu,
999
1091
  {
1000
- trigger: (onClick, ref) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { ref, className: "relative", children: [
1001
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(IconButton, { color: "neutral", size: "tiny", onClick, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react3.FilterIcon, {}) }),
1092
+ trigger: ({ toggleOpen }, ref) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { ref, className: "relative", children: [
1093
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(IconButton, { color: "neutral", size: "tiny", onClick: toggleOpen, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_lucide_react3.FilterIcon, {}) }),
1002
1094
  hasFilter && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1003
1095
  "div",
1004
1096
  {
@@ -1007,7 +1099,7 @@ var TableFilterButton = ({
1007
1099
  }
1008
1100
  )
1009
1101
  ] }),
1010
- children: ({ close }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "col gap-y-1 p-2 items-start font-normal text-menu-text", children: [
1102
+ children: ({ close }) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex-col-1 p-2 items-start font-normal text-menu-text", children: [
1011
1103
  /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("h4", { className: "textstyle-title-sm", children: translation("filter") }),
1012
1104
  filterType === "text" && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1013
1105
  Input,
@@ -1019,7 +1111,7 @@ var TableFilterButton = ({
1019
1111
  className: "h-10"
1020
1112
  }
1021
1113
  ),
1022
- filterType === "range" && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "row gap-x-2 items-center", children: [
1114
+ filterType === "range" && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex-row-2 items-center", children: [
1023
1115
  /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1024
1116
  Input,
1025
1117
  {
@@ -1076,7 +1168,7 @@ var TableFilterButton = ({
1076
1168
  }
1077
1169
  )
1078
1170
  ] }),
1079
- /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "row justify-end w-full", children: [
1171
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "flex-row-2 justify-end w-full", children: [
1080
1172
  hasFilter && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(SolidButton, { color: "negative", size: "small", onClick: () => {
1081
1173
  column.setFilterValue(void 0);
1082
1174
  close();
@@ -1146,9 +1238,9 @@ var TableFilters = {
1146
1238
  };
1147
1239
 
1148
1240
  // src/hooks/useResizeCallbackWrapper.ts
1149
- var import_react13 = require("react");
1241
+ var import_react14 = require("react");
1150
1242
  var useResizeCallbackWrapper = (callback) => {
1151
- (0, import_react13.useEffect)(() => {
1243
+ (0, import_react14.useEffect)(() => {
1152
1244
  window.addEventListener("resize", callback);
1153
1245
  return () => {
1154
1246
  window.removeEventListener("resize", callback);
@@ -1180,22 +1272,22 @@ var Table = ({
1180
1272
  columns,
1181
1273
  ...tableOptions
1182
1274
  }) => {
1183
- const ref = (0, import_react14.useRef)(null);
1184
- const tableRef = (0, import_react14.useRef)(null);
1185
- const [columnSizing, setColumnSizing] = (0, import_react14.useState)(columns.reduce((previousValue, currentValue) => {
1275
+ const ref = (0, import_react15.useRef)(null);
1276
+ const tableRef = (0, import_react15.useRef)(null);
1277
+ const [columnSizing, setColumnSizing] = (0, import_react15.useState)(columns.reduce((previousValue, currentValue) => {
1186
1278
  return {
1187
1279
  ...previousValue,
1188
1280
  [currentValue.id]: currentValue.minSize ?? defaultColumn.minSize
1189
1281
  };
1190
1282
  }, {}));
1191
- const [columnSizingInfo, setColumnSizingInfo] = (0, import_react14.useState)();
1192
- const [pagination, setPagination] = (0, import_react14.useState)({
1283
+ const [columnSizingInfo, setColumnSizingInfo] = (0, import_react15.useState)();
1284
+ const [pagination, setPagination] = (0, import_react15.useState)({
1193
1285
  pageSize: 10,
1194
1286
  pageIndex: 0,
1195
1287
  ...initialState?.pagination
1196
1288
  });
1197
- const [columnFilters, setColumnFilters] = (0, import_react14.useState)(initialState?.columnFilters);
1198
- const computedColumnMinWidths = (0, import_react14.useMemo)(() => {
1289
+ const [columnFilters, setColumnFilters] = (0, import_react15.useState)(initialState?.columnFilters);
1290
+ const computedColumnMinWidths = (0, import_react15.useMemo)(() => {
1199
1291
  return columns.reduce((previousValue, column) => {
1200
1292
  return {
1201
1293
  ...previousValue,
@@ -1204,7 +1296,7 @@ var Table = ({
1204
1296
  };
1205
1297
  }, {});
1206
1298
  }, [columns, defaultColumn]);
1207
- const computedColumnMaxWidths = (0, import_react14.useMemo)(() => {
1299
+ const computedColumnMaxWidths = (0, import_react15.useMemo)(() => {
1208
1300
  return columns.reduce((previousValue, column) => {
1209
1301
  return {
1210
1302
  ...previousValue,
@@ -1212,12 +1304,12 @@ var Table = ({
1212
1304
  };
1213
1305
  }, {});
1214
1306
  }, [columns, defaultColumn]);
1215
- const tableMinWidth = (0, import_react14.useMemo)(() => {
1307
+ const tableMinWidth = (0, import_react15.useMemo)(() => {
1216
1308
  return columns.reduce((sum, column) => {
1217
1309
  return sum + computedColumnMinWidths[column.id];
1218
1310
  }, 0);
1219
1311
  }, [columns, computedColumnMinWidths]);
1220
- const updateColumnSizes = (0, import_react14.useMemo)(() => {
1312
+ const updateColumnSizes = (0, import_react15.useMemo)(() => {
1221
1313
  return (previous) => {
1222
1314
  const updateSizing = {
1223
1315
  ...columnSizing,
@@ -1334,18 +1426,18 @@ var Table = ({
1334
1426
  columnResizeMode: "onChange",
1335
1427
  ...tableOptions
1336
1428
  });
1337
- const [hasInitializedSizing, setHasInitializedSizing] = (0, import_react14.useState)(false);
1338
- (0, import_react14.useEffect)(() => {
1429
+ const [hasInitializedSizing, setHasInitializedSizing] = (0, import_react15.useState)(false);
1430
+ (0, import_react15.useEffect)(() => {
1339
1431
  if (!hasInitializedSizing && ref.current) {
1340
1432
  setHasInitializedSizing(true);
1341
1433
  table.setColumnSizing(updateColumnSizes(columnSizing));
1342
1434
  }
1343
1435
  }, [columnSizing, hasInitializedSizing]);
1344
- useResizeCallbackWrapper((0, import_react14.useCallback)(() => {
1436
+ useResizeCallbackWrapper((0, import_react15.useCallback)(() => {
1345
1437
  table.setColumnSizing(updateColumnSizes);
1346
1438
  }, [updateColumnSizes]));
1347
1439
  const pageCount = table.getPageCount();
1348
- (0, import_react14.useEffect)(() => {
1440
+ (0, import_react15.useEffect)(() => {
1349
1441
  const totalPages = pageCount;
1350
1442
  if (totalPages === 0) {
1351
1443
  if (pagination.pageIndex !== 0) {
@@ -1361,103 +1453,111 @@ var Table = ({
1361
1453
  }));
1362
1454
  }
1363
1455
  }, [data, pageCount, pagination.pageSize, pagination.pageIndex]);
1364
- const columnSizeVars = (0, import_react14.useMemo)(() => {
1456
+ const columnSizeVars = (0, import_react15.useMemo)(() => {
1365
1457
  const headers = table.getFlatHeaders();
1366
1458
  const colSizes = {};
1367
1459
  for (let i = 0; i < headers.length; i++) {
1368
1460
  const header = headers[i];
1369
- colSizes[`--header-${header.id}-size`] = header.getSize();
1370
- colSizes[`--col-${header.column.id}-size`] = header.column.getSize();
1461
+ colSizes[`--header-${header.id}-size`] = Math.floor(header.getSize());
1462
+ colSizes[`--col-${header.column.id}-size`] = Math.floor(header.column.getSize());
1371
1463
  }
1372
1464
  return colSizes;
1373
1465
  }, [table.getState().columnSizingInfo, table.getState().columnSizing]);
1374
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { ref, className: (0, import_clsx10.default)("col gap-y-4", className), children: [
1375
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react_custom_scrollbars_2.Scrollbars, { autoHeight: true, autoHeightMax: tableRef.current?.offsetHeight, autoHide: true, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1376
- "table",
1466
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { ref, className: (0, import_clsx10.default)("flex-col-4", className), children: [
1467
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1468
+ import_react_custom_scrollbars_2.Scrollbars,
1377
1469
  {
1378
- ref: tableRef,
1379
- className: (0, import_clsx10.default)(tableClassName),
1380
- style: {
1381
- ...columnSizeVars,
1382
- width: Math.max(table.getTotalSize(), ref.current?.offsetWidth ?? table.getTotalSize())
1383
- },
1384
- children: [
1385
- table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("colgroup", { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1386
- "col",
1387
- {
1388
- style: {
1389
- width: `calc(var(--header-${header?.id}-size) * 1px)`,
1390
- minWidth: header.column.columnDef.minSize,
1391
- maxWidth: header.column.columnDef.maxSize
1392
- }
1470
+ autoHeight: true,
1471
+ autoHeightMax: tableRef.current?.offsetHeight + 2,
1472
+ autoHide: true,
1473
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1474
+ "table",
1475
+ {
1476
+ ref: tableRef,
1477
+ className: (0, import_clsx10.default)(tableClassName),
1478
+ style: {
1479
+ ...columnSizeVars,
1480
+ width: Math.floor(Math.max(table.getTotalSize() - columns.length, ref.current?.offsetWidth ?? table.getTotalSize()))
1393
1481
  },
1394
- header.id
1395
- )) }, headerGroup.id)),
1396
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("thead", { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { className: table.options.meta?.headerRowClassName, children: headerGroup.headers.map((header) => {
1397
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1398
- "th",
1399
- {
1400
- colSpan: header.colSpan,
1401
- className: (0, import_clsx10.default)("relative group", header.column.columnDef.meta?.className),
1402
- children: [
1403
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "row w-full", children: header.isPlaceholder ? null : /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "row gap-x-1 items-center", children: [
1404
- header.column.getCanSort() && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1405
- TableSortButton,
1406
- {
1407
- sortDirection: header.column.getIsSorted(),
1408
- onClick: () => header.column.toggleSorting()
1409
- }
1410
- ),
1411
- header.column.getCanFilter() && header.column.columnDef.meta?.filterType ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1412
- TableFilterButton,
1413
- {
1414
- column: header.column,
1415
- filterType: header.column.columnDef.meta.filterType
1416
- }
1417
- ) : null,
1418
- (0, import_react_table.flexRender)(
1419
- header.column.columnDef.header,
1420
- header.getContext()
1421
- )
1422
- ] }) }),
1423
- header.column.getCanResize() && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1424
- "div",
1425
- {
1426
- onMouseDown: header.getResizeHandler(),
1427
- onTouchStart: header.getResizeHandler(),
1428
- onDoubleClick: () => {
1429
- header.column.resetSize();
1430
- },
1431
- className: "table-resize-indicator w-2 rounded bg-primary cursor-col-resize select-none touch-none opacity-0 group-hover:opacity-100 transition-opacity",
1432
- style: {
1433
- opacity: !columnSizingInfo?.columnSizingStart ? void 0 : columnSizingInfo?.columnSizingStart?.findIndex(([id, _]) => id === header.column.id) !== -1 ? 1 : columnSizingInfo?.columnSizingStart?.length !== 0 ? 0 : void 0
1434
- }
1435
- }
1436
- )
1437
- ]
1438
- },
1439
- header.id
1440
- );
1441
- }) }, headerGroup.id)) }),
1442
- /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("tbody", { children: [
1443
- table.getRowModel().rows.map((row) => {
1444
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { onClick: () => onRowClick(row, table), className: table.options.meta?.bodyRowClassName, children: row.getVisibleCells().map((cell) => {
1445
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("td", { children: (0, import_react_table.flexRender)(
1446
- cell.column.columnDef.cell,
1447
- cell.getContext()
1448
- ) }, cell.id);
1449
- }) }, row.id);
1450
- }),
1451
- range(table.getState().pagination.pageSize - table.getRowModel().rows.length, { allowEmptyRange: true }).map((row, index) => {
1452
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { children: columns.map((column) => {
1453
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("td", { children: fillerRow ? fillerRow(column.id, table) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(FillerRowElement, {}) }, column.id);
1454
- }) }, "filler-row-" + index);
1455
- })
1456
- ] })
1457
- ]
1482
+ children: [
1483
+ table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("colgroup", { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1484
+ "col",
1485
+ {
1486
+ style: {
1487
+ width: `calc(var(--header-${header?.id}-size) * 1px)`,
1488
+ minWidth: header.column.columnDef.minSize,
1489
+ maxWidth: header.column.columnDef.maxSize
1490
+ }
1491
+ },
1492
+ header.id
1493
+ )) }, headerGroup.id)),
1494
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("thead", { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { className: table.options.meta?.headerRowClassName, children: headerGroup.headers.map((header) => {
1495
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
1496
+ "th",
1497
+ {
1498
+ colSpan: header.colSpan,
1499
+ className: (0, import_clsx10.default)("relative group", header.column.columnDef.meta?.className),
1500
+ children: [
1501
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex-row-2 w-full", children: header.isPlaceholder ? null : /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex-row-1 items-center", children: [
1502
+ header.column.getCanSort() && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1503
+ TableSortButton,
1504
+ {
1505
+ sortDirection: header.column.getIsSorted(),
1506
+ onClick: () => header.column.toggleSorting()
1507
+ }
1508
+ ),
1509
+ header.column.getCanFilter() && header.column.columnDef.meta?.filterType ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1510
+ TableFilterButton,
1511
+ {
1512
+ column: header.column,
1513
+ filterType: header.column.columnDef.meta.filterType
1514
+ }
1515
+ ) : null,
1516
+ (0, import_react_table.flexRender)(
1517
+ header.column.columnDef.header,
1518
+ header.getContext()
1519
+ )
1520
+ ] }) }),
1521
+ header.column.getCanResize() && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1522
+ "div",
1523
+ {
1524
+ onMouseDown: header.getResizeHandler(),
1525
+ onTouchStart: header.getResizeHandler(),
1526
+ onDoubleClick: () => {
1527
+ header.column.resetSize();
1528
+ },
1529
+ className: "table-resize-indicator w-2 rounded bg-primary cursor-col-resize select-none touch-none opacity-0 group-hover:opacity-100 transition-opacity",
1530
+ style: {
1531
+ opacity: !columnSizingInfo?.columnSizingStart ? void 0 : columnSizingInfo?.columnSizingStart?.findIndex(([id, _]) => id === header.column.id) !== -1 ? 1 : columnSizingInfo?.columnSizingStart?.length !== 0 ? 0 : void 0
1532
+ }
1533
+ }
1534
+ )
1535
+ ]
1536
+ },
1537
+ header.id
1538
+ );
1539
+ }) }, headerGroup.id)) }),
1540
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("tbody", { children: [
1541
+ table.getRowModel().rows.map((row) => {
1542
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { onClick: () => onRowClick(row, table), className: table.options.meta?.bodyRowClassName, children: row.getVisibleCells().map((cell) => {
1543
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("td", { children: (0, import_react_table.flexRender)(
1544
+ cell.column.columnDef.cell,
1545
+ cell.getContext()
1546
+ ) }, cell.id);
1547
+ }) }, row.id);
1548
+ }),
1549
+ range(table.getState().pagination.pageSize - table.getRowModel().rows.length, { allowEmptyRange: true }).map((row, index) => {
1550
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tr", { children: columns.map((column) => {
1551
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("td", { children: fillerRow ? fillerRow(column.id, table) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(FillerRowElement, {}) }, column.id);
1552
+ }) }, "filler-row-" + index);
1553
+ })
1554
+ ] })
1555
+ ]
1556
+ }
1557
+ )
1458
1558
  }
1459
- ) }),
1460
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "row justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1559
+ ),
1560
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "flex-row-2 justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
1461
1561
  Pagination,
1462
1562
  {
1463
1563
  pageIndex: table.getState().pagination.pageIndex,
@@ -1468,8 +1568,8 @@ var Table = ({
1468
1568
  ] });
1469
1569
  };
1470
1570
  var TableUncontrolled = ({ data, ...props }) => {
1471
- const [usedDate, setUsedData] = (0, import_react14.useState)(data);
1472
- (0, import_react14.useEffect)(() => {
1571
+ const [usedDate, setUsedData] = (0, import_react15.useState)(data);
1572
+ (0, import_react15.useEffect)(() => {
1473
1573
  setUsedData(data);
1474
1574
  }, [data]);
1475
1575
  return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
@@ -1491,7 +1591,7 @@ var TableWithSelection = ({
1491
1591
  meta,
1492
1592
  ...props
1493
1593
  }) => {
1494
- const columnsWithSelection = (0, import_react14.useMemo)(() => {
1594
+ const columnsWithSelection = (0, import_react15.useMemo)(() => {
1495
1595
  return [
1496
1596
  {
1497
1597
  id: selectionRowId,