@dxc-technology/halstack-react 0.0.0-da90bf9 → 0.0.0-dcd93c4

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 (359) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +7 -6
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +35 -162
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +68 -85
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +43 -153
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +15 -17
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +36 -76
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/button/Button.js +33 -97
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +44 -137
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/checkbox/Checkbox.js +52 -94
  53. package/checkbox/Checkbox.stories.tsx +188 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +26 -130
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/common/RequiredComponent.js +3 -11
  64. package/common/variables.js +291 -387
  65. package/date-input/DateInput.d.ts +4 -0
  66. package/date-input/DateInput.js +80 -108
  67. package/date-input/DateInput.stories.tsx +138 -0
  68. package/date-input/DateInput.test.js +479 -0
  69. package/date-input/types.d.ts +107 -0
  70. package/date-input/types.js +5 -0
  71. package/dialog/Dialog.d.ts +4 -0
  72. package/dialog/Dialog.js +25 -105
  73. package/dialog/Dialog.stories.tsx +212 -0
  74. package/dialog/Dialog.test.js +40 -0
  75. package/dialog/types.d.ts +43 -0
  76. package/dialog/types.js +5 -0
  77. package/dropdown/Dropdown.d.ts +4 -0
  78. package/dropdown/Dropdown.js +54 -207
  79. package/dropdown/Dropdown.stories.tsx +249 -0
  80. package/dropdown/Dropdown.test.js +189 -0
  81. package/dropdown/types.d.ts +80 -0
  82. package/dropdown/types.js +5 -0
  83. package/file-input/FileInput.d.ts +4 -0
  84. package/file-input/FileInput.js +200 -251
  85. package/file-input/FileInput.stories.tsx +507 -0
  86. package/file-input/FileInput.test.js +457 -0
  87. package/file-input/FileItem.d.ts +14 -0
  88. package/file-input/FileItem.js +44 -145
  89. package/file-input/types.d.ts +112 -0
  90. package/file-input/types.js +5 -0
  91. package/footer/Footer.d.ts +4 -0
  92. package/footer/Footer.js +50 -286
  93. package/footer/Footer.stories.tsx +130 -0
  94. package/footer/Footer.test.js +109 -0
  95. package/footer/Icons.d.ts +2 -0
  96. package/footer/Icons.js +16 -16
  97. package/footer/types.d.ts +65 -0
  98. package/footer/types.js +5 -0
  99. package/header/Header.d.ts +7 -0
  100. package/header/Header.js +82 -249
  101. package/header/Header.stories.tsx +172 -0
  102. package/header/Header.test.js +79 -0
  103. package/header/Icons.d.ts +2 -0
  104. package/header/Icons.js +7 -32
  105. package/header/types.d.ts +47 -0
  106. package/header/types.js +5 -0
  107. package/heading/Heading.d.ts +4 -0
  108. package/heading/Heading.js +25 -96
  109. package/heading/Heading.stories.tsx +54 -0
  110. package/heading/Heading.test.js +186 -0
  111. package/heading/types.d.ts +33 -0
  112. package/heading/types.js +5 -0
  113. package/inline/Inline.d.ts +4 -0
  114. package/inline/Inline.js +60 -0
  115. package/inline/Inline.stories.tsx +319 -0
  116. package/inline/types.d.ts +36 -0
  117. package/inline/types.js +5 -0
  118. package/inset/Inset.d.ts +3 -0
  119. package/inset/Inset.js +51 -0
  120. package/inset/Inset.stories.tsx +229 -0
  121. package/inset/types.d.ts +37 -0
  122. package/inset/types.js +5 -0
  123. package/layout/ApplicationLayout.d.ts +11 -0
  124. package/layout/ApplicationLayout.js +90 -218
  125. package/layout/ApplicationLayout.stories.tsx +126 -0
  126. package/layout/Icons.d.ts +5 -0
  127. package/layout/Icons.js +19 -8
  128. package/layout/SidenavContext.d.ts +5 -0
  129. package/layout/SidenavContext.js +19 -0
  130. package/layout/types.d.ts +52 -0
  131. package/layout/types.js +5 -0
  132. package/link/Link.d.ts +4 -0
  133. package/link/Link.js +64 -165
  134. package/link/Link.stories.tsx +186 -0
  135. package/link/Link.test.js +83 -0
  136. package/link/types.d.ts +54 -0
  137. package/link/types.js +5 -0
  138. package/list/List.d.ts +4 -0
  139. package/list/List.js +47 -0
  140. package/list/List.stories.tsx +89 -0
  141. package/list/types.d.ts +7 -0
  142. package/list/types.js +5 -0
  143. package/main.d.ts +48 -40
  144. package/main.js +138 -96
  145. package/number-input/NumberInput.d.ts +4 -0
  146. package/number-input/NumberInput.js +21 -81
  147. package/number-input/NumberInput.stories.tsx +115 -0
  148. package/number-input/NumberInput.test.js +506 -0
  149. package/number-input/NumberInputContext.d.ts +4 -0
  150. package/number-input/NumberInputContext.js +5 -2
  151. package/number-input/numberInputContextTypes.d.ts +19 -0
  152. package/number-input/numberInputContextTypes.js +5 -0
  153. package/number-input/types.d.ts +124 -0
  154. package/number-input/types.js +5 -0
  155. package/package.json +23 -16
  156. package/paginator/Icons.js +9 -9
  157. package/paginator/Paginator.d.ts +4 -0
  158. package/paginator/Paginator.js +32 -166
  159. package/paginator/Paginator.stories.tsx +63 -0
  160. package/paginator/Paginator.test.js +308 -0
  161. package/paginator/types.d.ts +38 -0
  162. package/paginator/types.js +5 -0
  163. package/password-input/PasswordInput.d.ts +4 -0
  164. package/password-input/PasswordInput.js +40 -77
  165. package/password-input/PasswordInput.stories.tsx +131 -0
  166. package/password-input/PasswordInput.test.js +180 -0
  167. package/password-input/types.d.ts +110 -0
  168. package/password-input/types.js +5 -0
  169. package/progress-bar/ProgressBar.d.ts +4 -0
  170. package/progress-bar/ProgressBar.js +23 -95
  171. package/progress-bar/ProgressBar.stories.jsx +58 -0
  172. package/progress-bar/ProgressBar.test.js +65 -0
  173. package/progress-bar/types.d.ts +37 -0
  174. package/progress-bar/types.js +5 -0
  175. package/quick-nav/QuickNav.d.ts +4 -0
  176. package/quick-nav/QuickNav.js +116 -0
  177. package/quick-nav/QuickNav.stories.tsx +237 -0
  178. package/quick-nav/types.d.ts +21 -0
  179. package/quick-nav/types.js +5 -0
  180. package/radio-group/Radio.d.ts +4 -0
  181. package/radio-group/Radio.js +141 -0
  182. package/radio-group/RadioGroup.d.ts +4 -0
  183. package/radio-group/RadioGroup.js +283 -0
  184. package/radio-group/RadioGroup.stories.tsx +100 -0
  185. package/radio-group/RadioGroup.test.js +695 -0
  186. package/radio-group/types.d.ts +114 -0
  187. package/radio-group/types.js +5 -0
  188. package/resultsetTable/ResultsetTable.d.ts +4 -0
  189. package/resultsetTable/ResultsetTable.js +43 -147
  190. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  191. package/resultsetTable/ResultsetTable.test.js +348 -0
  192. package/resultsetTable/types.d.ts +67 -0
  193. package/resultsetTable/types.js +5 -0
  194. package/row/Row.d.ts +3 -0
  195. package/row/Row.js +127 -0
  196. package/row/Row.stories.tsx +237 -0
  197. package/row/types.d.ts +28 -0
  198. package/row/types.js +5 -0
  199. package/select/Icons.d.ts +10 -0
  200. package/select/Icons.js +93 -0
  201. package/select/Listbox.d.ts +4 -0
  202. package/select/Listbox.js +175 -0
  203. package/select/Option.d.ts +4 -0
  204. package/select/Option.js +110 -0
  205. package/select/Select.d.ts +4 -0
  206. package/select/Select.js +243 -719
  207. package/select/Select.stories.tsx +626 -0
  208. package/select/Select.test.js +2162 -0
  209. package/select/types.d.ts +212 -0
  210. package/select/types.js +5 -0
  211. package/sidenav/Sidenav.d.ts +9 -0
  212. package/sidenav/Sidenav.js +32 -64
  213. package/sidenav/Sidenav.stories.tsx +182 -0
  214. package/sidenav/Sidenav.test.js +56 -0
  215. package/sidenav/types.d.ts +50 -0
  216. package/sidenav/types.js +5 -0
  217. package/slider/Slider.d.ts +4 -0
  218. package/slider/Slider.js +76 -162
  219. package/slider/Slider.stories.tsx +177 -0
  220. package/slider/Slider.test.js +150 -0
  221. package/slider/types.d.ts +82 -0
  222. package/slider/types.js +5 -0
  223. package/spinner/Spinner.d.ts +4 -0
  224. package/spinner/Spinner.js +46 -177
  225. package/spinner/Spinner.stories.jsx +103 -0
  226. package/spinner/Spinner.test.js +64 -0
  227. package/spinner/types.d.ts +32 -0
  228. package/spinner/types.js +5 -0
  229. package/stack/Stack.d.ts +4 -0
  230. package/stack/Stack.js +56 -0
  231. package/stack/Stack.stories.tsx +263 -0
  232. package/stack/types.d.ts +32 -0
  233. package/stack/types.js +5 -0
  234. package/switch/Switch.d.ts +4 -0
  235. package/switch/Switch.js +55 -82
  236. package/switch/Switch.stories.tsx +160 -0
  237. package/switch/Switch.test.js +98 -0
  238. package/switch/types.d.ts +62 -0
  239. package/switch/types.js +5 -0
  240. package/table/Table.d.ts +4 -0
  241. package/table/Table.js +12 -26
  242. package/table/Table.stories.jsx +277 -0
  243. package/table/Table.test.js +26 -0
  244. package/table/types.d.ts +21 -0
  245. package/table/types.js +5 -0
  246. package/tabs/Tabs.d.ts +4 -0
  247. package/tabs/Tabs.js +43 -175
  248. package/tabs/Tabs.stories.tsx +112 -0
  249. package/tabs/Tabs.test.js +140 -0
  250. package/tabs/types.d.ts +82 -0
  251. package/tabs/types.js +5 -0
  252. package/tabs-nav/NavTabs.d.ts +8 -0
  253. package/tabs-nav/NavTabs.js +125 -0
  254. package/tabs-nav/NavTabs.stories.tsx +170 -0
  255. package/tabs-nav/NavTabs.test.js +82 -0
  256. package/tabs-nav/Tab.d.ts +4 -0
  257. package/tabs-nav/Tab.js +132 -0
  258. package/tabs-nav/types.d.ts +53 -0
  259. package/tabs-nav/types.js +5 -0
  260. package/tag/Tag.d.ts +4 -0
  261. package/tag/Tag.js +44 -143
  262. package/tag/Tag.stories.tsx +142 -0
  263. package/tag/Tag.test.js +60 -0
  264. package/tag/types.d.ts +69 -0
  265. package/tag/types.js +5 -0
  266. package/text/Text.d.ts +7 -0
  267. package/text/Text.js +30 -0
  268. package/text/Text.stories.tsx +19 -0
  269. package/text-input/Suggestion.d.ts +4 -0
  270. package/text-input/Suggestion.js +55 -0
  271. package/text-input/TextInput.d.ts +4 -0
  272. package/text-input/TextInput.js +169 -389
  273. package/text-input/TextInput.stories.tsx +474 -0
  274. package/text-input/TextInput.test.js +1712 -0
  275. package/text-input/types.d.ts +178 -0
  276. package/text-input/types.js +5 -0
  277. package/textarea/Textarea.d.ts +4 -0
  278. package/textarea/Textarea.js +50 -142
  279. package/textarea/Textarea.stories.jsx +157 -0
  280. package/textarea/Textarea.test.js +437 -0
  281. package/textarea/types.d.ts +137 -0
  282. package/textarea/types.js +5 -0
  283. package/toggle-group/ToggleGroup.d.ts +4 -0
  284. package/toggle-group/ToggleGroup.js +36 -148
  285. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  286. package/toggle-group/ToggleGroup.test.js +156 -0
  287. package/toggle-group/types.d.ts +105 -0
  288. package/toggle-group/types.js +5 -0
  289. package/useTheme.d.ts +2 -0
  290. package/useTheme.js +2 -2
  291. package/useTranslatedLabels.d.ts +2 -0
  292. package/useTranslatedLabels.js +20 -0
  293. package/wizard/Wizard.d.ts +4 -0
  294. package/wizard/Wizard.js +131 -244
  295. package/wizard/Wizard.stories.tsx +214 -0
  296. package/wizard/Wizard.test.js +141 -0
  297. package/wizard/types.d.ts +64 -0
  298. package/wizard/types.js +5 -0
  299. package/ThemeContext.js +0 -250
  300. package/V3Select/V3Select.js +0 -549
  301. package/V3Select/index.d.ts +0 -27
  302. package/V3Textarea/V3Textarea.js +0 -264
  303. package/V3Textarea/index.d.ts +0 -27
  304. package/accordion/index.d.ts +0 -28
  305. package/accordion-group/index.d.ts +0 -16
  306. package/alert/index.d.ts +0 -51
  307. package/box/index.d.ts +0 -25
  308. package/button/Button.stories.js +0 -27
  309. package/button/index.d.ts +0 -24
  310. package/card/index.d.ts +0 -22
  311. package/checkbox/index.d.ts +0 -24
  312. package/chip/index.d.ts +0 -22
  313. package/date/Date.js +0 -379
  314. package/date/index.d.ts +0 -27
  315. package/date-input/index.d.ts +0 -95
  316. package/dialog/index.d.ts +0 -18
  317. package/dropdown/index.d.ts +0 -26
  318. package/file-input/index.d.ts +0 -81
  319. package/footer/index.d.ts +0 -25
  320. package/header/index.d.ts +0 -25
  321. package/heading/index.d.ts +0 -17
  322. package/input-text/Icons.js +0 -22
  323. package/input-text/InputText.js +0 -705
  324. package/input-text/index.d.ts +0 -36
  325. package/link/index.d.ts +0 -23
  326. package/number-input/index.d.ts +0 -113
  327. package/paginator/index.d.ts +0 -20
  328. package/password-input/index.d.ts +0 -94
  329. package/progress-bar/index.d.ts +0 -18
  330. package/radio/Radio.js +0 -209
  331. package/radio/index.d.ts +0 -23
  332. package/resultsetTable/index.d.ts +0 -19
  333. package/select/index.d.ts +0 -131
  334. package/sidenav/index.d.ts +0 -13
  335. package/slider/index.d.ts +0 -29
  336. package/spinner/index.d.ts +0 -17
  337. package/switch/index.d.ts +0 -24
  338. package/table/index.d.ts +0 -13
  339. package/tabs/index.d.ts +0 -19
  340. package/tag/index.d.ts +0 -24
  341. package/text-input/index.d.ts +0 -135
  342. package/textarea/index.d.ts +0 -117
  343. package/toggle/Toggle.js +0 -220
  344. package/toggle/index.d.ts +0 -21
  345. package/toggle-group/index.d.ts +0 -21
  346. package/upload/Upload.js +0 -205
  347. package/upload/buttons-upload/ButtonsUpload.js +0 -135
  348. package/upload/buttons-upload/Icons.js +0 -40
  349. package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  350. package/upload/dragAndDropArea/Icons.js +0 -39
  351. package/upload/file-upload/FileToUpload.js +0 -189
  352. package/upload/file-upload/Icons.js +0 -66
  353. package/upload/files-upload/FilesToUpload.js +0 -123
  354. package/upload/index.d.ts +0 -15
  355. package/upload/transaction/Icons.js +0 -160
  356. package/upload/transaction/Transaction.js +0 -148
  357. package/upload/transactions/Transactions.js +0 -138
  358. package/wizard/Icons.js +0 -65
  359. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ var _Heading = _interopRequireDefault(require("./Heading"));
10
+
11
+ describe("Heading component tests", function () {
12
+ test("Heading renders with default level", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
14
+ text: "my-heading-test"
15
+ })),
16
+ getByText = _render.getByText,
17
+ getByRole = _render.getByRole;
18
+
19
+ expect(getByText("my-heading-test")).toBeTruthy();
20
+ expect(getByRole("heading", {
21
+ level: 1
22
+ })).toBeTruthy();
23
+ });
24
+ test("Heading renders with level 1", function () {
25
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
26
+ text: "my-heading-test",
27
+ level: 1
28
+ })),
29
+ getByText = _render2.getByText,
30
+ getByRole = _render2.getByRole;
31
+
32
+ expect(getByText("my-heading-test")).toBeTruthy();
33
+ expect(getByRole("heading", {
34
+ level: 1
35
+ })).toBeTruthy();
36
+ });
37
+ test("Heading renders with level 2", function () {
38
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
39
+ text: "my-heading-test",
40
+ level: 2
41
+ })),
42
+ getByText = _render3.getByText,
43
+ getByRole = _render3.getByRole;
44
+
45
+ expect(getByText("my-heading-test")).toBeTruthy();
46
+ expect(getByRole("heading", {
47
+ level: 2
48
+ })).toBeTruthy();
49
+ });
50
+ test("Heading renders with level 3", function () {
51
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
52
+ text: "my-heading-test",
53
+ level: 3
54
+ })),
55
+ getByText = _render4.getByText,
56
+ getByRole = _render4.getByRole;
57
+
58
+ expect(getByText("my-heading-test")).toBeTruthy();
59
+ expect(getByRole("heading", {
60
+ level: 3
61
+ })).toBeTruthy();
62
+ });
63
+ test("Heading renders with level 4", function () {
64
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
65
+ text: "my-heading-test",
66
+ level: 4
67
+ })),
68
+ getByText = _render5.getByText,
69
+ getByRole = _render5.getByRole;
70
+
71
+ expect(getByText("my-heading-test")).toBeTruthy();
72
+ expect(getByRole("heading", {
73
+ level: 4
74
+ })).toBeTruthy();
75
+ });
76
+ test("Heading renders with level 5", function () {
77
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
78
+ text: "my-heading-test",
79
+ level: 5
80
+ })),
81
+ getByText = _render6.getByText,
82
+ getByRole = _render6.getByRole;
83
+
84
+ expect(getByText("my-heading-test")).toBeTruthy();
85
+ expect(getByRole("heading", {
86
+ level: 5
87
+ })).toBeTruthy();
88
+ });
89
+ test("Heading renders with default level and as h5", function () {
90
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
91
+ text: "my-heading-test",
92
+ as: "h5"
93
+ })),
94
+ getByText = _render7.getByText,
95
+ getByRole = _render7.getByRole;
96
+
97
+ expect(getByText("my-heading-test")).toBeTruthy();
98
+ expect(getByRole("heading", {
99
+ level: 5
100
+ })).toBeTruthy();
101
+ });
102
+ test("Heading renders with level 1 and as h5", function () {
103
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
104
+ text: "my-heading-test",
105
+ level: 1,
106
+ as: "h5"
107
+ })),
108
+ getByText = _render8.getByText,
109
+ getByRole = _render8.getByRole;
110
+
111
+ expect(getByText("my-heading-test")).toBeTruthy();
112
+ expect(getByRole("heading", {
113
+ level: 5
114
+ })).toBeTruthy();
115
+ });
116
+ test("Heading renders with level 2 and as h4", function () {
117
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
118
+ text: "my-heading-test",
119
+ level: 2,
120
+ as: "h4"
121
+ })),
122
+ getByText = _render9.getByText,
123
+ getByRole = _render9.getByRole;
124
+
125
+ expect(getByText("my-heading-test")).toBeTruthy();
126
+ expect(getByRole("heading", {
127
+ level: 4
128
+ })).toBeTruthy();
129
+ });
130
+ test("Heading renders with level 3 and as h2", function () {
131
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
132
+ text: "my-heading-test",
133
+ level: 3,
134
+ as: "h2"
135
+ })),
136
+ getByText = _render10.getByText,
137
+ getByRole = _render10.getByRole;
138
+
139
+ expect(getByText("my-heading-test")).toBeTruthy();
140
+ expect(getByRole("heading", {
141
+ level: 2
142
+ })).toBeTruthy();
143
+ });
144
+ test("Heading renders with level 4 and as h3", function () {
145
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
146
+ text: "my-heading-test",
147
+ level: 4,
148
+ as: "h3"
149
+ })),
150
+ getByText = _render11.getByText,
151
+ getByRole = _render11.getByRole;
152
+
153
+ expect(getByText("my-heading-test")).toBeTruthy();
154
+ expect(getByRole("heading", {
155
+ level: 3
156
+ })).toBeTruthy();
157
+ });
158
+ test("Heading renders with level 5 as h4", function () {
159
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
160
+ text: "my-heading-test",
161
+ level: 5,
162
+ as: "h4"
163
+ })),
164
+ getByText = _render12.getByText,
165
+ getByRole = _render12.getByRole;
166
+
167
+ expect(getByText("my-heading-test")).toBeTruthy();
168
+ expect(getByRole("heading", {
169
+ level: 4
170
+ })).toBeTruthy();
171
+ });
172
+ test("Heading renders with level 5 and invalid as", function () {
173
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
174
+ text: "my-heading-test",
175
+ level: 5,
176
+ as: "h4afdssf"
177
+ })),
178
+ getByText = _render13.getByText,
179
+ getByRole = _render13.getByRole;
180
+
181
+ expect(getByText("my-heading-test")).toBeTruthy();
182
+ expect(getByRole("heading", {
183
+ level: 5
184
+ })).toBeTruthy();
185
+ });
186
+ });
@@ -0,0 +1,33 @@
1
+ declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ declare type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ declare type Props = {
9
+ /**
10
+ * Defines the heading level from 1 to 5. The styles of the heading are applied according to the level.
11
+ * The html tag of the heading will be the one specified in the 'as' prop.
12
+ * If 'as' is not specified, the html tag of the heading is the one specified in the 'level' prop.
13
+ */
14
+ level?: 1 | 2 | 3 | 4 | 5;
15
+ /**
16
+ * Heading text.
17
+ */
18
+ text: string;
19
+ /**
20
+ * Specifies the html tag of the heading.
21
+ */
22
+ as?: "h1" | "h2" | "h3" | "h4" | "h5";
23
+ /**
24
+ * Modifies the default weight of the heading.
25
+ */
26
+ weight?: "light" | "normal" | "bold";
27
+ /**
28
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
29
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
30
+ */
31
+ margin?: Space | Margin;
32
+ };
33
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import InlineProps from "./types";
3
+ declare const DxcInline: ({ wrap, alignX, alignY, as, divider, gutter, reverse, children, }: InlineProps) => JSX.Element;
4
+ export default DxcInline;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+
16
+ var _templateObject, _templateObject2;
17
+
18
+ var DxcInline = function DxcInline(_ref) {
19
+ var _ref$wrap = _ref.wrap,
20
+ wrap = _ref$wrap === void 0 ? false : _ref$wrap,
21
+ _ref$alignX = _ref.alignX,
22
+ alignX = _ref$alignX === void 0 ? "start" : _ref$alignX,
23
+ _ref$alignY = _ref.alignY,
24
+ alignY = _ref$alignY === void 0 ? "stretch" : _ref$alignY,
25
+ _ref$as = _ref.as,
26
+ as = _ref$as === void 0 ? "div" : _ref$as,
27
+ _ref$divider = _ref.divider,
28
+ divider = _ref$divider === void 0 ? false : _ref$divider,
29
+ _ref$gutter = _ref.gutter,
30
+ gutter = _ref$gutter === void 0 ? "0rem" : _ref$gutter,
31
+ _ref$reverse = _ref.reverse,
32
+ reverse = _ref$reverse === void 0 ? false : _ref$reverse,
33
+ children = _ref.children;
34
+ return /*#__PURE__*/_react["default"].createElement(Inline, {
35
+ wrap: wrap,
36
+ as: as,
37
+ alignX: alignX,
38
+ alignY: alignY,
39
+ gutter: gutter,
40
+ reverse: reverse,
41
+ divider: divider
42
+ }, _react["default"].Children.map(children, function (child, index) {
43
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, child, divider && index !== _react["default"].Children.count(children) - 1 && /*#__PURE__*/_react["default"].createElement(Divider, null));
44
+ }));
45
+ };
46
+
47
+ var Inline = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n padding: 0px;\n margin: 0px;\n width: 100%;\n"])), function (_ref2) {
48
+ var wrap = _ref2.wrap,
49
+ alignX = _ref2.alignX,
50
+ alignY = _ref2.alignY,
51
+ gutter = _ref2.gutter,
52
+ reverse = _ref2.reverse,
53
+ divider = _ref2.divider;
54
+ return "\n flex-wrap: ".concat(wrap ? "wrap" : "nowrap", ";\n flex-direction: ").concat(reverse ? "row-reverse" : "row", ";\n align-items: stretch;\n justify-content: ").concat(alignX === "start" || alignX === "end" ? "flex-".concat(alignX) : alignX, ";\n gap: ").concat(divider ? "calc(".concat(gutter, "/2 - 1px)") : gutter, ";\n\n & > * {\n align-self: ").concat(alignY === "start" || alignY === "end" ? "flex-".concat(alignY) : alignY, ";\n }\n ");
55
+ });
56
+
57
+ var Divider = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: 1px;\n background-color: #999999;\n align-self: stretch;\n"])));
58
+
59
+ var _default = DxcInline;
60
+ exports["default"] = _default;
@@ -0,0 +1,319 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import styled from "styled-components";
4
+ import DxcInline from "./Inline";
5
+
6
+ export default {
7
+ title: "Inline",
8
+ component: DxcInline,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <Title title="Default" theme="light" level={4} />
14
+ <Container>
15
+ <DxcInline>
16
+ <Placeholder height="small" width="small" />
17
+ <Placeholder height="medium" width="medium" />
18
+ <Placeholder height="large" width="large" />
19
+ <Placeholder height="small" width="large" />
20
+ </DxcInline>
21
+ </Container>
22
+ <Title title="Default with divider" theme="light" level={4} />
23
+ <Container>
24
+ <DxcInline divider>
25
+ <Placeholder height="small" width="small" />
26
+ <Placeholder height="medium" width="medium" />
27
+ <Placeholder height="large" width="large" />
28
+ <Placeholder height="small" width="large" />
29
+ <Placeholder height="large" width="large" />
30
+ <Placeholder height="medium" width="small" />
31
+ </DxcInline>
32
+ </Container>
33
+ <Title title="One child larger (width) than the container" theme="light" level={4} />
34
+ <FlexContainer customWidth>
35
+ <DxcInline>
36
+ <Placeholder height="large" width="xlarge" />
37
+ </DxcInline>
38
+ </FlexContainer>
39
+ <Title title="One child larger (min-width) than the container" theme="light" level={4} />
40
+ <FlexContainer customWidth customHeight>
41
+ <DxcInline>
42
+ <MinSizePlaceholder height="medium" />
43
+ </DxcInline>
44
+ </FlexContainer>
45
+ <Title title="Wrap" theme="light" level={4} />
46
+ <Container customWidth>
47
+ <DxcInline wrap>
48
+ <Placeholder height="large" width="small" />
49
+ <Placeholder height="large" width="medium" />
50
+ <Placeholder height="medium" width="small" />
51
+ <Placeholder height="large" width="medium" />
52
+ </DxcInline>
53
+ </Container>
54
+ <Title title="Nowrap in a non-flex container" theme="light" level={4} />
55
+ <Container customWidth>
56
+ <DxcInline>
57
+ <Placeholder height="large" width="small" />
58
+ <Placeholder height="large" width="medium" />
59
+ <Placeholder height="medium" width="small" />
60
+ <Placeholder height="small" width="medium" />
61
+ <Placeholder height="large" width="small" />
62
+ <Placeholder height="medium" width="large" />
63
+ <Placeholder height="small" width="medium" />
64
+ </DxcInline>
65
+ </Container>
66
+ <Title title="Nowrap in a flex container" theme="light" level={4} />
67
+ <FlexContainer customWidth>
68
+ <DxcInline>
69
+ <Placeholder height="large" width="small" />
70
+ <Placeholder height="large" width="medium" />
71
+ <Placeholder height="medium" width="small" />
72
+ <Placeholder height="small" width="medium" />
73
+ <Placeholder height="large" width="small" />
74
+ <Placeholder height="medium" width="large" />
75
+ <Placeholder height="small" width="medium" />
76
+ </DxcInline>
77
+ </FlexContainer>
78
+ <Title title="AlignY = start" theme="light" level={4} />
79
+ <Container>
80
+ <DxcInline alignY="stretch">
81
+ <Placeholder width="small" />
82
+ <Placeholder height="medium" width="medium" />
83
+ <Placeholder height="large" width="large" />
84
+ <Placeholder height="small" width="large" />
85
+ </DxcInline>
86
+ </Container>
87
+ <Title title="AlignY = end with divider" theme="light" level={4} />
88
+ <Container>
89
+ <DxcInline alignY="end" divider>
90
+ <Placeholder height="small" width="small" />
91
+ <Placeholder height="medium" width="medium" />
92
+ <Placeholder height="large" width="large" />
93
+ <Placeholder height="small" width="large" />
94
+ </DxcInline>
95
+ </Container>
96
+ <Title title="AlignY = center" theme="light" level={4} />
97
+ <Container>
98
+ <DxcInline alignY="center">
99
+ <Placeholder height="small" width="small" />
100
+ <Placeholder height="medium" width="medium" />
101
+ <Placeholder height="large" width="large" />
102
+ <Placeholder height="small" width="large" />
103
+ </DxcInline>
104
+ </Container>
105
+ <Title title="AlignY with wrapped items" theme="light" level={4} />
106
+ <Container customWidth>
107
+ <DxcInline alignY="end" wrap>
108
+ <Placeholder height="large" width="small" />
109
+ <Placeholder height="large" width="medium" />
110
+ <Placeholder height="medium" width="small" />
111
+ <Placeholder height="large" width="medium" />
112
+ <Placeholder height="medium" width="small" />
113
+ <Placeholder height="small" width="medium" />
114
+ </DxcInline>
115
+ </Container>
116
+ <Title title="AlignY = baseline" theme="light" level={4} />
117
+ <Container>
118
+ <DxcInline alignY="baseline">
119
+ <Placeholder height="small" width="small" />
120
+ <Placeholder height="medium" width="medium" />
121
+ <Placeholder height="large" width="large" />
122
+ <Placeholder height="small" width="large" />
123
+ </DxcInline>
124
+ </Container>
125
+ <Title title="AlignX = start" theme="light" level={4} />
126
+ <Container>
127
+ <DxcInline alignX="start">
128
+ <Placeholder height="small" width="small" />
129
+ <Placeholder height="medium" width="medium" />
130
+ <Placeholder height="large" width="large" />
131
+ <Placeholder height="small" />
132
+ </DxcInline>
133
+ </Container>
134
+ <Title title="AlignX = end with divider" theme="light" level={4} />
135
+ <Container>
136
+ <DxcInline alignX="end" divider>
137
+ <Placeholder height="small" width="small" />
138
+ <Placeholder height="medium" width="medium" />
139
+ <Placeholder height="small" width="small" />
140
+ <Placeholder height="large" width="large" />
141
+ <Placeholder height="small" width="large" />
142
+ </DxcInline>
143
+ </Container>
144
+ <Title title="AlignX = center" theme="light" level={4} />
145
+ <Container>
146
+ <DxcInline alignX="center">
147
+ <Placeholder height="small" width="small" />
148
+ <Placeholder height="medium" width="medium" />
149
+ <Placeholder height="large" width="large" />
150
+ <Placeholder height="small" width="large" />
151
+ </DxcInline>
152
+ </Container>
153
+ <Title title="AlignX with wrapped items" theme="light" level={4} />
154
+ <Container customWidth>
155
+ <DxcInline alignX="center" wrap>
156
+ <Placeholder height="small" width="small" />
157
+ <Placeholder height="large" width="medium" />
158
+ <Placeholder height="medium" width="small" />
159
+ <Placeholder height="large" width="large" />
160
+ <Placeholder height="medium" width="small" />
161
+ <Placeholder height="small" width="large" />
162
+ <Placeholder height="large" width="large" />
163
+ <Placeholder height="large" width="medium" />
164
+ </DxcInline>
165
+ </Container>
166
+ <Title title="Gutter = 0.125rem" theme="light" level={4} />
167
+ <Container>
168
+ <DxcInline gutter="0.125rem">
169
+ <Placeholder height="small" width="small" />
170
+ <Placeholder height="medium" width="medium" />
171
+ <Placeholder height="large" width="large" />
172
+ <Placeholder height="small" width="large" />
173
+ </DxcInline>
174
+ </Container>
175
+ <Title title="Gutter = 0.25rem" theme="light" level={4} />
176
+ <Container>
177
+ <DxcInline gutter="0.25rem">
178
+ <Placeholder height="small" width="small" />
179
+ <Placeholder height="medium" width="medium" />
180
+ <Placeholder height="large" width="large" />
181
+ <Placeholder height="small" width="large" />
182
+ </DxcInline>
183
+ </Container>
184
+ <Title title="Gutter = 0.5rem" theme="light" level={4} />
185
+ <Container>
186
+ <DxcInline gutter="0.5rem">
187
+ <Placeholder height="small" width="small" />
188
+ <Placeholder height="medium" width="medium" />
189
+ <Placeholder height="large" width="large" />
190
+ <Placeholder height="small" width="large" />
191
+ </DxcInline>
192
+ </Container>
193
+ <Title title="Gutter = 0.75rem" theme="light" level={4} />
194
+ <Container>
195
+ <DxcInline gutter="0.75rem">
196
+ <Placeholder height="small" width="small" />
197
+ <Placeholder height="medium" width="medium" />
198
+ <Placeholder height="large" width="large" />
199
+ <Placeholder height="small" width="large" />
200
+ </DxcInline>
201
+ </Container>
202
+ <Title title="Gutter = 1rem" theme="light" level={4} />
203
+ <Container>
204
+ <DxcInline gutter="1rem">
205
+ <Placeholder height="small" width="small" />
206
+ <Placeholder height="medium" width="medium" />
207
+ <Placeholder height="large" width="large" />
208
+ <Placeholder height="small" width="large" />
209
+ </DxcInline>
210
+ </Container>
211
+ <Title title="Gutter = 1.5rem" theme="light" level={4} />
212
+ <Container>
213
+ <DxcInline gutter="1.5rem">
214
+ <Placeholder height="small" width="small" />
215
+ <Placeholder height="medium" width="medium" />
216
+ <Placeholder height="large" width="large" />
217
+ <Placeholder height="small" width="large" />
218
+ </DxcInline>
219
+ </Container>
220
+ <Title title="Gutter = 2rem and divider" theme="light" level={4} />
221
+ <Container>
222
+ <DxcInline gutter="2rem" divider>
223
+ <Placeholder height="small" width="small" />
224
+ <Placeholder height="medium" width="medium" />
225
+ <Placeholder height="large" width="large" />
226
+ <Placeholder height="small" width="large" />
227
+ </DxcInline>
228
+ </Container>
229
+ <Title title="Gutter = 3rem" theme="light" level={4} />
230
+ <Container>
231
+ <DxcInline gutter="3rem">
232
+ <Placeholder height="small" width="small" />
233
+ <Placeholder height="medium" width="medium" />
234
+ <Placeholder height="large" width="large" />
235
+ </DxcInline>
236
+ </Container>
237
+ <Title title="Gutter = 4rem" theme="light" level={4} />
238
+ <Container>
239
+ <DxcInline gutter="4rem">
240
+ <Placeholder height="small" width="small" />
241
+ <Placeholder height="medium" width="medium" />
242
+ </DxcInline>
243
+ </Container>
244
+ <Title title="Gutter = 5rem" theme="light" level={4} />
245
+ <Container>
246
+ <DxcInline gutter="5rem">
247
+ <Placeholder height="small" width="small" />
248
+ <Placeholder height="medium" width="medium" />
249
+ </DxcInline>
250
+ </Container>
251
+ <Title title="Reverse" theme="light" level={4} />
252
+ <Container>
253
+ <DxcInline reverse>
254
+ <Placeholder height="small" width="small">
255
+ 1
256
+ </Placeholder>
257
+ <Placeholder height="medium" width="medium">
258
+ 2
259
+ </Placeholder>
260
+ <Placeholder height="large" width="large">
261
+ 3
262
+ </Placeholder>
263
+ <Placeholder height="small" width="large">
264
+ 4
265
+ </Placeholder>
266
+ </DxcInline>
267
+ </Container>
268
+ <Title title="Wrapped and reversed children" theme="light" level={4} />
269
+ <Container customWidth>
270
+ <DxcInline reverse wrap>
271
+ <Placeholder height="small" width="small">
272
+ 1
273
+ </Placeholder>
274
+ <Placeholder height="medium" width="medium">
275
+ 2
276
+ </Placeholder>
277
+ <Placeholder height="large" width="large">
278
+ 3
279
+ </Placeholder>
280
+ <Placeholder height="small" width="large">
281
+ 4
282
+ </Placeholder>
283
+ </DxcInline>
284
+ </Container>
285
+ </>
286
+ );
287
+
288
+ const FlexContainer = styled.div<{ customWidth?: boolean, customHeight?: boolean }>`
289
+ display: flex;
290
+ ${({ customWidth }) => customWidth && `width: 200px;`};
291
+ ${({ customHeight }) => customHeight && `height: 200px;`};
292
+ background: #f2eafa;
293
+ `;
294
+
295
+ const Container = styled.div<{ customWidth?: boolean }>`
296
+ background: #f2eafa;
297
+ ${({ customWidth }) => customWidth && `width: 300px;`};
298
+ `;
299
+
300
+ type PlaceholderProps = {
301
+ width?: "xlarge" | "large" | "medium" | "small" | "auto";
302
+ height?: "large" | "medium" | "small" | "auto";
303
+ };
304
+
305
+ const Placeholder = styled.div<PlaceholderProps>`
306
+ ${({ width }) =>
307
+ width &&
308
+ `width: ${width === "xlarge" ? "350px" : width === "large" ? "150px" : width === "medium" ? "100px" : "50px"};`};
309
+ ${({ height }) => height && `height: ${height === "large" ? "150px" : height === "medium" ? "100px" : "50px"};`};
310
+ border: 1px solid #a46ede;
311
+ background-color: #e5d5f6;
312
+ `;
313
+
314
+ const MinSizePlaceholder = styled.div<PlaceholderProps>`
315
+ min-width: 300px;
316
+ ${({ height }) => height && `height: ${height === "large" ? "150px" : height === "medium" ? "100px" : "50px"};`};
317
+ border: 1px solid #a46ede;
318
+ background-color: #e5d5f6;
319
+ `;
@@ -0,0 +1,36 @@
1
+ /// <reference types="react" />
2
+ declare type Props = {
3
+ /**
4
+ * Sets whether the children are forced onto one line or can wrap onto multiple lines.
5
+ */
6
+ wrap?: boolean;
7
+ /**
8
+ * Alignment applied to children in the main axis.
9
+ */
10
+ alignX?: "start" | "end" | "center";
11
+ /**
12
+ * Alignment applied to children in the cross axis.
13
+ */
14
+ alignY?: "start" | "end" | "center" | "baseline" | "stretch";
15
+ /**
16
+ * Specifies the HTML tag or component that is rendered as the wrapper element.
17
+ */
18
+ as?: React.ElementType;
19
+ /**
20
+ * If true, a divider is shown between each child.
21
+ */
22
+ divider?: boolean;
23
+ /**
24
+ * Space applied between each child.
25
+ */
26
+ gutter?: "0rem" | "0.125rem" | "0.25rem" | "0.5rem" | "0.75rem" | "1rem" | "1.5rem" | "2rem" | "3rem" | "4rem" | "5rem";
27
+ /**
28
+ * If true, it changes the direction of the inline to reverse.
29
+ */
30
+ reverse?: boolean;
31
+ /**
32
+ * Custom content inside the stack.
33
+ */
34
+ children: React.ReactNode[] | React.ReactNode;
35
+ };
36
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import InsetPropsType from "./types";
3
+ export default function Inset({ space, horizontal, vertical, top, right, bottom, left, children, }: InsetPropsType): JSX.Element;