@dxc-technology/halstack-react 0.0.0-011babe → 0.0.0-0355f44
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.
- package/dist/BackgroundColorContext.js +46 -0
- package/dist/ThemeContext.js +168 -105
- package/dist/accordion/Accordion.js +127 -48
- package/dist/accordion-group/AccordionGroup.js +34 -4
- package/dist/alert/Alert.js +178 -82
- package/dist/alert/index.d.ts +51 -0
- package/dist/badge/Badge.js +28 -7
- package/dist/box/Box.js +28 -19
- package/dist/button/Button.js +50 -21
- package/dist/card/Card.js +72 -35
- package/dist/checkbox/Checkbox.js +95 -26
- package/dist/chip/Chip.js +88 -32
- package/dist/common/utils.js +2 -22
- package/dist/common/variables.js +1376 -238
- package/dist/date/Date.js +70 -43
- package/dist/date-input/DateInput.js +400 -0
- package/dist/date-input/index.d.ts +95 -0
- package/dist/dialog/Dialog.js +51 -34
- package/dist/dropdown/Dropdown.js +169 -79
- package/dist/file-input/FileInput.js +644 -0
- package/dist/file-input/FileItem.js +280 -0
- package/dist/file-input/index.d.ts +81 -0
- package/dist/footer/Footer.js +70 -47
- package/dist/footer/dxc_logo.svg +15 -0
- package/dist/header/Header.js +89 -58
- package/dist/header/dxc_logo_black.svg +8 -0
- package/dist/heading/Heading.js +86 -23
- package/dist/input-text/InputText.js +234 -104
- package/dist/layout/ApplicationLayout.js +11 -10
- package/dist/link/Link.js +84 -36
- package/dist/main.d.ts +8 -0
- package/dist/main.js +68 -4
- package/dist/new-select/NewSelect.js +836 -0
- package/dist/new-select/index.d.ts +53 -0
- package/dist/new-textarea/NewTextarea.js +369 -0
- package/dist/new-textarea/index.d.ts +117 -0
- package/dist/number-input/NumberInput.js +136 -0
- package/dist/number-input/NumberInputContext.js +16 -0
- package/dist/number-input/index.d.ts +113 -0
- package/dist/paginator/Paginator.js +56 -18
- package/dist/password-input/PasswordInput.js +198 -0
- package/dist/password-input/index.d.ts +94 -0
- package/dist/progress-bar/ProgressBar.js +89 -37
- package/dist/radio/Radio.js +28 -11
- package/dist/resultsetTable/ResultsetTable.js +76 -44
- package/dist/select/Select.js +215 -151
- package/dist/sidenav/Sidenav.js +64 -12
- package/dist/slider/Slider.js +190 -63
- package/dist/spinner/Spinner.js +245 -60
- package/dist/switch/Switch.js +50 -20
- package/dist/table/Table.js +46 -10
- package/dist/tabs/Tabs.js +47 -15
- package/dist/tag/Tag.js +64 -33
- package/dist/text-input/TextInput.js +971 -0
- package/dist/text-input/index.d.ts +135 -0
- package/dist/textarea/Textarea.js +68 -36
- package/dist/toggle/Toggle.js +0 -2
- package/dist/toggle-group/ToggleGroup.js +148 -34
- package/dist/upload/Upload.js +16 -13
- package/dist/upload/buttons-upload/ButtonsUpload.js +28 -12
- package/dist/upload/dragAndDropArea/DragAndDropArea.js +63 -20
- package/dist/upload/file-upload/FileToUpload.js +43 -19
- package/dist/upload/files-upload/FilesToUpload.js +9 -8
- package/dist/upload/readme.md +2 -2
- package/dist/upload/transaction/Transaction.js +39 -18
- package/dist/upload/transactions/Transactions.js +27 -11
- package/dist/wizard/Wizard.js +120 -48
- package/dist/wizard/invalid_icon.svg +4 -5
- package/dist/wizard/valid_icon.svg +4 -5
- package/package.json +6 -4
- package/test/AccordionGroup.test.js +16 -0
- package/test/Date.test.js +49 -45
- package/test/DateInput.test.js +242 -0
- package/test/Dropdown.test.js +15 -0
- package/test/FileInput.test.js +201 -0
- package/test/InputText.test.js +24 -16
- package/test/Link.test.js +3 -2
- package/test/NewTextarea.test.js +195 -0
- package/test/NumberInput.test.js +259 -0
- package/test/Paginator.test.js +1 -1
- package/test/PasswordInput.test.js +83 -0
- package/test/ResultsetTable.test.js +1 -2
- package/test/Select.test.js +44 -24
- package/test/Spinner.test.js +5 -0
- package/test/TextInput.test.js +732 -0
- package/test/ToggleGroup.test.js +5 -1
- package/test/Upload.test.js +5 -5
- package/dist/accordion/Accordion.stories.js +0 -207
- package/dist/accordion/readme.md +0 -96
- package/dist/accordion-group/AccordionGroup.stories.js +0 -207
- package/dist/accordion-group/readme.md +0 -70
- package/dist/alert/Alert.stories.js +0 -158
- package/dist/alert/close.svg +0 -4
- package/dist/alert/error.svg +0 -4
- package/dist/alert/info.svg +0 -4
- package/dist/alert/readme.md +0 -43
- package/dist/alert/success.svg +0 -4
- package/dist/alert/warning.svg +0 -4
- package/dist/button/Button.stories.js +0 -224
- package/dist/button/readme.md +0 -93
- package/dist/common/services/example-service.js +0 -10
- package/dist/common/services/example-service.test.js +0 -12
- package/dist/date/calendar.svg +0 -1
- package/dist/date/calendar_dark.svg +0 -1
- package/dist/dialog/Dialog.stories.js +0 -217
- package/dist/dialog/readme.md +0 -32
- package/dist/dropdown/Dropdown.stories.js +0 -249
- package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
- package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
- package/dist/dropdown/readme.md +0 -69
- package/dist/footer/Footer.stories.js +0 -94
- package/dist/footer/dxc_logo_wht.png +0 -0
- package/dist/header/dxc_logo_black.png +0 -0
- package/dist/header/dxc_logo_blk_rgb.svg +0 -6
- package/dist/header/dxc_logo_white.png +0 -0
- package/dist/input-text/InputText.stories.js +0 -209
- package/dist/select/Select.stories.js +0 -235
- package/dist/select/readme.md +0 -72
- package/dist/slider/Slider.stories.js +0 -241
- package/dist/toggle-group/readme.md +0 -82
package/dist/button/Button.js
CHANGED
|
@@ -15,7 +15,7 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/hel
|
|
|
15
15
|
|
|
16
16
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
17
17
|
|
|
18
|
-
var _react =
|
|
18
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
19
|
|
|
20
20
|
var _core = require("@material-ui/core");
|
|
21
21
|
|
|
@@ -23,16 +23,16 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
23
23
|
|
|
24
24
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
25
25
|
|
|
26
|
-
require("../common/OpenSans.css");
|
|
27
|
-
|
|
28
26
|
var _variables = require("../common/variables.js");
|
|
29
27
|
|
|
30
28
|
var _utils = require("../common/utils.js");
|
|
31
29
|
|
|
32
30
|
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
33
31
|
|
|
32
|
+
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext.js"));
|
|
33
|
+
|
|
34
34
|
function _templateObject4() {
|
|
35
|
-
var data = (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 .MuiButton-label {\n display: flex;\n flex-direction: ", ";\n align-items: center;\n }\n
|
|
35
|
+
var data = (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"]);
|
|
36
36
|
|
|
37
37
|
_templateObject4 = function _templateObject4() {
|
|
38
38
|
return data;
|
|
@@ -42,7 +42,7 @@ function _templateObject4() {
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
function _templateObject3() {
|
|
45
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height:
|
|
45
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n"]);
|
|
46
46
|
|
|
47
47
|
_templateObject3 = function _templateObject3() {
|
|
48
48
|
return data;
|
|
@@ -52,7 +52,7 @@ function _templateObject3() {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
function _templateObject2() {
|
|
55
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height:
|
|
55
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n max-height: 24px;\n max-width: 24px;\n margin-left: ", ";\n margin-right: ", ";\n overflow: hidden;\n\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"]);
|
|
56
56
|
|
|
57
57
|
_templateObject2 = function _templateObject2() {
|
|
58
58
|
return data;
|
|
@@ -62,7 +62,7 @@ function _templateObject2() {
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
function _templateObject() {
|
|
65
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n line-height:
|
|
65
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n line-height: ", ";\n font-size: ", ";\n text-overflow: ellipsis;\n overflow: hidden;\n text-transform: none;\n margin-right: ", ";\n margin-left: ", ";\n"]);
|
|
66
66
|
|
|
67
67
|
_templateObject = function _templateObject() {
|
|
68
68
|
return data;
|
|
@@ -88,29 +88,38 @@ var DxcButton = function DxcButton(_ref) {
|
|
|
88
88
|
_ref$onClick = _ref.onClick,
|
|
89
89
|
_onClick = _ref$onClick === void 0 ? "" : _ref$onClick,
|
|
90
90
|
margin = _ref.margin,
|
|
91
|
-
size = _ref.size
|
|
91
|
+
size = _ref.size,
|
|
92
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
93
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
92
94
|
|
|
93
95
|
var colorsTheme = (0, _useTheme["default"])();
|
|
96
|
+
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
94
97
|
return _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
95
98
|
theme: colorsTheme.button
|
|
96
99
|
}, _react["default"].createElement(DxCButton, {
|
|
97
100
|
type: type,
|
|
98
101
|
margin: margin,
|
|
99
|
-
mode: mode,
|
|
102
|
+
mode: mode !== "primary" && mode !== "secondary" && mode !== "text" ? "primary" : mode,
|
|
100
103
|
disabled: disabled,
|
|
101
104
|
iconPosition: iconPosition,
|
|
102
|
-
size: size
|
|
105
|
+
size: size,
|
|
106
|
+
backgroundType: backgroundType,
|
|
107
|
+
icon: icon
|
|
103
108
|
}, _react["default"].createElement(_core.Button, {
|
|
104
109
|
disabled: disabled,
|
|
105
110
|
type: type,
|
|
106
111
|
disableRipple: true,
|
|
107
112
|
"aria-disabled": disabled ? true : false,
|
|
113
|
+
tabIndex: disabled ? -1 : tabIndex,
|
|
108
114
|
onClick: function onClick() {
|
|
109
115
|
if (_onClick) {
|
|
110
116
|
_onClick();
|
|
111
117
|
}
|
|
112
118
|
}
|
|
113
|
-
},
|
|
119
|
+
}, label && _react["default"].createElement(LabelContainer, {
|
|
120
|
+
icon: icon,
|
|
121
|
+
iconPosition: iconPosition
|
|
122
|
+
}, label), icon ? _react["default"].createElement(IconContainer, {
|
|
114
123
|
label: label,
|
|
115
124
|
iconPosition: iconPosition
|
|
116
125
|
}, (0, _typeof2["default"])(icon) === "object" ? icon : _react["default"].createElement(icon)) : iconSrc && _react["default"].createElement(ButtonIcon, {
|
|
@@ -137,13 +146,19 @@ var calculateWidth = function calculateWidth(margin, size) {
|
|
|
137
146
|
};
|
|
138
147
|
|
|
139
148
|
var LabelContainer = _styledComponents["default"].span(_templateObject(), function (props) {
|
|
149
|
+
return props.theme.labelFontLineHeight;
|
|
150
|
+
}, function (props) {
|
|
140
151
|
return props.theme.fontSize;
|
|
152
|
+
}, function (props) {
|
|
153
|
+
return !props.icon || props.iconPosition === "before" ? "8px" : "0px";
|
|
154
|
+
}, function (props) {
|
|
155
|
+
return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
|
|
141
156
|
});
|
|
142
157
|
|
|
143
158
|
var IconContainer = _styledComponents["default"].div(_templateObject2(), function (props) {
|
|
144
|
-
return props.iconPosition === "after" && props.label !== "" && "
|
|
159
|
+
return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
|
|
145
160
|
}, function (props) {
|
|
146
|
-
return props.iconPosition === "before" && props.label !== "" && "
|
|
161
|
+
return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
|
|
147
162
|
});
|
|
148
163
|
|
|
149
164
|
var ButtonIcon = _styledComponents["default"].img(_templateObject3(), function (props) {
|
|
@@ -166,25 +181,38 @@ var DxCButton = _styledComponents["default"].div(_templateObject4(), function (p
|
|
|
166
181
|
return calculateWidth(props.margin, props.size);
|
|
167
182
|
}, function (props) {
|
|
168
183
|
return props.disabled && "not-allowed" || "pointer";
|
|
184
|
+
}, function (props) {
|
|
185
|
+
return props.theme.paddingLeft;
|
|
186
|
+
}, function (props) {
|
|
187
|
+
return props.theme.paddingRight;
|
|
188
|
+
}, function (props) {
|
|
189
|
+
return props.theme.paddingTop;
|
|
190
|
+
}, function (props) {
|
|
191
|
+
return props.theme.paddingBottom;
|
|
169
192
|
}, function (props) {
|
|
170
193
|
return props.iconPosition === "after" && "row" || "row-reverse";
|
|
194
|
+
}, function (props) {
|
|
195
|
+
return props.theme.fontFamily;
|
|
171
196
|
}, function (props) {
|
|
172
197
|
return props.theme.fontSize;
|
|
173
198
|
}, function (props) {
|
|
174
|
-
return props.
|
|
199
|
+
return props.theme.fontWeight;
|
|
175
200
|
}, function (props) {
|
|
176
|
-
return props.theme.
|
|
201
|
+
return props.theme.labelLetterSpacing;
|
|
202
|
+
}, function (props) {
|
|
203
|
+
return props.size === "small" && "calc(100% - 22px)" || "unset";
|
|
177
204
|
}, function (props) {
|
|
178
|
-
return props.theme.
|
|
205
|
+
return props.backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor;
|
|
179
206
|
}, function (props) {
|
|
180
|
-
var mode = props.mode
|
|
207
|
+
var mode = props.mode,
|
|
208
|
+
backgroundType = props.backgroundType;
|
|
181
209
|
|
|
182
210
|
if (mode === "primary") {
|
|
183
|
-
return "\n
|
|
211
|
+
return "\n border-radius: ".concat(props.theme.primaryBorderRadius, ";\n border-width: ").concat(props.theme.primaryBorderThickness, ";\n border-style: ").concat(props.theme.primaryBorderStyle, ";\n font-family: ").concat(props.theme.primaryFontFamily, ";\n font-size: ").concat(props.theme.primaryFontSize, ";\n font-weight: ").concat(props.theme.primaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryBackgroundColorOnDark : props.theme.primaryBackgroundColor, ";\n color: ").concat(backgroundType && backgroundType === "dark" ? props.theme.primaryFontColorOnDark : props.theme.primaryFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryHoverBackgroundColorOnDark : props.theme.primaryHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryActiveBackgroundColorOnDark : props.theme.primaryActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled { \n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledBackgroundColorOnDark : props.theme.primaryDisabledBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.primaryDisabledFontColorOnDark : props.theme.primaryDisabledFontColor, "!important; \n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
|
|
184
212
|
} else if (mode === "secondary") {
|
|
185
|
-
return "\n
|
|
213
|
+
return "\n border-radius: ".concat(props.theme.secondaryBorderRadius, ";\n border-width: ").concat(props.theme.secondaryBorderThickness, ";\n border-style: ").concat(props.theme.secondaryBorderStyle, ";\n font-family: ").concat(props.theme.secondaryFontFamily, ";\n font-size: ").concat(props.theme.secondaryFontSize, ";\n font-weight: ").concat(props.theme.secondaryFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBackgroundColorOnDark : props.theme.secondaryBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryFontColorOnDark : props.theme.secondaryFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryBorderColorOnDark : props.theme.secondaryBorderColor, ";\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverBackgroundColorOnDark : props.theme.secondaryHoverBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryActiveBackgroundColorOnDark : props.theme.secondaryActiveBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryHoverFontColorOnDark : props.theme.secondaryHoverFontColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor: not-allowed;\n background-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBackgroundColorOnDark : props.theme.secondaryDisabledBackgroundColor, " !important;\n color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledFontColorOnDark : props.theme.secondaryDisabledFontColor, " !important;\n border-color: ").concat(backgroundType === "dark" ? props.theme.secondaryDisabledBorderColorOnDark : props.theme.secondaryDisabledBorderColor, ";\n }\n .MuiButton-label {\n z-index: 5;\n }\n ");
|
|
186
214
|
} else if (mode === "text") {
|
|
187
|
-
return "\n
|
|
215
|
+
return "\n border-radius: ".concat(props.theme.textBorderRadius, ";\n border-width: ").concat(props.theme.textBorderThickness, ";\n border-style: ").concat(props.theme.textBorderStyle, ";\n font-family: ").concat(props.theme.textFontFamily, ";\n font-size: ").concat(props.theme.textFontSize, ";\n font-weight: ").concat(props.theme.textFontWeight, ";\n background-color: ").concat(backgroundType === "dark" ? props.theme.textBackgroundColorOnDark : props.theme.textBackgroundColor, ";\n color: ").concat(backgroundType === "dark" ? props.theme.textFontColorOnDark : props.theme.textFontColor, " !important;\n\n &:hover {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textHoverBackgroundColorOnDark : props.theme.textHoverBackgroundColor, ";\n }\n &:active {\n background-color: ").concat(backgroundType === "dark" ? props.theme.textActiveBackgroundColorOnDark : props.theme.textActiveBackgroundColor, " !important;\n border-color: transparent;\n box-shadow: 0 0 0 2px ").concat(backgroundType === "dark" ? props.theme.focusBorderColorOnDark : props.theme.focusBorderColor, ";\n }\n &:disabled {\n cursor:not-allowed;\n color: ").concat(backgroundType === "dark" ? props.theme.textDisabledFontColorOnDark : props.theme.textDisabledFontColor, " !important;\n background-color: ").concat(backgroundType === "dark" ? props.theme.textDisabledBackgroundColorOnDark : props.theme.textDisabledBackgroundColor, ";\n }\n ");
|
|
188
216
|
}
|
|
189
217
|
});
|
|
190
218
|
|
|
@@ -203,7 +231,8 @@ DxcButton.propTypes = {
|
|
|
203
231
|
onClick: _propTypes["default"].func,
|
|
204
232
|
iconSrc: _propTypes["default"].string,
|
|
205
233
|
icon: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].func]),
|
|
206
|
-
type: _propTypes["default"].oneOf(["button", "reset", "submit"])
|
|
234
|
+
type: _propTypes["default"].oneOf(["button", "reset", "submit"]),
|
|
235
|
+
tabIndex: _propTypes["default"].number
|
|
207
236
|
};
|
|
208
237
|
var _default = DxcButton;
|
|
209
238
|
exports["default"] = _default;
|
package/dist/card/Card.js
CHANGED
|
@@ -19,16 +19,18 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
19
19
|
|
|
20
20
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
21
|
|
|
22
|
-
var _styledComponents =
|
|
22
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
23
|
|
|
24
24
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
25
25
|
|
|
26
26
|
var _variables = require("../common/variables.js");
|
|
27
27
|
|
|
28
|
+
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
29
|
+
|
|
28
30
|
var _Box = _interopRequireDefault(require("../box/Box"));
|
|
29
31
|
|
|
30
32
|
function _templateObject6() {
|
|
31
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n
|
|
33
|
+
var data = (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"]);
|
|
32
34
|
|
|
33
35
|
_templateObject6 = function _templateObject6() {
|
|
34
36
|
return data;
|
|
@@ -38,7 +40,7 @@ function _templateObject6() {
|
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
function _templateObject5() {
|
|
41
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n width:
|
|
43
|
+
var data = (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"]);
|
|
42
44
|
|
|
43
45
|
_templateObject5 = function _templateObject5() {
|
|
44
46
|
return data;
|
|
@@ -58,7 +60,7 @@ function _templateObject4() {
|
|
|
58
60
|
}
|
|
59
61
|
|
|
60
62
|
function _templateObject3() {
|
|
61
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n text-decoration: none;\n"]);
|
|
63
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: none;\n"]);
|
|
62
64
|
|
|
63
65
|
_templateObject3 = function _templateObject3() {
|
|
64
66
|
return data;
|
|
@@ -68,7 +70,7 @@ function _templateObject3() {
|
|
|
68
70
|
}
|
|
69
71
|
|
|
70
72
|
function _templateObject2() {
|
|
71
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n
|
|
73
|
+
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"]);
|
|
72
74
|
|
|
73
75
|
_templateObject2 = function _templateObject2() {
|
|
74
76
|
return data;
|
|
@@ -78,7 +80,7 @@ function _templateObject2() {
|
|
|
78
80
|
}
|
|
79
81
|
|
|
80
82
|
function _templateObject() {
|
|
81
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n cursor: ", ";\n
|
|
83
|
+
var data = (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"]);
|
|
82
84
|
|
|
83
85
|
_templateObject = function _templateObject() {
|
|
84
86
|
return data;
|
|
@@ -91,38 +93,40 @@ var DxcCard = function DxcCard(_ref) {
|
|
|
91
93
|
var imageSrc = _ref.imageSrc,
|
|
92
94
|
children = _ref.children,
|
|
93
95
|
margin = _ref.margin,
|
|
96
|
+
contentPadding = _ref.contentPadding,
|
|
94
97
|
linkHref = _ref.linkHref,
|
|
95
98
|
onClick = _ref.onClick,
|
|
96
99
|
imageBgColor = _ref.imageBgColor,
|
|
97
100
|
imagePadding = _ref.imagePadding,
|
|
98
101
|
imagePosition = _ref.imagePosition,
|
|
99
102
|
outlined = _ref.outlined,
|
|
100
|
-
imageCover = _ref.imageCover
|
|
103
|
+
imageCover = _ref.imageCover,
|
|
104
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
105
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
106
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
101
107
|
|
|
102
108
|
var _useState = (0, _react.useState)(false),
|
|
103
109
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
104
110
|
isHovered = _useState2[0],
|
|
105
111
|
changeIsHovered = _useState2[1];
|
|
106
112
|
|
|
107
|
-
var clickHandler = function clickHandler() {
|
|
108
|
-
if (onClick) {
|
|
109
|
-
onClick();
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
|
-
|
|
113
113
|
var tagContent = _react["default"].createElement(_Box["default"], {
|
|
114
114
|
shadowDepth: outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
|
|
115
|
+
}, _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
116
|
+
theme: colorsTheme.card
|
|
115
117
|
}, _react["default"].createElement(CardContainer, {
|
|
116
118
|
hasAction: onClick || linkHref,
|
|
117
119
|
outlined: outlined,
|
|
118
120
|
imagePosition: imagePosition
|
|
119
|
-
}, _react["default"].createElement(ImageContainer, {
|
|
121
|
+
}, imageSrc && _react["default"].createElement(ImageContainer, {
|
|
120
122
|
imageBgColor: imageBgColor
|
|
121
123
|
}, _react["default"].createElement(TagImage, {
|
|
122
124
|
imagePadding: imagePadding,
|
|
123
125
|
cover: imageCover,
|
|
124
126
|
src: imageSrc
|
|
125
|
-
})), _react["default"].createElement(CardContent,
|
|
127
|
+
})), _react["default"].createElement(CardContent, {
|
|
128
|
+
contentPadding: contentPadding
|
|
129
|
+
}, children))));
|
|
126
130
|
|
|
127
131
|
return _react["default"].createElement(StyledDxcCard, {
|
|
128
132
|
margin: margin,
|
|
@@ -132,9 +136,11 @@ var DxcCard = function DxcCard(_ref) {
|
|
|
132
136
|
onMouseLeave: function onMouseLeave() {
|
|
133
137
|
return changeIsHovered(false);
|
|
134
138
|
},
|
|
135
|
-
onClick:
|
|
136
|
-
hasAction: onClick
|
|
139
|
+
onClick: onClick,
|
|
140
|
+
hasAction: onClick,
|
|
141
|
+
tabIndex: typeof onClick === "function" && !linkHref ? tabIndex : -1
|
|
137
142
|
}, linkHref && _react["default"].createElement(StyledLink, {
|
|
143
|
+
tabIndex: tabIndex,
|
|
138
144
|
href: linkHref
|
|
139
145
|
}, tagContent) || tagContent);
|
|
140
146
|
};
|
|
@@ -143,48 +149,71 @@ var StyledDxcCard = _styledComponents["default"].div(_templateObject(), function
|
|
|
143
149
|
var hasAction = _ref2.hasAction;
|
|
144
150
|
return hasAction && "pointer" || "unset";
|
|
145
151
|
}, function (_ref3) {
|
|
146
|
-
var
|
|
147
|
-
return
|
|
152
|
+
var hasAction = _ref3.hasAction;
|
|
153
|
+
return !hasAction && "none";
|
|
148
154
|
}, function (_ref4) {
|
|
149
155
|
var margin = _ref4.margin;
|
|
150
|
-
return margin && margin
|
|
156
|
+
return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
|
|
151
157
|
}, function (_ref5) {
|
|
152
158
|
var margin = _ref5.margin;
|
|
153
|
-
return margin && margin.
|
|
159
|
+
return margin && margin.top ? _variables.spaces[margin.top] : "";
|
|
154
160
|
}, function (_ref6) {
|
|
155
161
|
var margin = _ref6.margin;
|
|
156
|
-
return margin && margin.
|
|
162
|
+
return margin && margin.right ? _variables.spaces[margin.right] : "";
|
|
157
163
|
}, function (_ref7) {
|
|
158
164
|
var margin = _ref7.margin;
|
|
165
|
+
return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
|
|
166
|
+
}, function (_ref8) {
|
|
167
|
+
var margin = _ref8.margin;
|
|
159
168
|
return margin && margin.left ? _variables.spaces[margin.left] : "";
|
|
160
169
|
});
|
|
161
170
|
|
|
162
|
-
var CardContainer = _styledComponents["default"].div(_templateObject2(), function (
|
|
163
|
-
var imagePosition =
|
|
171
|
+
var CardContainer = _styledComponents["default"].div(_templateObject2(), function (_ref9) {
|
|
172
|
+
var imagePosition = _ref9.imagePosition;
|
|
164
173
|
return imagePosition === "before" && "row" || "row-reverse";
|
|
165
174
|
}, function (props) {
|
|
166
|
-
return props.
|
|
175
|
+
return props.theme.height;
|
|
176
|
+
}, function (props) {
|
|
177
|
+
return props.theme.width;
|
|
178
|
+
}, function (_ref10) {
|
|
179
|
+
var hasAction = _ref10.hasAction;
|
|
180
|
+
return hasAction ? "" : "unset";
|
|
167
181
|
});
|
|
168
182
|
|
|
169
183
|
var StyledLink = _styledComponents["default"].a(_templateObject3());
|
|
170
184
|
|
|
171
|
-
var TagImage = _styledComponents["default"].img(_templateObject4(), function (
|
|
172
|
-
var imagePadding =
|
|
185
|
+
var TagImage = _styledComponents["default"].img(_templateObject4(), function (_ref11) {
|
|
186
|
+
var imagePadding = _ref11.imagePadding;
|
|
173
187
|
return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
|
|
174
|
-
}, function (
|
|
175
|
-
var imagePadding =
|
|
188
|
+
}, function (_ref12) {
|
|
189
|
+
var imagePadding = _ref12.imagePadding;
|
|
176
190
|
return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
|
|
177
|
-
}, function (
|
|
178
|
-
var cover =
|
|
191
|
+
}, function (_ref13) {
|
|
192
|
+
var cover = _ref13.cover;
|
|
179
193
|
return cover ? "cover" : "contain";
|
|
180
194
|
});
|
|
181
195
|
|
|
182
|
-
var ImageContainer = _styledComponents["default"].div(_templateObject5(), function (
|
|
183
|
-
var imageBgColor =
|
|
196
|
+
var ImageContainer = _styledComponents["default"].div(_templateObject5(), function (_ref14) {
|
|
197
|
+
var imageBgColor = _ref14.imageBgColor;
|
|
184
198
|
return imageBgColor;
|
|
185
199
|
});
|
|
186
200
|
|
|
187
|
-
var CardContent = _styledComponents["default"].div(_templateObject6())
|
|
201
|
+
var CardContent = _styledComponents["default"].div(_templateObject6(), function (_ref15) {
|
|
202
|
+
var contentPadding = _ref15.contentPadding;
|
|
203
|
+
return contentPadding && (0, _typeof2["default"])(contentPadding) !== "object" ? _variables.spaces[contentPadding] : "0px";
|
|
204
|
+
}, function (_ref16) {
|
|
205
|
+
var contentPadding = _ref16.contentPadding;
|
|
206
|
+
return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.top ? _variables.spaces[contentPadding.top] : "";
|
|
207
|
+
}, function (_ref17) {
|
|
208
|
+
var contentPadding = _ref17.contentPadding;
|
|
209
|
+
return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.right ? _variables.spaces[contentPadding.right] : "";
|
|
210
|
+
}, function (_ref18) {
|
|
211
|
+
var contentPadding = _ref18.contentPadding;
|
|
212
|
+
return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.bottom ? _variables.spaces[contentPadding.bottom] : "";
|
|
213
|
+
}, function (_ref19) {
|
|
214
|
+
var contentPadding = _ref19.contentPadding;
|
|
215
|
+
return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.left ? _variables.spaces[contentPadding.left] : "";
|
|
216
|
+
});
|
|
188
217
|
|
|
189
218
|
DxcCard.propTypes = {
|
|
190
219
|
imageSrc: _propTypes["default"].string,
|
|
@@ -200,11 +229,19 @@ DxcCard.propTypes = {
|
|
|
200
229
|
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
201
230
|
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
202
231
|
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
203
|
-
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))])
|
|
232
|
+
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
|
|
233
|
+
contentPadding: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
234
|
+
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
235
|
+
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
236
|
+
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
237
|
+
right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
|
|
238
|
+
}), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
|
|
239
|
+
tabIndex: _propTypes["default"].number
|
|
204
240
|
};
|
|
205
241
|
DxcCard.defaultProps = {
|
|
206
242
|
imageSrc: null,
|
|
207
243
|
margin: null,
|
|
244
|
+
contentPadding: null,
|
|
208
245
|
outlined: false,
|
|
209
246
|
imagePadding: null,
|
|
210
247
|
imageCover: false,
|