@dxc-technology/halstack-react 0.0.0-64fdce7 → 0.0.0-6501724

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 (175) 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 +113 -72
  5. package/accordion/Accordion.js +6 -11
  6. package/accordion/Accordion.stories.tsx +52 -3
  7. package/accordion/Accordion.test.js +1 -1
  8. package/accordion/types.d.ts +3 -3
  9. package/accordion-group/AccordionGroup.d.ts +4 -3
  10. package/accordion-group/AccordionGroup.js +23 -44
  11. package/accordion-group/AccordionGroup.test.js +1 -1
  12. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  13. package/accordion-group/AccordionGroupAccordion.js +43 -0
  14. package/accordion-group/types.d.ts +2 -2
  15. package/alert/Alert.js +4 -8
  16. package/alert/Alert.stories.tsx +28 -0
  17. package/alert/Alert.test.js +1 -1
  18. package/bleed/Bleed.stories.tsx +1 -0
  19. package/box/Box.js +3 -5
  20. package/box/Box.stories.tsx +15 -0
  21. package/box/Box.test.js +1 -1
  22. package/bulleted-list/BulletedList.js +4 -2
  23. package/bulleted-list/BulletedList.stories.tsx +7 -1
  24. package/bulleted-list/types.d.ts +31 -4
  25. package/button/Button.js +2 -3
  26. package/button/Button.stories.tsx +95 -10
  27. package/button/Button.test.js +1 -1
  28. package/button/types.d.ts +3 -3
  29. package/card/Card.js +12 -13
  30. package/card/Card.stories.tsx +12 -13
  31. package/card/Card.test.js +1 -1
  32. package/checkbox/Checkbox.js +3 -3
  33. package/checkbox/Checkbox.stories.tsx +52 -0
  34. package/checkbox/Checkbox.test.js +1 -1
  35. package/checkbox/types.d.ts +2 -2
  36. package/chip/Chip.js +25 -34
  37. package/chip/Chip.stories.tsx +80 -17
  38. package/chip/Chip.test.js +3 -5
  39. package/common/OpenSans.css +68 -80
  40. package/common/coreTokens.d.ts +146 -0
  41. package/common/coreTokens.js +167 -0
  42. package/common/utils.d.ts +1 -0
  43. package/common/utils.js +4 -4
  44. package/common/variables.d.ts +1482 -0
  45. package/common/variables.js +962 -1123
  46. package/date-input/DateInput.stories.tsx +67 -0
  47. package/dialog/Dialog.d.ts +1 -1
  48. package/dialog/Dialog.js +55 -86
  49. package/dialog/Dialog.stories.tsx +145 -217
  50. package/dialog/Dialog.test.js +302 -3
  51. package/dialog/types.d.ts +0 -13
  52. package/dropdown/Dropdown.js +2 -2
  53. package/dropdown/Dropdown.stories.tsx +46 -1
  54. package/dropdown/Dropdown.test.js +3 -2
  55. package/dropdown/DropdownMenu.js +5 -1
  56. package/dropdown/DropdownMenuItem.js +0 -2
  57. package/dropdown/types.d.ts +3 -3
  58. package/file-input/FileInput.js +4 -8
  59. package/file-input/FileInput.stories.tsx +85 -2
  60. package/file-input/FileInput.test.js +1 -42
  61. package/file-input/FileItem.js +1 -0
  62. package/flex/Flex.js +4 -2
  63. package/flex/Flex.stories.tsx +35 -26
  64. package/flex/types.d.ts +70 -5
  65. package/footer/Footer.js +6 -8
  66. package/footer/Footer.stories.tsx +91 -0
  67. package/footer/Footer.test.js +14 -26
  68. package/grid/Grid.d.ts +7 -0
  69. package/grid/Grid.js +91 -0
  70. package/grid/Grid.stories.tsx +219 -0
  71. package/grid/types.d.ts +115 -0
  72. package/header/Header.d.ts +3 -2
  73. package/header/Header.js +3 -3
  74. package/header/Header.stories.tsx +115 -5
  75. package/header/Header.test.js +2 -2
  76. package/header/types.d.ts +2 -2
  77. package/heading/Heading.js +1 -1
  78. package/heading/Heading.test.js +1 -1
  79. package/inset/Inset.stories.tsx +2 -1
  80. package/layout/ApplicationLayout.d.ts +3 -3
  81. package/layout/ApplicationLayout.js +1 -1
  82. package/layout/types.d.ts +2 -3
  83. package/link/Link.js +3 -3
  84. package/link/Link.stories.tsx +60 -0
  85. package/link/Link.test.js +2 -4
  86. package/link/types.d.ts +2 -2
  87. package/main.d.ts +3 -2
  88. package/main.js +9 -1
  89. package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
  90. package/{tabs-nav → nav-tabs}/NavTabs.js +8 -11
  91. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +103 -1
  92. package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
  93. package/{tabs-nav → nav-tabs}/Tab.js +47 -29
  94. package/{tabs-nav → nav-tabs}/types.d.ts +8 -9
  95. package/nav-tabs/types.js +5 -0
  96. package/number-input/NumberInput.test.js +1 -1
  97. package/package.json +2 -2
  98. package/paginator/Paginator.js +2 -4
  99. package/paginator/Paginator.stories.tsx +24 -0
  100. package/paginator/Paginator.test.js +40 -37
  101. package/paragraph/Paragraph.d.ts +3 -4
  102. package/paragraph/Paragraph.js +5 -5
  103. package/password-input/PasswordInput.test.js +1 -1
  104. package/progress-bar/ProgressBar.d.ts +2 -2
  105. package/progress-bar/ProgressBar.js +5 -5
  106. package/progress-bar/ProgressBar.stories.jsx +35 -2
  107. package/progress-bar/ProgressBar.test.js +1 -1
  108. package/progress-bar/types.d.ts +4 -3
  109. package/quick-nav/QuickNav.stories.tsx +14 -0
  110. package/radio-group/Radio.js +10 -10
  111. package/radio-group/RadioGroup.js +8 -10
  112. package/radio-group/RadioGroup.stories.tsx +131 -18
  113. package/radio-group/RadioGroup.test.js +1 -1
  114. package/resultsetTable/ResultsetTable.js +2 -2
  115. package/resultsetTable/ResultsetTable.test.js +1 -1
  116. package/resultsetTable/types.d.ts +3 -3
  117. package/select/Select.js +13 -11
  118. package/select/Select.stories.tsx +477 -175
  119. package/select/Select.test.js +59 -59
  120. package/sidenav/Icons.d.ts +7 -0
  121. package/sidenav/Icons.js +51 -0
  122. package/sidenav/Sidenav.d.ts +2 -2
  123. package/sidenav/Sidenav.js +66 -94
  124. package/sidenav/Sidenav.stories.tsx +110 -17
  125. package/sidenav/types.d.ts +21 -18
  126. package/slider/Slider.js +2 -3
  127. package/slider/Slider.stories.tsx +57 -0
  128. package/slider/Slider.test.js +1 -1
  129. package/slider/types.d.ts +2 -2
  130. package/spinner/Spinner.js +15 -21
  131. package/spinner/Spinner.stories.jsx +53 -27
  132. package/spinner/Spinner.test.js +1 -1
  133. package/switch/Switch.js +2 -2
  134. package/switch/Switch.stories.tsx +33 -0
  135. package/switch/Switch.test.js +1 -1
  136. package/switch/types.d.ts +2 -2
  137. package/table/Table.js +2 -2
  138. package/table/Table.stories.jsx +80 -1
  139. package/table/Table.test.js +1 -1
  140. package/tabs/Tab.js +9 -10
  141. package/tabs/Tabs.js +11 -17
  142. package/tabs/Tabs.stories.tsx +38 -0
  143. package/tabs/Tabs.test.js +4 -5
  144. package/tabs/types.d.ts +2 -2
  145. package/tag/Tag.js +7 -9
  146. package/tag/Tag.stories.tsx +14 -1
  147. package/tag/Tag.test.js +1 -1
  148. package/text-input/Suggestion.js +2 -2
  149. package/text-input/TextInput.js +4 -4
  150. package/text-input/TextInput.stories.tsx +69 -1
  151. package/text-input/TextInput.test.js +1 -2
  152. package/textarea/Textarea.js +3 -4
  153. package/textarea/Textarea.stories.jsx +60 -1
  154. package/textarea/Textarea.test.js +2 -4
  155. package/toggle-group/ToggleGroup.d.ts +2 -2
  156. package/toggle-group/ToggleGroup.js +7 -4
  157. package/toggle-group/ToggleGroup.stories.tsx +42 -0
  158. package/toggle-group/ToggleGroup.test.js +1 -1
  159. package/toggle-group/types.d.ts +1 -1
  160. package/typography/Typography.d.ts +2 -2
  161. package/typography/Typography.js +14 -113
  162. package/typography/Typography.stories.tsx +1 -1
  163. package/useTheme.d.ts +1234 -1
  164. package/useTheme.js +1 -1
  165. package/useTranslatedLabels.d.ts +84 -1
  166. package/utils/BaseTypography.d.ts +21 -0
  167. package/utils/BaseTypography.js +108 -0
  168. package/utils/FocusLock.d.ts +13 -0
  169. package/utils/FocusLock.js +138 -0
  170. package/wizard/Wizard.js +2 -2
  171. package/wizard/Wizard.stories.tsx +20 -0
  172. package/wizard/Wizard.test.js +1 -1
  173. package/wizard/types.d.ts +5 -6
  174. /package/{tabs-nav → grid}/types.js +0 -0
  175. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
@@ -1,5 +1,10 @@
1
1
  /// <reference types="react" />
2
2
  declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
3
+ export declare type NavTabsContextProps = {
4
+ iconPosition: "top" | "left";
5
+ tabIndex: number;
6
+ focusedLabel: string;
7
+ };
3
8
  export declare type TabProps = {
4
9
  /**
5
10
  * Whether the tab is active or not.
@@ -26,11 +31,11 @@ export declare type TabProps = {
26
31
  */
27
32
  notificationNumber?: boolean | number;
28
33
  /**
29
- * Content of the tab.
34
+ * Contains one or more DxcNavTabs.Tab.
30
35
  */
31
36
  children: string;
32
37
  };
33
- export declare type NavTabsProps = {
38
+ declare type Props = {
34
39
  /**
35
40
  * Whether the icon should appear above or to the left of the label.
36
41
  */
@@ -44,10 +49,4 @@ export declare type NavTabsProps = {
44
49
  */
45
50
  children: React.ReactNode;
46
51
  };
47
- export declare type NavTabsContextProps = {
48
- iconPosition: "top" | "left";
49
- tabIndex: number;
50
- hasIcons: boolean;
51
- focusedLabel: string;
52
- };
53
- export {};
52
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -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": "0.0.0-64fdce7",
3
+ "version": "0.0.0-6501724",
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",
@@ -46,7 +46,7 @@ var DxcPaginator = function DxcPaginator(_ref) {
46
46
  itemsPerPageFunction = _ref.itemsPerPageFunction,
47
47
  _ref$tabIndex = _ref.tabIndex,
48
48
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
49
- var totalPages = Math.ceil(totalItems / itemsPerPage);
49
+ var totalPages = itemsPerPage > 0 && Math.ceil(totalItems / itemsPerPage);
50
50
  var currentPageInternal = currentPage === -1 ? totalPages : currentPage;
51
51
  var minItemsPerPage = currentPageInternal === 1 || currentPageInternal === 0 ? currentPageInternal : (currentPageInternal - 1) * itemsPerPage + 1;
52
52
  var maxItemsPerPage = minItemsPerPage - 1 + itemsPerPage > totalItems ? totalItems : minItemsPerPage - 1 + itemsPerPage;
@@ -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(),
@@ -2,12 +2,20 @@ import React from "react";
2
2
  import DxcPaginator from "./Paginator";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
8
  title: "Paginator",
8
9
  component: DxcPaginator,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ paginator: {
14
+ baseColor: "#f2f2f2",
15
+ fontColor: "#000000",
16
+ },
17
+ };
18
+
11
19
  export const Chromatic = () => (
12
20
  <>
13
21
  <ExampleContainer>
@@ -59,5 +67,21 @@ export const Chromatic = () => (
59
67
  showGoToPage
60
68
  />
61
69
  </ExampleContainer>
70
+ <Title title="Opinionated theme" theme="light" level={2} />
71
+ <ExampleContainer>
72
+ <HalstackProvider theme={opinionatedTheme}>
73
+ <ExampleContainer>
74
+ <Title title="Page change and items per page options" theme="light" level={4} />
75
+ <DxcPaginator
76
+ currentPage={1}
77
+ itemsPerPage={10}
78
+ totalItems={27}
79
+ onPageChange={() => {}}
80
+ itemsPerPageOptions={[5, 10, 15]}
81
+ showGoToPage
82
+ />
83
+ </ExampleContainer>
84
+ </HalstackProvider>
85
+ </ExampleContainer>
62
86
  </>
63
87
  );
@@ -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 _Paginator = _interopRequireDefault(require("./Paginator"));
15
+ var _Paginator = _interopRequireDefault(require("./Paginator.tsx"));
16
16
 
17
17
  // Mocking DOMRect for Radix Primitive Popover
18
18
  global.globalThis = global;
@@ -85,46 +85,37 @@ describe("Paginator component tests", function () {
85
85
  getByText = _render3.getByText;
86
86
 
87
87
  expect(getByText("Items per page:")).toBeTruthy();
88
- });
89
- test("Paginator renders with itemsPerPageOptions", function () {
90
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
91
- currentPage: 1,
92
- itemsPerPage: 10,
93
- totalItems: 20
94
- })),
95
- getByText = _render4.getByText;
96
-
97
88
  expect(getByText("1 to 10 of 20")).toBeTruthy();
98
89
  expect(getByText("Page: 1 of 2")).toBeTruthy();
99
90
  });
100
91
  test("Paginator renders with totalItems", function () {
101
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
92
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
102
93
  totalItems: 20
103
94
  })),
104
- getByText = _render5.getByText;
95
+ getByText = _render4.getByText;
105
96
 
106
97
  expect(getByText("1 to 5 of 20")).toBeTruthy();
107
98
  expect(getByText("Page: 1 of 4")).toBeTruthy();
108
99
  });
109
100
  test("Paginator renders with correct text in second page", function () {
110
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
101
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
111
102
  currentPage: 2,
112
103
  itemsPerPage: 10,
113
104
  totalItems: 20
114
105
  })),
115
- getByText = _render6.getByText;
106
+ getByText = _render5.getByText;
116
107
 
117
108
  expect(getByText("11 to 20 of 20")).toBeTruthy();
118
109
  expect(getByText("Page: 2 of 2")).toBeTruthy();
119
110
  });
120
111
  test("Paginator renders goToPage select", function () {
121
- var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
112
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
122
113
  currentPage: 2,
123
114
  showGoToPage: true,
124
115
  itemsPerPage: 10,
125
116
  totalItems: 20
126
117
  })),
127
- getByText = _render7.getByText;
118
+ getByText = _render6.getByText;
128
119
 
129
120
  expect(getByText("Go to page:")).toBeTruthy();
130
121
  });
@@ -135,16 +126,15 @@ describe("Paginator component tests", function () {
135
126
 
136
127
  window.HTMLElement.prototype.scrollTo = function () {};
137
128
 
138
- var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
129
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
139
130
  currentPage: 1,
140
131
  itemsPerPage: 10,
141
132
  totalItems: 27,
142
133
  showGoToPage: true,
143
134
  onPageChange: onClick
144
135
  })),
145
- getByText = _render8.getByText,
146
- getAllByRole = _render8.getAllByRole,
147
- getByRole = _render8.getByRole;
136
+ getByText = _render7.getByText,
137
+ getAllByRole = _render7.getAllByRole;
148
138
 
149
139
  var goToPageSelect = getAllByRole("combobox")[0];
150
140
  (0, _react2.act)(function () {
@@ -159,13 +149,13 @@ describe("Paginator component tests", function () {
159
149
  test("Call correct goToPageFunction", function () {
160
150
  var onClick = jest.fn();
161
151
 
162
- var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
152
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
163
153
  onPageChange: onClick,
164
154
  currentPage: 1,
165
155
  itemsPerPage: 10,
166
156
  totalItems: 20
167
157
  })),
168
- getAllByRole = _render9.getAllByRole;
158
+ getAllByRole = _render8.getAllByRole;
169
159
 
170
160
  var nextButton = getAllByRole("button")[2];
171
161
 
@@ -180,15 +170,15 @@ describe("Paginator component tests", function () {
180
170
 
181
171
  window.HTMLElement.prototype.scrollTo = function () {};
182
172
 
183
- var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
173
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
184
174
  currentPage: 1,
185
175
  itemsPerPage: 10,
186
176
  itemsPerPageOptions: [10, 15],
187
177
  itemsPerPageFunction: onClick,
188
178
  totalItems: 20
189
179
  })),
190
- getAllByText = _render10.getAllByText,
191
- getByText = _render10.getByText;
180
+ getAllByText = _render9.getAllByText,
181
+ getByText = _render9.getByText;
192
182
 
193
183
  var select = getAllByText("10")[0];
194
184
  (0, _react2.act)(function () {
@@ -203,13 +193,13 @@ describe("Paginator component tests", function () {
203
193
  test("Next button is disable in last page", function () {
204
194
  var onClick = jest.fn();
205
195
 
206
- var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
196
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
207
197
  onPageChange: onClick,
208
198
  currentPage: 2,
209
199
  itemsPerPage: 10,
210
200
  totalItems: 20
211
201
  })),
212
- getAllByRole = _render11.getAllByRole;
202
+ getAllByRole = _render10.getAllByRole;
213
203
 
214
204
  var nextButton = getAllByRole("button")[2];
215
205
  expect(nextButton.hasAttribute("disabled")).toBeTruthy();
@@ -221,13 +211,13 @@ describe("Paginator component tests", function () {
221
211
  test("Last button is disable in last page", function () {
222
212
  var onClick = jest.fn();
223
213
 
224
- var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
214
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
225
215
  onPageChange: onClick,
226
216
  currentPage: 2,
227
217
  itemsPerPage: 10,
228
218
  totalItems: 20
229
219
  })),
230
- getAllByRole = _render12.getAllByRole;
220
+ getAllByRole = _render11.getAllByRole;
231
221
 
232
222
  var lastButton = getAllByRole("button")[3];
233
223
  expect(lastButton.hasAttribute("disabled")).toBeTruthy();
@@ -239,13 +229,13 @@ describe("Paginator component tests", function () {
239
229
  test("First button is disable in first page", function () {
240
230
  var onClick = jest.fn();
241
231
 
242
- var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
232
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
243
233
  onPageChange: onClick,
244
234
  currentPage: 1,
245
235
  itemsPerPage: 10,
246
236
  totalItems: 20
247
237
  })),
248
- getAllByRole = _render13.getAllByRole;
238
+ getAllByRole = _render12.getAllByRole;
249
239
 
250
240
  var lastButton = getAllByRole("button")[0];
251
241
  expect(lastButton.hasAttribute("disabled")).toBeTruthy();
@@ -257,13 +247,13 @@ describe("Paginator component tests", function () {
257
247
  test("Previous button is disable in first page", function () {
258
248
  var onClick = jest.fn();
259
249
 
260
- var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
250
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
261
251
  onPageChange: onClick,
262
252
  currentPage: 1,
263
253
  itemsPerPage: 10,
264
254
  totalItems: 20
265
255
  })),
266
- getAllByRole = _render14.getAllByRole;
256
+ getAllByRole = _render13.getAllByRole;
267
257
 
268
258
  var lastButton = getAllByRole("button")[1];
269
259
  expect(lastButton.hasAttribute("disabled")).toBeTruthy();
@@ -275,13 +265,13 @@ describe("Paginator component tests", function () {
275
265
  test("Last and next buttons are disable in last page", function () {
276
266
  var onClick = jest.fn();
277
267
 
278
- var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
268
+ var _render14 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
279
269
  onPageChange: onClick,
280
270
  currentPage: 2,
281
271
  itemsPerPage: 10,
282
272
  totalItems: 20
283
273
  })),
284
- getAllByRole = _render15.getAllByRole;
274
+ getAllByRole = _render14.getAllByRole;
285
275
 
286
276
  var firstButton = getAllByRole("button")[0];
287
277
  var prevButton = getAllByRole("button")[1];
@@ -295,13 +285,13 @@ describe("Paginator component tests", function () {
295
285
  test("First and previous buttons are disable in first page", function () {
296
286
  var onClick = jest.fn();
297
287
 
298
- var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
288
+ var _render15 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
299
289
  onPageChange: onClick,
300
290
  currentPage: 1,
301
291
  itemsPerPage: 10,
302
292
  totalItems: 20
303
293
  })),
304
- getAllByRole = _render16.getAllByRole;
294
+ getAllByRole = _render15.getAllByRole;
305
295
 
306
296
  var firstButton = getAllByRole("button")[0];
307
297
  var prevButton = getAllByRole("button")[1];
@@ -312,4 +302,17 @@ describe("Paginator component tests", function () {
312
302
  expect(nextButton.hasAttribute("disabled")).toBeFalsy();
313
303
  expect(lastButton.hasAttribute("disabled")).toBeFalsy();
314
304
  });
305
+ test("itemsPerPage is 0 and showGoToPage is true", function () {
306
+ var _render16 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Paginator["default"], {
307
+ itemsPerPage: 0,
308
+ itemsPerPageOptions: [5, 10, 15],
309
+ totalItems: 27,
310
+ showGoToPage: true
311
+ })),
312
+ getByText = _render16.getByText,
313
+ getAllByRole = _render16.getAllByRole;
314
+
315
+ expect(getByText("Items per page:")).toBeTruthy();
316
+ expect(getAllByRole("combobox")).toBeTruthy();
317
+ });
315
318
  });
@@ -1,6 +1,5 @@
1
1
  import React from "react";
2
- declare type ParagraphPropsType = {
2
+ declare const DxcParagraph: ({ children }: {
3
3
  children: React.ReactNode;
4
- };
5
- declare const Paragraph: ({ children }: ParagraphPropsType) => JSX.Element;
6
- export default Paragraph;
4
+ }) => JSX.Element;
5
+ export default DxcParagraph;
@@ -11,21 +11,21 @@ exports["default"] = void 0;
11
11
 
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
 
14
- var _Typography = _interopRequireDefault(require("../typography/Typography"));
15
-
16
14
  var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
17
15
 
18
16
  var _useTheme = _interopRequireDefault(require("../useTheme"));
19
17
 
18
+ var _BaseTypography = _interopRequireDefault(require("../utils/BaseTypography"));
19
+
20
20
  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); }
21
21
 
22
22
  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; }
23
23
 
24
- var Paragraph = function Paragraph(_ref) {
24
+ var DxcParagraph = function DxcParagraph(_ref) {
25
25
  var children = _ref.children;
26
26
  var colorsTheme = (0, _useTheme["default"])();
27
27
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
28
- return /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
28
+ return /*#__PURE__*/_react["default"].createElement(_BaseTypography["default"], {
29
29
  as: "p",
30
30
  display: colorsTheme.paragraph.display,
31
31
  fontSize: colorsTheme.paragraph.fontSize,
@@ -34,5 +34,5 @@ var Paragraph = function Paragraph(_ref) {
34
34
  }, children);
35
35
  };
36
36
 
37
- var _default = Paragraph;
37
+ var _default = DxcParagraph;
38
38
  exports["default"] = _default;
@@ -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 _PasswordInput = _interopRequireDefault(require("./PasswordInput"));
15
+ var _PasswordInput = _interopRequireDefault(require("./PasswordInput.tsx"));
16
16
 
17
17
  describe("Password input component tests", function () {
18
18
  test("Password input renders with label", function () {
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
- import { Props } from "./types";
3
- declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, }: Props) => JSX.Element;
2
+ import ProgressBarPropsType from "./types";
3
+ declare const DxcProgressBar: ({ label, helperText, overlay, value, showValue, margin, }: ProgressBarPropsType) => JSX.Element;
4
4
  export default DxcProgressBar;
@@ -19,7 +19,7 @@ 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
24
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
@@ -87,7 +87,7 @@ var DxcProgressBar = function DxcProgressBar(_ref) {
87
87
  var BackgroundProgressBar = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n display: flex;\n flex-wrap: wrap;\n min-width: 100px;\n width: 100%;\n"])), function (_ref2) {
88
88
  var overlay = _ref2.overlay,
89
89
  theme = _ref2.theme;
90
- return overlay ? "background-color: ".concat(theme.overlayColor, ";\n opacity: 0.8;\n width: 100%;\n justify-content: center;\n height: 100vh;\n align-items: center;\n max-width: 100%;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1300;") : "background-color: \"transparent\";";
90
+ return overlay ? "background-color: ".concat(theme.overlayColor, ";\n width: 100%;\n justify-content: center;\n height: 100vh;\n align-items: center;\n max-width: 100%;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1300;") : "background-color: \"transparent\";";
91
91
  });
92
92
 
93
93
  var ProgressBarContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n z-index: ", ";\n width: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
@@ -119,7 +119,7 @@ var ProgressBarLabel = _styledComponents["default"].div(_templateObject4 || (_te
119
119
  }, function (props) {
120
120
  return props.theme.labelFontTextTransform;
121
121
  }, function (props) {
122
- return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.labelFontColor;
122
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.labelFontColor;
123
123
  });
124
124
 
125
125
  var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n display: ", ";\n flex-shrink: 0;\n"])), function (props) {
@@ -133,13 +133,13 @@ var ProgressBarProgress = _styledComponents["default"].div(_templateObject5 || (
133
133
  }, function (props) {
134
134
  return props.theme.valueFontTextTransform;
135
135
  }, function (props) {
136
- return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.valueFontColor;
136
+ return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.valueFontColor;
137
137
  }, function (props) {
138
138
  return props.value !== undefined && props.value !== null && props.showValue === true && "block" || "none";
139
139
  });
140
140
 
141
141
  var HelperText = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n line-height: 1.5em;\n"])), function (props) {
142
- return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ? "#FFFFFF" : props.theme.helperTextFontColor;
142
+ return props.backgroundType === "dark" ? props.theme.helperTextFontColorOnDark : props.overlay === true ? props.theme.overlayFontColor : props.theme.helperTextFontColor;
143
143
  }, function (props) {
144
144
  return props.theme.helperTextFontFamily;
145
145
  }, function (props) {
@@ -2,12 +2,23 @@ import React from "react";
2
2
  import DxcProgressBar from "./ProgressBar";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
8
  title: "ProgressBar",
8
9
  component: DxcProgressBar,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ progressBar: {
14
+ accentColor: "#5f249f",
15
+ baseColor: "#e6e6e6",
16
+ fontColor: "#000000",
17
+ overlayColor: "#000000b3",
18
+ overlayFontColor: "#ffffff",
19
+ },
20
+ };
21
+
11
22
  export const Chromatic = () => (
12
23
  <>
13
24
  <ExampleContainer>
@@ -46,15 +57,37 @@ export const Chromatic = () => (
46
57
  <DxcProgressBar label="Margin xlarge" margin="xlarge" value={50} showValue />
47
58
  </ExampleContainer>
48
59
  <ExampleContainer>
49
- <Title title="XxLarge margin" theme="light" level={4} />
60
+ <Title title="Xxlarge margin" theme="light" level={4} />
50
61
  <DxcProgressBar label="Margin xxlarge" margin="xxlarge" value={50} showValue />
51
62
  </ExampleContainer>
63
+ <Title title="Opinionated theme" theme="light" level={2} />
64
+ <ExampleContainer>
65
+ <Title title="Label and helper text" theme="light" level={4} />
66
+ <HalstackProvider theme={opinionatedTheme}>
67
+ <DxcProgressBar label="Loading..." helperText="Helper text" value={24} showValue />
68
+ </HalstackProvider>
69
+ </ExampleContainer>
70
+ <ExampleContainer>
71
+ <Title title="Without default value" theme="light" level={4} />
72
+ <HalstackProvider theme={opinionatedTheme}>
73
+ <DxcProgressBar label="Loading..." helperText="Helper text" showValue />
74
+ </HalstackProvider>
75
+ </ExampleContainer>
52
76
  </>
53
77
  );
54
78
 
55
79
  export const ProgressBarOverlay = () => (
56
80
  <ExampleContainer>
57
81
  <Title title="Overlay" theme="dark" level={4} />
58
- <DxcProgressBar label="Overlay" helperText="Helper text" overlay={true} showValue value={50} />
82
+ <DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
83
+ </ExampleContainer>
84
+ );
85
+
86
+ export const ProgressBarOverlayOpinionated = () => (
87
+ <ExampleContainer>
88
+ <Title title="Overlay" theme="dark" level={4} />
89
+ <HalstackProvider theme={opinionatedTheme}>
90
+ <DxcProgressBar label="Overlay" helperText="Helper text" overlay showValue value={50} />
91
+ </HalstackProvider>
59
92
  </ExampleContainer>
60
93
  );
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _ProgressBar = _interopRequireDefault(require("./ProgressBar"));
9
+ var _ProgressBar = _interopRequireDefault(require("./ProgressBar.tsx"));
10
10
 
11
11
  describe("ProgressBar component tests", function () {
12
12
  test("ProgressBar renders with label and helperText", function () {
@@ -1,11 +1,11 @@
1
- export declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- export declare type Size = {
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Size = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- export declare type Props = {
8
+ declare type Props = {
9
9
  /**
10
10
  * Text to be placed above the progress bar.
11
11
  */
@@ -34,3 +34,4 @@ export declare type Props = {
34
34
  */
35
35
  margin?: Space | Size;
36
36
  };
37
+ export default Props;
@@ -5,12 +5,20 @@ import DxcHeading from "../heading/Heading";
5
5
  import DxcParagraph from "../paragraph/Paragraph";
6
6
  import Title from "../../.storybook/components/Title";
7
7
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
8
+ import { HalstackProvider } from "../HalstackContext";
8
9
 
9
10
  export default {
10
11
  title: "QuickNav",
11
12
  component: DxcQuickNav,
12
13
  };
13
14
 
15
+ const opinionatedTheme = {
16
+ quickNav: {
17
+ fontColor: "#666666",
18
+ accentColor: "#9a6bb2",
19
+ },
20
+ };
21
+
14
22
  const defaultLinks = [
15
23
  {
16
24
  label: "Overview",
@@ -315,6 +323,12 @@ export const Chromatic = () => (
315
323
  </QuickNavContainer>
316
324
  </Container>
317
325
  </ExampleContainer>
326
+ <Title title="Opinionated theme" level={2} />
327
+ <ExampleContainer>
328
+ <HalstackProvider theme={opinionatedTheme}>
329
+ <DxcQuickNav links={defaultLinks} />
330
+ </HalstackProvider>
331
+ </ExampleContainer>
318
332
  </>
319
333
  );
320
334