@dxc-technology/halstack-react 0.0.0-e345e78 → 0.0.0-e3e5511

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 (269) hide show
  1. package/BackgroundColorContext.js +46 -0
  2. package/ThemeContext.js +250 -0
  3. package/V3Select/V3Select.js +549 -0
  4. package/V3Select/index.d.ts +27 -0
  5. package/V3Textarea/V3Textarea.js +264 -0
  6. package/V3Textarea/index.d.ts +27 -0
  7. package/accordion/Accordion.js +353 -0
  8. package/accordion/index.d.ts +28 -0
  9. package/accordion-group/AccordionGroup.js +186 -0
  10. package/accordion-group/index.d.ts +16 -0
  11. package/alert/Alert.js +403 -0
  12. package/alert/index.d.ts +51 -0
  13. package/badge/Badge.js +63 -0
  14. package/{dist/box → box}/Box.js +31 -23
  15. package/box/index.d.ts +25 -0
  16. package/button/Button.js +238 -0
  17. package/button/Button.stories.js +27 -0
  18. package/button/index.d.ts +24 -0
  19. package/{dist/card → card}/Card.js +72 -35
  20. package/card/index.d.ts +22 -0
  21. package/{dist/checkbox → checkbox}/Checkbox.js +107 -32
  22. package/checkbox/index.d.ts +24 -0
  23. package/chip/Chip.js +265 -0
  24. package/chip/index.d.ts +22 -0
  25. package/{dist/common → common}/OpenSans.css +0 -0
  26. package/{dist/common → common}/RequiredComponent.js +2 -8
  27. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  28. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  29. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  30. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  31. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  32. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  33. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  34. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  35. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  36. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  37. package/common/utils.js +22 -0
  38. package/common/variables.js +1574 -0
  39. package/{dist/date → date}/Date.js +81 -59
  40. package/date/index.d.ts +27 -0
  41. package/date-input/DateInput.js +400 -0
  42. package/date-input/index.d.ts +95 -0
  43. package/{dist/dialog → dialog}/Dialog.js +61 -36
  44. package/dialog/index.d.ts +18 -0
  45. package/dropdown/Dropdown.js +544 -0
  46. package/dropdown/index.d.ts +26 -0
  47. package/file-input/FileInput.js +644 -0
  48. package/file-input/FileItem.js +287 -0
  49. package/file-input/index.d.ts +81 -0
  50. package/{dist/footer → footer}/Footer.js +122 -47
  51. package/footer/Icons.js +77 -0
  52. package/footer/index.d.ts +25 -0
  53. package/header/Header.js +470 -0
  54. package/header/Icons.js +59 -0
  55. package/header/index.d.ts +25 -0
  56. package/{dist/heading → heading}/Heading.js +93 -22
  57. package/heading/index.d.ts +17 -0
  58. package/input-text/Icons.js +22 -0
  59. package/input-text/InputText.js +705 -0
  60. package/input-text/index.d.ts +36 -0
  61. package/layout/ApplicationLayout.js +327 -0
  62. package/layout/Icons.js +55 -0
  63. package/link/Link.js +237 -0
  64. package/link/index.d.ts +23 -0
  65. package/main.d.ts +40 -0
  66. package/{dist/main.js → main.js} +112 -16
  67. package/number-input/NumberInput.js +136 -0
  68. package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +3 -2
  69. package/number-input/index.d.ts +113 -0
  70. package/package.json +31 -19
  71. package/paginator/Icons.js +66 -0
  72. package/paginator/Paginator.js +305 -0
  73. package/paginator/index.d.ts +20 -0
  74. package/password-input/PasswordInput.js +203 -0
  75. package/password-input/index.d.ts +94 -0
  76. package/{dist/progress-bar → progress-bar}/ProgressBar.js +97 -44
  77. package/progress-bar/index.d.ts +18 -0
  78. package/{dist/radio → radio}/Radio.js +39 -21
  79. package/radio/index.d.ts +23 -0
  80. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +93 -69
  81. package/resultsetTable/index.d.ts +19 -0
  82. package/select/Select.js +1137 -0
  83. package/select/index.d.ts +131 -0
  84. package/sidenav/Sidenav.js +179 -0
  85. package/sidenav/index.d.ts +13 -0
  86. package/slider/Slider.js +404 -0
  87. package/slider/index.d.ts +29 -0
  88. package/spinner/Spinner.js +381 -0
  89. package/spinner/index.d.ts +17 -0
  90. package/{dist/switch → switch}/Switch.js +52 -25
  91. package/switch/index.d.ts +24 -0
  92. package/table/Table.js +132 -0
  93. package/table/index.d.ts +13 -0
  94. package/tabs/Tabs.js +343 -0
  95. package/tabs/index.d.ts +19 -0
  96. package/{dist/tag → tag}/Tag.js +100 -35
  97. package/tag/index.d.ts +24 -0
  98. package/text-input/TextInput.js +974 -0
  99. package/text-input/index.d.ts +135 -0
  100. package/textarea/Textarea.js +369 -0
  101. package/textarea/index.d.ts +117 -0
  102. package/{dist/toggle → toggle}/Toggle.js +16 -19
  103. package/toggle/index.d.ts +21 -0
  104. package/toggle-group/ToggleGroup.js +327 -0
  105. package/toggle-group/index.d.ts +21 -0
  106. package/{dist/upload → upload}/Upload.js +13 -8
  107. package/{dist/upload → upload}/buttons-upload/ButtonsUpload.js +35 -25
  108. package/upload/buttons-upload/Icons.js +40 -0
  109. package/{dist/upload → upload}/dragAndDropArea/DragAndDropArea.js +84 -37
  110. package/upload/dragAndDropArea/Icons.js +39 -0
  111. package/upload/file-upload/FileToUpload.js +189 -0
  112. package/upload/file-upload/Icons.js +66 -0
  113. package/{dist/upload → upload}/files-upload/FilesToUpload.js +16 -16
  114. package/upload/index.d.ts +15 -0
  115. package/upload/transaction/Icons.js +160 -0
  116. package/upload/transaction/Transaction.js +148 -0
  117. package/{dist/upload → upload}/transactions/Transactions.js +38 -20
  118. package/useTheme.js +22 -0
  119. package/wizard/Icons.js +65 -0
  120. package/wizard/Wizard.js +405 -0
  121. package/wizard/index.d.ts +18 -0
  122. package/README.md +0 -66
  123. package/babel.config.js +0 -4
  124. package/dist/accordion/Accordion.js +0 -264
  125. package/dist/accordion/Accordion.stories.js +0 -207
  126. package/dist/accordion/readme.md +0 -96
  127. package/dist/alert/Alert.js +0 -302
  128. package/dist/alert/Alert.stories.js +0 -158
  129. package/dist/alert/close.svg +0 -4
  130. package/dist/alert/error.svg +0 -4
  131. package/dist/alert/info.svg +0 -4
  132. package/dist/alert/readme.md +0 -43
  133. package/dist/alert/success.svg +0 -4
  134. package/dist/alert/warning.svg +0 -4
  135. package/dist/button/Button.js +0 -183
  136. package/dist/button/Button.stories.js +0 -224
  137. package/dist/button/readme.md +0 -93
  138. package/dist/checkbox/Checkbox.stories.js +0 -144
  139. package/dist/checkbox/readme.md +0 -116
  140. package/dist/chip/Chip.js +0 -170
  141. package/dist/common/services/example-service.js +0 -10
  142. package/dist/common/services/example-service.test.js +0 -12
  143. package/dist/common/utils.js +0 -42
  144. package/dist/common/variables.js +0 -260
  145. package/dist/date/Date.stories.js +0 -205
  146. package/dist/date/calendar.svg +0 -1
  147. package/dist/date/calendar_dark.svg +0 -1
  148. package/dist/date/readme.md +0 -73
  149. package/dist/dialog/Dialog.stories.js +0 -217
  150. package/dist/dialog/readme.md +0 -32
  151. package/dist/dropdown/Dropdown.js +0 -412
  152. package/dist/dropdown/Dropdown.stories.js +0 -249
  153. package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
  154. package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
  155. package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
  156. package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
  157. package/dist/dropdown/readme.md +0 -69
  158. package/dist/footer/Footer.stories.js +0 -94
  159. package/dist/footer/dxc_logo_wht.png +0 -0
  160. package/dist/footer/readme.md +0 -41
  161. package/dist/header/Header.js +0 -350
  162. package/dist/header/Header.stories.js +0 -176
  163. package/dist/header/close_icon.svg +0 -1
  164. package/dist/header/dxc_logo_black.png +0 -0
  165. package/dist/header/dxc_logo_white.png +0 -0
  166. package/dist/header/hamb_menu_black.svg +0 -1
  167. package/dist/header/hamb_menu_white.svg +0 -1
  168. package/dist/header/readme.md +0 -33
  169. package/dist/input-text/InputText.js +0 -519
  170. package/dist/input-text/InputText.stories.js +0 -209
  171. package/dist/input-text/error.svg +0 -1
  172. package/dist/input-text/readme.md +0 -91
  173. package/dist/link/Link.js +0 -136
  174. package/dist/link/readme.md +0 -51
  175. package/dist/paginator/Paginator.js +0 -178
  176. package/dist/paginator/images/next.svg +0 -3
  177. package/dist/paginator/images/nextPage.svg +0 -3
  178. package/dist/paginator/images/previous.svg +0 -3
  179. package/dist/paginator/images/previousPage.svg +0 -3
  180. package/dist/paginator/readme.md +0 -50
  181. package/dist/progress-bar/ProgressBar.stories.js +0 -280
  182. package/dist/progress-bar/readme.md +0 -63
  183. package/dist/radio/Radio.stories.js +0 -166
  184. package/dist/radio/readme.md +0 -70
  185. package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
  186. package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
  187. package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
  188. package/dist/select/Select.js +0 -442
  189. package/dist/select/Select.stories.js +0 -235
  190. package/dist/select/readme.md +0 -72
  191. package/dist/sidenav/Sidenav.js +0 -217
  192. package/dist/sidenav/arrow_icon.svg +0 -3
  193. package/dist/slider/Slider.js +0 -258
  194. package/dist/slider/Slider.stories.js +0 -241
  195. package/dist/slider/readme.md +0 -64
  196. package/dist/spinner/Spinner.js +0 -196
  197. package/dist/spinner/Spinner.stories.js +0 -183
  198. package/dist/spinner/readme.md +0 -65
  199. package/dist/switch/Switch.stories.js +0 -134
  200. package/dist/switch/readme.md +0 -133
  201. package/dist/table/Table.js +0 -84
  202. package/dist/tabs/Tabs.js +0 -170
  203. package/dist/tabs/Tabs.stories.js +0 -130
  204. package/dist/tabs/readme.md +0 -78
  205. package/dist/tabs-for-sections/TabsForSections.js +0 -107
  206. package/dist/tabs-for-sections/readme.md +0 -78
  207. package/dist/textarea/Textarea.js +0 -226
  208. package/dist/toggle/Toggle.stories.js +0 -297
  209. package/dist/toggle/readme.md +0 -80
  210. package/dist/upload/Upload.stories.js +0 -72
  211. package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
  212. package/dist/upload/buttons-upload/upload-button.svg +0 -1
  213. package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
  214. package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
  215. package/dist/upload/file-upload/FileToUpload.js +0 -158
  216. package/dist/upload/file-upload/audio-icon.svg +0 -4
  217. package/dist/upload/file-upload/close.svg +0 -4
  218. package/dist/upload/file-upload/file-icon.svg +0 -4
  219. package/dist/upload/file-upload/video-icon.svg +0 -4
  220. package/dist/upload/readme.md +0 -37
  221. package/dist/upload/transaction/Transaction.js +0 -155
  222. package/dist/upload/transaction/audio-icon-err.svg +0 -4
  223. package/dist/upload/transaction/audio-icon.svg +0 -4
  224. package/dist/upload/transaction/error-icon.svg +0 -4
  225. package/dist/upload/transaction/file-icon-err.svg +0 -4
  226. package/dist/upload/transaction/file-icon.svg +0 -4
  227. package/dist/upload/transaction/image-icon-err.svg +0 -4
  228. package/dist/upload/transaction/image-icon.svg +0 -4
  229. package/dist/upload/transaction/success-icon.svg +0 -4
  230. package/dist/upload/transaction/video-icon-err.svg +0 -4
  231. package/dist/upload/transaction/video-icon.svg +0 -4
  232. package/dist/wizard/Wizard.js +0 -310
  233. package/dist/wizard/invalid_icon.svg +0 -6
  234. package/dist/wizard/valid_icon.svg +0 -6
  235. package/dist/wizard/validation-wrong.svg +0 -6
  236. package/test/Accordion.test.js +0 -33
  237. package/test/Alert.test.js +0 -53
  238. package/test/Box.test.js +0 -10
  239. package/test/Button.test.js +0 -18
  240. package/test/Card.test.js +0 -30
  241. package/test/Checkbox.test.js +0 -45
  242. package/test/Chip.test.js +0 -25
  243. package/test/Date.test.js +0 -393
  244. package/test/Dialog.test.js +0 -23
  245. package/test/Dropdown.test.js +0 -130
  246. package/test/Footer.test.js +0 -99
  247. package/test/Header.test.js +0 -39
  248. package/test/Heading.test.js +0 -35
  249. package/test/InputText.test.js +0 -236
  250. package/test/Link.test.js +0 -25
  251. package/test/Paginator.test.js +0 -165
  252. package/test/ProgressBar.test.js +0 -35
  253. package/test/Radio.test.js +0 -37
  254. package/test/ResultsetTable.test.js +0 -282
  255. package/test/Select.test.js +0 -191
  256. package/test/Sidenav.test.js +0 -87
  257. package/test/Slider.test.js +0 -65
  258. package/test/Spinner.test.js +0 -27
  259. package/test/Switch.test.js +0 -45
  260. package/test/Table.test.js +0 -36
  261. package/test/Tabs.test.js +0 -88
  262. package/test/TabsForSections.test.js +0 -34
  263. package/test/Tag.test.js +0 -32
  264. package/test/TextArea.test.js +0 -52
  265. package/test/Toggle.test.js +0 -43
  266. package/test/Upload.test.js +0 -60
  267. package/test/Wizard.test.js +0 -130
  268. package/test/mocks/pngMock.js +0 -1
  269. package/test/mocks/svgMock.js +0 -1
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
+
16
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
+
20
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
+
22
+ var _react = _interopRequireWildcard(require("react"));
23
+
24
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _Accordion = _interopRequireDefault(require("../accordion/Accordion"));
29
+
30
+ var _utils = require("../common/utils.js");
31
+
32
+ var _variables = require("../common/variables.js");
33
+
34
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
35
+
36
+ function _templateObject() {
37
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n width: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n cursor: ", ";\n\n & > :not(div:last-child) {\n & > div:first-child {\n border-radius: 0;\n border-bottom: ", ";\n border-color: ", ";\n\n & > .Mui-expanded {\n border-radius: 0;\n }\n\n & > .MuiButtonBase-root {\n border-radius: 0;\n }\n }\n }\n\n & > div:first-child {\n & > div:first-child {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: ", ";\n border-top-right-radius: ", ";\n border-bottom: ", ";\n border-color: ", ";\n\n & > .Mui-expanded {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: ", ";\n border-top-right-radius: ", ";\n }\n\n & > .MuiButtonBase-root {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: ", ";\n border-top-right-radius: ", ";\n }\n }\n }\n\n & > div:last-child {\n & > div:first-child {\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n\n & > .Mui-expanded {\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n & > .MuiButtonBase-root {\n border-bottom-left-radius: ", ";\n border-bottom-right-radius: ", ";\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n }\n }\n"]);
38
+
39
+ _templateObject = function _templateObject() {
40
+ return data;
41
+ };
42
+
43
+ return data;
44
+ }
45
+
46
+ var Accordion = function Accordion(_ref) {
47
+ var margin = _ref.margin,
48
+ childProps = (0, _objectWithoutProperties2["default"])(_ref, ["margin"]);
49
+ return _react["default"].createElement(_Accordion["default"], childProps, childProps.children);
50
+ };
51
+
52
+ var DxcAccordionGroup = function DxcAccordionGroup(_ref2) {
53
+ var _ref2$disabled = _ref2.disabled,
54
+ disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
55
+ onActiveChange = _ref2.onActiveChange,
56
+ _ref2$indexActive = _ref2.indexActive,
57
+ indexActive = _ref2$indexActive === void 0 ? undefined : _ref2$indexActive,
58
+ margin = _ref2.margin,
59
+ _ref2$children = _ref2.children,
60
+ children = _ref2$children === void 0 ? [] : _ref2$children;
61
+ var colorsTheme = (0, _useTheme["default"])();
62
+
63
+ var _React$useState = _react["default"].useState(indexActive),
64
+ _React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
65
+ innerIsExpanded = _React$useState2[0],
66
+ setInnerIsExpanded = _React$useState2[1];
67
+
68
+ var handlerActiveChange = function handlerActiveChange(index) {
69
+ if (indexActive === undefined) {
70
+ setInnerIsExpanded(index === innerIsExpanded ? -1 : index);
71
+ } else {
72
+ setInnerIsExpanded(indexActive);
73
+ }
74
+
75
+ if (typeof onActiveChange === "function" && !disabled) {
76
+ onActiveChange(index);
77
+ }
78
+ };
79
+
80
+ (0, _react.useEffect)(function () {
81
+ setInnerIsExpanded(indexActive);
82
+ }, [indexActive]);
83
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
84
+ theme: colorsTheme.accordion
85
+ }, _react["default"].createElement(AccordionGroupContainer, {
86
+ margin: margin,
87
+ disabled: disabled
88
+ }, (Array.isArray(children) ? children : [children]).filter(function (el) {
89
+ return el.type === Accordion;
90
+ }).map(function (el, index) {
91
+ return _react["default"].cloneElement(el, {
92
+ onChange: function onChange() {
93
+ handlerActiveChange(index);
94
+ },
95
+ isExpanded: index === innerIsExpanded,
96
+ disabled: disabled || el.props.disabled
97
+ });
98
+ })));
99
+ };
100
+
101
+ var calculateWidth = function calculateWidth(margin) {
102
+ return "calc(100% - ".concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")");
103
+ };
104
+
105
+ var AccordionGroupContainer = _styledComponents["default"].div(_templateObject(), function (props) {
106
+ return calculateWidth(props.margin);
107
+ }, function (_ref3) {
108
+ var margin = _ref3.margin;
109
+ return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
110
+ }, function (_ref4) {
111
+ var margin = _ref4.margin;
112
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.top ? _variables.spaces[margin.top] : "";
113
+ }, function (_ref5) {
114
+ var margin = _ref5.margin;
115
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.right ? _variables.spaces[margin.right] : "";
116
+ }, function (_ref6) {
117
+ var margin = _ref6.margin;
118
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.bottom ? _variables.spaces[margin.bottom] : "";
119
+ }, function (_ref7) {
120
+ var margin = _ref7.margin;
121
+ return margin && (0, _typeof2["default"])(margin) === "object" && margin.left ? _variables.spaces[margin.left] : "";
122
+ }, function (props) {
123
+ return props.disabled && "not-allowed" || "pointer";
124
+ }, function (props) {
125
+ return "".concat(props.theme.accordionGroupSeparatorBorderThickness, " ").concat(props.theme.accordionGroupSeparatorBorderStyle);
126
+ }, function (props) {
127
+ return props.theme.accordionGroupSeparatorBorderColor;
128
+ }, function (props) {
129
+ return props.theme.borderRadius;
130
+ }, function (props) {
131
+ return props.theme.borderRadius;
132
+ }, function (props) {
133
+ return "".concat(props.theme.accordionGroupSeparatorBorderThickness, " ").concat(props.theme.accordionGroupSeparatorBorderStyle);
134
+ }, function (props) {
135
+ return props.theme.accordionGroupSeparatorBorderColor;
136
+ }, function (props) {
137
+ return props.theme.borderRadius;
138
+ }, function (props) {
139
+ return props.theme.borderRadius;
140
+ }, function (props) {
141
+ return props.theme.borderRadius;
142
+ }, function (props) {
143
+ return props.theme.borderRadius;
144
+ }, function (props) {
145
+ return props.theme.borderRadius;
146
+ }, function (props) {
147
+ return props.theme.borderRadius;
148
+ }, function (props) {
149
+ return props.theme.borderRadius;
150
+ }, function (props) {
151
+ return props.theme.borderRadius;
152
+ }, function (props) {
153
+ return props.theme.borderRadius;
154
+ }, function (props) {
155
+ return props.theme.borderRadius;
156
+ });
157
+
158
+ DxcAccordionGroup.propTypes = {
159
+ disabled: _propTypes["default"].bool,
160
+ onActiveChange: _propTypes["default"].func,
161
+ indexActive: _propTypes["default"].number,
162
+ children: _propTypes["default"].arrayOf(_propTypes["default"].shape({
163
+ label: _propTypes["default"].string,
164
+ icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
165
+ iconSrc: _propTypes["default"].string,
166
+ iconPosition: _propTypes["default"].oneOf(["before", "after"]),
167
+ assistiveText: _propTypes["default"].string,
168
+ disabled: _propTypes["default"].bool,
169
+ children: _propTypes["default"].element,
170
+ padding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
171
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
172
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
173
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
174
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
175
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
176
+ })),
177
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
178
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
179
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
180
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
181
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
182
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
183
+ };
184
+ DxcAccordionGroup.Accordion = Accordion;
185
+ var _default = DxcAccordionGroup;
186
+ exports["default"] = _default;
@@ -0,0 +1,16 @@
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
+
9
+ type Props = {
10
+ disabled?: boolean;
11
+ onActiveChange?: void;
12
+ indexActive?: number;
13
+ margin?: Space | Margin;
14
+ };
15
+
16
+ export default function DxcAccordionGroup(props: Props): JSX.Element;
package/alert/Alert.js ADDED
@@ -0,0 +1,403 @@
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 _react = _interopRequireDefault(require("react"));
19
+
20
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
21
+
22
+ var _propTypes = _interopRequireDefault(require("prop-types"));
23
+
24
+ var _variables = require("../common/variables.js");
25
+
26
+ var _utils = require("../common/utils.js");
27
+
28
+ var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
+
30
+ var _BackgroundColorContext = require("../BackgroundColorContext.js");
31
+
32
+ function _templateObject10() {
33
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n border: 1px solid transparent;\n border-radius: 2px;\n box-shadow: 0 0 0 2px transparent;\n padding: 3px;\n margin-left: 12px;\n background-color: transparent;\n color: #000000;\n cursor: pointer;\n\n &:hover {\n background-color: ", ";\n }\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:active {\n background-color: ", ";\n }\n"]);
34
+
35
+ _templateObject10 = function _templateObject10() {
36
+ return data;
37
+ };
38
+
39
+ return data;
40
+ }
41
+
42
+ function _templateObject9() {
43
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n flex: 1 1 auto;\n padding: ", ";\n overflow-y: auto;\n"]);
44
+
45
+ _templateObject9 = function _templateObject9() {
46
+ return data;
47
+ };
48
+
49
+ return data;
50
+ }
51
+
52
+ function _templateObject8() {
53
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n flex-grow: 1;\n align-items: center;\n overflow: hidden;\n"]);
54
+
55
+ _templateObject8 = function _templateObject8() {
56
+ return data;
57
+ };
58
+
59
+ return data;
60
+ }
61
+
62
+ function _templateObject7() {
63
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n margin-right: 12px;\n padding-right: ", ";\n padding-left: ", ";\n\n color: ", ";\n\n svg {\n width: ", ";\n height: ", ";\n }\n"]);
64
+
65
+ _templateObject7 = function _templateObject7() {
66
+ return data;
67
+ };
68
+
69
+ return data;
70
+ }
71
+
72
+ function _templateObject6() {
73
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 8px;\n padding-right: ", ";\n padding-left: ", ";\n flex-grow: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n"]);
74
+
75
+ _templateObject6 = function _templateObject6() {
76
+ return data;
77
+ };
78
+
79
+ return data;
80
+ }
81
+
82
+ function _templateObject5() {
83
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin-right: 8px;\n padding-right: ", ";\n padding-left: ", ";\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n text-transform: ", ";\n"]);
84
+
85
+ _templateObject5 = function _templateObject5() {
86
+ return data;
87
+ };
88
+
89
+ return data;
90
+ }
91
+
92
+ function _templateObject4() {
93
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: row;\n height: calc(48px - calc(", " * 2));\n align-items: center;\n width: 100%;\n"]);
94
+
95
+ _templateObject4 = function _templateObject4() {
96
+ return data;
97
+ };
98
+
99
+ return data;
100
+ }
101
+
102
+ function _templateObject3() {
103
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: ", ";\n overflow: hidden;\n box-sizing: border-box;\n\n background-color: ", ";\n\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n\n padding-left: 12px;\n padding-right: 12px;\n justify-content: ", ";\n align-items: ", ";\n max-width: ", ";\n width: ", ";\n z-index: ", ";\n"]);
104
+
105
+ _templateObject3 = function _templateObject3() {
106
+ return data;
107
+ };
108
+
109
+ return data;
110
+ }
111
+
112
+ function _templateObject2() {
113
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n position: ", ";\n top: ", ";\n bottom: ", ";\n left: ", ";\n right: ", ";\n"]);
114
+
115
+ _templateObject2 = function _templateObject2() {
116
+ return data;
117
+ };
118
+
119
+ return data;
120
+ }
121
+
122
+ function _templateObject() {
123
+ var data = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", ";\n width: ", ";\n height: ", ";\n justify-content: ", ";\n align-items: ", ";\n top: ", ";\n left: ", ";\n position: ", ";\n display: ", ";\n z-index: ", ";\n"]);
124
+
125
+ _templateObject = function _templateObject() {
126
+ return data;
127
+ };
128
+
129
+ return data;
130
+ }
131
+
132
+ var alertIcons = {
133
+ close: _react["default"].createElement("svg", {
134
+ xmlns: "http://www.w3.org/2000/svg",
135
+ width: "20",
136
+ height: "20",
137
+ viewBox: "0 0 24 24",
138
+ fill: "currentColor"
139
+ }, _react["default"].createElement("path", {
140
+ d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
141
+ }), _react["default"].createElement("path", {
142
+ d: "M0 0h24v24H0z",
143
+ fill: "none"
144
+ })),
145
+ info: _react["default"].createElement("svg", {
146
+ xmlns: "http://www.w3.org/2000/svg",
147
+ width: "23",
148
+ height: "23",
149
+ viewBox: "0 0 24 24",
150
+ fill: "currentColor"
151
+ }, _react["default"].createElement("path", {
152
+ d: "M0 0h24v24H0z",
153
+ fill: "none"
154
+ }), _react["default"].createElement("path", {
155
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"
156
+ })),
157
+ success: _react["default"].createElement("svg", {
158
+ xmlns: "http://www.w3.org/2000/svg",
159
+ width: "23",
160
+ height: "23",
161
+ viewBox: "0 0 24 24",
162
+ fill: "currentColor"
163
+ }, _react["default"].createElement("path", {
164
+ d: "M0 0h24v24H0z",
165
+ fill: "none"
166
+ }), _react["default"].createElement("path", {
167
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"
168
+ })),
169
+ warning: _react["default"].createElement("svg", {
170
+ xmlns: "http://www.w3.org/2000/svg",
171
+ width: "23",
172
+ height: "23",
173
+ viewBox: "0 0 24 24",
174
+ fill: "currentColor"
175
+ }, _react["default"].createElement("path", {
176
+ d: "M0 0h24v24H0z",
177
+ fill: "none"
178
+ }), _react["default"].createElement("path", {
179
+ d: "M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"
180
+ })),
181
+ error: _react["default"].createElement("svg", {
182
+ xmlns: "http://www.w3.org/2000/svg",
183
+ width: "23",
184
+ height: "23",
185
+ viewBox: "0 0 24 24",
186
+ fill: "currentColor"
187
+ }, _react["default"].createElement("path", {
188
+ d: "M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z",
189
+ fill: "currentColor"
190
+ }), _react["default"].createElement("path", {
191
+ d: "M0 0h24v24H0z",
192
+ fill: "none"
193
+ }))
194
+ };
195
+
196
+ var DxcAlert = function DxcAlert(_ref) {
197
+ var _ref$type = _ref.type,
198
+ type = _ref$type === void 0 ? "info" : _ref$type,
199
+ _ref$mode = _ref.mode,
200
+ mode = _ref$mode === void 0 ? "inline" : _ref$mode,
201
+ _ref$inlineText = _ref.inlineText,
202
+ inlineText = _ref$inlineText === void 0 ? "" : _ref$inlineText,
203
+ onClose = _ref.onClose,
204
+ children = _ref.children,
205
+ margin = _ref.margin,
206
+ _ref$size = _ref.size,
207
+ size = _ref$size === void 0 ? "fitContent" : _ref$size,
208
+ tabIndex = _ref.tabIndex;
209
+ var colorsTheme = (0, _useTheme["default"])();
210
+
211
+ var getTypeText = function getTypeText() {
212
+ return type === "info" ? "information" : type === "confirm" ? "success" : type === "warning" ? "warning" : "error";
213
+ };
214
+
215
+ return _react["default"].createElement(_styledComponents.ThemeProvider, {
216
+ theme: colorsTheme.alert
217
+ }, _react["default"].createElement(AlertModal, {
218
+ mode: mode
219
+ }, mode === "modal" && _react["default"].createElement(OverlayContainer, {
220
+ mode: mode,
221
+ onClick: onClose
222
+ }), _react["default"].createElement(AlertContainer, {
223
+ mode: mode,
224
+ type: type,
225
+ margin: margin,
226
+ size: size
227
+ }, _react["default"].createElement(AlertInfo, null, _react["default"].createElement(AlertIcon, {
228
+ type: type
229
+ }, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), _react["default"].createElement(AlertText, null, _react["default"].createElement(AlertTitle, {
230
+ type: type
231
+ }, getTypeText(type)), inlineText && inlineText !== "" && "-", _react["default"].createElement(AlertInlineText, null, inlineText)), onClose && _react["default"].createElement(AlertCloseAction, {
232
+ onClick: onClose,
233
+ tabIndex: tabIndex
234
+ }, alertIcons.close)), children && _react["default"].createElement(AlertContent, null, _react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
235
+ color: type === "info" && colorsTheme.alert.infoBackgroundColor || type === "confirm" && colorsTheme.alert.successBackgroundColor || type === "warning" && colorsTheme.alert.warningBackgroundColor || type === "error" && colorsTheme.alert.errorBackgroundColor
236
+ }, children)))));
237
+ };
238
+
239
+ var sizes = {
240
+ small: "280px",
241
+ medium: "480px",
242
+ large: "820px",
243
+ fillParent: "100%",
244
+ fitContent: "auto"
245
+ };
246
+
247
+ var calculateWidth = function calculateWidth(margin, size) {
248
+ return size === "fillParent" ? "calc(".concat(sizes[size], " - ").concat((0, _utils.getMargin)(margin, "left"), " - ").concat((0, _utils.getMargin)(margin, "right"), ")") : sizes[size];
249
+ };
250
+
251
+ var AlertModal = _styledComponents["default"].div(_templateObject(), function (props) {
252
+ return props.theme.fontSizeBase;
253
+ }, function (props) {
254
+ return props.mode === "modal" ? "100%" : "";
255
+ }, function (props) {
256
+ return props.mode === "modal" ? "100%" : "";
257
+ }, function (props) {
258
+ return props.mode === "modal" ? "center" : "";
259
+ }, function (props) {
260
+ return props.mode === "modal" ? "center" : "";
261
+ }, function (props) {
262
+ return props.mode === "modal" ? "0" : "";
263
+ }, function (props) {
264
+ return props.mode === "modal" ? "0" : "";
265
+ }, function (props) {
266
+ return props.mode === "modal" ? "fixed" : "";
267
+ }, function (props) {
268
+ return props.mode === "modal" ? "flex" : "";
269
+ }, function (props) {
270
+ return props.mode === "modal" ? "1200" : "";
271
+ });
272
+
273
+ var OverlayContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
274
+ return props.mode === "modal" ? "".concat(props.theme.overlayColor) : "transparent";
275
+ }, function (props) {
276
+ return props.mode === "modal" ? "fixed" : "";
277
+ }, function (props) {
278
+ return props.mode === "modal" ? "0" : "";
279
+ }, function (props) {
280
+ return props.mode === "modal" ? "0" : "";
281
+ }, function (props) {
282
+ return props.mode === "modal" ? "0" : "";
283
+ }, function (props) {
284
+ return props.mode === "modal" ? "0" : "";
285
+ });
286
+
287
+ var AlertContainer = _styledComponents["default"].div(_templateObject3(), function (props) {
288
+ return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
289
+ }, function (props) {
290
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
291
+ }, function (props) {
292
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
293
+ }, function (props) {
294
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
295
+ }, function (props) {
296
+ return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
297
+ }, function (props) {
298
+ return props.size === "fitContent" ? "inline-block" : "block";
299
+ }, function (props) {
300
+ return props.type === "info" && props.theme.infoBackgroundColor || props.type === "confirm" && props.theme.successBackgroundColor || props.type === "warning" && props.theme.warningBackgroundColor || props.type === "error" && props.theme.errorBackgroundColor;
301
+ }, function (props) {
302
+ return props.theme.borderRadius;
303
+ }, function (props) {
304
+ return props.theme.borderThickness;
305
+ }, function (props) {
306
+ return props.theme.borderStyle;
307
+ }, function (props) {
308
+ return props.type === "info" && props.theme.infoBorderColor || props.type === "confirm" && props.theme.successBorderColor || props.type === "warning" && props.theme.warningBorderColor || props.type === "error" && props.theme.errorBorderColor;
309
+ }, function (props) {
310
+ return props.mode === "modal" ? "center" : "";
311
+ }, function (props) {
312
+ return props.mode === "modal" ? "center" : "";
313
+ }, function (props) {
314
+ return props.size !== "fillParent" && calculateWidth(props.margin, "fillParent");
315
+ }, function (props) {
316
+ return props.size !== "fillParent" && calculateWidth(props.margin, props.size);
317
+ }, function (props) {
318
+ return props.mode === "modal" ? "1300" : "";
319
+ });
320
+
321
+ var AlertInfo = _styledComponents["default"].div(_templateObject4(), function (props) {
322
+ return props.theme.borderThickness;
323
+ });
324
+
325
+ var AlertTitle = _styledComponents["default"].div(_templateObject5(), function (props) {
326
+ return props.theme.titlePaddingRight;
327
+ }, function (props) {
328
+ return props.theme.titlePaddingLeft;
329
+ }, function (props) {
330
+ return props.theme.titleFontFamily;
331
+ }, function (props) {
332
+ return props.theme.titleFontSize;
333
+ }, function (props) {
334
+ return props.theme.titleFontStyle;
335
+ }, function (props) {
336
+ return props.theme.titleFontWeight;
337
+ }, function (props) {
338
+ return props.theme.titleFontColor;
339
+ }, function (props) {
340
+ return props.theme.titleTextTransform;
341
+ });
342
+
343
+ var AlertInlineText = _styledComponents["default"].div(_templateObject6(), function (props) {
344
+ return props.theme.inlineTextPaddingRight;
345
+ }, function (props) {
346
+ return props.theme.inlineTextPaddingLeft;
347
+ }, function (props) {
348
+ return props.theme.inlineTextFontFamily;
349
+ }, function (props) {
350
+ return props.theme.inlineTextFontSize;
351
+ }, function (props) {
352
+ return props.theme.inlineTextFontStyle;
353
+ }, function (props) {
354
+ return props.theme.inlineTextFontWeight;
355
+ }, function (props) {
356
+ return props.theme.inlineTextFontColor;
357
+ });
358
+
359
+ var AlertIcon = _styledComponents["default"].span(_templateObject7(), function (props) {
360
+ return props.theme.iconPaddingRight;
361
+ }, function (props) {
362
+ return props.theme.iconPaddingLeft;
363
+ }, function (props) {
364
+ return props.type === "info" && props.theme.infoIconColor || props.type === "confirm" && props.theme.successIconColor || props.type === "warning" && props.theme.warningIconColor || props.type === "error" && props.theme.errorIconColor;
365
+ }, function (props) {
366
+ return props.theme.iconSize;
367
+ }, function (props) {
368
+ return props.theme.iconSize;
369
+ });
370
+
371
+ var AlertText = _styledComponents["default"].div(_templateObject8());
372
+
373
+ var AlertContent = _styledComponents["default"].div(_templateObject9(), function (props) {
374
+ return "".concat(props.theme.contentPaddingTop, " ").concat(props.theme.contentPaddingRight, " ").concat(props.theme.contentPaddingBottom, " ").concat(props.theme.contentPaddingLeft);
375
+ });
376
+
377
+ var AlertCloseAction = _styledComponents["default"].button(_templateObject10(), function (props) {
378
+ return props.theme.hoverActionBackgroundColor;
379
+ }, function (props) {
380
+ return props.theme.focusActionBorderColor;
381
+ }, function (props) {
382
+ return props.theme.focusActionBorderColor;
383
+ }, function (props) {
384
+ return props.theme.activeActionBackgroundColor;
385
+ });
386
+
387
+ DxcAlert.propTypes = {
388
+ margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
389
+ top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
390
+ bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
391
+ left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
392
+ right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
393
+ }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
394
+ type: _propTypes["default"].oneOf(["info", "confirm", "warning", "error"]),
395
+ mode: _propTypes["default"].oneOf(["inline", "modal"]),
396
+ inlineText: _propTypes["default"].string,
397
+ onClose: _propTypes["default"].func,
398
+ children: _propTypes["default"].element,
399
+ size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
400
+ tabIndex: _propTypes["default"].number
401
+ };
402
+ var _default = DxcAlert;
403
+ exports["default"] = _default;
@@ -0,0 +1,51 @@
1
+ type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
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
+ /**
12
+ * Uses on of the available alert types.
13
+ */
14
+ type?: "info" | "confirm" | "warning" | "error";
15
+ /**
16
+ * Uses on of the available alert modes:
17
+ * 'inline': If onClose function is received, close button will be visible and the function will be executed when it's clicked.
18
+ * There is no overlay layer. Position should be decided by the user.
19
+ * 'modal': The alert will be displayed in the middle of the screen with an overlay layer behind.
20
+ * The onClose function will be executed when the X button or the overlay is clicked. d
21
+ * The user has the responsibility of hidding the modal in the onClose function, otherwise the modal will remain visible.
22
+ */
23
+ mode?: "inline" | "modal";
24
+ /**
25
+ * Text to display after icon and alert type and before content.
26
+ */
27
+ inlineText?: string;
28
+ /**
29
+ * This function will be called when the user clicks the close button. If there is no function we should close the alert by default.
30
+ */
31
+ onClose?: () => void;
32
+ /**
33
+ * The details section of the alert. Can be used to render custom content in this area.
34
+ */
35
+ children?: React.ReactNode;
36
+ /**
37
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
38
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
39
+ */
40
+ margin?: Space | Margin;
41
+ /**
42
+ * Size of the component ('small' | 'medium' | 'large' | 'fillParent' | 'fitContent').
43
+ */
44
+ size?: Size;
45
+ /**
46
+ * Tabindex value given to the close button.
47
+ */
48
+ tabIndex?: number;
49
+ };
50
+
51
+ export default function Alert(props: Props): JSX.Element;