@multiplatform.one/forms 8.2.2 → 8.4.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 (570) hide show
  1. package/dist/cjs/AdaptivePopup/index.native.js +2 -2
  2. package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
  3. package/dist/cjs/Button/index.native.js +2 -2
  4. package/dist/cjs/Button/index.native.js.map +1 -1
  5. package/dist/cjs/Composer/index.native.js +1 -1
  6. package/dist/cjs/Composer/index.native.js.map +1 -1
  7. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js +1 -1
  8. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  9. package/dist/cjs/ContextualSaveBar/index.native.js +3 -3
  10. package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -1
  11. package/dist/cjs/ControlGroup/index.cjs +2 -1
  12. package/dist/cjs/ControlGroup/index.native.js +3 -2
  13. package/dist/cjs/ControlGroup/index.native.js.map +1 -1
  14. package/dist/cjs/DescriptionList/index.native.js +2 -2
  15. package/dist/cjs/DescriptionList/index.native.js.map +1 -1
  16. package/dist/cjs/FieldDisplay/index.native.js +1 -1
  17. package/dist/cjs/FieldDisplay/index.native.js.map +1 -1
  18. package/dist/cjs/FloatingPanel/index.native.js +20 -2
  19. package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
  20. package/dist/cjs/FloatingPanel/trailingAction.native.js +1 -1
  21. package/dist/cjs/FloatingPanel/trailingAction.native.js.map +1 -1
  22. package/dist/cjs/Form/index.native.js +1 -1
  23. package/dist/cjs/Form/index.native.js.map +1 -1
  24. package/dist/cjs/InputParts/index.cjs +1 -0
  25. package/dist/cjs/InputParts/index.native.js +1 -0
  26. package/dist/cjs/InputParts/index.native.js.map +1 -1
  27. package/dist/cjs/Wheel/index.cjs +22 -6
  28. package/dist/cjs/Wheel/index.native.js +26 -8
  29. package/dist/cjs/Wheel/index.native.js.map +1 -1
  30. package/dist/cjs/fieldLayout.native.js +1 -1
  31. package/dist/cjs/fieldLayout.native.js.map +1 -1
  32. package/dist/cjs/fields/Barcode/BarcodeScanner.native.js +1 -1
  33. package/dist/cjs/fields/Barcode/index.native.js +2 -2
  34. package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
  35. package/dist/cjs/fields/Checkbox/Checkbox.native.js +1 -1
  36. package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
  37. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +1 -1
  38. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  39. package/dist/cjs/fields/ColorPicker/index.native.js +2 -2
  40. package/dist/cjs/fields/ColorPicker/index.native.js.map +1 -1
  41. package/dist/cjs/fields/ColorPicker/parts.native.js +2 -2
  42. package/dist/cjs/fields/ColorPicker/parts.native.js.map +1 -1
  43. package/dist/cjs/fields/Combobox/index.native.js +5 -5
  44. package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
  45. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +2 -2
  46. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  47. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +3 -3
  48. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  49. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +2 -2
  50. package/dist/cjs/fields/DatePicker/MonthPicker.native.js +2 -2
  51. package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
  52. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +2 -2
  53. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  54. package/dist/cjs/fields/DatePicker/catalog.native.js +2 -2
  55. package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
  56. package/dist/cjs/fields/DatePicker/index.native.js +2 -2
  57. package/dist/cjs/fields/DatePicker/parts.cjs +33 -30
  58. package/dist/cjs/fields/DatePicker/parts.native.js +36 -32
  59. package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
  60. package/dist/cjs/fields/Duration/DurationWheel.native.js +1 -1
  61. package/dist/cjs/fields/Duration/index.native.js +3 -3
  62. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  63. package/dist/cjs/fields/FileUpload/index.cjs +32 -15
  64. package/dist/cjs/fields/FileUpload/index.native.js +42 -21
  65. package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
  66. package/dist/cjs/fields/Geolocation/index.native.js +5 -5
  67. package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
  68. package/dist/cjs/fields/Icon/index.native.js +3 -3
  69. package/dist/cjs/fields/Icon/index.native.js.map +1 -1
  70. package/dist/cjs/fields/ImageField/index.cjs +35 -20
  71. package/dist/cjs/fields/ImageField/index.native.js +39 -22
  72. package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
  73. package/dist/cjs/fields/Input/index.native.js +3 -3
  74. package/dist/cjs/fields/Input/index.native.js.map +1 -1
  75. package/dist/cjs/fields/MentionInput/index.native.js +3 -3
  76. package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
  77. package/dist/cjs/fields/OTPInput/index.native.js +3 -3
  78. package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
  79. package/dist/cjs/fields/PhoneInput/index.native.js +3 -3
  80. package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
  81. package/dist/cjs/fields/Progress/index.cjs +5 -0
  82. package/dist/cjs/fields/Progress/index.native.js +6 -1
  83. package/dist/cjs/fields/Progress/index.native.js.map +1 -1
  84. package/dist/cjs/fields/RadioGroup/index.native.js +1 -1
  85. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  86. package/dist/cjs/fields/Rating/index.native.js +1 -1
  87. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  88. package/dist/cjs/fields/SearchInput/index.native.js +2 -2
  89. package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
  90. package/dist/cjs/fields/Select/index.native.js +4 -4
  91. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  92. package/dist/cjs/fields/Signature/index.native.js +2 -2
  93. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  94. package/dist/cjs/fields/Slider/index.cjs +38 -12
  95. package/dist/cjs/fields/Slider/index.native.js +40 -12
  96. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  97. package/dist/cjs/fields/Stepper/index.native.js +2 -2
  98. package/dist/cjs/fields/Stepper/index.native.js.map +1 -1
  99. package/dist/cjs/fields/Switch/index.cjs +10 -6
  100. package/dist/cjs/fields/Switch/index.native.js +12 -8
  101. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  102. package/dist/cjs/fields/TextArea/index.native.js +2 -2
  103. package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
  104. package/dist/cjs/fields/TimePicker/catalog.native.js +3 -3
  105. package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -1
  106. package/dist/cjs/fields/TimePicker/index.native.js +2 -2
  107. package/dist/cjs/fields/TimePicker/parts.cjs +9 -10
  108. package/dist/cjs/fields/TimePicker/parts.native.js +10 -11
  109. package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
  110. package/dist/cjs/fields/TimeRangeScrubber/index.native.js +2 -2
  111. package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -1
  112. package/dist/cjs/fields/ToggleGroup/index.cjs +1 -0
  113. package/dist/cjs/fields/ToggleGroup/index.native.js +2 -1
  114. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  115. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js +1 -1
  116. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  117. package/dist/cjs/fields/pickerHandle.cjs +18 -0
  118. package/dist/cjs/fields/pickerHandle.native.js +21 -0
  119. package/dist/cjs/fields/pickerHandle.native.js.map +1 -0
  120. package/dist/cjs/hooks/useHoldCue.cjs +54 -0
  121. package/dist/cjs/hooks/useHoldCue.native.js +62 -0
  122. package/dist/cjs/hooks/useHoldCue.native.js.map +1 -0
  123. package/dist/cjs/index.cjs +4 -0
  124. package/dist/cjs/index.gnome.cjs +4 -0
  125. package/dist/cjs/index.gnome.native.js +41 -37
  126. package/dist/cjs/index.gnome.native.js.map +1 -1
  127. package/dist/cjs/index.native.js +50 -46
  128. package/dist/cjs/index.native.js.map +1 -1
  129. package/dist/cjs/keyboard/KeyboardDoneBar.native.js +1 -1
  130. package/dist/cjs/shared/TimeColumn.native.js +1 -1
  131. package/dist/cjs/shared/TimeColumn.native.js.map +1 -1
  132. package/dist/cjs/shared/colorRamps.cjs +9 -7
  133. package/dist/cjs/shared/colorRamps.native.js +9 -7
  134. package/dist/cjs/shared/colorRamps.native.js.map +1 -1
  135. package/dist/cjs/shared/controlTrack.cjs +32 -0
  136. package/dist/cjs/shared/controlTrack.native.js +35 -0
  137. package/dist/cjs/shared/controlTrack.native.js.map +1 -0
  138. package/dist/cjs/shared/floatingList.native.js +1 -1
  139. package/dist/cjs/shared/floatingList.native.js.map +1 -1
  140. package/dist/cjs/shared/utils.native.js +1 -1
  141. package/dist/cjs/shared/utils.native.js.map +1 -1
  142. package/dist/esm/ControlGroup/index.mjs +2 -1
  143. package/dist/esm/ControlGroup/index.mjs.map +1 -1
  144. package/dist/esm/ControlGroup/index.native.js +2 -1
  145. package/dist/esm/ControlGroup/index.native.js.map +1 -1
  146. package/dist/esm/FloatingPanel/index.native.js +20 -2
  147. package/dist/esm/FloatingPanel/index.native.js.map +1 -1
  148. package/dist/esm/InputParts/index.mjs +1 -0
  149. package/dist/esm/InputParts/index.mjs.map +1 -1
  150. package/dist/esm/InputParts/index.native.js +1 -0
  151. package/dist/esm/InputParts/index.native.js.map +1 -1
  152. package/dist/esm/Wheel/index.mjs +23 -7
  153. package/dist/esm/Wheel/index.mjs.map +1 -1
  154. package/dist/esm/Wheel/index.native.js +27 -9
  155. package/dist/esm/Wheel/index.native.js.map +1 -1
  156. package/dist/esm/fields/DatePicker/parts.mjs +35 -32
  157. package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
  158. package/dist/esm/fields/DatePicker/parts.native.js +36 -32
  159. package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
  160. package/dist/esm/fields/FileUpload/index.mjs +33 -16
  161. package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
  162. package/dist/esm/fields/FileUpload/index.native.js +41 -20
  163. package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
  164. package/dist/esm/fields/ImageField/index.mjs +36 -21
  165. package/dist/esm/fields/ImageField/index.mjs.map +1 -1
  166. package/dist/esm/fields/ImageField/index.native.js +38 -21
  167. package/dist/esm/fields/ImageField/index.native.js.map +1 -1
  168. package/dist/esm/fields/Progress/index.mjs +5 -0
  169. package/dist/esm/fields/Progress/index.mjs.map +1 -1
  170. package/dist/esm/fields/Progress/index.native.js +5 -0
  171. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  172. package/dist/esm/fields/Slider/index.mjs +38 -12
  173. package/dist/esm/fields/Slider/index.mjs.map +1 -1
  174. package/dist/esm/fields/Slider/index.native.js +39 -11
  175. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  176. package/dist/esm/fields/Switch/index.mjs +10 -6
  177. package/dist/esm/fields/Switch/index.mjs.map +1 -1
  178. package/dist/esm/fields/Switch/index.native.js +10 -6
  179. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  180. package/dist/esm/fields/TimePicker/parts.mjs +9 -10
  181. package/dist/esm/fields/TimePicker/parts.mjs.map +1 -1
  182. package/dist/esm/fields/TimePicker/parts.native.js +9 -10
  183. package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
  184. package/dist/esm/fields/ToggleGroup/index.mjs +2 -1
  185. package/dist/esm/fields/ToggleGroup/index.mjs.map +1 -1
  186. package/dist/esm/fields/ToggleGroup/index.native.js +2 -1
  187. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  188. package/dist/esm/fields/pickerHandle.mjs +2 -0
  189. package/dist/esm/fields/pickerHandle.mjs.map +1 -0
  190. package/dist/esm/fields/pickerHandle.native.js +2 -0
  191. package/dist/esm/fields/pickerHandle.native.js.map +1 -0
  192. package/dist/esm/hooks/useHoldCue.mjs +27 -0
  193. package/dist/esm/hooks/useHoldCue.mjs.map +1 -0
  194. package/dist/esm/hooks/useHoldCue.native.js +32 -0
  195. package/dist/esm/hooks/useHoldCue.native.js.map +1 -0
  196. package/dist/esm/index.gnome.mjs +2 -1
  197. package/dist/esm/index.gnome.mjs.map +1 -1
  198. package/dist/esm/index.gnome.native.js +2 -1
  199. package/dist/esm/index.gnome.native.js.map +1 -1
  200. package/dist/esm/index.mjs +2 -1
  201. package/dist/esm/index.mjs.map +1 -1
  202. package/dist/esm/index.native.js +2 -1
  203. package/dist/esm/index.native.js.map +1 -1
  204. package/dist/esm/shared/colorRamps.mjs +9 -7
  205. package/dist/esm/shared/colorRamps.mjs.map +1 -1
  206. package/dist/esm/shared/colorRamps.native.js +9 -7
  207. package/dist/esm/shared/colorRamps.native.js.map +1 -1
  208. package/dist/esm/shared/controlTrack.mjs +7 -0
  209. package/dist/esm/shared/controlTrack.mjs.map +1 -0
  210. package/dist/esm/shared/controlTrack.native.js +7 -0
  211. package/dist/esm/shared/controlTrack.native.js.map +1 -0
  212. package/dist/esm/shared/nativeOverlayWindow.mjs.map +1 -1
  213. package/dist/esm/shared/systemControls.mjs.map +1 -1
  214. package/dist/esm/shared/systemControls.native.js.map +1 -1
  215. package/dist/jsx/AdaptivePopup/index.native.js +2 -2
  216. package/dist/jsx/AdaptivePopup/index.native.js.map +1 -1
  217. package/dist/jsx/Button/IconButtonGroup.native.js.map +1 -1
  218. package/dist/jsx/Button/circleGlyph.native.js.map +1 -1
  219. package/dist/jsx/Button/iconButtonGroupContext.native.js.map +1 -1
  220. package/dist/jsx/Button/index.native.js +2 -2
  221. package/dist/jsx/Button/index.native.js.map +1 -1
  222. package/dist/jsx/Button/webGlass.native.js.map +1 -1
  223. package/dist/jsx/Chip/index.native.js.map +1 -1
  224. package/dist/jsx/Composer/index.native.js +1 -1
  225. package/dist/jsx/Composer/index.native.js.map +1 -1
  226. package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.native.js +1 -1
  227. package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  228. package/dist/jsx/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
  229. package/dist/jsx/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
  230. package/dist/jsx/ContextualSaveBar/index.native.js +3 -3
  231. package/dist/jsx/ContextualSaveBar/index.native.js.map +1 -1
  232. package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
  233. package/dist/jsx/ControlGroup/index.mjs +2 -1
  234. package/dist/jsx/ControlGroup/index.mjs.map +1 -1
  235. package/dist/jsx/ControlGroup/index.native.js +3 -2
  236. package/dist/jsx/ControlGroup/index.native.js.map +1 -1
  237. package/dist/jsx/DescriptionList/index.native.js +2 -2
  238. package/dist/jsx/DescriptionList/index.native.js.map +1 -1
  239. package/dist/jsx/ErrorSummary.native.js.map +1 -1
  240. package/dist/jsx/FieldDisplay/editMode.native.js.map +1 -1
  241. package/dist/jsx/FieldDisplay/formatters.native.js.map +1 -1
  242. package/dist/jsx/FieldDisplay/index.native.js +1 -1
  243. package/dist/jsx/FieldDisplay/index.native.js.map +1 -1
  244. package/dist/jsx/FieldGroup.native.js.map +1 -1
  245. package/dist/jsx/FloatingPanel/PanelHeader.native.js.map +1 -1
  246. package/dist/jsx/FloatingPanel/RegularPanel.native.js.map +1 -1
  247. package/dist/jsx/FloatingPanel/compactFace.native.js.map +1 -1
  248. package/dist/jsx/FloatingPanel/containingBlock.native.js.map +1 -1
  249. package/dist/jsx/FloatingPanel/coverRect.native.js.map +1 -1
  250. package/dist/jsx/FloatingPanel/echoContext.native.js.map +1 -1
  251. package/dist/jsx/FloatingPanel/index.native.js +20 -2
  252. package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
  253. package/dist/jsx/FloatingPanel/nestedAction.native.js.map +1 -1
  254. package/dist/jsx/FloatingPanel/paintedBox.native.js.map +1 -1
  255. package/dist/jsx/FloatingPanel/panelWidth.native.js.map +1 -1
  256. package/dist/jsx/FloatingPanel/pointAnchor.native.js.map +1 -1
  257. package/dist/jsx/FloatingPanel/regularPlacement.native.js.map +1 -1
  258. package/dist/jsx/FloatingPanel/trailingAction.native.js +1 -1
  259. package/dist/jsx/FloatingPanel/trailingAction.native.js.map +1 -1
  260. package/dist/jsx/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  261. package/dist/jsx/Form/index.native.js +1 -1
  262. package/dist/jsx/Form/index.native.js.map +1 -1
  263. package/dist/jsx/Form/submissionController.native.js.map +1 -1
  264. package/dist/jsx/Form/validateOn.native.js.map +1 -1
  265. package/dist/jsx/FormGrid.native.js.map +1 -1
  266. package/dist/jsx/FormSection.native.js.map +1 -1
  267. package/dist/jsx/InputParts/PasswordReveal.native.js.map +1 -1
  268. package/dist/jsx/InputParts/index.mjs +1 -0
  269. package/dist/jsx/InputParts/index.mjs.map +1 -1
  270. package/dist/jsx/InputParts/index.native.js +1 -0
  271. package/dist/jsx/InputParts/index.native.js.map +1 -1
  272. package/dist/jsx/InputParts/keyboardAppearance.native.js.map +1 -1
  273. package/dist/jsx/Label/index.native.js.map +1 -1
  274. package/dist/jsx/MediaPicker/base64.native.js.map +1 -1
  275. package/dist/jsx/MediaPicker/payload.native.js.map +1 -1
  276. package/dist/jsx/MediaPicker/types.native.js.map +1 -1
  277. package/dist/jsx/MediaPicker/useMediaPicker.native.js.map +1 -1
  278. package/dist/jsx/Skeleton/index.native.js.map +1 -1
  279. package/dist/jsx/Spinner/SpinnerGlyph.native.js.map +1 -1
  280. package/dist/jsx/Spinner/spinnerSize.native.js.map +1 -1
  281. package/dist/jsx/Table/index.native.js.map +1 -1
  282. package/dist/jsx/Wheel/haptic.native.js.map +1 -1
  283. package/dist/jsx/Wheel/index.mjs +23 -7
  284. package/dist/jsx/Wheel/index.mjs.map +1 -1
  285. package/dist/jsx/Wheel/index.native.js +26 -8
  286. package/dist/jsx/Wheel/index.native.js.map +1 -1
  287. package/dist/jsx/Wheel/wheelShared.native.js.map +1 -1
  288. package/dist/jsx/actionLabel.native.js.map +1 -1
  289. package/dist/jsx/fieldDefaults.native.js.map +1 -1
  290. package/dist/jsx/fieldLayout.native.js +1 -1
  291. package/dist/jsx/fieldLayout.native.js.map +1 -1
  292. package/dist/jsx/fields/Barcode/BarcodePreview.native.js.map +1 -1
  293. package/dist/jsx/fields/Barcode/BarcodeScanner.native.js +1 -1
  294. package/dist/jsx/fields/Barcode/code128.native.js.map +1 -1
  295. package/dist/jsx/fields/Barcode/index.native.js +2 -2
  296. package/dist/jsx/fields/Barcode/index.native.js.map +1 -1
  297. package/dist/jsx/fields/Barcode/qr.native.js.map +1 -1
  298. package/dist/jsx/fields/Barcode/scannerTypes.native.js.map +1 -1
  299. package/dist/jsx/fields/Checkbox/Checkbox.native.js +1 -1
  300. package/dist/jsx/fields/Checkbox/Checkbox.native.js.map +1 -1
  301. package/dist/jsx/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  302. package/dist/jsx/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  303. package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  304. package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js +1 -1
  305. package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  306. package/dist/jsx/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
  307. package/dist/jsx/fields/Checkbox/index.native.js.map +1 -1
  308. package/dist/jsx/fields/ColorPicker/SystemColorField.native.js.map +1 -1
  309. package/dist/jsx/fields/ColorPicker/index.native.js +2 -2
  310. package/dist/jsx/fields/ColorPicker/index.native.js.map +1 -1
  311. package/dist/jsx/fields/ColorPicker/parts.native.js +2 -2
  312. package/dist/jsx/fields/ColorPicker/parts.native.js.map +1 -1
  313. package/dist/jsx/fields/ColorPicker/systemColorWell.gnome.native.js.map +1 -1
  314. package/dist/jsx/fields/Combobox/authorOptions.native.js.map +1 -1
  315. package/dist/jsx/fields/Combobox/index.native.js +5 -5
  316. package/dist/jsx/fields/Combobox/index.native.js.map +1 -1
  317. package/dist/jsx/fields/DatePicker/Calendar.native.js.map +1 -1
  318. package/dist/jsx/fields/DatePicker/DateRangePicker.native.js +2 -2
  319. package/dist/jsx/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  320. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js +3 -3
  321. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  322. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +2 -2
  323. package/dist/jsx/fields/DatePicker/MonthPicker.native.js +2 -2
  324. package/dist/jsx/fields/DatePicker/MonthPicker.native.js.map +1 -1
  325. package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js +2 -2
  326. package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  327. package/dist/jsx/fields/DatePicker/catalog.native.js +2 -2
  328. package/dist/jsx/fields/DatePicker/catalog.native.js.map +1 -1
  329. package/dist/jsx/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  330. package/dist/jsx/fields/DatePicker/index.native.js +2 -2
  331. package/dist/jsx/fields/DatePicker/parts.mjs +35 -32
  332. package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
  333. package/dist/jsx/fields/DatePicker/parts.native.js +36 -32
  334. package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
  335. package/dist/jsx/fields/DatePicker/utils.native.js.map +1 -1
  336. package/dist/jsx/fields/Duration/DurationWheel.native.js +1 -1
  337. package/dist/jsx/fields/Duration/durationMath.native.js.map +1 -1
  338. package/dist/jsx/fields/Duration/durationWheelTypes.native.js.map +1 -1
  339. package/dist/jsx/fields/Duration/index.native.js +3 -3
  340. package/dist/jsx/fields/Duration/index.native.js.map +1 -1
  341. package/dist/jsx/fields/FileUpload/filePickerTypes.native.js.map +1 -1
  342. package/dist/jsx/fields/FileUpload/index.mjs +33 -16
  343. package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
  344. package/dist/jsx/fields/FileUpload/index.native.js +42 -21
  345. package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
  346. package/dist/jsx/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
  347. package/dist/jsx/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  348. package/dist/jsx/fields/Geolocation/geoValue.native.js.map +1 -1
  349. package/dist/jsx/fields/Geolocation/geocoder.native.js.map +1 -1
  350. package/dist/jsx/fields/Geolocation/geocoderContext.native.js.map +1 -1
  351. package/dist/jsx/fields/Geolocation/index.native.js +5 -5
  352. package/dist/jsx/fields/Geolocation/index.native.js.map +1 -1
  353. package/dist/jsx/fields/Geolocation/mapMath.native.js.map +1 -1
  354. package/dist/jsx/fields/Geolocation/mapTypes.native.js.map +1 -1
  355. package/dist/jsx/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
  356. package/dist/jsx/fields/Geolocation/photonGeocoder.native.js.map +1 -1
  357. package/dist/jsx/fields/Icon/drawnSet.native.js.map +1 -1
  358. package/dist/jsx/fields/Icon/index.native.js +3 -3
  359. package/dist/jsx/fields/Icon/index.native.js.map +1 -1
  360. package/dist/jsx/fields/ImageField/index.mjs +36 -21
  361. package/dist/jsx/fields/ImageField/index.mjs.map +1 -1
  362. package/dist/jsx/fields/ImageField/index.native.js +39 -22
  363. package/dist/jsx/fields/ImageField/index.native.js.map +1 -1
  364. package/dist/jsx/fields/Input/index.native.js +3 -3
  365. package/dist/jsx/fields/Input/index.native.js.map +1 -1
  366. package/dist/jsx/fields/MentionInput/index.native.js +3 -3
  367. package/dist/jsx/fields/MentionInput/index.native.js.map +1 -1
  368. package/dist/jsx/fields/OTPInput/index.native.js +3 -3
  369. package/dist/jsx/fields/OTPInput/index.native.js.map +1 -1
  370. package/dist/jsx/fields/OTPInput/otpCellCss.native.js.map +1 -1
  371. package/dist/jsx/fields/OTPInput/otpCellEdge.native.js.map +1 -1
  372. package/dist/jsx/fields/PhoneInput/dialCodes.native.js.map +1 -1
  373. package/dist/jsx/fields/PhoneInput/index.native.js +3 -3
  374. package/dist/jsx/fields/PhoneInput/index.native.js.map +1 -1
  375. package/dist/jsx/fields/PhoneInput/phone.native.js.map +1 -1
  376. package/dist/jsx/fields/PhoneInput/regionNames.native.js.map +1 -1
  377. package/dist/jsx/fields/Progress/index.mjs +5 -0
  378. package/dist/jsx/fields/Progress/index.mjs.map +1 -1
  379. package/dist/jsx/fields/Progress/index.native.js +6 -1
  380. package/dist/jsx/fields/Progress/index.native.js.map +1 -1
  381. package/dist/jsx/fields/RadioGroup/index.native.js +1 -1
  382. package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
  383. package/dist/jsx/fields/Rating/index.native.js +1 -1
  384. package/dist/jsx/fields/Rating/index.native.js.map +1 -1
  385. package/dist/jsx/fields/Rating/ratingMath.native.js.map +1 -1
  386. package/dist/jsx/fields/Rating/types.native.js.map +1 -1
  387. package/dist/jsx/fields/SearchInput/index.native.js +2 -2
  388. package/dist/jsx/fields/SearchInput/index.native.js.map +1 -1
  389. package/dist/jsx/fields/Select/InlineChoices.native.js.map +1 -1
  390. package/dist/jsx/fields/Select/SheetPickerRow.native.js.map +1 -1
  391. package/dist/jsx/fields/Select/index.native.js +4 -4
  392. package/dist/jsx/fields/Select/index.native.js.map +1 -1
  393. package/dist/jsx/fields/Select/shouldInlineChoices.native.js.map +1 -1
  394. package/dist/jsx/fields/Signature/index.native.js +2 -2
  395. package/dist/jsx/fields/Signature/index.native.js.map +1 -1
  396. package/dist/jsx/fields/Slider/index.mjs +38 -12
  397. package/dist/jsx/fields/Slider/index.mjs.map +1 -1
  398. package/dist/jsx/fields/Slider/index.native.js +40 -12
  399. package/dist/jsx/fields/Slider/index.native.js.map +1 -1
  400. package/dist/jsx/fields/Slider/jumpMotion.native.js.map +1 -1
  401. package/dist/jsx/fields/Stepper/index.native.js +2 -2
  402. package/dist/jsx/fields/Stepper/index.native.js.map +1 -1
  403. package/dist/jsx/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
  404. package/dist/jsx/fields/Switch/footprint.native.js.map +1 -1
  405. package/dist/jsx/fields/Switch/index.mjs +10 -6
  406. package/dist/jsx/fields/Switch/index.mjs.map +1 -1
  407. package/dist/jsx/fields/Switch/index.native.js +12 -8
  408. package/dist/jsx/fields/Switch/index.native.js.map +1 -1
  409. package/dist/jsx/fields/TextArea/index.native.js +2 -2
  410. package/dist/jsx/fields/TextArea/index.native.js.map +1 -1
  411. package/dist/jsx/fields/TimePicker/catalog.native.js +3 -3
  412. package/dist/jsx/fields/TimePicker/catalog.native.js.map +1 -1
  413. package/dist/jsx/fields/TimePicker/index.native.js +2 -2
  414. package/dist/jsx/fields/TimePicker/parts.mjs +9 -10
  415. package/dist/jsx/fields/TimePicker/parts.mjs.map +1 -1
  416. package/dist/jsx/fields/TimePicker/parts.native.js +10 -11
  417. package/dist/jsx/fields/TimePicker/parts.native.js.map +1 -1
  418. package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  419. package/dist/jsx/fields/TimeRangeScrubber/index.native.js +2 -2
  420. package/dist/jsx/fields/TimeRangeScrubber/index.native.js.map +1 -1
  421. package/dist/jsx/fields/ToggleGroup/index.mjs +2 -1
  422. package/dist/jsx/fields/ToggleGroup/index.mjs.map +1 -1
  423. package/dist/jsx/fields/ToggleGroup/index.native.js +2 -1
  424. package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
  425. package/dist/jsx/fields/nativeDateTime/OsDateTimeSheet.native.js +1 -1
  426. package/dist/jsx/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  427. package/dist/jsx/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
  428. package/dist/jsx/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
  429. package/dist/jsx/fields/nativeDateTime/sheetKeyboard.native.js.map +1 -1
  430. package/dist/jsx/fields/nativeSelect.native.js.map +1 -1
  431. package/dist/jsx/fields/pickerHandle.mjs +2 -0
  432. package/dist/jsx/fields/pickerHandle.mjs.map +1 -0
  433. package/dist/jsx/fields/pickerHandle.native.js +21 -0
  434. package/dist/jsx/fields/pickerHandle.native.js.map +1 -0
  435. package/dist/jsx/fields/selectedOrder.native.js.map +1 -1
  436. package/dist/jsx/formSpacing.native.js.map +1 -1
  437. package/dist/jsx/hooks/useFocusManagement.native.js.map +1 -1
  438. package/dist/jsx/hooks/useHoldCue.mjs +27 -0
  439. package/dist/jsx/hooks/useHoldCue.mjs.map +1 -0
  440. package/dist/jsx/hooks/useHoldCue.native.js +62 -0
  441. package/dist/jsx/hooks/useHoldCue.native.js.map +1 -0
  442. package/dist/jsx/index.gnome.mjs +2 -1
  443. package/dist/jsx/index.gnome.mjs.map +1 -1
  444. package/dist/jsx/index.gnome.native.js +41 -37
  445. package/dist/jsx/index.gnome.native.js.map +1 -1
  446. package/dist/jsx/index.js +2 -1
  447. package/dist/jsx/index.js.map +1 -1
  448. package/dist/jsx/index.mjs +2 -1
  449. package/dist/jsx/index.mjs.map +1 -1
  450. package/dist/jsx/index.native.js +50 -46
  451. package/dist/jsx/index.native.js.map +1 -1
  452. package/dist/jsx/keyboard/KeyboardDoneBar.native.js +1 -1
  453. package/dist/jsx/keyboard/chain.native.js.map +1 -1
  454. package/dist/jsx/keyboard/index.native.js.map +1 -1
  455. package/dist/jsx/keyboard/types.native.js.map +1 -1
  456. package/dist/jsx/nativeTwins.native.js.map +1 -1
  457. package/dist/jsx/requiredMarking.native.js.map +1 -1
  458. package/dist/jsx/shared/CheckGlyph.native.js.map +1 -1
  459. package/dist/jsx/shared/TimeColumn.native.js +1 -1
  460. package/dist/jsx/shared/TimeColumn.native.js.map +1 -1
  461. package/dist/jsx/shared/capabilityPreflight.native.js.map +1 -1
  462. package/dist/jsx/shared/checkedOnField.native.js.map +1 -1
  463. package/dist/jsx/shared/choiceRowPress.native.js.map +1 -1
  464. package/dist/jsx/shared/colorRamps.mjs +9 -7
  465. package/dist/jsx/shared/colorRamps.mjs.map +1 -1
  466. package/dist/jsx/shared/colorRamps.native.js +9 -7
  467. package/dist/jsx/shared/colorRamps.native.js.map +1 -1
  468. package/dist/jsx/shared/controlTrack.mjs +7 -0
  469. package/dist/jsx/shared/controlTrack.mjs.map +1 -0
  470. package/dist/jsx/shared/controlTrack.native.js +35 -0
  471. package/dist/jsx/shared/controlTrack.native.js.map +1 -0
  472. package/dist/jsx/shared/devWarn.native.js.map +1 -1
  473. package/dist/jsx/shared/fieldRowContext.native.js.map +1 -1
  474. package/dist/jsx/shared/floatingList.native.js +1 -1
  475. package/dist/jsx/shared/floatingList.native.js.map +1 -1
  476. package/dist/jsx/shared/focusManagement.native.js.map +1 -1
  477. package/dist/jsx/shared/groupContext.native.js.map +1 -1
  478. package/dist/jsx/shared/i18n.native.js.map +1 -1
  479. package/dist/jsx/shared/instantMotion.native.js.map +1 -1
  480. package/dist/jsx/shared/nativeA11y.native.js.map +1 -1
  481. package/dist/jsx/shared/nativeAutoFocus.native.js.map +1 -1
  482. package/dist/jsx/shared/nativeOverlayWindow.mjs.map +1 -1
  483. package/dist/jsx/shared/nativeOverlayWindow.native.js.map +1 -1
  484. package/dist/jsx/shared/overlaySizeClass.native.js.map +1 -1
  485. package/dist/jsx/shared/overlayStack.native.js.map +1 -1
  486. package/dist/jsx/shared/panelPortal.native.js.map +1 -1
  487. package/dist/jsx/shared/pickerTriggerContract.native.js.map +1 -1
  488. package/dist/jsx/shared/pressSlopProps.native.js.map +1 -1
  489. package/dist/jsx/shared/restoreRetries.native.js.map +1 -1
  490. package/dist/jsx/shared/sheetNavigation.native.js.map +1 -1
  491. package/dist/jsx/shared/systemControlModules.gnome.native.js.map +1 -1
  492. package/dist/jsx/shared/systemControls.mjs.map +1 -1
  493. package/dist/jsx/shared/systemControls.native.js.map +1 -1
  494. package/dist/jsx/shared/t.native.js.map +1 -1
  495. package/dist/jsx/shared/tableCellContext.native.js.map +1 -1
  496. package/dist/jsx/shared/useDragScroll.native.js.map +1 -1
  497. package/dist/jsx/shared/useKeyboardInset.native.js.map +1 -1
  498. package/dist/jsx/shared/useSheetEscapeDismiss.native.js.map +1 -1
  499. package/dist/jsx/shared/useWheelIncrement.native.js.map +1 -1
  500. package/dist/jsx/shared/utils.native.js +1 -1
  501. package/dist/jsx/shared/utils.native.js.map +1 -1
  502. package/dist/jsx/shared/zIndex.native.js.map +1 -1
  503. package/dist/jsx/standardActions.native.js.map +1 -1
  504. package/dist/jsx/themedPrimitives.native.js.map +1 -1
  505. package/dist/jsx/types.native.js.map +1 -1
  506. package/dist/jsx/utils/LinkCell.native.js.map +1 -1
  507. package/package.json +11 -10
  508. package/src/Button/Button.controlTiers.spec.tsx +2 -2
  509. package/src/ControlGroup/index.tsx +2 -1
  510. package/src/FloatingPanel/FloatingPanel.holdCue.native.spec.tsx +72 -0
  511. package/src/FloatingPanel/index.native.tsx +9 -1
  512. package/src/InputParts/index.tsx +1 -0
  513. package/src/Wheel/Wheel.edgeFade.spec.tsx +74 -0
  514. package/src/Wheel/index.tsx +25 -11
  515. package/src/fields/DatePicker/dateFieldMarks.spec.tsx +154 -0
  516. package/src/fields/DatePicker/parts.tsx +33 -30
  517. package/src/fields/FileUpload/index.tsx +45 -16
  518. package/src/fields/ImageField/index.tsx +42 -19
  519. package/src/fields/Progress/index.tsx +3 -0
  520. package/src/fields/Slider/Slider.system.native.spec.tsx +44 -0
  521. package/src/fields/Slider/index.tsx +40 -12
  522. package/src/fields/Stepper/Stepper.stories.tsx +42 -0
  523. package/src/fields/Switch/Switch.spec.tsx +14 -10
  524. package/src/fields/Switch/index.tsx +11 -7
  525. package/src/fields/TimePicker/parts.tsx +8 -8
  526. package/src/fields/ToggleGroup/index.tsx +7 -1
  527. package/src/fields/fieldTriggerSlot.spec.tsx +89 -0
  528. package/src/fields/pickerHandle.ts +13 -0
  529. package/src/hooks/useHoldCue.ts +26 -0
  530. package/src/index.gnome.ts +1 -0
  531. package/src/index.ts +2 -0
  532. package/src/overlayGround.spec.ts +5 -3
  533. package/src/shared/OverlayWindow.tsx +2 -2
  534. package/src/shared/colorRamps.ts +9 -6
  535. package/src/shared/controlTrack.ts +7 -0
  536. package/src/shared/nativeOverlayWindow.tsx +1 -1
  537. package/src/shared/systemControls.ts +10 -2
  538. package/types/ControlGroup/index.d.ts.map +1 -1
  539. package/types/FloatingPanel/index.native.d.ts.map +1 -1
  540. package/types/InputParts/index.d.ts +4 -4
  541. package/types/InputParts/index.d.ts.map +1 -1
  542. package/types/Wheel/index.d.ts.map +1 -1
  543. package/types/fields/DatePicker/parts.d.ts +4 -3
  544. package/types/fields/DatePicker/parts.d.ts.map +1 -1
  545. package/types/fields/FileUpload/index.d.ts +6 -1
  546. package/types/fields/FileUpload/index.d.ts.map +1 -1
  547. package/types/fields/ImageField/index.d.ts +7 -2
  548. package/types/fields/ImageField/index.d.ts.map +1 -1
  549. package/types/fields/Progress/index.d.ts.map +1 -1
  550. package/types/fields/Slider/index.d.ts.map +1 -1
  551. package/types/fields/Switch/index.d.ts.map +1 -1
  552. package/types/fields/ToggleGroup/index.d.ts.map +1 -1
  553. package/types/fields/pickerHandle.d.ts +12 -0
  554. package/types/fields/pickerHandle.d.ts.map +1 -0
  555. package/types/hooks/useHoldCue.d.ts +10 -0
  556. package/types/hooks/useHoldCue.d.ts.map +1 -0
  557. package/types/index.d.ts +2 -0
  558. package/types/index.d.ts.map +1 -1
  559. package/types/index.gnome.d.ts +1 -0
  560. package/types/index.gnome.d.ts.map +1 -1
  561. package/types/shared/OverlayWindow.d.ts +2 -2
  562. package/types/shared/OverlayWindow.d.ts.map +1 -1
  563. package/types/shared/colorRamps.d.ts +8 -6
  564. package/types/shared/colorRamps.d.ts.map +1 -1
  565. package/types/shared/controlTrack.d.ts +3 -0
  566. package/types/shared/controlTrack.d.ts.map +1 -0
  567. package/types/shared/nativeOverlayWindow.d.ts +1 -1
  568. package/types/shared/nativeOverlayWindow.d.ts.map +1 -1
  569. package/types/shared/systemControls.d.ts +2 -1
  570. package/types/shared/systemControls.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","Combobox_exports","Combobox","module","exports","import_jsx_runtime","require","import_theme","import_CheckGlyph","import_react","import_i18n","import_react2","import_react3","import_theme2","import_react_native","import_tamagui","import_Chip","import_pickerTriggerContract","import_Skeleton","import_fieldLayout","import_InputParts","import_Spinner","import_colorRamps","import_utils","import_floatingList","import_FloatingPanel","import_PanelPortal","import_overlayStack","import_useDragScroll","import_tableCellContext","import_selectedOrder","scrollArrowBuffer","ComboboxRow","styled","View","menuRowFrame","gap","cursor","hoverStyle","backgroundColor","formInputColors","background","focus","focusVisibleStyle","ensureFocusVisibleRing","outlineOffset","variants","selected","true","false","active","size","...size","val","height","comboboxOptionId","baseId","index","comboboxListboxId","listItemRingProps","keyboardRing","keyboardFocusRingProps","outlineWidth","useSelectedMarkColor","useMenuRowCheckInk","GroupHeader","props","jsx","Text","paddingHorizontal","paddingVertical","paddingTop","fontWeight","fontSize","opacity","numberOfLines","userSelect","groupComboboxOptions","options","hasGroups","some","o","group","items","map","option3","type","option","flatIndex","flatOptions","ungrouped","filter","grouped","groups","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","groupLabel","has","set","push","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","option1","length","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","groupLabel1","groupOptions","label","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","option2","ComboboxItem","memo","ComboboxItem2","param","isSelected","isActive","optionId","suppressHover","handlers","ctx","current","itemProps","getItemProps","onClick","event","onSelect","defaultOnKeyDown","onKeyDown","jsxs","ref","node","listItemsRef","id","e","includes","_ctx_onItemKeyDown","onItemKeyDown","onItemHover","onMouseEnter","role","tabIndex","knobProps","control","Boolean","menuRowChecked","scheme","description","transitionProps","motion","children","YStack","flex","minWidth","fontFamily","body","color","textColor","formCommonColors","muted","CheckGlyph","FloatingComboboxCore","onValueChange","onBlur","placeholder","searchPlaceholder","emptyMessage","onSearch","loading","searchError","valueLabel","clearable","onLoadMore","hasMore","disabled","ariaLabel","hasLabel","tabIndexOverride","popoverWidth","trigger","triggerRender","triggerSizing","multiple","selectedOrder","dismissible","creatable","onCreate","createLabel","hideSearch","searchValue","open","openProp","onOpenChange","_ref","overlayZIndex","useOverlayZIndex","style","elevatedSurfaceStyle","elevatedSurfaceProps","elevatedSurface","hydrationTouch","useTouchSurface","isWeb","ensureKeyboardModalityTracking","t","useTranslation","inTableCell","useIsInTableCell","describedBy","useFieldDescribedBy","glyphColor","useGlyphColor","internalOpen","setInternalOpen","useState","setOpen","useCallback","nextOpen","internalFilter","setInternalFilter","activeIndex","setActiveIndex","textAccentColor","markColor","labelCacheRef","useRef","getLabel","v","_labelCacheRef_current_get","selectedValues","useMemo","vals","Array","isArray","sort","a","b","localeCompare","selectedOption","find","selectedOptions","o2","optionValue","handleDismiss","valueToRemove","filtered","query","trim","toLowerCase","keywords","showCreateOption","trimmed","handleCreate","typed","newOption","initialOrderRef","hasSearchedRef","sortedFiltered","orderOptionsBySelected","groupedItems","navigableOptions","searchCleanupRef","useEffect","timerId","setTimeout","_searchCleanupRef_current","cleanup","clearTimeout","searchInputRef","listScrollRef","keyboardNavRef","listKeyboardRing","setListKeyboardRing","setKeyboardNav","prev","lastMousePosRef","currentMousePosRef","x","y","lastKeyboardNavTimeRef","overlayStyle","searchTopRef","grownRef","lastScrollTopRef","growConstraintRef","filterRef","repositionRef","panel","useFloatingPanel","onOpenChange2","wheelGrowRef","scrollBoundaryRef","middleware","useAutoUpdate","onBeforeOpen","scrollRef","dragScrollRef","dragProps","useDragScroll","direction","justResetFromFilterRef","hasSelectedSinceOpenRef","activeIndexRef","navigableOptionsRef","showCreateOptionRef","multipleRef","repositionOverlay","source","_ref2","_ref1","dropdownElement","refs","floating","triggerRef","listScrollElement","suppressTransition","transition","triggerBounds","getBoundingClientRect","viewportHeight","window","innerHeight","viewportWidth","innerWidth","width","maxWidth","searchBarElement","searchBarHeight","offsetHeight","listContentHeight","scrollHeight","computedStyle","getComputedStyle","borderHeight","parseFloat","borderTopWidth","borderBottomWidth","contentHeight","isDropup","placement","startsWith","coversTrigger","top","dropupAnchor","bottom","availableAbove","panelViewportPadding","initialHeight","Math","min","maxAvailable","max","left","maxHeight","scrollTop","panelTransition","requestAnimationFrame","updateArrows","_ref22","_overlayStyle_current","currentHeight","grownHeight","constraint","canGrowDown","canGrowUp","maxAvailable1","height1","triggerTop","triggerBottom","floor","panelBottom","cached","hasTyped","maxAvailable2","height2","cached1","useLayoutEffect","mounted","_searchInputRef_current","loadMoreTriggeredRef","repositionOverlayRef","handleListScroll","element","arrowDir","arrowScrollDirRef","nearBottom","clientHeight","frame","scrollElement","cancelAnimationFrame","document","onMove","onMove2","_el_closest","clientX","clientY","el","elementFromPoint","contains","row","closest","actualIndex","getAttribute","list","len","activeIdx","n","Number","addEventListener","passive","removeEventListener","_currentMousePosRef_current","rawPos","pos","idx","click","useClick","context","keyboardHandlers","dismiss","useDismiss","useRole","listNav","useListNavigation","listRef","onNavigate","Date","now","virtual","loop","scrollItemIntoView","focusItemOnHover","getReferenceProps","getFloatingProps","useInteractions","lastSelectedIndexRef","handleSelect","shiftKey","rangeValues","slice","merged","Set","handleListMouseMove","last","posChanged","handlersRef","handleSelectRef","onKeyDown2","floatingEl","triggerEl","inPanel","preventDefault","stopPropagation","target1","tagName","createIdx","capture","referenceProps","setReferenceRef","code","listboxId","activeDescendant","boxEventProps","entries","totalNavigableItems","createOptionIndex","handleItemKeyDown","_index","isDown","isUp","handleSearchKeyDown","scrollContainer","rafId","item","container","containerRect","itemRect","bottomEdge","topEdge","didScroll","scrollDir","triggerContent","alignSelf","flexShrink","display","alignItems","Input","Box","sizeToken","suppressFocusRing","pickerTriggerContract","borderWidth","borderRadius","SyncFocusToOpen","justifyContent","flexDirection","flexWrap","getFieldHeight","overflow","overflowX","_knobProps_sizeToken","Chip","$3","$4","$5","onDismiss","controlType","Action","onMouseDown","onPress","XIcon","paddingInlineEnd","CaretDownIcon","Fragment","PanelPortal","anchor","FloatingFocusManager","modal","initialFocus","pointerEvents","visible","setFloating","position","zIndex","transform","transformOrigin","boxSizing","dropdownRadius","paddingBottom","coverCornerInset","borderBottomColor","divider","elevation","className","Section","Icon","adornment","MagnifyingGlassIcon","Area","defaultValue","onChangeText","text","Spinner","minHeight","onScroll","onMouseMove","onPointerDown","ScrollArrow","arrowUp","panelPadding","error","PlusIcon","replace","pressStyle","padding","arrowDown","comboboxSearchHeader","comboboxSearchHeader2","setFilter","mutedColor","inputRef","clearLabel","arguments","XStack","unstyled","accessibilityLabel","placeholderTextColor","autoFocus","hitSlop","NativeComboboxCore","_theme_color7","fieldA11y","useFieldA11y","theme","useTheme","color7","isSelectedFn","hasScrollableContent","_listRef_current","totalItems","_listRef_current1","handleListKeyDown","handleOpenChange","searchHeader","listContent","i","prevGroup","showGroupHeader","optionRow","Pressable","accessibilityRole","accessibilityState","triggerProps","importantForAccessibility","triggerValueText","join","FloatingPanel","sheet","sheetFill","triggerEnd","triggerA11y","hint","header","scrollable","contentPadding","scrollViewProps","layoutMeasurement","contentOffset","contentSize","nativeEvent","scrollEventThrottle","valueProp","onChange","placeholderProp","searchPlaceholderProp","emptyMessageProp","form","formProp","validators","labelProps","helperText","required","readOnly","sizeProp","idProp","tabIndexProp","skeleton","rest","resolvedForm","useFormField","resolvedValidators","useResolvedValidators","uncontrolledValue","setUncontrolledValue","isControlled","createdOptions","setCreatedOptions","knownOptions","unlisted","c","handleCreateOption","created","viewportGtSm","useViewportGtSm","effectiveGtSm","shouldUseSheet","Skeleton","variant","renderReadOnly","renderReadOnly2","selectValue","labels","_knownOptions_find","sv","displayText","renderComboboxContent","renderComboboxContent2","handleValueChange","handleBlur","_createdOptions_find","ComboboxCore","FieldLayout","Field","field","resolvedError","getFieldError","state","handleChange","mergeFieldHandler"],"sources":["index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Combobox_exports = {};\n__export(Combobox_exports, {\n Combobox: () => Combobox\n});\nmodule.exports = __toCommonJS(Combobox_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_CheckGlyph = require(\"../../shared/CheckGlyph\");\nvar import_react = require(\"react\");\nvar import_i18n = require(\"../../shared/i18n\");\nvar import_react2 = require(\"@phosphor-icons/react\");\nvar import_react3 = require(\"@floating-ui/react\");\nvar import_theme2 = require(\"@multiplatform.one/theme\");\nvar import_react_native = require(\"react-native\");\nvar import_tamagui = require(\"tamagui\");\nvar import_Chip = require(\"../../Chip\");\nvar import_pickerTriggerContract = require(\"../../shared/pickerTriggerContract\");\nvar import_Skeleton = require(\"../../Skeleton\");\nvar import_fieldLayout = require(\"../../fieldLayout\");\nvar import_InputParts = require(\"../../InputParts\");\nvar import_Spinner = require(\"../../Spinner\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_utils = require(\"../../shared/utils\");\nvar import_floatingList = require(\"../../shared/floatingList\");\nvar import_FloatingPanel = require(\"../../FloatingPanel\");\nvar import_PanelPortal = require(\"../../FloatingPanel/PanelPortal\");\nvar import_overlayStack = require(\"../../shared/overlayStack\");\nvar import_useDragScroll = require(\"../../shared/useDragScroll\");\nvar import_tableCellContext = require(\"../../shared/tableCellContext\");\nvar import_selectedOrder = require(\"../selectedOrder\");\nvar scrollArrowBuffer = 28;\nvar ComboboxRow = (0, import_tamagui.styled)(import_tamagui.View, {\n name: \"ComboboxRow\",\n ...import_theme2.menuRowFrame,\n gap: \"$2\",\n cursor: \"default\",\n hoverStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n variants: {\n selected: {\n true: {},\n false: {\n backgroundColor: \"transparent\"\n }\n },\n active: {\n true: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n false: {}\n },\n size: {\n \"...size\": function(val) {\n return {\n height: val\n };\n }\n }\n }\n});\nfunction comboboxOptionId(baseId, index) {\n return `${baseId !== null && baseId !== void 0 ? baseId : \"combobox\"}-opt-${index}`;\n}\nfunction comboboxListboxId(baseId) {\n return `${baseId !== null && baseId !== void 0 ? baseId : \"combobox\"}-listbox`;\n}\nfunction listItemRingProps(keyboardRing) {\n return keyboardRing ? import_theme2.keyboardFocusRingProps : {\n outlineWidth: 0\n };\n}\nfunction useSelectedMarkColor() {\n return (0, import_theme2.useMenuRowCheckInk)();\n}\nfunction GroupHeader(props) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_theme2.Text, {\n paddingHorizontal: \"$3\",\n paddingVertical: \"$2\",\n paddingTop: \"$3\",\n fontWeight: \"600\",\n fontSize: \"$2\",\n opacity: 0.6,\n numberOfLines: 1,\n userSelect: \"none\",\n cursor: \"default\",\n ...props\n });\n}\nfunction groupComboboxOptions(options) {\n var hasGroups = options.some(function(o) {\n return o.group;\n });\n if (!hasGroups) {\n return {\n items: options.map(function(option3, index) {\n return {\n type: \"option\",\n option: option3,\n flatIndex: index\n };\n }),\n flatOptions: options\n };\n }\n var ungrouped = options.filter(function(o) {\n return !o.group;\n });\n var grouped = options.filter(function(o) {\n return o.group;\n });\n var groups = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = grouped[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var option = _step.value;\n var groupLabel = option.group;\n if (!groups.has(groupLabel)) {\n groups.set(groupLabel, []);\n }\n groups.get(groupLabel).push(option);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var items = [];\n var flatOptions = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = ungrouped[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var option1 = _step1.value;\n items.push({\n type: \"option\",\n option: option1,\n flatIndex: flatOptions.length\n });\n flatOptions.push(option1);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = groups[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var [groupLabel1, groupOptions] = _step2.value;\n items.push({\n type: \"header\",\n label: groupLabel1\n });\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = groupOptions[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var option2 = _step3.value;\n items.push({\n type: \"option\",\n option: option2,\n flatIndex: flatOptions.length\n });\n flatOptions.push(option2);\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n return {\n items,\n flatOptions\n };\n}\nvar ComboboxItem = /* @__PURE__ */ (0, import_react.memo)(function ComboboxItem2(param) {\n var { option, index, isSelected, isActive, keyboardRing, optionId, suppressHover, handlers } = param;\n var ctx = handlers.current;\n var itemProps = ctx.getItemProps({\n onClick(event) {\n ctx.onSelect(option, index, event);\n }\n });\n var defaultOnKeyDown = itemProps.onKeyDown;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ComboboxRow, {\n ref: function ref(node) {\n ctx.listItemsRef.current[index] = node;\n },\n ...itemProps,\n id: optionId,\n \"data-combobox-index\": index,\n \"data-active\": isActive,\n onKeyDown: function onKeyDown(e) {\n if ([\n \"j\",\n \"k\"\n ].includes(e.key)) {\n var _ctx_onItemKeyDown;\n (_ctx_onItemKeyDown = ctx.onItemKeyDown) === null || _ctx_onItemKeyDown === void 0 ? void 0 : _ctx_onItemKeyDown.call(ctx, e, index);\n } else {\n defaultOnKeyDown === null || defaultOnKeyDown === void 0 ? void 0 : defaultOnKeyDown(e);\n }\n },\n ...ctx.onItemHover ? {\n onMouseEnter: ctx.onItemHover\n } : {},\n role: \"option\",\n tabIndex: -1,\n selected: isSelected,\n active: isActive,\n \"aria-selected\": isSelected,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n height: ctx.knobProps.control.height,\n ...listItemRingProps(Boolean(keyboardRing)),\n ...suppressHover ? {\n hoverStyle: {\n backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n },\n backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus : void 0\n } : {\n hoverStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n }\n },\n ...isSelected ? (0, import_theme2.menuRowChecked)(ctx.knobProps.scheme) : void 0,\n ...option.description ? (\n // Two-line rows need to grow past the size-variant height.\n {\n height: \"auto\",\n paddingVertical: \"$2\"\n }\n ) : void 0,\n ...(0, import_theme2.transitionProps)(ctx.knobProps.motion.control),\n children: [\n option.description ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n flex: 1,\n minWidth: 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: ctx.knobProps.body.fontFamily,\n fontWeight: ctx.knobProps.body.fontWeight,\n color: ctx.textColor,\n numberOfLines: 1,\n children: option.label\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: ctx.knobProps.body.fontFamily,\n fontSize: \"$2\",\n color: import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n children: option.description\n })\n ]\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: ctx.knobProps.body.fontFamily,\n fontWeight: ctx.knobProps.body.fontWeight,\n color: ctx.textColor,\n numberOfLines: 1,\n flex: 1,\n children: option.label\n }),\n isSelected && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_CheckGlyph.CheckGlyph, {})\n ]\n });\n});\nfunction FloatingComboboxCore(param) {\n var { options, value, onValueChange, onBlur, placeholder, searchPlaceholder, emptyMessage, onSearch, loading, searchError, valueLabel, clearable, onLoadMore, hasMore, disabled, id, \"aria-label\": ariaLabel, hasLabel, tabIndexOverride, popoverWidth, trigger: triggerRender, triggerSizing = \"stretch\", knobProps, multiple, selectedOrder, dismissible, creatable, onCreate, createLabel = 'Create \"{value}\"', hideSearch, searchValue, open: openProp, onOpenChange } = param;\n var _ref;\n var overlayZIndex = (0, import_overlayStack.useOverlayZIndex)(\"dropdown\");\n var { style: elevatedSurfaceStyle, ...elevatedSurfaceProps } = knobProps.elevatedSurface;\n var hydrationTouch = (0, import_theme.useTouchSurface)();\n if (import_tamagui.isWeb) (0, import_theme2.ensureKeyboardModalityTracking)();\n var { t } = (0, import_i18n.useTranslation)();\n var inTableCell = (0, import_tableCellContext.useIsInTableCell)();\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var [internalOpen, setInternalOpen] = (0, import_react.useState)(false);\n var open = openProp !== void 0 ? openProp : internalOpen;\n var setOpen = (0, import_react.useCallback)(function(nextOpen) {\n if (openProp !== void 0) {\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(nextOpen);\n } else {\n setInternalOpen(nextOpen);\n }\n }, [\n openProp,\n onOpenChange\n ]);\n var [internalFilter, setInternalFilter] = (0, import_react.useState)(\"\");\n var filter = searchValue !== void 0 ? searchValue : internalFilter;\n var [activeIndex, setActiveIndex] = (0, import_react.useState)(null);\n var textColor = knobProps.textAccentColor;\n var markColor = useSelectedMarkColor();\n var labelCacheRef = (0, import_react.useRef)(/* @__PURE__ */ new Map());\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = options[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var o = _step.value;\n labelCacheRef.current.set(o.value, o.label);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var getLabel = (0, import_react.useCallback)(function(v) {\n var _labelCacheRef_current_get;\n return (_labelCacheRef_current_get = labelCacheRef.current.get(v)) !== null && _labelCacheRef_current_get !== void 0 ? _labelCacheRef_current_get : v;\n }, []);\n var selectedValues = (0, import_react.useMemo)(function() {\n if (!multiple) return [];\n var vals = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n return [\n ...vals\n ].sort(function(a, b) {\n return getLabel(a).localeCompare(getLabel(b));\n });\n }, [\n multiple,\n value,\n getLabel\n ]);\n var selectedOption = (0, import_react.useMemo)(function() {\n return multiple ? void 0 : options.find(function(option) {\n return option.value === value;\n });\n }, [\n options,\n value,\n multiple\n ]);\n var selectedOptions = (0, import_react.useMemo)(function() {\n return multiple ? options.filter(function(o2) {\n return selectedValues.includes(o2.value);\n }) : [];\n }, [\n options,\n selectedValues,\n multiple\n ]);\n var isSelected = (0, import_react.useCallback)(function(optionValue) {\n return multiple ? selectedValues.includes(optionValue) : optionValue === value;\n }, [\n multiple,\n selectedValues,\n value\n ]);\n var handleDismiss = (0, import_react.useCallback)(function(valueToRemove) {\n if (!multiple) return;\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n var next = current.filter(function(v) {\n return v !== valueToRemove;\n });\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n }, [\n multiple,\n value,\n onValueChange\n ]);\n var filtered = (0, import_react.useMemo)(function() {\n if (onSearch || !filter) return options;\n var query = filter.trim().toLowerCase();\n return options.filter(function(option) {\n return option.label.toLowerCase().includes(query) || option.value.toLowerCase().includes(query) || option.keywords && option.keywords.toLowerCase().includes(query);\n });\n }, [\n options,\n filter,\n onSearch\n ]);\n var showCreateOption = (0, import_react.useMemo)(function() {\n if (!creatable || !filter.trim()) return false;\n var trimmed = filter.trim().toLowerCase();\n return !options.some(function(o2) {\n return o2.label.toLowerCase() === trimmed || o2.value.toLowerCase() === trimmed;\n });\n }, [\n creatable,\n filter,\n options\n ]);\n var handleCreate = (0, import_react.useCallback)(function() {\n var typed = filter.trim();\n if (!onCreate || !typed) return;\n var newOption = onCreate(typed);\n if (newOption && multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n if (!current.includes(newOption.value)) onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange([\n ...current,\n newOption.value\n ]);\n } else if (newOption) {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(newOption.value);\n }\n if (!multiple) setOpen(false);\n setInternalFilter(\"\");\n }, [\n onCreate,\n filter,\n multiple,\n value,\n onValueChange,\n setOpen\n ]);\n var initialOrderRef = (0, import_react.useRef)(null);\n var hasSearchedRef = (0, import_react.useRef)(false);\n var sortedFiltered = (0, import_react.useMemo)(function() {\n if (filter.trim()) {\n hasSearchedRef.current = true;\n return filtered;\n }\n if (!multiple) return filtered;\n if (!open) return filtered;\n if (hasSearchedRef.current) return filtered;\n if (initialOrderRef.current === null) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n initialOrderRef.current = (0, import_selectedOrder.orderOptionsBySelected)(filtered, current, selectedOrder);\n }\n return initialOrderRef.current;\n }, [\n filtered,\n filter,\n open,\n multiple,\n value,\n selectedOrder\n ]);\n var { items: groupedItems, flatOptions: navigableOptions } = (0, import_react.useMemo)(function() {\n return groupComboboxOptions(sortedFiltered);\n }, [\n sortedFiltered\n ]);\n var searchCleanupRef = (0, import_react.useRef)(null);\n (0, import_react.useEffect)(function() {\n if (!onSearch || !open) return;\n var timerId = setTimeout(function() {\n var _searchCleanupRef_current;\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n var cleanup = onSearch(filter);\n searchCleanupRef.current = cleanup !== null && cleanup !== void 0 ? cleanup : null;\n }, 200);\n return function() {\n var _searchCleanupRef_current;\n clearTimeout(timerId);\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n searchCleanupRef.current = null;\n };\n }, [\n filter,\n onSearch,\n open\n ]);\n var listItemsRef = (0, import_react.useRef)([]);\n var searchInputRef = (0, import_react.useRef)(null);\n var listScrollRef = (0, import_react.useRef)(null);\n var keyboardNavRef = (0, import_react.useRef)(false);\n var [listKeyboardRing, setListKeyboardRing] = (0, import_react.useState)(false);\n var setKeyboardNav = (0, import_react.useCallback)(function(next) {\n keyboardNavRef.current = next;\n setListKeyboardRing(function(prev) {\n return prev === next ? prev : next;\n });\n }, []);\n var lastMousePosRef = (0, import_react.useRef)(null);\n var currentMousePosRef = (0, import_react.useRef)({\n x: 0,\n y: 0\n });\n var lastKeyboardNavTimeRef = (0, import_react.useRef)(0);\n var overlayStyle = (0, import_react.useRef)(null);\n var searchTopRef = (0, import_react.useRef)(null);\n var grownRef = (0, import_react.useRef)(false);\n var lastScrollTopRef = (0, import_react.useRef)(0);\n var growConstraintRef = (0, import_react.useRef)(null);\n var filterRef = (0, import_react.useRef)(filter);\n filterRef.current = filter;\n var repositionRef = (0, import_react.useRef)(null);\n var panel = (0, import_FloatingPanel.useFloatingPanel)({\n open,\n onOpenChange: function onOpenChange2(nextOpen) {\n setOpen(nextOpen);\n if (!nextOpen) onBlur === null || onBlur === void 0 ? void 0 : onBlur();\n },\n disabled,\n repositionRef,\n wheelGrowRef: grownRef,\n scrollBoundaryRef: listScrollRef,\n middleware: [],\n useAutoUpdate: false,\n onBeforeOpen: function onBeforeOpen() {\n overlayStyle.current = null;\n searchTopRef.current = null;\n grownRef.current = false;\n lastScrollTopRef.current = 0;\n }\n });\n var { scrollRef: dragScrollRef, dragProps } = (0, import_useDragScroll.useDragScroll)({\n direction: \"vertical\"\n });\n (0, import_react.useEffect)(function() {\n if (listScrollRef.current) {\n dragScrollRef.current = listScrollRef.current;\n }\n }, [\n open,\n dragScrollRef\n ]);\n var justResetFromFilterRef = (0, import_react.useRef)(false);\n (0, import_react.useEffect)(function() {\n if (open) {\n justResetFromFilterRef.current = true;\n setActiveIndex(0);\n hasSelectedSinceOpenRef.current = false;\n } else {\n setInternalFilter(\"\");\n setActiveIndex(null);\n lastMousePosRef.current = null;\n initialOrderRef.current = null;\n hasSearchedRef.current = false;\n setKeyboardNav(false);\n }\n }, [\n open\n ]);\n var activeIndexRef = (0, import_react.useRef)(activeIndex);\n activeIndexRef.current = activeIndex;\n var navigableOptionsRef = (0, import_react.useRef)(navigableOptions);\n navigableOptionsRef.current = navigableOptions;\n var showCreateOptionRef = (0, import_react.useRef)(showCreateOption);\n showCreateOptionRef.current = showCreateOption;\n var multipleRef = (0, import_react.useRef)(multiple);\n multipleRef.current = multiple;\n var repositionOverlay = (0, import_react.useCallback)(function(source) {\n var _ref2, _ref1;\n var dropdownElement = panel.refs.floating.current;\n var trigger = panel.triggerRef.current;\n var listScrollElement = listScrollRef.current;\n if (!dropdownElement || !trigger) return;\n var suppressTransition = source === \"init\" || source === \"filter\";\n if (suppressTransition) dropdownElement.style.transition = \"none\";\n var triggerBounds = trigger.getBoundingClientRect();\n var viewportHeight = window.innerHeight;\n var viewportWidth = window.innerWidth;\n var minWidth = popoverWidth !== null && popoverWidth !== void 0 ? popoverWidth : triggerBounds.width;\n var maxWidth = viewportWidth - 20;\n dropdownElement.style.minWidth = `${minWidth}px`;\n dropdownElement.style.maxWidth = `${maxWidth}px`;\n if (popoverWidth) dropdownElement.style.width = `${popoverWidth}px`;\n var searchBarElement = dropdownElement.children[0];\n var searchBarHeight = (_ref2 = searchBarElement === null || searchBarElement === void 0 ? void 0 : searchBarElement.offsetHeight) !== null && _ref2 !== void 0 ? _ref2 : 0;\n var listContentHeight = (_ref1 = listScrollElement === null || listScrollElement === void 0 ? void 0 : listScrollElement.scrollHeight) !== null && _ref1 !== void 0 ? _ref1 : 0;\n var computedStyle = getComputedStyle(dropdownElement);\n var borderHeight = (parseFloat(computedStyle.borderTopWidth) || 0) + (parseFloat(computedStyle.borderBottomWidth) || 0);\n var contentHeight = searchBarHeight + listContentHeight + borderHeight;\n var isDropup = panel.placement.startsWith(\"top\");\n var coversTrigger = !multipleRef.current;\n var top;\n if (searchTopRef.current === null) {\n var dropupAnchor = coversTrigger ? triggerBounds.bottom : triggerBounds.top;\n if (isDropup) {\n var availableAbove = dropupAnchor - import_FloatingPanel.panelViewportPadding;\n var initialHeight = Math.min(contentHeight, availableAbove);\n top = dropupAnchor - initialHeight;\n } else {\n top = coversTrigger ? triggerBounds.top : triggerBounds.bottom;\n }\n searchTopRef.current = top;\n var maxAvailable = isDropup ? dropupAnchor - top : viewportHeight - top - import_FloatingPanel.panelViewportPadding;\n var height = Math.min(contentHeight, maxAvailable);\n height = Math.max(120, height);\n dropdownElement.style.top = `${top}px`;\n dropdownElement.style.left = `${triggerBounds.left}px`;\n dropdownElement.style.height = `${height}px`;\n dropdownElement.style.maxHeight = \"\";\n overlayStyle.current = {\n top,\n maxHeight: height\n };\n if (listScrollRef.current) listScrollRef.current.scrollTop = 0;\n void dropdownElement.offsetHeight;\n if (suppressTransition) dropdownElement.style.transition = panel.panelTransition;\n requestAnimationFrame(function() {\n if (listScrollRef.current) {\n panel.updateArrows(listScrollRef.current);\n requestAnimationFrame(function() {\n if (listScrollRef.current) panel.updateArrows(listScrollRef.current);\n });\n }\n });\n return;\n } else if (source === \"wheel\") {\n var _ref22;\n var _overlayStyle_current;\n top = searchTopRef.current;\n var currentHeight = (_ref22 = (_overlayStyle_current = overlayStyle.current) === null || _overlayStyle_current === void 0 ? void 0 : _overlayStyle_current.maxHeight) !== null && _ref22 !== void 0 ? _ref22 : 0;\n var grownHeight = currentHeight;\n var constraint = growConstraintRef.current;\n if (constraint !== \"no-down\") {\n var canGrowDown = Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top + currentHeight));\n grownHeight += canGrowDown;\n }\n if (constraint !== \"no-up\") {\n var canGrowUp = Math.max(0, top - import_FloatingPanel.panelViewportPadding);\n top -= canGrowUp;\n grownHeight += canGrowUp;\n }\n grownHeight = Math.min(grownHeight, contentHeight);\n searchTopRef.current = top;\n var maxAvailable1 = viewportHeight - top - import_FloatingPanel.panelViewportPadding;\n var height1 = Math.min(grownHeight, maxAvailable1);\n height1 = Math.max(120, height1);\n var triggerTop = triggerBounds.top;\n var triggerBottom = triggerBounds.bottom;\n if (!isDropup) {\n top = coversTrigger ? Math.min(top, triggerTop) : triggerBottom;\n } else {\n var floor = coversTrigger ? triggerBottom : triggerTop;\n var panelBottom = top + height1;\n if (panelBottom < floor) {\n top = floor - height1;\n }\n }\n searchTopRef.current = top;\n var cached = overlayStyle.current;\n if (!cached || cached.top !== top || cached.maxHeight !== height1) {\n dropdownElement.style.top = `${top}px`;\n dropdownElement.style.left = `${triggerBounds.left}px`;\n dropdownElement.style.height = `${height1}px`;\n dropdownElement.style.maxHeight = \"\";\n overlayStyle.current = {\n top,\n maxHeight: height1\n };\n }\n void dropdownElement.offsetHeight;\n requestAnimationFrame(function() {\n if (listScrollRef.current) {\n panel.updateArrows(listScrollRef.current);\n }\n });\n return;\n } else {\n top = searchTopRef.current;\n }\n var hasTyped = filterRef.current.length > 0;\n var maxAvailable2 = !hasTyped && isDropup ? triggerBounds.bottom - top : viewportHeight - top - import_FloatingPanel.panelViewportPadding;\n var height2 = Math.min(contentHeight, maxAvailable2);\n height2 = Math.max(120, height2);\n var cached1 = overlayStyle.current;\n if (!cached1 || cached1.top !== top || cached1.maxHeight !== height2) {\n dropdownElement.style.top = `${top}px`;\n dropdownElement.style.left = `${triggerBounds.left}px`;\n dropdownElement.style.height = `${height2}px`;\n dropdownElement.style.maxHeight = \"\";\n overlayStyle.current = {\n top,\n maxHeight: height2\n };\n }\n void dropdownElement.offsetHeight;\n if (suppressTransition) dropdownElement.style.transition = panel.panelTransition;\n requestAnimationFrame(function() {\n if (listScrollRef.current) {\n panel.updateArrows(listScrollRef.current);\n requestAnimationFrame(function() {\n if (listScrollRef.current) panel.updateArrows(listScrollRef.current);\n });\n }\n });\n }, [\n panel.placement,\n panel.updateArrows,\n popoverWidth,\n panel.refs,\n panel.panelTransition\n ]);\n repositionRef.current = function() {\n return repositionOverlay(\"wheel\");\n };\n (0, import_react.useLayoutEffect)(function() {\n if (!open || !panel.mounted) return;\n grownRef.current = false;\n repositionOverlay(\"filter\");\n }, [\n open,\n panel.mounted,\n filtered.length,\n loading,\n repositionOverlay\n ]);\n (0, import_react.useEffect)(function() {\n if (open && panel.mounted && !hideSearch) {\n requestAnimationFrame(function() {\n var _searchInputRef_current;\n return (_searchInputRef_current = searchInputRef.current) === null || _searchInputRef_current === void 0 ? void 0 : _searchInputRef_current.focus();\n });\n }\n }, [\n open,\n panel.mounted,\n hideSearch\n ]);\n var loadMoreTriggeredRef = (0, import_react.useRef)(false);\n var repositionOverlayRef = (0, import_react.useRef)(repositionOverlay);\n repositionOverlayRef.current = repositionOverlay;\n var handleListScroll = (0, import_react.useCallback)(function(event) {\n var element = event.target;\n panel.updateArrows(element);\n var arrowDir = panel.arrowScrollDirRef.current;\n if (arrowDir) {\n panel.arrowScrollDirRef.current = null;\n lastScrollTopRef.current = element.scrollTop;\n growConstraintRef.current = arrowDir === \"down\" ? \"no-down\" : \"no-up\";\n repositionOverlayRef.current(\"wheel\");\n growConstraintRef.current = null;\n return;\n }\n lastScrollTopRef.current = element.scrollTop;\n if (onLoadMore && hasMore && !loading) {\n var nearBottom = element.scrollHeight - element.scrollTop - element.clientHeight < 100;\n if (nearBottom && !loadMoreTriggeredRef.current) {\n loadMoreTriggeredRef.current = true;\n onLoadMore();\n } else if (!nearBottom) {\n loadMoreTriggeredRef.current = false;\n }\n }\n }, [\n panel.updateArrows,\n onLoadMore,\n hasMore,\n loading\n ]);\n (0, import_react.useEffect)(function() {\n if (!open) return;\n var frame = requestAnimationFrame(function() {\n var scrollElement = listScrollRef.current;\n if (scrollElement) panel.updateArrows(scrollElement);\n });\n return function() {\n return cancelAnimationFrame(frame);\n };\n }, [\n open,\n filtered,\n panel.updateArrows\n ]);\n (0, import_react.useEffect)(function() {\n if (!open || typeof document === \"undefined\") return;\n var onMove = function onMove2(e) {\n var _el_closest;\n var { clientX: x, clientY: y } = e;\n currentMousePosRef.current = {\n x,\n y\n };\n if (keyboardNavRef.current) return;\n var floating = panel.refs.floating.current;\n if (!floating) return;\n var el = document.elementFromPoint(x, y);\n if (!el || !floating.contains(el)) return;\n var row = (_el_closest = el.closest) === null || _el_closest === void 0 ? void 0 : _el_closest.call(el, \"[data-combobox-index]\");\n var actualIndex = row === null || row === void 0 ? void 0 : row.getAttribute(\"data-combobox-index\");\n var list = navigableOptionsRef.current;\n var len = list.length + (showCreateOptionRef.current ? 1 : 0);\n var activeIdx = activeIndexRef.current;\n var n = actualIndex != null ? Number(actualIndex) : null;\n var next = n != null && n >= 0 && n < len ? n : activeIdx;\n if (next !== activeIdx) {\n setActiveIndex(next);\n }\n };\n document.addEventListener(\"mousemove\", onMove, {\n passive: true\n });\n return function() {\n return document.removeEventListener(\"mousemove\", onMove);\n };\n }, [\n open,\n panel.refs\n ]);\n (0, import_react.useLayoutEffect)(function() {\n var _currentMousePosRef_current;\n var len = navigableOptions.length + (showCreateOption ? 1 : 0);\n listItemsRef.current.length = len;\n justResetFromFilterRef.current = true;\n var rawPos = (_currentMousePosRef_current = currentMousePosRef.current) !== null && _currentMousePosRef_current !== void 0 ? _currentMousePosRef_current : lastMousePosRef.current;\n var pos = rawPos && (rawPos.x > 0 || rawPos.y > 0) ? rawPos : null;\n if (pos && typeof document !== \"undefined\") {\n var _el_closest;\n var el = document.elementFromPoint(pos.x, pos.y);\n var row = el === null || el === void 0 ? void 0 : (_el_closest = el.closest) === null || _el_closest === void 0 ? void 0 : _el_closest.call(el, \"[data-combobox-index]\");\n var idx = row === null || row === void 0 ? void 0 : row.getAttribute(\"data-combobox-index\");\n if (idx != null) {\n var n = Number(idx);\n if (n >= 0 && n < len) setActiveIndex(n);\n else setActiveIndex(null);\n } else {\n setActiveIndex(null);\n }\n } else {\n setActiveIndex(0);\n }\n }, [\n filter,\n navigableOptions.length,\n showCreateOption\n ]);\n var click = (0, import_react3.useClick)(panel.context, {\n event: \"mousedown\",\n keyboardHandlers: false\n });\n var dismiss = (0, import_react3.useDismiss)(panel.context);\n var role = (0, import_react3.useRole)(panel.context, {\n role: \"listbox\"\n });\n var listNav = (0, import_react3.useListNavigation)(panel.context, {\n listRef: listItemsRef,\n activeIndex,\n onNavigate: function onNavigate(index) {\n if (index !== null) {\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(index);\n }\n },\n virtual: true,\n loop: true,\n scrollItemIntoView: false,\n focusItemOnHover: false\n });\n var { getReferenceProps, getFloatingProps, getItemProps } = (0, import_react3.useInteractions)([\n click,\n dismiss,\n role,\n listNav\n ]);\n var lastSelectedIndexRef = (0, import_react.useRef)(null);\n var hasSelectedSinceOpenRef = (0, import_react.useRef)(false);\n var handleSelect = (0, import_react.useCallback)(function(option, index, event) {\n hasSelectedSinceOpenRef.current = true;\n if (multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n if ((event === null || event === void 0 ? void 0 : event.shiftKey) && lastSelectedIndexRef.current != null) {\n var from = Math.min(lastSelectedIndexRef.current, index);\n var to = Math.max(lastSelectedIndexRef.current, index);\n var rangeValues = navigableOptions.slice(from, to + 1).map(function(o2) {\n return o2.value;\n });\n var merged = /* @__PURE__ */ new Set([\n ...current,\n ...rangeValues\n ]);\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange([\n ...merged\n ]);\n } else {\n var next = current.includes(option.value) ? current.filter(function(v) {\n return v !== option.value;\n }) : [\n ...current,\n option.value\n ];\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n lastSelectedIndexRef.current = index;\n }\n } else {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(option.value);\n setOpen(false);\n }\n }, [\n onValueChange,\n multiple,\n value,\n navigableOptions\n ]);\n var handleListMouseMove = (0, import_react.useCallback)(function(e) {\n var { clientX, clientY } = e;\n currentMousePosRef.current = {\n x: clientX,\n y: clientY\n };\n if (!keyboardNavRef.current && typeof document !== \"undefined\") {\n var _el_closest;\n var el = document.elementFromPoint(clientX, clientY);\n var row = el === null || el === void 0 ? void 0 : (_el_closest = el.closest) === null || _el_closest === void 0 ? void 0 : _el_closest.call(el, \"[data-combobox-index]\");\n var actualIndex = row === null || row === void 0 ? void 0 : row.getAttribute(\"data-combobox-index\");\n var list = navigableOptionsRef.current;\n var len = list.length + (showCreateOptionRef.current ? 1 : 0);\n var activeIdx = activeIndexRef.current;\n var n = actualIndex != null ? Number(actualIndex) : null;\n var next = n != null && n >= 0 && n < len ? n : activeIdx;\n if (next !== activeIdx) setActiveIndex(next);\n }\n var last = lastMousePosRef.current;\n var posChanged = last != null && (clientX !== last.x || clientY !== last.y);\n if (!posChanged) return;\n var now = Date.now();\n if (now - lastKeyboardNavTimeRef.current < 200) return;\n lastMousePosRef.current = {\n x: clientX,\n y: clientY\n };\n setKeyboardNav(false);\n }, [\n setKeyboardNav\n ]);\n var handlersRef = (0, import_react.useRef)({});\n var handleSelectRef = (0, import_react.useRef)(handleSelect);\n handleSelectRef.current = handleSelect;\n (0, import_react.useEffect)(function() {\n if (!open || typeof document === \"undefined\") return;\n var onKeyDown = function onKeyDown2(e) {\n var floatingEl = panel.refs.floating.current;\n var triggerEl = panel.triggerRef.current;\n var target = e.target;\n var inPanel = target && ((floatingEl === null || floatingEl === void 0 ? void 0 : floatingEl.contains(target)) || (triggerEl === null || triggerEl === void 0 ? void 0 : triggerEl.contains(target)));\n if (!inPanel) return;\n if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n setOpen(false);\n } else if (e.key === \"Enter\" || e.key === \" \") {\n var target1 = e.target;\n if (e.key === \" \" && (target1 === null || target1 === void 0 ? void 0 : target1.tagName) === \"INPUT\" && target1.type !== \"checkbox\") return;\n e.preventDefault();\n e.stopPropagation();\n var idx = activeIndexRef.current;\n var list = navigableOptionsRef.current;\n var createIdx = showCreateOptionRef.current ? list.length : -1;\n if (idx === createIdx && showCreateOptionRef.current) {\n handleCreate();\n } else if (e.key === \"Enter\" && multipleRef.current && hasSelectedSinceOpenRef.current) {\n setOpen(false);\n } else if (idx != null && list[idx]) {\n handleSelectRef.current(list[idx], idx);\n if (e.key === \"Enter\" || !multipleRef.current) setOpen(false);\n } else {\n setOpen(false);\n }\n }\n };\n document.addEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n return function() {\n return document.removeEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n };\n }, [\n open,\n showCreateOption,\n handleCreate,\n setOpen\n ]);\n var referenceProps = getReferenceProps({\n ref: panel.setReferenceRef,\n onKeyDown(event) {\n if (event.key === \"Enter\" || event.code === \"Space\" || event.key === \" \" || event.key === \"ArrowDown\" || event.key === \"ArrowUp\" || event.key === \"j\" || event.key === \"k\") {\n event.preventDefault();\n setKeyboardNav(true);\n setOpen(true);\n setActiveIndex(0);\n }\n }\n });\n var listboxId = comboboxListboxId(id);\n var activeDescendant = open && activeIndex != null && activeIndex >= 0 ? comboboxOptionId(id, activeIndex) : void 0;\n var boxEventProps = {};\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = Object.entries(referenceProps)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [key, val] = _step1.value;\n if (key === \"ref\" || typeof val === \"function\") boxEventProps[key] = val;\n if (key.startsWith(\"aria-\") || key === \"role\" || key === \"tabIndex\") boxEventProps[key] = val;\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n boxEventProps.tabIndex = disabled ? -1 : tabIndexOverride !== null && tabIndexOverride !== void 0 ? tabIndexOverride : 0;\n boxEventProps.role = \"combobox\";\n boxEventProps[\"aria-haspopup\"] = \"listbox\";\n boxEventProps[\"aria-expanded\"] = open;\n boxEventProps[\"aria-controls\"] = listboxId;\n if (hideSearch) {\n boxEventProps[\"aria-autocomplete\"] = \"list\";\n if (activeDescendant) boxEventProps[\"aria-activedescendant\"] = activeDescendant;\n }\n if (id) boxEventProps.id = id;\n if (ariaLabel) boxEventProps[\"aria-label\"] = ariaLabel;\n else if (!(hasLabel && id) && placeholder) boxEventProps[\"aria-label\"] = placeholder;\n if (describedBy) boxEventProps[\"aria-describedby\"] = describedBy;\n var totalNavigableItems = navigableOptions.length + (showCreateOption ? 1 : 0);\n var createOptionIndex = showCreateOption ? navigableOptions.length : -1;\n var handleItemKeyDown = (0, import_react.useCallback)(function(e, _index) {\n var isDown = e.key === \"j\";\n var isUp = e.key === \"k\";\n if (isDown || isUp) {\n e.preventDefault();\n e.stopPropagation();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(function(prev) {\n var next = isDown ? prev == null ? 0 : prev + 1 : prev == null ? totalNavigableItems - 1 : prev - 1;\n return isDown ? next >= totalNavigableItems ? 0 : next : next < 0 ? totalNavigableItems - 1 : next;\n });\n }\n }, [\n totalNavigableItems,\n setKeyboardNav\n ]);\n handlersRef.current = {\n getItemProps,\n onSelect: handleSelect,\n onItemHover: void 0,\n onItemKeyDown: handleItemKeyDown,\n knobProps,\n textColor,\n markColor,\n listItemsRef\n };\n var handleSearchKeyDown = (0, import_react.useCallback)(function(event) {\n var isDown = event.key === \"ArrowDown\";\n var isUp = event.key === \"ArrowUp\";\n if (isDown) {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(function(prev) {\n var next = prev == null ? 0 : prev + 1;\n return next >= totalNavigableItems ? 0 : next;\n });\n } else if (isUp) {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(function(prev) {\n var next = prev == null ? totalNavigableItems - 1 : prev - 1;\n return next < 0 ? totalNavigableItems - 1 : next;\n });\n } else if (event.key === \"Home\") {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n setActiveIndex(0);\n } else if (event.key === \"End\") {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n setActiveIndex(Math.max(0, totalNavigableItems - 1));\n } else if (event.key === \"Enter\" || event.key === \" \") {\n if (event.key === \" \" && filter.trim()) return;\n event.preventDefault();\n if (activeIndex === createOptionIndex && showCreateOption) {\n handleCreate();\n } else if (event.key === \"Enter\" && multiple && hasSelectedSinceOpenRef.current) {\n setOpen(false);\n } else if (activeIndex != null && navigableOptions[activeIndex]) {\n handleSelect(navigableOptions[activeIndex], activeIndex);\n if (event.key === \"Enter\" || !multiple) setOpen(false);\n } else {\n setOpen(false);\n }\n } else if (event.key === \"Escape\") {\n event.preventDefault();\n setOpen(false);\n }\n }, [\n navigableOptions,\n activeIndex,\n handleSelect,\n handleCreate,\n totalNavigableItems,\n createOptionIndex,\n showCreateOption,\n multiple,\n filter,\n setKeyboardNav\n ]);\n (0, import_react.useEffect)(function() {\n if (activeIndex == null) return;\n var scrollContainer = listScrollRef.current;\n if (!scrollContainer) return;\n var rafId = requestAnimationFrame(function() {\n var item = listItemsRef.current[activeIndex];\n var container = listScrollRef.current;\n if (!item || !container) return;\n var containerRect = container.getBoundingClientRect();\n var itemRect = item.getBoundingClientRect();\n var bottomEdge = containerRect.bottom - scrollArrowBuffer;\n var topEdge = containerRect.top + scrollArrowBuffer;\n var didScroll = false;\n var scrollDir = null;\n if (itemRect.bottom > bottomEdge) {\n scrollDir = \"down\";\n container.scrollTop += itemRect.bottom - bottomEdge;\n didScroll = true;\n } else if (itemRect.top < topEdge) {\n scrollDir = \"up\";\n container.scrollTop -= topEdge - itemRect.top;\n didScroll = true;\n }\n if (didScroll && scrollDir && !justResetFromFilterRef.current) {\n lastScrollTopRef.current = container.scrollTop;\n growConstraintRef.current = scrollDir === \"down\" ? \"no-down\" : \"no-up\";\n repositionOverlayRef.current(\"wheel\");\n growConstraintRef.current = null;\n }\n justResetFromFilterRef.current = false;\n });\n return function() {\n return cancelAnimationFrame(rafId);\n };\n }, [\n activeIndex,\n multiple ? value : void 0\n ]);\n var triggerContent = triggerRender ? (\n // Stretch so custom triggers (e.g. Awesomebar) can own their height\n // instead of collapsing inside a shrink-wrapped View (SB-M-1703).\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...boxEventProps,\n \"data-testid\": \"combobox-trigger\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\",\n alignSelf: \"stretch\",\n flexShrink: 0,\n outlineWidth: 0,\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n style: {\n display: \"flex\",\n alignItems: \"stretch\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\"\n },\n children: triggerRender(multiple ? selectedOptions : selectedOption, open)\n })\n ) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n ...boxEventProps,\n \"data-testid\": \"combobox-trigger\",\n // LC-40: Box washes its own chrome when disabled — no opacity dim here\n // (it stacked with the wash and pushed the value text below AA).\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n disabled,\n size: knobProps.sizeToken,\n // One surface owner: a single-value panel COVERS this trigger (panel\n // top = trigger top), so the trigger's outer focus ring must not paint\n // — it would ghost around the panel's corners. A multi-select panel\n // attaches below instead (MPO-38), leaving the trigger on screen and\n // focusable, so it keeps its ring.\n suppressFocusRing: open && !multiple,\n ...(0, import_pickerTriggerContract.pickerTriggerContract)(knobProps.control.height),\n ...inTableCell ? (\n // Chromeless in cells.\n {}\n ) : {\n borderWidth: knobProps.borderRadius.borderWidth\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingList.SyncFocusToOpen, {\n open\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flex: 1,\n paddingHorizontal: \"$3\",\n paddingVertical: \"$2\",\n justifyContent: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n alignItems: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n children: multiple && selectedValues.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n flexWrap: \"nowrap\",\n gap: \"$1.5\",\n alignItems: \"center\",\n maxHeight: (0, import_utils.getFieldHeight)(knobProps.sizeToken, 1, hydrationTouch) * 0.75,\n overflow: \"hidden\",\n overflowX: \"auto\",\n children: selectedValues.map(function(v) {\n var _knobProps_sizeToken;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Chip.Chip, {\n size: (_knobProps_sizeToken = {\n $3: \"$2\",\n $4: \"$3\",\n $5: \"$4\"\n }[knobProps.sizeToken]) !== null && _knobProps_sizeToken !== void 0 ? _knobProps_sizeToken : \"$3\",\n color: \"gray\",\n onDismiss: dismissible && !disabled ? function() {\n return handleDismiss(v);\n } : void 0,\n children: getLabel(v)\n }, v);\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.controlType,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: selectedOption || !multiple && value && valueLabel ? textColor : import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n userSelect: \"none\",\n children: (_ref = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref !== void 0 ? _ref : !multiple && value && valueLabel ? valueLabel : placeholder\n })\n }),\n clearable && !multiple && !disabled && typeof value === \"string\" && value !== \"\" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n size: knobProps.sizeToken,\n height: knobProps.control.height,\n tabIndex: -1,\n label: t(\"Clear\"),\n // useClick opens on mousedown at the trigger — swallow it so\n // clearing never toggles the dropdown.\n onMouseDown: function onMouseDown(e) {\n e.stopPropagation();\n e.preventDefault();\n },\n onPress: function onPress() {\n return onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(\"\");\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {})\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n paddingInlineEnd: \"$2\",\n alignSelf: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.CaretDownIcon, {\n size: 16,\n color: glyphColor\n })\n })\n ]\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n triggerContent,\n panel.mounted && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_PanelPortal.PanelPortal, {\n anchor: panel.triggerRef.current,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react3.FloatingFocusManager, {\n context: panel.context,\n modal: false,\n initialFocus: -1,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n outlineWidth: 0,\n pointerEvents: panel.visible ? \"auto\" : \"none\",\n ...getFloatingProps({\n ref: panel.refs.setFloating,\n id: listboxId\n }),\n style: {\n position: \"fixed\",\n top: 0,\n left: 0,\n zIndex: overlayZIndex,\n overflow: \"hidden\",\n display: \"flex\",\n flexDirection: \"column\",\n ...elevatedSurfaceStyle,\n opacity: panel.visible ? 1 : 0,\n transform: panel.visible ? \"scale(1)\" : \"scale(0.96)\",\n transition: panel.panelTransition,\n transformOrigin: panel.placement.startsWith(\"top\") ? \"bottom left\" : \"top left\",\n boxSizing: \"border-box\"\n },\n ...elevatedSurfaceProps,\n borderRadius: panel.dropdownRadius,\n \"data-testid\": \"combobox-dropdown\",\n paddingBottom: panel.coverCornerInset || void 0,\n children: [\n !hideSearch && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input, {\n size: knobProps.sizeToken,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n borderWidth: 0,\n borderBottomWidth: 1,\n borderBottomColor: import_colorRamps.formCommonColors.divider,\n borderRadius: 0,\n elevation: void 0,\n // LC-71: search is text-entry — ring the whole row (magnifier included).\n ...import_tamagui.isWeb ? {\n className: \"mp-composite-ring\"\n } : void 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"leading\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.MagnifyingGlassIcon, {})\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Area, {\n ref: searchInputRef,\n defaultValue: \"\",\n onChangeText: function onChangeText(text) {\n return setInternalFilter(text);\n },\n placeholder: searchPlaceholder,\n onKeyDown: handleSearchKeyDown,\n \"aria-autocomplete\": \"list\",\n \"aria-controls\": listboxId,\n \"aria-activedescendant\": activeDescendant,\n \"aria-expanded\": open\n })\n }),\n loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"trailing\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n }) : filter ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n label: t(\"Clear search\"),\n onPress: function onPress() {\n return setInternalFilter(\"\");\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {})\n })\n }) : null\n ]\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ref: listScrollRef,\n overflow: \"scroll\",\n flex: 1,\n minHeight: 0,\n onScroll: handleListScroll,\n onMouseMove: handleListMouseMove,\n onPointerDown: dragProps.onPointerDown,\n style: dragProps.style,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingList.ScrollArrow, {\n direction: \"up\",\n scrollRef: listScrollRef,\n visible: panel.arrowUp,\n arrowScrollDirRef: panel.arrowScrollDirRef\n }),\n searchError ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.error,\n fontSize: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: searchError\n })\n }) : navigableOptions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react.Fragment, {\n children: [\n groupedItems.map(function(item) {\n return item.type === \"header\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GroupHeader, {\n color: textColor,\n \"data-combobox-group-header\": \"\",\n children: item.label\n }, `header-${item.label}`) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ComboboxItem, {\n option: item.option,\n index: item.flatIndex,\n optionId: comboboxOptionId(id, item.flatIndex),\n isSelected: isSelected(item.option.value),\n isActive: item.flatIndex === activeIndex,\n keyboardRing: item.flatIndex === activeIndex && listKeyboardRing,\n suppressHover: activeIndex != null,\n handlers: handlersRef\n }, item.option.value);\n }),\n showCreateOption && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ComboboxRow, {\n role: \"option\",\n tabIndex: -1,\n id: comboboxOptionId(id, createOptionIndex),\n selected: false,\n active: createOptionIndex === activeIndex,\n height: knobProps.control.height,\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : void 0,\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : void 0,\n onPress: handleCreate,\n ...(0, import_theme2.transitionProps)(knobProps.motion.control),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: knobProps.textAccentColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n })\n ]\n }, filter) : showCreateOption ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ComboboxRow, {\n role: \"option\",\n tabIndex: -1,\n id: comboboxOptionId(id, createOptionIndex),\n selected: false,\n active: createOptionIndex === activeIndex,\n height: knobProps.control.height,\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n onPress: handleCreate,\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n ...(0, import_theme2.transitionProps)(knobProps.motion.control),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: knobProps.textAccentColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n }) : loading ? (\n // Async search in flight with nothing loaded yet: a bounded\n // loading row — never a premature \"no results\".\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n fontSize: knobProps.sizeToken,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: emptyMessage\n })\n }),\n hasMore && loading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n padding: \"$2\",\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingList.ScrollArrow, {\n direction: \"down\",\n scrollRef: listScrollRef,\n visible: panel.arrowDown,\n arrowScrollDirRef: panel.arrowScrollDirRef\n })\n ]\n })\n ]\n })\n })\n })\n ]\n });\n}\nvar comboboxSearchHeader = function comboboxSearchHeader2(knobProps, filter, setFilter, searchPlaceholder, textColor, mutedColor, loading, onKeyDown, inputRef) {\n var clearLabel = arguments.length > 9 && arguments[9] !== void 0 ? arguments[9] : \"Clear search\";\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n height: knobProps.control.height,\n borderBottomWidth: 1,\n borderBottomColor: import_colorRamps.formCommonColors.divider,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.MagnifyingGlassIcon, {\n size: 16,\n color: mutedColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Input, {\n ref: inputRef,\n unstyled: true,\n flex: 1,\n placeholder: searchPlaceholder,\n // iOS VoiceOver: name the search box (placeholder alone is value-only).\n ...!import_tamagui.isWeb ? {\n accessibilityLabel: searchPlaceholder\n } : void 0,\n value: filter,\n onChangeText: setFilter,\n onKeyDown,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n placeholderTextColor: mutedColor,\n autoFocus: true\n }),\n loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n }) : filter ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n role: \"button\",\n \"aria-label\": clearLabel,\n hitSlop: 14,\n onPress: function onPress() {\n return setFilter(\"\");\n },\n \"data-testid\": \"combobox-search-clear\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {\n size: 16,\n color: mutedColor\n })\n }) : null\n ]\n });\n};\nfunction NativeComboboxCore(param) {\n var { options, value, onValueChange, onBlur, placeholder, searchPlaceholder, emptyMessage, onSearch, loading, searchError, valueLabel, clearable, onLoadMore, hasMore, disabled, id, \"aria-label\": ariaLabel, hasLabel, trigger: triggerRender, triggerSizing = \"stretch\", knobProps, multiple, selectedOrder, dismissible, creatable, onCreate, createLabel = 'Create \"{value}\"', hideSearch, searchValue, open: openProp, onOpenChange } = param;\n var _ref, _ref1, _ref2;\n var _theme_color7;\n var hydrationTouch = (0, import_theme.useTouchSurface)();\n if (import_tamagui.isWeb) (0, import_theme2.ensureKeyboardModalityTracking)();\n var { t } = (0, import_i18n.useTranslation)();\n var inTableCell = (0, import_tableCellContext.useIsInTableCell)();\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var [internalOpen, setInternalOpen] = (0, import_react.useState)(false);\n var open = openProp !== void 0 ? openProp : internalOpen;\n var setOpen = (0, import_react.useCallback)(function(nextOpen) {\n if (openProp !== void 0) {\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(nextOpen);\n } else {\n setInternalOpen(nextOpen);\n }\n }, [\n openProp,\n onOpenChange\n ]);\n var [internalFilter, setInternalFilter] = (0, import_react.useState)(\"\");\n var filter = searchValue !== void 0 ? searchValue : internalFilter;\n var [activeIndex, setActiveIndex] = (0, import_react.useState)(0);\n var [listKeyboardRing, setListKeyboardRing] = (0, import_react.useState)(false);\n var setKeyboardNav = (0, import_react.useCallback)(function(next) {\n setListKeyboardRing(function(prev) {\n return prev === next ? prev : next;\n });\n }, []);\n var listRef = (0, import_react.useRef)(null);\n var searchInputRef = (0, import_react.useRef)(null);\n var fieldA11y = (0, import_fieldLayout.useFieldA11y)();\n var textColor = knobProps.textAccentColor;\n var theme = (0, import_tamagui.useTheme)();\n var mutedColor = (_ref = (_theme_color7 = theme.color7) === null || _theme_color7 === void 0 ? void 0 : _theme_color7.val) !== null && _ref !== void 0 ? _ref : \"$color7\";\n var markColor = useSelectedMarkColor();\n var labelCacheRef = (0, import_react.useRef)(/* @__PURE__ */ new Map());\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = options[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var o = _step.value;\n labelCacheRef.current.set(o.value, o.label);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var getLabel = (0, import_react.useCallback)(function(v) {\n var _labelCacheRef_current_get;\n return (_labelCacheRef_current_get = labelCacheRef.current.get(v)) !== null && _labelCacheRef_current_get !== void 0 ? _labelCacheRef_current_get : v;\n }, []);\n var selectedValues = (0, import_react.useMemo)(function() {\n if (!multiple) return [];\n var vals = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n return [\n ...vals\n ].sort(function(a, b) {\n return getLabel(a).localeCompare(getLabel(b));\n });\n }, [\n multiple,\n value,\n options\n ]);\n var selectedOption = (0, import_react.useMemo)(function() {\n return multiple ? void 0 : options.find(function(o2) {\n return o2.value === value;\n });\n }, [\n options,\n value,\n multiple\n ]);\n var selectedOptions = (0, import_react.useMemo)(function() {\n return multiple ? options.filter(function(o2) {\n return selectedValues.includes(o2.value);\n }) : [];\n }, [\n options,\n selectedValues,\n multiple\n ]);\n var isSelectedFn = (0, import_react.useCallback)(function(optionValue) {\n return multiple ? selectedValues.includes(optionValue) : optionValue === value;\n }, [\n multiple,\n selectedValues,\n value\n ]);\n var handleDismiss = (0, import_react.useCallback)(function(valueToRemove) {\n if (!multiple) return;\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n var next = current.filter(function(v) {\n return v !== valueToRemove;\n });\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n }, [\n multiple,\n value,\n onValueChange\n ]);\n var filtered = (0, import_react.useMemo)(function() {\n if (onSearch || !filter) return options;\n var query = filter.trim().toLowerCase();\n return options.filter(function(option) {\n return option.label.toLowerCase().includes(query) || option.value.toLowerCase().includes(query) || option.keywords && option.keywords.toLowerCase().includes(query);\n });\n }, [\n options,\n filter,\n onSearch\n ]);\n var showCreateOption = (0, import_react.useMemo)(function() {\n if (!creatable || !filter.trim()) return false;\n var trimmed = filter.trim().toLowerCase();\n return !options.some(function(o2) {\n return o2.label.toLowerCase() === trimmed || o2.value.toLowerCase() === trimmed;\n });\n }, [\n creatable,\n filter,\n options\n ]);\n var handleCreate = (0, import_react.useCallback)(function() {\n var typed = filter.trim();\n if (!onCreate || !typed) return;\n var newOption = onCreate(typed);\n if (newOption && multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n if (!current.includes(newOption.value)) onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange([\n ...current,\n newOption.value\n ]);\n } else if (newOption) {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(newOption.value);\n }\n if (!multiple) setOpen(false);\n setInternalFilter(\"\");\n }, [\n onCreate,\n filter,\n multiple,\n value,\n onValueChange,\n setOpen\n ]);\n var hasScrollableContent = Boolean(onSearch) || filtered.length > 6;\n var sortedFiltered = (0, import_react.useMemo)(function() {\n if (filter.trim()) return filtered;\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n return (0, import_selectedOrder.orderOptionsBySelected)(filtered, current, selectedOrder);\n }, [\n filtered,\n value,\n filter,\n selectedOrder\n ]);\n var { flatOptions: navigableOptions } = (0, import_react.useMemo)(function() {\n return groupComboboxOptions(sortedFiltered);\n }, [\n sortedFiltered\n ]);\n var searchCleanupRef = (0, import_react.useRef)(null);\n (0, import_react.useEffect)(function() {\n if (!onSearch || !open) return;\n var timerId = setTimeout(function() {\n var _searchCleanupRef_current;\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n var cleanup = onSearch(filter);\n searchCleanupRef.current = cleanup !== null && cleanup !== void 0 ? cleanup : null;\n }, 200);\n return function() {\n var _searchCleanupRef_current;\n clearTimeout(timerId);\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n searchCleanupRef.current = null;\n };\n }, [\n filter,\n onSearch,\n open\n ]);\n (0, import_react.useEffect)(function() {\n if (open) {\n setActiveIndex(0);\n requestAnimationFrame(function() {\n var _listRef_current, _searchInputRef_current;\n return hideSearch ? (_listRef_current = listRef.current) === null || _listRef_current === void 0 ? void 0 : _listRef_current.focus() : (_searchInputRef_current = searchInputRef.current) === null || _searchInputRef_current === void 0 ? void 0 : _searchInputRef_current.focus();\n });\n } else {\n setInternalFilter(\"\");\n }\n }, [\n open\n ]);\n (0, import_react.useEffect)(function() {\n if (open) setActiveIndex(0);\n }, [\n filter\n ]);\n var totalItems = navigableOptions.length + (showCreateOption ? 1 : 0);\n var createOptionIndex = showCreateOption ? navigableOptions.length : -1;\n var listboxId = comboboxListboxId(id);\n var activeDescendant = open && activeIndex != null && activeIndex >= 0 ? comboboxOptionId(id, activeIndex) : void 0;\n var handleSelect = (0, import_react.useCallback)(function(option) {\n if (multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n var next = current.includes(option.value) ? current.filter(function(v) {\n return v !== option.value;\n }) : [\n ...current,\n option.value\n ];\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n } else {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(option.value);\n setOpen(false);\n }\n }, [\n onValueChange,\n multiple,\n value\n ]);\n var handleSearchKeyDown = (0, import_react.useCallback)(function(e) {\n var isDown = e.key === \"ArrowDown\";\n var isUp = e.key === \"ArrowUp\";\n if (isDown) {\n var _listRef_current;\n e.preventDefault();\n setKeyboardNav(true);\n (_listRef_current = listRef.current) === null || _listRef_current === void 0 ? void 0 : _listRef_current.focus();\n setActiveIndex(function(prev) {\n var next = prev == null ? 0 : prev + 1;\n return next >= totalItems ? 0 : next;\n });\n } else if (isUp) {\n var _listRef_current1;\n e.preventDefault();\n setKeyboardNav(true);\n (_listRef_current1 = listRef.current) === null || _listRef_current1 === void 0 ? void 0 : _listRef_current1.focus();\n setActiveIndex(function(prev) {\n var next = prev == null ? totalItems - 1 : prev - 1;\n return next < 0 ? totalItems - 1 : next;\n });\n } else if (e.key === \"Home\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(0);\n } else if (e.key === \"End\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(Math.max(0, totalItems - 1));\n }\n }, [\n totalItems,\n setKeyboardNav\n ]);\n var handleListKeyDown = (0, import_react.useCallback)(function(e) {\n if (totalItems === 0) return;\n var isDown = e.key === \"ArrowDown\" || e.key === \"j\";\n var isUp = e.key === \"ArrowUp\" || e.key === \"k\";\n if (isDown) {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(function(prev) {\n var next = prev == null ? 0 : prev + 1;\n return next >= totalItems ? 0 : next;\n });\n } else if (isUp) {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(function(prev) {\n var next = prev == null ? totalItems - 1 : prev - 1;\n return next < 0 ? totalItems - 1 : next;\n });\n } else if (e.key === \"Home\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(0);\n } else if (e.key === \"End\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(Math.max(0, totalItems - 1));\n } else if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (activeIndex === createOptionIndex && showCreateOption) {\n handleCreate();\n } else if (activeIndex != null && activeIndex >= 0 && navigableOptions[activeIndex]) {\n handleSelect(navigableOptions[activeIndex]);\n if (e.key === \"Enter\" || !multiple) setOpen(false);\n }\n }\n }, [\n totalItems,\n createOptionIndex,\n showCreateOption,\n activeIndex,\n navigableOptions,\n handleCreate,\n handleSelect,\n multiple,\n setKeyboardNav\n ]);\n (0, import_react.useEffect)(function() {\n if (!open || typeof document === \"undefined\") return;\n var onKeyDown = function onKeyDown2(e) {\n if (e.key === \"Escape\") {\n e.preventDefault();\n setOpen(false);\n } else if (e.key === \"Enter\" || e.key === \" \") {\n var target = e.target;\n if (e.key === \" \" && (target === null || target === void 0 ? void 0 : target.tagName) === \"INPUT\" && target.type !== \"checkbox\") return;\n e.preventDefault();\n e.stopPropagation();\n if (activeIndex === createOptionIndex && showCreateOption) {\n handleCreate();\n } else if (activeIndex != null && activeIndex >= 0 && navigableOptions[activeIndex]) {\n handleSelect(navigableOptions[activeIndex]);\n if (e.key === \"Enter\" || !multiple) setOpen(false);\n } else {\n setOpen(false);\n }\n }\n };\n document.addEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n return function() {\n return document.removeEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n };\n }, [\n open,\n activeIndex,\n createOptionIndex,\n showCreateOption,\n navigableOptions,\n handleCreate,\n handleSelect,\n multiple\n ]);\n var handleOpenChange = (0, import_react.useCallback)(function(val) {\n setOpen(val);\n if (!val) onBlur === null || onBlur === void 0 ? void 0 : onBlur();\n }, [\n onBlur\n ]);\n var searchHeader = hideSearch ? void 0 : comboboxSearchHeader(knobProps, filter, setInternalFilter, searchPlaceholder, textColor, mutedColor, loading !== null && loading !== void 0 ? loading : false, handleSearchKeyDown, searchInputRef, t(\"Clear search\"));\n var listContent = (\n // tabIndex/onKeyDown are web-only: on iOS tabIndex makes the container an\n // accessibility element, which merges every option into one unactionable\n // VoiceOver blob.\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n ref: listRef,\n ...import_tamagui.isWeb ? (\n // role=\"listbox\" is a valid ARIA role but outside RN's `Role` union;\n // this web-only bag forwards it to the DOM node (house Record cast).\n {\n tabIndex: 0,\n onKeyDown: handleListKeyDown,\n role: \"listbox\",\n id: listboxId\n }\n ) : void 0,\n outlineWidth: 0,\n children: [\n // Native sheet: flex={1} inside FloatingPanel ScrollView collapses rows.\n searchError ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.error,\n fontSize: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: searchError\n })\n }) : navigableOptions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n navigableOptions.map(function(option, i) {\n var selected = isSelectedFn(option.value);\n var active = i === activeIndex;\n var prevGroup = i > 0 ? navigableOptions[i - 1].group : void 0;\n var showGroupHeader = option.group && option.group !== prevGroup;\n var optionRow = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n id: comboboxOptionId(id, i),\n role: \"option\",\n \"aria-selected\": selected,\n \"data-combobox-index\": i,\n \"data-active\": active,\n ...listItemRingProps(active && listKeyboardRing),\n ...option.description ? {\n minHeight: knobProps.control.height,\n paddingVertical: \"$2\"\n } : {\n height: knobProps.control.height\n },\n onPress: import_tamagui.isWeb ? function() {\n return handleSelect(option);\n } : void 0,\n onMouseEnter: function onMouseEnter() {\n setKeyboardNav(false);\n setActiveIndex(i);\n },\n ...!import_tamagui.isWeb ? {\n pointerEvents: \"none\"\n } : {},\n hoverStyle: activeIndex != null ? {\n backgroundColor: active ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: active ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n ...selected ? (0, import_theme2.menuRowChecked)(knobProps.scheme) : void 0,\n children: [\n option.description ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n flex: 1,\n minWidth: 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n children: option.label\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontSize: \"$2\",\n color: import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n children: option.description\n })\n ]\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: option.label\n }),\n selected && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_CheckGlyph.CheckGlyph, {})\n ]\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n children: [\n showGroupHeader && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GroupHeader, {\n color: textColor,\n \"data-combobox-group-header\": \"\",\n children: option.group\n }),\n import_tamagui.isWeb ? optionRow : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.Pressable, {\n onPress: function onPress() {\n return handleSelect(option);\n },\n accessibilityRole: \"button\",\n accessibilityLabel: option.label,\n accessibilityState: {\n selected\n },\n children: optionRow\n })\n ]\n }, option.value);\n }),\n showCreateOption && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n height: knobProps.control.height,\n role: \"option\",\n id: comboboxOptionId(id, createOptionIndex),\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n onPress: handleCreate,\n onMouseEnter: function onMouseEnter() {\n setKeyboardNav(false);\n setActiveIndex(createOptionIndex);\n },\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: textColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n })\n ]\n }) : showCreateOption ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n height: knobProps.control.height,\n role: \"option\",\n id: comboboxOptionId(id, createOptionIndex),\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n onPress: handleCreate,\n onMouseEnter: function onMouseEnter() {\n setKeyboardNav(false);\n setActiveIndex(createOptionIndex);\n },\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: textColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n }) : loading ? (\n // Async search in flight with nothing loaded yet: a bounded loading\n // row — never a premature \"no results\".\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n fontSize: knobProps.sizeToken,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: emptyMessage\n })\n }),\n hasMore && loading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n padding: \"$2\",\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n ]\n })\n );\n var triggerProps = {\n id,\n ...import_tamagui.isWeb ? {\n role: \"combobox\",\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": open,\n \"aria-controls\": listboxId,\n \"aria-activedescendant\": hideSearch ? activeDescendant : void 0,\n \"aria-autocomplete\": hideSearch ? \"list\" : void 0,\n \"aria-label\": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : !hasLabel ? placeholder : void 0,\n \"aria-describedby\": describedBy,\n tabIndex: disabled ? -1 : 0\n } : {\n importantForAccessibility: \"no\"\n },\n onPress: import_tamagui.isWeb && !disabled ? function() {\n return handleOpenChange(true);\n } : void 0,\n onKeyDown: function onKeyDown(event) {\n if (disabled) return;\n if ([\n \"Enter\",\n \" \",\n \"ArrowDown\",\n \"ArrowUp\",\n \"j\",\n \"k\"\n ].includes(event.key) || event.code === \"Space\") {\n event.preventDefault();\n setKeyboardNav(true);\n if (!open) handleOpenChange(true);\n }\n }\n };\n var triggerContent = triggerRender ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n \"data-testid\": \"combobox-trigger\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\",\n alignSelf: \"stretch\",\n flexShrink: 0,\n outlineWidth: 0,\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n style: {\n display: \"flex\",\n alignItems: \"stretch\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\"\n },\n ...triggerProps,\n children: triggerRender(multiple ? selectedOptions : selectedOption, open)\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n \"data-testid\": \"combobox-trigger\",\n // LC-40: Box washes its own chrome when disabled — no opacity dim here\n // (it stacked with the wash and pushed the value text below AA).\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n disabled,\n size: knobProps.sizeToken,\n // One surface owner: a single-value FloatingPanel COVERS this trigger\n // (panel top = trigger top), so the trigger's outer focus ring must not\n // paint — it would ghost around the panel's corners. A multi-select\n // panel attaches below instead (MPO-38), so it keeps its ring.\n suppressFocusRing: open && !multiple,\n ...(0, import_pickerTriggerContract.pickerTriggerContract)(knobProps.control.height),\n ...inTableCell ? (\n // Chromeless in cells.\n {}\n ) : {\n borderWidth: knobProps.borderRadius.borderWidth\n },\n ...triggerProps,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flex: 1,\n paddingHorizontal: \"$3\",\n paddingVertical: \"$2\",\n justifyContent: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n alignItems: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n children: multiple && selectedValues.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n flexWrap: \"nowrap\",\n gap: \"$1.5\",\n alignItems: \"center\",\n maxHeight: (0, import_utils.getFieldHeight)(knobProps.sizeToken, 1, hydrationTouch) * 0.75,\n overflow: \"hidden\",\n overflowX: \"auto\",\n children: selectedValues.map(function(v) {\n var _knobProps_sizeToken;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Chip.Chip, {\n size: (_knobProps_sizeToken = {\n $3: \"$2\",\n $4: \"$3\",\n $5: \"$4\"\n }[knobProps.sizeToken]) !== null && _knobProps_sizeToken !== void 0 ? _knobProps_sizeToken : \"$3\",\n color: \"gray\",\n onDismiss: dismissible && !disabled ? function() {\n return handleDismiss(v);\n } : void 0,\n children: getLabel(v)\n }, v);\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.controlType,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: selectedOption || !multiple && value && valueLabel ? textColor : import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n children: (_ref1 = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref1 !== void 0 ? _ref1 : !multiple && value && valueLabel ? valueLabel : placeholder\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n paddingInlineEnd: \"$2\",\n alignSelf: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.CaretDownIcon, {\n size: 16,\n color: glyphColor\n })\n })\n ]\n });\n var triggerValueText = multiple ? selectedValues.length > 0 ? selectedValues.map(getLabel).join(\", \") : placeholder : (_ref2 = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref2 !== void 0 ? _ref2 : placeholder;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FloatingPanel.FloatingPanel, {\n open,\n onOpenChange: handleOpenChange,\n // Native leaves the form to the window's size class (FZ-8116): a sheet\n // when compact, a panel over the field at regular width.\n sheet: import_tamagui.isWeb,\n // Search-driven comboboxes open the sheet tall: results stream in as\n // the user types, so a content-fit sheet would open as a sliver.\n sheetFill: Boolean(onSearch),\n trigger: triggerContent,\n triggerSizing,\n triggerEnd: clearable && !multiple && !disabled && typeof value === \"string\" && value !== \"\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n size: knobProps.sizeToken,\n height: knobProps.control.height,\n label: t(\"Clear\"),\n onPress: function onPress() {\n return onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(\"\");\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {})\n }) : void 0,\n triggerA11y: {\n label: ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : fieldA11y === null || fieldA11y === void 0 ? void 0 : fieldA11y.label,\n value: triggerValueText,\n hint: fieldA11y === null || fieldA11y === void 0 ? void 0 : fieldA11y.description\n },\n header: searchHeader,\n scrollable: hasScrollableContent,\n disabled,\n contentPadding: \"none\",\n scrollViewProps: {\n onScroll: function onScroll(e) {\n if (!onLoadMore || !hasMore || loading) return;\n var { layoutMeasurement, contentOffset, contentSize } = e.nativeEvent;\n if (contentSize.height - contentOffset.y - layoutMeasurement.height < 100) {\n onLoadMore();\n }\n },\n scrollEventThrottle: 100\n },\n children: listContent\n });\n}\nfunction Combobox(param) {\n var { options, value: valueProp, defaultValue, onChange, placeholder: placeholderProp, searchPlaceholder: searchPlaceholderProp, emptyMessage: emptyMessageProp, onSearch, loading, searchError, valueLabel, clearable, onLoadMore, hasMore, trigger, triggerSizing, name, form: formProp, validators, label, labelProps, helperText, error, required, disabled, readOnly, size: sizeProp, id: idProp, onBlur, popoverWidth, tabIndex: tabIndexProp, multiple, selectedOrder, dismissible, skeleton, creatable, onCreate, createLabel, hideSearch, searchValue, open, onOpenChange, \"aria-label\": ariaLabel, ...rest } = param;\n var { t } = (0, import_i18n.useTranslation)();\n var placeholder = placeholderProp !== null && placeholderProp !== void 0 ? placeholderProp : t(\"Select...\");\n var hasLabel = Boolean(label);\n var searchPlaceholder = searchPlaceholderProp !== null && searchPlaceholderProp !== void 0 ? searchPlaceholderProp : t(\"Search...\");\n var emptyMessage = emptyMessageProp !== null && emptyMessageProp !== void 0 ? emptyMessageProp : t(\"No results found.\");\n var { resolvedForm, knobProps, id } = (0, import_utils.useFormField)({\n form: formProp,\n id: idProp\n });\n var resolvedValidators = (0, import_utils.useResolvedValidators)(required, validators, label, name);\n var [uncontrolledValue, setUncontrolledValue] = (0, import_react.useState)(defaultValue);\n var isControlled = valueProp !== void 0;\n var [createdOptions, setCreatedOptions] = (0, import_react.useState)([]);\n var knownOptions = (0, import_react.useMemo)(function() {\n var unlisted = createdOptions.filter(function(c) {\n return !options.some(function(o) {\n return o.value === c.value;\n });\n });\n return unlisted.length ? [\n ...options,\n ...unlisted\n ] : options;\n }, [\n options,\n createdOptions\n ]);\n var handleCreateOption = (0, import_react.useMemo)(function() {\n return onCreate && function(typed) {\n var created = onCreate(typed);\n if (created) {\n setCreatedOptions(function(prev) {\n return prev.some(function(o) {\n return o.value === created.value;\n }) ? prev : [\n ...prev,\n created\n ];\n });\n }\n return created;\n };\n }, [\n onCreate\n ]);\n var viewportGtSm = (0, import_FloatingPanel.useViewportGtSm)();\n var effectiveGtSm = typeof window !== \"undefined\" ? viewportGtSm : false;\n var shouldUseSheet = !import_tamagui.isWeb || !effectiveGtSm;\n var textColor = knobProps.textAccentColor;\n if (skeleton) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input, {\n size: sizeProp || knobProps.sizeToken,\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"text\",\n width: \"30%\",\n height: 14\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n height: knobProps.sizeToken\n })\n ]\n });\n }\n var renderReadOnly = function renderReadOnly2(selectValue) {\n var _ref;\n if (multiple && Array.isArray(selectValue)) {\n var labels = selectValue.map(function(v) {\n var _ref2;\n var _knownOptions_find;\n return (_ref2 = (_knownOptions_find = knownOptions.find(function(o) {\n return o.value === v;\n })) === null || _knownOptions_find === void 0 ? void 0 : _knownOptions_find.label) !== null && _ref2 !== void 0 ? _ref2 : v;\n }).join(\", \");\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontSize: knobProps.sizeToken,\n color: textColor,\n paddingVertical: \"$2\",\n paddingHorizontal: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: labels || \"-\"\n });\n }\n var sv = typeof selectValue === \"string\" ? selectValue : void 0;\n var selected = knownOptions.find(function(option) {\n return option.value === sv;\n });\n var displayText = (_ref = selected === null || selected === void 0 ? void 0 : selected.label) !== null && _ref !== void 0 ? _ref : sv ? valueLabel !== null && valueLabel !== void 0 ? valueLabel : sv : \"-\";\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontSize: knobProps.sizeToken,\n color: textColor,\n paddingVertical: \"$2\",\n paddingHorizontal: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: displayText\n });\n };\n var renderComboboxContent = function renderComboboxContent2(selectValue, handleValueChange, handleBlur) {\n var _createdOptions_find;\n if (readOnly) return renderReadOnly(selectValue);\n var ComboboxCore = shouldUseSheet ? NativeComboboxCore : FloatingComboboxCore;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ComboboxCore, {\n options: onSearch ? options : knownOptions,\n value: selectValue,\n onValueChange: function onValueChange(value) {\n if (disabled) return;\n handleValueChange === null || handleValueChange === void 0 ? void 0 : handleValueChange(value);\n onChange === null || onChange === void 0 ? void 0 : onChange(value);\n },\n onBlur: handleBlur,\n placeholder,\n searchPlaceholder,\n emptyMessage,\n onSearch,\n loading,\n searchError,\n valueLabel: valueLabel !== null && valueLabel !== void 0 ? valueLabel : (_createdOptions_find = createdOptions.find(function(o) {\n return o.value === selectValue;\n })) === null || _createdOptions_find === void 0 ? void 0 : _createdOptions_find.label,\n clearable,\n onLoadMore,\n hasMore,\n disabled,\n id,\n \"aria-label\": ariaLabel,\n hasLabel,\n tabIndexOverride: tabIndexProp,\n popoverWidth,\n trigger,\n triggerSizing,\n knobProps,\n multiple,\n selectedOrder,\n dismissible,\n creatable,\n onCreate: handleCreateOption,\n createLabel,\n hideSearch,\n searchValue,\n open,\n onOpenChange\n });\n };\n if (trigger) {\n return renderComboboxContent(valueProp !== null && valueProp !== void 0 ? valueProp : uncontrolledValue, isControlled ? void 0 : setUncontrolledValue, onBlur);\n }\n if (!resolvedForm || !name) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error,\n helperText,\n required,\n size: sizeProp,\n knobProps,\n // LC-40: FieldLayout owns the dimWhole assembly dim (keepLabel pins\n // the sibling label/helper readable) — it needs the disabled state.\n disabled,\n ...rest,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input, {\n size: sizeProp || knobProps.sizeToken,\n children: renderComboboxContent(valueProp !== null && valueProp !== void 0 ? valueProp : uncontrolledValue, isControlled ? void 0 : setUncontrolledValue, onBlur)\n })\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.Field, {\n form: resolvedForm,\n name,\n defaultValue,\n validators: resolvedValidators,\n children: function children(field) {\n var resolvedError = (0, import_utils.getFieldError)(field, error);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error: resolvedError,\n helperText,\n required,\n size: sizeProp,\n knobProps,\n // LC-40: see standalone branch — FieldLayout carries dimWhole.\n disabled,\n ...rest,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input, {\n size: sizeProp || knobProps.sizeToken,\n children: renderComboboxContent(field.state.value, function(value) {\n return field.handleChange(value);\n }, (0, import_utils.mergeFieldHandler)(field, \"handleBlur\", onBlur))\n })\n });\n }\n });\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","Combobox_exports","Combobox","module","exports","import_jsx_runtime","require","import_theme","import_CheckGlyph","import_react","import_i18n","import_react2","import_react3","import_theme2","import_react_native","import_tamagui","import_Chip","import_pickerTriggerContract","import_Skeleton","import_fieldLayout","import_InputParts","import_Spinner","import_colorRamps","import_utils","import_floatingList","import_FloatingPanel","import_PanelPortal","import_overlayStack","import_useDragScroll","import_tableCellContext","import_selectedOrder","scrollArrowBuffer","ComboboxRow","styled","View","menuRowFrame","gap","cursor","hoverStyle","backgroundColor","formInputColors","background","focus","focusVisibleStyle","ensureFocusVisibleRing","outlineOffset","variants","selected","true","false","active","size","...size","val","height","comboboxOptionId","baseId","index","comboboxListboxId","listItemRingProps","keyboardRing","keyboardFocusRingProps","outlineWidth","useSelectedMarkColor","useMenuRowCheckInk","GroupHeader","props","jsx","Text","paddingHorizontal","paddingVertical","paddingTop","fontWeight","fontSize","opacity","numberOfLines","userSelect","groupComboboxOptions","options","hasGroups","some","o","group","items","map","option3","type","option","flatIndex","flatOptions","ungrouped","filter","grouped","groups","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","groupLabel","has","set","push","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","option1","length","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","groupLabel1","groupOptions","label","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","option2","ComboboxItem","memo","ComboboxItem2","param","isSelected","isActive","optionId","suppressHover","handlers","ctx","current","itemProps","getItemProps","onClick","event","onSelect","defaultOnKeyDown","onKeyDown","jsxs","ref","node","listItemsRef","id","e","includes","_ctx_onItemKeyDown","onItemKeyDown","onItemHover","onMouseEnter","role","tabIndex","knobProps","control","Boolean","menuRowChecked","scheme","description","transitionProps","motion","children","YStack","flex","minWidth","fontFamily","body","color","textColor","formCommonColors","muted","CheckGlyph","FloatingComboboxCore","onValueChange","onBlur","placeholder","searchPlaceholder","emptyMessage","onSearch","loading","searchError","valueLabel","clearable","onLoadMore","hasMore","disabled","ariaLabel","hasLabel","tabIndexOverride","popoverWidth","trigger","triggerRender","triggerSizing","multiple","selectedOrder","dismissible","creatable","onCreate","createLabel","hideSearch","searchValue","open","openProp","onOpenChange","_ref","overlayZIndex","useOverlayZIndex","style","elevatedSurfaceStyle","elevatedSurfaceProps","elevatedSurface","hydrationTouch","useTouchSurface","isWeb","ensureKeyboardModalityTracking","t","useTranslation","inTableCell","useIsInTableCell","describedBy","useFieldDescribedBy","glyphColor","useGlyphColor","internalOpen","setInternalOpen","useState","setOpen","useCallback","nextOpen","internalFilter","setInternalFilter","activeIndex","setActiveIndex","textAccentColor","markColor","labelCacheRef","useRef","getLabel","v","_labelCacheRef_current_get","selectedValues","useMemo","vals","Array","isArray","sort","a","b","localeCompare","selectedOption","find","selectedOptions","o2","optionValue","handleDismiss","valueToRemove","filtered","query","trim","toLowerCase","keywords","showCreateOption","trimmed","handleCreate","typed","newOption","initialOrderRef","hasSearchedRef","sortedFiltered","orderOptionsBySelected","groupedItems","navigableOptions","searchCleanupRef","useEffect","timerId","setTimeout","_searchCleanupRef_current","cleanup","clearTimeout","searchInputRef","listScrollRef","keyboardNavRef","listKeyboardRing","setListKeyboardRing","setKeyboardNav","prev","lastMousePosRef","currentMousePosRef","x","y","lastKeyboardNavTimeRef","overlayStyle","searchTopRef","grownRef","lastScrollTopRef","growConstraintRef","filterRef","repositionRef","panel","useFloatingPanel","onOpenChange2","wheelGrowRef","scrollBoundaryRef","middleware","useAutoUpdate","onBeforeOpen","scrollRef","dragScrollRef","dragProps","useDragScroll","direction","justResetFromFilterRef","hasSelectedSinceOpenRef","activeIndexRef","navigableOptionsRef","showCreateOptionRef","multipleRef","repositionOverlay","source","_ref2","_ref1","dropdownElement","refs","floating","triggerRef","listScrollElement","suppressTransition","transition","triggerBounds","getBoundingClientRect","viewportHeight","window","innerHeight","viewportWidth","innerWidth","width","maxWidth","searchBarElement","searchBarHeight","offsetHeight","listContentHeight","scrollHeight","computedStyle","getComputedStyle","borderHeight","parseFloat","borderTopWidth","borderBottomWidth","contentHeight","isDropup","placement","startsWith","coversTrigger","top","dropupAnchor","bottom","availableAbove","panelViewportPadding","initialHeight","Math","min","maxAvailable","max","left","maxHeight","scrollTop","panelTransition","requestAnimationFrame","updateArrows","_ref22","_overlayStyle_current","currentHeight","grownHeight","constraint","canGrowDown","canGrowUp","maxAvailable1","height1","triggerTop","triggerBottom","floor","panelBottom","cached","hasTyped","maxAvailable2","height2","cached1","useLayoutEffect","mounted","_searchInputRef_current","loadMoreTriggeredRef","repositionOverlayRef","handleListScroll","element","arrowDir","arrowScrollDirRef","nearBottom","clientHeight","frame","scrollElement","cancelAnimationFrame","document","onMove","onMove2","_el_closest","clientX","clientY","el","elementFromPoint","contains","row","closest","actualIndex","getAttribute","list","len","activeIdx","n","Number","addEventListener","passive","removeEventListener","_currentMousePosRef_current","rawPos","pos","idx","click","useClick","context","keyboardHandlers","dismiss","useDismiss","useRole","listNav","useListNavigation","listRef","onNavigate","Date","now","virtual","loop","scrollItemIntoView","focusItemOnHover","getReferenceProps","getFloatingProps","useInteractions","lastSelectedIndexRef","handleSelect","shiftKey","rangeValues","slice","merged","Set","handleListMouseMove","last","posChanged","handlersRef","handleSelectRef","onKeyDown2","floatingEl","triggerEl","inPanel","preventDefault","stopPropagation","target1","tagName","createIdx","capture","referenceProps","setReferenceRef","code","listboxId","activeDescendant","boxEventProps","entries","totalNavigableItems","createOptionIndex","handleItemKeyDown","_index","isDown","isUp","handleSearchKeyDown","scrollContainer","rafId","item","container","containerRect","itemRect","bottomEdge","topEdge","didScroll","scrollDir","triggerContent","alignSelf","flexShrink","display","alignItems","Input","Box","sizeToken","suppressFocusRing","pickerTriggerContract","borderWidth","borderRadius","SyncFocusToOpen","justifyContent","flexDirection","flexWrap","getFieldHeight","overflow","overflowX","_knobProps_sizeToken","Chip","$3","$4","$5","onDismiss","controlType","Action","onMouseDown","onPress","XIcon","paddingInlineEnd","CaretDownIcon","Fragment","PanelPortal","anchor","FloatingFocusManager","modal","initialFocus","pointerEvents","visible","setFloating","position","zIndex","transform","transformOrigin","boxSizing","dropdownRadius","paddingBottom","coverCornerInset","borderBottomColor","divider","elevation","className","Section","Icon","adornment","MagnifyingGlassIcon","Area","defaultValue","onChangeText","text","Spinner","minHeight","onScroll","onMouseMove","onPointerDown","ScrollArrow","arrowUp","panelPadding","error","PlusIcon","replace","pressStyle","padding","arrowDown","comboboxSearchHeader","comboboxSearchHeader2","setFilter","mutedColor","inputRef","clearLabel","arguments","XStack","unstyled","accessibilityLabel","placeholderTextColor","autoFocus","hitSlop","NativeComboboxCore","_theme_color7","fieldA11y","useFieldA11y","theme","useTheme","color7","isSelectedFn","hasScrollableContent","_listRef_current","totalItems","_listRef_current1","handleListKeyDown","handleOpenChange","searchHeader","listContent","i","prevGroup","showGroupHeader","optionRow","Pressable","accessibilityRole","accessibilityState","triggerProps","importantForAccessibility","triggerValueText","join","FloatingPanel","sheet","sheetFill","triggerEnd","triggerA11y","hint","header","scrollable","contentPadding","scrollViewProps","layoutMeasurement","contentOffset","contentSize","nativeEvent","scrollEventThrottle","valueProp","onChange","placeholderProp","searchPlaceholderProp","emptyMessageProp","form","formProp","validators","labelProps","helperText","required","readOnly","sizeProp","idProp","tabIndexProp","skeleton","rest","resolvedForm","useFormField","resolvedValidators","useResolvedValidators","uncontrolledValue","setUncontrolledValue","isControlled","createdOptions","setCreatedOptions","knownOptions","unlisted","c","handleCreateOption","created","viewportGtSm","useViewportGtSm","effectiveGtSm","shouldUseSheet","Skeleton","variant","renderReadOnly","renderReadOnly2","selectValue","labels","_knownOptions_find","sv","displayText","renderComboboxContent","renderComboboxContent2","handleValueChange","handleBlur","_createdOptions_find","ComboboxCore","FieldLayout","Field","field","resolvedError","getFieldError","state","handleChange","mergeFieldHandler"],"sources":["index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar Combobox_exports = {};\n__export(Combobox_exports, {\n Combobox: () => Combobox\n});\nmodule.exports = __toCommonJS(Combobox_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_CheckGlyph = require(\"../../shared/CheckGlyph\");\nvar import_react = require(\"react\");\nvar import_i18n = require(\"../../shared/i18n\");\nvar import_react2 = require(\"@phosphor-icons/react\");\nvar import_react3 = require(\"@floating-ui/react\");\nvar import_theme2 = require(\"@multiplatform.one/theme\");\nvar import_react_native = require(\"react-native\");\nvar import_tamagui = require(\"tamagui\");\nvar import_Chip = require(\"../../Chip\");\nvar import_pickerTriggerContract = require(\"../../shared/pickerTriggerContract\");\nvar import_Skeleton = require(\"../../Skeleton\");\nvar import_fieldLayout = require(\"../../fieldLayout\");\nvar import_InputParts = require(\"../../InputParts\");\nvar import_Spinner = require(\"../../Spinner\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_utils = require(\"../../shared/utils\");\nvar import_floatingList = require(\"../../shared/floatingList\");\nvar import_FloatingPanel = require(\"../../FloatingPanel\");\nvar import_PanelPortal = require(\"../../FloatingPanel/PanelPortal\");\nvar import_overlayStack = require(\"../../shared/overlayStack\");\nvar import_useDragScroll = require(\"../../shared/useDragScroll\");\nvar import_tableCellContext = require(\"../../shared/tableCellContext\");\nvar import_selectedOrder = require(\"../selectedOrder\");\nvar scrollArrowBuffer = 28;\nvar ComboboxRow = (0, import_tamagui.styled)(import_tamagui.View, {\n name: \"ComboboxRow\",\n ...import_theme2.menuRowFrame,\n gap: \"$2\",\n cursor: \"default\",\n hoverStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n variants: {\n selected: {\n true: {},\n false: {\n backgroundColor: \"transparent\"\n }\n },\n active: {\n true: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n false: {}\n },\n size: {\n \"...size\": function(val) {\n return {\n height: val\n };\n }\n }\n }\n});\nfunction comboboxOptionId(baseId, index) {\n return `${baseId !== null && baseId !== void 0 ? baseId : \"combobox\"}-opt-${index}`;\n}\nfunction comboboxListboxId(baseId) {\n return `${baseId !== null && baseId !== void 0 ? baseId : \"combobox\"}-listbox`;\n}\nfunction listItemRingProps(keyboardRing) {\n return keyboardRing ? import_theme2.keyboardFocusRingProps : {\n outlineWidth: 0\n };\n}\nfunction useSelectedMarkColor() {\n return (0, import_theme2.useMenuRowCheckInk)();\n}\nfunction GroupHeader(props) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_theme2.Text, {\n paddingHorizontal: \"$3\",\n paddingVertical: \"$2\",\n paddingTop: \"$3\",\n fontWeight: \"600\",\n fontSize: \"$2\",\n opacity: 0.6,\n numberOfLines: 1,\n userSelect: \"none\",\n cursor: \"default\",\n ...props\n });\n}\nfunction groupComboboxOptions(options) {\n var hasGroups = options.some(function(o) {\n return o.group;\n });\n if (!hasGroups) {\n return {\n items: options.map(function(option3, index) {\n return {\n type: \"option\",\n option: option3,\n flatIndex: index\n };\n }),\n flatOptions: options\n };\n }\n var ungrouped = options.filter(function(o) {\n return !o.group;\n });\n var grouped = options.filter(function(o) {\n return o.group;\n });\n var groups = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = grouped[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var option = _step.value;\n var groupLabel = option.group;\n if (!groups.has(groupLabel)) {\n groups.set(groupLabel, []);\n }\n groups.get(groupLabel).push(option);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var items = [];\n var flatOptions = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = ungrouped[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var option1 = _step1.value;\n items.push({\n type: \"option\",\n option: option1,\n flatIndex: flatOptions.length\n });\n flatOptions.push(option1);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = groups[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var [groupLabel1, groupOptions] = _step2.value;\n items.push({\n type: \"header\",\n label: groupLabel1\n });\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = groupOptions[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var option2 = _step3.value;\n items.push({\n type: \"option\",\n option: option2,\n flatIndex: flatOptions.length\n });\n flatOptions.push(option2);\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n return {\n items,\n flatOptions\n };\n}\nvar ComboboxItem = /* @__PURE__ */ (0, import_react.memo)(function ComboboxItem2(param) {\n var { option, index, isSelected, isActive, keyboardRing, optionId, suppressHover, handlers } = param;\n var ctx = handlers.current;\n var itemProps = ctx.getItemProps({\n onClick(event) {\n ctx.onSelect(option, index, event);\n }\n });\n var defaultOnKeyDown = itemProps.onKeyDown;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ComboboxRow, {\n ref: function ref(node) {\n ctx.listItemsRef.current[index] = node;\n },\n ...itemProps,\n id: optionId,\n \"data-combobox-index\": index,\n \"data-active\": isActive,\n onKeyDown: function onKeyDown(e) {\n if ([\n \"j\",\n \"k\"\n ].includes(e.key)) {\n var _ctx_onItemKeyDown;\n (_ctx_onItemKeyDown = ctx.onItemKeyDown) === null || _ctx_onItemKeyDown === void 0 ? void 0 : _ctx_onItemKeyDown.call(ctx, e, index);\n } else {\n defaultOnKeyDown === null || defaultOnKeyDown === void 0 ? void 0 : defaultOnKeyDown(e);\n }\n },\n ...ctx.onItemHover ? {\n onMouseEnter: ctx.onItemHover\n } : {},\n role: \"option\",\n tabIndex: -1,\n selected: isSelected,\n active: isActive,\n \"aria-selected\": isSelected,\n \"data-state\": isSelected ? \"active\" : \"inactive\",\n height: ctx.knobProps.control.height,\n ...listItemRingProps(Boolean(keyboardRing)),\n ...suppressHover ? {\n hoverStyle: {\n backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n },\n backgroundColor: isActive ? import_colorRamps.formInputColors.background.focus : void 0\n } : {\n hoverStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n }\n },\n ...isSelected ? (0, import_theme2.menuRowChecked)(ctx.knobProps.scheme) : void 0,\n ...option.description ? (\n // Two-line rows need to grow past the size-variant height.\n {\n height: \"auto\",\n paddingVertical: \"$2\"\n }\n ) : void 0,\n ...(0, import_theme2.transitionProps)(ctx.knobProps.motion.control),\n children: [\n option.description ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n flex: 1,\n minWidth: 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: ctx.knobProps.body.fontFamily,\n fontWeight: ctx.knobProps.body.fontWeight,\n color: ctx.textColor,\n numberOfLines: 1,\n children: option.label\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: ctx.knobProps.body.fontFamily,\n fontSize: \"$2\",\n color: import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n children: option.description\n })\n ]\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: ctx.knobProps.body.fontFamily,\n fontWeight: ctx.knobProps.body.fontWeight,\n color: ctx.textColor,\n numberOfLines: 1,\n flex: 1,\n children: option.label\n }),\n isSelected && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_CheckGlyph.CheckGlyph, {})\n ]\n });\n});\nfunction FloatingComboboxCore(param) {\n var { options, value, onValueChange, onBlur, placeholder, searchPlaceholder, emptyMessage, onSearch, loading, searchError, valueLabel, clearable, onLoadMore, hasMore, disabled, id, \"aria-label\": ariaLabel, hasLabel, tabIndexOverride, popoverWidth, trigger: triggerRender, triggerSizing = \"stretch\", knobProps, multiple, selectedOrder, dismissible, creatable, onCreate, createLabel = 'Create \"{value}\"', hideSearch, searchValue, open: openProp, onOpenChange } = param;\n var _ref;\n var overlayZIndex = (0, import_overlayStack.useOverlayZIndex)(\"dropdown\");\n var { style: elevatedSurfaceStyle, ...elevatedSurfaceProps } = knobProps.elevatedSurface;\n var hydrationTouch = (0, import_theme.useTouchSurface)();\n if (import_tamagui.isWeb) (0, import_theme2.ensureKeyboardModalityTracking)();\n var { t } = (0, import_i18n.useTranslation)();\n var inTableCell = (0, import_tableCellContext.useIsInTableCell)();\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var [internalOpen, setInternalOpen] = (0, import_react.useState)(false);\n var open = openProp !== void 0 ? openProp : internalOpen;\n var setOpen = (0, import_react.useCallback)(function(nextOpen) {\n if (openProp !== void 0) {\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(nextOpen);\n } else {\n setInternalOpen(nextOpen);\n }\n }, [\n openProp,\n onOpenChange\n ]);\n var [internalFilter, setInternalFilter] = (0, import_react.useState)(\"\");\n var filter = searchValue !== void 0 ? searchValue : internalFilter;\n var [activeIndex, setActiveIndex] = (0, import_react.useState)(null);\n var textColor = knobProps.textAccentColor;\n var markColor = useSelectedMarkColor();\n var labelCacheRef = (0, import_react.useRef)(/* @__PURE__ */ new Map());\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = options[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var o = _step.value;\n labelCacheRef.current.set(o.value, o.label);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var getLabel = (0, import_react.useCallback)(function(v) {\n var _labelCacheRef_current_get;\n return (_labelCacheRef_current_get = labelCacheRef.current.get(v)) !== null && _labelCacheRef_current_get !== void 0 ? _labelCacheRef_current_get : v;\n }, []);\n var selectedValues = (0, import_react.useMemo)(function() {\n if (!multiple) return [];\n var vals = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n return [\n ...vals\n ].sort(function(a, b) {\n return getLabel(a).localeCompare(getLabel(b));\n });\n }, [\n multiple,\n value,\n getLabel\n ]);\n var selectedOption = (0, import_react.useMemo)(function() {\n return multiple ? void 0 : options.find(function(option) {\n return option.value === value;\n });\n }, [\n options,\n value,\n multiple\n ]);\n var selectedOptions = (0, import_react.useMemo)(function() {\n return multiple ? options.filter(function(o2) {\n return selectedValues.includes(o2.value);\n }) : [];\n }, [\n options,\n selectedValues,\n multiple\n ]);\n var isSelected = (0, import_react.useCallback)(function(optionValue) {\n return multiple ? selectedValues.includes(optionValue) : optionValue === value;\n }, [\n multiple,\n selectedValues,\n value\n ]);\n var handleDismiss = (0, import_react.useCallback)(function(valueToRemove) {\n if (!multiple) return;\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n var next = current.filter(function(v) {\n return v !== valueToRemove;\n });\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n }, [\n multiple,\n value,\n onValueChange\n ]);\n var filtered = (0, import_react.useMemo)(function() {\n if (onSearch || !filter) return options;\n var query = filter.trim().toLowerCase();\n return options.filter(function(option) {\n return option.label.toLowerCase().includes(query) || option.value.toLowerCase().includes(query) || option.keywords && option.keywords.toLowerCase().includes(query);\n });\n }, [\n options,\n filter,\n onSearch\n ]);\n var showCreateOption = (0, import_react.useMemo)(function() {\n if (!creatable || !filter.trim()) return false;\n var trimmed = filter.trim().toLowerCase();\n return !options.some(function(o2) {\n return o2.label.toLowerCase() === trimmed || o2.value.toLowerCase() === trimmed;\n });\n }, [\n creatable,\n filter,\n options\n ]);\n var handleCreate = (0, import_react.useCallback)(function() {\n var typed = filter.trim();\n if (!onCreate || !typed) return;\n var newOption = onCreate(typed);\n if (newOption && multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n if (!current.includes(newOption.value)) onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange([\n ...current,\n newOption.value\n ]);\n } else if (newOption) {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(newOption.value);\n }\n if (!multiple) setOpen(false);\n setInternalFilter(\"\");\n }, [\n onCreate,\n filter,\n multiple,\n value,\n onValueChange,\n setOpen\n ]);\n var initialOrderRef = (0, import_react.useRef)(null);\n var hasSearchedRef = (0, import_react.useRef)(false);\n var sortedFiltered = (0, import_react.useMemo)(function() {\n if (filter.trim()) {\n hasSearchedRef.current = true;\n return filtered;\n }\n if (!multiple) return filtered;\n if (!open) return filtered;\n if (hasSearchedRef.current) return filtered;\n if (initialOrderRef.current === null) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n initialOrderRef.current = (0, import_selectedOrder.orderOptionsBySelected)(filtered, current, selectedOrder);\n }\n return initialOrderRef.current;\n }, [\n filtered,\n filter,\n open,\n multiple,\n value,\n selectedOrder\n ]);\n var { items: groupedItems, flatOptions: navigableOptions } = (0, import_react.useMemo)(function() {\n return groupComboboxOptions(sortedFiltered);\n }, [\n sortedFiltered\n ]);\n var searchCleanupRef = (0, import_react.useRef)(null);\n (0, import_react.useEffect)(function() {\n if (!onSearch || !open) return;\n var timerId = setTimeout(function() {\n var _searchCleanupRef_current;\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n var cleanup = onSearch(filter);\n searchCleanupRef.current = cleanup !== null && cleanup !== void 0 ? cleanup : null;\n }, 200);\n return function() {\n var _searchCleanupRef_current;\n clearTimeout(timerId);\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n searchCleanupRef.current = null;\n };\n }, [\n filter,\n onSearch,\n open\n ]);\n var listItemsRef = (0, import_react.useRef)([]);\n var searchInputRef = (0, import_react.useRef)(null);\n var listScrollRef = (0, import_react.useRef)(null);\n var keyboardNavRef = (0, import_react.useRef)(false);\n var [listKeyboardRing, setListKeyboardRing] = (0, import_react.useState)(false);\n var setKeyboardNav = (0, import_react.useCallback)(function(next) {\n keyboardNavRef.current = next;\n setListKeyboardRing(function(prev) {\n return prev === next ? prev : next;\n });\n }, []);\n var lastMousePosRef = (0, import_react.useRef)(null);\n var currentMousePosRef = (0, import_react.useRef)({\n x: 0,\n y: 0\n });\n var lastKeyboardNavTimeRef = (0, import_react.useRef)(0);\n var overlayStyle = (0, import_react.useRef)(null);\n var searchTopRef = (0, import_react.useRef)(null);\n var grownRef = (0, import_react.useRef)(false);\n var lastScrollTopRef = (0, import_react.useRef)(0);\n var growConstraintRef = (0, import_react.useRef)(null);\n var filterRef = (0, import_react.useRef)(filter);\n filterRef.current = filter;\n var repositionRef = (0, import_react.useRef)(null);\n var panel = (0, import_FloatingPanel.useFloatingPanel)({\n open,\n onOpenChange: function onOpenChange2(nextOpen) {\n setOpen(nextOpen);\n if (!nextOpen) onBlur === null || onBlur === void 0 ? void 0 : onBlur();\n },\n disabled,\n repositionRef,\n wheelGrowRef: grownRef,\n scrollBoundaryRef: listScrollRef,\n middleware: [],\n useAutoUpdate: false,\n onBeforeOpen: function onBeforeOpen() {\n overlayStyle.current = null;\n searchTopRef.current = null;\n grownRef.current = false;\n lastScrollTopRef.current = 0;\n }\n });\n var { scrollRef: dragScrollRef, dragProps } = (0, import_useDragScroll.useDragScroll)({\n direction: \"vertical\"\n });\n (0, import_react.useEffect)(function() {\n if (listScrollRef.current) {\n dragScrollRef.current = listScrollRef.current;\n }\n }, [\n open,\n dragScrollRef\n ]);\n var justResetFromFilterRef = (0, import_react.useRef)(false);\n (0, import_react.useEffect)(function() {\n if (open) {\n justResetFromFilterRef.current = true;\n setActiveIndex(0);\n hasSelectedSinceOpenRef.current = false;\n } else {\n setInternalFilter(\"\");\n setActiveIndex(null);\n lastMousePosRef.current = null;\n initialOrderRef.current = null;\n hasSearchedRef.current = false;\n setKeyboardNav(false);\n }\n }, [\n open\n ]);\n var activeIndexRef = (0, import_react.useRef)(activeIndex);\n activeIndexRef.current = activeIndex;\n var navigableOptionsRef = (0, import_react.useRef)(navigableOptions);\n navigableOptionsRef.current = navigableOptions;\n var showCreateOptionRef = (0, import_react.useRef)(showCreateOption);\n showCreateOptionRef.current = showCreateOption;\n var multipleRef = (0, import_react.useRef)(multiple);\n multipleRef.current = multiple;\n var repositionOverlay = (0, import_react.useCallback)(function(source) {\n var _ref2, _ref1;\n var dropdownElement = panel.refs.floating.current;\n var trigger = panel.triggerRef.current;\n var listScrollElement = listScrollRef.current;\n if (!dropdownElement || !trigger) return;\n var suppressTransition = source === \"init\" || source === \"filter\";\n if (suppressTransition) dropdownElement.style.transition = \"none\";\n var triggerBounds = trigger.getBoundingClientRect();\n var viewportHeight = window.innerHeight;\n var viewportWidth = window.innerWidth;\n var minWidth = popoverWidth !== null && popoverWidth !== void 0 ? popoverWidth : triggerBounds.width;\n var maxWidth = viewportWidth - 20;\n dropdownElement.style.minWidth = `${minWidth}px`;\n dropdownElement.style.maxWidth = `${maxWidth}px`;\n if (popoverWidth) dropdownElement.style.width = `${popoverWidth}px`;\n var searchBarElement = dropdownElement.children[0];\n var searchBarHeight = (_ref2 = searchBarElement === null || searchBarElement === void 0 ? void 0 : searchBarElement.offsetHeight) !== null && _ref2 !== void 0 ? _ref2 : 0;\n var listContentHeight = (_ref1 = listScrollElement === null || listScrollElement === void 0 ? void 0 : listScrollElement.scrollHeight) !== null && _ref1 !== void 0 ? _ref1 : 0;\n var computedStyle = getComputedStyle(dropdownElement);\n var borderHeight = (parseFloat(computedStyle.borderTopWidth) || 0) + (parseFloat(computedStyle.borderBottomWidth) || 0);\n var contentHeight = searchBarHeight + listContentHeight + borderHeight;\n var isDropup = panel.placement.startsWith(\"top\");\n var coversTrigger = !multipleRef.current;\n var top;\n if (searchTopRef.current === null) {\n var dropupAnchor = coversTrigger ? triggerBounds.bottom : triggerBounds.top;\n if (isDropup) {\n var availableAbove = dropupAnchor - import_FloatingPanel.panelViewportPadding;\n var initialHeight = Math.min(contentHeight, availableAbove);\n top = dropupAnchor - initialHeight;\n } else {\n top = coversTrigger ? triggerBounds.top : triggerBounds.bottom;\n }\n searchTopRef.current = top;\n var maxAvailable = isDropup ? dropupAnchor - top : viewportHeight - top - import_FloatingPanel.panelViewportPadding;\n var height = Math.min(contentHeight, maxAvailable);\n height = Math.max(120, height);\n dropdownElement.style.top = `${top}px`;\n dropdownElement.style.left = `${triggerBounds.left}px`;\n dropdownElement.style.height = `${height}px`;\n dropdownElement.style.maxHeight = \"\";\n overlayStyle.current = {\n top,\n maxHeight: height\n };\n if (listScrollRef.current) listScrollRef.current.scrollTop = 0;\n void dropdownElement.offsetHeight;\n if (suppressTransition) dropdownElement.style.transition = panel.panelTransition;\n requestAnimationFrame(function() {\n if (listScrollRef.current) {\n panel.updateArrows(listScrollRef.current);\n requestAnimationFrame(function() {\n if (listScrollRef.current) panel.updateArrows(listScrollRef.current);\n });\n }\n });\n return;\n } else if (source === \"wheel\") {\n var _ref22;\n var _overlayStyle_current;\n top = searchTopRef.current;\n var currentHeight = (_ref22 = (_overlayStyle_current = overlayStyle.current) === null || _overlayStyle_current === void 0 ? void 0 : _overlayStyle_current.maxHeight) !== null && _ref22 !== void 0 ? _ref22 : 0;\n var grownHeight = currentHeight;\n var constraint = growConstraintRef.current;\n if (constraint !== \"no-down\") {\n var canGrowDown = Math.max(0, viewportHeight - import_FloatingPanel.panelViewportPadding - (top + currentHeight));\n grownHeight += canGrowDown;\n }\n if (constraint !== \"no-up\") {\n var canGrowUp = Math.max(0, top - import_FloatingPanel.panelViewportPadding);\n top -= canGrowUp;\n grownHeight += canGrowUp;\n }\n grownHeight = Math.min(grownHeight, contentHeight);\n searchTopRef.current = top;\n var maxAvailable1 = viewportHeight - top - import_FloatingPanel.panelViewportPadding;\n var height1 = Math.min(grownHeight, maxAvailable1);\n height1 = Math.max(120, height1);\n var triggerTop = triggerBounds.top;\n var triggerBottom = triggerBounds.bottom;\n if (!isDropup) {\n top = coversTrigger ? Math.min(top, triggerTop) : triggerBottom;\n } else {\n var floor = coversTrigger ? triggerBottom : triggerTop;\n var panelBottom = top + height1;\n if (panelBottom < floor) {\n top = floor - height1;\n }\n }\n searchTopRef.current = top;\n var cached = overlayStyle.current;\n if (!cached || cached.top !== top || cached.maxHeight !== height1) {\n dropdownElement.style.top = `${top}px`;\n dropdownElement.style.left = `${triggerBounds.left}px`;\n dropdownElement.style.height = `${height1}px`;\n dropdownElement.style.maxHeight = \"\";\n overlayStyle.current = {\n top,\n maxHeight: height1\n };\n }\n void dropdownElement.offsetHeight;\n requestAnimationFrame(function() {\n if (listScrollRef.current) {\n panel.updateArrows(listScrollRef.current);\n }\n });\n return;\n } else {\n top = searchTopRef.current;\n }\n var hasTyped = filterRef.current.length > 0;\n var maxAvailable2 = !hasTyped && isDropup ? triggerBounds.bottom - top : viewportHeight - top - import_FloatingPanel.panelViewportPadding;\n var height2 = Math.min(contentHeight, maxAvailable2);\n height2 = Math.max(120, height2);\n var cached1 = overlayStyle.current;\n if (!cached1 || cached1.top !== top || cached1.maxHeight !== height2) {\n dropdownElement.style.top = `${top}px`;\n dropdownElement.style.left = `${triggerBounds.left}px`;\n dropdownElement.style.height = `${height2}px`;\n dropdownElement.style.maxHeight = \"\";\n overlayStyle.current = {\n top,\n maxHeight: height2\n };\n }\n void dropdownElement.offsetHeight;\n if (suppressTransition) dropdownElement.style.transition = panel.panelTransition;\n requestAnimationFrame(function() {\n if (listScrollRef.current) {\n panel.updateArrows(listScrollRef.current);\n requestAnimationFrame(function() {\n if (listScrollRef.current) panel.updateArrows(listScrollRef.current);\n });\n }\n });\n }, [\n panel.placement,\n panel.updateArrows,\n popoverWidth,\n panel.refs,\n panel.panelTransition\n ]);\n repositionRef.current = function() {\n return repositionOverlay(\"wheel\");\n };\n (0, import_react.useLayoutEffect)(function() {\n if (!open || !panel.mounted) return;\n grownRef.current = false;\n repositionOverlay(\"filter\");\n }, [\n open,\n panel.mounted,\n filtered.length,\n loading,\n repositionOverlay\n ]);\n (0, import_react.useEffect)(function() {\n if (open && panel.mounted && !hideSearch) {\n requestAnimationFrame(function() {\n var _searchInputRef_current;\n return (_searchInputRef_current = searchInputRef.current) === null || _searchInputRef_current === void 0 ? void 0 : _searchInputRef_current.focus();\n });\n }\n }, [\n open,\n panel.mounted,\n hideSearch\n ]);\n var loadMoreTriggeredRef = (0, import_react.useRef)(false);\n var repositionOverlayRef = (0, import_react.useRef)(repositionOverlay);\n repositionOverlayRef.current = repositionOverlay;\n var handleListScroll = (0, import_react.useCallback)(function(event) {\n var element = event.target;\n panel.updateArrows(element);\n var arrowDir = panel.arrowScrollDirRef.current;\n if (arrowDir) {\n panel.arrowScrollDirRef.current = null;\n lastScrollTopRef.current = element.scrollTop;\n growConstraintRef.current = arrowDir === \"down\" ? \"no-down\" : \"no-up\";\n repositionOverlayRef.current(\"wheel\");\n growConstraintRef.current = null;\n return;\n }\n lastScrollTopRef.current = element.scrollTop;\n if (onLoadMore && hasMore && !loading) {\n var nearBottom = element.scrollHeight - element.scrollTop - element.clientHeight < 100;\n if (nearBottom && !loadMoreTriggeredRef.current) {\n loadMoreTriggeredRef.current = true;\n onLoadMore();\n } else if (!nearBottom) {\n loadMoreTriggeredRef.current = false;\n }\n }\n }, [\n panel.updateArrows,\n onLoadMore,\n hasMore,\n loading\n ]);\n (0, import_react.useEffect)(function() {\n if (!open) return;\n var frame = requestAnimationFrame(function() {\n var scrollElement = listScrollRef.current;\n if (scrollElement) panel.updateArrows(scrollElement);\n });\n return function() {\n return cancelAnimationFrame(frame);\n };\n }, [\n open,\n filtered,\n panel.updateArrows\n ]);\n (0, import_react.useEffect)(function() {\n if (!open || typeof document === \"undefined\") return;\n var onMove = function onMove2(e) {\n var _el_closest;\n var { clientX: x, clientY: y } = e;\n currentMousePosRef.current = {\n x,\n y\n };\n if (keyboardNavRef.current) return;\n var floating = panel.refs.floating.current;\n if (!floating) return;\n var el = document.elementFromPoint(x, y);\n if (!el || !floating.contains(el)) return;\n var row = (_el_closest = el.closest) === null || _el_closest === void 0 ? void 0 : _el_closest.call(el, \"[data-combobox-index]\");\n var actualIndex = row === null || row === void 0 ? void 0 : row.getAttribute(\"data-combobox-index\");\n var list = navigableOptionsRef.current;\n var len = list.length + (showCreateOptionRef.current ? 1 : 0);\n var activeIdx = activeIndexRef.current;\n var n = actualIndex != null ? Number(actualIndex) : null;\n var next = n != null && n >= 0 && n < len ? n : activeIdx;\n if (next !== activeIdx) {\n setActiveIndex(next);\n }\n };\n document.addEventListener(\"mousemove\", onMove, {\n passive: true\n });\n return function() {\n return document.removeEventListener(\"mousemove\", onMove);\n };\n }, [\n open,\n panel.refs\n ]);\n (0, import_react.useLayoutEffect)(function() {\n var _currentMousePosRef_current;\n var len = navigableOptions.length + (showCreateOption ? 1 : 0);\n listItemsRef.current.length = len;\n justResetFromFilterRef.current = true;\n var rawPos = (_currentMousePosRef_current = currentMousePosRef.current) !== null && _currentMousePosRef_current !== void 0 ? _currentMousePosRef_current : lastMousePosRef.current;\n var pos = rawPos && (rawPos.x > 0 || rawPos.y > 0) ? rawPos : null;\n if (pos && typeof document !== \"undefined\") {\n var _el_closest;\n var el = document.elementFromPoint(pos.x, pos.y);\n var row = el === null || el === void 0 ? void 0 : (_el_closest = el.closest) === null || _el_closest === void 0 ? void 0 : _el_closest.call(el, \"[data-combobox-index]\");\n var idx = row === null || row === void 0 ? void 0 : row.getAttribute(\"data-combobox-index\");\n if (idx != null) {\n var n = Number(idx);\n if (n >= 0 && n < len) setActiveIndex(n);\n else setActiveIndex(null);\n } else {\n setActiveIndex(null);\n }\n } else {\n setActiveIndex(0);\n }\n }, [\n filter,\n navigableOptions.length,\n showCreateOption\n ]);\n var click = (0, import_react3.useClick)(panel.context, {\n event: \"mousedown\",\n keyboardHandlers: false\n });\n var dismiss = (0, import_react3.useDismiss)(panel.context);\n var role = (0, import_react3.useRole)(panel.context, {\n role: \"listbox\"\n });\n var listNav = (0, import_react3.useListNavigation)(panel.context, {\n listRef: listItemsRef,\n activeIndex,\n onNavigate: function onNavigate(index) {\n if (index !== null) {\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(index);\n }\n },\n virtual: true,\n loop: true,\n scrollItemIntoView: false,\n focusItemOnHover: false\n });\n var { getReferenceProps, getFloatingProps, getItemProps } = (0, import_react3.useInteractions)([\n click,\n dismiss,\n role,\n listNav\n ]);\n var lastSelectedIndexRef = (0, import_react.useRef)(null);\n var hasSelectedSinceOpenRef = (0, import_react.useRef)(false);\n var handleSelect = (0, import_react.useCallback)(function(option, index, event) {\n hasSelectedSinceOpenRef.current = true;\n if (multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n if ((event === null || event === void 0 ? void 0 : event.shiftKey) && lastSelectedIndexRef.current != null) {\n var from = Math.min(lastSelectedIndexRef.current, index);\n var to = Math.max(lastSelectedIndexRef.current, index);\n var rangeValues = navigableOptions.slice(from, to + 1).map(function(o2) {\n return o2.value;\n });\n var merged = /* @__PURE__ */ new Set([\n ...current,\n ...rangeValues\n ]);\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange([\n ...merged\n ]);\n } else {\n var next = current.includes(option.value) ? current.filter(function(v) {\n return v !== option.value;\n }) : [\n ...current,\n option.value\n ];\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n lastSelectedIndexRef.current = index;\n }\n } else {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(option.value);\n setOpen(false);\n }\n }, [\n onValueChange,\n multiple,\n value,\n navigableOptions\n ]);\n var handleListMouseMove = (0, import_react.useCallback)(function(e) {\n var { clientX, clientY } = e;\n currentMousePosRef.current = {\n x: clientX,\n y: clientY\n };\n if (!keyboardNavRef.current && typeof document !== \"undefined\") {\n var _el_closest;\n var el = document.elementFromPoint(clientX, clientY);\n var row = el === null || el === void 0 ? void 0 : (_el_closest = el.closest) === null || _el_closest === void 0 ? void 0 : _el_closest.call(el, \"[data-combobox-index]\");\n var actualIndex = row === null || row === void 0 ? void 0 : row.getAttribute(\"data-combobox-index\");\n var list = navigableOptionsRef.current;\n var len = list.length + (showCreateOptionRef.current ? 1 : 0);\n var activeIdx = activeIndexRef.current;\n var n = actualIndex != null ? Number(actualIndex) : null;\n var next = n != null && n >= 0 && n < len ? n : activeIdx;\n if (next !== activeIdx) setActiveIndex(next);\n }\n var last = lastMousePosRef.current;\n var posChanged = last != null && (clientX !== last.x || clientY !== last.y);\n if (!posChanged) return;\n var now = Date.now();\n if (now - lastKeyboardNavTimeRef.current < 200) return;\n lastMousePosRef.current = {\n x: clientX,\n y: clientY\n };\n setKeyboardNav(false);\n }, [\n setKeyboardNav\n ]);\n var handlersRef = (0, import_react.useRef)({});\n var handleSelectRef = (0, import_react.useRef)(handleSelect);\n handleSelectRef.current = handleSelect;\n (0, import_react.useEffect)(function() {\n if (!open || typeof document === \"undefined\") return;\n var onKeyDown = function onKeyDown2(e) {\n var floatingEl = panel.refs.floating.current;\n var triggerEl = panel.triggerRef.current;\n var target = e.target;\n var inPanel = target && ((floatingEl === null || floatingEl === void 0 ? void 0 : floatingEl.contains(target)) || (triggerEl === null || triggerEl === void 0 ? void 0 : triggerEl.contains(target)));\n if (!inPanel) return;\n if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n setOpen(false);\n } else if (e.key === \"Enter\" || e.key === \" \") {\n var target1 = e.target;\n if (e.key === \" \" && (target1 === null || target1 === void 0 ? void 0 : target1.tagName) === \"INPUT\" && target1.type !== \"checkbox\") return;\n e.preventDefault();\n e.stopPropagation();\n var idx = activeIndexRef.current;\n var list = navigableOptionsRef.current;\n var createIdx = showCreateOptionRef.current ? list.length : -1;\n if (idx === createIdx && showCreateOptionRef.current) {\n handleCreate();\n } else if (e.key === \"Enter\" && multipleRef.current && hasSelectedSinceOpenRef.current) {\n setOpen(false);\n } else if (idx != null && list[idx]) {\n handleSelectRef.current(list[idx], idx);\n if (e.key === \"Enter\" || !multipleRef.current) setOpen(false);\n } else {\n setOpen(false);\n }\n }\n };\n document.addEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n return function() {\n return document.removeEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n };\n }, [\n open,\n showCreateOption,\n handleCreate,\n setOpen\n ]);\n var referenceProps = getReferenceProps({\n ref: panel.setReferenceRef,\n onKeyDown(event) {\n if (event.key === \"Enter\" || event.code === \"Space\" || event.key === \" \" || event.key === \"ArrowDown\" || event.key === \"ArrowUp\" || event.key === \"j\" || event.key === \"k\") {\n event.preventDefault();\n setKeyboardNav(true);\n setOpen(true);\n setActiveIndex(0);\n }\n }\n });\n var listboxId = comboboxListboxId(id);\n var activeDescendant = open && activeIndex != null && activeIndex >= 0 ? comboboxOptionId(id, activeIndex) : void 0;\n var boxEventProps = {};\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = Object.entries(referenceProps)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var [key, val] = _step1.value;\n if (key === \"ref\" || typeof val === \"function\") boxEventProps[key] = val;\n if (key.startsWith(\"aria-\") || key === \"role\" || key === \"tabIndex\") boxEventProps[key] = val;\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n boxEventProps.tabIndex = disabled ? -1 : tabIndexOverride !== null && tabIndexOverride !== void 0 ? tabIndexOverride : 0;\n boxEventProps.role = \"combobox\";\n boxEventProps[\"aria-haspopup\"] = \"listbox\";\n boxEventProps[\"aria-expanded\"] = open;\n boxEventProps[\"aria-controls\"] = listboxId;\n if (hideSearch) {\n boxEventProps[\"aria-autocomplete\"] = \"list\";\n if (activeDescendant) boxEventProps[\"aria-activedescendant\"] = activeDescendant;\n }\n if (id) boxEventProps.id = id;\n if (ariaLabel) boxEventProps[\"aria-label\"] = ariaLabel;\n else if (!(hasLabel && id) && placeholder) boxEventProps[\"aria-label\"] = placeholder;\n if (describedBy) boxEventProps[\"aria-describedby\"] = describedBy;\n var totalNavigableItems = navigableOptions.length + (showCreateOption ? 1 : 0);\n var createOptionIndex = showCreateOption ? navigableOptions.length : -1;\n var handleItemKeyDown = (0, import_react.useCallback)(function(e, _index) {\n var isDown = e.key === \"j\";\n var isUp = e.key === \"k\";\n if (isDown || isUp) {\n e.preventDefault();\n e.stopPropagation();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(function(prev) {\n var next = isDown ? prev == null ? 0 : prev + 1 : prev == null ? totalNavigableItems - 1 : prev - 1;\n return isDown ? next >= totalNavigableItems ? 0 : next : next < 0 ? totalNavigableItems - 1 : next;\n });\n }\n }, [\n totalNavigableItems,\n setKeyboardNav\n ]);\n handlersRef.current = {\n getItemProps,\n onSelect: handleSelect,\n onItemHover: void 0,\n onItemKeyDown: handleItemKeyDown,\n knobProps,\n textColor,\n markColor,\n listItemsRef\n };\n var handleSearchKeyDown = (0, import_react.useCallback)(function(event) {\n var isDown = event.key === \"ArrowDown\";\n var isUp = event.key === \"ArrowUp\";\n if (isDown) {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(function(prev) {\n var next = prev == null ? 0 : prev + 1;\n return next >= totalNavigableItems ? 0 : next;\n });\n } else if (isUp) {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n lastMousePosRef.current = {\n ...currentMousePosRef.current\n };\n setActiveIndex(function(prev) {\n var next = prev == null ? totalNavigableItems - 1 : prev - 1;\n return next < 0 ? totalNavigableItems - 1 : next;\n });\n } else if (event.key === \"Home\") {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n setActiveIndex(0);\n } else if (event.key === \"End\") {\n event.preventDefault();\n setKeyboardNav(true);\n lastKeyboardNavTimeRef.current = Date.now();\n setActiveIndex(Math.max(0, totalNavigableItems - 1));\n } else if (event.key === \"Enter\" || event.key === \" \") {\n if (event.key === \" \" && filter.trim()) return;\n event.preventDefault();\n if (activeIndex === createOptionIndex && showCreateOption) {\n handleCreate();\n } else if (event.key === \"Enter\" && multiple && hasSelectedSinceOpenRef.current) {\n setOpen(false);\n } else if (activeIndex != null && navigableOptions[activeIndex]) {\n handleSelect(navigableOptions[activeIndex], activeIndex);\n if (event.key === \"Enter\" || !multiple) setOpen(false);\n } else {\n setOpen(false);\n }\n } else if (event.key === \"Escape\") {\n event.preventDefault();\n setOpen(false);\n }\n }, [\n navigableOptions,\n activeIndex,\n handleSelect,\n handleCreate,\n totalNavigableItems,\n createOptionIndex,\n showCreateOption,\n multiple,\n filter,\n setKeyboardNav\n ]);\n (0, import_react.useEffect)(function() {\n if (activeIndex == null) return;\n var scrollContainer = listScrollRef.current;\n if (!scrollContainer) return;\n var rafId = requestAnimationFrame(function() {\n var item = listItemsRef.current[activeIndex];\n var container = listScrollRef.current;\n if (!item || !container) return;\n var containerRect = container.getBoundingClientRect();\n var itemRect = item.getBoundingClientRect();\n var bottomEdge = containerRect.bottom - scrollArrowBuffer;\n var topEdge = containerRect.top + scrollArrowBuffer;\n var didScroll = false;\n var scrollDir = null;\n if (itemRect.bottom > bottomEdge) {\n scrollDir = \"down\";\n container.scrollTop += itemRect.bottom - bottomEdge;\n didScroll = true;\n } else if (itemRect.top < topEdge) {\n scrollDir = \"up\";\n container.scrollTop -= topEdge - itemRect.top;\n didScroll = true;\n }\n if (didScroll && scrollDir && !justResetFromFilterRef.current) {\n lastScrollTopRef.current = container.scrollTop;\n growConstraintRef.current = scrollDir === \"down\" ? \"no-down\" : \"no-up\";\n repositionOverlayRef.current(\"wheel\");\n growConstraintRef.current = null;\n }\n justResetFromFilterRef.current = false;\n });\n return function() {\n return cancelAnimationFrame(rafId);\n };\n }, [\n activeIndex,\n multiple ? value : void 0\n ]);\n var triggerContent = triggerRender ? (\n // Stretch so custom triggers (e.g. Awesomebar) can own their height\n // instead of collapsing inside a shrink-wrapped View (SB-M-1703).\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...boxEventProps,\n \"data-testid\": \"combobox-trigger\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\",\n alignSelf: \"stretch\",\n flexShrink: 0,\n outlineWidth: 0,\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n style: {\n display: \"flex\",\n alignItems: \"stretch\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\"\n },\n children: triggerRender(multiple ? selectedOptions : selectedOption, open)\n })\n ) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n ...boxEventProps,\n \"data-testid\": \"combobox-trigger\",\n // LC-40: Box washes its own chrome when disabled — no opacity dim here\n // (it stacked with the wash and pushed the value text below AA).\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n disabled,\n size: knobProps.sizeToken,\n // One surface owner: a single-value panel COVERS this trigger (panel\n // top = trigger top), so the trigger's outer focus ring must not paint\n // — it would ghost around the panel's corners. A multi-select panel\n // attaches below instead (MPO-38), leaving the trigger on screen and\n // focusable, so it keeps its ring.\n suppressFocusRing: open && !multiple,\n ...(0, import_pickerTriggerContract.pickerTriggerContract)(knobProps.control.height),\n ...inTableCell ? (\n // Chromeless in cells.\n {}\n ) : {\n borderWidth: knobProps.borderRadius.borderWidth\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingList.SyncFocusToOpen, {\n open\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flex: 1,\n paddingHorizontal: \"$3\",\n paddingVertical: \"$2\",\n justifyContent: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n alignItems: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n children: multiple && selectedValues.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n flexWrap: \"nowrap\",\n gap: \"$1.5\",\n alignItems: \"center\",\n maxHeight: (0, import_utils.getFieldHeight)(knobProps.sizeToken, 1, hydrationTouch) * 0.75,\n overflow: \"hidden\",\n overflowX: \"auto\",\n children: selectedValues.map(function(v) {\n var _knobProps_sizeToken;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Chip.Chip, {\n size: (_knobProps_sizeToken = {\n $3: \"$2\",\n $4: \"$3\",\n $5: \"$4\"\n }[knobProps.sizeToken]) !== null && _knobProps_sizeToken !== void 0 ? _knobProps_sizeToken : \"$3\",\n color: \"gray\",\n onDismiss: dismissible && !disabled ? function() {\n return handleDismiss(v);\n } : void 0,\n children: getLabel(v)\n }, v);\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.controlType,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: selectedOption || !multiple && value && valueLabel ? textColor : import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n userSelect: \"none\",\n children: (_ref = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref !== void 0 ? _ref : !multiple && value && valueLabel ? valueLabel : placeholder\n })\n }),\n clearable && !multiple && !disabled && typeof value === \"string\" && value !== \"\" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n size: knobProps.sizeToken,\n height: knobProps.control.height,\n tabIndex: -1,\n label: t(\"Clear\"),\n // useClick opens on mousedown at the trigger — swallow it so\n // clearing never toggles the dropdown.\n onMouseDown: function onMouseDown(e) {\n e.stopPropagation();\n e.preventDefault();\n },\n onPress: function onPress() {\n return onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(\"\");\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {})\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n paddingInlineEnd: \"$2\",\n alignSelf: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.CaretDownIcon, {\n size: 16,\n color: glyphColor\n })\n })\n ]\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n triggerContent,\n panel.mounted && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_PanelPortal.PanelPortal, {\n anchor: panel.triggerRef.current,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react3.FloatingFocusManager, {\n context: panel.context,\n modal: false,\n initialFocus: -1,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n outlineWidth: 0,\n pointerEvents: panel.visible ? \"auto\" : \"none\",\n ...getFloatingProps({\n ref: panel.refs.setFloating,\n id: listboxId\n }),\n style: {\n position: \"fixed\",\n top: 0,\n left: 0,\n zIndex: overlayZIndex,\n overflow: \"hidden\",\n display: \"flex\",\n flexDirection: \"column\",\n ...elevatedSurfaceStyle,\n opacity: panel.visible ? 1 : 0,\n transform: panel.visible ? \"scale(1)\" : \"scale(0.96)\",\n transition: panel.panelTransition,\n transformOrigin: panel.placement.startsWith(\"top\") ? \"bottom left\" : \"top left\",\n boxSizing: \"border-box\"\n },\n ...elevatedSurfaceProps,\n borderRadius: panel.dropdownRadius,\n \"data-testid\": \"combobox-dropdown\",\n paddingBottom: panel.coverCornerInset || void 0,\n children: [\n !hideSearch && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input, {\n size: knobProps.sizeToken,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n borderWidth: 0,\n borderBottomWidth: 1,\n borderBottomColor: import_colorRamps.formCommonColors.divider,\n borderRadius: 0,\n elevation: void 0,\n // LC-71: search is text-entry — ring the whole row (magnifier included).\n ...import_tamagui.isWeb ? {\n className: \"mp-composite-ring\"\n } : void 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"leading\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.MagnifyingGlassIcon, {})\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Area, {\n ref: searchInputRef,\n defaultValue: \"\",\n onChangeText: function onChangeText(text) {\n return setInternalFilter(text);\n },\n placeholder: searchPlaceholder,\n onKeyDown: handleSearchKeyDown,\n \"aria-autocomplete\": \"list\",\n \"aria-controls\": listboxId,\n \"aria-activedescendant\": activeDescendant,\n \"aria-expanded\": open\n })\n }),\n loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"trailing\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n }) : filter ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n label: t(\"Clear search\"),\n onPress: function onPress() {\n return setInternalFilter(\"\");\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {})\n })\n }) : null\n ]\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ref: listScrollRef,\n overflow: \"scroll\",\n flex: 1,\n minHeight: 0,\n onScroll: handleListScroll,\n onMouseMove: handleListMouseMove,\n onPointerDown: dragProps.onPointerDown,\n style: dragProps.style,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingList.ScrollArrow, {\n direction: \"up\",\n scrollRef: listScrollRef,\n visible: panel.arrowUp,\n arrowScrollDirRef: panel.arrowScrollDirRef\n }),\n searchError ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.error,\n fontSize: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: searchError\n })\n }) : navigableOptions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react.Fragment, {\n children: [\n groupedItems.map(function(item) {\n return item.type === \"header\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GroupHeader, {\n color: textColor,\n \"data-combobox-group-header\": \"\",\n children: item.label\n }, `header-${item.label}`) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ComboboxItem, {\n option: item.option,\n index: item.flatIndex,\n optionId: comboboxOptionId(id, item.flatIndex),\n isSelected: isSelected(item.option.value),\n isActive: item.flatIndex === activeIndex,\n keyboardRing: item.flatIndex === activeIndex && listKeyboardRing,\n suppressHover: activeIndex != null,\n handlers: handlersRef\n }, item.option.value);\n }),\n showCreateOption && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ComboboxRow, {\n role: \"option\",\n tabIndex: -1,\n id: comboboxOptionId(id, createOptionIndex),\n selected: false,\n active: createOptionIndex === activeIndex,\n height: knobProps.control.height,\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : void 0,\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : void 0,\n onPress: handleCreate,\n ...(0, import_theme2.transitionProps)(knobProps.motion.control),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: knobProps.textAccentColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n })\n ]\n }, filter) : showCreateOption ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(ComboboxRow, {\n role: \"option\",\n tabIndex: -1,\n id: comboboxOptionId(id, createOptionIndex),\n selected: false,\n active: createOptionIndex === activeIndex,\n height: knobProps.control.height,\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n onPress: handleCreate,\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n ...(0, import_theme2.transitionProps)(knobProps.motion.control),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: knobProps.textAccentColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n }) : loading ? (\n // Async search in flight with nothing loaded yet: a bounded\n // loading row — never a premature \"no results\".\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n fontSize: knobProps.sizeToken,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: emptyMessage\n })\n }),\n hasMore && loading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n padding: \"$2\",\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_floatingList.ScrollArrow, {\n direction: \"down\",\n scrollRef: listScrollRef,\n visible: panel.arrowDown,\n arrowScrollDirRef: panel.arrowScrollDirRef\n })\n ]\n })\n ]\n })\n })\n })\n ]\n });\n}\nvar comboboxSearchHeader = function comboboxSearchHeader2(knobProps, filter, setFilter, searchPlaceholder, textColor, mutedColor, loading, onKeyDown, inputRef) {\n var clearLabel = arguments.length > 9 && arguments[9] !== void 0 ? arguments[9] : \"Clear search\";\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n height: knobProps.control.height,\n borderBottomWidth: 1,\n borderBottomColor: import_colorRamps.formCommonColors.divider,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.MagnifyingGlassIcon, {\n size: 16,\n color: mutedColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Input, {\n ref: inputRef,\n unstyled: true,\n flex: 1,\n placeholder: searchPlaceholder,\n // iOS VoiceOver: name the search box (placeholder alone is value-only).\n ...!import_tamagui.isWeb ? {\n accessibilityLabel: searchPlaceholder\n } : void 0,\n value: filter,\n onChangeText: setFilter,\n onKeyDown,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n placeholderTextColor: mutedColor,\n autoFocus: true\n }),\n loading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n }) : filter ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n role: \"button\",\n \"aria-label\": clearLabel,\n hitSlop: 14,\n onPress: function onPress() {\n return setFilter(\"\");\n },\n \"data-testid\": \"combobox-search-clear\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {\n size: 16,\n color: mutedColor\n })\n }) : null\n ]\n });\n};\nfunction NativeComboboxCore(param) {\n var { options, value, onValueChange, onBlur, placeholder, searchPlaceholder, emptyMessage, onSearch, loading, searchError, valueLabel, clearable, onLoadMore, hasMore, disabled, id, \"aria-label\": ariaLabel, hasLabel, trigger: triggerRender, triggerSizing = \"stretch\", knobProps, multiple, selectedOrder, dismissible, creatable, onCreate, createLabel = 'Create \"{value}\"', hideSearch, searchValue, open: openProp, onOpenChange } = param;\n var _ref, _ref1, _ref2;\n var _theme_color7;\n var hydrationTouch = (0, import_theme.useTouchSurface)();\n if (import_tamagui.isWeb) (0, import_theme2.ensureKeyboardModalityTracking)();\n var { t } = (0, import_i18n.useTranslation)();\n var inTableCell = (0, import_tableCellContext.useIsInTableCell)();\n var describedBy = (0, import_fieldLayout.useFieldDescribedBy)();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var [internalOpen, setInternalOpen] = (0, import_react.useState)(false);\n var open = openProp !== void 0 ? openProp : internalOpen;\n var setOpen = (0, import_react.useCallback)(function(nextOpen) {\n if (openProp !== void 0) {\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(nextOpen);\n } else {\n setInternalOpen(nextOpen);\n }\n }, [\n openProp,\n onOpenChange\n ]);\n var [internalFilter, setInternalFilter] = (0, import_react.useState)(\"\");\n var filter = searchValue !== void 0 ? searchValue : internalFilter;\n var [activeIndex, setActiveIndex] = (0, import_react.useState)(0);\n var [listKeyboardRing, setListKeyboardRing] = (0, import_react.useState)(false);\n var setKeyboardNav = (0, import_react.useCallback)(function(next) {\n setListKeyboardRing(function(prev) {\n return prev === next ? prev : next;\n });\n }, []);\n var listRef = (0, import_react.useRef)(null);\n var searchInputRef = (0, import_react.useRef)(null);\n var fieldA11y = (0, import_fieldLayout.useFieldA11y)();\n var textColor = knobProps.textAccentColor;\n var theme = (0, import_tamagui.useTheme)();\n var mutedColor = (_ref = (_theme_color7 = theme.color7) === null || _theme_color7 === void 0 ? void 0 : _theme_color7.val) !== null && _ref !== void 0 ? _ref : \"$color7\";\n var markColor = useSelectedMarkColor();\n var labelCacheRef = (0, import_react.useRef)(/* @__PURE__ */ new Map());\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = options[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var o = _step.value;\n labelCacheRef.current.set(o.value, o.label);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var getLabel = (0, import_react.useCallback)(function(v) {\n var _labelCacheRef_current_get;\n return (_labelCacheRef_current_get = labelCacheRef.current.get(v)) !== null && _labelCacheRef_current_get !== void 0 ? _labelCacheRef_current_get : v;\n }, []);\n var selectedValues = (0, import_react.useMemo)(function() {\n if (!multiple) return [];\n var vals = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n return [\n ...vals\n ].sort(function(a, b) {\n return getLabel(a).localeCompare(getLabel(b));\n });\n }, [\n multiple,\n value,\n options\n ]);\n var selectedOption = (0, import_react.useMemo)(function() {\n return multiple ? void 0 : options.find(function(o2) {\n return o2.value === value;\n });\n }, [\n options,\n value,\n multiple\n ]);\n var selectedOptions = (0, import_react.useMemo)(function() {\n return multiple ? options.filter(function(o2) {\n return selectedValues.includes(o2.value);\n }) : [];\n }, [\n options,\n selectedValues,\n multiple\n ]);\n var isSelectedFn = (0, import_react.useCallback)(function(optionValue) {\n return multiple ? selectedValues.includes(optionValue) : optionValue === value;\n }, [\n multiple,\n selectedValues,\n value\n ]);\n var handleDismiss = (0, import_react.useCallback)(function(valueToRemove) {\n if (!multiple) return;\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n var next = current.filter(function(v) {\n return v !== valueToRemove;\n });\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n }, [\n multiple,\n value,\n onValueChange\n ]);\n var filtered = (0, import_react.useMemo)(function() {\n if (onSearch || !filter) return options;\n var query = filter.trim().toLowerCase();\n return options.filter(function(option) {\n return option.label.toLowerCase().includes(query) || option.value.toLowerCase().includes(query) || option.keywords && option.keywords.toLowerCase().includes(query);\n });\n }, [\n options,\n filter,\n onSearch\n ]);\n var showCreateOption = (0, import_react.useMemo)(function() {\n if (!creatable || !filter.trim()) return false;\n var trimmed = filter.trim().toLowerCase();\n return !options.some(function(o2) {\n return o2.label.toLowerCase() === trimmed || o2.value.toLowerCase() === trimmed;\n });\n }, [\n creatable,\n filter,\n options\n ]);\n var handleCreate = (0, import_react.useCallback)(function() {\n var typed = filter.trim();\n if (!onCreate || !typed) return;\n var newOption = onCreate(typed);\n if (newOption && multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n if (!current.includes(newOption.value)) onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange([\n ...current,\n newOption.value\n ]);\n } else if (newOption) {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(newOption.value);\n }\n if (!multiple) setOpen(false);\n setInternalFilter(\"\");\n }, [\n onCreate,\n filter,\n multiple,\n value,\n onValueChange,\n setOpen\n ]);\n var hasScrollableContent = Boolean(onSearch) || filtered.length > 6;\n var sortedFiltered = (0, import_react.useMemo)(function() {\n if (filter.trim()) return filtered;\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n return (0, import_selectedOrder.orderOptionsBySelected)(filtered, current, selectedOrder);\n }, [\n filtered,\n value,\n filter,\n selectedOrder\n ]);\n var { flatOptions: navigableOptions } = (0, import_react.useMemo)(function() {\n return groupComboboxOptions(sortedFiltered);\n }, [\n sortedFiltered\n ]);\n var searchCleanupRef = (0, import_react.useRef)(null);\n (0, import_react.useEffect)(function() {\n if (!onSearch || !open) return;\n var timerId = setTimeout(function() {\n var _searchCleanupRef_current;\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n var cleanup = onSearch(filter);\n searchCleanupRef.current = cleanup !== null && cleanup !== void 0 ? cleanup : null;\n }, 200);\n return function() {\n var _searchCleanupRef_current;\n clearTimeout(timerId);\n (_searchCleanupRef_current = searchCleanupRef.current) === null || _searchCleanupRef_current === void 0 ? void 0 : _searchCleanupRef_current.call(searchCleanupRef);\n searchCleanupRef.current = null;\n };\n }, [\n filter,\n onSearch,\n open\n ]);\n (0, import_react.useEffect)(function() {\n if (open) {\n setActiveIndex(0);\n requestAnimationFrame(function() {\n var _listRef_current, _searchInputRef_current;\n return hideSearch ? (_listRef_current = listRef.current) === null || _listRef_current === void 0 ? void 0 : _listRef_current.focus() : (_searchInputRef_current = searchInputRef.current) === null || _searchInputRef_current === void 0 ? void 0 : _searchInputRef_current.focus();\n });\n } else {\n setInternalFilter(\"\");\n }\n }, [\n open\n ]);\n (0, import_react.useEffect)(function() {\n if (open) setActiveIndex(0);\n }, [\n filter\n ]);\n var totalItems = navigableOptions.length + (showCreateOption ? 1 : 0);\n var createOptionIndex = showCreateOption ? navigableOptions.length : -1;\n var listboxId = comboboxListboxId(id);\n var activeDescendant = open && activeIndex != null && activeIndex >= 0 ? comboboxOptionId(id, activeIndex) : void 0;\n var handleSelect = (0, import_react.useCallback)(function(option) {\n if (multiple) {\n var current = Array.isArray(value) ? value : value ? [\n value\n ] : [];\n var next = current.includes(option.value) ? current.filter(function(v) {\n return v !== option.value;\n }) : [\n ...current,\n option.value\n ];\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);\n } else {\n onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(option.value);\n setOpen(false);\n }\n }, [\n onValueChange,\n multiple,\n value\n ]);\n var handleSearchKeyDown = (0, import_react.useCallback)(function(e) {\n var isDown = e.key === \"ArrowDown\";\n var isUp = e.key === \"ArrowUp\";\n if (isDown) {\n var _listRef_current;\n e.preventDefault();\n setKeyboardNav(true);\n (_listRef_current = listRef.current) === null || _listRef_current === void 0 ? void 0 : _listRef_current.focus();\n setActiveIndex(function(prev) {\n var next = prev == null ? 0 : prev + 1;\n return next >= totalItems ? 0 : next;\n });\n } else if (isUp) {\n var _listRef_current1;\n e.preventDefault();\n setKeyboardNav(true);\n (_listRef_current1 = listRef.current) === null || _listRef_current1 === void 0 ? void 0 : _listRef_current1.focus();\n setActiveIndex(function(prev) {\n var next = prev == null ? totalItems - 1 : prev - 1;\n return next < 0 ? totalItems - 1 : next;\n });\n } else if (e.key === \"Home\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(0);\n } else if (e.key === \"End\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(Math.max(0, totalItems - 1));\n }\n }, [\n totalItems,\n setKeyboardNav\n ]);\n var handleListKeyDown = (0, import_react.useCallback)(function(e) {\n if (totalItems === 0) return;\n var isDown = e.key === \"ArrowDown\" || e.key === \"j\";\n var isUp = e.key === \"ArrowUp\" || e.key === \"k\";\n if (isDown) {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(function(prev) {\n var next = prev == null ? 0 : prev + 1;\n return next >= totalItems ? 0 : next;\n });\n } else if (isUp) {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(function(prev) {\n var next = prev == null ? totalItems - 1 : prev - 1;\n return next < 0 ? totalItems - 1 : next;\n });\n } else if (e.key === \"Home\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(0);\n } else if (e.key === \"End\") {\n e.preventDefault();\n setKeyboardNav(true);\n setActiveIndex(Math.max(0, totalItems - 1));\n } else if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (activeIndex === createOptionIndex && showCreateOption) {\n handleCreate();\n } else if (activeIndex != null && activeIndex >= 0 && navigableOptions[activeIndex]) {\n handleSelect(navigableOptions[activeIndex]);\n if (e.key === \"Enter\" || !multiple) setOpen(false);\n }\n }\n }, [\n totalItems,\n createOptionIndex,\n showCreateOption,\n activeIndex,\n navigableOptions,\n handleCreate,\n handleSelect,\n multiple,\n setKeyboardNav\n ]);\n (0, import_react.useEffect)(function() {\n if (!open || typeof document === \"undefined\") return;\n var onKeyDown = function onKeyDown2(e) {\n if (e.key === \"Escape\") {\n e.preventDefault();\n setOpen(false);\n } else if (e.key === \"Enter\" || e.key === \" \") {\n var target = e.target;\n if (e.key === \" \" && (target === null || target === void 0 ? void 0 : target.tagName) === \"INPUT\" && target.type !== \"checkbox\") return;\n e.preventDefault();\n e.stopPropagation();\n if (activeIndex === createOptionIndex && showCreateOption) {\n handleCreate();\n } else if (activeIndex != null && activeIndex >= 0 && navigableOptions[activeIndex]) {\n handleSelect(navigableOptions[activeIndex]);\n if (e.key === \"Enter\" || !multiple) setOpen(false);\n } else {\n setOpen(false);\n }\n }\n };\n document.addEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n return function() {\n return document.removeEventListener(\"keydown\", onKeyDown, {\n capture: true\n });\n };\n }, [\n open,\n activeIndex,\n createOptionIndex,\n showCreateOption,\n navigableOptions,\n handleCreate,\n handleSelect,\n multiple\n ]);\n var handleOpenChange = (0, import_react.useCallback)(function(val) {\n setOpen(val);\n if (!val) onBlur === null || onBlur === void 0 ? void 0 : onBlur();\n }, [\n onBlur\n ]);\n var searchHeader = hideSearch ? void 0 : comboboxSearchHeader(knobProps, filter, setInternalFilter, searchPlaceholder, textColor, mutedColor, loading !== null && loading !== void 0 ? loading : false, handleSearchKeyDown, searchInputRef, t(\"Clear search\"));\n var listContent = (\n // tabIndex/onKeyDown are web-only: on iOS tabIndex makes the container an\n // accessibility element, which merges every option into one unactionable\n // VoiceOver blob.\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n ref: listRef,\n ...import_tamagui.isWeb ? (\n // role=\"listbox\" is a valid ARIA role but outside RN's `Role` union;\n // this web-only bag forwards it to the DOM node (house Record cast).\n {\n tabIndex: 0,\n onKeyDown: handleListKeyDown,\n role: \"listbox\",\n id: listboxId\n }\n ) : void 0,\n outlineWidth: 0,\n children: [\n // Native sheet: flex={1} inside FloatingPanel ScrollView collapses rows.\n searchError ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.error,\n fontSize: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: searchError\n })\n }) : navigableOptions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n navigableOptions.map(function(option, i) {\n var selected = isSelectedFn(option.value);\n var active = i === activeIndex;\n var prevGroup = i > 0 ? navigableOptions[i - 1].group : void 0;\n var showGroupHeader = option.group && option.group !== prevGroup;\n var optionRow = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n id: comboboxOptionId(id, i),\n role: \"option\",\n \"aria-selected\": selected,\n \"data-combobox-index\": i,\n \"data-active\": active,\n ...listItemRingProps(active && listKeyboardRing),\n ...option.description ? {\n minHeight: knobProps.control.height,\n paddingVertical: \"$2\"\n } : {\n height: knobProps.control.height\n },\n onPress: import_tamagui.isWeb ? function() {\n return handleSelect(option);\n } : void 0,\n onMouseEnter: function onMouseEnter() {\n setKeyboardNav(false);\n setActiveIndex(i);\n },\n ...!import_tamagui.isWeb ? {\n pointerEvents: \"none\"\n } : {},\n hoverStyle: activeIndex != null ? {\n backgroundColor: active ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: active ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n ...selected ? (0, import_theme2.menuRowChecked)(knobProps.scheme) : void 0,\n children: [\n option.description ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n flex: 1,\n minWidth: 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n children: option.label\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontSize: \"$2\",\n color: import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n children: option.description\n })\n ]\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: option.label\n }),\n selected && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_CheckGlyph.CheckGlyph, {})\n ]\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n children: [\n showGroupHeader && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(GroupHeader, {\n color: textColor,\n \"data-combobox-group-header\": \"\",\n children: option.group\n }),\n import_tamagui.isWeb ? optionRow : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.Pressable, {\n onPress: function onPress() {\n return handleSelect(option);\n },\n accessibilityRole: \"button\",\n accessibilityLabel: option.label,\n accessibilityState: {\n selected\n },\n children: optionRow\n })\n ]\n }, option.value);\n }),\n showCreateOption && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n height: knobProps.control.height,\n role: \"option\",\n id: comboboxOptionId(id, createOptionIndex),\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n onPress: handleCreate,\n onMouseEnter: function onMouseEnter() {\n setKeyboardNav(false);\n setActiveIndex(createOptionIndex);\n },\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: textColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n })\n ]\n }) : showCreateOption ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n gap: \"$2\",\n paddingHorizontal: \"$3\",\n height: knobProps.control.height,\n role: \"option\",\n id: comboboxOptionId(id, createOptionIndex),\n \"data-combobox-index\": createOptionIndex,\n \"data-active\": createOptionIndex === activeIndex,\n ...listItemRingProps(createOptionIndex === activeIndex && listKeyboardRing),\n onPress: handleCreate,\n onMouseEnter: function onMouseEnter() {\n setKeyboardNav(false);\n setActiveIndex(createOptionIndex);\n },\n hoverStyle: activeIndex != null ? {\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\"\n } : {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n backgroundColor: createOptionIndex === activeIndex ? import_colorRamps.formInputColors.background.focus : \"transparent\",\n pressStyle: {\n backgroundColor: import_colorRamps.formInputColors.background.focus\n },\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.PlusIcon, {\n size: 14,\n color: textColor\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: textColor,\n numberOfLines: 1,\n flex: 1,\n children: createLabel.replace(\"{value}\", filter.trim())\n })\n ]\n }) : loading ? (\n // Async search in flight with nothing loaded yet: a bounded loading\n // row — never a premature \"no results\".\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n ) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n fontSize: knobProps.sizeToken,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: emptyMessage\n })\n }),\n hasMore && loading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n padding: \"$2\",\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Spinner.Spinner, {\n size: \"small\"\n })\n })\n ]\n })\n );\n var triggerProps = {\n id,\n ...import_tamagui.isWeb ? {\n role: \"combobox\",\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": open,\n \"aria-controls\": listboxId,\n \"aria-activedescendant\": hideSearch ? activeDescendant : void 0,\n \"aria-autocomplete\": hideSearch ? \"list\" : void 0,\n \"aria-label\": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : !hasLabel ? placeholder : void 0,\n \"aria-describedby\": describedBy,\n tabIndex: disabled ? -1 : 0\n } : {\n importantForAccessibility: \"no\"\n },\n onPress: import_tamagui.isWeb && !disabled ? function() {\n return handleOpenChange(true);\n } : void 0,\n onKeyDown: function onKeyDown(event) {\n if (disabled) return;\n if ([\n \"Enter\",\n \" \",\n \"ArrowDown\",\n \"ArrowUp\",\n \"j\",\n \"k\"\n ].includes(event.key) || event.code === \"Space\") {\n event.preventDefault();\n setKeyboardNav(true);\n if (!open) handleOpenChange(true);\n }\n }\n };\n var triggerContent = triggerRender ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n \"data-testid\": \"combobox-trigger\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\",\n alignSelf: \"stretch\",\n flexShrink: 0,\n outlineWidth: 0,\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n style: {\n display: \"flex\",\n alignItems: \"stretch\",\n width: triggerSizing === \"content\" ? \"auto\" : \"100%\"\n },\n ...triggerProps,\n children: triggerRender(multiple ? selectedOptions : selectedOption, open)\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n \"data-testid\": \"combobox-trigger\",\n // LC-40: Box washes its own chrome when disabled — no opacity dim here\n // (it stacked with the wash and pushed the value text below AA).\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n disabled,\n size: knobProps.sizeToken,\n // One surface owner: a single-value FloatingPanel COVERS this trigger\n // (panel top = trigger top), so the trigger's outer focus ring must not\n // paint — it would ghost around the panel's corners. A multi-select\n // panel attaches below instead (MPO-38), so it keeps its ring.\n suppressFocusRing: open && !multiple,\n ...(0, import_pickerTriggerContract.pickerTriggerContract)(knobProps.control.height),\n ...inTableCell ? (\n // Chromeless in cells.\n {}\n ) : {\n borderWidth: knobProps.borderRadius.borderWidth\n },\n ...triggerProps,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flex: 1,\n paddingHorizontal: \"$3\",\n paddingVertical: \"$2\",\n justifyContent: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n alignItems: multiple && selectedValues.length > 0 ? \"center\" : \"flex-start\",\n children: multiple && selectedValues.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n flexWrap: \"nowrap\",\n gap: \"$1.5\",\n alignItems: \"center\",\n maxHeight: (0, import_utils.getFieldHeight)(knobProps.sizeToken, 1, hydrationTouch) * 0.75,\n overflow: \"hidden\",\n overflowX: \"auto\",\n children: selectedValues.map(function(v) {\n var _knobProps_sizeToken;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Chip.Chip, {\n size: (_knobProps_sizeToken = {\n $3: \"$2\",\n $4: \"$3\",\n $5: \"$4\"\n }[knobProps.sizeToken]) !== null && _knobProps_sizeToken !== void 0 ? _knobProps_sizeToken : \"$3\",\n color: \"gray\",\n onDismiss: dismissible && !disabled ? function() {\n return handleDismiss(v);\n } : void 0,\n children: getLabel(v)\n }, v);\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.controlType,\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n color: selectedOption || !multiple && value && valueLabel ? textColor : import_colorRamps.formCommonColors.muted,\n numberOfLines: 1,\n children: (_ref1 = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref1 !== void 0 ? _ref1 : !multiple && value && valueLabel ? valueLabel : placeholder\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n paddingInlineEnd: \"$2\",\n alignSelf: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.CaretDownIcon, {\n size: 16,\n color: glyphColor\n })\n })\n ]\n });\n var triggerValueText = multiple ? selectedValues.length > 0 ? selectedValues.map(getLabel).join(\", \") : placeholder : (_ref2 = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _ref2 !== void 0 ? _ref2 : placeholder;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FloatingPanel.FloatingPanel, {\n open,\n onOpenChange: handleOpenChange,\n // Native leaves the form to the window's size class (FZ-8116): a sheet\n // when compact, a panel over the field at regular width.\n sheet: import_tamagui.isWeb,\n // Search-driven comboboxes open the sheet tall: results stream in as\n // the user types, so a content-fit sheet would open as a sliver.\n sheetFill: Boolean(onSearch),\n trigger: triggerContent,\n triggerSizing,\n triggerEnd: clearable && !multiple && !disabled && typeof value === \"string\" && value !== \"\" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n size: knobProps.sizeToken,\n height: knobProps.control.height,\n label: t(\"Clear\"),\n onPress: function onPress() {\n return onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(\"\");\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react2.XIcon, {})\n }) : void 0,\n triggerA11y: {\n label: ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : fieldA11y === null || fieldA11y === void 0 ? void 0 : fieldA11y.label,\n value: triggerValueText,\n hint: fieldA11y === null || fieldA11y === void 0 ? void 0 : fieldA11y.description\n },\n header: searchHeader,\n scrollable: hasScrollableContent,\n disabled,\n contentPadding: \"none\",\n scrollViewProps: {\n onScroll: function onScroll(e) {\n if (!onLoadMore || !hasMore || loading) return;\n var { layoutMeasurement, contentOffset, contentSize } = e.nativeEvent;\n if (contentSize.height - contentOffset.y - layoutMeasurement.height < 100) {\n onLoadMore();\n }\n },\n scrollEventThrottle: 100\n },\n children: listContent\n });\n}\nfunction Combobox(param) {\n var { options, value: valueProp, defaultValue, onChange, placeholder: placeholderProp, searchPlaceholder: searchPlaceholderProp, emptyMessage: emptyMessageProp, onSearch, loading, searchError, valueLabel, clearable, onLoadMore, hasMore, trigger, triggerSizing, name, form: formProp, validators, label, labelProps, helperText, error, required, disabled, readOnly, size: sizeProp, id: idProp, onBlur, popoverWidth, tabIndex: tabIndexProp, multiple, selectedOrder, dismissible, skeleton, creatable, onCreate, createLabel, hideSearch, searchValue, open, onOpenChange, \"aria-label\": ariaLabel, ...rest } = param;\n var { t } = (0, import_i18n.useTranslation)();\n var placeholder = placeholderProp !== null && placeholderProp !== void 0 ? placeholderProp : t(\"Select...\");\n var hasLabel = Boolean(label);\n var searchPlaceholder = searchPlaceholderProp !== null && searchPlaceholderProp !== void 0 ? searchPlaceholderProp : t(\"Search...\");\n var emptyMessage = emptyMessageProp !== null && emptyMessageProp !== void 0 ? emptyMessageProp : t(\"No results found.\");\n var { resolvedForm, knobProps, id } = (0, import_utils.useFormField)({\n form: formProp,\n id: idProp\n });\n var resolvedValidators = (0, import_utils.useResolvedValidators)(required, validators, label, name);\n var [uncontrolledValue, setUncontrolledValue] = (0, import_react.useState)(defaultValue);\n var isControlled = valueProp !== void 0;\n var [createdOptions, setCreatedOptions] = (0, import_react.useState)([]);\n var knownOptions = (0, import_react.useMemo)(function() {\n var unlisted = createdOptions.filter(function(c) {\n return !options.some(function(o) {\n return o.value === c.value;\n });\n });\n return unlisted.length ? [\n ...options,\n ...unlisted\n ] : options;\n }, [\n options,\n createdOptions\n ]);\n var handleCreateOption = (0, import_react.useMemo)(function() {\n return onCreate && function(typed) {\n var created = onCreate(typed);\n if (created) {\n setCreatedOptions(function(prev) {\n return prev.some(function(o) {\n return o.value === created.value;\n }) ? prev : [\n ...prev,\n created\n ];\n });\n }\n return created;\n };\n }, [\n onCreate\n ]);\n var viewportGtSm = (0, import_FloatingPanel.useViewportGtSm)();\n var effectiveGtSm = typeof window !== \"undefined\" ? viewportGtSm : false;\n var shouldUseSheet = !import_tamagui.isWeb || !effectiveGtSm;\n var textColor = knobProps.textAccentColor;\n if (skeleton) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input, {\n size: sizeProp || knobProps.sizeToken,\n children: [\n label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"text\",\n width: \"30%\",\n height: 14\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n height: knobProps.sizeToken\n })\n ]\n });\n }\n var renderReadOnly = function renderReadOnly2(selectValue) {\n var _ref;\n if (multiple && Array.isArray(selectValue)) {\n var labels = selectValue.map(function(v) {\n var _ref2;\n var _knownOptions_find;\n return (_ref2 = (_knownOptions_find = knownOptions.find(function(o) {\n return o.value === v;\n })) === null || _knownOptions_find === void 0 ? void 0 : _knownOptions_find.label) !== null && _ref2 !== void 0 ? _ref2 : v;\n }).join(\", \");\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontSize: knobProps.sizeToken,\n color: textColor,\n paddingVertical: \"$2\",\n paddingHorizontal: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: labels || \"-\"\n });\n }\n var sv = typeof selectValue === \"string\" ? selectValue : void 0;\n var selected = knownOptions.find(function(option) {\n return option.value === sv;\n });\n var displayText = (_ref = selected === null || selected === void 0 ? void 0 : selected.label) !== null && _ref !== void 0 ? _ref : sv ? valueLabel !== null && valueLabel !== void 0 ? valueLabel : sv : \"-\";\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n fontSize: knobProps.sizeToken,\n color: textColor,\n paddingVertical: \"$2\",\n paddingHorizontal: \"$3\",\n fontFamily: knobProps.body.fontFamily,\n fontWeight: knobProps.body.fontWeight,\n children: displayText\n });\n };\n var renderComboboxContent = function renderComboboxContent2(selectValue, handleValueChange, handleBlur) {\n var _createdOptions_find;\n if (readOnly) return renderReadOnly(selectValue);\n var ComboboxCore = shouldUseSheet ? NativeComboboxCore : FloatingComboboxCore;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ComboboxCore, {\n options: onSearch ? options : knownOptions,\n value: selectValue,\n onValueChange: function onValueChange(value) {\n if (disabled) return;\n handleValueChange === null || handleValueChange === void 0 ? void 0 : handleValueChange(value);\n onChange === null || onChange === void 0 ? void 0 : onChange(value);\n },\n onBlur: handleBlur,\n placeholder,\n searchPlaceholder,\n emptyMessage,\n onSearch,\n loading,\n searchError,\n valueLabel: valueLabel !== null && valueLabel !== void 0 ? valueLabel : (_createdOptions_find = createdOptions.find(function(o) {\n return o.value === selectValue;\n })) === null || _createdOptions_find === void 0 ? void 0 : _createdOptions_find.label,\n clearable,\n onLoadMore,\n hasMore,\n disabled,\n id,\n \"aria-label\": ariaLabel,\n hasLabel,\n tabIndexOverride: tabIndexProp,\n popoverWidth,\n trigger,\n triggerSizing,\n knobProps,\n multiple,\n selectedOrder,\n dismissible,\n creatable,\n onCreate: handleCreateOption,\n createLabel,\n hideSearch,\n searchValue,\n open,\n onOpenChange\n });\n };\n if (trigger) {\n return renderComboboxContent(valueProp !== null && valueProp !== void 0 ? valueProp : uncontrolledValue, isControlled ? void 0 : setUncontrolledValue, onBlur);\n }\n if (!resolvedForm || !name) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error,\n helperText,\n required,\n size: sizeProp,\n knobProps,\n // LC-40: FieldLayout owns the dimWhole assembly dim (keepLabel pins\n // the sibling label/helper readable) — it needs the disabled state.\n disabled,\n ...rest,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input, {\n size: sizeProp || knobProps.sizeToken,\n children: renderComboboxContent(valueProp !== null && valueProp !== void 0 ? valueProp : uncontrolledValue, isControlled ? void 0 : setUncontrolledValue, onBlur)\n })\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.Field, {\n form: resolvedForm,\n name,\n defaultValue,\n validators: resolvedValidators,\n children: function children(field) {\n var resolvedError = (0, import_utils.getFieldError)(field, error);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_fieldLayout.FieldLayout, {\n id,\n label,\n labelProps,\n error: resolvedError,\n helperText,\n required,\n size: sizeProp,\n knobProps,\n // LC-40: see standalone branch — FieldLayout carries dimWhole.\n disabled,\n ...rest,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input, {\n size: sizeProp || knobProps.sizeToken,\n children: renderComboboxContent(field.state.value, function(value) {\n return field.handleChange(value);\n }, (0, import_utils.mergeFieldHandler)(field, \"handleBlur\", onBlur))\n })\n });\n }\n });\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}