@equinor/eds-core-react 0.26.0 → 0.28.0-dev12052022
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/dist/eds-core-react.cjs.js +1603 -2493
- package/dist/esm/components/Accordion/Accordion.js +8 -11
- package/dist/esm/components/Accordion/Accordion.tokens.js +14 -14
- package/dist/esm/components/Accordion/AccordionHeader.js +20 -32
- package/dist/esm/components/Accordion/AccordionHeaderActions.js +5 -7
- package/dist/esm/components/Accordion/AccordionHeaderTitle.js +6 -8
- package/dist/esm/components/Accordion/AccordionItem.js +12 -15
- package/dist/esm/components/Accordion/AccordionPanel.js +8 -9
- package/dist/esm/components/Autocomplete/Autocomplete.js +141 -159
- package/dist/esm/components/Autocomplete/Autocomplete.tokens.js +31 -15
- package/dist/esm/components/Autocomplete/Option.js +21 -16
- package/dist/esm/components/Avatar/Avatar.js +7 -8
- package/dist/esm/components/Banner/Banner.js +6 -10
- package/dist/esm/components/Banner/Banner.tokens.js +12 -12
- package/dist/esm/components/Banner/BannerActions.js +4 -6
- package/dist/esm/components/Banner/BannerIcon.js +5 -8
- package/dist/esm/components/Banner/BannerMessage.js +1 -3
- package/dist/esm/components/Breadcrumbs/Breadcrumb.js +5 -9
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +11 -16
- package/dist/esm/components/Breadcrumbs/Breadcrumbs.tokens.js +3 -3
- package/dist/esm/components/Button/Button.js +16 -30
- package/dist/esm/components/Button/ButtonGroup/ButtonGroup.js +2 -4
- package/dist/esm/components/Button/ToggleButton/ToggleButton.js +7 -14
- package/dist/esm/components/Button/tokens/button.js +14 -14
- package/dist/esm/components/Button/tokens/contained.js +9 -9
- package/dist/esm/components/Button/tokens/contained_icon.js +3 -3
- package/dist/esm/components/Button/tokens/ghost.js +9 -9
- package/dist/esm/components/Button/tokens/icon.js +13 -13
- package/dist/esm/components/Button/tokens/outlined.js +10 -10
- package/dist/esm/components/Card/Card.js +5 -8
- package/dist/esm/components/Card/Card.tokens.js +6 -6
- package/dist/esm/components/Card/CardActions.js +5 -8
- package/dist/esm/components/Card/CardContent.js +1 -2
- package/dist/esm/components/Card/CardHeader.js +1 -3
- package/dist/esm/components/Card/CardHeaderTitle.js +1 -3
- package/dist/esm/components/Card/CardMedia.js +4 -6
- package/dist/esm/components/Checkbox/Checkbox.js +6 -7
- package/dist/esm/components/Checkbox/Checkbox.tokens.js +12 -12
- package/dist/esm/components/Checkbox/Input.js +10 -14
- package/dist/esm/components/Chip/Chip.js +20 -31
- package/dist/esm/components/Chip/Chip.tokens.js +20 -20
- package/dist/esm/components/Chip/Icon.js +1 -3
- package/dist/esm/components/Dialog/Dialog.js +11 -16
- package/dist/esm/components/Dialog/Dialog.tokens.js +5 -5
- package/dist/esm/components/Dialog/DialogActions.js +5 -4
- package/dist/esm/components/Dialog/DialogContent.js +4 -6
- package/dist/esm/components/Dialog/DialogHeader.js +1 -3
- package/dist/esm/components/Dialog/DialogTitle.js +2 -3
- package/dist/esm/components/Divider/Divider.js +9 -12
- package/dist/esm/components/Divider/Divider.tokens.js +6 -6
- package/dist/esm/components/EdsProvider/eds.context.js +6 -9
- package/dist/esm/components/Icon/Icon.js +19 -29
- package/dist/esm/components/Icon/library.js +0 -1
- package/dist/esm/components/Input/Input.js +26 -40
- package/dist/esm/components/Input/Input.tokens.js +18 -18
- package/dist/esm/components/InputWrapper/HelperText/HelperText.js +4 -6
- package/dist/esm/components/InputWrapper/HelperText/HelperText.token.js +2 -2
- package/dist/esm/components/InputWrapper/InputWrapper.js +9 -13
- package/dist/esm/components/InputWrapper/InputWrapper.tokens.js +18 -18
- package/dist/esm/components/Label/Label.js +8 -8
- package/dist/esm/components/Label/Label.tokens.js +2 -2
- package/dist/esm/components/List/List.js +4 -5
- package/dist/esm/components/List/ListItem.js +2 -3
- package/dist/esm/components/Menu/Menu.context.js +5 -12
- package/dist/esm/components/Menu/Menu.js +38 -50
- package/dist/esm/components/Menu/Menu.tokens.js +14 -14
- package/dist/esm/components/Menu/MenuItem.js +15 -21
- package/dist/esm/components/Menu/MenuList.js +9 -18
- package/dist/esm/components/Menu/MenuSection.js +5 -3
- package/dist/esm/components/Pagination/Pagination.js +14 -24
- package/dist/esm/components/Pagination/Pagination.tokens.js +3 -3
- package/dist/esm/components/Pagination/PaginationItem.js +3 -5
- package/dist/esm/components/Pagination/paginationControl.js +2 -10
- package/dist/esm/components/Paper/Paper.js +1 -3
- package/dist/esm/components/Paper/Paper.tokens.js +1 -1
- package/dist/esm/components/Popover/Popover.js +32 -48
- package/dist/esm/components/Popover/Popover.tokens.js +8 -8
- package/dist/esm/components/Popover/PopoverActions.js +1 -3
- package/dist/esm/components/Popover/PopoverContent.js +4 -4
- package/dist/esm/components/Popover/PopoverHeader.js +1 -3
- package/dist/esm/components/Popover/PopoverTitle.js +1 -3
- package/dist/esm/components/Progress/Circular/CircularProgress.js +12 -26
- package/dist/esm/components/Progress/Circular/CircularProgress.tokens.js +5 -5
- package/dist/esm/components/Progress/Dots/DotProgress.js +4 -9
- package/dist/esm/components/Progress/Dots/DotProgress.tokens.js +4 -4
- package/dist/esm/components/Progress/Linear/LinearProgress.js +8 -16
- package/dist/esm/components/Progress/Linear/LinearProgress.tokens.js +2 -2
- package/dist/esm/components/Progress/Star/StarProgress.js +8 -12
- package/dist/esm/components/Radio/Radio.js +10 -12
- package/dist/esm/components/Radio/Radio.tokens.js +12 -12
- package/dist/esm/components/Scrim/Scrim.js +5 -9
- package/dist/esm/components/Search/Search.js +6 -13
- package/dist/esm/components/Select/NativeSelect/NativeSelect.js +12 -16
- package/dist/esm/components/Select/NativeSelect/NativeSelect.tokens.js +5 -5
- package/dist/esm/components/SideBar/SideBar.context.js +4 -8
- package/dist/esm/components/SideBar/SideBar.js +17 -22
- package/dist/esm/components/SideBar/SideBar.tokens.js +17 -17
- package/dist/esm/components/SideBar/SideBarButton/index.js +12 -17
- package/dist/esm/components/SideBar/SideBarContent.js +1 -3
- package/dist/esm/components/SideBar/SideBarFooter.js +1 -3
- package/dist/esm/components/SideBar/SideBarToggle.js +7 -10
- package/dist/esm/components/SideBar/SidebarLink/index.js +24 -28
- package/dist/esm/components/SideSheet/SideSheet.js +14 -15
- package/dist/esm/components/SideSheet/SideSheet.tokens.js +6 -6
- package/dist/esm/components/Slider/MinMax.js +2 -2
- package/dist/esm/components/Slider/Output.js +4 -4
- package/dist/esm/components/Slider/Slider.js +27 -48
- package/dist/esm/components/Slider/Slider.tokens.js +14 -14
- package/dist/esm/components/Slider/SliderInput.js +10 -11
- package/dist/esm/components/Snackbar/Snackbar.js +13 -19
- package/dist/esm/components/Snackbar/Snackbar.tokens.js +9 -9
- package/dist/esm/components/Snackbar/SnackbarAction.js +1 -3
- package/dist/esm/components/Switch/Switch.js +8 -10
- package/dist/esm/components/Switch/Switch.styles.js +5 -6
- package/dist/esm/components/Switch/Switch.tokens.js +18 -18
- package/dist/esm/components/Switch/SwitchDefault.js +10 -11
- package/dist/esm/components/Switch/SwitchSmall.js +11 -12
- package/dist/esm/components/Table/Body.js +1 -2
- package/dist/esm/components/Table/Caption.js +1 -1
- package/dist/esm/components/Table/Cell.js +1 -4
- package/dist/esm/components/Table/DataCell/DataCell.js +9 -12
- package/dist/esm/components/Table/DataCell/DataCell.tokens.js +17 -18
- package/dist/esm/components/Table/Head/Head.js +2 -3
- package/dist/esm/components/Table/Head/Head.tokens.js +2 -2
- package/dist/esm/components/Table/HeaderCell/HeaderCell.js +7 -12
- package/dist/esm/components/Table/HeaderCell/HeaderCell.tokens.js +14 -14
- package/dist/esm/components/Table/Row/Row.js +0 -2
- package/dist/esm/components/Table/Row/Row.tokens.js +2 -2
- package/dist/esm/components/Table/Table.js +4 -3
- package/dist/esm/components/TableOfContents/LinkItem.js +1 -2
- package/dist/esm/components/TableOfContents/TableOfContents.js +7 -9
- package/dist/esm/components/TableOfContents/TableOfContents.tokens.js +12 -12
- package/dist/esm/components/Tabs/Tab.js +6 -7
- package/dist/esm/components/Tabs/TabList.js +13 -22
- package/dist/esm/components/Tabs/TabPanel.js +0 -1
- package/dist/esm/components/Tabs/TabPanels.js +3 -5
- package/dist/esm/components/Tabs/Tabs.js +24 -37
- package/dist/esm/components/Tabs/Tabs.tokens.js +13 -13
- package/dist/esm/components/TextField/TextField.js +17 -23
- package/dist/esm/components/Textarea/Textarea.js +11 -19
- package/dist/esm/components/Tooltip/Tooltip.js +37 -50
- package/dist/esm/components/Tooltip/Tooltip.tokens.js +7 -7
- package/dist/esm/components/TopBar/Actions.js +4 -3
- package/dist/esm/components/TopBar/CustomContent.js +4 -3
- package/dist/esm/components/TopBar/Header.js +4 -3
- package/dist/esm/components/TopBar/TopBar.js +10 -12
- package/dist/esm/components/TopBar/TopBar.tokens.js +2 -2
- package/dist/esm/components/Typography/Typography.js +15 -23
- package/dist/esm/components/Typography/Typography.tokens.js +10 -12
- package/dist/esm/index.js +0 -2
- package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/internal/_curry2.js +0 -2
- package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/internal/_curry3.js +0 -3
- package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeDeepRight.js +2 -2
- package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeDeepWithKey.js +2 -1
- package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeWithKey.js +2 -4
- package/dist/types/components/Select/index.d.ts +0 -2
- package/dist/types/components/SideBar/SideBarButton/index.d.ts +6 -3
- package/dist/types/components/SideBar/SideBarToggle.d.ts +2 -2
- package/dist/types/components/Slider/Slider.d.ts +4 -4
- package/package.json +6 -5
- package/dist/esm/components/Select/MultiSelect/MultiSelect.js +0 -226
- package/dist/esm/components/Select/Select.tokens.js +0 -92
- package/dist/esm/components/Select/SingleSelect/SingleSelect.js +0 -160
- package/dist/esm/components/Select/commonStyles.js +0 -43
- package/dist/types/components/Select/MultiSelect/MultiSelect.d.ts +0 -49
- package/dist/types/components/Select/MultiSelect/index.d.ts +0 -1
- package/dist/types/components/Select/Select.tokens.d.ts +0 -3
- package/dist/types/components/Select/SingleSelect/SingleSelect.d.ts +0 -49
- package/dist/types/components/Select/SingleSelect/index.d.ts +0 -1
- package/dist/types/components/Select/commonStyles.d.ts +0 -27
|
@@ -11,16 +11,13 @@ var initalState = {
|
|
|
11
11
|
var MenuContext = /*#__PURE__*/createContext(initalState);
|
|
12
12
|
var MenuProvider = function MenuProvider(_ref) {
|
|
13
13
|
var children = _ref.children;
|
|
14
|
-
|
|
15
14
|
var _useState = useState(initalState),
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
16
|
+
state = _useState2[0],
|
|
17
|
+
setState = _useState2[1];
|
|
20
18
|
var focusedIndex = state.focusedIndex,
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
initialFocus = state.initialFocus,
|
|
20
|
+
onClose = state.onClose;
|
|
24
21
|
var setFocusedIndex = function setFocusedIndex(i) {
|
|
25
22
|
setState(function (prevState) {
|
|
26
23
|
return _objectSpread(_objectSpread({}, prevState), {}, {
|
|
@@ -28,7 +25,6 @@ var MenuProvider = function MenuProvider(_ref) {
|
|
|
28
25
|
});
|
|
29
26
|
});
|
|
30
27
|
};
|
|
31
|
-
|
|
32
28
|
var setInitialFocus = function setInitialFocus(initialFocus) {
|
|
33
29
|
setState(function (prevState) {
|
|
34
30
|
return _objectSpread(_objectSpread({}, prevState), {}, {
|
|
@@ -36,21 +32,18 @@ var MenuProvider = function MenuProvider(_ref) {
|
|
|
36
32
|
});
|
|
37
33
|
});
|
|
38
34
|
};
|
|
39
|
-
|
|
40
35
|
var setOnClose = function setOnClose(onClose) {
|
|
41
36
|
var onCloseHelper = function onCloseHelper() {
|
|
42
37
|
setFocusedIndex(-1);
|
|
43
38
|
setInitialFocus(null);
|
|
44
39
|
onClose();
|
|
45
40
|
};
|
|
46
|
-
|
|
47
41
|
setState(function (prevState) {
|
|
48
42
|
return _objectSpread(_objectSpread({}, prevState), {}, {
|
|
49
43
|
onClose: onCloseHelper
|
|
50
44
|
});
|
|
51
45
|
});
|
|
52
46
|
};
|
|
53
|
-
|
|
54
47
|
var value = {
|
|
55
48
|
setFocusedIndex: setFocusedIndex,
|
|
56
49
|
focusedIndex: focusedIndex,
|
|
@@ -12,7 +12,7 @@ import { Paper } from '../Paper/Paper.js';
|
|
|
12
12
|
import { useEds } from '../EdsProvider/eds.context.js';
|
|
13
13
|
|
|
14
14
|
var _excluded = ["children", "anchorEl", "onClose", "open"],
|
|
15
|
-
|
|
15
|
+
_excluded2 = ["anchorEl", "open", "placement", "onClose", "style", "className"];
|
|
16
16
|
var border = menu.border;
|
|
17
17
|
var MenuPaper = styled(Paper).withConfig({
|
|
18
18
|
displayName: "Menu__MenuPaper",
|
|
@@ -25,16 +25,14 @@ var MenuPaper = styled(Paper).withConfig({
|
|
|
25
25
|
});
|
|
26
26
|
var MenuContainer = /*#__PURE__*/forwardRef(function MenuContainer(_ref2, ref) {
|
|
27
27
|
var children = _ref2.children,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
anchorEl = _ref2.anchorEl,
|
|
29
|
+
onCloseCallback = _ref2.onClose,
|
|
30
|
+
open = _ref2.open,
|
|
31
|
+
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
33
32
|
var _useMenu = useMenu(),
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
setOnClose = _useMenu.setOnClose,
|
|
34
|
+
onClose = _useMenu.onClose,
|
|
35
|
+
setInitialFocus = _useMenu.setInitialFocus;
|
|
38
36
|
useEffect(function () {
|
|
39
37
|
if (onClose === null && onCloseCallback) {
|
|
40
38
|
setOnClose(onCloseCallback);
|
|
@@ -42,8 +40,8 @@ var MenuContainer = /*#__PURE__*/forwardRef(function MenuContainer(_ref2, ref) {
|
|
|
42
40
|
}, [onClose, onCloseCallback, setOnClose]);
|
|
43
41
|
useEffect(function () {
|
|
44
42
|
var openWithKey = function openWithKey(e) {
|
|
45
|
-
var key = e.key;
|
|
46
|
-
|
|
43
|
+
var key = e.key;
|
|
44
|
+
//activate menu with arrows according to wai-aria best practices
|
|
47
45
|
if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
48
46
|
e.preventDefault();
|
|
49
47
|
e.stopPropagation();
|
|
@@ -51,23 +49,21 @@ var MenuContainer = /*#__PURE__*/forwardRef(function MenuContainer(_ref2, ref) {
|
|
|
51
49
|
bubbles: true
|
|
52
50
|
}));
|
|
53
51
|
}
|
|
54
|
-
|
|
55
52
|
switch (key) {
|
|
56
53
|
case 'Enter':
|
|
57
54
|
case 'ArrowDown':
|
|
58
55
|
setInitialFocus('first');
|
|
59
56
|
break;
|
|
60
|
-
|
|
61
57
|
case 'ArrowUp':
|
|
62
58
|
setInitialFocus('last');
|
|
63
59
|
break;
|
|
64
60
|
}
|
|
65
61
|
};
|
|
66
|
-
|
|
67
62
|
if (anchorEl) anchorEl.addEventListener('keydown', openWithKey);
|
|
68
63
|
return function () {
|
|
69
64
|
if (anchorEl) anchorEl.removeEventListener('keydown', openWithKey);
|
|
70
|
-
};
|
|
65
|
+
};
|
|
66
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
71
67
|
}, [anchorEl]);
|
|
72
68
|
useGlobalKeyPress('Escape', function () {
|
|
73
69
|
if (open && onClose !== null) {
|
|
@@ -91,38 +87,34 @@ var MenuContainer = /*#__PURE__*/forwardRef(function MenuContainer(_ref2, ref) {
|
|
|
91
87
|
});
|
|
92
88
|
var Menu = /*#__PURE__*/forwardRef(function Menu(_ref3, ref) {
|
|
93
89
|
var anchorEl = _ref3.anchorEl,
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
90
|
+
open = _ref3.open,
|
|
91
|
+
_ref3$placement = _ref3.placement,
|
|
92
|
+
placement = _ref3$placement === void 0 ? 'bottom' : _ref3$placement,
|
|
93
|
+
onClose = _ref3.onClose,
|
|
94
|
+
style = _ref3.style,
|
|
95
|
+
className = _ref3.className,
|
|
96
|
+
rest = _objectWithoutProperties(_ref3, _excluded2);
|
|
102
97
|
var _useEds = useEds(),
|
|
103
|
-
|
|
104
|
-
|
|
98
|
+
density = _useEds.density;
|
|
105
99
|
var token = useToken({
|
|
106
100
|
density: density
|
|
107
101
|
}, menu);
|
|
108
|
-
|
|
109
102
|
var _useFloating = useFloating({
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
103
|
+
placement: placement,
|
|
104
|
+
open: open,
|
|
105
|
+
onOpenChange: onClose,
|
|
106
|
+
middleware: [offset(4), flip(), shift({
|
|
107
|
+
padding: 8
|
|
108
|
+
})]
|
|
109
|
+
}),
|
|
110
|
+
x = _useFloating.x,
|
|
111
|
+
y = _useFloating.y,
|
|
112
|
+
reference = _useFloating.reference,
|
|
113
|
+
floating = _useFloating.floating,
|
|
114
|
+
refs = _useFloating.refs,
|
|
115
|
+
update = _useFloating.update,
|
|
116
|
+
strategy = _useFloating.strategy,
|
|
117
|
+
context = _useFloating.context;
|
|
126
118
|
useEffect(function () {
|
|
127
119
|
reference(anchorEl);
|
|
128
120
|
}, [anchorEl, reference]);
|
|
@@ -134,23 +126,19 @@ var Menu = /*#__PURE__*/forwardRef(function Menu(_ref3, ref) {
|
|
|
134
126
|
return autoUpdate(refs.reference.current, refs.floating.current, update);
|
|
135
127
|
}
|
|
136
128
|
}, [refs.reference, refs.floating, update, open]);
|
|
137
|
-
|
|
138
129
|
var _useInteractions = useInteractions([useDismiss(context, {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
130
|
+
escapeKey: false
|
|
131
|
+
})]),
|
|
132
|
+
getFloatingProps = _useInteractions.getFloatingProps;
|
|
143
133
|
var props = {
|
|
144
134
|
open: open,
|
|
145
135
|
className: className
|
|
146
136
|
};
|
|
147
|
-
|
|
148
137
|
var menuProps = _objectSpread(_objectSpread({}, rest), {}, {
|
|
149
138
|
onClose: onClose,
|
|
150
139
|
anchorEl: anchorEl,
|
|
151
140
|
open: open
|
|
152
141
|
});
|
|
153
|
-
|
|
154
142
|
return /*#__PURE__*/jsx(Fragment, {
|
|
155
143
|
children: /*#__PURE__*/jsx(FloatingPortal, {
|
|
156
144
|
id: "eds-menu-container",
|
|
@@ -2,20 +2,20 @@ import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
|
2
2
|
import { tokens } from '@equinor/eds-tokens';
|
|
3
3
|
|
|
4
4
|
var _tokens$colors = tokens.colors,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
5
|
+
background = _tokens$colors.ui.background__default.rgba,
|
|
6
|
+
_tokens$colors$intera = _tokens$colors.interactive,
|
|
7
|
+
activeBackground = _tokens$colors$intera.primary__selected_highlight.rgba,
|
|
8
|
+
activeTextColor = _tokens$colors$intera.primary__resting.rgba,
|
|
9
|
+
focusColor = _tokens$colors$intera.focus.rgba,
|
|
10
|
+
disabledIconColor = _tokens$colors$intera.disabled__fill.rgba,
|
|
11
|
+
disabledTextColor = _tokens$colors$intera.disabled__text.rgba,
|
|
12
|
+
hoverBackground = _tokens$colors$intera.table__header__fill_hover.rgba,
|
|
13
|
+
textColor = _tokens$colors.text.static_icons__default.rgba,
|
|
14
|
+
_tokens$spacings$comf = tokens.spacings.comfortable,
|
|
15
|
+
medium = _tokens$spacings$comf.medium,
|
|
16
|
+
large = _tokens$spacings$comf.large,
|
|
17
|
+
small = _tokens$spacings$comf.small,
|
|
18
|
+
typography = tokens.typography.navigation.menu_title;
|
|
19
19
|
var menu = {
|
|
20
20
|
background: background,
|
|
21
21
|
spacings: {
|
|
@@ -9,13 +9,13 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
9
9
|
|
|
10
10
|
var _excluded = ["children", "disabled", "index", "onClick"];
|
|
11
11
|
var typography = menu.typography,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
_tokens$entities = menu.entities,
|
|
13
|
+
_tokens$entities$item = _tokens$entities.item.states,
|
|
14
|
+
activeToken = _tokens$entities$item.active,
|
|
15
|
+
focus = _tokens$entities$item.focus,
|
|
16
|
+
hover = _tokens$entities$item.hover,
|
|
17
|
+
disabledToken = _tokens$entities$item.disabled,
|
|
18
|
+
icon = _tokens$entities.icon;
|
|
19
19
|
var Item = styled.button.attrs(function (_ref) {
|
|
20
20
|
var isFocused = _ref.isFocused;
|
|
21
21
|
return {
|
|
@@ -41,30 +41,25 @@ var Content = styled.div.withConfig({
|
|
|
41
41
|
})(["width:auto;display:grid;grid-gap:16px;grid-auto-flow:column;grid-auto-columns:max-content auto max-content;align-items:center;"]);
|
|
42
42
|
var MenuItem = /*#__PURE__*/forwardRef(function MenuItem(_ref5, ref) {
|
|
43
43
|
var children = _ref5.children,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
44
|
+
disabled = _ref5.disabled,
|
|
45
|
+
_ref5$index = _ref5.index,
|
|
46
|
+
index = _ref5$index === void 0 ? 0 : _ref5$index,
|
|
47
|
+
_onClick = _ref5.onClick,
|
|
48
|
+
rest = _objectWithoutProperties(_ref5, _excluded);
|
|
50
49
|
var _useMenu = useMenu(),
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
50
|
+
focusedIndex = _useMenu.focusedIndex,
|
|
51
|
+
setFocusedIndex = _useMenu.setFocusedIndex,
|
|
52
|
+
onClose = _useMenu.onClose;
|
|
55
53
|
var toggleFocus = function toggleFocus(index_) {
|
|
56
54
|
if (focusedIndex !== index_) {
|
|
57
55
|
setFocusedIndex(index_);
|
|
58
56
|
}
|
|
59
57
|
};
|
|
60
|
-
|
|
61
58
|
var isFocused = index === focusedIndex;
|
|
62
|
-
|
|
63
59
|
var props = _objectSpread(_objectSpread({}, rest), {}, {
|
|
64
60
|
disabled: disabled,
|
|
65
61
|
isFocused: isFocused
|
|
66
62
|
});
|
|
67
|
-
|
|
68
63
|
return /*#__PURE__*/jsx(Item, _objectSpread(_objectSpread({}, props), {}, {
|
|
69
64
|
ref: mergeRefs(ref, function (el) {
|
|
70
65
|
if (isFocused) {
|
|
@@ -79,7 +74,6 @@ var MenuItem = /*#__PURE__*/forwardRef(function MenuItem(_ref5, ref) {
|
|
|
79
74
|
onClick: function onClick(e) {
|
|
80
75
|
if (_onClick) {
|
|
81
76
|
_onClick(e);
|
|
82
|
-
|
|
83
77
|
if (onClose !== null) {
|
|
84
78
|
onClose(e);
|
|
85
79
|
}
|
|
@@ -14,21 +14,17 @@ var List = styled.div.withConfig({
|
|
|
14
14
|
displayName: "MenuList__List",
|
|
15
15
|
componentId: "sc-104rzof-0"
|
|
16
16
|
})(["position:relative;list-style:none;display:flex;flex-direction:column;margin:0;", " li:first-child{z-index:3;}"], spacingsTemplate(menu.spacings));
|
|
17
|
-
|
|
18
17
|
function isIndexable(item) {
|
|
19
18
|
if ( /*#__PURE__*/isValidElement(item) && !item.props.disabled && item.type === MenuItem) return true;
|
|
20
19
|
return false;
|
|
21
20
|
}
|
|
22
|
-
|
|
23
21
|
var MenuList = /*#__PURE__*/forwardRef(function MenuList(_ref, ref) {
|
|
24
22
|
var children = _ref.children,
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
27
24
|
var _useMenu = useMenu(),
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
25
|
+
focusedIndex = _useMenu.focusedIndex,
|
|
26
|
+
setFocusedIndex = _useMenu.setFocusedIndex,
|
|
27
|
+
initialFocus = _useMenu.initialFocus;
|
|
32
28
|
var index = -1;
|
|
33
29
|
var focusableIndexs = useMemo(function () {
|
|
34
30
|
return [];
|
|
@@ -36,7 +32,6 @@ var MenuList = /*#__PURE__*/forwardRef(function MenuList(_ref, ref) {
|
|
|
36
32
|
var updatedChildren = useMemo(function () {
|
|
37
33
|
return Children.map(children, function (child) {
|
|
38
34
|
if (!child) return child;
|
|
39
|
-
|
|
40
35
|
if (child.type === MenuSection) {
|
|
41
36
|
index++;
|
|
42
37
|
var menuSectionIndex = index;
|
|
@@ -65,13 +60,11 @@ var MenuList = /*#__PURE__*/forwardRef(function MenuList(_ref, ref) {
|
|
|
65
60
|
if (initialFocus === 'first') {
|
|
66
61
|
setFocusedIndex(firstFocusIndex);
|
|
67
62
|
}
|
|
68
|
-
|
|
69
63
|
if (initialFocus === 'last') {
|
|
70
64
|
setFocusedIndex(lastFocusIndex);
|
|
71
|
-
}
|
|
72
|
-
|
|
65
|
+
}
|
|
66
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
73
67
|
}, [initialFocus, firstFocusIndex, lastFocusIndex]);
|
|
74
|
-
|
|
75
68
|
var handleMenuItemChange = function handleMenuItemChange(direction, fallbackIndex) {
|
|
76
69
|
var i = direction === 'down' ? 1 : -1;
|
|
77
70
|
var currentFocus = focusableIndexs.indexOf(focusedIndex);
|
|
@@ -79,22 +72,18 @@ var MenuList = /*#__PURE__*/forwardRef(function MenuList(_ref, ref) {
|
|
|
79
72
|
var nextFocusedIndex = typeof nextMenuItem === 'undefined' ? fallbackIndex : nextMenuItem;
|
|
80
73
|
setFocusedIndex(nextFocusedIndex);
|
|
81
74
|
};
|
|
82
|
-
|
|
83
75
|
var handleKeyPress = function handleKeyPress(event) {
|
|
84
76
|
var key = event.key;
|
|
85
77
|
event.stopPropagation();
|
|
86
|
-
|
|
87
78
|
if (key === 'ArrowDown') {
|
|
88
79
|
event.preventDefault();
|
|
89
80
|
handleMenuItemChange('down', firstFocusIndex);
|
|
90
81
|
}
|
|
91
|
-
|
|
92
82
|
if (key === 'ArrowUp') {
|
|
93
83
|
event.preventDefault();
|
|
94
84
|
handleMenuItemChange('up', lastFocusIndex);
|
|
95
85
|
}
|
|
96
86
|
};
|
|
97
|
-
|
|
98
87
|
return /*#__PURE__*/jsx(List, _objectSpread(_objectSpread({
|
|
99
88
|
onKeyDown: handleKeyPress,
|
|
100
89
|
role: "menu"
|
|
@@ -102,6 +91,8 @@ var MenuList = /*#__PURE__*/forwardRef(function MenuList(_ref, ref) {
|
|
|
102
91
|
ref: ref,
|
|
103
92
|
children: updatedChildren
|
|
104
93
|
}));
|
|
105
|
-
});
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
// MenuList.displayName = 'EdsMenuList'
|
|
106
97
|
|
|
107
98
|
export { MenuList };
|
|
@@ -16,8 +16,8 @@ var Header = styled.div.attrs(function () {
|
|
|
16
16
|
})(["", " &:focus{outline:none;}"], spacingsTemplate(menu.entities.title.spacings));
|
|
17
17
|
var MenuSection = /*#__PURE__*/memo(function MenuSection(props) {
|
|
18
18
|
var children = props.children,
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
title = props.title,
|
|
20
|
+
index = props.index;
|
|
21
21
|
return /*#__PURE__*/jsxs(Fragment, {
|
|
22
22
|
children: [index !== 0 && /*#__PURE__*/jsx("div", {
|
|
23
23
|
children: /*#__PURE__*/jsx(Divider, {
|
|
@@ -31,6 +31,8 @@ var MenuSection = /*#__PURE__*/memo(function MenuSection(props) {
|
|
|
31
31
|
})
|
|
32
32
|
}), children]
|
|
33
33
|
});
|
|
34
|
-
});
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
// MenuSection.displayName = 'EdsMenuSection'
|
|
35
37
|
|
|
36
38
|
export { MenuSection };
|
|
@@ -47,37 +47,30 @@ var Text = styled(Typography).withConfig({
|
|
|
47
47
|
displayName: "Pagination__Text",
|
|
48
48
|
componentId: "sc-13cpp3o-5"
|
|
49
49
|
})(["white-space:nowrap;"]);
|
|
50
|
-
|
|
51
50
|
function getAriaLabel(page, selected) {
|
|
52
51
|
return "".concat(selected === page ? 'Current page, ' : 'Go to ', "page ").concat(page);
|
|
53
52
|
}
|
|
54
|
-
|
|
55
53
|
var Pagination = /*#__PURE__*/forwardRef(function Pagination(_ref2, ref) {
|
|
56
54
|
var totalItems = _ref2.totalItems,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
55
|
+
_ref2$defaultPage = _ref2.defaultPage,
|
|
56
|
+
defaultPage = _ref2$defaultPage === void 0 ? 1 : _ref2$defaultPage,
|
|
57
|
+
withItemIndicator = _ref2.withItemIndicator,
|
|
58
|
+
_ref2$itemsPerPage = _ref2.itemsPerPage,
|
|
59
|
+
itemsPerPage = _ref2$itemsPerPage === void 0 ? 10 : _ref2$itemsPerPage,
|
|
60
|
+
onChange = _ref2.onChange,
|
|
61
|
+
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
65
62
|
var pages = Math.ceil(totalItems / itemsPerPage); // Total page numbers
|
|
66
|
-
|
|
67
63
|
var columns = pages < 5 ? pages + 2 : 7; // Total pages to display on the control + 2: < and >
|
|
68
64
|
|
|
69
65
|
var _useState = useState(defaultPage),
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
66
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
67
|
+
activePage = _useState2[0],
|
|
68
|
+
setActivePage = _useState2[1];
|
|
74
69
|
var currentItemFirst = activePage === 1 ? 1 : activePage * itemsPerPage - itemsPerPage + 1; // First number of range of items at current page
|
|
75
|
-
|
|
76
70
|
var currentItemLast = activePage === pages ? totalItems : activePage * itemsPerPage; // Last number of range of items at current page
|
|
77
71
|
|
|
78
72
|
var onPageChange = function onPageChange(event, page) {
|
|
79
73
|
page && setActivePage(page);
|
|
80
|
-
|
|
81
74
|
if (event && onChange) {
|
|
82
75
|
// Callback for provided onChange func
|
|
83
76
|
onChange(event, page);
|
|
@@ -85,22 +78,19 @@ var Pagination = /*#__PURE__*/forwardRef(function Pagination(_ref2, ref) {
|
|
|
85
78
|
return undefined;
|
|
86
79
|
}
|
|
87
80
|
};
|
|
88
|
-
|
|
89
81
|
var isMounted = useIsMounted();
|
|
90
82
|
var items = PaginationControl(pages, activePage);
|
|
91
83
|
useIsomorphicLayoutEffect(function () {
|
|
92
84
|
if (isMounted) {
|
|
93
85
|
setActivePage(1);
|
|
94
86
|
onChange === null || onChange === void 0 ? void 0 : onChange(null, 1);
|
|
95
|
-
}
|
|
96
|
-
|
|
87
|
+
}
|
|
88
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
97
89
|
}, [itemsPerPage]);
|
|
98
|
-
|
|
99
90
|
var props = _objectSpread({
|
|
100
91
|
ref: ref,
|
|
101
92
|
withItemIndicator: withItemIndicator
|
|
102
93
|
}, rest);
|
|
103
|
-
|
|
104
94
|
var pagination = /*#__PURE__*/jsx(Navigation, _objectSpread(_objectSpread({
|
|
105
95
|
"aria-label": "pagination"
|
|
106
96
|
}, props), {}, {
|
|
@@ -134,7 +124,8 @@ var Pagination = /*#__PURE__*/forwardRef(function Pagination(_ref2, ref) {
|
|
|
134
124
|
onPageChange(event, page);
|
|
135
125
|
}
|
|
136
126
|
})
|
|
137
|
-
}, "list-item ".concat(index)) : /*#__PURE__*/jsx(ListItem
|
|
127
|
+
}, "list-item ".concat(index)) : /*#__PURE__*/jsx(ListItem
|
|
128
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
138
129
|
, {
|
|
139
130
|
children: /*#__PURE__*/jsx(StyledIcon, {
|
|
140
131
|
name: "more_horizontal",
|
|
@@ -156,7 +147,6 @@ var Pagination = /*#__PURE__*/forwardRef(function Pagination(_ref2, ref) {
|
|
|
156
147
|
}, "next")]
|
|
157
148
|
})
|
|
158
149
|
}));
|
|
159
|
-
|
|
160
150
|
return withItemIndicator ? /*#__PURE__*/jsxs(FlexContainer, {
|
|
161
151
|
children: [/*#__PURE__*/jsx(Text, {
|
|
162
152
|
children: currentItemFirst !== currentItemLast ? "".concat(currentItemFirst, "\n ", ' - ', "\n ").concat(currentItemLast, "\n ", ' of ', "\n ").concat(totalItems, "\n ", ' items') : "".concat(currentItemFirst, " ", ' of ', " ").concat(totalItems, " ", ' items')
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { tokens } from '@equinor/eds-tokens';
|
|
2
2
|
|
|
3
3
|
var _tokens$colors$intera = tokens.colors.interactive,
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
selectedColor = _tokens$colors$intera.primary__selected_highlight.rgba,
|
|
5
|
+
disabledColor = _tokens$colors$intera.disabled__text.rgba,
|
|
6
|
+
spacingSmall = tokens.spacings.comfortable.small;
|
|
7
7
|
var pagination = {
|
|
8
8
|
entities: {
|
|
9
9
|
item: {
|
|
@@ -8,16 +8,14 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
8
8
|
var _excluded = ["page", "selected", "onClick"];
|
|
9
9
|
var PaginationItem = /*#__PURE__*/forwardRef(function PaginationItem(_ref, ref) {
|
|
10
10
|
var page = _ref.page,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
selected = _ref.selected,
|
|
12
|
+
onClick = _ref.onClick,
|
|
13
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
15
14
|
var props = _objectSpread({
|
|
16
15
|
ref: ref,
|
|
17
16
|
page: page,
|
|
18
17
|
selected: selected
|
|
19
18
|
}, rest);
|
|
20
|
-
|
|
21
19
|
var background = selected ? pagination.entities.item.states.active.background : null;
|
|
22
20
|
return /*#__PURE__*/jsx(Button, _objectSpread(_objectSpread({
|
|
23
21
|
style: {
|
|
@@ -2,13 +2,11 @@ import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
|
2
2
|
|
|
3
3
|
function PaginationControl(pages, activePage) {
|
|
4
4
|
var siblings = 1; // amount of siblings on left and right side of active page after trunking
|
|
5
|
-
|
|
6
5
|
var totalPagesShown = 7; // amount of total pages before we start trunking pages in ellipsis
|
|
7
|
-
|
|
8
6
|
var pagesBeforeEllipsis = 5; // total pages shown before ellipsis and trunking begins
|
|
7
|
+
var ELLIPSIS = 'ELLIPSIS';
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
// Range function from https://dev.to/namirsab/comment/2050
|
|
12
10
|
var range = function range(start, end) {
|
|
13
11
|
var length = end - start + 1;
|
|
14
12
|
return Array.from({
|
|
@@ -17,20 +15,16 @@ function PaginationControl(pages, activePage) {
|
|
|
17
15
|
return start + i;
|
|
18
16
|
});
|
|
19
17
|
};
|
|
20
|
-
|
|
21
18
|
var pageRange;
|
|
22
|
-
|
|
23
19
|
if (pages > 4) {
|
|
24
20
|
var startPage = Math.max(1, activePage < pagesBeforeEllipsis || pages <= totalPagesShown ? 1 : activePage + siblings + 1 >= pages ? pages - 4 // - 4 to fit total columns /
|
|
25
21
|
: activePage > 4 && pages > totalPagesShown ? activePage - siblings : 1); // the first page after left ellipsis
|
|
26
22
|
|
|
27
23
|
var 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;
|
|
28
24
|
var endPage = Math.min(pages, endOffset); // the last page before right ellipsis
|
|
29
|
-
|
|
30
25
|
pageRange = range(startPage, endPage); // range in between ellipsis(es). Ex: range(4, 6) = 1 ... ( 4 5 6 ) ... 10
|
|
31
26
|
|
|
32
27
|
var hiddenLeft = startPage > 2 && pages > totalPagesShown; // Has hidden pages on left side
|
|
33
|
-
|
|
34
28
|
var hiddenRight = pages - endPage > 1 && pages > totalPagesShown; // Has hidden pages on right side
|
|
35
29
|
|
|
36
30
|
if (hiddenLeft && !hiddenRight) {
|
|
@@ -40,10 +34,8 @@ function PaginationControl(pages, activePage) {
|
|
|
40
34
|
} else if (hiddenLeft && hiddenRight) {
|
|
41
35
|
pageRange = [1, ELLIPSIS].concat(_toConsumableArray(pageRange), [ELLIPSIS, pages]);
|
|
42
36
|
}
|
|
43
|
-
|
|
44
37
|
return _toConsumableArray(pageRange);
|
|
45
38
|
}
|
|
46
|
-
|
|
47
39
|
return range(1, pages);
|
|
48
40
|
}
|
|
49
41
|
|
|
@@ -15,12 +15,10 @@ var StyledPaper = styled.div.withConfig({
|
|
|
15
15
|
});
|
|
16
16
|
var Paper = /*#__PURE__*/forwardRef(function Paper(_ref2, ref) {
|
|
17
17
|
var elevation$1 = _ref2.elevation,
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
20
19
|
var props = _objectSpread(_objectSpread({}, rest), {}, {
|
|
21
20
|
elevation: elevation[elevation$1] || 'none'
|
|
22
21
|
});
|
|
23
|
-
|
|
24
22
|
return /*#__PURE__*/jsx(StyledPaper, _objectSpread(_objectSpread({}, props), {}, {
|
|
25
23
|
ref: ref
|
|
26
24
|
}));
|