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

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 (297) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +124 -137
  7. package/accordion/Accordion.stories.tsx +306 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +11 -11
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +16 -37
  12. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  13. package/accordion-group/AccordionGroup.test.js +126 -0
  14. package/accordion-group/types.d.ts +16 -10
  15. package/alert/Alert.js +7 -4
  16. package/alert/Alert.test.js +92 -0
  17. package/alert/types.d.ts +1 -1
  18. package/badge/Badge.d.ts +4 -0
  19. package/badge/Badge.js +6 -4
  20. package/badge/types.d.ts +5 -0
  21. package/{radio → badge}/types.js +0 -0
  22. package/bleed/Bleed.d.ts +3 -0
  23. package/bleed/Bleed.js +51 -0
  24. package/bleed/Bleed.stories.tsx +341 -0
  25. package/bleed/types.d.ts +37 -0
  26. package/bleed/types.js +5 -0
  27. package/box/Box.d.ts +1 -1
  28. package/box/Box.js +27 -40
  29. package/box/Box.test.js +18 -0
  30. package/box/types.d.ts +0 -4
  31. package/bulleted-list/BulletedList.d.ts +7 -0
  32. package/bulleted-list/BulletedList.js +123 -0
  33. package/bulleted-list/BulletedList.stories.tsx +200 -0
  34. package/bulleted-list/types.d.ts +11 -0
  35. package/bulleted-list/types.js +5 -0
  36. package/button/Button.d.ts +1 -1
  37. package/button/Button.js +62 -83
  38. package/button/Button.stories.tsx +15 -8
  39. package/button/Button.test.js +35 -0
  40. package/button/types.d.ts +10 -14
  41. package/card/Card.js +26 -30
  42. package/card/Card.stories.tsx +201 -0
  43. package/card/Card.test.js +50 -0
  44. package/card/ice-cream.jpg +0 -0
  45. package/card/types.d.ts +4 -6
  46. package/checkbox/Checkbox.d.ts +1 -1
  47. package/checkbox/Checkbox.js +104 -108
  48. package/checkbox/Checkbox.stories.tsx +124 -128
  49. package/checkbox/Checkbox.test.js +155 -0
  50. package/checkbox/types.d.ts +11 -7
  51. package/chip/Chip.d.ts +4 -0
  52. package/chip/Chip.js +16 -76
  53. package/chip/Chip.stories.tsx +119 -0
  54. package/chip/Chip.test.js +56 -0
  55. package/chip/types.d.ts +45 -0
  56. package/chip/types.js +5 -0
  57. package/common/variables.js +290 -359
  58. package/date-input/DateInput.js +66 -55
  59. package/date-input/DateInput.stories.tsx +7 -7
  60. package/date-input/DateInput.test.js +479 -0
  61. package/date-input/types.d.ts +16 -9
  62. package/dialog/Dialog.js +50 -53
  63. package/dialog/Dialog.stories.tsx +211 -0
  64. package/dialog/Dialog.test.js +70 -0
  65. package/dialog/types.d.ts +2 -2
  66. package/dropdown/Dropdown.d.ts +1 -1
  67. package/dropdown/Dropdown.js +243 -273
  68. package/dropdown/Dropdown.stories.tsx +312 -0
  69. package/dropdown/Dropdown.test.js +591 -0
  70. package/dropdown/DropdownMenu.d.ts +4 -0
  71. package/dropdown/DropdownMenu.js +80 -0
  72. package/dropdown/DropdownMenuItem.d.ts +4 -0
  73. package/dropdown/DropdownMenuItem.js +92 -0
  74. package/dropdown/types.d.ts +30 -19
  75. package/file-input/FileInput.d.ts +4 -0
  76. package/file-input/FileInput.js +172 -111
  77. package/file-input/FileInput.stories.tsx +507 -0
  78. package/file-input/FileInput.test.js +457 -0
  79. package/file-input/FileItem.d.ts +14 -0
  80. package/file-input/FileItem.js +16 -23
  81. package/file-input/types.d.ts +112 -0
  82. package/file-input/types.js +5 -0
  83. package/flex/Flex.d.ts +4 -0
  84. package/flex/Flex.js +57 -0
  85. package/flex/Flex.stories.tsx +103 -0
  86. package/flex/types.d.ts +21 -0
  87. package/flex/types.js +5 -0
  88. package/footer/Footer.d.ts +1 -1
  89. package/footer/Footer.js +32 -113
  90. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +5 -19
  91. package/footer/Footer.test.js +109 -0
  92. package/footer/Icons.d.ts +2 -0
  93. package/footer/Icons.js +4 -4
  94. package/footer/types.d.ts +22 -18
  95. package/header/Header.js +97 -116
  96. package/header/Header.stories.tsx +172 -0
  97. package/header/Header.test.js +79 -0
  98. package/header/Icons.d.ts +2 -0
  99. package/header/Icons.js +2 -2
  100. package/header/types.d.ts +6 -4
  101. package/heading/Heading.d.ts +4 -0
  102. package/heading/Heading.js +7 -24
  103. package/heading/Heading.stories.tsx +54 -0
  104. package/heading/Heading.test.js +186 -0
  105. package/heading/types.d.ts +33 -0
  106. package/heading/types.js +5 -0
  107. package/inset/Inset.d.ts +3 -0
  108. package/inset/Inset.js +51 -0
  109. package/inset/Inset.stories.tsx +229 -0
  110. package/inset/types.d.ts +37 -0
  111. package/inset/types.js +5 -0
  112. package/layout/ApplicationLayout.d.ts +20 -0
  113. package/layout/ApplicationLayout.js +71 -135
  114. package/layout/ApplicationLayout.stories.tsx +162 -0
  115. package/layout/Icons.d.ts +5 -0
  116. package/layout/Icons.js +13 -2
  117. package/layout/SidenavContext.d.ts +5 -0
  118. package/layout/SidenavContext.js +19 -0
  119. package/layout/types.d.ts +42 -0
  120. package/layout/types.js +5 -0
  121. package/link/Link.d.ts +3 -2
  122. package/link/Link.js +61 -86
  123. package/link/Link.stories.tsx +139 -16
  124. package/link/Link.test.js +83 -0
  125. package/link/types.d.ts +9 -29
  126. package/main.d.ts +12 -12
  127. package/main.js +64 -58
  128. package/number-input/NumberInput.js +14 -24
  129. package/number-input/NumberInput.stories.tsx +5 -5
  130. package/number-input/NumberInput.test.js +506 -0
  131. package/number-input/NumberInputContext.d.ts +4 -0
  132. package/number-input/NumberInputContext.js +5 -2
  133. package/number-input/numberInputContextTypes.d.ts +19 -0
  134. package/number-input/numberInputContextTypes.js +5 -0
  135. package/number-input/types.d.ts +17 -10
  136. package/package.json +16 -12
  137. package/paginator/Paginator.js +19 -46
  138. package/paginator/Paginator.test.js +308 -0
  139. package/paragraph/Paragraph.d.ts +6 -0
  140. package/paragraph/Paragraph.js +38 -0
  141. package/paragraph/Paragraph.stories.tsx +44 -0
  142. package/password-input/PasswordInput.js +23 -19
  143. package/password-input/PasswordInput.stories.tsx +3 -3
  144. package/password-input/PasswordInput.test.js +180 -0
  145. package/password-input/types.d.ts +29 -19
  146. package/progress-bar/ProgressBar.d.ts +2 -2
  147. package/progress-bar/ProgressBar.js +59 -53
  148. package/progress-bar/ProgressBar.stories.jsx +13 -11
  149. package/progress-bar/ProgressBar.test.js +110 -0
  150. package/progress-bar/types.d.ts +3 -4
  151. package/quick-nav/QuickNav.d.ts +4 -0
  152. package/quick-nav/QuickNav.js +118 -0
  153. package/quick-nav/QuickNav.stories.tsx +264 -0
  154. package/quick-nav/types.d.ts +21 -0
  155. package/quick-nav/types.js +5 -0
  156. package/radio-group/Radio.d.ts +4 -0
  157. package/radio-group/Radio.js +156 -0
  158. package/radio-group/RadioGroup.d.ts +4 -0
  159. package/radio-group/RadioGroup.js +279 -0
  160. package/radio-group/RadioGroup.stories.tsx +101 -0
  161. package/radio-group/RadioGroup.test.js +665 -0
  162. package/radio-group/types.d.ts +114 -0
  163. package/radio-group/types.js +5 -0
  164. package/resultsetTable/ResultsetTable.d.ts +4 -0
  165. package/resultsetTable/ResultsetTable.js +9 -29
  166. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  167. package/resultsetTable/ResultsetTable.test.js +348 -0
  168. package/resultsetTable/types.d.ts +67 -0
  169. package/resultsetTable/types.js +5 -0
  170. package/select/Icons.d.ts +10 -0
  171. package/select/Icons.js +93 -0
  172. package/select/Listbox.d.ts +4 -0
  173. package/select/Listbox.js +198 -0
  174. package/select/Option.d.ts +4 -0
  175. package/select/Option.js +110 -0
  176. package/select/Select.d.ts +4 -0
  177. package/select/Select.js +158 -380
  178. package/select/Select.stories.tsx +627 -0
  179. package/select/Select.test.js +2175 -0
  180. package/select/types.d.ts +210 -0
  181. package/select/types.js +5 -0
  182. package/sidenav/Sidenav.d.ts +6 -5
  183. package/sidenav/Sidenav.js +186 -54
  184. package/sidenav/Sidenav.stories.tsx +180 -0
  185. package/sidenav/Sidenav.test.js +44 -0
  186. package/sidenav/types.d.ts +50 -27
  187. package/slider/Slider.d.ts +1 -1
  188. package/slider/Slider.js +118 -96
  189. package/slider/Slider.stories.tsx +20 -9
  190. package/slider/Slider.test.js +250 -0
  191. package/slider/types.d.ts +6 -2
  192. package/spinner/Spinner.js +3 -3
  193. package/spinner/Spinner.stories.jsx +1 -0
  194. package/spinner/Spinner.test.js +64 -0
  195. package/switch/Switch.d.ts +2 -2
  196. package/switch/Switch.js +149 -67
  197. package/switch/Switch.stories.tsx +21 -43
  198. package/switch/Switch.test.js +225 -0
  199. package/switch/types.d.ts +9 -6
  200. package/table/Table.js +3 -3
  201. package/table/Table.stories.jsx +2 -1
  202. package/table/Table.test.js +26 -0
  203. package/tabs/Tab.d.ts +4 -0
  204. package/tabs/Tab.js +135 -0
  205. package/tabs/Tabs.d.ts +1 -1
  206. package/tabs/Tabs.js +364 -108
  207. package/tabs/Tabs.stories.tsx +186 -0
  208. package/tabs/Tabs.test.js +351 -0
  209. package/tabs/types.d.ts +41 -20
  210. package/tabs-nav/NavTabs.d.ts +8 -0
  211. package/tabs-nav/NavTabs.js +125 -0
  212. package/tabs-nav/NavTabs.stories.tsx +170 -0
  213. package/tabs-nav/NavTabs.test.js +82 -0
  214. package/tabs-nav/Tab.d.ts +4 -0
  215. package/tabs-nav/Tab.js +130 -0
  216. package/tabs-nav/types.d.ts +53 -0
  217. package/tabs-nav/types.js +5 -0
  218. package/tag/Tag.d.ts +1 -1
  219. package/tag/Tag.js +19 -29
  220. package/tag/Tag.stories.tsx +26 -29
  221. package/tag/Tag.test.js +60 -0
  222. package/tag/types.d.ts +23 -14
  223. package/text-input/Icons.d.ts +8 -0
  224. package/text-input/Icons.js +60 -0
  225. package/text-input/Suggestion.d.ts +4 -0
  226. package/text-input/Suggestion.js +57 -0
  227. package/text-input/Suggestions.d.ts +4 -0
  228. package/text-input/Suggestions.js +134 -0
  229. package/text-input/TextInput.d.ts +4 -0
  230. package/text-input/TextInput.js +166 -328
  231. package/text-input/TextInput.stories.tsx +481 -0
  232. package/text-input/TextInput.test.js +1713 -0
  233. package/text-input/types.d.ts +192 -0
  234. package/text-input/types.js +5 -0
  235. package/textarea/Textarea.d.ts +4 -0
  236. package/textarea/Textarea.js +39 -79
  237. package/textarea/Textarea.stories.jsx +37 -15
  238. package/textarea/Textarea.test.js +437 -0
  239. package/textarea/types.d.ts +137 -0
  240. package/textarea/types.js +5 -0
  241. package/toggle-group/ToggleGroup.d.ts +4 -0
  242. package/toggle-group/ToggleGroup.js +18 -46
  243. package/toggle-group/ToggleGroup.stories.tsx +27 -32
  244. package/toggle-group/ToggleGroup.test.js +156 -0
  245. package/toggle-group/types.d.ts +105 -0
  246. package/toggle-group/types.js +5 -0
  247. package/typography/Typography.d.ts +4 -0
  248. package/typography/Typography.js +131 -0
  249. package/typography/Typography.stories.tsx +198 -0
  250. package/typography/types.d.ts +18 -0
  251. package/typography/types.js +5 -0
  252. package/useTheme.d.ts +2 -0
  253. package/useTheme.js +2 -2
  254. package/useTranslatedLabels.d.ts +2 -0
  255. package/useTranslatedLabels.js +20 -0
  256. package/wizard/Wizard.d.ts +1 -1
  257. package/wizard/Wizard.js +112 -58
  258. package/wizard/Wizard.stories.tsx +233 -0
  259. package/wizard/Wizard.test.js +141 -0
  260. package/wizard/types.d.ts +13 -12
  261. package/ThemeContext.js +0 -246
  262. package/V3Select/V3Select.js +0 -455
  263. package/V3Select/index.d.ts +0 -27
  264. package/V3Textarea/V3Textarea.js +0 -260
  265. package/V3Textarea/index.d.ts +0 -27
  266. package/chip/index.d.ts +0 -22
  267. package/date/Date.js +0 -373
  268. package/date/index.d.ts +0 -27
  269. package/file-input/index.d.ts +0 -81
  270. package/heading/index.d.ts +0 -17
  271. package/input-text/Icons.js +0 -22
  272. package/input-text/InputText.js +0 -611
  273. package/input-text/index.d.ts +0 -36
  274. package/radio/Radio.d.ts +0 -4
  275. package/radio/Radio.js +0 -174
  276. package/radio/Radio.stories.tsx +0 -192
  277. package/radio/types.d.ts +0 -54
  278. package/resultsetTable/index.d.ts +0 -19
  279. package/select/index.d.ts +0 -131
  280. package/text-input/index.d.ts +0 -135
  281. package/textarea/index.d.ts +0 -117
  282. package/toggle/Toggle.js +0 -186
  283. package/toggle/index.d.ts +0 -21
  284. package/toggle-group/index.d.ts +0 -21
  285. package/upload/Upload.js +0 -201
  286. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  287. package/upload/buttons-upload/Icons.js +0 -40
  288. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  289. package/upload/dragAndDropArea/Icons.js +0 -39
  290. package/upload/file-upload/FileToUpload.js +0 -115
  291. package/upload/file-upload/Icons.js +0 -66
  292. package/upload/files-upload/FilesToUpload.js +0 -109
  293. package/upload/index.d.ts +0 -15
  294. package/upload/transaction/Icons.js +0 -160
  295. package/upload/transaction/Transaction.js +0 -104
  296. package/upload/transactions/Transactions.js +0 -94
  297. package/wizard/Icons.js +0 -65
@@ -0,0 +1,162 @@
1
+ import React from "react";
2
+ import DxcApplicationLayout from "./ApplicationLayout";
3
+ import Title from "../../.storybook/components/Title";
4
+ import { INITIAL_VIEWPORTS } from "@storybook/addon-viewport";
5
+
6
+ export default {
7
+ title: "Application Layout ",
8
+ component: DxcApplicationLayout,
9
+ parameters: {
10
+ viewport: {
11
+ viewports: INITIAL_VIEWPORTS,
12
+ },
13
+ },
14
+ };
15
+
16
+ export const DefaultApplicationLayout = () => (
17
+ <>
18
+ <DxcApplicationLayout>
19
+ <DxcApplicationLayout.Main>
20
+ <Title title="Default application layout" theme="light" level={4} />
21
+ <p>Main Content</p>
22
+ <p>Main Content</p>
23
+ <p>Main Content</p>
24
+ <p>Main Content</p>
25
+ </DxcApplicationLayout.Main>
26
+ </DxcApplicationLayout>
27
+ </>
28
+ );
29
+
30
+ export const ApplicationLayoutWithDefaultSidenav = () => (
31
+ <>
32
+ <DxcApplicationLayout
33
+ sidenav={
34
+ <DxcApplicationLayout.SideNav
35
+ title={
36
+ <DxcApplicationLayout.SideNav.Title>
37
+ Application layout with push sidenav
38
+ </DxcApplicationLayout.SideNav.Title>
39
+ }
40
+ >
41
+ <DxcApplicationLayout.SideNav.Section>
42
+ <p>SideNav Content</p>
43
+ <p>SideNav Content</p>
44
+ <p>SideNav Content</p>
45
+ <p>SideNav Content</p>
46
+ <p>SideNav Content</p>
47
+ </DxcApplicationLayout.SideNav.Section>
48
+ </DxcApplicationLayout.SideNav>
49
+ }
50
+ >
51
+ <DxcApplicationLayout.Main>
52
+ <p>Main Content</p>
53
+ <p>Main Content</p>
54
+ <p>Main Content</p>
55
+ <p>Main Content</p>
56
+ </DxcApplicationLayout.Main>
57
+ </DxcApplicationLayout>
58
+ </>
59
+ );
60
+
61
+ export const ApplicationLayoutWithResponsiveSidenav = () => (
62
+ <>
63
+ <DxcApplicationLayout
64
+ visibilityToggleLabel="Example"
65
+ sidenav={
66
+ <DxcApplicationLayout.SideNav
67
+ title={
68
+ <DxcApplicationLayout.SideNav.Title>
69
+ Application layout with push sidenav
70
+ </DxcApplicationLayout.SideNav.Title>
71
+ }
72
+ >
73
+ <DxcApplicationLayout.SideNav.Section>
74
+ <p>SideNav Content</p>
75
+ <p>SideNav Content</p>
76
+ <p>SideNav Content</p>
77
+ <p>SideNav Content</p>
78
+ <p>SideNav Content</p>
79
+ </DxcApplicationLayout.SideNav.Section>
80
+ </DxcApplicationLayout.SideNav>
81
+ }
82
+ >
83
+ <DxcApplicationLayout.Main>
84
+ <p>Main Content</p>
85
+ <p>Main Content</p>
86
+ <p>Main Content</p>
87
+ <p>Main Content</p>
88
+ </DxcApplicationLayout.Main>
89
+ </DxcApplicationLayout>
90
+ </>
91
+ );
92
+
93
+ ApplicationLayoutWithResponsiveSidenav.parameters = {
94
+ viewport: {
95
+ defaultViewport: "pixel",
96
+ },
97
+ chromatic: { viewports: [540] },
98
+ };
99
+
100
+ export const ApplicationLayoutWithCustomHeader = () => (
101
+ <>
102
+ <DxcApplicationLayout
103
+ header={<p>Custom Header</p>}
104
+ sidenav={
105
+ <DxcApplicationLayout.SideNav
106
+ title={
107
+ <DxcApplicationLayout.SideNav.Title>
108
+ Application layout with push sidenav
109
+ </DxcApplicationLayout.SideNav.Title>
110
+ }
111
+ >
112
+ <DxcApplicationLayout.SideNav.Section>
113
+ <p>SideNav Content</p>
114
+ <p>SideNav Content</p>
115
+ <p>SideNav Content</p>
116
+ <p>SideNav Content</p>
117
+ <p>SideNav Content</p>
118
+ </DxcApplicationLayout.SideNav.Section>
119
+ </DxcApplicationLayout.SideNav>
120
+ }
121
+ >
122
+ <DxcApplicationLayout.Main>
123
+ <p>Main Content</p>
124
+ <p>Main Content</p>
125
+ <p>Main Content</p>
126
+ <p>Main Content</p>
127
+ </DxcApplicationLayout.Main>
128
+ </DxcApplicationLayout>
129
+ </>
130
+ );
131
+
132
+ export const ApplicationLayoutWithCustomFooter = () => (
133
+ <>
134
+ <DxcApplicationLayout
135
+ footer={<p>Custom Footer</p>}
136
+ sidenav={
137
+ <DxcApplicationLayout.SideNav
138
+ title={
139
+ <DxcApplicationLayout.SideNav.Title>
140
+ Application layout with push sidenav
141
+ </DxcApplicationLayout.SideNav.Title>
142
+ }
143
+ >
144
+ <DxcApplicationLayout.SideNav.Section>
145
+ <p>SideNav Content</p>
146
+ <p>SideNav Content</p>
147
+ <p>SideNav Content</p>
148
+ <p>SideNav Content</p>
149
+ <p>SideNav Content</p>
150
+ </DxcApplicationLayout.SideNav.Section>
151
+ </DxcApplicationLayout.SideNav>
152
+ }
153
+ >
154
+ <DxcApplicationLayout.Main>
155
+ <p>Main Content</p>
156
+ <p>Main Content</p>
157
+ <p>Main Content</p>
158
+ <p>Main Content</p>
159
+ </DxcApplicationLayout.Main>
160
+ </DxcApplicationLayout>
161
+ </>
162
+ );
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export declare const facebookLogo: JSX.Element;
3
+ export declare const twitterLogo: JSX.Element;
4
+ export declare const linkedinLogo: JSX.Element;
5
+ export declare const hamburgerIcon: JSX.Element;
package/layout/Icons.js CHANGED
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.twitterLogo = exports.linkedinLogo = exports.facebookLogo = void 0;
8
+ exports.twitterLogo = exports.linkedinLogo = exports.hamburgerIcon = exports.facebookLogo = void 0;
9
9
 
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
 
@@ -52,4 +52,15 @@ var linkedinLogo = /*#__PURE__*/_react["default"].createElement("svg", {
52
52
  d: "M414.41,24.123C398.333,8.042,378.963,0,356.315,0H82.228C59.58,0,40.21,8.042,24.126,24.123 C8.045,40.207,0.003,59.576,0.003,82.225v274.084c0,22.647,8.042,42.018,24.123,58.102c16.084,16.084,35.454,24.126,58.102,24.126 h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225 C438.532,59.576,430.49,40.204,414.41,24.123z M133.618,367.157H67.666V169.016h65.952V367.157z M127.626,132.332 c-6.851,6.567-15.893,9.851-27.124,9.851h-0.288c-10.848,0-19.648-3.284-26.407-9.851c-6.76-6.567-10.138-14.703-10.138-24.41 c0-9.897,3.476-18.083,10.421-24.556c6.95-6.471,15.942-9.708,26.98-9.708c11.039,0,19.89,3.237,26.553,9.708 c6.661,6.473,10.088,14.659,10.277,24.556C137.899,117.625,134.477,125.761,127.626,132.332z M370.873,367.157h-65.952v-105.92 c0-29.879-11.036-44.823-33.116-44.823c-8.374,0-15.42,2.331-21.128,6.995c-5.715,4.661-9.996,10.324-12.847,16.991 c-1.335,3.422-1.999,8.75-1.999,15.981v110.775h-65.952c0.571-119.529,0.571-185.579,0-198.142h65.952v27.974 c13.867-21.681,33.558-32.544,59.101-32.544c22.84,0,41.21,7.52,55.104,22.554c13.895,15.037,20.841,37.214,20.841,66.519v113.64 H370.873z"
53
53
  })));
54
54
 
55
- exports.linkedinLogo = linkedinLogo;
55
+ exports.linkedinLogo = linkedinLogo;
56
+
57
+ var hamburgerIcon = /*#__PURE__*/_react["default"].createElement("svg", {
58
+ xmlns: "http://www.w3.org/2000/svg",
59
+ height: "24",
60
+ width: "24",
61
+ viewBox: "0 0 24 24"
62
+ }, /*#__PURE__*/_react["default"].createElement("path", {
63
+ d: "M3 18V16H21V18ZM3 13V11H21V13ZM3 8V6H21V8Z"
64
+ }));
65
+
66
+ exports.hamburgerIcon = hamburgerIcon;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ declare type SidenavContextType = (isSidenavVisible: boolean) => void;
3
+ export declare const SidenavContextProvider: import("react").Provider<SidenavContextType>;
4
+ export declare const useResponsiveSidenavVisibility: () => SidenavContextType;
5
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useResponsiveSidenavVisibility = exports.SidenavContextProvider = void 0;
7
+
8
+ var _react = require("react");
9
+
10
+ var SidenavContext = /*#__PURE__*/(0, _react.createContext)(null);
11
+ var SidenavContextProvider = SidenavContext.Provider;
12
+ exports.SidenavContextProvider = SidenavContextProvider;
13
+
14
+ var useResponsiveSidenavVisibility = function useResponsiveSidenavVisibility() {
15
+ var changeResponsiveSidenavVisibility = (0, _react.useContext)(SidenavContext);
16
+ return changeResponsiveSidenavVisibility;
17
+ };
18
+
19
+ exports.useResponsiveSidenavVisibility = useResponsiveSidenavVisibility;
@@ -0,0 +1,42 @@
1
+ /// <reference types="react" />
2
+ declare type ChildrenType = AppLayoutMainPropsType | AppLayoutSidenavPropsType;
3
+ export declare type AppLayoutMainPropsType = {
4
+ /**
5
+ * Everything between the tags will be displayed as the content of the main part of the application.
6
+ */
7
+ children: React.ReactNode;
8
+ };
9
+ export declare type AppLayoutSidenavPropsType = {
10
+ /**
11
+ * The area inside the sidenav. This area can be used to render the content inside the sidenav.
12
+ */
13
+ children: React.ReactNode;
14
+ /**
15
+ * The area assigned to render the sidenav title. It is highly recommended to use the sidenav title.
16
+ */
17
+ title?: React.ReactNode;
18
+ };
19
+ declare type AppLayoutPropsType = {
20
+ /**
21
+ * Text to be placed next to the hamburger button that toggles the
22
+ * visibility of the sidenav.
23
+ */
24
+ visibilityToggleLabel?: string;
25
+ /**
26
+ * Header content.
27
+ */
28
+ header?: React.ReactNode;
29
+ /**
30
+ * Sidenav content
31
+ */
32
+ sidenav?: React.ReactNode;
33
+ /**
34
+ * Footer content
35
+ */
36
+ footer?: React.ReactNode;
37
+ /**
38
+ * The area inside the sidenav. This area can be used to render custom content.
39
+ */
40
+ children: React.ReactElement<ChildrenType> | React.ReactElement<ChildrenType>[];
41
+ };
42
+ export default AppLayoutPropsType;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/link/Link.d.ts CHANGED
@@ -1,3 +1,4 @@
1
- import Overload from "./types";
2
- declare const DxcLink: Overload;
1
+ import React from "react";
2
+ import { LinkProps } from "./types";
3
+ declare const DxcLink: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
3
4
  export default DxcLink;
package/link/Link.js CHANGED
@@ -9,75 +9,80 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
12
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
15
 
14
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
16
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
17
+
18
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
19
 
16
- var _react = _interopRequireDefault(require("react"));
20
+ var _react = _interopRequireWildcard(require("react"));
17
21
 
18
22
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
23
 
20
24
  var _variables = require("../common/variables.js");
21
25
 
22
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
26
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
27
 
24
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
28
+ var _templateObject, _templateObject2, _templateObject3;
29
+
30
+ var _excluded = ["inheritColor", "disabled", "icon", "iconPosition", "href", "newWindow", "onClick", "margin", "tabIndex", "children"];
25
31
 
26
32
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
33
 
28
34
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
35
 
30
- var DxcLink = function DxcLink(_ref) {
31
- var _ref$inheritColor = _ref.inheritColor,
32
- inheritColor = _ref$inheritColor === void 0 ? false : _ref$inheritColor,
33
- _ref$disabled = _ref.disabled,
34
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
35
- iconSrc = _ref.iconSrc,
36
+ var LinkContent = /*#__PURE__*/_react["default"].memo(function (_ref) {
37
+ var iconPosition = _ref.iconPosition,
36
38
  icon = _ref.icon,
37
- _ref$iconPosition = _ref.iconPosition,
38
- iconPosition = _ref$iconPosition === void 0 ? "before" : _ref$iconPosition,
39
- _ref$href = _ref.href,
40
- href = _ref$href === void 0 ? "" : _ref$href,
41
- _ref$newWindow = _ref.newWindow,
42
- newWindow = _ref$newWindow === void 0 ? false : _ref$newWindow,
43
- onClick = _ref.onClick,
44
- _ref$text = _ref.text,
45
- text = _ref$text === void 0 ? "" : _ref$text,
46
- margin = _ref.margin,
47
- _ref$tabIndex = _ref.tabIndex,
48
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
49
- var colorsTheme = (0, _useTheme["default"])();
50
-
51
- var linkContent = /*#__PURE__*/_react["default"].createElement(LinkText, {
39
+ children = _ref.children;
40
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, iconPosition === "after" && children, icon && /*#__PURE__*/_react["default"].createElement(LinkIconContainer, {
52
41
  iconPosition: iconPosition
53
- }, text, icon ? /*#__PURE__*/_react["default"].createElement(LinkIconContainer, {
54
- iconPosition: iconPosition
55
- }, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(LinkIcon, {
56
- src: iconSrc,
57
- iconPosition: iconPosition
58
- }));
42
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(LinkIcon, {
43
+ src: icon
44
+ }) : icon), iconPosition === "before" && children);
45
+ });
59
46
 
47
+ var DxcLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
48
+ var _ref2$inheritColor = _ref2.inheritColor,
49
+ inheritColor = _ref2$inheritColor === void 0 ? false : _ref2$inheritColor,
50
+ _ref2$disabled = _ref2.disabled,
51
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
52
+ icon = _ref2.icon,
53
+ _ref2$iconPosition = _ref2.iconPosition,
54
+ iconPosition = _ref2$iconPosition === void 0 ? "before" : _ref2$iconPosition,
55
+ _ref2$href = _ref2.href,
56
+ href = _ref2$href === void 0 ? "" : _ref2$href,
57
+ _ref2$newWindow = _ref2.newWindow,
58
+ newWindow = _ref2$newWindow === void 0 ? false : _ref2$newWindow,
59
+ onClick = _ref2.onClick,
60
+ margin = _ref2.margin,
61
+ _ref2$tabIndex = _ref2.tabIndex,
62
+ tabIndex = _ref2$tabIndex === void 0 ? 0 : _ref2$tabIndex,
63
+ children = _ref2.children,
64
+ otherProps = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
65
+ var colorsTheme = (0, _useTheme["default"])();
60
66
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
61
67
  theme: colorsTheme.link
62
- }, /*#__PURE__*/_react["default"].createElement(DxcLinkContainer, {
63
- margin: margin
64
- }, onClick ? /*#__PURE__*/_react["default"].createElement(StyledButton, {
65
- type: "button",
68
+ }, /*#__PURE__*/_react["default"].createElement(StyledLink, (0, _extends2["default"])({
69
+ as: href ? "a" : "button",
70
+ tabIndex: tabIndex,
66
71
  onClick: !disabled && onClick,
67
- margin: margin,
72
+ href: !disabled && href ? href : undefined,
73
+ target: href ? newWindow ? "_blank" : "_self" : undefined,
68
74
  disabled: disabled,
69
- inheritColor: inheritColor
70
- }, linkContent) : /*#__PURE__*/_react["default"].createElement(StyledLink, {
71
- tabIndex: tabIndex,
72
- href: !disabled && href,
73
- target: newWindow ? "_blank" : "_self",
75
+ inheritColor: inheritColor,
74
76
  margin: margin,
75
- disabled: disabled,
76
- inheritColor: inheritColor
77
- }, linkContent)));
78
- };
77
+ ref: ref
78
+ }, otherProps), /*#__PURE__*/_react["default"].createElement(LinkContent, {
79
+ iconPosition: iconPosition,
80
+ icon: icon,
81
+ children: children
82
+ })));
83
+ });
79
84
 
80
- var DxcLinkContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
85
+ var StyledLink = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: baseline;\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n font-family: ", ";\n text-decoration-color: transparent;\n width: fit-content;\n\n ", "\n ", "\n color: ", ";\n ", "\n\n &:visited {\n color: ", ";\n &:hover {\n ", "\n }\n }\n &:hover {\n ", "\n }\n &:focus {\n border-radius: 2px;\n outline: 2px solid ", ";\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
81
86
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
82
87
  }, function (props) {
83
88
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -87,29 +92,15 @@ var DxcLinkContainer = _styledComponents["default"].div(_templateObject || (_tem
87
92
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
88
93
  }, function (props) {
89
94
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
90
- });
91
-
92
- var StyledLink = _styledComponents["default"].a(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n ", "\n\n text-decoration-color: transparent;\n ", "\n\n &:visited {\n color: ", ";\n &:hover {\n ", "\n }\n }\n &:hover {\n ", "\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
93
- return props.inheritColor ? "inherit" : !props.disabled ? props.theme.fontColor : props.theme.disabledColor;
94
- }, function (props) {
95
- return props.disabled ? "pointer-events: none;" : "";
96
95
  }, function (props) {
97
- return "padding-bottom: ".concat(props.theme.underlineSpacing, ";\n border-bottom: ").concat(props.theme.underlineThickness, " ").concat(props.theme.underlineStyle, " transparent;");
98
- }, function (props) {
99
- return !props.inheritColor ? props.theme.visitedFontColor : "";
100
- }, function (props) {
101
- return "color: ".concat(props.theme.visitedFontColor, ";\n border-bottom-color: ").concat(props.theme.visitedUnderlineColor, ";");
96
+ return props.theme.fontSize;
102
97
  }, function (props) {
103
- return "color: ".concat(props.theme.hoverFontColor, ";\n border-bottom-color: ").concat(props.theme.hoverUnderlineColor, ";\n cursor: pointer;");
98
+ return props.theme.fontWeight;
104
99
  }, function (props) {
105
- return props.theme.focusColor;
100
+ return props.theme.fontStyle;
106
101
  }, function (props) {
107
- return props.disabled && "outline: none";
102
+ return props.theme.fontFamily;
108
103
  }, function (props) {
109
- return "color: ".concat(props.theme.activeFontColor, " !important;\n border-bottom-color: ").concat(props.theme.activeUnderlineColor, " !important;");
110
- });
111
-
112
- var StyledButton = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n font-family: inherit;\n text-decoration-color: transparent;\n\n ", "\n ", "\n color: ", ";\n ", "\n\n &:hover {\n ", "\n }\n &:focus {\n outline-color: ", ";\n outline-width: 2px;\n outline-offset: 1px;\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
113
104
  return "padding-bottom: ".concat(props.theme.underlineSpacing, ";\n border-bottom: ").concat(props.theme.underlineThickness, " ").concat(props.theme.underlineStyle, " transparent;");
114
105
  }, function (props) {
115
106
  return props.disabled && "cursor: default;";
@@ -117,6 +108,10 @@ var StyledButton = _styledComponents["default"].button(_templateObject3 || (_tem
117
108
  return props.inheritColor ? "inherit" : !props.disabled ? props.theme.fontColor : props.theme.disabledColor;
118
109
  }, function (props) {
119
110
  return props.disabled ? "pointer-events: none;" : "";
111
+ }, function (props) {
112
+ return !props.inheritColor && !props.disabled ? props.theme.visitedFontColor : "";
113
+ }, function (props) {
114
+ return "color: ".concat(props.theme.visitedFontColor, ";\n border-bottom-color: ").concat(props.theme.visitedUnderlineColor, ";");
120
115
  }, function (props) {
121
116
  return "color: ".concat(props.theme.hoverFontColor, ";\n border-bottom-color: ").concat(props.theme.hoverUnderlineColor, ";\n cursor: pointer;");
122
117
  }, function (props) {
@@ -127,29 +122,9 @@ var StyledButton = _styledComponents["default"].button(_templateObject3 || (_tem
127
122
  return "color: ".concat(props.theme.activeFontColor, " !important;\n border-bottom-color: ").concat(props.theme.activeUnderlineColor, " !important;");
128
123
  });
129
124
 
130
- var LinkText = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n font-family: ", ";\n display: inline-flex;\n flex-direction: ", ";\n justify-content: ", ";\n align-items: center;\n max-width: 100%;\n"])), function (props) {
131
- return props.theme.fontSize;
132
- }, function (props) {
133
- return props.theme.fontWeight;
134
- }, function (props) {
135
- return props.theme.fontStyle;
136
- }, function (props) {
137
- return props.theme.fontFamily;
138
- }, function (props) {
139
- return props.iconPosition === "after" ? "row" : "row-reverse";
140
- }, function (props) {
141
- return props.iconPosition === "after" ? "flex-start" : "flex-end";
142
- });
143
-
144
- var LinkIcon = _styledComponents["default"].img(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n"])), function (props) {
145
- return props.theme.iconSize;
146
- }, function (props) {
147
- return props.theme.iconSize;
148
- }, function (props) {
149
- return "".concat(props.iconPosition === "before" ? "margin-right" : "margin-left", ": ").concat(props.theme.iconSpacing);
150
- });
125
+ var LinkIcon = _styledComponents["default"].img(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
151
126
 
152
- var LinkIconContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
127
+ var LinkIconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n height: ", ";\n ", ";\n overflow: hidden;\n align-self: center;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])), function (props) {
153
128
  return props.theme.iconSize;
154
129
  }, function (props) {
155
130
  return props.theme.iconSize;