@dxc-technology/halstack-react 0.0.0-227874a → 0.0.0-22b474c
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/BackgroundColorContext.d.ts +10 -0
- package/BackgroundColorContext.js +8 -7
- package/HalstackContext.d.ts +1339 -0
- package/HalstackContext.js +335 -0
- package/accordion/Accordion.d.ts +4 -0
- package/accordion/Accordion.js +124 -243
- package/accordion/Accordion.stories.tsx +395 -0
- package/accordion/Accordion.test.js +71 -0
- package/accordion/types.d.ts +69 -0
- package/accordion/types.js +5 -0
- package/accordion-group/AccordionGroup.d.ts +7 -0
- package/accordion-group/AccordionGroup.js +70 -107
- package/accordion-group/AccordionGroup.stories.tsx +251 -0
- package/accordion-group/AccordionGroup.test.js +126 -0
- package/accordion-group/types.d.ts +79 -0
- package/accordion-group/types.js +5 -0
- package/alert/Alert.d.ts +4 -0
- package/alert/Alert.js +45 -157
- package/alert/Alert.stories.tsx +198 -0
- package/alert/Alert.test.js +92 -0
- package/alert/types.d.ts +49 -0
- package/alert/types.js +5 -0
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +15 -17
- package/badge/types.d.ts +5 -0
- package/badge/types.js +5 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +51 -0
- package/bleed/Bleed.stories.tsx +342 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.d.ts +4 -0
- package/box/Box.js +39 -81
- package/box/Box.stories.tsx +147 -0
- package/box/Box.test.js +18 -0
- package/box/types.d.ts +44 -0
- package/box/types.js +5 -0
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +123 -0
- package/bulleted-list/BulletedList.stories.tsx +200 -0
- package/bulleted-list/types.d.ts +11 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.d.ts +4 -0
- package/button/Button.js +60 -145
- package/button/Button.stories.tsx +425 -0
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +53 -0
- package/button/types.js +5 -0
- package/card/Card.d.ts +4 -0
- package/card/Card.js +53 -147
- package/card/Card.stories.tsx +200 -0
- package/card/Card.test.js +50 -0
- package/card/ice-cream.jpg +0 -0
- package/card/types.d.ts +68 -0
- package/card/types.js +5 -0
- package/checkbox/Checkbox.d.ts +4 -0
- package/checkbox/Checkbox.js +112 -161
- package/checkbox/Checkbox.stories.tsx +260 -0
- package/checkbox/Checkbox.test.js +155 -0
- package/checkbox/types.d.ts +68 -0
- package/checkbox/types.js +5 -0
- package/chip/Chip.d.ts +4 -0
- package/chip/Chip.js +32 -144
- package/chip/Chip.stories.tsx +206 -0
- package/chip/Chip.test.js +54 -0
- package/chip/types.d.ts +45 -0
- package/chip/types.js +5 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +4 -4
- package/common/variables.d.ts +1625 -0
- package/common/variables.js +582 -644
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +258 -0
- package/date-input/DateInput.d.ts +4 -0
- package/date-input/DateInput.js +179 -310
- package/date-input/DateInput.stories.tsx +304 -0
- package/date-input/DateInput.test.js +835 -0
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +146 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +75 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +126 -0
- package/date-input/types.d.ts +158 -0
- package/date-input/types.js +5 -0
- package/dialog/Dialog.d.ts +4 -0
- package/dialog/Dialog.js +81 -150
- package/dialog/Dialog.stories.tsx +319 -0
- package/dialog/Dialog.test.js +369 -0
- package/dialog/types.d.ts +44 -0
- package/dialog/types.js +5 -0
- package/dropdown/Dropdown.d.ts +4 -0
- package/dropdown/Dropdown.js +246 -402
- package/dropdown/Dropdown.stories.tsx +438 -0
- package/dropdown/Dropdown.test.js +586 -0
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +70 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +79 -0
- package/dropdown/types.d.ts +100 -0
- package/dropdown/types.js +5 -0
- package/file-input/FileInput.d.ts +4 -0
- package/file-input/FileInput.js +210 -307
- package/file-input/FileInput.stories.tsx +618 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.d.ts +4 -0
- package/file-input/FileItem.js +58 -183
- package/file-input/types.d.ts +129 -0
- package/file-input/types.js +5 -0
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +69 -0
- package/flex/Flex.stories.tsx +98 -0
- package/flex/types.d.ts +32 -0
- package/flex/types.js +5 -0
- package/footer/Footer.d.ts +4 -0
- package/footer/Footer.js +51 -289
- package/footer/Footer.stories.tsx +228 -0
- package/footer/Footer.test.js +97 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +16 -16
- package/footer/types.d.ts +66 -0
- package/footer/types.js +5 -0
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +91 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/grid/types.js +5 -0
- package/header/Header.d.ts +8 -0
- package/header/Header.js +136 -303
- package/header/Header.stories.tsx +315 -0
- package/header/Header.test.js +79 -0
- package/header/Icons.d.ts +2 -0
- package/header/Icons.js +9 -34
- package/header/types.d.ts +48 -0
- package/header/types.js +5 -0
- package/heading/Heading.d.ts +4 -0
- package/heading/Heading.js +26 -97
- package/heading/Heading.stories.tsx +54 -0
- package/heading/Heading.test.js +186 -0
- package/heading/types.d.ts +33 -0
- package/heading/types.js +5 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +51 -0
- package/inset/Inset.stories.tsx +230 -0
- package/inset/types.d.ts +37 -0
- package/inset/types.js +5 -0
- package/layout/ApplicationLayout.d.ts +20 -0
- package/layout/ApplicationLayout.js +77 -233
- package/layout/ApplicationLayout.stories.tsx +162 -0
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +19 -8
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +19 -0
- package/layout/types.d.ts +41 -0
- package/layout/types.js +5 -0
- package/link/Link.d.ts +4 -0
- package/link/Link.js +66 -167
- package/link/Link.stories.tsx +253 -0
- package/link/Link.test.js +81 -0
- package/link/types.d.ts +54 -0
- package/link/types.js +5 -0
- package/main.d.ts +45 -40
- package/main.js +122 -104
- package/nav-tabs/NavTabs.d.ts +8 -0
- package/nav-tabs/NavTabs.js +125 -0
- package/nav-tabs/NavTabs.stories.tsx +260 -0
- package/nav-tabs/NavTabs.test.js +82 -0
- package/nav-tabs/Tab.d.ts +4 -0
- package/nav-tabs/Tab.js +150 -0
- package/nav-tabs/types.d.ts +53 -0
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +4 -0
- package/number-input/NumberInput.js +21 -81
- package/number-input/NumberInput.stories.tsx +115 -0
- package/number-input/NumberInput.test.js +542 -0
- package/number-input/NumberInputContext.d.ts +4 -0
- package/number-input/NumberInputContext.js +5 -2
- package/number-input/numberInputContextTypes.d.ts +19 -0
- package/number-input/numberInputContextTypes.js +5 -0
- package/number-input/types.d.ts +124 -0
- package/number-input/types.js +5 -0
- package/package.json +35 -33
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +25 -37
- package/paginator/Paginator.d.ts +4 -0
- package/paginator/Paginator.js +30 -172
- package/paginator/Paginator.stories.tsx +87 -0
- package/paginator/Paginator.test.js +305 -0
- package/paginator/types.d.ts +38 -0
- package/paginator/types.js +5 -0
- package/paragraph/Paragraph.d.ts +5 -0
- package/paragraph/Paragraph.js +38 -0
- package/paragraph/Paragraph.stories.tsx +44 -0
- package/password-input/PasswordInput.d.ts +4 -0
- package/password-input/PasswordInput.js +40 -77
- package/password-input/PasswordInput.stories.tsx +131 -0
- package/password-input/PasswordInput.test.js +181 -0
- package/password-input/types.d.ts +110 -0
- package/password-input/types.js +5 -0
- package/progress-bar/ProgressBar.d.ts +4 -0
- package/progress-bar/ProgressBar.js +76 -142
- package/progress-bar/ProgressBar.stories.jsx +93 -0
- package/progress-bar/ProgressBar.test.js +110 -0
- package/progress-bar/types.d.ts +37 -0
- package/progress-bar/types.js +5 -0
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +117 -0
- package/quick-nav/QuickNav.stories.tsx +356 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio-group/Radio.d.ts +4 -0
- package/radio-group/Radio.js +156 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +283 -0
- package/radio-group/RadioGroup.stories.tsx +214 -0
- package/radio-group/RadioGroup.test.js +722 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultsetTable/Icons.d.ts +7 -0
- package/resultsetTable/Icons.js +51 -0
- package/resultsetTable/ResultsetTable.d.ts +4 -0
- package/resultsetTable/ResultsetTable.js +61 -224
- package/resultsetTable/ResultsetTable.stories.tsx +300 -0
- package/resultsetTable/ResultsetTable.test.js +325 -0
- package/resultsetTable/types.d.ts +67 -0
- package/resultsetTable/types.js +5 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +93 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +169 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +97 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +281 -751
- package/select/Select.stories.tsx +971 -0
- package/select/Select.test.js +2228 -0
- package/select/types.d.ts +210 -0
- package/select/types.js +5 -0
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +51 -0
- package/sidenav/Sidenav.d.ts +10 -0
- package/sidenav/Sidenav.js +155 -94
- package/sidenav/Sidenav.stories.tsx +282 -0
- package/sidenav/Sidenav.test.js +44 -0
- package/sidenav/types.d.ts +76 -0
- package/sidenav/types.js +5 -0
- package/slider/Slider.d.ts +4 -0
- package/slider/Slider.js +167 -229
- package/slider/Slider.stories.tsx +240 -0
- package/slider/Slider.test.js +250 -0
- package/slider/types.d.ts +86 -0
- package/slider/types.js +5 -0
- package/spinner/Spinner.d.ts +4 -0
- package/spinner/Spinner.js +57 -194
- package/spinner/Spinner.stories.jsx +129 -0
- package/spinner/Spinner.test.js +64 -0
- package/spinner/types.d.ts +32 -0
- package/spinner/types.js +5 -0
- package/switch/Switch.d.ts +4 -0
- package/switch/Switch.js +163 -123
- package/switch/Switch.stories.tsx +171 -0
- package/switch/Switch.test.js +225 -0
- package/switch/types.d.ts +66 -0
- package/switch/types.js +5 -0
- package/table/Table.d.ts +4 -0
- package/table/Table.js +14 -28
- package/table/Table.stories.jsx +356 -0
- package/table/Table.test.js +26 -0
- package/table/types.d.ts +21 -0
- package/table/types.js +5 -0
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +132 -0
- package/tabs/Tabs.d.ts +4 -0
- package/tabs/Tabs.js +351 -233
- package/tabs/Tabs.stories.tsx +226 -0
- package/tabs/Tabs.test.js +350 -0
- package/tabs/types.d.ts +92 -0
- package/tabs/types.js +5 -0
- package/tag/Tag.d.ts +4 -0
- package/tag/Tag.js +47 -148
- package/tag/Tag.stories.tsx +155 -0
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +69 -0
- package/tag/types.js +5 -0
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +60 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +84 -0
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +134 -0
- package/text-input/TextInput.d.ts +4 -0
- package/text-input/TextInput.js +262 -579
- package/text-input/TextInput.stories.tsx +569 -0
- package/text-input/TextInput.test.js +1723 -0
- package/text-input/types.d.ts +197 -0
- package/text-input/types.js +5 -0
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +51 -144
- package/textarea/Textarea.stories.jsx +216 -0
- package/textarea/Textarea.test.js +435 -0
- package/textarea/types.d.ts +137 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +4 -0
- package/toggle-group/ToggleGroup.js +42 -151
- package/toggle-group/ToggleGroup.stories.tsx +215 -0
- package/toggle-group/ToggleGroup.test.js +156 -0
- package/toggle-group/types.d.ts +105 -0
- package/toggle-group/types.js +5 -0
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +32 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/useTheme.d.ts +1235 -0
- package/useTheme.js +3 -3
- package/useTranslatedLabels.d.ts +85 -0
- package/useTranslatedLabels.js +20 -0
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +108 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +139 -0
- package/wizard/Wizard.d.ts +4 -0
- package/wizard/Wizard.js +134 -254
- package/wizard/Wizard.stories.tsx +253 -0
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +64 -0
- package/wizard/types.js +5 -0
- package/ThemeContext.js +0 -250
- package/V3Select/V3Select.js +0 -549
- package/V3Select/index.d.ts +0 -27
- package/V3Textarea/V3Textarea.js +0 -264
- package/V3Textarea/index.d.ts +0 -27
- package/accordion/index.d.ts +0 -28
- package/accordion-group/index.d.ts +0 -16
- package/alert/index.d.ts +0 -51
- package/box/index.d.ts +0 -25
- package/button/Button.stories.js +0 -27
- package/button/index.d.ts +0 -24
- package/card/index.d.ts +0 -22
- package/checkbox/index.d.ts +0 -24
- package/chip/index.d.ts +0 -22
- package/common/RequiredComponent.js +0 -40
- package/date/Date.js +0 -379
- package/date/index.d.ts +0 -27
- package/date-input/index.d.ts +0 -95
- package/dialog/index.d.ts +0 -18
- package/dropdown/index.d.ts +0 -26
- package/file-input/index.d.ts +0 -81
- package/footer/index.d.ts +0 -25
- package/header/index.d.ts +0 -25
- package/heading/index.d.ts +0 -17
- package/input-text/Icons.js +0 -22
- package/input-text/InputText.js +0 -705
- package/input-text/index.d.ts +0 -36
- package/link/index.d.ts +0 -23
- package/number-input/index.d.ts +0 -113
- package/paginator/index.d.ts +0 -20
- package/password-input/index.d.ts +0 -94
- package/progress-bar/index.d.ts +0 -18
- package/radio/Radio.js +0 -209
- package/radio/index.d.ts +0 -23
- package/resultsetTable/index.d.ts +0 -19
- package/select/index.d.ts +0 -131
- package/sidenav/index.d.ts +0 -13
- package/slider/index.d.ts +0 -29
- package/spinner/index.d.ts +0 -17
- package/switch/index.d.ts +0 -24
- package/table/index.d.ts +0 -13
- package/tabs/index.d.ts +0 -19
- package/tag/index.d.ts +0 -24
- package/text-input/index.d.ts +0 -135
- package/textarea/index.d.ts +0 -117
- package/toggle/Toggle.js +0 -220
- package/toggle/index.d.ts +0 -21
- package/toggle-group/index.d.ts +0 -21
- package/upload/Upload.js +0 -205
- package/upload/buttons-upload/ButtonsUpload.js +0 -135
- package/upload/buttons-upload/Icons.js +0 -40
- package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
- package/upload/dragAndDropArea/Icons.js +0 -39
- package/upload/file-upload/FileToUpload.js +0 -189
- package/upload/file-upload/Icons.js +0 -66
- package/upload/files-upload/FilesToUpload.js +0 -123
- package/upload/index.d.ts +0 -15
- package/upload/transaction/Icons.js +0 -160
- package/upload/transaction/Transaction.js +0 -148
- package/upload/transactions/Transactions.js +0 -138
- package/wizard/Icons.js +0 -65
- package/wizard/index.d.ts +0 -18
package/card/Card.js
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
-
|
|
5
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
4
|
|
|
5
|
+
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
10
|
exports["default"] = void 0;
|
|
11
11
|
|
|
12
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
13
|
|
|
16
14
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
@@ -21,88 +19,36 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
21
19
|
|
|
22
20
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
23
21
|
|
|
24
|
-
var
|
|
22
|
+
var _variables = require("../common/variables");
|
|
25
23
|
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
var _useTheme = _interopRequireDefault(require("../useTheme.js"));
|
|
24
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
29
25
|
|
|
30
26
|
var _Box = _interopRequireDefault(require("../box/Box"));
|
|
31
27
|
|
|
32
|
-
|
|
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"]);
|
|
34
|
-
|
|
35
|
-
_templateObject6 = function _templateObject6() {
|
|
36
|
-
return data;
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
return data;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
function _templateObject5() {
|
|
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"]);
|
|
44
|
-
|
|
45
|
-
_templateObject5 = function _templateObject5() {
|
|
46
|
-
return data;
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
return data;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
function _templateObject4() {
|
|
53
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"]);
|
|
54
|
-
|
|
55
|
-
_templateObject4 = function _templateObject4() {
|
|
56
|
-
return data;
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
return data;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
function _templateObject3() {
|
|
63
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n text-decoration: none;\n"]);
|
|
64
|
-
|
|
65
|
-
_templateObject3 = function _templateObject3() {
|
|
66
|
-
return data;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
return data;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
function _templateObject2() {
|
|
73
|
-
var data = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n flex-direction: ", ";\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"]);
|
|
74
|
-
|
|
75
|
-
_templateObject2 = function _templateObject2() {
|
|
76
|
-
return data;
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
return data;
|
|
80
|
-
}
|
|
28
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
81
29
|
|
|
82
|
-
function
|
|
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"]);
|
|
30
|
+
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); }
|
|
84
31
|
|
|
85
|
-
|
|
86
|
-
return data;
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
return data;
|
|
90
|
-
}
|
|
32
|
+
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; }
|
|
91
33
|
|
|
92
34
|
var DxcCard = function DxcCard(_ref) {
|
|
93
35
|
var imageSrc = _ref.imageSrc,
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
36
|
+
_ref$imageBgColor = _ref.imageBgColor,
|
|
37
|
+
imageBgColor = _ref$imageBgColor === void 0 ? "black" : _ref$imageBgColor,
|
|
38
|
+
imagePadding = _ref.imagePadding,
|
|
39
|
+
_ref$imagePosition = _ref.imagePosition,
|
|
40
|
+
imagePosition = _ref$imagePosition === void 0 ? "before" : _ref$imagePosition,
|
|
97
41
|
linkHref = _ref.linkHref,
|
|
98
42
|
onClick = _ref.onClick,
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
imageCover = _ref.imageCover,
|
|
43
|
+
_ref$imageCover = _ref.imageCover,
|
|
44
|
+
imageCover = _ref$imageCover === void 0 ? false : _ref$imageCover,
|
|
45
|
+
margin = _ref.margin,
|
|
46
|
+
contentPadding = _ref.contentPadding,
|
|
104
47
|
_ref$tabIndex = _ref.tabIndex,
|
|
105
|
-
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex
|
|
48
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
|
|
49
|
+
_ref$outlined = _ref.outlined,
|
|
50
|
+
outlined = _ref$outlined === void 0 ? true : _ref$outlined,
|
|
51
|
+
children = _ref.children;
|
|
106
52
|
var colorsTheme = (0, _useTheme["default"])();
|
|
107
53
|
|
|
108
54
|
var _useState = (0, _react.useState)(false),
|
|
@@ -110,25 +56,15 @@ var DxcCard = function DxcCard(_ref) {
|
|
|
110
56
|
isHovered = _useState2[0],
|
|
111
57
|
changeIsHovered = _useState2[1];
|
|
112
58
|
|
|
113
|
-
var
|
|
114
|
-
shadowDepth: outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
|
|
115
|
-
}, _react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
116
|
-
theme: colorsTheme.card
|
|
117
|
-
}, _react["default"].createElement(CardContainer, {
|
|
118
|
-
hasAction: onClick || linkHref,
|
|
119
|
-
outlined: outlined,
|
|
120
|
-
imagePosition: imagePosition
|
|
121
|
-
}, imageSrc && _react["default"].createElement(ImageContainer, {
|
|
59
|
+
var imageComponent = /*#__PURE__*/_react["default"].createElement(ImageContainer, {
|
|
122
60
|
imageBgColor: imageBgColor
|
|
123
|
-
}, _react["default"].createElement(TagImage, {
|
|
61
|
+
}, /*#__PURE__*/_react["default"].createElement(TagImage, {
|
|
124
62
|
imagePadding: imagePadding,
|
|
125
|
-
|
|
63
|
+
imageCover: imageCover,
|
|
126
64
|
src: imageSrc
|
|
127
|
-
}))
|
|
128
|
-
contentPadding: contentPadding
|
|
129
|
-
}, children))));
|
|
65
|
+
}));
|
|
130
66
|
|
|
131
|
-
return _react["default"].createElement(StyledDxcCard, {
|
|
67
|
+
return /*#__PURE__*/_react["default"].createElement(StyledDxcCard, {
|
|
132
68
|
margin: margin,
|
|
133
69
|
onMouseEnter: function onMouseEnter() {
|
|
134
70
|
return changeIsHovered(true);
|
|
@@ -137,15 +73,22 @@ var DxcCard = function DxcCard(_ref) {
|
|
|
137
73
|
return changeIsHovered(false);
|
|
138
74
|
},
|
|
139
75
|
onClick: onClick,
|
|
140
|
-
hasAction: onClick,
|
|
141
|
-
tabIndex:
|
|
142
|
-
|
|
143
|
-
tabIndex: tabIndex,
|
|
76
|
+
hasAction: onClick || linkHref,
|
|
77
|
+
tabIndex: onClick || linkHref ? tabIndex : -1,
|
|
78
|
+
as: linkHref && "a",
|
|
144
79
|
href: linkHref
|
|
145
|
-
},
|
|
80
|
+
}, /*#__PURE__*/_react["default"].createElement(_Box["default"], {
|
|
81
|
+
shadowDepth: !outlined ? 0 : isHovered && (onClick || linkHref) ? 2 : 1
|
|
82
|
+
}, /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
83
|
+
theme: colorsTheme.card
|
|
84
|
+
}, /*#__PURE__*/_react["default"].createElement(CardContainer, {
|
|
85
|
+
hasAction: onClick || linkHref
|
|
86
|
+
}, imageSrc && imagePosition === "before" && imageComponent, /*#__PURE__*/_react["default"].createElement(CardContent, {
|
|
87
|
+
contentPadding: contentPadding
|
|
88
|
+
}, children), imageSrc && imagePosition === "after" && imageComponent))));
|
|
146
89
|
};
|
|
147
90
|
|
|
148
|
-
var StyledDxcCard = _styledComponents["default"].div(_templateObject(), function (_ref2) {
|
|
91
|
+
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 text-decoration: none;\n ", "\n"])), function (_ref2) {
|
|
149
92
|
var hasAction = _ref2.hasAction;
|
|
150
93
|
return hasAction && "pointer" || "unset";
|
|
151
94
|
}, function (_ref3) {
|
|
@@ -156,22 +99,22 @@ var StyledDxcCard = _styledComponents["default"].div(_templateObject(), function
|
|
|
156
99
|
return margin && (0, _typeof2["default"])(margin) !== "object" ? _variables.spaces[margin] : "0px";
|
|
157
100
|
}, function (_ref5) {
|
|
158
101
|
var margin = _ref5.margin;
|
|
159
|
-
return margin && margin.top ? _variables.spaces[margin.top] : "";
|
|
102
|
+
return margin && (0, _typeof2["default"])(margin) === "object" && margin.top ? _variables.spaces[margin.top] : "";
|
|
160
103
|
}, function (_ref6) {
|
|
161
104
|
var margin = _ref6.margin;
|
|
162
|
-
return margin && margin.right ? _variables.spaces[margin.right] : "";
|
|
105
|
+
return margin && (0, _typeof2["default"])(margin) === "object" && margin.right ? _variables.spaces[margin.right] : "";
|
|
163
106
|
}, function (_ref7) {
|
|
164
107
|
var margin = _ref7.margin;
|
|
165
|
-
return margin && margin.bottom ? _variables.spaces[margin.bottom] : "";
|
|
108
|
+
return margin && (0, _typeof2["default"])(margin) === "object" && margin.bottom ? _variables.spaces[margin.bottom] : "";
|
|
166
109
|
}, function (_ref8) {
|
|
167
110
|
var margin = _ref8.margin;
|
|
168
|
-
return margin && margin.left ? _variables.spaces[margin.left] : "";
|
|
111
|
+
return margin && (0, _typeof2["default"])(margin) === "object" && margin.left ? _variables.spaces[margin.left] : "";
|
|
112
|
+
}, function (_ref9) {
|
|
113
|
+
var hasAction = _ref9.hasAction;
|
|
114
|
+
return hasAction && ":focus {\n outline: #0095ff auto 1px;\n }";
|
|
169
115
|
});
|
|
170
116
|
|
|
171
|
-
var CardContainer = _styledComponents["default"].div(_templateObject2(), function (
|
|
172
|
-
var imagePosition = _ref9.imagePosition;
|
|
173
|
-
return imagePosition === "before" && "row" || "row-reverse";
|
|
174
|
-
}, function (props) {
|
|
117
|
+
var CardContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-flex;\n height: ", ";\n width: ", ";\n &:hover {\n border-color: ", ";\n }\n"])), function (props) {
|
|
175
118
|
return props.theme.height;
|
|
176
119
|
}, function (props) {
|
|
177
120
|
return props.theme.width;
|
|
@@ -180,25 +123,23 @@ var CardContainer = _styledComponents["default"].div(_templateObject2(), functio
|
|
|
180
123
|
return hasAction ? "" : "unset";
|
|
181
124
|
});
|
|
182
125
|
|
|
183
|
-
var
|
|
184
|
-
|
|
185
|
-
var TagImage = _styledComponents["default"].img(_templateObject4(), function (_ref11) {
|
|
126
|
+
var TagImage = _styledComponents["default"].img(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n height: ", ";\n width: ", ";\n object-fit: ", ";\n"])), function (_ref11) {
|
|
186
127
|
var imagePadding = _ref11.imagePadding;
|
|
187
|
-
return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
|
|
128
|
+
return !imagePadding ? "100%" : (0, _typeof2["default"])(imagePadding) !== "object" && "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
|
|
188
129
|
}, function (_ref12) {
|
|
189
130
|
var imagePadding = _ref12.imagePadding;
|
|
190
|
-
return !imagePadding ? "100%" : "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
|
|
131
|
+
return !imagePadding ? "100%" : (0, _typeof2["default"])(imagePadding) !== "object" && "calc(100% - ".concat(_variables.spaces[imagePadding], " - ").concat(_variables.spaces[imagePadding], ")");
|
|
191
132
|
}, function (_ref13) {
|
|
192
|
-
var
|
|
193
|
-
return
|
|
133
|
+
var imageCover = _ref13.imageCover;
|
|
134
|
+
return imageCover ? "cover" : "contain";
|
|
194
135
|
});
|
|
195
136
|
|
|
196
|
-
var ImageContainer = _styledComponents["default"].div(
|
|
137
|
+
var ImageContainer = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (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) {
|
|
197
138
|
var imageBgColor = _ref14.imageBgColor;
|
|
198
139
|
return imageBgColor;
|
|
199
140
|
});
|
|
200
141
|
|
|
201
|
-
var CardContent = _styledComponents["default"].div(
|
|
142
|
+
var CardContent = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (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) {
|
|
202
143
|
var contentPadding = _ref15.contentPadding;
|
|
203
144
|
return contentPadding && (0, _typeof2["default"])(contentPadding) !== "object" ? _variables.spaces[contentPadding] : "0px";
|
|
204
145
|
}, function (_ref16) {
|
|
@@ -215,40 +156,5 @@ var CardContent = _styledComponents["default"].div(_templateObject6(), function
|
|
|
215
156
|
return contentPadding && (0, _typeof2["default"])(contentPadding) === "object" && contentPadding.left ? _variables.spaces[contentPadding.left] : "";
|
|
216
157
|
});
|
|
217
158
|
|
|
218
|
-
DxcCard.propTypes = {
|
|
219
|
-
imageSrc: _propTypes["default"].string,
|
|
220
|
-
imageBgColor: _propTypes["default"].string,
|
|
221
|
-
imagePadding: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces))),
|
|
222
|
-
imagePosition: _propTypes["default"].oneOf(["before", "after"]),
|
|
223
|
-
linkHref: _propTypes["default"].string,
|
|
224
|
-
onClick: _propTypes["default"].func,
|
|
225
|
-
outlined: _propTypes["default"].bool,
|
|
226
|
-
imageCover: _propTypes["default"].bool,
|
|
227
|
-
margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
|
|
228
|
-
top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
229
|
-
bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
230
|
-
left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
|
|
231
|
-
right: _propTypes["default"].oneOf(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
|
|
240
|
-
};
|
|
241
|
-
DxcCard.defaultProps = {
|
|
242
|
-
imageSrc: null,
|
|
243
|
-
margin: null,
|
|
244
|
-
contentPadding: null,
|
|
245
|
-
outlined: false,
|
|
246
|
-
imagePadding: null,
|
|
247
|
-
imageCover: false,
|
|
248
|
-
linkHref: null,
|
|
249
|
-
onClick: null,
|
|
250
|
-
imageBgColor: "black",
|
|
251
|
-
imagePosition: "before"
|
|
252
|
-
};
|
|
253
159
|
var _default = DxcCard;
|
|
254
160
|
exports["default"] = _default;
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import Title from "../../.storybook/components/Title";
|
|
3
|
+
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
4
|
+
import DxcCard from "./Card";
|
|
5
|
+
import { userEvent, within } from "@storybook/testing-library";
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: "Card",
|
|
9
|
+
component: DxcCard,
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const Card = () => (
|
|
13
|
+
<>
|
|
14
|
+
<Title title="Default" theme="light" level={4} />
|
|
15
|
+
<ExampleContainer>
|
|
16
|
+
<DxcCard>Default</DxcCard>
|
|
17
|
+
</ExampleContainer>
|
|
18
|
+
<Title title="Not outlined" theme="light" level={4} />
|
|
19
|
+
<ExampleContainer>
|
|
20
|
+
<DxcCard outlined={false}>Not outlined</DxcCard>
|
|
21
|
+
</ExampleContainer>
|
|
22
|
+
<Title title="Default with link" theme="light" level={4} />
|
|
23
|
+
<ExampleContainer>
|
|
24
|
+
<DxcCard linkHref="https://www.dxc.com">Default with link</DxcCard>
|
|
25
|
+
</ExampleContainer>
|
|
26
|
+
<Title title="Focused default with link" theme="light" level={4} />
|
|
27
|
+
<ExampleContainer>
|
|
28
|
+
<DxcCard linkHref="https://www.dxc.com">Focused default with link</DxcCard>
|
|
29
|
+
</ExampleContainer>
|
|
30
|
+
<Title title="Hovered default with link" theme="light" level={4} />
|
|
31
|
+
<ExampleContainer>
|
|
32
|
+
<DxcCard linkHref="https://www.dxc.com">Hovered default with link</DxcCard>
|
|
33
|
+
</ExampleContainer>
|
|
34
|
+
<Title title="Default with action" theme="light" level={4} />
|
|
35
|
+
<ExampleContainer>
|
|
36
|
+
<DxcCard onClick={() => {}}>Default with action</DxcCard>
|
|
37
|
+
</ExampleContainer>
|
|
38
|
+
<Title title="Default with image" theme="light" level={4} />
|
|
39
|
+
<ExampleContainer>
|
|
40
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300">Default</DxcCard>
|
|
41
|
+
</ExampleContainer>
|
|
42
|
+
<Title title="Default image with background color" theme="light" level={4} />
|
|
43
|
+
<ExampleContainer>
|
|
44
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imageBgColor="yellow">
|
|
45
|
+
Background color
|
|
46
|
+
</DxcCard>
|
|
47
|
+
</ExampleContainer>
|
|
48
|
+
<Title title="Default image with position after" theme="light" level={4} />
|
|
49
|
+
<ExampleContainer>
|
|
50
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePosition="after">
|
|
51
|
+
Position after
|
|
52
|
+
</DxcCard>
|
|
53
|
+
</ExampleContainer>
|
|
54
|
+
<Title title="Image cover" theme="light" level={4} />
|
|
55
|
+
<ExampleContainer>
|
|
56
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imageCover>
|
|
57
|
+
Image cover
|
|
58
|
+
</DxcCard>
|
|
59
|
+
</ExampleContainer>
|
|
60
|
+
<Title title="Image cover with position after" theme="light" level={4} />
|
|
61
|
+
<ExampleContainer>
|
|
62
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imageCover imagePosition="after">
|
|
63
|
+
Image cover with position after
|
|
64
|
+
</DxcCard>
|
|
65
|
+
</ExampleContainer>
|
|
66
|
+
<Title title="Image padding" theme="light" level={2} />
|
|
67
|
+
<ExampleContainer>
|
|
68
|
+
<Title title="Xxsmall" theme="light" level={4} />
|
|
69
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xxsmall" imageCover>
|
|
70
|
+
Xxsmall
|
|
71
|
+
</DxcCard>
|
|
72
|
+
</ExampleContainer>
|
|
73
|
+
<ExampleContainer>
|
|
74
|
+
<Title title="Xsmall" theme="light" level={4} />
|
|
75
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xsmall" imageCover>
|
|
76
|
+
Xsmall
|
|
77
|
+
</DxcCard>
|
|
78
|
+
</ExampleContainer>
|
|
79
|
+
<ExampleContainer>
|
|
80
|
+
<Title title="Small" theme="light" level={4} />
|
|
81
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="small" imageCover>
|
|
82
|
+
Small
|
|
83
|
+
</DxcCard>
|
|
84
|
+
</ExampleContainer>
|
|
85
|
+
<ExampleContainer>
|
|
86
|
+
<Title title="Medium" theme="light" level={4} />
|
|
87
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="medium" imageCover>
|
|
88
|
+
Medium
|
|
89
|
+
</DxcCard>
|
|
90
|
+
</ExampleContainer>
|
|
91
|
+
<ExampleContainer>
|
|
92
|
+
<Title title="Large" theme="light" level={4} />
|
|
93
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="large" imageCover>
|
|
94
|
+
Large
|
|
95
|
+
</DxcCard>
|
|
96
|
+
</ExampleContainer>
|
|
97
|
+
<ExampleContainer>
|
|
98
|
+
<Title title="Xlarge" theme="light" level={4} />
|
|
99
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xlarge" imageCover>
|
|
100
|
+
Xlarge
|
|
101
|
+
</DxcCard>
|
|
102
|
+
</ExampleContainer>
|
|
103
|
+
<ExampleContainer>
|
|
104
|
+
<Title title="Xxlarge" theme="light" level={4} />
|
|
105
|
+
<DxcCard imageSrc="https://picsum.photos/id/1022/200/300" imagePadding="xxlarge" imageCover>
|
|
106
|
+
Xxlarge
|
|
107
|
+
</DxcCard>
|
|
108
|
+
</ExampleContainer>
|
|
109
|
+
<Title title="Content padding" theme="light" level={2} />
|
|
110
|
+
<ExampleContainer>
|
|
111
|
+
<Title title="Xxsmall" theme="light" level={4} />
|
|
112
|
+
<DxcCard contentPadding="xxsmall">Xxsmall</DxcCard>
|
|
113
|
+
</ExampleContainer>
|
|
114
|
+
<ExampleContainer>
|
|
115
|
+
<Title title="Xsmall" theme="light" level={4} />
|
|
116
|
+
<DxcCard contentPadding="xsmall">Xsmall</DxcCard>
|
|
117
|
+
</ExampleContainer>
|
|
118
|
+
<ExampleContainer>
|
|
119
|
+
<Title title="Small" theme="light" level={4} />
|
|
120
|
+
<DxcCard contentPadding="small">Small</DxcCard>
|
|
121
|
+
</ExampleContainer>
|
|
122
|
+
<ExampleContainer>
|
|
123
|
+
<Title title="Medium" theme="light" level={4} />
|
|
124
|
+
<DxcCard contentPadding="medium">Medium</DxcCard>
|
|
125
|
+
</ExampleContainer>
|
|
126
|
+
<ExampleContainer>
|
|
127
|
+
<Title title="Large" theme="light" level={4} />
|
|
128
|
+
<DxcCard contentPadding="large">Large</DxcCard>
|
|
129
|
+
</ExampleContainer>
|
|
130
|
+
<ExampleContainer>
|
|
131
|
+
<Title title="Xlarge" theme="light" level={4} />
|
|
132
|
+
<DxcCard contentPadding="xlarge">Xlarge</DxcCard>
|
|
133
|
+
</ExampleContainer>
|
|
134
|
+
<ExampleContainer>
|
|
135
|
+
<Title title="Xxlarge" theme="light" level={4} />
|
|
136
|
+
<DxcCard contentPadding="xxlarge">Xxlarge</DxcCard>
|
|
137
|
+
</ExampleContainer>
|
|
138
|
+
<Title title="Margin" theme="light" level={2} />
|
|
139
|
+
<ExampleContainer>
|
|
140
|
+
<Title title="Xxsmall" theme="light" level={4} />
|
|
141
|
+
<DxcCard margin="xxsmall">Xxsmall</DxcCard>
|
|
142
|
+
</ExampleContainer>
|
|
143
|
+
<ExampleContainer>
|
|
144
|
+
<Title title="Xsmall" theme="light" level={4} />
|
|
145
|
+
<DxcCard margin="xsmall">Xsmall</DxcCard>
|
|
146
|
+
</ExampleContainer>
|
|
147
|
+
<ExampleContainer>
|
|
148
|
+
<Title title="Small" theme="light" level={4} />
|
|
149
|
+
<DxcCard margin="small">Small</DxcCard>
|
|
150
|
+
</ExampleContainer>
|
|
151
|
+
<ExampleContainer>
|
|
152
|
+
<Title title="Medium" theme="light" level={4} />
|
|
153
|
+
<DxcCard margin="medium">Medium</DxcCard>
|
|
154
|
+
</ExampleContainer>
|
|
155
|
+
<ExampleContainer>
|
|
156
|
+
<Title title="Large" theme="light" level={4} />
|
|
157
|
+
<DxcCard margin="large">Large</DxcCard>
|
|
158
|
+
</ExampleContainer>
|
|
159
|
+
<ExampleContainer>
|
|
160
|
+
<Title title="Xlarge" theme="light" level={4} />
|
|
161
|
+
<DxcCard margin="xlarge">Xlarge</DxcCard>
|
|
162
|
+
</ExampleContainer>
|
|
163
|
+
<ExampleContainer>
|
|
164
|
+
<Title title="Xxlarge" theme="light" level={4} />
|
|
165
|
+
<DxcCard margin="xxlarge">Xxlarge</DxcCard>
|
|
166
|
+
</ExampleContainer>
|
|
167
|
+
</>
|
|
168
|
+
);
|
|
169
|
+
|
|
170
|
+
const actionCard = () => (
|
|
171
|
+
<>
|
|
172
|
+
<ExampleContainer>
|
|
173
|
+
<Title title="Focused default with action" theme="light" level={4} />
|
|
174
|
+
<DxcCard onClick={() => {}}>Focused default with action</DxcCard>
|
|
175
|
+
</ExampleContainer>
|
|
176
|
+
<ExampleContainer expanded>
|
|
177
|
+
<Title title="Hovered default with action" theme="light" level={4} />
|
|
178
|
+
<DxcCard onClick={() => {}}>Hovered default with action</DxcCard>
|
|
179
|
+
</ExampleContainer>
|
|
180
|
+
</>
|
|
181
|
+
);
|
|
182
|
+
|
|
183
|
+
const linkStates = async (focusCard, hoverCard) => {
|
|
184
|
+
await focusCard.focus();
|
|
185
|
+
await userEvent.hover(hoverCard);
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
export const ActionCardStates = actionCard.bind({});
|
|
189
|
+
ActionCardStates.play = async ({ canvasElement }) => {
|
|
190
|
+
const canvas = within(canvasElement);
|
|
191
|
+
await userEvent.tab();
|
|
192
|
+
await userEvent.hover(canvas.getAllByText("Hovered default with action")[1]);
|
|
193
|
+
};
|
|
194
|
+
|
|
195
|
+
export const Chromatic = Card.bind({});
|
|
196
|
+
Chromatic.play = async ({ canvasElement }) => {
|
|
197
|
+
const canvas = within(canvasElement);
|
|
198
|
+
const linkCards = canvas.getAllByRole("link");
|
|
199
|
+
await linkStates(linkCards[1], linkCards[2]);
|
|
200
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
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.tsx"));
|
|
10
|
+
|
|
11
|
+
describe("Card component tests", function () {
|
|
12
|
+
test("Card renders with correct content", function () {
|
|
13
|
+
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], null, "test-card")),
|
|
14
|
+
getByText = _render.getByText;
|
|
15
|
+
|
|
16
|
+
expect(getByText("test-card")).toBeTruthy();
|
|
17
|
+
});
|
|
18
|
+
test("Card renders with correct href", function () {
|
|
19
|
+
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
|
|
20
|
+
linkHref: "/testPage"
|
|
21
|
+
}, "test-card")),
|
|
22
|
+
getByRole = _render2.getByRole;
|
|
23
|
+
|
|
24
|
+
var card = getByRole("link");
|
|
25
|
+
expect(card.getAttribute("href")).toEqual("/testPage");
|
|
26
|
+
});
|
|
27
|
+
test("Card renders with correct image", function () {
|
|
28
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
|
|
29
|
+
imageSrc: "/testImage"
|
|
30
|
+
}, "test-card")),
|
|
31
|
+
getByRole = _render3.getByRole;
|
|
32
|
+
|
|
33
|
+
var card = getByRole("img");
|
|
34
|
+
expect(card.getAttribute("src")).toEqual("/testImage");
|
|
35
|
+
});
|
|
36
|
+
test("OnClick function is called", function () {
|
|
37
|
+
var onClick = jest.fn();
|
|
38
|
+
|
|
39
|
+
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Card["default"], {
|
|
40
|
+
onClick: onClick
|
|
41
|
+
}, "test-card")),
|
|
42
|
+
getByText = _render4.getByText;
|
|
43
|
+
|
|
44
|
+
var card = getByText("test-card");
|
|
45
|
+
|
|
46
|
+
_react2.fireEvent.click(card);
|
|
47
|
+
|
|
48
|
+
expect(onClick).toHaveBeenCalled();
|
|
49
|
+
});
|
|
50
|
+
});
|
|
Binary file
|
package/card/types.d.ts
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
declare type Size = {
|
|
4
|
+
top?: Space;
|
|
5
|
+
bottom?: Space;
|
|
6
|
+
left?: Space;
|
|
7
|
+
right?: Space;
|
|
8
|
+
};
|
|
9
|
+
declare type Props = {
|
|
10
|
+
/**
|
|
11
|
+
* URL of the image that will be placed in the card component.
|
|
12
|
+
* In case of omission, the image container will not appear and
|
|
13
|
+
* the content will occupy its space.
|
|
14
|
+
*/
|
|
15
|
+
imageSrc?: string;
|
|
16
|
+
/**
|
|
17
|
+
* Color of the image background.
|
|
18
|
+
*/
|
|
19
|
+
imageBgColor?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Size of the padding to be applied to the image section of the
|
|
22
|
+
* component. You can pass an object with 'top', 'bottom', 'left'
|
|
23
|
+
* and 'right' properties in order to specify different padding sizes.
|
|
24
|
+
*/
|
|
25
|
+
imagePadding?: Space | Size;
|
|
26
|
+
/**
|
|
27
|
+
* Whether the image should appear in relation to the content.
|
|
28
|
+
*/
|
|
29
|
+
imagePosition?: "before" | "after";
|
|
30
|
+
/**
|
|
31
|
+
* If defined, the tag will be displayed as an anchor, using this prop
|
|
32
|
+
* as "href". Component will show some visual feedback on hover.
|
|
33
|
+
*/
|
|
34
|
+
linkHref?: string;
|
|
35
|
+
/**
|
|
36
|
+
* This function will be called when the user clicks the card. Component
|
|
37
|
+
* will show some visual feedback on hover.
|
|
38
|
+
*/
|
|
39
|
+
onClick?: () => void;
|
|
40
|
+
/**
|
|
41
|
+
* Whether the image must cover the whole image area of the card.
|
|
42
|
+
*/
|
|
43
|
+
imageCover?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
46
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
47
|
+
*/
|
|
48
|
+
margin?: Space | Size;
|
|
49
|
+
/**
|
|
50
|
+
* @deprecated This prop will be removed shortly, consider using the Inset component for this purpose.
|
|
51
|
+
* Size of the padding to be applied to the content area ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
52
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different padding sizes.
|
|
53
|
+
*/
|
|
54
|
+
contentPadding?: Space | Size;
|
|
55
|
+
/**
|
|
56
|
+
* Value of the tabindex given when there is an href.
|
|
57
|
+
*/
|
|
58
|
+
tabIndex?: number;
|
|
59
|
+
/**
|
|
60
|
+
* Whether the card must be outlined.
|
|
61
|
+
*/
|
|
62
|
+
outlined?: boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Custom content that will be placed in the card component.
|
|
65
|
+
*/
|
|
66
|
+
children?: React.ReactNode;
|
|
67
|
+
};
|
|
68
|
+
export default Props;
|
package/card/types.js
ADDED