@dxc-technology/halstack-react 0.0.0-4fd9593 → 0.0.0-500190a

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 (373) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/{dist/select/Select.js → V3Select/V3Select.js} +116 -246
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +14 -18
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/alert/Alert.js +290 -0
  17. package/alert/Alert.stories.tsx +170 -0
  18. package/alert/types.d.ts +49 -0
  19. package/alert/types.js +5 -0
  20. package/badge/Badge.js +59 -0
  21. package/box/Box.d.ts +4 -0
  22. package/{dist/box → box}/Box.js +13 -43
  23. package/box/Box.stories.tsx +132 -0
  24. package/box/types.d.ts +43 -0
  25. package/box/types.js +5 -0
  26. package/button/Button.d.ts +4 -0
  27. package/button/Button.js +179 -0
  28. package/button/Button.stories.tsx +276 -0
  29. package/button/types.d.ts +57 -0
  30. package/button/types.js +5 -0
  31. package/card/Card.d.ts +4 -0
  32. package/{dist/card → card}/Card.js +33 -123
  33. package/card/Card.stories.tsx +201 -0
  34. package/card/ice-cream.jpg +0 -0
  35. package/card/types.d.ts +67 -0
  36. package/card/types.js +5 -0
  37. package/checkbox/Checkbox.d.ts +4 -0
  38. package/{dist/checkbox → checkbox}/Checkbox.js +33 -74
  39. package/checkbox/Checkbox.stories.tsx +192 -0
  40. package/checkbox/types.d.ts +60 -0
  41. package/checkbox/types.js +5 -0
  42. package/{dist/chip → chip}/Chip.js +17 -61
  43. package/chip/Chip.stories.tsx +121 -0
  44. package/chip/index.d.ts +22 -0
  45. package/{dist/common → common}/OpenSans.css +0 -0
  46. package/{dist/common → common}/RequiredComponent.js +3 -11
  47. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  51. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  52. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  53. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  54. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  55. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  56. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  57. package/{dist/common → common}/utils.js +0 -0
  58. package/{dist/common → common}/variables.js +631 -418
  59. package/{dist/date → date}/Date.js +21 -29
  60. package/date/index.d.ts +27 -0
  61. package/date-input/DateInput.d.ts +4 -0
  62. package/{dist/new-date/NewDate.js → date-input/DateInput.js} +94 -128
  63. package/date-input/DateInput.stories.tsx +138 -0
  64. package/date-input/types.d.ts +100 -0
  65. package/date-input/types.js +5 -0
  66. package/dialog/Dialog.d.ts +4 -0
  67. package/{dist/dialog → dialog}/Dialog.js +22 -97
  68. package/dialog/Dialog.stories.tsx +212 -0
  69. package/dialog/types.d.ts +43 -0
  70. package/dialog/types.js +5 -0
  71. package/dropdown/Dropdown.d.ts +4 -0
  72. package/dropdown/Dropdown.js +417 -0
  73. package/dropdown/types.d.ts +89 -0
  74. package/dropdown/types.js +5 -0
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/file-input/FileInput.js +511 -0
  77. package/file-input/FileItem.d.ts +14 -0
  78. package/file-input/FileItem.js +184 -0
  79. package/file-input/types.d.ts +87 -0
  80. package/file-input/types.js +5 -0
  81. package/footer/Footer.d.ts +4 -0
  82. package/footer/Footer.js +266 -0
  83. package/footer/Footer.stories.jsx +151 -0
  84. package/footer/Icons.js +77 -0
  85. package/footer/types.d.ts +61 -0
  86. package/footer/types.js +5 -0
  87. package/header/Header.d.ts +7 -0
  88. package/header/Header.js +324 -0
  89. package/header/Header.stories.tsx +162 -0
  90. package/header/Icons.js +34 -0
  91. package/header/types.d.ts +47 -0
  92. package/header/types.js +5 -0
  93. package/heading/Heading.d.ts +4 -0
  94. package/{dist/heading → heading}/Heading.js +30 -89
  95. package/heading/Heading.stories.tsx +53 -0
  96. package/heading/types.d.ts +33 -0
  97. package/heading/types.js +5 -0
  98. package/input-text/Icons.js +22 -0
  99. package/{dist/input-text → input-text}/InputText.js +37 -133
  100. package/input-text/index.d.ts +36 -0
  101. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  102. package/layout/Icons.js +55 -0
  103. package/link/Link.d.ts +3 -0
  104. package/{dist/link → link}/Link.js +20 -100
  105. package/link/Link.stories.tsx +146 -0
  106. package/link/types.d.ts +74 -0
  107. package/link/types.js +5 -0
  108. package/main.d.ts +44 -0
  109. package/{dist/main.js → main.js} +104 -92
  110. package/number-input/NumberInput.d.ts +4 -0
  111. package/number-input/NumberInput.js +86 -0
  112. package/number-input/NumberInput.stories.tsx +115 -0
  113. package/number-input/NumberInputContext.d.ts +4 -0
  114. package/{dist/number/NumberContext.js → number-input/NumberInputContext.js} +6 -3
  115. package/number-input/numberInputContextTypes.d.ts +19 -0
  116. package/number-input/numberInputContextTypes.js +5 -0
  117. package/number-input/types.d.ts +117 -0
  118. package/number-input/types.js +5 -0
  119. package/package.json +32 -24
  120. package/paginator/Icons.js +66 -0
  121. package/paginator/Paginator.d.ts +4 -0
  122. package/paginator/Paginator.js +198 -0
  123. package/paginator/Paginator.stories.tsx +63 -0
  124. package/paginator/types.d.ts +38 -0
  125. package/paginator/types.js +5 -0
  126. package/password-input/PasswordInput.d.ts +4 -0
  127. package/{dist/password/Password.js → password-input/PasswordInput.js} +36 -68
  128. package/password-input/PasswordInput.stories.tsx +131 -0
  129. package/password-input/types.d.ts +107 -0
  130. package/password-input/types.js +5 -0
  131. package/progress-bar/ProgressBar.d.ts +4 -0
  132. package/progress-bar/ProgressBar.js +170 -0
  133. package/progress-bar/ProgressBar.stories.jsx +58 -0
  134. package/progress-bar/types.d.ts +37 -0
  135. package/progress-bar/types.js +5 -0
  136. package/radio/Radio.d.ts +4 -0
  137. package/{dist/radio → radio}/Radio.js +15 -50
  138. package/radio/Radio.stories.tsx +192 -0
  139. package/radio/types.d.ts +54 -0
  140. package/radio/types.js +5 -0
  141. package/resultsetTable/ResultsetTable.d.ts +4 -0
  142. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +38 -145
  143. package/resultsetTable/types.d.ts +67 -0
  144. package/resultsetTable/types.js +5 -0
  145. package/select/Select.js +865 -0
  146. package/select/Select.stories.tsx +572 -0
  147. package/select/index.d.ts +131 -0
  148. package/sidenav/Sidenav.d.ts +9 -0
  149. package/{dist/sidenav → sidenav}/Sidenav.js +21 -62
  150. package/sidenav/Sidenav.stories.tsx +165 -0
  151. package/sidenav/types.d.ts +50 -0
  152. package/sidenav/types.js +5 -0
  153. package/slider/Slider.d.ts +4 -0
  154. package/slider/Slider.js +317 -0
  155. package/slider/Slider.stories.tsx +177 -0
  156. package/slider/types.d.ts +78 -0
  157. package/slider/types.js +5 -0
  158. package/spinner/Spinner.d.ts +4 -0
  159. package/spinner/Spinner.js +250 -0
  160. package/spinner/Spinner.stories.jsx +102 -0
  161. package/spinner/types.d.ts +32 -0
  162. package/spinner/types.js +5 -0
  163. package/switch/Switch.d.ts +4 -0
  164. package/{dist/switch → switch}/Switch.js +26 -69
  165. package/switch/Switch.stories.tsx +160 -0
  166. package/switch/types.d.ts +58 -0
  167. package/switch/types.js +5 -0
  168. package/table/Table.d.ts +4 -0
  169. package/{dist/table → table}/Table.js +10 -24
  170. package/table/Table.stories.jsx +276 -0
  171. package/table/types.d.ts +21 -0
  172. package/table/types.js +5 -0
  173. package/tabs/Tabs.d.ts +4 -0
  174. package/tabs/Tabs.js +213 -0
  175. package/tabs/Tabs.stories.tsx +121 -0
  176. package/tabs/types.d.ts +70 -0
  177. package/tabs/types.js +5 -0
  178. package/tag/Tag.d.ts +4 -0
  179. package/tag/Tag.js +193 -0
  180. package/tag/Tag.stories.tsx +145 -0
  181. package/tag/types.d.ts +60 -0
  182. package/tag/types.js +5 -0
  183. package/text-input/TextInput.d.ts +4 -0
  184. package/text-input/TextInput.js +786 -0
  185. package/text-input/types.d.ts +159 -0
  186. package/text-input/types.js +5 -0
  187. package/{dist/new-textarea/NewTextarea.js → textarea/Textarea.js} +91 -117
  188. package/textarea/Textarea.stories.jsx +135 -0
  189. package/textarea/index.d.ts +127 -0
  190. package/{dist/toggle → toggle}/Toggle.js +15 -49
  191. package/toggle/index.d.ts +21 -0
  192. package/toggle-group/ToggleGroup.d.ts +4 -0
  193. package/toggle-group/ToggleGroup.js +217 -0
  194. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  195. package/toggle-group/types.d.ts +84 -0
  196. package/toggle-group/types.js +5 -0
  197. package/{dist/upload → upload}/Upload.js +11 -15
  198. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  199. package/upload/buttons-upload/Icons.js +40 -0
  200. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  201. package/upload/dragAndDropArea/Icons.js +39 -0
  202. package/upload/file-upload/FileToUpload.js +115 -0
  203. package/upload/file-upload/Icons.js +66 -0
  204. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  205. package/upload/index.d.ts +15 -0
  206. package/upload/transaction/Icons.js +160 -0
  207. package/upload/transaction/Transaction.js +104 -0
  208. package/upload/transactions/Transactions.js +94 -0
  209. package/{dist/useTheme.js → useTheme.js} +0 -0
  210. package/wizard/Icons.js +65 -0
  211. package/wizard/Wizard.d.ts +4 -0
  212. package/{dist/wizard → wizard}/Wizard.js +33 -213
  213. package/wizard/Wizard.stories.jsx +224 -0
  214. package/wizard/types.d.ts +64 -0
  215. package/wizard/types.js +5 -0
  216. package/README.md +0 -66
  217. package/babel.config.js +0 -8
  218. package/dist/BackgroundColorContext.js +0 -46
  219. package/dist/ThemeContext.js +0 -216
  220. package/dist/accordion/Accordion.js +0 -348
  221. package/dist/accordion/Accordion.stories.js +0 -207
  222. package/dist/accordion/readme.md +0 -96
  223. package/dist/accordion-group/AccordionGroup.js +0 -188
  224. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  225. package/dist/accordion-group/readme.md +0 -70
  226. package/dist/alert/Alert.js +0 -392
  227. package/dist/alert/Alert.stories.js +0 -158
  228. package/dist/alert/close.svg +0 -4
  229. package/dist/alert/error.svg +0 -4
  230. package/dist/alert/info.svg +0 -4
  231. package/dist/alert/readme.md +0 -43
  232. package/dist/alert/success.svg +0 -4
  233. package/dist/alert/warning.svg +0 -4
  234. package/dist/badge/Badge.js +0 -63
  235. package/dist/button/Button.js +0 -232
  236. package/dist/button/Button.stories.js +0 -224
  237. package/dist/button/readme.md +0 -93
  238. package/dist/checkbox/Checkbox.stories.js +0 -144
  239. package/dist/checkbox/readme.md +0 -116
  240. package/dist/date/Date.stories.js +0 -205
  241. package/dist/date/readme.md +0 -73
  242. package/dist/dialog/Dialog.stories.js +0 -217
  243. package/dist/dialog/readme.md +0 -32
  244. package/dist/dropdown/Dropdown.js +0 -504
  245. package/dist/dropdown/Dropdown.stories.js +0 -249
  246. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  247. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  248. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  249. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  250. package/dist/dropdown/readme.md +0 -69
  251. package/dist/footer/Footer.js +0 -395
  252. package/dist/footer/Footer.stories.js +0 -94
  253. package/dist/footer/dxc_logo.svg +0 -15
  254. package/dist/footer/readme.md +0 -41
  255. package/dist/header/Header.js +0 -423
  256. package/dist/header/Header.stories.js +0 -176
  257. package/dist/header/close_icon.svg +0 -1
  258. package/dist/header/dxc_logo_black.svg +0 -8
  259. package/dist/header/hamb_menu_black.svg +0 -1
  260. package/dist/header/hamb_menu_white.svg +0 -1
  261. package/dist/header/readme.md +0 -33
  262. package/dist/input-text/InputText.stories.js +0 -209
  263. package/dist/input-text/error.svg +0 -1
  264. package/dist/input-text/readme.md +0 -91
  265. package/dist/layout/facebook.svg +0 -45
  266. package/dist/layout/linkedin.svg +0 -50
  267. package/dist/layout/twitter.svg +0 -53
  268. package/dist/link/readme.md +0 -51
  269. package/dist/new-input-text/NewInputText.js +0 -957
  270. package/dist/number/Number.js +0 -134
  271. package/dist/paginator/Paginator.js +0 -289
  272. package/dist/paginator/images/next.svg +0 -3
  273. package/dist/paginator/images/nextPage.svg +0 -3
  274. package/dist/paginator/images/previous.svg +0 -3
  275. package/dist/paginator/images/previousPage.svg +0 -3
  276. package/dist/paginator/readme.md +0 -50
  277. package/dist/password/styles.css +0 -3
  278. package/dist/progress-bar/ProgressBar.js +0 -206
  279. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  280. package/dist/progress-bar/readme.md +0 -63
  281. package/dist/radio/Radio.stories.js +0 -166
  282. package/dist/radio/readme.md +0 -70
  283. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  284. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  285. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  286. package/dist/select/Select.stories.js +0 -235
  287. package/dist/select/readme.md +0 -72
  288. package/dist/slider/Slider.js +0 -315
  289. package/dist/slider/Slider.stories.js +0 -241
  290. package/dist/slider/readme.md +0 -64
  291. package/dist/spinner/Spinner.js +0 -218
  292. package/dist/spinner/Spinner.stories.js +0 -183
  293. package/dist/spinner/readme.md +0 -65
  294. package/dist/switch/Switch.stories.js +0 -134
  295. package/dist/switch/readme.md +0 -133
  296. package/dist/tabs/Tabs.js +0 -343
  297. package/dist/tabs/Tabs.stories.js +0 -130
  298. package/dist/tabs/readme.md +0 -78
  299. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  300. package/dist/tabs-for-sections/readme.md +0 -78
  301. package/dist/tag/Tag.js +0 -288
  302. package/dist/toggle/Toggle.stories.js +0 -297
  303. package/dist/toggle/readme.md +0 -80
  304. package/dist/toggle-group/ToggleGroup.js +0 -241
  305. package/dist/toggle-group/readme.md +0 -82
  306. package/dist/upload/Upload.stories.js +0 -72
  307. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -139
  308. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  309. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  310. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  311. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  312. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  313. package/dist/upload/file-upload/FileToUpload.js +0 -184
  314. package/dist/upload/file-upload/audio-icon.svg +0 -4
  315. package/dist/upload/file-upload/close.svg +0 -4
  316. package/dist/upload/file-upload/file-icon.svg +0 -4
  317. package/dist/upload/file-upload/video-icon.svg +0 -4
  318. package/dist/upload/readme.md +0 -37
  319. package/dist/upload/transaction/Transaction.js +0 -175
  320. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  321. package/dist/upload/transaction/audio-icon.svg +0 -4
  322. package/dist/upload/transaction/error-icon.svg +0 -4
  323. package/dist/upload/transaction/file-icon-err.svg +0 -4
  324. package/dist/upload/transaction/file-icon.svg +0 -4
  325. package/dist/upload/transaction/image-icon-err.svg +0 -4
  326. package/dist/upload/transaction/image-icon.svg +0 -4
  327. package/dist/upload/transaction/success-icon.svg +0 -4
  328. package/dist/upload/transaction/video-icon-err.svg +0 -4
  329. package/dist/upload/transaction/video-icon.svg +0 -4
  330. package/dist/upload/transactions/Transactions.js +0 -138
  331. package/dist/wizard/invalid_icon.svg +0 -5
  332. package/dist/wizard/valid_icon.svg +0 -5
  333. package/dist/wizard/validation-wrong.svg +0 -6
  334. package/test/Accordion.test.js +0 -33
  335. package/test/AccordionGroup.test.js +0 -125
  336. package/test/Alert.test.js +0 -53
  337. package/test/Box.test.js +0 -10
  338. package/test/Button.test.js +0 -18
  339. package/test/Card.test.js +0 -30
  340. package/test/Checkbox.test.js +0 -45
  341. package/test/Chip.test.js +0 -25
  342. package/test/Date.test.js +0 -393
  343. package/test/Dialog.test.js +0 -23
  344. package/test/Dropdown.test.js +0 -145
  345. package/test/Footer.test.js +0 -99
  346. package/test/Header.test.js +0 -39
  347. package/test/Heading.test.js +0 -35
  348. package/test/InputText.test.js +0 -240
  349. package/test/Link.test.js +0 -43
  350. package/test/NewDate.test.js +0 -200
  351. package/test/NewInputText.test.js +0 -817
  352. package/test/NewTextarea.test.js +0 -201
  353. package/test/Number.test.js +0 -241
  354. package/test/Paginator.test.js +0 -177
  355. package/test/Password.test.js +0 -76
  356. package/test/ProgressBar.test.js +0 -35
  357. package/test/Radio.test.js +0 -37
  358. package/test/ResultsetTable.test.js +0 -330
  359. package/test/Select.test.js +0 -189
  360. package/test/Sidenav.test.js +0 -45
  361. package/test/Slider.test.js +0 -82
  362. package/test/Spinner.test.js +0 -27
  363. package/test/Switch.test.js +0 -45
  364. package/test/Table.test.js +0 -36
  365. package/test/Tabs.test.js +0 -109
  366. package/test/TabsForSections.test.js +0 -34
  367. package/test/Tag.test.js +0 -32
  368. package/test/TextArea.test.js +0 -52
  369. package/test/ToggleGroup.test.js +0 -81
  370. package/test/Upload.test.js +0 -60
  371. package/test/Wizard.test.js +0 -130
  372. package/test/mocks/pngMock.js +0 -1
  373. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,192 @@
1
+ import React from "react";
2
+ import DxcCheckbox from "./Checkbox";
3
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import DarkContainer from "../../.storybook/components/DarkSection";
7
+ import { userEvent, within } from "@storybook/testing-library";
8
+
9
+ export default {
10
+ title: "Checkbox",
11
+ component: DxcCheckbox,
12
+ };
13
+
14
+ const Checkbox = () => (
15
+ <>
16
+ <>
17
+ <ExampleContainer>
18
+ <Title title="Default" theme="light" level={4} />
19
+ <DxcCheckbox label="Checkbox" />
20
+ </ExampleContainer>
21
+ <ExampleContainer>
22
+ <Title title="Focused" theme="light" level={4} />
23
+ <DxcCheckbox label="Focused" />
24
+ </ExampleContainer>
25
+ <ExampleContainer>
26
+ <Title title="Checked" theme="light" level={4} />
27
+ <DxcCheckbox label="Checkbox" checked />
28
+ </ExampleContainer>
29
+ <ExampleContainer>
30
+ <Title title="Required" theme="light" level={4} />
31
+ <DxcCheckbox label="Checkbox" required />
32
+ </ExampleContainer>
33
+ <ExampleContainer>
34
+ <Title title="Disabled and checked" theme="light" level={4} />
35
+ <DxcCheckbox label="Checkbox" disabled checked />
36
+ </ExampleContainer>
37
+ <ExampleContainer>
38
+ <Title title="Disabled and required" theme="light" level={4} />
39
+ <DxcCheckbox label="Checkbox" disabled required />
40
+ </ExampleContainer>
41
+ <ExampleContainer>
42
+ <Title title="Disabled, required and checked" theme="light" level={4} />
43
+ <DxcCheckbox label="Checkbox" disabled required checked />
44
+ </ExampleContainer>
45
+ <ExampleContainer>
46
+ <Title title="Label after" theme="light" level={4} />
47
+ <DxcCheckbox label="Checkbox" labelPosition="after" />
48
+ </ExampleContainer>
49
+ <ExampleContainer>
50
+ <Title title="Checked with label after" theme="light" level={4} />
51
+ <DxcCheckbox label="Checkbox" checked labelPosition="after" />
52
+ </ExampleContainer>
53
+ <ExampleContainer>
54
+ <Title title="Required with label after" theme="light" level={4} />
55
+ <DxcCheckbox label="Checkbox" required labelPosition="after" />
56
+ </ExampleContainer>
57
+ <ExampleContainer>
58
+ <Title title="Disabled and checked with label after" theme="light" level={4} />
59
+ <DxcCheckbox label="Checkbox" disabled checked labelPosition="after" />
60
+ </ExampleContainer>
61
+ <ExampleContainer>
62
+ <Title title="Disabled and required with label after" theme="light" level={4} />
63
+ <DxcCheckbox label="Checkbox" disabled required labelPosition="after" />
64
+ </ExampleContainer>
65
+ <ExampleContainer>
66
+ <Title title="Disabled, required and checked with label after" theme="light" level={4} />
67
+ <DxcCheckbox label="Checkbox" disabled required checked labelPosition="after" />
68
+ </ExampleContainer>
69
+ <ExampleContainer pseudoState="pseudo-hover">
70
+ <Title title="Hovered" theme="light" level={4} />
71
+ <DxcCheckbox label="Hovered" />
72
+ </ExampleContainer>
73
+ <ExampleContainer pseudoState="pseudo-hover">
74
+ <Title title="Hovered and checked" theme="light" level={4} />
75
+ <DxcCheckbox label="Hovered" checked />
76
+ </ExampleContainer>
77
+ </>
78
+ <BackgroundColorProvider color="#333333">
79
+ <DarkContainer>
80
+ <>
81
+ <ExampleContainer>
82
+ <Title title="Default" theme="dark" level={4} />
83
+ <DxcCheckbox label="Checkbox" />
84
+ </ExampleContainer>
85
+ <ExampleContainer>
86
+ <Title title="Checked" theme="dark" level={4} />
87
+ <DxcCheckbox label="Checkbox" checked />
88
+ </ExampleContainer>
89
+ <ExampleContainer>
90
+ <Title title="Required" theme="dark" level={4} />
91
+ <DxcCheckbox label="Checkbox" required />
92
+ </ExampleContainer>
93
+ <ExampleContainer>
94
+ <Title title="Disabled and checked" theme="dark" level={4} />
95
+ <DxcCheckbox label="Checkbox" disabled checked />
96
+ </ExampleContainer>
97
+ <ExampleContainer>
98
+ <Title title="Disabled and required" theme="dark" level={4} />
99
+ <DxcCheckbox label="Checkbox" disabled required />
100
+ </ExampleContainer>
101
+ <ExampleContainer>
102
+ <Title title="Disabled, required and checked" theme="dark" level={4} />
103
+ <DxcCheckbox label="Checkbox" disabled required checked />
104
+ </ExampleContainer>
105
+ <ExampleContainer>
106
+ <Title title="Label after" theme="dark" level={4} />
107
+ <DxcCheckbox label="Checkbox" labelPosition="after" />
108
+ </ExampleContainer>
109
+ <ExampleContainer>
110
+ <Title title="Checked with label after" theme="dark" level={4} />
111
+ <DxcCheckbox label="Checkbox" checked labelPosition="after" />
112
+ </ExampleContainer>
113
+ <ExampleContainer>
114
+ <Title title="Required with label after" theme="dark" level={4} />
115
+ <DxcCheckbox label="Checkbox" required labelPosition="after" />
116
+ </ExampleContainer>
117
+ <ExampleContainer>
118
+ <Title title="Disabled and checked with label after" theme="dark" level={4} />
119
+ <DxcCheckbox label="Checkbox" disabled checked labelPosition="after" />
120
+ </ExampleContainer>
121
+ <ExampleContainer>
122
+ <Title title="Disabled and required with label after" theme="dark" level={4} />
123
+ <DxcCheckbox label="Checkbox" disabled required labelPosition="after" />
124
+ </ExampleContainer>
125
+ <ExampleContainer>
126
+ <Title title="Disabled, required and checked with label after" theme="dark" level={4} />
127
+ <DxcCheckbox label="Checkbox" disabled required checked labelPosition="after" />
128
+ </ExampleContainer>
129
+ <ExampleContainer pseudoState="pseudo-hover">
130
+ <Title title="Hovered" theme="dark" level={4} />
131
+ <DxcCheckbox label="Hovered" />
132
+ </ExampleContainer>
133
+ <ExampleContainer pseudoState="pseudo-hover">
134
+ <Title title="Hovered and checked" theme="dark" level={4} />
135
+ <DxcCheckbox label="Hovered" checked />
136
+ </ExampleContainer>
137
+ </>
138
+ </DarkContainer>
139
+ </BackgroundColorProvider>
140
+ <Title title="Sizes" theme="light" level={2} />
141
+ <ExampleContainer>
142
+ <DxcCheckbox label="Small" size="small" />
143
+ </ExampleContainer>
144
+ <ExampleContainer>
145
+ <DxcCheckbox label="Medium" size="medium" />
146
+ </ExampleContainer>
147
+ <ExampleContainer>
148
+ <DxcCheckbox label="Large" size="large" />
149
+ </ExampleContainer>
150
+ <ExampleContainer>
151
+ <DxcCheckbox label="FitContent" size="fitContent" />
152
+ </ExampleContainer>
153
+ <ExampleContainer>
154
+ <DxcCheckbox label="FillParent" size="fillParent" />
155
+ </ExampleContainer>
156
+ <Title title="Margins" theme="light" level={2} />
157
+ <ExampleContainer>
158
+ <Title title="Xxsmall" theme="light" level={4} />
159
+ <DxcCheckbox label="Xxsmall" margin={"xxsmall"} />
160
+ </ExampleContainer>
161
+ <ExampleContainer>
162
+ <Title title="Xsmall" theme="light" level={4} />
163
+ <DxcCheckbox label="Xsmall" margin={"xsmall"} />
164
+ </ExampleContainer>
165
+ <ExampleContainer>
166
+ <Title title="Small" theme="light" level={4} />
167
+ <DxcCheckbox label="Small" margin={"small"} />
168
+ </ExampleContainer>
169
+ <ExampleContainer>
170
+ <Title title="Medium" theme="light" level={4} />
171
+ <DxcCheckbox label="Medium" margin={"medium"} />
172
+ </ExampleContainer>
173
+ <ExampleContainer>
174
+ <Title title="Large" theme="light" level={4} />
175
+ <DxcCheckbox label="Large" margin={"large"} />
176
+ </ExampleContainer>
177
+ <ExampleContainer>
178
+ <Title title="Xlarge" theme="light" level={4} />
179
+ <DxcCheckbox label="Xlarge" margin={"xlarge"} />
180
+ </ExampleContainer>
181
+ <ExampleContainer>
182
+ <Title title="Xxlarge" theme="light" level={4} />
183
+ <DxcCheckbox label="Xxlarge" margin={"xxlarge"} />
184
+ </ExampleContainer>
185
+ </>
186
+ );
187
+
188
+ export const Chromatic = Checkbox.bind({});
189
+ Chromatic.play = async () => {
190
+ await userEvent.tab();
191
+ await userEvent.tab();
192
+ };
@@ -0,0 +1,60 @@
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ declare type Props = {
9
+ /**
10
+ * If true, the component is checked. If undefined the component will be
11
+ * uncontrolled and the value will be managed internally by the component.
12
+ */
13
+ checked?: boolean;
14
+ /**
15
+ * Will be passed to the value attribute of the html input element.
16
+ * When inside a form, this value will be only submitted if the checkbox is checked.
17
+ */
18
+ value?: string;
19
+ /**
20
+ * Text to be placed next to the checkbox.
21
+ */
22
+ label: string;
23
+ /**
24
+ * Whether the label should appear after or before the checkbox.
25
+ */
26
+ labelPosition?: "before" | "after";
27
+ /**
28
+ * Name attribute of the input element.
29
+ */
30
+ name?: string;
31
+ /**
32
+ * If true, the component will be disabled.
33
+ */
34
+ disabled?: boolean;
35
+ /**
36
+ * If true, the checkbox will change its appearence, showing that the value is required.
37
+ */
38
+ required?: boolean;
39
+ /**
40
+ * This function will be called when the user clicks the checkbox.
41
+ * The new value will be passed as a parameter.
42
+ */
43
+ onChange?: (val: boolean) => void;
44
+ /**
45
+ * Size of the margin to be applied to the component
46
+ * ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
47
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties
48
+ * in order to specify different margin sizes.
49
+ */
50
+ margin?: Space | Margin;
51
+ /**
52
+ * Size of the component.
53
+ */
54
+ size?: "small" | "medium" | "large" | "fillParent" | "fitContent";
55
+ /**
56
+ * Value of the tabindex.
57
+ */
58
+ tabIndex?: number;
59
+ };
60
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
@@ -27,55 +27,11 @@ var _utils = require("../common/utils.js");
27
27
 
28
28
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
29
 
30
- function _templateObject5() {
31
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n ", "\n width: ", ";\n height: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n ", "\n }\n"]);
32
-
33
- _templateObject5 = function _templateObject5() {
34
- return data;
35
- };
36
-
37
- return data;
38
- }
39
-
40
- function _templateObject4() {
41
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-right: ", ";\n width: ", ";\n height: ", ";\n"]);
42
-
43
- _templateObject4 = function _templateObject4() {
44
- return data;
45
- };
46
-
47
- return data;
48
- }
49
-
50
- function _templateObject3() {
51
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-left: ", ";\n width: ", ";\n height: ", ";\n"]);
52
-
53
- _templateObject3 = function _templateObject3() {
54
- return data;
55
- };
56
-
57
- return data;
58
- }
59
-
60
- function _templateObject2() {
61
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-style: ", ";\n color: ", ";\n cursor: ", ";\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n"]);
62
-
63
- _templateObject2 = function _templateObject2() {
64
- return data;
65
- };
66
-
67
- return data;
68
- }
69
-
70
- function _templateObject() {
71
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n min-height: 40px;\n max-width: ", ";\n background-color: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n"]);
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
72
31
 
73
- _templateObject = function _templateObject() {
74
- return data;
75
- };
32
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
76
33
 
77
- return data;
78
- }
34
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
79
35
 
80
36
  var DxcChip = function DxcChip(_ref) {
81
37
  var label = _ref.label,
@@ -90,12 +46,12 @@ var DxcChip = function DxcChip(_ref) {
90
46
  _ref$tabIndex = _ref.tabIndex,
91
47
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
92
48
  var colorsTheme = (0, _useTheme["default"])();
93
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
49
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
94
50
  theme: colorsTheme.chip
95
- }, _react["default"].createElement(StyledDxcChip, {
51
+ }, /*#__PURE__*/_react["default"].createElement(StyledDxcChip, {
96
52
  disabled: disabled,
97
53
  margin: margin
98
- }, prefixIcon ? _react["default"].createElement(IconContainer, {
54
+ }, prefixIcon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
99
55
  disabled: disabled,
100
56
  prefixIcon: true,
101
57
  label: label,
@@ -105,7 +61,7 @@ var DxcChip = function DxcChip(_ref) {
105
61
  return onClickPrefix && !disabled && onClickPrefix(label);
106
62
  },
107
63
  interactuable: typeof onClickPrefix === "function" && !disabled
108
- }, (0, _typeof2["default"])(prefixIcon) === "object" ? prefixIcon : _react["default"].createElement(prefixIcon)) : prefixIconSrc && _react["default"].createElement(PrefixIconContainer, {
64
+ }, (0, _typeof2["default"])(prefixIcon) === "object" ? prefixIcon : /*#__PURE__*/_react["default"].createElement(prefixIcon)) : prefixIconSrc && /*#__PURE__*/_react["default"].createElement(PrefixIconContainer, {
109
65
  disabled: disabled,
110
66
  src: prefixIconSrc,
111
67
  label: label,
@@ -114,11 +70,11 @@ var DxcChip = function DxcChip(_ref) {
114
70
  return onClickPrefix && !disabled && onClickPrefix(label);
115
71
  },
116
72
  interactuable: typeof onClickPrefix === "function" && !disabled
117
- }), label && _react["default"].createElement(ChipTextContainer, {
73
+ }), label && /*#__PURE__*/_react["default"].createElement(ChipTextContainer, {
118
74
  disabled: disabled,
119
75
  prefixIconSrc: prefixIconSrc,
120
76
  suffixIconSrc: suffixIconSrc
121
- }, label), suffixIcon ? _react["default"].createElement(IconContainer, {
77
+ }, label), suffixIcon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
122
78
  disabled: disabled,
123
79
  suffixIcon: true,
124
80
  mode: "suffix",
@@ -128,7 +84,7 @@ var DxcChip = function DxcChip(_ref) {
128
84
  return onClickSuffix && !disabled && onClickSuffix(label);
129
85
  },
130
86
  interactuable: typeof onClickSuffix === "function" && !disabled
131
- }, (0, _typeof2["default"])(suffixIcon) === "object" ? suffixIcon : _react["default"].createElement(suffixIcon)) : suffixIconSrc && _react["default"].createElement(SuffixIconContainer, {
87
+ }, (0, _typeof2["default"])(suffixIcon) === "object" ? suffixIcon : /*#__PURE__*/_react["default"].createElement(suffixIcon)) : suffixIconSrc && /*#__PURE__*/_react["default"].createElement(SuffixIconContainer, {
132
88
  disabled: disabled,
133
89
  src: suffixIconSrc,
134
90
  label: label,
@@ -152,7 +108,7 @@ var getCursor = function getCursor(interactuable, disabled) {
152
108
  return "cursor:default; outline:none;";
153
109
  };
154
110
 
155
- var StyledDxcChip = _styledComponents["default"].div(_templateObject(), function (_ref2) {
111
+ var StyledDxcChip = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: center;\n min-height: 40px;\n max-width: ", ";\n background-color: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n padding-right: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n"])), function (_ref2) {
156
112
  var margin = _ref2.margin;
157
113
  return "calc(100% - 40px - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
158
114
  }, function (props) {
@@ -188,7 +144,7 @@ var StyledDxcChip = _styledComponents["default"].div(_templateObject(), function
188
144
  return disabled && "not-allowed";
189
145
  });
190
146
 
191
- var ChipTextContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
147
+ var ChipTextContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-style: ", ";\n color: ", ";\n cursor: ", ";\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n"])), function (props) {
192
148
  return props.theme.fontSize;
193
149
  }, function (props) {
194
150
  return props.theme.fontFamily;
@@ -203,7 +159,7 @@ var ChipTextContainer = _styledComponents["default"].span(_templateObject2(), fu
203
159
  return disabled && "not-allowed" || "default";
204
160
  });
205
161
 
206
- var SuffixIconContainer = _styledComponents["default"].img(_templateObject3(), function (props) {
162
+ var SuffixIconContainer = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-left: ", ";\n width: ", ";\n height: ", ";\n"])), function (props) {
207
163
  return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
208
164
  }, function (props) {
209
165
  return getCursor(props.interactuable, props.disabled);
@@ -215,7 +171,7 @@ var SuffixIconContainer = _styledComponents["default"].img(_templateObject3(), f
215
171
  return props.theme.iconSize;
216
172
  });
217
173
 
218
- var PrefixIconContainer = _styledComponents["default"].img(_templateObject4(), function (props) {
174
+ var PrefixIconContainer = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n margin-right: ", ";\n width: ", ";\n height: ", ";\n"])), function (props) {
219
175
  return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
220
176
  }, function (props) {
221
177
  return getCursor(props.interactuable, props.disabled);
@@ -227,7 +183,7 @@ var PrefixIconContainer = _styledComponents["default"].img(_templateObject4(), f
227
183
  return props.theme.iconSize;
228
184
  });
229
185
 
230
- var IconContainer = _styledComponents["default"].div(_templateObject5(), function (props) {
186
+ var IconContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n ", "\n width: ", ";\n height: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n ", "\n }\n"])), function (props) {
231
187
  return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
232
188
  }, function (props) {
233
189
  return props.prefixIcon ? "margin-right: ".concat((props.label || props.suffixIcon || props.suffixIconSrc) && props.theme.iconSpacing || (props.prefixIcon || props.prefixIconSrc) && "0", ";") : "margin-left: ".concat((props.label || props.prefixIcon || props.prefixIconSrc) && props.theme.iconSpacing || (props.prefixIcon || props.prefixIconSrc) && "0", ";");
@@ -0,0 +1,121 @@
1
+ import React from "react";
2
+ import { userEvent, within } from "@storybook/testing-library";
3
+ import DxcChip from "./Chip";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+
7
+ export default {
8
+ title: "Chip",
9
+ component: DxcChip,
10
+ };
11
+
12
+ const iconSVG = () => {
13
+ return (
14
+ <svg viewBox="0 0 24 24" fill="currentColor">
15
+ <path d="M0 0h24v24H0z" fill="none" />
16
+ <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
17
+ </svg>
18
+ );
19
+ };
20
+
21
+ export const Chromatic = () => (
22
+ <>
23
+ <ExampleContainer>
24
+ <Title title="Basic chip" theme="light" level={4} />
25
+ <DxcChip label="Default Chip" />
26
+ </ExampleContainer>
27
+ <ExampleContainer>
28
+ <Title title="Chip with prefix" theme="light" level={4} />
29
+ <DxcChip label="Chip with prefix" prefixIcon={iconSVG} />
30
+ </ExampleContainer>
31
+ <ExampleContainer>
32
+ <Title title="Chip with suffix" theme="light" level={4} />
33
+ <DxcChip label="Chip with suffix" suffixIcon={iconSVG} />
34
+ </ExampleContainer>
35
+ <ExampleContainer>
36
+ <Title title="Chip with prefix and suffix" theme="light" level={4} />
37
+ <DxcChip label="Chip with prefix and suffix" prefixIcon={iconSVG} suffixIcon={iconSVG} />
38
+ </ExampleContainer>
39
+ <ExampleContainer>
40
+ <Title title="Disabled chip" theme="light" level={4} />
41
+ <DxcChip label="Disabled" disabled prefixIcon={iconSVG} suffixIcon={iconSVG} />
42
+ </ExampleContainer>
43
+ <ExampleContainer>
44
+ <Title title="Chip with ellipsis" theme="light" level={4} />
45
+ <DxcChip label="With ellipsis asdfasdf asdf asdfasdf asdf asdfasdf asdfasdf asdf asdf adfasrfasf afsdg afgasfg asdf asdf asdf asdf asdf asdf asdf afdg asfg asdfg asdf asdf asdf asdfasdf asd fas df asd asdf asdf asdfasd fg ssssssssssss ssss" />
46
+ </ExampleContainer>
47
+ <ExampleContainer>
48
+ <Title title="Chip with ellipsis and suffix" theme="light" level={4} />
49
+ <DxcChip
50
+ suffixIcon={iconSVG}
51
+ label="With ellipsis asdfasdf asdf asdfasdf asdf asdfasdf asdfasdf asdf asdf adfasrfasf afsdg afgasfg asdf asdf asdf asdf asdf asdf asdf afdg asfg asdfg asdf asdf asdf asdfasdf asd fas df asd asdf asdf asdfasd fgsss"
52
+ />
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="Chip with ellipsis and prefix" theme="light" level={4} />
56
+ <DxcChip
57
+ prefixIcon={iconSVG}
58
+ label="With ellipsis asdfasdf asdf asdfasdf asdf asdfasdf asdfasdf asdf asdf adfasrfasf afsdg afgasfg asdf asdf asdf asdf asdf asdf asdf afdg asfg asdfg asdf asdf asdf asdfasdf asd fas df asd asdf asdf asdfasd fgsss"
59
+ />
60
+ </ExampleContainer>
61
+ <ExampleContainer>
62
+ <Title title="Chip with ellipsis, suffix and prefix" theme="light" level={4} />
63
+ <DxcChip
64
+ prefixIcon={iconSVG}
65
+ suffixIcon={iconSVG}
66
+ label="With ellipsis asdfasdf asdf asdfasdf asdf asdfasdf asdfasdf asdf asdf adfasrfasf afsdg afgasfg asdf asdf asdf asdf asdf asdf asdf afdg asfg asdfg asdf asdf asdf asdfasdf asd fas df asd asdf asdf asdfasdf"
67
+ />
68
+ </ExampleContainer>
69
+ <Title title="Margins" theme="light" level={2} />
70
+ <ExampleContainer>
71
+ <Title title="Xxsmall margin" theme="light" level={4} />
72
+ <DxcChip label="xxsmall" margin="xxsmall" />
73
+ </ExampleContainer>
74
+ <ExampleContainer>
75
+ <Title title="Xsmall margin" theme="light" level={4} />
76
+ <DxcChip label="xsmall" margin="xsmall" />
77
+ </ExampleContainer>
78
+ <ExampleContainer>
79
+ <Title title="Small margin" theme="light" level={4} />
80
+ <DxcChip label="small" margin="small" />
81
+ </ExampleContainer>
82
+ <ExampleContainer>
83
+ <Title title="Medium margin" theme="light" level={4} />
84
+ <DxcChip label="medium" margin="medium" />
85
+ </ExampleContainer>
86
+ <ExampleContainer>
87
+ <Title title="Large margin" theme="light" level={4} />
88
+ <DxcChip label="large" margin="large" />
89
+ </ExampleContainer>
90
+ <ExampleContainer>
91
+ <Title title="Xlarge margin" theme="light" level={4} />
92
+ <DxcChip label="xlarge" margin="xlarge" />
93
+ </ExampleContainer>
94
+ <ExampleContainer>
95
+ <Title title="Xxlarge margin" theme="light" level={4} />
96
+ <DxcChip label="xxlarge" margin="xxlarge" />
97
+ </ExampleContainer>
98
+ </>
99
+ );
100
+ const ChipPrefixFocused = () => (
101
+ <ExampleContainer>
102
+ <Title title="Chip with prefix" theme="light" level={4} />
103
+ <DxcChip label="Chip with prefix" prefixIcon={iconSVG} onClickPrefix={() => {}} />
104
+ </ExampleContainer>
105
+ );
106
+ const ChipSuffixFocused = () => (
107
+ <ExampleContainer>
108
+ <Title title="Chip with suffix" theme="light" level={4} />
109
+ <DxcChip label="Chip with suffix" suffixIcon={iconSVG} onClickSuffix={() => {}} />
110
+ </ExampleContainer>
111
+ );
112
+
113
+ export const PrefixFocused = ChipPrefixFocused.bind({});
114
+ PrefixFocused.play = async ({ canvasElement }) => {
115
+ await userEvent.tab();
116
+ };
117
+
118
+ export const SuffixFocused = ChipSuffixFocused.bind({});
119
+ SuffixFocused.play = async ({ canvasElement }) => {
120
+ await userEvent.tab();
121
+ };
@@ -0,0 +1,22 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ label?: string;
11
+ suffixIcon?: any;
12
+ preffixIcon?: any;
13
+ suffixIconSrc?: string;
14
+ onClickSuffix?: void;
15
+ prefixIconSrc?: string;
16
+ onClickPrefix?: void;
17
+ disabled?: boolean;
18
+ margin?: Space | Margin;
19
+ tabIndex?: number;
20
+ };
21
+
22
+ export default function DxcChip(props: Props): JSX.Element;
File without changes
@@ -15,23 +15,15 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
15
 
16
16
  var _propTypes = _interopRequireDefault(require("prop-types"));
17
17
 
18
- function _templateObject() {
19
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: #d0011b;\n margin-right: 1px;\n cursor: default;\n"]);
20
-
21
- _templateObject = function _templateObject() {
22
- return data;
23
- };
24
-
25
- return data;
26
- }
18
+ var _templateObject;
27
19
 
28
20
  var DxcRequired = function DxcRequired(_ref) {
29
21
  var _ref$theme = _ref.theme,
30
22
  theme = _ref$theme === void 0 ? "light" : _ref$theme;
31
- return _react["default"].createElement(RequiredSpan, null, "*");
23
+ return /*#__PURE__*/_react["default"].createElement(RequiredSpan, null, "*");
32
24
  };
33
25
 
34
- var RequiredSpan = _styledComponents["default"].span(_templateObject());
26
+ var RequiredSpan = _styledComponents["default"].span(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: #d0011b;\n margin-right: 1px;\n cursor: default;\n"])));
35
27
 
36
28
  DxcRequired.propTypes = {
37
29
  theme: _propTypes["default"].oneOf(["dark", "light"])
File without changes
File without changes
File without changes