@dxc-technology/halstack-react 0.0.0-e832ef8 → 0.0.0-e884f9f

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 (295) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/{dist/select/Select.js → V3Select/V3Select.js} +38 -132
  4. package/V3Select/index.d.ts +27 -0
  5. package/{dist/V3Textarea → V3Textarea}/V3Textarea.js +10 -14
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/{dist/accordion → accordion}/Accordion.js +35 -130
  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/{dist/alert → alert}/Alert.js +38 -151
  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/{dist/button → button}/Button.js +23 -84
  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 +16 -63
  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 +160 -152
  59. package/{dist/date → date}/Date.js +21 -27
  60. package/date/index.d.ts +27 -0
  61. package/date-input/DateInput.d.ts +4 -0
  62. package/{dist/date-input → date-input}/DateInput.js +22 -61
  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 +20 -73
  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/{dist/dropdown → dropdown}/Dropdown.js +44 -171
  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/{dist/file-input → file-input}/FileInput.js +56 -189
  77. package/file-input/FileItem.d.ts +14 -0
  78. package/file-input/FileItem.js +182 -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/{dist/footer → footer}/Footer.js +38 -193
  83. package/footer/Footer.stories.jsx +151 -0
  84. package/{dist/footer → footer}/Icons.js +13 -13
  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/{dist/header → header}/Icons.js +7 -32
  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/{dist/input-text → input-text}/Icons.js +2 -2
  99. package/{dist/input-text → input-text}/InputText.js +36 -130
  100. package/input-text/index.d.ts +36 -0
  101. package/{dist/layout → layout}/ApplicationLayout.js +31 -123
  102. package/{dist/layout → layout}/Icons.js +7 -7
  103. package/link/Link.d.ts +3 -0
  104. package/{dist/link → link}/Link.js +18 -94
  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} +93 -97
  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/{dist/number-input → number-input}/NumberInputContext.js +1 -1
  114. package/number-input/types.d.ts +117 -0
  115. package/number-input/types.js +5 -0
  116. package/package.json +32 -25
  117. package/{dist/paginator → paginator}/Icons.js +9 -9
  118. package/paginator/Paginator.d.ts +4 -0
  119. package/paginator/Paginator.js +198 -0
  120. package/paginator/Paginator.stories.tsx +63 -0
  121. package/paginator/types.d.ts +38 -0
  122. package/paginator/types.js +5 -0
  123. package/password-input/PasswordInput.d.ts +4 -0
  124. package/{dist/password-input → password-input}/PasswordInput.js +24 -60
  125. package/password-input/PasswordInput.stories.tsx +131 -0
  126. package/password-input/types.d.ts +100 -0
  127. package/password-input/types.js +5 -0
  128. package/progress-bar/ProgressBar.d.ts +4 -0
  129. package/{dist/progress-bar → progress-bar}/ProgressBar.js +20 -92
  130. package/progress-bar/ProgressBar.stories.jsx +58 -0
  131. package/progress-bar/types.d.ts +37 -0
  132. package/progress-bar/types.js +5 -0
  133. package/radio/Radio.d.ts +4 -0
  134. package/{dist/radio → radio}/Radio.js +15 -50
  135. package/radio/Radio.stories.tsx +192 -0
  136. package/radio/types.d.ts +54 -0
  137. package/radio/types.js +5 -0
  138. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -119
  139. package/resultsetTable/index.d.ts +19 -0
  140. package/select/Select.js +865 -0
  141. package/select/Select.stories.tsx +572 -0
  142. package/select/index.d.ts +131 -0
  143. package/sidenav/Sidenav.d.ts +9 -0
  144. package/{dist/sidenav → sidenav}/Sidenav.js +19 -62
  145. package/sidenav/Sidenav.stories.tsx +165 -0
  146. package/sidenav/types.d.ts +50 -0
  147. package/sidenav/types.js +5 -0
  148. package/slider/Slider.d.ts +4 -0
  149. package/{dist/slider → slider}/Slider.js +71 -158
  150. package/slider/Slider.stories.tsx +177 -0
  151. package/slider/types.d.ts +78 -0
  152. package/slider/types.js +5 -0
  153. package/spinner/Spinner.d.ts +4 -0
  154. package/spinner/Spinner.js +250 -0
  155. package/spinner/Spinner.stories.jsx +102 -0
  156. package/spinner/types.d.ts +32 -0
  157. package/spinner/types.js +5 -0
  158. package/switch/Switch.d.ts +4 -0
  159. package/{dist/switch → switch}/Switch.js +26 -69
  160. package/switch/Switch.stories.tsx +160 -0
  161. package/switch/types.d.ts +58 -0
  162. package/switch/types.js +5 -0
  163. package/table/Table.d.ts +4 -0
  164. package/{dist/table → table}/Table.js +10 -24
  165. package/table/Table.stories.jsx +276 -0
  166. package/table/types.d.ts +21 -0
  167. package/table/types.js +5 -0
  168. package/tabs/Tabs.d.ts +4 -0
  169. package/tabs/Tabs.js +213 -0
  170. package/tabs/types.d.ts +70 -0
  171. package/tabs/types.js +5 -0
  172. package/tag/Tag.d.ts +4 -0
  173. package/tag/Tag.js +193 -0
  174. package/tag/Tag.stories.tsx +145 -0
  175. package/tag/types.d.ts +60 -0
  176. package/tag/types.js +5 -0
  177. package/{dist/text-input → text-input}/TextInput.js +244 -390
  178. package/{dist/text-input → text-input}/index.d.ts +2 -2
  179. package/{dist/textarea → textarea}/Textarea.js +20 -72
  180. package/textarea/Textarea.stories.jsx +135 -0
  181. package/{dist/textarea → textarea}/index.d.ts +0 -0
  182. package/{dist/toggle → toggle}/Toggle.js +15 -49
  183. package/toggle/index.d.ts +21 -0
  184. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +23 -107
  185. package/toggle-group/ToggleGroup.stories.tsx +178 -0
  186. package/toggle-group/index.d.ts +21 -0
  187. package/{dist/upload → upload}/Upload.js +14 -18
  188. package/{dist/upload → upload}/buttons-upload/ButtonsUpload.js +13 -37
  189. package/{dist/upload → upload}/buttons-upload/Icons.js +7 -7
  190. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  191. package/upload/dragAndDropArea/Icons.js +39 -0
  192. package/upload/file-upload/FileToUpload.js +115 -0
  193. package/{dist/upload → upload}/file-upload/Icons.js +13 -13
  194. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  195. package/upload/index.d.ts +15 -0
  196. package/{dist/upload → upload}/transaction/Icons.js +31 -31
  197. package/upload/transaction/Transaction.js +104 -0
  198. package/upload/transactions/Transactions.js +94 -0
  199. package/{dist/useTheme.js → useTheme.js} +0 -0
  200. package/{dist/wizard → wizard}/Icons.js +8 -8
  201. package/wizard/Wizard.d.ts +4 -0
  202. package/{dist/wizard → wizard}/Wizard.js +32 -206
  203. package/wizard/Wizard.stories.jsx +224 -0
  204. package/wizard/types.d.ts +64 -0
  205. package/wizard/types.js +5 -0
  206. package/README.md +0 -66
  207. package/babel.config.js +0 -8
  208. package/dist/BackgroundColorContext.js +0 -46
  209. package/dist/ThemeContext.js +0 -248
  210. package/dist/accordion-group/AccordionGroup.js +0 -186
  211. package/dist/alert/index.d.ts +0 -51
  212. package/dist/badge/Badge.js +0 -63
  213. package/dist/checkbox/Checkbox.stories.js +0 -144
  214. package/dist/checkbox/readme.md +0 -116
  215. package/dist/date/Date.stories.js +0 -205
  216. package/dist/date/readme.md +0 -73
  217. package/dist/date-input/index.d.ts +0 -95
  218. package/dist/file-input/FileItem.js +0 -280
  219. package/dist/file-input/index.d.ts +0 -81
  220. package/dist/header/Header.js +0 -434
  221. package/dist/link/readme.md +0 -51
  222. package/dist/main.d.ts +0 -8
  223. package/dist/new-select/NewSelect.js +0 -836
  224. package/dist/new-select/index.d.ts +0 -53
  225. package/dist/number-input/NumberInput.js +0 -136
  226. package/dist/number-input/index.d.ts +0 -113
  227. package/dist/paginator/Paginator.js +0 -283
  228. package/dist/password-input/index.d.ts +0 -94
  229. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  230. package/dist/progress-bar/readme.md +0 -63
  231. package/dist/radio/Radio.stories.js +0 -166
  232. package/dist/radio/readme.md +0 -70
  233. package/dist/slider/readme.md +0 -64
  234. package/dist/spinner/Spinner.js +0 -381
  235. package/dist/spinner/Spinner.stories.js +0 -183
  236. package/dist/spinner/readme.md +0 -65
  237. package/dist/switch/Switch.stories.js +0 -134
  238. package/dist/switch/readme.md +0 -133
  239. package/dist/tabs/Tabs.js +0 -343
  240. package/dist/tabs/Tabs.stories.js +0 -130
  241. package/dist/tabs/readme.md +0 -78
  242. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  243. package/dist/tabs-for-sections/readme.md +0 -78
  244. package/dist/tag/Tag.js +0 -282
  245. package/dist/toggle/Toggle.stories.js +0 -297
  246. package/dist/toggle/readme.md +0 -80
  247. package/dist/upload/Upload.stories.js +0 -72
  248. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  249. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  250. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  251. package/dist/upload/file-upload/FileToUpload.js +0 -189
  252. package/dist/upload/readme.md +0 -37
  253. package/dist/upload/transaction/Transaction.js +0 -148
  254. package/dist/upload/transactions/Transactions.js +0 -138
  255. package/test/Accordion.test.js +0 -33
  256. package/test/AccordionGroup.test.js +0 -125
  257. package/test/Alert.test.js +0 -53
  258. package/test/Box.test.js +0 -10
  259. package/test/Button.test.js +0 -18
  260. package/test/Card.test.js +0 -30
  261. package/test/Checkbox.test.js +0 -45
  262. package/test/Chip.test.js +0 -25
  263. package/test/Date.test.js +0 -397
  264. package/test/DateInput.test.js +0 -242
  265. package/test/Dialog.test.js +0 -23
  266. package/test/Dropdown.test.js +0 -145
  267. package/test/FileInput.test.js +0 -201
  268. package/test/Footer.test.js +0 -94
  269. package/test/Header.test.js +0 -34
  270. package/test/Heading.test.js +0 -35
  271. package/test/InputText.test.js +0 -248
  272. package/test/Link.test.js +0 -43
  273. package/test/NumberInput.test.js +0 -259
  274. package/test/Paginator.test.js +0 -177
  275. package/test/PasswordInput.test.js +0 -83
  276. package/test/ProgressBar.test.js +0 -35
  277. package/test/Radio.test.js +0 -37
  278. package/test/ResultsetTable.test.js +0 -329
  279. package/test/Select.test.js +0 -212
  280. package/test/Sidenav.test.js +0 -45
  281. package/test/Slider.test.js +0 -74
  282. package/test/Spinner.test.js +0 -32
  283. package/test/Switch.test.js +0 -45
  284. package/test/Table.test.js +0 -36
  285. package/test/Tabs.test.js +0 -109
  286. package/test/TabsForSections.test.js +0 -34
  287. package/test/Tag.test.js +0 -32
  288. package/test/TextInput.test.js +0 -732
  289. package/test/Textarea.test.js +0 -193
  290. package/test/ToggleGroup.test.js +0 -85
  291. package/test/Upload.test.js +0 -60
  292. package/test/V3TextArea.test.js +0 -51
  293. package/test/Wizard.test.js +0 -130
  294. package/test/mocks/pngMock.js +0 -1
  295. package/test/mocks/svgMock.js +0 -1
@@ -9,65 +9,65 @@ exports["default"] = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
12
- var _default = _react["default"].createElement("svg", {
12
+ var _default = /*#__PURE__*/_react["default"].createElement("svg", {
13
13
  id: "g10",
14
14
  xmlns: "http://www.w3.org/2000/svg",
15
15
  width: "280.781",
16
16
  height: "32",
17
17
  viewBox: "0 0 280.781 32"
18
- }, _react["default"].createElement("title", null, "DXC Logo"), _react["default"].createElement("g", {
18
+ }, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
19
19
  id: "g12"
20
- }, _react["default"].createElement("path", {
20
+ }, /*#__PURE__*/_react["default"].createElement("path", {
21
21
  id: "path14",
22
22
  d: "M171.5-54.124v12.539h-3.6V-54.124h-4.973v-3.191h13.54v3.191H171.5",
23
23
  transform: "translate(-68.528 65.45)",
24
24
  fill: "#fff"
25
- }), _react["default"].createElement("path", {
25
+ }), /*#__PURE__*/_react["default"].createElement("path", {
26
26
  id: "path16",
27
27
  d: "M189.96-41.585V-57.315h12.326v3.079h-8.753v3.191h7.7v3.078h-7.7v3.3h8.87v3.078H189.96",
28
28
  transform: "translate(-77.56 65.45)",
29
29
  fill: "#fff"
30
- }), _react["default"].createElement("path", {
30
+ }), /*#__PURE__*/_react["default"].createElement("path", {
31
31
  id: "path18",
32
32
  d: "M223.558-41.438a8.1,8.1,0,0,1-8.382-8.1v-.045a8.161,8.161,0,0,1,8.522-8.146,8.6,8.6,0,0,1,6.444,2.431l-2.289,2.543a6.133,6.133,0,0,0-4.178-1.778,4.743,4.743,0,0,0-4.738,4.905v.045a4.752,4.752,0,0,0,4.738,4.95,6,6,0,0,0,4.295-1.845l2.288,2.228a8.491,8.491,0,0,1-6.7,2.813",
33
33
  transform: "translate(-86.019 65.583)",
34
34
  fill: "#fff"
35
- }), _react["default"].createElement("path", {
35
+ }), /*#__PURE__*/_react["default"].createElement("path", {
36
36
  id: "path20",
37
37
  d: "M254.988-41.585V-47.9h-6.63v6.315h-3.6V-57.315h3.6v6.225h6.63v-6.225h3.594v15.731h-3.594",
38
38
  transform: "translate(-95.903 65.45)",
39
39
  fill: "#fff"
40
- }), _react["default"].createElement("path", {
40
+ }), /*#__PURE__*/_react["default"].createElement("path", {
41
41
  id: "path22",
42
42
  d: "M285.991-41.585l-7.914-10v10h-3.549V-57.315h3.316l7.657,9.685v-9.685h3.549v15.731h-3.058",
43
43
  transform: "translate(-105.869 65.45)",
44
44
  fill: "#fff"
45
- }), _react["default"].createElement("path", {
45
+ }), /*#__PURE__*/_react["default"].createElement("path", {
46
46
  id: "path24",
47
47
  d: "M317.2-49.583a4.869,4.869,0,0,0-4.949-4.95,4.793,4.793,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.793,4.793,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.661-3.623-8.661-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.66,3.623,8.66,8.1v.045c0,4.477-3.664,8.145-8.708,8.145",
48
48
  transform: "translate(-115.631 65.583)",
49
49
  fill: "#fff"
50
- }), _react["default"].createElement("path", {
50
+ }), /*#__PURE__*/_react["default"].createElement("path", {
51
51
  id: "path26",
52
52
  d: "M336.786-41.585V-57.315h3.6v12.584h8.148v3.146H336.786",
53
53
  transform: "translate(-126.654 65.45)",
54
54
  fill: "#fff"
55
- }), _react["default"].createElement("path", {
55
+ }), /*#__PURE__*/_react["default"].createElement("path", {
56
56
  id: "path28",
57
57
  d: "M372.78-49.583a4.87,4.87,0,0,0-4.949-4.95,4.794,4.794,0,0,0-4.9,4.905v.045a4.869,4.869,0,0,0,4.949,4.95,4.794,4.794,0,0,0,4.9-4.905Zm-4.949,8.145c-5.043,0-8.662-3.623-8.662-8.1v-.045c0-4.478,3.666-8.146,8.708-8.146s8.661,3.623,8.661,8.1v.045c0,4.477-3.666,8.145-8.708,8.145",
58
58
  transform: "translate(-135.016 65.583)",
59
59
  fill: "#fff"
60
- }), _react["default"].createElement("path", {
60
+ }), /*#__PURE__*/_react["default"].createElement("path", {
61
61
  id: "path30",
62
62
  d: "M399.735-41.438c-5.09,0-8.592-3.443-8.592-8.1v-.045a8.243,8.243,0,0,1,8.568-8.146,9.18,9.18,0,0,1,6.42,2.16l-2.265,2.634a6.141,6.141,0,0,0-4.272-1.6,4.807,4.807,0,0,0-4.692,4.905v.045a4.8,4.8,0,0,0,4.949,4.995,5.89,5.89,0,0,0,3.384-.945v-2.25h-3.618v-2.992h7.1v6.841a10.837,10.837,0,0,1-6.98,2.5",
63
63
  transform: "translate(-145.284 65.583)",
64
64
  fill: "#fff"
65
- }), _react["default"].createElement("path", {
65
+ }), /*#__PURE__*/_react["default"].createElement("path", {
66
66
  id: "path32",
67
67
  d: "M428.664-47.855v6.27h-3.6v-6.2l-6.28-9.528h4.2L426.89-51l3.968-6.315h4.085l-6.28,9.46",
68
68
  transform: "translate(-154.162 65.45)",
69
69
  fill: "#fff"
70
- }), _react["default"].createElement("path", {
70
+ }), /*#__PURE__*/_react["default"].createElement("path", {
71
71
  id: "path34",
72
72
  d: "M84.218-55.737a10.063,10.063,0,0,1,2.589-4.4,9.792,9.792,0,0,1,6.985-2.77h11.328V-69.3H93.792a17.041,17.041,0,0,0-11.8,4.759,16.344,16.344,0,0,0-3.547,5.115,13.247,13.247,0,0,0-1.122,3.688Zm0,4.877a10.065,10.065,0,0,0,2.589,4.4,9.793,9.793,0,0,0,6.985,2.77h11.328V-37.3H93.792a17.042,17.042,0,0,1-11.8-4.759,16.339,16.339,0,0,1-3.547-5.114,13.251,13.251,0,0,1-1.122-3.688ZM63.1-47.98,54.45-37.3H45.873l12.957-16-12.957-16H54.45L63.1-58.619l8.65-10.68h8.578l-12.957,16,12.957,16H71.749ZM48.875-55.737a13.212,13.212,0,0,0-1.122-3.688,16.359,16.359,0,0,0-3.546-5.115,17.043,17.043,0,0,0-11.8-4.759H21.08v6.393H32.408a9.79,9.79,0,0,1,6.985,2.77,10.072,10.072,0,0,1,2.59,4.4Zm0,4.877a13.215,13.215,0,0,1-1.122,3.688,16.353,16.353,0,0,1-3.546,5.114,17.044,17.044,0,0,1-11.8,4.759H21.08v-6.393H32.408a9.791,9.791,0,0,0,6.985-2.77,10.074,10.074,0,0,0,2.59-4.4h6.892",
73
73
  transform: "translate(-21.08 69.298)",
@@ -0,0 +1,61 @@
1
+ /// <reference types="react" />
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Size = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type SocialLink = {
10
+ logo?: ImgElement;
11
+ logoSrc?: string;
12
+ href?: string;
13
+ };
14
+ declare type BottomLink = {
15
+ text?: string;
16
+ href?: string;
17
+ };
18
+ declare type ImgElement = HTMLElement & (SVGElement | HTMLImageElement);
19
+ declare type FooterPropsType = {
20
+ /**
21
+ * An array of objects representing the links that will be rendered as
22
+ * icons at the top-right side of the footer. Each object has the
23
+ * following properties:
24
+ * - logo: Element used as the icon for the link.
25
+ * - logoSrc: The path of an icon for the link. @deprecated
26
+ * - href: URL of the page the link goes to.
27
+ */
28
+ socialLinks?: [SocialLink, ...SocialLink[]];
29
+ /**
30
+ * An array of objects representing the links that will be rendered at
31
+ * the bottom part of the footer. Each object has the following
32
+ * properties:
33
+ * - text: Text for the link.
34
+ * - href: URL of the page the link goes to.
35
+ */
36
+ bottomLinks?: [BottomLink, ...BottomLink[]];
37
+ /**
38
+ * The center section of the footer. Can be used to render custom
39
+ * content in this area.
40
+ */
41
+ children?: React.ReactNode;
42
+ /**
43
+ * The text that will be displayed as copyright disclaimer.
44
+ */
45
+ copyright?: string;
46
+ /**
47
+ * Value of the tabindex for all interactuable elements, except those
48
+ * inside the custom area.
49
+ */
50
+ tabIndex?: number;
51
+ /**
52
+ * Size of the top margin to be applied to the footer.
53
+ */
54
+ margin?: Space | Size;
55
+ /**
56
+ * Size of the padding to be applied to the custom area of the component.
57
+ * You can pass an object with properties in order to specify different padding sizes.
58
+ */
59
+ padding?: Space | Size;
60
+ };
61
+ export default FooterPropsType;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import HeaderPropsType from "./types";
3
+ declare const DxcHeader: {
4
+ ({ underlined, content, responsiveContent, onClick, margin, padding, tabIndex, }: HeaderPropsType): JSX.Element;
5
+ Dropdown: (props: any) => JSX.Element;
6
+ };
7
+ export default DxcHeader;
@@ -0,0 +1,324 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _AppBar = _interopRequireDefault(require("@material-ui/core/AppBar"));
23
+
24
+ var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
25
+
26
+ var _Icons = require("./Icons");
27
+
28
+ var _variables = require("../common/variables.js");
29
+
30
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
+
32
+ var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext.js"));
33
+
34
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
35
+
36
+ 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); }
37
+
38
+ 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; }
39
+
40
+ var closeIcon = /*#__PURE__*/_react["default"].createElement("svg", {
41
+ xmlns: "http://www.w3.org/2000/svg",
42
+ height: "24",
43
+ viewBox: "0 0 24 24",
44
+ width: "24"
45
+ }, /*#__PURE__*/_react["default"].createElement("path", {
46
+ d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
47
+ }), /*#__PURE__*/_react["default"].createElement("path", {
48
+ d: "M0 0h24v24H0z",
49
+ fill: "none"
50
+ }));
51
+
52
+ var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
53
+ xmlns: "http://www.w3.org/2000/svg",
54
+ viewBox: "0 0 24 24",
55
+ width: "24",
56
+ height: "24"
57
+ }, /*#__PURE__*/_react["default"].createElement("path", {
58
+ d: "M3,8H21a1,1,0,0,0,0-2H3A1,1,0,0,0,3,8Zm18,8H3a1,1,0,0,0,0,2H21a1,1,0,0,0,0-2Zm0-5H3a1,1,0,0,0,0,2H21a1,1,0,0,0,0-2Z"
59
+ }));
60
+
61
+ var Dropdown = function Dropdown(props) {
62
+ return /*#__PURE__*/_react["default"].createElement(HeaderDropdown, null, /*#__PURE__*/_react["default"].createElement(_Dropdown["default"], props));
63
+ };
64
+
65
+ var HeaderDropdown = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n button {\n background-color: transparent;\n :hover {\n background-color: transparent;\n }\n }\n"])));
66
+
67
+ var getLogoElement = function getLogoElement(themeInput) {
68
+ if (!themeInput) {
69
+ return _Icons.dxcLogo;
70
+ }
71
+
72
+ if (typeof themeInput === "string") {
73
+ return /*#__PURE__*/_react["default"].createElement(LogoImg, {
74
+ alt: "Logo",
75
+ src: themeInput
76
+ });
77
+ }
78
+
79
+ return themeInput;
80
+ };
81
+
82
+ var DxcHeader = function DxcHeader(_ref) {
83
+ var _ref$underlined = _ref.underlined,
84
+ underlined = _ref$underlined === void 0 ? false : _ref$underlined,
85
+ content = _ref.content,
86
+ responsiveContent = _ref.responsiveContent,
87
+ onClick = _ref.onClick,
88
+ margin = _ref.margin,
89
+ padding = _ref.padding,
90
+ _ref$tabIndex = _ref.tabIndex,
91
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
92
+ var colorsTheme = (0, _useTheme["default"])();
93
+ var ref = (0, _react.useRef)(null);
94
+
95
+ var _useState = (0, _react.useState)(),
96
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
97
+ refSize = _useState2[0],
98
+ setRefSize = _useState2[1];
99
+
100
+ var _useState3 = (0, _react.useState)(false),
101
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
102
+ isResponsive = _useState4[0],
103
+ setIsResponsive = _useState4[1];
104
+
105
+ var _useState5 = (0, _react.useState)(false),
106
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
107
+ isMenuVisible = _useState6[0],
108
+ setIsMenuVisible = _useState6[1];
109
+
110
+ var handleResize = function handleResize(refWidth) {
111
+ if (refWidth) {
112
+ setRefSize(refWidth);
113
+
114
+ if (refWidth <= _variables.responsiveSizes.tablet && !isResponsive) {
115
+ setIsResponsive(true);
116
+ } else {
117
+ setIsResponsive(false);
118
+ }
119
+ }
120
+ };
121
+
122
+ var ContentContainerComponent = function ContentContainerComponent() {
123
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
124
+ return isResponsive && /*#__PURE__*/_react["default"].createElement(MenuContent, {
125
+ backgroundType: backgroundType
126
+ }, responsiveContent(handleMenu)) || /*#__PURE__*/_react["default"].createElement(ContentContainer, {
127
+ padding: padding,
128
+ backgroundType: backgroundType
129
+ }, content);
130
+ };
131
+
132
+ var handleMenu = function handleMenu() {
133
+ if (isResponsive && !isMenuVisible) {
134
+ setIsMenuVisible(!isMenuVisible);
135
+ } else {
136
+ setIsMenuVisible(!isMenuVisible);
137
+ }
138
+ };
139
+
140
+ var headerLogo = (0, _react.useMemo)(function () {
141
+ return getLogoElement(colorsTheme.header.logo);
142
+ }, [colorsTheme.header.logo]);
143
+ var headerResponsiveLogo = (0, _react.useMemo)(function () {
144
+ return getLogoElement(colorsTheme.header.logoResponsive);
145
+ }, [colorsTheme.header.logoResponsive]);
146
+
147
+ var handleEventListener = function handleEventListener() {
148
+ handleResize(ref.current.offsetWidth);
149
+ };
150
+
151
+ (0, _react.useEffect)(function () {
152
+ if (ref.current) {
153
+ window.addEventListener("resize", handleEventListener);
154
+ handleResize(ref.current.offsetWidth);
155
+ }
156
+
157
+ return function () {
158
+ window.removeEventListener("resize", handleEventListener);
159
+ };
160
+ }, []);
161
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
162
+ theme: colorsTheme.header
163
+ }, /*#__PURE__*/_react["default"].createElement(HeaderContainer, {
164
+ $underlined: underlined,
165
+ position: "static",
166
+ margin: margin,
167
+ ref: ref
168
+ }, /*#__PURE__*/_react["default"].createElement(LogoAnchor, {
169
+ tabIndex: typeof onClick === "function" ? tabIndex : -1,
170
+ interactuable: typeof onClick === "function",
171
+ onClick: onClick
172
+ }, /*#__PURE__*/_react["default"].createElement(LogoContainer, null, headerLogo)), isResponsive && responsiveContent && /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(ChildContainer, {
173
+ padding: padding
174
+ }, /*#__PURE__*/_react["default"].createElement(HamburguerItem, {
175
+ tabIndex: tabIndex,
176
+ underlined: underlined,
177
+ onClick: handleMenu
178
+ }, hamburgerIcon, /*#__PURE__*/_react["default"].createElement(HamburguerTitle, null, "Menu"))), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(ResponsiveMenu, {
179
+ hasVisibility: isMenuVisible,
180
+ refSize: refSize
181
+ }, /*#__PURE__*/_react["default"].createElement(ResponsiveLogoContainer, null, headerResponsiveLogo), /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
182
+ color: colorsTheme.header.menuBackgroundColor
183
+ }, /*#__PURE__*/_react["default"].createElement(ContentContainerComponent, null)), /*#__PURE__*/_react["default"].createElement(CloseContainer, {
184
+ tabIndex: tabIndex,
185
+ onClick: handleMenu,
186
+ className: "closeIcon"
187
+ }, closeIcon)), /*#__PURE__*/_react["default"].createElement(Overlay, {
188
+ onClick: handleMenu,
189
+ hasVisibility: isMenuVisible,
190
+ refSize: refSize
191
+ }))), !isResponsive && /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
192
+ color: colorsTheme.header.backgroundColor
193
+ }, /*#__PURE__*/_react["default"].createElement(ContentContainerComponent, null))));
194
+ };
195
+
196
+ DxcHeader.Dropdown = Dropdown;
197
+ var HeaderContainer = (0, _styledComponents["default"])(_AppBar["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: ", ";\n\n &.MuiAppBar-colorPrimary {\n background-color: ", ";\n border-bottom: ", ";\n\n &.MuiPaper-elevation4 {\n box-shadow: none;\n }\n .ChildComponents {\n display: flex;\n align-items: center;\n }\n }\n & {\n min-height: ", ";\n }\n &.MuiAppBar-root {\n flex-direction: row;\n align-items: center;\n padding: ", ";\n justify-content: space-between;\n }\n"])), function (props) {
198
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
199
+ }, function (props) {
200
+ return props.theme.backgroundColor;
201
+ }, function (props) {
202
+ return props.$underlined && "".concat(props.theme.underlinedThickness, " ").concat(props.theme.underlinedStyle, " ").concat(props.theme.underlinedColor);
203
+ }, function (props) {
204
+ return props.theme.minHeight;
205
+ }, function (props) {
206
+ return "".concat(props.theme.paddingTop, " ").concat(props.theme.paddingRight, " ").concat(props.theme.paddingBottom, " ").concat(props.theme.paddingLeft);
207
+ });
208
+
209
+ var LogoAnchor = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (props) {
210
+ if (!props.interactuable) {
211
+ return "cursor: default; outline:none;";
212
+ }
213
+
214
+ return "cursor: pointer;";
215
+ });
216
+
217
+ var LogoImg = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n"])), function (props) {
218
+ return props.theme.logoHeight;
219
+ }, function (props) {
220
+ return props.theme.logoWidth;
221
+ });
222
+
223
+ var LogoContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n vertical-align: middle;\n"])), function (props) {
224
+ return props.theme.logoHeight;
225
+ }, function (props) {
226
+ return props.theme.logoWidth;
227
+ });
228
+
229
+ var ChildContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - 186px);\n display: flex;\n align-items: center;\n flex-grow: 1;\n\n justify-content: flex-end;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
230
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
231
+ }, function (props) {
232
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
233
+ }, function (props) {
234
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
235
+ }, function (props) {
236
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
237
+ }, function (props) {
238
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
239
+ });
240
+
241
+ var ContentContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - 186px);\n display: flex;\n align-items: center;\n flex-grow: 1;\n color: ", ";\n\n justify-content: flex-end;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
242
+ return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
243
+ }, function (props) {
244
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
245
+ }, function (props) {
246
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
247
+ }, function (props) {
248
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
249
+ }, function (props) {
250
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
251
+ }, function (props) {
252
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
253
+ });
254
+
255
+ var HamburguerItem = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n cursor: pointer;\n :hover {\n background-color: ", ";\n }\n &:focus {\n outline: ", " auto 1px;\n }\n & > svg {\n fill: ", ";\n }\n"])), function (props) {
256
+ return props.theme.hamburguerHoverColor;
257
+ }, function (props) {
258
+ return props.theme.hamburguerFocusColor;
259
+ }, function (props) {
260
+ return props.theme.hamburguerIconColor;
261
+ });
262
+
263
+ var HamburguerTitle = _styledComponents["default"].span(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n text-transform: ", ";\n font-weight: ", ";\n color: ", ";\n"])), function (props) {
264
+ return props.theme.hamburguerFontFamily;
265
+ }, function (props) {
266
+ return props.theme.hamburguerFontStyle;
267
+ }, function (props) {
268
+ return props.theme.hamburguerFontSize;
269
+ }, function (props) {
270
+ return props.theme.hamburguerTextTransform;
271
+ }, function (props) {
272
+ return props.theme.hamburguerFontWeight;
273
+ }, function (props) {
274
+ return props.theme.hamburguerFontColor;
275
+ });
276
+
277
+ var MainContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
278
+
279
+ var ResponsiveMenu = _styledComponents["default"].div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: space-evenly;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n width: ", ";\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
280
+ return props.theme.menuBackgroundColor;
281
+ }, function (props) {
282
+ return props.theme.menuZindex;
283
+ }, function (props) {
284
+ return props.refSize <= _variables.responsiveSizes.laptop && props.refSize > _variables.responsiveSizes.mobileLarge ? "".concat(function (props) {
285
+ return props.theme.menuTabletWidth;
286
+ }) : "".concat(function (props) {
287
+ return props.theme.menuMobileWidth;
288
+ });
289
+ }, function (props) {
290
+ return props.hasVisibility ? "translateX(0)" : "translateX(100vw)";
291
+ }, function (props) {
292
+ return props.hasVisibility ? "1" : "0.96";
293
+ });
294
+
295
+ var ResponsiveLogoContainer = _styledComponents["default"].div(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: ", ";\n width: ", ";\n position: absolute;\n top: 23px;\n left: 20px;\n"])), function (props) {
296
+ return props.theme.logoHeight;
297
+ }, function (props) {
298
+ return props.theme.logoWidth;
299
+ });
300
+
301
+ var CloseContainer = _styledComponents["default"].div(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n :focus {\n outline: ", " auto 1px;\n }\n position: fixed;\n top: 23px;\n right: 20px;\n width: 24px;\n height: 24px;\n padding: ", ";\n"])), function (props) {
302
+ return props.theme.hamburguerFocusColor;
303
+ }, _variables.spaces.xxsmall);
304
+
305
+ var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n margin-top: 40px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n color: ", ";\n"])), function (props) {
306
+ return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
307
+ });
308
+
309
+ var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: ", ";\n opacity: ", " !important;\n visibility: ", ";\n opacity: ", ";\n display: ", ";\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: ", ";\n"])), function (props) {
310
+ return props.theme.overlayColor;
311
+ }, function (props) {
312
+ return props.theme.overlayOpacity;
313
+ }, function (props) {
314
+ return props.hasVisibility ? "visible" : "hidden";
315
+ }, function (props) {
316
+ return props.hasVisibility ? "1" : "0";
317
+ }, function (props) {
318
+ return props.refSize <= _variables.responsiveSizes.mobileLarge ? "none" : "";
319
+ }, function (props) {
320
+ return props.theme.overlayZindex;
321
+ });
322
+
323
+ var _default = DxcHeader;
324
+ exports["default"] = _default;
@@ -0,0 +1,162 @@
1
+ import React from "react";
2
+ import DxcHeader from "./Header";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { userEvent, waitFor, within } from "@storybook/testing-library";
6
+
7
+ export default {
8
+ title: "Header",
9
+ component: DxcHeader,
10
+ };
11
+
12
+ const options: any = [
13
+ {
14
+ value: 1,
15
+ label: "Amazon",
16
+ },
17
+ ];
18
+
19
+ export const Chromatic = () => (
20
+ <>
21
+ <ExampleContainer>
22
+ <Title title="Default with dropdown" theme="light" level={4} />
23
+ <DxcHeader content={<DxcHeader.Dropdown options={options} label="Default Dropdown" />} />
24
+ </ExampleContainer>
25
+ <ExampleContainer>
26
+ <Title title="Underlined with text" theme="light" level={4} />
27
+ <DxcHeader underlined content={<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>} />
28
+ </ExampleContainer>
29
+ <ExampleContainer>
30
+ <Title title="Responsive" theme="light" level={4} />
31
+ <div style={{ width: "400px" }}>
32
+ <DxcHeader
33
+ responsiveContent={(closeHandler) => <DxcHeader.Dropdown options={options} label="Default Dropdown" />}
34
+ underlined
35
+ />
36
+ </div>
37
+ </ExampleContainer>
38
+ <Title title="Margins" theme="light" level={2} />
39
+ <ExampleContainer>
40
+ <Title title="Xxsmall margin" theme="light" level={4} />
41
+ <DxcHeader underlined margin="xxsmall" />
42
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
43
+ </ExampleContainer>
44
+ <ExampleContainer>
45
+ <Title title="Xsmall margin" theme="light" level={4} />
46
+ <DxcHeader underlined margin="xsmall" />
47
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
48
+ </ExampleContainer>
49
+ <ExampleContainer>
50
+ <Title title="Small margin" theme="light" level={4} />
51
+ <DxcHeader underlined margin="small" />
52
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
53
+ </ExampleContainer>
54
+ <ExampleContainer>
55
+ <Title title="Medium margin" theme="light" level={4} />
56
+ <DxcHeader underlined margin="medium" />
57
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
58
+ </ExampleContainer>
59
+ <ExampleContainer>
60
+ <Title title="Large margin" theme="light" level={4} />
61
+ <DxcHeader underlined margin="large" />
62
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
63
+ </ExampleContainer>
64
+ <ExampleContainer>
65
+ <Title title="Xlarge margin" theme="light" level={4} />
66
+ <DxcHeader underlined margin="xlarge" />
67
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
68
+ </ExampleContainer>
69
+ <ExampleContainer>
70
+ <Title title="Xxlarge margin" theme="light" level={4} />
71
+ <DxcHeader underlined margin="xxlarge" />
72
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras felis.</p>
73
+ </ExampleContainer>
74
+
75
+ <Title title="Paddings" theme="light" level={2} />
76
+ <ExampleContainer>
77
+ <Title title="Xxsmall padding" theme="light" level={4} />
78
+ <DxcHeader underlined padding="xxsmall" />
79
+ </ExampleContainer>
80
+ <ExampleContainer>
81
+ <Title title="Xsmall padding" theme="light" level={4} />
82
+ <DxcHeader underlined padding="xsmall" />
83
+ </ExampleContainer>
84
+ <ExampleContainer>
85
+ <Title title="Small padding" theme="light" level={4} />
86
+ <DxcHeader underlined padding="small" />
87
+ </ExampleContainer>
88
+ <ExampleContainer>
89
+ <Title title="Medium padding" theme="light" level={4} />
90
+ <DxcHeader underlined padding="medium" />
91
+ </ExampleContainer>
92
+ <ExampleContainer>
93
+ <Title title="Large padding" theme="light" level={4} />
94
+ <DxcHeader underlined padding="large" />
95
+ </ExampleContainer>
96
+ <ExampleContainer>
97
+ <Title title="Xlarge padding" theme="light" level={4} />
98
+ <DxcHeader underlined padding="xlarge" />
99
+ </ExampleContainer>
100
+ <ExampleContainer>
101
+ <Title title="Xxlarge padding" theme="light" level={4} />
102
+ <DxcHeader underlined padding="xxlarge" />
103
+ </ExampleContainer>
104
+ </>
105
+ );
106
+
107
+ const RespHeader = () => (
108
+ <ExampleContainer>
109
+ <Title title="Responsive" theme="light" level={4} />
110
+ <div style={{ maxWidth: "400px" }}>
111
+ <DxcHeader
112
+ responsiveContent={(closeHandler) => <DxcHeader.Dropdown options={options} label="Default Dropdown" />}
113
+ underlined
114
+ />
115
+ </div>
116
+ </ExampleContainer>
117
+ );
118
+
119
+ const RespHeaderFocus = () => (
120
+ <ExampleContainer pseudoState="pseudo-focus">
121
+ <Title title="Responsive" theme="light" level={4} />
122
+ <div style={{ maxWidth: "400px" }}>
123
+ <DxcHeader
124
+ responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>}
125
+ underlined
126
+ />
127
+ </div>
128
+ </ExampleContainer>
129
+ );
130
+
131
+ const RespHeaderHover = () => (
132
+ <ExampleContainer pseudoState="pseudo-hover">
133
+ <Title title="Responsive" theme="light" level={4} />
134
+ <div style={{ maxWidth: "400px" }}>
135
+ <DxcHeader
136
+ responsiveContent={(closeHandler) => <p>Lorem ipsum dolor sit amet.</p>}
137
+ underlined
138
+ />
139
+ </div>
140
+ </ExampleContainer>
141
+ );
142
+
143
+ export const ResponsiveHeader = RespHeader.bind({});
144
+ ResponsiveHeader.play = async ({ canvasElement }) => {
145
+ const canvas = within(canvasElement);
146
+ await waitFor(() => canvas.findByText("Menu"));
147
+ await userEvent.click(canvas.getByText("Menu"));
148
+ };
149
+
150
+ export const ResponsiveHeaderFocus = RespHeaderFocus.bind({});
151
+ ResponsiveHeaderFocus.play = async ({ canvasElement }) => {
152
+ const canvas = within(canvasElement);
153
+ await waitFor(() => canvas.findByText("Menu"));
154
+ await userEvent.click(canvas.getByText("Menu"));
155
+ };
156
+
157
+ export const ResponsiveHeaderHover = RespHeaderHover.bind({});
158
+ ResponsiveHeaderHover.play = async ({ canvasElement }) => {
159
+ const canvas = within(canvasElement);
160
+ await waitFor(() => canvas.findByText("Menu"));
161
+ await userEvent.click(canvas.getByText("Menu"));
162
+ };