@atlaskit/react-select 2.2.0 → 2.3.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 (268) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/compiled/components/containers.compiled.css +26 -0
  3. package/dist/cjs/compiled/components/containers.js +119 -0
  4. package/dist/cjs/compiled/components/control.compiled.css +51 -0
  5. package/dist/cjs/compiled/components/control.js +66 -0
  6. package/dist/cjs/compiled/components/group.compiled.css +12 -0
  7. package/dist/cjs/compiled/components/group.js +81 -0
  8. package/dist/cjs/compiled/components/indicators.compiled.css +24 -0
  9. package/dist/cjs/compiled/components/indicators.js +157 -0
  10. package/dist/cjs/compiled/components/input.compiled.css +49 -0
  11. package/dist/cjs/compiled/components/input.js +69 -0
  12. package/dist/cjs/compiled/components/internal/a11y-text.compiled.css +15 -0
  13. package/dist/cjs/compiled/components/internal/a11y-text.js +23 -0
  14. package/dist/cjs/compiled/components/internal/dummy-input.compiled.css +17 -0
  15. package/dist/cjs/compiled/components/internal/dummy-input.js +30 -0
  16. package/dist/cjs/compiled/components/internal/required-input.compiled.css +8 -0
  17. package/dist/cjs/compiled/components/internal/required-input.js +34 -0
  18. package/dist/cjs/compiled/components/live-region.js +177 -0
  19. package/dist/cjs/compiled/components/menu.compiled.css +19 -0
  20. package/dist/cjs/compiled/components/menu.js +491 -0
  21. package/dist/cjs/compiled/components/multi-value.compiled.css +56 -0
  22. package/dist/cjs/compiled/components/multi-value.js +199 -0
  23. package/dist/cjs/compiled/components/option.compiled.css +22 -0
  24. package/dist/cjs/compiled/components/option.js +57 -0
  25. package/dist/cjs/compiled/components/placeholder.compiled.css +7 -0
  26. package/dist/cjs/compiled/components/placeholder.js +45 -0
  27. package/dist/cjs/compiled/components/single-value.compiled.css +13 -0
  28. package/dist/cjs/compiled/components/single-value.js +46 -0
  29. package/dist/cjs/components/containers.js +12 -72
  30. package/dist/cjs/components/control.js +11 -96
  31. package/dist/cjs/components/group.js +15 -53
  32. package/dist/cjs/components/indicators.js +15 -107
  33. package/dist/cjs/components/input.js +12 -81
  34. package/dist/cjs/components/internal/a11y-text.js +6 -25
  35. package/dist/cjs/components/internal/dummy-input.js +8 -36
  36. package/dist/cjs/components/internal/notify-open-layer-observer.js +1 -0
  37. package/dist/cjs/components/internal/required-input.js +7 -31
  38. package/dist/cjs/components/internal/scroll-manager.js +19 -17
  39. package/dist/cjs/components/live-region.js +6 -164
  40. package/dist/cjs/components/menu.js +26 -181
  41. package/dist/cjs/components/multi-value.js +21 -197
  42. package/dist/cjs/components/option.js +11 -68
  43. package/dist/cjs/components/placeholder.js +11 -20
  44. package/dist/cjs/components/single-value.js +11 -26
  45. package/dist/cjs/emotion/components/containers.js +113 -0
  46. package/dist/cjs/emotion/components/control.js +112 -0
  47. package/dist/cjs/emotion/components/group.js +72 -0
  48. package/dist/cjs/emotion/components/indicators.js +138 -0
  49. package/dist/cjs/emotion/components/input.js +94 -0
  50. package/dist/cjs/emotion/components/internal/a11y-text.js +37 -0
  51. package/dist/cjs/emotion/components/internal/dummy-input.js +45 -0
  52. package/dist/cjs/emotion/components/internal/required-input.js +45 -0
  53. package/dist/cjs/emotion/components/live-region.js +182 -0
  54. package/dist/cjs/emotion/components/menu.js +456 -0
  55. package/dist/cjs/emotion/components/multi-value.js +224 -0
  56. package/dist/cjs/emotion/components/option.js +84 -0
  57. package/dist/cjs/emotion/components/placeholder.js +36 -0
  58. package/dist/cjs/emotion/components/single-value.js +42 -0
  59. package/dist/cjs/utils.js +2 -1
  60. package/dist/es2019/compiled/components/containers.compiled.css +26 -0
  61. package/dist/es2019/compiled/components/containers.js +115 -0
  62. package/dist/es2019/compiled/components/control.compiled.css +51 -0
  63. package/dist/es2019/compiled/components/control.js +58 -0
  64. package/dist/es2019/compiled/components/group.compiled.css +12 -0
  65. package/dist/es2019/compiled/components/group.js +72 -0
  66. package/dist/es2019/compiled/components/indicators.compiled.css +24 -0
  67. package/dist/es2019/compiled/components/indicators.js +144 -0
  68. package/dist/es2019/compiled/components/input.compiled.css +49 -0
  69. package/dist/es2019/compiled/components/input.js +59 -0
  70. package/dist/es2019/compiled/components/internal/a11y-text.compiled.css +15 -0
  71. package/dist/es2019/compiled/components/internal/a11y-text.js +11 -0
  72. package/dist/es2019/compiled/components/internal/dummy-input.compiled.css +17 -0
  73. package/dist/es2019/compiled/components/internal/dummy-input.js +19 -0
  74. package/dist/es2019/compiled/components/internal/required-input.compiled.css +8 -0
  75. package/dist/es2019/compiled/components/internal/required-input.js +23 -0
  76. package/dist/es2019/compiled/components/live-region.js +171 -0
  77. package/dist/es2019/compiled/components/menu.compiled.css +19 -0
  78. package/dist/es2019/compiled/components/menu.js +478 -0
  79. package/dist/es2019/compiled/components/multi-value.compiled.css +56 -0
  80. package/dist/es2019/compiled/components/multi-value.js +190 -0
  81. package/dist/es2019/compiled/components/option.compiled.css +22 -0
  82. package/dist/es2019/compiled/components/option.js +48 -0
  83. package/dist/es2019/compiled/components/placeholder.compiled.css +7 -0
  84. package/dist/es2019/compiled/components/placeholder.js +36 -0
  85. package/dist/es2019/compiled/components/single-value.compiled.css +13 -0
  86. package/dist/es2019/compiled/components/single-value.js +37 -0
  87. package/dist/es2019/components/containers.js +10 -87
  88. package/dist/es2019/components/control.js +8 -103
  89. package/dist/es2019/components/group.js +9 -54
  90. package/dist/es2019/components/indicators.js +11 -113
  91. package/dist/es2019/components/input.js +7 -83
  92. package/dist/es2019/components/internal/a11y-text.js +6 -26
  93. package/dist/es2019/components/internal/dummy-input.js +7 -36
  94. package/dist/es2019/components/internal/notify-open-layer-observer.js +1 -0
  95. package/dist/es2019/components/internal/required-input.js +6 -32
  96. package/dist/es2019/components/internal/scroll-manager.js +16 -16
  97. package/dist/es2019/components/live-region.js +5 -168
  98. package/dist/es2019/components/menu.js +14 -192
  99. package/dist/es2019/components/multi-value.js +12 -216
  100. package/dist/es2019/components/option.js +7 -75
  101. package/dist/es2019/components/placeholder.js +7 -25
  102. package/dist/es2019/components/single-value.js +7 -31
  103. package/dist/es2019/emotion/components/containers.js +110 -0
  104. package/dist/es2019/emotion/components/control.js +108 -0
  105. package/dist/es2019/emotion/components/group.js +60 -0
  106. package/dist/es2019/emotion/components/indicators.js +129 -0
  107. package/dist/es2019/emotion/components/input.js +87 -0
  108. package/dist/es2019/emotion/components/internal/a11y-text.js +28 -0
  109. package/dist/es2019/emotion/components/internal/dummy-input.js +38 -0
  110. package/dist/es2019/emotion/components/internal/required-input.js +36 -0
  111. package/dist/es2019/emotion/components/live-region.js +180 -0
  112. package/dist/es2019/emotion/components/menu.js +452 -0
  113. package/dist/es2019/emotion/components/multi-value.js +228 -0
  114. package/dist/es2019/emotion/components/option.js +79 -0
  115. package/dist/es2019/emotion/components/placeholder.js +29 -0
  116. package/dist/es2019/emotion/components/single-value.js +35 -0
  117. package/dist/es2019/utils.js +1 -0
  118. package/dist/esm/compiled/components/containers.compiled.css +26 -0
  119. package/dist/esm/compiled/components/containers.js +110 -0
  120. package/dist/esm/compiled/components/control.compiled.css +51 -0
  121. package/dist/esm/compiled/components/control.js +57 -0
  122. package/dist/esm/compiled/components/group.compiled.css +12 -0
  123. package/dist/esm/compiled/components/group.js +71 -0
  124. package/dist/esm/compiled/components/indicators.compiled.css +24 -0
  125. package/dist/esm/compiled/components/indicators.js +148 -0
  126. package/dist/esm/compiled/components/input.compiled.css +49 -0
  127. package/dist/esm/compiled/components/input.js +59 -0
  128. package/dist/esm/compiled/components/internal/a11y-text.compiled.css +15 -0
  129. package/dist/esm/compiled/components/internal/a11y-text.js +13 -0
  130. package/dist/esm/compiled/components/internal/dummy-input.compiled.css +17 -0
  131. package/dist/esm/compiled/components/internal/dummy-input.js +20 -0
  132. package/dist/esm/compiled/components/internal/required-input.compiled.css +8 -0
  133. package/dist/esm/compiled/components/internal/required-input.js +24 -0
  134. package/dist/esm/compiled/components/live-region.js +168 -0
  135. package/dist/esm/compiled/components/menu.compiled.css +19 -0
  136. package/dist/esm/compiled/components/menu.js +485 -0
  137. package/dist/esm/compiled/components/multi-value.compiled.css +56 -0
  138. package/dist/esm/compiled/components/multi-value.js +187 -0
  139. package/dist/esm/compiled/components/option.compiled.css +22 -0
  140. package/dist/esm/compiled/components/option.js +47 -0
  141. package/dist/esm/compiled/components/placeholder.compiled.css +7 -0
  142. package/dist/esm/compiled/components/placeholder.js +35 -0
  143. package/dist/esm/compiled/components/single-value.compiled.css +13 -0
  144. package/dist/esm/compiled/components/single-value.js +36 -0
  145. package/dist/esm/components/containers.js +12 -73
  146. package/dist/esm/components/control.js +8 -97
  147. package/dist/esm/components/group.js +11 -54
  148. package/dist/esm/components/indicators.js +15 -109
  149. package/dist/esm/components/input.js +8 -83
  150. package/dist/esm/components/internal/a11y-text.js +6 -26
  151. package/dist/esm/components/internal/dummy-input.js +7 -37
  152. package/dist/esm/components/internal/notify-open-layer-observer.js +1 -0
  153. package/dist/esm/components/internal/required-input.js +7 -32
  154. package/dist/esm/components/internal/scroll-manager.js +16 -16
  155. package/dist/esm/components/live-region.js +5 -163
  156. package/dist/esm/components/menu.js +24 -182
  157. package/dist/esm/components/multi-value.js +17 -199
  158. package/dist/esm/components/option.js +8 -69
  159. package/dist/esm/components/placeholder.js +8 -21
  160. package/dist/esm/components/single-value.js +8 -27
  161. package/dist/esm/emotion/components/containers.js +106 -0
  162. package/dist/esm/emotion/components/control.js +104 -0
  163. package/dist/esm/emotion/components/group.js +66 -0
  164. package/dist/esm/emotion/components/indicators.js +133 -0
  165. package/dist/esm/emotion/components/input.js +90 -0
  166. package/dist/esm/emotion/components/internal/a11y-text.js +30 -0
  167. package/dist/esm/emotion/components/internal/dummy-input.js +39 -0
  168. package/dist/esm/emotion/components/internal/required-input.js +37 -0
  169. package/dist/esm/emotion/components/live-region.js +177 -0
  170. package/dist/esm/emotion/components/menu.js +456 -0
  171. package/dist/esm/emotion/components/multi-value.js +218 -0
  172. package/dist/esm/emotion/components/option.js +76 -0
  173. package/dist/esm/emotion/components/placeholder.js +28 -0
  174. package/dist/esm/emotion/components/single-value.js +34 -0
  175. package/dist/esm/utils.js +2 -1
  176. package/dist/types/compiled/components/containers.d.ts +53 -0
  177. package/dist/types/compiled/components/control.d.ts +41 -0
  178. package/dist/types/compiled/components/group.d.ts +54 -0
  179. package/dist/types/compiled/components/indicators.d.ts +72 -0
  180. package/dist/types/compiled/components/input.d.ts +36 -0
  181. package/dist/types/compiled/components/internal/a11y-text.d.ts +3 -0
  182. package/dist/types/compiled/components/internal/dummy-input.d.ts +8 -0
  183. package/dist/types/compiled/components/internal/required-input.d.ts +10 -0
  184. package/dist/types/compiled/components/live-region.d.ts +19 -0
  185. package/dist/types/compiled/components/menu.d.ts +115 -0
  186. package/dist/types/compiled/components/multi-value.d.ts +57 -0
  187. package/dist/types/compiled/components/option.d.ts +48 -0
  188. package/dist/types/compiled/components/placeholder.d.ts +21 -0
  189. package/dist/types/compiled/components/single-value.d.ts +27 -0
  190. package/dist/types/components/containers.d.ts +6 -11
  191. package/dist/types/components/control.d.ts +4 -9
  192. package/dist/types/components/group.d.ts +8 -10
  193. package/dist/types/components/index.d.ts +21 -21
  194. package/dist/types/components/indicators.d.ts +7 -12
  195. package/dist/types/components/input.d.ts +3 -8
  196. package/dist/types/components/internal/a11y-text.d.ts +2 -7
  197. package/dist/types/components/internal/dummy-input.d.ts +3 -8
  198. package/dist/types/components/internal/required-input.d.ts +0 -4
  199. package/dist/types/components/internal/scroll-manager.d.ts +2 -7
  200. package/dist/types/components/live-region.d.ts +2 -8
  201. package/dist/types/components/menu.d.ts +10 -15
  202. package/dist/types/components/multi-value.d.ts +19 -13
  203. package/dist/types/components/option.d.ts +3 -8
  204. package/dist/types/components/placeholder.d.ts +3 -8
  205. package/dist/types/components/single-value.d.ts +3 -8
  206. package/dist/types/emotion/components/containers.d.ts +54 -0
  207. package/dist/types/emotion/components/control.d.ts +42 -0
  208. package/dist/types/emotion/components/group.d.ts +52 -0
  209. package/dist/types/emotion/components/indicators.d.ts +73 -0
  210. package/dist/types/emotion/components/input.d.ts +37 -0
  211. package/dist/types/emotion/components/internal/a11y-text.d.ts +8 -0
  212. package/dist/types/emotion/components/internal/dummy-input.d.ts +9 -0
  213. package/dist/types/emotion/components/internal/required-input.d.ts +10 -0
  214. package/dist/types/emotion/components/live-region.d.ts +25 -0
  215. package/dist/types/emotion/components/menu.d.ts +116 -0
  216. package/dist/types/emotion/components/multi-value.d.ts +47 -0
  217. package/dist/types/emotion/components/option.d.ts +49 -0
  218. package/dist/types/emotion/components/placeholder.d.ts +22 -0
  219. package/dist/types/emotion/components/single-value.d.ts +28 -0
  220. package/dist/types/select.d.ts +21 -21
  221. package/dist/types/types.d.ts +3 -0
  222. package/dist/types-ts4.5/compiled/components/containers.d.ts +53 -0
  223. package/dist/types-ts4.5/compiled/components/control.d.ts +41 -0
  224. package/dist/types-ts4.5/compiled/components/group.d.ts +54 -0
  225. package/dist/types-ts4.5/compiled/components/indicators.d.ts +72 -0
  226. package/dist/types-ts4.5/compiled/components/input.d.ts +36 -0
  227. package/dist/types-ts4.5/compiled/components/internal/a11y-text.d.ts +3 -0
  228. package/dist/types-ts4.5/compiled/components/internal/dummy-input.d.ts +8 -0
  229. package/dist/types-ts4.5/compiled/components/internal/required-input.d.ts +10 -0
  230. package/dist/types-ts4.5/compiled/components/live-region.d.ts +19 -0
  231. package/dist/types-ts4.5/compiled/components/menu.d.ts +115 -0
  232. package/dist/types-ts4.5/compiled/components/multi-value.d.ts +57 -0
  233. package/dist/types-ts4.5/compiled/components/option.d.ts +48 -0
  234. package/dist/types-ts4.5/compiled/components/placeholder.d.ts +21 -0
  235. package/dist/types-ts4.5/compiled/components/single-value.d.ts +27 -0
  236. package/dist/types-ts4.5/components/containers.d.ts +6 -11
  237. package/dist/types-ts4.5/components/control.d.ts +4 -9
  238. package/dist/types-ts4.5/components/group.d.ts +8 -10
  239. package/dist/types-ts4.5/components/index.d.ts +21 -21
  240. package/dist/types-ts4.5/components/indicators.d.ts +7 -12
  241. package/dist/types-ts4.5/components/input.d.ts +3 -8
  242. package/dist/types-ts4.5/components/internal/a11y-text.d.ts +2 -7
  243. package/dist/types-ts4.5/components/internal/dummy-input.d.ts +3 -8
  244. package/dist/types-ts4.5/components/internal/required-input.d.ts +0 -4
  245. package/dist/types-ts4.5/components/internal/scroll-manager.d.ts +2 -7
  246. package/dist/types-ts4.5/components/live-region.d.ts +2 -8
  247. package/dist/types-ts4.5/components/menu.d.ts +10 -15
  248. package/dist/types-ts4.5/components/multi-value.d.ts +19 -13
  249. package/dist/types-ts4.5/components/option.d.ts +3 -8
  250. package/dist/types-ts4.5/components/placeholder.d.ts +3 -8
  251. package/dist/types-ts4.5/components/single-value.d.ts +3 -8
  252. package/dist/types-ts4.5/emotion/components/containers.d.ts +54 -0
  253. package/dist/types-ts4.5/emotion/components/control.d.ts +42 -0
  254. package/dist/types-ts4.5/emotion/components/group.d.ts +52 -0
  255. package/dist/types-ts4.5/emotion/components/indicators.d.ts +73 -0
  256. package/dist/types-ts4.5/emotion/components/input.d.ts +37 -0
  257. package/dist/types-ts4.5/emotion/components/internal/a11y-text.d.ts +8 -0
  258. package/dist/types-ts4.5/emotion/components/internal/dummy-input.d.ts +9 -0
  259. package/dist/types-ts4.5/emotion/components/internal/required-input.d.ts +10 -0
  260. package/dist/types-ts4.5/emotion/components/live-region.d.ts +25 -0
  261. package/dist/types-ts4.5/emotion/components/menu.d.ts +116 -0
  262. package/dist/types-ts4.5/emotion/components/multi-value.d.ts +47 -0
  263. package/dist/types-ts4.5/emotion/components/option.d.ts +49 -0
  264. package/dist/types-ts4.5/emotion/components/placeholder.d.ts +22 -0
  265. package/dist/types-ts4.5/emotion/components/single-value.d.ts +28 -0
  266. package/dist/types-ts4.5/select.d.ts +21 -21
  267. package/dist/types-ts4.5/types.d.ts +3 -0
  268. package/package.json +10 -2
@@ -1,16 +1,10 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- /**
3
- * @jsxRuntime classic
4
- * @jsx jsx
5
- */
6
- import { createContext, useCallback, useContext, useMemo, useRef, useState } from 'react';
7
- import { jsx } from '@emotion/react';
8
- import { autoUpdate } from '@floating-ui/dom';
9
- import { createPortal } from 'react-dom';
1
+ /* eslint-disable @repo/internal/react/no-unsafe-spread-props */
2
+ import React, { createContext, useContext, useRef, useState } from 'react';
10
3
  import useLayoutEffect from 'use-isomorphic-layout-effect';
11
4
  import { fg } from '@atlaskit/platform-feature-flags';
12
- import { Text } from '@atlaskit/primitives';
13
- import { animatedScrollTo, getBoundingClientObj, getScrollParent, getScrollTop, getStyleProps, normalizedHeight, scrollTo } from '../utils';
5
+ import Compiled, { LoadingMessage as CompiledLoadingMessage, menuCSS as compiledMenuCSS, MenuList as CompiledMenuList, menuListCSS as compiledMenuListCSS, MenuPortal as CompiledMenuPortal, menuPortalCSS as compiledMenuPortalCSS, NoOptionsMessage as CompiledNoOptionsMessage } from '../compiled/components/menu';
6
+ import Emotion, { LoadingMessage as EmotionLoadingMessage, menuCSS as emotionMenuCSS, MenuList as EmotionMenuList, menuListCSS as emotionMenuListCSS, MenuPortal as EmotionMenuPortal, menuPortalCSS as emotionMenuPortalCSS, NoOptionsMessage as EmotionNoOptionsMessage } from '../emotion/components/menu';
7
+ import { animatedScrollTo, getScrollParent, getScrollTop, normalizedHeight, scrollTo } from '../utils';
14
8
 
15
9
  // ==============================
16
10
  // Menu
@@ -184,28 +178,8 @@ function getMenuPlacement({
184
178
  // Menu Component
185
179
  // ------------------------------
186
180
 
187
- function alignToControl(placement) {
188
- const placementToCSSProp = {
189
- bottom: 'top',
190
- top: 'bottom'
191
- };
192
- return placement ? placementToCSSProp[placement] : 'bottom';
193
- }
194
181
  const coercePlacement = p => p === 'auto' ? 'bottom' : p;
195
- export const menuCSS = ({
196
- placement
197
- }) => ({
198
- label: 'menu',
199
- [alignToControl(placement)]: '100%',
200
- position: 'absolute',
201
- width: '100%',
202
- zIndex: 1,
203
- borderRadius: "var(--ds-border-radius, 4px)",
204
- marginBottom: "var(--ds-space-100, 8px)",
205
- marginTop: "var(--ds-space-100, 8px)",
206
- backgroundColor: "var(--ds-surface-overlay, white)",
207
- boxShadow: "var(--ds-shadow-overlay, 0 0 0 1px hsl(0deg 0% 0% / 10%), 0 4px 11px hsl(0deg 0% 0% / 10%))"
208
- });
182
+ export const menuCSS = props => fg('compiled-react-select') ? compiledMenuCSS() : emotionMenuCSS(props);
209
183
  const PortalPlacementContext = /*#__PURE__*/createContext(null);
210
184
 
211
185
  // NOTE: internal only
@@ -258,18 +232,7 @@ export const MenuPlacer = props => {
258
232
  }
259
233
  });
260
234
  };
261
- const Menu = props => {
262
- const {
263
- children,
264
- innerRef,
265
- innerProps
266
- } = props;
267
- return jsx("div", _extends({}, getStyleProps(props, 'menu', {
268
- menu: true
269
- }), {
270
- ref: innerRef
271
- }, innerProps), children);
272
- };
235
+ const Menu = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(Compiled, props) : /*#__PURE__*/React.createElement(Emotion, props);
273
236
 
274
237
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
275
238
  export default Menu;
@@ -278,35 +241,10 @@ export default Menu;
278
241
  // Menu List
279
242
  // ==============================
280
243
 
281
- export const menuListCSS = ({
282
- maxHeight
283
- }) => ({
284
- maxHeight,
285
- overflowY: 'auto',
286
- position: 'relative',
287
- // required for offset[Height, Top] > keyboard scroll
288
- WebkitOverflowScrolling: 'touch',
289
- paddingTop: "var(--ds-space-100, 8px)",
290
- paddingBottom: "var(--ds-space-100, 8px)"
291
- });
244
+ export const menuListCSS = props => fg('compiled-react-select') ? compiledMenuListCSS() : emotionMenuListCSS(props);
292
245
 
293
246
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
294
- export const MenuList = props => {
295
- const {
296
- children,
297
- innerProps,
298
- innerRef,
299
- isMulti
300
- } = props;
301
- return jsx("div", _extends({}, getStyleProps(props, 'menuList', {
302
- 'menu-list': true,
303
- 'menu-list--is-multi': isMulti
304
- }), {
305
- ref: innerRef
306
- }, innerProps, {
307
- tabIndex: -1
308
- }), children);
309
- };
247
+ export const MenuList = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledMenuList, props) : /*#__PURE__*/React.createElement(EmotionMenuList, props);
310
248
 
311
249
  // ==============================
312
250
  // Menu Notices
@@ -319,132 +257,16 @@ const noticeCSS = ({}) => ({
319
257
  export const noOptionsMessageCSS = noticeCSS;
320
258
  export const loadingMessageCSS = noticeCSS;
321
259
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
322
- export const NoOptionsMessage = ({
323
- children = 'No options',
324
- innerProps,
325
- ...restProps
326
- }) => {
327
- return jsx("div", _extends({}, getStyleProps({
328
- ...restProps,
329
- children,
330
- innerProps
331
- }, 'noOptionsMessage', {
332
- 'menu-notice': true,
333
- 'menu-notice--no-options': true
334
- }), {
335
- // eslint-disable-next-line jsx-a11y/role-has-required-aria-props
336
- role: "option"
337
- }, innerProps), jsx(Text, {
338
- color: "color.text.subtle"
339
- }, children));
340
- };
260
+ export const NoOptionsMessage = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledNoOptionsMessage, props) : /*#__PURE__*/React.createElement(EmotionNoOptionsMessage, props);
341
261
 
342
262
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
343
- export const LoadingMessage = ({
344
- children = 'Loading...',
345
- innerProps,
346
- ...restProps
347
- }) => {
348
- return jsx("div", _extends({}, getStyleProps({
349
- ...restProps,
350
- children,
351
- innerProps
352
- }, 'loadingMessage', {
353
- 'menu-notice': true,
354
- 'menu-notice--loading': true
355
- }), innerProps, {
356
- // eslint-disable-next-line jsx-a11y/role-has-required-aria-props
357
- role: "option"
358
- }), jsx(Text, {
359
- color: "color.text.subtle"
360
- }, children));
361
- };
263
+ export const LoadingMessage = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledLoadingMessage, props) : /*#__PURE__*/React.createElement(EmotionLoadingMessage, props);
362
264
 
363
265
  // ==============================
364
266
  // Menu Portal
365
267
  // ==============================
366
268
 
367
- export const menuPortalCSS = ({
368
- rect,
369
- offset,
370
- position
371
- }) => ({
372
- left: rect.left,
373
- position: position,
374
- top: offset,
375
- width: rect.width,
376
- zIndex: 1
377
- });
378
- // eslint-disable-next-line @repo/internal/react/require-jsdoc
379
- export const MenuPortal = props => {
380
- const {
381
- appendTo,
382
- children,
383
- controlElement,
384
- innerProps,
385
- menuPlacement,
386
- menuPosition
387
- } = props;
388
- const menuPortalRef = useRef(null);
389
- const cleanupRef = useRef(null);
390
- const [placement, setPortalPlacement] = useState(coercePlacement(menuPlacement));
391
- const portalPlacementContext = useMemo(() => ({
392
- setPortalPlacement
393
- }), []);
394
- const [computedPosition, setComputedPosition] = useState(null);
395
- const updateComputedPosition = useCallback(() => {
396
- if (!controlElement) {
397
- return;
398
- }
399
- const rect = getBoundingClientObj(controlElement);
400
- const scrollDistance = menuPosition === 'fixed' ? 0 : window.pageYOffset;
401
- const offset = rect[placement] + scrollDistance;
402
- if (offset !== (computedPosition === null || computedPosition === void 0 ? void 0 : computedPosition.offset) || rect.left !== (computedPosition === null || computedPosition === void 0 ? void 0 : computedPosition.rect.left) || rect.width !== (computedPosition === null || computedPosition === void 0 ? void 0 : computedPosition.rect.width)) {
403
- setComputedPosition({
404
- offset,
405
- rect
406
- });
407
- }
408
- }, [controlElement, menuPosition, placement, computedPosition === null || computedPosition === void 0 ? void 0 : computedPosition.offset, computedPosition === null || computedPosition === void 0 ? void 0 : computedPosition.rect.left, computedPosition === null || computedPosition === void 0 ? void 0 : computedPosition.rect.width]);
409
- useLayoutEffect(() => {
410
- updateComputedPosition();
411
- }, [updateComputedPosition]);
412
- const runAutoUpdate = useCallback(() => {
413
- if (typeof cleanupRef.current === 'function') {
414
- cleanupRef.current();
415
- cleanupRef.current = null;
416
- }
417
- if (controlElement && menuPortalRef.current) {
418
- cleanupRef.current = autoUpdate(controlElement, menuPortalRef.current, updateComputedPosition, {
419
- elementResize: 'ResizeObserver' in window
420
- });
421
- }
422
- }, [controlElement, updateComputedPosition]);
423
- useLayoutEffect(() => {
424
- runAutoUpdate();
425
- }, [runAutoUpdate]);
426
- const setMenuPortalElement = useCallback(menuPortalElement => {
427
- menuPortalRef.current = menuPortalElement;
428
- runAutoUpdate();
429
- }, [runAutoUpdate]);
430
-
431
- // bail early if required elements aren't present
432
- if (!appendTo && menuPosition !== 'fixed' || !computedPosition) {
433
- return null;
434
- }
269
+ export const menuPortalCSS = props => fg('compiled-react-select') ? compiledMenuPortalCSS() : emotionMenuPortalCSS(props);
435
270
 
436
- // same wrapper element whether fixed or portalled
437
- const menuWrapper = jsx("div", _extends({
438
- ref: setMenuPortalElement
439
- }, getStyleProps({
440
- ...props,
441
- offset: computedPosition.offset,
442
- position: menuPosition,
443
- rect: computedPosition.rect
444
- }, 'menuPortal', {
445
- 'menu-portal': true
446
- }), innerProps), children);
447
- return jsx(PortalPlacementContext.Provider, {
448
- value: portalPlacementContext
449
- }, appendTo ? /*#__PURE__*/createPortal(menuWrapper, appendTo) : menuWrapper);
450
- };
271
+ // eslint-disable-next-line @repo/internal/react/require-jsdoc
272
+ export const MenuPortal = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledMenuPortal, props) : /*#__PURE__*/React.createElement(EmotionMenuPortal, props);
@@ -1,227 +1,23 @@
1
- /**
2
- * @jsxRuntime classic
3
- * @jsx jsx
4
- */
5
-
6
- import { css, jsx } from '@emotion/react';
7
- import LegacySelectClearIcon from '@atlaskit/icon/glyph/select-clear';
8
- import CrossIcon from '@atlaskit/icon/utility/cross';
1
+ /* eslint-disable @repo/internal/react/no-unsafe-spread-props */
2
+ import React from 'react';
9
3
  import { fg } from '@atlaskit/platform-feature-flags';
10
- import { Inline, xcss } from '@atlaskit/primitives';
11
- import { getStyleProps } from '../utils';
12
- export const multiValueCSS = ({
13
- isDisabled,
14
- isFocused
15
- }) => {
16
- let backgroundColor;
17
- let color;
18
- if (isDisabled) {
19
- // Use the basic neutral background so it is slightly separate from the
20
- // field's background
21
- backgroundColor = "var(--ds-background-neutral, #091E420F)";
22
- color = "var(--ds-text-disabled, #091E424F)";
23
- } else if (isFocused) {
24
- backgroundColor = "var(--ds-background-selected, #E9F2FF)";
25
- color = "var(--ds-text-selected, hsl(0, 0%, 20%))";
26
- } else {
27
- backgroundColor = fg('platform-component-visual-refresh') ? "var(--ds-background-neutral-subtle-hovered, #091E420F)" : "var(--ds-background-neutral, #091E420F)";
28
- color = "var(--ds-text, hsl(0, 0%, 20%))";
29
- }
30
- return {
31
- label: 'multiValue',
32
- display: 'flex',
33
- minWidth: 0,
34
- // resolves flex/text-overflow bug
35
- margin: "var(--ds-space-025, 2px)",
36
- borderRadius: "var(--ds-border-radius-050, 2px)",
37
- backgroundColor,
38
- boxShadow: isFocused ? `0 0 0 2px ${"var(--ds-surface, transparent)"}, 0 0 0 4px ${"var(--ds-border-focused, transparent)"}` : 'none',
39
- maxWidth: '100%',
40
- '@media screen and (-ms-high-contrast: active)': {
41
- border: isFocused ? '1px solid transparent' : 'none'
42
- },
43
- color,
44
- ...(fg('platform-component-visual-refresh') && {
45
- borderRadius: "var(--ds-border-radius-100, 4px)",
46
- // Hardcode this color for visual refresh as there is no token color yet
47
- borderColor: '#B7B9BE',
48
- borderWidth: "var(--ds-border-width, 1px)",
49
- borderStyle: 'solid',
50
- backgroundColor: "var(--ds-background-input, #FFFFFF)"
51
- })
52
- };
53
- };
54
- export const multiValueLabelCSS = ({
55
- cropWithEllipsis,
56
- isDisabled
57
- }) => ({
58
- overflow: 'hidden',
59
- textOverflow: cropWithEllipsis || cropWithEllipsis === undefined ? 'ellipsis' : undefined,
60
- whiteSpace: 'nowrap',
61
- borderRadius: "var(--ds-border-radius-050, 2px)",
62
- // eslint-disable-next-line @atlaskit/design-system/use-tokens-typography
63
- fontSize: '85%',
64
- font: "var(--ds-font-body-UNSAFE_small, normal 400 12px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
65
- padding: "var(--ds-space-025, 2px)",
66
- color: isDisabled ? "var(--ds-text-disabled, #091E424F)" : 'inherit',
67
- paddingLeft: "var(--ds-space-075, 6px)",
68
- ...(fg('platform-component-visual-refresh') && {
69
- font: "var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, \"Helvetica Neue\", sans-serif)",
70
- paddingTop: 0,
71
- paddingBottom: 0,
72
- paddingLeft: "var(--ds-space-050, 4px)"
73
- })
74
- });
75
- export const multiValueRemoveCSS = ({
76
- isFocused
77
- }) => ({
78
- alignItems: 'center',
79
- display: 'flex',
80
- backgroundColor: isFocused ? "var(--ds-UNSAFE-transparent, transparent)" : undefined,
81
- fill: isFocused ? "var(--ds-text-selected, #000)" : "var(--ds-text, #000)",
82
- paddingLeft: "var(--ds-space-025, 2px)",
83
- paddingRight: "var(--ds-space-025, 2px)",
84
- borderRadius: '0px 2px 2px 0px',
85
- // DSP-6470 we should style like Tag once we have the :has selector
86
- ':hover': {
87
- backgroundColor: "var(--ds-background-danger-hovered, #FFD5D2)",
88
- fill: "var(--ds-text-danger, #000)"
89
- },
90
- ':active': {
91
- backgroundColor: "var(--ds-background-danger-pressed, #FD9891)",
92
- fill: "var(--ds-text-danger, #000)"
93
- },
94
- ...(fg('platform-component-visual-refresh') && {
95
- backgroundColor: "var(--ds-background-neutral-subtle, #00000000)",
96
- border: 'none',
97
- alignItems: 'center',
98
- justifyContent: 'center',
99
- alignSelf: 'center',
100
- appearance: 'none',
101
- borderRadius: "var(--ds-border-radius, 4px)",
102
- color: "var(--ds-text, #172B4D)",
103
- padding: "var(--ds-space-025, 2px)",
104
- marginRight: "var(--ds-space-025, 2px)",
105
- ':focus-visible': {
106
- outlineOffset: "var(--ds-space-negative-025, -2px)"
107
- },
108
- ':hover': {
109
- backgroundColor: "var(--ds-background-neutral-subtle-hovered, #091E420F)"
110
- },
111
- ':active': {
112
- backgroundColor: "var(--ds-background-neutral-subtle-pressed, #091E4224)"
113
- }
114
- })
115
- });
116
- // eslint-disable-next-line @repo/internal/react/require-jsdoc
117
- const MultiValueGeneric = ({
118
- children,
119
- innerProps
120
- }) => jsx("div", innerProps, children);
121
-
4
+ import Compiled, { MultiValueContainer as CompiledMultiValueContainer, multiValueCSS as CompiledMultiValueCSS, MultiValueLabel as CompiledMultiValueLabel, multiValueLabelCSS as CompiledMultiValueLabelCSS, MultiValueRemove as CompiledMultiValueRemove, multiValueRemoveCSS as CompiledMultiValueRemoveCSS } from '../compiled/components/multi-value';
5
+ import Emotion, { MultiValueContainer as EmotionMultiValueContainer, multiValueCSS as EmotionMultiValueCSS, MultiValueLabel as EmotionMultiValueLabel, multiValueLabelCSS as EmotionMultiValueLabelCSS, MultiValueRemove as EmotionMultiValueRemove, multiValueRemoveCSS as EmotionMultiValueRemoveCSS } from '../emotion/components/multi-value';
6
+ export const multiValueCSS = props => fg('compiled-react-select') ? CompiledMultiValueCSS() : EmotionMultiValueCSS(props);
7
+ export const multiValueLabelCSS = props => fg('compiled-react-select') ? CompiledMultiValueLabelCSS() : EmotionMultiValueLabelCSS(props);
8
+ export const multiValueRemoveCSS = props => fg('compiled-react-select') ? CompiledMultiValueRemoveCSS() : EmotionMultiValueRemoveCSS(props);
122
9
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
123
- export const MultiValueContainer = MultiValueGeneric;
10
+ export const MultiValueContainer = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledMultiValueContainer, props) : /*#__PURE__*/React.createElement(EmotionMultiValueContainer, props);
124
11
 
125
12
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
126
- export const MultiValueLabel = MultiValueGeneric;
127
- const disabledStyles = css({
128
- display: 'none'
129
- });
130
- const enabledStyles = css({
131
- display: 'inherit'
132
- });
133
- const iconWrapperStyles = xcss({
134
- padding: 'space.025'
135
- });
136
- const renderIcon = () => {
137
- // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
138
- if (fg('platform-component-visual-refresh')) {
139
- return jsx(CrossIcon, {
140
- label: "",
141
- color: "currentColor"
142
- });
143
- }
144
-
145
- // eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
146
- if (fg('platform-visual-refresh-icons-legacy-facade')) {
147
- return jsx(Inline, {
148
- xcss: iconWrapperStyles
149
- }, jsx(CrossIcon, {
150
- label: "",
151
- color: "currentColor"
152
- }));
153
- }
154
- return (
155
- // eslint-disable-next-line @atlaskit/design-system/no-legacy-icons
156
- jsx(LegacySelectClearIcon, {
157
- label: "",
158
- primaryColor: "transparent",
159
- size: "small",
160
- secondaryColor: "inherit"
161
- })
162
- );
163
- };
164
- export function MultiValueRemove({
165
- isDisabled,
166
- innerProps
167
- }) {
13
+ export const MultiValueLabel = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledMultiValueLabel, props) : /*#__PURE__*/React.createElement(EmotionMultiValueLabel, props);
14
+ export function MultiValueRemove(props) {
168
15
  return (
169
16
  // The Remove button is intentionally excluded from the tab order, please avoid assigning a non-negative tabIndex to it. Context: https://hello.atlassian.net/wiki/spaces/A11YKB/pages/3031993460/Clear+Options+on+an+Input+Field
170
- jsx("div", innerProps, jsx("div", {
171
- css: isDisabled ? disabledStyles : enabledStyles,
172
- "data-testid": isDisabled ? 'hide-clear-icon' : 'show-clear-icon'
173
- }, renderIcon()))
17
+ fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledMultiValueRemove, props) : /*#__PURE__*/React.createElement(EmotionMultiValueRemove, props)
174
18
  );
175
19
  }
176
- const MultiValue = props => {
177
- const {
178
- children,
179
- components,
180
- data,
181
- innerProps,
182
- isDisabled,
183
- removeProps,
184
- selectProps
185
- } = props;
186
- const {
187
- Container,
188
- Label,
189
- Remove
190
- } = components;
191
- const ariaLabel = typeof children === 'string' ? children : data.label;
192
- return jsx(Container, {
193
- data: data,
194
- innerProps: {
195
- ...getStyleProps(props, 'multiValue', {
196
- 'multi-value': true,
197
- 'multi-value--is-disabled': isDisabled
198
- }),
199
- ...innerProps
200
- },
201
- selectProps: selectProps
202
- }, jsx(Label, {
203
- data: data,
204
- innerProps: {
205
- ...getStyleProps(props, 'multiValueLabel', {
206
- 'multi-value__label': true
207
- })
208
- },
209
- selectProps: selectProps
210
- }, children), jsx(Remove, {
211
- data: data,
212
- innerProps: {
213
- ...getStyleProps(props, 'multiValueRemove', {
214
- 'multi-value__remove': true
215
- }),
216
- role: 'button',
217
- tabIndex: -1,
218
- 'aria-label': `${ariaLabel || 'option'}, remove`,
219
- ...removeProps
220
- },
221
- isDisabled: isDisabled,
222
- selectProps: selectProps
223
- }));
224
- };
20
+ const MultiValue = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(Compiled, props) : /*#__PURE__*/React.createElement(Emotion, props);
225
21
 
226
22
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
227
23
  export default MultiValue;
@@ -1,78 +1,10 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- /**
3
- * @jsxRuntime classic
4
- * @jsx jsx
5
- */
6
-
7
- import { jsx } from '@emotion/react';
8
- import { getStyleProps } from '../utils';
9
- export const optionCSS = ({
10
- isDisabled,
11
- isFocused,
12
- isSelected
13
- }) => {
14
- let color = "var(--ds-text, #172B4D)";
15
- if (isDisabled) {
16
- color = "var(--ds-text-disabled, #091E424F)";
17
- } else if (isSelected) {
18
- color = "var(--ds-text-selected, #0C66E4)";
19
- }
20
- let boxShadow;
21
- let backgroundColor;
22
- if (isDisabled) {
23
- backgroundColor = undefined;
24
- } else if (isSelected && isFocused) {
25
- backgroundColor = "var(--ds-background-selected-hovered, #CCE0FF)";
26
- } else if (isSelected) {
27
- backgroundColor = "var(--ds-background-selected, #E9F2FF)";
28
- } else if (isFocused) {
29
- backgroundColor = "var(--ds-background-neutral-subtle-hovered, #091E420F)";
30
- }
31
- if (!isDisabled && (isFocused || isSelected)) {
32
- boxShadow = `inset 2px 0px 0px ${"var(--ds-border-selected, #0C66E4)"}`;
33
- }
34
- const cursor = isDisabled ? 'not-allowed' : 'default';
35
- return {
36
- label: 'option',
37
- display: 'block',
38
- // eslint-disable-next-line @atlaskit/design-system/use-tokens-typography
39
- fontSize: 'inherit',
40
- width: '100%',
41
- userSelect: 'none',
42
- WebkitTapHighlightColor: 'rgba(0, 0, 0, 0)',
43
- padding: `${"var(--ds-space-075, 6px)"} ${"var(--ds-space-150, 12px)"}`,
44
- backgroundColor,
45
- color,
46
- cursor,
47
- boxShadow,
48
- ':active': {
49
- backgroundColor: !isDisabled ? isSelected ? "var(--ds-background-selected-pressed, #85B8FF)" : "var(--ds-background-neutral-subtle-pressed, #091E4224)" : undefined
50
- },
51
- '@media screen and (-ms-high-contrast: active)': {
52
- borderLeft: !isDisabled && (isFocused || isSelected) ? '2px solid transparent' : ''
53
- }
54
- };
55
- };
56
- const Option = props => {
57
- const {
58
- children,
59
- isDisabled,
60
- isFocused,
61
- isSelected,
62
- innerRef,
63
- innerProps
64
- } = props;
65
- return jsx("div", _extends({}, getStyleProps(props, 'option', {
66
- option: true,
67
- 'option--is-disabled': isDisabled,
68
- 'option--is-focused': isFocused,
69
- 'option--is-selected': isSelected
70
- }), {
71
- ref: innerRef
72
- }, innerProps, {
73
- tabIndex: -1
74
- }), children);
75
- };
1
+ /* eslint-disable @repo/internal/react/no-unsafe-spread-props */
2
+ import React from 'react';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
4
+ import CompiledOption, { optionCSS as compiledOptionCSS } from '../compiled/components/option';
5
+ import EmotionOption, { optionCSS as emotionOptionCSS } from '../emotion/components/option';
6
+ export const optionCSS = props => fg('compiled-react-select') ? compiledOptionCSS() : emotionOptionCSS(props);
7
+ const Option = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(CompiledOption, props) : /*#__PURE__*/React.createElement(EmotionOption, props);
76
8
 
77
9
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
78
10
  export default Option;
@@ -1,28 +1,10 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- /**
3
- * @jsxRuntime classic
4
- * @jsx jsx
5
- */
6
-
7
- import { jsx } from '@emotion/react';
8
- import { getStyleProps } from '../utils';
9
- export const placeholderCSS = ({
10
- isDisabled
11
- }) => ({
12
- label: 'placeholder',
13
- gridArea: '1 / 1 / 2 / 3',
14
- margin: `0 ${"var(--ds-space-025, 2px)"}`,
15
- color: isDisabled ? "var(--ds-text-disabled, #091E424F)" : "var(--ds-text-subtlest, #626F86)"
16
- });
17
- const Placeholder = props => {
18
- const {
19
- children,
20
- innerProps
21
- } = props;
22
- return jsx("div", _extends({}, getStyleProps(props, 'placeholder', {
23
- placeholder: true
24
- }), innerProps), children);
25
- };
1
+ /* eslint-disable @repo/internal/react/no-unsafe-spread-props */
2
+ import React from 'react';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
4
+ import Compiled, { placeholderCSS as compiledPlaceholderCSS } from '../compiled/components/placeholder';
5
+ import Emotion, { placeholderCSS as emotionPlaceholderCSS } from '../emotion/components/placeholder';
6
+ export const placeholderCSS = props => fg('compiled-react-select') ? compiledPlaceholderCSS() : emotionPlaceholderCSS(props);
7
+ const Placeholder = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(Compiled, props) : /*#__PURE__*/React.createElement(Emotion, props);
26
8
 
27
9
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
28
10
  export default Placeholder;
@@ -1,34 +1,10 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- /**
3
- * @jsxRuntime classic
4
- * @jsx jsx
5
- */
6
-
7
- import { jsx } from '@emotion/react';
8
- import { getStyleProps } from '../utils';
9
- export const css = ({
10
- isDisabled
11
- }) => ({
12
- label: 'singleValue',
13
- gridArea: '1 / 1 / 2 / 3',
14
- maxWidth: '100%',
15
- overflow: 'hidden',
16
- textOverflow: 'ellipsis',
17
- whiteSpace: 'nowrap',
18
- margin: `0 ${"var(--ds-space-025, 2px)"}`,
19
- color: isDisabled ? "var(--ds-text-disabled, #091E424F)" : "var(--ds-text, #172B4D)"
20
- });
21
- const SingleValue = props => {
22
- const {
23
- children,
24
- isDisabled,
25
- innerProps
26
- } = props;
27
- return jsx("div", _extends({}, getStyleProps(props, 'singleValue', {
28
- 'single-value': true,
29
- 'single-value--is-disabled': isDisabled
30
- }), innerProps), children);
31
- };
1
+ /* eslint-disable @repo/internal/react/no-unsafe-spread-props */
2
+ import React from 'react';
3
+ import { fg } from '@atlaskit/platform-feature-flags';
4
+ import Compiled, { css as compiledCSS } from '../compiled/components/single-value';
5
+ import Emotion, { css as emotionCSS } from '../emotion/components/single-value';
6
+ export const css = props => fg('compiled-react-select') ? compiledCSS() : emotionCSS(props);
7
+ const SingleValue = props => fg('compiled-react-select') ? /*#__PURE__*/React.createElement(Compiled, props) : /*#__PURE__*/React.createElement(Emotion, props);
32
8
 
33
9
  // eslint-disable-next-line @repo/internal/react/require-jsdoc
34
10
  export default SingleValue;