@dxc-technology/halstack-react 9.0.0 → 9.0.1

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 (107) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -1
  3. package/HalstackContext.d.ts +1329 -5
  4. package/HalstackContext.js +60 -68
  5. package/accordion/Accordion.js +6 -11
  6. package/accordion/Accordion.test.js +1 -1
  7. package/accordion/types.d.ts +3 -3
  8. package/accordion-group/AccordionGroup.js +2 -2
  9. package/accordion-group/AccordionGroup.test.js +1 -1
  10. package/accordion-group/types.d.ts +2 -2
  11. package/alert/Alert.js +3 -5
  12. package/alert/Alert.test.js +1 -1
  13. package/box/Box.js +2 -2
  14. package/box/Box.test.js +1 -1
  15. package/button/Button.js +2 -2
  16. package/button/Button.test.js +1 -1
  17. package/button/types.d.ts +3 -3
  18. package/card/Card.js +12 -13
  19. package/card/Card.stories.tsx +12 -13
  20. package/card/Card.test.js +1 -1
  21. package/checkbox/Checkbox.js +3 -3
  22. package/checkbox/Checkbox.test.js +1 -1
  23. package/checkbox/types.d.ts +2 -2
  24. package/chip/Chip.js +2 -4
  25. package/chip/Chip.test.js +3 -5
  26. package/common/utils.d.ts +1 -0
  27. package/common/utils.js +4 -4
  28. package/common/variables.d.ts +1625 -0
  29. package/common/variables.js +2 -2
  30. package/dialog/Dialog.js +1 -1
  31. package/dialog/Dialog.test.js +24 -24
  32. package/dialog/types.d.ts +2 -2
  33. package/dropdown/Dropdown.js +2 -2
  34. package/dropdown/Dropdown.test.js +3 -2
  35. package/dropdown/DropdownMenuItem.js +0 -2
  36. package/dropdown/types.d.ts +3 -3
  37. package/file-input/FileInput.js +1 -2
  38. package/file-input/FileInput.test.js +1 -1
  39. package/footer/Footer.js +6 -8
  40. package/footer/Footer.test.js +14 -26
  41. package/header/Header.d.ts +3 -2
  42. package/header/Header.js +3 -3
  43. package/header/Header.test.js +2 -2
  44. package/header/types.d.ts +2 -2
  45. package/heading/Heading.js +1 -1
  46. package/heading/Heading.test.js +1 -1
  47. package/layout/ApplicationLayout.d.ts +1 -1
  48. package/layout/ApplicationLayout.js +1 -1
  49. package/link/Link.js +2 -2
  50. package/link/Link.test.js +2 -4
  51. package/link/types.d.ts +2 -2
  52. package/nav-tabs/NavTabs.test.js +1 -1
  53. package/nav-tabs/Tab.js +7 -7
  54. package/number-input/NumberInput.test.js +1 -1
  55. package/package.json +2 -2
  56. package/paginator/Paginator.js +1 -3
  57. package/paginator/Paginator.test.js +27 -37
  58. package/paragraph/Paragraph.d.ts +3 -4
  59. package/paragraph/Paragraph.js +5 -5
  60. package/password-input/PasswordInput.test.js +1 -1
  61. package/progress-bar/ProgressBar.d.ts +2 -2
  62. package/progress-bar/ProgressBar.js +1 -1
  63. package/progress-bar/ProgressBar.test.js +1 -1
  64. package/progress-bar/types.d.ts +4 -3
  65. package/radio-group/RadioGroup.test.js +1 -1
  66. package/resultsetTable/ResultsetTable.js +2 -2
  67. package/resultsetTable/ResultsetTable.test.js +1 -1
  68. package/resultsetTable/types.d.ts +3 -3
  69. package/select/Select.js +13 -11
  70. package/select/Select.test.js +59 -59
  71. package/sidenav/Sidenav.js +1 -1
  72. package/slider/Slider.js +2 -3
  73. package/slider/Slider.test.js +1 -1
  74. package/slider/types.d.ts +2 -2
  75. package/spinner/Spinner.js +15 -21
  76. package/spinner/Spinner.stories.jsx +28 -28
  77. package/spinner/Spinner.test.js +1 -1
  78. package/switch/Switch.js +2 -2
  79. package/switch/Switch.test.js +1 -1
  80. package/switch/types.d.ts +2 -2
  81. package/table/Table.js +2 -2
  82. package/table/Table.test.js +1 -1
  83. package/tabs/Tab.js +9 -9
  84. package/tabs/Tabs.js +1 -3
  85. package/tabs/Tabs.test.js +4 -5
  86. package/tabs/types.d.ts +2 -2
  87. package/tag/Tag.js +7 -9
  88. package/tag/Tag.test.js +1 -1
  89. package/text-input/Suggestion.js +2 -2
  90. package/text-input/TextInput.js +3 -3
  91. package/text-input/TextInput.test.js +1 -2
  92. package/textarea/Textarea.js +3 -3
  93. package/textarea/Textarea.test.js +1 -1
  94. package/toggle-group/ToggleGroup.js +7 -4
  95. package/toggle-group/ToggleGroup.test.js +1 -1
  96. package/toggle-group/types.d.ts +1 -1
  97. package/typography/Typography.d.ts +2 -2
  98. package/typography/Typography.js +14 -113
  99. package/typography/Typography.stories.tsx +1 -1
  100. package/useTheme.d.ts +1234 -1
  101. package/useTheme.js +1 -1
  102. package/useTranslatedLabels.d.ts +84 -1
  103. package/utils/BaseTypography.d.ts +21 -0
  104. package/utils/BaseTypography.js +108 -0
  105. package/wizard/Wizard.js +2 -2
  106. package/wizard/Wizard.test.js +1 -1
  107. package/wizard/types.d.ts +5 -6
@@ -663,8 +663,8 @@ var componentTokens = {
663
663
  focusColor: globalTokens.hal_blue_l_50
664
664
  },
665
665
  navTabs: {
666
- selectedBackgroundColor: globalTokens.white,
667
- unselectedBackgroundColor: globalTokens.white,
666
+ selectedBackgroundColor: globalTokens.hal_white,
667
+ unselectedBackgroundColor: globalTokens.hal_white,
668
668
  hoverBackgroundColor: globalTokens.hal_grey_l_95,
669
669
  pressedBackgroundColor: globalTokens.hal_grey_l_90,
670
670
  selectedFontColor: globalTokens.hal_grey_s_40,
package/dialog/Dialog.js CHANGED
@@ -17,7 +17,7 @@ var _react = _interopRequireWildcard(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
- var _variables = require("../common/variables.js");
20
+ var _variables = require("../common/variables");
21
21
 
22
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
@@ -8,28 +8,41 @@ var _react2 = require("@testing-library/react");
8
8
 
9
9
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
10
10
 
11
- var _Dialog = _interopRequireDefault(require("./Dialog"));
11
+ var _Dialog = _interopRequireDefault(require("./Dialog.tsx"));
12
12
 
13
- var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
13
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput.tsx"));
14
14
 
15
- var _Textarea = _interopRequireDefault(require("../textarea/Textarea"));
15
+ var _Textarea = _interopRequireDefault(require("../textarea/Textarea.tsx"));
16
16
 
17
- var _Checkbox = _interopRequireDefault(require("../checkbox/Checkbox"));
17
+ var _Checkbox = _interopRequireDefault(require("../checkbox/Checkbox.tsx"));
18
18
 
19
- var _Select = _interopRequireDefault(require("../select/Select"));
19
+ var _Select = _interopRequireDefault(require("../select/Select.tsx"));
20
20
 
21
- var _Button = _interopRequireDefault(require("../button/Button"));
21
+ var _Button = _interopRequireDefault(require("../button/Button.tsx"));
22
22
 
23
- var _Link = _interopRequireDefault(require("../link/Link"));
23
+ var _Link = _interopRequireDefault(require("../link/Link.tsx"));
24
24
 
25
- var _Card = _interopRequireDefault(require("../card/Card"));
25
+ var _Card = _interopRequireDefault(require("../card/Card.tsx"));
26
26
 
27
- var _RadioGroup = _interopRequireDefault(require("../radio-group/RadioGroup"));
27
+ var _RadioGroup = _interopRequireDefault(require("../radio-group/RadioGroup.tsx"));
28
28
 
29
- var _Slider = _interopRequireDefault(require("../slider/Slider"));
29
+ var _Slider = _interopRequireDefault(require("../slider/Slider.tsx"));
30
30
 
31
- var _Switch = _interopRequireDefault(require("../switch/Switch"));
31
+ var _Switch = _interopRequireDefault(require("../switch/Switch.tsx"));
32
32
 
33
+ var options = [{
34
+ label: "Female",
35
+ value: "female"
36
+ }, {
37
+ label: "Male",
38
+ value: "male"
39
+ }, {
40
+ label: "Non-binary",
41
+ value: "non-binary"
42
+ }, {
43
+ label: "Other",
44
+ value: "other"
45
+ }];
33
46
  describe("Dialog component tests", function () {
34
47
  test("Dialog renders with correct text and accesibility attributes", function () {
35
48
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], null, "dialog-text")),
@@ -90,19 +103,6 @@ describe("Dialog component tests", function () {
90
103
  expect(onCloseClick).toHaveBeenCalled();
91
104
  });
92
105
  });
93
- var options = [{
94
- label: "Female",
95
- value: "female"
96
- }, {
97
- label: "Male",
98
- value: "male"
99
- }, {
100
- label: "Non-binary",
101
- value: "non-binary"
102
- }, {
103
- label: "Other",
104
- value: "other"
105
- }];
106
106
  describe("Dialog component: Focus lock tests", function () {
107
107
  test("Close action: when there's no focusable content, the focus never leaves the close action (unless you click outside)", function () {
108
108
  var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Dialog["default"], null, "example-dialog")),
package/dialog/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- export declare type Padding = {
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Padding = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
@@ -19,9 +19,9 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
- var _variables = require("../common/variables.js");
22
+ var _variables = require("../common/variables");
23
23
 
24
- var _utils = require("../common/utils.js");
24
+ var _utils = require("../common/utils");
25
25
 
26
26
  var _useTheme = _interopRequireDefault(require("../useTheme"));
27
27
 
@@ -10,10 +10,11 @@ var _react = _interopRequireDefault(require("react"));
10
10
 
11
11
  var _react2 = require("@testing-library/react");
12
12
 
13
- var _Dropdown = _interopRequireDefault(require("./Dropdown"));
14
-
15
13
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
16
14
 
15
+ var _Dropdown = _interopRequireDefault(require("./Dropdown.tsx"));
16
+
17
+ // Mocking DOMRect for Radix Primitive Popover
17
18
  global.globalThis = global;
18
19
  global.DOMRect = {
19
20
  fromRect: function fromRect() {
@@ -30,8 +30,6 @@ var DropdownMenuItem = function DropdownMenuItem(_ref) {
30
30
  role: "menuitem",
31
31
  tabIndex: -1
32
32
  }, iconPosition === "after" && /*#__PURE__*/_react["default"].createElement(DropdownMenuItemLabel, null, option.label), option.icon && /*#__PURE__*/_react["default"].createElement(DropdownMenuItemIcon, {
33
- iconPosition: iconPosition,
34
- label: option.label,
35
33
  role: typeof option.icon === "string" ? undefined : "img"
36
34
  }, typeof option.icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
37
35
  src: option.icon
@@ -1,12 +1,12 @@
1
1
  /// <reference types="react" />
2
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- export declare type Margin = {
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Margin = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
7
7
  right?: Space;
8
8
  };
9
- export declare type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
9
+ declare type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
10
10
  declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
11
11
  export declare type Option = {
12
12
  /**
@@ -29,7 +29,7 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
29
29
 
30
30
  var _uuid = require("uuid");
31
31
 
32
- var _variables = require("../common/variables.js");
32
+ var _variables = require("../common/variables");
33
33
 
34
34
  var _useTheme = _interopRequireDefault(require("../useTheme"));
35
35
 
@@ -371,7 +371,6 @@ var DxcFileInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
371
371
  theme: colorsTheme.fileInput
372
372
  }, /*#__PURE__*/_react["default"].createElement(FileInputContainer, {
373
373
  margin: margin,
374
- name: name,
375
374
  ref: ref
376
375
  }, /*#__PURE__*/_react["default"].createElement(Label, {
377
376
  htmlFor: fileInputId,
@@ -12,7 +12,7 @@ var _react2 = require("@testing-library/react");
12
12
 
13
13
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
14
14
 
15
- var _FileInput = _interopRequireDefault(require("./FileInput"));
15
+ var _FileInput = _interopRequireDefault(require("./FileInput.tsx"));
16
16
 
17
17
  var file1 = new File(["file1"], "file1.png", {
18
18
  type: "image/png"
package/footer/Footer.js CHANGED
@@ -17,7 +17,7 @@ var _react = _interopRequireWildcard(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
- var _variables = require("../common/variables.js");
20
+ var _variables = require("../common/variables");
21
21
 
22
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
@@ -74,9 +74,7 @@ var DxcFooter = function DxcFooter(_ref) {
74
74
  }, /*#__PURE__*/_react["default"].createElement(BottomLink, {
75
75
  tabIndex: tabIndex,
76
76
  href: link && link.href ? link.href : ""
77
- }, link && link.text ? link.text : ""), /*#__PURE__*/_react["default"].createElement(Point, {
78
- index: index
79
- }, "\xB7"));
77
+ }, link && link.text ? link.text : ""), /*#__PURE__*/_react["default"].createElement(Point, null, "\xB7"));
80
78
  });
81
79
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
82
80
  theme: colorsTheme.footer
@@ -91,7 +89,7 @@ var DxcFooter = function DxcFooter(_ref) {
91
89
  }, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLink), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright || translatedLabels.footer.copyrightText(new Date().getFullYear()))))));
92
90
  };
93
91
 
94
- var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
92
+ var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
95
93
  return props.theme.backgroundColor;
96
94
  }, function (props) {
97
95
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -101,11 +99,11 @@ var FooterContainer = _styledComponents["default"].footer(_templateObject || (_t
101
99
 
102
100
  var FooterHeader = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n flex-wrap: wrap;\n row-gap: 24px;\n"])));
103
101
 
104
- var FooterFooter = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
102
+ var FooterFooter = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n\n @media (min-width: ", "rem) {\n flex-direction: row;\n }\n\n @media (max-width: ", "rem) {\n flex-direction: column;\n align-items: center;\n }\n\n border-top: ", ";\n margin-top: 16px;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
105
103
  return "".concat(props.theme.bottomLinksDividerThickness, " ").concat(props.theme.bottomLinksDividerStyle, " ").concat(props.theme.bottomLinksDividerColor);
106
104
  });
107
105
 
108
- var BottomLinks = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n display: inline-flex;\n flex-wrap: wrap;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n }\n\n & > span:last-child span {\n display: none;\n }\n align-self: center;\n"])), function (props) {
106
+ var BottomLinks = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: ", ";\n display: inline-flex;\n flex-wrap: wrap;\n\n @media (min-width: ", "rem) {\n max-width: 60%;\n }\n\n @media (max-width: ", "rem) {\n max-width: 100%;\n width: 100%;\n }\n\n & > span:last-child span {\n display: none;\n }\n align-self: center;\n"])), function (props) {
109
107
  return props.theme.bottomLinksDividerSpacing;
110
108
  }, _variables.responsiveSizes.small, _variables.responsiveSizes.small);
111
109
 
@@ -121,7 +119,7 @@ var ChildComponents = _styledComponents["default"].div(_templateObject5 || (_tem
121
119
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
122
120
  });
123
121
 
124
- var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
122
+ var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
125
123
  return props.theme.copyrightFontFamily;
126
124
  }, function (props) {
127
125
  return props.theme.copyrightFontSize;
@@ -6,10 +6,16 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _linkedin = _interopRequireDefault(require("../../app/src/images/linkedin.svg"));
10
-
11
- var _Footer = _interopRequireDefault(require("./Footer"));
12
-
9
+ var _Footer = _interopRequireDefault(require("./Footer.tsx"));
10
+
11
+ var social = [{
12
+ href: "https://www.test.com/social",
13
+ logo: "https://developer.apple.com/design/human-interface-guidelines/foundations/app-icons/images/icon-and-image-large-icon-settings_2x.png"
14
+ }];
15
+ var bottom = [{
16
+ href: "https://www.test.com/bottom",
17
+ text: "bottom-link-text"
18
+ }];
13
19
  describe("Footer component tests", function () {
14
20
  test("Footer renders with default logo", function () {
15
21
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], null)),
@@ -18,32 +24,22 @@ describe("Footer component tests", function () {
18
24
  expect(getByTitle("DXC Logo")).toBeTruthy();
19
25
  });
20
26
  test("Footer renders with social links", function () {
21
- var social = [{
22
- href: "https://www.test.com/test",
23
- logo: _linkedin["default"]
24
- }];
25
-
26
27
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
27
28
  socialLinks: social
28
29
  })),
29
30
  getByRole = _render2.getByRole;
30
31
 
31
32
  var socialIcon = getByRole("link");
32
- expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/test");
33
+ expect(socialIcon.getAttribute("href")).toBe("https://www.test.com/social");
33
34
  });
34
35
  test("Footer renders with bottom links", function () {
35
- var bottom = [{
36
- href: "https://www.test.com/test",
37
- text: "bottom-link-text"
38
- }];
39
-
40
36
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
41
37
  bottomLinks: bottom
42
38
  })),
43
39
  getByText = _render3.getByText;
44
40
 
45
41
  var link = getByText("bottom-link-text");
46
- expect(link.getAttribute("href")).toBe("https://www.test.com/test");
42
+ expect(link.getAttribute("href")).toBe("https://www.test.com/bottom");
47
43
  });
48
44
  test("Footer renders with copyright text", function () {
49
45
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
@@ -54,7 +50,7 @@ describe("Footer component tests", function () {
54
50
  expect(getByText("test-copyright")).toBeTruthy();
55
51
  });
56
52
  test("Footer renders with correct children", function () {
57
- //We need to force the offsetWidth value
53
+ // We need to force the offsetWidth value
58
54
  Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
59
55
  configurable: true,
60
56
  value: 1024
@@ -66,7 +62,7 @@ describe("Footer component tests", function () {
66
62
  expect(getByText("footer-child-text")).toBeTruthy();
67
63
  });
68
64
  test("Footer renders with children in mobile", function () {
69
- //425 is mobile width
65
+ // 425 is mobile width
70
66
  Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
71
67
  configurable: true,
72
68
  value: 425
@@ -82,14 +78,6 @@ describe("Footer component tests", function () {
82
78
  configurable: true,
83
79
  value: 1024
84
80
  });
85
- var social = [{
86
- href: "https://www.test.com/social",
87
- logo: _linkedin["default"]
88
- }];
89
- var bottom = [{
90
- href: "https://www.test.com/bottom",
91
- text: "bottom-link-text"
92
- }];
93
81
 
94
82
  var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Footer["default"], {
95
83
  socialLinks: social,
@@ -1,7 +1,8 @@
1
- /// <reference types="react" />
1
+ import React from "react";
2
+ import DxcDropdown from "../dropdown/Dropdown";
2
3
  import HeaderPropsType from "./types";
3
4
  declare const DxcHeader: {
4
5
  ({ underlined, content, responsiveContent, onClick, margin, padding, tabIndex, }: HeaderPropsType): JSX.Element;
5
- Dropdown: (props: any) => JSX.Element;
6
+ Dropdown: (props: React.ComponentProps<typeof DxcDropdown>) => JSX.Element;
6
7
  };
7
8
  export default DxcHeader;
package/header/Header.js CHANGED
@@ -23,7 +23,7 @@ var _Dropdown = _interopRequireDefault(require("../dropdown/Dropdown"));
23
23
 
24
24
  var _Icons = require("./Icons");
25
25
 
26
- var _variables = require("../common/variables.js");
26
+ var _variables = require("../common/variables");
27
27
 
28
28
  var _useTheme = _interopRequireDefault(require("../useTheme"));
29
29
 
@@ -257,7 +257,7 @@ var HamburguerTrigger = _styledComponents["default"].button(_templateObject8 ||
257
257
 
258
258
  var MainContainer = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n"])));
259
259
 
260
- var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n\n @media (max-width: ", "rem) and (min-width: ", "rem) {\n //tablet\n width: ", ";\n }\n\n @media (not((max-width: ", "rem) and (min-width: ", "rem))) {\n //mobile phones\n width: ", ";\n }\n\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
260
+ var ResponsiveMenu = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n position: fixed;\n top: 0;\n right: 0;\n z-index: ", ";\n\n @media (max-width: ", "rem) and (min-width: ", "rem) {\n width: ", ";\n }\n\n @media (not((max-width: ", "rem) and (min-width: ", "rem))) {\n width: ", ";\n }\n\n height: 100vh;\n padding: 20px;\n transform: ", ";\n opacity: ", ";\n transition-property: transform, opacity;\n transition-duration: 0.6s;\n transition-timing-function: ease-in-out;\n box-sizing: border-box;\n"])), function (props) {
261
261
  return props.theme.menuBackgroundColor;
262
262
  }, function (props) {
263
263
  return props.theme.menuZindex;
@@ -287,7 +287,7 @@ var MenuContent = _styledComponents["default"].div(_templateObject14 || (_templa
287
287
  return props.backgroundType === "dark" ? props.theme.contentColorOnDark : props.theme.contentColor;
288
288
  });
289
289
 
290
- var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: ", ";\n opacity: ", " !important;\n visibility: ", ";\n opacity: ", ";\n\n @media (max-width: ", "rem) {\n //mobile phones\n display: none;\n }\n\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: ", ";\n"])), function (props) {
290
+ var Overlay = _styledComponents["default"].div(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: ", ";\n opacity: ", " !important;\n visibility: ", ";\n opacity: ", ";\n\n @media (max-width: ", "rem) {\n display: none;\n }\n\n transition: opacity 0.2s 0.2s ease-in-out;\n z-index: ", ";\n"])), function (props) {
291
291
  return props.theme.overlayColor;
292
292
  }, function (props) {
293
293
  return props.theme.overlayOpacity;
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _Header = _interopRequireDefault(require("./Header"));
9
+ var _Header = _interopRequireDefault(require("./Header.tsx"));
10
10
 
11
11
  describe("Header component tests", function () {
12
12
  beforeAll(function () {
@@ -68,7 +68,7 @@ describe("Header component tests", function () {
68
68
  });
69
69
 
70
70
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
71
- responsiveContent: function responsiveContent(closeMenu) {
71
+ responsiveContent: function responsiveContent() {
72
72
  return /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text");
73
73
  }
74
74
  })),
package/header/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- export declare type Padding = {
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Padding = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
@@ -17,7 +17,7 @@ var _react = _interopRequireDefault(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
- var _variables = require("../common/variables.js");
20
+ var _variables = require("../common/variables");
21
21
 
22
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _Heading = _interopRequireDefault(require("./Heading"));
9
+ var _Heading = _interopRequireDefault(require("./Heading.tsx"));
10
10
 
11
11
  describe("Heading component tests", function () {
12
12
  test("Heading renders with default level", function () {
@@ -4,7 +4,7 @@ declare const DxcApplicationLayout: {
4
4
  ({ visibilityToggleLabel, header, sidenav, footer, children, }: AppLayoutPropsType): JSX.Element;
5
5
  Header: {
6
6
  ({ underlined, content, responsiveContent, onClick, margin, padding, tabIndex, }: import("../header/types").default): JSX.Element;
7
- Dropdown: (props: any) => JSX.Element;
7
+ Dropdown: (props: import("../dropdown/types").default) => JSX.Element;
8
8
  };
9
9
  Main: ({ children }: AppLayoutMainPropsType) => JSX.Element;
10
10
  Footer: ({ socialLinks, bottomLinks, copyright, children, padding, margin, tabIndex, }: import("../footer/types").default) => JSX.Element;
@@ -23,7 +23,7 @@ var _Sidenav = _interopRequireDefault(require("../sidenav/Sidenav"));
23
23
 
24
24
  var _styledComponents = _interopRequireDefault(require("styled-components"));
25
25
 
26
- var _variables = require("../common/variables.js");
26
+ var _variables = require("../common/variables");
27
27
 
28
28
  var _Icons = require("./Icons");
29
29
 
package/link/Link.js CHANGED
@@ -21,7 +21,7 @@ var _react = _interopRequireWildcard(require("react"));
21
21
 
22
22
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
23
 
24
- var _variables = require("../common/variables.js");
24
+ var _variables = require("../common/variables");
25
25
 
26
26
  var _useTheme = _interopRequireDefault(require("../useTheme"));
27
27
 
@@ -82,7 +82,7 @@ var DxcLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
82
82
  })));
83
83
  });
84
84
 
85
- var StyledLink = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: baseline;\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n font-family: ", ";\n text-decoration-color: transparent;\n width: fit-content;\n\n ", "\n ", "\n color: ", ";\n ", "\n\n &:visited {\n color: ", ";\n &:hover {\n ", "\n }\n }\n &:hover {\n ", "\n }\n &:focus {\n border-radius: 2px;\n outline: 2px solid ", ";\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
85
+ var StyledLink = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n align-items: baseline;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n font-size: ", ";\n font-weight: ", ";\n font-style: ", ";\n font-family: ", ";\n text-decoration-color: transparent;\n width: fit-content;\n ", "\n ", "\n color: ", ";\n ", "\n &:visited {\n color: ", ";\n &:hover {\n ", "\n }\n }\n &:hover {\n ", "\n }\n &:focus {\n border-radius: 2px;\n outline: 2px solid ", ";\n ", "\n }\n &:active {\n ", "\n }\n"])), function (props) {
86
86
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
87
87
  }, function (props) {
88
88
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
package/link/Link.test.js CHANGED
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _Link = _interopRequireDefault(require("./Link"));
9
+ var _Link = _interopRequireDefault(require("./Link.tsx"));
10
10
 
11
11
  describe("Link component tests", function () {
12
12
  test("Link renders with correct text", function () {
@@ -33,9 +33,7 @@ describe("Link component tests", function () {
33
33
  expect(getByText("Link").hasAttribute("href")).toBeFalsy();
34
34
 
35
35
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
36
- onClick: function onClick() {
37
- return console.log("Andorra");
38
- },
36
+ onClick: function onClick() {},
39
37
  disabled: true
40
38
  }, "LinkButton")),
41
39
  getByTextLinkButton = _render4.getByText;
package/link/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- export declare type Margin = {
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Margin = {
4
4
  top?: Space;
5
5
  bottom?: Space;
6
6
  left?: Space;
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _NavTabs = _interopRequireDefault(require("./NavTabs"));
9
+ var _NavTabs = _interopRequireDefault(require("./NavTabs.tsx"));
10
10
 
11
11
  describe("Tabs component tests", function () {
12
12
  test("Tabs render with correct labels and attributes", function () {
package/nav-tabs/Tab.js CHANGED
@@ -23,7 +23,7 @@ var _Badge = _interopRequireDefault(require("../badge/Badge"));
23
23
 
24
24
  var _NavTabs = require("./NavTabs");
25
25
 
26
- var _Typography = _interopRequireDefault(require("../typography/Typography"));
26
+ var _BaseTypography = _interopRequireDefault(require("../utils/BaseTypography"));
27
27
 
28
28
  var _useTheme = _interopRequireDefault(require("../useTheme"));
29
29
 
@@ -99,7 +99,7 @@ var DxcTab = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, _ref2) {
99
99
  iconPosition: iconPosition
100
100
  }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
101
101
  src: icon
102
- }) : icon), /*#__PURE__*/_react["default"].createElement(LabelContainer, null, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
102
+ }) : icon), /*#__PURE__*/_react["default"].createElement(LabelContainer, null, /*#__PURE__*/_react["default"].createElement(_BaseTypography["default"], {
103
103
  color: disabled ? colorsTheme.navTabs.disabledFontColor : active ? colorsTheme.navTabs.selectedFontColor : colorsTheme.navTabs.unselectedFontColor,
104
104
  fontFamily: colorsTheme.navTabs.fontFamily,
105
105
  fontSize: colorsTheme.navTabs.fontSize,
@@ -109,7 +109,7 @@ var DxcTab = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, _ref2) {
109
109
  letterSpacing: "0.025em",
110
110
  lineHeight: "1.715em"
111
111
  }, children), notificationNumber && /*#__PURE__*/_react["default"].createElement(BadgeContainer, null, /*#__PURE__*/_react["default"].createElement(_Badge["default"], {
112
- notificationText: notificationNumber > 99 ? "+99" : notificationNumber,
112
+ notificationText: typeof notificationNumber === "number" && notificationNumber > 99 ? "+99" : notificationNumber,
113
113
  disabled: disabled
114
114
  })))));
115
115
  });
@@ -124,16 +124,16 @@ var TabContainer = _styledComponents["default"].div(_templateObject || (_templat
124
124
  return props.theme.disabledIconColor;
125
125
  });
126
126
 
127
- var Tab = _styledComponents["default"].a(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n justify-content: center;\n align-items: center;\n\n text-decoration-color: transparent;\n cursor: ", ";\n background: ", ";\n\n height: ", ";\n min-width: 164px;\n margin: 0.5rem;\n padding: 0.375rem;\n\n border-radius: 4px;\n\n ", "\n"])), function (props) {
127
+ var Tab = _styledComponents["default"].a(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: ", ";\n justify-content: center;\n align-items: center;\n height: ", ";\n min-width: 164px;\n margin: 0.5rem;\n padding: 0.375rem;\n border-radius: 4px;\n background: ", ";\n text-decoration-color: transparent;\n cursor: ", ";\n\n ", "\n"])), function (props) {
128
128
  return props.hasIcon && props.iconPosition === "top" ? "column" : "row";
129
129
  }, function (props) {
130
- return props.disabled ? "not-allowed" : "pointer";
130
+ return props.hasIcon && props.iconPosition === "top" ? "66px" : "32px";
131
131
  }, function (props) {
132
132
  return props.active ? props.theme.selectedBackgroundColor : props.theme.unselectedBackgroundColor;
133
133
  }, function (props) {
134
- return props.hasIcon && props.iconPosition === "top" ? "66px" : "32px";
134
+ return props.disabled ? "not-allowed" : "pointer";
135
135
  }, function (props) {
136
- return !props.disabled && ":hover {\n background: ".concat(props.theme.hoverBackgroundColor, ";\n }\n\n :focus {\n outline: 2px solid ").concat(props.theme.focusOutline, ";\n }\n\n :active {\n background: ").concat(props.theme.pressedBackgroundColor, ";\n outline: 2px solid #33aaff};\n }");
136
+ return !props.disabled && "\n :hover {\n background: ".concat(props.theme.hoverBackgroundColor, ";\n }\n :focus {\n outline: 2px solid ").concat(props.theme.focusOutline, ";\n }\n :active {\n background: ").concat(props.theme.pressedBackgroundColor, ";\n outline: 2px solid #33aaff};\n }\n ");
137
137
  });
138
138
 
139
139
  var TabIconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin-bottom: ", ";\n margin-right: ", ";\n\n img,\n svg {\n height: 24px;\n width: 24px;\n }\n"])), function (props) {
@@ -8,7 +8,7 @@ var _react2 = require("@testing-library/react");
8
8
 
9
9
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
10
10
 
11
- var _NumberInput = _interopRequireDefault(require("./NumberInput"));
11
+ var _NumberInput = _interopRequireDefault(require("./NumberInput.tsx"));
12
12
 
13
13
  describe("Number input component tests", function () {
14
14
  test("Number input renders with label", function () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxc-technology/halstack-react",
3
- "version": "9.0.0",
3
+ "version": "9.0.1",
4
4
  "description": "DXC Halstack React components library",
5
5
  "repository": "dxc-technology/halstack-react",
6
6
  "homepage": "https://developer.dxc.com/halstack",
@@ -23,7 +23,6 @@
23
23
  "@types/uuid": "^8.3.4",
24
24
  "color": "^3.1.3",
25
25
  "dayjs": "^1.11.1",
26
- "rgb-hex": "^3.0.0",
27
26
  "slugify": "^1.6.5",
28
27
  "uuid": "^8.3.2"
29
28
  },
@@ -51,6 +50,7 @@
51
50
  "@storybook/testing-library": "0.0.7",
52
51
  "@testing-library/react": "^13.0.0",
53
52
  "@testing-library/user-event": "^13.0.0",
53
+ "@types/color": "^3.0.3",
54
54
  "@types/react": "^18.0.18",
55
55
  "babel-jest": "^24.8.0",
56
56
  "babel-loader": "^8.0.6",
@@ -56,9 +56,7 @@ var DxcPaginator = function DxcPaginator(_ref) {
56
56
  theme: colorsTheme.paginator
57
57
  }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
58
58
  color: colorsTheme.paginator.backgroundColor
59
- }, /*#__PURE__*/_react["default"].createElement(DxcPaginatorContainer, {
60
- disabled: currentPageInternal === 1
61
- }, /*#__PURE__*/_react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && /*#__PURE__*/_react["default"].createElement(ItemsPageContainer, null, /*#__PURE__*/_react["default"].createElement(ItemsLabel, null, translatedLabels.paginator.itemsPerPageText), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
59
+ }, /*#__PURE__*/_react["default"].createElement(DxcPaginatorContainer, null, /*#__PURE__*/_react["default"].createElement(LabelsContainer, null, itemsPerPageOptions && /*#__PURE__*/_react["default"].createElement(ItemsPageContainer, null, /*#__PURE__*/_react["default"].createElement(ItemsLabel, null, translatedLabels.paginator.itemsPerPageText), /*#__PURE__*/_react["default"].createElement(SelectContainer, null, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
62
60
  options: itemsPerPageOptions.map(function (num) {
63
61
  return {
64
62
  label: num.toString(),