@dxc-technology/halstack-react 0.0.0-d49942f → 0.0.0-d4fec82

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 (321) hide show
  1. package/BackgroundColorContext.js +50 -0
  2. package/ThemeContext.js +246 -0
  3. package/V3Select/V3Select.js +455 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +260 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.d.ts +4 -0
  8. package/accordion/Accordion.js +258 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +170 -0
  13. package/accordion-group/types.d.ts +72 -0
  14. package/accordion-group/types.js +5 -0
  15. package/alert/Alert.d.ts +4 -0
  16. package/alert/Alert.js +290 -0
  17. package/alert/types.d.ts +49 -0
  18. package/alert/types.js +5 -0
  19. package/badge/Badge.js +59 -0
  20. package/{dist/box → box}/Box.js +38 -34
  21. package/box/Box.stories.jsx +132 -0
  22. package/box/index.d.ts +25 -0
  23. package/button/Button.d.ts +4 -0
  24. package/button/Button.js +182 -0
  25. package/button/Button.stories.tsx +293 -0
  26. package/button/types.d.ts +57 -0
  27. package/button/types.js +5 -0
  28. package/card/Card.d.ts +4 -0
  29. package/card/Card.js +165 -0
  30. package/card/types.d.ts +69 -0
  31. package/card/types.js +5 -0
  32. package/checkbox/Checkbox.d.ts +4 -0
  33. package/checkbox/Checkbox.js +253 -0
  34. package/checkbox/types.d.ts +60 -0
  35. package/checkbox/types.js +5 -0
  36. package/chip/Chip.js +221 -0
  37. package/chip/index.d.ts +22 -0
  38. package/{dist/common → common}/OpenSans.css +0 -0
  39. package/{dist/common → common}/RequiredComponent.js +5 -19
  40. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  41. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  42. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  43. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  49. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  50. package/common/utils.js +22 -0
  51. package/common/variables.js +1569 -0
  52. package/{dist/date → date}/Date.js +87 -70
  53. package/date/index.d.ts +27 -0
  54. package/date-input/DateInput.d.ts +4 -0
  55. package/date-input/DateInput.js +361 -0
  56. package/date-input/types.d.ts +100 -0
  57. package/date-input/types.js +5 -0
  58. package/dialog/Dialog.js +184 -0
  59. package/dialog/index.d.ts +18 -0
  60. package/dropdown/Dropdown.d.ts +4 -0
  61. package/dropdown/Dropdown.js +417 -0
  62. package/dropdown/types.d.ts +89 -0
  63. package/dropdown/types.js +5 -0
  64. package/file-input/FileInput.js +532 -0
  65. package/file-input/FileItem.js +193 -0
  66. package/file-input/index.d.ts +81 -0
  67. package/footer/Footer.d.ts +4 -0
  68. package/footer/Footer.js +266 -0
  69. package/footer/Icons.js +77 -0
  70. package/footer/types.d.ts +61 -0
  71. package/footer/types.js +5 -0
  72. package/header/Header.js +326 -0
  73. package/header/Icons.js +59 -0
  74. package/header/index.d.ts +25 -0
  75. package/heading/Heading.js +176 -0
  76. package/heading/index.d.ts +17 -0
  77. package/input-text/Icons.js +22 -0
  78. package/input-text/InputText.js +611 -0
  79. package/input-text/index.d.ts +36 -0
  80. package/layout/ApplicationLayout.js +235 -0
  81. package/layout/Icons.js +55 -0
  82. package/link/Link.js +183 -0
  83. package/link/index.d.ts +23 -0
  84. package/main.d.ts +44 -0
  85. package/{dist/main.js → main.js} +141 -49
  86. package/number-input/NumberInput.js +128 -0
  87. package/number-input/NumberInput.stories.jsx +115 -0
  88. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +3 -2
  89. package/number-input/index.d.ts +113 -0
  90. package/package.json +38 -23
  91. package/paginator/Icons.js +66 -0
  92. package/paginator/Paginator.d.ts +4 -0
  93. package/paginator/Paginator.js +198 -0
  94. package/paginator/types.d.ts +38 -0
  95. package/paginator/types.js +5 -0
  96. package/password-input/PasswordInput.js +199 -0
  97. package/password-input/PasswordInput.stories.jsx +131 -0
  98. package/password-input/index.d.ts +94 -0
  99. package/progress-bar/ProgressBar.d.ts +4 -0
  100. package/progress-bar/ProgressBar.js +170 -0
  101. package/progress-bar/types.d.ts +37 -0
  102. package/progress-bar/types.js +5 -0
  103. package/radio/Radio.d.ts +4 -0
  104. package/radio/Radio.js +174 -0
  105. package/radio/types.d.ts +54 -0
  106. package/radio/types.js +5 -0
  107. package/resultsetTable/ResultsetTable.js +274 -0
  108. package/resultsetTable/index.d.ts +19 -0
  109. package/select/Select.js +865 -0
  110. package/select/index.d.ts +131 -0
  111. package/sidenav/Sidenav.js +145 -0
  112. package/sidenav/index.d.ts +13 -0
  113. package/slider/Slider.d.ts +4 -0
  114. package/slider/Slider.js +306 -0
  115. package/slider/types.d.ts +83 -0
  116. package/slider/types.js +5 -0
  117. package/spinner/Spinner.js +267 -0
  118. package/spinner/index.d.ts +17 -0
  119. package/switch/Switch.d.ts +4 -0
  120. package/switch/Switch.js +179 -0
  121. package/switch/types.d.ts +58 -0
  122. package/switch/types.js +5 -0
  123. package/table/Table.js +118 -0
  124. package/table/index.d.ts +13 -0
  125. package/tabs/Tabs.d.ts +4 -0
  126. package/tabs/Tabs.js +211 -0
  127. package/tabs/types.d.ts +71 -0
  128. package/tabs/types.js +5 -0
  129. package/tag/Tag.js +208 -0
  130. package/tag/index.d.ts +24 -0
  131. package/text-input/TextInput.js +825 -0
  132. package/text-input/index.d.ts +135 -0
  133. package/textarea/Textarea.js +317 -0
  134. package/textarea/Textarea.stories.jsx +135 -0
  135. package/textarea/index.d.ts +117 -0
  136. package/{dist/toggle → toggle}/Toggle.js +30 -67
  137. package/toggle/index.d.ts +21 -0
  138. package/toggle-group/ToggleGroup.js +243 -0
  139. package/toggle-group/index.d.ts +21 -0
  140. package/{dist/upload → upload}/Upload.js +23 -22
  141. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  142. package/upload/buttons-upload/Icons.js +40 -0
  143. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  144. package/upload/dragAndDropArea/Icons.js +39 -0
  145. package/upload/file-upload/FileToUpload.js +115 -0
  146. package/upload/file-upload/Icons.js +66 -0
  147. package/upload/files-upload/FilesToUpload.js +109 -0
  148. package/upload/index.d.ts +15 -0
  149. package/upload/transaction/Icons.js +160 -0
  150. package/upload/transaction/Transaction.js +104 -0
  151. package/upload/transactions/Transactions.js +94 -0
  152. package/useTheme.js +22 -0
  153. package/wizard/Icons.js +65 -0
  154. package/wizard/Wizard.js +271 -0
  155. package/wizard/index.d.ts +18 -0
  156. package/README.md +0 -66
  157. package/babel.config.js +0 -4
  158. package/dist/accordion/Accordion.js +0 -248
  159. package/dist/accordion/Accordion.stories.js +0 -207
  160. package/dist/accordion/readme.md +0 -96
  161. package/dist/alert/Alert.js +0 -304
  162. package/dist/alert/Alert.stories.js +0 -158
  163. package/dist/alert/close.svg +0 -4
  164. package/dist/alert/error.svg +0 -4
  165. package/dist/alert/info.svg +0 -4
  166. package/dist/alert/readme.md +0 -43
  167. package/dist/alert/success.svg +0 -4
  168. package/dist/alert/warning.svg +0 -4
  169. package/dist/button/Button.js +0 -181
  170. package/dist/button/Button.stories.js +0 -224
  171. package/dist/button/readme.md +0 -93
  172. package/dist/card/Card.js +0 -217
  173. package/dist/checkbox/Checkbox.js +0 -240
  174. package/dist/checkbox/Checkbox.stories.js +0 -144
  175. package/dist/checkbox/readme.md +0 -116
  176. package/dist/chip/Chip.js +0 -173
  177. package/dist/common/services/example-service.js +0 -10
  178. package/dist/common/services/example-service.test.js +0 -12
  179. package/dist/common/utils.js +0 -42
  180. package/dist/common/variables.js +0 -434
  181. package/dist/date/Date.stories.js +0 -205
  182. package/dist/date/calendar.svg +0 -1
  183. package/dist/date/calendar_dark.svg +0 -1
  184. package/dist/date/readme.md +0 -73
  185. package/dist/dialog/Dialog.js +0 -197
  186. package/dist/dialog/Dialog.stories.js +0 -217
  187. package/dist/dialog/readme.md +0 -32
  188. package/dist/dropdown/Dropdown.js +0 -416
  189. package/dist/dropdown/Dropdown.stories.js +0 -249
  190. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  191. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  192. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  193. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  194. package/dist/dropdown/readme.md +0 -69
  195. package/dist/footer/Footer.js +0 -346
  196. package/dist/footer/Footer.stories.js +0 -94
  197. package/dist/footer/dxc_logo_wht.png +0 -0
  198. package/dist/footer/readme.md +0 -41
  199. package/dist/header/Header.js +0 -360
  200. package/dist/header/Header.stories.js +0 -176
  201. package/dist/header/close_icon.svg +0 -1
  202. package/dist/header/dxc_logo_black.png +0 -0
  203. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  204. package/dist/header/dxc_logo_white.png +0 -0
  205. package/dist/header/hamb_menu_black.svg +0 -1
  206. package/dist/header/hamb_menu_white.svg +0 -1
  207. package/dist/header/readme.md +0 -33
  208. package/dist/heading/Heading.js +0 -153
  209. package/dist/input-text/InputText.js +0 -519
  210. package/dist/input-text/InputText.stories.js +0 -209
  211. package/dist/input-text/error.svg +0 -1
  212. package/dist/input-text/readme.md +0 -91
  213. package/dist/link/Link.js +0 -136
  214. package/dist/link/readme.md +0 -51
  215. package/dist/paginator/Paginator.js +0 -196
  216. package/dist/paginator/images/next.svg +0 -3
  217. package/dist/paginator/images/nextPage.svg +0 -3
  218. package/dist/paginator/images/previous.svg +0 -3
  219. package/dist/paginator/images/previousPage.svg +0 -3
  220. package/dist/paginator/readme.md +0 -50
  221. package/dist/progress-bar/ProgressBar.js +0 -185
  222. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  223. package/dist/progress-bar/readme.md +0 -63
  224. package/dist/radio/Radio.js +0 -195
  225. package/dist/radio/Radio.stories.js +0 -166
  226. package/dist/radio/readme.md +0 -70
  227. package/dist/resultsetTable/ResultsetTable.js +0 -333
  228. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  229. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  230. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  231. package/dist/select/Select.js +0 -451
  232. package/dist/select/Select.stories.js +0 -235
  233. package/dist/select/readme.md +0 -72
  234. package/dist/sidenav/Sidenav.js +0 -222
  235. package/dist/sidenav/arrow_icon.svg +0 -3
  236. package/dist/slider/Slider.js +0 -258
  237. package/dist/slider/Slider.stories.js +0 -241
  238. package/dist/slider/readme.md +0 -64
  239. package/dist/spinner/Spinner.js +0 -193
  240. package/dist/spinner/Spinner.stories.js +0 -183
  241. package/dist/spinner/readme.md +0 -65
  242. package/dist/switch/Switch.js +0 -199
  243. package/dist/switch/Switch.stories.js +0 -134
  244. package/dist/switch/readme.md +0 -133
  245. package/dist/table/Table.js +0 -93
  246. package/dist/tabs/Tabs.js +0 -172
  247. package/dist/tabs/Tabs.stories.js +0 -130
  248. package/dist/tabs/readme.md +0 -78
  249. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  250. package/dist/tabs-for-sections/readme.md +0 -78
  251. package/dist/tag/Tag.js +0 -217
  252. package/dist/textarea/Textarea.js +0 -227
  253. package/dist/toggle/Toggle.stories.js +0 -297
  254. package/dist/toggle/readme.md +0 -80
  255. package/dist/toggle-group/ToggleGroup.js +0 -214
  256. package/dist/toggle-group/readme.md +0 -82
  257. package/dist/upload/Upload.stories.js +0 -72
  258. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  259. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  260. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  261. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  262. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  263. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  264. package/dist/upload/file-upload/FileToUpload.js +0 -158
  265. package/dist/upload/file-upload/audio-icon.svg +0 -4
  266. package/dist/upload/file-upload/close.svg +0 -4
  267. package/dist/upload/file-upload/file-icon.svg +0 -4
  268. package/dist/upload/file-upload/video-icon.svg +0 -4
  269. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  270. package/dist/upload/readme.md +0 -37
  271. package/dist/upload/transaction/Transaction.js +0 -155
  272. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  273. package/dist/upload/transaction/audio-icon.svg +0 -4
  274. package/dist/upload/transaction/error-icon.svg +0 -4
  275. package/dist/upload/transaction/file-icon-err.svg +0 -4
  276. package/dist/upload/transaction/file-icon.svg +0 -4
  277. package/dist/upload/transaction/image-icon-err.svg +0 -4
  278. package/dist/upload/transaction/image-icon.svg +0 -4
  279. package/dist/upload/transaction/success-icon.svg +0 -4
  280. package/dist/upload/transaction/video-icon-err.svg +0 -4
  281. package/dist/upload/transaction/video-icon.svg +0 -4
  282. package/dist/upload/transactions/Transactions.js +0 -120
  283. package/dist/wizard/Wizard.js +0 -327
  284. package/dist/wizard/invalid_icon.svg +0 -6
  285. package/dist/wizard/valid_icon.svg +0 -6
  286. package/dist/wizard/validation-wrong.svg +0 -6
  287. package/test/Accordion.test.js +0 -33
  288. package/test/Alert.test.js +0 -53
  289. package/test/Box.test.js +0 -10
  290. package/test/Button.test.js +0 -18
  291. package/test/Card.test.js +0 -30
  292. package/test/Checkbox.test.js +0 -45
  293. package/test/Chip.test.js +0 -25
  294. package/test/Date.test.js +0 -393
  295. package/test/Dialog.test.js +0 -23
  296. package/test/Dropdown.test.js +0 -130
  297. package/test/Footer.test.js +0 -99
  298. package/test/Header.test.js +0 -39
  299. package/test/Heading.test.js +0 -35
  300. package/test/InputText.test.js +0 -236
  301. package/test/Link.test.js +0 -25
  302. package/test/Paginator.test.js +0 -165
  303. package/test/ProgressBar.test.js +0 -35
  304. package/test/Radio.test.js +0 -37
  305. package/test/ResultsetTable.test.js +0 -282
  306. package/test/Select.test.js +0 -191
  307. package/test/Sidenav.test.js +0 -87
  308. package/test/Slider.test.js +0 -65
  309. package/test/Spinner.test.js +0 -27
  310. package/test/Switch.test.js +0 -45
  311. package/test/Table.test.js +0 -36
  312. package/test/Tabs.test.js +0 -88
  313. package/test/TabsForSections.test.js +0 -34
  314. package/test/Tag.test.js +0 -32
  315. package/test/TextArea.test.js +0 -52
  316. package/test/Toggle.test.js +0 -43
  317. package/test/ToggleGroup.test.js +0 -81
  318. package/test/Upload.test.js +0 -60
  319. package/test/Wizard.test.js +0 -130
  320. package/test/mocks/pngMock.js +0 -1
  321. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,83 @@
1
+ declare type Size = "medium" | "large" | "fillParent";
2
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ declare type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+ declare type Props = {
10
+ /**
11
+ * Text to be placed above the slider.
12
+ */
13
+ label?: string;
14
+ /**
15
+ * Name attribute of the input element.
16
+ */
17
+ name?: string;
18
+ /**
19
+ * The selected value. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
20
+ */
21
+ value?: number;
22
+ /**
23
+ * Helper text to be placed above the slider.
24
+ */
25
+ helperText?: string;
26
+ /**
27
+ * The minimum value available for selection.
28
+ */
29
+ minValue?: number;
30
+ /**
31
+ * The maximum value available for selection.
32
+ */
33
+ maxValue?: number;
34
+ /**
35
+ * The step interval between values available for selection.
36
+ */
37
+ step?: number;
38
+ /**
39
+ * Whether the min/max value labels should be displayed next to the slider
40
+ */
41
+ showLimitsValues?: boolean;
42
+ /**
43
+ * Whether the input element for displaying/controlling the slider value should be displayed next to the slider.
44
+ */
45
+ showInput?: boolean;
46
+ /**
47
+ * If true, the component will be disabled.
48
+ */
49
+ disabled?: boolean;
50
+ /**
51
+ * Whether the marks between each step should be shown or not.
52
+ */
53
+ marks?: boolean;
54
+ /**
55
+ * This function will be called when the slider changes its value, as it's being dragged.
56
+ * The new value will be passed as a parameter when this function is executed.
57
+ */
58
+ onChange?: (value: number) => void;
59
+ /**
60
+ * This function will be called when the slider changes its value, but only when the thumb is released.
61
+ * The new value will be passed as a parameter when this function is executed.
62
+ */
63
+ onDragEnd?: (value: number) => void;
64
+ /**
65
+ * This function will be used to format the labels displayed next to the slider.
66
+ * The value will be passed as parameter and the function must return the formatted value.
67
+ */
68
+ labelFormatCallback?: (value: number) => void;
69
+ /**
70
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
71
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
72
+ */
73
+ margin?: Space | Margin;
74
+ /**
75
+ * Size of the component.
76
+ */
77
+ size?: Size;
78
+ /**
79
+ * Value of the tabindex attribute.
80
+ */
81
+ tabIndex?: number;
82
+ };
83
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,267 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _propTypes = _interopRequireDefault(require("prop-types"));
23
+
24
+ var _variables = require("../common/variables.js");
25
+
26
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
27
+
28
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
29
+
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12;
31
+
32
+ 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); }
33
+
34
+ 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; }
35
+
36
+ var DxcSpinner = function DxcSpinner(_ref) {
37
+ var _ref$label = _ref.label,
38
+ label = _ref$label === void 0 ? "" : _ref$label,
39
+ value = _ref.value,
40
+ _ref$showValue = _ref.showValue,
41
+ showValue = _ref$showValue === void 0 ? false : _ref$showValue,
42
+ _ref$mode = _ref.mode,
43
+ mode = _ref$mode === void 0 ? "large" : _ref$mode,
44
+ margin = _ref.margin;
45
+ var colorsTheme = (0, _useTheme["default"])();
46
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
47
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
48
+ theme: colorsTheme.spinner
49
+ }, /*#__PURE__*/_react["default"].createElement(DXCSpinner, {
50
+ margin: margin,
51
+ mode: mode
52
+ }, /*#__PURE__*/_react["default"].createElement(SpinnerContainer, {
53
+ backgroundType: backgroundType,
54
+ mode: mode
55
+ }, mode === "overlay" && /*#__PURE__*/_react["default"].createElement(BackOverlay, null), /*#__PURE__*/_react["default"].createElement(BackgroundSpinner, {
56
+ mode: mode
57
+ }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGBackground, {
58
+ viewBox: "0 0 140 140"
59
+ }, /*#__PURE__*/_react["default"].createElement(CircleBackground, {
60
+ cx: "70",
61
+ cy: "70",
62
+ r: "65",
63
+ mode: mode
64
+ })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGBackground, {
65
+ viewBox: "0 0 16 16"
66
+ }, /*#__PURE__*/_react["default"].createElement(CircleBackground, {
67
+ cx: "8",
68
+ cy: "8",
69
+ r: "6",
70
+ mode: mode
71
+ }))), value >= 0 && value <= 100 ? /*#__PURE__*/_react["default"].createElement(Spinner, {
72
+ role: "progressbar",
73
+ mode: mode
74
+ }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
75
+ viewBox: "0 0 140 140",
76
+ isDeterminated: true
77
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
78
+ cx: "70",
79
+ cy: "70",
80
+ r: "65",
81
+ backgroundType: backgroundType,
82
+ mode: mode,
83
+ isDeterminated: true,
84
+ value: value
85
+ })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
86
+ viewBox: "0 0 16 16",
87
+ isDeterminated: true
88
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
89
+ cx: "8",
90
+ cy: "8",
91
+ r: "6",
92
+ backgroundType: backgroundType,
93
+ mode: mode,
94
+ isDeterminated: true,
95
+ value: value
96
+ }))) : /*#__PURE__*/_react["default"].createElement(Spinner, {
97
+ role: "progressbar",
98
+ mode: mode
99
+ }, mode !== "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
100
+ viewBox: "0 0 140 140",
101
+ isDeterminated: false
102
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
103
+ cx: "70",
104
+ cy: "70",
105
+ r: "65",
106
+ backgroundType: backgroundType,
107
+ mode: mode,
108
+ isDeterminated: false
109
+ })), mode === "small" && /*#__PURE__*/_react["default"].createElement(SVGSpinner, {
110
+ viewBox: "0 0 16 16",
111
+ isDeterminated: false
112
+ }, /*#__PURE__*/_react["default"].createElement(CircleSpinner, {
113
+ cx: "8",
114
+ cy: "8",
115
+ r: "6",
116
+ backgroundType: backgroundType,
117
+ mode: mode,
118
+ isDeterminated: false
119
+ }))), mode !== "small" && /*#__PURE__*/_react["default"].createElement(LabelsContainer, {
120
+ label: label,
121
+ value: value,
122
+ showValue: showValue
123
+ }, /*#__PURE__*/_react["default"].createElement(SpinnerLabel, {
124
+ backgroundType: backgroundType,
125
+ mode: mode
126
+ }, label), (value || value === 0) && showValue && /*#__PURE__*/_react["default"].createElement(SpinnerProgress, {
127
+ backgroundType: backgroundType,
128
+ mode: mode,
129
+ showValue: showValue
130
+ }, value, "%")))));
131
+ };
132
+
133
+ var determinatedValue = function determinatedValue(props, strokeDashArray) {
134
+ var val = 0;
135
+
136
+ if (props.value >= 0 && props.value <= 100) {
137
+ val = strokeDashArray * (1 - props.value / 100);
138
+ }
139
+
140
+ return val;
141
+ };
142
+
143
+ DxcSpinner.propTypes = {
144
+ label: _propTypes["default"].string,
145
+ value: _propTypes["default"].number,
146
+ showValue: _propTypes["default"].bool,
147
+ mode: _propTypes["default"].oneOf(["large", "small", "overlay"]),
148
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
149
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
150
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
151
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
152
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
153
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
154
+ };
155
+
156
+ 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) {
157
+ return props.mode === "overlay" ? "100vh" : "";
158
+ }, function (props) {
159
+ return props.mode === "overlay" ? "100vw" : "";
160
+ }, function (props) {
161
+ return props.mode === "overlay" ? "flex" : "";
162
+ }, function (props) {
163
+ return props.mode === "overlay" ? "fixed" : "";
164
+ }, function (props) {
165
+ return props.mode === "overlay" ? 0 : "";
166
+ }, function (props) {
167
+ return props.mode === "overlay" ? 0 : "";
168
+ }, function (props) {
169
+ return props.mode === "overlay" ? "center" : "";
170
+ }, function (props) {
171
+ return props.mode === "overlay" ? "center" : "";
172
+ }, function (props) {
173
+ return props.mode === "overlay" ? 1300 : "";
174
+ }, function (props) {
175
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
176
+ }, function (props) {
177
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
178
+ }, function (props) {
179
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
180
+ }, function (props) {
181
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
182
+ }, function (props) {
183
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
184
+ });
185
+
186
+ 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) {
187
+ return props.mode === "small" ? "16px" : "140px";
188
+ }, function (props) {
189
+ return props.mode === "small" ? "16px" : "140px";
190
+ });
191
+
192
+ 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) {
193
+ return "".concat(props.theme.overlayBackgroundColor);
194
+ }, function (props) {
195
+ return "".concat(props.theme.overlayOpacity);
196
+ });
197
+
198
+ var BackgroundSpinner = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: absolute;\n z-index: 1;\n"])));
199
+
200
+ var SVGBackground = _styledComponents["default"].svg(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n"])));
201
+
202
+ 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) {
203
+ return "".concat(props.theme.totalCircleColor);
204
+ }, function (props) {
205
+ return props.mode !== "small" ? "409" : "38";
206
+ }, function (props) {
207
+ return props.mode !== "small" ? "8.5px" : "2px";
208
+ });
209
+
210
+ var Spinner = _styledComponents["default"].div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n height: inherit;\n width: inherit;\n position: relative;\n z-index: 2;\n"])));
211
+
212
+ 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) {
213
+ return !props.isDeterminated ? "1.4s linear infinite both spinner-svg" : "";
214
+ });
215
+
216
+ 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) {
217
+ 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";
218
+ }, function (props) {
219
+ return props.backgroundType === "dark" ? props.theme.trackCircleColorOnDark : props.theme.trackCircleColor;
220
+ }, function (props) {
221
+ return !props.isDeterminated ? "50% 50%" : "";
222
+ }, function (props) {
223
+ return props.mode !== "small" ? "409" : "38";
224
+ }, function (props) {
225
+ return props.mode !== "small" ? "8.5px" : "2px";
226
+ }, function (props) {
227
+ return props.isDeterminated ? props.mode !== "small" ? determinatedValue(props, 409) : determinatedValue(props, 38) : "";
228
+ });
229
+
230
+ 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"])));
231
+
232
+ 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) {
233
+ return props.mode === "overlay" ? props.theme.overlayLabelFontFamily : props.theme.labelFontFamily;
234
+ }, function (props) {
235
+ return props.mode === "overlay" ? props.theme.overlayLabelFontWeight : props.theme.labelFontWeight;
236
+ }, function (props) {
237
+ return props.mode === "overlay" ? props.theme.overlayLabelFontSize : props.theme.labelFontSize;
238
+ }, function (props) {
239
+ return props.mode === "overlay" ? props.theme.overlayLabelFontStyle : props.theme.labelFontStyle;
240
+ }, function (props) {
241
+ return props.mode === "overlay" ? props.theme.overlayLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
242
+ }, function (props) {
243
+ return props.mode === "overlay" ? props.theme.overlayLabelTextAlign : props.theme.labelTextAlign;
244
+ }, function (props) {
245
+ return props.mode === "overlay" ? props.theme.overlayLabelLetterSpacing : props.theme.labelLetterSpacing;
246
+ });
247
+
248
+ 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) {
249
+ return props.value !== "" && props.showValue === true && "block" || "none";
250
+ }, function (props) {
251
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontFamily : props.theme.progressValueFontFamily;
252
+ }, function (props) {
253
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontWeight : props.theme.progressValueFontWeight;
254
+ }, function (props) {
255
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontSize : props.theme.progressValueFontSize;
256
+ }, function (props) {
257
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontStyle : props.theme.progressValueFontStyle;
258
+ }, function (props) {
259
+ return props.mode === "overlay" ? props.theme.overlayProgressValueFontColor : props.backgroundType === "dark" ? props.theme.progressValueFontColorOnDark : props.theme.progressValueFontColor;
260
+ }, function (props) {
261
+ return props.mode === "overlay" ? props.theme.overlayProgressValueTextAlign : props.theme.progressValueTextAlign;
262
+ }, function (props) {
263
+ return props.mode === "overlay" ? props.theme.overlayProgressValueLetterSpacing : props.theme.progressValueLetterSpacing;
264
+ });
265
+
266
+ var _default = DxcSpinner;
267
+ exports["default"] = _default;
@@ -0,0 +1,17 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+
9
+ type Props = {
10
+ label?: string;
11
+ value?: number;
12
+ showValue?: boolean;
13
+ mode?: "large" | "small" | "overlay";
14
+ margin?: Space | Margin;
15
+ };
16
+
17
+ export default function DxcSpinner(props: Props): JSX.Element;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import SwitchPropsType from "./types";
3
+ declare const DxcSwitch: ({ checked, value, label, labelPosition, name, disabled, onChange, required, margin, size, tabIndex, }: SwitchPropsType) => JSX.Element;
4
+ export default DxcSwitch;
@@ -0,0 +1,179 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
+
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _core = require("@material-ui/core");
23
+
24
+ var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
25
+
26
+ var _variables = require("../common/variables.js");
27
+
28
+ var _utils = require("../common/utils.js");
29
+
30
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
31
+
32
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
33
+
34
+ var _templateObject, _templateObject2;
35
+
36
+ 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); }
37
+
38
+ 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; }
39
+
40
+ var DxcSwitch = function DxcSwitch(_ref) {
41
+ var checked = _ref.checked,
42
+ value = _ref.value,
43
+ _ref$label = _ref.label,
44
+ label = _ref$label === void 0 ? "" : _ref$label,
45
+ _ref$labelPosition = _ref.labelPosition,
46
+ labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
47
+ _ref$name = _ref.name,
48
+ name = _ref$name === void 0 ? "" : _ref$name,
49
+ _ref$disabled = _ref.disabled,
50
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
51
+ onChange = _ref.onChange,
52
+ _ref$required = _ref.required,
53
+ required = _ref$required === void 0 ? false : _ref$required,
54
+ margin = _ref.margin,
55
+ _ref$size = _ref.size,
56
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
57
+ _ref$tabIndex = _ref.tabIndex,
58
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
59
+
60
+ var _useState = (0, _react.useState)(false),
61
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
62
+ innerChecked = _useState2[0],
63
+ setInnerChecked = _useState2[1];
64
+
65
+ var colorsTheme = (0, _useTheme["default"])();
66
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
67
+
68
+ var handlerSwitchChange = function handlerSwitchChange(event) {
69
+ if (checked === undefined) {
70
+ var _event$target$checked;
71
+
72
+ var isChecked = (_event$target$checked = event.target.checked) !== null && _event$target$checked !== void 0 ? _event$target$checked : !innerChecked;
73
+ setInnerChecked(isChecked);
74
+ onChange === null || onChange === void 0 ? void 0 : onChange(isChecked);
75
+ } else onChange === null || onChange === void 0 ? void 0 : onChange(!checked);
76
+ };
77
+
78
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
79
+ theme: colorsTheme["switch"]
80
+ }, /*#__PURE__*/_react["default"].createElement(SwitchContainer, {
81
+ margin: margin,
82
+ disabled: disabled,
83
+ labelPosition: labelPosition,
84
+ size: size,
85
+ backgroundType: backgroundType
86
+ }, /*#__PURE__*/_react["default"].createElement(_core.Switch, {
87
+ checked: checked !== null && checked !== void 0 ? checked : innerChecked,
88
+ inputProps: {
89
+ name: name,
90
+ tabIndex: tabIndex
91
+ },
92
+ onChange: handlerSwitchChange,
93
+ value: value,
94
+ disabled: disabled,
95
+ disableRipple: true
96
+ }), /*#__PURE__*/_react["default"].createElement(LabelContainer, {
97
+ labelPosition: labelPosition,
98
+ onClick: !disabled && handlerSwitchChange,
99
+ disabled: disabled,
100
+ backgroundType: backgroundType
101
+ }, required && /*#__PURE__*/_react["default"].createElement(_RequiredComponent["default"], null), label)));
102
+ };
103
+
104
+ var sizes = {
105
+ small: "60px",
106
+ medium: "240px",
107
+ large: "480px",
108
+ fillParent: "100%",
109
+ fitContent: "unset"
110
+ };
111
+
112
+ var calculateWidth = function calculateWidth(margin, size) {
113
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
114
+ };
115
+
116
+ var SwitchContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (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\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"])), function (props) {
117
+ return calculateWidth(props.margin, props.size);
118
+ }, function (props) {
119
+ return props.labelPosition === "after" ? "row" : "row-reverse";
120
+ }, function (props) {
121
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
122
+ }, function (props) {
123
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
124
+ }, function (props) {
125
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
126
+ }, function (props) {
127
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
128
+ }, function (props) {
129
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
130
+ }, function (props) {
131
+ return props.disabled ? "not-allowed" : "default";
132
+ }, function (props) {
133
+ return props.theme.trackWidth;
134
+ }, function (props) {
135
+ return "".concat(props.backgroundType === "dark" ? props.theme.thumbFocusColorOnDark : props.theme.thumbFocusColor, " solid 2px");
136
+ }, function (props) {
137
+ return props.backgroundType === "dark" ? props.theme.uncheckedTrackBackgroundColorOnDark : props.theme.uncheckedTrackBackgroundColor;
138
+ }, function (props) {
139
+ return props.theme.trackHeight;
140
+ }, function (props) {
141
+ return props.theme.thumbWidth;
142
+ }, function (props) {
143
+ return props.theme.thumbHeight;
144
+ }, function (props) {
145
+ return props.backgroundType === "dark" ? props.theme.uncheckedThumbBackgroundColorOnDark : props.theme.uncheckedThumbBackgroundColor;
146
+ }, function (props) {
147
+ return props.backgroundType === "dark" ? props.theme.disabledUncheckedThumbBackgroundColorOnDark : props.theme.disabledUncheckedThumbBackgroundColor;
148
+ }, function (props) {
149
+ return props.backgroundType === "dark" ? props.theme.disabledUncheckedTrackBackgroundColorOnDark : props.theme.disabledUncheckedTrackBackgroundColor;
150
+ }, function (props) {
151
+ return props.backgroundType === "dark" ? props.theme.disabledCheckedThumbBackgroundColorOnDark : props.theme.disabledCheckedThumbBackgroundColor;
152
+ }, function (props) {
153
+ return props.backgroundType === "dark" ? props.theme.disabledCheckedTrackBackgroundColorOnDark : props.theme.disabledCheckedTrackBackgroundColor;
154
+ }, function (props) {
155
+ return props.backgroundType === "dark" ? props.theme.checkedThumbBackgroundColorOnDark : props.theme.checkedThumbBackgroundColor;
156
+ }, function (props) {
157
+ return props.theme.thumbShift;
158
+ }, function (props) {
159
+ return props.backgroundType === "dark" ? props.theme.checkedTrackBackgroundColorOnDark : props.theme.checkedTrackBackgroundColor;
160
+ });
161
+
162
+ var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n opacity: 1;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n cursor: ", ";\n ", "\n"])), function (props) {
163
+ return props.disabled ? props.backgroundType === "dark" ? props.theme.disabledLabelFontColorOnDark : props.theme.disabledLabelFontColor : props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
164
+ }, function (props) {
165
+ return props.theme.labelFontFamily;
166
+ }, function (props) {
167
+ return props.theme.labelFontSize;
168
+ }, function (props) {
169
+ return props.disabled ? props.theme.disabledLabelFontStyle : props.theme.labelFontStyle;
170
+ }, function (props) {
171
+ return props.theme.labelFontWeight;
172
+ }, function (props) {
173
+ return props.disabled === true ? "not-allowed" : "pointer";
174
+ }, function (props) {
175
+ return props.labelPosition === "after" ? "margin-left: ".concat(props.theme.spaceBetweenLabelSwitch, ";") : "margin-right: ".concat(props.theme.spaceBetweenLabelSwitch, ";");
176
+ });
177
+
178
+ var _default = DxcSwitch;
179
+ exports["default"] = _default;
@@ -0,0 +1,58 @@
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ declare type Props = {
9
+ /**
10
+ * If true, the component is checked. If undefined, the component will be uncontrolled
11
+ * and the checked attribute will be managed internally by the component.
12
+ */
13
+ checked?: boolean;
14
+ /**
15
+ * Will be passed to the value attribute of the html input element. When inside a form,
16
+ * this value will be only submitted if the switch is checked.
17
+ */
18
+ value?: string;
19
+ /**
20
+ * Text to be placed next to the switch.
21
+ */
22
+ label?: string;
23
+ /**
24
+ * Whether the label should appear after or before the switch.
25
+ */
26
+ labelPosition?: "before" | "after";
27
+ /**
28
+ * Name attribute of the input element.
29
+ */
30
+ name?: string;
31
+ /**
32
+ * If true, the component will be disabled.
33
+ */
34
+ disabled?: boolean;
35
+ /**
36
+ * This function will be called when the user changes the state of the switch.
37
+ * The new value of the checked attribute will be passed as a parameter.
38
+ */
39
+ onChange?: (checked: boolean) => void;
40
+ /**
41
+ * If true, the switch will change its appearence, showing that the value is required.
42
+ */
43
+ required?: boolean;
44
+ /**
45
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
46
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
47
+ */
48
+ margin?: Space | Margin;
49
+ /**
50
+ * Size of the component.
51
+ */
52
+ size?: "small" | "medium" | "large" | "fillParent" | "fitContent";
53
+ /**
54
+ * Value of the tabindex.
55
+ */
56
+ tabIndex?: number;
57
+ };
58
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });