@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
package/badge/types.js ADDED
@@ -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 BleedPropsType from "./types";
3
+ export default function Bleed({ space, horizontal, vertical, top, right, bottom, left, children, }: BleedPropsType): JSX.Element;
package/bleed/Bleed.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"] = Bleed;
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 Bleed(_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(StyledBleed, {
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 StyledBleed = _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 margin: -".concat(getSpacingValue(top || vertical || space), " -").concat(getSpacingValue(right || horizontal || space), " -").concat(getSpacingValue(bottom || vertical || space), " -").concat(getSpacingValue(left || horizontal || space), ";\n");
84
+ });
@@ -0,0 +1,342 @@
1
+ import React from "react";
2
+ import styled from "styled-components";
3
+ import Title from "../../.storybook/components/Title";
4
+ import DxcBleed from "./Bleed";
5
+ import DxcStack from "../stack/Stack";
6
+
7
+ export default {
8
+ title: "Bleed",
9
+ component: DxcBleed,
10
+ };
11
+
12
+ export const Chromatic = () => (
13
+ <>
14
+ <Title title="Space = none" theme="light" level={4} />
15
+ <Container>
16
+ <DxcStack gutter="medium">
17
+ <Placeholder></Placeholder>
18
+ <DxcBleed space="none">
19
+ <Placeholder></Placeholder>
20
+ </DxcBleed>
21
+ <Placeholder></Placeholder>
22
+ </DxcStack>
23
+ </Container>
24
+ <Title title="Space = xxxsmall" theme="light" level={4} />
25
+ <Container>
26
+ <DxcStack gutter="medium">
27
+ <Placeholder></Placeholder>
28
+ <DxcBleed space="xxxsmall">
29
+ <Placeholder></Placeholder>
30
+ </DxcBleed>
31
+ <Placeholder></Placeholder>
32
+ </DxcStack>
33
+ </Container>
34
+ <Title title="Space = xxsmall" theme="light" level={4} />
35
+ <Container>
36
+ <DxcStack gutter="medium">
37
+ <Placeholder></Placeholder>
38
+ <DxcBleed space="xxsmall">
39
+ <Placeholder></Placeholder>
40
+ </DxcBleed>
41
+ <Placeholder></Placeholder>
42
+ </DxcStack>
43
+ </Container>
44
+ <Title title="Space = xsmall" theme="light" level={4} />
45
+ <Container>
46
+ <DxcStack gutter="medium">
47
+ <Placeholder></Placeholder>
48
+ <DxcBleed space="xsmall">
49
+ <Placeholder></Placeholder>
50
+ </DxcBleed>
51
+ <Placeholder></Placeholder>
52
+ </DxcStack>
53
+ </Container>
54
+ <Title title="Space = small" theme="light" level={4} />
55
+ <Container>
56
+ <DxcStack gutter="medium">
57
+ <Placeholder></Placeholder>
58
+ <DxcBleed space="small">
59
+ <Placeholder></Placeholder>
60
+ </DxcBleed>
61
+ <Placeholder></Placeholder>
62
+ </DxcStack>
63
+ </Container>
64
+ <Title title="Space = medium" theme="light" level={4} />
65
+ <Container>
66
+ <DxcStack gutter="medium">
67
+ <Placeholder></Placeholder>
68
+ <DxcBleed space="medium">
69
+ <Placeholder></Placeholder>
70
+ </DxcBleed>
71
+ <Placeholder></Placeholder>
72
+ </DxcStack>
73
+ </Container>
74
+ <Title title="Space = large" theme="light" level={4} />
75
+ <Container>
76
+ <DxcStack gutter="medium">
77
+ <Placeholder></Placeholder>
78
+ <DxcBleed space="large">
79
+ <Placeholder></Placeholder>
80
+ </DxcBleed>
81
+ <Placeholder></Placeholder>
82
+ </DxcStack>
83
+ </Container>
84
+ <Title title="Space = xlarge" theme="light" level={4} />
85
+ <Container>
86
+ <DxcStack gutter="medium">
87
+ <Placeholder></Placeholder>
88
+ <DxcBleed space="xlarge">
89
+ <Placeholder></Placeholder>
90
+ </DxcBleed>
91
+ <Placeholder></Placeholder>
92
+ </DxcStack>
93
+ </Container>
94
+ <Title title="Space = xxlarge" theme="light" level={4} />
95
+ <Container>
96
+ <DxcStack gutter="medium">
97
+ <Placeholder></Placeholder>
98
+ <DxcBleed space="xxlarge">
99
+ <Placeholder></Placeholder>
100
+ </DxcBleed>
101
+ <Placeholder></Placeholder>
102
+ </DxcStack>
103
+ </Container>
104
+ <Title title="Space = xxxlarge" theme="light" level={4} />
105
+ <Container>
106
+ <DxcStack gutter="medium">
107
+ <Placeholder></Placeholder>
108
+ <DxcBleed space="xxxlarge">
109
+ <Placeholder></Placeholder>
110
+ </DxcBleed>
111
+ <Placeholder></Placeholder>
112
+ </DxcStack>
113
+ </Container>
114
+
115
+ <Title title="Horizontal = none" theme="light" level={4} />
116
+ <Container>
117
+ <DxcStack gutter="medium">
118
+ <Placeholder></Placeholder>
119
+ <DxcBleed horizontal="none">
120
+ <Placeholder></Placeholder>
121
+ </DxcBleed>
122
+ <Placeholder></Placeholder>
123
+ </DxcStack>
124
+ </Container>
125
+ <Title title="Horizontal = xxxsmall" theme="light" level={4} />
126
+ <Container>
127
+ <DxcStack gutter="medium">
128
+ <Placeholder></Placeholder>
129
+ <DxcBleed horizontal="xxxsmall">
130
+ <Placeholder></Placeholder>
131
+ </DxcBleed>
132
+ <Placeholder></Placeholder>
133
+ </DxcStack>
134
+ </Container>
135
+ <Title title="Horizontal = xxsmall" theme="light" level={4} />
136
+ <Container>
137
+ <DxcStack gutter="medium">
138
+ <Placeholder></Placeholder>
139
+ <DxcBleed horizontal="xxsmall">
140
+ <Placeholder></Placeholder>
141
+ </DxcBleed>
142
+ <Placeholder></Placeholder>
143
+ </DxcStack>
144
+ </Container>
145
+ <Title title="Horizontal = xsmall" theme="light" level={4} />
146
+ <Container>
147
+ <DxcStack gutter="medium">
148
+ <Placeholder></Placeholder>
149
+ <DxcBleed horizontal="xsmall">
150
+ <Placeholder></Placeholder>
151
+ </DxcBleed>
152
+ <Placeholder></Placeholder>
153
+ </DxcStack>
154
+ </Container>
155
+ <Title title="Horizontal = small" theme="light" level={4} />
156
+ <Container>
157
+ <DxcStack gutter="medium">
158
+ <Placeholder></Placeholder>
159
+ <DxcBleed horizontal="small">
160
+ <Placeholder></Placeholder>
161
+ </DxcBleed>
162
+ <Placeholder></Placeholder>
163
+ </DxcStack>
164
+ </Container>
165
+ <Title title="Horizontal = medium" theme="light" level={4} />
166
+ <Container>
167
+ <DxcStack gutter="medium">
168
+ <Placeholder></Placeholder>
169
+ <DxcBleed horizontal="medium">
170
+ <Placeholder></Placeholder>
171
+ </DxcBleed>
172
+ <Placeholder></Placeholder>
173
+ </DxcStack>
174
+ </Container>
175
+ <Title title="Horizontal = large" theme="light" level={4} />
176
+ <Container>
177
+ <DxcStack gutter="medium">
178
+ <Placeholder></Placeholder>
179
+ <DxcBleed horizontal="large">
180
+ <Placeholder></Placeholder>
181
+ </DxcBleed>
182
+ <Placeholder></Placeholder>
183
+ </DxcStack>
184
+ </Container>
185
+ <Title title="Horizontal = xlarge" theme="light" level={4} />
186
+ <Container>
187
+ <DxcStack gutter="medium">
188
+ <Placeholder></Placeholder>
189
+ <DxcBleed horizontal="xlarge">
190
+ <Placeholder></Placeholder>
191
+ </DxcBleed>
192
+ <Placeholder></Placeholder>
193
+ </DxcStack>
194
+ </Container>
195
+ <Title title="Horizontal = xxlarge" theme="light" level={4} />
196
+ <Container>
197
+ <DxcStack gutter="medium">
198
+ <Placeholder></Placeholder>
199
+ <DxcBleed horizontal="xxlarge">
200
+ <Placeholder></Placeholder>
201
+ </DxcBleed>
202
+ <Placeholder></Placeholder>
203
+ </DxcStack>
204
+ </Container>
205
+ <Title title="Horizontal = xxxlarge" theme="light" level={4} />
206
+ <Container>
207
+ <DxcStack gutter="medium">
208
+ <Placeholder></Placeholder>
209
+ <DxcBleed horizontal="xxxlarge">
210
+ <Placeholder></Placeholder>
211
+ </DxcBleed>
212
+ <Placeholder></Placeholder>
213
+ </DxcStack>
214
+ </Container>
215
+
216
+ <Title title="Vertical = none" theme="light" level={4} />
217
+ <Container>
218
+ <DxcStack gutter="medium">
219
+ <Placeholder></Placeholder>
220
+ <DxcBleed vertical="none">
221
+ <Placeholder></Placeholder>
222
+ </DxcBleed>
223
+ <Placeholder></Placeholder>
224
+ </DxcStack>
225
+ </Container>
226
+ <Title title="Vertical = xxxsmall" theme="light" level={4} />
227
+ <Container>
228
+ <DxcStack gutter="medium">
229
+ <Placeholder></Placeholder>
230
+ <DxcBleed vertical="xxxsmall">
231
+ <Placeholder></Placeholder>
232
+ </DxcBleed>
233
+ <Placeholder></Placeholder>
234
+ </DxcStack>
235
+ </Container>
236
+ <Title title="Vertical = xxsmall" theme="light" level={4} />
237
+ <Container>
238
+ <DxcStack gutter="medium">
239
+ <Placeholder></Placeholder>
240
+ <DxcBleed vertical="xxsmall">
241
+ <Placeholder></Placeholder>
242
+ </DxcBleed>
243
+ <Placeholder></Placeholder>
244
+ </DxcStack>
245
+ </Container>
246
+ <Title title="Vertical = xsmall" theme="light" level={4} />
247
+ <Container>
248
+ <DxcStack gutter="medium">
249
+ <Placeholder></Placeholder>
250
+ <DxcBleed vertical="xsmall">
251
+ <Placeholder></Placeholder>
252
+ </DxcBleed>
253
+ <Placeholder></Placeholder>
254
+ </DxcStack>
255
+ </Container>
256
+ <Title title="Vertical = small" theme="light" level={4} />
257
+ <Container>
258
+ <DxcStack gutter="medium">
259
+ <Placeholder></Placeholder>
260
+ <DxcBleed vertical="small">
261
+ <Placeholder></Placeholder>
262
+ </DxcBleed>
263
+ <Placeholder></Placeholder>
264
+ </DxcStack>
265
+ </Container>
266
+ <Title title="Vertical = medium" theme="light" level={4} />
267
+ <Container>
268
+ <DxcStack gutter="medium">
269
+ <Placeholder></Placeholder>
270
+ <DxcBleed vertical="medium">
271
+ <Placeholder></Placeholder>
272
+ </DxcBleed>
273
+ <Placeholder></Placeholder>
274
+ </DxcStack>
275
+ </Container>
276
+ <Title title="Vertical = large" theme="light" level={4} />
277
+ <Container>
278
+ <DxcStack gutter="medium">
279
+ <Placeholder></Placeholder>
280
+ <DxcBleed vertical="large">
281
+ <Placeholder></Placeholder>
282
+ </DxcBleed>
283
+ <Placeholder></Placeholder>
284
+ </DxcStack>
285
+ </Container>
286
+ <Title title="Vertical = xlarge" theme="light" level={4} />
287
+ <Container>
288
+ <DxcStack gutter="medium">
289
+ <Placeholder></Placeholder>
290
+ <DxcBleed vertical="xlarge">
291
+ <Placeholder></Placeholder>
292
+ </DxcBleed>
293
+ <Placeholder></Placeholder>
294
+ </DxcStack>
295
+ </Container>
296
+ <Title title="Vertical = xxlarge" theme="light" level={4} />
297
+ <Container>
298
+ <DxcStack gutter="medium">
299
+ <Placeholder></Placeholder>
300
+ <DxcBleed vertical="xxlarge">
301
+ <Placeholder></Placeholder>
302
+ </DxcBleed>
303
+ <Placeholder></Placeholder>
304
+ </DxcStack>
305
+ </Container>
306
+ <Title title="Vertical = xxxlarge" theme="light" level={4} />
307
+ <Container>
308
+ <DxcStack gutter="medium">
309
+ <Placeholder></Placeholder>
310
+ <DxcBleed vertical="xxxlarge">
311
+ <Placeholder></Placeholder>
312
+ </DxcBleed>
313
+ <Placeholder></Placeholder>
314
+ </DxcStack>
315
+ </Container>
316
+
317
+ <Title title="Top = xsmall, right = small, bottom = medium and left = large" theme="light" level={4} />
318
+ <Container>
319
+ <DxcStack gutter="medium">
320
+ <Placeholder></Placeholder>
321
+ <DxcBleed top="xsmall" right="small" bottom="medium" left="large">
322
+ <Placeholder></Placeholder>
323
+ </DxcBleed>
324
+ <Placeholder></Placeholder>
325
+ </DxcStack>
326
+ </Container>
327
+ </>
328
+ );
329
+
330
+ const Container = styled.div`
331
+ background: #f2eafa;
332
+ padding: 5rem;
333
+ margin: 2.5rem;
334
+ `;
335
+
336
+ const Placeholder = styled.div`
337
+ min-height: 40px;
338
+ min-width: 120px;
339
+ border: 1px solid #a46ede;
340
+ background-color: #e5d5f6;
341
+ `;
342
+
@@ -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 bleed.
34
+ */
35
+ children: React.ReactNode;
36
+ };
37
+ export default Props;
package/bleed/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/box/Box.js CHANGED
@@ -21,9 +21,9 @@ var _variables = require("../common/variables.js");
21
21
 
22
22
  var _utils = require("../common/utils.js");
23
23
 
24
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
25
25
 
26
- var _BackgroundColorContext = require("../BackgroundColorContext.js");
26
+ var _BackgroundColorContext = require("../BackgroundColorContext");
27
27
 
28
28
  var _templateObject;
29
29
 
@@ -0,0 +1,18 @@
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 _Card = _interopRequireDefault(require("../card/Card"));
10
+
11
+ describe("Box component tests", function () {
12
+ test("Box renders with correct text", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], null, "test-box")),
14
+ getByText = _render.getByText;
15
+
16
+ expect(getByText("test-box")).toBeTruthy();
17
+ });
18
+ });
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import ButtonPropsType from "./types";
3
- declare const DxcButton: ({ label, mode, disabled, iconPosition, type, icon, iconSrc, onClick, margin, size, tabIndex }: ButtonPropsType) => JSX.Element;
3
+ declare const DxcButton: ({ label, mode, disabled, iconPosition, type, icon, onClick, margin, size, tabIndex, }: ButtonPropsType) => JSX.Element;
4
4
  export default DxcButton;
package/button/Button.js CHANGED
@@ -9,10 +9,10 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
-
14
12
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
13
 
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
+
16
16
  var _react = _interopRequireWildcard(require("react"));
17
17
 
18
18
  var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
@@ -23,9 +23,9 @@ var _variables = require("../common/variables.js");
23
23
 
24
24
  var _utils = require("../common/utils.js");
25
25
 
26
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
26
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
27
27
 
28
- var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
28
+ var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
29
29
 
30
30
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
31
31
 
@@ -45,9 +45,7 @@ var DxcButton = function DxcButton(_ref) {
45
45
  _ref$type = _ref.type,
46
46
  type = _ref$type === void 0 ? "button" : _ref$type,
47
47
  icon = _ref.icon,
48
- _ref$iconSrc = _ref.iconSrc,
49
- iconSrc = _ref$iconSrc === void 0 ? "" : _ref$iconSrc,
50
- onClick = _ref.onClick,
48
+ _onClick = _ref.onClick,
51
49
  margin = _ref.margin,
52
50
  _ref$size = _ref.size,
53
51
  size = _ref$size === void 0 ? "fitContent" : _ref$size,
@@ -72,18 +70,18 @@ var DxcButton = function DxcButton(_ref) {
72
70
  disableRipple: true,
73
71
  "aria-disabled": disabled,
74
72
  tabIndex: disabled ? -1 : tabIndex,
75
- onClick: onClick
73
+ onClick: function onClick() {
74
+ _onClick();
75
+ }
76
76
  }, label && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
77
77
  icon: icon,
78
78
  iconPosition: iconPosition
79
- }, label), icon ? /*#__PURE__*/_react["default"].createElement(IconContainer, {
79
+ }, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
80
80
  label: label,
81
81
  iconPosition: iconPosition
82
- }, (0, _typeof2["default"])(icon) === "object" ? icon : /*#__PURE__*/_react["default"].createElement(icon)) : iconSrc && /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
83
- label: label,
84
- iconPosition: iconPosition,
85
- src: iconSrc
86
- }))));
82
+ }, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(ButtonIcon, {
83
+ src: icon
84
+ }) : icon))));
87
85
  };
88
86
 
89
87
  var sizes = {
@@ -118,11 +116,7 @@ var IconContainer = _styledComponents["default"].div(_templateObject2 || (_templ
118
116
  return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
119
117
  });
120
118
 
121
- var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"])), function (props) {
122
- return props.iconPosition === "after" && props.label !== "" && "10px" || "0px";
123
- }, function (props) {
124
- return props.iconPosition === "before" && props.label !== "" && "10px" || "0px";
125
- });
119
+ var ButtonIcon = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])([""])));
126
120
 
127
121
  var DxCButton = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n display: inline-block;\n width: ", ";\n cursor: ", ";\n\n .MuiButtonBase-root {\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n\n .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n min-width: ", ";\n width: 100%;\n height: 40px;\n transition: none !important;\n\n &:focus {\n border-color: transparent;\n box-shadow: 0 0 0 2px\n ", ";\n }\n\n ", "\n }\n"])), function (props) {
128
122
  return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
@@ -10,14 +10,12 @@ export default {
10
10
  component: DxcButton,
11
11
  };
12
12
 
13
- const iconSVG = () => {
14
- return (
15
- <svg viewBox="0 0 24 24" fill="currentColor">
16
- <path d="M0 0h24v24H0z" fill="none" />
17
- <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
18
- </svg>
19
- );
20
- };
13
+ const iconSVG = (
14
+ <svg viewBox="0 0 24 24" fill="currentColor">
15
+ <path d="M0 0h24v24H0z" fill="none" />
16
+ <path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z" />
17
+ </svg>
18
+ );
21
19
  export const Chromatic = () => (
22
20
  <>
23
21
  <Title title="Primary" theme="light" level={2} />
@@ -0,0 +1,35 @@
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 _Button = _interopRequireDefault(require("./Button"));
10
+
11
+ describe("Button component tests", function () {
12
+ test("Button renders with correct text", function () {
13
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
14
+ label: "Button"
15
+ })),
16
+ getByText = _render.getByText;
17
+
18
+ expect(getByText("Button")).toBeTruthy();
19
+ });
20
+ test("Calls correct function on click", function () {
21
+ var onClick = jest.fn();
22
+
23
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Button["default"], {
24
+ label: "Button",
25
+ onClick: onClick
26
+ })),
27
+ getByText = _render2.getByText;
28
+
29
+ var button = getByText("Button");
30
+
31
+ _react2.fireEvent.click(button);
32
+
33
+ expect(onClick).toHaveBeenCalled();
34
+ });
35
+ });