@dxc-technology/halstack-react 0.0.0-c4ba791 → 0.0.0-c7ec4d1

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 (197) hide show
  1. package/README.md +1 -1
  2. package/babel.config.js +6 -2
  3. package/dist/BackgroundColorContext.js +46 -0
  4. package/dist/ThemeContext.js +218 -22
  5. package/dist/V3Select/V3Select.js +549 -0
  6. package/dist/V3Textarea/V3Textarea.js +264 -0
  7. package/dist/accordion/Accordion.js +134 -54
  8. package/dist/accordion-group/AccordionGroup.js +36 -9
  9. package/dist/alert/Alert.js +183 -84
  10. package/dist/alert/index.d.ts +51 -0
  11. package/dist/badge/Badge.js +23 -18
  12. package/dist/box/Box.js +31 -23
  13. package/dist/button/Button.js +63 -27
  14. package/dist/card/Card.js +72 -35
  15. package/dist/checkbox/Checkbox.js +98 -39
  16. package/dist/chip/Chip.js +97 -40
  17. package/dist/common/utils.js +2 -22
  18. package/dist/common/variables.js +1428 -282
  19. package/dist/date/Date.js +74 -52
  20. package/dist/date-input/DateInput.js +400 -0
  21. package/dist/date-input/index.d.ts +95 -0
  22. package/dist/dialog/Dialog.js +58 -37
  23. package/dist/dropdown/Dropdown.js +176 -81
  24. package/dist/file-input/FileInput.js +644 -0
  25. package/dist/file-input/FileItem.js +287 -0
  26. package/dist/file-input/index.d.ts +81 -0
  27. package/dist/footer/Footer.js +90 -40
  28. package/dist/footer/Icons.js +77 -0
  29. package/dist/header/Header.js +192 -95
  30. package/dist/header/Icons.js +59 -0
  31. package/dist/heading/Heading.js +93 -16
  32. package/dist/input-text/Icons.js +22 -0
  33. package/dist/input-text/InputText.js +251 -116
  34. package/dist/layout/ApplicationLayout.js +18 -26
  35. package/dist/layout/Icons.js +55 -0
  36. package/dist/link/Link.js +86 -41
  37. package/dist/main.d.ts +8 -0
  38. package/dist/main.js +74 -18
  39. package/dist/number-input/NumberInput.js +136 -0
  40. package/dist/number-input/NumberInputContext.js +16 -0
  41. package/dist/number-input/index.d.ts +113 -0
  42. package/dist/paginator/Icons.js +66 -0
  43. package/dist/paginator/Paginator.js +116 -65
  44. package/dist/password-input/PasswordInput.js +203 -0
  45. package/dist/password-input/index.d.ts +94 -0
  46. package/dist/progress-bar/ProgressBar.js +95 -38
  47. package/dist/radio/Radio.js +31 -17
  48. package/dist/resultsetTable/ResultsetTable.js +82 -65
  49. package/dist/select/Select.js +896 -284
  50. package/dist/select/index.d.ts +53 -0
  51. package/dist/sidenav/Sidenav.js +66 -15
  52. package/dist/slider/Slider.js +211 -73
  53. package/dist/spinner/Spinner.js +247 -59
  54. package/dist/switch/Switch.js +50 -27
  55. package/dist/table/Table.js +51 -24
  56. package/dist/tabs/Tabs.js +88 -37
  57. package/dist/tag/Tag.js +68 -35
  58. package/dist/text-input/TextInput.js +974 -0
  59. package/dist/text-input/index.d.ts +135 -0
  60. package/dist/textarea/Textarea.js +248 -106
  61. package/dist/textarea/index.d.ts +117 -0
  62. package/dist/toggle/Toggle.js +16 -19
  63. package/dist/toggle-group/ToggleGroup.js +142 -41
  64. package/dist/upload/Upload.js +16 -11
  65. package/dist/upload/buttons-upload/ButtonsUpload.js +32 -19
  66. package/dist/upload/buttons-upload/Icons.js +40 -0
  67. package/dist/upload/dragAndDropArea/DragAndDropArea.js +84 -34
  68. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  69. package/dist/upload/file-upload/FileToUpload.js +64 -33
  70. package/dist/upload/file-upload/Icons.js +66 -0
  71. package/dist/upload/files-upload/FilesToUpload.js +16 -16
  72. package/dist/upload/transaction/Icons.js +160 -0
  73. package/dist/upload/transaction/Transaction.js +42 -49
  74. package/dist/upload/transactions/Transactions.js +38 -20
  75. package/dist/wizard/Icons.js +65 -0
  76. package/dist/wizard/Wizard.js +126 -52
  77. package/package.json +10 -9
  78. package/test/AccordionGroup.test.js +16 -0
  79. package/test/Date.test.js +49 -45
  80. package/test/DateInput.test.js +242 -0
  81. package/test/Dropdown.test.js +15 -0
  82. package/test/FileInput.test.js +201 -0
  83. package/test/Footer.test.js +2 -7
  84. package/test/Header.test.js +5 -10
  85. package/test/Heading.test.js +60 -12
  86. package/test/InputText.test.js +25 -17
  87. package/test/Link.test.js +3 -2
  88. package/test/NumberInput.test.js +259 -0
  89. package/test/Paginator.test.js +40 -57
  90. package/test/PasswordInput.test.js +83 -0
  91. package/test/ResultsetTable.test.js +33 -8
  92. package/test/Slider.test.js +9 -17
  93. package/test/Spinner.test.js +5 -0
  94. package/test/TextInput.test.js +732 -0
  95. package/test/Textarea.test.js +193 -0
  96. package/test/ToggleGroup.test.js +5 -1
  97. package/test/Upload.test.js +5 -5
  98. package/test/{Select.test.js → V3Select.test.js} +56 -36
  99. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  100. package/dist/accordion/Accordion.stories.js +0 -207
  101. package/dist/accordion/readme.md +0 -96
  102. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  103. package/dist/accordion-group/readme.md +0 -70
  104. package/dist/alert/Alert.stories.js +0 -158
  105. package/dist/alert/close.svg +0 -4
  106. package/dist/alert/error.svg +0 -4
  107. package/dist/alert/info.svg +0 -4
  108. package/dist/alert/readme.md +0 -43
  109. package/dist/alert/success.svg +0 -4
  110. package/dist/alert/warning.svg +0 -4
  111. package/dist/button/Button.stories.js +0 -224
  112. package/dist/button/readme.md +0 -93
  113. package/dist/checkbox/Checkbox.stories.js +0 -144
  114. package/dist/checkbox/readme.md +0 -116
  115. package/dist/common/services/example-service.js +0 -10
  116. package/dist/common/services/example-service.test.js +0 -12
  117. package/dist/date/Date.stories.js +0 -205
  118. package/dist/date/calendar.svg +0 -1
  119. package/dist/date/calendar_dark.svg +0 -1
  120. package/dist/date/readme.md +0 -73
  121. package/dist/dialog/Dialog.stories.js +0 -217
  122. package/dist/dialog/readme.md +0 -32
  123. package/dist/dropdown/Dropdown.stories.js +0 -249
  124. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  125. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  126. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  127. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  128. package/dist/dropdown/readme.md +0 -69
  129. package/dist/footer/Footer.stories.js +0 -94
  130. package/dist/footer/dxc_logo_wht.png +0 -0
  131. package/dist/footer/readme.md +0 -41
  132. package/dist/header/Header.stories.js +0 -176
  133. package/dist/header/close_icon.svg +0 -1
  134. package/dist/header/dxc_logo_black.png +0 -0
  135. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  136. package/dist/header/dxc_logo_white.png +0 -0
  137. package/dist/header/hamb_menu_black.svg +0 -1
  138. package/dist/header/hamb_menu_white.svg +0 -1
  139. package/dist/header/readme.md +0 -33
  140. package/dist/input-text/InputText.stories.js +0 -209
  141. package/dist/input-text/error.svg +0 -1
  142. package/dist/input-text/readme.md +0 -91
  143. package/dist/layout/facebook.svg +0 -45
  144. package/dist/layout/linkedin.svg +0 -50
  145. package/dist/layout/twitter.svg +0 -53
  146. package/dist/link/readme.md +0 -51
  147. package/dist/paginator/images/next.svg +0 -3
  148. package/dist/paginator/images/nextPage.svg +0 -3
  149. package/dist/paginator/images/previous.svg +0 -3
  150. package/dist/paginator/images/previousPage.svg +0 -3
  151. package/dist/paginator/readme.md +0 -50
  152. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  153. package/dist/progress-bar/readme.md +0 -63
  154. package/dist/radio/Radio.stories.js +0 -166
  155. package/dist/radio/readme.md +0 -70
  156. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  157. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  158. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  159. package/dist/select/Select.stories.js +0 -235
  160. package/dist/select/readme.md +0 -72
  161. package/dist/slider/Slider.stories.js +0 -241
  162. package/dist/slider/readme.md +0 -64
  163. package/dist/spinner/Spinner.stories.js +0 -183
  164. package/dist/spinner/readme.md +0 -65
  165. package/dist/switch/Switch.stories.js +0 -134
  166. package/dist/switch/readme.md +0 -133
  167. package/dist/tabs/Tabs.stories.js +0 -130
  168. package/dist/tabs/readme.md +0 -78
  169. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  170. package/dist/tabs-for-sections/readme.md +0 -78
  171. package/dist/toggle/Toggle.stories.js +0 -297
  172. package/dist/toggle/readme.md +0 -80
  173. package/dist/toggle-group/readme.md +0 -82
  174. package/dist/upload/Upload.stories.js +0 -72
  175. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  176. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  177. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  178. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  179. package/dist/upload/file-upload/audio-icon.svg +0 -4
  180. package/dist/upload/file-upload/close.svg +0 -4
  181. package/dist/upload/file-upload/file-icon.svg +0 -4
  182. package/dist/upload/file-upload/video-icon.svg +0 -4
  183. package/dist/upload/readme.md +0 -37
  184. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  185. package/dist/upload/transaction/audio-icon.svg +0 -4
  186. package/dist/upload/transaction/error-icon.svg +0 -4
  187. package/dist/upload/transaction/file-icon-err.svg +0 -4
  188. package/dist/upload/transaction/file-icon.svg +0 -4
  189. package/dist/upload/transaction/image-icon-err.svg +0 -4
  190. package/dist/upload/transaction/image-icon.svg +0 -4
  191. package/dist/upload/transaction/success-icon.svg +0 -4
  192. package/dist/upload/transaction/video-icon-err.svg +0 -4
  193. package/dist/upload/transaction/video-icon.svg +0 -4
  194. package/dist/wizard/invalid_icon.svg +0 -6
  195. package/dist/wizard/valid_icon.svg +0 -6
  196. package/dist/wizard/validation-wrong.svg +0 -6
  197. package/test/TabsForSections.test.js +0 -34
@@ -19,20 +19,96 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
21
 
22
- var _CircularProgress = _interopRequireDefault(require("@material-ui/core/CircularProgress"));
23
-
24
22
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
23
 
26
- require("../common/OpenSans.css");
27
-
28
24
  var _variables = require("../common/variables.js");
29
25
 
30
- var _utils = require("../common/utils.js");
26
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
+
28
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
29
+
30
+ function _templateObject12() {
31
+ var data = (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"]);
31
32
 
32
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
33
+ _templateObject12 = function _templateObject12() {
34
+ return data;
35
+ };
36
+
37
+ return data;
38
+ }
39
+
40
+ function _templateObject11() {
41
+ var data = (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"]);
42
+
43
+ _templateObject11 = function _templateObject11() {
44
+ return data;
45
+ };
46
+
47
+ return data;
48
+ }
49
+
50
+ function _templateObject10() {
51
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n margin: 0 auto;\n position: absolute;\n text-align: center;\n width: 110px;\n"]);
52
+
53
+ _templateObject10 = function _templateObject10() {
54
+ return data;
55
+ };
56
+
57
+ return data;
58
+ }
59
+
60
+ function _templateObject9() {
61
+ var data = (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"]);
62
+
63
+ _templateObject9 = function _templateObject9() {
64
+ return data;
65
+ };
66
+
67
+ return data;
68
+ }
69
+
70
+ function _templateObject8() {
71
+ var data = (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"]);
72
+
73
+ _templateObject8 = function _templateObject8() {
74
+ return data;
75
+ };
76
+
77
+ return data;
78
+ }
79
+
80
+ function _templateObject7() {
81
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: relative;\n z-index: 2;\n"]);
82
+
83
+ _templateObject7 = function _templateObject7() {
84
+ return data;
85
+ };
86
+
87
+ return data;
88
+ }
89
+
90
+ function _templateObject6() {
91
+ var data = (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"]);
92
+
93
+ _templateObject6 = function _templateObject6() {
94
+ return data;
95
+ };
96
+
97
+ return data;
98
+ }
99
+
100
+ function _templateObject5() {
101
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n"]);
102
+
103
+ _templateObject5 = function _templateObject5() {
104
+ return data;
105
+ };
106
+
107
+ return data;
108
+ }
33
109
 
34
110
  function _templateObject4() {
35
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n display: ", ";\n color: ", ";\n font-size: 12px;\n text-align: center;\n"]);
111
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: absolute;\n z-index: 1;\n"]);
36
112
 
37
113
  _templateObject4 = function _templateObject4() {
38
114
  return data;
@@ -42,7 +118,7 @@ function _templateObject4() {
42
118
  }
43
119
 
44
120
  function _templateObject3() {
45
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: ", ";\n color: ", ";\n text-transform: uppercase;\n font-size: 12px;\n text-align: center;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"]);
121
+ var data = (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"]);
46
122
 
47
123
  _templateObject3 = function _templateObject3() {
48
124
  return data;
@@ -52,7 +128,7 @@ function _templateObject3() {
52
128
  }
53
129
 
54
130
  function _templateObject2() {
55
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: \"Open Sans\", sans-serif;\n border-radius: 80px;\n border: ", ";\n width: ", ";\n height: ", ";\n z-index: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n .MuiCircularProgress-colorPrimary {\n color: ", ";\n width: ", ";\n height: ", ";\n margin-top: ", ";\n margin-left: ", ";\n }\n\n .MuiCircularProgress-circle {\n stroke-width: ", ";\n r: ", ";\n }\n"]);
131
+ var data = (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"]);
56
132
 
57
133
  _templateObject2 = function _templateObject2() {
58
134
  return data;
@@ -62,7 +138,7 @@ function _templateObject2() {
62
138
  }
63
139
 
64
140
  function _templateObject() {
65
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n display: flex;\n flex-wrap: wrap;\n justify-content: ", ";\n align-items: ", ";\n position: ", ";\n top: ", ";\n left: ", ";\n right: ", ";\n bottom: ", ";\n z-index: ", ";\n"]);
141
+ var data = (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"]);
66
142
 
67
143
  _templateObject = function _templateObject() {
68
144
  return data;
@@ -80,32 +156,102 @@ var DxcSpinner = function DxcSpinner(_ref) {
80
156
  _ref$mode = _ref.mode,
81
157
  mode = _ref$mode === void 0 ? "large" : _ref$mode,
82
158
  margin = _ref.margin;
83
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
84
- var colorsTheme = (0, _react.useMemo)(function () {
85
- return (0, _utils.getCustomTheme)(_variables.componentTokens, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
86
- }, [customTheme]);
159
+ var colorsTheme = (0, _useTheme["default"])();
160
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
87
161
  return _react["default"].createElement(_styledComponents.ThemeProvider, {
88
162
  theme: colorsTheme.spinner
89
- }, _react["default"].createElement(BackgroundSpinner, {
90
- mode: mode
91
163
  }, _react["default"].createElement(DXCSpinner, {
92
164
  margin: margin,
93
- showValue: showValue,
94
- label: label,
95
165
  mode: mode
96
- }, label && mode !== "small" && _react["default"].createElement(SpinnerLabel, {
97
- showValue: showValue,
166
+ }, _react["default"].createElement(SpinnerContainer, {
167
+ backgroundType: backgroundType,
168
+ mode: mode
169
+ }, mode === "overlay" && _react["default"].createElement(BackOverlay, null), _react["default"].createElement(BackgroundSpinner, {
170
+ mode: mode
171
+ }, mode !== "small" && _react["default"].createElement(SVGBackground, {
172
+ viewBox: "0 0 140 140"
173
+ }, _react["default"].createElement(CircleBackground, {
174
+ cx: "70",
175
+ cy: "70",
176
+ r: "65",
177
+ mode: mode
178
+ })), mode === "small" && _react["default"].createElement(SVGBackground, {
179
+ viewBox: "0 0 16 16"
180
+ }, _react["default"].createElement(CircleBackground, {
181
+ cx: "8",
182
+ cy: "8",
183
+ r: "6",
184
+ mode: mode
185
+ }))), value >= 0 && value <= 100 ? _react["default"].createElement(Spinner, {
186
+ role: "progressbar",
98
187
  mode: mode
99
- }, label), value && mode !== "small" && _react["default"].createElement(SpinnerProgress, {
188
+ }, mode !== "small" && _react["default"].createElement(SVGSpinner, {
189
+ viewBox: "0 0 140 140",
190
+ isDeterminated: true
191
+ }, _react["default"].createElement(CircleSpinner, {
192
+ cx: "70",
193
+ cy: "70",
194
+ r: "65",
195
+ backgroundType: backgroundType,
100
196
  mode: mode,
101
- showValue: showValue,
102
- label: label
103
- }, value === "" ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100, "%"), _react["default"].createElement(_CircularProgress["default"], {
104
- variant: showValue ? "static" : "indeterminate",
105
- value: value === "" ? 0 : value >= 0 && value <= 100 ? value : value < 0 ? 0 : 100,
197
+ isDeterminated: true,
198
+ value: value
199
+ })), mode === "small" && _react["default"].createElement(SVGSpinner, {
200
+ viewBox: "0 0 16 16",
201
+ isDeterminated: true
202
+ }, _react["default"].createElement(CircleSpinner, {
203
+ cx: "8",
204
+ cy: "8",
205
+ r: "6",
206
+ backgroundType: backgroundType,
106
207
  mode: mode,
107
- label: label
108
- }))));
208
+ isDeterminated: true,
209
+ value: value
210
+ }))) : _react["default"].createElement(Spinner, {
211
+ role: "progressbar",
212
+ mode: mode
213
+ }, mode !== "small" && _react["default"].createElement(SVGSpinner, {
214
+ viewBox: "0 0 140 140",
215
+ isDeterminated: false
216
+ }, _react["default"].createElement(CircleSpinner, {
217
+ cx: "70",
218
+ cy: "70",
219
+ r: "65",
220
+ backgroundType: backgroundType,
221
+ mode: mode,
222
+ isDeterminated: false
223
+ })), mode === "small" && _react["default"].createElement(SVGSpinner, {
224
+ viewBox: "0 0 16 16",
225
+ isDeterminated: false
226
+ }, _react["default"].createElement(CircleSpinner, {
227
+ cx: "8",
228
+ cy: "8",
229
+ r: "6",
230
+ backgroundType: backgroundType,
231
+ mode: mode,
232
+ isDeterminated: false
233
+ }))), mode !== "small" && _react["default"].createElement(LabelsContainer, {
234
+ label: label,
235
+ value: value,
236
+ showValue: showValue
237
+ }, _react["default"].createElement(SpinnerLabel, {
238
+ backgroundType: backgroundType,
239
+ mode: mode
240
+ }, label), (value || value === 0) && showValue && _react["default"].createElement(SpinnerProgress, {
241
+ backgroundType: backgroundType,
242
+ mode: mode,
243
+ showValue: showValue
244
+ }, value, "%")))));
245
+ };
246
+
247
+ var determinatedValue = function determinatedValue(props, strokeDashArray) {
248
+ var val = 0;
249
+
250
+ if (props.value >= 0 && props.value <= 100) {
251
+ val = strokeDashArray * (1 - props.value / 100);
252
+ }
253
+
254
+ return val;
109
255
  };
110
256
 
111
257
  DxcSpinner.propTypes = {
@@ -121,12 +267,12 @@ DxcSpinner.propTypes = {
121
267
  }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
122
268
  };
123
269
 
124
- var BackgroundSpinner = _styledComponents["default"].div(_templateObject(), function (props) {
125
- return props.mode === "overlay" ? "".concat(props.theme.overlayColor).concat(props.theme.overlayOpacity) : "transparent";
270
+ var DXCSpinner = _styledComponents["default"].div(_templateObject(), function (props) {
271
+ return props.mode === "overlay" ? "100vh" : "";
126
272
  }, function (props) {
127
- return props.mode === "overlay" ? "center" : "";
273
+ return props.mode === "overlay" ? "100vw" : "";
128
274
  }, function (props) {
129
- return props.mode === "overlay" ? "center" : "";
275
+ return props.mode === "overlay" ? "flex" : "";
130
276
  }, function (props) {
131
277
  return props.mode === "overlay" ? "fixed" : "";
132
278
  }, function (props) {
@@ -134,21 +280,11 @@ var BackgroundSpinner = _styledComponents["default"].div(_templateObject(), func
134
280
  }, function (props) {
135
281
  return props.mode === "overlay" ? 0 : "";
136
282
  }, function (props) {
137
- return props.mode === "overlay" ? 0 : "";
138
- }, function (props) {
139
- return props.mode === "overlay" ? 0 : "";
140
- }, function (props) {
141
- return props.mode === "overlay" ? 1000 : "";
142
- });
143
-
144
- var DXCSpinner = _styledComponents["default"].div(_templateObject2(), function (props) {
145
- return props.mode === "small" && "6px solid".concat(props.theme.totalCircleColor) || "8.5px solid ".concat(props.theme.totalCircleColor);
146
- }, function (props) {
147
- return props.mode === "small" && "30px" || "120px";
283
+ return props.mode === "overlay" ? "center" : "";
148
284
  }, function (props) {
149
- return props.mode === "small" && "30px" || "120px";
285
+ return props.mode === "overlay" ? "center" : "";
150
286
  }, function (props) {
151
- return props.mode === "overlay" ? "100" : "";
287
+ return props.mode === "overlay" ? 1300 : "";
152
288
  }, function (props) {
153
289
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
154
290
  }, function (props) {
@@ -159,34 +295,86 @@ var DXCSpinner = _styledComponents["default"].div(_templateObject2(), function (
159
295
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
160
296
  }, function (props) {
161
297
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
298
+ });
299
+
300
+ var SpinnerContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
301
+ return props.mode === "small" ? "16px" : "140px";
302
+ }, function (props) {
303
+ return props.mode === "small" ? "16px" : "140px";
304
+ });
305
+
306
+ var BackOverlay = _styledComponents["default"].div(_templateObject3(), function (props) {
307
+ return "".concat(props.theme.overlayBackgroundColor);
308
+ }, function (props) {
309
+ return "".concat(props.theme.overlayOpacity);
310
+ });
311
+
312
+ var BackgroundSpinner = _styledComponents["default"].div(_templateObject4());
313
+
314
+ var SVGBackground = _styledComponents["default"].svg(_templateObject5());
315
+
316
+ var CircleBackground = _styledComponents["default"].circle(_templateObject6(), function (props) {
317
+ return "".concat(props.theme.totalCircleColor);
162
318
  }, function (props) {
163
- return props.theme.trackCircleColor;
319
+ return props.mode !== "small" ? "409" : "38";
164
320
  }, function (props) {
165
- return props.mode === "small" && "44px !important" || "140px !important";
321
+ return props.mode !== "small" ? "8.5px" : "2px";
322
+ });
323
+
324
+ var Spinner = _styledComponents["default"].div(_templateObject7());
325
+
326
+ var SVGSpinner = _styledComponents["default"].svg(_templateObject8(), function (props) {
327
+ return !props.isDeterminated ? "1.4s linear infinite both spinner-svg" : "";
328
+ });
329
+
330
+ var CircleSpinner = _styledComponents["default"].circle(_templateObject9(), function (props) {
331
+ 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";
166
332
  }, function (props) {
167
- return props.mode === "small" && "44px !important" || "140px !important";
333
+ return props.backgroundType === "dark" ? props.theme.trackCircleColorOnDark : props.theme.trackCircleColor;
168
334
  }, function (props) {
169
- return props.label === "" && props.showValue === false && props.mode === "large" ? "-10px" : props.mode === "small" ? "-7px" : props.label !== "" && props.showValue === false ? "-78.5px" : props.label === "" && props.showValue === true ? "-78.75px" : "-88.5px";
335
+ return !props.isDeterminated ? "50% 50%" : "";
170
336
  }, function (props) {
171
- return props.mode === "small" && "-7px !important" || "-10px !important";
337
+ return props.mode !== "small" ? "409" : "38";
172
338
  }, function (props) {
173
- return props.mode === "small" && "6.2px" || "2.7px";
339
+ return props.mode !== "small" ? "8.5px" : "2px";
174
340
  }, function (props) {
175
- return props.mode === "small" && "18.2" || "20.2";
341
+ return props.isDeterminated ? props.mode !== "small" ? determinatedValue(props, 409) : determinatedValue(props, 38) : "";
176
342
  });
177
343
 
178
- var SpinnerLabel = _styledComponents["default"].div(_templateObject3(), function (props) {
179
- return props.showValue === false && "52px" || "45px";
344
+ var LabelsContainer = _styledComponents["default"].div(_templateObject10());
345
+
346
+ var SpinnerLabel = _styledComponents["default"].p(_templateObject11(), function (props) {
347
+ return props.mode === "overlay" ? props.theme.overlayLabelFontFamily : props.theme.labelFontFamily;
348
+ }, function (props) {
349
+ return props.mode === "overlay" ? props.theme.overlayLabelFontWeight : props.theme.labelFontWeight;
350
+ }, function (props) {
351
+ return props.mode === "overlay" ? props.theme.overlayLabelFontSize : props.theme.labelFontSize;
352
+ }, function (props) {
353
+ return props.mode === "overlay" ? props.theme.overlayLabelFontStyle : props.theme.labelFontStyle;
354
+ }, function (props) {
355
+ return props.mode === "overlay" ? props.theme.overlayLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
356
+ }, function (props) {
357
+ return props.mode === "overlay" ? props.theme.overlayLabelTextAlign : props.theme.labelTextAlign;
180
358
  }, function (props) {
181
- return props.mode === "overlay" ? "#FFFFFF" : props.theme.fontColor;
359
+ return props.mode === "overlay" ? props.theme.overlayLabelLetterSpacing : props.theme.labelLetterSpacing;
182
360
  });
183
361
 
184
- var SpinnerProgress = _styledComponents["default"].div(_templateObject4(), function (props) {
185
- return props.label === "" && "52px" || "";
186
- }, function (props) {
362
+ var SpinnerProgress = _styledComponents["default"].p(_templateObject12(), function (props) {
187
363
  return props.value !== "" && props.showValue === true && "block" || "none";
188
364
  }, function (props) {
189
- return props.mode === "overlay" ? "#FFFFFF" : props.theme.fontColor;
365
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontFamily : props.theme.progressValueFontFamily;
366
+ }, function (props) {
367
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontWeight : props.theme.progressValueFontWeight;
368
+ }, function (props) {
369
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontSize : props.theme.progressValueFontSize;
370
+ }, function (props) {
371
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontStyle : props.theme.progressValueFontStyle;
372
+ }, function (props) {
373
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontColor : props.backgroundType === "dark" ? props.theme.progressValueFontColorOnDark : props.theme.progressValueFontColor;
374
+ }, function (props) {
375
+ return props.mode === "overlay" ? props.theme.overlayProgressValueTextAlign : props.theme.progressValueTextAlign;
376
+ }, function (props) {
377
+ return props.mode === "overlay" ? props.theme.overlayProgressValueLetterSpacing : props.theme.progressValueLetterSpacing;
190
378
  });
191
379
 
192
380
  var _default = DxcSpinner;
@@ -27,16 +27,16 @@ var _core = require("@material-ui/core");
27
27
 
28
28
  var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
29
29
 
30
- require("../common/OpenSans.css");
31
-
32
30
  var _variables = require("../common/variables.js");
33
31
 
34
32
  var _utils = require("../common/utils.js");
35
33
 
36
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
34
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
+
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
37
 
38
38
  function _templateObject2() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n cursor: ", ";\n font-family: \"Open Sans\", sans-serif;\n opacity: ", ";\n"]);
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n cursor: ", ";\n ", "\n"]);
40
40
 
41
41
  _templateObject2 = function _templateObject2() {
42
42
  return data;
@@ -46,7 +46,7 @@ function _templateObject2() {
46
46
  }
47
47
 
48
48
  function _templateObject() {
49
- var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n\n display: inline-flex;\n align-items: center;\n flex-direction: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n cursor: ", ";\n .MuiSwitch-root {\n align-items: center;\n width: 60px;\n height: 45px;\n margin: 3px;\n\n opacity: ", " !important;\n\n .Mui-focusVisible {\n border: ", ";\n padding: 7px;\n }\n\n .MuiSwitch-track {\n /*Enabled and unchecked bar*/\n background-color: ", ";\n opacity: 1;\n height: 12px;\n }\n\n .MuiIconButton-root {\n /*Enabled and unchecked*/\n top: unset;\n .MuiSwitch-thumb {\n /*Only for thumb in all states*/\n width: 24px;\n height: 24px;\n }\n color: ", ";\n &:hover {\n background-color: transparent;\n }\n &.Mui-disabled {\n /*Disabled*/\n + .MuiSwitch-track {\n /*Disabled and unchecked bar*/\n background-color: ", ";\n opacity: ", ";\n }\n }\n &.Mui-checked {\n /*Enabled and checked*/\n color: ", ";\n transform: translateX(40%);\n &:hover {\n background-color: transparent;\n }\n + .MuiSwitch-track {\n /*Enabled and checked bar*/\n background-color: ", ";\n opacity: 1;\n }\n }\n }\n }\n"]);
49
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n display: inline-flex;\n align-items: center;\n flex-direction: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n cursor: ", ";\n opacity: 1;\n \n .MuiSwitch-root {\n align-items: center;\n width: ", ";\n height: 45px;\n margin: 3px;\n\n .Mui-focusVisible {\n border: ", ";\n padding: 7px;\n }\n\n .MuiSwitch-track {\n /*Enabled and unchecked bar*/\n background-color: ", ";\n height: ", ";\n }\n\n .MuiSwitch-switchBase + .MuiSwitch-track {\n opacity: 1;\n }\n\n .MuiIconButton-root {\n /*Enabled and unchecked*/\n top: unset;\n .MuiSwitch-thumb {\n /*Only for thumb in all states*/\n width: ", ";\n height: ", ";\n }\n color: ", ";\n &:hover {\n background-color: transparent;\n }\n &.Mui-disabled {\n /*Disabled and unchecked*/\n color: ", ";\n + .MuiSwitch-track {\n /*Disabled and unchecked bar*/\n background-color: ", ";\n }\n }\n &.Mui-disabled.Mui-checked {\n /*Disabled and checked*/\n color: ", ";\n + .MuiSwitch-track {\n /*Disabled and checked bar*/\n background-color: ", ";\n }\n }\n &.Mui-checked {\n /*Enabled and checked*/\n color: ", ";\n transform: translateX(", ");\n &:hover {\n background-color: transparent;\n }\n + .MuiSwitch-track {\n /*Enabled and checked bar*/\n background-color: ", ";\n }\n }\n }\n }\n"]);
50
50
 
51
51
  _templateObject = function _templateObject() {
52
52
  return data;
@@ -69,17 +69,17 @@ var DxcSwitch = function DxcSwitch(_ref) {
69
69
  required = _ref$required === void 0 ? false : _ref$required,
70
70
  margin = _ref.margin,
71
71
  _ref$size = _ref.size,
72
- size = _ref$size === void 0 ? "fitContent" : _ref$size;
72
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
73
+ _ref$tabIndex = _ref.tabIndex,
74
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
73
75
 
74
76
  var _useState = (0, _react.useState)(0),
75
77
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
76
78
  innerChecked = _useState2[0],
77
79
  setInnerChecked = _useState2[1];
78
80
 
79
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
80
- var colorsTheme = (0, _react.useMemo)(function () {
81
- return (0, _utils.getCustomTheme)(_variables.componentTokens, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
82
- }, [customTheme]);
81
+ var colorsTheme = (0, _useTheme["default"])();
82
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
83
83
 
84
84
  var handlerSwitchChange = function handlerSwitchChange(newValue) {
85
85
  if (checked === undefined) {
@@ -102,11 +102,13 @@ var DxcSwitch = function DxcSwitch(_ref) {
102
102
  margin: margin,
103
103
  disabled: disabled,
104
104
  labelPosition: labelPosition,
105
- size: size
105
+ size: size,
106
+ backgroundType: backgroundType
106
107
  }, _react["default"].createElement(_core.Switch, {
107
108
  checked: checked != undefined ? checked : innerChecked,
108
- inputProps: name = {
109
- name: name
109
+ inputProps: {
110
+ name: name,
111
+ tabIndex: tabIndex
110
112
  },
111
113
  onChange: handlerSwitchChange,
112
114
  value: value,
@@ -114,9 +116,9 @@ var DxcSwitch = function DxcSwitch(_ref) {
114
116
  disableRipple: true
115
117
  }), _react["default"].createElement(LabelContainer, {
116
118
  labelPosition: labelPosition,
117
- brightness: _variables.componentTokens,
118
119
  onClick: disabled === true ? function () {} : handlerSwitchChange,
119
- disabled: disabled
120
+ disabled: disabled,
121
+ backgroundType: backgroundType
120
122
  }, required && _react["default"].createElement(_RequiredComponent["default"], null), label)));
121
123
  };
122
124
 
@@ -151,31 +153,51 @@ var SwitchContainer = _styledComponents["default"].div(_templateObject(), functi
151
153
  }, function (props) {
152
154
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
153
155
  }, function (props) {
154
- return props.disabled === true ? "not-allowed" : "default";
156
+ return props.disabled ? "not-allowed" : "default";
157
+ }, function (props) {
158
+ return props.theme.trackWidth;
159
+ }, function (props) {
160
+ return "".concat(props.backgroundType === "dark" ? props.theme.thumbFocusColorOnDark : props.theme.thumbFocusColor, " solid 2px");
161
+ }, function (props) {
162
+ return props.backgroundType === "dark" ? props.theme.uncheckedTrackBackgroundColorOnDark : props.theme.uncheckedTrackBackgroundColor;
163
+ }, function (props) {
164
+ return props.theme.trackHeight;
155
165
  }, function (props) {
156
- return props.disabled ? props.theme.disabled : "1";
166
+ return props.theme.thumbWidth;
157
167
  }, function (props) {
158
- return props.theme.focusColor + " solid 2px";
168
+ return props.theme.thumbHeight;
159
169
  }, function (props) {
160
- return props.theme.uncheckedTrackBackgroundColor;
170
+ return props.backgroundType === "dark" ? props.theme.uncheckedThumbBackgroundColorOnDark : props.theme.uncheckedThumbBackgroundColor;
161
171
  }, function (props) {
162
- return props.theme.uncheckedThumbBackgroundColor;
172
+ return props.backgroundType === "dark" ? props.theme.disabledUncheckedThumbBackgroundColorOnDark : props.theme.disabledUncheckedThumbBackgroundColor;
163
173
  }, function (props) {
164
- return props.theme.uncheckedTrackBackgroundColor;
174
+ return props.backgroundType === "dark" ? props.theme.disabledUncheckedTrackBackgroundColorOnDark : props.theme.disabledUncheckedTrackBackgroundColor;
165
175
  }, function (props) {
166
- return props.theme.disabled;
176
+ return props.backgroundType === "dark" ? props.theme.disabledCheckedThumbBackgroundColorOnDark : props.theme.disabledCheckedThumbBackgroundColor;
167
177
  }, function (props) {
168
- return props.theme.checkedThumbBackgroundColor;
178
+ return props.backgroundType === "dark" ? props.theme.disabledCheckedTrackBackgroundColorOnDark : props.theme.disabledCheckedTrackBackgroundColor;
169
179
  }, function (props) {
170
- return props.theme.checkedTrackBackgroundColor;
180
+ return props.backgroundType === "dark" ? props.theme.checkedThumbBackgroundColorOnDark : props.theme.checkedThumbBackgroundColor;
181
+ }, function (props) {
182
+ return props.theme.thumbShift;
183
+ }, function (props) {
184
+ return props.backgroundType === "dark" ? props.theme.checkedTrackBackgroundColorOnDark : props.theme.checkedTrackBackgroundColor;
171
185
  });
172
186
 
173
187
  var LabelContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
174
- return props.theme.fontColor;
188
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
189
+ }, function (props) {
190
+ return props.theme.labelFontFamily;
191
+ }, function (props) {
192
+ return props.theme.labelFontSize;
193
+ }, function (props) {
194
+ return props.disabled ? props.theme.disabledLabelFontStyle : props.theme.labelFontStyle;
195
+ }, function (props) {
196
+ return props.theme.labelFontWeight;
175
197
  }, function (props) {
176
198
  return props.disabled === true ? "not-allowed" : "pointer";
177
199
  }, function (props) {
178
- return props.disabled === true ? props.theme.disabled : "";
200
+ return props.labelPosition === "after" ? "margin-left: ".concat(props.theme.spaceBetweenLabelSwitch, ";") : "margin-right: ".concat(props.theme.spaceBetweenLabelSwitch, ";");
179
201
  });
180
202
 
181
203
  DxcSwitch.propTypes = {
@@ -193,7 +215,8 @@ DxcSwitch.propTypes = {
193
215
  bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
194
216
  left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
195
217
  right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
196
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
218
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
219
+ tabIndex: _propTypes["default"].number
197
220
  };
198
221
  var _default = DxcSwitch;
199
222
  exports["default"] = _default;