@dxc-technology/halstack-react 0.0.0-2bca710 → 0.0.0-2bd2d63
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 +4 -21
- package/HalstackContext.d.ts +41 -143
- package/HalstackContext.js +14 -39
- package/accordion/Accordion.accessibility.test.d.ts +1 -0
- package/accordion/Accordion.accessibility.test.js +71 -0
- package/accordion/Accordion.js +33 -87
- package/accordion/Accordion.stories.tsx +8 -64
- package/accordion/Accordion.test.d.ts +1 -0
- package/accordion/Accordion.test.js +19 -34
- package/accordion/types.d.ts +6 -6
- package/accordion-group/AccordionGroup.accessibility.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.accessibility.test.js +82 -0
- package/accordion-group/AccordionGroup.d.ts +2 -3
- package/accordion-group/AccordionGroup.js +17 -44
- package/accordion-group/AccordionGroup.stories.tsx +24 -24
- package/accordion-group/AccordionGroup.test.d.ts +1 -0
- package/accordion-group/AccordionGroup.test.js +41 -63
- package/accordion-group/AccordionGroupAccordion.js +11 -23
- package/accordion-group/AccordionGroupContext.d.ts +3 -0
- package/accordion-group/AccordionGroupContext.js +8 -0
- package/accordion-group/types.d.ts +7 -7
- package/action-icon/ActionIcon.accessibility.test.d.ts +1 -0
- 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.d.ts +1 -0
- package/action-icon/ActionIcon.test.js +64 -0
- package/action-icon/types.d.ts +26 -0
- package/alert/Alert.accessibility.test.d.ts +1 -0
- package/alert/Alert.accessibility.test.js +95 -0
- package/alert/Alert.js +34 -120
- package/alert/Alert.test.d.ts +1 -0
- package/alert/Alert.test.js +29 -46
- package/alert/types.d.ts +5 -5
- package/badge/Badge.accessibility.test.d.ts +1 -0
- 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.d.ts +1 -0
- package/badge/Badge.test.js +30 -0
- package/badge/types.d.ts +52 -3
- package/bleed/Bleed.js +13 -21
- package/bleed/types.d.ts +2 -2
- package/box/Box.accessibility.test.d.ts +1 -0
- package/box/Box.accessibility.test.js +33 -0
- package/box/Box.js +11 -33
- package/box/Box.test.d.ts +1 -0
- package/box/Box.test.js +2 -7
- package/box/types.d.ts +3 -3
- 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 +16 -0
- package/breadcrumbs/types.js +5 -0
- package/bulleted-list/BulletedList.accessibility.test.d.ts +1 -0
- package/bulleted-list/BulletedList.accessibility.test.js +119 -0
- package/bulleted-list/BulletedList.js +22 -55
- package/bulleted-list/BulletedList.stories.tsx +2 -93
- package/bulleted-list/types.d.ts +5 -5
- package/button/Button.accessibility.test.d.ts +1 -0
- package/button/Button.accessibility.test.js +127 -0
- package/button/Button.js +36 -59
- package/button/Button.stories.tsx +35 -135
- package/button/Button.test.d.ts +1 -0
- package/button/Button.test.js +14 -22
- package/button/types.d.ts +5 -5
- package/card/Card.accessibility.test.d.ts +1 -0
- package/card/Card.accessibility.test.js +36 -0
- package/card/Card.js +23 -45
- package/card/Card.stories.tsx +1 -1
- package/card/Card.test.d.ts +1 -0
- package/card/Card.test.js +11 -22
- package/card/types.d.ts +5 -5
- package/checkbox/Checkbox.accessibility.test.d.ts +1 -0
- package/checkbox/Checkbox.accessibility.test.js +87 -0
- package/checkbox/Checkbox.js +88 -126
- package/checkbox/Checkbox.stories.tsx +16 -54
- package/checkbox/Checkbox.test.d.ts +1 -0
- package/checkbox/Checkbox.test.js +108 -64
- package/checkbox/types.d.ts +8 -4
- package/chip/Chip.accessibility.test.d.ts +1 -0
- package/chip/Chip.accessibility.test.js +67 -0
- package/chip/Chip.js +22 -36
- package/chip/Chip.stories.tsx +6 -25
- package/chip/Chip.test.d.ts +1 -0
- package/chip/Chip.test.js +18 -31
- package/chip/types.d.ts +4 -4
- package/common/coreTokens.d.ts +105 -14
- package/common/coreTokens.js +40 -23
- package/common/utils.js +2 -8
- package/common/variables.d.ts +42 -144
- package/common/variables.js +116 -225
- 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/container/types.js +5 -0
- package/contextual-menu/ContextualMenu.accessibility.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.accessibility.test.js +98 -0
- package/contextual-menu/ContextualMenu.d.ts +5 -0
- package/contextual-menu/ContextualMenu.js +88 -0
- package/contextual-menu/ContextualMenu.stories.tsx +232 -0
- package/contextual-menu/ContextualMenu.test.d.ts +1 -0
- package/contextual-menu/ContextualMenu.test.js +205 -0
- 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 +51 -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 +58 -0
- package/contextual-menu/types.js +5 -0
- package/date-input/Calendar.js +13 -57
- package/date-input/DateInput.accessibility.test.d.ts +1 -0
- package/date-input/DateInput.accessibility.test.js +229 -0
- package/date-input/DateInput.js +55 -104
- package/date-input/DateInput.stories.tsx +17 -39
- package/date-input/DateInput.test.d.ts +1 -0
- package/date-input/DateInput.test.js +668 -709
- package/date-input/DatePicker.js +23 -48
- package/date-input/YearPicker.js +8 -34
- package/date-input/types.d.ts +28 -26
- package/dialog/Dialog.accessibility.test.d.ts +1 -0
- package/dialog/Dialog.accessibility.test.js +69 -0
- package/dialog/Dialog.js +21 -59
- package/dialog/Dialog.stories.tsx +174 -0
- package/dialog/Dialog.test.d.ts +1 -0
- package/dialog/Dialog.test.js +216 -215
- package/dialog/types.d.ts +18 -13
- package/divider/Divider.accessibility.test.d.ts +1 -0
- 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.d.ts +1 -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.d.ts +1 -0
- package/dropdown/Dropdown.accessibility.test.js +183 -0
- package/dropdown/Dropdown.js +67 -135
- package/dropdown/Dropdown.stories.tsx +16 -27
- package/dropdown/Dropdown.test.d.ts +1 -0
- package/dropdown/Dropdown.test.js +434 -392
- package/dropdown/DropdownMenu.js +12 -23
- package/dropdown/DropdownMenuItem.js +13 -21
- package/dropdown/types.d.ts +20 -24
- package/file-input/FileInput.accessibility.test.d.ts +1 -0
- package/file-input/FileInput.accessibility.test.js +167 -0
- package/file-input/FileInput.js +179 -286
- package/file-input/FileInput.stories.tsx +1 -1
- package/file-input/FileInput.test.d.ts +1 -0
- package/file-input/FileInput.test.js +303 -356
- package/file-input/FileItem.js +29 -66
- package/file-input/types.d.ts +9 -9
- package/flex/Flex.js +25 -39
- package/flex/types.d.ts +6 -6
- package/footer/Footer.accessibility.test.d.ts +1 -0
- package/footer/Footer.accessibility.test.js +125 -0
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +43 -68
- package/footer/Footer.stories.tsx +58 -2
- package/footer/Footer.test.d.ts +1 -0
- package/footer/Footer.test.js +19 -33
- package/footer/Icons.d.ts +3 -2
- package/footer/Icons.js +53 -22
- package/footer/types.d.ts +17 -17
- package/grid/Grid.js +1 -16
- package/grid/Grid.stories.tsx +3 -1
- package/grid/types.d.ts +10 -10
- package/header/Header.accessibility.test.d.ts +1 -0
- package/header/Header.accessibility.test.js +94 -0
- package/header/Header.d.ts +1 -1
- package/header/Header.js +38 -104
- package/header/Header.stories.tsx +17 -1
- package/header/Header.test.d.ts +1 -0
- package/header/Header.test.js +13 -26
- package/header/Icons.d.ts +2 -2
- package/header/Icons.js +3 -13
- package/header/types.d.ts +7 -8
- package/heading/Heading.accessibility.test.d.ts +1 -0
- package/heading/Heading.accessibility.test.js +33 -0
- package/heading/Heading.js +9 -31
- package/heading/Heading.test.d.ts +1 -0
- package/heading/Heading.test.js +65 -95
- package/heading/types.d.ts +7 -7
- package/icon/Icon.accessibility.test.d.ts +1 -0
- 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.d.ts +1 -0
- package/image/Image.accessibility.test.js +56 -0
- package/image/Image.d.ts +2 -2
- package/image/Image.js +17 -32
- package/image/Image.stories.tsx +3 -1
- package/image/types.d.ts +2 -2
- package/inset/Inset.js +13 -21
- package/inset/types.d.ts +2 -2
- package/layout/ApplicationLayout.d.ts +2 -2
- package/layout/ApplicationLayout.js +23 -60
- package/layout/Icons.d.ts +4 -5
- package/layout/Icons.js +2 -16
- package/layout/types.d.ts +3 -3
- package/link/Link.accessibility.test.d.ts +1 -0
- package/link/Link.accessibility.test.js +108 -0
- package/link/Link.js +28 -47
- package/link/Link.stories.tsx +4 -4
- package/link/Link.test.d.ts +1 -0
- package/link/Link.test.js +24 -42
- package/link/types.d.ts +14 -14
- package/main.d.ts +8 -4
- package/main.js +39 -60
- package/nav-tabs/NavTabs.accessibility.test.d.ts +1 -0
- package/nav-tabs/NavTabs.accessibility.test.js +44 -0
- package/nav-tabs/NavTabs.d.ts +1 -2
- package/nav-tabs/NavTabs.js +34 -48
- package/nav-tabs/NavTabs.stories.tsx +45 -25
- package/nav-tabs/NavTabs.test.d.ts +1 -0
- package/nav-tabs/NavTabs.test.js +46 -51
- package/nav-tabs/NavTabsContext.d.ts +3 -0
- package/nav-tabs/NavTabsContext.js +8 -0
- package/nav-tabs/Tab.js +38 -67
- package/nav-tabs/types.d.ts +10 -10
- package/number-input/NumberInput.accessibility.test.d.ts +1 -0
- package/number-input/NumberInput.accessibility.test.js +227 -0
- package/number-input/NumberInput.d.ts +0 -7
- package/number-input/NumberInput.js +47 -39
- package/number-input/NumberInput.stories.tsx +28 -26
- package/number-input/NumberInput.test.d.ts +1 -0
- package/number-input/NumberInput.test.js +839 -576
- package/number-input/NumberInputContext.d.ts +3 -0
- package/number-input/NumberInputContext.js +8 -0
- package/number-input/types.d.ts +17 -5
- package/package.json +46 -40
- package/paginator/Paginator.accessibility.test.d.ts +1 -0
- package/paginator/Paginator.accessibility.test.js +78 -0
- package/paginator/Paginator.js +27 -52
- package/paginator/Paginator.test.d.ts +1 -0
- package/paginator/Paginator.test.js +226 -210
- package/paginator/types.d.ts +3 -3
- package/paragraph/Paragraph.accessibility.test.d.ts +1 -0
- package/paragraph/Paragraph.accessibility.test.js +28 -0
- package/paragraph/Paragraph.js +3 -19
- package/paragraph/Paragraph.stories.tsx +0 -17
- package/password-input/PasswordInput.accessibility.test.d.ts +1 -0
- package/password-input/PasswordInput.accessibility.test.js +152 -0
- package/password-input/PasswordInput.js +32 -54
- package/password-input/PasswordInput.stories.tsx +2 -35
- package/password-input/PasswordInput.test.d.ts +1 -0
- package/password-input/PasswordInput.test.js +153 -130
- package/password-input/types.d.ts +8 -7
- package/progress-bar/ProgressBar.accessibility.test.d.ts +1 -0
- package/progress-bar/ProgressBar.accessibility.test.js +35 -0
- package/progress-bar/ProgressBar.js +26 -56
- package/progress-bar/{ProgressBar.stories.jsx → ProgressBar.stories.tsx} +1 -1
- package/progress-bar/ProgressBar.test.d.ts +1 -0
- package/progress-bar/ProgressBar.test.js +36 -53
- package/progress-bar/types.d.ts +3 -3
- package/quick-nav/QuickNav.accessibility.test.d.ts +1 -0
- package/quick-nav/QuickNav.accessibility.test.js +57 -0
- package/quick-nav/QuickNav.js +4 -27
- package/quick-nav/QuickNav.stories.tsx +1 -1
- package/quick-nav/types.d.ts +10 -10
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +22 -57
- package/radio-group/RadioGroup.accessibility.test.d.ts +1 -0
- package/radio-group/RadioGroup.accessibility.test.js +97 -0
- package/radio-group/RadioGroup.js +40 -88
- package/radio-group/RadioGroup.stories.tsx +10 -10
- package/radio-group/RadioGroup.test.d.ts +1 -0
- package/radio-group/RadioGroup.test.js +505 -473
- 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.d.ts +1 -0
- package/resultset-table/ResultsetTable.accessibility.test.js +284 -0
- package/resultset-table/ResultsetTable.d.ts +7 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.js +45 -69
- package/{resultsetTable → resultset-table}/ResultsetTable.stories.tsx +119 -6
- package/resultset-table/ResultsetTable.test.d.ts +1 -0
- package/{resultsetTable → resultset-table}/ResultsetTable.test.js +149 -95
- package/{resultsetTable → resultset-table}/types.d.ts +44 -11
- package/resultset-table/types.js +5 -0
- package/select/Listbox.js +36 -54
- package/select/Option.js +28 -36
- package/select/Select.accessibility.test.d.ts +1 -0
- package/select/Select.accessibility.test.js +227 -0
- package/select/Select.js +111 -177
- package/select/Select.stories.tsx +60 -112
- package/select/Select.test.d.ts +1 -0
- package/select/Select.test.js +1900 -1861
- package/select/types.d.ts +15 -16
- package/sidenav/Sidenav.accessibility.test.d.ts +1 -0
- package/sidenav/Sidenav.accessibility.test.js +59 -0
- package/sidenav/Sidenav.js +44 -81
- package/sidenav/Sidenav.stories.tsx +5 -10
- package/sidenav/Sidenav.test.d.ts +1 -0
- package/sidenav/Sidenav.test.js +4 -11
- package/{layout → sidenav}/SidenavContext.d.ts +1 -1
- package/{layout → sidenav}/SidenavContext.js +3 -9
- package/sidenav/types.d.ts +20 -20
- package/slider/Slider.accessibility.test.d.ts +1 -0
- package/slider/Slider.accessibility.test.js +103 -0
- package/slider/Slider.js +66 -125
- package/slider/Slider.stories.tsx +0 -60
- package/slider/Slider.test.d.ts +1 -0
- package/slider/Slider.test.js +118 -112
- package/slider/types.d.ts +4 -4
- package/spinner/Spinner.accessibility.test.d.ts +1 -0
- package/spinner/Spinner.accessibility.test.js +96 -0
- package/spinner/Spinner.js +21 -55
- package/spinner/Spinner.test.d.ts +1 -0
- package/spinner/Spinner.test.js +26 -35
- package/spinner/types.d.ts +3 -3
- package/status-light/StatusLight.accessibility.test.d.ts +1 -0
- 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.d.ts +1 -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.d.ts +1 -0
- package/switch/Switch.accessibility.test.js +98 -0
- package/switch/Switch.js +49 -100
- package/switch/Switch.stories.tsx +12 -34
- package/switch/Switch.test.d.ts +1 -0
- 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.d.ts +1 -0
- package/table/Table.accessibility.test.js +92 -0
- package/table/Table.d.ts +6 -2
- package/table/Table.js +76 -33
- package/table/{Table.stories.jsx → Table.stories.tsx} +309 -2
- package/table/Table.test.d.ts +1 -0
- package/table/Table.test.js +92 -7
- package/table/types.d.ts +34 -6
- package/tabs/Tab.js +22 -37
- package/tabs/Tabs.accessibility.test.d.ts +1 -0
- package/tabs/Tabs.accessibility.test.js +56 -0
- package/tabs/Tabs.js +59 -147
- package/tabs/Tabs.stories.tsx +8 -4
- package/tabs/Tabs.test.d.ts +1 -0
- package/tabs/Tabs.test.js +58 -132
- package/tabs/types.d.ts +21 -21
- package/tag/Tag.accessibility.test.d.ts +1 -0
- package/tag/Tag.accessibility.test.js +69 -0
- package/tag/Tag.js +27 -57
- package/tag/Tag.stories.tsx +5 -8
- package/tag/Tag.test.d.ts +1 -0
- package/tag/Tag.test.js +18 -37
- package/tag/types.d.ts +9 -9
- package/text-input/Suggestion.js +9 -26
- package/text-input/Suggestions.d.ts +1 -1
- package/text-input/Suggestions.js +30 -70
- package/text-input/TextInput.accessibility.test.d.ts +1 -0
- package/text-input/TextInput.accessibility.test.js +320 -0
- package/text-input/TextInput.js +194 -284
- package/text-input/TextInput.stories.tsx +20 -160
- package/text-input/TextInput.test.d.ts +1 -0
- package/text-input/TextInput.test.js +1226 -1283
- package/text-input/types.d.ts +21 -17
- package/textarea/Textarea.accessibility.test.d.ts +1 -0
- package/textarea/Textarea.accessibility.test.js +155 -0
- package/textarea/Textarea.js +60 -103
- package/textarea/{Textarea.stories.jsx → Textarea.stories.tsx} +58 -108
- package/textarea/Textarea.test.d.ts +1 -0
- package/textarea/Textarea.test.js +136 -209
- package/textarea/types.d.ts +5 -5
- package/toggle-group/ToggleGroup.accessibility.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.accessibility.test.js +107 -0
- package/toggle-group/ToggleGroup.js +25 -67
- package/toggle-group/ToggleGroup.stories.tsx +5 -5
- package/toggle-group/ToggleGroup.test.d.ts +1 -0
- package/toggle-group/ToggleGroup.test.js +49 -82
- package/toggle-group/types.d.ts +12 -12
- package/typography/Typography.accessibility.test.d.ts +1 -0
- package/typography/Typography.accessibility.test.js +339 -0
- package/typography/Typography.js +4 -13
- package/typography/Typography.stories.tsx +1 -3
- package/typography/types.d.ts +1 -1
- package/useTheme.d.ts +39 -141
- package/useTheme.js +1 -8
- package/useTranslatedLabels.js +1 -7
- package/utils/BaseTypography.d.ts +2 -2
- package/utils/BaseTypography.js +16 -30
- package/utils/FocusLock.js +26 -39
- package/wizard/Wizard.accessibility.test.d.ts +1 -0
- package/wizard/Wizard.accessibility.test.js +55 -0
- package/wizard/Wizard.js +27 -73
- package/wizard/Wizard.stories.tsx +20 -1
- package/wizard/Wizard.test.d.ts +1 -0
- package/wizard/Wizard.test.js +54 -81
- package/wizard/types.d.ts +8 -8
- package/common/OpenSans.css +0 -69
- 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/date-input/Icons.d.ts +0 -6
- package/date-input/Icons.js +0 -75
- package/paginator/Icons.d.ts +0 -5
- package/paginator/Icons.js +0 -54
- package/password-input/Icons.d.ts +0 -6
- package/password-input/Icons.js +0 -39
- 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/sidenav/Icons.d.ts +0 -7
- package/sidenav/Icons.js +0 -51
- package/text-input/Icons.d.ts +0 -8
- package/text-input/Icons.js +0 -60
- /package/{resultsetTable → action-icon}/types.js +0 -0
- /package/spinner/{Spinner.stories.jsx → Spinner.stories.tsx} +0 -0
|
@@ -1,19 +1,31 @@
|
|
|
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
|
-
import { userEvent, within } from "@storybook/
|
|
5
|
+
import { userEvent, within } from "@storybook/test";
|
|
7
6
|
import styled from "styled-components";
|
|
7
|
+
import { HalstackProvider } from "../HalstackContext";
|
|
8
|
+
import { disabledRules } from "../../test/accessibility/rules/specific/resultset-table/disabledRules";
|
|
9
|
+
import preview from "../../.storybook/preview";
|
|
8
10
|
|
|
9
11
|
export default {
|
|
10
12
|
title: "Resultset Table",
|
|
11
13
|
component: DxcResultsetTable,
|
|
14
|
+
parameters: {
|
|
15
|
+
a11y: {
|
|
16
|
+
config: {
|
|
17
|
+
rules: [
|
|
18
|
+
...disabledRules.map((ruleId) => ({ id: ruleId, reviewOnFail: true })),
|
|
19
|
+
...preview?.parameters?.a11y?.config?.rules,
|
|
20
|
+
],
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
},
|
|
12
24
|
};
|
|
13
25
|
|
|
14
26
|
const deleteIcon = (
|
|
15
27
|
<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" />
|
|
28
|
+
<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
29
|
<path d="M0 0h24v24H0z" fill="none" />
|
|
18
30
|
</svg>
|
|
19
31
|
);
|
|
@@ -29,17 +41,77 @@ const rows = [
|
|
|
29
41
|
[{ displayValue: "006" }, { displayValue: "Cris" }, { displayValue: "Paris" }],
|
|
30
42
|
];
|
|
31
43
|
|
|
44
|
+
const advancedTheme = {
|
|
45
|
+
table: {
|
|
46
|
+
actionIconColor: "#1B75BB",
|
|
47
|
+
hoverActionIconColor: "#1B75BB",
|
|
48
|
+
activeActionIconColor: "#1B75BB",
|
|
49
|
+
focusActionIconColor: "#1B75BB",
|
|
50
|
+
disabledActionIconColor: "#666666",
|
|
51
|
+
hoverButtonBackgroundColor: "#cccccc",
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
const actions = [
|
|
56
|
+
{
|
|
57
|
+
title: "icon",
|
|
58
|
+
onClick: (value?) => {
|
|
59
|
+
console.log(value);
|
|
60
|
+
},
|
|
61
|
+
options: [
|
|
62
|
+
{
|
|
63
|
+
value: "1",
|
|
64
|
+
label: "Amazon with a very long text",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
value: "2",
|
|
68
|
+
label: "Ebay",
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
value: "3",
|
|
72
|
+
label: "Apple",
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
icon: "filled_edit",
|
|
78
|
+
title: "icon",
|
|
79
|
+
onClick: () => {},
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
icon: deleteIcon,
|
|
83
|
+
title: "icon",
|
|
84
|
+
onClick: () => {},
|
|
85
|
+
disabled: true,
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
icon: deleteIcon,
|
|
89
|
+
title: "icon",
|
|
90
|
+
onClick: () => {},
|
|
91
|
+
},
|
|
92
|
+
];
|
|
93
|
+
|
|
32
94
|
const rowsIcon = [
|
|
33
95
|
[
|
|
34
96
|
{ displayValue: "001", sortValue: "001" },
|
|
35
97
|
{ displayValue: "Peter" },
|
|
36
|
-
{
|
|
98
|
+
{
|
|
99
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
[
|
|
103
|
+
{ displayValue: "002", sortValue: "002" },
|
|
104
|
+
{ displayValue: "Louis" },
|
|
105
|
+
{
|
|
106
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
107
|
+
},
|
|
37
108
|
],
|
|
38
|
-
[{ displayValue: "002", sortValue: "002" }, { displayValue: "Louis" }, { displayValue: "" }],
|
|
39
109
|
[
|
|
40
110
|
{ displayValue: "003", sortValue: "003" },
|
|
41
111
|
{ displayValue: "Mark" },
|
|
42
|
-
{
|
|
112
|
+
{
|
|
113
|
+
displayValue: <DxcResultsetTable.ActionsCell actions={actions} />,
|
|
114
|
+
},
|
|
43
115
|
],
|
|
44
116
|
];
|
|
45
117
|
|
|
@@ -200,12 +272,35 @@ export const Chromatic = () => (
|
|
|
200
272
|
<Title title="Scroll resultset table" theme="light" level={4} />
|
|
201
273
|
<DxcResultsetTable columns={longColumns} rows={longRows} />
|
|
202
274
|
</ExampleContainer>
|
|
275
|
+
<ExampleContainer>
|
|
276
|
+
<Title title="Without paginator" theme="light" level={4} />
|
|
277
|
+
<DxcResultsetTable columns={columns} rows={rows} hidePaginator />
|
|
278
|
+
</ExampleContainer>
|
|
203
279
|
<ExampleContainer>
|
|
204
280
|
<SmallContainer>
|
|
205
281
|
<Title title="Small container and text overflow" theme="light" level={4} />
|
|
206
282
|
<DxcResultsetTable columns={columnsSortable} rows={longValues} />
|
|
207
283
|
</SmallContainer>
|
|
208
284
|
</ExampleContainer>
|
|
285
|
+
<ExampleContainer>
|
|
286
|
+
<Title title="Reduced sortable table" theme="light" level={4} />
|
|
287
|
+
<DxcResultsetTable columns={columnsSortable} rows={rowsSortable} mode="reduced" />
|
|
288
|
+
</ExampleContainer>
|
|
289
|
+
{/* PENDING SMALL ICON VERSION */}
|
|
290
|
+
<ExampleContainer>
|
|
291
|
+
<Title title="Reduced with items per page option" theme="light" level={4} />
|
|
292
|
+
<DxcResultsetTable columns={columns} rows={rows} itemsPerPage={2} itemsPerPageOptions={[2, 3]} mode="reduced" />
|
|
293
|
+
</ExampleContainer>
|
|
294
|
+
<ExampleContainer>
|
|
295
|
+
<Title title="Reduced scroll resultset table" theme="light" level={4} />
|
|
296
|
+
<DxcResultsetTable columns={longColumns} rows={longRows} mode="reduced" />
|
|
297
|
+
</ExampleContainer>
|
|
298
|
+
<ExampleContainer>
|
|
299
|
+
<SmallContainer>
|
|
300
|
+
<Title title="Reduced small container and text overflow" theme="light" level={4} />
|
|
301
|
+
<DxcResultsetTable columns={columnsSortable} rows={longValues} mode="reduced" />
|
|
302
|
+
</SmallContainer>
|
|
303
|
+
</ExampleContainer>
|
|
209
304
|
<Title title="Margins" theme="light" level={2} />
|
|
210
305
|
<ExampleContainer>
|
|
211
306
|
<Title title="Xxsmall" theme="light" level={4} />
|
|
@@ -298,3 +393,21 @@ LastPage.play = async ({ canvasElement }) => {
|
|
|
298
393
|
const nextButton = canvas.getAllByRole("button")[3];
|
|
299
394
|
await userEvent.click(nextButton);
|
|
300
395
|
};
|
|
396
|
+
|
|
397
|
+
const ResultsetActionsCellDropdown = () => (
|
|
398
|
+
<ExampleContainer>
|
|
399
|
+
<Title title="Dropdown Action" theme="light" level={4} />
|
|
400
|
+
<DxcResultsetTable columns={columns} rows={rowsIcon} itemsPerPage={2} />
|
|
401
|
+
<Title title="Custom theme actions cell" theme="light" level={4} />
|
|
402
|
+
<HalstackProvider advancedTheme={advancedTheme}>
|
|
403
|
+
<DxcResultsetTable columns={columns} rows={rowsIcon} itemsPerPage={2} />
|
|
404
|
+
</HalstackProvider>
|
|
405
|
+
</ExampleContainer>
|
|
406
|
+
);
|
|
407
|
+
|
|
408
|
+
export const DropdownAction = ResultsetActionsCellDropdown.bind({});
|
|
409
|
+
DropdownAction.play = async ({ canvasElement }) => {
|
|
410
|
+
const canvas = within(canvasElement);
|
|
411
|
+
const dropdown = canvas.getAllByRole("button")[5];
|
|
412
|
+
await userEvent.click(dropdown);
|
|
413
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,19 +1,14 @@
|
|
|
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.tsx"));
|
|
16
|
-
|
|
11
|
+
var _ResultsetTable = _interopRequireDefault(require("./ResultsetTable"));
|
|
17
12
|
// Mocking DOMRect for Radix Primitive Popover
|
|
18
13
|
global.globalThis = global;
|
|
19
14
|
global.DOMRect = {
|
|
@@ -28,13 +23,11 @@ global.DOMRect = {
|
|
|
28
23
|
};
|
|
29
24
|
}
|
|
30
25
|
};
|
|
31
|
-
|
|
32
26
|
global.ResizeObserver = /*#__PURE__*/function () {
|
|
33
27
|
function ResizeObserver() {
|
|
34
28
|
(0, _classCallCheck2["default"])(this, ResizeObserver);
|
|
35
29
|
}
|
|
36
|
-
|
|
37
|
-
(0, _createClass2["default"])(ResizeObserver, [{
|
|
30
|
+
return (0, _createClass2["default"])(ResizeObserver, [{
|
|
38
31
|
key: "observe",
|
|
39
32
|
value: function observe() {}
|
|
40
33
|
}, {
|
|
@@ -44,9 +37,19 @@ global.ResizeObserver = /*#__PURE__*/function () {
|
|
|
44
37
|
key: "disconnect",
|
|
45
38
|
value: function disconnect() {}
|
|
46
39
|
}]);
|
|
47
|
-
return ResizeObserver;
|
|
48
40
|
}();
|
|
49
|
-
|
|
41
|
+
var icon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
42
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
43
|
+
height: "24px",
|
|
44
|
+
viewBox: "0 0 24 24",
|
|
45
|
+
width: "24px",
|
|
46
|
+
fill: "currentColor"
|
|
47
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
48
|
+
d: "M0 0h24v24H0V0zm0 0h24v24H0V0z",
|
|
49
|
+
fill: "none"
|
|
50
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
51
|
+
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"
|
|
52
|
+
}));
|
|
50
53
|
var columns = [{
|
|
51
54
|
displayValue: "Id",
|
|
52
55
|
isSortable: false
|
|
@@ -181,92 +184,88 @@ var rows2 = [[{
|
|
|
181
184
|
describe("Resultset table component tests", function () {
|
|
182
185
|
test("Resultset table rendered correctly", function () {
|
|
183
186
|
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
187
|
+
columns: columns,
|
|
188
|
+
rows: rows,
|
|
189
|
+
itemsPerPage: 3
|
|
190
|
+
})),
|
|
191
|
+
getByText = _render.getByText;
|
|
190
192
|
expect(getByText("Peter")).toBeTruthy();
|
|
191
193
|
});
|
|
192
194
|
test("Resultset table shows as many rows as itemsPerPage", function () {
|
|
193
195
|
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
196
|
+
columns: columns,
|
|
197
|
+
rows: rows,
|
|
198
|
+
itemsPerPage: 3
|
|
199
|
+
})),
|
|
200
|
+
getAllByRole = _render2.getAllByRole;
|
|
200
201
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
201
202
|
});
|
|
202
203
|
test("Resultset table shows rows on second page", function () {
|
|
203
204
|
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
205
|
+
columns: columns,
|
|
206
|
+
rows: rows,
|
|
207
|
+
itemsPerPage: 3
|
|
208
|
+
})),
|
|
209
|
+
getByText = _render3.getByText,
|
|
210
|
+
getAllByRole = _render3.getAllByRole;
|
|
211
211
|
expect(getByText("Peter")).toBeTruthy();
|
|
212
212
|
expect(getByText("Louis")).toBeTruthy();
|
|
213
213
|
expect(getByText("Lana")).toBeTruthy();
|
|
214
214
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
215
215
|
var nextButton = getAllByRole("button")[3];
|
|
216
|
-
|
|
217
216
|
_react2.fireEvent.click(nextButton);
|
|
218
|
-
|
|
219
|
-
expect(getByText("4 to 6 of 10")).toBeTruthy();
|
|
220
|
-
expect(getByText("Rick")).toBeTruthy();
|
|
221
|
-
expect(getByText("Mark")).toBeTruthy();
|
|
222
|
-
expect(getByText("Cris")).toBeTruthy();
|
|
223
|
-
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
224
|
-
});
|
|
225
|
-
test("Resultset table goToPage works as expected", function () {
|
|
226
|
-
window.HTMLElement.prototype.scrollIntoView = function () {};
|
|
227
|
-
|
|
228
|
-
window.HTMLElement.prototype.scrollTo = function () {};
|
|
229
|
-
|
|
230
|
-
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
231
|
-
columns: columns,
|
|
232
|
-
showGoToPage: true,
|
|
233
|
-
rows: rows,
|
|
234
|
-
itemsPerPage: 3
|
|
235
|
-
})),
|
|
236
|
-
getByText = _render4.getByText,
|
|
237
|
-
getAllByRole = _render4.getAllByRole;
|
|
238
|
-
|
|
239
|
-
expect(getByText("Peter")).toBeTruthy();
|
|
240
|
-
expect(getByText("Louis")).toBeTruthy();
|
|
241
|
-
expect(getByText("Lana")).toBeTruthy();
|
|
242
|
-
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
243
|
-
var goToPageSelect = getAllByRole("button")[3];
|
|
244
|
-
|
|
245
|
-
_userEvent["default"].click(goToPageSelect);
|
|
246
|
-
|
|
247
|
-
var goToPageOption = getByText("2");
|
|
248
|
-
|
|
249
|
-
_userEvent["default"].click(goToPageOption);
|
|
250
|
-
|
|
251
217
|
expect(getByText("4 to 6 of 10")).toBeTruthy();
|
|
252
218
|
expect(getByText("Rick")).toBeTruthy();
|
|
253
219
|
expect(getByText("Mark")).toBeTruthy();
|
|
254
220
|
expect(getByText("Cris")).toBeTruthy();
|
|
255
221
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
256
222
|
});
|
|
223
|
+
test("Resultset table goToPage works as expected", /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
224
|
+
var _render4, getByText, getAllByRole, goToPageSelect, goToPageOption;
|
|
225
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
226
|
+
while (1) switch (_context.prev = _context.next) {
|
|
227
|
+
case 0:
|
|
228
|
+
window.HTMLElement.prototype.scrollIntoView = function () {};
|
|
229
|
+
window.HTMLElement.prototype.scrollTo = function () {};
|
|
230
|
+
_render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
231
|
+
columns: columns,
|
|
232
|
+
showGoToPage: true,
|
|
233
|
+
rows: rows,
|
|
234
|
+
itemsPerPage: 3
|
|
235
|
+
})), getByText = _render4.getByText, getAllByRole = _render4.getAllByRole;
|
|
236
|
+
expect(getByText("Peter")).toBeTruthy();
|
|
237
|
+
expect(getByText("Louis")).toBeTruthy();
|
|
238
|
+
expect(getByText("Lana")).toBeTruthy();
|
|
239
|
+
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
240
|
+
goToPageSelect = getAllByRole("button")[3];
|
|
241
|
+
_context.next = 10;
|
|
242
|
+
return _userEvent["default"].click(goToPageSelect);
|
|
243
|
+
case 10:
|
|
244
|
+
goToPageOption = getByText("2");
|
|
245
|
+
_context.next = 13;
|
|
246
|
+
return _userEvent["default"].click(goToPageOption);
|
|
247
|
+
case 13:
|
|
248
|
+
expect(getByText("4 to 6 of 10")).toBeTruthy();
|
|
249
|
+
expect(getByText("Rick")).toBeTruthy();
|
|
250
|
+
expect(getByText("Mark")).toBeTruthy();
|
|
251
|
+
expect(getByText("Cris")).toBeTruthy();
|
|
252
|
+
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
253
|
+
case 18:
|
|
254
|
+
case "end":
|
|
255
|
+
return _context.stop();
|
|
256
|
+
}
|
|
257
|
+
}, _callee);
|
|
258
|
+
})));
|
|
257
259
|
test("Resultset table going to the last page shows only one row", function () {
|
|
258
260
|
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
261
|
+
columns: columns,
|
|
262
|
+
rows: rows,
|
|
263
|
+
itemsPerPage: 3
|
|
264
|
+
})),
|
|
265
|
+
getByText = _render5.getByText,
|
|
266
|
+
getAllByRole = _render5.getAllByRole;
|
|
266
267
|
var lastButton = getAllByRole("button")[4];
|
|
267
|
-
|
|
268
268
|
_react2.fireEvent.click(lastButton);
|
|
269
|
-
|
|
270
269
|
expect(getByText("10 to 10 of 10")).toBeTruthy();
|
|
271
270
|
expect(getAllByRole("row")).toHaveLength(2);
|
|
272
271
|
expect(getByText("Cosmin")).toBeTruthy();
|
|
@@ -278,26 +277,21 @@ describe("Resultset table component tests", function () {
|
|
|
278
277
|
itemsPerPage: 3
|
|
279
278
|
}));
|
|
280
279
|
expect(component.queryByText("Peter")).toBeTruthy();
|
|
281
|
-
|
|
282
280
|
_react2.fireEvent.click(component.queryByText("Name"));
|
|
283
|
-
|
|
284
281
|
expect(component.queryByText("Tina")).not.toBeTruthy();
|
|
285
282
|
expect(component.queryByText("Cosmin")).toBeTruthy();
|
|
286
|
-
|
|
287
283
|
_react2.fireEvent.click(component.queryByText("Name"));
|
|
288
|
-
|
|
289
284
|
expect(component.queryByText("Tina")).toBeTruthy();
|
|
290
285
|
expect(component.queryByText("Cosmin")).not.toBeTruthy();
|
|
291
286
|
});
|
|
292
287
|
test("Resultset table change rows should go to first page", function () {
|
|
293
288
|
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
289
|
+
columns: columns,
|
|
290
|
+
rows: rows,
|
|
291
|
+
itemsPerPage: 3
|
|
292
|
+
})),
|
|
293
|
+
queryByText = _render6.queryByText,
|
|
294
|
+
rerender = _render6.rerender;
|
|
301
295
|
expect(queryByText("Peter")).toBeTruthy();
|
|
302
296
|
rerender( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
303
297
|
columns: columns,
|
|
@@ -308,18 +302,78 @@ describe("Resultset table component tests", function () {
|
|
|
308
302
|
});
|
|
309
303
|
test("Resultset table change itemsPerPage should go to first page", function () {
|
|
310
304
|
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
305
|
+
columns: columns,
|
|
306
|
+
rows: rows,
|
|
307
|
+
itemsPerPage: 3,
|
|
308
|
+
itemsPerPageOptions: [2, 3]
|
|
309
|
+
})),
|
|
310
|
+
getAllByRole = _render7.getAllByRole;
|
|
318
311
|
var lastButton = getAllByRole("button")[4];
|
|
319
312
|
expect(getAllByRole("row").length - 1).toEqual(3);
|
|
320
|
-
|
|
321
313
|
_react2.fireEvent.click(lastButton);
|
|
322
|
-
|
|
323
314
|
expect(getAllByRole("row").length - 1).toEqual(1);
|
|
324
315
|
});
|
|
316
|
+
test("Resultset table may not use the paginator", function () {
|
|
317
|
+
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
318
|
+
columns: columns,
|
|
319
|
+
rows: rows,
|
|
320
|
+
hidePaginator: true
|
|
321
|
+
})),
|
|
322
|
+
getAllByRole = _render8.getAllByRole;
|
|
323
|
+
var nextButton = getAllByRole("button")[3];
|
|
324
|
+
expect(nextButton).not.toBeTruthy();
|
|
325
|
+
});
|
|
326
|
+
test("Resultset table with ActionsCell", function () {
|
|
327
|
+
var onSelectOption = jest.fn();
|
|
328
|
+
var onClick = jest.fn();
|
|
329
|
+
var actions = [{
|
|
330
|
+
title: "icon1",
|
|
331
|
+
onClick: onSelectOption,
|
|
332
|
+
options: [{
|
|
333
|
+
value: "1",
|
|
334
|
+
label: "Amazon"
|
|
335
|
+
}, {
|
|
336
|
+
value: "2",
|
|
337
|
+
label: "Ebay"
|
|
338
|
+
}, {
|
|
339
|
+
value: "3",
|
|
340
|
+
label: "Aliexpress"
|
|
341
|
+
}]
|
|
342
|
+
}, {
|
|
343
|
+
icon: icon,
|
|
344
|
+
title: "icon2",
|
|
345
|
+
onClick: onClick
|
|
346
|
+
}];
|
|
347
|
+
var actionRows = [[{
|
|
348
|
+
displayValue: "001",
|
|
349
|
+
sortValue: "001"
|
|
350
|
+
}, {
|
|
351
|
+
displayValue: "Peter",
|
|
352
|
+
sortValue: "Peter"
|
|
353
|
+
}, {
|
|
354
|
+
displayValue: /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"].ActionsCell, {
|
|
355
|
+
actions: actions
|
|
356
|
+
}),
|
|
357
|
+
sortValue: "Actions"
|
|
358
|
+
}]];
|
|
359
|
+
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_ResultsetTable["default"], {
|
|
360
|
+
columns: columns,
|
|
361
|
+
rows: actionRows,
|
|
362
|
+
itemsPerPage: 3
|
|
363
|
+
})),
|
|
364
|
+
getAllByRole = _render9.getAllByRole,
|
|
365
|
+
getByRole = _render9.getByRole,
|
|
366
|
+
getByText = _render9.getByText;
|
|
367
|
+
var dropdown = getAllByRole("button")[2];
|
|
368
|
+
(0, _react2.act)(function () {
|
|
369
|
+
_userEvent["default"].click(dropdown);
|
|
370
|
+
});
|
|
371
|
+
expect(getByRole("menu")).toBeTruthy();
|
|
372
|
+
var option = getByText("Aliexpress");
|
|
373
|
+
_userEvent["default"].click(option);
|
|
374
|
+
expect(onSelectOption).toHaveBeenCalledWith("3");
|
|
375
|
+
var action = getAllByRole("button")[1];
|
|
376
|
+
_userEvent["default"].click(action);
|
|
377
|
+
expect(onClick).toHaveBeenCalled();
|
|
378
|
+
});
|
|
325
379
|
});
|
|
@@ -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
|
-
export
|
|
9
|
+
export type Column = {
|
|
10
10
|
/**
|
|
11
11
|
* Column display value.
|
|
12
12
|
*/
|
|
@@ -16,7 +16,7 @@ export 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;
|