@dxc-technology/halstack-react 0.0.0-099fc65 → 0.0.0-0ab346a

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 (432) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +6 -26
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.d.ts +1 -1
  8. package/accordion/Accordion.js +105 -194
  9. package/accordion/Accordion.stories.tsx +251 -0
  10. package/accordion/Accordion.test.js +56 -0
  11. package/accordion/types.d.ts +12 -23
  12. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  13. package/accordion-group/AccordionGroup.d.ts +3 -3
  14. package/accordion-group/AccordionGroup.js +39 -108
  15. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  16. package/accordion-group/AccordionGroup.test.js +98 -0
  17. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  18. package/accordion-group/AccordionGroupAccordion.js +31 -0
  19. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  20. package/accordion-group/AccordionGroupContext.js +8 -0
  21. package/accordion-group/types.d.ts +18 -23
  22. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  23. package/action-icon/ActionIcon.d.ts +4 -0
  24. package/action-icon/ActionIcon.js +48 -0
  25. package/action-icon/ActionIcon.stories.tsx +41 -0
  26. package/action-icon/ActionIcon.test.js +64 -0
  27. package/action-icon/types.d.ts +26 -0
  28. package/alert/Alert.accessibility.test.js +95 -0
  29. package/alert/Alert.js +36 -126
  30. package/alert/Alert.stories.tsx +28 -0
  31. package/alert/Alert.test.js +75 -0
  32. package/alert/types.d.ts +5 -5
  33. package/badge/Badge.accessibility.test.js +129 -0
  34. package/badge/Badge.d.ts +4 -0
  35. package/badge/Badge.js +142 -40
  36. package/badge/Badge.stories.tsx +210 -0
  37. package/badge/Badge.test.js +30 -0
  38. package/badge/types.d.ts +54 -0
  39. package/bleed/Bleed.d.ts +3 -0
  40. package/bleed/Bleed.js +43 -0
  41. package/bleed/Bleed.stories.tsx +342 -0
  42. package/bleed/types.d.ts +37 -0
  43. package/box/Box.accessibility.test.js +33 -0
  44. package/box/Box.d.ts +1 -1
  45. package/box/Box.js +31 -82
  46. package/box/Box.stories.tsx +38 -51
  47. package/box/Box.test.js +13 -0
  48. package/box/types.d.ts +3 -14
  49. package/bulleted-list/BulletedList.accessibility.test.js +107 -0
  50. package/bulleted-list/BulletedList.d.ts +7 -0
  51. package/bulleted-list/BulletedList.js +92 -0
  52. package/bulleted-list/BulletedList.stories.tsx +115 -0
  53. package/bulleted-list/types.d.ts +38 -0
  54. package/bulleted-list/types.js +5 -0
  55. package/button/Button.accessibility.test.js +127 -0
  56. package/button/Button.d.ts +1 -1
  57. package/button/Button.js +65 -123
  58. package/button/Button.stories.tsx +155 -106
  59. package/button/Button.test.js +38 -0
  60. package/button/types.d.ts +12 -12
  61. package/card/Card.accessibility.test.js +36 -0
  62. package/card/Card.d.ts +1 -1
  63. package/card/Card.js +59 -103
  64. package/card/Card.stories.tsx +13 -43
  65. package/card/Card.test.js +39 -0
  66. package/card/types.d.ts +6 -11
  67. package/checkbox/Checkbox.accessibility.test.js +87 -0
  68. package/checkbox/Checkbox.d.ts +2 -2
  69. package/checkbox/Checkbox.js +145 -183
  70. package/checkbox/Checkbox.stories.tsx +166 -136
  71. package/checkbox/Checkbox.test.js +199 -0
  72. package/checkbox/types.d.ts +19 -7
  73. package/chip/Chip.accessibility.test.js +67 -0
  74. package/chip/Chip.d.ts +1 -1
  75. package/chip/Chip.js +49 -124
  76. package/chip/Chip.stories.tsx +104 -30
  77. package/chip/Chip.test.js +41 -0
  78. package/chip/types.d.ts +10 -18
  79. package/common/coreTokens.d.ts +237 -0
  80. package/common/coreTokens.js +184 -0
  81. package/common/utils.d.ts +1 -0
  82. package/common/utils.js +6 -12
  83. package/common/variables.d.ts +1395 -0
  84. package/common/variables.js +1034 -1345
  85. package/container/Container.d.ts +4 -0
  86. package/container/Container.js +194 -0
  87. package/container/Container.stories.tsx +214 -0
  88. package/container/types.d.ts +74 -0
  89. package/container/types.js +5 -0
  90. package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
  91. package/contextual-menu/ContextualMenu.d.ts +7 -0
  92. package/contextual-menu/ContextualMenu.js +71 -0
  93. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  94. package/contextual-menu/ContextualMenu.test.js +71 -0
  95. package/contextual-menu/MenuItemAction.d.ts +4 -0
  96. package/contextual-menu/MenuItemAction.js +46 -0
  97. package/contextual-menu/types.d.ts +22 -0
  98. package/contextual-menu/types.js +5 -0
  99. package/date-input/Calendar.d.ts +4 -0
  100. package/date-input/Calendar.js +214 -0
  101. package/date-input/DateInput.accessibility.test.js +216 -0
  102. package/date-input/DateInput.js +175 -313
  103. package/date-input/DateInput.stories.tsx +203 -56
  104. package/date-input/DateInput.test.js +808 -0
  105. package/date-input/DatePicker.d.ts +4 -0
  106. package/date-input/DatePicker.js +115 -0
  107. package/date-input/Icons.d.ts +6 -0
  108. package/date-input/Icons.js +58 -0
  109. package/date-input/YearPicker.d.ts +4 -0
  110. package/date-input/YearPicker.js +100 -0
  111. package/date-input/types.d.ts +86 -22
  112. package/dialog/Dialog.accessibility.test.js +69 -0
  113. package/dialog/Dialog.d.ts +1 -1
  114. package/dialog/Dialog.js +69 -130
  115. package/dialog/Dialog.stories.tsx +320 -167
  116. package/dialog/Dialog.test.js +307 -0
  117. package/dialog/types.d.ts +18 -25
  118. package/divider/Divider.accessibility.test.js +33 -0
  119. package/divider/Divider.d.ts +4 -0
  120. package/divider/Divider.js +36 -0
  121. package/divider/Divider.stories.tsx +223 -0
  122. package/divider/Divider.test.js +38 -0
  123. package/divider/types.d.ts +21 -0
  124. package/divider/types.js +5 -0
  125. package/dropdown/Dropdown.accessibility.test.js +180 -0
  126. package/dropdown/Dropdown.d.ts +1 -1
  127. package/dropdown/Dropdown.js +232 -330
  128. package/dropdown/Dropdown.stories.tsx +427 -0
  129. package/dropdown/Dropdown.test.js +599 -0
  130. package/dropdown/DropdownMenu.d.ts +4 -0
  131. package/dropdown/DropdownMenu.js +63 -0
  132. package/dropdown/DropdownMenuItem.d.ts +4 -0
  133. package/dropdown/DropdownMenuItem.js +70 -0
  134. package/dropdown/types.d.ts +37 -30
  135. package/file-input/FileInput.accessibility.test.js +160 -0
  136. package/file-input/FileInput.d.ts +2 -2
  137. package/file-input/FileInput.js +267 -335
  138. package/file-input/FileInput.stories.tsx +618 -0
  139. package/file-input/FileInput.test.js +382 -0
  140. package/file-input/FileItem.d.ts +4 -14
  141. package/file-input/FileItem.js +59 -122
  142. package/file-input/types.d.ts +53 -11
  143. package/flex/Flex.d.ts +4 -0
  144. package/flex/Flex.js +57 -0
  145. package/flex/Flex.stories.tsx +112 -0
  146. package/flex/types.d.ts +97 -0
  147. package/flex/types.js +5 -0
  148. package/footer/Footer.accessibility.test.js +117 -0
  149. package/footer/Footer.d.ts +1 -1
  150. package/footer/Footer.js +74 -200
  151. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +84 -39
  152. package/footer/Footer.test.js +85 -0
  153. package/footer/Icons.d.ts +3 -0
  154. package/footer/Icons.js +67 -8
  155. package/footer/types.d.ts +26 -31
  156. package/grid/Grid.d.ts +7 -0
  157. package/grid/Grid.js +76 -0
  158. package/grid/Grid.stories.tsx +219 -0
  159. package/grid/types.d.ts +115 -0
  160. package/grid/types.js +5 -0
  161. package/header/Header.accessibility.test.js +84 -0
  162. package/header/Header.d.ts +4 -3
  163. package/header/Header.js +103 -218
  164. package/header/Header.stories.tsx +152 -63
  165. package/header/Header.test.js +66 -0
  166. package/header/Icons.d.ts +2 -0
  167. package/header/Icons.js +4 -9
  168. package/header/types.d.ts +7 -21
  169. package/heading/Heading.accessibility.test.js +33 -0
  170. package/heading/Heading.js +11 -33
  171. package/heading/Heading.stories.tsx +3 -2
  172. package/heading/Heading.test.js +169 -0
  173. package/heading/types.d.ts +7 -7
  174. package/icon/Icon.accessibility.test.js +30 -0
  175. package/icon/Icon.d.ts +4 -0
  176. package/icon/Icon.js +33 -0
  177. package/icon/Icon.stories.tsx +28 -0
  178. package/icon/types.d.ts +4 -0
  179. package/icon/types.js +5 -0
  180. package/image/Image.accessibility.test.js +56 -0
  181. package/image/Image.d.ts +4 -0
  182. package/image/Image.js +70 -0
  183. package/image/Image.stories.tsx +129 -0
  184. package/image/types.d.ts +72 -0
  185. package/image/types.js +5 -0
  186. package/inset/Inset.d.ts +3 -0
  187. package/inset/Inset.js +43 -0
  188. package/inset/Inset.stories.tsx +230 -0
  189. package/inset/types.d.ts +37 -0
  190. package/inset/types.js +5 -0
  191. package/layout/ApplicationLayout.d.ts +20 -0
  192. package/layout/ApplicationLayout.js +83 -184
  193. package/layout/ApplicationLayout.stories.tsx +162 -0
  194. package/layout/Icons.d.ts +8 -0
  195. package/layout/Icons.js +49 -48
  196. package/layout/types.d.ts +41 -0
  197. package/layout/types.js +5 -0
  198. package/link/Link.accessibility.test.js +112 -0
  199. package/link/Link.d.ts +3 -2
  200. package/link/Link.js +65 -109
  201. package/link/Link.stories.tsx +159 -52
  202. package/link/Link.test.js +63 -0
  203. package/link/types.d.ts +15 -35
  204. package/main.d.ts +19 -14
  205. package/main.js +92 -98
  206. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  207. package/nav-tabs/NavTabs.d.ts +7 -0
  208. package/nav-tabs/NavTabs.js +93 -0
  209. package/nav-tabs/NavTabs.stories.tsx +279 -0
  210. package/nav-tabs/NavTabs.test.js +75 -0
  211. package/nav-tabs/NavTabsContext.d.ts +3 -0
  212. package/nav-tabs/NavTabsContext.js +8 -0
  213. package/nav-tabs/Tab.d.ts +4 -0
  214. package/nav-tabs/Tab.js +117 -0
  215. package/nav-tabs/types.d.ts +52 -0
  216. package/nav-tabs/types.js +5 -0
  217. package/number-input/NumberInput.accessibility.test.js +228 -0
  218. package/number-input/NumberInput.js +48 -48
  219. package/number-input/NumberInput.stories.tsx +44 -28
  220. package/number-input/NumberInput.test.js +989 -0
  221. package/number-input/NumberInputContext.d.ts +3 -4
  222. package/number-input/NumberInputContext.js +3 -14
  223. package/number-input/types.d.ts +34 -15
  224. package/package.json +52 -51
  225. package/paginator/Icons.d.ts +5 -0
  226. package/paginator/Icons.js +21 -47
  227. package/paginator/Paginator.accessibility.test.js +79 -0
  228. package/paginator/Paginator.js +35 -98
  229. package/paginator/Paginator.stories.tsx +24 -0
  230. package/paginator/Paginator.test.js +335 -0
  231. package/paginator/types.d.ts +3 -3
  232. package/paragraph/Paragraph.accessibility.test.js +28 -0
  233. package/paragraph/Paragraph.d.ts +5 -0
  234. package/paragraph/Paragraph.js +22 -0
  235. package/paragraph/Paragraph.stories.tsx +27 -0
  236. package/password-input/Icons.d.ts +6 -0
  237. package/password-input/Icons.js +35 -0
  238. package/password-input/PasswordInput.accessibility.test.js +153 -0
  239. package/password-input/PasswordInput.js +58 -125
  240. package/password-input/PasswordInput.stories.tsx +3 -35
  241. package/password-input/PasswordInput.test.js +198 -0
  242. package/password-input/types.d.ts +21 -17
  243. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  244. package/progress-bar/ProgressBar.js +66 -92
  245. package/progress-bar/ProgressBar.stories.tsx +93 -0
  246. package/progress-bar/ProgressBar.test.js +93 -0
  247. package/progress-bar/types.d.ts +3 -3
  248. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  249. package/quick-nav/QuickNav.d.ts +4 -0
  250. package/quick-nav/QuickNav.js +94 -0
  251. package/quick-nav/QuickNav.stories.tsx +356 -0
  252. package/quick-nav/types.d.ts +21 -0
  253. package/quick-nav/types.js +5 -0
  254. package/radio-group/Radio.d.ts +4 -0
  255. package/radio-group/Radio.js +124 -0
  256. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  257. package/radio-group/RadioGroup.d.ts +4 -0
  258. package/radio-group/RadioGroup.js +235 -0
  259. package/radio-group/RadioGroup.stories.tsx +214 -0
  260. package/radio-group/RadioGroup.test.js +756 -0
  261. package/radio-group/types.d.ts +114 -0
  262. package/radio-group/types.js +5 -0
  263. package/resultset-table/Icons.d.ts +7 -0
  264. package/resultset-table/Icons.js +47 -0
  265. package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
  266. package/resultset-table/ResultsetTable.d.ts +7 -0
  267. package/resultset-table/ResultsetTable.js +170 -0
  268. package/resultset-table/ResultsetTable.stories.tsx +401 -0
  269. package/resultset-table/ResultsetTable.test.js +381 -0
  270. package/{resultsetTable → resultset-table}/types.d.ts +45 -12
  271. package/resultset-table/types.js +5 -0
  272. package/select/Icons.d.ts +10 -0
  273. package/select/Icons.js +89 -0
  274. package/select/Listbox.d.ts +4 -0
  275. package/select/Listbox.js +143 -0
  276. package/select/Option.d.ts +4 -0
  277. package/select/Option.js +87 -0
  278. package/select/Select.accessibility.test.js +217 -0
  279. package/select/Select.d.ts +4 -0
  280. package/select/Select.js +240 -515
  281. package/select/Select.stories.tsx +602 -204
  282. package/select/Select.test.js +2370 -0
  283. package/select/types.d.ts +209 -0
  284. package/select/types.js +5 -0
  285. package/sidenav/Sidenav.accessibility.test.js +59 -0
  286. package/sidenav/Sidenav.d.ts +6 -5
  287. package/sidenav/Sidenav.js +137 -72
  288. package/sidenav/Sidenav.stories.tsx +246 -134
  289. package/sidenav/Sidenav.test.js +37 -0
  290. package/sidenav/SidenavContext.d.ts +5 -0
  291. package/sidenav/SidenavContext.js +13 -0
  292. package/sidenav/types.d.ts +52 -26
  293. package/slider/Slider.accessibility.test.js +104 -0
  294. package/slider/Slider.d.ts +2 -2
  295. package/slider/Slider.js +149 -181
  296. package/slider/Slider.test.js +254 -0
  297. package/slider/types.d.ts +11 -3
  298. package/spinner/Spinner.accessibility.test.js +96 -0
  299. package/spinner/Spinner.js +32 -76
  300. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -26
  301. package/spinner/Spinner.test.js +55 -0
  302. package/spinner/types.d.ts +3 -3
  303. package/status-light/StatusLight.accessibility.test.js +157 -0
  304. package/status-light/StatusLight.d.ts +4 -0
  305. package/status-light/StatusLight.js +51 -0
  306. package/status-light/StatusLight.stories.tsx +74 -0
  307. package/status-light/StatusLight.test.js +25 -0
  308. package/status-light/types.d.ts +17 -0
  309. package/status-light/types.js +5 -0
  310. package/switch/Switch.accessibility.test.js +89 -0
  311. package/switch/Switch.d.ts +2 -2
  312. package/switch/Switch.js +150 -115
  313. package/switch/Switch.stories.tsx +45 -68
  314. package/switch/Switch.test.js +180 -0
  315. package/switch/types.d.ts +13 -5
  316. package/table/DropdownTheme.js +62 -0
  317. package/table/Table.accessibility.test.js +82 -0
  318. package/table/Table.d.ts +6 -2
  319. package/table/Table.js +79 -36
  320. package/table/Table.stories.tsx +651 -0
  321. package/table/Table.test.js +113 -0
  322. package/table/types.d.ts +34 -6
  323. package/tabs/Tab.d.ts +4 -0
  324. package/tabs/Tab.js +116 -0
  325. package/tabs/Tabs.accessibility.test.js +56 -0
  326. package/tabs/Tabs.d.ts +1 -1
  327. package/tabs/Tabs.js +318 -147
  328. package/tabs/Tabs.stories.tsx +123 -18
  329. package/tabs/Tabs.test.js +294 -0
  330. package/tabs/types.d.ts +46 -24
  331. package/tag/Tag.accessibility.test.js +69 -0
  332. package/tag/Tag.d.ts +1 -1
  333. package/tag/Tag.js +44 -86
  334. package/tag/Tag.stories.tsx +37 -30
  335. package/tag/Tag.test.js +41 -0
  336. package/tag/types.d.ts +25 -16
  337. package/text-input/Suggestion.d.ts +4 -0
  338. package/text-input/Suggestion.js +67 -0
  339. package/text-input/Suggestions.d.ts +4 -0
  340. package/text-input/Suggestions.js +86 -0
  341. package/text-input/TextInput.accessibility.test.js +321 -0
  342. package/text-input/TextInput.js +333 -552
  343. package/text-input/TextInput.stories.tsx +280 -271
  344. package/text-input/TextInput.test.js +1756 -0
  345. package/text-input/types.d.ts +71 -25
  346. package/textarea/Textarea.accessibility.test.js +155 -0
  347. package/textarea/Textarea.d.ts +4 -0
  348. package/textarea/Textarea.js +95 -177
  349. package/textarea/Textarea.stories.tsx +174 -0
  350. package/textarea/Textarea.test.js +406 -0
  351. package/textarea/types.d.ts +141 -0
  352. package/textarea/types.js +5 -0
  353. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  354. package/toggle-group/ToggleGroup.d.ts +2 -2
  355. package/toggle-group/ToggleGroup.js +98 -113
  356. package/toggle-group/ToggleGroup.stories.tsx +79 -39
  357. package/toggle-group/ToggleGroup.test.js +137 -0
  358. package/toggle-group/types.d.ts +67 -37
  359. package/typography/Typography.accessibility.test.js +339 -0
  360. package/typography/Typography.d.ts +4 -0
  361. package/typography/Typography.js +23 -0
  362. package/typography/Typography.stories.tsx +198 -0
  363. package/typography/types.d.ts +18 -0
  364. package/typography/types.js +5 -0
  365. package/useTheme.d.ts +1148 -0
  366. package/useTheme.js +4 -11
  367. package/useTranslatedLabels.d.ts +85 -0
  368. package/useTranslatedLabels.js +14 -0
  369. package/utils/BaseTypography.d.ts +21 -0
  370. package/utils/BaseTypography.js +94 -0
  371. package/utils/FocusLock.d.ts +13 -0
  372. package/utils/FocusLock.js +124 -0
  373. package/wizard/Wizard.accessibility.test.js +55 -0
  374. package/wizard/Wizard.d.ts +1 -1
  375. package/wizard/Wizard.js +123 -104
  376. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
  377. package/wizard/Wizard.test.js +114 -0
  378. package/wizard/types.d.ts +15 -15
  379. package/ThemeContext.js +0 -246
  380. package/V3Select/V3Select.js +0 -455
  381. package/V3Select/index.d.ts +0 -27
  382. package/V3Textarea/V3Textarea.js +0 -260
  383. package/V3Textarea/index.d.ts +0 -27
  384. package/card/ice-cream.jpg +0 -0
  385. package/common/OpenSans.css +0 -81
  386. package/common/RequiredComponent.js +0 -32
  387. package/common/fonts/OpenSans-Bold.ttf +0 -0
  388. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  389. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  390. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  391. package/common/fonts/OpenSans-Italic.ttf +0 -0
  392. package/common/fonts/OpenSans-Light.ttf +0 -0
  393. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  394. package/common/fonts/OpenSans-Regular.ttf +0 -0
  395. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  396. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  397. package/date/Date.js +0 -373
  398. package/date/index.d.ts +0 -27
  399. package/input-text/Icons.js +0 -22
  400. package/input-text/InputText.js +0 -611
  401. package/input-text/index.d.ts +0 -36
  402. package/number-input/numberInputContextTypes.d.ts +0 -19
  403. package/progress-bar/ProgressBar.stories.jsx +0 -58
  404. package/radio/Radio.d.ts +0 -4
  405. package/radio/Radio.js +0 -174
  406. package/radio/Radio.stories.tsx +0 -192
  407. package/radio/types.d.ts +0 -54
  408. package/resultsetTable/ResultsetTable.d.ts +0 -4
  409. package/resultsetTable/ResultsetTable.js +0 -251
  410. package/select/index.d.ts +0 -131
  411. package/slider/Slider.stories.tsx +0 -177
  412. package/table/Table.stories.jsx +0 -276
  413. package/textarea/Textarea.stories.jsx +0 -135
  414. package/textarea/index.d.ts +0 -127
  415. package/toggle/Toggle.js +0 -186
  416. package/toggle/index.d.ts +0 -21
  417. package/upload/Upload.js +0 -201
  418. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  419. package/upload/buttons-upload/Icons.js +0 -40
  420. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  421. package/upload/dragAndDropArea/Icons.js +0 -39
  422. package/upload/file-upload/FileToUpload.js +0 -115
  423. package/upload/file-upload/Icons.js +0 -66
  424. package/upload/files-upload/FilesToUpload.js +0 -109
  425. package/upload/index.d.ts +0 -15
  426. package/upload/transaction/Icons.js +0 -160
  427. package/upload/transaction/Transaction.js +0 -104
  428. package/upload/transactions/Transactions.js +0 -94
  429. package/wizard/Icons.js +0 -65
  430. /package/{radio → action-icon}/types.js +0 -0
  431. /package/{resultsetTable → badge}/types.js +0 -0
  432. /package/{number-input/numberInputContextTypes.js → bleed/types.js} +0 -0
package/footer/Icons.js CHANGED
@@ -1,18 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports["default"] = void 0;
9
-
7
+ exports.dxcSmallLogo = exports.dxcLogo = void 0;
10
8
  var _react = _interopRequireDefault(require("react"));
11
-
12
- var _default = /*#__PURE__*/_react["default"].createElement("svg", {
9
+ var dxcLogo = exports.dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
13
10
  id: "g10",
14
11
  xmlns: "http://www.w3.org/2000/svg",
15
- width: "280.781",
12
+ width: "100%",
16
13
  height: "32",
17
14
  viewBox: "0 0 280.781 32"
18
15
  }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
@@ -73,5 +70,67 @@ var _default = /*#__PURE__*/_react["default"].createElement("svg", {
73
70
  transform: "translate(-21.08 69.298)",
74
71
  fill: "#fff"
75
72
  })));
76
-
77
- exports["default"] = _default;
73
+ var dxcSmallLogo = exports.dxcSmallLogo = /*#__PURE__*/_react["default"].createElement("svg", {
74
+ id: "g10",
75
+ xmlns: "http://www.w3.org/2000/svg",
76
+ width: "100%",
77
+ height: "16",
78
+ viewBox: "0 0 280.781 32"
79
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
80
+ id: "g12"
81
+ }, /*#__PURE__*/_react["default"].createElement("path", {
82
+ id: "path14",
83
+ d: "M171.5-54.124v12.539h-3.6V-54.124h-4.973v-3.191h13.54v3.191H171.5",
84
+ transform: "translate(-68.528 65.45)",
85
+ fill: "#fff"
86
+ }), /*#__PURE__*/_react["default"].createElement("path", {
87
+ id: "path16",
88
+ d: "M189.96-41.585V-57.315h12.326v3.079h-8.753v3.191h7.7v3.078h-7.7v3.3h8.87v3.078H189.96",
89
+ transform: "translate(-77.56 65.45)",
90
+ fill: "#fff"
91
+ }), /*#__PURE__*/_react["default"].createElement("path", {
92
+ id: "path18",
93
+ d: "M223.558-41.438a8.1,8.1,0,0,1-8.382-8.1v-.045a8.161,8.161,0,0,1,8.522-8.146,8.6,8.6,0,0,1,6.444,2.431l-2.289,2.543a6.133,6.133,0,0,0-4.178-1.778,4.743,4.743,0,0,0-4.738,4.905v.045a4.752,4.752,0,0,0,4.738,4.95,6,6,0,0,0,4.295-1.845l2.288,2.228a8.491,8.491,0,0,1-6.7,2.813",
94
+ transform: "translate(-86.019 65.583)",
95
+ fill: "#fff"
96
+ }), /*#__PURE__*/_react["default"].createElement("path", {
97
+ id: "path20",
98
+ d: "M254.988-41.585V-47.9h-6.63v6.315h-3.6V-57.315h3.6v6.225h6.63v-6.225h3.594v15.731h-3.594",
99
+ transform: "translate(-95.903 65.45)",
100
+ fill: "#fff"
101
+ }), /*#__PURE__*/_react["default"].createElement("path", {
102
+ id: "path22",
103
+ d: "M285.991-41.585l-7.914-10v10h-3.549V-57.315h3.316l7.657,9.685v-9.685h3.549v15.731h-3.058",
104
+ transform: "translate(-105.869 65.45)",
105
+ fill: "#fff"
106
+ }), /*#__PURE__*/_react["default"].createElement("path", {
107
+ id: "path24",
108
+ d: "M317.2-49.583a4.869,4.869,0,0,0-4.949-4.95,4.793,4.793,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.793,4.793,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.661-3.623-8.661-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.66,3.623,8.66,8.1v.045c0,4.477-3.664,8.145-8.708,8.145",
109
+ transform: "translate(-115.631 65.583)",
110
+ fill: "#fff"
111
+ }), /*#__PURE__*/_react["default"].createElement("path", {
112
+ id: "path26",
113
+ d: "M336.786-41.585V-57.315h3.6v12.584h8.148v3.146H336.786",
114
+ transform: "translate(-126.654 65.45)",
115
+ fill: "#fff"
116
+ }), /*#__PURE__*/_react["default"].createElement("path", {
117
+ id: "path28",
118
+ d: "M372.78-49.583a4.87,4.87,0,0,0-4.949-4.95,4.794,4.794,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.794,4.794,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.662-3.623-8.662-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.661,3.623,8.661,8.1v.045c0,4.477-3.666,8.145-8.708,8.145",
119
+ transform: "translate(-135.016 65.583)",
120
+ fill: "#fff"
121
+ }), /*#__PURE__*/_react["default"].createElement("path", {
122
+ id: "path30",
123
+ d: "M399.735-41.438c-5.09,0-8.592-3.443-8.592-8.1v-.045a8.243,8.243,0,0,1,8.568-8.146,9.18,9.18,0,0,1,6.42,2.16l-2.265,2.634a6.141,6.141,0,0,0-4.272-1.6,4.807,4.807,0,0,0-4.692,4.905v.045a4.8,4.8,0,0,0,4.949,4.995,5.89,5.89,0,0,0,3.384-.945v-2.25h-3.618v-2.992h7.1v6.841a10.837,10.837,0,0,1-6.98,2.5",
124
+ transform: "translate(-145.284 65.583)",
125
+ fill: "#fff"
126
+ }), /*#__PURE__*/_react["default"].createElement("path", {
127
+ id: "path32",
128
+ d: "M428.664-47.855v6.27h-3.6v-6.2l-6.28-9.528h4.2L426.89-51l3.968-6.315h4.085l-6.28,9.46",
129
+ transform: "translate(-154.162 65.45)",
130
+ fill: "#fff"
131
+ }), /*#__PURE__*/_react["default"].createElement("path", {
132
+ id: "path34",
133
+ d: "M84.218-55.737a10.063,10.063,0,0,1,2.589-4.4,9.792,9.792,0,0,1,6.985-2.77h11.328V-69.3H93.792a17.041,17.041,0,0,0-11.8,4.759,16.344,16.344,0,0,0-3.547,5.115,13.247,13.247,0,0,0-1.122,3.688Zm0,4.877a10.065,10.065,0,0,0,2.589,4.4,9.793,9.793,0,0,0,6.985,2.77h11.328V-37.3H93.792a17.042,17.042,0,0,1-11.8-4.759,16.339,16.339,0,0,1-3.547-5.114,13.251,13.251,0,0,1-1.122-3.688ZM63.1-47.98,54.45-37.3H45.873l12.957-16-12.957-16H54.45L63.1-58.619l8.65-10.68h8.578l-12.957,16,12.957,16H71.749ZM48.875-55.737a13.212,13.212,0,0,0-1.122-3.688,16.359,16.359,0,0,0-3.546-5.115,17.043,17.043,0,0,0-11.8-4.759H21.08v6.393H32.408a9.79,9.79,0,0,1,6.985,2.77,10.072,10.072,0,0,1,2.59,4.4Zm0,4.877a13.215,13.215,0,0,1-1.122,3.688,16.353,16.353,0,0,1-3.546,5.114,17.044,17.044,0,0,1-11.8,4.759H21.08v-6.393H32.408a9.791,9.791,0,0,0,6.985-2.77,10.074,10.074,0,0,0,2.59-4.4h6.892",
134
+ transform: "translate(-21.08 69.298)",
135
+ fill: "#fff"
136
+ })));
package/footer/types.d.ts CHANGED
@@ -1,37 +1,31 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Size = {
4
- top?: Space;
5
- bottom?: Space;
6
- left?: Space;
7
- right?: Space;
8
- };
9
- declare type SVG = React.SVGProps<SVGSVGElement> | React.FunctionComponent<React.SVGProps<SVGSVGElement>>;
10
- declare type SocialLink = {
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
4
+ type SocialLink = {
11
5
  /**
12
- * Element used as the icon for the link.
6
+ * URL of the page the link goes to.
13
7
  */
14
- logo?: SVG;
8
+ href: string;
15
9
  /**
16
- * @deprecated The path of an icon for the link.
10
+ * Material Symbol name or SVG element as the icon used for the link.
17
11
  */
18
- logoSrc?: string;
12
+ logo: string | SVG;
19
13
  /**
20
- * URL of the page the link goes to.
14
+ * Value for the HTML properties title and aria-label.
21
15
  */
22
- href?: string;
16
+ title: string;
23
17
  };
24
- declare type BottomLink = {
18
+ type BottomLink = {
25
19
  /**
26
- * Text for the link.
20
+ * URL of the page the link goes to.
27
21
  */
28
- text?: string;
22
+ href: string;
29
23
  /**
30
- * URL of the page the link goes to.
24
+ * Text for the link.
31
25
  */
32
- href?: string;
26
+ text: string;
33
27
  };
34
- declare type FooterPropsType = {
28
+ type FooterPropsType = {
35
29
  /**
36
30
  * An array of objects representing the links that will be rendered as
37
31
  * icons at the top-right side of the footer.
@@ -42,28 +36,29 @@ declare type FooterPropsType = {
42
36
  * the bottom part of the footer.
43
37
  */
44
38
  bottomLinks?: BottomLink[];
39
+ /**
40
+ * The text that will be displayed as copyright disclaimer.
41
+ */
42
+ copyright?: string;
45
43
  /**
46
44
  * The center section of the footer. Can be used to render custom
47
45
  * content in this area.
48
46
  */
49
47
  children?: React.ReactNode;
50
48
  /**
51
- * The text that will be displayed as copyright disclaimer.
49
+ * Size of the top margin to be applied to the footer.
52
50
  */
53
- copyright?: string;
51
+ margin?: Space;
54
52
  /**
55
- * Value of the tabindex for all interactuable elements, except those
53
+ * Value of the tabindex for all interactive elements, except those
56
54
  * inside the custom area.
57
55
  */
58
56
  tabIndex?: number;
59
57
  /**
60
- * Size of the top margin to be applied to the footer.
61
- */
62
- margin?: Space | Size;
63
- /**
64
- * Size of the padding to be applied to the custom area of the component.
65
- * You can pass an object with properties in order to specify different padding sizes.
58
+ * Determines the visual style and layout
59
+ * - "default": The default mode with full content and styling.
60
+ * - "reduced": A reduced mode with minimal content and styling.
66
61
  */
67
- padding?: Space | Size;
62
+ mode?: "default" | "reduced";
68
63
  };
69
64
  export default FooterPropsType;
package/grid/Grid.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import GridPropsType, { GridItemProps } from "./types";
3
+ declare const DxcGrid: {
4
+ (props: GridPropsType): JSX.Element;
5
+ Item: import("styled-components").StyledComponent<"div", any, GridItemProps, never>;
6
+ };
7
+ export default DxcGrid;
package/grid/Grid.js ADDED
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
11
+ var _templateObject, _templateObject2;
12
+ var DxcGrid = function DxcGrid(props) {
13
+ return /*#__PURE__*/_react["default"].createElement(Grid, props);
14
+ };
15
+ var Grid = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n ", "\n \n ", "\n ", "\n ", "\n ", "\n"])), function (_ref) {
16
+ var templateColumns = _ref.templateColumns;
17
+ return templateColumns && "grid-template-columns: ".concat(templateColumns.join(" "), ";");
18
+ }, function (_ref2) {
19
+ var templateRows = _ref2.templateRows;
20
+ return templateRows && "grid-template-rows: ".concat(templateRows.join(" "), ";");
21
+ }, function (_ref3) {
22
+ var templateAreas = _ref3.templateAreas;
23
+ return templateAreas && "grid-template-areas: ".concat(templateAreas.map(function (row) {
24
+ return "\"".concat(row, "\"");
25
+ }).join(" "), ";");
26
+ }, function (_ref4) {
27
+ var autoColumns = _ref4.autoColumns;
28
+ return autoColumns && "grid-auto-columns: ".concat(autoColumns, ";");
29
+ }, function (_ref5) {
30
+ var autoRows = _ref5.autoRows;
31
+ return autoRows && "grid-auto-rows: ".concat(autoRows, ";");
32
+ }, function (_ref6) {
33
+ var autoFlow = _ref6.autoFlow;
34
+ return autoFlow && "grid-auto-flow: ".concat(autoFlow, ";");
35
+ }, function (_ref7) {
36
+ var _gap$rowGap, _gap$columnGap;
37
+ var gap = _ref7.gap;
38
+ return gap != null && (typeof gap === "string" ? "gap: ".concat(gap, ";") : "row-gap: ".concat((_gap$rowGap = gap.rowGap) !== null && _gap$rowGap !== void 0 ? _gap$rowGap : "", "; column-gap: ").concat((_gap$columnGap = gap.columnGap) !== null && _gap$columnGap !== void 0 ? _gap$columnGap : "", ";"));
39
+ }, function (_ref8) {
40
+ var _placeItems$alignItem, _placeItems$justifyIt;
41
+ var placeItems = _ref8.placeItems;
42
+ return placeItems && (typeof placeItems === "string" ? "place-items: ".concat(placeItems) : "align-items: ".concat((_placeItems$alignItem = placeItems.alignItems) !== null && _placeItems$alignItem !== void 0 ? _placeItems$alignItem : "", "; justify-items: ").concat((_placeItems$justifyIt = placeItems.justifyItems) !== null && _placeItems$justifyIt !== void 0 ? _placeItems$justifyIt : "", ";"));
43
+ }, function (_ref9) {
44
+ var _placeContent$alignCo, _placeContent$justify;
45
+ var placeContent = _ref9.placeContent;
46
+ return placeContent && (typeof placeContent === "string" ? "place-content: ".concat(placeContent) : "align-content: ".concat((_placeContent$alignCo = placeContent.alignContent) !== null && _placeContent$alignCo !== void 0 ? _placeContent$alignCo : "", "; justify-content: ").concat((_placeContent$justify = placeContent.justifyContent) !== null && _placeContent$justify !== void 0 ? _placeContent$justify : "", ";"));
47
+ }, function (_ref10) {
48
+ var areaName = _ref10.areaName;
49
+ return areaName && "grid-area: ".concat(areaName, ";");
50
+ }, function (_ref11) {
51
+ var column = _ref11.column;
52
+ return column && "grid-column: ".concat(typeof column === "string" || typeof column === "number" ? column : "".concat(column.start, " / ").concat(column.end, ";"), ";");
53
+ }, function (_ref12) {
54
+ var row = _ref12.row;
55
+ return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
56
+ }, function (_ref13) {
57
+ var _placeSelf$alignSelf, _placeSelf$justifySel;
58
+ var placeSelf = _ref13.placeSelf;
59
+ return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf = placeSelf.alignSelf) !== null && _placeSelf$alignSelf !== void 0 ? _placeSelf$alignSelf : "", "; justify-self: ").concat((_placeSelf$justifySel = placeSelf.justifySelf) !== null && _placeSelf$justifySel !== void 0 ? _placeSelf$justifySel : "", ";"));
60
+ });
61
+ var GridItem = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n ", "\n ", "\n ", "\n"])), function (_ref14) {
62
+ var areaName = _ref14.areaName;
63
+ return areaName && "grid-area: ".concat(areaName, ";");
64
+ }, function (_ref15) {
65
+ var column = _ref15.column;
66
+ return column && "grid-column: ".concat(typeof column === "string" || typeof column === "number" ? column : "".concat(column.start, " / ").concat(column.end, ";"), ";");
67
+ }, function (_ref16) {
68
+ var row = _ref16.row;
69
+ return row && "grid-row: ".concat(typeof row === "string" || typeof row === "number" ? row : "".concat(row.start, " / ").concat(row.end, ";"), ";");
70
+ }, function (_ref17) {
71
+ var _placeSelf$alignSelf2, _placeSelf$justifySel2;
72
+ var placeSelf = _ref17.placeSelf;
73
+ return placeSelf && (typeof placeSelf === "string" ? "place-self: ".concat(placeSelf) : "align-self: ".concat((_placeSelf$alignSelf2 = placeSelf.alignSelf) !== null && _placeSelf$alignSelf2 !== void 0 ? _placeSelf$alignSelf2 : "", "; justify-self: ").concat((_placeSelf$justifySel2 = placeSelf.justifySelf) !== null && _placeSelf$justifySel2 !== void 0 ? _placeSelf$justifySel2 : "", ";"));
74
+ });
75
+ DxcGrid.Item = GridItem;
76
+ var _default = exports["default"] = DxcGrid;
@@ -0,0 +1,219 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
+ import styled from "styled-components";
5
+ import DxcGrid from "./Grid";
6
+ import DxcInset from "../inset/Inset";
7
+
8
+ export default {
9
+ title: "Grid",
10
+ component: DxcGrid,
11
+ };
12
+
13
+ export const Chromatic = () => (
14
+ <>
15
+ <Title title="Default" level={4} />
16
+ <ExampleContainer>
17
+ <DxcGrid>
18
+ <ColoredContainer />
19
+ <ColoredContainer />
20
+ <ColoredContainer />
21
+ </DxcGrid>
22
+ </ExampleContainer>
23
+ <Title title="Place items" level={4} />
24
+ <ExampleContainer>
25
+ <DxcGrid templateRows={["200px"]} placeItems="center">
26
+ <ColoredContainer height="50px" width="50px" />
27
+ </DxcGrid>
28
+ <DxcGrid placeItems={{ justifyItems: "end" }}>
29
+ <ColoredContainer />
30
+ <ColoredContainer />
31
+ <ColoredContainer />
32
+ </DxcGrid>
33
+ <DxcGrid templateRows={["repeat(3, 100px)"]} placeItems={{ alignItems: "end", justifyItems: "center" }}>
34
+ <ColoredContainer height="50px" width="50px" />
35
+ <ColoredContainer height="50px" width="50px" />
36
+ <ColoredContainer height="50px" width="50px" />
37
+ </DxcGrid>
38
+ </ExampleContainer>
39
+ <Title title="Place content" level={4} />
40
+ <Container height="200px">
41
+ <DxcGrid placeContent="center">
42
+ <ColoredContainer height="50px" width="50px" />
43
+ <ColoredContainer height="50px" width="50px" />
44
+ </DxcGrid>
45
+ </Container>
46
+ <Container height="200px">
47
+ <DxcGrid placeContent={{ alignContent: "center" }}>
48
+ <ColoredContainer height="50px" width="50px" />
49
+ </DxcGrid>
50
+ </Container>
51
+ <Container height="200px">
52
+ <DxcGrid placeContent={{ alignContent: "center", justifyContent: "end" }}>
53
+ <ColoredContainer height="50px" width="50px" />
54
+ </DxcGrid>
55
+ </Container>
56
+ <Title title="Place self" level={4} />
57
+ <ExampleContainer>
58
+ <DxcGrid templateRows={["repeat(3, 100px)"]}>
59
+ <DxcGrid.Item placeSelf="center">
60
+ <ColoredContainer height="50px" width="50px" />
61
+ </DxcGrid.Item>
62
+ <DxcGrid.Item placeSelf={{ alignSelf: "end" }}>
63
+ <ColoredContainer height="40px" width="40px" />
64
+ <ColoredContainer height="30px" width="30px" />
65
+ </DxcGrid.Item>
66
+ <DxcGrid.Item placeSelf={{ alignSelf: "center", justifySelf: "end" }}>
67
+ <ColoredContainer height="50px" width="50px" />
68
+ </DxcGrid.Item>
69
+ </DxcGrid>
70
+ </ExampleContainer>
71
+ <Title title="Halstack layout using template areas" level={4} />
72
+ <ExampleContainer>
73
+ <DxcGrid
74
+ templateColumns={["repeat(4, 1fr)"]}
75
+ templateRows={["40px", "200px", "60px"]}
76
+ templateAreas={["header header header header", "sidenav main main main", "sidenav footer footer footer"]}
77
+ gap={{ rowGap: "0.5rem", columnGap: "1rem" }}
78
+ >
79
+ <DxcGrid.Item areaName="header" as="header">
80
+ <ColoredContainer height="100%" />
81
+ </DxcGrid.Item>
82
+ <DxcGrid.Item areaName="main" as="main">
83
+ <ColoredContainer height="100%" />
84
+ </DxcGrid.Item>
85
+ <DxcGrid.Item areaName="sidenav" as="nav">
86
+ <ColoredContainer height="100%" />
87
+ </DxcGrid.Item>
88
+ <DxcGrid.Item areaName="footer" as="footer">
89
+ <ColoredContainer height="100%" />
90
+ </DxcGrid.Item>
91
+ </DxcGrid>
92
+ </ExampleContainer>
93
+ <Title title="Template rows and columns with flexible sizes" level={4} />
94
+ <ExampleContainer>
95
+ <DxcGrid templateColumns={["1fr", "1fr", "1fr"]} templateRows={["1fr", "3fr", "1fr"]} gap="0.5rem">
96
+ <DxcGrid.Item column={{ start: 1, end: -1 }}>
97
+ <ColoredContainer color="yellow" height="100%">
98
+ Header
99
+ </ColoredContainer>
100
+ </DxcGrid.Item>
101
+ <DxcGrid.Item column={1}>
102
+ <ColoredContainer color="lightcyan" height="100%">
103
+ Sidenav
104
+ </ColoredContainer>
105
+ </DxcGrid.Item>
106
+ <DxcGrid
107
+ column={{ start: 2, end: -1 }}
108
+ templateRows={["repeat(4, 1fr)"]}
109
+ templateColumns={["repeat(2, 1fr)"]}
110
+ gap="1rem"
111
+ >
112
+ <ColoredContainer />
113
+ <ColoredContainer />
114
+ <ColoredContainer />
115
+ <ColoredContainer />
116
+ <ColoredContainer />
117
+ <ColoredContainer />
118
+ <ColoredContainer />
119
+ <ColoredContainer />
120
+ </DxcGrid>
121
+ <DxcGrid.Item column={{ start: 1, end: -1 }}>
122
+ <ColoredContainer color="black" height="100%">
123
+ Footer
124
+ </ColoredContainer>
125
+ </DxcGrid.Item>
126
+ </DxcGrid>
127
+ </ExampleContainer>
128
+ <Title title="Overlapping" level={4} />
129
+ <DxcInset bottom="2rem">
130
+ <ExampleContainer>
131
+ <DxcGrid templateRows={["50px", "50px"]}>
132
+ <ColoredContainer color="yellow" height="100px">
133
+ 1
134
+ </ColoredContainer>
135
+ <ColoredContainer color="transparent" height="100px">
136
+ 2
137
+ </ColoredContainer>
138
+ </DxcGrid>
139
+ </ExampleContainer>
140
+ </DxcInset>
141
+ <Title title="Implicit rows and columns" level={4} />
142
+ <ExampleContainer>
143
+ <DxcGrid templateColumns={["50px"]} templateRows={["50px", "50px"]} autoRows="50px" autoColumns="50px">
144
+ <DxcGrid.Item>
145
+ <ColoredContainer height="50px">1</ColoredContainer>
146
+ </DxcGrid.Item>
147
+ <DxcGrid.Item row={2}>
148
+ <ColoredContainer height="50px">3</ColoredContainer>
149
+ </DxcGrid.Item>
150
+ <DxcGrid.Item row={6} column={1}>
151
+ <ColoredContainer height="50px">5</ColoredContainer>
152
+ </DxcGrid.Item>
153
+ <DxcGrid.Item row={3}>
154
+ <ColoredContainer height="50px">4</ColoredContainer>
155
+ </DxcGrid.Item>
156
+ <DxcGrid.Item row={{ start: 1, end: 2 }} column={{ start: 5, end: "span 2" }}>
157
+ <ColoredContainer height="50px">2</ColoredContainer>
158
+ </DxcGrid.Item>
159
+ </DxcGrid>
160
+ </ExampleContainer>
161
+ <Title title="Autoflow 'row' (default)" level={4} />
162
+ <ExampleContainer>
163
+ <DxcGrid templateColumns={["repeat(5, 1fr)"]} templateRows={["1fr", "1fr"]} autoFlow="row" autoColumns="1fr">
164
+ <DxcGrid.Item row={{ start: 1, end: "span 2" }} column={1}>
165
+ <ColoredContainer height="100%">1</ColoredContainer>
166
+ </DxcGrid.Item>
167
+ <ColoredContainer color="lightyellow">2</ColoredContainer>
168
+ <ColoredContainer color="lightcyan">3</ColoredContainer>
169
+ <ColoredContainer color="lightgreen">4</ColoredContainer>
170
+ <DxcGrid.Item row={{ start: 1, end: -1 }} column={-2}>
171
+ <ColoredContainer color="lightpink" height="100%">
172
+ 5
173
+ </ColoredContainer>
174
+ </DxcGrid.Item>
175
+ </DxcGrid>
176
+ </ExampleContainer>
177
+ <Title title="Autoflow 'column'" level={4} />
178
+ <ExampleContainer>
179
+ <DxcGrid templateColumns={["repeat(5, 1fr)"]} templateRows={["1fr", "1fr"]} autoFlow="column" autoColumns="1fr">
180
+ <DxcGrid.Item row={{ start: 1, end: -1 }} column={1}>
181
+ <ColoredContainer height="100%">1</ColoredContainer>
182
+ </DxcGrid.Item>
183
+ <ColoredContainer color="lightyellow">2</ColoredContainer>
184
+ <ColoredContainer color="lightcyan">3</ColoredContainer>
185
+ <ColoredContainer color="lightgreen">4</ColoredContainer>
186
+ <DxcGrid.Item row={{ start: 1, end: -1 }} column={-2}>
187
+ <ColoredContainer color="lightpink" height="100%">
188
+ 5
189
+ </ColoredContainer>
190
+ </DxcGrid.Item>
191
+ </DxcGrid>
192
+ </ExampleContainer>
193
+ </>
194
+ );
195
+
196
+ const Container = styled.div<{ height?: string }>`
197
+ display: grid;
198
+ overflow: auto;
199
+ margin: 2.5rem;
200
+ ${({ height }) => height && `height: ${height}`};
201
+ `;
202
+
203
+ const ColoredContainer = styled.div<{ color?: string; width?: string; height?: string }>`
204
+ box-sizing: border-box;
205
+ display: flex;
206
+ justify-content: center;
207
+ align-items: center;
208
+ background-color: ${({ color }) => color ?? "#e5d5f6"};
209
+ padding: 1rem;
210
+ border: 1px solid #a46ede;
211
+ border-radius: 0.5rem;
212
+ font-family: Open Sans, sans-serif;
213
+ font-size: 1.5rem;
214
+ font-weight: bold;
215
+ color: #a46ede;
216
+
217
+ ${({ width }) => width && `width: ${width}`};
218
+ ${({ height }) => height && `height: ${height}`};
219
+ `;
@@ -0,0 +1,115 @@
1
+ /// <reference types="react" />
2
+ type Spaces = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
3
+ type Gap = {
4
+ rowGap: Spaces;
5
+ columnGap?: Spaces;
6
+ } | {
7
+ rowGap?: Spaces;
8
+ columnGap: Spaces;
9
+ } | Spaces;
10
+ type GridCell = {
11
+ start: number | string;
12
+ end: number | string;
13
+ };
14
+ type PlaceSelfValues = "auto" | "start" | "end" | "center" | "stretch" | "baseline";
15
+ type PlaceContentValues = "normal" | "start" | "end" | "center" | "stretch" | "space-between" | "space-around" | "space-evenly" | "baseline";
16
+ type PlaceItemsValues = "normal" | "start" | "end" | "center" | "stretch" | "baseline";
17
+ type PlaceObject<Type, Suffix extends string> = {
18
+ [Property in keyof Type as `${string & Property}${Capitalize<string & Suffix>}`]: Type[Property];
19
+ };
20
+ type PlaceGeneric<PlaceValues, Element extends string> = PlaceObject<{
21
+ justify?: PlaceValues;
22
+ align: PlaceValues;
23
+ }, Element> | PlaceObject<{
24
+ justify: PlaceValues;
25
+ align?: PlaceValues;
26
+ }, Element> | PlaceValues;
27
+ export type GridItemProps = {
28
+ /**
29
+ * Sets the name of an item so that it can be referenced by a template created with the grid-template-areas property.
30
+ */
31
+ areaName?: string;
32
+ /**
33
+ * Sets the grid-column CSS property.
34
+ *
35
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column
36
+ */
37
+ column?: number | string | GridCell;
38
+ /**
39
+ * Sets the grid-row CSS property.
40
+ *
41
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row
42
+ */
43
+ row?: number | string | GridCell;
44
+ /**
45
+ * Sets the place-self CSS property.
46
+ *
47
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/place-self
48
+ */
49
+ placeSelf?: PlaceGeneric<PlaceSelfValues, "self">;
50
+ /**
51
+ * Sets a custom HTML tag.
52
+ */
53
+ as?: keyof HTMLElementTagNameMap;
54
+ /**
55
+ * Custom content inside the grid container.
56
+ */
57
+ children: React.ReactNode;
58
+ };
59
+ type Props = GridItemProps & {
60
+ /**
61
+ * Sets the grid-auto-columns CSS property.
62
+ *
63
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-columns
64
+ */
65
+ autoColumns?: string;
66
+ /**
67
+ * Sets the grid-auto-flow CSS property.
68
+ *
69
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-flow
70
+ */
71
+ autoFlow?: "row" | "column" | "row dense" | "column dense";
72
+ /**
73
+ * Sets the grid-auto-rows CSS property.
74
+ *
75
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-rows
76
+ */
77
+ autoRows?: string;
78
+ /**
79
+ * Sets the gap CSS property.
80
+ *
81
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/gap
82
+ */
83
+ gap?: Spaces | Gap;
84
+ /**
85
+ * Sets the place-content CSS property.
86
+ *
87
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/place-content
88
+ */
89
+ placeContent?: PlaceGeneric<PlaceContentValues, "content">;
90
+ /**
91
+ * Sets the place-items CSS property.
92
+ *
93
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/place-items
94
+ */
95
+ placeItems?: PlaceGeneric<PlaceItemsValues, "items">;
96
+ /**
97
+ * Sets the grid-template-areas CSS property.
98
+ *
99
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas
100
+ */
101
+ templateAreas?: string[];
102
+ /**
103
+ * Sets the grid-template-columns CSS property.
104
+ *
105
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-columns
106
+ */
107
+ templateColumns?: string[];
108
+ /**
109
+ * Sets the grid-template-rows CSS property.
110
+ *
111
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-rows
112
+ */
113
+ templateRows?: string[];
114
+ };
115
+ export default Props;
package/grid/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });