@dxc-technology/halstack-react 0.0.0-951bb80 → 0.0.0-95b953e

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 (359) hide show
  1. package/BackgroundColorContext.d.ts +1 -10
  2. package/BackgroundColorContext.js +5 -22
  3. package/HalstackContext.d.ts +1249 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +1 -1
  7. package/accordion/Accordion.js +116 -181
  8. package/accordion/Accordion.stories.tsx +103 -127
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +9 -16
  11. package/accordion-group/AccordionGroup.d.ts +5 -4
  12. package/accordion-group/AccordionGroup.js +38 -107
  13. package/accordion-group/AccordionGroup.stories.tsx +95 -68
  14. package/accordion-group/AccordionGroup.test.js +98 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +31 -0
  17. package/accordion-group/types.d.ts +15 -16
  18. package/action-icon/ActionIcon.d.ts +4 -0
  19. package/action-icon/ActionIcon.js +47 -0
  20. package/action-icon/ActionIcon.stories.tsx +41 -0
  21. package/action-icon/ActionIcon.test.js +64 -0
  22. package/action-icon/types.d.ts +26 -0
  23. package/alert/Alert.js +23 -59
  24. package/alert/Alert.stories.tsx +28 -0
  25. package/alert/Alert.test.js +75 -0
  26. package/alert/types.d.ts +5 -5
  27. package/badge/Badge.d.ts +4 -0
  28. package/badge/Badge.js +141 -41
  29. package/badge/Badge.stories.tsx +210 -0
  30. package/badge/Badge.test.js +30 -0
  31. package/badge/types.d.ts +54 -0
  32. package/bleed/Bleed.js +14 -55
  33. package/bleed/Bleed.stories.tsx +95 -95
  34. package/bleed/types.d.ts +26 -2
  35. package/box/Box.d.ts +1 -1
  36. package/box/Box.js +30 -81
  37. package/box/Box.stories.tsx +38 -51
  38. package/box/Box.test.js +13 -0
  39. package/box/types.d.ts +3 -14
  40. package/bulleted-list/BulletedList.d.ts +7 -0
  41. package/bulleted-list/BulletedList.js +89 -0
  42. package/bulleted-list/BulletedList.stories.tsx +115 -0
  43. package/bulleted-list/types.d.ts +38 -0
  44. package/button/Button.d.ts +1 -1
  45. package/button/Button.js +62 -113
  46. package/button/Button.stories.tsx +160 -90
  47. package/button/Button.test.js +38 -0
  48. package/button/types.d.ts +12 -8
  49. package/card/Card.d.ts +1 -1
  50. package/card/Card.js +58 -102
  51. package/card/Card.stories.tsx +12 -42
  52. package/card/Card.test.js +39 -0
  53. package/card/types.d.ts +6 -11
  54. package/checkbox/Checkbox.d.ts +2 -2
  55. package/checkbox/Checkbox.js +144 -182
  56. package/checkbox/Checkbox.stories.tsx +166 -136
  57. package/checkbox/Checkbox.test.js +199 -0
  58. package/checkbox/types.d.ts +18 -6
  59. package/chip/Chip.js +39 -79
  60. package/chip/Chip.stories.tsx +121 -26
  61. package/chip/Chip.test.js +41 -0
  62. package/chip/types.d.ts +4 -4
  63. package/common/OpenSans.css +68 -80
  64. package/common/coreTokens.d.ts +237 -0
  65. package/common/coreTokens.js +184 -0
  66. package/common/utils.d.ts +1 -0
  67. package/common/utils.js +6 -12
  68. package/common/variables.d.ts +1395 -0
  69. package/common/variables.js +1029 -1373
  70. package/container/Container.d.ts +4 -0
  71. package/container/Container.js +194 -0
  72. package/container/Container.stories.tsx +214 -0
  73. package/container/types.d.ts +74 -0
  74. package/date-input/Calendar.d.ts +4 -0
  75. package/date-input/Calendar.js +214 -0
  76. package/date-input/DateInput.js +171 -306
  77. package/date-input/DateInput.stories.tsx +203 -56
  78. package/date-input/DateInput.test.js +808 -0
  79. package/date-input/DatePicker.d.ts +4 -0
  80. package/date-input/DatePicker.js +115 -0
  81. package/date-input/Icons.d.ts +6 -0
  82. package/date-input/Icons.js +58 -0
  83. package/date-input/YearPicker.d.ts +4 -0
  84. package/date-input/YearPicker.js +100 -0
  85. package/date-input/types.d.ts +86 -22
  86. package/dialog/Dialog.d.ts +1 -1
  87. package/dialog/Dialog.js +68 -130
  88. package/dialog/Dialog.stories.tsx +320 -167
  89. package/dialog/Dialog.test.js +307 -0
  90. package/dialog/types.d.ts +18 -25
  91. package/dropdown/Dropdown.d.ts +1 -1
  92. package/dropdown/Dropdown.js +248 -307
  93. package/dropdown/Dropdown.stories.tsx +245 -56
  94. package/dropdown/Dropdown.test.js +599 -0
  95. package/dropdown/DropdownMenu.d.ts +4 -0
  96. package/dropdown/DropdownMenu.js +63 -0
  97. package/dropdown/DropdownMenuItem.d.ts +4 -0
  98. package/dropdown/DropdownMenuItem.js +67 -0
  99. package/dropdown/types.d.ts +32 -14
  100. package/file-input/FileInput.d.ts +2 -2
  101. package/file-input/FileInput.js +246 -357
  102. package/file-input/FileInput.stories.tsx +123 -12
  103. package/file-input/FileInput.test.js +459 -0
  104. package/file-input/FileItem.d.ts +4 -14
  105. package/file-input/FileItem.js +50 -99
  106. package/file-input/types.d.ts +25 -8
  107. package/flex/Flex.d.ts +4 -0
  108. package/flex/Flex.js +57 -0
  109. package/flex/Flex.stories.tsx +112 -0
  110. package/flex/types.d.ts +97 -0
  111. package/footer/Footer.d.ts +1 -1
  112. package/footer/Footer.js +70 -190
  113. package/footer/Footer.stories.tsx +60 -19
  114. package/footer/Footer.test.js +85 -0
  115. package/footer/Icons.d.ts +3 -2
  116. package/footer/Icons.js +67 -8
  117. package/footer/types.d.ts +25 -26
  118. package/grid/Grid.d.ts +7 -0
  119. package/grid/Grid.js +76 -0
  120. package/grid/Grid.stories.tsx +219 -0
  121. package/grid/types.d.ts +115 -0
  122. package/header/Header.d.ts +4 -3
  123. package/header/Header.js +99 -203
  124. package/header/Header.stories.tsx +152 -63
  125. package/header/Header.test.js +66 -0
  126. package/header/Icons.d.ts +2 -2
  127. package/header/Icons.js +4 -9
  128. package/header/types.d.ts +5 -19
  129. package/heading/Heading.js +10 -32
  130. package/heading/Heading.test.js +169 -0
  131. package/heading/types.d.ts +7 -7
  132. package/image/Image.d.ts +4 -0
  133. package/image/Image.js +70 -0
  134. package/image/Image.stories.tsx +127 -0
  135. package/image/types.d.ts +72 -0
  136. package/image/types.js +5 -0
  137. package/inset/Inset.js +14 -55
  138. package/inset/Inset.stories.tsx +37 -36
  139. package/inset/types.d.ts +26 -2
  140. package/layout/ApplicationLayout.d.ts +16 -6
  141. package/layout/ApplicationLayout.js +83 -174
  142. package/layout/ApplicationLayout.stories.tsx +85 -94
  143. package/layout/Icons.d.ts +8 -0
  144. package/layout/Icons.js +51 -48
  145. package/layout/SidenavContext.d.ts +5 -0
  146. package/layout/SidenavContext.js +13 -0
  147. package/layout/types.d.ts +19 -35
  148. package/link/Link.d.ts +3 -2
  149. package/link/Link.js +61 -99
  150. package/link/Link.stories.tsx +155 -53
  151. package/link/Link.test.js +63 -0
  152. package/link/types.d.ts +15 -31
  153. package/main.d.ts +16 -18
  154. package/main.js +63 -123
  155. package/nav-tabs/NavTabs.d.ts +8 -0
  156. package/nav-tabs/NavTabs.js +93 -0
  157. package/nav-tabs/NavTabs.stories.tsx +276 -0
  158. package/nav-tabs/NavTabs.test.js +76 -0
  159. package/nav-tabs/Tab.d.ts +4 -0
  160. package/nav-tabs/Tab.js +118 -0
  161. package/nav-tabs/types.d.ts +52 -0
  162. package/nav-tabs/types.js +5 -0
  163. package/number-input/NumberInput.d.ts +7 -0
  164. package/number-input/NumberInput.js +48 -45
  165. package/number-input/NumberInput.stories.tsx +44 -28
  166. package/number-input/NumberInput.test.js +989 -0
  167. package/number-input/types.d.ts +28 -15
  168. package/package.json +46 -47
  169. package/paginator/Icons.d.ts +5 -0
  170. package/paginator/Icons.js +21 -47
  171. package/paginator/Paginator.js +34 -91
  172. package/paginator/Paginator.stories.tsx +24 -0
  173. package/paginator/Paginator.test.js +335 -0
  174. package/paginator/types.d.ts +3 -3
  175. package/paragraph/Paragraph.d.ts +5 -0
  176. package/paragraph/Paragraph.js +22 -0
  177. package/paragraph/Paragraph.stories.tsx +27 -0
  178. package/password-input/Icons.d.ts +6 -0
  179. package/password-input/Icons.js +35 -0
  180. package/password-input/PasswordInput.js +57 -123
  181. package/password-input/PasswordInput.stories.tsx +1 -33
  182. package/password-input/PasswordInput.test.js +198 -0
  183. package/password-input/types.d.ts +21 -17
  184. package/progress-bar/ProgressBar.js +65 -91
  185. package/progress-bar/ProgressBar.stories.tsx +93 -0
  186. package/progress-bar/ProgressBar.test.js +93 -0
  187. package/progress-bar/types.d.ts +3 -3
  188. package/quick-nav/QuickNav.d.ts +4 -0
  189. package/quick-nav/QuickNav.js +94 -0
  190. package/quick-nav/QuickNav.stories.tsx +356 -0
  191. package/quick-nav/types.d.ts +21 -0
  192. package/quick-nav/types.js +5 -0
  193. package/radio-group/Radio.d.ts +1 -1
  194. package/radio-group/Radio.js +64 -80
  195. package/radio-group/RadioGroup.js +101 -139
  196. package/radio-group/RadioGroup.stories.tsx +171 -36
  197. package/radio-group/RadioGroup.test.js +691 -183
  198. package/radio-group/types.d.ts +89 -11
  199. package/resultset-table/Icons.d.ts +7 -0
  200. package/resultset-table/Icons.js +47 -0
  201. package/resultset-table/ResultsetTable.d.ts +7 -0
  202. package/resultset-table/ResultsetTable.js +167 -0
  203. package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +152 -30
  204. package/resultset-table/ResultsetTable.test.js +371 -0
  205. package/{resultsetTable → resultset-table}/types.d.ts +13 -7
  206. package/resultset-table/types.js +5 -0
  207. package/select/Icons.d.ts +10 -0
  208. package/select/Icons.js +89 -0
  209. package/select/Listbox.d.ts +4 -0
  210. package/select/Listbox.js +143 -0
  211. package/select/Option.d.ts +4 -0
  212. package/select/Option.js +87 -0
  213. package/select/Select.js +229 -502
  214. package/select/Select.stories.tsx +603 -204
  215. package/select/Select.test.js +2370 -0
  216. package/select/types.d.ts +64 -25
  217. package/sidenav/Icons.d.ts +7 -0
  218. package/sidenav/Icons.js +47 -0
  219. package/sidenav/Sidenav.d.ts +6 -5
  220. package/sidenav/Sidenav.js +131 -71
  221. package/sidenav/Sidenav.stories.tsx +251 -151
  222. package/sidenav/Sidenav.test.js +37 -0
  223. package/sidenav/types.d.ts +52 -26
  224. package/slider/Slider.d.ts +2 -2
  225. package/slider/Slider.js +148 -180
  226. package/slider/Slider.test.js +254 -0
  227. package/slider/types.d.ts +11 -3
  228. package/spinner/Spinner.js +31 -75
  229. package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
  230. package/spinner/Spinner.test.js +55 -0
  231. package/spinner/types.d.ts +3 -3
  232. package/status-light/StatusLight.d.ts +4 -0
  233. package/status-light/StatusLight.js +51 -0
  234. package/status-light/StatusLight.stories.tsx +74 -0
  235. package/status-light/StatusLight.test.js +25 -0
  236. package/status-light/types.d.ts +17 -0
  237. package/status-light/types.js +5 -0
  238. package/switch/Switch.d.ts +2 -2
  239. package/switch/Switch.js +149 -114
  240. package/switch/Switch.stories.tsx +44 -67
  241. package/switch/Switch.test.js +180 -0
  242. package/switch/types.d.ts +13 -5
  243. package/table/ActionsCell.d.ts +4 -0
  244. package/table/ActionsCell.js +67 -0
  245. package/table/DropdownTheme.js +62 -0
  246. package/table/Table.d.ts +4 -1
  247. package/table/Table.js +26 -32
  248. package/table/Table.stories.tsx +658 -0
  249. package/table/Table.test.js +113 -0
  250. package/table/types.d.ts +45 -6
  251. package/tabs/Tab.d.ts +4 -0
  252. package/tabs/Tab.js +116 -0
  253. package/tabs/Tabs.d.ts +1 -1
  254. package/tabs/Tabs.js +316 -145
  255. package/tabs/Tabs.stories.tsx +120 -14
  256. package/tabs/Tabs.test.js +294 -0
  257. package/tabs/types.d.ts +29 -15
  258. package/tag/Tag.js +41 -78
  259. package/tag/Tag.stories.tsx +25 -8
  260. package/tag/Tag.test.js +49 -0
  261. package/tag/types.d.ts +7 -7
  262. package/text-input/Icons.d.ts +8 -0
  263. package/text-input/Icons.js +56 -0
  264. package/text-input/Suggestion.d.ts +4 -0
  265. package/text-input/Suggestion.js +67 -0
  266. package/text-input/Suggestions.d.ts +4 -0
  267. package/text-input/Suggestions.js +84 -0
  268. package/text-input/TextInput.js +327 -556
  269. package/text-input/TextInput.stories.tsx +281 -272
  270. package/text-input/TextInput.test.js +1756 -0
  271. package/text-input/types.d.ts +70 -24
  272. package/textarea/Textarea.js +85 -135
  273. package/textarea/Textarea.stories.tsx +174 -0
  274. package/textarea/Textarea.test.js +406 -0
  275. package/textarea/types.d.ts +27 -16
  276. package/toggle-group/ToggleGroup.d.ts +2 -2
  277. package/toggle-group/ToggleGroup.js +92 -105
  278. package/toggle-group/ToggleGroup.stories.tsx +53 -8
  279. package/toggle-group/ToggleGroup.test.js +137 -0
  280. package/toggle-group/types.d.ts +34 -17
  281. package/typography/Typography.d.ts +4 -0
  282. package/typography/Typography.js +23 -0
  283. package/typography/Typography.stories.tsx +198 -0
  284. package/typography/types.d.ts +18 -0
  285. package/typography/types.js +5 -0
  286. package/useTheme.d.ts +1147 -1
  287. package/useTheme.js +4 -11
  288. package/useTranslatedLabels.d.ts +85 -0
  289. package/useTranslatedLabels.js +14 -0
  290. package/utils/BaseTypography.d.ts +21 -0
  291. package/utils/BaseTypography.js +94 -0
  292. package/utils/FocusLock.d.ts +13 -0
  293. package/utils/FocusLock.js +124 -0
  294. package/wizard/Wizard.d.ts +1 -1
  295. package/wizard/Wizard.js +70 -101
  296. package/wizard/Wizard.stories.tsx +48 -19
  297. package/wizard/Wizard.test.js +114 -0
  298. package/wizard/types.d.ts +12 -8
  299. package/ThemeContext.d.ts +0 -15
  300. package/ThemeContext.js +0 -243
  301. package/V3Select/V3Select.js +0 -455
  302. package/V3Select/index.d.ts +0 -27
  303. package/V3Textarea/V3Textarea.js +0 -260
  304. package/V3Textarea/index.d.ts +0 -27
  305. package/card/ice-cream.jpg +0 -0
  306. package/common/RequiredComponent.js +0 -32
  307. package/date/Date.js +0 -373
  308. package/date/index.d.ts +0 -27
  309. package/input-text/Icons.js +0 -22
  310. package/input-text/InputText.js +0 -611
  311. package/input-text/index.d.ts +0 -36
  312. package/list/List.d.ts +0 -4
  313. package/list/List.js +0 -47
  314. package/list/List.stories.tsx +0 -95
  315. package/list/types.d.ts +0 -7
  316. package/number-input/NumberInputContext.d.ts +0 -4
  317. package/number-input/NumberInputContext.js +0 -19
  318. package/number-input/numberInputContextTypes.d.ts +0 -19
  319. package/progress-bar/ProgressBar.stories.jsx +0 -58
  320. package/radio/Radio.d.ts +0 -4
  321. package/radio/Radio.js +0 -174
  322. package/radio/Radio.stories.tsx +0 -192
  323. package/radio/types.d.ts +0 -54
  324. package/resultsetTable/ResultsetTable.d.ts +0 -4
  325. package/resultsetTable/ResultsetTable.js +0 -251
  326. package/row/Row.d.ts +0 -3
  327. package/row/Row.js +0 -127
  328. package/row/Row.stories.tsx +0 -237
  329. package/row/types.d.ts +0 -10
  330. package/slider/Slider.stories.tsx +0 -177
  331. package/stack/Stack.d.ts +0 -3
  332. package/stack/Stack.js +0 -97
  333. package/stack/Stack.stories.tsx +0 -164
  334. package/stack/types.d.ts +0 -9
  335. package/table/Table.stories.jsx +0 -277
  336. package/text/Text.d.ts +0 -7
  337. package/text/Text.js +0 -30
  338. package/text/Text.stories.tsx +0 -19
  339. package/textarea/Textarea.stories.jsx +0 -136
  340. package/toggle/Toggle.js +0 -186
  341. package/toggle/index.d.ts +0 -21
  342. package/upload/Upload.js +0 -201
  343. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  344. package/upload/buttons-upload/Icons.js +0 -40
  345. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  346. package/upload/dragAndDropArea/Icons.js +0 -39
  347. package/upload/file-upload/FileToUpload.js +0 -115
  348. package/upload/file-upload/Icons.js +0 -66
  349. package/upload/files-upload/FilesToUpload.js +0 -109
  350. package/upload/index.d.ts +0 -15
  351. package/upload/transaction/Icons.js +0 -160
  352. package/upload/transaction/Transaction.js +0 -104
  353. package/upload/transactions/Transactions.js +0 -94
  354. /package/{list → action-icon}/types.js +0 -0
  355. /package/{radio → badge}/types.js +0 -0
  356. /package/{resultsetTable → bulleted-list}/types.js +0 -0
  357. /package/{row → container}/types.js +0 -0
  358. /package/{stack → flex}/types.js +0 -0
  359. /package/{number-input/numberInputContextTypes.js → grid/types.js} +0 -0
package/link/types.d.ts CHANGED
@@ -1,20 +1,25 @@
1
1
  /// <reference types="react" />
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Margin = {
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- declare type LinkCommonProps = {
9
+ type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
10
+ export type LinkProps = {
11
+ /**
12
+ * If true, the link is disabled.
13
+ */
14
+ disabled?: boolean;
10
15
  /**
11
16
  * If true, the color is inherited from parent.
12
17
  */
13
18
  inheritColor?: boolean;
14
19
  /**
15
- * If true, the link is disabled.
20
+ * Element or path used as the icon that will be placed next to the link text.
16
21
  */
17
- disabled?: boolean;
22
+ icon?: string | SVG;
18
23
  /**
19
24
  * Indicates the position of the icon in the component.
20
25
  */
@@ -32,6 +37,10 @@ declare type LinkCommonProps = {
32
37
  * function will be called when the user clicks the link.
33
38
  */
34
39
  onClick?: () => void;
40
+ /**
41
+ * Text of the link.
42
+ */
43
+ children: string;
35
44
  /**
36
45
  * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
37
46
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
@@ -42,29 +51,4 @@ declare type LinkCommonProps = {
42
51
  */
43
52
  tabIndex?: number;
44
53
  };
45
- export declare type LinkTextProps = LinkCommonProps & {
46
- /**
47
- * Link text.
48
- */
49
- text: string;
50
- /**
51
- * Element or path used as the icon that will be placed next to the link text.
52
- */
53
- icon?: string | SVG;
54
- };
55
- export declare type LinkIconProps = LinkCommonProps & {
56
- /**
57
- * Link text.
58
- */
59
- text?: string;
60
- /**
61
- * Element or path used as the icon that will be placed next to the link text.
62
- */
63
- icon: string | SVG;
64
- };
65
- declare type Overload = {
66
- (props: LinkTextProps): JSX.Element;
67
- (props: LinkIconProps): JSX.Element;
68
- };
69
- declare type SVG = React.SVGProps<SVGSVGElement>;
70
- export default Overload;
54
+ export {};
package/main.d.ts CHANGED
@@ -3,35 +3,25 @@ import DxcAccordion from "./accordion/Accordion";
3
3
  import DxcButton from "./button/Button";
4
4
  import DxcCard from "./card/Card";
5
5
  import DxcCheckbox from "./checkbox/Checkbox";
6
- import DxcDate from "./date/Date";
7
6
  import DxcDialog from "./dialog/Dialog";
8
7
  import DxcDropdown from "./dropdown/Dropdown";
9
- import DxcFooter from "./footer/Footer";
10
- import DxcHeader from "./header/Header";
11
- import DxcInput from "./input-text/InputText";
12
- import DxcRadio from "./radio/Radio";
13
- import V3DxcSelect from "./V3Select/V3Select";
14
8
  import DxcSlider from "./slider/Slider";
15
9
  import DxcSwitch from "./switch/Switch";
16
10
  import DxcTabs from "./tabs/Tabs";
17
11
  import DxcProgressBar from "./progress-bar/ProgressBar";
18
12
  import DxcSpinner from "./spinner/Spinner";
19
- import DxcUpload from "./upload/Upload";
20
13
  import DxcTable from "./table/Table";
21
14
  import DxcBox from "./box/Box";
22
15
  import DxcTag from "./tag/Tag";
23
16
  import DxcPaginator from "./paginator/Paginator";
24
- import DxcSidenav from "./sidenav/Sidenav";
25
17
  import DxcWizard from "./wizard/Wizard";
26
18
  import DxcLink from "./link/Link";
27
19
  import DxcHeading from "./heading/Heading";
28
- import V3DxcTextarea from "./V3Textarea/V3Textarea";
29
- import DxcResultsetTable from "./resultsetTable/ResultsetTable";
20
+ import DxcResultsetTable from "./resultset-table/ResultsetTable";
30
21
  import DxcChip from "./chip/Chip";
31
22
  import DxcApplicationLayout from "./layout/ApplicationLayout";
32
23
  import DxcToggleGroup from "./toggle-group/ToggleGroup";
33
24
  import DxcAccordionGroup from "./accordion-group/AccordionGroup";
34
- import DxcBadge from "./badge/Badge";
35
25
  import DxcTextInput from "./text-input/TextInput";
36
26
  import DxcPasswordInput from "./password-input/PasswordInput";
37
27
  import DxcDateInput from "./date-input/DateInput";
@@ -39,11 +29,19 @@ import DxcNumberInput from "./number-input/NumberInput";
39
29
  import DxcTextarea from "./textarea/Textarea";
40
30
  import DxcSelect from "./select/Select";
41
31
  import DxcFileInput from "./file-input/FileInput";
42
- import DxcStack from "./stack/Stack";
43
- import DxcRow from "./row/Row";
44
- import DxcText from "./text/Text";
45
- import DxcList from "./list/List";
46
32
  import DxcRadioGroup from "./radio-group/RadioGroup";
47
- import ThemeContext, { ThemeProvider } from "./ThemeContext";
48
- import { BackgroundColorProvider } from "./BackgroundColorContext";
49
- export { DxcAlert, DxcButton, DxcFooter, DxcCheckbox, V3DxcSelect, DxcInput, DxcTextInput, DxcDropdown, DxcSwitch, DxcSlider, DxcRadio, DxcDate, DxcHeader, DxcTable, DxcTabs, DxcToggleGroup, DxcDialog, DxcCard, DxcProgressBar, DxcAccordion, DxcSpinner, DxcUpload, DxcBox, DxcTag, DxcPaginator, DxcSidenav, DxcWizard, DxcLink, DxcHeading, V3DxcTextarea, DxcResultsetTable, DxcChip, DxcApplicationLayout, ThemeContext, ThemeProvider, BackgroundColorProvider, DxcAccordionGroup, DxcBadge, DxcPasswordInput, DxcDateInput, DxcNumberInput, DxcTextarea, DxcSelect, DxcFileInput, DxcStack, DxcRow, DxcText, DxcList, DxcRadioGroup, };
33
+ import DxcBleed from "./bleed/Bleed";
34
+ import DxcInset from "./inset/Inset";
35
+ import DxcQuickNav from "./quick-nav/QuickNav";
36
+ import DxcNavTabs from "./nav-tabs/NavTabs";
37
+ import DxcFlex from "./flex/Flex";
38
+ import DxcTypography from "./typography/Typography";
39
+ import DxcParagraph from "./paragraph/Paragraph";
40
+ import DxcBulletedList from "./bulleted-list/BulletedList";
41
+ import DxcGrid from "./grid/Grid";
42
+ import DxcImage from "./image/Image";
43
+ import DxcContainer from "./container/Container";
44
+ import DxcBadge from "./badge/Badge";
45
+ import DxcStatusLight from "./status-light/StatusLight";
46
+ import HalstackContext, { HalstackProvider, HalstackLanguageContext } from "./HalstackContext";
47
+ export { DxcAlert, DxcButton, DxcCheckbox, DxcTextInput, DxcDropdown, DxcSwitch, DxcSlider, DxcTable, DxcTabs, DxcToggleGroup, DxcDialog, DxcCard, DxcProgressBar, DxcAccordion, DxcSpinner, DxcBox, DxcTag, DxcPaginator, DxcWizard, DxcLink, DxcHeading, DxcResultsetTable, DxcChip, DxcApplicationLayout, HalstackContext, HalstackLanguageContext, HalstackProvider, DxcAccordionGroup, DxcPasswordInput, DxcDateInput, DxcNumberInput, DxcTextarea, DxcSelect, DxcFileInput, DxcRadioGroup, DxcBleed, DxcInset, DxcQuickNav, DxcNavTabs, DxcFlex, DxcTypography, DxcParagraph, DxcBulletedList, DxcGrid, DxcImage, DxcContainer, DxcBadge, DxcStatusLight, };
package/main.js CHANGED
@@ -1,18 +1,10 @@
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
- Object.defineProperty(exports, "BackgroundColorProvider", {
11
- enumerable: true,
12
- get: function get() {
13
- return _BackgroundColorContext.BackgroundColorProvider;
14
- }
15
- });
16
8
  Object.defineProperty(exports, "DxcAccordion", {
17
9
  enumerable: true,
18
10
  get: function get() {
@@ -43,12 +35,24 @@ Object.defineProperty(exports, "DxcBadge", {
43
35
  return _Badge["default"];
44
36
  }
45
37
  });
38
+ Object.defineProperty(exports, "DxcBleed", {
39
+ enumerable: true,
40
+ get: function get() {
41
+ return _Bleed["default"];
42
+ }
43
+ });
46
44
  Object.defineProperty(exports, "DxcBox", {
47
45
  enumerable: true,
48
46
  get: function get() {
49
47
  return _Box["default"];
50
48
  }
51
49
  });
50
+ Object.defineProperty(exports, "DxcBulletedList", {
51
+ enumerable: true,
52
+ get: function get() {
53
+ return _BulletedList["default"];
54
+ }
55
+ });
52
56
  Object.defineProperty(exports, "DxcButton", {
53
57
  enumerable: true,
54
58
  get: function get() {
@@ -73,10 +77,10 @@ Object.defineProperty(exports, "DxcChip", {
73
77
  return _Chip["default"];
74
78
  }
75
79
  });
76
- Object.defineProperty(exports, "DxcDate", {
80
+ Object.defineProperty(exports, "DxcContainer", {
77
81
  enumerable: true,
78
82
  get: function get() {
79
- return _Date["default"];
83
+ return _Container["default"];
80
84
  }
81
85
  });
82
86
  Object.defineProperty(exports, "DxcDateInput", {
@@ -103,16 +107,16 @@ Object.defineProperty(exports, "DxcFileInput", {
103
107
  return _FileInput["default"];
104
108
  }
105
109
  });
106
- Object.defineProperty(exports, "DxcFooter", {
110
+ Object.defineProperty(exports, "DxcFlex", {
107
111
  enumerable: true,
108
112
  get: function get() {
109
- return _Footer["default"];
113
+ return _Flex["default"];
110
114
  }
111
115
  });
112
- Object.defineProperty(exports, "DxcHeader", {
116
+ Object.defineProperty(exports, "DxcGrid", {
113
117
  enumerable: true,
114
118
  get: function get() {
115
- return _Header["default"];
119
+ return _Grid["default"];
116
120
  }
117
121
  });
118
122
  Object.defineProperty(exports, "DxcHeading", {
@@ -121,10 +125,16 @@ Object.defineProperty(exports, "DxcHeading", {
121
125
  return _Heading["default"];
122
126
  }
123
127
  });
124
- Object.defineProperty(exports, "DxcInput", {
128
+ Object.defineProperty(exports, "DxcImage", {
129
+ enumerable: true,
130
+ get: function get() {
131
+ return _Image["default"];
132
+ }
133
+ });
134
+ Object.defineProperty(exports, "DxcInset", {
125
135
  enumerable: true,
126
136
  get: function get() {
127
- return _InputText["default"];
137
+ return _Inset["default"];
128
138
  }
129
139
  });
130
140
  Object.defineProperty(exports, "DxcLink", {
@@ -133,10 +143,10 @@ Object.defineProperty(exports, "DxcLink", {
133
143
  return _Link["default"];
134
144
  }
135
145
  });
136
- Object.defineProperty(exports, "DxcList", {
146
+ Object.defineProperty(exports, "DxcNavTabs", {
137
147
  enumerable: true,
138
148
  get: function get() {
139
- return _List["default"];
149
+ return _NavTabs["default"];
140
150
  }
141
151
  });
142
152
  Object.defineProperty(exports, "DxcNumberInput", {
@@ -151,6 +161,12 @@ Object.defineProperty(exports, "DxcPaginator", {
151
161
  return _Paginator["default"];
152
162
  }
153
163
  });
164
+ Object.defineProperty(exports, "DxcParagraph", {
165
+ enumerable: true,
166
+ get: function get() {
167
+ return _Paragraph["default"];
168
+ }
169
+ });
154
170
  Object.defineProperty(exports, "DxcPasswordInput", {
155
171
  enumerable: true,
156
172
  get: function get() {
@@ -163,10 +179,10 @@ Object.defineProperty(exports, "DxcProgressBar", {
163
179
  return _ProgressBar["default"];
164
180
  }
165
181
  });
166
- Object.defineProperty(exports, "DxcRadio", {
182
+ Object.defineProperty(exports, "DxcQuickNav", {
167
183
  enumerable: true,
168
184
  get: function get() {
169
- return _Radio["default"];
185
+ return _QuickNav["default"];
170
186
  }
171
187
  });
172
188
  Object.defineProperty(exports, "DxcRadioGroup", {
@@ -181,24 +197,12 @@ Object.defineProperty(exports, "DxcResultsetTable", {
181
197
  return _ResultsetTable["default"];
182
198
  }
183
199
  });
184
- Object.defineProperty(exports, "DxcRow", {
185
- enumerable: true,
186
- get: function get() {
187
- return _Row["default"];
188
- }
189
- });
190
200
  Object.defineProperty(exports, "DxcSelect", {
191
201
  enumerable: true,
192
202
  get: function get() {
193
203
  return _Select["default"];
194
204
  }
195
205
  });
196
- Object.defineProperty(exports, "DxcSidenav", {
197
- enumerable: true,
198
- get: function get() {
199
- return _Sidenav["default"];
200
- }
201
- });
202
206
  Object.defineProperty(exports, "DxcSlider", {
203
207
  enumerable: true,
204
208
  get: function get() {
@@ -211,10 +215,10 @@ Object.defineProperty(exports, "DxcSpinner", {
211
215
  return _Spinner["default"];
212
216
  }
213
217
  });
214
- Object.defineProperty(exports, "DxcStack", {
218
+ Object.defineProperty(exports, "DxcStatusLight", {
215
219
  enumerable: true,
216
220
  get: function get() {
217
- return _Stack["default"];
221
+ return _StatusLight["default"];
218
222
  }
219
223
  });
220
224
  Object.defineProperty(exports, "DxcSwitch", {
@@ -241,12 +245,6 @@ Object.defineProperty(exports, "DxcTag", {
241
245
  return _Tag["default"];
242
246
  }
243
247
  });
244
- Object.defineProperty(exports, "DxcText", {
245
- enumerable: true,
246
- get: function get() {
247
- return _Text["default"];
248
- }
249
- });
250
248
  Object.defineProperty(exports, "DxcTextInput", {
251
249
  enumerable: true,
252
250
  get: function get() {
@@ -265,10 +263,10 @@ Object.defineProperty(exports, "DxcToggleGroup", {
265
263
  return _ToggleGroup["default"];
266
264
  }
267
265
  });
268
- Object.defineProperty(exports, "DxcUpload", {
266
+ Object.defineProperty(exports, "DxcTypography", {
269
267
  enumerable: true,
270
268
  get: function get() {
271
- return _Upload["default"];
269
+ return _Typography["default"];
272
270
  }
273
271
  });
274
272
  Object.defineProperty(exports, "DxcWizard", {
@@ -277,127 +275,69 @@ Object.defineProperty(exports, "DxcWizard", {
277
275
  return _Wizard["default"];
278
276
  }
279
277
  });
280
- Object.defineProperty(exports, "ThemeContext", {
278
+ Object.defineProperty(exports, "HalstackContext", {
281
279
  enumerable: true,
282
280
  get: function get() {
283
- return _ThemeContext["default"];
281
+ return _HalstackContext["default"];
284
282
  }
285
283
  });
286
- Object.defineProperty(exports, "ThemeProvider", {
284
+ Object.defineProperty(exports, "HalstackLanguageContext", {
287
285
  enumerable: true,
288
286
  get: function get() {
289
- return _ThemeContext.ThemeProvider;
287
+ return _HalstackContext.HalstackLanguageContext;
290
288
  }
291
289
  });
292
- Object.defineProperty(exports, "V3DxcSelect", {
290
+ Object.defineProperty(exports, "HalstackProvider", {
293
291
  enumerable: true,
294
292
  get: function get() {
295
- return _V3Select["default"];
293
+ return _HalstackContext.HalstackProvider;
296
294
  }
297
295
  });
298
- Object.defineProperty(exports, "V3DxcTextarea", {
299
- enumerable: true,
300
- get: function get() {
301
- return _V3Textarea["default"];
302
- }
303
- });
304
-
305
296
  var _Alert = _interopRequireDefault(require("./alert/Alert"));
306
-
307
297
  var _Accordion = _interopRequireDefault(require("./accordion/Accordion"));
308
-
309
298
  var _Button = _interopRequireDefault(require("./button/Button"));
310
-
311
299
  var _Card = _interopRequireDefault(require("./card/Card"));
312
-
313
300
  var _Checkbox = _interopRequireDefault(require("./checkbox/Checkbox"));
314
-
315
- var _Date = _interopRequireDefault(require("./date/Date"));
316
-
317
301
  var _Dialog = _interopRequireDefault(require("./dialog/Dialog"));
318
-
319
302
  var _Dropdown = _interopRequireDefault(require("./dropdown/Dropdown"));
320
-
321
- var _Footer = _interopRequireDefault(require("./footer/Footer"));
322
-
323
- var _Header = _interopRequireDefault(require("./header/Header"));
324
-
325
- var _InputText = _interopRequireDefault(require("./input-text/InputText"));
326
-
327
- var _Radio = _interopRequireDefault(require("./radio/Radio"));
328
-
329
- var _V3Select = _interopRequireDefault(require("./V3Select/V3Select"));
330
-
331
303
  var _Slider = _interopRequireDefault(require("./slider/Slider"));
332
-
333
304
  var _Switch = _interopRequireDefault(require("./switch/Switch"));
334
-
335
305
  var _Tabs = _interopRequireDefault(require("./tabs/Tabs"));
336
-
337
306
  var _ProgressBar = _interopRequireDefault(require("./progress-bar/ProgressBar"));
338
-
339
307
  var _Spinner = _interopRequireDefault(require("./spinner/Spinner"));
340
-
341
- var _Upload = _interopRequireDefault(require("./upload/Upload"));
342
-
343
308
  var _Table = _interopRequireDefault(require("./table/Table"));
344
-
345
309
  var _Box = _interopRequireDefault(require("./box/Box"));
346
-
347
310
  var _Tag = _interopRequireDefault(require("./tag/Tag"));
348
-
349
311
  var _Paginator = _interopRequireDefault(require("./paginator/Paginator"));
350
-
351
- var _Sidenav = _interopRequireDefault(require("./sidenav/Sidenav"));
352
-
353
312
  var _Wizard = _interopRequireDefault(require("./wizard/Wizard"));
354
-
355
313
  var _Link = _interopRequireDefault(require("./link/Link"));
356
-
357
314
  var _Heading = _interopRequireDefault(require("./heading/Heading"));
358
-
359
- var _V3Textarea = _interopRequireDefault(require("./V3Textarea/V3Textarea"));
360
-
361
- var _ResultsetTable = _interopRequireDefault(require("./resultsetTable/ResultsetTable"));
362
-
315
+ var _ResultsetTable = _interopRequireDefault(require("./resultset-table/ResultsetTable"));
363
316
  var _Chip = _interopRequireDefault(require("./chip/Chip"));
364
-
365
317
  var _ApplicationLayout = _interopRequireDefault(require("./layout/ApplicationLayout"));
366
-
367
318
  var _ToggleGroup = _interopRequireDefault(require("./toggle-group/ToggleGroup"));
368
-
369
319
  var _AccordionGroup = _interopRequireDefault(require("./accordion-group/AccordionGroup"));
370
-
371
- var _Badge = _interopRequireDefault(require("./badge/Badge"));
372
-
373
320
  var _TextInput = _interopRequireDefault(require("./text-input/TextInput"));
374
-
375
321
  var _PasswordInput = _interopRequireDefault(require("./password-input/PasswordInput"));
376
-
377
322
  var _DateInput = _interopRequireDefault(require("./date-input/DateInput"));
378
-
379
323
  var _NumberInput = _interopRequireDefault(require("./number-input/NumberInput"));
380
-
381
324
  var _Textarea = _interopRequireDefault(require("./textarea/Textarea"));
382
-
383
325
  var _Select = _interopRequireDefault(require("./select/Select"));
384
-
385
326
  var _FileInput = _interopRequireDefault(require("./file-input/FileInput"));
386
-
387
- var _Stack = _interopRequireDefault(require("./stack/Stack"));
388
-
389
- var _Row = _interopRequireDefault(require("./row/Row"));
390
-
391
- var _Text = _interopRequireDefault(require("./text/Text"));
392
-
393
- var _List = _interopRequireDefault(require("./list/List"));
394
-
395
327
  var _RadioGroup = _interopRequireDefault(require("./radio-group/RadioGroup"));
396
-
397
- var _ThemeContext = _interopRequireWildcard(require("./ThemeContext"));
398
-
399
- var _BackgroundColorContext = require("./BackgroundColorContext");
400
-
401
- 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); }
402
-
403
- 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; }
328
+ var _Bleed = _interopRequireDefault(require("./bleed/Bleed"));
329
+ var _Inset = _interopRequireDefault(require("./inset/Inset"));
330
+ var _QuickNav = _interopRequireDefault(require("./quick-nav/QuickNav"));
331
+ var _NavTabs = _interopRequireDefault(require("./nav-tabs/NavTabs"));
332
+ var _Flex = _interopRequireDefault(require("./flex/Flex"));
333
+ var _Typography = _interopRequireDefault(require("./typography/Typography"));
334
+ var _Paragraph = _interopRequireDefault(require("./paragraph/Paragraph"));
335
+ var _BulletedList = _interopRequireDefault(require("./bulleted-list/BulletedList"));
336
+ var _Grid = _interopRequireDefault(require("./grid/Grid"));
337
+ var _Image = _interopRequireDefault(require("./image/Image"));
338
+ var _Container = _interopRequireDefault(require("./container/Container"));
339
+ var _Badge = _interopRequireDefault(require("./badge/Badge"));
340
+ var _StatusLight = _interopRequireDefault(require("./status-light/StatusLight"));
341
+ var _HalstackContext = _interopRequireWildcard(require("./HalstackContext"));
342
+ 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); }
343
+ 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 && Object.prototype.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; }
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import NavTabsPropsType, { NavTabsContextProps } from "./types";
3
+ export declare const NavTabsContext: React.Context<NavTabsContextProps>;
4
+ declare const DxcNavTabs: {
5
+ ({ iconPosition, tabIndex, children }: NavTabsPropsType): JSX.Element;
6
+ Tab: React.ForwardRefExoticComponent<import("./types").TabProps & React.RefAttributes<HTMLAnchorElement>>;
7
+ };
8
+ export default DxcNavTabs;
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.NavTabsContext = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+ var _react = _interopRequireWildcard(require("react"));
12
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
13
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
14
+ var _Tab = _interopRequireDefault(require("./Tab"));
15
+ var _templateObject, _templateObject2;
16
+ 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); }
17
+ 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 && Object.prototype.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; }
18
+ var NavTabsContext = exports.NavTabsContext = /*#__PURE__*/(0, _react.createContext)(null);
19
+ var getPropInChild = function getPropInChild(child, propName) {
20
+ return child.props ? child.props[propName] ? child.props[propName] : child.props.children ? getPropInChild(child.props.children, propName) : undefined : undefined;
21
+ };
22
+ var getLabelFromTab = function getLabelFromTab(child) {
23
+ if (typeof child === "string") {
24
+ return child.toString();
25
+ } else if (child.props.children) {
26
+ return Array.isArray(child.props.children) ? getLabelFromTab(child.props.children[0]) : getLabelFromTab(child.props.children);
27
+ }
28
+ };
29
+ var getPreviousTabIndex = function getPreviousTabIndex(array, initialIndex) {
30
+ var index = initialIndex === 0 ? array.length - 1 : initialIndex - 1;
31
+ while (getPropInChild(array[index], "disabled")) {
32
+ index = index === 0 ? array.length - 1 : index - 1;
33
+ }
34
+ return index;
35
+ };
36
+ var getNextTabIndex = function getNextTabIndex(array, initialIndex) {
37
+ var index = initialIndex === array.length - 1 ? 0 : initialIndex + 1;
38
+ while (getPropInChild(array[index], "disabled")) {
39
+ index = index === array.length - 1 ? 0 : index + 1;
40
+ }
41
+ return index;
42
+ };
43
+ var DxcNavTabs = function DxcNavTabs(_ref) {
44
+ var _ref$iconPosition = _ref.iconPosition,
45
+ iconPosition = _ref$iconPosition === void 0 ? "top" : _ref$iconPosition,
46
+ _ref$tabIndex = _ref.tabIndex,
47
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
48
+ children = _ref.children;
49
+ var _useState = (0, _react.useState)(null),
50
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
51
+ innerFocusIndex = _useState2[0],
52
+ setInnerFocusIndex = _useState2[1];
53
+ var colorsTheme = (0, _useTheme["default"])();
54
+ var contextValue = (0, _react.useMemo)(function () {
55
+ return {
56
+ iconPosition: iconPosition,
57
+ tabIndex: tabIndex,
58
+ focusedLabel: innerFocusIndex === null ? undefined : getLabelFromTab(children[innerFocusIndex])
59
+ };
60
+ }, [iconPosition, tabIndex, innerFocusIndex]);
61
+ var handleOnKeyDown = function handleOnKeyDown(event) {
62
+ var activeTab = _react["default"].Children.toArray(children).findIndex(function (child) {
63
+ return getPropInChild(child, "active");
64
+ });
65
+ switch (event.key) {
66
+ case "Left":
67
+ case "ArrowLeft":
68
+ event.preventDefault();
69
+ setInnerFocusIndex(getPreviousTabIndex(children, innerFocusIndex === null ? activeTab : innerFocusIndex));
70
+ break;
71
+ case "Right":
72
+ case "ArrowRight":
73
+ event.preventDefault();
74
+ setInnerFocusIndex(getNextTabIndex(children, innerFocusIndex === null ? activeTab : innerFocusIndex));
75
+ break;
76
+ }
77
+ };
78
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
79
+ theme: colorsTheme.navTabs
80
+ }, /*#__PURE__*/_react["default"].createElement(NavTabsContainer, {
81
+ onKeyDown: handleOnKeyDown,
82
+ role: "tablist",
83
+ "aria-label": "Navigation tabs"
84
+ }, /*#__PURE__*/_react["default"].createElement(NavTabsContext.Provider, {
85
+ value: contextValue
86
+ }, children), /*#__PURE__*/_react["default"].createElement(Underline, null)));
87
+ };
88
+ var Underline = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 2px;\n background-color: ", ";\n"])), function (props) {
89
+ return props.theme.dividerColor;
90
+ });
91
+ DxcNavTabs.Tab = _Tab["default"];
92
+ var NavTabsContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n position: relative;\n"])));
93
+ var _default = exports["default"] = DxcNavTabs;