@dxc-technology/halstack-react 0.0.0-0bd2807 → 0.0.0-0d4367e

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 (251) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +1 -4
  3. package/ThemeContext.d.ts +10 -0
  4. package/ThemeContext.js +26 -29
  5. package/accordion/Accordion.d.ts +1 -1
  6. package/accordion/Accordion.js +13 -23
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +8 -8
  10. package/accordion-group/AccordionGroup.js +2 -2
  11. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  12. package/accordion-group/AccordionGroup.test.js +133 -0
  13. package/accordion-group/types.d.ts +4 -8
  14. package/alert/Alert.js +2 -2
  15. package/alert/Alert.test.js +92 -0
  16. package/alert/types.d.ts +1 -1
  17. package/badge/Badge.d.ts +4 -0
  18. package/badge/Badge.js +1 -1
  19. package/badge/types.d.ts +4 -0
  20. package/badge/types.js +5 -0
  21. package/bleed/Bleed.d.ts +3 -0
  22. package/bleed/Bleed.js +84 -0
  23. package/bleed/Bleed.stories.tsx +342 -0
  24. package/bleed/types.d.ts +37 -0
  25. package/bleed/types.js +5 -0
  26. package/box/Box.js +2 -2
  27. package/box/Box.test.js +18 -0
  28. package/button/Button.d.ts +1 -1
  29. package/button/Button.js +13 -19
  30. package/button/Button.stories.tsx +6 -8
  31. package/button/Button.test.js +35 -0
  32. package/button/types.d.ts +5 -9
  33. package/card/Card.js +5 -6
  34. package/card/Card.stories.tsx +201 -0
  35. package/card/Card.test.js +50 -0
  36. package/card/ice-cream.jpg +0 -0
  37. package/card/types.d.ts +4 -6
  38. package/checkbox/Checkbox.d.ts +1 -1
  39. package/checkbox/Checkbox.js +9 -15
  40. package/checkbox/Checkbox.stories.tsx +14 -14
  41. package/checkbox/Checkbox.test.js +78 -0
  42. package/checkbox/types.d.ts +6 -2
  43. package/chip/Chip.d.ts +4 -0
  44. package/chip/Chip.js +16 -76
  45. package/chip/Chip.stories.tsx +6 -8
  46. package/chip/Chip.test.js +56 -0
  47. package/chip/types.d.ts +45 -0
  48. package/chip/types.js +5 -0
  49. package/common/variables.js +56 -260
  50. package/date-input/DateInput.js +54 -46
  51. package/date-input/DateInput.stories.tsx +7 -7
  52. package/date-input/DateInput.test.js +479 -0
  53. package/date-input/types.d.ts +16 -9
  54. package/dialog/Dialog.js +4 -3
  55. package/dialog/Dialog.test.js +40 -0
  56. package/dropdown/Dropdown.d.ts +1 -1
  57. package/dropdown/Dropdown.js +13 -35
  58. package/dropdown/Dropdown.stories.tsx +249 -0
  59. package/dropdown/Dropdown.test.js +189 -0
  60. package/dropdown/types.d.ts +6 -15
  61. package/file-input/FileInput.d.ts +4 -0
  62. package/file-input/FileInput.js +167 -109
  63. package/file-input/FileInput.stories.tsx +507 -0
  64. package/file-input/FileInput.test.js +457 -0
  65. package/file-input/FileItem.d.ts +14 -0
  66. package/file-input/FileItem.js +12 -21
  67. package/file-input/types.d.ts +112 -0
  68. package/file-input/types.js +5 -0
  69. package/footer/Footer.d.ts +1 -1
  70. package/footer/Footer.js +28 -36
  71. package/footer/{Footer.stories.jsx → Footer.stories.tsx} +1 -22
  72. package/footer/Footer.test.js +109 -0
  73. package/footer/Icons.d.ts +2 -0
  74. package/footer/Icons.js +3 -3
  75. package/footer/types.d.ts +21 -17
  76. package/header/Header.js +2 -2
  77. package/header/Header.stories.tsx +162 -0
  78. package/header/Header.test.js +63 -0
  79. package/header/Icons.d.ts +2 -0
  80. package/header/types.d.ts +4 -2
  81. package/heading/Heading.js +1 -1
  82. package/heading/Heading.stories.tsx +54 -0
  83. package/heading/Heading.test.js +186 -0
  84. package/inset/Inset.d.ts +3 -0
  85. package/inset/Inset.js +84 -0
  86. package/inset/Inset.stories.tsx +229 -0
  87. package/inset/types.d.ts +37 -0
  88. package/inset/types.js +5 -0
  89. package/layout/ApplicationLayout.d.ts +10 -0
  90. package/layout/ApplicationLayout.js +17 -21
  91. package/layout/ApplicationLayout.stories.tsx +171 -0
  92. package/layout/types.d.ts +57 -0
  93. package/layout/types.js +5 -0
  94. package/link/Link.js +10 -18
  95. package/link/Link.stories.tsx +82 -1
  96. package/link/Link.test.js +91 -0
  97. package/link/types.d.ts +5 -9
  98. package/list/List.d.ts +4 -0
  99. package/list/List.js +47 -0
  100. package/list/List.stories.tsx +95 -0
  101. package/list/types.d.ts +7 -0
  102. package/list/types.js +5 -0
  103. package/main.d.ts +11 -8
  104. package/main.js +62 -38
  105. package/number-input/NumberInput.js +14 -24
  106. package/number-input/NumberInput.stories.tsx +5 -5
  107. package/number-input/NumberInput.test.js +508 -0
  108. package/number-input/NumberInputContext.d.ts +4 -0
  109. package/number-input/NumberInputContext.js +5 -2
  110. package/number-input/numberInputContextTypes.d.ts +19 -0
  111. package/number-input/numberInputContextTypes.js +5 -0
  112. package/number-input/types.d.ts +4 -0
  113. package/package.json +5 -2
  114. package/paginator/Paginator.js +2 -8
  115. package/paginator/Paginator.test.js +266 -0
  116. package/password-input/PasswordInput.js +19 -18
  117. package/password-input/PasswordInput.stories.tsx +3 -3
  118. package/password-input/PasswordInput.test.js +183 -0
  119. package/password-input/types.d.ts +17 -10
  120. package/progress-bar/ProgressBar.js +4 -4
  121. package/progress-bar/ProgressBar.test.js +65 -0
  122. package/quick-nav/QuickNav.d.ts +4 -0
  123. package/quick-nav/QuickNav.js +66 -0
  124. package/quick-nav/QuickNav.stories.tsx +237 -0
  125. package/quick-nav/types.d.ts +21 -0
  126. package/quick-nav/types.js +5 -0
  127. package/radio/Radio.js +2 -2
  128. package/radio/Radio.test.js +71 -0
  129. package/radio/types.d.ts +2 -2
  130. package/radio-group/Radio.d.ts +4 -0
  131. package/radio-group/Radio.js +141 -0
  132. package/radio-group/RadioGroup.d.ts +4 -0
  133. package/radio-group/RadioGroup.js +280 -0
  134. package/radio-group/RadioGroup.stories.tsx +100 -0
  135. package/radio-group/RadioGroup.test.js +695 -0
  136. package/radio-group/types.d.ts +114 -0
  137. package/radio-group/types.js +5 -0
  138. package/resultsetTable/ResultsetTable.d.ts +4 -0
  139. package/resultsetTable/ResultsetTable.js +9 -29
  140. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  141. package/resultsetTable/ResultsetTable.test.js +306 -0
  142. package/resultsetTable/types.d.ts +67 -0
  143. package/resultsetTable/types.js +5 -0
  144. package/row/Row.d.ts +3 -0
  145. package/row/Row.js +127 -0
  146. package/row/Row.stories.tsx +237 -0
  147. package/row/types.d.ts +28 -0
  148. package/row/types.js +5 -0
  149. package/select/Icons.d.ts +10 -0
  150. package/select/Icons.js +93 -0
  151. package/select/Option.d.ts +4 -0
  152. package/select/Option.js +110 -0
  153. package/select/Select.d.ts +4 -0
  154. package/select/Select.js +116 -249
  155. package/select/Select.stories.tsx +91 -81
  156. package/select/Select.test.js +2057 -0
  157. package/select/types.d.ts +194 -0
  158. package/select/types.js +5 -0
  159. package/sidenav/Sidenav.js +2 -2
  160. package/sidenav/Sidenav.stories.tsx +182 -0
  161. package/sidenav/Sidenav.test.js +56 -0
  162. package/slider/Slider.d.ts +1 -1
  163. package/slider/Slider.js +6 -5
  164. package/slider/Slider.stories.tsx +8 -8
  165. package/slider/Slider.test.js +150 -0
  166. package/slider/types.d.ts +4 -0
  167. package/spinner/Spinner.js +2 -2
  168. package/spinner/Spinner.stories.jsx +1 -0
  169. package/spinner/Spinner.test.js +64 -0
  170. package/stack/Stack.d.ts +3 -0
  171. package/stack/Stack.js +97 -0
  172. package/stack/Stack.stories.tsx +164 -0
  173. package/stack/types.d.ts +24 -0
  174. package/stack/types.js +5 -0
  175. package/switch/Switch.d.ts +1 -1
  176. package/switch/Switch.js +21 -8
  177. package/switch/Switch.stories.tsx +7 -7
  178. package/switch/Switch.test.js +98 -0
  179. package/switch/types.d.ts +4 -0
  180. package/table/Table.js +3 -3
  181. package/table/Table.stories.jsx +2 -1
  182. package/table/Table.test.js +26 -0
  183. package/tabs/Tabs.d.ts +1 -1
  184. package/tabs/Tabs.js +20 -20
  185. package/tabs/Tabs.stories.tsx +118 -0
  186. package/tabs/Tabs.test.js +140 -0
  187. package/tabs/types.d.ts +29 -18
  188. package/tag/Tag.d.ts +1 -1
  189. package/tag/Tag.js +16 -23
  190. package/tag/Tag.stories.tsx +26 -29
  191. package/tag/Tag.test.js +60 -0
  192. package/tag/types.d.ts +23 -14
  193. package/text/Text.d.ts +7 -0
  194. package/text/Text.js +30 -0
  195. package/text/Text.stories.tsx +19 -0
  196. package/text-input/TextInput.d.ts +4 -0
  197. package/text-input/TextInput.js +62 -89
  198. package/text-input/TextInput.stories.tsx +474 -0
  199. package/text-input/TextInput.test.js +1725 -0
  200. package/text-input/types.d.ts +163 -0
  201. package/text-input/types.js +5 -0
  202. package/textarea/Textarea.d.ts +4 -0
  203. package/textarea/Textarea.js +37 -68
  204. package/textarea/Textarea.stories.jsx +37 -15
  205. package/textarea/Textarea.test.js +437 -0
  206. package/textarea/types.d.ts +134 -0
  207. package/textarea/types.js +5 -0
  208. package/toggle-group/ToggleGroup.d.ts +4 -0
  209. package/toggle-group/ToggleGroup.js +18 -46
  210. package/toggle-group/ToggleGroup.stories.tsx +27 -32
  211. package/toggle-group/ToggleGroup.test.js +156 -0
  212. package/toggle-group/types.d.ts +105 -0
  213. package/toggle-group/types.js +5 -0
  214. package/useTheme.d.ts +2 -0
  215. package/useTheme.js +1 -1
  216. package/wizard/Wizard.d.ts +1 -1
  217. package/wizard/Wizard.js +73 -18
  218. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +13 -23
  219. package/wizard/Wizard.test.js +141 -0
  220. package/wizard/types.d.ts +9 -9
  221. package/V3Select/V3Select.js +0 -455
  222. package/V3Select/index.d.ts +0 -27
  223. package/V3Textarea/V3Textarea.js +0 -260
  224. package/V3Textarea/index.d.ts +0 -27
  225. package/chip/index.d.ts +0 -22
  226. package/date/Date.js +0 -373
  227. package/date/index.d.ts +0 -27
  228. package/file-input/index.d.ts +0 -81
  229. package/input-text/Icons.js +0 -22
  230. package/input-text/InputText.js +0 -611
  231. package/input-text/index.d.ts +0 -36
  232. package/resultsetTable/index.d.ts +0 -19
  233. package/select/index.d.ts +0 -131
  234. package/text-input/index.d.ts +0 -135
  235. package/textarea/index.d.ts +0 -117
  236. package/toggle/Toggle.js +0 -186
  237. package/toggle/index.d.ts +0 -21
  238. package/toggle-group/index.d.ts +0 -21
  239. package/upload/Upload.js +0 -201
  240. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  241. package/upload/buttons-upload/Icons.js +0 -40
  242. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  243. package/upload/dragAndDropArea/Icons.js +0 -39
  244. package/upload/file-upload/FileToUpload.js +0 -115
  245. package/upload/file-upload/Icons.js +0 -66
  246. package/upload/files-upload/FilesToUpload.js +0 -109
  247. package/upload/index.d.ts +0 -15
  248. package/upload/transaction/Icons.js +0 -160
  249. package/upload/transaction/Transaction.js +0 -104
  250. package/upload/transactions/Transactions.js +0 -94
  251. package/wizard/Icons.js +0 -65
@@ -19,7 +19,7 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
19
19
 
20
20
  var _variables = require("../common/variables.js");
21
21
 
22
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
22
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
24
24
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
25
25
 
@@ -0,0 +1,54 @@
1
+ import React from "react";
2
+ import DxcHeading from "./Heading";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+
6
+ export default {
7
+ title: "Heading",
8
+ component: DxcHeading,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <Title title="Levels" theme="light" level={2} />
14
+ <ExampleContainer>
15
+ <Title title="Level 1" theme="light" level={4} />
16
+ <DxcHeading text="Heading for sections within the page" />
17
+ <Title title="Level 2" theme="light" level={4} />
18
+ <DxcHeading text="Heading for sections within the page" level={2} />
19
+ <Title title="Level 3" theme="light" level={4} />
20
+ <DxcHeading text="Heading for sections within the page" level={3} />
21
+ <Title title="Level 4" theme="light" level={4} />
22
+ <DxcHeading text="Heading for sections within the page" level={4} />
23
+ <Title title="Level 5" theme="light" level={4} />
24
+ <DxcHeading text="Heading for sections within the page" level={5} />
25
+ </ExampleContainer>
26
+ <Title title="Weights" theme="light" level={2} />
27
+ <ExampleContainer>
28
+ <Title title="'light' Weight" theme="light" level={4} />
29
+ <DxcHeading text="Heading for sections within the page" level={2} weight="light" />
30
+ <Title title="'normal' Weight" theme="light" level={4} />
31
+ <DxcHeading text="Heading for sections within the page" level={2} weight="normal" />
32
+ <Title title="'bold' Weight" theme="light" level={4} />
33
+ <DxcHeading text="Heading for sections within the page" level={2} weight="bold" />
34
+ </ExampleContainer>
35
+ <Title title="Margins" theme="light" level={2} />
36
+ <ExampleContainer>
37
+ <Title title="Xxsmall" theme="light" level={4} />
38
+ <DxcHeading text="Xxsmall" margin="xxsmall" />
39
+ <Title title="Xsmall" theme="light" level={4} />
40
+ <DxcHeading text="Xsmall" margin="xsmall" />
41
+ <Title title="Small" theme="light" level={4} />
42
+ <DxcHeading text="Small" margin="small" />
43
+ <Title title="Medium" theme="light" level={4} />
44
+ <DxcHeading text="Medium" margin="medium" />
45
+ <Title title="Large" theme="light" level={4} />
46
+ <DxcHeading text="Large" margin="large" />
47
+ <Title title="Xlarge" theme="light" level={4} />
48
+ <DxcHeading text="Xlarge" margin="xlarge" />
49
+ <Title title="Xxlarge" theme="light" level={4} />
50
+ <DxcHeading text="Xxlarge" margin="xxlarge" />
51
+ <hr />
52
+ </ExampleContainer>
53
+ </>
54
+ );
@@ -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,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;
package/inset/Inset.js ADDED
@@ -0,0 +1,84 @@
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"] = Inset;
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;
17
+
18
+ function Inset(_ref) {
19
+ var space = _ref.space,
20
+ horizontal = _ref.horizontal,
21
+ vertical = _ref.vertical,
22
+ top = _ref.top,
23
+ right = _ref.right,
24
+ bottom = _ref.bottom,
25
+ left = _ref.left,
26
+ children = _ref.children;
27
+ return /*#__PURE__*/_react["default"].createElement(StyledInset, {
28
+ space: space,
29
+ horizontal: horizontal,
30
+ vertical: vertical,
31
+ top: top,
32
+ right: right,
33
+ bottom: bottom,
34
+ left: left
35
+ }, children);
36
+ }
37
+
38
+ function getSpacingValue(spacingName) {
39
+ switch (spacingName) {
40
+ case "none":
41
+ return "0rem";
42
+
43
+ case "xxxsmall":
44
+ return "0.125rem";
45
+
46
+ case "xxsmall":
47
+ return "0.25rem";
48
+
49
+ case "xsmall":
50
+ return "0.5rem";
51
+
52
+ case "small":
53
+ return "1rem";
54
+
55
+ case "medium":
56
+ return "1.5rem";
57
+
58
+ case "large":
59
+ return "2rem";
60
+
61
+ case "xlarge":
62
+ return "3rem";
63
+
64
+ case "xxlarge":
65
+ return "4rem";
66
+
67
+ case "xxxlarge":
68
+ return "5rem";
69
+
70
+ default:
71
+ return "0rem";
72
+ }
73
+ }
74
+
75
+ var StyledInset = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {
76
+ var space = _ref2.space,
77
+ horizontal = _ref2.horizontal,
78
+ vertical = _ref2.vertical,
79
+ top = _ref2.top,
80
+ right = _ref2.right,
81
+ bottom = _ref2.bottom,
82
+ left = _ref2.left;
83
+ return "\n padding: ".concat(getSpacingValue(top || vertical || space), " ").concat(getSpacingValue(right || horizontal || space), "\n ").concat(getSpacingValue(bottom || vertical || space), " ").concat(getSpacingValue(left || horizontal || space), ";\n");
84
+ });
@@ -0,0 +1,229 @@
1
+ import React from "react";
2
+ import Title from "../../.storybook/components/Title";
3
+ import styled from "styled-components";
4
+ import DxcStack from "./../stack/Stack";
5
+ import DxcInset from "./Inset";
6
+
7
+ export default {
8
+ title: "Inset",
9
+ component: DxcInset,
10
+ };
11
+
12
+ export const Chromatic = () => (
13
+ <>
14
+ <Title title="Default" level={4} />
15
+ <Container>
16
+ <DxcInset>
17
+ <Placeholder></Placeholder>
18
+ </DxcInset>
19
+ </Container>
20
+ <Title title="space = none" level={4} />
21
+ <Container>
22
+ <DxcInset space="none">
23
+ <Placeholder></Placeholder>
24
+ </DxcInset>
25
+ </Container>
26
+ <Title title="space = xxxsmall" level={4} />
27
+ <Container>
28
+ <DxcInset space="xxxsmall">
29
+ <Placeholder></Placeholder>
30
+ </DxcInset>
31
+ </Container>
32
+ <Title title="space = xxsmall" level={4} />
33
+ <Container>
34
+ <DxcInset space="xxsmall">
35
+ <Placeholder></Placeholder>
36
+ </DxcInset>
37
+ </Container>
38
+ <Title title="space = xsmall" level={4} />
39
+ <Container>
40
+ <DxcInset space="xsmall">
41
+ <Placeholder></Placeholder>
42
+ </DxcInset>
43
+ </Container>
44
+ <Title title="space = small" level={4} />
45
+ <Container>
46
+ <DxcInset space="small">
47
+ <Placeholder></Placeholder>
48
+ </DxcInset>
49
+ </Container>
50
+ <Title title="space = medium" level={4} />
51
+ <Container>
52
+ <DxcInset space="medium">
53
+ <Placeholder></Placeholder>
54
+ </DxcInset>
55
+ </Container>
56
+ <Title title="space = large" level={4} />
57
+ <Container>
58
+ <DxcInset space="large">
59
+ <Placeholder></Placeholder>
60
+ </DxcInset>
61
+ </Container>
62
+ <Title title="space = xlarge" level={4} />
63
+ <Container>
64
+ <DxcInset space="xlarge">
65
+ <Placeholder></Placeholder>
66
+ </DxcInset>
67
+ </Container>
68
+ <Title title="space = xxlarge" level={4} />
69
+ <Container>
70
+ <DxcInset space="xxlarge">
71
+ <Placeholder></Placeholder>
72
+ </DxcInset>
73
+ </Container>
74
+ <Title title="space = xxxlarge" level={4} />
75
+ <Container>
76
+ <DxcInset space="xxxlarge">
77
+ <Placeholder></Placeholder>
78
+ </DxcInset>
79
+ </Container>
80
+ <Title title="horizontal = none" level={4} />
81
+ <Container>
82
+ <DxcInset horizontal="none">
83
+ <Placeholder></Placeholder>
84
+ </DxcInset>
85
+ </Container>
86
+ <Title title="horizontal = xxxsmall" level={4} />
87
+ <Container>
88
+ <DxcInset horizontal="xxxsmall">
89
+ <Placeholder></Placeholder>
90
+ </DxcInset>
91
+ </Container>
92
+ <Title title="horizontal = xxsmall" level={4} />
93
+ <Container>
94
+ <DxcInset horizontal="xxsmall">
95
+ <Placeholder></Placeholder>
96
+ </DxcInset>
97
+ </Container>
98
+ <Title title="horizontal = xsmall" level={4} />
99
+ <Container>
100
+ <DxcInset horizontal="xsmall">
101
+ <Placeholder></Placeholder>
102
+ </DxcInset>
103
+ </Container>
104
+ <Title title="horizontal = small" level={4} />
105
+ <Container>
106
+ <DxcInset horizontal="small">
107
+ <Placeholder></Placeholder>
108
+ </DxcInset>
109
+ </Container>
110
+ <Title title="horizontal = medium" level={4} />
111
+ <Container>
112
+ <DxcInset horizontal="medium">
113
+ <Placeholder></Placeholder>
114
+ </DxcInset>
115
+ </Container>
116
+ <Title title="horizontal = large" level={4} />
117
+ <Container>
118
+ <DxcInset horizontal="large">
119
+ <Placeholder></Placeholder>
120
+ </DxcInset>
121
+ </Container>
122
+ <Title title="horizontal = xlarge" level={4} />
123
+ <Container>
124
+ <DxcInset horizontal="xlarge">
125
+ <Placeholder></Placeholder>
126
+ </DxcInset>
127
+ </Container>
128
+ <Title title="horizontal = xxlarge" level={4} />
129
+ <Container>
130
+ <DxcInset horizontal="xxlarge">
131
+ <Placeholder></Placeholder>
132
+ </DxcInset>
133
+ </Container>
134
+ <Title title="horizontal = xxxlarge" level={4} />
135
+ <Container>
136
+ <DxcInset horizontal="xxxlarge">
137
+ <Placeholder></Placeholder>
138
+ </DxcInset>
139
+ </Container>
140
+ <Title title="vertical = none" level={4} />
141
+ <Container>
142
+ <DxcInset vertical="none">
143
+ <Placeholder></Placeholder>
144
+ </DxcInset>
145
+ </Container>
146
+ <Title title="vertical = xxxsmall" level={4} />
147
+ <Container>
148
+ <DxcInset vertical="xxxsmall">
149
+ <Placeholder></Placeholder>
150
+ </DxcInset>
151
+ </Container>
152
+ <Title title="vertical = xxsmall" level={4} />
153
+ <Container>
154
+ <DxcInset vertical="xxsmall">
155
+ <Placeholder></Placeholder>
156
+ </DxcInset>
157
+ </Container>
158
+ <Title title="vertical = xsmall" level={4} />
159
+ <Container>
160
+ <DxcInset vertical="xsmall">
161
+ <Placeholder></Placeholder>
162
+ </DxcInset>
163
+ </Container>
164
+ <Title title="vertical = small" level={4} />
165
+ <Container>
166
+ <DxcInset vertical="small">
167
+ <Placeholder></Placeholder>
168
+ </DxcInset>
169
+ </Container>
170
+ <Title title="vertical = medium" level={4} />
171
+ <Container>
172
+ <DxcInset vertical="medium">
173
+ <Placeholder></Placeholder>
174
+ </DxcInset>
175
+ </Container>
176
+ <Title title="vertical = large" level={4} />
177
+ <Container>
178
+ <DxcInset vertical="large">
179
+ <Placeholder></Placeholder>
180
+ </DxcInset>
181
+ </Container>
182
+ <Title title="vertical = xlarge" level={4} />
183
+ <Container>
184
+ <DxcInset vertical="xlarge">
185
+ <Placeholder></Placeholder>
186
+ </DxcInset>
187
+ </Container>
188
+ <Title title="vertical = xxlarge" level={4} />
189
+ <Container>
190
+ <DxcInset vertical="xxlarge">
191
+ <Placeholder></Placeholder>
192
+ </DxcInset>
193
+ </Container>
194
+ <Title title="vertical = xxxlarge" level={4} />
195
+ <Container>
196
+ <DxcInset vertical="xxxlarge">
197
+ <Placeholder></Placeholder>
198
+ </DxcInset>
199
+ </Container>
200
+ <Title title="top = xxsmall, right= medium, bottom = large and left = xxlarge" level={4} />
201
+ <Container>
202
+ <DxcInset top="xxsmall" right="medium" bottom="large" left="xxlarge">
203
+ <Placeholder></Placeholder>
204
+ </DxcInset>
205
+ </Container>
206
+ <Title title="Inside a stack" level={4} />
207
+ <Container>
208
+ <DxcStack gutter="medium" divider>
209
+ <Placeholder></Placeholder>
210
+ <DxcInset top="xxsmall" right="medium" bottom="large" left="xxlarge">
211
+ <Placeholder></Placeholder>
212
+ </DxcInset>
213
+ <Placeholder></Placeholder>
214
+ </DxcStack>
215
+ </Container>
216
+ </>
217
+ );
218
+
219
+ const Container = styled.div`
220
+ background: #f2eafa;
221
+ margin: 2.5rem;
222
+ `;
223
+
224
+ const Placeholder = styled.div`
225
+ min-height: 40px;
226
+ min-width: 120px;
227
+ border: 1px solid #a46ede;
228
+ background-color: #e5d5f6;
229
+ `;
@@ -0,0 +1,37 @@
1
+ /// <reference types="react" />
2
+ declare type Spacing = "none" | "xxxsmall" | "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge" | "xxxlarge";
3
+ declare type Props = {
4
+ /**
5
+ * Applies the spacing scale to all sides.
6
+ */
7
+ space?: Spacing;
8
+ /**
9
+ * Applies the spacing scale to the left and right sides.
10
+ */
11
+ horizontal?: Spacing;
12
+ /**
13
+ * Applies the spacing scale to the top and bottom sides.
14
+ */
15
+ vertical?: Spacing;
16
+ /**
17
+ * Applies the spacing scale to the top side.
18
+ */
19
+ top?: Spacing;
20
+ /**
21
+ * Applies the spacing scale to the right side.
22
+ */
23
+ right?: Spacing;
24
+ /**
25
+ * Applies the spacing scale to the bottom side.
26
+ */
27
+ bottom?: Spacing;
28
+ /**
29
+ * Applies the spacing scale to the left side.
30
+ */
31
+ left?: Spacing;
32
+ /**
33
+ * Custom content inside the inset.
34
+ */
35
+ children: React.ReactNode;
36
+ };
37
+ export default Props;
package/inset/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import AppLayoutPropsType, { AppLayoutFooterPropsType, AppLayoutMainPropsType, AppLayoutHeaderPropsType } from "./types";
3
+ declare const DxcApplicationLayout: {
4
+ ({ children }: AppLayoutPropsType): JSX.Element;
5
+ Header: ({ children }: AppLayoutHeaderPropsType) => JSX.Element;
6
+ Main: ({ children }: AppLayoutMainPropsType) => JSX.Element;
7
+ Footer: ({ children }: AppLayoutFooterPropsType) => JSX.Element;
8
+ SideNav: (props: any) => JSX.Element;
9
+ };
10
+ export default DxcApplicationLayout;