@dxc-technology/halstack-react 8.0.0 → 9.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/BackgroundColorContext.d.ts +2 -2
- package/BackgroundColorContext.js +1 -1
- package/HalstackContext.d.ts +1329 -5
- package/HalstackContext.js +114 -73
- package/accordion/Accordion.js +13 -24
- package/accordion/Accordion.stories.tsx +102 -13
- package/accordion/Accordion.test.js +1 -1
- package/accordion/types.d.ts +3 -3
- package/accordion-group/AccordionGroup.js +2 -2
- package/accordion-group/AccordionGroup.test.js +1 -1
- package/accordion-group/types.d.ts +2 -2
- package/alert/Alert.js +3 -5
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +1 -1
- package/box/Box.js +3 -5
- package/box/Box.stories.tsx +15 -0
- package/box/Box.test.js +1 -1
- package/button/Button.js +13 -15
- package/button/Button.stories.tsx +150 -8
- package/button/Button.test.js +1 -1
- package/button/types.d.ts +3 -3
- package/card/Card.js +12 -13
- package/card/Card.stories.tsx +12 -13
- package/card/Card.test.js +1 -1
- package/checkbox/Checkbox.js +3 -3
- package/checkbox/Checkbox.stories.tsx +52 -0
- package/checkbox/Checkbox.test.js +1 -1
- package/checkbox/types.d.ts +2 -2
- package/chip/Chip.js +18 -26
- package/chip/Chip.stories.tsx +96 -9
- package/chip/Chip.test.js +3 -5
- package/common/utils.d.ts +1 -0
- package/common/utils.js +4 -4
- package/common/variables.d.ts +1625 -0
- package/common/variables.js +280 -288
- package/date-input/Calendar.d.ts +1 -1
- package/date-input/Calendar.js +43 -43
- package/date-input/DateInput.js +74 -32
- package/date-input/DateInput.stories.tsx +183 -30
- package/date-input/DateInput.test.js +120 -37
- package/date-input/DatePicker.js +38 -52
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +75 -0
- package/date-input/YearPicker.d.ts +1 -1
- package/date-input/YearPicker.js +23 -12
- package/date-input/types.d.ts +6 -8
- package/dialog/Dialog.js +61 -74
- package/dialog/Dialog.stories.tsx +211 -159
- package/dialog/Dialog.test.js +302 -3
- package/dialog/types.d.ts +2 -2
- package/dropdown/Dropdown.js +5 -8
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +3 -2
- package/dropdown/DropdownMenu.js +8 -18
- package/dropdown/DropdownMenuItem.js +4 -17
- package/dropdown/types.d.ts +3 -3
- package/file-input/FileInput.js +4 -8
- package/file-input/FileInput.stories.tsx +85 -2
- package/file-input/FileInput.test.js +1 -42
- package/file-input/FileItem.js +1 -0
- package/footer/Footer.js +6 -8
- package/footer/Footer.stories.tsx +91 -0
- package/footer/Footer.test.js +14 -26
- package/header/Header.d.ts +3 -2
- package/header/Header.js +21 -23
- package/header/Header.stories.tsx +149 -6
- package/header/Header.test.js +2 -2
- package/header/types.d.ts +2 -2
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.js +1 -1
- package/layout/ApplicationLayout.d.ts +1 -1
- package/layout/ApplicationLayout.js +1 -1
- package/link/Link.js +2 -2
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +2 -4
- package/link/types.d.ts +2 -2
- package/main.d.ts +1 -1
- package/main.js +1 -1
- package/{tabs-nav → nav-tabs}/NavTabs.js +1 -1
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +96 -6
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
- package/{tabs-nav → nav-tabs}/Tab.js +37 -17
- package/number-input/NumberInput.test.js +1 -1
- package/package.json +2 -2
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +16 -28
- package/paginator/Paginator.js +6 -14
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +44 -47
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +5 -5
- package/password-input/PasswordInput.test.js +1 -1
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +35 -2
- package/progress-bar/ProgressBar.test.js +1 -1
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.stories.tsx +14 -0
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +1 -1
- package/resultsetTable/ResultsetTable.js +2 -2
- package/resultsetTable/ResultsetTable.test.js +18 -23
- package/resultsetTable/types.d.ts +3 -3
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +5 -34
- package/select/Option.js +11 -24
- package/select/Select.js +56 -35
- package/select/Select.stories.tsx +492 -145
- package/select/Select.test.js +76 -81
- package/select/types.d.ts +2 -2
- package/sidenav/Sidenav.js +9 -11
- package/sidenav/Sidenav.stories.tsx +148 -46
- package/slider/Slider.js +6 -7
- package/slider/Slider.stories.tsx +57 -0
- package/slider/Slider.test.js +1 -1
- package/slider/types.d.ts +2 -2
- package/spinner/Spinner.js +17 -23
- package/spinner/Spinner.stories.jsx +53 -27
- package/spinner/Spinner.test.js +1 -1
- package/switch/Switch.js +3 -3
- package/switch/Switch.stories.tsx +33 -0
- package/switch/Switch.test.js +1 -1
- package/switch/types.d.ts +2 -2
- package/table/Table.js +2 -2
- package/table/Table.stories.jsx +80 -1
- package/table/Table.test.js +1 -1
- package/tabs/Tab.js +12 -14
- package/tabs/Tabs.js +4 -6
- package/tabs/Tabs.stories.tsx +45 -5
- package/tabs/Tabs.test.js +4 -5
- package/tabs/types.d.ts +2 -2
- package/tag/Tag.js +7 -9
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +1 -1
- package/text-input/Suggestion.js +34 -7
- package/text-input/TextInput.js +10 -14
- package/text-input/TextInput.stories.tsx +92 -4
- package/text-input/TextInput.test.js +125 -26
- package/textarea/Textarea.js +3 -3
- package/textarea/Textarea.stories.jsx +60 -1
- package/textarea/Textarea.test.js +1 -1
- package/toggle-group/ToggleGroup.js +7 -4
- package/toggle-group/ToggleGroup.stories.tsx +42 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- package/toggle-group/types.d.ts +1 -1
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +14 -113
- package/typography/Typography.stories.tsx +1 -1
- package/useTheme.d.ts +1234 -1
- package/useTheme.js +1 -1
- package/useTranslatedLabels.d.ts +84 -1
- 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.js +2 -2
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +5 -6
- /package/{tabs-nav → nav-tabs}/NavTabs.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/types.d.ts +0 -0
- /package/{tabs-nav → nav-tabs}/types.js +0 -0
|
@@ -30,10 +30,33 @@ const folderIcon = (
|
|
|
30
30
|
</svg>
|
|
31
31
|
);
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
<svg xmlns="http://www.w3.org/2000/svg"
|
|
35
|
-
<path d="
|
|
36
|
-
|
|
33
|
+
const smallIcon = (
|
|
34
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" height="20" width="20">
|
|
35
|
+
<path d="m7.646 18.333-.313-2.625q-.208-.125-.458-.27-.25-.146-.458-.271l-2.438 1.021-2.354-4.063 2.083-1.583V9.458L1.625 7.875l2.354-4.063 2.438 1.021q.208-.125.458-.27.25-.146.458-.271l.313-2.625h4.708l.313 2.625q.208.125.458.271.25.145.458.27l2.438-1.021 2.354 4.063-2.063 1.583v1.084l2.063 1.583-2.354 4.063-2.438-1.021q-.208.125-.458.271-.25.145-.458.27l-.313 2.625ZM10 12.979q1.229 0 2.104-.875T12.979 10q0-1.229-.875-2.104T10 7.021q-1.229 0-2.104.875T7.021 10q0 1.229.875 2.104t2.104.875Zm0-1.75q-.5 0-.865-.364-.364-.365-.364-.865t.364-.865q.365-.364.865-.364t.865.364q.364.365.364.865t-.364.865q-.365.364-.865.364ZM10.021 10Zm-.854 6.583h1.666l.25-2.166q.605-.167 1.167-.5.562-.334 1.021-.792l2.021.854.833-1.375-1.771-1.354q.104-.292.146-.604.042-.313.042-.646 0-.292-.042-.594t-.125-.635l1.771-1.375-.834-1.375-2.02.875q-.48-.479-1.032-.802-.552-.323-1.156-.49l-.271-2.187H9.167l-.271 2.187q-.604.167-1.156.49-.552.323-1.011.781l-2.021-.854-.833 1.375 1.75 1.354q-.083.333-.125.646-.042.312-.042.604t.042.594q.042.302.125.635l-1.75 1.375.833 1.375 2.021-.854q.459.458 1.011.781.552.323 1.156.49Z" />
|
|
36
|
+
</svg>
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
const facebookIcon = (
|
|
40
|
+
<svg
|
|
41
|
+
version="1.1"
|
|
42
|
+
id="Capa_1"
|
|
43
|
+
x="0px"
|
|
44
|
+
y="0px"
|
|
45
|
+
width="438.536px"
|
|
46
|
+
height="438.536px"
|
|
47
|
+
viewBox="0 0 438.536 438.536"
|
|
48
|
+
fill="currentColor"
|
|
49
|
+
>
|
|
50
|
+
<g>
|
|
51
|
+
<path
|
|
52
|
+
d="M414.41,24.123C398.333,8.042,378.963,0,356.315,0H82.228C59.58,0,40.21,8.042,24.126,24.123
|
|
53
|
+
C8.045,40.207,0.003,59.576,0.003,82.225v274.084c0,22.647,8.042,42.018,24.123,58.102c16.084,16.084,35.454,24.126,58.102,24.126
|
|
54
|
+
h274.084c22.648,0,42.018-8.042,58.095-24.126c16.084-16.084,24.126-35.454,24.126-58.102V82.225
|
|
55
|
+
C438.532,59.576,430.49,40.204,414.41,24.123z M373.155,225.548h-49.963V406.84h-74.802V225.548H210.99V163.02h37.401v-37.402
|
|
56
|
+
c0-26.838,6.283-47.107,18.843-60.813c12.559-13.706,33.304-20.555,62.242-20.555h49.963v62.526h-31.401
|
|
57
|
+
c-10.663,0-17.467,1.853-20.417,5.568c-2.949,3.711-4.428,10.23-4.428,19.558v31.119h56.534L373.155,225.548z"
|
|
58
|
+
/>
|
|
59
|
+
</g>
|
|
37
60
|
</svg>
|
|
38
61
|
);
|
|
39
62
|
|
|
@@ -47,6 +70,14 @@ const advancedTheme = {
|
|
|
47
70
|
},
|
|
48
71
|
};
|
|
49
72
|
|
|
73
|
+
const opinionatedTheme = {
|
|
74
|
+
accordion: {
|
|
75
|
+
accentColor: "#5f249f",
|
|
76
|
+
titleFontColor: "#000000",
|
|
77
|
+
assistiveTextFontColor: "#666666",
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
|
|
50
81
|
export const Chromatic = () => (
|
|
51
82
|
<>
|
|
52
83
|
<Title title="Component anatomy" theme="light" level={2} />
|
|
@@ -78,8 +109,30 @@ export const Chromatic = () => (
|
|
|
78
109
|
</DxcAccordion>
|
|
79
110
|
</ExampleContainer>
|
|
80
111
|
<ExampleContainer>
|
|
81
|
-
<Title title="With
|
|
82
|
-
<DxcAccordion label="Accordion" assistiveText="Assistive text" icon={
|
|
112
|
+
<Title title="With smaller icon" theme="light" level={4} />
|
|
113
|
+
<DxcAccordion label="Accordion" assistiveText="Assistive text" icon={smallIcon}>
|
|
114
|
+
<div>
|
|
115
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
|
|
116
|
+
lobortis eget.
|
|
117
|
+
</div>
|
|
118
|
+
</DxcAccordion>
|
|
119
|
+
</ExampleContainer>
|
|
120
|
+
<ExampleContainer>
|
|
121
|
+
<Title title="With bigger icon (SVG)" theme="light" level={4} />
|
|
122
|
+
<DxcAccordion label="AccordionTest" assistiveText="Assistive text" icon={facebookIcon}>
|
|
123
|
+
<div>
|
|
124
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
|
|
125
|
+
lobortis eget.
|
|
126
|
+
</div>
|
|
127
|
+
</DxcAccordion>
|
|
128
|
+
</ExampleContainer>
|
|
129
|
+
<ExampleContainer>
|
|
130
|
+
<Title title="With bigger icon (image)" theme="light" level={4} />
|
|
131
|
+
<DxcAccordion
|
|
132
|
+
label="Accordion"
|
|
133
|
+
assistiveText="Assistive text"
|
|
134
|
+
icon="https://developer.apple.com/design/human-interface-guidelines/foundations/app-icons/images/icon-and-image-large-icon-settings_2x.png"
|
|
135
|
+
>
|
|
83
136
|
<div>
|
|
84
137
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
|
|
85
138
|
lobortis eget.
|
|
@@ -134,12 +187,7 @@ export const Chromatic = () => (
|
|
|
134
187
|
padding="medium"
|
|
135
188
|
>
|
|
136
189
|
<div style={{ display: "flex", flexDirection: "column", gap: "36px" }}>
|
|
137
|
-
<DxcTextInput
|
|
138
|
-
label="Label"
|
|
139
|
-
helperText="HelperText"
|
|
140
|
-
placeholder="Placeholder"
|
|
141
|
-
size="fillParent"
|
|
142
|
-
/>
|
|
190
|
+
<DxcTextInput label="Label" helperText="HelperText" placeholder="Placeholder" size="fillParent" />
|
|
143
191
|
<DxcButton label="Submit" size="medium" />
|
|
144
192
|
</div>
|
|
145
193
|
</DxcAccordion>
|
|
@@ -300,7 +348,48 @@ export const Chromatic = () => (
|
|
|
300
348
|
lobortis eget.
|
|
301
349
|
</div>
|
|
302
350
|
</DxcAccordion>
|
|
303
|
-
|
|
351
|
+
</ExampleContainer>
|
|
352
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
353
|
+
<ExampleContainer>
|
|
354
|
+
<Title title="With assistive text and icon" theme="light" level={4} />
|
|
355
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
356
|
+
<DxcAccordion label="Accordion" assistiveText="Assistive text" icon={folderIcon}>
|
|
357
|
+
Content
|
|
358
|
+
</DxcAccordion>
|
|
359
|
+
</HalstackProvider>
|
|
360
|
+
</ExampleContainer>
|
|
361
|
+
<ExampleContainer pseudoState="pseudo-hover">
|
|
362
|
+
<Title title="Hovered" theme="light" level={4} />
|
|
363
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
364
|
+
<DxcAccordion label="Hovered">
|
|
365
|
+
<div>
|
|
366
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
367
|
+
leo lobortis eget.
|
|
368
|
+
</div>
|
|
369
|
+
</DxcAccordion>
|
|
370
|
+
</HalstackProvider>
|
|
371
|
+
</ExampleContainer>
|
|
372
|
+
<ExampleContainer pseudoState="pseudo-active">
|
|
373
|
+
<Title title="Active" theme="light" level={4} />
|
|
374
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
375
|
+
<DxcAccordion label="Active">
|
|
376
|
+
<div>
|
|
377
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
378
|
+
leo lobortis eget.
|
|
379
|
+
</div>
|
|
380
|
+
</DxcAccordion>
|
|
381
|
+
</HalstackProvider>
|
|
382
|
+
</ExampleContainer>
|
|
383
|
+
<ExampleContainer>
|
|
384
|
+
<Title title="Disabled" theme="light" level={4} />
|
|
385
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
386
|
+
<DxcAccordion label="Disabled" assistiveText="Assistive text" icon={folderIcon} disabled>
|
|
387
|
+
<div>
|
|
388
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit
|
|
389
|
+
leo lobortis eget.
|
|
390
|
+
</div>
|
|
391
|
+
</DxcAccordion>
|
|
392
|
+
</HalstackProvider>
|
|
304
393
|
</ExampleContainer>
|
|
305
394
|
</>
|
|
306
395
|
);
|
|
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
6
6
|
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
8
|
|
|
9
|
-
var _Accordion = _interopRequireDefault(require("./Accordion"));
|
|
9
|
+
var _Accordion = _interopRequireDefault(require("./Accordion.tsx"));
|
|
10
10
|
|
|
11
11
|
describe("Accordion component tests", function () {
|
|
12
12
|
test("Renders with correct aria accessibility attributes", function () {
|
package/accordion/types.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
declare type Margin = {
|
|
4
4
|
top?: Space;
|
|
5
5
|
bottom?: Space;
|
|
6
6
|
left?: Space;
|
|
7
7
|
right?: Space;
|
|
8
8
|
};
|
|
9
|
-
|
|
9
|
+
declare type Padding = {
|
|
10
10
|
top?: Space;
|
|
11
11
|
bottom?: Space;
|
|
12
12
|
left?: Space;
|
|
@@ -25,9 +25,9 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
|
25
25
|
|
|
26
26
|
var _Accordion = _interopRequireDefault(require("../accordion/Accordion"));
|
|
27
27
|
|
|
28
|
-
var _utils = require("../common/utils
|
|
28
|
+
var _utils = require("../common/utils");
|
|
29
29
|
|
|
30
|
-
var _variables = require("../common/variables
|
|
30
|
+
var _variables = require("../common/variables");
|
|
31
31
|
|
|
32
32
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
33
33
|
|
|
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
6
6
|
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
8
|
|
|
9
|
-
var _AccordionGroup = _interopRequireDefault(require("./AccordionGroup"));
|
|
9
|
+
var _AccordionGroup = _interopRequireDefault(require("./AccordionGroup.tsx"));
|
|
10
10
|
|
|
11
11
|
describe("Accordion component tests", function () {
|
|
12
12
|
test("Uncontrolled accordion group calls correct function on click", function () {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
declare type Margin = {
|
|
4
4
|
top?: Space;
|
|
5
5
|
bottom?: Space;
|
|
6
6
|
left?: Space;
|
package/alert/Alert.js
CHANGED
|
@@ -17,9 +17,9 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
17
17
|
|
|
18
18
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
19
|
|
|
20
|
-
var _variables = require("../common/variables
|
|
20
|
+
var _variables = require("../common/variables");
|
|
21
21
|
|
|
22
|
-
var _utils = require("../common/utils
|
|
22
|
+
var _utils = require("../common/utils");
|
|
23
23
|
|
|
24
24
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
25
25
|
|
|
@@ -131,9 +131,7 @@ var DxcAlert = function DxcAlert(_ref) {
|
|
|
131
131
|
size: size
|
|
132
132
|
}, /*#__PURE__*/_react["default"].createElement(AlertInfo, null, /*#__PURE__*/_react["default"].createElement(AlertIcon, {
|
|
133
133
|
type: type
|
|
134
|
-
}, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, {
|
|
135
|
-
type: type
|
|
136
|
-
}, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
|
|
134
|
+
}, type === "info" && alertIcons.info || type === "confirm" && alertIcons.success || type === "warning" && alertIcons.warning || type === "error" && alertIcons.error), /*#__PURE__*/_react["default"].createElement(AlertText, null, /*#__PURE__*/_react["default"].createElement(AlertTitle, null, getTypeText()), inlineText && inlineText !== "" && "-", /*#__PURE__*/_react["default"].createElement(AlertInlineText, null, inlineText)), onClose && /*#__PURE__*/_react["default"].createElement(AlertCloseAction, {
|
|
137
135
|
onClick: onClose,
|
|
138
136
|
tabIndex: tabIndex
|
|
139
137
|
}, alertIcons.close)), children && /*#__PURE__*/_react["default"].createElement(AlertContent, null, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
|
package/alert/Alert.stories.tsx
CHANGED
|
@@ -2,12 +2,21 @@ import React from "react";
|
|
|
2
2
|
import DxcAlert from "./Alert";
|
|
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: "Alert",
|
|
8
9
|
component: DxcAlert,
|
|
9
10
|
};
|
|
10
11
|
|
|
12
|
+
const opinionatedTheme = {
|
|
13
|
+
alert: {
|
|
14
|
+
baseColor: "#e6f4ff",
|
|
15
|
+
accentColor: "#0067b3",
|
|
16
|
+
overlayColor: "#000000b3",
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
|
|
11
20
|
export const Chromatic = () => (
|
|
12
21
|
<>
|
|
13
22
|
<ExampleContainer>
|
|
@@ -155,6 +164,12 @@ export const Chromatic = () => (
|
|
|
155
164
|
</div>
|
|
156
165
|
</DxcAlert>
|
|
157
166
|
</ExampleContainer>
|
|
167
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
168
|
+
<ExampleContainer>
|
|
169
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
170
|
+
<DxcAlert inlineText="Info type alert with inline text." />
|
|
171
|
+
</HalstackProvider>
|
|
172
|
+
</ExampleContainer>
|
|
158
173
|
</>
|
|
159
174
|
);
|
|
160
175
|
|
|
@@ -168,3 +183,16 @@ export const ModalAlert = () => (
|
|
|
168
183
|
</DxcAlert>
|
|
169
184
|
</ExampleContainer>
|
|
170
185
|
);
|
|
186
|
+
|
|
187
|
+
export const ModalAlertOpinionated = () => (
|
|
188
|
+
<ExampleContainer>
|
|
189
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
190
|
+
<DxcAlert inlineText="Modal alert." mode="modal" onClose={() => {}}>
|
|
191
|
+
<div>
|
|
192
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet blandit leo
|
|
193
|
+
lobortis eget.
|
|
194
|
+
</div>
|
|
195
|
+
</DxcAlert>
|
|
196
|
+
</HalstackProvider>
|
|
197
|
+
</ExampleContainer>
|
|
198
|
+
);
|
package/alert/Alert.test.js
CHANGED
|
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
6
6
|
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
8
|
|
|
9
|
-
var _Alert = _interopRequireDefault(require("./Alert"));
|
|
9
|
+
var _Alert = _interopRequireDefault(require("./Alert.tsx"));
|
|
10
10
|
|
|
11
11
|
describe("Alert component tests", function () {
|
|
12
12
|
test("Info alert renders with correct text", function () {
|
package/box/Box.js
CHANGED
|
@@ -17,9 +17,9 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
17
17
|
|
|
18
18
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
19
|
|
|
20
|
-
var _variables = require("../common/variables
|
|
20
|
+
var _variables = require("../common/variables");
|
|
21
21
|
|
|
22
|
-
var _utils = require("../common/utils
|
|
22
|
+
var _utils = require("../common/utils");
|
|
23
23
|
|
|
24
24
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
25
25
|
|
|
@@ -71,7 +71,7 @@ var calculateWidth = function calculateWidth(margin, size, padding) {
|
|
|
71
71
|
return sizes[size];
|
|
72
72
|
};
|
|
73
73
|
|
|
74
|
-
var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n
|
|
74
|
+
var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n overflow: hidden;\n width: ", ";\n background-color: ", ";\n box-shadow: ", ";\n\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
|
|
75
75
|
return props.display;
|
|
76
76
|
}, function (props) {
|
|
77
77
|
return props.theme.borderRadius;
|
|
@@ -81,8 +81,6 @@ var StyledDxcBox = _styledComponents["default"].div(_templateObject || (_templat
|
|
|
81
81
|
return props.theme.borderStyle;
|
|
82
82
|
}, function (props) {
|
|
83
83
|
return props.theme.borderColor;
|
|
84
|
-
}, function (props) {
|
|
85
|
-
return props.theme.letterSpacing;
|
|
86
84
|
}, function (props) {
|
|
87
85
|
return calculateWidth(props.margin, props.size, props.padding);
|
|
88
86
|
}, function (props) {
|
package/box/Box.stories.tsx
CHANGED
|
@@ -2,12 +2,19 @@ import React from "react";
|
|
|
2
2
|
import Title from "../../.storybook/components/Title";
|
|
3
3
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
4
4
|
import DxcBox from "./Box";
|
|
5
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
5
6
|
|
|
6
7
|
export default {
|
|
7
8
|
title: "Box ",
|
|
8
9
|
component: DxcBox,
|
|
9
10
|
};
|
|
10
11
|
|
|
12
|
+
const opinionatedTheme = {
|
|
13
|
+
box: {
|
|
14
|
+
baseColor: "#ffffff",
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
|
|
11
18
|
export const Chromatic = () => (
|
|
12
19
|
<>
|
|
13
20
|
<Title title="Display flex" theme="light" level={2} />
|
|
@@ -128,5 +135,13 @@ export const Chromatic = () => (
|
|
|
128
135
|
<Title title="FitContent" theme="light" level={4} />
|
|
129
136
|
<DxcBox size="fitContent">Box</DxcBox>
|
|
130
137
|
</ExampleContainer>
|
|
138
|
+
<Title title="Opinionated theme" theme="light" level={2} />
|
|
139
|
+
<ExampleContainer>
|
|
140
|
+
<HalstackProvider theme={opinionatedTheme}>
|
|
141
|
+
<DxcBox display="flex" padding="medium">
|
|
142
|
+
Box
|
|
143
|
+
</DxcBox>
|
|
144
|
+
</HalstackProvider>
|
|
145
|
+
</ExampleContainer>
|
|
131
146
|
</>
|
|
132
147
|
);
|
package/box/Box.test.js
CHANGED
|
@@ -6,7 +6,7 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
6
6
|
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
8
|
|
|
9
|
-
var _Card = _interopRequireDefault(require("../card/Card"));
|
|
9
|
+
var _Card = _interopRequireDefault(require("../card/Card.tsx"));
|
|
10
10
|
|
|
11
11
|
describe("Box component tests", function () {
|
|
12
12
|
test("Box renders with correct text", function () {
|
package/button/Button.js
CHANGED
|
@@ -17,15 +17,15 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
17
17
|
|
|
18
18
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
19
|
|
|
20
|
-
var _variables = require("../common/variables
|
|
20
|
+
var _variables = require("../common/variables");
|
|
21
21
|
|
|
22
|
-
var _utils = require("../common/utils
|
|
22
|
+
var _utils = require("../common/utils");
|
|
23
23
|
|
|
24
24
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
25
25
|
|
|
26
26
|
var _BackgroundColorContext = _interopRequireDefault(require("../BackgroundColorContext"));
|
|
27
27
|
|
|
28
|
-
var _templateObject, _templateObject2, _templateObject3
|
|
28
|
+
var _templateObject, _templateObject2, _templateObject3;
|
|
29
29
|
|
|
30
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); }
|
|
31
31
|
|
|
@@ -69,12 +69,6 @@ var DxcButton = function DxcButton(_ref) {
|
|
|
69
69
|
|
|
70
70
|
var colorsTheme = (0, _useTheme["default"])();
|
|
71
71
|
var backgroundType = (0, _react.useContext)(_BackgroundColorContext["default"]);
|
|
72
|
-
|
|
73
|
-
var labelComponent = /*#__PURE__*/_react["default"].createElement(LabelContainer, {
|
|
74
|
-
icon: icon,
|
|
75
|
-
iconPosition: iconPosition
|
|
76
|
-
}, label);
|
|
77
|
-
|
|
78
72
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
79
73
|
theme: colorsTheme.button
|
|
80
74
|
}, /*#__PURE__*/_react["default"].createElement(Button, {
|
|
@@ -89,12 +83,18 @@ var DxcButton = function DxcButton(_ref) {
|
|
|
89
83
|
onClick: function onClick() {
|
|
90
84
|
_onClick();
|
|
91
85
|
}
|
|
92
|
-
}, label && iconPosition === "after" &&
|
|
86
|
+
}, label && iconPosition === "after" && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
|
|
87
|
+
icon: icon,
|
|
88
|
+
iconPosition: iconPosition
|
|
89
|
+
}, label), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, {
|
|
93
90
|
label: label,
|
|
94
91
|
iconPosition: iconPosition
|
|
95
|
-
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement(
|
|
92
|
+
}, typeof icon === "string" ? /*#__PURE__*/_react["default"].createElement("img", {
|
|
96
93
|
src: icon
|
|
97
|
-
}) : icon), label && iconPosition === "before" &&
|
|
94
|
+
}) : icon), label && iconPosition === "before" && /*#__PURE__*/_react["default"].createElement(LabelContainer, {
|
|
95
|
+
icon: icon,
|
|
96
|
+
iconPosition: iconPosition
|
|
97
|
+
}, label)));
|
|
98
98
|
};
|
|
99
99
|
|
|
100
100
|
var Button = _styledComponents["default"].button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n display: inline-flex;\n width: ", ";\n height: 40px;\n padding-left: ", ";\n padding-right: ", ";\n padding-top: ", ";\n padding-bottom: ", ";\n align-items: center;\n justify-content: center;\n box-shadow: 0 0 0 2px transparent;\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n cursor: pointer;\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px\n ", ";\n }\n ", "\n"])), function (props) {
|
|
@@ -144,13 +144,11 @@ var LabelContainer = _styledComponents["default"].span(_templateObject2 || (_tem
|
|
|
144
144
|
return !props.icon || props.iconPosition === "after" ? "8px" : "0px";
|
|
145
145
|
});
|
|
146
146
|
|
|
147
|
-
var IconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n
|
|
147
|
+
var IconContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin-left: ", ";\n margin-right: ", ";\n\n img,\n svg {\n height: 24px;\n width: 24px;\n }\n"])), function (props) {
|
|
148
148
|
return !props.label ? "0px" : props.iconPosition === "after" && props.label !== "" && "8px" || "8px";
|
|
149
149
|
}, function (props) {
|
|
150
150
|
return !props.label ? "0px" : props.iconPosition === "before" && props.label !== "" && "8px" || "8px";
|
|
151
151
|
});
|
|
152
152
|
|
|
153
|
-
var ButtonIcon = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n img,\n svg {\n height: 100%;\n width: 100%;\n }\n"])));
|
|
154
|
-
|
|
155
153
|
var _default = DxcButton;
|
|
156
154
|
exports["default"] = _default;
|