@dxc-technology/halstack-react 0.0.0-11b4a77 → 0.0.0-11fed82
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 +3 -3
- package/BackgroundColorContext.js +6 -18
- package/HalstackContext.d.ts +1347 -6
- package/HalstackContext.js +125 -110
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +116 -157
- package/accordion/Accordion.stories.tsx +101 -125
- package/accordion/Accordion.test.js +25 -41
- package/accordion/types.d.ts +5 -16
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +30 -98
- package/accordion-group/AccordionGroup.stories.tsx +94 -67
- package/accordion-group/AccordionGroup.test.js +52 -105
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/types.d.ts +11 -16
- package/alert/Alert.js +19 -55
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.js +4 -17
- package/badge/types.d.ts +1 -1
- package/bleed/Bleed.js +13 -21
- package/bleed/Bleed.stories.tsx +1 -0
- package/bleed/types.d.ts +2 -2
- package/box/Box.d.ts +1 -1
- package/box/Box.js +18 -56
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -14
- package/bulleted-list/BulletedList.js +25 -46
- package/bulleted-list/BulletedList.stories.tsx +8 -92
- package/bulleted-list/types.d.ts +32 -5
- package/button/Button.d.ts +1 -1
- package/button/Button.js +61 -114
- package/button/Button.stories.tsx +160 -90
- package/button/Button.test.js +18 -17
- package/button/types.d.ts +12 -8
- package/card/Card.d.ts +1 -1
- package/card/Card.js +48 -89
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +6 -11
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +141 -178
- package/checkbox/Checkbox.stories.tsx +128 -94
- package/checkbox/Checkbox.test.js +160 -39
- package/checkbox/types.d.ts +11 -3
- package/chip/Chip.js +39 -79
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +16 -31
- package/chip/types.d.ts +4 -4
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +237 -0
- package/common/coreTokens.js +184 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +6 -12
- package/common/variables.d.ts +1499 -0
- package/common/variables.js +1019 -1134
- package/container/Container.d.ts +4 -0
- package/container/Container.js +187 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +214 -0
- package/date-input/DateInput.js +150 -299
- package/date-input/DateInput.stories.tsx +203 -56
- package/date-input/DateInput.test.js +700 -371
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +115 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +58 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +100 -0
- package/date-input/types.d.ts +72 -15
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +75 -106
- package/dialog/Dialog.stories.tsx +154 -171
- package/dialog/Dialog.test.js +287 -20
- package/dialog/types.d.ts +18 -25
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +243 -300
- package/dropdown/Dropdown.stories.tsx +245 -56
- package/dropdown/Dropdown.test.js +575 -165
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +63 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +67 -0
- package/dropdown/types.d.ts +32 -14
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +241 -355
- package/file-input/FileInput.stories.tsx +123 -12
- package/file-input/FileInput.test.js +369 -367
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +45 -96
- package/file-input/types.d.ts +25 -8
- package/flex/Flex.d.ts +2 -1
- package/flex/Flex.js +45 -62
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +86 -10
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +51 -101
- package/footer/Footer.stories.tsx +41 -19
- package/footer/Footer.test.js +33 -57
- package/footer/Icons.d.ts +2 -2
- package/footer/Icons.js +2 -7
- package/footer/types.d.ts +21 -22
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +76 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +90 -162
- package/header/Header.stories.tsx +118 -39
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +4 -9
- package/header/types.d.ts +5 -20
- package/heading/Heading.js +10 -32
- package/heading/Heading.test.js +71 -88
- package/heading/types.d.ts +7 -7
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/inset/Inset.js +13 -21
- package/inset/Inset.stories.tsx +2 -1
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +15 -6
- package/layout/ApplicationLayout.js +44 -96
- package/layout/ApplicationLayout.stories.tsx +81 -45
- package/layout/Icons.d.ts +8 -5
- package/layout/Icons.js +51 -59
- package/layout/SidenavContext.d.ts +1 -1
- package/layout/SidenavContext.js +3 -9
- package/layout/types.d.ts +21 -32
- package/link/Link.js +25 -46
- package/link/Link.stories.tsx +72 -5
- package/link/Link.test.js +24 -44
- package/link/types.d.ts +14 -14
- package/main.d.ts +6 -8
- package/main.js +19 -85
- package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
- package/{tabs-nav → nav-tabs}/NavTabs.js +22 -57
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +111 -7
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +37 -44
- package/nav-tabs/Tab.js +117 -0
- package/{tabs-nav → nav-tabs}/types.d.ts +14 -15
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +26 -35
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +701 -377
- package/number-input/types.d.ts +11 -5
- package/package.json +42 -45
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +21 -47
- package/paginator/Paginator.js +22 -55
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +253 -226
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +6 -17
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +35 -0
- package/password-input/PasswordInput.js +57 -126
- package/password-input/PasswordInput.stories.tsx +1 -32
- package/password-input/PasswordInput.test.js +160 -142
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.js +67 -87
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +39 -4
- package/progress-bar/ProgressBar.test.js +72 -44
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.js +15 -39
- package/quick-nav/QuickNav.stories.tsx +112 -20
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +59 -76
- package/radio-group/RadioGroup.js +68 -116
- package/radio-group/RadioGroup.stories.tsx +132 -18
- package/radio-group/RadioGroup.test.js +518 -457
- package/radio-group/types.d.ts +10 -10
- package/resultset-table/Icons.d.ts +7 -0
- package/resultset-table/Icons.js +47 -0
- package/resultset-table/ResultsetTable.js +159 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +50 -25
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +101 -144
- package/{resultsetTable → resultset-table}/types.d.ts +7 -7
- package/select/Icons.d.ts +7 -7
- package/select/Icons.js +1 -5
- package/select/Listbox.js +17 -49
- package/select/Option.js +20 -50
- package/select/Select.js +105 -183
- package/select/Select.stories.tsx +497 -152
- package/select/Select.test.js +1930 -1758
- package/select/types.d.ts +16 -19
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +47 -0
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +129 -77
- package/sidenav/Sidenav.stories.tsx +251 -151
- package/sidenav/Sidenav.test.js +26 -45
- package/sidenav/types.d.ts +52 -26
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +144 -168
- package/slider/Slider.test.js +185 -81
- package/slider/types.d.ts +7 -3
- package/spinner/Spinner.js +27 -63
- package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +53 -27
- package/spinner/Spinner.test.js +26 -35
- package/spinner/types.d.ts +3 -3
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +148 -124
- package/switch/Switch.stories.tsx +37 -60
- package/switch/Switch.test.js +138 -56
- package/switch/types.d.ts +7 -3
- package/table/Table.js +7 -26
- package/table/{Table.stories.jsx → Table.stories.tsx} +80 -1
- package/table/Table.test.js +3 -8
- package/table/types.d.ts +8 -8
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +113 -0
- package/tabs/Tabs.js +315 -141
- package/tabs/Tabs.stories.tsx +119 -5
- package/tabs/Tabs.test.js +223 -69
- package/tabs/types.d.ts +28 -18
- package/tag/Tag.js +29 -61
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +20 -31
- package/tag/types.d.ts +7 -7
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +56 -0
- package/text-input/Suggestion.js +40 -28
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +89 -0
- package/text-input/TextInput.js +280 -458
- package/text-input/TextInput.stories.tsx +266 -275
- package/text-input/TextInput.test.js +1402 -1375
- package/text-input/types.d.ts +43 -16
- package/textarea/Textarea.js +63 -100
- package/textarea/Textarea.stories.tsx +175 -0
- package/textarea/Textarea.test.js +152 -183
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +95 -106
- package/toggle-group/ToggleGroup.stories.tsx +49 -4
- package/toggle-group/ToggleGroup.test.js +69 -88
- package/toggle-group/types.d.ts +26 -17
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +15 -123
- package/typography/Typography.stories.tsx +1 -1
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +1251 -1
- package/useTheme.js +2 -9
- package/useTranslatedLabels.d.ts +84 -1
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +94 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +114 -0
- package/wizard/Wizard.js +24 -66
- package/wizard/Wizard.stories.tsx +40 -1
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +7 -7
- package/card/ice-cream.jpg +0 -0
- package/common/RequiredComponent.js +0 -32
- package/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/resultsetTable/ResultsetTable.js +0 -254
- package/row/Row.d.ts +0 -3
- package/row/Row.js +0 -127
- package/row/Row.stories.tsx +0 -237
- package/row/types.d.ts +0 -28
- package/slider/Slider.stories.tsx +0 -177
- package/stack/Stack.d.ts +0 -4
- package/stack/Stack.js +0 -56
- package/stack/Stack.stories.tsx +0 -263
- package/stack/types.d.ts +0 -32
- package/tabs-nav/Tab.js +0 -132
- package/textarea/Textarea.stories.jsx +0 -157
- /package/{resultsetTable → container}/types.js +0 -0
- /package/{row → grid}/types.js +0 -0
- /package/{stack → image}/types.js +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/types.js +0 -0
- /package/{resultsetTable → resultset-table}/ResultsetTable.d.ts +0 -0
- /package/{number-input/numberInputContextTypes.js → resultset-table/types.js} +0 -0
package/link/Link.stories.tsx
CHANGED
|
@@ -2,6 +2,7 @@ import React from "react";
|
|
|
2
2
|
import DxcLink from "./Link";
|
|
3
3
|
import Title from "../../.storybook/components/Title";
|
|
4
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
5
6
|
|
|
6
7
|
export default {
|
|
7
8
|
title: "Link",
|
|
@@ -19,6 +20,12 @@ const icon = (
|
|
|
19
20
|
</svg>
|
|
20
21
|
);
|
|
21
22
|
|
|
23
|
+
const opinionatedTheme = {
|
|
24
|
+
link: {
|
|
25
|
+
baseColor: "#5f249f",
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
|
|
22
29
|
export const Chromatic = () => (
|
|
23
30
|
<>
|
|
24
31
|
<Title title="With anchor" theme="light" level={2} />
|
|
@@ -68,11 +75,18 @@ export const Chromatic = () => (
|
|
|
68
75
|
</ExampleContainer>
|
|
69
76
|
<ExampleContainer pseudoState="pseudo-hover">
|
|
70
77
|
<Title title="Long text with hover" theme="light" level={4} />
|
|
71
|
-
Lorem
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
78
|
+
Lorem{" "}
|
|
79
|
+
<DxcLink href="https://www.google.com" icon={icon}>
|
|
80
|
+
Test
|
|
81
|
+
</DxcLink>{" "}
|
|
82
|
+
ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
|
|
83
|
+
aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
|
|
84
|
+
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
|
|
85
|
+
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit{" "}
|
|
86
|
+
<DxcLink href="https://www.google.com" icon={icon} iconPosition="after">
|
|
87
|
+
Test
|
|
88
|
+
</DxcLink>{" "}
|
|
89
|
+
anim id est laborum.
|
|
76
90
|
</ExampleContainer>
|
|
77
91
|
<ExampleContainer pseudoState="pseudo-focus">
|
|
78
92
|
<Title title="Long text with focus" theme="light" level={4} />
|
|
@@ -182,5 +196,58 @@ export const Chromatic = () => (
|
|
|
182
196
|
Test
|
|
183
197
|
</DxcLink>
|
|
184
198
|
</ExampleContainer>
|
|
199
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
200
|
+
<ExampleContainer>
|
|
201
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
202
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
203
|
+
<DxcLink disabled>Test</DxcLink>
|
|
204
|
+
</HalstackProvider>
|
|
205
|
+
</ExampleContainer>
|
|
206
|
+
<ExampleContainer>
|
|
207
|
+
<Title title="Icon before" theme="light" level={4} />
|
|
208
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
209
|
+
<DxcLink href="https://www.google.com" icon={icon} iconPosition="before">
|
|
210
|
+
Test
|
|
211
|
+
</DxcLink>
|
|
212
|
+
</HalstackProvider>
|
|
213
|
+
</ExampleContainer>
|
|
214
|
+
<ExampleContainer>
|
|
215
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
216
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
217
|
+
<DxcLink disabled>Test</DxcLink>
|
|
218
|
+
</HalstackProvider>
|
|
219
|
+
</ExampleContainer>
|
|
220
|
+
<ExampleContainer>
|
|
221
|
+
<Title title="Icon after" theme="light" level={4} />{" "}
|
|
222
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
223
|
+
<DxcLink onClick={() => {}} icon={icon} iconPosition="after">
|
|
224
|
+
Test
|
|
225
|
+
</DxcLink>
|
|
226
|
+
</HalstackProvider>
|
|
227
|
+
</ExampleContainer>
|
|
228
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
229
|
+
<Title title="With link hovered" theme="light" level={4} />
|
|
230
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
231
|
+
<DxcLink onClick={() => {}}>Test</DxcLink>
|
|
232
|
+
</HalstackProvider>
|
|
233
|
+
</ExampleContainer>
|
|
234
|
+
<ExampleContainer pseudoState="pseudo-focus">
|
|
235
|
+
<Title title="With link focused" theme="light" level={4} />
|
|
236
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
237
|
+
<DxcLink onClick={() => {}}>Test</DxcLink>
|
|
238
|
+
</HalstackProvider>
|
|
239
|
+
</ExampleContainer>
|
|
240
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
241
|
+
<Title title="With link active" theme="light" level={4} />
|
|
242
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
243
|
+
<DxcLink onClick={() => {}}>Test</DxcLink>
|
|
244
|
+
</HalstackProvider>
|
|
245
|
+
</ExampleContainer>
|
|
246
|
+
<ExampleContainer pseudoState="pseudo-visited">
|
|
247
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
248
|
+
<Title title="With link visited" theme="light" level={4} />
|
|
249
|
+
<DxcLink href="https://www.google.com">Test</DxcLink>
|
|
250
|
+
</HalstackProvider>
|
|
251
|
+
</ExampleContainer>
|
|
185
252
|
</>
|
|
186
253
|
);
|
package/link/Link.test.js
CHANGED
|
@@ -1,83 +1,63 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _react = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
5
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
|
|
9
|
-
var _Link = _interopRequireDefault(require("./Link"));
|
|
10
|
-
|
|
6
|
+
var _Link = _interopRequireDefault(require("./Link.tsx"));
|
|
11
7
|
describe("Link component tests", function () {
|
|
12
8
|
test("Link renders with correct text", function () {
|
|
13
9
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], null, "Link")),
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
getByText = _render.getByText;
|
|
16
11
|
expect(getByText("Link")).toBeTruthy();
|
|
17
12
|
});
|
|
18
13
|
test("Link renders with correct href", function () {
|
|
19
14
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
15
|
+
href: "/testPage"
|
|
16
|
+
}, "Link")),
|
|
17
|
+
getByRole = _render2.getByRole;
|
|
24
18
|
expect(getByRole("link").getAttribute("href")).toEqual("/testPage");
|
|
25
19
|
});
|
|
26
20
|
test("Link renders with correct disabled state", function () {
|
|
27
21
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
22
|
+
href: "/testPage",
|
|
23
|
+
disabled: true
|
|
24
|
+
}, "Link")),
|
|
25
|
+
getByText = _render3.getByText;
|
|
33
26
|
expect(getByText("Link").hasAttribute("href")).toBeFalsy();
|
|
34
|
-
|
|
35
27
|
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
},
|
|
39
|
-
|
|
40
|
-
}, "LinkButton")),
|
|
41
|
-
getByTextLinkButton = _render4.getByText;
|
|
42
|
-
|
|
28
|
+
onClick: function onClick() {},
|
|
29
|
+
disabled: true
|
|
30
|
+
}, "LinkButton")),
|
|
31
|
+
getByTextLinkButton = _render4.getByText;
|
|
43
32
|
expect(getByTextLinkButton("LinkButton").hasAttribute("onclick")).toBeFalsy();
|
|
44
33
|
});
|
|
45
34
|
test("Link open new tab", function () {
|
|
46
35
|
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
36
|
+
href: "/testPage",
|
|
37
|
+
newWindow: true
|
|
38
|
+
}, "Link")),
|
|
39
|
+
getByRole = _render5.getByRole;
|
|
52
40
|
expect(getByRole("link").getAttribute("target")).toEqual("_blank");
|
|
53
41
|
});
|
|
54
42
|
test("Link onClick called", function () {
|
|
55
43
|
var onClick = jest.fn();
|
|
56
|
-
|
|
57
44
|
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
45
|
+
onClick: onClick
|
|
46
|
+
}, "Link")),
|
|
47
|
+
getByText = _render6.getByText;
|
|
62
48
|
var link = getByText("Link");
|
|
63
|
-
|
|
64
49
|
_react2.fireEvent.click(link);
|
|
65
|
-
|
|
66
50
|
expect(onClick).toHaveBeenCalled();
|
|
67
51
|
});
|
|
68
52
|
test("Disabled link onClick not called", function () {
|
|
69
53
|
var onClick = jest.fn();
|
|
70
|
-
|
|
71
54
|
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Link["default"], {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
55
|
+
onClick: onClick,
|
|
56
|
+
disabled: true
|
|
57
|
+
}, "Link")),
|
|
58
|
+
getByText = _render7.getByText;
|
|
77
59
|
var link = getByText("Link");
|
|
78
|
-
|
|
79
60
|
_react2.fireEvent.click(link);
|
|
80
|
-
|
|
81
61
|
expect(onClick).toHaveBeenCalledTimes(0);
|
|
82
62
|
});
|
|
83
63
|
});
|
package/link/types.d.ts
CHANGED
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
type Margin = {
|
|
4
4
|
top?: Space;
|
|
5
5
|
bottom?: Space;
|
|
6
6
|
left?: Space;
|
|
7
7
|
right?: Space;
|
|
8
8
|
};
|
|
9
|
-
|
|
10
|
-
export
|
|
9
|
+
type SVG = React.ReactNode & React.SVGProps<SVGSVGElement>;
|
|
10
|
+
export type LinkProps = {
|
|
11
|
+
/**
|
|
12
|
+
* If true, the link is disabled.
|
|
13
|
+
*/
|
|
14
|
+
disabled?: boolean;
|
|
11
15
|
/**
|
|
12
16
|
* If true, the color is inherited from parent.
|
|
13
17
|
*/
|
|
14
18
|
inheritColor?: boolean;
|
|
15
19
|
/**
|
|
16
|
-
*
|
|
20
|
+
* Element or path used as the icon that will be placed next to the link text.
|
|
17
21
|
*/
|
|
18
|
-
|
|
22
|
+
icon?: string | SVG;
|
|
19
23
|
/**
|
|
20
24
|
* Indicates the position of the icon in the component.
|
|
21
25
|
*/
|
|
@@ -33,6 +37,10 @@ export declare type LinkProps = {
|
|
|
33
37
|
* function will be called when the user clicks the link.
|
|
34
38
|
*/
|
|
35
39
|
onClick?: () => void;
|
|
40
|
+
/**
|
|
41
|
+
* Text of the link.
|
|
42
|
+
*/
|
|
43
|
+
children: string;
|
|
36
44
|
/**
|
|
37
45
|
* Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
38
46
|
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
@@ -42,13 +50,5 @@ export declare type LinkProps = {
|
|
|
42
50
|
* Value of the tabindex.
|
|
43
51
|
*/
|
|
44
52
|
tabIndex?: number;
|
|
45
|
-
/**
|
|
46
|
-
* Content of the link.
|
|
47
|
-
*/
|
|
48
|
-
children: string;
|
|
49
|
-
/**
|
|
50
|
-
* Element or path used as the icon that will be placed next to the link text.
|
|
51
|
-
*/
|
|
52
|
-
icon?: string | SVG;
|
|
53
53
|
};
|
|
54
54
|
export {};
|
package/main.d.ts
CHANGED
|
@@ -5,8 +5,6 @@ import DxcCard from "./card/Card";
|
|
|
5
5
|
import DxcCheckbox from "./checkbox/Checkbox";
|
|
6
6
|
import DxcDialog from "./dialog/Dialog";
|
|
7
7
|
import DxcDropdown from "./dropdown/Dropdown";
|
|
8
|
-
import DxcFooter from "./footer/Footer";
|
|
9
|
-
import DxcHeader from "./header/Header";
|
|
10
8
|
import DxcSlider from "./slider/Slider";
|
|
11
9
|
import DxcSwitch from "./switch/Switch";
|
|
12
10
|
import DxcTabs from "./tabs/Tabs";
|
|
@@ -16,11 +14,10 @@ import DxcTable from "./table/Table";
|
|
|
16
14
|
import DxcBox from "./box/Box";
|
|
17
15
|
import DxcTag from "./tag/Tag";
|
|
18
16
|
import DxcPaginator from "./paginator/Paginator";
|
|
19
|
-
import DxcSidenav from "./sidenav/Sidenav";
|
|
20
17
|
import DxcWizard from "./wizard/Wizard";
|
|
21
18
|
import DxcLink from "./link/Link";
|
|
22
19
|
import DxcHeading from "./heading/Heading";
|
|
23
|
-
import DxcResultsetTable from "./
|
|
20
|
+
import DxcResultsetTable from "./resultset-table/ResultsetTable";
|
|
24
21
|
import DxcChip from "./chip/Chip";
|
|
25
22
|
import DxcApplicationLayout from "./layout/ApplicationLayout";
|
|
26
23
|
import DxcToggleGroup from "./toggle-group/ToggleGroup";
|
|
@@ -33,17 +30,18 @@ import DxcNumberInput from "./number-input/NumberInput";
|
|
|
33
30
|
import DxcTextarea from "./textarea/Textarea";
|
|
34
31
|
import DxcSelect from "./select/Select";
|
|
35
32
|
import DxcFileInput from "./file-input/FileInput";
|
|
36
|
-
import DxcStack from "./stack/Stack";
|
|
37
|
-
import DxcRow from "./row/Row";
|
|
38
33
|
import DxcRadioGroup from "./radio-group/RadioGroup";
|
|
39
34
|
import DxcBleed from "./bleed/Bleed";
|
|
40
35
|
import DxcInset from "./inset/Inset";
|
|
41
36
|
import DxcQuickNav from "./quick-nav/QuickNav";
|
|
42
|
-
import DxcNavTabs from "./tabs
|
|
37
|
+
import DxcNavTabs from "./nav-tabs/NavTabs";
|
|
43
38
|
import DxcFlex from "./flex/Flex";
|
|
44
39
|
import DxcTypography from "./typography/Typography";
|
|
45
40
|
import DxcParagraph from "./paragraph/Paragraph";
|
|
46
41
|
import DxcBulletedList from "./bulleted-list/BulletedList";
|
|
42
|
+
import DxcGrid from "./grid/Grid";
|
|
43
|
+
import DxcImage from "./image/Image";
|
|
44
|
+
import DxcContainer from "./container/Container";
|
|
47
45
|
import HalstackContext, { HalstackProvider, HalstackLanguageContext } from "./HalstackContext";
|
|
48
46
|
import { BackgroundColorProvider } from "./BackgroundColorContext";
|
|
49
|
-
export { DxcAlert, DxcButton,
|
|
47
|
+
export { DxcAlert, DxcButton, DxcCheckbox, DxcTextInput, DxcDropdown, DxcSwitch, DxcSlider, DxcTable, DxcTabs, DxcToggleGroup, DxcDialog, DxcCard, DxcProgressBar, DxcAccordion, DxcSpinner, DxcBox, DxcTag, DxcPaginator, DxcWizard, DxcLink, DxcHeading, DxcResultsetTable, DxcChip, DxcApplicationLayout, HalstackContext, HalstackLanguageContext, HalstackProvider, BackgroundColorProvider, DxcAccordionGroup, DxcBadge, DxcPasswordInput, DxcDateInput, DxcNumberInput, DxcTextarea, DxcSelect, DxcFileInput, DxcRadioGroup, DxcBleed, DxcInset, DxcQuickNav, DxcNavTabs, DxcFlex, DxcTypography, DxcParagraph, DxcBulletedList, DxcGrid, DxcImage, DxcContainer, };
|
package/main.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
@@ -85,6 +83,12 @@ Object.defineProperty(exports, "DxcChip", {
|
|
|
85
83
|
return _Chip["default"];
|
|
86
84
|
}
|
|
87
85
|
});
|
|
86
|
+
Object.defineProperty(exports, "DxcContainer", {
|
|
87
|
+
enumerable: true,
|
|
88
|
+
get: function get() {
|
|
89
|
+
return _Container["default"];
|
|
90
|
+
}
|
|
91
|
+
});
|
|
88
92
|
Object.defineProperty(exports, "DxcDateInput", {
|
|
89
93
|
enumerable: true,
|
|
90
94
|
get: function get() {
|
|
@@ -115,22 +119,22 @@ Object.defineProperty(exports, "DxcFlex", {
|
|
|
115
119
|
return _Flex["default"];
|
|
116
120
|
}
|
|
117
121
|
});
|
|
118
|
-
Object.defineProperty(exports, "
|
|
122
|
+
Object.defineProperty(exports, "DxcGrid", {
|
|
119
123
|
enumerable: true,
|
|
120
124
|
get: function get() {
|
|
121
|
-
return
|
|
125
|
+
return _Grid["default"];
|
|
122
126
|
}
|
|
123
127
|
});
|
|
124
|
-
Object.defineProperty(exports, "
|
|
128
|
+
Object.defineProperty(exports, "DxcHeading", {
|
|
125
129
|
enumerable: true,
|
|
126
130
|
get: function get() {
|
|
127
|
-
return
|
|
131
|
+
return _Heading["default"];
|
|
128
132
|
}
|
|
129
133
|
});
|
|
130
|
-
Object.defineProperty(exports, "
|
|
134
|
+
Object.defineProperty(exports, "DxcImage", {
|
|
131
135
|
enumerable: true,
|
|
132
136
|
get: function get() {
|
|
133
|
-
return
|
|
137
|
+
return _Image["default"];
|
|
134
138
|
}
|
|
135
139
|
});
|
|
136
140
|
Object.defineProperty(exports, "DxcInset", {
|
|
@@ -199,24 +203,12 @@ Object.defineProperty(exports, "DxcResultsetTable", {
|
|
|
199
203
|
return _ResultsetTable["default"];
|
|
200
204
|
}
|
|
201
205
|
});
|
|
202
|
-
Object.defineProperty(exports, "DxcRow", {
|
|
203
|
-
enumerable: true,
|
|
204
|
-
get: function get() {
|
|
205
|
-
return _Row["default"];
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
206
|
Object.defineProperty(exports, "DxcSelect", {
|
|
209
207
|
enumerable: true,
|
|
210
208
|
get: function get() {
|
|
211
209
|
return _Select["default"];
|
|
212
210
|
}
|
|
213
211
|
});
|
|
214
|
-
Object.defineProperty(exports, "DxcSidenav", {
|
|
215
|
-
enumerable: true,
|
|
216
|
-
get: function get() {
|
|
217
|
-
return _Sidenav["default"];
|
|
218
|
-
}
|
|
219
|
-
});
|
|
220
212
|
Object.defineProperty(exports, "DxcSlider", {
|
|
221
213
|
enumerable: true,
|
|
222
214
|
get: function get() {
|
|
@@ -229,12 +221,6 @@ Object.defineProperty(exports, "DxcSpinner", {
|
|
|
229
221
|
return _Spinner["default"];
|
|
230
222
|
}
|
|
231
223
|
});
|
|
232
|
-
Object.defineProperty(exports, "DxcStack", {
|
|
233
|
-
enumerable: true,
|
|
234
|
-
get: function get() {
|
|
235
|
-
return _Stack["default"];
|
|
236
|
-
}
|
|
237
|
-
});
|
|
238
224
|
Object.defineProperty(exports, "DxcSwitch", {
|
|
239
225
|
enumerable: true,
|
|
240
226
|
get: function get() {
|
|
@@ -307,103 +293,51 @@ Object.defineProperty(exports, "HalstackProvider", {
|
|
|
307
293
|
return _HalstackContext.HalstackProvider;
|
|
308
294
|
}
|
|
309
295
|
});
|
|
310
|
-
|
|
311
296
|
var _Alert = _interopRequireDefault(require("./alert/Alert"));
|
|
312
|
-
|
|
313
297
|
var _Accordion = _interopRequireDefault(require("./accordion/Accordion"));
|
|
314
|
-
|
|
315
298
|
var _Button = _interopRequireDefault(require("./button/Button"));
|
|
316
|
-
|
|
317
299
|
var _Card = _interopRequireDefault(require("./card/Card"));
|
|
318
|
-
|
|
319
300
|
var _Checkbox = _interopRequireDefault(require("./checkbox/Checkbox"));
|
|
320
|
-
|
|
321
301
|
var _Dialog = _interopRequireDefault(require("./dialog/Dialog"));
|
|
322
|
-
|
|
323
302
|
var _Dropdown = _interopRequireDefault(require("./dropdown/Dropdown"));
|
|
324
|
-
|
|
325
|
-
var _Footer = _interopRequireDefault(require("./footer/Footer"));
|
|
326
|
-
|
|
327
|
-
var _Header = _interopRequireDefault(require("./header/Header"));
|
|
328
|
-
|
|
329
303
|
var _Slider = _interopRequireDefault(require("./slider/Slider"));
|
|
330
|
-
|
|
331
304
|
var _Switch = _interopRequireDefault(require("./switch/Switch"));
|
|
332
|
-
|
|
333
305
|
var _Tabs = _interopRequireDefault(require("./tabs/Tabs"));
|
|
334
|
-
|
|
335
306
|
var _ProgressBar = _interopRequireDefault(require("./progress-bar/ProgressBar"));
|
|
336
|
-
|
|
337
307
|
var _Spinner = _interopRequireDefault(require("./spinner/Spinner"));
|
|
338
|
-
|
|
339
308
|
var _Table = _interopRequireDefault(require("./table/Table"));
|
|
340
|
-
|
|
341
309
|
var _Box = _interopRequireDefault(require("./box/Box"));
|
|
342
|
-
|
|
343
310
|
var _Tag = _interopRequireDefault(require("./tag/Tag"));
|
|
344
|
-
|
|
345
311
|
var _Paginator = _interopRequireDefault(require("./paginator/Paginator"));
|
|
346
|
-
|
|
347
|
-
var _Sidenav = _interopRequireDefault(require("./sidenav/Sidenav"));
|
|
348
|
-
|
|
349
312
|
var _Wizard = _interopRequireDefault(require("./wizard/Wizard"));
|
|
350
|
-
|
|
351
313
|
var _Link = _interopRequireDefault(require("./link/Link"));
|
|
352
|
-
|
|
353
314
|
var _Heading = _interopRequireDefault(require("./heading/Heading"));
|
|
354
|
-
|
|
355
|
-
var _ResultsetTable = _interopRequireDefault(require("./resultsetTable/ResultsetTable"));
|
|
356
|
-
|
|
315
|
+
var _ResultsetTable = _interopRequireDefault(require("./resultset-table/ResultsetTable"));
|
|
357
316
|
var _Chip = _interopRequireDefault(require("./chip/Chip"));
|
|
358
|
-
|
|
359
317
|
var _ApplicationLayout = _interopRequireDefault(require("./layout/ApplicationLayout"));
|
|
360
|
-
|
|
361
318
|
var _ToggleGroup = _interopRequireDefault(require("./toggle-group/ToggleGroup"));
|
|
362
|
-
|
|
363
319
|
var _AccordionGroup = _interopRequireDefault(require("./accordion-group/AccordionGroup"));
|
|
364
|
-
|
|
365
320
|
var _Badge = _interopRequireDefault(require("./badge/Badge"));
|
|
366
|
-
|
|
367
321
|
var _TextInput = _interopRequireDefault(require("./text-input/TextInput"));
|
|
368
|
-
|
|
369
322
|
var _PasswordInput = _interopRequireDefault(require("./password-input/PasswordInput"));
|
|
370
|
-
|
|
371
323
|
var _DateInput = _interopRequireDefault(require("./date-input/DateInput"));
|
|
372
|
-
|
|
373
324
|
var _NumberInput = _interopRequireDefault(require("./number-input/NumberInput"));
|
|
374
|
-
|
|
375
325
|
var _Textarea = _interopRequireDefault(require("./textarea/Textarea"));
|
|
376
|
-
|
|
377
326
|
var _Select = _interopRequireDefault(require("./select/Select"));
|
|
378
|
-
|
|
379
327
|
var _FileInput = _interopRequireDefault(require("./file-input/FileInput"));
|
|
380
|
-
|
|
381
|
-
var _Stack = _interopRequireDefault(require("./stack/Stack"));
|
|
382
|
-
|
|
383
|
-
var _Row = _interopRequireDefault(require("./row/Row"));
|
|
384
|
-
|
|
385
328
|
var _RadioGroup = _interopRequireDefault(require("./radio-group/RadioGroup"));
|
|
386
|
-
|
|
387
329
|
var _Bleed = _interopRequireDefault(require("./bleed/Bleed"));
|
|
388
|
-
|
|
389
330
|
var _Inset = _interopRequireDefault(require("./inset/Inset"));
|
|
390
|
-
|
|
391
331
|
var _QuickNav = _interopRequireDefault(require("./quick-nav/QuickNav"));
|
|
392
|
-
|
|
393
|
-
var _NavTabs = _interopRequireDefault(require("./tabs-nav/NavTabs"));
|
|
394
|
-
|
|
332
|
+
var _NavTabs = _interopRequireDefault(require("./nav-tabs/NavTabs"));
|
|
395
333
|
var _Flex = _interopRequireDefault(require("./flex/Flex"));
|
|
396
|
-
|
|
397
334
|
var _Typography = _interopRequireDefault(require("./typography/Typography"));
|
|
398
|
-
|
|
399
335
|
var _Paragraph = _interopRequireDefault(require("./paragraph/Paragraph"));
|
|
400
|
-
|
|
401
336
|
var _BulletedList = _interopRequireDefault(require("./bulleted-list/BulletedList"));
|
|
402
|
-
|
|
337
|
+
var _Grid = _interopRequireDefault(require("./grid/Grid"));
|
|
338
|
+
var _Image = _interopRequireDefault(require("./image/Image"));
|
|
339
|
+
var _Container = _interopRequireDefault(require("./container/Container"));
|
|
403
340
|
var _HalstackContext = _interopRequireWildcard(require("./HalstackContext"));
|
|
404
|
-
|
|
405
341
|
var _BackgroundColorContext = require("./BackgroundColorContext");
|
|
406
|
-
|
|
407
|
-
function
|
|
408
|
-
|
|
409
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(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; }
|
|
342
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
343
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { NavTabsContextProps
|
|
2
|
+
import NavTabsPropsType, { NavTabsContextProps } from "./types";
|
|
3
3
|
export declare const NavTabsContext: React.Context<NavTabsContextProps>;
|
|
4
4
|
declare const DxcNavTabs: {
|
|
5
|
-
({ iconPosition, tabIndex, children }:
|
|
5
|
+
({ iconPosition, tabIndex, children }: NavTabsPropsType): JSX.Element;
|
|
6
6
|
Tab: React.ForwardRefExoticComponent<import("./types").TabProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
7
7
|
};
|
|
8
8
|
export default DxcNavTabs;
|