@loadsmart/loadsmart-ui 7.6.0 → 8.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (531) hide show
  1. package/README.md +13 -1
  2. package/dist/DragDropFile.context-oKnUu6d3.js +33 -0
  3. package/dist/{DragDropFile.context-D-EBrXnw.js.map → DragDropFile.context-oKnUu6d3.js.map} +1 -1
  4. package/dist/components/Banner/Banner.d.ts +2 -2
  5. package/dist/components/Button/Button.d.ts +1 -1
  6. package/dist/components/Calendar/Pickers/PickerButton.d.ts +4 -2
  7. package/dist/components/Card/Card.d.ts +4 -4
  8. package/dist/components/Card/CardTitle.d.ts +2 -2
  9. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  10. package/dist/components/DatePicker/useDatePicker.d.ts +8 -9
  11. package/dist/components/DatePicker/useDateRangePicker.d.ts +13 -14
  12. package/dist/components/Dialog/Dialog.d.ts +3 -5
  13. package/dist/components/DragDropFile/styles.d.ts +7 -7
  14. package/dist/components/Dropdown/Dropdown.d.ts +3 -3
  15. package/dist/components/Dropdown/DropdownMenu.d.ts +3 -3
  16. package/dist/components/Layout/Stack.d.ts +2 -2
  17. package/dist/components/Loaders/LoadingBar.d.ts +2 -2
  18. package/dist/components/Loaders/index.d.ts +3 -3
  19. package/dist/components/Modal/Modal.d.ts +1 -3
  20. package/dist/components/SideNavigation/Logo/Logo.d.ts +7 -2
  21. package/dist/components/SideNavigation/Menu/Menu.d.ts +7 -2
  22. package/dist/components/SideNavigation/Menu/MenuLink.d.ts +6 -1
  23. package/dist/components/SideNavigation/SideNavigation.d.ts +14 -4
  24. package/dist/components/Steps/StepsStep.d.ts +2 -2
  25. package/dist/components/Table/Table.d.ts +2 -1
  26. package/dist/components/TablePagination/TablePagination.styles.d.ts +5 -4
  27. package/dist/components/TablePagination/TablePaginationActions.d.ts +2 -5
  28. package/dist/components/Text/Text.d.ts +1 -1
  29. package/dist/components/TextField/TextField.d.ts +6 -2
  30. package/dist/components/ToggleGroup/Toggle.d.ts +2 -1
  31. package/dist/components/ToggleGroup/ToggleGroup.d.ts +2 -1
  32. package/dist/components/TopNavigation/Logo/Logo.d.ts +7 -2
  33. package/dist/components/TopNavigation/Menu/Menu.d.ts +2 -2
  34. package/dist/components/TopNavigation/Menu/MenuItemDropdown.d.ts +4 -4
  35. package/dist/components/TopNavigation/OpenSideNavButton/OpenSideNavButton.d.ts +2 -1
  36. package/dist/components/TopNavigation/TopNavigation.d.ts +8 -3
  37. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  38. package/dist/components/VisuallyHidden/VisuallyHidden.stories.d.ts +2 -1
  39. package/dist/index.js +9100 -253
  40. package/dist/index.js.map +1 -1
  41. package/dist/miranda-compatibility.theme-kYNEZ7mW.js +2528 -0
  42. package/dist/{miranda-compatibility.theme-ChPV-BBw.js.map → miranda-compatibility.theme-kYNEZ7mW.js.map} +1 -1
  43. package/dist/prop-K2Z3EsyG.js +81 -0
  44. package/dist/{prop-BwhJNJHO.js.map → prop-K2Z3EsyG.js.map} +1 -1
  45. package/dist/testing/index.js +282 -1
  46. package/dist/testing/index.js.map +1 -1
  47. package/dist/tests/renderer.d.ts +1 -1
  48. package/dist/theming/index.js +22 -1
  49. package/dist/theming/index.js.map +1 -1
  50. package/dist/toArray-Dxb1kUxx.js +14 -0
  51. package/dist/{toArray-BW3gx_gH.js.map → toArray-Dxb1kUxx.js.map} +1 -1
  52. package/dist/tools/index.js +6 -1
  53. package/dist/tools/index.js.map +1 -1
  54. package/dist/utils/toolset/flatten.d.ts +1 -1
  55. package/dist/utils/toolset/get.d.ts +1 -1
  56. package/dist/utils/toolset/isEmpty.d.ts +1 -1
  57. package/dist/utils/toolset/omit.d.ts +1 -1
  58. package/dist/utils/toolset/range.d.ts +1 -1
  59. package/package.json +46 -79
  60. package/dist/DragDropFile.context-D-EBrXnw.js +0 -2
  61. package/dist/DragDropFile.context-jVTIKfj5.mjs +0 -29
  62. package/dist/DragDropFile.context-jVTIKfj5.mjs.map +0 -1
  63. package/dist/index.mjs +0 -8046
  64. package/dist/index.mjs.map +0 -1
  65. package/dist/miranda-compatibility.theme-ChPV-BBw.js +0 -2
  66. package/dist/miranda-compatibility.theme-DQDHkWzC.mjs +0 -2469
  67. package/dist/miranda-compatibility.theme-DQDHkWzC.mjs.map +0 -1
  68. package/dist/prop-5m3D4883.mjs +0 -54
  69. package/dist/prop-5m3D4883.mjs.map +0 -1
  70. package/dist/prop-BwhJNJHO.js +0 -2
  71. package/dist/testing/index.mjs +0 -228
  72. package/dist/testing/index.mjs.map +0 -1
  73. package/dist/theming/index.mjs +0 -20
  74. package/dist/theming/index.mjs.map +0 -1
  75. package/dist/toArray-BW3gx_gH.js +0 -2
  76. package/dist/toArray-DqgeO2ua.mjs +0 -8
  77. package/dist/toArray-DqgeO2ua.mjs.map +0 -1
  78. package/dist/tools/index.mjs +0 -7
  79. package/dist/tools/index.mjs.map +0 -1
  80. package/src/@types/@loadsmart/utilsFunction.d.ts +0 -5
  81. package/src/@types/@loadsmart/utilsObject.d.ts +0 -5
  82. package/src/@types/svg.d.ts +0 -4
  83. package/src/addons/Theme/register.js +0 -590
  84. package/src/common/BackButton/BackButton.tsx +0 -18
  85. package/src/common/BackButton/index.ts +0 -2
  86. package/src/common/CloseButton/CloseButton.tsx +0 -55
  87. package/src/common/CloseButton/index.ts +0 -2
  88. package/src/common/SelectionWrapper.tsx +0 -130
  89. package/src/components/Accordion/Accordion.context.tsx +0 -36
  90. package/src/components/Accordion/Accordion.stories.tsx +0 -186
  91. package/src/components/Accordion/Accordion.test.tsx +0 -209
  92. package/src/components/Accordion/Accordion.tsx +0 -233
  93. package/src/components/Accordion/index.ts +0 -2
  94. package/src/components/Banner/Banner.stories.tsx +0 -213
  95. package/src/components/Banner/Banner.test.tsx +0 -118
  96. package/src/components/Banner/Banner.tsx +0 -418
  97. package/src/components/Banner/index.tsx +0 -2
  98. package/src/components/Breadcrumbs/Breadbrumbs.test.tsx +0 -125
  99. package/src/components/Breadcrumbs/Breadcrumb.tsx +0 -92
  100. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +0 -21
  101. package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -54
  102. package/src/components/Breadcrumbs/index.ts +0 -4
  103. package/src/components/Button/Button.stories.tsx +0 -174
  104. package/src/components/Button/Button.test.tsx +0 -57
  105. package/src/components/Button/Button.tsx +0 -576
  106. package/src/components/Button/index.tsx +0 -2
  107. package/src/components/Calendar/Calendar.helpers.ts +0 -15
  108. package/src/components/Calendar/Calendar.stories.tsx +0 -168
  109. package/src/components/Calendar/Calendar.test.tsx +0 -316
  110. package/src/components/Calendar/Calendar.tsx +0 -130
  111. package/src/components/Calendar/Calendar.types.ts +0 -68
  112. package/src/components/Calendar/Date.helper.test.ts +0 -847
  113. package/src/components/Calendar/Date.helper.ts +0 -461
  114. package/src/components/Calendar/DateFormat.helper.test.ts +0 -171
  115. package/src/components/Calendar/DateFormat.helper.ts +0 -195
  116. package/src/components/Calendar/Month.helper.test.ts +0 -187
  117. package/src/components/Calendar/Month.helper.ts +0 -172
  118. package/src/components/Calendar/PickerModeToggle.tsx +0 -61
  119. package/src/components/Calendar/Pickers/DayPicker.test.tsx +0 -85
  120. package/src/components/Calendar/Pickers/DayPicker.tsx +0 -127
  121. package/src/components/Calendar/Pickers/MonthPicker.test.tsx +0 -77
  122. package/src/components/Calendar/Pickers/MonthPicker.tsx +0 -51
  123. package/src/components/Calendar/Pickers/PickerButton.tsx +0 -119
  124. package/src/components/Calendar/Pickers/YearPicker.test.tsx +0 -75
  125. package/src/components/Calendar/Pickers/YearPicker.tsx +0 -52
  126. package/src/components/Calendar/index.ts +0 -10
  127. package/src/components/Calendar/useCalendar.ts +0 -190
  128. package/src/components/Calendar/usePickerMode.ts +0 -48
  129. package/src/components/Card/Card.stories.tsx +0 -117
  130. package/src/components/Card/Card.test.tsx +0 -139
  131. package/src/components/Card/Card.tsx +0 -106
  132. package/src/components/Card/CardTitle.tsx +0 -43
  133. package/src/components/Card/index.ts +0 -2
  134. package/src/components/Checkbox/Checkbox.stories.tsx +0 -79
  135. package/src/components/Checkbox/Checkbox.test.tsx +0 -66
  136. package/src/components/Checkbox/Checkbox.tsx +0 -170
  137. package/src/components/Checkbox/index.ts +0 -2
  138. package/src/components/DatePicker/DatePicker.stories.tsx +0 -113
  139. package/src/components/DatePicker/DatePicker.test.tsx +0 -174
  140. package/src/components/DatePicker/DatePicker.tsx +0 -140
  141. package/src/components/DatePicker/DatePicker.types.ts +0 -30
  142. package/src/components/DatePicker/DateRangePicker.stories.tsx +0 -128
  143. package/src/components/DatePicker/DateRangePicker.test.tsx +0 -267
  144. package/src/components/DatePicker/DateRangePicker.tsx +0 -110
  145. package/src/components/DatePicker/index.ts +0 -3
  146. package/src/components/DatePicker/useDatePicker.ts +0 -201
  147. package/src/components/DatePicker/useDateRangePicker.ts +0 -224
  148. package/src/components/Dialog/Dialog.stories.tsx +0 -227
  149. package/src/components/Dialog/Dialog.test.tsx +0 -74
  150. package/src/components/Dialog/Dialog.tsx +0 -139
  151. package/src/components/Dialog/index.tsx +0 -4
  152. package/src/components/Dialog/useDialog.tsx +0 -59
  153. package/src/components/DragDropFile/DragDropFile.context.tsx +0 -39
  154. package/src/components/DragDropFile/DragDropFile.stories.tsx +0 -183
  155. package/src/components/DragDropFile/DragDropFile.tsx +0 -11
  156. package/src/components/DragDropFile/components/DropZone.test.tsx +0 -108
  157. package/src/components/DragDropFile/components/DropZone.tsx +0 -145
  158. package/src/components/DragDropFile/components/FileItem.tsx +0 -117
  159. package/src/components/DragDropFile/components/FileList.test.tsx +0 -119
  160. package/src/components/DragDropFile/components/FileList.tsx +0 -47
  161. package/src/components/DragDropFile/components/Wrapper.tsx +0 -22
  162. package/src/components/DragDropFile/index.ts +0 -9
  163. package/src/components/DragDropFile/mocks.ts +0 -23
  164. package/src/components/DragDropFile/styles.tsx +0 -81
  165. package/src/components/DragDropFile/types.ts +0 -85
  166. package/src/components/Drawer/Drawer.stories.tsx +0 -83
  167. package/src/components/Drawer/Drawer.test.tsx +0 -90
  168. package/src/components/Drawer/Drawer.tsx +0 -225
  169. package/src/components/Drawer/index.ts +0 -4
  170. package/src/components/Dropdown/Dropdown.context.ts +0 -13
  171. package/src/components/Dropdown/Dropdown.fixtures.ts +0 -15
  172. package/src/components/Dropdown/Dropdown.stories.tsx +0 -259
  173. package/src/components/Dropdown/Dropdown.test.tsx +0 -173
  174. package/src/components/Dropdown/Dropdown.tsx +0 -141
  175. package/src/components/Dropdown/Dropdown.types.ts +0 -59
  176. package/src/components/Dropdown/DropdownMenu.tsx +0 -263
  177. package/src/components/Dropdown/DropdownTrigger.tsx +0 -368
  178. package/src/components/Dropdown/index.ts +0 -15
  179. package/src/components/Dropdown/useDropdown.test.ts +0 -96
  180. package/src/components/Dropdown/useDropdown.ts +0 -65
  181. package/src/components/EmptyState/EmptyState.mocks.tsx +0 -60
  182. package/src/components/EmptyState/EmptyState.stories.tsx +0 -239
  183. package/src/components/EmptyState/EmptyState.test.tsx +0 -101
  184. package/src/components/EmptyState/EmptyState.tsx +0 -22
  185. package/src/components/EmptyState/EmptyState.types.ts +0 -59
  186. package/src/components/EmptyState/EmptyStateWithIcon.tsx +0 -42
  187. package/src/components/EmptyState/EmptyStateWithIllustration.tsx +0 -72
  188. package/src/components/EmptyState/Illustration.tsx +0 -29
  189. package/src/components/EmptyState/index.ts +0 -4
  190. package/src/components/ErrorMessage/ErrorMessage.stories.tsx +0 -26
  191. package/src/components/ErrorMessage/ErrorMessage.test.tsx +0 -24
  192. package/src/components/ErrorMessage/ErrorMessage.tsx +0 -19
  193. package/src/components/ErrorMessage/index.ts +0 -2
  194. package/src/components/HighlightMatch/HighlightMatch.stories.tsx +0 -24
  195. package/src/components/HighlightMatch/HighlightMatch.test.tsx +0 -37
  196. package/src/components/HighlightMatch/HighlightMatch.tsx +0 -29
  197. package/src/components/HighlightMatch/index.ts +0 -2
  198. package/src/components/Icon/Icon.tsx +0 -55
  199. package/src/components/Icon/assets/back.svg +0 -4
  200. package/src/components/Icon/assets/burger-menu.svg +0 -3
  201. package/src/components/Icon/assets/calendar.svg +0 -5
  202. package/src/components/Icon/assets/caret-down.svg +0 -4
  203. package/src/components/Icon/assets/caret-left.svg +0 -4
  204. package/src/components/Icon/assets/caret-right-last.svg +0 -4
  205. package/src/components/Icon/assets/caret-right.svg +0 -4
  206. package/src/components/Icon/assets/check.svg +0 -4
  207. package/src/components/Icon/assets/chevron-down.svg +0 -3
  208. package/src/components/Icon/assets/circle.svg +0 -3
  209. package/src/components/Icon/assets/close.svg +0 -4
  210. package/src/components/Icon/assets/dots-horizontal.svg +0 -1
  211. package/src/components/Icon/assets/information.svg +0 -4
  212. package/src/components/Icon/assets/minus.svg +0 -4
  213. package/src/components/Icon/assets/plus.svg +0 -4
  214. package/src/components/Icon/assets/refresh.svg +0 -3
  215. package/src/components/Icon/assets/sort-asc.svg +0 -7
  216. package/src/components/Icon/assets/sort-desc.svg +0 -7
  217. package/src/components/Icon/assets/sort.svg +0 -7
  218. package/src/components/Icon/assets/upload.svg +0 -3
  219. package/src/components/Icon/assets/warning.svg +0 -4
  220. package/src/components/Icon/index.ts +0 -2
  221. package/src/components/IconFactory/IconFactory.fixtures.tsx +0 -31
  222. package/src/components/IconFactory/IconFactory.stories.tsx +0 -120
  223. package/src/components/IconFactory/IconFactory.test.tsx +0 -36
  224. package/src/components/IconFactory/IconFactory.tsx +0 -75
  225. package/src/components/IconFactory/index.ts +0 -2
  226. package/src/components/Label/Label.stories.tsx +0 -47
  227. package/src/components/Label/Label.test.tsx +0 -80
  228. package/src/components/Label/Label.tsx +0 -120
  229. package/src/components/Label/index.ts +0 -2
  230. package/src/components/Layout/Box.tsx +0 -98
  231. package/src/components/Layout/Grid.tsx +0 -42
  232. package/src/components/Layout/Group.tsx +0 -55
  233. package/src/components/Layout/Layout.stories.tsx +0 -412
  234. package/src/components/Layout/Layout.tsx +0 -19
  235. package/src/components/Layout/Layout.types.ts +0 -9
  236. package/src/components/Layout/Layout.utils.ts +0 -20
  237. package/src/components/Layout/Sidebar.tsx +0 -75
  238. package/src/components/Layout/Stack.tsx +0 -63
  239. package/src/components/Layout/Switcher.tsx +0 -48
  240. package/src/components/Layout/index.tsx +0 -8
  241. package/src/components/Link/Link.stories.tsx +0 -22
  242. package/src/components/Link/Link.test.tsx +0 -79
  243. package/src/components/Link/Link.tsx +0 -114
  244. package/src/components/Link/index.ts +0 -3
  245. package/src/components/Link/useSafeLink.ts +0 -49
  246. package/src/components/Loaders/LoadingBar.stories.tsx +0 -36
  247. package/src/components/Loaders/LoadingBar.test.tsx +0 -35
  248. package/src/components/Loaders/LoadingBar.tsx +0 -65
  249. package/src/components/Loaders/LoadingDots.stories.tsx +0 -69
  250. package/src/components/Loaders/LoadingDots.test.tsx +0 -22
  251. package/src/components/Loaders/LoadingDots.tsx +0 -68
  252. package/src/components/Loaders/Spinner.stories.tsx +0 -24
  253. package/src/components/Loaders/Spinner.test.tsx +0 -35
  254. package/src/components/Loaders/Spinner.tsx +0 -68
  255. package/src/components/Loaders/index.tsx +0 -3
  256. package/src/components/Modal/Modal.stories.tsx +0 -121
  257. package/src/components/Modal/Modal.test.tsx +0 -46
  258. package/src/components/Modal/Modal.tsx +0 -163
  259. package/src/components/Modal/index.tsx +0 -2
  260. package/src/components/Pagination/Pagination.constants.ts +0 -7
  261. package/src/components/Pagination/Pagination.helper.ts +0 -88
  262. package/src/components/Pagination/Pagination.stories.tsx +0 -29
  263. package/src/components/Pagination/Pagination.test.tsx +0 -102
  264. package/src/components/Pagination/Pagination.tsx +0 -34
  265. package/src/components/Pagination/Pagination.types.ts +0 -55
  266. package/src/components/Pagination/PaginationItem.tsx +0 -74
  267. package/src/components/Pagination/index.ts +0 -2
  268. package/src/components/Pagination/usePagination.test.ts +0 -188
  269. package/src/components/Pagination/usePagination.ts +0 -87
  270. package/src/components/Popover/Popover.stories.tsx +0 -50
  271. package/src/components/Popover/Popover.test.tsx +0 -22
  272. package/src/components/Popover/Popover.tsx +0 -110
  273. package/src/components/Popover/Popover.types.ts +0 -39
  274. package/src/components/Popover/index.ts +0 -11
  275. package/src/components/ProgressBar/ProgressBar.stories.tsx +0 -47
  276. package/src/components/ProgressBar/ProgressBar.test.tsx +0 -40
  277. package/src/components/ProgressBar/ProgressBar.tsx +0 -89
  278. package/src/components/ProgressBar/index.tsx +0 -2
  279. package/src/components/Radio/Radio.stories.tsx +0 -75
  280. package/src/components/Radio/Radio.test.tsx +0 -66
  281. package/src/components/Radio/Radio.tsx +0 -153
  282. package/src/components/Radio/index.ts +0 -2
  283. package/src/components/Section/Section.test.tsx +0 -35
  284. package/src/components/Section/Section.tsx +0 -66
  285. package/src/components/Section/Sections.stories.tsx +0 -56
  286. package/src/components/Section/index.ts +0 -2
  287. package/src/components/Select/Select.constants.ts +0 -12
  288. package/src/components/Select/Select.context.ts +0 -11
  289. package/src/components/Select/Select.fixtures.ts +0 -167
  290. package/src/components/Select/Select.stories.tsx +0 -780
  291. package/src/components/Select/Select.test.tsx +0 -1109
  292. package/src/components/Select/Select.tsx +0 -271
  293. package/src/components/Select/Select.types.ts +0 -148
  294. package/src/components/Select/SelectCreatableOption.tsx +0 -20
  295. package/src/components/Select/SelectEmpty.test.tsx +0 -15
  296. package/src/components/Select/SelectEmpty.tsx +0 -29
  297. package/src/components/Select/SelectOption.test.tsx +0 -78
  298. package/src/components/Select/SelectOption.tsx +0 -79
  299. package/src/components/Select/SelectTrigger.tsx +0 -83
  300. package/src/components/Select/components.tsx +0 -14
  301. package/src/components/Select/index.ts +0 -12
  302. package/src/components/Select/useSelect.helpers.test.ts +0 -184
  303. package/src/components/Select/useSelect.helpers.ts +0 -63
  304. package/src/components/Select/useSelect.test.ts +0 -207
  305. package/src/components/Select/useSelect.ts +0 -540
  306. package/src/components/Select/useSelectExternal.ts +0 -26
  307. package/src/components/SideNavigation/Logo/Logo.test.tsx +0 -19
  308. package/src/components/SideNavigation/Logo/Logo.tsx +0 -26
  309. package/src/components/SideNavigation/Logo/index.ts +0 -1
  310. package/src/components/SideNavigation/Menu/Menu.test.tsx +0 -65
  311. package/src/components/SideNavigation/Menu/Menu.tsx +0 -53
  312. package/src/components/SideNavigation/Menu/MenuBaseItem.tsx +0 -64
  313. package/src/components/SideNavigation/Menu/MenuExpandable.tsx +0 -107
  314. package/src/components/SideNavigation/Menu/MenuLink.tsx +0 -37
  315. package/src/components/SideNavigation/Menu/index.ts +0 -1
  316. package/src/components/SideNavigation/Separator/Separator.test.tsx +0 -14
  317. package/src/components/SideNavigation/Separator/Separator.tsx +0 -20
  318. package/src/components/SideNavigation/Separator/index.ts +0 -1
  319. package/src/components/SideNavigation/SideNavigation.stories.tsx +0 -69
  320. package/src/components/SideNavigation/SideNavigation.test.tsx +0 -21
  321. package/src/components/SideNavigation/SideNavigation.tsx +0 -47
  322. package/src/components/SideNavigation/index.ts +0 -5
  323. package/src/components/SideNavigation/useSideNavigation.ts +0 -36
  324. package/src/components/Steps/ProgressSteps/ProgressStep.tsx +0 -163
  325. package/src/components/Steps/ProgressSteps/ProgressSteps.tsx +0 -37
  326. package/src/components/Steps/ProgressSteps/index.ts +0 -1
  327. package/src/components/Steps/Steps.fixtures.ts +0 -11
  328. package/src/components/Steps/Steps.helpers.ts +0 -11
  329. package/src/components/Steps/Steps.stories.tsx +0 -65
  330. package/src/components/Steps/Steps.test.tsx +0 -78
  331. package/src/components/Steps/Steps.tsx +0 -53
  332. package/src/components/Steps/Steps.types.ts +0 -5
  333. package/src/components/Steps/StepsContext.ts +0 -5
  334. package/src/components/Steps/StepsStep.tsx +0 -58
  335. package/src/components/Steps/index.ts +0 -6
  336. package/src/components/Steps/useStep.test.tsx +0 -217
  337. package/src/components/Steps/useSteps.ts +0 -131
  338. package/src/components/Switch/Switch.stories.tsx +0 -65
  339. package/src/components/Switch/Switch.test.tsx +0 -60
  340. package/src/components/Switch/Switch.tsx +0 -209
  341. package/src/components/Switch/index.ts +0 -2
  342. package/src/components/Table/Selection.tsx +0 -202
  343. package/src/components/Table/Table.fixtures.ts +0 -101
  344. package/src/components/Table/Table.stories.tsx +0 -568
  345. package/src/components/Table/Table.test.tsx +0 -310
  346. package/src/components/Table/Table.tsx +0 -523
  347. package/src/components/Table/Table.types.ts +0 -93
  348. package/src/components/Table/TableSortHandle.tsx +0 -31
  349. package/src/components/Table/index.tsx +0 -2
  350. package/src/components/Table/useSortBy.test.ts +0 -96
  351. package/src/components/Table/useSortBy.ts +0 -92
  352. package/src/components/Table/useSortBy.types.ts +0 -21
  353. package/src/components/TablePagination/RowsPerPage.tsx +0 -81
  354. package/src/components/TablePagination/TablePagination.stories.tsx +0 -42
  355. package/src/components/TablePagination/TablePagination.styles.ts +0 -13
  356. package/src/components/TablePagination/TablePagination.test.tsx +0 -111
  357. package/src/components/TablePagination/TablePagination.tsx +0 -49
  358. package/src/components/TablePagination/TablePagination.types.ts +0 -69
  359. package/src/components/TablePagination/TablePaginationActions.tsx +0 -144
  360. package/src/components/TablePagination/index.ts +0 -2
  361. package/src/components/Tabs/Tabs.stories.tsx +0 -78
  362. package/src/components/Tabs/Tabs.test.tsx +0 -103
  363. package/src/components/Tabs/Tabs.tsx +0 -287
  364. package/src/components/Tabs/Tabs.types.ts +0 -7
  365. package/src/components/Tabs/TabsContext.ts +0 -10
  366. package/src/components/Tabs/index.ts +0 -2
  367. package/src/components/Tag/Tag.stories.tsx +0 -112
  368. package/src/components/Tag/Tag.test.tsx +0 -19
  369. package/src/components/Tag/Tag.tsx +0 -393
  370. package/src/components/Tag/index.ts +0 -2
  371. package/src/components/Text/Text.stories.tsx +0 -59
  372. package/src/components/Text/Text.test.tsx +0 -48
  373. package/src/components/Text/Text.tsx +0 -14
  374. package/src/components/Text/index.ts +0 -2
  375. package/src/components/TextField/TextField.stories.tsx +0 -90
  376. package/src/components/TextField/TextField.test.tsx +0 -36
  377. package/src/components/TextField/TextField.tsx +0 -244
  378. package/src/components/TextField/index.ts +0 -6
  379. package/src/components/TextField/useTextField.tsx +0 -26
  380. package/src/components/Textarea/Textarea.stories.tsx +0 -101
  381. package/src/components/Textarea/Textarea.test.tsx +0 -14
  382. package/src/components/Textarea/Textarea.tsx +0 -230
  383. package/src/components/Textarea/index.ts +0 -2
  384. package/src/components/Toast/Toast.stories.tsx +0 -50
  385. package/src/components/Toast/Toast.test.tsx +0 -24
  386. package/src/components/Toast/Toast.tsx +0 -141
  387. package/src/components/Toast/icons/close.svg +0 -3
  388. package/src/components/Toast/icons/danger.svg +0 -4
  389. package/src/components/Toast/icons/neutral.svg +0 -4
  390. package/src/components/Toast/icons/success.svg +0 -3
  391. package/src/components/Toast/icons/warning.svg +0 -4
  392. package/src/components/Toast/index.tsx +0 -2
  393. package/src/components/ToggleGroup/Toggle.test.tsx +0 -76
  394. package/src/components/ToggleGroup/Toggle.tsx +0 -158
  395. package/src/components/ToggleGroup/ToggleGroup.constants.ts +0 -16
  396. package/src/components/ToggleGroup/ToggleGroup.stories.tsx +0 -145
  397. package/src/components/ToggleGroup/ToggleGroup.test.tsx +0 -237
  398. package/src/components/ToggleGroup/ToggleGroup.tsx +0 -165
  399. package/src/components/ToggleGroup/ToggleGroup.types.ts +0 -35
  400. package/src/components/ToggleGroup/ToggleGroupContext.ts +0 -13
  401. package/src/components/ToggleGroup/index.ts +0 -3
  402. package/src/components/Tooltip/Tooltip.stories.tsx +0 -82
  403. package/src/components/Tooltip/Tooltip.test.tsx +0 -49
  404. package/src/components/Tooltip/Tooltip.tsx +0 -185
  405. package/src/components/Tooltip/index.ts +0 -2
  406. package/src/components/TopNavigation/Logo/Logo.test.tsx +0 -21
  407. package/src/components/TopNavigation/Logo/Logo.tsx +0 -20
  408. package/src/components/TopNavigation/Logo/index.ts +0 -1
  409. package/src/components/TopNavigation/Menu/Menu.test.tsx +0 -125
  410. package/src/components/TopNavigation/Menu/Menu.tsx +0 -62
  411. package/src/components/TopNavigation/Menu/MenuItemDropdown.tsx +0 -118
  412. package/src/components/TopNavigation/Menu/MenuItemIcon.tsx +0 -50
  413. package/src/components/TopNavigation/Menu/index.ts +0 -1
  414. package/src/components/TopNavigation/OpenSideNavButton/OpenSideNavButton.tsx +0 -28
  415. package/src/components/TopNavigation/OpenSideNavButton/index.ts +0 -1
  416. package/src/components/TopNavigation/TopNavigation.stories.tsx +0 -42
  417. package/src/components/TopNavigation/TopNavigation.tsx +0 -47
  418. package/src/components/TopNavigation/index.ts +0 -2
  419. package/src/components/VisuallyHidden/VisuallyHidden.mdx +0 -26
  420. package/src/components/VisuallyHidden/VisuallyHidden.stories.tsx +0 -32
  421. package/src/components/VisuallyHidden/VisuallyHidden.test.tsx +0 -18
  422. package/src/components/VisuallyHidden/VisuallyHidden.tsx +0 -6
  423. package/src/components/VisuallyHidden/index.ts +0 -1
  424. package/src/docs/tools/DatePickerEvent.stories.mdx +0 -108
  425. package/src/docs/tools/DragDropFileEvent.stories.mdx +0 -75
  426. package/src/docs/tools/conditional.stories.mdx +0 -251
  427. package/src/docs/tools/selectEvent.stories.mdx +0 -121
  428. package/src/hooks/useClickOutside/index.ts +0 -1
  429. package/src/hooks/useClickOutside/useClickOutside.test.tsx +0 -116
  430. package/src/hooks/useClickOutside/useClickOutside.ts +0 -65
  431. package/src/hooks/useDidMount/index.ts +0 -1
  432. package/src/hooks/useDidMount/useDidMount.test.tsx +0 -38
  433. package/src/hooks/useDidMount/useDidMount.ts +0 -20
  434. package/src/hooks/useFingerprint/index.ts +0 -1
  435. package/src/hooks/useFingerprint/useFingerprint.test.ts +0 -76
  436. package/src/hooks/useFingerprint/useFingerprint.ts +0 -94
  437. package/src/hooks/useFocusTrap/index.ts +0 -2
  438. package/src/hooks/useFocusTrap/useFocusTrap.stories.tsx +0 -87
  439. package/src/hooks/useFocusTrap/useFocusTrap.test.tsx +0 -129
  440. package/src/hooks/useFocusTrap/useFocusTrap.ts +0 -187
  441. package/src/hooks/useFocusWithin/index.ts +0 -2
  442. package/src/hooks/useFocusWithin/useFocusWithin.test.tsx +0 -71
  443. package/src/hooks/useFocusWithin/useFocusWithin.ts +0 -62
  444. package/src/hooks/useHeightExpansionToggler/index.ts +0 -2
  445. package/src/hooks/useHeightExpansionToggler/useHeightExpansionToggler.test.tsx +0 -85
  446. package/src/hooks/useHeightExpansionToggler/useHeightExpansionToggler.ts +0 -54
  447. package/src/hooks/useID/index.ts +0 -1
  448. package/src/hooks/useID/useID.ts +0 -18
  449. package/src/hooks/useSelectable/SelectableStrategy.test.ts +0 -424
  450. package/src/hooks/useSelectable/SelectableStrategy.ts +0 -143
  451. package/src/hooks/useSelectable/index.ts +0 -8
  452. package/src/hooks/useSelectable/useSelectable.test.ts +0 -221
  453. package/src/hooks/useSelectable/useSelectable.ts +0 -156
  454. package/src/hooks/useSelectable/useSelectable.types.ts +0 -45
  455. package/src/hooks/useWindowResize/index.ts +0 -1
  456. package/src/hooks/useWindowResize/useWindowResize.ts +0 -27
  457. package/src/index.ts +0 -188
  458. package/src/stories/assets/code-brackets.svg +0 -1
  459. package/src/stories/assets/colors.svg +0 -1
  460. package/src/stories/assets/comments.svg +0 -1
  461. package/src/stories/assets/direction.svg +0 -1
  462. package/src/stories/assets/flow.svg +0 -1
  463. package/src/stories/assets/plugin.svg +0 -1
  464. package/src/stories/assets/repo.svg +0 -1
  465. package/src/stories/assets/stackalt.svg +0 -1
  466. package/src/stories/introduction.stories.mdx +0 -57
  467. package/src/stories/startPage.stories.mdx +0 -95
  468. package/src/styles/activatable.tsx +0 -30
  469. package/src/styles/disableable.tsx +0 -45
  470. package/src/styles/ellipsizable.tsx +0 -14
  471. package/src/styles/focusable.tsx +0 -32
  472. package/src/styles/font.test.ts +0 -31
  473. package/src/styles/font.tsx +0 -40
  474. package/src/styles/hidden.tsx +0 -29
  475. package/src/styles/hoverable.tsx +0 -30
  476. package/src/styles/transition.tsx +0 -25
  477. package/src/styles/typography.test.ts +0 -93
  478. package/src/styles/typography.ts +0 -190
  479. package/src/testing/DatePickerEvent/DatePickerEvent.ts +0 -117
  480. package/src/testing/DatePickerEvent/DateRangePickerEvent.ts +0 -83
  481. package/src/testing/DatePickerEvent/index.ts +0 -2
  482. package/src/testing/DragDropFileEvent/DragDropFileEvent.ts +0 -56
  483. package/src/testing/DragDropFileEvent/index.ts +0 -1
  484. package/src/testing/SelectEvent/SelectEvent.test.tsx +0 -192
  485. package/src/testing/SelectEvent/SelectEvent.ts +0 -264
  486. package/src/testing/SelectEvent/index.ts +0 -1
  487. package/src/testing/getInterpolatedStyles/getInterpolatedStyles.ts +0 -25
  488. package/src/testing/getInterpolatedStyles/index.ts +0 -1
  489. package/src/testing/index.ts +0 -6
  490. package/src/testing/renderWithDragDropFileProvider/index.ts +0 -1
  491. package/src/testing/renderWithDragDropFileProvider/renderWithDragDropFileProvider.tsx +0 -28
  492. package/src/tests/generator.ts +0 -127
  493. package/src/tests/renderer.tsx +0 -39
  494. package/src/theming/index.ts +0 -42
  495. package/src/theming/themes/alice.theme.ts +0 -1022
  496. package/src/theming/themes/index.ts +0 -3
  497. package/src/theming/themes/loadsmart.theme.ts +0 -1019
  498. package/src/theming/themes/miranda-compatibility.theme.ts +0 -972
  499. package/src/theming/theming.helpers.ts +0 -95
  500. package/src/tools/conditional.test.ts +0 -166
  501. package/src/tools/conditional.ts +0 -127
  502. package/src/tools/index.ts +0 -2
  503. package/src/tools/prop.test.ts +0 -52
  504. package/src/tools/prop.ts +0 -36
  505. package/src/utils/toolset/awaitTo.ts +0 -24
  506. package/src/utils/toolset/flatten.ts +0 -3
  507. package/src/utils/toolset/formatBytes.test.ts +0 -45
  508. package/src/utils/toolset/formatBytes.ts +0 -18
  509. package/src/utils/toolset/get.ts +0 -2
  510. package/src/utils/toolset/getID.test.ts +0 -57
  511. package/src/utils/toolset/getID.ts +0 -93
  512. package/src/utils/toolset/getOrdinalSuffix.test.ts +0 -27
  513. package/src/utils/toolset/getOrdinalSuffix.ts +0 -15
  514. package/src/utils/toolset/highlightMatch.test.tsx +0 -32
  515. package/src/utils/toolset/highlightMatch.tsx +0 -32
  516. package/src/utils/toolset/interleave.test.ts +0 -40
  517. package/src/utils/toolset/interleave.ts +0 -23
  518. package/src/utils/toolset/isEmpty.ts +0 -2
  519. package/src/utils/toolset/isThenable.test.ts +0 -40
  520. package/src/utils/toolset/isThenable.ts +0 -14
  521. package/src/utils/toolset/keyboard.ts +0 -50
  522. package/src/utils/toolset/omit.ts +0 -2
  523. package/src/utils/toolset/pluralize.ts +0 -16
  524. package/src/utils/toolset/range.ts +0 -2
  525. package/src/utils/toolset/rem.ts +0 -7
  526. package/src/utils/toolset/styledCompounds.ts +0 -22
  527. package/src/utils/toolset/toArray.ts +0 -16
  528. package/src/utils/types/ColorScheme.ts +0 -3
  529. package/src/utils/types/EventLike.ts +0 -11
  530. package/src/utils/types/InterpolatedStyle.ts +0 -3
  531. package/src/utils/types/Status.ts +0 -8
@@ -1,125 +0,0 @@
1
- import React from 'react'
2
- import { ThemeProvider } from 'styled-components'
3
- import renderer, { screen, user } from '../../../tests/renderer'
4
- import { Menu } from './'
5
- import type { MenuProps } from './Menu'
6
- import { Alice } from '../../../theming/themes'
7
-
8
- function setup(props: MenuProps) {
9
- return renderer(
10
- <ThemeProvider theme={Alice}>
11
- <Menu {...props} />
12
- </ThemeProvider>
13
- ).render()
14
- }
15
-
16
- describe('Menu', () => {
17
- it('renders correctly navigation bar', () => {
18
- setup({ children: null })
19
-
20
- expect(screen.getByRole('navigation')).toBeInTheDocument()
21
- })
22
-
23
- it('renders a text link when only label is provided', () => {
24
- setup({ children: <Menu.Item url="/check" label="Check" /> })
25
-
26
- expect(screen.getByText('Check')).toBeInTheDocument()
27
- expect(screen.getByRole('link', { name: 'Check' })).toHaveAttribute('href', '/check')
28
- })
29
-
30
- it('accepts onClick and calls it when performing an action', () => {
31
- const onClick = jest.fn()
32
-
33
- setup({ children: <Menu.Item onClick={onClick} label="Check" /> })
34
-
35
- user.click(screen.getByRole('link', { name: 'Check' }))
36
-
37
- expect(onClick).toHaveBeenCalledTimes(1)
38
- })
39
-
40
- it('renders an icon link when icon is provided', () => {
41
- setup({
42
- children: <Menu.Item icon={<span data-testid="icon" />} url="/schedule" label="Schedule" />,
43
- })
44
-
45
- expect(screen.getByTestId('icon')).toBeInTheDocument()
46
-
47
- expect(screen.queryByText('Schedule')).not.toBeInTheDocument()
48
-
49
- user.tab()
50
-
51
- expect(document.activeElement as Element).toEqual(
52
- screen.getByRole('link', { name: 'Schedule' })
53
- )
54
-
55
- expect(screen.getByRole('link', { name: 'Schedule' })).toHaveAttribute('href', '/schedule')
56
- })
57
-
58
- it('renders dropdown menu when subitems are provided', () => {
59
- const username = 'Username'
60
- const link = { label: 'Link', url: '/url' }
61
- const action = { label: 'Logout', click: jest.fn() }
62
-
63
- setup({
64
- children: (
65
- <Menu.Item label={username}>
66
- <Menu.SubItem label={link.label} url={link.url} />
67
- <Menu.SubItem label={action.label} onClick={action.click} />
68
- </Menu.Item>
69
- ),
70
- })
71
-
72
- expect(screen.getByText(username)).toBeInTheDocument()
73
- expect(screen.queryByText(link.label)).not.toBeInTheDocument()
74
- expect(screen.queryByText(action.label)).not.toBeInTheDocument()
75
-
76
- user.click(screen.getByRole('button', { name: username }))
77
-
78
- const linkSubItem = screen.getByRole('link', { name: link.label })
79
- const buttonSubItem = screen.getByRole('menuitem', { name: action.label })
80
-
81
- expect(linkSubItem).toBeVisible()
82
- expect(linkSubItem).toHaveAttribute('href', link.url)
83
-
84
- expect(buttonSubItem).toBeVisible()
85
-
86
- user.click(buttonSubItem)
87
-
88
- expect(action.click).toBeCalled()
89
- })
90
-
91
- // FIXME: Skipping as it's preventing test pipeline from being finished
92
- it.skip('renders an accessible dropdown menu when children are provided', () => {
93
- const username = 'Username'
94
- const action = 'Log Out'
95
-
96
- setup({
97
- children: (
98
- <Menu.Item label={username}>
99
- <Menu.SubItem label={action} url="/logout" />
100
- </Menu.Item>
101
- ),
102
- })
103
-
104
- expect(screen.getByText(username)).toBeInTheDocument()
105
- expect(screen.queryByText(action)).not.toBeInTheDocument()
106
-
107
- user.tab()
108
-
109
- expect(document.activeElement as Element).toEqual(
110
- screen.getByRole('button', { name: username })
111
- )
112
-
113
- user.keyboard('{Enter}')
114
-
115
- const subItem = screen.getByRole('link')
116
-
117
- expect(subItem).toBeVisible()
118
-
119
- user.tab()
120
-
121
- expect(document.activeElement as Element).toEqual(subItem)
122
-
123
- expect(subItem).toHaveAttribute('href', '/logout')
124
- })
125
- })
@@ -1,62 +0,0 @@
1
- import React from 'react'
2
- import type { PropsWithChildren, ReactNode, HTMLAttributes } from 'react'
3
- import styled from 'styled-components'
4
-
5
- import { getToken as token } from 'theming'
6
- import {
7
- MenuItemDropdown,
8
- MenuDropdown,
9
- MenuDropdownSubItem,
10
- MenuDropdownSeparator,
11
- } from './MenuItemDropdown'
12
- import { MenuItemIcon } from './MenuItemIcon'
13
- import conditional, { whenProps } from 'tools/conditional'
14
-
15
- type MenuItemProps = HTMLAttributes<HTMLElement> &
16
- PropsWithChildren<{
17
- label: string
18
- icon?: ReactNode
19
- url?: string
20
- }>
21
-
22
- export type MenuProps = PropsWithChildren<{
23
- align?: 'left' | 'right'
24
- }>
25
-
26
- const MenuContainer = styled.nav<{ $align: MenuProps['align'] }>`
27
- ${conditional({
28
- 'margin-left: auto;': whenProps({ $align: 'right' }),
29
- })}
30
-
31
- display: flex;
32
- flex-direction: row;
33
- align-items: center;
34
-
35
- & > * + * {
36
- margin-left: ${token('space-m')};
37
- }
38
-
39
- & > * + ${MenuDropdown} {
40
- margin-left: ${token('space-xl')};
41
- }
42
- `
43
-
44
- function MenuItem(props: MenuItemProps): JSX.Element {
45
- if (props.children) {
46
- return <MenuItemDropdown {...props} />
47
- }
48
-
49
- return <MenuItemIcon {...props} />
50
- }
51
-
52
- function Menu(props: MenuProps): JSX.Element {
53
- const { align = 'left' } = props
54
-
55
- return <MenuContainer $align={align}>{props.children}</MenuContainer>
56
- }
57
-
58
- Menu.Item = MenuItem
59
- Menu.SubItem = MenuDropdownSubItem
60
- Menu.Separator = MenuDropdownSeparator
61
-
62
- export default Menu
@@ -1,118 +0,0 @@
1
- import React from 'react'
2
- import type { PropsWithChildren, ReactNode, HTMLAttributes } from 'react'
3
- import styled from 'styled-components'
4
-
5
- import { getToken as token } from 'theming'
6
- import focusable from 'styles/focusable'
7
- import hoverable from 'styles/hoverable'
8
- import transition from 'styles/transition'
9
- import { Dropdown, DropdownMenu, DropdownMenuItem, DropdownTrigger } from 'components/Dropdown'
10
- import { BaseLink } from 'components/Link'
11
- import useID from 'hooks/useID'
12
- import ellipsizable from 'styles/ellipsizable'
13
- import typography from 'styles/typography'
14
- import { Popover } from 'components/Popover'
15
-
16
- export const MenuDropdown = styled(Dropdown)({})
17
-
18
- export const MenuDropdownSeparator = styled.hr`
19
- margin: ${token('space-s')} ${token('space-m')};
20
-
21
- color: ${token('top-navigation-dropdown-separator-color')};
22
- `
23
-
24
- const MenuDropdownTrigger = styled(DropdownTrigger.Handle)`
25
- color: ${token('top-navigation-dropdown-trigger-color')};
26
- `
27
-
28
- export const MenuDropdownLabel = styled.label`
29
- ${transition()}
30
-
31
- align-items: center;
32
- display: flex;
33
-
34
- ${typography('body-bold', { color: 'top-navigation-item-color' })}
35
-
36
- cursor: pointer;
37
-
38
- ${focusable`
39
- color: ${token('top-navigation-item-color--hover')};
40
- `}
41
- `
42
-
43
- const Ellipsizable = styled.span<{ $max: number }>`
44
- ${ellipsizable()}
45
-
46
- max-width: ${(props) => props.$max}px;
47
- `
48
-
49
- const IconWrapper = styled.div`
50
- width: ${token('space-m')};
51
- `
52
-
53
- const MenuDropdownSubItemLink = styled(BaseLink)`
54
- align-items: stretch;
55
- ${typography('body', { color: 'top-navigation-dropdown-subitem-color' })}
56
-
57
- ${hoverable`
58
- text-decoration: none;
59
- font-weight: inherit;
60
- `}
61
-
62
- ${focusable`
63
- > * {
64
- background-color: ${token('color-neutral-lighter')}
65
- }
66
- `}
67
- `
68
-
69
- type MenuDropdownSubItemProps = HTMLAttributes<HTMLElement> & {
70
- label: string
71
- url?: string
72
- icon?: ReactNode
73
- separator?: boolean
74
- }
75
-
76
- export function MenuDropdownSubItem({
77
- icon,
78
- label,
79
- url,
80
- ...rest
81
- }: MenuDropdownSubItemProps): JSX.Element {
82
- return url ? (
83
- <MenuDropdownSubItemLink {...rest} href={url}>
84
- <DropdownMenuItem tabIndex={-1} leading={<IconWrapper>{icon}</IconWrapper>}>
85
- {label}
86
- </DropdownMenuItem>
87
- </MenuDropdownSubItemLink>
88
- ) : (
89
- <DropdownMenuItem leading={<IconWrapper>{icon}</IconWrapper>} {...rest}>
90
- {label}
91
- </DropdownMenuItem>
92
- )
93
- }
94
-
95
- export type MenuItemDropdownProps = PropsWithChildren<{
96
- label: string
97
- }>
98
-
99
- function MenuItemDropdown(props: MenuItemDropdownProps): JSX.Element {
100
- const { label, children, ...rest } = props
101
- const labelId = useID()
102
-
103
- return (
104
- <MenuDropdown align="end" key={label}>
105
- <Popover.Reference>
106
- <MenuDropdownLabel>
107
- <Ellipsizable $max={120} id={labelId}>
108
- {label}
109
- </Ellipsizable>
110
- <MenuDropdownTrigger {...rest} tabIndex={0} aria-labelledby={labelId} />
111
- </MenuDropdownLabel>
112
- </Popover.Reference>
113
- <DropdownMenu>{children}</DropdownMenu>
114
- </MenuDropdown>
115
- )
116
- }
117
-
118
- export { MenuItemDropdown }
@@ -1,50 +0,0 @@
1
- import React from 'react'
2
- import type { ReactNode } from 'react'
3
- import styled from 'styled-components'
4
-
5
- import { getToken as token } from 'theming'
6
- import focusable from 'styles/focusable'
7
- import hoverable from 'styles/hoverable'
8
- import { BaseLink } from 'components/Link'
9
- import conditional, { whenProps } from 'tools/conditional'
10
- import typography from 'styles/typography'
11
-
12
- const MenuLink = styled(BaseLink)<{ hasIcon?: boolean }>`
13
- ${typography('body-bold')}
14
-
15
- color: ${conditional({
16
- 'top-navigation-item-icon-color': whenProps({ hasIcon: true }),
17
- 'top-navigation-item-color': whenProps({ hasIcon: false }),
18
- })};
19
-
20
- ${hoverable`
21
- text-decoration: none;
22
- color: ${token('top-navigation-item-color--hover')};
23
- `}
24
-
25
- ${focusable`
26
- color: ${token('top-navigation-item-color--hover')};
27
- `}
28
- `
29
-
30
- type MenuItemIconProps = {
31
- label: string
32
- icon?: ReactNode
33
- url?: string
34
- }
35
-
36
- export function MenuItemIcon({ url, icon, label, ...rest }: MenuItemIconProps): JSX.Element {
37
- if (icon) {
38
- return (
39
- <MenuLink {...rest} href={url} hasIcon title={label}>
40
- {icon}
41
- </MenuLink>
42
- )
43
- }
44
-
45
- return (
46
- <MenuLink {...rest} href={url}>
47
- {label}
48
- </MenuLink>
49
- )
50
- }
@@ -1 +0,0 @@
1
- export { default as Menu } from './Menu'
@@ -1,28 +0,0 @@
1
- import React from 'react'
2
- import styled from 'styled-components'
3
-
4
- import { getToken as token } from 'theming'
5
- import { Icon } from 'components/Icon'
6
-
7
- export type OpenSideNavButtonProps = {
8
- className?: string
9
- onClick: () => void
10
- }
11
-
12
- const Container = styled.button`
13
- margin-right: ${token('space-2xl')};
14
-
15
- background: none;
16
- border: none;
17
- cursor: pointer;
18
- `
19
-
20
- function OpenSideNavButton({ className, onClick }: OpenSideNavButtonProps): JSX.Element {
21
- return (
22
- <Container className={className} onClick={onClick}>
23
- <Icon name="burguer-menu" size={24} data-testid="toggle-sidenav" />
24
- </Container>
25
- )
26
- }
27
-
28
- export default styled(OpenSideNavButton)<OpenSideNavButtonProps>({})
@@ -1 +0,0 @@
1
- export { default as OpenSideNavButton } from './OpenSideNavButton'
@@ -1,42 +0,0 @@
1
- import React from 'react'
2
-
3
- import { Icon } from 'components/Icon'
4
- import { TopNavigation } from './'
5
-
6
- export default {
7
- title: 'Components/TopNavigation',
8
- }
9
-
10
- export function Playground(): JSX.Element {
11
- return (
12
- <TopNavigation>
13
- <TopNavigation.Logo url="#">
14
- <img src="logo.svg" alt="The Logo" />
15
- </TopNavigation.Logo>
16
-
17
- <TopNavigation.Menu align="right">
18
- <TopNavigation.Menu.Item label="Add Note" url="#" />
19
-
20
- <TopNavigation.Menu.Item
21
- icon={<Icon name="warning" size={20} />}
22
- label="Schedule"
23
- url="#"
24
- />
25
-
26
- <TopNavigation.Menu.Item label="Michael Scott Regional Manager">
27
- <TopNavigation.Menu.SubItem label="Account" url="#" />
28
- <TopNavigation.Menu.SubItem
29
- label="Help Center"
30
- icon={<Icon name="warning" size={20} />}
31
- url="#"
32
- />
33
- <TopNavigation.Menu.Separator />
34
- <TopNavigation.Menu.SubItem
35
- label="Logout"
36
- onClick={() => alert('Logout button clicked')}
37
- />
38
- </TopNavigation.Menu.Item>
39
- </TopNavigation.Menu>
40
- </TopNavigation>
41
- )
42
- }
@@ -1,47 +0,0 @@
1
- import React from 'react'
2
- import type { ReactNode } from 'react'
3
- import styled, { css } from 'styled-components'
4
-
5
- import { getToken as token } from 'theming'
6
- import { Logo } from './Logo'
7
- import { Menu } from './Menu'
8
- import { MenuDropdownLabel } from './Menu/MenuItemDropdown'
9
- import { OpenSideNavButton } from './OpenSideNavButton'
10
-
11
- /* We need to remove the 8px padding-right that DropdownTrigger adds (because of
12
- BaseStyledButton), in order to keep it always 40px to the right, but only when
13
- it's the last child. DropdownTigger isn't a StyledComponent so we need to use
14
- MenuDropdownLabel here since it's the one that wraps DropdownTigger */
15
- const removeRightPadding = css`
16
- > :last-child ${MenuDropdownLabel} {
17
- margin-right: -${token('space-m')};
18
- }
19
- `
20
-
21
- const Container = styled.div`
22
- display: flex;
23
- flex-direction: row;
24
- align-items: center;
25
- width: 100%;
26
- height: ${token('top-navigation-height')};
27
- padding: 0 ${token('space-2xl')};
28
-
29
- background-color: ${token('top-navigation-background-color')};
30
- border-bottom: solid 1px ${token('top-navigation-border-color')};
31
-
32
- ${removeRightPadding}
33
- `
34
-
35
- export interface TopNavigationProps {
36
- children?: ReactNode
37
- }
38
-
39
- function TopNavigation({ children }: TopNavigationProps): JSX.Element {
40
- return <Container>{children}</Container>
41
- }
42
-
43
- TopNavigation.Logo = Logo
44
- TopNavigation.Menu = Menu
45
- TopNavigation.OpenSideNavButton = OpenSideNavButton
46
-
47
- export default TopNavigation
@@ -1,2 +0,0 @@
1
- export { default as TopNavigation } from './TopNavigation'
2
- export type { TopNavigationProps } from './TopNavigation'
@@ -1,26 +0,0 @@
1
- # VisuallyHidden
2
-
3
- Use this component to visually hide elements but keep them accessible to assistive technologies.
4
-
5
- Visually hide an element while still allowing it to be exposed to assistive technologies (such as screen readers) with `VisuallyHidden`.
6
- This would typically be used when you want to take advantage of the behavior and semantics of a native element like a checkbox or radio button, but replace it with a custom styled element visually.
7
-
8
- ## Usage
9
-
10
- ```tsx
11
- import { VisuallyHidden } from '@loadsmart/loadsmart-ui'
12
-
13
- const Example = () => (
14
- <Layout.Stack>
15
- <Text as="p">
16
- Bellow you can&apos;t see the text, but assistive technologies can. Try to use devtools to
17
- inspect this element.
18
- </Text>
19
- <Text as="p">
20
- <VisuallyHidden>
21
- This text is invisible but accessible by assistive technologies
22
- </VisuallyHidden>
23
- </Text>
24
- </Layout.Stack>
25
- )
26
- ```
@@ -1,32 +0,0 @@
1
- import { Layout } from 'components/Layout'
2
- import { Text } from 'components/Text'
3
- import React from 'react'
4
-
5
- import { VisuallyHidden } from '.'
6
- import Docs from './VisuallyHidden.mdx'
7
-
8
- export default {
9
- title: 'Components/VisuallyHidden',
10
- component: VisuallyHidden,
11
- parameters: {
12
- docs: {
13
- page: Docs,
14
- },
15
- },
16
- }
17
-
18
- export function Playground(): JSX.Element {
19
- return (
20
- <Layout.Stack className="p-10 bg-neutral-dark w-60 text-center">
21
- <Text color="color-neutral-white" as="p">
22
- Bellow you can&apos;t see the text, but assistive technologies can. Try to use devtools to
23
- inspect this element.
24
- </Text>
25
- <Text color="color-neutral-white" as="p">
26
- <VisuallyHidden>
27
- This text is invisible but accessible by assistive technologies
28
- </VisuallyHidden>
29
- </Text>
30
- </Layout.Stack>
31
- )
32
- }
@@ -1,18 +0,0 @@
1
- import React from 'react'
2
- import { screen } from '@testing-library/react'
3
-
4
- import renderer from '../../tests/renderer'
5
-
6
- import hiddenStyle from 'styles/hidden'
7
- import { VisuallyHidden } from './VisuallyHidden'
8
-
9
- describe('VisuallyHidden', () => {
10
- it('should render children accessibly', () => {
11
- const children = 'Should not be visible'
12
- const expectedHiddenStyle = hiddenStyle(true).replace(/!important/g, '')
13
-
14
- renderer(<VisuallyHidden>{children}</VisuallyHidden>).render()
15
-
16
- expect(screen.getByText(children)).toHaveStyle(expectedHiddenStyle)
17
- })
18
- })
@@ -1,6 +0,0 @@
1
- import styled from 'styled-components'
2
- import hiddenStyle from 'styles/hidden'
3
-
4
- export const VisuallyHidden = styled.span`
5
- ${hiddenStyle(true)}
6
- `
@@ -1 +0,0 @@
1
- export { VisuallyHidden } from './VisuallyHidden'
@@ -1,108 +0,0 @@
1
- import { Meta } from '@storybook/blocks'
2
-
3
- <Meta title="Tools/Tests/Date Picker Event" />
4
-
5
- # Date Picker Event
6
-
7
- Our [`DateRangePicker`](/?path=/story/components-date-datepicker--playground) component is fully tailored for the needs of our Design System. For that reason, writing unit tests for it would require prior knowledge about its inner structure. To prevent that and help with performing the main date selection features, we have exposed a few helper functions.
8
-
9
- The following functions descriptions consider this example:
10
-
11
- ```jsx
12
- <div>
13
- <Label htmlFor="my-date-picker">Select the date</Label>
14
- <DatePicker id="my-date-picker" {...args} />
15
- </div>
16
- ```
17
-
18
- ## `expand`
19
-
20
- This asynchronous function will expand (show) the calendar if it's not already expanded.
21
-
22
- Example:
23
-
24
- ```js
25
- const datePicker = screen.getByLabelText('Select the date')
26
- await DatePickerEvent.expand(datePicker)
27
- ```
28
-
29
- ## `collapse`
30
-
31
- This asynchronous function will collapse the calendar if it's not already collapsed.
32
-
33
- Example:
34
-
35
- ```js
36
- const datePicker = screen.getByLabelText('Select the date')
37
- await DatePickerEvent.collapse(datePicker)
38
- ```
39
-
40
- ## `pick`
41
-
42
- This asynchronous function will select the provided date, formatted as `mm/dd/yyyy`.
43
-
44
- We collapse the calendar after selecting the date.
45
-
46
- If the provided date is already selected, nothing will happen.
47
-
48
- Example:
49
-
50
- ```js
51
- const datePicker = screen.getByLabelText('Select the date')
52
- await DatePickerEvent.pick('02/28/2022', datePicker)
53
- ```
54
-
55
- ## `clear`
56
-
57
- This asynchronous function will clear the current date selection.
58
-
59
- If no date is selected, nothing will happen.
60
-
61
- Example:
62
-
63
- ```js
64
- const datePicker = screen.getByLabelText('Select the date')
65
- await DatePickerEvent.clear(datePicker)
66
- ```
67
-
68
- ## `getSelectedDates`
69
-
70
- This asynchronous function will return the button elements that represent the selected dates.
71
-
72
- Example:
73
-
74
- ```js
75
- const datePicker = screen.getByLabelText('Select the date')
76
- const selectedDateElements = await DatePickerEvent.getSelectedOptions(datePicker)
77
- ```
78
-
79
- # Date Range Picker Event
80
-
81
- Our [`DateRangePickerEvent`](/?path=/story/components-date-daterangepicker--playground) testing utility follows the same API as the [`DatePickerEvent`](#date-picker-event), except for the `pick` function.
82
-
83
- It is important to notice that, since the date range selector has two inputs, you won't be able to refer to them specifically, as with the date picker. Internally, we get the `id` and `name` you provided as props and assign them to the start and end input elements, appending a `-start` or `-end` respectively.
84
-
85
- Consider this example:
86
-
87
- ```jsx
88
- <div>
89
- {/* Notice the `htmlFor` prop; it has to point to any of the `id`s */}
90
- <Label htmlFor="my-date-picker-id-start">Select the date range</Label>
91
- <DatePicker id="my-date-picker-id" name="my-date-picker-name" {...args} />
92
- </div>
93
- ```
94
-
95
- The range start input will have `id: 'my-date-picker-id-start', name: 'my-date-picker-name-start'`, and the range end input will have `id: 'my-date-picker-id-end', name: 'my-date-picker-name-end'`.
96
-
97
- ## `pick`
98
-
99
- This asynchronous function will select the provided date range `[string | null, string | null]`, with dates formatted as `mm/dd/yyyy`.
100
-
101
- We collapse the calendar after selecting the date range.
102
-
103
- Example:
104
-
105
- ```js
106
- const datePicker = screen.getByLabelText('Select the date range')
107
- await DatePickerEvent.pick(['02/14/2022', '02/28/2022'], datePicker)
108
- ```