@dxc-technology/halstack-react 0.0.0-9bd9511 → 0.0.0-9c20370

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 (213) hide show
  1. package/BackgroundColorContext.d.ts +3 -3
  2. package/BackgroundColorContext.js +12 -2
  3. package/HalstackContext.d.ts +1330 -7
  4. package/HalstackContext.js +84 -67
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +74 -55
  7. package/accordion/Accordion.stories.tsx +3 -101
  8. package/accordion/Accordion.test.js +34 -19
  9. package/accordion/types.d.ts +4 -16
  10. package/accordion-group/AccordionGroup.d.ts +4 -3
  11. package/accordion-group/AccordionGroup.js +49 -42
  12. package/accordion-group/AccordionGroup.stories.tsx +77 -76
  13. package/accordion-group/AccordionGroup.test.js +62 -54
  14. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  15. package/accordion-group/AccordionGroupAccordion.js +43 -0
  16. package/accordion-group/types.d.ts +6 -18
  17. package/alert/Alert.js +47 -20
  18. package/alert/Alert.test.js +46 -29
  19. package/alert/types.d.ts +3 -3
  20. package/badge/Badge.js +14 -2
  21. package/badge/types.d.ts +1 -1
  22. package/bleed/Bleed.js +21 -13
  23. package/bleed/Bleed.stories.tsx +1 -0
  24. package/bleed/types.d.ts +2 -2
  25. package/box/Box.d.ts +1 -1
  26. package/box/Box.js +33 -33
  27. package/box/Box.stories.tsx +25 -53
  28. package/box/Box.test.js +7 -2
  29. package/box/types.d.ts +3 -15
  30. package/bulleted-list/BulletedList.js +36 -9
  31. package/bulleted-list/BulletedList.stories.tsx +7 -1
  32. package/bulleted-list/types.d.ts +32 -5
  33. package/button/Button.d.ts +1 -1
  34. package/button/Button.js +83 -71
  35. package/button/Button.stories.tsx +4 -4
  36. package/button/Button.test.js +28 -8
  37. package/button/types.d.ts +8 -4
  38. package/card/Card.d.ts +1 -1
  39. package/card/Card.js +67 -62
  40. package/card/Card.stories.tsx +12 -42
  41. package/card/Card.test.js +22 -11
  42. package/card/types.d.ts +4 -10
  43. package/checkbox/Checkbox.js +71 -27
  44. package/checkbox/Checkbox.test.js +60 -33
  45. package/checkbox/types.d.ts +4 -4
  46. package/chip/Chip.js +51 -48
  47. package/chip/Chip.stories.tsx +25 -17
  48. package/chip/Chip.test.js +29 -17
  49. package/chip/types.d.ts +4 -4
  50. package/common/OpenSans.css +68 -80
  51. package/common/coreTokens.d.ts +146 -0
  52. package/common/coreTokens.js +167 -0
  53. package/common/utils.d.ts +1 -0
  54. package/common/utils.js +8 -3
  55. package/common/variables.d.ts +226 -175
  56. package/common/variables.js +956 -1133
  57. package/date-input/Calendar.js +55 -12
  58. package/date-input/DateInput.js +82 -35
  59. package/date-input/DateInput.test.js +351 -164
  60. package/date-input/DatePicker.js +38 -8
  61. package/date-input/Icons.js +12 -0
  62. package/date-input/YearPicker.js +30 -5
  63. package/date-input/types.d.ts +7 -7
  64. package/dialog/Dialog.d.ts +1 -1
  65. package/dialog/Dialog.js +83 -86
  66. package/dialog/Dialog.stories.tsx +127 -221
  67. package/dialog/Dialog.test.js +331 -18
  68. package/dialog/types.d.ts +1 -14
  69. package/dropdown/Dropdown.js +86 -32
  70. package/dropdown/Dropdown.test.js +211 -104
  71. package/dropdown/DropdownMenu.js +22 -8
  72. package/dropdown/DropdownMenuItem.js +15 -6
  73. package/dropdown/types.d.ts +8 -8
  74. package/file-input/FileInput.js +218 -134
  75. package/file-input/FileInput.test.js +343 -331
  76. package/file-input/FileItem.js +39 -12
  77. package/file-input/types.d.ts +10 -10
  78. package/flex/Flex.js +39 -25
  79. package/flex/Flex.stories.tsx +35 -26
  80. package/flex/types.d.ts +74 -9
  81. package/footer/Footer.d.ts +1 -1
  82. package/footer/Footer.js +80 -68
  83. package/footer/Footer.stories.tsx +12 -89
  84. package/footer/Footer.test.js +47 -40
  85. package/footer/Icons.js +4 -0
  86. package/footer/types.d.ts +15 -17
  87. package/grid/Grid.d.ts +7 -0
  88. package/grid/Grid.js +91 -0
  89. package/grid/Grid.stories.tsx +219 -0
  90. package/grid/types.d.ts +115 -0
  91. package/header/Header.d.ts +4 -3
  92. package/header/Header.js +72 -55
  93. package/header/Header.stories.tsx +7 -71
  94. package/header/Header.test.js +26 -13
  95. package/header/Icons.js +4 -0
  96. package/header/types.d.ts +2 -16
  97. package/heading/Heading.js +28 -7
  98. package/heading/Heading.test.js +88 -71
  99. package/heading/types.d.ts +3 -3
  100. package/inset/Inset.js +21 -13
  101. package/inset/Inset.stories.tsx +2 -1
  102. package/inset/types.d.ts +2 -2
  103. package/layout/ApplicationLayout.d.ts +5 -5
  104. package/layout/ApplicationLayout.js +57 -15
  105. package/layout/Icons.js +10 -0
  106. package/layout/SidenavContext.d.ts +1 -1
  107. package/layout/SidenavContext.js +4 -0
  108. package/layout/types.d.ts +5 -6
  109. package/link/Link.js +41 -21
  110. package/link/Link.test.js +42 -26
  111. package/link/types.d.ts +4 -4
  112. package/main.d.ts +2 -1
  113. package/main.js +55 -0
  114. package/nav-tabs/NavTabs.d.ts +2 -2
  115. package/nav-tabs/NavTabs.js +43 -16
  116. package/nav-tabs/NavTabs.stories.tsx +14 -0
  117. package/nav-tabs/NavTabs.test.js +44 -37
  118. package/nav-tabs/Tab.js +71 -45
  119. package/nav-tabs/types.d.ts +10 -11
  120. package/number-input/NumberInput.js +30 -20
  121. package/number-input/NumberInput.test.js +249 -113
  122. package/number-input/NumberInputContext.js +5 -0
  123. package/number-input/numberInputContextTypes.d.ts +1 -1
  124. package/number-input/types.d.ts +4 -4
  125. package/package.json +7 -7
  126. package/paginator/Icons.js +10 -0
  127. package/paginator/Paginator.js +39 -17
  128. package/paginator/Paginator.test.js +156 -104
  129. package/paginator/types.d.ts +1 -1
  130. package/paragraph/Paragraph.d.ts +3 -4
  131. package/paragraph/Paragraph.js +18 -8
  132. package/password-input/PasswordInput.js +51 -22
  133. package/password-input/PasswordInput.test.js +94 -51
  134. package/password-input/types.d.ts +4 -4
  135. package/progress-bar/ProgressBar.d.ts +2 -2
  136. package/progress-bar/ProgressBar.js +39 -14
  137. package/progress-bar/ProgressBar.test.js +53 -36
  138. package/progress-bar/types.d.ts +4 -3
  139. package/quick-nav/QuickNav.js +24 -2
  140. package/quick-nav/types.d.ts +2 -2
  141. package/radio-group/Radio.js +53 -22
  142. package/radio-group/RadioGroup.js +84 -41
  143. package/radio-group/RadioGroup.test.js +288 -186
  144. package/radio-group/types.d.ts +4 -4
  145. package/resultsetTable/Icons.js +3 -0
  146. package/resultsetTable/ResultsetTable.js +56 -21
  147. package/resultsetTable/ResultsetTable.test.js +75 -42
  148. package/resultsetTable/types.d.ts +5 -5
  149. package/select/Icons.js +3 -0
  150. package/select/Listbox.js +35 -10
  151. package/select/Option.js +24 -8
  152. package/select/Select.js +143 -56
  153. package/select/Select.test.js +839 -456
  154. package/select/types.d.ts +12 -12
  155. package/sidenav/Icons.d.ts +7 -0
  156. package/sidenav/Icons.js +51 -0
  157. package/sidenav/Sidenav.d.ts +2 -2
  158. package/sidenav/Sidenav.js +116 -104
  159. package/sidenav/Sidenav.stories.tsx +60 -60
  160. package/sidenav/Sidenav.test.js +10 -3
  161. package/sidenav/types.d.ts +26 -23
  162. package/slider/Slider.js +84 -38
  163. package/slider/Slider.test.js +104 -76
  164. package/slider/types.d.ts +4 -4
  165. package/spinner/Spinner.js +51 -28
  166. package/spinner/Spinner.stories.jsx +28 -28
  167. package/spinner/Spinner.test.js +35 -26
  168. package/spinner/types.d.ts +3 -3
  169. package/switch/Switch.js +66 -24
  170. package/switch/Switch.test.js +97 -52
  171. package/switch/types.d.ts +4 -4
  172. package/table/Table.js +22 -4
  173. package/table/Table.test.js +7 -2
  174. package/table/types.d.ts +3 -3
  175. package/tabs/Tab.js +39 -22
  176. package/tabs/Tabs.js +131 -62
  177. package/tabs/Tabs.test.js +122 -67
  178. package/tabs/types.d.ts +8 -8
  179. package/tag/Tag.js +54 -27
  180. package/tag/Tag.test.js +31 -20
  181. package/tag/types.d.ts +7 -7
  182. package/text-input/Icons.js +3 -0
  183. package/text-input/Suggestion.js +24 -8
  184. package/text-input/Suggestions.js +36 -11
  185. package/text-input/TextInput.js +144 -59
  186. package/text-input/TextInput.stories.tsx +1 -1
  187. package/text-input/TextInput.test.js +858 -539
  188. package/text-input/types.d.ts +9 -9
  189. package/textarea/Textarea.js +73 -38
  190. package/textarea/Textarea.test.js +173 -98
  191. package/textarea/types.d.ts +4 -4
  192. package/toggle-group/ToggleGroup.d.ts +2 -2
  193. package/toggle-group/ToggleGroup.js +59 -21
  194. package/toggle-group/ToggleGroup.test.js +72 -40
  195. package/toggle-group/types.d.ts +11 -11
  196. package/typography/Typography.d.ts +2 -2
  197. package/typography/Typography.js +23 -110
  198. package/typography/Typography.stories.tsx +1 -1
  199. package/typography/types.d.ts +1 -1
  200. package/useTheme.d.ts +1234 -1
  201. package/useTheme.js +6 -0
  202. package/useTranslatedLabels.d.ts +84 -2
  203. package/useTranslatedLabels.js +5 -0
  204. package/utils/BaseTypography.d.ts +21 -0
  205. package/utils/BaseTypography.js +108 -0
  206. package/utils/FocusLock.d.ts +13 -0
  207. package/utils/FocusLock.js +138 -0
  208. package/wizard/Wizard.js +47 -13
  209. package/wizard/Wizard.test.js +81 -54
  210. package/wizard/types.d.ts +7 -8
  211. package/card/ice-cream.jpg +0 -0
  212. package/translatedLabelsType.d.ts +0 -82
  213. /package/{translatedLabelsType.js → grid/types.js} +0 -0
@@ -1,20 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  var _react = _interopRequireDefault(require("react"));
6
+
5
7
  var _react2 = require("@testing-library/react");
8
+
6
9
  var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
7
- var _Slider = _interopRequireDefault(require("./Slider"));
10
+
11
+ var _Slider = _interopRequireDefault(require("./Slider.tsx"));
12
+
8
13
  describe("Slider component tests", function () {
9
14
  test("Slider renders with correct text and label id", function () {
10
15
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
11
- label: "label",
12
- minValue: 0,
13
- maxValue: 100,
14
- showLimitsValues: true
15
- })),
16
- getByText = _render.getByText,
17
- getByRole = _render.getByRole;
16
+ label: "label",
17
+ minValue: 0,
18
+ maxValue: 100,
19
+ showLimitsValues: true
20
+ })),
21
+ getByText = _render.getByText,
22
+ getByRole = _render.getByRole;
23
+
18
24
  expect(getByText("0")).toBeTruthy();
19
25
  expect(getByText("100")).toBeTruthy();
20
26
  var sliderId = getByText("label").getAttribute("id");
@@ -23,13 +29,14 @@ describe("Slider component tests", function () {
23
29
  });
24
30
  test("Slider renders with correct initial value when it is uncontrolled", function () {
25
31
  var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
26
- defaultValue: 30,
27
- minValue: 0,
28
- maxValue: 100,
29
- showLimitsValues: true,
30
- showInput: true
31
- })),
32
- getByRole = _render2.getByRole;
32
+ defaultValue: 30,
33
+ minValue: 0,
34
+ maxValue: 100,
35
+ showLimitsValues: true,
36
+ showInput: true
37
+ })),
38
+ getByRole = _render2.getByRole;
39
+
33
40
  var slider = getByRole("slider");
34
41
  var input = getByRole("textbox");
35
42
  expect(slider.getAttribute("aria-valuenow")).toBe("30");
@@ -37,38 +44,44 @@ describe("Slider component tests", function () {
37
44
  });
38
45
  test("Slider correct limit values", function () {
39
46
  var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
40
- defaultValue: 125,
41
- minValue: 30,
42
- maxValue: 125,
43
- showLimitsValues: true
44
- })),
45
- getByRole = _render3.getByRole,
46
- getByText = _render3.getByText;
47
+ defaultValue: 125,
48
+ minValue: 30,
49
+ maxValue: 125,
50
+ showLimitsValues: true
51
+ })),
52
+ getByRole = _render3.getByRole,
53
+ getByText = _render3.getByText;
54
+
47
55
  var slider = getByRole("slider");
48
56
  expect(slider.getAttribute("aria-valuemin")).toBe("30");
49
57
  expect(slider.getAttribute("aria-valuemax")).toBe("125");
58
+
50
59
  _userEvent["default"].tab();
60
+
51
61
  _react2.fireEvent.keyDown(slider, {
52
62
  key: "ArrowRight",
53
63
  code: "ArrowRight",
54
64
  keyCode: 39,
55
65
  charCode: 39
56
66
  });
67
+
57
68
  expect(slider.getAttribute("aria-valuenow")).toBe("125");
58
69
  expect(getByText("30")).toBeTruthy();
59
70
  expect(getByText("125")).toBeTruthy();
60
71
  });
61
72
  test("Calls correct function onChange in controlled slider", function () {
62
73
  var onChange = jest.fn();
74
+
63
75
  var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
64
- minValue: 0,
65
- maxValue: 100,
66
- onChange: onChange,
67
- showLimitsValues: true,
68
- value: 13,
69
- showInput: true
70
- })),
71
- getByRole = _render4.getByRole;
76
+ minValue: 0,
77
+ maxValue: 100,
78
+ onChange: onChange,
79
+ showLimitsValues: true,
80
+ value: 13,
81
+ showInput: true
82
+ })),
83
+ getByRole = _render4.getByRole;
84
+
72
85
  expect(getByRole("slider").getAttribute("aria-valuenow")).toBe("13");
73
86
  expect(getByRole("textbox").value).toBe("13");
74
87
  (0, _react2.act)(function () {
@@ -84,14 +97,16 @@ describe("Slider component tests", function () {
84
97
  });
85
98
  test("Calls correct function onChange in uncontrolled slider", function () {
86
99
  var onChange = jest.fn();
100
+
87
101
  var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
88
- minValue: 0,
89
- maxValue: 100,
90
- onChange: onChange,
91
- showLimitsValues: true,
92
- showInput: true
93
- })),
94
- getByRole = _render5.getByRole;
102
+ minValue: 0,
103
+ maxValue: 100,
104
+ onChange: onChange,
105
+ showLimitsValues: true,
106
+ showInput: true
107
+ })),
108
+ getByRole = _render5.getByRole;
109
+
95
110
  (0, _react2.act)(function () {
96
111
  _react2.fireEvent.change(getByRole("textbox"), {
97
112
  target: {
@@ -105,16 +120,18 @@ describe("Slider component tests", function () {
105
120
  });
106
121
  test("Disabled slider have disabled input and slider", function () {
107
122
  var onChange = jest.fn();
123
+
108
124
  var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
109
- minValue: 0,
110
- maxValue: 100,
111
- onChange: onChange,
112
- showLimitsValues: true,
113
- disabled: true,
114
- showInput: true,
115
- value: 13
116
- })),
117
- getByRole = _render6.getByRole;
125
+ minValue: 0,
126
+ maxValue: 100,
127
+ onChange: onChange,
128
+ showLimitsValues: true,
129
+ disabled: true,
130
+ showInput: true,
131
+ value: 13
132
+ })),
133
+ getByRole = _render6.getByRole;
134
+
118
135
  (0, _react2.act)(function () {
119
136
  _react2.fireEvent.change(getByRole("textbox"), {
120
137
  target: {
@@ -128,13 +145,15 @@ describe("Slider component tests", function () {
128
145
  });
129
146
  test("Calls correct function onDragEnd when it is uncontrolled", function () {
130
147
  var onDragEnd = jest.fn();
148
+
131
149
  var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
132
- minValue: 0,
133
- maxValue: 150,
134
- onDragEnd: onDragEnd,
135
- showInput: true
136
- })),
137
- getByRole = _render7.getByRole;
150
+ minValue: 0,
151
+ maxValue: 150,
152
+ onDragEnd: onDragEnd,
153
+ showInput: true
154
+ })),
155
+ getByRole = _render7.getByRole;
156
+
138
157
  var slider = getByRole("slider");
139
158
  (0, _react2.act)(function () {
140
159
  _react2.fireEvent.mouseDown(slider);
@@ -150,14 +169,16 @@ describe("Slider component tests", function () {
150
169
  });
151
170
  test("Calls correct function onDragEnd when it is controlled", function () {
152
171
  var onDragEnd = jest.fn();
172
+
153
173
  var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
154
- minValue: 0,
155
- maxValue: 150,
156
- value: 50,
157
- onDragEnd: onDragEnd,
158
- showInput: true
159
- })),
160
- getByRole = _render8.getByRole;
174
+ minValue: 0,
175
+ maxValue: 150,
176
+ value: 50,
177
+ onDragEnd: onDragEnd,
178
+ showInput: true
179
+ })),
180
+ getByRole = _render8.getByRole;
181
+
161
182
  var slider = getByRole("slider");
162
183
  (0, _react2.act)(function () {
163
184
  _react2.fireEvent.mouseDown(slider);
@@ -176,39 +197,46 @@ describe("Slider component tests", function () {
176
197
  var labelFormatCallback = jest.fn(function (x) {
177
198
  return "".concat(x, "$");
178
199
  });
200
+
179
201
  var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
180
- minValue: 0,
181
- maxValue: 100,
182
- showLimitsValues: true,
183
- showInput: true,
184
- value: 25,
185
- labelFormatCallback: labelFormatCallback
186
- })),
187
- getByText = _render9.getByText;
202
+ minValue: 0,
203
+ maxValue: 100,
204
+ showLimitsValues: true,
205
+ showInput: true,
206
+ value: 25,
207
+ labelFormatCallback: labelFormatCallback
208
+ })),
209
+ getByText = _render9.getByText;
210
+
188
211
  expect(getByText("0$")).toBeTruthy();
189
212
  expect(getByText("100$")).toBeTruthy();
190
213
  expect(labelFormatCallback).toHaveBeenCalledTimes(2);
191
214
  });
192
215
  test("Change value correctly to 0 from external function", function () {
193
216
  var onChange = jest.fn();
217
+
194
218
  var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
195
- minValue: 0,
196
- maxValue: 100,
197
- onChange: onChange,
198
- showLimitsValues: true,
199
- value: 13,
200
- showInput: true
201
- })),
202
- rerender = _render10.rerender,
203
- getByRole = _render10.getByRole;
219
+ minValue: 0,
220
+ maxValue: 100,
221
+ onChange: onChange,
222
+ showLimitsValues: true,
223
+ value: 13,
224
+ showInput: true
225
+ })),
226
+ rerender = _render10.rerender,
227
+ getByRole = _render10.getByRole;
228
+
204
229
  var slider = getByRole("slider");
230
+
205
231
  _userEvent["default"].tab();
232
+
206
233
  _react2.fireEvent.keyDown(slider, {
207
234
  key: "ArrowRight",
208
235
  code: "ArrowRight",
209
236
  keyCode: 39,
210
237
  charCode: 39
211
238
  });
239
+
212
240
  rerender( /*#__PURE__*/_react["default"].createElement(_Slider["default"], {
213
241
  minValue: 0,
214
242
  maxValue: 100,
package/slider/types.d.ts CHANGED
@@ -1,11 +1,11 @@
1
- export type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- export type Margin = {
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Margin = {
3
3
  top?: Space;
4
4
  bottom?: Space;
5
5
  left?: Space;
6
6
  right?: Space;
7
7
  };
8
- type Props = {
8
+ declare type Props = {
9
9
  /**
10
10
  * Text to be placed above the slider.
11
11
  */
@@ -82,5 +82,5 @@ type Props = {
82
82
  /**
83
83
  * Reference to the component.
84
84
  */
85
- export type RefType = HTMLDivElement;
85
+ export declare type RefType = HTMLDivElement;
86
86
  export default Props;
@@ -1,43 +1,53 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
10
  exports["default"] = void 0;
11
+
9
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
10
14
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
11
16
  var _react = _interopRequireWildcard(require("react"));
17
+
12
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
+
13
20
  var _variables = require("../common/variables");
21
+
14
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
+
15
24
  var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
25
+
16
26
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
27
+
17
28
  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); }
29
+
18
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
+
19
32
  var DxcSpinner = function DxcSpinner(_ref) {
20
33
  var _ref$label = _ref.label,
21
- label = _ref$label === void 0 ? "" : _ref$label,
22
- value = _ref.value,
23
- _ref$showValue = _ref.showValue,
24
- showValue = _ref$showValue === void 0 ? false : _ref$showValue,
25
- _ref$mode = _ref.mode,
26
- mode = _ref$mode === void 0 ? "large" : _ref$mode,
27
- margin = _ref.margin;
34
+ label = _ref$label === void 0 ? "" : _ref$label,
35
+ value = _ref.value,
36
+ _ref$showValue = _ref.showValue,
37
+ showValue = _ref$showValue === void 0 ? false : _ref$showValue,
38
+ _ref$mode = _ref.mode,
39
+ mode = _ref$mode === void 0 ? "large" : _ref$mode,
40
+ margin = _ref.margin;
28
41
  var colorsTheme = (0, _useTheme["default"])();
29
42
  var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
30
43
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
31
- theme: colorsTheme["spinner"]
44
+ theme: colorsTheme.spinner
32
45
  }, /*#__PURE__*/_react["default"].createElement(DXCSpinner, {
33
46
  margin: margin,
34
47
  mode: mode
35
48
  }, /*#__PURE__*/_react["default"].createElement(SpinnerContainer, {
36
- backgroundType: backgroundType,
37
- mode: mode
38
- }, mode === "overlay" && /*#__PURE__*/_react["default"].createElement(BackOverlay, null), /*#__PURE__*/_react["default"].createElement(BackgroundSpinner, {
39
49
  mode: mode
40
- }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGBackground, {
50
+ }, mode === "overlay" && /*#__PURE__*/_react["default"].createElement(BackOverlay, null), /*#__PURE__*/_react["default"].createElement(BackgroundSpinner, null, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGBackground, {
41
51
  viewBox: "0 0 140 140"
42
52
  }, /*#__PURE__*/_react["default"].createElement(CircleBackground, {
43
53
  cx: "70",
@@ -52,8 +62,7 @@ var DxcSpinner = function DxcSpinner(_ref) {
52
62
  r: "6",
53
63
  mode: mode
54
64
  }))), value >= 0 && value <= 100 ? /*#__PURE__*/_react["default"].createElement(Spinner, {
55
- role: "progressbar",
56
- mode: mode
65
+ role: "progressbar"
57
66
  }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
58
67
  viewBox: "0 0 140 140",
59
68
  isDeterminated: true
@@ -77,8 +86,7 @@ var DxcSpinner = function DxcSpinner(_ref) {
77
86
  isDeterminated: true,
78
87
  value: value
79
88
  }))) : /*#__PURE__*/_react["default"].createElement(Spinner, {
80
- role: "progressbar",
81
- mode: mode
89
+ role: "progressbar"
82
90
  }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
83
91
  viewBox: "0 0 140 140",
84
92
  isDeterminated: false
@@ -88,7 +96,8 @@ var DxcSpinner = function DxcSpinner(_ref) {
88
96
  r: "65",
89
97
  backgroundType: backgroundType,
90
98
  mode: mode,
91
- isDeterminated: false
99
+ isDeterminated: false,
100
+ value: value
92
101
  })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
93
102
  viewBox: "0 0 16 16",
94
103
  isDeterminated: false
@@ -98,27 +107,29 @@ var DxcSpinner = function DxcSpinner(_ref) {
98
107
  r: "6",
99
108
  backgroundType: backgroundType,
100
109
  mode: mode,
101
- isDeterminated: false
102
- }))), mode !== "small" && /*#__PURE__*/_react["default"].createElement(LabelsContainer, {
103
- label: label,
104
- value: value,
105
- showValue: showValue
106
- }, /*#__PURE__*/_react["default"].createElement(SpinnerLabel, {
110
+ isDeterminated: false,
111
+ value: value
112
+ }))), mode !== "small" && /*#__PURE__*/_react["default"].createElement(LabelsContainer, null, /*#__PURE__*/_react["default"].createElement(SpinnerLabel, {
107
113
  backgroundType: backgroundType,
108
114
  mode: mode
109
115
  }, label), (value || value === 0) && showValue && /*#__PURE__*/_react["default"].createElement(SpinnerProgress, {
116
+ value: value,
110
117
  backgroundType: backgroundType,
111
118
  mode: mode,
112
119
  showValue: showValue
113
120
  }, value, "%")))));
114
121
  };
115
- var determinatedValue = function determinatedValue(props, strokeDashArray) {
122
+
123
+ var determinatedValue = function determinatedValue(value, strokeDashArray) {
116
124
  var val = 0;
117
- if (props.value >= 0 && props.value <= 100) {
118
- val = strokeDashArray * (1 - props.value / 100);
125
+
126
+ if (value >= 0 && value <= 100) {
127
+ val = strokeDashArray * (1 - value / 100);
119
128
  }
129
+
120
130
  return val;
121
131
  };
132
+
122
133
  var DXCSpinner = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n display: ", ";\n position: ", ";\n top: ", ";\n left: ", ";\n justify-content: ", ";\n align-items: ", ";\n z-index: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
123
134
  return props.mode === "overlay" ? "100vh" : "";
124
135
  }, function (props) {
@@ -148,18 +159,23 @@ var DXCSpinner = _styledComponents["default"].div(_templateObject || (_templateO
148
159
  }, function (props) {
149
160
  return props.mode != "overlay" ? props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "" : "";
150
161
  });
162
+
151
163
  var SpinnerContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n align-items: center;\n display: flex;\n height: ", ";\n width: ", ";\n justify-content: center;\n position: relative;\n background-color: transparent;\n\n @keyframes spinner-svg {\n 0% {\n transform: rotateZ(0deg);\n }\n 100% {\n transform: rotateZ(360deg);\n }\n }\n @keyframes svg-circle-large {\n 0% {\n stroke-dashoffset: 400;\n transform: rotate(0);\n }\n\n 50% {\n stroke-dashoffset: 75;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 400;\n transform: rotate(360deg);\n }\n }\n @keyframes svg-circle-small {\n 0% {\n stroke-dashoffset: 35;\n transform: rotate(0);\n }\n\n 50% {\n stroke-dashoffset: 8;\n transform: rotate(45deg);\n }\n\n 100% {\n stroke-dashoffset: 35;\n transform: rotate(360deg);\n }\n }\n"])), function (props) {
152
164
  return props.mode === "small" ? "16px" : "140px";
153
165
  }, function (props) {
154
166
  return props.mode === "small" ? "16px" : "140px";
155
167
  });
168
+
156
169
  var BackOverlay = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100vw;\n height: 100vh;\n opacity: 1;\n transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;\n position: fixed;\n top: 0;\n left: 0;\n background-color: ", ";\n opacity: ", ";\n"])), function (props) {
157
170
  return "".concat(props.theme.overlayBackgroundColor);
158
171
  }, function (props) {
159
172
  return "".concat(props.theme.overlayOpacity);
160
173
  });
174
+
161
175
  var BackgroundSpinner = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: absolute;\n"])));
176
+
162
177
  var SVGBackground = _styledComponents["default"].svg(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n"])));
178
+
163
179
  var CircleBackground = _styledComponents["default"].circle(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n animation: none;\n fill: transparent;\n stroke: ", ";\n stroke-dasharray: ", ";\n stroke-linecap: initial;\n stroke-width: ", ";\n transform-origin: 50% 50%;\n vector-effect: non-scaling-stroke;\n"])), function (props) {
164
180
  return "".concat(props.theme.totalCircleColor);
165
181
  }, function (props) {
@@ -167,10 +183,13 @@ var CircleBackground = _styledComponents["default"].circle(_templateObject6 || (
167
183
  }, function (props) {
168
184
  return props.mode !== "small" ? "8.5px" : "2px";
169
185
  });
186
+
170
187
  var Spinner = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: relative;\n"])));
188
+
171
189
  var SVGSpinner = _styledComponents["default"].svg(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n transform: rotate(-90deg);\n top: 0;\n left: 0;\n transform-origin: center;\n overflow: visible;\n animation: ", ";\n"])), function (props) {
172
190
  return !props.isDeterminated ? "1.4s linear infinite both spinner-svg" : "";
173
191
  });
192
+
174
193
  var CircleSpinner = _styledComponents["default"].circle(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n fill: transparent;\n stroke-linecap: initial;\n vector-effect: non-scaling-stroke;\n animation: ", ";\n stroke: ", ";\n transform-origin: ", ";\n stroke-dasharray: ", ";\n stroke-width: ", ";\n stroke-dashoffset: ", ";\n"])), function (props) {
175
194
  return props.isDeterminated ? "none" : props.mode !== "small" ? "1.4s ease-in-out infinite both svg-circle-large" : "1.4s ease-in-out infinite both svg-circle-small";
176
195
  }, function (props) {
@@ -182,9 +201,11 @@ var CircleSpinner = _styledComponents["default"].circle(_templateObject9 || (_te
182
201
  }, function (props) {
183
202
  return props.mode !== "small" ? "8.5px" : "2px";
184
203
  }, function (props) {
185
- return props.isDeterminated ? props.mode !== "small" ? determinatedValue(props, 409) : determinatedValue(props, 38) : "";
204
+ return props.isDeterminated ? props.mode !== "small" ? determinatedValue(props.value, 409) : determinatedValue(props.value, 38) : "";
186
205
  });
206
+
187
207
  var LabelsContainer = _styledComponents["default"].div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n margin: 0 auto;\n position: absolute;\n text-align: center;\n width: 110px;\n"])));
208
+
188
209
  var SpinnerLabel = _styledComponents["default"].p(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n text-align: ", ";\n letter-spacing: ", ";\n"])), function (props) {
189
210
  return props.mode === "overlay" ? props.theme.overlayLabelFontFamily : props.theme.labelFontFamily;
190
211
  }, function (props) {
@@ -200,8 +221,9 @@ var SpinnerLabel = _styledComponents["default"].p(_templateObject11 || (_templat
200
221
  }, function (props) {
201
222
  return props.mode === "overlay" ? props.theme.overlayLabelLetterSpacing : props.theme.labelLetterSpacing;
202
223
  });
224
+
203
225
  var SpinnerProgress = _styledComponents["default"].p(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n margin: 0;\n width: 100%;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n display: ", ";\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n font-style: ", ";\n color: ", ";\n text-align: ", ";\n letter-spacing: ", ";\n"])), function (props) {
204
- return props.value !== "" && props.showValue === true && "block" || "none";
226
+ return props.value && props.showValue === true && "block" || "none";
205
227
  }, function (props) {
206
228
  return props.mode === "overlay" ? props.theme.overlayProgressValueFontFamily : props.theme.progressValueFontFamily;
207
229
  }, function (props) {
@@ -217,5 +239,6 @@ var SpinnerProgress = _styledComponents["default"].p(_templateObject12 || (_temp
217
239
  }, function (props) {
218
240
  return props.mode === "overlay" ? props.theme.overlayProgressValueLetterSpacing : props.theme.progressValueLetterSpacing;
219
241
  });
242
+
220
243
  var _default = DxcSpinner;
221
244
  exports["default"] = _default;
@@ -23,62 +23,62 @@ export const Chromatic = () => (
23
23
  <>
24
24
  <ExampleContainer>
25
25
  <Title title="With label" theme="light" level={4} />
26
- <DxcSpinner label="Label" value="50"></DxcSpinner>
26
+ <DxcSpinner label="Label" value={50}></DxcSpinner>
27
27
  <Title title="With value label" theme="light" level={4} />
28
- <DxcSpinner value="50" showValue></DxcSpinner>
28
+ <DxcSpinner value={50} showValue></DxcSpinner>
29
29
  <Title title="With label and value label" theme="light" level={4} />
30
- <DxcSpinner label="Label" value="50" showValue></DxcSpinner>
30
+ <DxcSpinner label="Label" value={50} showValue></DxcSpinner>
31
31
  <Title title="With 100%" theme="light" level={4} />
32
- <DxcSpinner label="Label" value="100" showValue></DxcSpinner>
32
+ <DxcSpinner label="Label" value={100} showValue></DxcSpinner>
33
33
  </ExampleContainer>
34
34
  <Title title="Modes" theme="light" level={2} />
35
35
  <ExampleContainer>
36
36
  <Title title="Mode large" theme="light" level={4} />
37
- <DxcSpinner mode="large" value="50"></DxcSpinner>
37
+ <DxcSpinner mode="large" value={50}></DxcSpinner>
38
38
  <Title title="Mode small" theme="light" level={4} />
39
- <DxcSpinner mode="small" value="50"></DxcSpinner>
39
+ <DxcSpinner mode="small" value={50}></DxcSpinner>
40
40
  <Title title="Mode small with 100%" theme="light" level={4} />
41
- <DxcSpinner mode="small" value="100" showValue></DxcSpinner>
41
+ <DxcSpinner mode="small" value={100} showValue></DxcSpinner>
42
42
  </ExampleContainer>
43
43
  <Title title="Margins with large mode" theme="light" level={2} />
44
44
  <ExampleContainer>
45
45
  <Title title="Xxsmall margin" theme="light" level={4} />
46
- <DxcSpinner margin="xxsmall" value="75"></DxcSpinner>
46
+ <DxcSpinner margin="xxsmall" value={75}></DxcSpinner>
47
47
  <Title title="Xsmall margin" theme="light" level={4} />
48
- <DxcSpinner margin="xsmall" value="75"></DxcSpinner>
48
+ <DxcSpinner margin="xsmall" value={75}></DxcSpinner>
49
49
  <Title title="Small margin" theme="light" level={4} />
50
- <DxcSpinner margin="small" value="75"></DxcSpinner>
50
+ <DxcSpinner margin="small" value={75}></DxcSpinner>
51
51
  <Title title="Medium margin" theme="light" level={4} />
52
- <DxcSpinner margin="medium" value="75"></DxcSpinner>
52
+ <DxcSpinner margin="medium" value={75}></DxcSpinner>
53
53
  <Title title="Large margin" theme="light" level={4} />
54
- <DxcSpinner margin="large" value="75"></DxcSpinner>
54
+ <DxcSpinner margin="large" value={75}></DxcSpinner>
55
55
  <Title title="Xlarge margin" theme="light" level={4} />
56
- <DxcSpinner margin="xlarge" value="75"></DxcSpinner>
56
+ <DxcSpinner margin="xlarge" value={75}></DxcSpinner>
57
57
  <Title title="Xxlarge margin" theme="light" level={4} />
58
- <DxcSpinner margin="xxlarge" value="75"></DxcSpinner>
58
+ <DxcSpinner margin="xxlarge" value={75}></DxcSpinner>
59
59
  </ExampleContainer>
60
60
  <Title title="Margins with small mode" theme="light" level={2} />
61
61
  <ExampleContainer>
62
62
  <Title title="Xxsmall margin" theme="light" level={4} />
63
- <DxcSpinner margin="xxsmall" mode="small" value="75"></DxcSpinner>
63
+ <DxcSpinner margin="xxsmall" mode="small" value={75}></DxcSpinner>
64
64
  <Title title="Xsmall margin" theme="light" level={4} />
65
- <DxcSpinner margin="xsmall" mode="small" value="75"></DxcSpinner>
65
+ <DxcSpinner margin="xsmall" mode="small" value={75}></DxcSpinner>
66
66
  <Title title="Small margin" theme="light" level={4} />
67
- <DxcSpinner margin="small" mode="small" value="75"></DxcSpinner>
67
+ <DxcSpinner margin="small" mode="small" value={75}></DxcSpinner>
68
68
  <Title title="Medium margin" theme="light" level={4} />
69
- <DxcSpinner margin="medium" mode="small" value="75"></DxcSpinner>
69
+ <DxcSpinner margin="medium" mode="small" value={75}></DxcSpinner>
70
70
  <Title title="Large margin" theme="light" level={4} />
71
- <DxcSpinner margin="large" mode="small" value="75"></DxcSpinner>
71
+ <DxcSpinner margin="large" mode="small" value={75}></DxcSpinner>
72
72
  <Title title="Xlarge margin" theme="light" level={4} />
73
- <DxcSpinner margin="xlarge" mode="small" value="75"></DxcSpinner>
73
+ <DxcSpinner margin="xlarge" mode="small" value={75}></DxcSpinner>
74
74
  <Title title="Xxlarge margin" theme="light" level={4} />
75
- <DxcSpinner margin="xxlarge" mode="small" value="75"></DxcSpinner>
75
+ <DxcSpinner margin="xxlarge" mode="small" value={75}></DxcSpinner>
76
76
  </ExampleContainer>
77
77
  <Title title="Opinionated theme" theme="light" level={2} />
78
78
  <ExampleContainer>
79
79
  <Title title="With label and value label" theme="light" level={4} />
80
80
  <HalstackProvider theme={opinionatedTheme}>
81
- <DxcSpinner label="Label" value="50" showValue></DxcSpinner>
81
+ <DxcSpinner label="Label" value={50} showValue></DxcSpinner>
82
82
  </HalstackProvider>
83
83
  </ExampleContainer>
84
84
  </>
@@ -87,35 +87,35 @@ export const Chromatic = () => (
87
87
  export const SpinnerOverlay = () => (
88
88
  <ExampleContainer>
89
89
  <Title title="Mode overlay" theme="light" level={4} />
90
- <DxcSpinner mode="overlay" value="25"></DxcSpinner>
90
+ <DxcSpinner mode="overlay" value={25}></DxcSpinner>
91
91
  </ExampleContainer>
92
92
  );
93
93
 
94
94
  export const SpinnerOverlayWith100 = () => (
95
95
  <ExampleContainer>
96
96
  <Title title="Mode overlay" theme="light" level={4} />
97
- <DxcSpinner mode="overlay" value="100"></DxcSpinner>
97
+ <DxcSpinner mode="overlay" value={100}></DxcSpinner>
98
98
  </ExampleContainer>
99
99
  );
100
100
 
101
101
  export const SpinnerOverlayWithLabel = () => (
102
102
  <ExampleContainer>
103
103
  <Title title="Mode overlay" theme="light" level={4} />
104
- <DxcSpinner mode="overlay" value="50" label="Label"></DxcSpinner>
104
+ <DxcSpinner mode="overlay" value={50} label="Label"></DxcSpinner>
105
105
  </ExampleContainer>
106
106
  );
107
107
 
108
108
  export const SpinnerOverlayWithValue = () => (
109
109
  <ExampleContainer>
110
110
  <Title title="Mode overlay" theme="light" level={4} />
111
- <DxcSpinner mode="overlay" value="50" showValue></DxcSpinner>
111
+ <DxcSpinner mode="overlay" value={50} showValue></DxcSpinner>
112
112
  </ExampleContainer>
113
113
  );
114
114
 
115
115
  export const SpinnerOverlayWithValueAndLabel = () => (
116
116
  <ExampleContainer>
117
117
  <Title title="Mode overlay" theme="light" level={4} />
118
- <DxcSpinner mode="overlay" label="Label" value="50" showValue></DxcSpinner>
118
+ <DxcSpinner mode="overlay" label="Label" value={50} showValue></DxcSpinner>
119
119
  </ExampleContainer>
120
120
  );
121
121
 
@@ -123,7 +123,7 @@ export const SpinnerOverlayWithValueAndLabelOpinionated = () => (
123
123
  <ExampleContainer>
124
124
  <HalstackProvider theme={opinionatedTheme}>
125
125
  <Title title="Mode overlay" theme="light" level={4} />
126
- <DxcSpinner mode="overlay" label="Label" value="50" showValue></DxcSpinner>
126
+ <DxcSpinner mode="overlay" label="Label" value={50} showValue></DxcSpinner>
127
127
  </HalstackProvider>
128
128
  </ExampleContainer>
129
129
  );