@atlaskit/react-select 3.16.1 → 4.0.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 (154) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/accessibility/package.json +1 -8
  3. package/async/package.json +1 -8
  4. package/async-creatable/package.json +1 -8
  5. package/base/package.json +1 -8
  6. package/clear-indicator/package.json +1 -8
  7. package/components/package.json +1 -8
  8. package/control/package.json +1 -8
  9. package/creatable/package.json +1 -8
  10. package/dist/cjs/components/control.compiled.css +3 -3
  11. package/dist/cjs/components/control.js +1 -1
  12. package/dist/cjs/components/index.js +1 -0
  13. package/dist/cjs/components/multi-value.js +13 -2
  14. package/dist/cjs/internal/select-get-styles-context.js +20 -0
  15. package/dist/cjs/internal/use-select-get-styles.js +18 -0
  16. package/dist/cjs/select.js +6 -3
  17. package/dist/es2019/components/control.compiled.css +3 -3
  18. package/dist/es2019/components/control.js +1 -1
  19. package/dist/es2019/components/index.js +1 -0
  20. package/dist/es2019/components/multi-value.js +13 -2
  21. package/dist/es2019/internal/select-get-styles-context.js +14 -0
  22. package/dist/es2019/internal/use-select-get-styles.js +10 -0
  23. package/dist/es2019/select.js +6 -3
  24. package/dist/esm/components/control.compiled.css +3 -3
  25. package/dist/esm/components/control.js +1 -1
  26. package/dist/esm/components/index.js +1 -0
  27. package/dist/esm/components/multi-value.js +13 -2
  28. package/dist/esm/internal/select-get-styles-context.js +14 -0
  29. package/dist/esm/internal/use-select-get-styles.js +12 -0
  30. package/dist/esm/select.js +6 -3
  31. package/dist/types/internal/select-get-styles-context.d.ts +12 -0
  32. package/dist/types/internal/use-select-get-styles.d.ts +1 -0
  33. package/dropdown-indicator/package.json +1 -8
  34. package/filters/package.json +1 -8
  35. package/group/package.json +1 -8
  36. package/group-heading/package.json +1 -8
  37. package/indicators-container/package.json +1 -8
  38. package/input/package.json +1 -8
  39. package/loading-indicator/package.json +1 -8
  40. package/menu/package.json +1 -8
  41. package/menu-list/package.json +1 -8
  42. package/menu-portal/package.json +1 -8
  43. package/multi-value/package.json +1 -8
  44. package/multi-value-remove/package.json +1 -8
  45. package/option/package.json +1 -8
  46. package/package.json +15 -21
  47. package/placeholder/package.json +1 -8
  48. package/select-container/package.json +1 -8
  49. package/single-value/package.json +1 -8
  50. package/state-manager/package.json +1 -8
  51. package/styles/package.json +1 -8
  52. package/types/package.json +1 -8
  53. package/use-async/package.json +1 -8
  54. package/use-creatable/package.json +1 -8
  55. package/use-state-manager/package.json +1 -8
  56. package/value-container/package.json +1 -8
  57. package/dist/types-ts4.5/accessibility/index.d.ts +0 -123
  58. package/dist/types-ts4.5/async-creatable.d.ts +0 -10
  59. package/dist/types-ts4.5/async.d.ts +0 -8
  60. package/dist/types-ts4.5/builtins.d.ts +0 -4
  61. package/dist/types-ts4.5/colors.d.ts +0 -19
  62. package/dist/types-ts4.5/compiled/components/indicators-container.d.ts +0 -18
  63. package/dist/types-ts4.5/compiled/components/select-container.d.ts +0 -22
  64. package/dist/types-ts4.5/compiled/components/value-container.d.ts +0 -22
  65. package/dist/types-ts4.5/components/containers/indicators-container.d.ts +0 -18
  66. package/dist/types-ts4.5/components/containers/multi-value-container.d.ts +0 -6
  67. package/dist/types-ts4.5/components/containers/select-container.d.ts +0 -22
  68. package/dist/types-ts4.5/components/containers/value-container.d.ts +0 -22
  69. package/dist/types-ts4.5/components/control.d.ts +0 -40
  70. package/dist/types-ts4.5/components/dummy-input.d.ts +0 -8
  71. package/dist/types-ts4.5/components/group-heading.d.ts +0 -19
  72. package/dist/types-ts4.5/components/group.d.ts +0 -36
  73. package/dist/types-ts4.5/components/index.d.ts +0 -80
  74. package/dist/types-ts4.5/components/indicators/clear-indicator.d.ts +0 -29
  75. package/dist/types-ts4.5/components/indicators/dropdown-indicator.d.ts +0 -26
  76. package/dist/types-ts4.5/components/indicators/loading-indicator.d.ts +0 -25
  77. package/dist/types-ts4.5/components/input.d.ts +0 -35
  78. package/dist/types-ts4.5/components/live-region.d.ts +0 -17
  79. package/dist/types-ts4.5/components/menu-list.d.ts +0 -29
  80. package/dist/types-ts4.5/components/menu-loading-message.d.ts +0 -2
  81. package/dist/types-ts4.5/components/menu-no-options-message.d.ts +0 -2
  82. package/dist/types-ts4.5/components/menu-placer.d.ts +0 -49
  83. package/dist/types-ts4.5/components/menu-portal.d.ts +0 -23
  84. package/dist/types-ts4.5/components/menu.d.ts +0 -22
  85. package/dist/types-ts4.5/components/multi-value-label.d.ts +0 -6
  86. package/dist/types-ts4.5/components/multi-value-remove.d.ts +0 -20
  87. package/dist/types-ts4.5/components/multi-value.d.ts +0 -25
  88. package/dist/types-ts4.5/components/option.d.ts +0 -47
  89. package/dist/types-ts4.5/components/placeholder.d.ts +0 -20
  90. package/dist/types-ts4.5/components/single-value.d.ts +0 -26
  91. package/dist/types-ts4.5/creatable.d.ts +0 -9
  92. package/dist/types-ts4.5/diacritics.d.ts +0 -1
  93. package/dist/types-ts4.5/entry-points/accessibility.d.ts +0 -2
  94. package/dist/types-ts4.5/entry-points/async-creatable.d.ts +0 -2
  95. package/dist/types-ts4.5/entry-points/async.d.ts +0 -3
  96. package/dist/types-ts4.5/entry-points/base.d.ts +0 -3
  97. package/dist/types-ts4.5/entry-points/clear-indicator.d.ts +0 -2
  98. package/dist/types-ts4.5/entry-points/components.d.ts +0 -2
  99. package/dist/types-ts4.5/entry-points/control.d.ts +0 -2
  100. package/dist/types-ts4.5/entry-points/creatable.d.ts +0 -3
  101. package/dist/types-ts4.5/entry-points/dropdown-indicator.d.ts +0 -2
  102. package/dist/types-ts4.5/entry-points/filters.d.ts +0 -2
  103. package/dist/types-ts4.5/entry-points/group-heading.d.ts +0 -2
  104. package/dist/types-ts4.5/entry-points/group.d.ts +0 -2
  105. package/dist/types-ts4.5/entry-points/indicators-container.d.ts +0 -2
  106. package/dist/types-ts4.5/entry-points/input.d.ts +0 -2
  107. package/dist/types-ts4.5/entry-points/loading-indicator.d.ts +0 -2
  108. package/dist/types-ts4.5/entry-points/menu-list.d.ts +0 -2
  109. package/dist/types-ts4.5/entry-points/menu-portal.d.ts +0 -2
  110. package/dist/types-ts4.5/entry-points/menu.d.ts +0 -2
  111. package/dist/types-ts4.5/entry-points/multi-value-remove.d.ts +0 -2
  112. package/dist/types-ts4.5/entry-points/multi-value.d.ts +0 -2
  113. package/dist/types-ts4.5/entry-points/option.d.ts +0 -2
  114. package/dist/types-ts4.5/entry-points/placeholder.d.ts +0 -2
  115. package/dist/types-ts4.5/entry-points/select-container.d.ts +0 -2
  116. package/dist/types-ts4.5/entry-points/single-value.d.ts +0 -2
  117. package/dist/types-ts4.5/entry-points/state-manager.d.ts +0 -1
  118. package/dist/types-ts4.5/entry-points/styles.d.ts +0 -2
  119. package/dist/types-ts4.5/entry-points/types.d.ts +0 -1
  120. package/dist/types-ts4.5/entry-points/use-async.d.ts +0 -2
  121. package/dist/types-ts4.5/entry-points/use-creatable.d.ts +0 -2
  122. package/dist/types-ts4.5/entry-points/use-state-manager.d.ts +0 -2
  123. package/dist/types-ts4.5/entry-points/value-container.d.ts +0 -2
  124. package/dist/types-ts4.5/filters.d.ts +0 -14
  125. package/dist/types-ts4.5/format-group-label.d.ts +0 -2
  126. package/dist/types-ts4.5/get-option-label.d.ts +0 -1
  127. package/dist/types-ts4.5/get-option-value.d.ts +0 -1
  128. package/dist/types-ts4.5/get-style-props.d.ts +0 -6
  129. package/dist/types-ts4.5/index.d.ts +0 -34
  130. package/dist/types-ts4.5/internal/a11y-text.d.ts +0 -2
  131. package/dist/types-ts4.5/internal/classnames.d.ts +0 -2
  132. package/dist/types-ts4.5/internal/clean-common-props.d.ts +0 -2
  133. package/dist/types-ts4.5/internal/clean-value.d.ts +0 -2
  134. package/dist/types-ts4.5/internal/is-document-el.d.ts +0 -1
  135. package/dist/types-ts4.5/internal/multi-value-as-value.d.ts +0 -2
  136. package/dist/types-ts4.5/internal/notify-open-layer-observer.d.ts +0 -11
  137. package/dist/types-ts4.5/internal/passive-event-detector.d.ts +0 -1
  138. package/dist/types-ts4.5/internal/portal-placement-context.d.ts +0 -14
  139. package/dist/types-ts4.5/internal/required-input.d.ts +0 -10
  140. package/dist/types-ts4.5/internal/scroll-manager.d.ts +0 -12
  141. package/dist/types-ts4.5/internal/scroll-to.d.ts +0 -1
  142. package/dist/types-ts4.5/internal/single-value-as-value.d.ts +0 -2
  143. package/dist/types-ts4.5/internal/use-scroll-capture.d.ts +0 -12
  144. package/dist/types-ts4.5/internal/use-scroll-lock.d.ts +0 -9
  145. package/dist/types-ts4.5/internal/value-ternary.d.ts +0 -2
  146. package/dist/types-ts4.5/is-option-disabled.d.ts +0 -1
  147. package/dist/types-ts4.5/select.d.ts +0 -597
  148. package/dist/types-ts4.5/state-manager.d.ts +0 -16
  149. package/dist/types-ts4.5/styles.d.ts +0 -50
  150. package/dist/types-ts4.5/theme.d.ts +0 -6
  151. package/dist/types-ts4.5/types.d.ts +0 -154
  152. package/dist/types-ts4.5/use-async.d.ts +0 -31
  153. package/dist/types-ts4.5/use-creatable.d.ts +0 -46
  154. package/dist/types-ts4.5/use-state-manager.d.ts +0 -15
package/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # @atlaskit/react-select
2
2
 
3
+ ## 4.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [`f2dc9097319f0`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/f2dc9097319f0) - ###
8
+ Dropped support for _legacy_ Typescript 4 types. **Typescript 5 is now the new minimum**.
9
+
10
+ Removes the `typesVersions` property and `dist/types-ts4.5` directory from the dist.
11
+
12
+ Types are now exclusively via the `"types": "dist/types/index.d.ts"` property.
13
+
14
+ ```diff
15
+ - "typesVersions": {
16
+ - ">=4.5 <4.9": {
17
+ - "*": [
18
+ - "dist/types-ts4.5/*",
19
+ - "dist/types-ts4.5/index.d.ts"
20
+ - ]
21
+ - }
22
+ - },
23
+ ```
24
+
25
+ ### Patch Changes
26
+
27
+ - Updated dependencies
28
+
29
+ ## 3.16.2
30
+
31
+ ### Patch Changes
32
+
33
+ - [`6622a9a9710ad`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/6622a9a9710ad) -
34
+ [ux] Fix for select not detecting a case of custom styling and overwriting styles behind a ff.
35
+
3
36
  ## 3.16.1
4
37
 
5
38
  ### Patch Changes
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/accessibility.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/accessibility.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/accessibility.d.ts"
17
10
  }
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/async.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/async.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/async.d.ts"
17
10
  }
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/async-creatable.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/async-creatable.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/async-creatable.d.ts"
17
10
  }
package/base/package.json CHANGED
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/base.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/base.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/base.d.ts"
17
10
  }
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/clear-indicator.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/clear-indicator.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/clear-indicator.d.ts"
17
10
  }
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/components.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/components.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/components.d.ts"
17
10
  }
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/control.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/control.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/control.d.ts"
17
10
  }
@@ -6,12 +6,5 @@
6
6
  "sideEffects": [
7
7
  "**/*.compiled.css"
8
8
  ],
9
- "types": "../dist/types/entry-points/creatable.d.ts",
10
- "typesVersions": {
11
- ">=4.5 <5.9": {
12
- "*": [
13
- "../dist/types-ts4.5/entry-points/creatable.d.ts"
14
- ]
15
- }
16
- }
9
+ "types": "../dist/types/entry-points/creatable.d.ts"
17
10
  }
@@ -4,10 +4,10 @@
4
4
  ._v564r5cv{transition:background-color .2s ease-in-out,border-color .2s ease-in-out}
5
5
  ._189ee4h9{border-width:var(--ds-border-width,1px)}
6
6
  ._1dqonqa1{border-style:solid}
7
+ ._1h6d187o{border-color:var(--ds-background-disabled,#0515240f)}
7
8
  ._1h6d1bqt{border-color:var(--ds-border-danger,#e2483d)}
8
9
  ._1h6d1j28{border-color:transparent}
9
10
  ._1h6d1v1w{border-color:var(--ds-border-focused,#4688ec)}
10
- ._1h6dby5v{border-color:var(--ds-background-disabled,#17171708)}
11
11
  ._1h6drsbi{border-color:var(--ds-border-input,#8c8f97)}._123byq51:hover::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2)}
12
12
  ._12ji1r31{outline-color:currentColor}
13
13
  ._12y3idpf{outline-width:0}
@@ -25,9 +25,9 @@
25
25
  ._4cvr1h6o{align-items:center}
26
26
  ._80om73ad{cursor:default}
27
27
  ._85i5ze3t{padding-block-end:var(--ds-space-0,0)}
28
+ ._bfhk187o{background-color:var(--ds-background-disabled,#0515240f)}
28
29
  ._bfhk1j28{background-color:transparent}
29
30
  ._bfhk1j9a{background-color:var(--ds-background-input,#fff)}
30
- ._bfhkby5v{background-color:var(--ds-background-disabled,#17171708)}
31
31
  ._bfhkr01l{background-color:var(--ds-background-input-pressed,#fff)}
32
32
  ._bfhkvuon{background-color:var(--ds-surface,#fff)}
33
33
  ._bozgze3t{padding-inline-start:var(--ds-space-0,0)}
@@ -35,8 +35,8 @@
35
35
  ._kqswh2mm{position:relative}
36
36
  ._lcxvglyw{pointer-events:none}
37
37
  ._y4tize3t{padding-inline-end:var(--ds-space-0,0)}
38
- ._1u6l1s3b:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-background-disabled,#17171708)}
39
38
  ._1u6l3sij:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) transparent}
39
+ ._1u6lfrlt:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-background-disabled,#0515240f)}
40
40
  ._1u6lizbr:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-danger,#e2483d)}
41
41
  ._1u6luvb6:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-input,#8c8f97)}
42
42
  ._1u6lvyy1:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-focused,#4688ec)}
@@ -22,7 +22,7 @@ var styles = {
22
22
  compact: "_1tkezwfg",
23
23
  invalid: "_1h6d1bqt _16qsizbr _1u6lizbr _4cvx1bqt",
24
24
  focusedInvalid: "_16qsvyy1",
25
- disabled: "_1h6dby5v _lcxvglyw _bfhkby5v _1u6l1s3b",
25
+ disabled: "_1h6d187o _lcxvglyw _bfhk187o _1u6lfrlt",
26
26
  focused: "_1h6d1v1w _bfhkr01l _16qsvyy1 _1u6lvyy1 _4cvx1v1w _irr3r01l",
27
27
  subtle: "_1h6d1j28 _bfhk1j28 _1u6l3sij",
28
28
  subtleFocused: "_bfhkvuon",
@@ -56,6 +56,7 @@ var components = exports.components = {
56
56
  SingleValue: _singleValue.default,
57
57
  ValueContainer: _valueContainer.ValueContainer
58
58
  };
59
+ // eslint-disable-next-line @atlaskit/volt-strict-mode/no-multiple-exports
59
60
  var defaultComponents = exports.defaultComponents = function defaultComponents(props) {
60
61
  return _objectSpread(_objectSpread({}, components), props.components);
61
62
  };
@@ -16,6 +16,7 @@ var _react2 = require("@compiled/react");
16
16
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
17
17
  var _tag = _interopRequireDefault(require("@atlaskit/tag"));
18
18
  var _getStyleProps4 = require("../get-style-props");
19
+ var _useSelectGetStyles = require("../internal/use-select-get-styles");
19
20
  var _multiValueLabel = require("./multi-value-label");
20
21
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
21
22
  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; }
@@ -91,8 +92,18 @@ var MultiValue = function MultiValue(props) {
91
92
  removeCss = _getStyleProps3.css,
92
93
  removeClassName = _getStyleProps3.className;
93
94
  var hasCustomLabel = Label !== _multiValueLabel.MultiValueLabel;
94
- // Plain labels: use Tag with fillContainer so it truncates like tag-like structure.
95
- if (ffTagUplifts && isPlainLabel && !hasCustomLabel) {
95
+ var selectStyles = selectProps.styles;
96
+ var hasCustomMultiValueStyles = Boolean((selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValue) || (selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValueLabel) || (selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValueRemove));
97
+ var selectClassNames = selectProps.classNames;
98
+ var hasCustomMultiValueClassNames = Boolean((selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValue) || (selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValueLabel) || (selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValueRemove));
99
+ // Detect if getStyles was overridden directly on this component instance (e.g. via the
100
+ // components prop wrapper passing a custom getStyles). The context holds the original
101
+ // Select instance's getStyles — a reference inequality means a custom override was passed.
102
+ // When context is absent (e.g. in mocked/test contexts), assume no override.
103
+ var selectGetStyles = (0, _useSelectGetStyles.useSelectGetStyles)();
104
+ var hasOverriddenGetStyles = selectGetStyles !== undefined && props.getStyles !== selectGetStyles;
105
+ var hasCustomContainerStyles = hasCustomMultiValueStyles || hasCustomMultiValueClassNames || hasOverriddenGetStyles;
106
+ if (ffTagUplifts && isPlainLabel && !hasCustomLabel && !hasCustomContainerStyles) {
96
107
  var _ref = data !== null && data !== void 0 ? data : {},
97
108
  elemBefore = _ref.elemBefore,
98
109
  tagColor = _ref.color;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SelectGetStylesContext = void 0;
7
+ var _react = require("react");
8
+ /**
9
+ * Internal context used to pass the original Select instance's getStyles function
10
+ * down to components like MultiValue, without polluting the public CommonProps API.
11
+ *
12
+ * This allows MultiValue to detect whether getStyles has been overridden on a
13
+ * component instance (e.g. via a custom component wrapper passing a different
14
+ * getStyles prop), by comparing props.getStyles against the original.
15
+ *
16
+ * @internal — not part of the public API
17
+ */
18
+
19
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
20
+ var SelectGetStylesContext = exports.SelectGetStylesContext = /*#__PURE__*/(0, _react.createContext)(undefined);
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useSelectGetStyles = void 0;
7
+ var _react = require("react");
8
+ var _selectGetStylesContext = require("./select-get-styles-context");
9
+ /**
10
+ * Hook to consume the SelectGetStylesContext.
11
+ *
12
+ * @internal — not part of the public API
13
+ */
14
+
15
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
16
+ var useSelectGetStyles = exports.useSelectGetStyles = function useSelectGetStyles() {
17
+ return (0, _react.useContext)(_selectGetStylesContext.SelectGetStylesContext);
18
+ };
@@ -38,6 +38,7 @@ var _notifyOpenLayerObserver = require("./internal/notify-open-layer-observer");
38
38
  var _requiredInput = _interopRequireDefault(require("./internal/required-input"));
39
39
  var _scrollManager = _interopRequireDefault(require("./internal/scroll-manager"));
40
40
  var _scrollTo = require("./internal/scroll-to");
41
+ var _selectGetStylesContext = require("./internal/select-get-styles-context");
41
42
  var _singleValueAsValue = require("./internal/single-value-as-value");
42
43
  var _valueTernary = require("./internal/value-ternary");
43
44
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
@@ -312,7 +313,7 @@ var shouldHideSelectedOptions = function shouldHideSelectedOptions(props) {
312
313
  };
313
314
  var instanceId = 1;
314
315
 
315
- // eslint-disable-next-line @repo/internal/react/no-class-components
316
+ // eslint-disable-next-line @repo/internal/react/no-class-components, @atlaskit/volt-strict-mode/no-multiple-exports
316
317
  var Select = exports.default = /*#__PURE__*/function (_Component) {
317
318
  // Lifecycle
318
319
  // ------------------------------
@@ -1966,7 +1967,9 @@ var Select = exports.default = /*#__PURE__*/function (_Component) {
1966
1967
  var isFocused = this.state.isFocused;
1967
1968
  var commonProps = this.commonProps = this.getCommonProps();
1968
1969
  var isCompact = spacing === 'compact';
1969
- return /*#__PURE__*/_react.default.createElement(SelectContainer, (0, _extends2.default)({}, commonProps, {
1970
+ return /*#__PURE__*/_react.default.createElement(_selectGetStylesContext.SelectGetStylesContext.Provider, {
1971
+ value: this.getStyles
1972
+ }, /*#__PURE__*/_react.default.createElement(SelectContainer, (0, _extends2.default)({}, commonProps, {
1970
1973
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
1971
1974
  className: className,
1972
1975
  innerProps: _objectSpread({
@@ -2010,7 +2013,7 @@ var Select = exports.default = /*#__PURE__*/function (_Component) {
2010
2013
  }), this.renderClearIndicator(), this.renderLoadingIndicator(), this.renderDropdownIndicator())), this.renderMenu(), this.renderFormField(), /*#__PURE__*/_react.default.createElement(_notifyOpenLayerObserver.NotifyOpenLayerObserver, {
2011
2014
  isOpen: this.props.menuIsOpen,
2012
2015
  onClose: this.handleOpenLayerObserverCloseSignal
2013
- }));
2016
+ })));
2014
2017
  }
2015
2018
  }], [{
2016
2019
  key: "getDerivedStateFromProps",
@@ -4,10 +4,10 @@
4
4
  ._v564r5cv{transition:background-color .2s ease-in-out,border-color .2s ease-in-out}
5
5
  ._189ee4h9{border-width:var(--ds-border-width,1px)}
6
6
  ._1dqonqa1{border-style:solid}
7
+ ._1h6d187o{border-color:var(--ds-background-disabled,#0515240f)}
7
8
  ._1h6d1bqt{border-color:var(--ds-border-danger,#e2483d)}
8
9
  ._1h6d1j28{border-color:transparent}
9
10
  ._1h6d1v1w{border-color:var(--ds-border-focused,#4688ec)}
10
- ._1h6dby5v{border-color:var(--ds-background-disabled,#17171708)}
11
11
  ._1h6drsbi{border-color:var(--ds-border-input,#8c8f97)}._123byq51:hover::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2)}
12
12
  ._12ji1r31{outline-color:currentColor}
13
13
  ._12y3idpf{outline-width:0}
@@ -25,9 +25,9 @@
25
25
  ._4cvr1h6o{align-items:center}
26
26
  ._80om73ad{cursor:default}
27
27
  ._85i5ze3t{padding-block-end:var(--ds-space-0,0)}
28
+ ._bfhk187o{background-color:var(--ds-background-disabled,#0515240f)}
28
29
  ._bfhk1j28{background-color:transparent}
29
30
  ._bfhk1j9a{background-color:var(--ds-background-input,#fff)}
30
- ._bfhkby5v{background-color:var(--ds-background-disabled,#17171708)}
31
31
  ._bfhkr01l{background-color:var(--ds-background-input-pressed,#fff)}
32
32
  ._bfhkvuon{background-color:var(--ds-surface,#fff)}
33
33
  ._bozgze3t{padding-inline-start:var(--ds-space-0,0)}
@@ -35,8 +35,8 @@
35
35
  ._kqswh2mm{position:relative}
36
36
  ._lcxvglyw{pointer-events:none}
37
37
  ._y4tize3t{padding-inline-end:var(--ds-space-0,0)}
38
- ._1u6l1s3b:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-background-disabled,#17171708)}
39
38
  ._1u6l3sij:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) transparent}
39
+ ._1u6lfrlt:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-background-disabled,#0515240f)}
40
40
  ._1u6lizbr:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-danger,#e2483d)}
41
41
  ._1u6luvb6:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-input,#8c8f97)}
42
42
  ._1u6lvyy1:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-focused,#4688ec)}
@@ -14,7 +14,7 @@ const styles = {
14
14
  compact: "_1tkezwfg",
15
15
  invalid: "_1h6d1bqt _16qsizbr _1u6lizbr _4cvx1bqt",
16
16
  focusedInvalid: "_16qsvyy1",
17
- disabled: "_1h6dby5v _lcxvglyw _bfhkby5v _1u6l1s3b",
17
+ disabled: "_1h6d187o _lcxvglyw _bfhk187o _1u6lfrlt",
18
18
  focused: "_1h6d1v1w _bfhkr01l _16qsvyy1 _1u6lvyy1 _4cvx1v1w _irr3r01l",
19
19
  subtle: "_1h6d1j28 _bfhk1j28 _1u6l3sij",
20
20
  subtleFocused: "_bfhkvuon",
@@ -47,6 +47,7 @@ export const components = {
47
47
  SingleValue: SingleValue,
48
48
  ValueContainer: ValueContainer
49
49
  };
50
+ // eslint-disable-next-line @atlaskit/volt-strict-mode/no-multiple-exports
50
51
  export const defaultComponents = props => ({
51
52
  ...components,
52
53
  ...props.components
@@ -7,6 +7,7 @@ import { cx } from '@compiled/react';
7
7
  import { fg } from '@atlaskit/platform-feature-flags';
8
8
  import Tag from '@atlaskit/tag';
9
9
  import { getStyleProps } from '../get-style-props';
10
+ import { useSelectGetStyles } from '../internal/use-select-get-styles';
10
11
  import { MultiValueLabel } from './multi-value-label';
11
12
  const multiValueTagWrapperStyles = {
12
13
  root: "_16jlidpf _1o9zkb7n _i0dl1wug _1mouze3t _195gze3t _4cvr1h6o _1e0c1txw _1ul9ze3t _zdxokb7n _v5ynkb7n _13lsf1ug _3pxh1h6o _d0dz1txw _1ouwze3t"
@@ -86,8 +87,18 @@ const MultiValue = props => {
86
87
  'multi-value__remove': true
87
88
  });
88
89
  const hasCustomLabel = Label !== MultiValueLabel;
89
- // Plain labels: use Tag with fillContainer so it truncates like tag-like structure.
90
- if (ffTagUplifts && isPlainLabel && !hasCustomLabel) {
90
+ const selectStyles = selectProps.styles;
91
+ const hasCustomMultiValueStyles = Boolean((selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValue) || (selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValueLabel) || (selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValueRemove));
92
+ const selectClassNames = selectProps.classNames;
93
+ const hasCustomMultiValueClassNames = Boolean((selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValue) || (selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValueLabel) || (selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValueRemove));
94
+ // Detect if getStyles was overridden directly on this component instance (e.g. via the
95
+ // components prop wrapper passing a custom getStyles). The context holds the original
96
+ // Select instance's getStyles — a reference inequality means a custom override was passed.
97
+ // When context is absent (e.g. in mocked/test contexts), assume no override.
98
+ const selectGetStyles = useSelectGetStyles();
99
+ const hasOverriddenGetStyles = selectGetStyles !== undefined && props.getStyles !== selectGetStyles;
100
+ const hasCustomContainerStyles = hasCustomMultiValueStyles || hasCustomMultiValueClassNames || hasOverriddenGetStyles;
101
+ if (ffTagUplifts && isPlainLabel && !hasCustomLabel && !hasCustomContainerStyles) {
91
102
  const {
92
103
  elemBefore,
93
104
  color: tagColor
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Internal context used to pass the original Select instance's getStyles function
3
+ * down to components like MultiValue, without polluting the public CommonProps API.
4
+ *
5
+ * This allows MultiValue to detect whether getStyles has been overridden on a
6
+ * component instance (e.g. via a custom component wrapper passing a different
7
+ * getStyles prop), by comparing props.getStyles against the original.
8
+ *
9
+ * @internal — not part of the public API
10
+ */
11
+ import { createContext } from 'react';
12
+
13
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
14
+ export const SelectGetStylesContext = /*#__PURE__*/createContext(undefined);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Hook to consume the SelectGetStylesContext.
3
+ *
4
+ * @internal — not part of the public API
5
+ */
6
+ import { useContext } from 'react';
7
+ import { SelectGetStylesContext } from './select-get-styles-context';
8
+
9
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
10
+ export const useSelectGetStyles = () => useContext(SelectGetStylesContext);
@@ -22,6 +22,7 @@ import { NotifyOpenLayerObserver } from './internal/notify-open-layer-observer';
22
22
  import RequiredInput from './internal/required-input';
23
23
  import ScrollManager from './internal/scroll-manager';
24
24
  import { scrollTo } from './internal/scroll-to';
25
+ import { SelectGetStylesContext } from './internal/select-get-styles-context';
25
26
  import { singleValueAsValue } from './internal/single-value-as-value';
26
27
  import { valueTernary } from './internal/value-ternary';
27
28
  const noop = __noop;
@@ -281,7 +282,7 @@ const shouldHideSelectedOptions = props => {
281
282
  };
282
283
  let instanceId = 1;
283
284
 
284
- // eslint-disable-next-line @repo/internal/react/no-class-components
285
+ // eslint-disable-next-line @repo/internal/react/no-class-components, @atlaskit/volt-strict-mode/no-multiple-exports
285
286
  export default class Select extends Component {
286
287
  // Lifecycle
287
288
  // ------------------------------
@@ -1989,7 +1990,9 @@ export default class Select extends Component {
1989
1990
  } = this.state;
1990
1991
  const commonProps = this.commonProps = this.getCommonProps();
1991
1992
  const isCompact = spacing === 'compact';
1992
- return /*#__PURE__*/React.createElement(SelectContainer, _extends({}, commonProps, {
1993
+ return /*#__PURE__*/React.createElement(SelectGetStylesContext.Provider, {
1994
+ value: this.getStyles
1995
+ }, /*#__PURE__*/React.createElement(SelectContainer, _extends({}, commonProps, {
1993
1996
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
1994
1997
  className: className,
1995
1998
  innerProps: {
@@ -2040,7 +2043,7 @@ export default class Select extends Component {
2040
2043
  }), this.renderClearIndicator(), this.renderLoadingIndicator(), this.renderDropdownIndicator())), this.renderMenu(), this.renderFormField(), /*#__PURE__*/React.createElement(NotifyOpenLayerObserver, {
2041
2044
  isOpen: this.props.menuIsOpen,
2042
2045
  onClose: this.handleOpenLayerObserverCloseSignal
2043
- }));
2046
+ })));
2044
2047
  }
2045
2048
  }
2046
2049
  _defineProperty(Select, "defaultProps", defaultProps);
@@ -4,10 +4,10 @@
4
4
  ._v564r5cv{transition:background-color .2s ease-in-out,border-color .2s ease-in-out}
5
5
  ._189ee4h9{border-width:var(--ds-border-width,1px)}
6
6
  ._1dqonqa1{border-style:solid}
7
+ ._1h6d187o{border-color:var(--ds-background-disabled,#0515240f)}
7
8
  ._1h6d1bqt{border-color:var(--ds-border-danger,#e2483d)}
8
9
  ._1h6d1j28{border-color:transparent}
9
10
  ._1h6d1v1w{border-color:var(--ds-border-focused,#4688ec)}
10
- ._1h6dby5v{border-color:var(--ds-background-disabled,#17171708)}
11
11
  ._1h6drsbi{border-color:var(--ds-border-input,#8c8f97)}._123byq51:hover::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2)}
12
12
  ._12ji1r31{outline-color:currentColor}
13
13
  ._12y3idpf{outline-width:0}
@@ -25,9 +25,9 @@
25
25
  ._4cvr1h6o{align-items:center}
26
26
  ._80om73ad{cursor:default}
27
27
  ._85i5ze3t{padding-block-end:var(--ds-space-0,0)}
28
+ ._bfhk187o{background-color:var(--ds-background-disabled,#0515240f)}
28
29
  ._bfhk1j28{background-color:transparent}
29
30
  ._bfhk1j9a{background-color:var(--ds-background-input,#fff)}
30
- ._bfhkby5v{background-color:var(--ds-background-disabled,#17171708)}
31
31
  ._bfhkr01l{background-color:var(--ds-background-input-pressed,#fff)}
32
32
  ._bfhkvuon{background-color:var(--ds-surface,#fff)}
33
33
  ._bozgze3t{padding-inline-start:var(--ds-space-0,0)}
@@ -35,8 +35,8 @@
35
35
  ._kqswh2mm{position:relative}
36
36
  ._lcxvglyw{pointer-events:none}
37
37
  ._y4tize3t{padding-inline-end:var(--ds-space-0,0)}
38
- ._1u6l1s3b:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-background-disabled,#17171708)}
39
38
  ._1u6l3sij:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) transparent}
39
+ ._1u6lfrlt:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-background-disabled,#0515240f)}
40
40
  ._1u6lizbr:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-danger,#e2483d)}
41
41
  ._1u6luvb6:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-input,#8c8f97)}
42
42
  ._1u6lvyy1:focus-within{box-shadow:inset 0 0 0 var(--ds-border-width,1px) var(--ds-border-focused,#4688ec)}
@@ -14,7 +14,7 @@ var styles = {
14
14
  compact: "_1tkezwfg",
15
15
  invalid: "_1h6d1bqt _16qsizbr _1u6lizbr _4cvx1bqt",
16
16
  focusedInvalid: "_16qsvyy1",
17
- disabled: "_1h6dby5v _lcxvglyw _bfhkby5v _1u6l1s3b",
17
+ disabled: "_1h6d187o _lcxvglyw _bfhk187o _1u6lfrlt",
18
18
  focused: "_1h6d1v1w _bfhkr01l _16qsvyy1 _1u6lvyy1 _4cvx1v1w _irr3r01l",
19
19
  subtle: "_1h6d1j28 _bfhk1j28 _1u6l3sij",
20
20
  subtleFocused: "_bfhkvuon",
@@ -50,6 +50,7 @@ export var components = {
50
50
  SingleValue: SingleValue,
51
51
  ValueContainer: ValueContainer
52
52
  };
53
+ // eslint-disable-next-line @atlaskit/volt-strict-mode/no-multiple-exports
53
54
  export var defaultComponents = function defaultComponents(props) {
54
55
  return _objectSpread(_objectSpread({}, components), props.components);
55
56
  };
@@ -10,6 +10,7 @@ import { cx } from '@compiled/react';
10
10
  import { fg } from '@atlaskit/platform-feature-flags';
11
11
  import Tag from '@atlaskit/tag';
12
12
  import { getStyleProps } from '../get-style-props';
13
+ import { useSelectGetStyles } from '../internal/use-select-get-styles';
13
14
  import { MultiValueLabel } from './multi-value-label';
14
15
  var multiValueTagWrapperStyles = {
15
16
  root: "_16jlidpf _1o9zkb7n _i0dl1wug _1mouze3t _195gze3t _4cvr1h6o _1e0c1txw _1ul9ze3t _zdxokb7n _v5ynkb7n _13lsf1ug _3pxh1h6o _d0dz1txw _1ouwze3t"
@@ -82,8 +83,18 @@ var MultiValue = function MultiValue(props) {
82
83
  removeCss = _getStyleProps3.css,
83
84
  removeClassName = _getStyleProps3.className;
84
85
  var hasCustomLabel = Label !== MultiValueLabel;
85
- // Plain labels: use Tag with fillContainer so it truncates like tag-like structure.
86
- if (ffTagUplifts && isPlainLabel && !hasCustomLabel) {
86
+ var selectStyles = selectProps.styles;
87
+ var hasCustomMultiValueStyles = Boolean((selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValue) || (selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValueLabel) || (selectStyles === null || selectStyles === void 0 ? void 0 : selectStyles.multiValueRemove));
88
+ var selectClassNames = selectProps.classNames;
89
+ var hasCustomMultiValueClassNames = Boolean((selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValue) || (selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValueLabel) || (selectClassNames === null || selectClassNames === void 0 ? void 0 : selectClassNames.multiValueRemove));
90
+ // Detect if getStyles was overridden directly on this component instance (e.g. via the
91
+ // components prop wrapper passing a custom getStyles). The context holds the original
92
+ // Select instance's getStyles — a reference inequality means a custom override was passed.
93
+ // When context is absent (e.g. in mocked/test contexts), assume no override.
94
+ var selectGetStyles = useSelectGetStyles();
95
+ var hasOverriddenGetStyles = selectGetStyles !== undefined && props.getStyles !== selectGetStyles;
96
+ var hasCustomContainerStyles = hasCustomMultiValueStyles || hasCustomMultiValueClassNames || hasOverriddenGetStyles;
97
+ if (ffTagUplifts && isPlainLabel && !hasCustomLabel && !hasCustomContainerStyles) {
87
98
  var _ref = data !== null && data !== void 0 ? data : {},
88
99
  elemBefore = _ref.elemBefore,
89
100
  tagColor = _ref.color;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Internal context used to pass the original Select instance's getStyles function
3
+ * down to components like MultiValue, without polluting the public CommonProps API.
4
+ *
5
+ * This allows MultiValue to detect whether getStyles has been overridden on a
6
+ * component instance (e.g. via a custom component wrapper passing a different
7
+ * getStyles prop), by comparing props.getStyles against the original.
8
+ *
9
+ * @internal — not part of the public API
10
+ */
11
+ import { createContext } from 'react';
12
+
13
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
14
+ export var SelectGetStylesContext = /*#__PURE__*/createContext(undefined);
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Hook to consume the SelectGetStylesContext.
3
+ *
4
+ * @internal — not part of the public API
5
+ */
6
+ import { useContext } from 'react';
7
+ import { SelectGetStylesContext } from './select-get-styles-context';
8
+
9
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
10
+ export var useSelectGetStyles = function useSelectGetStyles() {
11
+ return useContext(SelectGetStylesContext);
12
+ };
@@ -34,6 +34,7 @@ import { NotifyOpenLayerObserver } from './internal/notify-open-layer-observer';
34
34
  import RequiredInput from './internal/required-input';
35
35
  import ScrollManager from './internal/scroll-manager';
36
36
  import { scrollTo } from './internal/scroll-to';
37
+ import { SelectGetStylesContext } from './internal/select-get-styles-context';
37
38
  import { singleValueAsValue } from './internal/single-value-as-value';
38
39
  import { valueTernary } from './internal/value-ternary';
39
40
  var noop = __noop;
@@ -303,7 +304,7 @@ var shouldHideSelectedOptions = function shouldHideSelectedOptions(props) {
303
304
  };
304
305
  var instanceId = 1;
305
306
 
306
- // eslint-disable-next-line @repo/internal/react/no-class-components
307
+ // eslint-disable-next-line @repo/internal/react/no-class-components, @atlaskit/volt-strict-mode/no-multiple-exports
307
308
  var Select = /*#__PURE__*/function (_Component) {
308
309
  // Lifecycle
309
310
  // ------------------------------
@@ -1957,7 +1958,9 @@ var Select = /*#__PURE__*/function (_Component) {
1957
1958
  var isFocused = this.state.isFocused;
1958
1959
  var commonProps = this.commonProps = this.getCommonProps();
1959
1960
  var isCompact = spacing === 'compact';
1960
- return /*#__PURE__*/React.createElement(SelectContainer, _extends({}, commonProps, {
1961
+ return /*#__PURE__*/React.createElement(SelectGetStylesContext.Provider, {
1962
+ value: this.getStyles
1963
+ }, /*#__PURE__*/React.createElement(SelectContainer, _extends({}, commonProps, {
1961
1964
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
1962
1965
  className: className,
1963
1966
  innerProps: _objectSpread({
@@ -2001,7 +2004,7 @@ var Select = /*#__PURE__*/function (_Component) {
2001
2004
  }), this.renderClearIndicator(), this.renderLoadingIndicator(), this.renderDropdownIndicator())), this.renderMenu(), this.renderFormField(), /*#__PURE__*/React.createElement(NotifyOpenLayerObserver, {
2002
2005
  isOpen: this.props.menuIsOpen,
2003
2006
  onClose: this.handleOpenLayerObserverCloseSignal
2004
- }));
2007
+ })));
2005
2008
  }
2006
2009
  }], [{
2007
2010
  key: "getDerivedStateFromProps",
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Internal context used to pass the original Select instance's getStyles function
3
+ * down to components like MultiValue, without polluting the public CommonProps API.
4
+ *
5
+ * This allows MultiValue to detect whether getStyles has been overridden on a
6
+ * component instance (e.g. via a custom component wrapper passing a different
7
+ * getStyles prop), by comparing props.getStyles against the original.
8
+ *
9
+ * @internal — not part of the public API
10
+ */
11
+ import { type Context } from 'react';
12
+ export declare const SelectGetStylesContext: Context<Function | undefined>;
@@ -0,0 +1 @@
1
+ export declare const useSelectGetStyles: () => Function | undefined;