@dxc-technology/halstack-react 0.0.0-59b9187 → 0.0.0-5a4d834
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.js +1 -1
- package/HalstackContext.d.ts +41 -3
- package/HalstackContext.js +28 -18
- package/accordion/Accordion.accessibility.test.d.ts +1 -0
- package/accordion/Accordion.accessibility.test.js +4 -4
- package/accordion/Accordion.js +6 -9
- package/accordion/Accordion.stories.tsx +4 -14
- package/accordion/Accordion.test.d.ts +1 -0
- package/accordion/Accordion.test.js +3 -3
- package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.accessibility.test.js +11 -17
- package/accordion-group/AccordionGroup.js +1 -1
- package/accordion-group/AccordionGroup.stories.tsx +23 -23
- package/accordion-group/AccordionGroup.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.test.js +5 -9
- package/accordion-group/AccordionGroupAccordion.js +1 -1
- package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
- package/action-icon/ActionIcon.accessibility.test.js +4 -4
- package/action-icon/ActionIcon.test.d.ts +1 -0
- package/action-icon/ActionIcon.test.js +1 -1
- package/alert/Alert.accessibility.test.d.ts +1 -0
- package/alert/Alert.accessibility.test.js +6 -6
- package/alert/Alert.js +7 -4
- package/alert/Alert.test.d.ts +1 -0
- package/alert/Alert.test.js +1 -1
- package/badge/Badge.accessibility.test.d.ts +1 -0
- package/badge/Badge.accessibility.test.js +5 -5
- package/badge/Badge.test.d.ts +1 -0
- package/badge/Badge.test.js +2 -2
- package/bar-chart/BarChart.d.ts +4 -0
- package/bar-chart/BarChart.js +152 -0
- package/bar-chart/BarChart.stories.tsx +281 -0
- package/bar-chart/BarChart.test.d.ts +1 -0
- package/bar-chart/BarChart.test.js +194 -0
- package/bar-chart/theme.d.ts +3 -0
- package/bar-chart/theme.js +31 -0
- package/bar-chart/types.d.ts +137 -0
- package/bar-chart/types.js +5 -0
- package/bleed/Bleed.stories.tsx +0 -1
- package/box/Box.accessibility.test.d.ts +1 -0
- package/box/Box.accessibility.test.js +3 -3
- package/box/Box.js +1 -1
- package/box/Box.test.d.ts +1 -0
- package/box/Box.test.js +1 -1
- package/breadcrumbs/Breadcrumbs.accessibility.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.accessibility.test.js +96 -0
- package/breadcrumbs/Breadcrumbs.d.ts +4 -0
- package/breadcrumbs/Breadcrumbs.js +79 -0
- package/breadcrumbs/Breadcrumbs.stories.tsx +194 -0
- package/breadcrumbs/Breadcrumbs.test.d.ts +1 -0
- package/breadcrumbs/Breadcrumbs.test.js +168 -0
- package/breadcrumbs/Item.d.ts +4 -0
- package/breadcrumbs/Item.js +52 -0
- package/breadcrumbs/dropdownTheme.d.ts +53 -0
- package/breadcrumbs/dropdownTheme.js +62 -0
- package/breadcrumbs/types.d.ts +40 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
- package/bulleted-list/BulletedList.accessibility.test.js +18 -6
- package/bulleted-list/BulletedList.js +1 -1
- package/button/Button.accessibility.test.d.ts +1 -0
- package/button/Button.accessibility.test.js +6 -6
- package/button/Button.js +1 -1
- package/button/Button.stories.tsx +3 -3
- package/button/Button.test.d.ts +1 -0
- package/button/Button.test.js +1 -1
- package/card/Card.accessibility.test.d.ts +1 -0
- package/card/Card.accessibility.test.js +3 -3
- package/card/Card.js +3 -2
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.d.ts +1 -0
- package/card/Card.test.js +1 -1
- package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
- package/checkbox/Checkbox.accessibility.test.js +5 -5
- package/checkbox/Checkbox.js +10 -13
- package/checkbox/Checkbox.test.d.ts +1 -0
- package/checkbox/Checkbox.test.js +1 -1
- package/chip/Chip.accessibility.test.d.ts +1 -0
- package/chip/Chip.accessibility.test.js +4 -4
- package/chip/Chip.js +3 -1
- package/chip/Chip.stories.tsx +1 -1
- package/chip/Chip.test.d.ts +1 -0
- package/chip/Chip.test.js +1 -1
- package/common/coreTokens.d.ts +0 -1
- package/common/coreTokens.js +3 -4
- package/common/variables.d.ts +47 -3
- package/common/variables.js +109 -71
- package/container/Container.stories.tsx +3 -3
- package/container/types.d.ts +113 -11
- package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +15 -3
- package/contextual-menu/ContextualMenu.d.ts +3 -5
- package/contextual-menu/ContextualMenu.js +118 -53
- package/contextual-menu/ContextualMenu.stories.tsx +124 -75
- package/contextual-menu/ContextualMenu.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.test.js +200 -24
- package/contextual-menu/GroupItem.d.ts +4 -0
- package/contextual-menu/GroupItem.js +67 -0
- package/contextual-menu/ItemAction.d.ts +4 -0
- package/contextual-menu/ItemAction.js +88 -0
- package/contextual-menu/MenuItem.d.ts +4 -0
- package/contextual-menu/MenuItem.js +29 -0
- package/contextual-menu/SingleItem.d.ts +4 -0
- package/contextual-menu/SingleItem.js +38 -0
- package/contextual-menu/types.d.ts +54 -11
- package/date-input/Calendar.js +47 -31
- package/date-input/DateInput.accessibility.test.d.ts +1 -0
- package/date-input/DateInput.accessibility.test.js +24 -11
- package/date-input/DateInput.js +27 -21
- package/date-input/DateInput.stories.tsx +18 -12
- package/date-input/DateInput.test.d.ts +1 -0
- package/date-input/DateInput.test.js +39 -39
- package/date-input/DatePicker.js +1 -1
- package/date-input/YearPicker.js +10 -5
- package/dialog/Dialog.accessibility.test.d.ts +1 -0
- package/dialog/Dialog.accessibility.test.js +5 -5
- package/dialog/Dialog.js +3 -2
- package/dialog/Dialog.stories.tsx +8 -4
- package/dialog/Dialog.test.d.ts +1 -0
- package/dialog/Dialog.test.js +111 -48
- package/divider/Divider.accessibility.test.d.ts +1 -0
- package/divider/Divider.accessibility.test.js +2 -2
- package/divider/Divider.stories.tsx +2 -1
- package/divider/Divider.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.js +12 -9
- package/dropdown/Dropdown.js +19 -37
- package/dropdown/Dropdown.stories.tsx +11 -11
- package/dropdown/Dropdown.test.d.ts +1 -0
- package/dropdown/Dropdown.test.js +101 -72
- package/dropdown/DropdownMenu.js +4 -4
- package/dropdown/DropdownMenuItem.js +2 -1
- package/file-input/FileInput.accessibility.test.d.ts +1 -0
- package/file-input/FileInput.accessibility.test.js +30 -23
- package/file-input/FileInput.js +3 -8
- package/file-input/FileInput.test.d.ts +1 -0
- package/file-input/FileInput.test.js +44 -22
- package/file-input/FileItem.js +7 -3
- package/file-input/types.d.ts +0 -4
- package/footer/Footer.accessibility.test.d.ts +1 -0
- package/footer/Footer.accessibility.test.js +13 -5
- package/footer/Footer.js +1 -1
- package/footer/Footer.stories.tsx +12 -0
- package/footer/Footer.test.d.ts +1 -0
- package/footer/Footer.test.js +1 -1
- package/footer/Icons.js +2 -30
- package/grid/Grid.stories.tsx +3 -1
- package/header/Header.accessibility.test.d.ts +1 -0
- package/header/Header.accessibility.test.js +16 -6
- package/header/Header.js +3 -2
- package/header/Header.stories.tsx +17 -1
- package/header/Header.test.d.ts +1 -0
- package/header/Header.test.js +1 -1
- package/header/Icons.js +1 -6
- package/heading/Heading.accessibility.test.d.ts +1 -0
- package/heading/Heading.accessibility.test.js +3 -3
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.d.ts +1 -0
- package/heading/Heading.test.js +1 -14
- package/icon/Icon.accessibility.test.d.ts +1 -0
- package/icon/Icon.accessibility.test.js +2 -2
- package/icon/Icon.js +1 -1
- package/icon/Icon.stories.tsx +1 -1
- package/image/Image.accessibility.test.d.ts +1 -0
- package/image/Image.accessibility.test.js +3 -3
- package/image/Image.js +1 -1
- package/layout/ApplicationLayout.js +4 -4
- package/link/Link.accessibility.test.d.ts +1 -0
- package/link/Link.accessibility.test.js +8 -12
- package/link/Link.js +1 -1
- package/link/Link.stories.tsx +2 -2
- package/link/Link.test.d.ts +1 -0
- package/link/Link.test.js +1 -1
- package/main.d.ts +3 -1
- package/main.js +15 -1
- package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
- package/nav-tabs/NavTabs.accessibility.test.js +3 -3
- package/nav-tabs/NavTabs.js +19 -4
- package/nav-tabs/NavTabs.stories.tsx +18 -3
- package/nav-tabs/NavTabs.test.d.ts +1 -0
- package/nav-tabs/NavTabs.test.js +9 -7
- package/nav-tabs/Tab.js +7 -7
- package/number-input/NumberInput.accessibility.test.d.ts +1 -0
- package/number-input/NumberInput.accessibility.test.js +9 -10
- package/number-input/NumberInput.js +6 -3
- package/number-input/NumberInput.stories.tsx +11 -16
- package/number-input/NumberInput.test.d.ts +1 -0
- package/number-input/NumberInput.test.js +6 -7
- package/package.json +27 -21
- package/paginator/Paginator.accessibility.test.d.ts +1 -0
- package/paginator/Paginator.accessibility.test.js +4 -5
- package/paginator/Paginator.js +9 -5
- package/paginator/Paginator.test.d.ts +1 -0
- package/paginator/Paginator.test.js +2 -3
- package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
- package/paragraph/Paragraph.accessibility.test.js +2 -2
- package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
- package/password-input/PasswordInput.accessibility.test.js +7 -8
- package/password-input/PasswordInput.js +11 -7
- package/password-input/PasswordInput.stories.tsx +10 -1
- package/password-input/PasswordInput.test.d.ts +1 -0
- package/password-input/PasswordInput.test.js +6 -7
- package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
- package/progress-bar/ProgressBar.accessibility.test.js +3 -3
- package/progress-bar/ProgressBar.js +6 -4
- package/progress-bar/ProgressBar.test.d.ts +1 -0
- package/progress-bar/ProgressBar.test.js +1 -1
- package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
- package/quick-nav/QuickNav.accessibility.test.js +2 -2
- package/quick-nav/QuickNav.js +1 -1
- package/radio-group/Radio.js +6 -9
- package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
- package/radio-group/RadioGroup.accessibility.test.js +4 -4
- package/radio-group/RadioGroup.js +14 -16
- package/radio-group/RadioGroup.test.d.ts +1 -0
- package/radio-group/RadioGroup.test.js +3 -5
- package/resultset-table/ResultsetTable.accessibility.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.accessibility.test.js +16 -6
- package/resultset-table/ResultsetTable.js +41 -13
- package/resultset-table/ResultsetTable.stories.tsx +14 -2
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/resultset-table/ResultsetTable.test.js +103 -34
- package/resultset-table/types.d.ts +4 -3
- package/select/Listbox.d.ts +3 -3
- package/select/Listbox.js +29 -27
- package/select/Option.d.ts +3 -3
- package/select/Option.js +13 -8
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +18 -8
- package/select/Select.js +75 -190
- package/select/Select.stories.tsx +41 -20
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +42 -150
- package/select/selectUtils.d.ts +41 -0
- package/select/selectUtils.js +129 -0
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +3 -3
- package/sidenav/Sidenav.js +1 -1
- package/sidenav/Sidenav.stories.tsx +1 -1
- package/sidenav/Sidenav.test.d.ts +1 -0
- package/sidenav/Sidenav.test.js +1 -1
- package/slider/Slider.accessibility.test.d.ts +1 -0
- package/slider/Slider.accessibility.test.js +5 -6
- package/slider/Slider.js +11 -13
- package/slider/Slider.stories.tsx +180 -0
- package/slider/Slider.test.d.ts +1 -0
- package/slider/Slider.test.js +13 -11
- package/spinner/Spinner.accessibility.test.d.ts +1 -0
- package/spinner/Spinner.accessibility.test.js +6 -6
- package/spinner/Spinner.d.ts +1 -1
- package/spinner/Spinner.js +32 -47
- package/spinner/Spinner.test.d.ts +1 -0
- package/spinner/Spinner.test.js +1 -1
- package/status-light/StatusLight.accessibility.test.d.ts +1 -0
- package/status-light/StatusLight.accessibility.test.js +8 -8
- package/status-light/StatusLight.test.d.ts +1 -0
- package/status-light/StatusLight.test.js +1 -1
- package/switch/Switch.accessibility.test.d.ts +1 -0
- package/switch/Switch.accessibility.test.js +14 -5
- package/switch/Switch.js +6 -9
- package/switch/Switch.stories.tsx +12 -0
- package/switch/Switch.test.d.ts +1 -0
- package/switch/Switch.test.js +1 -1
- package/table/Table.accessibility.test.d.ts +1 -0
- package/table/Table.accessibility.test.js +16 -6
- package/table/Table.js +1 -1
- package/table/Table.stories.tsx +13 -1
- package/table/Table.test.d.ts +1 -0
- package/table/Table.test.js +2 -4
- package/tabs/Tab.js +1 -1
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +3 -3
- package/tabs/Tabs.js +1 -1
- package/tabs/Tabs.stories.tsx +7 -1
- package/tabs/Tabs.test.d.ts +1 -0
- package/tabs/Tabs.test.js +1 -1
- package/tag/Tag.accessibility.test.d.ts +1 -0
- package/tag/Tag.accessibility.test.js +4 -4
- package/tag/Tag.js +1 -1
- package/tag/Tag.stories.tsx +1 -1
- package/tag/Tag.test.d.ts +1 -0
- package/tag/Tag.test.js +1 -1
- package/text-input/Suggestion.js +1 -1
- package/text-input/Suggestions.js +14 -6
- package/text-input/TextInput.accessibility.test.d.ts +1 -0
- package/text-input/TextInput.accessibility.test.js +11 -12
- package/text-input/TextInput.js +49 -68
- package/text-input/TextInput.stories.tsx +19 -7
- package/text-input/TextInput.test.d.ts +1 -0
- package/text-input/TextInput.test.js +2 -3
- package/textarea/Textarea.accessibility.test.d.ts +1 -0
- package/textarea/Textarea.accessibility.test.js +7 -7
- package/textarea/Textarea.js +14 -13
- package/textarea/Textarea.test.d.ts +1 -0
- package/textarea/Textarea.test.js +1 -1
- package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.accessibility.test.js +5 -5
- package/toggle-group/ToggleGroup.js +6 -9
- package/toggle-group/ToggleGroup.stories.tsx +1 -1
- package/toggle-group/ToggleGroup.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.test.js +1 -1
- package/tooltip/Tooltip.accessibility.test.d.ts +1 -0
- package/tooltip/Tooltip.accessibility.test.js +144 -0
- package/tooltip/Tooltip.d.ts +4 -0
- package/tooltip/Tooltip.js +50 -0
- package/tooltip/Tooltip.stories.tsx +111 -0
- package/tooltip/Tooltip.test.d.ts +1 -0
- package/tooltip/Tooltip.test.js +112 -0
- package/tooltip/types.d.ts +16 -0
- package/tooltip/types.js +5 -0
- package/typography/Typography.accessibility.test.d.ts +1 -0
- package/typography/Typography.accessibility.test.js +12 -12
- package/typography/Typography.stories.tsx +1 -3
- package/typography/Typography.test.js +23 -0
- package/useTheme.d.ts +30 -3
- package/useTranslatedLabels.d.ts +11 -0
- package/utils/BaseTypography.js +45 -41
- package/utils/FocusLock.js +3 -2
- package/utils/useWidth.d.ts +2 -0
- package/utils/useWidth.js +30 -0
- package/wizard/Wizard.accessibility.test.d.ts +1 -0
- package/wizard/Wizard.accessibility.test.js +3 -3
- package/wizard/Wizard.js +1 -9
- package/wizard/Wizard.stories.tsx +1 -1
- package/wizard/Wizard.test.d.ts +1 -0
- package/wizard/Wizard.test.js +1 -1
- package/contextual-menu/MenuItemAction.d.ts +0 -4
- package/contextual-menu/MenuItemAction.js +0 -46
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import Title from "../../.storybook/components/Title";
|
|
3
|
+
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
4
|
+
import DxcBarChart from "./BarChart";
|
|
5
|
+
import { userEvent, within } from "@storybook/test";
|
|
6
|
+
|
|
7
|
+
export default {
|
|
8
|
+
title: "Bar Chart",
|
|
9
|
+
component: DxcBarChart,
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const series = [
|
|
13
|
+
{
|
|
14
|
+
title: "Series 1",
|
|
15
|
+
type: "bar",
|
|
16
|
+
data: [
|
|
17
|
+
{ x: 0, y: 100000 },
|
|
18
|
+
{ x: 1, y: 200000 },
|
|
19
|
+
{ x: 2, y: 300000 },
|
|
20
|
+
{ x: 3, y: 400000 },
|
|
21
|
+
{ x: 4, y: 500000 },
|
|
22
|
+
],
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
title: "Series 2",
|
|
26
|
+
type: "bar",
|
|
27
|
+
data: [
|
|
28
|
+
{ x: 0, y: 50000 },
|
|
29
|
+
{ x: 1, y: 100000 },
|
|
30
|
+
{ x: 2, y: 150000 },
|
|
31
|
+
{ x: 3, y: 200000 },
|
|
32
|
+
{ x: 4, y: 250000 },
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
title: "Series 3",
|
|
37
|
+
type: "bar",
|
|
38
|
+
data: [
|
|
39
|
+
{ x: 0, y: 200000 },
|
|
40
|
+
{ x: 1, y: 400000 },
|
|
41
|
+
{ x: 2, y: 600000 },
|
|
42
|
+
{ x: 3, y: 800000 },
|
|
43
|
+
{ x: 4, y: 1000000 },
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
title: "Series 4",
|
|
48
|
+
type: "bar",
|
|
49
|
+
data: [
|
|
50
|
+
{ x: 0, y: 100000 },
|
|
51
|
+
{ x: 1, y: 200000 },
|
|
52
|
+
{ x: 2, y: 400000 },
|
|
53
|
+
{ x: 3, y: 700000 },
|
|
54
|
+
{ x: 4, y: 900000 },
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
title: "Series 5",
|
|
59
|
+
type: "bar",
|
|
60
|
+
data: [
|
|
61
|
+
{ x: 0, y: 50000 },
|
|
62
|
+
{ x: 1, y: 500000 },
|
|
63
|
+
{ x: 2, y: 800000 },
|
|
64
|
+
{ x: 3, y: 900000 },
|
|
65
|
+
{ x: 4, y: 100000 },
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
title: "Series 6",
|
|
70
|
+
type: "bar",
|
|
71
|
+
data: [
|
|
72
|
+
{ x: 0, y: 10000 },
|
|
73
|
+
{ x: 1, y: 250000 },
|
|
74
|
+
{ x: 2, y: 550000 },
|
|
75
|
+
{ x: 3, y: 750000 },
|
|
76
|
+
{ x: 4, y: 950000 },
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
title: "Average",
|
|
81
|
+
type: "threshold",
|
|
82
|
+
y: 400000,
|
|
83
|
+
},
|
|
84
|
+
];
|
|
85
|
+
|
|
86
|
+
const BarChart = () => (
|
|
87
|
+
<>
|
|
88
|
+
<Title title="Basic bar chart" theme="light" level={4} />
|
|
89
|
+
<ExampleContainer>
|
|
90
|
+
<DxcBarChart
|
|
91
|
+
series={[
|
|
92
|
+
{
|
|
93
|
+
title: "Series 1",
|
|
94
|
+
type: "bar",
|
|
95
|
+
data: [
|
|
96
|
+
{ x: 0, y: 100000 },
|
|
97
|
+
{ x: 1, y: 200000 },
|
|
98
|
+
{ x: 2, y: 300000 },
|
|
99
|
+
{ x: 3, y: 400000 },
|
|
100
|
+
{ x: 4, y: 500000 },
|
|
101
|
+
],
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
title: "Average",
|
|
105
|
+
type: "threshold",
|
|
106
|
+
y: 300000,
|
|
107
|
+
},
|
|
108
|
+
]}
|
|
109
|
+
xDomain={[0, 1, 2, 3, 4]}
|
|
110
|
+
yDomain={[0, 600000]}
|
|
111
|
+
/>
|
|
112
|
+
</ExampleContainer>
|
|
113
|
+
<Title title="Horizontal bar chart" theme="light" level={4} />
|
|
114
|
+
<ExampleContainer>
|
|
115
|
+
<DxcBarChart
|
|
116
|
+
series={[
|
|
117
|
+
{
|
|
118
|
+
title: "Series 1",
|
|
119
|
+
type: "bar",
|
|
120
|
+
data: [
|
|
121
|
+
{ x: 0, y: 100000 },
|
|
122
|
+
{ x: 1, y: 200000 },
|
|
123
|
+
{ x: 2, y: 300000 },
|
|
124
|
+
],
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
title: "Series 2",
|
|
128
|
+
type: "bar",
|
|
129
|
+
data: [
|
|
130
|
+
{ x: 0, y: 50000 },
|
|
131
|
+
{ x: 1, y: 100000 },
|
|
132
|
+
{ x: 2, y: 150000 },
|
|
133
|
+
],
|
|
134
|
+
},
|
|
135
|
+
]}
|
|
136
|
+
xDomain={[0, 1, 2]}
|
|
137
|
+
yDomain={[0, 600000]}
|
|
138
|
+
horizontalBars
|
|
139
|
+
/>
|
|
140
|
+
</ExampleContainer>
|
|
141
|
+
<Title title="Stacked bar chart" theme="light" level={4} />
|
|
142
|
+
<ExampleContainer>
|
|
143
|
+
<DxcBarChart series={series as any} xDomain={[0, 1, 2, 3, 4]} yDomain={[0, 5000000]} stackedBars />
|
|
144
|
+
</ExampleContainer>
|
|
145
|
+
<Title title="Stacked & horizontal bar chart" theme="light" level={4} />
|
|
146
|
+
<ExampleContainer>
|
|
147
|
+
<DxcBarChart series={series as any} xDomain={[0, 1, 2, 3, 4]} yDomain={[0, 5000000]} stackedBars horizontalBars />
|
|
148
|
+
</ExampleContainer>
|
|
149
|
+
<Title title="Complete bar chart" theme="light" level={4} />
|
|
150
|
+
<ExampleContainer>
|
|
151
|
+
<DxcBarChart
|
|
152
|
+
chartTitle="Bar Chart"
|
|
153
|
+
series={series as any}
|
|
154
|
+
xDomain={[0, 1, 2, 3, 4]}
|
|
155
|
+
yDomain={[0, 1000000]}
|
|
156
|
+
xTitle="X Axis"
|
|
157
|
+
yTitle="Y Axis"
|
|
158
|
+
showFilter
|
|
159
|
+
showLegend
|
|
160
|
+
legendTitle="Legend"
|
|
161
|
+
/>
|
|
162
|
+
</ExampleContainer>
|
|
163
|
+
<Title title="Error state" theme="light" level={4} />
|
|
164
|
+
<ExampleContainer>
|
|
165
|
+
<DxcBarChart series={[]} error="Error loading data." />
|
|
166
|
+
</ExampleContainer>
|
|
167
|
+
<Title title="Error state with 'Retry' action" theme="light" level={4} />
|
|
168
|
+
<ExampleContainer>
|
|
169
|
+
<DxcBarChart series={[]} error="Error loading data." onRetry={() => {}} />
|
|
170
|
+
</ExampleContainer>
|
|
171
|
+
<Title title="Loading state" theme="light" level={4} />
|
|
172
|
+
<ExampleContainer>
|
|
173
|
+
<DxcBarChart series={[]} loading />
|
|
174
|
+
</ExampleContainer>
|
|
175
|
+
<Title title="No data" theme="light" level={4} />
|
|
176
|
+
<ExampleContainer>
|
|
177
|
+
<DxcBarChart series={[]} />
|
|
178
|
+
</ExampleContainer>
|
|
179
|
+
<Title title="No matching data" theme="light" level={4} />
|
|
180
|
+
<ExampleContainer>
|
|
181
|
+
<DxcBarChart
|
|
182
|
+
series={[
|
|
183
|
+
{
|
|
184
|
+
title: "Series 1",
|
|
185
|
+
type: "bar",
|
|
186
|
+
data: [
|
|
187
|
+
{ x: 0, y: 100000 },
|
|
188
|
+
{ x: 1, y: 200000 },
|
|
189
|
+
{ x: 2, y: 300000 },
|
|
190
|
+
{ x: 3, y: 400000 },
|
|
191
|
+
{ x: 4, y: 500000 },
|
|
192
|
+
],
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
title: "Series 2",
|
|
196
|
+
type: "bar",
|
|
197
|
+
data: [
|
|
198
|
+
{ x: 0, y: 50000 },
|
|
199
|
+
{ x: 1, y: 100000 },
|
|
200
|
+
{ x: 2, y: 150000 },
|
|
201
|
+
{ x: 3, y: 200000 },
|
|
202
|
+
{ x: 4, y: 250000 },
|
|
203
|
+
],
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
title: "Series 3",
|
|
207
|
+
type: "bar",
|
|
208
|
+
data: [
|
|
209
|
+
{ x: 0, y: 200000 },
|
|
210
|
+
{ x: 1, y: 400000 },
|
|
211
|
+
{ x: 2, y: 600000 },
|
|
212
|
+
{ x: 3, y: 800000 },
|
|
213
|
+
{ x: 4, y: 1000000 },
|
|
214
|
+
],
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
title: "Series 4",
|
|
218
|
+
type: "bar",
|
|
219
|
+
data: [
|
|
220
|
+
{ x: 0, y: 100000 },
|
|
221
|
+
{ x: 1, y: 200000 },
|
|
222
|
+
{ x: 2, y: 400000 },
|
|
223
|
+
{ x: 3, y: 700000 },
|
|
224
|
+
{ x: 4, y: 900000 },
|
|
225
|
+
],
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
title: "Series 5",
|
|
229
|
+
type: "bar",
|
|
230
|
+
data: [
|
|
231
|
+
{ x: 0, y: 50000 },
|
|
232
|
+
{ x: 1, y: 500000 },
|
|
233
|
+
{ x: 2, y: 800000 },
|
|
234
|
+
{ x: 3, y: 900000 },
|
|
235
|
+
{ x: 4, y: 100000 },
|
|
236
|
+
],
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
title: "Series 6",
|
|
240
|
+
type: "bar",
|
|
241
|
+
data: [
|
|
242
|
+
{ x: 0, y: 10000 },
|
|
243
|
+
{ x: 1, y: 250000 },
|
|
244
|
+
{ x: 2, y: 550000 },
|
|
245
|
+
{ x: 3, y: 750000 },
|
|
246
|
+
{ x: 4, y: 950000 },
|
|
247
|
+
],
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
title: "Series 7",
|
|
251
|
+
type: "bar",
|
|
252
|
+
data: [
|
|
253
|
+
{ x: 0, y: 20000 },
|
|
254
|
+
{ x: 1, y: 150000 },
|
|
255
|
+
{ x: 2, y: 350000 },
|
|
256
|
+
{ x: 3, y: 450000 },
|
|
257
|
+
{ x: 4, y: 750000 },
|
|
258
|
+
],
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
title: "Average",
|
|
262
|
+
type: "threshold",
|
|
263
|
+
y: 400000,
|
|
264
|
+
},
|
|
265
|
+
]}
|
|
266
|
+
xDomain={[0, 1, 2, 3, 4]}
|
|
267
|
+
yDomain={[0, 1000000]}
|
|
268
|
+
showFilter
|
|
269
|
+
xTitle="X Axis"
|
|
270
|
+
yTitle="Y Axis"
|
|
271
|
+
legendTitle="Legend"
|
|
272
|
+
/>
|
|
273
|
+
</ExampleContainer>
|
|
274
|
+
</>
|
|
275
|
+
);
|
|
276
|
+
|
|
277
|
+
export const Chromatic = BarChart.bind({});
|
|
278
|
+
Chromatic.play = async ({ canvasElement }) => {
|
|
279
|
+
const canvas = within(canvasElement);
|
|
280
|
+
await userEvent.click(canvas.getAllByTitle("Clear selection")[1]);
|
|
281
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
7
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _react2 = require("@testing-library/react");
|
|
10
|
+
var _BarChart = _interopRequireDefault(require("./BarChart"));
|
|
11
|
+
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
12
|
+
// Mocking applyTheme function to avoid issues with Cloudscape theming
|
|
13
|
+
jest.mock("@cloudscape-design/components/theming", function () {
|
|
14
|
+
return {
|
|
15
|
+
applyTheme: jest.fn()
|
|
16
|
+
};
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
// Mocking DOMRect for Radix Primitive Popover
|
|
20
|
+
global.globalThis = global;
|
|
21
|
+
global.DOMRect = {
|
|
22
|
+
fromRect: function fromRect() {
|
|
23
|
+
return {
|
|
24
|
+
top: 0,
|
|
25
|
+
left: 0,
|
|
26
|
+
bottom: 0,
|
|
27
|
+
right: 0,
|
|
28
|
+
width: 0,
|
|
29
|
+
height: 0
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
global.ResizeObserver = /*#__PURE__*/function () {
|
|
34
|
+
function ResizeObserver() {
|
|
35
|
+
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
36
|
+
}
|
|
37
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
38
|
+
key: "observe",
|
|
39
|
+
value: function observe() {}
|
|
40
|
+
}, {
|
|
41
|
+
key: "unobserve",
|
|
42
|
+
value: function unobserve() {}
|
|
43
|
+
}, {
|
|
44
|
+
key: "disconnect",
|
|
45
|
+
value: function disconnect() {}
|
|
46
|
+
}]);
|
|
47
|
+
}();
|
|
48
|
+
describe("Bar Chart component tests", function () {
|
|
49
|
+
test("onFilterChange is called when the value of the select is changed", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
50
|
+
var onFilterChange, _render, getByText, getByRole, getAllByRole;
|
|
51
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
52
|
+
while (1) switch (_context.prev = _context.next) {
|
|
53
|
+
case 0:
|
|
54
|
+
onFilterChange = jest.fn();
|
|
55
|
+
_render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_BarChart["default"], {
|
|
56
|
+
showFilter: true,
|
|
57
|
+
onFilterChange: onFilterChange,
|
|
58
|
+
chartTitle: "Bar Chart",
|
|
59
|
+
series: [{
|
|
60
|
+
title: "Series 1",
|
|
61
|
+
type: "bar",
|
|
62
|
+
data: [{
|
|
63
|
+
x: 0,
|
|
64
|
+
y: 100000
|
|
65
|
+
}, {
|
|
66
|
+
x: 1,
|
|
67
|
+
y: 200000
|
|
68
|
+
}, {
|
|
69
|
+
x: 2,
|
|
70
|
+
y: 300000
|
|
71
|
+
}, {
|
|
72
|
+
x: 3,
|
|
73
|
+
y: 400000
|
|
74
|
+
}, {
|
|
75
|
+
x: 4,
|
|
76
|
+
y: 500000
|
|
77
|
+
}]
|
|
78
|
+
}, {
|
|
79
|
+
title: "Average",
|
|
80
|
+
type: "threshold",
|
|
81
|
+
y: 300000
|
|
82
|
+
}]
|
|
83
|
+
})), getByText = _render.getByText, getByRole = _render.getByRole, getAllByRole = _render.getAllByRole;
|
|
84
|
+
expect(getByText("Bar Chart")).toBeTruthy();
|
|
85
|
+
expect(getByText("Filter displayed data")).toBeTruthy();
|
|
86
|
+
_context.next = 6;
|
|
87
|
+
return _userEvent["default"].click(getByRole("combobox"));
|
|
88
|
+
case 6:
|
|
89
|
+
expect(getByText("Series 1")).toBeTruthy();
|
|
90
|
+
expect(getByText("Average")).toBeTruthy();
|
|
91
|
+
_context.next = 10;
|
|
92
|
+
return _userEvent["default"].click(getAllByRole("option")[1]);
|
|
93
|
+
case 10:
|
|
94
|
+
expect(onFilterChange).toHaveBeenCalled();
|
|
95
|
+
expect(onFilterChange).toHaveBeenCalledWith(["Series 1"]);
|
|
96
|
+
case 12:
|
|
97
|
+
case "end":
|
|
98
|
+
return _context.stop();
|
|
99
|
+
}
|
|
100
|
+
}, _callee);
|
|
101
|
+
})));
|
|
102
|
+
test("onHighlightChange is called when a legend's series is hovered/clicked", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
103
|
+
var onHighlightChange, _render2, getByText;
|
|
104
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
105
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
106
|
+
case 0:
|
|
107
|
+
onHighlightChange = jest.fn();
|
|
108
|
+
_render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_BarChart["default"], {
|
|
109
|
+
showLegend: true,
|
|
110
|
+
legendTitle: "Legend",
|
|
111
|
+
onHighlightChange: onHighlightChange,
|
|
112
|
+
series: [{
|
|
113
|
+
title: "Series 1",
|
|
114
|
+
type: "bar",
|
|
115
|
+
data: [{
|
|
116
|
+
x: 0,
|
|
117
|
+
y: 100000
|
|
118
|
+
}, {
|
|
119
|
+
x: 1,
|
|
120
|
+
y: 200000
|
|
121
|
+
}, {
|
|
122
|
+
x: 2,
|
|
123
|
+
y: 300000
|
|
124
|
+
}, {
|
|
125
|
+
x: 3,
|
|
126
|
+
y: 400000
|
|
127
|
+
}, {
|
|
128
|
+
x: 4,
|
|
129
|
+
y: 500000
|
|
130
|
+
}]
|
|
131
|
+
}, {
|
|
132
|
+
title: "Average",
|
|
133
|
+
type: "threshold",
|
|
134
|
+
y: 300000
|
|
135
|
+
}]
|
|
136
|
+
})), getByText = _render2.getByText;
|
|
137
|
+
expect(getByText("Legend")).toBeTruthy();
|
|
138
|
+
_context2.next = 5;
|
|
139
|
+
return _userEvent["default"].hover(getByText("Series 1"));
|
|
140
|
+
case 5:
|
|
141
|
+
expect(onHighlightChange).toHaveBeenCalled();
|
|
142
|
+
expect(onHighlightChange).toHaveBeenCalledWith("Series 1");
|
|
143
|
+
case 7:
|
|
144
|
+
case "end":
|
|
145
|
+
return _context2.stop();
|
|
146
|
+
}
|
|
147
|
+
}, _callee2);
|
|
148
|
+
})));
|
|
149
|
+
test("onRetry is called when the retry button is clicked", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
|
|
150
|
+
var onRetry, _render3, getByText, getByRole;
|
|
151
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
152
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
153
|
+
case 0:
|
|
154
|
+
onRetry = jest.fn();
|
|
155
|
+
_render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_BarChart["default"], {
|
|
156
|
+
onRetry: onRetry,
|
|
157
|
+
error: "Error",
|
|
158
|
+
series: [{
|
|
159
|
+
title: "Series 1",
|
|
160
|
+
type: "bar",
|
|
161
|
+
data: [{
|
|
162
|
+
x: 0,
|
|
163
|
+
y: 100000
|
|
164
|
+
}, {
|
|
165
|
+
x: 1,
|
|
166
|
+
y: 200000
|
|
167
|
+
}, {
|
|
168
|
+
x: 2,
|
|
169
|
+
y: 300000
|
|
170
|
+
}, {
|
|
171
|
+
x: 3,
|
|
172
|
+
y: 400000
|
|
173
|
+
}, {
|
|
174
|
+
x: 4,
|
|
175
|
+
y: 500000
|
|
176
|
+
}]
|
|
177
|
+
}, {
|
|
178
|
+
title: "Average",
|
|
179
|
+
type: "threshold",
|
|
180
|
+
y: 300000
|
|
181
|
+
}]
|
|
182
|
+
})), getByText = _render3.getByText, getByRole = _render3.getByRole;
|
|
183
|
+
expect(getByText("Error")).toBeTruthy();
|
|
184
|
+
_context3.next = 5;
|
|
185
|
+
return _userEvent["default"].click(getByRole("button"));
|
|
186
|
+
case 5:
|
|
187
|
+
expect(onRetry).toHaveBeenCalled();
|
|
188
|
+
case 6:
|
|
189
|
+
case "end":
|
|
190
|
+
return _context3.stop();
|
|
191
|
+
}
|
|
192
|
+
}, _callee3);
|
|
193
|
+
})));
|
|
194
|
+
});
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _coreTokens = _interopRequireDefault(require("../common/coreTokens"));
|
|
9
|
+
var theme = {
|
|
10
|
+
tokens: {
|
|
11
|
+
colorChartsPaletteCategorical1: _coreTokens["default"].color_purple_500,
|
|
12
|
+
colorChartsPaletteCategorical2: _coreTokens["default"].color_blue_600,
|
|
13
|
+
colorChartsPaletteCategorical3: _coreTokens["default"].color_green_700,
|
|
14
|
+
colorChartsPaletteCategorical4: _coreTokens["default"].color_red_500,
|
|
15
|
+
colorChartsPaletteCategorical5: _coreTokens["default"].color_orange_700,
|
|
16
|
+
colorChartsPaletteCategorical6: _coreTokens["default"].color_yellow_800,
|
|
17
|
+
colorChartsPaletteCategorical7: _coreTokens["default"].color_purple_600,
|
|
18
|
+
colorChartsPaletteCategorical8: _coreTokens["default"].color_blue_800,
|
|
19
|
+
colorChartsPaletteCategorical9: _coreTokens["default"].color_green_900,
|
|
20
|
+
colorChartsPaletteCategorical10: _coreTokens["default"].color_red_700,
|
|
21
|
+
colorChartsPaletteCategorical11: _coreTokens["default"].color_orange_800,
|
|
22
|
+
colorChartsPaletteCategorical12: _coreTokens["default"].color_yellow_900,
|
|
23
|
+
colorChartsThresholdNeutral: _coreTokens["default"].color_grey_700,
|
|
24
|
+
fontFamilyBase: "Open Sans, sans-serif",
|
|
25
|
+
fontSizeBodyS: "12px",
|
|
26
|
+
colorTextBodySecondary: _coreTokens["default"].color_grey_700,
|
|
27
|
+
fontSizeBodyM: "14px",
|
|
28
|
+
colorTextBodyDefault: _coreTokens["default"].color_grey_900
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
var _default = exports["default"] = theme;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
type DataTypes = string | number;
|
|
3
|
+
type ThresholdSeries<X> = {
|
|
4
|
+
/**
|
|
5
|
+
* Title of the series.
|
|
6
|
+
*/
|
|
7
|
+
title: string;
|
|
8
|
+
/**
|
|
9
|
+
* Type of the series. It can be either "threshold" or "bar".
|
|
10
|
+
*/
|
|
11
|
+
type: "threshold";
|
|
12
|
+
/**
|
|
13
|
+
* Value of the y axis.
|
|
14
|
+
*/
|
|
15
|
+
y?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Value of the x axis. It can be a string or a number.
|
|
18
|
+
*/
|
|
19
|
+
x?: X;
|
|
20
|
+
};
|
|
21
|
+
type BarDataSeries<X> = {
|
|
22
|
+
/**
|
|
23
|
+
* Title of the series.
|
|
24
|
+
*/
|
|
25
|
+
title: string;
|
|
26
|
+
/**
|
|
27
|
+
* Type of the series. It can be either "threshold" or "bar".
|
|
28
|
+
*/
|
|
29
|
+
type: "bar";
|
|
30
|
+
/**
|
|
31
|
+
* Data points of the series. Each data point is represented by an object with an x value and a y value.
|
|
32
|
+
*/
|
|
33
|
+
data: {
|
|
34
|
+
x: X;
|
|
35
|
+
y: number;
|
|
36
|
+
}[];
|
|
37
|
+
};
|
|
38
|
+
type BarChartSeries<X> = ThresholdSeries<X> | BarDataSeries<X>;
|
|
39
|
+
type BarChartProps<X extends DataTypes> = {
|
|
40
|
+
/**
|
|
41
|
+
* Title of the chart.
|
|
42
|
+
*/
|
|
43
|
+
chartTitle?: string;
|
|
44
|
+
/**
|
|
45
|
+
* Error state of the chart. If set, the chart will display an error message with a retry action.
|
|
46
|
+
*/
|
|
47
|
+
error?: string;
|
|
48
|
+
/**
|
|
49
|
+
* When set to true, the x and y axes are swapped, resulting in bars
|
|
50
|
+
* being displayed horizontally rather than vertically. This feature is
|
|
51
|
+
* applicable only when the chart contains exclusively bar series.
|
|
52
|
+
*/
|
|
53
|
+
horizontalBars?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Title of the chart legend.
|
|
56
|
+
*/
|
|
57
|
+
legendTitle?: string;
|
|
58
|
+
/**
|
|
59
|
+
* If true, activates the loading state of the component.
|
|
60
|
+
*/
|
|
61
|
+
loading?: boolean;
|
|
62
|
+
/**
|
|
63
|
+
* This function will be called when the user changes the displayed
|
|
64
|
+
* data series with the default filter. This event is only triggered
|
|
65
|
+
* when 'showFilter' is set to 'true'.
|
|
66
|
+
*/
|
|
67
|
+
onFilterChange?: (visibleSeries: string[]) => void;
|
|
68
|
+
/**
|
|
69
|
+
* This function will be called when the user hovers over a data series
|
|
70
|
+
* through the chart legend. This event is only triggered when
|
|
71
|
+
* 'showLegend' is set to 'true'.
|
|
72
|
+
*/
|
|
73
|
+
onHighlightChange?: (highlightedSeries?: string) => void;
|
|
74
|
+
/**
|
|
75
|
+
* This function will be called when the user clicks the retry action
|
|
76
|
+
* in the error state. A 'DxcButton' component will be
|
|
77
|
+
* displayed if this prop is defined to perform the action.
|
|
78
|
+
*/
|
|
79
|
+
onRetry?: () => void;
|
|
80
|
+
/**
|
|
81
|
+
* An array of objects representing the data series to be displayed in
|
|
82
|
+
* the chart.
|
|
83
|
+
*/
|
|
84
|
+
series: BarChartSeries<X>[];
|
|
85
|
+
/**
|
|
86
|
+
* If true, the chart will display a filter to allow the user to change
|
|
87
|
+
* the displayed data series.
|
|
88
|
+
*/
|
|
89
|
+
showFilter?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* If true, the chart will display a legend with the data series
|
|
92
|
+
* information.
|
|
93
|
+
*/
|
|
94
|
+
showLegend?: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* If true, bars in the same data point are stacked instead of being
|
|
97
|
+
* grouped next to each other.
|
|
98
|
+
*/
|
|
99
|
+
stackedBars?: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Specifies the x-axis domain, defining the visible range. For
|
|
102
|
+
* numerical data, use a tuple: [minValue, maxValue]. For categorical
|
|
103
|
+
* data, use an array of category strings. Explicitly setting this is
|
|
104
|
+
* recommended. If not set, the component will auto-fit all data
|
|
105
|
+
* points.
|
|
106
|
+
*/
|
|
107
|
+
xDomain?: X[];
|
|
108
|
+
/**
|
|
109
|
+
* Function to format the displayed label of an x-axis mark.
|
|
110
|
+
*/
|
|
111
|
+
xFormatter?: (value: X) => string;
|
|
112
|
+
/**
|
|
113
|
+
* Title of the x axis.
|
|
114
|
+
*/
|
|
115
|
+
xTitle?: string;
|
|
116
|
+
/**
|
|
117
|
+
* Specifies the y-axis domain, defining the visible range. The domain
|
|
118
|
+
* is defined by a tuple: [minValue, maxValue]. Explicitly setting this
|
|
119
|
+
* is recommended. If not set, the component will auto-fit all data
|
|
120
|
+
* points.
|
|
121
|
+
*/
|
|
122
|
+
yDomain?: [number, number];
|
|
123
|
+
/**
|
|
124
|
+
* Function to format the displayed label of an y-axis mark.
|
|
125
|
+
*/
|
|
126
|
+
yFormatter?: (value: number) => string;
|
|
127
|
+
/**
|
|
128
|
+
* Title of the y axis.
|
|
129
|
+
*/
|
|
130
|
+
yTitle?: string;
|
|
131
|
+
};
|
|
132
|
+
type InsetWrapperProps = {
|
|
133
|
+
condition: boolean;
|
|
134
|
+
children: React.ReactNode;
|
|
135
|
+
};
|
|
136
|
+
export default BarChartProps;
|
|
137
|
+
export type { DataTypes, InsetWrapperProps };
|
package/bleed/Bleed.stories.tsx
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -5,8 +5,8 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
5
5
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
6
6
|
var _react = _interopRequireDefault(require("react"));
|
|
7
7
|
var _react2 = require("@testing-library/react");
|
|
8
|
-
var
|
|
9
|
-
var _Box = _interopRequireDefault(require("../box/Box
|
|
8
|
+
var _axeHelper = require("../../test/accessibility/axe-helper.js");
|
|
9
|
+
var _Box = _interopRequireDefault(require("../box/Box"));
|
|
10
10
|
describe("Box component accessibility tests", function () {
|
|
11
11
|
it("Should not have basic accessibility issues", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
12
12
|
var _render, container, results;
|
|
@@ -20,7 +20,7 @@ describe("Box component accessibility tests", function () {
|
|
|
20
20
|
display: "flex"
|
|
21
21
|
}, "Box")), container = _render.container;
|
|
22
22
|
_context.next = 3;
|
|
23
|
-
return (0,
|
|
23
|
+
return (0, _axeHelper.axe)(container);
|
|
24
24
|
case 3:
|
|
25
25
|
results = _context.sent;
|
|
26
26
|
expect(results).toHaveNoViolations();
|