@simplybusiness/mobius 3.12.1 → 4.0.0-beta.3

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 (637) hide show
  1. package/dist/cjs/components/Accordion/Accordion.d.ts +14 -11
  2. package/dist/cjs/components/Accordion/Accordion.js +53 -22
  3. package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
  4. package/dist/cjs/components/Accordion/Accordion.test.js +100 -42
  5. package/dist/cjs/components/Accordion/Accordion.test.js.map +1 -1
  6. package/dist/cjs/components/Alert/Alert.d.ts +1 -1
  7. package/dist/cjs/components/Alert/Alert.js +5 -5
  8. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  9. package/dist/cjs/components/Box/Box.d.ts +1 -1
  10. package/dist/cjs/components/Box/Box.js +2 -2
  11. package/dist/cjs/components/Box/Box.js.map +1 -1
  12. package/dist/cjs/components/Breadcrumbs/BreadcrumbItem.d.ts +6 -4
  13. package/dist/cjs/components/Breadcrumbs/BreadcrumbItem.js +17 -6
  14. package/dist/cjs/components/Breadcrumbs/BreadcrumbItem.js.map +1 -1
  15. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.d.ts +2 -2
  16. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +4 -4
  17. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  18. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.test.js +24 -23
  19. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.test.js.map +1 -1
  20. package/dist/cjs/components/Button/Button.d.ts +8 -3
  21. package/dist/cjs/components/Button/Button.js +10 -16
  22. package/dist/cjs/components/Button/Button.js.map +1 -1
  23. package/dist/cjs/components/Button/Button.stories.d.ts +2 -12
  24. package/dist/cjs/components/Button/Button.stories.js +30 -25
  25. package/dist/cjs/components/Button/Button.stories.js.map +1 -1
  26. package/dist/cjs/components/Button/Button.test.js +28 -27
  27. package/dist/cjs/components/Button/Button.test.js.map +1 -1
  28. package/dist/cjs/components/Button/Loading.js +1 -1
  29. package/dist/cjs/components/Button/Loading.js.map +1 -1
  30. package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -2
  31. package/dist/cjs/components/Checkbox/Checkbox.js +51 -12
  32. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  33. package/dist/cjs/components/Checkbox/Checkbox.stories.d.ts +0 -2
  34. package/dist/cjs/components/Checkbox/Checkbox.stories.js +11 -33
  35. package/dist/cjs/components/Checkbox/Checkbox.stories.js.map +1 -1
  36. package/dist/cjs/components/Checkbox/Checkbox.test.js +121 -60
  37. package/dist/cjs/components/Checkbox/Checkbox.test.js.map +1 -1
  38. package/dist/cjs/components/Checkbox/CheckboxGroup.d.ts +1 -2
  39. package/dist/cjs/components/Checkbox/CheckboxGroup.js +35 -23
  40. package/dist/cjs/components/Checkbox/CheckboxGroup.js.map +1 -1
  41. package/dist/cjs/components/Checkbox/CheckboxGroup.stories.d.ts +0 -1
  42. package/dist/cjs/components/Checkbox/CheckboxGroup.stories.js +2 -13
  43. package/dist/cjs/components/Checkbox/CheckboxGroup.stories.js.map +1 -1
  44. package/dist/cjs/components/Checkbox/CheckboxGroup.test.js +217 -21
  45. package/dist/cjs/components/Checkbox/CheckboxGroup.test.js.map +1 -1
  46. package/dist/cjs/components/Checkbox/types.d.ts +44 -8
  47. package/dist/cjs/components/Container/Container.d.ts +1 -1
  48. package/dist/cjs/components/Container/Container.js +2 -2
  49. package/dist/cjs/components/Container/Container.js.map +1 -1
  50. package/dist/cjs/components/Divider/Divider.d.ts +5 -4
  51. package/dist/cjs/components/Divider/Divider.js +5 -8
  52. package/dist/cjs/components/Divider/Divider.js.map +1 -1
  53. package/dist/cjs/components/Divider/Divider.stories.d.ts +1 -1
  54. package/dist/cjs/components/Divider/Divider.test.js +31 -0
  55. package/dist/cjs/components/Divider/Divider.test.js.map +1 -0
  56. package/dist/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  57. package/dist/cjs/components/DropdownMenu/DropdownMenu.js +4 -4
  58. package/dist/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  59. package/dist/cjs/components/DropdownMenu/DropdownMenu.stories.js +4 -3
  60. package/dist/cjs/components/DropdownMenu/DropdownMenu.stories.js.map +1 -1
  61. package/dist/cjs/components/DropdownMenu/Item.d.ts +1 -1
  62. package/dist/cjs/components/DropdownMenu/Item.js +2 -2
  63. package/dist/cjs/components/DropdownMenu/Item.js.map +1 -1
  64. package/dist/cjs/components/ErrorMessage/ErrorMessage.js +2 -2
  65. package/dist/cjs/components/ErrorMessage/ErrorMessage.js.map +1 -1
  66. package/dist/cjs/components/Fieldset/Fieldset.d.ts +2 -2
  67. package/dist/cjs/components/Fieldset/Fieldset.js +3 -4
  68. package/dist/cjs/components/Fieldset/Fieldset.js.map +1 -1
  69. package/dist/cjs/components/Flex/Flex.js +2 -2
  70. package/dist/cjs/components/Flex/Flex.js.map +1 -1
  71. package/dist/cjs/components/Flex/types.d.ts +3 -2
  72. package/dist/cjs/components/Grid/Grid.d.ts +1 -1
  73. package/dist/cjs/components/Grid/Grid.js +2 -2
  74. package/dist/cjs/components/Grid/Grid.js.map +1 -1
  75. package/dist/cjs/components/Grid/Grid.stories.d.ts +1 -1
  76. package/dist/cjs/components/Grid/Grid.stories.js +2 -17
  77. package/dist/cjs/components/Grid/Grid.stories.js.map +1 -1
  78. package/dist/cjs/components/Grid/Item.d.ts +1 -1
  79. package/dist/cjs/components/Grid/Item.js +2 -2
  80. package/dist/cjs/components/Grid/Item.js.map +1 -1
  81. package/dist/cjs/components/Icon/Icon.d.ts +1 -1
  82. package/dist/cjs/components/Icon/Icon.js +7 -42
  83. package/dist/cjs/components/Icon/Icon.js.map +1 -1
  84. package/dist/cjs/components/Icon/Icon.test.js +15 -40
  85. package/dist/cjs/components/Icon/Icon.test.js.map +1 -1
  86. package/dist/cjs/components/Icon/types.d.ts +0 -1
  87. package/dist/cjs/components/Image/Image.d.ts +1 -1
  88. package/dist/cjs/components/Image/Image.js +2 -2
  89. package/dist/cjs/components/Image/Image.js.map +1 -1
  90. package/dist/cjs/components/Label/Label.d.ts +1 -1
  91. package/dist/cjs/components/Label/Label.js +2 -2
  92. package/dist/cjs/components/Label/Label.js.map +1 -1
  93. package/dist/cjs/components/Link/Link.d.ts +4 -6
  94. package/dist/cjs/components/Link/Link.js +8 -20
  95. package/dist/cjs/components/Link/Link.js.map +1 -1
  96. package/dist/cjs/components/Link/Link.test.js +0 -5
  97. package/dist/cjs/components/Link/Link.test.js.map +1 -1
  98. package/dist/cjs/components/LinkButton/LinkButton.d.ts +3 -4
  99. package/dist/cjs/components/LinkButton/LinkButton.js +2 -2
  100. package/dist/cjs/components/LinkButton/LinkButton.js.map +1 -1
  101. package/dist/cjs/components/LinkButton/LinkButton.test.js +11 -11
  102. package/dist/cjs/components/LinkButton/LinkButton.test.js.map +1 -1
  103. package/dist/cjs/components/List/List.d.ts +1 -1
  104. package/dist/cjs/components/List/List.js +2 -2
  105. package/dist/cjs/components/List/List.js.map +1 -1
  106. package/dist/cjs/components/List/List.stories.js +3 -2
  107. package/dist/cjs/components/List/List.stories.js.map +1 -1
  108. package/dist/cjs/components/List/ListItem.d.ts +1 -1
  109. package/dist/cjs/components/List/ListItem.js +4 -4
  110. package/dist/cjs/components/List/ListItem.js.map +1 -1
  111. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.d.ts +2 -2
  112. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.js +5 -4
  113. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.js.map +1 -1
  114. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.stories.d.ts +5 -0
  115. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.stories.js +8 -5
  116. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.stories.js.map +1 -1
  117. package/dist/cjs/components/Modal/Content.d.ts +1 -1
  118. package/dist/cjs/components/Modal/Content.js +10 -5
  119. package/dist/cjs/components/Modal/Content.js.map +1 -1
  120. package/dist/cjs/components/Modal/Header.d.ts +1 -1
  121. package/dist/cjs/components/Modal/Header.js +3 -3
  122. package/dist/cjs/components/Modal/Header.js.map +1 -1
  123. package/dist/cjs/components/Modal/Modal.d.ts +20 -6
  124. package/dist/cjs/components/Modal/Modal.js +90 -24
  125. package/dist/cjs/components/Modal/Modal.js.map +1 -1
  126. package/dist/cjs/components/Modal/Modal.stories.d.ts +6 -6
  127. package/dist/cjs/components/Modal/Modal.stories.js +18 -28
  128. package/dist/cjs/components/Modal/Modal.stories.js.map +1 -1
  129. package/dist/cjs/components/Modal/Modal.test.js +21 -38
  130. package/dist/cjs/components/Modal/Modal.test.js.map +1 -1
  131. package/dist/cjs/components/Modal/index.d.ts +5 -5
  132. package/dist/cjs/components/Modal/index.js +2 -2
  133. package/dist/cjs/components/Modal/index.js.map +1 -1
  134. package/dist/cjs/components/Modal/jestHTMLDialogPolyfill.d.ts +1 -0
  135. package/dist/cjs/components/Modal/jestHTMLDialogPolyfill.js +20 -0
  136. package/dist/cjs/components/Modal/jestHTMLDialogPolyfill.js.map +1 -0
  137. package/dist/cjs/components/NumberField/NumberField.d.ts +27 -14
  138. package/dist/cjs/components/NumberField/NumberField.js +48 -39
  139. package/dist/cjs/components/NumberField/NumberField.js.map +1 -1
  140. package/dist/cjs/components/NumberField/NumberField.stories.d.ts +0 -1
  141. package/dist/cjs/components/NumberField/NumberField.stories.js +2 -15
  142. package/dist/cjs/components/NumberField/NumberField.stories.js.map +1 -1
  143. package/dist/cjs/components/NumberField/NumberField.test.js +72 -41
  144. package/dist/cjs/components/NumberField/NumberField.test.js.map +1 -1
  145. package/dist/cjs/components/PasswordField/PasswordField.js +3 -3
  146. package/dist/cjs/components/PasswordField/PasswordField.js.map +1 -1
  147. package/dist/cjs/components/Progress/Progress.d.ts +4 -2
  148. package/dist/cjs/components/Progress/Progress.js +14 -13
  149. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  150. package/dist/cjs/components/Progress/Progress.test.js +26 -0
  151. package/dist/cjs/components/Progress/Progress.test.js.map +1 -1
  152. package/dist/cjs/components/Radio/Radio.d.ts +42 -4
  153. package/dist/cjs/components/Radio/Radio.js +17 -29
  154. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  155. package/dist/cjs/components/Radio/Radio.stories.d.ts +0 -1
  156. package/dist/cjs/components/Radio/Radio.stories.js +9 -12
  157. package/dist/cjs/components/Radio/Radio.stories.js.map +1 -1
  158. package/dist/cjs/components/Radio/Radio.test.js +136 -71
  159. package/dist/cjs/components/Radio/Radio.test.js.map +1 -1
  160. package/dist/cjs/components/Radio/RadioButton.d.ts +2 -13
  161. package/dist/cjs/components/Radio/RadioButton.js +6 -56
  162. package/dist/cjs/components/Radio/RadioButton.js.map +1 -1
  163. package/dist/cjs/components/Radio/RadioButton.stories.d.ts +1 -3
  164. package/dist/cjs/components/Radio/RadioButton.stories.js +10 -21
  165. package/dist/cjs/components/Radio/RadioButton.stories.js.map +1 -1
  166. package/dist/cjs/components/Radio/RadioButton.test.js +10 -110
  167. package/dist/cjs/components/Radio/RadioButton.test.js.map +1 -1
  168. package/dist/cjs/components/Radio/RadioGroup.d.ts +20 -5
  169. package/dist/cjs/components/Radio/RadioGroup.js +35 -22
  170. package/dist/cjs/components/Radio/RadioGroup.js.map +1 -1
  171. package/dist/cjs/components/Radio/index.d.ts +0 -1
  172. package/dist/cjs/components/Radio/index.js +0 -1
  173. package/dist/cjs/components/Radio/index.js.map +1 -1
  174. package/dist/cjs/components/SVG/SVG.d.ts +1 -1
  175. package/dist/cjs/components/SVG/SVG.js +2 -2
  176. package/dist/cjs/components/SVG/SVG.js.map +1 -1
  177. package/dist/cjs/components/Segment/Segment.d.ts +1 -1
  178. package/dist/cjs/components/Segment/Segment.js +2 -2
  179. package/dist/cjs/components/Segment/Segment.js.map +1 -1
  180. package/dist/cjs/components/Segment/SegmentGroup.d.ts +1 -1
  181. package/dist/cjs/components/Segment/SegmentGroup.js +2 -2
  182. package/dist/cjs/components/Segment/SegmentGroup.js.map +1 -1
  183. package/dist/cjs/components/Select/Select.d.ts +6 -5
  184. package/dist/cjs/components/Select/Select.js +18 -26
  185. package/dist/cjs/components/Select/Select.js.map +1 -1
  186. package/dist/cjs/components/Select/Select.test.js +12 -3
  187. package/dist/cjs/components/Select/Select.test.js.map +1 -1
  188. package/dist/cjs/components/Slider/Slider.d.ts +11 -4
  189. package/dist/cjs/components/Slider/Slider.js +33 -18
  190. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  191. package/dist/cjs/components/Slider/Slider.stories.d.ts +3 -2
  192. package/dist/cjs/components/Slider/Slider.stories.js +17 -3
  193. package/dist/cjs/components/Slider/Slider.stories.js.map +1 -1
  194. package/dist/cjs/components/Slider/Slider.test.js +32 -10
  195. package/dist/cjs/components/Slider/Slider.test.js.map +1 -1
  196. package/dist/cjs/components/Slider/helpers.d.ts +1 -0
  197. package/dist/cjs/components/Slider/helpers.js +10 -1
  198. package/dist/cjs/components/Slider/helpers.js.map +1 -1
  199. package/dist/cjs/components/Slider/helpers.test.js +21 -0
  200. package/dist/cjs/components/Slider/helpers.test.js.map +1 -1
  201. package/dist/cjs/components/Table/Body.js +2 -2
  202. package/dist/cjs/components/Table/Body.js.map +1 -1
  203. package/dist/cjs/components/Table/Cell.js +2 -2
  204. package/dist/cjs/components/Table/Cell.js.map +1 -1
  205. package/dist/cjs/components/Table/Foot.js +2 -2
  206. package/dist/cjs/components/Table/Foot.js.map +1 -1
  207. package/dist/cjs/components/Table/Head.js +2 -2
  208. package/dist/cjs/components/Table/Head.js.map +1 -1
  209. package/dist/cjs/components/Table/HeaderCell.js +2 -2
  210. package/dist/cjs/components/Table/HeaderCell.js.map +1 -1
  211. package/dist/cjs/components/Table/Row.js +2 -2
  212. package/dist/cjs/components/Table/Row.js.map +1 -1
  213. package/dist/cjs/components/Table/Table.d.ts +1 -1
  214. package/dist/cjs/components/Table/Table.js +2 -2
  215. package/dist/cjs/components/Table/Table.js.map +1 -1
  216. package/dist/cjs/components/Text/Text.d.ts +1 -1
  217. package/dist/cjs/components/Text/Text.js +2 -2
  218. package/dist/cjs/components/Text/Text.js.map +1 -1
  219. package/dist/cjs/components/TextArea/TextArea.d.ts +3 -4
  220. package/dist/cjs/components/TextArea/TextArea.js +8 -19
  221. package/dist/cjs/components/TextArea/TextArea.js.map +1 -1
  222. package/dist/cjs/components/TextArea/TextArea.test.js +9 -11
  223. package/dist/cjs/components/TextArea/TextArea.test.js.map +1 -1
  224. package/dist/cjs/components/TextAreaInput/TextAreaInput.d.ts +1 -3
  225. package/dist/cjs/components/TextAreaInput/TextAreaInput.js +3 -5
  226. package/dist/cjs/components/TextAreaInput/TextAreaInput.js.map +1 -1
  227. package/dist/cjs/components/TextAreaInput/TextAreaInput.test.js +0 -9
  228. package/dist/cjs/components/TextAreaInput/TextAreaInput.test.js.map +1 -1
  229. package/dist/cjs/components/TextField/TextField.d.ts +4 -4
  230. package/dist/cjs/components/TextField/TextField.js +20 -22
  231. package/dist/cjs/components/TextField/TextField.js.map +1 -1
  232. package/dist/cjs/components/TextField/TextField.test.js +1 -22
  233. package/dist/cjs/components/TextField/TextField.test.js.map +1 -1
  234. package/dist/cjs/components/Title/Title.d.ts +1 -1
  235. package/dist/cjs/components/Title/Title.js +5 -5
  236. package/dist/cjs/components/Title/Title.js.map +1 -1
  237. package/dist/cjs/components/index.d.ts +0 -1
  238. package/dist/cjs/components/index.js +0 -1
  239. package/dist/cjs/components/index.js.map +1 -1
  240. package/dist/cjs/hooks/index.d.ts +2 -0
  241. package/dist/cjs/hooks/index.js +2 -0
  242. package/dist/cjs/hooks/index.js.map +1 -1
  243. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.d.ts +8 -4
  244. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.js +31 -23
  245. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.js.map +1 -1
  246. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.stories.d.ts +1 -1
  247. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.stories.js +1 -17
  248. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.stories.js.map +1 -1
  249. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.test.js +3 -63
  250. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.test.js.map +1 -1
  251. package/dist/cjs/hooks/useLabel/index.d.ts +1 -0
  252. package/dist/cjs/{components/MaskedField → hooks/useLabel}/index.js +1 -1
  253. package/dist/cjs/hooks/useLabel/index.js.map +1 -0
  254. package/dist/cjs/hooks/useLabel/useLabel.d.ts +27 -0
  255. package/dist/cjs/hooks/useLabel/useLabel.js +38 -0
  256. package/dist/cjs/hooks/useLabel/useLabel.js.map +1 -0
  257. package/dist/cjs/hooks/useLabel/useLabel.test.js +49 -0
  258. package/dist/cjs/hooks/useLabel/useLabel.test.js.map +1 -0
  259. package/dist/cjs/hooks/useTextField/index.d.ts +2 -0
  260. package/dist/cjs/{contexts → hooks/useTextField}/index.js +2 -1
  261. package/dist/cjs/hooks/useTextField/index.js.map +1 -0
  262. package/dist/cjs/hooks/useTextField/types.d.ts +25 -0
  263. package/dist/cjs/hooks/useTextField/types.js +3 -0
  264. package/dist/cjs/hooks/useTextField/types.js.map +1 -0
  265. package/dist/cjs/hooks/useTextField/useTextField.d.ts +2 -0
  266. package/dist/cjs/hooks/useTextField/useTextField.js +39 -0
  267. package/dist/cjs/hooks/useTextField/useTextField.js.map +1 -0
  268. package/dist/cjs/hooks/useTextField/useTextField.test.d.ts +1 -0
  269. package/dist/cjs/hooks/useTextField/useTextField.test.js +165 -0
  270. package/dist/cjs/hooks/useTextField/useTextField.test.js.map +1 -0
  271. package/dist/cjs/index.d.ts +0 -2
  272. package/dist/cjs/index.js +0 -4
  273. package/dist/cjs/index.js.map +1 -1
  274. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  275. package/dist/cjs/types/dom.d.ts +3 -0
  276. package/dist/cjs/types/dom.js +3 -0
  277. package/dist/cjs/types/dom.js.map +1 -0
  278. package/dist/cjs/types/events.d.ts +13 -5
  279. package/dist/cjs/types/index.d.ts +2 -0
  280. package/dist/cjs/types/index.js +2 -0
  281. package/dist/cjs/types/index.js.map +1 -1
  282. package/dist/cjs/utils/polyfill-tests.d.ts +1 -0
  283. package/dist/cjs/utils/polyfill-tests.js +7 -0
  284. package/dist/cjs/utils/polyfill-tests.js.map +1 -0
  285. package/dist/esm/components/Accordion/Accordion.js +53 -22
  286. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  287. package/dist/esm/components/Alert/Alert.js +5 -5
  288. package/dist/esm/components/Alert/Alert.js.map +1 -1
  289. package/dist/esm/components/Box/Box.js +2 -2
  290. package/dist/esm/components/Box/Box.js.map +1 -1
  291. package/dist/esm/components/Breadcrumbs/BreadcrumbItem.js +18 -7
  292. package/dist/esm/components/Breadcrumbs/BreadcrumbItem.js.map +1 -1
  293. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +4 -4
  294. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
  295. package/dist/esm/components/Button/Button.js +11 -17
  296. package/dist/esm/components/Button/Button.js.map +1 -1
  297. package/dist/esm/components/Button/Loading.js +2 -2
  298. package/dist/esm/components/Button/Loading.js.map +1 -1
  299. package/dist/esm/components/Checkbox/Checkbox.js +50 -14
  300. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  301. package/dist/esm/components/Checkbox/CheckboxGroup.js +36 -24
  302. package/dist/esm/components/Checkbox/CheckboxGroup.js.map +1 -1
  303. package/dist/esm/components/Container/Container.js +2 -2
  304. package/dist/esm/components/Container/Container.js.map +1 -1
  305. package/dist/esm/components/Divider/Divider.js +5 -8
  306. package/dist/esm/components/Divider/Divider.js.map +1 -1
  307. package/dist/esm/components/DropdownMenu/DropdownMenu.js +4 -4
  308. package/dist/esm/components/DropdownMenu/DropdownMenu.js.map +1 -1
  309. package/dist/esm/components/DropdownMenu/Item.js +2 -2
  310. package/dist/esm/components/DropdownMenu/Item.js.map +1 -1
  311. package/dist/esm/components/ErrorMessage/ErrorMessage.js +2 -2
  312. package/dist/esm/components/ErrorMessage/ErrorMessage.js.map +1 -1
  313. package/dist/esm/components/Fieldset/Fieldset.js +3 -4
  314. package/dist/esm/components/Fieldset/Fieldset.js.map +1 -1
  315. package/dist/esm/components/Flex/Flex.js +2 -2
  316. package/dist/esm/components/Flex/Flex.js.map +1 -1
  317. package/dist/esm/components/Grid/Grid.js +2 -2
  318. package/dist/esm/components/Grid/Grid.js.map +1 -1
  319. package/dist/esm/components/Grid/Item.js +2 -2
  320. package/dist/esm/components/Grid/Item.js.map +1 -1
  321. package/dist/esm/components/Icon/Icon.js +7 -19
  322. package/dist/esm/components/Icon/Icon.js.map +1 -1
  323. package/dist/esm/components/Image/Image.js +2 -2
  324. package/dist/esm/components/Image/Image.js.map +1 -1
  325. package/dist/esm/components/Label/Label.js +2 -2
  326. package/dist/esm/components/Label/Label.js.map +1 -1
  327. package/dist/esm/components/Link/Link.js +9 -21
  328. package/dist/esm/components/Link/Link.js.map +1 -1
  329. package/dist/esm/components/LinkButton/LinkButton.js +2 -2
  330. package/dist/esm/components/LinkButton/LinkButton.js.map +1 -1
  331. package/dist/esm/components/List/List.js +2 -2
  332. package/dist/esm/components/List/List.js.map +1 -1
  333. package/dist/esm/components/List/ListItem.js +4 -4
  334. package/dist/esm/components/List/ListItem.js.map +1 -1
  335. package/dist/esm/components/LoadingIndicator/LoadingIndicator.js +5 -4
  336. package/dist/esm/components/LoadingIndicator/LoadingIndicator.js.map +1 -1
  337. package/dist/esm/components/Modal/Content.js +11 -6
  338. package/dist/esm/components/Modal/Content.js.map +1 -1
  339. package/dist/esm/components/Modal/Header.js +3 -3
  340. package/dist/esm/components/Modal/Header.js.map +1 -1
  341. package/dist/esm/components/Modal/Modal.js +68 -25
  342. package/dist/esm/components/Modal/Modal.js.map +1 -1
  343. package/dist/esm/components/Modal/index.js +2 -2
  344. package/dist/esm/components/Modal/index.js.map +1 -1
  345. package/dist/esm/components/Modal/jestHTMLDialogPolyfill.js +16 -0
  346. package/dist/esm/components/Modal/jestHTMLDialogPolyfill.js.map +1 -0
  347. package/dist/esm/components/NumberField/NumberField.js +49 -40
  348. package/dist/esm/components/NumberField/NumberField.js.map +1 -1
  349. package/dist/esm/components/PasswordField/PasswordField.js +3 -3
  350. package/dist/esm/components/PasswordField/PasswordField.js.map +1 -1
  351. package/dist/esm/components/Progress/Progress.js +14 -13
  352. package/dist/esm/components/Progress/Progress.js.map +1 -1
  353. package/dist/esm/components/Radio/Radio.js +18 -30
  354. package/dist/esm/components/Radio/Radio.js.map +1 -1
  355. package/dist/esm/components/Radio/RadioButton.js +8 -58
  356. package/dist/esm/components/Radio/RadioButton.js.map +1 -1
  357. package/dist/esm/components/Radio/RadioGroup.js +36 -23
  358. package/dist/esm/components/Radio/RadioGroup.js.map +1 -1
  359. package/dist/esm/components/Radio/index.js +0 -1
  360. package/dist/esm/components/Radio/index.js.map +1 -1
  361. package/dist/esm/components/SVG/SVG.js +2 -2
  362. package/dist/esm/components/SVG/SVG.js.map +1 -1
  363. package/dist/esm/components/Segment/Segment.js +2 -2
  364. package/dist/esm/components/Segment/Segment.js.map +1 -1
  365. package/dist/esm/components/Segment/SegmentGroup.js +2 -2
  366. package/dist/esm/components/Segment/SegmentGroup.js.map +1 -1
  367. package/dist/esm/components/Select/Select.js +18 -26
  368. package/dist/esm/components/Select/Select.js.map +1 -1
  369. package/dist/esm/components/Slider/Slider.js +35 -20
  370. package/dist/esm/components/Slider/Slider.js.map +1 -1
  371. package/dist/esm/components/Slider/helpers.js +8 -0
  372. package/dist/esm/components/Slider/helpers.js.map +1 -1
  373. package/dist/esm/components/Slider/helpers.test.js +22 -1
  374. package/dist/esm/components/Slider/helpers.test.js.map +1 -1
  375. package/dist/esm/components/Table/Body.js +2 -2
  376. package/dist/esm/components/Table/Body.js.map +1 -1
  377. package/dist/esm/components/Table/Cell.js +2 -2
  378. package/dist/esm/components/Table/Cell.js.map +1 -1
  379. package/dist/esm/components/Table/Foot.js +2 -2
  380. package/dist/esm/components/Table/Foot.js.map +1 -1
  381. package/dist/esm/components/Table/Head.js +2 -2
  382. package/dist/esm/components/Table/Head.js.map +1 -1
  383. package/dist/esm/components/Table/HeaderCell.js +2 -2
  384. package/dist/esm/components/Table/HeaderCell.js.map +1 -1
  385. package/dist/esm/components/Table/Row.js +2 -2
  386. package/dist/esm/components/Table/Row.js.map +1 -1
  387. package/dist/esm/components/Table/Table.js +2 -2
  388. package/dist/esm/components/Table/Table.js.map +1 -1
  389. package/dist/esm/components/Text/Text.js +2 -2
  390. package/dist/esm/components/Text/Text.js.map +1 -1
  391. package/dist/esm/components/TextArea/TextArea.js +8 -19
  392. package/dist/esm/components/TextArea/TextArea.js.map +1 -1
  393. package/dist/esm/components/TextAreaInput/TextAreaInput.js +3 -5
  394. package/dist/esm/components/TextAreaInput/TextAreaInput.js.map +1 -1
  395. package/dist/esm/components/TextField/TextField.js +20 -22
  396. package/dist/esm/components/TextField/TextField.js.map +1 -1
  397. package/dist/esm/components/Title/Title.js +5 -5
  398. package/dist/esm/components/Title/Title.js.map +1 -1
  399. package/dist/esm/components/index.js +0 -1
  400. package/dist/esm/components/index.js.map +1 -1
  401. package/dist/esm/hooks/index.js +2 -0
  402. package/dist/esm/hooks/index.js.map +1 -1
  403. package/dist/esm/hooks/useBreakpoint/useBreakpoint.js +31 -23
  404. package/dist/esm/hooks/useBreakpoint/useBreakpoint.js.map +1 -1
  405. package/dist/esm/hooks/useLabel/index.js +2 -0
  406. package/dist/esm/hooks/useLabel/index.js.map +1 -0
  407. package/dist/esm/hooks/useLabel/useLabel.js +34 -0
  408. package/dist/esm/hooks/useLabel/useLabel.js.map +1 -0
  409. package/dist/esm/hooks/useTextField/index.js +3 -0
  410. package/dist/esm/hooks/useTextField/index.js.map +1 -0
  411. package/dist/esm/hooks/useTextField/types.js +2 -0
  412. package/dist/esm/hooks/useTextField/types.js.map +1 -0
  413. package/dist/esm/hooks/useTextField/useTextField.js +35 -0
  414. package/dist/esm/hooks/useTextField/useTextField.js.map +1 -0
  415. package/dist/esm/index.js +0 -2
  416. package/dist/esm/index.js.map +1 -1
  417. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  418. package/dist/esm/types/dom.js +2 -0
  419. package/dist/esm/types/dom.js.map +1 -0
  420. package/dist/esm/types/index.js +2 -0
  421. package/dist/esm/types/index.js.map +1 -1
  422. package/dist/esm/utils/polyfill-tests.js +3 -0
  423. package/dist/esm/utils/polyfill-tests.js.map +1 -0
  424. package/dist/mobius.d.ts +324 -132
  425. package/package.json +30 -60
  426. package/src/components/Accordion/Accordion.mdx +11 -8
  427. package/src/components/Accordion/Accordion.test.tsx +152 -73
  428. package/src/components/Accordion/Accordion.tsx +120 -74
  429. package/src/components/Alert/Alert.tsx +6 -6
  430. package/src/components/Box/Box.tsx +3 -3
  431. package/src/components/Breadcrumbs/BreadcrumbItem.tsx +31 -18
  432. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +75 -74
  433. package/src/components/Breadcrumbs/Breadcrumbs.tsx +10 -7
  434. package/src/components/Button/Button.mdx +95 -19
  435. package/src/components/Button/Button.stories.tsx +40 -24
  436. package/src/components/Button/Button.story.styles.css +5 -0
  437. package/src/components/Button/Button.test.tsx +40 -35
  438. package/src/components/Button/Button.tsx +21 -29
  439. package/src/components/Button/Loading.tsx +6 -3
  440. package/src/components/Checkbox/Checkbox.mdx +14 -26
  441. package/src/components/Checkbox/Checkbox.stories.tsx +22 -34
  442. package/src/components/Checkbox/Checkbox.test.tsx +222 -126
  443. package/src/components/Checkbox/Checkbox.tsx +107 -14
  444. package/src/components/Checkbox/CheckboxGroup.mdx +37 -27
  445. package/src/components/Checkbox/CheckboxGroup.stories.tsx +10 -19
  446. package/src/components/Checkbox/CheckboxGroup.test.tsx +398 -40
  447. package/src/components/Checkbox/CheckboxGroup.tsx +70 -44
  448. package/src/components/Checkbox/types.ts +61 -12
  449. package/src/components/Container/Container.tsx +7 -3
  450. package/src/components/Divider/Divider.test.tsx +33 -0
  451. package/src/components/Divider/Divider.tsx +17 -12
  452. package/src/components/DropdownMenu/DropdownMenu.stories.tsx +4 -3
  453. package/src/components/DropdownMenu/DropdownMenu.tsx +9 -5
  454. package/src/components/DropdownMenu/Item.tsx +3 -3
  455. package/src/components/ErrorMessage/ErrorMessage.tsx +2 -2
  456. package/src/components/Fieldset/Fieldset.mdx +2 -3
  457. package/src/components/Fieldset/Fieldset.tsx +8 -8
  458. package/src/components/Flex/Flex.tsx +2 -2
  459. package/src/components/Flex/types.ts +3 -2
  460. package/src/components/Grid/Grid.mdx +16 -80
  461. package/src/components/Grid/Grid.stories.tsx +3 -26
  462. package/src/components/Grid/Grid.tsx +3 -3
  463. package/src/components/Grid/Item.tsx +3 -3
  464. package/src/components/Icon/Icon.test.tsx +18 -54
  465. package/src/components/Icon/Icon.tsx +10 -25
  466. package/src/components/Icon/types.ts +0 -3
  467. package/src/components/Image/Image.tsx +3 -3
  468. package/src/components/Label/Label.tsx +3 -3
  469. package/src/components/Link/Link.test.tsx +0 -10
  470. package/src/components/Link/Link.tsx +16 -38
  471. package/src/components/LinkButton/LinkButton.test.tsx +2 -2
  472. package/src/components/LinkButton/LinkButton.tsx +5 -6
  473. package/src/components/List/List.mdx +3 -2
  474. package/src/components/List/List.stories.tsx +3 -2
  475. package/src/components/List/List.tsx +3 -3
  476. package/src/components/List/ListItem.tsx +5 -5
  477. package/src/components/LoadingIndicator/LoadingIndicator.mdx +0 -1
  478. package/src/components/LoadingIndicator/LoadingIndicator.stories.tsx +9 -5
  479. package/src/components/LoadingIndicator/LoadingIndicator.tsx +6 -6
  480. package/src/components/Modal/Content.tsx +6 -6
  481. package/src/components/Modal/Header.tsx +4 -4
  482. package/src/components/Modal/Modal.mdx +16 -183
  483. package/src/components/Modal/Modal.stories.tsx +99 -48
  484. package/src/components/Modal/Modal.test.tsx +27 -48
  485. package/src/components/Modal/Modal.tsx +102 -52
  486. package/src/components/Modal/index.tsx +11 -12
  487. package/src/components/Modal/jestHTMLDialogPolyfill.ts +23 -0
  488. package/src/components/NumberField/NumberField.mdx +15 -41
  489. package/src/components/NumberField/NumberField.stories.tsx +1 -15
  490. package/src/components/NumberField/NumberField.test.tsx +114 -68
  491. package/src/components/NumberField/NumberField.tsx +123 -91
  492. package/src/components/PasswordField/PasswordField.tsx +3 -3
  493. package/src/components/Progress/Progress.test.tsx +63 -0
  494. package/src/components/Progress/Progress.tsx +32 -18
  495. package/src/components/Radio/Radio.mdx +11 -28
  496. package/src/components/Radio/Radio.stories.tsx +23 -17
  497. package/src/components/Radio/Radio.test.tsx +269 -95
  498. package/src/components/Radio/Radio.tsx +78 -58
  499. package/src/components/Radio/RadioButton.mdx +63 -49
  500. package/src/components/Radio/RadioButton.stories.tsx +26 -41
  501. package/src/components/Radio/RadioButton.test.tsx +14 -212
  502. package/src/components/Radio/RadioButton.tsx +14 -125
  503. package/src/components/Radio/RadioGroup.tsx +96 -58
  504. package/src/components/Radio/index.tsx +0 -1
  505. package/src/components/SVG/SVG.tsx +3 -3
  506. package/src/components/Segment/Segment.tsx +3 -3
  507. package/src/components/Segment/SegmentGroup.tsx +3 -3
  508. package/src/components/Select/Select.mdx +0 -2
  509. package/src/components/Select/Select.test.tsx +21 -5
  510. package/src/components/Select/Select.tsx +29 -37
  511. package/src/components/Slider/Slider.mdx +41 -0
  512. package/src/components/Slider/Slider.stories.tsx +16 -2
  513. package/src/components/Slider/Slider.test.tsx +36 -11
  514. package/src/components/Slider/Slider.tsx +75 -58
  515. package/src/components/Slider/helpers.test.ts +27 -0
  516. package/src/components/Slider/helpers.ts +12 -0
  517. package/src/components/Table/Body.tsx +2 -2
  518. package/src/components/Table/Cell.tsx +6 -2
  519. package/src/components/Table/Foot.tsx +2 -2
  520. package/src/components/Table/Head.tsx +2 -2
  521. package/src/components/Table/HeaderCell.tsx +6 -2
  522. package/src/components/Table/Row.tsx +2 -2
  523. package/src/components/Table/Table.tsx +3 -3
  524. package/src/components/Text/Text.tsx +3 -3
  525. package/src/components/TextArea/TextArea.test.tsx +14 -14
  526. package/src/components/TextArea/TextArea.tsx +11 -36
  527. package/src/components/TextAreaInput/TextAreaInput.test.tsx +0 -11
  528. package/src/components/TextAreaInput/TextAreaInput.tsx +4 -9
  529. package/src/components/TextField/TextField.mdx +0 -2
  530. package/src/components/TextField/TextField.test.tsx +2 -44
  531. package/src/components/TextField/TextField.tsx +22 -36
  532. package/src/components/Title/Title.tsx +6 -6
  533. package/src/components/index.tsx +0 -1
  534. package/src/hooks/index.tsx +2 -0
  535. package/src/hooks/useBreakpoint/useBreakpoint.mdx +8 -73
  536. package/src/hooks/useBreakpoint/useBreakpoint.stories.tsx +1 -25
  537. package/src/hooks/useBreakpoint/useBreakpoint.test.tsx +5 -90
  538. package/src/hooks/useBreakpoint/useBreakpoint.tsx +49 -41
  539. package/src/hooks/useLabel/index.tsx +1 -0
  540. package/src/hooks/useLabel/useLabel.test.tsx +73 -0
  541. package/src/hooks/useLabel/useLabel.tsx +71 -0
  542. package/src/hooks/useTextField/index.tsx +2 -0
  543. package/src/hooks/useTextField/types.tsx +54 -0
  544. package/src/hooks/useTextField/useTextField.test.tsx +260 -0
  545. package/src/hooks/useTextField/useTextField.tsx +77 -0
  546. package/src/index.tsx +0 -2
  547. package/src/types/dom.ts +3 -0
  548. package/src/types/events.ts +17 -8
  549. package/src/types/index.tsx +2 -0
  550. package/src/utils/polyfill-tests.ts +2 -0
  551. package/CHANGELOG-v2.md +0 -672
  552. package/CHANGELOG.md +0 -383
  553. package/dist/cjs/components/Checkbox/CheckboxContext.d.ts +0 -9
  554. package/dist/cjs/components/Checkbox/CheckboxContext.js +0 -9
  555. package/dist/cjs/components/Checkbox/CheckboxContext.js.map +0 -1
  556. package/dist/cjs/components/Checkbox/CheckboxGroupItem.d.ts +0 -4
  557. package/dist/cjs/components/Checkbox/CheckboxGroupItem.js +0 -77
  558. package/dist/cjs/components/Checkbox/CheckboxGroupItem.js.map +0 -1
  559. package/dist/cjs/components/Checkbox/CheckboxItem.d.ts +0 -4
  560. package/dist/cjs/components/Checkbox/CheckboxItem.js +0 -73
  561. package/dist/cjs/components/Checkbox/CheckboxItem.js.map +0 -1
  562. package/dist/cjs/components/MaskedField/MaskedField.d.ts +0 -11
  563. package/dist/cjs/components/MaskedField/MaskedField.js +0 -46
  564. package/dist/cjs/components/MaskedField/MaskedField.js.map +0 -1
  565. package/dist/cjs/components/MaskedField/MaskedField.stories.d.ts +0 -16
  566. package/dist/cjs/components/MaskedField/MaskedField.stories.js +0 -25
  567. package/dist/cjs/components/MaskedField/MaskedField.stories.js.map +0 -1
  568. package/dist/cjs/components/MaskedField/MaskedField.test.js +0 -69
  569. package/dist/cjs/components/MaskedField/MaskedField.test.js.map +0 -1
  570. package/dist/cjs/components/MaskedField/index.d.ts +0 -1
  571. package/dist/cjs/components/MaskedField/index.js.map +0 -1
  572. package/dist/cjs/components/MaskedField/inputFormatters.d.ts +0 -10
  573. package/dist/cjs/components/MaskedField/inputFormatters.js +0 -39
  574. package/dist/cjs/components/MaskedField/inputFormatters.js.map +0 -1
  575. package/dist/cjs/components/NumberField/NumberFieldButton.d.ts +0 -1
  576. package/dist/cjs/components/NumberField/NumberFieldButton.js +0 -39
  577. package/dist/cjs/components/NumberField/NumberFieldButton.js.map +0 -1
  578. package/dist/cjs/components/Radio/RadioContext.d.ts +0 -9
  579. package/dist/cjs/components/Radio/RadioContext.js +0 -7
  580. package/dist/cjs/components/Radio/RadioContext.js.map +0 -1
  581. package/dist/cjs/components/Slider/Thumb.d.ts +0 -8
  582. package/dist/cjs/components/Slider/Thumb.js +0 -36
  583. package/dist/cjs/components/Slider/Thumb.js.map +0 -1
  584. package/dist/cjs/contexts/ThemeContext/ThemeContext.d.ts +0 -20
  585. package/dist/cjs/contexts/ThemeContext/ThemeContext.js +0 -50
  586. package/dist/cjs/contexts/ThemeContext/ThemeContext.js.map +0 -1
  587. package/dist/cjs/contexts/ThemeContext/ThemeContext.test.js +0 -12
  588. package/dist/cjs/contexts/ThemeContext/ThemeContext.test.js.map +0 -1
  589. package/dist/cjs/contexts/ThemeContext/index.d.ts +0 -1
  590. package/dist/cjs/contexts/ThemeContext/index.js +0 -18
  591. package/dist/cjs/contexts/ThemeContext/index.js.map +0 -1
  592. package/dist/cjs/contexts/index.d.ts +0 -1
  593. package/dist/cjs/contexts/index.js.map +0 -1
  594. package/dist/esm/components/Checkbox/CheckboxContext.js +0 -5
  595. package/dist/esm/components/Checkbox/CheckboxContext.js.map +0 -1
  596. package/dist/esm/components/Checkbox/CheckboxGroupItem.js +0 -71
  597. package/dist/esm/components/Checkbox/CheckboxGroupItem.js.map +0 -1
  598. package/dist/esm/components/Checkbox/CheckboxItem.js +0 -67
  599. package/dist/esm/components/Checkbox/CheckboxItem.js.map +0 -1
  600. package/dist/esm/components/MaskedField/MaskedField.js +0 -40
  601. package/dist/esm/components/MaskedField/MaskedField.js.map +0 -1
  602. package/dist/esm/components/MaskedField/index.js +0 -2
  603. package/dist/esm/components/MaskedField/index.js.map +0 -1
  604. package/dist/esm/components/MaskedField/inputFormatters.js +0 -36
  605. package/dist/esm/components/MaskedField/inputFormatters.js.map +0 -1
  606. package/dist/esm/components/NumberField/NumberFieldButton.js +0 -32
  607. package/dist/esm/components/NumberField/NumberFieldButton.js.map +0 -1
  608. package/dist/esm/components/Radio/RadioContext.js +0 -4
  609. package/dist/esm/components/Radio/RadioContext.js.map +0 -1
  610. package/dist/esm/components/Slider/Thumb.js +0 -29
  611. package/dist/esm/components/Slider/Thumb.js.map +0 -1
  612. package/dist/esm/contexts/ThemeContext/ThemeContext.js +0 -23
  613. package/dist/esm/contexts/ThemeContext/ThemeContext.js.map +0 -1
  614. package/dist/esm/contexts/ThemeContext/index.js +0 -2
  615. package/dist/esm/contexts/ThemeContext/index.js.map +0 -1
  616. package/dist/esm/contexts/index.js +0 -2
  617. package/dist/esm/contexts/index.js.map +0 -1
  618. package/src/components/Checkbox/CheckboxContext.tsx +0 -15
  619. package/src/components/Checkbox/CheckboxGroupItem.tsx +0 -119
  620. package/src/components/Checkbox/CheckboxItem.tsx +0 -105
  621. package/src/components/MaskedField/MaskedField.mdx +0 -55
  622. package/src/components/MaskedField/MaskedField.stories.tsx +0 -26
  623. package/src/components/MaskedField/MaskedField.test.tsx +0 -91
  624. package/src/components/MaskedField/MaskedField.tsx +0 -58
  625. package/src/components/MaskedField/index.tsx +0 -1
  626. package/src/components/MaskedField/inputFormatters.ts +0 -42
  627. package/src/components/NumberField/NumberFieldButton.tsx +0 -38
  628. package/src/components/NumberField/__snapshots__/NumberField.test.tsx.snap +0 -78
  629. package/src/components/Radio/RadioContext.tsx +0 -14
  630. package/src/components/Slider/Thumb.tsx +0 -53
  631. package/src/contexts/ThemeContext/ThemeContext.test.tsx +0 -12
  632. package/src/contexts/ThemeContext/ThemeContext.tsx +0 -62
  633. package/src/contexts/ThemeContext/index.tsx +0 -1
  634. package/src/contexts/index.tsx +0 -1
  635. package/src/sample.test.mjs +0 -6
  636. /package/dist/cjs/components/{MaskedField/MaskedField.test.d.ts → Divider/Divider.test.d.ts} +0 -0
  637. /package/dist/cjs/{contexts/ThemeContext/ThemeContext.test.d.ts → hooks/useLabel/useLabel.test.d.ts} +0 -0
@@ -1,17 +1,16 @@
1
- import { Ref, RefAttributes, ReactNode } from "react";
2
- import { DOMProps } from "@react-types/shared";
1
+ import { ReactNode, Ref, RefAttributes } from "react";
3
2
  import { ForwardedRefComponent } from "../../types/components";
3
+ import { DOMProps } from "../../types/dom";
4
+ export type AccordionElementType = HTMLDivElement;
5
+ export type AccordionRef = Ref<AccordionElementType>;
4
6
  export interface AccordionLinkProps extends DOMProps {
5
- type: string;
6
7
  /** Link text to show accordion content */
7
8
  text?: string;
8
- onClick?: (event: React.SyntheticEvent) => void;
9
+ onClick?: () => void;
9
10
  toggle: () => void;
10
11
  headerChildren?: ReactNode;
11
- ariaExpanded: boolean;
12
+ ariaExpanded: boolean | undefined;
12
13
  }
13
- export type AccordionElementType = HTMLDivElement;
14
- export type AccordionRef = Ref<AccordionElementType>;
15
14
  export interface AccordionProps extends DOMProps, RefAttributes<AccordionElementType> {
16
15
  /** Custom class name for setting specific CSS */
17
16
  className?: string;
@@ -22,10 +21,14 @@ export interface AccordionProps extends DOMProps, RefAttributes<AccordionElement
22
21
  /** Whether header is above or below content */
23
22
  headerPosition?: "top" | "bottom";
24
23
  /** Whether to expand the accordion initially */
25
- startOpen?: boolean;
24
+ startOpen?: boolean | undefined;
25
+ /** Callback that fires each time the accordion is opened */
26
+ onOpen?: () => void;
27
+ /** Callback that fires each time the accordion is closed */
28
+ onClose?: () => void;
29
+ /** Callback that fires each time the accordion state changes */
30
+ onChange?: (state: boolean) => void;
26
31
  children?: ReactNode;
27
- onClick?: (event: React.SyntheticEvent) => void;
28
32
  headerChildren?: ReactNode;
29
33
  }
30
- declare const Accordion: ForwardedRefComponent<AccordionProps, AccordionElementType>;
31
- export { Accordion };
34
+ export declare const Accordion: ForwardedRefComponent<AccordionProps, AccordionElementType>;
@@ -17,38 +17,69 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.Accordion = void 0;
19
19
  const jsx_runtime_1 = require("react/jsx-runtime");
20
- const react_1 = require("react");
21
- const clsx_1 = __importDefault(require("clsx"));
22
- const react_animate_height_1 = __importDefault(require("react-animate-height"));
23
20
  const icons_1 = require("@simplybusiness/icons");
24
- const Icon_1 = require("../Icon");
21
+ const dedupe_1 = __importDefault(require("classnames/dedupe"));
22
+ const react_1 = require("react");
25
23
  const Flex_1 = require("../Flex");
26
- const AccordionLink = ({ text, type, toggle, onClick, headerChildren, ariaExpanded, }) => {
27
- const linkClasses = (0, clsx_1.default)("mobius/AccordionLink", type);
28
- const handleOnClick = (event) => {
24
+ const Icon_1 = require("../Icon");
25
+ const AccordionLink = ({ text, toggle, onClick, headerChildren, ariaExpanded, }) => {
26
+ const linkClasses = (0, dedupe_1.default)("mobius/AccordionLink", {
27
+ "--is-open": ariaExpanded,
28
+ });
29
+ const iconClasses = (0, dedupe_1.default)("mobius/AccordionLinkIcon", {
30
+ "--is-open": ariaExpanded,
31
+ });
32
+ const handleOnClick = () => {
29
33
  if (onClick) {
30
- onClick(event);
34
+ onClick();
31
35
  }
32
36
  toggle();
33
37
  };
34
38
  if (headerChildren) {
35
- return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { justifyContent: "space-between", alignItems: "center", className: "mobius/AccordionHeader", children: [(0, jsx_runtime_1.jsxs)("div", { className: linkClasses, onClick: handleOnClick, onKeyDown: toggle, role: "button", tabIndex: 0, "aria-expanded": ariaExpanded, children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: icons_1.chevronDown }), (0, jsx_runtime_1.jsx)("span", { className: "mobius/AccordionLinkText", children: text })] }), headerChildren] }));
39
+ return ((0, jsx_runtime_1.jsxs)(Flex_1.Flex, { justifyContent: "space-between", alignItems: "center", className: "mobius/AccordionHeader", children: [(0, jsx_runtime_1.jsxs)("div", { className: linkClasses, onClick: handleOnClick, onKeyDown: toggle, role: "button", tabIndex: 0, "aria-expanded": !!ariaExpanded, children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: icons_1.chevronDown, className: iconClasses }), (0, jsx_runtime_1.jsx)("span", { className: "mobius/AccordionLinkText", children: text })] }), headerChildren] }));
36
40
  }
37
- return ((0, jsx_runtime_1.jsxs)("div", { className: linkClasses, onClick: handleOnClick, onKeyDown: toggle, role: "button", tabIndex: 0, "aria-expanded": ariaExpanded, children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: icons_1.chevronDown }), (0, jsx_runtime_1.jsx)("span", { className: "mobius/AccordionLinkText", children: text })] }));
41
+ return ((0, jsx_runtime_1.jsxs)("div", { className: linkClasses, onClick: handleOnClick, onKeyDown: toggle, role: "button", tabIndex: 0, "aria-expanded": !!ariaExpanded, children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: icons_1.chevronDown, className: iconClasses }), (0, jsx_runtime_1.jsx)("span", { className: "mobius/AccordionLinkText", children: text })] }));
38
42
  };
39
- const Accordion = (0, react_1.forwardRef)((props, ref) => {
40
- const { showText = "See more", hideText = "See less", headerPosition = "bottom", startOpen = false, onClick = () => { }, headerChildren } = props, rest = __rest(props, ["showText", "hideText", "headerPosition", "startOpen", "onClick", "headerChildren"]);
41
- const [open, setOpen] = (0, react_1.useState)(startOpen);
42
- const contentHeight = open ? "auto" : 0;
43
- const classes = (0, clsx_1.default)("mobius", "mobius/Accordion", props.className);
44
- const linkText = open ? hideText : showText;
45
- const linkType = open ? "hide" : "show";
46
- const toggle = () => setOpen(!open);
43
+ exports.Accordion = (0, react_1.forwardRef)((props, ref) => {
44
+ const { showText = "See more", hideText = "See less", headerPosition = "bottom", startOpen = false, onOpen, onClose, onChange = () => { }, headerChildren } = props, rest = __rest(props, ["showText", "hideText", "headerPosition", "startOpen", "onOpen", "onClose", "onChange", "headerChildren"]);
45
+ const [accordionState, setAccordionState] = (0, react_1.useState)({
46
+ open: true,
47
+ withAnimation: false,
48
+ });
49
+ const prefersReducedMotion = window === null || window === void 0 ? void 0 : window.matchMedia("(prefers-reduced-motion: reduce)").matches;
50
+ const containerClasses = (0, dedupe_1.default)("mobius", "mobius/Accordion", props.className, {
51
+ "--should-animate": accordionState.withAnimation && !prefersReducedMotion,
52
+ "--is-open": accordionState.open,
53
+ });
54
+ const contentContainerClasses = (0, dedupe_1.default)("mobius/AccordionContentContainer", {
55
+ "--is-open": accordionState.open,
56
+ });
57
+ const contentClasses = (0, dedupe_1.default)("mobius/AccordionContent", {
58
+ "--is-open": accordionState.open,
59
+ });
60
+ const linkText = accordionState.open ? hideText : showText;
61
+ const handleChange = () => {
62
+ // Fire events
63
+ if (!accordionState.open && onOpen) {
64
+ onOpen();
65
+ }
66
+ if (accordionState.open && onClose) {
67
+ onClose();
68
+ }
69
+ if (onChange) {
70
+ onChange(!accordionState.open);
71
+ }
72
+ setAccordionState({
73
+ open: !accordionState.open,
74
+ withAnimation: true,
75
+ });
76
+ };
47
77
  (0, react_1.useEffect)(() => {
48
- setOpen(startOpen);
78
+ setAccordionState({
79
+ open: startOpen,
80
+ withAnimation: false,
81
+ });
49
82
  }, [startOpen]);
50
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ ref: ref }, rest, { className: classes, children: [headerPosition === "top" && ((0, jsx_runtime_1.jsx)(AccordionLink, { text: linkText, toggle: toggle, type: linkType, onClick: onClick, ariaExpanded: open, headerChildren: headerChildren })), (0, jsx_runtime_1.jsx)(react_animate_height_1.default, { duration: 500, height: contentHeight, children: (0, jsx_runtime_1.jsx)("div", { className: "mobius/AccordionContent", children: props.children }) }), headerPosition === "bottom" && ((0, jsx_runtime_1.jsx)(AccordionLink, { text: linkText, toggle: toggle, type: linkType, onClick: onClick, ariaExpanded: open, headerChildren: headerChildren }))] })));
83
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ ref: ref }, rest, { className: containerClasses, children: [headerPosition === "top" && ((0, jsx_runtime_1.jsx)(AccordionLink, { text: linkText, toggle: handleChange, ariaExpanded: accordionState.open, headerChildren: headerChildren })), (0, jsx_runtime_1.jsx)("div", { className: contentContainerClasses, "aria-hidden": !accordionState.open, children: (0, jsx_runtime_1.jsx)("div", { className: contentClasses, children: props.children }) }), headerPosition === "bottom" && ((0, jsx_runtime_1.jsx)(AccordionLink, { text: linkText, toggle: handleChange, ariaExpanded: accordionState.open, headerChildren: headerChildren }))] })));
51
84
  });
52
- exports.Accordion = Accordion;
53
- Accordion.displayName = "Accordion";
54
85
  //# sourceMappingURL=Accordion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.js","sourceRoot":"","sources":["../../../../src/components/Accordion/Accordion.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Accordion.js","sourceRoot":"","sources":["../../../../src/components/Accordion/Accordion.tsx"],"names":[],"mappings":"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"}
@@ -3,39 +3,69 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
4
  const react_1 = require("@testing-library/react");
5
5
  const _1 = require(".");
6
- const CLASS_NAME = "mobius/Accordion";
6
+ const CONTAINER_CLASS_NAME = "mobius/Accordion";
7
+ const CONTENT_CONTAINER_CLASS_NAME = "mobius/AccordionContentContainer";
8
+ const HEADER_CLASS_NAME = "mobius/AccordionHeader";
9
+ const LINK_CLASS_NAME = "mobius/AccordionLink";
10
+ const OPEN_CLASS_NAME = "--is-open";
11
+ const OPEN_TEXT = "See more";
12
+ const CLOSE_TEXT = "See less";
13
+ const mockMatchMedia = (matches) => {
14
+ Object.defineProperty(window, "matchMedia", {
15
+ writable: true,
16
+ configurable: true,
17
+ value: jest.fn().mockImplementation(query => ({
18
+ matches,
19
+ media: query,
20
+ onchange: null,
21
+ addListener: jest.fn(),
22
+ removeListener: jest.fn(),
23
+ addEventListener: jest.fn(),
24
+ removeEventListener: jest.fn(),
25
+ dispatchEvent: jest.fn(),
26
+ })),
27
+ });
28
+ };
7
29
  describe("Accordion", () => {
30
+ beforeEach(() => {
31
+ mockMatchMedia(true);
32
+ });
8
33
  it("should render without errors", () => {
9
34
  const component = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { children: "test" }));
10
35
  expect(component).toBeTruthy();
11
36
  });
12
37
  it("should open when clicked", () => {
13
- var _a, _b, _c;
14
38
  const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { children: "test content" }));
15
- const header = container.getElementsByClassName("mobius/AccordionLink")[0];
16
- const content = container.getElementsByClassName("mobius/AccordionContent")[0];
17
- expect((_a = content.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement).toHaveClass(`rah-static--height-zero`);
18
- expect(react_1.screen.getByText("See more")).toBeInTheDocument();
19
- react_1.fireEvent.click(header);
20
- expect((_b = content.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement).toHaveClass(`rah-animating--to-height-auto`);
21
- expect(react_1.screen.getByText("See less")).toBeInTheDocument();
22
- react_1.fireEvent.click(header);
23
- expect((_c = content.parentElement) === null || _c === void 0 ? void 0 : _c.parentElement).toHaveClass(`rah-animating--to-height-zero`);
24
- expect(react_1.screen.getByText("See more")).toBeInTheDocument();
39
+ const toggle = react_1.screen.getByText(OPEN_TEXT);
40
+ const accordionContainer = container.firstChild;
41
+ expect(accordionContainer).not.toHaveClass(OPEN_CLASS_NAME);
42
+ expect(toggle).toBeInTheDocument();
43
+ react_1.fireEvent.click(toggle);
44
+ expect(accordionContainer).toHaveClass(OPEN_CLASS_NAME);
45
+ expect(react_1.screen.getByText(CLOSE_TEXT)).toBeInTheDocument();
46
+ react_1.fireEvent.click(toggle);
47
+ expect(accordionContainer).not.toHaveClass(OPEN_CLASS_NAME);
48
+ expect(toggle).toBeInTheDocument();
25
49
  });
26
- it("renders header in correct place relative to content", () => {
27
- const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { headerPosition: "top", children: "test content" }));
28
- const accordion = container.getElementsByClassName("mobius/Accordion")[0];
29
- expect(accordion.firstChild).toHaveClass(`mobius/AccordionLink show`);
30
- expect(accordion.lastChild).toHaveClass(`rah-static`);
31
- const bottomAccordion = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { headerPosition: "bottom", children: "test content" }));
32
- const accordion2 = bottomAccordion.container.getElementsByClassName("mobius/Accordion")[0];
33
- expect(accordion2.firstChild).toHaveClass(`rah-static`);
34
- expect(accordion2.lastChild).toHaveClass(`mobius/AccordionLink show`);
50
+ describe("when headerPosition is set to top", () => {
51
+ it("renders the toggle above all other content", () => {
52
+ const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { headerPosition: "top", children: "test content" }));
53
+ const accordion = container.firstChild;
54
+ expect(accordion === null || accordion === void 0 ? void 0 : accordion.firstChild).toHaveClass(LINK_CLASS_NAME);
55
+ expect(accordion === null || accordion === void 0 ? void 0 : accordion.lastChild).toHaveClass(CONTENT_CONTAINER_CLASS_NAME);
56
+ });
57
+ });
58
+ describe("when headerPosition is set to bottom", () => {
59
+ it("renders the toggle underneath all other content", () => {
60
+ const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { headerPosition: "bottom", children: "test content" }));
61
+ const accordion = container.firstChild;
62
+ expect(accordion === null || accordion === void 0 ? void 0 : accordion.firstChild).toHaveClass(CONTENT_CONTAINER_CLASS_NAME);
63
+ expect(accordion === null || accordion === void 0 ? void 0 : accordion.lastChild).toHaveClass(LINK_CLASS_NAME);
64
+ });
35
65
  });
36
66
  it("respects startOpen prop and is expanded", () => {
37
67
  (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { startOpen: true, children: "test content" }));
38
- expect(react_1.screen.getByText("See less")).toBeInTheDocument();
68
+ expect(react_1.screen.getByText(CLOSE_TEXT)).toBeInTheDocument();
39
69
  });
40
70
  describe("uses correct class names", () => {
41
71
  it("uses mobius class", () => {
@@ -43,31 +73,21 @@ describe("Accordion", () => {
43
73
  expect(container.firstChild).toHaveClass("mobius");
44
74
  });
45
75
  it("uses base Mobius class", () => {
46
- (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { "data-testid": "test", children: "Sample text" }));
47
- expect(react_1.screen.getByTestId("test")).toHaveClass(CLASS_NAME);
76
+ const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { children: "Sample text" }));
77
+ expect(container.firstChild).toHaveClass(CONTAINER_CLASS_NAME);
48
78
  });
49
79
  it("includes custom class name", () => {
50
- (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { className: "my-class", "data-testid": "test", children: "Sample Text" }));
51
- expect(react_1.screen.getByTestId("test")).toHaveClass("my-class");
52
- expect(react_1.screen.getByTestId("test")).toHaveClass(CLASS_NAME);
80
+ const customClassName = "my-class";
81
+ const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { className: customClassName, children: "Sample Text" }));
82
+ expect(container.firstChild).toHaveClass(customClassName);
83
+ expect(container.firstChild).toHaveClass(CONTAINER_CLASS_NAME);
53
84
  });
54
85
  });
55
- it("respects onClick prop", () => {
56
- var _a, _b;
57
- const handleOnClick = jest.fn();
58
- const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { onClick: handleOnClick, children: "Sample Text" }));
59
- const header = container.getElementsByClassName("mobius/AccordionLink")[0];
60
- const content = container.getElementsByClassName("mobius/AccordionContent")[0];
61
- expect((_a = content.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement).toHaveClass(`rah-static--height-zero`);
62
- react_1.fireEvent.click(header);
63
- expect((_b = content.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement).toHaveClass(`rah-animating--to-height-auto`);
64
- expect(handleOnClick).toHaveBeenCalled();
65
- });
66
86
  describe("given headerChildren prop has content", () => {
67
87
  it("renders the content", () => {
68
88
  const buttonText = "Go";
69
89
  const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { headerChildren: (0, jsx_runtime_1.jsx)("button", { type: "button", children: buttonText }), children: "Sample Text" }));
70
- const headerContainer = container.getElementsByClassName("mobius/AccordionHeader");
90
+ const headerContainer = container.getElementsByClassName(HEADER_CLASS_NAME);
71
91
  expect(react_1.screen.getByText(buttonText)).toBeInTheDocument();
72
92
  expect(headerContainer).toHaveLength(1);
73
93
  });
@@ -75,7 +95,7 @@ describe("Accordion", () => {
75
95
  describe("given headerChildren is not defined", () => {
76
96
  it("it does not render the header component", () => {
77
97
  const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { children: "Sample Text" }));
78
- const headerContainer = container.getElementsByClassName("mobius/AccordionHeader");
98
+ const headerContainer = container.getElementsByClassName(HEADER_CLASS_NAME);
79
99
  expect(headerContainer).toHaveLength(0);
80
100
  });
81
101
  });
@@ -89,12 +109,50 @@ describe("Accordion", () => {
89
109
  describe("providing that startOpen prop changes over time", () => {
90
110
  it("renders the correct state", () => {
91
111
  const { rerender } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { startOpen: true, children: "Sample Text" }));
92
- const seeLess = react_1.screen.getByText("See less");
112
+ const seeLess = react_1.screen.getByText(CLOSE_TEXT);
93
113
  expect(seeLess).toBeInTheDocument();
94
114
  rerender((0, jsx_runtime_1.jsx)(_1.Accordion, { startOpen: false, children: "Sample Text" }));
95
- const seeMore = react_1.screen.getByText("See more");
115
+ const seeMore = react_1.screen.getByText(OPEN_TEXT);
96
116
  expect(seeMore).toBeInTheDocument();
97
117
  });
98
118
  });
119
+ describe("events", () => {
120
+ it("calls onChange when accordion is toggled", () => {
121
+ const onChange = jest.fn();
122
+ (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { onChange: onChange, children: "Sample Text" }));
123
+ const button = react_1.screen.getByRole("button");
124
+ react_1.fireEvent.click(button);
125
+ expect(onChange).toHaveBeenCalledWith(true);
126
+ react_1.fireEvent.click(button);
127
+ expect(onChange).toHaveBeenCalledWith(false);
128
+ });
129
+ it("calls onOpen when accordion is opened", () => {
130
+ const onOpen = jest.fn();
131
+ const onClose = jest.fn();
132
+ (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { onOpen: onOpen, onClose: onClose, children: "Sample Text" }));
133
+ const button = react_1.screen.getByRole("button");
134
+ react_1.fireEvent.click(button);
135
+ expect(onOpen).toHaveBeenCalled();
136
+ expect(onClose).not.toHaveBeenCalled();
137
+ });
138
+ it("calls onClose when accordion is closed", () => {
139
+ const onOpen = jest.fn();
140
+ const onClose = jest.fn();
141
+ (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { startOpen: true, onOpen: onOpen, onClose: onClose, children: "Sample Text" }));
142
+ const button = react_1.screen.getByRole("button");
143
+ react_1.fireEvent.click(button);
144
+ expect(onClose).toHaveBeenCalled();
145
+ expect(onOpen).not.toHaveBeenCalled();
146
+ });
147
+ });
148
+ describe("given user prefers reduced motion", () => {
149
+ beforeEach(() => {
150
+ mockMatchMedia(false);
151
+ });
152
+ it("runs no animations", () => {
153
+ const { container } = (0, react_1.render)((0, jsx_runtime_1.jsx)(_1.Accordion, { children: "Sample Text" }));
154
+ expect(container.firstChild).not.toHaveClass("--should-animate");
155
+ });
156
+ });
99
157
  });
100
158
  //# sourceMappingURL=Accordion.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.test.js","sourceRoot":"","sources":["../../../../src/components/Accordion/Accordion.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Accordion.test.js","sourceRoot":"","sources":["../../../../src/components/Accordion/Accordion.test.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Ref, RefAttributes, ReactNode } from "react";
2
- import { DOMProps } from "@react-types/shared";
2
+ import { DOMProps } from "../../types/dom";
3
3
  import { ForwardedRefComponent } from "../../types/components";
4
4
  export type AlertElementType = HTMLDivElement;
5
5
  export interface AlertProps extends DOMProps, RefAttributes<AlertElementType> {
@@ -17,14 +17,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.Alert = void 0;
18
18
  const jsx_runtime_1 = require("react/jsx-runtime");
19
19
  const react_1 = require("react");
20
- const clsx_1 = __importDefault(require("clsx"));
20
+ const dedupe_1 = __importDefault(require("classnames/dedupe"));
21
21
  const icons_1 = require("@simplybusiness/icons");
22
22
  const Icon_1 = require("../Icon");
23
23
  const Alert = (0, react_1.forwardRef)((props, ref) => {
24
24
  const { elementType: Element = "div", variant = "info", show = true, header, children } = props, otherProps = __rest(props, ["elementType", "variant", "show", "header", "children"]);
25
25
  if (!show)
26
26
  return null;
27
- const classes = (0, clsx_1.default)("mobius", "mobius/Alert", {
27
+ const classes = (0, dedupe_1.default)("mobius", "mobius/Alert", {
28
28
  "--info": variant === "info",
29
29
  "--success": variant === "success",
30
30
  "--warning": variant === "warning",
@@ -37,9 +37,9 @@ const Alert = (0, react_1.forwardRef)((props, ref) => {
37
37
  warning: icons_1.warning,
38
38
  error: icons_1.error,
39
39
  };
40
- const headerClasses = (0, clsx_1.default)("mobius", "mobius/AlertHeader");
41
- const iconClasses = (0, clsx_1.default)("mobius", "mobius/AlertIcon");
42
- const contentClasses = (0, clsx_1.default)("mobius", "mobius/AlertContent");
40
+ const headerClasses = (0, dedupe_1.default)("mobius", "mobius/AlertHeader");
41
+ const iconClasses = (0, dedupe_1.default)("mobius", "mobius/AlertIcon");
42
+ const contentClasses = (0, dedupe_1.default)("mobius", "mobius/AlertContent");
43
43
  return ((0, jsx_runtime_1.jsxs)(Element, Object.assign({ ref: ref, role: "alert" }, otherProps, { className: classes, children: [(0, jsx_runtime_1.jsx)("span", { className: iconClasses, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: icon[variant] }) }), (0, jsx_runtime_1.jsxs)("div", { children: [header && (0, jsx_runtime_1.jsx)("p", { className: headerClasses, children: header }), (0, jsx_runtime_1.jsx)("div", { className: contentClasses, children: children })] })] })));
44
44
  });
45
45
  exports.Alert = Alert;
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../src/components/Alert/Alert.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAAkE;AAElE,gDAAwB;AACxB,iDAAsE;AAEtE,kCAA+B;AAgB/B,MAAM,KAAK,GAAwD,IAAA,kBAAU,EAC3E,CAAC,KAAiB,EAAE,GAAa,EAAE,EAAE;IACnC,MAAM,EACJ,WAAW,EAAE,OAAO,GAAG,KAAK,EAC5B,OAAO,GAAG,MAAM,EAChB,IAAI,GAAG,IAAI,EACX,MAAM,EACN,QAAQ,KAEN,KAAK,EADJ,UAAU,UACX,KAAK,EAPH,wDAOL,CAAQ,CAAC;IAEV,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,OAAO,GAAG,IAAA,cAAI,EAClB,QAAQ,EACR,cAAc,EACd;QACE,QAAQ,EAAE,OAAO,KAAK,MAAM;QAC5B,WAAW,EAAE,OAAO,KAAK,SAAS;QAClC,WAAW,EAAE,OAAO,KAAK,SAAS;QAClC,SAAS,EAAE,OAAO,KAAK,OAAO;QAC9B,cAAc,EAAE,MAAM;KACvB,EACD,UAAU,CAAC,SAAS,CACrB,CAAC;IACF,MAAM,IAAI,GAAG;QACX,IAAI,EAAJ,YAAI;QACJ,OAAO,EAAP,eAAO;QACP,OAAO,EAAP,eAAO;QACP,KAAK,EAAL,aAAK;KACN,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAE7D,OAAO,CACL,wBAAC,OAAO,kBAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAC,OAAO,IAAK,UAAU,IAAE,SAAS,EAAE,OAAO,aAChE,iCAAM,SAAS,EAAE,WAAW,YAC1B,uBAAC,WAAI,IAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAI,GACxB,EACP,4CACG,MAAM,IAAI,8BAAG,SAAS,EAAE,aAAa,YAAG,MAAM,GAAK,EACpD,gCAAK,SAAS,EAAE,cAAc,YAAG,QAAQ,GAAO,IAC5C,KACE,CACX,CAAC;AACJ,CAAC,CACF,CAAC;AAGO,sBAAK;AADd,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../../src/components/Alert/Alert.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAAkE;AAClE,+DAA2C;AAC3C,iDAAsE;AAGtE,kCAA+B;AAgB/B,MAAM,KAAK,GAAwD,IAAA,kBAAU,EAC3E,CAAC,KAAiB,EAAE,GAAa,EAAE,EAAE;IACnC,MAAM,EACJ,WAAW,EAAE,OAAO,GAAG,KAAK,EAC5B,OAAO,GAAG,MAAM,EAChB,IAAI,GAAG,IAAI,EACX,MAAM,EACN,QAAQ,KAEN,KAAK,EADJ,UAAU,UACX,KAAK,EAPH,wDAOL,CAAQ,CAAC;IAEV,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,OAAO,GAAG,IAAA,gBAAU,EACxB,QAAQ,EACR,cAAc,EACd;QACE,QAAQ,EAAE,OAAO,KAAK,MAAM;QAC5B,WAAW,EAAE,OAAO,KAAK,SAAS;QAClC,WAAW,EAAE,OAAO,KAAK,SAAS;QAClC,SAAS,EAAE,OAAO,KAAK,OAAO;QAC9B,cAAc,EAAE,MAAM;KACvB,EACD,UAAU,CAAC,SAAS,CACrB,CAAC;IACF,MAAM,IAAI,GAAG;QACX,IAAI,EAAJ,YAAI;QACJ,OAAO,EAAP,eAAO;QACP,OAAO,EAAP,eAAO;QACP,KAAK,EAAL,aAAK;KACN,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,gBAAU,EAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,IAAA,gBAAU,EAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,IAAA,gBAAU,EAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAEnE,OAAO,CACL,wBAAC,OAAO,kBAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAC,OAAO,IAAK,UAAU,IAAE,SAAS,EAAE,OAAO,aAChE,iCAAM,SAAS,EAAE,WAAW,YAC1B,uBAAC,WAAI,IAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAI,GACxB,EACP,4CACG,MAAM,IAAI,8BAAG,SAAS,EAAE,aAAa,YAAG,MAAM,GAAK,EACpD,gCAAK,SAAS,EAAE,cAAc,YAAG,QAAQ,GAAO,IAC5C,KACE,CACX,CAAC;AACJ,CAAC,CACF,CAAC;AAGO,sBAAK;AADd,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Ref, RefAttributes, ReactNode } from "react";
2
- import { DOMProps } from "@react-types/shared";
2
+ import { DOMProps } from "../../types/dom";
3
3
  import { ForwardedRefComponent } from "../../types/components";
4
4
  export type BoxElementType = HTMLDivElement;
5
5
  export interface BoxProps extends DOMProps, RefAttributes<BoxElementType> {
@@ -17,10 +17,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.Box = void 0;
18
18
  const jsx_runtime_1 = require("react/jsx-runtime");
19
19
  const react_1 = require("react");
20
- const clsx_1 = __importDefault(require("clsx"));
20
+ const dedupe_1 = __importDefault(require("classnames/dedupe"));
21
21
  const Box = (0, react_1.forwardRef)((props, ref) => {
22
22
  const { elementType: Element = "div" } = props, otherProps = __rest(props, ["elementType"]);
23
- const classes = (0, clsx_1.default)("mobius", "mobius/Box", otherProps.className);
23
+ const classes = (0, dedupe_1.default)("mobius", "mobius/Box", otherProps.className);
24
24
  return (0, jsx_runtime_1.jsx)(Element, Object.assign({ ref: ref }, otherProps, { className: classes }));
25
25
  });
26
26
  exports.Box = Box;
@@ -1 +1 @@
1
- {"version":3,"file":"Box.js","sourceRoot":"","sources":["../../../../src/components/Box/Box.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAAkE;AAElE,gDAAwB;AAgBxB,MAAM,GAAG,GAAoD,IAAA,kBAAU,EACrE,CAAC,KAAe,EAAE,GAAW,EAAE,EAAE;IAC/B,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,KAAK,KAAoB,KAAK,EAApB,UAAU,UAAK,KAAK,EAAvD,eAA+C,CAAQ,CAAC;IAE9D,MAAM,OAAO,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAEnE,OAAO,uBAAC,OAAO,kBAAC,GAAG,EAAE,GAAG,IAAM,UAAU,IAAE,SAAS,EAAE,OAAO,IAAI,CAAC;AACnE,CAAC,CACF,CAAC;AAGO,kBAAG;AADZ,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"Box.js","sourceRoot":"","sources":["../../../../src/components/Box/Box.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAAkE;AAClE,+DAA2C;AAiB3C,MAAM,GAAG,GAAoD,IAAA,kBAAU,EACrE,CAAC,KAAe,EAAE,GAAW,EAAE,EAAE;IAC/B,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,KAAK,KAAoB,KAAK,EAApB,UAAU,UAAK,KAAK,EAAvD,eAA+C,CAAQ,CAAC;IAE9D,MAAM,OAAO,GAAG,IAAA,gBAAU,EAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAEzE,OAAO,uBAAC,OAAO,kBAAC,GAAG,EAAE,GAAG,IAAM,UAAU,IAAE,SAAS,EAAE,OAAO,IAAI,CAAC;AACnE,CAAC,CACF,CAAC;AAGO,kBAAG;AADZ,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC"}
@@ -1,12 +1,14 @@
1
- import { Ref, ReactNode, RefAttributes } from "react";
2
- import { AriaBreadcrumbItemProps } from "@react-types/breadcrumbs";
3
- import { DOMProps } from "@react-types/shared";
1
+ import { Ref, ReactNode } from "react";
2
+ import { DOMProps } from "../../types/dom";
4
3
  import { ForwardedRefComponent } from "../../types/components";
5
4
  export type BreadcrumbItemElementType = HTMLLIElement;
6
- export interface BreadcrumbItemProps extends DOMProps, AriaBreadcrumbItemProps, RefAttributes<BreadcrumbItemElementType> {
5
+ export interface BreadcrumbItemProps extends DOMProps {
6
+ "aria-current"?: "page" | "step" | "location" | "date" | "time" | boolean | "true" | "false";
7
+ isDisabled?: boolean;
7
8
  isCurrent?: boolean;
8
9
  separator?: ReactNode;
9
10
  className?: string;
11
+ children: ReactNode;
10
12
  }
11
13
  export type BreadcrumbItemRef = Ref<BreadcrumbItemElementType>;
12
14
  declare const BreadcrumbItem: ForwardedRefComponent<BreadcrumbItemProps, BreadcrumbItemElementType>;
@@ -1,5 +1,16 @@
1
1
  "use strict";
2
2
  "use client";
3
+ var __rest = (this && this.__rest) || function (s, e) {
4
+ var t = {};
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
6
+ t[p] = s[p];
7
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
8
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
9
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
10
+ t[p[i]] = s[p[i]];
11
+ }
12
+ return t;
13
+ };
3
14
  var __importDefault = (this && this.__importDefault) || function (mod) {
4
15
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
16
  };
@@ -7,15 +18,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
18
  exports.BreadcrumbItem = void 0;
8
19
  const jsx_runtime_1 = require("react/jsx-runtime");
9
20
  const react_1 = require("react");
10
- const breadcrumbs_1 = require("@react-aria/breadcrumbs");
11
- const clsx_1 = __importDefault(require("clsx"));
21
+ const dedupe_1 = __importDefault(require("classnames/dedupe"));
12
22
  const Box_1 = require("../Box");
13
23
  const BreadcrumbItem = (0, react_1.forwardRef)((props, ref) => {
14
- const refObj = (0, react_1.useRef)(null);
15
- const { itemProps } = (0, breadcrumbs_1.useBreadcrumbItem)(Object.assign(Object.assign({}, props), { elementType: "span" }), refObj);
16
- const { separator = ((0, jsx_runtime_1.jsx)(Box_1.Box, { className: "mobius/BreadcrumbSeparator", "aria-hidden": "true", children: ">" })), children, } = props;
24
+ const { isDisabled = false, isCurrent = false, "aria-current": ariaCurrent = "page", children, separator = ((0, jsx_runtime_1.jsx)(Box_1.Box, { className: "mobius/BreadcrumbSeparator", "aria-hidden": "true", children: ">" })) } = props, otherProps = __rest(props, ["isDisabled", "isCurrent", "aria-current", "children", "separator"]);
25
+ const { itemProps } = {
26
+ itemProps: Object.assign({ "aria-current": isCurrent ? ariaCurrent : undefined, "aria-disabled": isDisabled || isCurrent }, otherProps),
27
+ };
17
28
  // Reshape class name and apply to outer element
18
- const classes = (0, clsx_1.default)("mobius", "mobius/BreadcrumbItem", props.className);
29
+ const classes = (0, dedupe_1.default)("mobius", "mobius/BreadcrumbItem", props.className);
19
30
  const child = typeof children === "string" ? ((0, jsx_runtime_1.jsx)("span", Object.assign({}, itemProps, { children: children }))) : react_1.Children.only(children);
20
31
  return ((0, jsx_runtime_1.jsxs)("li", { className: classes, children: [(0, react_1.cloneElement)(child, Object.assign(Object.assign(Object.assign({}, child.props), itemProps), { ref })), !props.isCurrent && separator] }));
21
32
  });
@@ -1 +1 @@
1
- {"version":3,"file":"BreadcrumbItem.js","sourceRoot":"","sources":["../../../../src/components/Breadcrumbs/BreadcrumbItem.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;AAEb,iCASe;AACf,yDAA4D;AAE5D,gDAAwB;AAGxB,gCAA6B;AAe7B,MAAM,cAAc,GAGhB,IAAA,kBAAU,EAAC,CAAC,KAA0B,EAAE,GAAsB,EAAE,EAAE;IACpE,MAAM,MAAM,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,+BAAiB,kCAChC,KAAK,KAAE,WAAW,EAAE,MAAM,KAC/B,MAAM,CACP,CAAC;IAEF,MAAM,EACJ,SAAS,GAAG,CACV,uBAAC,SAAG,IAAC,SAAS,EAAC,4BAA4B,iBAAa,MAAM,YAC3D,GAAG,GACA,CACP,EACD,QAAQ,GACT,GAAG,KAAK,CAAC;IAEV,gDAAgD;IAChD,MAAM,OAAO,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,uBAAuB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAEzE,MAAM,KAAK,GACT,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC7B,iDAAU,SAAS,cAAG,QAAQ,IAAQ,CACvC,CAAC,CAAC,CACA,gBAAQ,CAAC,IAAI,CAAC,QAAQ,CACxB,CAAC;IAEJ,OAAO,CACL,gCAAI,SAAS,EAAE,OAAO,aACnB,IAAA,oBAAY,EAAC,KAAK,gDAAO,KAAK,CAAC,KAAK,GAAK,SAAS,KAAE,GAAG,IAAG,EAC1D,CAAC,KAAK,CAAC,SAAS,IAAI,SAAS,IAC3B,CACN,CAAC;AACJ,CAAC,CAAC,CAAC;AAGM,wCAAc;AADvB,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"BreadcrumbItem.js","sourceRoot":"","sources":["../../../../src/components/Breadcrumbs/BreadcrumbItem.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;AAEb,iCAOe;AACf,+DAA2C;AAG3C,gCAA6B;AAuB7B,MAAM,cAAc,GAGhB,IAAA,kBAAU,EAAC,CAAC,KAA0B,EAAE,GAAsB,EAAE,EAAE;IACpE,MAAM,EACJ,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK,EACjB,cAAc,EAAE,WAAW,GAAG,MAAM,EACpC,QAAQ,EACR,SAAS,GAAG,CACV,uBAAC,SAAG,IAAC,SAAS,EAAC,4BAA4B,iBAAa,MAAM,YAC3D,GAAG,GACA,CACP,KAEC,KAAK,EADJ,UAAU,UACX,KAAK,EAXH,oEAWL,CAAQ,CAAC;IACV,MAAM,EAAE,SAAS,EAAE,GAAG;QACpB,SAAS,kBACP,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EACnD,eAAe,EAAE,UAAU,IAAI,SAAS,IACrC,UAAU,CACd;KACF,CAAC;IAEF,gDAAgD;IAChD,MAAM,OAAO,GAAG,IAAA,gBAAU,EACxB,QAAQ,EACR,uBAAuB,EACvB,KAAK,CAAC,SAAS,CAChB,CAAC;IAEF,MAAM,KAAK,GACT,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC7B,iDAAU,SAAS,cAAG,QAAQ,IAAQ,CACvC,CAAC,CAAC,CACA,gBAAQ,CAAC,IAAI,CAAC,QAAQ,CACxB,CAAC;IAEJ,OAAO,CACL,gCAAI,SAAS,EAAE,OAAO,aACnB,IAAA,oBAAY,EAAC,KAAK,gDAAO,KAAK,CAAC,KAAK,GAAK,SAAS,KAAE,GAAG,IAAG,EAC1D,CAAC,KAAK,CAAC,SAAS,IAAI,SAAS,IAC3B,CACN,CAAC;AACJ,CAAC,CAAC,CAAC;AAGM,wCAAc;AADvB,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { Ref, RefAttributes, ReactNode } from "react";
2
- import { AriaBreadcrumbsProps } from "@react-types/breadcrumbs";
3
2
  import { ForwardedRefComponent } from "../../types/components";
4
3
  export type BreadcrumbsElementType = HTMLUListElement;
5
- export interface BreadcrumbsProps extends AriaBreadcrumbsProps, RefAttributes<BreadcrumbsElementType> {
4
+ export interface BreadcrumbsProps extends RefAttributes<BreadcrumbsElementType> {
6
5
  /** Custom class name for setting specific CSS */
7
6
  className?: string;
8
7
  children?: ReactNode;
8
+ "aria-label"?: string;
9
9
  }
10
10
  export type BreadcrumbsRef = Ref<BreadcrumbsElementType>;
11
11
  declare const Breadcrumbs: ForwardedRefComponent<BreadcrumbsProps, BreadcrumbsElementType>;
@@ -18,14 +18,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.Breadcrumbs = void 0;
19
19
  const jsx_runtime_1 = require("react/jsx-runtime");
20
20
  const react_1 = require("react");
21
- const breadcrumbs_1 = require("@react-aria/breadcrumbs");
22
- const clsx_1 = __importDefault(require("clsx"));
21
+ const dedupe_1 = __importDefault(require("classnames/dedupe"));
23
22
  const Breadcrumbs = (0, react_1.forwardRef)((props, ref) => {
24
- const { navProps } = (0, breadcrumbs_1.useBreadcrumbs)(props);
23
+ const { "aria-label": ariaLabel = "Breadcrumbs" } = props;
24
+ const { navProps } = { navProps: { "aria-label": ariaLabel } };
25
25
  const { children } = props, otherProps = __rest(props, ["children"]);
26
26
  const childArray = react_1.Children.toArray(children);
27
27
  // Reshape class name and apply to outer element
28
- const classes = (0, clsx_1.default)("mobius", "mobius/Breadcrumb", otherProps.className);
28
+ const classes = (0, dedupe_1.default)("mobius", "mobius/Breadcrumb", otherProps.className);
29
29
  return ((0, jsx_runtime_1.jsx)("nav", Object.assign({ ref: ref }, otherProps, navProps, { className: classes, children: (0, jsx_runtime_1.jsx)("ul", { children: childArray.map((child, i) => (0, react_1.cloneElement)(child, {
30
30
  isCurrent: i === childArray.length - 1,
31
31
  })) }) })));
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumbs.js","sourceRoot":"","sources":["../../../../src/components/Breadcrumbs/Breadcrumbs.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;AAEb,iCAQe;AACf,yDAAyD;AAEzD,gDAAwB;AAexB,MAAM,WAAW,GAGb,IAAA,kBAAU,EAAC,CAAC,KAAuB,EAAE,GAAmB,EAAE,EAAE;IAC9D,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,4BAAc,EAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,EAAE,QAAQ,KAAoB,KAAK,EAApB,UAAU,UAAK,KAAK,EAAnC,YAA2B,CAAQ,CAAC;IAC1C,MAAM,UAAU,GAAG,gBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9C,gDAAgD;IAChD,MAAM,OAAO,GAAG,IAAA,cAAI,EAAC,QAAQ,EAAE,mBAAmB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IAE1E,OAAO,CACL,8CAAK,GAAG,EAAE,GAAG,IAAM,UAAU,EAAM,QAAQ,IAAE,SAAS,EAAE,OAAO,YAC7D,yCACG,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3B,IAAA,oBAAY,EAAC,KAAqB,EAAE;gBAClC,SAAS,EAAE,CAAC,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC;aACvC,CAAC,CACH,GACE,IACD,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAGM,kCAAW;AADpB,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"Breadcrumbs.js","sourceRoot":"","sources":["../../../../src/components/Breadcrumbs/Breadcrumbs.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;AAEb,iCAQe;AACf,+DAA2C;AAe3C,MAAM,WAAW,GAGb,IAAA,kBAAU,EAAC,CAAC,KAAuB,EAAE,GAAmB,EAAE,EAAE;IAC9D,MAAM,EAAE,YAAY,EAAE,SAAS,GAAG,aAAa,EAAE,GAAG,KAAK,CAAC;IAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC;IAC/D,MAAM,EAAE,QAAQ,KAAoB,KAAK,EAApB,UAAU,UAAK,KAAK,EAAnC,YAA2B,CAAQ,CAAC;IAC1C,MAAM,UAAU,GAAG,gBAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9C,gDAAgD;IAChD,MAAM,OAAO,GAAG,IAAA,gBAAU,EACxB,QAAQ,EACR,mBAAmB,EACnB,UAAU,CAAC,SAAS,CACrB,CAAC;IAEF,OAAO,CACL,8CAAK,GAAG,EAAE,GAAG,IAAM,UAAU,EAAM,QAAQ,IAAE,SAAS,EAAE,OAAO,YAC7D,yCACG,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAC3B,IAAA,oBAAY,EAAC,KAAqB,EAAE;gBAClC,SAAS,EAAE,CAAC,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC;aACvC,CAAC,CACH,GACE,IACD,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAGM,kCAAW;AADpB,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC"}