@dxc-technology/halstack-react 0.0.0-636b51b → 0.0.0-63706cc

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 (331) 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 +36 -29
  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 -23
  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/Paginator.stories.tsx +63 -0
  98. package/paginator/types.d.ts +38 -0
  99. package/paginator/types.js +5 -0
  100. package/password-input/PasswordInput.js +199 -0
  101. package/password-input/PasswordInput.stories.jsx +131 -0
  102. package/password-input/index.d.ts +94 -0
  103. package/progress-bar/ProgressBar.d.ts +4 -0
  104. package/progress-bar/ProgressBar.js +170 -0
  105. package/progress-bar/types.d.ts +37 -0
  106. package/progress-bar/types.js +5 -0
  107. package/radio/Radio.d.ts +4 -0
  108. package/radio/Radio.js +174 -0
  109. package/radio/types.d.ts +54 -0
  110. package/radio/types.js +5 -0
  111. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +92 -145
  112. package/resultsetTable/index.d.ts +19 -0
  113. package/select/Select.js +865 -0
  114. package/select/index.d.ts +131 -0
  115. package/sidenav/Sidenav.js +145 -0
  116. package/sidenav/index.d.ts +13 -0
  117. package/slider/Slider.d.ts +4 -0
  118. package/slider/Slider.js +306 -0
  119. package/slider/types.d.ts +83 -0
  120. package/slider/types.js +5 -0
  121. package/spinner/Spinner.js +267 -0
  122. package/spinner/index.d.ts +17 -0
  123. package/switch/Switch.d.ts +4 -0
  124. package/switch/Switch.js +179 -0
  125. package/switch/types.d.ts +58 -0
  126. package/switch/types.js +5 -0
  127. package/table/Table.js +118 -0
  128. package/table/index.d.ts +13 -0
  129. package/tabs/Tabs.d.ts +4 -0
  130. package/tabs/Tabs.js +211 -0
  131. package/tabs/types.d.ts +71 -0
  132. package/tabs/types.js +5 -0
  133. package/tag/Tag.js +208 -0
  134. package/tag/index.d.ts +24 -0
  135. package/text-input/TextInput.js +825 -0
  136. package/text-input/index.d.ts +135 -0
  137. package/textarea/Textarea.js +317 -0
  138. package/textarea/Textarea.stories.jsx +135 -0
  139. package/textarea/index.d.ts +117 -0
  140. package/{dist/toggle → toggle}/Toggle.js +30 -67
  141. package/toggle/index.d.ts +21 -0
  142. package/toggle-group/ToggleGroup.js +243 -0
  143. package/toggle-group/index.d.ts +21 -0
  144. package/{dist/upload → upload}/Upload.js +23 -22
  145. package/upload/buttons-upload/ButtonsUpload.js +111 -0
  146. package/upload/buttons-upload/Icons.js +40 -0
  147. package/upload/dragAndDropArea/DragAndDropArea.js +225 -0
  148. package/upload/dragAndDropArea/Icons.js +39 -0
  149. package/upload/file-upload/FileToUpload.js +115 -0
  150. package/upload/file-upload/Icons.js +66 -0
  151. package/upload/files-upload/FilesToUpload.js +109 -0
  152. package/upload/index.d.ts +15 -0
  153. package/upload/transaction/Icons.js +160 -0
  154. package/upload/transaction/Transaction.js +104 -0
  155. package/upload/transactions/Transactions.js +94 -0
  156. package/{dist/useTheme.js → useTheme.js} +0 -0
  157. package/wizard/Icons.js +65 -0
  158. package/wizard/Wizard.js +271 -0
  159. package/wizard/index.d.ts +18 -0
  160. package/README.md +0 -66
  161. package/babel.config.js +0 -4
  162. package/dist/ThemeContext.js +0 -94
  163. package/dist/accordion/Accordion.js +0 -268
  164. package/dist/accordion/Accordion.stories.js +0 -207
  165. package/dist/accordion/readme.md +0 -96
  166. package/dist/accordion-group/AccordionGroup.js +0 -159
  167. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  168. package/dist/accordion-group/readme.md +0 -70
  169. package/dist/alert/Alert.js +0 -304
  170. package/dist/alert/Alert.stories.js +0 -158
  171. package/dist/alert/close.svg +0 -4
  172. package/dist/alert/error.svg +0 -4
  173. package/dist/alert/info.svg +0 -4
  174. package/dist/alert/readme.md +0 -43
  175. package/dist/alert/success.svg +0 -4
  176. package/dist/alert/warning.svg +0 -4
  177. package/dist/badge/Badge.js +0 -58
  178. package/dist/button/Button.js +0 -202
  179. package/dist/button/Button.stories.js +0 -224
  180. package/dist/button/readme.md +0 -93
  181. package/dist/card/Card.js +0 -217
  182. package/dist/checkbox/Checkbox.js +0 -240
  183. package/dist/checkbox/Checkbox.stories.js +0 -144
  184. package/dist/checkbox/readme.md +0 -116
  185. package/dist/chip/Chip.js +0 -203
  186. package/dist/common/services/example-service.js +0 -10
  187. package/dist/common/services/example-service.test.js +0 -12
  188. package/dist/common/utils.js +0 -42
  189. package/dist/common/variables.js +0 -426
  190. package/dist/date/Date.stories.js +0 -205
  191. package/dist/date/calendar.svg +0 -1
  192. package/dist/date/calendar_dark.svg +0 -1
  193. package/dist/date/readme.md +0 -73
  194. package/dist/dialog/Dialog.js +0 -197
  195. package/dist/dialog/Dialog.stories.js +0 -217
  196. package/dist/dialog/readme.md +0 -32
  197. package/dist/dropdown/Dropdown.js +0 -449
  198. package/dist/dropdown/Dropdown.stories.js +0 -249
  199. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  200. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  201. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  202. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  203. package/dist/dropdown/readme.md +0 -69
  204. package/dist/footer/Footer.js +0 -366
  205. package/dist/footer/Footer.stories.js +0 -94
  206. package/dist/footer/dxc_logo_wht.png +0 -0
  207. package/dist/footer/readme.md +0 -41
  208. package/dist/header/Header.js +0 -373
  209. package/dist/header/Header.stories.js +0 -176
  210. package/dist/header/close_icon.svg +0 -1
  211. package/dist/header/dxc_logo_black.png +0 -0
  212. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  213. package/dist/header/dxc_logo_white.png +0 -0
  214. package/dist/header/hamb_menu_black.svg +0 -1
  215. package/dist/header/hamb_menu_white.svg +0 -1
  216. package/dist/header/readme.md +0 -33
  217. package/dist/heading/Heading.js +0 -153
  218. package/dist/input-text/InputText.js +0 -570
  219. package/dist/input-text/InputText.stories.js +0 -209
  220. package/dist/input-text/error.svg +0 -1
  221. package/dist/input-text/readme.md +0 -91
  222. package/dist/layout/facebook.svg +0 -45
  223. package/dist/layout/linkedin.svg +0 -50
  224. package/dist/layout/twitter.svg +0 -53
  225. package/dist/link/Link.js +0 -192
  226. package/dist/link/readme.md +0 -51
  227. package/dist/paginator/Paginator.js +0 -254
  228. package/dist/paginator/images/next.svg +0 -3
  229. package/dist/paginator/images/nextPage.svg +0 -3
  230. package/dist/paginator/images/previous.svg +0 -3
  231. package/dist/paginator/images/previousPage.svg +0 -3
  232. package/dist/paginator/readme.md +0 -50
  233. package/dist/progress-bar/ProgressBar.js +0 -185
  234. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  235. package/dist/progress-bar/readme.md +0 -63
  236. package/dist/radio/Radio.js +0 -195
  237. package/dist/radio/Radio.stories.js +0 -166
  238. package/dist/radio/readme.md +0 -70
  239. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  240. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  241. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  242. package/dist/select/Select.js +0 -473
  243. package/dist/select/Select.stories.js +0 -235
  244. package/dist/select/readme.md +0 -72
  245. package/dist/sidenav/Sidenav.js +0 -128
  246. package/dist/slider/Slider.js +0 -266
  247. package/dist/slider/Slider.stories.js +0 -241
  248. package/dist/slider/readme.md +0 -64
  249. package/dist/spinner/Spinner.js +0 -193
  250. package/dist/spinner/Spinner.stories.js +0 -183
  251. package/dist/spinner/readme.md +0 -65
  252. package/dist/switch/Switch.js +0 -199
  253. package/dist/switch/Switch.stories.js +0 -134
  254. package/dist/switch/readme.md +0 -133
  255. package/dist/table/Table.js +0 -105
  256. package/dist/tabs/Tabs.js +0 -302
  257. package/dist/tabs/Tabs.stories.js +0 -130
  258. package/dist/tabs/readme.md +0 -78
  259. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  260. package/dist/tabs-for-sections/readme.md +0 -78
  261. package/dist/tag/Tag.js +0 -249
  262. package/dist/textarea/Textarea.js +0 -227
  263. package/dist/toggle/Toggle.stories.js +0 -297
  264. package/dist/toggle/readme.md +0 -80
  265. package/dist/toggle-group/ToggleGroup.js +0 -226
  266. package/dist/toggle-group/readme.md +0 -82
  267. package/dist/upload/Upload.stories.js +0 -72
  268. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -122
  269. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  270. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  271. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -279
  272. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  273. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  274. package/dist/upload/file-upload/FileToUpload.js +0 -158
  275. package/dist/upload/file-upload/audio-icon.svg +0 -4
  276. package/dist/upload/file-upload/close.svg +0 -4
  277. package/dist/upload/file-upload/file-icon.svg +0 -4
  278. package/dist/upload/file-upload/video-icon.svg +0 -4
  279. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  280. package/dist/upload/readme.md +0 -37
  281. package/dist/upload/transaction/Transaction.js +0 -155
  282. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  283. package/dist/upload/transaction/audio-icon.svg +0 -4
  284. package/dist/upload/transaction/error-icon.svg +0 -4
  285. package/dist/upload/transaction/file-icon-err.svg +0 -4
  286. package/dist/upload/transaction/file-icon.svg +0 -4
  287. package/dist/upload/transaction/image-icon-err.svg +0 -4
  288. package/dist/upload/transaction/image-icon.svg +0 -4
  289. package/dist/upload/transaction/success-icon.svg +0 -4
  290. package/dist/upload/transaction/video-icon-err.svg +0 -4
  291. package/dist/upload/transaction/video-icon.svg +0 -4
  292. package/dist/upload/transactions/Transactions.js +0 -120
  293. package/dist/wizard/Wizard.js +0 -331
  294. package/dist/wizard/invalid_icon.svg +0 -6
  295. package/dist/wizard/valid_icon.svg +0 -6
  296. package/dist/wizard/validation-wrong.svg +0 -6
  297. package/test/Accordion.test.js +0 -33
  298. package/test/AccordionGroup.test.js +0 -109
  299. package/test/Alert.test.js +0 -53
  300. package/test/Box.test.js +0 -10
  301. package/test/Button.test.js +0 -18
  302. package/test/Card.test.js +0 -30
  303. package/test/Checkbox.test.js +0 -45
  304. package/test/Chip.test.js +0 -25
  305. package/test/Date.test.js +0 -393
  306. package/test/Dialog.test.js +0 -23
  307. package/test/Dropdown.test.js +0 -130
  308. package/test/Footer.test.js +0 -99
  309. package/test/Header.test.js +0 -39
  310. package/test/Heading.test.js +0 -35
  311. package/test/InputText.test.js +0 -240
  312. package/test/Link.test.js +0 -42
  313. package/test/Paginator.test.js +0 -177
  314. package/test/ProgressBar.test.js +0 -35
  315. package/test/Radio.test.js +0 -37
  316. package/test/ResultsetTable.test.js +0 -330
  317. package/test/Select.test.js +0 -192
  318. package/test/Sidenav.test.js +0 -45
  319. package/test/Slider.test.js +0 -82
  320. package/test/Spinner.test.js +0 -27
  321. package/test/Switch.test.js +0 -45
  322. package/test/Table.test.js +0 -36
  323. package/test/Tabs.test.js +0 -109
  324. package/test/TabsForSections.test.js +0 -34
  325. package/test/Tag.test.js +0 -32
  326. package/test/TextArea.test.js +0 -52
  327. package/test/ToggleGroup.test.js +0 -81
  328. package/test/Upload.test.js +0 -60
  329. package/test/Wizard.test.js +0 -130
  330. package/test/mocks/pngMock.js +0 -1
  331. 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
- ```