@dxc-technology/halstack-react 0.0.0-f44cd28 → 0.0.0-f77ec3a

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 (248) hide show
  1. package/README.md +2 -2
  2. package/babel.config.js +0 -1
  3. package/dist/BackgroundColorContext.js +46 -0
  4. package/dist/ThemeContext.js +213 -153
  5. package/dist/V3Select/V3Select.js +549 -0
  6. package/dist/V3Select/index.d.ts +27 -0
  7. package/dist/V3Textarea/V3Textarea.js +264 -0
  8. package/dist/V3Textarea/index.d.ts +27 -0
  9. package/dist/accordion/Accordion.js +131 -46
  10. package/dist/accordion/index.d.ts +28 -0
  11. package/dist/accordion-group/AccordionGroup.js +34 -4
  12. package/dist/accordion-group/index.d.ts +16 -0
  13. package/dist/alert/Alert.js +180 -80
  14. package/dist/alert/index.d.ts +51 -0
  15. package/dist/badge/Badge.js +28 -7
  16. package/dist/box/Box.js +29 -18
  17. package/dist/box/index.d.ts +25 -0
  18. package/dist/button/Button.js +62 -23
  19. package/dist/button/index.d.ts +24 -0
  20. package/dist/card/Card.js +72 -35
  21. package/dist/card/index.d.ts +22 -0
  22. package/dist/checkbox/Checkbox.js +98 -28
  23. package/dist/checkbox/index.d.ts +24 -0
  24. package/dist/chip/Chip.js +92 -32
  25. package/dist/chip/index.d.ts +22 -0
  26. package/dist/common/utils.js +2 -22
  27. package/dist/common/variables.js +1404 -179
  28. package/dist/date/Date.js +65 -38
  29. package/dist/date/index.d.ts +27 -0
  30. package/dist/date-input/DateInput.js +400 -0
  31. package/dist/date-input/index.d.ts +95 -0
  32. package/dist/dialog/Dialog.js +54 -31
  33. package/dist/dialog/index.d.ts +18 -0
  34. package/dist/dropdown/Dropdown.js +173 -75
  35. package/dist/dropdown/index.d.ts +26 -0
  36. package/dist/file-input/FileInput.js +644 -0
  37. package/dist/file-input/FileItem.js +287 -0
  38. package/dist/file-input/index.d.ts +81 -0
  39. package/dist/footer/Footer.js +89 -34
  40. package/dist/footer/Icons.js +77 -0
  41. package/dist/footer/index.d.ts +25 -0
  42. package/dist/header/Header.js +190 -88
  43. package/dist/header/Icons.js +59 -0
  44. package/dist/header/index.d.ts +25 -0
  45. package/dist/heading/Heading.js +93 -16
  46. package/dist/heading/index.d.ts +17 -0
  47. package/dist/input-text/Icons.js +22 -0
  48. package/dist/input-text/InputText.js +247 -101
  49. package/dist/input-text/index.d.ts +36 -0
  50. package/dist/layout/ApplicationLayout.js +15 -18
  51. package/dist/layout/Icons.js +55 -0
  52. package/dist/link/Link.js +84 -34
  53. package/dist/link/index.d.ts +23 -0
  54. package/dist/main.d.ts +40 -0
  55. package/dist/main.js +72 -16
  56. package/dist/number-input/NumberInput.js +136 -0
  57. package/dist/number-input/NumberInputContext.js +16 -0
  58. package/dist/number-input/index.d.ts +113 -0
  59. package/dist/paginator/Icons.js +66 -0
  60. package/dist/paginator/Paginator.js +102 -44
  61. package/dist/paginator/index.d.ts +20 -0
  62. package/dist/password-input/PasswordInput.js +203 -0
  63. package/dist/password-input/index.d.ts +94 -0
  64. package/dist/progress-bar/ProgressBar.js +91 -33
  65. package/dist/progress-bar/index.d.ts +18 -0
  66. package/dist/radio/Radio.js +30 -11
  67. package/dist/radio/index.d.ts +23 -0
  68. package/dist/resultsetTable/ResultsetTable.js +79 -48
  69. package/dist/resultsetTable/index.d.ts +19 -0
  70. package/dist/select/Select.js +899 -278
  71. package/dist/select/index.d.ts +53 -0
  72. package/dist/sidenav/Sidenav.js +64 -8
  73. package/dist/sidenav/index.d.ts +13 -0
  74. package/dist/slider/Slider.js +212 -65
  75. package/dist/slider/index.d.ts +29 -0
  76. package/dist/spinner/Spinner.js +247 -56
  77. package/dist/spinner/index.d.ts +17 -0
  78. package/dist/stories/Button.js +71 -0
  79. package/dist/stories/Button.stories.js +55 -0
  80. package/dist/stories/Header.js +67 -0
  81. package/dist/stories/Header.stories.js +31 -0
  82. package/dist/stories/Introduction.stories.mdx +211 -0
  83. package/dist/stories/Page.js +68 -0
  84. package/dist/stories/Page.stories.js +39 -0
  85. package/dist/stories/assets/code-brackets.svg +1 -0
  86. package/dist/stories/assets/colors.svg +1 -0
  87. package/dist/stories/assets/comments.svg +1 -0
  88. package/dist/stories/assets/direction.svg +1 -0
  89. package/dist/stories/assets/flow.svg +1 -0
  90. package/dist/stories/assets/plugin.svg +1 -0
  91. package/dist/stories/assets/repo.svg +1 -0
  92. package/dist/stories/assets/stackalt.svg +1 -0
  93. package/dist/stories/button.css +30 -0
  94. package/dist/stories/header.css +26 -0
  95. package/dist/stories/page.css +69 -0
  96. package/dist/switch/Switch.js +51 -19
  97. package/dist/switch/index.d.ts +24 -0
  98. package/dist/table/Table.js +48 -18
  99. package/dist/table/index.d.ts +13 -0
  100. package/dist/tabs/Tabs.js +58 -17
  101. package/dist/tabs/index.d.ts +19 -0
  102. package/dist/tag/Tag.js +68 -35
  103. package/dist/tag/index.d.ts +24 -0
  104. package/dist/text-input/TextInput.js +974 -0
  105. package/dist/text-input/index.d.ts +135 -0
  106. package/dist/textarea/Textarea.js +246 -97
  107. package/dist/textarea/index.d.ts +117 -0
  108. package/dist/toggle/Toggle.js +16 -19
  109. package/dist/toggle/index.d.ts +21 -0
  110. package/dist/toggle-group/ToggleGroup.js +150 -32
  111. package/dist/toggle-group/index.d.ts +21 -0
  112. package/dist/upload/Upload.js +13 -8
  113. package/dist/upload/buttons-upload/ButtonsUpload.js +32 -19
  114. package/dist/upload/buttons-upload/Icons.js +40 -0
  115. package/dist/upload/dragAndDropArea/DragAndDropArea.js +84 -34
  116. package/dist/upload/dragAndDropArea/Icons.js +39 -0
  117. package/dist/upload/file-upload/FileToUpload.js +64 -33
  118. package/dist/upload/file-upload/Icons.js +66 -0
  119. package/dist/upload/files-upload/FilesToUpload.js +16 -16
  120. package/dist/upload/index.d.ts +15 -0
  121. package/dist/upload/transaction/Icons.js +160 -0
  122. package/dist/upload/transaction/Transaction.js +42 -49
  123. package/dist/upload/transactions/Transactions.js +38 -20
  124. package/dist/wizard/Icons.js +65 -0
  125. package/dist/wizard/Wizard.js +126 -47
  126. package/dist/wizard/index.d.ts +18 -0
  127. package/package.json +19 -13
  128. package/test/AccordionGroup.test.js +16 -0
  129. package/test/Date.test.js +15 -13
  130. package/test/DateInput.test.js +242 -0
  131. package/test/Dropdown.test.js +15 -0
  132. package/test/FileInput.test.js +201 -0
  133. package/test/Footer.test.js +2 -7
  134. package/test/Header.test.js +5 -10
  135. package/test/Heading.test.js +60 -12
  136. package/test/InputText.test.js +1 -2
  137. package/test/Link.test.js +3 -2
  138. package/test/NumberInput.test.js +259 -0
  139. package/test/Paginator.test.js +6 -2
  140. package/test/PasswordInput.test.js +83 -0
  141. package/test/ResultsetTable.test.js +6 -6
  142. package/test/Select.test.js +371 -148
  143. package/test/Slider.test.js +9 -17
  144. package/test/Spinner.test.js +5 -0
  145. package/test/TextInput.test.js +732 -0
  146. package/test/Textarea.test.js +193 -0
  147. package/test/ToggleGroup.test.js +5 -1
  148. package/test/Upload.test.js +1 -1
  149. package/test/V3Select.test.js +212 -0
  150. package/test/{TextArea.test.js → V3TextArea.test.js} +6 -7
  151. package/dist/accordion/Accordion.stories.js +0 -207
  152. package/dist/accordion/readme.md +0 -96
  153. package/dist/accordion-group/AccordionGroup.stories.js +0 -207
  154. package/dist/accordion-group/readme.md +0 -70
  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/button/Button.stories.js +0 -224
  163. package/dist/button/readme.md +0 -93
  164. package/dist/checkbox/Checkbox.stories.js +0 -144
  165. package/dist/checkbox/readme.md +0 -116
  166. package/dist/common/services/example-service.js +0 -10
  167. package/dist/common/services/example-service.test.js +0 -12
  168. package/dist/date/Date.stories.js +0 -205
  169. package/dist/date/calendar.svg +0 -1
  170. package/dist/date/calendar_dark.svg +0 -1
  171. package/dist/date/readme.md +0 -73
  172. package/dist/dialog/Dialog.stories.js +0 -217
  173. package/dist/dialog/readme.md +0 -32
  174. package/dist/dropdown/Dropdown.stories.js +0 -249
  175. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  176. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  177. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  178. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  179. package/dist/dropdown/readme.md +0 -69
  180. package/dist/footer/Footer.stories.js +0 -94
  181. package/dist/footer/dxc_logo_wht.png +0 -0
  182. package/dist/footer/readme.md +0 -41
  183. package/dist/header/Header.stories.js +0 -176
  184. package/dist/header/close_icon.svg +0 -1
  185. package/dist/header/dxc_logo_black.png +0 -0
  186. package/dist/header/dxc_logo_blk_rgb.svg +0 -6
  187. package/dist/header/dxc_logo_white.png +0 -0
  188. package/dist/header/hamb_menu_black.svg +0 -1
  189. package/dist/header/hamb_menu_white.svg +0 -1
  190. package/dist/header/readme.md +0 -33
  191. package/dist/input-text/InputText.stories.js +0 -209
  192. package/dist/input-text/error.svg +0 -1
  193. package/dist/input-text/readme.md +0 -91
  194. package/dist/layout/facebook.svg +0 -45
  195. package/dist/layout/linkedin.svg +0 -50
  196. package/dist/layout/twitter.svg +0 -53
  197. package/dist/link/readme.md +0 -51
  198. package/dist/paginator/images/next.svg +0 -3
  199. package/dist/paginator/images/nextPage.svg +0 -3
  200. package/dist/paginator/images/previous.svg +0 -3
  201. package/dist/paginator/images/previousPage.svg +0 -3
  202. package/dist/paginator/readme.md +0 -50
  203. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  204. package/dist/progress-bar/readme.md +0 -63
  205. package/dist/radio/Radio.stories.js +0 -166
  206. package/dist/radio/readme.md +0 -70
  207. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  208. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  209. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  210. package/dist/select/Select.stories.js +0 -235
  211. package/dist/select/readme.md +0 -72
  212. package/dist/slider/Slider.stories.js +0 -241
  213. package/dist/slider/readme.md +0 -64
  214. package/dist/spinner/Spinner.stories.js +0 -183
  215. package/dist/spinner/readme.md +0 -65
  216. package/dist/switch/Switch.stories.js +0 -134
  217. package/dist/switch/readme.md +0 -133
  218. package/dist/tabs/Tabs.stories.js +0 -130
  219. package/dist/tabs/readme.md +0 -78
  220. package/dist/tabs-for-sections/TabsForSections.js +0 -92
  221. package/dist/tabs-for-sections/readme.md +0 -78
  222. package/dist/toggle/Toggle.stories.js +0 -297
  223. package/dist/toggle/readme.md +0 -80
  224. package/dist/toggle-group/readme.md +0 -82
  225. package/dist/upload/Upload.stories.js +0 -72
  226. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  227. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  228. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  229. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  230. package/dist/upload/file-upload/audio-icon.svg +0 -4
  231. package/dist/upload/file-upload/close.svg +0 -4
  232. package/dist/upload/file-upload/file-icon.svg +0 -4
  233. package/dist/upload/file-upload/video-icon.svg +0 -4
  234. package/dist/upload/readme.md +0 -37
  235. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  236. package/dist/upload/transaction/audio-icon.svg +0 -4
  237. package/dist/upload/transaction/error-icon.svg +0 -4
  238. package/dist/upload/transaction/file-icon-err.svg +0 -4
  239. package/dist/upload/transaction/file-icon.svg +0 -4
  240. package/dist/upload/transaction/image-icon-err.svg +0 -4
  241. package/dist/upload/transaction/image-icon.svg +0 -4
  242. package/dist/upload/transaction/success-icon.svg +0 -4
  243. package/dist/upload/transaction/video-icon-err.svg +0 -4
  244. package/dist/upload/transaction/video-icon.svg +0 -4
  245. package/dist/wizard/invalid_icon.svg +0 -6
  246. package/dist/wizard/valid_icon.svg +0 -6
  247. package/dist/wizard/validation-wrong.svg +0 -6
  248. package/test/TabsForSections.test.js +0 -34
@@ -0,0 +1,264 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+
16
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
+
20
+ var _react = _interopRequireWildcard(require("react"));
21
+
22
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
+
24
+ var _TextField = _interopRequireDefault(require("@material-ui/core/TextField"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _variables = require("../common/variables.js");
29
+
30
+ var _utils = require("../common/utils.js");
31
+
32
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
33
+
34
+ var _RequiredComponent = _interopRequireDefault(require("../common/RequiredComponent"));
35
+
36
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
37
+
38
+ function _templateObject() {
39
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-block;\n position: relative;\n height: auto;\n width: ", ";\n\n .MuiTextField-root {\n width: 100%;\n\n .MuiFormHelperText-root {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n margin-top: 6px;\n }\n .MuiFormLabel-root {\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n padding-left: \"inherit\";\n\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n\n &.Mui-focused {\n color: ", ";\n &.MuiInputLabel-shrink {\n transform: \"translate(0, 1.5px) scale(0.75);\";\n }\n }\n\n &.MuiInputLabel-shrink {\n font-family: ", ";\n transform: \"translate(0, 1.5px) scale(0.75)\";\n }\n\n &.Mui-error {\n color: ", ";\n }\n\n &:not(.MuiInputLabel-shrink) {\n font-family: ", ";\n color: ", ";\n & + div,\n & + div + p {\n color: ", ";\n }\n }\n\n &.MuiInputLabel-shrink {\n & + div::before {\n border-color: ", ";\n }\n & + div + p {\n color: ", ";\n }\n }\n }\n .MuiInputBase-root.MuiInput-root.MuiInput-underline {\n &::before {\n border-bottom: ", ";\n }\n\n &:not(.Mui-error)::before,\n &:not(&.Mui-focused)::before {\n border-bottom: ", ";\n }\n\n &::after {\n border-bottom: ", ";\n }\n\n .MuiInputBase-inputMultiline {\n overflow: auto !important;\n\n ::-webkit-scrollbar {\n width: 3px;\n }\n\n ::-webkit-scrollbar-track {\n background-color: ", ";\n border-radius: 3px;\n }\n\n ::-webkit-scrollbar-thumb {\n background-color: ", ";\n border-radius: 3px;\n }\n }\n\n &.Mui-error {\n &::before {\n border-width: ", ";\n border-color: ", ";\n }\n &::after {\n transform: scaleX(0);\n }\n }\n\n &.Mui-focused {\n &::after {\n border-width: calc(", " + 1px);\n border-color: ", ";\n }\n &.Mui-error::after {\n border-color: ", ";\n }\n }\n\n &.Mui-disabled {\n cursor: not-allowed;\n\n &::before {\n border-bottom: ", ";\n border-bottom-style: solid;\n }\n }\n\n .MuiInputBase-input {\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n line-height: ", ";\n padding-left: \"inherit\";\n text-overflow: ellipsis;\n\n &.Mui-disabled {\n cursor: not-allowed;\n color: ", ";\n }\n }\n\n &:hover:not(.Mui-disabled):before &:hover:not(.Mui-error):before {\n border-bottom-color: ", ";\n }\n }\n\n & > p {\n &.Mui-error {\n color: ", ";\n }\n &.Mui-disabled {\n color: ", " !important;\n cursor: not-allowed;\n }\n }\n }\n"]);
40
+
41
+ _templateObject = function _templateObject() {
42
+ return data;
43
+ };
44
+
45
+ return data;
46
+ }
47
+
48
+ var V3DxcTextarea = function V3DxcTextarea(_ref) {
49
+ var _ref$label = _ref.label,
50
+ label = _ref$label === void 0 ? " " : _ref$label,
51
+ _ref$name = _ref.name,
52
+ name = _ref$name === void 0 ? "" : _ref$name,
53
+ value = _ref.value,
54
+ _ref$assistiveText = _ref.assistiveText,
55
+ assistiveText = _ref$assistiveText === void 0 ? "" : _ref$assistiveText,
56
+ _ref$disabled = _ref.disabled,
57
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
58
+ _ref$onChange = _ref.onChange,
59
+ onChange = _ref$onChange === void 0 ? "" : _ref$onChange,
60
+ _ref$onBlur = _ref.onBlur,
61
+ onBlur = _ref$onBlur === void 0 ? "" : _ref$onBlur,
62
+ _ref$numRows = _ref.numRows,
63
+ numRows = _ref$numRows === void 0 ? 4 : _ref$numRows,
64
+ _ref$invalid = _ref.invalid,
65
+ invalid = _ref$invalid === void 0 ? false : _ref$invalid,
66
+ _ref$required = _ref.required,
67
+ required = _ref$required === void 0 ? false : _ref$required,
68
+ _ref$placeholder = _ref.placeholder,
69
+ placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
70
+ margin = _ref.margin,
71
+ _ref$size = _ref.size,
72
+ size = _ref$size === void 0 ? "medium" : _ref$size,
73
+ _ref$tabIndex = _ref.tabIndex,
74
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
75
+
76
+ var _useState = (0, _react.useState)(""),
77
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
78
+ innerValue = _useState2[0],
79
+ setInnerValue = _useState2[1];
80
+
81
+ var colorsTheme = (0, _useTheme["default"])();
82
+ var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
83
+
84
+ var handlerTextareaChange = function handlerTextareaChange(event) {
85
+ if (value === null || value === undefined) {
86
+ if (typeof onChange === "function") {
87
+ setInnerValue(event.target.value);
88
+ onChange(event.target.value);
89
+ } else {
90
+ setInnerValue(event.target.value);
91
+ }
92
+ } else if (onChange !== "") {
93
+ if (typeof onChange === "function") {
94
+ onChange(event.target.value);
95
+ } else {
96
+ setInnerValue(event.target.value);
97
+ }
98
+ }
99
+ };
100
+
101
+ var handlerTextareaBlur = function handlerTextareaBlur(event) {
102
+ setInnerValue(event.target.value);
103
+
104
+ if (onBlur) {
105
+ onBlur(event.target.value);
106
+ }
107
+ };
108
+
109
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
110
+ theme: colorsTheme.V3Textarea
111
+ }, _react["default"].createElement(TextContainer, {
112
+ required: required,
113
+ assistiveText: assistiveText,
114
+ margin: margin,
115
+ size: size,
116
+ backgroundType: backgroundType
117
+ }, _react["default"].createElement(_TextField["default"], {
118
+ error: invalid,
119
+ value: value !== null ? value : innerValue,
120
+ name: name,
121
+ multiline: true,
122
+ disabled: disabled,
123
+ label: required ? _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_RequiredComponent["default"], null), label) : label,
124
+ helperText: assistiveText,
125
+ onChange: handlerTextareaChange,
126
+ onBlur: onBlur && handlerTextareaBlur || null,
127
+ rows: numRows,
128
+ placeholder: placeholder,
129
+ inputProps: {
130
+ tabIndex: tabIndex
131
+ }
132
+ })));
133
+ };
134
+
135
+ var sizes = {
136
+ small: "42px",
137
+ medium: "240px",
138
+ large: "480px",
139
+ fillParent: "100%"
140
+ };
141
+
142
+ var calculateWidth = function calculateWidth(margin, size) {
143
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
144
+ };
145
+
146
+ var TextContainer = _styledComponents["default"].div(_templateObject(), function (props) {
147
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
148
+ }, function (props) {
149
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
150
+ }, function (props) {
151
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
152
+ }, function (props) {
153
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
154
+ }, function (props) {
155
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
156
+ }, function (props) {
157
+ return calculateWidth(props.margin, props.size);
158
+ }, function (props) {
159
+ return props.theme.fontFamily;
160
+ }, function (props) {
161
+ return props.theme.assistiveTextFontSize;
162
+ }, function (props) {
163
+ return props.theme.assistiveTextFontStyle;
164
+ }, function (props) {
165
+ return props.theme.assistiveTextFontWeight;
166
+ }, function (props) {
167
+ return props.theme.assistiveTextLetterSpacing;
168
+ }, function (props) {
169
+ return props.theme.labelFontSize;
170
+ }, function (props) {
171
+ return props.theme.labelFontStyle;
172
+ }, function (props) {
173
+ return props.theme.labelFontWeight;
174
+ }, function (props) {
175
+ return props.theme.labelLetterSpacing;
176
+ }, function (props) {
177
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
178
+ }, function (props) {
179
+ return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
180
+ }, function (props) {
181
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
182
+ }, function (props) {
183
+ return props.theme.fontFamily;
184
+ }, function (props) {
185
+ return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
186
+ }, function (props) {
187
+ return props.theme.fontFamily;
188
+ }, function (props) {
189
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
190
+ }, function (props) {
191
+ return props.backgroundType === "dark" ? props.theme.assistiveTextFontColorOnDark : props.theme.assistiveTextFontColor;
192
+ }, function (props) {
193
+ return props.backgroundType ? props.theme.underlineColorOnDark : props.theme.underlineColor;
194
+ }, function (props) {
195
+ return props.backgroundType === "dark" ? props.theme.labelFontColorOnDark : props.theme.labelFontColor;
196
+ }, function (props) {
197
+ return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor);
198
+ }, function (props) {
199
+ return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.underlineColorOnDark : props.theme.underlineColor);
200
+ }, function (props) {
201
+ return "calc(".concat(props.theme.underlineThickness, " + 1px) solid ").concat(props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor);
202
+ }, function (props) {
203
+ return props.backgroundType === "dark" ? props.theme.scrollBarTrackColorOnDark : props.theme.scrollBarTrackColor;
204
+ }, function (props) {
205
+ return props.backgroundType === "dark" ? props.theme.scrollBarThumbColorOnDark : props.theme.scrollBarThumbColor;
206
+ }, function (props) {
207
+ return props.theme.underlineThickness;
208
+ }, function (props) {
209
+ return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
210
+ }, function (props) {
211
+ return props.theme.underlineThickness;
212
+ }, function (props) {
213
+ return props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor;
214
+ }, function (props) {
215
+ return props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor;
216
+ }, function (props) {
217
+ return "".concat(props.theme.underlineThickness, " solid ").concat(props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor, " !important");
218
+ }, function (props) {
219
+ return props.theme.fontFamily;
220
+ }, function (props) {
221
+ return props.theme.valueFontSize;
222
+ }, function (props) {
223
+ return props.theme.valueFontStyle;
224
+ }, function (props) {
225
+ return props.theme.valueFontWeight;
226
+ }, function (props) {
227
+ return props.theme.valueLetterSpacing;
228
+ }, function (props) {
229
+ return props.backgroundType === "dark" ? props.theme.valueFontColorOnDark : props.theme.valueFontColor;
230
+ }, function (props) {
231
+ return props.theme.valueLineHeight;
232
+ }, function (props) {
233
+ return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
234
+ }, function (props) {
235
+ return props.backgroundType === "dark" ? props.theme.underlineFocusColorOnDark : props.theme.underlineFocusColor;
236
+ }, function (props) {
237
+ return "".concat(props.backgroundType === "dark" ? props.theme.errorColorOnDark : props.theme.errorColor, " !important");
238
+ }, function (props) {
239
+ return props.backgroundType === "dark" ? props.theme.disabledColorOnDark : props.theme.disabledColor;
240
+ });
241
+
242
+ V3DxcTextarea.propTypes = {
243
+ label: _propTypes["default"].string,
244
+ name: _propTypes["default"].string,
245
+ value: _propTypes["default"].string,
246
+ assistiveText: _propTypes["default"].string,
247
+ disabled: _propTypes["default"].bool,
248
+ required: _propTypes["default"].bool,
249
+ invalid: _propTypes["default"].bool,
250
+ placeholder: _propTypes["default"].string,
251
+ onChange: _propTypes["default"].func,
252
+ onBlur: _propTypes["default"].func,
253
+ numRows: _propTypes["default"].number,
254
+ size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
255
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
256
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
257
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
258
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
259
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
260
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
261
+ tabIndex: _propTypes["default"].number
262
+ };
263
+ var _default = V3DxcTextarea;
264
+ exports["default"] = _default;
@@ -0,0 +1,27 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent";
2
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
+ type Margin = {
4
+ top?: Space;
5
+ bottom?: Space;
6
+ left?: Space;
7
+ right?: Space;
8
+ };
9
+
10
+ type Props = {
11
+ label?: string;
12
+ name?: string;
13
+ value?: string;
14
+ assistiveText?: string;
15
+ disabled?: boolean,
16
+ onChange?: void;
17
+ onBlur?: void;
18
+ numRows?: number;
19
+ required?: boolean;
20
+ invalid?: boolean;
21
+ placeholder?: string;
22
+ margin?: Space | Margin;
23
+ size?: Size;
24
+ tabIndex?: number;
25
+ };
26
+
27
+ export default function V3DxcTextarea(props: Props): JSX.Element;
@@ -9,10 +9,10 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
13
 
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
16
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
17
 
18
18
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -31,16 +31,16 @@ var _ExpandMore = _interopRequireDefault(require("@material-ui/icons/ExpandMore"
31
31
 
32
32
  var _propTypes = _interopRequireDefault(require("prop-types"));
33
33
 
34
- require("../common/OpenSans.css");
35
-
36
34
  var _utils = require("../common/utils.js");
37
35
 
38
36
  var _variables = require("../common/variables.js");
39
37
 
40
38
  var _useTheme = _interopRequireDefault(require("../useTheme.js"));
41
39
 
40
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
41
+
42
42
  function _templateObject7() {
43
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 20px;\n max-width: 20px;\n margin-left: 0px;\n margin-right: 10px;\n"]);
43
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n color: ", ";\n"]);
44
44
 
45
45
  _templateObject7 = function _templateObject7() {
46
46
  return data;
@@ -50,7 +50,7 @@ function _templateObject7() {
50
50
  }
51
51
 
52
52
  function _templateObject6() {
53
- var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: 0px;\n margin-right: 12px;\n overflow: hidden;\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
53
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n color: ", ";\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
54
54
 
55
55
  _templateObject6 = function _templateObject6() {
56
56
  return data;
@@ -60,7 +60,7 @@ function _templateObject6() {
60
60
  }
61
61
 
62
62
  function _templateObject5() {
63
- var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: 1px;\n font-size: 14px;\n font: italic normal 300 16px/22px Open Sans;\n letter-spacing: 0.49px;\n"]);
63
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n padding-left: ", ";\n padding-right: ", ";\n font-size: ", ";\n font-family: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n letter-spacing: ", ";\n flex: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n min-width: ", ";\n text-align: end;\n"]);
64
64
 
65
65
  _templateObject5 = function _templateObject5() {
66
66
  return data;
@@ -80,7 +80,7 @@ function _templateObject4() {
80
80
  }
81
81
 
82
82
  function _templateObject3() {
83
- var data = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n"]);
83
+ var data = (0, _taggedTemplateLiteral2["default"])([""]);
84
84
 
85
85
  _templateObject3 = function _templateObject3() {
86
86
  return data;
@@ -90,7 +90,7 @@ function _templateObject3() {
90
90
  }
91
91
 
92
92
  function _templateObject2() {
93
- var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n flex-grow: 1;\n margin-right: 15px;\n"]);
93
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n padding-left: ", ";\n padding-right: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n"]);
94
94
 
95
95
  _templateObject2 = function _templateObject2() {
96
96
  return data;
@@ -100,7 +100,7 @@ function _templateObject2() {
100
100
  }
101
101
 
102
102
  function _templateObject() {
103
- var data = (0, _taggedTemplateLiteral2["default"])(["\n min-width: 280px;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n width: ", ";\n\n font-family: \"Open Sans\", sans-serif;\n cursor: ", ";\n .MuiPaper-root {\n left: 85px;\n background-color: ", " !important;\n color: ", ";\n box-shadow: 0px 6px 10px #00000024;\n display: block;\n position: static;\n width: 100%;\n border-radius: 4px;\n\n &.Mui-expanded {\n border-radius: 4px;\n color: \"#000000\";\n }\n\n .MuiButtonBase-root.MuiExpansionPanelSummary-root {\n :hover {\n background-color: ", ";\n }\n }\n\n .MuiButtonBase-root {\n border-radius: 4px;\n height: 48px;\n\n &.Mui-expanded {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n .MuiSvgIcon-root {\n opacity: 1;\n }\n }\n\n &.MuiIconButton-root {\n height: auto;\n }\n\n .MuiExpansionPanelSummary-content {\n padding-right: 24px;\n &.Mui-expanded {\n div:nth-child(2) {\n opacity: 1;\n }\n }\n :hover {\n div {\n opacity: 1;\n }\n }\n }\n }\n\n .MuiExpansionPanelSummary-root.Mui-expanded {\n min-height: 48px;\n border: 1px solid ", ";\n }\n\n .MuiTouchRipple-root {\n display: none;\n }\n }\n\n .MuiCollapse-hidden {\n display: none;\n }\n\n .MuiPaper-root.Mui-disabled {\n color: ", ";\n }\n\n .MuiCollapse-container {\n color: #000000;\n border-radius: 0px 0px 4px 4px;\n cursor: default;\n width: 100%;\n }\n\n .MuiSvgIcon-root {\n color: ", ";\n }\n\n .MuiExpansionPanelSummary-root {\n padding: 0 16px 0 16px;\n }\n\n .MuiExpansionPanelSummary-root.Mui-disabled {\n opacity: 1;\n }\n\n .MuiExpansionPanelDetails-root {\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n }\n"]);
103
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n min-width: 280px;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n cursor: ", ";\n\n .MuiPaper-root {\n min-width: 0;\n display: flex;\n left: 85px;\n background-color: ", " !important;\n box-shadow: ", ";\n position: static;\n width: 100%;\n border-radius: ", ";\n\n &.Mui-expanded {\n border-radius: ", ";\n }\n &.MuiExpansionPanel-root {\n display: flex;\n flex-direction: column;\n min-height: 48px;\n }\n &.MuiExpansionPanel-rounded {\n border-radius: ", ";\n }\n .MuiButtonBase-root.MuiExpansionPanelSummary-root {\n min-height: 48px;\n height: 48px;\n\n :focus {\n outline-color: ", ";\n outline-style: ", ";\n outline-width: ", ";\n background-color: ", ";\n }\n :hover {\n background-color: ", ";\n }\n :active {\n background-color: ", ";\n }\n &.Mui-disabled {\n opacity: 1;\n }\n }\n .MuiButtonBase-root {\n border-radius: ", ";\n\n &.Mui-expanded {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n .MuiSvgIcon-root {\n opacity: 1;\n }\n }\n &.MuiIconButton-root {\n height: auto;\n }\n .MuiExpansionPanelSummary-content {\n padding-top: ", ";\n padding-bottom: ", ";\n padding-right: ", ";\n padding-left: ", ";\n min-width: 0;\n align-items: baseline;\n &.Mui-expanded {\n div:nth-child(2) {\n opacity: 1;\n }\n }\n :hover {\n div {\n opacity: 1;\n }\n }\n }\n }\n .MuiTouchRipple-root {\n display: none;\n }\n }\n .MuiCollapse-hidden {\n display: none;\n }\n .MuiCollapse-container {\n border-radius: 0px 0px 4px 4px;\n cursor: default;\n width: 100%;\n }\n .MuiIconButton-label {\n & > .MuiSvgIcon-root {\n color: ", ";\n }\n }\n .MuiExpansionPanelDetails-root {\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n }\n"]);
104
104
 
105
105
  _templateObject = function _templateObject() {
106
106
  return data;
@@ -124,7 +124,9 @@ var DxcAccordion = function DxcAccordion(_ref) {
124
124
  isExpanded = _ref.isExpanded,
125
125
  children = _ref.children,
126
126
  margin = _ref.margin,
127
- padding = _ref.padding;
127
+ padding = _ref.padding,
128
+ _ref$tabIndex = _ref.tabIndex,
129
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
128
130
 
129
131
  var _React$useState = _react["default"].useState(false),
130
132
  _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
@@ -179,39 +181,27 @@ var DxcAccordion = function DxcAccordion(_ref) {
179
181
  onChange: handlerAccordion,
180
182
  expanded: isExpanded != null ? isExpanded : innerIsExpanded
181
183
  }, _react["default"].createElement(_ExpansionPanelSummary["default"], {
182
- expandIcon: _react["default"].createElement(_ExpandMore["default"], null)
183
- }, _react["default"].createElement(AccordionInfo, null, _react["default"].createElement(AccordionLabel, null, label), icon ? _react["default"].createElement(IconContainer, null, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(AccordionIcon, {
184
+ expandIcon: _react["default"].createElement(_ExpandMore["default"], null),
185
+ tabIndex: disabled ? -1 : tabIndex
186
+ }, _react["default"].createElement(AccordionInfo, {
187
+ disabled: disabled
188
+ }, _react["default"].createElement(AccordionLabel, null, label), icon ? _react["default"].createElement(IconContainer, {
189
+ disabled: disabled
190
+ }, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(AccordionIcon, {
184
191
  src: iconSrc
185
- })), _react["default"].createElement(AccordionAssistiveText, null, assistiveText)), _react["default"].createElement(_ExpansionPanelDetails["default"], null, _react["default"].createElement(AccordionText, null, children)))));
192
+ })), assistiveText && _react["default"].createElement(AccordionAssistiveText, {
193
+ disabled: disabled
194
+ }, assistiveText)), _react["default"].createElement(_ExpansionPanelDetails["default"], null, _react["default"].createElement(AccordionContent, {
195
+ disabled: disabled
196
+ }, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
197
+ color: colorsTheme.accordion.backgroundColor
198
+ }, children))))));
186
199
  };
187
200
 
188
201
  var calculateWidth = function calculateWidth(margin) {
189
202
  return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
190
203
  };
191
204
 
192
- DxcAccordion.propTypes = {
193
- label: _propTypes["default"].string,
194
- iconSrc: _propTypes["default"].string,
195
- icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
196
- assistiveText: _propTypes["default"].string,
197
- disabled: _propTypes["default"].bool,
198
- onChange: _propTypes["default"].func,
199
- isExpanded: _propTypes["default"].bool,
200
- children: _propTypes["default"].element,
201
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
202
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
203
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
204
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
205
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
206
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
207
- padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
208
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
209
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
210
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
211
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
212
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
213
- };
214
-
215
205
  var DXCAccordion = _styledComponents["default"].div(_templateObject(), function (props) {
216
206
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
217
207
  }, function (props) {
@@ -226,18 +216,40 @@ var DXCAccordion = _styledComponents["default"].div(_templateObject(), function
226
216
  return calculateWidth(props.margin);
227
217
  }, function (props) {
228
218
  return props.disabled && "not-allowed" || "pointer";
219
+ }, function (props) {
220
+ return props.disabled ? props.theme.disabledBackgroundColor : props.theme.backgroundColor;
221
+ }, function (props) {
222
+ return "".concat(props.theme.boxShadowOffsetX, " ").concat(props.theme.boxShadowOffsetY, " ").concat(props.theme.boxShadowBlur, " ").concat(props.theme.boxShadowColor);
223
+ }, function (props) {
224
+ return props.theme.borderRadius;
225
+ }, function (props) {
226
+ return props.theme.borderRadius;
227
+ }, function (props) {
228
+ return props.theme.borderRadius;
229
+ }, function (props) {
230
+ return props.theme.focusBorderColor;
231
+ }, function (props) {
232
+ return props.theme.focusBorderStyle;
233
+ }, function (props) {
234
+ return props.theme.focusBorderThickness;
229
235
  }, function (props) {
230
236
  return props.theme.backgroundColor;
231
237
  }, function (props) {
232
- return props.theme.fontColor;
238
+ return "".concat(props.theme.hoverBackgroundColor);
233
239
  }, function (props) {
234
240
  return "".concat(props.theme.hoverBackgroundColor);
235
241
  }, function (props) {
236
- return props.theme.focusOutline;
242
+ return props.theme.borderRadius;
243
+ }, function (props) {
244
+ return props.theme.titleLabelPaddingTop;
245
+ }, function (props) {
246
+ return props.theme.titleLabelPaddingBottom;
237
247
  }, function (props) {
238
- return props.theme.disabledFontColor;
248
+ return props.theme.titleLabelPaddingRight;
239
249
  }, function (props) {
240
- return props.theme.arrowColor;
250
+ return props.theme.titleLabelPaddingLeft;
251
+ }, function (props) {
252
+ return props.disabled ? props.theme.disabledArrowColor : props.theme.arrowColor;
241
253
  }, function (props) {
242
254
  return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
243
255
  }, function (props) {
@@ -250,19 +262,92 @@ var DXCAccordion = _styledComponents["default"].div(_templateObject(), function
250
262
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
251
263
  });
252
264
 
253
- var AccordionInfo = _styledComponents["default"].div(_templateObject2());
265
+ var AccordionInfo = _styledComponents["default"].div(_templateObject2(), function (props) {
266
+ return props.theme.titlePaddingLeft;
267
+ }, function (props) {
268
+ return props.theme.titlePaddingRight;
269
+ }, function (props) {
270
+ return props.theme.titleLabelFontFamily;
271
+ }, function (props) {
272
+ return props.theme.titleLabelFontSize;
273
+ }, function (props) {
274
+ return props.theme.titleLabelFontStyle;
275
+ }, function (props) {
276
+ return props.theme.titleFonLabeltWeight;
277
+ }, function (props) {
278
+ return props.disabled ? props.theme.disabledTitleLabelFontColor : props.theme.titleLabelFontColor;
279
+ });
254
280
 
255
281
  var AccordionLabel = _styledComponents["default"].div(_templateObject3());
256
282
 
257
- var AccordionText = _styledComponents["default"].div(_templateObject4());
283
+ var AccordionContent = _styledComponents["default"].div(_templateObject4());
258
284
 
259
- var AccordionAssistiveText = _styledComponents["default"].div(_templateObject5());
285
+ var AccordionAssistiveText = _styledComponents["default"].div(_templateObject5(), function (props) {
286
+ return props.theme.assistiveTextPaddingLeft;
287
+ }, function (props) {
288
+ return props.theme.assistiveTextPaddingRight;
289
+ }, function (props) {
290
+ return props.theme.assistiveTextFontSize;
291
+ }, function (props) {
292
+ return props.theme.assistiveTextFontFamily;
293
+ }, function (props) {
294
+ return props.theme.assistiveTextFontStyle;
295
+ }, function (props) {
296
+ return props.theme.assistiveTextFontWeight;
297
+ }, function (props) {
298
+ return props.disabled ? props.theme.disabledAssistiveTextFontColor : props.theme.assistiveTextFontColor;
299
+ }, function (props) {
300
+ return props.theme.assistiveTextLetterSpacing;
301
+ }, function (props) {
302
+ return props.theme.assistiveTextMinWidth;
303
+ });
260
304
 
261
305
  var IconContainer = _styledComponents["default"].div(_templateObject6(), function (props) {
262
- return props.theme.arrowColor;
306
+ return props.theme.iconSize;
307
+ }, function (props) {
308
+ return props.theme.iconSize;
309
+ }, function (props) {
310
+ return props.theme.iconMarginLeft;
311
+ }, function (props) {
312
+ return props.theme.iconMarginRigth;
313
+ }, function (props) {
314
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
263
315
  });
264
316
 
265
- var AccordionIcon = _styledComponents["default"].img(_templateObject7());
317
+ var AccordionIcon = _styledComponents["default"].img(_templateObject7(), function (props) {
318
+ return props.theme.iconSize;
319
+ }, function (props) {
320
+ return props.theme.iconSize;
321
+ }, function (props) {
322
+ return props.theme.iconMarginLeft;
323
+ }, function (props) {
324
+ return props.theme.iconMarginRigth;
325
+ }, function (props) {
326
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
327
+ });
266
328
 
329
+ DxcAccordion.propTypes = {
330
+ label: _propTypes["default"].string,
331
+ iconSrc: _propTypes["default"].string,
332
+ icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
333
+ assistiveText: _propTypes["default"].string,
334
+ disabled: _propTypes["default"].bool,
335
+ onChange: _propTypes["default"].func,
336
+ isExpanded: _propTypes["default"].bool,
337
+ children: _propTypes["default"].element,
338
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
339
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
340
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
341
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
342
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
343
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
344
+ padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
345
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
346
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
347
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
348
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
349
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
350
+ tabIndex: _propTypes["default"].number
351
+ };
267
352
  var _default = DxcAccordion;
268
353
  exports["default"] = _default;
@@ -0,0 +1,28 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ type Padding = {
9
+ top?: Space;
10
+ bottom?: Space;
11
+ left?: Space;
12
+ right?: Space;
13
+ };
14
+
15
+ type Props = {
16
+ label?: string;
17
+ iconSrc?: string;
18
+ icon?: any;
19
+ assistiveText?: string;
20
+ disabled?: boolean;
21
+ onChange?: void;
22
+ isExpanded?: boolean;
23
+ margin?: Space | Margin;
24
+ padding?: Space | Padding;
25
+ tabIndex?: number;
26
+ };
27
+
28
+ export default function DxcAccordion(props: Props): JSX.Element;