@mittwald/flow-react-components 1.6.0-next.5 → 1.6.0-next.51

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 (1034) hide show
  1. package/AGENTS.md +132 -88
  2. package/USAGE.md +7 -2
  3. package/dist/assets/component-index.json +1 -1
  4. package/dist/assets/doc-properties.json +1 -1
  5. package/dist/css/all-layered.css +1 -1
  6. package/dist/css/all.css +1 -1
  7. package/dist/js/_virtual/_.locale.mjs +1 -2
  8. package/dist/js/_virtual/_10.locale.mjs +1 -2
  9. package/dist/js/_virtual/_11.locale.mjs +1 -2
  10. package/dist/js/_virtual/_12.locale.mjs +1 -2
  11. package/dist/js/_virtual/_13.locale.mjs +1 -2
  12. package/dist/js/_virtual/_14.locale.mjs +1 -2
  13. package/dist/js/_virtual/_15.locale.mjs +1 -2
  14. package/dist/js/_virtual/_16.locale.mjs +1 -2
  15. package/dist/js/_virtual/_17.locale.mjs +1 -2
  16. package/dist/js/_virtual/_18.locale.mjs +15 -2
  17. package/dist/js/_virtual/_19.locale.mjs +1 -2
  18. package/dist/js/_virtual/_2.locale.mjs +1 -2
  19. package/dist/js/_virtual/_20.locale.mjs +1 -2
  20. package/dist/js/_virtual/_21.locale.mjs +1 -2
  21. package/dist/js/_virtual/_22.locale.mjs +1 -2
  22. package/dist/js/_virtual/_23.locale.mjs +1 -2
  23. package/dist/js/_virtual/_24.locale.mjs +1 -2
  24. package/dist/js/_virtual/_25.locale.mjs +1 -2
  25. package/dist/js/_virtual/_26.locale.mjs +1 -2
  26. package/dist/js/_virtual/_27.locale.mjs +1 -2
  27. package/dist/js/_virtual/_28.locale.mjs +1 -2
  28. package/dist/js/_virtual/_29.locale.mjs +1 -2
  29. package/dist/js/_virtual/_3.locale.mjs +1 -2
  30. package/dist/js/_virtual/_30.locale.mjs +1 -2
  31. package/dist/js/_virtual/_31.locale.mjs +1 -2
  32. package/dist/js/_virtual/_32.locale.mjs +1 -2
  33. package/dist/js/_virtual/_33.locale.mjs +1 -2
  34. package/dist/js/_virtual/_34.locale.mjs +1 -2
  35. package/dist/js/_virtual/_35.locale.mjs +1 -2
  36. package/dist/js/_virtual/_36.locale.mjs +1 -2
  37. package/dist/js/_virtual/_4.locale.mjs +1 -2
  38. package/dist/js/_virtual/_5.locale.mjs +1 -2
  39. package/dist/js/_virtual/_6.locale.mjs +1 -2
  40. package/dist/js/_virtual/_7.locale.mjs +1 -2
  41. package/dist/js/_virtual/_8.locale.mjs +1 -2
  42. package/dist/js/_virtual/_9.locale.mjs +1 -2
  43. package/dist/js/default.mjs +4 -3
  44. package/dist/js/flr-universal.mjs +2 -1
  45. package/dist/js/globals.mjs +1 -2
  46. package/dist/js/node_modules/.pnpm/{@lezer_lr@1.4.10 → @lezer_lr@1.4.11}/node_modules/@lezer/lr/dist/index.mjs +40 -29
  47. package/dist/js/node_modules/.pnpm/@lezer_lr@1.4.11/node_modules/@lezer/lr/dist/index.mjs.map +1 -0
  48. package/dist/js/packages/components/src/components/AccentBox/AccentBox.mjs +4 -4
  49. package/dist/js/packages/components/src/components/AccentBox/AccentBox.mjs.map +1 -1
  50. package/dist/js/packages/components/src/components/AccentBox/AccentBox.module.mjs +1 -2
  51. package/dist/js/packages/components/src/components/Accordion/Accordion.mjs +4 -4
  52. package/dist/js/packages/components/src/components/Accordion/Accordion.mjs.map +1 -1
  53. package/dist/js/packages/components/src/components/Accordion/Accordion.module.mjs +1 -2
  54. package/dist/js/packages/components/src/components/AccordionGroup/AccordionGroup.mjs +1 -2
  55. package/dist/js/packages/components/src/components/AccordionGroup/AccordionGroup.module.mjs +1 -2
  56. package/dist/js/packages/components/src/components/AccordionGroup/context.mjs +1 -2
  57. package/dist/js/packages/components/src/components/AccordionGroup/lib/expansion.mjs +1 -2
  58. package/dist/js/packages/components/src/components/Action/AbortActionError.mjs +1 -2
  59. package/dist/js/packages/components/src/components/Action/Action.mjs +1 -2
  60. package/dist/js/packages/components/src/components/Action/ActionBatch.mjs +1 -2
  61. package/dist/js/packages/components/src/components/Action/context.mjs +1 -2
  62. package/dist/js/packages/components/src/components/Action/hooks/useActionButtonState.mjs +1 -2
  63. package/dist/js/packages/components/src/components/Action/hooks/useActionState.mjs +1 -2
  64. package/dist/js/packages/components/src/components/Action/hooks/useConfirmationModalButtonSlot.mjs +1 -2
  65. package/dist/js/packages/components/src/components/Action/hooks/useIsPendingWithWait.mjs +1 -2
  66. package/dist/js/packages/components/src/components/Action/lib/abortAction.mjs +1 -2
  67. package/dist/js/packages/components/src/components/Action/lib/ariaLive.mjs +1 -2
  68. package/dist/js/packages/components/src/components/Action/models/ActionExecution.mjs +1 -2
  69. package/dist/js/packages/components/src/components/Action/models/ActionExecutionBatch.mjs +1 -2
  70. package/dist/js/packages/components/src/components/Action/models/ActionModel.mjs +1 -2
  71. package/dist/js/packages/components/src/components/Action/models/ActionState.mjs +3 -4
  72. package/dist/js/packages/components/src/components/Action/models/ActionStateContext.mjs +1 -2
  73. package/dist/js/packages/components/src/components/Action/models/getExecutionFunction.mjs +1 -2
  74. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.mjs +4 -5
  75. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.mjs.map +1 -1
  76. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.module.mjs +1 -2
  77. package/dist/js/packages/components/src/components/ActionGroup/lib/getActionGroupSlot.mjs +1 -2
  78. package/dist/js/packages/components/src/components/Activity/Activity.mjs +2 -3
  79. package/dist/js/packages/components/src/components/Activity/Activity.mjs.map +1 -1
  80. package/dist/js/packages/components/src/components/Activity/context.mjs +1 -2
  81. package/dist/js/packages/components/src/components/Alert/Alert.mjs +4 -4
  82. package/dist/js/packages/components/src/components/Alert/Alert.mjs.map +1 -1
  83. package/dist/js/packages/components/src/components/Alert/Alert.module.mjs +1 -2
  84. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.mjs +2 -3
  85. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.mjs.map +1 -1
  86. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.module.mjs +1 -2
  87. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.module.mjs.map +1 -1
  88. package/dist/js/packages/components/src/components/AlertIcon/AlertIcon.mjs +1 -2
  89. package/dist/js/packages/components/src/components/AlertText/AlertText.mjs +1 -2
  90. package/dist/js/packages/components/src/components/AlertText/AlertText.module.mjs +1 -2
  91. package/dist/js/packages/components/src/components/Align/Align.mjs +1 -2
  92. package/dist/js/packages/components/src/components/Autocomplete/Autocomplete.mjs +1 -2
  93. package/dist/js/packages/components/src/components/Autocomplete/Autocomplete.module.mjs +1 -2
  94. package/dist/js/packages/components/src/components/Avatar/Avatar.mjs +1 -2
  95. package/dist/js/packages/components/src/components/Avatar/Avatar.module.mjs +1 -2
  96. package/dist/js/packages/components/src/components/Avatar/avatarColors.mjs +1 -2
  97. package/dist/js/packages/components/src/components/AvatarStack/AvatarStack.mjs +1 -2
  98. package/dist/js/packages/components/src/components/AvatarStack/AvatarStack.module.mjs +1 -2
  99. package/dist/js/packages/components/src/components/Badge/Badge.mjs +2 -3
  100. package/dist/js/packages/components/src/components/Badge/Badge.mjs.map +1 -1
  101. package/dist/js/packages/components/src/components/Badge/Badge.module.mjs +1 -2
  102. package/dist/js/packages/components/src/components/Badge/Badge.module.mjs.map +1 -1
  103. package/dist/js/packages/components/src/components/Badge/components/ContextualHelpButton/ContextualHelpButton.mjs +1 -2
  104. package/dist/js/packages/components/src/components/BigNumber/BigNumber.mjs +1 -2
  105. package/dist/js/packages/components/src/components/BigNumber/BigNumber.module.mjs +1 -2
  106. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.mjs +1 -2
  107. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.module.mjs +1 -2
  108. package/dist/js/packages/components/src/components/Breadcrumb/components/BreadcrumbItem/BreadcrumbItem.mjs +1 -2
  109. package/dist/js/packages/components/src/components/BrowserOnly/BrowserOnly.mjs +1 -2
  110. package/dist/js/packages/components/src/components/Button/Button.mjs +1 -2
  111. package/dist/js/packages/components/src/components/Button/Button.module.mjs +1 -2
  112. package/dist/js/packages/components/src/components/Calendar/Calendar.mjs +1 -2
  113. package/dist/js/packages/components/src/components/Calendar/Calendar.module.mjs +1 -2
  114. package/dist/js/packages/components/src/components/Calendar/components/CalendarHeader/CalendarHeader.mjs +1 -2
  115. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/RangeCalendar.mjs +1 -2
  116. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.mjs +2 -3
  117. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/types.mjs +1 -2
  118. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.mjs +7 -10
  119. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.mjs.map +1 -1
  120. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.module.mjs +1 -2
  121. package/dist/js/packages/components/src/components/CartesianChart/components/Area/Area.mjs +1 -2
  122. package/dist/js/packages/components/src/components/CartesianChart/components/AreaDot/AreaDot.mjs +1 -2
  123. package/dist/js/packages/components/src/components/CartesianChart/components/Bar/Bar.mjs +1 -2
  124. package/dist/js/packages/components/src/components/CartesianChart/components/CartesianGrid/CartesianGrid.mjs +1 -2
  125. package/dist/js/packages/components/src/components/CartesianChart/components/ChartGrid/ChartGrid.mjs +1 -2
  126. package/dist/js/packages/components/src/components/CartesianChart/components/ChartLegend/ChartLegend.mjs +1 -2
  127. package/dist/js/packages/components/src/components/CartesianChart/components/ChartLegend/LegendContent.mjs +1 -2
  128. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/ChartTooltip.mjs +1 -2
  129. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/ChartTooltip.module.mjs +1 -2
  130. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/TooltipContent.mjs +1 -2
  131. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/TooltipLegendItem.mjs +1 -2
  132. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/TooltipProgressBar.mjs +1 -2
  133. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/types.mjs +1 -2
  134. package/dist/js/packages/components/src/components/CartesianChart/components/Line/Line.mjs +1 -2
  135. package/dist/js/packages/components/src/components/CartesianChart/components/XAxis/XAxis.mjs +1 -2
  136. package/dist/js/packages/components/src/components/CartesianChart/components/XAxis/types.mjs +1 -2
  137. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs +24 -7
  138. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs.map +1 -1
  139. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/types.mjs +1 -2
  140. package/dist/js/packages/components/src/components/CartesianChart/context.mjs +1 -2
  141. package/dist/js/packages/components/src/components/CartesianChart/hooks/useChartAnimation.mjs +1 -2
  142. package/dist/js/packages/components/src/components/CartesianChart/hooks/useChartClipRect.mjs +1 -2
  143. package/dist/js/packages/components/src/components/CartesianChart/hooks/useScopedStackId.mjs +1 -2
  144. package/dist/js/packages/components/src/components/CartesianChart/hooks/useTickLabelWidth.mjs +66 -0
  145. package/dist/js/packages/components/src/components/CartesianChart/hooks/useTickLabelWidth.mjs.map +1 -0
  146. package/dist/js/packages/components/src/components/CartesianChart/types.mjs +1 -2
  147. package/dist/js/packages/components/src/components/Chat/Chat.mjs +1 -2
  148. package/dist/js/packages/components/src/components/Chat/Chat.module.mjs +1 -2
  149. package/dist/js/packages/components/src/components/Checkbox/Checkbox.mjs +3 -4
  150. package/dist/js/packages/components/src/components/Checkbox/Checkbox.mjs.map +1 -1
  151. package/dist/js/packages/components/src/components/Checkbox/Checkbox.module.mjs +1 -2
  152. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.mjs +1 -2
  153. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.module.mjs +1 -2
  154. package/dist/js/packages/components/src/components/CheckboxGroup/CheckboxGroup.mjs +1 -2
  155. package/dist/js/packages/components/src/components/CheckboxGroup/CheckboxGroup.module.mjs +1 -2
  156. package/dist/js/packages/components/src/components/CoachMark/CoachMark.mjs +1 -2
  157. package/dist/js/packages/components/src/components/CoachMark/CoachMark.module.mjs +1 -2
  158. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.mjs +4 -5
  159. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.mjs.map +1 -1
  160. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.module.mjs +1 -2
  161. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.mjs +42 -14
  162. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.mjs.map +1 -1
  163. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.module.mjs +1 -2
  164. package/dist/js/packages/components/src/components/CodeEditor/extensions/gutterSpacer.mjs +1 -2
  165. package/dist/js/packages/components/src/components/CodeEditor/hooks/useCodeEditorExtensions.mjs +30 -18
  166. package/dist/js/packages/components/src/components/CodeEditor/hooks/useCodeEditorExtensions.mjs.map +1 -1
  167. package/dist/js/packages/components/src/components/CodeEditor/languages/dotEnv/dotEnv.mjs +2 -3
  168. package/dist/js/packages/components/src/components/CodeEditor/languages/dotEnv/index.mjs +1 -2
  169. package/dist/js/packages/components/src/components/CodeEditor/languages/index.mjs +1 -2
  170. package/dist/js/packages/components/src/components/CodeEditor/themes/defaultEditorTheme.mjs +1 -2
  171. package/dist/js/packages/components/src/components/Color/Color.mjs +1 -2
  172. package/dist/js/packages/components/src/components/Color/Color.module.mjs +1 -2
  173. package/dist/js/packages/components/src/components/ColumnLayout/ColumnLayout.mjs +1 -2
  174. package/dist/js/packages/components/src/components/ColumnLayout/ColumnLayout.module.mjs +1 -2
  175. package/dist/js/packages/components/src/components/ColumnLayout/lib/getColumns.mjs +1 -2
  176. package/dist/js/packages/components/src/components/Combine/Combine.mjs +1 -2
  177. package/dist/js/packages/components/src/components/Combine/Combine.module.mjs +1 -2
  178. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs +4 -4
  179. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs.map +1 -1
  180. package/dist/js/packages/components/src/components/ComboBox/ComboBox.module.mjs +1 -2
  181. package/dist/js/packages/components/src/components/ComponentDefaultsProvider/ComponentDefaultsProvider.mjs +1 -2
  182. package/dist/js/packages/components/src/components/ComponentDefaultsProvider/defaults.mjs +1 -2
  183. package/dist/js/packages/components/src/components/ComponentDefaultsProvider/deprecatedFlags.mjs +1 -2
  184. package/dist/js/packages/components/src/components/ComponentUsageProvider/ComponentUsageProvider.mjs +1 -2
  185. package/dist/js/packages/components/src/components/Content/Content.mjs +1 -2
  186. package/dist/js/packages/components/src/components/ContextMenu/ContextMenu.mjs +1 -2
  187. package/dist/js/packages/components/src/components/ContextMenu/ContextMenu.module.mjs +1 -2
  188. package/dist/js/packages/components/src/components/ContextMenu/components/ContextMenuContent/ContextMenuContent.mjs +1 -2
  189. package/dist/js/packages/components/src/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs +1 -2
  190. package/dist/js/packages/components/src/components/ContextMenu/components/ContextMenuSelectAll/ContextMenuSelectAll.mjs +1 -2
  191. package/dist/js/packages/components/src/components/ContextMenu/components/ContextMenuTrigger/ContextMenuTrigger.mjs +1 -2
  192. package/dist/js/packages/components/src/components/ContextMenu/lib.mjs +1 -2
  193. package/dist/js/packages/components/src/components/ContextualHelp/ContextualHelp.mjs +1 -2
  194. package/dist/js/packages/components/src/components/ContextualHelp/ContextualHelp.module.mjs +1 -2
  195. package/dist/js/packages/components/src/components/ContextualHelp/components/ContextualHelpTrigger/ContextualHelpTrigger.mjs +1 -2
  196. package/dist/js/packages/components/src/components/CopyButton/CopyButton.mjs +1 -2
  197. package/dist/js/packages/components/src/components/CounterBadge/CounterBadge.mjs +1 -2
  198. package/dist/js/packages/components/src/components/CounterBadge/CounterBadge.module.mjs +1 -2
  199. package/dist/js/packages/components/src/components/CountryOptions/CountryOptions.mjs +6 -3
  200. package/dist/js/packages/components/src/components/CountryOptions/CountryOptions.mjs.map +1 -1
  201. package/dist/js/packages/components/src/components/CountryOptions/lib/sortBy.mjs +1 -2
  202. package/dist/js/packages/components/src/components/DateInput/DateInput.mjs +1 -2
  203. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs +3 -3
  204. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs.map +1 -1
  205. package/dist/js/packages/components/src/components/DatePicker/DatePicker.module.mjs +1 -2
  206. package/dist/js/packages/components/src/components/DatePicker/components/DateInput/DateInput.mjs +1 -2
  207. package/dist/js/packages/components/src/components/DatePicker/components/DateInput/DateInput.module.mjs +1 -2
  208. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs +3 -3
  209. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs.map +1 -1
  210. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.module.mjs +1 -2
  211. package/dist/js/packages/components/src/components/DateRangePicker/components/DateRangeInput/DateRangeInput.mjs +1 -2
  212. package/dist/js/packages/components/src/components/DateRangePicker/components/DateRangeInput/DateRangeInput.module.mjs +1 -2
  213. package/dist/js/packages/components/src/components/DeprecationWarningProvider/DeprecationWarningProvider.mjs +41 -10
  214. package/dist/js/packages/components/src/components/DeprecationWarningProvider/DeprecationWarningProvider.mjs.map +1 -1
  215. package/dist/js/packages/components/src/components/Div/Div.mjs +1 -2
  216. package/dist/js/packages/components/src/components/DonutChart/DonutChart.mjs +1 -2
  217. package/dist/js/packages/components/src/components/DonutChart/DonutChart.mjs.map +1 -1
  218. package/dist/js/packages/components/src/components/DonutChart/DonutChart.module.mjs +1 -2
  219. package/dist/js/packages/components/src/components/DonutChart/components/Donut.mjs +1 -2
  220. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartFill.mjs +1 -2
  221. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartLegend.mjs +1 -2
  222. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartValue.mjs +1 -2
  223. package/dist/js/packages/components/src/components/EmulatedBoldText/EmulatedBoldText.mjs +1 -2
  224. package/dist/js/packages/components/src/components/EmulatedBoldText/EmulatedBoldText.module.mjs +1 -2
  225. package/dist/js/packages/components/src/components/FieldDescription/FieldDescription.mjs +1 -2
  226. package/dist/js/packages/components/src/components/FieldDescription/FieldDescription.module.mjs +1 -2
  227. package/dist/js/packages/components/src/components/FieldError/FieldError.mjs +1 -2
  228. package/dist/js/packages/components/src/components/FieldError/FieldError.module.mjs +1 -2
  229. package/dist/js/packages/components/src/components/FileCard/FileCard.mjs +1 -2
  230. package/dist/js/packages/components/src/components/FileCard/FileCard.module.mjs +1 -2
  231. package/dist/js/packages/components/src/components/FileCard/components/Avatar/Avatar.mjs +1 -2
  232. package/dist/js/packages/components/src/components/FileCard/components/DeleteButton/DeleteButton.mjs +1 -2
  233. package/dist/js/packages/components/src/components/FileCard/components/FileSizeText/FileSizeText.mjs +1 -2
  234. package/dist/js/packages/components/src/components/FileCardList/FileCardList.mjs +1 -2
  235. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.mjs +1 -2
  236. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.module.mjs +1 -2
  237. package/dist/js/packages/components/src/components/FileField/FileField.mjs +1 -2
  238. package/dist/js/packages/components/src/components/FileField/FileField.module.mjs +1 -2
  239. package/dist/js/packages/components/src/components/FileField/components/FileInput.mjs +1 -2
  240. package/dist/js/packages/components/src/components/FileField/components/FileInput.module.mjs +1 -2
  241. package/dist/js/packages/components/src/components/Flex/Flex.mjs +1 -2
  242. package/dist/js/packages/components/src/components/Flex/Flex.module.mjs +1 -2
  243. package/dist/js/packages/components/src/components/FormField/FormField.module.mjs +1 -2
  244. package/dist/js/packages/components/src/components/Header/Header.mjs +1 -2
  245. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.mjs +1 -2
  246. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.module.mjs +1 -2
  247. package/dist/js/packages/components/src/components/Heading/Heading.mjs +3 -2
  248. package/dist/js/packages/components/src/components/Heading/Heading.mjs.map +1 -1
  249. package/dist/js/packages/components/src/components/Heading/Heading.module.mjs +1 -2
  250. package/dist/js/packages/components/src/components/Heading/Heading.module.mjs.map +1 -1
  251. package/dist/js/packages/components/src/components/Icon/Icon.mjs +1 -2
  252. package/dist/js/packages/components/src/components/Icon/Icon.module.mjs +1 -2
  253. package/dist/js/packages/components/src/components/Icon/Icon.module.mjs.map +1 -1
  254. package/dist/js/packages/components/src/components/Icon/components/IconSetProvider.mjs +1 -2
  255. package/dist/js/packages/components/src/components/Icon/components/icons/IconAI.mjs +1 -2
  256. package/dist/js/packages/components/src/components/Icon/components/icons/IconAIHosting.mjs +1 -2
  257. package/dist/js/packages/components/src/components/Icon/components/icons/IconAnalytics.mjs +1 -2
  258. package/dist/js/packages/components/src/components/Icon/components/icons/IconApp.mjs +1 -2
  259. package/dist/js/packages/components/src/components/Icon/components/icons/IconAscending.mjs +1 -2
  260. package/dist/js/packages/components/src/components/Icon/components/icons/IconAttachment.mjs +1 -2
  261. package/dist/js/packages/components/src/components/Icon/components/icons/IconAutoresponder.mjs +1 -2
  262. package/dist/js/packages/components/src/components/Icon/components/icons/IconBackLink.mjs +1 -2
  263. package/dist/js/packages/components/src/components/Icon/components/icons/IconBackup.mjs +1 -2
  264. package/dist/js/packages/components/src/components/Icon/components/icons/IconBold.mjs +1 -2
  265. package/dist/js/packages/components/src/components/Icon/components/icons/IconCamera.mjs +1 -2
  266. package/dist/js/packages/components/src/components/Icon/components/icons/IconCertificate.mjs +1 -2
  267. package/dist/js/packages/components/src/components/Icon/components/icons/IconChangelog.mjs +1 -2
  268. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheck.mjs +1 -2
  269. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheckboxChecked.mjs +1 -2
  270. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheckboxEmpty.mjs +1 -2
  271. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheckboxIndeterminate.mjs +1 -2
  272. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronDown.mjs +1 -2
  273. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronLeft.mjs +1 -2
  274. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronRight.mjs +1 -2
  275. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronUp.mjs +1 -2
  276. package/dist/js/packages/components/src/components/Icon/components/icons/IconClose.mjs +1 -2
  277. package/dist/js/packages/components/src/components/Icon/components/icons/IconCode.mjs +1 -2
  278. package/dist/js/packages/components/src/components/Icon/components/icons/IconContainer.mjs +1 -2
  279. package/dist/js/packages/components/src/components/Icon/components/icons/IconContextMenu.mjs +1 -2
  280. package/dist/js/packages/components/src/components/Icon/components/icons/IconContextMenuVertical.mjs +1 -2
  281. package/dist/js/packages/components/src/components/Icon/components/icons/IconContract.mjs +1 -2
  282. package/dist/js/packages/components/src/components/Icon/components/icons/IconContractPartner.mjs +1 -2
  283. package/dist/js/packages/components/src/components/Icon/components/icons/IconContributor.mjs +1 -2
  284. package/dist/js/packages/components/src/components/Icon/components/icons/IconCopy.mjs +1 -2
  285. package/dist/js/packages/components/src/components/Icon/components/icons/IconCronjob.mjs +1 -2
  286. package/dist/js/packages/components/src/components/Icon/components/icons/IconCustomer.mjs +1 -2
  287. package/dist/js/packages/components/src/components/Icon/components/icons/IconDanger.mjs +1 -2
  288. package/dist/js/packages/components/src/components/Icon/components/icons/IconDashboard.mjs +1 -2
  289. package/dist/js/packages/components/src/components/Icon/components/icons/IconDatabase.mjs +1 -2
  290. package/dist/js/packages/components/src/components/Icon/components/icons/IconDate.mjs +1 -2
  291. package/dist/js/packages/components/src/components/Icon/components/icons/IconDelete.mjs +1 -2
  292. package/dist/js/packages/components/src/components/Icon/components/icons/IconDeliveryBox.mjs +1 -2
  293. package/dist/js/packages/components/src/components/Icon/components/icons/IconDescending.mjs +1 -2
  294. package/dist/js/packages/components/src/components/Icon/components/icons/IconDesktop.mjs +1 -2
  295. package/dist/js/packages/components/src/components/Icon/components/icons/IconDirectory.mjs +1 -2
  296. package/dist/js/packages/components/src/components/Icon/components/icons/IconDnsSubZone.mjs +1 -2
  297. package/dist/js/packages/components/src/components/Icon/components/icons/IconDnsZone.mjs +1 -2
  298. package/dist/js/packages/components/src/components/Icon/components/icons/IconDomain.mjs +1 -2
  299. package/dist/js/packages/components/src/components/Icon/components/icons/IconDownload.mjs +1 -2
  300. package/dist/js/packages/components/src/components/Icon/components/icons/IconEdit.mjs +1 -2
  301. package/dist/js/packages/components/src/components/Icon/components/icons/IconEmail.mjs +1 -2
  302. package/dist/js/packages/components/src/components/Icon/components/icons/IconEmailArchive.mjs +1 -2
  303. package/dist/js/packages/components/src/components/Icon/components/icons/IconExtension.mjs +1 -2
  304. package/dist/js/packages/components/src/components/Icon/components/icons/IconExternalLink.mjs +1 -2
  305. package/dist/js/packages/components/src/components/Icon/components/icons/IconFailed.mjs +1 -2
  306. package/dist/js/packages/components/src/components/Icon/components/icons/IconFeedback.mjs +1 -2
  307. package/dist/js/packages/components/src/components/Icon/components/icons/IconFile.mjs +1 -2
  308. package/dist/js/packages/components/src/components/Icon/components/icons/IconFilter.mjs +1 -2
  309. package/dist/js/packages/components/src/components/Icon/components/icons/IconForwardAddress.mjs +1 -2
  310. package/dist/js/packages/components/src/components/Icon/components/icons/IconForwardLink.mjs +1 -2
  311. package/dist/js/packages/components/src/components/Icon/components/icons/IconHide.mjs +1 -2
  312. package/dist/js/packages/components/src/components/Icon/components/icons/IconHome.mjs +1 -2
  313. package/dist/js/packages/components/src/components/Icon/components/icons/IconImage.mjs +1 -2
  314. package/dist/js/packages/components/src/components/Icon/components/icons/IconInfo.mjs +1 -2
  315. package/dist/js/packages/components/src/components/Icon/components/icons/IconInvite.mjs +1 -2
  316. package/dist/js/packages/components/src/components/Icon/components/icons/IconInvoice.mjs +1 -2
  317. package/dist/js/packages/components/src/components/Icon/components/icons/IconItalic.mjs +1 -2
  318. package/dist/js/packages/components/src/components/Icon/components/icons/IconKnowledgeHint.mjs +1 -2
  319. package/dist/js/packages/components/src/components/Icon/components/icons/IconLanguage.mjs +1 -2
  320. package/dist/js/packages/components/src/components/Icon/components/icons/IconLeadFyndr.mjs +1 -2
  321. package/dist/js/packages/components/src/components/Icon/components/icons/IconLink.mjs +1 -2
  322. package/dist/js/packages/components/src/components/Icon/components/icons/IconLock.mjs +1 -2
  323. package/dist/js/packages/components/src/components/Icon/components/icons/IconLockOpen.mjs +1 -2
  324. package/dist/js/packages/components/src/components/Icon/components/icons/IconLogout.mjs +1 -2
  325. package/dist/js/packages/components/src/components/Icon/components/icons/IconMainUser.mjs +1 -2
  326. package/dist/js/packages/components/src/components/Icon/components/icons/IconMarketplace.mjs +1 -2
  327. package/dist/js/packages/components/src/components/Icon/components/icons/IconMaximize.mjs +1 -2
  328. package/dist/js/packages/components/src/components/Icon/components/icons/IconMember.mjs +1 -2
  329. package/dist/js/packages/components/src/components/Icon/components/icons/IconMenu.mjs +1 -2
  330. package/dist/js/packages/components/src/components/Icon/components/icons/IconMinimize.mjs +1 -2
  331. package/dist/js/packages/components/src/components/Icon/components/icons/IconMinus.mjs +1 -2
  332. package/dist/js/packages/components/src/components/Icon/components/icons/IconMittwald.mjs +1 -2
  333. package/dist/js/packages/components/src/components/Icon/components/icons/IconMobile.mjs +1 -2
  334. package/dist/js/packages/components/src/components/Icon/components/icons/IconMonitoring.mjs +1 -2
  335. package/dist/js/packages/components/src/components/Icon/components/icons/IconMove.mjs +1 -2
  336. package/dist/js/packages/components/src/components/Icon/components/icons/IconNewsletter.mjs +1 -2
  337. package/dist/js/packages/components/src/components/Icon/components/icons/IconNotification.mjs +1 -2
  338. package/dist/js/packages/components/src/components/Icon/components/icons/IconNumber.mjs +1 -2
  339. package/dist/js/packages/components/src/components/Icon/components/icons/IconOrder.mjs +1 -2
  340. package/dist/js/packages/components/src/components/Icon/components/icons/IconOrderedList.mjs +1 -2
  341. package/dist/js/packages/components/src/components/Icon/components/icons/IconPassword.mjs +1 -2
  342. package/dist/js/packages/components/src/components/Icon/components/icons/IconPath.mjs +1 -2
  343. package/dist/js/packages/components/src/components/Icon/components/icons/IconPause.mjs +1 -2
  344. package/dist/js/packages/components/src/components/Icon/components/icons/IconPayment.mjs +1 -2
  345. package/dist/js/packages/components/src/components/Icon/components/icons/IconPending.mjs +1 -2
  346. package/dist/js/packages/components/src/components/Icon/components/icons/IconPicture.mjs +1 -2
  347. package/dist/js/packages/components/src/components/Icon/components/icons/IconPlus.mjs +1 -2
  348. package/dist/js/packages/components/src/components/Icon/components/icons/IconProject.mjs +1 -2
  349. package/dist/js/packages/components/src/components/Icon/components/icons/IconQuote.mjs +1 -2
  350. package/dist/js/packages/components/src/components/Icon/components/icons/IconRadioOff.mjs +1 -2
  351. package/dist/js/packages/components/src/components/Icon/components/icons/IconRadioOn.mjs +1 -2
  352. package/dist/js/packages/components/src/components/Icon/components/icons/IconRedo.mjs +1 -2
  353. package/dist/js/packages/components/src/components/Icon/components/icons/IconRefresh.mjs +1 -2
  354. package/dist/js/packages/components/src/components/Icon/components/icons/IconRegistry.mjs +1 -2
  355. package/dist/js/packages/components/src/components/Icon/components/icons/IconSave.mjs +1 -2
  356. package/dist/js/packages/components/src/components/Icon/components/icons/IconSearch.mjs +1 -2
  357. package/dist/js/packages/components/src/components/Icon/components/icons/IconSecurity.mjs +1 -2
  358. package/dist/js/packages/components/src/components/Icon/components/icons/IconSend.mjs +1 -2
  359. package/dist/js/packages/components/src/components/Icon/components/icons/IconServer.mjs +1 -2
  360. package/dist/js/packages/components/src/components/Icon/components/icons/IconSettings.mjs +1 -2
  361. package/dist/js/packages/components/src/components/Icon/components/icons/IconShare.mjs +1 -2
  362. package/dist/js/packages/components/src/components/Icon/components/icons/IconShow.mjs +1 -2
  363. package/dist/js/packages/components/src/components/Icon/components/icons/IconSorting.mjs +1 -2
  364. package/dist/js/packages/components/src/components/Icon/components/icons/IconSsh.mjs +1 -2
  365. package/dist/js/packages/components/src/components/Icon/components/icons/IconSshKey.mjs +1 -2
  366. package/dist/js/packages/components/src/components/Icon/components/icons/IconSshSftp.mjs +1 -2
  367. package/dist/js/packages/components/src/components/Icon/components/icons/IconStack.mjs +1 -2
  368. package/dist/js/packages/components/src/components/Icon/components/icons/IconStar.mjs +1 -2
  369. package/dist/js/packages/components/src/components/Icon/components/icons/IconStarFilled.mjs +1 -2
  370. package/dist/js/packages/components/src/components/Icon/components/icons/IconStart.mjs +1 -2
  371. package/dist/js/packages/components/src/components/Icon/components/icons/IconStrikeThrough.mjs +1 -2
  372. package/dist/js/packages/components/src/components/Icon/components/icons/IconSubdomain.mjs +1 -2
  373. package/dist/js/packages/components/src/components/Icon/components/icons/IconSucceeded.mjs +1 -2
  374. package/dist/js/packages/components/src/components/Icon/components/icons/IconSuccess.mjs +1 -2
  375. package/dist/js/packages/components/src/components/Icon/components/icons/IconSupport.mjs +1 -2
  376. package/dist/js/packages/components/src/components/Icon/components/icons/IconTerminate.mjs +1 -2
  377. package/dist/js/packages/components/src/components/Icon/components/icons/IconTicket.mjs +1 -2
  378. package/dist/js/packages/components/src/components/Icon/components/icons/IconTime.mjs +1 -2
  379. package/dist/js/packages/components/src/components/Icon/components/icons/IconUnavailable.mjs +1 -2
  380. package/dist/js/packages/components/src/components/Icon/components/icons/IconUndo.mjs +1 -2
  381. package/dist/js/packages/components/src/components/Icon/components/icons/IconUnorderedList.mjs +1 -2
  382. package/dist/js/packages/components/src/components/Icon/components/icons/IconUpload.mjs +1 -2
  383. package/dist/js/packages/components/src/components/Icon/components/icons/IconUser.mjs +1 -2
  384. package/dist/js/packages/components/src/components/Icon/components/icons/IconVhost.mjs +1 -2
  385. package/dist/js/packages/components/src/components/Icon/components/icons/IconView.mjs +1 -2
  386. package/dist/js/packages/components/src/components/Icon/components/icons/IconVolume.mjs +1 -2
  387. package/dist/js/packages/components/src/components/Icon/components/icons/IconWarning.mjs +1 -2
  388. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.mjs +4 -4
  389. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.mjs.map +1 -1
  390. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.module.mjs +1 -2
  391. package/dist/js/packages/components/src/components/Image/Image.mjs +1 -2
  392. package/dist/js/packages/components/src/components/Image/Image.module.mjs +1 -2
  393. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.mjs +1 -2
  394. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.module.mjs +1 -2
  395. package/dist/js/packages/components/src/components/ImageCropper/lib/getCroppedImageFile.mjs +1 -2
  396. package/dist/js/packages/components/src/components/Initials/Initials.mjs +1 -2
  397. package/dist/js/packages/components/src/components/Initials/Initials.module.mjs +1 -2
  398. package/dist/js/packages/components/src/components/Initials/lib/getColorFromInitials.mjs +1 -2
  399. package/dist/js/packages/components/src/components/Initials/lib/getInitialsFromString.mjs +1 -2
  400. package/dist/js/packages/components/src/components/InlineCode/InlineCode.mjs +1 -2
  401. package/dist/js/packages/components/src/components/InlineCode/InlineCode.module.mjs +1 -2
  402. package/dist/js/packages/components/src/components/IntlProvider/IntlProvider.mjs +1 -2
  403. package/dist/js/packages/components/src/components/Kbd/Kbd.mjs +1 -2
  404. package/dist/js/packages/components/src/components/Kbd/Kbd.module.mjs +1 -2
  405. package/dist/js/packages/components/src/components/Label/Label.mjs +1 -6
  406. package/dist/js/packages/components/src/components/Label/Label.mjs.map +1 -1
  407. package/dist/js/packages/components/src/components/Label/Label.module.mjs +1 -2
  408. package/dist/js/packages/components/src/components/LabeledValue/LabeledValue.mjs +1 -2
  409. package/dist/js/packages/components/src/components/LabeledValue/LabeledValue.module.mjs +1 -2
  410. package/dist/js/packages/components/src/components/LayoutCard/LayoutCard.mjs +1 -2
  411. package/dist/js/packages/components/src/components/LayoutCard/LayoutCard.module.mjs +1 -2
  412. package/dist/js/packages/components/src/components/Legend/Legend.mjs +1 -2
  413. package/dist/js/packages/components/src/components/Legend/Legend.module.mjs +1 -2
  414. package/dist/js/packages/components/src/components/Legend/components/LegendItem/LegendItem.mjs +1 -2
  415. package/dist/js/packages/components/src/components/Legend/components/LegendItem/LegendItem.module.mjs +1 -2
  416. package/dist/js/packages/components/src/components/LightBox/LightBox.mjs +1 -2
  417. package/dist/js/packages/components/src/components/LightBox/LightBox.module.mjs +1 -2
  418. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGallery/Controls.mjs +1 -2
  419. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGallery/LightBoxGallery.mjs +1 -2
  420. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGallery/LightBoxGallery.module.mjs +1 -2
  421. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGalleryItem/LightBoxGalleryItem.mjs +1 -2
  422. package/dist/js/packages/components/src/components/LightBox/components/LightBoxTrigger/LightBoxTrigger.mjs +1 -2
  423. package/dist/js/packages/components/src/components/Link/Link.mjs +1 -2
  424. package/dist/js/packages/components/src/components/Link/Link.mjs.map +1 -1
  425. package/dist/js/packages/components/src/components/Link/Link.module.mjs +1 -2
  426. package/dist/js/packages/components/src/components/Link/components/LinkIcon/LinkIcon.mjs +1 -2
  427. package/dist/js/packages/components/src/components/Link/components/LinkIcon/LinkIcon.module.mjs +1 -2
  428. package/dist/js/packages/components/src/components/Link/context.mjs +1 -2
  429. package/dist/js/packages/components/src/components/List/List.mjs +28 -25
  430. package/dist/js/packages/components/src/components/List/List.mjs.map +1 -1
  431. package/dist/js/packages/components/src/components/List/List.module.mjs +1 -2
  432. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoader.mjs +1 -2
  433. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoaderSuspense.mjs +1 -2
  434. package/dist/js/packages/components/src/components/List/components/EmptySearchResultView/EmptySearchResultView.mjs +1 -2
  435. package/dist/js/packages/components/src/components/List/components/EmptyView/EmptyView.mjs +1 -2
  436. package/dist/js/packages/components/src/components/List/components/Footer/Footer.mjs +1 -2
  437. package/dist/js/packages/components/src/components/List/components/Footer/Footer.module.mjs +1 -2
  438. package/dist/js/packages/components/src/components/List/components/Footer/components/PaginationInfos/PaginationInfos.mjs +1 -2
  439. package/dist/js/packages/components/src/components/List/components/Footer/components/ShowNextBatchButton/ShowNextBatchButton.mjs +1 -2
  440. package/dist/js/packages/components/src/components/List/components/Header/Header.mjs +1 -2
  441. package/dist/js/packages/components/src/components/List/components/Header/Header.module.mjs +1 -2
  442. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs +6 -4
  443. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs.map +1 -1
  444. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.module.mjs +1 -2
  445. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.mjs +3 -4
  446. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.mjs.map +1 -1
  447. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordion.mjs +1 -2
  448. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionCheckboxGroup.mjs +1 -2
  449. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionCheckboxGroup.module.mjs +1 -2
  450. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionDateRange.mjs +6 -5
  451. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionDateRange.mjs.map +1 -1
  452. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionRadioGroup.mjs +1 -2
  453. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/SortingAccordion.mjs +1 -2
  454. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion.mjs +1 -2
  455. package/dist/js/packages/components/src/components/List/components/Header/components/DateTimeRangeFields/DateTimeRangeFields.mjs +100 -0
  456. package/dist/js/packages/components/src/components/List/components/Header/components/DateTimeRangeFields/DateTimeRangeFields.mjs.map +1 -0
  457. package/dist/js/packages/components/src/components/List/components/Header/components/DateTimeRangeFields/DateTimeRangeFields.module.mjs +12 -0
  458. package/dist/js/packages/components/src/components/List/components/Header/components/DateTimeRangeFields/DateTimeRangeFields.module.mjs.map +1 -0
  459. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.mjs +17 -11
  460. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.mjs.map +1 -1
  461. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenu.mjs +1 -2
  462. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.mjs +1 -2
  463. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.module.mjs +7 -4
  464. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.module.mjs.map +1 -1
  465. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterMenuItem.mjs +1 -2
  466. package/dist/js/packages/components/src/components/List/components/Header/components/SearchField/SearchField.mjs +5 -4
  467. package/dist/js/packages/components/src/components/List/components/Header/components/SearchField/SearchField.mjs.map +1 -1
  468. package/dist/js/packages/components/src/components/List/components/Header/components/SearchField/SearchField.module.mjs +1 -2
  469. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingContextMenu.mjs +1 -2
  470. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingMenuItem.mjs +1 -2
  471. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu.mjs +1 -2
  472. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeMenuItem.mjs +1 -2
  473. package/dist/js/packages/components/src/components/List/components/Header/lib.mjs +1 -2
  474. package/dist/js/packages/components/src/components/List/components/Items/Items.mjs +28 -3
  475. package/dist/js/packages/components/src/components/List/components/Items/Items.mjs.map +1 -1
  476. package/dist/js/packages/components/src/components/List/components/Items/Items.module.mjs +1 -2
  477. package/dist/js/packages/components/src/components/List/components/Items/components/FallbackItems/FallbackItems.mjs +1 -2
  478. package/dist/js/packages/components/src/components/List/components/Items/components/Item/Item.mjs +2 -3
  479. package/dist/js/packages/components/src/components/List/components/Items/components/Item/Item.mjs.map +1 -1
  480. package/dist/js/packages/components/src/components/List/components/Items/components/Item/Item.module.mjs +1 -2
  481. package/dist/js/packages/components/src/components/List/components/Items/components/Item/components/AccordionButton.mjs +1 -2
  482. package/dist/js/packages/components/src/components/List/components/Items/components/Item/components/ItemLoadingView/ItemLoadingView.mjs +1 -2
  483. package/dist/js/packages/components/src/components/List/components/Items/components/Item/components/ListItemSkeletonView/ListItemSkeletonView.mjs +1 -2
  484. package/dist/js/packages/components/src/components/List/components/Items/components/Item/components/OptionsButton/OptionsButton.mjs +1 -2
  485. package/dist/js/packages/components/src/components/List/components/Items/components/Item/hooks/useGridItemProps.mjs +2 -4
  486. package/dist/js/packages/components/src/components/List/components/Items/components/Item/hooks/useGridItemProps.mjs.map +1 -1
  487. package/dist/js/packages/components/src/components/List/components/Items/views/GridList/GridList.mjs +4 -2
  488. package/dist/js/packages/components/src/components/List/components/Items/views/GridList/GridList.mjs.map +1 -1
  489. package/dist/js/packages/components/src/components/List/components/Items/views/GridListItem/GridListItem.mjs +1 -2
  490. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.mjs +47 -46
  491. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.mjs.map +1 -1
  492. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.module.mjs +1 -2
  493. package/dist/js/packages/components/src/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.mjs +26 -27
  494. package/dist/js/packages/components/src/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.mjs.map +1 -1
  495. package/dist/js/packages/components/src/components/List/components/ListSummary/ListSummary.mjs +6 -11
  496. package/dist/js/packages/components/src/components/List/components/ListSummary/ListSummary.mjs.map +1 -1
  497. package/dist/js/packages/components/src/components/List/components/ListSummary/ListSummary.module.mjs +1 -2
  498. package/dist/js/packages/components/src/components/List/components/Table/Table.mjs +30 -15
  499. package/dist/js/packages/components/src/components/List/components/Table/Table.mjs.map +1 -1
  500. package/dist/js/packages/components/src/components/List/components/Table/Table.module.mjs +1 -2
  501. package/dist/js/packages/components/src/components/List/components/Table/components/Row.mjs +30 -0
  502. package/dist/js/packages/components/src/components/List/components/Table/components/Row.mjs.map +1 -0
  503. package/dist/js/packages/components/src/components/List/components/Table/components/TableBodyLoadingView.mjs +1 -2
  504. package/dist/js/packages/components/src/components/List/components/Table/components/TableRowSkeletonView.mjs +1 -2
  505. package/dist/js/packages/components/src/components/List/hooks/useAriaAnnounceSearchState.mjs +1 -2
  506. package/dist/js/packages/components/src/components/List/hooks/useInfiniteScrollTrigger.mjs +1 -2
  507. package/dist/js/packages/components/src/components/List/hooks/useLatestOnAction.mjs +20 -0
  508. package/dist/js/packages/components/src/components/List/hooks/useLatestOnAction.mjs.map +1 -0
  509. package/dist/js/packages/components/src/components/List/hooks/useList.mjs +1 -2
  510. package/dist/js/packages/components/src/components/List/hooks/useListMetadata.mjs +1 -2
  511. package/dist/js/packages/components/src/components/List/hooks/useListSelector.mjs +17 -0
  512. package/dist/js/packages/components/src/components/List/hooks/useListSelector.mjs.map +1 -0
  513. package/dist/js/packages/components/src/components/List/listContext.mjs +33 -4
  514. package/dist/js/packages/components/src/components/List/listContext.mjs.map +1 -1
  515. package/dist/js/packages/components/src/components/List/model/List.mjs +2 -2
  516. package/dist/js/packages/components/src/components/List/model/List.mjs.map +1 -1
  517. package/dist/js/packages/components/src/components/List/model/ListSettingsStore.mjs +1 -2
  518. package/dist/js/packages/components/src/components/List/model/ListViewMode.mjs +3 -4
  519. package/dist/js/packages/components/src/components/List/model/ReactTable.mjs +3 -4
  520. package/dist/js/packages/components/src/components/List/model/filter/DateRangeFilter.mjs +16 -4
  521. package/dist/js/packages/components/src/components/List/model/filter/DateRangeFilter.mjs.map +1 -1
  522. package/dist/js/packages/components/src/components/List/model/filter/Filter.mjs +1 -2
  523. package/dist/js/packages/components/src/components/List/model/filter/resolveDateRangeFilterValue.mjs +15 -0
  524. package/dist/js/packages/components/src/components/List/model/filter/resolveDateRangeFilterValue.mjs.map +1 -0
  525. package/dist/js/packages/components/src/components/List/model/item/ItemCollection.mjs +1 -2
  526. package/dist/js/packages/components/src/components/List/model/item/ItemView.mjs +21 -9
  527. package/dist/js/packages/components/src/components/List/model/item/ItemView.mjs.map +1 -1
  528. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoader.mjs +1 -2
  529. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoaderState.mjs +3 -4
  530. package/dist/js/packages/components/src/components/List/model/search/Search.mjs +1 -2
  531. package/dist/js/packages/components/src/components/List/model/sorting/Sorting.mjs +1 -2
  532. package/dist/js/packages/components/src/components/List/model/sorting/SortingFunctions.mjs +1 -2
  533. package/dist/js/packages/components/src/components/List/model/table/Table.mjs +12 -3
  534. package/dist/js/packages/components/src/components/List/model/table/Table.mjs.map +1 -1
  535. package/dist/js/packages/components/src/components/List/model/table/TableBody.mjs +6 -3
  536. package/dist/js/packages/components/src/components/List/model/table/TableBody.mjs.map +1 -1
  537. package/dist/js/packages/components/src/components/List/model/table/TableCell.mjs +2 -3
  538. package/dist/js/packages/components/src/components/List/model/table/TableCell.mjs.map +1 -1
  539. package/dist/js/packages/components/src/components/List/model/table/TableColumn.mjs +5 -2
  540. package/dist/js/packages/components/src/components/List/model/table/TableColumn.mjs.map +1 -1
  541. package/dist/js/packages/components/src/components/List/model/table/TableHeader.mjs +9 -3
  542. package/dist/js/packages/components/src/components/List/model/table/TableHeader.mjs.map +1 -1
  543. package/dist/js/packages/components/src/components/List/model/table/TableRow.mjs +29 -3
  544. package/dist/js/packages/components/src/components/List/model/table/TableRow.mjs.map +1 -1
  545. package/dist/js/packages/components/src/components/List/setupComponents/ListFilter.mjs +1 -2
  546. package/dist/js/packages/components/src/components/List/setupComponents/ListItem.mjs +1 -2
  547. package/dist/js/packages/components/src/components/List/setupComponents/ListLoaderAsync.mjs +1 -2
  548. package/dist/js/packages/components/src/components/List/setupComponents/ListLoaderAsyncResource.mjs +1 -2
  549. package/dist/js/packages/components/src/components/List/setupComponents/ListLoaderHooks.mjs +1 -2
  550. package/dist/js/packages/components/src/components/List/setupComponents/ListSearch.mjs +1 -2
  551. package/dist/js/packages/components/src/components/List/setupComponents/ListSorting.mjs +1 -2
  552. package/dist/js/packages/components/src/components/List/setupComponents/ListStaticData.mjs +1 -2
  553. package/dist/js/packages/components/src/components/List/setupComponents/Table.mjs +1 -2
  554. package/dist/js/packages/components/src/components/List/setupComponents/TableBody.mjs +1 -2
  555. package/dist/js/packages/components/src/components/List/setupComponents/TableCell.mjs +1 -2
  556. package/dist/js/packages/components/src/components/List/setupComponents/TableColumn.mjs +1 -2
  557. package/dist/js/packages/components/src/components/List/setupComponents/TableHeader.mjs +1 -2
  558. package/dist/js/packages/components/src/components/List/setupComponents/TableRow.mjs +1 -2
  559. package/dist/js/packages/components/src/components/List/typedList.mjs +1 -2
  560. package/dist/js/packages/components/src/components/List/views/EmptyView/EmptyView.mjs +1 -2
  561. package/dist/js/packages/components/src/components/List/views/EmptyViewContainer/EmptyViewContainer.mjs +1 -2
  562. package/dist/js/packages/components/src/components/LoadingSpinner/LoadingSpinner.mjs +1 -2
  563. package/dist/js/packages/components/src/components/LoadingSpinner/LoadingSpinner.module.mjs +1 -2
  564. package/dist/js/packages/components/src/components/Markdown/Markdown.mjs +26 -9
  565. package/dist/js/packages/components/src/components/Markdown/Markdown.mjs.map +1 -1
  566. package/dist/js/packages/components/src/components/Markdown/Markdown.module.mjs +1 -2
  567. package/dist/js/packages/components/src/components/Markdown/components/SkeletonBlocks.mjs +2 -3
  568. package/dist/js/packages/components/src/components/Markdown/components/SkeletonBlocks.mjs.map +1 -1
  569. package/dist/js/packages/components/src/components/Markdown/lib/getHeadingLevelWithOffset.mjs +1 -2
  570. package/dist/js/packages/components/src/components/Markdown/lib/isExternalHref.mjs +7 -0
  571. package/dist/js/packages/components/src/components/Markdown/lib/isExternalHref.mjs.map +1 -0
  572. package/dist/js/packages/components/src/components/MarkdownEditor/MarkdownEditor.mjs +1 -2
  573. package/dist/js/packages/components/src/components/MarkdownEditor/MarkdownEditor.module.mjs +1 -2
  574. package/dist/js/packages/components/src/components/MarkdownEditor/components/AttachmentButton.mjs +1 -2
  575. package/dist/js/packages/components/src/components/MarkdownEditor/components/ModeButton.mjs +1 -2
  576. package/dist/js/packages/components/src/components/MarkdownEditor/components/Toolbar.mjs +1 -2
  577. package/dist/js/packages/components/src/components/MarkdownEditor/components/ToolbarButton.mjs +1 -2
  578. package/dist/js/packages/components/src/components/MarkdownEditor/lib/fileUpload.mjs +1 -2
  579. package/dist/js/packages/components/src/components/MarkdownEditor/lib/modifyValueByMarkdownSyntax.mjs +1 -2
  580. package/dist/js/packages/components/src/components/MarkdownEditor/lib/modifyValueByType.mjs +1 -2
  581. package/dist/js/packages/components/src/components/MarkdownEditor/lib/useFileUpload.mjs +1 -2
  582. package/dist/js/packages/components/src/components/MenuItem/MenuItem.mjs +33 -5
  583. package/dist/js/packages/components/src/components/MenuItem/MenuItem.mjs.map +1 -1
  584. package/dist/js/packages/components/src/components/MenuItem/MenuItem.module.mjs +2 -5
  585. package/dist/js/packages/components/src/components/MenuItem/components/MenuItemContent/MenuItemContent.mjs +1 -2
  586. package/dist/js/packages/components/src/components/Message/Message.mjs +1 -2
  587. package/dist/js/packages/components/src/components/Message/Message.module.mjs +1 -2
  588. package/dist/js/packages/components/src/components/MessageThread/MessageThread.mjs +2 -3
  589. package/dist/js/packages/components/src/components/MessageThread/MessageThread.mjs.map +1 -1
  590. package/dist/js/packages/components/src/components/MessageThread/MessageThread.module.mjs +1 -2
  591. package/dist/js/packages/components/src/components/MessageThread/components/MessageSeparator/MessageSeparator.mjs +1 -2
  592. package/dist/js/packages/components/src/components/MessageThread/components/MessageSeparator/MessageSeparator.module.mjs +1 -2
  593. package/dist/js/packages/components/src/components/Modal/Modal.mjs +10 -4
  594. package/dist/js/packages/components/src/components/Modal/Modal.mjs.map +1 -1
  595. package/dist/js/packages/components/src/components/Modal/Modal.module.mjs +1 -2
  596. package/dist/js/packages/components/src/components/Modal/components/ConfirmUnsavedChangesModal/ConfirmUnsavedChangesModal.mjs +1 -2
  597. package/dist/js/packages/components/src/components/Modal/components/ModalTrigger/ModalTrigger.mjs +1 -2
  598. package/dist/js/packages/components/src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.mjs +1 -2
  599. package/dist/js/packages/components/src/components/Navigation/Navigation.mjs +1 -2
  600. package/dist/js/packages/components/src/components/Navigation/Navigation.module.mjs +2 -5
  601. package/dist/js/packages/components/src/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit.mjs +1 -2
  602. package/dist/js/packages/components/src/components/Navigation/components/NavigationGroup/NavigationGroup.mjs +1 -2
  603. package/dist/js/packages/components/src/components/Navigation/components/NavigationGroup/NavigationGroup.module.mjs +1 -2
  604. package/dist/js/packages/components/src/components/Notification/Notification.mjs +1 -2
  605. package/dist/js/packages/components/src/components/Notification/Notification.module.mjs +1 -2
  606. package/dist/js/packages/components/src/components/NotificationProvider/ControlledNotification.mjs +1 -2
  607. package/dist/js/packages/components/src/components/NotificationProvider/NotificationContainer/NotificationContainer.mjs +1 -2
  608. package/dist/js/packages/components/src/components/NotificationProvider/NotificationContainer/NotificationContainer.module.mjs +1 -2
  609. package/dist/js/packages/components/src/components/NotificationProvider/NotificationController.mjs +1 -2
  610. package/dist/js/packages/components/src/components/NotificationProvider/NotificationProvider.mjs +1 -2
  611. package/dist/js/packages/components/src/components/NumberField/NumberField.mjs +3 -5
  612. package/dist/js/packages/components/src/components/NumberField/NumberField.mjs.map +1 -1
  613. package/dist/js/packages/components/src/components/NumberField/NumberField.module.mjs +1 -2
  614. package/dist/js/packages/components/src/components/NumberField/components/NumberFieldUnit.mjs +1 -2
  615. package/dist/js/packages/components/src/components/Option/Option.mjs +1 -2
  616. package/dist/js/packages/components/src/components/Option/Option.module.mjs +2 -5
  617. package/dist/js/packages/components/src/components/Option/optionsTunnel.mjs +1 -2
  618. package/dist/js/packages/components/src/components/Options/Options.mjs +1 -2
  619. package/dist/js/packages/components/src/components/Options/Options.module.mjs +1 -2
  620. package/dist/js/packages/components/src/components/Overlay/Overlay.mjs +1 -2
  621. package/dist/js/packages/components/src/components/Overlay/Overlay.module.mjs +1 -2
  622. package/dist/js/packages/components/src/components/Overlay/components/OverlayContent.mjs +3 -3
  623. package/dist/js/packages/components/src/components/Overlay/components/OverlayContent.mjs.map +1 -1
  624. package/dist/js/packages/components/src/components/Overlay/components/OverlaySuspenseFallback.mjs +1 -2
  625. package/dist/js/packages/components/src/components/OverlayTrigger/OverlayTrigger.mjs +1 -2
  626. package/dist/js/packages/components/src/components/OverlayTrigger/components/DialogTrigger/DialogTrigger.mjs +1 -2
  627. package/dist/js/packages/components/src/components/OverlayTrigger/components/MenuTrigger/MenuTrigger.mjs +1 -2
  628. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.mjs +4 -5
  629. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.mjs.map +1 -1
  630. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.module.mjs +1 -2
  631. package/dist/js/packages/components/src/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.mjs +1 -2
  632. package/dist/js/packages/components/src/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.module.mjs +1 -2
  633. package/dist/js/packages/components/src/components/PasswordCreationField/components/PasswordGenerateButton/PasswordGenerateButton.mjs +1 -2
  634. package/dist/js/packages/components/src/components/PasswordCreationField/components/TogglePasswordVisibilityButton/TogglePasswordVisibilityButton.mjs +1 -2
  635. package/dist/js/packages/components/src/components/PasswordCreationField/components/ValidationResultButton/ValidationResultButton.mjs +1 -2
  636. package/dist/js/packages/components/src/components/PasswordCreationField/components/ValidationResultButton/ValidationResultButton.module.mjs +1 -2
  637. package/dist/js/packages/components/src/components/PasswordCreationField/components/ValidationResultEntry/ValidationResultEntry.mjs +1 -2
  638. package/dist/js/packages/components/src/components/PasswordCreationField/components/ValidationResultEntry/ValidationResultEntry.module.mjs +1 -2
  639. package/dist/js/packages/components/src/components/PasswordCreationField/lib/ariaAnnounce.mjs +1 -2
  640. package/dist/js/packages/components/src/components/PasswordCreationField/lib/generateValidationTranslation.mjs +1 -2
  641. package/dist/js/packages/components/src/components/PasswordCreationField/lib/getStateFromLatestPolicyValidationResult.mjs +1 -2
  642. package/dist/js/packages/components/src/components/PasswordCreationField/lib/getStatusFromPolicyValidationResult.mjs +1 -2
  643. package/dist/js/packages/components/src/components/PasswordCreationField/lib/usePolicyValidationResult.mjs +1 -2
  644. package/dist/js/packages/components/src/components/PasswordCreationField/worker/generatePassword.mjs +1 -2
  645. package/dist/js/packages/components/src/components/Popover/Popover.mjs +1 -2
  646. package/dist/js/packages/components/src/components/Popover/Popover.module.mjs +1 -2
  647. package/dist/js/packages/components/src/components/Popover/components/NonModalPopoverContent/NonModalPopoverContent.mjs +2 -3
  648. package/dist/js/packages/components/src/components/Popover/components/NonModalPopoverContent/NonModalPopoverContent.mjs.map +1 -1
  649. package/dist/js/packages/components/src/components/Popover/components/PopoverContent/PopoverContent.mjs +5 -4
  650. package/dist/js/packages/components/src/components/Popover/components/PopoverContent/PopoverContent.mjs.map +1 -1
  651. package/dist/js/packages/components/src/components/Popover/components/PopoverTip/PopoverTip.mjs +1 -2
  652. package/dist/js/packages/components/src/components/Popover/components/PopoverTrigger/PopoverTrigger.mjs +1 -2
  653. package/dist/js/packages/components/src/components/Popover/viewportPadding.mjs +1 -2
  654. package/dist/js/packages/components/src/components/Popover/widthStyle.mjs +1 -2
  655. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.mjs +1 -2
  656. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.mjs.map +1 -1
  657. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.module.mjs +1 -2
  658. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarBar.mjs +1 -2
  659. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarLegend.mjs +6 -6
  660. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarLegend.mjs.map +1 -1
  661. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarValue.mjs +1 -2
  662. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.mjs +3 -5
  663. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.mjs.map +1 -1
  664. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.module.mjs +1 -2
  665. package/dist/js/packages/components/src/components/RadioGroup/components/Radio/Radio.mjs +1 -2
  666. package/dist/js/packages/components/src/components/RadioGroup/components/Radio/Radio.module.mjs +1 -2
  667. package/dist/js/packages/components/src/components/RadioGroup/components/RadioButton/RadioButton.mjs +1 -2
  668. package/dist/js/packages/components/src/components/RadioGroup/components/RadioButton/RadioButton.module.mjs +1 -2
  669. package/dist/js/packages/components/src/components/Rating/Rating.mjs +13 -13
  670. package/dist/js/packages/components/src/components/Rating/Rating.mjs.map +1 -1
  671. package/dist/js/packages/components/src/components/Rating/Rating.module.mjs +1 -2
  672. package/dist/js/packages/components/src/components/Rating/components/RatingSegment/EmptySegment.mjs +1 -2
  673. package/dist/js/packages/components/src/components/Rating/components/RatingSegment/FilledSegment.mjs +1 -2
  674. package/dist/js/packages/components/src/components/Rating/components/RatingSegment/RatingSegment.mjs +1 -2
  675. package/dist/js/packages/components/src/components/Rating/context.mjs +1 -2
  676. package/dist/js/packages/components/src/components/RouterProvider/RouterProvider.mjs +1 -2
  677. package/dist/js/packages/components/src/components/SearchField/SearchField.mjs +3 -5
  678. package/dist/js/packages/components/src/components/SearchField/SearchField.mjs.map +1 -1
  679. package/dist/js/packages/components/src/components/SearchField/SearchField.module.mjs +1 -2
  680. package/dist/js/packages/components/src/components/Section/Section.mjs +10 -7
  681. package/dist/js/packages/components/src/components/Section/Section.mjs.map +1 -1
  682. package/dist/js/packages/components/src/components/Section/Section.module.mjs +1 -2
  683. package/dist/js/packages/components/src/components/Section/components/SectionHeader/SectionHeader.mjs +1 -6
  684. package/dist/js/packages/components/src/components/Section/components/SectionHeader/SectionHeader.mjs.map +1 -1
  685. package/dist/js/packages/components/src/components/Section/components/SectionHeader/SectionHeader.module.mjs +1 -2
  686. package/dist/js/packages/components/src/components/Section/context.mjs +46 -0
  687. package/dist/js/packages/components/src/components/Section/context.mjs.map +1 -0
  688. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.mjs +3 -5
  689. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  690. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.module.mjs +1 -2
  691. package/dist/js/packages/components/src/components/SegmentedControl/components/Segment/Segment.mjs +1 -2
  692. package/dist/js/packages/components/src/components/SegmentedControl/components/Segment/Segment.module.mjs +1 -2
  693. package/dist/js/packages/components/src/components/Select/Select.mjs +3 -5
  694. package/dist/js/packages/components/src/components/Select/Select.mjs.map +1 -1
  695. package/dist/js/packages/components/src/components/Select/Select.module.mjs +1 -2
  696. package/dist/js/packages/components/src/components/Separator/Separator.mjs +1 -2
  697. package/dist/js/packages/components/src/components/Separator/Separator.module.mjs +1 -2
  698. package/dist/js/packages/components/src/components/SettingsProvider/SettingsProvider.mjs +1 -2
  699. package/dist/js/packages/components/src/components/SettingsProvider/backends/LocalStorageSettingsBackend.mjs +1 -2
  700. package/dist/js/packages/components/src/components/SettingsProvider/backends/settingsBackendFactory.mjs +1 -2
  701. package/dist/js/packages/components/src/components/SettingsProvider/middleware/defaultImplementations.mjs +1 -2
  702. package/dist/js/packages/components/src/components/SettingsProvider/models/ComponentSettings.mjs +1 -2
  703. package/dist/js/packages/components/src/components/SettingsProvider/models/SettingsStore.mjs +1 -2
  704. package/dist/js/packages/components/src/components/Skeleton/Skeleton.mjs +1 -2
  705. package/dist/js/packages/components/src/components/Skeleton/Skeleton.module.mjs +1 -2
  706. package/dist/js/packages/components/src/components/SkeletonMode/SkeletonMode.mjs +1 -2
  707. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.mjs +1 -2
  708. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.module.mjs +1 -2
  709. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonRawText/SkeletonRawText.mjs +1 -2
  710. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.mjs +1 -2
  711. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.module.mjs +1 -2
  712. package/dist/js/packages/components/src/components/SkeletonMode/lib/hasContent.mjs +1 -2
  713. package/dist/js/packages/components/src/components/SkeletonMode/lib/isTextChild.mjs +1 -2
  714. package/dist/js/packages/components/src/components/SkeletonMode/skeletonModeContext.mjs +0 -1
  715. package/dist/js/packages/components/src/components/SkeletonText/SkeletonText.mjs +1 -2
  716. package/dist/js/packages/components/src/components/SkeletonText/SkeletonText.module.mjs +1 -2
  717. package/dist/js/packages/components/src/components/Slider/Slider.mjs +48 -43
  718. package/dist/js/packages/components/src/components/Slider/Slider.mjs.map +1 -1
  719. package/dist/js/packages/components/src/components/Slider/Slider.module.mjs +1 -2
  720. package/dist/js/packages/components/src/components/SuspenseTrigger/SuspenseTrigger.mjs +1 -2
  721. package/dist/js/packages/components/src/components/Switch/Switch.mjs +1 -2
  722. package/dist/js/packages/components/src/components/Switch/Switch.module.mjs +1 -2
  723. package/dist/js/packages/components/src/components/TabNavigation/TabNavigation.mjs +1 -2
  724. package/dist/js/packages/components/src/components/TabNavigation/TabNavigation.module.mjs +1 -2
  725. package/dist/js/packages/components/src/components/TabNavigation/components/LinkContent/LinkContent.mjs +1 -2
  726. package/dist/js/packages/components/src/components/TabNavigation/lib/getVisibleItemCount.mjs +1 -2
  727. package/dist/js/packages/components/src/components/TabNavigation/lib/useCollapsingItems.mjs +1 -2
  728. package/dist/js/packages/components/src/components/Table/Table.mjs +4 -2
  729. package/dist/js/packages/components/src/components/Table/Table.mjs.map +1 -1
  730. package/dist/js/packages/components/src/components/Table/Table.module.mjs +1 -2
  731. package/dist/js/packages/components/src/components/Table/Table.module.mjs.map +1 -1
  732. package/dist/js/packages/components/src/components/Table/components/TableBody/TableBody.mjs +1 -2
  733. package/dist/js/packages/components/src/components/Table/components/TableCell/TableCell.mjs +6 -14
  734. package/dist/js/packages/components/src/components/Table/components/TableCell/TableCell.mjs.map +1 -1
  735. package/dist/js/packages/components/src/components/Table/components/TableColumn/TableColumn.mjs +5 -4
  736. package/dist/js/packages/components/src/components/Table/components/TableColumn/TableColumn.mjs.map +1 -1
  737. package/dist/js/packages/components/src/components/Table/components/TableFooterRow/TableFooterRow.mjs +1 -2
  738. package/dist/js/packages/components/src/components/Table/components/TableHeader/TableHeader.mjs +8 -3
  739. package/dist/js/packages/components/src/components/Table/components/TableHeader/TableHeader.mjs.map +1 -1
  740. package/dist/js/packages/components/src/components/Table/components/TableHeader/context.mjs +13 -0
  741. package/dist/js/packages/components/src/components/Table/components/TableHeader/context.mjs.map +1 -0
  742. package/dist/js/packages/components/src/components/Table/components/TableRow/TableRow.mjs +1 -2
  743. package/dist/js/packages/components/src/components/Tabs/Tabs.mjs +7 -10
  744. package/dist/js/packages/components/src/components/Tabs/Tabs.mjs.map +1 -1
  745. package/dist/js/packages/components/src/components/Tabs/Tabs.module.mjs +1 -2
  746. package/dist/js/packages/components/src/components/Tabs/Tabs.module.mjs.map +1 -1
  747. package/dist/js/packages/components/src/components/Tabs/components/FallbackTab/FallbackTab.mjs +1 -2
  748. package/dist/js/packages/components/src/components/Tabs/components/Tab/Tab.mjs +1 -2
  749. package/dist/js/packages/components/src/components/Tabs/components/Tab/context.mjs +1 -2
  750. package/dist/js/packages/components/src/components/Tabs/components/TabList/TabList.mjs +1 -2
  751. package/dist/js/packages/components/src/components/Tabs/components/TabList/TabList.module.mjs +1 -2
  752. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.mjs +1 -2
  753. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.module.mjs +1 -2
  754. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.module.mjs.map +1 -1
  755. package/dist/js/packages/components/src/components/Tabs/lib/useTabIndicator.mjs +1 -2
  756. package/dist/js/packages/components/src/components/Text/Text.mjs +1 -2
  757. package/dist/js/packages/components/src/components/Text/Text.module.mjs +1 -2
  758. package/dist/js/packages/components/src/components/Text/Text.module.mjs.map +1 -1
  759. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs +1 -2
  760. package/dist/js/packages/components/src/components/TextArea/TextArea.module.mjs +1 -2
  761. package/dist/js/packages/components/src/components/TextField/TextField.mjs +12 -10
  762. package/dist/js/packages/components/src/components/TextField/TextField.mjs.map +1 -1
  763. package/dist/js/packages/components/src/components/TextField/TextField.module.mjs +1 -2
  764. package/dist/js/packages/components/src/components/TimeField/TimeField.mjs +1 -2
  765. package/dist/js/packages/components/src/components/TimeField/TimeField.module.mjs +1 -2
  766. package/dist/js/packages/components/src/components/Tooltip/Tooltip.mjs +1 -2
  767. package/dist/js/packages/components/src/components/Tooltip/Tooltip.module.mjs +1 -2
  768. package/dist/js/packages/components/src/components/Tooltip/components/TooltipTrigger/TooltipTrigger.mjs +1 -2
  769. package/dist/js/packages/components/src/components/TranslationProvider/TranslationProvider.mjs +1 -2
  770. package/dist/js/packages/components/src/components/TranslationProvider/useLocalizedStringFormatter.mjs +16 -4
  771. package/dist/js/packages/components/src/components/TranslationProvider/useLocalizedStringFormatter.mjs.map +1 -1
  772. package/dist/js/packages/components/src/components/Truncate/Truncate.mjs +1 -2
  773. package/dist/js/packages/components/src/components/Truncate/Truncate.module.mjs +1 -2
  774. package/dist/js/packages/components/src/components/TunnelEntry/TunnelEntry.mjs +1 -2
  775. package/dist/js/packages/components/src/components/UiComponentTunnel/UiComponentTunnelEntry.mjs +1 -2
  776. package/dist/js/packages/components/src/components/UiComponentTunnel/UiComponentTunnelExit.mjs +1 -2
  777. package/dist/js/packages/components/src/components/UiComponentTunnel/UiComponentTunnelProvider.mjs +1 -2
  778. package/dist/js/packages/components/src/components/UiComponentTunnel/lib.mjs +1 -2
  779. package/dist/js/packages/components/src/components/Wrap/Wrap.mjs +1 -2
  780. package/dist/js/packages/components/src/components/Wrap/Wrap.mjs.map +1 -1
  781. package/dist/js/packages/components/src/components/propTypes/index.mjs +0 -1
  782. package/dist/js/packages/components/src/flags.mjs +1 -2
  783. package/dist/js/packages/components/src/integrations/@mittwald/password-tools-js/defaultPasswordCreationPolicy.mjs +1 -2
  784. package/dist/js/packages/components/src/integrations/@mittwald/password-tools-js/usePasswordCreationFieldValidation.mjs +1 -2
  785. package/dist/js/packages/components/src/integrations/nextjs/components/Link/Link.mjs +1 -2
  786. package/dist/js/packages/components/src/integrations/nextjs/components/LinkProvider/LinkProvider.mjs +1 -2
  787. package/dist/js/packages/components/src/integrations/nextjs/components/RouterProvider/RouterProvider.mjs +1 -2
  788. package/dist/js/packages/components/src/integrations/react-hook-form/components/Field/Field.mjs +2 -3
  789. package/dist/js/packages/components/src/integrations/react-hook-form/components/Field/hooks/useUpdateFormDefaultValue.mjs +1 -2
  790. package/dist/js/packages/components/src/integrations/react-hook-form/components/Field/lib/debounceValidate.mjs +1 -2
  791. package/dist/js/packages/components/src/integrations/react-hook-form/components/Form/Form.mjs +5 -3
  792. package/dist/js/packages/components/src/integrations/react-hook-form/components/Form/Form.mjs.map +1 -1
  793. package/dist/js/packages/components/src/integrations/react-hook-form/components/Form/hooks/useFormSubmitController.mjs +1 -2
  794. package/dist/js/packages/components/src/integrations/react-hook-form/components/Form/hooks/useHotkeySubmit.mjs +1 -2
  795. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormAction/FormAction.mjs +1 -2
  796. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormAction/FormResetAction.mjs +1 -2
  797. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormAction/FormSubmitAction.mjs +1 -2
  798. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormContextProvider/FormContextProvider.mjs +1 -2
  799. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormContextProvider/useFormSubmitAction.mjs +1 -2
  800. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormContextProvider/useUpdateReadOnly.mjs +1 -2
  801. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormRootError/FormRootError.mjs +2 -3
  802. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormRootError/useFormRootErrorController.mjs +1 -2
  803. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormRootError/useMountedFormRootErrorComponent.mjs +1 -2
  804. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormSettingsProvider/FormSettingsProvider.mjs +1 -2
  805. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormSettingsProvider/FormSettingsProvider.mjs.map +1 -1
  806. package/dist/js/packages/components/src/integrations/react-hook-form/components/ResetButton/ResetButton.mjs +1 -2
  807. package/dist/js/packages/components/src/integrations/react-hook-form/components/SubmitButton/SubmitButton.mjs +1 -2
  808. package/dist/js/packages/components/src/integrations/react-hook-form/lib/FormRootError.mjs +1 -2
  809. package/dist/js/packages/components/src/lib/componentFactory/flowComponent.mjs +1 -2
  810. package/dist/js/packages/components/src/lib/controller/overlay/OverlayContentSuspendWatcher.mjs +1 -2
  811. package/dist/js/packages/components/src/lib/controller/overlay/OverlayContextProvider.mjs +1 -2
  812. package/dist/js/packages/components/src/lib/controller/overlay/OverlayController.mjs +11 -160
  813. package/dist/js/packages/components/src/lib/controller/overlay/OverlayController.mjs.map +1 -1
  814. package/dist/js/packages/components/src/lib/controller/overlay/context.mjs +1 -2
  815. package/dist/js/packages/components/src/lib/controller/overlay/useCloseOverlayConfirmationController.mjs +2 -2
  816. package/dist/js/packages/components/src/lib/controller/overlay/useCloseOverlayConfirmationController.mjs.map +1 -1
  817. package/dist/js/packages/components/src/lib/controller/overlay/useModalController.mjs +1 -2
  818. package/dist/js/packages/components/src/lib/controller/overlay/useOverlayController.mjs +1 -2
  819. package/dist/js/packages/components/src/lib/dom/createFrameResizeObserver.mjs +1 -2
  820. package/dist/js/packages/components/src/lib/files/acceptedFiles.mjs +1 -2
  821. package/dist/js/packages/components/src/lib/form/isFocused.mjs +1 -2
  822. package/dist/js/packages/components/src/lib/getContainerBreakpointSizeClassName.mjs +1 -2
  823. package/dist/js/packages/components/src/lib/hooks/dom/useKeepBrowserExtensionsInteractive.mjs +1 -2
  824. package/dist/js/packages/components/src/lib/hooks/dom/useMakeFocusable.mjs +1 -2
  825. package/dist/js/packages/components/src/lib/hooks/dom/useObserveOverflow.mjs +1 -2
  826. package/dist/js/packages/components/src/lib/hooks/dom/useVirtualKeyboardVisible.mjs +8 -5
  827. package/dist/js/packages/components/src/lib/hooks/dom/useVirtualKeyboardVisible.mjs.map +1 -1
  828. package/dist/js/packages/components/src/lib/hooks/fieldErrorRenderedContext.mjs +1 -2
  829. package/dist/js/packages/components/src/lib/hooks/useFieldComponent.mjs +1 -2
  830. package/dist/js/packages/components/src/lib/hooks/useFieldError.mjs +1 -2
  831. package/dist/js/packages/components/src/lib/hooks/useImageSrc.mjs +1 -2
  832. package/dist/js/packages/components/src/lib/hooks/useIsMounted.mjs +1 -2
  833. package/dist/js/packages/components/src/lib/hooks/useLanguage.mjs +1 -2
  834. package/dist/js/packages/components/src/lib/hooks/useOnChange.mjs +1 -2
  835. package/dist/js/packages/components/src/lib/hooks/useProps.mjs +1 -2
  836. package/dist/js/packages/components/src/lib/hooks/useStatic.mjs +1 -2
  837. package/dist/js/packages/components/src/lib/mobx/mobxMapToObject.mjs +1 -2
  838. package/dist/js/packages/components/src/lib/mobx/useSelector.mjs +1 -2
  839. package/dist/js/packages/components/src/lib/object/isPlainObjectDeepEqual.mjs +28 -0
  840. package/dist/js/packages/components/src/lib/object/isPlainObjectDeepEqual.mjs.map +1 -0
  841. package/dist/js/packages/components/src/lib/promises/callFunctionsInOrder.mjs +1 -2
  842. package/dist/js/packages/components/src/lib/propsContext/components/ClearPropsContext.mjs +3 -3
  843. package/dist/js/packages/components/src/lib/propsContext/components/ClearPropsContext.mjs.map +1 -1
  844. package/dist/js/packages/components/src/lib/propsContext/components/ComponentPropsContextProvider.mjs +1 -2
  845. package/dist/js/packages/components/src/lib/propsContext/components/PropsContextProvider.mjs +15 -5
  846. package/dist/js/packages/components/src/lib/propsContext/components/PropsContextProvider.mjs.map +1 -1
  847. package/dist/js/packages/components/src/lib/propsContext/dynamicProps/dynamic.mjs +1 -2
  848. package/dist/js/packages/components/src/lib/propsContext/dynamicProps/lib.mjs +1 -2
  849. package/dist/js/packages/components/src/lib/propsContext/dynamicProps/resolveDynamicProps.mjs +1 -2
  850. package/dist/js/packages/components/src/lib/propsContext/dynamicProps/types.mjs +1 -2
  851. package/dist/js/packages/components/src/lib/propsContext/isFlowComponentName.mjs +1 -2
  852. package/dist/js/packages/components/src/lib/propsContext/isFlowComponentProp.mjs +1 -2
  853. package/dist/js/packages/components/src/lib/propsContext/mergePropsContext.mjs +1 -2
  854. package/dist/js/packages/components/src/lib/propsContext/nestedPropsContext/lib.mjs +1 -2
  855. package/dist/js/packages/components/src/lib/propsContext/nestedPropsContext/types.mjs +1 -2
  856. package/dist/js/packages/components/src/lib/propsContext/overlayTriggerTunnel.mjs +1 -2
  857. package/dist/js/packages/components/src/lib/propsContext/propsContext.mjs +1 -2
  858. package/dist/js/packages/components/src/lib/react/areChildrenEmpty.mjs +1 -2
  859. package/dist/js/packages/components/src/lib/react/cloneElement.mjs +1 -2
  860. package/dist/js/packages/components/src/lib/react/components/Render/Render.mjs +1 -2
  861. package/dist/js/packages/components/src/lib/react/deepFindOfType.mjs +1 -2
  862. package/dist/js/packages/components/src/lib/react/emitElementValueChange.mjs +1 -2
  863. package/dist/js/packages/components/src/lib/react/getPropsMerger.mjs +1 -2
  864. package/dist/js/packages/components/src/lib/react/remote.mjs +1 -2
  865. package/dist/js/packages/components/src/lib/remote/eventHandlerContext.mjs +1 -2
  866. package/dist/js/packages/components/src/lib/remote/useControlledHostValueProps.mjs +1 -2
  867. package/dist/js/packages/components/src/lib/remote/useControlledRemoteValueProps.mjs +1 -2
  868. package/dist/js/packages/components/src/lib/scss/selectors.mjs +1 -2
  869. package/dist/js/packages/components/src/lib/slotContext/SlotContextProvider.mjs +10 -6
  870. package/dist/js/packages/components/src/lib/slotContext/SlotContextProvider.mjs.map +1 -1
  871. package/dist/js/packages/components/src/lib/slotContext/slotContext.mjs +1 -2
  872. package/dist/js/packages/components/src/lib/slotContext/useContextSlot.mjs +1 -2
  873. package/dist/js/packages/components/src/lib/theming/components/ThemedHtml.mjs +1 -2
  874. package/dist/js/packages/components/src/lib/theming/hooks/useDesignTokens.mjs +1 -2
  875. package/dist/js/packages/components/src/lib/theming/hooks/useResolvedTheme.mjs +1 -2
  876. package/dist/js/packages/components/src/lib/theming/hooks/useSystemTheme.mjs +1 -2
  877. package/dist/js/packages/components/src/lib/theming/hooks/useTheme.mjs +1 -2
  878. package/dist/js/packages/components/src/lib/theming/lib/ColorSchemeMediaQuery.mjs +1 -2
  879. package/dist/js/packages/components/src/lib/theming/lib/getFallbackTheme.mjs +1 -2
  880. package/dist/js/packages/components/src/lib/theming/lib/getResolvedTheme.mjs +1 -2
  881. package/dist/js/packages/components/src/lib/theming/lib/getTheme.mjs +1 -2
  882. package/dist/js/packages/components/src/lib/theming/lib/getThemeHtmlAttribute.mjs +1 -2
  883. package/dist/js/packages/components/src/lib/theming/lib/isClientSide.mjs +1 -2
  884. package/dist/js/packages/components/src/lib/theming/lib/keys.mjs +1 -2
  885. package/dist/js/packages/components/src/lib/theming/lib/resolveTheme.mjs +1 -2
  886. package/dist/js/packages/components/src/lib/theming/lib/sanitizeTheme.mjs +1 -2
  887. package/dist/js/packages/components/src/lib/theming/lib/setTheme.mjs +1 -2
  888. package/dist/js/packages/components/src/lib/theming/lib/setThemeHtmlAttribute.mjs +1 -2
  889. package/dist/js/packages/components/src/lib/timer/Timer.mjs +1 -2
  890. package/dist/js/packages/components/src/lib/tokens/CategoricalColors.mjs +1 -2
  891. package/dist/js/packages/components/src/lib/tokens/getCategoricalColorByIndex.mjs +1 -2
  892. package/dist/js/packages/components/src/lib/tokens/isCategoricalColor.mjs +1 -2
  893. package/dist/js/packages/components/src/lib/types/props.mjs +1 -2
  894. package/dist/js/packages/components/src/lib/viewComponentContext/ViewComponentContextProvider.mjs +1 -2
  895. package/dist/js/packages/components/src/lib/viewComponentContext/viewComponentContext.mjs +1 -2
  896. package/dist/js/packages/components/src/status/component-status.mjs +1 -2
  897. package/dist/js/packages/components/src/status/componentStatus.mjs +1 -2
  898. package/dist/js/packages/components/src/views/AccordionGroupView.mjs +1 -2
  899. package/dist/js/packages/components/src/views/AccordionView.mjs +1 -2
  900. package/dist/js/packages/components/src/views/ActionGroupView.mjs +1 -2
  901. package/dist/js/packages/components/src/views/AvatarView.mjs +1 -2
  902. package/dist/js/packages/components/src/views/BadgeView.mjs +1 -2
  903. package/dist/js/packages/components/src/views/ButtonView.mjs +1 -2
  904. package/dist/js/packages/components/src/views/CheckboxGroupView.mjs +1 -2
  905. package/dist/js/packages/components/src/views/CheckboxView.mjs +1 -2
  906. package/dist/js/packages/components/src/views/ClearPropsContextView.mjs +1 -2
  907. package/dist/js/packages/components/src/views/ContentView.mjs +1 -2
  908. package/dist/js/packages/components/src/views/ContextMenuContentView.mjs +1 -2
  909. package/dist/js/packages/components/src/views/ContextMenuSectionView.mjs +1 -2
  910. package/dist/js/packages/components/src/views/ContextMenuTriggerView.mjs +1 -2
  911. package/dist/js/packages/components/src/views/ContextMenuView.mjs +1 -2
  912. package/dist/js/packages/components/src/views/ContextualHelpTriggerView.mjs +1 -2
  913. package/dist/js/packages/components/src/views/DatePickerView.mjs +15 -0
  914. package/dist/js/packages/components/src/views/DatePickerView.mjs.map +1 -0
  915. package/dist/js/packages/components/src/views/DialogTriggerView.mjs +1 -2
  916. package/dist/js/packages/components/src/views/DivView.mjs +1 -2
  917. package/dist/js/packages/components/src/views/FieldErrorView.mjs +1 -2
  918. package/dist/js/packages/components/src/views/FlexView.mjs +1 -2
  919. package/dist/js/packages/components/src/views/HeadingView.mjs +1 -2
  920. package/dist/js/packages/components/src/views/IconView.mjs +1 -2
  921. package/dist/js/packages/components/src/views/IllustratedMessageView.mjs +1 -2
  922. package/dist/js/packages/components/src/views/ItemsGridListItemView.mjs +1 -2
  923. package/dist/js/packages/components/src/views/ItemsGridListView.mjs +1 -2
  924. package/dist/js/packages/components/src/views/LabelView.mjs +15 -0
  925. package/dist/js/packages/components/src/views/LabelView.mjs.map +1 -0
  926. package/dist/js/packages/components/src/views/ListEmptyViewContainerView.mjs +1 -2
  927. package/dist/js/packages/components/src/views/ListItemViewContentView.mjs +1 -2
  928. package/dist/js/packages/components/src/views/LoadingSpinnerView.mjs +1 -2
  929. package/dist/js/packages/components/src/views/MenuItemView.mjs +1 -2
  930. package/dist/js/packages/components/src/views/MenuTriggerView.mjs +1 -2
  931. package/dist/js/packages/components/src/views/OptionView.mjs +1 -2
  932. package/dist/js/packages/components/src/views/OverlayContentView.mjs +1 -2
  933. package/dist/js/packages/components/src/views/PopoverContentView.mjs +1 -2
  934. package/dist/js/packages/components/src/views/RadioGroupView.mjs +1 -2
  935. package/dist/js/packages/components/src/views/RadioView.mjs +1 -2
  936. package/dist/js/packages/components/src/views/RangeCalendarView.mjs +1 -2
  937. package/dist/js/packages/components/src/views/SearchFieldView.mjs +1 -2
  938. package/dist/js/packages/components/src/views/SectionView.mjs +1 -2
  939. package/dist/js/packages/components/src/views/SkeletonTextView.mjs +1 -2
  940. package/dist/js/packages/components/src/views/SkeletonView.mjs +1 -2
  941. package/dist/js/packages/components/src/views/TableBodyView.mjs +1 -2
  942. package/dist/js/packages/components/src/views/TableCellView.mjs +1 -2
  943. package/dist/js/packages/components/src/views/TableColumnView.mjs +1 -2
  944. package/dist/js/packages/components/src/views/TableHeaderView.mjs +1 -2
  945. package/dist/js/packages/components/src/views/TableRowView.mjs +1 -2
  946. package/dist/js/packages/components/src/views/TableView.mjs +1 -2
  947. package/dist/js/packages/components/src/views/TextView.mjs +1 -2
  948. package/dist/js/packages/components/src/views/TimeFieldView.mjs +15 -0
  949. package/dist/js/packages/components/src/views/TimeFieldView.mjs.map +1 -0
  950. package/dist/js/packages/components/src/views/TooltipTriggerView.mjs +1 -2
  951. package/dist/js/packages/components/src/views/TooltipView.mjs +1 -2
  952. package/dist/js/packages/components-base/src/action/ActionState.mjs +1 -2
  953. package/dist/js/packages/components-base/src/index.mjs +5 -2
  954. package/dist/js/packages/components-base/src/lib/array.mjs +1 -2
  955. package/dist/js/packages/components-base/src/list/ListModelContext.mjs +1 -2
  956. package/dist/js/packages/components-base/src/list/filter/ListDateRangeFilter.mjs +2 -2
  957. package/dist/js/packages/components-base/src/list/filter/ListDateRangeFilter.mjs.map +1 -1
  958. package/dist/js/packages/components-base/src/list/filter/ListFilter.mjs +5 -3
  959. package/dist/js/packages/components-base/src/list/filter/ListFilter.mjs.map +1 -1
  960. package/dist/js/packages/components-base/src/list/filter/ListFilterValue.mjs +1 -2
  961. package/dist/js/packages/components-base/src/list/filter/dateRange.mjs +38 -15
  962. package/dist/js/packages/components-base/src/list/filter/dateRange.mjs.map +1 -1
  963. package/dist/js/packages/components-base/src/list/filter/dateTimeRangeFields.mjs +54 -0
  964. package/dist/js/packages/components-base/src/list/filter/dateTimeRangeFields.mjs.map +1 -0
  965. package/dist/js/packages/components-base/src/list/filter/formatDateRange.mjs +26 -0
  966. package/dist/js/packages/components-base/src/list/filter/formatDateRange.mjs.map +1 -0
  967. package/dist/js/packages/components-base/src/list/item/ListItem.mjs +1 -2
  968. package/dist/js/packages/components-base/src/list/item/ListItemCollection.mjs +1 -2
  969. package/dist/js/packages/components-base/src/list/loading/ListLoaderState.mjs +11 -7
  970. package/dist/js/packages/components-base/src/list/loading/ListLoaderState.mjs.map +1 -1
  971. package/dist/js/packages/components-base/src/list/loading/types.mjs +1 -2
  972. package/dist/js/packages/components-base/src/list/pagination/ListBatchesController.mjs +1 -2
  973. package/dist/js/packages/components-base/src/list/search/ListSearch.mjs +1 -2
  974. package/dist/js/packages/components-base/src/list/sorting/ListSorting.mjs +1 -2
  975. package/dist/js/packages/components-base/src/list/table/ListTable.mjs +1 -2
  976. package/dist/js/packages/components-base/src/list/viewMode/ListViewMode.mjs +1 -2
  977. package/dist/js/packages/components-base/src/overlay/OverlayState.mjs +195 -0
  978. package/dist/js/packages/components-base/src/overlay/OverlayState.mjs.map +1 -0
  979. package/dist/js/packages/design-tokens/dist/json-runtime/all-dark.mjs +2 -3
  980. package/dist/js/packages/design-tokens/dist/json-runtime/all-dark.mjs.map +1 -1
  981. package/dist/js/packages/design-tokens/dist/json-runtime/all-light.mjs +2 -3
  982. package/dist/js/packages/design-tokens/dist/json-runtime/all-light.mjs.map +1 -1
  983. package/dist/types/_bundled/flow-components-base/index.d.ts +4 -1
  984. package/dist/types/_bundled/flow-components-base/list/filter/ListFilter.d.ts +2 -0
  985. package/dist/types/_bundled/flow-components-base/list/filter/dateRange.d.ts +24 -1
  986. package/dist/types/_bundled/flow-components-base/list/filter/dateTimeRangeFields.d.ts +34 -0
  987. package/dist/types/_bundled/flow-components-base/list/filter/formatDateRange.d.ts +7 -0
  988. package/dist/types/_bundled/flow-components-base/list/loading/ListLoaderState.d.ts +5 -0
  989. package/dist/types/_bundled/flow-components-base/overlay/OverlayState.d.ts +94 -0
  990. package/dist/types/components/AlertBadge/AlertBadge.d.ts +2 -2
  991. package/dist/types/components/Badge/Badge.d.ts +2 -2
  992. package/dist/types/components/CartesianChart/hooks/useTickLabelWidth.d.ts +1 -0
  993. package/dist/types/components/CodeBlock/CodeBlock.d.ts +1 -1
  994. package/dist/types/components/DonutChart/DonutChart.d.ts +1 -4
  995. package/dist/types/components/Link/Link.d.ts +1 -1
  996. package/dist/types/components/List/components/Header/components/DateTimeRangeFields/DateTimeRangeFields.d.ts +8 -0
  997. package/dist/types/components/List/components/Items/components/Item/Item.d.ts +2 -0
  998. package/dist/types/components/List/components/Items/components/Item/hooks/useGridItemProps.d.ts +1 -0
  999. package/dist/types/components/List/components/ListSummary/ListSummary.d.ts +3 -2
  1000. package/dist/types/components/List/components/Table/components/Row.d.ts +13 -0
  1001. package/dist/types/components/List/hooks/useLatestOnAction.d.ts +7 -0
  1002. package/dist/types/components/List/hooks/useListSelector.d.ts +6 -0
  1003. package/dist/types/components/List/index.d.ts +2 -0
  1004. package/dist/types/components/List/listContext.d.ts +16 -0
  1005. package/dist/types/components/List/model/filter/DateRangeFilter.d.ts +15 -8
  1006. package/dist/types/components/List/model/filter/resolveDateRangeFilterValue.d.ts +11 -0
  1007. package/dist/types/components/List/model/filter/types.d.ts +23 -1
  1008. package/dist/types/components/List/model/item/ItemView.d.ts +34 -11
  1009. package/dist/types/components/List/model/table/Table.d.ts +7 -0
  1010. package/dist/types/components/List/model/table/TableBody.d.ts +1 -0
  1011. package/dist/types/components/List/model/table/TableColumn.d.ts +1 -0
  1012. package/dist/types/components/List/model/table/TableHeader.d.ts +1 -0
  1013. package/dist/types/components/List/model/table/TableRow.d.ts +14 -0
  1014. package/dist/types/components/List/model/table/types.d.ts +17 -1
  1015. package/dist/types/components/List/typedList.d.ts +3 -0
  1016. package/dist/types/components/Markdown/lib/isExternalHref.d.ts +1 -0
  1017. package/dist/types/components/ProgressBar/ProgressBar.d.ts +1 -4
  1018. package/dist/types/components/Rating/Rating.d.ts +5 -5
  1019. package/dist/types/components/Section/context.d.ts +28 -0
  1020. package/dist/types/components/Table/components/TableCell/TableCell.d.ts +4 -1
  1021. package/dist/types/components/Table/components/TableHeader/context.d.ts +6 -0
  1022. package/dist/types/components/Wrap/Wrap.d.ts +5 -0
  1023. package/dist/types/index/flr-universal.d.ts +1 -1
  1024. package/dist/types/integrations/react-hook-form/components/FormSettingsProvider/FormSettingsProvider.d.ts +7 -1
  1025. package/dist/types/lib/controller/overlay/OverlayController.d.ts +8 -74
  1026. package/dist/types/lib/dev/hydrateServerMarkup.d.ts +2 -0
  1027. package/dist/types/lib/hooks/dom/useVirtualKeyboardVisible.d.ts +4 -1
  1028. package/dist/types/lib/object/isPlainObjectDeepEqual.d.ts +8 -0
  1029. package/package.json +12 -12
  1030. package/dist/js/node_modules/.pnpm/@lezer_lr@1.4.10/node_modules/@lezer/lr/dist/index.mjs.map +0 -1
  1031. package/dist/js/packages/components/src/lib/date/transformDateValueToFormattedDate.mjs +0 -10
  1032. package/dist/js/packages/components/src/lib/date/transformDateValueToFormattedDate.mjs.map +0 -1
  1033. package/dist/types/lib/date/transformDateValueToDateTime.d.ts +0 -3
  1034. package/dist/types/lib/date/transformDateValueToFormattedDate.d.ts +0 -2
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { TableColumn } from "../components/Table/components/TableColumn/TableColumn.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TableColumnView.tsx
7
+ // src/views/TableColumnView.tsx
8
8
  var TableColumnView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["TableColumn"] ?? TableColumn;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TableColumnView.displayName = "TableColumnView";
13
- //#endregion
14
13
  export { TableColumnView as default };
15
14
 
16
15
  //# sourceMappingURL=TableColumnView.mjs.map
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { TableHeader } from "../components/Table/components/TableHeader/TableHeader.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TableHeaderView.tsx
7
+ // src/views/TableHeaderView.tsx
8
8
  var TableHeaderView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["TableHeader"] ?? TableHeader;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TableHeaderView.displayName = "TableHeaderView";
13
- //#endregion
14
13
  export { TableHeaderView as default };
15
14
 
16
15
  //# sourceMappingURL=TableHeaderView.mjs.map
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { TableRow } from "../components/Table/components/TableRow/TableRow.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TableRowView.tsx
7
+ // src/views/TableRowView.tsx
8
8
  var TableRowView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["TableRow"] ?? TableRow;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TableRowView.displayName = "TableRowView";
13
- //#endregion
14
13
  export { TableRowView as default };
15
14
 
16
15
  //# sourceMappingURL=TableRowView.mjs.map
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { Table } from "../components/Table/Table.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TableView.tsx
7
+ // src/views/TableView.tsx
8
8
  var TableView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["Table"] ?? Table;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TableView.displayName = "TableView";
13
- //#endregion
14
13
  export { TableView as default };
15
14
 
16
15
  //# sourceMappingURL=TableView.mjs.map
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { Text } from "../components/Text/Text.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TextView.tsx
7
+ // src/views/TextView.tsx
8
8
  var TextView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["Text"] ?? Text;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TextView.displayName = "TextView";
13
- //#endregion
14
13
  export { TextView as default };
15
14
 
16
15
  //# sourceMappingURL=TextView.mjs.map
@@ -0,0 +1,15 @@
1
+ "use client"
2
+ /* */
3
+ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentContext.mjs";
4
+ import { TimeField } from "../components/TimeField/TimeField.mjs";
5
+ import { memo, useContext } from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ // src/views/TimeFieldView.tsx
8
+ var TimeFieldView = memo((props) => {
9
+ const View = useContext(viewComponentContext)["TimeField"] ?? TimeField;
10
+ return /* @__PURE__ */ jsx(View, { ...props });
11
+ });
12
+ TimeFieldView.displayName = "TimeFieldView";
13
+ export { TimeFieldView as default };
14
+
15
+ //# sourceMappingURL=TimeFieldView.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeFieldView.mjs","names":[],"sources":["../../../../../../src/views/TimeFieldView.tsx"],"sourcesContent":["/* prettier-ignore */\n/* This file is auto-generated with the remote-components-generator */\nimport React, { memo, type FC, useContext } from \"react\";\nimport {\n TimeField,\n type TimeFieldProps,\n} from \"@/components/TimeField/TimeField\";\nimport { viewComponentContext } from \"@/lib/viewComponentContext/viewComponentContext\";\n\nconst TimeFieldView: FC<TimeFieldProps> = memo((props) => {\n const View = useContext(viewComponentContext)[\"TimeField\"] ?? TimeField;\n return <View {...props} />;\n});\nTimeFieldView.displayName = \"TimeFieldView\";\n\nexport default TimeFieldView;\n"],"mappings":";;;;;;;AASA,IAAM,gBAAoC,MAAM,UAAU;CACxD,MAAM,OAAO,WAAW,oBAAoB,CAAC,CAAC,gBAAgB;CAC9D,OAAO,oBAAC,MAAD,EAAM,GAAI,MAAQ,CAAA;AAC3B,CAAC;AACD,cAAc,cAAc"}
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { TooltipTrigger } from "../components/Tooltip/components/TooltipTrigger/TooltipTrigger.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TooltipTriggerView.tsx
7
+ // src/views/TooltipTriggerView.tsx
8
8
  var TooltipTriggerView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["TooltipTrigger"] ?? TooltipTrigger;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TooltipTriggerView.displayName = "TooltipTriggerView";
13
- //#endregion
14
13
  export { TooltipTriggerView as default };
15
14
 
16
15
  //# sourceMappingURL=TooltipTriggerView.mjs.map
@@ -4,13 +4,12 @@ import { viewComponentContext } from "../lib/viewComponentContext/viewComponentC
4
4
  import { Tooltip } from "../components/Tooltip/Tooltip.mjs";
5
5
  import { memo, useContext } from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
- //#region src/views/TooltipView.tsx
7
+ // src/views/TooltipView.tsx
8
8
  var TooltipView = memo((props) => {
9
9
  const View = useContext(viewComponentContext)["Tooltip"] ?? Tooltip;
10
10
  return /* @__PURE__ */ jsx(View, { ...props });
11
11
  });
12
12
  TooltipView.displayName = "TooltipView";
13
- //#endregion
14
13
  export { TooltipView as default };
15
14
 
16
15
  //# sourceMappingURL=TooltipView.mjs.map
@@ -1,7 +1,7 @@
1
1
  "use client"
2
2
  /* */
3
3
  import { action, computed, makeObservable, observable } from "mobx";
4
- //#region ../components-base/src/action/ActionState.ts
4
+ // ../components-base/src/action/ActionState.ts
5
5
  /** How long each state lasts, in ms. */
6
6
  var actionStateDurations = {
7
7
  /** An async action counts as pending only after this long. */
@@ -81,7 +81,6 @@ var ActionState = class {
81
81
  this.updateState("isPending");
82
82
  }
83
83
  };
84
- //#endregion
85
84
  export { ActionState, ActionState as default, actionStateDurations };
86
85
 
87
86
  //# sourceMappingURL=ActionState.mjs.map
@@ -4,8 +4,10 @@ import "./lib/array.mjs";
4
4
  import { getListColumn } from "./list/ListModelContext.mjs";
5
5
  import "./list/filter/ListFilterValue.mjs";
6
6
  import { ListFilter } from "./list/filter/ListFilter.mjs";
7
- import "./list/filter/dateRange.mjs";
7
+ import { resolveListDateRange } from "./list/filter/dateRange.mjs";
8
8
  import { ListDateRangeFilter } from "./list/filter/ListDateRangeFilter.mjs";
9
+ import { formatListDateRange } from "./list/filter/formatDateRange.mjs";
10
+ import { getListDateTimeRangeUpdate, isListDateTimeRangeEndBeforeStart, listDateTimeRangeFieldsFromValue, toListCalendarDate, toListTime } from "./list/filter/dateTimeRangeFields.mjs";
9
11
  import "./list/item/ListItem.mjs";
10
12
  import { ListItemCollection } from "./list/item/ListItemCollection.mjs";
11
13
  import { ListLoaderState } from "./list/loading/ListLoaderState.mjs";
@@ -15,4 +17,5 @@ import { ListSearch } from "./list/search/ListSearch.mjs";
15
17
  import { ListSorting, mergeHiddenSorting } from "./list/sorting/ListSorting.mjs";
16
18
  import { ListTable } from "./list/table/ListTable.mjs";
17
19
  import { ListViewMode } from "./list/viewMode/ListViewMode.mjs";
18
- export { ActionState, ListBatchesController, ListDateRangeFilter, ListFilter, ListItemCollection, ListLoaderState, ListSearch, ListSorting, ListTable, ListViewMode, actionStateDurations, getListColumn, getListDataLoaderOptions, mergeHiddenSorting };
20
+ import { OverlayState } from "./overlay/OverlayState.mjs";
21
+ export { ActionState, ListBatchesController, ListDateRangeFilter, ListFilter, ListItemCollection, ListLoaderState, ListSearch, ListSorting, ListTable, ListViewMode, OverlayState, actionStateDurations, formatListDateRange, getListColumn, getListDataLoaderOptions, getListDateTimeRangeUpdate, isListDateTimeRangeEndBeforeStart, listDateTimeRangeFieldsFromValue, mergeHiddenSorting, resolveListDateRange, toListCalendarDate, toListTime };
@@ -1,9 +1,8 @@
1
1
  "use client"
2
2
  /* */
3
- //#region ../components-base/src/lib/array.ts
3
+ // ../components-base/src/lib/array.ts
4
4
  /** One value or many, as many. */
5
5
  var toArray = (value) => Array.isArray(value) ? value : [value];
6
- //#endregion
7
6
  export { toArray };
8
7
 
9
8
  //# sourceMappingURL=array.mjs.map
@@ -1,6 +1,6 @@
1
1
  "use client"
2
2
  /* */
3
- //#region ../components-base/src/list/ListModelContext.ts
3
+ // ../components-base/src/list/ListModelContext.ts
4
4
  /**
5
5
  * The table's column for a property.
6
6
  *
@@ -13,7 +13,6 @@ var getListColumn = (table, property) => {
13
13
  if (!column) throw new Error(`Column #${String(property)} is not defined`);
14
14
  return column;
15
15
  };
16
- //#endregion
17
16
  export { getListColumn };
18
17
 
19
18
  //# sourceMappingURL=ListModelContext.mjs.map
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  import { ListFilter } from "./ListFilter.mjs";
4
4
  import { applyDateRangeColumnDef, isListDateRange } from "./dateRange.mjs";
5
- //#region ../components-base/src/list/filter/ListDateRangeFilter.ts
5
+ // ../components-base/src/list/filter/ListDateRangeFilter.ts
6
6
  /**
7
7
  * A filter over a span of days rather than over a set of values.
8
8
  *
@@ -21,9 +21,9 @@ var ListDateRangeFilter = class extends ListFilter {
21
21
  }
22
22
  setValue(range) {
23
23
  this.getTableColumn().setFilterValue(range);
24
+ this.notifyFilterUpdated(range ? [range] : []);
24
25
  }
25
26
  };
26
- //#endregion
27
27
  export { ListDateRangeFilter, ListDateRangeFilter as default };
28
28
 
29
29
  //# sourceMappingURL=ListDateRangeFilter.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListDateRangeFilter.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/ListDateRangeFilter.ts"],"sourcesContent":["import { ListFilter } from \"./ListFilter\";\nimport {\n applyDateRangeColumnDef,\n isListDateRange,\n type ListDateRange,\n} from \"./dateRange\";\nimport type { PropertyName } from \"../types\";\nimport type { ColumnDef } from \"@tanstack/table-core\";\n\n/**\n * A filter over a span of days rather than over a set of values.\n *\n * Everything except the control that picks the range: the table column, the\n * comparison and the stored value are the same in every binding, and what a\n * calendar looks like is not. A binding subclasses this to add its own calendar\n * options.\n */\nexport class ListDateRangeFilter<\n T = never,\n TProp extends PropertyName<T> = never,\n TRendered = unknown,\n> extends ListFilter<T, TProp, never, TRendered> {\n public override updateTableColumnDef(def: ColumnDef<T>): void {\n applyDateRangeColumnDef(def);\n }\n\n public override getValue(): ListDateRange | null {\n const value = super.getValue();\n return isListDateRange(value) ? value : null;\n }\n\n public setValue(range: ListDateRange | null): void {\n this.getTableColumn().setFilterValue(range);\n }\n}\n\nexport default ListDateRangeFilter;\n"],"mappings":";;;;;;;;;;;;;AAiBA,IAAa,sBAAb,cAIU,WAAuC;CAC/C,qBAAqC,KAAyB;EAC5D,wBAAwB,GAAG;CAC7B;CAEA,WAAiD;EAC/C,MAAM,QAAQ,MAAM,SAAS;EAC7B,OAAO,gBAAgB,KAAK,IAAI,QAAQ;CAC1C;CAEA,SAAgB,OAAmC;EACjD,KAAK,eAAe,CAAC,CAAC,eAAe,KAAK;CAC5C;AACF"}
1
+ {"version":3,"file":"ListDateRangeFilter.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/ListDateRangeFilter.ts"],"sourcesContent":["import { ListFilter } from \"./ListFilter\";\nimport {\n applyDateRangeColumnDef,\n isListDateRange,\n type ListDateRange,\n} from \"./dateRange\";\nimport type { PropertyName } from \"../types\";\nimport type { ColumnDef } from \"@tanstack/table-core\";\n\n/**\n * A filter over a span of days rather than over a set of values.\n *\n * Everything except the control that picks the range: the table column, the\n * comparison and the stored value are the same in every binding, and what a\n * calendar looks like is not. A binding subclasses this to add its own calendar\n * options.\n */\nexport class ListDateRangeFilter<\n T = never,\n TProp extends PropertyName<T> = never,\n TRendered = unknown,\n> extends ListFilter<T, TProp, never, TRendered> {\n public override updateTableColumnDef(def: ColumnDef<T>): void {\n applyDateRangeColumnDef(def);\n }\n\n public override getValue(): ListDateRange | null {\n const value = super.getValue();\n return isListDateRange(value) ? value : null;\n }\n\n public setValue(range: ListDateRange | null): void {\n this.getTableColumn().setFilterValue(range);\n this.notifyFilterUpdated(range ? [range] : []);\n }\n}\n\nexport default ListDateRangeFilter;\n"],"mappings":";;;;;;;;;;;;;AAiBA,IAAa,sBAAb,cAIU,WAAuC;CAC/C,qBAAqC,KAAyB;EAC5D,wBAAwB,GAAG;CAC7B;CAEA,WAAiD;EAC/C,MAAM,QAAQ,MAAM,SAAS;EAC7B,OAAO,gBAAgB,KAAK,IAAI,QAAQ;CAC1C;CAEA,SAAgB,OAAmC;EACjD,KAAK,eAAe,CAAC,CAAC,eAAe,KAAK;EAC1C,KAAK,oBAAoB,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;CAC/C;AACF"}
@@ -5,7 +5,7 @@ import { getListColumn } from "../ListModelContext.mjs";
5
5
  import { ListFilterValue } from "./ListFilterValue.mjs";
6
6
  import { difference, unique } from "remeda";
7
7
  import { getProperty } from "dot-prop";
8
- //#region ../components-base/src/list/filter/ListFilter.ts
8
+ // ../components-base/src/list/filter/ListFilter.ts
9
9
  var equalsPropertyMatcher = (filterValue, propertyValue) => filterValue === propertyValue;
10
10
  /** From how many values on a multiple-choice filter offers "Select all". */
11
11
  var selectAllMinValueCount = 6;
@@ -166,7 +166,10 @@ var ListFilter = class {
166
166
  this.callOnChangedHandlers(updatedValue);
167
167
  }
168
168
  callOnChangedHandlers(newValue) {
169
- const values = toArray(newValue).map((v) => v?.value);
169
+ this.notifyFilterUpdated(toArray(newValue).map((v) => v?.value));
170
+ }
171
+ /** Tells the listeners — the list resetting its batches among them. */
172
+ notifyFilterUpdated(values) {
170
173
  this.onFilterChangeCallbacks.forEach((cb) => cb(values));
171
174
  }
172
175
  hasChanges() {
@@ -223,7 +226,6 @@ var ListFilter = class {
223
226
  this.onFilterChangeCallbacks.add(cb);
224
227
  }
225
228
  };
226
- //#endregion
227
229
  export { ListFilter, ListFilter as default };
228
230
 
229
231
  //# sourceMappingURL=ListFilter.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListFilter.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/ListFilter.ts"],"sourcesContent":["import { toArray } from \"../../lib/array\";\nimport { getListColumn, type ListModelContext } from \"../ListModelContext\";\nimport type { ListSettingsOperationOptions } from \"../settings/types\";\nimport { customPropertyPrefix } from \"../types\";\nimport type { PropertyName, PropertyValueRenderMethod } from \"../types\";\nimport { ListFilterValue } from \"./ListFilterValue\";\nimport type {\n FilterMatcher,\n FilterMode,\n FilterUpdatedCallback,\n ListFilterShape,\n} from \"./types\";\nimport type {\n Column,\n ColumnDef,\n ColumnFilter,\n InitialTableState,\n} from \"@tanstack/table-core\";\nimport { getProperty } from \"dot-prop\";\nimport { difference, unique } from \"remeda\";\n\nconst equalsPropertyMatcher: FilterMatcher<unknown, never, never> = (\n filterValue,\n propertyValue,\n) => filterValue === propertyValue;\n\n/** From how many values on a multiple-choice filter offers \"Select all\". */\nconst selectAllMinValueCount = 6;\n\nconst stringCastRenderMethod: PropertyValueRenderMethod<unknown, never> = (\n value,\n) => String(value) as never;\n\n/** What `storeFilters` needs of a filter, and nothing more. */\ninterface StorableFilter {\n readonly storageKey: string;\n getArrayValue(): { id: string }[];\n}\n\n/**\n * One filter of a list: its values, which of them are on, and how that is\n * persisted.\n *\n * Framework-free apart from one thing, which is why `TRendered` exists: a\n * filter value has to be _shown_, and what \"shown\" is belongs to the binding.\n * React's `Filter` fills it with `ReactNode`; the default is `unknown`, so the\n * core can be read without deciding.\n *\n * The selected values live in the TanStack table's column filter, not here.\n * This translates: ids to values, values to a predicate, a toggle to a new\n * column filter.\n */\nexport class ListFilter<\n T = never,\n TProp extends PropertyName<T> = never,\n TMatchValue = never,\n TRendered = unknown,\n> {\n private _values?: ListFilterValue<TRendered>[] | undefined;\n private valuesFromTableState?: {\n facets: Map<unknown, number>;\n values: ListFilterValue<TRendered>[];\n };\n public readonly context: ListModelContext<T>;\n public readonly property: TProp;\n public readonly mode: FilterMode;\n public readonly matcher: FilterMatcher<T, never, never>;\n public readonly renderItem: PropertyValueRenderMethod<TMatchValue, TRendered>;\n public readonly name?: string;\n public readonly autosave: boolean;\n public readonly manualSave: boolean;\n private readonly onFilterChangeCallbacks = new Set<FilterUpdatedCallback>();\n private readonly defaultSelectedValues?: ListFilterValue<TRendered>[];\n public readonly priority: \"primary\" | \"secondary\";\n public readonly storageKey: string;\n\n public constructor(\n context: ListModelContext<T>,\n shape: ListFilterShape<T, TProp, TMatchValue, TRendered>,\n ) {\n const {\n autosave = context.settingsDefaults?.filters?.autosave ?? false,\n manualSave = context.settingsDefaults?.filters?.manualSave ?? true,\n property,\n mode = \"some\",\n values,\n matcher = equalsPropertyMatcher,\n renderItem = stringCastRenderMethod as PropertyValueRenderMethod<\n TMatchValue,\n TRendered\n >,\n priority = \"primary\",\n name,\n defaultSelected,\n onChange,\n } = shape;\n\n this.context = context;\n this.autosave = autosave;\n this.manualSave = manualSave;\n this.property = property;\n this.storageKey = String(property);\n this.mode = mode;\n this._values = values?.map((v) => ListFilterValue.create(this, v));\n this.matcher = matcher;\n this.renderItem = renderItem;\n this.name = name;\n this.priority = priority;\n this.defaultSelectedValues = defaultSelected?.map((v) =>\n ListFilterValue.create(this, v),\n );\n if (onChange) {\n this.onFilterChangeCallbacks.add(onChange);\n }\n }\n\n public updateInitialState(initialState: InitialTableState): void {\n const initialIds = this.getInitialSelectedIds();\n\n if (initialIds?.length) {\n initialState.columnFilters = [\n ...(initialState.columnFilters ?? []),\n {\n id: this.property as string,\n value: initialIds,\n },\n ];\n }\n }\n\n private getInitialSelectedIds(): string[] | undefined {\n return (\n this.getStoredSelectedIds({\n autosave: this.autosave,\n manualSave: this.manualSave,\n }) ?? this.defaultSelectedValues?.map((v) => v.id)\n );\n }\n\n private getStoredSelectedIds(\n options: ListSettingsOperationOptions,\n ): string[] | undefined {\n return this.context.settings?.get(\"activeFilters\", options)?.[\n this.storageKey\n ];\n }\n\n private getStoredSelectedValues(\n options: ListSettingsOperationOptions,\n ): ListFilterValue<TRendered>[] | undefined {\n return this.getStoredSelectedIds(options)\n ?.map((id) => this.values.find((v) => v.id === id))\n .filter((v): v is ListFilterValue<TRendered> => v !== undefined);\n }\n\n /**\n * Writes every filter's selection in one go — they share a settings key.\n *\n * Takes the two members it reads rather than a `ListFilter<any, …>`: a\n * `Table<never>` is not assignable to a `Table<any>` (a row model sits in a\n * contravariant position deep inside), so a list of concrete filters would\n * not go in.\n */\n public static storeFilters<T>(\n context: ListModelContext<T>,\n filters: StorableFilter[],\n options: ListSettingsOperationOptions,\n ): void {\n const data = Object.fromEntries(\n filters.map((filter) => [\n filter.storageKey,\n filter.getArrayValue().map((v) => v.id),\n ]),\n );\n\n context.settings?.store(\"activeFilters\", data, options);\n }\n\n public updateTableColumnDef(def: ColumnDef<T>): void {\n def.enableColumnFilter = true;\n def.filterFn = this.getTableFilterFn();\n }\n\n private getTableFilterFn(): ColumnDef<T>[\"filterFn\"] {\n return (row, _, filterValue) => {\n const propertyAsString = this.property as string;\n\n /*\n * A custom property is not on the item, so the matcher gets the item\n * itself and decides.\n */\n const filterBy = propertyAsString.startsWith(customPropertyPrefix)\n ? row.original\n : getProperty(row.original as object, propertyAsString);\n\n return this.checkFilterMatches(filterBy, filterValue);\n };\n }\n\n private checkFilterMatches(\n property: unknown,\n filterValueInput: unknown,\n ): boolean {\n if (filterValueInput === null) {\n return true;\n }\n\n const predicate = (filterValue: ListFilterValue<TRendered>) =>\n this.matcher(filterValue.value as never, property as never);\n\n const toFilterValue = (something: unknown) =>\n ListFilterValue.create(this, something);\n\n if (this.mode === \"all\") {\n return toArray(filterValueInput).map(toFilterValue).every(predicate);\n } else if (this.mode === \"some\") {\n const filterArr = toArray(filterValueInput);\n return (\n filterArr.length === 0 || filterArr.map(toFilterValue).some(predicate)\n );\n } else if (this.mode === \"one\") {\n const oneValue = Array.isArray(filterValueInput)\n ? filterValueInput[0]\n : filterValueInput;\n return predicate(toFilterValue(oneValue));\n }\n\n throw new Error(`Unknown filter mode '${this.mode}'`);\n }\n\n protected getTableColumnFilter(): ColumnFilter | undefined {\n return this.context.dataTable\n .getState()\n .columnFilters.find((f) => f.id === this.property);\n }\n\n protected getTableColumn(): Column<T> {\n return getListColumn(this.context.dataTable, this.property);\n }\n\n public getValue(): unknown {\n return this.getTableColumnFilter()?.value ?? null;\n }\n\n /*\n * Rebuilt only when TanStack hands out a new map: it memoizes the faceted\n * values and replaces the map when the data changes. Without this, every\n * row the filter function checks re-hashes every value — `getArrayValue()`\n * resolves each stored id through `values`.\n */\n private getValuesFromTableState(): ListFilterValue<TRendered>[] {\n const facets = this.getTableColumn().getFacetedUniqueValues();\n\n if (this.valuesFromTableState?.facets !== facets) {\n this.valuesFromTableState = {\n facets,\n values: unique(\n Array.from(facets.keys())\n .flatMap((v) => v)\n .filter((v) => v !== undefined && v !== null),\n ).map((v) => ListFilterValue.create(this, v)),\n };\n }\n\n return this.valuesFromTableState.values;\n }\n\n private checkIfValueIsUnknown(value: ListFilterValue<TRendered>): boolean {\n return !this.values.some((v) => v.id === value.id);\n }\n\n /**\n * Drops a selection the data no longer offers — a stored filter value whose\n * item is gone would otherwise filter everything away with no way to undo\n * it.\n */\n public deleteUnknownFilterValues(): void {\n /* Values the data offers are by definition known. */\n if (this._values === undefined) {\n return;\n }\n\n for (const currentValues of this.getArrayValue()) {\n if (this.checkIfValueIsUnknown(currentValues)) {\n this.deactivateValue(currentValues);\n }\n }\n }\n\n /**\n * The values the filter offers — the ones it was given, or the ones the data\n * has.\n *\n * Follows the table, not a snapshot. A binding that keeps one filter instance\n * for the list's lifetime would otherwise hold the answer from before the\n * first batch arrived: an async loader gives the header an empty menu and\n * never fills it. The values are cached per faceted-values map, which\n * TanStack replaces when the data changes.\n */\n public get values(): ListFilterValue<TRendered>[] {\n return this._values ?? this.getValuesFromTableState();\n }\n\n public getArrayValue(): ListFilterValue<TRendered>[] {\n const value = this.getValue();\n return value === null\n ? []\n : toArray(value).map((v) => ListFilterValue.create(this, v));\n }\n\n public isValueActive(value: ListFilterValue<TRendered>): boolean {\n return this.getArrayValue().some((v) => v.equals(value));\n }\n\n public isActive(): boolean {\n return this.getArrayValue().length > 0;\n }\n\n public deactivateValue(value: ListFilterValue<TRendered>): void {\n const currentValueAsArray = this.getArrayValue();\n\n const updatedValue =\n this.mode === \"all\" || this.mode === \"some\"\n ? currentValueAsArray.filter((v) => !v.equals(value))\n : null;\n\n this.getTableColumn().setFilterValue(updatedValue);\n this.callOnChangedHandlers(updatedValue);\n }\n\n private callOnChangedHandlers(\n newValue: ListFilterValue<TRendered>[] | ListFilterValue<TRendered> | null,\n ): void {\n const values = toArray(newValue).map((v) => v?.value);\n this.onFilterChangeCallbacks.forEach((cb) => cb(values));\n }\n\n public hasChanges(): boolean {\n const currentIds = this.getArrayValue().map((v) => v.id);\n\n const defaultIds =\n this.getStoredSelectedIds({ autosave: false }) ??\n this.defaultSelectedValues?.map((v) => v.id) ??\n [];\n\n return (\n currentIds.length !== defaultIds.length ||\n difference(currentIds, defaultIds).length > 0\n );\n }\n\n public isStoringAvailable(): boolean {\n return !!this.context.settings && this.manualSave;\n }\n\n public resetValues(): void {\n const storedValues =\n this.getStoredSelectedValues({ autosave: false }) ??\n this.defaultSelectedValues;\n\n const resetTo =\n storedValues ?? (this.mode === \"all\" || this.mode === \"some\" ? [] : null);\n\n this.getTableColumn().setFilterValue(resetTo);\n this.callOnChangedHandlers(resetTo);\n }\n\n public clear(): void {\n this.getTableColumn().setFilterValue(null);\n this.callOnChangedHandlers(null);\n }\n\n public toggleValue(newValue: ListFilterValue<TRendered>): void {\n const currentValueAsArray = this.getArrayValue();\n\n let updatedValue:\n ListFilterValue<TRendered>[] | ListFilterValue<TRendered> | null;\n\n if (this.mode === \"all\" || this.mode === \"some\") {\n updatedValue = newValue.isActive\n ? currentValueAsArray.filter((v) => !v.equals(newValue))\n : [...currentValueAsArray, newValue];\n } else {\n updatedValue = newValue.isActive ? null : newValue;\n }\n\n this.getTableColumn().setFilterValue(updatedValue);\n this.callOnChangedHandlers(updatedValue);\n }\n\n /**\n * Whether the filter offers \"Select all\" — a `some` filter with enough\n * values.\n */\n public get isSelectAllAvailable(): boolean {\n return this.mode === \"some\" && this.values.length >= selectAllMinValueCount;\n }\n\n public isEveryValueActive(): boolean {\n return this.values.every((v) => v.isActive);\n }\n\n public selectAll(): void {\n this.setArrayValue(this.values);\n }\n\n /** Makes exactly these values active — what a multiple-selection menu reports. */\n public setActiveValueIds(ids: Iterable<unknown>): void {\n const idSet = new Set(ids);\n this.setArrayValue(this.values.filter((v) => idSet.has(v.id)));\n }\n\n public deselectAll(): void {\n this.setArrayValue([]);\n }\n\n private setArrayValue(value: ListFilterValue<TRendered>[]): void {\n this.getTableColumn().setFilterValue(value);\n this.callOnChangedHandlers(value);\n }\n\n public onFilterUpdated(cb: () => unknown): void {\n this.onFilterChangeCallbacks.add(cb);\n }\n}\n\nexport default ListFilter;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ListFilter.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/ListFilter.ts"],"sourcesContent":["import { toArray } from \"../../lib/array\";\nimport { getListColumn, type ListModelContext } from \"../ListModelContext\";\nimport type { ListSettingsOperationOptions } from \"../settings/types\";\nimport { customPropertyPrefix } from \"../types\";\nimport type { PropertyName, PropertyValueRenderMethod } from \"../types\";\nimport { ListFilterValue } from \"./ListFilterValue\";\nimport type {\n FilterMatcher,\n FilterMode,\n FilterUpdatedCallback,\n ListFilterShape,\n} from \"./types\";\nimport type {\n Column,\n ColumnDef,\n ColumnFilter,\n InitialTableState,\n} from \"@tanstack/table-core\";\nimport { getProperty } from \"dot-prop\";\nimport { difference, unique } from \"remeda\";\n\nconst equalsPropertyMatcher: FilterMatcher<unknown, never, never> = (\n filterValue,\n propertyValue,\n) => filterValue === propertyValue;\n\n/** From how many values on a multiple-choice filter offers \"Select all\". */\nconst selectAllMinValueCount = 6;\n\nconst stringCastRenderMethod: PropertyValueRenderMethod<unknown, never> = (\n value,\n) => String(value) as never;\n\n/** What `storeFilters` needs of a filter, and nothing more. */\ninterface StorableFilter {\n readonly storageKey: string;\n getArrayValue(): { id: string }[];\n}\n\n/**\n * One filter of a list: its values, which of them are on, and how that is\n * persisted.\n *\n * Framework-free apart from one thing, which is why `TRendered` exists: a\n * filter value has to be _shown_, and what \"shown\" is belongs to the binding.\n * React's `Filter` fills it with `ReactNode`; the default is `unknown`, so the\n * core can be read without deciding.\n *\n * The selected values live in the TanStack table's column filter, not here.\n * This translates: ids to values, values to a predicate, a toggle to a new\n * column filter.\n */\nexport class ListFilter<\n T = never,\n TProp extends PropertyName<T> = never,\n TMatchValue = never,\n TRendered = unknown,\n> {\n private _values?: ListFilterValue<TRendered>[] | undefined;\n private valuesFromTableState?: {\n facets: Map<unknown, number>;\n values: ListFilterValue<TRendered>[];\n };\n public readonly context: ListModelContext<T>;\n public readonly property: TProp;\n public readonly mode: FilterMode;\n public readonly matcher: FilterMatcher<T, never, never>;\n public readonly renderItem: PropertyValueRenderMethod<TMatchValue, TRendered>;\n public readonly name?: string;\n public readonly autosave: boolean;\n public readonly manualSave: boolean;\n private readonly onFilterChangeCallbacks = new Set<FilterUpdatedCallback>();\n private readonly defaultSelectedValues?: ListFilterValue<TRendered>[];\n public readonly priority: \"primary\" | \"secondary\";\n public readonly storageKey: string;\n\n public constructor(\n context: ListModelContext<T>,\n shape: ListFilterShape<T, TProp, TMatchValue, TRendered>,\n ) {\n const {\n autosave = context.settingsDefaults?.filters?.autosave ?? false,\n manualSave = context.settingsDefaults?.filters?.manualSave ?? true,\n property,\n mode = \"some\",\n values,\n matcher = equalsPropertyMatcher,\n renderItem = stringCastRenderMethod as PropertyValueRenderMethod<\n TMatchValue,\n TRendered\n >,\n priority = \"primary\",\n name,\n defaultSelected,\n onChange,\n } = shape;\n\n this.context = context;\n this.autosave = autosave;\n this.manualSave = manualSave;\n this.property = property;\n this.storageKey = String(property);\n this.mode = mode;\n this._values = values?.map((v) => ListFilterValue.create(this, v));\n this.matcher = matcher;\n this.renderItem = renderItem;\n this.name = name;\n this.priority = priority;\n this.defaultSelectedValues = defaultSelected?.map((v) =>\n ListFilterValue.create(this, v),\n );\n if (onChange) {\n this.onFilterChangeCallbacks.add(onChange);\n }\n }\n\n public updateInitialState(initialState: InitialTableState): void {\n const initialIds = this.getInitialSelectedIds();\n\n if (initialIds?.length) {\n initialState.columnFilters = [\n ...(initialState.columnFilters ?? []),\n {\n id: this.property as string,\n value: initialIds,\n },\n ];\n }\n }\n\n private getInitialSelectedIds(): string[] | undefined {\n return (\n this.getStoredSelectedIds({\n autosave: this.autosave,\n manualSave: this.manualSave,\n }) ?? this.defaultSelectedValues?.map((v) => v.id)\n );\n }\n\n private getStoredSelectedIds(\n options: ListSettingsOperationOptions,\n ): string[] | undefined {\n return this.context.settings?.get(\"activeFilters\", options)?.[\n this.storageKey\n ];\n }\n\n private getStoredSelectedValues(\n options: ListSettingsOperationOptions,\n ): ListFilterValue<TRendered>[] | undefined {\n return this.getStoredSelectedIds(options)\n ?.map((id) => this.values.find((v) => v.id === id))\n .filter((v): v is ListFilterValue<TRendered> => v !== undefined);\n }\n\n /**\n * Writes every filter's selection in one go — they share a settings key.\n *\n * Takes the two members it reads rather than a `ListFilter<any, …>`: a\n * `Table<never>` is not assignable to a `Table<any>` (a row model sits in a\n * contravariant position deep inside), so a list of concrete filters would\n * not go in.\n */\n public static storeFilters<T>(\n context: ListModelContext<T>,\n filters: StorableFilter[],\n options: ListSettingsOperationOptions,\n ): void {\n const data = Object.fromEntries(\n filters.map((filter) => [\n filter.storageKey,\n filter.getArrayValue().map((v) => v.id),\n ]),\n );\n\n context.settings?.store(\"activeFilters\", data, options);\n }\n\n public updateTableColumnDef(def: ColumnDef<T>): void {\n def.enableColumnFilter = true;\n def.filterFn = this.getTableFilterFn();\n }\n\n private getTableFilterFn(): ColumnDef<T>[\"filterFn\"] {\n return (row, _, filterValue) => {\n const propertyAsString = this.property as string;\n\n /*\n * A custom property is not on the item, so the matcher gets the item\n * itself and decides.\n */\n const filterBy = propertyAsString.startsWith(customPropertyPrefix)\n ? row.original\n : getProperty(row.original as object, propertyAsString);\n\n return this.checkFilterMatches(filterBy, filterValue);\n };\n }\n\n private checkFilterMatches(\n property: unknown,\n filterValueInput: unknown,\n ): boolean {\n if (filterValueInput === null) {\n return true;\n }\n\n const predicate = (filterValue: ListFilterValue<TRendered>) =>\n this.matcher(filterValue.value as never, property as never);\n\n const toFilterValue = (something: unknown) =>\n ListFilterValue.create(this, something);\n\n if (this.mode === \"all\") {\n return toArray(filterValueInput).map(toFilterValue).every(predicate);\n } else if (this.mode === \"some\") {\n const filterArr = toArray(filterValueInput);\n return (\n filterArr.length === 0 || filterArr.map(toFilterValue).some(predicate)\n );\n } else if (this.mode === \"one\") {\n const oneValue = Array.isArray(filterValueInput)\n ? filterValueInput[0]\n : filterValueInput;\n return predicate(toFilterValue(oneValue));\n }\n\n throw new Error(`Unknown filter mode '${this.mode}'`);\n }\n\n protected getTableColumnFilter(): ColumnFilter | undefined {\n return this.context.dataTable\n .getState()\n .columnFilters.find((f) => f.id === this.property);\n }\n\n protected getTableColumn(): Column<T> {\n return getListColumn(this.context.dataTable, this.property);\n }\n\n public getValue(): unknown {\n return this.getTableColumnFilter()?.value ?? null;\n }\n\n /*\n * Rebuilt only when TanStack hands out a new map: it memoizes the faceted\n * values and replaces the map when the data changes. Without this, every\n * row the filter function checks re-hashes every value — `getArrayValue()`\n * resolves each stored id through `values`.\n */\n private getValuesFromTableState(): ListFilterValue<TRendered>[] {\n const facets = this.getTableColumn().getFacetedUniqueValues();\n\n if (this.valuesFromTableState?.facets !== facets) {\n this.valuesFromTableState = {\n facets,\n values: unique(\n Array.from(facets.keys())\n .flatMap((v) => v)\n .filter((v) => v !== undefined && v !== null),\n ).map((v) => ListFilterValue.create(this, v)),\n };\n }\n\n return this.valuesFromTableState.values;\n }\n\n private checkIfValueIsUnknown(value: ListFilterValue<TRendered>): boolean {\n return !this.values.some((v) => v.id === value.id);\n }\n\n /**\n * Drops a selection the data no longer offers — a stored filter value whose\n * item is gone would otherwise filter everything away with no way to undo\n * it.\n */\n public deleteUnknownFilterValues(): void {\n /* Values the data offers are by definition known. */\n if (this._values === undefined) {\n return;\n }\n\n for (const currentValues of this.getArrayValue()) {\n if (this.checkIfValueIsUnknown(currentValues)) {\n this.deactivateValue(currentValues);\n }\n }\n }\n\n /**\n * The values the filter offers — the ones it was given, or the ones the data\n * has.\n *\n * Follows the table, not a snapshot. A binding that keeps one filter instance\n * for the list's lifetime would otherwise hold the answer from before the\n * first batch arrived: an async loader gives the header an empty menu and\n * never fills it. The values are cached per faceted-values map, which\n * TanStack replaces when the data changes.\n */\n public get values(): ListFilterValue<TRendered>[] {\n return this._values ?? this.getValuesFromTableState();\n }\n\n public getArrayValue(): ListFilterValue<TRendered>[] {\n const value = this.getValue();\n return value === null\n ? []\n : toArray(value).map((v) => ListFilterValue.create(this, v));\n }\n\n public isValueActive(value: ListFilterValue<TRendered>): boolean {\n return this.getArrayValue().some((v) => v.equals(value));\n }\n\n public isActive(): boolean {\n return this.getArrayValue().length > 0;\n }\n\n public deactivateValue(value: ListFilterValue<TRendered>): void {\n const currentValueAsArray = this.getArrayValue();\n\n const updatedValue =\n this.mode === \"all\" || this.mode === \"some\"\n ? currentValueAsArray.filter((v) => !v.equals(value))\n : null;\n\n this.getTableColumn().setFilterValue(updatedValue);\n this.callOnChangedHandlers(updatedValue);\n }\n\n private callOnChangedHandlers(\n newValue: ListFilterValue<TRendered>[] | ListFilterValue<TRendered> | null,\n ): void {\n this.notifyFilterUpdated(toArray(newValue).map((v) => v?.value));\n }\n\n /** Tells the listeners — the list resetting its batches among them. */\n protected notifyFilterUpdated(values: unknown[]): void {\n this.onFilterChangeCallbacks.forEach((cb) => cb(values));\n }\n\n public hasChanges(): boolean {\n const currentIds = this.getArrayValue().map((v) => v.id);\n\n const defaultIds =\n this.getStoredSelectedIds({ autosave: false }) ??\n this.defaultSelectedValues?.map((v) => v.id) ??\n [];\n\n return (\n currentIds.length !== defaultIds.length ||\n difference(currentIds, defaultIds).length > 0\n );\n }\n\n public isStoringAvailable(): boolean {\n return !!this.context.settings && this.manualSave;\n }\n\n public resetValues(): void {\n const storedValues =\n this.getStoredSelectedValues({ autosave: false }) ??\n this.defaultSelectedValues;\n\n const resetTo =\n storedValues ?? (this.mode === \"all\" || this.mode === \"some\" ? [] : null);\n\n this.getTableColumn().setFilterValue(resetTo);\n this.callOnChangedHandlers(resetTo);\n }\n\n public clear(): void {\n this.getTableColumn().setFilterValue(null);\n this.callOnChangedHandlers(null);\n }\n\n public toggleValue(newValue: ListFilterValue<TRendered>): void {\n const currentValueAsArray = this.getArrayValue();\n\n let updatedValue:\n ListFilterValue<TRendered>[] | ListFilterValue<TRendered> | null;\n\n if (this.mode === \"all\" || this.mode === \"some\") {\n updatedValue = newValue.isActive\n ? currentValueAsArray.filter((v) => !v.equals(newValue))\n : [...currentValueAsArray, newValue];\n } else {\n updatedValue = newValue.isActive ? null : newValue;\n }\n\n this.getTableColumn().setFilterValue(updatedValue);\n this.callOnChangedHandlers(updatedValue);\n }\n\n /**\n * Whether the filter offers \"Select all\" — a `some` filter with enough\n * values.\n */\n public get isSelectAllAvailable(): boolean {\n return this.mode === \"some\" && this.values.length >= selectAllMinValueCount;\n }\n\n public isEveryValueActive(): boolean {\n return this.values.every((v) => v.isActive);\n }\n\n public selectAll(): void {\n this.setArrayValue(this.values);\n }\n\n /** Makes exactly these values active — what a multiple-selection menu reports. */\n public setActiveValueIds(ids: Iterable<unknown>): void {\n const idSet = new Set(ids);\n this.setArrayValue(this.values.filter((v) => idSet.has(v.id)));\n }\n\n public deselectAll(): void {\n this.setArrayValue([]);\n }\n\n private setArrayValue(value: ListFilterValue<TRendered>[]): void {\n this.getTableColumn().setFilterValue(value);\n this.callOnChangedHandlers(value);\n }\n\n public onFilterUpdated(cb: () => unknown): void {\n this.onFilterChangeCallbacks.add(cb);\n }\n}\n\nexport default ListFilter;\n"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  /* */
3
3
  import { isShallowEqual } from "remeda";
4
4
  import { hash } from "object-code";
5
- //#region ../components-base/src/list/filter/ListFilterValue.ts
5
+ // ../components-base/src/list/filter/ListFilterValue.ts
6
6
  var idPrefix = "FilterValueId@@";
7
7
  /**
8
8
  * One selectable value of a filter, and the identity it is stored under.
@@ -45,7 +45,6 @@ var ListFilterValue = class ListFilterValue {
45
45
  this.filter.deactivateValue(this);
46
46
  }
47
47
  };
48
- //#endregion
49
48
  export { ListFilterValue, ListFilterValue as default };
50
49
 
51
50
  //# sourceMappingURL=ListFilterValue.mjs.map
@@ -1,27 +1,52 @@
1
1
  "use client"
2
2
  /* */
3
- import { CalendarDate } from "@internationalized/date";
3
+ import { CalendarDate, CalendarDateTime, ZonedDateTime } from "@internationalized/date";
4
4
  import { DateTime } from "luxon";
5
- //#region ../components-base/src/list/filter/dateRange.ts
5
+ // ../components-base/src/list/filter/dateRange.ts
6
6
  /** A range needs both ends present to be one, even if either may be unset. */
7
7
  var isListDateRange = (value) => !!value && typeof value === "object" && "start" in value && "end" in value;
8
- var startOfDay = (date) => DateTime.fromObject({
8
+ var hasTime = (date) => "hour" in date;
9
+ /**
10
+ * The date as a local point in time. A `ZonedDateTime` is the instant it names;
11
+ * anything else is read field by field, since after crossing the remote
12
+ * boundary a `CalendarDate` is a plain object.
13
+ */
14
+ var listDateToDateTime = (date) => date instanceof ZonedDateTime ? DateTime.fromJSDate(date.toDate()) : DateTime.fromObject({
9
15
  year: date.year,
10
16
  month: date.month,
11
- day: date.day
17
+ day: date.day,
18
+ ...hasTime(date) ? {
19
+ hour: date.hour,
20
+ minute: date.minute,
21
+ second: date.second
22
+ } : {}
12
23
  });
13
24
  /**
25
+ * Resolves a range to the instants it spans, for filtering on the server side.
26
+ * Both bounds are inclusive: a date covers its whole day and a date with time
27
+ * its whole minute, in the user's local time zone. A missing side has no
28
+ * bound.
29
+ */
30
+ var resolveListDateRange = (range) => {
31
+ const unit = (date) => hasTime(date) ? "minute" : "day";
32
+ return {
33
+ start: range.start ? listDateToDateTime(range.start).startOf(unit(range.start)).toJSDate() : void 0,
34
+ end: range.end ? listDateToDateTime(range.end).endOf(unit(range.end)).toJSDate() : void 0
35
+ };
36
+ };
37
+ /**
14
38
  * The cell's value as a point in time, or `undefined` when the filter does not
15
39
  * treat it as a date.
16
40
  *
17
- * Three shapes count, each on its own terms: a luxon `DateTime` and an ISO 8601
18
- * string are compared as the instant they name — a date-only string as the
19
- * start of its day — and a `CalendarDate` as its day. Anything else, a plain `{
20
- * year, month, day }` object included, is not a date here.
41
+ * A luxon `DateTime` and an ISO 8601 string are compared as the instant they
42
+ * name — a date-only string as the start of its day. A `CalendarDate` counts as
43
+ * the start of its day, a `CalendarDateTime` as its local time and a
44
+ * `ZonedDateTime` as its instant. Anything else, a plain `{ year, month, day }`
45
+ * object included, is not a date here.
21
46
  */
22
47
  var toDateTime = (value) => {
23
48
  if (value instanceof DateTime) return value;
24
- if (value instanceof CalendarDate) return startOfDay(value);
49
+ if (value instanceof CalendarDate || value instanceof CalendarDateTime || value instanceof ZonedDateTime) return listDateToDateTime(value);
25
50
  if (typeof value === "string") return DateTime.fromISO(value);
26
51
  };
27
52
  /**
@@ -35,17 +60,15 @@ var dateRangeFilterFn = (row, columnId, range) => {
35
60
  if (!range) return true;
36
61
  const dateValue = toDateTime(row.getValue(columnId));
37
62
  if (!dateValue) return true;
38
- const startDate = range.start ? startOfDay(range.start) : void 0;
39
- const endDate = range.end ? startOfDay(range.end).endOf("day") : void 0;
40
- if (startDate && dateValue < startDate) return false;
41
- return !(endDate && dateValue > endDate);
63
+ const { start, end } = resolveListDateRange(range);
64
+ if (start && dateValue.toMillis() < start.getTime()) return false;
65
+ return !(end && dateValue.toMillis() > end.getTime());
42
66
  };
43
67
  /** Turns the column into one a date range filters. */
44
68
  var applyDateRangeColumnDef = (def) => {
45
69
  def.enableColumnFilter = true;
46
70
  def.filterFn = dateRangeFilterFn;
47
71
  };
48
- //#endregion
49
- export { applyDateRangeColumnDef, dateRangeFilterFn, isListDateRange };
72
+ export { applyDateRangeColumnDef, dateRangeFilterFn, isListDateRange, listDateToDateTime, resolveListDateRange };
50
73
 
51
74
  //# sourceMappingURL=dateRange.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dateRange.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/dateRange.ts"],"sourcesContent":["import { CalendarDate } from \"@internationalized/date\";\nimport type { ColumnDef, Row } from \"@tanstack/table-core\";\nimport { DateTime } from \"luxon\";\n\n/** A calendar date, in whichever shape it reached the filter. */\nexport interface ListDateParts {\n readonly year: number;\n readonly month: number;\n readonly day: number;\n}\n\nexport interface ListDateRange {\n readonly start?: ListDateParts;\n readonly end?: ListDateParts;\n}\n\n/** A range needs both ends present to be one, even if either may be unset. */\nexport const isListDateRange = (value: unknown): value is ListDateRange =>\n !!value && typeof value === \"object\" && \"start\" in value && \"end\" in value;\n\n/*\n * The range's ends are read field by field: they come from the calendar, and\n * after crossing the remote boundary a `CalendarDate` is a plain object.\n */\nconst startOfDay = (date: ListDateParts): DateTime =>\n DateTime.fromObject({\n year: date.year,\n month: date.month,\n day: date.day,\n });\n\n/**\n * The cell's value as a point in time, or `undefined` when the filter does not\n * treat it as a date.\n *\n * Three shapes count, each on its own terms: a luxon `DateTime` and an ISO 8601\n * string are compared as the instant they name — a date-only string as the\n * start of its day — and a `CalendarDate` as its day. Anything else, a plain `{\n * year, month, day }` object included, is not a date here.\n */\nconst toDateTime = (value: unknown): DateTime | undefined => {\n if (value instanceof DateTime) {\n return value;\n }\n if (value instanceof CalendarDate) {\n return startOfDay(value);\n }\n if (typeof value === \"string\") {\n return DateTime.fromISO(value);\n }\n return undefined;\n};\n\n/**\n * Whether a row's date falls inside the selected range.\n *\n * A value that is not a date keeps its row: a filter the data cannot answer\n * should not empty the list. That includes a string luxon cannot parse — the\n * invalid `DateTime` compares as `NaN`, and neither end excludes it.\n */\nexport const dateRangeFilterFn = <T>(\n row: Row<T>,\n columnId: string,\n range?: ListDateRange,\n): boolean => {\n if (!range) {\n return true;\n }\n\n const dateValue = toDateTime(row.getValue(columnId));\n\n if (!dateValue) {\n return true;\n }\n\n const startDate = range.start ? startOfDay(range.start) : undefined;\n /* The whole end day counts, up to its last moment. */\n const endDate = range.end ? startOfDay(range.end).endOf(\"day\") : undefined;\n\n if (startDate && dateValue < startDate) {\n return false;\n }\n\n return !(endDate && dateValue > endDate);\n};\n\n/** Turns the column into one a date range filters. */\nexport const applyDateRangeColumnDef = <T>(def: ColumnDef<T>): void => {\n def.enableColumnFilter = true;\n def.filterFn = dateRangeFilterFn;\n};\n"],"mappings":";;;;;;AAiBA,IAAa,mBAAmB,UAC9B,CAAC,CAAC,SAAS,OAAO,UAAU,YAAY,WAAW,SAAS,SAAS;AAMvE,IAAM,cAAc,SAClB,SAAS,WAAW;CAClB,MAAM,KAAK;CACX,OAAO,KAAK;CACZ,KAAK,KAAK;AACZ,CAAC;;;;;;;;;;AAWH,IAAM,cAAc,UAAyC;CAC3D,IAAI,iBAAiB,UACnB,OAAO;CAET,IAAI,iBAAiB,cACnB,OAAO,WAAW,KAAK;CAEzB,IAAI,OAAO,UAAU,UACnB,OAAO,SAAS,QAAQ,KAAK;AAGjC;;;;;;;;AASA,IAAa,qBACX,KACA,UACA,UACY;CACZ,IAAI,CAAC,OACH,OAAO;CAGT,MAAM,YAAY,WAAW,IAAI,SAAS,QAAQ,CAAC;CAEnD,IAAI,CAAC,WACH,OAAO;CAGT,MAAM,YAAY,MAAM,QAAQ,WAAW,MAAM,KAAK,IAAI,KAAA;CAE1D,MAAM,UAAU,MAAM,MAAM,WAAW,MAAM,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,KAAA;CAEjE,IAAI,aAAa,YAAY,WAC3B,OAAO;CAGT,OAAO,EAAE,WAAW,YAAY;AAClC;;AAGA,IAAa,2BAA8B,QAA4B;CACrE,IAAI,qBAAqB;CACzB,IAAI,WAAW;AACjB"}
1
+ {"version":3,"file":"dateRange.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/dateRange.ts"],"sourcesContent":["import {\n CalendarDate,\n CalendarDateTime,\n ZonedDateTime,\n} from \"@internationalized/date\";\nimport type { ColumnDef, Row } from \"@tanstack/table-core\";\nimport { DateTime } from \"luxon\";\n\n/**\n * A calendar date, in whichever shape it reached the filter — with a time of\n * day when the filter narrows down by minute.\n */\nexport interface ListDateParts {\n readonly year: number;\n readonly month: number;\n readonly day: number;\n readonly hour?: number;\n readonly minute?: number;\n readonly second?: number;\n}\n\nexport interface ListDateRange {\n readonly start?: ListDateParts;\n readonly end?: ListDateParts;\n}\n\n/** A range needs both ends present to be one, even if either may be unset. */\nexport const isListDateRange = (value: unknown): value is ListDateRange =>\n !!value && typeof value === \"object\" && \"start\" in value && \"end\" in value;\n\nconst hasTime = (date: ListDateParts) => \"hour\" in date;\n\n/**\n * The date as a local point in time. A `ZonedDateTime` is the instant it names;\n * anything else is read field by field, since after crossing the remote\n * boundary a `CalendarDate` is a plain object.\n */\nexport const listDateToDateTime = (date: ListDateParts): DateTime =>\n date instanceof ZonedDateTime\n ? DateTime.fromJSDate(date.toDate())\n : DateTime.fromObject({\n year: date.year,\n month: date.month,\n day: date.day,\n ...(hasTime(date)\n ? { hour: date.hour, minute: date.minute, second: date.second }\n : {}),\n });\n\n/**\n * Resolves a range to the instants it spans, for filtering on the server side.\n * Both bounds are inclusive: a date covers its whole day and a date with time\n * its whole minute, in the user's local time zone. A missing side has no\n * bound.\n */\nexport const resolveListDateRange = (\n range: ListDateRange,\n): { start?: Date; end?: Date } => {\n const unit = (date: ListDateParts) => (hasTime(date) ? \"minute\" : \"day\");\n\n return {\n start: range.start\n ? listDateToDateTime(range.start).startOf(unit(range.start)).toJSDate()\n : undefined,\n end: range.end\n ? listDateToDateTime(range.end).endOf(unit(range.end)).toJSDate()\n : undefined,\n };\n};\n\n/**\n * The cell's value as a point in time, or `undefined` when the filter does not\n * treat it as a date.\n *\n * A luxon `DateTime` and an ISO 8601 string are compared as the instant they\n * name — a date-only string as the start of its day. A `CalendarDate` counts as\n * the start of its day, a `CalendarDateTime` as its local time and a\n * `ZonedDateTime` as its instant. Anything else, a plain `{ year, month, day }`\n * object included, is not a date here.\n */\nconst toDateTime = (value: unknown): DateTime | undefined => {\n if (value instanceof DateTime) {\n return value;\n }\n if (\n value instanceof CalendarDate ||\n value instanceof CalendarDateTime ||\n value instanceof ZonedDateTime\n ) {\n return listDateToDateTime(value);\n }\n if (typeof value === \"string\") {\n return DateTime.fromISO(value);\n }\n return undefined;\n};\n\n/**\n * Whether a row's date falls inside the selected range.\n *\n * A value that is not a date keeps its row: a filter the data cannot answer\n * should not empty the list. That includes a string luxon cannot parse — the\n * invalid `DateTime` compares as `NaN`, and neither end excludes it.\n */\nexport const dateRangeFilterFn = <T>(\n row: Row<T>,\n columnId: string,\n range?: ListDateRange,\n): boolean => {\n if (!range) {\n return true;\n }\n\n const dateValue = toDateTime(row.getValue(columnId));\n\n if (!dateValue) {\n return true;\n }\n\n const { start, end } = resolveListDateRange(range);\n\n if (start && dateValue.toMillis() < start.getTime()) {\n return false;\n }\n\n return !(end && dateValue.toMillis() > end.getTime());\n};\n\n/** Turns the column into one a date range filters. */\nexport const applyDateRangeColumnDef = <T>(def: ColumnDef<T>): void => {\n def.enableColumnFilter = true;\n def.filterFn = dateRangeFilterFn;\n};\n"],"mappings":";;;;;;AA2BA,IAAa,mBAAmB,UAC9B,CAAC,CAAC,SAAS,OAAO,UAAU,YAAY,WAAW,SAAS,SAAS;AAEvE,IAAM,WAAW,SAAwB,UAAU;;;;;;AAOnD,IAAa,sBAAsB,SACjC,gBAAgB,gBACZ,SAAS,WAAW,KAAK,OAAO,CAAC,IACjC,SAAS,WAAW;CAClB,MAAM,KAAK;CACX,OAAO,KAAK;CACZ,KAAK,KAAK;CACV,GAAI,QAAQ,IAAI,IACZ;EAAE,MAAM,KAAK;EAAM,QAAQ,KAAK;EAAQ,QAAQ,KAAK;CAAO,IAC5D,CAAC;AACP,CAAC;;;;;;;AAQP,IAAa,wBACX,UACiC;CACjC,MAAM,QAAQ,SAAyB,QAAQ,IAAI,IAAI,WAAW;CAElE,OAAO;EACL,OAAO,MAAM,QACT,mBAAmB,MAAM,KAAK,CAAC,CAAC,QAAQ,KAAK,MAAM,KAAK,CAAC,CAAC,CAAC,SAAS,IACpE,KAAA;EACJ,KAAK,MAAM,MACP,mBAAmB,MAAM,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,SAAS,IAC9D,KAAA;CACN;AACF;;;;;;;;;;;AAYA,IAAM,cAAc,UAAyC;CAC3D,IAAI,iBAAiB,UACnB,OAAO;CAET,IACE,iBAAiB,gBACjB,iBAAiB,oBACjB,iBAAiB,eAEjB,OAAO,mBAAmB,KAAK;CAEjC,IAAI,OAAO,UAAU,UACnB,OAAO,SAAS,QAAQ,KAAK;AAGjC;;;;;;;;AASA,IAAa,qBACX,KACA,UACA,UACY;CACZ,IAAI,CAAC,OACH,OAAO;CAGT,MAAM,YAAY,WAAW,IAAI,SAAS,QAAQ,CAAC;CAEnD,IAAI,CAAC,WACH,OAAO;CAGT,MAAM,EAAE,OAAO,QAAQ,qBAAqB,KAAK;CAEjD,IAAI,SAAS,UAAU,SAAS,IAAI,MAAM,QAAQ,GAChD,OAAO;CAGT,OAAO,EAAE,OAAO,UAAU,SAAS,IAAI,IAAI,QAAQ;AACrD;;AAGA,IAAa,2BAA8B,QAA4B;CACrE,IAAI,qBAAqB;CACzB,IAAI,WAAW;AACjB"}
@@ -0,0 +1,54 @@
1
+ "use client"
2
+ /* */
3
+ import { resolveListDateRange } from "./dateRange.mjs";
4
+ import { CalendarDate, Time, toCalendarDateTime } from "@internationalized/date";
5
+ // ../components-base/src/list/filter/dateTimeRangeFields.ts
6
+ var toListCalendarDate = (value) => value ? new CalendarDate(value.year, value.month, value.day) : null;
7
+ var toListTime = (value) => value && "hour" in value ? new Time(value.hour, value.minute) : null;
8
+ var listDateTimeRangeFieldsFromValue = (value) => ({
9
+ startDate: toListCalendarDate(value?.start),
10
+ startTime: toListTime(value?.start),
11
+ endDate: toListCalendarDate(value?.end),
12
+ endTime: toListTime(value?.end)
13
+ });
14
+ var toBound = (date, time) => date ? time ? toCalendarDateTime(date, time) : date : void 0;
15
+ var boundKey = (bound) => bound && [
16
+ bound.year,
17
+ bound.month,
18
+ bound.day,
19
+ bound.hour,
20
+ bound.minute
21
+ ].join("-");
22
+ var isYearComplete = (date) => !!date && date.year >= 1e3;
23
+ /** Not while a year is still being typed: "2" would read as an early end. */
24
+ var isListDateTimeRangeEndBeforeStart = (fields) => {
25
+ if (!isYearComplete(fields.startDate) || !isYearComplete(fields.endDate)) return false;
26
+ const { start, end } = resolveListDateRange({
27
+ start: toBound(fields.startDate, fields.startTime),
28
+ end: toBound(fields.endDate, fields.endTime)
29
+ });
30
+ return !!start && !!end && end < start;
31
+ };
32
+ var isListDateValid = (date, limits = {}) => {
33
+ const minValue = toListCalendarDate(limits.minValue);
34
+ const maxValue = toListCalendarDate(limits.maxValue);
35
+ return !date || !(!isYearComplete(date) || minValue && date.compare(minValue) < 0 || maxValue && date.compare(maxValue) > 0 || limits.isDateUnavailable?.(date));
36
+ };
37
+ /**
38
+ * The range the fields stand for, or `undefined` while it must not be applied:
39
+ * an invalid input keeps the last valid range, and an unchanged one needs no
40
+ * update. `null` clears the filter.
41
+ */
42
+ var getListDateTimeRangeUpdate = (fields, applied, limits) => {
43
+ if (!isListDateValid(fields.startDate, limits) || !isListDateValid(fields.endDate, limits) || isListDateTimeRangeEndBeforeStart(fields)) return;
44
+ const start = toBound(fields.startDate, fields.startTime);
45
+ const end = toBound(fields.endDate, fields.endTime);
46
+ if (boundKey(start) === boundKey(applied?.start) && boundKey(end) === boundKey(applied?.end)) return;
47
+ return start || end ? {
48
+ start,
49
+ end
50
+ } : null;
51
+ };
52
+ export { getListDateTimeRangeUpdate, isListDateTimeRangeEndBeforeStart, isListDateValid, listDateTimeRangeFieldsFromValue, toListCalendarDate, toListTime };
53
+
54
+ //# sourceMappingURL=dateTimeRangeFields.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dateTimeRangeFields.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/dateTimeRangeFields.ts"],"sourcesContent":["import {\n CalendarDate,\n type CalendarDateTime,\n Time,\n toCalendarDateTime,\n} from \"@internationalized/date\";\nimport {\n resolveListDateRange,\n type ListDateParts,\n type ListDateRange,\n} from \"./dateRange\";\n\n/*\n * The rules of the date and time fields a range filter shows with\n * `granularity: \"minute\"`. Which input is valid and when it applies is the same\n * in every binding; the fields and the state holding their input are not.\n */\n\nexport interface ListDateTimeRangeFields {\n readonly startDate: CalendarDate | null;\n readonly startTime: Time | null;\n readonly endDate: CalendarDate | null;\n readonly endTime: Time | null;\n}\n\nexport interface ListDateTimeRangeLimits {\n readonly minValue?: ListDateParts | null;\n readonly maxValue?: ListDateParts | null;\n readonly isDateUnavailable?: (date: CalendarDate) => boolean;\n}\n\ntype Bound = CalendarDate | CalendarDateTime;\n\nexport interface ListDateTimeRange {\n readonly start?: Bound;\n readonly end?: Bound;\n}\n\n/* Field by field: a value from the host of a remote connection is a plain object. */\nexport const toListCalendarDate = (\n value?: ListDateParts | null,\n): CalendarDate | null =>\n value ? new CalendarDate(value.year, value.month, value.day) : null;\n\nexport const toListTime = (\n value?: { readonly hour?: number; readonly minute?: number } | null,\n): Time | null =>\n value && \"hour\" in value ? new Time(value.hour, value.minute) : null;\n\nexport const listDateTimeRangeFieldsFromValue = (\n value: ListDateRange | null,\n): ListDateTimeRangeFields => ({\n startDate: toListCalendarDate(value?.start),\n startTime: toListTime(value?.start),\n endDate: toListCalendarDate(value?.end),\n endTime: toListTime(value?.end),\n});\n\nconst toBound = (date: CalendarDate | null, time: Time | null) =>\n date ? (time ? toCalendarDateTime(date, time) : date) : undefined;\n\nconst boundKey = (bound?: ListDateParts) =>\n bound &&\n [bound.year, bound.month, bound.day, bound.hour, bound.minute].join(\"-\");\n\n// react-aria reports a typed year digit by digit (2, 20, 202, 2026)\nconst isYearComplete = (date: CalendarDate | null) =>\n !!date && date.year >= 1000;\n\n/** Not while a year is still being typed: \"2\" would read as an early end. */\nexport const isListDateTimeRangeEndBeforeStart = (\n fields: ListDateTimeRangeFields,\n): boolean => {\n if (!isYearComplete(fields.startDate) || !isYearComplete(fields.endDate)) {\n return false;\n }\n const { start, end } = resolveListDateRange({\n start: toBound(fields.startDate, fields.startTime),\n end: toBound(fields.endDate, fields.endTime),\n });\n return !!start && !!end && end < start;\n};\n\nexport const isListDateValid = (\n date: CalendarDate | null,\n limits: ListDateTimeRangeLimits = {},\n): boolean => {\n const minValue = toListCalendarDate(limits.minValue);\n const maxValue = toListCalendarDate(limits.maxValue);\n\n return (\n !date ||\n !(\n !isYearComplete(date) ||\n (minValue && date.compare(minValue) < 0) ||\n (maxValue && date.compare(maxValue) > 0) ||\n limits.isDateUnavailable?.(date)\n )\n );\n};\n\n/**\n * The range the fields stand for, or `undefined` while it must not be applied:\n * an invalid input keeps the last valid range, and an unchanged one needs no\n * update. `null` clears the filter.\n */\nexport const getListDateTimeRangeUpdate = (\n fields: ListDateTimeRangeFields,\n applied: ListDateRange | null,\n limits?: ListDateTimeRangeLimits,\n): ListDateTimeRange | null | undefined => {\n if (\n !isListDateValid(fields.startDate, limits) ||\n !isListDateValid(fields.endDate, limits) ||\n isListDateTimeRangeEndBeforeStart(fields)\n ) {\n return undefined;\n }\n\n const start = toBound(fields.startDate, fields.startTime);\n const end = toBound(fields.endDate, fields.endTime);\n\n if (\n boundKey(start) === boundKey(applied?.start) &&\n boundKey(end) === boundKey(applied?.end)\n ) {\n return undefined;\n }\n\n return start || end ? { start, end } : null;\n};\n"],"mappings":";;;;;AAuCA,IAAa,sBACX,UAEA,QAAQ,IAAI,aAAa,MAAM,MAAM,MAAM,OAAO,MAAM,GAAG,IAAI;AAEjE,IAAa,cACX,UAEA,SAAS,UAAU,QAAQ,IAAI,KAAK,MAAM,MAAM,MAAM,MAAM,IAAI;AAElE,IAAa,oCACX,WAC6B;CAC7B,WAAW,mBAAmB,OAAO,KAAK;CAC1C,WAAW,WAAW,OAAO,KAAK;CAClC,SAAS,mBAAmB,OAAO,GAAG;CACtC,SAAS,WAAW,OAAO,GAAG;AAChC;AAEA,IAAM,WAAW,MAA2B,SAC1C,OAAQ,OAAO,mBAAmB,MAAM,IAAI,IAAI,OAAQ,KAAA;AAE1D,IAAM,YAAY,UAChB,SACA;CAAC,MAAM;CAAM,MAAM;CAAO,MAAM;CAAK,MAAM;CAAM,MAAM;AAAM,CAAC,CAAC,KAAK,GAAG;AAGzE,IAAM,kBAAkB,SACtB,CAAC,CAAC,QAAQ,KAAK,QAAQ;;AAGzB,IAAa,qCACX,WACY;CACZ,IAAI,CAAC,eAAe,OAAO,SAAS,KAAK,CAAC,eAAe,OAAO,OAAO,GACrE,OAAO;CAET,MAAM,EAAE,OAAO,QAAQ,qBAAqB;EAC1C,OAAO,QAAQ,OAAO,WAAW,OAAO,SAAS;EACjD,KAAK,QAAQ,OAAO,SAAS,OAAO,OAAO;CAC7C,CAAC;CACD,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,MAAM;AACnC;AAEA,IAAa,mBACX,MACA,SAAkC,CAAC,MACvB;CACZ,MAAM,WAAW,mBAAmB,OAAO,QAAQ;CACnD,MAAM,WAAW,mBAAmB,OAAO,QAAQ;CAEnD,OACE,CAAC,QACD,EACE,CAAC,eAAe,IAAI,KACnB,YAAY,KAAK,QAAQ,QAAQ,IAAI,KACrC,YAAY,KAAK,QAAQ,QAAQ,IAAI,KACtC,OAAO,oBAAoB,IAAI;AAGrC;;;;;;AAOA,IAAa,8BACX,QACA,SACA,WACyC;CACzC,IACE,CAAC,gBAAgB,OAAO,WAAW,MAAM,KACzC,CAAC,gBAAgB,OAAO,SAAS,MAAM,KACvC,kCAAkC,MAAM,GAExC;CAGF,MAAM,QAAQ,QAAQ,OAAO,WAAW,OAAO,SAAS;CACxD,MAAM,MAAM,QAAQ,OAAO,SAAS,OAAO,OAAO;CAElD,IACE,SAAS,KAAK,MAAM,SAAS,SAAS,KAAK,KAC3C,SAAS,GAAG,MAAM,SAAS,SAAS,GAAG,GAEvC;CAGF,OAAO,SAAS,MAAM;EAAE;EAAO;CAAI,IAAI;AACzC"}
@@ -0,0 +1,26 @@
1
+ "use client"
2
+ /* */
3
+ import { listDateToDateTime } from "./dateRange.mjs";
4
+ import { DateFormatter } from "@internationalized/date";
5
+ // ../components-base/src/list/filter/formatDateRange.ts
6
+ /** The active filter chip's text: an end with time shows its time. */
7
+ var formatListDateRange = (value, locale, format) => {
8
+ const formatBound = (bound) => new DateFormatter(locale, {
9
+ year: "numeric",
10
+ month: "numeric",
11
+ day: "numeric",
12
+ ..."hour" in bound ? {
13
+ hour: "2-digit",
14
+ minute: "2-digit",
15
+ hourCycle: "h23"
16
+ } : {}
17
+ }).format(listDateToDateTime(bound).toJSDate());
18
+ const { start, end } = value;
19
+ if (start && end) return `${formatBound(start)} – ${formatBound(end)}`;
20
+ if (start) return format("dateRange.from", { date: formatBound(start) });
21
+ if (end) return format("dateRange.until", { date: formatBound(end) });
22
+ return "";
23
+ };
24
+ export { formatListDateRange };
25
+
26
+ //# sourceMappingURL=formatDateRange.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatDateRange.mjs","names":[],"sources":["../../../../../../../../components-base/src/list/filter/formatDateRange.ts"],"sourcesContent":["import { DateFormatter } from \"@internationalized/date\";\nimport {\n listDateToDateTime,\n type ListDateParts,\n type ListDateRange,\n} from \"./dateRange\";\n\n/** Formats the text of an open range (\"from {date}\", \"until {date}\"). */\nexport type ListDateRangeTextFormat = (\n key: \"dateRange.from\" | \"dateRange.until\",\n values: { date: string },\n) => string;\n\n/** The active filter chip's text: an end with time shows its time. */\nexport const formatListDateRange = (\n value: ListDateRange,\n locale: string,\n format: ListDateRangeTextFormat,\n): string => {\n const formatBound = (bound: ListDateParts) =>\n new DateFormatter(locale, {\n year: \"numeric\",\n month: \"numeric\",\n day: \"numeric\",\n // TimeField always shows 24 hours\n ...(\"hour\" in bound\n ? { hour: \"2-digit\", minute: \"2-digit\", hourCycle: \"h23\" }\n : {}),\n }).format(listDateToDateTime(bound).toJSDate());\n\n const { start, end } = value;\n\n if (start && end) {\n return `${formatBound(start)} – ${formatBound(end)}`;\n }\n if (start) {\n return format(\"dateRange.from\", { date: formatBound(start) });\n }\n if (end) {\n return format(\"dateRange.until\", { date: formatBound(end) });\n }\n return \"\";\n};\n"],"mappings":";;;;;;AAcA,IAAa,uBACX,OACA,QACA,WACW;CACX,MAAM,eAAe,UACnB,IAAI,cAAc,QAAQ;EACxB,MAAM;EACN,OAAO;EACP,KAAK;EAEL,GAAI,UAAU,QACV;GAAE,MAAM;GAAW,QAAQ;GAAW,WAAW;EAAM,IACvD,CAAC;CACP,CAAC,CAAC,CAAC,OAAO,mBAAmB,KAAK,CAAC,CAAC,SAAS,CAAC;CAEhD,MAAM,EAAE,OAAO,QAAQ;CAEvB,IAAI,SAAS,KACX,OAAO,GAAG,YAAY,KAAK,EAAE,KAAK,YAAY,GAAG;CAEnD,IAAI,OACF,OAAO,OAAO,kBAAkB,EAAE,MAAM,YAAY,KAAK,EAAE,CAAC;CAE9D,IAAI,KACF,OAAO,OAAO,mBAAmB,EAAE,MAAM,YAAY,GAAG,EAAE,CAAC;CAE7D,OAAO;AACT"}
@@ -1,6 +1,6 @@
1
1
  "use client"
2
2
  /* */
3
- //#region ../components-base/src/list/item/ListItem.ts
3
+ // ../components-base/src/list/item/ListItem.ts
4
4
  /** One row of the list, as the views see it: an id and the data behind it. */
5
5
  var ListItem = class ListItem {
6
6
  id;
@@ -15,7 +15,6 @@ var ListItem = class ListItem {
15
15
  return new ListItem(collection, row.id, row.original);
16
16
  }
17
17
  };
18
- //#endregion
19
18
  export { ListItem };
20
19
 
21
20
  //# sourceMappingURL=ListItem.mjs.map