@dxc-technology/halstack-react 0.0.0-26ebe9c → 0.0.0-283b4b6

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 (266) hide show
  1. package/BackgroundColorContext.js +46 -0
  2. package/ThemeContext.js +250 -0
  3. package/V3Select/V3Select.js +549 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +264 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.js +353 -0
  8. package/accordion/index.d.ts +28 -0
  9. package/accordion-group/AccordionGroup.js +186 -0
  10. package/accordion-group/index.d.ts +16 -0
  11. package/alert/Alert.js +403 -0
  12. package/alert/index.d.ts +51 -0
  13. package/badge/Badge.js +63 -0
  14. package/{dist/box → box}/Box.js +39 -19
  15. package/box/index.d.ts +25 -0
  16. package/button/Button.js +238 -0
  17. package/button/Button.stories.js +27 -0
  18. package/button/index.d.ts +24 -0
  19. package/{dist/card → card}/Card.js +64 -56
  20. package/card/index.d.ts +22 -0
  21. package/checkbox/Checkbox.js +299 -0
  22. package/checkbox/index.d.ts +24 -0
  23. package/chip/Chip.js +265 -0
  24. package/chip/index.d.ts +22 -0
  25. package/{dist/common → common}/OpenSans.css +0 -0
  26. package/{dist/common → common}/RequiredComponent.js +5 -15
  27. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  28. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  29. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  30. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  31. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  32. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  33. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  34. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  35. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  36. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  37. package/{dist/common → common}/utils.js +0 -0
  38. package/common/variables.js +1574 -0
  39. package/{dist/date → date}/Date.js +110 -76
  40. package/date/index.d.ts +27 -0
  41. package/date-input/DateInput.js +400 -0
  42. package/date-input/index.d.ts +95 -0
  43. package/{dist/dialog → dialog}/Dialog.js +87 -33
  44. package/dialog/index.d.ts +18 -0
  45. package/dropdown/Dropdown.js +544 -0
  46. package/dropdown/index.d.ts +26 -0
  47. package/file-input/FileInput.js +644 -0
  48. package/file-input/FileItem.js +287 -0
  49. package/file-input/index.d.ts +81 -0
  50. package/{dist/footer → footer}/Footer.js +125 -45
  51. package/footer/Icons.js +77 -0
  52. package/footer/index.d.ts +25 -0
  53. package/header/Header.js +470 -0
  54. package/header/Icons.js +59 -0
  55. package/header/index.d.ts +25 -0
  56. package/{dist/heading → heading}/Heading.js +93 -22
  57. package/heading/index.d.ts +17 -0
  58. package/input-text/Icons.js +22 -0
  59. package/input-text/InputText.js +705 -0
  60. package/input-text/index.d.ts +36 -0
  61. package/layout/ApplicationLayout.js +327 -0
  62. package/layout/Icons.js +55 -0
  63. package/link/Link.js +237 -0
  64. package/link/index.d.ts +23 -0
  65. package/main.d.ts +40 -0
  66. package/{dist/main.js → main.js} +120 -24
  67. package/number-input/NumberInput.js +136 -0
  68. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +3 -2
  69. package/number-input/index.d.ts +113 -0
  70. package/package.json +34 -19
  71. package/paginator/Icons.js +66 -0
  72. package/paginator/Paginator.js +305 -0
  73. package/paginator/index.d.ts +20 -0
  74. package/password-input/PasswordInput.js +203 -0
  75. package/password-input/index.d.ts +94 -0
  76. package/{dist/progress-bar → progress-bar}/ProgressBar.js +97 -44
  77. package/progress-bar/index.d.ts +18 -0
  78. package/{dist/radio → radio}/Radio.js +39 -34
  79. package/radio/index.d.ts +23 -0
  80. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +94 -70
  81. package/resultsetTable/index.d.ts +19 -0
  82. package/select/Select.js +1137 -0
  83. package/select/index.d.ts +131 -0
  84. package/sidenav/Sidenav.js +179 -0
  85. package/sidenav/index.d.ts +13 -0
  86. package/slider/Slider.js +404 -0
  87. package/slider/index.d.ts +29 -0
  88. package/spinner/Spinner.js +381 -0
  89. package/spinner/index.d.ts +17 -0
  90. package/{dist/switch → switch}/Switch.js +54 -51
  91. package/switch/index.d.ts +24 -0
  92. package/table/Table.js +132 -0
  93. package/table/index.d.ts +13 -0
  94. package/tabs/Tabs.js +343 -0
  95. package/tabs/index.d.ts +19 -0
  96. package/{dist/tag → tag}/Tag.js +100 -35
  97. package/tag/index.d.ts +24 -0
  98. package/text-input/TextInput.js +974 -0
  99. package/text-input/index.d.ts +135 -0
  100. package/textarea/Textarea.js +369 -0
  101. package/textarea/index.d.ts +117 -0
  102. package/{dist/toggle → toggle}/Toggle.js +16 -19
  103. package/toggle/index.d.ts +21 -0
  104. package/toggle-group/ToggleGroup.js +327 -0
  105. package/toggle-group/index.d.ts +21 -0
  106. package/{dist/upload → upload}/Upload.js +13 -8
  107. package/{dist/upload → upload}/buttons-upload/ButtonsUpload.js +35 -25
  108. package/upload/buttons-upload/Icons.js +40 -0
  109. package/{dist/upload → upload}/dragAndDropArea/DragAndDropArea.js +84 -37
  110. package/upload/dragAndDropArea/Icons.js +39 -0
  111. package/upload/file-upload/FileToUpload.js +189 -0
  112. package/upload/file-upload/Icons.js +66 -0
  113. package/{dist/upload → upload}/files-upload/FilesToUpload.js +16 -16
  114. package/upload/index.d.ts +15 -0
  115. package/upload/transaction/Icons.js +160 -0
  116. package/upload/transaction/Transaction.js +148 -0
  117. package/{dist/upload → upload}/transactions/Transactions.js +38 -20
  118. package/useTheme.js +22 -0
  119. package/wizard/Icons.js +65 -0
  120. package/wizard/Wizard.js +405 -0
  121. package/wizard/index.d.ts +18 -0
  122. package/babel.config.js +0 -4
  123. package/dist/accordion/Accordion.js +0 -264
  124. package/dist/accordion/Accordion.stories.js +0 -207
  125. package/dist/accordion/readme.md +0 -96
  126. package/dist/alert/Alert.js +0 -302
  127. package/dist/alert/Alert.stories.js +0 -158
  128. package/dist/alert/close.svg +0 -4
  129. package/dist/alert/error.svg +0 -4
  130. package/dist/alert/info.svg +0 -4
  131. package/dist/alert/readme.md +0 -43
  132. package/dist/alert/success.svg +0 -4
  133. package/dist/alert/warning.svg +0 -4
  134. package/dist/button/Button.js +0 -187
  135. package/dist/button/Button.stories.js +0 -224
  136. package/dist/button/readme.md +0 -93
  137. package/dist/checkbox/Checkbox.js +0 -221
  138. package/dist/checkbox/Checkbox.stories.js +0 -144
  139. package/dist/checkbox/readme.md +0 -116
  140. package/dist/common/services/example-service.js +0 -10
  141. package/dist/common/services/example-service.test.js +0 -12
  142. package/dist/common/variables.js +0 -77
  143. package/dist/date/Date.stories.js +0 -205
  144. package/dist/date/calendar.svg +0 -1
  145. package/dist/date/calendar_dark.svg +0 -1
  146. package/dist/date/readme.md +0 -73
  147. package/dist/dialog/Dialog.stories.js +0 -217
  148. package/dist/dialog/readme.md +0 -32
  149. package/dist/dropdown/Dropdown.js +0 -412
  150. package/dist/dropdown/Dropdown.stories.js +0 -249
  151. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  152. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  153. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  154. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  155. package/dist/dropdown/readme.md +0 -69
  156. package/dist/footer/Footer.stories.js +0 -94
  157. package/dist/footer/dxc_logo_wht.png +0 -0
  158. package/dist/footer/readme.md +0 -41
  159. package/dist/header/Header.js +0 -343
  160. package/dist/header/Header.stories.js +0 -176
  161. package/dist/header/close_icon.svg +0 -1
  162. package/dist/header/dxc_logo_black.png +0 -0
  163. package/dist/header/dxc_logo_white.png +0 -0
  164. package/dist/header/hamb_menu_black.svg +0 -1
  165. package/dist/header/hamb_menu_white.svg +0 -1
  166. package/dist/header/readme.md +0 -33
  167. package/dist/input-text/InputText.js +0 -510
  168. package/dist/input-text/InputText.stories.js +0 -209
  169. package/dist/input-text/error.svg +0 -1
  170. package/dist/input-text/readme.md +0 -91
  171. package/dist/link/Link.js +0 -129
  172. package/dist/link/readme.md +0 -51
  173. package/dist/paginator/Paginator.js +0 -178
  174. package/dist/paginator/images/next.svg +0 -3
  175. package/dist/paginator/images/nextPage.svg +0 -3
  176. package/dist/paginator/images/previous.svg +0 -3
  177. package/dist/paginator/images/previousPage.svg +0 -3
  178. package/dist/paginator/readme.md +0 -50
  179. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  180. package/dist/progress-bar/readme.md +0 -63
  181. package/dist/radio/Radio.stories.js +0 -166
  182. package/dist/radio/readme.md +0 -70
  183. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  184. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  185. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  186. package/dist/select/Select.js +0 -425
  187. package/dist/select/Select.stories.js +0 -235
  188. package/dist/select/readme.md +0 -72
  189. package/dist/sidenav/Sidenav.js +0 -217
  190. package/dist/sidenav/arrow_icon.svg +0 -3
  191. package/dist/slider/Slider.js +0 -268
  192. package/dist/slider/Slider.stories.js +0 -241
  193. package/dist/slider/readme.md +0 -64
  194. package/dist/spinner/Spinner.js +0 -196
  195. package/dist/spinner/Spinner.stories.js +0 -183
  196. package/dist/spinner/readme.md +0 -65
  197. package/dist/switch/Switch.stories.js +0 -134
  198. package/dist/switch/readme.md +0 -133
  199. package/dist/table/Table.js +0 -84
  200. package/dist/tabs/Tabs.js +0 -183
  201. package/dist/tabs/Tabs.stories.js +0 -130
  202. package/dist/tabs/readme.md +0 -78
  203. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  204. package/dist/tabs-for-sections/readme.md +0 -78
  205. package/dist/textarea/Textarea.js +0 -226
  206. package/dist/toggle/Toggle.stories.js +0 -297
  207. package/dist/toggle/readme.md +0 -80
  208. package/dist/upload/Upload.stories.js +0 -72
  209. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  210. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  211. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  212. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  213. package/dist/upload/file-upload/FileToUpload.js +0 -158
  214. package/dist/upload/file-upload/audio-icon.svg +0 -4
  215. package/dist/upload/file-upload/close.svg +0 -4
  216. package/dist/upload/file-upload/file-icon.svg +0 -4
  217. package/dist/upload/file-upload/video-icon.svg +0 -4
  218. package/dist/upload/readme.md +0 -37
  219. package/dist/upload/transaction/Transaction.js +0 -155
  220. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  221. package/dist/upload/transaction/audio-icon.svg +0 -4
  222. package/dist/upload/transaction/error-icon.svg +0 -4
  223. package/dist/upload/transaction/file-icon-err.svg +0 -4
  224. package/dist/upload/transaction/file-icon.svg +0 -4
  225. package/dist/upload/transaction/image-icon-err.svg +0 -4
  226. package/dist/upload/transaction/image-icon.svg +0 -4
  227. package/dist/upload/transaction/success-icon.svg +0 -4
  228. package/dist/upload/transaction/video-icon-err.svg +0 -4
  229. package/dist/upload/transaction/video-icon.svg +0 -4
  230. package/dist/wizard/Wizard.js +0 -310
  231. package/dist/wizard/invalid_icon.svg +0 -6
  232. package/dist/wizard/valid_icon.svg +0 -6
  233. package/dist/wizard/validation-wrong.svg +0 -6
  234. package/test/Accordion.test.js +0 -33
  235. package/test/Alert.test.js +0 -53
  236. package/test/Box.test.js +0 -10
  237. package/test/Button.test.js +0 -18
  238. package/test/Card.test.js +0 -30
  239. package/test/Checkbox.test.js +0 -45
  240. package/test/Date.test.js +0 -393
  241. package/test/Dialog.test.js +0 -23
  242. package/test/Dropdown.test.js +0 -130
  243. package/test/Footer.test.js +0 -99
  244. package/test/Header.test.js +0 -39
  245. package/test/Heading.test.js +0 -35
  246. package/test/InputText.test.js +0 -236
  247. package/test/Link.test.js +0 -25
  248. package/test/Paginator.test.js +0 -165
  249. package/test/ProgressBar.test.js +0 -35
  250. package/test/Radio.test.js +0 -37
  251. package/test/ResultsetTable.test.js +0 -282
  252. package/test/Select.test.js +0 -191
  253. package/test/Sidenav.test.js +0 -87
  254. package/test/Slider.test.js +0 -65
  255. package/test/Spinner.test.js +0 -27
  256. package/test/Switch.test.js +0 -45
  257. package/test/Table.test.js +0 -36
  258. package/test/Tabs.test.js +0 -88
  259. package/test/TabsForSections.test.js +0 -34
  260. package/test/Tag.test.js +0 -32
  261. package/test/TextArea.test.js +0 -52
  262. package/test/Toggle.test.js +0 -43
  263. package/test/Upload.test.js +0 -60
  264. package/test/Wizard.test.js +0 -130
  265. package/test/mocks/pngMock.js +0 -1
  266. package/test/mocks/svgMock.js +0 -1
@@ -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,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 default dxc 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>
@@ -1,343 +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 _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
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 _AppBar = _interopRequireDefault(require("@material-ui/core/AppBar"));
25
-
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
- var _dxc_logo_white = _interopRequireDefault(require("./dxc_logo_white.png"));
29
-
30
- var _dxc_logo_black = _interopRequireDefault(require("./dxc_logo_black.png"));
31
-
32
- var _hamb_menu_white = _interopRequireDefault(require("./hamb_menu_white.svg"));
33
-
34
- var _hamb_menu_black = _interopRequireDefault(require("./hamb_menu_black.svg"));
35
-
36
- var _close_icon = _interopRequireDefault(require("./close_icon.svg"));
37
-
38
- var _variables = require("../common/variables.js");
39
-
40
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
41
-
42
- function _templateObject10() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: ", ";\n visibility: ", ";\n opacity: ", ";\n display: ", ";\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: 1600;\n"]);
44
-
45
- _templateObject10 = function _templateObject10() {
46
- return data;
47
- };
48
-
49
- return data;
50
- }
51
-
52
- function _templateObject9() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n margin-top: 40px;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"]);
54
-
55
- _templateObject9 = function _templateObject9() {
56
- return data;
57
- };
58
-
59
- return data;
60
- }
61
-
62
- function _templateObject8() {
63
- var data = (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: 2000;\n color: ", ";\n width: ", ";\n height: ", "px;\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\n & > img:first-of-type {\n position: absolute;\n top: 23px;\n left: 20px;\n }\n\n & > img:last-of-type {\n position: fixed;\n top: 23px;\n right: 20px;\n width: 24px;\n height: 24px;\n padding: ", ";\n }\n"]);
64
-
65
- _templateObject8 = function _templateObject8() {
66
- return data;
67
- };
68
-
69
- return data;
70
- }
71
-
72
- function _templateObject7() {
73
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"]);
74
-
75
- _templateObject7 = function _templateObject7() {
76
- return data;
77
- };
78
-
79
- return data;
80
- }
81
-
82
- function _templateObject6() {
83
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: 10px;\n text-transform: uppercase;\n font-weight: 600;\n"]);
84
-
85
- _templateObject6 = function _templateObject6() {
86
- return data;
87
- };
88
-
89
- return data;
90
- }
91
-
92
- function _templateObject5() {
93
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 24px;\n height: 24px;\n"]);
94
-
95
- _templateObject5 = function _templateObject5() {
96
- return data;
97
- };
98
-
99
- return data;
100
- }
101
-
102
- function _templateObject4() {
103
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 54px;\n &:hover {\n background-color: ", ";\n }\n cursor: pointer;\n"]);
104
-
105
- _templateObject4 = function _templateObject4() {
106
- return data;
107
- };
108
-
109
- return data;
110
- }
111
-
112
- function _templateObject3() {
113
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: calc(100% - 186px);\n display: flex;\n align-items: center;\n flex-grow: 1;\n justify-content: flex-end;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"]);
114
-
115
- _templateObject3 = function _templateObject3() {
116
- return data;
117
- };
118
-
119
- return data;
120
- }
121
-
122
- function _templateObject2() {
123
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 32px;\n width: auto;\n vertical-align: middle;\n\n cursor: ", ";\n"]);
124
-
125
- _templateObject2 = function _templateObject2() {
126
- return data;
127
- };
128
-
129
- return data;
130
- }
131
-
132
- function _templateObject() {
133
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: ", ";\n\n &.MuiAppBar-colorPrimary {\n background-color: ", ";\n\n color: ", ";\n\n border-bottom: ", ";\n\n font-family: \"Open Sans\", sans-serif;\n\n &.MuiPaper-elevation4 {\n box-shadow: none;\n }\n .ChildComponents {\n display: flex;\n align-items: center;\n }\n }\n & {\n min-height: 64px;\n }\n &.MuiAppBar-root {\n flex-direction: row;\n align-items: center;\n padding: 0px 0px 0px 20px;\n justify-content: space-between;\n }\n"]);
134
-
135
- _templateObject = function _templateObject() {
136
- return data;
137
- };
138
-
139
- return data;
140
- }
141
-
142
- var DxcHeader = function DxcHeader(_ref) {
143
- var _ref$theme = _ref.theme,
144
- theme = _ref$theme === void 0 ? "light" : _ref$theme,
145
- _ref$underlined = _ref.underlined,
146
- underlined = _ref$underlined === void 0 ? false : _ref$underlined,
147
- _ref$logoSrc = _ref.logoSrc,
148
- logoSrc = _ref$logoSrc === void 0 ? "default" : _ref$logoSrc,
149
- _ref$onClick = _ref.onClick,
150
- onClick = _ref$onClick === void 0 ? "" : _ref$onClick,
151
- content = _ref.content,
152
- responsiveContent = _ref.responsiveContent,
153
- margin = _ref.margin,
154
- padding = _ref.padding;
155
-
156
- var colorsTheme = (0, _react.useContext)(_ThemeContext["default"]) || _variables.colors;
157
-
158
- function onClickHandle() {
159
- if (typeof onClick === "function") {
160
- onClick();
161
- }
162
- }
163
-
164
- var ref = (0, _react.useRef)(null);
165
-
166
- var _useState = (0, _react.useState)(),
167
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
168
- refSize = _useState2[0],
169
- setRefSize = _useState2[1];
170
-
171
- var _useState3 = (0, _react.useState)(),
172
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
173
- isResponsive = _useState4[0],
174
- setIsResponsive = _useState4[1];
175
-
176
- var _useState5 = (0, _react.useState)(false),
177
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
178
- isMenuVisible = _useState6[0],
179
- setIsMenuVisible = _useState6[1];
180
-
181
- var handleResize = function handleResize(refWidth) {
182
- if (refWidth) {
183
- setRefSize(refWidth);
184
-
185
- if (refWidth <= _variables.responsiveSizes.tablet && !isResponsive) {
186
- setIsResponsive(true);
187
- } else {
188
- setIsResponsive(false);
189
- }
190
- }
191
- };
192
-
193
- var handleMenu = function handleMenu() {
194
- if (isResponsive && !isMenuVisible) {
195
- setIsMenuVisible(!isMenuVisible);
196
- } else {
197
- setIsMenuVisible(!isMenuVisible);
198
- }
199
- };
200
-
201
- var getLogoRendered = function getLogoRendered(intoMenu) {
202
- return _react["default"].createElement(LogoIcon, {
203
- logoSrc: logoSrc,
204
- src: intoMenu && logoSrc === "default" && _dxc_logo_black["default"] || theme === "light" && underlined && logoSrc === "default" ? _dxc_logo_black["default"] : theme === "light" && !underlined && logoSrc === "default" ? _dxc_logo_white["default"] : theme === "dark" && underlined && logoSrc === "default" ? _dxc_logo_white["default"] : theme === "dark" && !underlined && logoSrc === "default" ? _dxc_logo_black["default"] : logoSrc
205
- });
206
- };
207
-
208
- var handleEventListener = function handleEventListener() {
209
- handleResize(ref.current.offsetWidth);
210
- };
211
-
212
- (0, _react.useEffect)(function () {
213
- if (ref.current) {
214
- window.addEventListener("resize", handleEventListener);
215
- handleResize(ref.current.offsetWidth);
216
- }
217
-
218
- return function () {
219
- window.removeEventListener("resize", handleEventListener);
220
- };
221
- }, []);
222
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
223
- theme: colorsTheme
224
- }, _react["default"].createElement(HeaderContainer, {
225
- brightness: theme,
226
- underlined: underlined,
227
- position: "static",
228
- margin: margin,
229
- ref: ref
230
- }, _react["default"].createElement("a", {
231
- onClick: function onClick() {
232
- return onClickHandle();
233
- }
234
- }, getLogoRendered(false)), isResponsive && responsiveContent && _react["default"].createElement(MainContainer, null, _react["default"].createElement(ChildContainer, {
235
- padding: padding
236
- }, _react["default"].createElement(HamburguerItem, {
237
- brightness: theme,
238
- underlined: underlined,
239
- onClick: handleMenu
240
- }, _react["default"].createElement(HamburguerIcon, {
241
- src: theme === "light" && underlined ? _hamb_menu_black["default"] : theme === "light" && !underlined ? _hamb_menu_white["default"] : theme === "dark" && underlined ? _hamb_menu_white["default"] : _hamb_menu_black["default"]
242
- }), _react["default"].createElement(HamburguerTitle, null, "Menu"))), _react["default"].createElement("div", null, _react["default"].createElement(ResponsiveMenu, {
243
- hasVisibility: isMenuVisible,
244
- refSize: refSize
245
- }, getLogoRendered(true), _react["default"].createElement(MenuContent, null, responsiveContent(handleMenu)), _react["default"].createElement("img", {
246
- onClick: handleMenu,
247
- src: _close_icon["default"],
248
- className: "closeIcon"
249
- })), _react["default"].createElement(Overlay, {
250
- onClick: handleMenu,
251
- hasVisibility: isMenuVisible,
252
- refSize: refSize
253
- }))), !isResponsive && _react["default"].createElement(ChildContainer, {
254
- padding: padding
255
- }, content)));
256
- };
257
-
258
- var HeaderContainer = (0, _styledComponents["default"])(_AppBar["default"])(_templateObject(), function (props) {
259
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
260
- }, function (props) {
261
- return props.brightness === "light" && props.underlined === true ? props.theme.white : props.brightness === "light" && props.underlined === false ? props.theme.black : props.brightness === "dark" && props.underlined === true ? props.theme.black : props.brightness === "dark" && props.underlined === false ? props.theme.white : props.theme.white;
262
- }, function (props) {
263
- return props.brightness === "light" && props.underlined === true ? props.theme.black : props.brightness === "light" && props.underlined === false ? props.theme.white : props.brightness === "dark" && props.underlined === true ? props.theme.white : props.brightness === "dark" && props.underlined === false ? props.theme.black : props.theme.black;
264
- }, function (props) {
265
- return props.brightness === "light" && props.underlined === true ? "solid ".concat(props.theme.black, " 2px") : props.brightness === "light" && props.underlined === false ? "none" : props.brightness === "dark" && props.underlined === true ? "solid ".concat(props.theme.white, " 2px") : props.brightness === "dark" && props.underlined === false ? "none" : "solid ".concat(props.theme.black, " 2px");
266
- });
267
-
268
- var LogoIcon = _styledComponents["default"].img(_templateObject2(), function (props) {
269
- if (props.onLogoClick === "") {
270
- return "default";
271
- } else {
272
- return "pointer";
273
- }
274
- });
275
-
276
- var ChildContainer = _styledComponents["default"].div(_templateObject3(), function (props) {
277
- return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
278
- }, function (props) {
279
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
280
- }, function (props) {
281
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
282
- }, function (props) {
283
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
284
- }, function (props) {
285
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
286
- });
287
-
288
- var HamburguerItem = _styledComponents["default"].div(_templateObject4(), function (props) {
289
- return props.brightness === "light" && props.underlined === true ? props.theme.lightGrey : props.brightness === "light" && props.underlined === false ? "".concat(props.theme.darkGrey, "80") : props.brightness === "dark" && props.underlined === true ? "".concat(props.theme.darkGrey, "80") : props.brightness === "dark" && props.underlined === false ? props.theme.lightGrey : props.theme.lightGrey;
290
- });
291
-
292
- var HamburguerIcon = _styledComponents["default"].img(_templateObject5());
293
-
294
- var HamburguerTitle = _styledComponents["default"].span(_templateObject6());
295
-
296
- var MainContainer = _styledComponents["default"].div(_templateObject7());
297
-
298
- var ResponsiveMenu = _styledComponents["default"].div(_templateObject8(), function (props) {
299
- return props.theme.lightGrey;
300
- }, function (props) {
301
- return props.theme.black;
302
- }, function (props) {
303
- return props.refSize <= _variables.responsiveSizes.laptop && props.refSize > _variables.responsiveSizes.mobileLarge ? "60vw" : "100vw";
304
- }, window.innerHeight, function (props) {
305
- return props.hasVisibility ? "translateX(0)" : "translateX(100vw)";
306
- }, function (props) {
307
- return props.hasVisibility ? "1" : "0.96";
308
- }, _variables.spaces.xxsmall);
309
-
310
- var MenuContent = _styledComponents["default"].div(_templateObject9());
311
-
312
- var Overlay = _styledComponents["default"].div(_templateObject10(), function (props) {
313
- return props.theme.mediumBlack;
314
- }, function (props) {
315
- return props.hasVisibility ? "visible" : "hidden";
316
- }, function (props) {
317
- return props.hasVisibility ? "1" : "0";
318
- }, function (props) {
319
- return props.refSize <= _variables.responsiveSizes.mobileLarge ? "none" : "";
320
- });
321
-
322
- DxcHeader.propTypes = {
323
- logoSrc: _propTypes["default"].string,
324
- theme: _propTypes["default"].oneOf(["light", "dark", ""]),
325
- underlined: _propTypes["default"].bool,
326
- onClick: _propTypes["default"].func,
327
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
328
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
329
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
330
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
331
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
332
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
333
- padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
334
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
335
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
336
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
337
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
338
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
339
- content: _propTypes["default"].object,
340
- responsiveContent: _propTypes["default"].object
341
- };
342
- var _default = DxcHeader;
343
- exports["default"] = _default;