@dxc-technology/halstack-react 0.0.0-6321857 → 0.0.0-633a60e

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 (347) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  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/types.d.ts +49 -0
  18. package/alert/types.js +5 -0
  19. package/badge/Badge.js +59 -0
  20. package/{dist/box → box}/Box.js +36 -29
  21. package/box/Box.stories.jsx +132 -0
  22. package/box/index.d.ts +25 -0
  23. package/button/Button.d.ts +4 -0
  24. package/button/Button.js +177 -0
  25. package/button/Button.stories.tsx +293 -0
  26. package/button/types.d.ts +57 -0
  27. package/button/types.js +5 -0
  28. package/card/Card.d.ts +4 -0
  29. package/card/Card.js +165 -0
  30. package/card/types.d.ts +69 -0
  31. package/card/types.js +5 -0
  32. package/checkbox/Checkbox.d.ts +4 -0
  33. package/checkbox/Checkbox.js +253 -0
  34. package/checkbox/Checkbox.stories.tsx +192 -0
  35. package/checkbox/types.d.ts +60 -0
  36. package/checkbox/types.js +5 -0
  37. package/chip/Chip.js +221 -0
  38. package/chip/index.d.ts +22 -0
  39. package/{dist/common → common}/OpenSans.css +0 -0
  40. package/{dist/common → common}/RequiredComponent.js +3 -11
  41. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  42. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  43. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  50. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  51. package/common/utils.js +22 -0
  52. package/common/variables.js +1569 -0
  53. package/{dist/date → date}/Date.js +77 -56
  54. package/date/index.d.ts +27 -0
  55. package/date-input/DateInput.d.ts +4 -0
  56. package/date-input/DateInput.js +361 -0
  57. package/date-input/types.d.ts +100 -0
  58. package/date-input/types.js +5 -0
  59. package/dialog/Dialog.d.ts +4 -0
  60. package/dialog/Dialog.js +165 -0
  61. package/dialog/types.d.ts +43 -0
  62. package/dialog/types.js +5 -0
  63. package/dropdown/Dropdown.d.ts +4 -0
  64. package/dropdown/Dropdown.js +417 -0
  65. package/dropdown/types.d.ts +89 -0
  66. package/dropdown/types.js +5 -0
  67. package/file-input/FileInput.js +532 -0
  68. package/file-input/FileItem.js +193 -0
  69. package/file-input/index.d.ts +81 -0
  70. package/footer/Footer.d.ts +4 -0
  71. package/footer/Footer.js +266 -0
  72. package/footer/Footer.stories.jsx +151 -0
  73. package/footer/Icons.js +77 -0
  74. package/footer/types.d.ts +61 -0
  75. package/footer/types.js +5 -0
  76. package/header/Header.d.ts +7 -0
  77. package/header/Header.js +324 -0
  78. package/header/Icons.js +34 -0
  79. package/header/types.d.ts +45 -0
  80. package/header/types.js +5 -0
  81. package/heading/Heading.js +176 -0
  82. package/heading/index.d.ts +17 -0
  83. package/input-text/Icons.js +22 -0
  84. package/input-text/InputText.js +611 -0
  85. package/input-text/index.d.ts +36 -0
  86. package/{dist/layout → layout}/ApplicationLayout.js +39 -134
  87. package/layout/Icons.js +55 -0
  88. package/link/Link.d.ts +3 -0
  89. package/link/Link.js +161 -0
  90. package/link/types.d.ts +74 -0
  91. package/link/types.js +5 -0
  92. package/main.d.ts +44 -0
  93. package/{dist/main.js → main.js} +125 -65
  94. package/number-input/NumberInput.js +128 -0
  95. package/number-input/NumberInput.stories.jsx +115 -0
  96. package/number-input/NumberInputContext.js +16 -0
  97. package/number-input/index.d.ts +113 -0
  98. package/package.json +32 -23
  99. package/paginator/Icons.js +66 -0
  100. package/paginator/Paginator.d.ts +4 -0
  101. package/paginator/Paginator.js +198 -0
  102. package/paginator/Paginator.stories.tsx +63 -0
  103. package/paginator/types.d.ts +38 -0
  104. package/paginator/types.js +5 -0
  105. package/password-input/PasswordInput.d.ts +4 -0
  106. package/password-input/PasswordInput.js +162 -0
  107. package/password-input/PasswordInput.stories.tsx +131 -0
  108. package/password-input/types.d.ts +100 -0
  109. package/password-input/types.js +5 -0
  110. package/progress-bar/ProgressBar.d.ts +4 -0
  111. package/progress-bar/ProgressBar.js +170 -0
  112. package/progress-bar/types.d.ts +37 -0
  113. package/progress-bar/types.js +5 -0
  114. package/radio/Radio.d.ts +4 -0
  115. package/radio/Radio.js +174 -0
  116. package/radio/Radio.stories.tsx +192 -0
  117. package/radio/types.d.ts +54 -0
  118. package/radio/types.js +5 -0
  119. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +89 -141
  120. package/resultsetTable/index.d.ts +19 -0
  121. package/select/Select.js +865 -0
  122. package/select/index.d.ts +131 -0
  123. package/sidenav/Sidenav.js +145 -0
  124. package/sidenav/index.d.ts +13 -0
  125. package/slider/Slider.d.ts +4 -0
  126. package/slider/Slider.js +306 -0
  127. package/slider/types.d.ts +83 -0
  128. package/slider/types.js +5 -0
  129. package/spinner/Spinner.d.ts +4 -0
  130. package/spinner/Spinner.js +250 -0
  131. package/spinner/Spinner.stories.jsx +102 -0
  132. package/spinner/types.d.ts +32 -0
  133. package/spinner/types.js +5 -0
  134. package/switch/Switch.d.ts +4 -0
  135. package/switch/Switch.js +179 -0
  136. package/switch/Switch.stories.tsx +160 -0
  137. package/switch/types.d.ts +58 -0
  138. package/switch/types.js +5 -0
  139. package/table/Table.d.ts +4 -0
  140. package/table/Table.js +118 -0
  141. package/table/Table.stories.jsx +276 -0
  142. package/table/types.d.ts +21 -0
  143. package/table/types.js +5 -0
  144. package/tabs/Tabs.d.ts +4 -0
  145. package/tabs/Tabs.js +211 -0
  146. package/tabs/types.d.ts +71 -0
  147. package/tabs/types.js +5 -0
  148. package/tag/Tag.js +214 -0
  149. package/tag/Tag.stories.jsx +145 -0
  150. package/tag/index.d.ts +24 -0
  151. package/text-input/TextInput.js +825 -0
  152. package/text-input/index.d.ts +135 -0
  153. package/textarea/Textarea.js +317 -0
  154. package/textarea/Textarea.stories.jsx +135 -0
  155. package/textarea/index.d.ts +117 -0
  156. package/{dist/toggle → toggle}/Toggle.js +17 -51
  157. package/toggle/index.d.ts +21 -0
  158. package/toggle-group/ToggleGroup.js +243 -0
  159. package/toggle-group/index.d.ts +21 -0
  160. package/{dist/upload → upload}/Upload.js +23 -22
  161. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  162. package/upload/buttons-upload/Icons.js +40 -0
  163. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  164. package/upload/dragAndDropArea/Icons.js +39 -0
  165. package/upload/file-upload/FileToUpload.js +115 -0
  166. package/upload/file-upload/Icons.js +66 -0
  167. package/upload/files-upload/FilesToUpload.js +109 -0
  168. package/upload/index.d.ts +15 -0
  169. package/upload/transaction/Icons.js +160 -0
  170. package/upload/transaction/Transaction.js +104 -0
  171. package/upload/transactions/Transactions.js +94 -0
  172. package/{dist/useTheme.js → useTheme.js} +0 -0
  173. package/wizard/Icons.js +65 -0
  174. package/wizard/Wizard.js +271 -0
  175. package/wizard/index.d.ts +18 -0
  176. package/README.md +0 -66
  177. package/babel.config.js +0 -8
  178. package/dist/ThemeContext.js +0 -180
  179. package/dist/accordion/Accordion.js +0 -268
  180. package/dist/accordion/Accordion.stories.js +0 -207
  181. package/dist/accordion/readme.md +0 -96
  182. package/dist/accordion-group/AccordionGroup.js +0 -156
  183. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  184. package/dist/accordion-group/readme.md +0 -70
  185. package/dist/alert/Alert.js +0 -303
  186. package/dist/alert/Alert.stories.js +0 -158
  187. package/dist/alert/close.svg +0 -4
  188. package/dist/alert/error.svg +0 -4
  189. package/dist/alert/info.svg +0 -4
  190. package/dist/alert/readme.md +0 -43
  191. package/dist/alert/success.svg +0 -4
  192. package/dist/alert/warning.svg +0 -4
  193. package/dist/badge/Badge.js +0 -42
  194. package/dist/button/Button.js +0 -199
  195. package/dist/button/Button.stories.js +0 -224
  196. package/dist/button/readme.md +0 -93
  197. package/dist/card/Card.js +0 -217
  198. package/dist/checkbox/Checkbox.js +0 -229
  199. package/dist/checkbox/Checkbox.stories.js +0 -144
  200. package/dist/checkbox/readme.md +0 -116
  201. package/dist/chip/Chip.js +0 -205
  202. package/dist/common/services/example-service.js +0 -10
  203. package/dist/common/services/example-service.test.js +0 -12
  204. package/dist/common/utils.js +0 -42
  205. package/dist/common/variables.js +0 -361
  206. package/dist/date/Date.stories.js +0 -205
  207. package/dist/date/calendar.svg +0 -1
  208. package/dist/date/calendar_dark.svg +0 -1
  209. package/dist/date/readme.md +0 -73
  210. package/dist/dialog/Dialog.js +0 -195
  211. package/dist/dialog/Dialog.stories.js +0 -217
  212. package/dist/dialog/readme.md +0 -32
  213. package/dist/dropdown/Dropdown.js +0 -446
  214. package/dist/dropdown/Dropdown.stories.js +0 -249
  215. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  216. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  217. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  218. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  219. package/dist/dropdown/readme.md +0 -69
  220. package/dist/footer/Footer.js +0 -366
  221. package/dist/footer/Footer.stories.js +0 -94
  222. package/dist/footer/dxc_logo_wht.png +0 -0
  223. package/dist/footer/readme.md +0 -41
  224. package/dist/header/Header.js +0 -368
  225. package/dist/header/Header.stories.js +0 -176
  226. package/dist/header/close_icon.svg +0 -1
  227. package/dist/header/dxc_logo_black.png +0 -0
  228. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  229. package/dist/header/dxc_logo_white.png +0 -0
  230. package/dist/header/hamb_menu_black.svg +0 -1
  231. package/dist/header/hamb_menu_white.svg +0 -1
  232. package/dist/header/readme.md +0 -33
  233. package/dist/heading/Heading.js +0 -153
  234. package/dist/input-text/InputText.js +0 -561
  235. package/dist/input-text/InputText.stories.js +0 -209
  236. package/dist/input-text/error.svg +0 -1
  237. package/dist/input-text/readme.md +0 -91
  238. package/dist/layout/facebook.svg +0 -45
  239. package/dist/layout/linkedin.svg +0 -50
  240. package/dist/layout/twitter.svg +0 -53
  241. package/dist/link/Link.js +0 -187
  242. package/dist/link/readme.md +0 -51
  243. package/dist/paginator/Paginator.js +0 -247
  244. package/dist/paginator/images/next.svg +0 -3
  245. package/dist/paginator/images/nextPage.svg +0 -3
  246. package/dist/paginator/images/previous.svg +0 -3
  247. package/dist/paginator/images/previousPage.svg +0 -3
  248. package/dist/paginator/readme.md +0 -50
  249. package/dist/progress-bar/ProgressBar.js +0 -184
  250. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  251. package/dist/progress-bar/readme.md +0 -63
  252. package/dist/radio/Radio.js +0 -190
  253. package/dist/radio/Radio.stories.js +0 -166
  254. package/dist/radio/readme.md +0 -70
  255. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  256. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  257. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  258. package/dist/select/Select.js +0 -475
  259. package/dist/select/Select.stories.js +0 -235
  260. package/dist/select/readme.md +0 -72
  261. package/dist/sidenav/Sidenav.js +0 -123
  262. package/dist/slider/Slider.js +0 -257
  263. package/dist/slider/Slider.stories.js +0 -241
  264. package/dist/slider/readme.md +0 -64
  265. package/dist/spinner/Spinner.js +0 -190
  266. package/dist/spinner/Spinner.stories.js +0 -183
  267. package/dist/spinner/readme.md +0 -65
  268. package/dist/switch/Switch.js +0 -190
  269. package/dist/switch/Switch.stories.js +0 -134
  270. package/dist/switch/readme.md +0 -133
  271. package/dist/table/Table.js +0 -90
  272. package/dist/tabs/Tabs.js +0 -307
  273. package/dist/tabs/Tabs.stories.js +0 -130
  274. package/dist/tabs/readme.md +0 -78
  275. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  276. package/dist/tabs-for-sections/readme.md +0 -78
  277. package/dist/tag/Tag.js +0 -249
  278. package/dist/textarea/Textarea.js +0 -220
  279. package/dist/toggle/Toggle.stories.js +0 -297
  280. package/dist/toggle/readme.md +0 -80
  281. package/dist/toggle-group/ToggleGroup.js +0 -209
  282. package/dist/toggle-group/readme.md +0 -82
  283. package/dist/upload/Upload.stories.js +0 -72
  284. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -119
  285. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  286. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  287. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -278
  288. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  289. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  290. package/dist/upload/file-upload/FileToUpload.js +0 -154
  291. package/dist/upload/file-upload/audio-icon.svg +0 -4
  292. package/dist/upload/file-upload/close.svg +0 -4
  293. package/dist/upload/file-upload/file-icon.svg +0 -4
  294. package/dist/upload/file-upload/video-icon.svg +0 -4
  295. package/dist/upload/files-upload/FilesToUpload.js +0 -120
  296. package/dist/upload/readme.md +0 -37
  297. package/dist/upload/transaction/Transaction.js +0 -152
  298. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  299. package/dist/upload/transaction/audio-icon.svg +0 -4
  300. package/dist/upload/transaction/error-icon.svg +0 -4
  301. package/dist/upload/transaction/file-icon-err.svg +0 -4
  302. package/dist/upload/transaction/file-icon.svg +0 -4
  303. package/dist/upload/transaction/image-icon-err.svg +0 -4
  304. package/dist/upload/transaction/image-icon.svg +0 -4
  305. package/dist/upload/transaction/success-icon.svg +0 -4
  306. package/dist/upload/transaction/video-icon-err.svg +0 -4
  307. package/dist/upload/transaction/video-icon.svg +0 -4
  308. package/dist/upload/transactions/Transactions.js +0 -116
  309. package/dist/wizard/Wizard.js +0 -325
  310. package/dist/wizard/invalid_icon.svg +0 -6
  311. package/dist/wizard/valid_icon.svg +0 -6
  312. package/dist/wizard/validation-wrong.svg +0 -6
  313. package/test/Accordion.test.js +0 -33
  314. package/test/AccordionGroup.test.js +0 -109
  315. package/test/Alert.test.js +0 -53
  316. package/test/Box.test.js +0 -10
  317. package/test/Button.test.js +0 -18
  318. package/test/Card.test.js +0 -30
  319. package/test/Checkbox.test.js +0 -45
  320. package/test/Chip.test.js +0 -25
  321. package/test/Date.test.js +0 -393
  322. package/test/Dialog.test.js +0 -23
  323. package/test/Dropdown.test.js +0 -130
  324. package/test/Footer.test.js +0 -99
  325. package/test/Header.test.js +0 -39
  326. package/test/Heading.test.js +0 -35
  327. package/test/InputText.test.js +0 -240
  328. package/test/Link.test.js +0 -42
  329. package/test/Paginator.test.js +0 -177
  330. package/test/ProgressBar.test.js +0 -35
  331. package/test/Radio.test.js +0 -37
  332. package/test/ResultsetTable.test.js +0 -330
  333. package/test/Select.test.js +0 -192
  334. package/test/Sidenav.test.js +0 -45
  335. package/test/Slider.test.js +0 -82
  336. package/test/Spinner.test.js +0 -27
  337. package/test/Switch.test.js +0 -45
  338. package/test/Table.test.js +0 -36
  339. package/test/Tabs.test.js +0 -109
  340. package/test/TabsForSections.test.js +0 -34
  341. package/test/Tag.test.js +0 -32
  342. package/test/TextArea.test.js +0 -52
  343. package/test/ToggleGroup.test.js +0 -81
  344. package/test/Upload.test.js +0 -60
  345. package/test/Wizard.test.js +0 -130
  346. package/test/mocks/pngMock.js +0 -1
  347. package/test/mocks/svgMock.js +0 -1
@@ -1,4 +0,0 @@
1
- <svg id="baseline-arrow_drop_down-24px" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
- <path id="Trazado_2384" data-name="Trazado 2384" d="M7,10l5,5,5-5Z" fill="#fff"/>
3
- <path id="Trazado_2385" data-name="Trazado 2385" d="M0,0H24V24H0Z" fill="none"/>
4
- </svg>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M7 14l5-5 5 5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>
@@ -1,4 +0,0 @@
1
- <svg id="baseline-arrow_drop_up-24px" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
2
- <path id="Trazado_2386" data-name="Trazado 2386" d="M7,14l5-5,5,5Z" fill="#fff"/>
3
- <path id="Trazado_2387" data-name="Trazado 2387" d="M0,0H24V24H0Z" fill="none"/>
4
- </svg>
@@ -1,69 +0,0 @@
1
- # DXC Dropdown Component
2
-
3
- ## Props
4
-
5
- <table>
6
- <tr style="background-color: grey">
7
- <td>Name</td>
8
- <td>Default</td>
9
- <td>Description</td>
10
- </tr>
11
- <tr>
12
- <td>options: object[]</td>
13
- <td><code>[]</code></td>
14
- <td>An array of objects representing the options. Each object has the following properties:
15
- <ul>
16
- <li><b>label</b>: Option display value</li>
17
- <li><b>iconSrc</b>: URL of the icon that will be placed next to the option label (Optional)</li>
18
- <li><b>value</b>: Option inner value</li>
19
- <li><b>options</b>: array for nested</li>
20
- </ul>
21
- </td>
22
- </tr>
23
- <tr>
24
- <td>optionsIconPosition: 'before' | 'after'</td>
25
- <td><code>'before'</code></td>
26
- <td>In case options include an icon, whether the icon should appear after or before the label.</td>
27
- </tr>
28
- <tr>
29
- <td>iconSrc: string</td>
30
- <td><code></code></td>
31
- <td>URL of the icon that will be placed next to the option label (Optional)</td>
32
- </tr>
33
- <tr>
34
- <td>iconPosition: 'before' | 'after'</td>
35
- <td><code>'before'</code></td>
36
- <td>Whether the icon should appear after or before the label.</td>
37
- </tr>
38
- <tr>
39
- <td>label: string</td>
40
- <td></td>
41
- <td>Text to be placed within the dropdown.</td>
42
- </tr>
43
- <tr>
44
- <td>theme: 'light' | 'dark'</td>
45
- <td><code>'light'</code></td>
46
- <td>Uses one of the available component themes.</td>
47
- </tr>
48
- <tr>
49
- <td>mode: 'basic' | 'outlined'</td>
50
- <td><code>'basic'</code></td>
51
- <td>Uses one of the available component modes.</td>
52
- </tr>
53
- <tr>
54
- <td>showCaret: boolean</td>
55
- <td><code>true</code></td>
56
- <td>Whether the arrow next to the labe must be displayed or not.</td>
57
- </tr>
58
- <tr>
59
- <td>disableRipple: boolean</td>
60
- <td><code>false</code></td>
61
- <td>If true, the ripple effect will be disabled.</td>
62
- </tr>
63
- <tr>
64
- <td>onSelectOption: function</td>
65
- <td></td>
66
- <td>This function will be called every time the selection changes. The string with the key of the selected value will be passed as a parameter to this function.</td>
67
- </tr>
68
- </table>
69
-
@@ -1,366 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
-
18
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
- require("../common/OpenSans.css");
27
-
28
- var _variables = require("../common/variables.js");
29
-
30
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
-
32
- function _templateObject13() {
33
- var data = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n color: ", ";\n font-size: 12px;\n"]);
34
-
35
- _templateObject13 = function _templateObject13() {
36
- return data;
37
- };
38
-
39
- return data;
40
- }
41
-
42
- function _templateObject12() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0px 10px;\n color: ", ";\n"]);
44
-
45
- _templateObject12 = function _templateObject12() {
46
- return data;
47
- };
48
-
49
- return data;
50
- }
51
-
52
- function _templateObject11() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n height: 25px;\n width: 25px;\n color: ", ";\n }\n\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
54
-
55
- _templateObject11 = function _templateObject11() {
56
- return data;
57
- };
58
-
59
- return data;
60
- }
61
-
62
- function _templateObject10() {
63
- var data = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n height: 25px;\n width: 25px;\n fill: ", ";\n }\n"]);
64
-
65
- _templateObject10 = function _templateObject10() {
66
- return data;
67
- };
68
-
69
- return data;
70
- }
71
-
72
- function _templateObject9() {
73
- var data = (0, _taggedTemplateLiteral2["default"])(["\n & {\n display: inline-flex;\n margin-left: ", ";\n }\n"]);
74
-
75
- _templateObject9 = function _templateObject9() {
76
- return data;
77
- };
78
-
79
- return data;
80
- }
81
-
82
- function _templateObject8() {
83
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: 34px;\n width: auto;\n\n img,\n svg:not(:root) {\n height: 100%;\n }\n"]);
84
-
85
- _templateObject8 = function _templateObject8() {
86
- return data;
87
- };
88
-
89
- return data;
90
- }
91
-
92
- function _templateObject7() {
93
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: 34px;\n width: auto;\n"]);
94
-
95
- _templateObject7 = function _templateObject7() {
96
- return data;
97
- };
98
-
99
- return data;
100
- }
101
-
102
- function _templateObject6() {
103
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: 12px;\n color: ", ";\n max-width: ", ";\n width: ", ";\n text-align: ", ";\n"]);
104
-
105
- _templateObject6 = function _templateObject6() {
106
- return data;
107
- };
108
-
109
- return data;
110
- }
111
-
112
- function _templateObject5() {
113
- var data = (0, _taggedTemplateLiteral2["default"])(["\n min-height: 15px;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n color: ", ";\n overflow: hidden;\n"]);
114
-
115
- _templateObject5 = function _templateObject5() {
116
- return data;
117
- };
118
-
119
- return data;
120
- }
121
-
122
- function _templateObject4() {
123
- var data = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: 6px;\n border-top: 2px solid ", ";\n display: inline-flex;\n flex-wrap: wrap;\n max-width: ", ";\n width: ", ";\n & > span:last-child span {\n display: none;\n }\n margin: ", ";\n"]);
124
-
125
- _templateObject4 = function _templateObject4() {
126
- return data;
127
- };
128
-
129
- return data;
130
- }
131
-
132
- function _templateObject3() {
133
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n flex-direction: ", ";\n align-items: ", ";\n"]);
134
-
135
- _templateObject3 = function _templateObject3() {
136
- return data;
137
- };
138
-
139
- return data;
140
- }
141
-
142
- function _templateObject2() {
143
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n"]);
144
-
145
- _templateObject2 = function _templateObject2() {
146
- return data;
147
- };
148
-
149
- return data;
150
- }
151
-
152
- function _templateObject() {
153
- var data = (0, _taggedTemplateLiteral2["default"])(["\n padding: ", ";\n font-family: \"Open Sans\", sans-serif;\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: 120px;\n"]);
154
-
155
- _templateObject = function _templateObject() {
156
- return data;
157
- };
158
-
159
- return data;
160
- }
161
-
162
- var DxcFooter = function DxcFooter(_ref) {
163
- var _ref$socialLinks = _ref.socialLinks,
164
- socialLinks = _ref$socialLinks === void 0 ? [] : _ref$socialLinks,
165
- _ref$bottomLinks = _ref.bottomLinks,
166
- bottomLinks = _ref$bottomLinks === void 0 ? [] : _ref$bottomLinks,
167
- _ref$copyright = _ref.copyright,
168
- copyright = _ref$copyright === void 0 ? "" : _ref$copyright,
169
- _ref$logoSrc = _ref.logoSrc,
170
- logoSrc = _ref$logoSrc === void 0 ? "default" : _ref$logoSrc,
171
- children = _ref.children,
172
- padding = _ref.padding,
173
- margin = _ref.margin;
174
- var ref = (0, _react.useRef)(null);
175
-
176
- var _useState = (0, _react.useState)(),
177
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
178
- refSize = _useState2[0],
179
- setRefSize = _useState2[1];
180
-
181
- var _useState3 = (0, _react.useState)(false),
182
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
183
- isResponsiveTablet = _useState4[0],
184
- setIsResponsiveTablet = _useState4[1];
185
-
186
- var _useState5 = (0, _react.useState)(false),
187
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
188
- isResponsivePhone = _useState6[0],
189
- setIsResponsivePhone = _useState6[1];
190
-
191
- var colorsTheme = (0, _useTheme["default"])();
192
-
193
- var handleResize = function handleResize(refWidth) {
194
- if (ref.current) {
195
- setRefSize(refWidth);
196
-
197
- if (refWidth <= _variables.responsiveSizes.tablet && refWidth > _variables.responsiveSizes.mobileLarge) {
198
- setIsResponsiveTablet(true);
199
- setIsResponsivePhone(false);
200
- } else if (refWidth <= _variables.responsiveSizes.tablet && refWidth <= _variables.responsiveSizes.mobileLarge) {
201
- setIsResponsivePhone(true);
202
- setIsResponsiveTablet(false);
203
- } else {
204
- setIsResponsiveTablet(false);
205
- setIsResponsivePhone(false);
206
- }
207
- }
208
- };
209
-
210
- var handleEventListener = function handleEventListener() {
211
- handleResize(ref.current.offsetWidth);
212
- };
213
-
214
- (0, _react.useEffect)(function () {
215
- window.addEventListener("resize", handleEventListener);
216
- handleResize(ref.current.offsetWidth);
217
- return function () {
218
- window.removeEventListener("resize", handleEventListener);
219
- };
220
- }, []);
221
- var socialLink = socialLinks.map(function (link, index) {
222
- return _react["default"].createElement(SocialAnchor, {
223
- key: "social".concat(index).concat(link.href),
224
- index: index,
225
- href: link && link.href ? link.href : ""
226
- }, link.logo ? _react["default"].createElement(SocialIconContainer, null, (0, _typeof2["default"])(link.logo) === "object" ? link.logo : _react["default"].createElement(link.logo)) : link && link.logoSrc && _react["default"].createElement(SocialIcon, {
227
- src: link.logoSrc
228
- }));
229
- });
230
- var bottomLink = bottomLinks.map(function (link, index) {
231
- return _react["default"].createElement("span", {
232
- key: "bottom".concat(index).concat(link.text)
233
- }, _react["default"].createElement(BottomLink, {
234
- href: link && link.href ? link.href : ""
235
- }, link && link.text ? link.text : ""), _react["default"].createElement(Point, {
236
- index: index
237
- }, "\xB7"));
238
- });
239
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
240
- theme: colorsTheme.footer
241
- }, _react["default"].createElement(FooterContainer, {
242
- margin: margin,
243
- refSize: refSize,
244
- ref: ref
245
- }, _react["default"].createElement(FooterHeader, null, _react["default"].createElement(LogoIcon, {
246
- logoSrc: logoSrc,
247
- src: logoSrc === "default" ? _variables.componentTokens.footer.logo : logoSrc
248
- }), _react["default"].createElement("div", null, socialLink)), isResponsivePhone && _react["default"].createElement("div", null, _react["default"].createElement(FooterFooter, {
249
- className: "footerFooter",
250
- refSize: refSize
251
- }, _react["default"].createElement(BottomLinks, {
252
- refSize: refSize
253
- }, bottomLink), _react["default"].createElement(Copyright, {
254
- refSize: refSize
255
- }, copyright))), (!isResponsiveTablet && !isResponsivePhone || isResponsiveTablet) && _react["default"].createElement("div", null, _react["default"].createElement(ChildComponents, {
256
- padding: padding
257
- }, children), _react["default"].createElement(FooterFooter, {
258
- className: "footerFooter"
259
- }, _react["default"].createElement(BottomLinks, {
260
- refSize: refSize
261
- }, bottomLink), _react["default"].createElement(Copyright, {
262
- refSize: refSize
263
- }, copyright)))));
264
- };
265
-
266
- var FooterContainer = _styledComponents["default"].footer(_templateObject(), function (props) {
267
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "20px 20px 20px 20px" : "20px 60px 20px 20px";
268
- }, function (props) {
269
- return props.theme.backgroundColor;
270
- }, function (props) {
271
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
272
- });
273
-
274
- var FooterHeader = _styledComponents["default"].div(_templateObject2());
275
-
276
- var FooterFooter = _styledComponents["default"].div(_templateObject3(), function (props) {
277
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "column" : "row";
278
- }, function (props) {
279
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "center" : "";
280
- });
281
-
282
- var BottomLinks = _styledComponents["default"].div(_templateObject4(), function (props) {
283
- return props.theme.lineColor;
284
- }, function (props) {
285
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "100%" : "60%";
286
- }, function (props) {
287
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "100%" : "";
288
- }, function (props) {
289
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "40px 0 40px 0" : "";
290
- });
291
-
292
- var ChildComponents = _styledComponents["default"].div(_templateObject5(), function (props) {
293
- return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
294
- }, function (props) {
295
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
296
- }, function (props) {
297
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
298
- }, function (props) {
299
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
300
- }, function (props) {
301
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
302
- }, function (props) {
303
- return props.theme.fontColor;
304
- });
305
-
306
- var Copyright = _styledComponents["default"].div(_templateObject6(), function (props) {
307
- return props.theme.fontColor;
308
- }, function (props) {
309
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "100%" : "40%";
310
- }, function (props) {
311
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "100%" : "";
312
- }, function (props) {
313
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "center" : "right";
314
- });
315
-
316
- var LogoIcon = _styledComponents["default"].img(_templateObject7());
317
-
318
- var LogoIconContainer = _styledComponents["default"].div(_templateObject8());
319
-
320
- var SocialAnchor = _styledComponents["default"].a(_templateObject9(), function (props) {
321
- return props.index === 0 ? "0px" : "15px";
322
- });
323
-
324
- var SocialIcon = _styledComponents["default"].img(_templateObject10(), function (props) {
325
- return props.theme.fontColor;
326
- });
327
-
328
- var SocialIconContainer = _styledComponents["default"].div(_templateObject11(), function (props) {
329
- return props.theme.fontColor;
330
- });
331
-
332
- var Point = _styledComponents["default"].span(_templateObject12(), function (props) {
333
- return props.theme.fontColor;
334
- });
335
-
336
- var BottomLink = _styledComponents["default"].a(_templateObject13(), function (props) {
337
- return props.theme.fontColor;
338
- });
339
-
340
- DxcFooter.propTypes = {
341
- logoSrc: _propTypes["default"].string,
342
- socialLinks: _propTypes["default"].arrayOf(_propTypes["default"].shape({
343
- logo: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
344
- logoSrc: _propTypes["default"].string.isRequired,
345
- href: _propTypes["default"].string
346
- })),
347
- bottomLinks: _propTypes["default"].arrayOf(_propTypes["default"].shape({
348
- text: _propTypes["default"].string.isRequired,
349
- href: _propTypes["default"].string
350
- })),
351
- copyright: _propTypes["default"].string,
352
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
353
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
354
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
355
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
356
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
357
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
358
- padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
359
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
360
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
361
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
362
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
363
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
364
- };
365
- var _default = DxcFooter;
366
- exports["default"] = _default;
@@ -1,94 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _react2 = require("@storybook/react");
8
-
9
- var _addonActions = require("@storybook/addon-actions");
10
-
11
- require("../common/OpenSans.css");
12
-
13
- var _addonKnobs = require("@storybook/addon-knobs");
14
-
15
- var _linkedin = _interopRequireDefault(require("../../.storybook/public/linkedin.svg"));
16
-
17
- var _facebook = _interopRequireDefault(require("../../.storybook/public/facebook.svg"));
18
-
19
- var _twitter = _interopRequireDefault(require("../../.storybook/public/twitter.svg"));
20
-
21
- var _InputText = _interopRequireDefault(require("../input-text/InputText"));
22
-
23
- var _readme = _interopRequireDefault(require("./readme.md"));
24
-
25
- var _Footer = _interopRequireDefault(require("./Footer"));
26
-
27
- var social = [{
28
- href: "https://www.linkedin.com/company/dxctechnology",
29
- logoSrc: _linkedin["default"]
30
- }, {
31
- href: "https://twitter.com/dxctechnology",
32
- logoSrc: _twitter["default"]
33
- }, {
34
- href: "https://www.facebook.com/DXCTechnology/",
35
- logoSrc: _facebook["default"]
36
- }];
37
- var bottom = [{
38
- href: "https://www.linkedin.com/company/dxctechnology",
39
- text: "Linkedin"
40
- }, {
41
- href: "https://twitter.com/dxctechnology",
42
- text: "Twitter"
43
- }, {
44
- href: "https://www.facebook.com/DXCTechnology/",
45
- text: "Facebook"
46
- }];
47
- (0, _react2.storiesOf)("Form Components|Footer", module).add("Component", function () {
48
- return _react["default"].createElement("div", null, _react["default"].createElement(_Footer["default"], {
49
- copyright: "\xA9 DXC Technology 2019. All rights reserved.",
50
- bottomLinks: bottom,
51
- socialLinks: social
52
- }), _react["default"].createElement("div", {
53
- style: {
54
- marginTop: "20px"
55
- }
56
- }, _react["default"].createElement(_Footer["default"], {
57
- copyright: "\xA9 DXC Technology 2019. All rights reserved.",
58
- bottomLinks: bottom,
59
- socialLinks: social
60
- }, _react["default"].createElement(_InputText["default"], {
61
- assistiveText: "text input component",
62
- label: "Footer Child",
63
- theme: "dark"
64
- }), _react["default"].createElement(_InputText["default"], {
65
- assistiveText: "text input component",
66
- label: "Footer Child",
67
- theme: "dark"
68
- }), _react["default"].createElement(_InputText["default"], {
69
- assistiveText: "text input component",
70
- label: "Footer Child",
71
- theme: "dark"
72
- }), _react["default"].createElement(_InputText["default"], {
73
- assistiveText: "text input component",
74
- label: "Footer Child",
75
- theme: "dark"
76
- }))));
77
- }, {
78
- notes: {
79
- markdown: _readme["default"]
80
- }
81
- });
82
-
83
- var knobProps = function knobProps() {
84
- return {};
85
- };
86
-
87
- (0, _react2.storiesOf)("Form Components|Footer", module).add("Knobs example", function () {
88
- var props = knobProps();
89
- return _react["default"].createElement("div", null);
90
- }, {
91
- notes: {
92
- markdown: _readme["default"]
93
- }
94
- });
Binary file
@@ -1,41 +0,0 @@
1
- # DXC Footer Component
2
-
3
- ## Props
4
-
5
- <table>
6
- <tr style="background-color: grey">
7
- <td>Name</td>
8
- <td>Default</td>
9
- <td>Description</td>
10
- </tr>
11
- <tr>
12
- <td>logoSrc: string</td>
13
- <td></td>
14
- <td>The path of an icon to replace the theme logo.</td>
15
- </tr>
16
- <tr>
17
- <td>socialLinks: object[]</td>
18
- <td><code>[]</code></td>
19
- <td>An array of objects representing the links that will be rendered at the bottom part of the footer. Each object has the following properties:
20
- <ul>
21
- <li><b>logoSrc</b>: The path of an icon for the link</li>
22
- <li><b>href</b>: URL of the page the link goes to</li>
23
- </ul>
24
- </td>
25
- </tr>
26
- <tr>
27
- <td>bottomLinks: object[]</td>
28
- <td><code>[]</code></td>
29
- <td>An array of objects representing the incon links that will be rendered at the top-right side of the footer. Each object has the following properties:
30
- <ul>
31
- <li><b>text</b>: Text for the link</li>
32
- <li><b>href</b>: URL of the page the link goes to</li>
33
- </ul>
34
- </td>
35
- </tr>
36
- <tr>
37
- <td>copyright: string</td>
38
- <td></td>
39
- <td>The text that will be displayed as copyright disclaimer.</td>
40
- </tr>
41
- </table>