@mittwald/flow-react-components 0.2.0-alpha.567 → 0.2.0-alpha.569

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 (268) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/assets/doc-properties.json +2065 -878
  3. package/dist/css/all.css +1 -1
  4. package/dist/js/components/src/components/AccentBox/AccentBox.mjs +22 -21
  5. package/dist/js/components/src/components/AccentBox/AccentBox.mjs.map +1 -1
  6. package/dist/js/components/src/components/ActionGroup/ActionGroup.mjs +37 -31
  7. package/dist/js/components/src/components/ActionGroup/ActionGroup.mjs.map +1 -1
  8. package/dist/js/components/src/components/Align/Align.mjs +22 -16
  9. package/dist/js/components/src/components/Align/Align.mjs.map +1 -1
  10. package/dist/js/components/src/components/Autocomplete/Autocomplete.mjs +61 -50
  11. package/dist/js/components/src/components/Autocomplete/Autocomplete.mjs.map +1 -1
  12. package/dist/js/components/src/components/BrowserOnly/BrowserOnly.mjs +7 -0
  13. package/dist/js/components/src/components/BrowserOnly/BrowserOnly.mjs.map +1 -1
  14. package/dist/js/components/src/components/CartesianChart/CartesianChart.mjs +5 -2
  15. package/dist/js/components/src/components/CartesianChart/CartesianChart.mjs.map +1 -1
  16. package/dist/js/components/src/components/Checkbox/Checkbox.mjs +4 -11
  17. package/dist/js/components/src/components/Checkbox/Checkbox.mjs.map +1 -1
  18. package/dist/js/components/src/components/CheckboxButton/CheckboxButton.mjs +2 -19
  19. package/dist/js/components/src/components/CheckboxButton/CheckboxButton.mjs.map +1 -1
  20. package/dist/js/components/src/components/CheckboxGroup/CheckboxGroup.mjs +4 -4
  21. package/dist/js/components/src/components/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  22. package/dist/js/components/src/components/ColumnLayout/ColumnLayout.mjs +64 -58
  23. package/dist/js/components/src/components/ColumnLayout/ColumnLayout.mjs.map +1 -1
  24. package/dist/js/components/src/components/ComboBox/ComboBox.mjs +11 -37
  25. package/dist/js/components/src/components/ComboBox/ComboBox.mjs.map +1 -1
  26. package/dist/js/components/src/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs +2 -1
  27. package/dist/js/components/src/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs.map +1 -1
  28. package/dist/js/components/src/components/DateInput/DateInput.mjs +20 -0
  29. package/dist/js/components/src/components/DateInput/DateInput.mjs.map +1 -0
  30. package/dist/js/components/src/components/DatePicker/DatePicker.mjs +1 -6
  31. package/dist/js/components/src/components/DatePicker/DatePicker.mjs.map +1 -1
  32. package/dist/js/components/src/components/DatePicker/components/DateInput/DateInput.mjs +3 -2
  33. package/dist/js/components/src/components/DatePicker/components/DateInput/DateInput.mjs.map +1 -1
  34. package/dist/js/components/src/components/DateRangePicker/DateRangePicker.mjs +1 -6
  35. package/dist/js/components/src/components/DateRangePicker/DateRangePicker.mjs.map +1 -1
  36. package/dist/js/components/src/components/DateRangePicker/components/DateRangeInput/DateRangeInput.mjs +4 -3
  37. package/dist/js/components/src/components/DateRangePicker/components/DateRangeInput/DateRangeInput.mjs.map +1 -1
  38. package/dist/js/components/src/components/FileField/FileField.mjs +4 -10
  39. package/dist/js/components/src/components/FileField/FileField.mjs.map +1 -1
  40. package/dist/js/components/src/components/Header/Header.mjs +20 -15
  41. package/dist/js/components/src/components/Header/Header.mjs.map +1 -1
  42. package/dist/js/components/src/components/IllustratedMessage/IllustratedMessage.mjs +1 -1
  43. package/dist/js/components/src/components/IllustratedMessage/IllustratedMessage.mjs.map +1 -1
  44. package/dist/js/components/src/components/LayoutCard/LayoutCard.mjs +16 -12
  45. package/dist/js/components/src/components/LayoutCard/LayoutCard.mjs.map +1 -1
  46. package/dist/js/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs +5 -2
  47. package/dist/js/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs.map +1 -1
  48. package/dist/js/components/src/components/List/components/Header/components/SearchField/SearchField.mjs +6 -0
  49. package/dist/js/components/src/components/List/components/Header/components/SearchField/SearchField.mjs.map +1 -1
  50. package/dist/js/components/src/components/List/hooks/useAriaAnnounceSearchState.mjs +5 -2
  51. package/dist/js/components/src/components/List/hooks/useAriaAnnounceSearchState.mjs.map +1 -1
  52. package/dist/js/components/src/components/Markdown/Markdown.mjs.map +1 -1
  53. package/dist/js/components/src/components/MarkdownEditor/MarkdownEditor.mjs +19 -24
  54. package/dist/js/components/src/components/MarkdownEditor/MarkdownEditor.mjs.map +1 -1
  55. package/dist/js/components/src/components/MarkdownEditor/lib/modifyValueByMarkdownSyntax.mjs +2 -2
  56. package/dist/js/components/src/components/MarkdownEditor/lib/modifyValueByMarkdownSyntax.mjs.map +1 -1
  57. package/dist/js/components/src/components/MarkdownEditor/lib/modifyValueByType.mjs +1 -1
  58. package/dist/js/components/src/components/MarkdownEditor/lib/modifyValueByType.mjs.map +1 -1
  59. package/dist/js/components/src/components/Modal/Modal.mjs +70 -76
  60. package/dist/js/components/src/components/Modal/Modal.mjs.map +1 -1
  61. package/dist/js/components/src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.mjs +5 -2
  62. package/dist/js/components/src/components/Modal/components/OffCanvasSuspenseFallback/OffCanvasSuspenseFallback.mjs.map +1 -1
  63. package/dist/js/components/src/components/Navigation/components/NavigationGroup/NavigationGroup.mjs +1 -4
  64. package/dist/js/components/src/components/Navigation/components/NavigationGroup/NavigationGroup.mjs.map +1 -1
  65. package/dist/js/components/src/components/NumberField/NumberField.mjs +4 -22
  66. package/dist/js/components/src/components/NumberField/NumberField.mjs.map +1 -1
  67. package/dist/js/components/src/components/Overlay/Overlay.mjs +2 -104
  68. package/dist/js/components/src/components/Overlay/Overlay.mjs.map +1 -1
  69. package/dist/js/components/src/components/Overlay/components/OverlaySuspenseFallback.mjs +5 -2
  70. package/dist/js/components/src/components/Overlay/components/OverlaySuspenseFallback.mjs.map +1 -1
  71. package/dist/js/components/src/components/PasswordCreationField/PasswordCreationField.mjs +10 -16
  72. package/dist/js/components/src/components/PasswordCreationField/PasswordCreationField.mjs.map +1 -1
  73. package/dist/js/components/src/components/Popover/Popover.mjs +2 -106
  74. package/dist/js/components/src/components/Popover/Popover.mjs.map +1 -1
  75. package/dist/js/components/src/components/RadioGroup/RadioGroup.mjs +1 -1
  76. package/dist/js/components/src/components/RadioGroup/RadioGroup.mjs.map +1 -1
  77. package/dist/js/components/src/components/SearchField/SearchField.mjs +6 -13
  78. package/dist/js/components/src/components/SearchField/SearchField.mjs.map +1 -1
  79. package/dist/js/components/src/components/Section/Section.mjs +41 -35
  80. package/dist/js/components/src/components/Section/Section.mjs.map +1 -1
  81. package/dist/js/components/src/components/SegmentedControl/SegmentedControl.mjs +3 -3
  82. package/dist/js/components/src/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  83. package/dist/js/components/src/components/Select/Select.mjs +5 -16
  84. package/dist/js/components/src/components/Select/Select.mjs.map +1 -1
  85. package/dist/js/components/src/components/Slider/Slider.mjs +2 -9
  86. package/dist/js/components/src/components/Slider/Slider.mjs.map +1 -1
  87. package/dist/js/components/src/components/Switch/Switch.mjs +6 -21
  88. package/dist/js/components/src/components/Switch/Switch.mjs.map +1 -1
  89. package/dist/js/components/src/components/TextArea/TextArea.mjs +13 -20
  90. package/dist/js/components/src/components/TextArea/TextArea.mjs.map +1 -1
  91. package/dist/js/components/src/components/TextField/TextField.mjs +4 -11
  92. package/dist/js/components/src/components/TextField/TextField.mjs.map +1 -1
  93. package/dist/js/components/src/components/TextFieldBase/TextFieldBase.mjs +9 -23
  94. package/dist/js/components/src/components/TextFieldBase/TextFieldBase.mjs.map +1 -1
  95. package/dist/js/components/src/components/TimeField/TimeField.mjs +3 -6
  96. package/dist/js/components/src/components/TimeField/TimeField.mjs.map +1 -1
  97. package/dist/js/components/src/components/Tooltip/Tooltip.mjs +6 -2
  98. package/dist/js/components/src/components/Tooltip/Tooltip.mjs.map +1 -1
  99. package/dist/js/components/src/integrations/react-hook-form/components/Field/Field.mjs +6 -7
  100. package/dist/js/components/src/integrations/react-hook-form/components/Field/Field.mjs.map +1 -1
  101. package/dist/js/components/src/integrations/react-hook-form/components/Form/Form.mjs +4 -6
  102. package/dist/js/components/src/integrations/react-hook-form/components/Form/Form.mjs.map +1 -1
  103. package/dist/js/components/src/integrations/react-hook-form/components/ResetButton/ResetButton.mjs +1 -3
  104. package/dist/js/components/src/integrations/react-hook-form/components/ResetButton/ResetButton.mjs.map +1 -1
  105. package/dist/js/components/src/integrations/react-hook-form/components/SubmitButton/SubmitButton.mjs +2 -2
  106. package/dist/js/components/src/lib/componentFactory/flowComponent.mjs +7 -23
  107. package/dist/js/components/src/lib/componentFactory/flowComponent.mjs.map +1 -1
  108. package/dist/js/components/src/lib/controller/overlay/OverlayController.mjs +6 -0
  109. package/dist/js/components/src/lib/controller/overlay/OverlayController.mjs.map +1 -1
  110. package/dist/js/components/src/lib/form/isFocused.mjs +8 -0
  111. package/dist/js/components/src/lib/form/isFocused.mjs.map +1 -0
  112. package/dist/js/components/src/lib/hooks/useFieldError.mjs +1 -2
  113. package/dist/js/components/src/lib/hooks/useFieldError.mjs.map +1 -1
  114. package/dist/js/components/src/lib/hooks/useProps.mjs +1 -2
  115. package/dist/js/components/src/lib/hooks/useProps.mjs.map +1 -1
  116. package/dist/js/components/src/lib/propsContext/components/ClearPropsContext.mjs +4 -10
  117. package/dist/js/components/src/lib/propsContext/components/ClearPropsContext.mjs.map +1 -1
  118. package/dist/js/components/src/lib/propsContext/components/ComponentPropsContextProvider.mjs +2 -2
  119. package/dist/js/components/src/lib/propsContext/components/ComponentPropsContextProvider.mjs.map +1 -1
  120. package/dist/js/components/src/lib/propsContext/components/PropsContextProvider.mjs +7 -22
  121. package/dist/js/components/src/lib/propsContext/components/PropsContextProvider.mjs.map +1 -1
  122. package/dist/js/components/src/lib/propsContext/mergePropsContext.mjs +22 -30
  123. package/dist/js/components/src/lib/propsContext/mergePropsContext.mjs.map +1 -1
  124. package/dist/js/components/src/lib/propsContext/nestedPropsContext/lib.mjs +27 -7
  125. package/dist/js/components/src/lib/propsContext/nestedPropsContext/lib.mjs.map +1 -1
  126. package/dist/js/components/src/lib/react/getPropsMerger.mjs +7 -2
  127. package/dist/js/components/src/lib/react/getPropsMerger.mjs.map +1 -1
  128. package/dist/js/components/src/lib/remote/eventHandlerContext.mjs +9 -0
  129. package/dist/js/components/src/lib/remote/eventHandlerContext.mjs.map +1 -0
  130. package/dist/js/components/src/lib/remote/useControlledHostValueProps.mjs +31 -0
  131. package/dist/js/components/src/lib/remote/useControlledHostValueProps.mjs.map +1 -0
  132. package/dist/js/components/src/lib/remote/useControlledRemoteValueProps.mjs +20 -0
  133. package/dist/js/components/src/lib/remote/useControlledRemoteValueProps.mjs.map +1 -0
  134. package/dist/js/default.mjs +2 -0
  135. package/dist/js/default.mjs.map +1 -1
  136. package/dist/js/flr-universal.mjs +2 -2
  137. package/dist/types/components/AccentBox/AccentBox.d.ts.map +1 -1
  138. package/dist/types/components/AccentBox/stories/Default.stories.d.ts +1 -0
  139. package/dist/types/components/AccentBox/stories/Default.stories.d.ts.map +1 -1
  140. package/dist/types/components/ActionGroup/ActionGroup.d.ts.map +1 -1
  141. package/dist/types/components/Align/Align.d.ts.map +1 -1
  142. package/dist/types/components/Autocomplete/Autocomplete.d.ts +2 -2
  143. package/dist/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  144. package/dist/types/components/Checkbox/Checkbox.d.ts +3 -4
  145. package/dist/types/components/Checkbox/Checkbox.d.ts.map +1 -1
  146. package/dist/types/components/CheckboxButton/CheckboxButton.d.ts +2 -4
  147. package/dist/types/components/CheckboxButton/CheckboxButton.d.ts.map +1 -1
  148. package/dist/types/components/ColumnLayout/ColumnLayout.d.ts.map +1 -1
  149. package/dist/types/components/ComboBox/ComboBox.d.ts +3 -6
  150. package/dist/types/components/ComboBox/ComboBox.d.ts.map +1 -1
  151. package/dist/types/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.d.ts.map +1 -1
  152. package/dist/types/components/DateInput/DateInput.d.ts +8 -0
  153. package/dist/types/components/DateInput/DateInput.d.ts.map +1 -0
  154. package/dist/types/components/DateInput/index.d.ts +3 -0
  155. package/dist/types/components/DateInput/index.d.ts.map +1 -0
  156. package/dist/types/components/DatePicker/DatePicker.d.ts +2 -2
  157. package/dist/types/components/DatePicker/DatePicker.d.ts.map +1 -1
  158. package/dist/types/components/DatePicker/components/DateInput/DateInput.d.ts +2 -1
  159. package/dist/types/components/DatePicker/components/DateInput/DateInput.d.ts.map +1 -1
  160. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +2 -2
  161. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  162. package/dist/types/components/DateRangePicker/components/DateRangeInput/DateRangeInput.d.ts +2 -1
  163. package/dist/types/components/DateRangePicker/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  164. package/dist/types/components/FileField/FileField.d.ts +1 -2
  165. package/dist/types/components/FileField/FileField.d.ts.map +1 -1
  166. package/dist/types/components/Header/Header.d.ts +2 -2
  167. package/dist/types/components/Header/Header.d.ts.map +1 -1
  168. package/dist/types/components/LayoutCard/LayoutCard.d.ts.map +1 -1
  169. package/dist/types/components/List/typedList.d.ts +2 -2
  170. package/dist/types/components/Markdown/Markdown.d.ts +2 -2
  171. package/dist/types/components/Markdown/Markdown.d.ts.map +1 -1
  172. package/dist/types/components/MarkdownEditor/MarkdownEditor.d.ts +3 -7
  173. package/dist/types/components/MarkdownEditor/MarkdownEditor.d.ts.map +1 -1
  174. package/dist/types/components/MarkdownEditor/lib/modifyValueByMarkdownSyntax.d.ts +2 -2
  175. package/dist/types/components/MarkdownEditor/lib/modifyValueByMarkdownSyntax.d.ts.map +1 -1
  176. package/dist/types/components/MarkdownEditor/lib/modifyValueByType.d.ts +1 -1
  177. package/dist/types/components/MarkdownEditor/lib/modifyValueByType.d.ts.map +1 -1
  178. package/dist/types/components/Message/stories/Default.stories.d.ts.map +1 -1
  179. package/dist/types/components/Modal/Modal.d.ts.map +1 -1
  180. package/dist/types/components/Navigation/components/NavigationGroup/NavigationGroup.d.ts.map +1 -1
  181. package/dist/types/components/NumberField/NumberField.d.ts +3 -4
  182. package/dist/types/components/NumberField/NumberField.d.ts.map +1 -1
  183. package/dist/types/components/Overlay/Overlay.d.ts.map +1 -1
  184. package/dist/types/components/PasswordCreationField/PasswordCreationField.d.ts.map +1 -1
  185. package/dist/types/components/Popover/Popover.d.ts +1 -1
  186. package/dist/types/components/Popover/Popover.d.ts.map +1 -1
  187. package/dist/types/components/SearchField/SearchField.d.ts.map +1 -1
  188. package/dist/types/components/Section/Section.d.ts.map +1 -1
  189. package/dist/types/components/SegmentedControl/SegmentedControl.d.ts +3 -3
  190. package/dist/types/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  191. package/dist/types/components/Select/Select.d.ts +2 -5
  192. package/dist/types/components/Select/Select.d.ts.map +1 -1
  193. package/dist/types/components/Slider/Slider.d.ts +3 -3
  194. package/dist/types/components/Slider/Slider.d.ts.map +1 -1
  195. package/dist/types/components/Switch/Switch.d.ts +2 -2
  196. package/dist/types/components/Switch/Switch.d.ts.map +1 -1
  197. package/dist/types/components/TextArea/TextArea.d.ts.map +1 -1
  198. package/dist/types/components/TextField/TextField.d.ts.map +1 -1
  199. package/dist/types/components/TextFieldBase/TextFieldBase.d.ts.map +1 -1
  200. package/dist/types/components/TimeField/TimeField.d.ts +3 -3
  201. package/dist/types/components/TimeField/TimeField.d.ts.map +1 -1
  202. package/dist/types/index/default.d.ts +2 -0
  203. package/dist/types/index/default.d.ts.map +1 -1
  204. package/dist/types/integrations/react-hook-form/components/Field/Field.d.ts.map +1 -1
  205. package/dist/types/integrations/react-hook-form/components/Form/Form.d.ts +2 -2
  206. package/dist/types/integrations/react-hook-form/components/Form/Form.d.ts.map +1 -1
  207. package/dist/types/integrations/react-hook-form/components/ResetButton/ResetButton.d.ts +1 -1
  208. package/dist/types/integrations/react-hook-form/components/ResetButton/ResetButton.d.ts.map +1 -1
  209. package/dist/types/integrations/react-hook-form/components/SubmitButton/SubmitButton.d.ts +1 -1
  210. package/dist/types/lib/componentFactory/flowComponent.d.ts +1 -1
  211. package/dist/types/lib/componentFactory/flowComponent.d.ts.map +1 -1
  212. package/dist/types/lib/controller/overlay/OverlayController.d.ts.map +1 -1
  213. package/dist/types/lib/form/isFocused.d.ts +2 -0
  214. package/dist/types/lib/form/isFocused.d.ts.map +1 -0
  215. package/dist/types/lib/hooks/useFieldError.d.ts.map +1 -1
  216. package/dist/types/lib/hooks/useProps.d.ts.map +1 -1
  217. package/dist/types/lib/propsContext/components/ClearPropsContext.d.ts +1 -5
  218. package/dist/types/lib/propsContext/components/ClearPropsContext.d.ts.map +1 -1
  219. package/dist/types/lib/propsContext/components/ComponentPropsContextProvider.d.ts +0 -2
  220. package/dist/types/lib/propsContext/components/ComponentPropsContextProvider.d.ts.map +1 -1
  221. package/dist/types/lib/propsContext/components/PropsContextProvider.d.ts +0 -3
  222. package/dist/types/lib/propsContext/components/PropsContextProvider.d.ts.map +1 -1
  223. package/dist/types/lib/propsContext/mergePropsContext.d.ts +1 -1
  224. package/dist/types/lib/propsContext/mergePropsContext.d.ts.map +1 -1
  225. package/dist/types/lib/propsContext/nestedPropsContext/lib.d.ts +3 -84
  226. package/dist/types/lib/propsContext/nestedPropsContext/lib.d.ts.map +1 -1
  227. package/dist/types/lib/propsContext/types.d.ts +1 -2
  228. package/dist/types/lib/propsContext/types.d.ts.map +1 -1
  229. package/dist/types/lib/react/getPropsMerger.d.ts.map +1 -1
  230. package/dist/types/lib/remote/eventHandlerContext.d.ts +11 -0
  231. package/dist/types/lib/remote/eventHandlerContext.d.ts.map +1 -0
  232. package/dist/types/lib/remote/types.d.ts +6 -0
  233. package/dist/types/lib/remote/types.d.ts.map +1 -0
  234. package/dist/types/lib/remote/useControlledHostValueProps.d.ts +18 -0
  235. package/dist/types/lib/remote/useControlledHostValueProps.d.ts.map +1 -0
  236. package/dist/types/lib/remote/useControlledRemoteValueProps.d.ts +11 -0
  237. package/dist/types/lib/remote/useControlledRemoteValueProps.d.ts.map +1 -0
  238. package/package.json +5 -4
  239. package/dist/js/components/src/lib/hooks/useManagedValue.mjs +0 -27
  240. package/dist/js/components/src/lib/hooks/useManagedValue.mjs.map +0 -1
  241. package/dist/js/components/src/lib/propsContext/inherit/PropsContextLevelProvider.mjs +0 -20
  242. package/dist/js/components/src/lib/propsContext/inherit/PropsContextLevelProvider.mjs.map +0 -1
  243. package/dist/js/components/src/lib/propsContext/inherit/lib.mjs +0 -39
  244. package/dist/js/components/src/lib/propsContext/inherit/lib.mjs.map +0 -1
  245. package/dist/js/components/src/lib/propsContext/inherit/propsContextLevel.mjs +0 -13
  246. package/dist/js/components/src/lib/propsContext/inherit/propsContextLevel.mjs.map +0 -1
  247. package/dist/js/components/src/lib/propsContext/inherit/types.mjs +0 -6
  248. package/dist/js/components/src/lib/propsContext/inherit/types.mjs.map +0 -1
  249. package/dist/js/components/src/lib/react/ReactAriaControlledValueFix.mjs +0 -65
  250. package/dist/js/components/src/lib/react/ReactAriaControlledValueFix.mjs.map +0 -1
  251. package/dist/js/components/src/lib/react/emitElementValueChange.mjs +0 -22
  252. package/dist/js/components/src/lib/react/emitElementValueChange.mjs.map +0 -1
  253. package/dist/types/lib/hooks/useManagedValue.d.ts +0 -13
  254. package/dist/types/lib/hooks/useManagedValue.d.ts.map +0 -1
  255. package/dist/types/lib/propsContext/inherit/PropsContextLevelProvider.d.ts +0 -8
  256. package/dist/types/lib/propsContext/inherit/PropsContextLevelProvider.d.ts.map +0 -1
  257. package/dist/types/lib/propsContext/inherit/lib.d.ts +0 -8
  258. package/dist/types/lib/propsContext/inherit/lib.d.ts.map +0 -1
  259. package/dist/types/lib/propsContext/inherit/propsContextLevel.d.ts +0 -4
  260. package/dist/types/lib/propsContext/inherit/propsContextLevel.d.ts.map +0 -1
  261. package/dist/types/lib/propsContext/inherit/types.d.ts +0 -6
  262. package/dist/types/lib/propsContext/inherit/types.d.ts.map +0 -1
  263. package/dist/types/lib/react/ReactAriaControlledValueFix.d.ts +0 -16
  264. package/dist/types/lib/react/ReactAriaControlledValueFix.d.ts.map +0 -1
  265. package/dist/types/lib/react/ReactAriaControlledValueFix.test.d.ts +0 -2
  266. package/dist/types/lib/react/ReactAriaControlledValueFix.test.d.ts.map +0 -1
  267. package/dist/types/lib/react/emitElementValueChange.d.ts +0 -6
  268. package/dist/types/lib/react/emitElementValueChange.d.ts.map +0 -1
@@ -8,11 +8,9 @@ import { PropsContextProvider } from '../../lib/propsContext/components/PropsCon
8
8
  import { Checkbox } from '../Checkbox/Checkbox.mjs';
9
9
  import { flowComponent } from '../../lib/componentFactory/flowComponent.mjs';
10
10
  import { useFieldComponent } from '../../lib/hooks/useFieldComponent.mjs';
11
- import { useObjectRef } from '@react-aria/utils';
12
- import { useMakeFocusable } from '../../lib/hooks/dom/useMakeFocusable.mjs';
13
11
 
14
12
  const CheckboxButton = flowComponent("CheckboxButton", (props) => {
15
- const { children, className, ref, inputRef, inputClassName, ...rest } = props;
13
+ const { children, className, inputClassName, ...rest } = props;
16
14
  const {
17
15
  fieldPropsContext,
18
16
  fieldProps,
@@ -28,28 +26,13 @@ const CheckboxButton = flowComponent("CheckboxButton", (props) => {
28
26
  },
29
27
  ...fieldPropsContext
30
28
  };
31
- const localCheckboxButtonRef = useObjectRef(ref);
32
- const localInputCheckboxRef = useObjectRef(inputRef);
33
- useMakeFocusable(
34
- localCheckboxButtonRef,
35
- () => localInputCheckboxRef.current?.focus()
36
- );
37
29
  return /* @__PURE__ */ jsxs(
38
30
  "div",
39
31
  {
40
32
  ...fieldProps,
41
33
  className: clsx(fieldProps.className, styles.checkboxButton, className),
42
- ref: localCheckboxButtonRef,
43
34
  children: [
44
- /* @__PURE__ */ jsx(FieldErrorCaptureContext, { children: /* @__PURE__ */ jsx(
45
- Checkbox,
46
- {
47
- ...rest,
48
- inputRef: localInputCheckboxRef,
49
- inputClassName: clsx(inputClassName, styles.input),
50
- children: /* @__PURE__ */ jsx(PropsContextProvider, { props: mergedPropsContext, children })
51
- }
52
- ) }),
35
+ /* @__PURE__ */ jsx(FieldErrorCaptureContext, { children: /* @__PURE__ */ jsx(Checkbox, { ...rest, inputClassName: clsx(inputClassName, styles.input), children: /* @__PURE__ */ jsx(PropsContextProvider, { props: mergedPropsContext, children }) }) }),
53
36
  /* @__PURE__ */ jsx(FieldErrorView, {})
54
37
  ]
55
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxButton.mjs","sources":["../../../../../../src/components/CheckboxButton/CheckboxButton.tsx"],"sourcesContent":["import styles from \"./CheckboxButton.module.scss\";\nimport clsx from \"clsx\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport type { CheckboxProps } from \"@/components/Checkbox\";\nimport { Checkbox } from \"@/components/Checkbox\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { useObjectRef } from \"@react-aria/utils\";\nimport { useMakeFocusable } from \"@/lib/hooks/dom/useMakeFocusable\";\nimport type { RefObject } from \"react\";\n\nexport interface CheckboxButtonProps extends CheckboxProps, FlowComponentProps {\n inputRef?: RefObject<HTMLInputElement | null>;\n}\n\n/** @flr-generate all */\nexport const CheckboxButton = flowComponent(\"CheckboxButton\", (props) => {\n const { children, className, ref, inputRef, inputClassName, ...rest } = props;\n\n const {\n fieldPropsContext,\n fieldProps,\n FieldErrorView,\n FieldErrorCaptureContext,\n } = useFieldComponent(props);\n\n const mergedPropsContext: PropsContext = {\n Text: {\n className: styles.label,\n },\n Content: {\n className: styles.content,\n },\n ...fieldPropsContext,\n };\n\n const localCheckboxButtonRef = useObjectRef(ref);\n const localInputCheckboxRef = useObjectRef(inputRef);\n\n useMakeFocusable(localCheckboxButtonRef, () =>\n localInputCheckboxRef.current?.focus(),\n );\n\n return (\n <div\n {...fieldProps}\n className={clsx(fieldProps.className, styles.checkboxButton, className)}\n ref={localCheckboxButtonRef}\n >\n <FieldErrorCaptureContext>\n <Checkbox\n {...rest}\n inputRef={localInputCheckboxRef}\n inputClassName={clsx(inputClassName, styles.input)}\n >\n <PropsContextProvider props={mergedPropsContext}>\n {children}\n </PropsContextProvider>\n </Checkbox>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </div>\n );\n});\n\nexport default CheckboxButton;\n"],"names":[],"mappings":";;;;;;;;;;;AAkBO,MAAM,cAAA,GAAiB,aAAA,CAAc,gBAAA,EAAkB,CAAC,KAAA,KAAU;AACvE,EAAA,MAAM,EAAE,UAAU,SAAA,EAAW,GAAA,EAAK,UAAU,cAAA,EAAgB,GAAG,MAAK,GAAI,KAAA;AAExE,EAAA,MAAM;AAAA,IACJ,iBAAA;AAAA,IACA,UAAA;AAAA,IACA,cAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,kBAAA,GAAmC;AAAA,IACvC,IAAA,EAAM;AAAA,MACJ,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,sBAAA,GAAyB,aAAa,GAAG,CAAA;AAC/C,EAAA,MAAM,qBAAA,GAAwB,aAAa,QAAQ,CAAA;AAEnD,EAAA,gBAAA;AAAA,IAAiB,sBAAA;AAAA,IAAwB,MACvC,qBAAA,CAAsB,OAAA,EAAS,KAAA;AAAM,GACvC;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,UAAA;AAAA,MACJ,WAAW,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,MAAA,CAAO,gBAAgB,SAAS,CAAA;AAAA,MACtE,GAAA,EAAK,sBAAA;AAAA,MAEL,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,wBAAA,EAAA,EACC,QAAA,kBAAA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACE,GAAG,IAAA;AAAA,YACJ,QAAA,EAAU,qBAAA;AAAA,YACV,cAAA,EAAgB,IAAA,CAAK,cAAA,EAAgB,MAAA,CAAO,KAAK,CAAA;AAAA,YAEjD,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,kBAAA,EAC1B,QAAA,EACH;AAAA;AAAA,SACF,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA;AAAA;AAAA,GAClB;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"CheckboxButton.mjs","sources":["../../../../../../src/components/CheckboxButton/CheckboxButton.tsx"],"sourcesContent":["import styles from \"./CheckboxButton.module.scss\";\nimport clsx from \"clsx\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport type { CheckboxProps } from \"@/components/Checkbox\";\nimport { Checkbox } from \"@/components/Checkbox\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface CheckboxButtonProps\n extends CheckboxProps,\n FlowComponentProps<HTMLInputElement> {}\n\n/** @flr-generate all */\nexport const CheckboxButton = flowComponent(\"CheckboxButton\", (props) => {\n const { children, className, inputClassName, ...rest } = props;\n\n const {\n fieldPropsContext,\n fieldProps,\n FieldErrorView,\n FieldErrorCaptureContext,\n } = useFieldComponent(props);\n\n const mergedPropsContext: PropsContext = {\n Text: {\n className: styles.label,\n },\n Content: {\n className: styles.content,\n },\n ...fieldPropsContext,\n };\n\n return (\n <div\n {...fieldProps}\n className={clsx(fieldProps.className, styles.checkboxButton, className)}\n >\n <FieldErrorCaptureContext>\n <Checkbox {...rest} inputClassName={clsx(inputClassName, styles.input)}>\n <PropsContextProvider props={mergedPropsContext}>\n {children}\n </PropsContextProvider>\n </Checkbox>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </div>\n );\n});\n\nexport default CheckboxButton;\n"],"names":[],"mappings":";;;;;;;;;AAeO,MAAM,cAAA,GAAiB,aAAA,CAAc,gBAAA,EAAkB,CAAC,KAAA,KAAU;AACvE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,cAAA,EAAgB,GAAG,MAAK,GAAI,KAAA;AAEzD,EAAA,MAAM;AAAA,IACJ,iBAAA;AAAA,IACA,UAAA;AAAA,IACA,cAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,kBAAA,GAAmC;AAAA,IACvC,IAAA,EAAM;AAAA,MACJ,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,OAAA,EAAS;AAAA,MACP,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACE,GAAG,UAAA;AAAA,MACJ,WAAW,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,MAAA,CAAO,gBAAgB,SAAS,CAAA;AAAA,MAEtE,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,4BACC,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAU,GAAG,IAAA,EAAM,gBAAgB,IAAA,CAAK,cAAA,EAAgB,MAAA,CAAO,KAAK,GACnE,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,OAAO,kBAAA,EAC1B,QAAA,EACH,GACF,CAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA;AAAA;AAAA,GAClB;AAEJ,CAAC;;;;"}
@@ -34,8 +34,8 @@ const CheckboxGroup = flowComponent("CheckboxGroup", (props) => {
34
34
  },
35
35
  ...fieldPropsContext
36
36
  };
37
- const localCheckboxGroupRef = useObjectRef(ref);
38
- useMakeFocusable(localCheckboxGroupRef);
37
+ const objectRef = useObjectRef(ref);
38
+ useMakeFocusable(objectRef);
39
39
  return /* @__PURE__ */ jsx(
40
40
  Aria.CheckboxGroup,
41
41
  {
@@ -43,9 +43,9 @@ const CheckboxGroup = flowComponent("CheckboxGroup", (props) => {
43
43
  ...fieldProps,
44
44
  isInvalid,
45
45
  className: clsx(fieldProps.className, className),
46
- ref: localCheckboxGroupRef,
46
+ ref: objectRef,
47
47
  children: /* @__PURE__ */ jsxs(TunnelProvider, { children: [
48
- /* @__PURE__ */ jsx(FieldErrorCaptureContext, { children: /* @__PURE__ */ jsxs(PropsContextProvider, { props: propsContext, clear: true, children: [
48
+ /* @__PURE__ */ jsx(FieldErrorCaptureContext, { children: /* @__PURE__ */ jsxs(PropsContextProvider, { props: propsContext, children: [
49
49
  children,
50
50
  /* @__PURE__ */ jsx(ColumnLayout, { s, m, l, className: styles.checkboxGroup, children: /* @__PURE__ */ jsx(TunnelExit, { id: "checkboxButtons" }) }),
51
51
  /* @__PURE__ */ jsx(
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxGroup.mjs","sources":["../../../../../../src/components/CheckboxGroup/CheckboxGroup.tsx"],"sourcesContent":["import type { ColumnLayoutProps } from \"@/components/ColumnLayout\";\nimport { ColumnLayout } from \"@/components/ColumnLayout\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport clsx from \"clsx\";\nimport type { PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"./CheckboxGroup.module.scss\";\nimport { useObjectRef } from \"@react-aria/utils\";\nimport { useMakeFocusable } from \"@/lib/hooks/dom/useMakeFocusable\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface CheckboxGroupProps\n extends PropsWithChildren<Omit<Aria.CheckboxGroupProps, \"children\">>,\n Pick<ColumnLayoutProps, \"s\" | \"m\" | \"l\">,\n FlowComponentProps {}\n\n/** @flr-generate all */\nexport const CheckboxGroup = flowComponent(\"CheckboxGroup\", (props) => {\n const { children, className, isInvalid, s, m, l, ref, ...rest } = props;\n\n const {\n FieldErrorView,\n fieldPropsContext,\n fieldProps,\n FieldErrorCaptureContext,\n } = useFieldComponent(props);\n\n const propsContext: PropsContext = {\n Checkbox: {\n isInvalid,\n tunnelId: \"checkboxes\",\n className: styles.checkbox,\n },\n CheckboxButton: {\n isInvalid,\n tunnelId: \"checkboxButtons\",\n className: styles.checkboxButton,\n },\n ...fieldPropsContext,\n };\n\n const localCheckboxGroupRef = useObjectRef(ref);\n useMakeFocusable(localCheckboxGroupRef);\n\n return (\n <Aria.CheckboxGroup\n {...rest}\n {...fieldProps}\n isInvalid={isInvalid}\n className={clsx(fieldProps.className, className)}\n ref={localCheckboxGroupRef}\n >\n <TunnelProvider>\n <FieldErrorCaptureContext>\n <PropsContextProvider props={propsContext} clear>\n {children}\n <ColumnLayout s={s} m={m} l={l} className={styles.checkboxGroup}>\n <TunnelExit id=\"checkboxButtons\" />\n </ColumnLayout>\n\n <ColumnLayout\n s={s ?? [1]}\n m={m ?? [1]}\n l={l ?? [1]}\n rowGap=\"s\"\n className={styles.checkboxGroup}\n >\n <TunnelExit id=\"checkboxes\" />\n </ColumnLayout>\n </PropsContextProvider>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </TunnelProvider>\n </Aria.CheckboxGroup>\n );\n});\n\nexport default CheckboxGroup;\n"],"names":[],"mappings":";;;;;;;;;;;;;AAqBO,MAAM,aAAA,GAAgB,aAAA,CAAc,eAAA,EAAiB,CAAC,KAAA,KAAU;AACrE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,SAAA,EAAW,CAAA,EAAG,GAAG,CAAA,EAAG,GAAA,EAAK,GAAG,IAAA,EAAK,GAAI,KAAA;AAElE,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,iBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,QAAA,EAAU;AAAA,MACR,SAAA;AAAA,MACA,QAAA,EAAU,YAAA;AAAA,MACV,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,SAAA;AAAA,MACA,QAAA,EAAU,iBAAA;AAAA,MACV,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,qBAAA,GAAwB,aAAa,GAAG,CAAA;AAC9C,EAAA,gBAAA,CAAiB,qBAAqB,CAAA;AAEtC,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA,CAAK,aAAA;AAAA,IAAL;AAAA,MACE,GAAG,IAAA;AAAA,MACH,GAAG,UAAA;AAAA,MACJ,SAAA;AAAA,MACA,SAAA,EAAW,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,SAAS,CAAA;AAAA,MAC/C,GAAA,EAAK,qBAAA;AAAA,MAEL,+BAAC,cAAA,EAAA,EACC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,4BACC,QAAA,kBAAA,IAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAAc,OAAK,IAAA,EAC7C,QAAA,EAAA;AAAA,UAAA,QAAA;AAAA,0BACD,GAAA,CAAC,YAAA,EAAA,EAAa,CAAA,EAAM,CAAA,EAAM,CAAA,EAAM,SAAA,EAAW,MAAA,CAAO,aAAA,EAChD,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,iBAAA,EAAkB,CAAA,EACnC,CAAA;AAAA,0BAEA,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,CAAA,EAAG,CAAA,IAAK,CAAC,CAAC,CAAA;AAAA,cACV,CAAA,EAAG,CAAA,IAAK,CAAC,CAAC,CAAA;AAAA,cACV,CAAA,EAAG,CAAA,IAAK,CAAC,CAAC,CAAA;AAAA,cACV,MAAA,EAAO,GAAA;AAAA,cACP,WAAW,MAAA,CAAO,aAAA;AAAA,cAElB,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,YAAA,EAAa;AAAA;AAAA;AAC9B,SAAA,EACF,CAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA,OAAA,EAClB;AAAA;AAAA,GACF;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"CheckboxGroup.mjs","sources":["../../../../../../src/components/CheckboxGroup/CheckboxGroup.tsx"],"sourcesContent":["import type { ColumnLayoutProps } from \"@/components/ColumnLayout\";\nimport { ColumnLayout } from \"@/components/ColumnLayout\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport clsx from \"clsx\";\nimport type { PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"./CheckboxGroup.module.scss\";\nimport { useObjectRef } from \"@react-aria/utils\";\nimport { useMakeFocusable } from \"@/lib/hooks/dom/useMakeFocusable\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface CheckboxGroupProps\n extends PropsWithChildren<Omit<Aria.CheckboxGroupProps, \"children\">>,\n Pick<ColumnLayoutProps, \"s\" | \"m\" | \"l\">,\n FlowComponentProps {}\n\n/** @flr-generate all */\nexport const CheckboxGroup = flowComponent(\"CheckboxGroup\", (props) => {\n const { children, className, isInvalid, s, m, l, ref, ...rest } = props;\n\n const {\n FieldErrorView,\n fieldPropsContext,\n fieldProps,\n FieldErrorCaptureContext,\n } = useFieldComponent(props);\n\n const propsContext: PropsContext = {\n Checkbox: {\n isInvalid,\n tunnelId: \"checkboxes\",\n className: styles.checkbox,\n },\n CheckboxButton: {\n isInvalid,\n tunnelId: \"checkboxButtons\",\n className: styles.checkboxButton,\n },\n ...fieldPropsContext,\n };\n\n const objectRef = useObjectRef(ref);\n useMakeFocusable(objectRef);\n\n return (\n <Aria.CheckboxGroup\n {...rest}\n {...fieldProps}\n isInvalid={isInvalid}\n className={clsx(fieldProps.className, className)}\n ref={objectRef}\n >\n <TunnelProvider>\n <FieldErrorCaptureContext>\n <PropsContextProvider props={propsContext}>\n {children}\n <ColumnLayout s={s} m={m} l={l} className={styles.checkboxGroup}>\n <TunnelExit id=\"checkboxButtons\" />\n </ColumnLayout>\n\n <ColumnLayout\n s={s ?? [1]}\n m={m ?? [1]}\n l={l ?? [1]}\n rowGap=\"s\"\n className={styles.checkboxGroup}\n >\n <TunnelExit id=\"checkboxes\" />\n </ColumnLayout>\n </PropsContextProvider>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </TunnelProvider>\n </Aria.CheckboxGroup>\n );\n});\n\nexport default CheckboxGroup;\n"],"names":[],"mappings":";;;;;;;;;;;;;AAqBO,MAAM,aAAA,GAAgB,aAAA,CAAc,eAAA,EAAiB,CAAC,KAAA,KAAU;AACrE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,SAAA,EAAW,CAAA,EAAG,GAAG,CAAA,EAAG,GAAA,EAAK,GAAG,IAAA,EAAK,GAAI,KAAA;AAElE,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,iBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,QAAA,EAAU;AAAA,MACR,SAAA;AAAA,MACA,QAAA,EAAU,YAAA;AAAA,MACV,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,SAAA;AAAA,MACA,QAAA,EAAU,iBAAA;AAAA,MACV,WAAW,MAAA,CAAO;AAAA,KACpB;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,SAAA,GAAY,aAAa,GAAG,CAAA;AAClC,EAAA,gBAAA,CAAiB,SAAS,CAAA;AAE1B,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA,CAAK,aAAA;AAAA,IAAL;AAAA,MACE,GAAG,IAAA;AAAA,MACH,GAAG,UAAA;AAAA,MACJ,SAAA;AAAA,MACA,SAAA,EAAW,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,SAAS,CAAA;AAAA,MAC/C,GAAA,EAAK,SAAA;AAAA,MAEL,+BAAC,cAAA,EAAA,EACC,QAAA,EAAA;AAAA,wBAAA,GAAA,CAAC,wBAAA,EAAA,EACC,QAAA,kBAAA,IAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,QAAA,EAAA;AAAA,UAAA,QAAA;AAAA,0BACD,GAAA,CAAC,YAAA,EAAA,EAAa,CAAA,EAAM,CAAA,EAAM,CAAA,EAAM,SAAA,EAAW,MAAA,CAAO,aAAA,EAChD,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,iBAAA,EAAkB,CAAA,EACnC,CAAA;AAAA,0BAEA,GAAA;AAAA,YAAC,YAAA;AAAA,YAAA;AAAA,cACC,CAAA,EAAG,CAAA,IAAK,CAAC,CAAC,CAAA;AAAA,cACV,CAAA,EAAG,CAAA,IAAK,CAAC,CAAC,CAAA;AAAA,cACV,CAAA,EAAG,CAAA,IAAK,CAAC,CAAC,CAAA;AAAA,cACV,MAAA,EAAO,GAAA;AAAA,cACP,WAAW,MAAA,CAAO,aAAA;AAAA,cAElB,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,YAAA,EAAa;AAAA;AAAA;AAC9B,SAAA,EACF,CAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA,OAAA,EAClB;AAAA;AAAA,GACF;AAEJ,CAAC;;;;"}
@@ -8,65 +8,71 @@ import '../../lib/propsContext/propsContext.mjs';
8
8
  import { PropsContextProvider } from '../../lib/propsContext/components/PropsContextProvider.mjs';
9
9
  import { flowComponent } from '../../lib/componentFactory/flowComponent.mjs';
10
10
 
11
- const ColumnLayout = flowComponent("ColumnLayout", (props) => {
12
- const {
13
- children,
14
- className,
15
- s,
16
- m,
17
- l,
18
- gap = "m",
19
- rowGap = gap,
20
- columnGap = gap,
21
- elementType = "div",
22
- "aria-label": ariaLabel,
23
- ref,
24
- style: styleFromProps
25
- } = props;
26
- let elementClassName = styles.columnLayout;
27
- s?.map((v, i) => {
28
- if (v === null) {
29
- elementClassName = clsx(elementClassName, styles[`hide-s-${i + 1}`]);
30
- }
31
- });
32
- m?.map((v, i) => {
33
- if (v === null) {
34
- elementClassName = clsx(elementClassName, styles[`hide-m-${i + 1}`]);
35
- }
36
- });
37
- l?.map((v, i) => {
38
- if (v === null) {
39
- elementClassName = clsx(elementClassName, styles[`hide-l-${i + 1}`]);
40
- }
41
- });
42
- const columnsS = s ? getColumns(s) : "1fr";
43
- const columnsM = m ? getColumns(m) : s ? columnsS : "1fr 1fr";
44
- const columnsL = l ? getColumns(l) : m || s ? columnsM : "1fr 1fr 1fr";
45
- const style = {
46
- ...styleFromProps,
47
- "--column-layout--columns-s": columnsS,
48
- "--column-layout--columns-m": columnsM,
49
- "--column-layout--columns-l": columnsL,
50
- "--column-layout--row-gap": `var(--column-layout--gap--${rowGap})`,
51
- "--column-layout--column-gap": `var(--column-layout--gap--${columnGap})`
52
- };
53
- const rootClassName = clsx(styles.columnLayoutContainer, className);
54
- const Element = elementType;
55
- const propsContext = {
56
- Section: {
57
- hideSeparator: true
58
- }
59
- };
60
- return /* @__PURE__ */ jsx("div", { className: rootClassName, style, children: /* @__PURE__ */ jsx(
61
- Element,
62
- {
63
- ref,
11
+ const ColumnLayout = flowComponent(
12
+ "ColumnLayout",
13
+ (props) => {
14
+ const {
15
+ children,
16
+ className,
17
+ s,
18
+ m,
19
+ l,
20
+ gap = "m",
21
+ rowGap = gap,
22
+ columnGap = gap,
23
+ elementType = "div",
64
24
  "aria-label": ariaLabel,
65
- className: elementClassName,
66
- children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, children })
67
- }
68
- ) });
69
- });
25
+ ref,
26
+ style: styleFromProps
27
+ } = props;
28
+ let elementClassName = styles.columnLayout;
29
+ s?.map((v, i) => {
30
+ if (v === null) {
31
+ elementClassName = clsx(elementClassName, styles[`hide-s-${i + 1}`]);
32
+ }
33
+ });
34
+ m?.map((v, i) => {
35
+ if (v === null) {
36
+ elementClassName = clsx(elementClassName, styles[`hide-m-${i + 1}`]);
37
+ }
38
+ });
39
+ l?.map((v, i) => {
40
+ if (v === null) {
41
+ elementClassName = clsx(elementClassName, styles[`hide-l-${i + 1}`]);
42
+ }
43
+ });
44
+ const columnsS = s ? getColumns(s) : "1fr";
45
+ const columnsM = m ? getColumns(m) : s ? columnsS : "1fr 1fr";
46
+ const columnsL = l ? getColumns(l) : m || s ? columnsM : "1fr 1fr 1fr";
47
+ const style = {
48
+ ...styleFromProps,
49
+ "--column-layout--columns-s": columnsS,
50
+ "--column-layout--columns-m": columnsM,
51
+ "--column-layout--columns-l": columnsL,
52
+ "--column-layout--row-gap": `var(--column-layout--gap--${rowGap})`,
53
+ "--column-layout--column-gap": `var(--column-layout--gap--${columnGap})`
54
+ };
55
+ const rootClassName = clsx(styles.columnLayoutContainer, className);
56
+ const Element = elementType;
57
+ const propsContext = {
58
+ Section: {
59
+ hideSeparator: true
60
+ }
61
+ };
62
+ return /* @__PURE__ */ jsx("div", { className: rootClassName, style, children: /* @__PURE__ */ jsx(
63
+ Element,
64
+ {
65
+ ref,
66
+ "aria-label": ariaLabel,
67
+ className: elementClassName,
68
+ children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, children })
69
+ }
70
+ ) });
71
+ },
72
+ {
73
+ type: "layout"
74
+ }
75
+ );
70
76
 
71
77
  export { ColumnLayout, ColumnLayout as default };
72
78
  //# sourceMappingURL=ColumnLayout.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnLayout.mjs","sources":["../../../../../../src/components/ColumnLayout/ColumnLayout.tsx"],"sourcesContent":["import type { CSSProperties, PropsWithChildren } from \"react\";\nimport styles from \"./ColumnLayout.module.scss\";\nimport { getColumns } from \"./lib/getColumns\";\nimport clsx from \"clsx\";\nimport type {\n PropsWithClassName,\n PropsWithElementType,\n} from \"@/lib/types/props\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\n\ntype GapSize = \"s\" | \"m\" | \"l\" | \"xl\";\n\nexport interface ColumnLayoutProps<\n T extends keyof HTMLElementTagNameMap = \"div\" | \"ul\",\n> extends PropsWithChildren,\n PropsWithElementType<T>,\n PropsWithClassName,\n FlowComponentProps<HTMLElementTagNameMap[T]> {\n /** Column layout for container size s. */\n s?: (number | null)[];\n /** Column layout for container size m. */\n m?: (number | null)[];\n /** Column layout for container size l. */\n l?: (number | null)[];\n /**\n * Size of the row and column gap between the content blocks inside the column\n * layout.\n *\n * @default \"m\"\n */\n gap?: GapSize;\n /** Size of the row gap between the content blocks inside the column layout. */\n rowGap?: GapSize;\n /** Size of the column gap between the content blocks inside the column layout. */\n columnGap?: GapSize;\n}\n\n/** @flr-generate all */\nexport const ColumnLayout = flowComponent(\"ColumnLayout\", (props) => {\n const {\n children,\n className,\n s,\n m,\n l,\n gap = \"m\",\n rowGap = gap,\n columnGap = gap,\n elementType = \"div\",\n \"aria-label\": ariaLabel,\n ref,\n style: styleFromProps,\n } = props;\n\n let elementClassName = styles.columnLayout;\n\n s?.map((v, i) => {\n if (v === null) {\n elementClassName = clsx(elementClassName, styles[`hide-s-${i + 1}`]);\n }\n });\n m?.map((v, i) => {\n if (v === null) {\n elementClassName = clsx(elementClassName, styles[`hide-m-${i + 1}`]);\n }\n });\n l?.map((v, i) => {\n if (v === null) {\n elementClassName = clsx(elementClassName, styles[`hide-l-${i + 1}`]);\n }\n });\n\n const columnsS = s ? getColumns(s) : \"1fr\";\n const columnsM = m ? getColumns(m) : s ? columnsS : \"1fr 1fr\";\n const columnsL = l ? getColumns(l) : m || s ? columnsM : \"1fr 1fr 1fr\";\n\n const style = {\n ...styleFromProps,\n \"--column-layout--columns-s\": columnsS,\n \"--column-layout--columns-m\": columnsM,\n \"--column-layout--columns-l\": columnsL,\n \"--column-layout--row-gap\": `var(--column-layout--gap--${rowGap})`,\n \"--column-layout--column-gap\": `var(--column-layout--gap--${columnGap})`,\n } as CSSProperties;\n\n const rootClassName = clsx(styles.columnLayoutContainer, className);\n\n const Element = elementType;\n\n const propsContext: PropsContext = {\n Section: {\n hideSeparator: true,\n },\n };\n\n return (\n <div className={rootClassName} style={style}>\n <Element\n ref={ref as never}\n aria-label={ariaLabel}\n className={elementClassName}\n >\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Element>\n </div>\n );\n});\n\nexport default ColumnLayout;\n"],"names":[],"mappings":";;;;;;;;AA2CO,MAAM,YAAA,GAAe,aAAA,CAAc,cAAA,EAAgB,CAAC,KAAA,KAAU;AACnE,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,CAAA;AAAA,IACA,CAAA;AAAA,IACA,CAAA;AAAA,IACA,GAAA,GAAM,GAAA;AAAA,IACN,MAAA,GAAS,GAAA;AAAA,IACT,SAAA,GAAY,GAAA;AAAA,IACZ,WAAA,GAAc,KAAA;AAAA,IACd,YAAA,EAAc,SAAA;AAAA,IACd,GAAA;AAAA,IACA,KAAA,EAAO;AAAA,GACT,GAAI,KAAA;AAEJ,EAAA,IAAI,mBAAmB,MAAA,CAAO,YAAA;AAE9B,EAAA,CAAA,EAAG,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AACf,IAAA,IAAI,MAAM,IAAA,EAAM;AACd,MAAA,gBAAA,GAAmB,KAAK,gBAAA,EAAkB,MAAA,CAAO,UAAU,CAAA,GAAI,CAAC,EAAE,CAAC,CAAA;AAAA,IACrE;AAAA,EACF,CAAC,CAAA;AACD,EAAA,CAAA,EAAG,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AACf,IAAA,IAAI,MAAM,IAAA,EAAM;AACd,MAAA,gBAAA,GAAmB,KAAK,gBAAA,EAAkB,MAAA,CAAO,UAAU,CAAA,GAAI,CAAC,EAAE,CAAC,CAAA;AAAA,IACrE;AAAA,EACF,CAAC,CAAA;AACD,EAAA,CAAA,EAAG,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AACf,IAAA,IAAI,MAAM,IAAA,EAAM;AACd,MAAA,gBAAA,GAAmB,KAAK,gBAAA,EAAkB,MAAA,CAAO,UAAU,CAAA,GAAI,CAAC,EAAE,CAAC,CAAA;AAAA,IACrE;AAAA,EACF,CAAC,CAAA;AAED,EAAA,MAAM,QAAA,GAAW,CAAA,GAAI,UAAA,CAAW,CAAC,CAAA,GAAI,KAAA;AACrC,EAAA,MAAM,WAAW,CAAA,GAAI,UAAA,CAAW,CAAC,CAAA,GAAI,IAAI,QAAA,GAAW,SAAA;AACpD,EAAA,MAAM,WAAW,CAAA,GAAI,UAAA,CAAW,CAAC,CAAA,GAAI,CAAA,IAAK,IAAI,QAAA,GAAW,aAAA;AAEzD,EAAA,MAAM,KAAA,GAAQ;AAAA,IACZ,GAAG,cAAA;AAAA,IACH,4BAAA,EAA8B,QAAA;AAAA,IAC9B,4BAAA,EAA8B,QAAA;AAAA,IAC9B,4BAAA,EAA8B,QAAA;AAAA,IAC9B,0BAAA,EAA4B,6BAA6B,MAAM,CAAA,CAAA,CAAA;AAAA,IAC/D,6BAAA,EAA+B,6BAA6B,SAAS,CAAA,CAAA;AAAA,GACvE;AAEA,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,MAAA,CAAO,qBAAA,EAAuB,SAAS,CAAA;AAElE,EAAA,MAAM,OAAA,GAAU,WAAA;AAEhB,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,OAAA,EAAS;AAAA,MACP,aAAA,EAAe;AAAA;AACjB,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,aAAA,EAAe,KAAA,EAC7B,QAAA,kBAAA,GAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,GAAA;AAAA,MACA,YAAA,EAAY,SAAA;AAAA,MACZ,SAAA,EAAW,gBAAA;AAAA,MAEX,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,QAAA,EACH;AAAA;AAAA,GACF,EACF,CAAA;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"ColumnLayout.mjs","sources":["../../../../../../src/components/ColumnLayout/ColumnLayout.tsx"],"sourcesContent":["import type { CSSProperties, PropsWithChildren } from \"react\";\nimport styles from \"./ColumnLayout.module.scss\";\nimport { getColumns } from \"./lib/getColumns\";\nimport clsx from \"clsx\";\nimport type {\n PropsWithClassName,\n PropsWithElementType,\n} from \"@/lib/types/props\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\n\ntype GapSize = \"s\" | \"m\" | \"l\" | \"xl\";\n\nexport interface ColumnLayoutProps<\n T extends keyof HTMLElementTagNameMap = \"div\" | \"ul\",\n> extends PropsWithChildren,\n PropsWithElementType<T>,\n PropsWithClassName,\n FlowComponentProps<HTMLElementTagNameMap[T]> {\n /** Column layout for container size s. */\n s?: (number | null)[];\n /** Column layout for container size m. */\n m?: (number | null)[];\n /** Column layout for container size l. */\n l?: (number | null)[];\n /**\n * Size of the row and column gap between the content blocks inside the column\n * layout.\n *\n * @default \"m\"\n */\n gap?: GapSize;\n /** Size of the row gap between the content blocks inside the column layout. */\n rowGap?: GapSize;\n /** Size of the column gap between the content blocks inside the column layout. */\n columnGap?: GapSize;\n}\n\n/** @flr-generate all */\nexport const ColumnLayout = flowComponent(\n \"ColumnLayout\",\n (props) => {\n const {\n children,\n className,\n s,\n m,\n l,\n gap = \"m\",\n rowGap = gap,\n columnGap = gap,\n elementType = \"div\",\n \"aria-label\": ariaLabel,\n ref,\n style: styleFromProps,\n } = props;\n\n let elementClassName = styles.columnLayout;\n\n s?.map((v, i) => {\n if (v === null) {\n elementClassName = clsx(elementClassName, styles[`hide-s-${i + 1}`]);\n }\n });\n m?.map((v, i) => {\n if (v === null) {\n elementClassName = clsx(elementClassName, styles[`hide-m-${i + 1}`]);\n }\n });\n l?.map((v, i) => {\n if (v === null) {\n elementClassName = clsx(elementClassName, styles[`hide-l-${i + 1}`]);\n }\n });\n\n const columnsS = s ? getColumns(s) : \"1fr\";\n const columnsM = m ? getColumns(m) : s ? columnsS : \"1fr 1fr\";\n const columnsL = l ? getColumns(l) : m || s ? columnsM : \"1fr 1fr 1fr\";\n\n const style = {\n ...styleFromProps,\n \"--column-layout--columns-s\": columnsS,\n \"--column-layout--columns-m\": columnsM,\n \"--column-layout--columns-l\": columnsL,\n \"--column-layout--row-gap\": `var(--column-layout--gap--${rowGap})`,\n \"--column-layout--column-gap\": `var(--column-layout--gap--${columnGap})`,\n } as CSSProperties;\n\n const rootClassName = clsx(styles.columnLayoutContainer, className);\n\n const Element = elementType;\n\n const propsContext: PropsContext = {\n Section: {\n hideSeparator: true,\n },\n };\n\n return (\n <div className={rootClassName} style={style}>\n <Element\n ref={ref as never}\n aria-label={ariaLabel}\n className={elementClassName}\n >\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Element>\n </div>\n );\n },\n {\n type: \"layout\",\n },\n);\n\nexport default ColumnLayout;\n"],"names":[],"mappings":";;;;;;;;AA2CO,MAAM,YAAA,GAAe,aAAA;AAAA,EAC1B,cAAA;AAAA,EACA,CAAC,KAAA,KAAU;AACT,IAAA,MAAM;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,CAAA;AAAA,MACA,CAAA;AAAA,MACA,CAAA;AAAA,MACA,GAAA,GAAM,GAAA;AAAA,MACN,MAAA,GAAS,GAAA;AAAA,MACT,SAAA,GAAY,GAAA;AAAA,MACZ,WAAA,GAAc,KAAA;AAAA,MACd,YAAA,EAAc,SAAA;AAAA,MACd,GAAA;AAAA,MACA,KAAA,EAAO;AAAA,KACT,GAAI,KAAA;AAEJ,IAAA,IAAI,mBAAmB,MAAA,CAAO,YAAA;AAE9B,IAAA,CAAA,EAAG,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AACf,MAAA,IAAI,MAAM,IAAA,EAAM;AACd,QAAA,gBAAA,GAAmB,KAAK,gBAAA,EAAkB,MAAA,CAAO,UAAU,CAAA,GAAI,CAAC,EAAE,CAAC,CAAA;AAAA,MACrE;AAAA,IACF,CAAC,CAAA;AACD,IAAA,CAAA,EAAG,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AACf,MAAA,IAAI,MAAM,IAAA,EAAM;AACd,QAAA,gBAAA,GAAmB,KAAK,gBAAA,EAAkB,MAAA,CAAO,UAAU,CAAA,GAAI,CAAC,EAAE,CAAC,CAAA;AAAA,MACrE;AAAA,IACF,CAAC,CAAA;AACD,IAAA,CAAA,EAAG,GAAA,CAAI,CAAC,CAAA,EAAG,CAAA,KAAM;AACf,MAAA,IAAI,MAAM,IAAA,EAAM;AACd,QAAA,gBAAA,GAAmB,KAAK,gBAAA,EAAkB,MAAA,CAAO,UAAU,CAAA,GAAI,CAAC,EAAE,CAAC,CAAA;AAAA,MACrE;AAAA,IACF,CAAC,CAAA;AAED,IAAA,MAAM,QAAA,GAAW,CAAA,GAAI,UAAA,CAAW,CAAC,CAAA,GAAI,KAAA;AACrC,IAAA,MAAM,WAAW,CAAA,GAAI,UAAA,CAAW,CAAC,CAAA,GAAI,IAAI,QAAA,GAAW,SAAA;AACpD,IAAA,MAAM,WAAW,CAAA,GAAI,UAAA,CAAW,CAAC,CAAA,GAAI,CAAA,IAAK,IAAI,QAAA,GAAW,aAAA;AAEzD,IAAA,MAAM,KAAA,GAAQ;AAAA,MACZ,GAAG,cAAA;AAAA,MACH,4BAAA,EAA8B,QAAA;AAAA,MAC9B,4BAAA,EAA8B,QAAA;AAAA,MAC9B,4BAAA,EAA8B,QAAA;AAAA,MAC9B,0BAAA,EAA4B,6BAA6B,MAAM,CAAA,CAAA,CAAA;AAAA,MAC/D,6BAAA,EAA+B,6BAA6B,SAAS,CAAA,CAAA;AAAA,KACvE;AAEA,IAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,MAAA,CAAO,qBAAA,EAAuB,SAAS,CAAA;AAElE,IAAA,MAAM,OAAA,GAAU,WAAA;AAEhB,IAAA,MAAM,YAAA,GAA6B;AAAA,MACjC,OAAA,EAAS;AAAA,QACP,aAAA,EAAe;AAAA;AACjB,KACF;AAEA,IAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,aAAA,EAAe,KAAA,EAC7B,QAAA,kBAAA,GAAA;AAAA,MAAC,OAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,YAAA,EAAY,SAAA;AAAA,QACZ,SAAA,EAAW,gBAAA;AAAA,QAEX,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,QAAA,EACH;AAAA;AAAA,KACF,EACF,CAAA;AAAA,EAEJ,CAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA;AAEV;;;;"}
@@ -19,24 +19,17 @@ import { useLocalizedStringFormatter } from 'react-aria';
19
19
  import { flowComponent } from '../../lib/componentFactory/flowComponent.mjs';
20
20
  import 'mobx';
21
21
  import { useOverlayController } from '../../lib/controller/overlay/useOverlayController.mjs';
22
- import { useObjectRef } from '@react-aria/utils';
23
- import { useMakeFocusable } from '../../lib/hooks/dom/useMakeFocusable.mjs';
24
22
  import { useFieldComponent } from '../../lib/hooks/useFieldComponent.mjs';
25
- import { ReactAriaControlledValueFix } from '../../lib/react/ReactAriaControlledValueFix.mjs';
26
23
 
27
24
  const ComboBox = flowComponent("ComboBox", (props) => {
28
25
  const {
29
26
  children,
30
27
  className,
31
28
  menuTrigger = "focus",
32
- onChange = () => {
33
- },
34
- onSelectionChange = () => {
35
- },
36
- controller: controllerFromProps,
29
+ onChange,
30
+ onSelectionChange,
37
31
  placeholder,
38
32
  ref,
39
- inputRef,
40
33
  renderEmptyState,
41
34
  ...rest
42
35
  } = props;
@@ -54,21 +47,15 @@ const ComboBox = flowComponent("ComboBox", (props) => {
54
47
  },
55
48
  ...fieldPropsContext
56
49
  };
57
- const handleOnSelectionChange = (key) => {
50
+ const handleSelectionChange = (key) => {
58
51
  if (key === null) {
59
52
  return;
60
53
  }
61
- onChange(String(key));
62
- onSelectionChange(key);
54
+ onChange?.(String(key));
55
+ onSelectionChange?.(key);
63
56
  };
64
- const controllerFromContext = useOverlayController("ComboBox", {
65
- reuseControllerFromContext: true
66
- });
67
- const controller = controllerFromProps ?? controllerFromContext;
68
- const localComboBoxRef = useObjectRef(ref);
69
- const localInputComboBoxRef = useObjectRef(inputRef);
70
- useMakeFocusable(localComboBoxRef, () => {
71
- localInputComboBoxRef.current?.focus();
57
+ const controller = useOverlayController("ComboBox", {
58
+ reuseControllerFromContext: false
72
59
  });
73
60
  return /* @__PURE__ */ jsx(
74
61
  Aria.ComboBox,
@@ -77,28 +64,14 @@ const ComboBox = flowComponent("ComboBox", (props) => {
77
64
  menuTrigger,
78
65
  className: rootClassName,
79
66
  ...rest,
80
- ref: localComboBoxRef,
81
- onSelectionChange: handleOnSelectionChange,
67
+ onSelectionChange: handleSelectionChange,
82
68
  onOpenChange: (isOpen) => {
83
69
  controller.setOpen(isOpen);
84
70
  },
85
71
  children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, children: /* @__PURE__ */ jsxs(TunnelProvider, { children: [
86
72
  /* @__PURE__ */ jsxs(FieldErrorCaptureContext, { children: [
87
73
  /* @__PURE__ */ jsxs("div", { className: styles.input, children: [
88
- /* @__PURE__ */ jsx(
89
- ReactAriaControlledValueFix,
90
- {
91
- inputContext: Aria.ComboBoxContext,
92
- props,
93
- children: /* @__PURE__ */ jsx(
94
- Aria.Input,
95
- {
96
- placeholder,
97
- ref: localInputComboBoxRef
98
- }
99
- )
100
- }
101
- ),
74
+ /* @__PURE__ */ jsx(Aria.Input, { placeholder, ref }),
102
75
  /* @__PURE__ */ jsx(
103
76
  Button,
104
77
  {
@@ -115,7 +88,8 @@ const ComboBox = flowComponent("ComboBox", (props) => {
115
88
  Options,
116
89
  {
117
90
  controller,
118
- onOpenChange: () => null,
91
+ onOpenChange: () => {
92
+ },
119
93
  renderEmptyState,
120
94
  children: /* @__PURE__ */ jsx(TunnelExit, { id: "options" })
121
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.mjs","sources":["../../../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import { type PropsWithChildren, type RefObject } from \"react\";\nimport type { Key } from \"react-aria-components\";\nimport * as Aria from \"react-aria-components\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Options } from \"@/components/Options\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport styles from \"./ComboBox.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { type OverlayController, useOverlayController } from \"@/lib/controller\";\nimport type { OptionsProps } from \"@/components/Options/Options\";\nimport { useObjectRef } from \"@react-aria/utils\";\nimport { useMakeFocusable } from \"@/lib/hooks/dom/useMakeFocusable\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { ReactAriaControlledValueFix } from \"@/lib/react/ReactAriaControlledValueFix\";\n\nexport interface ComboBoxProps\n extends Omit<Aria.ComboBoxProps<never>, \"children\">,\n Pick<Aria.InputProps, \"placeholder\">,\n Pick<OptionsProps, \"renderEmptyState\">,\n PropsWithChildren,\n FlowComponentProps {\n onChange?: (value: string) => void;\n controller?: OverlayController;\n inputRef?: RefObject<HTMLInputElement | null>;\n}\n\n/** @flr-generate all */\nexport const ComboBox = flowComponent(\"ComboBox\", (props) => {\n const {\n children,\n className,\n menuTrigger = \"focus\",\n onChange = () => {\n // default: do nothing\n },\n onSelectionChange = () => {\n // default: do nothing\n },\n controller: controllerFromProps,\n placeholder,\n ref,\n inputRef,\n renderEmptyState,\n\n ...rest\n } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props);\n\n const stringFormatter = useLocalizedStringFormatter(locales);\n\n const rootClassName = clsx(fieldProps.className, styles.comboBox, className);\n\n const propsContext: PropsContext = {\n Option: {\n tunnelId: \"options\",\n },\n ...fieldPropsContext,\n };\n\n const handleOnSelectionChange = (key: Key | null) => {\n if (key === null) {\n return;\n }\n onChange(String(key));\n onSelectionChange(key);\n };\n\n const controllerFromContext = useOverlayController(\"ComboBox\", {\n reuseControllerFromContext: true,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n\n const localComboBoxRef = useObjectRef(ref);\n const localInputComboBoxRef = useObjectRef(inputRef);\n\n useMakeFocusable(localComboBoxRef, () => {\n localInputComboBoxRef.current?.focus();\n });\n\n return (\n <Aria.ComboBox\n {...fieldProps}\n menuTrigger={menuTrigger}\n className={rootClassName}\n {...rest}\n ref={localComboBoxRef}\n onSelectionChange={handleOnSelectionChange}\n onOpenChange={(isOpen) => {\n controller.setOpen(isOpen);\n }}\n >\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <FieldErrorCaptureContext>\n <div className={styles.input}>\n <ReactAriaControlledValueFix\n inputContext={Aria.ComboBoxContext}\n props={props}\n >\n <Aria.Input\n placeholder={placeholder}\n ref={localInputComboBoxRef}\n />\n </ReactAriaControlledValueFix>\n <Button\n className={styles.toggle}\n aria-label={stringFormatter.format(\"comboBox.showOptions\")}\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n </Button>\n </div>\n\n {children}\n\n <Options\n controller={controller}\n onOpenChange={() => null}\n renderEmptyState={renderEmptyState}\n >\n <TunnelExit id=\"options\" />\n </Options>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </TunnelProvider>\n </PropsContextProvider>\n </Aria.ComboBox>\n );\n});\n\nexport default ComboBox;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAkCO,MAAM,QAAA,GAAW,aAAA,CAAc,UAAA,EAAY,CAAC,KAAA,KAAU;AAC3D,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA,GAAc,OAAA;AAAA,IACd,WAAW,MAAM;AAAA,IAEjB,CAAA;AAAA,IACA,oBAAoB,MAAM;AAAA,IAE1B,CAAA;AAAA,IACA,UAAA,EAAY,mBAAA;AAAA,IACZ,WAAA;AAAA,IACA,GAAA;AAAA,IACA,QAAA;AAAA,IACA,gBAAA;AAAA,IAEA,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,eAAA,GAAkB,4BAA4B,OAAO,CAAA;AAE3D,EAAA,MAAM,gBAAgB,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,MAAA,CAAO,UAAU,SAAS,CAAA;AAE3E,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,uBAAA,GAA0B,CAAC,GAAA,KAAoB;AACnD,IAAA,IAAI,QAAQ,IAAA,EAAM;AAChB,MAAA;AAAA,IACF;AACA,IAAA,QAAA,CAAS,MAAA,CAAO,GAAG,CAAC,CAAA;AACpB,IAAA,iBAAA,CAAkB,GAAG,CAAA;AAAA,EACvB,CAAA;AAEA,EAAA,MAAM,qBAAA,GAAwB,qBAAqB,UAAA,EAAY;AAAA,IAC7D,0BAAA,EAA4B;AAAA,GAC7B,CAAA;AAED,EAAA,MAAM,aAAa,mBAAA,IAAuB,qBAAA;AAE1C,EAAA,MAAM,gBAAA,GAAmB,aAAa,GAAG,CAAA;AACzC,EAAA,MAAM,qBAAA,GAAwB,aAAa,QAAQ,CAAA;AAEnD,EAAA,gBAAA,CAAiB,kBAAkB,MAAM;AACvC,IAAA,qBAAA,CAAsB,SAAS,KAAA,EAAM;AAAA,EACvC,CAAC,CAAA;AAED,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA,CAAK,QAAA;AAAA,IAAL;AAAA,MACE,GAAG,UAAA;AAAA,MACJ,WAAA;AAAA,MACA,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,IAAA;AAAA,MACJ,GAAA,EAAK,gBAAA;AAAA,MACL,iBAAA,EAAmB,uBAAA;AAAA,MACnB,YAAA,EAAc,CAAC,MAAA,KAAW;AACxB,QAAA,UAAA,CAAW,QAAQ,MAAM,CAAA;AAAA,MAC3B,CAAA;AAAA,MAEA,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,+BAAC,cAAA,EAAA,EACC,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,KAAA,EACrB,QAAA,EAAA;AAAA,4BAAA,GAAA;AAAA,cAAC,2BAAA;AAAA,cAAA;AAAA,gBACC,cAAc,IAAA,CAAK,eAAA;AAAA,gBACnB,KAAA;AAAA,gBAEA,QAAA,kBAAA,GAAA;AAAA,kBAAC,IAAA,CAAK,KAAA;AAAA,kBAAL;AAAA,oBACC,WAAA;AAAA,oBACA,GAAA,EAAK;AAAA;AAAA;AACP;AAAA,aACF;AAAA,4BACA,GAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBACC,WAAW,MAAA,CAAO,MAAA;AAAA,gBAClB,YAAA,EAAY,eAAA,CAAgB,MAAA,CAAO,sBAAsB,CAAA;AAAA,gBACzD,OAAA,EAAQ,OAAA;AAAA,gBACR,KAAA,EAAM,WAAA;AAAA,gBAEN,8BAAC,eAAA,EAAA,EAAgB;AAAA;AAAA;AACnB,WAAA,EACF,CAAA;AAAA,UAEC,QAAA;AAAA,0BAED,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,UAAA;AAAA,cACA,cAAc,MAAM,IAAA;AAAA,cACpB,gBAAA;AAAA,cAEA,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,SAAA,EAAU;AAAA;AAAA;AAC3B,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA,OAAA,EAClB,CAAA,EACF;AAAA;AAAA,GACF;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"ComboBox.mjs","sources":["../../../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport type { Key } from \"react-aria-components\";\nimport * as Aria from \"react-aria-components\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Options } from \"@/components/Options\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport styles from \"./ComboBox.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport type { OptionsProps } from \"@/components/Options/Options\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface ComboBoxProps\n extends Omit<Aria.ComboBoxProps<never>, \"children\">,\n Pick<Aria.InputProps, \"placeholder\">,\n Pick<OptionsProps, \"renderEmptyState\">,\n PropsWithChildren,\n FlowComponentProps<HTMLInputElement> {\n onChange?: (value: string) => void;\n}\n\n/** @flr-generate all */\nexport const ComboBox = flowComponent(\"ComboBox\", (props) => {\n const {\n children,\n className,\n menuTrigger = \"focus\",\n onChange,\n onSelectionChange,\n placeholder,\n ref,\n renderEmptyState,\n ...rest\n } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props);\n\n const stringFormatter = useLocalizedStringFormatter(locales);\n\n const rootClassName = clsx(fieldProps.className, styles.comboBox, className);\n\n const propsContext: PropsContext = {\n Option: {\n tunnelId: \"options\",\n },\n ...fieldPropsContext,\n };\n\n const handleSelectionChange = (key: Key | null) => {\n if (key === null) {\n return;\n }\n onChange?.(String(key));\n onSelectionChange?.(key);\n };\n\n const controller = useOverlayController(\"ComboBox\", {\n reuseControllerFromContext: false,\n });\n\n return (\n <Aria.ComboBox\n {...fieldProps}\n menuTrigger={menuTrigger}\n className={rootClassName}\n {...rest}\n onSelectionChange={handleSelectionChange}\n onOpenChange={(isOpen) => {\n controller.setOpen(isOpen);\n }}\n >\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <FieldErrorCaptureContext>\n <div className={styles.input}>\n <Aria.Input placeholder={placeholder} ref={ref} />\n <Button\n className={styles.toggle}\n aria-label={stringFormatter.format(\"comboBox.showOptions\")}\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n </Button>\n </div>\n\n {children}\n\n <Options\n controller={controller}\n onOpenChange={() => {\n // cut-off to avoid double controller state changes\n }}\n renderEmptyState={renderEmptyState}\n >\n <TunnelExit id=\"options\" />\n </Options>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </TunnelProvider>\n </PropsContextProvider>\n </Aria.ComboBox>\n );\n});\n\nexport default ComboBox;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AA6BO,MAAM,QAAA,GAAW,aAAA,CAAc,UAAA,EAAY,CAAC,KAAA,KAAU;AAC3D,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA,GAAc,OAAA;AAAA,IACd,QAAA;AAAA,IACA,iBAAA;AAAA,IACA,WAAA;AAAA,IACA,GAAA;AAAA,IACA,gBAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,eAAA,GAAkB,4BAA4B,OAAO,CAAA;AAE3D,EAAA,MAAM,gBAAgB,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,MAAA,CAAO,UAAU,SAAS,CAAA;AAE3E,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU;AAAA,KACZ;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,qBAAA,GAAwB,CAAC,GAAA,KAAoB;AACjD,IAAA,IAAI,QAAQ,IAAA,EAAM;AAChB,MAAA;AAAA,IACF;AACA,IAAA,QAAA,GAAW,MAAA,CAAO,GAAG,CAAC,CAAA;AACtB,IAAA,iBAAA,GAAoB,GAAG,CAAA;AAAA,EACzB,CAAA;AAEA,EAAA,MAAM,UAAA,GAAa,qBAAqB,UAAA,EAAY;AAAA,IAClD,0BAAA,EAA4B;AAAA,GAC7B,CAAA;AAED,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA,CAAK,QAAA;AAAA,IAAL;AAAA,MACE,GAAG,UAAA;AAAA,MACJ,WAAA;AAAA,MACA,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,IAAA;AAAA,MACJ,iBAAA,EAAmB,qBAAA;AAAA,MACnB,YAAA,EAAc,CAAC,MAAA,KAAW;AACxB,QAAA,UAAA,CAAW,QAAQ,MAAM,CAAA;AAAA,MAC3B,CAAA;AAAA,MAEA,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,+BAAC,cAAA,EAAA,EACC,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,KAAA,EACrB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,IAAA,CAAK,KAAA,EAAL,EAAW,WAAA,EAA0B,GAAA,EAAU,CAAA;AAAA,4BAChD,GAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBACC,WAAW,MAAA,CAAO,MAAA;AAAA,gBAClB,YAAA,EAAY,eAAA,CAAgB,MAAA,CAAO,sBAAsB,CAAA;AAAA,gBACzD,OAAA,EAAQ,OAAA;AAAA,gBACR,KAAA,EAAM,WAAA;AAAA,gBAEN,8BAAC,eAAA,EAAA,EAAgB;AAAA;AAAA;AACnB,WAAA,EACF,CAAA;AAAA,UAEC,QAAA;AAAA,0BAED,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,UAAA;AAAA,cACA,cAAc,MAAM;AAAA,cAEpB,CAAA;AAAA,cACA,gBAAA;AAAA,cAEA,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,SAAA,EAAU;AAAA;AAAA;AAC3B,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA,OAAA,EAClB,CAAA,EACF;AAAA;AAAA,GACF;AAEJ,CAAC;;;;"}
@@ -36,7 +36,8 @@ const ContextMenuSection = flowComponent(
36
36
  children: /* @__PURE__ */ jsx(PropsContextProvider, { props: propsContext, children: /* @__PURE__ */ jsx(Action, { skip: true, children: /* @__PURE__ */ jsx(Action, { closeOverlay: getCloseOverlayType(selectionMode), children }) }) })
37
37
  }
38
38
  );
39
- }
39
+ },
40
+ { type: "layout" }
40
41
  );
41
42
 
42
43
  export { ContextMenuSection, ContextMenuSection as default };
@@ -1 +1 @@
1
- {"version":3,"file":"ContextMenuSection.mjs","sources":["../../../../../../../../src/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.tsx"],"sourcesContent":["import * as Aria from \"react-aria-components\";\nimport type { PropsWithChildren } from \"react\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport styles from \"../../ContextMenu.module.scss\";\nimport type { ContextMenuSelectionMode } from \"@/components/ContextMenu/lib\";\nimport {\n getAriaSelectionMode,\n getCloseOverlayType,\n getMenuItemSelectionVariant,\n} from \"@/components/ContextMenu/lib\";\nimport { Action } from \"@/components/Action\";\nimport type { MenuItemProps } from \"@/components/MenuItem\";\n\nexport type ContextMenuSectionProps = PropsWithChildren &\n FlowComponentProps &\n Pick<\n Aria.MenuSectionProps<MenuItemProps>,\n \"defaultSelectedKeys\" | \"selectedKeys\"\n > & {\n selectionMode?: ContextMenuSelectionMode;\n };\n\n/** @flr-generate all */\nexport const ContextMenuSection = flowComponent(\n \"ContextMenuSection\",\n (props) => {\n const { children, selectionMode, ref, ...rest } = props;\n\n const selectionVariant = getMenuItemSelectionVariant(selectionMode);\n\n const propsContext: PropsContext = {\n Heading: {\n level: 5,\n wrapWith: <Aria.Header />,\n },\n MenuItem: {\n selectionVariant,\n },\n };\n\n return (\n <Aria.MenuSection\n ref={ref}\n {...rest}\n selectionMode={getAriaSelectionMode(selectionMode)}\n className={styles.section}\n >\n <PropsContextProvider props={propsContext}>\n <Action skip>\n <Action closeOverlay={getCloseOverlayType(selectionMode)}>\n {children}\n </Action>\n </Action>\n </PropsContextProvider>\n </Aria.MenuSection>\n );\n },\n);\n\nexport default ContextMenuSection;\n"],"names":[],"mappings":";;;;;;;;;;;;AA0BO,MAAM,kBAAA,GAAqB,aAAA;AAAA,EAChC,oBAAA;AAAA,EACA,CAAC,KAAA,KAAU;AACT,IAAA,MAAM,EAAE,QAAA,EAAU,aAAA,EAAe,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAElD,IAAA,MAAM,gBAAA,GAAmB,4BAA4B,aAAa,CAAA;AAElE,IAAA,MAAM,YAAA,GAA6B;AAAA,MACjC,OAAA,EAAS;AAAA,QACP,KAAA,EAAO,CAAA;AAAA,QACP,QAAA,kBAAU,GAAA,CAAC,IAAA,CAAK,MAAA,EAAL,EAAY;AAAA,OACzB;AAAA,MACA,QAAA,EAAU;AAAA,QACR;AAAA;AACF,KACF;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,IAAA,CAAK,WAAA;AAAA,MAAL;AAAA,QACC,GAAA;AAAA,QACC,GAAG,IAAA;AAAA,QACJ,aAAA,EAAe,qBAAqB,aAAa,CAAA;AAAA,QACjD,WAAW,MAAA,CAAO,OAAA;AAAA,QAElB,8BAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,QAAA,kBAAA,GAAA,CAAC,UAAO,IAAA,EAAI,IAAA,EACV,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAO,cAAc,mBAAA,CAAoB,aAAa,CAAA,EACpD,QAAA,EACH,GACF,CAAA,EACF;AAAA;AAAA,KACF;AAAA,EAEJ;AACF;;;;"}
1
+ {"version":3,"file":"ContextMenuSection.mjs","sources":["../../../../../../../../src/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.tsx"],"sourcesContent":["import * as Aria from \"react-aria-components\";\nimport type { PropsWithChildren } from \"react\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport styles from \"../../ContextMenu.module.scss\";\nimport type { ContextMenuSelectionMode } from \"@/components/ContextMenu/lib\";\nimport {\n getAriaSelectionMode,\n getCloseOverlayType,\n getMenuItemSelectionVariant,\n} from \"@/components/ContextMenu/lib\";\nimport { Action } from \"@/components/Action\";\nimport type { MenuItemProps } from \"@/components/MenuItem\";\n\nexport type ContextMenuSectionProps = PropsWithChildren &\n FlowComponentProps &\n Pick<\n Aria.MenuSectionProps<MenuItemProps>,\n \"defaultSelectedKeys\" | \"selectedKeys\"\n > & {\n selectionMode?: ContextMenuSelectionMode;\n };\n\n/** @flr-generate all */\nexport const ContextMenuSection = flowComponent(\n \"ContextMenuSection\",\n (props) => {\n const { children, selectionMode, ref, ...rest } = props;\n\n const selectionVariant = getMenuItemSelectionVariant(selectionMode);\n\n const propsContext: PropsContext = {\n Heading: {\n level: 5,\n wrapWith: <Aria.Header />,\n },\n MenuItem: {\n selectionVariant,\n },\n };\n\n return (\n <Aria.MenuSection\n ref={ref}\n {...rest}\n selectionMode={getAriaSelectionMode(selectionMode)}\n className={styles.section}\n >\n <PropsContextProvider props={propsContext}>\n <Action skip>\n <Action closeOverlay={getCloseOverlayType(selectionMode)}>\n {children}\n </Action>\n </Action>\n </PropsContextProvider>\n </Aria.MenuSection>\n );\n },\n { type: \"layout\" },\n);\n\nexport default ContextMenuSection;\n"],"names":[],"mappings":";;;;;;;;;;;;AA0BO,MAAM,kBAAA,GAAqB,aAAA;AAAA,EAChC,oBAAA;AAAA,EACA,CAAC,KAAA,KAAU;AACT,IAAA,MAAM,EAAE,QAAA,EAAU,aAAA,EAAe,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAElD,IAAA,MAAM,gBAAA,GAAmB,4BAA4B,aAAa,CAAA;AAElE,IAAA,MAAM,YAAA,GAA6B;AAAA,MACjC,OAAA,EAAS;AAAA,QACP,KAAA,EAAO,CAAA;AAAA,QACP,QAAA,kBAAU,GAAA,CAAC,IAAA,CAAK,MAAA,EAAL,EAAY;AAAA,OACzB;AAAA,MACA,QAAA,EAAU;AAAA,QACR;AAAA;AACF,KACF;AAEA,IAAA,uBACE,GAAA;AAAA,MAAC,IAAA,CAAK,WAAA;AAAA,MAAL;AAAA,QACC,GAAA;AAAA,QACC,GAAG,IAAA;AAAA,QACJ,aAAA,EAAe,qBAAqB,aAAa,CAAA;AAAA,QACjD,WAAW,MAAA,CAAO,OAAA;AAAA,QAElB,8BAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,QAAA,kBAAA,GAAA,CAAC,UAAO,IAAA,EAAI,IAAA,EACV,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAO,cAAc,mBAAA,CAAoB,aAAa,CAAA,EACpD,QAAA,EACH,GACF,CAAA,EACF;AAAA;AAAA,KACF;AAAA,EAEJ,CAAA;AAAA,EACA,EAAE,MAAM,QAAA;AACV;;;;"}
@@ -0,0 +1,20 @@
1
+ "use client"
2
+ /* */
3
+ import { jsx } from 'react/jsx-runtime';
4
+ import { useRef } from 'react';
5
+ import * as Aria from 'react-aria-components';
6
+
7
+ const DateInput = (props) => {
8
+ const { ref, ...inputProps } = props;
9
+ const firstSegmentType = useRef(null);
10
+ return /* @__PURE__ */ jsx(Aria.DateInput, { ...inputProps, children: (segment) => {
11
+ if (firstSegmentType.current === null && segment.type !== "literal") {
12
+ firstSegmentType.current = segment.type;
13
+ }
14
+ const firstSegmentRef = segment.type === firstSegmentType.current ? ref : null;
15
+ return /* @__PURE__ */ jsx(Aria.DateSegment, { segment, ref: firstSegmentRef });
16
+ } });
17
+ };
18
+
19
+ export { DateInput, DateInput as default };
20
+ //# sourceMappingURL=DateInput.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateInput.mjs","sources":["../../../../../../src/components/DateInput/DateInput.tsx"],"sourcesContent":["import { useRef, type FC, type Ref } from \"react\";\nimport * as Aria from \"react-aria-components\";\n\ninterface DateInputProps extends Omit<Aria.DateInputProps, \"children\" | \"ref\"> {\n ref?: Ref<HTMLSpanElement | null>;\n}\n\nexport const DateInput: FC<DateInputProps> = (props) => {\n const { ref, ...inputProps } = props;\n\n const firstSegmentType = useRef<string | null>(null);\n\n return (\n <Aria.DateInput {...inputProps}>\n {(segment) => {\n if (firstSegmentType.current === null && segment.type !== \"literal\") {\n firstSegmentType.current = segment.type;\n }\n\n const firstSegmentRef =\n segment.type === firstSegmentType.current ? ref : null;\n\n return <Aria.DateSegment segment={segment} ref={firstSegmentRef} />;\n }}\n </Aria.DateInput>\n );\n};\n\nexport default DateInput;\n"],"names":[],"mappings":";;;;AAOO,MAAM,SAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,GAAA,EAAK,GAAG,UAAA,EAAW,GAAI,KAAA;AAE/B,EAAA,MAAM,gBAAA,GAAmB,OAAsB,IAAI,CAAA;AAEnD,EAAA,2BACG,IAAA,CAAK,SAAA,EAAL,EAAgB,GAAG,UAAA,EACjB,WAAC,OAAA,KAAY;AACZ,IAAA,IAAI,gBAAA,CAAiB,OAAA,KAAY,IAAA,IAAQ,OAAA,CAAQ,SAAS,SAAA,EAAW;AACnE,MAAA,gBAAA,CAAiB,UAAU,OAAA,CAAQ,IAAA;AAAA,IACrC;AAEA,IAAA,MAAM,eAAA,GACJ,OAAA,CAAQ,IAAA,KAAS,gBAAA,CAAiB,UAAU,GAAA,GAAM,IAAA;AAEpD,IAAA,2BAAQ,IAAA,CAAK,WAAA,EAAL,EAAiB,OAAA,EAAkB,KAAK,eAAA,EAAiB,CAAA;AAAA,EACnE,CAAA,EACF,CAAA;AAEJ;;;;"}
@@ -17,8 +17,6 @@ import '../Button/Button.mjs';
17
17
  import '@tabler/icons-react';
18
18
  import '../Icon/Icon.mjs';
19
19
  import '../../views/IconView.mjs';
20
- import { useObjectRef } from '@react-aria/utils';
21
- import { useMakeFocusable } from '../../lib/hooks/dom/useMakeFocusable.mjs';
22
20
  import { useFieldComponent } from '../../lib/hooks/useFieldComponent.mjs';
23
21
 
24
22
  const DatePicker = flowComponent("DatePicker", (props) => {
@@ -30,13 +28,10 @@ const DatePicker = flowComponent("DatePicker", (props) => {
30
28
  fieldPropsContext
31
29
  } = useFieldComponent(props);
32
30
  const rootClassName = clsx(formFieldStyles.formField, className);
33
- const localRef = useObjectRef(ref);
34
- useMakeFocusable(localRef);
35
31
  const popoverController = useOverlayController("Popover");
36
32
  return /* @__PURE__ */ jsxs(
37
33
  Aria.DatePicker,
38
34
  {
39
- ref: localRef,
40
35
  ...rest,
41
36
  ...fieldProps,
42
37
  className: clsx(fieldProps.className, rootClassName),
@@ -50,7 +45,7 @@ const DatePicker = flowComponent("DatePicker", (props) => {
50
45
  },
51
46
  children: [
52
47
  /* @__PURE__ */ jsxs(FieldErrorCaptureContext, { children: [
53
- /* @__PURE__ */ jsx(DateInput, { isDisabled: props.isDisabled }),
48
+ /* @__PURE__ */ jsx(DateInput, { isDisabled: props.isDisabled, ref }),
54
49
  /* @__PURE__ */ jsx(PropsContextProvider, { props: fieldPropsContext, children }),
55
50
  /* @__PURE__ */ jsx(
56
51
  Popover,
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.mjs","sources":["../../../../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport clsx from \"clsx\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport * as Aria from \"react-aria-components\";\nimport { DateInput } from \"./components/DateInput\";\nimport styles from \"../FormField/FormField.module.scss\";\nimport { Popover } from \"@/components/Popover/Popover\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { Calendar } from \"@/components/Calendar\";\nimport { useObjectRef } from \"@react-aria/utils\";\nimport { useMakeFocusable } from \"@/lib/hooks/dom/useMakeFocusable\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface DatePickerProps<T extends Aria.DateValue = Aria.DateValue>\n extends PropsWithChildren<Omit<Aria.DatePickerProps<T>, \"children\">>,\n FlowComponentProps {}\n\n/** @flr-generate all */\nexport const DatePicker = flowComponent(\"DatePicker\", (props) => {\n const { children, className, onChange, ref, ...rest } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props);\n\n const rootClassName = clsx(styles.formField, className);\n\n const localRef = useObjectRef(ref);\n useMakeFocusable(localRef);\n\n const popoverController = useOverlayController(\"Popover\");\n\n return (\n <Aria.DatePicker\n ref={localRef}\n {...rest}\n {...fieldProps}\n className={clsx(fieldProps.className, rootClassName)}\n onOpenChange={(v) => popoverController.setOpen(v)}\n isOpen={popoverController.isOpen}\n onChange={(value) => {\n if (onChange) {\n onChange(value);\n }\n popoverController.close();\n }}\n >\n <FieldErrorCaptureContext>\n <DateInput isDisabled={props.isDisabled} />\n <PropsContextProvider props={fieldPropsContext}>\n {children}\n </PropsContextProvider>\n <Popover\n placement=\"bottom end\"\n isDialogContent\n controller={popoverController}\n >\n <Calendar />\n </Popover>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </Aria.DatePicker>\n );\n});\n\nexport default DatePicker;\n"],"names":["styles"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAsBO,MAAM,UAAA,GAAa,aAAA,CAAc,YAAA,EAAc,CAAC,KAAA,KAAU;AAC/D,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,UAAU,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAExD,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAKA,eAAA,CAAO,SAAA,EAAW,SAAS,CAAA;AAEtD,EAAA,MAAM,QAAA,GAAW,aAAa,GAAG,CAAA;AACjC,EAAA,gBAAA,CAAiB,QAAQ,CAAA;AAEzB,EAAA,MAAM,iBAAA,GAAoB,qBAAqB,SAAS,CAAA;AAExD,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA,CAAK,UAAA;AAAA,IAAL;AAAA,MACC,GAAA,EAAK,QAAA;AAAA,MACJ,GAAG,IAAA;AAAA,MACH,GAAG,UAAA;AAAA,MACJ,SAAA,EAAW,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,aAAa,CAAA;AAAA,MACnD,YAAA,EAAc,CAAC,CAAA,KAAM,iBAAA,CAAkB,QAAQ,CAAC,CAAA;AAAA,MAChD,QAAQ,iBAAA,CAAkB,MAAA;AAAA,MAC1B,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,QAAA,IAAI,QAAA,EAAU;AACZ,UAAA,QAAA,CAAS,KAAK,CAAA;AAAA,QAChB;AACA,QAAA,iBAAA,CAAkB,KAAA,EAAM;AAAA,MAC1B,CAAA;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,SAAA,EAAA,EAAU,UAAA,EAAY,KAAA,CAAM,UAAA,EAAY,CAAA;AAAA,0BACzC,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,iBAAA,EAC1B,QAAA,EACH,CAAA;AAAA,0BACA,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,YAAA;AAAA,cACV,eAAA,EAAe,IAAA;AAAA,cACf,UAAA,EAAY,iBAAA;AAAA,cAEZ,8BAAC,QAAA,EAAA,EAAS;AAAA;AAAA;AACZ,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA;AAAA;AAAA,GAClB;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"DatePicker.mjs","sources":["../../../../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport clsx from \"clsx\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport * as Aria from \"react-aria-components\";\nimport { DateInput } from \"./components/DateInput\";\nimport styles from \"../FormField/FormField.module.scss\";\nimport { Popover } from \"@/components/Popover/Popover\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { Calendar } from \"@/components/Calendar\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface DatePickerProps<T extends Aria.DateValue = Aria.DateValue>\n extends PropsWithChildren<Omit<Aria.DatePickerProps<T>, \"children\" | \"ref\">>,\n FlowComponentProps<HTMLSpanElement> {}\n\n/** @flr-generate all */\nexport const DatePicker = flowComponent(\"DatePicker\", (props) => {\n const { children, className, onChange, ref, ...rest } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props);\n\n const rootClassName = clsx(styles.formField, className);\n\n const popoverController = useOverlayController(\"Popover\");\n\n return (\n <Aria.DatePicker\n {...rest}\n {...fieldProps}\n className={clsx(fieldProps.className, rootClassName)}\n onOpenChange={(v) => popoverController.setOpen(v)}\n isOpen={popoverController.isOpen}\n onChange={(value) => {\n if (onChange) {\n onChange(value);\n }\n popoverController.close();\n }}\n >\n <FieldErrorCaptureContext>\n <DateInput isDisabled={props.isDisabled} ref={ref} />\n <PropsContextProvider props={fieldPropsContext}>\n {children}\n </PropsContextProvider>\n <Popover\n placement=\"bottom end\"\n isDialogContent\n controller={popoverController}\n >\n <Calendar />\n </Popover>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </Aria.DatePicker>\n );\n});\n\nexport default DatePicker;\n"],"names":["styles"],"mappings":";;;;;;;;;;;;;;;;;;;AAoBO,MAAM,UAAA,GAAa,aAAA,CAAc,YAAA,EAAc,CAAC,KAAA,KAAU;AAC/D,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,UAAU,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAExD,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAKA,eAAA,CAAO,SAAA,EAAW,SAAS,CAAA;AAEtD,EAAA,MAAM,iBAAA,GAAoB,qBAAqB,SAAS,CAAA;AAExD,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA,CAAK,UAAA;AAAA,IAAL;AAAA,MACE,GAAG,IAAA;AAAA,MACH,GAAG,UAAA;AAAA,MACJ,SAAA,EAAW,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,aAAa,CAAA;AAAA,MACnD,YAAA,EAAc,CAAC,CAAA,KAAM,iBAAA,CAAkB,QAAQ,CAAC,CAAA;AAAA,MAChD,QAAQ,iBAAA,CAAkB,MAAA;AAAA,MAC1B,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,QAAA,IAAI,QAAA,EAAU;AACZ,UAAA,QAAA,CAAS,KAAK,CAAA;AAAA,QAChB;AACA,QAAA,iBAAA,CAAkB,KAAA,EAAM;AAAA,MAC1B,CAAA;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,SAAA,EAAA,EAAU,UAAA,EAAY,KAAA,CAAM,UAAA,EAAY,GAAA,EAAU,CAAA;AAAA,0BACnD,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,iBAAA,EAC1B,QAAA,EACH,CAAA;AAAA,0BACA,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,YAAA;AAAA,cACV,eAAA,EAAe,IAAA;AAAA,cACf,UAAA,EAAY,iBAAA;AAAA,cAEZ,8BAAC,QAAA,EAAA,EAAS;AAAA;AAAA;AACZ,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA;AAAA;AAAA,GAClB;AAEJ,CAAC;;;;"}
@@ -9,11 +9,12 @@ import '@tabler/icons-react';
9
9
  import '../../../Icon/Icon.mjs';
10
10
  import '../../../../views/IconView.mjs';
11
11
  import { IconDate } from '../../../Icon/components/icons/IconDate.mjs';
12
+ import { DateInput as DateInput$1 } from '../../../DateInput/DateInput.mjs';
12
13
 
13
14
  const DateInput = (props) => {
14
- const { isDisabled } = props;
15
+ const { isDisabled, ref } = props;
15
16
  return /* @__PURE__ */ jsxs(Aria.Group, { className: styles.dateInput, children: [
16
- /* @__PURE__ */ jsx(Aria.DateInput, { children: (segment) => /* @__PURE__ */ jsx(Aria.DateSegment, { segment }) }),
17
+ /* @__PURE__ */ jsx(DateInput$1, { ref }),
17
18
  /* @__PURE__ */ jsx(Button, { variant: "plain", color: "secondary", isDisabled, children: /* @__PURE__ */ jsx(IconDate, {}) })
18
19
  ] });
19
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DateInput.mjs","sources":["../../../../../../../../src/components/DatePicker/components/DateInput/DateInput.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport React from \"react\";\nimport styles from \"./DateInput.module.scss\";\nimport * as Aria from \"react-aria-components\";\nimport { Button } from \"@/components/Button\";\nimport { IconDate } from \"@/components/Icon/components/icons\";\n\nexport interface DateInputProps {\n isDisabled?: boolean;\n}\n\nexport const DateInput: FC<DateInputProps> = (props) => {\n const { isDisabled } = props;\n\n return (\n <Aria.Group className={styles.dateInput}>\n <Aria.DateInput>\n {(segment) => <Aria.DateSegment segment={segment} />}\n </Aria.DateInput>\n <Button variant=\"plain\" color=\"secondary\" isDisabled={isDisabled}>\n <IconDate />\n </Button>\n </Aria.Group>\n );\n};\n\nexport default DateInput;\n"],"names":[],"mappings":";;;;;;;;;;AAWO,MAAM,SAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,YAAW,GAAI,KAAA;AAEvB,EAAA,4BACG,IAAA,CAAK,KAAA,EAAL,EAAW,SAAA,EAAW,OAAO,SAAA,EAC5B,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,IAAA,CAAK,SAAA,EAAL,EACE,QAAA,EAAA,CAAC,OAAA,yBAAa,IAAA,CAAK,WAAA,EAAL,EAAiB,OAAA,EAAkB,CAAA,EACpD,CAAA;AAAA,oBACA,GAAA,CAAC,UAAO,OAAA,EAAQ,OAAA,EAAQ,OAAM,WAAA,EAAY,UAAA,EACxC,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,CAAA,EACZ;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"DateInput.mjs","sources":["../../../../../../../../src/components/DatePicker/components/DateInput/DateInput.tsx"],"sourcesContent":["import { type FC, type Ref } from \"react\";\nimport styles from \"./DateInput.module.scss\";\nimport * as Aria from \"react-aria-components\";\nimport { Button } from \"@/components/Button\";\nimport { IconDate } from \"@/components/Icon/components/icons\";\nimport Input from \"@/components/DateInput\";\n\nexport interface DateInputProps {\n isDisabled?: boolean;\n ref?: Ref<HTMLSpanElement>;\n}\n\nexport const DateInput: FC<DateInputProps> = (props) => {\n const { isDisabled, ref } = props;\n\n return (\n <Aria.Group className={styles.dateInput}>\n <Input ref={ref} />\n <Button variant=\"plain\" color=\"secondary\" isDisabled={isDisabled}>\n <IconDate />\n </Button>\n </Aria.Group>\n );\n};\n\nexport default DateInput;\n"],"names":["Input"],"mappings":";;;;;;;;;;;AAYO,MAAM,SAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,UAAA,EAAY,GAAA,EAAI,GAAI,KAAA;AAE5B,EAAA,4BACG,IAAA,CAAK,KAAA,EAAL,EAAW,SAAA,EAAW,OAAO,SAAA,EAC5B,QAAA,EAAA;AAAA,oBAAA,GAAA,CAACA,eAAM,GAAA,EAAU,CAAA;AAAA,oBACjB,GAAA,CAAC,UAAO,OAAA,EAAQ,OAAA,EAAQ,OAAM,WAAA,EAAY,UAAA,EACxC,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA,EAAS,CAAA,EACZ;AAAA,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -12,8 +12,6 @@ import 'mobx';
12
12
  import 'react';
13
13
  import { useOverlayController } from '../../lib/controller/overlay/useOverlayController.mjs';
14
14
  import { flowComponent } from '../../lib/componentFactory/flowComponent.mjs';
15
- import { useMakeFocusable } from '../../lib/hooks/dom/useMakeFocusable.mjs';
16
- import { useObjectRef } from '@react-aria/utils';
17
15
  import { useFieldComponent } from '../../lib/hooks/useFieldComponent.mjs';
18
16
 
19
17
  const DateRangePicker = flowComponent("DateRangePicker", (props) => {
@@ -26,12 +24,9 @@ const DateRangePicker = flowComponent("DateRangePicker", (props) => {
26
24
  } = useFieldComponent(props);
27
25
  const rootClassName = clsx(fieldProps.className, className);
28
26
  const popoverController = useOverlayController("Popover");
29
- const localDateRangePickerRef = useObjectRef(ref);
30
- useMakeFocusable(localDateRangePickerRef);
31
27
  return /* @__PURE__ */ jsxs(
32
28
  Aria.DateRangePicker,
33
29
  {
34
- ref: localDateRangePickerRef,
35
30
  ...rest,
36
31
  className: rootClassName,
37
32
  onOpenChange: (v) => popoverController.setOpen(v),
@@ -44,7 +39,7 @@ const DateRangePicker = flowComponent("DateRangePicker", (props) => {
44
39
  },
45
40
  children: [
46
41
  /* @__PURE__ */ jsxs(FieldErrorCaptureContext, { children: [
47
- /* @__PURE__ */ jsx(DateRangeInput, { isDisabled: props.isDisabled }),
42
+ /* @__PURE__ */ jsx(DateRangeInput, { isDisabled: props.isDisabled, ref }),
48
43
  /* @__PURE__ */ jsx(PropsContextProvider, { props: fieldPropsContext, children }),
49
44
  /* @__PURE__ */ jsx(
50
45
  Popover,
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangePicker.mjs","sources":["../../../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport clsx from \"clsx\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport * as Aria from \"react-aria-components\";\nimport { Popover } from \"@/components/Popover/Popover\";\nimport { RangeCalendar } from \"../Calendar/RangeCalendar\";\nimport { DateRangeInput } from \"./components/DateRangeInput\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { useMakeFocusable } from \"@/lib/hooks/dom/useMakeFocusable\";\nimport { useObjectRef } from \"@react-aria/utils\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface DateRangePickerProps<T extends Aria.DateValue = Aria.DateValue>\n extends PropsWithChildren<Omit<Aria.DateRangePickerProps<T>, \"children\">>,\n FlowComponentProps {}\n\n/** @flr-generate all */\nexport const DateRangePicker = flowComponent(\"DateRangePicker\", (props) => {\n const { children, className, onChange, ref, ...rest } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props);\n\n const rootClassName = clsx(fieldProps.className, className);\n\n const popoverController = useOverlayController(\"Popover\");\n\n const localDateRangePickerRef = useObjectRef(ref);\n useMakeFocusable(localDateRangePickerRef);\n\n return (\n <Aria.DateRangePicker\n ref={localDateRangePickerRef}\n {...rest}\n className={rootClassName}\n onOpenChange={(v) => popoverController.setOpen(v)}\n isOpen={popoverController.isOpen}\n onChange={(value) => {\n if (onChange) {\n onChange(value);\n }\n popoverController.close();\n }}\n >\n <FieldErrorCaptureContext>\n <DateRangeInput isDisabled={props.isDisabled} />\n <PropsContextProvider props={fieldPropsContext}>\n {children}\n </PropsContextProvider>\n <Popover\n placement=\"bottom end\"\n isDialogContent\n controller={popoverController}\n >\n <RangeCalendar />\n </Popover>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </Aria.DateRangePicker>\n );\n});\n\nexport default DateRangePicker;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAqBO,MAAM,eAAA,GAAkB,aAAA,CAAc,iBAAA,EAAmB,CAAC,KAAA,KAAU;AACzE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,UAAU,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAExD,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,SAAS,CAAA;AAE1D,EAAA,MAAM,iBAAA,GAAoB,qBAAqB,SAAS,CAAA;AAExD,EAAA,MAAM,uBAAA,GAA0B,aAAa,GAAG,CAAA;AAChD,EAAA,gBAAA,CAAiB,uBAAuB,CAAA;AAExC,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA,CAAK,eAAA;AAAA,IAAL;AAAA,MACC,GAAA,EAAK,uBAAA;AAAA,MACJ,GAAG,IAAA;AAAA,MACJ,SAAA,EAAW,aAAA;AAAA,MACX,YAAA,EAAc,CAAC,CAAA,KAAM,iBAAA,CAAkB,QAAQ,CAAC,CAAA;AAAA,MAChD,QAAQ,iBAAA,CAAkB,MAAA;AAAA,MAC1B,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,QAAA,IAAI,QAAA,EAAU;AACZ,UAAA,QAAA,CAAS,KAAK,CAAA;AAAA,QAChB;AACA,QAAA,iBAAA,CAAkB,KAAA,EAAM;AAAA,MAC1B,CAAA;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,cAAA,EAAA,EAAe,UAAA,EAAY,KAAA,CAAM,UAAA,EAAY,CAAA;AAAA,0BAC9C,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,iBAAA,EAC1B,QAAA,EACH,CAAA;AAAA,0BACA,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,YAAA;AAAA,cACV,eAAA,EAAe,IAAA;AAAA,cACf,UAAA,EAAY,iBAAA;AAAA,cAEZ,8BAAC,aAAA,EAAA,EAAc;AAAA;AAAA;AACjB,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA;AAAA;AAAA,GAClB;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"DateRangePicker.mjs","sources":["../../../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport clsx from \"clsx\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport * as Aria from \"react-aria-components\";\nimport { Popover } from \"@/components/Popover/Popover\";\nimport { RangeCalendar } from \"../Calendar/RangeCalendar\";\nimport { DateRangeInput } from \"./components/DateRangeInput\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\n\nexport interface DateRangePickerProps<T extends Aria.DateValue = Aria.DateValue>\n extends PropsWithChildren<\n Omit<Aria.DateRangePickerProps<T>, \"children\" | \"ref\">\n >,\n FlowComponentProps<HTMLSpanElement> {}\n\n/** @flr-generate all */\nexport const DateRangePicker = flowComponent(\"DateRangePicker\", (props) => {\n const { children, className, onChange, ref, ...rest } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props);\n\n const rootClassName = clsx(fieldProps.className, className);\n\n const popoverController = useOverlayController(\"Popover\");\n\n return (\n <Aria.DateRangePicker\n {...rest}\n className={rootClassName}\n onOpenChange={(v) => popoverController.setOpen(v)}\n isOpen={popoverController.isOpen}\n onChange={(value) => {\n if (onChange) {\n onChange(value);\n }\n popoverController.close();\n }}\n >\n <FieldErrorCaptureContext>\n <DateRangeInput isDisabled={props.isDisabled} ref={ref} />\n <PropsContextProvider props={fieldPropsContext}>\n {children}\n </PropsContextProvider>\n <Popover\n placement=\"bottom end\"\n isDialogContent\n controller={popoverController}\n >\n <RangeCalendar />\n </Popover>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </Aria.DateRangePicker>\n );\n});\n\nexport default DateRangePicker;\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAqBO,MAAM,eAAA,GAAkB,aAAA,CAAc,iBAAA,EAAmB,CAAC,KAAA,KAAU;AACzE,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,UAAU,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAExD,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,kBAAkB,KAAK,CAAA;AAE3B,EAAA,MAAM,aAAA,GAAgB,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,SAAS,CAAA;AAE1D,EAAA,MAAM,iBAAA,GAAoB,qBAAqB,SAAS,CAAA;AAExD,EAAA,uBACE,IAAA;AAAA,IAAC,IAAA,CAAK,eAAA;AAAA,IAAL;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,SAAA,EAAW,aAAA;AAAA,MACX,YAAA,EAAc,CAAC,CAAA,KAAM,iBAAA,CAAkB,QAAQ,CAAC,CAAA;AAAA,MAChD,QAAQ,iBAAA,CAAkB,MAAA;AAAA,MAC1B,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,QAAA,IAAI,QAAA,EAAU;AACZ,UAAA,QAAA,CAAS,KAAK,CAAA;AAAA,QAChB;AACA,QAAA,iBAAA,CAAkB,KAAA,EAAM;AAAA,MAC1B,CAAA;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,cAAA,EAAA,EAAe,UAAA,EAAY,KAAA,CAAM,UAAA,EAAY,GAAA,EAAU,CAAA;AAAA,0BACxD,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,iBAAA,EAC1B,QAAA,EACH,CAAA;AAAA,0BACA,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,SAAA,EAAU,YAAA;AAAA,cACV,eAAA,EAAe,IAAA;AAAA,cACf,UAAA,EAAY,iBAAA;AAAA,cAEZ,8BAAC,aAAA,EAAA,EAAc;AAAA;AAAA;AACjB,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA;AAAA;AAAA,GAClB;AAEJ,CAAC;;;;"}