@dxc-technology/halstack-react 0.0.0-fb2efcc → 0.0.0-fb5dc94

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 (128) hide show
  1. package/README.md +46 -0
  2. package/dist/index.d.mts +6589 -0
  3. package/dist/index.d.ts +6589 -0
  4. package/dist/index.js +13742 -0
  5. package/dist/index.mjs +13684 -0
  6. package/package.json +69 -68
  7. package/BackgroundColorContext.js +0 -50
  8. package/ThemeContext.js +0 -246
  9. package/V3Select/V3Select.js +0 -455
  10. package/V3Select/index.d.ts +0 -27
  11. package/V3Textarea/V3Textarea.js +0 -260
  12. package/V3Textarea/index.d.ts +0 -27
  13. package/accordion/Accordion.js +0 -289
  14. package/accordion/index.d.ts +0 -28
  15. package/accordion-group/AccordionGroup.js +0 -184
  16. package/accordion-group/index.d.ts +0 -16
  17. package/alert/Alert.js +0 -309
  18. package/alert/index.d.ts +0 -51
  19. package/badge/Badge.js +0 -59
  20. package/box/Box.js +0 -152
  21. package/box/index.d.ts +0 -25
  22. package/button/Button.d.ts +0 -4
  23. package/button/Button.js +0 -182
  24. package/button/Button.stories.tsx +0 -306
  25. package/button/types.d.ts +0 -57
  26. package/button/types.js +0 -5
  27. package/card/Card.js +0 -200
  28. package/card/index.d.ts +0 -22
  29. package/checkbox/Checkbox.js +0 -275
  30. package/checkbox/index.d.ts +0 -24
  31. package/chip/Chip.js +0 -221
  32. package/chip/index.d.ts +0 -22
  33. package/common/OpenSans.css +0 -81
  34. package/common/RequiredComponent.js +0 -32
  35. package/common/fonts/OpenSans-Bold.ttf +0 -0
  36. package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
  37. package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
  38. package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  39. package/common/fonts/OpenSans-Italic.ttf +0 -0
  40. package/common/fonts/OpenSans-Light.ttf +0 -0
  41. package/common/fonts/OpenSans-LightItalic.ttf +0 -0
  42. package/common/fonts/OpenSans-Regular.ttf +0 -0
  43. package/common/fonts/OpenSans-SemiBold.ttf +0 -0
  44. package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  45. package/common/utils.js +0 -22
  46. package/common/variables.js +0 -1569
  47. package/date/Date.js +0 -373
  48. package/date/index.d.ts +0 -27
  49. package/date-input/DateInput.js +0 -396
  50. package/date-input/index.d.ts +0 -95
  51. package/dialog/Dialog.js +0 -184
  52. package/dialog/index.d.ts +0 -18
  53. package/dropdown/Dropdown.js +0 -450
  54. package/dropdown/index.d.ts +0 -26
  55. package/file-input/FileInput.js +0 -532
  56. package/file-input/FileItem.js +0 -193
  57. package/file-input/index.d.ts +0 -81
  58. package/footer/Footer.js +0 -297
  59. package/footer/Icons.js +0 -77
  60. package/footer/index.d.ts +0 -25
  61. package/header/Header.js +0 -326
  62. package/header/Icons.js +0 -59
  63. package/header/index.d.ts +0 -25
  64. package/heading/Heading.js +0 -176
  65. package/heading/index.d.ts +0 -17
  66. package/input-text/Icons.js +0 -22
  67. package/input-text/InputText.js +0 -611
  68. package/input-text/index.d.ts +0 -36
  69. package/layout/ApplicationLayout.js +0 -235
  70. package/layout/Icons.js +0 -55
  71. package/link/Link.js +0 -183
  72. package/link/index.d.ts +0 -23
  73. package/main.d.ts +0 -44
  74. package/main.js +0 -363
  75. package/number-input/NumberInput.js +0 -128
  76. package/number-input/NumberInputContext.js +0 -16
  77. package/number-input/index.d.ts +0 -113
  78. package/paginator/Icons.js +0 -66
  79. package/paginator/Paginator.js +0 -221
  80. package/paginator/index.d.ts +0 -20
  81. package/password-input/PasswordInput.js +0 -199
  82. package/password-input/index.d.ts +0 -94
  83. package/progress-bar/ProgressBar.js +0 -188
  84. package/progress-bar/index.d.ts +0 -18
  85. package/radio/Radio.js +0 -195
  86. package/radio/index.d.ts +0 -23
  87. package/resultsetTable/ResultsetTable.js +0 -274
  88. package/resultsetTable/index.d.ts +0 -19
  89. package/select/Select.js +0 -865
  90. package/select/index.d.ts +0 -131
  91. package/sidenav/Sidenav.js +0 -145
  92. package/sidenav/index.d.ts +0 -13
  93. package/slider/Slider.js +0 -340
  94. package/slider/index.d.ts +0 -29
  95. package/spinner/Spinner.js +0 -267
  96. package/spinner/index.d.ts +0 -17
  97. package/switch/Switch.js +0 -208
  98. package/switch/index.d.ts +0 -24
  99. package/table/Table.js +0 -118
  100. package/table/index.d.ts +0 -13
  101. package/tabs/Tabs.js +0 -259
  102. package/tabs/index.d.ts +0 -19
  103. package/tag/Tag.js +0 -208
  104. package/tag/index.d.ts +0 -24
  105. package/text-input/TextInput.js +0 -825
  106. package/text-input/index.d.ts +0 -135
  107. package/textarea/Textarea.js +0 -317
  108. package/textarea/index.d.ts +0 -117
  109. package/toggle/Toggle.js +0 -186
  110. package/toggle/index.d.ts +0 -21
  111. package/toggle-group/ToggleGroup.js +0 -243
  112. package/toggle-group/index.d.ts +0 -21
  113. package/upload/Upload.js +0 -201
  114. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  115. package/upload/buttons-upload/Icons.js +0 -40
  116. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  117. package/upload/dragAndDropArea/Icons.js +0 -39
  118. package/upload/file-upload/FileToUpload.js +0 -115
  119. package/upload/file-upload/Icons.js +0 -66
  120. package/upload/files-upload/FilesToUpload.js +0 -109
  121. package/upload/index.d.ts +0 -15
  122. package/upload/transaction/Icons.js +0 -160
  123. package/upload/transaction/Transaction.js +0 -104
  124. package/upload/transactions/Transactions.js +0 -94
  125. package/useTheme.js +0 -22
  126. package/wizard/Icons.js +0 -65
  127. package/wizard/Wizard.js +0 -271
  128. package/wizard/index.d.ts +0 -18
@@ -1,306 +0,0 @@
1
- import React from "react";
2
- import styled from "styled-components";
3
- import DxcButton from "./Button";
4
- import { BackgroundColorProvider } from "../BackgroundColorContext";
5
-
6
- export default {
7
- title: "Button ",
8
- component: DxcButton,
9
- };
10
-
11
- const iconSVG = () => {
12
- return (
13
- <svg viewBox="0 0 24 24" fill="currentColor">
14
- <path d="M0 0h24v24H0z" fill="none" />
15
- <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" />
16
- </svg>
17
- );
18
- };
19
- export const Chromatic = () => (
20
- <>
21
- <>
22
- <MainTitle>Primary</MainTitle>
23
- <Container>
24
- <ContainerTitle>Enabled</ContainerTitle>
25
- <DxcButton label="Primary enabled" />
26
- </Container>
27
- <Container className="pseudo-hover">
28
- <ContainerTitle>Hovered</ContainerTitle>
29
- <DxcButton label="Primary hovered" />
30
- </Container>
31
- <Container className="pseudo-focus">
32
- <ContainerTitle>Focused</ContainerTitle>
33
- <DxcButton label="Primary focused" />
34
- </Container>
35
- <Container className="pseudo-active">
36
- <ContainerTitle>Actived</ContainerTitle>
37
- <DxcButton label="Primary actived" />
38
- </Container>
39
- <Container>
40
- <ContainerTitle>Disabled</ContainerTitle>
41
- <DxcButton label="Primary disabled" disabled />
42
- </Container>
43
- <Container>
44
- <ContainerTitle>With left icon</ContainerTitle>
45
- <DxcButton label="Primary" icon={iconSVG} />
46
- </Container>
47
- <Container>
48
- <ContainerTitle>With right icon</ContainerTitle>
49
- <DxcButton label="Primary" icon={iconSVG} iconPosition="after" />
50
- </Container>
51
- <Container>
52
- <ContainerTitle>Only icon</ContainerTitle>
53
- <DxcButton icon={iconSVG} />
54
- </Container>
55
- </>
56
- <>
57
- <>
58
- <MainTitle>Secondary</MainTitle>
59
- <Container>
60
- <ContainerTitle>Enabled</ContainerTitle>
61
- <DxcButton mode="secondary" label="Secondary enabled" />
62
- </Container>
63
- <Container className="pseudo-hover">
64
- <ContainerTitle>Hovered</ContainerTitle>
65
- <DxcButton mode="secondary" label="Secondary hovered" />
66
- </Container>
67
- <Container className="pseudo-focus">
68
- <ContainerTitle>Focused</ContainerTitle>
69
- <DxcButton mode="secondary" label="Secondary focused" />
70
- </Container>
71
- <Container className="pseudo-active">
72
- <ContainerTitle>Actived</ContainerTitle>
73
- <DxcButton mode="secondary" label="Secondary actived" />
74
- </Container>
75
- <Container>
76
- <ContainerTitle>Disabled</ContainerTitle>
77
- <DxcButton mode="secondary" disabled label="Secondary disabled" />
78
- </Container>
79
- <Container>
80
- <ContainerTitle>With icon</ContainerTitle>
81
- <DxcButton mode="secondary" label="Secondary" icon={iconSVG} />
82
- </Container>
83
- </>
84
- <>
85
- <MainTitle>Text</MainTitle>
86
- <Container>
87
- <ContainerTitle>Enabled</ContainerTitle>
88
- <DxcButton mode="text" label="Text enabled" />
89
- </Container>
90
- <Container className="pseudo-hover">
91
- <ContainerTitle>Hovered</ContainerTitle>
92
- <DxcButton mode="text" label="Text hovered" />
93
- </Container>
94
- <Container className="pseudo-focus">
95
- <ContainerTitle>Focused</ContainerTitle>
96
- <DxcButton mode="text" label="Text focused" />
97
- </Container>
98
- <Container className="pseudo-active">
99
- <ContainerTitle>Actived</ContainerTitle>
100
- <DxcButton mode="text" label="Text actived" />
101
- </Container>
102
- <Container>
103
- <ContainerTitle>Disabled</ContainerTitle>
104
- <DxcButton mode="text" label="Text disabled" disabled />
105
- </Container>
106
- <Container>
107
- <ContainerTitle>With icon</ContainerTitle>
108
- <DxcButton label="Text" mode="text" icon={iconSVG} />
109
- </Container>
110
- </>
111
- </>
112
- <BackgroundColorProvider color="#333333">
113
- <DarkContainer>
114
- <>
115
- <MainTitle style={{ color: "white" }}>Primary</MainTitle>
116
- <Container>
117
- <ContainerTitle style={{ color: "white" }}>Enabled</ContainerTitle>
118
- <DxcButton label="Primary enabled" />
119
- </Container>
120
- <Container className="pseudo-hover">
121
- <ContainerTitle style={{ color: "white" }}>Hovered</ContainerTitle>
122
- <DxcButton label="Primary hovered" />
123
- </Container>
124
- <Container className="pseudo-focus">
125
- <ContainerTitle style={{ color: "white" }}>Focused</ContainerTitle>
126
- <DxcButton label="Primary focused" />
127
- </Container>
128
- <Container className="pseudo-active">
129
- <ContainerTitle style={{ color: "white" }}>Actived</ContainerTitle>
130
- <DxcButton label="Primary actived" />
131
- </Container>
132
- <Container>
133
- <ContainerTitle style={{ color: "white" }}>Disabled</ContainerTitle>
134
- <DxcButton label="Primary disabled" disabled />
135
- </Container>
136
- <Container style={{ color: "white" }}>
137
- <ContainerTitle>With icon</ContainerTitle>
138
- <DxcButton label="Primary" icon={iconSVG} />
139
- </Container>
140
- </>
141
- <>
142
- <MainTitle style={{ color: "white" }}>Secondary</MainTitle>
143
- <Container>
144
- <ContainerTitle style={{ color: "white" }}>Enabled</ContainerTitle>
145
- <DxcButton mode="secondary" label="Secondary enabled" />
146
- </Container>
147
- <Container className="pseudo-hover">
148
- <ContainerTitle style={{ color: "white" }}>Hovered</ContainerTitle>
149
- <DxcButton mode="secondary" label="Secondary hovered" />
150
- </Container>
151
- <Container className="pseudo-focus">
152
- <ContainerTitle style={{ color: "white" }}>Focused</ContainerTitle>
153
- <DxcButton mode="secondary" label="Secondary focused" />
154
- </Container>
155
- <Container className="pseudo-active">
156
- <ContainerTitle style={{ color: "white" }}>Actived</ContainerTitle>
157
- <DxcButton mode="secondary" label="Secondary actived" />
158
- </Container>
159
- <Container>
160
- <ContainerTitle style={{ color: "white" }}>Disabled</ContainerTitle>
161
- <DxcButton mode="secondary" disabled label="Secondary disabled" />
162
- </Container>
163
- <Container style={{ color: "white" }}>
164
- <ContainerTitle>With icon</ContainerTitle>
165
- <DxcButton mode="secondary" label="Primary" icon={iconSVG} />
166
- </Container>
167
- </>
168
- <>
169
- <MainTitle style={{ color: "white" }}>Text</MainTitle>
170
- <Container>
171
- <ContainerTitle style={{ color: "white" }}>Enabled</ContainerTitle>
172
- <DxcButton mode="text" label="Text enabled" />
173
- </Container>
174
- <Container className="pseudo-hover">
175
- <ContainerTitle style={{ color: "white" }}>Hovered</ContainerTitle>
176
- <DxcButton mode="text" label="Text hovered" />
177
- </Container>
178
- <Container className="pseudo-focus">
179
- <ContainerTitle style={{ color: "white" }}>Focused</ContainerTitle>
180
- <DxcButton mode="text" label="Text focused" />
181
- </Container>
182
- <Container className="pseudo-active">
183
- <ContainerTitle style={{ color: "white" }}>Actived</ContainerTitle>
184
- <DxcButton mode="text" label="Text actived" />
185
- </Container>
186
- <Container>
187
- <ContainerTitle style={{ color: "white" }}>Disabled</ContainerTitle>
188
- <DxcButton mode="text" label="Text disabled" disabled />
189
- </Container>
190
- <Container style={{ color: "white" }}>
191
- <ContainerTitle>With icon</ContainerTitle>
192
- <DxcButton mode="text" label="Primary" icon={iconSVG} />
193
- </Container>
194
- </>
195
- </DarkContainer>
196
- </BackgroundColorProvider>
197
- <>
198
- <MainTitle>Sizes</MainTitle>
199
- <Container>
200
- <ContainerTitle>Small size</ContainerTitle>
201
- <DxcButton label="Small" size="small" />
202
- </Container>
203
- <Container>
204
- <ContainerTitle>Medium size</ContainerTitle>
205
- <DxcButton label="MediumSiz" size="medium" />
206
- </Container>
207
- <Container>
208
- <ContainerTitle>Medium size with ellipsis</ContainerTitle>
209
- <DxcButton label="MediumSize" size="medium" />
210
- </Container>
211
- <Container>
212
- <ContainerTitle>Medium size icon after</ContainerTitle>
213
- <DxcButton label="Mediu" iconPosition="after" icon={iconSVG} size="medium" />
214
- </Container>
215
- <Container>
216
- <ContainerTitle>Medium size icon before</ContainerTitle>
217
- <DxcButton label="Mediu" iconPosition="before" icon={iconSVG} size="medium" />
218
- </Container>
219
- <Container>
220
- <ContainerTitle>Medium size icon after with ellipsis</ContainerTitle>
221
- <DxcButton label="Medium" iconPosition="after" icon={iconSVG} size="medium" />
222
- </Container>
223
- <Container>
224
- <ContainerTitle>Medium size icon before with ellipsis</ContainerTitle>
225
- <DxcButton label="Medium" iconPosition="before" icon={iconSVG} size="medium" />
226
- </Container>
227
- <Container>
228
- <ContainerTitle>Large size</ContainerTitle>
229
- <DxcButton label="LargeSizePrimaryButtonEx" size="large" />
230
- </Container>
231
- <Container>
232
- <ContainerTitle>Large size with ellipsis</ContainerTitle>
233
- <DxcButton label="LargeSizePrimaryButtonExa" size="large" />
234
- </Container>
235
- <Container>
236
- <ContainerTitle>Large size icon after</ContainerTitle>
237
- <DxcButton label="LargeSizePrimaryButto" iconPosition="after" icon={iconSVG} size="large" />
238
- </Container>
239
- <Container>
240
- <ContainerTitle>Large size icon before</ContainerTitle>
241
- <DxcButton label="LargeSizePrimaryButto" iconPosition="before" icon={iconSVG} size="large" />
242
- </Container>
243
- <Container>
244
- <ContainerTitle>Large size icon after with ellipsis</ContainerTitle>
245
- <DxcButton label="LargeSizePrimaryButton" iconPosition="after" icon={iconSVG} size="large" />
246
- </Container>
247
- <Container>
248
- <ContainerTitle>Large size icon before with ellipsis</ContainerTitle>
249
- <DxcButton label="LargeSizePrimaryButton" iconPosition="before" icon={iconSVG} size="large" />
250
- </Container>
251
- <Container>
252
- <ContainerTitle>Fill parent size</ContainerTitle>
253
- <DxcButton label="FillParent" size="fillParent" />
254
- </Container>
255
- <Container>
256
- <ContainerTitle>Fit content size</ContainerTitle>
257
- <DxcButton label="FitContent" size="fitContent" />
258
- </Container>
259
- <MainTitle>Margins</MainTitle>
260
- <Container>
261
- <ContainerTitle>Xxsmall margin</ContainerTitle>
262
- <DxcButton label="Xxsmall margin" margin="xxsmall" />
263
- </Container>
264
- <Container>
265
- <ContainerTitle>Xsmall margin</ContainerTitle>
266
- <DxcButton label="Xsmall margin" margin="xsmall" />
267
- </Container>
268
- <Container>
269
- <ContainerTitle>Small margin</ContainerTitle>
270
- <DxcButton label="Small margin" margin="small" />
271
- </Container>
272
- <Container>
273
- <ContainerTitle>Medium margin</ContainerTitle>
274
- <DxcButton label="Medium margin" margin="medium" />
275
- </Container>
276
- <Container>
277
- <ContainerTitle>Large margin</ContainerTitle>
278
- <DxcButton label="Large margin" margin="large" />
279
- </Container>
280
- <Container>
281
- <ContainerTitle>Xlarge margin</ContainerTitle>
282
- <DxcButton label="Xlarge margin" margin="xlarge" />
283
- </Container>
284
- <Container>
285
- <ContainerTitle>Xxlarge margin</ContainerTitle>
286
- <DxcButton label="Xxlarge margin" margin="xxlarge" />
287
- </Container>
288
- </>
289
- </>
290
- );
291
-
292
- const MainTitle = styled.h2`
293
- font-family: Open Sans, sans-serif;
294
- `;
295
-
296
- const ContainerTitle = styled.h4`
297
- font-family: Open Sans, sans-serif;
298
- `;
299
-
300
- const Container = styled.div`
301
- margin: 15px;
302
- `;
303
-
304
- const DarkContainer = styled.div`
305
- background-color: #333333;
306
- `;
package/button/types.d.ts DELETED
@@ -1,57 +0,0 @@
1
- declare type Size = "small" | "medium" | "large" | "fillParent" | "fitContent";
2
- declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
3
- declare type Margin = {
4
- top?: Space;
5
- bottom?: Space;
6
- left?: Space;
7
- right?: Space;
8
- };
9
- declare type SVG = string | (HTMLElement & SVGElement);
10
- declare type Props = {
11
- /**
12
- * Text to be placed next to the button.
13
- */
14
- label?: string;
15
- /**
16
- * Uses one of the available button modes.
17
- */
18
- mode?: "primary" | "secondary" | "text";
19
- /**
20
- * If true, the component will be disabled.
21
- */
22
- disabled?: boolean;
23
- /**
24
- * Whether the icon should appear after or before the label.
25
- */
26
- iconPosition?: "before" | "after";
27
- /**
28
- * This prop corresponds to the 'type' prop of the button in html.
29
- */
30
- type?: "button" | "reset" | "submit";
31
- /**
32
- * DEPRECATED. URL of the icon that will be placed next to the button label.
33
- */
34
- iconSrc?: string;
35
- /**
36
- * Element used as the icon that will be placed next to the button label.
37
- */
38
- icon?: SVG;
39
- /**
40
- * This function will be called when the user clicks the button. The event object will be passed as a parameter.
41
- */
42
- onClick?: any;
43
- /**
44
- * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
45
- * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
46
- */
47
- margin?: Space | Margin;
48
- /**
49
- * Size of the component ('small' | 'medium' | 'large' | 'fillParent' | 'fitContent').
50
- */
51
- size?: Size;
52
- /**
53
- * Value of the tabindex.
54
- */
55
- tabIndex?: number;
56
- };
57
- export default Props;
package/button/types.js DELETED
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
package/card/Card.js DELETED
@@ -1,200 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports["default"] = void 0;
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
17
-
18
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
-
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
- var _variables = require("../common/variables.js");
27
-
28
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
29
-
30
- var _Box = _interopRequireDefault(require("../box/Box"));
31
-
32
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
33
-
34
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
-
36
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
-
38
- var DxcCard = function DxcCard(_ref) {
39
- var imageSrc = _ref.imageSrc,
40
- children = _ref.children,
41
- margin = _ref.margin,
42
- contentPadding = _ref.contentPadding,
43
- linkHref = _ref.linkHref,
44
- onClick = _ref.onClick,
45
- imageBgColor = _ref.imageBgColor,
46
- imagePadding = _ref.imagePadding,
47
- imagePosition = _ref.imagePosition,
48
- outlined = _ref.outlined,
49
- imageCover = _ref.imageCover,
50
- _ref$tabIndex = _ref.tabIndex,
51
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
52
- var colorsTheme = (0, _useTheme["default"])();
53
-
54
- var _useState = (0, _react.useState)(false),
55
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
56
- isHovered = _useState2[0],
57
- changeIsHovered = _useState2[1];
58
-
59
- var tagContent = /*#__PURE__*/_react["default"].createElement(_Box["default"], {
60
- shadowDepth: outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
61
- }, /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
62
- theme: colorsTheme.card
63
- }, /*#__PURE__*/_react["default"].createElement(CardContainer, {
64
- hasAction: onClick || linkHref,
65
- outlined: outlined,
66
- imagePosition: imagePosition
67
- }, imageSrc && /*#__PURE__*/_react["default"].createElement(ImageContainer, {
68
- imageBgColor: imageBgColor
69
- }, /*#__PURE__*/_react["default"].createElement(TagImage, {
70
- imagePadding: imagePadding,
71
- cover: imageCover,
72
- src: imageSrc
73
- })), /*#__PURE__*/_react["default"].createElement(CardContent, {
74
- contentPadding: contentPadding
75
- }, children))));
76
-
77
- return /*#__PURE__*/_react["default"].createElement(StyledDxcCard, {
78
- margin: margin,
79
- onMouseEnter: function onMouseEnter() {
80
- return changeIsHovered(true);
81
- },
82
- onMouseLeave: function onMouseLeave() {
83
- return changeIsHovered(false);
84
- },
85
- onClick: onClick,
86
- hasAction: onClick,
87
- tabIndex: typeof onClick === "function" && !linkHref ? tabIndex : -1
88
- }, linkHref && /*#__PURE__*/_react["default"].createElement(StyledLink, {
89
- tabIndex: tabIndex,
90
- href: linkHref
91
- }, tagContent) || tagContent);
92
- };
93
-
94
- var StyledDxcCard = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n outline: ", ";\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (_ref2) {
95
- var hasAction = _ref2.hasAction;
96
- return hasAction && "pointer" || "unset";
97
- }, function (_ref3) {
98
- var hasAction = _ref3.hasAction;
99
- return !hasAction && "none";
100
- }, function (_ref4) {
101
- var margin = _ref4.margin;
102
- return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
103
- }, function (_ref5) {
104
- var margin = _ref5.margin;
105
- return margin && margin.top ? _variables.spaces[margin.top] : "";
106
- }, function (_ref6) {
107
- var margin = _ref6.margin;
108
- return margin && margin.right ? _variables.spaces[margin.right] : "";
109
- }, function (_ref7) {
110
- var margin = _ref7.margin;
111
- return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
112
- }, function (_ref8) {
113
- var margin = _ref8.margin;
114
- return margin && margin.left ? _variables.spaces[margin.left] : "";
115
- });
116
-
117
- var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"])), function (_ref9) {
118
- var imagePosition = _ref9.imagePosition;
119
- return imagePosition === "before" && "row" || "row-reverse";
120
- }, function (props) {
121
- return props.theme.height;
122
- }, function (props) {
123
- return props.theme.width;
124
- }, function (_ref10) {
125
- var hasAction = _ref10.hasAction;
126
- return hasAction ? "" : "unset";
127
- });
128
-
129
- var StyledLink = _styledComponents["default"].a(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: none;\n"])));
130
-
131
- var TagImage = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"])), function (_ref11) {
132
- var imagePadding = _ref11.imagePadding;
133
- return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
134
- }, function (_ref12) {
135
- var imagePadding = _ref12.imagePadding;
136
- return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
137
- }, function (_ref13) {
138
- var cover = _ref13.cover;
139
- return cover ? "cover" : "contain";
140
- });
141
-
142
- var ImageContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n width: 35%;\n height: 100%;\n flex-shrink: 0;\n background: ", ";\n justify-content: center;\n align-items: center;\n display: inline-flex;\n"])), function (_ref14) {
143
- var imageBgColor = _ref14.imageBgColor;
144
- return imageBgColor;
145
- });
146
-
147
- var CardContent = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n overflow: hidden;\n"])), function (_ref15) {
148
- var contentPadding = _ref15.contentPadding;
149
- return contentPadding && (0, _typeof2["default"])(contentPadding) !== "object" ? _variables.spaces[contentPadding] : "0px";
150
- }, function (_ref16) {
151
- var contentPadding = _ref16.contentPadding;
152
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.top ? _variables.spaces[contentPadding.top] : "";
153
- }, function (_ref17) {
154
- var contentPadding = _ref17.contentPadding;
155
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.right ? _variables.spaces[contentPadding.right] : "";
156
- }, function (_ref18) {
157
- var contentPadding = _ref18.contentPadding;
158
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.bottom ? _variables.spaces[contentPadding.bottom] : "";
159
- }, function (_ref19) {
160
- var contentPadding = _ref19.contentPadding;
161
- return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.left ? _variables.spaces[contentPadding.left] : "";
162
- });
163
-
164
- DxcCard.propTypes = {
165
- imageSrc: _propTypes["default"].string,
166
- imageBgColor: _propTypes["default"].string,
167
- imagePadding: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces))),
168
- imagePosition: _propTypes["default"].oneOf(["before", "after"]),
169
- linkHref: _propTypes["default"].string,
170
- onClick: _propTypes["default"].func,
171
- outlined: _propTypes["default"].bool,
172
- imageCover: _propTypes["default"].bool,
173
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
174
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
175
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
176
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
177
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
178
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
179
- contentPadding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
180
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
181
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
182
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
183
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
184
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
185
- tabIndex: _propTypes["default"].number
186
- };
187
- DxcCard.defaultProps = {
188
- imageSrc: null,
189
- margin: null,
190
- contentPadding: null,
191
- outlined: false,
192
- imagePadding: null,
193
- imageCover: false,
194
- linkHref: null,
195
- onClick: null,
196
- imageBgColor: "black",
197
- imagePosition: "before"
198
- };
199
- var _default = DxcCard;
200
- exports["default"] = _default;
package/card/index.d.ts DELETED
@@ -1,22 +0,0 @@
1
- type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
- type Margin = {
3
- top?: Space;
4
- bottom?: Space;
5
- left?: Space;
6
- right?: Space;
7
- };
8
-
9
- type Props = {
10
- imageSrc?: string;
11
- margin?: Space | Margin;
12
- contentPadding?: any;
13
- linkHref?: string;
14
- onClick?: void;
15
- imageBgColor?: string;
16
- imagePadding?: any;
17
- imagePosition?: "before" | "after";
18
- outlined?: boolean;
19
- imageCover?: boolean;
20
- };
21
-
22
- export default function DxcCard(props: Props): JSX.Element;