@loadsmart/loadsmart-ui 7.5.0 → 7.7.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 (492) hide show
  1. package/README.md +15 -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/index.js +9104 -253
  5. package/dist/index.js.map +1 -1
  6. package/dist/miranda-compatibility.theme-C_FEacSw.js +2528 -0
  7. package/dist/miranda-compatibility.theme-C_FEacSw.js.map +1 -0
  8. package/dist/prop-B8LY6G2g.js +81 -0
  9. package/dist/{prop-pWSEOvKc.js.map → prop-B8LY6G2g.js.map} +1 -1
  10. package/dist/testing/index.js +282 -1
  11. package/dist/testing/index.js.map +1 -1
  12. package/dist/theming/index.js +22 -1
  13. package/dist/theming/index.js.map +1 -1
  14. package/dist/toArray-Dxb1kUxx.js +14 -0
  15. package/dist/toArray-Dxb1kUxx.js.map +1 -0
  16. package/dist/tools/index.js +6 -1
  17. package/dist/tools/index.js.map +1 -1
  18. package/package.json +28 -57
  19. package/dist/DragDropFile.context-D-EBrXnw.js +0 -2
  20. package/dist/DragDropFile.context-jVTIKfj5.mjs +0 -29
  21. package/dist/DragDropFile.context-jVTIKfj5.mjs.map +0 -1
  22. package/dist/index.mjs +0 -9310
  23. package/dist/index.mjs.map +0 -1
  24. package/dist/miranda-compatibility.theme-C3Dt-45K.js +0 -2
  25. package/dist/miranda-compatibility.theme-C3Dt-45K.js.map +0 -1
  26. package/dist/miranda-compatibility.theme-ClCWbTIT.mjs +0 -2525
  27. package/dist/miranda-compatibility.theme-ClCWbTIT.mjs.map +0 -1
  28. package/dist/prop-C4yDbi0C.mjs +0 -53
  29. package/dist/prop-C4yDbi0C.mjs.map +0 -1
  30. package/dist/prop-pWSEOvKc.js +0 -2
  31. package/dist/testing/index.mjs +0 -227
  32. package/dist/testing/index.mjs.map +0 -1
  33. package/dist/theming/index.mjs +0 -19
  34. package/dist/theming/index.mjs.map +0 -1
  35. package/dist/toArray-BJfx0Xhj.mjs +0 -38
  36. package/dist/toArray-BJfx0Xhj.mjs.map +0 -1
  37. package/dist/toArray-Dw6F-w3t.js +0 -2
  38. package/dist/toArray-Dw6F-w3t.js.map +0 -1
  39. package/dist/tools/index.mjs +0 -7
  40. package/dist/tools/index.mjs.map +0 -1
  41. package/src/@types/@loadsmart/utilsFunction.d.ts +0 -5
  42. package/src/@types/@loadsmart/utilsObject.d.ts +0 -5
  43. package/src/@types/svg.d.ts +0 -4
  44. package/src/addons/Theme/register.js +0 -590
  45. package/src/common/BackButton/BackButton.tsx +0 -18
  46. package/src/common/BackButton/index.ts +0 -2
  47. package/src/common/CloseButton/CloseButton.tsx +0 -55
  48. package/src/common/CloseButton/index.ts +0 -2
  49. package/src/common/SelectionWrapper.tsx +0 -130
  50. package/src/components/Accordion/Accordion.context.tsx +0 -36
  51. package/src/components/Accordion/Accordion.stories.tsx +0 -186
  52. package/src/components/Accordion/Accordion.test.tsx +0 -209
  53. package/src/components/Accordion/Accordion.tsx +0 -233
  54. package/src/components/Accordion/index.ts +0 -2
  55. package/src/components/Banner/Banner.stories.tsx +0 -213
  56. package/src/components/Banner/Banner.test.tsx +0 -118
  57. package/src/components/Banner/Banner.tsx +0 -418
  58. package/src/components/Banner/index.tsx +0 -2
  59. package/src/components/Breadcrumbs/Breadbrumbs.test.tsx +0 -125
  60. package/src/components/Breadcrumbs/Breadcrumb.tsx +0 -92
  61. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +0 -21
  62. package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -54
  63. package/src/components/Breadcrumbs/index.ts +0 -4
  64. package/src/components/Button/Button.stories.tsx +0 -174
  65. package/src/components/Button/Button.test.tsx +0 -57
  66. package/src/components/Button/Button.tsx +0 -576
  67. package/src/components/Button/index.tsx +0 -2
  68. package/src/components/Calendar/Calendar.helpers.ts +0 -15
  69. package/src/components/Calendar/Calendar.stories.tsx +0 -168
  70. package/src/components/Calendar/Calendar.test.tsx +0 -316
  71. package/src/components/Calendar/Calendar.tsx +0 -130
  72. package/src/components/Calendar/Calendar.types.ts +0 -68
  73. package/src/components/Calendar/Date.helper.test.ts +0 -847
  74. package/src/components/Calendar/Date.helper.ts +0 -461
  75. package/src/components/Calendar/DateFormat.helper.test.ts +0 -171
  76. package/src/components/Calendar/DateFormat.helper.ts +0 -195
  77. package/src/components/Calendar/Month.helper.test.ts +0 -187
  78. package/src/components/Calendar/Month.helper.ts +0 -172
  79. package/src/components/Calendar/PickerModeToggle.tsx +0 -61
  80. package/src/components/Calendar/Pickers/DayPicker.test.tsx +0 -85
  81. package/src/components/Calendar/Pickers/DayPicker.tsx +0 -127
  82. package/src/components/Calendar/Pickers/MonthPicker.test.tsx +0 -77
  83. package/src/components/Calendar/Pickers/MonthPicker.tsx +0 -51
  84. package/src/components/Calendar/Pickers/PickerButton.tsx +0 -119
  85. package/src/components/Calendar/Pickers/YearPicker.test.tsx +0 -75
  86. package/src/components/Calendar/Pickers/YearPicker.tsx +0 -52
  87. package/src/components/Calendar/index.ts +0 -10
  88. package/src/components/Calendar/useCalendar.ts +0 -190
  89. package/src/components/Calendar/usePickerMode.ts +0 -48
  90. package/src/components/Card/Card.stories.tsx +0 -117
  91. package/src/components/Card/Card.test.tsx +0 -139
  92. package/src/components/Card/Card.tsx +0 -106
  93. package/src/components/Card/CardTitle.tsx +0 -43
  94. package/src/components/Card/index.ts +0 -2
  95. package/src/components/Checkbox/Checkbox.stories.tsx +0 -79
  96. package/src/components/Checkbox/Checkbox.test.tsx +0 -66
  97. package/src/components/Checkbox/Checkbox.tsx +0 -170
  98. package/src/components/Checkbox/index.ts +0 -2
  99. package/src/components/DatePicker/DatePicker.stories.tsx +0 -113
  100. package/src/components/DatePicker/DatePicker.test.tsx +0 -174
  101. package/src/components/DatePicker/DatePicker.tsx +0 -140
  102. package/src/components/DatePicker/DatePicker.types.ts +0 -30
  103. package/src/components/DatePicker/DateRangePicker.stories.tsx +0 -128
  104. package/src/components/DatePicker/DateRangePicker.test.tsx +0 -267
  105. package/src/components/DatePicker/DateRangePicker.tsx +0 -110
  106. package/src/components/DatePicker/index.ts +0 -3
  107. package/src/components/DatePicker/useDatePicker.ts +0 -201
  108. package/src/components/DatePicker/useDateRangePicker.ts +0 -224
  109. package/src/components/Dialog/Dialog.stories.tsx +0 -227
  110. package/src/components/Dialog/Dialog.test.tsx +0 -74
  111. package/src/components/Dialog/Dialog.tsx +0 -139
  112. package/src/components/Dialog/index.tsx +0 -4
  113. package/src/components/Dialog/useDialog.tsx +0 -59
  114. package/src/components/DragDropFile/DragDropFile.context.tsx +0 -39
  115. package/src/components/DragDropFile/DragDropFile.stories.tsx +0 -183
  116. package/src/components/DragDropFile/DragDropFile.tsx +0 -11
  117. package/src/components/DragDropFile/components/DropZone.test.tsx +0 -108
  118. package/src/components/DragDropFile/components/DropZone.tsx +0 -145
  119. package/src/components/DragDropFile/components/FileItem.tsx +0 -117
  120. package/src/components/DragDropFile/components/FileList.test.tsx +0 -119
  121. package/src/components/DragDropFile/components/FileList.tsx +0 -47
  122. package/src/components/DragDropFile/components/Wrapper.tsx +0 -22
  123. package/src/components/DragDropFile/index.ts +0 -9
  124. package/src/components/DragDropFile/mocks.ts +0 -23
  125. package/src/components/DragDropFile/styles.tsx +0 -81
  126. package/src/components/DragDropFile/types.ts +0 -85
  127. package/src/components/Drawer/Drawer.stories.tsx +0 -83
  128. package/src/components/Drawer/Drawer.test.tsx +0 -90
  129. package/src/components/Drawer/Drawer.tsx +0 -225
  130. package/src/components/Drawer/index.ts +0 -4
  131. package/src/components/Dropdown/Dropdown.context.ts +0 -13
  132. package/src/components/Dropdown/Dropdown.fixtures.ts +0 -15
  133. package/src/components/Dropdown/Dropdown.stories.tsx +0 -259
  134. package/src/components/Dropdown/Dropdown.test.tsx +0 -173
  135. package/src/components/Dropdown/Dropdown.tsx +0 -141
  136. package/src/components/Dropdown/Dropdown.types.ts +0 -59
  137. package/src/components/Dropdown/DropdownMenu.tsx +0 -263
  138. package/src/components/Dropdown/DropdownTrigger.tsx +0 -368
  139. package/src/components/Dropdown/index.ts +0 -15
  140. package/src/components/Dropdown/useDropdown.test.ts +0 -96
  141. package/src/components/Dropdown/useDropdown.ts +0 -65
  142. package/src/components/EmptyState/EmptyState.mocks.tsx +0 -60
  143. package/src/components/EmptyState/EmptyState.stories.tsx +0 -239
  144. package/src/components/EmptyState/EmptyState.test.tsx +0 -101
  145. package/src/components/EmptyState/EmptyState.tsx +0 -22
  146. package/src/components/EmptyState/EmptyState.types.ts +0 -59
  147. package/src/components/EmptyState/EmptyStateWithIcon.tsx +0 -42
  148. package/src/components/EmptyState/EmptyStateWithIllustration.tsx +0 -72
  149. package/src/components/EmptyState/Illustration.tsx +0 -29
  150. package/src/components/EmptyState/index.ts +0 -4
  151. package/src/components/ErrorMessage/ErrorMessage.stories.tsx +0 -26
  152. package/src/components/ErrorMessage/ErrorMessage.test.tsx +0 -24
  153. package/src/components/ErrorMessage/ErrorMessage.tsx +0 -19
  154. package/src/components/ErrorMessage/index.ts +0 -2
  155. package/src/components/HighlightMatch/HighlightMatch.stories.tsx +0 -24
  156. package/src/components/HighlightMatch/HighlightMatch.test.tsx +0 -37
  157. package/src/components/HighlightMatch/HighlightMatch.tsx +0 -29
  158. package/src/components/HighlightMatch/index.ts +0 -2
  159. package/src/components/Icon/Icon.tsx +0 -55
  160. package/src/components/Icon/assets/back.svg +0 -4
  161. package/src/components/Icon/assets/burger-menu.svg +0 -3
  162. package/src/components/Icon/assets/calendar.svg +0 -5
  163. package/src/components/Icon/assets/caret-down.svg +0 -4
  164. package/src/components/Icon/assets/caret-left.svg +0 -4
  165. package/src/components/Icon/assets/caret-right-last.svg +0 -4
  166. package/src/components/Icon/assets/caret-right.svg +0 -4
  167. package/src/components/Icon/assets/check.svg +0 -4
  168. package/src/components/Icon/assets/chevron-down.svg +0 -3
  169. package/src/components/Icon/assets/circle.svg +0 -3
  170. package/src/components/Icon/assets/close.svg +0 -4
  171. package/src/components/Icon/assets/dots-horizontal.svg +0 -1
  172. package/src/components/Icon/assets/information.svg +0 -4
  173. package/src/components/Icon/assets/minus.svg +0 -4
  174. package/src/components/Icon/assets/plus.svg +0 -4
  175. package/src/components/Icon/assets/refresh.svg +0 -3
  176. package/src/components/Icon/assets/sort-asc.svg +0 -7
  177. package/src/components/Icon/assets/sort-desc.svg +0 -7
  178. package/src/components/Icon/assets/sort.svg +0 -7
  179. package/src/components/Icon/assets/upload.svg +0 -3
  180. package/src/components/Icon/assets/warning.svg +0 -4
  181. package/src/components/Icon/index.ts +0 -2
  182. package/src/components/IconFactory/IconFactory.fixtures.tsx +0 -31
  183. package/src/components/IconFactory/IconFactory.stories.tsx +0 -120
  184. package/src/components/IconFactory/IconFactory.test.tsx +0 -36
  185. package/src/components/IconFactory/IconFactory.tsx +0 -75
  186. package/src/components/IconFactory/index.ts +0 -2
  187. package/src/components/Label/Label.stories.tsx +0 -47
  188. package/src/components/Label/Label.test.tsx +0 -80
  189. package/src/components/Label/Label.tsx +0 -120
  190. package/src/components/Label/index.ts +0 -2
  191. package/src/components/Layout/Box.tsx +0 -98
  192. package/src/components/Layout/Grid.tsx +0 -42
  193. package/src/components/Layout/Group.tsx +0 -55
  194. package/src/components/Layout/Layout.stories.tsx +0 -412
  195. package/src/components/Layout/Layout.tsx +0 -19
  196. package/src/components/Layout/Layout.types.ts +0 -9
  197. package/src/components/Layout/Layout.utils.ts +0 -20
  198. package/src/components/Layout/Sidebar.tsx +0 -75
  199. package/src/components/Layout/Stack.tsx +0 -63
  200. package/src/components/Layout/Switcher.tsx +0 -48
  201. package/src/components/Layout/index.tsx +0 -8
  202. package/src/components/Link/Link.stories.tsx +0 -22
  203. package/src/components/Link/Link.test.tsx +0 -79
  204. package/src/components/Link/Link.tsx +0 -114
  205. package/src/components/Link/index.ts +0 -3
  206. package/src/components/Link/useSafeLink.ts +0 -49
  207. package/src/components/Loaders/LoadingBar.stories.tsx +0 -36
  208. package/src/components/Loaders/LoadingBar.test.tsx +0 -35
  209. package/src/components/Loaders/LoadingBar.tsx +0 -65
  210. package/src/components/Loaders/LoadingDots.stories.tsx +0 -69
  211. package/src/components/Loaders/LoadingDots.test.tsx +0 -22
  212. package/src/components/Loaders/LoadingDots.tsx +0 -68
  213. package/src/components/Loaders/Spinner.stories.tsx +0 -24
  214. package/src/components/Loaders/Spinner.test.tsx +0 -35
  215. package/src/components/Loaders/Spinner.tsx +0 -68
  216. package/src/components/Loaders/index.tsx +0 -3
  217. package/src/components/Modal/Modal.stories.tsx +0 -121
  218. package/src/components/Modal/Modal.test.tsx +0 -46
  219. package/src/components/Modal/Modal.tsx +0 -163
  220. package/src/components/Modal/index.tsx +0 -2
  221. package/src/components/Pagination/Pagination.constants.ts +0 -7
  222. package/src/components/Pagination/Pagination.helper.ts +0 -88
  223. package/src/components/Pagination/Pagination.stories.tsx +0 -29
  224. package/src/components/Pagination/Pagination.test.tsx +0 -102
  225. package/src/components/Pagination/Pagination.tsx +0 -34
  226. package/src/components/Pagination/Pagination.types.ts +0 -55
  227. package/src/components/Pagination/PaginationItem.tsx +0 -74
  228. package/src/components/Pagination/index.ts +0 -2
  229. package/src/components/Pagination/usePagination.test.ts +0 -188
  230. package/src/components/Pagination/usePagination.ts +0 -87
  231. package/src/components/Popover/Popover.stories.tsx +0 -50
  232. package/src/components/Popover/Popover.test.tsx +0 -22
  233. package/src/components/Popover/Popover.tsx +0 -110
  234. package/src/components/Popover/Popover.types.ts +0 -39
  235. package/src/components/Popover/index.ts +0 -11
  236. package/src/components/ProgressBar/ProgressBar.stories.tsx +0 -47
  237. package/src/components/ProgressBar/ProgressBar.test.tsx +0 -40
  238. package/src/components/ProgressBar/ProgressBar.tsx +0 -89
  239. package/src/components/ProgressBar/index.tsx +0 -2
  240. package/src/components/Radio/Radio.stories.tsx +0 -75
  241. package/src/components/Radio/Radio.test.tsx +0 -66
  242. package/src/components/Radio/Radio.tsx +0 -153
  243. package/src/components/Radio/index.ts +0 -2
  244. package/src/components/Section/Section.test.tsx +0 -35
  245. package/src/components/Section/Section.tsx +0 -66
  246. package/src/components/Section/Sections.stories.tsx +0 -56
  247. package/src/components/Section/index.ts +0 -2
  248. package/src/components/Select/Select.constants.ts +0 -12
  249. package/src/components/Select/Select.context.ts +0 -11
  250. package/src/components/Select/Select.fixtures.ts +0 -167
  251. package/src/components/Select/Select.stories.tsx +0 -780
  252. package/src/components/Select/Select.test.tsx +0 -1109
  253. package/src/components/Select/Select.tsx +0 -271
  254. package/src/components/Select/Select.types.ts +0 -148
  255. package/src/components/Select/SelectCreatableOption.tsx +0 -20
  256. package/src/components/Select/SelectEmpty.test.tsx +0 -15
  257. package/src/components/Select/SelectEmpty.tsx +0 -29
  258. package/src/components/Select/SelectOption.test.tsx +0 -78
  259. package/src/components/Select/SelectOption.tsx +0 -79
  260. package/src/components/Select/SelectTrigger.tsx +0 -83
  261. package/src/components/Select/components.tsx +0 -14
  262. package/src/components/Select/index.ts +0 -12
  263. package/src/components/Select/useSelect.helpers.test.ts +0 -184
  264. package/src/components/Select/useSelect.helpers.ts +0 -63
  265. package/src/components/Select/useSelect.test.ts +0 -207
  266. package/src/components/Select/useSelect.ts +0 -540
  267. package/src/components/Select/useSelectExternal.ts +0 -26
  268. package/src/components/SideNavigation/Logo/Logo.test.tsx +0 -19
  269. package/src/components/SideNavigation/Logo/Logo.tsx +0 -26
  270. package/src/components/SideNavigation/Logo/index.ts +0 -1
  271. package/src/components/SideNavigation/Menu/Menu.test.tsx +0 -65
  272. package/src/components/SideNavigation/Menu/Menu.tsx +0 -53
  273. package/src/components/SideNavigation/Menu/MenuBaseItem.tsx +0 -64
  274. package/src/components/SideNavigation/Menu/MenuExpandable.tsx +0 -107
  275. package/src/components/SideNavigation/Menu/MenuLink.tsx +0 -37
  276. package/src/components/SideNavigation/Menu/index.ts +0 -1
  277. package/src/components/SideNavigation/Separator/Separator.test.tsx +0 -14
  278. package/src/components/SideNavigation/Separator/Separator.tsx +0 -20
  279. package/src/components/SideNavigation/Separator/index.ts +0 -1
  280. package/src/components/SideNavigation/SideNavigation.stories.tsx +0 -69
  281. package/src/components/SideNavigation/SideNavigation.test.tsx +0 -21
  282. package/src/components/SideNavigation/SideNavigation.tsx +0 -47
  283. package/src/components/SideNavigation/index.ts +0 -5
  284. package/src/components/SideNavigation/useSideNavigation.ts +0 -36
  285. package/src/components/Steps/ProgressSteps/ProgressStep.tsx +0 -163
  286. package/src/components/Steps/ProgressSteps/ProgressSteps.tsx +0 -37
  287. package/src/components/Steps/ProgressSteps/index.ts +0 -1
  288. package/src/components/Steps/Steps.fixtures.ts +0 -11
  289. package/src/components/Steps/Steps.helpers.ts +0 -11
  290. package/src/components/Steps/Steps.stories.tsx +0 -65
  291. package/src/components/Steps/Steps.test.tsx +0 -78
  292. package/src/components/Steps/Steps.tsx +0 -53
  293. package/src/components/Steps/Steps.types.ts +0 -5
  294. package/src/components/Steps/StepsContext.ts +0 -5
  295. package/src/components/Steps/StepsStep.tsx +0 -58
  296. package/src/components/Steps/index.ts +0 -6
  297. package/src/components/Steps/useStep.test.tsx +0 -217
  298. package/src/components/Steps/useSteps.ts +0 -131
  299. package/src/components/Switch/Switch.stories.tsx +0 -65
  300. package/src/components/Switch/Switch.test.tsx +0 -60
  301. package/src/components/Switch/Switch.tsx +0 -209
  302. package/src/components/Switch/index.ts +0 -2
  303. package/src/components/Table/Selection.tsx +0 -202
  304. package/src/components/Table/Table.fixtures.ts +0 -101
  305. package/src/components/Table/Table.stories.tsx +0 -568
  306. package/src/components/Table/Table.test.tsx +0 -310
  307. package/src/components/Table/Table.tsx +0 -523
  308. package/src/components/Table/Table.types.ts +0 -93
  309. package/src/components/Table/TableSortHandle.tsx +0 -31
  310. package/src/components/Table/index.tsx +0 -2
  311. package/src/components/Table/useSortBy.test.ts +0 -96
  312. package/src/components/Table/useSortBy.ts +0 -92
  313. package/src/components/Table/useSortBy.types.ts +0 -21
  314. package/src/components/TablePagination/RowsPerPage.tsx +0 -81
  315. package/src/components/TablePagination/TablePagination.stories.tsx +0 -42
  316. package/src/components/TablePagination/TablePagination.styles.ts +0 -13
  317. package/src/components/TablePagination/TablePagination.test.tsx +0 -111
  318. package/src/components/TablePagination/TablePagination.tsx +0 -49
  319. package/src/components/TablePagination/TablePagination.types.ts +0 -69
  320. package/src/components/TablePagination/TablePaginationActions.tsx +0 -144
  321. package/src/components/TablePagination/index.ts +0 -2
  322. package/src/components/Tabs/Tabs.stories.tsx +0 -78
  323. package/src/components/Tabs/Tabs.test.tsx +0 -103
  324. package/src/components/Tabs/Tabs.tsx +0 -287
  325. package/src/components/Tabs/Tabs.types.ts +0 -7
  326. package/src/components/Tabs/TabsContext.ts +0 -10
  327. package/src/components/Tabs/index.ts +0 -2
  328. package/src/components/Tag/Tag.stories.tsx +0 -112
  329. package/src/components/Tag/Tag.test.tsx +0 -19
  330. package/src/components/Tag/Tag.tsx +0 -393
  331. package/src/components/Tag/index.ts +0 -2
  332. package/src/components/Text/Text.stories.tsx +0 -59
  333. package/src/components/Text/Text.test.tsx +0 -48
  334. package/src/components/Text/Text.tsx +0 -14
  335. package/src/components/Text/index.ts +0 -2
  336. package/src/components/TextField/TextField.stories.tsx +0 -90
  337. package/src/components/TextField/TextField.test.tsx +0 -36
  338. package/src/components/TextField/TextField.tsx +0 -244
  339. package/src/components/TextField/index.ts +0 -6
  340. package/src/components/TextField/useTextField.tsx +0 -26
  341. package/src/components/Textarea/Textarea.stories.tsx +0 -101
  342. package/src/components/Textarea/Textarea.test.tsx +0 -14
  343. package/src/components/Textarea/Textarea.tsx +0 -230
  344. package/src/components/Textarea/index.ts +0 -2
  345. package/src/components/Toast/Toast.stories.tsx +0 -50
  346. package/src/components/Toast/Toast.test.tsx +0 -24
  347. package/src/components/Toast/Toast.tsx +0 -141
  348. package/src/components/Toast/icons/close.svg +0 -3
  349. package/src/components/Toast/icons/danger.svg +0 -4
  350. package/src/components/Toast/icons/neutral.svg +0 -4
  351. package/src/components/Toast/icons/success.svg +0 -3
  352. package/src/components/Toast/icons/warning.svg +0 -4
  353. package/src/components/Toast/index.tsx +0 -2
  354. package/src/components/ToggleGroup/Toggle.test.tsx +0 -76
  355. package/src/components/ToggleGroup/Toggle.tsx +0 -158
  356. package/src/components/ToggleGroup/ToggleGroup.constants.ts +0 -16
  357. package/src/components/ToggleGroup/ToggleGroup.stories.tsx +0 -145
  358. package/src/components/ToggleGroup/ToggleGroup.test.tsx +0 -237
  359. package/src/components/ToggleGroup/ToggleGroup.tsx +0 -165
  360. package/src/components/ToggleGroup/ToggleGroup.types.ts +0 -35
  361. package/src/components/ToggleGroup/ToggleGroupContext.ts +0 -13
  362. package/src/components/ToggleGroup/index.ts +0 -3
  363. package/src/components/Tooltip/Tooltip.stories.tsx +0 -82
  364. package/src/components/Tooltip/Tooltip.test.tsx +0 -49
  365. package/src/components/Tooltip/Tooltip.tsx +0 -185
  366. package/src/components/Tooltip/index.ts +0 -2
  367. package/src/components/TopNavigation/Logo/Logo.test.tsx +0 -21
  368. package/src/components/TopNavigation/Logo/Logo.tsx +0 -20
  369. package/src/components/TopNavigation/Logo/index.ts +0 -1
  370. package/src/components/TopNavigation/Menu/Menu.test.tsx +0 -125
  371. package/src/components/TopNavigation/Menu/Menu.tsx +0 -62
  372. package/src/components/TopNavigation/Menu/MenuItemDropdown.tsx +0 -118
  373. package/src/components/TopNavigation/Menu/MenuItemIcon.tsx +0 -50
  374. package/src/components/TopNavigation/Menu/index.ts +0 -1
  375. package/src/components/TopNavigation/OpenSideNavButton/OpenSideNavButton.tsx +0 -28
  376. package/src/components/TopNavigation/OpenSideNavButton/index.ts +0 -1
  377. package/src/components/TopNavigation/TopNavigation.stories.tsx +0 -42
  378. package/src/components/TopNavigation/TopNavigation.tsx +0 -47
  379. package/src/components/TopNavigation/index.ts +0 -2
  380. package/src/components/VisuallyHidden/VisuallyHidden.mdx +0 -26
  381. package/src/components/VisuallyHidden/VisuallyHidden.stories.tsx +0 -32
  382. package/src/components/VisuallyHidden/VisuallyHidden.test.tsx +0 -18
  383. package/src/components/VisuallyHidden/VisuallyHidden.tsx +0 -6
  384. package/src/components/VisuallyHidden/index.ts +0 -1
  385. package/src/docs/tools/DatePickerEvent.stories.mdx +0 -108
  386. package/src/docs/tools/DragDropFileEvent.stories.mdx +0 -75
  387. package/src/docs/tools/conditional.stories.mdx +0 -251
  388. package/src/docs/tools/selectEvent.stories.mdx +0 -121
  389. package/src/hooks/useClickOutside/index.ts +0 -1
  390. package/src/hooks/useClickOutside/useClickOutside.test.tsx +0 -116
  391. package/src/hooks/useClickOutside/useClickOutside.ts +0 -65
  392. package/src/hooks/useDidMount/index.ts +0 -1
  393. package/src/hooks/useDidMount/useDidMount.test.tsx +0 -38
  394. package/src/hooks/useDidMount/useDidMount.ts +0 -20
  395. package/src/hooks/useFingerprint/index.ts +0 -1
  396. package/src/hooks/useFingerprint/useFingerprint.test.ts +0 -76
  397. package/src/hooks/useFingerprint/useFingerprint.ts +0 -94
  398. package/src/hooks/useFocusTrap/index.ts +0 -2
  399. package/src/hooks/useFocusTrap/useFocusTrap.stories.tsx +0 -87
  400. package/src/hooks/useFocusTrap/useFocusTrap.test.tsx +0 -129
  401. package/src/hooks/useFocusTrap/useFocusTrap.ts +0 -187
  402. package/src/hooks/useFocusWithin/index.ts +0 -2
  403. package/src/hooks/useFocusWithin/useFocusWithin.test.tsx +0 -71
  404. package/src/hooks/useFocusWithin/useFocusWithin.ts +0 -62
  405. package/src/hooks/useHeightExpansionToggler/index.ts +0 -2
  406. package/src/hooks/useHeightExpansionToggler/useHeightExpansionToggler.test.tsx +0 -85
  407. package/src/hooks/useHeightExpansionToggler/useHeightExpansionToggler.ts +0 -54
  408. package/src/hooks/useID/index.ts +0 -1
  409. package/src/hooks/useID/useID.ts +0 -18
  410. package/src/hooks/useSelectable/SelectableStrategy.test.ts +0 -424
  411. package/src/hooks/useSelectable/SelectableStrategy.ts +0 -143
  412. package/src/hooks/useSelectable/index.ts +0 -8
  413. package/src/hooks/useSelectable/useSelectable.test.ts +0 -221
  414. package/src/hooks/useSelectable/useSelectable.ts +0 -156
  415. package/src/hooks/useSelectable/useSelectable.types.ts +0 -45
  416. package/src/hooks/useWindowResize/index.ts +0 -1
  417. package/src/hooks/useWindowResize/useWindowResize.ts +0 -27
  418. package/src/index.ts +0 -188
  419. package/src/stories/assets/code-brackets.svg +0 -1
  420. package/src/stories/assets/colors.svg +0 -1
  421. package/src/stories/assets/comments.svg +0 -1
  422. package/src/stories/assets/direction.svg +0 -1
  423. package/src/stories/assets/flow.svg +0 -1
  424. package/src/stories/assets/plugin.svg +0 -1
  425. package/src/stories/assets/repo.svg +0 -1
  426. package/src/stories/assets/stackalt.svg +0 -1
  427. package/src/stories/introduction.stories.mdx +0 -57
  428. package/src/stories/startPage.stories.mdx +0 -95
  429. package/src/styles/activatable.tsx +0 -30
  430. package/src/styles/disableable.tsx +0 -45
  431. package/src/styles/ellipsizable.tsx +0 -14
  432. package/src/styles/focusable.tsx +0 -32
  433. package/src/styles/font.test.ts +0 -31
  434. package/src/styles/font.tsx +0 -40
  435. package/src/styles/hidden.tsx +0 -29
  436. package/src/styles/hoverable.tsx +0 -30
  437. package/src/styles/transition.tsx +0 -25
  438. package/src/styles/typography.test.ts +0 -93
  439. package/src/styles/typography.ts +0 -190
  440. package/src/testing/DatePickerEvent/DatePickerEvent.ts +0 -117
  441. package/src/testing/DatePickerEvent/DateRangePickerEvent.ts +0 -83
  442. package/src/testing/DatePickerEvent/index.ts +0 -2
  443. package/src/testing/DragDropFileEvent/DragDropFileEvent.ts +0 -56
  444. package/src/testing/DragDropFileEvent/index.ts +0 -1
  445. package/src/testing/SelectEvent/SelectEvent.test.tsx +0 -192
  446. package/src/testing/SelectEvent/SelectEvent.ts +0 -264
  447. package/src/testing/SelectEvent/index.ts +0 -1
  448. package/src/testing/getInterpolatedStyles/getInterpolatedStyles.ts +0 -25
  449. package/src/testing/getInterpolatedStyles/index.ts +0 -1
  450. package/src/testing/index.ts +0 -6
  451. package/src/testing/renderWithDragDropFileProvider/index.ts +0 -1
  452. package/src/testing/renderWithDragDropFileProvider/renderWithDragDropFileProvider.tsx +0 -28
  453. package/src/tests/generator.ts +0 -127
  454. package/src/tests/renderer.tsx +0 -39
  455. package/src/theming/index.ts +0 -42
  456. package/src/theming/themes/alice.theme.ts +0 -1022
  457. package/src/theming/themes/index.ts +0 -3
  458. package/src/theming/themes/loadsmart.theme.ts +0 -1019
  459. package/src/theming/themes/miranda-compatibility.theme.ts +0 -972
  460. package/src/theming/theming.helpers.ts +0 -95
  461. package/src/tools/conditional.test.ts +0 -166
  462. package/src/tools/conditional.ts +0 -127
  463. package/src/tools/index.ts +0 -2
  464. package/src/tools/prop.test.ts +0 -52
  465. package/src/tools/prop.ts +0 -36
  466. package/src/utils/toolset/awaitTo.ts +0 -24
  467. package/src/utils/toolset/flatten.ts +0 -3
  468. package/src/utils/toolset/formatBytes.test.ts +0 -45
  469. package/src/utils/toolset/formatBytes.ts +0 -18
  470. package/src/utils/toolset/get.ts +0 -2
  471. package/src/utils/toolset/getID.test.ts +0 -57
  472. package/src/utils/toolset/getID.ts +0 -93
  473. package/src/utils/toolset/getOrdinalSuffix.test.ts +0 -27
  474. package/src/utils/toolset/getOrdinalSuffix.ts +0 -15
  475. package/src/utils/toolset/highlightMatch.test.tsx +0 -32
  476. package/src/utils/toolset/highlightMatch.tsx +0 -32
  477. package/src/utils/toolset/interleave.test.ts +0 -40
  478. package/src/utils/toolset/interleave.ts +0 -23
  479. package/src/utils/toolset/isEmpty.ts +0 -2
  480. package/src/utils/toolset/isThenable.test.ts +0 -40
  481. package/src/utils/toolset/isThenable.ts +0 -14
  482. package/src/utils/toolset/keyboard.ts +0 -50
  483. package/src/utils/toolset/omit.ts +0 -2
  484. package/src/utils/toolset/pluralize.ts +0 -16
  485. package/src/utils/toolset/range.ts +0 -2
  486. package/src/utils/toolset/rem.ts +0 -7
  487. package/src/utils/toolset/styledCompounds.ts +0 -22
  488. package/src/utils/toolset/toArray.ts +0 -16
  489. package/src/utils/types/ColorScheme.ts +0 -3
  490. package/src/utils/types/EventLike.ts +0 -11
  491. package/src/utils/types/InterpolatedStyle.ts +0 -3
  492. package/src/utils/types/Status.ts +0 -8
@@ -1,190 +0,0 @@
1
- import { useEffect, useState } from 'react'
2
-
3
- import { useDidMount } from 'hooks/useDidMount'
4
- import toArray from 'utils/toolset/toArray'
5
-
6
- import DateHelper, { TODAY } from './Date.helper'
7
- import type { useCalendarProps, useCalendarReturn, RenderableMonth } from './Calendar.types'
8
-
9
- function useCalendar(props: useCalendarProps): useCalendarReturn {
10
- const { constraints, onSelect, mode = 'single' } = props
11
- const amountOfMonthsToRender = mode == 'single' ? 1 : 2
12
-
13
- const didMount = useDidMount()
14
- const [selected, setSelected] = useState<ReturnType<typeof getSelectionPair>>(() =>
15
- getSelectionPair(props.selected)
16
- )
17
- const [renderableMonths, setRenderableMonths] = useState<ReturnType<typeof getRenderableMonths>>(
18
- () => {
19
- const month = props.month != null ? props.month : TODAY.getMonth()
20
- const year = props.year != null ? props.year : TODAY.getYear()
21
-
22
- return getRenderableMonths(year, month, amountOfMonthsToRender)
23
- }
24
- )
25
-
26
- /**
27
- * Set the month to be rendered (or initial month when calendar is in range mode).
28
- * @param {Object} args
29
- * @param {number} [args.month] - Initial month to be rendered, if not provided, the current initial month will be used.
30
- * @param {number} [args.year] - Initial year to be rendered, if not provided, the current initial month will be used.
31
- */
32
- function set(args: { month?: number; year?: number }) {
33
- const [initialMonth] = renderableMonths
34
- const date = new Date(args.year ?? initialMonth.year, args.month ?? initialMonth.month)
35
-
36
- setRenderableMonths(
37
- getRenderableMonths(date.getFullYear(), date.getMonth(), amountOfMonthsToRender)
38
- )
39
- }
40
-
41
- /**
42
- * Select day or day range.
43
- * @param range `null` to clear selection, selection range start, or an array with selection start and end.
44
- */
45
- function select(range: useCalendarProps['selected']) {
46
- const [start, end] = getSelectionPair(range)
47
-
48
- function getSelectionBoundary(boundary?: string | number | null): string | null {
49
- if (boundary != null) {
50
- return DateHelper(boundary).toString()
51
- }
52
-
53
- return null
54
- }
55
-
56
- setSelected([start, end])
57
-
58
- if (didMount) {
59
- // prevent calling onSelect when initialized with value
60
- onSelect?.([getSelectionBoundary(start), getSelectionBoundary(end)])
61
- }
62
- }
63
-
64
- /**
65
- * Clear calendar selection.
66
- */
67
- function clear() {
68
- select([null, null])
69
- }
70
-
71
- useEffect(
72
- function onMonthOrYearPropsChange() {
73
- set({
74
- month: props.month,
75
- year: props.year,
76
- })
77
- },
78
- // eslint-disable-next-line react-hooks/exhaustive-deps
79
- [props.month, props.year]
80
- )
81
-
82
- useEffect(
83
- function onSelectedPropChange() {
84
- const newSelected = getSelectionPair(props.selected)
85
-
86
- if (newSelected[0] != selected[0] || newSelected[1] != selected[1]) {
87
- setSelected(newSelected)
88
- }
89
- },
90
- // we just intend to update the internal state when the prop changes
91
- // eslint-disable-next-line react-hooks/exhaustive-deps
92
- [props.selected]
93
- )
94
-
95
- return {
96
- mode,
97
- months: renderableMonths,
98
- selected,
99
- constraints: toArray(constraints || []),
100
- clear,
101
- set,
102
- select,
103
- }
104
- }
105
-
106
- const DAY_IN_MILLISECONDS = 24 * 60 * 60 * 1000
107
-
108
- /**
109
- * Generate the whole grid of days,
110
- * @param {number} year
111
- * @param {number }month
112
- * @returns {RenderableMonth}
113
- */
114
- export function getRenderableMonth(year: number, month: number): RenderableMonth {
115
- const date = DateHelper(Date.UTC(year, month))
116
-
117
- const firstDayOfTheWeek = date.getWeekday()
118
- const totalDaysInMonth = 32 - new Date(Date.UTC(year, month, 32)).getUTCDate()
119
-
120
- const days = []
121
-
122
- /**
123
- * Filling days of previous month.
124
- * If the month does not start on Sunday, then we need to generate only the days of
125
- * the previous month to fill out the grid.
126
- */
127
- for (let index = firstDayOfTheWeek; index > 0; index--) {
128
- days.push(DateHelper(date.getTime() - index * DAY_IN_MILLISECONDS))
129
- }
130
-
131
- // Filling days of current month
132
- for (let index = 0; index < totalDaysInMonth; index++) {
133
- days.push(DateHelper(date.getTime() + index * DAY_IN_MILLISECONDS))
134
- }
135
-
136
- /**
137
- * Filling days of next month, just enough to complete the grid.
138
- */
139
- for (let index = 0; (firstDayOfTheWeek + totalDaysInMonth + index) % 7 != 0; index++) {
140
- days.push(DateHelper(date.getTime() + (totalDaysInMonth + index) * DAY_IN_MILLISECONDS))
141
- }
142
-
143
- return {
144
- month: date.getMonth(),
145
- year: date.getYear(),
146
- days,
147
- }
148
- }
149
-
150
- /**
151
- *
152
- * @param {number} year
153
- * @param {number} month
154
- * @param {number?} amount - number of months to be generated. Default value is 1.
155
- * @returns
156
- */
157
- export function getRenderableMonths(
158
- year: number,
159
- month: number,
160
- amount = 1
161
- ): ReturnType<typeof getRenderableMonth>[] {
162
- if (month < 0 || month > 11) {
163
- throw new Error(
164
- 'Invalid month! Please, provide a number between 0 (January) and 11 (December).'
165
- )
166
- }
167
-
168
- // TODO: validate accepted year range?
169
-
170
- const months = new Array<ReturnType<typeof getRenderableMonth>>()
171
-
172
- for (let i = 0; i < amount; i++) {
173
- months.push(getRenderableMonth(year, month + i))
174
- }
175
-
176
- return months
177
- }
178
-
179
- export function getSelectionPair(
180
- selected?: null | [string | number | null, string | number | null]
181
- ): [number | null, number | null] {
182
- const [start, end] = toArray(selected)
183
-
184
- return [
185
- start != null ? DateHelper(start).getTime() : null,
186
- end != null ? DateHelper(end ?? start).getTime() : null,
187
- ]
188
- }
189
-
190
- export default useCalendar
@@ -1,48 +0,0 @@
1
- import { useReducer } from 'react'
2
-
3
- import DayPicker from './Pickers/DayPicker'
4
- import MonthPicker from './Pickers/MonthPicker'
5
- import YearPicker from './Pickers/YearPicker'
6
-
7
- import type {
8
- PickerMode,
9
- PickerModeAction,
10
- usePickerModeProps,
11
- usePickerModeReturn,
12
- } from './Calendar.types'
13
-
14
- function usePickerMode(props?: usePickerModeProps): usePickerModeReturn {
15
- function reducer(state: PickerMode, action: PickerModeAction) {
16
- switch (action.type) {
17
- case 'set-mode':
18
- return action.payload
19
- case 'toggle-mode':
20
- if (state != action.payload) {
21
- return action.payload
22
- }
23
-
24
- return 'day-picker'
25
- default:
26
- return state
27
- }
28
- }
29
-
30
- const [mode, dispatch] = useReducer(reducer, props?.mode || 'day-picker')
31
-
32
- return {
33
- get() {
34
- return mode
35
- },
36
- is(other: PickerMode) {
37
- return other != null && other === mode
38
- },
39
- dispatch,
40
- Picker: {
41
- 'day-picker': DayPicker,
42
- 'month-picker': MonthPicker,
43
- 'year-picker': YearPicker,
44
- }[mode],
45
- }
46
- }
47
-
48
- export default usePickerMode
@@ -1,117 +0,0 @@
1
- import React from 'react'
2
- import type { Story, Meta } from '@storybook/react'
3
-
4
- import Card from './Card'
5
- import generator from '../../tests/generator'
6
- import Status from 'utils/types/Status'
7
-
8
- import type { CardProps } from './Card'
9
-
10
- export default {
11
- title: 'Components/Card',
12
- component: Card,
13
- argTypes: {
14
- scheme: {
15
- description: 'Color scheme to be used',
16
- table: {
17
- type: {
18
- summary: 'ColorScheme',
19
- },
20
- defaultValue: {
21
- summary: 'light',
22
- },
23
- },
24
- options: ['light', 'dark'],
25
- control: {
26
- type: 'select',
27
- },
28
- },
29
- flagged: {
30
- description: 'Should show the vertical line on the left side of the card',
31
- control: {
32
- type: 'boolean',
33
- },
34
- },
35
- theme: {
36
- table: {
37
- disable: true,
38
- },
39
- },
40
- children: {
41
- table: {
42
- disable: true,
43
- },
44
- },
45
- },
46
- } as Meta
47
-
48
- export const Playground: Story<CardProps> = (args) => {
49
- return (
50
- <div className="flex flex-col space-y-2">
51
- <Card {...args} style={{ width: 416 }} />
52
- </div>
53
- )
54
- }
55
-
56
- Playground.args = {
57
- status: Status.Neutral,
58
- children: (
59
- <>
60
- <Card.Title leading={<span>&clubs;</span>}>Card Title</Card.Title>
61
- <Card.Subtitle>Card Subtitle</Card.Subtitle>
62
- <Card.Separator />
63
- <Card.Body>{generator.sentence({ paragraphs: 5 })}</Card.Body>
64
- </>
65
- ),
66
- }
67
-
68
- export const Default: Story<CardProps> = (args) => {
69
- return (
70
- <div className="flex flex-col space-y-2">
71
- <Card {...args} style={{ width: 416 }}>
72
- <Card.Title leading={<span>&clubs;</span>}>Card Title</Card.Title>
73
- <Card.Subtitle>Card Subtitle</Card.Subtitle>
74
- <Card.Body>{generator.sentence({ paragraphs: 5 })}</Card.Body>
75
- </Card>
76
- </div>
77
- )
78
- }
79
-
80
- Default.args = {
81
- status: Status.Neutral,
82
- }
83
-
84
- export const TitleOnly: Story<CardProps> = (args) => {
85
- return (
86
- <div className="flex flex-col space-y-2">
87
- <Card {...args} style={{ width: 416 }}>
88
- <Card.Title leading={<span>&clubs;</span>}>Card Title</Card.Title>
89
- <Card.Separator />
90
- <Card.Body>{generator.sentence({ paragraphs: 5 })}</Card.Body>
91
- </Card>
92
- <Card {...args} style={{ width: 416 }}>
93
- <Card.Title leading={<span>&clubs;</span>}>Card Title</Card.Title>
94
-
95
- <Card.Body>{generator.sentence({ paragraphs: 5 })}</Card.Body>
96
- </Card>
97
- </div>
98
- )
99
- }
100
-
101
- TitleOnly.args = {
102
- status: Status.Neutral,
103
- }
104
-
105
- export const Flagged: Story<CardProps> = (args) => {
106
- return (
107
- <div className="flex flex-col space-y-2">
108
- <Card flagged style={{ width: 416 }} {...args}>
109
- <Card.Body>{generator.sentence({ paragraphs: 5 })}</Card.Body>
110
- </Card>
111
- </div>
112
- )
113
- }
114
-
115
- Flagged.args = {
116
- status: Status.Neutral,
117
- }
@@ -1,139 +0,0 @@
1
- import React from 'react'
2
- import { composeStories } from '@storybook/react'
3
-
4
- import * as stories from './Card.stories'
5
- import Card from './Card'
6
- import generator from '../../tests/generator'
7
- import renderer, { screen } from '../../tests/renderer'
8
- import Status from 'utils/types/Status'
9
-
10
- import type { CardProps } from './Card'
11
-
12
- const { Playground } = composeStories(stories)
13
-
14
- const setup = ({ ...overrides }: Partial<CardProps> = {}) => {
15
- return renderer(<Playground {...overrides} />).render()
16
- }
17
-
18
- describe('Card', () => {
19
- it('renders correctly', () => {
20
- const props = {
21
- leading: generator.word({ length: 1 }),
22
- title: generator.sentence(),
23
- subtitle: generator.sentence(),
24
- body: generator.sentence(),
25
- }
26
-
27
- setup({
28
- children: (
29
- <>
30
- <Card.Title leading={<span>{props.leading}</span>}>{props.title}</Card.Title>
31
- <Card.Subtitle>{props.subtitle}</Card.Subtitle>
32
- <Card.Separator />
33
- <Card.Body>{props.body}</Card.Body>
34
- </>
35
- ),
36
- })
37
-
38
- screen.getByText(props.leading)
39
- screen.getByText(props.title)
40
- screen.getByText(props.subtitle)
41
- screen.getByText(props.body)
42
-
43
- expect(screen.queryByTestId('card-flag')).not.toBeInTheDocument()
44
- })
45
-
46
- describe('with flag', () => {
47
- it('renders success correctly', () => {
48
- const props = {
49
- title: generator.sentence(),
50
- subtitle: generator.sentence(),
51
- body: generator.sentence(),
52
- }
53
-
54
- setup({
55
- flagged: true,
56
- status: Status.Success,
57
- children: (
58
- <>
59
- <Card.Title>{props.title}</Card.Title>
60
- <Card.Subtitle>{props.subtitle}</Card.Subtitle>
61
- <Card.Separator />
62
- <Card.Body>{props.body}</Card.Body>
63
- </>
64
- ),
65
- })
66
-
67
- screen.getByLabelText('success')
68
- })
69
-
70
- it('renders warn correctly', () => {
71
- const props = {
72
- title: generator.sentence(),
73
- subtitle: generator.sentence(),
74
- body: generator.sentence(),
75
- }
76
-
77
- setup({
78
- flagged: true,
79
- status: Status.Warn,
80
- children: (
81
- <>
82
- <Card.Title>{props.title}</Card.Title>
83
- <Card.Subtitle>{props.subtitle}</Card.Subtitle>
84
- <Card.Separator />
85
- <Card.Body>{props.body}</Card.Body>
86
- </>
87
- ),
88
- })
89
-
90
- screen.getByLabelText('warn')
91
- })
92
-
93
- it('renders danger correctly', () => {
94
- const props = {
95
- title: generator.sentence(),
96
- subtitle: generator.sentence(),
97
- body: generator.sentence(),
98
- }
99
-
100
- setup({
101
- flagged: true,
102
- status: Status.Danger,
103
- children: (
104
- <>
105
- <Card.Title>{props.title}</Card.Title>
106
- <Card.Subtitle>{props.subtitle}</Card.Subtitle>
107
- <Card.Separator />
108
- <Card.Body>{props.body}</Card.Body>
109
- </>
110
- ),
111
- })
112
-
113
- screen.getByLabelText('danger')
114
- })
115
-
116
- it('renders neutral correctly', () => {
117
- const props = {
118
- title: generator.sentence(),
119
- subtitle: generator.sentence(),
120
- body: generator.sentence(),
121
- }
122
-
123
- setup({
124
- flagged: true,
125
- status: Status.Neutral,
126
- children: (
127
- <>
128
- <Card.Title>{props.title}</Card.Title>
129
- <Card.Subtitle>{props.subtitle}</Card.Subtitle>
130
- <Card.Separator />
131
- <Card.Body>{props.body}</Card.Body>
132
- </>
133
- ),
134
- })
135
-
136
- screen.getByLabelText('neutral')
137
- })
138
- })
139
- })
@@ -1,106 +0,0 @@
1
- import React, { HTMLAttributes, ReactNode } from 'react'
2
-
3
- import { getToken as token } from 'theming'
4
- import CardTitle, { CardTitleWrapper } from './CardTitle'
5
- import conditional, { whenProps } from 'tools/conditional'
6
- import font from 'styles/font'
7
- import Status from 'utils/types/Status'
8
- import styled, { css } from 'styled-components'
9
-
10
- export interface CardProps extends HTMLAttributes<HTMLElement> {
11
- children: ReactNode
12
- status?: Status
13
- flagged?: boolean
14
- }
15
-
16
- const CardSubtitle = styled.div`
17
- padding: 0 ${token('card-padding-x')} ${token('card-padding-y')};
18
-
19
- color: ${token('card-color')};
20
- font-weight: ${token('card-subtitle-font-weight')};
21
- font-size: ${token('card-subtitle-font-size')};
22
- `
23
-
24
- const CardSeparator = styled.hr`
25
- display: block;
26
- height: 1px;
27
- margin: 0;
28
-
29
- border: 0;
30
- border-bottom: 1px solid ${token('card-separator-background')};
31
- `
32
-
33
- const CardBody = styled.div`
34
- padding: ${token('card-padding-y')} ${token('card-padding-x')};
35
- `
36
-
37
- const Wrapper = styled.div`
38
- ${font({})}
39
-
40
- display: flex;
41
- flex-direction: row;
42
-
43
- color: ${token('card-color')};
44
-
45
- ${CardTitleWrapper} + ${CardSubtitle} {
46
- margin-top: ${token('space-xs')};
47
- }
48
-
49
- ${CardTitleWrapper} + ${CardSeparator} {
50
- margin-top: ${token('card-padding-y')};
51
- }
52
-
53
- border: 1px solid ${token('card-border-color')};
54
- border-radius: ${token('card-border-radius')};
55
- background: ${token('card-background')};
56
- `
57
-
58
- const Container = styled.div<{ flagged: boolean }>`
59
- display: flex;
60
- flex: 1;
61
- flex-direction: column;
62
-
63
- line-height: ${token('card-font-height')};
64
-
65
- ${({ flagged }) =>
66
- flagged &&
67
- css`
68
- ${CardSeparator} {
69
- margin-left: calc(-1 * ${token('space-s')});
70
- }
71
- `}
72
- `
73
-
74
- const Flag = styled.span<{ status: Status }>`
75
- display: block;
76
- flex: 0 0 ${token('card-flag-width')};
77
-
78
- background: ${conditional({
79
- 'card-flag-background-neutral': whenProps({ status: Status.Neutral }),
80
- 'card-flag-background-danger': whenProps({ status: Status.Danger }),
81
- 'card-flag-background-warning': whenProps({ status: Status.Warn }),
82
- 'card-flag-background-success': whenProps({ status: Status.Success }),
83
- })};
84
- border-radius: ${token('card-border-radius')} 0 0 ${token('card-border-radius')};
85
- `
86
-
87
- function Card({
88
- flagged = false,
89
- status = Status.Neutral,
90
- children,
91
- ...others
92
- }: CardProps): JSX.Element {
93
- return (
94
- <Wrapper {...others}>
95
- {flagged && <Flag status={status} aria-label={status} />}
96
- <Container flagged={flagged}>{children}</Container>
97
- </Wrapper>
98
- )
99
- }
100
-
101
- Card.Title = CardTitle
102
- Card.Subtitle = CardSubtitle
103
- Card.Separator = CardSeparator
104
- Card.Body = CardBody
105
-
106
- export default Card
@@ -1,43 +0,0 @@
1
- import React, { ReactNode, HTMLAttributes } from 'react'
2
-
3
- import styled from 'styled-components'
4
- import { getToken as token } from 'theming'
5
-
6
- export interface CardTitleProps extends HTMLAttributes<HTMLElement> {
7
- leading?: ReactNode
8
- }
9
-
10
- const StyledSpan = styled.span`
11
- display: inline-flex;
12
- flex-flow: row nowrap;
13
- align-items: center;
14
- justify-content: center;
15
-
16
- pointer-events: none;
17
- `
18
-
19
- const Leading = styled(StyledSpan)`
20
- margin-right: ${token('space-xs')};
21
- `
22
-
23
- const Wrapper = styled.div`
24
- padding: ${token('card-padding-y')} ${token('card-padding-x')} 0;
25
-
26
- color: ${token('card-color')};
27
- font-weight: ${token('card-title-font-weight')};
28
- font-size: ${token('card-title-font-size')};
29
- line-height: ${token('card-title-font-height')};
30
- `
31
-
32
- function CardTitle({ children, leading, ...others }: CardTitleProps): JSX.Element {
33
- return (
34
- <Wrapper {...others}>
35
- {leading && <Leading>{leading}</Leading>}
36
- {children}
37
- </Wrapper>
38
- )
39
- }
40
-
41
- export { Wrapper as CardTitleWrapper }
42
-
43
- export default CardTitle
@@ -1,2 +0,0 @@
1
- export { default as Card } from './Card'
2
- export type { CardProps } from './Card'