@dxc-technology/halstack-react 0.0.0-bd364ae → 0.0.0-bf1a0c9

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 (239) hide show
  1. package/BackgroundColorContext.d.ts +2 -2
  2. package/BackgroundColorContext.js +1 -1
  3. package/HalstackContext.d.ts +1329 -5
  4. package/HalstackContext.js +117 -77
  5. package/accordion/Accordion.js +118 -110
  6. package/accordion/Accordion.stories.tsx +104 -16
  7. package/accordion/Accordion.test.js +10 -11
  8. package/accordion/types.d.ts +2 -1
  9. package/accordion-group/AccordionGroup.js +4 -23
  10. package/accordion-group/AccordionGroup.stories.tsx +27 -1
  11. package/accordion-group/AccordionGroup.test.js +21 -46
  12. package/accordion-group/types.d.ts +8 -1
  13. package/alert/Alert.js +4 -6
  14. package/alert/Alert.stories.tsx +28 -0
  15. package/alert/Alert.test.js +1 -1
  16. package/bleed/Bleed.stories.tsx +64 -63
  17. package/box/Box.js +4 -6
  18. package/box/Box.stories.tsx +15 -0
  19. package/box/Box.test.js +1 -1
  20. package/box/types.d.ts +1 -0
  21. package/bulleted-list/BulletedList.d.ts +7 -0
  22. package/bulleted-list/BulletedList.js +123 -0
  23. package/bulleted-list/BulletedList.stories.tsx +200 -0
  24. package/bulleted-list/types.d.ts +11 -0
  25. package/button/Button.js +52 -73
  26. package/button/Button.stories.tsx +159 -8
  27. package/button/Button.test.js +1 -1
  28. package/button/types.d.ts +5 -5
  29. package/card/Card.js +12 -13
  30. package/card/Card.stories.tsx +12 -13
  31. package/card/Card.test.js +1 -1
  32. package/card/types.d.ts +1 -0
  33. package/checkbox/Checkbox.d.ts +2 -2
  34. package/checkbox/Checkbox.js +94 -101
  35. package/checkbox/Checkbox.stories.tsx +131 -59
  36. package/checkbox/Checkbox.test.js +94 -17
  37. package/checkbox/types.d.ts +4 -0
  38. package/chip/Chip.js +18 -26
  39. package/chip/Chip.stories.tsx +96 -9
  40. package/chip/Chip.test.js +3 -5
  41. package/chip/types.d.ts +1 -1
  42. package/common/OpenSans.css +68 -80
  43. package/common/coreTokens.d.ts +146 -0
  44. package/common/coreTokens.js +167 -0
  45. package/common/utils.d.ts +1 -0
  46. package/common/utils.js +4 -4
  47. package/common/variables.d.ts +1482 -0
  48. package/common/variables.js +1009 -1118
  49. package/date-input/Calendar.d.ts +4 -0
  50. package/date-input/Calendar.js +258 -0
  51. package/date-input/DateInput.js +134 -237
  52. package/date-input/DateInput.stories.tsx +199 -33
  53. package/date-input/DateInput.test.js +494 -138
  54. package/date-input/DatePicker.d.ts +4 -0
  55. package/date-input/DatePicker.js +146 -0
  56. package/date-input/Icons.d.ts +6 -0
  57. package/date-input/Icons.js +75 -0
  58. package/date-input/YearPicker.d.ts +4 -0
  59. package/date-input/YearPicker.js +126 -0
  60. package/date-input/types.d.ts +51 -0
  61. package/dialog/Dialog.js +80 -69
  62. package/dialog/Dialog.stories.tsx +230 -123
  63. package/dialog/Dialog.test.js +334 -5
  64. package/dialog/types.d.ts +1 -0
  65. package/dropdown/Dropdown.d.ts +1 -1
  66. package/dropdown/Dropdown.js +246 -249
  67. package/dropdown/Dropdown.stories.tsx +245 -56
  68. package/dropdown/Dropdown.test.js +507 -110
  69. package/dropdown/DropdownMenu.d.ts +4 -0
  70. package/dropdown/DropdownMenu.js +74 -0
  71. package/dropdown/DropdownMenuItem.d.ts +4 -0
  72. package/dropdown/DropdownMenuItem.js +79 -0
  73. package/dropdown/types.d.ts +23 -3
  74. package/file-input/FileInput.d.ts +2 -2
  75. package/file-input/FileInput.js +174 -220
  76. package/file-input/FileInput.stories.tsx +122 -11
  77. package/file-input/FileInput.test.js +14 -14
  78. package/file-input/FileItem.d.ts +4 -14
  79. package/file-input/FileItem.js +39 -63
  80. package/file-input/types.d.ts +17 -0
  81. package/flex/Flex.d.ts +4 -0
  82. package/flex/Flex.js +71 -0
  83. package/flex/Flex.stories.tsx +112 -0
  84. package/flex/types.d.ts +97 -0
  85. package/footer/Footer.js +6 -8
  86. package/footer/Footer.stories.tsx +99 -1
  87. package/footer/Footer.test.js +14 -26
  88. package/footer/Icons.js +1 -1
  89. package/footer/types.d.ts +2 -1
  90. package/grid/Grid.d.ts +7 -0
  91. package/grid/Grid.js +91 -0
  92. package/grid/Grid.stories.tsx +219 -0
  93. package/grid/types.d.ts +115 -0
  94. package/header/Header.d.ts +3 -2
  95. package/header/Header.js +89 -89
  96. package/header/Header.stories.tsx +152 -9
  97. package/header/Header.test.js +2 -2
  98. package/header/Icons.js +2 -2
  99. package/header/types.d.ts +1 -0
  100. package/heading/Heading.js +1 -1
  101. package/heading/Heading.test.js +1 -1
  102. package/inset/Inset.stories.tsx +5 -4
  103. package/layout/ApplicationLayout.d.ts +15 -6
  104. package/layout/ApplicationLayout.js +38 -66
  105. package/layout/ApplicationLayout.stories.tsx +80 -44
  106. package/layout/types.d.ts +18 -29
  107. package/link/Link.js +4 -4
  108. package/link/Link.stories.tsx +73 -6
  109. package/link/Link.test.js +2 -4
  110. package/link/types.d.ts +3 -3
  111. package/main.d.ts +7 -9
  112. package/main.js +33 -49
  113. package/{tabs-nav → nav-tabs}/NavTabs.js +6 -6
  114. package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +96 -6
  115. package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
  116. package/{tabs-nav → nav-tabs}/Tab.js +40 -22
  117. package/{tabs-nav → nav-tabs}/types.d.ts +1 -1
  118. package/number-input/NumberInput.test.js +44 -8
  119. package/package.json +17 -21
  120. package/paginator/Icons.d.ts +5 -0
  121. package/paginator/Icons.js +16 -28
  122. package/paginator/Paginator.js +7 -15
  123. package/paginator/Paginator.stories.tsx +24 -0
  124. package/paginator/Paginator.test.js +78 -39
  125. package/paragraph/Paragraph.d.ts +5 -0
  126. package/paragraph/Paragraph.js +38 -0
  127. package/paragraph/Paragraph.stories.tsx +44 -0
  128. package/password-input/PasswordInput.test.js +14 -13
  129. package/progress-bar/ProgressBar.js +60 -54
  130. package/progress-bar/ProgressBar.stories.jsx +38 -3
  131. package/progress-bar/ProgressBar.test.js +68 -23
  132. package/quick-nav/QuickNav.js +23 -18
  133. package/quick-nav/QuickNav.stories.tsx +145 -26
  134. package/radio-group/Radio.d.ts +1 -1
  135. package/radio-group/Radio.js +43 -28
  136. package/radio-group/RadioGroup.js +23 -22
  137. package/radio-group/RadioGroup.stories.tsx +132 -18
  138. package/radio-group/RadioGroup.test.js +124 -97
  139. package/radio-group/types.d.ts +2 -2
  140. package/resultsetTable/Icons.d.ts +7 -0
  141. package/resultsetTable/Icons.js +51 -0
  142. package/resultsetTable/ResultsetTable.js +49 -108
  143. package/resultsetTable/ResultsetTable.stories.tsx +50 -25
  144. package/resultsetTable/ResultsetTable.test.js +61 -42
  145. package/resultsetTable/types.d.ts +1 -1
  146. package/select/Listbox.d.ts +1 -1
  147. package/select/Listbox.js +33 -16
  148. package/select/Option.js +11 -24
  149. package/select/Select.js +92 -71
  150. package/select/Select.stories.tsx +513 -136
  151. package/select/Select.test.js +413 -305
  152. package/select/types.d.ts +3 -6
  153. package/sidenav/Icons.d.ts +7 -0
  154. package/sidenav/Icons.js +51 -0
  155. package/sidenav/Sidenav.d.ts +6 -5
  156. package/sidenav/Sidenav.js +147 -54
  157. package/sidenav/Sidenav.stories.tsx +251 -151
  158. package/sidenav/Sidenav.test.js +25 -37
  159. package/sidenav/types.d.ts +52 -26
  160. package/slider/Slider.d.ts +2 -2
  161. package/slider/Slider.js +121 -97
  162. package/slider/Slider.stories.tsx +64 -1
  163. package/slider/Slider.test.js +122 -22
  164. package/slider/types.d.ts +4 -0
  165. package/spinner/Spinner.js +17 -23
  166. package/spinner/Spinner.stories.jsx +53 -27
  167. package/spinner/Spinner.test.js +1 -1
  168. package/switch/Switch.d.ts +2 -2
  169. package/switch/Switch.js +137 -70
  170. package/switch/Switch.stories.tsx +41 -30
  171. package/switch/Switch.test.js +145 -18
  172. package/switch/types.d.ts +4 -0
  173. package/table/Table.js +3 -3
  174. package/table/Table.stories.jsx +80 -1
  175. package/table/Table.test.js +2 -2
  176. package/tabs/Tab.d.ts +4 -0
  177. package/tabs/Tab.js +132 -0
  178. package/tabs/Tabs.js +358 -108
  179. package/tabs/Tabs.stories.tsx +119 -5
  180. package/tabs/Tabs.test.js +220 -10
  181. package/tabs/types.d.ts +13 -3
  182. package/tag/Tag.js +8 -10
  183. package/tag/Tag.stories.tsx +14 -1
  184. package/tag/Tag.test.js +1 -1
  185. package/tag/types.d.ts +1 -1
  186. package/text-input/Icons.d.ts +8 -0
  187. package/text-input/Icons.js +60 -0
  188. package/text-input/Suggestion.js +40 -11
  189. package/text-input/Suggestions.d.ts +4 -0
  190. package/text-input/Suggestions.js +134 -0
  191. package/text-input/TextInput.js +198 -295
  192. package/text-input/TextInput.stories.tsx +280 -185
  193. package/text-input/TextInput.test.js +736 -725
  194. package/text-input/types.d.ts +22 -3
  195. package/textarea/Textarea.js +3 -4
  196. package/textarea/Textarea.stories.jsx +60 -1
  197. package/textarea/Textarea.test.js +2 -4
  198. package/toggle-group/ToggleGroup.js +7 -4
  199. package/toggle-group/ToggleGroup.stories.tsx +42 -0
  200. package/toggle-group/ToggleGroup.test.js +1 -1
  201. package/toggle-group/types.d.ts +2 -2
  202. package/typography/Typography.d.ts +4 -0
  203. package/typography/Typography.js +32 -0
  204. package/typography/Typography.stories.tsx +198 -0
  205. package/typography/types.d.ts +18 -0
  206. package/typography/types.js +5 -0
  207. package/useTheme.d.ts +1234 -1
  208. package/useTheme.js +1 -1
  209. package/useTranslatedLabels.d.ts +84 -1
  210. package/utils/BaseTypography.d.ts +21 -0
  211. package/utils/BaseTypography.js +108 -0
  212. package/utils/FocusLock.d.ts +13 -0
  213. package/utils/FocusLock.js +139 -0
  214. package/wizard/Wizard.js +10 -17
  215. package/wizard/Wizard.stories.tsx +40 -1
  216. package/wizard/Wizard.test.js +1 -1
  217. package/wizard/types.d.ts +3 -3
  218. package/common/RequiredComponent.js +0 -32
  219. package/list/List.d.ts +0 -4
  220. package/list/List.js +0 -47
  221. package/list/List.stories.tsx +0 -95
  222. package/list/types.d.ts +0 -7
  223. package/row/Row.d.ts +0 -3
  224. package/row/Row.js +0 -127
  225. package/row/Row.stories.tsx +0 -237
  226. package/row/types.d.ts +0 -28
  227. package/stack/Stack.d.ts +0 -3
  228. package/stack/Stack.js +0 -97
  229. package/stack/Stack.stories.tsx +0 -164
  230. package/stack/types.d.ts +0 -24
  231. package/text/Text.d.ts +0 -7
  232. package/text/Text.js +0 -30
  233. package/text/Text.stories.tsx +0 -19
  234. /package/{list → bulleted-list}/types.js +0 -0
  235. /package/{row → flex}/types.js +0 -0
  236. /package/{stack → grid}/types.js +0 -0
  237. /package/{tabs-nav → nav-tabs}/NavTabs.d.ts +0 -0
  238. /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
  239. /package/{tabs-nav → nav-tabs}/types.js +0 -0
@@ -6,40 +6,13 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _AccordionGroup = _interopRequireDefault(require("./AccordionGroup"));
9
+ var _AccordionGroup = _interopRequireDefault(require("./AccordionGroup.tsx"));
10
10
 
11
11
  describe("Accordion component tests", function () {
12
- test("Uncontrolled accordion group renders with children", function () {
13
- var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], null, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
14
- label: "Accordion1",
15
- padding: "medium"
16
- }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
17
- label: "Accordion2",
18
- padding: "medium"
19
- }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")))),
20
- getByText = _render.getByText,
21
- getAllByRole = _render.getAllByRole;
22
-
23
- expect(getByText("Accordion1")).toBeTruthy();
24
- expect(getByText("Accordion2")).toBeTruthy();
25
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
26
- expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
27
- });
28
- test("Uncontrolled accordion group renders with only one children", function () {
29
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], null, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
30
- label: "Accordion1",
31
- padding: "medium"
32
- }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")))),
33
- getByText = _render2.getByText,
34
- getAllByRole = _render2.getAllByRole;
35
-
36
- expect(getByText("Accordion1")).toBeTruthy();
37
- expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
38
- });
39
12
  test("Uncontrolled accordion group calls correct function on click", function () {
40
13
  var onActiveChange = jest.fn();
41
14
 
42
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
15
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
43
16
  margin: "large",
44
17
  onActiveChange: onActiveChange
45
18
  }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
@@ -50,8 +23,8 @@ describe("Accordion component tests", function () {
50
23
  label: "Accordion2",
51
24
  padding: "medium"
52
25
  }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")))),
53
- getByText = _render3.getByText,
54
- getAllByRole = _render3.getAllByRole;
26
+ getByText = _render.getByText,
27
+ getAllByRole = _render.getAllByRole;
55
28
 
56
29
  expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
57
30
  expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
@@ -62,28 +35,29 @@ describe("Accordion component tests", function () {
62
35
  expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
63
36
  expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
64
37
  });
65
- test("Uncontrolled accordion group renders initially with an accordion expanded", function () {
66
- var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
38
+ test("Uncontrolled accordion group renders initially with an accordion expanded using defaultIndexActive", function () {
39
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
67
40
  defaultIndexActive: 1
68
41
  }, /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
69
42
  label: "Accordion1",
70
43
  padding: "medium"
71
- }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
44
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "First accordion")), /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"].Accordion, {
72
45
  label: "Accordion2",
73
46
  padding: "medium"
74
- }, /*#__PURE__*/_react["default"].createElement("div", null, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo lobortis eget.")))),
75
- getByText = _render4.getByText,
76
- getAllByRole = _render4.getAllByRole;
47
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Second accordion")))),
48
+ queryByText = _render2.queryByText,
49
+ getByText = _render2.getByText,
50
+ getAllByRole = _render2.getAllByRole;
77
51
 
78
- expect(getByText("Accordion1")).toBeTruthy();
79
- expect(getByText("Accordion2")).toBeTruthy();
80
52
  expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
81
53
  expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
54
+ expect(getByText("Second accordion")).toBeTruthy();
55
+ expect(queryByText("First accordion")).toBeFalsy();
82
56
  });
83
57
  test("Controlled accordion with indexActive change", function () {
84
58
  var onActiveChange = jest.fn();
85
59
 
86
- var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
60
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
87
61
  margin: "large",
88
62
  indexActive: 1,
89
63
  onActiveChange: onActiveChange
@@ -95,11 +69,12 @@ describe("Accordion component tests", function () {
95
69
  label: "Accordion2",
96
70
  padding: "medium"
97
71
  }, /*#__PURE__*/_react["default"].createElement("div", null, "Text2")))),
98
- getByText = _render5.getByText,
99
- getAllByRole = _render5.getAllByRole,
100
- rerender = _render5.rerender;
72
+ queryByText = _render3.queryByText,
73
+ getByText = _render3.getByText,
74
+ getAllByRole = _render3.getAllByRole,
75
+ rerender = _render3.rerender;
101
76
 
102
- expect(getByText("Text1")).toBeTruthy();
77
+ expect(queryByText("Text1")).toBeFalsy();
103
78
  expect(getByText("Text2")).toBeTruthy();
104
79
 
105
80
  _react2.fireEvent.click(getByText("Accordion1"));
@@ -128,7 +103,7 @@ describe("Accordion component tests", function () {
128
103
  test("Disabled uncontrolled accordion group", function () {
129
104
  var onActiveChange = jest.fn();
130
105
 
131
- var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
106
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_AccordionGroup["default"], {
132
107
  margin: "large",
133
108
  onActiveChange: onActiveChange,
134
109
  disabled: true
@@ -140,7 +115,7 @@ describe("Accordion component tests", function () {
140
115
  label: "Accordion2",
141
116
  padding: "medium"
142
117
  }, /*#__PURE__*/_react["default"].createElement("div", null, "Text2")))),
143
- getByText = _render6.getByText;
118
+ getByText = _render4.getByText;
144
119
 
145
120
  _react2.fireEvent.click(getByText("Accordion1"));
146
121
 
@@ -12,7 +12,7 @@ declare type Padding = {
12
12
  left?: Space;
13
13
  right?: Space;
14
14
  };
15
- declare type SVG = React.SVGProps<SVGSVGElement>;
15
+ declare type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
16
16
  export declare type AccordionPropsType = {
17
17
  /**
18
18
  * The panel label.
@@ -31,6 +31,7 @@ export declare type AccordionPropsType = {
31
31
  */
32
32
  disabled?: boolean;
33
33
  /**
34
+ * @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
34
35
  * Size of the padding to be applied to the custom area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
35
36
  * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
36
37
  */
@@ -69,4 +70,10 @@ declare type Props = {
69
70
  */
70
71
  children: React.ReactElement<AccordionPropsType>[] | React.ReactElement<AccordionPropsType>;
71
72
  };
73
+ export declare type AccordionGroupAccordionContextProps = {
74
+ activeIndex: number;
75
+ handlerActiveChange: (index: number) => void;
76
+ disabled: boolean;
77
+ index: number;
78
+ };
72
79
  export default Props;
package/alert/Alert.js CHANGED
@@ -17,9 +17,9 @@ var _react = _interopRequireDefault(require("react"));
17
17
 
18
18
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
- var _variables = require("../common/variables.js");
20
+ var _variables = require("../common/variables");
21
21
 
22
- var _utils = require("../common/utils.js");
22
+ var _utils = require("../common/utils");
23
23
 
24
24
  var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
@@ -131,9 +131,7 @@ var DxcAlert = function DxcAlert(_ref) {
131
131
  size: size
132
132
  }, /*#__PURE__*/_react["default"].createElement(AlertInfo, null, /*#__PURE__*/_react["default"].createElement(AlertIcon, {
133
133
  type: type
134
- }, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, {
135
- type: type
136
- }, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
134
+ }, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, null, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
137
135
  onClick: onClose,
138
136
  tabIndex: tabIndex
139
137
  }, alertIcons.close)), children && /*#__PURE__*/_react["default"].createElement(AlertContent, null, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
@@ -146,7 +144,7 @@ var sizes = {
146
144
  medium: "480px",
147
145
  large: "820px",
148
146
  fillParent: "100%",
149
- fitContent: "auto"
147
+ fitContent: "fit-content"
150
148
  };
151
149
 
152
150
  var calculateWidth = function calculateWidth(margin, size) {
@@ -2,12 +2,21 @@ import React from "react";
2
2
  import DxcAlert from "./Alert";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { HalstackProvider } from "../HalstackContext";
5
6
 
6
7
  export default {
7
8
  title: "Alert",
8
9
  component: DxcAlert,
9
10
  };
10
11
 
12
+ const opinionatedTheme = {
13
+ alert: {
14
+ baseColor: "#e6f4ff",
15
+ accentColor: "#0067b3",
16
+ overlayColor: "#000000b3",
17
+ },
18
+ };
19
+
11
20
  export const Chromatic = () => (
12
21
  <>
13
22
  <ExampleContainer>
@@ -155,6 +164,12 @@ export const Chromatic = () => (
155
164
  </div>
156
165
  </DxcAlert>
157
166
  </ExampleContainer>
167
+ <Title title="Opinionated theme" theme="light" level={2} />
168
+ <ExampleContainer>
169
+ <HalstackProvider theme={opinionatedTheme}>
170
+ <DxcAlert inlineText="Info type alert with inline text." />
171
+ </HalstackProvider>
172
+ </ExampleContainer>
158
173
  </>
159
174
  );
160
175
 
@@ -168,3 +183,16 @@ export const ModalAlert = () => (
168
183
  </DxcAlert>
169
184
  </ExampleContainer>
170
185
  );
186
+
187
+ export const ModalAlertOpinionated = () => (
188
+ <ExampleContainer>
189
+ <HalstackProvider theme={opinionatedTheme}>
190
+ <DxcAlert inlineText="Modal alert." mode="modal" onClose={() => {}}>
191
+ <div>
192
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
193
+ lobortis eget.
194
+ </div>
195
+ </DxcAlert>
196
+ </HalstackProvider>
197
+ </ExampleContainer>
198
+ );
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
6
6
 
7
7
  var _react2 = require("@testing-library/react");
8
8
 
9
- var _Alert = _interopRequireDefault(require("./Alert"));
9
+ var _Alert = _interopRequireDefault(require("./Alert.tsx"));
10
10
 
11
11
  describe("Alert component tests", function () {
12
12
  test("Info alert renders with correct text", function () {
@@ -2,7 +2,7 @@ import React from "react";
2
2
  import styled from "styled-components";
3
3
  import Title from "../../.storybook/components/Title";
4
4
  import DxcBleed from "./Bleed";
5
- import DxcStack from "../stack/Stack";
5
+ import DxcFlex from "../flex/Flex";
6
6
 
7
7
  export default {
8
8
  title: "Bleed",
@@ -13,316 +13,316 @@ export const Chromatic = () => (
13
13
  <>
14
14
  <Title title="Space = none" theme="light" level={4} />
15
15
  <Container>
16
- <DxcStack gutter="medium">
16
+ <DxcFlex direction="column" gap="1.5rem">
17
17
  <Placeholder></Placeholder>
18
18
  <DxcBleed space="0rem">
19
19
  <Placeholder></Placeholder>
20
20
  </DxcBleed>
21
21
  <Placeholder></Placeholder>
22
- </DxcStack>
22
+ </DxcFlex>
23
23
  </Container>
24
24
  <Title title="Space = xxxsmall" theme="light" level={4} />
25
25
  <Container>
26
- <DxcStack gutter="medium">
26
+ <DxcFlex direction="column" gap="1.5rem">
27
27
  <Placeholder></Placeholder>
28
28
  <DxcBleed space="0.125rem">
29
29
  <Placeholder></Placeholder>
30
30
  </DxcBleed>
31
31
  <Placeholder></Placeholder>
32
- </DxcStack>
32
+ </DxcFlex>
33
33
  </Container>
34
34
  <Title title="Space = xxsmall" theme="light" level={4} />
35
35
  <Container>
36
- <DxcStack gutter="medium">
36
+ <DxcFlex direction="column" gap="1.5rem">
37
37
  <Placeholder></Placeholder>
38
38
  <DxcBleed space="0.25rem">
39
39
  <Placeholder></Placeholder>
40
40
  </DxcBleed>
41
41
  <Placeholder></Placeholder>
42
- </DxcStack>
42
+ </DxcFlex>
43
43
  </Container>
44
44
  <Title title="Space = xsmall" theme="light" level={4} />
45
45
  <Container>
46
- <DxcStack gutter="medium">
46
+ <DxcFlex direction="column" gap="1.5rem">
47
47
  <Placeholder></Placeholder>
48
48
  <DxcBleed space="0.5rem">
49
49
  <Placeholder></Placeholder>
50
50
  </DxcBleed>
51
51
  <Placeholder></Placeholder>
52
- </DxcStack>
52
+ </DxcFlex>
53
53
  </Container>
54
54
  <Title title="Space = small" theme="light" level={4} />
55
55
  <Container>
56
- <DxcStack gutter="medium">
56
+ <DxcFlex direction="column" gap="1.5rem">
57
57
  <Placeholder></Placeholder>
58
58
  <DxcBleed space="1rem">
59
59
  <Placeholder></Placeholder>
60
60
  </DxcBleed>
61
61
  <Placeholder></Placeholder>
62
- </DxcStack>
62
+ </DxcFlex>
63
63
  </Container>
64
64
  <Title title="Space = medium" theme="light" level={4} />
65
65
  <Container>
66
- <DxcStack gutter="medium">
66
+ <DxcFlex direction="column" gap="1.5rem">
67
67
  <Placeholder></Placeholder>
68
68
  <DxcBleed space="1.5rem">
69
69
  <Placeholder></Placeholder>
70
70
  </DxcBleed>
71
71
  <Placeholder></Placeholder>
72
- </DxcStack>
72
+ </DxcFlex>
73
73
  </Container>
74
74
  <Title title="Space = large" theme="light" level={4} />
75
75
  <Container>
76
- <DxcStack gutter="medium">
76
+ <DxcFlex direction="column" gap="1.5rem">
77
77
  <Placeholder></Placeholder>
78
78
  <DxcBleed space="2rem">
79
79
  <Placeholder></Placeholder>
80
80
  </DxcBleed>
81
81
  <Placeholder></Placeholder>
82
- </DxcStack>
82
+ </DxcFlex>
83
83
  </Container>
84
84
  <Title title="Space = xlarge" theme="light" level={4} />
85
85
  <Container>
86
- <DxcStack gutter="medium">
86
+ <DxcFlex direction="column" gap="1.5rem">
87
87
  <Placeholder></Placeholder>
88
88
  <DxcBleed space="3rem">
89
89
  <Placeholder></Placeholder>
90
90
  </DxcBleed>
91
91
  <Placeholder></Placeholder>
92
- </DxcStack>
92
+ </DxcFlex>
93
93
  </Container>
94
94
  <Title title="Space = xxlarge" theme="light" level={4} />
95
95
  <Container>
96
- <DxcStack gutter="medium">
96
+ <DxcFlex direction="column" gap="1.5rem">
97
97
  <Placeholder></Placeholder>
98
98
  <DxcBleed space="4rem">
99
99
  <Placeholder></Placeholder>
100
100
  </DxcBleed>
101
101
  <Placeholder></Placeholder>
102
- </DxcStack>
102
+ </DxcFlex>
103
103
  </Container>
104
104
  <Title title="Space = xxxlarge" theme="light" level={4} />
105
105
  <Container>
106
- <DxcStack gutter="medium">
106
+ <DxcFlex direction="column" gap="1.5rem">
107
107
  <Placeholder></Placeholder>
108
108
  <DxcBleed space="5rem">
109
109
  <Placeholder></Placeholder>
110
110
  </DxcBleed>
111
111
  <Placeholder></Placeholder>
112
- </DxcStack>
112
+ </DxcFlex>
113
113
  </Container>
114
114
 
115
115
  <Title title="Horizontal = none" theme="light" level={4} />
116
116
  <Container>
117
- <DxcStack gutter="medium">
117
+ <DxcFlex direction="column" gap="1.5rem">
118
118
  <Placeholder></Placeholder>
119
119
  <DxcBleed horizontal="0rem">
120
120
  <Placeholder></Placeholder>
121
121
  </DxcBleed>
122
122
  <Placeholder></Placeholder>
123
- </DxcStack>
123
+ </DxcFlex>
124
124
  </Container>
125
125
  <Title title="Horizontal = xxxsmall" theme="light" level={4} />
126
126
  <Container>
127
- <DxcStack gutter="medium">
127
+ <DxcFlex direction="column" gap="1.5rem">
128
128
  <Placeholder></Placeholder>
129
129
  <DxcBleed horizontal="0.125rem">
130
130
  <Placeholder></Placeholder>
131
131
  </DxcBleed>
132
132
  <Placeholder></Placeholder>
133
- </DxcStack>
133
+ </DxcFlex>
134
134
  </Container>
135
135
  <Title title="Horizontal = xxsmall" theme="light" level={4} />
136
136
  <Container>
137
- <DxcStack gutter="medium">
137
+ <DxcFlex direction="column" gap="1.5rem">
138
138
  <Placeholder></Placeholder>
139
139
  <DxcBleed horizontal="0.25rem">
140
140
  <Placeholder></Placeholder>
141
141
  </DxcBleed>
142
142
  <Placeholder></Placeholder>
143
- </DxcStack>
143
+ </DxcFlex>
144
144
  </Container>
145
145
  <Title title="Horizontal = xsmall" theme="light" level={4} />
146
146
  <Container>
147
- <DxcStack gutter="medium">
147
+ <DxcFlex direction="column" gap="1.5rem">
148
148
  <Placeholder></Placeholder>
149
149
  <DxcBleed horizontal="0.5rem">
150
150
  <Placeholder></Placeholder>
151
151
  </DxcBleed>
152
152
  <Placeholder></Placeholder>
153
- </DxcStack>
153
+ </DxcFlex>
154
154
  </Container>
155
155
  <Title title="Horizontal = small" theme="light" level={4} />
156
156
  <Container>
157
- <DxcStack gutter="medium">
157
+ <DxcFlex direction="column" gap="1.5rem">
158
158
  <Placeholder></Placeholder>
159
159
  <DxcBleed horizontal="1rem">
160
160
  <Placeholder></Placeholder>
161
161
  </DxcBleed>
162
162
  <Placeholder></Placeholder>
163
- </DxcStack>
163
+ </DxcFlex>
164
164
  </Container>
165
165
  <Title title="Horizontal = medium" theme="light" level={4} />
166
166
  <Container>
167
- <DxcStack gutter="medium">
167
+ <DxcFlex direction="column" gap="1.5rem">
168
168
  <Placeholder></Placeholder>
169
169
  <DxcBleed horizontal="1.5rem">
170
170
  <Placeholder></Placeholder>
171
171
  </DxcBleed>
172
172
  <Placeholder></Placeholder>
173
- </DxcStack>
173
+ </DxcFlex>
174
174
  </Container>
175
175
  <Title title="Horizontal = large" theme="light" level={4} />
176
176
  <Container>
177
- <DxcStack gutter="medium">
177
+ <DxcFlex direction="column" gap="1.5rem">
178
178
  <Placeholder></Placeholder>
179
179
  <DxcBleed horizontal="2rem">
180
180
  <Placeholder></Placeholder>
181
181
  </DxcBleed>
182
182
  <Placeholder></Placeholder>
183
- </DxcStack>
183
+ </DxcFlex>
184
184
  </Container>
185
185
  <Title title="Horizontal = xlarge" theme="light" level={4} />
186
186
  <Container>
187
- <DxcStack gutter="medium">
187
+ <DxcFlex direction="column" gap="1.5rem">
188
188
  <Placeholder></Placeholder>
189
189
  <DxcBleed horizontal="3rem">
190
190
  <Placeholder></Placeholder>
191
191
  </DxcBleed>
192
192
  <Placeholder></Placeholder>
193
- </DxcStack>
193
+ </DxcFlex>
194
194
  </Container>
195
195
  <Title title="Horizontal = xxlarge" theme="light" level={4} />
196
196
  <Container>
197
- <DxcStack gutter="medium">
197
+ <DxcFlex direction="column" gap="1.5rem">
198
198
  <Placeholder></Placeholder>
199
199
  <DxcBleed horizontal="4rem">
200
200
  <Placeholder></Placeholder>
201
201
  </DxcBleed>
202
202
  <Placeholder></Placeholder>
203
- </DxcStack>
203
+ </DxcFlex>
204
204
  </Container>
205
205
  <Title title="Horizontal = xxxlarge" theme="light" level={4} />
206
206
  <Container>
207
- <DxcStack gutter="medium">
207
+ <DxcFlex direction="column" gap="1.5rem">
208
208
  <Placeholder></Placeholder>
209
209
  <DxcBleed horizontal="5rem">
210
210
  <Placeholder></Placeholder>
211
211
  </DxcBleed>
212
212
  <Placeholder></Placeholder>
213
- </DxcStack>
213
+ </DxcFlex>
214
214
  </Container>
215
215
 
216
216
  <Title title="Vertical = none" theme="light" level={4} />
217
217
  <Container>
218
- <DxcStack gutter="medium">
218
+ <DxcFlex direction="column" gap="1.5rem">
219
219
  <Placeholder></Placeholder>
220
220
  <DxcBleed vertical="0rem">
221
221
  <Placeholder></Placeholder>
222
222
  </DxcBleed>
223
223
  <Placeholder></Placeholder>
224
- </DxcStack>
224
+ </DxcFlex>
225
225
  </Container>
226
226
  <Title title="Vertical = xxxsmall" theme="light" level={4} />
227
227
  <Container>
228
- <DxcStack gutter="medium">
228
+ <DxcFlex direction="column" gap="1.5rem">
229
229
  <Placeholder></Placeholder>
230
230
  <DxcBleed vertical="0.125rem">
231
231
  <Placeholder></Placeholder>
232
232
  </DxcBleed>
233
233
  <Placeholder></Placeholder>
234
- </DxcStack>
234
+ </DxcFlex>
235
235
  </Container>
236
236
  <Title title="Vertical = xxsmall" theme="light" level={4} />
237
237
  <Container>
238
- <DxcStack gutter="medium">
238
+ <DxcFlex direction="column" gap="1.5rem">
239
239
  <Placeholder></Placeholder>
240
240
  <DxcBleed vertical="0.25rem">
241
241
  <Placeholder></Placeholder>
242
242
  </DxcBleed>
243
243
  <Placeholder></Placeholder>
244
- </DxcStack>
244
+ </DxcFlex>
245
245
  </Container>
246
246
  <Title title="Vertical = xsmall" theme="light" level={4} />
247
247
  <Container>
248
- <DxcStack gutter="medium">
248
+ <DxcFlex direction="column" gap="1.5rem">
249
249
  <Placeholder></Placeholder>
250
250
  <DxcBleed vertical="0.5rem">
251
251
  <Placeholder></Placeholder>
252
252
  </DxcBleed>
253
253
  <Placeholder></Placeholder>
254
- </DxcStack>
254
+ </DxcFlex>
255
255
  </Container>
256
256
  <Title title="Vertical = small" theme="light" level={4} />
257
257
  <Container>
258
- <DxcStack gutter="medium">
258
+ <DxcFlex direction="column" gap="1.5rem">
259
259
  <Placeholder></Placeholder>
260
260
  <DxcBleed vertical="1rem">
261
261
  <Placeholder></Placeholder>
262
262
  </DxcBleed>
263
263
  <Placeholder></Placeholder>
264
- </DxcStack>
264
+ </DxcFlex>
265
265
  </Container>
266
266
  <Title title="Vertical = medium" theme="light" level={4} />
267
267
  <Container>
268
- <DxcStack gutter="medium">
268
+ <DxcFlex direction="column" gap="1.5rem">
269
269
  <Placeholder></Placeholder>
270
270
  <DxcBleed vertical="1.5rem">
271
271
  <Placeholder></Placeholder>
272
272
  </DxcBleed>
273
273
  <Placeholder></Placeholder>
274
- </DxcStack>
274
+ </DxcFlex>
275
275
  </Container>
276
276
  <Title title="Vertical = large" theme="light" level={4} />
277
277
  <Container>
278
- <DxcStack gutter="medium">
278
+ <DxcFlex direction="column" gap="1.5rem">
279
279
  <Placeholder></Placeholder>
280
280
  <DxcBleed vertical="2rem">
281
281
  <Placeholder></Placeholder>
282
282
  </DxcBleed>
283
283
  <Placeholder></Placeholder>
284
- </DxcStack>
284
+ </DxcFlex>
285
285
  </Container>
286
286
  <Title title="Vertical = xlarge" theme="light" level={4} />
287
287
  <Container>
288
- <DxcStack gutter="medium">
288
+ <DxcFlex direction="column" gap="1.5rem">
289
289
  <Placeholder></Placeholder>
290
290
  <DxcBleed vertical="3rem">
291
291
  <Placeholder></Placeholder>
292
292
  </DxcBleed>
293
293
  <Placeholder></Placeholder>
294
- </DxcStack>
294
+ </DxcFlex>
295
295
  </Container>
296
296
  <Title title="Vertical = xxlarge" theme="light" level={4} />
297
297
  <Container>
298
- <DxcStack gutter="medium">
298
+ <DxcFlex direction="column" gap="1.5rem">
299
299
  <Placeholder></Placeholder>
300
300
  <DxcBleed vertical="4rem">
301
301
  <Placeholder></Placeholder>
302
302
  </DxcBleed>
303
303
  <Placeholder></Placeholder>
304
- </DxcStack>
304
+ </DxcFlex>
305
305
  </Container>
306
306
  <Title title="Vertical = xxxlarge" theme="light" level={4} />
307
307
  <Container>
308
- <DxcStack gutter="medium">
308
+ <DxcFlex direction="column" gap="1.5rem">
309
309
  <Placeholder></Placeholder>
310
310
  <DxcBleed vertical="5rem">
311
311
  <Placeholder></Placeholder>
312
312
  </DxcBleed>
313
313
  <Placeholder></Placeholder>
314
- </DxcStack>
314
+ </DxcFlex>
315
315
  </Container>
316
316
 
317
317
  <Title title="Top = xsmall, right = small, bottom = medium and left = large" theme="light" level={4} />
318
318
  <Container>
319
- <DxcStack gutter="medium">
319
+ <DxcFlex direction="column" gap="1.5rem">
320
320
  <Placeholder></Placeholder>
321
321
  <DxcBleed top="0.5rem" right="1rem" bottom="1.5rem" left="2rem">
322
322
  <Placeholder></Placeholder>
323
323
  </DxcBleed>
324
324
  <Placeholder></Placeholder>
325
- </DxcStack>
325
+ </DxcFlex>
326
326
  </Container>
327
327
  </>
328
328
  );
@@ -337,5 +337,6 @@ const Placeholder = styled.div`
337
337
  min-height: 40px;
338
338
  min-width: 120px;
339
339
  border: 1px solid #a46ede;
340
+ border-radius: 0.5rem;
340
341
  background-color: #e5d5f6;
341
342
  `;