@dxc-technology/halstack-react 0.0.0-c2e647c → 0.0.0-c709eea

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 (299) 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/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +39 -39
  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 +9 -21
  21. package/box/index.d.ts +25 -0
  22. package/button/Button.d.ts +4 -0
  23. package/button/Button.js +182 -0
  24. package/button/Button.stories.tsx +293 -0
  25. package/button/types.d.ts +57 -0
  26. package/button/types.js +5 -0
  27. package/card/Card.d.ts +4 -0
  28. package/{dist/card → card}/Card.js +32 -123
  29. package/card/types.d.ts +69 -0
  30. package/card/types.js +5 -0
  31. package/checkbox/Checkbox.d.ts +4 -0
  32. package/{dist/checkbox → checkbox}/Checkbox.js +44 -82
  33. package/checkbox/types.d.ts +60 -0
  34. package/checkbox/types.js +5 -0
  35. package/{dist/chip → chip}/Chip.js +48 -104
  36. package/chip/index.d.ts +22 -0
  37. package/{dist/common → common}/OpenSans.css +0 -0
  38. package/{dist/common → common}/RequiredComponent.js +3 -11
  39. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  40. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  41. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  42. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  43. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  44. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  45. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  46. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  47. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  48. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  49. package/{dist/common → common}/utils.js +0 -0
  50. package/common/variables.js +1569 -0
  51. package/{dist/date → date}/Date.js +33 -51
  52. package/date/index.d.ts +27 -0
  53. package/date-input/DateInput.d.ts +4 -0
  54. package/date-input/DateInput.js +361 -0
  55. package/date-input/types.d.ts +100 -0
  56. package/date-input/types.js +5 -0
  57. package/{dist/dialog → dialog}/Dialog.js +28 -80
  58. package/dialog/index.d.ts +18 -0
  59. package/dropdown/Dropdown.js +450 -0
  60. package/dropdown/index.d.ts +26 -0
  61. package/file-input/FileInput.js +532 -0
  62. package/file-input/FileItem.js +193 -0
  63. package/file-input/index.d.ts +81 -0
  64. package/{dist/footer → footer}/Footer.js +69 -177
  65. package/footer/Icons.js +77 -0
  66. package/footer/index.d.ts +25 -0
  67. package/header/Header.js +326 -0
  68. package/header/Icons.js +59 -0
  69. package/header/index.d.ts +25 -0
  70. package/{dist/heading → heading}/Heading.js +30 -76
  71. package/heading/index.d.ts +17 -0
  72. package/input-text/Icons.js +22 -0
  73. package/{dist/input-text → input-text}/InputText.js +120 -178
  74. package/input-text/index.d.ts +36 -0
  75. package/{dist/layout → layout}/ApplicationLayout.js +35 -131
  76. package/layout/Icons.js +55 -0
  77. package/link/Link.js +183 -0
  78. package/link/index.d.ts +23 -0
  79. package/main.d.ts +44 -0
  80. package/{dist/main.js → main.js} +121 -69
  81. package/number-input/NumberInput.js +128 -0
  82. package/number-input/NumberInputContext.js +16 -0
  83. package/number-input/index.d.ts +113 -0
  84. package/package.json +34 -25
  85. package/paginator/Icons.js +66 -0
  86. package/paginator/Paginator.d.ts +4 -0
  87. package/paginator/Paginator.js +198 -0
  88. package/paginator/types.d.ts +38 -0
  89. package/paginator/types.js +5 -0
  90. package/password-input/PasswordInput.js +199 -0
  91. package/password-input/PasswordInput.stories.jsx +131 -0
  92. package/password-input/index.d.ts +94 -0
  93. package/progress-bar/ProgressBar.js +188 -0
  94. package/progress-bar/index.d.ts +18 -0
  95. package/radio/Radio.d.ts +4 -0
  96. package/{dist/radio → radio}/Radio.js +15 -50
  97. package/radio/types.d.ts +54 -0
  98. package/radio/types.js +5 -0
  99. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +35 -136
  100. package/resultsetTable/index.d.ts +19 -0
  101. package/select/Select.js +865 -0
  102. package/select/index.d.ts +131 -0
  103. package/{dist/sidenav → sidenav}/Sidenav.js +20 -58
  104. package/sidenav/index.d.ts +13 -0
  105. package/slider/Slider.js +340 -0
  106. package/slider/index.d.ts +29 -0
  107. package/spinner/Spinner.js +267 -0
  108. package/spinner/index.d.ts +17 -0
  109. package/switch/Switch.d.ts +4 -0
  110. package/{dist/switch → switch}/Switch.js +28 -71
  111. package/switch/types.d.ts +58 -0
  112. package/switch/types.js +5 -0
  113. package/table/Table.js +118 -0
  114. package/table/index.d.ts +13 -0
  115. package/{dist/tabs → tabs}/Tabs.js +29 -117
  116. package/tabs/index.d.ts +19 -0
  117. package/{dist/tag → tag}/Tag.js +50 -122
  118. package/tag/index.d.ts +24 -0
  119. package/text-input/TextInput.js +825 -0
  120. package/text-input/index.d.ts +135 -0
  121. package/textarea/Textarea.js +317 -0
  122. package/textarea/Textarea.stories.jsx +135 -0
  123. package/textarea/index.d.ts +117 -0
  124. package/{dist/toggle → toggle}/Toggle.js +15 -49
  125. package/toggle/index.d.ts +21 -0
  126. package/toggle-group/ToggleGroup.js +243 -0
  127. package/toggle-group/index.d.ts +21 -0
  128. package/{dist/upload → upload}/Upload.js +11 -15
  129. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  130. package/upload/buttons-upload/Icons.js +40 -0
  131. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  132. package/upload/dragAndDropArea/Icons.js +39 -0
  133. package/upload/file-upload/FileToUpload.js +115 -0
  134. package/upload/file-upload/Icons.js +66 -0
  135. package/{dist/upload → upload}/files-upload/FilesToUpload.js +12 -26
  136. package/upload/index.d.ts +15 -0
  137. package/upload/transaction/Icons.js +160 -0
  138. package/upload/transaction/Transaction.js +104 -0
  139. package/upload/transactions/Transactions.js +94 -0
  140. package/{dist/useTheme.js → useTheme.js} +0 -0
  141. package/wizard/Icons.js +65 -0
  142. package/wizard/Wizard.js +271 -0
  143. package/wizard/index.d.ts +18 -0
  144. package/README.md +0 -66
  145. package/babel.config.js +0 -8
  146. package/dist/BackgroundColorContext.js +0 -46
  147. package/dist/ThemeContext.js +0 -216
  148. package/dist/accordion/Accordion.js +0 -340
  149. package/dist/accordion/Accordion.stories.js +0 -207
  150. package/dist/accordion/readme.md +0 -96
  151. package/dist/accordion-group/AccordionGroup.js +0 -188
  152. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  153. package/dist/accordion-group/readme.md +0 -70
  154. package/dist/alert/Alert.js +0 -388
  155. package/dist/alert/Alert.stories.js +0 -158
  156. package/dist/alert/close.svg +0 -4
  157. package/dist/alert/error.svg +0 -4
  158. package/dist/alert/info.svg +0 -4
  159. package/dist/alert/readme.md +0 -43
  160. package/dist/alert/success.svg +0 -4
  161. package/dist/alert/warning.svg +0 -4
  162. package/dist/badge/Badge.js +0 -61
  163. package/dist/button/Button.js +0 -228
  164. package/dist/button/Button.stories.js +0 -224
  165. package/dist/button/readme.md +0 -93
  166. package/dist/checkbox/Checkbox.stories.js +0 -144
  167. package/dist/checkbox/readme.md +0 -116
  168. package/dist/common/variables.js +0 -1159
  169. package/dist/date/Date.stories.js +0 -205
  170. package/dist/date/calendar.svg +0 -1
  171. package/dist/date/calendar_dark.svg +0 -1
  172. package/dist/date/readme.md +0 -73
  173. package/dist/dialog/Dialog.stories.js +0 -217
  174. package/dist/dialog/readme.md +0 -32
  175. package/dist/dropdown/Dropdown.js +0 -498
  176. package/dist/dropdown/Dropdown.stories.js +0 -249
  177. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  178. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  179. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  180. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  181. package/dist/dropdown/readme.md +0 -69
  182. package/dist/footer/Footer.stories.js +0 -94
  183. package/dist/footer/dxc_logo_wht.png +0 -0
  184. package/dist/footer/readme.md +0 -41
  185. package/dist/header/Header.js +0 -431
  186. package/dist/header/Header.stories.js +0 -176
  187. package/dist/header/close_icon.svg +0 -1
  188. package/dist/header/dxc_logo_black.png +0 -0
  189. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  190. package/dist/header/dxc_logo_white.png +0 -0
  191. package/dist/header/hamb_menu_black.svg +0 -1
  192. package/dist/header/hamb_menu_white.svg +0 -1
  193. package/dist/header/readme.md +0 -33
  194. package/dist/input-text/InputText.stories.js +0 -209
  195. package/dist/input-text/error.svg +0 -1
  196. package/dist/input-text/readme.md +0 -91
  197. package/dist/layout/facebook.svg +0 -45
  198. package/dist/layout/linkedin.svg +0 -50
  199. package/dist/layout/twitter.svg +0 -53
  200. package/dist/link/Link.js +0 -212
  201. package/dist/link/readme.md +0 -51
  202. package/dist/paginator/Paginator.js +0 -283
  203. package/dist/paginator/images/next.svg +0 -3
  204. package/dist/paginator/images/nextPage.svg +0 -3
  205. package/dist/paginator/images/previous.svg +0 -3
  206. package/dist/paginator/images/previousPage.svg +0 -3
  207. package/dist/paginator/readme.md +0 -50
  208. package/dist/progress-bar/ProgressBar.js +0 -206
  209. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  210. package/dist/progress-bar/readme.md +0 -63
  211. package/dist/radio/Radio.stories.js +0 -166
  212. package/dist/radio/readme.md +0 -70
  213. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  214. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  215. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  216. package/dist/select/Select.js +0 -525
  217. package/dist/select/Select.stories.js +0 -235
  218. package/dist/select/readme.md +0 -72
  219. package/dist/slider/Slider.js +0 -315
  220. package/dist/slider/Slider.stories.js +0 -241
  221. package/dist/slider/readme.md +0 -64
  222. package/dist/spinner/Spinner.js +0 -214
  223. package/dist/spinner/Spinner.stories.js +0 -183
  224. package/dist/spinner/readme.md +0 -65
  225. package/dist/switch/Switch.stories.js +0 -134
  226. package/dist/switch/readme.md +0 -133
  227. package/dist/table/Table.js +0 -122
  228. package/dist/tabs/Tabs.stories.js +0 -130
  229. package/dist/tabs/readme.md +0 -78
  230. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  231. package/dist/tabs-for-sections/readme.md +0 -78
  232. package/dist/toggle/Toggle.stories.js +0 -297
  233. package/dist/toggle/readme.md +0 -80
  234. package/dist/toggle-group/ToggleGroup.js +0 -241
  235. package/dist/toggle-group/readme.md +0 -82
  236. package/dist/upload/Upload.stories.js +0 -72
  237. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  238. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  239. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  240. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -325
  241. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  242. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  243. package/dist/upload/file-upload/FileToUpload.js +0 -184
  244. package/dist/upload/file-upload/audio-icon.svg +0 -4
  245. package/dist/upload/file-upload/close.svg +0 -4
  246. package/dist/upload/file-upload/file-icon.svg +0 -4
  247. package/dist/upload/file-upload/video-icon.svg +0 -4
  248. package/dist/upload/readme.md +0 -37
  249. package/dist/upload/transaction/Transaction.js +0 -171
  250. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  251. package/dist/upload/transaction/audio-icon.svg +0 -4
  252. package/dist/upload/transaction/error-icon.svg +0 -4
  253. package/dist/upload/transaction/file-icon-err.svg +0 -4
  254. package/dist/upload/transaction/file-icon.svg +0 -4
  255. package/dist/upload/transaction/image-icon-err.svg +0 -4
  256. package/dist/upload/transaction/image-icon.svg +0 -4
  257. package/dist/upload/transaction/success-icon.svg +0 -4
  258. package/dist/upload/transaction/video-icon-err.svg +0 -4
  259. package/dist/upload/transaction/video-icon.svg +0 -4
  260. package/dist/upload/transactions/Transactions.js +0 -138
  261. package/dist/wizard/Wizard.js +0 -383
  262. package/dist/wizard/invalid_icon.svg +0 -6
  263. package/dist/wizard/valid_icon.svg +0 -6
  264. package/dist/wizard/validation-wrong.svg +0 -6
  265. package/test/Accordion.test.js +0 -33
  266. package/test/AccordionGroup.test.js +0 -125
  267. package/test/Alert.test.js +0 -53
  268. package/test/Box.test.js +0 -10
  269. package/test/Button.test.js +0 -18
  270. package/test/Card.test.js +0 -30
  271. package/test/Checkbox.test.js +0 -45
  272. package/test/Chip.test.js +0 -25
  273. package/test/Date.test.js +0 -393
  274. package/test/Dialog.test.js +0 -23
  275. package/test/Dropdown.test.js +0 -130
  276. package/test/Footer.test.js +0 -99
  277. package/test/Header.test.js +0 -39
  278. package/test/Heading.test.js +0 -35
  279. package/test/InputText.test.js +0 -240
  280. package/test/Link.test.js +0 -42
  281. package/test/Paginator.test.js +0 -177
  282. package/test/ProgressBar.test.js +0 -35
  283. package/test/Radio.test.js +0 -37
  284. package/test/ResultsetTable.test.js +0 -330
  285. package/test/Select.test.js +0 -192
  286. package/test/Sidenav.test.js +0 -45
  287. package/test/Slider.test.js +0 -82
  288. package/test/Spinner.test.js +0 -27
  289. package/test/Switch.test.js +0 -45
  290. package/test/Table.test.js +0 -36
  291. package/test/Tabs.test.js +0 -109
  292. package/test/TabsForSections.test.js +0 -34
  293. package/test/Tag.test.js +0 -32
  294. package/test/TextArea.test.js +0 -52
  295. package/test/ToggleGroup.test.js +0 -81
  296. package/test/Upload.test.js +0 -60
  297. package/test/Wizard.test.js +0 -130
  298. package/test/mocks/pngMock.js +0 -1
  299. package/test/mocks/svgMock.js +0 -1
@@ -1,80 +0,0 @@
1
- # DXC Toggle Component
2
-
3
- ## Usage
4
-
5
- ```js
6
- import { DxcToggle } from "@dxc-technology/halstack-react";
7
-
8
- <DxcToggle onClick={handleClick} label="Test Button" />;
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>selected: boolean</td>
21
- <td><code>false</code></td>
22
- <td>If true, the component is selected.</td>
23
- </tr>
24
- <tr>
25
- <td>mode: 'basic' | 'outlined'</td>
26
- <td><code>'basic'</code></td>
27
- <td>Uses on of the available toggle modes.</td>
28
- </tr>
29
- <tr>
30
- <td>iconPosition: 'before' | 'after'</td>
31
- <td><code>'before'</code></td>
32
- <td>Changes the position of the icon.</td>
33
- </tr>
34
- <tr>
35
- <td>theme: 'light' |'dark'</td>
36
- <td><code>'light'</code></td>
37
- <td>Uses one of the available component themes.</td>
38
- </tr>
39
- <tr>
40
- <td>label: string</td>
41
- <td><code>'basic'</code></td>
42
- <td>Text to be placed on the toggle.</td>
43
- </tr>
44
- <tr>
45
- <td>iconSrc: string</td>
46
- <td></td>
47
- <td>URL of the icon that will be placed on the toggle.</td>
48
- </tr>
49
- <tr>
50
- <td>disabled: boolean</td>
51
- <td><code>false</code></td>
52
- <td>If true, the component will be disabled.</td>
53
- </tr>
54
- <tr>
55
- <td>disableRipple: boolean</td>
56
- <td><code>false</code></td>
57
- <td>If true, the ripple effect will be disabled.</td>
58
- </tr>
59
- <tr>
60
- <td>onClick: function</td>
61
- <td></td>
62
- <td>This function will be called when the user clicks the button. The new state will be passed as a parameter.</td>
63
- </tr>
64
-
65
- </table>
66
-
67
- ## Examples
68
-
69
- ```js
70
- import { DxcToggle } from "@dxc-technology/halstack-react";
71
- <DxcToggle
72
- label="Disabled Ripple"
73
- disableRipple={true}
74
- theme="dark"
75
- iconSrc={amazon}
76
- mode="outlined"
77
- selected={selected}
78
- onClick={click}
79
- ></DxcToggle>;
80
- ```
@@ -1,241 +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 _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
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 _variables = require("../common/variables.js");
27
-
28
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
-
30
- function _templateObject6() {
31
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n overflow: hidden;\n display: flex;\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
32
-
33
- _templateObject6 = function _templateObject6() {
34
- return data;
35
- };
36
-
37
- return data;
38
- }
39
-
40
- function _templateObject5() {
41
- var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n"]);
42
-
43
- _templateObject5 = function _templateObject5() {
44
- return data;
45
- };
46
-
47
- return data;
48
- }
49
-
50
- function _templateObject4() {
51
- var data = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n text-transform: ", ";\n letter-spacing: ", ";\n"]);
52
-
53
- _templateObject4 = function _templateObject4() {
54
- return data;
55
- };
56
-
57
- return data;
58
- }
59
-
60
- function _templateObject3() {
61
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n ", "\n"]);
62
-
63
- _templateObject3 = function _templateObject3() {
64
- return data;
65
- };
66
-
67
- return data;
68
- }
69
-
70
- function _templateObject2() {
71
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n"]);
72
-
73
- _templateObject2 = function _templateObject2() {
74
- return data;
75
- };
76
-
77
- return data;
78
- }
79
-
80
- function _templateObject() {
81
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n display: flex;\n flex-direction: column;\n opacity: 1;\n"]);
82
-
83
- _templateObject = function _templateObject() {
84
- return data;
85
- };
86
-
87
- return data;
88
- }
89
-
90
- var DxcToggleGroup = function DxcToggleGroup(_ref) {
91
- var value = _ref.value,
92
- onChange = _ref.onChange,
93
- _ref$disabled = _ref.disabled,
94
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
95
- _ref$options = _ref.options,
96
- options = _ref$options === void 0 ? [] : _ref$options,
97
- margin = _ref.margin,
98
- _ref$multiple = _ref.multiple,
99
- multiple = _ref$multiple === void 0 ? false : _ref$multiple,
100
- _ref$tabIndex = _ref.tabIndex,
101
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
102
- var colorsTheme = (0, _useTheme["default"])();
103
-
104
- var _useState = (0, _react.useState)(multiple ? [] : null),
105
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
106
- selectedValue = _useState2[0],
107
- setSelectedValue = _useState2[1];
108
-
109
- var handleToggleChange = function handleToggleChange(selectedOption) {
110
- var newSelectedOptions;
111
-
112
- if (value == null) {
113
- if (multiple) {
114
- newSelectedOptions = selectedValue.map(function (value) {
115
- return value;
116
- });
117
-
118
- if (newSelectedOptions.includes(selectedOption)) {
119
- var index = newSelectedOptions.indexOf(selectedOption);
120
- newSelectedOptions.splice(index, 1);
121
- } else {
122
- newSelectedOptions.push(selectedOption);
123
- }
124
-
125
- setSelectedValue(newSelectedOptions);
126
- } else {
127
- setSelectedValue(selectedOption === selectedValue ? null : selectedOption);
128
- }
129
- } else if (multiple) {
130
- newSelectedOptions = value.map(function (v) {
131
- return v;
132
- });
133
- newSelectedOptions.push(selectedOption);
134
- }
135
-
136
- if (typeof onChange === "function") {
137
- onChange(multiple ? newSelectedOptions : selectedOption);
138
- }
139
- };
140
-
141
- var handleKeyPress = function handleKeyPress(event, optionValue) {
142
- event.preventDefault();
143
-
144
- if (!disabled && (event.nativeEvent.code === "Enter" || event.nativeEvent.code === "Space")) {
145
- handleToggleChange(optionValue);
146
- }
147
- };
148
-
149
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
150
- theme: colorsTheme.toggleGroup
151
- }, _react["default"].createElement(ToggleGroup, {
152
- margin: margin,
153
- disabled: disabled
154
- }, _react["default"].createElement(ToggleGroupContainer, null, options.map(function (option, i) {
155
- return _react["default"].createElement(ToggleContainer, {
156
- selected: multiple ? value ? value.includes(option.value) : selectedValue.includes(option.value) : value ? option.value === value : option.value === selectedValue,
157
- tabIndex: !disabled ? tabIndex : -1,
158
- onClick: function onClick() {
159
- return !disabled && handleToggleChange(option.value);
160
- },
161
- isFirst: i === 0,
162
- isLast: i === options.length - 1,
163
- isIcon: option.iconSrc || option.icon,
164
- disabled: disabled,
165
- onKeyPress: function onKeyPress(event) {
166
- handleKeyPress(event, option.value);
167
- },
168
- key: "toggle-".concat(i, "-").concat(option.label)
169
- }, option.icon ? _react["default"].createElement(IconContainer, null, (0, _typeof2["default"])(option.icon) === "object" ? option.icon : _react["default"].createElement(option.icon)) : option.iconSrc ? _react["default"].createElement(Icon, {
170
- src: option.iconSrc
171
- }) : _react["default"].createElement(LabelContainer, {
172
- disabled: disabled
173
- }, option.label));
174
- }))));
175
- };
176
-
177
- var ToggleGroup = _styledComponents["default"].div(_templateObject(), function (props) {
178
- return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
179
- }, function (props) {
180
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
181
- }, function (props) {
182
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
183
- }, function (props) {
184
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
185
- }, function (props) {
186
- return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
187
- });
188
-
189
- var ToggleGroupContainer = _styledComponents["default"].div(_templateObject2());
190
-
191
- var ToggleContainer = _styledComponents["default"].div(_templateObject3(), function (props) {
192
- return "\n background-color: ".concat(props.selected ? props.disabled ? props.theme.disabledSelectedBackgroundColor : props.theme.selectedBackgroundColor : props.disabled ? props.theme.disabledUnselectedBackgroundColor : props.theme.unselectedBackgroundColor, ";\n &:focus {\n outline: ").concat(props.theme.focusColor, " auto 1px;\n }\n border-radius: ").concat(props.isFirst ? "4px 0 0 4px" : props.isLast ? "0 4px 4px 0" : "0", ";\n color: ").concat(props.selected ? props.theme.selectedFontColor : props.theme.unselectedFontColor, ";\n padding: ").concat(props.isIcon ? "".concat(props.theme.iconPaddingTop, " ").concat(props.theme.iconPaddingRight, " ").concat(props.theme.iconPaddingBottom, " ").concat(props.theme.iconPaddingLeft) : "".concat(props.theme.labelPaddingTop, " ").concat(props.theme.labelPaddingRight, " ").concat(props.theme.labelPaddingBottom, " ").concat(props.theme.labelPaddingLeft), ";\n ").concat(!props.disabled ? "&:hover {\n background-color: ".concat(props.selected ? props.theme.selectedBackgroundHoverColor : props.theme.unselectedBackgroundHoverColor, ";\n color: ").concat(props.selected ? props.theme.selectedHoverFontColor : props.theme.unselectedHoverFontColor, " !important;\n }\n cursor: pointer;") : "color: ".concat(props.selected ? props.theme.disabledSelectedFontColor : props.theme.disabledUnselectedFontColor, " !important;\n cursor: not-allowed;"), "\n ");
193
- });
194
-
195
- var LabelContainer = _styledComponents["default"].span(_templateObject4(), function (props) {
196
- return props.theme.fontFamily;
197
- }, function (props) {
198
- return props.theme.fontSize;
199
- }, function (props) {
200
- return props.theme.fontStyle;
201
- }, function (props) {
202
- return props.theme.fontWeight;
203
- }, function (props) {
204
- return props.theme.fontTextTransform;
205
- }, function (props) {
206
- return props.theme.fontLetterSpacing;
207
- });
208
-
209
- var Icon = _styledComponents["default"].img(_templateObject5(), function (props) {
210
- return props.theme.iconHeight;
211
- }, function (props) {
212
- return props.theme.iconWidth;
213
- });
214
-
215
- var IconContainer = _styledComponents["default"].div(_templateObject6(), function (props) {
216
- return props.theme.iconHeight;
217
- }, function (props) {
218
- return props.theme.iconWidth;
219
- });
220
-
221
- DxcToggleGroup.propTypes = {
222
- value: _propTypes["default"].any,
223
- onChange: _propTypes["default"].func,
224
- disabled: _propTypes["default"].bool,
225
- multiple: _propTypes["default"].bool,
226
- options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
227
- value: _propTypes["default"].any.isRequired,
228
- label: _propTypes["default"].string,
229
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
230
- iconSrc: _propTypes["default"].string
231
- })),
232
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
233
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
234
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
235
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
236
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
237
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
238
- tabIndex: _propTypes["default"].number
239
- };
240
- var _default = DxcToggleGroup;
241
- exports["default"] = _default;
@@ -1,82 +0,0 @@
1
- # DXC Toggle Group Component
2
-
3
- ## Props
4
-
5
- <table>
6
- <tr style="background-color: grey">
7
- <td>Name</td>
8
- <td>Default</td>
9
- <td>Description</td>
10
- </tr>
11
- <tr>
12
- <td>value: any | any[]</td>
13
- <td></td>
14
- <td>
15
- The key(s) of the selected value(s). If the toggle group component
16
- doesn't allow multiple selection, it must be one unique value. If the
17
- component allows multiple selection, value must be an array. If
18
- undefined, the component will be uncontrolled and the value will be
19
- managed internally by the component.
20
- </td>
21
- </tr>
22
- <tr>
23
- <td>onChange: function</td>
24
- <td></td>
25
- <td>
26
- This function will be called every time the selection changes. The
27
- number with the key of the selected value will be passed as a
28
- parameter to this function. If multiple selection is allowed, an array
29
- of keys will be passed
30
- </td>
31
- </tr>
32
- <tr>
33
- <td>disabled: boolean</td>
34
- <td>
35
- <code>false</code>
36
- </td>
37
- <td>If true, the component will be disabled.</td>
38
- </tr>
39
- <tr>
40
- <td>multiple: boolean</td>
41
- <td>
42
- <code>false</code>
43
- </td>
44
- <td>
45
- If true, the toggle group will support multiple selection. In that
46
- case, value must be an array of numbers with the keys of the selected
47
- values.
48
- </td>
49
- </tr>
50
- <tr>
51
- <td>options: object[]</td>
52
- <td>
53
- <code>[]</code>
54
- </td>
55
- <td>
56
- An array of objects representing the selectable options. Each object
57
- has the following properties:
58
- <ul>
59
- <li>
60
- <b>value</b>: Number with the option inner value.
61
- </li>
62
- <li>
63
- <b>label</b>: String with the option display value.
64
- </li>
65
- <li>
66
- <b>iconSrc</b>: URL of the icon that will be placed. IconSrc and
67
- label can't be used at same time.
68
- </li>
69
- </ul>
70
- </td>
71
- </tr>
72
- <tr>
73
- <td>margin: string | object</td>
74
- <td></td>
75
- <td>
76
- Size of the margin to be applied to the component ('xxsmall' |
77
- 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge'). You
78
- can pass an object with 'top', 'bottom', 'left' and 'right' properties
79
- in order to specify different margin sizes.
80
- </td>
81
- </tr>
82
- </table>
@@ -1,72 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
-
7
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
-
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
-
11
- var _react = _interopRequireDefault(require("react"));
12
-
13
- var _react2 = require("@storybook/react");
14
-
15
- var _readme = _interopRequireDefault(require("./readme.md"));
16
-
17
- var _Upload = _interopRequireDefault(require("./Upload"));
18
-
19
- function callbackFunc() {
20
- return _callbackFunc.apply(this, arguments);
21
- }
22
-
23
- function _callbackFunc() {
24
- _callbackFunc = (0, _asyncToGenerator2["default"])(
25
- /*#__PURE__*/
26
- _regenerator["default"].mark(function _callee() {
27
- return _regenerator["default"].wrap(function _callee$(_context) {
28
- while (1) {
29
- switch (_context.prev = _context.next) {
30
- case 0:
31
- return _context.abrupt("return", new Promise(function (resolve) {
32
- return setTimeout(resolve, 1000);
33
- }));
34
-
35
- case 1:
36
- case "end":
37
- return _context.stop();
38
- }
39
- }
40
- }, _callee);
41
- }));
42
- return _callbackFunc.apply(this, arguments);
43
- }
44
-
45
- (0, _react2.storiesOf)("Form Components|Upload", module).add("Component", function () {
46
- return _react["default"].createElement("div", {
47
- style: {
48
- marginTop: "80px"
49
- }
50
- }, _react["default"].createElement(_Upload["default"], {
51
- callbackUpload: callbackFunc
52
- }));
53
- }, {
54
- notes: {
55
- markdown: _readme["default"]
56
- }
57
- });
58
-
59
- var knobProps = function knobProps() {
60
- return {};
61
- };
62
-
63
- (0, _react2.storiesOf)("Form Components|Upload", module).add("Knobs example", function () {
64
- var props = knobProps();
65
- return _react["default"].createElement(_Upload["default"], (0, _extends2["default"])({}, props, {
66
- callbackUpload: callbackFunc
67
- }));
68
- }, {
69
- notes: {
70
- markdown: _readme["default"]
71
- }
72
- });
@@ -1,135 +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 _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
- var _react = _interopRequireDefault(require("react"));
15
-
16
- var _propTypes = _interopRequireDefault(require("prop-types"));
17
-
18
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
-
20
- var _Button = _interopRequireDefault(require("../../button/Button"));
21
-
22
- var _uploadButton = _interopRequireDefault(require("./upload-button.svg"));
23
-
24
- var _dragDropIcon = _interopRequireDefault(require("./drag-drop-icon.svg"));
25
-
26
- var _useTheme = _interopRequireDefault(require("../../useTheme.js"));
27
-
28
- function _templateObject3() {
29
- var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n mask: url(", ") no-repeat center;\n mask-size: ", ";\n height: ", ";\n width: ", ";\n margin-right: 5px;\n"]);
30
-
31
- _templateObject3 = function _templateObject3() {
32
- return data;
33
- };
34
-
35
- return data;
36
- }
37
-
38
- function _templateObject2() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n align-items: center;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n text-transform: ", ";\n color: ", ";\n margin-right: 50px;\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 margin-right: 80px;\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n"]);
50
-
51
- _templateObject = function _templateObject() {
52
- return data;
53
- };
54
-
55
- return data;
56
- }
57
-
58
- var DxcButtonsUpload = function DxcButtonsUpload(_ref) {
59
- var addFile = _ref.addFile,
60
- onUpload = _ref.onUpload;
61
- var colorsTheme = (0, _useTheme["default"])();
62
-
63
- var selectFile = function selectFile(e) {
64
- var filesObject = e.target.files;
65
-
66
- if (filesObject && filesObject.length > 0) {
67
- var filesArray = Object.keys(filesObject).map(function (key) {
68
- return filesObject[key];
69
- });
70
- addFile(filesArray);
71
- }
72
- };
73
-
74
- var handleClick = function handleClick() {
75
- document.getElementById("chooseFiles").click();
76
- };
77
-
78
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
79
- theme: colorsTheme.upload
80
- }, _react["default"].createElement(DXCButtonsUpload, null, _react["default"].createElement(DragAndDropLabel, null, _react["default"].createElement(DragAndDropIcon, null), "Drag and Drop area"), _react["default"].createElement(_Button["default"], {
81
- margin: {
82
- right: "small"
83
- },
84
- mode: "text",
85
- label: "CHOOSE FILES",
86
- onClick: handleClick
87
- }), _react["default"].createElement("input", {
88
- id: "chooseFiles",
89
- type: "file",
90
- multiple: true,
91
- onChange: selectFile,
92
- style: {
93
- display: "none"
94
- }
95
- }), _react["default"].createElement(_Button["default"], {
96
- label: "UPLOAD",
97
- iconPosition: "after",
98
- iconSrc: _uploadButton["default"],
99
- onClick: onUpload
100
- })));
101
- };
102
-
103
- DxcButtonsUpload.propTypes = {
104
- addFile: _propTypes["default"].func,
105
- onUpload: _propTypes["default"].func
106
- };
107
-
108
- var DXCButtonsUpload = _styledComponents["default"].div(_templateObject());
109
-
110
- var DragAndDropLabel = _styledComponents["default"].div(_templateObject2(), function (props) {
111
- return props.theme.fontFamily;
112
- }, function (props) {
113
- return props.theme.dragAndDropAreaTextFontSize;
114
- }, function (props) {
115
- return props.theme.dragAndDropAreaTextFontStyle;
116
- }, function (props) {
117
- return props.theme.dragAndDropAreaTextFontWeight;
118
- }, function (props) {
119
- return props.theme.dragAndDropAreaTextFontTextTransform;
120
- }, function (props) {
121
- return props.theme.dragAndDropAreaTextFontColor;
122
- });
123
-
124
- var DragAndDropIcon = _styledComponents["default"].div(_templateObject3(), function (props) {
125
- return props.theme.dragAndDropAreaIconColor;
126
- }, _dragDropIcon["default"], function (props) {
127
- return "".concat(props.theme.dragAndDropAreaIconWidth, " ").concat(props.theme.dragAndDropAreaIconHeight);
128
- }, function (props) {
129
- return props.theme.dragAndDropAreaIconHeight;
130
- }, function (props) {
131
- return props.theme.dragAndDropAreaIconWidth;
132
- });
133
-
134
- var _default = DxcButtonsUpload;
135
- exports["default"] = _default;
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#666666">
2
- <path fill="none" d="M0 0h24v24H0V0z"/>
3
- <path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm2 4v-2H3c0 1.1.89 2 2 2zM3 9h2V7H3v2zm12 12h2v-2h-2v2zm4-18H9c-1.11 0-2 .9-2 2v10c0 1.1.89 2 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12H9V5h10v10zm-8 6h2v-2h-2v2zm-4 0h2v-2H7v2z"/>
4
- </svg>
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"/><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"/></svg>