@mittwald/flow-react-components 0.2.0-alpha.837 → 0.2.0-alpha.839

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 (366) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/assets/doc-properties.json +20095 -18630
  3. package/dist/css/all.css +1 -1
  4. package/dist/js/_virtual/_.locale.json@b1d0b6b6925b7464f548303aac486d45.mjs +12 -0
  5. package/dist/js/_virtual/_.locale.json@b1d0b6b6925b7464f548303aac486d45.mjs.map +1 -0
  6. package/dist/js/default.mjs +8 -0
  7. package/dist/js/default.mjs.map +1 -1
  8. package/dist/js/packages/components/src/components/AccentBox/AccentBox.mjs +1 -1
  9. package/dist/js/packages/components/src/components/AccentBox/AccentBox.mjs.map +1 -1
  10. package/dist/js/packages/components/src/components/Accordion/Accordion.mjs.map +1 -1
  11. package/dist/js/packages/components/src/components/Action/models/ActionState.mjs +1 -1
  12. package/dist/js/packages/components/src/components/Action/models/ActionState.mjs.map +1 -1
  13. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.mjs +1 -7
  14. package/dist/js/packages/components/src/components/ActionGroup/ActionGroup.mjs.map +1 -1
  15. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.mjs +3 -2
  16. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.mjs.map +1 -1
  17. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.module.scss.mjs +1 -3
  18. package/dist/js/packages/components/src/components/Breadcrumb/Breadcrumb.module.scss.mjs.map +1 -1
  19. package/dist/js/packages/components/src/components/CartesianChart/components/Area/Area.mjs +2 -1
  20. package/dist/js/packages/components/src/components/CartesianChart/components/Area/Area.mjs.map +1 -1
  21. package/dist/js/packages/components/src/components/CartesianChart/components/ChartGrid/ChartGrid.mjs +5 -3
  22. package/dist/js/packages/components/src/components/CartesianChart/components/ChartGrid/ChartGrid.mjs.map +1 -1
  23. package/dist/js/packages/components/src/components/CartesianChart/components/Line/Line.mjs +2 -1
  24. package/dist/js/packages/components/src/components/CartesianChart/components/Line/Line.mjs.map +1 -1
  25. package/dist/js/packages/components/src/components/CartesianChart/components/XAxis/XAxis.mjs +3 -2
  26. package/dist/js/packages/components/src/components/CartesianChart/components/XAxis/XAxis.mjs.map +1 -1
  27. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs +3 -2
  28. package/dist/js/packages/components/src/components/CartesianChart/components/YAxis/YAxis.mjs.map +1 -1
  29. package/dist/js/packages/components/src/components/Color/Color.mjs +13 -5
  30. package/dist/js/packages/components/src/components/Color/Color.mjs.map +1 -1
  31. package/dist/js/packages/components/src/components/Color/Color.module.scss.mjs +8 -2
  32. package/dist/js/packages/components/src/components/Color/Color.module.scss.mjs.map +1 -1
  33. package/dist/js/packages/components/src/components/ComboBox/ComboBox.mjs.map +1 -1
  34. package/dist/js/packages/components/src/components/DonutChart/components/Donut.mjs +4 -3
  35. package/dist/js/packages/components/src/components/DonutChart/components/Donut.mjs.map +1 -1
  36. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.mjs +2 -2
  37. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.mjs.map +1 -1
  38. package/dist/js/packages/components/src/components/HeaderNavigation/HeaderNavigation.module.scss.mjs +2 -2
  39. package/dist/js/packages/components/src/components/Heading/Heading.mjs +2 -2
  40. package/dist/js/packages/components/src/components/Heading/Heading.mjs.map +1 -1
  41. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.mjs +3 -3
  42. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.mjs.map +1 -1
  43. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.module.scss.mjs +1 -3
  44. package/dist/js/packages/components/src/components/IllustratedMessage/IllustratedMessage.module.scss.mjs.map +1 -1
  45. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.mjs +5 -0
  46. package/dist/js/packages/components/src/components/ImageCropper/ImageCropper.mjs.map +1 -1
  47. package/dist/js/packages/components/src/components/ImageCropper/lib/getCroppedImageFile.mjs +13 -9
  48. package/dist/js/packages/components/src/components/ImageCropper/lib/getCroppedImageFile.mjs.map +1 -1
  49. package/dist/js/packages/components/src/components/Initials/Initials.mjs +2 -1
  50. package/dist/js/packages/components/src/components/Initials/Initials.mjs.map +1 -1
  51. package/dist/js/packages/components/src/components/Link/Link.mjs +3 -2
  52. package/dist/js/packages/components/src/components/Link/Link.mjs.map +1 -1
  53. package/dist/js/packages/components/src/components/Link/Link.module.scss.mjs +2 -2
  54. package/dist/js/packages/components/src/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.mjs +1 -0
  55. package/dist/js/packages/components/src/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.mjs.map +1 -1
  56. package/dist/js/packages/components/src/components/LoadingSpinner/LoadingSpinner.mjs +2 -1
  57. package/dist/js/packages/components/src/components/LoadingSpinner/LoadingSpinner.mjs.map +1 -1
  58. package/dist/js/packages/components/src/components/Markdown/Markdown.mjs +7 -8
  59. package/dist/js/packages/components/src/components/Markdown/Markdown.mjs.map +1 -1
  60. package/dist/js/packages/components/src/components/MarkdownEditor/components/Toolbar.mjs +1 -1
  61. package/dist/js/packages/components/src/components/MarkdownEditor/components/Toolbar.mjs.map +1 -1
  62. package/dist/js/packages/components/src/components/MenuItem/components/MenuItemContent/MenuItemContent.mjs +2 -1
  63. package/dist/js/packages/components/src/components/MenuItem/components/MenuItemContent/MenuItemContent.mjs.map +1 -1
  64. package/dist/js/packages/components/src/components/Message/Message.mjs +1 -0
  65. package/dist/js/packages/components/src/components/Message/Message.mjs.map +1 -1
  66. package/dist/js/packages/components/src/components/Message/Message.module.scss.mjs +3 -1
  67. package/dist/js/packages/components/src/components/Message/Message.module.scss.mjs.map +1 -1
  68. package/dist/js/packages/components/src/components/Notification/Notification.mjs +5 -1
  69. package/dist/js/packages/components/src/components/Notification/Notification.mjs.map +1 -1
  70. package/dist/js/packages/components/src/components/PasswordCreationField/components/PasswordGenerateButton/PasswordGenerateButton.mjs +1 -1
  71. package/dist/js/packages/components/src/components/PasswordCreationField/components/PasswordGenerateButton/PasswordGenerateButton.mjs.map +1 -1
  72. package/dist/js/packages/components/src/components/Rating/Rating.module.scss.mjs +5 -1
  73. package/dist/js/packages/components/src/components/Rating/Rating.module.scss.mjs.map +1 -1
  74. package/dist/js/packages/components/src/components/Skeleton/Skeleton.mjs.map +1 -1
  75. package/dist/js/packages/components/src/components/Slider/Slider.mjs +2 -2
  76. package/dist/js/packages/components/src/components/Slider/Slider.mjs.map +1 -1
  77. package/dist/js/packages/components/src/components/Switch/Switch.mjs +2 -1
  78. package/dist/js/packages/components/src/components/Switch/Switch.mjs.map +1 -1
  79. package/dist/js/packages/components/src/components/Switch/Switch.module.scss.mjs +4 -2
  80. package/dist/js/packages/components/src/components/Switch/Switch.module.scss.mjs.map +1 -1
  81. package/dist/js/packages/components/src/components/Table/components/TableCell/TableCell.mjs.map +1 -1
  82. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs +1 -1
  83. package/dist/js/packages/components/src/components/TextArea/TextArea.mjs.map +1 -1
  84. package/dist/js/packages/components/src/lib/theming/components/ThemedHtml.mjs +12 -0
  85. package/dist/js/packages/components/src/lib/theming/components/ThemedHtml.mjs.map +1 -0
  86. package/dist/js/packages/components/src/lib/theming/hooks/useDesignTokens.mjs +13 -0
  87. package/dist/js/packages/components/src/lib/theming/hooks/useDesignTokens.mjs.map +1 -0
  88. package/dist/js/packages/components/src/lib/theming/hooks/useResolvedTheme.mjs +13 -0
  89. package/dist/js/packages/components/src/lib/theming/hooks/useResolvedTheme.mjs.map +1 -0
  90. package/dist/js/packages/components/src/lib/theming/hooks/useSystemTheme.mjs +19 -0
  91. package/dist/js/packages/components/src/lib/theming/hooks/useSystemTheme.mjs.map +1 -0
  92. package/dist/js/packages/components/src/lib/theming/hooks/useTheme.mjs +30 -0
  93. package/dist/js/packages/components/src/lib/theming/hooks/useTheme.mjs.map +1 -0
  94. package/dist/js/packages/components/src/lib/theming/lib/ColorSchemeMediaQuery.mjs +44 -0
  95. package/dist/js/packages/components/src/lib/theming/lib/ColorSchemeMediaQuery.mjs.map +1 -0
  96. package/dist/js/packages/components/src/lib/theming/lib/getFallbackTheme.mjs +10 -0
  97. package/dist/js/packages/components/src/lib/theming/lib/getFallbackTheme.mjs.map +1 -0
  98. package/dist/js/packages/components/src/lib/theming/lib/getResolvedTheme.mjs +11 -0
  99. package/dist/js/packages/components/src/lib/theming/lib/getResolvedTheme.mjs.map +1 -0
  100. package/dist/js/packages/components/src/lib/theming/lib/getTheme.mjs +11 -0
  101. package/dist/js/packages/components/src/lib/theming/lib/getTheme.mjs.map +1 -0
  102. package/dist/js/packages/components/src/lib/theming/lib/getThemeHtmlAttribute.mjs +16 -0
  103. package/dist/js/packages/components/src/lib/theming/lib/getThemeHtmlAttribute.mjs.map +1 -0
  104. package/dist/js/packages/components/src/lib/theming/lib/isClientSide.mjs +8 -0
  105. package/dist/js/packages/components/src/lib/theming/lib/isClientSide.mjs.map +1 -0
  106. package/dist/js/packages/components/src/lib/theming/lib/keys.mjs +6 -0
  107. package/dist/js/packages/components/src/lib/theming/lib/keys.mjs.map +1 -0
  108. package/dist/js/packages/components/src/lib/theming/lib/resolveTheme.mjs +13 -0
  109. package/dist/js/packages/components/src/lib/theming/lib/resolveTheme.mjs.map +1 -0
  110. package/dist/js/packages/components/src/lib/theming/lib/sanitizeTheme.mjs +13 -0
  111. package/dist/js/packages/components/src/lib/theming/lib/sanitizeTheme.mjs.map +1 -0
  112. package/dist/js/packages/components/src/lib/theming/lib/setTheme.mjs +10 -0
  113. package/dist/js/packages/components/src/lib/theming/lib/setTheme.mjs.map +1 -0
  114. package/dist/js/packages/components/src/lib/theming/lib/setThemeHtmlAttribute.mjs +13 -0
  115. package/dist/js/packages/components/src/lib/theming/lib/setThemeHtmlAttribute.mjs.map +1 -0
  116. package/dist/js/packages/components/src/lib/tokens/CategoricalColors.mjs +2 -2
  117. package/dist/js/packages/components/src/lib/tokens/CategoricalColors.mjs.map +1 -1
  118. package/dist/js/packages/design-tokens/dist/json/all-dark.json.mjs +307 -0
  119. package/dist/js/packages/design-tokens/dist/json/all-dark.json.mjs.map +1 -0
  120. package/dist/js/packages/design-tokens/dist/json/all-light.json.mjs +307 -0
  121. package/dist/js/packages/design-tokens/dist/json/all-light.json.mjs.map +1 -0
  122. package/dist/types/components/AccentBox/AccentBox.d.ts +1 -1
  123. package/dist/types/components/AccentBox/AccentBox.d.ts.map +1 -1
  124. package/dist/types/components/Accordion/Accordion.d.ts.map +1 -1
  125. package/dist/types/components/Accordion/stories/Default.stories.d.ts +0 -2
  126. package/dist/types/components/Accordion/stories/Default.stories.d.ts.map +1 -1
  127. package/dist/types/components/Action/stories/Default.stories.d.ts.map +1 -1
  128. package/dist/types/components/ActionGroup/ActionGroup.d.ts +1 -1
  129. package/dist/types/components/ActionGroup/ActionGroup.d.ts.map +1 -1
  130. package/dist/types/components/ActionGroup/stories/Default.stories.d.ts +1 -3
  131. package/dist/types/components/ActionGroup/stories/Default.stories.d.ts.map +1 -1
  132. package/dist/types/components/Align/stories/Default.stories.d.ts +4 -4
  133. package/dist/types/components/Align/stories/Default.stories.d.ts.map +1 -1
  134. package/dist/types/components/Autocomplete/stories/Default.stories.d.ts +1 -1
  135. package/dist/types/components/Autocomplete/stories/Default.stories.d.ts.map +1 -1
  136. package/dist/types/components/AvatarStack/stories/Default.stories.d.ts.map +1 -1
  137. package/dist/types/components/BigNumber/stories/Default.stories.d.ts.map +1 -1
  138. package/dist/types/components/Breadcrumb/Breadcrumb.d.ts +2 -2
  139. package/dist/types/components/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  140. package/dist/types/components/CartesianChart/components/Area/Area.d.ts.map +1 -1
  141. package/dist/types/components/CartesianChart/components/ChartGrid/ChartGrid.d.ts.map +1 -1
  142. package/dist/types/components/CartesianChart/components/Line/Line.d.ts.map +1 -1
  143. package/dist/types/components/CartesianChart/components/XAxis/XAxis.d.ts.map +1 -1
  144. package/dist/types/components/CartesianChart/components/YAxis/YAxis.d.ts.map +1 -1
  145. package/dist/types/components/CartesianChart/stories/Default.stories.d.ts.map +1 -1
  146. package/dist/types/components/Checkbox/stories/Default.stories.d.ts +1 -4
  147. package/dist/types/components/Checkbox/stories/Default.stories.d.ts.map +1 -1
  148. package/dist/types/components/CheckboxButton/stories/Default.stories.d.ts +1 -5
  149. package/dist/types/components/CheckboxButton/stories/Default.stories.d.ts.map +1 -1
  150. package/dist/types/components/CheckboxGroup/stories/Default.stories.d.ts +0 -2
  151. package/dist/types/components/CheckboxGroup/stories/Default.stories.d.ts.map +1 -1
  152. package/dist/types/components/CodeBlock/stories/Default.stories.d.ts.map +1 -1
  153. package/dist/types/components/Color/Color.d.ts +3 -2
  154. package/dist/types/components/Color/Color.d.ts.map +1 -1
  155. package/dist/types/components/ColumnLayout/stories/Default.stories.d.ts +1 -4
  156. package/dist/types/components/ColumnLayout/stories/Default.stories.d.ts.map +1 -1
  157. package/dist/types/components/ComboBox/ComboBox.d.ts +1 -1
  158. package/dist/types/components/ComboBox/ComboBox.d.ts.map +1 -1
  159. package/dist/types/components/ComboBox/stories/Default.stories.d.ts +0 -3
  160. package/dist/types/components/ComboBox/stories/Default.stories.d.ts.map +1 -1
  161. package/dist/types/components/Content/stories/Default.stories.d.ts.map +1 -1
  162. package/dist/types/components/ContextMenu/lib.d.ts +1 -1
  163. package/dist/types/components/ContextMenu/stories/Default.stories.d.ts.map +1 -1
  164. package/dist/types/components/ContextualHelp/stories/Default.stories.d.ts.map +1 -1
  165. package/dist/types/components/CounterBadge/stories/Default.stories.d.ts.map +1 -1
  166. package/dist/types/components/DatePicker/stories/Default.stories.d.ts +1 -2
  167. package/dist/types/components/DatePicker/stories/Default.stories.d.ts.map +1 -1
  168. package/dist/types/components/DateRangePicker/stories/Default.stories.d.ts +0 -1
  169. package/dist/types/components/DateRangePicker/stories/Default.stories.d.ts.map +1 -1
  170. package/dist/types/components/DonutChart/components/Donut.d.ts.map +1 -1
  171. package/dist/types/components/DonutChart/stories/Default.stories.d.ts +0 -1
  172. package/dist/types/components/DonutChart/stories/Default.stories.d.ts.map +1 -1
  173. package/dist/types/components/EmulatedBoldText/stories/Default.stories.d.ts.map +1 -1
  174. package/dist/types/components/FileCard/stories/Default.stories.d.ts +1 -3
  175. package/dist/types/components/FileCard/stories/Default.stories.d.ts.map +1 -1
  176. package/dist/types/components/FileCardList/stories/Default.stories.d.ts.map +1 -1
  177. package/dist/types/components/FileDropZone/stories/Default.stories.d.ts +0 -2
  178. package/dist/types/components/FileDropZone/stories/Default.stories.d.ts.map +1 -1
  179. package/dist/types/components/FileField/stories/Default.stories.d.ts +2 -3
  180. package/dist/types/components/FileField/stories/Default.stories.d.ts.map +1 -1
  181. package/dist/types/components/Flex/stories/Default.stories.d.ts +0 -2
  182. package/dist/types/components/Flex/stories/Default.stories.d.ts.map +1 -1
  183. package/dist/types/components/Header/stories/Default.stories.d.ts.map +1 -1
  184. package/dist/types/components/HeaderNavigation/HeaderNavigation.d.ts +2 -2
  185. package/dist/types/components/Heading/Heading.d.ts +2 -2
  186. package/dist/types/components/Icon/stories/Default.stories.d.ts +1 -1
  187. package/dist/types/components/Icon/stories/Default.stories.d.ts.map +1 -1
  188. package/dist/types/components/IllustratedMessage/IllustratedMessage.d.ts +2 -2
  189. package/dist/types/components/Image/stories/Default.stories.d.ts +1 -2
  190. package/dist/types/components/Image/stories/Default.stories.d.ts.map +1 -1
  191. package/dist/types/components/ImageCropper/ImageCropper.d.ts.map +1 -1
  192. package/dist/types/components/ImageCropper/lib/getCroppedImageFile.d.ts.map +1 -1
  193. package/dist/types/components/Initials/Initials.d.ts.map +1 -1
  194. package/dist/types/components/Label/stories/Default.stories.d.ts +0 -2
  195. package/dist/types/components/Label/stories/Default.stories.d.ts.map +1 -1
  196. package/dist/types/components/LabeledValue/stories/Default.stories.d.ts +0 -1
  197. package/dist/types/components/LabeledValue/stories/Default.stories.d.ts.map +1 -1
  198. package/dist/types/components/LayoutCard/stories/Default.stories.d.ts.map +1 -1
  199. package/dist/types/components/Legend/stories/Default.stories.d.ts.map +1 -1
  200. package/dist/types/components/Link/Link.d.ts +2 -2
  201. package/dist/types/components/Link/Link.d.ts.map +1 -1
  202. package/dist/types/components/List/components/ListItemView/components/ListItemViewContent/ListItemViewContent.d.ts.map +1 -1
  203. package/dist/types/components/List/stories/Default.stories.d.ts +0 -2
  204. package/dist/types/components/List/stories/Default.stories.d.ts.map +1 -1
  205. package/dist/types/components/List/stories/EdgeCases.stories.d.ts +1 -4
  206. package/dist/types/components/List/stories/EdgeCases.stories.d.ts.map +1 -1
  207. package/dist/types/components/List/stories/ListItem.stories.d.ts +1 -6
  208. package/dist/types/components/List/stories/ListItem.stories.d.ts.map +1 -1
  209. package/dist/types/components/List/typedList.d.ts +4 -2
  210. package/dist/types/components/List/typedList.d.ts.map +1 -1
  211. package/dist/types/components/LoadingSpinner/LoadingSpinner.d.ts.map +1 -1
  212. package/dist/types/components/Markdown/Markdown.d.ts.map +1 -1
  213. package/dist/types/components/MarkdownEditor/stories/Default.stories.d.ts +0 -6
  214. package/dist/types/components/MarkdownEditor/stories/Default.stories.d.ts.map +1 -1
  215. package/dist/types/components/MenuItem/components/MenuItemContent/MenuItemContent.d.ts.map +1 -1
  216. package/dist/types/components/Message/Message.d.ts.map +1 -1
  217. package/dist/types/components/Message/stories/Default.stories.d.ts +0 -2
  218. package/dist/types/components/Message/stories/Default.stories.d.ts.map +1 -1
  219. package/dist/types/components/MessageThread/stories/Default.stories.d.ts.map +1 -1
  220. package/dist/types/components/Modal/stories/Default.stories.d.ts +2 -8
  221. package/dist/types/components/Modal/stories/Default.stories.d.ts.map +1 -1
  222. package/dist/types/components/Modal/stories/EdgeCases.stories.d.ts +0 -2
  223. package/dist/types/components/Modal/stories/EdgeCases.stories.d.ts.map +1 -1
  224. package/dist/types/components/Navigation/stories/Default.stories.d.ts +0 -3
  225. package/dist/types/components/Navigation/stories/Default.stories.d.ts.map +1 -1
  226. package/dist/types/components/Notification/Notification.d.ts.map +1 -1
  227. package/dist/types/components/NumberField/stories/Default.stories.d.ts +0 -3
  228. package/dist/types/components/NumberField/stories/Default.stories.d.ts.map +1 -1
  229. package/dist/types/components/PasswordCreationField/stories/Default.stories.d.ts +1 -3
  230. package/dist/types/components/PasswordCreationField/stories/Default.stories.d.ts.map +1 -1
  231. package/dist/types/components/Popover/stories/Default.stories.d.ts.map +1 -1
  232. package/dist/types/components/ProgressBar/stories/Default.stories.d.ts +0 -4
  233. package/dist/types/components/ProgressBar/stories/Default.stories.d.ts.map +1 -1
  234. package/dist/types/components/RadioGroup/stories/Default.stories.d.ts +0 -4
  235. package/dist/types/components/RadioGroup/stories/Default.stories.d.ts.map +1 -1
  236. package/dist/types/components/SearchField/stories/Default.stories.d.ts +0 -3
  237. package/dist/types/components/SearchField/stories/Default.stories.d.ts.map +1 -1
  238. package/dist/types/components/Section/stories/Default.stories.d.ts +0 -5
  239. package/dist/types/components/Section/stories/Default.stories.d.ts.map +1 -1
  240. package/dist/types/components/Section/stories/EdgeCases.stories.d.ts +1 -2
  241. package/dist/types/components/Section/stories/EdgeCases.stories.d.ts.map +1 -1
  242. package/dist/types/components/SegmentedControl/stories/Default.stories.d.ts +1 -2
  243. package/dist/types/components/SegmentedControl/stories/Default.stories.d.ts.map +1 -1
  244. package/dist/types/components/Select/stories/Default.stories.d.ts +0 -3
  245. package/dist/types/components/Select/stories/Default.stories.d.ts.map +1 -1
  246. package/dist/types/components/Skeleton/Skeleton.d.ts +3 -3
  247. package/dist/types/components/Skeleton/Skeleton.d.ts.map +1 -1
  248. package/dist/types/components/SkeletonText/stories/Default.stories.d.ts +1 -1
  249. package/dist/types/components/SkeletonText/stories/Default.stories.d.ts.map +1 -1
  250. package/dist/types/components/Slider/stories/Default.stories.d.ts +0 -2
  251. package/dist/types/components/Slider/stories/Default.stories.d.ts.map +1 -1
  252. package/dist/types/components/Switch/Switch.d.ts.map +1 -1
  253. package/dist/types/components/Switch/stories/Default.stories.d.ts +0 -3
  254. package/dist/types/components/Switch/stories/Default.stories.d.ts.map +1 -1
  255. package/dist/types/components/Table/components/TableCell/TableCell.d.ts +1 -1
  256. package/dist/types/components/Table/components/TableCell/TableCell.d.ts.map +1 -1
  257. package/dist/types/components/Table/stories/Default.stories.d.ts +0 -1
  258. package/dist/types/components/Table/stories/Default.stories.d.ts.map +1 -1
  259. package/dist/types/components/Tabs/stories/Default.stories.d.ts +2 -1
  260. package/dist/types/components/Tabs/stories/Default.stories.d.ts.map +1 -1
  261. package/dist/types/components/TextArea/stories/Default.stories.d.ts +0 -7
  262. package/dist/types/components/TextArea/stories/Default.stories.d.ts.map +1 -1
  263. package/dist/types/components/TextField/stories/Default.stories.d.ts +0 -4
  264. package/dist/types/components/TextField/stories/Default.stories.d.ts.map +1 -1
  265. package/dist/types/components/TimeField/stories/Default.stories.d.ts +0 -3
  266. package/dist/types/components/TimeField/stories/Default.stories.d.ts.map +1 -1
  267. package/dist/types/components/Truncate/stories/Default.stories.d.ts.map +1 -1
  268. package/dist/types/index/default.d.ts +1 -0
  269. package/dist/types/index/default.d.ts.map +1 -1
  270. package/dist/types/integrations/react-hook-form/components/Field/stories/Autocomplete.stories.d.ts.map +1 -1
  271. package/dist/types/integrations/react-hook-form/components/Field/stories/Checkbox.stories.d.ts.map +1 -1
  272. package/dist/types/integrations/react-hook-form/components/Field/stories/CheckboxButton.stories.d.ts.map +1 -1
  273. package/dist/types/integrations/react-hook-form/components/Field/stories/CheckboxGroup.stories.d.ts.map +1 -1
  274. package/dist/types/integrations/react-hook-form/components/Field/stories/ComboBox.stories.d.ts.map +1 -1
  275. package/dist/types/integrations/react-hook-form/components/Field/stories/DatePicker.stories.d.ts.map +1 -1
  276. package/dist/types/integrations/react-hook-form/components/Field/stories/DateRangePicker.stories.d.ts.map +1 -1
  277. package/dist/types/integrations/react-hook-form/components/Field/stories/FileField.stories.d.ts.map +1 -1
  278. package/dist/types/integrations/react-hook-form/components/Field/stories/MarkdownEditor.stories.d.ts.map +1 -1
  279. package/dist/types/integrations/react-hook-form/components/Field/stories/NumberField.stories.d.ts.map +1 -1
  280. package/dist/types/integrations/react-hook-form/components/Field/stories/PasswordCreationField.stories.d.ts.map +1 -1
  281. package/dist/types/integrations/react-hook-form/components/Field/stories/RadioGroup.stories.d.ts.map +1 -1
  282. package/dist/types/integrations/react-hook-form/components/Field/stories/SearchField.stories.d.ts.map +1 -1
  283. package/dist/types/integrations/react-hook-form/components/Field/stories/SegmentedControl.stories.d.ts.map +1 -1
  284. package/dist/types/integrations/react-hook-form/components/Field/stories/Select.stories.d.ts.map +1 -1
  285. package/dist/types/integrations/react-hook-form/components/Field/stories/Slider.stories.d.ts.map +1 -1
  286. package/dist/types/integrations/react-hook-form/components/Field/stories/Switch.stories.d.ts.map +1 -1
  287. package/dist/types/integrations/react-hook-form/components/Field/stories/TextArea.stories.d.ts.map +1 -1
  288. package/dist/types/integrations/react-hook-form/components/Field/stories/TextField.stories.d.ts.map +1 -1
  289. package/dist/types/integrations/react-hook-form/components/Field/stories/TimeField.stories.d.ts.map +1 -1
  290. package/dist/types/lib/dev/StoryBackground.d.ts +1 -0
  291. package/dist/types/lib/dev/StoryBackground.d.ts.map +1 -1
  292. package/dist/types/lib/theming/components/ThemedHtml.d.ts +8 -0
  293. package/dist/types/lib/theming/components/ThemedHtml.d.ts.map +1 -0
  294. package/dist/types/lib/theming/hooks/useDesignTokens.d.ts +25235 -0
  295. package/dist/types/lib/theming/hooks/useDesignTokens.d.ts.map +1 -0
  296. package/dist/types/lib/theming/hooks/useResolvedTheme.d.ts +3 -0
  297. package/dist/types/lib/theming/hooks/useResolvedTheme.d.ts.map +1 -0
  298. package/dist/types/lib/theming/hooks/useSystemTheme.d.ts +3 -0
  299. package/dist/types/lib/theming/hooks/useSystemTheme.d.ts.map +1 -0
  300. package/dist/types/lib/theming/hooks/useTheme.d.ts +3 -0
  301. package/dist/types/lib/theming/hooks/useTheme.d.ts.map +1 -0
  302. package/dist/types/lib/theming/index.d.ts +10 -0
  303. package/dist/types/lib/theming/index.d.ts.map +1 -0
  304. package/dist/types/lib/theming/lib/ColorSchemeMediaQuery.d.ts +14 -0
  305. package/dist/types/lib/theming/lib/ColorSchemeMediaQuery.d.ts.map +1 -0
  306. package/dist/types/lib/theming/lib/getFallbackTheme.d.ts +3 -0
  307. package/dist/types/lib/theming/lib/getFallbackTheme.d.ts.map +1 -0
  308. package/dist/types/lib/theming/lib/getResolvedTheme.d.ts +3 -0
  309. package/dist/types/lib/theming/lib/getResolvedTheme.d.ts.map +1 -0
  310. package/dist/types/lib/theming/lib/getTheme.d.ts +3 -0
  311. package/dist/types/lib/theming/lib/getTheme.d.ts.map +1 -0
  312. package/dist/types/lib/theming/lib/getThemeHtmlAttribute.d.ts +2 -0
  313. package/dist/types/lib/theming/lib/getThemeHtmlAttribute.d.ts.map +1 -0
  314. package/dist/types/lib/theming/lib/isClientSide.d.ts +2 -0
  315. package/dist/types/lib/theming/lib/isClientSide.d.ts.map +1 -0
  316. package/dist/types/lib/theming/lib/keys.d.ts +2 -0
  317. package/dist/types/lib/theming/lib/keys.d.ts.map +1 -0
  318. package/dist/types/lib/theming/lib/resolveTheme.d.ts +3 -0
  319. package/dist/types/lib/theming/lib/resolveTheme.d.ts.map +1 -0
  320. package/dist/types/lib/theming/lib/sanitizeTheme.d.ts +3 -0
  321. package/dist/types/lib/theming/lib/sanitizeTheme.d.ts.map +1 -0
  322. package/dist/types/lib/theming/lib/setTheme.d.ts +3 -0
  323. package/dist/types/lib/theming/lib/setTheme.d.ts.map +1 -0
  324. package/dist/types/lib/theming/lib/setThemeHtmlAttribute.d.ts +3 -0
  325. package/dist/types/lib/theming/lib/setThemeHtmlAttribute.d.ts.map +1 -0
  326. package/dist/types/lib/theming/types.d.ts +5 -0
  327. package/dist/types/lib/theming/types.d.ts.map +1 -0
  328. package/dist/types/lib/tokens/CategoricalColors.d.ts +1 -1
  329. package/dist/types/lib/tokens/CategoricalColors.d.ts.map +1 -1
  330. package/package.json +40 -35
  331. package/dist/js/packages/design-tokens/dist/variables.json.mjs +0 -15
  332. package/dist/js/packages/design-tokens/dist/variables.json.mjs.map +0 -1
  333. package/dist/types/components/Accordion/stories/EdgeCases.stories.d.ts +0 -7
  334. package/dist/types/components/Accordion/stories/EdgeCases.stories.d.ts.map +0 -1
  335. package/dist/types/components/Align/stories/IconText.stories.d.ts +0 -7
  336. package/dist/types/components/Align/stories/IconText.stories.d.ts.map +0 -1
  337. package/dist/types/components/Align/stories/TextContextualHelp.stories.d.ts +0 -7
  338. package/dist/types/components/Align/stories/TextContextualHelp.stories.d.ts.map +0 -1
  339. package/dist/types/components/Align/stories/TextCopyButton.stories.d.ts +0 -7
  340. package/dist/types/components/Align/stories/TextCopyButton.stories.d.ts.map +0 -1
  341. package/dist/types/components/Checkbox/stories/EdgeCases.stories.d.ts +0 -7
  342. package/dist/types/components/Checkbox/stories/EdgeCases.stories.d.ts.map +0 -1
  343. package/dist/types/components/CheckboxButton/stories/EdgeCases.stories.d.ts +0 -8
  344. package/dist/types/components/CheckboxButton/stories/EdgeCases.stories.d.ts.map +0 -1
  345. package/dist/types/components/ComboBox/stories/EdgeCases.stories.d.ts +0 -7
  346. package/dist/types/components/ComboBox/stories/EdgeCases.stories.d.ts.map +0 -1
  347. package/dist/types/components/DonutChart/stories/EdgeCases.stories.d.ts +0 -8
  348. package/dist/types/components/DonutChart/stories/EdgeCases.stories.d.ts.map +0 -1
  349. package/dist/types/components/Icon/stories/Sizes.stories.d.ts +0 -9
  350. package/dist/types/components/Icon/stories/Sizes.stories.d.ts.map +0 -1
  351. package/dist/types/components/LabeledValue/stories/EdgeCases.stories.d.ts +0 -8
  352. package/dist/types/components/LabeledValue/stories/EdgeCases.stories.d.ts.map +0 -1
  353. package/dist/types/components/MessageThread/components/MessageSeparator/stories/Default.stories.d.ts +0 -8
  354. package/dist/types/components/MessageThread/components/MessageSeparator/stories/Default.stories.d.ts.map +0 -1
  355. package/dist/types/components/NumberField/stories/EdgeCases.stories.d.ts +0 -8
  356. package/dist/types/components/NumberField/stories/EdgeCases.stories.d.ts.map +0 -1
  357. package/dist/types/components/ProgressBar/stories/EdgeCases.stories.d.ts +0 -9
  358. package/dist/types/components/ProgressBar/stories/EdgeCases.stories.d.ts.map +0 -1
  359. package/dist/types/components/ProgressBar/stories/Variants.stories.d.ts +0 -10
  360. package/dist/types/components/ProgressBar/stories/Variants.stories.d.ts.map +0 -1
  361. package/dist/types/components/RadioGroup/stories/EdgeCases.stories.d.ts +0 -9
  362. package/dist/types/components/RadioGroup/stories/EdgeCases.stories.d.ts.map +0 -1
  363. package/dist/types/components/Switch/stories/EdgeCases.stories.d.ts +0 -7
  364. package/dist/types/components/Switch/stories/EdgeCases.stories.d.ts.map +0 -1
  365. package/dist/types/components/Tabs/stories/EdgeCases.stories.d.ts +0 -9
  366. package/dist/types/components/Tabs/stories/EdgeCases.stories.d.ts.map +0 -1
@@ -0,0 +1,12 @@
1
+ "use client"
2
+ /* */
3
+ const locales = {"de-DE":{
4
+ "notification.close": "Schließen"
5
+ }
6
+ ,"en-US":{
7
+ "notification.close": "Close"
8
+ }
9
+ };
10
+
11
+ export { locales as default };
12
+ //# sourceMappingURL=_.locale.json@b1d0b6b6925b7464f548303aac486d45.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_.locale.json@b1d0b6b6925b7464f548303aac486d45.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
@@ -300,6 +300,14 @@ export { Truncate } from './packages/components/src/components/Truncate/Truncate
300
300
  export { TunnelEntry } from './packages/components/src/components/TunnelEntry/TunnelEntry.mjs';
301
301
  export { Wrap } from './packages/components/src/components/Wrap/Wrap.mjs';
302
302
  export { Render } from './packages/components/src/lib/react/components/Render/Render.mjs';
303
+ export { ThemedHtml } from './packages/components/src/lib/theming/components/ThemedHtml.mjs';
304
+ export { themeHtmlAttribute } from './packages/components/src/lib/theming/lib/keys.mjs';
305
+ export { getTheme } from './packages/components/src/lib/theming/lib/getTheme.mjs';
306
+ export { getResolvedTheme } from './packages/components/src/lib/theming/lib/getResolvedTheme.mjs';
307
+ export { setTheme } from './packages/components/src/lib/theming/lib/setTheme.mjs';
308
+ export { useTheme as useStoredTheme } from './packages/components/src/lib/theming/hooks/useTheme.mjs';
309
+ export { useResolvedTheme as useTheme } from './packages/components/src/lib/theming/hooks/useResolvedTheme.mjs';
310
+ export { useDesignTokens } from './packages/components/src/lib/theming/hooks/useDesignTokens.mjs';
303
311
  export { OverlayController } from './packages/components/src/lib/controller/overlay/OverlayController.mjs';
304
312
  export { useOverlayController } from './packages/components/src/lib/controller/overlay/useOverlayController.mjs';
305
313
  export { useModalController } from './packages/components/src/lib/controller/overlay/useModalController.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"default.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"default.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -24,7 +24,7 @@ function isFlowColor(something) {
24
24
  const AccentBox = flowComponent("AccentBox", (props) => {
25
25
  const {
26
26
  color: colorFromProps,
27
- backgroundColor = "blue",
27
+ backgroundColor = "neutral",
28
28
  backgroundImage,
29
29
  children,
30
30
  elementType = "div",
@@ -1 +1 @@
1
- {"version":3,"file":"AccentBox.mjs","sources":["../../../../../../../src/components/AccentBox/AccentBox.tsx"],"sourcesContent":["import type { CSSProperties, PropsWithChildren } from \"react\";\nimport type {\n AlphaColor,\n PropsWithClassName,\n PropsWithElementType,\n} from \"@/lib/types/props\";\nimport clsx from \"clsx\";\nimport styles from \"./AccentBox.module.scss\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\n\nconst accentBoxBackgroundColors = [\n \"neutral\",\n \"blue\",\n \"violet\",\n \"teal\",\n \"lilac\",\n \"green\",\n \"navy\",\n \"gradient\",\n] as const;\n\ntype AccentBoxBackgroundColor = (typeof accentBoxBackgroundColors)[number];\ntype AccentBoxWithCustomBackgroundColor =\n | AccentBoxBackgroundColor\n | (string & {});\n\nfunction isFlowColor(\n something: unknown,\n): something is AccentBoxBackgroundColor {\n const anyAccentBoxBackgroundColors =\n accentBoxBackgroundColors as readonly string[];\n return (\n typeof something === \"string\" &&\n anyAccentBoxBackgroundColors.includes(something)\n );\n}\n\nexport interface AccentBoxProps\n extends\n PropsWithChildren,\n PropsWithElementType<\"div\" | \"section\" | \"article\">,\n PropsWithClassName,\n FlowComponentProps {\n /** The background color of the accent box. @default \"blue\" */\n backgroundColor?: AccentBoxWithCustomBackgroundColor;\n /** The content color of the accent box. @default \"default\" */\n color?: \"default\" | AlphaColor;\n /** The background image of the accent box. */\n backgroundImage?: string;\n /** The aspect ratio of the accent box. */\n aspectRatio?: CSSProperties[\"aspectRatio\"];\n}\n\n/** @flr-generate all */\nexport const AccentBox = flowComponent(\"AccentBox\", (props) => {\n const {\n color: colorFromProps,\n backgroundColor = \"blue\",\n backgroundImage,\n children,\n elementType = \"div\",\n className,\n style: styleFromProps,\n aspectRatio,\n } = props;\n\n const defaultColor =\n (colorFromProps as unknown as string) === \"gradient\" ||\n backgroundColor === \"gradient\"\n ? \"dark-static\"\n : \"default\";\n\n const color = colorFromProps ?? defaultColor;\n\n const isAFlowColor = isFlowColor(backgroundColor);\n\n // backwards compatibility\n const backgroundColorFromColor =\n (colorFromProps as unknown as string) === \"neutral\" ||\n (colorFromProps as unknown as string) === \"gradient\" ||\n (colorFromProps as unknown as string) === \"green\"\n ? (colorFromProps as unknown as AccentBoxBackgroundColor)\n : undefined;\n\n const style = {\n backgroundColor: isAFlowColor ? undefined : backgroundColor,\n backgroundImage: backgroundImage ? `url(${backgroundImage})` : undefined,\n aspectRatio,\n ...styleFromProps,\n };\n\n const rootClassName = clsx(\n styles.accentBox,\n className,\n backgroundColorFromColor\n ? styles[backgroundColorFromColor]\n : isAFlowColor\n ? styles[backgroundColor]\n : undefined,\n );\n\n const Element = elementType;\n\n const contentColor = color === \"default\" ? undefined : color;\n\n const propsContext: PropsContext = {\n Link: {\n color: contentColor,\n },\n Text: {\n color: contentColor,\n },\n Heading: {\n color: contentColor,\n },\n Icon: {\n className: styles.icon,\n },\n };\n\n return (\n <Element className={rootClassName} style={style}>\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Element>\n );\n});\n\nexport default AccentBox;\n"],"names":[],"mappings":";;;;;;;AAcA,MAAM,yBAAA,GAA4B;AAAA,EAChC,SAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA;AAOA,SAAS,YACP,SAAA,EACuC;AACvC,EAAA,MAAM,4BAAA,GACJ,yBAAA;AACF,EAAA,OACE,OAAO,SAAA,KAAc,QAAA,IACrB,4BAAA,CAA6B,SAAS,SAAS,CAAA;AAEnD;AAmBO,MAAM,SAAA,GAAY,aAAA,CAAc,WAAA,EAAa,CAAC,KAAA,KAAU;AAC7D,EAAA,MAAM;AAAA,IACJ,KAAA,EAAO,cAAA;AAAA,IACP,eAAA,GAAkB,MAAA;AAAA,IAClB,eAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,GAAc,KAAA;AAAA,IACd,SAAA;AAAA,IACA,KAAA,EAAO,cAAA;AAAA,IACP;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,MAAM,YAAA,GACH,cAAA,KAAyC,UAAA,IAC1C,eAAA,KAAoB,aAChB,aAAA,GACA,SAAA;AAEN,EAAA,MAAM,QAAQ,cAAA,IAAkB,YAAA;AAEhC,EAAA,MAAM,YAAA,GAAe,YAAY,eAAe,CAAA;AAGhD,EAAA,MAAM,2BACH,cAAA,KAAyC,SAAA,IACzC,mBAAyC,UAAA,IACzC,cAAA,KAAyC,UACrC,cAAA,GACD,MAAA;AAEN,EAAA,MAAM,KAAA,GAAQ;AAAA,IACZ,eAAA,EAAiB,eAAe,MAAA,GAAY,eAAA;AAAA,IAC5C,eAAA,EAAiB,eAAA,GAAkB,CAAA,IAAA,EAAO,eAAe,CAAA,CAAA,CAAA,GAAM,MAAA;AAAA,IAC/D,WAAA;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,aAAA,GAAgB,IAAA;AAAA,IACpB,MAAA,CAAO,SAAA;AAAA,IACP,SAAA;AAAA,IACA,2BACI,MAAA,CAAO,wBAAwB,IAC/B,YAAA,GACE,MAAA,CAAO,eAAe,CAAA,GACtB;AAAA,GACR;AAEA,EAAA,MAAM,OAAA,GAAU,WAAA;AAEhB,EAAA,MAAM,YAAA,GAAe,KAAA,KAAU,SAAA,GAAY,MAAA,GAAY,KAAA;AAEvD,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,IAAA,EAAM;AAAA,MACJ,KAAA,EAAO;AAAA,KACT;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,KAAA,EAAO;AAAA,KACT;AAAA,IACA,OAAA,EAAS;AAAA,MACP,KAAA,EAAO;AAAA,KACT;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,WAAW,MAAA,CAAO;AAAA;AACpB,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAW,aAAA,EAAe,KAAA,EACjC,8BAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,QAAA,EACH,CAAA,EACF,CAAA;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"AccentBox.mjs","sources":["../../../../../../../src/components/AccentBox/AccentBox.tsx"],"sourcesContent":["import type { CSSProperties, PropsWithChildren } from \"react\";\nimport type {\n AlphaColor,\n PropsWithClassName,\n PropsWithElementType,\n} from \"@/lib/types/props\";\nimport clsx from \"clsx\";\nimport styles from \"./AccentBox.module.scss\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\n\nconst accentBoxBackgroundColors = [\n \"neutral\",\n \"blue\",\n \"violet\",\n \"teal\",\n \"lilac\",\n \"green\",\n \"navy\",\n \"gradient\",\n] as const;\n\ntype AccentBoxBackgroundColor = (typeof accentBoxBackgroundColors)[number];\ntype AccentBoxWithCustomBackgroundColor =\n | AccentBoxBackgroundColor\n | (string & {});\n\nfunction isFlowColor(\n something: unknown,\n): something is AccentBoxBackgroundColor {\n const anyAccentBoxBackgroundColors =\n accentBoxBackgroundColors as readonly string[];\n return (\n typeof something === \"string\" &&\n anyAccentBoxBackgroundColors.includes(something)\n );\n}\n\nexport interface AccentBoxProps\n extends\n PropsWithChildren,\n PropsWithElementType<\"div\" | \"section\" | \"article\">,\n PropsWithClassName,\n FlowComponentProps {\n /** The background color of the accent box. @default \"neutral\" */\n backgroundColor?: AccentBoxWithCustomBackgroundColor;\n /** The content color of the accent box. @default \"default\" */\n color?: \"default\" | AlphaColor;\n /** The background image of the accent box. */\n backgroundImage?: string;\n /** The aspect ratio of the accent box. */\n aspectRatio?: CSSProperties[\"aspectRatio\"];\n}\n\n/** @flr-generate all */\nexport const AccentBox = flowComponent(\"AccentBox\", (props) => {\n const {\n color: colorFromProps,\n backgroundColor = \"neutral\",\n backgroundImage,\n children,\n elementType = \"div\",\n className,\n style: styleFromProps,\n aspectRatio,\n } = props;\n\n const defaultColor =\n (colorFromProps as unknown as string) === \"gradient\" ||\n backgroundColor === \"gradient\"\n ? \"dark-static\"\n : \"default\";\n\n const color = colorFromProps ?? defaultColor;\n\n const isAFlowColor = isFlowColor(backgroundColor);\n\n // backwards compatibility\n const backgroundColorFromColor =\n (colorFromProps as unknown as string) === \"neutral\" ||\n (colorFromProps as unknown as string) === \"gradient\" ||\n (colorFromProps as unknown as string) === \"green\"\n ? (colorFromProps as unknown as AccentBoxBackgroundColor)\n : undefined;\n\n const style = {\n backgroundColor: isAFlowColor ? undefined : backgroundColor,\n backgroundImage: backgroundImage ? `url(${backgroundImage})` : undefined,\n aspectRatio,\n ...styleFromProps,\n };\n\n const rootClassName = clsx(\n styles.accentBox,\n className,\n backgroundColorFromColor\n ? styles[backgroundColorFromColor]\n : isAFlowColor\n ? styles[backgroundColor]\n : undefined,\n );\n\n const Element = elementType;\n\n const contentColor = color === \"default\" ? undefined : color;\n\n const propsContext: PropsContext = {\n Link: {\n color: contentColor,\n },\n Text: {\n color: contentColor,\n },\n Heading: {\n color: contentColor,\n },\n Icon: {\n className: styles.icon,\n },\n };\n\n return (\n <Element className={rootClassName} style={style}>\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Element>\n );\n});\n\nexport default AccentBox;\n"],"names":[],"mappings":";;;;;;;AAcA,MAAM,yBAAA,GAA4B;AAAA,EAChC,SAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA;AAOA,SAAS,YACP,SAAA,EACuC;AACvC,EAAA,MAAM,4BAAA,GACJ,yBAAA;AACF,EAAA,OACE,OAAO,SAAA,KAAc,QAAA,IACrB,4BAAA,CAA6B,SAAS,SAAS,CAAA;AAEnD;AAmBO,MAAM,SAAA,GAAY,aAAA,CAAc,WAAA,EAAa,CAAC,KAAA,KAAU;AAC7D,EAAA,MAAM;AAAA,IACJ,KAAA,EAAO,cAAA;AAAA,IACP,eAAA,GAAkB,SAAA;AAAA,IAClB,eAAA;AAAA,IACA,QAAA;AAAA,IACA,WAAA,GAAc,KAAA;AAAA,IACd,SAAA;AAAA,IACA,KAAA,EAAO,cAAA;AAAA,IACP;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,MAAM,YAAA,GACH,cAAA,KAAyC,UAAA,IAC1C,eAAA,KAAoB,aAChB,aAAA,GACA,SAAA;AAEN,EAAA,MAAM,QAAQ,cAAA,IAAkB,YAAA;AAEhC,EAAA,MAAM,YAAA,GAAe,YAAY,eAAe,CAAA;AAGhD,EAAA,MAAM,2BACH,cAAA,KAAyC,SAAA,IACzC,mBAAyC,UAAA,IACzC,cAAA,KAAyC,UACrC,cAAA,GACD,MAAA;AAEN,EAAA,MAAM,KAAA,GAAQ;AAAA,IACZ,eAAA,EAAiB,eAAe,MAAA,GAAY,eAAA;AAAA,IAC5C,eAAA,EAAiB,eAAA,GAAkB,CAAA,IAAA,EAAO,eAAe,CAAA,CAAA,CAAA,GAAM,MAAA;AAAA,IAC/D,WAAA;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,aAAA,GAAgB,IAAA;AAAA,IACpB,MAAA,CAAO,SAAA;AAAA,IACP,SAAA;AAAA,IACA,2BACI,MAAA,CAAO,wBAAwB,IAC/B,YAAA,GACE,MAAA,CAAO,eAAe,CAAA,GACtB;AAAA,GACR;AAEA,EAAA,MAAM,OAAA,GAAU,WAAA;AAEhB,EAAA,MAAM,YAAA,GAAe,KAAA,KAAU,SAAA,GAAY,MAAA,GAAY,KAAA;AAEvD,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,IAAA,EAAM;AAAA,MACJ,KAAA,EAAO;AAAA,KACT;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,KAAA,EAAO;AAAA,KACT;AAAA,IACA,OAAA,EAAS;AAAA,MACP,KAAA,EAAO;AAAA,KACT;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,WAAW,MAAA,CAAO;AAAA;AACpB,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAW,aAAA,EAAe,KAAA,EACjC,8BAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,QAAA,EACH,CAAA,EACF,CAAA;AAEJ,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.mjs","sources":["../../../../../../../src/components/Accordion/Accordion.tsx"],"sourcesContent":["import type { ComponentProps, FC, PropsWithChildren } from \"react\";\nimport { useId, useState } from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"./Accordion.module.scss\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Activity } from \"@/components/Activity\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { UiComponentTunnelExit } from \"../UiComponentTunnel/UiComponentTunnelExit\";\n\nexport interface AccordionProps extends PropsWithChildren<\n ComponentProps<\"div\">\n> {\n /** Whether the accordion should be initially expanded. */\n defaultExpanded?: boolean;\n /** The visual variant of the accordion. @default \"default\" */\n variant?: \"default\" | \"outline\";\n}\n\n/** @flr-generate all */\nexport const Accordion: FC<AccordionProps> = flowComponent(\n \"Accordion\",\n (props) => {\n const {\n children,\n className,\n defaultExpanded = false,\n variant = \"default\",\n ...rest\n } = props;\n const [expanded, setExpanded] = useState(defaultExpanded);\n\n const rootClassName = clsx(\n styles.accordion,\n expanded && styles.expanded,\n className,\n variant === \"outline\" && styles.outline,\n );\n\n const headerId = useId();\n const contentId = useId();\n\n const HeaderButton: FC<PropsWithChildren> = (props) => {\n const { children } = props;\n return (\n <Button\n tunnel={null}\n unstyled\n aria-expanded={expanded}\n className={styles.headerButton}\n onPress={() => setExpanded((expanded) => !expanded)}\n aria-controls={contentId}\n >\n {children}\n <IconChevronDown className={styles.chevron} />\n </Button>\n );\n };\n\n const propsContext: PropsContext = {\n Content: {\n className: styles.contentInner,\n tunnel: {\n id: \"content\",\n component: \"Accordion\",\n },\n },\n Heading: {\n className: styles.header,\n level: 4,\n size: \"xs\",\n children: dynamic((props) => (\n <HeaderButton>{props.children}</HeaderButton>\n )),\n },\n Label: {\n className: styles.header,\n children: dynamic((props) => (\n <HeaderButton>{props.children}</HeaderButton>\n )),\n },\n };\n\n return (\n <div {...rest} className={rootClassName}>\n <PropsContextProvider props={propsContext} dependencies={[expanded]}>\n {children}\n <div\n aria-labelledby={headerId}\n id={contentId}\n role=\"region\"\n hidden={!expanded}\n className={styles.content}\n >\n <Activity isActive={expanded} inactiveDelay={1000}>\n <UiComponentTunnelExit id=\"content\" component=\"Accordion\" />\n </Activity>\n </div>\n </PropsContextProvider>\n </div>\n );\n },\n {\n type: \"layout\",\n },\n);\n\nexport default Accordion;\n"],"names":["props","children","expanded"],"mappings":"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"}
1
+ {"version":3,"file":"Accordion.mjs","sources":["../../../../../../../src/components/Accordion/Accordion.tsx"],"sourcesContent":["import type { ComponentProps, FC, PropsWithChildren } from \"react\";\nimport { useId, useState } from \"react\";\nimport clsx from \"clsx\";\nimport styles from \"./Accordion.module.scss\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Activity } from \"@/components/Activity\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { UiComponentTunnelExit } from \"../UiComponentTunnel/UiComponentTunnelExit\";\n\nexport interface AccordionProps extends PropsWithChildren<\n ComponentProps<\"div\">\n> {\n /** Whether the accordion should be initially expanded. */\n defaultExpanded?: boolean;\n /** The visual variant of the accordion. @default \"default\" */\n variant?: \"default\" | \"outline\";\n}\n\n/** @flr-generate all */\nexport const Accordion: FC<AccordionProps> = flowComponent(\n \"Accordion\",\n (props) => {\n const {\n children,\n className,\n defaultExpanded = false,\n variant = \"default\",\n ...rest\n } = props;\n const [expanded, setExpanded] = useState(defaultExpanded);\n\n const rootClassName = clsx(\n styles.accordion,\n expanded && styles.expanded,\n className,\n variant === \"outline\" && styles.outline,\n );\n\n const headerId = useId();\n\n const contentId = useId();\n\n const HeaderButton: FC<PropsWithChildren> = (props) => {\n const { children } = props;\n return (\n <Button\n tunnel={null}\n unstyled\n aria-expanded={expanded}\n className={styles.headerButton}\n onPress={() => setExpanded((expanded) => !expanded)}\n aria-controls={contentId}\n >\n {children}\n <IconChevronDown className={styles.chevron} />\n </Button>\n );\n };\n\n const propsContext: PropsContext = {\n Content: {\n className: styles.contentInner,\n tunnel: {\n id: \"content\",\n component: \"Accordion\",\n },\n },\n Heading: {\n className: styles.header,\n level: 4,\n size: \"xs\",\n children: dynamic((props) => (\n <HeaderButton>{props.children}</HeaderButton>\n )),\n },\n Label: {\n className: styles.header,\n children: dynamic((props) => (\n <HeaderButton>{props.children}</HeaderButton>\n )),\n },\n };\n\n return (\n <div {...rest} className={rootClassName}>\n <PropsContextProvider props={propsContext} dependencies={[expanded]}>\n {children}\n <div\n aria-labelledby={headerId}\n id={contentId}\n role=\"region\"\n hidden={!expanded}\n className={styles.content}\n >\n <Activity isActive={expanded} inactiveDelay={1000}>\n <UiComponentTunnelExit id=\"content\" component=\"Accordion\" />\n </Activity>\n </div>\n </PropsContextProvider>\n </div>\n );\n },\n {\n type: \"layout\",\n },\n);\n\nexport default Accordion;\n"],"names":["props","children","expanded"],"mappings":"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"}
@@ -7,7 +7,7 @@ import { useStatic } from '../../../lib/hooks/useStatic.mjs';
7
7
 
8
8
  const duration = {
9
9
  pending: 1e3,
10
- succeeded: 1500,
10
+ succeeded: 800,
11
11
  failed: 2e3
12
12
  };
13
13
  class ActionState {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionState.mjs","sources":["../../../../../../../../src/components/Action/models/ActionState.ts"],"sourcesContent":["import {\n action as mobxAction,\n computed,\n makeObservable,\n observable,\n} from \"mobx\";\nimport useSelector from \"@/lib/mobx/useSelector\";\nimport { sleep } from \"@/lib/promises/sleep\";\nimport { useStatic } from \"@/lib/hooks/useStatic\";\n\nexport type ActionStateValue =\n | \"isIdle\"\n | \"isSucceeded\"\n | \"isPending\"\n | \"isExecuting\"\n | \"isFailed\";\n\nexport const duration = {\n pending: 1000,\n succeeded: 1500,\n failed: 2000,\n};\n\nexport class ActionState {\n private showFeedback?: boolean;\n public state: ActionStateValue = \"isIdle\";\n private setPendingTimeout: number | undefined;\n public error: unknown;\n private isAsync = false;\n\n public constructor() {\n makeObservable(this, {\n state: observable,\n updateState: mobxAction,\n isBusy: computed,\n });\n }\n\n public static useNew(): ActionState {\n return useStatic(() => new ActionState());\n }\n\n public updateState(newState: ActionStateValue): void {\n this.state = newState;\n }\n\n public useValue(): ActionStateValue {\n return useSelector(() => this.state, [this]);\n }\n\n public useIsBusy(): boolean {\n return useSelector(() => this.isBusy, [this]);\n }\n\n public get isBusy(): boolean {\n return this.state !== \"isIdle\";\n }\n\n public onAsyncStart(): void {\n this.clearPendingTimeout();\n this.isAsync = true;\n this.updateState(\"isExecuting\");\n this.setPendingTimeout = window.setTimeout(\n () => this.startPending(),\n duration.pending,\n );\n }\n\n public async onSucceeded(): Promise<void> {\n await this.onDone();\n }\n\n public async onFailed(error?: unknown): Promise<void> {\n this.error = error ?? new Error(\"Unknown error\");\n await this.onDone();\n }\n\n public withFeedback(feedback?: boolean): ActionState {\n this.showFeedback = feedback;\n return this;\n }\n\n private async startFailedFeedback(): Promise<void> {\n this.updateState(\"isFailed\");\n await sleep(duration.failed);\n this.resetAfterDone();\n }\n\n private async startSucceededFeedback(): Promise<void> {\n this.updateState(\"isSucceeded\");\n await sleep(duration.succeeded);\n this.resetAfterDone();\n }\n\n private resetAfterDone(): void {\n this.updateState(\"isIdle\");\n this.isAsync = false;\n this.error = undefined;\n }\n\n private clearPendingTimeout(): void {\n if (this.setPendingTimeout) {\n window.clearTimeout(this.setPendingTimeout);\n }\n }\n\n private onDone(): Promise<void> | void {\n this.clearPendingTimeout();\n if (this.error) {\n return this.startFailedFeedback();\n } else if (\n this.showFeedback !== false &&\n (this.showFeedback || this.isAsync)\n ) {\n return this.startSucceededFeedback();\n } else {\n this.resetAfterDone();\n }\n }\n\n private startPending(): void {\n this.updateState(\"isPending\");\n }\n}\n"],"names":["mobxAction"],"mappings":"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"}
1
+ {"version":3,"file":"ActionState.mjs","sources":["../../../../../../../../src/components/Action/models/ActionState.ts"],"sourcesContent":["import {\n action as mobxAction,\n computed,\n makeObservable,\n observable,\n} from \"mobx\";\nimport useSelector from \"@/lib/mobx/useSelector\";\nimport { sleep } from \"@/lib/promises/sleep\";\nimport { useStatic } from \"@/lib/hooks/useStatic\";\n\nexport type ActionStateValue =\n | \"isIdle\"\n | \"isSucceeded\"\n | \"isPending\"\n | \"isExecuting\"\n | \"isFailed\";\n\nexport const duration = {\n pending: 1000,\n succeeded: 800,\n failed: 2000,\n};\n\nexport class ActionState {\n private showFeedback?: boolean;\n public state: ActionStateValue = \"isIdle\";\n private setPendingTimeout: number | undefined;\n public error: unknown;\n private isAsync = false;\n\n public constructor() {\n makeObservable(this, {\n state: observable,\n updateState: mobxAction,\n isBusy: computed,\n });\n }\n\n public static useNew(): ActionState {\n return useStatic(() => new ActionState());\n }\n\n public updateState(newState: ActionStateValue): void {\n this.state = newState;\n }\n\n public useValue(): ActionStateValue {\n return useSelector(() => this.state, [this]);\n }\n\n public useIsBusy(): boolean {\n return useSelector(() => this.isBusy, [this]);\n }\n\n public get isBusy(): boolean {\n return this.state !== \"isIdle\";\n }\n\n public onAsyncStart(): void {\n this.clearPendingTimeout();\n this.isAsync = true;\n this.updateState(\"isExecuting\");\n this.setPendingTimeout = window.setTimeout(\n () => this.startPending(),\n duration.pending,\n );\n }\n\n public async onSucceeded(): Promise<void> {\n await this.onDone();\n }\n\n public async onFailed(error?: unknown): Promise<void> {\n this.error = error ?? new Error(\"Unknown error\");\n await this.onDone();\n }\n\n public withFeedback(feedback?: boolean): ActionState {\n this.showFeedback = feedback;\n return this;\n }\n\n private async startFailedFeedback(): Promise<void> {\n this.updateState(\"isFailed\");\n await sleep(duration.failed);\n this.resetAfterDone();\n }\n\n private async startSucceededFeedback(): Promise<void> {\n this.updateState(\"isSucceeded\");\n await sleep(duration.succeeded);\n this.resetAfterDone();\n }\n\n private resetAfterDone(): void {\n this.updateState(\"isIdle\");\n this.isAsync = false;\n this.error = undefined;\n }\n\n private clearPendingTimeout(): void {\n if (this.setPendingTimeout) {\n window.clearTimeout(this.setPendingTimeout);\n }\n }\n\n private onDone(): Promise<void> | void {\n this.clearPendingTimeout();\n if (this.error) {\n return this.startFailedFeedback();\n } else if (\n this.showFeedback !== false &&\n (this.showFeedback || this.isAsync)\n ) {\n return this.startSucceededFeedback();\n } else {\n this.resetAfterDone();\n }\n }\n\n private startPending(): void {\n this.updateState(\"isPending\");\n }\n}\n"],"names":["mobxAction"],"mappings":"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"}
@@ -13,13 +13,7 @@ import { getActionGroupSlot } from './lib/getActionGroupSlot.mjs';
13
13
  const ActionGroup = flowComponent(
14
14
  "ActionGroup",
15
15
  (props) => {
16
- const {
17
- children,
18
- className,
19
- ref,
20
- spacing = "s",
21
- ...rest
22
- } = props;
16
+ const { children, className, ref, spacing = "s", ...rest } = props;
23
17
  const rootClassName = clsx(styles.actionGroup, className, styles[spacing]);
24
18
  const propsContext = {
25
19
  Button: {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionGroup.mjs","sources":["../../../../../../../src/components/ActionGroup/ActionGroup.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport styles from \"./ActionGroup.module.scss\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { ActionStateContextProvider } from \"@/components/Action/models/ActionStateContext\";\nimport { getActionGroupSlot } from \"@/components/ActionGroup/lib/getActionGroupSlot\";\n\nexport interface ActionGroupProps\n extends\n PropsWithChildren,\n FlowComponentProps<HTMLDivElement>,\n PropsWithClassName {\n /** The spacing between the buttons inside the action group. @default \"m\" */\n spacing?: \"s\" | \"m\";\n}\n\n/** @flr-generate all */\nexport const ActionGroup = flowComponent(\n \"ActionGroup\",\n (props) => {\n const {\n children,\n className,\n ref,\n\n spacing = \"s\",\n ...rest\n } = props;\n\n const rootClassName = clsx(styles.actionGroup, className, styles[spacing]);\n\n const propsContext: PropsContext = {\n Button: {\n slot: dynamic((props) => getActionGroupSlot(props)),\n className: dynamic((props) => {\n const slot = getActionGroupSlot(props);\n return clsx(props.className, styles[slot]);\n }),\n },\n Switch: {\n labelPosition: \"leading\",\n className: dynamic((props) => {\n return clsx(props.className, props.slot && styles[props.slot]);\n }),\n },\n Link: {\n className: dynamic((props) => {\n return clsx(props.className, props.slot && styles[props.slot]);\n }),\n },\n };\n\n return (\n <ActionStateContextProvider>\n <PropsContextProvider props={propsContext}>\n <div {...rest} className={rootClassName} ref={ref} role=\"group\">\n {children}\n </div>\n </PropsContextProvider>\n </ActionStateContextProvider>\n );\n },\n {\n type: \"layout\",\n },\n);\n\nexport default ActionGroup;\n"],"names":["props"],"mappings":";;;;;;;;;;AAqBO,MAAM,WAAA,GAAc,aAAA;AAAA,EACzB,aAAA;AAAA,EACA,CAAC,KAAA,KAAU;AACT,IAAA,MAAM;AAAA,MACJ,QAAA;AAAA,MACA,SAAA;AAAA,MACA,GAAA;AAAA,MAEA,OAAA,GAAU,GAAA;AAAA,MACV,GAAG;AAAA,KACL,GAAI,KAAA;AAEJ,IAAA,MAAM,gBAAgB,IAAA,CAAK,MAAA,CAAO,aAAa,SAAA,EAAW,MAAA,CAAO,OAAO,CAAC,CAAA;AAEzE,IAAA,MAAM,YAAA,GAA6B;AAAA,MACjC,MAAA,EAAQ;AAAA,QACN,MAAM,OAAA,CAAQ,CAACA,MAAAA,KAAU,kBAAA,CAAmBA,MAAK,CAAC,CAAA;AAAA,QAClD,SAAA,EAAW,OAAA,CAAQ,CAACA,MAAAA,KAAU;AAC5B,UAAA,MAAM,IAAA,GAAO,mBAAmBA,MAAK,CAAA;AACrC,UAAA,OAAO,IAAA,CAAKA,MAAAA,CAAM,SAAA,EAAW,MAAA,CAAO,IAAI,CAAC,CAAA;AAAA,QAC3C,CAAC;AAAA,OACH;AAAA,MACA,MAAA,EAAQ;AAAA,QACN,aAAA,EAAe,SAAA;AAAA,QACf,SAAA,EAAW,OAAA,CAAQ,CAACA,MAAAA,KAAU;AAC5B,UAAA,OAAO,IAAA,CAAKA,OAAM,SAAA,EAAWA,MAAAA,CAAM,QAAQ,MAAA,CAAOA,MAAAA,CAAM,IAAI,CAAC,CAAA;AAAA,QAC/D,CAAC;AAAA,OACH;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,SAAA,EAAW,OAAA,CAAQ,CAACA,MAAAA,KAAU;AAC5B,UAAA,OAAO,IAAA,CAAKA,OAAM,SAAA,EAAWA,MAAAA,CAAM,QAAQ,MAAA,CAAOA,MAAAA,CAAM,IAAI,CAAC,CAAA;AAAA,QAC/D,CAAC;AAAA;AACH,KACF;AAEA,IAAA,2BACG,0BAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,cAC3B,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAK,GAAG,IAAA,EAAM,WAAW,aAAA,EAAe,GAAA,EAAU,MAAK,OAAA,EACrD,QAAA,EACH,GACF,CAAA,EACF,CAAA;AAAA,EAEJ,CAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA;AAEV;;;;"}
1
+ {"version":3,"file":"ActionGroup.mjs","sources":["../../../../../../../src/components/ActionGroup/ActionGroup.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport styles from \"./ActionGroup.module.scss\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { dynamic, PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { ActionStateContextProvider } from \"@/components/Action/models/ActionStateContext\";\nimport { getActionGroupSlot } from \"@/components/ActionGroup/lib/getActionGroupSlot\";\n\nexport interface ActionGroupProps\n extends\n PropsWithChildren,\n FlowComponentProps<HTMLDivElement>,\n PropsWithClassName {\n /** The spacing between the buttons inside the action group. @default \"s\" */\n spacing?: \"s\" | \"m\";\n}\n\n/** @flr-generate all */\nexport const ActionGroup = flowComponent(\n \"ActionGroup\",\n (props) => {\n const { children, className, ref, spacing = \"s\", ...rest } = props;\n\n const rootClassName = clsx(styles.actionGroup, className, styles[spacing]);\n\n const propsContext: PropsContext = {\n Button: {\n slot: dynamic((props) => getActionGroupSlot(props)),\n className: dynamic((props) => {\n const slot = getActionGroupSlot(props);\n return clsx(props.className, styles[slot]);\n }),\n },\n Switch: {\n labelPosition: \"leading\",\n className: dynamic((props) => {\n return clsx(props.className, props.slot && styles[props.slot]);\n }),\n },\n Link: {\n className: dynamic((props) => {\n return clsx(props.className, props.slot && styles[props.slot]);\n }),\n },\n };\n\n return (\n <ActionStateContextProvider>\n <PropsContextProvider props={propsContext}>\n <div {...rest} className={rootClassName} ref={ref} role=\"group\">\n {children}\n </div>\n </PropsContextProvider>\n </ActionStateContextProvider>\n );\n },\n {\n type: \"layout\",\n },\n);\n\nexport default ActionGroup;\n"],"names":["props"],"mappings":";;;;;;;;;;AAqBO,MAAM,WAAA,GAAc,aAAA;AAAA,EACzB,aAAA;AAAA,EACA,CAAC,KAAA,KAAU;AACT,IAAA,MAAM,EAAE,UAAU,SAAA,EAAW,GAAA,EAAK,UAAU,GAAA,EAAK,GAAG,MAAK,GAAI,KAAA;AAE7D,IAAA,MAAM,gBAAgB,IAAA,CAAK,MAAA,CAAO,aAAa,SAAA,EAAW,MAAA,CAAO,OAAO,CAAC,CAAA;AAEzE,IAAA,MAAM,YAAA,GAA6B;AAAA,MACjC,MAAA,EAAQ;AAAA,QACN,MAAM,OAAA,CAAQ,CAACA,MAAAA,KAAU,kBAAA,CAAmBA,MAAK,CAAC,CAAA;AAAA,QAClD,SAAA,EAAW,OAAA,CAAQ,CAACA,MAAAA,KAAU;AAC5B,UAAA,MAAM,IAAA,GAAO,mBAAmBA,MAAK,CAAA;AACrC,UAAA,OAAO,IAAA,CAAKA,MAAAA,CAAM,SAAA,EAAW,MAAA,CAAO,IAAI,CAAC,CAAA;AAAA,QAC3C,CAAC;AAAA,OACH;AAAA,MACA,MAAA,EAAQ;AAAA,QACN,aAAA,EAAe,SAAA;AAAA,QACf,SAAA,EAAW,OAAA,CAAQ,CAACA,MAAAA,KAAU;AAC5B,UAAA,OAAO,IAAA,CAAKA,OAAM,SAAA,EAAWA,MAAAA,CAAM,QAAQ,MAAA,CAAOA,MAAAA,CAAM,IAAI,CAAC,CAAA;AAAA,QAC/D,CAAC;AAAA,OACH;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,SAAA,EAAW,OAAA,CAAQ,CAACA,MAAAA,KAAU;AAC5B,UAAA,OAAO,IAAA,CAAKA,OAAM,SAAA,EAAWA,MAAAA,CAAM,QAAQ,MAAA,CAAOA,MAAAA,CAAM,IAAI,CAAC,CAAA;AAAA,QAC/D,CAAC;AAAA;AACH,KACF;AAEA,IAAA,2BACG,0BAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,cAC3B,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAK,GAAG,IAAA,EAAM,WAAW,aAAA,EAAe,GAAA,EAAU,MAAK,OAAA,EACrD,QAAA,EACH,GACF,CAAA,EACF,CAAA;AAAA,EAEJ,CAAA;AAAA,EACA;AAAA,IACE,IAAA,EAAM;AAAA;AAEV;;;;"}
@@ -7,12 +7,13 @@ import clsx from 'clsx';
7
7
  import { BreadcrumbItem } from './components/BreadcrumbItem/BreadcrumbItem.mjs';
8
8
  import '../../lib/propsContext/propsContext.mjs';
9
9
  import { PropsContextProvider } from '../../lib/propsContext/components/PropsContextProvider.mjs';
10
+ import { isAlphaColor } from '../../lib/types/props.mjs';
10
11
 
11
12
  const Breadcrumb = (props) => {
12
- const { children, className, color = "primary", size = "m", ...rest } = props;
13
+ const { children, className, color = "default", size = "m", ...rest } = props;
13
14
  const rootClassName = clsx(
14
15
  styles.breadcrumb,
15
- styles[color],
16
+ isAlphaColor(color) && styles[color],
16
17
  size === "s" && styles["size-s"],
17
18
  className
18
19
  );
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.mjs","sources":["../../../../../../../src/components/Breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"./Breadcrumb.module.scss\";\nimport clsx from \"clsx\";\nimport type { BreadcrumbItemProps } from \"./components/BreadcrumbItem\";\nimport { BreadcrumbItem } from \"./components/BreadcrumbItem\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport type { AlphaColor } from \"@/lib/types/props\";\n\nexport interface BreadcrumbProps\n extends\n Omit<Aria.BreadcrumbsProps<BreadcrumbItemProps>, \"children\">,\n PropsWithChildren {\n /** The color of the breadcrumb. @default \"primary\" */\n color?: \"primary\" | AlphaColor;\n /** The size of the element. @default \"m\" */\n size?: \"s\" | \"m\";\n}\n\n/** @flr-generate all */\nexport const Breadcrumb: FC<BreadcrumbProps> = (props) => {\n const { children, className, color = \"primary\", size = \"m\", ...rest } = props;\n\n const rootClassName = clsx(\n styles.breadcrumb,\n styles[color],\n size === \"s\" && styles[\"size-s\"],\n className,\n );\n\n const propsContext: PropsContext = {\n Link: {\n unstyled: true,\n className: styles.link,\n wrapWith: <BreadcrumbItem />,\n },\n };\n\n return (\n <Aria.Breadcrumbs {...rest} className={rootClassName}>\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Aria.Breadcrumbs>\n );\n};\n\nexport default Breadcrumb;\n"],"names":[],"mappings":";;;;;;;;AAqBO,MAAM,UAAA,GAAkC,CAAC,KAAA,KAAU;AACxD,EAAA,MAAM,EAAE,UAAU,SAAA,EAAW,KAAA,GAAQ,WAAW,IAAA,GAAO,GAAA,EAAK,GAAG,IAAA,EAAK,GAAI,KAAA;AAExE,EAAA,MAAM,aAAA,GAAgB,IAAA;AAAA,IACpB,MAAA,CAAO,UAAA;AAAA,IACP,OAAO,KAAK,CAAA;AAAA,IACZ,IAAA,KAAS,GAAA,IAAO,MAAA,CAAO,QAAQ,CAAA;AAAA,IAC/B;AAAA,GACF;AAEA,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,IAAA,EAAM;AAAA,MACJ,QAAA,EAAU,IAAA;AAAA,MACV,WAAW,MAAA,CAAO,IAAA;AAAA,MAClB,QAAA,sBAAW,cAAA,EAAA,EAAe;AAAA;AAC5B,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,IAAA,CAAK,WAAA,EAAL,EAAkB,GAAG,IAAA,EAAM,SAAA,EAAW,aAAA,EACrC,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,UACH,CAAA,EACF,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Breadcrumb.mjs","sources":["../../../../../../../src/components/Breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from \"react\";\nimport * as Aria from \"react-aria-components\";\nimport styles from \"./Breadcrumb.module.scss\";\nimport clsx from \"clsx\";\nimport type { BreadcrumbItemProps } from \"./components/BreadcrumbItem\";\nimport { BreadcrumbItem } from \"./components/BreadcrumbItem\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport { type AlphaColor, isAlphaColor } from \"@/lib/types/props\";\n\nexport interface BreadcrumbProps\n extends\n Omit<Aria.BreadcrumbsProps<BreadcrumbItemProps>, \"children\">,\n PropsWithChildren {\n /** The color of the breadcrumb. @default \"default\" */\n color?: \"default\" | AlphaColor;\n /** The size of the element. @default \"m\" */\n size?: \"s\" | \"m\";\n}\n\n/** @flr-generate all */\nexport const Breadcrumb: FC<BreadcrumbProps> = (props) => {\n const { children, className, color = \"default\", size = \"m\", ...rest } = props;\n\n const rootClassName = clsx(\n styles.breadcrumb,\n isAlphaColor(color) && styles[color],\n size === \"s\" && styles[\"size-s\"],\n className,\n );\n\n const propsContext: PropsContext = {\n Link: {\n unstyled: true,\n className: styles.link,\n wrapWith: <BreadcrumbItem />,\n },\n };\n\n return (\n <Aria.Breadcrumbs {...rest} className={rootClassName}>\n <PropsContextProvider props={propsContext}>\n {children}\n </PropsContextProvider>\n </Aria.Breadcrumbs>\n );\n};\n\nexport default Breadcrumb;\n"],"names":[],"mappings":";;;;;;;;;AAqBO,MAAM,UAAA,GAAkC,CAAC,KAAA,KAAU;AACxD,EAAA,MAAM,EAAE,UAAU,SAAA,EAAW,KAAA,GAAQ,WAAW,IAAA,GAAO,GAAA,EAAK,GAAG,IAAA,EAAK,GAAI,KAAA;AAExE,EAAA,MAAM,aAAA,GAAgB,IAAA;AAAA,IACpB,MAAA,CAAO,UAAA;AAAA,IACP,YAAA,CAAa,KAAK,CAAA,IAAK,MAAA,CAAO,KAAK,CAAA;AAAA,IACnC,IAAA,KAAS,GAAA,IAAO,MAAA,CAAO,QAAQ,CAAA;AAAA,IAC/B;AAAA,GACF;AAEA,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,IAAA,EAAM;AAAA,MACJ,QAAA,EAAU,IAAA;AAAA,MACV,WAAW,MAAA,CAAO,IAAA;AAAA,MAClB,QAAA,sBAAW,cAAA,EAAA,EAAe;AAAA;AAC5B,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,IAAA,CAAK,WAAA,EAAL,EAAkB,GAAG,IAAA,EAAM,SAAA,EAAW,aAAA,EACrC,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC1B,UACH,CAAA,EACF,CAAA;AAEJ;;;;"}
@@ -4,7 +4,6 @@ const breadcrumb = "flow--breadcrumb";
4
4
  const link = "flow--breadcrumb--link";
5
5
  const breadcrumbItem = "flow--breadcrumb--breadcrumb-item";
6
6
  const icon = "flow--breadcrumb--icon";
7
- const primary = "flow--breadcrumb--primary";
8
7
  const dark = "flow--breadcrumb--dark";
9
8
  const light = "flow--breadcrumb--light";
10
9
  const styles = {
@@ -13,12 +12,11 @@ const styles = {
13
12
  breadcrumbItem: breadcrumbItem,
14
13
  icon: icon,
15
14
  "size-s": "flow--breadcrumb--size-s",
16
- primary: primary,
17
15
  dark: dark,
18
16
  light: light,
19
17
  "dark-static": "flow--breadcrumb--dark-static",
20
18
  "light-static": "flow--breadcrumb--light-static"
21
19
  };
22
20
 
23
- export { breadcrumb, breadcrumbItem, dark, styles as default, icon, light, link, primary };
21
+ export { breadcrumb, breadcrumbItem, dark, styles as default, icon, light, link };
24
22
  //# sourceMappingURL=Breadcrumb.module.scss.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.module.scss.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Breadcrumb.module.scss.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -3,10 +3,10 @@
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import 'react';
5
5
  import * as Recharts from 'recharts';
6
- import tokens from '../../../../../../design-tokens/dist/variables.json.mjs';
7
6
  import { AreaDot } from '../AreaDot/AreaDot.mjs';
8
7
  import { isCategoricalColor } from '../../../../lib/tokens/isCategoricalColor.mjs';
9
8
  import { isDataKeyWithLabel } from '../../types.mjs';
9
+ import { useDesignTokens } from '../../../../lib/theming/hooks/useDesignTokens.mjs';
10
10
 
11
11
  const Area = (props) => {
12
12
  const {
@@ -15,6 +15,7 @@ const Area = (props) => {
15
15
  fillOpacity = 1,
16
16
  ...rest
17
17
  } = props;
18
+ const tokens = useDesignTokens();
18
19
  const color = isCategoricalColor(colorFromProps) ? `var(--color--categorical--${colorFromProps})` : colorFromProps;
19
20
  return /* @__PURE__ */ jsx(
20
21
  Recharts.Area,
@@ -1 +1 @@
1
- {"version":3,"file":"Area.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/Area/Area.tsx"],"sourcesContent":["import { type ComponentType, type FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport tokens from \"@mittwald/flow-design-tokens/variables.json\";\nimport { AreaDot } from \"../AreaDot\";\nimport type { CategoricalWithCustomColor } from \"@/lib/tokens/CategoricalColors\";\nimport { isCategoricalColor } from \"@/lib/tokens/isCategoricalColor\";\nimport {\n type ChartDataValue,\n type DataKeyProp,\n type DataKeyWithLabel,\n isDataKeyWithLabel,\n} from \"@/components/CartesianChart/types\";\n\ntype AreaBaseProps = Pick<\n Recharts.AreaProps,\n | \"className\"\n | \"stackId\"\n | \"fillOpacity\"\n | \"key\"\n | \"xAxisId\"\n | \"yAxisId\"\n | \"type\"\n | \"unit\"\n> & {\n /** The color of the area. @default \"sea-green\" */\n color?: CategoricalWithCustomColor;\n};\n\nexport interface AreaPropsByDataKeyProp<\n TData extends ChartDataValue = ChartDataValue,\n> extends AreaBaseProps {\n dataKey: DataKeyProp<TData>;\n}\n\nexport interface AreaPropsByDataKey<\n TData extends ChartDataValue = ChartDataValue,\n>\n extends AreaBaseProps, DataKeyWithLabel<TData> {}\n\nexport type AreaProps<TData extends ChartDataValue = ChartDataValue> =\n | AreaPropsByDataKey<TData>\n | AreaPropsByDataKeyProp<TData>;\n\n/** @flr-generate all */\nexport const Area: FC<AreaProps> = (props) => {\n const {\n color: colorFromProps = \"sea-green\",\n stackId = 1,\n fillOpacity = 1,\n ...rest\n } = props;\n\n const color = isCategoricalColor(colorFromProps)\n ? `var(--color--categorical--${colorFromProps})`\n : colorFromProps;\n\n return (\n <Recharts.Area\n name={isDataKeyWithLabel(props) ? props.dataKeyLabel : props.dataKey}\n stackId={stackId}\n fillOpacity={fillOpacity}\n {...rest}\n activeDot={<AreaDot color={color} />}\n fill={color}\n stroke={tokens.area[\"border-color\"].value}\n strokeWidth={tokens.area[\"border-width\"].value}\n />\n );\n};\n\nexport const TypedArea = <TData extends ChartDataValue = ChartDataValue>() =>\n Area as ComponentType<AreaPropsByDataKeyProp<TData>>;\n\nexport default Area;\n"],"names":[],"mappings":";;;;;;;;AA4CO,MAAM,IAAA,GAAsB,CAAC,KAAA,KAAU;AAC5C,EAAA,MAAM;AAAA,IACJ,OAAO,cAAA,GAAiB,WAAA;AAAA,IACxB,OAAA,GAAU,CAAA;AAAA,IACV,WAAA,GAAc,CAAA;AAAA,IACd,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,QAAQ,kBAAA,CAAmB,cAAc,CAAA,GAC3C,CAAA,0BAAA,EAA6B,cAAc,CAAA,CAAA,CAAA,GAC3C,cAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,IAAA;AAAA,IAAT;AAAA,MACC,MAAM,kBAAA,CAAmB,KAAK,CAAA,GAAI,KAAA,CAAM,eAAe,KAAA,CAAM,OAAA;AAAA,MAC7D,OAAA;AAAA,MACA,WAAA;AAAA,MACC,GAAG,IAAA;AAAA,MACJ,SAAA,kBAAW,GAAA,CAAC,OAAA,EAAA,EAAQ,KAAA,EAAc,CAAA;AAAA,MAClC,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,MAAA,CAAO,IAAA,CAAK,cAAc,CAAA,CAAE,KAAA;AAAA,MACpC,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,cAAc,CAAA,CAAE;AAAA;AAAA,GAC3C;AAEJ;AAEO,MAAM,YAAY,MACvB;;;;"}
1
+ {"version":3,"file":"Area.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/Area/Area.tsx"],"sourcesContent":["import { type ComponentType, type FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport { AreaDot } from \"../AreaDot\";\nimport type { CategoricalWithCustomColor } from \"@/lib/tokens/CategoricalColors\";\nimport { isCategoricalColor } from \"@/lib/tokens/isCategoricalColor\";\nimport {\n type ChartDataValue,\n type DataKeyProp,\n type DataKeyWithLabel,\n isDataKeyWithLabel,\n} from \"@/components/CartesianChart/types\";\nimport { useDesignTokens } from \"../../../../lib/theming\";\n\ntype AreaBaseProps = Pick<\n Recharts.AreaProps,\n | \"className\"\n | \"stackId\"\n | \"fillOpacity\"\n | \"key\"\n | \"xAxisId\"\n | \"yAxisId\"\n | \"type\"\n | \"unit\"\n> & {\n /** The color of the area. @default \"sea-green\" */\n color?: CategoricalWithCustomColor;\n};\n\nexport interface AreaPropsByDataKeyProp<\n TData extends ChartDataValue = ChartDataValue,\n> extends AreaBaseProps {\n dataKey: DataKeyProp<TData>;\n}\n\nexport interface AreaPropsByDataKey<\n TData extends ChartDataValue = ChartDataValue,\n>\n extends AreaBaseProps, DataKeyWithLabel<TData> {}\n\nexport type AreaProps<TData extends ChartDataValue = ChartDataValue> =\n | AreaPropsByDataKey<TData>\n | AreaPropsByDataKeyProp<TData>;\n\n/** @flr-generate all */\nexport const Area: FC<AreaProps> = (props) => {\n const {\n color: colorFromProps = \"sea-green\",\n stackId = 1,\n fillOpacity = 1,\n ...rest\n } = props;\n\n const tokens = useDesignTokens();\n\n const color = isCategoricalColor(colorFromProps)\n ? `var(--color--categorical--${colorFromProps})`\n : colorFromProps;\n\n return (\n <Recharts.Area\n name={isDataKeyWithLabel(props) ? props.dataKeyLabel : props.dataKey}\n stackId={stackId}\n fillOpacity={fillOpacity}\n {...rest}\n activeDot={<AreaDot color={color} />}\n fill={color}\n stroke={tokens.area[\"border-color\"].value}\n strokeWidth={tokens.area[\"border-width\"].value}\n />\n );\n};\n\nexport const TypedArea = <TData extends ChartDataValue = ChartDataValue>() =>\n Area as ComponentType<AreaPropsByDataKeyProp<TData>>;\n\nexport default Area;\n"],"names":[],"mappings":";;;;;;;;AA4CO,MAAM,IAAA,GAAsB,CAAC,KAAA,KAAU;AAC5C,EAAA,MAAM;AAAA,IACJ,OAAO,cAAA,GAAiB,WAAA;AAAA,IACxB,OAAA,GAAU,CAAA;AAAA,IACV,WAAA,GAAc,CAAA;AAAA,IACd,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,MAAM,QAAQ,kBAAA,CAAmB,cAAc,CAAA,GAC3C,CAAA,0BAAA,EAA6B,cAAc,CAAA,CAAA,CAAA,GAC3C,cAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,IAAA;AAAA,IAAT;AAAA,MACC,MAAM,kBAAA,CAAmB,KAAK,CAAA,GAAI,KAAA,CAAM,eAAe,KAAA,CAAM,OAAA;AAAA,MAC7D,OAAA;AAAA,MACA,WAAA;AAAA,MACC,GAAG,IAAA;AAAA,MACJ,SAAA,kBAAW,GAAA,CAAC,OAAA,EAAA,EAAQ,KAAA,EAAc,CAAA;AAAA,MAClC,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,MAAA,CAAO,IAAA,CAAK,cAAc,CAAA,CAAE,KAAA;AAAA,MACpC,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,cAAc,CAAA,CAAE;AAAA;AAAA,GAC3C;AAEJ;AAEO,MAAM,YAAY,MACvB;;;;"}
@@ -2,17 +2,19 @@
2
2
  /* */
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import * as Recharts from 'recharts';
5
- import tokens from '../../../../../../design-tokens/dist/variables.json.mjs';
5
+ import 'react';
6
+ import { useDesignTokens } from '../../../../lib/theming/hooks/useDesignTokens.mjs';
6
7
 
7
8
  const ChartGrid = (props) => {
8
9
  const { vertical = false, ...rest } = props;
10
+ const designTokens = useDesignTokens();
9
11
  return /* @__PURE__ */ jsx(
10
12
  Recharts.CartesianGrid,
11
13
  {
12
14
  vertical,
13
15
  ...rest,
14
- stroke: tokens["cartesian-grid"].color.value,
15
- strokeWidth: tokens["cartesian-grid"]["stroke-width"].value
16
+ stroke: designTokens["cartesian-grid"].color.value,
17
+ strokeWidth: designTokens["cartesian-grid"]["stroke-width"].value
16
18
  }
17
19
  );
18
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ChartGrid.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/ChartGrid/ChartGrid.tsx"],"sourcesContent":["import type { ComponentType, FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport tokens from \"@mittwald/flow-design-tokens/variables.json\";\n\nexport type ChartGridProps = Pick<\n Recharts.CartesianGridProps,\n \"className\" | \"vertical\" | \"horizontal\" | \"strokeDasharray\"\n>;\n\n/** @flr-generate all */\nexport const ChartGrid: FC<ChartGridProps> = (props) => {\n const { vertical = false, ...rest } = props;\n\n return (\n <Recharts.CartesianGrid\n vertical={vertical}\n {...rest}\n stroke={tokens[\"cartesian-grid\"].color.value}\n strokeWidth={tokens[\"cartesian-grid\"][\"stroke-width\"].value}\n />\n );\n};\n\nexport const TypedChartGrid = () => ChartGrid as ComponentType<ChartGridProps>;\n\nexport default ChartGrid;\n"],"names":[],"mappings":";;;;AAUO,MAAM,SAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,QAAA,GAAW,KAAA,EAAO,GAAG,MAAK,GAAI,KAAA;AAEtC,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,aAAA;AAAA,IAAT;AAAA,MACC,QAAA;AAAA,MACC,GAAG,IAAA;AAAA,MACJ,MAAA,EAAQ,MAAA,CAAO,gBAAgB,CAAA,CAAE,KAAA,CAAM,KAAA;AAAA,MACvC,WAAA,EAAa,MAAA,CAAO,gBAAgB,CAAA,CAAE,cAAc,CAAA,CAAE;AAAA;AAAA,GACxD;AAEJ;AAEO,MAAM,iBAAiB,MAAM;;;;"}
1
+ {"version":3,"file":"ChartGrid.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/ChartGrid/ChartGrid.tsx"],"sourcesContent":["import type { ComponentType, FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport { useDesignTokens } from \"@/lib/theming\";\n\nexport type ChartGridProps = Pick<\n Recharts.CartesianGridProps,\n \"className\" | \"vertical\" | \"horizontal\" | \"strokeDasharray\"\n>;\n\n/** @flr-generate all */\nexport const ChartGrid: FC<ChartGridProps> = (props) => {\n const { vertical = false, ...rest } = props;\n\n const designTokens = useDesignTokens();\n\n return (\n <Recharts.CartesianGrid\n vertical={vertical}\n {...rest}\n stroke={designTokens[\"cartesian-grid\"].color.value}\n strokeWidth={designTokens[\"cartesian-grid\"][\"stroke-width\"].value}\n />\n );\n};\n\nexport const TypedChartGrid = () => ChartGrid as ComponentType<ChartGridProps>;\n\nexport default ChartGrid;\n"],"names":[],"mappings":";;;;;AAUO,MAAM,SAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,QAAA,GAAW,KAAA,EAAO,GAAG,MAAK,GAAI,KAAA;AAEtC,EAAA,MAAM,eAAe,eAAA,EAAgB;AAErC,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,aAAA;AAAA,IAAT;AAAA,MACC,QAAA;AAAA,MACC,GAAG,IAAA;AAAA,MACJ,MAAA,EAAQ,YAAA,CAAa,gBAAgB,CAAA,CAAE,KAAA,CAAM,KAAA;AAAA,MAC7C,WAAA,EAAa,YAAA,CAAa,gBAAgB,CAAA,CAAE,cAAc,CAAA,CAAE;AAAA;AAAA,GAC9D;AAEJ;AAEO,MAAM,iBAAiB,MAAM;;;;"}
@@ -3,12 +3,13 @@
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import 'react';
5
5
  import * as Recharts from 'recharts';
6
- import tokens from '../../../../../../design-tokens/dist/variables.json.mjs';
7
6
  import { AreaDot } from '../AreaDot/AreaDot.mjs';
8
7
  import { isCategoricalColor } from '../../../../lib/tokens/isCategoricalColor.mjs';
8
+ import { useDesignTokens } from '../../../../lib/theming/hooks/useDesignTokens.mjs';
9
9
 
10
10
  const Line = (props) => {
11
11
  const { color: colorFromProps = "sea-green", ...rest } = props;
12
+ const tokens = useDesignTokens();
12
13
  const color = isCategoricalColor(colorFromProps) ? `var(--color--categorical--${colorFromProps})` : colorFromProps;
13
14
  return /* @__PURE__ */ jsx(
14
15
  Recharts.Line,
@@ -1 +1 @@
1
- {"version":3,"file":"Line.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/Line/Line.tsx"],"sourcesContent":["import { type ComponentType, type FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport tokens from \"@mittwald/flow-design-tokens/variables.json\";\nimport { AreaDot } from \"../AreaDot\";\nimport type { CategoricalWithCustomColor } from \"@/lib/tokens/CategoricalColors\";\nimport { isCategoricalColor } from \"@/lib/tokens/isCategoricalColor\";\nimport type {\n ChartDataValue,\n DataKey,\n} from \"@/components/CartesianChart/types\";\n\nexport interface LineProps<\n TData extends ChartDataValue = ChartDataValue,\n> extends Pick<\n Recharts.LineProps,\n \"className\" | \"key\" | \"xAxisId\" | \"yAxisId\" | \"type\" | \"unit\"\n> {\n dataKey?: DataKey<TData>;\n /** The color of the line. @default \"sea-green\" */\n color?: CategoricalWithCustomColor;\n}\n\n/** @flr-generate all */\nexport const Line: FC<LineProps> = (props) => {\n const { color: colorFromProps = \"sea-green\", ...rest } = props;\n\n const color = isCategoricalColor(colorFromProps)\n ? `var(--color--categorical--${colorFromProps})`\n : colorFromProps;\n\n return (\n <Recharts.Line\n {...rest}\n fill={color}\n activeDot={<AreaDot color={color} />}\n dot={false}\n stroke={color}\n strokeWidth={tokens.line[\"border-width\"].value}\n />\n );\n};\n\nexport const TypedLine = <T extends ChartDataValue = ChartDataValue>() =>\n Line as ComponentType<LineProps<T>>;\n\nexport default Line;\n"],"names":[],"mappings":";;;;;;;AAuBO,MAAM,IAAA,GAAsB,CAAC,KAAA,KAAU;AAC5C,EAAA,MAAM,EAAE,KAAA,EAAO,cAAA,GAAiB,WAAA,EAAa,GAAG,MAAK,GAAI,KAAA;AAEzD,EAAA,MAAM,QAAQ,kBAAA,CAAmB,cAAc,CAAA,GAC3C,CAAA,0BAAA,EAA6B,cAAc,CAAA,CAAA,CAAA,GAC3C,cAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,IAAA;AAAA,IAAT;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,IAAA,EAAM,KAAA;AAAA,MACN,SAAA,kBAAW,GAAA,CAAC,OAAA,EAAA,EAAQ,KAAA,EAAc,CAAA;AAAA,MAClC,GAAA,EAAK,KAAA;AAAA,MACL,MAAA,EAAQ,KAAA;AAAA,MACR,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,cAAc,CAAA,CAAE;AAAA;AAAA,GAC3C;AAEJ;AAEO,MAAM,YAAY,MACvB;;;;"}
1
+ {"version":3,"file":"Line.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/Line/Line.tsx"],"sourcesContent":["import { type ComponentType, type FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport { AreaDot } from \"../AreaDot\";\nimport type { CategoricalWithCustomColor } from \"@/lib/tokens/CategoricalColors\";\nimport { isCategoricalColor } from \"@/lib/tokens/isCategoricalColor\";\nimport type {\n ChartDataValue,\n DataKey,\n} from \"@/components/CartesianChart/types\";\nimport { useDesignTokens } from \"../../../../lib/theming\";\n\nexport interface LineProps<\n TData extends ChartDataValue = ChartDataValue,\n> extends Pick<\n Recharts.LineProps,\n \"className\" | \"key\" | \"xAxisId\" | \"yAxisId\" | \"type\" | \"unit\"\n> {\n dataKey?: DataKey<TData>;\n /** The color of the line. @default \"sea-green\" */\n color?: CategoricalWithCustomColor;\n}\n\n/** @flr-generate all */\nexport const Line: FC<LineProps> = (props) => {\n const { color: colorFromProps = \"sea-green\", ...rest } = props;\n\n const tokens = useDesignTokens();\n\n const color = isCategoricalColor(colorFromProps)\n ? `var(--color--categorical--${colorFromProps})`\n : colorFromProps;\n\n return (\n <Recharts.Line\n {...rest}\n fill={color}\n activeDot={<AreaDot color={color} />}\n dot={false}\n stroke={color}\n strokeWidth={tokens.line[\"border-width\"].value}\n />\n );\n};\n\nexport const TypedLine = <T extends ChartDataValue = ChartDataValue>() =>\n Line as ComponentType<LineProps<T>>;\n\nexport default Line;\n"],"names":[],"mappings":";;;;;;;AAuBO,MAAM,IAAA,GAAsB,CAAC,KAAA,KAAU;AAC5C,EAAA,MAAM,EAAE,KAAA,EAAO,cAAA,GAAiB,WAAA,EAAa,GAAG,MAAK,GAAI,KAAA;AAEzD,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,MAAM,QAAQ,kBAAA,CAAmB,cAAc,CAAA,GAC3C,CAAA,0BAAA,EAA6B,cAAc,CAAA,CAAA,CAAA,GAC3C,cAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,IAAA;AAAA,IAAT;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,IAAA,EAAM,KAAA;AAAA,MACN,SAAA,kBAAW,GAAA,CAAC,OAAA,EAAA,EAAQ,KAAA,EAAc,CAAA;AAAA,MAClC,GAAA,EAAK,KAAA;AAAA,MACL,MAAA,EAAQ,KAAA;AAAA,MACR,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,cAAc,CAAA,CAAE;AAAA;AAAA,GAC3C;AAEJ;AAEO,MAAM,YAAY,MACvB;;;;"}
@@ -2,8 +2,8 @@
2
2
  /* */
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import * as Recharts from 'recharts';
5
- import tokens from '../../../../../../design-tokens/dist/variables.json.mjs';
6
5
  import 'react';
6
+ import { useDesignTokens } from '../../../../lib/theming/hooks/useDesignTokens.mjs';
7
7
  import 'clsx';
8
8
  import 'use-callback-ref';
9
9
  import '../../../../views/DivView.mjs';
@@ -22,13 +22,14 @@ import 'react-aria';
22
22
  import '../../../../views/LoadingSpinnerView.mjs';
23
23
 
24
24
  const XAxis = (props) => {
25
+ const tokens = useDesignTokens();
25
26
  return /* @__PURE__ */ jsx(
26
27
  Recharts.XAxis,
27
28
  {
28
29
  ...props,
29
30
  fontSize: tokens.axis["font-size"].value,
30
31
  tick: {
31
- fill: tokens.axis["text-color"].value
32
+ fill: tokens.axis["color"].value
32
33
  },
33
34
  tickMargin: parseInt(tokens.axis.spacing.value),
34
35
  tickSize: parseInt(tokens.axis["tick-size"].value)
@@ -1 +1 @@
1
- {"version":3,"file":"XAxis.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/XAxis/XAxis.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport tokens from \"@mittwald/flow-design-tokens/variables.json\";\nimport type {\n ChartDataValue,\n DataKey,\n DataKeyValue,\n} from \"@/components/CartesianChart/types\";\n\nexport type XAxisProps<\n TData extends ChartDataValue = ChartDataValue,\n TDataKey extends DataKey<TData> = DataKey<TData>,\n TDataKeyValue = DataKeyValue<TData, TDataKey>,\n> = Pick<\n Recharts.XAxisProps,\n | \"className\"\n | \"orientation\"\n | \"allowDecimals\"\n | \"allowDataOverflow\"\n | \"interval\"\n | \"minTickGap\"\n | \"scale\"\n | \"type\"\n | \"domain\"\n | \"hide\"\n | \"unit\"\n> & {\n dataKey?: TDataKey;\n tickFormatter?: (value: TDataKeyValue, index: number) => string;\n};\n\n/** @flr-generate all */\nexport const XAxis: FC<XAxisProps> = (props) => {\n return (\n <Recharts.XAxis\n {...props}\n fontSize={tokens.axis[\"font-size\"].value}\n tick={{\n fill: tokens.axis[\"text-color\"].value,\n }}\n tickMargin={parseInt(tokens.axis.spacing.value)}\n tickSize={parseInt(tokens.axis[\"tick-size\"].value)}\n />\n );\n};\n\nexport { TypedXAxis } from \"./types\";\n\nexport default XAxis;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAgCO,MAAM,KAAA,GAAwB,CAAC,KAAA,KAAU;AAC9C,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,KAAA;AAAA,IAAT;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,QAAA,EAAU,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,KAAA;AAAA,MACnC,IAAA,EAAM;AAAA,QACJ,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,YAAY,CAAA,CAAE;AAAA,OAClC;AAAA,MACA,UAAA,EAAY,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,QAAQ,KAAK,CAAA;AAAA,MAC9C,UAAU,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,WAAW,EAAE,KAAK;AAAA;AAAA,GACnD;AAEJ;;;;"}
1
+ {"version":3,"file":"XAxis.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/XAxis/XAxis.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport type {\n ChartDataValue,\n DataKey,\n DataKeyValue,\n} from \"@/components/CartesianChart/types\";\nimport { useDesignTokens } from \"../../../../lib/theming\";\n\nexport type XAxisProps<\n TData extends ChartDataValue = ChartDataValue,\n TDataKey extends DataKey<TData> = DataKey<TData>,\n TDataKeyValue = DataKeyValue<TData, TDataKey>,\n> = Pick<\n Recharts.XAxisProps,\n | \"className\"\n | \"orientation\"\n | \"allowDecimals\"\n | \"allowDataOverflow\"\n | \"interval\"\n | \"minTickGap\"\n | \"scale\"\n | \"type\"\n | \"domain\"\n | \"hide\"\n | \"unit\"\n> & {\n dataKey?: TDataKey;\n tickFormatter?: (value: TDataKeyValue, index: number) => string;\n};\n\n/** @flr-generate all */\nexport const XAxis: FC<XAxisProps> = (props) => {\n const tokens = useDesignTokens();\n\n return (\n <Recharts.XAxis\n {...props}\n fontSize={tokens.axis[\"font-size\"].value}\n tick={{\n fill: tokens.axis[\"color\"].value,\n }}\n tickMargin={parseInt(tokens.axis.spacing.value)}\n tickSize={parseInt(tokens.axis[\"tick-size\"].value)}\n />\n );\n};\n\nexport { TypedXAxis } from \"./types\";\n\nexport default XAxis;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAgCO,MAAM,KAAA,GAAwB,CAAC,KAAA,KAAU;AAC9C,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,KAAA;AAAA,IAAT;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,QAAA,EAAU,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,KAAA;AAAA,MACnC,IAAA,EAAM;AAAA,QACJ,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,OAAO,CAAA,CAAE;AAAA,OAC7B;AAAA,MACA,UAAA,EAAY,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,QAAQ,KAAK,CAAA;AAAA,MAC9C,UAAU,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,WAAW,EAAE,KAAK;AAAA;AAAA,GACnD;AAEJ;;;;"}
@@ -2,8 +2,8 @@
2
2
  /* */
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import * as Recharts from 'recharts';
5
- import tokens from '../../../../../../design-tokens/dist/variables.json.mjs';
6
5
  import 'react';
6
+ import { useDesignTokens } from '../../../../lib/theming/hooks/useDesignTokens.mjs';
7
7
  import 'clsx';
8
8
  import 'use-callback-ref';
9
9
  import '../../../../views/DivView.mjs';
@@ -23,6 +23,7 @@ import '../../../../views/LoadingSpinnerView.mjs';
23
23
 
24
24
  const YAxis = (props) => {
25
25
  const { domain, ...rest } = props;
26
+ const tokens = useDesignTokens();
26
27
  return /* @__PURE__ */ jsx(
27
28
  Recharts.YAxis,
28
29
  {
@@ -31,7 +32,7 @@ const YAxis = (props) => {
31
32
  domain,
32
33
  fontSize: tokens.axis["font-size"].value,
33
34
  tick: {
34
- fill: tokens.axis["text-color"].value
35
+ fill: tokens.axis["color"].value
35
36
  },
36
37
  tickMargin: parseInt(tokens.axis.spacing.value),
37
38
  tickSize: parseInt(tokens.axis["tick-size"].value)
@@ -1 +1 @@
1
- {"version":3,"file":"YAxis.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/YAxis/YAxis.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport tokens from \"@mittwald/flow-design-tokens/variables.json\";\nimport type {\n ChartDataValue,\n DataKey,\n DataKeyValue,\n} from \"@/components/CartesianChart/types\";\n\nexport type YAxisProps<\n TData extends ChartDataValue = ChartDataValue,\n TDataKey extends DataKey<TData> = DataKey<TData>,\n TDataMatch = DataKeyValue<TData, TDataKey>,\n> = Pick<\n Recharts.YAxisProps,\n | \"className\"\n | \"orientation\"\n | \"allowDecimals\"\n | \"interval\"\n | \"minTickGap\"\n | \"scale\"\n | \"type\"\n | \"domain\"\n | \"hide\"\n | \"unit\"\n> & {\n dataKey?: TDataKey;\n tickFormatter?: (value: TDataMatch, index: number) => string;\n};\n\n/** @flr-generate all */\nexport const YAxis: FC<YAxisProps> = (props) => {\n const { domain, ...rest } = props;\n\n return (\n <Recharts.YAxis\n {...rest}\n allowDataOverflow\n domain={domain}\n fontSize={tokens.axis[\"font-size\"].value}\n tick={{\n fill: tokens.axis[\"text-color\"].value,\n }}\n tickMargin={parseInt(tokens.axis.spacing.value)}\n tickSize={parseInt(tokens.axis[\"tick-size\"].value)}\n />\n );\n};\n\nexport { TypedYAxis } from \"./types\";\n\nexport default YAxis;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AA+BO,MAAM,KAAA,GAAwB,CAAC,KAAA,KAAU;AAC9C,EAAA,MAAM,EAAE,MAAA,EAAQ,GAAG,IAAA,EAAK,GAAI,KAAA;AAE5B,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,KAAA;AAAA,IAAT;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,iBAAA,EAAiB,IAAA;AAAA,MACjB,MAAA;AAAA,MACA,QAAA,EAAU,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,KAAA;AAAA,MACnC,IAAA,EAAM;AAAA,QACJ,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,YAAY,CAAA,CAAE;AAAA,OAClC;AAAA,MACA,UAAA,EAAY,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,QAAQ,KAAK,CAAA;AAAA,MAC9C,UAAU,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,WAAW,EAAE,KAAK;AAAA;AAAA,GACnD;AAEJ;;;;"}
1
+ {"version":3,"file":"YAxis.mjs","sources":["../../../../../../../../../src/components/CartesianChart/components/YAxis/YAxis.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport * as Recharts from \"recharts\";\nimport type {\n ChartDataValue,\n DataKey,\n DataKeyValue,\n} from \"@/components/CartesianChart/types\";\nimport { useDesignTokens } from \"../../../../lib/theming\";\n\nexport type YAxisProps<\n TData extends ChartDataValue = ChartDataValue,\n TDataKey extends DataKey<TData> = DataKey<TData>,\n TDataMatch = DataKeyValue<TData, TDataKey>,\n> = Pick<\n Recharts.YAxisProps,\n | \"className\"\n | \"orientation\"\n | \"allowDecimals\"\n | \"interval\"\n | \"minTickGap\"\n | \"scale\"\n | \"type\"\n | \"domain\"\n | \"hide\"\n | \"unit\"\n> & {\n dataKey?: TDataKey;\n tickFormatter?: (value: TDataMatch, index: number) => string;\n};\n\n/** @flr-generate all */\nexport const YAxis: FC<YAxisProps> = (props) => {\n const { domain, ...rest } = props;\n\n const tokens = useDesignTokens();\n\n return (\n <Recharts.YAxis\n {...rest}\n allowDataOverflow\n domain={domain}\n fontSize={tokens.axis[\"font-size\"].value}\n tick={{\n fill: tokens.axis[\"color\"].value,\n }}\n tickMargin={parseInt(tokens.axis.spacing.value)}\n tickSize={parseInt(tokens.axis[\"tick-size\"].value)}\n />\n );\n};\n\nexport { TypedYAxis } from \"./types\";\n\nexport default YAxis;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AA+BO,MAAM,KAAA,GAAwB,CAAC,KAAA,KAAU;AAC9C,EAAA,MAAM,EAAE,MAAA,EAAQ,GAAG,IAAA,EAAK,GAAI,KAAA;AAE5B,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA,CAAS,KAAA;AAAA,IAAT;AAAA,MACE,GAAG,IAAA;AAAA,MACJ,iBAAA,EAAiB,IAAA;AAAA,MACjB,MAAA;AAAA,MACA,QAAA,EAAU,MAAA,CAAO,IAAA,CAAK,WAAW,CAAA,CAAE,KAAA;AAAA,MACnC,IAAA,EAAM;AAAA,QACJ,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,OAAO,CAAA,CAAE;AAAA,OAC7B;AAAA,MACA,UAAA,EAAY,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,QAAQ,KAAK,CAAA;AAAA,MAC9C,UAAU,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,WAAW,EAAE,KAAK;AAAA;AAAA,GACnD;AAEJ;;;;"}
@@ -2,19 +2,27 @@
2
2
  /* */
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
  import styles from './Color.module.scss.mjs';
5
- import { statusTypes } from '../../lib/types/props.mjs';
5
+ import { statusTypes, alphaColors } from '../../lib/types/props.mjs';
6
+ import clsx from 'clsx';
6
7
 
7
- const flowColors = ["blue", "violet", "teal", "lilac", ...statusTypes];
8
+ const flowColors = [
9
+ "blue",
10
+ "violet",
11
+ "teal",
12
+ "lilac",
13
+ ...statusTypes,
14
+ ...alphaColors
15
+ ];
8
16
  function isFlowColor(something) {
9
17
  const anyFlowColors = flowColors;
10
18
  return typeof something === "string" && anyFlowColors.includes(something);
11
19
  }
12
20
  const Color = (props) => {
13
- const { children, color = "blue" } = props;
21
+ const { children, className, color = "blue" } = props;
14
22
  const isAFlowColor = isFlowColor(color);
15
- const className = isAFlowColor ? styles[color] : void 0;
23
+ const rootClassName = clsx(isAFlowColor && styles[color], className);
16
24
  const style = !isAFlowColor ? { color } : void 0;
17
- return /* @__PURE__ */ jsx("span", { className, style, children });
25
+ return /* @__PURE__ */ jsx("span", { className: rootClassName, style, children });
18
26
  };
19
27
 
20
28
  export { Color };
@@ -1 +1 @@
1
- {"version":3,"file":"Color.mjs","sources":["../../../../../../../src/components/Color/Color.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from \"react\";\nimport styles from \"./Color.module.scss\";\nimport { statusTypes } from \"@/lib/types/props\";\n\nconst flowColors = [\"blue\", \"violet\", \"teal\", \"lilac\", ...statusTypes] as const;\n\ntype FlowColor = (typeof flowColors)[number];\ntype FlowWithCustomColor = FlowColor | (string & {});\n\nfunction isFlowColor(something: unknown): something is FlowColor {\n const anyFlowColors = flowColors as readonly string[];\n return typeof something === \"string\" && anyFlowColors.includes(something);\n}\n\nexport interface ColorProps extends PropsWithChildren {\n /** The color of the element. @default \"blue\" */\n color?: FlowWithCustomColor;\n}\n\n/** @flr-generate all */\nexport const Color: FC<ColorProps> = (props) => {\n const { children, color = \"blue\" } = props;\n\n const isAFlowColor = isFlowColor(color);\n const className = isAFlowColor ? styles[color] : undefined;\n const style = !isAFlowColor ? { color } : undefined;\n\n return (\n <span className={className} style={style}>\n {children}\n </span>\n );\n};\n\nexport default Color;\n"],"names":[],"mappings":";;;;AAIA,MAAM,aAAa,CAAC,MAAA,EAAQ,UAAU,MAAA,EAAQ,OAAA,EAAS,GAAG,WAAW,CAAA;AAKrE,SAAS,YAAY,SAAA,EAA4C;AAC/D,EAAA,MAAM,aAAA,GAAgB,UAAA;AACtB,EAAA,OAAO,OAAO,SAAA,KAAc,QAAA,IAAY,aAAA,CAAc,SAAS,SAAS,CAAA;AAC1E;AAQO,MAAM,KAAA,GAAwB,CAAC,KAAA,KAAU;AAC9C,EAAA,MAAM,EAAE,QAAA,EAAU,KAAA,GAAQ,MAAA,EAAO,GAAI,KAAA;AAErC,EAAA,MAAM,YAAA,GAAe,YAAY,KAAK,CAAA;AACtC,EAAA,MAAM,SAAA,GAAY,YAAA,GAAe,MAAA,CAAO,KAAK,CAAA,GAAI,MAAA;AACjD,EAAA,MAAM,KAAA,GAAQ,CAAC,YAAA,GAAe,EAAE,OAAM,GAAI,MAAA;AAE1C,EAAA,uBACE,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAsB,KAAA,EACzB,QAAA,EACH,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Color.mjs","sources":["../../../../../../../src/components/Color/Color.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from \"react\";\nimport styles from \"./Color.module.scss\";\nimport {\n alphaColors,\n type PropsWithClassName,\n statusTypes,\n} from \"@/lib/types/props\";\nimport clsx from \"clsx\";\n\nconst flowColors = [\n \"blue\",\n \"violet\",\n \"teal\",\n \"lilac\",\n ...statusTypes,\n ...alphaColors,\n] as const;\n\ntype FlowColor = (typeof flowColors)[number];\ntype FlowWithCustomColor = FlowColor | (string & {});\n\nfunction isFlowColor(something: unknown): something is FlowColor {\n const anyFlowColors = flowColors as readonly string[];\n return typeof something === \"string\" && anyFlowColors.includes(something);\n}\n\nexport interface ColorProps extends PropsWithChildren, PropsWithClassName {\n /** The color of the element. @default \"blue\" */\n color?: FlowWithCustomColor;\n}\n\n/** @flr-generate all */\nexport const Color: FC<ColorProps> = (props) => {\n const { children, className, color = \"blue\" } = props;\n\n const isAFlowColor = isFlowColor(color);\n const rootClassName = clsx(isAFlowColor && styles[color], className);\n const style = !isAFlowColor ? { color } : undefined;\n\n return (\n <span className={rootClassName} style={style}>\n {children}\n </span>\n );\n};\n\nexport default Color;\n"],"names":[],"mappings":";;;;;AASA,MAAM,UAAA,GAAa;AAAA,EACjB,MAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,GAAG,WAAA;AAAA,EACH,GAAG;AACL,CAAA;AAKA,SAAS,YAAY,SAAA,EAA4C;AAC/D,EAAA,MAAM,aAAA,GAAgB,UAAA;AACtB,EAAA,OAAO,OAAO,SAAA,KAAc,QAAA,IAAY,aAAA,CAAc,SAAS,SAAS,CAAA;AAC1E;AAQO,MAAM,KAAA,GAAwB,CAAC,KAAA,KAAU;AAC9C,EAAA,MAAM,EAAE,QAAA,EAAU,SAAA,EAAW,KAAA,GAAQ,QAAO,GAAI,KAAA;AAEhD,EAAA,MAAM,YAAA,GAAe,YAAY,KAAK,CAAA;AACtC,EAAA,MAAM,gBAAgB,IAAA,CAAK,YAAA,IAAgB,MAAA,CAAO,KAAK,GAAG,SAAS,CAAA;AACnE,EAAA,MAAM,KAAA,GAAQ,CAAC,YAAA,GAAe,EAAE,OAAM,GAAI,MAAA;AAE1C,EAAA,uBACE,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,aAAA,EAAe,OAC7B,QAAA,EACH,CAAA;AAEJ;;;;"}
@@ -9,6 +9,8 @@ const warning = "flow--color--warning";
9
9
  const success = "flow--color--success";
10
10
  const info = "flow--color--info";
11
11
  const unavailable = "flow--color--unavailable";
12
+ const light = "flow--color--light";
13
+ const dark = "flow--color--dark";
12
14
  const styles = {
13
15
  blue: blue,
14
16
  violet: violet,
@@ -18,8 +20,12 @@ const styles = {
18
20
  warning: warning,
19
21
  success: success,
20
22
  info: info,
21
- unavailable: unavailable
23
+ unavailable: unavailable,
24
+ light: light,
25
+ dark: dark,
26
+ "light-static": "flow--color--light-static",
27
+ "dark-static": "flow--color--dark-static"
22
28
  };
23
29
 
24
- export { blue, danger, styles as default, info, lilac, success, teal, unavailable, violet, warning };
30
+ export { blue, danger, dark, styles as default, info, light, lilac, success, teal, unavailable, violet, warning };
25
31
  //# sourceMappingURL=Color.module.scss.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Color.module.scss.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Color.module.scss.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.mjs","sources":["../../../../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport type { Key } from \"react-aria-components\";\nimport * as Aria from \"react-aria-components\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Options } from \"@/components/Options\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport styles from \"./ComboBox.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport type { OptionsProps } from \"@/components/Options/Options\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { UiComponentTunnelExit } from \"../UiComponentTunnel/UiComponentTunnelExit\";\n\nexport interface ComboBoxProps\n extends\n Omit<Aria.ComboBoxProps<never>, \"children\">,\n Pick<Aria.InputProps, \"placeholder\">,\n Pick<OptionsProps, \"renderEmptyState\">,\n PropsWithChildren,\n FlowComponentProps<HTMLInputElement> {\n onChange?: (value: string) => void;\n}\n\n/** @flr-generate all */\nexport const ComboBox = flowComponent(\"ComboBox\", (props) => {\n const {\n children,\n className,\n menuTrigger = \"focus\",\n onChange,\n onSelectionChange,\n placeholder,\n ref,\n renderEmptyState,\n ...rest\n } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props, \"ComboBox\");\n\n const stringFormatter = useLocalizedStringFormatter(locales, \"ComboBox\");\n\n const rootClassName = clsx(fieldProps.className, styles.comboBox, className);\n\n const propsContext: PropsContext = {\n Option: {\n tunnel: {\n id: \"options\",\n component: \"ComboBox\",\n },\n },\n ...fieldPropsContext,\n };\n\n const handleSelectionChange = (key: Key | null) => {\n if (key === null) {\n return;\n }\n onChange?.(String(key));\n onSelectionChange?.(key);\n };\n\n const controller = useOverlayController(\"ComboBox\", {\n reuseControllerFromContext: false,\n });\n\n return (\n <Aria.ComboBox\n {...fieldProps}\n menuTrigger={menuTrigger}\n className={rootClassName}\n {...rest}\n onSelectionChange={handleSelectionChange}\n onOpenChange={(isOpen) => {\n controller.setOpen(isOpen);\n }}\n >\n <PropsContextProvider props={propsContext}>\n <FieldErrorCaptureContext>\n <div className={styles.input}>\n <Aria.Input placeholder={placeholder} ref={ref} />\n <Button\n className={styles.toggle}\n aria-label={stringFormatter.format(\"showOptions\")}\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n </Button>\n </div>\n\n {children}\n\n <Options\n controller={controller}\n onOpenChange={() => {\n // cut-off to avoid double controller state changes\n }}\n renderEmptyState={renderEmptyState}\n >\n <UiComponentTunnelExit id=\"options\" component=\"ComboBox\" />\n </Options>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </PropsContextProvider>\n </Aria.ComboBox>\n );\n});\n\nexport default ComboBox;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComboBox.mjs","sources":["../../../../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import { type PropsWithChildren } from \"react\";\nimport type { Key } from \"react-aria-components\";\nimport * as Aria from \"react-aria-components\";\nimport { Button } from \"@/components/Button\";\nimport { IconChevronDown } from \"@/components/Icon/components/icons\";\nimport { Options } from \"@/components/Options\";\nimport type { PropsContext } from \"@/lib/propsContext\";\nimport { PropsContextProvider } from \"@/lib/propsContext\";\nimport clsx from \"clsx\";\nimport styles from \"./ComboBox.module.scss\";\nimport locales from \"./locales/*.locale.json\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport type { OptionsProps } from \"@/components/Options/Options\";\nimport { useFieldComponent } from \"@/lib/hooks/useFieldComponent\";\nimport { UiComponentTunnelExit } from \"../UiComponentTunnel/UiComponentTunnelExit\";\n\nexport interface ComboBoxProps\n extends\n Omit<Aria.ComboBoxProps<never>, \"children\" | \"onChange\">,\n Pick<Aria.InputProps, \"placeholder\">,\n Pick<OptionsProps, \"renderEmptyState\">,\n PropsWithChildren,\n FlowComponentProps<HTMLInputElement> {\n onChange?: (value: string) => void;\n}\n\n/** @flr-generate all */\nexport const ComboBox = flowComponent(\"ComboBox\", (props) => {\n const {\n children,\n className,\n menuTrigger = \"focus\",\n onChange,\n onSelectionChange,\n placeholder,\n ref,\n renderEmptyState,\n ...rest\n } = props;\n\n const {\n FieldErrorView,\n FieldErrorCaptureContext,\n fieldProps,\n fieldPropsContext,\n } = useFieldComponent(props, \"ComboBox\");\n\n const stringFormatter = useLocalizedStringFormatter(locales, \"ComboBox\");\n\n const rootClassName = clsx(fieldProps.className, styles.comboBox, className);\n\n const propsContext: PropsContext = {\n Option: {\n tunnel: {\n id: \"options\",\n component: \"ComboBox\",\n },\n },\n ...fieldPropsContext,\n };\n\n const handleSelectionChange = (key: Key | null) => {\n if (key === null) {\n return;\n }\n onChange?.(String(key));\n onSelectionChange?.(key);\n };\n\n const controller = useOverlayController(\"ComboBox\", {\n reuseControllerFromContext: false,\n });\n\n return (\n <Aria.ComboBox\n {...fieldProps}\n menuTrigger={menuTrigger}\n className={rootClassName}\n {...rest}\n onSelectionChange={handleSelectionChange}\n onOpenChange={(isOpen) => {\n controller.setOpen(isOpen);\n }}\n >\n <PropsContextProvider props={propsContext}>\n <FieldErrorCaptureContext>\n <div className={styles.input}>\n <Aria.Input placeholder={placeholder} ref={ref} />\n <Button\n className={styles.toggle}\n aria-label={stringFormatter.format(\"showOptions\")}\n variant=\"plain\"\n color=\"secondary\"\n >\n <IconChevronDown />\n </Button>\n </div>\n\n {children}\n\n <Options\n controller={controller}\n onOpenChange={() => {\n // cut-off to avoid double controller state changes\n }}\n renderEmptyState={renderEmptyState}\n >\n <UiComponentTunnelExit id=\"options\" component=\"ComboBox\" />\n </Options>\n </FieldErrorCaptureContext>\n <FieldErrorView />\n </PropsContextProvider>\n </Aria.ComboBox>\n );\n});\n\nexport default ComboBox;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA8BO,MAAM,QAAA,GAAW,aAAA,CAAc,UAAA,EAAY,CAAC,KAAA,KAAU;AAC3D,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA,GAAc,OAAA;AAAA,IACd,QAAA;AAAA,IACA,iBAAA;AAAA,IACA,WAAA;AAAA,IACA,GAAA;AAAA,IACA,gBAAA;AAAA,IACA,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM;AAAA,IACJ,cAAA;AAAA,IACA,wBAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,GAAI,iBAAA,CAAkB,KAAA,EAAO,UAAU,CAAA;AAEvC,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,UAAU,CAAA;AAEvE,EAAA,MAAM,gBAAgB,IAAA,CAAK,UAAA,CAAW,SAAA,EAAW,MAAA,CAAO,UAAU,SAAS,CAAA;AAE3E,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ;AAAA,QACN,EAAA,EAAI,SAAA;AAAA,QACJ,SAAA,EAAW;AAAA;AACb,KACF;AAAA,IACA,GAAG;AAAA,GACL;AAEA,EAAA,MAAM,qBAAA,GAAwB,CAAC,GAAA,KAAoB;AACjD,IAAA,IAAI,QAAQ,IAAA,EAAM;AAChB,MAAA;AAAA,IACF;AACA,IAAA,QAAA,GAAW,MAAA,CAAO,GAAG,CAAC,CAAA;AACtB,IAAA,iBAAA,GAAoB,GAAG,CAAA;AAAA,EACzB,CAAA;AAEA,EAAA,MAAM,UAAA,GAAa,qBAAqB,UAAA,EAAY;AAAA,IAClD,0BAAA,EAA4B;AAAA,GAC7B,CAAA;AAED,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA,CAAK,QAAA;AAAA,IAAL;AAAA,MACE,GAAG,UAAA;AAAA,MACJ,WAAA;AAAA,MACA,SAAA,EAAW,aAAA;AAAA,MACV,GAAG,IAAA;AAAA,MACJ,iBAAA,EAAmB,qBAAA;AAAA,MACnB,YAAA,EAAc,CAAC,MAAA,KAAW;AACxB,QAAA,UAAA,CAAW,QAAQ,MAAM,CAAA;AAAA,MAC3B,CAAA;AAAA,MAEA,QAAA,kBAAA,IAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,wBAAA,EAAA,EACC,QAAA,EAAA;AAAA,0BAAA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,KAAA,EACrB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,IAAA,CAAK,KAAA,EAAL,EAAW,WAAA,EAA0B,GAAA,EAAU,CAAA;AAAA,4BAChD,GAAA;AAAA,cAAC,MAAA;AAAA,cAAA;AAAA,gBACC,WAAW,MAAA,CAAO,MAAA;AAAA,gBAClB,YAAA,EAAY,eAAA,CAAgB,MAAA,CAAO,aAAa,CAAA;AAAA,gBAChD,OAAA,EAAQ,OAAA;AAAA,gBACR,KAAA,EAAM,WAAA;AAAA,gBAEN,8BAAC,eAAA,EAAA,EAAgB;AAAA;AAAA;AACnB,WAAA,EACF,CAAA;AAAA,UAEC,QAAA;AAAA,0BAED,GAAA;AAAA,YAAC,OAAA;AAAA,YAAA;AAAA,cACC,UAAA;AAAA,cACA,cAAc,MAAM;AAAA,cAEpB,CAAA;AAAA,cACA,gBAAA;AAAA,cAEA,QAAA,kBAAA,GAAA,CAAC,qBAAA,EAAA,EAAsB,EAAA,EAAG,SAAA,EAAU,WAAU,UAAA,EAAW;AAAA;AAAA;AAC3D,SAAA,EACF,CAAA;AAAA,4BACC,cAAA,EAAA,EAAe;AAAA,OAAA,EAClB;AAAA;AAAA,GACF;AAEJ,CAAC;;;;"}
@@ -5,11 +5,12 @@ import styles from '../DonutChart.module.scss.mjs';
5
5
  import { DonutChartFill } from './DonutChartFill.mjs';
6
6
 
7
7
  const Donut = (props) => {
8
- const { value = 0, segments, size, maxValue } = props;
8
+ const { value = 0, segments, size, maxValue: maxValueFromProps } = props;
9
9
  const strokeWidth = 0.5;
10
10
  const fillWidth = size === "m" ? 8 : 12;
11
11
  const center = fillWidth * 4;
12
12
  const radius = center - fillWidth / 2;
13
+ const maxValue = maxValueFromProps ?? 100;
13
14
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
14
15
  "svg",
15
16
  {
@@ -54,9 +55,9 @@ const Donut = (props) => {
54
55
  {
55
56
  radius,
56
57
  center,
57
- value,
58
+ value: value < maxValue ? value : maxValue,
58
59
  segments,
59
- maxValue: maxValue ?? 100
60
+ maxValue
60
61
  }
61
62
  )
62
63
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"Donut.mjs","sources":["../../../../../../../../src/components/DonutChart/components/Donut.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport styles from \"@/components/DonutChart/DonutChart.module.scss\";\nimport { DonutChartFill } from \"@/components/DonutChart/components/DonutChartFill\";\nimport type { DonutChartProps } from \"@/components/DonutChart\";\n\ninterface Props extends Pick<\n DonutChartProps,\n \"segments\" | \"size\" | \"maxValue\"\n> {\n value?: number;\n}\n\nexport const Donut: FC<Props> = (props) => {\n const { value = 0, segments, size, maxValue } = props;\n\n const strokeWidth = 0.5;\n const fillWidth = size === \"m\" ? 8 : 12;\n const center = fillWidth * 4;\n const radius = center - fillWidth / 2;\n\n return (\n <>\n <svg\n width={center * 4}\n height={center * 4}\n viewBox={`0 0 ${center * 2} ${center * 2}`}\n fill=\"none\"\n strokeWidth={fillWidth}\n >\n <circle\n className={styles.background}\n cx={center}\n cy={center}\n r={radius}\n strokeWidth={fillWidth}\n />\n <circle\n className={styles.border}\n cx={center}\n cy={center}\n r={center - strokeWidth / 2}\n strokeWidth={strokeWidth}\n />\n <circle\n className={styles.border}\n cx={center}\n cy={center}\n r={center - fillWidth + strokeWidth / 2}\n strokeWidth={strokeWidth}\n />\n\n <DonutChartFill\n radius={radius}\n center={center}\n value={value}\n segments={segments}\n maxValue={maxValue ?? 100}\n />\n </svg>\n </>\n );\n};\n"],"names":[],"mappings":";;;;AAYO,MAAM,KAAA,GAAmB,CAAC,KAAA,KAAU;AACzC,EAAA,MAAM,EAAE,KAAA,GAAQ,CAAA,EAAG,QAAA,EAAU,IAAA,EAAM,UAAS,GAAI,KAAA;AAEhD,EAAA,MAAM,WAAA,GAAc,GAAA;AACpB,EAAA,MAAM,SAAA,GAAY,IAAA,KAAS,GAAA,GAAM,CAAA,GAAI,EAAA;AACrC,EAAA,MAAM,SAAS,SAAA,GAAY,CAAA;AAC3B,EAAA,MAAM,MAAA,GAAS,SAAS,SAAA,GAAY,CAAA;AAEpC,EAAA,uBACE,GAAA,CAAA,QAAA,EAAA,EACE,QAAA,kBAAA,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,OAAO,MAAA,GAAS,CAAA;AAAA,MAChB,QAAQ,MAAA,GAAS,CAAA;AAAA,MACjB,SAAS,CAAA,IAAA,EAAO,MAAA,GAAS,CAAC,CAAA,CAAA,EAAI,SAAS,CAAC,CAAA,CAAA;AAAA,MACxC,IAAA,EAAK,MAAA;AAAA,MACL,WAAA,EAAa,SAAA;AAAA,MAEb,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,WAAW,MAAA,CAAO,UAAA;AAAA,YAClB,EAAA,EAAI,MAAA;AAAA,YACJ,EAAA,EAAI,MAAA;AAAA,YACJ,CAAA,EAAG,MAAA;AAAA,YACH,WAAA,EAAa;AAAA;AAAA,SACf;AAAA,wBACA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,WAAW,MAAA,CAAO,MAAA;AAAA,YAClB,EAAA,EAAI,MAAA;AAAA,YACJ,EAAA,EAAI,MAAA;AAAA,YACJ,CAAA,EAAG,SAAS,WAAA,GAAc,CAAA;AAAA,YAC1B;AAAA;AAAA,SACF;AAAA,wBACA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,WAAW,MAAA,CAAO,MAAA;AAAA,YAClB,EAAA,EAAI,MAAA;AAAA,YACJ,EAAA,EAAI,MAAA;AAAA,YACJ,CAAA,EAAG,MAAA,GAAS,SAAA,GAAY,WAAA,GAAc,CAAA;AAAA,YACtC;AAAA;AAAA,SACF;AAAA,wBAEA,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,MAAA;AAAA,YACA,MAAA;AAAA,YACA,KAAA;AAAA,YACA,QAAA;AAAA,YACA,UAAU,QAAA,IAAY;AAAA;AAAA;AACxB;AAAA;AAAA,GACF,EACF,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"Donut.mjs","sources":["../../../../../../../../src/components/DonutChart/components/Donut.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport styles from \"@/components/DonutChart/DonutChart.module.scss\";\nimport { DonutChartFill } from \"@/components/DonutChart/components/DonutChartFill\";\nimport type { DonutChartProps } from \"@/components/DonutChart\";\n\ninterface Props extends Pick<\n DonutChartProps,\n \"segments\" | \"size\" | \"maxValue\"\n> {\n value?: number;\n}\n\nexport const Donut: FC<Props> = (props) => {\n const { value = 0, segments, size, maxValue: maxValueFromProps } = props;\n\n const strokeWidth = 0.5;\n const fillWidth = size === \"m\" ? 8 : 12;\n const center = fillWidth * 4;\n const radius = center - fillWidth / 2;\n const maxValue = maxValueFromProps ?? 100;\n\n return (\n <>\n <svg\n width={center * 4}\n height={center * 4}\n viewBox={`0 0 ${center * 2} ${center * 2}`}\n fill=\"none\"\n strokeWidth={fillWidth}\n >\n <circle\n className={styles.background}\n cx={center}\n cy={center}\n r={radius}\n strokeWidth={fillWidth}\n />\n <circle\n className={styles.border}\n cx={center}\n cy={center}\n r={center - strokeWidth / 2}\n strokeWidth={strokeWidth}\n />\n <circle\n className={styles.border}\n cx={center}\n cy={center}\n r={center - fillWidth + strokeWidth / 2}\n strokeWidth={strokeWidth}\n />\n\n <DonutChartFill\n radius={radius}\n center={center}\n value={value < maxValue ? value : maxValue}\n segments={segments}\n maxValue={maxValue}\n />\n </svg>\n </>\n );\n};\n"],"names":[],"mappings":";;;;AAYO,MAAM,KAAA,GAAmB,CAAC,KAAA,KAAU;AACzC,EAAA,MAAM,EAAE,KAAA,GAAQ,CAAA,EAAG,UAAU,IAAA,EAAM,QAAA,EAAU,mBAAkB,GAAI,KAAA;AAEnE,EAAA,MAAM,WAAA,GAAc,GAAA;AACpB,EAAA,MAAM,SAAA,GAAY,IAAA,KAAS,GAAA,GAAM,CAAA,GAAI,EAAA;AACrC,EAAA,MAAM,SAAS,SAAA,GAAY,CAAA;AAC3B,EAAA,MAAM,MAAA,GAAS,SAAS,SAAA,GAAY,CAAA;AACpC,EAAA,MAAM,WAAW,iBAAA,IAAqB,GAAA;AAEtC,EAAA,uBACE,GAAA,CAAA,QAAA,EAAA,EACE,QAAA,kBAAA,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,OAAO,MAAA,GAAS,CAAA;AAAA,MAChB,QAAQ,MAAA,GAAS,CAAA;AAAA,MACjB,SAAS,CAAA,IAAA,EAAO,MAAA,GAAS,CAAC,CAAA,CAAA,EAAI,SAAS,CAAC,CAAA,CAAA;AAAA,MACxC,IAAA,EAAK,MAAA;AAAA,MACL,WAAA,EAAa,SAAA;AAAA,MAEb,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,WAAW,MAAA,CAAO,UAAA;AAAA,YAClB,EAAA,EAAI,MAAA;AAAA,YACJ,EAAA,EAAI,MAAA;AAAA,YACJ,CAAA,EAAG,MAAA;AAAA,YACH,WAAA,EAAa;AAAA;AAAA,SACf;AAAA,wBACA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,WAAW,MAAA,CAAO,MAAA;AAAA,YAClB,EAAA,EAAI,MAAA;AAAA,YACJ,EAAA,EAAI,MAAA;AAAA,YACJ,CAAA,EAAG,SAAS,WAAA,GAAc,CAAA;AAAA,YAC1B;AAAA;AAAA,SACF;AAAA,wBACA,GAAA;AAAA,UAAC,QAAA;AAAA,UAAA;AAAA,YACC,WAAW,MAAA,CAAO,MAAA;AAAA,YAClB,EAAA,EAAI,MAAA;AAAA,YACJ,EAAA,EAAI,MAAA;AAAA,YACJ,CAAA,EAAG,MAAA,GAAS,SAAA,GAAY,WAAA,GAAc,CAAA;AAAA,YACtC;AAAA;AAAA,SACF;AAAA,wBAEA,GAAA;AAAA,UAAC,cAAA;AAAA,UAAA;AAAA,YACC,MAAA;AAAA,YACA,MAAA;AAAA,YACA,KAAA,EAAO,KAAA,GAAQ,QAAA,GAAW,KAAA,GAAQ,QAAA;AAAA,YAClC,QAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA;AAAA,GACF,EACF,CAAA;AAEJ;;;;"}