@loadsmart/loadsmart-ui 7.6.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 (490) 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-ChPV-BBw.js.map → miranda-compatibility.theme-C_FEacSw.js.map} +1 -1
  8. package/dist/prop-B8LY6G2g.js +81 -0
  9. package/dist/{prop-BwhJNJHO.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-BW3gx_gH.js.map → toArray-Dxb1kUxx.js.map} +1 -1
  16. package/dist/tools/index.js +6 -1
  17. package/dist/tools/index.js.map +1 -1
  18. package/package.json +24 -54
  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 -8046
  23. package/dist/index.mjs.map +0 -1
  24. package/dist/miranda-compatibility.theme-ChPV-BBw.js +0 -2
  25. package/dist/miranda-compatibility.theme-DQDHkWzC.mjs +0 -2469
  26. package/dist/miranda-compatibility.theme-DQDHkWzC.mjs.map +0 -1
  27. package/dist/prop-5m3D4883.mjs +0 -54
  28. package/dist/prop-5m3D4883.mjs.map +0 -1
  29. package/dist/prop-BwhJNJHO.js +0 -2
  30. package/dist/testing/index.mjs +0 -228
  31. package/dist/testing/index.mjs.map +0 -1
  32. package/dist/theming/index.mjs +0 -20
  33. package/dist/theming/index.mjs.map +0 -1
  34. package/dist/toArray-BW3gx_gH.js +0 -2
  35. package/dist/toArray-DqgeO2ua.mjs +0 -8
  36. package/dist/toArray-DqgeO2ua.mjs.map +0 -1
  37. package/dist/tools/index.mjs +0 -7
  38. package/dist/tools/index.mjs.map +0 -1
  39. package/src/@types/@loadsmart/utilsFunction.d.ts +0 -5
  40. package/src/@types/@loadsmart/utilsObject.d.ts +0 -5
  41. package/src/@types/svg.d.ts +0 -4
  42. package/src/addons/Theme/register.js +0 -590
  43. package/src/common/BackButton/BackButton.tsx +0 -18
  44. package/src/common/BackButton/index.ts +0 -2
  45. package/src/common/CloseButton/CloseButton.tsx +0 -55
  46. package/src/common/CloseButton/index.ts +0 -2
  47. package/src/common/SelectionWrapper.tsx +0 -130
  48. package/src/components/Accordion/Accordion.context.tsx +0 -36
  49. package/src/components/Accordion/Accordion.stories.tsx +0 -186
  50. package/src/components/Accordion/Accordion.test.tsx +0 -209
  51. package/src/components/Accordion/Accordion.tsx +0 -233
  52. package/src/components/Accordion/index.ts +0 -2
  53. package/src/components/Banner/Banner.stories.tsx +0 -213
  54. package/src/components/Banner/Banner.test.tsx +0 -118
  55. package/src/components/Banner/Banner.tsx +0 -418
  56. package/src/components/Banner/index.tsx +0 -2
  57. package/src/components/Breadcrumbs/Breadbrumbs.test.tsx +0 -125
  58. package/src/components/Breadcrumbs/Breadcrumb.tsx +0 -92
  59. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +0 -21
  60. package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -54
  61. package/src/components/Breadcrumbs/index.ts +0 -4
  62. package/src/components/Button/Button.stories.tsx +0 -174
  63. package/src/components/Button/Button.test.tsx +0 -57
  64. package/src/components/Button/Button.tsx +0 -576
  65. package/src/components/Button/index.tsx +0 -2
  66. package/src/components/Calendar/Calendar.helpers.ts +0 -15
  67. package/src/components/Calendar/Calendar.stories.tsx +0 -168
  68. package/src/components/Calendar/Calendar.test.tsx +0 -316
  69. package/src/components/Calendar/Calendar.tsx +0 -130
  70. package/src/components/Calendar/Calendar.types.ts +0 -68
  71. package/src/components/Calendar/Date.helper.test.ts +0 -847
  72. package/src/components/Calendar/Date.helper.ts +0 -461
  73. package/src/components/Calendar/DateFormat.helper.test.ts +0 -171
  74. package/src/components/Calendar/DateFormat.helper.ts +0 -195
  75. package/src/components/Calendar/Month.helper.test.ts +0 -187
  76. package/src/components/Calendar/Month.helper.ts +0 -172
  77. package/src/components/Calendar/PickerModeToggle.tsx +0 -61
  78. package/src/components/Calendar/Pickers/DayPicker.test.tsx +0 -85
  79. package/src/components/Calendar/Pickers/DayPicker.tsx +0 -127
  80. package/src/components/Calendar/Pickers/MonthPicker.test.tsx +0 -77
  81. package/src/components/Calendar/Pickers/MonthPicker.tsx +0 -51
  82. package/src/components/Calendar/Pickers/PickerButton.tsx +0 -119
  83. package/src/components/Calendar/Pickers/YearPicker.test.tsx +0 -75
  84. package/src/components/Calendar/Pickers/YearPicker.tsx +0 -52
  85. package/src/components/Calendar/index.ts +0 -10
  86. package/src/components/Calendar/useCalendar.ts +0 -190
  87. package/src/components/Calendar/usePickerMode.ts +0 -48
  88. package/src/components/Card/Card.stories.tsx +0 -117
  89. package/src/components/Card/Card.test.tsx +0 -139
  90. package/src/components/Card/Card.tsx +0 -106
  91. package/src/components/Card/CardTitle.tsx +0 -43
  92. package/src/components/Card/index.ts +0 -2
  93. package/src/components/Checkbox/Checkbox.stories.tsx +0 -79
  94. package/src/components/Checkbox/Checkbox.test.tsx +0 -66
  95. package/src/components/Checkbox/Checkbox.tsx +0 -170
  96. package/src/components/Checkbox/index.ts +0 -2
  97. package/src/components/DatePicker/DatePicker.stories.tsx +0 -113
  98. package/src/components/DatePicker/DatePicker.test.tsx +0 -174
  99. package/src/components/DatePicker/DatePicker.tsx +0 -140
  100. package/src/components/DatePicker/DatePicker.types.ts +0 -30
  101. package/src/components/DatePicker/DateRangePicker.stories.tsx +0 -128
  102. package/src/components/DatePicker/DateRangePicker.test.tsx +0 -267
  103. package/src/components/DatePicker/DateRangePicker.tsx +0 -110
  104. package/src/components/DatePicker/index.ts +0 -3
  105. package/src/components/DatePicker/useDatePicker.ts +0 -201
  106. package/src/components/DatePicker/useDateRangePicker.ts +0 -224
  107. package/src/components/Dialog/Dialog.stories.tsx +0 -227
  108. package/src/components/Dialog/Dialog.test.tsx +0 -74
  109. package/src/components/Dialog/Dialog.tsx +0 -139
  110. package/src/components/Dialog/index.tsx +0 -4
  111. package/src/components/Dialog/useDialog.tsx +0 -59
  112. package/src/components/DragDropFile/DragDropFile.context.tsx +0 -39
  113. package/src/components/DragDropFile/DragDropFile.stories.tsx +0 -183
  114. package/src/components/DragDropFile/DragDropFile.tsx +0 -11
  115. package/src/components/DragDropFile/components/DropZone.test.tsx +0 -108
  116. package/src/components/DragDropFile/components/DropZone.tsx +0 -145
  117. package/src/components/DragDropFile/components/FileItem.tsx +0 -117
  118. package/src/components/DragDropFile/components/FileList.test.tsx +0 -119
  119. package/src/components/DragDropFile/components/FileList.tsx +0 -47
  120. package/src/components/DragDropFile/components/Wrapper.tsx +0 -22
  121. package/src/components/DragDropFile/index.ts +0 -9
  122. package/src/components/DragDropFile/mocks.ts +0 -23
  123. package/src/components/DragDropFile/styles.tsx +0 -81
  124. package/src/components/DragDropFile/types.ts +0 -85
  125. package/src/components/Drawer/Drawer.stories.tsx +0 -83
  126. package/src/components/Drawer/Drawer.test.tsx +0 -90
  127. package/src/components/Drawer/Drawer.tsx +0 -225
  128. package/src/components/Drawer/index.ts +0 -4
  129. package/src/components/Dropdown/Dropdown.context.ts +0 -13
  130. package/src/components/Dropdown/Dropdown.fixtures.ts +0 -15
  131. package/src/components/Dropdown/Dropdown.stories.tsx +0 -259
  132. package/src/components/Dropdown/Dropdown.test.tsx +0 -173
  133. package/src/components/Dropdown/Dropdown.tsx +0 -141
  134. package/src/components/Dropdown/Dropdown.types.ts +0 -59
  135. package/src/components/Dropdown/DropdownMenu.tsx +0 -263
  136. package/src/components/Dropdown/DropdownTrigger.tsx +0 -368
  137. package/src/components/Dropdown/index.ts +0 -15
  138. package/src/components/Dropdown/useDropdown.test.ts +0 -96
  139. package/src/components/Dropdown/useDropdown.ts +0 -65
  140. package/src/components/EmptyState/EmptyState.mocks.tsx +0 -60
  141. package/src/components/EmptyState/EmptyState.stories.tsx +0 -239
  142. package/src/components/EmptyState/EmptyState.test.tsx +0 -101
  143. package/src/components/EmptyState/EmptyState.tsx +0 -22
  144. package/src/components/EmptyState/EmptyState.types.ts +0 -59
  145. package/src/components/EmptyState/EmptyStateWithIcon.tsx +0 -42
  146. package/src/components/EmptyState/EmptyStateWithIllustration.tsx +0 -72
  147. package/src/components/EmptyState/Illustration.tsx +0 -29
  148. package/src/components/EmptyState/index.ts +0 -4
  149. package/src/components/ErrorMessage/ErrorMessage.stories.tsx +0 -26
  150. package/src/components/ErrorMessage/ErrorMessage.test.tsx +0 -24
  151. package/src/components/ErrorMessage/ErrorMessage.tsx +0 -19
  152. package/src/components/ErrorMessage/index.ts +0 -2
  153. package/src/components/HighlightMatch/HighlightMatch.stories.tsx +0 -24
  154. package/src/components/HighlightMatch/HighlightMatch.test.tsx +0 -37
  155. package/src/components/HighlightMatch/HighlightMatch.tsx +0 -29
  156. package/src/components/HighlightMatch/index.ts +0 -2
  157. package/src/components/Icon/Icon.tsx +0 -55
  158. package/src/components/Icon/assets/back.svg +0 -4
  159. package/src/components/Icon/assets/burger-menu.svg +0 -3
  160. package/src/components/Icon/assets/calendar.svg +0 -5
  161. package/src/components/Icon/assets/caret-down.svg +0 -4
  162. package/src/components/Icon/assets/caret-left.svg +0 -4
  163. package/src/components/Icon/assets/caret-right-last.svg +0 -4
  164. package/src/components/Icon/assets/caret-right.svg +0 -4
  165. package/src/components/Icon/assets/check.svg +0 -4
  166. package/src/components/Icon/assets/chevron-down.svg +0 -3
  167. package/src/components/Icon/assets/circle.svg +0 -3
  168. package/src/components/Icon/assets/close.svg +0 -4
  169. package/src/components/Icon/assets/dots-horizontal.svg +0 -1
  170. package/src/components/Icon/assets/information.svg +0 -4
  171. package/src/components/Icon/assets/minus.svg +0 -4
  172. package/src/components/Icon/assets/plus.svg +0 -4
  173. package/src/components/Icon/assets/refresh.svg +0 -3
  174. package/src/components/Icon/assets/sort-asc.svg +0 -7
  175. package/src/components/Icon/assets/sort-desc.svg +0 -7
  176. package/src/components/Icon/assets/sort.svg +0 -7
  177. package/src/components/Icon/assets/upload.svg +0 -3
  178. package/src/components/Icon/assets/warning.svg +0 -4
  179. package/src/components/Icon/index.ts +0 -2
  180. package/src/components/IconFactory/IconFactory.fixtures.tsx +0 -31
  181. package/src/components/IconFactory/IconFactory.stories.tsx +0 -120
  182. package/src/components/IconFactory/IconFactory.test.tsx +0 -36
  183. package/src/components/IconFactory/IconFactory.tsx +0 -75
  184. package/src/components/IconFactory/index.ts +0 -2
  185. package/src/components/Label/Label.stories.tsx +0 -47
  186. package/src/components/Label/Label.test.tsx +0 -80
  187. package/src/components/Label/Label.tsx +0 -120
  188. package/src/components/Label/index.ts +0 -2
  189. package/src/components/Layout/Box.tsx +0 -98
  190. package/src/components/Layout/Grid.tsx +0 -42
  191. package/src/components/Layout/Group.tsx +0 -55
  192. package/src/components/Layout/Layout.stories.tsx +0 -412
  193. package/src/components/Layout/Layout.tsx +0 -19
  194. package/src/components/Layout/Layout.types.ts +0 -9
  195. package/src/components/Layout/Layout.utils.ts +0 -20
  196. package/src/components/Layout/Sidebar.tsx +0 -75
  197. package/src/components/Layout/Stack.tsx +0 -63
  198. package/src/components/Layout/Switcher.tsx +0 -48
  199. package/src/components/Layout/index.tsx +0 -8
  200. package/src/components/Link/Link.stories.tsx +0 -22
  201. package/src/components/Link/Link.test.tsx +0 -79
  202. package/src/components/Link/Link.tsx +0 -114
  203. package/src/components/Link/index.ts +0 -3
  204. package/src/components/Link/useSafeLink.ts +0 -49
  205. package/src/components/Loaders/LoadingBar.stories.tsx +0 -36
  206. package/src/components/Loaders/LoadingBar.test.tsx +0 -35
  207. package/src/components/Loaders/LoadingBar.tsx +0 -65
  208. package/src/components/Loaders/LoadingDots.stories.tsx +0 -69
  209. package/src/components/Loaders/LoadingDots.test.tsx +0 -22
  210. package/src/components/Loaders/LoadingDots.tsx +0 -68
  211. package/src/components/Loaders/Spinner.stories.tsx +0 -24
  212. package/src/components/Loaders/Spinner.test.tsx +0 -35
  213. package/src/components/Loaders/Spinner.tsx +0 -68
  214. package/src/components/Loaders/index.tsx +0 -3
  215. package/src/components/Modal/Modal.stories.tsx +0 -121
  216. package/src/components/Modal/Modal.test.tsx +0 -46
  217. package/src/components/Modal/Modal.tsx +0 -163
  218. package/src/components/Modal/index.tsx +0 -2
  219. package/src/components/Pagination/Pagination.constants.ts +0 -7
  220. package/src/components/Pagination/Pagination.helper.ts +0 -88
  221. package/src/components/Pagination/Pagination.stories.tsx +0 -29
  222. package/src/components/Pagination/Pagination.test.tsx +0 -102
  223. package/src/components/Pagination/Pagination.tsx +0 -34
  224. package/src/components/Pagination/Pagination.types.ts +0 -55
  225. package/src/components/Pagination/PaginationItem.tsx +0 -74
  226. package/src/components/Pagination/index.ts +0 -2
  227. package/src/components/Pagination/usePagination.test.ts +0 -188
  228. package/src/components/Pagination/usePagination.ts +0 -87
  229. package/src/components/Popover/Popover.stories.tsx +0 -50
  230. package/src/components/Popover/Popover.test.tsx +0 -22
  231. package/src/components/Popover/Popover.tsx +0 -110
  232. package/src/components/Popover/Popover.types.ts +0 -39
  233. package/src/components/Popover/index.ts +0 -11
  234. package/src/components/ProgressBar/ProgressBar.stories.tsx +0 -47
  235. package/src/components/ProgressBar/ProgressBar.test.tsx +0 -40
  236. package/src/components/ProgressBar/ProgressBar.tsx +0 -89
  237. package/src/components/ProgressBar/index.tsx +0 -2
  238. package/src/components/Radio/Radio.stories.tsx +0 -75
  239. package/src/components/Radio/Radio.test.tsx +0 -66
  240. package/src/components/Radio/Radio.tsx +0 -153
  241. package/src/components/Radio/index.ts +0 -2
  242. package/src/components/Section/Section.test.tsx +0 -35
  243. package/src/components/Section/Section.tsx +0 -66
  244. package/src/components/Section/Sections.stories.tsx +0 -56
  245. package/src/components/Section/index.ts +0 -2
  246. package/src/components/Select/Select.constants.ts +0 -12
  247. package/src/components/Select/Select.context.ts +0 -11
  248. package/src/components/Select/Select.fixtures.ts +0 -167
  249. package/src/components/Select/Select.stories.tsx +0 -780
  250. package/src/components/Select/Select.test.tsx +0 -1109
  251. package/src/components/Select/Select.tsx +0 -271
  252. package/src/components/Select/Select.types.ts +0 -148
  253. package/src/components/Select/SelectCreatableOption.tsx +0 -20
  254. package/src/components/Select/SelectEmpty.test.tsx +0 -15
  255. package/src/components/Select/SelectEmpty.tsx +0 -29
  256. package/src/components/Select/SelectOption.test.tsx +0 -78
  257. package/src/components/Select/SelectOption.tsx +0 -79
  258. package/src/components/Select/SelectTrigger.tsx +0 -83
  259. package/src/components/Select/components.tsx +0 -14
  260. package/src/components/Select/index.ts +0 -12
  261. package/src/components/Select/useSelect.helpers.test.ts +0 -184
  262. package/src/components/Select/useSelect.helpers.ts +0 -63
  263. package/src/components/Select/useSelect.test.ts +0 -207
  264. package/src/components/Select/useSelect.ts +0 -540
  265. package/src/components/Select/useSelectExternal.ts +0 -26
  266. package/src/components/SideNavigation/Logo/Logo.test.tsx +0 -19
  267. package/src/components/SideNavigation/Logo/Logo.tsx +0 -26
  268. package/src/components/SideNavigation/Logo/index.ts +0 -1
  269. package/src/components/SideNavigation/Menu/Menu.test.tsx +0 -65
  270. package/src/components/SideNavigation/Menu/Menu.tsx +0 -53
  271. package/src/components/SideNavigation/Menu/MenuBaseItem.tsx +0 -64
  272. package/src/components/SideNavigation/Menu/MenuExpandable.tsx +0 -107
  273. package/src/components/SideNavigation/Menu/MenuLink.tsx +0 -37
  274. package/src/components/SideNavigation/Menu/index.ts +0 -1
  275. package/src/components/SideNavigation/Separator/Separator.test.tsx +0 -14
  276. package/src/components/SideNavigation/Separator/Separator.tsx +0 -20
  277. package/src/components/SideNavigation/Separator/index.ts +0 -1
  278. package/src/components/SideNavigation/SideNavigation.stories.tsx +0 -69
  279. package/src/components/SideNavigation/SideNavigation.test.tsx +0 -21
  280. package/src/components/SideNavigation/SideNavigation.tsx +0 -47
  281. package/src/components/SideNavigation/index.ts +0 -5
  282. package/src/components/SideNavigation/useSideNavigation.ts +0 -36
  283. package/src/components/Steps/ProgressSteps/ProgressStep.tsx +0 -163
  284. package/src/components/Steps/ProgressSteps/ProgressSteps.tsx +0 -37
  285. package/src/components/Steps/ProgressSteps/index.ts +0 -1
  286. package/src/components/Steps/Steps.fixtures.ts +0 -11
  287. package/src/components/Steps/Steps.helpers.ts +0 -11
  288. package/src/components/Steps/Steps.stories.tsx +0 -65
  289. package/src/components/Steps/Steps.test.tsx +0 -78
  290. package/src/components/Steps/Steps.tsx +0 -53
  291. package/src/components/Steps/Steps.types.ts +0 -5
  292. package/src/components/Steps/StepsContext.ts +0 -5
  293. package/src/components/Steps/StepsStep.tsx +0 -58
  294. package/src/components/Steps/index.ts +0 -6
  295. package/src/components/Steps/useStep.test.tsx +0 -217
  296. package/src/components/Steps/useSteps.ts +0 -131
  297. package/src/components/Switch/Switch.stories.tsx +0 -65
  298. package/src/components/Switch/Switch.test.tsx +0 -60
  299. package/src/components/Switch/Switch.tsx +0 -209
  300. package/src/components/Switch/index.ts +0 -2
  301. package/src/components/Table/Selection.tsx +0 -202
  302. package/src/components/Table/Table.fixtures.ts +0 -101
  303. package/src/components/Table/Table.stories.tsx +0 -568
  304. package/src/components/Table/Table.test.tsx +0 -310
  305. package/src/components/Table/Table.tsx +0 -523
  306. package/src/components/Table/Table.types.ts +0 -93
  307. package/src/components/Table/TableSortHandle.tsx +0 -31
  308. package/src/components/Table/index.tsx +0 -2
  309. package/src/components/Table/useSortBy.test.ts +0 -96
  310. package/src/components/Table/useSortBy.ts +0 -92
  311. package/src/components/Table/useSortBy.types.ts +0 -21
  312. package/src/components/TablePagination/RowsPerPage.tsx +0 -81
  313. package/src/components/TablePagination/TablePagination.stories.tsx +0 -42
  314. package/src/components/TablePagination/TablePagination.styles.ts +0 -13
  315. package/src/components/TablePagination/TablePagination.test.tsx +0 -111
  316. package/src/components/TablePagination/TablePagination.tsx +0 -49
  317. package/src/components/TablePagination/TablePagination.types.ts +0 -69
  318. package/src/components/TablePagination/TablePaginationActions.tsx +0 -144
  319. package/src/components/TablePagination/index.ts +0 -2
  320. package/src/components/Tabs/Tabs.stories.tsx +0 -78
  321. package/src/components/Tabs/Tabs.test.tsx +0 -103
  322. package/src/components/Tabs/Tabs.tsx +0 -287
  323. package/src/components/Tabs/Tabs.types.ts +0 -7
  324. package/src/components/Tabs/TabsContext.ts +0 -10
  325. package/src/components/Tabs/index.ts +0 -2
  326. package/src/components/Tag/Tag.stories.tsx +0 -112
  327. package/src/components/Tag/Tag.test.tsx +0 -19
  328. package/src/components/Tag/Tag.tsx +0 -393
  329. package/src/components/Tag/index.ts +0 -2
  330. package/src/components/Text/Text.stories.tsx +0 -59
  331. package/src/components/Text/Text.test.tsx +0 -48
  332. package/src/components/Text/Text.tsx +0 -14
  333. package/src/components/Text/index.ts +0 -2
  334. package/src/components/TextField/TextField.stories.tsx +0 -90
  335. package/src/components/TextField/TextField.test.tsx +0 -36
  336. package/src/components/TextField/TextField.tsx +0 -244
  337. package/src/components/TextField/index.ts +0 -6
  338. package/src/components/TextField/useTextField.tsx +0 -26
  339. package/src/components/Textarea/Textarea.stories.tsx +0 -101
  340. package/src/components/Textarea/Textarea.test.tsx +0 -14
  341. package/src/components/Textarea/Textarea.tsx +0 -230
  342. package/src/components/Textarea/index.ts +0 -2
  343. package/src/components/Toast/Toast.stories.tsx +0 -50
  344. package/src/components/Toast/Toast.test.tsx +0 -24
  345. package/src/components/Toast/Toast.tsx +0 -141
  346. package/src/components/Toast/icons/close.svg +0 -3
  347. package/src/components/Toast/icons/danger.svg +0 -4
  348. package/src/components/Toast/icons/neutral.svg +0 -4
  349. package/src/components/Toast/icons/success.svg +0 -3
  350. package/src/components/Toast/icons/warning.svg +0 -4
  351. package/src/components/Toast/index.tsx +0 -2
  352. package/src/components/ToggleGroup/Toggle.test.tsx +0 -76
  353. package/src/components/ToggleGroup/Toggle.tsx +0 -158
  354. package/src/components/ToggleGroup/ToggleGroup.constants.ts +0 -16
  355. package/src/components/ToggleGroup/ToggleGroup.stories.tsx +0 -145
  356. package/src/components/ToggleGroup/ToggleGroup.test.tsx +0 -237
  357. package/src/components/ToggleGroup/ToggleGroup.tsx +0 -165
  358. package/src/components/ToggleGroup/ToggleGroup.types.ts +0 -35
  359. package/src/components/ToggleGroup/ToggleGroupContext.ts +0 -13
  360. package/src/components/ToggleGroup/index.ts +0 -3
  361. package/src/components/Tooltip/Tooltip.stories.tsx +0 -82
  362. package/src/components/Tooltip/Tooltip.test.tsx +0 -49
  363. package/src/components/Tooltip/Tooltip.tsx +0 -185
  364. package/src/components/Tooltip/index.ts +0 -2
  365. package/src/components/TopNavigation/Logo/Logo.test.tsx +0 -21
  366. package/src/components/TopNavigation/Logo/Logo.tsx +0 -20
  367. package/src/components/TopNavigation/Logo/index.ts +0 -1
  368. package/src/components/TopNavigation/Menu/Menu.test.tsx +0 -125
  369. package/src/components/TopNavigation/Menu/Menu.tsx +0 -62
  370. package/src/components/TopNavigation/Menu/MenuItemDropdown.tsx +0 -118
  371. package/src/components/TopNavigation/Menu/MenuItemIcon.tsx +0 -50
  372. package/src/components/TopNavigation/Menu/index.ts +0 -1
  373. package/src/components/TopNavigation/OpenSideNavButton/OpenSideNavButton.tsx +0 -28
  374. package/src/components/TopNavigation/OpenSideNavButton/index.ts +0 -1
  375. package/src/components/TopNavigation/TopNavigation.stories.tsx +0 -42
  376. package/src/components/TopNavigation/TopNavigation.tsx +0 -47
  377. package/src/components/TopNavigation/index.ts +0 -2
  378. package/src/components/VisuallyHidden/VisuallyHidden.mdx +0 -26
  379. package/src/components/VisuallyHidden/VisuallyHidden.stories.tsx +0 -32
  380. package/src/components/VisuallyHidden/VisuallyHidden.test.tsx +0 -18
  381. package/src/components/VisuallyHidden/VisuallyHidden.tsx +0 -6
  382. package/src/components/VisuallyHidden/index.ts +0 -1
  383. package/src/docs/tools/DatePickerEvent.stories.mdx +0 -108
  384. package/src/docs/tools/DragDropFileEvent.stories.mdx +0 -75
  385. package/src/docs/tools/conditional.stories.mdx +0 -251
  386. package/src/docs/tools/selectEvent.stories.mdx +0 -121
  387. package/src/hooks/useClickOutside/index.ts +0 -1
  388. package/src/hooks/useClickOutside/useClickOutside.test.tsx +0 -116
  389. package/src/hooks/useClickOutside/useClickOutside.ts +0 -65
  390. package/src/hooks/useDidMount/index.ts +0 -1
  391. package/src/hooks/useDidMount/useDidMount.test.tsx +0 -38
  392. package/src/hooks/useDidMount/useDidMount.ts +0 -20
  393. package/src/hooks/useFingerprint/index.ts +0 -1
  394. package/src/hooks/useFingerprint/useFingerprint.test.ts +0 -76
  395. package/src/hooks/useFingerprint/useFingerprint.ts +0 -94
  396. package/src/hooks/useFocusTrap/index.ts +0 -2
  397. package/src/hooks/useFocusTrap/useFocusTrap.stories.tsx +0 -87
  398. package/src/hooks/useFocusTrap/useFocusTrap.test.tsx +0 -129
  399. package/src/hooks/useFocusTrap/useFocusTrap.ts +0 -187
  400. package/src/hooks/useFocusWithin/index.ts +0 -2
  401. package/src/hooks/useFocusWithin/useFocusWithin.test.tsx +0 -71
  402. package/src/hooks/useFocusWithin/useFocusWithin.ts +0 -62
  403. package/src/hooks/useHeightExpansionToggler/index.ts +0 -2
  404. package/src/hooks/useHeightExpansionToggler/useHeightExpansionToggler.test.tsx +0 -85
  405. package/src/hooks/useHeightExpansionToggler/useHeightExpansionToggler.ts +0 -54
  406. package/src/hooks/useID/index.ts +0 -1
  407. package/src/hooks/useID/useID.ts +0 -18
  408. package/src/hooks/useSelectable/SelectableStrategy.test.ts +0 -424
  409. package/src/hooks/useSelectable/SelectableStrategy.ts +0 -143
  410. package/src/hooks/useSelectable/index.ts +0 -8
  411. package/src/hooks/useSelectable/useSelectable.test.ts +0 -221
  412. package/src/hooks/useSelectable/useSelectable.ts +0 -156
  413. package/src/hooks/useSelectable/useSelectable.types.ts +0 -45
  414. package/src/hooks/useWindowResize/index.ts +0 -1
  415. package/src/hooks/useWindowResize/useWindowResize.ts +0 -27
  416. package/src/index.ts +0 -188
  417. package/src/stories/assets/code-brackets.svg +0 -1
  418. package/src/stories/assets/colors.svg +0 -1
  419. package/src/stories/assets/comments.svg +0 -1
  420. package/src/stories/assets/direction.svg +0 -1
  421. package/src/stories/assets/flow.svg +0 -1
  422. package/src/stories/assets/plugin.svg +0 -1
  423. package/src/stories/assets/repo.svg +0 -1
  424. package/src/stories/assets/stackalt.svg +0 -1
  425. package/src/stories/introduction.stories.mdx +0 -57
  426. package/src/stories/startPage.stories.mdx +0 -95
  427. package/src/styles/activatable.tsx +0 -30
  428. package/src/styles/disableable.tsx +0 -45
  429. package/src/styles/ellipsizable.tsx +0 -14
  430. package/src/styles/focusable.tsx +0 -32
  431. package/src/styles/font.test.ts +0 -31
  432. package/src/styles/font.tsx +0 -40
  433. package/src/styles/hidden.tsx +0 -29
  434. package/src/styles/hoverable.tsx +0 -30
  435. package/src/styles/transition.tsx +0 -25
  436. package/src/styles/typography.test.ts +0 -93
  437. package/src/styles/typography.ts +0 -190
  438. package/src/testing/DatePickerEvent/DatePickerEvent.ts +0 -117
  439. package/src/testing/DatePickerEvent/DateRangePickerEvent.ts +0 -83
  440. package/src/testing/DatePickerEvent/index.ts +0 -2
  441. package/src/testing/DragDropFileEvent/DragDropFileEvent.ts +0 -56
  442. package/src/testing/DragDropFileEvent/index.ts +0 -1
  443. package/src/testing/SelectEvent/SelectEvent.test.tsx +0 -192
  444. package/src/testing/SelectEvent/SelectEvent.ts +0 -264
  445. package/src/testing/SelectEvent/index.ts +0 -1
  446. package/src/testing/getInterpolatedStyles/getInterpolatedStyles.ts +0 -25
  447. package/src/testing/getInterpolatedStyles/index.ts +0 -1
  448. package/src/testing/index.ts +0 -6
  449. package/src/testing/renderWithDragDropFileProvider/index.ts +0 -1
  450. package/src/testing/renderWithDragDropFileProvider/renderWithDragDropFileProvider.tsx +0 -28
  451. package/src/tests/generator.ts +0 -127
  452. package/src/tests/renderer.tsx +0 -39
  453. package/src/theming/index.ts +0 -42
  454. package/src/theming/themes/alice.theme.ts +0 -1022
  455. package/src/theming/themes/index.ts +0 -3
  456. package/src/theming/themes/loadsmart.theme.ts +0 -1019
  457. package/src/theming/themes/miranda-compatibility.theme.ts +0 -972
  458. package/src/theming/theming.helpers.ts +0 -95
  459. package/src/tools/conditional.test.ts +0 -166
  460. package/src/tools/conditional.ts +0 -127
  461. package/src/tools/index.ts +0 -2
  462. package/src/tools/prop.test.ts +0 -52
  463. package/src/tools/prop.ts +0 -36
  464. package/src/utils/toolset/awaitTo.ts +0 -24
  465. package/src/utils/toolset/flatten.ts +0 -3
  466. package/src/utils/toolset/formatBytes.test.ts +0 -45
  467. package/src/utils/toolset/formatBytes.ts +0 -18
  468. package/src/utils/toolset/get.ts +0 -2
  469. package/src/utils/toolset/getID.test.ts +0 -57
  470. package/src/utils/toolset/getID.ts +0 -93
  471. package/src/utils/toolset/getOrdinalSuffix.test.ts +0 -27
  472. package/src/utils/toolset/getOrdinalSuffix.ts +0 -15
  473. package/src/utils/toolset/highlightMatch.test.tsx +0 -32
  474. package/src/utils/toolset/highlightMatch.tsx +0 -32
  475. package/src/utils/toolset/interleave.test.ts +0 -40
  476. package/src/utils/toolset/interleave.ts +0 -23
  477. package/src/utils/toolset/isEmpty.ts +0 -2
  478. package/src/utils/toolset/isThenable.test.ts +0 -40
  479. package/src/utils/toolset/isThenable.ts +0 -14
  480. package/src/utils/toolset/keyboard.ts +0 -50
  481. package/src/utils/toolset/omit.ts +0 -2
  482. package/src/utils/toolset/pluralize.ts +0 -16
  483. package/src/utils/toolset/range.ts +0 -2
  484. package/src/utils/toolset/rem.ts +0 -7
  485. package/src/utils/toolset/styledCompounds.ts +0 -22
  486. package/src/utils/toolset/toArray.ts +0 -16
  487. package/src/utils/types/ColorScheme.ts +0 -3
  488. package/src/utils/types/EventLike.ts +0 -11
  489. package/src/utils/types/InterpolatedStyle.ts +0 -3
  490. 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'