@atlaskit/react-select 1.5.2 → 1.6.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 (60) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/cjs/components/group.js +2 -7
  3. package/dist/cjs/components/index.js +0 -3
  4. package/dist/cjs/components/indicators.js +54 -133
  5. package/dist/cjs/components/input.js +5 -8
  6. package/dist/cjs/components/menu.js +16 -18
  7. package/dist/cjs/components/multi-value.js +47 -10
  8. package/dist/cjs/components/single-value.js +1 -2
  9. package/dist/cjs/index.js +0 -7
  10. package/dist/cjs/select.js +88 -131
  11. package/dist/cjs/styles.js +0 -1
  12. package/dist/cjs/utils.js +1 -2
  13. package/dist/es2019/components/group.js +2 -7
  14. package/dist/es2019/components/index.js +1 -4
  15. package/dist/es2019/components/indicators.js +39 -113
  16. package/dist/es2019/components/input.js +5 -9
  17. package/dist/es2019/components/menu.js +16 -26
  18. package/dist/es2019/components/multi-value.js +48 -12
  19. package/dist/es2019/components/single-value.js +1 -4
  20. package/dist/es2019/index.js +0 -1
  21. package/dist/es2019/select.js +7 -52
  22. package/dist/es2019/styles.js +1 -2
  23. package/dist/es2019/utils.js +0 -2
  24. package/dist/esm/components/group.js +2 -7
  25. package/dist/esm/components/index.js +1 -4
  26. package/dist/esm/components/indicators.js +54 -133
  27. package/dist/esm/components/input.js +5 -8
  28. package/dist/esm/components/menu.js +16 -18
  29. package/dist/esm/components/multi-value.js +48 -11
  30. package/dist/esm/components/single-value.js +1 -2
  31. package/dist/esm/index.js +0 -1
  32. package/dist/esm/select.js +88 -131
  33. package/dist/esm/styles.js +1 -2
  34. package/dist/esm/utils.js +1 -2
  35. package/dist/types/components/group.d.ts +1 -2
  36. package/dist/types/components/index.d.ts +16 -22
  37. package/dist/types/components/indicators.d.ts +1 -16
  38. package/dist/types/components/input.d.ts +1 -1
  39. package/dist/types/components/menu.d.ts +3 -3
  40. package/dist/types/components/multi-value.d.ts +3 -2
  41. package/dist/types/components/single-value.d.ts +1 -1
  42. package/dist/types/index.d.ts +1 -3
  43. package/dist/types/select.d.ts +15 -28
  44. package/dist/types/styles.d.ts +1 -3
  45. package/dist/types/theme.d.ts +0 -1
  46. package/dist/types/types.d.ts +0 -1
  47. package/dist/types-ts4.5/components/group.d.ts +1 -2
  48. package/dist/types-ts4.5/components/index.d.ts +16 -22
  49. package/dist/types-ts4.5/components/indicators.d.ts +1 -16
  50. package/dist/types-ts4.5/components/input.d.ts +1 -1
  51. package/dist/types-ts4.5/components/menu.d.ts +3 -3
  52. package/dist/types-ts4.5/components/multi-value.d.ts +3 -2
  53. package/dist/types-ts4.5/components/single-value.d.ts +1 -1
  54. package/dist/types-ts4.5/index.d.ts +1 -3
  55. package/dist/types-ts4.5/select.d.ts +15 -28
  56. package/dist/types-ts4.5/styles.d.ts +1 -3
  57. package/dist/types-ts4.5/theme.d.ts +0 -1
  58. package/dist/types-ts4.5/types.d.ts +0 -1
  59. package/package.json +8 -2
  60. package/types/package.json +17 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @atlaskit/react-select
2
2
 
3
+ ## 1.6.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#177875](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/177875)
8
+ [`d0c3d27216b7c`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/d0c3d27216b7c) -
9
+ Remove theme prop and merge customized components for performance
10
+
3
11
  ## 1.5.2
4
12
 
5
13
  ### Patch Changes
@@ -31,15 +31,11 @@ var Group = function Group(props) {
31
31
  headingProps = props.headingProps,
32
32
  innerProps = props.innerProps,
33
33
  label = props.label,
34
- theme = props.theme,
35
34
  selectProps = props.selectProps;
36
35
  return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(props, 'group', {
37
36
  group: true
38
37
  }), innerProps), (0, _react.jsx)(Heading, (0, _extends2.default)({}, headingProps, {
39
- selectProps: selectProps
40
- // eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
41
- ,
42
- theme: theme,
38
+ selectProps: selectProps,
43
39
  getStyles: getStyles,
44
40
  getClassNames: getClassNames,
45
41
  cx: cx
@@ -51,13 +47,12 @@ var groupHeadingCSS = exports.groupHeadingCSS = function groupHeadingCSS(_ref2)
51
47
  label: 'group',
52
48
  cursor: 'default',
53
49
  display: 'block',
54
- fontSize: '75%',
55
50
  marginBottom: '0.25em',
56
51
  paddingLeft: "var(--ds-space-150, 12px)",
57
52
  paddingRight: "var(--ds-space-150, 12px)",
58
53
  font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
59
54
  color: "var(--ds-text-subtle, #44546F)",
60
- fontWeight: "var(--ds-font-weight-bold, 700)".concat(" !important"),
55
+ fontWeight: "var(--ds-font-weight-bold, 700)",
61
56
  textTransform: 'none'
62
57
  };
63
58
  };
@@ -25,12 +25,9 @@ var components = exports.components = {
25
25
  ClearIndicator: _indicators.ClearIndicator,
26
26
  Control: _control.default,
27
27
  DropdownIndicator: _indicators.DropdownIndicator,
28
- DownChevron: _indicators.DownChevron,
29
- CrossIcon: _indicators.CrossIcon,
30
28
  Group: _group.default,
31
29
  GroupHeading: _group.GroupHeading,
32
30
  IndicatorsContainer: _containers.IndicatorsContainer,
33
- IndicatorSeparator: _indicators.IndicatorSeparator,
34
31
  Input: _input.default,
35
32
  LoadingIndicator: _indicators.LoadingIndicator,
36
33
  Menu: _menu.default,
@@ -4,14 +4,17 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.loadingIndicatorCSS = exports.indicatorSeparatorCSS = exports.dropdownIndicatorCSS = exports.clearIndicatorCSS = exports.LoadingIndicator = exports.IndicatorSeparator = exports.DropdownIndicator = exports.DownChevron = exports.CrossIcon = exports.ClearIndicator = void 0;
7
+ exports.loadingIndicatorCSS = exports.dropdownIndicatorCSS = exports.clearIndicatorCSS = exports.LoadingIndicator = exports.DropdownIndicator = exports.ClearIndicator = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
  var _react = require("@emotion/react");
12
+ var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/utility/migration/chevron-down"));
13
+ var _crossCircleSelectClear = _interopRequireDefault(require("@atlaskit/icon/utility/migration/cross-circle--select-clear"));
14
+ var _primitives = require("@atlaskit/primitives");
15
+ var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
12
16
  var _utils = require("../utils");
13
- var _excluded = ["size"],
14
- _excluded2 = ["innerProps", "isRtl", "size"];
17
+ var _excluded = ["innerProps", "isRtl", "size"];
15
18
  /**
16
19
  * @jsxRuntime classic
17
20
  * @jsx jsx
@@ -22,56 +25,25 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
22
25
  // Dropdown & Clear Icons
23
26
  // ==============================
24
27
 
25
- var styles = (0, _react.css)({
26
- display: 'inline-block',
27
- fill: 'currentColor',
28
- lineHeight: 1,
29
- stroke: 'currentColor',
30
- strokeWidth: 0
28
+ var iconContainerStyles = (0, _primitives.xcss)({
29
+ all: 'unset',
30
+ outline: 'revert',
31
+ display: 'flex',
32
+ alignItems: 'center',
33
+ justifyContent: 'center',
34
+ padding: 'space.025'
35
+ });
36
+ var dropdownWrapperStyles = (0, _primitives.xcss)({
37
+ padding: 'space.075'
31
38
  });
32
- var Svg = function Svg(_ref) {
33
- var size = _ref.size,
34
- props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
35
- return (0, _react.jsx)("svg", (0, _extends2.default)({
36
- height: size,
37
- width: size,
38
- viewBox: "0 0 20 20",
39
- "aria-hidden": "true",
40
- focusable: "false",
41
- css: styles
42
- // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
43
- }, props));
44
- };
45
- // eslint-disable-next-line @repo/internal/react/require-jsdoc
46
- var CrossIcon = exports.CrossIcon = function CrossIcon(props) {
47
- return (
48
- // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
49
- (0, _react.jsx)(Svg, (0, _extends2.default)({
50
- size: 20
51
- }, props), (0, _react.jsx)("path", {
52
- d: "M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"
53
- }))
54
- );
55
- };
56
- // eslint-disable-next-line @repo/internal/react/require-jsdoc
57
- var DownChevron = exports.DownChevron = function DownChevron(props) {
58
- return (
59
- // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
60
- (0, _react.jsx)(Svg, (0, _extends2.default)({
61
- size: 20
62
- }, props), (0, _react.jsx)("path", {
63
- d: "M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"
64
- }))
65
- );
66
- };
67
39
 
68
40
  // ==============================
69
41
  // Dropdown & Clear Buttons
70
42
  // ==============================
71
43
 
72
- var dropdownIndicatorCSS = exports.dropdownIndicatorCSS = function dropdownIndicatorCSS(_ref2) {
73
- var isCompact = _ref2.isCompact,
74
- isDisabled = _ref2.isDisabled;
44
+ var dropdownIndicatorCSS = exports.dropdownIndicatorCSS = function dropdownIndicatorCSS(_ref) {
45
+ var isCompact = _ref.isCompact,
46
+ isDisabled = _ref.isDisabled;
75
47
  return {
76
48
  label: 'indicatorContainer',
77
49
  display: 'flex',
@@ -86,15 +58,22 @@ var dropdownIndicatorCSS = exports.dropdownIndicatorCSS = function dropdownIndic
86
58
 
87
59
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
88
60
  var DropdownIndicator = exports.DropdownIndicator = function DropdownIndicator(props) {
89
- var children = props.children,
90
- innerProps = props.innerProps;
61
+ var innerProps = props.innerProps,
62
+ children = props.children;
91
63
  return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(props, 'dropdownIndicator', {
92
64
  indicator: true,
93
65
  'dropdown-indicator': true
94
- }), innerProps), children || (0, _react.jsx)(DownChevron, null));
66
+ }), innerProps), children ? children : (0, _react.jsx)(_primitives.Inline, {
67
+ as: "span",
68
+ xcss: dropdownWrapperStyles
69
+ }, (0, _react.jsx)(_chevronDown.default, {
70
+ color: "currentColor",
71
+ label: "open",
72
+ LEGACY_margin: "var(--ds-space-negative-075, -0.375rem)"
73
+ })));
95
74
  };
96
- var clearIndicatorCSS = exports.clearIndicatorCSS = function clearIndicatorCSS(_ref3) {
97
- var isCompact = _ref3.isCompact;
75
+ var clearIndicatorCSS = exports.clearIndicatorCSS = function clearIndicatorCSS(_ref2) {
76
+ var isCompact = _ref2.isCompact;
98
77
  return {
99
78
  label: 'indicatorContainer',
100
79
  display: 'flex',
@@ -109,35 +88,21 @@ var clearIndicatorCSS = exports.clearIndicatorCSS = function clearIndicatorCSS(_
109
88
 
110
89
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
111
90
  var ClearIndicator = exports.ClearIndicator = function ClearIndicator(props) {
112
- var children = props.children,
113
- innerProps = props.innerProps;
91
+ var innerProps = props.innerProps,
92
+ _props$clearControlLa = props.clearControlLabel,
93
+ clearControlLabel = _props$clearControlLa === void 0 ? 'clear' : _props$clearControlLa;
114
94
  return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(props, 'clearIndicator', {
115
95
  indicator: true,
116
96
  'clear-indicator': true
117
- }), innerProps), children || (0, _react.jsx)(CrossIcon, null));
118
- };
119
-
120
- // ==============================
121
- // Separator
122
- // ==============================
123
-
124
- var indicatorSeparatorCSS = exports.indicatorSeparatorCSS = function indicatorSeparatorCSS(_ref4) {
125
- var isDisabled = _ref4.isDisabled;
126
- return {
127
- label: 'indicatorSeparator',
128
- alignSelf: 'stretch',
129
- width: 1,
130
- backgroundColor: isDisabled ? "var(--ds-border-disabled, #091E420F)" : "var(--ds-border, #091E4224)",
131
- marginBottom: "var(--ds-space-100, 8px)",
132
- marginTop: "var(--ds-space-100, 8px)"
133
- };
134
- };
135
-
136
- // eslint-disable-next-line @repo/internal/react/require-jsdoc
137
- var IndicatorSeparator = exports.IndicatorSeparator = function IndicatorSeparator(props) {
138
- var innerProps = props.innerProps;
139
- return (0, _react.jsx)("span", (0, _extends2.default)({}, innerProps, (0, _utils.getStyleProps)(props, 'indicatorSeparator', {
140
- 'indicator-separator': true
97
+ }), innerProps), (0, _react.jsx)(_primitives.Pressable, {
98
+ xcss: iconContainerStyles,
99
+ tabIndex: -1,
100
+ "aria-label": clearControlLabel
101
+ }, (0, _react.jsx)(_crossCircleSelectClear.default, {
102
+ label: "",
103
+ color: "currentColor",
104
+ LEGACY_size: "small",
105
+ LEGACY_margin: "var(--ds-space-negative-025, -0.125rem)"
141
106
  })));
142
107
  };
143
108
 
@@ -145,57 +110,20 @@ var IndicatorSeparator = exports.IndicatorSeparator = function IndicatorSeparato
145
110
  // Loading
146
111
  // ==============================
147
112
 
148
- var loadingDotAnimations = (0, _react.keyframes)({
149
- '0%, 80%, 100%': {
150
- opacity: 0
151
- },
152
- '40%': {
153
- opacity: 1
154
- }
155
- });
156
- var loadingIndicatorCSS = exports.loadingIndicatorCSS = function loadingIndicatorCSS(_ref5) {
157
- var isFocused = _ref5.isFocused,
158
- size = _ref5.size,
159
- isCompact = _ref5.isCompact,
160
- colors = _ref5.theme.colors;
113
+ var loadingIndicatorCSS = exports.loadingIndicatorCSS = function loadingIndicatorCSS(_ref3) {
114
+ var isCompact = _ref3.isCompact;
161
115
  return {
162
116
  label: 'loadingIndicator',
163
- display: 'flex',
164
- transition: 'color 150ms',
165
- alignSelf: 'center',
166
- fontSize: size,
167
- lineHeight: 1,
168
- marginRight: size,
169
- textAlign: 'center',
170
- verticalAlign: 'middle',
171
- color: isFocused ? colors.neutral60 : colors.neutral20,
172
117
  padding: "".concat(isCompact ? 0 : "var(--ds-space-075, 6px)", " ", "var(--ds-space-100, 8px)")
173
118
  };
174
119
  };
175
- var LoadingDot = function LoadingDot(_ref6) {
176
- var delay = _ref6.delay,
177
- offset = _ref6.offset;
178
- return (0, _react.jsx)("span", {
179
- // eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
180
- css: {
181
- animation: "".concat(loadingDotAnimations, " 1s ease-in-out ").concat(delay, "ms infinite;"),
182
- backgroundColor: 'currentColor',
183
- borderRadius: '1em',
184
- display: 'inline-block',
185
- marginLeft: offset ? '1em' : undefined,
186
- height: '1em',
187
- verticalAlign: 'top',
188
- width: '1em'
189
- }
190
- });
191
- };
192
120
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
193
- var LoadingIndicator = exports.LoadingIndicator = function LoadingIndicator(_ref7) {
194
- var innerProps = _ref7.innerProps,
195
- isRtl = _ref7.isRtl,
196
- _ref7$size = _ref7.size,
197
- size = _ref7$size === void 0 ? 4 : _ref7$size,
198
- restProps = (0, _objectWithoutProperties2.default)(_ref7, _excluded2);
121
+ var LoadingIndicator = exports.LoadingIndicator = function LoadingIndicator(_ref4) {
122
+ var innerProps = _ref4.innerProps,
123
+ isRtl = _ref4.isRtl,
124
+ _ref4$size = _ref4.size,
125
+ size = _ref4$size === void 0 ? 4 : _ref4$size,
126
+ restProps = (0, _objectWithoutProperties2.default)(_ref4, _excluded);
199
127
  return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(_objectSpread(_objectSpread({}, restProps), {}, {
200
128
  innerProps: innerProps,
201
129
  isRtl: isRtl,
@@ -203,14 +131,7 @@ var LoadingIndicator = exports.LoadingIndicator = function LoadingIndicator(_ref
203
131
  }), 'loadingIndicator', {
204
132
  indicator: true,
205
133
  'loading-indicator': true
206
- }), innerProps), (0, _react.jsx)(LoadingDot, {
207
- delay: 0,
208
- offset: isRtl
209
- }), (0, _react.jsx)(LoadingDot, {
210
- delay: 160,
211
- offset: true
212
- }), (0, _react.jsx)(LoadingDot, {
213
- delay: 320,
214
- offset: !isRtl
134
+ }), innerProps), (0, _react.jsx)(_spinner.default, {
135
+ size: "small"
215
136
  }));
216
137
  };
@@ -18,20 +18,17 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
18
18
  */
19
19
  var inputCSS = exports.inputCSS = function inputCSS(_ref) {
20
20
  var isDisabled = _ref.isDisabled,
21
- value = _ref.value,
22
- _ref$theme = _ref.theme,
23
- spacing = _ref$theme.spacing,
24
- colors = _ref$theme.colors;
21
+ value = _ref.value;
25
22
  return _objectSpread(_objectSpread({
26
23
  visibility: isDisabled ? 'hidden' : 'visible',
27
24
  // force css to recompute when value change due to @emotion bug.
28
25
  // We can remove it whenever the bug is fixed.
29
26
  transform: value ? 'translateZ(0)' : ''
30
27
  }, containerStyle), {}, {
31
- margin: spacing.baseUnit / 2,
32
- paddingBottom: spacing.baseUnit / 2,
33
- paddingTop: spacing.baseUnit / 2,
34
- color: "var(--ds-text, hsl(0, 0%, 20%))"
28
+ margin: "var(--ds-space-025, 2px)",
29
+ paddingBottom: "var(--ds-space-025, 2px)",
30
+ paddingTop: "var(--ds-space-025, 2px)",
31
+ color: "var(--ds-text, #172B4D)"
35
32
  });
36
33
  };
37
34
  var spacingStyle = {
@@ -8,6 +8,7 @@ exports.default = exports.NoOptionsMessage = exports.MenuPortal = exports.MenuPl
8
8
  exports.getMenuPlacement = getMenuPlacement;
9
9
  exports.noOptionsMessageCSS = exports.menuPortalCSS = exports.menuListCSS = exports.menuCSS = exports.loadingMessageCSS = void 0;
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
11
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
12
13
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
@@ -17,6 +18,7 @@ var _dom = require("@floating-ui/dom");
17
18
  var _reactDom = require("react-dom");
18
19
  var _useIsomorphicLayoutEffect = _interopRequireDefault(require("use-isomorphic-layout-effect"));
19
20
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
21
+ var _primitives = require("@atlaskit/primitives");
20
22
  var _utils = require("../utils");
21
23
  var _excluded = ["children", "innerProps"],
22
24
  _excluded2 = ["children", "innerProps"];
@@ -204,15 +206,10 @@ var coercePlacement = function coercePlacement(p) {
204
206
  return p === 'auto' ? 'bottom' : p;
205
207
  };
206
208
  var menuCSS = exports.menuCSS = function menuCSS(_ref2) {
207
- var _ref3;
208
- var placement = _ref2.placement,
209
- _ref2$theme = _ref2.theme,
210
- borderRadius = _ref2$theme.borderRadius,
211
- spacing = _ref2$theme.spacing,
212
- colors = _ref2$theme.colors;
213
- return _ref3 = {
209
+ var placement = _ref2.placement;
210
+ return (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
214
211
  label: 'menu'
215
- }, (0, _defineProperty2.default)(_ref3, alignToControl(placement), '100%'), (0, _defineProperty2.default)(_ref3, "position", 'absolute'), (0, _defineProperty2.default)(_ref3, "width", '100%'), (0, _defineProperty2.default)(_ref3, "zIndex", 1), (0, _defineProperty2.default)(_ref3, "borderRadius", borderRadius), (0, _defineProperty2.default)(_ref3, "marginBottom", spacing.menuGutter), (0, _defineProperty2.default)(_ref3, "marginTop", spacing.menuGutter), (0, _defineProperty2.default)(_ref3, "backgroundColor", "var(--ds-surface-overlay, white)"), (0, _defineProperty2.default)(_ref3, "boxShadow", "var(--ds-shadow-overlay, 0 0 0 1px hsl(0deg 0% 0% / 10%), 0 4px 11px hsl(0deg 0% 0% / 10%))"), _ref3;
212
+ }, alignToControl(placement), '100%'), "position", 'absolute'), "width", '100%'), "zIndex", 1), "borderRadius", "var(--ds-border-radius, 4px)"), "marginBottom", "var(--ds-space-100, 8px)"), "marginTop", "var(--ds-space-100, 8px)"), "backgroundColor", "var(--ds-surface-overlay, white)"), "boxShadow", "var(--ds-shadow-overlay, 0 0 0 1px hsl(0deg 0% 0% / 10%), 0 4px 11px hsl(0deg 0% 0% / 10%))");
216
213
  };
217
214
  var PortalPlacementContext = /*#__PURE__*/(0, _react.createContext)(null);
218
215
 
@@ -224,8 +221,7 @@ var MenuPlacer = exports.MenuPlacer = function MenuPlacer(props) {
224
221
  maxMenuHeight = props.maxMenuHeight,
225
222
  menuPlacement = props.menuPlacement,
226
223
  menuPosition = props.menuPosition,
227
- menuShouldScrollIntoView = props.menuShouldScrollIntoView,
228
- theme = props.theme;
224
+ menuShouldScrollIntoView = props.menuShouldScrollIntoView;
229
225
  var _ref4 = (0, _react.useContext)(PortalPlacementContext) || {},
230
226
  setPortalPlacement = _ref4.setPortalPlacement;
231
227
  var ref = (0, _react.useRef)(null);
@@ -237,7 +233,8 @@ var MenuPlacer = exports.MenuPlacer = function MenuPlacer(props) {
237
233
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
238
234
  placement = _useState4[0],
239
235
  setPlacement = _useState4[1];
240
- var controlHeight = theme.spacing.controlHeight;
236
+ // The minimum height of the control
237
+ var controlHeight = 38;
241
238
  (0, _useIsomorphicLayoutEffect.default)(function () {
242
239
  var menuEl = ref.current;
243
240
  if (!menuEl) {
@@ -317,13 +314,10 @@ var MenuList = exports.MenuList = function MenuList(props) {
317
314
  // ==============================
318
315
 
319
316
  var noticeCSS = function noticeCSS(_ref6) {
320
- var _ref6$theme = _ref6.theme,
321
- baseUnit = _ref6$theme.spacing.baseUnit,
322
- colors = _ref6$theme.colors;
317
+ (0, _objectDestructuringEmpty2.default)(_ref6);
323
318
  return {
324
319
  textAlign: 'center',
325
- color: colors.neutral40,
326
- padding: "".concat(baseUnit * 2, "px ").concat(baseUnit * 3, "px")
320
+ padding: "var(--ds-space-100, 8px)".concat(" ", "var(--ds-space-150, 12px)")
327
321
  };
328
322
  };
329
323
  var noOptionsMessageCSS = exports.noOptionsMessageCSS = noticeCSS;
@@ -343,7 +337,9 @@ var NoOptionsMessage = exports.NoOptionsMessage = function NoOptionsMessage(_ref
343
337
  }), {
344
338
  // eslint-disable-next-line jsx-a11y/role-has-required-aria-props
345
339
  role: "option"
346
- }, innerProps), children);
340
+ }, innerProps), (0, _react2.jsx)(_primitives.Text, {
341
+ color: "color.text.subtle"
342
+ }, children));
347
343
  };
348
344
 
349
345
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
@@ -361,7 +357,9 @@ var LoadingMessage = exports.LoadingMessage = function LoadingMessage(_ref8) {
361
357
  }), innerProps, {
362
358
  // eslint-disable-next-line jsx-a11y/role-has-required-aria-props
363
359
  role: "option"
364
- }), children);
360
+ }), (0, _react2.jsx)(_primitives.Text, {
361
+ color: "color.text.subtle"
362
+ }, children));
365
363
  };
366
364
 
367
365
  // ==============================
@@ -10,9 +10,11 @@ exports.multiValueRemoveCSS = exports.multiValueLabelCSS = exports.multiValueCSS
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
12
  var _react = require("@emotion/react");
13
+ var _selectClear = _interopRequireDefault(require("@atlaskit/icon/glyph/select-clear"));
14
+ var _cross = _interopRequireDefault(require("@atlaskit/icon/utility/cross"));
13
15
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
16
+ var _primitives = require("@atlaskit/primitives");
14
17
  var _utils = require("../utils");
15
- var _indicators = require("./indicators");
16
18
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
19
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /**
18
20
  * @jsxRuntime classic
@@ -20,11 +22,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
20
22
  */
21
23
  var multiValueCSS = exports.multiValueCSS = function multiValueCSS(_ref) {
22
24
  var isDisabled = _ref.isDisabled,
23
- isFocused = _ref.isFocused,
24
- _ref$theme = _ref.theme,
25
- spacing = _ref$theme.spacing,
26
- borderRadius = _ref$theme.borderRadius,
27
- colors = _ref$theme.colors;
25
+ isFocused = _ref.isFocused;
28
26
  var backgroundColor;
29
27
  var color;
30
28
  if (isDisabled) {
@@ -135,14 +133,52 @@ var MultiValueContainer = exports.MultiValueContainer = MultiValueGeneric;
135
133
 
136
134
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
137
135
  var MultiValueLabel = exports.MultiValueLabel = MultiValueGeneric;
136
+ var disabledStyles = (0, _react.css)({
137
+ display: 'none'
138
+ });
139
+ var enabledStyles = (0, _react.css)({
140
+ display: 'inherit'
141
+ });
142
+ var iconWrapperStyles = (0, _primitives.xcss)({
143
+ padding: 'space.025'
144
+ });
145
+ var renderIcon = function renderIcon() {
146
+ // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
147
+ if ((0, _platformFeatureFlags.fg)('platform-component-visual-refresh')) {
148
+ return (0, _react.jsx)(_cross.default, {
149
+ label: "Clear",
150
+ color: "currentColor"
151
+ });
152
+ }
153
+
154
+ // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
155
+ if ((0, _platformFeatureFlags.fg)('platform-visual-refresh-icons-legacy-facade')) {
156
+ return (0, _react.jsx)(_primitives.Inline, {
157
+ xcss: iconWrapperStyles
158
+ }, (0, _react.jsx)(_cross.default, {
159
+ label: "Clear",
160
+ color: "currentColor"
161
+ }));
162
+ }
163
+ return (
164
+ // eslint-disable-next-line @atlaskit/design-system/no-legacy-icons
165
+ (0, _react.jsx)(_selectClear.default, {
166
+ label: "Clear",
167
+ primaryColor: "transparent",
168
+ size: "small",
169
+ secondaryColor: "inherit"
170
+ })
171
+ );
172
+ };
138
173
  function MultiValueRemove(_ref5) {
139
- var children = _ref5.children,
174
+ var isDisabled = _ref5.isDisabled,
140
175
  innerProps = _ref5.innerProps;
141
176
  return (0, _react.jsx)("div", (0, _extends2.default)({
142
177
  role: "button"
143
- }, innerProps), children || (0, _react.jsx)(_indicators.CrossIcon, {
144
- size: 14
145
- }));
178
+ }, innerProps), (0, _react.jsx)("div", {
179
+ css: isDisabled ? disabledStyles : enabledStyles,
180
+ "data-testid": isDisabled ? 'hide-clear-icon' : 'show-clear-icon'
181
+ }, renderIcon()));
146
182
  }
147
183
  var MultiValue = function MultiValue(props) {
148
184
  var children = props.children,
@@ -175,6 +211,7 @@ var MultiValue = function MultiValue(props) {
175
211
  })), {}, {
176
212
  'aria-label': "Remove ".concat(children || 'option')
177
213
  }, removeProps),
214
+ isDisabled: isDisabled,
178
215
  selectProps: selectProps
179
216
  }));
180
217
  };
@@ -14,8 +14,7 @@ var _utils = require("../utils");
14
14
  */
15
15
 
16
16
  var css = exports.css = function css(_ref) {
17
- var isDisabled = _ref.isDisabled,
18
- spacing = _ref.theme.spacing;
17
+ var isDisabled = _ref.isDisabled;
19
18
  return {
20
19
  label: 'singleValue',
21
20
  gridArea: '1 / 1 / 2 / 3',
package/dist/cjs/index.js CHANGED
@@ -22,12 +22,6 @@ Object.defineProperty(exports, "default", {
22
22
  return _stateManager.default;
23
23
  }
24
24
  });
25
- Object.defineProperty(exports, "defaultTheme", {
26
- enumerable: true,
27
- get: function get() {
28
- return _theme.defaultTheme;
29
- }
30
- });
31
25
  Object.defineProperty(exports, "mergeStyles", {
32
26
  enumerable: true,
33
27
  get: function get() {
@@ -43,6 +37,5 @@ Object.defineProperty(exports, "useStateManager", {
43
37
  var _useStateManager = _interopRequireDefault(require("./use-state-manager"));
44
38
  var _stateManager = _interopRequireDefault(require("./state-manager"));
45
39
  var _styles = require("./styles");
46
- var _theme = require("./theme");
47
40
  var _filters = require("./filters");
48
41
  var _components = require("./components");