@dxc-technology/halstack-react 0.0.0-ff6151e → 0.0.0-ff99b25

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 (330) 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 +3 -11
  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 +81 -65
  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.d.ts +4 -0
  59. package/dialog/Dialog.js +165 -0
  60. package/dialog/types.d.ts +43 -0
  61. package/dialog/types.js +5 -0
  62. package/dropdown/Dropdown.d.ts +4 -0
  63. package/dropdown/Dropdown.js +417 -0
  64. package/dropdown/types.d.ts +89 -0
  65. package/dropdown/types.js +5 -0
  66. package/file-input/FileInput.js +532 -0
  67. package/file-input/FileItem.js +193 -0
  68. package/file-input/index.d.ts +81 -0
  69. package/footer/Footer.d.ts +4 -0
  70. package/footer/Footer.js +266 -0
  71. package/footer/Footer.stories.jsx +151 -0
  72. package/footer/Icons.js +77 -0
  73. package/footer/types.d.ts +61 -0
  74. package/footer/types.js +5 -0
  75. package/header/Header.js +326 -0
  76. package/header/Icons.js +59 -0
  77. package/header/index.d.ts +25 -0
  78. package/heading/Heading.js +176 -0
  79. package/heading/index.d.ts +17 -0
  80. package/input-text/Icons.js +22 -0
  81. package/input-text/InputText.js +611 -0
  82. package/input-text/index.d.ts +36 -0
  83. package/{dist/layout → layout}/ApplicationLayout.js +42 -142
  84. package/layout/Icons.js +55 -0
  85. package/link/Link.js +183 -0
  86. package/link/index.d.ts +23 -0
  87. package/main.d.ts +44 -0
  88. package/{dist/main.js → main.js} +125 -65
  89. package/number-input/NumberInput.js +128 -0
  90. package/number-input/NumberInput.stories.jsx +115 -0
  91. package/number-input/NumberInputContext.js +16 -0
  92. package/number-input/index.d.ts +113 -0
  93. package/package.json +34 -22
  94. package/paginator/Icons.js +66 -0
  95. package/paginator/Paginator.d.ts +4 -0
  96. package/paginator/Paginator.js +198 -0
  97. package/paginator/types.d.ts +38 -0
  98. package/paginator/types.js +5 -0
  99. package/password-input/PasswordInput.js +199 -0
  100. package/password-input/PasswordInput.stories.jsx +131 -0
  101. package/password-input/index.d.ts +94 -0
  102. package/progress-bar/ProgressBar.d.ts +4 -0
  103. package/progress-bar/ProgressBar.js +170 -0
  104. package/progress-bar/types.d.ts +37 -0
  105. package/progress-bar/types.js +5 -0
  106. package/radio/Radio.d.ts +4 -0
  107. package/radio/Radio.js +174 -0
  108. package/radio/types.d.ts +54 -0
  109. package/radio/types.js +5 -0
  110. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +95 -162
  111. package/resultsetTable/index.d.ts +19 -0
  112. package/select/Select.js +865 -0
  113. package/select/index.d.ts +131 -0
  114. package/sidenav/Sidenav.js +145 -0
  115. package/sidenav/index.d.ts +13 -0
  116. package/slider/Slider.d.ts +4 -0
  117. package/slider/Slider.js +306 -0
  118. package/slider/types.d.ts +83 -0
  119. package/slider/types.js +5 -0
  120. package/spinner/Spinner.js +267 -0
  121. package/spinner/index.d.ts +17 -0
  122. package/switch/Switch.d.ts +4 -0
  123. package/switch/Switch.js +179 -0
  124. package/switch/types.d.ts +58 -0
  125. package/switch/types.js +5 -0
  126. package/table/Table.js +118 -0
  127. package/table/index.d.ts +13 -0
  128. package/tabs/Tabs.d.ts +4 -0
  129. package/tabs/Tabs.js +211 -0
  130. package/tabs/types.d.ts +71 -0
  131. package/tabs/types.js +5 -0
  132. package/tag/Tag.js +208 -0
  133. package/tag/index.d.ts +24 -0
  134. package/text-input/TextInput.js +825 -0
  135. package/text-input/index.d.ts +135 -0
  136. package/textarea/Textarea.js +317 -0
  137. package/textarea/Textarea.stories.jsx +135 -0
  138. package/textarea/index.d.ts +117 -0
  139. package/{dist/toggle → toggle}/Toggle.js +30 -67
  140. package/toggle/index.d.ts +21 -0
  141. package/toggle-group/ToggleGroup.js +243 -0
  142. package/toggle-group/index.d.ts +21 -0
  143. package/{dist/upload → upload}/Upload.js +23 -22
  144. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  145. package/upload/buttons-upload/Icons.js +40 -0
  146. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  147. package/upload/dragAndDropArea/Icons.js +39 -0
  148. package/upload/file-upload/FileToUpload.js +115 -0
  149. package/upload/file-upload/Icons.js +66 -0
  150. package/upload/files-upload/FilesToUpload.js +109 -0
  151. package/upload/index.d.ts +15 -0
  152. package/upload/transaction/Icons.js +160 -0
  153. package/upload/transaction/Transaction.js +104 -0
  154. package/upload/transactions/Transactions.js +94 -0
  155. package/{dist/useTheme.js → useTheme.js} +0 -0
  156. package/wizard/Icons.js +65 -0
  157. package/wizard/Wizard.js +271 -0
  158. package/wizard/index.d.ts +18 -0
  159. package/README.md +0 -66
  160. package/babel.config.js +0 -4
  161. package/dist/ThemeContext.js +0 -54
  162. package/dist/accordion/Accordion.js +0 -273
  163. package/dist/accordion/Accordion.stories.js +0 -207
  164. package/dist/accordion/readme.md +0 -96
  165. package/dist/accordion-group/AccordionGroup.js +0 -159
  166. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  167. package/dist/accordion-group/readme.md +0 -70
  168. package/dist/alert/Alert.js +0 -304
  169. package/dist/alert/Alert.stories.js +0 -158
  170. package/dist/alert/close.svg +0 -4
  171. package/dist/alert/error.svg +0 -4
  172. package/dist/alert/info.svg +0 -4
  173. package/dist/alert/readme.md +0 -43
  174. package/dist/alert/success.svg +0 -4
  175. package/dist/alert/warning.svg +0 -4
  176. package/dist/badge/Badge.js +0 -58
  177. package/dist/button/Button.js +0 -202
  178. package/dist/button/Button.stories.js +0 -224
  179. package/dist/button/readme.md +0 -93
  180. package/dist/card/Card.js +0 -217
  181. package/dist/checkbox/Checkbox.js +0 -240
  182. package/dist/checkbox/Checkbox.stories.js +0 -144
  183. package/dist/checkbox/readme.md +0 -116
  184. package/dist/chip/Chip.js +0 -208
  185. package/dist/common/services/example-service.js +0 -10
  186. package/dist/common/services/example-service.test.js +0 -12
  187. package/dist/common/utils.js +0 -42
  188. package/dist/common/variables.js +0 -436
  189. package/dist/date/Date.stories.js +0 -205
  190. package/dist/date/calendar.svg +0 -1
  191. package/dist/date/calendar_dark.svg +0 -1
  192. package/dist/date/readme.md +0 -73
  193. package/dist/dialog/Dialog.js +0 -197
  194. package/dist/dialog/Dialog.stories.js +0 -217
  195. package/dist/dialog/readme.md +0 -32
  196. package/dist/dropdown/Dropdown.js +0 -449
  197. package/dist/dropdown/Dropdown.stories.js +0 -249
  198. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  199. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  200. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  201. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  202. package/dist/dropdown/readme.md +0 -69
  203. package/dist/footer/Footer.js +0 -371
  204. package/dist/footer/Footer.stories.js +0 -94
  205. package/dist/footer/dxc_logo_wht.png +0 -0
  206. package/dist/footer/readme.md +0 -41
  207. package/dist/header/Header.js +0 -373
  208. package/dist/header/Header.stories.js +0 -176
  209. package/dist/header/close_icon.svg +0 -1
  210. package/dist/header/dxc_logo_black.png +0 -0
  211. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  212. package/dist/header/dxc_logo_white.png +0 -0
  213. package/dist/header/hamb_menu_black.svg +0 -1
  214. package/dist/header/hamb_menu_white.svg +0 -1
  215. package/dist/header/readme.md +0 -33
  216. package/dist/heading/Heading.js +0 -153
  217. package/dist/input-text/InputText.js +0 -570
  218. package/dist/input-text/InputText.stories.js +0 -209
  219. package/dist/input-text/error.svg +0 -1
  220. package/dist/input-text/readme.md +0 -91
  221. package/dist/layout/facebook.svg +0 -45
  222. package/dist/layout/linkedin.svg +0 -50
  223. package/dist/layout/twitter.svg +0 -53
  224. package/dist/link/Link.js +0 -192
  225. package/dist/link/readme.md +0 -51
  226. package/dist/paginator/Paginator.js +0 -232
  227. package/dist/paginator/images/next.svg +0 -3
  228. package/dist/paginator/images/nextPage.svg +0 -3
  229. package/dist/paginator/images/previous.svg +0 -3
  230. package/dist/paginator/images/previousPage.svg +0 -3
  231. package/dist/paginator/readme.md +0 -50
  232. package/dist/progress-bar/ProgressBar.js +0 -185
  233. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  234. package/dist/progress-bar/readme.md +0 -63
  235. package/dist/radio/Radio.js +0 -195
  236. package/dist/radio/Radio.stories.js +0 -166
  237. package/dist/radio/readme.md +0 -70
  238. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  239. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  240. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  241. package/dist/select/Select.js +0 -473
  242. package/dist/select/Select.stories.js +0 -235
  243. package/dist/select/readme.md +0 -72
  244. package/dist/sidenav/Sidenav.js +0 -128
  245. package/dist/slider/Slider.js +0 -266
  246. package/dist/slider/Slider.stories.js +0 -241
  247. package/dist/slider/readme.md +0 -64
  248. package/dist/spinner/Spinner.js +0 -193
  249. package/dist/spinner/Spinner.stories.js +0 -183
  250. package/dist/spinner/readme.md +0 -65
  251. package/dist/switch/Switch.js +0 -199
  252. package/dist/switch/Switch.stories.js +0 -134
  253. package/dist/switch/readme.md +0 -133
  254. package/dist/table/Table.js +0 -105
  255. package/dist/tabs/Tabs.js +0 -292
  256. package/dist/tabs/Tabs.stories.js +0 -130
  257. package/dist/tabs/readme.md +0 -78
  258. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  259. package/dist/tabs-for-sections/readme.md +0 -78
  260. package/dist/tag/Tag.js +0 -249
  261. package/dist/textarea/Textarea.js +0 -227
  262. package/dist/toggle/Toggle.stories.js +0 -297
  263. package/dist/toggle/readme.md +0 -80
  264. package/dist/toggle-group/ToggleGroup.js +0 -226
  265. package/dist/toggle-group/readme.md +0 -82
  266. package/dist/upload/Upload.stories.js +0 -72
  267. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  268. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  269. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  270. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  271. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  272. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  273. package/dist/upload/file-upload/FileToUpload.js +0 -158
  274. package/dist/upload/file-upload/audio-icon.svg +0 -4
  275. package/dist/upload/file-upload/close.svg +0 -4
  276. package/dist/upload/file-upload/file-icon.svg +0 -4
  277. package/dist/upload/file-upload/video-icon.svg +0 -4
  278. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  279. package/dist/upload/readme.md +0 -37
  280. package/dist/upload/transaction/Transaction.js +0 -155
  281. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  282. package/dist/upload/transaction/audio-icon.svg +0 -4
  283. package/dist/upload/transaction/error-icon.svg +0 -4
  284. package/dist/upload/transaction/file-icon-err.svg +0 -4
  285. package/dist/upload/transaction/file-icon.svg +0 -4
  286. package/dist/upload/transaction/image-icon-err.svg +0 -4
  287. package/dist/upload/transaction/image-icon.svg +0 -4
  288. package/dist/upload/transaction/success-icon.svg +0 -4
  289. package/dist/upload/transaction/video-icon-err.svg +0 -4
  290. package/dist/upload/transaction/video-icon.svg +0 -4
  291. package/dist/upload/transactions/Transactions.js +0 -120
  292. package/dist/wizard/Wizard.js +0 -331
  293. package/dist/wizard/invalid_icon.svg +0 -6
  294. package/dist/wizard/valid_icon.svg +0 -6
  295. package/dist/wizard/validation-wrong.svg +0 -6
  296. package/test/Accordion.test.js +0 -33
  297. package/test/AccordionGroup.test.js +0 -109
  298. package/test/Alert.test.js +0 -53
  299. package/test/Box.test.js +0 -10
  300. package/test/Button.test.js +0 -18
  301. package/test/Card.test.js +0 -30
  302. package/test/Checkbox.test.js +0 -45
  303. package/test/Chip.test.js +0 -25
  304. package/test/Date.test.js +0 -393
  305. package/test/Dialog.test.js +0 -23
  306. package/test/Dropdown.test.js +0 -130
  307. package/test/Footer.test.js +0 -99
  308. package/test/Header.test.js +0 -39
  309. package/test/Heading.test.js +0 -35
  310. package/test/InputText.test.js +0 -240
  311. package/test/Link.test.js +0 -42
  312. package/test/Paginator.test.js +0 -194
  313. package/test/ProgressBar.test.js +0 -35
  314. package/test/Radio.test.js +0 -37
  315. package/test/ResultsetTable.test.js +0 -304
  316. package/test/Select.test.js +0 -192
  317. package/test/Sidenav.test.js +0 -45
  318. package/test/Slider.test.js +0 -82
  319. package/test/Spinner.test.js +0 -27
  320. package/test/Switch.test.js +0 -45
  321. package/test/Table.test.js +0 -36
  322. package/test/Tabs.test.js +0 -109
  323. package/test/TabsForSections.test.js +0 -34
  324. package/test/Tag.test.js +0 -32
  325. package/test/TextArea.test.js +0 -52
  326. package/test/ToggleGroup.test.js +0 -81
  327. package/test/Upload.test.js +0 -60
  328. package/test/Wizard.test.js +0 -130
  329. package/test/mocks/pngMock.js +0 -1
  330. package/test/mocks/svgMock.js +0 -1
@@ -1,159 +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 _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
-
22
- var _react = _interopRequireWildcard(require("react"));
23
-
24
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
-
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
- var _Accordion = _interopRequireDefault(require("../accordion/Accordion"));
29
-
30
- require("../common/OpenSans.css");
31
-
32
- var _utils = require("../common/utils.js");
33
-
34
- var _variables = require("../common/variables.js");
35
-
36
- var _ThemeContext = _interopRequireDefault(require("../ThemeContext.js"));
37
-
38
- function _templateObject() {
39
- var data = (0, _taggedTemplateLiteral2["default"])(["\n min-width: 280px;\n width: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n font-family: \"Open Sans\", sans-serif;\n cursor: ", ";\n\n & > :not(div:last-child) {\n & > div:first-child {\n border-radius: 0;\n border-bottom: 1px solid;\n border-color: #00000024;\n\n & > .Mui-expanded {\n border-radius: 0;\n }\n\n & > .MuiButtonBase-root {\n border-radius: 0;\n }\n }\n }\n\n & > div:first-child {\n & > div:first-child {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom: 1px solid;\n border-color: #00000024;\n\n & > .Mui-expanded {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n }\n\n & > .MuiButtonBase-root {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n }\n }\n }\n\n & > div:last-child {\n & > div:first-child {\n border-bottom-left-radius: 4px;\n border-bottom-right-radius: 4px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n\n & > .Mui-expanded {\n border-bottom-left-radius: 4px;\n border-bottom-right-radius: 4px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n & > .MuiButtonBase-root {\n border-bottom-left-radius: 4px;\n border-bottom-right-radius: 4px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n }\n }\n"]);
40
-
41
- _templateObject = function _templateObject() {
42
- return data;
43
- };
44
-
45
- return data;
46
- }
47
-
48
- var Accordion = function Accordion(_ref) {
49
- var margin = _ref.margin,
50
- childProps = (0, _objectWithoutProperties2["default"])(_ref, ["margin"]);
51
- return _react["default"].createElement(_Accordion["default"], childProps, childProps.children);
52
- };
53
-
54
- var DxcAccordionGroup = function DxcAccordionGroup(_ref2) {
55
- var _ref2$disabled = _ref2.disabled,
56
- disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
57
- onActiveChange = _ref2.onActiveChange,
58
- _ref2$indexActive = _ref2.indexActive,
59
- indexActive = _ref2$indexActive === void 0 ? undefined : _ref2$indexActive,
60
- margin = _ref2.margin,
61
- _ref2$children = _ref2.children,
62
- children = _ref2$children === void 0 ? [] : _ref2$children;
63
- var customTheme = (0, _react.useContext)(_ThemeContext["default"]);
64
- var colorsTheme = (0, _react.useMemo)(function () {
65
- return (0, _utils.getCustomTheme)(_variables.componentTokens, (0, _utils.getCustomTheme)(_variables.defaultTheme, customTheme));
66
- }, [customTheme]);
67
-
68
- var _React$useState = _react["default"].useState(indexActive),
69
- _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
70
- innerIsExpanded = _React$useState2[0],
71
- setInnerIsExpanded = _React$useState2[1];
72
-
73
- var handlerActiveChange = function handlerActiveChange(index) {
74
- if (indexActive === undefined) {
75
- setInnerIsExpanded(index === innerIsExpanded ? -1 : index);
76
- } else {
77
- setInnerIsExpanded(indexActive);
78
- }
79
-
80
- if (typeof onActiveChange === "function" && !disabled) {
81
- onActiveChange(index);
82
- }
83
- };
84
-
85
- (0, _react.useEffect)(function () {
86
- setInnerIsExpanded(indexActive);
87
- }, [indexActive]);
88
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
89
- theme: colorsTheme.accordion
90
- }, _react["default"].createElement(AccordionGroupContainer, {
91
- margin: margin,
92
- disabled: disabled
93
- }, children.filter(function (el) {
94
- return el.type === Accordion;
95
- }).map(function (el, index) {
96
- return _react["default"].cloneElement(el, {
97
- onChange: function onChange() {
98
- handlerActiveChange(index);
99
- },
100
- isExpanded: index === innerIsExpanded,
101
- disabled: disabled || el.props.disabled
102
- });
103
- })));
104
- };
105
-
106
- var calculateWidth = function calculateWidth(margin) {
107
- return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
108
- };
109
-
110
- var AccordionGroupContainer = _styledComponents["default"].div(_templateObject(), function (props) {
111
- return calculateWidth(props.margin);
112
- }, function (_ref3) {
113
- var margin = _ref3.margin;
114
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
115
- }, function (_ref4) {
116
- var margin = _ref4.margin;
117
- return margin && (0, _typeof2["default"])(margin) === "object" && margin.top ? _variables.spaces[margin.top] : "";
118
- }, function (_ref5) {
119
- var margin = _ref5.margin;
120
- return margin && (0, _typeof2["default"])(margin) === "object" && margin.right ? _variables.spaces[margin.right] : "";
121
- }, function (_ref6) {
122
- var margin = _ref6.margin;
123
- return margin && (0, _typeof2["default"])(margin) === "object" && margin.bottom ? _variables.spaces[margin.bottom] : "";
124
- }, function (_ref7) {
125
- var margin = _ref7.margin;
126
- return margin && (0, _typeof2["default"])(margin) === "object" && margin.left ? _variables.spaces[margin.left] : "";
127
- }, function (props) {
128
- return props.disabled && "not-allowed" || "pointer";
129
- });
130
-
131
- DxcAccordionGroup.propTypes = {
132
- disabled: _propTypes["default"].bool,
133
- onActiveChange: _propTypes["default"].func,
134
- indexActive: _propTypes["default"].number,
135
- children: _propTypes["default"].arrayOf(_propTypes["default"].shape({
136
- label: _propTypes["default"].string,
137
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
138
- iconSrc: _propTypes["default"].string,
139
- iconPosition: _propTypes["default"].oneOf(["before", "after"]),
140
- assistiveText: _propTypes["default"].string,
141
- disabled: _propTypes["default"].bool,
142
- children: _propTypes["default"].element,
143
- padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
144
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
145
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
146
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
147
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
148
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
149
- })),
150
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
151
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
152
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
153
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
154
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
155
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
156
- };
157
- DxcAccordionGroup.Accordion = Accordion;
158
- var _default = DxcAccordionGroup;
159
- exports["default"] = _default;
@@ -1,207 +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 _Accordion = _interopRequireDefault(require("./Accordion"));
18
-
19
- var _run_icon_black = _interopRequireDefault(require("../../.storybook/public/run_icon_black.png"));
20
-
21
- var onChange = (0, _addonActions.action)("onChange");
22
-
23
- onChange.toString = function () {
24
- return "onChangeHandler";
25
- };
26
-
27
- (0, _react2.storiesOf)("Form Components|Accordion", module).add("Types", function () {
28
- return _react["default"].createElement("div", null, _react["default"].createElement("h3", null, "Light"), _react["default"].createElement("div", {
29
- style: {
30
- marginBottom: "50px"
31
- }
32
- }, _react["default"].createElement(_Accordion["default"], {
33
- label: "First accordion",
34
- onChange: onChange
35
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
36
- theme: "light",
37
- disabled: true,
38
- label: "Second accordion",
39
- onChange: onChange
40
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
41
- label: "Third accordion",
42
- onChange: onChange,
43
- assistiveText: "Extra information"
44
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
45
- theme: "light",
46
- label: "Fourth accordion",
47
- assistiveText: "Extra information",
48
- iconPosition: "before",
49
- iconSrc: _run_icon_black["default"],
50
- onChange: onChange
51
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
52
- theme: "light",
53
- label: "Fifth accordion",
54
- assistiveText: "Extra information",
55
- iconPosition: "after",
56
- iconSrc: _run_icon_black["default"],
57
- onChange: onChange
58
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget."))), _react["default"].createElement("div", {
59
- style: {
60
- marginBottom: "50px"
61
- }
62
- }, _react["default"].createElement(_Accordion["default"], {
63
- theme: "light",
64
- mode: "alternative",
65
- label: "First accordion",
66
- onChange: onChange
67
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
68
- theme: "light",
69
- mode: "alternative",
70
- disabled: true,
71
- label: "Second accordion",
72
- onChange: onChange
73
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
74
- theme: "light",
75
- mode: "alternative",
76
- label: "Third accordion",
77
- assistiveText: "Extra information",
78
- onChange: onChange
79
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
80
- theme: "light",
81
- mode: "alternative",
82
- label: "Fourth accordion",
83
- assistiveText: "Extra information",
84
- iconPosition: "before",
85
- iconSrc: _run_icon_black["default"],
86
- onChange: onChange
87
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
88
- theme: "light",
89
- mode: "alternative",
90
- label: "Fifth accordion",
91
- assistiveText: "Extra information",
92
- iconPosition: "after",
93
- iconSrc: _run_icon_black["default"],
94
- onChange: onChange
95
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget."))), _react["default"].createElement("h3", null, "Dark"), _react["default"].createElement("div", null, _react["default"].createElement("div", {
96
- style: {
97
- background: "black",
98
- paddingTop: "50px",
99
- paddingBottom: "50px"
100
- }
101
- }, _react["default"].createElement(_Accordion["default"], {
102
- label: "First accordion",
103
- onChange: onChange
104
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
105
- theme: "dark",
106
- disabled: true,
107
- label: "Second accordion",
108
- onChange: onChange
109
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
110
- theme: "dark",
111
- label: "Third accordion",
112
- onChange: onChange,
113
- assistiveText: "Extra information"
114
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
115
- theme: "dark",
116
- label: "Fourth accordion",
117
- assistiveText: "Extra information",
118
- iconPosition: "before",
119
- iconSrc: _run_icon_black["default"],
120
- onChange: onChange
121
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
122
- theme: "dark",
123
- label: "Fifth accordion",
124
- assistiveText: "Extra information",
125
- iconPosition: "after",
126
- iconSrc: _run_icon_black["default"],
127
- onChange: onChange
128
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget."))), _react["default"].createElement("div", {
129
- style: {
130
- background: "black",
131
- paddingBottom: "50px"
132
- }
133
- }, _react["default"].createElement(_Accordion["default"], {
134
- theme: "dark",
135
- mode: "alternative",
136
- label: "First accordion",
137
- onChange: onChange
138
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
139
- theme: "dark",
140
- mode: "alternative",
141
- disabled: true,
142
- label: "Second accordion",
143
- onChange: onChange
144
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
145
- theme: "dark",
146
- mode: "alternative",
147
- label: "Third accordion",
148
- assistiveText: "Extra information",
149
- onChange: onChange
150
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
151
- theme: "dark",
152
- mode: "alternative",
153
- label: "Fourth accordion",
154
- assistiveText: "Extra information",
155
- iconPosition: "before",
156
- iconSrc: _run_icon_black["default"],
157
- onChange: onChange
158
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), _react["default"].createElement(_Accordion["default"], {
159
- theme: "dark",
160
- mode: "alternative",
161
- label: "Fifth accordion",
162
- assistiveText: "Extra information",
163
- iconPosition: "after",
164
- iconSrc: _run_icon_black["default"],
165
- onChange: onChange
166
- }, _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")))));
167
- }, {
168
- notes: {
169
- markdown: _readme["default"]
170
- }
171
- });
172
-
173
- var knobProps = function knobProps() {
174
- return {
175
- mode: (0, _addonKnobs.select)("mode", {
176
- "default": "default",
177
- alternative: "alternative"
178
- }, "default"),
179
- label: (0, _addonKnobs.text)("label", "Test Accordion"),
180
- assistiveText: (0, _addonKnobs.text)("assistive text", "Extra information"),
181
- theme: (0, _addonKnobs.select)("theme", {
182
- light: "light",
183
- dark: "dark"
184
- }, "light"),
185
- disabled: (0, _addonKnobs["boolean"])("disabled", false),
186
- iconPosition: (0, _addonKnobs.select)("icon position", {
187
- before: "before",
188
- after: "after"
189
- }, "before")
190
- };
191
- };
192
-
193
- (0, _react2.storiesOf)("Form Components|Accordion", module).add("Knobs example", function () {
194
- var props = knobProps();
195
- return _react["default"].createElement("div", {
196
- style: {
197
- background: props.theme === "dark" && "black" || "transparent"
198
- }
199
- }, _react["default"].createElement(_Accordion["default"], (0, _extends2["default"])({}, props, {
200
- onChange: onChange,
201
- iconSrc: _run_icon_black["default"]
202
- }), _react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")));
203
- }, {
204
- notes: {
205
- markdown: _readme["default"]
206
- }
207
- });
@@ -1,70 +0,0 @@
1
- # DXC Accordion Group Component
2
- ## Props
3
-
4
- <table>
5
- <tr style="background-color: grey">
6
- <td>Name</td>
7
- <td>Default</td>
8
- <td>Description</td>
9
- </tr>
10
- <tr>
11
- <td>indexActive: number</td>
12
- <td></td>
13
- <td>The index of the active accordion. If undefined, the component will be uncontrolled and the active tab will be managed internally by the component.</td>
14
- </tr>
15
- <tr>
16
- <td>disabled: boolean</td>
17
- <td><code>false</code></td>
18
- <td>If true, the component will be disabled.</td>
19
- </tr>
20
- <tr>
21
- <td>onActiveChange: function</td>
22
- <td></td>
23
- <td>This function will be called when the user clicks on an accordion. The index of the clicked accordion will be passed as a parameter.</td>
24
- </tr>
25
- <tr>
26
- <td>margin: string | object</td>
27
- <td></td>
28
- <td>Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge'). You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.</td>
29
- </tr>
30
-
31
- </table>
32
-
33
- ## Examples
34
-
35
- - Basic accordion group
36
-
37
- ```js
38
- import React from "react";
39
-
40
- import { DxcAccordionGroup } from "@dxc-technology/halstack-react";
41
-
42
- function App() {
43
- const handleOnChange = event => {
44
- console.log("Accordion clicked");
45
- };
46
-
47
- return (
48
- <div>
49
- <DxcAccordionGroup>
50
- <DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
51
- <div>
52
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
53
- Suspendisse malesuada lacus ex, sit amet blandit leo lobortis
54
- eget.
55
- </div>
56
- </DxcAccordionGroup.Accordion>
57
- <DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
58
- <div>
59
- Lorem ipsum dolor sit amet, consectetur adipiscing elit.
60
- Suspendisse malesuada lacus ex, sit amet blandit leo lobortis
61
- eget.
62
- </div>
63
- </DxcAccordionGroup.Accordion>
64
- </DxcAccordionGroup>
65
- </div>
66
- );
67
- }
68
-
69
- export default App;
70
- ```