@equinor/eds-core-react 0.15.0 → 0.17.0-dev.20220209
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/README.md +1 -1
- package/dist/eds-core-react.cjs.js +9617 -0
- package/dist/esm/components/Accordion/Accordion.js +41 -0
- package/dist/esm/components/Accordion/Accordion.tokens.js +115 -0
- package/dist/esm/components/Accordion/AccordionHeader.js +151 -0
- package/dist/esm/components/Accordion/AccordionHeaderTitle.js +32 -0
- package/dist/esm/components/Accordion/AccordionItem.js +48 -0
- package/dist/esm/components/Accordion/AccordionPanel.js +48 -0
- package/dist/esm/components/Accordion/index.js +17 -0
- package/dist/esm/components/Avatar/Avatar.js +47 -0
- package/dist/esm/components/Avatar/Avatar.tokens.js +13 -0
- package/dist/esm/components/Banner/Banner.js +63 -0
- package/dist/esm/components/Banner/Banner.tokens.js +95 -0
- package/dist/esm/components/Banner/BannerActions.js +35 -0
- package/dist/esm/components/Banner/BannerIcon.js +45 -0
- package/dist/esm/components/Banner/BannerMessage.js +26 -0
- package/dist/esm/components/Banner/index.js +14 -0
- package/dist/esm/components/Breadcrumbs/Breadcrumb.js +53 -0
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +99 -0
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.tokens.js +39 -0
- package/dist/esm/components/Breadcrumbs/index.js +8 -0
- package/dist/esm/components/Button/Button.js +105 -0
- package/dist/esm/components/Button/InnerFullWidth.js +27 -0
- package/dist/esm/components/Button/tokens/button.js +134 -0
- package/dist/esm/components/Button/tokens/contained.js +86 -0
- package/dist/esm/components/Button/tokens/ghost.js +84 -0
- package/dist/esm/components/Button/tokens/icon.js +123 -0
- package/dist/esm/components/Button/tokens/index.js +27 -0
- package/dist/esm/components/Button/tokens/outlined.js +111 -0
- package/dist/esm/components/Card/Card.js +46 -0
- package/dist/esm/components/Card/Card.tokens.js +54 -0
- package/dist/esm/components/Card/CardActions.js +40 -0
- package/dist/esm/components/Card/CardContent.js +25 -0
- package/dist/esm/components/Card/CardHeader.js +26 -0
- package/dist/esm/components/Card/CardHeaderTitle.js +22 -0
- package/dist/esm/components/Card/CardMedia.js +34 -0
- package/dist/esm/components/Card/index.js +20 -0
- package/dist/esm/components/Checkbox/Checkbox.js +48 -0
- package/dist/esm/components/Checkbox/Checkbox.tokens.js +91 -0
- package/dist/esm/components/Checkbox/Input.js +143 -0
- package/dist/esm/components/Chip/Chip.js +142 -0
- package/dist/esm/components/Chip/Chip.tokens.js +148 -0
- package/dist/esm/components/Chip/Icon.js +36 -0
- package/dist/esm/components/Dialog/Dialog.js +70 -0
- package/dist/esm/components/Dialog/Dialog.tokens.js +68 -0
- package/dist/esm/components/Dialog/DialogActions.js +27 -0
- package/dist/esm/components/Dialog/DialogContent.js +44 -0
- package/dist/esm/components/Dialog/DialogHeader.js +37 -0
- package/dist/esm/components/Dialog/DialogTitle.js +31 -0
- package/dist/esm/components/Dialog/index.js +18 -0
- package/dist/esm/components/Divider/Divider.js +33 -0
- package/dist/esm/components/Divider/Divider.tokens.js +59 -0
- package/dist/esm/components/EdsProvider/eds.context.js +36 -0
- package/dist/esm/components/Icon/Icon.js +133 -0
- package/dist/esm/components/Icon/index.js +7 -0
- package/dist/esm/components/Icon/library.js +19 -0
- package/dist/esm/components/Input/Input.js +58 -0
- package/dist/esm/components/Input/Input.tokens.js +172 -0
- package/dist/esm/components/Label/Label.js +44 -0
- package/dist/esm/components/Label/Label.tokens.js +30 -0
- package/dist/esm/components/List/List.js +34 -0
- package/dist/esm/components/List/List.tokens.js +12 -0
- package/dist/esm/components/List/ListItem.js +15 -0
- package/dist/esm/components/List/index.js +8 -0
- package/dist/esm/components/Menu/Menu.context.js +49 -0
- package/dist/esm/components/Menu/Menu.js +125 -0
- package/dist/esm/components/Menu/Menu.tokens.js +132 -0
- package/dist/esm/components/Menu/MenuItem.js +103 -0
- package/dist/esm/components/Menu/MenuList.js +97 -0
- package/dist/esm/components/Menu/MenuSection.js +36 -0
- package/dist/esm/components/Menu/index.js +11 -0
- package/dist/esm/components/Pagination/Pagination.js +158 -0
- package/dist/esm/components/Pagination/Pagination.tokens.js +40 -0
- package/dist/esm/components/Pagination/PaginationItem.js +31 -0
- package/dist/esm/components/Pagination/paginationControl.js +46 -0
- package/dist/esm/components/Paper/Paper.js +28 -0
- package/dist/esm/components/Paper/Paper.tokens.js +19 -0
- package/dist/esm/components/Popover/Popover.js +115 -0
- package/dist/esm/components/Popover/Popover.tokens.js +66 -0
- package/dist/esm/components/Popover/PopoverActions.js +28 -0
- package/dist/esm/components/Popover/PopoverContent.js +27 -0
- package/dist/esm/components/Popover/PopoverHeader.js +36 -0
- package/dist/esm/components/Popover/PopoverTitle.js +27 -0
- package/dist/esm/components/Popover/index.js +17 -0
- package/dist/esm/components/Progress/Circular/CircularProgress.js +98 -0
- package/dist/esm/components/Progress/Circular/CircularProgress.tokens.js +42 -0
- package/dist/esm/components/Progress/Dots/DotProgress.js +59 -0
- package/dist/esm/components/Progress/Dots/DotProgress.tokens.js +30 -0
- package/dist/esm/components/Progress/Linear/LinearProgress.js +51 -0
- package/dist/esm/components/Progress/Linear/LinearProgress.tokens.js +24 -0
- package/dist/esm/components/Progress/Star/StarProgress.js +66 -0
- package/dist/esm/components/Progress/Star/StarProgress.tokens.js +16 -0
- package/dist/esm/components/Progress/index.js +17 -0
- package/dist/esm/components/Radio/Radio.js +162 -0
- package/dist/esm/components/Radio/Radio.tokens.js +91 -0
- package/dist/esm/components/Scrim/Scrim.js +67 -0
- package/dist/esm/components/Scrim/Scrim.tokens.js +18 -0
- package/dist/esm/components/Search/Search.js +205 -0
- package/dist/esm/components/Search/Search.tokens.js +107 -0
- package/dist/esm/components/Select/MultiSelect/MultiSelect.js +213 -0
- package/dist/esm/components/Select/NativeSelect/NativeSelect.js +68 -0
- package/dist/esm/components/Select/NativeSelect/NativeSelect.tokens.js +66 -0
- package/dist/esm/components/Select/Select.tokens.js +101 -0
- package/dist/esm/components/Select/SingleSelect/SingleSelect.js +151 -0
- package/dist/esm/components/Select/commonStyles.js +55 -0
- package/dist/esm/components/SideSheet/SideSheet.js +63 -0
- package/dist/esm/components/SideSheet/SideSheet.tokens.js +45 -0
- package/dist/esm/components/Slider/MinMax.js +27 -0
- package/dist/esm/components/Slider/Output.js +36 -0
- package/dist/esm/components/Slider/Slider.js +271 -0
- package/dist/esm/components/Slider/Slider.tokens.js +136 -0
- package/dist/esm/components/Slider/SliderInput.js +60 -0
- package/dist/esm/components/Snackbar/Snackbar.js +74 -0
- package/dist/esm/components/Snackbar/Snackbar.tokens.js +77 -0
- package/dist/esm/components/Snackbar/SnackbarAction.js +27 -0
- package/dist/esm/components/Snackbar/index.js +7 -0
- package/dist/esm/components/Switch/Switch.js +73 -0
- package/dist/esm/components/Switch/Switch.styles.js +41 -0
- package/dist/esm/components/Switch/Switch.tokens.js +168 -0
- package/dist/esm/components/Switch/SwitchDefault.js +71 -0
- package/dist/esm/components/Switch/SwitchSmall.js +69 -0
- package/dist/esm/components/Table/Body.js +26 -0
- package/dist/esm/components/Table/Caption.js +22 -0
- package/dist/esm/components/Table/Cell.js +36 -0
- package/dist/esm/components/Table/DataCell/DataCell.js +50 -0
- package/dist/esm/components/Table/DataCell/DataCell.tokens.js +161 -0
- package/dist/esm/components/Table/Head/Head.js +30 -0
- package/dist/esm/components/Table/Head/Head.tokens.js +30 -0
- package/dist/esm/components/Table/HeaderCell/HeaderCell.js +66 -0
- package/dist/esm/components/Table/HeaderCell/HeaderCell.tokens.js +128 -0
- package/dist/esm/components/Table/Inner.context.js +8 -0
- package/dist/esm/components/Table/Row/Row.js +36 -0
- package/dist/esm/components/Table/Row/Row.tokens.js +26 -0
- package/dist/esm/components/Table/Table.js +21 -0
- package/dist/esm/components/Table/index.js +20 -0
- package/dist/esm/components/TableOfContents/LinkItem.js +26 -0
- package/dist/esm/components/TableOfContents/TableOfContents.js +63 -0
- package/dist/esm/components/TableOfContents/TableOfContents.tokens.js +106 -0
- package/dist/esm/components/TableOfContents/index.js +8 -0
- package/dist/esm/components/Tabs/Tab.js +41 -0
- package/dist/esm/components/Tabs/TabList.js +94 -0
- package/dist/esm/components/Tabs/TabPanel.js +33 -0
- package/dist/esm/components/Tabs/TabPanels.js +26 -0
- package/dist/esm/components/Tabs/Tabs.context.js +13 -0
- package/dist/esm/components/Tabs/Tabs.js +72 -0
- package/dist/esm/components/Tabs/Tabs.tokens.js +130 -0
- package/dist/esm/components/Tabs/index.js +17 -0
- package/dist/esm/components/TextField/Field.js +158 -0
- package/dist/esm/components/TextField/HelperText/HelperText.js +92 -0
- package/dist/esm/components/TextField/HelperText/HelperText.token.js +49 -0
- package/dist/esm/components/TextField/Icon/Icon.js +64 -0
- package/dist/esm/components/TextField/Icon/Icon.tokens.js +46 -0
- package/dist/esm/components/TextField/TextField.context.js +38 -0
- package/dist/esm/components/TextField/TextField.js +87 -0
- package/dist/esm/components/TextField/TextField.tokens.js +124 -0
- package/dist/esm/components/Textarea/Textarea.js +92 -0
- package/dist/esm/components/Tooltip/Tooltip.js +113 -0
- package/dist/esm/components/Tooltip/Tooltip.tokens.js +63 -0
- package/dist/esm/components/TopBar/Actions.js +21 -0
- package/dist/esm/components/TopBar/CustomContent.js +21 -0
- package/dist/esm/components/TopBar/Header.js +21 -0
- package/dist/esm/components/TopBar/TopBar.js +37 -0
- package/dist/esm/components/TopBar/TopBar.tokens.js +35 -0
- package/dist/esm/components/TopBar/index.js +14 -0
- package/dist/esm/components/Typography/Typography.js +114 -0
- package/dist/esm/components/Typography/Typography.tokens.js +61 -0
- package/dist/esm/index.js +41 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/internal/_curry1.js +25 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/internal/_curry2.js +38 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/internal/_curry3.js +57 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/internal/_has.js +7 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/internal/_isObject.js +7 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/internal/_isPlaceholder.js +7 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/mergeDeepRight.js +37 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/mergeDeepWithKey.js +49 -0
- package/dist/esm/node_modules/.pnpm/ramda@0.27.2/node_modules/ramda/src/mergeWithKey.js +53 -0
- package/dist/types/components/Accordion/Accordion.d.ts +4 -4
- package/dist/types/components/Accordion/Accordion.tokens.d.ts +10 -10
- package/dist/types/components/Accordion/Accordion.types.d.ts +6 -6
- package/dist/types/components/Accordion/AccordionHeader.d.ts +35 -35
- package/dist/types/components/Accordion/AccordionHeaderTitle.d.ts +14 -14
- package/dist/types/components/Accordion/AccordionItem.d.ts +19 -19
- package/dist/types/components/Accordion/AccordionPanel.d.ts +18 -18
- package/dist/types/components/Accordion/index.d.ts +15 -15
- package/dist/types/components/Avatar/Avatar.d.ts +23 -23
- package/dist/types/components/Avatar/Avatar.tokens.d.ts +10 -10
- package/dist/types/components/Avatar/index.d.ts +1 -1
- package/dist/types/components/Banner/Banner.d.ts +7 -7
- package/dist/types/components/Banner/Banner.tokens.d.ts +9 -9
- package/dist/types/components/Banner/BannerActions.d.ts +11 -11
- package/dist/types/components/Banner/BannerIcon.d.ts +15 -15
- package/dist/types/components/Banner/BannerMessage.d.ts +10 -10
- package/dist/types/components/Banner/index.d.ts +12 -12
- package/dist/types/components/Breadcrumbs/Breadcrumb.d.ts +11 -11
- package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts +11 -11
- package/dist/types/components/Breadcrumbs/Breadcrumbs.tokens.d.ts +2 -2
- package/dist/types/components/Breadcrumbs/index.d.ts +8 -8
- package/dist/types/components/Button/Button.d.ts +43 -43
- package/dist/types/components/Button/Button.types.d.ts +12 -12
- package/dist/types/components/Button/InnerFullWidth.d.ts +2 -2
- package/dist/types/components/Button/index.d.ts +1 -1
- package/dist/types/components/Button/tokens/button.d.ts +2 -2
- package/dist/types/components/Button/tokens/contained.d.ts +4 -4
- package/dist/types/components/Button/tokens/ghost.d.ts +4 -4
- package/dist/types/components/Button/tokens/icon.d.ts +4 -4
- package/dist/types/components/Button/tokens/index.d.ts +8 -8
- package/dist/types/components/Button/tokens/outlined.d.ts +4 -4
- package/dist/types/components/Card/Card.d.ts +9 -9
- package/dist/types/components/Card/Card.tokens.d.ts +6 -6
- package/dist/types/components/Card/CardActions.d.ts +13 -13
- package/dist/types/components/Card/CardContent.d.ts +3 -3
- package/dist/types/components/Card/CardHeader.d.ts +3 -3
- package/dist/types/components/Card/CardHeaderTitle.d.ts +3 -3
- package/dist/types/components/Card/CardMedia.d.ts +9 -9
- package/dist/types/components/Card/index.d.ts +16 -16
- package/dist/types/components/Checkbox/Checkbox.d.ts +15 -15
- package/dist/types/components/Checkbox/Checkbox.tokens.d.ts +4 -4
- package/dist/types/components/Checkbox/Input.d.ts +12 -12
- package/dist/types/components/Checkbox/index.d.ts +1 -1
- package/dist/types/components/Chip/Chip.d.ts +17 -17
- package/dist/types/components/Chip/Chip.tokens.d.ts +8 -8
- package/dist/types/components/Chip/Icon.d.ts +6 -6
- package/dist/types/components/Chip/index.d.ts +1 -1
- package/dist/types/components/Dialog/Dialog.d.ts +19 -3
- package/dist/types/components/Dialog/Dialog.tokens.d.ts +4 -4
- package/dist/types/components/Dialog/DialogActions.d.ts +3 -0
- package/dist/types/components/Dialog/{CustomContent.d.ts → DialogContent.d.ts} +9 -9
- package/dist/types/components/Dialog/DialogHeader.d.ts +3 -0
- package/dist/types/components/Dialog/DialogTitle.d.ts +3 -0
- package/dist/types/components/Dialog/index.d.ts +15 -12
- package/dist/types/components/Divider/Divider.d.ts +17 -17
- package/dist/types/components/Divider/Divider.tokens.d.ts +12 -12
- package/dist/types/components/Divider/index.d.ts +1 -1
- package/dist/types/components/EdsProvider/eds.context.d.ts +15 -15
- package/dist/types/components/EdsProvider/index.d.ts +1 -1
- package/dist/types/components/Group/Group.d.ts +3 -0
- package/dist/types/components/Group/Group.tokens.d.ts +4 -0
- package/dist/types/components/Group/index.d.ts +1 -0
- package/dist/types/components/Icon/Icon.d.ts +20 -20
- package/dist/types/components/Icon/Icon.types.d.ts +11 -11
- package/dist/types/components/Icon/index.d.ts +5 -5
- package/dist/types/components/Icon/library.d.ts +8 -8
- package/dist/types/components/Input/Input.d.ts +26 -26
- package/dist/types/components/Input/Input.tokens.d.ts +12 -12
- package/dist/types/components/Input/index.d.ts +1 -1
- package/dist/types/components/Label/Label.d.ts +11 -11
- package/dist/types/components/Label/Label.tokens.d.ts +4 -4
- package/dist/types/components/Label/index.d.ts +1 -1
- package/dist/types/components/List/List.d.ts +14 -14
- package/dist/types/components/List/List.tokens.d.ts +4 -4
- package/dist/types/components/List/ListItem.d.ts +4 -4
- package/dist/types/components/List/index.d.ts +8 -8
- package/dist/types/components/Menu/Menu.context.d.ts +15 -15
- package/dist/types/components/Menu/Menu.d.ts +27 -27
- package/dist/types/components/Menu/Menu.tokens.d.ts +4 -4
- package/dist/types/components/Menu/Menu.types.d.ts +1 -1
- package/dist/types/components/Menu/MenuItem.d.ts +21 -21
- package/dist/types/components/Menu/MenuList.d.ts +8 -8
- package/dist/types/components/Menu/MenuSection.d.ts +10 -11
- package/dist/types/components/Menu/index.d.ts +10 -10
- package/dist/types/components/Pagination/Pagination.d.ts +25 -25
- package/dist/types/components/Pagination/Pagination.tokens.d.ts +2 -2
- package/dist/types/components/Pagination/PaginationItem.d.ts +8 -8
- package/dist/types/components/Pagination/index.d.ts +1 -1
- package/dist/types/components/Pagination/paginationControl.d.ts +1 -1
- package/dist/types/components/Paper/Paper.d.ts +8 -8
- package/dist/types/components/Paper/Paper.tokens.d.ts +12 -12
- package/dist/types/components/Paper/index.d.ts +1 -1
- package/dist/types/components/Popover/Popover.d.ts +22 -22
- package/dist/types/components/Popover/Popover.tokens.d.ts +4 -4
- package/dist/types/components/Popover/PopoverActions.d.ts +3 -0
- package/dist/types/components/Popover/PopoverContent.d.ts +3 -3
- package/dist/types/components/Popover/PopoverHeader.d.ts +3 -0
- package/dist/types/components/Popover/PopoverTitle.d.ts +3 -3
- package/dist/types/components/Popover/index.d.ts +14 -10
- package/dist/types/components/Progress/Circular/CircularProgress.d.ts +16 -16
- package/dist/types/components/Progress/Circular/CircularProgress.tokens.d.ts +8 -8
- package/dist/types/components/Progress/Dots/DotProgress.d.ts +11 -11
- package/dist/types/components/Progress/Dots/DotProgress.tokens.d.ts +5 -5
- package/dist/types/components/Progress/Linear/LinearProgress.d.ts +18 -18
- package/dist/types/components/Progress/Linear/LinearProgress.tokens.d.ts +7 -7
- package/dist/types/components/Progress/Star/StarProgress.d.ts +14 -14
- package/dist/types/components/Progress/Star/StarProgress.tokens.d.ts +2 -2
- package/dist/types/components/Progress/index.d.ts +15 -15
- package/dist/types/components/Radio/Radio.d.ts +10 -10
- package/dist/types/components/Radio/Radio.tokens.d.ts +4 -4
- package/dist/types/components/Radio/index.d.ts +1 -1
- package/dist/types/components/Scrim/Scrim.d.ts +19 -15
- package/dist/types/components/Scrim/Scrim.tokens.d.ts +2 -2
- package/dist/types/components/Scrim/index.d.ts +1 -1
- package/dist/types/components/Search/Search.d.ts +3 -3
- package/dist/types/components/Search/Search.tokens.d.ts +4 -4
- package/dist/types/components/Search/index.d.ts +1 -1
- package/dist/types/components/Select/MultiSelect/MultiSelect.d.ts +48 -48
- package/dist/types/components/Select/MultiSelect/index.d.ts +1 -1
- package/dist/types/components/Select/NativeSelect/NativeSelect.d.ts +29 -29
- package/dist/types/components/Select/NativeSelect/NativeSelect.tokens.d.ts +4 -4
- package/dist/types/components/Select/NativeSelect/index.d.ts +1 -1
- package/dist/types/components/Select/Select.tokens.d.ts +3 -3
- package/dist/types/components/Select/SingleSelect/SingleSelect.d.ts +48 -48
- package/dist/types/components/Select/SingleSelect/index.d.ts +1 -1
- package/dist/types/components/Select/commonStyles.d.ts +32 -32
- package/dist/types/components/Select/index.d.ts +3 -3
- package/dist/types/components/SideSheet/SideSheet.d.ts +21 -21
- package/dist/types/components/SideSheet/SideSheet.tokens.d.ts +10 -10
- package/dist/types/components/SideSheet/index.d.ts +1 -1
- package/dist/types/components/Slider/MinMax.d.ts +5 -5
- package/dist/types/components/Slider/Output.d.ts +9 -9
- package/dist/types/components/Slider/Slider.d.ts +49 -49
- package/dist/types/components/Slider/Slider.tokens.d.ts +4 -4
- package/dist/types/components/Slider/SliderInput.d.ts +21 -21
- package/dist/types/components/Slider/index.d.ts +1 -1
- package/dist/types/components/Snackbar/Snackbar.d.ts +21 -21
- package/dist/types/components/Snackbar/Snackbar.tokens.d.ts +4 -4
- package/dist/types/components/Snackbar/SnackbarAction.d.ts +5 -5
- package/dist/types/components/Snackbar/index.d.ts +8 -8
- package/dist/types/components/Switch/Switch.d.ts +12 -12
- package/dist/types/components/Switch/Switch.styles.d.ts +6 -5
- package/dist/types/components/Switch/Switch.tokens.d.ts +3 -3
- package/dist/types/components/Switch/SwitchDefault.d.ts +6 -6
- package/dist/types/components/Switch/SwitchSmall.d.ts +6 -6
- package/dist/types/components/Switch/index.d.ts +1 -1
- package/dist/types/components/Table/Body.d.ts +3 -3
- package/dist/types/components/Table/Caption.d.ts +4 -4
- package/dist/types/components/Table/Cell.d.ts +11 -11
- package/dist/types/components/Table/DataCell/DataCell.d.ts +8 -8
- package/dist/types/components/Table/DataCell/DataCell.tokens.d.ts +15 -15
- package/dist/types/components/Table/DataCell/index.d.ts +1 -1
- package/dist/types/components/Table/Head/Head.d.ts +9 -9
- package/dist/types/components/Table/Head/Head.tokens.d.ts +2 -2
- package/dist/types/components/Table/Head/index.d.ts +1 -1
- package/dist/types/components/Table/HeaderCell/HeaderCell.d.ts +5 -5
- package/dist/types/components/Table/HeaderCell/HeaderCell.tokens.d.ts +3 -3
- package/dist/types/components/Table/HeaderCell/index.d.ts +1 -1
- package/dist/types/components/Table/Inner.context.d.ts +7 -7
- package/dist/types/components/Table/Row/Row.d.ts +9 -9
- package/dist/types/components/Table/Row/Row.tokens.d.ts +2 -2
- package/dist/types/components/Table/Row/index.d.ts +1 -1
- package/dist/types/components/Table/Table.d.ts +3 -3
- package/dist/types/components/Table/Table.types.d.ts +2 -2
- package/dist/types/components/Table/index.d.ts +16 -16
- package/dist/types/components/TableOfContents/LinkItem.d.ts +3 -3
- package/dist/types/components/TableOfContents/TableOfContents.d.ts +14 -14
- package/dist/types/components/TableOfContents/TableOfContents.tokens.d.ts +4 -4
- package/dist/types/components/TableOfContents/index.d.ts +8 -8
- package/dist/types/components/Tabs/Tab.d.ts +13 -13
- package/dist/types/components/Tabs/TabList.d.ts +11 -11
- package/dist/types/components/Tabs/TabPanel.d.ts +10 -10
- package/dist/types/components/Tabs/TabPanels.d.ts +4 -4
- package/dist/types/components/Tabs/Tabs.context.d.ts +13 -13
- package/dist/types/components/Tabs/Tabs.d.ts +19 -19
- package/dist/types/components/Tabs/Tabs.tokens.d.ts +2 -2
- package/dist/types/components/Tabs/Tabs.types.d.ts +1 -1
- package/dist/types/components/Tabs/index.d.ts +14 -14
- package/dist/types/components/TextField/Field.d.ts +34 -34
- package/dist/types/components/TextField/HelperText/HelperText.d.ts +14 -14
- package/dist/types/components/TextField/HelperText/HelperText.token.d.ts +15 -15
- package/dist/types/components/TextField/HelperText/index.d.ts +1 -1
- package/dist/types/components/TextField/Icon/Icon.d.ts +13 -13
- package/dist/types/components/TextField/Icon/Icon.tokens.d.ts +14 -14
- package/dist/types/components/TextField/Icon/index.d.ts +1 -1
- package/dist/types/components/TextField/TextField.context.d.ts +17 -17
- package/dist/types/components/TextField/TextField.d.ts +37 -37
- package/dist/types/components/TextField/TextField.tokens.d.ts +10 -10
- package/dist/types/components/TextField/index.d.ts +1 -1
- package/dist/types/components/TextField/types.d.ts +6 -6
- package/dist/types/components/Textarea/Textarea.d.ts +30 -30
- package/dist/types/components/Textarea/index.d.ts +1 -1
- package/dist/types/components/Tooltip/Tooltip.d.ts +22 -22
- package/dist/types/components/Tooltip/Tooltip.tokens.d.ts +4 -4
- package/dist/types/components/Tooltip/index.d.ts +1 -1
- package/dist/types/components/TopBar/Actions.d.ts +3 -3
- package/dist/types/components/TopBar/CustomContent.d.ts +3 -3
- package/dist/types/components/TopBar/Header.d.ts +3 -3
- package/dist/types/components/TopBar/TopBar.d.ts +3 -3
- package/dist/types/components/TopBar/TopBar.tokens.d.ts +4 -4
- package/dist/types/components/TopBar/index.d.ts +12 -12
- package/dist/types/components/Typography/Typography.d.ts +15 -15
- package/dist/types/components/Typography/Typography.tokens.d.ts +454 -453
- package/dist/types/components/Typography/index.d.ts +1 -1
- package/dist/types/index.d.ts +35 -35
- package/package.json +52 -48
- package/dist/core-react.cjs.js +0 -18477
- package/dist/core-react.esm.js +0 -18407
- package/dist/core-react.umd.js +0 -18479
- package/dist/types/components/Combobox/Combobox.d.ts +0 -55
- package/dist/types/components/Combobox/Combobox.tokens.d.ts +0 -3
- package/dist/types/components/Combobox/index.d.ts +0 -1
- package/dist/types/components/Dialog/Actions.d.ts +0 -3
- package/dist/types/components/Dialog/Title.d.ts +0 -3
- package/dist/types/hooks/index.d.ts +0 -9
- package/dist/types/hooks/useAutoResize.d.ts +0 -1
- package/dist/types/hooks/useCombinedRefs.d.ts +0 -3
- package/dist/types/hooks/useGlobalKeyPress.d.ts +0 -10
- package/dist/types/hooks/useHideBodyScroll.d.ts +0 -1
- package/dist/types/hooks/useId.d.ts +0 -1
- package/dist/types/hooks/useMountedRef.d.ts +0 -1
- package/dist/types/hooks/useOutsideClick.d.ts +0 -1
- package/dist/types/hooks/usePopper.d.ts +0 -12
- package/dist/types/hooks/useToken.d.ts +0 -7
- package/dist/types/utils/index.d.ts +0 -4
- package/dist/types/utils/joinHandlers.d.ts +0 -3
- package/dist/types/utils/setReactInputValue.d.ts +0 -7
- package/dist/types/utils/templates/borders.d.ts +0 -2
- package/dist/types/utils/templates/common.d.ts +0 -9
- package/dist/types/utils/templates/focus.d.ts +0 -2
- package/dist/types/utils/templates/index.d.ts +0 -7
- package/src/index.ts +0 -37
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { forwardRef, useState, useLayoutEffect } from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
import { useIsMounted } from '@equinor/eds-utils';
|
|
4
|
+
import { Icon } from '../Icon/index.js';
|
|
5
|
+
import { PaginationItem } from './PaginationItem.js';
|
|
6
|
+
import { pagination } from './Pagination.tokens.js';
|
|
7
|
+
import { chevron_left, chevron_right, more_horizontal } from '@equinor/eds-icons';
|
|
8
|
+
import { PaginationControl } from './paginationControl.js';
|
|
9
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
10
|
+
import { Typography } from '../Typography/Typography.js';
|
|
11
|
+
import { Button } from '../Button/Button.js';
|
|
12
|
+
|
|
13
|
+
const icons = {
|
|
14
|
+
chevron_left,
|
|
15
|
+
chevron_right,
|
|
16
|
+
more_horizontal
|
|
17
|
+
};
|
|
18
|
+
Icon.add(icons);
|
|
19
|
+
const Navigation = styled.nav.withConfig({
|
|
20
|
+
displayName: "Pagination__Navigation",
|
|
21
|
+
componentId: "sc-13cpp3o-0"
|
|
22
|
+
})(["display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;margin-left:", ";"], _ref => {
|
|
23
|
+
let {
|
|
24
|
+
withItemIndicator
|
|
25
|
+
} = _ref;
|
|
26
|
+
return withItemIndicator ? pagination.spacings.left : 0;
|
|
27
|
+
});
|
|
28
|
+
const OrderedList = styled.ol.withConfig({
|
|
29
|
+
displayName: "Pagination__OrderedList",
|
|
30
|
+
componentId: "sc-13cpp3o-1"
|
|
31
|
+
})(["list-style:none;margin:0;padding:0;display:grid;grid-gap:", ";grid-auto-flow:column;"], pagination.spacings.left);
|
|
32
|
+
const ListItem = styled.li.withConfig({
|
|
33
|
+
displayName: "Pagination__ListItem",
|
|
34
|
+
componentId: "sc-13cpp3o-2"
|
|
35
|
+
})(["display:inline-grid;"]);
|
|
36
|
+
const StyledIcon = styled(Icon).withConfig({
|
|
37
|
+
displayName: "Pagination__StyledIcon",
|
|
38
|
+
componentId: "sc-13cpp3o-3"
|
|
39
|
+
})(["align-self:center;justify-self:center;fill:", ";"], pagination.entities.icon.typography.color);
|
|
40
|
+
const FlexContainer = styled.div.withConfig({
|
|
41
|
+
displayName: "Pagination__FlexContainer",
|
|
42
|
+
componentId: "sc-13cpp3o-4"
|
|
43
|
+
})(["display:flex;justify-content:space-between;flex-wrap:nowrap;align-items:center;"]);
|
|
44
|
+
const Text = styled(Typography).withConfig({
|
|
45
|
+
displayName: "Pagination__Text",
|
|
46
|
+
componentId: "sc-13cpp3o-5"
|
|
47
|
+
})(["white-space:nowrap;"]);
|
|
48
|
+
|
|
49
|
+
function getAriaLabel(page, selected) {
|
|
50
|
+
return "".concat(selected === page ? 'Current page, ' : 'Go to ', "page ").concat(page);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const Pagination = /*#__PURE__*/forwardRef(function Pagination(_ref2, ref) {
|
|
54
|
+
let {
|
|
55
|
+
totalItems,
|
|
56
|
+
defaultPage = 1,
|
|
57
|
+
withItemIndicator,
|
|
58
|
+
itemsPerPage = 10,
|
|
59
|
+
onChange,
|
|
60
|
+
...rest
|
|
61
|
+
} = _ref2;
|
|
62
|
+
const pages = Math.ceil(totalItems / itemsPerPage); // Total page numbers
|
|
63
|
+
|
|
64
|
+
const columns = pages < 5 ? pages + 2 : 7; // Total pages to display on the control + 2: < and >
|
|
65
|
+
|
|
66
|
+
const [activePage, setActivePage] = useState(defaultPage);
|
|
67
|
+
const currentItemFirst = activePage === 1 ? 1 : activePage * itemsPerPage - itemsPerPage + 1; // First number of range of items at current page
|
|
68
|
+
|
|
69
|
+
const currentItemLast = activePage === pages ? totalItems : activePage * itemsPerPage; // Last number of range of items at current page
|
|
70
|
+
|
|
71
|
+
const onPageChange = (event, page) => {
|
|
72
|
+
page && setActivePage(page);
|
|
73
|
+
|
|
74
|
+
if (event && onChange) {
|
|
75
|
+
// Callback for provided onChange func
|
|
76
|
+
onChange(event, page);
|
|
77
|
+
} else {
|
|
78
|
+
return undefined;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
const isMounted = useIsMounted();
|
|
83
|
+
const items = PaginationControl(pages, activePage);
|
|
84
|
+
useLayoutEffect(() => {
|
|
85
|
+
if (isMounted) {
|
|
86
|
+
setActivePage(1);
|
|
87
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(null, 1);
|
|
88
|
+
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
89
|
+
|
|
90
|
+
}, [itemsPerPage]);
|
|
91
|
+
const props = {
|
|
92
|
+
ref,
|
|
93
|
+
withItemIndicator,
|
|
94
|
+
...rest
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
const pagination = /*#__PURE__*/jsx(Navigation, {
|
|
98
|
+
"aria-label": "pagination",
|
|
99
|
+
...props,
|
|
100
|
+
children: /*#__PURE__*/jsxs(OrderedList, {
|
|
101
|
+
style: {
|
|
102
|
+
gridTemplateColumns: "repeat(".concat(columns, ", 48px)")
|
|
103
|
+
},
|
|
104
|
+
children: [/*#__PURE__*/jsx(ListItem, {
|
|
105
|
+
children: /*#__PURE__*/jsx(Button, {
|
|
106
|
+
variant: "ghost_icon",
|
|
107
|
+
onClick: activePage > 1 ? event => {
|
|
108
|
+
onPageChange(event, activePage - 1);
|
|
109
|
+
} : undefined,
|
|
110
|
+
disabled: activePage === 1,
|
|
111
|
+
"aria-label": "Go to previous page",
|
|
112
|
+
children: /*#__PURE__*/jsx(Icon, {
|
|
113
|
+
name: "chevron_left"
|
|
114
|
+
})
|
|
115
|
+
})
|
|
116
|
+
}, "previous"), items.length > 0 ? items.map((page, index) => page !== 'ELLIPSIS' ?
|
|
117
|
+
/*#__PURE__*/
|
|
118
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
119
|
+
jsx(ListItem, {
|
|
120
|
+
children: /*#__PURE__*/jsx(PaginationItem, { ...page,
|
|
121
|
+
"aria-label": getAriaLabel(page, activePage),
|
|
122
|
+
"aria-current": activePage,
|
|
123
|
+
page: page,
|
|
124
|
+
selected: page === activePage,
|
|
125
|
+
onClick: event => {
|
|
126
|
+
onPageChange(event, page);
|
|
127
|
+
}
|
|
128
|
+
})
|
|
129
|
+
}, "list-item ".concat(index)) : /*#__PURE__*/jsx(ListItem // eslint-disable-next-line react/no-array-index-key
|
|
130
|
+
, {
|
|
131
|
+
children: /*#__PURE__*/jsx(StyledIcon, {
|
|
132
|
+
name: "more_horizontal",
|
|
133
|
+
"aria-label": "Ellipsis of pages"
|
|
134
|
+
})
|
|
135
|
+
}, "ellipsis-".concat(index))) : undefined, /*#__PURE__*/jsx(ListItem, {
|
|
136
|
+
children: /*#__PURE__*/jsx(Button, {
|
|
137
|
+
variant: "ghost_icon",
|
|
138
|
+
onClick: activePage < pages ? event => {
|
|
139
|
+
onPageChange(event, activePage + 1);
|
|
140
|
+
} : undefined,
|
|
141
|
+
"aria-label": "Go to next page",
|
|
142
|
+
disabled: activePage === pages,
|
|
143
|
+
children: /*#__PURE__*/jsx(Icon, {
|
|
144
|
+
name: "chevron_right"
|
|
145
|
+
})
|
|
146
|
+
})
|
|
147
|
+
}, "next")]
|
|
148
|
+
})
|
|
149
|
+
});
|
|
150
|
+
|
|
151
|
+
return withItemIndicator ? /*#__PURE__*/jsxs(FlexContainer, {
|
|
152
|
+
children: [/*#__PURE__*/jsx(Text, {
|
|
153
|
+
children: currentItemFirst !== currentItemLast ? "".concat(currentItemFirst, "\n ", ' - ', "\n ").concat(currentItemLast, "\n ", ' of ', "\n ").concat(totalItems, "\n ", ' items') : "".concat(currentItemFirst, " ", ' of ', " ").concat(totalItems, " ", ' items')
|
|
154
|
+
}), pagination]
|
|
155
|
+
}) : pagination;
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
export { Pagination };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { tokens } from '@equinor/eds-tokens';
|
|
2
|
+
|
|
3
|
+
const {
|
|
4
|
+
colors: {
|
|
5
|
+
interactive: {
|
|
6
|
+
primary__selected_highlight: {
|
|
7
|
+
rgba: selectedColor
|
|
8
|
+
},
|
|
9
|
+
disabled__text: {
|
|
10
|
+
rgba: disabledColor
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
spacings: {
|
|
15
|
+
comfortable: {
|
|
16
|
+
small: spacingSmall
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
} = tokens;
|
|
20
|
+
const pagination = {
|
|
21
|
+
entities: {
|
|
22
|
+
item: {
|
|
23
|
+
states: {
|
|
24
|
+
active: {
|
|
25
|
+
background: selectedColor
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
icon: {
|
|
30
|
+
typography: {
|
|
31
|
+
color: disabledColor
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
spacings: {
|
|
36
|
+
left: spacingSmall
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export { pagination };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import { pagination } from './Pagination.tokens.js';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { Button } from '../Button/Button.js';
|
|
5
|
+
|
|
6
|
+
const PaginationItem = /*#__PURE__*/forwardRef(function PaginationItem(_ref, ref) {
|
|
7
|
+
let {
|
|
8
|
+
page,
|
|
9
|
+
selected,
|
|
10
|
+
onClick,
|
|
11
|
+
...rest
|
|
12
|
+
} = _ref;
|
|
13
|
+
const props = {
|
|
14
|
+
ref,
|
|
15
|
+
page,
|
|
16
|
+
selected,
|
|
17
|
+
...rest
|
|
18
|
+
};
|
|
19
|
+
const background = selected ? pagination.entities.item.states.active.background : null;
|
|
20
|
+
return /*#__PURE__*/jsx(Button, {
|
|
21
|
+
style: {
|
|
22
|
+
background
|
|
23
|
+
},
|
|
24
|
+
variant: "ghost_icon",
|
|
25
|
+
onClick: onClick ? onClick : undefined,
|
|
26
|
+
...props,
|
|
27
|
+
children: page
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
export { PaginationItem };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
function PaginationControl(pages, activePage) {
|
|
2
|
+
const siblings = 1; // amount of siblings on left and right side of active page after trunking
|
|
3
|
+
|
|
4
|
+
const totalPagesShown = 7; // amount of total pages before we start trunking pages in ellipsis
|
|
5
|
+
|
|
6
|
+
const pagesBeforeEllipsis = 5; // total pages shown before ellipsis and trunking begins
|
|
7
|
+
|
|
8
|
+
const ELLIPSIS = 'ELLIPSIS'; // Range function from https://dev.to/namirsab/comment/2050
|
|
9
|
+
|
|
10
|
+
const range = (start, end) => {
|
|
11
|
+
const length = end - start + 1;
|
|
12
|
+
return Array.from({
|
|
13
|
+
length
|
|
14
|
+
}, (_, i) => start + i);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
let pageRange;
|
|
18
|
+
|
|
19
|
+
if (pages > 4) {
|
|
20
|
+
const startPage = Math.max(1, activePage < pagesBeforeEllipsis || pages <= totalPagesShown ? 1 : activePage + siblings + 1 >= pages ? pages - 4 // - 4 to fit total columns /
|
|
21
|
+
: activePage > 4 && pages > totalPagesShown ? activePage - siblings : 1); // the first page after left ellipsis
|
|
22
|
+
|
|
23
|
+
const endOffset = activePage < pagesBeforeEllipsis && pages > totalPagesShown ? pagesBeforeEllipsis : activePage < pagesBeforeEllipsis && pages <= totalPagesShown ? pages : activePage + siblings + 1 < pages - 1 ? activePage + siblings : activePage + siblings + 1 === pages - 1 ? pages : pages;
|
|
24
|
+
const endPage = Math.min(pages, endOffset); // the last page before right ellipsis
|
|
25
|
+
|
|
26
|
+
pageRange = range(startPage, endPage); // range in between ellipsis(es). Ex: range(4, 6) = 1 ... ( 4 5 6 ) ... 10
|
|
27
|
+
|
|
28
|
+
const hiddenLeft = startPage > 2 && pages > totalPagesShown; // Has hidden pages on left side
|
|
29
|
+
|
|
30
|
+
const hiddenRight = pages - endPage > 1 && pages > totalPagesShown; // Has hidden pages on right side
|
|
31
|
+
|
|
32
|
+
if (hiddenLeft && !hiddenRight) {
|
|
33
|
+
pageRange = [1, ELLIPSIS, ...pageRange];
|
|
34
|
+
} else if (!hiddenLeft && hiddenRight) {
|
|
35
|
+
pageRange = [...pageRange, ELLIPSIS, pages];
|
|
36
|
+
} else if (hiddenLeft && hiddenRight) {
|
|
37
|
+
pageRange = [1, ELLIPSIS, ...pageRange, ELLIPSIS, pages];
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return [...pageRange];
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return range(1, pages);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export { PaginationControl };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
import { paper, elevation } from './Paper.tokens.js';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
const StyledPaper = styled.div.withConfig({
|
|
7
|
+
displayName: "Paper__StyledPaper",
|
|
8
|
+
componentId: "sc-6ncnv9-0"
|
|
9
|
+
})(["min-width:", ";max-width:", ";background:", ";box-shadow:", ";"], paper.minWidth, paper.maxWidth, paper.background, _ref => {
|
|
10
|
+
let {
|
|
11
|
+
elevation
|
|
12
|
+
} = _ref;
|
|
13
|
+
return elevation;
|
|
14
|
+
});
|
|
15
|
+
const Paper = /*#__PURE__*/forwardRef(function Paper(_ref2, ref) {
|
|
16
|
+
let {
|
|
17
|
+
elevation: elevation$1,
|
|
18
|
+
...rest
|
|
19
|
+
} = _ref2;
|
|
20
|
+
const props = { ...rest,
|
|
21
|
+
elevation: elevation[elevation$1] || 'none'
|
|
22
|
+
};
|
|
23
|
+
return /*#__PURE__*/jsx(StyledPaper, { ...props,
|
|
24
|
+
ref: ref
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
export { Paper };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { tokens } from '@equinor/eds-tokens';
|
|
2
|
+
|
|
3
|
+
const {
|
|
4
|
+
elevation,
|
|
5
|
+
colors: {
|
|
6
|
+
ui: {
|
|
7
|
+
background__default: {
|
|
8
|
+
rgba: background
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
} = tokens;
|
|
13
|
+
const paper = {
|
|
14
|
+
maxWidth: 'calc(100% - 32px)',
|
|
15
|
+
minWidth: '96px',
|
|
16
|
+
background
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { elevation, paper };
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { forwardRef, useState, useEffect } from 'react';
|
|
2
|
+
import styled, { css, ThemeProvider } from 'styled-components';
|
|
3
|
+
import { typographyTemplate, bordersTemplate, useCombinedRefs, useOutsideClick, useGlobalKeyPress, usePopper, useToken } from '@equinor/eds-utils';
|
|
4
|
+
import { popover } from './Popover.tokens.js';
|
|
5
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
|
+
import { Paper } from '../Paper/Paper.js';
|
|
7
|
+
import { useEds } from '../EdsProvider/eds.context.js';
|
|
8
|
+
|
|
9
|
+
const PopoverPaper = styled(Paper).withConfig({
|
|
10
|
+
displayName: "Popover__PopoverPaper",
|
|
11
|
+
componentId: "sc-b7p1is-0"
|
|
12
|
+
})(_ref => {
|
|
13
|
+
let {
|
|
14
|
+
theme,
|
|
15
|
+
open
|
|
16
|
+
} = _ref;
|
|
17
|
+
return css(["", " ", " display:grid;grid-auto-columns:auto;align-items:center;align-content:start;background:", ";width:max-content;max-height:", ";max-width:", ";", " z-index:300;.arrow{z-index:-1;width:", ";height:", ";}&[data-popper-placement^='top'] > .arrow{bottom:", ";.arrowSvg{transform:rotate(-90deg);}}&[data-popper-placement^='bottom'] > .arrow{top:", ";.arrowSvg{transform:rotate(90deg);}}&[data-popper-placement^='left'] > .arrow{right:", ";.arrowSvg{transform:rotate(-180deg);}}&[data-popper-placement^='right'] > .arrow{left:", ";}"], {
|
|
18
|
+
visibility: open ? null : 'hidden'
|
|
19
|
+
}, typographyTemplate(theme.typography), theme.background, theme.maxHeight, theme.maxWidth, bordersTemplate(theme.border), theme.entities.arrow.width, theme.entities.arrow.height, theme.entities.arrow.spacings.bottom, theme.entities.arrow.spacings.top, theme.entities.arrow.spacings.right, theme.entities.arrow.spacings.left);
|
|
20
|
+
});
|
|
21
|
+
const ArrowWrapper = styled.div.withConfig({
|
|
22
|
+
displayName: "Popover__ArrowWrapper",
|
|
23
|
+
componentId: "sc-b7p1is-1"
|
|
24
|
+
})(_ref2 => {
|
|
25
|
+
let {
|
|
26
|
+
theme
|
|
27
|
+
} = _ref2;
|
|
28
|
+
return css(["&,&::before{position:absolute;width:", ";height:", ";z-index:-1;}&::before{content:'';}"], theme.entities.arrow.width, theme.entities.arrow.height);
|
|
29
|
+
});
|
|
30
|
+
const InnerWrapper = styled.div.withConfig({
|
|
31
|
+
displayName: "Popover__InnerWrapper",
|
|
32
|
+
componentId: "sc-b7p1is-2"
|
|
33
|
+
})(_ref3 => {
|
|
34
|
+
let {
|
|
35
|
+
theme
|
|
36
|
+
} = _ref3;
|
|
37
|
+
return css(["display:grid;grid-gap:", ";"], theme.spacings.bottom);
|
|
38
|
+
});
|
|
39
|
+
const PopoverArrow = styled.svg.withConfig({
|
|
40
|
+
displayName: "Popover__PopoverArrow",
|
|
41
|
+
componentId: "sc-b7p1is-3"
|
|
42
|
+
})(_ref4 => {
|
|
43
|
+
let {
|
|
44
|
+
theme
|
|
45
|
+
} = _ref4;
|
|
46
|
+
return css(["width:", ";height:", ";position:absolute;fill:", ";filter:drop-shadow(-4px 0px 2px rgba(0,0,0,0.2));"], theme.entities.arrow.width, theme.entities.arrow.height, theme.background);
|
|
47
|
+
});
|
|
48
|
+
const Popover = /*#__PURE__*/forwardRef(function Popover(_ref5, ref) {
|
|
49
|
+
let {
|
|
50
|
+
children,
|
|
51
|
+
placement = 'bottom',
|
|
52
|
+
anchorEl,
|
|
53
|
+
open,
|
|
54
|
+
onClose,
|
|
55
|
+
...rest
|
|
56
|
+
} = _ref5;
|
|
57
|
+
const [popperEl, setPopperEl] = useState(null);
|
|
58
|
+
const [storedAnchorEl, setStoredAnchorEl] = useState(null);
|
|
59
|
+
const [arrowRef, setArrowRef] = useState(null);
|
|
60
|
+
const popoverRef = useCombinedRefs(ref, setPopperEl);
|
|
61
|
+
useOutsideClick(popperEl, e => {
|
|
62
|
+
if (open && onClose !== null && anchorEl && !anchorEl.contains(e.target)) {
|
|
63
|
+
onClose();
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
useGlobalKeyPress('Escape', () => {
|
|
67
|
+
if (onClose !== null && open) {
|
|
68
|
+
onClose();
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
useEffect(() => {
|
|
72
|
+
open ? setStoredAnchorEl(anchorEl) : setStoredAnchorEl(null);
|
|
73
|
+
return () => setStoredAnchorEl(null);
|
|
74
|
+
}, [anchorEl, open]);
|
|
75
|
+
const {
|
|
76
|
+
styles,
|
|
77
|
+
attributes
|
|
78
|
+
} = usePopper(storedAnchorEl, popperEl, arrowRef, placement);
|
|
79
|
+
const props = {
|
|
80
|
+
open,
|
|
81
|
+
...rest,
|
|
82
|
+
...attributes.popper
|
|
83
|
+
};
|
|
84
|
+
const {
|
|
85
|
+
density
|
|
86
|
+
} = useEds();
|
|
87
|
+
const token = useToken({
|
|
88
|
+
density
|
|
89
|
+
}, popover);
|
|
90
|
+
return /*#__PURE__*/jsx(ThemeProvider, {
|
|
91
|
+
theme: token,
|
|
92
|
+
children: /*#__PURE__*/jsxs(PopoverPaper, {
|
|
93
|
+
ref: popoverRef,
|
|
94
|
+
elevation: "overlay",
|
|
95
|
+
style: styles.popper,
|
|
96
|
+
"data-testid": "popover",
|
|
97
|
+
...props,
|
|
98
|
+
children: [/*#__PURE__*/jsx(ArrowWrapper, {
|
|
99
|
+
ref: setArrowRef,
|
|
100
|
+
style: styles.arrow,
|
|
101
|
+
className: "arrow",
|
|
102
|
+
children: /*#__PURE__*/jsx(PopoverArrow, {
|
|
103
|
+
className: "arrowSvg",
|
|
104
|
+
children: /*#__PURE__*/jsx("path", {
|
|
105
|
+
d: "M0.504838 4.86885C-0.168399 4.48524 -0.168399 3.51476 0.504838 3.13115L6 8.59227e-08L6 8L0.504838 4.86885Z"
|
|
106
|
+
})
|
|
107
|
+
})
|
|
108
|
+
}), /*#__PURE__*/jsx(InnerWrapper, {
|
|
109
|
+
children: children
|
|
110
|
+
})]
|
|
111
|
+
})
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
export { Popover };
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { tokens } from '@equinor/eds-tokens';
|
|
2
|
+
|
|
3
|
+
const {
|
|
4
|
+
typography: {
|
|
5
|
+
ui: {
|
|
6
|
+
accordion_header: header
|
|
7
|
+
}
|
|
8
|
+
},
|
|
9
|
+
colors: {
|
|
10
|
+
ui: {
|
|
11
|
+
background__default: {
|
|
12
|
+
rgba: background
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
spacings: {
|
|
17
|
+
comfortable: {
|
|
18
|
+
medium: spacingMedium,
|
|
19
|
+
small: spacingSmall
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
shape: {
|
|
23
|
+
corners: {
|
|
24
|
+
borderRadius
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
} = tokens;
|
|
28
|
+
const popover = {
|
|
29
|
+
background,
|
|
30
|
+
typography: header,
|
|
31
|
+
maxWidth: '560px',
|
|
32
|
+
maxHeight: '80vh',
|
|
33
|
+
entities: {
|
|
34
|
+
arrow: {
|
|
35
|
+
width: '6px',
|
|
36
|
+
height: spacingSmall,
|
|
37
|
+
spacings: {
|
|
38
|
+
top: '-5px',
|
|
39
|
+
// 1px less than arrow width, if not the shadow would show between arrow and popover
|
|
40
|
+
bottom: '-5px',
|
|
41
|
+
left: '-5px',
|
|
42
|
+
right: '-5px'
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
title: {
|
|
46
|
+
spacings: {
|
|
47
|
+
top: '12px'
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
spacings: {
|
|
52
|
+
top: spacingMedium,
|
|
53
|
+
left: spacingMedium,
|
|
54
|
+
right: spacingMedium,
|
|
55
|
+
bottom: spacingMedium
|
|
56
|
+
},
|
|
57
|
+
border: {
|
|
58
|
+
type: 'border',
|
|
59
|
+
radius: borderRadius
|
|
60
|
+
},
|
|
61
|
+
modes: {
|
|
62
|
+
compact: {}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export { popover };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import styled, { css } from 'styled-components';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
const StyledPopoverActions = styled.div.withConfig({
|
|
6
|
+
displayName: "PopoverActions__StyledPopoverActions",
|
|
7
|
+
componentId: "sc-1dkrhw6-0"
|
|
8
|
+
})(_ref => {
|
|
9
|
+
let {
|
|
10
|
+
theme
|
|
11
|
+
} = _ref;
|
|
12
|
+
return css(["display:grid;grid-gap:8px;grid-auto-flow:column;align-items:center;padding:0 ", " 0 ", ";:last-child{padding-bottom:", ";}:first-child{padding-top:", ";}"], theme.spacings.right, theme.spacings.left, theme.spacings.bottom, theme.spacings.top);
|
|
13
|
+
});
|
|
14
|
+
const PopoverActions = /*#__PURE__*/forwardRef(function PopoverActions(_ref2, ref) {
|
|
15
|
+
let {
|
|
16
|
+
children,
|
|
17
|
+
...rest
|
|
18
|
+
} = _ref2;
|
|
19
|
+
const props = {
|
|
20
|
+
ref,
|
|
21
|
+
...rest
|
|
22
|
+
};
|
|
23
|
+
return /*#__PURE__*/jsx(StyledPopoverActions, { ...props,
|
|
24
|
+
children: children
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
export { PopoverActions };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import styled, { css } from 'styled-components';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
const ContentWrapper = styled.div.withConfig({
|
|
6
|
+
displayName: "PopoverContent__ContentWrapper",
|
|
7
|
+
componentId: "sc-vwww9h-0"
|
|
8
|
+
})(_ref => {
|
|
9
|
+
let {
|
|
10
|
+
theme
|
|
11
|
+
} = _ref;
|
|
12
|
+
return css(["overflow:hidden;padding:0 ", " 0 ", ";:last-child{padding-bottom:", ";}:first-child{padding-top:", ";}"], theme.spacings.right, theme.spacings.left, theme.spacings.bottom, theme.spacings.top);
|
|
13
|
+
});
|
|
14
|
+
const PopoverContent = /*#__PURE__*/forwardRef(function PopoverContent(_ref2, ref) {
|
|
15
|
+
let {
|
|
16
|
+
children,
|
|
17
|
+
...rest
|
|
18
|
+
} = _ref2;
|
|
19
|
+
const props = { ...rest,
|
|
20
|
+
ref
|
|
21
|
+
};
|
|
22
|
+
return /*#__PURE__*/jsx(ContentWrapper, { ...props,
|
|
23
|
+
children: children
|
|
24
|
+
});
|
|
25
|
+
}); // PopoverContent.displayName = 'eds-popover-content'
|
|
26
|
+
|
|
27
|
+
export { PopoverContent };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import styled, { css } from 'styled-components';
|
|
3
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
4
|
+
import { Divider } from '../Divider/Divider.js';
|
|
5
|
+
|
|
6
|
+
const StyledPopoverHeader = styled.div.withConfig({
|
|
7
|
+
displayName: "PopoverHeader__StyledPopoverHeader",
|
|
8
|
+
componentId: "sc-ibcx7p-0"
|
|
9
|
+
})(_ref => {
|
|
10
|
+
let {
|
|
11
|
+
theme
|
|
12
|
+
} = _ref;
|
|
13
|
+
return css(["display:flex;justify-content:space-between;align-items:center;padding:", " ", " 0 ", ";"], theme.entities.title.spacings.top, theme.spacings.right, theme.spacings.left);
|
|
14
|
+
});
|
|
15
|
+
const StyledDivider = styled(Divider).withConfig({
|
|
16
|
+
displayName: "PopoverHeader__StyledDivider",
|
|
17
|
+
componentId: "sc-ibcx7p-1"
|
|
18
|
+
})(["margin-bottom:0;"]);
|
|
19
|
+
const PopoverHeader = /*#__PURE__*/forwardRef(function PopoverHeader(_ref2, ref) {
|
|
20
|
+
let {
|
|
21
|
+
children,
|
|
22
|
+
...rest
|
|
23
|
+
} = _ref2;
|
|
24
|
+
const props = { ...rest,
|
|
25
|
+
ref
|
|
26
|
+
};
|
|
27
|
+
return /*#__PURE__*/jsxs("div", { ...props,
|
|
28
|
+
children: [/*#__PURE__*/jsx(StyledPopoverHeader, {
|
|
29
|
+
children: children
|
|
30
|
+
}), /*#__PURE__*/jsx(StyledDivider, {
|
|
31
|
+
variant: "small"
|
|
32
|
+
})]
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
export { PopoverHeader };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import styled, { css } from 'styled-components';
|
|
3
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
const StyledPopoverTitle = styled.div.withConfig({
|
|
6
|
+
displayName: "PopoverTitle__StyledPopoverTitle",
|
|
7
|
+
componentId: "sc-1ben8su-0"
|
|
8
|
+
})(_ref => {
|
|
9
|
+
let {
|
|
10
|
+
theme
|
|
11
|
+
} = _ref;
|
|
12
|
+
return css(["max-width:", ";margin-right:", ";overflow:hidden;"], theme.maxWidth, theme.spacings.right);
|
|
13
|
+
});
|
|
14
|
+
const PopoverTitle = /*#__PURE__*/forwardRef(function PopoverTitle(_ref2, ref) {
|
|
15
|
+
let {
|
|
16
|
+
children,
|
|
17
|
+
...rest
|
|
18
|
+
} = _ref2;
|
|
19
|
+
const props = { ...rest,
|
|
20
|
+
ref
|
|
21
|
+
};
|
|
22
|
+
return /*#__PURE__*/jsx(StyledPopoverTitle, { ...props,
|
|
23
|
+
children: children
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
export { PopoverTitle };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Popover as Popover$1 } from './Popover.js';
|
|
2
|
+
import { PopoverTitle } from './PopoverTitle.js';
|
|
3
|
+
import { PopoverContent } from './PopoverContent.js';
|
|
4
|
+
import { PopoverHeader } from './PopoverHeader.js';
|
|
5
|
+
import { PopoverActions } from './PopoverActions.js';
|
|
6
|
+
|
|
7
|
+
const Popover = Popover$1;
|
|
8
|
+
Popover.Title = PopoverTitle;
|
|
9
|
+
Popover.Content = PopoverContent;
|
|
10
|
+
Popover.Header = PopoverHeader;
|
|
11
|
+
Popover.Actions = PopoverActions;
|
|
12
|
+
Popover.Title.displayName = 'Popover.Title';
|
|
13
|
+
Popover.Content.displayName = 'Popover.Content';
|
|
14
|
+
Popover.Header.displayName = 'Popover.Header';
|
|
15
|
+
Popover.Actions.displayName = 'Popover.Actions';
|
|
16
|
+
|
|
17
|
+
export { Popover };
|