@dxc-technology/halstack-react 0.0.0-2c3a5e1 → 0.0.0-2d5bb6f

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 (294) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -11
  3. package/HalstackContext.d.ts +13 -0
  4. package/HalstackContext.js +318 -0
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +123 -167
  7. package/accordion/Accordion.stories.tsx +115 -27
  8. package/accordion/Accordion.test.js +56 -0
  9. package/accordion/types.d.ts +10 -5
  10. package/accordion-group/AccordionGroup.d.ts +1 -1
  11. package/accordion-group/AccordionGroup.js +28 -77
  12. package/accordion-group/AccordionGroup.stories.tsx +28 -2
  13. package/accordion-group/AccordionGroup.test.js +108 -0
  14. package/accordion-group/types.d.ts +17 -6
  15. package/alert/Alert.js +18 -46
  16. package/alert/Alert.stories.tsx +28 -0
  17. package/alert/Alert.test.js +75 -0
  18. package/alert/types.d.ts +3 -3
  19. package/badge/Badge.d.ts +4 -0
  20. package/badge/Badge.js +6 -16
  21. package/badge/types.d.ts +5 -0
  22. package/bleed/Bleed.js +14 -55
  23. package/bleed/Bleed.stories.tsx +94 -95
  24. package/bleed/types.d.ts +26 -2
  25. package/box/Box.js +34 -63
  26. package/box/Box.stories.tsx +15 -0
  27. package/box/Box.test.js +13 -0
  28. package/box/types.d.ts +5 -4
  29. package/bulleted-list/BulletedList.d.ts +7 -0
  30. package/bulleted-list/BulletedList.js +98 -0
  31. package/bulleted-list/BulletedList.stories.tsx +200 -0
  32. package/bulleted-list/types.d.ts +11 -0
  33. package/button/Button.js +61 -100
  34. package/button/Button.stories.tsx +159 -8
  35. package/button/Button.test.js +26 -0
  36. package/button/types.d.ts +8 -8
  37. package/card/Card.js +44 -70
  38. package/card/Card.test.js +39 -0
  39. package/card/types.d.ts +4 -3
  40. package/checkbox/Checkbox.d.ts +2 -2
  41. package/checkbox/Checkbox.js +115 -162
  42. package/checkbox/Checkbox.stories.tsx +198 -130
  43. package/checkbox/Checkbox.test.js +128 -0
  44. package/checkbox/types.d.ts +14 -6
  45. package/chip/Chip.js +26 -50
  46. package/chip/Chip.stories.tsx +96 -9
  47. package/chip/Chip.test.js +42 -0
  48. package/chip/types.d.ts +4 -4
  49. package/common/utils.js +1 -6
  50. package/common/variables.d.ts +1431 -0
  51. package/common/variables.js +480 -553
  52. package/date-input/Calendar.d.ts +4 -0
  53. package/date-input/Calendar.js +215 -0
  54. package/date-input/DateInput.js +164 -300
  55. package/date-input/DateInput.stories.tsx +199 -33
  56. package/date-input/DateInput.test.js +648 -0
  57. package/date-input/DatePicker.d.ts +4 -0
  58. package/date-input/DatePicker.js +116 -0
  59. package/date-input/Icons.d.ts +6 -0
  60. package/date-input/Icons.js +63 -0
  61. package/date-input/YearPicker.d.ts +4 -0
  62. package/date-input/YearPicker.js +101 -0
  63. package/date-input/types.d.ts +71 -13
  64. package/dialog/Dialog.js +52 -84
  65. package/dialog/Dialog.stories.tsx +99 -22
  66. package/dialog/Dialog.test.js +56 -0
  67. package/dialog/types.d.ts +4 -3
  68. package/dropdown/Dropdown.d.ts +1 -1
  69. package/dropdown/Dropdown.js +239 -300
  70. package/dropdown/Dropdown.stories.tsx +245 -56
  71. package/dropdown/Dropdown.test.js +479 -0
  72. package/dropdown/DropdownMenu.d.ts +4 -0
  73. package/dropdown/DropdownMenu.js +60 -0
  74. package/dropdown/DropdownMenuItem.d.ts +4 -0
  75. package/dropdown/DropdownMenuItem.js +70 -0
  76. package/dropdown/types.d.ts +26 -6
  77. package/file-input/FileInput.d.ts +2 -2
  78. package/file-input/FileInput.js +224 -351
  79. package/file-input/FileInput.stories.tsx +122 -11
  80. package/file-input/FileInput.test.js +445 -0
  81. package/file-input/FileItem.d.ts +4 -14
  82. package/file-input/FileItem.js +48 -97
  83. package/file-input/types.d.ts +24 -7
  84. package/flex/Flex.d.ts +4 -0
  85. package/flex/Flex.js +57 -0
  86. package/flex/Flex.stories.tsx +103 -0
  87. package/flex/types.d.ts +32 -0
  88. package/footer/Footer.js +28 -133
  89. package/footer/Footer.stories.tsx +99 -1
  90. package/footer/Footer.test.js +92 -0
  91. package/footer/Icons.js +1 -5
  92. package/footer/types.d.ts +7 -6
  93. package/header/Header.js +112 -177
  94. package/header/Header.stories.tsx +189 -36
  95. package/header/Header.test.js +66 -0
  96. package/header/Icons.js +2 -6
  97. package/header/types.d.ts +4 -3
  98. package/heading/Heading.js +8 -29
  99. package/heading/Heading.test.js +169 -0
  100. package/heading/types.d.ts +3 -3
  101. package/inset/Inset.js +14 -55
  102. package/inset/Inset.stories.tsx +36 -36
  103. package/inset/types.d.ts +26 -2
  104. package/layout/ApplicationLayout.d.ts +16 -6
  105. package/layout/ApplicationLayout.js +71 -164
  106. package/layout/ApplicationLayout.stories.tsx +84 -93
  107. package/layout/Icons.d.ts +5 -0
  108. package/layout/Icons.js +11 -10
  109. package/layout/SidenavContext.d.ts +5 -0
  110. package/layout/SidenavContext.js +15 -0
  111. package/layout/types.d.ts +18 -33
  112. package/link/Link.d.ts +3 -2
  113. package/link/Link.js +61 -106
  114. package/link/Link.stories.tsx +159 -52
  115. package/link/Link.test.js +65 -0
  116. package/link/types.d.ts +9 -29
  117. package/main.d.ts +10 -15
  118. package/main.js +43 -124
  119. package/nav-tabs/NavTabs.d.ts +8 -0
  120. package/nav-tabs/NavTabs.js +95 -0
  121. package/nav-tabs/NavTabs.stories.tsx +260 -0
  122. package/nav-tabs/NavTabs.test.js +75 -0
  123. package/nav-tabs/Tab.d.ts +4 -0
  124. package/nav-tabs/Tab.js +120 -0
  125. package/nav-tabs/types.d.ts +53 -0
  126. package/number-input/NumberInput.js +21 -38
  127. package/number-input/NumberInput.stories.tsx +5 -5
  128. package/number-input/NumberInput.test.js +406 -0
  129. package/number-input/NumberInputContext.js +0 -5
  130. package/number-input/numberInputContextTypes.d.ts +1 -1
  131. package/number-input/types.d.ts +21 -14
  132. package/package.json +22 -25
  133. package/paginator/Icons.d.ts +5 -0
  134. package/paginator/Icons.js +16 -38
  135. package/paginator/Paginator.js +31 -82
  136. package/paginator/Paginator.stories.tsx +24 -0
  137. package/paginator/Paginator.test.js +266 -0
  138. package/paginator/types.d.ts +1 -1
  139. package/paragraph/Paragraph.d.ts +6 -0
  140. package/paragraph/Paragraph.js +28 -0
  141. package/paragraph/Paragraph.stories.tsx +44 -0
  142. package/password-input/PasswordInput.js +28 -54
  143. package/password-input/PasswordInput.test.js +138 -0
  144. package/password-input/types.d.ts +18 -15
  145. package/progress-bar/ProgressBar.d.ts +2 -2
  146. package/progress-bar/ProgressBar.js +65 -84
  147. package/progress-bar/ProgressBar.stories.jsx +47 -12
  148. package/progress-bar/ProgressBar.test.js +93 -0
  149. package/progress-bar/types.d.ts +3 -4
  150. package/quick-nav/QuickNav.d.ts +4 -0
  151. package/quick-nav/QuickNav.js +95 -0
  152. package/quick-nav/QuickNav.stories.tsx +356 -0
  153. package/quick-nav/types.d.ts +21 -0
  154. package/quick-nav/types.js +5 -0
  155. package/radio-group/Radio.d.ts +1 -1
  156. package/radio-group/Radio.js +55 -70
  157. package/radio-group/RadioGroup.js +91 -126
  158. package/radio-group/RadioGroup.stories.tsx +171 -36
  159. package/radio-group/RadioGroup.test.js +529 -157
  160. package/radio-group/types.d.ts +86 -8
  161. package/resultsetTable/Icons.d.ts +7 -0
  162. package/resultsetTable/Icons.js +48 -0
  163. package/resultsetTable/ResultsetTable.js +66 -157
  164. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  165. package/resultsetTable/ResultsetTable.test.js +292 -0
  166. package/resultsetTable/types.d.ts +5 -5
  167. package/select/Icons.d.ts +10 -0
  168. package/select/Icons.js +90 -0
  169. package/select/Listbox.d.ts +4 -0
  170. package/select/Listbox.js +144 -0
  171. package/select/Option.d.ts +4 -0
  172. package/select/Option.js +81 -0
  173. package/select/Select.js +201 -485
  174. package/select/Select.stories.tsx +600 -201
  175. package/select/Select.test.js +1845 -0
  176. package/select/types.d.ts +62 -22
  177. package/sidenav/Sidenav.d.ts +6 -5
  178. package/sidenav/Sidenav.js +164 -74
  179. package/sidenav/Sidenav.stories.tsx +249 -149
  180. package/sidenav/Sidenav.test.js +37 -0
  181. package/sidenav/types.d.ts +50 -27
  182. package/slider/Slider.d.ts +2 -2
  183. package/slider/Slider.js +143 -164
  184. package/slider/Slider.stories.tsx +72 -9
  185. package/slider/Slider.test.js +222 -0
  186. package/slider/types.d.ts +11 -3
  187. package/spinner/Spinner.js +12 -41
  188. package/spinner/Spinner.stories.jsx +27 -1
  189. package/spinner/Spinner.test.js +55 -0
  190. package/spinner/types.d.ts +3 -3
  191. package/switch/Switch.d.ts +2 -2
  192. package/switch/Switch.js +148 -107
  193. package/switch/Switch.stories.tsx +53 -42
  194. package/switch/Switch.test.js +180 -0
  195. package/switch/types.d.ts +13 -5
  196. package/table/Table.js +5 -23
  197. package/table/Table.stories.jsx +80 -1
  198. package/table/Table.test.js +21 -0
  199. package/table/types.d.ts +3 -3
  200. package/tabs/Tab.d.ts +4 -0
  201. package/tabs/Tab.js +115 -0
  202. package/tabs/Tabs.d.ts +1 -1
  203. package/tabs/Tabs.js +318 -139
  204. package/tabs/Tabs.stories.tsx +119 -13
  205. package/tabs/Tabs.test.js +295 -0
  206. package/tabs/types.d.ts +21 -7
  207. package/tag/Tag.js +34 -68
  208. package/tag/Tag.stories.tsx +25 -8
  209. package/tag/Tag.test.js +49 -0
  210. package/tag/types.d.ts +7 -7
  211. package/text-input/Icons.d.ts +8 -0
  212. package/text-input/Icons.js +57 -0
  213. package/text-input/Suggestion.d.ts +4 -0
  214. package/text-input/Suggestion.js +68 -0
  215. package/text-input/Suggestions.d.ts +4 -0
  216. package/text-input/Suggestions.js +109 -0
  217. package/text-input/TextInput.js +232 -438
  218. package/text-input/TextInput.stories.tsx +310 -197
  219. package/text-input/TextInput.test.js +1404 -0
  220. package/text-input/types.d.ts +55 -17
  221. package/textarea/Textarea.js +53 -96
  222. package/textarea/Textarea.stories.jsx +93 -13
  223. package/textarea/Textarea.test.js +360 -0
  224. package/textarea/types.d.ts +22 -15
  225. package/toggle-group/ToggleGroup.d.ts +1 -1
  226. package/toggle-group/ToggleGroup.js +23 -57
  227. package/toggle-group/ToggleGroup.stories.tsx +46 -4
  228. package/toggle-group/ToggleGroup.test.js +124 -0
  229. package/toggle-group/types.d.ts +19 -11
  230. package/translatedLabelsType.d.ts +82 -0
  231. package/translatedLabelsType.js +5 -0
  232. package/typography/Typography.d.ts +4 -0
  233. package/typography/Typography.js +119 -0
  234. package/typography/Typography.stories.tsx +198 -0
  235. package/typography/types.d.ts +18 -0
  236. package/typography/types.js +5 -0
  237. package/useTheme.d.ts +1 -1
  238. package/useTheme.js +3 -9
  239. package/useTranslatedLabels.d.ts +3 -0
  240. package/useTranslatedLabels.js +15 -0
  241. package/wizard/Wizard.d.ts +1 -1
  242. package/wizard/Wizard.js +68 -98
  243. package/wizard/Wizard.stories.tsx +48 -19
  244. package/wizard/Wizard.test.js +114 -0
  245. package/wizard/types.d.ts +12 -7
  246. package/ThemeContext.d.ts +0 -15
  247. package/ThemeContext.js +0 -243
  248. package/V3Select/V3Select.js +0 -455
  249. package/V3Select/index.d.ts +0 -27
  250. package/V3Textarea/V3Textarea.js +0 -260
  251. package/V3Textarea/index.d.ts +0 -27
  252. package/common/RequiredComponent.js +0 -32
  253. package/date/Date.js +0 -373
  254. package/date/index.d.ts +0 -27
  255. package/input-text/Icons.js +0 -22
  256. package/input-text/InputText.js +0 -611
  257. package/input-text/index.d.ts +0 -36
  258. package/list/List.d.ts +0 -4
  259. package/list/List.js +0 -47
  260. package/list/List.stories.tsx +0 -95
  261. package/list/types.d.ts +0 -7
  262. package/radio/Radio.d.ts +0 -4
  263. package/radio/Radio.js +0 -174
  264. package/radio/Radio.stories.tsx +0 -192
  265. package/radio/types.d.ts +0 -54
  266. package/row/Row.d.ts +0 -3
  267. package/row/Row.js +0 -127
  268. package/row/Row.stories.tsx +0 -237
  269. package/row/types.d.ts +0 -10
  270. package/stack/Stack.d.ts +0 -3
  271. package/stack/Stack.js +0 -97
  272. package/stack/Stack.stories.tsx +0 -164
  273. package/stack/types.d.ts +0 -9
  274. package/text/Text.d.ts +0 -7
  275. package/text/Text.js +0 -30
  276. package/text/Text.stories.tsx +0 -19
  277. package/toggle/Toggle.js +0 -186
  278. package/toggle/index.d.ts +0 -21
  279. package/upload/Upload.js +0 -201
  280. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  281. package/upload/buttons-upload/Icons.js +0 -40
  282. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  283. package/upload/dragAndDropArea/Icons.js +0 -39
  284. package/upload/file-upload/FileToUpload.js +0 -115
  285. package/upload/file-upload/Icons.js +0 -66
  286. package/upload/files-upload/FilesToUpload.js +0 -109
  287. package/upload/index.d.ts +0 -15
  288. package/upload/transaction/Icons.js +0 -160
  289. package/upload/transaction/Transaction.js +0 -104
  290. package/upload/transactions/Transactions.js +0 -94
  291. /package/{list → badge}/types.js +0 -0
  292. /package/{radio → bulleted-list}/types.js +0 -0
  293. /package/{row → flex}/types.js +0 -0
  294. /package/{stack → nav-tabs}/types.js +0 -0
@@ -1,135 +1,132 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports["default"] = void 0;
11
-
12
9
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
13
-
14
10
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = _interopRequireWildcard(require("react"));
19
-
20
13
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
-
22
- var _ExpansionPanel = _interopRequireDefault(require("@material-ui/core/ExpansionPanel"));
23
-
24
- var _ExpansionPanelSummary = _interopRequireDefault(require("@material-ui/core/ExpansionPanelSummary"));
25
-
26
- var _ExpansionPanelDetails = _interopRequireDefault(require("@material-ui/core/ExpansionPanelDetails"));
27
-
28
- var _ExpandMore = _interopRequireDefault(require("@material-ui/icons/ExpandMore"));
29
-
30
14
  var _utils = require("../common/utils.js");
31
-
32
- var _variables = require("../common/variables.js");
33
-
15
+ var _variables = require("../common/variables");
34
16
  var _useTheme = _interopRequireDefault(require("../useTheme"));
35
-
36
17
  var _BackgroundColorContext = require("../BackgroundColorContext");
37
-
38
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
39
-
18
+ var _Typography = _interopRequireDefault(require("../typography/Typography"));
19
+ var _uuid = require("uuid");
20
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
40
21
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
-
42
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
-
23
+ var expandLess = /*#__PURE__*/_react["default"].createElement("svg", {
24
+ xmlns: "http://www.w3.org/2000/svg",
25
+ height: "24",
26
+ width: "24",
27
+ fill: "currentColor"
28
+ }, /*#__PURE__*/_react["default"].createElement("path", {
29
+ d: "m7.4 15.375-1.4-1.4 6-6 6 6-1.4 1.4-4.6-4.6Z"
30
+ }));
31
+ var expandMore = /*#__PURE__*/_react["default"].createElement("svg", {
32
+ xmlns: "http://www.w3.org/2000/svg",
33
+ height: "24",
34
+ width: "24",
35
+ fill: "currentColor"
36
+ }, /*#__PURE__*/_react["default"].createElement("path", {
37
+ d: "m12 15.375-6-6 1.4-1.4 4.6 4.6 4.6-4.6 1.4 1.4Z"
38
+ }));
44
39
  var DxcAccordion = function DxcAccordion(_ref) {
45
40
  var _ref$label = _ref.label,
46
- label = _ref$label === void 0 ? "" : _ref$label,
47
- isExpanded = _ref.isExpanded,
48
- icon = _ref.icon,
49
- _ref$assistiveText = _ref.assistiveText,
50
- assistiveText = _ref$assistiveText === void 0 ? "" : _ref$assistiveText,
51
- _ref$disabled = _ref.disabled,
52
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
53
- onChange = _ref.onChange,
54
- children = _ref.children,
55
- margin = _ref.margin,
56
- padding = _ref.padding,
57
- _ref$tabIndex = _ref.tabIndex,
58
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
59
-
60
- var _useState = (0, _react.useState)(false),
61
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
62
- innerIsExpanded = _useState2[0],
63
- setInnerIsExpanded = _useState2[1];
64
-
65
- var _useState3 = (0, _react.useState)(false),
66
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
67
- isResponsive = _useState4[0],
68
- setIsResponsive = _useState4[1];
69
-
41
+ label = _ref$label === void 0 ? "" : _ref$label,
42
+ defaultIsExpanded = _ref.defaultIsExpanded,
43
+ isExpanded = _ref.isExpanded,
44
+ icon = _ref.icon,
45
+ _ref$assistiveText = _ref.assistiveText,
46
+ assistiveText = _ref$assistiveText === void 0 ? "" : _ref$assistiveText,
47
+ _ref$disabled = _ref.disabled,
48
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
49
+ onChange = _ref.onChange,
50
+ children = _ref.children,
51
+ margin = _ref.margin,
52
+ padding = _ref.padding,
53
+ _ref$tabIndex = _ref.tabIndex,
54
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
55
+ var _useState = (0, _react.useState)((0, _uuid.v4)()),
56
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 1),
57
+ id = _useState2[0];
58
+ var _useState3 = (0, _react.useState)(defaultIsExpanded !== null && defaultIsExpanded !== void 0 ? defaultIsExpanded : false),
59
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
60
+ innerIsExpanded = _useState4[0],
61
+ setInnerIsExpanded = _useState4[1];
70
62
  var colorsTheme = (0, _useTheme["default"])();
71
-
72
- var handleResize = function handleResize(width) {
73
- width && width <= _variables.responsiveSizes.tablet ? setIsResponsive(true) : setIsResponsive(false);
74
- };
75
-
76
- var handleEventListener = function handleEventListener() {
77
- handleResize(window.innerWidth);
78
- };
79
-
80
- (0, _react.useEffect)(function () {
81
- window.addEventListener("resize", handleEventListener);
82
- handleResize(window.innerWidth);
83
- return function () {
84
- window.removeEventListener("resize", handleEventListener);
85
- };
86
- }, []);
87
-
88
- var handlerAccordion = function handlerAccordion() {
89
- if (isExpanded == null) {
90
- setInnerIsExpanded(!innerIsExpanded);
91
- }
92
-
93
- if (typeof onChange === "function") {
94
- onChange(isExpanded == null ? !innerIsExpanded : !isExpanded);
95
- }
63
+ var handleAccordionState = function handleAccordionState() {
64
+ var _isExpanded;
65
+ isExpanded !== null && isExpanded !== void 0 ? isExpanded : setInnerIsExpanded(function (innerIsExpanded) {
66
+ return !innerIsExpanded;
67
+ });
68
+ onChange === null || onChange === void 0 ? void 0 : onChange((_isExpanded = !isExpanded) !== null && _isExpanded !== void 0 ? _isExpanded : !innerIsExpanded);
96
69
  };
97
-
98
70
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
99
- theme: colorsTheme.accordion
100
- }, /*#__PURE__*/_react["default"].createElement(DXCAccordion, {
71
+ theme: colorsTheme["accordion"]
72
+ }, /*#__PURE__*/_react["default"].createElement(AccordionContainer, {
73
+ isExpanded: isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded,
101
74
  padding: padding,
102
- margin: margin,
103
- disabled: disabled,
104
- icon: icon,
105
- isResponsive: isResponsive
106
- }, /*#__PURE__*/_react["default"].createElement(_ExpansionPanel["default"], {
75
+ margin: margin
76
+ }, /*#__PURE__*/_react["default"].createElement(AccordionHeader, null, /*#__PURE__*/_react["default"].createElement(AccordionTrigger, {
77
+ id: "accordion-".concat(id),
78
+ onClick: disabled ? undefined : handleAccordionState,
107
79
  disabled: disabled,
108
- onChange: handlerAccordion,
109
- expanded: isExpanded != null ? isExpanded : innerIsExpanded
110
- }, /*#__PURE__*/_react["default"].createElement(_ExpansionPanelSummary["default"], {
111
- expandIcon: /*#__PURE__*/_react["default"].createElement(_ExpandMore["default"], null),
112
- tabIndex: disabled ? -1 : tabIndex
80
+ tabIndex: disabled ? -1 : tabIndex,
81
+ "aria-expanded": isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded,
82
+ "aria-controls": "accordion-panel-".concat(id),
83
+ isExpanded: isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded
113
84
  }, /*#__PURE__*/_react["default"].createElement(AccordionInfo, {
114
85
  disabled: disabled
115
- }, /*#__PURE__*/_react["default"].createElement(AccordionLabel, null, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
86
+ }, /*#__PURE__*/_react["default"].createElement(AccordionLabel, null, icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
116
87
  disabled: disabled
117
- }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(AccordionIcon, {
88
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
118
89
  src: icon
119
- }) : icon)), assistiveText && /*#__PURE__*/_react["default"].createElement(AccordionAssistiveText, {
90
+ }) : icon), /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
91
+ color: disabled ? colorsTheme["accordion"].disabledTitleLabelFontColor : colorsTheme["accordion"].titleLabelFontColor,
92
+ fontFamily: colorsTheme["accordion"].titleLabelFontFamily,
93
+ fontSize: colorsTheme["accordion"].titleLabelFontSize,
94
+ fontStyle: colorsTheme["accordion"].titleLabelFontStyle,
95
+ fontWeight: colorsTheme["accordion"].titleLabelFontWeight,
96
+ lineHeight: "1.5em"
97
+ }, label)), assistiveText && /*#__PURE__*/_react["default"].createElement(AccordionAssistiveText, {
120
98
  disabled: disabled
121
- }, assistiveText)), /*#__PURE__*/_react["default"].createElement(_ExpansionPanelDetails["default"], null, /*#__PURE__*/_react["default"].createElement(AccordionContent, {
99
+ }, /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
100
+ color: disabled ? colorsTheme["accordion"].disabledAssistiveTextFontColor : colorsTheme["accordion"].assistiveTextFontColor,
101
+ fontFamily: colorsTheme["accordion"].assistiveTextFontFamily,
102
+ fontSize: colorsTheme["accordion"].assistiveTextFontSize,
103
+ fontStyle: colorsTheme["accordion"].assistiveTextFontStyle,
104
+ fontWeight: colorsTheme["accordion"].assistiveTextFontWeight,
105
+ letterSpacing: colorsTheme["accordion"].assistiveTextLetterSpacing,
106
+ lineHeight: "1.5em"
107
+ }, assistiveText))), /*#__PURE__*/_react["default"].createElement(CollapseIndicator, {
122
108
  disabled: disabled
109
+ }, (isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded) ? expandLess : expandMore))), (isExpanded !== null && isExpanded !== void 0 ? isExpanded : innerIsExpanded) && /*#__PURE__*/_react["default"].createElement(AccordionPanel, {
110
+ id: "accordion-panel-".concat(id),
111
+ role: "region",
112
+ "aria-labelledby": "accordion-".concat(id),
113
+ padding: padding
123
114
  }, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
124
- color: colorsTheme.accordion.backgroundColor
125
- }, children))))));
115
+ color: colorsTheme["accordion"].backgroundColor
116
+ }, children))));
126
117
  };
127
-
128
118
  var calculateWidth = function calculateWidth(margin) {
129
119
  return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
130
120
  };
131
-
132
- var DXCAccordion = _styledComponents["default"].div(_templateObject || (_templateObject = (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"])), function (props) {
121
+ var AccordionContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n background-color: ", ";\n border-radius: ", ";\n ", "\n box-shadow: ", ";\n min-width: 280px;\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n width: ", ";\n"])), function (props) {
122
+ return props.theme.backgroundColor;
123
+ }, function (props) {
124
+ return props.theme.borderRadius;
125
+ }, function (props) {
126
+ return props.isExpanded && "border-bottom-left-radius: 0; border-bottom-right-radius: 0;";
127
+ }, function (props) {
128
+ return "".concat(props.theme.boxShadowOffsetX, " ").concat(props.theme.boxShadowOffsetY, " ").concat(props.theme.boxShadowBlur, " ").concat(props.theme.boxShadowColor);
129
+ }, function (props) {
133
130
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
134
131
  }, function (props) {
135
132
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
@@ -141,33 +138,23 @@ var DXCAccordion = _styledComponents["default"].div(_templateObject || (_templat
141
138
  return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
142
139
  }, function (props) {
143
140
  return calculateWidth(props.margin);
144
- }, function (props) {
145
- return props.disabled && "not-allowed" || "pointer";
146
- }, function (props) {
147
- return props.theme.backgroundColor;
148
- }, function (props) {
149
- return "".concat(props.theme.boxShadowOffsetX, " ").concat(props.theme.boxShadowOffsetY, " ").concat(props.theme.boxShadowBlur, " ").concat(props.theme.boxShadowColor);
150
- }, function (props) {
151
- return props.theme.borderRadius;
152
- }, function (props) {
153
- return props.theme.borderRadius;
154
- }, function (props) {
141
+ });
142
+ var AccordionHeader = _styledComponents["default"].h3(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n min-height: 48px;\n margin: 0;\n"])));
143
+ var AccordionTrigger = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 24px;\n width: 100%;\n background-color: transparent;\n border: none;\n border-radius: ", ";\n ", "\n padding: 12px 16px;\n cursor: ", ";\n\n :focus {\n outline: ", ";\n }\n :hover:enabled {\n background-color: ", ";\n }\n :active:enabled {\n background-color: ", ";\n }\n"])), function (props) {
155
144
  return props.theme.borderRadius;
156
145
  }, function (props) {
157
- return props.theme.focusBorderColor;
146
+ return props.isExpanded && "border-bottom-left-radius: 0; border-bottom-right-radius: 0;";
158
147
  }, function (props) {
159
- return props.theme.focusBorderStyle;
148
+ return props.disabled ? "not-allowed" : "pointer";
160
149
  }, function (props) {
161
- return props.theme.focusBorderThickness;
162
- }, function (props) {
163
- return props.theme.backgroundColor;
150
+ return "".concat(props.theme.focusBorderColor, " ").concat(props.theme.focusBorderStyle, " ").concat(props.theme.focusBorderThickness);
164
151
  }, function (props) {
165
152
  return "".concat(props.theme.hoverBackgroundColor);
166
153
  }, function (props) {
167
154
  return "".concat(props.theme.hoverBackgroundColor);
168
- }, function (props) {
169
- return props.theme.borderRadius;
170
- }, function (props) {
155
+ });
156
+ var AccordionInfo = _styledComponents["default"].span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n justify-content: space-between;\n width: 100%;\n"])));
157
+ var AccordionLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n padding-top: ", ";\n padding-bottom: ", ";\n padding-right: ", ";\n padding-left: ", ";\n"])), function (props) {
171
158
  return props.theme.titleLabelPaddingTop;
172
159
  }, function (props) {
173
160
  return props.theme.titleLabelPaddingBottom;
@@ -175,73 +162,42 @@ var DXCAccordion = _styledComponents["default"].div(_templateObject || (_templat
175
162
  return props.theme.titleLabelPaddingRight;
176
163
  }, function (props) {
177
164
  return props.theme.titleLabelPaddingLeft;
178
- }, function (props) {
179
- return props.disabled ? props.theme.disabledArrowColor : props.theme.arrowColor;
180
- }, function (props) {
181
- return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
182
- }, function (props) {
183
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
184
- }, function (props) {
185
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
186
- }, function (props) {
187
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
188
- }, function (props) {
189
- return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
190
165
  });
191
-
192
- var AccordionInfo = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (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"])), function (props) {
193
- return props.theme.titlePaddingLeft;
194
- }, function (props) {
195
- return props.theme.titlePaddingRight;
196
- }, function (props) {
197
- return props.theme.titleLabelFontFamily;
166
+ var IconContainer = _styledComponents["default"].span(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin-left: ", ";\n margin-right: ", ";\n color: ", ";\n\n svg,\n img {\n height: ", ";\n width: ", ";\n }\n"])), function (props) {
167
+ return props.theme.iconMarginLeft;
198
168
  }, function (props) {
199
- return props.theme.titleLabelFontSize;
169
+ return props.theme.iconMarginRigth;
200
170
  }, function (props) {
201
- return props.theme.titleLabelFontStyle;
171
+ return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
202
172
  }, function (props) {
203
- return props.theme.titleFonLabeltWeight;
173
+ return props.theme.iconSize;
204
174
  }, function (props) {
205
- return props.disabled ? props.theme.disabledTitleLabelFontColor : props.theme.titleLabelFontColor;
175
+ return props.theme.iconSize;
206
176
  });
207
-
208
- var AccordionLabel = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
209
-
210
- var AccordionContent = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n"])));
211
-
212
- var AccordionAssistiveText = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (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"])), function (props) {
177
+ var AccordionAssistiveText = _styledComponents["default"].span(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n min-width: ", ";\n padding-left: ", ";\n padding-right: ", ";\n"])), function (props) {
178
+ return props.theme.assistiveTextMinWidth;
179
+ }, function (props) {
213
180
  return props.theme.assistiveTextPaddingLeft;
214
181
  }, function (props) {
215
182
  return props.theme.assistiveTextPaddingRight;
183
+ });
184
+ var CollapseIndicator = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n color: ", ";\n"])), function (props) {
185
+ return props.disabled ? props.theme.disabledArrowColor : props.theme.arrowColor;
186
+ });
187
+ var AccordionPanel = _styledComponents["default"].div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
188
+ return props.theme.borderRadius;
216
189
  }, function (props) {
217
- return props.theme.assistiveTextFontSize;
218
- }, function (props) {
219
- return props.theme.assistiveTextFontFamily;
220
- }, function (props) {
221
- return props.theme.assistiveTextFontStyle;
222
- }, function (props) {
223
- return props.theme.assistiveTextFontWeight;
224
- }, function (props) {
225
- return props.disabled ? props.theme.disabledAssistiveTextFontColor : props.theme.assistiveTextFontColor;
226
- }, function (props) {
227
- return props.theme.assistiveTextLetterSpacing;
190
+ return props.theme.borderRadius;
228
191
  }, function (props) {
229
- return props.theme.assistiveTextMinWidth;
230
- });
231
-
232
- var IconContainer = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (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"])), function (props) {
233
- return props.theme.iconSize;
192
+ return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : "0px";
234
193
  }, function (props) {
235
- return props.theme.iconSize;
194
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
236
195
  }, function (props) {
237
- return props.theme.iconMarginLeft;
196
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.right ? _variables.spaces[props.padding.right] : "";
238
197
  }, function (props) {
239
- return props.theme.iconMarginRigth;
198
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.bottom ? _variables.spaces[props.padding.bottom] : "";
240
199
  }, function (props) {
241
- return props.disabled ? props.theme.disabledIconColor : props.theme.iconColor;
200
+ return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
242
201
  });
243
-
244
- var AccordionIcon = _styledComponents["default"].img(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])([""])));
245
-
246
202
  var _default = DxcAccordion;
247
203
  exports["default"] = _default;
@@ -5,7 +5,7 @@ import DxcTextInput from "../text-input/TextInput";
5
5
  import DxcButton from "../button/Button";
6
6
  import Title from "../../.storybook/components/Title";
7
7
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
8
- import { ThemeProvider } from "../ThemeContext";
8
+ import { HalstackProvider } from "../HalstackContext";
9
9
 
10
10
  export default {
11
11
  title: "Accordion",
@@ -15,7 +15,7 @@ export default {
15
15
  const folderIcon = (
16
16
  <svg
17
17
  xmlns="http://www.w3.org/2000/svg"
18
- enable-background="new 0 0 24 24"
18
+ enableBackground="new 0 0 24 24"
19
19
  height="24px"
20
20
  viewBox="0 0 24 24"
21
21
  width="24px"
@@ -30,10 +30,33 @@ const folderIcon = (
30
30
  </svg>
31
31
  );
32
32
 
33
- const thumbIcon = (
34
- <svg xmlns="http://www.w3.org/2000/svg" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
35
- <path d="M0 0h24v24H0V0z" fill="none" />
36
- <path d="M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z" />
33
+ const smallIcon = (
34
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20">
35
+ <path d="m7.646 18.333-.313-2.625q-.208-.125-.458-.27-.25-.146-.458-.271l-2.438 1.021-2.354-4.063 2.083-1.583V9.458L1.625 7.875l2.354-4.063 2.438 1.021q.208-.125.458-.27.25-.146.458-.271l.313-2.625h4.708l.313 2.625q.208.125.458.271.25.145.458.27l2.438-1.021 2.354 4.063-2.063 1.583v1.084l2.063 1.583-2.354 4.063-2.438-1.021q-.208.125-.458.271-.25.145-.458.27l-.313 2.625ZM10 12.979q1.229 0 2.104-.875T12.979 10q0-1.229-.875-2.104T10 7.021q-1.229 0-2.104.875T7.021 10q0 1.229.875 2.104t2.104.875Zm0-1.75q-.5 0-.865-.364-.364-.365-.364-.865t.364-.865q.365-.364.865-.364t.865.364q.364.365.364.865t-.364.865q-.365.364-.865.364ZM10.021 10Zm-.854 6.583h1.666l.25-2.166q.605-.167 1.167-.5.562-.334 1.021-.792l2.021.854.833-1.375-1.771-1.354q.104-.292.146-.604.042-.313.042-.646 0-.292-.042-.594t-.125-.635l1.771-1.375-.834-1.375-2.02.875q-.48-.479-1.032-.802-.552-.323-1.156-.49l-.271-2.187H9.167l-.271 2.187q-.604.167-1.156.49-.552.323-1.011.781l-2.021-.854-.833 1.375 1.75 1.354q-.083.333-.125.646-.042.312-.042.604t.042.594q.042.302.125.635l-1.75 1.375.833 1.375 2.021-.854q.459.458 1.011.781.552.323 1.156.49Z" />
36
+ </svg>
37
+ );
38
+
39
+ const facebookIcon = (
40
+ <svg
41
+ version="1.1"
42
+ id="Capa_1"
43
+ x="0px"
44
+ y="0px"
45
+ width="438.536px"
46
+ height="438.536px"
47
+ viewBox="0 0 438.536 438.536"
48
+ fill="currentColor"
49
+ >
50
+ <g>
51
+ <path
52
+ d="M414.41,24.123C398.333,8.042,378.963,0,356.315,0H82.228C59.58,0,40.21,8.042,24.126,24.123
53
+ C8.045,40.207,0.003,59.576,0.003,82.225v274.084c0,22.647,8.042,42.018,24.123,58.102c16.084,16.084,35.454,24.126,58.102,24.126
54
+ h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225
55
+ C438.532,59.576,430.49,40.204,414.41,24.123z M373.155,225.548h-49.963V406.84h-74.802V225.548H210.99V163.02h37.401v-37.402
56
+ c0-26.838,6.283-47.107,18.843-60.813c12.559-13.706,33.304-20.555,62.242-20.555h49.963v62.526h-31.401
57
+ c-10.663,0-17.467,1.853-20.417,5.568c-2.949,3.711-4.428,10.23-4.428,19.558v31.119h56.534L373.155,225.548z"
58
+ />
59
+ </g>
37
60
  </svg>
38
61
  );
39
62
 
@@ -47,6 +70,14 @@ const advancedTheme = {
47
70
  },
48
71
  };
49
72
 
73
+ const opinionatedTheme = {
74
+ accordion: {
75
+ accentColor: "#5f249f",
76
+ titleFontColor: "#000000",
77
+ assistiveTextFontColor: "#666666",
78
+ },
79
+ };
80
+
50
81
  export const Chromatic = () => (
51
82
  <>
52
83
  <Title title="Component anatomy" theme="light" level={2} />
@@ -78,8 +109,30 @@ export const Chromatic = () => (
78
109
  </DxcAccordion>
79
110
  </ExampleContainer>
80
111
  <ExampleContainer>
81
- <Title title="With bigger icon 48x48" theme="light" level={4} />
82
- <DxcAccordion label="Accordion" assistiveText="Assistive text" icon={thumbIcon}>
112
+ <Title title="With smaller icon" theme="light" level={4} />
113
+ <DxcAccordion label="Accordion" assistiveText="Assistive text" icon={smallIcon}>
114
+ <div>
115
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
116
+ lobortis eget.
117
+ </div>
118
+ </DxcAccordion>
119
+ </ExampleContainer>
120
+ <ExampleContainer>
121
+ <Title title="With bigger icon (SVG)" theme="light" level={4} />
122
+ <DxcAccordion label="AccordionTest" assistiveText="Assistive text" icon={facebookIcon}>
123
+ <div>
124
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
125
+ lobortis eget.
126
+ </div>
127
+ </DxcAccordion>
128
+ </ExampleContainer>
129
+ <ExampleContainer>
130
+ <Title title="With bigger icon (image)" theme="light" level={4} />
131
+ <DxcAccordion
132
+ label="Accordion"
133
+ assistiveText="Assistive text"
134
+ icon="https://developer.apple.com/design/human-interface-guidelines/foundations/app-icons/images/icon-and-image-large-icon-settings_2x.png"
135
+ >
83
136
  <div>
84
137
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
85
138
  lobortis eget.
@@ -125,31 +178,25 @@ export const Chromatic = () => (
125
178
  </ExampleContainer>
126
179
  <ExampleContainer>
127
180
  <Title title="Background color provider over accordion content" theme="light" level={4} />
128
- <ThemeProvider advancedTheme={advancedTheme}>
181
+ <HalstackProvider advancedTheme={advancedTheme}>
129
182
  <DxcAccordion
130
183
  label="Dark Accordion"
131
- isExpanded
184
+ defaultIsExpanded
132
185
  assistiveText="Assistive text"
133
186
  icon={folderIcon}
134
187
  padding="medium"
135
188
  >
136
- <div style={{ display: "flex", flexDirection: "column" }}>
137
- <DxcTextInput
138
- label="Label"
139
- helperText="HelperText"
140
- placeholder="Placeholder"
141
- size="fillParent"
142
- margin={{ bottom: "medium" }}
143
- />
189
+ <div style={{ display: "flex", flexDirection: "column", gap: "36px" }}>
190
+ <DxcTextInput label="Label" helperText="HelperText" placeholder="Placeholder" size="fillParent" />
144
191
  <DxcButton label="Submit" size="medium" />
145
192
  </div>
146
193
  </DxcAccordion>
147
- </ThemeProvider>
194
+ </HalstackProvider>
148
195
  </ExampleContainer>
149
196
  <Title title="Paddings" theme="light" level={2} />
150
197
  <ExampleContainer>
151
198
  <Title title="Xxsmall padding" theme="light" level={4} />
152
- <DxcAccordion label="Xxsmall padding" isExpanded padding="xxsmall">
199
+ <DxcAccordion label="Xxsmall padding" defaultIsExpanded padding="xxsmall">
153
200
  <div>
154
201
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
155
202
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -162,7 +209,7 @@ export const Chromatic = () => (
162
209
  </ExampleContainer>
163
210
  <ExampleContainer>
164
211
  <Title title="Xsmall padding" theme="light" level={4} />
165
- <DxcAccordion label="Xsmall padding" isExpanded padding="xsmall">
212
+ <DxcAccordion label="Xsmall padding" defaultIsExpanded padding="xsmall">
166
213
  <div>
167
214
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
168
215
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -175,7 +222,7 @@ export const Chromatic = () => (
175
222
  </ExampleContainer>
176
223
  <ExampleContainer>
177
224
  <Title title="Small padding" theme="light" level={4} />
178
- <DxcAccordion label="Small padding" isExpanded padding="small">
225
+ <DxcAccordion label="Small padding" defaultIsExpanded padding="small">
179
226
  <div>
180
227
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
181
228
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -188,7 +235,7 @@ export const Chromatic = () => (
188
235
  </ExampleContainer>
189
236
  <ExampleContainer>
190
237
  <Title title="Medium padding" theme="light" level={4} />
191
- <DxcAccordion label="Medium padding" isExpanded padding="medium">
238
+ <DxcAccordion label="Medium padding" defaultIsExpanded padding="medium">
192
239
  <div>
193
240
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
194
241
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -201,7 +248,7 @@ export const Chromatic = () => (
201
248
  </ExampleContainer>
202
249
  <ExampleContainer>
203
250
  <Title title="Large padding" theme="light" level={4} />
204
- <DxcAccordion label="Large padding" isExpanded padding="large">
251
+ <DxcAccordion label="Large padding" defaultIsExpanded padding="large">
205
252
  <div>
206
253
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
207
254
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -214,7 +261,7 @@ export const Chromatic = () => (
214
261
  </ExampleContainer>
215
262
  <ExampleContainer>
216
263
  <Title title="Xlarge padding" theme="light" level={4} />
217
- <DxcAccordion label="Xlarge padding" isExpanded padding="xlarge">
264
+ <DxcAccordion label="Xlarge padding" defaultIsExpanded padding="xlarge">
218
265
  <div>
219
266
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
220
267
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -227,7 +274,7 @@ export const Chromatic = () => (
227
274
  </ExampleContainer>
228
275
  <ExampleContainer>
229
276
  <Title title="Xxlarge padding" theme="light" level={4} />
230
- <DxcAccordion label="Xxlarge padding" isExpanded padding="xxlarge">
277
+ <DxcAccordion label="Xxlarge padding" defaultIsExpanded padding="xxlarge">
231
278
  <div>
232
279
  <DxcHeading level={5} text="Content header" margin={{ bottom: "xxsmall" }} />
233
280
  Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
@@ -301,7 +348,48 @@ export const Chromatic = () => (
301
348
  lobortis eget.
302
349
  </div>
303
350
  </DxcAccordion>
304
- <hr />
351
+ </ExampleContainer>
352
+ <Title title="Opinionated theme" theme="light" level={2} />
353
+ <ExampleContainer>
354
+ <Title title="With assistive text and icon" theme="light" level={4} />
355
+ <HalstackProvider theme={opinionatedTheme}>
356
+ <DxcAccordion label="Accordion" assistiveText="Assistive text" icon={folderIcon}>
357
+ Content
358
+ </DxcAccordion>
359
+ </HalstackProvider>
360
+ </ExampleContainer>
361
+ <ExampleContainer pseudoState="pseudo-hover">
362
+ <Title title="Hovered" theme="light" level={4} />
363
+ <HalstackProvider theme={opinionatedTheme}>
364
+ <DxcAccordion label="Hovered">
365
+ <div>
366
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
367
+ leo lobortis eget.
368
+ </div>
369
+ </DxcAccordion>
370
+ </HalstackProvider>
371
+ </ExampleContainer>
372
+ <ExampleContainer pseudoState="pseudo-active">
373
+ <Title title="Active" theme="light" level={4} />
374
+ <HalstackProvider theme={opinionatedTheme}>
375
+ <DxcAccordion label="Active">
376
+ <div>
377
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
378
+ leo lobortis eget.
379
+ </div>
380
+ </DxcAccordion>
381
+ </HalstackProvider>
382
+ </ExampleContainer>
383
+ <ExampleContainer>
384
+ <Title title="Disabled" theme="light" level={4} />
385
+ <HalstackProvider theme={opinionatedTheme}>
386
+ <DxcAccordion label="Disabled" assistiveText="Assistive text" icon={folderIcon} disabled>
387
+ <div>
388
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
389
+ leo lobortis eget.
390
+ </div>
391
+ </DxcAccordion>
392
+ </HalstackProvider>
305
393
  </ExampleContainer>
306
394
  </>
307
395
  );