@helpwave/hightide 0.1.5 → 0.1.7-alpha.1

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 (497) hide show
  1. package/dist/coloring/{shading.d.cts → shading.d.mts} +1 -1
  2. package/dist/coloring/shading.js +14 -3329
  3. package/dist/coloring/shading.js.map +1 -1
  4. package/dist/coloring/shading.mjs +47 -0
  5. package/dist/coloring/shading.mjs.map +1 -0
  6. package/dist/coloring/types.js +26 -2
  7. package/dist/coloring/types.js.map +1 -1
  8. package/dist/coloring/types.mjs +6 -0
  9. package/dist/coloring/{types.cjs.map → types.mjs.map} +1 -1
  10. package/dist/components/branding/HelpwaveBadge.js +59 -25
  11. package/dist/components/branding/HelpwaveBadge.js.map +1 -1
  12. package/dist/components/branding/HelpwaveBadge.mjs +122 -0
  13. package/dist/components/branding/HelpwaveBadge.mjs.map +1 -0
  14. package/dist/components/date/{DatePicker.d.cts → DatePicker.d.mts} +5 -5
  15. package/dist/components/date/DatePicker.js +117 -82
  16. package/dist/components/date/DatePicker.js.map +1 -1
  17. package/dist/components/date/{DatePicker.cjs → DatePicker.mjs} +83 -119
  18. package/dist/components/date/DatePicker.mjs.map +1 -0
  19. package/dist/components/date/{DayPicker.d.cts → DayPicker.d.mts} +1 -1
  20. package/dist/components/date/DayPicker.js +55 -18
  21. package/dist/components/date/DayPicker.js.map +1 -1
  22. package/dist/components/date/{DayPicker.cjs → DayPicker.mjs} +19 -57
  23. package/dist/components/date/DayPicker.mjs.map +1 -0
  24. package/dist/components/date/{TimeDisplay.d.cts → TimeDisplay.d.mts} +2 -2
  25. package/dist/components/date/TimeDisplay.js +35 -9
  26. package/dist/components/date/TimeDisplay.js.map +1 -1
  27. package/dist/components/date/{TimeDisplay.cjs → TimeDisplay.mjs} +10 -37
  28. package/dist/components/date/TimeDisplay.mjs.map +1 -0
  29. package/dist/components/date/TimePicker.js +57 -22
  30. package/dist/components/date/TimePicker.js.map +1 -1
  31. package/dist/components/date/{TimePicker.cjs → TimePicker.mjs} +23 -59
  32. package/dist/components/date/TimePicker.mjs.map +1 -0
  33. package/dist/components/date/{YearMonthPicker.d.cts → YearMonthPicker.d.mts} +1 -1
  34. package/dist/components/date/YearMonthPicker.d.ts +1 -1
  35. package/dist/components/date/YearMonthPicker.js +72 -37
  36. package/dist/components/date/YearMonthPicker.js.map +1 -1
  37. package/dist/components/date/{YearMonthPicker.cjs → YearMonthPicker.mjs} +38 -74
  38. package/dist/components/date/YearMonthPicker.mjs.map +1 -0
  39. package/dist/components/dialogs/{ConfirmDialog.d.cts → ConfirmDialog.d.mts} +4 -4
  40. package/dist/components/dialogs/ConfirmDialog.js +98 -62
  41. package/dist/components/dialogs/ConfirmDialog.js.map +1 -1
  42. package/dist/components/dialogs/{ConfirmDialog.cjs → ConfirmDialog.mjs} +63 -100
  43. package/dist/components/dialogs/ConfirmDialog.mjs.map +1 -0
  44. package/dist/components/icons-and-geometry/{Avatar.d.cts → Avatar.d.mts} +1 -5
  45. package/dist/components/icons-and-geometry/Avatar.d.ts +1 -5
  46. package/dist/components/icons-and-geometry/Avatar.js +48 -13
  47. package/dist/components/icons-and-geometry/Avatar.js.map +1 -1
  48. package/dist/components/icons-and-geometry/Avatar.mjs +81 -0
  49. package/dist/components/icons-and-geometry/{Avatar.cjs.map → Avatar.mjs.map} +1 -1
  50. package/dist/components/icons-and-geometry/Circle.js +40 -6
  51. package/dist/components/icons-and-geometry/Circle.js.map +1 -1
  52. package/dist/components/icons-and-geometry/Circle.mjs +27 -0
  53. package/dist/components/icons-and-geometry/{Circle.cjs.map → Circle.mjs.map} +1 -1
  54. package/dist/components/icons-and-geometry/Helpwave.js +38 -14
  55. package/dist/components/icons-and-geometry/Helpwave.js.map +1 -1
  56. package/dist/components/icons-and-geometry/Helpwave.mjs +75 -0
  57. package/dist/components/icons-and-geometry/{Helpwave.cjs.map → Helpwave.mjs.map} +1 -1
  58. package/dist/components/icons-and-geometry/Ring.js +74 -37
  59. package/dist/components/icons-and-geometry/Ring.js.map +1 -1
  60. package/dist/components/icons-and-geometry/{Ring.cjs → Ring.mjs} +38 -76
  61. package/dist/components/icons-and-geometry/{Ring.cjs.map → Ring.mjs.map} +1 -1
  62. package/dist/components/icons-and-geometry/Tag.js +28 -4
  63. package/dist/components/icons-and-geometry/Tag.js.map +1 -1
  64. package/dist/components/icons-and-geometry/Tag.mjs +22 -0
  65. package/dist/components/icons-and-geometry/{Tag.cjs.map → Tag.mjs.map} +1 -1
  66. package/dist/components/layout-and-navigation/BreadCrumb.js +195 -191
  67. package/dist/components/layout-and-navigation/BreadCrumb.js.map +1 -1
  68. package/dist/components/layout-and-navigation/{BreadCrumb.cjs → BreadCrumb.mjs} +191 -198
  69. package/dist/components/layout-and-navigation/{BreadCrumb.cjs.map → BreadCrumb.mjs.map} +1 -1
  70. package/dist/components/layout-and-navigation/Carousel.js +68 -34
  71. package/dist/components/layout-and-navigation/Carousel.js.map +1 -1
  72. package/dist/components/layout-and-navigation/{Carousel.cjs → Carousel.mjs} +35 -70
  73. package/dist/components/layout-and-navigation/{Carousel.cjs.map → Carousel.mjs.map} +1 -1
  74. package/dist/components/layout-and-navigation/Chip.js +43 -8
  75. package/dist/components/layout-and-navigation/Chip.js.map +1 -1
  76. package/dist/components/layout-and-navigation/Chip.mjs +69 -0
  77. package/dist/components/layout-and-navigation/{Chip.cjs.map → Chip.mjs.map} +1 -1
  78. package/dist/components/layout-and-navigation/DividerInserter.js +39 -5
  79. package/dist/components/layout-and-navigation/DividerInserter.js.map +1 -1
  80. package/dist/components/layout-and-navigation/DividerInserter.mjs +25 -0
  81. package/dist/components/layout-and-navigation/{DividerInserter.cjs.map → DividerInserter.mjs.map} +1 -1
  82. package/dist/components/layout-and-navigation/Expandable.js +52 -17
  83. package/dist/components/layout-and-navigation/Expandable.js.map +1 -1
  84. package/dist/components/layout-and-navigation/Expandable.mjs +81 -0
  85. package/dist/components/layout-and-navigation/Expandable.mjs.map +1 -0
  86. package/dist/components/layout-and-navigation/{FAQSection.d.cts → FAQSection.d.mts} +1 -1
  87. package/dist/components/layout-and-navigation/FAQSection.js +75 -41
  88. package/dist/components/layout-and-navigation/FAQSection.js.map +1 -1
  89. package/dist/components/layout-and-navigation/{FAQSection.cjs → FAQSection.mjs} +42 -77
  90. package/dist/components/layout-and-navigation/FAQSection.mjs.map +1 -0
  91. package/dist/components/layout-and-navigation/{MarkdownInterpreter.d.cts → MarkdownInterpreter.d.mts} +1 -1
  92. package/dist/components/layout-and-navigation/MarkdownInterpreter.d.ts +1 -1
  93. package/dist/components/layout-and-navigation/MarkdownInterpreter.js +43 -18
  94. package/dist/components/layout-and-navigation/MarkdownInterpreter.js.map +1 -1
  95. package/dist/components/layout-and-navigation/{MarkdownInterpreter.cjs → MarkdownInterpreter.mjs} +19 -45
  96. package/dist/components/layout-and-navigation/{MarkdownInterpreter.cjs.map → MarkdownInterpreter.mjs.map} +1 -1
  97. package/dist/components/layout-and-navigation/{Overlay.d.cts → Overlay.d.mts} +3 -3
  98. package/dist/components/layout-and-navigation/Overlay.d.ts +1 -1
  99. package/dist/components/layout-and-navigation/Overlay.js +91 -54
  100. package/dist/components/layout-and-navigation/Overlay.js.map +1 -1
  101. package/dist/components/layout-and-navigation/{Overlay.cjs → Overlay.mjs} +55 -93
  102. package/dist/components/layout-and-navigation/Overlay.mjs.map +1 -0
  103. package/dist/components/layout-and-navigation/{Pagination.d.cts → Pagination.d.mts} +2 -2
  104. package/dist/components/layout-and-navigation/Pagination.js +53 -19
  105. package/dist/components/layout-and-navigation/Pagination.js.map +1 -1
  106. package/dist/components/layout-and-navigation/Pagination.mjs +82 -0
  107. package/dist/components/layout-and-navigation/Pagination.mjs.map +1 -0
  108. package/dist/components/layout-and-navigation/{SearchableList.d.cts → SearchableList.d.mts} +2 -2
  109. package/dist/components/layout-and-navigation/SearchableList.js +76 -42
  110. package/dist/components/layout-and-navigation/SearchableList.js.map +1 -1
  111. package/dist/components/layout-and-navigation/SearchableList.mjs +252 -0
  112. package/dist/components/layout-and-navigation/SearchableList.mjs.map +1 -0
  113. package/dist/components/layout-and-navigation/{StepperBar.d.cts → StepperBar.d.mts} +2 -2
  114. package/dist/components/layout-and-navigation/StepperBar.js +69 -34
  115. package/dist/components/layout-and-navigation/StepperBar.js.map +1 -1
  116. package/dist/components/layout-and-navigation/{StepperBar.cjs → StepperBar.mjs} +35 -71
  117. package/dist/components/layout-and-navigation/StepperBar.mjs.map +1 -0
  118. package/dist/components/layout-and-navigation/{Table.d.cts → Table.d.mts} +4 -4
  119. package/dist/components/layout-and-navigation/Table.d.ts +3 -3
  120. package/dist/components/layout-and-navigation/Table.js +108 -65
  121. package/dist/components/layout-and-navigation/Table.js.map +1 -1
  122. package/dist/components/layout-and-navigation/{Table.cjs → Table.mjs} +66 -110
  123. package/dist/components/layout-and-navigation/Table.mjs.map +1 -0
  124. package/dist/components/layout-and-navigation/{TextImage.d.cts → TextImage.d.mts} +2 -2
  125. package/dist/components/layout-and-navigation/TextImage.js +54 -18
  126. package/dist/components/layout-and-navigation/TextImage.js.map +1 -1
  127. package/dist/components/layout-and-navigation/TextImage.mjs +101 -0
  128. package/dist/components/layout-and-navigation/TextImage.mjs.map +1 -0
  129. package/dist/components/layout-and-navigation/Tile.js +42 -8
  130. package/dist/components/layout-and-navigation/Tile.js.map +1 -1
  131. package/dist/components/layout-and-navigation/Tile.mjs +23 -0
  132. package/dist/components/layout-and-navigation/{Tile.cjs.map → Tile.mjs.map} +1 -1
  133. package/dist/components/layout-and-navigation/VerticalDivider.js +33 -9
  134. package/dist/components/layout-and-navigation/VerticalDivider.js.map +1 -1
  135. package/dist/components/layout-and-navigation/VerticalDivider.mjs +56 -0
  136. package/dist/components/layout-and-navigation/{VerticalDivider.cjs.map → VerticalDivider.mjs.map} +1 -1
  137. package/dist/components/loading-states/{ErrorComponent.d.cts → ErrorComponent.d.mts} +2 -2
  138. package/dist/components/loading-states/ErrorComponent.js +46 -12
  139. package/dist/components/loading-states/ErrorComponent.js.map +1 -1
  140. package/dist/components/loading-states/ErrorComponent.mjs +68 -0
  141. package/dist/components/loading-states/ErrorComponent.mjs.map +1 -0
  142. package/dist/components/loading-states/{LoadingAndErrorComponent.d.cts → LoadingAndErrorComponent.d.mts} +5 -5
  143. package/dist/components/loading-states/LoadingAndErrorComponent.d.ts +1 -1
  144. package/dist/components/loading-states/LoadingAndErrorComponent.js +68 -34
  145. package/dist/components/loading-states/LoadingAndErrorComponent.js.map +1 -1
  146. package/dist/components/loading-states/LoadingAndErrorComponent.mjs +194 -0
  147. package/dist/components/loading-states/LoadingAndErrorComponent.mjs.map +1 -0
  148. package/dist/components/loading-states/{LoadingAnimation.d.cts → LoadingAnimation.d.mts} +2 -2
  149. package/dist/components/loading-states/LoadingAnimation.js +59 -23
  150. package/dist/components/loading-states/LoadingAnimation.js.map +1 -1
  151. package/dist/components/loading-states/LoadingAnimation.mjs +139 -0
  152. package/dist/components/loading-states/LoadingAnimation.mjs.map +1 -0
  153. package/dist/components/loading-states/{LoadingButton.d.cts → LoadingButton.d.mts} +1 -1
  154. package/dist/components/loading-states/LoadingButton.js +62 -28
  155. package/dist/components/loading-states/LoadingButton.js.map +1 -1
  156. package/dist/components/loading-states/{LoadingButton.cjs → LoadingButton.mjs} +29 -64
  157. package/dist/components/loading-states/LoadingButton.mjs.map +1 -0
  158. package/dist/components/loading-states/ProgressIndicator.js +30 -6
  159. package/dist/components/loading-states/ProgressIndicator.js.map +1 -1
  160. package/dist/components/loading-states/ProgressIndicator.mjs +59 -0
  161. package/dist/components/loading-states/{ProgressIndicator.cjs.map → ProgressIndicator.mjs.map} +1 -1
  162. package/dist/components/modals/{ConfirmModal.d.cts → ConfirmModal.d.mts} +4 -4
  163. package/dist/components/modals/ConfirmModal.js +99 -63
  164. package/dist/components/modals/ConfirmModal.js.map +1 -1
  165. package/dist/components/modals/{ConfirmModal.cjs → ConfirmModal.mjs} +64 -101
  166. package/dist/components/modals/ConfirmModal.mjs.map +1 -0
  167. package/dist/components/modals/{DiscardChangesModal.d.cts → DiscardChangesModal.d.mts} +5 -5
  168. package/dist/components/modals/DiscardChangesModal.js +101 -65
  169. package/dist/components/modals/DiscardChangesModal.js.map +1 -1
  170. package/dist/components/modals/{DiscardChangesModal.cjs → DiscardChangesModal.mjs} +66 -103
  171. package/dist/components/modals/DiscardChangesModal.mjs.map +1 -0
  172. package/dist/components/modals/{InputModal.d.cts → InputModal.d.mts} +7 -7
  173. package/dist/components/modals/InputModal.js +124 -88
  174. package/dist/components/modals/InputModal.js.map +1 -1
  175. package/dist/components/modals/{InputModal.cjs → InputModal.mjs} +89 -126
  176. package/dist/components/modals/InputModal.mjs.map +1 -0
  177. package/dist/components/modals/{LanguageModal.d.cts → LanguageModal.d.mts} +3 -3
  178. package/dist/components/modals/LanguageModal.js +129 -93
  179. package/dist/components/modals/LanguageModal.js.map +1 -1
  180. package/dist/components/modals/{LanguageModal.cjs → LanguageModal.mjs} +94 -131
  181. package/dist/components/modals/LanguageModal.mjs.map +1 -0
  182. package/dist/components/modals/{ThemeModal.d.cts → ThemeModal.d.mts} +4 -4
  183. package/dist/components/modals/ThemeModal.js +133 -97
  184. package/dist/components/modals/ThemeModal.js.map +1 -1
  185. package/dist/components/modals/{ThemeModal.cjs → ThemeModal.mjs} +98 -135
  186. package/dist/components/modals/ThemeModal.mjs.map +1 -0
  187. package/dist/components/properties/{CheckboxProperty.d.cts → CheckboxProperty.d.mts} +3 -3
  188. package/dist/components/properties/CheckboxProperty.js +82 -48
  189. package/dist/components/properties/CheckboxProperty.js.map +1 -1
  190. package/dist/components/properties/{CheckboxProperty.cjs → CheckboxProperty.mjs} +49 -84
  191. package/dist/components/properties/CheckboxProperty.mjs.map +1 -0
  192. package/dist/components/properties/{DateProperty.d.cts → DateProperty.d.mts} +3 -3
  193. package/dist/components/properties/DateProperty.js +92 -58
  194. package/dist/components/properties/DateProperty.js.map +1 -1
  195. package/dist/components/properties/{DateProperty.cjs → DateProperty.mjs} +59 -94
  196. package/dist/components/properties/DateProperty.mjs.map +1 -0
  197. package/dist/components/properties/{MultiSelectProperty.d.cts → MultiSelectProperty.d.mts} +5 -5
  198. package/dist/components/properties/MultiSelectProperty.js +151 -117
  199. package/dist/components/properties/MultiSelectProperty.js.map +1 -1
  200. package/dist/components/properties/{MultiSelectProperty.cjs → MultiSelectProperty.mjs} +118 -153
  201. package/dist/components/properties/MultiSelectProperty.mjs.map +1 -0
  202. package/dist/components/properties/{NumberProperty.d.cts → NumberProperty.d.mts} +3 -3
  203. package/dist/components/properties/NumberProperty.js +93 -59
  204. package/dist/components/properties/NumberProperty.js.map +1 -1
  205. package/dist/components/properties/{NumberProperty.cjs → NumberProperty.mjs} +60 -95
  206. package/dist/components/properties/NumberProperty.mjs.map +1 -0
  207. package/dist/components/properties/{PropertyBase.d.cts → PropertyBase.d.mts} +2 -2
  208. package/dist/components/properties/PropertyBase.js +61 -27
  209. package/dist/components/properties/PropertyBase.js.map +1 -1
  210. package/dist/components/properties/{PropertyBase.cjs → PropertyBase.mjs} +28 -63
  211. package/dist/components/properties/{PropertyBase.cjs.map → PropertyBase.mjs.map} +1 -1
  212. package/dist/components/properties/{SelectProperty.d.cts → SelectProperty.d.mts} +5 -5
  213. package/dist/components/properties/SelectProperty.js +116 -82
  214. package/dist/components/properties/SelectProperty.js.map +1 -1
  215. package/dist/components/properties/{SelectProperty.cjs → SelectProperty.mjs} +83 -118
  216. package/dist/components/properties/SelectProperty.mjs.map +1 -0
  217. package/dist/components/properties/{TextProperty.d.cts → TextProperty.d.mts} +3 -3
  218. package/dist/components/properties/TextProperty.js +90 -56
  219. package/dist/components/properties/TextProperty.js.map +1 -1
  220. package/dist/components/properties/{TextProperty.cjs → TextProperty.mjs} +57 -92
  221. package/dist/components/properties/TextProperty.mjs.map +1 -0
  222. package/dist/components/user-action/Button.js +67 -28
  223. package/dist/components/user-action/Button.js.map +1 -1
  224. package/dist/components/user-action/{Button.cjs → Button.mjs} +29 -69
  225. package/dist/components/user-action/{Button.cjs.map → Button.mjs.map} +1 -1
  226. package/dist/components/user-action/{Checkbox.d.cts → Checkbox.d.mts} +1 -1
  227. package/dist/components/user-action/Checkbox.js +55 -20
  228. package/dist/components/user-action/Checkbox.js.map +1 -1
  229. package/dist/components/user-action/Checkbox.mjs +122 -0
  230. package/dist/components/user-action/{Checkbox.cjs.map → Checkbox.mjs.map} +1 -1
  231. package/dist/components/user-action/{DateAndTimePicker.d.cts → DateAndTimePicker.d.mts} +7 -7
  232. package/dist/components/user-action/DateAndTimePicker.js +140 -106
  233. package/dist/components/user-action/DateAndTimePicker.js.map +1 -1
  234. package/dist/components/user-action/{DateAndTimePicker.cjs → DateAndTimePicker.mjs} +107 -142
  235. package/dist/components/user-action/DateAndTimePicker.mjs.map +1 -0
  236. package/dist/components/user-action/{Input.d.cts → Input.d.mts} +1 -1
  237. package/dist/components/user-action/Input.js +62 -26
  238. package/dist/components/user-action/Input.js.map +1 -1
  239. package/dist/components/user-action/Input.mjs +186 -0
  240. package/dist/components/user-action/Input.mjs.map +1 -0
  241. package/dist/components/user-action/Label.js +39 -5
  242. package/dist/components/user-action/Label.js.map +1 -1
  243. package/dist/components/user-action/Label.mjs +21 -0
  244. package/dist/components/user-action/{Label.cjs.map → Label.mjs.map} +1 -1
  245. package/dist/components/user-action/Menu.js +54 -19
  246. package/dist/components/user-action/Menu.js.map +1 -1
  247. package/dist/components/user-action/Menu.mjs +127 -0
  248. package/dist/components/user-action/Menu.mjs.map +1 -0
  249. package/dist/components/user-action/{MultiSelect.d.cts → MultiSelect.d.mts} +3 -3
  250. package/dist/components/user-action/MultiSelect.js +114 -80
  251. package/dist/components/user-action/MultiSelect.js.map +1 -1
  252. package/dist/components/user-action/{MultiSelect.cjs → MultiSelect.mjs} +81 -116
  253. package/dist/components/user-action/MultiSelect.mjs.map +1 -0
  254. package/dist/components/user-action/ScrollPicker.js +49 -15
  255. package/dist/components/user-action/ScrollPicker.js.map +1 -1
  256. package/dist/components/user-action/{ScrollPicker.cjs → ScrollPicker.mjs} +16 -51
  257. package/dist/components/user-action/ScrollPicker.mjs.map +1 -0
  258. package/dist/components/user-action/{Select.d.cts → Select.d.mts} +2 -7
  259. package/dist/components/user-action/Select.d.ts +1 -6
  260. package/dist/components/user-action/Select.js +88 -54
  261. package/dist/components/user-action/Select.js.map +1 -1
  262. package/dist/components/user-action/{Select.cjs → Select.mjs} +52 -91
  263. package/dist/components/user-action/Select.mjs.map +1 -0
  264. package/dist/components/user-action/{Textarea.d.cts → Textarea.d.mts} +1 -1
  265. package/dist/components/user-action/Textarea.js +60 -25
  266. package/dist/components/user-action/Textarea.js.map +1 -1
  267. package/dist/components/user-action/Textarea.mjs +163 -0
  268. package/dist/components/user-action/Textarea.mjs.map +1 -0
  269. package/dist/components/user-action/ToggleableInput.js +61 -26
  270. package/dist/components/user-action/ToggleableInput.js.map +1 -1
  271. package/dist/components/user-action/ToggleableInput.mjs +156 -0
  272. package/dist/components/user-action/ToggleableInput.mjs.map +1 -0
  273. package/dist/components/user-action/Tooltip.js +41 -15
  274. package/dist/components/user-action/Tooltip.js.map +1 -1
  275. package/dist/components/user-action/{Tooltip.cjs → Tooltip.mjs} +16 -43
  276. package/dist/components/user-action/Tooltip.mjs.map +1 -0
  277. package/dist/hooks/useHoverState.js +31 -7
  278. package/dist/hooks/useHoverState.js.map +1 -1
  279. package/dist/hooks/useHoverState.mjs +47 -0
  280. package/dist/hooks/{useHoverState.cjs.map → useHoverState.mjs.map} +1 -1
  281. package/dist/hooks/useLocalStorage.js +31 -7
  282. package/dist/hooks/useLocalStorage.js.map +1 -1
  283. package/dist/hooks/useLocalStorage.mjs +58 -0
  284. package/dist/hooks/{useLocalStorage.cjs.map → useLocalStorage.mjs.map} +1 -1
  285. package/dist/hooks/useOutsideClick.js +28 -4
  286. package/dist/hooks/useOutsideClick.js.map +1 -1
  287. package/dist/hooks/useOutsideClick.mjs +23 -0
  288. package/dist/hooks/{useOutsideClick.cjs.map → useOutsideClick.mjs.map} +1 -1
  289. package/dist/hooks/useSaveDelay.js +30 -6
  290. package/dist/hooks/useSaveDelay.js.map +1 -1
  291. package/dist/hooks/useSaveDelay.mjs +43 -0
  292. package/dist/hooks/{useSaveDelay.cjs.map → useSaveDelay.mjs.map} +1 -1
  293. package/dist/{index.d.cts → index.d.mts} +78 -78
  294. package/dist/index.js +1028 -875
  295. package/dist/index.js.map +1 -1
  296. package/dist/{index.cjs → index.mjs} +876 -1028
  297. package/dist/index.mjs.map +1 -0
  298. package/dist/localization/{LanguageProvider.d.cts → LanguageProvider.d.mts} +1 -1
  299. package/dist/localization/LanguageProvider.js +43 -16
  300. package/dist/localization/LanguageProvider.js.map +1 -1
  301. package/dist/localization/{LanguageProvider.cjs → LanguageProvider.mjs} +17 -45
  302. package/dist/localization/LanguageProvider.mjs.map +1 -0
  303. package/dist/localization/{useTranslation.d.cts → useTranslation.d.mts} +1 -1
  304. package/dist/localization/useTranslation.js +33 -7
  305. package/dist/localization/useTranslation.js.map +1 -1
  306. package/dist/localization/useTranslation.mjs +42 -0
  307. package/dist/localization/useTranslation.mjs.map +1 -0
  308. package/dist/localization/util.js +26 -2
  309. package/dist/localization/util.js.map +1 -1
  310. package/dist/localization/util.mjs +16 -0
  311. package/dist/localization/{util.cjs.map → util.mjs.map} +1 -1
  312. package/dist/theming/{useTheme.d.cts → useTheme.d.mts} +2 -2
  313. package/dist/theming/useTheme.js +37 -10
  314. package/dist/theming/useTheme.js.map +1 -1
  315. package/dist/theming/useTheme.mjs +48 -0
  316. package/dist/theming/useTheme.mjs.map +1 -0
  317. package/dist/util/array.js +32 -2
  318. package/dist/util/array.js.map +1 -1
  319. package/dist/util/{array.cjs → array.mjs} +3 -34
  320. package/dist/util/{array.cjs.map → array.mjs.map} +1 -1
  321. package/dist/util/builder.js +26 -2
  322. package/dist/util/builder.js.map +1 -1
  323. package/dist/util/builder.mjs +9 -0
  324. package/dist/util/{builder.cjs.map → builder.mjs.map} +1 -1
  325. package/dist/util/date.js +39 -2
  326. package/dist/util/date.js.map +1 -1
  327. package/dist/util/{date.cjs → date.mjs} +3 -41
  328. package/dist/util/date.mjs.map +1 -0
  329. package/dist/util/easeFunctions.js +28 -2
  330. package/dist/util/easeFunctions.js.map +1 -1
  331. package/dist/util/easeFunctions.mjs +36 -0
  332. package/dist/util/easeFunctions.mjs.map +1 -0
  333. package/dist/util/emailValidation.js +26 -2
  334. package/dist/util/emailValidation.js.map +1 -1
  335. package/dist/util/emailValidation.mjs +8 -0
  336. package/dist/util/{emailValidation.cjs.map → emailValidation.mjs.map} +1 -1
  337. package/dist/util/loopingArray.js +26 -2
  338. package/dist/util/loopingArray.js.map +1 -1
  339. package/dist/util/{loopingArray.cjs → loopingArray.mjs} +3 -28
  340. package/dist/util/{loopingArray.cjs.map → loopingArray.mjs.map} +1 -1
  341. package/dist/util/math.js +26 -2
  342. package/dist/util/math.js.map +1 -1
  343. package/dist/util/math.mjs +8 -0
  344. package/dist/util/{math.cjs.map → math.mjs.map} +1 -1
  345. package/dist/util/news.d.mts +101 -0
  346. package/dist/util/news.d.ts +54 -54
  347. package/dist/util/news.js +39 -12
  348. package/dist/util/news.js.map +1 -1
  349. package/dist/util/news.mjs +49 -0
  350. package/dist/util/news.mjs.map +1 -0
  351. package/dist/util/noop.d.mts +3 -0
  352. package/dist/util/noop.d.ts +1 -1
  353. package/dist/util/noop.js +26 -2
  354. package/dist/util/noop.js.map +1 -1
  355. package/dist/util/noop.mjs +6 -0
  356. package/dist/util/noop.mjs.map +1 -0
  357. package/dist/util/simpleSearch.js +29 -2
  358. package/dist/util/simpleSearch.js.map +1 -1
  359. package/dist/util/simpleSearch.mjs +26 -0
  360. package/dist/util/{simpleSearch.cjs.map → simpleSearch.mjs.map} +1 -1
  361. package/dist/util/storage.js +27 -2
  362. package/dist/util/storage.js.map +1 -1
  363. package/dist/util/storage.mjs +38 -0
  364. package/dist/util/{storage.cjs.map → storage.mjs.map} +1 -1
  365. package/dist/util/types.js +17 -0
  366. package/dist/util/types.js.map +1 -1
  367. package/dist/util/types.mjs +1 -0
  368. package/dist/util/types.mjs.map +1 -0
  369. package/package.json +2 -3
  370. package/dist/coloring/shading.cjs +0 -3402
  371. package/dist/coloring/shading.cjs.map +0 -1
  372. package/dist/coloring/types.cjs +0 -31
  373. package/dist/components/branding/HelpwaveBadge.cjs +0 -157
  374. package/dist/components/branding/HelpwaveBadge.cjs.map +0 -1
  375. package/dist/components/date/DatePicker.cjs.map +0 -1
  376. package/dist/components/date/DayPicker.cjs.map +0 -1
  377. package/dist/components/date/TimeDisplay.cjs.map +0 -1
  378. package/dist/components/date/TimePicker.cjs.map +0 -1
  379. package/dist/components/date/YearMonthPicker.cjs.map +0 -1
  380. package/dist/components/dialogs/ConfirmDialog.cjs.map +0 -1
  381. package/dist/components/icons-and-geometry/Avatar.cjs +0 -121
  382. package/dist/components/icons-and-geometry/Circle.cjs +0 -62
  383. package/dist/components/icons-and-geometry/Helpwave.cjs +0 -100
  384. package/dist/components/icons-and-geometry/Tag.cjs +0 -47
  385. package/dist/components/layout-and-navigation/Chip.cjs +0 -105
  386. package/dist/components/layout-and-navigation/DividerInserter.cjs +0 -60
  387. package/dist/components/layout-and-navigation/Expandable.cjs +0 -117
  388. package/dist/components/layout-and-navigation/Expandable.cjs.map +0 -1
  389. package/dist/components/layout-and-navigation/FAQSection.cjs.map +0 -1
  390. package/dist/components/layout-and-navigation/Overlay.cjs.map +0 -1
  391. package/dist/components/layout-and-navigation/Pagination.cjs +0 -117
  392. package/dist/components/layout-and-navigation/Pagination.cjs.map +0 -1
  393. package/dist/components/layout-and-navigation/SearchableList.cjs +0 -287
  394. package/dist/components/layout-and-navigation/SearchableList.cjs.map +0 -1
  395. package/dist/components/layout-and-navigation/StepperBar.cjs.map +0 -1
  396. package/dist/components/layout-and-navigation/Table.cjs.map +0 -1
  397. package/dist/components/layout-and-navigation/TextImage.cjs +0 -138
  398. package/dist/components/layout-and-navigation/TextImage.cjs.map +0 -1
  399. package/dist/components/layout-and-navigation/Tile.cjs +0 -58
  400. package/dist/components/layout-and-navigation/VerticalDivider.cjs +0 -81
  401. package/dist/components/loading-states/ErrorComponent.cjs +0 -103
  402. package/dist/components/loading-states/ErrorComponent.cjs.map +0 -1
  403. package/dist/components/loading-states/LoadingAndErrorComponent.cjs +0 -229
  404. package/dist/components/loading-states/LoadingAndErrorComponent.cjs.map +0 -1
  405. package/dist/components/loading-states/LoadingAnimation.cjs +0 -176
  406. package/dist/components/loading-states/LoadingAnimation.cjs.map +0 -1
  407. package/dist/components/loading-states/LoadingButton.cjs.map +0 -1
  408. package/dist/components/loading-states/ProgressIndicator.cjs +0 -84
  409. package/dist/components/modals/ConfirmModal.cjs.map +0 -1
  410. package/dist/components/modals/DiscardChangesModal.cjs.map +0 -1
  411. package/dist/components/modals/InputModal.cjs.map +0 -1
  412. package/dist/components/modals/LanguageModal.cjs.map +0 -1
  413. package/dist/components/modals/ThemeModal.cjs.map +0 -1
  414. package/dist/components/properties/CheckboxProperty.cjs.map +0 -1
  415. package/dist/components/properties/DateProperty.cjs.map +0 -1
  416. package/dist/components/properties/MultiSelectProperty.cjs.map +0 -1
  417. package/dist/components/properties/NumberProperty.cjs.map +0 -1
  418. package/dist/components/properties/SelectProperty.cjs.map +0 -1
  419. package/dist/components/properties/TextProperty.cjs.map +0 -1
  420. package/dist/components/user-action/Checkbox.cjs +0 -158
  421. package/dist/components/user-action/DateAndTimePicker.cjs.map +0 -1
  422. package/dist/components/user-action/Input.cjs +0 -223
  423. package/dist/components/user-action/Input.cjs.map +0 -1
  424. package/dist/components/user-action/Label.cjs +0 -56
  425. package/dist/components/user-action/Menu.cjs +0 -163
  426. package/dist/components/user-action/Menu.cjs.map +0 -1
  427. package/dist/components/user-action/MultiSelect.cjs.map +0 -1
  428. package/dist/components/user-action/ScrollPicker.cjs.map +0 -1
  429. package/dist/components/user-action/Select.cjs.map +0 -1
  430. package/dist/components/user-action/Textarea.cjs +0 -199
  431. package/dist/components/user-action/Textarea.cjs.map +0 -1
  432. package/dist/components/user-action/ToggleableInput.cjs +0 -192
  433. package/dist/components/user-action/ToggleableInput.cjs.map +0 -1
  434. package/dist/components/user-action/Tooltip.cjs.map +0 -1
  435. package/dist/hooks/useHoverState.cjs +0 -72
  436. package/dist/hooks/useLocalStorage.cjs +0 -83
  437. package/dist/hooks/useOutsideClick.cjs +0 -48
  438. package/dist/hooks/useSaveDelay.cjs +0 -68
  439. package/dist/index.cjs.map +0 -1
  440. package/dist/localization/LanguageProvider.cjs.map +0 -1
  441. package/dist/localization/useTranslation.cjs +0 -69
  442. package/dist/localization/useTranslation.cjs.map +0 -1
  443. package/dist/localization/util.cjs +0 -41
  444. package/dist/theming/useTheme.cjs +0 -76
  445. package/dist/theming/useTheme.cjs.map +0 -1
  446. package/dist/util/builder.cjs +0 -34
  447. package/dist/util/date.cjs.map +0 -1
  448. package/dist/util/easeFunctions.cjs +0 -63
  449. package/dist/util/easeFunctions.cjs.map +0 -1
  450. package/dist/util/emailValidation.cjs +0 -33
  451. package/dist/util/math.cjs +0 -33
  452. package/dist/util/news.cjs +0 -77
  453. package/dist/util/news.cjs.map +0 -1
  454. package/dist/util/news.d.cts +0 -101
  455. package/dist/util/noop.cjs +0 -31
  456. package/dist/util/noop.cjs.map +0 -1
  457. package/dist/util/noop.d.cts +0 -3
  458. package/dist/util/simpleSearch.cjs +0 -54
  459. package/dist/util/storage.cjs +0 -64
  460. package/dist/util/types.cjs +0 -19
  461. package/dist/util/types.cjs.map +0 -1
  462. /package/dist/coloring/{types.d.cts → types.d.mts} +0 -0
  463. /package/dist/components/branding/{HelpwaveBadge.d.cts → HelpwaveBadge.d.mts} +0 -0
  464. /package/dist/components/date/{TimePicker.d.cts → TimePicker.d.mts} +0 -0
  465. /package/dist/components/icons-and-geometry/{Circle.d.cts → Circle.d.mts} +0 -0
  466. /package/dist/components/icons-and-geometry/{Helpwave.d.cts → Helpwave.d.mts} +0 -0
  467. /package/dist/components/icons-and-geometry/{Ring.d.cts → Ring.d.mts} +0 -0
  468. /package/dist/components/icons-and-geometry/{Tag.d.cts → Tag.d.mts} +0 -0
  469. /package/dist/components/layout-and-navigation/{BreadCrumb.d.cts → BreadCrumb.d.mts} +0 -0
  470. /package/dist/components/layout-and-navigation/{Carousel.d.cts → Carousel.d.mts} +0 -0
  471. /package/dist/components/layout-and-navigation/{Chip.d.cts → Chip.d.mts} +0 -0
  472. /package/dist/components/layout-and-navigation/{DividerInserter.d.cts → DividerInserter.d.mts} +0 -0
  473. /package/dist/components/layout-and-navigation/{Expandable.d.cts → Expandable.d.mts} +0 -0
  474. /package/dist/components/layout-and-navigation/{Tile.d.cts → Tile.d.mts} +0 -0
  475. /package/dist/components/layout-and-navigation/{VerticalDivider.d.cts → VerticalDivider.d.mts} +0 -0
  476. /package/dist/components/loading-states/{ProgressIndicator.d.cts → ProgressIndicator.d.mts} +0 -0
  477. /package/dist/components/user-action/{Button.d.cts → Button.d.mts} +0 -0
  478. /package/dist/components/user-action/{Label.d.cts → Label.d.mts} +0 -0
  479. /package/dist/components/user-action/{Menu.d.cts → Menu.d.mts} +0 -0
  480. /package/dist/components/user-action/{ScrollPicker.d.cts → ScrollPicker.d.mts} +0 -0
  481. /package/dist/components/user-action/{ToggleableInput.d.cts → ToggleableInput.d.mts} +0 -0
  482. /package/dist/components/user-action/{Tooltip.d.cts → Tooltip.d.mts} +0 -0
  483. /package/dist/hooks/{useHoverState.d.cts → useHoverState.d.mts} +0 -0
  484. /package/dist/hooks/{useLocalStorage.d.cts → useLocalStorage.d.mts} +0 -0
  485. /package/dist/hooks/{useOutsideClick.d.cts → useOutsideClick.d.mts} +0 -0
  486. /package/dist/hooks/{useSaveDelay.d.cts → useSaveDelay.d.mts} +0 -0
  487. /package/dist/localization/{util.d.cts → util.d.mts} +0 -0
  488. /package/dist/util/{array.d.cts → array.d.mts} +0 -0
  489. /package/dist/util/{builder.d.cts → builder.d.mts} +0 -0
  490. /package/dist/util/{date.d.cts → date.d.mts} +0 -0
  491. /package/dist/util/{easeFunctions.d.cts → easeFunctions.d.mts} +0 -0
  492. /package/dist/util/{emailValidation.d.cts → emailValidation.d.mts} +0 -0
  493. /package/dist/util/{loopingArray.d.cts → loopingArray.d.mts} +0 -0
  494. /package/dist/util/{math.d.cts → math.d.mts} +0 -0
  495. /package/dist/util/{simpleSearch.d.cts → simpleSearch.d.mts} +0 -0
  496. /package/dist/util/{storage.d.cts → storage.d.mts} +0 -0
  497. /package/dist/util/{types.d.cts → types.d.mts} +0 -0
@@ -1,6 +1,39 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
1
29
  // src/components/user-action/Label.tsx
2
- import clsx from "clsx";
3
- import { jsx } from "react/jsx-runtime";
30
+ var Label_exports = {};
31
+ __export(Label_exports, {
32
+ Label: () => Label
33
+ });
34
+ module.exports = __toCommonJS(Label_exports);
35
+ var import_clsx = __toESM(require("clsx"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
4
37
  var styleMapping = {
5
38
  labelSmall: "textstyle-label-sm",
6
39
  labelMedium: "textstyle-label-md",
@@ -13,9 +46,10 @@ var Label = ({
13
46
  className,
14
47
  ...props
15
48
  }) => {
16
- return /* @__PURE__ */ jsx("label", { ...props, className: clsx(styleMapping[labelType], className), children: children ? children : name });
49
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("label", { ...props, className: (0, import_clsx.default)(styleMapping[labelType], className), children: children ? children : name });
17
50
  };
18
- export {
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
19
53
  Label
20
- };
54
+ });
21
55
  //# sourceMappingURL=Label.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/user-action/Label.tsx"],"sourcesContent":["import type { LabelHTMLAttributes } from 'react'\nimport clsx from 'clsx'\n\nexport type LabelType = 'labelSmall' | 'labelMedium' | 'labelBig'\n\nconst styleMapping: Record<LabelType, string> = {\n labelSmall: 'textstyle-label-sm',\n labelMedium: 'textstyle-label-md',\n labelBig: 'textstyle-label-lg',\n}\n\nexport type LabelProps = {\n /** The text for the label */\n name?: string,\n /** The styling for the label */\n labelType?: LabelType,\n} & LabelHTMLAttributes<HTMLLabelElement>\n\n/**\n * A Label component\n */\nexport const Label = ({\n children,\n name,\n labelType = 'labelSmall',\n className,\n ...props\n }: LabelProps) => {\n return (\n <label {...props} className={clsx(styleMapping[labelType], className)}>\n {children ? children : name}\n </label>\n )\n}\n"],"mappings":";AACA,OAAO,UAAU;AA4Bb;AAxBJ,IAAM,eAA0C;AAAA,EAC9C,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,UAAU;AACZ;AAYO,IAAM,QAAQ,CAAC;AAAA,EACE;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,GAAG;AACL,MAAkB;AACtC,SACE,oBAAC,WAAO,GAAG,OAAO,WAAW,KAAK,aAAa,SAAS,GAAG,SAAS,GACjE,qBAAW,WAAW,MACzB;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/user-action/Label.tsx"],"sourcesContent":["import type { LabelHTMLAttributes } from 'react'\nimport clsx from 'clsx'\n\nexport type LabelType = 'labelSmall' | 'labelMedium' | 'labelBig'\n\nconst styleMapping: Record<LabelType, string> = {\n labelSmall: 'textstyle-label-sm',\n labelMedium: 'textstyle-label-md',\n labelBig: 'textstyle-label-lg',\n}\n\nexport type LabelProps = {\n /** The text for the label */\n name?: string,\n /** The styling for the label */\n labelType?: LabelType,\n} & LabelHTMLAttributes<HTMLLabelElement>\n\n/**\n * A Label component\n */\nexport const Label = ({\n children,\n name,\n labelType = 'labelSmall',\n className,\n ...props\n }: LabelProps) => {\n return (\n <label {...props} className={clsx(styleMapping[labelType], className)}>\n {children ? children : name}\n </label>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAiB;AA4Bb;AAxBJ,IAAM,eAA0C;AAAA,EAC9C,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,UAAU;AACZ;AAYO,IAAM,QAAQ,CAAC;AAAA,EACE;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,GAAG;AACL,MAAkB;AACtC,SACE,4CAAC,WAAO,GAAG,OAAO,eAAW,YAAAA,SAAK,aAAa,SAAS,GAAG,SAAS,GACjE,qBAAW,WAAW,MACzB;AAEJ;","names":["clsx"]}
@@ -0,0 +1,21 @@
1
+ // src/components/user-action/Label.tsx
2
+ import clsx from "clsx";
3
+ import { jsx } from "react/jsx-runtime";
4
+ var styleMapping = {
5
+ labelSmall: "textstyle-label-sm",
6
+ labelMedium: "textstyle-label-md",
7
+ labelBig: "textstyle-label-lg"
8
+ };
9
+ var Label = ({
10
+ children,
11
+ name,
12
+ labelType = "labelSmall",
13
+ className,
14
+ ...props
15
+ }) => {
16
+ return /* @__PURE__ */ jsx("label", { ...props, className: clsx(styleMapping[labelType], className), children: children ? children : name });
17
+ };
18
+ export {
19
+ Label
20
+ };
21
+ //# sourceMappingURL=Label.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/user-action/Label.tsx"],"sourcesContent":["import type { LabelHTMLAttributes } from 'react'\nimport clsx from 'clsx'\n\nexport type LabelType = 'labelSmall' | 'labelMedium' | 'labelBig'\n\nconst styleMapping: Record<LabelType, string> = {\n labelSmall: 'textstyle-label-sm',\n labelMedium: 'textstyle-label-md',\n labelBig: 'textstyle-label-lg',\n}\n\nexport type LabelProps = {\n /** The text for the label */\n name?: string,\n /** The styling for the label */\n labelType?: LabelType,\n} & LabelHTMLAttributes<HTMLLabelElement>\n\n/**\n * A Label component\n */\nexport const Label = ({\n children,\n name,\n labelType = 'labelSmall',\n className,\n ...props\n }: LabelProps) => {\n return (\n <label {...props} className={clsx(styleMapping[labelType], className)}>\n {children ? children : name}\n </label>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAiB;AA4Bb;AAxBJ,IAAM,eAA0C;AAAA,EAC9C,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,UAAU;AACZ;AAYO,IAAM,QAAQ,CAAC;AAAA,EACE;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,GAAG;AACL,MAAkB;AACtC,SACE,4CAAC,WAAO,GAAG,OAAO,eAAW,YAAAA,SAAK,aAAa,SAAS,GAAG,SAAS,GACjE,qBAAW,WAAW,MACzB;AAEJ;","names":["clsx"]}
1
+ {"version":3,"sources":["../../../src/components/user-action/Label.tsx"],"sourcesContent":["import type { LabelHTMLAttributes } from 'react'\nimport clsx from 'clsx'\n\nexport type LabelType = 'labelSmall' | 'labelMedium' | 'labelBig'\n\nconst styleMapping: Record<LabelType, string> = {\n labelSmall: 'textstyle-label-sm',\n labelMedium: 'textstyle-label-md',\n labelBig: 'textstyle-label-lg',\n}\n\nexport type LabelProps = {\n /** The text for the label */\n name?: string,\n /** The styling for the label */\n labelType?: LabelType,\n} & LabelHTMLAttributes<HTMLLabelElement>\n\n/**\n * A Label component\n */\nexport const Label = ({\n children,\n name,\n labelType = 'labelSmall',\n className,\n ...props\n }: LabelProps) => {\n return (\n <label {...props} className={clsx(styleMapping[labelType], className)}>\n {children ? children : name}\n </label>\n )\n}\n"],"mappings":";AACA,OAAO,UAAU;AA4Bb;AAxBJ,IAAM,eAA0C;AAAA,EAC9C,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,UAAU;AACZ;AAYO,IAAM,QAAQ,CAAC;AAAA,EACE;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,GAAG;AACL,MAAkB;AACtC,SACE,oBAAC,WAAO,GAAG,OAAO,WAAW,KAAK,aAAa,SAAS,GAAG,SAAS,GACjE,qBAAW,WAAW,MACzB;AAEJ;","names":[]}
@@ -1,11 +1,45 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
1
29
  // src/components/user-action/Menu.tsx
2
- import { useRef } from "react";
3
- import clsx from "clsx";
30
+ var Menu_exports = {};
31
+ __export(Menu_exports, {
32
+ Menu: () => Menu,
33
+ MenuItem: () => MenuItem
34
+ });
35
+ module.exports = __toCommonJS(Menu_exports);
36
+ var import_react3 = require("react");
37
+ var import_clsx = __toESM(require("clsx"));
4
38
 
5
39
  // src/hooks/useOutsideClick.ts
6
- import { useEffect } from "react";
40
+ var import_react = require("react");
7
41
  var useOutsideClick = (refs, handler) => {
8
- useEffect(() => {
42
+ (0, import_react.useEffect)(() => {
9
43
  const listener = (event) => {
10
44
  if (event.target === null) return;
11
45
  if (refs.some((ref) => !ref.current || ref.current.contains(event.target))) {
@@ -23,15 +57,15 @@ var useOutsideClick = (refs, handler) => {
23
57
  };
24
58
 
25
59
  // src/hooks/useHoverState.ts
26
- import { useEffect as useEffect2, useState } from "react";
60
+ var import_react2 = require("react");
27
61
  var defaultUseHoverStateProps = {
28
62
  closingDelay: 200,
29
63
  isDisabled: false
30
64
  };
31
65
  var useHoverState = (props = void 0) => {
32
66
  const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props };
33
- const [isHovered, setIsHovered] = useState(false);
34
- const [timer, setTimer] = useState();
67
+ const [isHovered, setIsHovered] = (0, import_react2.useState)(false);
68
+ const [timer, setTimer] = (0, import_react2.useState)();
35
69
  const onMouseEnter = () => {
36
70
  if (isDisabled) {
37
71
  return;
@@ -47,14 +81,14 @@ var useHoverState = (props = void 0) => {
47
81
  setIsHovered(false);
48
82
  }, closingDelay));
49
83
  };
50
- useEffect2(() => {
84
+ (0, import_react2.useEffect)(() => {
51
85
  if (timer) {
52
86
  return () => {
53
87
  clearTimeout(timer);
54
88
  };
55
89
  }
56
90
  });
57
- useEffect2(() => {
91
+ (0, import_react2.useEffect)(() => {
58
92
  if (timer) {
59
93
  clearTimeout(timer);
60
94
  }
@@ -67,16 +101,16 @@ var useHoverState = (props = void 0) => {
67
101
  };
68
102
 
69
103
  // src/components/user-action/Menu.tsx
70
- import { jsx, jsxs } from "react/jsx-runtime";
104
+ var import_jsx_runtime = require("react/jsx-runtime");
71
105
  var MenuItem = ({
72
106
  children,
73
107
  onClick,
74
108
  alignment = "left",
75
109
  className
76
- }) => /* @__PURE__ */ jsx(
110
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
77
111
  "div",
78
112
  {
79
- className: clsx("block px-3 py-1 bg-menu-background text-menu-text hover:brightness-90", {
113
+ className: (0, import_clsx.default)("block px-3 py-1 bg-menu-background text-menu-text hover:brightness-90", {
80
114
  "text-right": alignment === "right",
81
115
  "text-left": alignment === "left"
82
116
  }, className),
@@ -92,22 +126,22 @@ var Menu = ({
92
126
  menuClassName = ""
93
127
  }) => {
94
128
  const { isHovered: isOpen, setIsHovered: setIsOpen, handlers } = useHoverState({ isDisabled: !showOnHover });
95
- const triggerRef = useRef(null);
96
- const menuRef = useRef(null);
129
+ const triggerRef = (0, import_react3.useRef)(null);
130
+ const menuRef = (0, import_react3.useRef)(null);
97
131
  useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
98
- return /* @__PURE__ */ jsxs(
132
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
99
133
  "div",
100
134
  {
101
135
  className: "relative",
102
136
  ...handlers,
103
137
  children: [
104
138
  trigger(() => setIsOpen(!isOpen), triggerRef),
105
- isOpen ? /* @__PURE__ */ jsx(
139
+ isOpen ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
106
140
  "div",
107
141
  {
108
142
  ref: menuRef,
109
143
  onClick: (e) => e.stopPropagation(),
110
- className: clsx("absolute top-full mt-1 py-2 w-60 rounded-lg bg-menu-background text-menu-text ring-1 ring-slate-900/5 text-sm leading-6 font-semibold shadow-md z-[1]", {
144
+ className: (0, import_clsx.default)("absolute top-full mt-1 py-2 w-60 rounded-lg bg-menu-background text-menu-text ring-1 ring-slate-900/5 text-sm leading-6 font-semibold shadow-md z-[1]", {
111
145
  " top-[8px]": alignment[0] === "t",
112
146
  " bottom-[8px]": alignment[0] === "b",
113
147
  " left-[-8px]": alignment[1] === "l",
@@ -120,8 +154,9 @@ var Menu = ({
120
154
  }
121
155
  );
122
156
  };
123
- export {
157
+ // Annotate the CommonJS export names for ESM import in node:
158
+ 0 && (module.exports = {
124
159
  Menu,
125
160
  MenuItem
126
- };
161
+ });
127
162
  //# sourceMappingURL=Menu.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/user-action/Menu.tsx","../../../src/hooks/useOutsideClick.ts","../../../src/hooks/useHoverState.ts"],"sourcesContent":["import { type PropsWithChildren, type ReactNode, type RefObject, useRef } from 'react'\nimport clsx from 'clsx'\nimport { useOutsideClick } from '@/hooks/useOutsideClick'\nimport { useHoverState } from '@/hooks/useHoverState'\n\ntype MenuProps<T> = PropsWithChildren<{\n trigger: (onClick: () => void, ref: RefObject<T>) => ReactNode,\n /**\n * @default 'tl'\n */\n alignment?: 'tl' | 'tr' | 'bl' | 'br' | '_l' | '_r' | 't_' | 'b_',\n showOnHover?: boolean,\n menuClassName?: string,\n}>\n\nexport type MenuItemProps = {\n onClick?: () => void,\n alignment?: 'left' | 'right',\n className?: string,\n}\nconst MenuItem = ({\n children,\n onClick,\n alignment = 'left',\n className\n }: PropsWithChildren<MenuItemProps>) => (\n <div\n className={clsx('block px-3 py-1 bg-menu-background text-menu-text hover:brightness-90', {\n 'text-right': alignment === 'right',\n 'text-left': alignment === 'left',\n }, className)}\n onClick={onClick}\n >\n {children}\n </div>\n)\n\n/**\n * A Menu Component to allow the user to see different functions\n */\nconst Menu = <T extends HTMLElement>({\n trigger,\n children,\n alignment = 'tl',\n showOnHover = false,\n menuClassName = '',\n }: MenuProps<T>) => {\n const { isHovered: isOpen, setIsHovered: setIsOpen, handlers } = useHoverState({ isDisabled: !showOnHover })\n const triggerRef = useRef<T>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n useOutsideClick([triggerRef, menuRef], () => setIsOpen(false))\n\n return (\n <div\n className=\"relative\"\n {...handlers}\n >\n {trigger(() => setIsOpen(!isOpen), triggerRef)}\n {isOpen ? (\n <div ref={menuRef} onClick={e => e.stopPropagation()}\n className={clsx('absolute top-full mt-1 py-2 w-60 rounded-lg bg-menu-background text-menu-text ring-1 ring-slate-900/5 text-sm leading-6 font-semibold shadow-md z-[1]', {\n ' top-[8px]': alignment[0] === 't',\n ' bottom-[8px]': alignment[0] === 'b',\n ' left-[-8px]': alignment[1] === 'l',\n ' right-[-8px]': alignment[1] === 'r',\n }, menuClassName)}>\n {children}\n </div>\n ) : null}\n </div>\n )\n}\n\nexport { Menu, MenuItem }\n","import type { RefObject } from 'react'\nimport { useEffect } from 'react'\n\nexport const useOutsideClick = <Ts extends RefObject<HTMLElement>[]>(refs: Ts, handler: () => void) => {\n useEffect(() => {\n const listener = (event: MouseEvent | TouchEvent) => {\n // returning means not \"not clicking outside\"\n\n // if no target exists, return\n if (event.target === null) return\n // if the target is a ref's element or descendent thereof, return\n if (refs.some((ref) => !ref.current || ref.current.contains(event.target as Node))) {\n return\n }\n\n handler()\n }\n document.addEventListener('mousedown', listener)\n document.addEventListener('touchstart', listener)\n return () => {\n document.removeEventListener('mousedown', listener)\n document.removeEventListener('touchstart', listener)\n }\n }, [refs, handler])\n}\n","import type { Dispatch, SetStateAction } from 'react'\nimport { useEffect, useState } from 'react'\n\ntype UseHoverStateProps = {\n /**\n * The delay after which the menu is closed in milliseconds\n *\n * default: 200ms\n */\n closingDelay: number,\n /**\n * Whether the hover state management should be disabled\n *\n * default: false\n */\n isDisabled: boolean,\n}\n\ntype UseHoverStateReturnType = {\n /**\n * Whether the element is hovered\n */\n isHovered: boolean,\n /**\n * Function to change the current hover status\n */\n setIsHovered: Dispatch<SetStateAction<boolean>>,\n /**\n * Handlers to pass on to the component that should be hovered\n */\n handlers: {\n onMouseEnter: () => void,\n onMouseLeave: () => void,\n },\n}\n\nconst defaultUseHoverStateProps: UseHoverStateProps = {\n closingDelay: 200,\n isDisabled: false,\n}\n\n/**\n * @param props See UseHoverStateProps\n *\n * A react hook for managing the hover state of a component. The handlers provided should be\n * forwarded to the component which should be hovered over\n */\nexport const useHoverState = (props: Partial<UseHoverStateProps> | undefined = undefined): UseHoverStateReturnType => {\n const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props }\n\n const [isHovered, setIsHovered] = useState(false)\n const [timer, setTimer] = useState<NodeJS.Timeout>()\n\n const onMouseEnter = () => {\n if (isDisabled) {\n return\n }\n clearTimeout(timer)\n setIsHovered(true)\n }\n\n const onMouseLeave = () => {\n if (isDisabled) {\n return\n }\n setTimer(setTimeout(() => {\n setIsHovered(false)\n }, closingDelay))\n }\n\n useEffect(() => {\n if (timer) {\n return () => {\n clearTimeout(timer)\n }\n }\n })\n\n useEffect(() => {\n if (timer) {\n clearTimeout(timer)\n }\n }, [isDisabled]) // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n isHovered, setIsHovered, handlers: { onMouseEnter, onMouseLeave }\n }\n}\n"],"mappings":"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","names":["useEffect"]}
1
+ {"version":3,"sources":["../../../src/components/user-action/Menu.tsx","../../../src/hooks/useOutsideClick.ts","../../../src/hooks/useHoverState.ts"],"sourcesContent":["import { type PropsWithChildren, type ReactNode, type RefObject, useRef } from 'react'\nimport clsx from 'clsx'\nimport { useOutsideClick } from '../../hooks/useOutsideClick'\nimport { useHoverState } from '../../hooks/useHoverState'\n\ntype MenuProps<T> = PropsWithChildren<{\n trigger: (onClick: () => void, ref: RefObject<T>) => ReactNode,\n /**\n * @default 'tl'\n */\n alignment?: 'tl' | 'tr' | 'bl' | 'br' | '_l' | '_r' | 't_' | 'b_',\n showOnHover?: boolean,\n menuClassName?: string,\n}>\n\nexport type MenuItemProps = {\n onClick?: () => void,\n alignment?: 'left' | 'right',\n className?: string,\n}\nconst MenuItem = ({\n children,\n onClick,\n alignment = 'left',\n className\n }: PropsWithChildren<MenuItemProps>) => (\n <div\n className={clsx('block px-3 py-1 bg-menu-background text-menu-text hover:brightness-90', {\n 'text-right': alignment === 'right',\n 'text-left': alignment === 'left',\n }, className)}\n onClick={onClick}\n >\n {children}\n </div>\n)\n\n/**\n * A Menu Component to allow the user to see different functions\n */\nconst Menu = <T extends HTMLElement>({\n trigger,\n children,\n alignment = 'tl',\n showOnHover = false,\n menuClassName = '',\n }: MenuProps<T>) => {\n const { isHovered: isOpen, setIsHovered: setIsOpen, handlers } = useHoverState({ isDisabled: !showOnHover })\n const triggerRef = useRef<T>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n useOutsideClick([triggerRef, menuRef], () => setIsOpen(false))\n\n return (\n <div\n className=\"relative\"\n {...handlers}\n >\n {trigger(() => setIsOpen(!isOpen), triggerRef)}\n {isOpen ? (\n <div ref={menuRef} onClick={e => e.stopPropagation()}\n className={clsx('absolute top-full mt-1 py-2 w-60 rounded-lg bg-menu-background text-menu-text ring-1 ring-slate-900/5 text-sm leading-6 font-semibold shadow-md z-[1]', {\n ' top-[8px]': alignment[0] === 't',\n ' bottom-[8px]': alignment[0] === 'b',\n ' left-[-8px]': alignment[1] === 'l',\n ' right-[-8px]': alignment[1] === 'r',\n }, menuClassName)}>\n {children}\n </div>\n ) : null}\n </div>\n )\n}\n\nexport { Menu, MenuItem }\n","import type { RefObject } from 'react'\nimport { useEffect } from 'react'\n\nexport const useOutsideClick = <Ts extends RefObject<HTMLElement>[]>(refs: Ts, handler: () => void) => {\n useEffect(() => {\n const listener = (event: MouseEvent | TouchEvent) => {\n // returning means not \"not clicking outside\"\n\n // if no target exists, return\n if (event.target === null) return\n // if the target is a ref's element or descendent thereof, return\n if (refs.some((ref) => !ref.current || ref.current.contains(event.target as Node))) {\n return\n }\n\n handler()\n }\n document.addEventListener('mousedown', listener)\n document.addEventListener('touchstart', listener)\n return () => {\n document.removeEventListener('mousedown', listener)\n document.removeEventListener('touchstart', listener)\n }\n }, [refs, handler])\n}\n","import type { Dispatch, SetStateAction } from 'react'\nimport { useEffect, useState } from 'react'\n\ntype UseHoverStateProps = {\n /**\n * The delay after which the menu is closed in milliseconds\n *\n * default: 200ms\n */\n closingDelay: number,\n /**\n * Whether the hover state management should be disabled\n *\n * default: false\n */\n isDisabled: boolean,\n}\n\ntype UseHoverStateReturnType = {\n /**\n * Whether the element is hovered\n */\n isHovered: boolean,\n /**\n * Function to change the current hover status\n */\n setIsHovered: Dispatch<SetStateAction<boolean>>,\n /**\n * Handlers to pass on to the component that should be hovered\n */\n handlers: {\n onMouseEnter: () => void,\n onMouseLeave: () => void,\n },\n}\n\nconst defaultUseHoverStateProps: UseHoverStateProps = {\n closingDelay: 200,\n isDisabled: false,\n}\n\n/**\n * @param props See UseHoverStateProps\n *\n * A react hook for managing the hover state of a component. The handlers provided should be\n * forwarded to the component which should be hovered over\n */\nexport const useHoverState = (props: Partial<UseHoverStateProps> | undefined = undefined): UseHoverStateReturnType => {\n const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props }\n\n const [isHovered, setIsHovered] = useState(false)\n const [timer, setTimer] = useState<NodeJS.Timeout>()\n\n const onMouseEnter = () => {\n if (isDisabled) {\n return\n }\n clearTimeout(timer)\n setIsHovered(true)\n }\n\n const onMouseLeave = () => {\n if (isDisabled) {\n return\n }\n setTimer(setTimeout(() => {\n setIsHovered(false)\n }, closingDelay))\n }\n\n useEffect(() => {\n if (timer) {\n return () => {\n clearTimeout(timer)\n }\n }\n })\n\n useEffect(() => {\n if (timer) {\n clearTimeout(timer)\n }\n }, [isDisabled]) // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n isHovered, setIsHovered, handlers: { onMouseEnter, onMouseLeave }\n }\n}\n"],"mappings":"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","names":["import_react","import_react","clsx"]}
@@ -0,0 +1,127 @@
1
+ // src/components/user-action/Menu.tsx
2
+ import { useRef } from "react";
3
+ import clsx from "clsx";
4
+
5
+ // src/hooks/useOutsideClick.ts
6
+ import { useEffect } from "react";
7
+ var useOutsideClick = (refs, handler) => {
8
+ useEffect(() => {
9
+ const listener = (event) => {
10
+ if (event.target === null) return;
11
+ if (refs.some((ref) => !ref.current || ref.current.contains(event.target))) {
12
+ return;
13
+ }
14
+ handler();
15
+ };
16
+ document.addEventListener("mousedown", listener);
17
+ document.addEventListener("touchstart", listener);
18
+ return () => {
19
+ document.removeEventListener("mousedown", listener);
20
+ document.removeEventListener("touchstart", listener);
21
+ };
22
+ }, [refs, handler]);
23
+ };
24
+
25
+ // src/hooks/useHoverState.ts
26
+ import { useEffect as useEffect2, useState } from "react";
27
+ var defaultUseHoverStateProps = {
28
+ closingDelay: 200,
29
+ isDisabled: false
30
+ };
31
+ var useHoverState = (props = void 0) => {
32
+ const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props };
33
+ const [isHovered, setIsHovered] = useState(false);
34
+ const [timer, setTimer] = useState();
35
+ const onMouseEnter = () => {
36
+ if (isDisabled) {
37
+ return;
38
+ }
39
+ clearTimeout(timer);
40
+ setIsHovered(true);
41
+ };
42
+ const onMouseLeave = () => {
43
+ if (isDisabled) {
44
+ return;
45
+ }
46
+ setTimer(setTimeout(() => {
47
+ setIsHovered(false);
48
+ }, closingDelay));
49
+ };
50
+ useEffect2(() => {
51
+ if (timer) {
52
+ return () => {
53
+ clearTimeout(timer);
54
+ };
55
+ }
56
+ });
57
+ useEffect2(() => {
58
+ if (timer) {
59
+ clearTimeout(timer);
60
+ }
61
+ }, [isDisabled]);
62
+ return {
63
+ isHovered,
64
+ setIsHovered,
65
+ handlers: { onMouseEnter, onMouseLeave }
66
+ };
67
+ };
68
+
69
+ // src/components/user-action/Menu.tsx
70
+ import { jsx, jsxs } from "react/jsx-runtime";
71
+ var MenuItem = ({
72
+ children,
73
+ onClick,
74
+ alignment = "left",
75
+ className
76
+ }) => /* @__PURE__ */ jsx(
77
+ "div",
78
+ {
79
+ className: clsx("block px-3 py-1 bg-menu-background text-menu-text hover:brightness-90", {
80
+ "text-right": alignment === "right",
81
+ "text-left": alignment === "left"
82
+ }, className),
83
+ onClick,
84
+ children
85
+ }
86
+ );
87
+ var Menu = ({
88
+ trigger,
89
+ children,
90
+ alignment = "tl",
91
+ showOnHover = false,
92
+ menuClassName = ""
93
+ }) => {
94
+ const { isHovered: isOpen, setIsHovered: setIsOpen, handlers } = useHoverState({ isDisabled: !showOnHover });
95
+ const triggerRef = useRef(null);
96
+ const menuRef = useRef(null);
97
+ useOutsideClick([triggerRef, menuRef], () => setIsOpen(false));
98
+ return /* @__PURE__ */ jsxs(
99
+ "div",
100
+ {
101
+ className: "relative",
102
+ ...handlers,
103
+ children: [
104
+ trigger(() => setIsOpen(!isOpen), triggerRef),
105
+ isOpen ? /* @__PURE__ */ jsx(
106
+ "div",
107
+ {
108
+ ref: menuRef,
109
+ onClick: (e) => e.stopPropagation(),
110
+ className: clsx("absolute top-full mt-1 py-2 w-60 rounded-lg bg-menu-background text-menu-text ring-1 ring-slate-900/5 text-sm leading-6 font-semibold shadow-md z-[1]", {
111
+ " top-[8px]": alignment[0] === "t",
112
+ " bottom-[8px]": alignment[0] === "b",
113
+ " left-[-8px]": alignment[1] === "l",
114
+ " right-[-8px]": alignment[1] === "r"
115
+ }, menuClassName),
116
+ children
117
+ }
118
+ ) : null
119
+ ]
120
+ }
121
+ );
122
+ };
123
+ export {
124
+ Menu,
125
+ MenuItem
126
+ };
127
+ //# sourceMappingURL=Menu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/user-action/Menu.tsx","../../../src/hooks/useOutsideClick.ts","../../../src/hooks/useHoverState.ts"],"sourcesContent":["import { type PropsWithChildren, type ReactNode, type RefObject, useRef } from 'react'\nimport clsx from 'clsx'\nimport { useOutsideClick } from '../../hooks/useOutsideClick'\nimport { useHoverState } from '../../hooks/useHoverState'\n\ntype MenuProps<T> = PropsWithChildren<{\n trigger: (onClick: () => void, ref: RefObject<T>) => ReactNode,\n /**\n * @default 'tl'\n */\n alignment?: 'tl' | 'tr' | 'bl' | 'br' | '_l' | '_r' | 't_' | 'b_',\n showOnHover?: boolean,\n menuClassName?: string,\n}>\n\nexport type MenuItemProps = {\n onClick?: () => void,\n alignment?: 'left' | 'right',\n className?: string,\n}\nconst MenuItem = ({\n children,\n onClick,\n alignment = 'left',\n className\n }: PropsWithChildren<MenuItemProps>) => (\n <div\n className={clsx('block px-3 py-1 bg-menu-background text-menu-text hover:brightness-90', {\n 'text-right': alignment === 'right',\n 'text-left': alignment === 'left',\n }, className)}\n onClick={onClick}\n >\n {children}\n </div>\n)\n\n/**\n * A Menu Component to allow the user to see different functions\n */\nconst Menu = <T extends HTMLElement>({\n trigger,\n children,\n alignment = 'tl',\n showOnHover = false,\n menuClassName = '',\n }: MenuProps<T>) => {\n const { isHovered: isOpen, setIsHovered: setIsOpen, handlers } = useHoverState({ isDisabled: !showOnHover })\n const triggerRef = useRef<T>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n useOutsideClick([triggerRef, menuRef], () => setIsOpen(false))\n\n return (\n <div\n className=\"relative\"\n {...handlers}\n >\n {trigger(() => setIsOpen(!isOpen), triggerRef)}\n {isOpen ? (\n <div ref={menuRef} onClick={e => e.stopPropagation()}\n className={clsx('absolute top-full mt-1 py-2 w-60 rounded-lg bg-menu-background text-menu-text ring-1 ring-slate-900/5 text-sm leading-6 font-semibold shadow-md z-[1]', {\n ' top-[8px]': alignment[0] === 't',\n ' bottom-[8px]': alignment[0] === 'b',\n ' left-[-8px]': alignment[1] === 'l',\n ' right-[-8px]': alignment[1] === 'r',\n }, menuClassName)}>\n {children}\n </div>\n ) : null}\n </div>\n )\n}\n\nexport { Menu, MenuItem }\n","import type { RefObject } from 'react'\nimport { useEffect } from 'react'\n\nexport const useOutsideClick = <Ts extends RefObject<HTMLElement>[]>(refs: Ts, handler: () => void) => {\n useEffect(() => {\n const listener = (event: MouseEvent | TouchEvent) => {\n // returning means not \"not clicking outside\"\n\n // if no target exists, return\n if (event.target === null) return\n // if the target is a ref's element or descendent thereof, return\n if (refs.some((ref) => !ref.current || ref.current.contains(event.target as Node))) {\n return\n }\n\n handler()\n }\n document.addEventListener('mousedown', listener)\n document.addEventListener('touchstart', listener)\n return () => {\n document.removeEventListener('mousedown', listener)\n document.removeEventListener('touchstart', listener)\n }\n }, [refs, handler])\n}\n","import type { Dispatch, SetStateAction } from 'react'\nimport { useEffect, useState } from 'react'\n\ntype UseHoverStateProps = {\n /**\n * The delay after which the menu is closed in milliseconds\n *\n * default: 200ms\n */\n closingDelay: number,\n /**\n * Whether the hover state management should be disabled\n *\n * default: false\n */\n isDisabled: boolean,\n}\n\ntype UseHoverStateReturnType = {\n /**\n * Whether the element is hovered\n */\n isHovered: boolean,\n /**\n * Function to change the current hover status\n */\n setIsHovered: Dispatch<SetStateAction<boolean>>,\n /**\n * Handlers to pass on to the component that should be hovered\n */\n handlers: {\n onMouseEnter: () => void,\n onMouseLeave: () => void,\n },\n}\n\nconst defaultUseHoverStateProps: UseHoverStateProps = {\n closingDelay: 200,\n isDisabled: false,\n}\n\n/**\n * @param props See UseHoverStateProps\n *\n * A react hook for managing the hover state of a component. The handlers provided should be\n * forwarded to the component which should be hovered over\n */\nexport const useHoverState = (props: Partial<UseHoverStateProps> | undefined = undefined): UseHoverStateReturnType => {\n const { closingDelay, isDisabled } = { ...defaultUseHoverStateProps, ...props }\n\n const [isHovered, setIsHovered] = useState(false)\n const [timer, setTimer] = useState<NodeJS.Timeout>()\n\n const onMouseEnter = () => {\n if (isDisabled) {\n return\n }\n clearTimeout(timer)\n setIsHovered(true)\n }\n\n const onMouseLeave = () => {\n if (isDisabled) {\n return\n }\n setTimer(setTimeout(() => {\n setIsHovered(false)\n }, closingDelay))\n }\n\n useEffect(() => {\n if (timer) {\n return () => {\n clearTimeout(timer)\n }\n }\n })\n\n useEffect(() => {\n if (timer) {\n clearTimeout(timer)\n }\n }, [isDisabled]) // eslint-disable-line react-hooks/exhaustive-deps\n\n return {\n isHovered, setIsHovered, handlers: { onMouseEnter, onMouseLeave }\n }\n}\n"],"mappings":"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","names":["useEffect"]}
@@ -1,8 +1,8 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { ReactNode } from 'react';
3
- import { PropsForTranslation } from '../../localization/useTranslation.cjs';
4
- import { LabelProps } from './Label.cjs';
5
- import '../../localization/util.cjs';
3
+ import { PropsForTranslation } from '../../localization/useTranslation.mjs';
4
+ import { LabelProps } from './Label.mjs';
5
+ import '../../localization/util.mjs';
6
6
 
7
7
  type MultiSelectTranslation = {
8
8
  select: string;