@arbor-education/design-system.components 0.15.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/.gather/skills/write-stories/SKILL.md +207 -271
  2. package/.storybook/preview.ts +5 -0
  3. package/CHANGELOG.md +23 -0
  4. package/README.md +8 -0
  5. package/component-library.md +144 -13
  6. package/dist/components/articleCard/ArticleCard.stories.d.ts +137 -11
  7. package/dist/components/articleCard/ArticleCard.stories.d.ts.map +1 -1
  8. package/dist/components/articleCard/ArticleCard.stories.js +358 -91
  9. package/dist/components/articleCard/ArticleCard.stories.js.map +1 -1
  10. package/dist/components/avatar/Avatar.stories.d.ts +6 -6
  11. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
  12. package/dist/components/avatar/Avatar.stories.js +393 -49
  13. package/dist/components/avatar/Avatar.stories.js.map +1 -1
  14. package/dist/components/avatarGroup/AvatarGroup.stories.d.ts +9 -7
  15. package/dist/components/avatarGroup/AvatarGroup.stories.d.ts.map +1 -1
  16. package/dist/components/avatarGroup/AvatarGroup.stories.js +688 -65
  17. package/dist/components/avatarGroup/AvatarGroup.stories.js.map +1 -1
  18. package/dist/components/banner/Banner.stories.d.ts.map +1 -1
  19. package/dist/components/banner/Banner.stories.js +7 -3
  20. package/dist/components/banner/Banner.stories.js.map +1 -1
  21. package/dist/components/card/Card.stories.d.ts +105 -4
  22. package/dist/components/card/Card.stories.d.ts.map +1 -1
  23. package/dist/components/card/Card.stories.js +336 -18
  24. package/dist/components/card/Card.stories.js.map +1 -1
  25. package/dist/components/combobox/Combobox.stories.d.ts +134 -21
  26. package/dist/components/combobox/Combobox.stories.d.ts.map +1 -1
  27. package/dist/components/combobox/Combobox.stories.js +676 -175
  28. package/dist/components/combobox/Combobox.stories.js.map +1 -1
  29. package/dist/components/datePicker/DatePicker.stories.d.ts +119 -27
  30. package/dist/components/datePicker/DatePicker.stories.d.ts.map +1 -1
  31. package/dist/components/datePicker/DatePicker.stories.js +575 -47
  32. package/dist/components/datePicker/DatePicker.stories.js.map +1 -1
  33. package/dist/components/dateTimePicker/DateTimePicker.stories.d.ts +155 -39
  34. package/dist/components/dateTimePicker/DateTimePicker.stories.d.ts.map +1 -1
  35. package/dist/components/dateTimePicker/DateTimePicker.stories.js +674 -103
  36. package/dist/components/dateTimePicker/DateTimePicker.stories.js.map +1 -1
  37. package/dist/components/editableText/EditableText.stories.d.ts +53 -12
  38. package/dist/components/editableText/EditableText.stories.d.ts.map +1 -1
  39. package/dist/components/editableText/EditableText.stories.js +401 -64
  40. package/dist/components/editableText/EditableText.stories.js.map +1 -1
  41. package/dist/components/formField/FormField.d.ts +4 -0
  42. package/dist/components/formField/FormField.d.ts.map +1 -1
  43. package/dist/components/formField/FormField.js +2 -1
  44. package/dist/components/formField/FormField.js.map +1 -1
  45. package/dist/components/formField/FormField.test.js +5 -0
  46. package/dist/components/formField/FormField.test.js.map +1 -1
  47. package/dist/components/formField/fieldset/Fieldset.stories.d.ts +56 -4
  48. package/dist/components/formField/fieldset/Fieldset.stories.d.ts.map +1 -1
  49. package/dist/components/formField/fieldset/Fieldset.stories.js +534 -28
  50. package/dist/components/formField/fieldset/Fieldset.stories.js.map +1 -1
  51. package/dist/components/formField/inputs/checkbox/CheckboxGroup.d.ts +3 -1
  52. package/dist/components/formField/inputs/checkbox/CheckboxGroup.d.ts.map +1 -1
  53. package/dist/components/formField/inputs/checkbox/CheckboxInput.js +1 -1
  54. package/dist/components/formField/inputs/checkbox/CheckboxInput.js.map +1 -1
  55. package/dist/components/formField/inputs/colourPickerDropdown/ColourPickerDropdown.stories.d.ts +95 -1
  56. package/dist/components/formField/inputs/colourPickerDropdown/ColourPickerDropdown.stories.d.ts.map +1 -1
  57. package/dist/components/formField/inputs/colourPickerDropdown/ColourPickerDropdown.stories.js +386 -9
  58. package/dist/components/formField/inputs/colourPickerDropdown/ColourPickerDropdown.stories.js.map +1 -1
  59. package/dist/components/formField/inputs/radio/RadioButtonGroup.d.ts +6 -2
  60. package/dist/components/formField/inputs/radio/RadioButtonGroup.d.ts.map +1 -1
  61. package/dist/components/formField/inputs/radio/RadioButtonGroup.js.map +1 -1
  62. package/dist/components/formField/inputs/radio/RadioButtonInput.stories.d.ts.map +1 -1
  63. package/dist/components/formField/inputs/radio/RadioButtonInput.stories.js +61 -49
  64. package/dist/components/formField/inputs/radio/RadioButtonInput.stories.js.map +1 -1
  65. package/dist/components/formField/inputs/selectDropdown/SelectDropdown.stories.d.ts +188 -166
  66. package/dist/components/formField/inputs/selectDropdown/SelectDropdown.stories.d.ts.map +1 -1
  67. package/dist/components/formField/inputs/selectDropdown/SelectDropdown.stories.js +821 -160
  68. package/dist/components/formField/inputs/selectDropdown/SelectDropdown.stories.js.map +1 -1
  69. package/dist/components/formField/inputs/time/TimeInput.stories.d.ts +176 -22
  70. package/dist/components/formField/inputs/time/TimeInput.stories.d.ts.map +1 -1
  71. package/dist/components/formField/inputs/time/TimeInput.stories.js +851 -92
  72. package/dist/components/formField/inputs/time/TimeInput.stories.js.map +1 -1
  73. package/dist/components/formField/label/Label.stories.d.ts +54 -5
  74. package/dist/components/formField/label/Label.stories.d.ts.map +1 -1
  75. package/dist/components/formField/label/Label.stories.js +238 -4
  76. package/dist/components/formField/label/Label.stories.js.map +1 -1
  77. package/dist/components/icoText/IcoText.stories.d.ts +32 -6
  78. package/dist/components/icoText/IcoText.stories.d.ts.map +1 -1
  79. package/dist/components/icoText/IcoText.stories.js +309 -14
  80. package/dist/components/icoText/IcoText.stories.js.map +1 -1
  81. package/dist/components/kpiCard/KPICard.stories.d.ts +100 -2
  82. package/dist/components/kpiCard/KPICard.stories.d.ts.map +1 -1
  83. package/dist/components/kpiCard/KPICard.stories.js +354 -10
  84. package/dist/components/kpiCard/KPICard.stories.js.map +1 -1
  85. package/dist/components/kvpList/KVPList.stories.d.ts +57 -4
  86. package/dist/components/kvpList/KVPList.stories.d.ts.map +1 -1
  87. package/dist/components/kvpList/KVPList.stories.js +403 -10
  88. package/dist/components/kvpList/KVPList.stories.js.map +1 -1
  89. package/dist/components/modal/Modal.stories.d.ts +113 -9
  90. package/dist/components/modal/Modal.stories.d.ts.map +1 -1
  91. package/dist/components/modal/Modal.stories.js +633 -13
  92. package/dist/components/modal/Modal.stories.js.map +1 -1
  93. package/dist/components/modal/modalManager/ModalManager.stories.d.ts +34 -10
  94. package/dist/components/modal/modalManager/ModalManager.stories.d.ts.map +1 -1
  95. package/dist/components/modal/modalManager/ModalManager.stories.js +463 -85
  96. package/dist/components/modal/modalManager/ModalManager.stories.js.map +1 -1
  97. package/dist/components/pill/Pill.d.ts.map +1 -1
  98. package/dist/components/pill/Pill.js +1 -1
  99. package/dist/components/pill/Pill.js.map +1 -1
  100. package/dist/components/pill/Pill.stories.d.ts.map +1 -1
  101. package/dist/components/pill/Pill.stories.js +11 -13
  102. package/dist/components/pill/Pill.stories.js.map +1 -1
  103. package/dist/components/row/Row.stories.d.ts +1 -2
  104. package/dist/components/row/Row.stories.d.ts.map +1 -1
  105. package/dist/components/row/Row.stories.js +360 -50
  106. package/dist/components/row/Row.stories.js.map +1 -1
  107. package/dist/components/searchBar/SearchBar.stories.d.ts +52 -4
  108. package/dist/components/searchBar/SearchBar.stories.d.ts.map +1 -1
  109. package/dist/components/searchBar/SearchBar.stories.js +428 -36
  110. package/dist/components/searchBar/SearchBar.stories.js.map +1 -1
  111. package/dist/components/section/Section.stories.d.ts +11 -41
  112. package/dist/components/section/Section.stories.d.ts.map +1 -1
  113. package/dist/components/section/Section.stories.js +494 -56
  114. package/dist/components/section/Section.stories.js.map +1 -1
  115. package/dist/components/singleUser/SingleUser.stories.d.ts +5 -4
  116. package/dist/components/singleUser/SingleUser.stories.d.ts.map +1 -1
  117. package/dist/components/singleUser/SingleUser.stories.js +303 -31
  118. package/dist/components/singleUser/SingleUser.stories.js.map +1 -1
  119. package/dist/components/slideoverManager/SlideoverManager.stories.d.ts +32 -11
  120. package/dist/components/slideoverManager/SlideoverManager.stories.d.ts.map +1 -1
  121. package/dist/components/slideoverManager/SlideoverManager.stories.js +380 -84
  122. package/dist/components/slideoverManager/SlideoverManager.stories.js.map +1 -1
  123. package/dist/components/table/DSDefaultColDef.d.ts.map +1 -1
  124. package/dist/components/table/DSDefaultColDef.js +4 -3
  125. package/dist/components/table/DSDefaultColDef.js.map +1 -1
  126. package/dist/components/table/Table.d.ts +6 -1
  127. package/dist/components/table/Table.d.ts.map +1 -1
  128. package/dist/components/table/Table.js +8 -3
  129. package/dist/components/table/Table.js.map +1 -1
  130. package/dist/components/table/Table.stories.d.ts +3 -0
  131. package/dist/components/table/Table.stories.d.ts.map +1 -1
  132. package/dist/components/table/Table.stories.js +384 -5
  133. package/dist/components/table/Table.stories.js.map +1 -1
  134. package/dist/components/table/Table.test.js +30 -0
  135. package/dist/components/table/Table.test.js.map +1 -1
  136. package/dist/components/table/TableFooter.stories.d.ts +49 -0
  137. package/dist/components/table/TableFooter.stories.d.ts.map +1 -0
  138. package/dist/components/table/TableFooter.stories.js +137 -0
  139. package/dist/components/table/TableFooter.stories.js.map +1 -0
  140. package/dist/components/table/TableHeader.stories.d.ts +93 -0
  141. package/dist/components/table/TableHeader.stories.d.ts.map +1 -0
  142. package/dist/components/table/TableHeader.stories.js +176 -0
  143. package/dist/components/table/TableHeader.stories.js.map +1 -0
  144. package/dist/components/table/cellEditors/DateCellEditor.stories.d.ts +44 -0
  145. package/dist/components/table/cellEditors/DateCellEditor.stories.d.ts.map +1 -0
  146. package/dist/components/table/cellEditors/DateCellEditor.stories.js +186 -0
  147. package/dist/components/table/cellEditors/DateCellEditor.stories.js.map +1 -0
  148. package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.d.ts +40 -0
  149. package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.d.ts.map +1 -0
  150. package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.js +209 -0
  151. package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.js.map +1 -0
  152. package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.d.ts +48 -0
  153. package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.d.ts.map +1 -0
  154. package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.js +244 -0
  155. package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.js.map +1 -0
  156. package/dist/components/table/cellRenderers/CheckboxCellRenderer.d.ts.map +1 -1
  157. package/dist/components/table/cellRenderers/CheckboxCellRenderer.js +3 -1
  158. package/dist/components/table/cellRenderers/CheckboxCellRenderer.js.map +1 -1
  159. package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.d.ts +64 -0
  160. package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.d.ts.map +1 -0
  161. package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.js +241 -0
  162. package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.js.map +1 -0
  163. package/dist/components/table/cellRenderers/DefaultCellRenderer.stories.d.ts +55 -0
  164. package/dist/components/table/cellRenderers/DefaultCellRenderer.stories.d.ts.map +1 -0
  165. package/dist/components/table/cellRenderers/DefaultCellRenderer.stories.js +245 -0
  166. package/dist/components/table/cellRenderers/DefaultCellRenderer.stories.js.map +1 -0
  167. package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.d.ts +67 -0
  168. package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.d.ts.map +1 -0
  169. package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.js +221 -0
  170. package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.js.map +1 -0
  171. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.d.ts +75 -0
  172. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.d.ts.map +1 -0
  173. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.js +270 -0
  174. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.js.map +1 -0
  175. package/dist/components/table/columnFilters/BooleanFilter.stories.d.ts +57 -0
  176. package/dist/components/table/columnFilters/BooleanFilter.stories.d.ts.map +1 -0
  177. package/dist/components/table/columnFilters/BooleanFilter.stories.js +198 -0
  178. package/dist/components/table/columnFilters/BooleanFilter.stories.js.map +1 -0
  179. package/dist/components/table/columnFilters/TimeFilter.stories.d.ts +58 -0
  180. package/dist/components/table/columnFilters/TimeFilter.stories.d.ts.map +1 -0
  181. package/dist/components/table/columnFilters/TimeFilter.stories.js +207 -0
  182. package/dist/components/table/columnFilters/TimeFilter.stories.js.map +1 -0
  183. package/dist/components/table/pagination/PaginationPanel.stories.d.ts +113 -0
  184. package/dist/components/table/pagination/PaginationPanel.stories.d.ts.map +1 -0
  185. package/dist/components/table/pagination/PaginationPanel.stories.js +272 -0
  186. package/dist/components/table/pagination/PaginationPanel.stories.js.map +1 -0
  187. package/dist/components/table/tableControls/HideColumnsDropdown.d.ts.map +1 -1
  188. package/dist/components/table/tableControls/HideColumnsDropdown.js +9 -3
  189. package/dist/components/table/tableControls/HideColumnsDropdown.js.map +1 -1
  190. package/dist/components/table/tableControls/TableControls.stories.d.ts +151 -0
  191. package/dist/components/table/tableControls/TableControls.stories.d.ts.map +1 -0
  192. package/dist/components/table/tableControls/TableControls.stories.js +356 -0
  193. package/dist/components/table/tableControls/TableControls.stories.js.map +1 -0
  194. package/dist/components/table/tableControls/TableSettingsDropdown.d.ts +27 -1
  195. package/dist/components/table/tableControls/TableSettingsDropdown.d.ts.map +1 -1
  196. package/dist/components/table/tableControls/TableSettingsDropdown.js +53 -26
  197. package/dist/components/table/tableControls/TableSettingsDropdown.js.map +1 -1
  198. package/dist/components/table/tableControls/TableSettingsDropdown.test.d.ts +2 -0
  199. package/dist/components/table/tableControls/TableSettingsDropdown.test.d.ts.map +1 -0
  200. package/dist/components/table/tableControls/TableSettingsDropdown.test.js +178 -0
  201. package/dist/components/table/tableControls/TableSettingsDropdown.test.js.map +1 -0
  202. package/dist/components/tabs/Tabs.stories.d.ts +22 -4
  203. package/dist/components/tabs/Tabs.stories.d.ts.map +1 -1
  204. package/dist/components/tabs/Tabs.stories.js +398 -22
  205. package/dist/components/tabs/Tabs.stories.js.map +1 -1
  206. package/dist/components/tabs/TabsItem.stories.d.ts +54 -1
  207. package/dist/components/tabs/TabsItem.stories.d.ts.map +1 -1
  208. package/dist/components/tabs/TabsItem.stories.js +61 -9
  209. package/dist/components/tabs/TabsItem.stories.js.map +1 -1
  210. package/dist/components/toast/Toast.stories.d.ts +103 -10
  211. package/dist/components/toast/Toast.stories.d.ts.map +1 -1
  212. package/dist/components/toast/Toast.stories.js +409 -47
  213. package/dist/components/toast/Toast.stories.js.map +1 -1
  214. package/dist/components/toggle/Toggle.stories.d.ts +61 -46
  215. package/dist/components/toggle/Toggle.stories.d.ts.map +1 -1
  216. package/dist/components/toggle/Toggle.stories.js +311 -122
  217. package/dist/components/toggle/Toggle.stories.js.map +1 -1
  218. package/dist/components/tooltip/Tooltip.stories.d.ts +78 -6
  219. package/dist/components/tooltip/Tooltip.stories.d.ts.map +1 -1
  220. package/dist/components/tooltip/Tooltip.stories.js +413 -7
  221. package/dist/components/tooltip/Tooltip.stories.js.map +1 -1
  222. package/dist/components/tooltip/TooltipWrapper.stories.d.ts +71 -7
  223. package/dist/components/tooltip/TooltipWrapper.stories.d.ts.map +1 -1
  224. package/dist/components/tooltip/TooltipWrapper.stories.js +238 -10
  225. package/dist/components/tooltip/TooltipWrapper.stories.js.map +1 -1
  226. package/dist/index.css +8 -0
  227. package/dist/index.css.map +1 -1
  228. package/dist/utils/PopupParentContext.stories.d.ts +17 -0
  229. package/dist/utils/PopupParentContext.stories.d.ts.map +1 -0
  230. package/dist/utils/PopupParentContext.stories.js +266 -0
  231. package/dist/utils/PopupParentContext.stories.js.map +1 -0
  232. package/dist/utils/getDefaultPopupParent.d.ts.map +1 -1
  233. package/dist/utils/getDefaultPopupParent.js +6 -0
  234. package/dist/utils/getDefaultPopupParent.js.map +1 -1
  235. package/package.json +1 -1
  236. package/src/components/articleCard/ArticleCard.stories.tsx +524 -111
  237. package/src/components/avatar/Avatar.stories.tsx +504 -59
  238. package/src/components/avatarGroup/AvatarGroup.stories.tsx +977 -175
  239. package/src/components/banner/Banner.stories.tsx +7 -3
  240. package/src/components/card/Card.stories.tsx +466 -36
  241. package/src/components/combobox/Combobox.stories.tsx +867 -260
  242. package/src/components/datePicker/DatePicker.stories.tsx +777 -60
  243. package/src/components/dateTimePicker/DateTimePicker.stories.tsx +910 -132
  244. package/src/components/editableText/EditableText.stories.tsx +567 -91
  245. package/src/components/formField/FormField.test.tsx +6 -0
  246. package/src/components/formField/FormField.tsx +5 -0
  247. package/src/components/formField/fieldset/Fieldset.stories.tsx +761 -51
  248. package/src/components/formField/inputs/checkbox/CheckboxGroup.tsx +1 -1
  249. package/src/components/formField/inputs/checkbox/CheckboxInput.tsx +1 -1
  250. package/src/components/formField/inputs/colourPickerDropdown/ColourPickerDropdown.stories.tsx +504 -11
  251. package/src/components/formField/inputs/radio/RadioButtonGroup.tsx +17 -4
  252. package/src/components/formField/inputs/radio/RadioButtonInput.stories.tsx +71 -59
  253. package/src/components/formField/inputs/selectDropdown/SelectDropdown.stories.tsx +1079 -168
  254. package/src/components/formField/inputs/time/TimeInput.stories.tsx +1140 -104
  255. package/src/components/formField/label/Label.stories.tsx +317 -8
  256. package/src/components/icoText/IcoText.stories.tsx +442 -31
  257. package/src/components/kpiCard/KPICard.stories.tsx +475 -30
  258. package/src/components/kvpList/KVPList.stories.tsx +593 -26
  259. package/src/components/modal/Modal.stories.tsx +963 -26
  260. package/src/components/modal/modalManager/ModalManager.stories.tsx +612 -454
  261. package/src/components/pill/Pill.stories.tsx +11 -13
  262. package/src/components/pill/Pill.tsx +1 -0
  263. package/src/components/row/Row.stories.tsx +474 -58
  264. package/src/components/searchBar/SearchBar.stories.tsx +570 -38
  265. package/src/components/section/Section.stories.tsx +723 -70
  266. package/src/components/singleUser/SingleUser.stories.tsx +393 -34
  267. package/src/components/slideoverManager/SlideoverManager.stories.tsx +572 -342
  268. package/src/components/table/DSDefaultColDef.ts +25 -5
  269. package/src/components/table/Table.stories.tsx +460 -5
  270. package/src/components/table/Table.test.tsx +53 -0
  271. package/src/components/table/Table.tsx +9 -2
  272. package/src/components/table/TableFooter.stories.tsx +196 -0
  273. package/src/components/table/TableHeader.stories.tsx +251 -0
  274. package/src/components/table/cellEditors/DateCellEditor.stories.tsx +245 -0
  275. package/src/components/table/cellRenderers/BooleanCellRenderer.stories.tsx +278 -0
  276. package/src/components/table/cellRenderers/ButtonCellRenderer.stories.tsx +333 -0
  277. package/src/components/table/cellRenderers/CheckboxCellRenderer.stories.tsx +337 -0
  278. package/src/components/table/cellRenderers/CheckboxCellRenderer.tsx +5 -1
  279. package/src/components/table/cellRenderers/DefaultCellRenderer.stories.tsx +342 -0
  280. package/src/components/table/cellRenderers/InlineTextCellRenderer.stories.tsx +292 -0
  281. package/src/components/table/cellRenderers/SelectDropdownCellRenderer.stories.tsx +369 -0
  282. package/src/components/table/columnFilters/BooleanFilter.stories.tsx +268 -0
  283. package/src/components/table/columnFilters/TimeFilter.stories.tsx +281 -0
  284. package/src/components/table/pagination/PaginationPanel.stories.tsx +327 -0
  285. package/src/components/table/tableControls/HideColumnsDropdown.tsx +11 -2
  286. package/src/components/table/tableControls/TableControls.stories.tsx +415 -0
  287. package/src/components/table/tableControls/TableSettingsDropdown.test.tsx +207 -0
  288. package/src/components/table/tableControls/TableSettingsDropdown.tsx +103 -39
  289. package/src/components/tabs/Tabs.stories.tsx +540 -60
  290. package/src/components/tabs/TabsItem.stories.tsx +82 -8
  291. package/src/components/toast/Toast.stories.tsx +539 -77
  292. package/src/components/toggle/Toggle.stories.tsx +371 -135
  293. package/src/components/tooltip/Tooltip.stories.tsx +606 -15
  294. package/src/components/tooltip/TooltipWrapper.stories.tsx +348 -12
  295. package/src/docs/Contributing.mdx +241 -0
  296. package/src/docs/UsingComponents.mdx +93 -0
  297. package/src/docs/Welcome.mdx +68 -0
  298. package/src/global.scss +7 -0
  299. package/src/utils/PopupParentContext.stories.tsx +367 -0
  300. package/src/utils/getDefaultPopupParent.ts +6 -0
  301. package/.ralph/storybook-upgrade/knowledge.md +0 -308
  302. package/.ralph/storybook-upgrade/prd.json +0 -777
  303. package/.ralph/storybook-upgrade/progress.md +0 -342
  304. package/src/components/table/TableWIP.mdx +0 -3
@@ -1,24 +1,319 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Controls, Heading as DocHeading, Markdown, Primary as DocPrimary, Stories, Subtitle, Title, } from '@storybook/addon-docs/blocks';
2
3
  import { IcoText } from './IcoText';
4
+ // ---------------------------------------------------------------------------
5
+ // Docs page content
6
+ // ---------------------------------------------------------------------------
7
+ const DESCRIPTION_INTRO = [
8
+ '`IcoText` is a compound layout component that pairs an icon in a left rail with a heading and/or paragraph.',
9
+ 'It is the canonical icon-plus-text primitive in this design system — used internally by `ArticleCard`',
10
+ 'and available for direct use in any context that needs an icon anchoring labelled content.',
11
+ ].join(' ');
12
+ const ICON_PROPS = [
13
+ '| Prop | Type | Default | Description |',
14
+ '|---|---|---|---|',
15
+ '| `name` | `IconName` | — | **Required.** The icon identifier |',
16
+ '| `size` | `12 \\| 16 \\| 24` | `24` | Icon size in pixels |',
17
+ '| `color` | `string` | — | Icon colour — use a CSS token e.g. `var(--color-grey-600)` |',
18
+ '| `screenReaderText` | `string` | — | Accessible label. Omit for decorative icons (icon becomes `aria-hidden`) |',
19
+ '| `className` | `string` | — | Additional CSS classes |',
20
+ ].join('\n');
21
+ const HEADING_PROPS = [
22
+ '| Prop | Type | Default | Description |',
23
+ '|---|---|---|---|',
24
+ '| `children` | `ReactNode` | — | **Required.** Heading text |',
25
+ '| `...HTMLAttributes<h4>` | | | All standard heading element attributes forwarded |',
26
+ ].join('\n');
27
+ const PARAGRAPH_PROPS = [
28
+ '| Prop | Type | Default | Description |',
29
+ '|---|---|---|---|',
30
+ '| `children` | `ReactNode` | — | **Required.** Paragraph text |',
31
+ '| `...HTMLAttributes<p>` | | | All standard paragraph element attributes forwarded |',
32
+ ].join('\n');
33
+ const USAGE_GUIDANCE = [
34
+ '### When to use',
35
+ '',
36
+ '- Pairing a meaningful icon with a short heading and/or description — attendance alerts, feature blurbs, help text',
37
+ '- Inside panels, list items, or cards where an icon anchors the content',
38
+ '- As the building block for `ArticleCard` icon-rail layouts',
39
+ '',
40
+ '---',
41
+ '',
42
+ '### When NOT to use',
43
+ '',
44
+ '| Situation | Use instead |',
45
+ '|---|---|',
46
+ '| Content inside a navigable card | [`ArticleCard`](?path=/docs/components-card-articlecard--docs) |',
47
+ '| Icon with no text | [`Icon`](?path=/docs/components-icon--docs) directly |',
48
+ '| Long-form prose | Semantic HTML `<p>` with a separate heading |',
49
+ '| Interactive element | Wrap `IcoText` inside a `Card` or `Button` — never add `onClick` to `IcoText` itself |',
50
+ ].join('\n');
51
+ const DEVELOPER_NOTES = [
52
+ '### Critical usage patterns',
53
+ '',
54
+ '**`IcoText.Icon` is automatically hoisted to the left rail** regardless of position in JSX.',
55
+ 'The root inspects `children`, pulls out any `IcoText.Icon` elements into a flex-shrink-0 left column,',
56
+ 'and places all other children (Heading, Paragraph) in the content column.',
57
+ '',
58
+ '```tsx',
59
+ '<IcoText>',
60
+ ' <IcoText.Icon name="guardians" />',
61
+ ' <IcoText.Heading>Year 9 Attendance</IcoText.Heading>',
62
+ ' <IcoText.Paragraph>28 pupils · 94.2% this term</IcoText.Paragraph>',
63
+ '</IcoText>',
64
+ '```',
65
+ '',
66
+ '**`IcoText.Heading` always renders as `<h4>`.** There is no `level` prop. Verify your document',
67
+ 'heading hierarchy is correct before using `IcoText` as a standalone heading.',
68
+ '',
69
+ '**Omit `screenReaderText` for decorative icons.** The icon is rendered with `aria-hidden="true"`',
70
+ 'when `screenReaderText` is absent. The heading or surrounding text should carry the accessible meaning.',
71
+ '',
72
+ '---',
73
+ '',
74
+ '### Accessibility',
75
+ '',
76
+ '- Decorative icons (no `screenReaderText`): `aria-hidden="true"` — screen readers skip them',
77
+ '- Meaningful icons: provide `screenReaderText` so the icon has an accessible label',
78
+ '- `IcoText.Heading` renders `<h4>` — verify your document heading hierarchy',
79
+ '- `IcoText.Paragraph` renders `<p>` — semantically appropriate for supporting text',
80
+ '',
81
+ '---',
82
+ '',
83
+ '### TypeScript types',
84
+ '',
85
+ '```ts',
86
+ "import { IcoText } from '@arbor-education/design-system.components';",
87
+ "import type { IcoTextProps, IcoTextIconProps, IcoTextHeadingProps, IcoTextParagraphProps } from '@arbor-education/design-system.components';",
88
+ '```',
89
+ ].join('\n');
90
+ const RELATED_COMPONENTS = [
91
+ '## Related components',
92
+ '',
93
+ '[ArticleCard](?path=/docs/components-card-articlecard--docs) · [Icon](?path=/docs/components-icon--docs) · [Card](?path=/docs/components-card--docs)',
94
+ ].join('\n');
95
+ const PROPS_INTRO = 'The preview below is wired to the **Controls** panel — tweak any prop to see the story update in real time.';
96
+ // ---------------------------------------------------------------------------
97
+ // Custom DocsPage
98
+ // ---------------------------------------------------------------------------
99
+ function IcoTextDocsPage() {
100
+ return (_jsxs(_Fragment, { children: [_jsx(Title, {}), _jsx(Subtitle, {}), _jsx(Markdown, { children: DESCRIPTION_INTRO }), _jsx(DocHeading, { children: "Interactive example" }), _jsx(Markdown, { children: PROPS_INTRO }), _jsx(DocPrimary, {}), _jsx(Controls, {}), _jsx(DocHeading, { children: "IcoText.Icon props" }), _jsx(Markdown, { children: ICON_PROPS }), _jsx(DocHeading, { children: "IcoText.Heading props" }), _jsx(Markdown, { children: HEADING_PROPS }), _jsx(DocHeading, { children: "IcoText.Paragraph props" }), _jsx(Markdown, { children: PARAGRAPH_PROPS }), _jsx(DocHeading, { children: "Usage guidance" }), _jsx(Markdown, { children: USAGE_GUIDANCE }), _jsx(DocHeading, { children: "Developer notes" }), _jsx(Markdown, { children: DEVELOPER_NOTES }), _jsx(DocHeading, { children: "Examples" }), _jsx(Stories, { title: "" }), _jsx(Markdown, { children: RELATED_COMPONENTS })] }));
101
+ }
102
+ // ---------------------------------------------------------------------------
103
+ // Meta
104
+ // ---------------------------------------------------------------------------
3
105
  const meta = {
4
106
  title: 'Components/IcoText',
5
107
  component: IcoText,
108
+ tags: ['autodocs'],
6
109
  parameters: {
7
- docs: {
8
- description: {
9
- component: 'Use `IcoText.Icon` as a direct child of `IcoText` so it is hoisted into the leading icon rail.',
10
- },
110
+ layout: 'padded',
111
+ docs: { page: IcoTextDocsPage },
112
+ },
113
+ argTypes: {
114
+ className: {
115
+ control: false,
116
+ description: 'Additional CSS class names on the root `div.ds-ico-text` element.',
117
+ table: { type: { summary: 'string' } },
118
+ },
119
+ children: {
120
+ control: false,
121
+ description: 'Compose using `IcoText.Icon`, `IcoText.Heading`, and `IcoText.Paragraph` sub-components.',
122
+ table: { type: { summary: 'ReactNode' } },
11
123
  },
12
124
  },
13
125
  };
14
- export const WithIconAndParagraph = {
15
- render: args => (_jsxs(IcoText, { ...args, children: [_jsx(IcoText.Icon, { name: "eye" }), _jsx(IcoText.Heading, { children: "Article heading" }), _jsx(IcoText.Paragraph, { children: "Supporting text for an article card layout." })] })),
16
- };
17
- export const TextOnly = {
18
- render: args => (_jsxs(IcoText, { ...args, children: [_jsx(IcoText.Heading, { children: "Article heading" }), _jsx(IcoText.Paragraph, { children: "Supporting text with no leading icon." })] })),
19
- };
20
- export const HeadingWithIcon = {
21
- render: args => (_jsxs(IcoText, { ...args, children: [_jsx(IcoText.Icon, { name: "eye" }), _jsx(IcoText.Heading, { children: "Heading only" })] })),
22
- };
23
126
  export default meta;
127
+ // ---------------------------------------------------------------------------
128
+ // Helper: attach a per-story description to docs
129
+ // ---------------------------------------------------------------------------
130
+ const withDescription = (story, description) => ({
131
+ ...story,
132
+ parameters: {
133
+ ...story.parameters,
134
+ docs: { ...story.parameters?.docs, description: { story: description } },
135
+ },
136
+ });
137
+ // ---------------------------------------------------------------------------
138
+ // Template components
139
+ // ---------------------------------------------------------------------------
140
+ const IconSizesTemplate = () => (_jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 'var(--spacing-xlarge)' }, children: [12, 16, 24].map(size => (_jsxs("div", { children: [_jsx("p", { className: "ds-text", style: { margin: '0 0 var(--spacing-small)', color: 'var(--color-grey-600)' }, children: `size={${size}}` }), _jsxs(IcoText, { children: [_jsx(IcoText.Icon, { name: "guardians", size: size }), _jsx(IcoText.Heading, { children: "Year 9 Attendance" }), _jsx(IcoText.Paragraph, { children: "28 pupils \u00B7 94.2% average this term" })] })] }, size))) }));
141
+ const IconColorsTemplate = () => (_jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 'var(--spacing-xlarge)' }, children: [
142
+ { color: 'var(--color-semantic-info-600)', label: 'Info — var(--color-semantic-info-600)' },
143
+ { color: 'var(--color-semantic-success-600)', label: 'Success — var(--color-semantic-success-600)' },
144
+ { color: 'var(--color-semantic-warning-600)', label: 'Warning — var(--color-semantic-warning-600)' },
145
+ { color: 'var(--color-semantic-destructive-600)', label: 'Destructive — var(--color-semantic-destructive-600)' },
146
+ ].map(({ color, label }) => (_jsxs("div", { children: [_jsx("p", { className: "ds-text", style: { margin: '0 0 var(--spacing-small)', color: 'var(--color-grey-600)' }, children: label }), _jsxs(IcoText, { children: [_jsx(IcoText.Icon, { name: "triangle-alert", color: color }), _jsx(IcoText.Heading, { children: "Attendance alert" }), _jsx(IcoText.Paragraph, { children: "3 pupils below 90% this half-term" })] })] }, color))) }));
147
+ const MultipleParagraphsTemplate = () => (_jsxs(IcoText, { children: [_jsx(IcoText.Icon, { name: "date" }), _jsx(IcoText.Heading, { children: "Parents' evening \u2014 Tuesday 14 May" }), _jsx(IcoText.Paragraph, { children: "4:00 pm \u2013 7:00 pm \u00B7 Main Hall" }), _jsx(IcoText.Paragraph, { children: "Appointments available every 10 minutes. Please arrive 5 minutes early." })] }));
148
+ // ---------------------------------------------------------------------------
149
+ // Stories
150
+ // ---------------------------------------------------------------------------
151
+ export const Default = withDescription({
152
+ render: () => (_jsxs(IcoText, { children: [_jsx(IcoText.Icon, { name: "guardians" }), _jsx(IcoText.Heading, { children: "Year 9 Attendance" }), _jsx(IcoText.Paragraph, { children: "28 pupils \u00B7 94.2% average this term" })] })),
153
+ }, 'The full canonical composition — `IcoText.Icon` in the left rail, `IcoText.Heading` and `IcoText.Paragraph` in the content column.');
154
+ export const HeadingOnly = withDescription({
155
+ parameters: {
156
+ controls: { disable: true },
157
+ docs: {
158
+ source: {
159
+ language: 'tsx',
160
+ code: `
161
+ import { IcoText } from '@arbor-education/design-system.components';
162
+
163
+ function HeadingOnlyExample() {
164
+ return (
165
+ <IcoText>
166
+ <IcoText.Icon name="book-open" />
167
+ <IcoText.Heading>Assessment policy</IcoText.Heading>
168
+ </IcoText>
169
+ );
170
+ }
171
+ export default HeadingOnlyExample;
172
+ `.trim(),
173
+ },
174
+ },
175
+ },
176
+ render: () => (_jsxs(IcoText, { children: [_jsx(IcoText.Icon, { name: "book-open" }), _jsx(IcoText.Heading, { children: "Assessment policy" })] })),
177
+ }, 'Icon + Heading with no Paragraph — the compact pattern for short navigational labels.');
178
+ export const WithoutIcon = withDescription({
179
+ parameters: {
180
+ controls: { disable: true },
181
+ docs: {
182
+ source: {
183
+ language: 'tsx',
184
+ code: `
185
+ import { IcoText } from '@arbor-education/design-system.components';
186
+
187
+ function WithoutIconExample() {
188
+ return (
189
+ <IcoText>
190
+ <IcoText.Heading>Behaviour report</IcoText.Heading>
191
+ <IcoText.Paragraph>No incidents recorded this week. All targets met.</IcoText.Paragraph>
192
+ </IcoText>
193
+ );
194
+ }
195
+ export default WithoutIconExample;
196
+ `.trim(),
197
+ },
198
+ },
199
+ },
200
+ render: () => (_jsxs(IcoText, { children: [_jsx(IcoText.Heading, { children: "Behaviour report" }), _jsx(IcoText.Paragraph, { children: "No incidents recorded this week. All targets met." })] })),
201
+ }, 'Heading + Paragraph with no icon. The left rail disappears cleanly — `IcoText.Icon` is entirely optional.');
202
+ export const IconWithScreenReaderText = withDescription({
203
+ parameters: {
204
+ controls: { disable: true },
205
+ docs: {
206
+ source: {
207
+ language: 'tsx',
208
+ code: `
209
+ import { IcoText } from '@arbor-education/design-system.components';
210
+
211
+ function IconWithScreenReaderTextExample() {
212
+ return (
213
+ <IcoText>
214
+ <IcoText.Icon
215
+ name="triangle-alert"
216
+ color="var(--color-semantic-warning-600)"
217
+ screenReaderText="Warning"
218
+ />
219
+ <IcoText.Heading>Attendance below target</IcoText.Heading>
220
+ <IcoText.Paragraph>Alice Johnson — 78.4% this term. Intervention recommended.</IcoText.Paragraph>
221
+ </IcoText>
222
+ );
223
+ }
224
+ export default IconWithScreenReaderTextExample;
225
+ `.trim(),
226
+ },
227
+ },
228
+ },
229
+ render: () => (_jsxs(IcoText, { children: [_jsx(IcoText.Icon, { name: "triangle-alert", color: "var(--color-semantic-warning-600)", screenReaderText: "Warning" }), _jsx(IcoText.Heading, { children: "Attendance below target" }), _jsx(IcoText.Paragraph, { children: "Alice Johnson \u2014 78.4% this term. Intervention recommended." })] })),
230
+ }, 'When the icon carries meaning not conveyed by the heading text, provide `screenReaderText`. Without it the icon is `aria-hidden="true"`. Here the warning triangle conveys severity — screen readers announce "Warning, Attendance below target".');
231
+ export const IconSizes = withDescription({
232
+ parameters: {
233
+ controls: { disable: true },
234
+ docs: {
235
+ source: {
236
+ language: 'tsx',
237
+ code: `
238
+ import { IcoText } from '@arbor-education/design-system.components';
239
+
240
+ function IconSizesExample() {
241
+ return (
242
+ <>
243
+ <IcoText>
244
+ <IcoText.Icon name="guardians" size={12} />
245
+ <IcoText.Heading>size 12</IcoText.Heading>
246
+ <IcoText.Paragraph>Use in very compact contexts</IcoText.Paragraph>
247
+ </IcoText>
248
+ <IcoText>
249
+ <IcoText.Icon name="guardians" size={16} />
250
+ <IcoText.Heading>size 16</IcoText.Heading>
251
+ <IcoText.Paragraph>Use in moderately compact contexts</IcoText.Paragraph>
252
+ </IcoText>
253
+ <IcoText>
254
+ <IcoText.Icon name="guardians" size={24} />
255
+ <IcoText.Heading>size 24 (default)</IcoText.Heading>
256
+ <IcoText.Paragraph>Standard — aligns best with h4 line-height</IcoText.Paragraph>
257
+ </IcoText>
258
+ </>
259
+ );
260
+ }
261
+ export default IconSizesExample;
262
+ `.trim(),
263
+ },
264
+ },
265
+ },
266
+ render: IconSizesTemplate,
267
+ }, 'All three supported icon sizes — 12, 16, and 24 (default). Use smaller sizes only in compact contexts such as table cells or dense lists. The `24` default aligns best with `IcoText.Heading`\'s h4 line-height.');
268
+ export const IconColors = withDescription({
269
+ parameters: {
270
+ controls: { disable: true },
271
+ docs: {
272
+ source: {
273
+ language: 'tsx',
274
+ code: `
275
+ import { IcoText } from '@arbor-education/design-system.components';
276
+
277
+ function IconColorsExample() {
278
+ return (
279
+ <IcoText>
280
+ <IcoText.Icon name="triangle-alert" color="var(--color-semantic-warning-600)" />
281
+ <IcoText.Heading>Attendance alert</IcoText.Heading>
282
+ <IcoText.Paragraph>3 pupils below 90% this half-term</IcoText.Paragraph>
283
+ </IcoText>
284
+ );
285
+ }
286
+ export default IconColorsExample;
287
+ `.trim(),
288
+ },
289
+ },
290
+ },
291
+ render: IconColorsTemplate,
292
+ }, 'The `color` prop on `IcoText.Icon` accepts any CSS value — always use design token variables, never hardcoded hex. Semantic tokens (`--color-semantic-*`) are most appropriate for status-indicating icons.');
293
+ export const MultipleParagraphs = withDescription({
294
+ parameters: {
295
+ controls: { disable: true },
296
+ docs: {
297
+ source: {
298
+ language: 'tsx',
299
+ code: `
300
+ import { IcoText } from '@arbor-education/design-system.components';
301
+
302
+ function MultipleParagraphsExample() {
303
+ return (
304
+ <IcoText>
305
+ <IcoText.Icon name="calendar" />
306
+ <IcoText.Heading>Parents' evening — Tuesday 14 May</IcoText.Heading>
307
+ <IcoText.Paragraph>4:00 pm – 7:00 pm · Main Hall</IcoText.Paragraph>
308
+ <IcoText.Paragraph>Appointments every 10 minutes. Please arrive 5 minutes early.</IcoText.Paragraph>
309
+ </IcoText>
310
+ );
311
+ }
312
+ export default MultipleParagraphsExample;
313
+ `.trim(),
314
+ },
315
+ },
316
+ },
317
+ render: MultipleParagraphsTemplate,
318
+ }, 'Multiple `IcoText.Paragraph` sub-components stack vertically in the content column. Use for supplementary detail lines below the primary heading.');
24
319
  //# sourceMappingURL=IcoText.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IcoText.stories.js","sourceRoot":"","sources":["../../../src/components/icoText/IcoText.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,oBAAoB;IAC3B,SAAS,EAAE,OAAO;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EACP,gGAAgG;aACnG;SACF;KACF;CAC6B,CAAC;AAIjC,MAAM,CAAC,MAAM,oBAAoB,GAAU;IACzC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CACd,MAAC,OAAO,OAAK,IAAI,aACf,KAAC,OAAO,CAAC,IAAI,IAAC,IAAI,EAAC,KAAK,GAAG,EAC3B,KAAC,OAAO,CAAC,OAAO,kCAAkC,EAClD,KAAC,OAAO,CAAC,SAAS,8DAAgE,IAC1E,CACX;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAU;IAC7B,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CACd,MAAC,OAAO,OAAK,IAAI,aACf,KAAC,OAAO,CAAC,OAAO,kCAAkC,EAClD,KAAC,OAAO,CAAC,SAAS,wDAA0D,IACpE,CACX;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAU;IACpC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CACd,MAAC,OAAO,OAAK,IAAI,aACf,KAAC,OAAO,CAAC,IAAI,IAAC,IAAI,EAAC,KAAK,GAAG,EAC3B,KAAC,OAAO,CAAC,OAAO,+BAA+B,IACvC,CACX;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"IcoText.stories.js","sourceRoot":"","sources":["../../../src/components/icoText/IcoText.stories.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,107 @@
1
1
  import type { StoryObj } from '@storybook/react-vite';
2
+ import { KPICard } from './KPICard';
3
+ declare function KPICardDocsPage(): import("react/jsx-runtime").JSX.Element;
2
4
  declare const meta: {
3
5
  title: string;
4
6
  component: (props: import("./KPICard").KPICardProps) => React.JSX.Element;
7
+ tags: string[];
8
+ parameters: {
9
+ layout: string;
10
+ docs: {
11
+ page: typeof KPICardDocsPage;
12
+ };
13
+ };
14
+ argTypes: {
15
+ label: {
16
+ control: "text";
17
+ description: string;
18
+ table: {
19
+ type: {
20
+ summary: string;
21
+ };
22
+ };
23
+ };
24
+ value: {
25
+ control: "text";
26
+ description: string;
27
+ table: {
28
+ type: {
29
+ summary: string;
30
+ };
31
+ };
32
+ };
33
+ isPercentage: {
34
+ control: "boolean";
35
+ description: string;
36
+ table: {
37
+ type: {
38
+ summary: string;
39
+ };
40
+ defaultValue: {
41
+ summary: string;
42
+ };
43
+ };
44
+ };
45
+ disabled: {
46
+ control: "boolean";
47
+ description: string;
48
+ table: {
49
+ type: {
50
+ summary: string;
51
+ };
52
+ defaultValue: {
53
+ summary: string;
54
+ };
55
+ };
56
+ };
57
+ onClick: {
58
+ control: false;
59
+ description: string;
60
+ table: {
61
+ type: {
62
+ summary: string;
63
+ };
64
+ defaultValue: {
65
+ summary: string;
66
+ };
67
+ };
68
+ };
69
+ 'aria-label': {
70
+ control: "text";
71
+ description: string;
72
+ table: {
73
+ type: {
74
+ summary: string;
75
+ };
76
+ };
77
+ };
78
+ children: {
79
+ control: false;
80
+ description: string;
81
+ table: {
82
+ type: {
83
+ summary: string;
84
+ };
85
+ };
86
+ };
87
+ className: {
88
+ control: false;
89
+ description: string;
90
+ table: {
91
+ type: {
92
+ summary: string;
93
+ };
94
+ };
95
+ };
96
+ };
5
97
  };
6
- type Story = StoryObj<typeof meta>;
7
- export declare const Default: Story;
8
98
  export default meta;
99
+ type Story = StoryObj<typeof KPICard>;
100
+ export declare const Default: Story;
101
+ export declare const AsPercentage: Story;
102
+ export declare const WithChildren: Story;
103
+ export declare const WithProgressBar: Story;
104
+ export declare const Interactive: Story;
105
+ export declare const Disabled: Story;
106
+ export declare const MultipleCards: Story;
9
107
  //# sourceMappingURL=KPICard.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"KPICard.stories.d.ts","sourceRoot":"","sources":["../../../src/components/kpiCard/KPICard.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAK5D,QAAA,MAAM,IAAI;;;CAGsB,CAAC;AAEjC,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAgCrB,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"KPICard.stories.d.ts","sourceRoot":"","sources":["../../../src/components/kpiCard/KPICard.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAW5D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoGpC,iBAAS,eAAe,4CAmBvB;AAMD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwEsB,CAAC;AAEjC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,OAAO,CAAC,CAAC;AA4DtC,eAAO,MAAM,OAAO,EAAE,KAerB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KA+B1B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAkC1B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAyB7B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAqCzB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAuCtB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KA2B3B,CAAC"}