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