@simplybusiness/mobius 3.8.0 → 3.9.0

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 (412) hide show
  1. package/CHANGELOG.md +14 -1
  2. package/dist/cjs/components/Accordion/Accordion.stories.d.ts +12 -0
  3. package/dist/cjs/components/Accordion/Accordion.stories.js +48 -0
  4. package/dist/cjs/components/Accordion/Accordion.stories.js.map +1 -0
  5. package/dist/cjs/components/Alert/Alert.stories.d.ts +17 -0
  6. package/dist/cjs/components/Alert/Alert.stories.js +35 -0
  7. package/dist/cjs/components/Alert/Alert.stories.js.map +1 -0
  8. package/dist/cjs/components/Box/Box.stories.d.ts +17 -0
  9. package/dist/cjs/components/Box/Box.stories.js +23 -0
  10. package/dist/cjs/components/Box/Box.stories.js.map +1 -0
  11. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.stories.d.ts +10 -0
  12. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.stories.js +20 -0
  13. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.stories.js.map +1 -0
  14. package/dist/cjs/components/Button/Button.stories.d.ts +67 -0
  15. package/dist/cjs/components/Button/Button.stories.js +201 -0
  16. package/dist/cjs/components/Button/Button.stories.js.map +1 -0
  17. package/dist/cjs/components/Checkbox/Checkbox.stories.d.ts +32 -0
  18. package/dist/cjs/components/Checkbox/Checkbox.stories.js +101 -0
  19. package/dist/cjs/components/Checkbox/Checkbox.stories.js.map +1 -0
  20. package/dist/cjs/components/Checkbox/CheckboxGroup.stories.d.ts +25 -0
  21. package/dist/cjs/components/Checkbox/CheckboxGroup.stories.js +74 -0
  22. package/dist/cjs/components/Checkbox/CheckboxGroup.stories.js.map +1 -0
  23. package/dist/cjs/components/Checkbox/types.d.ts +1 -1
  24. package/dist/cjs/components/Chopin/Actions/Actions.stories.d.ts +13 -0
  25. package/dist/cjs/components/Chopin/Actions/Actions.stories.js +59 -0
  26. package/dist/cjs/components/Chopin/Actions/Actions.stories.js.map +1 -0
  27. package/dist/cjs/components/Chopin/Footer/Footer.stories.d.ts +13 -0
  28. package/dist/cjs/components/Chopin/Footer/Footer.stories.js +169 -0
  29. package/dist/cjs/components/Chopin/Footer/Footer.stories.js.map +1 -0
  30. package/dist/cjs/components/Chopin/Header/Header.stories.d.ts +22 -0
  31. package/dist/cjs/components/Chopin/Header/Header.stories.js +41 -0
  32. package/dist/cjs/components/Chopin/Header/Header.stories.js.map +1 -0
  33. package/dist/cjs/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.d.ts +22 -0
  34. package/dist/cjs/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js +46 -0
  35. package/dist/cjs/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js.map +1 -0
  36. package/dist/cjs/components/Chopin/Question/Question.stories.d.ts +66 -0
  37. package/dist/cjs/components/Chopin/Question/Question.stories.js +139 -0
  38. package/dist/cjs/components/Chopin/Question/Question.stories.js.map +1 -0
  39. package/dist/cjs/components/Chopin/QuestionGroup/QuestionGroup.stories.d.ts +21 -0
  40. package/dist/cjs/components/Chopin/QuestionGroup/QuestionGroup.stories.js +43 -0
  41. package/dist/cjs/components/Chopin/QuestionGroup/QuestionGroup.stories.js.map +1 -0
  42. package/dist/cjs/components/Chopin/Section/Section.stories.d.ts +9 -0
  43. package/dist/cjs/components/Chopin/Section/Section.stories.js +19 -0
  44. package/dist/cjs/components/Chopin/Section/Section.stories.js.map +1 -0
  45. package/dist/cjs/components/Chopin/Steps/Steps.stories.d.ts +9 -0
  46. package/dist/cjs/components/Chopin/Steps/Steps.stories.js +15 -0
  47. package/dist/cjs/components/Chopin/Steps/Steps.stories.js.map +1 -0
  48. package/dist/cjs/components/Chopin/Testimonial/Testimonial.stories.d.ts +9 -0
  49. package/dist/cjs/components/Chopin/Testimonial/Testimonial.stories.js +18 -0
  50. package/dist/cjs/components/Chopin/Testimonial/Testimonial.stories.js.map +1 -0
  51. package/dist/cjs/components/Chopin/TradeSelector/TradeSelector.stories.d.ts +16 -0
  52. package/dist/cjs/components/Chopin/TradeSelector/TradeSelector.stories.js +55 -0
  53. package/dist/cjs/components/Chopin/TradeSelector/TradeSelector.stories.js.map +1 -0
  54. package/dist/cjs/components/Chopin/TradeSelector/TradeSelector.test.js +3 -0
  55. package/dist/cjs/components/Chopin/TradeSelector/TradeSelector.test.js.map +1 -1
  56. package/dist/cjs/components/Container/Container.stories.d.ts +9 -0
  57. package/dist/cjs/components/Container/Container.stories.js +15 -0
  58. package/dist/cjs/components/Container/Container.stories.js.map +1 -0
  59. package/dist/cjs/components/DataTable/DataTable.stories.d.ts +15 -0
  60. package/dist/cjs/components/DataTable/DataTable.stories.js +200 -0
  61. package/dist/cjs/components/DataTable/DataTable.stories.js.map +1 -0
  62. package/dist/cjs/components/DatePicker/DatePicker.stories.d.ts +16 -0
  63. package/dist/cjs/components/DatePicker/DatePicker.stories.js +28 -0
  64. package/dist/cjs/components/DatePicker/DatePicker.stories.js.map +1 -0
  65. package/dist/cjs/components/Divider/Divider.stories.d.ts +13 -0
  66. package/dist/cjs/components/Divider/Divider.stories.js +15 -0
  67. package/dist/cjs/components/Divider/Divider.stories.js.map +1 -0
  68. package/dist/cjs/components/DropdownMenu/DropdownMenu.stories.d.ts +21 -0
  69. package/dist/cjs/components/DropdownMenu/DropdownMenu.stories.js +64 -0
  70. package/dist/cjs/components/DropdownMenu/DropdownMenu.stories.js.map +1 -0
  71. package/dist/cjs/components/ErrorMessage/ErrorMessage.stories.d.ts +14 -0
  72. package/dist/cjs/components/ErrorMessage/ErrorMessage.stories.js +24 -0
  73. package/dist/cjs/components/ErrorMessage/ErrorMessage.stories.js.map +1 -0
  74. package/dist/cjs/components/Fieldset/Fieldset.stories.d.ts +10 -0
  75. package/dist/cjs/components/Fieldset/Fieldset.stories.js +25 -0
  76. package/dist/cjs/components/Fieldset/Fieldset.stories.js.map +1 -0
  77. package/dist/cjs/components/Flex/Flex.stories.d.ts +82 -0
  78. package/dist/cjs/components/Flex/Flex.stories.js +151 -0
  79. package/dist/cjs/components/Flex/Flex.stories.js.map +1 -0
  80. package/dist/cjs/components/Grid/Grid.d.ts +2 -0
  81. package/dist/cjs/components/Grid/Grid.js +10 -4
  82. package/dist/cjs/components/Grid/Grid.js.map +1 -1
  83. package/dist/cjs/components/Grid/Grid.stories.d.ts +86 -0
  84. package/dist/cjs/components/Grid/Grid.stories.js +230 -0
  85. package/dist/cjs/components/Grid/Grid.stories.js.map +1 -0
  86. package/dist/cjs/components/Grid/Item.d.ts +2 -0
  87. package/dist/cjs/components/Grid/Item.js +7 -2
  88. package/dist/cjs/components/Grid/Item.js.map +1 -1
  89. package/dist/cjs/components/Icon/Icon.stories.d.ts +24 -0
  90. package/dist/cjs/components/Icon/Icon.stories.js +46 -0
  91. package/dist/cjs/components/Icon/Icon.stories.js.map +1 -0
  92. package/dist/cjs/components/Icon/types.d.ts +2 -0
  93. package/dist/cjs/components/Image/Image.stories.d.ts +9 -0
  94. package/dist/cjs/components/Image/Image.stories.js +20 -0
  95. package/dist/cjs/components/Image/Image.stories.js.map +1 -0
  96. package/dist/cjs/components/Label/Label.stories.d.ts +9 -0
  97. package/dist/cjs/components/Label/Label.stories.js +18 -0
  98. package/dist/cjs/components/Label/Label.stories.js.map +1 -0
  99. package/dist/cjs/components/Link/Link.stories.d.ts +38 -0
  100. package/dist/cjs/components/Link/Link.stories.js +44 -0
  101. package/dist/cjs/components/Link/Link.stories.js.map +1 -0
  102. package/dist/cjs/components/LinkButton/LinkButton.stories.d.ts +48 -0
  103. package/dist/cjs/components/LinkButton/LinkButton.stories.js +45 -0
  104. package/dist/cjs/components/LinkButton/LinkButton.stories.js.map +1 -0
  105. package/dist/cjs/components/List/List.stories.d.ts +33 -0
  106. package/dist/cjs/components/List/List.stories.js +80 -0
  107. package/dist/cjs/components/List/List.stories.js.map +1 -0
  108. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.d.ts +2 -0
  109. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.js.map +1 -1
  110. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.stories.d.ts +31 -0
  111. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.stories.js +53 -0
  112. package/dist/cjs/components/LoadingIndicator/LoadingIndicator.stories.js.map +1 -0
  113. package/dist/cjs/components/MaskedField/MaskedField.stories.d.ts +16 -0
  114. package/dist/cjs/components/MaskedField/MaskedField.stories.js +25 -0
  115. package/dist/cjs/components/MaskedField/MaskedField.stories.js.map +1 -0
  116. package/dist/cjs/components/Modal/Modal.stories.d.ts +44 -0
  117. package/dist/cjs/components/Modal/Modal.stories.js +82 -0
  118. package/dist/cjs/components/Modal/Modal.stories.js.map +1 -0
  119. package/dist/cjs/components/NumberField/NumberField.stories.d.ts +50 -0
  120. package/dist/cjs/components/NumberField/NumberField.stories.js +106 -0
  121. package/dist/cjs/components/NumberField/NumberField.stories.js.map +1 -0
  122. package/dist/cjs/components/PasswordField/PasswordField.stories.d.ts +28 -0
  123. package/dist/cjs/components/PasswordField/PasswordField.stories.js +34 -0
  124. package/dist/cjs/components/PasswordField/PasswordField.stories.js.map +1 -0
  125. package/dist/cjs/components/Progress/Progress.stories.d.ts +56 -0
  126. package/dist/cjs/components/Progress/Progress.stories.js +92 -0
  127. package/dist/cjs/components/Progress/Progress.stories.js.map +1 -0
  128. package/dist/cjs/components/Radio/Radio.stories.d.ts +39 -0
  129. package/dist/cjs/components/Radio/Radio.stories.js +121 -0
  130. package/dist/cjs/components/Radio/Radio.stories.js.map +1 -0
  131. package/dist/cjs/components/Radio/RadioButton.stories.d.ts +23 -0
  132. package/dist/cjs/components/Radio/RadioButton.stories.js +91 -0
  133. package/dist/cjs/components/Radio/RadioButton.stories.js.map +1 -0
  134. package/dist/cjs/components/SVG/SVG.stories.d.ts +9 -0
  135. package/dist/cjs/components/SVG/SVG.stories.js +22 -0
  136. package/dist/cjs/components/SVG/SVG.stories.js.map +1 -0
  137. package/dist/cjs/components/SVG/SVG.test.js.map +1 -1
  138. package/dist/cjs/components/Segment/Segment.stories.d.ts +32 -0
  139. package/dist/cjs/components/Segment/Segment.stories.js +78 -0
  140. package/dist/cjs/components/Segment/Segment.stories.js.map +1 -0
  141. package/dist/cjs/components/Select/Select.stories.d.ts +31 -0
  142. package/dist/cjs/components/Select/Select.stories.js +82 -0
  143. package/dist/cjs/components/Select/Select.stories.js.map +1 -0
  144. package/dist/cjs/components/Slider/Slider.d.ts +2 -2
  145. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  146. package/dist/cjs/components/Slider/Slider.stories.d.ts +12 -0
  147. package/dist/cjs/components/Slider/Slider.stories.js +66 -0
  148. package/dist/cjs/components/Slider/Slider.stories.js.map +1 -0
  149. package/dist/cjs/components/Table/Table.stories.d.ts +10 -0
  150. package/dist/cjs/components/Table/Table.stories.js +18 -0
  151. package/dist/cjs/components/Table/Table.stories.js.map +1 -0
  152. package/dist/cjs/components/Text/Text.stories.d.ts +10 -0
  153. package/dist/cjs/components/Text/Text.stories.js +29 -0
  154. package/dist/cjs/components/Text/Text.stories.js.map +1 -0
  155. package/dist/cjs/components/TextArea/TextArea.stories.d.ts +26 -0
  156. package/dist/cjs/components/TextArea/TextArea.stories.js +83 -0
  157. package/dist/cjs/components/TextArea/TextArea.stories.js.map +1 -0
  158. package/dist/cjs/components/TextField/TextField.stories.d.ts +36 -0
  159. package/dist/cjs/components/TextField/TextField.stories.js +103 -0
  160. package/dist/cjs/components/TextField/TextField.stories.js.map +1 -0
  161. package/dist/cjs/components/Title/Title.stories.d.ts +9 -0
  162. package/dist/cjs/components/Title/Title.stories.js +19 -0
  163. package/dist/cjs/components/Title/Title.stories.js.map +1 -0
  164. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.stories.d.ts +9 -0
  165. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.stories.js +15 -0
  166. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.stories.js.map +1 -0
  167. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.stories.d.ts +11 -0
  168. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.stories.js +43 -0
  169. package/dist/cjs/hooks/useBreakpoint/useBreakpoint.stories.js.map +1 -0
  170. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  171. package/dist/esm/components/Accordion/Accordion.stories.js +45 -0
  172. package/dist/esm/components/Accordion/Accordion.stories.js.map +1 -0
  173. package/dist/esm/components/Alert/Alert.stories.js +32 -0
  174. package/dist/esm/components/Alert/Alert.stories.js.map +1 -0
  175. package/dist/esm/components/Box/Box.stories.js +20 -0
  176. package/dist/esm/components/Box/Box.stories.js.map +1 -0
  177. package/dist/esm/components/Breadcrumbs/Breadcrumbs.stories.js +17 -0
  178. package/dist/esm/components/Breadcrumbs/Breadcrumbs.stories.js.map +1 -0
  179. package/dist/esm/components/Button/Button.stories.js +198 -0
  180. package/dist/esm/components/Button/Button.stories.js.map +1 -0
  181. package/dist/esm/components/Checkbox/Checkbox.stories.js +98 -0
  182. package/dist/esm/components/Checkbox/Checkbox.stories.js.map +1 -0
  183. package/dist/esm/components/Checkbox/CheckboxGroup.stories.js +71 -0
  184. package/dist/esm/components/Checkbox/CheckboxGroup.stories.js.map +1 -0
  185. package/dist/esm/components/Chopin/Actions/Actions.stories.js +56 -0
  186. package/dist/esm/components/Chopin/Actions/Actions.stories.js.map +1 -0
  187. package/dist/esm/components/Chopin/Footer/Footer.stories.js +166 -0
  188. package/dist/esm/components/Chopin/Footer/Footer.stories.js.map +1 -0
  189. package/dist/esm/components/Chopin/Header/Header.stories.js +38 -0
  190. package/dist/esm/components/Chopin/Header/Header.stories.js.map +1 -0
  191. package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js +43 -0
  192. package/dist/esm/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.js.map +1 -0
  193. package/dist/esm/components/Chopin/Question/Question.stories.js +136 -0
  194. package/dist/esm/components/Chopin/Question/Question.stories.js.map +1 -0
  195. package/dist/esm/components/Chopin/QuestionGroup/QuestionGroup.stories.js +40 -0
  196. package/dist/esm/components/Chopin/QuestionGroup/QuestionGroup.stories.js.map +1 -0
  197. package/dist/esm/components/Chopin/Section/Section.stories.js +16 -0
  198. package/dist/esm/components/Chopin/Section/Section.stories.js.map +1 -0
  199. package/dist/esm/components/Chopin/Steps/Steps.stories.js +12 -0
  200. package/dist/esm/components/Chopin/Steps/Steps.stories.js.map +1 -0
  201. package/dist/esm/components/Chopin/Testimonial/Testimonial.stories.js +15 -0
  202. package/dist/esm/components/Chopin/Testimonial/Testimonial.stories.js.map +1 -0
  203. package/dist/esm/components/Chopin/TradeSelector/TradeSelector.stories.js +52 -0
  204. package/dist/esm/components/Chopin/TradeSelector/TradeSelector.stories.js.map +1 -0
  205. package/dist/esm/components/Chopin/TradeSelector/TradeSelector.test.js +3 -0
  206. package/dist/esm/components/Chopin/TradeSelector/TradeSelector.test.js.map +1 -1
  207. package/dist/esm/components/Container/Container.stories.js +12 -0
  208. package/dist/esm/components/Container/Container.stories.js.map +1 -0
  209. package/dist/esm/components/DataTable/DataTable.stories.js +174 -0
  210. package/dist/esm/components/DataTable/DataTable.stories.js.map +1 -0
  211. package/dist/esm/components/DatePicker/DatePicker.stories.js +25 -0
  212. package/dist/esm/components/DatePicker/DatePicker.stories.js.map +1 -0
  213. package/dist/esm/components/Divider/Divider.stories.js +12 -0
  214. package/dist/esm/components/Divider/Divider.stories.js.map +1 -0
  215. package/dist/esm/components/DropdownMenu/DropdownMenu.stories.js +58 -0
  216. package/dist/esm/components/DropdownMenu/DropdownMenu.stories.js.map +1 -0
  217. package/dist/esm/components/ErrorMessage/ErrorMessage.stories.js +21 -0
  218. package/dist/esm/components/ErrorMessage/ErrorMessage.stories.js.map +1 -0
  219. package/dist/esm/components/Fieldset/Fieldset.stories.js +22 -0
  220. package/dist/esm/components/Fieldset/Fieldset.stories.js.map +1 -0
  221. package/dist/esm/components/Flex/Flex.stories.js +148 -0
  222. package/dist/esm/components/Flex/Flex.stories.js.map +1 -0
  223. package/dist/esm/components/Grid/Grid.js +8 -5
  224. package/dist/esm/components/Grid/Grid.js.map +1 -1
  225. package/dist/esm/components/Grid/Grid.stories.js +227 -0
  226. package/dist/esm/components/Grid/Grid.stories.js.map +1 -0
  227. package/dist/esm/components/Grid/Item.js +5 -3
  228. package/dist/esm/components/Grid/Item.js.map +1 -1
  229. package/dist/esm/components/Icon/Icon.stories.js +43 -0
  230. package/dist/esm/components/Icon/Icon.stories.js.map +1 -0
  231. package/dist/esm/components/Image/Image.stories.js +17 -0
  232. package/dist/esm/components/Image/Image.stories.js.map +1 -0
  233. package/dist/esm/components/Label/Label.stories.js +15 -0
  234. package/dist/esm/components/Label/Label.stories.js.map +1 -0
  235. package/dist/esm/components/Link/Link.stories.js +41 -0
  236. package/dist/esm/components/Link/Link.stories.js.map +1 -0
  237. package/dist/esm/components/LinkButton/LinkButton.stories.js +42 -0
  238. package/dist/esm/components/LinkButton/LinkButton.stories.js.map +1 -0
  239. package/dist/esm/components/List/List.stories.js +77 -0
  240. package/dist/esm/components/List/List.stories.js.map +1 -0
  241. package/dist/esm/components/LoadingIndicator/LoadingIndicator.js.map +1 -1
  242. package/dist/esm/components/LoadingIndicator/LoadingIndicator.stories.js +50 -0
  243. package/dist/esm/components/LoadingIndicator/LoadingIndicator.stories.js.map +1 -0
  244. package/dist/esm/components/MaskedField/MaskedField.stories.js +22 -0
  245. package/dist/esm/components/MaskedField/MaskedField.stories.js.map +1 -0
  246. package/dist/esm/components/Modal/Modal.stories.js +79 -0
  247. package/dist/esm/components/Modal/Modal.stories.js.map +1 -0
  248. package/dist/esm/components/NumberField/NumberField.stories.js +103 -0
  249. package/dist/esm/components/NumberField/NumberField.stories.js.map +1 -0
  250. package/dist/esm/components/PasswordField/PasswordField.stories.js +31 -0
  251. package/dist/esm/components/PasswordField/PasswordField.stories.js.map +1 -0
  252. package/dist/esm/components/Progress/Progress.stories.js +89 -0
  253. package/dist/esm/components/Progress/Progress.stories.js.map +1 -0
  254. package/dist/esm/components/Radio/Radio.stories.js +118 -0
  255. package/dist/esm/components/Radio/Radio.stories.js.map +1 -0
  256. package/dist/esm/components/Radio/RadioButton.stories.js +88 -0
  257. package/dist/esm/components/Radio/RadioButton.stories.js.map +1 -0
  258. package/dist/esm/components/SVG/SVG.stories.js +19 -0
  259. package/dist/esm/components/SVG/SVG.stories.js.map +1 -0
  260. package/dist/esm/components/SVG/SVG.test.js.map +1 -1
  261. package/dist/esm/components/Segment/Segment.stories.js +75 -0
  262. package/dist/esm/components/Segment/Segment.stories.js.map +1 -0
  263. package/dist/esm/components/Select/Select.stories.js +79 -0
  264. package/dist/esm/components/Select/Select.stories.js.map +1 -0
  265. package/dist/esm/components/Slider/Slider.js.map +1 -1
  266. package/dist/esm/components/Slider/Slider.stories.js +63 -0
  267. package/dist/esm/components/Slider/Slider.stories.js.map +1 -0
  268. package/dist/esm/components/Table/Table.stories.js +15 -0
  269. package/dist/esm/components/Table/Table.stories.js.map +1 -0
  270. package/dist/esm/components/Text/Text.stories.js +26 -0
  271. package/dist/esm/components/Text/Text.stories.js.map +1 -0
  272. package/dist/esm/components/TextArea/TextArea.stories.js +80 -0
  273. package/dist/esm/components/TextArea/TextArea.stories.js.map +1 -0
  274. package/dist/esm/components/TextField/TextField.stories.js +100 -0
  275. package/dist/esm/components/TextField/TextField.stories.js.map +1 -0
  276. package/dist/esm/components/Title/Title.stories.js +16 -0
  277. package/dist/esm/components/Title/Title.stories.js.map +1 -0
  278. package/dist/esm/components/VisuallyHidden/VisuallyHidden.stories.js +12 -0
  279. package/dist/esm/components/VisuallyHidden/VisuallyHidden.stories.js.map +1 -0
  280. package/dist/esm/hooks/useBreakpoint/useBreakpoint.stories.js +40 -0
  281. package/dist/esm/hooks/useBreakpoint/useBreakpoint.stories.js.map +1 -0
  282. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  283. package/dist/mobius.d.ts +11 -2
  284. package/package.json +2 -2
  285. package/src/components/Accordion/{Accordion.story.mdx → Accordion.mdx} +15 -96
  286. package/src/components/Accordion/Accordion.stories.tsx +87 -0
  287. package/src/components/Alert/{Alert.story.mdx → Alert.mdx} +5 -35
  288. package/src/components/Alert/Alert.stories.tsx +47 -0
  289. package/src/components/Box/{Box.story.mdx → Box.mdx} +5 -21
  290. package/src/components/Box/Box.stories.tsx +26 -0
  291. package/src/components/Breadcrumbs/{Breadcrumbs.story.mdx → Breadcrumbs.mdx} +15 -48
  292. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +52 -0
  293. package/src/components/Button/Button.mdx +227 -0
  294. package/src/components/Button/Button.stories.tsx +225 -0
  295. package/src/components/Button/Button.story.styles.css +3 -0
  296. package/src/components/Checkbox/Checkbox.mdx +122 -0
  297. package/src/components/Checkbox/Checkbox.stories.tsx +122 -0
  298. package/src/components/Checkbox/{CheckboxGroup.story.mdx → CheckboxGroup.mdx} +12 -114
  299. package/src/components/Checkbox/CheckboxGroup.stories.tsx +109 -0
  300. package/src/components/Checkbox/types.ts +1 -1
  301. package/src/components/Chopin/Actions/{Actions.story.mdx → Actions.mdx} +17 -88
  302. package/src/components/Chopin/Actions/Actions.stories.tsx +81 -0
  303. package/src/components/Chopin/Footer/Footer.mdx +163 -0
  304. package/src/components/Chopin/Footer/Footer.stories.tsx +217 -0
  305. package/src/components/Chopin/Header/{Header.story.mdx → Header.mdx} +7 -47
  306. package/src/components/Chopin/Header/Header.stories.tsx +50 -0
  307. package/src/components/Chopin/PercentageTotalsQuestion/{PercentageTotalsQuestion.story.mdx → PercentageTotalsQuestion.mdx} +4 -36
  308. package/src/components/Chopin/PercentageTotalsQuestion/PercentageTotalsQuestion.stories.tsx +63 -0
  309. package/src/components/Chopin/Question/{Question.story.mdx → Question.mdx} +29 -227
  310. package/src/components/Chopin/Question/Question.stories.tsx +211 -0
  311. package/src/components/Chopin/QuestionGroup/QuestionGroup.mdx +149 -0
  312. package/src/components/Chopin/QuestionGroup/QuestionGroup.stories.tsx +187 -0
  313. package/src/components/Chopin/Section/{Section.story.mdx → Section.mdx} +6 -24
  314. package/src/components/Chopin/Section/Section.stories.tsx +30 -0
  315. package/src/components/Chopin/Steps/{Steps.story.mdx → Steps.mdx} +6 -20
  316. package/src/components/Chopin/Steps/Steps.stories.tsx +22 -0
  317. package/src/components/Chopin/Testimonial/{Testimonial.story.mdx → Testimonial.mdx} +4 -14
  318. package/src/components/Chopin/Testimonial/Testimonial.stories.tsx +23 -0
  319. package/src/components/Chopin/TradeSelector/{TradeSelector.story.mdx → TradeSelector.mdx} +14 -52
  320. package/src/components/Chopin/TradeSelector/TradeSelector.stories.tsx +67 -0
  321. package/src/components/Chopin/TradeSelector/TradeSelector.test.tsx +3 -0
  322. package/src/components/Container/{Container.story.mdx → Container.mdx} +4 -16
  323. package/src/components/Container/Container.stories.tsx +20 -0
  324. package/src/components/DataTable/{DataTable.story.mdx → DataTable.mdx} +10 -203
  325. package/src/components/DataTable/DataTable.stories.tsx +228 -0
  326. package/src/components/DatePicker/{DatePicker.story.mdx → DatePicker.mdx} +9 -29
  327. package/src/components/DatePicker/DatePicker.stories.tsx +32 -0
  328. package/src/components/Divider/{Divider.story.mdx → Divider.mdx} +4 -9
  329. package/src/components/Divider/Divider.stories.tsx +13 -0
  330. package/src/components/DropdownMenu/{DropdownMenu.story.mdx → DropdownMenu.mdx} +5 -39
  331. package/src/components/DropdownMenu/DropdownMenu.stories.tsx +84 -0
  332. package/src/components/DropdownMenu/DropdownMenu.story.styles.css +12 -0
  333. package/src/components/ErrorMessage/ErrorMessage.mdx +39 -0
  334. package/src/components/ErrorMessage/ErrorMessage.stories.tsx +24 -0
  335. package/src/components/Fieldset/{Fieldset.story.mdx → Fieldset.mdx} +5 -28
  336. package/src/components/Fieldset/Fieldset.stories.tsx +40 -0
  337. package/src/components/Flex/{Flex.story.mdx → Flex.mdx} +13 -150
  338. package/src/components/Flex/Flex.stories.tsx +182 -0
  339. package/src/components/Grid/{Grid.story.mdx → Grid.mdx} +78 -360
  340. package/src/components/Grid/Grid.stories.tsx +375 -0
  341. package/src/components/Grid/Grid.story.styles.css +4 -0
  342. package/src/components/Grid/Grid.tsx +16 -4
  343. package/src/components/Grid/Item.tsx +14 -2
  344. package/src/components/Icon/Icon.mdx +75 -0
  345. package/src/components/Icon/Icon.stories.tsx +50 -0
  346. package/src/components/Icon/types.ts +2 -0
  347. package/src/components/Image/{Image.story.mdx → Image.mdx} +4 -9
  348. package/src/components/Image/Image.stories.tsx +20 -0
  349. package/src/components/Label/{Label.story.mdx → Label.mdx} +4 -9
  350. package/src/components/Label/Label.stories.tsx +16 -0
  351. package/src/components/Link/{Link.story.mdx → Link.mdx} +8 -52
  352. package/src/components/Link/Link.stories.tsx +50 -0
  353. package/src/components/LinkButton/LinkButton.mdx +45 -0
  354. package/src/components/LinkButton/LinkButton.stories.tsx +61 -0
  355. package/src/components/List/{List.story.mdx → List.mdx} +18 -113
  356. package/src/components/List/List.stories.tsx +135 -0
  357. package/src/components/LoadingIndicator/LoadingIndicator.mdx +59 -0
  358. package/src/components/LoadingIndicator/LoadingIndicator.stories.tsx +59 -0
  359. package/src/components/LoadingIndicator/LoadingIndicator.tsx +2 -0
  360. package/src/components/MaskedField/{MaskedField.story.mdx → MaskedField.mdx} +11 -12
  361. package/src/components/MaskedField/MaskedField.stories.tsx +26 -0
  362. package/src/components/Modal/{Modal.story.mdx → Modal.mdx} +20 -84
  363. package/src/components/Modal/Modal.stories.tsx +181 -0
  364. package/src/components/NumberField/NumberField.mdx +104 -0
  365. package/src/components/NumberField/NumberField.stories.tsx +114 -0
  366. package/src/components/PasswordField/{PasswordField.story.mdx → PasswordField.mdx} +10 -49
  367. package/src/components/PasswordField/PasswordField.stories.tsx +36 -0
  368. package/src/components/Progress/Progress.mdx +83 -0
  369. package/src/components/Progress/Progress.stories.tsx +105 -0
  370. package/src/components/Radio/Radio.mdx +202 -0
  371. package/src/components/Radio/Radio.stories.tsx +202 -0
  372. package/src/components/Radio/{RadioButton.story.mdx → RadioButton.mdx} +15 -156
  373. package/src/components/Radio/RadioButton.stories.tsx +153 -0
  374. package/src/components/SVG/{SVG.story.mdx → SVG.mdx} +5 -10
  375. package/src/components/SVG/SVG.stories.tsx +29 -0
  376. package/src/components/SVG/SVG.test.tsx +3 -14
  377. package/src/components/Segment/{Segment.story.mdx → Segment.mdx} +79 -107
  378. package/src/components/Segment/Segment.stories.tsx +129 -0
  379. package/src/components/Select/{Select.story.mdx → Select.mdx} +25 -186
  380. package/src/components/Select/Select.stories.tsx +163 -0
  381. package/src/components/Slider/Slider.mdx +55 -0
  382. package/src/components/Slider/Slider.stories.tsx +82 -0
  383. package/src/components/Slider/Slider.tsx +5 -2
  384. package/src/components/Table/Table.mdx +74 -0
  385. package/src/components/Table/Table.stories.tsx +149 -0
  386. package/src/components/Text/{Text.story.mdx → Text.mdx} +20 -16
  387. package/src/components/Text/Text.stories.tsx +28 -0
  388. package/src/components/TextArea/TextArea.mdx +82 -0
  389. package/src/components/TextArea/TextArea.stories.tsx +89 -0
  390. package/src/components/TextField/TextField.mdx +122 -0
  391. package/src/components/TextField/TextField.stories.tsx +111 -0
  392. package/src/components/Title/{Title.story.mdx → Title.mdx} +4 -12
  393. package/src/components/Title/Title.stories.tsx +17 -0
  394. package/src/components/VisuallyHidden/{VisuallyHidden.story.mdx → VisuallyHidden.mdx} +4 -13
  395. package/src/components/VisuallyHidden/VisuallyHidden.stories.tsx +17 -0
  396. package/src/hooks/useBreakpoint/{useBreakpoint.story.mdx → useBreakpoint.mdx} +6 -47
  397. package/src/hooks/useBreakpoint/useBreakpoint.stories.tsx +61 -0
  398. package/src/components/Button/Button.story.mdx +0 -401
  399. package/src/components/Checkbox/Checkbox.story.mdx +0 -233
  400. package/src/components/Chopin/Footer/Footer.story.mdx +0 -368
  401. package/src/components/Chopin/QuestionGroup/QuestionGroup.story.mdx +0 -309
  402. package/src/components/ErrorMessage/ErrorMessage.story.mdx +0 -57
  403. package/src/components/Icon/Icon.story.mdx +0 -175
  404. package/src/components/LinkButton/LinkButton.story.mdx +0 -96
  405. package/src/components/LoadingIndicator/LoadingIndicator.story.mdx +0 -96
  406. package/src/components/NumberField/NumberField.story.mdx +0 -193
  407. package/src/components/Progress/Progress.story.mdx +0 -172
  408. package/src/components/Radio/Radio.story.mdx +0 -402
  409. package/src/components/Slider/Slider.story.mdx +0 -130
  410. package/src/components/Table/Table.story.mdx +0 -213
  411. package/src/components/TextArea/TextArea.story.mdx +0 -172
  412. package/src/components/TextField/TextField.story.mdx +0 -232
@@ -0,0 +1,149 @@
1
+ import type { Meta } from "@storybook/react";
2
+ import { Table, TableProps } from ".";
3
+ import { excludeControls } from "../../utils/excludeControls";
4
+
5
+ export default {
6
+ title: "Components/Table",
7
+ component: Table,
8
+ argTypes: excludeControls("className"),
9
+ };
10
+
11
+ export const Normal: Meta<typeof Table> = {
12
+ render: (args: TableProps) => (
13
+ <Table {...args}>
14
+ <Table.Head>
15
+ <Table.Row>
16
+ <Table.HeaderCell>Insurance cover</Table.HeaderCell>
17
+ <Table.HeaderCell>Lowest excess</Table.HeaderCell>
18
+ <Table.HeaderCell>Highest excess</Table.HeaderCell>
19
+ </Table.Row>
20
+ </Table.Head>
21
+ <Table.Body>
22
+ <Table.Row>
23
+ <Table.Cell>Public liability</Table.Cell>
24
+ <Table.Cell>£250</Table.Cell>
25
+ <Table.Cell>£2,500</Table.Cell>
26
+ </Table.Row>
27
+ <Table.Row>
28
+ <Table.Cell>Employers&lsquo; liability</Table.Cell>
29
+ <Table.Cell>£250</Table.Cell>
30
+ <Table.Cell>£500</Table.Cell>
31
+ </Table.Row>
32
+ <Table.Row>
33
+ <Table.Cell>Tools</Table.Cell>
34
+ <Table.Cell>£100</Table.Cell>
35
+ <Table.Cell>£500</Table.Cell>
36
+ </Table.Row>
37
+ <Table.Row>
38
+ <Table.Cell>Stock</Table.Cell>
39
+ <Table.Cell>£250</Table.Cell>
40
+ <Table.Cell>£500</Table.Cell>
41
+ </Table.Row>
42
+ <Table.Row>
43
+ <Table.Cell>Business and office equipment</Table.Cell>
44
+ <Table.Cell>£50</Table.Cell>
45
+ <Table.Cell>£500</Table.Cell>
46
+ </Table.Row>
47
+ </Table.Body>
48
+ </Table>
49
+ ),
50
+ };
51
+
52
+ export const Extended: Meta<typeof Table> = {
53
+ render: (args: TableProps) => (
54
+ <Table {...args}>
55
+ <Table.Head>
56
+ <Table.Row>
57
+ <Table.HeaderCell>Column one</Table.HeaderCell>
58
+ <Table.HeaderCell>Column two</Table.HeaderCell>
59
+ <Table.HeaderCell>Column three</Table.HeaderCell>
60
+ <Table.HeaderCell>Column four</Table.HeaderCell>
61
+ <Table.HeaderCell>Column five</Table.HeaderCell>
62
+ <Table.HeaderCell>Column six</Table.HeaderCell>
63
+ <Table.HeaderCell>Column seven</Table.HeaderCell>
64
+ </Table.Row>
65
+ </Table.Head>
66
+ <Table.Body>
67
+ <Table.Row>
68
+ <Table.Cell>Lorem</Table.Cell>
69
+ <Table.Cell>Ipsum</Table.Cell>
70
+ <Table.Cell>
71
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi
72
+ pulvinar tincidunt lorem vel vulputate. Quisque vulputate sed tortor
73
+ a aliquet. Curabitur egestas sodales nunc, bibendum cursus mi
74
+ ultrices vitae.
75
+ </Table.Cell>
76
+ <Table.Cell>
77
+ Vestibulum nec dolor urna. In ullamcorper auctor dignissim. Quisque
78
+ faucibus, nisi in faucibus cursus, turpis mi ullamcorper arcu, id
79
+ tempor enim ipsum eu elit. Mauris gravida libero nisl, in consequat
80
+ justo accumsan quis. Phasellus finibus ultrices blandit. Donec
81
+ vehicula leo odio, in dapibus massa scelerisque ac. Aliquam nec dui
82
+ erat. Duis auctor mauris in dolor accumsan elementum. Donec vehicula
83
+ commodo urna quis pretium. Nullam a dui sit amet nisi porta
84
+ sollicitudin.
85
+ </Table.Cell>
86
+ <Table.Cell>
87
+ Vestibulum nec dolor urna. In ullamcorper auctor dignissim. Quisque
88
+ faucibus, nisi in faucibus cursus, turpis mi ullamcorper arcu, id
89
+ tempor enim ipsum eu elit. Mauris gravida libero nisl, in consequat
90
+ justo accumsan quis.
91
+ </Table.Cell>
92
+ <Table.Cell>
93
+ Phasellus finibus ultrices blandit. Donec vehicula leo odio, in
94
+ dapibus massa scelerisque ac. Aliquam nec dui erat. Duis auctor
95
+ mauris in dolor accumsan elementum. Donec vehicula commodo urna quis
96
+ pretium. Nullam a dui sit amet nisi porta sollicitudin.
97
+ </Table.Cell>
98
+ <Table.Cell>
99
+ Nullam a dui sit amet nisi porta sollicitudin.
100
+ </Table.Cell>
101
+ </Table.Row>
102
+ <Table.Row>
103
+ <Table.Cell>Lorem</Table.Cell>
104
+ <Table.Cell>Ipsum</Table.Cell>
105
+ <Table.Cell>
106
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi
107
+ pulvinar tincidunt lorem vel vulputate. Quisque vulputate sed tortor
108
+ a aliquet. Curabitur egestas sodales nunc, bibendum cursus mi
109
+ ultrices vitae.
110
+ </Table.Cell>
111
+ <Table.Cell>
112
+ Vestibulum nec dolor urna. In ullamcorper auctor dignissim. Quisque
113
+ faucibus, nisi in faucibus cursus, turpis mi ullamcorper arcu, id
114
+ tempor enim ipsum eu elit. Mauris gravida libero nisl, in consequat
115
+ justo accumsan quis. Phasellus finibus ultrices blandit. Donec
116
+ vehicula leo odio, in dapibus massa scelerisque ac. Aliquam nec dui
117
+ erat. Duis auctor mauris in dolor accumsan elementum. Donec vehicula
118
+ commodo urna quis pretium. Nullam a dui sit amet nisi porta
119
+ sollicitudin.
120
+ </Table.Cell>
121
+ <Table.Cell>
122
+ Vestibulum nec dolor urna. In ullamcorper auctor dignissim. Quisque
123
+ faucibus, nisi in faucibus cursus, turpis mi ullamcorper arcu, id
124
+ tempor enim ipsum eu elit. Mauris gravida libero nisl, in consequat
125
+ justo accumsan quis.
126
+ </Table.Cell>
127
+ <Table.Cell>
128
+ Phasellus finibus ultrices blandit. Donec vehicula leo odio, in
129
+ dapibus massa scelerisque ac. Aliquam nec dui erat. Duis auctor
130
+ mauris in dolor accumsan elementum. Donec vehicula commodo urna quis
131
+ pretium. Nullam a dui sit amet nisi porta sollicitudin.
132
+ </Table.Cell>
133
+ <Table.Cell>
134
+ Nullam a dui sit amet nisi porta sollicitudin.
135
+ </Table.Cell>
136
+ </Table.Row>
137
+ <Table.Row>
138
+ <Table.Cell>Public liability</Table.Cell>
139
+ <Table.Cell>£250</Table.Cell>
140
+ <Table.Cell>£2,500</Table.Cell>
141
+ <Table.Cell>£2,500</Table.Cell>
142
+ <Table.Cell>£2,500</Table.Cell>
143
+ <Table.Cell>£2,500</Table.Cell>
144
+ <Table.Cell>£2,500</Table.Cell>
145
+ </Table.Row>
146
+ </Table.Body>
147
+ </Table>
148
+ ),
149
+ };
@@ -1,13 +1,10 @@
1
- import { Meta, ArgsTable, Canvas, Story } from "@storybook/addon-docs";
1
+ import { Meta, ArgsTable, Canvas, Story } from "@storybook/blocks";
2
2
  import { Text } from "./Text";
3
3
  import { Box } from "..";
4
4
  import { excludeControls } from "../../utils/excludeControls";
5
+ import * as TextStories from "./Text.stories";
5
6
 
6
- <Meta
7
- title="Components/Text"
8
- component={Text}
9
- argTypes={excludeControls("className", "style")}
10
- />
7
+ <Meta of={TextStories} />
11
8
 
12
9
  # Text
13
10
 
@@ -37,8 +34,10 @@ import { Text } from "@simplybusiness/mobius";
37
34
  <Text elementType="h6">Heading 6</Text>
38
35
  <Text>Paragraph</Text>
39
36
  </Box>
37
+
40
38
  <Box>
41
39
  <Text elementType="h1">First Heading</Text>
40
+
42
41
  <Text>
43
42
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi vel lorem
44
43
  enim. Nam vitae enim mollis turpis scelerisque vulputate id sit amet nisl.
@@ -50,6 +49,7 @@ import { Text } from "@simplybusiness/mobius";
50
49
  feugiat libero id, tincidunt turpis. Nam ullamcorper enim in leo dapibus
51
50
  aliquam eu sit amet erat. Morbi iaculis magna ut tincidunt rhoncus.
52
51
  </Text>
52
+
53
53
  <Text>
54
54
  Mauris pharetra enim et turpis lacinia, quis porta velit commodo. Proin at
55
55
  vehicula ligula, ut semper sapien. Donec felis elit, pretium vitae viverra
@@ -59,7 +59,9 @@ import { Text } from "@simplybusiness/mobius";
59
59
  sed sapien gravida bibendum. Praesent a malesuada ipsum. Vivamus ac congue
60
60
  odio.
61
61
  </Text>
62
+
62
63
  <Text elementType="h2">Second Heading</Text>
64
+
63
65
  <Text>
64
66
  Ut vel lectus arcu. Etiam ut efficitur turpis, pretium pretium nunc. Ut
65
67
  dolor nibh, facilisis at tempus at, iaculis sed mi. Etiam sollicitudin,
@@ -72,27 +74,21 @@ import { Text } from "@simplybusiness/mobius";
72
74
  varius urna venenatis vel. Aenean mollis arcu purus, id pretium ligula
73
75
  facilisis et.
74
76
  </Text>
77
+
75
78
  </Box>
76
79
  </Canvas>
77
80
 
78
81
  ### Normal
79
82
 
80
83
  <Canvas>
81
- <Story name="Normal" args={{ elementType: "h4", variant: "h4" }}>
82
- {args => <Text {...args}>Sample Text</Text>}
83
- </Story>
84
+ <Story of={TextStories.Normal} />
84
85
  </Canvas>
85
86
 
86
87
  ### Themed
87
88
 
88
- <Story
89
- name="Themed"
90
- args={{ elementType: "h4", variant: "h4", style: { color: "green" } }}
91
- >
92
- {args => <Text {...args}>Sample Text</Text>}
93
- </Story>
89
+ <Story of={TextStories.Themed} />
94
90
 
95
- <!-- prettier-ignore -->
91
+ {/* prettier-ignore */}
96
92
  ```jsx
97
93
  import { Text } from "@simplybusiness/mobius";
98
94
  import styled from "@emotion/styled";
@@ -129,35 +125,43 @@ Set the spacing to "loose" or "tight" to override the default line height for te
129
125
  <Canvas>
130
126
  <Box>
131
127
  <Text variant="h3">Tight Spacing</Text>
128
+
132
129
  <Text spacing="tight">
133
130
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi vel lorem
134
131
  enim. Nam vitae enim mollis turpis scelerisque vulputate id sit amet nisl.
135
132
  Etiam et tortor a nunc hendrerit luctus sed at nunc.
136
133
  </Text>
134
+
137
135
  <Text spacing="tight">
138
136
  Mauris pharetra enim et turpis lacinia, quis porta velit commodo.
139
137
  Scelerisque vulputate id sit amet nisl. Etiam et tortor a nunc hendrerit
140
138
  luctus sed at nunc.
141
139
  </Text>
140
+
142
141
  <Text spacing="tight">
143
142
  Ut vel lectus arcu. Etiam ut efficitur turpis, pretium pretium nunc. Ut
144
143
  dolor nibh, facilisis at tempus at, iaculis sed mi.
145
144
  </Text>
145
+
146
146
  <Text variant="h3">Loose Spacing</Text>
147
+
147
148
  <Text>
148
149
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi vel lorem
149
150
  enim. Nam vitae enim mollis turpis scelerisque vulputate id sit amet nisl.
150
151
  Etiam et tortor a nunc hendrerit luctus sed at nunc.
151
152
  </Text>
153
+
152
154
  <Text>
153
155
  Mauris pharetra enim et turpis lacinia, quis porta velit commodo.
154
156
  Scelerisque vulputate id sit amet nisl. Etiam et tortor a nunc hendrerit
155
157
  luctus sed at nunc.
156
158
  </Text>
159
+
157
160
  <Text>
158
161
  Ut vel lectus arcu. Etiam ut efficitur turpis, pretium pretium nunc. Ut
159
162
  dolor nibh, facilisis at tempus at, iaculis sed mi.
160
163
  </Text>
164
+
161
165
  </Box>
162
166
  </Canvas>
163
167
 
@@ -0,0 +1,28 @@
1
+ import type { Meta } from "@storybook/react";
2
+ import { Text, TextProps } from "./Text";
3
+ import { excludeControls } from "../../utils/excludeControls";
4
+
5
+ export default {
6
+ title: "Components/Text",
7
+ component: Text,
8
+ argTypes: excludeControls("className", "style"),
9
+ };
10
+
11
+ export const Normal: Meta<typeof Text> = {
12
+ render: (args: TextProps) => <Text {...args}>Sample Text</Text>,
13
+ args: {
14
+ elementType: "h4",
15
+ variant: "h4",
16
+ },
17
+ };
18
+
19
+ export const Themed: Meta<typeof Text> = {
20
+ render: (args: TextProps) => <Text {...args}>Sample Text</Text>,
21
+ args: {
22
+ elementType: "h4",
23
+ variant: "h4",
24
+ style: {
25
+ color: "green",
26
+ },
27
+ },
28
+ };
@@ -0,0 +1,82 @@
1
+ import { Meta, ArgsTable, Canvas, Story } from "@storybook/blocks";
2
+ import { TextArea } from "./TextArea";
3
+ import { excludeControls } from "../../utils/excludeControls";
4
+ import * as TextAreaStories from "./TextArea.stories";
5
+
6
+ <Meta of={TextAreaStories} />
7
+
8
+ # TextArea
9
+
10
+ TextArea behaves exactly like TextField, except it renders a text area input.
11
+
12
+ ## Install
13
+
14
+ ```bash
15
+ yarn add @simplybusiness/mobius
16
+ ```
17
+
18
+ ## Usage
19
+
20
+ ```js
21
+ import { TextArea } from "@simplybusiness/mobius";
22
+ ```
23
+
24
+ Refer to [TextField docs](/story/core-docs-textfield--page) for usage and examples.
25
+
26
+ ## Examples
27
+
28
+ ### Normal
29
+
30
+ <Canvas>
31
+ <Story of={TextAreaStories.Normal} />
32
+ </Canvas>
33
+
34
+ ### Controlled Value
35
+
36
+ <Canvas>
37
+ <Story of={TextAreaStories.ControlledValue} />
38
+ </Canvas>
39
+
40
+ ### Disabled
41
+
42
+ <Canvas>
43
+ <Story of={TextAreaStories.Disabled} />
44
+ </Canvas>
45
+
46
+ ### With Error
47
+
48
+ <Canvas>
49
+ <Story of={TextAreaStories.WithError} />
50
+ </Canvas>
51
+
52
+ ### Valid
53
+
54
+ <Canvas>
55
+ <Story of={TextAreaStories.Valid} />
56
+ </Canvas>
57
+
58
+ ### Invalid
59
+
60
+ <Canvas>
61
+ <Story of={TextAreaStories.Invalid} />
62
+ </Canvas>
63
+
64
+ ## Props
65
+
66
+ <ArgsTable of={TextArea} />
67
+
68
+ ## Component HTML Structure and Class names
69
+
70
+ The following HTML is rendered for a TextArea:
71
+
72
+ ```html
73
+ <div class="mobius/TextArea">
74
+ <label class="mobius/Label">{label}</label>
75
+ <textarea class="mobius/TextAreaInput">{text}</textarea>
76
+ <div class="mobius/ErrorMessage">{errors}</div>
77
+ </div>
78
+ ```
79
+
80
+ ---
81
+
82
+ [See on Github](https://github.com/simplybusiness/mobius/tree/master/packages/mobius/src/components/TextArea) | [Give feedback](https://simplybusiness.atlassian.net/CreateIssue.jspa?issuetype=10103&pid=10609) | [Get support](https://simplybusiness.slack.com/archives/C016CC0NDNE)
@@ -0,0 +1,89 @@
1
+ import type { Meta } from "@storybook/react";
2
+ import { TextArea, TextAreaProps } from "./TextArea";
3
+ import { excludeControls } from "../../utils/excludeControls";
4
+
5
+ export default {
6
+ title: "Forms/TextArea",
7
+ component: TextArea,
8
+ argTypes: {
9
+ validationState: {
10
+ options: ["valid", "invalid", "neither"],
11
+ control: { type: "radio" },
12
+ mapping: {
13
+ valid: "valid",
14
+ invalid: "invalid",
15
+ neither: "",
16
+ },
17
+ },
18
+ ...excludeControls("className"),
19
+ },
20
+ };
21
+
22
+ export const Normal: Meta<typeof TextArea> = {
23
+ render: (args: TextAreaProps) => <TextArea {...args} />,
24
+ args: {
25
+ label: "first name",
26
+ placeholder: "Placeholder",
27
+ defaultValue: "",
28
+ isDisabled: false,
29
+ errorMessage: "",
30
+ },
31
+ };
32
+
33
+ export const ControlledValue: Meta<typeof TextArea> = {
34
+ render: (args: TextAreaProps) => <TextArea {...args} />,
35
+ args: {
36
+ label: "first name",
37
+ placeholder: "Placeholder",
38
+ defaultValue: "John Doe",
39
+ isDisabled: false,
40
+ errorMessage: "",
41
+ },
42
+ };
43
+
44
+ export const Disabled: Meta<typeof TextArea> = {
45
+ render: (args: TextAreaProps) => <TextArea {...args} />,
46
+ args: {
47
+ label: "first name",
48
+ placeholder: "Placeholder",
49
+ defaultValue: "John Doe",
50
+ isDisabled: true,
51
+ errorMessage: "",
52
+ },
53
+ };
54
+
55
+ export const WithError: Meta<typeof TextArea> = {
56
+ render: (args: TextAreaProps) => <TextArea {...args} />,
57
+ args: {
58
+ label: "first name",
59
+ placeholder: "Placeholder",
60
+ defaultValue: "John Doe",
61
+ isDisabled: false,
62
+ errorMessage: "This is an error message",
63
+ validationState: "invalid",
64
+ },
65
+ };
66
+
67
+ export const Valid: Meta<typeof TextArea> = {
68
+ render: (args: TextAreaProps) => <TextArea {...args} />,
69
+ args: {
70
+ label: "first name",
71
+ placeholder: "Placeholder",
72
+ defaultValue: "John Doe",
73
+ isDisabled: false,
74
+ errorMessage: "",
75
+ validationState: "valid",
76
+ },
77
+ };
78
+
79
+ export const Invalid: Meta<typeof TextArea> = {
80
+ render: (args: TextAreaProps) => <TextArea {...args} />,
81
+ args: {
82
+ label: "first name",
83
+ placeholder: "Placeholder",
84
+ defaultValue: "John Doe",
85
+ isDisabled: false,
86
+ errorMessage: "",
87
+ validationState: "invalid",
88
+ },
89
+ };
@@ -0,0 +1,122 @@
1
+ import { useState } from "react";
2
+ import { Meta, ArgsTable, Canvas, Story } from "@storybook/blocks";
3
+ import { TextField } from "./TextField";
4
+ import { Label, Segment, SegmentGroup } from "..";
5
+ import { excludeControls } from "../../utils/excludeControls";
6
+ import * as TextFieldStories from "./TextField.stories";
7
+
8
+ <Meta of={TextFieldStories} />
9
+
10
+ # TextField
11
+
12
+ TextField allows a user to input some text.
13
+
14
+ ## Install
15
+
16
+ ```bash
17
+ yarn add @simplybusiness/mobius
18
+ ```
19
+
20
+ ## Usage
21
+
22
+ ```js
23
+ import { TextField } from "@simplybusiness/mobius";
24
+ ```
25
+
26
+ ## Examples
27
+
28
+ ### Normal
29
+
30
+ <Canvas>
31
+ <Story of={TextFieldStories.Normal} />
32
+ </Canvas>
33
+
34
+ ### Placeholder
35
+
36
+ <Canvas>
37
+ <Story of={TextFieldStories.Placeholder} />
38
+ </Canvas>
39
+
40
+ ### Controlled Value
41
+
42
+ <Canvas>
43
+ <Story of={TextFieldStories.ControlledValue} />
44
+ </Canvas>
45
+
46
+ ### Disabled
47
+
48
+ <Canvas>
49
+ <Story of={TextFieldStories.Disabled} />
50
+ </Canvas>
51
+
52
+ ### Valid
53
+
54
+ <Canvas>
55
+ <Story of={TextFieldStories.Valid} />
56
+ </Canvas>
57
+
58
+ ### Hidden
59
+
60
+ <Canvas>
61
+ <Story of={TextFieldStories.Hidden} />
62
+ </Canvas>
63
+
64
+ ### Invalid
65
+
66
+ <Canvas>
67
+ <Story of={TextFieldStories.Invalid} />
68
+ </Canvas>
69
+
70
+ ### TextField fills width of container by default
71
+
72
+ <Canvas>
73
+ <SegmentGroup horizontal>
74
+ <Segment>
75
+ <TextField label="First name" />
76
+ </Segment>
77
+
78
+ <Segment>
79
+ <TextField label="Last name" />
80
+ </Segment>
81
+
82
+ </SegmentGroup>
83
+ </Canvas>
84
+
85
+ ## Accessibility
86
+
87
+ It's recommended to pass a `label` prop in order to show a visual label. When the `label` prop is not provided, make sure to provide the `aria-label` prop instead. If the text field is labeled by a separate element, the `aria-labelledby` props must be used with the id of the labeling element.
88
+
89
+ ## Events
90
+
91
+ The `onChange` prop can be used to listen to changes of the value of the input. See the prop table for the complete list of events supported.
92
+ See the example of controlled component using the `onChange` prop.
93
+
94
+ ## Props
95
+
96
+ <ArgsTable of={TextField} />
97
+
98
+ ## Component HTML Structure and Class names
99
+
100
+ The following HTML is rendered for a TextField:
101
+
102
+ ```html
103
+ <div class="mobius/TextField">
104
+ <label class="mobius/Label">{label}</label>
105
+ <input class="mobius/TextFieldInput" type="text" />
106
+ <div class="mobius/ErrorMessage">{errors}</div>
107
+ </div>
108
+ ```
109
+
110
+ Class names are augmented with the following flags if true:
111
+
112
+ - \--is-focused
113
+ - \--is-disabled
114
+ - \--is-hovered
115
+ - \--is-selected
116
+ - \--is-valid
117
+ - \--is-invalid
118
+ - \--is-optional
119
+
120
+ ---
121
+
122
+ [See on Github](https://github.com/simplybusiness/mobius/tree/master/packages/mobius/src/components/TextField) | [Give feedback](https://simplybusiness.atlassian.net/CreateIssue.jspa?issuetype=10103&pid=10609) | [Get support](https://simplybusiness.slack.com/archives/C016CC0NDNE)