@dxc-technology/halstack-react 0.0.0-5aa300b → 0.0.0-5b15506
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 +1 -10
- package/BackgroundColorContext.js +5 -22
- package/HalstackContext.d.ts +1243 -6
- package/HalstackContext.js +122 -106
- package/README.md +47 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +41 -109
- package/accordion/Accordion.stories.tsx +53 -148
- package/accordion/Accordion.test.js +19 -34
- package/accordion/types.d.ts +6 -18
- package/accordion-group/AccordionGroup.accessibility.test.js +88 -0
- package/accordion-group/AccordionGroup.d.ts +2 -2
- package/accordion-group/AccordionGroup.js +29 -77
- package/accordion-group/AccordionGroup.stories.tsx +78 -77
- package/accordion-group/AccordionGroup.test.js +44 -72
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +31 -0
- package/accordion-group/AccordionGroupContext.d.ts +3 -0
- package/accordion-group/AccordionGroupContext.js +8 -0
- package/accordion-group/types.d.ts +7 -19
- package/action-icon/ActionIcon.accessibility.test.js +63 -0
- package/action-icon/ActionIcon.d.ts +4 -0
- package/action-icon/ActionIcon.js +48 -0
- package/action-icon/ActionIcon.stories.tsx +41 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.accessibility.test.js +95 -0
- package/alert/Alert.js +31 -124
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.accessibility.test.js +129 -0
- package/badge/Badge.d.ts +1 -1
- package/badge/Badge.js +142 -42
- package/badge/Badge.stories.tsx +210 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -3
- package/bleed/Bleed.js +13 -21
- package/bleed/Bleed.stories.tsx +1 -0
- package/bleed/types.d.ts +2 -2
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +18 -59
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -15
- package/bulleted-list/BulletedList.accessibility.test.js +107 -0
- package/bulleted-list/BulletedList.js +22 -53
- package/bulleted-list/BulletedList.stories.tsx +8 -93
- package/bulleted-list/types.d.ts +32 -5
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.d.ts +1 -1
- package/button/Button.js +70 -103
- package/button/Button.stories.tsx +105 -114
- package/button/Button.test.js +20 -17
- package/button/types.d.ts +9 -5
- package/card/Card.accessibility.test.js +36 -0
- 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 -12
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +87 -122
- package/checkbox/Checkbox.stories.tsx +68 -54
- package/checkbox/Checkbox.test.js +108 -64
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +42 -67
- package/chip/Chip.stories.tsx +73 -29
- package/chip/Chip.test.js +18 -33
- package/chip/types.d.ts +4 -4
- 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 +1395 -0
- package/common/variables.js +899 -1144
- package/container/Container.d.ts +4 -0
- package/container/Container.js +194 -0
- package/container/Container.stories.tsx +214 -0
- package/container/types.d.ts +74 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +86 -0
- package/contextual-menu/ContextualMenu.d.ts +7 -0
- package/contextual-menu/ContextualMenu.js +71 -0
- package/contextual-menu/ContextualMenu.stories.tsx +182 -0
- package/contextual-menu/ContextualMenu.test.js +71 -0
- package/contextual-menu/MenuItemAction.d.ts +4 -0
- package/contextual-menu/MenuItemAction.js +46 -0
- package/contextual-menu/types.d.ts +22 -0
- package/date-input/Calendar.d.ts +1 -1
- package/date-input/Calendar.js +52 -96
- package/date-input/DateInput.accessibility.test.js +216 -0
- package/date-input/DateInput.js +102 -107
- package/date-input/DateInput.stories.tsx +194 -60
- package/date-input/DateInput.test.js +676 -620
- package/date-input/DatePicker.js +53 -92
- package/date-input/YearPicker.d.ts +1 -1
- package/date-input/YearPicker.js +29 -44
- package/date-input/types.d.ts +32 -28
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +61 -119
- package/dialog/Dialog.stories.tsx +310 -212
- package/dialog/Dialog.test.js +270 -33
- package/dialog/types.d.ts +18 -26
- package/divider/Divider.accessibility.test.js +33 -0
- package/divider/Divider.d.ts +4 -0
- package/divider/Divider.js +36 -0
- package/divider/Divider.stories.tsx +223 -0
- package/divider/Divider.test.js +38 -0
- package/divider/types.d.ts +21 -0
- package/divider/types.js +5 -0
- package/dropdown/Dropdown.accessibility.test.js +180 -0
- package/dropdown/Dropdown.js +61 -131
- package/dropdown/Dropdown.stories.tsx +205 -98
- package/dropdown/Dropdown.test.js +393 -379
- package/dropdown/DropdownMenu.js +20 -37
- package/dropdown/DropdownMenuItem.js +15 -37
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.accessibility.test.js +160 -0
- package/file-input/FileInput.js +184 -292
- package/file-input/FileInput.stories.tsx +86 -3
- package/file-input/FileInput.test.js +279 -395
- package/file-input/FileItem.js +27 -67
- package/file-input/types.d.ts +10 -10
- package/flex/Flex.js +27 -39
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +74 -9
- package/footer/Footer.accessibility.test.js +117 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +73 -118
- package/footer/Footer.stories.tsx +82 -23
- package/footer/Footer.test.js +33 -57
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +66 -7
- package/footer/types.d.ts +26 -28
- 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/grid/types.js +5 -0
- package/header/Header.accessibility.test.js +84 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +53 -149
- package/header/Header.stories.tsx +115 -36
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +2 -7
- package/header/types.d.ts +7 -22
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +10 -32
- package/heading/Heading.test.js +71 -88
- package/heading/types.d.ts +7 -7
- package/icon/Icon.accessibility.test.js +30 -0
- package/icon/Icon.d.ts +4 -0
- package/icon/Icon.js +33 -0
- package/icon/Icon.stories.tsx +28 -0
- package/icon/types.d.ts +4 -0
- package/icon/types.js +5 -0
- package/image/Image.accessibility.test.js +56 -0
- package/image/Image.d.ts +4 -0
- package/image/Image.js +70 -0
- package/image/Image.stories.tsx +129 -0
- package/image/types.d.ts +72 -0
- package/image/types.js +5 -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 +5 -5
- package/layout/ApplicationLayout.js +30 -67
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +8 -5
- package/layout/Icons.js +49 -59
- package/layout/types.d.ts +5 -6
- package/link/Link.accessibility.test.js +112 -0
- package/link/Link.js +31 -50
- package/link/Link.stories.tsx +62 -2
- package/link/Link.test.js +24 -44
- package/link/types.d.ts +14 -14
- package/main.d.ts +10 -5
- package/main.js +47 -59
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.d.ts +7 -0
- package/{tabs-nav → nav-tabs}/NavTabs.js +25 -57
- package/nav-tabs/NavTabs.stories.tsx +279 -0
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +39 -46
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +117 -0
- package/{tabs-nav → nav-tabs}/types.d.ts +15 -16
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.accessibility.test.js +228 -0
- package/number-input/NumberInput.js +46 -36
- package/number-input/NumberInput.stories.tsx +42 -26
- package/number-input/NumberInput.test.js +860 -413
- package/number-input/NumberInputContext.d.ts +3 -4
- package/number-input/NumberInputContext.js +3 -14
- package/number-input/types.d.ts +17 -5
- package/package.json +41 -39
- package/paginator/Icons.d.ts +5 -5
- package/paginator/Icons.js +5 -19
- package/paginator/Paginator.accessibility.test.js +79 -0
- package/paginator/Paginator.js +17 -47
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +252 -225
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +6 -22
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/PasswordInput.accessibility.test.js +153 -0
- package/password-input/PasswordInput.js +56 -126
- package/password-input/PasswordInput.stories.tsx +1 -33
- package/password-input/PasswordInput.test.js +158 -141
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +23 -55
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +36 -3
- package/progress-bar/ProgressBar.test.js +36 -53
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +15 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +31 -63
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +45 -93
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +505 -471
- package/radio-group/types.d.ts +8 -8
- package/resultset-table/Icons.d.ts +7 -0
- package/{resultsetTable → resultset-table}/Icons.js +1 -5
- package/resultset-table/ResultsetTable.accessibility.test.js +274 -0
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +46 -71
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +106 -5
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +165 -114
- package/{resultsetTable → resultset-table}/types.d.ts +44 -11
- package/resultset-table/types.js +5 -0
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +22 -75
- package/select/Option.js +28 -48
- package/select/Select.accessibility.test.js +217 -0
- package/select/Select.js +134 -181
- package/select/Select.stories.tsx +488 -264
- package/select/Select.test.js +1950 -1907
- package/select/types.d.ts +17 -18
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +90 -155
- package/sidenav/Sidenav.stories.tsx +113 -25
- package/sidenav/Sidenav.test.js +3 -10
- package/{layout → sidenav}/SidenavContext.d.ts +1 -1
- package/{layout → sidenav}/SidenavContext.js +3 -9
- package/sidenav/types.d.ts +33 -30
- package/slider/Slider.accessibility.test.js +104 -0
- package/slider/Slider.js +70 -128
- package/slider/Slider.test.js +108 -104
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.js +29 -73
- 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/status-light/StatusLight.accessibility.test.js +157 -0
- package/status-light/StatusLight.d.ts +4 -0
- package/status-light/StatusLight.js +51 -0
- package/status-light/StatusLight.stories.tsx +74 -0
- package/status-light/StatusLight.test.js +25 -0
- package/status-light/types.d.ts +17 -0
- package/status-light/types.js +5 -0
- package/switch/Switch.accessibility.test.js +89 -0
- package/switch/Switch.js +51 -99
- package/switch/Switch.stories.tsx +33 -34
- package/switch/Switch.test.js +52 -97
- package/switch/types.d.ts +4 -4
- package/table/DropdownTheme.js +62 -0
- package/table/Table.accessibility.test.js +82 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +78 -35
- package/table/Table.stories.tsx +651 -0
- package/table/Table.test.js +94 -7
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +27 -43
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +69 -163
- package/tabs/Tabs.stories.tsx +40 -4
- package/tabs/Tabs.test.js +61 -136
- package/tabs/types.d.ts +21 -21
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +34 -66
- package/tag/Tag.stories.tsx +18 -8
- package/tag/Tag.test.js +18 -37
- package/tag/types.d.ts +9 -9
- package/text-input/Suggestion.js +11 -28
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +19 -67
- package/text-input/TextInput.accessibility.test.js +321 -0
- package/text-input/TextInput.js +223 -329
- package/text-input/TextInput.stories.tsx +118 -153
- package/text-input/TextInput.test.js +1228 -1196
- package/text-input/types.d.ts +25 -17
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +70 -113
- package/textarea/Textarea.stories.tsx +174 -0
- package/textarea/Textarea.test.js +152 -183
- package/textarea/types.d.ts +9 -5
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +94 -107
- package/toggle-group/ToggleGroup.stories.tsx +52 -7
- package/toggle-group/ToggleGroup.test.js +69 -88
- package/toggle-group/types.d.ts +28 -19
- package/typography/Typography.accessibility.test.js +339 -0
- 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 +1147 -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 +124 -0
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +29 -67
- package/wizard/Wizard.stories.tsx +39 -0
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +10 -11
- package/card/ice-cream.jpg +0 -0
- package/common/OpenSans.css +0 -81
- package/common/fonts/OpenSans-Bold.ttf +0 -0
- package/common/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/common/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/common/fonts/OpenSans-Italic.ttf +0 -0
- package/common/fonts/OpenSans-Light.ttf +0 -0
- package/common/fonts/OpenSans-LightItalic.ttf +0 -0
- package/common/fonts/OpenSans-Regular.ttf +0 -0
- package/common/fonts/OpenSans-SemiBold.ttf +0 -0
- package/common/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/number-input/numberInputContextTypes.d.ts +0 -19
- package/resultsetTable/Icons.d.ts +0 -7
- package/resultsetTable/ResultsetTable.d.ts +0 -4
- package/select/Icons.d.ts +0 -10
- package/select/Icons.js +0 -93
- package/slider/Slider.stories.tsx +0 -183
- package/table/Table.stories.jsx +0 -277
- package/tabs-nav/NavTabs.d.ts +0 -8
- package/tabs-nav/NavTabs.stories.tsx +0 -172
- package/tabs-nav/Tab.js +0 -128
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -60
- package/textarea/Textarea.stories.jsx +0 -157
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/{tabs-nav → container}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → contextual-menu/types.js} +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import DxcResultsetTable from "./ResultsetTable";
|
|
3
|
-
import DxcButton from "../button/Button";
|
|
4
3
|
import Title from "../../.storybook/components/Title";
|
|
5
4
|
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
6
5
|
import { userEvent, within } from "@storybook/testing-library";
|
|
7
6
|
import styled from "styled-components";
|
|
7
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
8
8
|
|
|
9
9
|
export default {
|
|
10
10
|
title: "Resultset Table",
|
|
@@ -13,7 +13,7 @@ export default {
|
|
|
13
13
|
|
|
14
14
|
const deleteIcon = (
|
|
15
15
|
<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">
|
|
16
|
-
<path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
|
|
16
|
+
<path fill="currentColor" d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z" />
|
|
17
17
|
<path d="M0 0h24v24H0z" fill="none" />
|
|
18
18
|
</svg>
|
|
19
19
|
);
|
|
@@ -29,17 +29,77 @@ const rows = [
|
|
|
29
29
|
[{ displayValue: "006" }, { displayValue: "Cris" }, { displayValue: "Paris" }],
|
|
30
30
|
];
|
|
31
31
|
|
|
32
|
+
const advancedTheme = {
|
|
33
|
+
table: {
|
|
34
|
+
actionIconColor: "#1B75BB",
|
|
35
|
+
hoverActionIconColor: "#1B75BB",
|
|
36
|
+
activeActionIconColor: "#1B75BB",
|
|
37
|
+
focusActionIconColor: "#1B75BB",
|
|
38
|
+
disabledActionIconColor: "#666666",
|
|
39
|
+
hoverButtonBackgroundColor: "#cccccc",
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const actions = [
|
|
44
|
+
{
|
|
45
|
+
title: "icon",
|
|
46
|
+
onClick: (value?) => {
|
|
47
|
+
console.log(value);
|
|
48
|
+
},
|
|
49
|
+
options: [
|
|
50
|
+
{
|
|
51
|
+
value: "1",
|
|
52
|
+
label: "Amazon with a very long text",
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
value: "2",
|
|
56
|
+
label: "Ebay",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
value: "3",
|
|
60
|
+
label: "Apple",
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
icon: "filled_edit",
|
|
66
|
+
title: "icon",
|
|
67
|
+
onClick: () => {},
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
icon: deleteIcon,
|
|
71
|
+
title: "icon",
|
|
72
|
+
onClick: () => {},
|
|
73
|
+
disabled: true,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
icon: deleteIcon,
|
|
77
|
+
title: "icon",
|
|
78
|
+
onClick: () => {},
|
|
79
|
+
},
|
|
80
|
+
];
|
|
81
|
+
|
|
32
82
|
const rowsIcon = [
|
|
33
83
|
[
|
|
34
84
|
{ displayValue: "001", sortValue: "001" },
|
|
35
85
|
{ displayValue: "Peter" },
|
|
36
|
-
{
|
|
86
|
+
{
|
|
87
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
[
|
|
91
|
+
{ displayValue: "002", sortValue: "002" },
|
|
92
|
+
{ displayValue: "Louis" },
|
|
93
|
+
{
|
|
94
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
95
|
+
},
|
|
37
96
|
],
|
|
38
|
-
[{ displayValue: "002", sortValue: "002" }, { displayValue: "Louis" }, { displayValue: "" }],
|
|
39
97
|
[
|
|
40
98
|
{ displayValue: "003", sortValue: "003" },
|
|
41
99
|
{ displayValue: "Mark" },
|
|
42
|
-
{
|
|
100
|
+
{
|
|
101
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
102
|
+
},
|
|
43
103
|
],
|
|
44
104
|
];
|
|
45
105
|
|
|
@@ -200,12 +260,35 @@ export const Chromatic = () => (
|
|
|
200
260
|
<Title title="Scroll resultset table" theme="light" level={4} />
|
|
201
261
|
<DxcResultsetTable columns={longColumns} rows={longRows} />
|
|
202
262
|
</ExampleContainer>
|
|
263
|
+
<ExampleContainer>
|
|
264
|
+
<Title title="Without paginator" theme="light" level={4} />
|
|
265
|
+
<DxcResultsetTable columns={columns} rows={rows} hidePaginator />
|
|
266
|
+
</ExampleContainer>
|
|
203
267
|
<ExampleContainer>
|
|
204
268
|
<SmallContainer>
|
|
205
269
|
<Title title="Small container and text overflow" theme="light" level={4} />
|
|
206
270
|
<DxcResultsetTable columns={columnsSortable} rows={longValues} />
|
|
207
271
|
</SmallContainer>
|
|
208
272
|
</ExampleContainer>
|
|
273
|
+
<ExampleContainer>
|
|
274
|
+
<Title title="Reduced sortable table" theme="light" level={4} />
|
|
275
|
+
<DxcResultsetTable columns={columnsSortable} rows={rowsSortable} mode="reduced" />
|
|
276
|
+
</ExampleContainer>
|
|
277
|
+
{/* PENDING SMALL ICON VERSION */}
|
|
278
|
+
<ExampleContainer>
|
|
279
|
+
<Title title="Reduced with items per page option" theme="light" level={4} />
|
|
280
|
+
<DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2} itemsPerPageOptions={[2, 3]} mode="reduced" />
|
|
281
|
+
</ExampleContainer>
|
|
282
|
+
<ExampleContainer>
|
|
283
|
+
<Title title="Reduced scroll resultset table" theme="light" level={4} />
|
|
284
|
+
<DxcResultsetTable columns={longColumns} rows={longRows} mode="reduced" />
|
|
285
|
+
</ExampleContainer>
|
|
286
|
+
<ExampleContainer>
|
|
287
|
+
<SmallContainer>
|
|
288
|
+
<Title title="Reduced small container and text overflow" theme="light" level={4} />
|
|
289
|
+
<DxcResultsetTable columns={columnsSortable} rows={longValues} mode="reduced" />
|
|
290
|
+
</SmallContainer>
|
|
291
|
+
</ExampleContainer>
|
|
209
292
|
<Title title="Margins" theme="light" level={2} />
|
|
210
293
|
<ExampleContainer>
|
|
211
294
|
<Title title="Xxsmall" theme="light" level={4} />
|
|
@@ -298,3 +381,21 @@ LastPage.play = async ({ canvasElement }) => {
|
|
|
298
381
|
const nextButton = canvas.getAllByRole("button")[3];
|
|
299
382
|
await userEvent.click(nextButton);
|
|
300
383
|
};
|
|
384
|
+
|
|
385
|
+
const ResultsetActionsCellDropdown = () => (
|
|
386
|
+
<ExampleContainer>
|
|
387
|
+
<Title title="Dropdown Action" theme="light" level={4} />
|
|
388
|
+
<DxcResultsetTable columns={columns} rows={rowsIcon} itemsPerPage={2} />
|
|
389
|
+
<Title title="Custom theme actions cell" theme="light" level={4} />
|
|
390
|
+
<HalstackProvider advancedTheme={advancedTheme}>
|
|
391
|
+
<DxcResultsetTable columns={columns} rows={rowsIcon} itemsPerPage={2} />
|
|
392
|
+
</HalstackProvider>
|
|
393
|
+
</ExampleContainer>
|
|
394
|
+
);
|
|
395
|
+
|
|
396
|
+
export const DropdownAction = ResultsetActionsCellDropdown.bind({});
|
|
397
|
+
DropdownAction.play = async ({ canvasElement }) => {
|
|
398
|
+
const canvas = within(canvasElement);
|
|
399
|
+
const dropdown = canvas.getAllByRole("button")[5];
|
|
400
|
+
await userEvent.click(dropdown);
|
|
401
|
+
};
|
|
@@ -1,45 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
4
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
5
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
5
6
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
6
|
-
|
|
7
7
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
8
|
-
|
|
9
8
|
var _react = _interopRequireDefault(require("react"));
|
|
10
|
-
|
|
11
9
|
var _react2 = require("@testing-library/react");
|
|
12
|
-
|
|
13
10
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
14
|
-
|
|
15
|
-
var _ResultsetTable = _interopRequireDefault(require("./ResultsetTable"));
|
|
16
|
-
|
|
11
|
+
var _ResultsetTable = _interopRequireDefault(require("./ResultsetTable.tsx"));
|
|
17
12
|
// Mocking DOMRect for Radix Primitive Popover
|
|
18
13
|
global.globalThis = global;
|
|
19
|
-
|
|
20
|
-
global.ResizeObserver = /*#__PURE__*/function () {
|
|
21
|
-
function ResizeObserver(cb) {
|
|
22
|
-
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
23
|
-
this.cb = cb;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
27
|
-
key: "observe",
|
|
28
|
-
value: function observe() {
|
|
29
|
-
this.cb([{
|
|
30
|
-
borderBoxSize: {
|
|
31
|
-
inlineSize: 0,
|
|
32
|
-
blockSize: 0
|
|
33
|
-
}
|
|
34
|
-
}]);
|
|
35
|
-
}
|
|
36
|
-
}, {
|
|
37
|
-
key: "unobserve",
|
|
38
|
-
value: function unobserve() {}
|
|
39
|
-
}]);
|
|
40
|
-
return ResizeObserver;
|
|
41
|
-
}();
|
|
42
|
-
|
|
43
14
|
global.DOMRect = {
|
|
44
15
|
fromRect: function fromRect() {
|
|
45
16
|
return {
|
|
@@ -52,6 +23,34 @@ global.DOMRect = {
|
|
|
52
23
|
};
|
|
53
24
|
}
|
|
54
25
|
};
|
|
26
|
+
global.ResizeObserver = /*#__PURE__*/function () {
|
|
27
|
+
function ResizeObserver() {
|
|
28
|
+
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
29
|
+
}
|
|
30
|
+
(0, _createClass2["default"])(ResizeObserver, [{
|
|
31
|
+
key: "observe",
|
|
32
|
+
value: function observe() {}
|
|
33
|
+
}, {
|
|
34
|
+
key: "unobserve",
|
|
35
|
+
value: function unobserve() {}
|
|
36
|
+
}, {
|
|
37
|
+
key: "disconnect",
|
|
38
|
+
value: function disconnect() {}
|
|
39
|
+
}]);
|
|
40
|
+
return ResizeObserver;
|
|
41
|
+
}();
|
|
42
|
+
var icon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
43
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
44
|
+
height: "24px",
|
|
45
|
+
viewBox: "0 0 24 24",
|
|
46
|
+
width: "24px",
|
|
47
|
+
fill: "currentColor"
|
|
48
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
49
|
+
d: "M0 0h24v24H0V0zm0 0h24v24H0V0z",
|
|
50
|
+
fill: "none"
|
|
51
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
52
|
+
d: "M1 9l2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8l3 3 3-3c-1.65-1.66-4.34-1.66-6 0zm-4-4l2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13z"
|
|
53
|
+
}));
|
|
55
54
|
var columns = [{
|
|
56
55
|
displayValue: "Id",
|
|
57
56
|
isSortable: false
|
|
@@ -186,92 +185,88 @@ var rows2 = [[{
|
|
|
186
185
|
describe("Resultset table component tests", function () {
|
|
187
186
|
test("Resultset table rendered correctly", function () {
|
|
188
187
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
188
|
+
columns: columns,
|
|
189
|
+
rows: rows,
|
|
190
|
+
itemsPerPage: 3
|
|
191
|
+
})),
|
|
192
|
+
getByText = _render.getByText;
|
|
195
193
|
expect(getByText("Peter")).toBeTruthy();
|
|
196
194
|
});
|
|
197
195
|
test("Resultset table shows as many rows as itemsPerPage", function () {
|
|
198
196
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
197
|
+
columns: columns,
|
|
198
|
+
rows: rows,
|
|
199
|
+
itemsPerPage: 3
|
|
200
|
+
})),
|
|
201
|
+
getAllByRole = _render2.getAllByRole;
|
|
205
202
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
206
203
|
});
|
|
207
204
|
test("Resultset table shows rows on second page", function () {
|
|
208
205
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
206
|
+
columns: columns,
|
|
207
|
+
rows: rows,
|
|
208
|
+
itemsPerPage: 3
|
|
209
|
+
})),
|
|
210
|
+
getByText = _render3.getByText,
|
|
211
|
+
getAllByRole = _render3.getAllByRole;
|
|
216
212
|
expect(getByText("Peter")).toBeTruthy();
|
|
217
213
|
expect(getByText("Louis")).toBeTruthy();
|
|
218
214
|
expect(getByText("Lana")).toBeTruthy();
|
|
219
215
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
220
216
|
var nextButton = getAllByRole("button")[3];
|
|
221
|
-
|
|
222
217
|
_react2.fireEvent.click(nextButton);
|
|
223
|
-
|
|
224
|
-
expect(getByText("4 to 6 of 10")).toBeTruthy();
|
|
225
|
-
expect(getByText("Rick")).toBeTruthy();
|
|
226
|
-
expect(getByText("Mark")).toBeTruthy();
|
|
227
|
-
expect(getByText("Cris")).toBeTruthy();
|
|
228
|
-
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
229
|
-
});
|
|
230
|
-
test("Resultset table goToPage works as expected", function () {
|
|
231
|
-
window.HTMLElement.prototype.scrollIntoView = function () {};
|
|
232
|
-
|
|
233
|
-
window.HTMLElement.prototype.scrollTo = function () {};
|
|
234
|
-
|
|
235
|
-
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
236
|
-
columns: columns,
|
|
237
|
-
showGoToPage: true,
|
|
238
|
-
rows: rows,
|
|
239
|
-
itemsPerPage: 3
|
|
240
|
-
})),
|
|
241
|
-
getByText = _render4.getByText,
|
|
242
|
-
getAllByRole = _render4.getAllByRole;
|
|
243
|
-
|
|
244
|
-
expect(getByText("Peter")).toBeTruthy();
|
|
245
|
-
expect(getByText("Louis")).toBeTruthy();
|
|
246
|
-
expect(getByText("Lana")).toBeTruthy();
|
|
247
|
-
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
248
|
-
var goToPageSelect = getAllByRole("button")[3];
|
|
249
|
-
|
|
250
|
-
_userEvent["default"].click(goToPageSelect);
|
|
251
|
-
|
|
252
|
-
var goToPageOption = getByText("2");
|
|
253
|
-
|
|
254
|
-
_userEvent["default"].click(goToPageOption);
|
|
255
|
-
|
|
256
218
|
expect(getByText("4 to 6 of 10")).toBeTruthy();
|
|
257
219
|
expect(getByText("Rick")).toBeTruthy();
|
|
258
220
|
expect(getByText("Mark")).toBeTruthy();
|
|
259
221
|
expect(getByText("Cris")).toBeTruthy();
|
|
260
222
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
261
223
|
});
|
|
224
|
+
test("Resultset table goToPage works as expected", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
225
|
+
var _render4, getByText, getAllByRole, goToPageSelect, goToPageOption;
|
|
226
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
227
|
+
while (1) switch (_context.prev = _context.next) {
|
|
228
|
+
case 0:
|
|
229
|
+
window.HTMLElement.prototype.scrollIntoView = function () {};
|
|
230
|
+
window.HTMLElement.prototype.scrollTo = function () {};
|
|
231
|
+
_render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
232
|
+
columns: columns,
|
|
233
|
+
showGoToPage: true,
|
|
234
|
+
rows: rows,
|
|
235
|
+
itemsPerPage: 3
|
|
236
|
+
})), getByText = _render4.getByText, getAllByRole = _render4.getAllByRole;
|
|
237
|
+
expect(getByText("Peter")).toBeTruthy();
|
|
238
|
+
expect(getByText("Louis")).toBeTruthy();
|
|
239
|
+
expect(getByText("Lana")).toBeTruthy();
|
|
240
|
+
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
241
|
+
goToPageSelect = getAllByRole("button")[3];
|
|
242
|
+
_context.next = 10;
|
|
243
|
+
return _userEvent["default"].click(goToPageSelect);
|
|
244
|
+
case 10:
|
|
245
|
+
goToPageOption = getByText("2");
|
|
246
|
+
_context.next = 13;
|
|
247
|
+
return _userEvent["default"].click(goToPageOption);
|
|
248
|
+
case 13:
|
|
249
|
+
expect(getByText("4 to 6 of 10")).toBeTruthy();
|
|
250
|
+
expect(getByText("Rick")).toBeTruthy();
|
|
251
|
+
expect(getByText("Mark")).toBeTruthy();
|
|
252
|
+
expect(getByText("Cris")).toBeTruthy();
|
|
253
|
+
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
254
|
+
case 18:
|
|
255
|
+
case "end":
|
|
256
|
+
return _context.stop();
|
|
257
|
+
}
|
|
258
|
+
}, _callee);
|
|
259
|
+
})));
|
|
262
260
|
test("Resultset table going to the last page shows only one row", function () {
|
|
263
261
|
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
262
|
+
columns: columns,
|
|
263
|
+
rows: rows,
|
|
264
|
+
itemsPerPage: 3
|
|
265
|
+
})),
|
|
266
|
+
getByText = _render5.getByText,
|
|
267
|
+
getAllByRole = _render5.getAllByRole;
|
|
271
268
|
var lastButton = getAllByRole("button")[4];
|
|
272
|
-
|
|
273
269
|
_react2.fireEvent.click(lastButton);
|
|
274
|
-
|
|
275
270
|
expect(getByText("10 to 10 of 10")).toBeTruthy();
|
|
276
271
|
expect(getAllByRole("row")).toHaveLength(2);
|
|
277
272
|
expect(getByText("Cosmin")).toBeTruthy();
|
|
@@ -283,26 +278,21 @@ describe("Resultset table component tests", function () {
|
|
|
283
278
|
itemsPerPage: 3
|
|
284
279
|
}));
|
|
285
280
|
expect(component.queryByText("Peter")).toBeTruthy();
|
|
286
|
-
|
|
287
281
|
_react2.fireEvent.click(component.queryByText("Name"));
|
|
288
|
-
|
|
289
282
|
expect(component.queryByText("Tina")).not.toBeTruthy();
|
|
290
283
|
expect(component.queryByText("Cosmin")).toBeTruthy();
|
|
291
|
-
|
|
292
284
|
_react2.fireEvent.click(component.queryByText("Name"));
|
|
293
|
-
|
|
294
285
|
expect(component.queryByText("Tina")).toBeTruthy();
|
|
295
286
|
expect(component.queryByText("Cosmin")).not.toBeTruthy();
|
|
296
287
|
});
|
|
297
288
|
test("Resultset table change rows should go to first page", function () {
|
|
298
289
|
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
290
|
+
columns: columns,
|
|
291
|
+
rows: rows,
|
|
292
|
+
itemsPerPage: 3
|
|
293
|
+
})),
|
|
294
|
+
queryByText = _render6.queryByText,
|
|
295
|
+
rerender = _render6.rerender;
|
|
306
296
|
expect(queryByText("Peter")).toBeTruthy();
|
|
307
297
|
rerender( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
308
298
|
columns: columns,
|
|
@@ -313,18 +303,79 @@ describe("Resultset table component tests", function () {
|
|
|
313
303
|
});
|
|
314
304
|
test("Resultset table change itemsPerPage should go to first page", function () {
|
|
315
305
|
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
306
|
+
columns: columns,
|
|
307
|
+
rows: rows,
|
|
308
|
+
itemsPerPage: 3,
|
|
309
|
+
itemsPerPageOptions: [2, 3]
|
|
310
|
+
})),
|
|
311
|
+
getAllByRole = _render7.getAllByRole;
|
|
323
312
|
var lastButton = getAllByRole("button")[4];
|
|
324
313
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
325
|
-
|
|
326
314
|
_react2.fireEvent.click(lastButton);
|
|
327
|
-
|
|
328
315
|
expect(getAllByRole("row").length - 1).toEqual(1);
|
|
329
316
|
});
|
|
317
|
+
test("Resultset table may not use the paginator", function () {
|
|
318
|
+
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
319
|
+
columns: columns,
|
|
320
|
+
rows: rows,
|
|
321
|
+
hidePaginator: true
|
|
322
|
+
})),
|
|
323
|
+
getAllByRole = _render8.getAllByRole;
|
|
324
|
+
var nextButton = getAllByRole("button")[3];
|
|
325
|
+
expect(nextButton).not.toBeTruthy();
|
|
326
|
+
});
|
|
327
|
+
test("Resultset table with ActionsCell", function () {
|
|
328
|
+
var onSelectOption = jest.fn();
|
|
329
|
+
var onClick = jest.fn();
|
|
330
|
+
var actions = [{
|
|
331
|
+
icon: icon,
|
|
332
|
+
title: "icon1",
|
|
333
|
+
onClick: onSelectOption,
|
|
334
|
+
options: [{
|
|
335
|
+
value: "1",
|
|
336
|
+
label: "Amazon"
|
|
337
|
+
}, {
|
|
338
|
+
value: "2",
|
|
339
|
+
label: "Ebay"
|
|
340
|
+
}, {
|
|
341
|
+
value: "3",
|
|
342
|
+
label: "Aliexpress"
|
|
343
|
+
}]
|
|
344
|
+
}, {
|
|
345
|
+
icon: icon,
|
|
346
|
+
title: "icon2",
|
|
347
|
+
onClick: onClick
|
|
348
|
+
}];
|
|
349
|
+
var actionRows = [[{
|
|
350
|
+
displayValue: "001",
|
|
351
|
+
sortValue: "001"
|
|
352
|
+
}, {
|
|
353
|
+
displayValue: "Peter",
|
|
354
|
+
sortValue: "Peter"
|
|
355
|
+
}, {
|
|
356
|
+
displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
|
|
357
|
+
actions: actions
|
|
358
|
+
}),
|
|
359
|
+
sortValue: "Actions"
|
|
360
|
+
}]];
|
|
361
|
+
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
362
|
+
columns: columns,
|
|
363
|
+
rows: actionRows,
|
|
364
|
+
itemsPerPage: 3
|
|
365
|
+
})),
|
|
366
|
+
getAllByRole = _render9.getAllByRole,
|
|
367
|
+
getByRole = _render9.getByRole,
|
|
368
|
+
getByText = _render9.getByText;
|
|
369
|
+
var dropdown = getAllByRole("button")[2];
|
|
370
|
+
(0, _react2.act)(function () {
|
|
371
|
+
_userEvent["default"].click(dropdown);
|
|
372
|
+
});
|
|
373
|
+
expect(getByRole("menu")).toBeTruthy();
|
|
374
|
+
var option = getByText("Aliexpress");
|
|
375
|
+
_userEvent["default"].click(option);
|
|
376
|
+
expect(onSelectOption).toHaveBeenCalledWith("3");
|
|
377
|
+
var action = getAllByRole("button")[1];
|
|
378
|
+
_userEvent["default"].click(action);
|
|
379
|
+
expect(onClick).toHaveBeenCalled();
|
|
380
|
+
});
|
|
330
381
|
});
|
|
@@ -1,12 +1,12 @@
|
|
|
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
|
-
|
|
9
|
+
export type Column = {
|
|
10
10
|
/**
|
|
11
11
|
* Column display value.
|
|
12
12
|
*/
|
|
@@ -16,7 +16,7 @@ declare type Column = {
|
|
|
16
16
|
*/
|
|
17
17
|
isSortable?: boolean;
|
|
18
18
|
};
|
|
19
|
-
|
|
19
|
+
export type Row = {
|
|
20
20
|
/**
|
|
21
21
|
* Value to be displayed in the cell.
|
|
22
22
|
*/
|
|
@@ -27,7 +27,7 @@ declare type Row = {
|
|
|
27
27
|
*/
|
|
28
28
|
sortValue?: string;
|
|
29
29
|
};
|
|
30
|
-
|
|
30
|
+
type CommonProps = {
|
|
31
31
|
/**
|
|
32
32
|
* An array of objects representing the columns of the table.
|
|
33
33
|
*/
|
|
@@ -37,6 +37,24 @@ declare type Props = {
|
|
|
37
37
|
* as many objects as columns in the table.
|
|
38
38
|
*/
|
|
39
39
|
rows: Row[][];
|
|
40
|
+
/**
|
|
41
|
+
* Size of the margin to be applied to the component. You can pass an object with 'top',
|
|
42
|
+
* 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
43
|
+
*/
|
|
44
|
+
margin?: Space | Margin;
|
|
45
|
+
/**
|
|
46
|
+
* Value of the tabindex attribute applied to the sortable icon.
|
|
47
|
+
*/
|
|
48
|
+
tabIndex?: number;
|
|
49
|
+
/**
|
|
50
|
+
* Determines the visual style and layout
|
|
51
|
+
* - "default": The default mode with big spacing
|
|
52
|
+
* - "reduced": A reduced mode with minimal spacing for dense tables
|
|
53
|
+
*/
|
|
54
|
+
mode?: "default" | "reduced";
|
|
55
|
+
};
|
|
56
|
+
type PaginatedProps = CommonProps & {
|
|
57
|
+
hidePaginator?: false;
|
|
40
58
|
/**
|
|
41
59
|
* If true, a select component for navigation between pages will be displayed.
|
|
42
60
|
*/
|
|
@@ -53,15 +71,30 @@ declare type Props = {
|
|
|
53
71
|
* This function will be called when the user selects an item per page
|
|
54
72
|
* option. The value selected will be passed as a parameter.
|
|
55
73
|
*/
|
|
56
|
-
itemsPerPageFunction?: (
|
|
74
|
+
itemsPerPageFunction?: (value: number) => void;
|
|
75
|
+
};
|
|
76
|
+
type NonPaginatedProps = CommonProps & {
|
|
57
77
|
/**
|
|
58
|
-
*
|
|
59
|
-
* 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
78
|
+
* If true, paginator will not be displayed.
|
|
60
79
|
*/
|
|
61
|
-
|
|
80
|
+
hidePaginator: true;
|
|
62
81
|
/**
|
|
63
|
-
*
|
|
82
|
+
* If true, a select component for navigation between pages will be displayed.
|
|
64
83
|
*/
|
|
65
|
-
|
|
84
|
+
showGoToPage?: never;
|
|
85
|
+
/**
|
|
86
|
+
* Number of items per page.
|
|
87
|
+
*/
|
|
88
|
+
itemsPerPage?: never;
|
|
89
|
+
/**
|
|
90
|
+
* An array of numbers representing the items per page options.
|
|
91
|
+
*/
|
|
92
|
+
itemsPerPageOptions?: never;
|
|
93
|
+
/**
|
|
94
|
+
* This function will be called when the user selects an item per page
|
|
95
|
+
* option. The value selected will be passed as a parameter.
|
|
96
|
+
*/
|
|
97
|
+
itemsPerPageFunction?: never;
|
|
66
98
|
};
|
|
99
|
+
type Props = PaginatedProps | NonPaginatedProps;
|
|
67
100
|
export default Props;
|
package/select/Listbox.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ListboxProps } from "./types";
|
|
3
|
-
declare const _default: React.MemoExoticComponent<({ id, currentValue, options, visualFocusIndex, lastOptionIndex, multiple, optional, optionalItem, searchable, handleOptionOnClick,
|
|
3
|
+
declare const _default: React.MemoExoticComponent<({ id, currentValue, options, visualFocusIndex, lastOptionIndex, multiple, optional, optionalItem, searchable, handleOptionOnClick, styles, }: ListboxProps) => JSX.Element>;
|
|
4
4
|
export default _default;
|