@equinor/eds-core-react 0.25.0 → 0.27.0

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.
Files changed (178) hide show
  1. package/dist/eds-core-react.cjs.js +2016 -2478
  2. package/dist/esm/components/Accordion/Accordion.js +8 -11
  3. package/dist/esm/components/Accordion/Accordion.tokens.js +14 -14
  4. package/dist/esm/components/Accordion/AccordionHeader.js +20 -32
  5. package/dist/esm/components/Accordion/AccordionHeaderActions.js +5 -7
  6. package/dist/esm/components/Accordion/AccordionHeaderTitle.js +6 -8
  7. package/dist/esm/components/Accordion/AccordionItem.js +12 -15
  8. package/dist/esm/components/Accordion/AccordionPanel.js +8 -9
  9. package/dist/esm/components/Autocomplete/Autocomplete.js +94 -148
  10. package/dist/esm/components/Autocomplete/Autocomplete.tokens.js +11 -11
  11. package/dist/esm/components/Autocomplete/Option.js +9 -10
  12. package/dist/esm/components/Avatar/Avatar.js +7 -8
  13. package/dist/esm/components/Banner/Banner.js +6 -10
  14. package/dist/esm/components/Banner/Banner.tokens.js +12 -12
  15. package/dist/esm/components/Banner/BannerActions.js +4 -6
  16. package/dist/esm/components/Banner/BannerIcon.js +5 -8
  17. package/dist/esm/components/Banner/BannerMessage.js +1 -3
  18. package/dist/esm/components/Breadcrumbs/Breadcrumb.js +5 -9
  19. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +11 -16
  20. package/dist/esm/components/Breadcrumbs/Breadcrumbs.tokens.js +3 -3
  21. package/dist/esm/components/Button/Button.js +17 -31
  22. package/dist/esm/components/Button/ButtonGroup/ButtonGroup.js +2 -4
  23. package/dist/esm/components/Button/ToggleButton/ToggleButton.js +7 -14
  24. package/dist/esm/components/Button/tokens/button.js +14 -14
  25. package/dist/esm/components/Button/tokens/contained.js +9 -9
  26. package/dist/esm/components/Button/tokens/contained_icon.js +3 -3
  27. package/dist/esm/components/Button/tokens/ghost.js +9 -9
  28. package/dist/esm/components/Button/tokens/icon.js +13 -13
  29. package/dist/esm/components/Button/tokens/outlined.js +10 -10
  30. package/dist/esm/components/Card/Card.js +5 -8
  31. package/dist/esm/components/Card/Card.tokens.js +6 -6
  32. package/dist/esm/components/Card/CardActions.js +5 -8
  33. package/dist/esm/components/Card/CardContent.js +1 -2
  34. package/dist/esm/components/Card/CardHeader.js +1 -3
  35. package/dist/esm/components/Card/CardHeaderTitle.js +1 -3
  36. package/dist/esm/components/Card/CardMedia.js +4 -6
  37. package/dist/esm/components/Checkbox/Checkbox.js +6 -7
  38. package/dist/esm/components/Checkbox/Checkbox.tokens.js +12 -12
  39. package/dist/esm/components/Checkbox/Input.js +10 -14
  40. package/dist/esm/components/Chip/Chip.js +20 -31
  41. package/dist/esm/components/Chip/Chip.tokens.js +20 -20
  42. package/dist/esm/components/Chip/Icon.js +1 -3
  43. package/dist/esm/components/Dialog/Dialog.js +11 -16
  44. package/dist/esm/components/Dialog/Dialog.tokens.js +5 -5
  45. package/dist/esm/components/Dialog/DialogActions.js +5 -4
  46. package/dist/esm/components/Dialog/DialogContent.js +4 -6
  47. package/dist/esm/components/Dialog/DialogHeader.js +1 -3
  48. package/dist/esm/components/Dialog/DialogTitle.js +2 -3
  49. package/dist/esm/components/Divider/Divider.js +9 -12
  50. package/dist/esm/components/Divider/Divider.tokens.js +6 -6
  51. package/dist/esm/components/EdsProvider/eds.context.js +6 -9
  52. package/dist/esm/components/Icon/Icon.js +19 -29
  53. package/dist/esm/components/Icon/library.js +0 -1
  54. package/dist/esm/components/Input/Input.js +26 -40
  55. package/dist/esm/components/Input/Input.tokens.js +18 -18
  56. package/dist/esm/components/InputWrapper/HelperText/HelperText.js +4 -6
  57. package/dist/esm/components/InputWrapper/HelperText/HelperText.token.js +2 -2
  58. package/dist/esm/components/InputWrapper/InputWrapper.js +9 -13
  59. package/dist/esm/components/InputWrapper/InputWrapper.tokens.js +18 -18
  60. package/dist/esm/components/Label/Label.js +8 -8
  61. package/dist/esm/components/Label/Label.tokens.js +2 -2
  62. package/dist/esm/components/List/List.js +4 -5
  63. package/dist/esm/components/List/ListItem.js +2 -3
  64. package/dist/esm/components/Menu/Menu.context.js +5 -12
  65. package/dist/esm/components/Menu/Menu.js +40 -52
  66. package/dist/esm/components/Menu/Menu.tokens.js +14 -14
  67. package/dist/esm/components/Menu/MenuItem.js +15 -21
  68. package/dist/esm/components/Menu/MenuList.js +9 -18
  69. package/dist/esm/components/Menu/MenuSection.js +5 -3
  70. package/dist/esm/components/Pagination/Pagination.js +17 -27
  71. package/dist/esm/components/Pagination/Pagination.tokens.js +3 -3
  72. package/dist/esm/components/Pagination/PaginationItem.js +3 -5
  73. package/dist/esm/components/Pagination/paginationControl.js +2 -10
  74. package/dist/esm/components/Paper/Paper.js +1 -3
  75. package/dist/esm/components/Paper/Paper.tokens.js +1 -1
  76. package/dist/esm/components/Popover/Popover.js +34 -50
  77. package/dist/esm/components/Popover/Popover.tokens.js +8 -8
  78. package/dist/esm/components/Popover/PopoverActions.js +1 -3
  79. package/dist/esm/components/Popover/PopoverContent.js +4 -4
  80. package/dist/esm/components/Popover/PopoverHeader.js +1 -3
  81. package/dist/esm/components/Popover/PopoverTitle.js +1 -3
  82. package/dist/esm/components/Progress/Circular/CircularProgress.js +12 -26
  83. package/dist/esm/components/Progress/Circular/CircularProgress.tokens.js +5 -5
  84. package/dist/esm/components/Progress/Dots/DotProgress.js +4 -9
  85. package/dist/esm/components/Progress/Dots/DotProgress.tokens.js +4 -4
  86. package/dist/esm/components/Progress/Linear/LinearProgress.js +8 -16
  87. package/dist/esm/components/Progress/Linear/LinearProgress.tokens.js +2 -2
  88. package/dist/esm/components/Progress/Star/StarProgress.js +8 -12
  89. package/dist/esm/components/Radio/Radio.js +10 -12
  90. package/dist/esm/components/Radio/Radio.tokens.js +12 -12
  91. package/dist/esm/components/Scrim/Scrim.js +5 -9
  92. package/dist/esm/components/Search/Search.js +6 -13
  93. package/dist/esm/components/Select/NativeSelect/NativeSelect.js +12 -16
  94. package/dist/esm/components/Select/NativeSelect/NativeSelect.tokens.js +5 -5
  95. package/dist/esm/components/SideBar/SideBar.context.js +49 -0
  96. package/dist/esm/components/SideBar/SideBar.js +74 -0
  97. package/dist/esm/components/SideBar/SideBar.tokens.js +110 -0
  98. package/dist/esm/components/SideBar/SideBarButton/index.js +81 -0
  99. package/dist/esm/components/SideBar/SideBarContent.js +25 -0
  100. package/dist/esm/components/SideBar/SideBarFooter.js +25 -0
  101. package/dist/esm/components/SideBar/SideBarToggle.js +54 -0
  102. package/dist/esm/components/SideBar/SidebarLink/index.js +102 -0
  103. package/dist/esm/components/SideBar/index.js +20 -0
  104. package/dist/esm/components/SideSheet/SideSheet.js +14 -15
  105. package/dist/esm/components/SideSheet/SideSheet.tokens.js +6 -6
  106. package/dist/esm/components/Slider/MinMax.js +2 -2
  107. package/dist/esm/components/Slider/Output.js +4 -4
  108. package/dist/esm/components/Slider/Slider.js +27 -48
  109. package/dist/esm/components/Slider/Slider.tokens.js +14 -14
  110. package/dist/esm/components/Slider/SliderInput.js +10 -11
  111. package/dist/esm/components/Snackbar/Snackbar.js +13 -19
  112. package/dist/esm/components/Snackbar/Snackbar.tokens.js +9 -9
  113. package/dist/esm/components/Snackbar/SnackbarAction.js +1 -3
  114. package/dist/esm/components/Switch/Switch.js +8 -10
  115. package/dist/esm/components/Switch/Switch.styles.js +5 -6
  116. package/dist/esm/components/Switch/Switch.tokens.js +18 -18
  117. package/dist/esm/components/Switch/SwitchDefault.js +10 -11
  118. package/dist/esm/components/Switch/SwitchSmall.js +11 -12
  119. package/dist/esm/components/Table/Body.js +1 -2
  120. package/dist/esm/components/Table/Caption.js +1 -1
  121. package/dist/esm/components/Table/Cell.js +1 -4
  122. package/dist/esm/components/Table/DataCell/DataCell.js +9 -12
  123. package/dist/esm/components/Table/DataCell/DataCell.tokens.js +17 -18
  124. package/dist/esm/components/Table/Head/Head.js +2 -3
  125. package/dist/esm/components/Table/Head/Head.tokens.js +2 -2
  126. package/dist/esm/components/Table/HeaderCell/HeaderCell.js +7 -12
  127. package/dist/esm/components/Table/HeaderCell/HeaderCell.tokens.js +14 -14
  128. package/dist/esm/components/Table/Row/Row.js +0 -2
  129. package/dist/esm/components/Table/Row/Row.tokens.js +2 -2
  130. package/dist/esm/components/Table/Table.js +4 -3
  131. package/dist/esm/components/TableOfContents/LinkItem.js +1 -2
  132. package/dist/esm/components/TableOfContents/TableOfContents.js +7 -9
  133. package/dist/esm/components/TableOfContents/TableOfContents.tokens.js +12 -12
  134. package/dist/esm/components/Tabs/Tab.js +6 -7
  135. package/dist/esm/components/Tabs/TabList.js +13 -22
  136. package/dist/esm/components/Tabs/TabPanel.js +0 -1
  137. package/dist/esm/components/Tabs/TabPanels.js +3 -5
  138. package/dist/esm/components/Tabs/Tabs.js +24 -37
  139. package/dist/esm/components/Tabs/Tabs.tokens.js +13 -13
  140. package/dist/esm/components/TextField/TextField.js +19 -25
  141. package/dist/esm/components/Textarea/Textarea.js +11 -19
  142. package/dist/esm/components/Tooltip/Tooltip.js +38 -51
  143. package/dist/esm/components/Tooltip/Tooltip.tokens.js +7 -7
  144. package/dist/esm/components/TopBar/Actions.js +4 -3
  145. package/dist/esm/components/TopBar/CustomContent.js +4 -3
  146. package/dist/esm/components/TopBar/Header.js +5 -4
  147. package/dist/esm/components/TopBar/TopBar.js +10 -12
  148. package/dist/esm/components/TopBar/TopBar.tokens.js +2 -2
  149. package/dist/esm/components/Typography/Typography.js +15 -23
  150. package/dist/esm/components/Typography/Typography.tokens.js +10 -12
  151. package/dist/esm/index.js +2 -2
  152. package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/internal/_curry2.js +0 -2
  153. package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/internal/_curry3.js +0 -3
  154. package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeDeepRight.js +2 -2
  155. package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeDeepWithKey.js +2 -1
  156. package/dist/esm/node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeWithKey.js +2 -4
  157. package/dist/types/components/Select/index.d.ts +0 -2
  158. package/dist/types/components/SideBar/SideBar.context.d.ts +15 -0
  159. package/dist/types/components/SideBar/SideBar.d.ts +5 -0
  160. package/dist/types/components/SideBar/SideBar.tokens.d.ts +2 -0
  161. package/dist/types/components/SideBar/SideBarButton/index.d.ts +11 -0
  162. package/dist/types/components/SideBar/SideBarContent.d.ts +4 -0
  163. package/dist/types/components/SideBar/SideBarFooter.d.ts +4 -0
  164. package/dist/types/components/SideBar/SideBarToggle.d.ts +4 -0
  165. package/dist/types/components/SideBar/SidebarLink/index.d.ts +18 -0
  166. package/dist/types/components/SideBar/index.d.ts +17 -0
  167. package/dist/types/index.d.ts +1 -0
  168. package/package.json +4 -4
  169. package/dist/esm/components/Select/MultiSelect/MultiSelect.js +0 -226
  170. package/dist/esm/components/Select/Select.tokens.js +0 -92
  171. package/dist/esm/components/Select/SingleSelect/SingleSelect.js +0 -160
  172. package/dist/esm/components/Select/commonStyles.js +0 -43
  173. package/dist/types/components/Select/MultiSelect/MultiSelect.d.ts +0 -49
  174. package/dist/types/components/Select/MultiSelect/index.d.ts +0 -1
  175. package/dist/types/components/Select/Select.tokens.d.ts +0 -3
  176. package/dist/types/components/Select/SingleSelect/SingleSelect.d.ts +0 -49
  177. package/dist/types/components/Select/SingleSelect/index.d.ts +0 -1
  178. package/dist/types/components/Select/commonStyles.d.ts +0 -27
@@ -2,7 +2,7 @@ import _typeof from '@babel/runtime/helpers/typeof';
2
2
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
3
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
4
4
  import _objectSpread from '@babel/runtime/helpers/objectSpread2';
5
- import { forwardRef, useRef, useState, useEffect, useMemo, useCallback, useLayoutEffect } from 'react';
5
+ import { forwardRef, useRef, useState, useEffect, useMemo, useCallback } from 'react';
6
6
  import { useMultipleSelection, useCombobox } from 'downshift';
7
7
  import styled, { css, ThemeProvider } from 'styled-components';
8
8
  import { Button } from '../Button/index.js';
@@ -37,14 +37,12 @@ var StyledButton = styled(Button).withConfig({
37
37
  var button = _ref2.theme.entities.button;
38
38
  return css(["height:", ";width:", ";"], button.height, button.height);
39
39
  });
40
-
41
40
  var findIndex = function findIndex(_ref3) {
42
41
  var calc = _ref3.calc,
43
- index = _ref3.index,
44
- optionDisabled = _ref3.optionDisabled,
45
- availableItems = _ref3.availableItems;
42
+ index = _ref3.index,
43
+ optionDisabled = _ref3.optionDisabled,
44
+ availableItems = _ref3.availableItems;
46
45
  var nextItem = availableItems[index];
47
-
48
46
  if (optionDisabled(nextItem)) {
49
47
  var nextIndex = calc(index);
50
48
  return findIndex({
@@ -54,14 +52,12 @@ var findIndex = function findIndex(_ref3) {
54
52
  optionDisabled: optionDisabled
55
53
  });
56
54
  }
57
-
58
55
  return index;
59
56
  };
60
-
61
57
  var findNextIndex = function findNextIndex(_ref4) {
62
58
  var index = _ref4.index,
63
- optionDisabled = _ref4.optionDisabled,
64
- availableItems = _ref4.availableItems;
59
+ optionDisabled = _ref4.optionDisabled,
60
+ availableItems = _ref4.availableItems;
65
61
  var options = {
66
62
  index: index,
67
63
  optionDisabled: optionDisabled,
@@ -71,21 +67,18 @@ var findNextIndex = function findNextIndex(_ref4) {
71
67
  }
72
68
  };
73
69
  var nextIndex = findIndex(options);
74
-
75
70
  if (nextIndex > availableItems.length - 1) {
76
71
  // jump to start of list
77
72
  return findIndex(_objectSpread(_objectSpread({}, options), {}, {
78
73
  index: 0
79
74
  }));
80
75
  }
81
-
82
76
  return nextIndex;
83
77
  };
84
-
85
78
  var findPrevIndex = function findPrevIndex(_ref5) {
86
79
  var index = _ref5.index,
87
- optionDisabled = _ref5.optionDisabled,
88
- availableItems = _ref5.availableItems;
80
+ optionDisabled = _ref5.optionDisabled,
81
+ availableItems = _ref5.availableItems;
89
82
  var options = {
90
83
  index: index,
91
84
  optionDisabled: optionDisabled,
@@ -95,70 +88,61 @@ var findPrevIndex = function findPrevIndex(_ref5) {
95
88
  }
96
89
  };
97
90
  var prevIndex = findIndex(options);
98
-
99
91
  if (prevIndex < 0) {
100
92
  // jump to end of list
101
93
  return findIndex(_objectSpread(_objectSpread({}, options), {}, {
102
94
  index: availableItems.length - 1
103
95
  }));
104
96
  }
105
-
106
97
  return prevIndex;
107
98
  };
108
-
109
99
  function AutocompleteInner(props, ref) {
110
100
  var _props$options = props.options,
111
- options = _props$options === void 0 ? [] : _props$options,
112
- label = props.label,
113
- meta = props.meta,
114
- className = props.className,
115
- style = props.style,
116
- _props$disabled = props.disabled,
117
- disabled = _props$disabled === void 0 ? false : _props$disabled,
118
- _props$readOnly = props.readOnly,
119
- readOnly = _props$readOnly === void 0 ? false : _props$readOnly,
120
- _props$hideClearButto = props.hideClearButton,
121
- hideClearButton = _props$hideClearButto === void 0 ? false : _props$hideClearButto,
122
- onOptionsChange = props.onOptionsChange,
123
- selectedOptions = props.selectedOptions,
124
- multiple = props.multiple,
125
- _props$initialSelecte = props.initialSelectedOptions,
126
- initialSelectedOptions = _props$initialSelecte === void 0 ? [] : _props$initialSelecte,
127
- disablePortal = props.disablePortal,
128
- _props$optionDisabled = props.optionDisabled,
129
- optionDisabled = _props$optionDisabled === void 0 ? function () {
130
- return false;
131
- } : _props$optionDisabled,
132
- optionsFilter = props.optionsFilter,
133
- autoWidth = props.autoWidth,
134
- placeholder = props.placeholder,
135
- optionLabel = props.optionLabel,
136
- _props$clearSearchOnC = props.clearSearchOnChange,
137
- clearSearchOnChange = _props$clearSearchOnC === void 0 ? true : _props$clearSearchOnC,
138
- other = _objectWithoutProperties(props, _excluded);
139
-
101
+ options = _props$options === void 0 ? [] : _props$options,
102
+ label = props.label,
103
+ meta = props.meta,
104
+ className = props.className,
105
+ style = props.style,
106
+ _props$disabled = props.disabled,
107
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
108
+ _props$readOnly = props.readOnly,
109
+ readOnly = _props$readOnly === void 0 ? false : _props$readOnly,
110
+ _props$hideClearButto = props.hideClearButton,
111
+ hideClearButton = _props$hideClearButto === void 0 ? false : _props$hideClearButto,
112
+ onOptionsChange = props.onOptionsChange,
113
+ selectedOptions = props.selectedOptions,
114
+ multiple = props.multiple,
115
+ _props$initialSelecte = props.initialSelectedOptions,
116
+ initialSelectedOptions = _props$initialSelecte === void 0 ? [] : _props$initialSelecte,
117
+ disablePortal = props.disablePortal,
118
+ _props$optionDisabled = props.optionDisabled,
119
+ optionDisabled = _props$optionDisabled === void 0 ? function () {
120
+ return false;
121
+ } : _props$optionDisabled,
122
+ optionsFilter = props.optionsFilter,
123
+ autoWidth = props.autoWidth,
124
+ placeholder = props.placeholder,
125
+ optionLabel = props.optionLabel,
126
+ _props$clearSearchOnC = props.clearSearchOnChange,
127
+ clearSearchOnChange = _props$clearSearchOnC === void 0 ? true : _props$clearSearchOnC,
128
+ other = _objectWithoutProperties(props, _excluded);
140
129
  var anchorRef = useRef(null);
141
130
  var isControlled = Boolean(selectedOptions);
142
-
143
131
  var _useState = useState(options),
144
- _useState2 = _slicedToArray(_useState, 2),
145
- inputOptions = _useState2[0],
146
- setInputOptions = _useState2[1];
147
-
132
+ _useState2 = _slicedToArray(_useState, 2),
133
+ inputOptions = _useState2[0],
134
+ setInputOptions = _useState2[1];
148
135
  var _useState3 = useState(inputOptions),
149
- _useState4 = _slicedToArray(_useState3, 2),
150
- availableItems = _useState4[0],
151
- setAvailableItems = _useState4[1];
152
-
136
+ _useState4 = _slicedToArray(_useState3, 2),
137
+ availableItems = _useState4[0],
138
+ setAvailableItems = _useState4[1];
153
139
  var _useState5 = useState(''),
154
- _useState6 = _slicedToArray(_useState5, 2),
155
- typedInputValue = _useState6[0],
156
- setTypedInputValue = _useState6[1];
157
-
140
+ _useState6 = _slicedToArray(_useState5, 2),
141
+ typedInputValue = _useState6[0],
142
+ setTypedInputValue = _useState6[1];
158
143
  useEffect(function () {
159
144
  var availableHash = JSON.stringify(inputOptions);
160
145
  var optionsHash = JSON.stringify(options);
161
-
162
146
  if (availableHash !== optionsHash) {
163
147
  setInputOptions(options);
164
148
  }
@@ -169,10 +153,8 @@ function AutocompleteInner(props, ref) {
169
153
  var disabledItems = useMemo(function () {
170
154
  return options.filter(optionDisabled);
171
155
  }, [options, optionDisabled]);
172
-
173
156
  var _useEds = useEds(),
174
- density = _useEds.density;
175
-
157
+ density = _useEds.density;
176
158
  var token = useToken({
177
159
  density: density
178
160
  }, multiple ? multiSelect : selectTokens);
@@ -180,7 +162,6 @@ function AutocompleteInner(props, ref) {
180
162
  var multipleSelectionProps = {
181
163
  initialSelectedItems: multiple ? initialSelectedOptions : initialSelectedOptions[0] ? [initialSelectedOptions[0]] : []
182
164
  };
183
-
184
165
  if (multiple) {
185
166
  multipleSelectionProps = _objectSpread(_objectSpread({}, multipleSelectionProps), {}, {
186
167
  onSelectedItemsChange: function onSelectedItemsChange(changes) {
@@ -192,27 +173,23 @@ function AutocompleteInner(props, ref) {
192
173
  }
193
174
  }
194
175
  });
195
-
196
176
  if (isControlled) {
197
177
  multipleSelectionProps = _objectSpread(_objectSpread({}, multipleSelectionProps), {}, {
198
178
  selectedItems: selectedOptions
199
179
  });
200
180
  }
201
181
  }
202
-
203
182
  var _useMultipleSelection = useMultipleSelection(multipleSelectionProps),
204
- getDropdownProps = _useMultipleSelection.getDropdownProps,
205
- addSelectedItem = _useMultipleSelection.addSelectedItem,
206
- removeSelectedItem = _useMultipleSelection.removeSelectedItem,
207
- selectedItems = _useMultipleSelection.selectedItems,
208
- resetSelection = _useMultipleSelection.reset,
209
- setSelectedItems = _useMultipleSelection.setSelectedItems;
210
-
183
+ getDropdownProps = _useMultipleSelection.getDropdownProps,
184
+ addSelectedItem = _useMultipleSelection.addSelectedItem,
185
+ removeSelectedItem = _useMultipleSelection.removeSelectedItem,
186
+ selectedItems = _useMultipleSelection.selectedItems,
187
+ resetSelection = _useMultipleSelection.reset,
188
+ setSelectedItems = _useMultipleSelection.setSelectedItems;
211
189
  var getLabel = useCallback(function (item) {
212
190
  if (!item) {
213
191
  return '';
214
192
  }
215
-
216
193
  if (_typeof(item) === 'object') {
217
194
  if (optionLabel) {
218
195
  return optionLabel(item);
@@ -220,11 +197,9 @@ function AutocompleteInner(props, ref) {
220
197
  throw new Error('Missing label. When using objects for options make sure to define the `optionLabel` property');
221
198
  }
222
199
  }
223
-
224
200
  if (typeof item === 'string') {
225
201
  return item;
226
202
  }
227
-
228
203
  try {
229
204
  return item === null || item === void 0 ? void 0 : item.toString();
230
205
  } catch (error) {
@@ -241,25 +216,21 @@ function AutocompleteInner(props, ref) {
241
216
  if (optionsFilter) {
242
217
  return optionsFilter(item, inputValue);
243
218
  }
244
-
245
219
  return getLabel(item).toLowerCase().includes(inputValue.toLowerCase());
246
220
  }));
247
221
  },
248
222
  onIsOpenChange: function onIsOpenChange(_ref7) {
249
223
  var selectedItem = _ref7.selectedItem;
250
-
251
224
  if (!multiple && selectedItem !== null) {
252
225
  setAvailableItems(options);
253
226
  }
254
227
  },
255
228
  onStateChange: function onStateChange(_ref8) {
256
229
  var type = _ref8.type,
257
- selectedItem = _ref8.selectedItem;
258
-
230
+ selectedItem = _ref8.selectedItem;
259
231
  switch (type) {
260
232
  case useCombobox.stateChangeTypes.InputChange:
261
233
  break;
262
-
263
234
  case useCombobox.stateChangeTypes.InputKeyDownEnter:
264
235
  case useCombobox.stateChangeTypes.ItemClick:
265
236
  case useCombobox.stateChangeTypes.InputBlur:
@@ -270,14 +241,12 @@ function AutocompleteInner(props, ref) {
270
241
  setSelectedItems([selectedItem]);
271
242
  }
272
243
  }
273
-
274
244
  break;
275
245
  }
276
246
  },
277
247
  stateReducer: function stateReducer(_, actionAndChanges) {
278
248
  var changes = actionAndChanges.changes,
279
- type = actionAndChanges.type;
280
-
249
+ type = actionAndChanges.type;
281
250
  switch (type) {
282
251
  case useCombobox.stateChangeTypes.InputKeyDownArrowDown:
283
252
  case useCombobox.stateChangeTypes.InputKeyDownHome:
@@ -288,7 +257,6 @@ function AutocompleteInner(props, ref) {
288
257
  optionDisabled: optionDisabled
289
258
  })
290
259
  });
291
-
292
260
  case useCombobox.stateChangeTypes.InputKeyDownArrowUp:
293
261
  case useCombobox.stateChangeTypes.InputKeyDownEnd:
294
262
  return _objectSpread(_objectSpread({}, changes), {}, {
@@ -298,13 +266,11 @@ function AutocompleteInner(props, ref) {
298
266
  optionDisabled: optionDisabled
299
267
  })
300
268
  });
301
-
302
269
  default:
303
270
  return changes;
304
271
  }
305
272
  }
306
273
  };
307
-
308
274
  if (!multiple) {
309
275
  comboBoxProps = _objectSpread(_objectSpread({}, comboBoxProps), {}, {
310
276
  onSelectedItemChange: function onSelectedItemChange(changes) {
@@ -316,22 +282,19 @@ function AutocompleteInner(props, ref) {
316
282
  }
317
283
  }
318
284
  });
319
-
320
285
  if (isControlled) {
321
286
  comboBoxProps = _objectSpread(_objectSpread({}, comboBoxProps), {}, {
322
287
  selectedItem: selectedOptions[0] || null
323
288
  });
324
289
  }
325
290
  }
326
-
327
291
  if (multiple) {
328
292
  placeholderText = typeof placeholderText !== 'undefined' ? placeholderText : "".concat(selectedItems.length, "/").concat(options.length - disabledItems.length, " selected");
329
293
  comboBoxProps = _objectSpread(_objectSpread({}, comboBoxProps), {}, {
330
294
  selectedItem: null,
331
295
  stateReducer: function stateReducer(state, actionAndChanges) {
332
296
  var changes = actionAndChanges.changes,
333
- type = actionAndChanges.type;
334
-
297
+ type = actionAndChanges.type;
335
298
  switch (type) {
336
299
  case useCombobox.stateChangeTypes.InputKeyDownArrowDown:
337
300
  case useCombobox.stateChangeTypes.InputKeyDownHome:
@@ -342,7 +305,6 @@ function AutocompleteInner(props, ref) {
342
305
  optionDisabled: optionDisabled
343
306
  })
344
307
  });
345
-
346
308
  case useCombobox.stateChangeTypes.InputKeyDownArrowUp:
347
309
  case useCombobox.stateChangeTypes.InputKeyDownEnd:
348
310
  return _objectSpread(_objectSpread({}, changes), {}, {
@@ -352,7 +314,6 @@ function AutocompleteInner(props, ref) {
352
314
  optionDisabled: optionDisabled
353
315
  })
354
316
  });
355
-
356
317
  case useCombobox.stateChangeTypes.InputKeyDownEnter:
357
318
  case useCombobox.stateChangeTypes.ItemClick:
358
319
  return _objectSpread(_objectSpread({}, changes), {}, {
@@ -361,99 +322,86 @@ function AutocompleteInner(props, ref) {
361
322
  highlightedIndex: state.highlightedIndex,
362
323
  inputValue: !clearSearchOnChange ? typedInputValue : ''
363
324
  });
364
-
365
325
  case useCombobox.stateChangeTypes.InputBlur:
366
326
  setTypedInputValue('');
367
327
  return _objectSpread(_objectSpread({}, changes), {}, {
368
328
  inputValue: ''
369
329
  });
370
-
371
330
  case useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:
372
331
  return _objectSpread(_objectSpread({}, changes), {}, {
373
332
  inputValue: !clearSearchOnChange ? typedInputValue : changes.inputValue
374
333
  });
375
-
376
334
  default:
377
335
  return changes;
378
336
  }
379
337
  }
380
338
  });
381
339
  }
382
-
383
340
  var _useCombobox = useCombobox(comboBoxProps),
384
- isOpen = _useCombobox.isOpen,
385
- getToggleButtonProps = _useCombobox.getToggleButtonProps,
386
- getLabelProps = _useCombobox.getLabelProps,
387
- getMenuProps = _useCombobox.getMenuProps,
388
- getInputProps = _useCombobox.getInputProps,
389
- getComboboxProps = _useCombobox.getComboboxProps,
390
- highlightedIndex = _useCombobox.highlightedIndex,
391
- getItemProps = _useCombobox.getItemProps,
392
- openMenu = _useCombobox.openMenu,
393
- inputValue = _useCombobox.inputValue,
394
- resetCombobox = _useCombobox.reset;
395
-
341
+ isOpen = _useCombobox.isOpen,
342
+ getToggleButtonProps = _useCombobox.getToggleButtonProps,
343
+ getLabelProps = _useCombobox.getLabelProps,
344
+ getMenuProps = _useCombobox.getMenuProps,
345
+ getInputProps = _useCombobox.getInputProps,
346
+ highlightedIndex = _useCombobox.highlightedIndex,
347
+ getItemProps = _useCombobox.getItemProps,
348
+ openMenu = _useCombobox.openMenu,
349
+ inputValue = _useCombobox.inputValue,
350
+ resetCombobox = _useCombobox.reset;
396
351
  useEffect(function () {
397
352
  if (isControlled) {
398
353
  setSelectedItems(selectedOptions);
399
354
  }
400
355
  }, [isControlled, selectedOptions, setSelectedItems]);
401
-
402
356
  var openSelect = function openSelect() {
403
357
  if (!isOpen && !(disabled || readOnly)) {
404
358
  openMenu();
405
359
  }
406
360
  };
407
-
408
361
  var _useFloating = useFloating({
409
- placement: 'bottom-start',
410
- middleware: [offset(4), flip(), shift({
411
- padding: 8
412
- }), size({
413
- apply: function apply(_ref9) {
414
- var rects = _ref9.rects,
362
+ placement: 'bottom-start',
363
+ middleware: [offset(4), flip(), shift({
364
+ padding: 8
365
+ }), size({
366
+ apply: function apply(_ref9) {
367
+ var rects = _ref9.rects,
415
368
  availableHeight = _ref9.availableHeight,
416
369
  elements = _ref9.elements;
417
- var anchorWidth = "".concat(rects.reference.width, "px");
418
- Object.assign(elements.floating.style, {
419
- width: "".concat(autoWidth ? anchorWidth : 'auto'),
420
- maxHeight: "".concat(availableHeight, "px")
421
- });
422
- },
423
- padding: 10
424
- })]
425
- }),
426
- x = _useFloating.x,
427
- y = _useFloating.y,
428
- refs = _useFloating.refs,
429
- update = _useFloating.update,
430
- reference = _useFloating.reference,
431
- floating = _useFloating.floating,
432
- strategy = _useFloating.strategy;
433
-
370
+ var anchorWidth = "".concat(rects.reference.width, "px");
371
+ Object.assign(elements.floating.style, {
372
+ width: "".concat(autoWidth ? anchorWidth : 'auto'),
373
+ maxHeight: "".concat(availableHeight, "px")
374
+ });
375
+ },
376
+ padding: 10
377
+ })]
378
+ }),
379
+ x = _useFloating.x,
380
+ y = _useFloating.y,
381
+ refs = _useFloating.refs,
382
+ update = _useFloating.update,
383
+ reference = _useFloating.reference,
384
+ floating = _useFloating.floating,
385
+ strategy = _useFloating.strategy;
434
386
  var _useInteractions = useInteractions([]),
435
- getFloatingProps = _useInteractions.getFloatingProps;
436
-
437
- useLayoutEffect(function () {
387
+ getFloatingProps = _useInteractions.getFloatingProps;
388
+ useEffect(function () {
438
389
  reference(anchorRef.current);
439
390
  }, [anchorRef, reference]);
440
- useLayoutEffect(function () {
391
+ useEffect(function () {
441
392
  if (refs.reference.current && refs.floating.current && isOpen) {
442
393
  return autoUpdate(refs.reference.current, refs.floating.current, update);
443
394
  }
444
395
  }, [refs.reference, refs.floating, update, isOpen]);
445
-
446
396
  var clear = function clear() {
447
397
  resetCombobox();
448
398
  resetSelection();
449
399
  setTypedInputValue('');
450
400
  };
451
-
452
401
  var showClearButton = (selectedItems.length > 0 || inputValue) && !readOnly && !hideClearButton;
453
402
  var selectedItemsLabels = useMemo(function () {
454
403
  return selectedItems.map(getLabel);
455
404
  }, [selectedItems, getLabel]);
456
-
457
405
  var optionsList = /*#__PURE__*/jsx("div", _objectSpread(_objectSpread({}, getFloatingProps({
458
406
  ref: floating,
459
407
  style: {
@@ -486,7 +434,6 @@ function AutocompleteInner(props, ref) {
486
434
  })
487
435
  }))
488
436
  }));
489
-
490
437
  return /*#__PURE__*/jsx(ThemeProvider, {
491
438
  theme: token,
492
439
  children: /*#__PURE__*/jsxs(Container, {
@@ -497,15 +444,15 @@ function AutocompleteInner(props, ref) {
497
444
  label: label,
498
445
  meta: meta,
499
446
  disabled: disabled
500
- })), /*#__PURE__*/jsx(Container, _objectSpread(_objectSpread({}, getComboboxProps()), {}, {
501
- children: /*#__PURE__*/jsx(Input, _objectSpread(_objectSpread({}, getInputProps( // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
447
+ })), /*#__PURE__*/jsx(Container, {
448
+ children: /*#__PURE__*/jsx(Input, _objectSpread(_objectSpread({}, getInputProps(
449
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
502
450
  getDropdownProps({
503
451
  preventKeyAction: multiple ? isOpen : undefined,
504
452
  disabled: disabled,
505
453
  ref: refs.reference,
506
454
  onChange: function onChange(e) {
507
455
  var _e$currentTarget;
508
-
509
456
  return setTypedInputValue(e === null || e === void 0 ? void 0 : (_e$currentTarget = e.currentTarget) === null || _e$currentTarget === void 0 ? void 0 : _e$currentTarget.value);
510
457
  }
511
458
  }))), {}, {
@@ -538,14 +485,13 @@ function AutocompleteInner(props, ref) {
538
485
  }))]
539
486
  })
540
487
  }, other))
541
- })), disablePortal ? optionsList : /*#__PURE__*/jsx(FloatingPortal, {
488
+ }), disablePortal ? optionsList : /*#__PURE__*/jsx(FloatingPortal, {
542
489
  id: "eds-autocomplete-container",
543
490
  children: optionsList
544
491
  })]
545
492
  })
546
493
  });
547
494
  }
548
-
549
495
  var Autocomplete = /*#__PURE__*/forwardRef(AutocompleteInner);
550
496
 
551
497
  export { Autocomplete };
@@ -3,17 +3,17 @@ import { tokens } from '@equinor/eds-tokens';
3
3
  import mergeDeepRight from '../../node_modules/.pnpm/ramda@0.28.0/node_modules/ramda/es/mergeDeepRight.js';
4
4
 
5
5
  var typography = tokens.typography,
6
- colors = tokens.colors,
7
- _tokens$shape = tokens.shape,
8
- straight = _tokens$shape.straight,
9
- borderRadius = _tokens$shape.corners.borderRadius,
10
- _tokens$spacings$comf = tokens.spacings.comfortable,
11
- spacingSmall = _tokens$spacings$comf.small,
12
- spacingMediumSmall = _tokens$spacings$comf.medium_small,
13
- spacingMedium = _tokens$spacings$comf.medium,
14
- spacingLarge = _tokens$spacings$comf.large,
15
- xx_small = _tokens$spacings$comf.xx_small,
16
- boxShadow = tokens.elevation.temporary_nav;
6
+ colors = tokens.colors,
7
+ _tokens$shape = tokens.shape,
8
+ straight = _tokens$shape.straight,
9
+ borderRadius = _tokens$shape.corners.borderRadius,
10
+ _tokens$spacings$comf = tokens.spacings.comfortable,
11
+ spacingSmall = _tokens$spacings$comf.small,
12
+ spacingMediumSmall = _tokens$spacings$comf.medium_small,
13
+ spacingMedium = _tokens$spacings$comf.medium,
14
+ spacingLarge = _tokens$spacings$comf.large,
15
+ xx_small = _tokens$spacings$comf.xx_small,
16
+ boxShadow = tokens.elevation.temporary_nav;
17
17
  var selectTokens = {
18
18
  background: colors.ui.background__default.rgba,
19
19
  boxShadow: boxShadow,
@@ -13,21 +13,20 @@ var StyledListItem = styled(List.Item).withConfig({
13
13
  componentId: "sc-1ly11zu-0"
14
14
  })(function (_ref) {
15
15
  var theme = _ref.theme,
16
- highlighted = _ref.highlighted,
17
- active = _ref.active,
18
- isdisabled = _ref.isdisabled;
16
+ highlighted = _ref.highlighted,
17
+ active = _ref.active,
18
+ isdisabled = _ref.isdisabled;
19
19
  var backgroundColor = highlighted === 'true' ? theme.states.hover.background : active === 'true' ? theme.states.active.background : theme.background;
20
20
  return css(["display:flex;align-items:center;margin:0;list-style:none;background-color:", ";user-select:none;cursor:", ";", " ", " ", ""], backgroundColor, highlighted === 'true' ? 'pointer' : 'default', typographyTemplate(theme.typography), spacingsTemplate(theme.spacings), isdisabled === 'true' ? css(["color:", ";"], theme.states.disabled.typography.color) : '');
21
21
  });
22
22
  var AutocompleteOption = /*#__PURE__*/forwardRef(function AutocompleteOption(_ref2, ref) {
23
23
  var value = _ref2.value,
24
- multiple = _ref2.multiple,
25
- isSelected = _ref2.isSelected,
26
- isDisabled = _ref2.isDisabled,
27
- _onClick = _ref2.onClick,
28
- ariaSelected = _ref2['aria-selected'],
29
- other = _objectWithoutProperties(_ref2, _excluded);
30
-
24
+ multiple = _ref2.multiple,
25
+ isSelected = _ref2.isSelected,
26
+ isDisabled = _ref2.isDisabled,
27
+ _onClick = _ref2.onClick,
28
+ ariaSelected = _ref2['aria-selected'],
29
+ other = _objectWithoutProperties(_ref2, _excluded);
31
30
  return /*#__PURE__*/jsxs(StyledListItem, _objectSpread(_objectSpread({
32
31
  ref: ref,
33
32
  isdisabled: isDisabled ? 'true' : 'false',
@@ -23,14 +23,13 @@ var StyledImage = styled.img.withConfig({
23
23
  });
24
24
  var Avatar = /*#__PURE__*/forwardRef(function Avatar(_ref3, ref) {
25
25
  var _ref3$src = _ref3.src,
26
- src = _ref3$src === void 0 ? null : _ref3$src,
27
- alt = _ref3.alt,
28
- _ref3$size = _ref3.size,
29
- size = _ref3$size === void 0 ? 24 : _ref3$size,
30
- _ref3$disabled = _ref3.disabled,
31
- disabled = _ref3$disabled === void 0 ? false : _ref3$disabled,
32
- rest = _objectWithoutProperties(_ref3, _excluded);
33
-
26
+ src = _ref3$src === void 0 ? null : _ref3$src,
27
+ alt = _ref3.alt,
28
+ _ref3$size = _ref3.size,
29
+ size = _ref3$size === void 0 ? 24 : _ref3$size,
30
+ _ref3$disabled = _ref3.disabled,
31
+ disabled = _ref3$disabled === void 0 ? false : _ref3$disabled,
32
+ rest = _objectWithoutProperties(_ref3, _excluded);
34
33
  return /*#__PURE__*/jsx(StyledAvatar, _objectSpread(_objectSpread({
35
34
  size: size,
36
35
  disabled: disabled,
@@ -16,7 +16,7 @@ var Content = styled.div.withConfig({
16
16
  componentId: "sc-1ju451i-0"
17
17
  })(function (_ref) {
18
18
  var theme = _ref.theme,
19
- hasIcon = _ref.hasIcon;
19
+ hasIcon = _ref.hasIcon;
20
20
  return css(["", " display:grid;grid-template-columns:", ";align-items:center;background-color:", ";"], spacingsTemplate(theme.spacings), hasIcon ? 'min-content 1fr auto' : '1fr auto', theme.background);
21
21
  });
22
22
  var NonMarginDivider = styled(Divider).withConfig({
@@ -25,25 +25,21 @@ var NonMarginDivider = styled(Divider).withConfig({
25
25
  })(["margin:0;height:2px;"]);
26
26
  var Banner = /*#__PURE__*/forwardRef(function Banner(_ref2, ref) {
27
27
  var children = _ref2.children,
28
- className = _ref2.className,
29
- _ref2$elevation = _ref2.elevation,
30
- elevation = _ref2$elevation === void 0 ? 'none' : _ref2$elevation,
31
- rest = _objectWithoutProperties(_ref2, _excluded);
32
-
28
+ className = _ref2.className,
29
+ _ref2$elevation = _ref2.elevation,
30
+ elevation = _ref2$elevation === void 0 ? 'none' : _ref2$elevation,
31
+ rest = _objectWithoutProperties(_ref2, _excluded);
33
32
  var childrenWhereBannerIcon = Children.map(children, function (child) {
34
33
  return /*#__PURE__*/isValidElement(child) && child.type === BannerIcon;
35
34
  });
36
35
  var hasIcon = childrenWhereBannerIcon.some(function (bool) {
37
36
  return bool;
38
37
  });
39
-
40
38
  var props = _objectSpread({
41
39
  ref: ref
42
40
  }, rest);
43
-
44
41
  var _useEds = useEds(),
45
- density = _useEds.density;
46
-
42
+ density = _useEds.density;
47
43
  var token = useToken({
48
44
  density: density
49
45
  }, enabled);