@dxc-technology/halstack-react 0.0.0-27afd3d → 0.0.0-28a98e5

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 (293) 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.js +289 -0
  8. package/accordion/index.d.ts +28 -0
  9. package/{dist/accordion-group → accordion-group}/AccordionGroup.js +46 -18
  10. package/accordion-group/index.d.ts +16 -0
  11. package/alert/Alert.js +309 -0
  12. package/alert/index.d.ts +51 -0
  13. package/badge/Badge.js +59 -0
  14. package/{dist/box → box}/Box.js +36 -29
  15. package/box/index.d.ts +25 -0
  16. package/button/Button.d.ts +4 -0
  17. package/button/Button.js +182 -0
  18. package/button/Button.stories.tsx +306 -0
  19. package/button/types.d.ts +57 -0
  20. package/button/types.js +5 -0
  21. package/card/Card.js +200 -0
  22. package/card/index.d.ts +22 -0
  23. package/checkbox/Checkbox.js +275 -0
  24. package/checkbox/index.d.ts +24 -0
  25. package/chip/Chip.js +221 -0
  26. package/chip/index.d.ts +22 -0
  27. package/{dist/common → common}/OpenSans.css +0 -0
  28. package/{dist/common → common}/RequiredComponent.js +3 -11
  29. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  30. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  31. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  32. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  33. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  34. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  35. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  36. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  37. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  38. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  39. package/common/utils.js +22 -0
  40. package/common/variables.js +1567 -0
  41. package/{dist/date → date}/Date.js +77 -56
  42. package/date/index.d.ts +27 -0
  43. package/date-input/DateInput.js +396 -0
  44. package/date-input/index.d.ts +95 -0
  45. package/dialog/Dialog.js +184 -0
  46. package/dialog/index.d.ts +18 -0
  47. package/dropdown/Dropdown.js +450 -0
  48. package/dropdown/index.d.ts +26 -0
  49. package/file-input/FileInput.js +532 -0
  50. package/file-input/FileItem.js +193 -0
  51. package/file-input/index.d.ts +81 -0
  52. package/footer/Footer.js +297 -0
  53. package/footer/Icons.js +77 -0
  54. package/footer/index.d.ts +25 -0
  55. package/header/Header.js +326 -0
  56. package/header/Icons.js +59 -0
  57. package/header/index.d.ts +25 -0
  58. package/heading/Heading.js +176 -0
  59. package/heading/index.d.ts +17 -0
  60. package/input-text/Icons.js +22 -0
  61. package/input-text/InputText.js +611 -0
  62. package/input-text/index.d.ts +36 -0
  63. package/{dist/layout → layout}/ApplicationLayout.js +39 -134
  64. package/layout/Icons.js +55 -0
  65. package/link/Link.js +183 -0
  66. package/link/index.d.ts +23 -0
  67. package/main.d.ts +44 -0
  68. package/{dist/main.js → main.js} +125 -65
  69. package/number-input/NumberInput.js +128 -0
  70. package/number-input/NumberInputContext.js +16 -0
  71. package/number-input/index.d.ts +113 -0
  72. package/package.json +31 -22
  73. package/paginator/Icons.js +66 -0
  74. package/paginator/Paginator.js +221 -0
  75. package/paginator/index.d.ts +20 -0
  76. package/password-input/PasswordInput.js +199 -0
  77. package/password-input/index.d.ts +94 -0
  78. package/progress-bar/ProgressBar.js +188 -0
  79. package/progress-bar/index.d.ts +18 -0
  80. package/{dist/radio → radio}/Radio.js +39 -34
  81. package/radio/index.d.ts +23 -0
  82. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +92 -145
  83. package/resultsetTable/index.d.ts +19 -0
  84. package/select/Select.js +864 -0
  85. package/select/index.d.ts +131 -0
  86. package/sidenav/Sidenav.js +145 -0
  87. package/sidenav/index.d.ts +13 -0
  88. package/slider/Slider.js +340 -0
  89. package/slider/index.d.ts +29 -0
  90. package/spinner/Spinner.js +267 -0
  91. package/spinner/index.d.ts +17 -0
  92. package/switch/Switch.js +208 -0
  93. package/switch/index.d.ts +24 -0
  94. package/table/Table.js +118 -0
  95. package/table/index.d.ts +13 -0
  96. package/tabs/Tabs.js +259 -0
  97. package/tabs/index.d.ts +19 -0
  98. package/tag/Tag.js +208 -0
  99. package/tag/index.d.ts +24 -0
  100. package/text-input/TextInput.js +818 -0
  101. package/text-input/index.d.ts +135 -0
  102. package/textarea/Textarea.js +315 -0
  103. package/textarea/index.d.ts +117 -0
  104. package/{dist/toggle → toggle}/Toggle.js +30 -67
  105. package/toggle/index.d.ts +21 -0
  106. package/toggle-group/ToggleGroup.js +243 -0
  107. package/toggle-group/index.d.ts +21 -0
  108. package/{dist/upload → upload}/Upload.js +23 -22
  109. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  110. package/upload/buttons-upload/Icons.js +40 -0
  111. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  112. package/upload/dragAndDropArea/Icons.js +39 -0
  113. package/upload/file-upload/FileToUpload.js +115 -0
  114. package/upload/file-upload/Icons.js +66 -0
  115. package/upload/files-upload/FilesToUpload.js +109 -0
  116. package/upload/index.d.ts +15 -0
  117. package/upload/transaction/Icons.js +160 -0
  118. package/upload/transaction/Transaction.js +104 -0
  119. package/upload/transactions/Transactions.js +94 -0
  120. package/{dist/useTheme.js → useTheme.js} +0 -0
  121. package/wizard/Icons.js +65 -0
  122. package/wizard/Wizard.js +271 -0
  123. package/wizard/index.d.ts +18 -0
  124. package/README.md +0 -66
  125. package/babel.config.js +0 -8
  126. package/dist/ThemeContext.js +0 -187
  127. package/dist/accordion/Accordion.js +0 -268
  128. package/dist/accordion/Accordion.stories.js +0 -207
  129. package/dist/accordion/readme.md +0 -96
  130. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  131. package/dist/accordion-group/readme.md +0 -70
  132. package/dist/alert/Alert.js +0 -303
  133. package/dist/alert/Alert.stories.js +0 -158
  134. package/dist/alert/close.svg +0 -4
  135. package/dist/alert/error.svg +0 -4
  136. package/dist/alert/info.svg +0 -4
  137. package/dist/alert/readme.md +0 -43
  138. package/dist/alert/success.svg +0 -4
  139. package/dist/alert/warning.svg +0 -4
  140. package/dist/badge/Badge.js +0 -42
  141. package/dist/button/Button.js +0 -199
  142. package/dist/button/Button.stories.js +0 -224
  143. package/dist/button/readme.md +0 -93
  144. package/dist/card/Card.js +0 -217
  145. package/dist/checkbox/Checkbox.js +0 -229
  146. package/dist/checkbox/Checkbox.stories.js +0 -144
  147. package/dist/checkbox/readme.md +0 -116
  148. package/dist/chip/Chip.js +0 -205
  149. package/dist/common/services/example-service.js +0 -10
  150. package/dist/common/services/example-service.test.js +0 -12
  151. package/dist/common/utils.js +0 -42
  152. package/dist/common/variables.js +0 -346
  153. package/dist/date/Date.stories.js +0 -205
  154. package/dist/date/calendar.svg +0 -1
  155. package/dist/date/calendar_dark.svg +0 -1
  156. package/dist/date/readme.md +0 -73
  157. package/dist/dialog/Dialog.js +0 -195
  158. package/dist/dialog/Dialog.stories.js +0 -217
  159. package/dist/dialog/readme.md +0 -32
  160. package/dist/dropdown/Dropdown.js +0 -446
  161. package/dist/dropdown/Dropdown.stories.js +0 -249
  162. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  163. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  164. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  165. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  166. package/dist/dropdown/readme.md +0 -69
  167. package/dist/footer/Footer.js +0 -366
  168. package/dist/footer/Footer.stories.js +0 -94
  169. package/dist/footer/dxc_logo_wht.png +0 -0
  170. package/dist/footer/readme.md +0 -41
  171. package/dist/header/Header.js +0 -368
  172. package/dist/header/Header.stories.js +0 -176
  173. package/dist/header/close_icon.svg +0 -1
  174. package/dist/header/dxc_logo_black.png +0 -0
  175. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  176. package/dist/header/dxc_logo_white.png +0 -0
  177. package/dist/header/hamb_menu_black.svg +0 -1
  178. package/dist/header/hamb_menu_white.svg +0 -1
  179. package/dist/header/readme.md +0 -33
  180. package/dist/heading/Heading.js +0 -153
  181. package/dist/input-text/InputText.js +0 -559
  182. package/dist/input-text/InputText.stories.js +0 -209
  183. package/dist/input-text/error.svg +0 -1
  184. package/dist/input-text/readme.md +0 -91
  185. package/dist/layout/facebook.svg +0 -45
  186. package/dist/layout/linkedin.svg +0 -50
  187. package/dist/layout/twitter.svg +0 -53
  188. package/dist/link/Link.js +0 -187
  189. package/dist/link/readme.md +0 -51
  190. package/dist/paginator/Paginator.js +0 -247
  191. package/dist/paginator/images/next.svg +0 -3
  192. package/dist/paginator/images/nextPage.svg +0 -3
  193. package/dist/paginator/images/previous.svg +0 -3
  194. package/dist/paginator/images/previousPage.svg +0 -3
  195. package/dist/paginator/readme.md +0 -50
  196. package/dist/progress-bar/ProgressBar.js +0 -184
  197. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  198. package/dist/progress-bar/readme.md +0 -63
  199. package/dist/radio/Radio.stories.js +0 -166
  200. package/dist/radio/readme.md +0 -70
  201. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  202. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  203. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  204. package/dist/select/Select.js +0 -472
  205. package/dist/select/Select.stories.js +0 -235
  206. package/dist/select/readme.md +0 -72
  207. package/dist/sidenav/Sidenav.js +0 -123
  208. package/dist/slider/Slider.js +0 -257
  209. package/dist/slider/Slider.stories.js +0 -241
  210. package/dist/slider/readme.md +0 -64
  211. package/dist/spinner/Spinner.js +0 -190
  212. package/dist/spinner/Spinner.stories.js +0 -183
  213. package/dist/spinner/readme.md +0 -65
  214. package/dist/switch/Switch.js +0 -190
  215. package/dist/switch/Switch.stories.js +0 -134
  216. package/dist/switch/readme.md +0 -133
  217. package/dist/table/Table.js +0 -102
  218. package/dist/tabs/Tabs.js +0 -302
  219. package/dist/tabs/Tabs.stories.js +0 -130
  220. package/dist/tabs/readme.md +0 -78
  221. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  222. package/dist/tabs-for-sections/readme.md +0 -78
  223. package/dist/tag/Tag.js +0 -249
  224. package/dist/textarea/Textarea.js +0 -220
  225. package/dist/toggle/Toggle.stories.js +0 -297
  226. package/dist/toggle/readme.md +0 -80
  227. package/dist/toggle-group/ToggleGroup.js +0 -221
  228. package/dist/toggle-group/readme.md +0 -82
  229. package/dist/upload/Upload.stories.js +0 -72
  230. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  231. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  232. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  233. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  234. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  235. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  236. package/dist/upload/file-upload/FileToUpload.js +0 -158
  237. package/dist/upload/file-upload/audio-icon.svg +0 -4
  238. package/dist/upload/file-upload/close.svg +0 -4
  239. package/dist/upload/file-upload/file-icon.svg +0 -4
  240. package/dist/upload/file-upload/video-icon.svg +0 -4
  241. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  242. package/dist/upload/readme.md +0 -37
  243. package/dist/upload/transaction/Transaction.js +0 -155
  244. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  245. package/dist/upload/transaction/audio-icon.svg +0 -4
  246. package/dist/upload/transaction/error-icon.svg +0 -4
  247. package/dist/upload/transaction/file-icon-err.svg +0 -4
  248. package/dist/upload/transaction/file-icon.svg +0 -4
  249. package/dist/upload/transaction/image-icon-err.svg +0 -4
  250. package/dist/upload/transaction/image-icon.svg +0 -4
  251. package/dist/upload/transaction/success-icon.svg +0 -4
  252. package/dist/upload/transaction/video-icon-err.svg +0 -4
  253. package/dist/upload/transaction/video-icon.svg +0 -4
  254. package/dist/upload/transactions/Transactions.js +0 -120
  255. package/dist/wizard/Wizard.js +0 -326
  256. package/dist/wizard/invalid_icon.svg +0 -6
  257. package/dist/wizard/valid_icon.svg +0 -6
  258. package/dist/wizard/validation-wrong.svg +0 -6
  259. package/test/Accordion.test.js +0 -33
  260. package/test/AccordionGroup.test.js +0 -109
  261. package/test/Alert.test.js +0 -53
  262. package/test/Box.test.js +0 -10
  263. package/test/Button.test.js +0 -18
  264. package/test/Card.test.js +0 -30
  265. package/test/Checkbox.test.js +0 -45
  266. package/test/Chip.test.js +0 -25
  267. package/test/Date.test.js +0 -393
  268. package/test/Dialog.test.js +0 -23
  269. package/test/Dropdown.test.js +0 -130
  270. package/test/Footer.test.js +0 -99
  271. package/test/Header.test.js +0 -39
  272. package/test/Heading.test.js +0 -35
  273. package/test/InputText.test.js +0 -240
  274. package/test/Link.test.js +0 -42
  275. package/test/Paginator.test.js +0 -177
  276. package/test/ProgressBar.test.js +0 -35
  277. package/test/Radio.test.js +0 -37
  278. package/test/ResultsetTable.test.js +0 -330
  279. package/test/Select.test.js +0 -192
  280. package/test/Sidenav.test.js +0 -45
  281. package/test/Slider.test.js +0 -82
  282. package/test/Spinner.test.js +0 -27
  283. package/test/Switch.test.js +0 -45
  284. package/test/Table.test.js +0 -36
  285. package/test/Tabs.test.js +0 -109
  286. package/test/TabsForSections.test.js +0 -34
  287. package/test/Tag.test.js +0 -32
  288. package/test/TextArea.test.js +0 -52
  289. package/test/ToggleGroup.test.js +0 -81
  290. package/test/Upload.test.js +0 -60
  291. package/test/Wizard.test.js +0 -130
  292. package/test/mocks/pngMock.js +0 -1
  293. package/test/mocks/svgMock.js +0 -1
@@ -1,65 +0,0 @@
1
- # DXC Spinner Component
2
-
3
- ## Usage
4
-
5
- ```js
6
- import { DxcSpinner } from "@dxc-technology/halstack-react";
7
-
8
- <Spinner theme="dark" label="Processing..." />;
9
- ```
10
-
11
- ## Props
12
-
13
- <table>
14
- <tr style="background-color: grey">
15
- <td>Name</td>
16
- <td>Default</td>
17
- <td>Description</td>
18
- </tr>
19
- <tr>
20
- <td>label: string</td>
21
- <td></td>
22
- <td>Text to be placed inside the spinner.</td>
23
- </tr>
24
- <tr>
25
- <td>theme: 'light' |'dark'</td>
26
- <td><code>'light'</code></td>
27
- <td>Uses one of the available component themes.</td>
28
- </tr>
29
- <tr>
30
- <td>mode: 'large' | 'small' | 'overlay' </td>
31
- <td>large</td>
32
- <td>The spinner can have overlay or small or large size. <td>
33
- </tr>
34
- <tr>
35
- <td>value: string</td>
36
- <td></td>
37
- <td>The value of the progress indicator. If it´s received the component is determinated otherwise is indeterminate</td>
38
- </tr>
39
- <tr>
40
- <td>showValue: boolean</td>
41
- <td>false</td>
42
- <td>If true the value is displayed inside the spinner</td>
43
- </tr>
44
- </table>
45
-
46
- ## Examples
47
-
48
- ```js
49
- import React from "react";
50
-
51
- import { DxcSpinner } from "@dxc-technology/halstack-react";
52
-
53
- function App() {
54
- return (
55
- <div>
56
- <Spinner theme="light" label="Processing..." overlay={false} />
57
- </div>
58
- <div>
59
- <Spinner theme="dark" label="Processing..." overlay={false} showValue value={52} />
60
- </div>
61
- );
62
- }
63
-
64
- export default App;
65
- ```
@@ -1,190 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
- var _core = require("@material-ui/core");
27
-
28
- var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
29
-
30
- require("../common/OpenSans.css");
31
-
32
- var _variables = require("../common/variables.js");
33
-
34
- var _utils = require("../common/utils.js");
35
-
36
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
37
-
38
- function _templateObject2() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n cursor: ", ";\n font-family: \"Open Sans\", sans-serif;\n"]);
40
-
41
- _templateObject2 = function _templateObject2() {
42
- return data;
43
- };
44
-
45
- return data;
46
- }
47
-
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 .Mui-focusVisible {\n border: ", ";\n padding: 7px;\n }\n\n .MuiSwitch-track {\n /*Enabled and unchecked bar*/\n background-color: ", ";\n height: 12px;\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: 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 }\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"]);
50
-
51
- _templateObject = function _templateObject() {
52
- return data;
53
- };
54
-
55
- return data;
56
- }
57
-
58
- var DxcSwitch = function DxcSwitch(_ref) {
59
- var checked = _ref.checked,
60
- value = _ref.value,
61
- label = _ref.label,
62
- _ref$labelPosition = _ref.labelPosition,
63
- labelPosition = _ref$labelPosition === void 0 ? "before" : _ref$labelPosition,
64
- name = _ref.name,
65
- _ref$disabled = _ref.disabled,
66
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
67
- onChange = _ref.onChange,
68
- _ref$required = _ref.required,
69
- required = _ref$required === void 0 ? false : _ref$required,
70
- margin = _ref.margin,
71
- _ref$size = _ref.size,
72
- size = _ref$size === void 0 ? "fitContent" : _ref$size;
73
-
74
- var _useState = (0, _react.useState)(0),
75
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
76
- innerChecked = _useState2[0],
77
- setInnerChecked = _useState2[1];
78
-
79
- var colorsTheme = (0, _useTheme["default"])();
80
-
81
- var handlerSwitchChange = function handlerSwitchChange(newValue) {
82
- if (checked === undefined) {
83
- var isChecked = newValue.target.checked === undefined ? !innerChecked : newValue.target.checked;
84
- setInnerChecked(isChecked);
85
-
86
- if (typeof onChange === "function") {
87
- onChange(isChecked);
88
- }
89
- } else {
90
- if (typeof onChange === "function") {
91
- onChange(!checked);
92
- }
93
- }
94
- };
95
-
96
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
97
- theme: colorsTheme["switch"]
98
- }, _react["default"].createElement(SwitchContainer, {
99
- margin: margin,
100
- disabled: disabled,
101
- labelPosition: labelPosition,
102
- size: size
103
- }, _react["default"].createElement(_core.Switch, {
104
- checked: checked != undefined ? checked : innerChecked,
105
- inputProps: name = {
106
- name: name
107
- },
108
- onChange: handlerSwitchChange,
109
- value: value,
110
- disabled: disabled,
111
- disableRipple: true
112
- }), _react["default"].createElement(LabelContainer, {
113
- labelPosition: labelPosition,
114
- brightness: _variables.componentTokens,
115
- onClick: disabled === true ? function () {} : handlerSwitchChange,
116
- disabled: disabled
117
- }, required && _react["default"].createElement(_RequiredComponent["default"], null), label)));
118
- };
119
-
120
- var sizes = {
121
- small: "60px",
122
- medium: "240px",
123
- large: "480px",
124
- fillParent: "100%",
125
- fitContent: "unset"
126
- };
127
-
128
- var calculateWidth = function calculateWidth(margin, size) {
129
- if (size === "fillParent") {
130
- return "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
131
- }
132
-
133
- return sizes[size];
134
- };
135
-
136
- var SwitchContainer = _styledComponents["default"].div(_templateObject(), function (props) {
137
- return calculateWidth(props.margin, props.size);
138
- }, function (props) {
139
- return props.labelPosition === "after" ? "row" : "row-reverse";
140
- }, function (props) {
141
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
142
- }, function (props) {
143
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
144
- }, function (props) {
145
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
146
- }, function (props) {
147
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
148
- }, function (props) {
149
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
150
- }, function (props) {
151
- return props.disabled === true ? "not-allowed" : "default";
152
- }, function (props) {
153
- return props.theme.focusColor + " solid 2px";
154
- }, function (props) {
155
- return props.disabled ? props.theme.disabledCheckedTrackBackgroundColor : props.theme.uncheckedTrackBackgroundColor;
156
- }, function (props) {
157
- return props.theme.uncheckedThumbBackgroundColor;
158
- }, function (props) {
159
- return props.disabled ? props.theme.disabledUncheckedTrackBackgroundColor : props.theme.uncheckedTrackBackgroundColor;
160
- }, function (props) {
161
- return props.theme.checkedThumbBackgroundColor;
162
- }, function (props) {
163
- return props.disabled ? props.theme.disabledCheckedTrackBackgroundColor : props.theme.checkedTrackBackgroundColor;
164
- });
165
-
166
- var LabelContainer = _styledComponents["default"].span(_templateObject2(), function (props) {
167
- return props.disabled ? props.theme.disabledFontColor : props.theme.fontColor;
168
- }, function (props) {
169
- return props.disabled === true ? "not-allowed" : "pointer";
170
- });
171
-
172
- DxcSwitch.propTypes = {
173
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
174
- checked: _propTypes["default"].bool,
175
- value: _propTypes["default"].any,
176
- label: _propTypes["default"].string,
177
- labelPosition: _propTypes["default"].oneOf(["after", "before", ""]),
178
- name: _propTypes["default"].string,
179
- disabled: _propTypes["default"].bool,
180
- onChange: _propTypes["default"].func,
181
- required: _propTypes["default"].bool,
182
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
183
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
184
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
185
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
186
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
187
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
188
- };
189
- var _default = DxcSwitch;
190
- exports["default"] = _default;
@@ -1,134 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
6
-
7
- var _react = _interopRequireDefault(require("react"));
8
-
9
- var _react2 = require("@storybook/react");
10
-
11
- var _addonActions = require("@storybook/addon-actions");
12
-
13
- var _addonKnobs = require("@storybook/addon-knobs");
14
-
15
- var _readme = _interopRequireDefault(require("./readme.md"));
16
-
17
- var _Switch = _interopRequireDefault(require("./Switch"));
18
-
19
- var onChange = (0, _addonActions.action)("onChange");
20
-
21
- onChange.toString = function () {
22
- return "onChangeHandler";
23
- };
24
-
25
- (0, _react2.storiesOf)("Form Components|Switch", module).add("Component", function () {
26
- return _react["default"].createElement("div", null, _react["default"].createElement("h3", null, "Light"), _react["default"].createElement("div", null, _react["default"].createElement(_Switch["default"], {
27
- checked: false,
28
- label: "Switch component",
29
- labelPosition: "after",
30
- theme: "light",
31
- onChange: onChange
32
- }), _react["default"].createElement(_Switch["default"], {
33
- checked: false,
34
- label: "Label before",
35
- labelPosition: "before",
36
- theme: "light",
37
- onChange: onChange
38
- }), _react["default"].createElement(_Switch["default"], {
39
- checked: false,
40
- label: "Label after",
41
- labelPosition: "after",
42
- theme: "light",
43
- onChange: onChange
44
- }), _react["default"].createElement(_Switch["default"], {
45
- checked: false,
46
- label: "Disabled",
47
- labelPosition: "after",
48
- theme: "light",
49
- disabled: true,
50
- onChange: onChange
51
- }), _react["default"].createElement(_Switch["default"], {
52
- checked: false,
53
- required: true,
54
- label: "Required",
55
- labelPosition: "after",
56
- theme: "light",
57
- disabled: false,
58
- onChange: onChange
59
- })), _react["default"].createElement("h3", null, "Dark"), _react["default"].createElement("div", {
60
- style: {
61
- background: "black"
62
- }
63
- }, _react["default"].createElement("div", null, _react["default"].createElement(_Switch["default"], {
64
- checked: false,
65
- label: "Switch component",
66
- labelPosition: "after",
67
- theme: "dark",
68
- onChange: onChange
69
- }), _react["default"].createElement(_Switch["default"], {
70
- checked: false,
71
- label: "Label before",
72
- labelPosition: "before",
73
- theme: "dark",
74
- onChange: onChange
75
- }), _react["default"].createElement(_Switch["default"], {
76
- checked: false,
77
- label: "Label after",
78
- labelPosition: "after",
79
- theme: "dark",
80
- onChange: onChange
81
- }), _react["default"].createElement(_Switch["default"], {
82
- checked: false,
83
- label: "Disabled",
84
- labelPosition: "after",
85
- theme: "dark",
86
- disabled: true,
87
- onChange: onChange
88
- }), _react["default"].createElement(_Switch["default"], {
89
- checked: false,
90
- required: true,
91
- label: "Required",
92
- labelPosition: "after",
93
- theme: "dark",
94
- disabled: false,
95
- onChange: onChange
96
- }))));
97
- }, {
98
- notes: {
99
- markdown: _readme["default"]
100
- }
101
- });
102
-
103
- var knobProps = function knobProps() {
104
- return {
105
- label: (0, _addonKnobs.text)("Label", "Switch"),
106
- disabled: (0, _addonKnobs["boolean"])("Disabled", false),
107
- labelPosition: (0, _addonKnobs.select)("Label position", {
108
- before: "before",
109
- after: "after"
110
- }, "before"),
111
- theme: (0, _addonKnobs.select)("Theme", {
112
- light: "light",
113
- dark: "dark"
114
- }, "light"),
115
- disableRipple: (0, _addonKnobs["boolean"])("disableRipple", false),
116
- required: (0, _addonKnobs["boolean"])("Required", false)
117
- };
118
- };
119
-
120
- (0, _react2.storiesOf)("Form Components|Switch", module).add("Knobs example", function () {
121
- var props = knobProps();
122
- return _react["default"].createElement("div", {
123
- style: {
124
- background: props.theme === "dark" && "black" || "transparent"
125
- }
126
- }, _react["default"].createElement(_Switch["default"], (0, _extends2["default"])({}, props, {
127
- value: "TestValue",
128
- onChange: onChange
129
- })));
130
- }, {
131
- notes: {
132
- markdown: _readme["default"]
133
- }
134
- });
@@ -1,133 +0,0 @@
1
- # DXC Checkbox Component
2
-
3
- ## Usage
4
-
5
- ```js
6
- import { DxcSwitch } from "@dxc-technology/halstack-react";
7
-
8
- <DxcSwitch onChange={handleNewValue} label="Test Switch" checked={checked} />;
9
- ```
10
-
11
- ## Props
12
-
13
- The API properties are the following:
14
-
15
- <table>
16
- <tr style="background-color: grey">
17
- <td>Name</td>
18
- <td>Type</td>
19
- <td>Default</td>
20
- <td>Required</td>
21
- <td>Description</td>
22
- </tr>
23
- <tr>
24
- <td>checked</td>
25
- <td><code> boolean </code></td>
26
- <td>false</td>
27
- <td>No</td>
28
- <td>If true, the component is checked.</td>
29
- </tr>
30
- <tr>
31
- <td>value</td>
32
- <td><code> any </code></td>
33
- <td></td>
34
- <td>No</td>
35
- <td>Will be passed to the value attribute of the html input element. When inside a form, this value will be only submitted if the switch is checked </td>
36
- </tr>
37
- <tr>
38
- <td>label</td>
39
- <td><code>string</code></td>
40
- <td></td>
41
- <td>No</td>
42
- <td>Text to be placed next to the switch.</td>
43
- </tr>
44
- <tr>
45
- <td>labelPosition</td>
46
- <td><code>string: 'before' | 'after'</code></td>
47
- <td><code>'before'</code></td>
48
- <td>No</td>
49
- <td>Whether the label should appear after or before the switch.</td>
50
- </tr>
51
- <tr>
52
- <td>theme</td>
53
- <td><code> string: 'light' |
54
- 'dark'</code></td>
55
- <td><code>'light'</code></td>
56
- <td>No</td>
57
- <td>Uses one of the available component themes.</td>
58
- </tr>
59
- <tr>
60
- <td>name</td>
61
- <td><code>string</code></td>
62
- <td><code>false</code></td>
63
- <td></td>
64
- <td>Name attribute of the input element.</td>
65
- </tr>
66
- <tr>
67
- <td>disabled</td>
68
- <td><code>boolean</code></td>
69
- <td><code>false</code></td>
70
- <td>No</td>
71
- <td>If true, the component will be disabled.</td>
72
- </tr>
73
- <tr>
74
- <td>disableRipple</td>
75
- <td><code>boolean</code></td>
76
- <td><code>false</code></td>
77
- <td>No</td>
78
- <td>If true, the ripple effect will be disabled.</td>
79
- </tr>
80
- <tr>
81
- <td>onChange</td>
82
- <td><code>function</code></td>
83
- <td></td>
84
- <td>No</td>
85
- <td>This function will be called when the user clicks the radio. The new value will be passed as a parameter.<br>
86
- </tr>
87
- </table>
88
-
89
- ## Examples
90
-
91
- - Basic switch - Light theme - Enabled - Label after switch - With ripple
92
-
93
- ```js
94
- import React from "react";
95
- import { DxcSwitch } from "@dxc-technology/halstack-react";
96
-
97
- class App extends React.Component {
98
- state = {
99
- isChecked: true
100
- };
101
- constructor() {
102
- super();
103
- this.handleChange = this.handleChange.bind(this);
104
- }
105
-
106
- handleChange(checked) {
107
- this.setState({
108
- isChecked: checked
109
- });
110
- }
111
-
112
- render() {
113
- return (
114
- <div>
115
- <DxcSwitch
116
- checked={this.state.isChecked}
117
- value="Switch1"
118
- label="Switch 1"
119
- labelPosition="after"
120
- theme="light"
121
- name="Checkbox"
122
- disabled={false}
123
- disableRipple={false}
124
- onChange={event => this.handleChange(event)}
125
- />
126
- </div>
127
- );
128
- }
129
- }
130
- export default App;
131
-
132
-
133
- ```
@@ -1,102 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
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 _react = _interopRequireDefault(require("react"));
17
-
18
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _variables = require("../common/variables.js");
21
-
22
- var _utils = require("../common/utils.js");
23
-
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
25
-
26
- function _templateObject3() {
27
- var data = (0, _taggedTemplateLiteral2["default"])([""]);
28
-
29
- _templateObject3 = function _templateObject3() {
30
- return data;
31
- };
32
-
33
- return data;
34
- }
35
-
36
- function _templateObject2() {
37
- var data = (0, _taggedTemplateLiteral2["default"])(["\n border-collapse: collapse;\n width: 100%;\n\n & tr {\n border-bottom: 1px solid ", ";\n }\n\n & td {\n color: ", ";\n min-height: 48px;\n }\n\n & th {\n padding: 16px 20px 16px 40px;\n min-height: 60px;\n }\n\n & td {\n padding: 14px 20px 12px 40px;\n }\n\n & th {\n text-align: left;\n font-size: 14px;\n font-weight: 500;\n background-color: ", ";\n color: ", ";\n }\n\n & th:first-child {\n border-top-left-radius: 4px;\n }\n\n & th:last-child {\n border-top-right-radius: 4px;\n }\n"]);
38
-
39
- _templateObject2 = function _templateObject2() {
40
- return data;
41
- };
42
-
43
- return data;
44
- }
45
-
46
- function _templateObject() {
47
- var data = (0, _taggedTemplateLiteral2["default"])(["\n overflow-x: auto;\n width: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n &::-webkit-scrollbar {\n height: 6px;\n }\n\n &::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 6px;\n }\n\n &::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 6px;\n }\n"]);
48
-
49
- _templateObject = function _templateObject() {
50
- return data;
51
- };
52
-
53
- return data;
54
- }
55
-
56
- var DxcTable = function DxcTable(_ref) {
57
- var children = _ref.children,
58
- margin = _ref.margin;
59
- var colorsTheme = (0, _useTheme["default"])();
60
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
61
- theme: colorsTheme.table
62
- }, _react["default"].createElement(DxcTableContainer, {
63
- margin: margin
64
- }, _react["default"].createElement(DxcTableContent, null, _react["default"].createElement(DxcTableTBody, null, children))));
65
- };
66
-
67
- var calculateWidth = function calculateWidth(margin) {
68
- return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
69
- };
70
-
71
- var DxcTableContainer = _styledComponents["default"].div(_templateObject(), function (props) {
72
- return calculateWidth(props.margin);
73
- }, function (props) {
74
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
75
- }, function (props) {
76
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
77
- }, function (props) {
78
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
79
- }, function (props) {
80
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
81
- }, function (props) {
82
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
83
- }, function (props) {
84
- return props.theme.darkGrey;
85
- }, function (props) {
86
- return props.theme.lightGrey;
87
- });
88
-
89
- var DxcTableContent = _styledComponents["default"].table(_templateObject2(), function (props) {
90
- return props.theme.separatorColor;
91
- }, function (props) {
92
- return props.theme.bodyFontColor;
93
- }, function (props) {
94
- return props.theme.headerBackgroundColor;
95
- }, function (props) {
96
- return props.theme.headerFontColor;
97
- });
98
-
99
- var DxcTableTBody = _styledComponents["default"].tbody(_templateObject3());
100
-
101
- var _default = DxcTable;
102
- exports["default"] = _default;