@arbor-education/design-system.components 0.5.5 → 0.7.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 (341) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/components/avatar/Avatar.d.ts +1 -1
  3. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  4. package/dist/components/avatar/Avatar.js +1 -1
  5. package/dist/components/avatar/Avatar.js.map +1 -1
  6. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
  7. package/dist/components/avatar/Avatar.stories.js +7 -0
  8. package/dist/components/avatar/Avatar.stories.js.map +1 -1
  9. package/dist/components/avatarGroup/AvatarGroup.d.ts +32 -0
  10. package/dist/components/avatarGroup/AvatarGroup.d.ts.map +1 -0
  11. package/dist/components/avatarGroup/AvatarGroup.js +37 -0
  12. package/dist/components/avatarGroup/AvatarGroup.js.map +1 -0
  13. package/dist/components/avatarGroup/AvatarGroup.stories.d.ts +14 -0
  14. package/dist/components/avatarGroup/AvatarGroup.stories.d.ts.map +1 -0
  15. package/dist/components/avatarGroup/AvatarGroup.stories.js +91 -0
  16. package/dist/components/avatarGroup/AvatarGroup.stories.js.map +1 -0
  17. package/dist/components/avatarGroup/AvatarGroup.test.d.ts +2 -0
  18. package/dist/components/avatarGroup/AvatarGroup.test.d.ts.map +1 -0
  19. package/dist/components/avatarGroup/AvatarGroup.test.js +155 -0
  20. package/dist/components/avatarGroup/AvatarGroup.test.js.map +1 -0
  21. package/dist/components/avatarGroup/avatarGroupOverflow.d.ts +8 -0
  22. package/dist/components/avatarGroup/avatarGroupOverflow.d.ts.map +1 -0
  23. package/dist/components/avatarGroup/avatarGroupOverflow.js +14 -0
  24. package/dist/components/avatarGroup/avatarGroupOverflow.js.map +1 -0
  25. package/dist/components/avatarGroup/collectAvatarGroupChildren.d.ts +4 -0
  26. package/dist/components/avatarGroup/collectAvatarGroupChildren.d.ts.map +1 -0
  27. package/dist/components/avatarGroup/collectAvatarGroupChildren.js +26 -0
  28. package/dist/components/avatarGroup/collectAvatarGroupChildren.js.map +1 -0
  29. package/dist/components/avatarGroup/useAvatarGroupItems.d.ts +9 -0
  30. package/dist/components/avatarGroup/useAvatarGroupItems.d.ts.map +1 -0
  31. package/dist/components/avatarGroup/useAvatarGroupItems.js +24 -0
  32. package/dist/components/avatarGroup/useAvatarGroupItems.js.map +1 -0
  33. package/dist/components/badge/Badge.d.ts +12 -0
  34. package/dist/components/badge/Badge.d.ts.map +1 -0
  35. package/dist/components/badge/Badge.js +6 -0
  36. package/dist/components/badge/Badge.js.map +1 -0
  37. package/dist/components/badge/Badge.stories.d.ts +10 -0
  38. package/dist/components/badge/Badge.stories.d.ts.map +1 -0
  39. package/dist/components/badge/Badge.stories.js +51 -0
  40. package/dist/components/badge/Badge.stories.js.map +1 -0
  41. package/dist/components/badge/Badge.test.d.ts +2 -0
  42. package/dist/components/badge/Badge.test.d.ts.map +1 -0
  43. package/dist/components/badge/Badge.test.js +23 -0
  44. package/dist/components/badge/Badge.test.js.map +1 -0
  45. package/dist/components/card/Card.js +1 -1
  46. package/dist/components/card/Card.js.map +1 -1
  47. package/dist/components/combobox/Combobox.d.ts +16 -0
  48. package/dist/components/combobox/Combobox.d.ts.map +1 -0
  49. package/dist/components/combobox/Combobox.js +195 -0
  50. package/dist/components/combobox/Combobox.js.map +1 -0
  51. package/dist/components/combobox/Combobox.stories.d.ts +24 -0
  52. package/dist/components/combobox/Combobox.stories.d.ts.map +1 -0
  53. package/dist/components/combobox/Combobox.stories.js +246 -0
  54. package/dist/components/combobox/Combobox.stories.js.map +1 -0
  55. package/dist/components/combobox/Combobox.test.d.ts +2 -0
  56. package/dist/components/combobox/Combobox.test.d.ts.map +1 -0
  57. package/dist/components/combobox/Combobox.test.js +798 -0
  58. package/dist/components/combobox/Combobox.test.js.map +1 -0
  59. package/dist/components/combobox/ComboboxButtonTrigger.d.ts +28 -0
  60. package/dist/components/combobox/ComboboxButtonTrigger.d.ts.map +1 -0
  61. package/dist/components/combobox/ComboboxButtonTrigger.js +64 -0
  62. package/dist/components/combobox/ComboboxButtonTrigger.js.map +1 -0
  63. package/dist/components/combobox/ComboboxListbox.d.ts +44 -0
  64. package/dist/components/combobox/ComboboxListbox.d.ts.map +1 -0
  65. package/dist/components/combobox/ComboboxListbox.js +37 -0
  66. package/dist/components/combobox/ComboboxListbox.js.map +1 -0
  67. package/dist/components/combobox/ComboboxOptionRow.d.ts +23 -0
  68. package/dist/components/combobox/ComboboxOptionRow.d.ts.map +1 -0
  69. package/dist/components/combobox/ComboboxOptionRow.js +27 -0
  70. package/dist/components/combobox/ComboboxOptionRow.js.map +1 -0
  71. package/dist/components/combobox/ComboboxTrigger.d.ts +35 -0
  72. package/dist/components/combobox/ComboboxTrigger.d.ts.map +1 -0
  73. package/dist/components/combobox/ComboboxTrigger.js +15 -0
  74. package/dist/components/combobox/ComboboxTrigger.js.map +1 -0
  75. package/dist/components/combobox/buildListboxDisplayOptions.d.ts +3 -0
  76. package/dist/components/combobox/buildListboxDisplayOptions.d.ts.map +1 -0
  77. package/dist/components/combobox/buildListboxDisplayOptions.js +13 -0
  78. package/dist/components/combobox/buildListboxDisplayOptions.js.map +1 -0
  79. package/dist/components/combobox/buildListboxDisplayOptions.test.d.ts +2 -0
  80. package/dist/components/combobox/buildListboxDisplayOptions.test.d.ts.map +1 -0
  81. package/dist/components/combobox/buildListboxDisplayOptions.test.js +22 -0
  82. package/dist/components/combobox/buildListboxDisplayOptions.test.js.map +1 -0
  83. package/dist/components/combobox/comboboxKeyboardTypes.d.ts +41 -0
  84. package/dist/components/combobox/comboboxKeyboardTypes.d.ts.map +1 -0
  85. package/dist/components/combobox/comboboxKeyboardTypes.js +2 -0
  86. package/dist/components/combobox/comboboxKeyboardTypes.js.map +1 -0
  87. package/dist/components/combobox/highlightLabel.d.ts +10 -0
  88. package/dist/components/combobox/highlightLabel.d.ts.map +1 -0
  89. package/dist/components/combobox/highlightLabel.js +18 -0
  90. package/dist/components/combobox/highlightLabel.js.map +1 -0
  91. package/dist/components/combobox/normaliseComboboxQuery.d.ts +2 -0
  92. package/dist/components/combobox/normaliseComboboxQuery.d.ts.map +1 -0
  93. package/dist/components/combobox/normaliseComboboxQuery.js +2 -0
  94. package/dist/components/combobox/normaliseComboboxQuery.js.map +1 -0
  95. package/dist/components/combobox/types.d.ts +46 -0
  96. package/dist/components/combobox/types.d.ts.map +1 -0
  97. package/dist/components/combobox/types.js +2 -0
  98. package/dist/components/combobox/types.js.map +1 -0
  99. package/dist/components/combobox/useChipSelection.d.ts +11 -0
  100. package/dist/components/combobox/useChipSelection.d.ts.map +1 -0
  101. package/dist/components/combobox/useChipSelection.js +35 -0
  102. package/dist/components/combobox/useChipSelection.js.map +1 -0
  103. package/dist/components/combobox/useComboboxChipKeyboard.d.ts +3 -0
  104. package/dist/components/combobox/useComboboxChipKeyboard.d.ts.map +1 -0
  105. package/dist/components/combobox/useComboboxChipKeyboard.js +103 -0
  106. package/dist/components/combobox/useComboboxChipKeyboard.js.map +1 -0
  107. package/dist/components/combobox/useComboboxChipKeyboard.test.d.ts +2 -0
  108. package/dist/components/combobox/useComboboxChipKeyboard.test.d.ts.map +1 -0
  109. package/dist/components/combobox/useComboboxChipKeyboard.test.js +116 -0
  110. package/dist/components/combobox/useComboboxChipKeyboard.test.js.map +1 -0
  111. package/dist/components/combobox/useComboboxKeyboard.d.ts +4 -0
  112. package/dist/components/combobox/useComboboxKeyboard.d.ts.map +1 -0
  113. package/dist/components/combobox/useComboboxKeyboard.js +68 -0
  114. package/dist/components/combobox/useComboboxKeyboard.js.map +1 -0
  115. package/dist/components/combobox/useComboboxListboxDom.d.ts +11 -0
  116. package/dist/components/combobox/useComboboxListboxDom.d.ts.map +1 -0
  117. package/dist/components/combobox/useComboboxListboxDom.js +15 -0
  118. package/dist/components/combobox/useComboboxListboxDom.js.map +1 -0
  119. package/dist/components/combobox/useComboboxListboxKeyboard.d.ts +3 -0
  120. package/dist/components/combobox/useComboboxListboxKeyboard.d.ts.map +1 -0
  121. package/dist/components/combobox/useComboboxListboxKeyboard.js +143 -0
  122. package/dist/components/combobox/useComboboxListboxKeyboard.js.map +1 -0
  123. package/dist/components/combobox/useComboboxListboxKeyboard.test.d.ts +2 -0
  124. package/dist/components/combobox/useComboboxListboxKeyboard.test.d.ts.map +1 -0
  125. package/dist/components/combobox/useComboboxListboxKeyboard.test.js +152 -0
  126. package/dist/components/combobox/useComboboxListboxKeyboard.test.js.map +1 -0
  127. package/dist/components/combobox/useComboboxPopoverBehavior.d.ts +38 -0
  128. package/dist/components/combobox/useComboboxPopoverBehavior.d.ts.map +1 -0
  129. package/dist/components/combobox/useComboboxPopoverBehavior.js +104 -0
  130. package/dist/components/combobox/useComboboxPopoverBehavior.js.map +1 -0
  131. package/dist/components/combobox/useComboboxState.d.ts +27 -0
  132. package/dist/components/combobox/useComboboxState.d.ts.map +1 -0
  133. package/dist/components/combobox/useComboboxState.js +122 -0
  134. package/dist/components/combobox/useComboboxState.js.map +1 -0
  135. package/dist/components/combobox/useElementWidth.d.ts +2 -0
  136. package/dist/components/combobox/useElementWidth.d.ts.map +1 -0
  137. package/dist/components/combobox/useElementWidth.js +31 -0
  138. package/dist/components/combobox/useElementWidth.js.map +1 -0
  139. package/dist/components/combobox/useVisibleChips.d.ts +21 -0
  140. package/dist/components/combobox/useVisibleChips.d.ts.map +1 -0
  141. package/dist/components/combobox/useVisibleChips.js +59 -0
  142. package/dist/components/combobox/useVisibleChips.js.map +1 -0
  143. package/dist/components/combobox/useVisibleChips.test.d.ts +2 -0
  144. package/dist/components/combobox/useVisibleChips.test.d.ts.map +1 -0
  145. package/dist/components/combobox/useVisibleChips.test.js +81 -0
  146. package/dist/components/combobox/useVisibleChips.test.js.map +1 -0
  147. package/dist/components/dot/Dot.d.ts +8 -0
  148. package/dist/components/dot/Dot.d.ts.map +1 -0
  149. package/dist/components/dot/Dot.js +6 -0
  150. package/dist/components/dot/Dot.js.map +1 -0
  151. package/dist/components/dot/Dot.stories.d.ts +15 -0
  152. package/dist/components/dot/Dot.stories.d.ts.map +1 -0
  153. package/dist/components/dot/Dot.stories.js +25 -0
  154. package/dist/components/dot/Dot.stories.js.map +1 -0
  155. package/dist/components/dot/Dot.test.d.ts +2 -0
  156. package/dist/components/dot/Dot.test.d.ts.map +1 -0
  157. package/dist/components/dot/Dot.test.js +19 -0
  158. package/dist/components/dot/Dot.test.js.map +1 -0
  159. package/dist/components/formField/FormField.d.ts +8 -4
  160. package/dist/components/formField/FormField.d.ts.map +1 -1
  161. package/dist/components/formField/FormField.js +7 -6
  162. package/dist/components/formField/FormField.js.map +1 -1
  163. package/dist/components/formField/FormField.stories.d.ts +1 -0
  164. package/dist/components/formField/FormField.stories.d.ts.map +1 -1
  165. package/dist/components/formField/FormField.stories.js +13 -1
  166. package/dist/components/formField/FormField.stories.js.map +1 -1
  167. package/dist/components/formField/FormField.test.js +10 -0
  168. package/dist/components/formField/FormField.test.js.map +1 -1
  169. package/dist/components/icon/allowedIcons.d.ts +1 -0
  170. package/dist/components/icon/allowedIcons.d.ts.map +1 -1
  171. package/dist/components/icon/allowedIcons.js +2 -1
  172. package/dist/components/icon/allowedIcons.js.map +1 -1
  173. package/dist/components/progress/Progress.stories.d.ts +49 -49
  174. package/dist/components/singleUser/SingleUser.d.ts +15 -0
  175. package/dist/components/singleUser/SingleUser.d.ts.map +1 -0
  176. package/dist/components/singleUser/SingleUser.js +9 -0
  177. package/dist/components/singleUser/SingleUser.js.map +1 -0
  178. package/dist/components/singleUser/SingleUser.stories.d.ts +11 -0
  179. package/dist/components/singleUser/SingleUser.stories.d.ts.map +1 -0
  180. package/dist/components/singleUser/SingleUser.stories.js +52 -0
  181. package/dist/components/singleUser/SingleUser.stories.js.map +1 -0
  182. package/dist/components/singleUser/SingleUser.test.d.ts +2 -0
  183. package/dist/components/singleUser/SingleUser.test.d.ts.map +1 -0
  184. package/dist/components/singleUser/SingleUser.test.js +30 -0
  185. package/dist/components/singleUser/SingleUser.test.js.map +1 -0
  186. package/dist/components/table/Table.d.ts +1 -0
  187. package/dist/components/table/Table.d.ts.map +1 -1
  188. package/dist/components/table/Table.js +2 -0
  189. package/dist/components/table/Table.js.map +1 -1
  190. package/dist/components/table/Table.stories.d.ts.map +1 -1
  191. package/dist/components/table/Table.stories.js +447 -77
  192. package/dist/components/table/Table.stories.js.map +1 -1
  193. package/dist/components/table/Table.test.js +1 -1
  194. package/dist/components/table/Table.test.js.map +1 -1
  195. package/dist/components/table/TableSettingsDropdown.d.ts.map +1 -0
  196. package/dist/components/table/{pagination/TableSettingsDropdown.js → TableSettingsDropdown.js} +6 -6
  197. package/dist/components/table/TableSettingsDropdown.js.map +1 -0
  198. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.d.ts +2 -5
  199. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.d.ts.map +1 -1
  200. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.js +7 -5
  201. package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.js.map +1 -1
  202. package/dist/components/tabs/TabsItem.stories.d.ts +2 -2
  203. package/dist/components/tag/Tag.d.ts +9 -6
  204. package/dist/components/tag/Tag.d.ts.map +1 -1
  205. package/dist/components/tag/Tag.js +8 -2
  206. package/dist/components/tag/Tag.js.map +1 -1
  207. package/dist/components/tag/Tag.stories.d.ts +11 -6
  208. package/dist/components/tag/Tag.stories.d.ts.map +1 -1
  209. package/dist/components/tag/Tag.stories.js +68 -4
  210. package/dist/components/tag/Tag.stories.js.map +1 -1
  211. package/dist/components/tag/Tag.test.js +86 -50
  212. package/dist/components/tag/Tag.test.js.map +1 -1
  213. package/dist/components/toggle/Toggle.d.ts +3 -0
  214. package/dist/components/toggle/Toggle.d.ts.map +1 -0
  215. package/dist/components/toggle/Toggle.js +8 -0
  216. package/dist/components/toggle/Toggle.js.map +1 -0
  217. package/dist/components/toggle/Toggle.stories.d.ts +97 -0
  218. package/dist/components/toggle/Toggle.stories.d.ts.map +1 -0
  219. package/dist/components/toggle/Toggle.stories.js +186 -0
  220. package/dist/components/toggle/Toggle.stories.js.map +1 -0
  221. package/dist/components/toggle/Toggle.test.d.ts +2 -0
  222. package/dist/components/toggle/Toggle.test.d.ts.map +1 -0
  223. package/dist/components/toggle/Toggle.test.js +58 -0
  224. package/dist/components/toggle/Toggle.test.js.map +1 -0
  225. package/dist/index.css +689 -25
  226. package/dist/index.css.map +1 -1
  227. package/dist/index.d.ts +34 -24
  228. package/dist/index.d.ts.map +1 -1
  229. package/dist/index.js +30 -24
  230. package/dist/index.js.map +1 -1
  231. package/dist/mocks/comboboxStoryOptions.d.ts +5 -0
  232. package/dist/mocks/comboboxStoryOptions.d.ts.map +1 -0
  233. package/dist/mocks/comboboxStoryOptions.js +22 -0
  234. package/dist/mocks/comboboxStoryOptions.js.map +1 -0
  235. package/dist/utils/isSelectAllChord.d.ts +5 -0
  236. package/dist/utils/isSelectAllChord.d.ts.map +1 -0
  237. package/dist/utils/isSelectAllChord.js +7 -0
  238. package/dist/utils/isSelectAllChord.js.map +1 -0
  239. package/dist/utils/isSelectAllChord.test.d.ts +2 -0
  240. package/dist/utils/isSelectAllChord.test.d.ts.map +1 -0
  241. package/dist/utils/isSelectAllChord.test.js +19 -0
  242. package/dist/utils/isSelectAllChord.test.js.map +1 -0
  243. package/dist/utils/nextCircularIndex.d.ts +3 -0
  244. package/dist/utils/nextCircularIndex.d.ts.map +1 -0
  245. package/dist/utils/nextCircularIndex.js +10 -0
  246. package/dist/utils/nextCircularIndex.js.map +1 -0
  247. package/dist/utils/nextCircularIndex.test.d.ts +2 -0
  248. package/dist/utils/nextCircularIndex.test.d.ts.map +1 -0
  249. package/dist/utils/nextCircularIndex.test.js +23 -0
  250. package/dist/utils/nextCircularIndex.test.js.map +1 -0
  251. package/dist/utils/scrollElementIntoViewById.d.ts +2 -0
  252. package/dist/utils/scrollElementIntoViewById.d.ts.map +1 -0
  253. package/dist/utils/scrollElementIntoViewById.js +16 -0
  254. package/dist/utils/scrollElementIntoViewById.js.map +1 -0
  255. package/dist/utils/scrollElementIntoViewById.test.d.ts +2 -0
  256. package/dist/utils/scrollElementIntoViewById.test.d.ts.map +1 -0
  257. package/dist/utils/scrollElementIntoViewById.test.js +31 -0
  258. package/dist/utils/scrollElementIntoViewById.test.js.map +1 -0
  259. package/package.json +1 -1
  260. package/src/components/avatar/Avatar.stories.tsx +8 -0
  261. package/src/components/avatar/Avatar.tsx +3 -3
  262. package/src/components/avatarGroup/AvatarGroup.stories.tsx +218 -0
  263. package/src/components/avatarGroup/AvatarGroup.test.tsx +298 -0
  264. package/src/components/avatarGroup/AvatarGroup.tsx +127 -0
  265. package/src/components/avatarGroup/avatarGroup.scss +31 -0
  266. package/src/components/avatarGroup/avatarGroupOverflow.ts +29 -0
  267. package/src/components/avatarGroup/collectAvatarGroupChildren.ts +30 -0
  268. package/src/components/avatarGroup/useAvatarGroupItems.ts +39 -0
  269. package/src/components/badge/Badge.stories.tsx +74 -0
  270. package/src/components/badge/Badge.test.tsx +28 -0
  271. package/src/components/badge/Badge.tsx +35 -0
  272. package/src/components/badge/badge.scss +86 -0
  273. package/src/components/card/Card.tsx +1 -1
  274. package/src/components/combobox/Combobox.stories.tsx +340 -0
  275. package/src/components/combobox/Combobox.test.tsx +1160 -0
  276. package/src/components/combobox/Combobox.tsx +434 -0
  277. package/src/components/combobox/ComboboxButtonTrigger.tsx +195 -0
  278. package/src/components/combobox/ComboboxListbox.tsx +224 -0
  279. package/src/components/combobox/ComboboxOptionRow.tsx +128 -0
  280. package/src/components/combobox/ComboboxTrigger.tsx +134 -0
  281. package/src/components/combobox/buildListboxDisplayOptions.test.ts +24 -0
  282. package/src/components/combobox/buildListboxDisplayOptions.ts +12 -0
  283. package/src/components/combobox/combobox.scss +390 -0
  284. package/src/components/combobox/comboboxKeyboardTypes.ts +45 -0
  285. package/src/components/combobox/highlightLabel.tsx +42 -0
  286. package/src/components/combobox/normaliseComboboxQuery.ts +1 -0
  287. package/src/components/combobox/types.ts +53 -0
  288. package/src/components/combobox/useChipSelection.ts +53 -0
  289. package/src/components/combobox/useComboboxChipKeyboard.test.tsx +141 -0
  290. package/src/components/combobox/useComboboxChipKeyboard.ts +121 -0
  291. package/src/components/combobox/useComboboxKeyboard.ts +108 -0
  292. package/src/components/combobox/useComboboxListboxDom.ts +36 -0
  293. package/src/components/combobox/useComboboxListboxKeyboard.test.tsx +186 -0
  294. package/src/components/combobox/useComboboxListboxKeyboard.ts +172 -0
  295. package/src/components/combobox/useComboboxPopoverBehavior.ts +179 -0
  296. package/src/components/combobox/useComboboxState.ts +232 -0
  297. package/src/components/combobox/useElementWidth.ts +40 -0
  298. package/src/components/combobox/useVisibleChips.test.tsx +91 -0
  299. package/src/components/combobox/useVisibleChips.ts +100 -0
  300. package/src/components/dot/Dot.stories.tsx +41 -0
  301. package/src/components/dot/Dot.test.tsx +21 -0
  302. package/src/components/dot/Dot.tsx +18 -0
  303. package/src/components/dot/dot.scss +35 -0
  304. package/src/components/formField/FormField.stories.tsx +30 -1
  305. package/src/components/formField/FormField.test.tsx +20 -0
  306. package/src/components/formField/FormField.tsx +11 -5
  307. package/src/components/formField/inputs/number/numberInput.scss +12 -4
  308. package/src/components/icon/allowedIcons.tsx +2 -0
  309. package/src/components/pill/pill.scss +4 -6
  310. package/src/components/singleUser/SingleUser.stories.tsx +63 -0
  311. package/src/components/singleUser/SingleUser.test.tsx +61 -0
  312. package/src/components/singleUser/SingleUser.tsx +45 -0
  313. package/src/components/singleUser/singleUser.scss +14 -0
  314. package/src/components/table/Table.stories.tsx +678 -265
  315. package/src/components/table/Table.test.tsx +1 -1
  316. package/src/components/table/Table.tsx +2 -0
  317. package/src/components/table/{pagination/TableSettingsDropdown.tsx → TableSettingsDropdown.tsx} +1 -1
  318. package/src/components/table/cellRenderers/SelectDropdownCellRenderer.tsx +42 -12
  319. package/src/components/tag/Tag.stories.tsx +88 -6
  320. package/src/components/tag/Tag.test.tsx +110 -44
  321. package/src/components/tag/Tag.tsx +38 -14
  322. package/src/components/tag/tag.scss +45 -30
  323. package/src/components/toggle/Toggle.stories.tsx +239 -0
  324. package/src/components/toggle/Toggle.test.tsx +66 -0
  325. package/src/components/toggle/Toggle.tsx +12 -0
  326. package/src/components/toggle/toggle.scss +126 -0
  327. package/src/global.scss +1 -1
  328. package/src/index.scss +6 -0
  329. package/src/index.ts +47 -24
  330. package/src/mocks/comboboxStoryOptions.ts +25 -0
  331. package/src/tokens.scss +35 -4
  332. package/src/utils/isSelectAllChord.test.ts +24 -0
  333. package/src/utils/isSelectAllChord.ts +8 -0
  334. package/src/utils/nextCircularIndex.test.ts +26 -0
  335. package/src/utils/nextCircularIndex.ts +15 -0
  336. package/src/utils/scrollElementIntoViewById.test.ts +38 -0
  337. package/src/utils/scrollElementIntoViewById.ts +20 -0
  338. package/tokens/json/Arbor.json +3816 -3680
  339. package/dist/components/table/pagination/TableSettingsDropdown.d.ts.map +0 -1
  340. package/dist/components/table/pagination/TableSettingsDropdown.js.map +0 -1
  341. /package/dist/components/table/{pagination/TableSettingsDropdown.d.ts → TableSettingsDropdown.d.ts} +0 -0
@@ -0,0 +1,31 @@
1
+ import { useCallback, useLayoutEffect, useState } from 'react';
2
+ export const useElementWidth = (ref, watchKey) => {
3
+ const [measurement, setMeasurement] = useState({ width: 0, hasMeasured: false });
4
+ const element = ref.current;
5
+ const update = useCallback(() => {
6
+ const currentElement = ref.current;
7
+ if (!currentElement) {
8
+ setMeasurement({ width: 0, hasMeasured: true });
9
+ return;
10
+ }
11
+ setMeasurement({
12
+ width: currentElement.getBoundingClientRect().width,
13
+ hasMeasured: true,
14
+ });
15
+ }, [ref]);
16
+ useLayoutEffect(() => {
17
+ // Re-run measurement when callers know the element's contents/layout inputs changed.
18
+ update();
19
+ }, [update, watchKey]);
20
+ useLayoutEffect(() => {
21
+ if (!element)
22
+ return;
23
+ const observer = new ResizeObserver(update);
24
+ observer.observe(element);
25
+ return () => {
26
+ observer.disconnect();
27
+ };
28
+ }, [element, update]);
29
+ return measurement.width;
30
+ };
31
+ //# sourceMappingURL=useElementWidth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useElementWidth.js","sourceRoot":"","sources":["../../../src/components/combobox/useElementWidth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE/D,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,GAAwC,EACxC,QAAgB,EACR,EAAE;IACV,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IACjF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAE5B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,cAAc,CAAC;YACb,KAAK,EAAE,cAAc,CAAC,qBAAqB,EAAE,CAAC,KAAK;YACnD,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,eAAe,CAAC,GAAG,EAAE;QACnB,qFAAqF;QACrF,MAAM,EAAE,CAAC;IACX,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvB,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE1B,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,UAAU,EAAE,CAAC;QACxB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IAEtB,OAAO,WAAW,CAAC,KAAK,CAAC;AAC3B,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ type ComputeTriggerLayoutModelParams = {
2
+ containerWidth: number;
3
+ chipWidths: number[];
4
+ chipGap: number;
5
+ badgeWidth: number;
6
+ ellipsisWidth: number;
7
+ showBadge: boolean;
8
+ safetyBuffer?: number;
9
+ };
10
+ export type TriggerLayoutModel = {
11
+ visibleChipIndices: number[];
12
+ hiddenChipCount: number;
13
+ showBadge: boolean;
14
+ showEllipsis: boolean;
15
+ hasOverflow: boolean;
16
+ };
17
+ export declare const computeTriggerLayoutModel: ({ containerWidth, chipWidths, chipGap, badgeWidth, ellipsisWidth, showBadge, safetyBuffer, }: ComputeTriggerLayoutModelParams) => TriggerLayoutModel;
18
+ type UseVisibleChipsParams = ComputeTriggerLayoutModelParams;
19
+ export declare const useVisibleChips: (params: UseVisibleChipsParams) => TriggerLayoutModel;
20
+ export {};
21
+ //# sourceMappingURL=useVisibleChips.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVisibleChips.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/useVisibleChips.ts"],"names":[],"mappings":"AAEA,KAAK,+BAA+B,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAoBF,eAAO,MAAM,yBAAyB,GAAI,8FAQvC,+BAA+B,KAAG,kBAmCpC,CAAC;AAEF,KAAK,qBAAqB,GAAG,+BAA+B,CAAC;AAE7D,eAAO,MAAM,eAAe,GAAI,QAAQ,qBAAqB,KAAG,kBAc7D,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { useMemo } from 'react';
2
+ const fitCount = (availableWidth, chipWidths, chipGap) => {
3
+ if (availableWidth <= 0 || chipWidths.length === 0)
4
+ return 0;
5
+ let used = 0;
6
+ let count = 0;
7
+ for (let i = 0; i < chipWidths.length; i += 1) {
8
+ const required = chipWidths[i] + (i > 0 ? chipGap : 0);
9
+ if (used + required > availableWidth)
10
+ break;
11
+ used += required;
12
+ count += 1;
13
+ }
14
+ return count;
15
+ };
16
+ export const computeTriggerLayoutModel = ({ containerWidth, chipWidths, chipGap, badgeWidth, ellipsisWidth, showBadge, safetyBuffer = 1, }) => {
17
+ const selectedCount = chipWidths.length;
18
+ const shouldShowBadge = showBadge && selectedCount > 0;
19
+ if (selectedCount === 0 || containerWidth <= 0) {
20
+ return {
21
+ visibleChipIndices: [],
22
+ hiddenChipCount: 0,
23
+ showBadge: shouldShowBadge,
24
+ showEllipsis: false,
25
+ hasOverflow: false,
26
+ };
27
+ }
28
+ const badgeReserve = shouldShowBadge
29
+ ? badgeWidth + chipGap
30
+ : 0;
31
+ const availableWithoutEllipsis = Math.max(0, containerWidth - badgeReserve - safetyBuffer);
32
+ const countWithoutEllipsis = fitCount(availableWithoutEllipsis, chipWidths, chipGap);
33
+ const hasOverflow = countWithoutEllipsis < selectedCount;
34
+ const ellipsisReserve = hasOverflow
35
+ ? ellipsisWidth + chipGap
36
+ : 0;
37
+ const availableForChips = Math.max(0, containerWidth - badgeReserve - ellipsisReserve - safetyBuffer);
38
+ const visibleCount = fitCount(availableForChips, chipWidths, chipGap);
39
+ return {
40
+ visibleChipIndices: Array.from({ length: visibleCount }, (_, index) => index),
41
+ hiddenChipCount: Math.max(0, selectedCount - visibleCount),
42
+ showBadge: shouldShowBadge,
43
+ showEllipsis: visibleCount < selectedCount,
44
+ hasOverflow: visibleCount < selectedCount,
45
+ };
46
+ };
47
+ export const useVisibleChips = (params) =>
48
+ // Deps list each field instead of `[params]`: callers often pass a new `params` object every
49
+ // render; depending on object identity would rerun the layout every time even when values are unchanged.
50
+ useMemo(() => computeTriggerLayoutModel(params), [
51
+ params.badgeWidth,
52
+ params.chipGap,
53
+ params.chipWidths,
54
+ params.containerWidth,
55
+ params.ellipsisWidth,
56
+ params.safetyBuffer,
57
+ params.showBadge,
58
+ ]);
59
+ //# sourceMappingURL=useVisibleChips.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVisibleChips.js","sourceRoot":"","sources":["../../../src/components/combobox/useVisibleChips.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useVisibleChips.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVisibleChips.test.d.ts","sourceRoot":"","sources":["../../../src/components/combobox/useVisibleChips.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,81 @@
1
+ import { describe, expect, test } from 'vitest';
2
+ import { computeTriggerLayoutModel } from './useVisibleChips';
3
+ describe('computeTriggerLayoutModel', () => {
4
+ test('shows all chips and no ellipsis when there is no overflow', () => {
5
+ const result = computeTriggerLayoutModel({
6
+ containerWidth: 300,
7
+ chipWidths: [70, 80, 60],
8
+ chipGap: 4,
9
+ badgeWidth: 24,
10
+ ellipsisWidth: 12,
11
+ showBadge: true,
12
+ });
13
+ expect(result).toEqual({
14
+ visibleChipIndices: [0, 1, 2],
15
+ hiddenChipCount: 0,
16
+ showBadge: true,
17
+ showEllipsis: false,
18
+ hasOverflow: false,
19
+ });
20
+ });
21
+ test('reserves badge and ellipsis before fitting chips when overflow exists', () => {
22
+ const result = computeTriggerLayoutModel({
23
+ containerWidth: 160,
24
+ chipWidths: [60, 60, 60],
25
+ chipGap: 4,
26
+ badgeWidth: 24,
27
+ ellipsisWidth: 12,
28
+ showBadge: true,
29
+ });
30
+ expect(result.visibleChipIndices).toEqual([0]);
31
+ expect(result.hiddenChipCount).toBe(2);
32
+ expect(result.showEllipsis).toBe(true);
33
+ expect(result.hasOverflow).toBe(true);
34
+ });
35
+ test('allows zero chips when badge and ellipsis take priority in tiny space', () => {
36
+ const result = computeTriggerLayoutModel({
37
+ containerWidth: 36,
38
+ chipWidths: [80, 80],
39
+ chipGap: 4,
40
+ badgeWidth: 24,
41
+ ellipsisWidth: 12,
42
+ showBadge: true,
43
+ });
44
+ expect(result.visibleChipIndices).toEqual([]);
45
+ expect(result.hiddenChipCount).toBe(2);
46
+ expect(result.showEllipsis).toBe(true);
47
+ });
48
+ test('reserving badge space reduces visible count', () => {
49
+ const withBadge = computeTriggerLayoutModel({
50
+ containerWidth: 180,
51
+ chipWidths: [60, 60, 60],
52
+ chipGap: 4,
53
+ badgeWidth: 24,
54
+ ellipsisWidth: 12,
55
+ showBadge: true,
56
+ });
57
+ const withoutBadge = computeTriggerLayoutModel({
58
+ containerWidth: 180,
59
+ chipWidths: [60, 60, 60],
60
+ chipGap: 4,
61
+ badgeWidth: 24,
62
+ ellipsisWidth: 12,
63
+ showBadge: false,
64
+ });
65
+ expect(withoutBadge.visibleChipIndices.length).toBeGreaterThanOrEqual(withBadge.visibleChipIndices.length);
66
+ });
67
+ test('uses safety buffer to avoid a clipped final chip on boundary widths', () => {
68
+ const result = computeTriggerLayoutModel({
69
+ containerWidth: 195.5,
70
+ chipWidths: [73.4, 73.4, 20],
71
+ chipGap: 4,
72
+ badgeWidth: 24.2,
73
+ ellipsisWidth: 11.6,
74
+ showBadge: true,
75
+ safetyBuffer: 1,
76
+ });
77
+ expect(result.visibleChipIndices).toEqual([0]);
78
+ expect(result.showEllipsis).toBe(true);
79
+ });
80
+ });
81
+ //# sourceMappingURL=useVisibleChips.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVisibleChips.test.js","sourceRoot":"","sources":["../../../src/components/combobox/useVisibleChips.test.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACrE,MAAM,MAAM,GAAG,yBAAyB,CAAC;YACvC,cAAc,EAAE,GAAG;YACnB,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,EAAE;YACjB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,kBAAkB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7B,eAAe,EAAE,CAAC;YAClB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,KAAK;YACnB,WAAW,EAAE,KAAK;SACnB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;QACjF,MAAM,MAAM,GAAG,yBAAyB,CAAC;YACvC,cAAc,EAAE,GAAG;YACnB,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,EAAE;YACjB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;QACjF,MAAM,MAAM,GAAG,yBAAyB,CAAC;YACvC,cAAc,EAAE,EAAE;YAClB,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,EAAE;YACjB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,MAAM,SAAS,GAAG,yBAAyB,CAAC;YAC1C,cAAc,EAAE,GAAG;YACnB,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,EAAE;YACjB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,yBAAyB,CAAC;YAC7C,cAAc,EAAE,GAAG;YACnB,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,EAAE;YACjB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC7G,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC/E,MAAM,MAAM,GAAG,yBAAyB,CAAC;YACvC,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,IAAI;YAChB,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,CAAC;SAChB,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export type DotColour = 'purple' | 'salmon' | 'teal' | 'yellow' | 'green' | 'orange' | 'blue';
2
+ type DotProps = {
3
+ colour: DotColour;
4
+ label?: string;
5
+ };
6
+ export declare const Dot: ({ colour, label }: DotProps) => React.JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=Dot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dot.d.ts","sourceRoot":"","sources":["../../../src/components/dot/Dot.tsx"],"names":[],"mappings":"AAEA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9F,KAAK,QAAQ,GAAG;IACd,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,GAAG,GAAI,mBAAmB,QAAQ,KAAG,KAAK,CAAC,GAAG,CAAC,OAQ3D,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ export const Dot = ({ colour, label }) => {
4
+ return (_jsx("span", { "aria-hidden": label ? undefined : 'true', "aria-label": label, className: classNames('ds-dot', `ds-dot--${colour}`) }));
5
+ };
6
+ //# sourceMappingURL=Dot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dot.js","sourceRoot":"","sources":["../../../src/components/dot/Dot.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AASpC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAY,EAAqB,EAAE;IACpE,OAAO,CACL,8BACe,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,gBAC3B,KAAK,EACjB,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,WAAW,MAAM,EAAE,CAAC,GACpD,CACH,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { Meta, StoryObj } from '@storybook/react-vite';
2
+ import { Dot } from './Dot';
3
+ declare const meta: Meta<typeof Dot>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof Dot>;
6
+ export declare const Purple: Story;
7
+ export declare const Salmon: Story;
8
+ export declare const Teal: Story;
9
+ export declare const Yellow: Story;
10
+ export declare const Green: Story;
11
+ export declare const Orange: Story;
12
+ export declare const Blue: Story;
13
+ export declare const Labeled: Story;
14
+ export declare const AllColours: Story;
15
+ //# sourceMappingURL=Dot.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dot.stories.d.ts","sourceRoot":"","sources":["../../../src/components/dot/Dot.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,GAAG,CAI1B,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;AAElC,eAAO,MAAM,MAAM,EAAE,KAAsC,CAAC;AAC5D,eAAO,MAAM,MAAM,EAAE,KAAsC,CAAC;AAC5D,eAAO,MAAM,IAAI,EAAE,KAAoC,CAAC;AACxD,eAAO,MAAM,MAAM,EAAE,KAAsC,CAAC;AAC5D,eAAO,MAAM,KAAK,EAAE,KAAqC,CAAC;AAC1D,eAAO,MAAM,MAAM,EAAE,KAAsC,CAAC;AAC5D,eAAO,MAAM,IAAI,EAAE,KAAoC,CAAC;AAExD,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAYxB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Dot } from './Dot';
3
+ const meta = {
4
+ tags: ['autodocs'],
5
+ title: 'Components/Dot',
6
+ component: Dot,
7
+ };
8
+ export default meta;
9
+ export const Purple = { args: { colour: 'purple' } };
10
+ export const Salmon = { args: { colour: 'salmon' } };
11
+ export const Teal = { args: { colour: 'teal' } };
12
+ export const Yellow = { args: { colour: 'yellow' } };
13
+ export const Green = { args: { colour: 'green' } };
14
+ export const Orange = { args: { colour: 'orange' } };
15
+ export const Blue = { args: { colour: 'blue' } };
16
+ export const Labeled = {
17
+ args: {
18
+ colour: 'purple',
19
+ label: 'Priority indicator',
20
+ },
21
+ };
22
+ export const AllColours = {
23
+ render: () => (_jsxs("div", { style: { display: 'flex', gap: 8, alignItems: 'center' }, children: [_jsx(Dot, { colour: "purple" }), _jsx(Dot, { colour: "salmon" }), _jsx(Dot, { colour: "teal" }), _jsx(Dot, { colour: "yellow" }), _jsx(Dot, { colour: "green" }), _jsx(Dot, { colour: "orange" }), _jsx(Dot, { colour: "blue" })] })),
24
+ };
25
+ //# sourceMappingURL=Dot.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dot.stories.js","sourceRoot":"","sources":["../../../src/components/dot/Dot.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,MAAM,IAAI,GAAqB;IAC7B,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,KAAK,EAAE,gBAAgB;IACvB,SAAS,EAAE,GAAG;CACf,CAAC;AAEF,eAAe,IAAI,CAAC;AAIpB,MAAM,CAAC,MAAM,MAAM,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;AAC5D,MAAM,CAAC,MAAM,MAAM,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;AAC5D,MAAM,CAAC,MAAM,IAAI,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,MAAM,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;AAC5D,MAAM,CAAC,MAAM,KAAK,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC;AAC1D,MAAM,CAAC,MAAM,MAAM,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;AAC5D,MAAM,CAAC,MAAM,IAAI,GAAU,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;AAExD,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,IAAI,EAAE;QACJ,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,oBAAoB;KAC5B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAU;IAC/B,MAAM,EAAE,GAAG,EAAE,CAAC,CACZ,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,aAC3D,KAAC,GAAG,IAAC,MAAM,EAAC,QAAQ,GAAG,EACvB,KAAC,GAAG,IAAC,MAAM,EAAC,QAAQ,GAAG,EACvB,KAAC,GAAG,IAAC,MAAM,EAAC,MAAM,GAAG,EACrB,KAAC,GAAG,IAAC,MAAM,EAAC,QAAQ,GAAG,EACvB,KAAC,GAAG,IAAC,MAAM,EAAC,OAAO,GAAG,EACtB,KAAC,GAAG,IAAC,MAAM,EAAC,QAAQ,GAAG,EACvB,KAAC,GAAG,IAAC,MAAM,EAAC,MAAM,GAAG,IACjB,CACP;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ import '@testing-library/jest-dom/vitest';
2
+ //# sourceMappingURL=Dot.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dot.test.d.ts","sourceRoot":"","sources":["../../../src/components/dot/Dot.test.tsx"],"names":[],"mappings":"AACA,OAAO,kCAAkC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { render, screen } from '@testing-library/react';
3
+ import '@testing-library/jest-dom/vitest';
4
+ import { describe, expect, test } from 'vitest';
5
+ import { Dot } from './Dot';
6
+ describe('Dot', () => {
7
+ test('renders a dot with an explicit label', () => {
8
+ const { container } = render(_jsx(Dot, { colour: "purple", label: "Priority indicator" }));
9
+ expect(screen.getByLabelText('Priority indicator')).toBeInTheDocument();
10
+ expect(container.firstChild).toHaveClass('ds-dot', 'ds-dot--purple');
11
+ });
12
+ test('is decorative when label is not provided', () => {
13
+ const { container } = render(_jsx(Dot, { colour: "teal" }));
14
+ expect(screen.queryByLabelText('teal dot')).not.toBeInTheDocument();
15
+ expect(container.firstChild).toHaveAttribute('aria-hidden', 'true');
16
+ expect(container.firstChild).not.toHaveAttribute('aria-label');
17
+ });
18
+ });
19
+ //# sourceMappingURL=Dot.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dot.test.js","sourceRoot":"","sources":["../../../src/components/dot/Dot.test.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;IACnB,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,GAAG,IAAC,MAAM,EAAC,QAAQ,EAAC,KAAK,EAAC,oBAAoB,GAAG,CAAC,CAAC;QAEjF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACxE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,GAAG,IAAC,MAAM,EAAC,MAAM,GAAG,CAAC,CAAC;QAEpD,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACpE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACpE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,9 +1,10 @@
1
- import { type TextInputProps } from './inputs/text/TextInput';
2
- import { type TextAreaProps } from './inputs/textArea/TextArea';
3
- import { type NumberInputProps } from './inputs/number/NumberInput';
1
+ import type { ComboboxProps } from '../combobox/types';
2
+ import { type DatePickerProps } from '../datePicker/DatePicker';
4
3
  import { type ColourPickerDropdownProps } from './inputs/colourPickerDropdown/ColourPickerDropdown';
4
+ import { type NumberInputProps } from './inputs/number/NumberInput';
5
5
  import { type SelectDropdownInputProps } from './inputs/selectDropdown/SelectDropdown';
6
- import { type DatePickerProps } from '../datePicker/DatePicker';
6
+ import { type TextInputProps } from './inputs/text/TextInput';
7
+ import { type TextAreaProps } from './inputs/textArea/TextArea';
7
8
  type FormFieldProps = {
8
9
  className?: string;
9
10
  label?: string;
@@ -30,6 +31,9 @@ type FormFieldProps = {
30
31
  } | {
31
32
  inputType?: 'datePicker';
32
33
  inputProps?: DatePickerProps;
34
+ } | {
35
+ inputType?: 'combobox';
36
+ inputProps?: ComboboxProps;
33
37
  });
34
38
  export declare const FormField: (props: FormFieldProps) => import("react/jsx-runtime").JSX.Element;
35
39
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../src/components/formField/FormField.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAwB,KAAK,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC1H,OAAO,EAAkB,KAAK,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEpF,KAAK,cAAc,GAAG;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,CACA;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,cAAc,CAAA;CAAE,GACnD;IAAE,SAAS,CAAC,EAAE,UAAU,CAAC;IAAC,UAAU,CAAC,EAAE,aAAa,CAAA;CAAE,GACtD;IAAE,SAAS,CAAC,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,GACvD;IAAE,SAAS,CAAC,EAAE,cAAc,CAAC;IAAC,UAAU,CAAC,EAAE,yBAAyB,CAAA;CAAE,GACtE;IAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAAC,UAAU,CAAC,EAAE,wBAAwB,CAAA;CAAE,GACvE;IAAE,SAAS,CAAC,EAAE,YAAY,CAAC;IAAC,UAAU,CAAC,EAAE,eAAe,CAAA;CAAE,CAC7D,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,OAAO,cAAc,4CAiE9C,CAAC"}
1
+ {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../src/components/formField/FormField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEpF,OAAO,EAAwB,KAAK,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC1H,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAkB,KAAK,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG1E,KAAK,cAAc,GAAG;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,CACA;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,cAAc,CAAA;CAAE,GACnD;IAAE,SAAS,CAAC,EAAE,UAAU,CAAC;IAAC,UAAU,CAAC,EAAE,aAAa,CAAA;CAAE,GACtD;IAAE,SAAS,CAAC,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,GACvD;IAAE,SAAS,CAAC,EAAE,cAAc,CAAC;IAAC,UAAU,CAAC,EAAE,yBAAyB,CAAA;CAAE,GACtE;IAAE,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAAC,UAAU,CAAC,EAAE,wBAAwB,CAAA;CAAE,GACvE;IAAE,SAAS,CAAC,EAAE,YAAY,CAAC;IAAC,UAAU,CAAC,EAAE,eAAe,CAAA;CAAE,GAC1D;IAAE,SAAS,CAAC,EAAE,UAAU,CAAC;IAAC,UAAU,CAAC,EAAE,aAAa,CAAA;CAAE,CACzD,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,OAAO,cAAc,4CAoE9C,CAAC"}
@@ -1,13 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import classNames from 'classnames';
3
- import { Label } from './label/Label';
3
+ import { Combobox } from '../combobox/Combobox';
4
+ import { DatePicker } from '../datePicker/DatePicker';
4
5
  import { Icon } from '../icon/Icon';
5
- import { TextInput } from './inputs/text/TextInput';
6
- import { TextArea } from './inputs/textArea/TextArea';
7
- import { NumberInput } from './inputs/number/NumberInput';
8
6
  import { ColourPickerDropdown } from './inputs/colourPickerDropdown/ColourPickerDropdown';
7
+ import { NumberInput } from './inputs/number/NumberInput';
9
8
  import { SelectDropdown } from './inputs/selectDropdown/SelectDropdown';
10
- import { DatePicker } from '../datePicker/DatePicker';
9
+ import { TextInput } from './inputs/text/TextInput';
10
+ import { TextArea } from './inputs/textArea/TextArea';
11
+ import { Label } from './label/Label';
11
12
  export const FormField = (props) => {
12
13
  const { className, label, id, inputType = 'text', helperLinkText, helperLinkUrl, errorText, inputProps, fieldDescription } = props;
13
14
  const classes = classNames('ds-form-field', className);
@@ -24,6 +25,6 @@ export const FormField = (props) => {
24
25
  'hasError': !!errorText,
25
26
  'aria-invalid': !!errorText,
26
27
  };
27
- return (_jsxs("div", { className: classes, children: [label && (_jsx(Label, { htmlFor: id, children: label })), fieldDescription && (_jsx("span", { id: `${id}-description`, className: "ds-form-field__description", children: fieldDescription })), inputType === 'text' && (_jsx(TextInput, { ...sharedProps, ...inputProps })), inputType === 'textarea' && (_jsx(TextArea, { ...sharedProps, ...inputProps })), inputType === 'number' && (_jsx(NumberInput, { ...sharedProps, ...inputProps })), inputType === 'colourPicker' && (_jsx(ColourPickerDropdown, { ...sharedProps, ...inputProps })), inputType === 'selectDropdown' && (_jsx(SelectDropdown, { ...sharedProps, ...inputProps })), inputType === 'datePicker' && (_jsx(DatePicker, { ...sharedProps, ...inputProps })), ((helperLinkText && helperLinkUrl) || errorText) && (_jsxs("div", { className: "ds-form-field__message", children: [errorText && (_jsxs("span", { className: "ds-form-field__message--error", id: `${id}-error`, children: [_jsx(Icon, { size: 12, name: "triangle-alert" }), errorText] })), helperLinkText && helperLinkUrl && (_jsxs("a", { href: helperLinkUrl, "aria-label": `${label} helper link`, className: "ds-form-field__message--helper", children: [helperLinkText, ' ', _jsx(Icon, { size: 12, name: "arrow-up-right" })] }))] }))] }));
28
+ return (_jsxs("div", { className: classes, children: [label && (_jsx(Label, { htmlFor: id, children: label })), fieldDescription && (_jsx("span", { id: `${id}-description`, className: "ds-form-field__description", children: fieldDescription })), inputType === 'text' && (_jsx(TextInput, { ...sharedProps, ...inputProps })), inputType === 'textarea' && (_jsx(TextArea, { ...sharedProps, ...inputProps })), inputType === 'number' && (_jsx(NumberInput, { ...sharedProps, ...inputProps })), inputType === 'colourPicker' && (_jsx(ColourPickerDropdown, { ...sharedProps, ...inputProps })), inputType === 'selectDropdown' && (_jsx(SelectDropdown, { ...sharedProps, ...inputProps })), inputType === 'datePicker' && (_jsx(DatePicker, { ...sharedProps, ...inputProps })), inputType === 'combobox' && (_jsx(Combobox, { ...sharedProps, ...inputProps })), ((helperLinkText && helperLinkUrl) || errorText) && (_jsxs("div", { className: "ds-form-field__message", children: [errorText && (_jsxs("span", { className: "ds-form-field__message--error", id: `${id}-error`, children: [_jsx(Icon, { size: 12, name: "triangle-alert" }), errorText] })), helperLinkText && helperLinkUrl && (_jsxs("a", { href: helperLinkUrl, "aria-label": `${label} helper link`, className: "ds-form-field__message--helper", children: [helperLinkText, ' ', _jsx(Icon, { size: 12, name: "arrow-up-right" })] }))] }))] }));
28
29
  };
29
30
  //# sourceMappingURL=FormField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../../src/components/formField/FormField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../../src/components/formField/FormField.tsx"],"names":[],"mappings":"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"}
@@ -54,5 +54,6 @@ export declare const Default: {
54
54
  };
55
55
  type Story = StoryObj<typeof meta>;
56
56
  export declare const FormExample: Story;
57
+ export declare const Combobox: Story;
57
58
  export default meta;
58
59
  //# sourceMappingURL=FormField.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.stories.d.ts","sourceRoot":"","sources":["../../../src/components/formField/FormField.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAGhC,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDnB,CAAC;AAEF,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAGnC,eAAO,MAAM,WAAW,EAAE,KA2EzB,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"FormField.stories.d.ts","sourceRoot":"","sources":["../../../src/components/formField/FormField.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAI5D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAGhC,CAAC;AAEF,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDnB,CAAC;AAEF,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAGnC,eAAO,MAAM,WAAW,EAAE,KAqFzB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAgBtB,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { fn } from 'storybook/test';
3
+ import { comboboxPeopleOptions } from '../../mocks/comboboxStoryOptions';
3
4
  import { FormField } from './FormField';
4
5
  const meta = {
5
6
  title: 'Components/FormField',
@@ -38,7 +39,7 @@ export const Default = {
38
39
  },
39
40
  'inputType': {
40
41
  control: 'select',
41
- options: ['text', 'textarea', 'number', 'datePicker'],
42
+ options: ['text', 'textarea', 'number', 'colourPicker', 'selectDropdown', 'datePicker', 'combobox'],
42
43
  description: 'Input type',
43
44
  },
44
45
  'inputProps.size': {
@@ -76,7 +77,18 @@ export const FormExample = {
76
77
  } }), _jsx(FormField, { id: "select-dropdown", label: "Select", inputType: "selectDropdown", inputProps: {
77
78
  options: [{ label: 'Option 1', value: 'option1' }, { label: 'Option 2', value: 'option2' }, { label: 'Option 3', value: 'option3' }],
78
79
  onSelectionChange: fn(),
80
+ } }), _jsx(FormField, { id: "assignee", label: "Assignee", inputType: "combobox", inputProps: {
81
+ options: comboboxPeopleOptions,
82
+ placeholder: 'Search people...',
83
+ onValueChange: fn(),
79
84
  } }), _jsx(FormField, { id: "date-of-birth", label: "Date of Birth", inputType: "datePicker", inputProps: { onChange: fn() } })] })),
80
85
  };
86
+ export const Combobox = {
87
+ render: () => (_jsx("div", { "data-surface": "base", "data-colour-mode": "light", className: "bg-surface text-on-surface-default", style: { padding: 32, maxWidth: 420 }, children: _jsx(FormField, { id: "form-field-combobox", label: "Assignee", fieldDescription: "Search and select a person.", inputType: "combobox", inputProps: {
88
+ options: comboboxPeopleOptions,
89
+ placeholder: 'Search people...',
90
+ onValueChange: fn(),
91
+ } }) })),
92
+ };
81
93
  export default meta;
82
94
  //# sourceMappingURL=FormField.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.stories.js","sourceRoot":"","sources":["../../../src/components/formField/FormField.stories.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormField.stories.js","sourceRoot":"","sources":["../../../src/components/formField/FormField.stories.tsx"],"names":[],"mappings":"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"}
@@ -53,5 +53,15 @@ describe('FormField component', () => {
53
53
  expect(screen.getByRole('textbox')).toBeInTheDocument();
54
54
  expect(screen.getByRole('button', { name: 'Open date picker' })).toBeInTheDocument();
55
55
  });
56
+ test('passes error state through to Combobox when errorText is provided', () => {
57
+ render(_jsx(FormField, { id: "student-combobox", label: "Student", inputType: "combobox", errorText: "Choose a student", inputProps: {
58
+ options: [{ value: 'alice', label: 'Alice Johnson' }],
59
+ placeholder: 'Search students',
60
+ } }));
61
+ const input = screen.getByRole('combobox', { name: 'Student' });
62
+ expect(input).toHaveAttribute('aria-invalid', 'true');
63
+ expect(input.closest('.ds-combobox__trigger')).toHaveClass('ds-combobox__trigger--error');
64
+ expect(screen.getByText('Choose a student')).toBeInTheDocument();
65
+ });
56
66
  });
57
67
  //# sourceMappingURL=FormField.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.test.js","sourceRoot":"","sources":["../../../src/components/formField/FormField.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormField.test.js","sourceRoot":"","sources":["../../../src/components/formField/FormField.test.tsx"],"names":[],"mappings":"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"}
@@ -60,6 +60,7 @@ export declare const allowedIcons: {
60
60
  readonly link: import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
61
61
  readonly 'list-filter-plus': import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
62
62
  readonly list: import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
63
+ readonly loader: import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
63
64
  readonly 'lock-open': import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
64
65
  readonly lock: import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
65
66
  readonly 'log-out': import("react").ForwardRefExoticComponent<Omit<LucideProps, "ref"> & import("react").RefAttributes<SVGSVGElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"allowedIcons.d.ts","sourceRoot":"","sources":["../../../src/components/icon/allowedIcons.tsx"],"names":[],"mappings":"AAAA,OAAO,EA2DG,KAAK,WAAW,EA8BzB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAK/C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCA0GA,eAAe;yCACV,WAAW;gCAGpB,eAAe;CAC1B,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,YAAY,CAAC"}
1
+ {"version":3,"file":"allowedIcons.d.ts","sourceRoot":"","sources":["../../../src/components/icon/allowedIcons.tsx"],"names":[],"mappings":"AAAA,OAAO,EA4DG,KAAK,WAAW,EA8BzB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAK/C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCA2GA,eAAe;yCACV,WAAW;gCAGpB,eAAe;CAC1B,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,YAAY,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Archive, ArrowDown, ArrowDownUp, ArrowLeft, ArrowRight, ArrowRightFromLine, ArrowUp, ArrowUpRight, BookOpen, CalendarFold, Camera, ChartColumnIncreasing, ChartSpline, Check, ChevronDown, ChevronLeft, ChevronRight, ChevronsLeft, ChevronsRight, ChevronUp, CircleAlert, CircleCheck, CircleCheckBig, CirclePercent, CirclePlus, CircleQuestionMark, CircleX, Clipboard, ClipboardList, Clock3, Copy, CornerDownLeft, Dot, Download, Ellipsis, EllipsisVertical, Expand, ExternalLink, Eye, EyeOff, File, Files, Flag, Funnel, GraduationCap, Grid3x3, GripVertical, History, House, Info, IterationCcw, LayoutList, Lightbulb, Link, List, ListFilterPlus, Lock, LockOpen, LogOut, Mail, Menu, MessageSquareMore, Mic, Minimize2, Minus, Monitor, PaintBucket, Paperclip, PartyPopper, Pencil, Percent, Phone, Pin, Plus, Projector, Redo2, Save, Search, Send, Settings, Share, Sheet, SlidersHorizontal, Smartphone, Sparkles, Star, SwitchCamera, Table, Trash2, TrendingDown, TrendingUp, TriangleAlert, Undo2, Upload, User, Users, UsersRound, X, } from 'lucide-react';
2
+ import { Archive, ArrowDown, ArrowDownUp, ArrowLeft, ArrowRight, ArrowRightFromLine, ArrowUp, ArrowUpRight, BookOpen, CalendarFold, Camera, ChartColumnIncreasing, ChartSpline, Check, ChevronDown, ChevronLeft, ChevronRight, ChevronsLeft, ChevronsRight, ChevronUp, CircleAlert, CircleCheck, CircleCheckBig, CirclePercent, CirclePlus, CircleQuestionMark, CircleX, Clipboard, ClipboardList, Clock3, Copy, CornerDownLeft, Dot, Download, Ellipsis, EllipsisVertical, Expand, ExternalLink, Eye, EyeOff, File, Files, Flag, Funnel, GraduationCap, Grid3x3, GripVertical, History, House, Info, IterationCcw, LayoutList, Lightbulb, Link, List, ListFilterPlus, LoaderCircle, Lock, LockOpen, LogOut, Mail, Menu, MessageSquareMore, Mic, Minimize2, Minus, Monitor, PaintBucket, Paperclip, PartyPopper, Pencil, Percent, Phone, Pin, Plus, Projector, Redo2, Save, Search, Send, Settings, Share, Sheet, SlidersHorizontal, Smartphone, Sparkles, Star, SwitchCamera, Table, Trash2, TrendingDown, TrendingUp, TriangleAlert, Undo2, Upload, User, Users, UsersRound, X, } from 'lucide-react';
3
3
  import { AskArbor } from './customIcons/AskArbor';
4
4
  import { CheckSolid } from './customIcons/CheckSolid';
5
5
  import { Google } from './customIcons/Google';
@@ -65,6 +65,7 @@ export const allowedIcons = {
65
65
  'link': Link,
66
66
  'list-filter-plus': ListFilterPlus,
67
67
  'list': List,
68
+ 'loader': LoaderCircle,
68
69
  'lock-open': LockOpen,
69
70
  'lock': Lock,
70
71
  'log-out': LogOut,
@@ -1 +1 @@
1
- {"version":3,"file":"allowedIcons.js","sourceRoot":"","sources":["../../../src/components/icon/allowedIcons.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"allowedIcons.js","sourceRoot":"","sources":["../../../src/components/icon/allowedIcons.tsx"],"names":[],"mappings":"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"}