@mittwald/flow-react-components 1.5.0-next.9 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (787) hide show
  1. package/AGENTS.md +160 -19
  2. package/MIGRATION.md +53 -0
  3. package/USAGE.md +7 -0
  4. package/dist/assets/component-index.json +1 -1
  5. package/dist/assets/doc-properties.json +1 -1
  6. package/dist/css/all-layered.css +1 -1
  7. package/dist/css/all.css +1 -1
  8. package/dist/js/_virtual/_23.locale.mjs +2 -2
  9. package/dist/js/_virtual/_32.locale.mjs +3 -9
  10. package/dist/js/_virtual/_33.locale.mjs +5 -7
  11. package/dist/js/_virtual/_34.locale.mjs +7 -13
  12. package/dist/js/_virtual/_35.locale.mjs +23 -0
  13. package/dist/js/default.mjs +6 -4
  14. package/dist/js/node_modules/.pnpm/@lezer_lr@1.4.10/node_modules/@lezer/lr/dist/index.mjs.map +1 -1
  15. package/dist/js/packages/components/src/components/AccentBox/AccentBox.mjs.map +1 -1
  16. package/dist/js/packages/components/src/components/Accordion/Accordion.mjs +90 -57
  17. package/dist/js/packages/components/src/components/Accordion/Accordion.mjs.map +1 -1
  18. package/dist/js/packages/components/src/components/Accordion/Accordion.module.mjs +7 -3
  19. package/dist/js/packages/components/src/components/Accordion/Accordion.module.mjs.map +1 -1
  20. package/dist/js/packages/components/src/components/AccordionGroup/AccordionGroup.mjs +68 -0
  21. package/dist/js/packages/components/src/components/AccordionGroup/AccordionGroup.mjs.map +1 -0
  22. package/dist/js/packages/components/src/components/AccordionGroup/AccordionGroup.module.mjs +15 -0
  23. package/dist/js/packages/components/src/components/AccordionGroup/AccordionGroup.module.mjs.map +1 -0
  24. package/dist/js/packages/components/src/components/AccordionGroup/context.mjs +10 -0
  25. package/dist/js/packages/components/src/components/AccordionGroup/context.mjs.map +1 -0
  26. package/dist/js/packages/components/src/components/AccordionGroup/lib/expansion.mjs +29 -0
  27. package/dist/js/packages/components/src/components/AccordionGroup/lib/expansion.mjs.map +1 -0
  28. package/dist/js/packages/components/src/components/Action/lib/ariaLive.mjs.map +1 -1
  29. package/dist/js/packages/components/src/components/Action/models/ActionState.mjs +8 -70
  30. package/dist/js/packages/components/src/components/Action/models/ActionState.mjs.map +1 -1
  31. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.mjs.map +1 -1
  32. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.module.mjs.map +1 -1
  33. package/dist/js/packages/components/src/components/Alert/Alert.mjs +3 -1
  34. package/dist/js/packages/components/src/components/Alert/Alert.mjs.map +1 -1
  35. package/dist/js/packages/components/src/components/Alert/Alert.module.mjs +4 -2
  36. package/dist/js/packages/components/src/components/Alert/Alert.module.mjs.map +1 -1
  37. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.mjs +7 -4
  38. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.mjs.map +1 -1
  39. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.module.mjs +6 -2
  40. package/dist/js/packages/components/src/components/AlertBadge/AlertBadge.module.mjs.map +1 -1
  41. package/dist/js/packages/components/src/components/AlertIcon/AlertIcon.mjs +10 -0
  42. package/dist/js/packages/components/src/components/AlertIcon/AlertIcon.mjs.map +1 -1
  43. package/dist/js/packages/components/src/components/AlertText/AlertText.mjs +9 -2
  44. package/dist/js/packages/components/src/components/AlertText/AlertText.mjs.map +1 -1
  45. package/dist/js/packages/components/src/components/Autocomplete/Autocomplete.mjs +16 -8
  46. package/dist/js/packages/components/src/components/Autocomplete/Autocomplete.mjs.map +1 -1
  47. package/dist/js/packages/components/src/components/Avatar/Avatar.mjs +11 -2
  48. package/dist/js/packages/components/src/components/Avatar/Avatar.mjs.map +1 -1
  49. package/dist/js/packages/components/src/components/Avatar/Avatar.module.mjs +6 -2
  50. package/dist/js/packages/components/src/components/Avatar/Avatar.module.mjs.map +1 -1
  51. package/dist/js/packages/components/src/components/AvatarStack/AvatarStack.mjs +1 -1
  52. package/dist/js/packages/components/src/components/AvatarStack/AvatarStack.mjs.map +1 -1
  53. package/dist/js/packages/components/src/components/Badge/Badge.mjs +6 -3
  54. package/dist/js/packages/components/src/components/Badge/Badge.mjs.map +1 -1
  55. package/dist/js/packages/components/src/components/Badge/Badge.module.mjs +6 -2
  56. package/dist/js/packages/components/src/components/Badge/Badge.module.mjs.map +1 -1
  57. package/dist/js/packages/components/src/components/BigNumber/BigNumber.mjs.map +1 -1
  58. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.mjs +3 -1
  59. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.mjs.map +1 -1
  60. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.module.mjs +3 -1
  61. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.module.mjs.map +1 -1
  62. package/dist/js/packages/components/src/components/Breadcrumb/components/BreadcrumbItem/BreadcrumbItem.mjs.map +1 -1
  63. package/dist/js/packages/components/src/components/Button/Button.mjs +10 -2
  64. package/dist/js/packages/components/src/components/Button/Button.mjs.map +1 -1
  65. package/dist/js/packages/components/src/components/Button/Button.module.mjs +6 -2
  66. package/dist/js/packages/components/src/components/Button/Button.module.mjs.map +1 -1
  67. package/dist/js/packages/components/src/components/Calendar/Calendar.mjs +7 -4
  68. package/dist/js/packages/components/src/components/Calendar/Calendar.mjs.map +1 -1
  69. package/dist/js/packages/components/src/components/Calendar/Calendar.module.mjs +6 -2
  70. package/dist/js/packages/components/src/components/Calendar/Calendar.module.mjs.map +1 -1
  71. package/dist/js/packages/components/src/components/Calendar/components/CalendarHeader/CalendarHeader.mjs.map +1 -1
  72. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/RangeCalendar.mjs +5 -2
  73. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/RangeCalendar.mjs.map +1 -1
  74. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.mjs +1 -1
  75. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.mjs.map +1 -1
  76. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.mjs +11 -0
  77. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.mjs.map +1 -1
  78. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.module.mjs +6 -2
  79. package/dist/js/packages/components/src/components/CartesianChart/CartesianChart.module.mjs.map +1 -1
  80. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/ChartTooltip.mjs.map +1 -1
  81. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/TooltipLegendItem.mjs.map +1 -1
  82. package/dist/js/packages/components/src/components/CartesianChart/components/ChartTooltip/TooltipProgressBar.mjs.map +1 -1
  83. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs +5 -1
  84. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs.map +1 -1
  85. package/dist/js/packages/components/src/components/Chat/Chat.mjs.map +1 -1
  86. package/dist/js/packages/components/src/components/Checkbox/Checkbox.mjs +20 -5
  87. package/dist/js/packages/components/src/components/Checkbox/Checkbox.mjs.map +1 -1
  88. package/dist/js/packages/components/src/components/Checkbox/Checkbox.module.mjs +6 -2
  89. package/dist/js/packages/components/src/components/Checkbox/Checkbox.module.mjs.map +1 -1
  90. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.mjs +17 -12
  91. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.mjs.map +1 -1
  92. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.module.mjs +3 -1
  93. package/dist/js/packages/components/src/components/CheckboxButton/CheckboxButton.module.mjs.map +1 -1
  94. package/dist/js/packages/components/src/components/CheckboxGroup/CheckboxGroup.mjs +4 -3
  95. package/dist/js/packages/components/src/components/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  96. package/dist/js/packages/components/src/components/CoachMark/CoachMark.mjs.map +1 -1
  97. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.mjs +8 -4
  98. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.mjs.map +1 -1
  99. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.module.mjs +6 -2
  100. package/dist/js/packages/components/src/components/CodeBlock/CodeBlock.module.mjs.map +1 -1
  101. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.mjs +70 -39
  102. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.mjs.map +1 -1
  103. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.module.mjs +8 -2
  104. package/dist/js/packages/components/src/components/CodeEditor/CodeEditor.module.mjs.map +1 -1
  105. package/dist/js/packages/components/src/components/CodeEditor/hooks/useCodeEditorExtensions.mjs +2 -2
  106. package/dist/js/packages/components/src/components/CodeEditor/hooks/useCodeEditorExtensions.mjs.map +1 -1
  107. package/dist/js/packages/components/src/components/CodeEditor/languages/dotEnv/index.mjs.map +1 -1
  108. package/dist/js/packages/components/src/components/CodeEditor/languages/index.mjs +2 -1
  109. package/dist/js/packages/components/src/components/CodeEditor/languages/index.mjs.map +1 -1
  110. package/dist/js/packages/components/src/components/CodeEditor/themes/defaultEditorTheme.mjs.map +1 -1
  111. package/dist/js/packages/components/src/components/Color/Color.mjs.map +1 -1
  112. package/dist/js/packages/components/src/components/ColumnLayout/ColumnLayout.mjs.map +1 -1
  113. package/dist/js/packages/components/src/components/Combine/Combine.mjs +1 -0
  114. package/dist/js/packages/components/src/components/Combine/Combine.mjs.map +1 -1
  115. package/dist/js/packages/components/src/components/Combine/Combine.module.mjs +4 -2
  116. package/dist/js/packages/components/src/components/Combine/Combine.module.mjs.map +1 -1
  117. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs +4 -3
  118. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs.map +1 -1
  119. package/dist/js/packages/components/src/components/ComboBox/ComboBox.module.mjs +3 -1
  120. package/dist/js/packages/components/src/components/ComboBox/ComboBox.module.mjs.map +1 -1
  121. package/dist/js/packages/components/src/components/Content/Content.mjs +2 -1
  122. package/dist/js/packages/components/src/components/Content/Content.mjs.map +1 -1
  123. package/dist/js/packages/components/src/components/ContextMenu/ContextMenu.mjs.map +1 -1
  124. package/dist/js/packages/components/src/components/ContextMenu/components/ContextMenuSection/ContextMenuSection.mjs.map +1 -1
  125. package/dist/js/packages/components/src/components/ContextMenu/components/ContextMenuSelectAll/ContextMenuSelectAll.mjs.map +1 -1
  126. package/dist/js/packages/components/src/components/ContextualHelp/ContextualHelp.mjs.map +1 -1
  127. package/dist/js/packages/components/src/components/ContextualHelp/components/ContextualHelpTrigger/ContextualHelpTrigger.mjs.map +1 -1
  128. package/dist/js/packages/components/src/components/CopyButton/CopyButton.mjs.map +1 -1
  129. package/dist/js/packages/components/src/components/CounterBadge/CounterBadge.mjs +4 -1
  130. package/dist/js/packages/components/src/components/CounterBadge/CounterBadge.mjs.map +1 -1
  131. package/dist/js/packages/components/src/components/CounterBadge/CounterBadge.module.mjs +8 -2
  132. package/dist/js/packages/components/src/components/CounterBadge/CounterBadge.module.mjs.map +1 -1
  133. package/dist/js/packages/components/src/components/CountryOptions/CountryOptions.mjs.map +1 -1
  134. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs +7 -5
  135. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs.map +1 -1
  136. package/dist/js/packages/components/src/components/DatePicker/components/DateInput/DateInput.mjs.map +1 -1
  137. package/dist/js/packages/components/src/components/DatePicker/components/DateInput/DateInput.module.mjs +3 -1
  138. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs +5 -3
  139. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs.map +1 -1
  140. package/dist/js/packages/components/src/components/DateRangePicker/components/DateRangeInput/DateRangeInput.mjs.map +1 -1
  141. package/dist/js/packages/components/src/components/DateRangePicker/components/DateRangeInput/DateRangeInput.module.mjs +3 -1
  142. package/dist/js/packages/components/src/components/DonutChart/DonutChart.mjs +30 -16
  143. package/dist/js/packages/components/src/components/DonutChart/DonutChart.mjs.map +1 -1
  144. package/dist/js/packages/components/src/components/DonutChart/DonutChart.module.mjs +6 -2
  145. package/dist/js/packages/components/src/components/DonutChart/DonutChart.module.mjs.map +1 -1
  146. package/dist/js/packages/components/src/components/DonutChart/components/Donut.mjs +5 -2
  147. package/dist/js/packages/components/src/components/DonutChart/components/Donut.mjs.map +1 -1
  148. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartFill.mjs.map +1 -1
  149. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartLegend.mjs.map +1 -1
  150. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartValue.mjs +1 -1
  151. package/dist/js/packages/components/src/components/DonutChart/components/DonutChartValue.mjs.map +1 -1
  152. package/dist/js/packages/components/src/components/EmulatedBoldText/EmulatedBoldText.mjs.map +1 -1
  153. package/dist/js/packages/components/src/components/FieldDescription/FieldDescription.mjs.map +1 -1
  154. package/dist/js/packages/components/src/components/FieldError/FieldError.mjs +43 -31
  155. package/dist/js/packages/components/src/components/FieldError/FieldError.mjs.map +1 -1
  156. package/dist/js/packages/components/src/components/FileCard/FileCard.mjs.map +1 -1
  157. package/dist/js/packages/components/src/components/FileCard/components/Avatar/Avatar.mjs.map +1 -1
  158. package/dist/js/packages/components/src/components/FileCard/components/DeleteButton/DeleteButton.mjs.map +1 -1
  159. package/dist/js/packages/components/src/components/FileCard/components/FileSizeText/FileSizeText.mjs.map +1 -1
  160. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.mjs +14 -9
  161. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.mjs.map +1 -1
  162. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.module.mjs +6 -2
  163. package/dist/js/packages/components/src/components/FileDropZone/FileDropZone.module.mjs.map +1 -1
  164. package/dist/js/packages/components/src/components/FileField/FileField.mjs +4 -3
  165. package/dist/js/packages/components/src/components/FileField/FileField.mjs.map +1 -1
  166. package/dist/js/packages/components/src/components/FileField/components/FileInput.mjs +2 -1
  167. package/dist/js/packages/components/src/components/FileField/components/FileInput.mjs.map +1 -1
  168. package/dist/js/packages/components/src/components/FileField/components/FileInput.module.mjs +3 -1
  169. package/dist/js/packages/components/src/components/FileField/components/FileInput.module.mjs.map +1 -1
  170. package/dist/js/packages/components/src/components/Flex/Flex.mjs.map +1 -1
  171. package/dist/js/packages/components/src/components/Header/Header.mjs.map +1 -1
  172. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.mjs +14 -5
  173. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.mjs.map +1 -1
  174. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.module.mjs.map +1 -1
  175. package/dist/js/packages/components/src/components/Heading/Heading.mjs +8 -1
  176. package/dist/js/packages/components/src/components/Heading/Heading.mjs.map +1 -1
  177. package/dist/js/packages/components/src/components/Icon/Icon.mjs +9 -0
  178. package/dist/js/packages/components/src/components/Icon/Icon.mjs.map +1 -1
  179. package/dist/js/packages/components/src/components/Icon/Icon.module.mjs +6 -2
  180. package/dist/js/packages/components/src/components/Icon/Icon.module.mjs.map +1 -1
  181. package/dist/js/packages/components/src/components/Icon/components/icons/IconAI.mjs.map +1 -1
  182. package/dist/js/packages/components/src/components/Icon/components/icons/IconAIHosting.mjs.map +1 -1
  183. package/dist/js/packages/components/src/components/Icon/components/icons/IconAnalytics.mjs.map +1 -1
  184. package/dist/js/packages/components/src/components/Icon/components/icons/IconApp.mjs.map +1 -1
  185. package/dist/js/packages/components/src/components/Icon/components/icons/IconAscending.mjs.map +1 -1
  186. package/dist/js/packages/components/src/components/Icon/components/icons/IconAttachment.mjs.map +1 -1
  187. package/dist/js/packages/components/src/components/Icon/components/icons/IconAutoresponder.mjs.map +1 -1
  188. package/dist/js/packages/components/src/components/Icon/components/icons/IconBackLink.mjs.map +1 -1
  189. package/dist/js/packages/components/src/components/Icon/components/icons/IconBackup.mjs.map +1 -1
  190. package/dist/js/packages/components/src/components/Icon/components/icons/IconBold.mjs.map +1 -1
  191. package/dist/js/packages/components/src/components/Icon/components/icons/IconCamera.mjs.map +1 -1
  192. package/dist/js/packages/components/src/components/Icon/components/icons/IconCertificate.mjs.map +1 -1
  193. package/dist/js/packages/components/src/components/Icon/components/icons/IconChangelog.mjs.map +1 -1
  194. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheck.mjs.map +1 -1
  195. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheckboxChecked.mjs.map +1 -1
  196. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheckboxEmpty.mjs.map +1 -1
  197. package/dist/js/packages/components/src/components/Icon/components/icons/IconCheckboxIndeterminate.mjs.map +1 -1
  198. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronDown.mjs.map +1 -1
  199. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronLeft.mjs.map +1 -1
  200. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronRight.mjs.map +1 -1
  201. package/dist/js/packages/components/src/components/Icon/components/icons/IconChevronUp.mjs.map +1 -1
  202. package/dist/js/packages/components/src/components/Icon/components/icons/IconClose.mjs.map +1 -1
  203. package/dist/js/packages/components/src/components/Icon/components/icons/IconCode.mjs.map +1 -1
  204. package/dist/js/packages/components/src/components/Icon/components/icons/IconContainer.mjs.map +1 -1
  205. package/dist/js/packages/components/src/components/Icon/components/icons/IconContextMenu.mjs.map +1 -1
  206. package/dist/js/packages/components/src/components/Icon/components/icons/IconContextMenuVertical.mjs.map +1 -1
  207. package/dist/js/packages/components/src/components/Icon/components/icons/IconContract.mjs.map +1 -1
  208. package/dist/js/packages/components/src/components/Icon/components/icons/IconContractPartner.mjs.map +1 -1
  209. package/dist/js/packages/components/src/components/Icon/components/icons/IconContributor.mjs.map +1 -1
  210. package/dist/js/packages/components/src/components/Icon/components/icons/IconCopy.mjs.map +1 -1
  211. package/dist/js/packages/components/src/components/Icon/components/icons/IconCronjob.mjs.map +1 -1
  212. package/dist/js/packages/components/src/components/Icon/components/icons/IconCustomer.mjs.map +1 -1
  213. package/dist/js/packages/components/src/components/Icon/components/icons/IconDanger.mjs.map +1 -1
  214. package/dist/js/packages/components/src/components/Icon/components/icons/IconDashboard.mjs.map +1 -1
  215. package/dist/js/packages/components/src/components/Icon/components/icons/IconDatabase.mjs.map +1 -1
  216. package/dist/js/packages/components/src/components/Icon/components/icons/IconDate.mjs.map +1 -1
  217. package/dist/js/packages/components/src/components/Icon/components/icons/IconDelete.mjs.map +1 -1
  218. package/dist/js/packages/components/src/components/Icon/components/icons/IconDeliveryBox.mjs.map +1 -1
  219. package/dist/js/packages/components/src/components/Icon/components/icons/IconDescending.mjs.map +1 -1
  220. package/dist/js/packages/components/src/components/Icon/components/icons/IconDesktop.mjs.map +1 -1
  221. package/dist/js/packages/components/src/components/Icon/components/icons/IconDirectory.mjs.map +1 -1
  222. package/dist/js/packages/components/src/components/Icon/components/icons/IconDnsSubZone.mjs.map +1 -1
  223. package/dist/js/packages/components/src/components/Icon/components/icons/IconDnsZone.mjs.map +1 -1
  224. package/dist/js/packages/components/src/components/Icon/components/icons/IconDomain.mjs.map +1 -1
  225. package/dist/js/packages/components/src/components/Icon/components/icons/IconDownload.mjs.map +1 -1
  226. package/dist/js/packages/components/src/components/Icon/components/icons/IconEdit.mjs.map +1 -1
  227. package/dist/js/packages/components/src/components/Icon/components/icons/IconEmail.mjs.map +1 -1
  228. package/dist/js/packages/components/src/components/Icon/components/icons/IconEmailArchive.mjs.map +1 -1
  229. package/dist/js/packages/components/src/components/Icon/components/icons/IconExtension.mjs.map +1 -1
  230. package/dist/js/packages/components/src/components/Icon/components/icons/IconExternalLink.mjs.map +1 -1
  231. package/dist/js/packages/components/src/components/Icon/components/icons/IconFailed.mjs.map +1 -1
  232. package/dist/js/packages/components/src/components/Icon/components/icons/IconFeedback.mjs.map +1 -1
  233. package/dist/js/packages/components/src/components/Icon/components/icons/IconFile.mjs.map +1 -1
  234. package/dist/js/packages/components/src/components/Icon/components/icons/IconFilter.mjs.map +1 -1
  235. package/dist/js/packages/components/src/components/Icon/components/icons/IconForwardAddress.mjs.map +1 -1
  236. package/dist/js/packages/components/src/components/Icon/components/icons/IconForwardLink.mjs.map +1 -1
  237. package/dist/js/packages/components/src/components/Icon/components/icons/IconHide.mjs.map +1 -1
  238. package/dist/js/packages/components/src/components/Icon/components/icons/IconHome.mjs.map +1 -1
  239. package/dist/js/packages/components/src/components/Icon/components/icons/IconImage.mjs.map +1 -1
  240. package/dist/js/packages/components/src/components/Icon/components/icons/IconInfo.mjs.map +1 -1
  241. package/dist/js/packages/components/src/components/Icon/components/icons/IconInvite.mjs.map +1 -1
  242. package/dist/js/packages/components/src/components/Icon/components/icons/IconInvoice.mjs.map +1 -1
  243. package/dist/js/packages/components/src/components/Icon/components/icons/IconItalic.mjs.map +1 -1
  244. package/dist/js/packages/components/src/components/Icon/components/icons/IconKnowledgeHint.mjs.map +1 -1
  245. package/dist/js/packages/components/src/components/Icon/components/icons/IconLanguage.mjs.map +1 -1
  246. package/dist/js/packages/components/src/components/Icon/components/icons/IconLeadFyndr.mjs.map +1 -1
  247. package/dist/js/packages/components/src/components/Icon/components/icons/IconLink.mjs.map +1 -1
  248. package/dist/js/packages/components/src/components/Icon/components/icons/IconLock.mjs.map +1 -1
  249. package/dist/js/packages/components/src/components/Icon/components/icons/IconLockOpen.mjs.map +1 -1
  250. package/dist/js/packages/components/src/components/Icon/components/icons/IconLogout.mjs.map +1 -1
  251. package/dist/js/packages/components/src/components/Icon/components/icons/IconMainUser.mjs.map +1 -1
  252. package/dist/js/packages/components/src/components/Icon/components/icons/IconMarketplace.mjs.map +1 -1
  253. package/dist/js/packages/components/src/components/Icon/components/icons/IconMaximize.mjs.map +1 -1
  254. package/dist/js/packages/components/src/components/Icon/components/icons/IconMember.mjs.map +1 -1
  255. package/dist/js/packages/components/src/components/Icon/components/icons/IconMenu.mjs.map +1 -1
  256. package/dist/js/packages/components/src/components/Icon/components/icons/IconMinimize.mjs.map +1 -1
  257. package/dist/js/packages/components/src/components/Icon/components/icons/IconMinus.mjs.map +1 -1
  258. package/dist/js/packages/components/src/components/Icon/components/icons/IconMittwald.mjs.map +1 -1
  259. package/dist/js/packages/components/src/components/Icon/components/icons/IconMobile.mjs.map +1 -1
  260. package/dist/js/packages/components/src/components/Icon/components/icons/IconMonitoring.mjs.map +1 -1
  261. package/dist/js/packages/components/src/components/Icon/components/icons/IconMove.mjs.map +1 -1
  262. package/dist/js/packages/components/src/components/Icon/components/icons/IconNewsletter.mjs.map +1 -1
  263. package/dist/js/packages/components/src/components/Icon/components/icons/IconNotification.mjs.map +1 -1
  264. package/dist/js/packages/components/src/components/Icon/components/icons/IconNumber.mjs.map +1 -1
  265. package/dist/js/packages/components/src/components/Icon/components/icons/IconOrder.mjs.map +1 -1
  266. package/dist/js/packages/components/src/components/Icon/components/icons/IconOrderedList.mjs.map +1 -1
  267. package/dist/js/packages/components/src/components/Icon/components/icons/IconPassword.mjs.map +1 -1
  268. package/dist/js/packages/components/src/components/Icon/components/icons/IconPath.mjs.map +1 -1
  269. package/dist/js/packages/components/src/components/Icon/components/icons/IconPause.mjs.map +1 -1
  270. package/dist/js/packages/components/src/components/Icon/components/icons/IconPayment.mjs.map +1 -1
  271. package/dist/js/packages/components/src/components/Icon/components/icons/IconPending.mjs.map +1 -1
  272. package/dist/js/packages/components/src/components/Icon/components/icons/IconPicture.mjs.map +1 -1
  273. package/dist/js/packages/components/src/components/Icon/components/icons/IconPlus.mjs.map +1 -1
  274. package/dist/js/packages/components/src/components/Icon/components/icons/IconProject.mjs.map +1 -1
  275. package/dist/js/packages/components/src/components/Icon/components/icons/IconQuote.mjs.map +1 -1
  276. package/dist/js/packages/components/src/components/Icon/components/icons/IconRadioOff.mjs.map +1 -1
  277. package/dist/js/packages/components/src/components/Icon/components/icons/IconRadioOn.mjs.map +1 -1
  278. package/dist/js/packages/components/src/components/Icon/components/icons/IconRedo.mjs.map +1 -1
  279. package/dist/js/packages/components/src/components/Icon/components/icons/IconRefresh.mjs.map +1 -1
  280. package/dist/js/packages/components/src/components/Icon/components/icons/IconRegistry.mjs.map +1 -1
  281. package/dist/js/packages/components/src/components/Icon/components/icons/IconSave.mjs.map +1 -1
  282. package/dist/js/packages/components/src/components/Icon/components/icons/IconSearch.mjs.map +1 -1
  283. package/dist/js/packages/components/src/components/Icon/components/icons/IconSecurity.mjs.map +1 -1
  284. package/dist/js/packages/components/src/components/Icon/components/icons/IconSend.mjs.map +1 -1
  285. package/dist/js/packages/components/src/components/Icon/components/icons/IconServer.mjs.map +1 -1
  286. package/dist/js/packages/components/src/components/Icon/components/icons/IconSettings.mjs.map +1 -1
  287. package/dist/js/packages/components/src/components/Icon/components/icons/IconShare.mjs.map +1 -1
  288. package/dist/js/packages/components/src/components/Icon/components/icons/IconShow.mjs.map +1 -1
  289. package/dist/js/packages/components/src/components/Icon/components/icons/IconSorting.mjs.map +1 -1
  290. package/dist/js/packages/components/src/components/Icon/components/icons/IconSsh.mjs.map +1 -1
  291. package/dist/js/packages/components/src/components/Icon/components/icons/IconSshKey.mjs.map +1 -1
  292. package/dist/js/packages/components/src/components/Icon/components/icons/IconSshSftp.mjs.map +1 -1
  293. package/dist/js/packages/components/src/components/Icon/components/icons/IconStack.mjs.map +1 -1
  294. package/dist/js/packages/components/src/components/Icon/components/icons/IconStar.mjs.map +1 -1
  295. package/dist/js/packages/components/src/components/Icon/components/icons/IconStarFilled.mjs.map +1 -1
  296. package/dist/js/packages/components/src/components/Icon/components/icons/IconStart.mjs.map +1 -1
  297. package/dist/js/packages/components/src/components/Icon/components/icons/IconStrikeThrough.mjs.map +1 -1
  298. package/dist/js/packages/components/src/components/Icon/components/icons/IconSubdomain.mjs.map +1 -1
  299. package/dist/js/packages/components/src/components/Icon/components/icons/IconSucceeded.mjs.map +1 -1
  300. package/dist/js/packages/components/src/components/Icon/components/icons/IconSuccess.mjs.map +1 -1
  301. package/dist/js/packages/components/src/components/Icon/components/icons/IconSupport.mjs.map +1 -1
  302. package/dist/js/packages/components/src/components/Icon/components/icons/IconTerminate.mjs.map +1 -1
  303. package/dist/js/packages/components/src/components/Icon/components/icons/IconTicket.mjs.map +1 -1
  304. package/dist/js/packages/components/src/components/Icon/components/icons/IconTime.mjs.map +1 -1
  305. package/dist/js/packages/components/src/components/Icon/components/icons/IconUnavailable.mjs.map +1 -1
  306. package/dist/js/packages/components/src/components/Icon/components/icons/IconUndo.mjs.map +1 -1
  307. package/dist/js/packages/components/src/components/Icon/components/icons/IconUnorderedList.mjs.map +1 -1
  308. package/dist/js/packages/components/src/components/Icon/components/icons/IconUpload.mjs.map +1 -1
  309. package/dist/js/packages/components/src/components/Icon/components/icons/IconUser.mjs.map +1 -1
  310. package/dist/js/packages/components/src/components/Icon/components/icons/IconVhost.mjs.map +1 -1
  311. package/dist/js/packages/components/src/components/Icon/components/icons/IconView.mjs.map +1 -1
  312. package/dist/js/packages/components/src/components/Icon/components/icons/IconVolume.mjs.map +1 -1
  313. package/dist/js/packages/components/src/components/Icon/components/icons/IconWarning.mjs.map +1 -1
  314. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.mjs.map +1 -1
  315. package/dist/js/packages/components/src/components/Image/Image.mjs +23 -0
  316. package/dist/js/packages/components/src/components/Image/Image.mjs.map +1 -1
  317. package/dist/js/packages/components/src/components/Image/Image.module.mjs +6 -2
  318. package/dist/js/packages/components/src/components/Image/Image.module.mjs.map +1 -1
  319. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.mjs +27 -22
  320. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.mjs.map +1 -1
  321. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.module.mjs +6 -2
  322. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.module.mjs.map +1 -1
  323. package/dist/js/packages/components/src/components/Initials/Initials.mjs +4 -1
  324. package/dist/js/packages/components/src/components/Initials/Initials.mjs.map +1 -1
  325. package/dist/js/packages/components/src/components/Initials/Initials.module.mjs +8 -2
  326. package/dist/js/packages/components/src/components/Initials/Initials.module.mjs.map +1 -1
  327. package/dist/js/packages/components/src/components/Initials/lib/getColorFromInitials.mjs.map +1 -1
  328. package/dist/js/packages/components/src/components/InlineCode/InlineCode.mjs +8 -1
  329. package/dist/js/packages/components/src/components/InlineCode/InlineCode.mjs.map +1 -1
  330. package/dist/js/packages/components/src/components/Kbd/Kbd.mjs +4 -1
  331. package/dist/js/packages/components/src/components/Kbd/Kbd.mjs.map +1 -1
  332. package/dist/js/packages/components/src/components/Kbd/Kbd.module.mjs +6 -2
  333. package/dist/js/packages/components/src/components/Kbd/Kbd.module.mjs.map +1 -1
  334. package/dist/js/packages/components/src/components/Label/Label.mjs +9 -2
  335. package/dist/js/packages/components/src/components/Label/Label.mjs.map +1 -1
  336. package/dist/js/packages/components/src/components/LabeledValue/LabeledValue.mjs.map +1 -1
  337. package/dist/js/packages/components/src/components/LayoutCard/LayoutCard.mjs +2 -1
  338. package/dist/js/packages/components/src/components/LayoutCard/LayoutCard.mjs.map +1 -1
  339. package/dist/js/packages/components/src/components/LayoutCard/LayoutCard.module.mjs +3 -1
  340. package/dist/js/packages/components/src/components/LayoutCard/LayoutCard.module.mjs.map +1 -1
  341. package/dist/js/packages/components/src/components/Legend/Legend.mjs.map +1 -1
  342. package/dist/js/packages/components/src/components/Legend/components/LegendItem/LegendItem.mjs +5 -2
  343. package/dist/js/packages/components/src/components/Legend/components/LegendItem/LegendItem.mjs.map +1 -1
  344. package/dist/js/packages/components/src/components/Legend/components/LegendItem/LegendItem.module.mjs +6 -2
  345. package/dist/js/packages/components/src/components/Legend/components/LegendItem/LegendItem.module.mjs.map +1 -1
  346. package/dist/js/packages/components/src/components/LightBox/LightBox.mjs.map +1 -1
  347. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGallery/Controls.mjs.map +1 -1
  348. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGallery/LightBoxGallery.mjs.map +1 -1
  349. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGallery/LightBoxGallery.module.mjs.map +1 -1
  350. package/dist/js/packages/components/src/components/LightBox/components/LightBoxGalleryItem/LightBoxGalleryItem.mjs.map +1 -1
  351. package/dist/js/packages/components/src/components/Link/Link.mjs +34 -14
  352. package/dist/js/packages/components/src/components/Link/Link.mjs.map +1 -1
  353. package/dist/js/packages/components/src/components/Link/components/LinkIcon/LinkIcon.mjs.map +1 -1
  354. package/dist/js/packages/components/src/components/List/List.mjs.map +1 -1
  355. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoaderSuspense.mjs.map +1 -1
  356. package/dist/js/packages/components/src/components/List/components/EmptySearchResultView/EmptySearchResultView.mjs.map +1 -1
  357. package/dist/js/packages/components/src/components/List/components/EmptyView/EmptyView.mjs.map +1 -1
  358. package/dist/js/packages/components/src/components/List/components/Footer/Footer.mjs.map +1 -1
  359. package/dist/js/packages/components/src/components/List/components/Footer/components/PaginationInfos/PaginationInfos.mjs.map +1 -1
  360. package/dist/js/packages/components/src/components/List/components/Footer/components/ShowNextBatchButton/ShowNextBatchButton.mjs.map +1 -1
  361. package/dist/js/packages/components/src/components/List/components/Header/Header.mjs.map +1 -1
  362. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs +1 -1
  363. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs.map +1 -1
  364. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.mjs +2 -1
  365. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.mjs.map +1 -1
  366. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordion.mjs +4 -1
  367. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordion.mjs.map +1 -1
  368. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionCheckboxGroup.mjs.map +1 -1
  369. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionDateRange.mjs.map +1 -1
  370. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/FilterAccordionRadioGroup.mjs.map +1 -1
  371. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/SortingAccordion.mjs +4 -1
  372. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/SortingAccordion.mjs.map +1 -1
  373. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion.mjs +4 -1
  374. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion.mjs.map +1 -1
  375. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.mjs.map +1 -1
  376. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenu.mjs.map +1 -1
  377. package/dist/js/packages/components/src/components/List/components/Header/components/SearchField/SearchField.mjs.map +1 -1
  378. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingContextMenu.mjs.map +1 -1
  379. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu.mjs.map +1 -1
  380. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeMenuItem.mjs.map +1 -1
  381. package/dist/js/packages/components/src/components/List/components/Items/Items.mjs.map +1 -1
  382. package/dist/js/packages/components/src/components/List/components/Items/components/Item/Item.mjs.map +1 -1
  383. package/dist/js/packages/components/src/components/List/components/Items/components/Item/components/AccordionButton.mjs.map +1 -1
  384. package/dist/js/packages/components/src/components/List/components/Items/components/Item/components/OptionsButton/OptionsButton.mjs.map +1 -1
  385. package/dist/js/packages/components/src/components/List/components/Items/views/GridListItem/GridListItem.mjs.map +1 -1
  386. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.mjs.map +1 -1
  387. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.module.mjs.map +1 -1
  388. package/dist/js/packages/components/src/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.mjs.map +1 -1
  389. package/dist/js/packages/components/src/components/List/components/ListSummary/ListSummary.mjs.map +1 -1
  390. package/dist/js/packages/components/src/components/List/components/Table/Table.mjs.map +1 -1
  391. package/dist/js/packages/components/src/components/List/components/Table/components/TableBodyLoadingView.mjs.map +1 -1
  392. package/dist/js/packages/components/src/components/List/components/Table/components/TableRowSkeletonView.mjs.map +1 -1
  393. package/dist/js/packages/components/src/components/List/hooks/useAriaAnnounceSearchState.mjs.map +1 -1
  394. package/dist/js/packages/components/src/components/List/model/List.mjs +15 -4
  395. package/dist/js/packages/components/src/components/List/model/List.mjs.map +1 -1
  396. package/dist/js/packages/components/src/components/List/model/ListSettingsStore.mjs.map +1 -1
  397. package/dist/js/packages/components/src/components/List/model/ListViewMode.mjs +35 -23
  398. package/dist/js/packages/components/src/components/List/model/ListViewMode.mjs.map +1 -1
  399. package/dist/js/packages/components/src/components/List/model/ReactTable.mjs +16 -10
  400. package/dist/js/packages/components/src/components/List/model/ReactTable.mjs.map +1 -1
  401. package/dist/js/packages/components/src/components/List/model/filter/DateRangeFilter.mjs +25 -13
  402. package/dist/js/packages/components/src/components/List/model/filter/DateRangeFilter.mjs.map +1 -1
  403. package/dist/js/packages/components/src/components/List/model/filter/Filter.mjs +20 -181
  404. package/dist/js/packages/components/src/components/List/model/filter/Filter.mjs.map +1 -1
  405. package/dist/js/packages/components/src/components/List/model/item/ItemCollection.mjs +11 -7
  406. package/dist/js/packages/components/src/components/List/model/item/ItemCollection.mjs.map +1 -1
  407. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoader.mjs +10 -13
  408. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoader.mjs.map +1 -1
  409. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoaderState.mjs +13 -61
  410. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoaderState.mjs.map +1 -1
  411. package/dist/js/packages/components/src/components/List/model/search/Search.mjs +19 -47
  412. package/dist/js/packages/components/src/components/List/model/search/Search.mjs.map +1 -1
  413. package/dist/js/packages/components/src/components/List/model/sorting/Sorting.mjs +15 -54
  414. package/dist/js/packages/components/src/components/List/model/sorting/Sorting.mjs.map +1 -1
  415. package/dist/js/packages/components/src/components/List/model/sorting/SortingFunctions.mjs.map +1 -1
  416. package/dist/js/packages/components/src/components/List/views/EmptyView/EmptyView.mjs.map +1 -1
  417. package/dist/js/packages/components/src/components/List/views/EmptyViewContainer/EmptyViewContainer.mjs.map +1 -1
  418. package/dist/js/packages/components/src/components/LoadingSpinner/LoadingSpinner.mjs +7 -0
  419. package/dist/js/packages/components/src/components/LoadingSpinner/LoadingSpinner.mjs.map +1 -1
  420. package/dist/js/packages/components/src/components/Markdown/Markdown.mjs +19 -3
  421. package/dist/js/packages/components/src/components/Markdown/Markdown.mjs.map +1 -1
  422. package/dist/js/packages/components/src/components/Markdown/Markdown.module.mjs +6 -2
  423. package/dist/js/packages/components/src/components/Markdown/Markdown.module.mjs.map +1 -1
  424. package/dist/js/packages/components/src/components/Markdown/components/SkeletonBlocks.mjs +82 -0
  425. package/dist/js/packages/components/src/components/Markdown/components/SkeletonBlocks.mjs.map +1 -0
  426. package/dist/js/packages/components/src/components/MarkdownEditor/MarkdownEditor.mjs +9 -6
  427. package/dist/js/packages/components/src/components/MarkdownEditor/MarkdownEditor.mjs.map +1 -1
  428. package/dist/js/packages/components/src/components/MarkdownEditor/MarkdownEditor.module.mjs +8 -2
  429. package/dist/js/packages/components/src/components/MarkdownEditor/MarkdownEditor.module.mjs.map +1 -1
  430. package/dist/js/packages/components/src/components/MarkdownEditor/components/AttachmentButton.mjs.map +1 -1
  431. package/dist/js/packages/components/src/components/MarkdownEditor/components/ModeButton.mjs.map +1 -1
  432. package/dist/js/packages/components/src/components/MarkdownEditor/components/Toolbar.mjs.map +1 -1
  433. package/dist/js/packages/components/src/components/MarkdownEditor/components/ToolbarButton.mjs.map +1 -1
  434. package/dist/js/packages/components/src/components/MarkdownEditor/lib/useFileUpload.mjs.map +1 -1
  435. package/dist/js/packages/components/src/components/MenuItem/MenuItem.mjs.map +1 -1
  436. package/dist/js/packages/components/src/components/MenuItem/components/MenuItemContent/MenuItemContent.mjs.map +1 -1
  437. package/dist/js/packages/components/src/components/Message/Message.mjs +2 -1
  438. package/dist/js/packages/components/src/components/Message/Message.mjs.map +1 -1
  439. package/dist/js/packages/components/src/components/MessageThread/MessageThread.mjs.map +1 -1
  440. package/dist/js/packages/components/src/components/MessageThread/components/MessageSeparator/MessageSeparator.mjs.map +1 -1
  441. package/dist/js/packages/components/src/components/Modal/Modal.mjs.map +1 -1
  442. package/dist/js/packages/components/src/components/Modal/Modal.module.mjs +2 -0
  443. package/dist/js/packages/components/src/components/Modal/Modal.module.mjs.map +1 -1
  444. package/dist/js/packages/components/src/components/Modal/components/ConfirmUnsavedChangesModal/ConfirmUnsavedChangesModal.mjs.map +1 -1
  445. package/dist/js/packages/components/src/components/Navigation/Navigation.mjs +8 -1
  446. package/dist/js/packages/components/src/components/Navigation/Navigation.mjs.map +1 -1
  447. package/dist/js/packages/components/src/components/Navigation/Navigation.module.mjs.map +1 -1
  448. package/dist/js/packages/components/src/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit.mjs.map +1 -1
  449. package/dist/js/packages/components/src/components/Navigation/components/NavigationGroup/NavigationGroup.mjs.map +1 -1
  450. package/dist/js/packages/components/src/components/Navigation/components/NavigationGroup/NavigationGroup.module.mjs.map +1 -1
  451. package/dist/js/packages/components/src/components/Notification/Notification.mjs +19 -11
  452. package/dist/js/packages/components/src/components/Notification/Notification.mjs.map +1 -1
  453. package/dist/js/packages/components/src/components/Notification/Notification.module.mjs +4 -2
  454. package/dist/js/packages/components/src/components/Notification/Notification.module.mjs.map +1 -1
  455. package/dist/js/packages/components/src/components/NotificationProvider/NotificationContainer/NotificationContainer.mjs +1 -1
  456. package/dist/js/packages/components/src/components/NotificationProvider/NotificationContainer/NotificationContainer.mjs.map +1 -1
  457. package/dist/js/packages/components/src/components/NumberField/NumberField.mjs +18 -7
  458. package/dist/js/packages/components/src/components/NumberField/NumberField.mjs.map +1 -1
  459. package/dist/js/packages/components/src/components/NumberField/NumberField.module.mjs +12 -2
  460. package/dist/js/packages/components/src/components/NumberField/NumberField.module.mjs.map +1 -1
  461. package/dist/js/packages/components/src/components/NumberField/components/NumberFieldUnit.mjs +36 -0
  462. package/dist/js/packages/components/src/components/NumberField/components/NumberFieldUnit.mjs.map +1 -0
  463. package/dist/js/packages/components/src/components/Option/Option.mjs.map +1 -1
  464. package/dist/js/packages/components/src/components/Options/Options.mjs.map +1 -1
  465. package/dist/js/packages/components/src/components/Overlay/Overlay.mjs.map +1 -1
  466. package/dist/js/packages/components/src/components/Overlay/components/OverlayContent.mjs +7 -2
  467. package/dist/js/packages/components/src/components/Overlay/components/OverlayContent.mjs.map +1 -1
  468. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.mjs +53 -24
  469. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.mjs.map +1 -1
  470. package/dist/js/packages/components/src/components/PasswordCreationField/PasswordCreationField.module.mjs +3 -1
  471. package/dist/js/packages/components/src/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.mjs +2 -2
  472. package/dist/js/packages/components/src/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.mjs.map +1 -1
  473. package/dist/js/packages/components/src/components/PasswordCreationField/components/PasswordGenerateButton/PasswordGenerateButton.mjs.map +1 -1
  474. package/dist/js/packages/components/src/components/PasswordCreationField/components/TogglePasswordVisibilityButton/TogglePasswordVisibilityButton.mjs.map +1 -1
  475. package/dist/js/packages/components/src/components/PasswordCreationField/components/ValidationResultButton/ValidationResultButton.mjs.map +1 -1
  476. package/dist/js/packages/components/src/components/PasswordCreationField/components/ValidationResultEntry/ValidationResultEntry.mjs.map +1 -1
  477. package/dist/js/packages/components/src/components/PasswordCreationField/lib/ariaAnnounce.mjs.map +1 -1
  478. package/dist/js/packages/components/src/components/PasswordCreationField/lib/usePolicyValidationResult.mjs +19 -0
  479. package/dist/js/packages/components/src/components/PasswordCreationField/lib/usePolicyValidationResult.mjs.map +1 -1
  480. package/dist/js/packages/components/src/components/Popover/Popover.mjs.map +1 -1
  481. package/dist/js/packages/components/src/components/Popover/components/NonModalPopoverContent/NonModalPopoverContent.mjs.map +1 -1
  482. package/dist/js/packages/components/src/components/Popover/components/PopoverContent/PopoverContent.mjs.map +1 -1
  483. package/dist/js/packages/components/src/components/Popover/components/PopoverTip/PopoverTip.mjs.map +1 -1
  484. package/dist/js/packages/components/src/components/Popover/viewportPadding.mjs.map +1 -1
  485. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.mjs +4 -1
  486. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.mjs.map +1 -1
  487. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.module.mjs +6 -2
  488. package/dist/js/packages/components/src/components/ProgressBar/ProgressBar.module.mjs.map +1 -1
  489. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarBar.mjs +2 -0
  490. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarBar.mjs.map +1 -1
  491. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarLegend.mjs.map +1 -1
  492. package/dist/js/packages/components/src/components/ProgressBar/components/ProgressBarValue.mjs.map +1 -1
  493. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.mjs +4 -2
  494. package/dist/js/packages/components/src/components/RadioGroup/RadioGroup.mjs.map +1 -1
  495. package/dist/js/packages/components/src/components/RadioGroup/components/Radio/Radio.mjs +14 -1
  496. package/dist/js/packages/components/src/components/RadioGroup/components/Radio/Radio.mjs.map +1 -1
  497. package/dist/js/packages/components/src/components/RadioGroup/components/Radio/Radio.module.mjs +6 -2
  498. package/dist/js/packages/components/src/components/RadioGroup/components/Radio/Radio.module.mjs.map +1 -1
  499. package/dist/js/packages/components/src/components/RadioGroup/components/RadioButton/RadioButton.mjs +4 -1
  500. package/dist/js/packages/components/src/components/RadioGroup/components/RadioButton/RadioButton.mjs.map +1 -1
  501. package/dist/js/packages/components/src/components/RadioGroup/components/RadioButton/RadioButton.module.mjs +3 -1
  502. package/dist/js/packages/components/src/components/Rating/Rating.mjs +8 -4
  503. package/dist/js/packages/components/src/components/Rating/Rating.mjs.map +1 -1
  504. package/dist/js/packages/components/src/components/Rating/Rating.module.mjs +6 -2
  505. package/dist/js/packages/components/src/components/Rating/Rating.module.mjs.map +1 -1
  506. package/dist/js/packages/components/src/components/Rating/components/RatingSegment/EmptySegment.mjs.map +1 -1
  507. package/dist/js/packages/components/src/components/Rating/components/RatingSegment/FilledSegment.mjs.map +1 -1
  508. package/dist/js/packages/components/src/components/Rating/components/RatingSegment/RatingSegment.mjs.map +1 -1
  509. package/dist/js/packages/components/src/components/SearchField/SearchField.mjs +4 -3
  510. package/dist/js/packages/components/src/components/SearchField/SearchField.mjs.map +1 -1
  511. package/dist/js/packages/components/src/components/SearchField/SearchField.module.mjs +3 -1
  512. package/dist/js/packages/components/src/components/SearchField/SearchField.module.mjs.map +1 -1
  513. package/dist/js/packages/components/src/components/Section/Section.mjs.map +1 -1
  514. package/dist/js/packages/components/src/components/Section/Section.module.mjs.map +1 -1
  515. package/dist/js/packages/components/src/components/Section/components/SectionHeader/SectionHeader.mjs.map +1 -1
  516. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.mjs +4 -2
  517. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  518. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.module.mjs +3 -1
  519. package/dist/js/packages/components/src/components/SegmentedControl/SegmentedControl.module.mjs.map +1 -1
  520. package/dist/js/packages/components/src/components/SegmentedControl/components/Segment/Segment.mjs.map +1 -1
  521. package/dist/js/packages/components/src/components/SegmentedControl/components/Segment/Segment.module.mjs +3 -1
  522. package/dist/js/packages/components/src/components/Select/Select.mjs +4 -3
  523. package/dist/js/packages/components/src/components/Select/Select.mjs.map +1 -1
  524. package/dist/js/packages/components/src/components/Select/Select.module.mjs +3 -1
  525. package/dist/js/packages/components/src/components/Select/Select.module.mjs.map +1 -1
  526. package/dist/js/packages/components/src/components/Separator/Separator.mjs.map +1 -1
  527. package/dist/js/packages/components/src/components/Skeleton/Skeleton.mjs.map +1 -1
  528. package/dist/js/packages/components/src/components/Skeleton/Skeleton.module.mjs +3 -3
  529. package/dist/js/packages/components/src/components/Skeleton/Skeleton.module.mjs.map +1 -1
  530. package/dist/js/packages/components/src/components/SkeletonMode/SkeletonMode.mjs +35 -0
  531. package/dist/js/packages/components/src/components/SkeletonMode/SkeletonMode.mjs.map +1 -0
  532. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.mjs +24 -0
  533. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.mjs.map +1 -0
  534. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.module.mjs +13 -0
  535. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.module.mjs.map +1 -0
  536. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonRawText/SkeletonRawText.mjs +25 -0
  537. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonRawText/SkeletonRawText.mjs.map +1 -0
  538. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.mjs +29 -0
  539. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.mjs.map +1 -0
  540. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.module.mjs +13 -0
  541. package/dist/js/packages/components/src/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.module.mjs.map +1 -0
  542. package/dist/js/packages/components/src/components/SkeletonMode/lib/hasContent.mjs +11 -0
  543. package/dist/js/packages/components/src/components/SkeletonMode/lib/hasContent.mjs.map +1 -0
  544. package/dist/js/packages/components/src/components/SkeletonMode/lib/isTextChild.mjs +19 -0
  545. package/dist/js/packages/components/src/components/SkeletonMode/lib/isTextChild.mjs.map +1 -0
  546. package/dist/js/packages/components/src/components/SkeletonMode/skeletonModeContext.mjs +27 -0
  547. package/dist/js/packages/components/src/components/SkeletonMode/skeletonModeContext.mjs.map +1 -0
  548. package/dist/js/packages/components/src/components/SkeletonText/SkeletonText.mjs.map +1 -1
  549. package/dist/js/packages/components/src/components/SkeletonText/SkeletonText.module.mjs +3 -3
  550. package/dist/js/packages/components/src/components/SkeletonText/SkeletonText.module.mjs.map +1 -1
  551. package/dist/js/packages/components/src/components/Slider/Slider.mjs +13 -4
  552. package/dist/js/packages/components/src/components/Slider/Slider.mjs.map +1 -1
  553. package/dist/js/packages/components/src/components/Slider/Slider.module.mjs +3 -1
  554. package/dist/js/packages/components/src/components/Slider/Slider.module.mjs.map +1 -1
  555. package/dist/js/packages/components/src/components/Switch/Switch.mjs +7 -4
  556. package/dist/js/packages/components/src/components/Switch/Switch.mjs.map +1 -1
  557. package/dist/js/packages/components/src/components/Switch/Switch.module.mjs +3 -1
  558. package/dist/js/packages/components/src/components/Switch/Switch.module.mjs.map +1 -1
  559. package/dist/js/packages/components/src/components/TabNavigation/TabNavigation.mjs +3 -0
  560. package/dist/js/packages/components/src/components/TabNavigation/TabNavigation.mjs.map +1 -1
  561. package/dist/js/packages/components/src/components/TabNavigation/components/LinkContent/LinkContent.mjs.map +1 -1
  562. package/dist/js/packages/components/src/components/Table/Table.mjs.map +1 -1
  563. package/dist/js/packages/components/src/components/Table/components/TableBody/TableBody.mjs.map +1 -1
  564. package/dist/js/packages/components/src/components/Table/components/TableCell/TableCell.mjs +2 -1
  565. package/dist/js/packages/components/src/components/Table/components/TableCell/TableCell.mjs.map +1 -1
  566. package/dist/js/packages/components/src/components/Table/components/TableColumn/TableColumn.mjs +2 -1
  567. package/dist/js/packages/components/src/components/Table/components/TableColumn/TableColumn.mjs.map +1 -1
  568. package/dist/js/packages/components/src/components/Table/components/TableHeader/TableHeader.mjs.map +1 -1
  569. package/dist/js/packages/components/src/components/Table/components/TableRow/TableRow.mjs.map +1 -1
  570. package/dist/js/packages/components/src/components/Tabs/Tabs.mjs +1 -1
  571. package/dist/js/packages/components/src/components/Tabs/Tabs.mjs.map +1 -1
  572. package/dist/js/packages/components/src/components/Tabs/components/FallbackTab/FallbackTab.mjs +1 -1
  573. package/dist/js/packages/components/src/components/Tabs/components/FallbackTab/FallbackTab.mjs.map +1 -1
  574. package/dist/js/packages/components/src/components/Tabs/components/Tab/Tab.mjs.map +1 -1
  575. package/dist/js/packages/components/src/components/Tabs/components/TabList/TabList.mjs +5 -1
  576. package/dist/js/packages/components/src/components/Tabs/components/TabList/TabList.mjs.map +1 -1
  577. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.mjs +3 -1
  578. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.mjs.map +1 -1
  579. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.module.mjs +3 -1
  580. package/dist/js/packages/components/src/components/Tabs/components/TabTitle/TabTitle.module.mjs.map +1 -1
  581. package/dist/js/packages/components/src/components/Text/Text.mjs +9 -2
  582. package/dist/js/packages/components/src/components/Text/Text.mjs.map +1 -1
  583. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs +4 -3
  584. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs.map +1 -1
  585. package/dist/js/packages/components/src/components/TextArea/TextArea.module.mjs +3 -1
  586. package/dist/js/packages/components/src/components/TextField/TextField.mjs +5 -4
  587. package/dist/js/packages/components/src/components/TextField/TextField.mjs.map +1 -1
  588. package/dist/js/packages/components/src/components/TextField/TextField.module.mjs +3 -1
  589. package/dist/js/packages/components/src/components/TextField/TextField.module.mjs.map +1 -1
  590. package/dist/js/packages/components/src/components/TimeField/TimeField.mjs +6 -3
  591. package/dist/js/packages/components/src/components/TimeField/TimeField.mjs.map +1 -1
  592. package/dist/js/packages/components/src/components/TimeField/TimeField.module.mjs +3 -1
  593. package/dist/js/packages/components/src/components/Tooltip/Tooltip.mjs.map +1 -1
  594. package/dist/js/packages/components/src/components/Truncate/Truncate.mjs.map +1 -1
  595. package/dist/js/packages/components/src/components/TunnelEntry/TunnelEntry.mjs.map +1 -1
  596. package/dist/js/packages/components/src/components/propTypes/index.mjs +1 -0
  597. package/dist/js/packages/components/src/components/propTypes/index.mjs.map +1 -1
  598. package/dist/js/packages/components/src/integrations/nextjs/components/RouterProvider/RouterProvider.mjs.map +1 -1
  599. package/dist/js/packages/components/src/integrations/react-hook-form/components/Field/Field.mjs +4 -2
  600. package/dist/js/packages/components/src/integrations/react-hook-form/components/Field/Field.mjs.map +1 -1
  601. package/dist/js/packages/components/src/integrations/react-hook-form/components/Form/Form.mjs.map +1 -1
  602. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormAction/FormAction.mjs.map +1 -1
  603. package/dist/js/packages/components/src/integrations/react-hook-form/components/FormRootError/FormRootError.mjs.map +1 -1
  604. package/dist/js/packages/components/src/lib/hooks/fieldErrorRenderedContext.mjs +16 -0
  605. package/dist/js/packages/components/src/lib/hooks/fieldErrorRenderedContext.mjs.map +1 -0
  606. package/dist/js/packages/components/src/lib/hooks/useFieldComponent.mjs +14 -7
  607. package/dist/js/packages/components/src/lib/hooks/useFieldComponent.mjs.map +1 -1
  608. package/dist/js/packages/components/src/lib/hooks/useFieldError.mjs +34 -21
  609. package/dist/js/packages/components/src/lib/hooks/useFieldError.mjs.map +1 -1
  610. package/dist/js/packages/components/src/lib/propsContext/nestedPropsContext/types.mjs.map +1 -1
  611. package/dist/js/packages/components/src/lib/propsContext/overlayTriggerTunnel.mjs.map +1 -1
  612. package/dist/js/packages/components/src/lib/react/cloneElement.mjs.map +1 -1
  613. package/dist/js/packages/components/src/lib/react/components/Render/Render.mjs.map +1 -1
  614. package/dist/js/packages/components/src/lib/react/getPropsMerger.mjs.map +1 -1
  615. package/dist/js/packages/components/src/lib/remote/eventHandlerContext.mjs +3 -1
  616. package/dist/js/packages/components/src/lib/remote/eventHandlerContext.mjs.map +1 -1
  617. package/dist/js/packages/components/src/lib/theming/hooks/useDesignTokens.mjs.map +1 -1
  618. package/dist/js/packages/components/src/lib/tokens/CategoricalColors.mjs.map +1 -1
  619. package/dist/js/packages/components/src/lib/tokens/isCategoricalColor.mjs.map +1 -1
  620. package/dist/js/packages/components/src/lib/types/props.mjs.map +1 -1
  621. package/dist/js/packages/components/src/status/component-status.mjs +8 -0
  622. package/dist/js/packages/components/src/status/component-status.mjs.map +1 -1
  623. package/dist/js/packages/components/src/status/componentStatus.mjs.map +1 -1
  624. package/dist/js/packages/components/src/views/AccordionGroupView.mjs +16 -0
  625. package/dist/js/packages/components/src/views/AccordionGroupView.mjs.map +1 -0
  626. package/dist/js/packages/components-base/src/action/ActionState.mjs +87 -0
  627. package/dist/js/packages/components-base/src/action/ActionState.mjs.map +1 -0
  628. package/dist/js/packages/components-base/src/index.mjs +18 -0
  629. package/dist/js/packages/components-base/src/lib/array.mjs +9 -0
  630. package/dist/js/packages/components-base/src/lib/array.mjs.map +1 -0
  631. package/dist/js/packages/components-base/src/list/ListModelContext.mjs +19 -0
  632. package/dist/js/packages/components-base/src/list/ListModelContext.mjs.map +1 -0
  633. package/dist/js/packages/components-base/src/list/filter/ListDateRangeFilter.mjs +29 -0
  634. package/dist/js/packages/components-base/src/list/filter/ListDateRangeFilter.mjs.map +1 -0
  635. package/dist/js/packages/components-base/src/list/filter/ListFilter.mjs +229 -0
  636. package/dist/js/packages/components-base/src/list/filter/ListFilter.mjs.map +1 -0
  637. package/dist/js/packages/components-base/src/list/filter/ListFilterValue.mjs +51 -0
  638. package/dist/js/packages/components-base/src/list/filter/ListFilterValue.mjs.map +1 -0
  639. package/dist/js/packages/components-base/src/list/filter/dateRange.mjs +51 -0
  640. package/dist/js/packages/components-base/src/list/filter/dateRange.mjs.map +1 -0
  641. package/dist/js/packages/components-base/src/list/item/ListItem.mjs +21 -0
  642. package/dist/js/packages/components-base/src/list/item/ListItem.mjs.map +1 -0
  643. package/dist/js/packages/components-base/src/list/item/ListItemCollection.mjs +24 -0
  644. package/dist/js/packages/components-base/src/list/item/ListItemCollection.mjs.map +1 -0
  645. package/dist/js/packages/components-base/src/list/loading/ListLoaderState.mjs +86 -0
  646. package/dist/js/packages/components-base/src/list/loading/ListLoaderState.mjs.map +1 -0
  647. package/dist/js/packages/components-base/src/list/loading/types.mjs +29 -0
  648. package/dist/js/packages/components-base/src/list/loading/types.mjs.map +1 -0
  649. package/dist/js/packages/components-base/src/list/pagination/ListBatchesController.mjs +64 -0
  650. package/dist/js/packages/components-base/src/list/pagination/ListBatchesController.mjs.map +1 -0
  651. package/dist/js/packages/components-base/src/list/search/ListSearch.mjs +62 -0
  652. package/dist/js/packages/components-base/src/list/search/ListSearch.mjs.map +1 -0
  653. package/dist/js/packages/components-base/src/list/sorting/ListSorting.mjs +81 -0
  654. package/dist/js/packages/components-base/src/list/sorting/ListSorting.mjs.map +1 -0
  655. package/dist/js/packages/components-base/src/list/table/ListTable.mjs +80 -0
  656. package/dist/js/packages/components-base/src/list/table/ListTable.mjs.map +1 -0
  657. package/dist/js/packages/components-base/src/list/viewMode/ListViewMode.mjs +53 -0
  658. package/dist/js/packages/components-base/src/list/viewMode/ListViewMode.mjs.map +1 -0
  659. package/dist/js/packages/design-tokens/dist/json-runtime/all-dark.mjs +24 -4
  660. package/dist/js/packages/design-tokens/dist/json-runtime/all-dark.mjs.map +1 -1
  661. package/dist/js/packages/design-tokens/dist/json-runtime/all-light.mjs +24 -4
  662. package/dist/js/packages/design-tokens/dist/json-runtime/all-light.mjs.map +1 -1
  663. package/dist/types/_bundled/flow-components-base/action/ActionState.d.ts +36 -0
  664. package/dist/types/_bundled/flow-components-base/index.d.ts +23 -0
  665. package/dist/types/_bundled/flow-components-base/lib/array.d.ts +4 -0
  666. package/dist/types/_bundled/flow-components-base/list/ListModelContext.d.ts +30 -0
  667. package/dist/types/_bundled/flow-components-base/list/filter/ListDateRangeFilter.d.ts +18 -0
  668. package/dist/types/_bundled/flow-components-base/list/filter/ListFilter.d.ts +104 -0
  669. package/dist/types/_bundled/flow-components-base/list/filter/ListFilterValue.d.ts +21 -0
  670. package/dist/types/_bundled/flow-components-base/list/filter/dateRange.d.ts +23 -0
  671. package/dist/types/_bundled/flow-components-base/list/filter/types.d.ts +18 -0
  672. package/dist/types/_bundled/flow-components-base/list/item/ListItem.d.ts +10 -0
  673. package/dist/types/_bundled/flow-components-base/list/item/ListItemCollection.d.ts +14 -0
  674. package/dist/types/_bundled/flow-components-base/list/loading/ListLoaderState.d.ts +44 -0
  675. package/dist/types/_bundled/flow-components-base/list/loading/types.d.ts +69 -0
  676. package/dist/types/_bundled/flow-components-base/list/pagination/ListBatchesController.d.ts +32 -0
  677. package/dist/types/_bundled/flow-components-base/list/pagination/types.d.ts +17 -0
  678. package/dist/types/_bundled/flow-components-base/list/search/ListSearch.d.ts +27 -0
  679. package/dist/types/_bundled/flow-components-base/list/search/types.d.ts +5 -0
  680. package/dist/types/_bundled/flow-components-base/list/settings/types.d.ts +52 -0
  681. package/dist/types/_bundled/flow-components-base/list/sorting/ListSorting.d.ts +40 -0
  682. package/dist/types/_bundled/flow-components-base/list/sorting/types.d.ts +14 -0
  683. package/dist/types/_bundled/flow-components-base/list/table/ListTable.d.ts +34 -0
  684. package/dist/types/_bundled/flow-components-base/list/types.d.ts +18 -0
  685. package/dist/types/_bundled/flow-components-base/list/viewMode/ListViewMode.d.ts +25 -0
  686. package/dist/types/_bundled/flow-components-base/list/viewMode/types.d.ts +10 -0
  687. package/dist/types/components/Accordion/Accordion.d.ts +10 -1
  688. package/dist/types/components/AccordionGroup/AccordionGroup.d.ts +33 -0
  689. package/dist/types/components/AccordionGroup/context.d.ts +8 -0
  690. package/dist/types/components/AccordionGroup/index.d.ts +3 -0
  691. package/dist/types/components/AccordionGroup/lib/expansion.d.ts +16 -0
  692. package/dist/types/components/AccordionGroup/view.d.ts +7 -0
  693. package/dist/types/components/Action/models/ActionState.d.ts +8 -21
  694. package/dist/types/components/ActionGroup/ActionGroup.d.ts +3 -2
  695. package/dist/types/components/Button/Button.d.ts +7 -1
  696. package/dist/types/components/Button/stories/lib.d.ts +1 -1
  697. package/dist/types/components/CartesianChart/components/ChartTooltip/TooltipLegendItem.d.ts +3 -1
  698. package/dist/types/components/CartesianChart/components/YAxis/YAxis.d.ts +7 -0
  699. package/dist/types/components/CodeEditor/CodeEditor.d.ts +12 -2
  700. package/dist/types/components/CodeEditor/hooks/useCodeEditorExtensions.d.ts +32 -1
  701. package/dist/types/components/CodeEditor/languages/all.d.ts +1 -1
  702. package/dist/types/components/CodeEditor/languages/index.d.ts +1 -0
  703. package/dist/types/components/DonutChart/components/Donut.d.ts +2 -0
  704. package/dist/types/components/FileField/FileField.d.ts +1 -1
  705. package/dist/types/components/Link/Link.d.ts +5 -1
  706. package/dist/types/components/List/components/DataLoader/DataLoader.d.ts +1 -1
  707. package/dist/types/components/List/components/Header/lib.d.ts +1 -2
  708. package/dist/types/components/List/components/Items/components/Item/Item.d.ts +1 -1
  709. package/dist/types/components/List/components/Items/components/Item/hooks/useGridItemProps.d.ts +1 -1
  710. package/dist/types/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.d.ts +1 -1
  711. package/dist/types/components/List/model/List.d.ts +6 -1
  712. package/dist/types/components/List/model/ListSettingsStore.d.ts +2 -4
  713. package/dist/types/components/List/model/ListViewMode.d.ts +17 -10
  714. package/dist/types/components/List/model/ReactTable.d.ts +1 -1
  715. package/dist/types/components/List/model/filter/DateRangeFilter.d.ts +21 -9
  716. package/dist/types/components/List/model/filter/Filter.d.ts +18 -52
  717. package/dist/types/components/List/model/filter/FilterValue.d.ts +10 -11
  718. package/dist/types/components/List/model/filter/types.d.ts +6 -18
  719. package/dist/types/components/List/model/item/Item.d.ts +8 -7
  720. package/dist/types/components/List/model/item/ItemCollection.d.ts +9 -4
  721. package/dist/types/components/List/model/loading/IncrementalLoaderState.d.ts +11 -21
  722. package/dist/types/components/List/model/loading/types.d.ts +5 -26
  723. package/dist/types/components/List/model/pagination/BatchesController.d.ts +1 -15
  724. package/dist/types/components/List/model/pagination/types.d.ts +1 -3
  725. package/dist/types/components/List/model/search/Search.d.ts +16 -19
  726. package/dist/types/components/List/model/search/types.d.ts +6 -8
  727. package/dist/types/components/List/model/sorting/Sorting.d.ts +14 -22
  728. package/dist/types/components/List/model/sorting/SortingFunctions.d.ts +1 -1
  729. package/dist/types/components/List/model/sorting/types.d.ts +1 -13
  730. package/dist/types/components/List/model/types.d.ts +7 -24
  731. package/dist/types/components/List/typedList.d.ts +5 -5
  732. package/dist/types/components/Markdown/components/SkeletonBlocks.d.ts +15 -0
  733. package/dist/types/components/Modal/components/ModalTrigger/ModalTrigger.d.ts +1 -5
  734. package/dist/types/components/NumberField/NumberField.d.ts +5 -0
  735. package/dist/types/components/NumberField/components/NumberFieldUnit.d.ts +13 -0
  736. package/dist/types/components/PasswordCreationField/components/ComplexityIndicator/ComplexityIndicator.d.ts +5 -0
  737. package/dist/types/components/SkeletonMode/SkeletonMode.d.ts +16 -0
  738. package/dist/types/components/SkeletonMode/components/SkeletonIconSurface/SkeletonIconSurface.d.ts +10 -0
  739. package/dist/types/components/SkeletonMode/components/SkeletonIconSurface/index.d.ts +2 -0
  740. package/dist/types/components/SkeletonMode/components/SkeletonRawText/SkeletonRawText.d.ts +8 -0
  741. package/dist/types/components/SkeletonMode/components/SkeletonRawText/index.d.ts +2 -0
  742. package/dist/types/components/SkeletonMode/components/SkeletonTextContent/SkeletonTextContent.d.ts +12 -0
  743. package/dist/types/components/SkeletonMode/components/SkeletonTextContent/index.d.ts +2 -0
  744. package/dist/types/components/SkeletonMode/index.d.ts +3 -0
  745. package/dist/types/components/SkeletonMode/lib/hasContent.d.ts +3 -0
  746. package/dist/types/components/SkeletonMode/lib/isTextChild.d.ts +8 -0
  747. package/dist/types/components/SkeletonMode/skeletonModeContext.d.ts +16 -0
  748. package/dist/types/components/SkeletonMode/view.d.ts +7 -0
  749. package/dist/types/components/propTypes/index.d.ts +2 -0
  750. package/dist/types/components/public.d.ts +2 -0
  751. package/dist/types/integrations/react-hook-form/components/Field/Field.d.ts +1 -1
  752. package/dist/types/integrations/react-hook-form/components/Form/Form.d.ts +1 -1
  753. package/dist/types/integrations/react-hook-form/components/FormContextProvider/FormContextProvider.d.ts +1 -1
  754. package/dist/types/integrations/react-hook-form/components/FormSettingsProvider/FormSettingsProvider.d.ts +1 -1
  755. package/dist/types/lib/dev/parkPointer.d.ts +1 -0
  756. package/dist/types/lib/hooks/useFieldComponent.d.ts +24 -4
  757. package/dist/types/lib/hooks/useFieldError.d.ts +7 -1
  758. package/dist/types/lib/propsContext/nestedPropsContext/types.d.ts +3 -0
  759. package/dist/types/lib/propsContext/overlayTriggerTunnel.d.ts +2 -2
  760. package/dist/types/lib/remote/eventHandlerContext.d.ts +2 -1
  761. package/dist/types/lib/theming/hooks/useDesignTokens.d.ts +18 -2
  762. package/dist/types/lib/types/props.d.ts +14 -0
  763. package/dist/types/status/component-status.json.d.ts +8 -0
  764. package/dist/types/views/AccordionGroupView.d.ts +4 -0
  765. package/dist/types/views/SkeletonModeView.d.ts +4 -0
  766. package/package.json +15 -11
  767. package/dist/js/packages/components/src/components/List/model/filter/FilterValue.mjs +0 -43
  768. package/dist/js/packages/components/src/components/List/model/filter/FilterValue.mjs.map +0 -1
  769. package/dist/js/packages/components/src/components/List/model/filter/dateRangeFilterFn.mjs +0 -23
  770. package/dist/js/packages/components/src/components/List/model/filter/dateRangeFilterFn.mjs.map +0 -1
  771. package/dist/js/packages/components/src/components/List/model/item/Item.mjs +0 -20
  772. package/dist/js/packages/components/src/components/List/model/item/Item.mjs.map +0 -1
  773. package/dist/js/packages/components/src/components/List/model/pagination/BatchesController.mjs +0 -58
  774. package/dist/js/packages/components/src/components/List/model/pagination/BatchesController.mjs.map +0 -1
  775. package/dist/js/packages/components/src/lib/array/toArray.mjs +0 -8
  776. package/dist/js/packages/components/src/lib/array/toArray.mjs.map +0 -1
  777. package/dist/js/packages/components/src/lib/date/transformDateValueToDateTime.mjs +0 -15
  778. package/dist/js/packages/components/src/lib/date/transformDateValueToDateTime.mjs.map +0 -1
  779. package/dist/js/packages/components/src/lib/promises/sleep.mjs +0 -8
  780. package/dist/js/packages/components/src/lib/promises/sleep.mjs.map +0 -1
  781. package/dist/types/components/List/model/filter/dateRangeFilterFn.d.ts +0 -6
  782. package/dist/types/components/List/typedList.test-types.d.ts +0 -1
  783. package/dist/types/integrations/@mittwald/password-tools-js/passwordCreationFieldExport.test-types.d.ts +0 -1
  784. package/dist/types/lib/array/toArray.d.ts +0 -1
  785. package/dist/types/lib/types/array.d.ts +0 -1
  786. package/dist/types/lib/types/props.test-types.d.ts +0 -1
  787. /package/dist/types/{components/CartesianChart/typedCartesianChart.test-types.d.ts → lib/hooks/fieldErrorRenderedContext.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Navigation.mjs","names":[],"sources":["../../../../../../../src/components/Navigation/Navigation.tsx"],"sourcesContent":["import type { ComponentProps, PropsWithChildren, ReactNode } from \"react\";\nimport { Children } from \"react\";\nimport styles from \"./Navigation.module.scss\";\nimport clsx from \"clsx\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport type { ComponentPropsContext } from \"@/lib/propsContext/types\";\nimport { LinkListTunnelExit } from \"@/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit\";\nimport { containsTextChild } from \"@/lib/react/remote\";\n\nexport interface NavigationProps\n extends\n PropsWithChildren<ComponentProps<\"nav\">>,\n PropsWithClassName,\n FlowComponentProps<HTMLElement> {}\n\n/**\n * A bare text node is an anonymous flex item that no rule can reach, so give\n * the label an element the item can truncate.\n */\nconst wrapTextInLabel = (children: ReactNode): ReactNode =>\n Children.map(children, (child) =>\n containsTextChild(child) ? <span>{child}</span> : child,\n );\n\n/** @flr-generate all */\nexport const Navigation = flowComponent(\"Navigation\", (props) => {\n const { className, children, ref, ...rest } = props;\n\n const rootClassName = clsx(styles.navigation, className);\n\n const linkPropsContext: ComponentPropsContext<\"Link\"> = {\n wrapWith: <li />,\n className: styles.item,\n unstyled: true,\n children: dynamic((linkProps) => wrapTextInLabel(linkProps.children)),\n Icon: {\n className: styles.icon,\n size: \"m\",\n },\n Badge: { className: styles.badge },\n AlertBadge: { className: styles.badge },\n CounterBadge: { className: styles.badge },\n };\n\n return (\n <PropsContextProvider\n props={{\n Link: {\n ...linkPropsContext,\n tunnel: {\n id: \"links\",\n component: \"Navigation\",\n },\n },\n NavigationGroup: {\n Link: linkPropsContext,\n },\n }}\n >\n <nav className={rootClassName} role=\"navigation\" {...rest} ref={ref}>\n <LinkListTunnelExit id=\"links\" component=\"Navigation\" />\n {children}\n </nav>\n </PropsContextProvider>\n );\n});\n\nexport default Navigation;\n"],"mappings":";;;;;;;;;;;;;;;;AAwBA,IAAM,mBAAmB,aACvB,SAAS,IAAI,WAAW,UACtB,kBAAkB,KAAK,IAAI,oBAAC,QAAD,EAAA,UAAO,MAAY,CAAA,IAAI,KACpD;;AAGF,IAAa,aAAa,cAAc,eAAe,UAAU;CAC/D,MAAM,EAAE,WAAW,UAAU,KAAK,GAAG,SAAS;CAE9C,MAAM,gBAAgB,KAAK,0BAAO,YAAY,SAAS;CAEvD,MAAM,mBAAkD;EACtD,UAAU,oBAAC,MAAD,CAAK,CAAA;EACf,WAAW,0BAAO;EAClB,UAAU;EACV,UAAU,SAAS,cAAc,gBAAgB,UAAU,QAAQ,CAAC;EACpE,MAAM;GACJ,WAAW,0BAAO;GAClB,MAAM;EACR;EACA,OAAO,EAAE,WAAW,0BAAO,MAAM;EACjC,YAAY,EAAE,WAAW,0BAAO,MAAM;EACtC,cAAc,EAAE,WAAW,0BAAO,MAAM;CAC1C;CAEA,OACE,oBAAC,sBAAD;EACE,OAAO;GACL,MAAM;IACJ,GAAG;IACH,QAAQ;KACN,IAAI;KACJ,WAAW;IACb;GACF;GACA,iBAAiB,EACf,MAAM,iBACR;EACF;EAEA,UAAA,qBAAC,OAAD;GAAK,WAAW;GAAe,MAAK;GAAa,GAAI;GAAW;GAAhE,UAAA,CACE,oBAAC,oBAAD;IAAoB,IAAG;IAAQ,WAAU;GAAc,CAAA,GACtD,QACE;;CACe,CAAA;AAE1B,CAAC"}
1
+ {"version":3,"file":"Navigation.mjs","names":["styles"],"sources":["../../../../../../../src/components/Navigation/Navigation.tsx"],"sourcesContent":["import type { ComponentProps, PropsWithChildren, ReactNode } from \"react\";\nimport { Children } from \"react\";\nimport styles from \"./Navigation.module.scss\";\nimport clsx from \"clsx\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport type { ComponentPropsContext } from \"@/lib/propsContext/types\";\nimport { LinkListTunnelExit } from \"@/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit\";\nimport { containsTextChild } from \"@/lib/react/remote\";\nimport { SkeletonTextContent } from \"@/components/SkeletonMode/components/SkeletonTextContent\";\n\nexport interface NavigationProps\n extends\n PropsWithChildren<ComponentProps<\"nav\">>,\n PropsWithClassName,\n FlowComponentProps<HTMLElement> {}\n\n/**\n * A bare text node is an anonymous flex item that no rule can reach, so give\n * the label an element the item can truncate.\n */\nconst wrapTextInLabel = (children: ReactNode): ReactNode =>\n Children.map(children, (child) => {\n const label = (\n <span>\n <SkeletonTextContent defaultWidth=\"6em\">{child}</SkeletonTextContent>\n </span>\n );\n\n return containsTextChild(child) ? label : child;\n });\n\n/** @flr-generate all */\nexport const Navigation = flowComponent(\"Navigation\", (props) => {\n const { className, children, ref, ...rest } = props;\n\n const rootClassName = clsx(styles.navigation, className);\n\n const linkPropsContext: ComponentPropsContext<\"Link\"> = {\n wrapWith: <li />,\n className: styles.item,\n unstyled: true,\n children: dynamic((linkProps) => wrapTextInLabel(linkProps.children)),\n Icon: {\n className: styles.icon,\n size: \"m\",\n },\n Badge: { className: styles.badge },\n AlertBadge: { className: styles.badge },\n CounterBadge: { className: styles.badge },\n };\n\n return (\n <PropsContextProvider\n props={{\n Link: {\n ...linkPropsContext,\n tunnel: {\n id: \"links\",\n component: \"Navigation\",\n },\n },\n NavigationGroup: {\n Link: linkPropsContext,\n },\n }}\n >\n <nav className={rootClassName} role=\"navigation\" {...rest} ref={ref}>\n <LinkListTunnelExit id=\"links\" component=\"Navigation\" />\n {children}\n </nav>\n </PropsContextProvider>\n );\n});\n\nexport default Navigation;\n"],"mappings":";;;;;;;;;;;;;;;;;AAyBA,IAAM,mBAAmB,aACvB,SAAS,IAAI,WAAW,UAAU;CAChC,MAAM,QACJ,oBAAC,QAAD,EAAA,UACE,oBAAC,qBAAD;EAAqB,cAAa;EAAO,UAAA;CAA2B,CAAA,EAChE,CAAA;CAGR,OAAO,kBAAkB,KAAK,IAAI,QAAQ;AAC5C,CAAC;;AAGH,IAAa,aAAa,cAAc,eAAe,UAAU;CAC/D,MAAM,EAAE,WAAW,UAAU,KAAK,GAAG,SAAS;CAE9C,MAAM,gBAAgB,KAAKA,0BAAO,YAAY,SAAS;CAEvD,MAAM,mBAAkD;EACtD,UAAU,oBAAC,MAAD,CAAK,CAAA;EACf,WAAWA,0BAAO;EAClB,UAAU;EACV,UAAU,SAAS,cAAc,gBAAgB,UAAU,QAAQ,CAAC;EACpE,MAAM;GACJ,WAAWA,0BAAO;GAClB,MAAM;EACR;EACA,OAAO,EAAE,WAAWA,0BAAO,MAAM;EACjC,YAAY,EAAE,WAAWA,0BAAO,MAAM;EACtC,cAAc,EAAE,WAAWA,0BAAO,MAAM;CAC1C;CAEA,OACE,oBAAC,sBAAD;EACE,OAAO;GACL,MAAM;IACJ,GAAG;IACH,QAAQ;KACN,IAAI;KACJ,WAAW;IACb;GACF;GACA,iBAAiB,EACf,MAAM,iBACR;EACF;EAEA,UAAA,qBAAC,OAAD;GAAK,WAAW;GAAe,MAAK;GAAa,GAAI;GAAW;GAAhE,UAAA,CACE,oBAAC,oBAAD;IAAoB,IAAG;IAAQ,WAAU;GAAc,CAAA,GACtD,QACE;;CACe,CAAA;AAE1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Navigation.module.mjs","names":[],"sources":["../../../../../../../src/components/Navigation/Navigation.module.scss"],"sourcesContent":["@use \"@/styles/mixins/menuItem\";\n@use \"@/styles/mixins/ellipsis\";\n\n.navigation {\n display: flex;\n flex-direction: column;\n min-width: 0;\n\n .linkList {\n display: flex;\n flex-direction: column;\n row-gap: var(--menu--item-to-item-spacing);\n\n &:empty {\n display: none;\n }\n }\n\n .item {\n @include menuItem.menuItem();\n\n > .icon {\n order: 0;\n flex-shrink: 0;\n }\n\n > :not(.icon) {\n order: 1;\n }\n\n > :not(.icon, .badge) {\n @include ellipsis.ellipsis;\n\n min-width: 0;\n }\n\n .badge {\n margin-inline-start: auto;\n flex-shrink: 0;\n }\n }\n\n // A consumer-placed `Separator`, which is a plain FC — Navigation's props\n // context cannot inject a class into it.\n // stylelint-disable-next-line selector-max-type -- consumer separator\n hr {\n margin-bottom: var(--menu--group-to-group-spacing);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Navigation.module.mjs","names":[],"sources":["../../../../../../../src/components/Navigation/Navigation.module.scss"],"sourcesContent":["@use \"@/styles/mixins/menuItem\";\n@use \"@/styles/mixins/ellipsis\";\n\n.navigation {\n display: flex;\n flex-direction: column;\n min-width: 0;\n\n /* Label and link texts line up with the content around the navigation;\n only the hover backgrounds reach past it. */\n margin-inline: calc(var(--menu-item--padding-x) * -1);\n\n .linkList {\n display: flex;\n flex-direction: column;\n row-gap: var(--menu--item-to-item-spacing);\n\n &:empty {\n display: none;\n }\n }\n\n .item {\n @include menuItem.menuItem();\n\n > .icon {\n order: 0;\n flex-shrink: 0;\n }\n\n > :not(.icon) {\n order: 1;\n }\n\n > :not(.icon, .badge) {\n @include ellipsis.ellipsis;\n\n min-width: 0;\n }\n\n .badge {\n margin-inline-start: auto;\n flex-shrink: 0;\n }\n }\n\n // A consumer-placed `Separator`, which is a plain FC — Navigation's props\n // context cannot inject a class into it.\n // stylelint-disable-next-line selector-max-type -- consumer separator\n hr {\n margin-bottom: var(--menu--group-to-group-spacing);\n }\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"LinkListTunnelExit.mjs","names":[],"sources":["../../../../../../../../../src/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit.tsx"],"sourcesContent":["import { Children } from \"react\";\nimport { UiComponentTunnelExit } from \"@/components/UiComponentTunnel/UiComponentTunnelExit\";\nimport styles from \"../../Navigation.module.scss\";\n\nexport const LinkListTunnelExit: typeof UiComponentTunnelExit = (props) => {\n return (\n <UiComponentTunnelExit\n {...props}\n children={(children) => {\n if (Children.count(children) >= 1) {\n return <ul className={styles.linkList}>{children}</ul>;\n }\n\n return null;\n }}\n />\n );\n};\n"],"mappings":";;;;;;;AAIA,IAAa,sBAAoD,UAAU;CACzE,OACE,oBAAC,uBAAD;EACE,GAAI;EACJ,WAAW,aAAa;GACtB,IAAI,SAAS,MAAM,QAAQ,KAAK,GAC9B,OAAO,oBAAC,MAAD;IAAI,WAAW,0BAAO;IAAW;GAAa,CAAA;GAGvD,OAAO;EACT;CACD,CAAA;AAEL"}
1
+ {"version":3,"file":"LinkListTunnelExit.mjs","names":["styles"],"sources":["../../../../../../../../../src/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit.tsx"],"sourcesContent":["import { Children } from \"react\";\nimport { UiComponentTunnelExit } from \"@/components/UiComponentTunnel/UiComponentTunnelExit\";\nimport styles from \"../../Navigation.module.scss\";\n\nexport const LinkListTunnelExit: typeof UiComponentTunnelExit = (props) => {\n return (\n <UiComponentTunnelExit\n {...props}\n children={(children) => {\n if (Children.count(children) >= 1) {\n return <ul className={styles.linkList}>{children}</ul>;\n }\n\n return null;\n }}\n />\n );\n};\n"],"mappings":";;;;;;;AAIA,IAAa,sBAAoD,UAAU;CACzE,OACE,oBAAC,uBAAD;EACE,GAAI;EACJ,WAAW,aAAa;GACtB,IAAI,SAAS,MAAM,QAAQ,KAAK,GAC9B,OAAO,oBAAC,MAAD;IAAI,WAAWA,0BAAO;IAAW;GAAa,CAAA;GAGvD,OAAO;EACT;CACD,CAAA;AAEL"}
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationGroup.mjs","names":[],"sources":["../../../../../../../../../src/components/Navigation/components/NavigationGroup/NavigationGroup.tsx"],"sourcesContent":["import { type ComponentProps, type PropsWithChildren } from \"react\";\nimport { useId } from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"./NavigationGroup.module.scss\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport { Accordion } from \"@/components/Accordion\";\nimport { Content } from \"@/components/Content\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { LinkListTunnelExit } from \"@/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit\";\n\nexport interface NavigationGroupProps\n extends\n PropsWithChildren<ComponentProps<\"section\">>,\n FlowComponentProps<HTMLElement> {\n collapsable?: boolean;\n /**\n * Whether a `collapsable` group is initially expanded.\n *\n * @default true\n */\n defaultExpanded?: boolean;\n}\n\n/** @flr-generate all */\nexport const NavigationGroup = flowComponent(\"NavigationGroup\", (props) => {\n const {\n children,\n className,\n collapsable,\n defaultExpanded = true,\n \"aria-label\": ariaLabel,\n ...rest\n } = props;\n\n const rootClassName = clsx(\n styles.navigationGroup,\n collapsable && styles.collapsable,\n className,\n );\n\n const generatedId = useId();\n\n const propsContext: PropsContext = {\n Label: {\n id: ariaLabel ? undefined : generatedId,\n className: styles.label,\n },\n Link: {\n tunnel: {\n id: \"groupLinks\",\n component: \"NavigationGroup\",\n },\n },\n };\n\n const collapsableUi = (\n <Accordion defaultExpanded={defaultExpanded} className={rootClassName}>\n {children}\n <Content>\n <LinkListTunnelExit id=\"groupLinks\" component=\"NavigationGroup\" />\n </Content>\n </Accordion>\n );\n\n const defaultUi = (\n <section\n aria-labelledby={ariaLabel ? undefined : generatedId}\n aria-label={ariaLabel}\n className={rootClassName}\n {...rest}\n >\n {children}\n <LinkListTunnelExit id=\"groupLinks\" component=\"NavigationGroup\" />\n </section>\n );\n\n return (\n <PropsContextProvider props={propsContext} dependencies={[generatedId]}>\n {collapsable ? collapsableUi : defaultUi}\n </PropsContextProvider>\n );\n});\n\nexport default NavigationGroup;\n"],"mappings":";;;;;;;;;;;;;AA2BA,IAAa,kBAAkB,cAAc,oBAAoB,UAAU;CACzE,MAAM,EACJ,UACA,WACA,aACA,kBAAkB,MAClB,cAAc,WACd,GAAG,SACD;CAEJ,MAAM,gBAAgB,KACpB,+BAAO,iBACP,eAAe,+BAAO,aACtB,SACF;CAEA,MAAM,cAAc,MAAM;CAE1B,MAAM,eAA6B;EACjC,OAAO;GACL,IAAI,YAAY,KAAA,IAAY;GAC5B,WAAW,+BAAO;EACpB;EACA,MAAM,EACJ,QAAQ;GACN,IAAI;GACJ,WAAW;EACb,EACF;CACF;CAEA,MAAM,gBACJ,qBAAC,WAAD;EAA4B;EAAiB,WAAW;EAAxD,UAAA,CACG,UACD,oBAAC,SAAD,EAAA,UACE,oBAAC,oBAAD;GAAoB,IAAG;GAAa,WAAU;EAAmB,CAAA,EAC1D,CAAA,CACA;;CAGb,MAAM,YACJ,qBAAC,WAAD;EACE,mBAAiB,YAAY,KAAA,IAAY;EACzC,cAAY;EACZ,WAAW;EACX,GAAI;EAJN,UAAA,CAMG,UACD,oBAAC,oBAAD;GAAoB,IAAG;GAAa,WAAU;EAAmB,CAAA,CAC1D;;CAGX,OACE,oBAAC,sBAAD;EAAsB,OAAO;EAAc,cAAc,CAAC,WAAW;EAClE,UAAA,cAAc,gBAAgB;CACX,CAAA;AAE1B,CAAC"}
1
+ {"version":3,"file":"NavigationGroup.mjs","names":["styles"],"sources":["../../../../../../../../../src/components/Navigation/components/NavigationGroup/NavigationGroup.tsx"],"sourcesContent":["import { type ComponentProps, type PropsWithChildren } from \"react\";\nimport { useId } from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"./NavigationGroup.module.scss\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport { Accordion } from \"@/components/Accordion\";\nimport { Content } from \"@/components/Content\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { LinkListTunnelExit } from \"@/components/Navigation/components/LinkListTunnelExit/LinkListTunnelExit\";\n\nexport interface NavigationGroupProps\n extends\n PropsWithChildren<ComponentProps<\"section\">>,\n FlowComponentProps<HTMLElement> {\n collapsable?: boolean;\n /**\n * Whether a `collapsable` group is initially expanded.\n *\n * @default true\n */\n defaultExpanded?: boolean;\n}\n\n/** @flr-generate all */\nexport const NavigationGroup = flowComponent(\"NavigationGroup\", (props) => {\n const {\n children,\n className,\n collapsable,\n defaultExpanded = true,\n \"aria-label\": ariaLabel,\n ...rest\n } = props;\n\n const rootClassName = clsx(\n styles.navigationGroup,\n collapsable && styles.collapsable,\n className,\n );\n\n const generatedId = useId();\n\n const propsContext: PropsContext = {\n Label: {\n id: ariaLabel ? undefined : generatedId,\n className: styles.label,\n },\n Link: {\n tunnel: {\n id: \"groupLinks\",\n component: \"NavigationGroup\",\n },\n },\n };\n\n const collapsableUi = (\n <Accordion defaultExpanded={defaultExpanded} className={rootClassName}>\n {children}\n <Content>\n <LinkListTunnelExit id=\"groupLinks\" component=\"NavigationGroup\" />\n </Content>\n </Accordion>\n );\n\n const defaultUi = (\n <section\n aria-labelledby={ariaLabel ? undefined : generatedId}\n aria-label={ariaLabel}\n className={rootClassName}\n {...rest}\n >\n {children}\n <LinkListTunnelExit id=\"groupLinks\" component=\"NavigationGroup\" />\n </section>\n );\n\n return (\n <PropsContextProvider props={propsContext} dependencies={[generatedId]}>\n {collapsable ? collapsableUi : defaultUi}\n </PropsContextProvider>\n );\n});\n\nexport default NavigationGroup;\n"],"mappings":";;;;;;;;;;;;;AA2BA,IAAa,kBAAkB,cAAc,oBAAoB,UAAU;CACzE,MAAM,EACJ,UACA,WACA,aACA,kBAAkB,MAClB,cAAc,WACd,GAAG,SACD;CAEJ,MAAM,gBAAgB,KACpBA,+BAAO,iBACP,eAAeA,+BAAO,aACtB,SACF;CAEA,MAAM,cAAc,MAAM;CAE1B,MAAM,eAA6B;EACjC,OAAO;GACL,IAAI,YAAY,KAAA,IAAY;GAC5B,WAAWA,+BAAO;EACpB;EACA,MAAM,EACJ,QAAQ;GACN,IAAI;GACJ,WAAW;EACb,EACF;CACF;CAEA,MAAM,gBACJ,qBAAC,WAAD;EAA4B;EAAiB,WAAW;EAAxD,UAAA,CACG,UACD,oBAAC,SAAD,EAAA,UACE,oBAAC,oBAAD;GAAoB,IAAG;GAAa,WAAU;EAAmB,CAAA,EAC1D,CAAA,CACA;;CAGb,MAAM,YACJ,qBAAC,WAAD;EACE,mBAAiB,YAAY,KAAA,IAAY;EACzC,cAAY;EACZ,WAAW;EACX,GAAI;EAJN,UAAA,CAMG,UACD,oBAAC,oBAAD;GAAoB,IAAG;GAAa,WAAU;EAAmB,CAAA,CAC1D;;CAGX,OACE,oBAAC,sBAAD;EAAsB,OAAO;EAAc,cAAc,CAAC,WAAW;EAClE,UAAA,cAAc,gBAAgB;CACX,CAAA;AAE1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationGroup.module.mjs","names":[],"sources":["../../../../../../../../../src/components/Navigation/components/NavigationGroup/NavigationGroup.module.scss"],"sourcesContent":[".navigationGroup {\n &:not(.collapsable) :global(.flow--navigation--link-list) {\n padding-inline: var(--accordion--padding-x);\n padding-block: var(--accordion--padding-y);\n }\n\n &:not(:last-child) {\n margin-bottom: var(--menu--group-to-group-spacing);\n }\n\n .label {\n display: block;\n padding-block: var(--accordion--padding-y);\n padding-inline: var(--accordion--padding-x);\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"NavigationGroup.module.mjs","names":[],"sources":["../../../../../../../../../src/components/Navigation/components/NavigationGroup/NavigationGroup.module.scss"],"sourcesContent":["/* Group label and toggle sit on the menu item's edge; the links are indented\n by one menu item padding, hover areas included. */\n.navigationGroup {\n :global(.flow--navigation--link-list) {\n padding-block: var(--menu--item-to-item-spacing);\n padding-inline: var(--menu-item--padding-x);\n }\n\n &:not(:last-child) {\n margin-bottom: var(--menu--group-to-group-spacing);\n }\n\n &:not(.collapsable) .label {\n display: block;\n padding-block: var(--menu-item--padding-y);\n padding-inline: var(--menu-item--padding-x);\n }\n\n &.collapsable {\n margin-inline: 0;\n\n :global(.flow--accordion--header-button) {\n padding-block: var(--menu-item--padding-y);\n padding-inline: var(--menu-item--padding-x);\n border-radius: var(--menu-item--corner-radius);\n }\n\n :global(.flow--accordion--content-inner) {\n padding: 0;\n }\n }\n}\n"],"mappings":""}
@@ -2,6 +2,7 @@
2
2
  /* */
3
3
  import { PropsContextProvider } from "../../lib/propsContext/components/PropsContextProvider.mjs";
4
4
  import dynamic from "../../lib/propsContext/dynamicProps/dynamic.mjs";
5
+ import { useSkeletonMode } from "../SkeletonMode/skeletonModeContext.mjs";
5
6
  import { IconClose } from "../Icon/components/icons/IconClose.mjs";
6
7
  import { Button } from "../Button/Button.mjs";
7
8
  import { AlertIcon } from "../AlertIcon/AlertIcon.mjs";
@@ -15,8 +16,9 @@ import { useLocalizedStringFormatter } from "react-aria";
15
16
  /** @flr-generate all */
16
17
  var Notification = (props) => {
17
18
  const { children, className, status = "info", role = "alert", href, onClick, onClose, autoClose: ignoredAutoClose, ...rest } = props;
18
- const rootClassName = clsx(Notification_module_default.notification, Notification_module_default[status], (onClick || onClose || href) && Notification_module_default.hasLink, className);
19
19
  const stringFormatter = useLocalizedStringFormatter(__locale_default);
20
+ const isSkeleton = useSkeletonMode();
21
+ const rootClassName = clsx(Notification_module_default.notification, Notification_module_default[status], (onClick || onClose || href) && !isSkeleton && Notification_module_default.hasLink, isSkeleton && Notification_module_default.skeleton, className);
20
22
  const propsContext = {
21
23
  Heading: {
22
24
  className: Notification_module_default.heading,
@@ -37,21 +39,27 @@ var Notification = (props) => {
37
39
  "aria-label": stringFormatter.format("notification.close"),
38
40
  children: /* @__PURE__ */ jsx(IconClose, {})
39
41
  });
42
+ const content = /* @__PURE__ */ jsx(PropsContextProvider, {
43
+ props: propsContext,
44
+ children
45
+ });
46
+ const skeletonBody = /* @__PURE__ */ jsx("div", {
47
+ className: Notification_module_default.link,
48
+ children: content
49
+ });
50
+ const linkBody = /* @__PURE__ */ jsx(Link, {
51
+ unstyled: true,
52
+ href,
53
+ className: Notification_module_default.link,
54
+ onPress: onClick,
55
+ children: content
56
+ });
40
57
  return /* @__PURE__ */ jsxs("div", {
41
58
  ...rest,
42
59
  className: rootClassName,
43
60
  role,
44
61
  "data-react-aria-top-layer": true,
45
- children: [/* @__PURE__ */ jsx(Link, {
46
- unstyled: true,
47
- href,
48
- className: Notification_module_default.link,
49
- onPress: onClick,
50
- children: /* @__PURE__ */ jsx(PropsContextProvider, {
51
- props: propsContext,
52
- children
53
- })
54
- }), closeButton]
62
+ children: [isSkeleton ? skeletonBody : linkBody, closeButton]
55
63
  });
56
64
  };
57
65
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"Notification.mjs","names":[],"sources":["../../../../../../../src/components/Notification/Notification.tsx"],"sourcesContent":["import { AlertIcon } from \"@/components/AlertIcon\";\nimport { Button } from \"@/components/Button\";\nimport { IconClose } from \"@/components/Icon/components/icons\";\nimport { Link } from \"@/components/Link\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport type { PropsWithStatus } from \"@/lib/types/props\";\nimport clsx from \"clsx\";\nimport type { ComponentProps, FC, PropsWithChildren } from \"react\";\nimport styles from \"./Notification.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\n\nexport interface NotificationProps\n extends PropsWithChildren<ComponentProps<\"div\">>, PropsWithStatus {\n /** A link that is triggered when clicking the notification. */\n href?: string;\n /** Whether the notification should disappear automatically after some time. */\n autoClose?: boolean;\n /** Handler that is called when the notification is clicked. */\n onClick?: () => void;\n /**\n * Handler that is called when the close button of the notification is\n * clicked.\n */\n onClose?: () => void;\n}\n\n/** @flr-generate all */\nexport const Notification: FC<NotificationProps> = (props) => {\n const {\n children,\n className,\n status = \"info\",\n role = \"alert\",\n href,\n onClick,\n onClose,\n autoClose: ignoredAutoClose,\n ...rest\n } = props;\n\n const rootClassName = clsx(\n styles.notification,\n styles[status],\n (onClick || onClose || href) && styles.hasLink,\n className,\n );\n\n const stringFormatter = useLocalizedStringFormatter(locales);\n\n const propsContext: PropsContext = {\n Heading: {\n className: styles.heading,\n level: 4,\n children: dynamic((props) => (\n <>\n <AlertIcon status={status} className={styles.icon} />\n {props.children}\n </>\n )),\n },\n Text: {\n className: styles.text,\n },\n };\n\n const closeButton = onClose && (\n <Button\n size=\"s\"\n className={styles.close}\n variant=\"plain\"\n color=\"secondary\"\n onPress={onClose}\n aria-label={stringFormatter.format(\"notification.close\")}\n >\n <IconClose />\n </Button>\n );\n\n return (\n <div\n {...rest}\n className={rootClassName}\n role={role}\n // See https://github.com/adobe/react-spectrum/blob/main/packages/%40react-aria/interactions/src/useInteractOutside.ts#L126C31-L126C58\n data-react-aria-top-layer\n >\n <Link unstyled href={href} className={styles.link} onPress={onClick}>\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Link>\n {closeButton}\n </div>\n );\n};\n\nexport default Notification;\n"],"mappings":";;;;;;;;;;;;;;;AA6BA,IAAa,gBAAuC,UAAU;CAC5D,MAAM,EACJ,UACA,WACA,SAAS,QACT,OAAO,SACP,MACA,SACA,SACA,WAAW,kBACX,GAAG,SACD;CAEJ,MAAM,gBAAgB,KACpB,4BAAO,cACP,4BAAO,UACN,WAAW,WAAW,SAAS,4BAAO,SACvC,SACF;CAEA,MAAM,kBAAkB,4BAA4B,gBAAO;CAE3D,MAAM,eAA6B;EACjC,SAAS;GACP,WAAW,4BAAO;GAClB,OAAO;GACP,UAAU,SAAS,UACjB,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,WAAD;IAAmB;IAAQ,WAAW,4BAAO;GAAO,CAAA,GACnD,MAAM,QACP,EAAA,CAAA,CACH;EACH;EACA,MAAM,EACJ,WAAW,4BAAO,KACpB;CACF;CAEA,MAAM,cAAc,WAClB,oBAAC,QAAD;EACE,MAAK;EACL,WAAW,4BAAO;EAClB,SAAQ;EACR,OAAM;EACN,SAAS;EACT,cAAY,gBAAgB,OAAO,oBAAoB;EAEvD,UAAA,oBAAC,WAAD,CAAY,CAAA;CACN,CAAA;CAGV,OACE,qBAAC,OAAD;EACE,GAAI;EACJ,WAAW;EACL;EAEN,6BAAA;EALF,UAAA,CAOE,oBAAC,MAAD;GAAM,UAAA;GAAe;GAAM,WAAW,4BAAO;GAAM,SAAS;GAC1D,UAAA,oBAAC,sBAAD;IAAsB,OAAO;IAC1B;GACmB,CAAA;EAClB,CAAA,GACL,WACE;;AAET"}
1
+ {"version":3,"file":"Notification.mjs","names":["locales","styles","_Fragment"],"sources":["../../../../../../../src/components/Notification/Notification.tsx"],"sourcesContent":["import { AlertIcon } from \"@/components/AlertIcon\";\nimport { Button } from \"@/components/Button\";\nimport { IconClose } from \"@/components/Icon/components/icons\";\nimport { Link } from \"@/components/Link\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport type { PropsWithStatus } from \"@/lib/types/props\";\nimport clsx from \"clsx\";\nimport type { ComponentProps, FC, PropsWithChildren } from \"react\";\nimport styles from \"./Notification.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"react-aria\";\nimport { useSkeletonMode } from \"@/components/SkeletonMode/skeletonModeContext\";\n\nexport interface NotificationProps\n extends PropsWithChildren<ComponentProps<\"div\">>, PropsWithStatus {\n /** A link that is triggered when clicking the notification. */\n href?: string;\n /** Whether the notification should disappear automatically after some time. */\n autoClose?: boolean;\n /** Handler that is called when the notification is clicked. */\n onClick?: () => void;\n /**\n * Handler that is called when the close button of the notification is\n * clicked.\n */\n onClose?: () => void;\n}\n\n/** @flr-generate all */\nexport const Notification: FC<NotificationProps> = (props) => {\n const {\n children,\n className,\n status = \"info\",\n role = \"alert\",\n href,\n onClick,\n onClose,\n autoClose: ignoredAutoClose,\n ...rest\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(locales);\n const isSkeleton = useSkeletonMode();\n\n const rootClassName = clsx(\n styles.notification,\n styles[status],\n (onClick || onClose || href) && !isSkeleton && styles.hasLink,\n isSkeleton && styles.skeleton,\n className,\n );\n\n const propsContext: PropsContext = {\n Heading: {\n className: styles.heading,\n level: 4,\n children: dynamic((props) => (\n <>\n <AlertIcon status={status} className={styles.icon} />\n {props.children}\n </>\n )),\n },\n Text: {\n className: styles.text,\n },\n };\n\n const closeButton = onClose && (\n <Button\n size=\"s\"\n className={styles.close}\n variant=\"plain\"\n color=\"secondary\"\n onPress={onClose}\n aria-label={stringFormatter.format(\"notification.close\")}\n >\n <IconClose />\n </Button>\n );\n\n const content = (\n <PropsContextProvider props={propsContext}>{children}</PropsContextProvider>\n );\n\n /*\n * In the mode, the content is not wrapped in a link: a link would draw its\n * whole content as one text bar, and there is nothing to click.\n */\n const skeletonBody = <div className={styles.link}>{content}</div>;\n\n const linkBody = (\n <Link unstyled href={href} className={styles.link} onPress={onClick}>\n {content}\n </Link>\n );\n\n return (\n <div\n {...rest}\n className={rootClassName}\n role={role}\n // See https://github.com/adobe/react-spectrum/blob/main/packages/%40react-aria/interactions/src/useInteractOutside.ts#L126C31-L126C58\n data-react-aria-top-layer\n >\n {isSkeleton ? skeletonBody : linkBody}\n {closeButton}\n </div>\n );\n};\n\nexport default Notification;\n"],"mappings":";;;;;;;;;;;;;;;;AA8BA,IAAa,gBAAuC,UAAU;CAC5D,MAAM,EACJ,UACA,WACA,SAAS,QACT,OAAO,SACP,MACA,SACA,SACA,WAAW,kBACX,GAAG,SACD;CAEJ,MAAM,kBAAkB,4BAA4BA,gBAAO;CAC3D,MAAM,aAAa,gBAAgB;CAEnC,MAAM,gBAAgB,KACpBC,4BAAO,cACPA,4BAAO,UACN,WAAW,WAAW,SAAS,CAAC,cAAcA,4BAAO,SACtD,cAAcA,4BAAO,UACrB,SACF;CAEA,MAAM,eAA6B;EACjC,SAAS;GACP,WAAWA,4BAAO;GAClB,OAAO;GACP,UAAU,SAAS,UACjB,qBAAAC,UAAA,EAAA,UAAA,CACE,oBAAC,WAAD;IAAmB;IAAQ,WAAWD,4BAAO;GAAO,CAAA,GACnD,MAAM,QACP,EAAA,CAAA,CACH;EACH;EACA,MAAM,EACJ,WAAWA,4BAAO,KACpB;CACF;CAEA,MAAM,cAAc,WAClB,oBAAC,QAAD;EACE,MAAK;EACL,WAAWA,4BAAO;EAClB,SAAQ;EACR,OAAM;EACN,SAAS;EACT,cAAY,gBAAgB,OAAO,oBAAoB;EAEvD,UAAA,oBAAC,WAAD,CAAY,CAAA;CACN,CAAA;CAGV,MAAM,UACJ,oBAAC,sBAAD;EAAsB,OAAO;EAAe;CAA+B,CAAA;CAO7E,MAAM,eAAe,oBAAC,OAAD;EAAK,WAAWA,4BAAO;EAAO,UAAA;CAAa,CAAA;CAEhE,MAAM,WACJ,oBAAC,MAAD;EAAM,UAAA;EAAe;EAAM,WAAWA,4BAAO;EAAM,SAAS;EACzD,UAAA;CACG,CAAA;CAGR,OACE,qBAAC,OAAD;EACE,GAAI;EACJ,WAAW;EACL;EAEN,6BAAA;EALF,UAAA,CAOG,aAAa,eAAe,UAC5B,WACE;;AAET"}
@@ -13,6 +13,7 @@ var warning = "flow--notification--warning";
13
13
  var danger = "flow--notification--danger";
14
14
  var success = "flow--notification--success";
15
15
  var unavailable = "flow--notification--unavailable";
16
+ var skeleton = "flow--notification--skeleton";
16
17
  var Notification_module_default = {
17
18
  notification,
18
19
  link,
@@ -25,9 +26,10 @@ var Notification_module_default = {
25
26
  warning,
26
27
  danger,
27
28
  success,
28
- unavailable
29
+ unavailable,
30
+ skeleton
29
31
  };
30
32
  //#endregion
31
- export { close, danger, Notification_module_default as default, hasLink, heading, icon, info, link, notification, success, text, unavailable, warning };
33
+ export { close, danger, Notification_module_default as default, hasLink, heading, icon, info, link, notification, skeleton, success, text, unavailable, warning };
32
34
 
33
35
  //# sourceMappingURL=Notification.module.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Notification.module.mjs","names":[],"sources":["../../../../../../../src/components/Notification/Notification.module.scss"],"sourcesContent":["@use \"@/styles/mixins/focus\";\n\n.notification {\n border-radius: var(--notification--corner-radius);\n width: var(--notification--width);\n max-width: var(--notification--max-width);\n box-shadow: var(--notification--box-shadow);\n position: relative;\n border: var(--notification--border-width) var(--notification--border-style)\n var(--notification--border-color);\n\n &::after {\n content: \"\";\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--notification--border-x-start-width);\n inset-inline-start: calc(var(--size-px--xxxs) * -1);\n border-start-start-radius: var(--notification--corner-radius);\n border-end-start-radius: var(--notification--corner-radius);\n }\n\n @extend .info;\n\n /* Elements */\n\n .link {\n padding: var(--notification--padding);\n padding-inline-start: calc(\n var(--notification--padding) + var(--notification--border-x-start-width)\n );\n display: flex;\n flex-direction: column;\n row-gap: var(--notification--heading-to-text-spacing);\n cursor: default;\n transition-property: background-color;\n transition-duration: var(--transition--duration--default);\n position: relative;\n border-radius: calc(var(--notification--corner-radius) - 1px);\n\n @include focus.focus;\n }\n\n .heading {\n --button-size: calc(\n var(--button--line-height-s) + 2 * var(--button--padding-s-x)\n );\n\n padding-inline-end: calc(\n var(--button-size) + var(--heading--icon-to-text-spacing)\n );\n\n .icon {\n height: var(--heading-line-height);\n width: var(--heading-line-height);\n vertical-align: bottom;\n display: inline-block;\n margin-inline-end: var(--heading--icon-to-text-spacing);\n }\n }\n\n .text {\n font-size: var(--notification--font-size);\n }\n\n .close {\n position: absolute;\n top: var(--notification--padding);\n inset-inline-end: var(--notification--padding);\n }\n\n /* Status */\n\n @mixin status($status) {\n &.#{$status} {\n .link {\n border-color: var(--notification--#{$status}-background-color--default);\n background-color: var(\n --notification--#{$status}-background-color--default\n );\n }\n\n &::after {\n background-color: var(--notification--#{$status}-border-color);\n }\n\n &.hasLink {\n .link {\n &:hover {\n background-color: var(\n --notification--#{$status}-background-color--hover\n );\n }\n\n &[data-pressed] {\n background-color: var(\n --notification--#{$status}-background-color--pressed\n );\n }\n }\n }\n\n .heading {\n color: var(--notification--#{$status}-heading-color);\n }\n }\n }\n\n @include status(info);\n @include status(warning);\n @include status(danger);\n @include status(success);\n @include status(unavailable);\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Notification.module.mjs","names":[],"sources":["../../../../../../../src/components/Notification/Notification.module.scss"],"sourcesContent":["@use \"@/styles/mixins/focus\";\n@use \"@/styles/mixins/skeleton\";\n\n.notification {\n border-radius: var(--notification--corner-radius);\n width: var(--notification--width);\n max-width: var(--notification--max-width);\n box-shadow: var(--notification--box-shadow);\n position: relative;\n border: var(--notification--border-width) var(--notification--border-style)\n var(--notification--border-color);\n\n &::after {\n content: \"\";\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--notification--border-x-start-width);\n inset-inline-start: calc(var(--size-px--xxxs) * -1);\n border-start-start-radius: var(--notification--corner-radius);\n border-end-start-radius: var(--notification--corner-radius);\n }\n\n @extend .info;\n\n /* Elements */\n\n .link {\n padding: var(--notification--padding);\n padding-inline-start: calc(\n var(--notification--padding) + var(--notification--border-x-start-width)\n );\n display: flex;\n flex-direction: column;\n row-gap: var(--notification--heading-to-text-spacing);\n cursor: default;\n transition-property: background-color;\n transition-duration: var(--transition--duration--default);\n position: relative;\n border-radius: calc(var(--notification--corner-radius) - 1px);\n\n @include focus.focus;\n }\n\n .heading {\n --button-size: calc(\n var(--button--line-height-s) + 2 * var(--button--padding-s-x)\n );\n\n padding-inline-end: calc(\n var(--button-size) + var(--heading--icon-to-text-spacing)\n );\n\n .icon {\n height: var(--heading-line-height);\n width: var(--heading-line-height);\n vertical-align: bottom;\n display: inline-block;\n margin-inline-end: var(--heading--icon-to-text-spacing);\n }\n }\n\n .text {\n font-size: var(--notification--font-size);\n }\n\n .close {\n position: absolute;\n top: var(--notification--padding);\n inset-inline-end: var(--notification--padding);\n }\n\n /* Status */\n\n @mixin status($status) {\n &.#{$status} {\n .link {\n border-color: var(--notification--#{$status}-background-color--default);\n background-color: var(\n --notification--#{$status}-background-color--default\n );\n }\n\n &::after {\n background-color: var(--notification--#{$status}-border-color);\n }\n\n &.hasLink {\n .link {\n &:hover {\n background-color: var(\n --notification--#{$status}-background-color--hover\n );\n }\n\n &[data-pressed] {\n background-color: var(\n --notification--#{$status}-background-color--pressed\n );\n }\n }\n }\n\n .heading {\n color: var(--notification--#{$status}-heading-color);\n }\n }\n }\n\n @include status(info);\n @include status(warning);\n @include status(danger);\n @include status(success);\n @include status(unavailable);\n\n /* SkeletonMode: no status color while the content loads */\n &.skeleton::after {\n background-color: skeleton.$background-color;\n }\n}\n"],"mappings":""}
@@ -6,8 +6,8 @@ import { useNotificationController } from "../NotificationProvider.mjs";
6
6
  import clsx from "clsx";
7
7
  import { Suspense } from "react";
8
8
  import { jsx } from "react/jsx-runtime";
9
- import { AnimatePresence, LazyMotion, MotionConfig, domAnimation, m } from "framer-motion";
10
9
  import { useIsSSR } from "react-aria";
10
+ import { AnimatePresence, LazyMotion, MotionConfig, domAnimation, m } from "framer-motion";
11
11
  import ReactDOM from "react-dom";
12
12
  //#region src/components/NotificationProvider/NotificationContainer/NotificationContainer.tsx
13
13
  var NotificationContainer = (props) => {
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationContainer.mjs","names":[],"sources":["../../../../../../../../src/components/NotificationProvider/NotificationContainer/NotificationContainer.tsx"],"sourcesContent":["import type { ComponentProps, FC } from \"react\";\nimport { Suspense } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport clsx from \"clsx\";\nimport styles from \"./NotificationContainer.module.scss\";\nimport ControlledNotification from \"@/components/NotificationProvider/ControlledNotification\";\nimport {\n AnimatePresence,\n domAnimation,\n LazyMotion,\n m,\n MotionConfig,\n} from \"framer-motion\";\nimport { useIsSSR } from \"react-aria\";\nimport { useNotificationController } from \"@/components/NotificationProvider/NotificationProvider\";\n\nexport type NotificationsContainerProps = ComponentProps<\"div\">;\n\nexport const NotificationContainer: FC<NotificationsContainerProps> = (\n props,\n) => {\n const { className, ...rest } = props;\n\n const controller = useNotificationController();\n const notifications = controller.useNotifications();\n const isSsr = useIsSSR();\n\n const rootClassName = clsx(styles.notificationContainer, className);\n\n const content = (\n <MotionConfig reducedMotion=\"user\">\n <LazyMotion features={domAnimation}>\n <div className={rootClassName} {...rest} data-react-aria-top-layer>\n <AnimatePresence>\n {notifications.map((n) => (\n <m.div\n className={styles.notification}\n key={n.meta.id}\n initial={{ opacity: 0, x: 200 }}\n animate={{ opacity: 1, x: 0 }}\n exit={{ opacity: 0, x: 200, height: 0, paddingBottom: 0 }}\n transition={{\n bounce: 0,\n }}\n >\n <Suspense>\n <ControlledNotification\n notification={n}\n controller={controller}\n />\n </Suspense>\n </m.div>\n ))}\n </AnimatePresence>\n </div>\n </LazyMotion>\n </MotionConfig>\n );\n\n return isSsr ? null : ReactDOM.createPortal(content, document.body);\n};\n\nexport default NotificationContainer;\n"],"mappings":";;;;;;;;;;;;AAkBA,IAAa,yBACX,UACG;CACH,MAAM,EAAE,WAAW,GAAG,SAAS;CAE/B,MAAM,aAAa,0BAA0B;CAC7C,MAAM,gBAAgB,WAAW,iBAAiB;CAClD,MAAM,QAAQ,SAAS;CAEvB,MAAM,gBAAgB,KAAK,qCAAO,uBAAuB,SAAS;CAElE,MAAM,UACJ,oBAAC,cAAD;EAAc,eAAc;EAC1B,UAAA,oBAAC,YAAD;GAAY,UAAU;GACpB,UAAA,oBAAC,OAAD;IAAK,WAAW;IAAe,GAAI;IAAM,6BAAA;IACvC,UAAA,oBAAC,iBAAD,EAAA,UACG,cAAc,KAAK,MAClB,oBAAC,EAAE,KAAH;KACE,WAAW,qCAAO;KAElB,SAAS;MAAE,SAAS;MAAG,GAAG;KAAI;KAC9B,SAAS;MAAE,SAAS;MAAG,GAAG;KAAE;KAC5B,MAAM;MAAE,SAAS;MAAG,GAAG;MAAK,QAAQ;MAAG,eAAe;KAAE;KACxD,YAAY,EACV,QAAQ,EACV;KAEA,UAAA,oBAAC,UAAD,EAAA,UACE,oBAAC,wBAAD;MACE,cAAc;MACF;KACb,CAAA,EACO,CAAA;IACL,GAdA,EAAE,KAAK,EAcP,CACR,EACc,CAAA;GACd,CAAA;EACK,CAAA;CACA,CAAA;CAGhB,OAAO,QAAQ,OAAO,SAAS,aAAa,SAAS,SAAS,IAAI;AACpE"}
1
+ {"version":3,"file":"NotificationContainer.mjs","names":["styles"],"sources":["../../../../../../../../src/components/NotificationProvider/NotificationContainer/NotificationContainer.tsx"],"sourcesContent":["import type { ComponentProps, FC } from \"react\";\nimport { Suspense } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport clsx from \"clsx\";\nimport styles from \"./NotificationContainer.module.scss\";\nimport ControlledNotification from \"@/components/NotificationProvider/ControlledNotification\";\nimport {\n AnimatePresence,\n domAnimation,\n LazyMotion,\n m,\n MotionConfig,\n} from \"framer-motion\";\nimport { useIsSSR } from \"react-aria\";\nimport { useNotificationController } from \"@/components/NotificationProvider/NotificationProvider\";\n\nexport type NotificationsContainerProps = ComponentProps<\"div\">;\n\nexport const NotificationContainer: FC<NotificationsContainerProps> = (\n props,\n) => {\n const { className, ...rest } = props;\n\n const controller = useNotificationController();\n const notifications = controller.useNotifications();\n const isSsr = useIsSSR();\n\n const rootClassName = clsx(styles.notificationContainer, className);\n\n const content = (\n <MotionConfig reducedMotion=\"user\">\n <LazyMotion features={domAnimation}>\n <div className={rootClassName} {...rest} data-react-aria-top-layer>\n <AnimatePresence>\n {notifications.map((n) => (\n <m.div\n className={styles.notification}\n key={n.meta.id}\n initial={{ opacity: 0, x: 200 }}\n animate={{ opacity: 1, x: 0 }}\n exit={{ opacity: 0, x: 200, height: 0, paddingBottom: 0 }}\n transition={{\n bounce: 0,\n }}\n >\n <Suspense>\n <ControlledNotification\n notification={n}\n controller={controller}\n />\n </Suspense>\n </m.div>\n ))}\n </AnimatePresence>\n </div>\n </LazyMotion>\n </MotionConfig>\n );\n\n return isSsr ? null : ReactDOM.createPortal(content, document.body);\n};\n\nexport default NotificationContainer;\n"],"mappings":";;;;;;;;;;;;AAkBA,IAAa,yBACX,UACG;CACH,MAAM,EAAE,WAAW,GAAG,SAAS;CAE/B,MAAM,aAAa,0BAA0B;CAC7C,MAAM,gBAAgB,WAAW,iBAAiB;CAClD,MAAM,QAAQ,SAAS;CAEvB,MAAM,gBAAgB,KAAKA,qCAAO,uBAAuB,SAAS;CAElE,MAAM,UACJ,oBAAC,cAAD;EAAc,eAAc;EAC1B,UAAA,oBAAC,YAAD;GAAY,UAAU;GACpB,UAAA,oBAAC,OAAD;IAAK,WAAW;IAAe,GAAI;IAAM,6BAAA;IACvC,UAAA,oBAAC,iBAAD,EAAA,UACG,cAAc,KAAK,MAClB,oBAAC,EAAE,KAAH;KACE,WAAWA,qCAAO;KAElB,SAAS;MAAE,SAAS;MAAG,GAAG;KAAI;KAC9B,SAAS;MAAE,SAAS;MAAG,GAAG;KAAE;KAC5B,MAAM;MAAE,SAAS;MAAG,GAAG;MAAK,QAAQ;MAAG,eAAe;KAAE;KACxD,YAAY,EACV,QAAQ,EACV;KAEA,UAAA,oBAAC,UAAD,EAAA,UACE,oBAAC,wBAAD;MACE,cAAc;MACF;KACb,CAAA,EACO,CAAA;IACL,GAdA,EAAE,KAAK,EAcP,CACR,EACc,CAAA;GACd,CAAA;EACK,CAAA;CACA,CAAA;CAGhB,OAAO,QAAQ,OAAO,SAAS,aAAa,SAAS,SAAS,IAAI;AACpE"}
@@ -11,20 +11,25 @@ import FormField_module_default from "../FormField/FormField.module.mjs";
11
11
  import { useFieldComponent } from "../../lib/hooks/useFieldComponent.mjs";
12
12
  import { useControlledHostValueProps } from "../../lib/remote/useControlledHostValueProps.mjs";
13
13
  import NumberField_module_default from "./NumberField.module.mjs";
14
+ import { NumberFieldUnit } from "./components/NumberFieldUnit.mjs";
14
15
  import clsx from "clsx";
15
- import "react";
16
+ import { useId } from "react";
16
17
  import { jsx, jsxs } from "react/jsx-runtime";
17
18
  import * as Aria from "react-aria-components";
18
19
  //#region src/components/NumberField/NumberField.tsx
19
20
  /** @flr-generate all */
20
21
  var NumberField = flowComponent("NumberField", (props) => {
21
- const { children, className, isWheelDisabled = true, ref, ...rest } = useControlledHostValueProps(props, NaN);
22
- const { FieldErrorView, FieldErrorCaptureContext, fieldProps, fieldPropsContext } = useFieldComponent(props, "NumberField");
22
+ const { children, className, isWheelDisabled = true, ref, unit, "aria-labelledby": ariaLabelledBy, ...rest } = useControlledHostValueProps(props, NaN);
23
+ const unitId = useId();
24
+ const { FieldErrorView, FieldErrorCaptureContext, wrapperProps, controlProps, fieldPropsContext, skeletonProps } = useFieldComponent(props, "NumberField");
23
25
  const rootClassName = clsx(FormField_module_default.formField, className);
24
26
  return /* @__PURE__ */ jsxs(Aria.NumberField, {
25
27
  ...rest,
28
+ ...skeletonProps,
26
29
  isWheelDisabled,
27
- className: clsx(rootClassName, fieldProps.className),
30
+ "aria-labelledby": unit ? [ariaLabelledBy, unitId].filter(Boolean).join(" ") : ariaLabelledBy,
31
+ "aria-describedby": controlProps["aria-describedby"],
32
+ className: clsx(rootClassName, wrapperProps.className),
28
33
  children: [/* @__PURE__ */ jsxs(PropsContextProvider, {
29
34
  props: fieldPropsContext,
30
35
  children: [/* @__PURE__ */ jsx(FieldErrorCaptureContext, { children }), /* @__PURE__ */ jsx(FieldErrorView, {})]
@@ -39,9 +44,15 @@ var NumberField = flowComponent("NumberField", (props) => {
39
44
  color: "secondary",
40
45
  children: [/* @__PURE__ */ jsx(IconChevronDown, {}), /* @__PURE__ */ jsx(IconMinus, { className: NumberField_module_default.coarsePointerIcon })]
41
46
  }),
42
- /* @__PURE__ */ jsx(Aria.Input, {
43
- className: NumberField_module_default.input,
44
- ref
47
+ /* @__PURE__ */ jsxs("div", {
48
+ className: NumberField_module_default.inputContainer,
49
+ children: [/* @__PURE__ */ jsx(Aria.Input, {
50
+ className: NumberField_module_default.input,
51
+ ref
52
+ }), unit && /* @__PURE__ */ jsx(NumberFieldUnit, {
53
+ id: unitId,
54
+ unit
55
+ })]
45
56
  }),
46
57
  /* @__PURE__ */ jsxs(Button, {
47
58
  ariaSlot: "increment",
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.mjs","names":[],"sources":["../../../../../../../src/components/NumberField/NumberField.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport formFieldStyles from \"@/components/FormField/FormField.module.scss\";\nimport styles from \"./NumberField.module.scss\";\nimport clsx from \"clsx\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport { Button } from \"@/components/Button\";\nimport {\n IconChevronDown,\n IconChevronUp,\n IconMinus,\n IconPlus,\n} from \"@/components/Icon/components/icons\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { useControlledHostValueProps } from \"@/lib/remote/useControlledHostValueProps\";\n\nexport interface NumberFieldProps\n extends\n PropsWithChildren<Omit<Aria.NumberFieldProps, \"children\">>,\n FlowComponentProps<HTMLInputElement> {}\n\n/** @flr-generate all */\nexport const NumberField = flowComponent(\"NumberField\", (props) => {\n // `NaN` is what react-aria's number field state uses for \"no number\"\n const {\n children,\n className,\n isWheelDisabled = true,\n ref,\n ...rest\n } = useControlledHostValueProps(props, NaN);\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props, \"NumberField\");\n\n const rootClassName = clsx(formFieldStyles.formField, className);\n\n return (\n <Aria.NumberField\n {...rest}\n isWheelDisabled={isWheelDisabled}\n className={clsx(rootClassName, fieldProps.className)}\n >\n <PropsContextProvider props={fieldPropsContext}>\n <FieldErrorCaptureContext>{children}</FieldErrorCaptureContext>\n <FieldErrorView />\n </PropsContextProvider>\n <Aria.Group className={styles.group}>\n <Button\n ariaSlot=\"decrement\"\n className={styles.decrementButton}\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n <IconMinus className={styles.coarsePointerIcon} />\n </Button>\n <Aria.Input className={styles.input} ref={ref} />\n <Button\n ariaSlot=\"increment\"\n className={styles.incrementButton}\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronUp />\n <IconPlus className={styles.coarsePointerIcon} />\n </Button>\n </Aria.Group>\n </Aria.NumberField>\n );\n});\n\nexport default NumberField;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAwBA,IAAa,cAAc,cAAc,gBAAgB,UAAU;CAEjE,MAAM,EACJ,UACA,WACA,kBAAkB,MAClB,KACA,GAAG,SACD,4BAA4B,OAAO,GAAG;CAE1C,MAAM,EACJ,gBACA,0BACA,YACA,sBACE,kBAAkB,OAAO,aAAa;CAE1C,MAAM,gBAAgB,KAAK,yBAAgB,WAAW,SAAS;CAE/D,OACE,qBAAC,KAAK,aAAN;EACE,GAAI;EACa;EACjB,WAAW,KAAK,eAAe,WAAW,SAAS;EAHrD,UAAA,CAKE,qBAAC,sBAAD;GAAsB,OAAO;GAA7B,UAAA,CACE,oBAAC,0BAAD,EAA2B,SAAmC,CAAA,GAC9D,oBAAC,gBAAD,CAAiB,CAAA,CACG;EACtB,CAAA,GAAA,qBAAC,KAAK,OAAN;GAAY,WAAW,2BAAO;GAA9B,UAAA;IACE,qBAAC,QAAD;KACE,UAAS;KACT,WAAW,2BAAO;KAClB,MAAK;KACL,SAAQ;KACR,OAAM;KALR,UAAA,CAOE,oBAAC,iBAAD,CAAkB,CAAA,GAClB,oBAAC,WAAD,EAAW,WAAW,2BAAO,kBAAoB,CAAA,CAC3C;;IACR,oBAAC,KAAK,OAAN;KAAY,WAAW,2BAAO;KAAY;IAAM,CAAA;IAChD,qBAAC,QAAD;KACE,UAAS;KACT,WAAW,2BAAO;KAClB,MAAK;KACL,SAAQ;KACR,OAAM;KALR,UAAA,CAOE,oBAAC,eAAD,CAAgB,CAAA,GAChB,oBAAC,UAAD,EAAU,WAAW,2BAAO,kBAAoB,CAAA,CAC1C;;GACE;EACI,CAAA,CAAA;;AAEtB,CAAC"}
1
+ {"version":3,"file":"NumberField.mjs","names":["formFieldStyles","styles"],"sources":["../../../../../../../src/components/NumberField/NumberField.tsx"],"sourcesContent":["import { type PropsWithChildren, useId } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport formFieldStyles from \"@/components/FormField/FormField.module.scss\";\nimport styles from \"./NumberField.module.scss\";\nimport clsx from \"clsx\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport { Button } from \"@/components/Button\";\nimport {\n IconChevronDown,\n IconChevronUp,\n IconMinus,\n IconPlus,\n} from \"@/components/Icon/components/icons\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { useControlledHostValueProps } from \"@/lib/remote/useControlledHostValueProps\";\nimport { NumberFieldUnit } from \"./components/NumberFieldUnit\";\n\nexport interface NumberFieldProps\n extends\n PropsWithChildren<Omit<Aria.NumberFieldProps, \"children\">>,\n FlowComponentProps<HTMLInputElement> {\n /**\n * A unit displayed after the number, for units `Intl.NumberFormat` does not\n * support (e.g. \"MiB\"). For supported units, use `formatOptions` instead.\n */\n unit?: string;\n}\n\n/** @flr-generate all */\nexport const NumberField = flowComponent(\"NumberField\", (props) => {\n // `NaN` is what react-aria's number field state uses for \"no number\"\n const {\n children,\n className,\n isWheelDisabled = true,\n ref,\n unit,\n \"aria-labelledby\": ariaLabelledBy,\n ...rest\n } = useControlledHostValueProps(props, NaN);\n\n const unitId = useId();\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n wrapperProps,\n controlProps,\n fieldPropsContext,\n skeletonProps,\n } = useFieldComponent(props, \"NumberField\");\n\n const rootClassName = clsx(formFieldStyles.formField, className);\n\n return (\n <Aria.NumberField\n {...rest}\n {...skeletonProps}\n isWheelDisabled={isWheelDisabled}\n aria-labelledby={\n unit\n ? [ariaLabelledBy, unitId].filter(Boolean).join(\" \")\n : ariaLabelledBy\n }\n aria-describedby={controlProps[\"aria-describedby\"]}\n className={clsx(rootClassName, wrapperProps.className)}\n >\n <PropsContextProvider props={fieldPropsContext}>\n <FieldErrorCaptureContext>{children}</FieldErrorCaptureContext>\n <FieldErrorView />\n </PropsContextProvider>\n <Aria.Group className={styles.group}>\n <Button\n ariaSlot=\"decrement\"\n className={styles.decrementButton}\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n <IconMinus className={styles.coarsePointerIcon} />\n </Button>\n <div className={styles.inputContainer}>\n <Aria.Input className={styles.input} ref={ref} />\n {unit && <NumberFieldUnit id={unitId} unit={unit} />}\n </div>\n <Button\n ariaSlot=\"increment\"\n className={styles.incrementButton}\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronUp />\n <IconPlus className={styles.coarsePointerIcon} />\n </Button>\n </Aria.Group>\n </Aria.NumberField>\n );\n});\n\nexport default NumberField;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AA+BA,IAAa,cAAc,cAAc,gBAAgB,UAAU;CAEjE,MAAM,EACJ,UACA,WACA,kBAAkB,MAClB,KACA,MACA,mBAAmB,gBACnB,GAAG,SACD,4BAA4B,OAAO,GAAG;CAE1C,MAAM,SAAS,MAAM;CAErB,MAAM,EACJ,gBACA,0BACA,cACA,cACA,mBACA,kBACE,kBAAkB,OAAO,aAAa;CAE1C,MAAM,gBAAgB,KAAKA,yBAAgB,WAAW,SAAS;CAE/D,OACE,qBAAC,KAAK,aAAN;EACE,GAAI;EACJ,GAAI;EACa;EACjB,mBACE,OACI,CAAC,gBAAgB,MAAM,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,GAAG,IACjD;EAEN,oBAAkB,aAAa;EAC/B,WAAW,KAAK,eAAe,aAAa,SAAS;EAVvD,UAAA,CAYE,qBAAC,sBAAD;GAAsB,OAAO;GAA7B,UAAA,CACE,oBAAC,0BAAD,EAA2B,SAAmC,CAAA,GAC9D,oBAAC,gBAAD,CAAiB,CAAA,CACG;EACtB,CAAA,GAAA,qBAAC,KAAK,OAAN;GAAY,WAAWC,2BAAO;GAA9B,UAAA;IACE,qBAAC,QAAD;KACE,UAAS;KACT,WAAWA,2BAAO;KAClB,MAAK;KACL,SAAQ;KACR,OAAM;KALR,UAAA,CAOE,oBAAC,iBAAD,CAAkB,CAAA,GAClB,oBAAC,WAAD,EAAW,WAAWA,2BAAO,kBAAoB,CAAA,CAC3C;;IACR,qBAAC,OAAD;KAAK,WAAWA,2BAAO;KAAvB,UAAA,CACE,oBAAC,KAAK,OAAN;MAAY,WAAWA,2BAAO;MAAY;KAAM,CAAA,GAC/C,QAAQ,oBAAC,iBAAD;MAAiB,IAAI;MAAc;KAAO,CAAA,CAChD;;IACL,qBAAC,QAAD;KACE,UAAS;KACT,WAAWA,2BAAO;KAClB,MAAK;KACL,SAAQ;KACR,OAAM;KALR,UAAA,CAOE,oBAAC,eAAD,CAAgB,CAAA,GAChB,oBAAC,UAAD,EAAU,WAAWA,2BAAO,kBAAoB,CAAA,CAC1C;;GACE;EACI,CAAA,CAAA;;AAEtB,CAAC"}
@@ -2,20 +2,30 @@
2
2
  /* */
3
3
  //#region src/components/NumberField/NumberField.module.scss
4
4
  var group = "flow--number-field--group";
5
+ var inputContainer = "flow--number-field--input-container";
5
6
  var input = "flow--number-field--input";
7
+ var unitOverlay = "flow--number-field--unit-overlay";
6
8
  var readonly = "flow--number-field--readonly";
9
+ var unitClip = "flow--number-field--unit-clip";
10
+ var unitSpacer = "flow--number-field--unit-spacer";
7
11
  var decrementButton = "flow--number-field--decrement-button";
8
12
  var incrementButton = "flow--number-field--increment-button";
9
13
  var coarsePointerIcon = "flow--number-field--coarse-pointer-icon";
10
14
  var NumberField_module_default = {
11
15
  group,
16
+ inputContainer,
12
17
  input,
18
+ unitOverlay,
13
19
  readonly,
20
+ "skeleton-surface-shimmer": "flow--number-field--skeleton-surface-shimmer",
21
+ unitClip,
22
+ unitSpacer,
14
23
  decrementButton,
15
24
  incrementButton,
16
- coarsePointerIcon
25
+ coarsePointerIcon,
26
+ "skeleton-text-shimmer": "flow--number-field--skeleton-text-shimmer"
17
27
  };
18
28
  //#endregion
19
- export { coarsePointerIcon, decrementButton, NumberField_module_default as default, group, incrementButton, input, readonly };
29
+ export { coarsePointerIcon, decrementButton, NumberField_module_default as default, group, incrementButton, input, inputContainer, readonly, unitClip, unitOverlay, unitSpacer };
20
30
 
21
31
  //# sourceMappingURL=NumberField.module.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.module.mjs","names":[],"sources":["../../../../../../../src/components/NumberField/NumberField.module.scss"],"sourcesContent":["@use \"@/styles/mixins/formControl\";\n\n.group {\n order: 2;\n display: grid;\n grid-template-columns: 1fr max-content;\n grid-template-areas:\n \"input increment\"\n \"input decrement\";\n\n .input {\n grid-area: input;\n\n @include formControl.formControl();\n }\n\n .decrementButton {\n grid-area: decrement;\n }\n\n .incrementButton {\n grid-area: increment;\n }\n\n .decrementButton,\n .incrementButton {\n border-width: var(--form-control--border-width);\n border-color: var(--form-control--border-color--default);\n border-style: solid;\n }\n\n &[aria-invalid] {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--invalid);\n }\n }\n\n &[data-focus-within] {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--focused);\n }\n }\n\n &[aria-disabled=\"true\"] {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--disabled);\n }\n }\n\n &:has(.input:read-only):not([aria-disabled=\"true\"]) {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--default);\n }\n }\n}\n\n@media (pointer: fine) {\n .group {\n .input {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n }\n\n .incrementButton,\n .decrementButton {\n border-inline-start: none;\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n padding-block: 0;\n\n .coarsePointerIcon {\n display: none;\n }\n }\n\n .decrementButton {\n border-start-end-radius: 0;\n }\n\n .incrementButton {\n border-block-end: none;\n border-end-end-radius: 0;\n }\n }\n}\n\n@media (pointer: coarse) {\n .group {\n grid-template-columns: auto 1fr auto;\n grid-template-areas: \"decrement input increment\";\n max-width: 100%;\n\n .input {\n border-radius: 0;\n min-width: 0;\n }\n\n .decrementButton,\n .incrementButton {\n padding-inline: var(--button--padding-icon-only);\n\n .coarsePointerIcon {\n width: var(--icon--size--m);\n height: var(--icon--size--m);\n }\n\n // Hides every icon the stepper buttons render except the coarse-pointer\n // one — Button's own pending/success/failure icons included, and those\n // share no class with the chevrons.\n // stylelint-disable-next-line selector-max-type -- see above\n svg:not(.coarsePointerIcon) {\n display: none;\n }\n }\n\n .decrementButton {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-inline-end: none;\n }\n\n .incrementButton {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n border-inline-start: none;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"NumberField.module.mjs","names":[],"sources":["../../../../../../../src/components/NumberField/NumberField.module.scss"],"sourcesContent":["@use \"@/styles/mixins/formControl\";\n\n.group {\n order: 2;\n display: grid;\n grid-template-columns: 1fr max-content;\n grid-template-areas:\n \"input increment\"\n \"input decrement\";\n\n .inputContainer {\n grid-area: input;\n display: grid;\n // Without it the column takes the input's intrinsic width\n grid-template-columns: minmax(0, 1fr);\n min-width: 0;\n }\n\n .input,\n .unitOverlay {\n grid-area: 1 / 1;\n }\n\n .input {\n @include formControl.formControl();\n }\n\n // Mirrors the input's box so the text lines up with the input text\n .unitOverlay {\n @include formControl.formBorder();\n @include formControl.formOutline();\n\n // Grid items paint in `order`; formControl moves the input to 2\n order: 2;\n border-color: transparent;\n color: var(--form-control--content-color--default);\n white-space: pre;\n pointer-events: none;\n contain: inline-size;\n\n &[data-empty] {\n visibility: hidden;\n }\n }\n\n // The input clips its text at the content box, `overflow` clips at the\n // padding box — so the overlay keeps the padding and clips one level deeper\n .unitClip {\n display: block;\n overflow: hidden;\n }\n\n .unitSpacer {\n visibility: hidden;\n }\n\n &[aria-disabled=\"true\"] .unitOverlay {\n color: var(--form-control--content-color--disabled);\n }\n\n .decrementButton {\n grid-area: decrement;\n }\n\n .incrementButton {\n grid-area: increment;\n }\n\n .decrementButton,\n .incrementButton {\n border-width: var(--form-control--border-width);\n border-color: var(--form-control--border-color--default);\n border-style: solid;\n }\n\n &[aria-invalid] {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--invalid);\n }\n }\n\n &[data-focus-within] {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--focused);\n }\n }\n\n &[aria-disabled=\"true\"] {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--disabled);\n }\n }\n\n &:has(.input:read-only):not([aria-disabled=\"true\"]) {\n .decrementButton,\n .incrementButton {\n border-color: var(--form-control--border-color--default);\n }\n }\n\n /* Skeleton: input and stepper buttons form one surface */\n @include formControl.formSkeleton;\n}\n\n@media (pointer: fine) {\n .group {\n .input {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n }\n\n .incrementButton,\n .decrementButton {\n border-inline-start: none;\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n padding-block: 0;\n\n .coarsePointerIcon {\n display: none;\n }\n }\n\n .decrementButton {\n border-start-end-radius: 0;\n }\n\n .incrementButton {\n border-block-end: none;\n border-end-end-radius: 0;\n }\n }\n}\n\n@media (pointer: coarse) {\n .group {\n grid-template-columns: auto 1fr auto;\n grid-template-areas: \"decrement input increment\";\n max-width: 100%;\n\n .input {\n border-radius: 0;\n min-width: 0;\n }\n\n .decrementButton,\n .incrementButton {\n padding-inline: var(--button--padding-icon-only);\n\n .coarsePointerIcon {\n width: var(--icon--size--m);\n height: var(--icon--size--m);\n }\n\n // Hides every icon the stepper buttons render except the coarse-pointer\n // one — Button's own pending/success/failure icons included, and those\n // share no class with the chevrons.\n // stylelint-disable-next-line selector-max-type -- see above\n svg:not(.coarsePointerIcon) {\n display: none;\n }\n }\n\n .decrementButton {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n border-inline-end: none;\n }\n\n .incrementButton {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n border-inline-start: none;\n }\n }\n}\n"],"mappings":""}
@@ -0,0 +1,36 @@
1
+ "use client"
2
+ /* */
3
+ import NumberField_module_default from "../NumberField.module.mjs";
4
+ import { useContext } from "react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import * as Aria from "react-aria-components";
7
+ //#region src/components/NumberField/components/NumberFieldUnit.tsx
8
+ /**
9
+ * React-aria cannot parse a unit `Intl.NumberFormat` does not know, so the unit
10
+ * is drawn over the input instead of being part of its value. An invisible copy
11
+ * of the input text pushes it right behind the number. The input's name
12
+ * references the unit, like a unit written into the label.
13
+ */
14
+ var NumberFieldUnit = (props) => {
15
+ const { id, unit } = props;
16
+ const inputValue = useContext(Aria.NumberFieldStateContext)?.inputValue;
17
+ return /* @__PURE__ */ jsx("span", {
18
+ className: NumberField_module_default.unitOverlay,
19
+ "data-empty": !inputValue || void 0,
20
+ "aria-hidden": true,
21
+ children: /* @__PURE__ */ jsxs("span", {
22
+ className: NumberField_module_default.unitClip,
23
+ children: [/* @__PURE__ */ jsxs("span", {
24
+ className: NumberField_module_default.unitSpacer,
25
+ children: [inputValue, " "]
26
+ }), /* @__PURE__ */ jsx("span", {
27
+ id,
28
+ children: unit
29
+ })]
30
+ })
31
+ });
32
+ };
33
+ //#endregion
34
+ export { NumberFieldUnit };
35
+
36
+ //# sourceMappingURL=NumberFieldUnit.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberFieldUnit.mjs","names":["styles"],"sources":["../../../../../../../../src/components/NumberField/components/NumberFieldUnit.tsx"],"sourcesContent":["import { type FC, useContext } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"../NumberField.module.scss\";\n\ninterface Props {\n id: string;\n unit: string;\n}\n\n/**\n * React-aria cannot parse a unit `Intl.NumberFormat` does not know, so the unit\n * is drawn over the input instead of being part of its value. An invisible copy\n * of the input text pushes it right behind the number. The input's name\n * references the unit, like a unit written into the label.\n */\nexport const NumberFieldUnit: FC<Props> = (props) => {\n const { id, unit } = props;\n const inputValue = useContext(Aria.NumberFieldStateContext)?.inputValue;\n\n return (\n <span\n className={styles.unitOverlay}\n data-empty={!inputValue || undefined}\n aria-hidden\n >\n <span className={styles.unitClip}>\n <span className={styles.unitSpacer}>{inputValue} </span>\n <span id={id}>{unit}</span>\n </span>\n </span>\n );\n};\n"],"mappings":";;;;;;;;;;;;;AAeA,IAAa,mBAA8B,UAAU;CACnD,MAAM,EAAE,IAAI,SAAS;CACrB,MAAM,aAAa,WAAW,KAAK,uBAAuB,CAAC,EAAE;CAE7D,OACE,oBAAC,QAAD;EACE,WAAWA,2BAAO;EAClB,cAAY,CAAC,cAAc,KAAA;EAC3B,eAAA;EAEA,UAAA,qBAAC,QAAD;GAAM,WAAWA,2BAAO;GAAxB,UAAA,CACE,qBAAC,QAAD;IAAM,WAAWA,2BAAO;IAAxB,UAAA,CAAqC,YAAW,GAAO;GACvD,CAAA,GAAA,oBAAC,QAAD;IAAU;IAAK,UAAA;GAAW,CAAA,CACtB;;CACF,CAAA;AAEV"}
@@ -1 +1 @@
1
- {"version":3,"file":"Option.mjs","names":[],"sources":["../../../../../../../src/components/Option/Option.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport { Children, useEffect, useRef } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport clsx from \"clsx\";\nimport styles from \"./Option.module.scss\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { extractTextFromChildren } from \"@/lib/react/remote\";\nimport { IconCheck } from \"@/components/Icon/components/icons\";\n\nexport interface OptionProps\n extends\n Omit<Aria.ListBoxItemProps, \"children\" | \"value\" | \"id\">,\n PropsWithChildren,\n FlowComponentProps {\n /**\n * The value this option contributes to the field's selection, and the key\n * `defaultValue` / `value` of the surrounding field target.\n *\n * Defaults to `textValue`, which itself defaults to the text among the\n * option's children — element children such as a `Badge` do not contribute,\n * so `<Option>Millennium Falcon <Badge>Latest</Badge></Option>` is\n * `\"Millennium Falcon\"`. Pass it explicitly when the value must not follow\n * the display text, or when the children carry no text at all.\n */\n value?: string | number;\n}\n\n/**\n * The key an option contributes to its collection: an explicit `value`, else\n * the `textValue`, else the text among the children. Shared with the props\n * context that routes options through a field's tunnel, so both derive the same\n * identity for one option.\n */\nexport const getOptionValue = (\n props: Pick<OptionProps, \"value\" | \"textValue\" | \"children\">,\n): string | number | undefined =>\n props.value ?? props.textValue ?? extractTextFromChildren(props.children);\n\n/** @flr-generate all */\nexport const Option = flowComponent(\"Option\", (props) => {\n const {\n className,\n children,\n textValue = extractTextFromChildren(children),\n // Derived through `getOptionValue` below; destructured only to keep it out\n // of the props spread onto the react-aria item.\n value: valueIgnored,\n ref,\n ...rest\n } = props;\n\n const value = getOptionValue(props);\n\n useWarnMissingValue(value === undefined);\n\n const rootClassName = clsx(styles.option, className);\n const hasChildren = Children.count(children) >= 1;\n\n return (\n <Aria.ListBoxItem\n className={rootClassName}\n ref={ref}\n id={value}\n {...rest}\n textValue={textValue}\n >\n <span className={styles.content}>\n {hasChildren ? children : textValue}\n </span>\n <IconCheck aria-hidden className={styles.checkMark} />\n </Aria.ListBoxItem>\n );\n});\n\n/*\n * Without an `id`, react-aria gives the item a key off a render-order counter\n * (`react-aria-1`). That key is what the field reports as its selected value\n * and what `defaultValue` has to match, so an option without a `value` silently\n * submits a meaningless string and cannot be preselected — and the key shifts\n * when unrelated markup around it changes. react-aria warns about the missing\n * `textValue` in this situation but says nothing about the key, which is the\n * expensive half (#3028).\n *\n * Warn in an effect rather than during render, so a double render in StrictMode\n * does not log twice; the ref keeps it to once per option.\n */\nconst useWarnMissingValue = (isMissing: boolean): void => {\n const hasWarned = useRef(false);\n\n useEffect(() => {\n if (!isMissing || hasWarned.current) {\n return;\n }\n\n hasWarned.current = true;\n console.error(\n \"An <Option> has no 'value' and none could be inferred from its children, so it falls back to a generated, render-order-dependent key. Pass a 'value' to give the option a stable key.\",\n );\n }, [isMissing]);\n};\n\nexport default Option;\n"],"mappings":";;;;;;;;;;;;;;;;;AAkCA,IAAa,kBACX,UAEA,MAAM,SAAS,MAAM,aAAa,wBAAwB,MAAM,QAAQ;;AAG1E,IAAa,SAAS,cAAc,WAAW,UAAU;CACvD,MAAM,EACJ,WACA,UACA,YAAY,wBAAwB,QAAQ,GAG5C,OAAO,cACP,KACA,GAAG,SACD;CAEJ,MAAM,QAAQ,eAAe,KAAK;CAElC,oBAAoB,UAAU,KAAA,CAAS;CAEvC,MAAM,gBAAgB,KAAK,sBAAO,QAAQ,SAAS;CACnD,MAAM,cAAc,SAAS,MAAM,QAAQ,KAAK;CAEhD,OACE,qBAAC,KAAK,aAAN;EACE,WAAW;EACN;EACL,IAAI;EACJ,GAAI;EACO;EALb,UAAA,CAOE,oBAAC,QAAD;GAAM,WAAW,sBAAO;GACrB,UAAA,cAAc,WAAW;EACtB,CAAA,GACN,oBAAC,WAAD;GAAW,eAAA;GAAY,WAAW,sBAAO;EAAY,CAAA,CACrC;;AAEtB,CAAC;AAcD,IAAM,uBAAuB,cAA6B;CACxD,MAAM,YAAY,OAAO,KAAK;CAE9B,gBAAgB;EACd,IAAI,CAAC,aAAa,UAAU,SAC1B;EAGF,UAAU,UAAU;EACpB,QAAQ,MACN,uLACF;CACF,GAAG,CAAC,SAAS,CAAC;AAChB"}
1
+ {"version":3,"file":"Option.mjs","names":["styles"],"sources":["../../../../../../../src/components/Option/Option.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport { Children, useEffect, useRef } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport clsx from \"clsx\";\nimport styles from \"./Option.module.scss\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { extractTextFromChildren } from \"@/lib/react/remote\";\nimport { IconCheck } from \"@/components/Icon/components/icons\";\n\nexport interface OptionProps\n extends\n Omit<Aria.ListBoxItemProps, \"children\" | \"value\" | \"id\">,\n PropsWithChildren,\n FlowComponentProps {\n /**\n * The value this option contributes to the field's selection, and the key\n * `defaultValue` / `value` of the surrounding field target.\n *\n * Defaults to `textValue`, which itself defaults to the text among the\n * option's children — element children such as a `Badge` do not contribute,\n * so `<Option>Millennium Falcon <Badge>Latest</Badge></Option>` is\n * `\"Millennium Falcon\"`. Pass it explicitly when the value must not follow\n * the display text, or when the children carry no text at all.\n */\n value?: string | number;\n}\n\n/**\n * The key an option contributes to its collection: an explicit `value`, else\n * the `textValue`, else the text among the children. Shared with the props\n * context that routes options through a field's tunnel, so both derive the same\n * identity for one option.\n */\nexport const getOptionValue = (\n props: Pick<OptionProps, \"value\" | \"textValue\" | \"children\">,\n): string | number | undefined =>\n props.value ?? props.textValue ?? extractTextFromChildren(props.children);\n\n/** @flr-generate all */\nexport const Option = flowComponent(\"Option\", (props) => {\n const {\n className,\n children,\n textValue = extractTextFromChildren(children),\n // Derived through `getOptionValue` below; destructured only to keep it out\n // of the props spread onto the react-aria item.\n value: valueIgnored,\n ref,\n ...rest\n } = props;\n\n const value = getOptionValue(props);\n\n useWarnMissingValue(value === undefined);\n\n const rootClassName = clsx(styles.option, className);\n const hasChildren = Children.count(children) >= 1;\n\n return (\n <Aria.ListBoxItem\n className={rootClassName}\n ref={ref}\n id={value}\n {...rest}\n textValue={textValue}\n >\n <span className={styles.content}>\n {hasChildren ? children : textValue}\n </span>\n <IconCheck aria-hidden className={styles.checkMark} />\n </Aria.ListBoxItem>\n );\n});\n\n/*\n * Without an `id`, react-aria gives the item a key off a render-order counter\n * (`react-aria-1`). That key is what the field reports as its selected value\n * and what `defaultValue` has to match, so an option without a `value` silently\n * submits a meaningless string and cannot be preselected — and the key shifts\n * when unrelated markup around it changes. react-aria warns about the missing\n * `textValue` in this situation but says nothing about the key, which is the\n * expensive half (#3028).\n *\n * Warn in an effect rather than during render, so a double render in StrictMode\n * does not log twice; the ref keeps it to once per option.\n */\nconst useWarnMissingValue = (isMissing: boolean): void => {\n const hasWarned = useRef(false);\n\n useEffect(() => {\n if (!isMissing || hasWarned.current) {\n return;\n }\n\n hasWarned.current = true;\n console.error(\n \"An <Option> has no 'value' and none could be inferred from its children, so it falls back to a generated, render-order-dependent key. Pass a 'value' to give the option a stable key.\",\n );\n }, [isMissing]);\n};\n\nexport default Option;\n"],"mappings":";;;;;;;;;;;;;;;;;AAkCA,IAAa,kBACX,UAEA,MAAM,SAAS,MAAM,aAAa,wBAAwB,MAAM,QAAQ;;AAG1E,IAAa,SAAS,cAAc,WAAW,UAAU;CACvD,MAAM,EACJ,WACA,UACA,YAAY,wBAAwB,QAAQ,GAG5C,OAAO,cACP,KACA,GAAG,SACD;CAEJ,MAAM,QAAQ,eAAe,KAAK;CAElC,oBAAoB,UAAU,KAAA,CAAS;CAEvC,MAAM,gBAAgB,KAAKA,sBAAO,QAAQ,SAAS;CACnD,MAAM,cAAc,SAAS,MAAM,QAAQ,KAAK;CAEhD,OACE,qBAAC,KAAK,aAAN;EACE,WAAW;EACN;EACL,IAAI;EACJ,GAAI;EACO;EALb,UAAA,CAOE,oBAAC,QAAD;GAAM,WAAWA,sBAAO;GACrB,UAAA,cAAc,WAAW;EACtB,CAAA,GACN,oBAAC,WAAD;GAAW,eAAA;GAAY,WAAWA,sBAAO;EAAY,CAAA,CACrC;;AAEtB,CAAC;AAcD,IAAM,uBAAuB,cAA6B;CACxD,MAAM,YAAY,OAAO,KAAK;CAE9B,gBAAgB;EACd,IAAI,CAAC,aAAa,UAAU,SAC1B;EAGF,UAAU,UAAU;EACpB,QAAQ,MACN,uLACF;CACF,GAAG,CAAC,SAAS,CAAC;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Options.mjs","names":[],"sources":["../../../../../../../src/components/Options/Options.tsx"],"sourcesContent":["import { type FC } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport { Popover, type PopoverProps } from \"@/components/Popover/Popover\";\nimport clsx from \"clsx\";\nimport styles from \"./Options.module.scss\";\nimport type { OverlayController } from \"@/lib/controller\";\nimport type { OptionProps } from \"@/components/Option\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\n\nexport interface OptionsProps\n extends\n Pick<Aria.ListBoxProps<OptionProps>, \"renderEmptyState\" | \"onAction\">,\n PopoverProps {\n controller: OverlayController;\n}\n\nexport const Options: FC<OptionsProps> = flowComponent(\"Options\", (props) => {\n const {\n className,\n children,\n controller,\n renderEmptyState,\n onAction,\n ...restPopoverProps\n } = props;\n\n const rootClassName = clsx(styles.options, className);\n\n return (\n <Popover\n className={styles.popover}\n controller={controller}\n maxHeight={324}\n {...restPopoverProps}\n >\n <Aria.ListBox\n onAction={onAction}\n className={rootClassName}\n renderEmptyState={renderEmptyState}\n >\n {children}\n </Aria.ListBox>\n </Popover>\n );\n});\n\nexport default Options;\n"],"mappings":";;;;;;;;;;AAgBA,IAAa,UAA4B,cAAc,YAAY,UAAU;CAC3E,MAAM,EACJ,WACA,UACA,YACA,kBACA,UACA,GAAG,qBACD;CAEJ,MAAM,gBAAgB,KAAK,uBAAO,SAAS,SAAS;CAEpD,OACE,oBAAC,SAAD;EACE,WAAW,uBAAO;EACN;EACZ,WAAW;EACX,GAAI;EAEJ,UAAA,oBAAC,KAAK,SAAN;GACY;GACV,WAAW;GACO;GAEjB;EACW,CAAA;CACP,CAAA;AAEb,CAAC"}
1
+ {"version":3,"file":"Options.mjs","names":["styles"],"sources":["../../../../../../../src/components/Options/Options.tsx"],"sourcesContent":["import { type FC } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport { Popover, type PopoverProps } from \"@/components/Popover/Popover\";\nimport clsx from \"clsx\";\nimport styles from \"./Options.module.scss\";\nimport type { OverlayController } from \"@/lib/controller\";\nimport type { OptionProps } from \"@/components/Option\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\n\nexport interface OptionsProps\n extends\n Pick<Aria.ListBoxProps<OptionProps>, \"renderEmptyState\" | \"onAction\">,\n PopoverProps {\n controller: OverlayController;\n}\n\nexport const Options: FC<OptionsProps> = flowComponent(\"Options\", (props) => {\n const {\n className,\n children,\n controller,\n renderEmptyState,\n onAction,\n ...restPopoverProps\n } = props;\n\n const rootClassName = clsx(styles.options, className);\n\n return (\n <Popover\n className={styles.popover}\n controller={controller}\n maxHeight={324}\n {...restPopoverProps}\n >\n <Aria.ListBox\n onAction={onAction}\n className={rootClassName}\n renderEmptyState={renderEmptyState}\n >\n {children}\n </Aria.ListBox>\n </Popover>\n );\n});\n\nexport default Options;\n"],"mappings":";;;;;;;;;;AAgBA,IAAa,UAA4B,cAAc,YAAY,UAAU;CAC3E,MAAM,EACJ,WACA,UACA,YACA,kBACA,UACA,GAAG,qBACD;CAEJ,MAAM,gBAAgB,KAAKA,uBAAO,SAAS,SAAS;CAEpD,OACE,oBAAC,SAAD;EACE,WAAWA,uBAAO;EACN;EACZ,WAAW;EACX,GAAI;EAEJ,UAAA,oBAAC,KAAK,SAAN;GACY;GACV,WAAW;GACO;GAEjB;EACW,CAAA;CACP,CAAA;AAEb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.mjs","names":[],"sources":["../../../../../../../src/components/Overlay/Overlay.tsx"],"sourcesContent":["import type { FC, PropsWithChildren, Ref } from \"react\";\nimport styles from \"./Overlay.module.scss\";\nimport clsx from \"clsx\";\nimport type { OverlayController } from \"@/lib/controller\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport OverlayContextProvider from \"@/lib/controller/overlay/OverlayContextProvider\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport OverlayContentView from \"@/views/OverlayContentView\";\nimport type {\n OverlayCloseHandler,\n OverlayOpenHandler,\n OverlayOpenStateHandler,\n} from \"@/lib/controller/overlay/OverlayController\";\nimport type * as Aria from \"react-aria-components\";\n\nexport interface OverlayProps\n extends\n PropsWithChildren,\n PropsWithClassName,\n Pick<Aria.DialogProps, \"aria-labelledby\"> {\n ref?: Ref<HTMLDivElement>;\n /** The controller to control the overlay state. */\n controller?: OverlayController;\n /** Whether the overlay can be closed by clicking outside of it. */\n isDismissable?: boolean;\n /** Whether the overlay is a modal or a light box. */\n overlayType?: \"Modal\" | \"LightBox\";\n /** Whether the overlay is open. Use it to control the overlay state. */\n isOpen?: boolean;\n /**\n * Whether the overlay is open initially. Use it for an uncontrolled overlay.\n *\n * @default false\n */\n isDefaultOpen?: boolean;\n /** Called when the overlay is opened. */\n onOpen?: OverlayOpenHandler;\n /** Called when the overlay is closed. */\n onClose?: OverlayCloseHandler;\n /** Called with the new open state whenever the overlay is opened or closed. */\n onOpenChange?: OverlayOpenStateHandler;\n /** Whether closing the overlay must be confirmed. */\n confirmOnClose?: boolean;\n}\n\nexport const Overlay: FC<OverlayProps> = (props) => {\n const {\n controller: controllerFromProps,\n children,\n isDismissable = true,\n className,\n overlayType = \"Modal\",\n isDefaultOpen,\n isOpen: isOpenFromProps,\n ref,\n \"aria-labelledby\": ariaLabelledBy,\n ...controllerOptions\n } = props;\n\n const controllerFromContext = useOverlayController(overlayType, {\n reuseControllerFromContext: true,\n isDefaultOpen,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n controller.useUpdateOptions(controllerOptions);\n\n const isOpen = isOpenFromProps ?? controller.useIsOpen();\n\n const rootClassName = clsx(styles.overlay, className);\n\n return (\n <OverlayContentView\n onOpenChange={controller.setOpen}\n isOpen={isOpen}\n ref={ref}\n isDismissable={isDismissable}\n className={rootClassName}\n aria-labelledby={ariaLabelledBy}\n >\n <OverlayContextProvider type=\"Modal\" controller={controller}>\n {children}\n </OverlayContextProvider>\n </OverlayContentView>\n );\n};\n\nexport default Overlay;\n"],"mappings":";;;;;;;;;AA6CA,IAAa,WAA6B,UAAU;CAClD,MAAM,EACJ,YAAY,qBACZ,UACA,gBAAgB,MAChB,WACA,cAAc,SACd,eACA,QAAQ,iBACR,KACA,mBAAmB,gBACnB,GAAG,sBACD;CAEJ,MAAM,wBAAwB,qBAAqB,aAAa;EAC9D,4BAA4B;EAC5B;CACF,CAAC;CAED,MAAM,aAAa,uBAAuB;CAC1C,WAAW,iBAAiB,iBAAiB;CAE7C,MAAM,SAAS,mBAAmB,WAAW,UAAU;CAEvD,MAAM,gBAAgB,KAAK,uBAAO,SAAS,SAAS;CAEpD,OACE,oBAAC,oBAAD;EACE,cAAc,WAAW;EACjB;EACH;EACU;EACf,WAAW;EACX,mBAAiB;EAEjB,UAAA,oBAAC,wBAAD;GAAwB,MAAK;GAAoB;GAC9C;EACqB,CAAA;CACN,CAAA;AAExB"}
1
+ {"version":3,"file":"Overlay.mjs","names":["styles"],"sources":["../../../../../../../src/components/Overlay/Overlay.tsx"],"sourcesContent":["import type { FC, PropsWithChildren, Ref } from \"react\";\nimport styles from \"./Overlay.module.scss\";\nimport clsx from \"clsx\";\nimport type { OverlayController } from \"@/lib/controller\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport OverlayContextProvider from \"@/lib/controller/overlay/OverlayContextProvider\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport OverlayContentView from \"@/views/OverlayContentView\";\nimport type {\n OverlayCloseHandler,\n OverlayOpenHandler,\n OverlayOpenStateHandler,\n} from \"@/lib/controller/overlay/OverlayController\";\nimport type * as Aria from \"react-aria-components\";\n\nexport interface OverlayProps\n extends\n PropsWithChildren,\n PropsWithClassName,\n Pick<Aria.DialogProps, \"aria-labelledby\"> {\n ref?: Ref<HTMLDivElement>;\n /** The controller to control the overlay state. */\n controller?: OverlayController;\n /** Whether the overlay can be closed by clicking outside of it. */\n isDismissable?: boolean;\n /** Whether the overlay is a modal or a light box. */\n overlayType?: \"Modal\" | \"LightBox\";\n /** Whether the overlay is open. Use it to control the overlay state. */\n isOpen?: boolean;\n /**\n * Whether the overlay is open initially. Use it for an uncontrolled overlay.\n *\n * @default false\n */\n isDefaultOpen?: boolean;\n /** Called when the overlay is opened. */\n onOpen?: OverlayOpenHandler;\n /** Called when the overlay is closed. */\n onClose?: OverlayCloseHandler;\n /** Called with the new open state whenever the overlay is opened or closed. */\n onOpenChange?: OverlayOpenStateHandler;\n /** Whether closing the overlay must be confirmed. */\n confirmOnClose?: boolean;\n}\n\nexport const Overlay: FC<OverlayProps> = (props) => {\n const {\n controller: controllerFromProps,\n children,\n isDismissable = true,\n className,\n overlayType = \"Modal\",\n isDefaultOpen,\n isOpen: isOpenFromProps,\n ref,\n \"aria-labelledby\": ariaLabelledBy,\n ...controllerOptions\n } = props;\n\n const controllerFromContext = useOverlayController(overlayType, {\n reuseControllerFromContext: true,\n isDefaultOpen,\n });\n\n const controller = controllerFromProps ?? controllerFromContext;\n controller.useUpdateOptions(controllerOptions);\n\n const isOpen = isOpenFromProps ?? controller.useIsOpen();\n\n const rootClassName = clsx(styles.overlay, className);\n\n return (\n <OverlayContentView\n onOpenChange={controller.setOpen}\n isOpen={isOpen}\n ref={ref}\n isDismissable={isDismissable}\n className={rootClassName}\n aria-labelledby={ariaLabelledBy}\n >\n <OverlayContextProvider type=\"Modal\" controller={controller}>\n {children}\n </OverlayContextProvider>\n </OverlayContentView>\n );\n};\n\nexport default Overlay;\n"],"mappings":";;;;;;;;;AA6CA,IAAa,WAA6B,UAAU;CAClD,MAAM,EACJ,YAAY,qBACZ,UACA,gBAAgB,MAChB,WACA,cAAc,SACd,eACA,QAAQ,iBACR,KACA,mBAAmB,gBACnB,GAAG,sBACD;CAEJ,MAAM,wBAAwB,qBAAqB,aAAa;EAC9D,4BAA4B;EAC5B;CACF,CAAC;CAED,MAAM,aAAa,uBAAuB;CAC1C,WAAW,iBAAiB,iBAAiB;CAE7C,MAAM,SAAS,mBAAmB,WAAW,UAAU;CAEvD,MAAM,gBAAgB,KAAKA,uBAAO,SAAS,SAAS;CAEpD,OACE,oBAAC,oBAAD;EACE,cAAc,WAAW;EACjB;EACH;EACU;EACf,WAAW;EACX,mBAAiB;EAEjB,UAAA,oBAAC,wBAAD;GAAwB,MAAK;GAAoB;GAC9C;EACqB,CAAA;CACN,CAAA;AAExB"}
@@ -7,8 +7,8 @@ import { OverlaySuspenseFallback } from "./OverlaySuspenseFallback.mjs";
7
7
  import useKeepBrowserExtensionsInteractive, { isBrowserExtensionNode } from "../../../lib/hooks/dom/useKeepBrowserExtensionsInteractive.mjs";
8
8
  import { Suspense } from "react";
9
9
  import { jsx } from "react/jsx-runtime";
10
- import * as Aria from "react-aria-components";
11
10
  import { UNSAFE_PortalProvider } from "react-aria";
11
+ import * as Aria from "react-aria-components";
12
12
  //#region src/components/Overlay/components/OverlayContent.tsx
13
13
  var overlayContainerAttribute = "data-flow-overlays";
14
14
  /**
@@ -17,9 +17,14 @@ var overlayContainerAttribute = "data-flow-overlays";
17
17
  * blurs a focused field inside it (#3268). The same heuristic also spares
18
18
  * custom elements and shadow hosts the page itself appends, which then render
19
19
  * above open overlays.
20
+ *
21
+ * Hidden nodes don't count either: react-aria appends a `display: none`
22
+ * description node whenever a DatePicker's value changes, and moving the
23
+ * container for it on every keystroke resets the segment being typed into.
20
24
  */
25
+ var isHiddenNode = (node) => node instanceof HTMLElement && (node.hidden === true || node.style.display === "none");
21
26
  var isCoveredByPageContent = (container) => {
22
- for (let node = container.nextElementSibling; node; node = node.nextElementSibling) if (!isBrowserExtensionNode(node)) return true;
27
+ for (let node = container.nextElementSibling; node; node = node.nextElementSibling) if (!isBrowserExtensionNode(node) && !isHiddenNode(node)) return true;
23
28
  return false;
24
29
  };
25
30
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayContent.mjs","names":[],"sources":["../../../../../../../../src/components/Overlay/components/OverlayContent.tsx"],"sourcesContent":["import * as Aria from \"react-aria-components\";\nimport { type FC, type PropsWithChildren, type Ref, Suspense } from \"react\";\nimport { UNSAFE_PortalProvider } from \"react-aria\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { OverlaySuspenseFallback } from \"@/components/Overlay/components/OverlaySuspenseFallback\";\nimport styles from \"../Overlay.module.scss\";\nimport DivView from \"@/views/DivView\";\nimport {\n isBrowserExtensionNode,\n useKeepBrowserExtensionsInteractive,\n} from \"@/lib/hooks/dom/useKeepBrowserExtensionsInteractive\";\nimport { useIsActivityActive } from \"@/components/Activity/context\";\n\nconst overlayContainerAttribute = \"data-flow-overlays\";\n\n/**\n * Nodes a browser extension appends (e.g. 1Password's inline menu) don't count\n * as covering: they belong on top anyway, and moving the container for them\n * blurs a focused field inside it (#3268). The same heuristic also spares\n * custom elements and shadow hosts the page itself appends, which then render\n * above open overlays.\n */\nconst isCoveredByPageContent = (container: HTMLElement): boolean => {\n for (\n let node = container.nextElementSibling;\n node;\n node = node.nextElementSibling\n ) {\n if (!isBrowserExtensionNode(node)) {\n return true;\n }\n }\n return false;\n};\n\n/**\n * Only the container moves, never the nodes appended after it: those are\n * foreign, and moving them costs state we cannot restore (an iframe reloads).\n * The container's own state we can. Moving a node blurs the focused element\n * inside it and resets every scroll container inside to the top. `moveBefore`\n * keeps the focus (and, in Chromium, the scroll positions); the rest is\n * restored afterwards.\n */\nconst moveToEnd = (container: HTMLElement): void => {\n const body = document.body;\n const focused = document.activeElement;\n const scrolled = Array.from(container.querySelectorAll<HTMLElement>(\"*\"))\n .filter((element) => element.scrollTop !== 0 || element.scrollLeft !== 0)\n .map(\n (element) => [element, element.scrollTop, element.scrollLeft] as const,\n );\n\n if (typeof body.moveBefore === \"function\") {\n body.moveBefore(container, null);\n } else {\n body.append(container);\n }\n\n for (const [element, scrollTop, scrollLeft] of scrolled) {\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }\n if (\n focused instanceof HTMLElement &&\n container.contains(focused) &&\n document.activeElement !== focused\n ) {\n focused.focus({ preventScroll: true });\n }\n};\n\n/**\n * Render overlays into a dedicated container instead of `document.body`.\n *\n * React Aria `FocusScope` relies on nearby sibling nodes (sentinels + overlay).\n * Browser extensions (e.g. password managers) inject/reorder `body` children,\n * which can separate those nodes. Then focus scope detection breaks and may\n * cause recursive focus restoration.\n *\n * Keep the overlay container as the last child of body.\n *\n * React Aria normally portals overlays directly into body, so they are appended\n * last and render on top.\n *\n * If we create one persistent container only once, anything appended to body\n * later (toasts, third-party widgets, remounted app root) can render above open\n * overlays. Then overlays can appear behind page content, and the backdrop blur\n * no longer covers the page.\n */\nconst getOverlayContainer = (): HTMLElement | null => {\n if (typeof document === \"undefined\") {\n return null;\n }\n\n const existingContainer = document.querySelector<HTMLElement>(\n `body > [${overlayContainerAttribute}]`,\n );\n\n if (existingContainer) {\n if (isCoveredByPageContent(existingContainer)) {\n moveToEnd(existingContainer);\n }\n return existingContainer;\n }\n\n const container = document.createElement(\"div\");\n container.setAttribute(overlayContainerAttribute, \"\");\n document.body.append(container);\n\n return container;\n};\n\nexport interface OverlayContentProps\n extends\n PropsWithChildren,\n PropsWithClassName,\n Pick<Aria.DialogProps, \"aria-labelledby\"> {\n ref?: Ref<HTMLDivElement>;\n onOpenChange: (isOpen: boolean) => void;\n isDismissable?: boolean;\n isOpen?: boolean;\n}\n\n/** @flr-generate all */\nexport const OverlayContent: FC<OverlayContentProps> = (props) => {\n const {\n children,\n className,\n \"aria-labelledby\": ariaLabelledBy,\n ...restProps\n } = props;\n\n const isActivityActive = useIsActivityActive();\n\n useKeepBrowserExtensionsInteractive(restProps.isOpen ?? false);\n\n const Fallback = () => {\n return (\n <DivView className={styles.suspense}>\n <OverlaySuspenseFallback {...restProps} />\n </DivView>\n );\n };\n\n if (!isActivityActive) {\n return null;\n }\n\n return (\n <UNSAFE_PortalProvider getContainer={getOverlayContainer}>\n <Aria.ModalOverlay {...restProps} className={className}>\n {/* The centering viewport between the backdrop and react-aria's modal\n wrapper. Classed so Modal/OffCanvas/LightBox can position it\n without selecting a bare `div`. */}\n <DivView className={styles.viewport}>\n <Aria.Modal>\n <Suspense fallback={<Fallback />}>\n <Aria.Dialog aria-labelledby={ariaLabelledBy}>\n {children}\n </Aria.Dialog>\n </Suspense>\n </Aria.Modal>\n </DivView>\n </Aria.ModalOverlay>\n </UNSAFE_PortalProvider>\n );\n};\n\nexport default OverlayContent;\n"],"mappings":";;;;;;;;;;;;AAaA,IAAM,4BAA4B;;;;;;;;AASlC,IAAM,0BAA0B,cAAoC;CAClE,KACE,IAAI,OAAO,UAAU,oBACrB,MACA,OAAO,KAAK,oBAEZ,IAAI,CAAC,uBAAuB,IAAI,GAC9B,OAAO;CAGX,OAAO;AACT;;;;;;;;;AAUA,IAAM,aAAa,cAAiC;CAClD,MAAM,OAAO,SAAS;CACtB,MAAM,UAAU,SAAS;CACzB,MAAM,WAAW,MAAM,KAAK,UAAU,iBAA8B,GAAG,CAAC,CAAC,CACtE,QAAQ,YAAY,QAAQ,cAAc,KAAK,QAAQ,eAAe,CAAC,CAAC,CACxE,KACE,YAAY;EAAC;EAAS,QAAQ;EAAW,QAAQ;CAAU,CAC9D;CAEF,IAAI,OAAO,KAAK,eAAe,YAC7B,KAAK,WAAW,WAAW,IAAI;MAE/B,KAAK,OAAO,SAAS;CAGvB,KAAK,MAAM,CAAC,SAAS,WAAW,eAAe,UAAU;EACvD,QAAQ,YAAY;EACpB,QAAQ,aAAa;CACvB;CACA,IACE,mBAAmB,eACnB,UAAU,SAAS,OAAO,KAC1B,SAAS,kBAAkB,SAE3B,QAAQ,MAAM,EAAE,eAAe,KAAK,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;AAoBA,IAAM,4BAAgD;CACpD,IAAI,OAAO,aAAa,aACtB,OAAO;CAGT,MAAM,oBAAoB,SAAS,cACjC,WAAW,0BAA0B,EACvC;CAEA,IAAI,mBAAmB;EACrB,IAAI,uBAAuB,iBAAiB,GAC1C,UAAU,iBAAiB;EAE7B,OAAO;CACT;CAEA,MAAM,YAAY,SAAS,cAAc,KAAK;CAC9C,UAAU,aAAa,2BAA2B,EAAE;CACpD,SAAS,KAAK,OAAO,SAAS;CAE9B,OAAO;AACT;;AAcA,IAAa,kBAA2C,UAAU;CAChE,MAAM,EACJ,UACA,WACA,mBAAmB,gBACnB,GAAG,cACD;CAEJ,MAAM,mBAAmB,oBAAoB;CAE7C,oCAAoC,UAAU,UAAU,KAAK;CAE7D,MAAM,iBAAiB;EACrB,OACE,oBAAC,SAAD;GAAS,WAAW,uBAAO;GACzB,UAAA,oBAAC,yBAAD,EAAyB,GAAI,UAAY,CAAA;EAClC,CAAA;CAEb;CAEA,IAAI,CAAC,kBACH,OAAO;CAGT,OACE,oBAAC,uBAAD;EAAuB,cAAc;EACnC,UAAA,oBAAC,KAAK,cAAN;GAAmB,GAAI;GAAsB;GAI3C,UAAA,oBAAC,SAAD;IAAS,WAAW,uBAAO;IACzB,UAAA,oBAAC,KAAK,OAAN,EAAA,UACE,oBAAC,UAAD;KAAU,UAAU,oBAAC,UAAD,CAAW,CAAA;KAC7B,UAAA,oBAAC,KAAK,QAAN;MAAa,mBAAiB;MAC3B;KACU,CAAA;IACL,CAAA,EACA,CAAA;GACL,CAAA;EACQ,CAAA;CACE,CAAA;AAE3B"}
1
+ {"version":3,"file":"OverlayContent.mjs","names":["styles"],"sources":["../../../../../../../../src/components/Overlay/components/OverlayContent.tsx"],"sourcesContent":["import * as Aria from \"react-aria-components\";\nimport { type FC, type PropsWithChildren, type Ref, Suspense } from \"react\";\nimport { UNSAFE_PortalProvider } from \"react-aria\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { OverlaySuspenseFallback } from \"@/components/Overlay/components/OverlaySuspenseFallback\";\nimport styles from \"../Overlay.module.scss\";\nimport DivView from \"@/views/DivView\";\nimport {\n isBrowserExtensionNode,\n useKeepBrowserExtensionsInteractive,\n} from \"@/lib/hooks/dom/useKeepBrowserExtensionsInteractive\";\nimport { useIsActivityActive } from \"@/components/Activity/context\";\n\nconst overlayContainerAttribute = \"data-flow-overlays\";\n\n/**\n * Nodes a browser extension appends (e.g. 1Password's inline menu) don't count\n * as covering: they belong on top anyway, and moving the container for them\n * blurs a focused field inside it (#3268). The same heuristic also spares\n * custom elements and shadow hosts the page itself appends, which then render\n * above open overlays.\n *\n * Hidden nodes don't count either: react-aria appends a `display: none`\n * description node whenever a DatePicker's value changes, and moving the\n * container for it on every keystroke resets the segment being typed into.\n */\nconst isHiddenNode = (node: Element): boolean =>\n node instanceof HTMLElement &&\n (node.hidden === true || node.style.display === \"none\");\n\nconst isCoveredByPageContent = (container: HTMLElement): boolean => {\n for (\n let node = container.nextElementSibling;\n node;\n node = node.nextElementSibling\n ) {\n if (!isBrowserExtensionNode(node) && !isHiddenNode(node)) {\n return true;\n }\n }\n return false;\n};\n\n/**\n * Only the container moves, never the nodes appended after it: those are\n * foreign, and moving them costs state we cannot restore (an iframe reloads).\n * The container's own state we can. Moving a node blurs the focused element\n * inside it and resets every scroll container inside to the top. `moveBefore`\n * keeps the focus (and, in Chromium, the scroll positions); the rest is\n * restored afterwards.\n */\nconst moveToEnd = (container: HTMLElement): void => {\n const body = document.body;\n const focused = document.activeElement;\n const scrolled = Array.from(container.querySelectorAll<HTMLElement>(\"*\"))\n .filter((element) => element.scrollTop !== 0 || element.scrollLeft !== 0)\n .map(\n (element) => [element, element.scrollTop, element.scrollLeft] as const,\n );\n\n if (typeof body.moveBefore === \"function\") {\n body.moveBefore(container, null);\n } else {\n body.append(container);\n }\n\n for (const [element, scrollTop, scrollLeft] of scrolled) {\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }\n if (\n focused instanceof HTMLElement &&\n container.contains(focused) &&\n document.activeElement !== focused\n ) {\n focused.focus({ preventScroll: true });\n }\n};\n\n/**\n * Render overlays into a dedicated container instead of `document.body`.\n *\n * React Aria `FocusScope` relies on nearby sibling nodes (sentinels + overlay).\n * Browser extensions (e.g. password managers) inject/reorder `body` children,\n * which can separate those nodes. Then focus scope detection breaks and may\n * cause recursive focus restoration.\n *\n * Keep the overlay container as the last child of body.\n *\n * React Aria normally portals overlays directly into body, so they are appended\n * last and render on top.\n *\n * If we create one persistent container only once, anything appended to body\n * later (toasts, third-party widgets, remounted app root) can render above open\n * overlays. Then overlays can appear behind page content, and the backdrop blur\n * no longer covers the page.\n */\nconst getOverlayContainer = (): HTMLElement | null => {\n if (typeof document === \"undefined\") {\n return null;\n }\n\n const existingContainer = document.querySelector<HTMLElement>(\n `body > [${overlayContainerAttribute}]`,\n );\n\n if (existingContainer) {\n if (isCoveredByPageContent(existingContainer)) {\n moveToEnd(existingContainer);\n }\n return existingContainer;\n }\n\n const container = document.createElement(\"div\");\n container.setAttribute(overlayContainerAttribute, \"\");\n document.body.append(container);\n\n return container;\n};\n\nexport interface OverlayContentProps\n extends\n PropsWithChildren,\n PropsWithClassName,\n Pick<Aria.DialogProps, \"aria-labelledby\"> {\n ref?: Ref<HTMLDivElement>;\n onOpenChange: (isOpen: boolean) => void;\n isDismissable?: boolean;\n isOpen?: boolean;\n}\n\n/** @flr-generate all */\nexport const OverlayContent: FC<OverlayContentProps> = (props) => {\n const {\n children,\n className,\n \"aria-labelledby\": ariaLabelledBy,\n ...restProps\n } = props;\n\n const isActivityActive = useIsActivityActive();\n\n useKeepBrowserExtensionsInteractive(restProps.isOpen ?? false);\n\n const Fallback = () => {\n return (\n <DivView className={styles.suspense}>\n <OverlaySuspenseFallback {...restProps} />\n </DivView>\n );\n };\n\n if (!isActivityActive) {\n return null;\n }\n\n return (\n <UNSAFE_PortalProvider getContainer={getOverlayContainer}>\n <Aria.ModalOverlay {...restProps} className={className}>\n {/* The centering viewport between the backdrop and react-aria's modal\n wrapper. Classed so Modal/OffCanvas/LightBox can position it\n without selecting a bare `div`. */}\n <DivView className={styles.viewport}>\n <Aria.Modal>\n <Suspense fallback={<Fallback />}>\n <Aria.Dialog aria-labelledby={ariaLabelledBy}>\n {children}\n </Aria.Dialog>\n </Suspense>\n </Aria.Modal>\n </DivView>\n </Aria.ModalOverlay>\n </UNSAFE_PortalProvider>\n );\n};\n\nexport default OverlayContent;\n"],"mappings":";;;;;;;;;;;;AAaA,IAAM,4BAA4B;;;;;;;;;;;;AAalC,IAAM,gBAAgB,SACpB,gBAAgB,gBACf,KAAK,WAAW,QAAQ,KAAK,MAAM,YAAY;AAElD,IAAM,0BAA0B,cAAoC;CAClE,KACE,IAAI,OAAO,UAAU,oBACrB,MACA,OAAO,KAAK,oBAEZ,IAAI,CAAC,uBAAuB,IAAI,KAAK,CAAC,aAAa,IAAI,GACrD,OAAO;CAGX,OAAO;AACT;;;;;;;;;AAUA,IAAM,aAAa,cAAiC;CAClD,MAAM,OAAO,SAAS;CACtB,MAAM,UAAU,SAAS;CACzB,MAAM,WAAW,MAAM,KAAK,UAAU,iBAA8B,GAAG,CAAC,CAAC,CACtE,QAAQ,YAAY,QAAQ,cAAc,KAAK,QAAQ,eAAe,CAAC,CAAC,CACxE,KACE,YAAY;EAAC;EAAS,QAAQ;EAAW,QAAQ;CAAU,CAC9D;CAEF,IAAI,OAAO,KAAK,eAAe,YAC7B,KAAK,WAAW,WAAW,IAAI;MAE/B,KAAK,OAAO,SAAS;CAGvB,KAAK,MAAM,CAAC,SAAS,WAAW,eAAe,UAAU;EACvD,QAAQ,YAAY;EACpB,QAAQ,aAAa;CACvB;CACA,IACE,mBAAmB,eACnB,UAAU,SAAS,OAAO,KAC1B,SAAS,kBAAkB,SAE3B,QAAQ,MAAM,EAAE,eAAe,KAAK,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;AAoBA,IAAM,4BAAgD;CACpD,IAAI,OAAO,aAAa,aACtB,OAAO;CAGT,MAAM,oBAAoB,SAAS,cACjC,WAAW,0BAA0B,EACvC;CAEA,IAAI,mBAAmB;EACrB,IAAI,uBAAuB,iBAAiB,GAC1C,UAAU,iBAAiB;EAE7B,OAAO;CACT;CAEA,MAAM,YAAY,SAAS,cAAc,KAAK;CAC9C,UAAU,aAAa,2BAA2B,EAAE;CACpD,SAAS,KAAK,OAAO,SAAS;CAE9B,OAAO;AACT;;AAcA,IAAa,kBAA2C,UAAU;CAChE,MAAM,EACJ,UACA,WACA,mBAAmB,gBACnB,GAAG,cACD;CAEJ,MAAM,mBAAmB,oBAAoB;CAE7C,oCAAoC,UAAU,UAAU,KAAK;CAE7D,MAAM,iBAAiB;EACrB,OACE,oBAAC,SAAD;GAAS,WAAWA,uBAAO;GACzB,UAAA,oBAAC,yBAAD,EAAyB,GAAI,UAAY,CAAA;EAClC,CAAA;CAEb;CAEA,IAAI,CAAC,kBACH,OAAO;CAGT,OACE,oBAAC,uBAAD;EAAuB,cAAc;EACnC,UAAA,oBAAC,KAAK,cAAN;GAAmB,GAAI;GAAsB;GAI3C,UAAA,oBAAC,SAAD;IAAS,WAAWA,uBAAO;IACzB,UAAA,oBAAC,KAAK,OAAN,EAAA,UACE,oBAAC,UAAD;KAAU,UAAU,oBAAC,UAAD,CAAW,CAAA;KAC7B,UAAA,oBAAC,KAAK,QAAN;MAAa,mBAAiB;MAC3B;KACU,CAAA;IACL,CAAA,EACA,CAAA;GACL,CAAA;EACQ,CAAA;CACE,CAAA;AAE3B"}