@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,79 +0,0 @@
1
- import React from 'react'
2
- import { screen } from '@testing-library/react'
3
- import renderer from '../../tests/renderer'
4
- import Link from './Link'
5
- import generator from '../../tests/generator'
6
-
7
- describe('<Link />', () => {
8
- describe('default', () => {
9
- const setup = ({ ...overrides }) => renderer(<Link {...overrides} />).render()
10
-
11
- const props = {
12
- href: generator.url(),
13
- title: generator.sentence(),
14
- children: generator.word(),
15
- target: generator.pick(['_self', '_blank', '_parent', '_top']) as string,
16
- }
17
-
18
- setup(props)
19
-
20
- const component = screen.getByTestId('link')
21
-
22
- it('renders correctly', () => {
23
- expect(component).toBeTruthy()
24
- expect(component).toHaveAttribute('href', props.href)
25
- expect(component).toHaveAttribute('title', props.title)
26
- expect(component).toHaveAttribute('target', props.target)
27
- // eslint-disable-next-line testing-library/no-node-access
28
- expect(component).toHaveTextContent(props.children)
29
- })
30
-
31
- it('renders "/" as href if none is provided', () => {
32
- const props = {
33
- title: generator.sentence(),
34
- }
35
-
36
- setup(props)
37
-
38
- const component = screen.getByTitle(props.title)
39
- expect(component).toBeInTheDocument()
40
- expect(component).toHaveAttribute('href', '/')
41
- })
42
-
43
- it(`renders "_self" as target if none is provided`, () => {
44
- const props = {
45
- title: generator.sentence(),
46
- }
47
-
48
- setup(props)
49
-
50
- const component = screen.getByTitle(props.title)
51
-
52
- expect(component).toBeInTheDocument()
53
- expect(component).toHaveAttribute('target', '_self')
54
- })
55
- })
56
-
57
- describe('with sanitized props', () => {
58
- const setup = ({ ...overrides }) => renderer(<Link {...overrides} />).render()
59
-
60
- const props = {
61
- // eslint-disable-next-line no-script-url
62
- href: 'javascript:copySecureData()',
63
- title: generator.sentence(),
64
- children: generator.word(),
65
- target: '_blank',
66
- }
67
-
68
- setup(props)
69
- const component = screen.getByTitle(props.title)
70
-
71
- it('removes the insecure href prop, replacing with /', () => {
72
- expect(component).toHaveAttribute('href', '/')
73
- })
74
-
75
- it('adds "noopener" to anchor element rel attribute, due to the target "_blank"', () => {
76
- expect((component.getAttribute('rel') || '').includes('noopener')).toBe(true)
77
- })
78
- })
79
- })
@@ -1,114 +0,0 @@
1
- import React, { forwardRef } from 'react'
2
- import type { AnchorHTMLAttributes, ForwardedRef } from 'react'
3
- import clsx from 'clsx'
4
- import styled, { css } from 'styled-components'
5
-
6
- import useSafeLink from './useSafeLink'
7
- import font from 'styles/font'
8
- import transition from 'styles/transition'
9
- import ellipsizable from 'styles/ellipsizable'
10
- import hoverable from 'styles/hoverable'
11
- import focusable from 'styles/focusable'
12
- import disableable from 'styles/disableable'
13
- import { getToken as token } from 'theming'
14
-
15
- export interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
16
- className?: string
17
- disabled?: boolean
18
- }
19
-
20
- const StyledBaseAnchor = styled.a`
21
- ${font({
22
- height: 'link-font-height',
23
- weight: 'link-font-weight',
24
- })}
25
- ${transition()}
26
-
27
- ${ellipsizable()}
28
-
29
- display: inline-flex;
30
- flex-direction: column;
31
- align-items: center;
32
- justify-content: center;
33
-
34
- text-align: center;
35
- font-size: ${token('link-font-size')};
36
- color: ${token('color-neutral-darker')};
37
- text-decoration: none;
38
-
39
- min-height: 24px;
40
-
41
- border-radius: ${token('border-radius-s')};
42
-
43
- ${hoverable`
44
- text-decoration: underline;
45
- font-weight: ${token('link-font-weight--hover')};
46
- `}
47
-
48
- ${focusable`
49
- box-shadow: ${token('link-box-shadow')};
50
- outline: ${token('link-outline')};
51
- outline-offset: ${token('link-outline-offset')};
52
- `}
53
-
54
- ${disableable``}
55
-
56
- ${({ children }) =>
57
- 'string' == typeof children &&
58
- // to prevent layout shift on hover, https://css-tricks.com/bold-on-hover-without-the-layout-shift/
59
- css`
60
- &::after {
61
- height: 0;
62
- overflow: hidden;
63
-
64
- font-weight: ${token('link-font-weight--hover')};
65
-
66
- visibility: hidden;
67
-
68
- content: attr(data-text);
69
- content: attr(data-text) / '';
70
- user-select: none;
71
- pointer-events: none;
72
-
73
- @media speech {
74
- display: none;
75
- }
76
- }
77
- `}
78
- `
79
-
80
- export const BaseLink = forwardRef(function BaseLink(
81
- { disabled = false, ...props }: LinkProps,
82
- forwardedRef: ForwardedRef<HTMLAnchorElement>
83
- ): JSX.Element {
84
- const { href = '/', children, className, target = '_self', ...others } = useSafeLink(props)
85
-
86
- return (
87
- <StyledBaseAnchor
88
- className={clsx(
89
- {
90
- 'is-disabled': disabled,
91
- },
92
- className
93
- )}
94
- href={href}
95
- target={target}
96
- {...others}
97
- ref={forwardedRef}
98
- data-text={'string' == typeof children ? children : ''}
99
- data-testid="link"
100
- >
101
- {children}
102
- </StyledBaseAnchor>
103
- )
104
- })
105
-
106
- const StyledAnchor = styled(BaseLink)<LinkProps>`
107
- color: ${token('link-color')};
108
- `
109
-
110
- function Link(props: LinkProps): JSX.Element {
111
- return <StyledAnchor {...props} />
112
- }
113
-
114
- export default Link
@@ -1,3 +0,0 @@
1
- export { default as Link, BaseLink } from './Link'
2
- export { default as useSafeLink } from './useSafeLink'
3
- export type { LinkProps } from './Link'
@@ -1,49 +0,0 @@
1
- import type { AnchorHTMLAttributes } from 'react'
2
- import { isBlank } from '@loadsmart/utils-string'
3
-
4
- const INSECURE_HREF = /^javascript:/i
5
-
6
- function checkHref(props: AnchorHTMLAttributes<HTMLAnchorElement>) {
7
- const { href, ...others } = props
8
-
9
- if (isBlank(href || '')) {
10
- return props
11
- }
12
-
13
- if (INSECURE_HREF.test(`${href || ''}`)) {
14
- // security risk, thus, removing it
15
- return others
16
- }
17
-
18
- return props
19
- }
20
-
21
- function checkTarget({ target, rel }: AnchorHTMLAttributes<HTMLAnchorElement>) {
22
- if (isBlank(target || '')) {
23
- return { target, rel }
24
- }
25
-
26
- const sanitizedRel = new Set((rel || '').split(/\s+/).filter(Boolean))
27
-
28
- if (target === '_blank') {
29
- sanitizedRel.add('noopener')
30
- }
31
-
32
- /**
33
- * To avoid exploitation of the window.opener API, Adding noreferrer,
34
- * as recommended in https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a
35
- */
36
- sanitizedRel.add('noreferrer')
37
-
38
- return { rel: Array.from(sanitizedRel).join(' '), target }
39
- }
40
-
41
- function useSafeLink(
42
- props: AnchorHTMLAttributes<HTMLAnchorElement>
43
- ): AnchorHTMLAttributes<HTMLAnchorElement> {
44
- const { rel, target } = checkTarget(props) || {}
45
-
46
- return { ...checkHref(props), rel, target }
47
- }
48
-
49
- export default useSafeLink
@@ -1,36 +0,0 @@
1
- import React from 'react'
2
- import type { Story, Meta } from '@storybook/react'
3
- import { Text } from 'components/Text'
4
-
5
- import type { LoadingBarProps } from './LoadingBar'
6
-
7
- import LoadingBar from './LoadingBar'
8
-
9
- export default {
10
- title: 'Components/Loaders/LoadingBar',
11
- component: LoadingBar,
12
- argTypes: {},
13
- } as Meta
14
-
15
- export const Playground: Story<LoadingBarProps> = (args) => {
16
- return (
17
- <div className="flex flex-col space-y-2">
18
- <div className="flex items-center">
19
- <LoadingBar {...args} />
20
- </div>
21
- </div>
22
- )
23
- }
24
-
25
- Playground.args = {
26
- title: (
27
- <Text variant="heading-md-bold" color="color-neutral-dark">
28
- Loading
29
- </Text>
30
- ),
31
- secondaryTitle: (
32
- <Text variant="body" color="color-neutral-dark">
33
- Message here if necessary, othewise hide it
34
- </Text>
35
- ),
36
- }
@@ -1,35 +0,0 @@
1
- import React from 'react'
2
- import { composeStories } from '@storybook/react'
3
-
4
- import * as stories from './LoadingBar.stories'
5
- import renderer, { screen } from '../../tests/renderer'
6
-
7
- import type { LoadingBarProps } from './LoadingBar'
8
-
9
- const { Playground } = composeStories(stories)
10
-
11
- const setup = (overrides: Partial<LoadingBarProps>) =>
12
- renderer(<Playground {...overrides} />).render()
13
-
14
- describe('LoadingBar', () => {
15
- it('renders correctly', () => {
16
- const props = {}
17
-
18
- setup(props)
19
-
20
- screen.getByText('Loading')
21
- })
22
-
23
- it('renders customized title and subtitle correctly', () => {
24
- const props = {
25
- title: 'Loading',
26
- subTitle: 'Message here if necessary, othewise hide it',
27
- width: 400,
28
- }
29
-
30
- setup(props)
31
-
32
- screen.getByText(props.title)
33
- screen.getByText(props.subTitle)
34
- })
35
- })
@@ -1,65 +0,0 @@
1
- import { Layout } from 'components/Layout'
2
- import React from 'react'
3
- import styled, { keyframes } from 'styled-components'
4
- import { getToken as token } from 'theming'
5
-
6
- const loading = keyframes`
7
- from {
8
- width: 0
9
- }
10
- to {
11
- width: 100%
12
- }
13
- `
14
-
15
- export const Bar = styled.div<{ width?: number; velocity?: number }>`
16
- position: relative;
17
-
18
- width: ${({ width }) => (width ? `${width}px` : '100%')};
19
- height: ${token('space-s')};
20
- overflow: hidden;
21
-
22
- background-color: ${token('color-neutral-light')};
23
- border-radius: ${token('border-radius-m')};
24
-
25
- &:before {
26
- position: absolute;
27
-
28
- display: block;
29
- width: 100%;
30
- height: ${token('space-s')};
31
-
32
- background-color: ${token('color-primary')};
33
-
34
- animation: ${loading} ${({ velocity }) => (velocity && velocity > 0 ? velocity : 2.5)}s linear
35
- infinite;
36
-
37
- content: '';
38
- }
39
- `
40
-
41
- export interface LoadingBarProps {
42
- alignment?: 'left' | 'center' | 'right'
43
- title?: React.ReactNode
44
- secondaryTitle?: React.ReactNode
45
- width?: number | undefined
46
- velocity?: number | undefined
47
- }
48
-
49
- export default function LoadingBar({
50
- alignment,
51
- title,
52
- secondaryTitle,
53
- width = undefined,
54
- velocity = 2.5,
55
- }: LoadingBarProps): JSX.Element {
56
- return (
57
- <Layout.Box textAlign={alignment}>
58
- <Layout.Stack space="s">
59
- {title}
60
- <Bar width={width} velocity={velocity} />
61
- {secondaryTitle}
62
- </Layout.Stack>
63
- </Layout.Box>
64
- )
65
- }
@@ -1,69 +0,0 @@
1
- import React from 'react'
2
- import type { Story, Meta } from '@storybook/react'
3
- import { Button } from 'components/Button'
4
-
5
- import LoadingDots, { LoadingDotsProps } from './LoadingDots'
6
-
7
- export default {
8
- title: 'Components/Loaders/LoadingDots',
9
- component: LoadingDots,
10
- argTypes: {
11
- size: {
12
- control: {
13
- type: 'number',
14
- },
15
- },
16
- variant: {
17
- control: {
18
- type: 'select',
19
- options: ['dark', 'light'],
20
- },
21
- },
22
- },
23
- } as Meta
24
-
25
- export const Playground: Story<LoadingDotsProps> = (args: LoadingDotsProps) => {
26
- return (
27
- <div className="flex flex-col space-y-2">
28
- <div className="flex items-center">
29
- <LoadingDots {...args} />
30
- </div>
31
- </div>
32
- )
33
- }
34
-
35
- Playground.args = {
36
- size: 10,
37
- variant: 'dark',
38
- }
39
-
40
- export const InsideButton: Story<LoadingDotsProps> = () => {
41
- return (
42
- <div className="flex flex-col space-y-2">
43
- <div className="flex items-center">
44
- <Button variant="primary">
45
- <LoadingDots variant="light" />
46
- </Button>
47
- </div>
48
- <div className="flex items-center">
49
- <Button>
50
- <LoadingDots />
51
- </Button>
52
- </div>
53
- </div>
54
- )
55
- }
56
-
57
- InsideButton.parameters = {
58
- docs: {
59
- description: {
60
- story: `
61
- Follow these guidelines to ensure you have enough contrast with your background:
62
-
63
- - Dark background should use variant \`light\`;
64
- - Light background should use variant \`dark\`;
65
- - Green background should use variant \`dark\`.
66
- `,
67
- },
68
- },
69
- }
@@ -1,22 +0,0 @@
1
- import React from 'react'
2
- import { composeStories } from '@storybook/react'
3
-
4
- import * as stories from './LoadingDots.stories'
5
- import renderer, { screen } from '../../tests/renderer'
6
-
7
- import type { LoadingDotsProps } from './LoadingDots'
8
-
9
- const { Playground } = composeStories(stories)
10
-
11
- const setup = (overrides: Partial<LoadingDotsProps>) =>
12
- renderer(<Playground {...overrides} />).render()
13
-
14
- describe('LoadingDots', () => {
15
- it('renders correctly', () => {
16
- const props = {}
17
-
18
- setup(props)
19
-
20
- expect(screen.getByRole('progressbar', { name: 'Loading' })).toBeInTheDocument()
21
- })
22
- })
@@ -1,68 +0,0 @@
1
- import React from 'react'
2
- import styled, { keyframes } from 'styled-components'
3
- import conditional, { whenProps } from 'tools/conditional'
4
- import prop from 'tools/prop'
5
- import { getToken as token } from 'theming'
6
-
7
- const pulse = keyframes`
8
- 50% {
9
- opacity: 0.2;
10
- }
11
-
12
- 100% {
13
- opacity: 1;
14
- }
15
- `
16
-
17
- const Wrapper = styled.div`
18
- text-align: center;
19
-
20
- div:nth-child(1) {
21
- animation: ${pulse} 1s infinite ease-in-out -0.2s;
22
- }
23
-
24
- div:nth-child(2) {
25
- animation: ${pulse} 1s infinite ease-in-out -0.1s;
26
- }
27
-
28
- div:nth-child(3) {
29
- animation: ${pulse} 1s infinite ease-in-out 0s;
30
- }
31
- `
32
-
33
- interface DotProps {
34
- size?: number
35
- variant?: 'light' | 'dark'
36
- }
37
-
38
- const Dot = styled.div<DotProps>`
39
- display: inline-block;
40
- width: ${prop('size')}px;
41
- height: ${prop('size')}px;
42
- margin: ${token('space-2xs')};
43
-
44
- background-color: ${conditional({
45
- 'color-neutral-white': whenProps({ variant: 'light' }),
46
- 'color-neutral-dark': whenProps({ variant: 'dark' }),
47
- })};
48
- border-radius: ${token('border-radius-circle')};
49
- `
50
-
51
- export interface LoadingDotsProps {
52
- size?: number
53
- variant?: 'dark' | 'light'
54
- }
55
-
56
- export default function LoadingDots({
57
- size = 10,
58
- variant = 'dark',
59
- ...props
60
- }: LoadingDotsProps): JSX.Element {
61
- return (
62
- <Wrapper role="progressbar" aria-label="Loading" {...props}>
63
- <Dot size={size} variant={variant} />
64
- <Dot size={size} variant={variant} />
65
- <Dot size={size} variant={variant} />
66
- </Wrapper>
67
- )
68
- }
@@ -1,24 +0,0 @@
1
- import React from 'react'
2
- import type { Story, Meta } from '@storybook/react'
3
-
4
- import Spinner, { SpinnerProps } from './Spinner'
5
-
6
- export default {
7
- title: 'Components/Loaders/Spinner',
8
- component: Spinner,
9
- argTypes: {},
10
- } as Meta
11
-
12
- export const Playground: Story<SpinnerProps> = (args: SpinnerProps) => {
13
- return (
14
- <div className="flex flex-col space-y-2">
15
- <div className="flex items-center">
16
- <Spinner {...args} />
17
- </div>
18
- </div>
19
- )
20
- }
21
-
22
- Playground.args = {
23
- size: 48,
24
- }
@@ -1,35 +0,0 @@
1
- import React from 'react'
2
- import { composeStories } from '@storybook/react'
3
-
4
- import * as stories from './Spinner.stories'
5
- import generator from '../../tests/generator'
6
- import renderer, { screen } from '../../tests/renderer'
7
-
8
- import type { SpinnerProps } from './Spinner'
9
-
10
- const { Playground } = composeStories(stories)
11
-
12
- const setup = (overrides: Partial<SpinnerProps>) => renderer(<Playground {...overrides} />).render()
13
-
14
- describe('Spinner', () => {
15
- it('renders correctly', () => {
16
- const props = {
17
- size: 48,
18
- }
19
-
20
- setup(props)
21
-
22
- screen.getByText('Loading')
23
- })
24
-
25
- it('renders a custom title correctly', () => {
26
- const props = {
27
- size: 48,
28
- title: generator.word(),
29
- }
30
-
31
- setup(props)
32
-
33
- screen.getByText(props.title)
34
- })
35
- })
@@ -1,68 +0,0 @@
1
- import React from 'react'
2
- import styled, { keyframes } from 'styled-components'
3
-
4
- const ANIMATION_DURATION = 0.8
5
-
6
- const animation = keyframes`
7
- 0% { opacity: 0 }
8
- 25% { opacity: 1 }
9
- 50% { opacity: 0.66 }
10
- 75% { opacity: 0.33; }
11
- 100% { opacity: 0 }
12
- `
13
-
14
- interface LayerProps {
15
- index: number
16
- }
17
-
18
- const Layer = styled.path<LayerProps>`
19
- animation-name: ${animation};
20
- animation-duration: ${ANIMATION_DURATION}s;
21
- animation-delay: -${(props) => props.index * (ANIMATION_DURATION / 4)}s;
22
- animation-iteration-count: infinite;
23
- `
24
-
25
- export interface SpinnerProps {
26
- title?: string
27
- size: number
28
- }
29
-
30
- export default function Spinner({ title, size, ...props }: SpinnerProps): JSX.Element {
31
- return (
32
- <svg
33
- {...props}
34
- viewBox="0 0 48 48"
35
- fillRule="evenodd"
36
- strokeLinejoin="round"
37
- strokeMiterlimit="2"
38
- clipRule="evenodd"
39
- width={size}
40
- height={size}
41
- >
42
- <title>{title || 'Loading'}</title>
43
- <g
44
- id="surface1"
45
- transform="matrix(0.0806777,0,0,0.0806777,0,-9.96047)"
46
- fill="#33CC60"
47
- fillRule="nonzero"
48
- >
49
- <Layer
50
- index={0}
51
- d="M362.176,638.695C366.445,638.695 370.535,637 373.527,633.996L505.332,502.211L224.305,502.211C222.074,502.211 220.066,501.316 218.617,499.855L84.488,633.996C87.395,636.902 91.406,638.695 95.82,638.695L362.176,638.695Z"
52
- />
53
- <Layer
54
- index={1}
55
- d="M376.164,482.289L512.648,482.289L512.648,217.34C512.648,212.906 510.855,208.898 507.945,205.988L373.809,340.121C375.266,341.578 376.164,343.59 376.164,345.805L376.164,482.289Z"
56
- />
57
- <Layer
58
- index={2}
59
- d="M500.48,201.746L235.535,201.746L235.535,338.23L372.02,338.23C374.234,338.23 376.246,339.129 377.703,340.586L511.832,206.445C508.926,203.539 504.918,201.746 500.48,201.746Z"
60
- />
61
- <Layer
62
- index={3}
63
- d="M215.449,495.488L215.449,214.461L83.668,346.262C80.66,349.289 78.965,353.359 78.965,357.625L78.965,623.973C78.965,628.398 80.758,632.406 83.668,635.313L217.805,501.176C216.348,499.715 215.449,497.707 215.449,495.488Z"
64
- />
65
- </g>
66
- </svg>
67
- )
68
- }
@@ -1,3 +0,0 @@
1
- export { default as Spinner, SpinnerProps } from './Spinner'
2
- export { default as LoadingBar, LoadingBarProps } from './LoadingBar'
3
- export { default as LoadingDots, LoadingDotsProps } from './LoadingDots'