@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,412 +0,0 @@
1
- import React from 'react'
2
- import type { Meta } from '@storybook/react'
3
-
4
- import { Layout } from '.'
5
-
6
- import type { BoxProps } from './Box'
7
- import type { SidebarProps } from './Sidebar'
8
- import type { StackProps } from './Stack'
9
- import type { SwitcherProps } from './Switcher'
10
- import type { GridProps } from './Grid'
11
-
12
- export default {
13
- title: 'Components/Layout',
14
- component: Layout,
15
- } as Meta
16
-
17
- export function Playground(): JSX.Element {
18
- return (
19
- <Layout.Stack>
20
- <Layout.Group>
21
- <Layout.Stack className="p-10 bg-danger-light w-60">
22
- <p>Item 1</p>
23
- </Layout.Stack>
24
-
25
- <Layout.Stack className="p-10 bg-success-light w-60">
26
- <p>Item 2</p>
27
- </Layout.Stack>
28
-
29
- <Layout.Stack className="p-10 bg-warning-light w-60">
30
- <p>Item 3</p>
31
- </Layout.Stack>
32
- </Layout.Group>
33
-
34
- <Layout.Group>
35
- <Layout.Stack className="p-10 bg-danger-light w-60">
36
- <p>Item 1</p>
37
- </Layout.Stack>
38
-
39
- <Layout.Stack className="p-10 bg-success-light w-60">
40
- <p>Item 2</p>
41
- </Layout.Stack>
42
-
43
- <Layout.Stack className="p-10 bg-warning-light w-60">
44
- <p>Item 3</p>
45
- </Layout.Stack>
46
- </Layout.Group>
47
-
48
- <Layout.Box
49
- background="neutral-white"
50
- padding="m"
51
- borderRadius="s"
52
- borderWidth="thin"
53
- borderColor="neutral-light"
54
- >
55
- <p>Box</p>
56
- </Layout.Box>
57
- </Layout.Stack>
58
- )
59
- }
60
-
61
- Playground.args = {
62
- space: 'm',
63
- }
64
-
65
- export function Stack(args: StackProps): JSX.Element {
66
- return (
67
- <Layout.Stack {...args}>
68
- <div className="p-10 border-2 bg-danger-light w-80">1</div>
69
- <div className="p-10 border-2 bg-success-light w-80">2</div>
70
- <div className="p-10 border-2 bg-warning-light w-80">3</div>
71
- </Layout.Stack>
72
- )
73
- }
74
-
75
- Stack.parameters = {
76
- docs: {
77
- description: {
78
- story: `
79
- #### \`<Layout.Stack />\`
80
- The Stack component will pile up its children adding a equal margin between them. Using it we ensure standard white space between elements, and avoid :first-child or :last-child redundant margins.
81
-
82
- **Props**
83
-
84
- | Prop | Type | Default | Description |
85
- |--------|---------------------------------|---------|----------------------------------------|
86
- | space | none, 2xs, xs, s, m, l, xl, 2xl, 3xl | m | The space between the sibling elements |
87
-
88
- \`\`\`jsx
89
- <Layout.Stack>
90
- <div className="p-10 border-2 bg-danger-light w-80">1</div>
91
- <div className="p-10 border-2 bg-success-light w-80">2</div>
92
- <div className="p-10 border-2 bg-warning-light w-80">3</div>
93
- </Layout.Stack>
94
- \`\`\`
95
- `,
96
- },
97
- },
98
- }
99
-
100
- Stack.argTypes = {
101
- space: {
102
- control: {
103
- type: 'select',
104
- options: ['none', '2xs', 'xs', 's', 'm', 'l', 'xl', '2xl', '3xl'],
105
- },
106
- },
107
- justify: {
108
- control: {
109
- type: 'select',
110
- options: [
111
- 'center',
112
- 'flex-start',
113
- 'flex-end',
114
- 'space-between',
115
- 'space-around',
116
- 'space-evenly',
117
- ],
118
- },
119
- },
120
- align: {
121
- control: {
122
- type: 'select',
123
- options: ['center', 'flex-start', 'flex-end', 'stretch'],
124
- },
125
- },
126
- }
127
- Stack.args = {
128
- space: 'm',
129
- justify: 'flex-start',
130
- align: 'flex-start',
131
- }
132
-
133
- export function Group(args: BoxProps): JSX.Element {
134
- return (
135
- <Layout.Group {...args}>
136
- <Layout.Stack className="p-10 bg-danger-light w-60">
137
- <p>Item 1</p>
138
- </Layout.Stack>
139
-
140
- <Layout.Stack className="p-10 bg-success-light w-60">
141
- <p>Item 2</p>
142
- </Layout.Stack>
143
-
144
- <Layout.Stack className="p-10 bg-warning-light w-60">
145
- <p>Item 3</p>
146
- </Layout.Stack>
147
-
148
- <Layout.Stack className="p-10 bg-neutral w-60">
149
- <p>Item 4</p>
150
- </Layout.Stack>
151
- </Layout.Group>
152
- )
153
- }
154
-
155
- Group.parameters = {
156
- docs: {
157
- description: {
158
- story: `
159
- #### \`<Layout.Group />\`
160
-
161
- The Group component is a Flex container, used to group elements horizontally that can wrap onto multiple lines depending on screen size.
162
-
163
- **Props**
164
-
165
- | Prop | Type | Default | Description |
166
- |----------|-------------------------------------------------------------------------|------------|----------------------------------------|
167
- | space | none, 2xs, xs, s, m, l, xl, 2xl, 3xl | m | The space between the sibling elements |
168
- | justify | center, flex-start, flex-end, space-between, space-around, space-evenly | flex-start | The css justify property |
169
- | align | center, flex-start, flex-end, stretch | flex-start | The css align property |
170
-
171
- \`\`\`jsx
172
- <Layout.Group>
173
- <Layout.Stack className="p-10 bg-danger-light w-60">
174
- <p>Item 1</p>
175
- </Layout.Stack>
176
-
177
- <Layout.Stack className="p-10 bg-success-light w-60">
178
- <p>Item 2</p>
179
- </Layout.Stack>
180
-
181
- <Layout.Stack className="p-10 bg-warning-light w-60">
182
- <p>Item 3</p>
183
- </Layout.Stack>
184
-
185
- <Layout.Stack className="p-10 bg-neutral w-60">
186
- <p>Item 4</p>
187
- </Layout.Stack>
188
- </Layout.Group>
189
- \`\`\`
190
- `,
191
- },
192
- },
193
- }
194
-
195
- Group.argTypes = {
196
- space: {
197
- control: {
198
- type: 'select',
199
- options: ['none', '2xs', 'xs', 's', 'm', 'l', 'xl', '2xl', '3xl'],
200
- },
201
- },
202
- justify: {
203
- control: {
204
- type: 'select',
205
- options: [
206
- 'center',
207
- 'flex-start',
208
- 'flex-end',
209
- 'space-between',
210
- 'space-around',
211
- 'space-evenly',
212
- ],
213
- },
214
- },
215
- align: {
216
- control: {
217
- type: 'select',
218
- options: ['center', 'flex-start', 'flex-end', 'stretch'],
219
- },
220
- },
221
- }
222
- Group.args = {
223
- space: 'm',
224
- justify: 'flex-start',
225
- align: 'flex-start',
226
- }
227
-
228
- export function Box(args: BoxProps): JSX.Element {
229
- return (
230
- <Layout.Box {...args}>
231
- <p>Box content</p>
232
- </Layout.Box>
233
- )
234
- }
235
-
236
- Box.args = {
237
- background: 'neutral-white',
238
- padding: 'm',
239
- borderRadius: 's',
240
- borderWidth: 'thin',
241
- borderColor: 'neutral-light',
242
- }
243
-
244
- Box.parameters = {
245
- docs: {
246
- description: {
247
- story: `
248
- #### \`<Layout.Box />\`
249
-
250
- The Box component can be used to delimit the content between some textual flow.
251
-
252
- **Props**
253
-
254
- | Prop | Type | Default | Description |
255
- |---------------|---------------------------------------------------------------|---------------|-------------------------------------|
256
- | padding | none, 2xs, xs, s, m, l, xl, 2xl, 3xl | m | The padding applied to the Box |
257
- | background | transparent, neutral-white, neutral-lighter, neutral-lightest | transparent | The Box background |
258
- | borderRadius | none, s, m, l | s | The border radius value for the Box |
259
- | borderColor | neutral-darker, neutral-light, neutral-white | neutral-light | The Box border-color |
260
- | borderWidth | medium, thin, none | none | The Box border width |
261
- | textAlign | left, center, right | left | The Box text align |
262
-
263
- \`\`\`jsx
264
- <Layout.Box>
265
- Box content
266
- </Layout.Box>
267
- \`\`\`
268
- `,
269
- },
270
- },
271
- }
272
-
273
- export function Sidebar(args: SidebarProps): JSX.Element {
274
- return (
275
- <Layout.Sidebar {...args}>
276
- <img src="https://via.placeholder.com/150" />
277
- <p>
278
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Excepturi aperiam optio
279
- necessitatibus ducimus voluptate, illo mollitia omnis eaque aliquam in dolore quia alias
280
- voluptatibus corporis nisi voluptatem facilis architecto corrupti!
281
- </p>
282
- </Layout.Sidebar>
283
- )
284
- }
285
-
286
- Sidebar.args = {
287
- space: 'm',
288
- reversed: false,
289
- sideWidth: 'auto',
290
- minContentWidth: '50%',
291
- }
292
-
293
- Sidebar.parameters = {
294
- docs: {
295
- description: {
296
- story: `
297
- #### \`<Layout.Sidebar />\`
298
-
299
- The Sidebar component can be used to align two components side-by-side and wrap them in two rows respecting the container's width.
300
-
301
- **Props**
302
-
303
- | Prop | Type | Default | Description |
304
- |------------------|---------------------------------|---------|--------------------------------------------------------------------------|
305
- | space | none, 2xs, xs, s, m, l, xl, 2xl, 3xl | m | The space between the sibling elements |
306
- | reversed | boolean | false | Reverse the side of the sidebar |
307
- | sideWidth | string | auto | The width of the sidebar |
308
- | minContentWidth | string (percentage) | 50% | The minimum width of the content element in the horizontal configuration |
309
-
310
- \`\`\`jsx
311
- <Layout.Sidebar>
312
- <img src="https://via.placeholder.com/150" />
313
- <p>
314
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Excepturi aperiam optio
315
- necessitatibus ducimus voluptate, illo mollitia omnis eaque aliquam in dolore quia alias
316
- voluptatibus corporis nisi voluptatem facilis architecto corrupti!
317
- </p>
318
- </Layout.Sidebar>
319
- \`\`\`
320
- `,
321
- },
322
- },
323
- }
324
-
325
- export function Switcher(args: SwitcherProps): JSX.Element {
326
- return (
327
- <Layout.Switcher {...args}>
328
- <div className="p-10 bg-danger-light w-60"></div>
329
- <div className="p-10 bg-danger-light w-60"></div>
330
- <div className="p-10 bg-danger-light w-60"></div>
331
- <div className="p-10 bg-danger-light w-60"></div>
332
- </Layout.Switcher>
333
- )
334
- }
335
-
336
- Switcher.args = {
337
- space: 's',
338
- threshold: '10rem',
339
- limit: 4,
340
- }
341
-
342
- Switcher.parameters = {
343
- docs: {
344
- description: {
345
- story: `
346
- #### \`<Layout.Switcher />\`
347
-
348
- The Switcher component can be used as a flexbox container that can switch between horizontal and vertical layout. Its children will layout horizontally above the threshold passed and will layout vertically when there is no more space available.
349
-
350
- **Props**
351
-
352
- | Prop | Type | Default | Description |
353
- |------------|---------------------------------|---------|----------------------------------------------------------|
354
- | space | none, 2xs, xs, s, m, l, xl, 2xl, 3xl | m | The space between the sibling elements |
355
- | threshold | string (css rem value) | 10rem | A css rem value representing the container breakpoint |
356
- | limit | number | 4 | The max number of items allowed in the horizontal layout |
357
-
358
- \`\`\`jsx
359
- <Layout.Switcher>
360
- <div className="p-10 bg-danger-light w-60"></div>
361
- <div className="p-10 bg-danger-light w-60"></div>
362
- <div className="p-10 bg-danger-light w-60"></div>
363
- </Layout.Switcher>
364
- \`\`\`
365
- `,
366
- },
367
- },
368
- }
369
-
370
- export function Grid(args: GridProps): JSX.Element {
371
- return (
372
- <Layout.Grid {...args} style={{ width: '50vw' }}>
373
- <div className="p-10 bg-danger-light"></div>
374
- <div className="p-10 bg-success-light"></div>
375
- <div className="p-10 bg-warning-light"></div>
376
- <div className="p-10 bg-neutral-light"></div>
377
- </Layout.Grid>
378
- )
379
- }
380
-
381
- Grid.args = {
382
- space: 's',
383
- minColumnWidth: '5rem',
384
- }
385
-
386
- Grid.parameters = {
387
- docs: {
388
- description: {
389
- story: `
390
- #### \`<Layout.Grid />\`
391
-
392
- The Grid component can be used as a grid container able to lay out items that are automtically reorganized according to the space available.
393
-
394
- **Props**
395
-
396
- | Prop | Type | Default | Description |
397
- |------------|-------------------------------------|---------|----------------------------------------------------------|
398
- | \`space\` | none, 2xs, xs, s, m, l, xl, 2xl, 3xl | \`m\` | The space between the sibling elements |
399
- | \`minColumnWidth\` | string (css px/rem value) | \`50%\` | A css value representing the minimum grid column width |
400
-
401
- \`\`\`jsx
402
- <Layout.Grid>
403
- <div className="p-10 bg-danger-light"></div>
404
- <div className="p-10 bg-success-light"></div>
405
- <div className="p-10 bg-warning-light"></div>
406
- <div className="p-10 bg-neutral-light"></div>
407
- </Layout.Grid>
408
- \`\`\`
409
- `,
410
- },
411
- },
412
- }
@@ -1,19 +0,0 @@
1
- import { Group } from './Group'
2
- import { Stack } from './Stack'
3
- import { Box } from './Box'
4
- import { Sidebar } from './Sidebar'
5
- import { Switcher } from './Switcher'
6
- import { Grid } from './Grid'
7
-
8
- const Layout = (): null => {
9
- return null
10
- }
11
-
12
- Layout.Group = Group
13
- Layout.Stack = Stack
14
- Layout.Box = Box
15
- Layout.Sidebar = Sidebar
16
- Layout.Switcher = Switcher
17
- Layout.Grid = Grid
18
-
19
- export default Layout
@@ -1,9 +0,0 @@
1
- export type Spacing = 'none' | '2xs' | 'xs' | 's' | 'm' | 'l' | 'xl' | '2xl' | '3xl'
2
- export type JustifyValue =
3
- | 'center'
4
- | 'flex-start'
5
- | 'flex-end'
6
- | 'space-between'
7
- | 'space-around'
8
- | 'space-evenly'
9
- export type AlignValue = 'center' | 'flex-start' | 'flex-end' | 'stretch'
@@ -1,20 +0,0 @@
1
- import { css } from 'styled-components'
2
-
3
- import type { FlattenInterpolation } from 'styled-components'
4
- import type { ThemedProps } from 'theming'
5
-
6
- import conditional, { whenProps } from 'tools/conditional'
7
-
8
- export const getSpace = (prop: string): FlattenInterpolation<ThemedProps> => css`
9
- ${conditional({
10
- 'space-none': whenProps({ [prop]: 'none' }),
11
- 'space-2xs': whenProps({ [prop]: '2xs' }),
12
- 'space-xs': whenProps({ [prop]: 'xs' }),
13
- 'space-s': whenProps({ [prop]: 's' }),
14
- 'space-m': whenProps({ [prop]: 'm' }),
15
- 'space-l': whenProps({ [prop]: 'l' }),
16
- 'space-xl': whenProps({ [prop]: 'xl' }),
17
- 'space-2xl': whenProps({ [prop]: '2xl' }),
18
- 'space-3xl': whenProps({ [prop]: '3xl' }),
19
- })}
20
- `
@@ -1,75 +0,0 @@
1
- import React from 'react'
2
- import styled from 'styled-components'
3
-
4
- import conditional, { whenProps } from 'tools/conditional'
5
- import prop from 'tools/prop'
6
-
7
- import type { Spacing } from './Layout.types'
8
- import { getSpace } from './Layout.utils'
9
-
10
- import type { HTMLAttributes } from 'react'
11
-
12
- export interface SidebarProps extends HTMLAttributes<HTMLElement> {
13
- space?: Spacing
14
- reversed?: boolean
15
- sideWidth?: string
16
- minContentWidth?: string
17
- }
18
-
19
- const SidebarContainer = styled.div<{
20
- $space: SidebarProps['space']
21
- $reversed: SidebarProps['reversed']
22
- $sideWidth: SidebarProps['sideWidth']
23
- $minContentWidth: SidebarProps['minContentWidth']
24
- }>`
25
- display: flex;
26
- flex-wrap: wrap;
27
-
28
- gap: ${getSpace('$space')};
29
-
30
- &
31
- > ${conditional({
32
- ':first-child': whenProps({ $reversed: false }),
33
- ':last-child': whenProps({ $reversed: true }),
34
- })} {
35
- flex-basis: ${prop('$sideWidth')};
36
- flex-grow: 1;
37
- }
38
-
39
- &
40
- > ${conditional({
41
- ':first-child': whenProps({ $reversed: true }),
42
- ':last-child': whenProps({ $reversed: false }),
43
- })} {
44
- flex-basis: 0;
45
- flex-grow: 999;
46
- min-width: ${prop('$minContentWidth')};
47
- }
48
- `
49
-
50
- /**
51
- * Sidebar layout component.
52
- * @param {SidebarProps} props
53
- */
54
- export function Sidebar(props: SidebarProps): JSX.Element {
55
- const {
56
- minContentWidth = '50%',
57
- reversed = false,
58
- sideWidth = 'auto',
59
- space = 'm',
60
- children,
61
- ...rest
62
- } = props
63
-
64
- return (
65
- <SidebarContainer
66
- $minContentWidth={minContentWidth}
67
- $reversed={reversed}
68
- $sideWidth={sideWidth}
69
- $space={space}
70
- {...rest}
71
- >
72
- {children}
73
- </SidebarContainer>
74
- )
75
- }
@@ -1,63 +0,0 @@
1
- import React from 'react'
2
- import type { HTMLAttributes } from 'react'
3
- import styled from 'styled-components'
4
-
5
- import conditional, { whenProps } from 'tools/conditional'
6
-
7
- import { getSpace } from './Layout.utils'
8
- import type { Spacing, JustifyValue, AlignValue } from './Layout.types'
9
-
10
- export interface StackProps extends HTMLAttributes<HTMLElement> {
11
- space?: Spacing
12
- justify?: JustifyValue
13
- align?: AlignValue
14
- as?: string | React.ComponentType<any>
15
- }
16
-
17
- export const StackContainer = styled.div<{
18
- $space: StackProps['space']
19
- $justify: StackProps['justify']
20
- $align: StackProps['align']
21
- }>`
22
- display: flex;
23
- flex-direction: column;
24
-
25
- align-items: ${conditional({
26
- center: whenProps({ $align: 'center' }),
27
- 'flex-start': whenProps({ $align: 'flex-start' }),
28
- 'flex-end': whenProps({ $align: 'flex-end' }),
29
- stretch: whenProps({ $align: 'stretch' }),
30
- })};
31
-
32
- justify-content: ${conditional({
33
- center: whenProps({ $justify: 'center' }),
34
- 'flex-start': whenProps({ $justify: 'flex-start' }),
35
- 'flex-end': whenProps({ $justify: 'flex-end' }),
36
- 'space-between': whenProps({ $justify: 'space-between' }),
37
- 'space-around': whenProps({ $justify: 'space-around' }),
38
- 'space-evenly': whenProps({ $justify: 'space-evenly' }),
39
- })};
40
-
41
- & > * {
42
- margin-top: 0;
43
- margin-bottom: 0;
44
- }
45
-
46
- & > * + * {
47
- margin-top: ${getSpace('$space')};
48
- }
49
- `
50
-
51
- /**
52
- * Stack layout component.
53
- * @param {StackProps} props
54
- */
55
- export function Stack(props: StackProps): JSX.Element {
56
- const { space = 'm', justify = 'flex-start', align = 'stretch', children, ...rest } = props
57
-
58
- return (
59
- <StackContainer $space={space} $justify={justify} $align={align} {...rest}>
60
- {children}
61
- </StackContainer>
62
- )
63
- }
@@ -1,48 +0,0 @@
1
- import React from 'react'
2
- import styled from 'styled-components'
3
- import prop from 'tools/prop'
4
-
5
- import type { Spacing } from './Layout.types'
6
- import { getSpace } from './Layout.utils'
7
-
8
- import type { HTMLAttributes } from 'react'
9
-
10
- export interface SwitcherProps extends HTMLAttributes<HTMLElement> {
11
- space?: Spacing
12
- threshold?: string
13
- limit?: number
14
- }
15
-
16
- const SwitcherContainer = styled.div<{
17
- $space: SwitcherProps['space']
18
- $threshold: SwitcherProps['threshold']
19
- $limit: SwitcherProps['limit']
20
- }>`
21
- display: flex;
22
- flex-wrap: wrap;
23
- gap: ${getSpace('$space')};
24
-
25
- > * {
26
- flex-basis: calc((${prop('$threshold')} - 100%) * 999);
27
- flex-grow: 1;
28
- }
29
-
30
- & > :nth-last-child(n + ${prop('$limit')}),
31
- & > :nth-last-child(n + ${prop('$limit')}) ~ * {
32
- flex-basis: 100%;
33
- }
34
- `
35
-
36
- /**
37
- * Switcher layout component.
38
- * @param {SwitcherProps} props
39
- */
40
- export function Switcher(props: SwitcherProps): JSX.Element {
41
- const { limit = 4, space = 's', threshold = '10rem', children, ...rest } = props
42
-
43
- return (
44
- <SwitcherContainer $space={space} $threshold={threshold} $limit={limit + 1} {...rest}>
45
- {children}
46
- </SwitcherContainer>
47
- )
48
- }
@@ -1,8 +0,0 @@
1
- export { default as Layout } from './Layout'
2
-
3
- export { Group } from './Group'
4
- export { Stack } from './Stack'
5
- export { Box } from './Box'
6
- export { Sidebar } from './Sidebar'
7
- export { Switcher } from './Switcher'
8
- export { Grid } from './Grid'
@@ -1,22 +0,0 @@
1
- import React from 'react'
2
- import Link, { LinkProps } from './Link'
3
- import type { Meta } from '@storybook/react'
4
-
5
- export default {
6
- title: 'Components/Link',
7
- component: Link,
8
- argTypes: {},
9
- } as Meta
10
-
11
- export function Playground(args: LinkProps): JSX.Element {
12
- return (
13
- <div className="flex flex-row space-x-2">
14
- <Link {...args} href="https://www.google.com">
15
- Google
16
- </Link>
17
- <Link {...args} href="https://www.nytimes.com">
18
- NY Times
19
- </Link>
20
- </div>
21
- )
22
- }