@multiplatform.one/forms 7.36.0 → 7.37.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 (420) hide show
  1. package/dist/cjs/AdaptivePopup/index.native.js +1 -1
  2. package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
  3. package/dist/cjs/Button/index.native.js +1 -1
  4. package/dist/cjs/Button/index.native.js.map +1 -1
  5. package/dist/cjs/Chip/index.native.js.map +1 -1
  6. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js +1 -1
  7. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  8. package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
  9. package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
  10. package/dist/cjs/ContextualSaveBar/index.native.js +3 -3
  11. package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -1
  12. package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
  13. package/dist/cjs/ControlGroup/index.native.js +1 -1
  14. package/dist/cjs/ControlGroup/index.native.js.map +1 -1
  15. package/dist/cjs/DescriptionList/index.native.js +2 -2
  16. package/dist/cjs/DescriptionList/index.native.js.map +1 -1
  17. package/dist/cjs/ErrorSummary.native.js.map +1 -1
  18. package/dist/cjs/FieldDisplay/editMode.native.js.map +1 -1
  19. package/dist/cjs/FieldDisplay/formatters.native.js.map +1 -1
  20. package/dist/cjs/FieldDisplay/index.native.js +1 -1
  21. package/dist/cjs/FieldDisplay/index.native.js.map +1 -1
  22. package/dist/cjs/FieldGroup.native.js.map +1 -1
  23. package/dist/cjs/FloatingPanel/nestedAction.native.js.map +1 -1
  24. package/dist/cjs/FloatingPanel/pointAnchor.native.js.map +1 -1
  25. package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  26. package/dist/cjs/Form/index.native.js +1 -1
  27. package/dist/cjs/Form/index.native.js.map +1 -1
  28. package/dist/cjs/Form/submissionController.native.js.map +1 -1
  29. package/dist/cjs/Form/validateOn.native.js.map +1 -1
  30. package/dist/cjs/FormGrid.native.js.map +1 -1
  31. package/dist/cjs/FormSection.native.js.map +1 -1
  32. package/dist/cjs/InputParts/index.native.js.map +1 -1
  33. package/dist/cjs/Label/index.native.js.map +1 -1
  34. package/dist/cjs/MediaPicker/base64.native.js.map +1 -1
  35. package/dist/cjs/MediaPicker/payload.native.js.map +1 -1
  36. package/dist/cjs/MediaPicker/types.native.js.map +1 -1
  37. package/dist/cjs/MediaPicker/useMediaPicker.native.js.map +1 -1
  38. package/dist/cjs/Skeleton/index.native.js.map +1 -1
  39. package/dist/cjs/Spinner/SpinnerGlyph.native.js.map +1 -1
  40. package/dist/cjs/Spinner/spinnerSize.native.js.map +1 -1
  41. package/dist/cjs/Table/index.native.js.map +1 -1
  42. package/dist/cjs/Wheel/{WheelEdgeFade.cjs → NativeWheel.cjs} +5 -5
  43. package/dist/cjs/Wheel/NativeWheel.native.js +408 -0
  44. package/dist/cjs/Wheel/NativeWheel.native.js.map +1 -0
  45. package/dist/cjs/Wheel/haptic.cjs +3 -4
  46. package/dist/cjs/Wheel/haptic.native.js +4 -5
  47. package/dist/cjs/Wheel/haptic.native.js.map +1 -1
  48. package/dist/cjs/Wheel/index.cjs +62 -218
  49. package/dist/cjs/Wheel/index.native.js +54 -228
  50. package/dist/cjs/Wheel/index.native.js.map +1 -1
  51. package/dist/cjs/Wheel/wheelShared.cjs +156 -0
  52. package/dist/cjs/Wheel/wheelShared.native.js +169 -0
  53. package/dist/cjs/Wheel/wheelShared.native.js.map +1 -0
  54. package/dist/cjs/actionLabel.native.js.map +1 -1
  55. package/dist/cjs/fieldDefaults.native.js.map +1 -1
  56. package/dist/cjs/fieldLayout.native.js +1 -1
  57. package/dist/cjs/fieldLayout.native.js.map +1 -1
  58. package/dist/cjs/fields/Barcode/BarcodePreview.native.js.map +1 -1
  59. package/dist/cjs/fields/Barcode/BarcodeScanner.native.js +1 -1
  60. package/dist/cjs/fields/Barcode/code128.native.js.map +1 -1
  61. package/dist/cjs/fields/Barcode/index.native.js +2 -2
  62. package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
  63. package/dist/cjs/fields/Barcode/qr.native.js.map +1 -1
  64. package/dist/cjs/fields/Barcode/scannerTypes.native.js.map +1 -1
  65. package/dist/cjs/fields/Checkbox/Checkbox.native.js +1 -1
  66. package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
  67. package/dist/cjs/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  68. package/dist/cjs/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  69. package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  70. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +1 -1
  71. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  72. package/dist/cjs/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
  73. package/dist/cjs/fields/Checkbox/index.native.js.map +1 -1
  74. package/dist/cjs/fields/ColorPicker/index.native.js +3 -3
  75. package/dist/cjs/fields/ColorPicker/index.native.js.map +1 -1
  76. package/dist/cjs/fields/ColorPicker/parts.native.js +2 -2
  77. package/dist/cjs/fields/ColorPicker/parts.native.js.map +1 -1
  78. package/dist/cjs/fields/Combobox/authorOptions.native.js.map +1 -1
  79. package/dist/cjs/fields/Combobox/index.native.js +6 -6
  80. package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
  81. package/dist/cjs/fields/DatePicker/Calendar.native.js.map +1 -1
  82. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +2 -2
  83. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  84. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +3 -3
  85. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  86. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +2 -2
  87. package/dist/cjs/fields/DatePicker/MonthPicker.native.js +2 -2
  88. package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
  89. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +2 -2
  90. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  91. package/dist/cjs/fields/DatePicker/catalog.native.js +2 -2
  92. package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
  93. package/dist/cjs/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  94. package/dist/cjs/fields/DatePicker/index.native.js +2 -2
  95. package/dist/cjs/fields/DatePicker/parts.native.js +2 -2
  96. package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
  97. package/dist/cjs/fields/DatePicker/utils.native.js.map +1 -1
  98. package/dist/cjs/fields/Duration/durationMath.native.js.map +1 -1
  99. package/dist/cjs/fields/Duration/index.native.js +3 -3
  100. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  101. package/dist/cjs/fields/FileUpload/filePickerTypes.native.js.map +1 -1
  102. package/dist/cjs/fields/FileUpload/index.native.js +2 -2
  103. package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
  104. package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
  105. package/dist/cjs/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  106. package/dist/cjs/fields/Geolocation/geoValue.native.js.map +1 -1
  107. package/dist/cjs/fields/Geolocation/geocoder.native.js.map +1 -1
  108. package/dist/cjs/fields/Geolocation/geocoderContext.native.js.map +1 -1
  109. package/dist/cjs/fields/Geolocation/index.native.js +5 -5
  110. package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
  111. package/dist/cjs/fields/Geolocation/mapMath.native.js.map +1 -1
  112. package/dist/cjs/fields/Geolocation/mapTypes.native.js.map +1 -1
  113. package/dist/cjs/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
  114. package/dist/cjs/fields/Geolocation/photonGeocoder.native.js.map +1 -1
  115. package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -1
  116. package/dist/cjs/fields/Icon/index.native.js +3 -3
  117. package/dist/cjs/fields/Icon/index.native.js.map +1 -1
  118. package/dist/cjs/fields/ImageField/index.native.js +2 -2
  119. package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
  120. package/dist/cjs/fields/Input/index.native.js +2 -2
  121. package/dist/cjs/fields/Input/index.native.js.map +1 -1
  122. package/dist/cjs/fields/MentionInput/index.native.js +3 -3
  123. package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
  124. package/dist/cjs/fields/OTPInput/index.native.js +3 -3
  125. package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
  126. package/dist/cjs/fields/OTPInput/otpCellCss.native.js.map +1 -1
  127. package/dist/cjs/fields/PhoneInput/dialCodes.native.js.map +1 -1
  128. package/dist/cjs/fields/PhoneInput/index.native.js +3 -3
  129. package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
  130. package/dist/cjs/fields/PhoneInput/phone.native.js.map +1 -1
  131. package/dist/cjs/fields/PhoneInput/regionNames.native.js.map +1 -1
  132. package/dist/cjs/fields/Progress/index.native.js +1 -1
  133. package/dist/cjs/fields/Progress/index.native.js.map +1 -1
  134. package/dist/cjs/fields/RadioGroup/index.native.js +1 -1
  135. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  136. package/dist/cjs/fields/Rating/index.native.js +1 -1
  137. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  138. package/dist/cjs/fields/Rating/ratingMath.native.js.map +1 -1
  139. package/dist/cjs/fields/Rating/types.native.js.map +1 -1
  140. package/dist/cjs/fields/SearchInput/index.native.js +2 -2
  141. package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
  142. package/dist/cjs/fields/Select/index.native.js +4 -4
  143. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  144. package/dist/cjs/fields/Signature/index.native.js +2 -2
  145. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  146. package/dist/cjs/fields/Slider/index.native.js +1 -1
  147. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  148. package/dist/cjs/fields/Slider/jumpMotion.native.js.map +1 -1
  149. package/dist/cjs/fields/Stepper/index.native.js +2 -2
  150. package/dist/cjs/fields/Stepper/index.native.js.map +1 -1
  151. package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
  152. package/dist/cjs/fields/Switch/footprint.native.js.map +1 -1
  153. package/dist/cjs/fields/Switch/index.native.js +2 -2
  154. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  155. package/dist/cjs/fields/TextArea/index.native.js +2 -2
  156. package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
  157. package/dist/cjs/fields/TimePicker/catalog.native.js +3 -3
  158. package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -1
  159. package/dist/cjs/fields/TimePicker/index.native.js +2 -2
  160. package/dist/cjs/fields/TimePicker/parts.native.js +1 -1
  161. package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
  162. package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  163. package/dist/cjs/fields/TimeRangeScrubber/index.native.js +2 -2
  164. package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -1
  165. package/dist/cjs/fields/ToggleGroup/index.native.js +1 -1
  166. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  167. package/dist/cjs/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  168. package/dist/cjs/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
  169. package/dist/cjs/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
  170. package/dist/cjs/fields/nativeSelect.native.js.map +1 -1
  171. package/dist/cjs/fields/selectedOrder.native.js.map +1 -1
  172. package/dist/cjs/formSpacing.native.js.map +1 -1
  173. package/dist/cjs/hooks/useFocusManagement.native.js.map +1 -1
  174. package/dist/cjs/index.native.js +43 -43
  175. package/dist/cjs/index.native.js.map +1 -1
  176. package/dist/cjs/requiredMarking.native.js.map +1 -1
  177. package/dist/cjs/shared/TimeColumn.cjs +0 -9
  178. package/dist/cjs/shared/TimeColumn.native.js +1 -10
  179. package/dist/cjs/shared/TimeColumn.native.js.map +1 -1
  180. package/dist/cjs/shared/capabilityPreflight.native.js.map +1 -1
  181. package/dist/cjs/shared/colorRamps.native.js.map +1 -1
  182. package/dist/cjs/shared/devWarn.native.js.map +1 -1
  183. package/dist/cjs/shared/floatingList.native.js +1 -1
  184. package/dist/cjs/shared/floatingList.native.js.map +1 -1
  185. package/dist/cjs/shared/focusManagement.native.js.map +1 -1
  186. package/dist/cjs/shared/groupContext.native.js.map +1 -1
  187. package/dist/cjs/shared/i18n.native.js.map +1 -1
  188. package/dist/cjs/shared/instantMotion.native.js.map +1 -1
  189. package/dist/cjs/shared/nativeA11y.native.js.map +1 -1
  190. package/dist/cjs/shared/panelPortal.native.js.map +1 -1
  191. package/dist/cjs/shared/pickerTriggerContract.native.js.map +1 -1
  192. package/dist/cjs/shared/pressSlopProps.native.js.map +1 -1
  193. package/dist/cjs/shared/t.native.js.map +1 -1
  194. package/dist/cjs/shared/tableCellContext.native.js.map +1 -1
  195. package/dist/cjs/shared/useDragScroll.native.js.map +1 -1
  196. package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -1
  197. package/dist/cjs/shared/useSheetEscapeDismiss.native.js.map +1 -1
  198. package/dist/cjs/shared/useWheelIncrement.native.js.map +1 -1
  199. package/dist/cjs/shared/utils.native.js +1 -1
  200. package/dist/cjs/shared/utils.native.js.map +1 -1
  201. package/dist/cjs/shared/zIndex.native.js.map +1 -1
  202. package/dist/cjs/themedPrimitives.native.js.map +1 -1
  203. package/dist/cjs/types.native.js.map +1 -1
  204. package/dist/cjs/utils/LinkCell.native.js.map +1 -1
  205. package/dist/esm/AdaptivePopup/index.native.js.map +1 -1
  206. package/dist/esm/Button/index.native.js.map +1 -1
  207. package/dist/esm/Chip/index.native.js.map +1 -1
  208. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  209. package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
  210. package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
  211. package/dist/esm/ContextualSaveBar/index.native.js.map +1 -1
  212. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
  213. package/dist/esm/ControlGroup/index.native.js.map +1 -1
  214. package/dist/esm/DescriptionList/index.native.js.map +1 -1
  215. package/dist/esm/ErrorSummary.native.js.map +1 -1
  216. package/dist/esm/FieldDisplay/editMode.native.js.map +1 -1
  217. package/dist/esm/FieldDisplay/formatters.native.js.map +1 -1
  218. package/dist/esm/FieldDisplay/index.native.js.map +1 -1
  219. package/dist/esm/FieldGroup.native.js.map +1 -1
  220. package/dist/esm/FloatingPanel/nestedAction.native.js.map +1 -1
  221. package/dist/esm/FloatingPanel/pointAnchor.native.js.map +1 -1
  222. package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  223. package/dist/esm/Form/index.native.js.map +1 -1
  224. package/dist/esm/Form/submissionController.native.js.map +1 -1
  225. package/dist/esm/Form/validateOn.native.js.map +1 -1
  226. package/dist/esm/FormGrid.native.js.map +1 -1
  227. package/dist/esm/FormSection.native.js.map +1 -1
  228. package/dist/esm/InputParts/index.native.js.map +1 -1
  229. package/dist/esm/Label/index.native.js.map +1 -1
  230. package/dist/esm/MediaPicker/base64.native.js.map +1 -1
  231. package/dist/esm/MediaPicker/payload.native.js.map +1 -1
  232. package/dist/esm/MediaPicker/types.native.js.map +1 -1
  233. package/dist/esm/MediaPicker/useMediaPicker.native.js.map +1 -1
  234. package/dist/esm/Skeleton/index.native.js.map +1 -1
  235. package/dist/esm/Spinner/SpinnerGlyph.native.js.map +1 -1
  236. package/dist/esm/Spinner/spinnerSize.native.js.map +1 -1
  237. package/dist/esm/Table/index.native.js.map +1 -1
  238. package/dist/esm/Wheel/NativeWheel.mjs +5 -0
  239. package/dist/esm/Wheel/NativeWheel.mjs.map +1 -0
  240. package/dist/esm/Wheel/NativeWheel.native.js +380 -0
  241. package/dist/esm/Wheel/NativeWheel.native.js.map +1 -0
  242. package/dist/esm/Wheel/haptic.mjs +3 -4
  243. package/dist/esm/Wheel/haptic.mjs.map +1 -1
  244. package/dist/esm/Wheel/haptic.native.js +4 -5
  245. package/dist/esm/Wheel/haptic.native.js.map +1 -1
  246. package/dist/esm/Wheel/index.mjs +49 -205
  247. package/dist/esm/Wheel/index.mjs.map +1 -1
  248. package/dist/esm/Wheel/index.native.js +41 -215
  249. package/dist/esm/Wheel/index.native.js.map +1 -1
  250. package/dist/esm/Wheel/wheelShared.mjs +119 -0
  251. package/dist/esm/Wheel/wheelShared.mjs.map +1 -0
  252. package/dist/esm/Wheel/wheelShared.native.js +129 -0
  253. package/dist/esm/Wheel/wheelShared.native.js.map +1 -0
  254. package/dist/esm/actionLabel.native.js.map +1 -1
  255. package/dist/esm/fieldDefaults.native.js.map +1 -1
  256. package/dist/esm/fieldLayout.native.js.map +1 -1
  257. package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
  258. package/dist/esm/fields/Barcode/code128.native.js.map +1 -1
  259. package/dist/esm/fields/Barcode/index.native.js.map +1 -1
  260. package/dist/esm/fields/Barcode/qr.native.js.map +1 -1
  261. package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
  262. package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
  263. package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  264. package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  265. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  266. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  267. package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
  268. package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
  269. package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
  270. package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
  271. package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
  272. package/dist/esm/fields/Combobox/index.native.js.map +1 -1
  273. package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
  274. package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  275. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  276. package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
  277. package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  278. package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -1
  279. package/dist/esm/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  280. package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
  281. package/dist/esm/fields/DatePicker/utils.native.js.map +1 -1
  282. package/dist/esm/fields/Duration/durationMath.native.js.map +1 -1
  283. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  284. package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -1
  285. package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
  286. package/dist/esm/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
  287. package/dist/esm/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  288. package/dist/esm/fields/Geolocation/geoValue.native.js.map +1 -1
  289. package/dist/esm/fields/Geolocation/geocoder.native.js.map +1 -1
  290. package/dist/esm/fields/Geolocation/geocoderContext.native.js.map +1 -1
  291. package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
  292. package/dist/esm/fields/Geolocation/mapMath.native.js.map +1 -1
  293. package/dist/esm/fields/Geolocation/mapTypes.native.js.map +1 -1
  294. package/dist/esm/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
  295. package/dist/esm/fields/Geolocation/photonGeocoder.native.js.map +1 -1
  296. package/dist/esm/fields/Icon/drawnSet.native.js.map +1 -1
  297. package/dist/esm/fields/Icon/index.native.js.map +1 -1
  298. package/dist/esm/fields/ImageField/index.native.js.map +1 -1
  299. package/dist/esm/fields/Input/index.native.js.map +1 -1
  300. package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
  301. package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
  302. package/dist/esm/fields/OTPInput/otpCellCss.native.js.map +1 -1
  303. package/dist/esm/fields/PhoneInput/dialCodes.native.js.map +1 -1
  304. package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
  305. package/dist/esm/fields/PhoneInput/phone.native.js.map +1 -1
  306. package/dist/esm/fields/PhoneInput/regionNames.native.js.map +1 -1
  307. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  308. package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
  309. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  310. package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -1
  311. package/dist/esm/fields/Rating/types.native.js.map +1 -1
  312. package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
  313. package/dist/esm/fields/Select/index.native.js.map +1 -1
  314. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  315. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  316. package/dist/esm/fields/Slider/jumpMotion.native.js.map +1 -1
  317. package/dist/esm/fields/Stepper/index.native.js.map +1 -1
  318. package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
  319. package/dist/esm/fields/Switch/footprint.native.js.map +1 -1
  320. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  321. package/dist/esm/fields/TextArea/index.native.js.map +1 -1
  322. package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
  323. package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
  324. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  325. package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -1
  326. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  327. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  328. package/dist/esm/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
  329. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
  330. package/dist/esm/fields/nativeSelect.native.js.map +1 -1
  331. package/dist/esm/fields/selectedOrder.native.js.map +1 -1
  332. package/dist/esm/formSpacing.native.js.map +1 -1
  333. package/dist/esm/hooks/useFocusManagement.native.js.map +1 -1
  334. package/dist/esm/index.native.js.map +1 -1
  335. package/dist/esm/requiredMarking.native.js.map +1 -1
  336. package/dist/esm/shared/TimeColumn.mjs +0 -9
  337. package/dist/esm/shared/TimeColumn.mjs.map +1 -1
  338. package/dist/esm/shared/TimeColumn.native.js +0 -9
  339. package/dist/esm/shared/TimeColumn.native.js.map +1 -1
  340. package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
  341. package/dist/esm/shared/colorRamps.native.js.map +1 -1
  342. package/dist/esm/shared/devWarn.native.js.map +1 -1
  343. package/dist/esm/shared/floatingList.native.js.map +1 -1
  344. package/dist/esm/shared/focusManagement.native.js.map +1 -1
  345. package/dist/esm/shared/groupContext.native.js.map +1 -1
  346. package/dist/esm/shared/i18n.native.js.map +1 -1
  347. package/dist/esm/shared/instantMotion.native.js.map +1 -1
  348. package/dist/esm/shared/nativeA11y.native.js.map +1 -1
  349. package/dist/esm/shared/panelPortal.native.js.map +1 -1
  350. package/dist/esm/shared/pickerTriggerContract.native.js.map +1 -1
  351. package/dist/esm/shared/pressSlopProps.native.js.map +1 -1
  352. package/dist/esm/shared/t.native.js.map +1 -1
  353. package/dist/esm/shared/tableCellContext.native.js.map +1 -1
  354. package/dist/esm/shared/useDragScroll.native.js.map +1 -1
  355. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
  356. package/dist/esm/shared/useSheetEscapeDismiss.native.js.map +1 -1
  357. package/dist/esm/shared/useWheelIncrement.native.js.map +1 -1
  358. package/dist/esm/shared/utils.native.js.map +1 -1
  359. package/dist/esm/shared/zIndex.native.js.map +1 -1
  360. package/dist/esm/themedPrimitives.native.js.map +1 -1
  361. package/dist/esm/types.native.js.map +1 -1
  362. package/dist/esm/utils/LinkCell.native.js.map +1 -1
  363. package/dist/jsx/Wheel/NativeWheel.mjs +5 -0
  364. package/dist/jsx/Wheel/NativeWheel.mjs.map +1 -0
  365. package/dist/jsx/Wheel/NativeWheel.native.js +408 -0
  366. package/dist/jsx/Wheel/NativeWheel.native.js.map +1 -0
  367. package/dist/jsx/Wheel/haptic.mjs +3 -4
  368. package/dist/jsx/Wheel/haptic.mjs.map +1 -1
  369. package/dist/jsx/Wheel/haptic.native.js +4 -5
  370. package/dist/jsx/Wheel/haptic.native.js.map +1 -1
  371. package/dist/jsx/Wheel/index.mjs +49 -205
  372. package/dist/jsx/Wheel/index.mjs.map +1 -1
  373. package/dist/jsx/Wheel/index.native.js +54 -228
  374. package/dist/jsx/Wheel/index.native.js.map +1 -1
  375. package/dist/jsx/Wheel/wheelShared.mjs +119 -0
  376. package/dist/jsx/Wheel/wheelShared.mjs.map +1 -0
  377. package/dist/jsx/Wheel/wheelShared.native.js +169 -0
  378. package/dist/jsx/Wheel/wheelShared.native.js.map +1 -0
  379. package/dist/jsx/index.native.js.map +1 -1
  380. package/dist/jsx/shared/TimeColumn.mjs +0 -9
  381. package/dist/jsx/shared/TimeColumn.mjs.map +1 -1
  382. package/dist/jsx/shared/TimeColumn.native.js +0 -9
  383. package/dist/jsx/shared/TimeColumn.native.js.map +1 -1
  384. package/package.json +8 -8
  385. package/src/Wheel/NativeWheel.native.spec.tsx +181 -0
  386. package/src/Wheel/NativeWheel.native.tsx +430 -0
  387. package/src/Wheel/NativeWheel.tsx +6 -0
  388. package/src/Wheel/haptic.ts +9 -8
  389. package/src/Wheel/index.tsx +121 -363
  390. package/src/Wheel/wheelShared.spec.ts +53 -0
  391. package/src/Wheel/wheelShared.ts +222 -0
  392. package/src/shared/TimeColumn.tsx +0 -7
  393. package/types/Wheel/NativeWheel.d.ts +4 -0
  394. package/types/Wheel/NativeWheel.d.ts.map +1 -0
  395. package/types/Wheel/NativeWheel.native.d.ts +9 -0
  396. package/types/Wheel/NativeWheel.native.d.ts.map +1 -0
  397. package/types/Wheel/haptic.d.ts +4 -2
  398. package/types/Wheel/haptic.d.ts.map +1 -1
  399. package/types/Wheel/index.d.ts +4 -49
  400. package/types/Wheel/index.d.ts.map +1 -1
  401. package/types/Wheel/wheelShared.d.ts +87 -0
  402. package/types/Wheel/wheelShared.d.ts.map +1 -0
  403. package/types/shared/TimeColumn.d.ts.map +1 -1
  404. package/dist/cjs/Wheel/WheelEdgeFade.native.js +0 -116
  405. package/dist/cjs/Wheel/WheelEdgeFade.native.js.map +0 -1
  406. package/dist/esm/Wheel/WheelEdgeFade.mjs +0 -5
  407. package/dist/esm/Wheel/WheelEdgeFade.mjs.map +0 -1
  408. package/dist/esm/Wheel/WheelEdgeFade.native.js +0 -88
  409. package/dist/esm/Wheel/WheelEdgeFade.native.js.map +0 -1
  410. package/dist/jsx/Wheel/WheelEdgeFade.mjs +0 -5
  411. package/dist/jsx/Wheel/WheelEdgeFade.mjs.map +0 -1
  412. package/dist/jsx/Wheel/WheelEdgeFade.native.js +0 -116
  413. package/dist/jsx/Wheel/WheelEdgeFade.native.js.map +0 -1
  414. package/src/Wheel/WheelEdgeFade.native.tsx +0 -67
  415. package/src/Wheel/WheelEdgeFade.spec.tsx +0 -141
  416. package/src/Wheel/WheelEdgeFade.tsx +0 -7
  417. package/types/Wheel/WheelEdgeFade.d.ts +0 -8
  418. package/types/Wheel/WheelEdgeFade.d.ts.map +0 -1
  419. package/types/Wheel/WheelEdgeFade.native.d.ts +0 -8
  420. package/types/Wheel/WheelEdgeFade.native.d.ts.map +0 -1
@@ -28,33 +28,17 @@ __export(Wheel_exports, {
28
28
  });
29
29
  module.exports = __toCommonJS(Wheel_exports);
30
30
  var import_jsx_runtime = require("react/jsx-runtime");
31
- var import_theme = require("@multiplatform.one/theme");
32
31
  var import_react = require("react");
33
- var import_react_native = require("react-native");
34
- var import_theme2 = require("@multiplatform.one/theme");
35
32
  var import_tamagui = require("tamagui");
36
33
  var import_t = require("../shared/t.native.js");
37
34
  var import_haptic = require("./haptic.native.js");
38
- var import_WheelEdgeFade = require("./WheelEdgeFade.native.js");
39
- function _type_of(obj) {
40
- "@swc/helpers - typeof";
41
-
42
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
43
- }
35
+ var import_NativeWheel = require("./NativeWheel.native.js");
36
+ var import_wheelShared = require("./wheelShared.native.js");
44
37
  var friction = 0.95;
45
38
  var minVelocity = 0.5;
46
39
  var momentumMultiplier = 0.8;
47
40
  var rubberBandConstant = 0.55;
48
41
  var tapSlopPx = 8;
49
- var diameterRatio = 1.07;
50
- var squeeze = 1.45;
51
- var perspectivePx = 400;
52
- var defaultColumnWidth = 88;
53
- var wheelFontByStep = {
54
- [-1]: "$6",
55
- 0: "$8",
56
- 1: "$9"
57
- };
58
42
  var WHEEL_FOCUS_STYLE_ID = "mp1-wheel-focus";
59
43
  function ensureWheelFocusStyles() {
60
44
  if (!import_tamagui.isWeb || typeof document === "undefined") return;
@@ -90,44 +74,15 @@ var SelectionIndicator = (0, import_tamagui.styled)(import_tamagui.View, {
90
74
  right: 0,
91
75
  pointerEvents: "none"
92
76
  });
93
- function normalizeItem(item) {
94
- if ((typeof item === "undefined" ? "undefined" : _type_of(item)) === "object" && item !== null && "value" in item) {
95
- return item;
96
- }
97
- return {
98
- value: item,
99
- label: String(item)
100
- };
101
- }
102
- function getItemLabel(item) {
103
- var _normalized_label;
104
- var normalized = normalizeItem(item);
105
- return (_normalized_label = normalized.label) !== null && _normalized_label !== void 0 ? _normalized_label : String(normalized.value);
106
- }
107
- function getItemValue(item) {
108
- var normalized = normalizeItem(item);
109
- return normalized.value;
110
- }
111
- function modIndex(row, n) {
112
- if (n <= 0) return 0;
113
- return (row % n + n) % n;
114
- }
115
77
  function equivalentOffsetNear(referenceOffset, targetOffset, n, itemHeight) {
116
78
  if (n <= 0 || itemHeight <= 0) return targetOffset;
117
79
  var rT = Math.round(targetOffset / itemHeight);
118
- var m = modIndex(rT, n);
80
+ var m = (0, import_wheelShared.modIndex)(rT, n);
119
81
  var span = n * itemHeight;
120
82
  var base = m * itemHeight;
121
83
  var k = Math.round((referenceOffset - base) / span);
122
84
  return base + k * span;
123
85
  }
124
- function nearestRowForDataIndex(currentRow, targetDataIndex, n) {
125
- var currentMod = modIndex(currentRow, n);
126
- var delta = targetDataIndex - currentMod;
127
- if (delta > n / 2) delta -= n;
128
- if (delta < -n / 2) delta += n;
129
- return currentRow + delta;
130
- }
131
86
  function rubberBand(offset, dimension) {
132
87
  var c = rubberBandConstant;
133
88
  var x = Math.abs(offset);
@@ -135,69 +90,45 @@ function rubberBand(offset, dimension) {
135
90
  return offset < 0 ? -result : result;
136
91
  }
137
92
  function getItemTransform(index, scrollOffset, itemHeight, containerHeight) {
138
- var radius = containerHeight * diameterRatio / 2;
139
- var angle = (index * itemHeight - scrollOffset) / squeeze / Math.max(radius, 1);
140
- var clamped = Math.max(-Math.PI / 2, Math.min(Math.PI / 2, angle));
141
- var centerTop = (containerHeight - itemHeight) / 2;
142
- var translateY = centerTop + radius * Math.sin(clamped);
143
- var rotateX = -(clamped * 180) / Math.PI;
144
- var scale = Math.max(0.72, Math.min(1, Math.cos(clamped)));
93
+ var pose = (0, import_wheelShared.drumPose)(index - scrollOffset / itemHeight, itemHeight, containerHeight);
145
94
  return {
146
- translateY,
147
- rotateX,
148
- scale,
95
+ translateY: (containerHeight - itemHeight) / 2 + pose.offset,
96
+ rotateX: pose.rotateX,
97
+ scale: pose.scale,
149
98
  opacity: 1
150
99
  };
151
100
  }
152
- function tokenPx(token, scale) {
153
- var _getTokens_scale_key, _getTokens_scale;
154
- if (typeof token === "number") return token;
155
- var key = String(token).replace(/^\$/, "");
156
- var val = (_getTokens_scale = (0, import_tamagui.getTokens)()[scale]) === null || _getTokens_scale === void 0 ? void 0 : (_getTokens_scale_key = _getTokens_scale[key]) === null || _getTokens_scale_key === void 0 ? void 0 : _getTokens_scale_key.val;
157
- if (typeof val === "number") return val;
158
- return scale === "radius" ? 9 : 8;
159
- }
160
- function highlightBandStyle(edges, radiusToken, pointy) {
161
- var r = pointy ? 0 : tokenPx(radiusToken, "radius");
162
- var inset = tokenPx("$2", "space");
163
- var capStart = edges === "all" || edges === "start";
164
- var capEnd = edges === "all" || edges === "end";
165
- return {
166
- borderStartStartRadius: capStart ? r : 0,
167
- borderStartEndRadius: capEnd ? r : 0,
168
- borderEndStartRadius: capStart ? r : 0,
169
- borderEndEndRadius: capEnd ? r : 0,
170
- marginInlineStart: capStart ? inset : 0,
171
- marginInlineEnd: capEnd ? inset : 0
172
- };
101
+ function Wheel(props) {
102
+ return import_tamagui.isWeb ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(WebWheel, {
103
+ ...props
104
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_NativeWheel.NativeWheel, {
105
+ ...props
106
+ });
173
107
  }
174
- function Wheel(param) {
108
+ function WebWheel(props) {
175
109
  var {
176
110
  items,
177
111
  value,
178
112
  onChange,
179
113
  visibleItems = 5,
180
- itemHeight: itemHeightProp,
181
114
  width: widthProp,
182
115
  renderItem,
183
116
  disabled = false,
184
- size: sizeProp,
185
117
  loop = false,
186
- highlightEdges = "all",
187
118
  flex,
188
119
  onItemCross,
189
120
  "aria-label": ariaLabel
190
- } = param;
191
- var _ref;
121
+ } = props;
192
122
  var {
193
- knobProps
194
- } = (0, import_theme2.useResolvedKnobs)();
195
- var size = sizeProp !== null && sizeProp !== void 0 ? sizeProp : wheelFontByStep[(0, import_theme2.sizeTokenStep)(knobProps.sizeToken)];
196
- var itemHeight = (_ref = itemHeightProp !== null && itemHeightProp !== void 0 ? itemHeightProp : knobProps.nestedControl.px) !== null && _ref !== void 0 ? _ref : 32;
197
- var columnWidth = widthProp !== null && widthProp !== void 0 ? widthProp : defaultColumnWidth;
123
+ knobProps,
124
+ size,
125
+ itemHeight,
126
+ snapDurationMs,
127
+ highlightStyle,
128
+ highlightClassName
129
+ } = (0, import_wheelShared.useWheelLayout)(props);
130
+ var columnWidth = widthProp !== null && widthProp !== void 0 ? widthProp : import_wheelShared.defaultColumnWidth;
198
131
  ensureWheelFocusStyles();
199
- var motionTransition = knobProps.motion.control.transition;
200
- var snapDurationMs = (0, import_theme.motionDurationMs)(motionTransition);
201
132
  var containerRef = (0, import_react.useRef)(null);
202
133
  var [scrollOffset, setScrollOffset] = (0, import_react.useState)(0);
203
134
  var [selectedIndex, setSelectedIndex] = (0, import_react.useState)(0);
@@ -220,7 +151,7 @@ function Wheel(param) {
220
151
  var paddingItems = Math.floor(visibleItems / 2);
221
152
  var minOffset = 0;
222
153
  var maxOffset = n > 0 ? (n - 1) * itemHeight : 0;
223
- var liveDataIndex = n === 0 ? 0 : loopEnabled ? modIndex(Math.round(scrollOffset / itemHeight), n) : Math.max(0, Math.min(Math.round(scrollOffset / itemHeight), n - 1));
154
+ var liveDataIndex = n === 0 ? 0 : loopEnabled ? (0, import_wheelShared.modIndex)(Math.round(scrollOffset / itemHeight), n) : Math.max(0, Math.min(Math.round(scrollOffset / itemHeight), n - 1));
224
155
  var lastCrossIndexRef = (0, import_react.useRef)(null);
225
156
  var onItemCrossRef = (0, import_react.useRef)(onItemCross);
226
157
  onItemCrossRef.current = onItemCross;
@@ -235,7 +166,7 @@ function Wheel(param) {
235
166
  lastCrossIndexRef.current = liveDataIndex;
236
167
  var item = items[liveDataIndex];
237
168
  if (item === void 0) return;
238
- (_onItemCrossRef_current = onItemCrossRef.current) === null || _onItemCrossRef_current === void 0 ? void 0 : _onItemCrossRef_current.call(onItemCrossRef, getItemValue(item), liveDataIndex);
169
+ (_onItemCrossRef_current = onItemCrossRef.current) === null || _onItemCrossRef_current === void 0 ? void 0 : _onItemCrossRef_current.call(onItemCrossRef, (0, import_wheelShared.getItemValue)(item), liveDataIndex);
239
170
  (0, import_haptic.fireSelectionHaptic)();
240
171
  }, [liveDataIndex, items, n]);
241
172
  var runSnapComplete = (0, import_react.useCallback)(function (finalOffset, dataIndex) {
@@ -244,7 +175,7 @@ function Wheel(param) {
244
175
  scrollOffsetRef.current = settled;
245
176
  setScrollOffset(settled);
246
177
  setSelectedIndex(safeIdx);
247
- onChange === null || onChange === void 0 ? void 0 : onChange(getItemValue(items[safeIdx]));
178
+ onChange === null || onChange === void 0 ? void 0 : onChange((0, import_wheelShared.getItemValue)(items[safeIdx]));
248
179
  isAnimatingRef.current = false;
249
180
  }, [items, n, onChange, loopEnabled, itemHeight]);
250
181
  var animateToOffset = (0, import_react.useCallback)(function (targetOffset, dataIndex, animated) {
@@ -288,15 +219,15 @@ function Wheel(param) {
288
219
  return;
289
220
  }
290
221
  var currentR = Math.round(scrollOffsetRef.current / itemHeight);
291
- var targetR = nearestRowForDataIndex(currentR, clampedData, n);
222
+ var targetR = (0, import_wheelShared.nearestRowForDataIndex)(currentR, clampedData, n);
292
223
  var targetOffset1 = targetR * itemHeight;
293
- var dataIdx = modIndex(targetR, n);
224
+ var dataIdx = (0, import_wheelShared.modIndex)(targetR, n);
294
225
  animateToOffset(targetOffset1, dataIdx, animated);
295
226
  }, [n, itemHeight, loopEnabled, animateToOffset]);
296
227
  (0, import_react.useEffect)(function () {
297
228
  if (value === void 0) return;
298
229
  var index = items.findIndex(function (item) {
299
- return getItemValue(item) === value;
230
+ return (0, import_wheelShared.getItemValue)(item) === value;
300
231
  });
301
232
  if (index === -1) return;
302
233
  if (!hasMountedRef.current) {
@@ -323,7 +254,7 @@ function Wheel(param) {
323
254
  var r = Math.round(scrollOffsetRef.current / itemHeight);
324
255
  if (loopEnabled) {
325
256
  var targetOffset = r * itemHeight;
326
- var dataIdx = modIndex(r, n);
257
+ var dataIdx = (0, import_wheelShared.modIndex)(r, n);
327
258
  animateToOffset(targetOffset, dataIdx, animated);
328
259
  } else {
329
260
  var dataIdx1 = Math.max(0, Math.min(r, n - 1));
@@ -338,7 +269,7 @@ function Wheel(param) {
338
269
  var best = null;
339
270
  for (var vr = centerRow - rowBuffer; vr <= centerRow + rowBuffer; vr++) {
340
271
  if (!loopEnabled && (vr < 0 || vr >= n)) continue;
341
- var dataIndex = loopEnabled ? modIndex(vr, n) : vr;
272
+ var dataIndex = loopEnabled ? (0, import_wheelShared.modIndex)(vr, n) : vr;
342
273
  var {
343
274
  translateY
344
275
  } = getItemTransform(vr, offset, itemHeight, containerHeight);
@@ -436,11 +367,11 @@ function Wheel(param) {
436
367
  containerRef.current.style.cursor = disabled ? "not-allowed" : "grab";
437
368
  }
438
369
  if (dragDistanceRef.current < tapSlopPx) {
439
- var _ref2;
370
+ var _ref;
440
371
  var _containerRef_current;
441
372
  var localY = e.locationY;
442
373
  var rect = (_containerRef_current = containerRef.current) === null || _containerRef_current === void 0 ? void 0 : _containerRef_current.getBoundingClientRect();
443
- var tapY = typeof localY === "number" ? localY : e.clientY - ((_ref2 = rect === null || rect === void 0 ? void 0 : rect.top) !== null && _ref2 !== void 0 ? _ref2 : 0);
374
+ var tapY = typeof localY === "number" ? localY : e.clientY - ((_ref = rect === null || rect === void 0 ? void 0 : rect.top) !== null && _ref !== void 0 ? _ref : 0);
444
375
  var tapped = hitTestDataIndex(tapY);
445
376
  if (tapped != null) {
446
377
  snapToIndex(tapped, true);
@@ -461,59 +392,6 @@ function Wheel(param) {
461
392
  snapToNearestRow(true);
462
393
  }
463
394
  }, [snapToNearestRow, startMomentum, hitTestDataIndex, snapToIndex, disabled]);
464
- var disabledRef = (0, import_react.useRef)(disabled);
465
- disabledRef.current = disabled;
466
- var pointerDownRef = (0, import_react.useRef)(handlePointerDown);
467
- pointerDownRef.current = handlePointerDown;
468
- var pointerMoveRef = (0, import_react.useRef)(handlePointerMove);
469
- pointerMoveRef.current = handlePointerMove;
470
- var pointerUpRef = (0, import_react.useRef)(handlePointerUp);
471
- pointerUpRef.current = handlePointerUp;
472
- var panResponder = (0, import_react.useMemo)(function () {
473
- if (import_tamagui.isWeb) return {
474
- panHandlers: {}
475
- };
476
- return import_react_native.PanResponder.create({
477
- onStartShouldSetPanResponder: function onStartShouldSetPanResponder() {
478
- return !disabledRef.current;
479
- },
480
- onMoveShouldSetPanResponder: function onMoveShouldSetPanResponder(_, gesture) {
481
- return Math.abs(gesture.dy) > 1;
482
- },
483
- onPanResponderTerminationRequest: function onPanResponderTerminationRequest() {
484
- return false;
485
- },
486
- onShouldBlockNativeResponder: function onShouldBlockNativeResponder() {
487
- return true;
488
- },
489
- onPanResponderGrant: function onPanResponderGrant(evt) {
490
- pointerDownRef.current({
491
- clientY: evt.nativeEvent.pageY,
492
- pointerId: 1
493
- });
494
- },
495
- onPanResponderMove: function onPanResponderMove(evt) {
496
- pointerMoveRef.current({
497
- clientY: evt.nativeEvent.pageY,
498
- pointerId: 1
499
- });
500
- },
501
- onPanResponderRelease: function onPanResponderRelease(evt) {
502
- pointerUpRef.current({
503
- clientY: evt.nativeEvent.pageY,
504
- pointerId: 1,
505
- locationY: evt.nativeEvent.locationY
506
- });
507
- },
508
- onPanResponderTerminate: function onPanResponderTerminate(evt) {
509
- pointerUpRef.current({
510
- clientY: evt.nativeEvent.pageY,
511
- pointerId: 1,
512
- locationY: evt.nativeEvent.locationY
513
- });
514
- }
515
- });
516
- }, []);
517
395
  var handleWheel = (0, import_react.useCallback)(function (e) {
518
396
  if (disabled) return;
519
397
  e.preventDefault();
@@ -573,7 +451,7 @@ function Wheel(param) {
573
451
  }
574
452
  e.preventDefault();
575
453
  if (loopEnabled) {
576
- var newIndex = modIndex(selectedIndex + delta, n);
454
+ var newIndex = (0, import_wheelShared.modIndex)(selectedIndex + delta, n);
577
455
  snapToIndex(newIndex);
578
456
  } else {
579
457
  var newIndex1 = Math.max(0, Math.min(selectedIndex + delta, n - 1));
@@ -603,39 +481,25 @@ function Wheel(param) {
603
481
  }, []);
604
482
  var renderRows = (0, import_react.useMemo)(function () {
605
483
  if (n === 0) return [];
606
- if (loopEnabled) {
607
- var centerRow = Math.round(scrollOffset / itemHeight);
608
- var rowBuffer = paddingItems + 5;
609
- var list = [];
610
- for (var vr = centerRow - rowBuffer; vr <= centerRow + rowBuffer; vr++) {
611
- list.push({
612
- virtualRow: vr,
613
- dataIndex: modIndex(vr, n)
614
- });
615
- }
616
- return list;
484
+ var span = Math.ceil((0, import_wheelShared.drumReachRows)(itemHeight, containerHeight));
485
+ var centerRow = Math.round(scrollOffset / itemHeight);
486
+ var first = loopEnabled ? centerRow - span : Math.max(0, centerRow - span);
487
+ var last = loopEnabled ? centerRow + span : Math.min(n - 1, centerRow + span);
488
+ var list = [];
489
+ for (var vr = first; vr <= last; vr++) {
490
+ list.push({
491
+ virtualRow: vr,
492
+ dataIndex: (0, import_wheelShared.modIndex)(vr, n)
493
+ });
617
494
  }
618
- var start = Math.max(0, Math.floor(scrollOffset / itemHeight) - paddingItems - 1);
619
- var end = Math.min(n - 1, Math.ceil((scrollOffset + containerHeight) / itemHeight) + paddingItems + 1);
620
- return Array.from({
621
- length: end - start + 1
622
- }, function (_, i) {
623
- var virtualRow = start + i;
624
- return {
625
- virtualRow,
626
- dataIndex: virtualRow
627
- };
628
- });
629
- }, [n, loopEnabled, scrollOffset, itemHeight, paddingItems, containerHeight]);
495
+ return list;
496
+ }, [n, loopEnabled, scrollOffset, itemHeight, containerHeight]);
630
497
  var itemColor = function itemColor2(isSelected) {
631
498
  return disabled ? "$color10" : isSelected ? "$color12" : "$color11";
632
499
  };
633
- var radiusToken = knobProps.borderRadius.borderRadius;
634
- var highlightStyle = highlightBandStyle(highlightEdges, radiusToken, Boolean(knobProps.pointy));
635
- var highlightSmoothClass = "className" in knobProps.borderRadius && typeof knobProps.borderRadius.className === "string" ? knobProps.borderRadius.className : void 0;
636
500
  var renderItemNode = function renderItemNode2(dataIndex, isSelected) {
637
501
  var item = items[dataIndex];
638
- var itemValue = getItemValue(item);
502
+ var itemValue = (0, import_wheelShared.getItemValue)(item);
639
503
  if (renderItem) return renderItem(itemValue, dataIndex, isSelected);
640
504
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
641
505
  ...knobProps.body,
@@ -645,7 +509,7 @@ function Wheel(param) {
645
509
  ellipsizeMode: "tail",
646
510
  maxWidth: "100%",
647
511
  paddingHorizontal: "$2",
648
- children: getItemLabel(item)
512
+ children: (0, import_wheelShared.getItemLabel)(item)
649
513
  });
650
514
  };
651
515
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(WheelContainer, {
@@ -659,14 +523,14 @@ function Wheel(param) {
659
523
  opacity: 1,
660
524
  children: [/* iOS 14+ selection fill — LC-71 selected=fill, never hairline borders */
661
525
  /* @__PURE__ */(0, import_jsx_runtime.jsx)(SelectionIndicator, {
662
- className: highlightSmoothClass,
526
+ className: highlightClassName,
663
527
  backgroundColor: "$color4",
664
528
  top: paddingItems * itemHeight,
665
529
  height: itemHeight,
666
530
  style: highlightStyle,
667
531
  "data-testid": "wheel-selection"
668
532
  }), /* Interactive container */
669
- import_tamagui.isWeb ? /* @__PURE__ */(0, import_jsx_runtime.jsx)("div", {
533
+ /* @__PURE__ */(0, import_jsx_runtime.jsx)("div", {
670
534
  ref: containerRef,
671
535
  className: "mp1-wheel-wrapper",
672
536
  tabIndex: disabled ? -1 : 0,
@@ -676,14 +540,14 @@ function Wheel(param) {
676
540
  "aria-valuemin": 0,
677
541
  "aria-valuemax": Math.max(0, n - 1),
678
542
  "aria-valuenow": selectedIndex,
679
- "aria-valuetext": items[selectedIndex] !== void 0 ? getItemLabel(items[selectedIndex]) : void 0,
543
+ "aria-valuetext": items[selectedIndex] !== void 0 ? (0, import_wheelShared.getItemLabel)(items[selectedIndex]) : void 0,
680
544
  "aria-disabled": disabled || void 0,
681
545
  "data-disabled": disabled ? true : void 0,
682
546
  style: {
683
547
  width: "100%",
684
548
  height: containerHeight,
685
549
  position: "relative",
686
- perspective: `${perspectivePx}px`,
550
+ perspective: `${containerHeight * 4}px`,
687
551
  perspectiveOrigin: "center center",
688
552
  overflow: "hidden",
689
553
  userSelect: "none",
@@ -697,11 +561,11 @@ function Wheel(param) {
697
561
  onPointerCancel: handlePointerUp,
698
562
  onKeyDown: handleKeyDown,
699
563
  "data-testid": "wheel-wrapper",
700
- children: renderRows.map(function (param2) {
564
+ children: renderRows.map(function (param) {
701
565
  var {
702
566
  virtualRow,
703
567
  dataIndex
704
- } = param2;
568
+ } = param;
705
569
  var isSelected = dataIndex === liveDataIndex;
706
570
  var transform = getItemTransform(virtualRow, scrollOffset, itemHeight, containerHeight);
707
571
  if (Math.abs(transform.rotateX) > 85) return null;
@@ -728,44 +592,6 @@ function Wheel(param) {
728
592
  children: renderItemNode(dataIndex, isSelected)
729
593
  }, `${dataIndex}-${virtualRow}`);
730
594
  })
731
- }) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
732
- width: "100%",
733
- height: containerHeight,
734
- position: "relative",
735
- overflow: "hidden",
736
- cursor: disabled ? "not-allowed" : "grab",
737
- "data-testid": "wheel-wrapper",
738
- "data-disabled": disabled ? true : void 0,
739
- "aria-disabled": disabled || void 0,
740
- ...panResponder.panHandlers,
741
- children: [renderRows.map(function (param2) {
742
- var {
743
- virtualRow,
744
- dataIndex
745
- } = param2;
746
- var isSelected = dataIndex === liveDataIndex;
747
- var transform = getItemTransform(virtualRow, scrollOffset, itemHeight, containerHeight);
748
- if (Math.abs(transform.rotateX) > 85) return null;
749
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
750
- position: "absolute",
751
- left: 0,
752
- right: 0,
753
- height: itemHeight,
754
- alignItems: "center",
755
- justifyContent: "center",
756
- opacity: transform.opacity,
757
- pointerEvents: "none",
758
- y: transform.translateY,
759
- scale: transform.scale,
760
- rotateX: `${transform.rotateX}deg`,
761
- "data-testid": "wheel-item",
762
- "data-index": dataIndex,
763
- "data-selected": isSelected ? true : void 0,
764
- children: renderItemNode(dataIndex, isSelected)
765
- }, `${dataIndex}-${virtualRow}`);
766
- }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_WheelEdgeFade.WheelEdgeFade, {
767
- height: paddingItems * itemHeight
768
- })]
769
595
  })]
770
596
  });
771
597
  }