@dxc-technology/halstack-react 0.0.0-9e54008 → 0.0.0-9ef63cd

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 (354) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +4 -21
  3. package/HalstackContext.d.ts +54 -144
  4. package/HalstackContext.js +11 -36
  5. package/README.md +47 -0
  6. package/accordion/Accordion.accessibility.test.js +71 -0
  7. package/accordion/Accordion.js +33 -87
  8. package/accordion/Accordion.stories.tsx +8 -64
  9. package/accordion/Accordion.test.js +18 -33
  10. package/accordion/types.d.ts +6 -6
  11. package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
  12. package/accordion-group/AccordionGroup.d.ts +2 -3
  13. package/accordion-group/AccordionGroup.js +17 -44
  14. package/accordion-group/AccordionGroup.stories.tsx +24 -24
  15. package/accordion-group/AccordionGroup.test.js +42 -60
  16. package/accordion-group/AccordionGroupAccordion.js +11 -23
  17. package/accordion-group/AccordionGroupContext.d.ts +3 -0
  18. package/accordion-group/AccordionGroupContext.js +8 -0
  19. package/accordion-group/types.d.ts +7 -7
  20. package/action-icon/ActionIcon.accessibility.test.js +63 -0
  21. package/action-icon/ActionIcon.d.ts +4 -0
  22. package/action-icon/ActionIcon.js +48 -0
  23. package/action-icon/ActionIcon.stories.tsx +41 -0
  24. package/action-icon/ActionIcon.test.js +64 -0
  25. package/action-icon/types.d.ts +26 -0
  26. package/alert/Alert.accessibility.test.js +95 -0
  27. package/alert/Alert.js +34 -120
  28. package/alert/Alert.test.js +28 -45
  29. package/alert/types.d.ts +5 -5
  30. package/badge/Badge.accessibility.test.js +129 -0
  31. package/badge/Badge.d.ts +1 -1
  32. package/badge/Badge.js +142 -42
  33. package/badge/Badge.stories.tsx +210 -0
  34. package/badge/Badge.test.js +30 -0
  35. package/badge/types.d.ts +52 -3
  36. package/bleed/Bleed.js +13 -21
  37. package/bleed/types.d.ts +2 -2
  38. package/box/Box.accessibility.test.js +33 -0
  39. package/box/Box.js +11 -33
  40. package/box/Box.test.js +1 -6
  41. package/box/types.d.ts +3 -3
  42. package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
  43. package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
  44. package/breadcrumbs/Breadcrumbs.d.ts +4 -0
  45. package/breadcrumbs/Breadcrumbs.js +79 -0
  46. package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
  47. package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  48. package/breadcrumbs/Breadcrumbs.test.js +169 -0
  49. package/breadcrumbs/Item.d.ts +4 -0
  50. package/breadcrumbs/Item.js +52 -0
  51. package/breadcrumbs/dropdownTheme.d.ts +53 -0
  52. package/breadcrumbs/dropdownTheme.js +62 -0
  53. package/breadcrumbs/types.d.ts +16 -0
  54. package/bulleted-list/BulletedList.accessibility.test.js +119 -0
  55. package/bulleted-list/BulletedList.js +22 -55
  56. package/bulleted-list/BulletedList.stories.tsx +2 -93
  57. package/bulleted-list/types.d.ts +5 -5
  58. package/button/Button.accessibility.test.js +127 -0
  59. package/button/Button.d.ts +1 -1
  60. package/button/Button.js +68 -100
  61. package/button/Button.stories.tsx +35 -135
  62. package/button/Button.test.js +19 -16
  63. package/button/types.d.ts +9 -5
  64. package/card/Card.accessibility.test.js +36 -0
  65. package/card/Card.js +23 -45
  66. package/card/Card.test.js +10 -21
  67. package/card/types.d.ts +5 -5
  68. package/checkbox/Checkbox.accessibility.test.js +87 -0
  69. package/checkbox/Checkbox.js +88 -126
  70. package/checkbox/Checkbox.stories.tsx +16 -54
  71. package/checkbox/Checkbox.test.js +107 -63
  72. package/checkbox/types.d.ts +8 -4
  73. package/chip/Chip.accessibility.test.js +67 -0
  74. package/chip/Chip.js +22 -36
  75. package/chip/Chip.stories.tsx +10 -25
  76. package/chip/Chip.test.js +17 -30
  77. package/chip/types.d.ts +4 -4
  78. package/common/coreTokens.d.ts +105 -14
  79. package/common/coreTokens.js +41 -24
  80. package/common/utils.js +2 -8
  81. package/common/variables.d.ts +54 -144
  82. package/common/variables.js +128 -225
  83. package/container/Container.d.ts +4 -0
  84. package/container/Container.js +194 -0
  85. package/container/Container.stories.tsx +214 -0
  86. package/container/types.d.ts +74 -0
  87. package/container/types.js +5 -0
  88. package/contextual-menu/ContextualMenu.accessibility.test.js +97 -0
  89. package/contextual-menu/ContextualMenu.d.ts +5 -0
  90. package/contextual-menu/ContextualMenu.js +88 -0
  91. package/contextual-menu/ContextualMenu.stories.tsx +232 -0
  92. package/contextual-menu/ContextualMenu.test.js +205 -0
  93. package/contextual-menu/GroupItem.d.ts +4 -0
  94. package/contextual-menu/GroupItem.js +67 -0
  95. package/contextual-menu/ItemAction.d.ts +4 -0
  96. package/contextual-menu/ItemAction.js +51 -0
  97. package/contextual-menu/MenuItem.d.ts +4 -0
  98. package/contextual-menu/MenuItem.js +29 -0
  99. package/contextual-menu/SingleItem.d.ts +4 -0
  100. package/contextual-menu/SingleItem.js +38 -0
  101. package/contextual-menu/types.d.ts +58 -0
  102. package/contextual-menu/types.js +5 -0
  103. package/date-input/Calendar.js +15 -59
  104. package/date-input/DateInput.accessibility.test.js +228 -0
  105. package/date-input/DateInput.js +61 -108
  106. package/date-input/DateInput.stories.tsx +19 -31
  107. package/date-input/DateInput.test.js +674 -701
  108. package/date-input/DatePicker.js +23 -48
  109. package/date-input/YearPicker.js +8 -34
  110. package/date-input/types.d.ts +28 -22
  111. package/dialog/Dialog.accessibility.test.js +69 -0
  112. package/dialog/Dialog.js +21 -59
  113. package/dialog/Dialog.stories.tsx +175 -0
  114. package/dialog/Dialog.test.js +206 -204
  115. package/dialog/types.d.ts +18 -13
  116. package/divider/Divider.accessibility.test.js +33 -0
  117. package/divider/Divider.d.ts +4 -0
  118. package/divider/Divider.js +36 -0
  119. package/divider/Divider.stories.tsx +223 -0
  120. package/divider/Divider.test.js +38 -0
  121. package/divider/types.d.ts +21 -0
  122. package/divider/types.js +5 -0
  123. package/dropdown/Dropdown.accessibility.test.js +180 -0
  124. package/dropdown/Dropdown.js +67 -135
  125. package/dropdown/Dropdown.stories.tsx +15 -26
  126. package/dropdown/Dropdown.test.js +402 -389
  127. package/dropdown/DropdownMenu.js +12 -23
  128. package/dropdown/DropdownMenuItem.js +13 -21
  129. package/dropdown/types.d.ts +20 -24
  130. package/file-input/FileInput.accessibility.test.js +160 -0
  131. package/file-input/FileInput.js +179 -286
  132. package/file-input/FileInput.stories.tsx +1 -1
  133. package/file-input/FileInput.test.js +293 -354
  134. package/file-input/FileItem.js +30 -67
  135. package/file-input/types.d.ts +9 -9
  136. package/flex/Flex.js +25 -39
  137. package/flex/types.d.ts +6 -6
  138. package/footer/Footer.accessibility.test.js +125 -0
  139. package/footer/Footer.d.ts +1 -1
  140. package/footer/Footer.js +73 -103
  141. package/footer/Footer.stories.tsx +76 -8
  142. package/footer/Footer.test.js +21 -33
  143. package/footer/Icons.d.ts +3 -2
  144. package/footer/Icons.js +53 -22
  145. package/footer/types.d.ts +26 -22
  146. package/grid/Grid.d.ts +1 -1
  147. package/grid/Grid.js +2 -17
  148. package/grid/Grid.stories.tsx +38 -38
  149. package/grid/types.d.ts +10 -10
  150. package/header/Header.accessibility.test.js +93 -0
  151. package/header/Header.d.ts +1 -1
  152. package/header/Header.js +38 -104
  153. package/header/Header.stories.tsx +16 -0
  154. package/header/Header.test.js +12 -25
  155. package/header/Icons.d.ts +2 -2
  156. package/header/Icons.js +3 -13
  157. package/header/types.d.ts +7 -8
  158. package/heading/Heading.accessibility.test.js +33 -0
  159. package/heading/Heading.js +9 -31
  160. package/heading/Heading.test.js +70 -87
  161. package/heading/types.d.ts +7 -7
  162. package/icon/Icon.accessibility.test.js +30 -0
  163. package/icon/Icon.d.ts +4 -0
  164. package/icon/Icon.js +33 -0
  165. package/icon/Icon.stories.tsx +28 -0
  166. package/icon/types.d.ts +4 -0
  167. package/icon/types.js +5 -0
  168. package/image/Image.accessibility.test.js +56 -0
  169. package/image/Image.d.ts +4 -0
  170. package/image/Image.js +70 -0
  171. package/image/Image.stories.tsx +129 -0
  172. package/image/types.d.ts +72 -0
  173. package/image/types.js +5 -0
  174. package/inset/Inset.js +13 -21
  175. package/inset/types.d.ts +2 -2
  176. package/layout/ApplicationLayout.d.ts +2 -2
  177. package/layout/ApplicationLayout.js +35 -69
  178. package/layout/ApplicationLayout.stories.tsx +1 -1
  179. package/layout/Icons.d.ts +7 -5
  180. package/layout/Icons.js +41 -59
  181. package/layout/types.d.ts +3 -3
  182. package/link/Link.accessibility.test.js +108 -0
  183. package/link/Link.js +28 -47
  184. package/link/Link.stories.tsx +4 -4
  185. package/link/Link.test.js +23 -41
  186. package/link/types.d.ts +14 -14
  187. package/main.d.ts +9 -4
  188. package/main.js +46 -59
  189. package/nav-tabs/NavTabs.accessibility.test.js +44 -0
  190. package/nav-tabs/NavTabs.d.ts +1 -2
  191. package/nav-tabs/NavTabs.js +19 -48
  192. package/nav-tabs/NavTabs.stories.tsx +30 -25
  193. package/nav-tabs/NavTabs.test.js +45 -50
  194. package/nav-tabs/NavTabsContext.d.ts +3 -0
  195. package/nav-tabs/NavTabsContext.js +8 -0
  196. package/nav-tabs/Tab.js +38 -67
  197. package/nav-tabs/types.d.ts +10 -10
  198. package/number-input/NumberInput.accessibility.test.js +228 -0
  199. package/number-input/NumberInput.js +46 -36
  200. package/number-input/NumberInput.stories.tsx +42 -26
  201. package/number-input/NumberInput.test.js +859 -412
  202. package/number-input/NumberInputContext.d.ts +3 -4
  203. package/number-input/NumberInputContext.js +3 -14
  204. package/number-input/types.d.ts +17 -5
  205. package/package.json +42 -40
  206. package/paginator/Paginator.accessibility.test.js +79 -0
  207. package/paginator/Paginator.js +27 -52
  208. package/paginator/Paginator.test.js +224 -207
  209. package/paginator/types.d.ts +3 -3
  210. package/paragraph/Paragraph.accessibility.test.js +28 -0
  211. package/paragraph/Paragraph.js +3 -19
  212. package/paragraph/Paragraph.stories.tsx +0 -17
  213. package/password-input/PasswordInput.accessibility.test.js +153 -0
  214. package/password-input/PasswordInput.js +58 -127
  215. package/password-input/PasswordInput.stories.tsx +1 -33
  216. package/password-input/PasswordInput.test.js +157 -140
  217. package/password-input/types.d.ts +8 -7
  218. package/progress-bar/ProgressBar.accessibility.test.js +35 -0
  219. package/progress-bar/ProgressBar.js +26 -56
  220. package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
  221. package/progress-bar/ProgressBar.test.js +35 -52
  222. package/progress-bar/types.d.ts +3 -3
  223. package/quick-nav/QuickNav.accessibility.test.js +57 -0
  224. package/quick-nav/QuickNav.js +4 -27
  225. package/quick-nav/QuickNav.stories.tsx +1 -1
  226. package/quick-nav/types.d.ts +10 -10
  227. package/radio-group/Radio.d.ts +1 -1
  228. package/radio-group/Radio.js +22 -57
  229. package/radio-group/RadioGroup.accessibility.test.js +97 -0
  230. package/radio-group/RadioGroup.js +40 -88
  231. package/radio-group/RadioGroup.stories.tsx +10 -10
  232. package/radio-group/RadioGroup.test.js +504 -472
  233. package/radio-group/types.d.ts +8 -8
  234. package/resultset-table/Icons.d.ts +7 -0
  235. package/{resultsetTable → resultset-table}/Icons.js +1 -5
  236. package/resultset-table/ResultsetTable.accessibility.test.js +285 -0
  237. package/resultset-table/ResultsetTable.d.ts +7 -0
  238. package/{resultsetTable → resultset-table}/ResultsetTable.js +45 -69
  239. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +118 -5
  240. package/{resultsetTable → resultset-table}/ResultsetTable.test.js +148 -92
  241. package/{resultsetTable → resultset-table}/types.d.ts +44 -11
  242. package/resultset-table/types.js +5 -0
  243. package/select/Listbox.js +36 -54
  244. package/select/Option.js +28 -36
  245. package/select/Select.accessibility.test.js +228 -0
  246. package/select/Select.js +111 -177
  247. package/select/Select.stories.tsx +59 -111
  248. package/select/Select.test.js +1895 -1858
  249. package/select/types.d.ts +15 -16
  250. package/sidenav/Sidenav.accessibility.test.js +59 -0
  251. package/sidenav/Sidenav.js +44 -81
  252. package/sidenav/Sidenav.stories.tsx +4 -9
  253. package/sidenav/Sidenav.test.js +3 -10
  254. package/{layout → sidenav}/SidenavContext.d.ts +1 -1
  255. package/{layout → sidenav}/SidenavContext.js +3 -9
  256. package/sidenav/types.d.ts +20 -20
  257. package/slider/Slider.accessibility.test.js +104 -0
  258. package/slider/Slider.js +66 -125
  259. package/slider/Slider.stories.tsx +0 -60
  260. package/slider/Slider.test.js +107 -103
  261. package/slider/types.d.ts +4 -4
  262. package/spinner/Spinner.accessibility.test.js +96 -0
  263. package/spinner/Spinner.js +21 -55
  264. package/spinner/Spinner.test.js +25 -34
  265. package/spinner/types.d.ts +3 -3
  266. package/status-light/StatusLight.accessibility.test.js +157 -0
  267. package/status-light/StatusLight.d.ts +4 -0
  268. package/status-light/StatusLight.js +51 -0
  269. package/status-light/StatusLight.stories.tsx +74 -0
  270. package/status-light/StatusLight.test.js +25 -0
  271. package/status-light/types.d.ts +17 -0
  272. package/status-light/types.js +5 -0
  273. package/switch/Switch.accessibility.test.js +98 -0
  274. package/switch/Switch.js +49 -100
  275. package/switch/Switch.stories.tsx +12 -34
  276. package/switch/Switch.test.js +51 -96
  277. package/switch/types.d.ts +4 -4
  278. package/table/DropdownTheme.js +62 -0
  279. package/table/Table.accessibility.test.js +93 -0
  280. package/table/Table.d.ts +6 -2
  281. package/table/Table.js +76 -33
  282. package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
  283. package/table/Table.test.js +93 -6
  284. package/table/types.d.ts +34 -6
  285. package/tabs/Tab.js +22 -37
  286. package/tabs/Tabs.accessibility.test.js +56 -0
  287. package/tabs/Tabs.js +59 -147
  288. package/tabs/Tabs.stories.tsx +8 -4
  289. package/tabs/Tabs.test.js +57 -131
  290. package/tabs/types.d.ts +21 -21
  291. package/tag/Tag.accessibility.test.js +69 -0
  292. package/tag/Tag.js +27 -57
  293. package/tag/Tag.stories.tsx +4 -7
  294. package/tag/Tag.test.js +17 -36
  295. package/tag/types.d.ts +9 -9
  296. package/text-input/Suggestion.js +9 -26
  297. package/text-input/Suggestions.d.ts +1 -1
  298. package/text-input/Suggestions.js +30 -70
  299. package/text-input/TextInput.accessibility.test.js +321 -0
  300. package/text-input/TextInput.js +222 -326
  301. package/text-input/TextInput.stories.tsx +65 -160
  302. package/text-input/TextInput.test.js +1227 -1194
  303. package/text-input/types.d.ts +25 -17
  304. package/textarea/Textarea.accessibility.test.js +155 -0
  305. package/textarea/Textarea.js +67 -111
  306. package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -100
  307. package/textarea/Textarea.test.js +150 -179
  308. package/textarea/types.d.ts +9 -5
  309. package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
  310. package/toggle-group/ToggleGroup.js +90 -109
  311. package/toggle-group/ToggleGroup.stories.tsx +10 -7
  312. package/toggle-group/ToggleGroup.test.js +68 -87
  313. package/toggle-group/types.d.ts +28 -19
  314. package/typography/Typography.accessibility.test.js +339 -0
  315. package/typography/Typography.js +4 -13
  316. package/typography/types.d.ts +1 -1
  317. package/useTheme.d.ts +51 -141
  318. package/useTheme.js +1 -8
  319. package/useTranslatedLabels.js +1 -7
  320. package/utils/BaseTypography.d.ts +2 -2
  321. package/utils/BaseTypography.js +16 -30
  322. package/utils/FocusLock.js +25 -39
  323. package/wizard/Wizard.accessibility.test.js +55 -0
  324. package/wizard/Wizard.js +27 -73
  325. package/wizard/Wizard.stories.tsx +19 -0
  326. package/wizard/Wizard.test.js +53 -80
  327. package/wizard/types.d.ts +8 -8
  328. package/common/OpenSans.css +0 -69
  329. package/common/fonts/OpenSans-Bold.ttf +0 -0
  330. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  331. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  332. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  333. package/common/fonts/OpenSans-Italic.ttf +0 -0
  334. package/common/fonts/OpenSans-Light.ttf +0 -0
  335. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  336. package/common/fonts/OpenSans-Regular.ttf +0 -0
  337. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  338. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  339. package/date-input/Icons.d.ts +0 -6
  340. package/date-input/Icons.js +0 -75
  341. package/number-input/numberInputContextTypes.d.ts +0 -19
  342. package/paginator/Icons.d.ts +0 -5
  343. package/paginator/Icons.js +0 -54
  344. package/resultsetTable/Icons.d.ts +0 -7
  345. package/resultsetTable/ResultsetTable.d.ts +0 -4
  346. package/select/Icons.d.ts +0 -10
  347. package/select/Icons.js +0 -93
  348. package/sidenav/Icons.d.ts +0 -7
  349. package/sidenav/Icons.js +0 -51
  350. package/text-input/Icons.d.ts +0 -8
  351. package/text-input/Icons.js +0 -60
  352. /package/{resultsetTable → action-icon}/types.js +0 -0
  353. /package/{number-input/numberInputContextTypes.js → breadcrumbs/types.js} +0 -0
  354. /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
@@ -0,0 +1,72 @@
1
+ /// <reference types="react" />
2
+ type Props = {
3
+ /**
4
+ * Alternative text description displayed when the specified image is not loaded.
5
+ *
6
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt
7
+ * See W3C alt decision tree: https://www.w3.org/WAI/tutorials/images/decision-tree/
8
+ */
9
+ alt: string;
10
+ /**
11
+ * Image legend with a descriptive purpose. It is placed below the image and is complementary to the alt attribute,
12
+ * which is required regardless of the presence of the caption or not.
13
+ */
14
+ caption?: string;
15
+ /**
16
+ * If true, the image will be loaded only when it is visible on the screen (lazy loading).
17
+ * Otherwise and by default, the image will be loaded as soon as the component is mounted (eager loading).
18
+ */
19
+ lazyLoading?: boolean;
20
+ /**
21
+ * URL of the image. This prop is required and must be valid.
22
+ */
23
+ src: string;
24
+ /**
25
+ * List of one or more strings separated by commas indicating a set of possible images for the user agent to use.
26
+ *
27
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset
28
+ */
29
+ srcSet?: string;
30
+ /**
31
+ * One or more strings separated by commas, indicating a set of source sizes.
32
+ * If the srcSet attribute is absent or contains no values with a width descriptor,
33
+ * then this attribute has no effect.
34
+ *
35
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/sizes
36
+ */
37
+ sizes?: string;
38
+ /**
39
+ * Sets the rendered width of the image.
40
+ */
41
+ width?: string;
42
+ /**
43
+ * Sets the rendered height of the image.
44
+ */
45
+ height?: string;
46
+ /**
47
+ * Sets the object-fit CSS property.
48
+ *
49
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
50
+ */
51
+ objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
52
+ /**
53
+ * Sets the object-position CSS property.
54
+ *
55
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-position
56
+ */
57
+ objectPosition?: string;
58
+ /**
59
+ * This function will be called when the image is loaded.
60
+ */
61
+ onLoad?: React.ReactEventHandler<HTMLImageElement>;
62
+ /**
63
+ * This function will be called when the image fails to load.
64
+ */
65
+ onError?: React.ReactEventHandler<HTMLImageElement>;
66
+ };
67
+ export type CaptionWrapperProps = {
68
+ condition: boolean;
69
+ wrapper: (children: React.ReactNode) => JSX.Element;
70
+ children: React.ReactNode;
71
+ };
72
+ export default Props;
package/image/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/inset/Inset.js CHANGED
@@ -1,29 +1,23 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = Inset;
9
-
10
8
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
-
12
9
  var _react = _interopRequireDefault(require("react"));
13
-
14
10
  var _styledComponents = _interopRequireDefault(require("styled-components"));
15
-
16
11
  var _templateObject;
17
-
18
12
  function Inset(_ref) {
19
13
  var space = _ref.space,
20
- horizontal = _ref.horizontal,
21
- vertical = _ref.vertical,
22
- top = _ref.top,
23
- right = _ref.right,
24
- bottom = _ref.bottom,
25
- left = _ref.left,
26
- children = _ref.children;
14
+ horizontal = _ref.horizontal,
15
+ vertical = _ref.vertical,
16
+ top = _ref.top,
17
+ right = _ref.right,
18
+ bottom = _ref.bottom,
19
+ left = _ref.left,
20
+ children = _ref.children;
27
21
  return /*#__PURE__*/_react["default"].createElement(StyledInset, {
28
22
  space: space,
29
23
  horizontal: horizontal,
@@ -34,18 +28,16 @@ function Inset(_ref) {
34
28
  left: left
35
29
  }, children);
36
30
  }
37
-
38
31
  function getSpacingValue(spacingName) {
39
32
  return spacingName ? spacingName : "0rem";
40
33
  }
41
-
42
34
  var StyledInset = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {
43
35
  var space = _ref2.space,
44
- horizontal = _ref2.horizontal,
45
- vertical = _ref2.vertical,
46
- top = _ref2.top,
47
- right = _ref2.right,
48
- bottom = _ref2.bottom,
49
- left = _ref2.left;
36
+ horizontal = _ref2.horizontal,
37
+ vertical = _ref2.vertical,
38
+ top = _ref2.top,
39
+ right = _ref2.right,
40
+ bottom = _ref2.bottom,
41
+ left = _ref2.left;
50
42
  return "\n padding: ".concat(getSpacingValue(top || vertical || space), " ").concat(getSpacingValue(right || horizontal || space), "\n ").concat(getSpacingValue(bottom || vertical || space), " ").concat(getSpacingValue(left || horizontal || space), ";\n");
51
43
  });
package/inset/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- declare type Spacing = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
3
- declare type Props = {
2
+ type Spacing = "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
3
+ type Props = {
4
4
  /**
5
5
  * Applies the spacing scale to all sides.
6
6
  */
@@ -4,10 +4,10 @@ declare const DxcApplicationLayout: {
4
4
  ({ visibilityToggleLabel, header, sidenav, footer, children, }: AppLayoutPropsType): JSX.Element;
5
5
  Header: {
6
6
  ({ underlined, content, responsiveContent, onClick, margin, tabIndex, }: import("../header/types").default): JSX.Element;
7
- Dropdown: (props: import("../dropdown/types").default) => JSX.Element;
7
+ Dropdown: (props: import("../dropdown/types").default) => React.JSX.Element;
8
8
  };
9
9
  Main: ({ children }: AppLayoutMainPropsType) => JSX.Element;
10
- Footer: ({ socialLinks, bottomLinks, copyright, children, margin, tabIndex, }: import("../footer/types").default) => JSX.Element;
10
+ Footer: ({ socialLinks, bottomLinks, copyright, children, margin, tabIndex, mode, }: import("../footer/types").default) => JSX.Element;
11
11
  SideNav: {
12
12
  ({ title, children }: import("../sidenav/types").default): JSX.Element;
13
13
  Section: ({ children }: import("../sidenav/types").SidenavSectionPropsType) => JSX.Element;
@@ -1,55 +1,36 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
-
16
11
  var _react = _interopRequireWildcard(require("react"));
17
-
18
12
  var _Header = _interopRequireDefault(require("../header/Header"));
19
-
20
13
  var _Footer = _interopRequireDefault(require("../footer/Footer"));
21
-
22
14
  var _Sidenav = _interopRequireDefault(require("../sidenav/Sidenav"));
23
-
24
15
  var _styledComponents = _interopRequireDefault(require("styled-components"));
25
-
26
16
  var _variables = require("../common/variables");
27
-
28
- var _Icons = require("./Icons");
29
-
30
- var _SidenavContext = require("./SidenavContext");
31
-
17
+ var _Icons = _interopRequireDefault(require("./Icons"));
18
+ var _SidenavContext = require("../sidenav/SidenavContext");
32
19
  var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
33
-
20
+ var _Icon = _interopRequireDefault(require("../icon/Icon"));
34
21
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
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 || _typeof(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
-
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
40
24
  var year = new Date().getFullYear();
41
-
42
25
  var Main = function Main(_ref) {
43
26
  var children = _ref.children;
44
27
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children);
45
28
  };
46
-
47
29
  var defaultHeader = function defaultHeader() {
48
30
  return /*#__PURE__*/_react["default"].createElement(_Header["default"], {
49
31
  underlined: true
50
32
  });
51
33
  };
52
-
53
34
  var defaultFooter = function defaultFooter() {
54
35
  return /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
55
36
  copyright: "\xA9 DXC Technology ".concat(year, "\u200B\u200B\u200B\u200B. All rights reserved."),
@@ -57,75 +38,68 @@ var defaultFooter = function defaultFooter() {
57
38
  href: "https://www.linkedin.com/company/dxctechnology",
58
39
  text: "Linkedin"
59
40
  }, {
60
- href: "https://twitter.com/dxctechnology",
61
- text: "Twitter"
41
+ href: "https://x.com/dxctechnology",
42
+ text: "X"
62
43
  }, {
63
44
  href: "https://www.facebook.com/DXCTechnology/",
64
45
  text: "Facebook"
65
46
  }],
66
47
  socialLinks: [{
67
48
  href: "https://www.linkedin.com/company/dxctechnology",
68
- logo: _Icons.linkedinLogo
49
+ logo: _Icons["default"].linkedinLogo,
50
+ title: "Linkedin"
69
51
  }, {
70
- href: "https://twitter.com/dxctechnology",
71
- logo: _Icons.twitterLogo
52
+ href: "https://x.com/dxctechnology",
53
+ logo: _Icons["default"].xLogo,
54
+ title: "X"
72
55
  }, {
73
56
  href: "https://www.facebook.com/DXCTechnology/",
74
- logo: _Icons.facebookLogo
57
+ logo: _Icons["default"].facebookLogo,
58
+ title: "Facebook"
75
59
  }]
76
60
  });
77
61
  };
78
-
79
62
  var childTypeExists = function childTypeExists(children, childType) {
80
63
  return children.find(function (child) {
81
64
  return (child === null || child === void 0 ? void 0 : child.type) === childType;
82
65
  });
83
66
  };
84
-
85
67
  var DxcApplicationLayout = function DxcApplicationLayout(_ref2) {
86
68
  var _ref2$visibilityToggl = _ref2.visibilityToggleLabel,
87
- visibilityToggleLabel = _ref2$visibilityToggl === void 0 ? "" : _ref2$visibilityToggl,
88
- header = _ref2.header,
89
- sidenav = _ref2.sidenav,
90
- footer = _ref2.footer,
91
- children = _ref2.children;
92
-
69
+ visibilityToggleLabel = _ref2$visibilityToggl === void 0 ? "" : _ref2$visibilityToggl,
70
+ header = _ref2.header,
71
+ sidenav = _ref2.sidenav,
72
+ footer = _ref2.footer,
73
+ children = _ref2.children;
93
74
  var _useState = (0, _react.useState)(false),
94
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
95
- isSidenavVisibleResponsive = _useState2[0],
96
- setIsSidenavVisibleResponsive = _useState2[1];
97
-
75
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
76
+ isSidenavVisibleResponsive = _useState2[0],
77
+ setIsSidenavVisibleResponsive = _useState2[1];
98
78
  var _useState3 = (0, _react.useState)(false),
99
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
100
- isResponsive = _useState4[0],
101
- setIsResponsive = _useState4[1];
102
-
79
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
80
+ isResponsive = _useState4[0],
81
+ setIsResponsive = _useState4[1];
103
82
  var ref = (0, _react.useRef)(null);
104
83
  var translatedLabels = (0, _useTranslatedLabels["default"])();
105
-
106
84
  var childrenArray = _react["default"].Children.toArray(children);
107
-
108
85
  var headerContent = header || defaultHeader();
109
86
  var footerContent = footer || defaultFooter();
110
87
  var main = childTypeExists(childrenArray, Main);
111
-
112
- var handleResize = function handleResize() {
88
+ var handleResize = (0, _react.useCallback)(function () {
113
89
  setIsResponsive(window.matchMedia("(max-width: ".concat(_variables.responsiveSizes.medium, "rem)")).matches);
114
- };
115
-
90
+ }, []);
116
91
  var handleSidenavVisibility = function handleSidenavVisibility() {
117
92
  setIsSidenavVisibleResponsive(function (isSidenavVisibleResponsive) {
118
93
  return !isSidenavVisibleResponsive;
119
94
  });
120
95
  };
121
-
122
- (0, _react.useLayoutEffect)(function () {
96
+ (0, _react.useEffect)(function () {
123
97
  handleResize();
124
98
  window.addEventListener("resize", handleResize);
125
99
  return function () {
126
100
  window.removeEventListener("resize", handleResize);
127
101
  };
128
- }, []);
102
+ }, [handleResize]);
129
103
  (0, _react.useEffect)(function () {
130
104
  !isResponsive && setIsSidenavVisibleResponsive(false);
131
105
  }, [isResponsive]);
@@ -137,35 +111,27 @@ var DxcApplicationLayout = function DxcApplicationLayout(_ref2) {
137
111
  onClick: handleSidenavVisibility,
138
112
  "aria-label": visibilityToggleLabel ? undefined : translatedLabels.applicationLayout.visibilityToggleTitle,
139
113
  title: translatedLabels.applicationLayout.visibilityToggleTitle
140
- }, _Icons.hamburgerIcon, visibilityToggleLabel)), /*#__PURE__*/_react["default"].createElement(BodyContainer, null, /*#__PURE__*/_react["default"].createElement(_SidenavContext.SidenavContextProvider, {
114
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], {
115
+ icon: "Menu"
116
+ }), visibilityToggleLabel)), /*#__PURE__*/_react["default"].createElement(BodyContainer, null, /*#__PURE__*/_react["default"].createElement(_SidenavContext.SidenavContextProvider, {
141
117
  value: setIsSidenavVisibleResponsive
142
118
  }, sidenav && (isResponsive ? isSidenavVisibleResponsive : true) && /*#__PURE__*/_react["default"].createElement(SidenavContainer, null, sidenav)), /*#__PURE__*/_react["default"].createElement(MainContainer, null, /*#__PURE__*/_react["default"].createElement(MainContentContainer, null, main), footerContent)));
143
119
  };
144
-
145
120
  var ApplicationLayoutContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n top: 64px;\n bottom: 0;\n left: 0;\n right: 0;\n display: flex;\n flex-direction: column;\n\n @media (max-width: ", "rem) {\n ", ";\n ", "\n }\n"])), _variables.responsiveSizes.medium, function (props) {
146
121
  return props.hasSidenav && "top: 116px";
147
122
  }, function (props) {
148
123
  return props.isSidenavVisible && "overflow: hidden;";
149
124
  });
150
-
151
125
  var HeaderContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n z-index: 3;\n"])));
152
-
153
126
  var VisibilityToggle = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 64px;\n left: 0;\n right: 0;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n padding: 4px 16px;\n width: 100%;\n background-color: #f2f2f2;\n user-select: none;\n z-index: 2;\n"])));
154
-
155
- var HamburgerTrigger = _styledComponents["default"].button(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n border: 0px solid transparent;\n border-radius: 2px;\n padding: 12px 4px;\n background-color: transparent;\n box-shadow: 0 0 0 2px transparent;\n font-family: Open Sans, sans-serif;\n font-weight: 600;\n font-size: 14px;\n color: #000;\n cursor: pointer;\n :active {\n background-color: #cccccc;\n }\n :focus,\n :focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px #0095ff;\n }\n & > svg {\n height: 20px;\n width: 20px;\n }\n"])));
156
-
127
+ var HamburgerTrigger = _styledComponents["default"].button(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n border: 0px solid transparent;\n border-radius: 2px;\n padding: 12px 4px;\n background-color: transparent;\n box-shadow: 0 0 0 2px transparent;\n font-family: Open Sans, sans-serif;\n font-weight: 600;\n font-size: 14px;\n color: #000;\n cursor: pointer;\n\n :active {\n background-color: #cccccc;\n }\n :focus,\n :focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px #0095ff;\n }\n span::before {\n font-size: 20px;\n }\n"])));
157
128
  var BodyContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n flex: 1;\n"])));
158
-
159
129
  var SidenavContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n position: sticky;\n top: 64px;\n display: flex;\n height: calc(100vh - 64px);\n z-index: 1;\n\n @media (max-width: ", "rem) {\n position: absolute;\n top: 0px;\n height: 100%;\n }\n"])), _variables.responsiveSizes.medium);
160
-
161
130
  var MainContainer = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n width: 100%;\n"])));
162
-
163
- var MainContentContainer = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1;\n"])));
164
-
131
+ var MainContentContainer = _styledComponents["default"].main(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1;\n background-color: #fff;\n"])));
165
132
  DxcApplicationLayout.Header = _Header["default"];
166
133
  DxcApplicationLayout.Main = Main;
167
134
  DxcApplicationLayout.Footer = _Footer["default"];
168
135
  DxcApplicationLayout.SideNav = _Sidenav["default"];
169
136
  DxcApplicationLayout.useResponsiveSidenavVisibility = _SidenavContext.useResponsiveSidenavVisibility;
170
- var _default = DxcApplicationLayout;
171
- exports["default"] = _default;
137
+ var _default = exports["default"] = DxcApplicationLayout;
@@ -4,7 +4,7 @@ import Title from "../../.storybook/components/Title";
4
4
  import { INITIAL_VIEWPORTS } from "@storybook/addon-viewport";
5
5
 
6
6
  export default {
7
- title: "Application Layout ",
7
+ title: "Application Layout",
8
8
  component: DxcApplicationLayout,
9
9
  parameters: {
10
10
  viewport: {
package/layout/Icons.d.ts CHANGED
@@ -1,5 +1,7 @@
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;
1
+ import React from "react";
2
+ declare const layoutIcons: {
3
+ facebookLogo: React.JSX.Element;
4
+ xLogo: React.JSX.Element;
5
+ linkedinLogo: React.JSX.Element;
6
+ };
7
+ export default layoutIcons;
package/layout/Icons.js CHANGED
@@ -1,66 +1,48 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.twitterLogo = exports.linkedinLogo = exports.hamburgerIcon = exports.facebookLogo = void 0;
9
-
7
+ exports["default"] = void 0;
10
8
  var _react = _interopRequireDefault(require("react"));
11
-
12
- var facebookLogo = /*#__PURE__*/_react["default"].createElement("svg", {
13
- version: "1.1",
14
- id: "Capa_1",
15
- x: "0px",
16
- y: "0px",
17
- width: "438.536px",
18
- height: "438.536px",
19
- viewBox: "0 0 438.536 438.536",
20
- fill: "#FFFFFF"
21
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
22
- 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 M373.155,225.548h-49.963V406.84h-74.802V225.548H210.99V163.02h37.401v-37.402 c0-26.838,6.283-47.107,18.843-60.813c12.559-13.706,33.304-20.555,62.242-20.555h49.963v62.526h-31.401 c-10.663,0-17.467,1.853-20.417,5.568c-2.949,3.711-4.428,10.23-4.428,19.558v31.119h56.534L373.155,225.548z"
23
- })));
24
-
25
- exports.facebookLogo = facebookLogo;
26
-
27
- var twitterLogo = /*#__PURE__*/_react["default"].createElement("svg", {
28
- version: "1.1",
29
- id: "Capa_1",
30
- x: "0px",
31
- y: "0px",
32
- width: "438.536px",
33
- height: "438.536px",
34
- viewBox: "0 0 438.536 438.536",
35
- fill: "#FFFFFF"
36
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
37
- 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 M335.471,168.735c0.191,1.713,0.288,4.278,0.288,7.71 c0,15.989-2.334,32.025-6.995,48.104c-4.661,16.087-11.8,31.504-21.416,46.254c-9.606,14.749-21.074,27.791-34.396,39.115 c-13.325,11.32-29.311,20.365-47.968,27.117c-18.648,6.762-38.637,10.143-59.953,10.143c-33.116,0-63.76-8.952-91.931-26.836 c4.568,0.568,9.329,0.855,14.275,0.855c27.6,0,52.439-8.565,74.519-25.7c-12.941-0.185-24.506-4.179-34.688-11.991 c-10.185-7.803-17.273-17.699-21.271-29.691c4.947,0.76,8.658,1.137,11.132,1.137c4.187,0,9.042-0.76,14.56-2.279 c-13.894-2.669-25.598-9.562-35.115-20.697c-9.519-11.136-14.277-23.84-14.277-38.114v-0.571 c10.085,4.755,19.602,7.229,28.549,7.422c-17.321-11.613-25.981-28.265-25.981-49.963c0-10.66,2.758-20.747,8.278-30.264 c15.035,18.464,33.311,33.213,54.816,44.252c21.507,11.038,44.54,17.227,69.092,18.558c-0.95-3.616-1.427-8.186-1.427-13.704 c0-16.562,5.853-30.692,17.56-42.399c11.703-11.706,25.837-17.561,42.394-17.561c17.515,0,32.079,6.283,43.688,18.846 c13.134-2.474,25.892-7.33,38.26-14.56c-4.757,14.652-13.613,25.788-26.55,33.402c12.368-1.716,23.88-4.95,34.537-9.708 C357.458,149.793,347.462,160.166,335.471,168.735z"
38
- })));
39
-
40
- exports.twitterLogo = twitterLogo;
41
-
42
- var linkedinLogo = /*#__PURE__*/_react["default"].createElement("svg", {
43
- version: "1.1",
44
- id: "Capa_1",
45
- x: "0px",
46
- y: "0px",
47
- width: "438.536px",
48
- height: "438.536px",
49
- viewBox: "0 0 438.536 438.536",
50
- fill: "#FFFFFF"
51
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
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
- })));
54
-
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;
9
+ var layoutIcons = {
10
+ facebookLogo: /*#__PURE__*/_react["default"].createElement("svg", {
11
+ version: "1.1",
12
+ x: "0px",
13
+ y: "0px",
14
+ width: "438.536px",
15
+ height: "438.536px",
16
+ viewBox: "0 0 438.536 438.536",
17
+ fill: "#FFFFFF"
18
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
19
+ 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 M373.155,225.548h-49.963V406.84h-74.802V225.548H210.99V163.02h37.401v-37.402 c0-26.838,6.283-47.107,18.843-60.813c12.559-13.706,33.304-20.555,62.242-20.555h49.963v62.526h-31.401 c-10.663,0-17.467,1.853-20.417,5.568c-2.949,3.711-4.428,10.23-4.428,19.558v31.119h56.534L373.155,225.548z"
20
+ }))),
21
+ xLogo: /*#__PURE__*/_react["default"].createElement("svg", {
22
+ width: "256",
23
+ height: "256",
24
+ viewBox: "0 0 256 256",
25
+ fill: "none",
26
+ xmlns: "http://www.w3.org/2000/svg"
27
+ }, /*#__PURE__*/_react["default"].createElement("rect", {
28
+ width: "256",
29
+ height: "256",
30
+ rx: "40",
31
+ fill: "white"
32
+ }), /*#__PURE__*/_react["default"].createElement("path", {
33
+ d: "M140.192 118.205L187.848 64H176.556L135.158 111.056L102.117 64H64L113.975 135.163L64 192H75.2914L118.982 142.296L153.883 192H192L140.192 118.205ZM124.722 135.787L119.65 128.697L79.3634 72.3294H96.7094L129.232 117.837L134.282 124.927L176.551 184.076H159.205L124.722 135.787Z",
34
+ fill: "#0F1419"
35
+ })),
36
+ linkedinLogo: /*#__PURE__*/_react["default"].createElement("svg", {
37
+ version: "1.1",
38
+ x: "0px",
39
+ y: "0px",
40
+ width: "438.536px",
41
+ height: "438.536px",
42
+ viewBox: "0 0 438.536 438.536",
43
+ fill: "#FFFFFF"
44
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
45
+ 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"
46
+ })))
47
+ };
48
+ var _default = exports["default"] = layoutIcons;
package/layout/types.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /// <reference types="react" />
2
- export declare type AppLayoutMainPropsType = {
2
+ export type AppLayoutMainPropsType = {
3
3
  /**
4
4
  * Everything between the tags will be displayed as the content of the main part of the application.
5
5
  */
6
6
  children: React.ReactNode;
7
7
  };
8
- export declare type AppLayoutSidenavPropsType = {
8
+ export type AppLayoutSidenavPropsType = {
9
9
  /**
10
10
  * The area inside the sidenav. This area can be used to render the content inside the sidenav.
11
11
  */
@@ -15,7 +15,7 @@ export declare type AppLayoutSidenavPropsType = {
15
15
  */
16
16
  title?: React.ReactNode;
17
17
  };
18
- declare type AppLayoutPropsType = {
18
+ type AppLayoutPropsType = {
19
19
  /**
20
20
  * Text to be placed next to the hamburger button that toggles the
21
21
  * visibility of the sidenav.
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _react2 = require("@testing-library/react");
8
+ var _axeHelper = require("../../test/accessibility/axe-helper.js");
9
+ var _Link = _interopRequireDefault(require("./Link.tsx"));
10
+ var _Flex = _interopRequireDefault(require("../flex/Flex.tsx"));
11
+ var icon = /*#__PURE__*/_react["default"].createElement("svg", {
12
+ viewBox: "0 0 24 24",
13
+ enableBackground: "new 0 0 24 24",
14
+ fill: "currentColor"
15
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("rect", {
16
+ fill: "none",
17
+ width: "24",
18
+ height: "24"
19
+ })), /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("path", {
20
+ d: "M19,9.3V4h-3v2.6L12,3L2,12h3v8h5v-6h4v6h5v-8h3L19,9.3z M10,10c0-1.1,0.9-2,2-2s2,0.9,2,2H10z"
21
+ })));
22
+ describe("Link component accessibility tests", function () {
23
+ it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
24
+ var _render, container, results;
25
+ return _regenerator["default"].wrap(function _callee$(_context) {
26
+ while (1) switch (_context.prev = _context.next) {
27
+ case 0:
28
+ _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
29
+ href: "https://www.google.com",
30
+ icon: icon,
31
+ iconPosition: "before",
32
+ margin: "medium"
33
+ }, "Link"), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
34
+ href: "https://www.google.com",
35
+ icon: icon,
36
+ iconPosition: "after",
37
+ margin: "medium"
38
+ }, "Link"))), container = _render.container;
39
+ _context.next = 3;
40
+ return (0, _axeHelper.axe)(container);
41
+ case 3:
42
+ results = _context.sent;
43
+ expect(results).toHaveNoViolations();
44
+ case 5:
45
+ case "end":
46
+ return _context.stop();
47
+ }
48
+ }, _callee);
49
+ })));
50
+ it("Should not have basic accessibility issues for disabled mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
51
+ var _render2, container, results;
52
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
53
+ while (1) switch (_context2.prev = _context2.next) {
54
+ case 0:
55
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
56
+ href: "https://www.google.com",
57
+ icon: icon,
58
+ iconPosition: "before",
59
+ margin: "medium",
60
+ disabled: true
61
+ }, "Link"), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
62
+ href: "https://www.google.com",
63
+ icon: icon,
64
+ iconPosition: "after",
65
+ margin: "medium",
66
+ disabled: true
67
+ }, "Link"))), container = _render2.container;
68
+ _context2.next = 3;
69
+ return (0, _axeHelper.axe)(container);
70
+ case 3:
71
+ results = _context2.sent;
72
+ expect(results).toHaveNoViolations();
73
+ case 5:
74
+ case "end":
75
+ return _context2.stop();
76
+ }
77
+ }, _callee2);
78
+ })));
79
+ it("Should not have basic accessibility issues for new-window mode", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
80
+ var _render3, container, results;
81
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
82
+ while (1) switch (_context3.prev = _context3.next) {
83
+ case 0:
84
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Flex["default"], null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
85
+ href: "https://www.google.com",
86
+ icon: icon,
87
+ iconPosition: "before",
88
+ margin: "medium",
89
+ newWindow: true
90
+ }, "Link"), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
91
+ href: "https://www.google.com",
92
+ icon: icon,
93
+ iconPosition: "after",
94
+ margin: "medium",
95
+ newWindow: true
96
+ }, "Link"))), container = _render3.container;
97
+ _context3.next = 3;
98
+ return (0, _axeHelper.axe)(container);
99
+ case 3:
100
+ results = _context3.sent;
101
+ expect(results).toHaveNoViolations();
102
+ case 5:
103
+ case "end":
104
+ return _context3.stop();
105
+ }
106
+ }, _callee3);
107
+ })));
108
+ });