@arbor-education/design-system.components 4.5.0 → 4.7.0-alpha.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 (312) hide show
  1. package/.changeset/twenty-groups-wonder.md +5 -0
  2. package/.changeset/yellow-falcons-search.md +5 -0
  3. package/CHANGELOG.md +12 -0
  4. package/dist/components/avatar/Avatar.js +2 -2
  5. package/dist/components/avatar/Avatar.js.map +1 -1
  6. package/dist/components/badge/Badge.stories.d.ts +0 -1
  7. package/dist/components/badge/Badge.stories.d.ts.map +1 -1
  8. package/dist/components/badge/Badge.stories.js +0 -69
  9. package/dist/components/badge/Badge.stories.js.map +1 -1
  10. package/dist/components/button/Button.story.d.ts +47 -0
  11. package/dist/components/button/Button.story.d.ts.map +1 -0
  12. package/dist/components/button/Button.story.js +123 -0
  13. package/dist/components/button/Button.story.js.map +1 -0
  14. package/dist/components/button/ButtonUsageExample.d.ts +2 -0
  15. package/dist/components/button/ButtonUsageExample.d.ts.map +1 -0
  16. package/dist/components/button/ButtonUsageExample.js +11 -0
  17. package/dist/components/button/ButtonUsageExample.js.map +1 -0
  18. package/dist/components/combobox/useElementWidth.d.ts +2 -0
  19. package/dist/components/combobox/useElementWidth.d.ts.map +1 -0
  20. package/dist/components/combobox/useElementWidth.js +31 -0
  21. package/dist/components/combobox/useElementWidth.js.map +1 -0
  22. package/dist/components/combobox/useVisibleChips.d.ts +21 -0
  23. package/dist/components/combobox/useVisibleChips.d.ts.map +1 -0
  24. package/dist/components/combobox/useVisibleChips.js +59 -0
  25. package/dist/components/combobox/useVisibleChips.js.map +1 -0
  26. package/dist/components/combobox/useVisibleChips.test.d.ts +2 -0
  27. package/dist/components/combobox/useVisibleChips.test.d.ts.map +1 -0
  28. package/dist/components/combobox/useVisibleChips.test.js +81 -0
  29. package/dist/components/combobox/useVisibleChips.test.js.map +1 -0
  30. package/dist/components/dot/Dot.d.ts.map +1 -1
  31. package/dist/components/dot/Dot.js +1 -1
  32. package/dist/components/dot/Dot.js.map +1 -1
  33. package/dist/components/formField/inputs/checkbox/CheckboxInput.d.ts +2 -2
  34. package/dist/components/formField/inputs/checkbox/CheckboxInput.d.ts.map +1 -1
  35. package/dist/components/formField/inputs/checkbox/CheckboxInput.js +1 -1
  36. package/dist/components/formField/inputs/checkbox/CheckboxInput.js.map +1 -1
  37. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.d.ts +2 -0
  38. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.d.ts.map +1 -1
  39. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.js +100 -0
  40. package/dist/components/formField/inputs/checkbox/CheckboxInput.stories.js.map +1 -1
  41. package/dist/components/formField/inputs/checkbox/CheckboxInput.test.js +17 -1
  42. package/dist/components/formField/inputs/checkbox/CheckboxInput.test.js.map +1 -1
  43. package/dist/components/heading/HeadingInnerContainer.d.ts +5 -0
  44. package/dist/components/heading/HeadingInnerContainer.d.ts.map +1 -0
  45. package/dist/components/heading/HeadingInnerContainer.js +7 -0
  46. package/dist/components/heading/HeadingInnerContainer.js.map +1 -0
  47. package/dist/components/icoText/IcoText.d.ts +37 -0
  48. package/dist/components/icoText/IcoText.d.ts.map +1 -0
  49. package/dist/components/icoText/IcoText.js +29 -0
  50. package/dist/components/icoText/IcoText.js.map +1 -0
  51. package/dist/components/icoText/IcoText.stories.d.ts +60 -0
  52. package/dist/components/icoText/IcoText.stories.d.ts.map +1 -0
  53. package/dist/components/icoText/IcoText.stories.js +319 -0
  54. package/dist/components/icoText/IcoText.stories.js.map +1 -0
  55. package/dist/components/icoText/IcoText.test.d.ts +2 -0
  56. package/dist/components/icoText/IcoText.test.d.ts.map +1 -0
  57. package/dist/components/icoText/IcoText.test.js +27 -0
  58. package/dist/components/icoText/IcoText.test.js.map +1 -0
  59. package/dist/components/pill/Pill.d.ts.map +1 -1
  60. package/dist/components/pill/Pill.js +1 -1
  61. package/dist/components/pill/Pill.js.map +1 -1
  62. package/dist/components/searchBar/SearchBar.d.ts.map +1 -1
  63. package/dist/components/searchBar/SearchBar.js +1 -1
  64. package/dist/components/searchBar/SearchBar.js.map +1 -1
  65. package/dist/components/searchBar/SearchBar.test.js +3 -3
  66. package/dist/components/searchBar/SearchBar.test.js.map +1 -1
  67. package/dist/components/sidebarNav/SidebarNav.d.ts +46 -0
  68. package/dist/components/sidebarNav/SidebarNav.d.ts.map +1 -0
  69. package/dist/components/sidebarNav/SidebarNav.js +102 -0
  70. package/dist/components/sidebarNav/SidebarNav.js.map +1 -0
  71. package/dist/components/sidebarNav/SidebarNav.stories.d.ts +61 -0
  72. package/dist/components/sidebarNav/SidebarNav.stories.d.ts.map +1 -0
  73. package/dist/components/sidebarNav/SidebarNav.stories.js +253 -0
  74. package/dist/components/sidebarNav/SidebarNav.stories.js.map +1 -0
  75. package/dist/components/sidebarNav/SidebarNav.test.d.ts +2 -0
  76. package/dist/components/sidebarNav/SidebarNav.test.d.ts.map +1 -0
  77. package/dist/components/sidebarNav/SidebarNav.test.js +240 -0
  78. package/dist/components/sidebarNav/SidebarNav.test.js.map +1 -0
  79. package/dist/components/sidebarNav/SidebarNavContext.d.ts +13 -0
  80. package/dist/components/sidebarNav/SidebarNavContext.d.ts.map +1 -0
  81. package/dist/components/sidebarNav/SidebarNavContext.js +15 -0
  82. package/dist/components/sidebarNav/SidebarNavContext.js.map +1 -0
  83. package/dist/components/sidebarNav/SidebarNavGroup.d.ts +10 -0
  84. package/dist/components/sidebarNav/SidebarNavGroup.d.ts.map +1 -0
  85. package/dist/components/sidebarNav/SidebarNavGroup.js +16 -0
  86. package/dist/components/sidebarNav/SidebarNavGroup.js.map +1 -0
  87. package/dist/components/sidebarNav/SidebarNavItem.d.ts +32 -0
  88. package/dist/components/sidebarNav/SidebarNavItem.d.ts.map +1 -0
  89. package/dist/components/sidebarNav/SidebarNavItem.js +44 -0
  90. package/dist/components/sidebarNav/SidebarNavItem.js.map +1 -0
  91. package/dist/components/sidebarNav/SidebarNavItemFavourite.d.ts +8 -0
  92. package/dist/components/sidebarNav/SidebarNavItemFavourite.d.ts.map +1 -0
  93. package/dist/components/sidebarNav/SidebarNavItemFavourite.js +14 -0
  94. package/dist/components/sidebarNav/SidebarNavItemFavourite.js.map +1 -0
  95. package/dist/components/sidebarNav/SidebarNavPanel.d.ts +4 -0
  96. package/dist/components/sidebarNav/SidebarNavPanel.d.ts.map +1 -0
  97. package/dist/components/sidebarNav/SidebarNavPanel.js +9 -0
  98. package/dist/components/sidebarNav/SidebarNavPanel.js.map +1 -0
  99. package/dist/components/sidebarNav/SidebarNavPanelNav.d.ts +10 -0
  100. package/dist/components/sidebarNav/SidebarNavPanelNav.d.ts.map +1 -0
  101. package/dist/components/sidebarNav/SidebarNavPanelNav.js +21 -0
  102. package/dist/components/sidebarNav/SidebarNavPanelNav.js.map +1 -0
  103. package/dist/components/sidebarNav/SidebarNavRail.d.ts +6 -0
  104. package/dist/components/sidebarNav/SidebarNavRail.d.ts.map +1 -0
  105. package/dist/components/sidebarNav/SidebarNavRail.js +7 -0
  106. package/dist/components/sidebarNav/SidebarNavRail.js.map +1 -0
  107. package/dist/components/sidebarNav/SidebarNavRailItem.d.ts +10 -0
  108. package/dist/components/sidebarNav/SidebarNavRailItem.d.ts.map +1 -0
  109. package/dist/components/sidebarNav/SidebarNavRailItem.js +25 -0
  110. package/dist/components/sidebarNav/SidebarNavRailItem.js.map +1 -0
  111. package/dist/components/sidebarNav/SidebarNavRailList.d.ts +4 -0
  112. package/dist/components/sidebarNav/SidebarNavRailList.d.ts.map +1 -0
  113. package/dist/components/sidebarNav/SidebarNavRailList.js +7 -0
  114. package/dist/components/sidebarNav/SidebarNavRailList.js.map +1 -0
  115. package/dist/components/sidebarNav/SidebarNavRailSlot.d.ts +6 -0
  116. package/dist/components/sidebarNav/SidebarNavRailSlot.d.ts.map +1 -0
  117. package/dist/components/sidebarNav/SidebarNavRailSlot.js +7 -0
  118. package/dist/components/sidebarNav/SidebarNavRailSlot.js.map +1 -0
  119. package/dist/components/sidebarNav/SidebarNavSeparator.d.ts +6 -0
  120. package/dist/components/sidebarNav/SidebarNavSeparator.d.ts.map +1 -0
  121. package/dist/components/sidebarNav/SidebarNavSeparator.js +8 -0
  122. package/dist/components/sidebarNav/SidebarNavSeparator.js.map +1 -0
  123. package/dist/components/sidebarNav/SidebarNavTitle.d.ts +4 -0
  124. package/dist/components/sidebarNav/SidebarNavTitle.d.ts.map +1 -0
  125. package/dist/components/sidebarNav/SidebarNavTitle.js +7 -0
  126. package/dist/components/sidebarNav/SidebarNavTitle.js.map +1 -0
  127. package/dist/components/sidebarNav/SidebarNavTooltip.d.ts +7 -0
  128. package/dist/components/sidebarNav/SidebarNavTooltip.d.ts.map +1 -0
  129. package/dist/components/sidebarNav/SidebarNavTooltip.js +9 -0
  130. package/dist/components/sidebarNav/SidebarNavTooltip.js.map +1 -0
  131. package/dist/components/sidebarNav/SidebarNavTrigger.d.ts +8 -0
  132. package/dist/components/sidebarNav/SidebarNavTrigger.d.ts.map +1 -0
  133. package/dist/components/sidebarNav/SidebarNavTrigger.js +15 -0
  134. package/dist/components/sidebarNav/SidebarNavTrigger.js.map +1 -0
  135. package/dist/components/sidebarNav/index.d.ts +4 -0
  136. package/dist/components/sidebarNav/index.d.ts.map +1 -0
  137. package/dist/components/sidebarNav/index.js +3 -0
  138. package/dist/components/sidebarNav/index.js.map +1 -0
  139. package/dist/components/sidebarNav/resolvePanelItemProps.d.ts +4 -0
  140. package/dist/components/sidebarNav/resolvePanelItemProps.d.ts.map +1 -0
  141. package/dist/components/sidebarNav/resolvePanelItemProps.js +43 -0
  142. package/dist/components/sidebarNav/resolvePanelItemProps.js.map +1 -0
  143. package/dist/components/sidebarNav/resolvePanelItemProps.test.d.ts +2 -0
  144. package/dist/components/sidebarNav/resolvePanelItemProps.test.d.ts.map +1 -0
  145. package/dist/components/sidebarNav/resolvePanelItemProps.test.js +52 -0
  146. package/dist/components/sidebarNav/resolvePanelItemProps.test.js.map +1 -0
  147. package/dist/components/sidebarNav/types.d.ts +100 -0
  148. package/dist/components/sidebarNav/types.d.ts.map +1 -0
  149. package/dist/components/sidebarNav/types.js +4 -0
  150. package/dist/components/sidebarNav/types.js.map +1 -0
  151. package/dist/components/sidebarNav/useControllableBoolean.d.ts +9 -0
  152. package/dist/components/sidebarNav/useControllableBoolean.d.ts.map +1 -0
  153. package/dist/components/sidebarNav/useControllableBoolean.js +15 -0
  154. package/dist/components/sidebarNav/useControllableBoolean.js.map +1 -0
  155. package/dist/components/slideover/Slideover.stories.d.ts +10 -0
  156. package/dist/components/slideover/Slideover.stories.d.ts.map +1 -0
  157. package/dist/components/slideover/Slideover.stories.js +12 -0
  158. package/dist/components/slideover/Slideover.stories.js.map +1 -0
  159. package/dist/components/table/BulkActionsDropdown.d.ts +12 -0
  160. package/dist/components/table/BulkActionsDropdown.d.ts.map +1 -0
  161. package/dist/components/table/BulkActionsDropdown.js +11 -0
  162. package/dist/components/table/BulkActionsDropdown.js.map +1 -0
  163. package/dist/components/table/HideColumnsDropdown.d.ts +9 -0
  164. package/dist/components/table/HideColumnsDropdown.d.ts.map +1 -0
  165. package/dist/components/table/HideColumnsDropdown.js +33 -0
  166. package/dist/components/table/HideColumnsDropdown.js.map +1 -0
  167. package/dist/components/table/Table.d.ts +1 -1
  168. package/dist/components/table/Table.stories.d.ts.map +1 -1
  169. package/dist/components/table/Table.stories.js +0 -5
  170. package/dist/components/table/Table.stories.js.map +1 -1
  171. package/dist/components/table/Table.test.js +0 -5
  172. package/dist/components/table/Table.test.js.map +1 -1
  173. package/dist/components/table/cellRenderers/SelectDropdownCellEditor.d.ts +8 -0
  174. package/dist/components/table/cellRenderers/SelectDropdownCellEditor.d.ts.map +1 -0
  175. package/dist/components/table/cellRenderers/SelectDropdownCellEditor.js +19 -0
  176. package/dist/components/table/cellRenderers/SelectDropdownCellEditor.js.map +1 -0
  177. package/dist/components/table/hooks/useHistory.d.ts +20 -0
  178. package/dist/components/table/hooks/useHistory.d.ts.map +1 -0
  179. package/dist/components/table/hooks/useHistory.js +73 -0
  180. package/dist/components/table/hooks/useHistory.js.map +1 -0
  181. package/dist/components/table/hooks/useTableHistory.d.ts +21 -0
  182. package/dist/components/table/hooks/useTableHistory.d.ts.map +1 -0
  183. package/dist/components/table/hooks/useTableHistory.js +88 -0
  184. package/dist/components/table/hooks/useTableHistory.js.map +1 -0
  185. package/dist/components/table/pagination/TableSettingsDropdown.d.ts +2 -0
  186. package/dist/components/table/pagination/TableSettingsDropdown.d.ts.map +1 -0
  187. package/dist/components/table/pagination/TableSettingsDropdown.js +42 -0
  188. package/dist/components/table/pagination/TableSettingsDropdown.js.map +1 -0
  189. package/dist/components/table/tableHeader/TableHeader.d.ts +14 -0
  190. package/dist/components/table/tableHeader/TableHeader.d.ts.map +1 -0
  191. package/dist/components/table/tableHeader/TableHeader.js +55 -0
  192. package/dist/components/table/tableHeader/TableHeader.js.map +1 -0
  193. package/dist/components/table/tableHeader/index.d.ts +2 -0
  194. package/dist/components/table/tableHeader/index.d.ts.map +1 -0
  195. package/dist/components/table/tableHeader/index.js +2 -0
  196. package/dist/components/table/tableHeader/index.js.map +1 -0
  197. package/dist/components/table/tableTheme.d.ts +2 -0
  198. package/dist/components/table/tableTheme.d.ts.map +1 -0
  199. package/dist/components/table/tableTheme.js +18 -0
  200. package/dist/components/table/tableTheme.js.map +1 -0
  201. package/dist/components/table/types.d.ts +169 -0
  202. package/dist/components/table/types.d.ts.map +1 -0
  203. package/dist/components/table/types.js +11 -0
  204. package/dist/components/table/types.js.map +1 -0
  205. package/dist/components/table/utils/setAgGridLicenseKey.d.ts +2 -0
  206. package/dist/components/table/utils/setAgGridLicenseKey.d.ts.map +1 -0
  207. package/dist/components/table/utils/setAgGridLicenseKey.js +11 -0
  208. package/dist/components/table/utils/setAgGridLicenseKey.js.map +1 -0
  209. package/dist/layoutTest.stories.d.ts +6 -0
  210. package/dist/layoutTest.stories.d.ts.map +1 -0
  211. package/dist/layoutTest.stories.js +9 -0
  212. package/dist/layoutTest.stories.js.map +1 -0
  213. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.d.ts +39 -0
  214. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.d.ts.map +1 -0
  215. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.js +112 -0
  216. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.js.map +1 -0
  217. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.stories.d.ts +184 -0
  218. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.stories.d.ts.map +1 -0
  219. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.stories.js +317 -0
  220. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.stories.js.map +1 -0
  221. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.test.d.ts +2 -0
  222. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.test.d.ts.map +1 -0
  223. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.test.js +160 -0
  224. package/dist/pages/assessmentBuilderPage/AssessmentBuilderPage.test.js.map +1 -0
  225. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.d.ts +11 -0
  226. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.d.ts.map +1 -0
  227. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.js +13 -0
  228. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.js.map +1 -0
  229. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.stories.d.ts +174 -0
  230. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.stories.d.ts.map +1 -0
  231. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.stories.js +212 -0
  232. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.stories.js.map +1 -0
  233. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.test.d.ts +2 -0
  234. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.test.d.ts.map +1 -0
  235. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.test.js +84 -0
  236. package/dist/pages/assessmentSettingsPage/AssessmentSettingsPage.test.js.map +1 -0
  237. package/dist/pages/assessmentsPage/AssessmentsPage.d.ts +16 -0
  238. package/dist/pages/assessmentsPage/AssessmentsPage.d.ts.map +1 -0
  239. package/dist/pages/assessmentsPage/AssessmentsPage.js +31 -0
  240. package/dist/pages/assessmentsPage/AssessmentsPage.js.map +1 -0
  241. package/dist/pages/assessmentsPage/AssessmentsPage.stories.d.ts +162 -0
  242. package/dist/pages/assessmentsPage/AssessmentsPage.stories.d.ts.map +1 -0
  243. package/dist/pages/assessmentsPage/AssessmentsPage.stories.js +290 -0
  244. package/dist/pages/assessmentsPage/AssessmentsPage.stories.js.map +1 -0
  245. package/dist/pages/assessmentsPage/AssessmentsPage.test.d.ts +2 -0
  246. package/dist/pages/assessmentsPage/AssessmentsPage.test.d.ts.map +1 -0
  247. package/dist/pages/assessmentsPage/AssessmentsPage.test.js +109 -0
  248. package/dist/pages/assessmentsPage/AssessmentsPage.test.js.map +1 -0
  249. package/dist/pages/customReportWriterPage/CustomReportWriterPage.d.ts +40 -0
  250. package/dist/pages/customReportWriterPage/CustomReportWriterPage.d.ts.map +1 -0
  251. package/dist/pages/customReportWriterPage/CustomReportWriterPage.js +156 -0
  252. package/dist/pages/customReportWriterPage/CustomReportWriterPage.js.map +1 -0
  253. package/dist/pages/customReportWriterPage/CustomReportWriterPage.stories.d.ts +239 -0
  254. package/dist/pages/customReportWriterPage/CustomReportWriterPage.stories.d.ts.map +1 -0
  255. package/dist/pages/customReportWriterPage/CustomReportWriterPage.stories.js +318 -0
  256. package/dist/pages/customReportWriterPage/CustomReportWriterPage.stories.js.map +1 -0
  257. package/dist/pages/customReportWriterPage/CustomReportWriterPage.test.d.ts +2 -0
  258. package/dist/pages/customReportWriterPage/CustomReportWriterPage.test.d.ts.map +1 -0
  259. package/dist/pages/customReportWriterPage/CustomReportWriterPage.test.js +183 -0
  260. package/dist/pages/customReportWriterPage/CustomReportWriterPage.test.js.map +1 -0
  261. package/dist/pages/gradeSetsPage/GradeSetsPage.d.ts +26 -0
  262. package/dist/pages/gradeSetsPage/GradeSetsPage.d.ts.map +1 -0
  263. package/dist/pages/gradeSetsPage/GradeSetsPage.js +33 -0
  264. package/dist/pages/gradeSetsPage/GradeSetsPage.js.map +1 -0
  265. package/dist/pages/gradeSetsPage/GradeSetsPage.stories.d.ts +176 -0
  266. package/dist/pages/gradeSetsPage/GradeSetsPage.stories.d.ts.map +1 -0
  267. package/dist/pages/gradeSetsPage/GradeSetsPage.stories.js +237 -0
  268. package/dist/pages/gradeSetsPage/GradeSetsPage.stories.js.map +1 -0
  269. package/dist/pages/gradeSetsPage/GradeSetsPage.test.d.ts +2 -0
  270. package/dist/pages/gradeSetsPage/GradeSetsPage.test.d.ts.map +1 -0
  271. package/dist/pages/gradeSetsPage/GradeSetsPage.test.js +91 -0
  272. package/dist/pages/gradeSetsPage/GradeSetsPage.test.js.map +1 -0
  273. package/dist/pages/studentProfilePage/StudentProfilePage.d.ts +48 -0
  274. package/dist/pages/studentProfilePage/StudentProfilePage.d.ts.map +1 -0
  275. package/dist/pages/studentProfilePage/StudentProfilePage.js +52 -0
  276. package/dist/pages/studentProfilePage/StudentProfilePage.js.map +1 -0
  277. package/dist/pages/studentProfilePage/StudentProfilePage.stories.d.ts +218 -0
  278. package/dist/pages/studentProfilePage/StudentProfilePage.stories.d.ts.map +1 -0
  279. package/dist/pages/studentProfilePage/StudentProfilePage.stories.js +273 -0
  280. package/dist/pages/studentProfilePage/StudentProfilePage.stories.js.map +1 -0
  281. package/dist/pages/studentProfilePage/StudentProfilePage.test.d.ts +2 -0
  282. package/dist/pages/studentProfilePage/StudentProfilePage.test.d.ts.map +1 -0
  283. package/dist/pages/studentProfilePage/StudentProfilePage.test.js +197 -0
  284. package/dist/pages/studentProfilePage/StudentProfilePage.test.js.map +1 -0
  285. package/dist/utils/PopupParentContext.d.ts +3 -0
  286. package/dist/utils/PopupParentContext.d.ts.map +1 -0
  287. package/dist/utils/PopupParentContext.js +6 -0
  288. package/dist/utils/PopupParentContext.js.map +1 -0
  289. package/dist/utils/PopupParentContext.stories.d.ts +17 -0
  290. package/dist/utils/PopupParentContext.stories.d.ts.map +1 -0
  291. package/dist/utils/PopupParentContext.stories.js +266 -0
  292. package/dist/utils/PopupParentContext.stories.js.map +1 -0
  293. package/dist/utils/getDefaultPopupParent.d.ts +2 -0
  294. package/dist/utils/getDefaultPopupParent.d.ts.map +1 -0
  295. package/dist/utils/getDefaultPopupParent.js +19 -0
  296. package/dist/utils/getDefaultPopupParent.js.map +1 -0
  297. package/dist/utils/popupParent/PopupParentContext.stories.d.ts.map +1 -1
  298. package/dist/utils/popupParent/PopupParentContext.stories.js +1 -1
  299. package/dist/utils/popupParent/PopupParentContext.stories.js.map +1 -1
  300. package/package.json +4 -4
  301. package/src/components/avatar/Avatar.tsx +2 -2
  302. package/src/components/badge/Badge.stories.tsx +0 -103
  303. package/src/components/dot/Dot.tsx +1 -0
  304. package/src/components/formField/inputs/checkbox/CheckboxInput.stories.tsx +178 -1
  305. package/src/components/formField/inputs/checkbox/CheckboxInput.test.tsx +58 -0
  306. package/src/components/formField/inputs/checkbox/CheckboxInput.tsx +3 -3
  307. package/src/components/pill/Pill.tsx +1 -0
  308. package/src/components/searchBar/SearchBar.test.tsx +3 -3
  309. package/src/components/searchBar/SearchBar.tsx +1 -0
  310. package/src/components/table/Table.stories.tsx +0 -5
  311. package/src/components/table/Table.test.tsx +0 -5
  312. package/src/utils/popupParent/PopupParentContext.stories.tsx +1 -0
@@ -0,0 +1,184 @@
1
+ import type { StoryObj } from '@storybook/react-vite';
2
+ /**
3
+ * Well, picture it: St. Olaf, 1982.
4
+ *
5
+ * The school district needed to build a new system for tracking student assessments across
6
+ * all the different periods and subjects. Gunnar Gustafsson spent three weeks drawing
7
+ * columns on giant sheets of graph paper, organising them into groups by term (Autumn,
8
+ * Spring, Summer), and then trying to figure out who would collect which pieces of data -
9
+ * teachers, administrators, or the automatic tallying machine that counted lutefisk portions.
10
+ * It was exhausting work, but when it was done, oh my stars, it was beautiful! Every
11
+ * column was in its place, every subject was accounted for, and you could see the whole
12
+ * structure laid out like a magnificent hierarchical tree.
13
+ *
14
+ * The AssessmentBuilderPage is the digital version of Gunnar's graph paper masterpiece.
15
+ * It is a complex page for configuring assessment marksheet columns with a hierarchical,
16
+ * tree-based structure. Teachers and administrators can build out their assessment columns,
17
+ * organise them into groups (like assessment periods), configure who collects each piece
18
+ * of data, and control visibility settings - all in one place.
19
+ *
20
+ * **Features:**
21
+ * - Breadcrumb navigation showing "Assessments / Create New Assessment" with a copy link button
22
+ * - Inline-editable page heading (click the edit icon to rename the assessment)
23
+ * - Tab navigation to switch between "Build Mode" and "Preview" (preview is a placeholder)
24
+ * - Hierarchical Table (AG Grid) with tree data structure:
25
+ * - Parent rows (assessment period groups like "Autumn", "Spring", "Summer")
26
+ * - Child rows (individual subject columns like "English Language", "Maths")
27
+ * - Auto-expand all groups by default (`groupDefaultExpanded={-1}`)
28
+ * - Editable "Column Name" field via inline text editing
29
+ * - Dropdown cell editors for "Data Collection" (Teacher / Admin / Automatic)
30
+ * - Dropdown cell editors for "Visibility" (Auto-visibility / Visible / Hidden)
31
+ * - Undo button in each row to revert changes
32
+ * - Multi-row selection with checkbox column
33
+ * - Contextual sidebar for selecting which columns to add:
34
+ * - SearchBar for filtering available columns
35
+ * - Filter dropdown (All Columns / Selected Only / Unselected Only)
36
+ * - Collapsible sections: Demographics, Student Identifier, Assessment Periods, Subjects
37
+ * - Pill checkboxes for Demographics and Subjects (with "See more" buttons)
38
+ * - CheckboxGroup for Student Identifier and Assessment Periods
39
+ * - "Proceed to Marksheets" primary action button at the bottom
40
+ *
41
+ * **Build Mode vs Preview:**
42
+ * - Build Mode (default tab): shows the full marksheet columns table and sidebar
43
+ * - Preview: placeholder content ("Preview mode - coming soon")
44
+ *
45
+ * **Accessibility:**
46
+ * - Breadcrumb uses `<nav aria-label="Breadcrumb">` for clear navigation context
47
+ * - Heading is editable via a button with `iconLeftScreenReaderText="Edit assessment name"`
48
+ * - Tabs are keyboard-navigable and ARIA-compliant via the Tabs component
49
+ * - Table uses AG Grid's built-in accessibility features (keyboard navigation, screen reader support)
50
+ * - Sidebar sections are collapsible via the Section component's accessible toggle buttons
51
+ * - SearchBar has proper labelling via placeholder text
52
+ *
53
+ * **Usage:**
54
+ * This is a PAGE component, not a library component - it demonstrates how to compose
55
+ * multiple Arbor design system components (Button, Heading, Tabs, Section, Table, Pill,
56
+ * SearchBar, CheckboxGroup, Dropdown) into a complete application page. It is part of
57
+ * the KS4 Assessment Builder workflow, typically reached from the AssessmentsPage after
58
+ * clicking "Create New Assessment".
59
+ */
60
+ declare const meta: {
61
+ title: string;
62
+ component: import("react").FC<import("./AssessmentBuilderPage.js").AssessmentBuilderPageProps>;
63
+ parameters: {
64
+ layout: string;
65
+ docs: {
66
+ description: {
67
+ component: string;
68
+ };
69
+ };
70
+ };
71
+ tags: string[];
72
+ args: {
73
+ onSave: import("@vitest/spy").Mock<(...args: any[]) => any>;
74
+ onProceedToMarksheets: import("@vitest/spy").Mock<(...args: any[]) => any>;
75
+ onNavigateToAssessments: import("@vitest/spy").Mock<(...args: any[]) => any>;
76
+ };
77
+ argTypes: {
78
+ assessmentName: {
79
+ control: "text";
80
+ description: string;
81
+ };
82
+ marksheetColumns: {
83
+ control: "object";
84
+ description: string;
85
+ };
86
+ onSave: {
87
+ description: string;
88
+ };
89
+ onProceedToMarksheets: {
90
+ description: string;
91
+ };
92
+ onNavigateToAssessments: {
93
+ description: string;
94
+ };
95
+ className: {
96
+ control: "text";
97
+ description: string;
98
+ };
99
+ };
100
+ };
101
+ export default meta;
102
+ type Story = StoryObj<typeof meta>;
103
+ /**
104
+ * The default state with a realistic set of marksheet columns.
105
+ *
106
+ * Oh, this is just lovely, hunni! You've got your three assessment periods
107
+ * (Autumn, Spring, Summer), each with three subjects (English Language,
108
+ * English Literature, and Maths). It reminds me of the time in St. Olaf
109
+ * when we organised the annual school assessment fair - we had three tents,
110
+ * each representing a term, and inside each tent were the different subject
111
+ * stations. It was so organised that even the tourists got involved!
112
+ *
113
+ * The table shows all groups fully expanded by default, so you can see
114
+ * every single column right away. Try clicking the dropdown cells to change
115
+ * the "Data Collection" or "Visibility" values. The inline text editor lets
116
+ * you rename any column - just click on a column name to edit it.
117
+ *
118
+ * Over in the sidebar, you can see all the available contextual columns
119
+ * organised into collapsible sections. The Demographics and Subjects sections
120
+ * use pill checkboxes (so nice and compact!), while the Student Identifier
121
+ * and Assessment Periods sections use traditional checkbox groups. Click
122
+ * "Proceed to Marksheets" when you are ready to move forward.
123
+ */
124
+ export declare const Default: Story;
125
+ /**
126
+ * The empty state - no marksheet columns have been added yet.
127
+ *
128
+ * You know, this reminds me of the time in St. Olaf when we started building
129
+ * a brand new assessment system from scratch. The first day, we just had an
130
+ * empty table and a lot of hope. But oh my stars, hunni, by the end of the
131
+ * week we had filled it with the most beautiful hierarchical structure you
132
+ * ever did see!
133
+ *
134
+ * This story shows the page with no marksheet columns loaded yet - just the
135
+ * empty table waiting to be populated. The sidebar is still fully functional,
136
+ * so you can explore the available contextual columns and imagine what your
137
+ * assessment structure will look like once you start adding columns.
138
+ *
139
+ * Notice how the breadcrumbs, page heading, tabs, and sidebar all render
140
+ * perfectly even without any table data. The page is ready and waiting for
141
+ * you to start building!
142
+ */
143
+ export declare const EmptyState: Story;
144
+ /**
145
+ * A more complex scenario with additional subjects and demographic columns.
146
+ *
147
+ * Oh my stars, this is like the time in St. Olaf when the school board decided
148
+ * to track EVERYTHING - not just the core subjects, but also demographics,
149
+ * student identifiers, effort grades, and even which students brought the best
150
+ * herring sandwiches to lunch (that last one might have been unofficial).
151
+ *
152
+ * This story shows a more realistic, complex assessment structure with:
153
+ * - A Demographics group containing Gender, Year Group, and UPN
154
+ * - Three full assessment periods (Autumn, Spring, Summer) with six subjects each
155
+ * - A Final Grades group with Overall Grade and Effort Grade
156
+ *
157
+ * All groups are expanded by default, so you can see the full tree structure
158
+ * at a glance. Try collapsing a few groups (click the group row name) to see
159
+ * how much more manageable the list becomes. Then expand them again to see
160
+ * all the beautiful detail.
161
+ *
162
+ * The sidebar lets you add even MORE columns - Demographics pills, Student
163
+ * Identifier checkboxes, Assessment Period checkboxes, and Subject pills.
164
+ * It is like a buffet of contextual columns, hunni!
165
+ */
166
+ export declare const WithComplexData: Story;
167
+ /**
168
+ * A story with action callbacks wired up to Storybook actions.
169
+ *
170
+ * Back in St. Olaf, whenever something important happened - like finishing
171
+ * the assessment setup or clicking the Save button - we would ring the town
172
+ * bell so everyone knew. In Storybook, we use the Actions panel instead!
173
+ *
174
+ * This story demonstrates all the interactive callbacks on the page:
175
+ * - Click the "Assessments" breadcrumb link to trigger `onNavigateToAssessments`
176
+ * - Click "Proceed to Marksheets" in the sidebar to trigger `onProceedToMarksheets`
177
+ * - The `onSave` callback is available (though not currently wired to a visible button)
178
+ *
179
+ * Open the "Actions" panel at the bottom of Storybook to see each callback
180
+ * fire when you interact with the page. It is most excellent for testing
181
+ * integration with parent components or routing logic, hunni!
182
+ */
183
+ export declare const WithCallbacks: Story;
184
+ //# sourceMappingURL=AssessmentBuilderPage.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssessmentBuilderPage.stories.d.ts","sourceRoot":"","sources":["../../../src/pages/assessmentBuilderPage/AssessmentBuilderPage.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAK5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CoC,CAAC;AAE/C,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAmHnC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,eAAe,EAAE,KAM7B,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,aAAa,EAAE,KAM3B,CAAC"}
@@ -0,0 +1,317 @@
1
+ import { fn } from 'storybook/test';
2
+ import { AssessmentBuilderPage } from './AssessmentBuilderPage.js';
3
+ /**
4
+ * Well, picture it: St. Olaf, 1982.
5
+ *
6
+ * The school district needed to build a new system for tracking student assessments across
7
+ * all the different periods and subjects. Gunnar Gustafsson spent three weeks drawing
8
+ * columns on giant sheets of graph paper, organising them into groups by term (Autumn,
9
+ * Spring, Summer), and then trying to figure out who would collect which pieces of data -
10
+ * teachers, administrators, or the automatic tallying machine that counted lutefisk portions.
11
+ * It was exhausting work, but when it was done, oh my stars, it was beautiful! Every
12
+ * column was in its place, every subject was accounted for, and you could see the whole
13
+ * structure laid out like a magnificent hierarchical tree.
14
+ *
15
+ * The AssessmentBuilderPage is the digital version of Gunnar's graph paper masterpiece.
16
+ * It is a complex page for configuring assessment marksheet columns with a hierarchical,
17
+ * tree-based structure. Teachers and administrators can build out their assessment columns,
18
+ * organise them into groups (like assessment periods), configure who collects each piece
19
+ * of data, and control visibility settings - all in one place.
20
+ *
21
+ * **Features:**
22
+ * - Breadcrumb navigation showing "Assessments / Create New Assessment" with a copy link button
23
+ * - Inline-editable page heading (click the edit icon to rename the assessment)
24
+ * - Tab navigation to switch between "Build Mode" and "Preview" (preview is a placeholder)
25
+ * - Hierarchical Table (AG Grid) with tree data structure:
26
+ * - Parent rows (assessment period groups like "Autumn", "Spring", "Summer")
27
+ * - Child rows (individual subject columns like "English Language", "Maths")
28
+ * - Auto-expand all groups by default (`groupDefaultExpanded={-1}`)
29
+ * - Editable "Column Name" field via inline text editing
30
+ * - Dropdown cell editors for "Data Collection" (Teacher / Admin / Automatic)
31
+ * - Dropdown cell editors for "Visibility" (Auto-visibility / Visible / Hidden)
32
+ * - Undo button in each row to revert changes
33
+ * - Multi-row selection with checkbox column
34
+ * - Contextual sidebar for selecting which columns to add:
35
+ * - SearchBar for filtering available columns
36
+ * - Filter dropdown (All Columns / Selected Only / Unselected Only)
37
+ * - Collapsible sections: Demographics, Student Identifier, Assessment Periods, Subjects
38
+ * - Pill checkboxes for Demographics and Subjects (with "See more" buttons)
39
+ * - CheckboxGroup for Student Identifier and Assessment Periods
40
+ * - "Proceed to Marksheets" primary action button at the bottom
41
+ *
42
+ * **Build Mode vs Preview:**
43
+ * - Build Mode (default tab): shows the full marksheet columns table and sidebar
44
+ * - Preview: placeholder content ("Preview mode - coming soon")
45
+ *
46
+ * **Accessibility:**
47
+ * - Breadcrumb uses `<nav aria-label="Breadcrumb">` for clear navigation context
48
+ * - Heading is editable via a button with `iconLeftScreenReaderText="Edit assessment name"`
49
+ * - Tabs are keyboard-navigable and ARIA-compliant via the Tabs component
50
+ * - Table uses AG Grid's built-in accessibility features (keyboard navigation, screen reader support)
51
+ * - Sidebar sections are collapsible via the Section component's accessible toggle buttons
52
+ * - SearchBar has proper labelling via placeholder text
53
+ *
54
+ * **Usage:**
55
+ * This is a PAGE component, not a library component - it demonstrates how to compose
56
+ * multiple Arbor design system components (Button, Heading, Tabs, Section, Table, Pill,
57
+ * SearchBar, CheckboxGroup, Dropdown) into a complete application page. It is part of
58
+ * the KS4 Assessment Builder workflow, typically reached from the AssessmentsPage after
59
+ * clicking "Create New Assessment".
60
+ */
61
+ const meta = {
62
+ title: 'Pages/AssessmentBuilderPage',
63
+ component: AssessmentBuilderPage,
64
+ parameters: {
65
+ layout: 'fullscreen',
66
+ docs: {
67
+ description: {
68
+ component: 'The Assessment Builder page for configuring marksheet columns. Features a hierarchical table (tree data with parent/child rows), inline editing, dropdown cell editors, and a contextual sidebar for selecting which columns to include. Back in St. Olaf, Gunnar did this with graph paper and a protractor - we do it with AG Grid and a whole lot of love.',
69
+ },
70
+ },
71
+ },
72
+ tags: ['autodocs'],
73
+ args: {
74
+ onSave: fn(),
75
+ onProceedToMarksheets: fn(),
76
+ onNavigateToAssessments: fn(),
77
+ },
78
+ argTypes: {
79
+ assessmentName: {
80
+ control: 'text',
81
+ description: 'The name of the assessment being built. Displayed in the page heading and editable via the inline edit button.',
82
+ },
83
+ marksheetColumns: {
84
+ control: 'object',
85
+ description: 'The hierarchical list of marksheet columns. Each column can have child columns (via the children array), forming a tree structure. Parent rows typically represent assessment periods (Autumn, Spring, Summer), and child rows represent individual subjects or data points.',
86
+ },
87
+ onSave: {
88
+ description: 'Called when the user saves the assessment. (Currently not wired to a visible Save button, but available for future use.)',
89
+ },
90
+ onProceedToMarksheets: {
91
+ description: 'Called when the "Proceed to Marksheets" button in the sidebar is clicked. This typically navigates the user to the marksheet data entry screen.',
92
+ },
93
+ onNavigateToAssessments: {
94
+ description: 'Called when the "Assessments" breadcrumb link is clicked. This typically navigates back to the AssessmentsPage (the assessments list homepage).',
95
+ },
96
+ className: {
97
+ control: 'text',
98
+ description: 'Optional additional CSS class name(s) to apply to the page root element.',
99
+ },
100
+ },
101
+ };
102
+ export default meta;
103
+ // ---------------------------------------------------------------------------
104
+ // Shared data fixtures - just like St. Olaf's finest assessment records
105
+ // ---------------------------------------------------------------------------
106
+ /**
107
+ * A realistic set of marksheet columns with three assessment periods,
108
+ * each containing three subject columns.
109
+ */
110
+ const sampleMarksheetColumns = [
111
+ {
112
+ id: 1,
113
+ name: 'Student Name',
114
+ dataCollection: undefined,
115
+ visibility: 'show',
116
+ },
117
+ {
118
+ id: 2,
119
+ name: 'Autumn',
120
+ children: [
121
+ { id: 3, name: 'English Language', dataCollection: 'teacher', visibility: 'auto-visible' },
122
+ { id: 4, name: 'English Literature', dataCollection: 'admin', visibility: 'auto-visible' },
123
+ { id: 5, name: 'Maths', dataCollection: 'teacher', visibility: 'auto-visible' },
124
+ ],
125
+ },
126
+ {
127
+ id: 6,
128
+ name: 'Spring',
129
+ children: [
130
+ { id: 7, name: 'English Language', dataCollection: 'teacher', visibility: 'auto-visible' },
131
+ { id: 8, name: 'English Literature', dataCollection: 'admin', visibility: 'auto-visible' },
132
+ { id: 9, name: 'Maths', dataCollection: 'teacher', visibility: 'auto-visible' },
133
+ ],
134
+ },
135
+ {
136
+ id: 10,
137
+ name: 'Summer',
138
+ children: [
139
+ { id: 11, name: 'English Language', dataCollection: 'teacher', visibility: 'auto-visible' },
140
+ { id: 12, name: 'English Literature', dataCollection: 'admin', visibility: 'auto-visible' },
141
+ { id: 13, name: 'Maths', dataCollection: 'automatic', visibility: 'hidden' },
142
+ ],
143
+ },
144
+ ];
145
+ /**
146
+ * A larger, more complex dataset with additional subjects and assessment periods.
147
+ */
148
+ const complexMarksheetColumns = [
149
+ {
150
+ id: 1,
151
+ name: 'Student Name',
152
+ dataCollection: undefined,
153
+ visibility: 'show',
154
+ },
155
+ {
156
+ id: 2,
157
+ name: 'Demographics',
158
+ children: [
159
+ { id: 3, name: 'Gender', dataCollection: 'automatic', visibility: 'visible' },
160
+ { id: 4, name: 'Year Group', dataCollection: 'automatic', visibility: 'visible' },
161
+ { id: 5, name: 'UPN', dataCollection: 'automatic', visibility: 'auto-visible' },
162
+ ],
163
+ },
164
+ {
165
+ id: 6,
166
+ name: 'Autumn Term',
167
+ children: [
168
+ { id: 7, name: 'English Language', dataCollection: 'teacher', visibility: 'auto-visible' },
169
+ { id: 8, name: 'English Literature', dataCollection: 'teacher', visibility: 'auto-visible' },
170
+ { id: 9, name: 'Maths', dataCollection: 'teacher', visibility: 'auto-visible' },
171
+ { id: 10, name: 'Science', dataCollection: 'teacher', visibility: 'auto-visible' },
172
+ { id: 11, name: 'History', dataCollection: 'admin', visibility: 'auto-visible' },
173
+ { id: 12, name: 'Geography', dataCollection: 'admin', visibility: 'hidden' },
174
+ ],
175
+ },
176
+ {
177
+ id: 13,
178
+ name: 'Spring Term',
179
+ children: [
180
+ { id: 14, name: 'English Language', dataCollection: 'teacher', visibility: 'auto-visible' },
181
+ { id: 15, name: 'English Literature', dataCollection: 'teacher', visibility: 'auto-visible' },
182
+ { id: 16, name: 'Maths', dataCollection: 'teacher', visibility: 'auto-visible' },
183
+ { id: 17, name: 'Science', dataCollection: 'teacher', visibility: 'auto-visible' },
184
+ { id: 18, name: 'History', dataCollection: 'admin', visibility: 'auto-visible' },
185
+ { id: 19, name: 'Geography', dataCollection: 'admin', visibility: 'hidden' },
186
+ ],
187
+ },
188
+ {
189
+ id: 20,
190
+ name: 'Summer Term',
191
+ children: [
192
+ { id: 21, name: 'English Language', dataCollection: 'teacher', visibility: 'auto-visible' },
193
+ { id: 22, name: 'English Literature', dataCollection: 'teacher', visibility: 'auto-visible' },
194
+ { id: 23, name: 'Maths', dataCollection: 'teacher', visibility: 'auto-visible' },
195
+ { id: 24, name: 'Science', dataCollection: 'teacher', visibility: 'auto-visible' },
196
+ { id: 25, name: 'History', dataCollection: 'admin', visibility: 'auto-visible' },
197
+ { id: 26, name: 'Geography', dataCollection: 'automatic', visibility: 'hidden' },
198
+ ],
199
+ },
200
+ {
201
+ id: 27,
202
+ name: 'Final Grades',
203
+ children: [
204
+ { id: 28, name: 'Overall Grade', dataCollection: 'automatic', visibility: 'visible' },
205
+ { id: 29, name: 'Effort Grade', dataCollection: 'teacher', visibility: 'visible' },
206
+ ],
207
+ },
208
+ ];
209
+ // ---------------------------------------------------------------------------
210
+ // Stories
211
+ // ---------------------------------------------------------------------------
212
+ /**
213
+ * The default state with a realistic set of marksheet columns.
214
+ *
215
+ * Oh, this is just lovely, hunni! You've got your three assessment periods
216
+ * (Autumn, Spring, Summer), each with three subjects (English Language,
217
+ * English Literature, and Maths). It reminds me of the time in St. Olaf
218
+ * when we organised the annual school assessment fair - we had three tents,
219
+ * each representing a term, and inside each tent were the different subject
220
+ * stations. It was so organised that even the tourists got involved!
221
+ *
222
+ * The table shows all groups fully expanded by default, so you can see
223
+ * every single column right away. Try clicking the dropdown cells to change
224
+ * the "Data Collection" or "Visibility" values. The inline text editor lets
225
+ * you rename any column - just click on a column name to edit it.
226
+ *
227
+ * Over in the sidebar, you can see all the available contextual columns
228
+ * organised into collapsible sections. The Demographics and Subjects sections
229
+ * use pill checkboxes (so nice and compact!), while the Student Identifier
230
+ * and Assessment Periods sections use traditional checkbox groups. Click
231
+ * "Proceed to Marksheets" when you are ready to move forward.
232
+ */
233
+ export const Default = {
234
+ name: 'Default (With Sample Data)',
235
+ args: {
236
+ assessmentName: 'KS4 Assessment 2025/26',
237
+ marksheetColumns: sampleMarksheetColumns,
238
+ },
239
+ };
240
+ /**
241
+ * The empty state - no marksheet columns have been added yet.
242
+ *
243
+ * You know, this reminds me of the time in St. Olaf when we started building
244
+ * a brand new assessment system from scratch. The first day, we just had an
245
+ * empty table and a lot of hope. But oh my stars, hunni, by the end of the
246
+ * week we had filled it with the most beautiful hierarchical structure you
247
+ * ever did see!
248
+ *
249
+ * This story shows the page with no marksheet columns loaded yet - just the
250
+ * empty table waiting to be populated. The sidebar is still fully functional,
251
+ * so you can explore the available contextual columns and imagine what your
252
+ * assessment structure will look like once you start adding columns.
253
+ *
254
+ * Notice how the breadcrumbs, page heading, tabs, and sidebar all render
255
+ * perfectly even without any table data. The page is ready and waiting for
256
+ * you to start building!
257
+ */
258
+ export const EmptyState = {
259
+ name: 'Empty State (No Columns)',
260
+ args: {
261
+ assessmentName: 'New Assessment',
262
+ marksheetColumns: [],
263
+ },
264
+ };
265
+ /**
266
+ * A more complex scenario with additional subjects and demographic columns.
267
+ *
268
+ * Oh my stars, this is like the time in St. Olaf when the school board decided
269
+ * to track EVERYTHING - not just the core subjects, but also demographics,
270
+ * student identifiers, effort grades, and even which students brought the best
271
+ * herring sandwiches to lunch (that last one might have been unofficial).
272
+ *
273
+ * This story shows a more realistic, complex assessment structure with:
274
+ * - A Demographics group containing Gender, Year Group, and UPN
275
+ * - Three full assessment periods (Autumn, Spring, Summer) with six subjects each
276
+ * - A Final Grades group with Overall Grade and Effort Grade
277
+ *
278
+ * All groups are expanded by default, so you can see the full tree structure
279
+ * at a glance. Try collapsing a few groups (click the group row name) to see
280
+ * how much more manageable the list becomes. Then expand them again to see
281
+ * all the beautiful detail.
282
+ *
283
+ * The sidebar lets you add even MORE columns - Demographics pills, Student
284
+ * Identifier checkboxes, Assessment Period checkboxes, and Subject pills.
285
+ * It is like a buffet of contextual columns, hunni!
286
+ */
287
+ export const WithComplexData = {
288
+ name: 'Complex Data (Multiple Periods & Subjects)',
289
+ args: {
290
+ assessmentName: 'KS4 Full Year Assessment 2025/26',
291
+ marksheetColumns: complexMarksheetColumns,
292
+ },
293
+ };
294
+ /**
295
+ * A story with action callbacks wired up to Storybook actions.
296
+ *
297
+ * Back in St. Olaf, whenever something important happened - like finishing
298
+ * the assessment setup or clicking the Save button - we would ring the town
299
+ * bell so everyone knew. In Storybook, we use the Actions panel instead!
300
+ *
301
+ * This story demonstrates all the interactive callbacks on the page:
302
+ * - Click the "Assessments" breadcrumb link to trigger `onNavigateToAssessments`
303
+ * - Click "Proceed to Marksheets" in the sidebar to trigger `onProceedToMarksheets`
304
+ * - The `onSave` callback is available (though not currently wired to a visible button)
305
+ *
306
+ * Open the "Actions" panel at the bottom of Storybook to see each callback
307
+ * fire when you interact with the page. It is most excellent for testing
308
+ * integration with parent components or routing logic, hunni!
309
+ */
310
+ export const WithCallbacks = {
311
+ name: 'With Action Callbacks',
312
+ args: {
313
+ assessmentName: 'Interactive Assessment Example',
314
+ marksheetColumns: sampleMarksheetColumns,
315
+ },
316
+ };
317
+ //# sourceMappingURL=AssessmentBuilderPage.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssessmentBuilderPage.stories.js","sourceRoot":"","sources":["../../../src/pages/assessmentBuilderPage/AssessmentBuilderPage.stories.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import '@testing-library/jest-dom/vitest';
2
+ //# sourceMappingURL=AssessmentBuilderPage.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssessmentBuilderPage.test.d.ts","sourceRoot":"","sources":["../../../src/pages/assessmentBuilderPage/AssessmentBuilderPage.test.tsx"],"names":[],"mappings":"AAGA,OAAO,kCAAkC,CAAC"}