@dxc-technology/halstack-react 3.3.0 → 4.0.1
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 → BackgroundColorContext.js} +0 -0
- package/ThemeContext.js +250 -0
- package/{dist/select/Select.js → V3Select/V3Select.js} +175 -189
- package/V3Select/index.d.ts +27 -0
- package/{dist/textarea/Textarea.js → V3Textarea/V3Textarea.js} +30 -26
- package/V3Textarea/index.d.ts +27 -0
- package/{dist/accordion → accordion}/Accordion.js +66 -59
- package/accordion/index.d.ts +28 -0
- package/{dist/accordion-group → accordion-group}/AccordionGroup.js +1 -3
- package/accordion-group/index.d.ts +16 -0
- package/{dist/alert → alert}/Alert.js +126 -111
- package/alert/index.d.ts +51 -0
- package/{dist/badge → badge}/Badge.js +0 -0
- package/{dist/box → box}/Box.js +1 -9
- package/box/index.d.ts +25 -0
- package/button/Button.js +238 -0
- package/button/Button.stories.js +27 -0
- package/button/index.d.ts +24 -0
- package/{dist/card → card}/Card.js +0 -0
- package/card/index.d.ts +22 -0
- package/{dist/checkbox → checkbox}/Checkbox.js +26 -21
- package/checkbox/index.d.ts +24 -0
- package/{dist/chip → chip}/Chip.js +21 -25
- package/chip/index.d.ts +22 -0
- package/{dist/common → common}/OpenSans.css +0 -0
- package/{dist/common → common}/RequiredComponent.js +0 -0
- package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/{dist/common → common}/utils.js +0 -0
- package/common/variables.js +1567 -0
- package/{dist/date → date}/Date.js +7 -9
- package/date/index.d.ts +27 -0
- package/date-input/DateInput.js +400 -0
- package/date-input/index.d.ts +95 -0
- package/{dist/dialog → dialog}/Dialog.js +15 -32
- package/dialog/index.d.ts +18 -0
- package/{dist/dropdown → dropdown}/Dropdown.js +117 -66
- package/dropdown/index.d.ts +26 -0
- package/file-input/FileInput.js +644 -0
- package/file-input/FileItem.js +287 -0
- package/file-input/index.d.ts +81 -0
- package/{dist/footer → footer}/Footer.js +63 -49
- package/footer/Icons.js +77 -0
- package/footer/index.d.ts +25 -0
- package/{dist/header → header}/Header.js +123 -84
- package/header/Icons.js +59 -0
- package/header/index.d.ts +25 -0
- package/{dist/heading → heading}/Heading.js +13 -5
- package/heading/index.d.ts +17 -0
- package/input-text/Icons.js +22 -0
- package/{dist/input-text → input-text}/InputText.js +96 -63
- package/input-text/index.d.ts +36 -0
- package/{dist/layout → layout}/ApplicationLayout.js +5 -9
- package/layout/Icons.js +55 -0
- package/{dist/link → link}/Link.js +4 -8
- package/link/index.d.ts +23 -0
- package/main.d.ts +40 -0
- package/{dist/main.js → main.js} +62 -14
- package/number-input/NumberInput.js +136 -0
- package/number-input/NumberInputContext.js +16 -0
- package/number-input/index.d.ts +113 -0
- package/package.json +23 -17
- package/paginator/Icons.js +66 -0
- package/{dist/paginator → paginator}/Paginator.js +60 -38
- package/paginator/index.d.ts +20 -0
- package/password-input/PasswordInput.js +203 -0
- package/password-input/index.d.ts +94 -0
- package/{dist/progress-bar → progress-bar}/ProgressBar.js +63 -27
- package/progress-bar/index.d.ts +18 -0
- package/{dist/radio → radio}/Radio.js +0 -0
- package/radio/index.d.ts +23 -0
- package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +1 -1
- package/resultsetTable/index.d.ts +19 -0
- package/select/Select.js +1138 -0
- package/select/index.d.ts +131 -0
- package/{dist/sidenav → sidenav}/Sidenav.js +11 -15
- package/sidenav/index.d.ts +13 -0
- package/{dist/slider → slider}/Slider.js +155 -66
- package/slider/index.d.ts +29 -0
- package/spinner/Spinner.js +381 -0
- package/spinner/index.d.ts +17 -0
- package/{dist/switch → switch}/Switch.js +0 -0
- package/switch/index.d.ts +24 -0
- package/{dist/table → table}/Table.js +5 -1
- package/table/index.d.ts +13 -0
- package/{dist/tabs → tabs}/Tabs.js +0 -0
- package/tabs/index.d.ts +19 -0
- package/{dist/tag → tag}/Tag.js +37 -35
- package/tag/index.d.ts +24 -0
- package/text-input/TextInput.js +992 -0
- package/text-input/index.d.ts +135 -0
- package/textarea/Textarea.js +369 -0
- package/textarea/index.d.ts +117 -0
- package/{dist/toggle → toggle}/Toggle.js +0 -0
- package/toggle/index.d.ts +21 -0
- package/toggle-group/ToggleGroup.js +327 -0
- package/toggle-group/index.d.ts +21 -0
- package/{dist/upload → upload}/Upload.js +0 -0
- package/{dist/upload → upload}/buttons-upload/ButtonsUpload.js +12 -12
- package/upload/buttons-upload/Icons.js +40 -0
- package/{dist/upload → upload}/dragAndDropArea/DragAndDropArea.js +23 -19
- package/upload/dragAndDropArea/Icons.js +39 -0
- package/{dist/upload → upload}/file-upload/FileToUpload.js +27 -22
- package/upload/file-upload/Icons.js +66 -0
- package/{dist/upload → upload}/files-upload/FilesToUpload.js +0 -0
- package/upload/index.d.ts +15 -0
- package/upload/transaction/Icons.js +160 -0
- package/{dist/upload → upload}/transaction/Transaction.js +18 -41
- package/{dist/upload → upload}/transactions/Transactions.js +11 -11
- package/{dist/useTheme.js → useTheme.js} +0 -0
- package/wizard/Icons.js +65 -0
- package/{dist/wizard → wizard}/Wizard.js +11 -17
- package/wizard/index.d.ts +18 -0
- package/README.md +0 -66
- package/babel.config.js +0 -8
- package/dist/ThemeContext.js +0 -216
- 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.js +0 -232
- package/dist/button/Button.stories.js +0 -224
- package/dist/button/readme.md +0 -93
- package/dist/checkbox/Checkbox.stories.js +0 -144
- package/dist/checkbox/readme.md +0 -116
- package/dist/common/variables.js +0 -1158
- package/dist/date/Date.stories.js +0 -205
- package/dist/date/readme.md +0 -73
- 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.svg +0 -15
- package/dist/footer/readme.md +0 -41
- package/dist/header/Header.stories.js +0 -176
- package/dist/header/close_icon.svg +0 -1
- package/dist/header/dxc_logo_black.svg +0 -8
- package/dist/header/hamb_menu_black.svg +0 -1
- package/dist/header/hamb_menu_white.svg +0 -1
- package/dist/header/readme.md +0 -33
- package/dist/input-text/InputText.stories.js +0 -209
- package/dist/input-text/error.svg +0 -1
- package/dist/input-text/readme.md +0 -91
- package/dist/layout/facebook.svg +0 -45
- package/dist/layout/linkedin.svg +0 -50
- package/dist/layout/twitter.svg +0 -53
- package/dist/link/readme.md +0 -51
- package/dist/paginator/images/next.svg +0 -3
- package/dist/paginator/images/nextPage.svg +0 -3
- package/dist/paginator/images/previous.svg +0 -3
- package/dist/paginator/images/previousPage.svg +0 -3
- package/dist/paginator/readme.md +0 -50
- package/dist/progress-bar/ProgressBar.stories.js +0 -280
- package/dist/progress-bar/readme.md +0 -63
- package/dist/radio/Radio.stories.js +0 -166
- package/dist/radio/readme.md +0 -70
- package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
- package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
- package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
- 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/slider/readme.md +0 -64
- package/dist/spinner/Spinner.js +0 -214
- package/dist/spinner/Spinner.stories.js +0 -183
- package/dist/spinner/readme.md +0 -65
- package/dist/switch/Switch.stories.js +0 -134
- package/dist/switch/readme.md +0 -133
- package/dist/tabs/Tabs.stories.js +0 -130
- package/dist/tabs/readme.md +0 -78
- package/dist/tabs-for-sections/TabsForSections.js +0 -92
- package/dist/tabs-for-sections/readme.md +0 -78
- package/dist/toggle/Toggle.stories.js +0 -297
- package/dist/toggle/readme.md +0 -80
- package/dist/toggle-group/ToggleGroup.js +0 -241
- package/dist/toggle-group/readme.md +0 -82
- package/dist/upload/Upload.stories.js +0 -72
- package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
- package/dist/upload/buttons-upload/upload-button.svg +0 -1
- package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
- package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
- package/dist/upload/file-upload/audio-icon.svg +0 -4
- package/dist/upload/file-upload/close.svg +0 -4
- package/dist/upload/file-upload/file-icon.svg +0 -4
- package/dist/upload/file-upload/video-icon.svg +0 -4
- package/dist/upload/readme.md +0 -37
- package/dist/upload/transaction/audio-icon-err.svg +0 -4
- package/dist/upload/transaction/audio-icon.svg +0 -4
- package/dist/upload/transaction/error-icon.svg +0 -4
- package/dist/upload/transaction/file-icon-err.svg +0 -4
- package/dist/upload/transaction/file-icon.svg +0 -4
- package/dist/upload/transaction/image-icon-err.svg +0 -4
- package/dist/upload/transaction/image-icon.svg +0 -4
- package/dist/upload/transaction/success-icon.svg +0 -4
- package/dist/upload/transaction/video-icon-err.svg +0 -4
- package/dist/upload/transaction/video-icon.svg +0 -4
- package/dist/wizard/invalid_icon.svg +0 -5
- package/dist/wizard/valid_icon.svg +0 -5
- package/dist/wizard/validation-wrong.svg +0 -6
- package/test/Accordion.test.js +0 -33
- package/test/AccordionGroup.test.js +0 -125
- package/test/Alert.test.js +0 -53
- package/test/Box.test.js +0 -10
- package/test/Button.test.js +0 -18
- package/test/Card.test.js +0 -30
- package/test/Checkbox.test.js +0 -45
- package/test/Chip.test.js +0 -25
- package/test/Date.test.js +0 -393
- package/test/Dialog.test.js +0 -23
- package/test/Dropdown.test.js +0 -130
- package/test/Footer.test.js +0 -99
- package/test/Header.test.js +0 -39
- package/test/Heading.test.js +0 -35
- package/test/InputText.test.js +0 -240
- package/test/Link.test.js +0 -43
- package/test/Paginator.test.js +0 -177
- package/test/ProgressBar.test.js +0 -35
- package/test/Radio.test.js +0 -37
- package/test/ResultsetTable.test.js +0 -330
- package/test/Select.test.js +0 -192
- package/test/Sidenav.test.js +0 -45
- package/test/Slider.test.js +0 -82
- package/test/Spinner.test.js +0 -27
- package/test/Switch.test.js +0 -45
- package/test/Table.test.js +0 -36
- package/test/Tabs.test.js +0 -109
- package/test/TabsForSections.test.js +0 -34
- package/test/Tag.test.js +0 -32
- package/test/TextArea.test.js +0 -52
- package/test/ToggleGroup.test.js +0 -81
- package/test/Upload.test.js +0 -60
- package/test/Wizard.test.js +0 -130
- package/test/mocks/pngMock.js +0 -1
- package/test/mocks/svgMock.js +0 -1
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
# DXC Toggle Group Component
|
|
2
|
-
|
|
3
|
-
## Props
|
|
4
|
-
|
|
5
|
-
<table>
|
|
6
|
-
<tr style="background-color: grey">
|
|
7
|
-
<td>Name</td>
|
|
8
|
-
<td>Default</td>
|
|
9
|
-
<td>Description</td>
|
|
10
|
-
</tr>
|
|
11
|
-
<tr>
|
|
12
|
-
<td>value: any | any[]</td>
|
|
13
|
-
<td></td>
|
|
14
|
-
<td>
|
|
15
|
-
The key(s) of the selected value(s). If the toggle group component
|
|
16
|
-
doesn't allow multiple selection, it must be one unique value. If the
|
|
17
|
-
component allows multiple selection, value must be an array. If
|
|
18
|
-
undefined, the component will be uncontrolled and the value will be
|
|
19
|
-
managed internally by the component.
|
|
20
|
-
</td>
|
|
21
|
-
</tr>
|
|
22
|
-
<tr>
|
|
23
|
-
<td>onChange: function</td>
|
|
24
|
-
<td></td>
|
|
25
|
-
<td>
|
|
26
|
-
This function will be called every time the selection changes. The
|
|
27
|
-
number with the key of the selected value will be passed as a
|
|
28
|
-
parameter to this function. If multiple selection is allowed, an array
|
|
29
|
-
of keys will be passed
|
|
30
|
-
</td>
|
|
31
|
-
</tr>
|
|
32
|
-
<tr>
|
|
33
|
-
<td>disabled: boolean</td>
|
|
34
|
-
<td>
|
|
35
|
-
<code>false</code>
|
|
36
|
-
</td>
|
|
37
|
-
<td>If true, the component will be disabled.</td>
|
|
38
|
-
</tr>
|
|
39
|
-
<tr>
|
|
40
|
-
<td>multiple: boolean</td>
|
|
41
|
-
<td>
|
|
42
|
-
<code>false</code>
|
|
43
|
-
</td>
|
|
44
|
-
<td>
|
|
45
|
-
If true, the toggle group will support multiple selection. In that
|
|
46
|
-
case, value must be an array of numbers with the keys of the selected
|
|
47
|
-
values.
|
|
48
|
-
</td>
|
|
49
|
-
</tr>
|
|
50
|
-
<tr>
|
|
51
|
-
<td>options: object[]</td>
|
|
52
|
-
<td>
|
|
53
|
-
<code>[]</code>
|
|
54
|
-
</td>
|
|
55
|
-
<td>
|
|
56
|
-
An array of objects representing the selectable options. Each object
|
|
57
|
-
has the following properties:
|
|
58
|
-
<ul>
|
|
59
|
-
<li>
|
|
60
|
-
<b>value</b>: Number with the option inner value.
|
|
61
|
-
</li>
|
|
62
|
-
<li>
|
|
63
|
-
<b>label</b>: String with the option display value.
|
|
64
|
-
</li>
|
|
65
|
-
<li>
|
|
66
|
-
<b>iconSrc</b>: URL of the icon that will be placed. IconSrc and
|
|
67
|
-
label can't be used at same time.
|
|
68
|
-
</li>
|
|
69
|
-
</ul>
|
|
70
|
-
</td>
|
|
71
|
-
</tr>
|
|
72
|
-
<tr>
|
|
73
|
-
<td>margin: string | object</td>
|
|
74
|
-
<td></td>
|
|
75
|
-
<td>
|
|
76
|
-
Size of the margin to be applied to the component ('xxsmall' |
|
|
77
|
-
'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge'). You
|
|
78
|
-
can pass an object with 'top', 'bottom', 'left' and 'right' properties
|
|
79
|
-
in order to specify different margin sizes.
|
|
80
|
-
</td>
|
|
81
|
-
</tr>
|
|
82
|
-
</table>
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
6
|
-
|
|
7
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
-
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
-
|
|
11
|
-
var _react = _interopRequireDefault(require("react"));
|
|
12
|
-
|
|
13
|
-
var _react2 = require("@storybook/react");
|
|
14
|
-
|
|
15
|
-
var _readme = _interopRequireDefault(require("./readme.md"));
|
|
16
|
-
|
|
17
|
-
var _Upload = _interopRequireDefault(require("./Upload"));
|
|
18
|
-
|
|
19
|
-
function callbackFunc() {
|
|
20
|
-
return _callbackFunc.apply(this, arguments);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
function _callbackFunc() {
|
|
24
|
-
_callbackFunc = (0, _asyncToGenerator2["default"])(
|
|
25
|
-
/*#__PURE__*/
|
|
26
|
-
_regenerator["default"].mark(function _callee() {
|
|
27
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
28
|
-
while (1) {
|
|
29
|
-
switch (_context.prev = _context.next) {
|
|
30
|
-
case 0:
|
|
31
|
-
return _context.abrupt("return", new Promise(function (resolve) {
|
|
32
|
-
return setTimeout(resolve, 1000);
|
|
33
|
-
}));
|
|
34
|
-
|
|
35
|
-
case 1:
|
|
36
|
-
case "end":
|
|
37
|
-
return _context.stop();
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}, _callee);
|
|
41
|
-
}));
|
|
42
|
-
return _callbackFunc.apply(this, arguments);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
(0, _react2.storiesOf)("Form Components|Upload", module).add("Component", function () {
|
|
46
|
-
return _react["default"].createElement("div", {
|
|
47
|
-
style: {
|
|
48
|
-
marginTop: "80px"
|
|
49
|
-
}
|
|
50
|
-
}, _react["default"].createElement(_Upload["default"], {
|
|
51
|
-
callbackUpload: callbackFunc
|
|
52
|
-
}));
|
|
53
|
-
}, {
|
|
54
|
-
notes: {
|
|
55
|
-
markdown: _readme["default"]
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
var knobProps = function knobProps() {
|
|
60
|
-
return {};
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
(0, _react2.storiesOf)("Form Components|Upload", module).add("Knobs example", function () {
|
|
64
|
-
var props = knobProps();
|
|
65
|
-
return _react["default"].createElement(_Upload["default"], (0, _extends2["default"])({}, props, {
|
|
66
|
-
callbackUpload: callbackFunc
|
|
67
|
-
}));
|
|
68
|
-
}, {
|
|
69
|
-
notes: {
|
|
70
|
-
markdown: _readme["default"]
|
|
71
|
-
}
|
|
72
|
-
});
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#666666">
|
|
2
|
-
<path fill="none" d="M0 0h24v24H0V0z"/>
|
|
3
|
-
<path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm2 4v-2H3c0 1.1.89 2 2 2zM3 9h2V7H3v2zm12 12h2v-2h-2v2zm4-18H9c-1.11 0-2 .9-2 2v10c0 1.1.89 2 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 12H9V5h10v10zm-8 6h2v-2h-2v2zm-4 0h2v-2H7v2z"/>
|
|
4
|
-
</svg>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"/><path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"/></svg>
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="74.5" height="74.5" viewBox="0 0 24 24" fill="#666666">
|
|
2
|
-
<path fill="none" d="M0 0h24v24H0z"/>
|
|
3
|
-
<path d="M11 5v5.59H7.5l4.5 4.5 4.5-4.5H13V5h-2zm-5 9c0 3.31 2.69 6 6 6s6-2.69 6-6h-2c0 2.21-1.79 4-4 4s-4-1.79-4-4H6z"/>
|
|
4
|
-
</svg>
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
|
|
2
|
-
<path fill="none" d="M0 0h24v24H0V0z"/>
|
|
3
|
-
<path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"/>
|
|
4
|
-
</svg>
|
package/dist/upload/readme.md
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
# DXC Upload Component
|
|
2
|
-
|
|
3
|
-
## Usage
|
|
4
|
-
|
|
5
|
-
```js
|
|
6
|
-
import { DxcUpload } from "@dxc-technology/halstack-react";
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
## Props
|
|
10
|
-
|
|
11
|
-
<table>
|
|
12
|
-
<tr style="background-color: grey">
|
|
13
|
-
<td>Name</td>
|
|
14
|
-
<td>Default</td>
|
|
15
|
-
<td>Description</td>
|
|
16
|
-
</tr>
|
|
17
|
-
<tr>
|
|
18
|
-
<td>onUpload: function</td>
|
|
19
|
-
<td></td>
|
|
20
|
-
<td>This function will be called when the user clicks the 'Upload' button for every file to be uploaded, we will send as a parameter the File object; apart from that this function should return one promise on which we should make 'then'(here we should show a Success alert) or 'catch' (in this case we would receive the error message as a string)</td>
|
|
21
|
-
</tr>
|
|
22
|
-
|
|
23
|
-
</table>
|
|
24
|
-
|
|
25
|
-
## Examples
|
|
26
|
-
|
|
27
|
-
```js
|
|
28
|
-
import React from "react";
|
|
29
|
-
|
|
30
|
-
import { DxcUpload } from "@dxc-technology/halstack-react";
|
|
31
|
-
|
|
32
|
-
function App() {
|
|
33
|
-
return <Upload callbackUpload={callbackFunc} />;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export default App;
|
|
37
|
-
```
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
|
|
2
|
-
<path fill="none" d="M0 0h24v24H0V0z"/>
|
|
3
|
-
<path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"/>
|
|
4
|
-
</svg>
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D9D9D9">
|
|
2
|
-
<path fill="none" d="M0 0h24v24H0V0z"/>
|
|
3
|
-
<path d="M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"/>
|
|
4
|
-
</svg>
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D0011B">
|
|
2
|
-
<path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/>
|
|
3
|
-
<path d="M0 0h24v24H0z" fill="none"/>
|
|
4
|
-
</svg>
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#D9D9D9">
|
|
2
|
-
<path d="M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"/>
|
|
3
|
-
<path d="M0 0h24v24H0z" fill="none"/>
|
|
4
|
-
</svg>
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
<svg id="highlight_off_black_18dp" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18">
|
|
2
|
-
<path id="Path_2943" data-name="Path 2943" d="M0,0H18V18H0Z" fill="none"/>
|
|
3
|
-
<path id="Path_2944" data-name="Path 2944" d="M10,4a6,6,0,1,0,6,6A6.01,6.01,0,0,0,10,4Zm3,7.945L11.945,13,10,11.06,8.059,13,7,11.945,8.944,10,7,8.059,8.059,7,10,8.944,11.945,7,13,8.059,11.06,10Z" transform="translate(-1.002 -1.002)" fill="#ffe6e9"/>
|
|
4
|
-
<path id="Path_2945" data-name="Path 2945" d="M11.444,6.5,9.5,8.443,7.558,6.5,6.5,7.558,8.443,9.5,6.5,11.444,7.558,12.5,9.5,10.558,11.444,12.5,12.5,11.444,10.558,9.5,12.5,7.558ZM9.5,2A7.5,7.5,0,1,0,17,9.5,7.494,7.494,0,0,0,9.5,2Zm0,13.5a6,6,0,1,1,6-6A6.009,6.009,0,0,1,9.5,15.5Z" transform="translate(-0.501 -0.501)" fill="#d0011b"/>
|
|
5
|
-
</svg>
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
<svg id="check_circle_black_18dp" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18">
|
|
2
|
-
<path id="Path_2946" data-name="Path 2946" d="M0,0H18V18H0Z" fill="none"/>
|
|
3
|
-
<path id="Path_2947" data-name="Path 2947" d="M9.986,4a5.986,5.986,0,1,0,5.986,5.986A5.994,5.994,0,0,0,9.986,4Zm-1.5,9.727L5.5,10.734,6.551,9.679l1.938,1.93L13.42,6.679l1.055,1.063Z" transform="translate(-0.986 -0.986)" fill="#eafaef" opacity="0.999"/>
|
|
4
|
-
<path id="Path_2948" data-name="Path 2948" d="M9.493,2a7.493,7.493,0,1,0,7.493,7.493A7.5,7.5,0,0,0,9.493,2Zm0,13.487a5.994,5.994,0,1,1,5.994-5.994A6,6,0,0,1,9.493,15.487Zm3.439-9.306L7.994,11.119,6.054,9.186,5,10.242l3,3,5.994-5.994Z" transform="translate(-0.493 -0.493)" fill="#24a148"/>
|
|
5
|
-
</svg>
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="496" height="496" viewBox="0 0 496 496">
|
|
2
|
-
<g id="Group_2913" data-name="Group 2913" transform="translate(5286 3925)">
|
|
3
|
-
<path id="Path_2821" data-name="Path 2821" d="M240,0C372.548,0,480,107.452,480,240S372.548,480,240,480,0,372.548,0,240,107.452,0,240,0Z" transform="translate(-5278 -3917)" fill="#f9cfcf"/>
|
|
4
|
-
<path id="times-circle-regular" d="M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm0,448A200,200,0,1,1,456,256,199.945,199.945,0,0,1,256,456ZM357.8,193.8,295.6,256l62.2,62.2a12.011,12.011,0,0,1,0,17l-22.6,22.6a12.011,12.011,0,0,1-17,0L256,295.6l-62.2,62.2a12.011,12.011,0,0,1-17,0l-22.6-22.6a12.011,12.011,0,0,1,0-17L216.4,256l-62.2-62.2a12.011,12.011,0,0,1,0-17l22.6-22.6a12.011,12.011,0,0,1,17,0L256,216.4l62.2-62.2a12.011,12.011,0,0,1,17,0l22.6,22.6a12.011,12.011,0,0,1,0,17Z" transform="translate(-5294 -3933)" fill="#e22"/>
|
|
5
|
-
</g>
|
|
6
|
-
</svg>
|
package/test/Accordion.test.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render, fireEvent } from "@testing-library/react";
|
|
3
|
-
import DxcAccordion from "../src/accordion/Accordion";
|
|
4
|
-
|
|
5
|
-
describe("Accordion component tests", () => {
|
|
6
|
-
test("Accordion renders with correct text", () => {
|
|
7
|
-
const onChange = jest.fn();
|
|
8
|
-
const { getByText } = render(<DxcAccordion label="Accordion" onChange={onChange} />);
|
|
9
|
-
|
|
10
|
-
expect(getByText("Accordion")).toBeTruthy();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
test("Calls correct function on click", () => {
|
|
14
|
-
const onChange = jest.fn();
|
|
15
|
-
const { getByText } = render(<DxcAccordion label="Accordion" onChange={onChange} />);
|
|
16
|
-
|
|
17
|
-
fireEvent.click(getByText("Accordion"));
|
|
18
|
-
expect(onChange).toHaveBeenCalled();
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
test("Controlled accordion", () => {
|
|
22
|
-
const onChange = jest.fn();
|
|
23
|
-
const { getByText } = render(<DxcAccordion label="Accordion" onChange={onChange} isExpanded={true} />);
|
|
24
|
-
|
|
25
|
-
fireEvent.click(getByText("Accordion"));
|
|
26
|
-
fireEvent.click(getByText("Accordion"));
|
|
27
|
-
fireEvent.click(getByText("Accordion"));
|
|
28
|
-
expect(onChange).toHaveBeenCalledTimes(3);
|
|
29
|
-
expect(onChange.mock.calls[0][0]).toBe(false);
|
|
30
|
-
expect(onChange.mock.calls[1][0]).toBe(false);
|
|
31
|
-
expect(onChange.mock.calls[2][0]).toBe(false);
|
|
32
|
-
});
|
|
33
|
-
});
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render, fireEvent } from "@testing-library/react";
|
|
3
|
-
import DxcAccordionGroup from "../src/accordion-group/AccordionGroup";
|
|
4
|
-
|
|
5
|
-
describe("Accordion component tests", () => {
|
|
6
|
-
test("Uncontrolled accordion group renders with children", () => {
|
|
7
|
-
const { getByText, getAllByRole } = render(
|
|
8
|
-
<DxcAccordionGroup>
|
|
9
|
-
<DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
|
|
10
|
-
<div>
|
|
11
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
12
|
-
leo lobortis eget.
|
|
13
|
-
</div>
|
|
14
|
-
</DxcAccordionGroup.Accordion>
|
|
15
|
-
<DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
|
|
16
|
-
<div>
|
|
17
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
18
|
-
leo lobortis eget.
|
|
19
|
-
</div>
|
|
20
|
-
</DxcAccordionGroup.Accordion>
|
|
21
|
-
</DxcAccordionGroup>
|
|
22
|
-
);
|
|
23
|
-
|
|
24
|
-
expect(getByText("Accordion1")).toBeTruthy();
|
|
25
|
-
expect(getByText("Accordion2")).toBeTruthy();
|
|
26
|
-
expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
|
|
27
|
-
expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
test("Uncontrolled accordion group renders with only one children", () => {
|
|
31
|
-
const { getByText, getAllByRole } = render(
|
|
32
|
-
<DxcAccordionGroup>
|
|
33
|
-
<DxcAccordionGroup.Accordion label="Accordion1" padding="medium">
|
|
34
|
-
<div>
|
|
35
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
36
|
-
leo lobortis eget.
|
|
37
|
-
</div>
|
|
38
|
-
</DxcAccordionGroup.Accordion>
|
|
39
|
-
</DxcAccordionGroup>
|
|
40
|
-
);
|
|
41
|
-
|
|
42
|
-
expect(getByText("Accordion1")).toBeTruthy();
|
|
43
|
-
expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
test("Uncontrolled accordion group calls correct function on click", () => {
|
|
47
|
-
const onActiveChange = jest.fn();
|
|
48
|
-
const { getByText, getAllByRole } = render(
|
|
49
|
-
<DxcAccordionGroup margin="large" onActiveChange={onActiveChange}>
|
|
50
|
-
<DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
|
|
51
|
-
<div>
|
|
52
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
53
|
-
leo lobortis eget.
|
|
54
|
-
</div>
|
|
55
|
-
</DxcAccordionGroup.Accordion>
|
|
56
|
-
<DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
|
|
57
|
-
<div>
|
|
58
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
59
|
-
leo lobortis eget.
|
|
60
|
-
</div>
|
|
61
|
-
</DxcAccordionGroup.Accordion>
|
|
62
|
-
</DxcAccordionGroup>
|
|
63
|
-
);
|
|
64
|
-
|
|
65
|
-
expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
|
|
66
|
-
expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
|
|
67
|
-
fireEvent.click(getByText("Accordion1"));
|
|
68
|
-
expect(onActiveChange).toHaveBeenCalled();
|
|
69
|
-
expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
|
|
70
|
-
expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
test("Controlled accordion with indexActive change", () => {
|
|
74
|
-
const onActiveChange = jest.fn();
|
|
75
|
-
const { getByText, getAllByRole, rerender } = render(
|
|
76
|
-
<DxcAccordionGroup margin="large" indexActive={1} onActiveChange={onActiveChange}>
|
|
77
|
-
<DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
|
|
78
|
-
<div>Text1</div>
|
|
79
|
-
</DxcAccordionGroup.Accordion>
|
|
80
|
-
<DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
|
|
81
|
-
<div>Text2</div>
|
|
82
|
-
</DxcAccordionGroup.Accordion>
|
|
83
|
-
</DxcAccordionGroup>
|
|
84
|
-
);
|
|
85
|
-
expect(getByText("Text1")).toBeTruthy();
|
|
86
|
-
expect(getByText("Text2")).toBeTruthy();
|
|
87
|
-
fireEvent.click(getByText("Accordion1"));
|
|
88
|
-
fireEvent.click(getByText("Accordion2"));
|
|
89
|
-
expect(onActiveChange.mock.calls[0][0]).toBe(0);
|
|
90
|
-
expect(onActiveChange.mock.calls[1][0]).toBe(1);
|
|
91
|
-
expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("false");
|
|
92
|
-
expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("true");
|
|
93
|
-
|
|
94
|
-
rerender(
|
|
95
|
-
<DxcAccordionGroup margin="large" indexActive={0} onActiveChange={onActiveChange}>
|
|
96
|
-
<DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
|
|
97
|
-
<div>Text1</div>
|
|
98
|
-
</DxcAccordionGroup.Accordion>
|
|
99
|
-
<DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
|
|
100
|
-
<div>Text2</div>
|
|
101
|
-
</DxcAccordionGroup.Accordion>
|
|
102
|
-
</DxcAccordionGroup>
|
|
103
|
-
);
|
|
104
|
-
|
|
105
|
-
expect(getAllByRole("button")[0].getAttribute("aria-expanded")).toBe("true");
|
|
106
|
-
expect(getAllByRole("button")[1].getAttribute("aria-expanded")).toBe("false");
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
test("Disabled uncontrolled accordion group", () => {
|
|
110
|
-
const onActiveChange = jest.fn();
|
|
111
|
-
const { getByText } = render(
|
|
112
|
-
<DxcAccordionGroup margin="large" onActiveChange={onActiveChange} disabled={true}>
|
|
113
|
-
<DxcAccordionGroup.Accordion label="Accordion1" padding="medium" margin="large">
|
|
114
|
-
<div>Text1</div>
|
|
115
|
-
</DxcAccordionGroup.Accordion>
|
|
116
|
-
<DxcAccordionGroup.Accordion label="Accordion2" padding="medium">
|
|
117
|
-
<div>Text2</div>
|
|
118
|
-
</DxcAccordionGroup.Accordion>
|
|
119
|
-
</DxcAccordionGroup>
|
|
120
|
-
);
|
|
121
|
-
fireEvent.click(getByText("Accordion1"));
|
|
122
|
-
fireEvent.click(getByText("Accordion2"));
|
|
123
|
-
expect(onActiveChange).toHaveBeenCalledTimes(0);
|
|
124
|
-
});
|
|
125
|
-
});
|
package/test/Alert.test.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render, fireEvent } from "@testing-library/react";
|
|
3
|
-
import DxcAlert from "../src/alert/Alert";
|
|
4
|
-
|
|
5
|
-
describe("Alert component tests", () => {
|
|
6
|
-
test("Info alert renders with correct text", () => {
|
|
7
|
-
const { getByText } = render(<DxcAlert type="info" inlineText="info-alert-text" />);
|
|
8
|
-
expect(getByText("information")).toBeTruthy();
|
|
9
|
-
expect(getByText("info-alert-text")).toBeTruthy();
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
test("Confirm alert renders with correct text", () => {
|
|
13
|
-
const { getByText } = render(<DxcAlert type="confirm" inlineText="confirm-alert-text" />);
|
|
14
|
-
expect(getByText("success")).toBeTruthy();
|
|
15
|
-
expect(getByText("confirm-alert-text")).toBeTruthy();
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
test("Warning alert renders with correct text", () => {
|
|
19
|
-
const { getByText } = render(<DxcAlert type="warning" inlineText="warning-alert-text" />);
|
|
20
|
-
expect(getByText("warning")).toBeTruthy();
|
|
21
|
-
expect(getByText("warning-alert-text")).toBeTruthy();
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
test("Error alert renders with correct text", () => {
|
|
25
|
-
const { getByText } = render(<DxcAlert type="error" inlineText="error-alert-text" />);
|
|
26
|
-
expect(getByText("error")).toBeTruthy();
|
|
27
|
-
expect(getByText("error-alert-text")).toBeTruthy();
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
test("Alert renders with correct children", () => {
|
|
31
|
-
const { getByText } = render(<DxcAlert inlineText="alert-text"><p>sample-children</p></DxcAlert>);
|
|
32
|
-
expect(getByText("alert-text")).toBeTruthy();
|
|
33
|
-
expect(getByText("sample-children")).toBeTruthy();
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
test("Calls correct function on close", () => {
|
|
37
|
-
const onClose = jest.fn();
|
|
38
|
-
const { getByRole } = render(<DxcAlert onClose={onClose} inlineText="info-alert-text" />);
|
|
39
|
-
|
|
40
|
-
const closeButton = getByRole("button");
|
|
41
|
-
fireEvent.click(closeButton);
|
|
42
|
-
expect(onClose).toHaveBeenCalled();
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
test("Modal alert calls correct function on close", () => {
|
|
46
|
-
const onClose = jest.fn();
|
|
47
|
-
const { getByRole } = render(<DxcAlert onClose={onClose} mode="modal" inlineText="info-alert-text" />);
|
|
48
|
-
|
|
49
|
-
const closeButton = getByRole("button");
|
|
50
|
-
fireEvent.click(closeButton);
|
|
51
|
-
expect(onClose).toHaveBeenCalled();
|
|
52
|
-
});
|
|
53
|
-
});
|
package/test/Box.test.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render } from "@testing-library/react";
|
|
3
|
-
import DxcBox from "../src/card/Card";
|
|
4
|
-
|
|
5
|
-
describe("Box component tests", () => {
|
|
6
|
-
test("Box renders with correct text", () => {
|
|
7
|
-
const { getByText } = render(<DxcBox>test-box</DxcBox>);
|
|
8
|
-
expect(getByText("test-box")).toBeTruthy();
|
|
9
|
-
});
|
|
10
|
-
});
|
package/test/Button.test.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render, fireEvent } from "@testing-library/react";
|
|
3
|
-
import DxcButton from "../src/button/Button";
|
|
4
|
-
|
|
5
|
-
describe("Button component tests", () => {
|
|
6
|
-
test("Button renders with correct text", () => {
|
|
7
|
-
const { getByText } = render(<DxcButton label="Button" />);
|
|
8
|
-
expect(getByText("Button")).toBeTruthy();
|
|
9
|
-
});
|
|
10
|
-
test("Calls correct function on click", () => {
|
|
11
|
-
const onClick = jest.fn();
|
|
12
|
-
const { getByText } = render(<DxcButton label="Button" onClick={onClick} />);
|
|
13
|
-
|
|
14
|
-
const button = getByText("Button");
|
|
15
|
-
fireEvent.click(button);
|
|
16
|
-
expect(onClick).toHaveBeenCalled();
|
|
17
|
-
});
|
|
18
|
-
});
|
package/test/Card.test.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render, fireEvent } from "@testing-library/react";
|
|
3
|
-
import DxcCard from "../src/card/Card";
|
|
4
|
-
|
|
5
|
-
describe("Card component tests", () => {
|
|
6
|
-
test("Card renders with correct content", () => {
|
|
7
|
-
const { getByText } = render(<DxcCard>test-card</DxcCard>);
|
|
8
|
-
expect(getByText("test-card")).toBeTruthy();
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
test("Card renders with correct href", () => {
|
|
12
|
-
const { getByRole } = render(<DxcCard linkHref="/testPage">test-card</DxcCard>);
|
|
13
|
-
const card = getByRole("link");
|
|
14
|
-
expect(card.getAttribute("href")).toEqual("/testPage");
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
test("Card renders with correct image", () => {
|
|
18
|
-
const { getByRole } = render(<DxcCard imageSrc="/testImage">test-card</DxcCard>);
|
|
19
|
-
const card = getByRole("img");
|
|
20
|
-
expect(card.getAttribute("src")).toEqual("/testImage");
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
test("OnClick function is called", () => {
|
|
24
|
-
const onClick = jest.fn();
|
|
25
|
-
const { getByText } = render(<DxcCard onClick={onClick}>test-card</DxcCard>);
|
|
26
|
-
const card = getByText("test-card");
|
|
27
|
-
fireEvent.click(card);
|
|
28
|
-
expect(onClick).toHaveBeenCalled();
|
|
29
|
-
});
|
|
30
|
-
});
|
package/test/Checkbox.test.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { render, fireEvent } from "@testing-library/react";
|
|
3
|
-
|
|
4
|
-
import DxcCheckbox from "../src/checkbox/Checkbox";
|
|
5
|
-
|
|
6
|
-
describe("Checkbox component tests", () => {
|
|
7
|
-
test("Checkbox renders with correct text", () => {
|
|
8
|
-
const { getByText } = render(<DxcCheckbox label="Checkbox" />);
|
|
9
|
-
|
|
10
|
-
expect(getByText("Checkbox")).toBeTruthy();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
test("Calls correct function on click", () => {
|
|
14
|
-
const onChange = jest.fn();
|
|
15
|
-
const { getByText } = render(<DxcCheckbox label="Checkbox" onChange={onChange} />);
|
|
16
|
-
|
|
17
|
-
fireEvent.click(getByText("Checkbox"));
|
|
18
|
-
expect(onChange).toHaveBeenCalled();
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
test("Uncontrolled checkbox", () => {
|
|
22
|
-
const onChange = jest.fn();
|
|
23
|
-
const component = render(<DxcCheckbox label="Checkbox" onChange={onChange} />);
|
|
24
|
-
const visibleCheckbox = component.getByText("Checkbox");
|
|
25
|
-
const input = component.getByRole("checkbox");
|
|
26
|
-
expect(input.checked).toBe(false);
|
|
27
|
-
fireEvent.click(visibleCheckbox);
|
|
28
|
-
expect(onChange).toHaveBeenCalled();
|
|
29
|
-
expect(onChange).toHaveBeenCalledWith(true);
|
|
30
|
-
expect(input.checked).toBe(true);
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
test("Controlled checkbox", () => {
|
|
34
|
-
const onChange = jest.fn();
|
|
35
|
-
const component = render(<DxcCheckbox label="Checkbox" checked={false} onChange={onChange} />);
|
|
36
|
-
|
|
37
|
-
const input = component.getByRole("checkbox");
|
|
38
|
-
const visibleCheckbox = component.getByText("Checkbox");
|
|
39
|
-
|
|
40
|
-
fireEvent.click(visibleCheckbox);
|
|
41
|
-
expect(onChange).toHaveBeenCalled();
|
|
42
|
-
expect(onChange).toHaveBeenCalledWith(true);
|
|
43
|
-
expect(input.checked).toBe(false);
|
|
44
|
-
});
|
|
45
|
-
});
|