@dxc-technology/halstack-react 0.0.0-73f82b7 → 0.0.0-74c93cf

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 (400) 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.d.ts +1 -1
  7. package/accordion/Accordion.js +105 -194
  8. package/accordion/Accordion.stories.tsx +252 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +12 -23
  11. package/accordion-group/AccordionGroup.d.ts +3 -3
  12. package/accordion-group/AccordionGroup.js +39 -108
  13. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  14. package/accordion-group/AccordionGroup.test.js +98 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  18. package/accordion-group/AccordionGroupContext.js +8 -0
  19. package/accordion-group/types.d.ts +18 -23
  20. package/action-icon/ActionIcon.d.ts +4 -0
  21. package/action-icon/ActionIcon.js +48 -0
  22. package/action-icon/ActionIcon.stories.tsx +41 -0
  23. package/action-icon/ActionIcon.test.js +64 -0
  24. package/action-icon/types.d.ts +26 -0
  25. package/alert/Alert.js +24 -60
  26. package/alert/Alert.stories.tsx +28 -0
  27. package/alert/Alert.test.js +75 -0
  28. package/alert/types.d.ts +6 -6
  29. package/badge/Badge.d.ts +4 -0
  30. package/badge/Badge.js +141 -41
  31. package/badge/Badge.stories.tsx +210 -0
  32. package/badge/Badge.test.js +30 -0
  33. package/badge/types.d.ts +54 -0
  34. package/badge/types.js +5 -0
  35. package/bleed/Bleed.d.ts +3 -0
  36. package/bleed/Bleed.js +43 -0
  37. package/bleed/Bleed.stories.tsx +342 -0
  38. package/bleed/types.d.ts +37 -0
  39. package/bleed/types.js +5 -0
  40. package/box/Box.d.ts +1 -1
  41. package/box/Box.js +32 -86
  42. package/box/Box.stories.tsx +38 -51
  43. package/box/Box.test.js +13 -0
  44. package/box/types.d.ts +3 -18
  45. package/bulleted-list/BulletedList.d.ts +7 -0
  46. package/bulleted-list/BulletedList.js +89 -0
  47. package/bulleted-list/BulletedList.stories.tsx +115 -0
  48. package/bulleted-list/types.d.ts +38 -0
  49. package/bulleted-list/types.js +5 -0
  50. package/button/Button.d.ts +1 -1
  51. package/button/Button.js +65 -121
  52. package/button/Button.stories.tsx +156 -106
  53. package/button/Button.test.js +38 -0
  54. package/button/types.d.ts +14 -14
  55. package/card/Card.d.ts +1 -1
  56. package/card/Card.js +59 -104
  57. package/card/Card.stories.tsx +171 -0
  58. package/card/Card.test.js +39 -0
  59. package/card/types.d.ts +8 -15
  60. package/checkbox/Checkbox.d.ts +2 -2
  61. package/checkbox/Checkbox.js +145 -183
  62. package/checkbox/Checkbox.stories.tsx +166 -136
  63. package/checkbox/Checkbox.test.js +199 -0
  64. package/checkbox/types.d.ts +20 -8
  65. package/chip/Chip.d.ts +4 -0
  66. package/chip/Chip.js +48 -148
  67. package/chip/Chip.stories.tsx +214 -0
  68. package/chip/Chip.test.js +41 -0
  69. package/chip/types.d.ts +45 -0
  70. package/chip/types.js +5 -0
  71. package/common/coreTokens.d.ts +237 -0
  72. package/common/coreTokens.js +184 -0
  73. package/common/utils.d.ts +1 -0
  74. package/common/utils.js +6 -12
  75. package/common/variables.d.ts +1395 -0
  76. package/common/variables.js +1034 -1344
  77. package/container/Container.d.ts +4 -0
  78. package/container/Container.js +194 -0
  79. package/container/Container.stories.tsx +214 -0
  80. package/container/types.d.ts +74 -0
  81. package/container/types.js +5 -0
  82. package/contextual-menu/ContextualMenu.d.ts +7 -0
  83. package/contextual-menu/ContextualMenu.js +71 -0
  84. package/contextual-menu/ContextualMenu.stories.tsx +182 -0
  85. package/contextual-menu/ContextualMenu.test.js +71 -0
  86. package/contextual-menu/MenuItemAction.d.ts +4 -0
  87. package/contextual-menu/MenuItemAction.js +46 -0
  88. package/contextual-menu/types.d.ts +22 -0
  89. package/contextual-menu/types.js +5 -0
  90. package/date-input/Calendar.d.ts +4 -0
  91. package/date-input/Calendar.js +214 -0
  92. package/date-input/DateInput.js +175 -313
  93. package/date-input/DateInput.stories.tsx +203 -56
  94. package/date-input/DateInput.test.js +808 -0
  95. package/date-input/DatePicker.d.ts +4 -0
  96. package/date-input/DatePicker.js +115 -0
  97. package/date-input/Icons.d.ts +6 -0
  98. package/date-input/Icons.js +58 -0
  99. package/date-input/YearPicker.d.ts +4 -0
  100. package/date-input/YearPicker.js +100 -0
  101. package/date-input/types.d.ts +86 -22
  102. package/dialog/Dialog.d.ts +1 -1
  103. package/dialog/Dialog.js +69 -130
  104. package/dialog/Dialog.stories.tsx +365 -0
  105. package/dialog/Dialog.test.js +307 -0
  106. package/dialog/types.d.ts +18 -25
  107. package/divider/Divider.d.ts +4 -0
  108. package/divider/Divider.js +36 -0
  109. package/divider/Divider.stories.tsx +223 -0
  110. package/divider/Divider.test.js +38 -0
  111. package/divider/types.d.ts +21 -0
  112. package/divider/types.js +5 -0
  113. package/dropdown/Dropdown.d.ts +1 -1
  114. package/dropdown/Dropdown.js +232 -330
  115. package/dropdown/Dropdown.stories.tsx +427 -0
  116. package/dropdown/Dropdown.test.js +599 -0
  117. package/dropdown/DropdownMenu.d.ts +4 -0
  118. package/dropdown/DropdownMenu.js +63 -0
  119. package/dropdown/DropdownMenuItem.d.ts +4 -0
  120. package/dropdown/DropdownMenuItem.js +70 -0
  121. package/dropdown/types.d.ts +38 -31
  122. package/file-input/FileInput.d.ts +4 -0
  123. package/file-input/FileInput.js +274 -327
  124. package/file-input/FileInput.stories.tsx +618 -0
  125. package/file-input/FileInput.test.js +459 -0
  126. package/file-input/FileItem.d.ts +4 -0
  127. package/file-input/FileItem.js +54 -112
  128. package/file-input/types.d.ts +129 -0
  129. package/file-input/types.js +5 -0
  130. package/flex/Flex.d.ts +4 -0
  131. package/flex/Flex.js +57 -0
  132. package/flex/Flex.stories.tsx +112 -0
  133. package/flex/types.d.ts +97 -0
  134. package/flex/types.js +5 -0
  135. package/footer/Footer.d.ts +1 -1
  136. package/footer/Footer.js +73 -201
  137. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +57 -37
  138. package/footer/Footer.test.js +85 -0
  139. package/footer/Icons.d.ts +3 -0
  140. package/footer/Icons.js +67 -8
  141. package/footer/types.d.ts +41 -38
  142. package/grid/Grid.d.ts +7 -0
  143. package/grid/Grid.js +76 -0
  144. package/grid/Grid.stories.tsx +219 -0
  145. package/grid/types.d.ts +115 -0
  146. package/grid/types.js +5 -0
  147. package/header/Header.d.ts +4 -3
  148. package/header/Header.js +100 -204
  149. package/header/Header.stories.tsx +251 -0
  150. package/header/Header.test.js +66 -0
  151. package/header/Icons.d.ts +2 -0
  152. package/header/Icons.js +4 -9
  153. package/header/types.d.ts +6 -18
  154. package/heading/Heading.d.ts +4 -0
  155. package/heading/Heading.js +16 -55
  156. package/heading/Heading.stories.tsx +54 -0
  157. package/heading/Heading.test.js +169 -0
  158. package/heading/types.d.ts +33 -0
  159. package/heading/types.js +5 -0
  160. package/icon/Icon.d.ts +4 -0
  161. package/icon/Icon.js +33 -0
  162. package/icon/Icon.stories.tsx +28 -0
  163. package/icon/types.d.ts +4 -0
  164. package/icon/types.js +5 -0
  165. package/image/Image.d.ts +4 -0
  166. package/image/Image.js +70 -0
  167. package/image/Image.stories.tsx +129 -0
  168. package/image/types.d.ts +72 -0
  169. package/image/types.js +5 -0
  170. package/inset/Inset.d.ts +3 -0
  171. package/inset/Inset.js +43 -0
  172. package/inset/Inset.stories.tsx +230 -0
  173. package/inset/types.d.ts +37 -0
  174. package/inset/types.js +5 -0
  175. package/layout/ApplicationLayout.d.ts +20 -0
  176. package/layout/ApplicationLayout.js +83 -184
  177. package/layout/ApplicationLayout.stories.tsx +162 -0
  178. package/layout/Icons.d.ts +8 -0
  179. package/layout/Icons.js +51 -48
  180. package/layout/types.d.ts +41 -0
  181. package/layout/types.js +5 -0
  182. package/link/Link.d.ts +3 -2
  183. package/link/Link.js +65 -111
  184. package/link/Link.stories.tsx +199 -16
  185. package/link/Link.test.js +63 -0
  186. package/link/types.d.ts +15 -35
  187. package/main.d.ts +19 -14
  188. package/main.js +92 -98
  189. package/nav-tabs/NavTabs.d.ts +7 -0
  190. package/nav-tabs/NavTabs.js +93 -0
  191. package/nav-tabs/NavTabs.stories.tsx +276 -0
  192. package/nav-tabs/NavTabs.test.js +76 -0
  193. package/nav-tabs/NavTabsContext.d.ts +3 -0
  194. package/nav-tabs/NavTabsContext.js +8 -0
  195. package/nav-tabs/Tab.d.ts +4 -0
  196. package/nav-tabs/Tab.js +118 -0
  197. package/nav-tabs/types.d.ts +52 -0
  198. package/nav-tabs/types.js +5 -0
  199. package/number-input/NumberInput.js +48 -48
  200. package/number-input/NumberInput.stories.tsx +44 -28
  201. package/number-input/NumberInput.test.js +989 -0
  202. package/number-input/NumberInputContext.d.ts +3 -0
  203. package/number-input/NumberInputContext.js +3 -11
  204. package/number-input/types.d.ts +34 -15
  205. package/package.json +46 -45
  206. package/paginator/Icons.d.ts +5 -0
  207. package/paginator/Icons.js +21 -47
  208. package/paginator/Paginator.js +35 -98
  209. package/paginator/Paginator.stories.tsx +24 -0
  210. package/paginator/Paginator.test.js +335 -0
  211. package/paginator/types.d.ts +3 -3
  212. package/paragraph/Paragraph.d.ts +5 -0
  213. package/paragraph/Paragraph.js +22 -0
  214. package/paragraph/Paragraph.stories.tsx +27 -0
  215. package/password-input/Icons.d.ts +6 -0
  216. package/password-input/Icons.js +35 -0
  217. package/password-input/PasswordInput.js +60 -125
  218. package/password-input/PasswordInput.stories.tsx +3 -35
  219. package/password-input/PasswordInput.test.js +198 -0
  220. package/password-input/types.d.ts +35 -24
  221. package/progress-bar/ProgressBar.js +66 -92
  222. package/progress-bar/ProgressBar.stories.tsx +93 -0
  223. package/progress-bar/ProgressBar.test.js +93 -0
  224. package/progress-bar/types.d.ts +3 -3
  225. package/quick-nav/QuickNav.d.ts +4 -0
  226. package/quick-nav/QuickNav.js +94 -0
  227. package/quick-nav/QuickNav.stories.tsx +356 -0
  228. package/quick-nav/types.d.ts +21 -0
  229. package/quick-nav/types.js +5 -0
  230. package/radio-group/Radio.d.ts +4 -0
  231. package/radio-group/Radio.js +124 -0
  232. package/radio-group/RadioGroup.d.ts +4 -0
  233. package/radio-group/RadioGroup.js +235 -0
  234. package/radio-group/RadioGroup.stories.tsx +214 -0
  235. package/radio-group/RadioGroup.test.js +756 -0
  236. package/radio-group/types.d.ts +114 -0
  237. package/radio-group/types.js +5 -0
  238. package/resultset-table/Icons.d.ts +7 -0
  239. package/resultset-table/Icons.js +47 -0
  240. package/resultset-table/ResultsetTable.d.ts +7 -0
  241. package/resultset-table/ResultsetTable.js +170 -0
  242. package/resultset-table/ResultsetTable.stories.tsx +401 -0
  243. package/resultset-table/ResultsetTable.test.js +381 -0
  244. package/resultset-table/types.d.ts +100 -0
  245. package/resultset-table/types.js +5 -0
  246. package/select/Icons.d.ts +10 -0
  247. package/select/Icons.js +89 -0
  248. package/select/Listbox.d.ts +4 -0
  249. package/select/Listbox.js +143 -0
  250. package/select/Option.d.ts +4 -0
  251. package/select/Option.js +87 -0
  252. package/select/Select.d.ts +4 -0
  253. package/select/Select.js +240 -515
  254. package/select/Select.stories.tsx +971 -0
  255. package/select/Select.test.js +2370 -0
  256. package/select/types.d.ts +209 -0
  257. package/select/types.js +5 -0
  258. package/sidenav/Icons.d.ts +7 -0
  259. package/sidenav/Icons.js +47 -0
  260. package/sidenav/Sidenav.d.ts +6 -5
  261. package/sidenav/Sidenav.js +133 -72
  262. package/sidenav/Sidenav.stories.tsx +282 -0
  263. package/sidenav/Sidenav.test.js +37 -0
  264. package/sidenav/SidenavContext.d.ts +5 -0
  265. package/sidenav/SidenavContext.js +13 -0
  266. package/sidenav/types.d.ts +52 -26
  267. package/slider/Slider.d.ts +2 -2
  268. package/slider/Slider.js +151 -183
  269. package/slider/Slider.test.js +254 -0
  270. package/slider/types.d.ts +11 -3
  271. package/spinner/Spinner.js +32 -76
  272. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -26
  273. package/spinner/Spinner.test.js +55 -0
  274. package/spinner/types.d.ts +3 -3
  275. package/status-light/StatusLight.d.ts +4 -0
  276. package/status-light/StatusLight.js +51 -0
  277. package/status-light/StatusLight.stories.tsx +74 -0
  278. package/status-light/StatusLight.test.js +25 -0
  279. package/status-light/types.d.ts +17 -0
  280. package/status-light/types.js +5 -0
  281. package/switch/Switch.d.ts +2 -2
  282. package/switch/Switch.js +150 -115
  283. package/switch/Switch.stories.tsx +45 -68
  284. package/switch/Switch.test.js +180 -0
  285. package/switch/types.d.ts +13 -5
  286. package/table/DropdownTheme.js +62 -0
  287. package/table/Table.d.ts +6 -2
  288. package/table/Table.js +80 -37
  289. package/table/Table.stories.tsx +651 -0
  290. package/table/Table.test.js +113 -0
  291. package/table/types.d.ts +34 -6
  292. package/tabs/Tab.d.ts +4 -0
  293. package/tabs/Tab.js +116 -0
  294. package/tabs/Tabs.d.ts +1 -1
  295. package/tabs/Tabs.js +318 -145
  296. package/tabs/Tabs.stories.tsx +226 -0
  297. package/tabs/Tabs.test.js +294 -0
  298. package/tabs/types.d.ts +48 -27
  299. package/tag/Tag.d.ts +1 -1
  300. package/tag/Tag.js +44 -86
  301. package/tag/Tag.stories.tsx +38 -28
  302. package/tag/Tag.test.js +49 -0
  303. package/tag/types.d.ts +25 -16
  304. package/text-input/Icons.d.ts +8 -0
  305. package/text-input/Icons.js +56 -0
  306. package/text-input/Suggestion.d.ts +4 -0
  307. package/text-input/Suggestion.js +67 -0
  308. package/text-input/Suggestions.d.ts +4 -0
  309. package/text-input/Suggestions.js +84 -0
  310. package/text-input/TextInput.d.ts +4 -0
  311. package/text-input/TextInput.js +333 -593
  312. package/text-input/TextInput.stories.tsx +465 -0
  313. package/text-input/TextInput.test.js +1756 -0
  314. package/text-input/types.d.ts +205 -0
  315. package/text-input/types.js +5 -0
  316. package/textarea/Textarea.d.ts +4 -0
  317. package/textarea/Textarea.js +98 -181
  318. package/textarea/Textarea.stories.tsx +174 -0
  319. package/textarea/Textarea.test.js +406 -0
  320. package/textarea/types.d.ts +141 -0
  321. package/textarea/types.js +5 -0
  322. package/toggle-group/ToggleGroup.d.ts +4 -0
  323. package/toggle-group/ToggleGroup.js +100 -142
  324. package/toggle-group/ToggleGroup.stories.tsx +76 -36
  325. package/toggle-group/ToggleGroup.test.js +137 -0
  326. package/toggle-group/types.d.ts +114 -0
  327. package/toggle-group/types.js +5 -0
  328. package/typography/Typography.d.ts +4 -0
  329. package/typography/Typography.js +23 -0
  330. package/typography/Typography.stories.tsx +198 -0
  331. package/typography/types.d.ts +18 -0
  332. package/typography/types.js +5 -0
  333. package/useTheme.d.ts +1148 -0
  334. package/useTheme.js +4 -11
  335. package/useTranslatedLabels.d.ts +85 -0
  336. package/useTranslatedLabels.js +14 -0
  337. package/utils/BaseTypography.d.ts +21 -0
  338. package/utils/BaseTypography.js +94 -0
  339. package/utils/FocusLock.d.ts +13 -0
  340. package/utils/FocusLock.js +124 -0
  341. package/wizard/Wizard.d.ts +1 -1
  342. package/wizard/Wizard.js +123 -104
  343. package/wizard/Wizard.stories.tsx +253 -0
  344. package/wizard/Wizard.test.js +114 -0
  345. package/wizard/types.d.ts +15 -15
  346. package/ThemeContext.js +0 -246
  347. package/V3Select/V3Select.js +0 -455
  348. package/V3Select/index.d.ts +0 -27
  349. package/V3Textarea/V3Textarea.js +0 -260
  350. package/V3Textarea/index.d.ts +0 -27
  351. package/chip/index.d.ts +0 -22
  352. package/common/OpenSans.css +0 -81
  353. package/common/RequiredComponent.js +0 -32
  354. package/common/fonts/OpenSans-Bold.ttf +0 -0
  355. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  356. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  357. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  358. package/common/fonts/OpenSans-Italic.ttf +0 -0
  359. package/common/fonts/OpenSans-Light.ttf +0 -0
  360. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  361. package/common/fonts/OpenSans-Regular.ttf +0 -0
  362. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  363. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  364. package/date/Date.js +0 -373
  365. package/date/index.d.ts +0 -27
  366. package/file-input/index.d.ts +0 -81
  367. package/heading/index.d.ts +0 -17
  368. package/input-text/Icons.js +0 -22
  369. package/input-text/InputText.js +0 -611
  370. package/input-text/index.d.ts +0 -36
  371. package/progress-bar/ProgressBar.stories.jsx +0 -58
  372. package/radio/Radio.d.ts +0 -4
  373. package/radio/Radio.js +0 -174
  374. package/radio/Radio.stories.tsx +0 -192
  375. package/radio/types.d.ts +0 -54
  376. package/resultsetTable/ResultsetTable.js +0 -274
  377. package/resultsetTable/index.d.ts +0 -19
  378. package/select/index.d.ts +0 -131
  379. package/slider/Slider.stories.tsx +0 -172
  380. package/table/Table.stories.jsx +0 -276
  381. package/text-input/index.d.ts +0 -135
  382. package/textarea/Textarea.stories.jsx +0 -135
  383. package/textarea/index.d.ts +0 -117
  384. package/toggle/Toggle.js +0 -186
  385. package/toggle/index.d.ts +0 -21
  386. package/toggle-group/index.d.ts +0 -21
  387. package/upload/Upload.js +0 -201
  388. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  389. package/upload/buttons-upload/Icons.js +0 -40
  390. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  391. package/upload/dragAndDropArea/Icons.js +0 -39
  392. package/upload/file-upload/FileToUpload.js +0 -115
  393. package/upload/file-upload/Icons.js +0 -66
  394. package/upload/files-upload/FilesToUpload.js +0 -109
  395. package/upload/index.d.ts +0 -15
  396. package/upload/transaction/Icons.js +0 -160
  397. package/upload/transaction/Transaction.js +0 -104
  398. package/upload/transactions/Transactions.js +0 -94
  399. package/wizard/Icons.js +0 -65
  400. /package/{radio → action-icon}/types.js +0 -0
@@ -2,109 +2,88 @@ import React from "react";
2
2
  import Title from "../../.storybook/components/Title";
3
3
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
4
4
  import DxcBox from "./Box";
5
+ import DxcInset from "../inset/Inset";
6
+ import { HalstackProvider } from "../HalstackContext";
5
7
 
6
8
  export default {
7
9
  title: "Box ",
8
10
  component: DxcBox,
9
11
  };
10
12
 
13
+ const opinionatedTheme = {
14
+ box: {
15
+ baseColor: "#ffffff",
16
+ },
17
+ };
18
+
11
19
  export const Chromatic = () => (
12
20
  <>
13
21
  <Title title="Display flex" theme="light" level={2} />
14
22
  <ExampleContainer>
15
- <DxcBox display="flex" padding="medium">
16
- Box
23
+ <DxcBox display="flex">
24
+ <DxcInset space="2rem">Box</DxcInset>
17
25
  </DxcBox>
18
26
  </ExampleContainer>
19
27
  <Title title="ShadowDepth" theme="light" level={2} />
20
28
  <ExampleContainer>
21
29
  <Title title="ShadowDepth 0" theme="light" level={4} />
22
- <DxcBox shadowDepth={0} margin="medium" padding="medium">
23
- Box
30
+ <DxcBox shadowDepth={0} margin="medium">
31
+ <DxcInset space="2rem">Box</DxcInset>
24
32
  </DxcBox>
25
33
  </ExampleContainer>
26
34
  <ExampleContainer>
27
35
  <Title title="ShadowDepth 1" theme="light" level={4} />
28
- <DxcBox shadowDepth={1} margin="medium" padding="medium">
29
- Box
36
+ <DxcBox shadowDepth={1} margin="medium">
37
+ <DxcInset space="2rem">Box</DxcInset>
30
38
  </DxcBox>
31
39
  </ExampleContainer>
32
40
  <ExampleContainer>
33
41
  <Title title="ShadowDepth 2" theme="light" level={4} />
34
- <DxcBox shadowDepth={2} margin="medium" padding="medium">
35
- Box
42
+ <DxcBox shadowDepth={2} margin="medium">
43
+ <DxcInset space="2rem">Box</DxcInset>
36
44
  </DxcBox>
37
45
  </ExampleContainer>
38
- <Title title="Paddings" theme="light" level={2} />
39
- <ExampleContainer>
40
- <Title title="Xxsmall padding" theme="light" level={4} />
41
- <DxcBox padding="xxsmall">Box</DxcBox>
42
- </ExampleContainer>
43
- <ExampleContainer>
44
- <Title title="Xsmall padding" theme="light" level={4} />
45
- <DxcBox padding="xsmall">Box</DxcBox>
46
- </ExampleContainer>
47
- <ExampleContainer>
48
- <Title title="Small padding" theme="light" level={4} />
49
- <DxcBox padding="small">Box</DxcBox>
50
- </ExampleContainer>
51
- <ExampleContainer>
52
- <Title title="Medium padding" theme="light" level={4} />
53
- <DxcBox padding="medium">Box</DxcBox>
54
- </ExampleContainer>
55
- <ExampleContainer>
56
- <Title title="Large padding" theme="light" level={4} />
57
- <DxcBox padding="large">Box</DxcBox>
58
- </ExampleContainer>
59
- <ExampleContainer>
60
- <Title title="Xlarge padding" theme="light" level={4} />
61
- <DxcBox padding="xlarge">Box</DxcBox>
62
- </ExampleContainer>
63
- <ExampleContainer>
64
- <Title title="Xxlarge padding" theme="light" level={4} />
65
- <DxcBox padding="xxlarge">Box</DxcBox>
66
- </ExampleContainer>
67
46
  <Title title="Margins" theme="light" level={2} />
68
47
  <ExampleContainer>
69
48
  <Title title="Xxsmall margin" theme="light" level={4} />
70
- <DxcBox margin="xxsmall" padding="medium">
71
- Box
49
+ <DxcBox margin="xxsmall">
50
+ <DxcInset space="2rem">Box</DxcInset>
72
51
  </DxcBox>
73
52
  </ExampleContainer>
74
53
  <ExampleContainer>
75
54
  <Title title="Xsmall margin" theme="light" level={4} />
76
- <DxcBox margin="xsmall" padding="medium">
77
- Box
55
+ <DxcBox margin="xsmall">
56
+ <DxcInset space="2rem">Box</DxcInset>
78
57
  </DxcBox>
79
58
  </ExampleContainer>
80
59
  <ExampleContainer>
81
60
  <Title title="Small margin" theme="light" level={4} />
82
- <DxcBox margin="small" padding="medium">
83
- Box
61
+ <DxcBox margin="small">
62
+ <DxcInset space="2rem">Box</DxcInset>
84
63
  </DxcBox>
85
64
  </ExampleContainer>
86
65
  <ExampleContainer>
87
66
  <Title title="Medium margin" theme="light" level={4} />
88
- <DxcBox margin="medium" padding="medium">
89
- Box
67
+ <DxcBox margin="medium">
68
+ <DxcInset space="2rem">Box</DxcInset>
90
69
  </DxcBox>
91
70
  </ExampleContainer>
92
71
  <ExampleContainer>
93
72
  <Title title="Large margin" theme="light" level={4} />
94
- <DxcBox margin="large" padding="medium">
95
- Box
73
+ <DxcBox margin="large">
74
+ <DxcInset space="2rem">Box</DxcInset>
96
75
  </DxcBox>
97
76
  </ExampleContainer>
98
77
  <ExampleContainer>
99
78
  <Title title="Xlarge margin" theme="light" level={4} />
100
- <DxcBox margin="xlarge" padding="medium">
101
- Box
79
+ <DxcBox margin="xlarge">
80
+ <DxcInset space="2rem">Box</DxcInset>
102
81
  </DxcBox>
103
82
  </ExampleContainer>
104
83
  <ExampleContainer>
105
84
  <Title title="Xxlarge margin" theme="light" level={4} />
106
- <DxcBox margin="xxlarge" padding="medium">
107
- Box
85
+ <DxcBox margin="xxlarge">
86
+ <DxcInset space="2rem">Box</DxcInset>
108
87
  </DxcBox>
109
88
  </ExampleContainer>
110
89
  <Title title="Sizes" theme="light" level={2} />
@@ -128,5 +107,13 @@ export const Chromatic = () => (
128
107
  <Title title="FitContent" theme="light" level={4} />
129
108
  <DxcBox size="fitContent">Box</DxcBox>
130
109
  </ExampleContainer>
110
+ <Title title="Opinionated theme" theme="light" level={2} />
111
+ <ExampleContainer>
112
+ <HalstackProvider theme={opinionatedTheme}>
113
+ <DxcBox display="flex">
114
+ <DxcInset space="2rem">Box</DxcInset>
115
+ </DxcBox>
116
+ </HalstackProvider>
117
+ </ExampleContainer>
131
118
  </>
132
119
  );
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _Card = _interopRequireDefault(require("../card/Card.tsx"));
7
+ describe("Box component tests", function () {
8
+ test("Box renders with correct text", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], null, "test-box")),
10
+ getByText = _render.getByText;
11
+ expect(getByText("test-box")).toBeTruthy();
12
+ });
13
+ });
package/box/types.d.ts CHANGED
@@ -1,18 +1,12 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Margin = {
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type Padding = {
10
- top?: Space;
11
- bottom?: Space;
12
- left?: Space;
13
- right?: Space;
14
- };
15
- declare type Props = {
9
+ type Props = {
16
10
  /**
17
11
  * The size of the shadow to be displayed around the box.
18
12
  */
@@ -30,18 +24,9 @@ declare type Props = {
30
24
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
31
25
  */
32
26
  margin?: Space | Margin;
33
- /**
34
- * Size of the padding to be applied to the custom area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
35
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
36
- */
37
- padding?: Space | Padding;
38
27
  /**
39
28
  * Size of the component.
40
29
  */
41
30
  size?: "small" | "medium" | "large" | "fillParent" | "fitContent";
42
- /**
43
- * Value of the tabindex attribute.
44
- */
45
- tabIndex?: number;
46
31
  };
47
32
  export default Props;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import BulletedListPropsType, { BulletedListItemPropsType } from "./types";
3
+ declare const DxcBulletedList: {
4
+ ({ children, type, icon }: BulletedListPropsType): JSX.Element;
5
+ Item: ({ children }: BulletedListItemPropsType) => JSX.Element;
6
+ };
7
+ export default DxcBulletedList;
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
+ var _Flex = _interopRequireDefault(require("../flex/Flex"));
13
+ var _Typography = _interopRequireDefault(require("../typography/Typography"));
14
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
15
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
16
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
17
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
18
+ var BulletedListItem = function BulletedListItem(_ref) {
19
+ var children = _ref.children;
20
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children);
21
+ };
22
+ var DxcBulletedList = function DxcBulletedList(_ref2) {
23
+ var children = _ref2.children,
24
+ _ref2$type = _ref2.type,
25
+ type = _ref2$type === void 0 ? "disc" : _ref2$type,
26
+ _ref2$icon = _ref2.icon,
27
+ icon = _ref2$icon === void 0 ? "" : _ref2$icon;
28
+ var colorsTheme = (0, _useTheme["default"])();
29
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
30
+ theme: colorsTheme.bulletedList
31
+ }, /*#__PURE__*/_react["default"].createElement(ListContainer, null, /*#__PURE__*/_react["default"].createElement(_Flex["default"], {
32
+ direction: "column",
33
+ as: type === "number" ? "ol" : "ul",
34
+ gap: "0.125rem"
35
+ }, _react["default"].Children.map(children, function (child, index) {
36
+ return /*#__PURE__*/_react["default"].createElement(ListItem, null, /*#__PURE__*/_react["default"].createElement(GeneralContent, null, type === "number" ? /*#__PURE__*/_react["default"].createElement(Number, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
37
+ color: colorsTheme.bulletedList.fontColor
38
+ }, index + 1, ".")) : type === "square" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Square, null)) : type === "circle" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Circle, null)) : type === "icon" ? /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Icon, null, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
39
+ src: icon
40
+ }) : icon)) : /*#__PURE__*/_react["default"].createElement(Bullet, null, /*#__PURE__*/_react["default"].createElement(Disc, null)), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
41
+ color: colorsTheme.bulletedList.fontColor
42
+ }, child)));
43
+ }))));
44
+ };
45
+ DxcBulletedList.Item = BulletedListItem;
46
+ var ListContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ul,\n ol {\n padding: 0;\n margin: 0;\n }\n"])));
47
+ var Bullet = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-self: flex-start;\n align-items: center;\n height: 1.5rem;\n"])));
48
+ var GeneralContent = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: auto 1fr;\n align-items: center;\n"])));
49
+ var Icon = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: 1.5rem;\n width: auto;\n margin-right: ", ";\n align-content: center;\n color: ", ";\n\n svg,\n img {\n height: ", ";\n width: ", ";\n }\n"])), function (props) {
50
+ return props.theme.bulletMarginRight;
51
+ }, function (props) {
52
+ return props.theme.fontColor;
53
+ }, function (props) {
54
+ return props.theme.bulletIconHeight;
55
+ }, function (props) {
56
+ return props.theme.bulletIconWidth;
57
+ });
58
+ var Number = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n user-select: none;\n margin-right: ", ";\n display: flex;\n box-sizing: border-box;\n align-self: flex-start;\n min-width: 0;\n"])), function (props) {
59
+ return props.theme.bulletMarginRight;
60
+ });
61
+ var Square = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n height: ", ";\n width: ", ";\n margin-right: ", ";\n"])), function (props) {
62
+ return props.theme.fontColor;
63
+ }, function (props) {
64
+ return props.theme.bulletHeight;
65
+ }, function (props) {
66
+ return props.theme.bulletWidth;
67
+ }, function (props) {
68
+ return props.theme.bulletMarginRight;
69
+ });
70
+ var Circle = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n border-radius: 50%;\n border: 1px solid;\n border-color: ", ";\n margin-right: ", ";\n"])), function (props) {
71
+ return props.theme.bulletHeight;
72
+ }, function (props) {
73
+ return props.theme.bulletWidth;
74
+ }, function (props) {
75
+ return props.theme.fontColor;
76
+ }, function (props) {
77
+ return props.theme.bulletMarginRight;
78
+ });
79
+ var Disc = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n height: ", ";\n width: ", ";\n border-radius: 50%;\n margin-right: ", ";\n"])), function (props) {
80
+ return props.theme.fontColor;
81
+ }, function (props) {
82
+ return props.theme.bulletHeight;
83
+ }, function (props) {
84
+ return props.theme.bulletWidth;
85
+ }, function (props) {
86
+ return props.theme.bulletMarginRight;
87
+ });
88
+ var ListItem = _styledComponents["default"].li(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin: 0px;\n padding: 0px;\n list-style: none;\n font-size: 1em;\n"])));
89
+ var _default = exports["default"] = DxcBulletedList;
@@ -0,0 +1,115 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import DxcBulletedList from "./BulletedList";
6
+
7
+ export default {
8
+ title: "Bulleted List",
9
+ component: DxcBulletedList,
10
+ };
11
+
12
+ const icon = (
13
+ <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
14
+ <path d="M0 0h24v24H0V0z" fill="none" />
15
+ <path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
16
+ </svg>
17
+ );
18
+
19
+ export const Chromatic = () => (
20
+ <>
21
+ <ExampleContainer>
22
+ <Title title="Icon list (SVG)" level={4} />
23
+ <DxcBulletedList type="icon" icon={icon}>
24
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
25
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
26
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
27
+ </DxcBulletedList>
28
+ <Title title="Icon list (path)" level={4} />
29
+ <DxcBulletedList type="icon" icon="https://upload.wikimedia.org/wikipedia/commons/e/e0/Check_green_icon.svg">
30
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
31
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
32
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
33
+ </DxcBulletedList>
34
+ <Title title="Number list" level={4} />
35
+ <DxcBulletedList type="number">
36
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
37
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
38
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
39
+ </DxcBulletedList>
40
+ <Title title="Square" level={4} />
41
+ <DxcBulletedList type="square">
42
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
43
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
44
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
45
+ </DxcBulletedList>
46
+ <Title title="Circle" level={4} />
47
+ <DxcBulletedList type="circle">
48
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
49
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
50
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
51
+ </DxcBulletedList>
52
+ <Title title="Disc" level={4} />
53
+ <DxcBulletedList>
54
+ <DxcBulletedList.Item>Code</DxcBulletedList.Item>
55
+ <DxcBulletedList.Item>Usage</DxcBulletedList.Item>
56
+ <DxcBulletedList.Item>Specifications</DxcBulletedList.Item>
57
+ </DxcBulletedList>
58
+ <Title title="Multiple lines" level={4} />
59
+ <Container>
60
+ <Title title="Number" level={4} />
61
+ <DxcBulletedList type="number">
62
+ <DxcBulletedList.Item>
63
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
64
+ dolore magna aliqua.
65
+ </DxcBulletedList.Item>
66
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
67
+ </DxcBulletedList>
68
+ </Container>
69
+ <Container>
70
+ <Title title="Square" level={4} />
71
+ <DxcBulletedList type="square">
72
+ <DxcBulletedList.Item>
73
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
74
+ dolore magna aliqua.
75
+ </DxcBulletedList.Item>
76
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
77
+ </DxcBulletedList>
78
+ </Container>
79
+ <Container>
80
+ <Title title="Circle" level={4} />
81
+ <DxcBulletedList type="circle">
82
+ <DxcBulletedList.Item>
83
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
84
+ dolore magna aliqua.
85
+ </DxcBulletedList.Item>
86
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
87
+ </DxcBulletedList>
88
+ </Container>
89
+ <Title title="Disc" level={4} />
90
+ <Container>
91
+ <DxcBulletedList>
92
+ <DxcBulletedList.Item>
93
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
94
+ dolore magna aliqua.
95
+ </DxcBulletedList.Item>
96
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
97
+ </DxcBulletedList>
98
+ </Container>
99
+ <Container>
100
+ <Title title="Icon" level={4} />
101
+ <DxcBulletedList type="icon" icon={icon}>
102
+ <DxcBulletedList.Item>
103
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et
104
+ dolore magna aliqua.
105
+ </DxcBulletedList.Item>
106
+ <DxcBulletedList.Item>Text 2.</DxcBulletedList.Item>
107
+ </DxcBulletedList>
108
+ </Container>
109
+ </ExampleContainer>
110
+ </>
111
+ );
112
+
113
+ const Container = styled.div`
114
+ width: 400px;
115
+ `;
@@ -0,0 +1,38 @@
1
+ /// <reference types="react" />
2
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
3
+ type IconProps = {
4
+ /**
5
+ * Defines the style of the bullet point in the list.
6
+ */
7
+ type: "icon";
8
+ /**
9
+ * Icon to display as bullet.
10
+ */
11
+ icon: string | SVG;
12
+ /**
13
+ * Text to be shown in the list.
14
+ */
15
+ children: React.ReactNode;
16
+ };
17
+ type OtherProps = {
18
+ /**
19
+ * Defines the style of the bullet point in the list.
20
+ */
21
+ type?: "disc" | "circle" | "square" | "number";
22
+ /**
23
+ * Icon to display as bullet.
24
+ */
25
+ icon?: never;
26
+ /**
27
+ * Text to be shown in the list.
28
+ */
29
+ children: React.ReactNode;
30
+ };
31
+ type Props = IconProps | OtherProps;
32
+ export default Props;
33
+ export type BulletedListItemPropsType = {
34
+ /**
35
+ * Text to be shown in the list.
36
+ */
37
+ children?: React.ReactNode;
38
+ };
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import ButtonPropsType from "./types";
3
- declare const DxcButton: ({ label, mode, disabled, iconPosition, type, icon, iconSrc, onClick, margin, size, tabIndex }: ButtonPropsType) => JSX.Element;
3
+ declare const DxcButton: ({ label, mode, disabled, iconPosition, title, type, icon, onClick, margin, size, tabIndex, }: ButtonPropsType) => JSX.Element;
4
4
  export default DxcButton;