@multiplatform.one/forms 7.4.0 → 7.5.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 (1286) hide show
  1. package/dist/cjs/AdaptivePopup/index.cjs +139 -20
  2. package/dist/cjs/AdaptivePopup/index.native.js +139 -21
  3. package/dist/cjs/AdaptivePopup/index.native.js.map +1 -1
  4. package/dist/cjs/Button/index.cjs +14 -5
  5. package/dist/cjs/Button/index.native.js +20 -5
  6. package/dist/cjs/Button/index.native.js.map +1 -1
  7. package/dist/cjs/Chip/index.cjs +7 -3
  8. package/dist/cjs/Chip/index.native.js +7 -3
  9. package/dist/cjs/Chip/index.native.js.map +1 -1
  10. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.cjs +143 -0
  11. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js +151 -0
  12. package/dist/cjs/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -0
  13. package/dist/cjs/ContextualSaveBar/clientKnownIdentity.cjs +37 -0
  14. package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js +40 -0
  15. package/dist/cjs/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -0
  16. package/dist/cjs/ContextualSaveBar/commitImmediateField.cjs +50 -0
  17. package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js +55 -0
  18. package/dist/cjs/ContextualSaveBar/commitImmediateField.native.js.map +1 -0
  19. package/dist/cjs/ContextualSaveBar/index.cjs +301 -0
  20. package/dist/cjs/ContextualSaveBar/index.native.js +325 -0
  21. package/dist/cjs/ContextualSaveBar/index.native.js.map +1 -0
  22. package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.cjs +49 -0
  23. package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js +55 -0
  24. package/dist/cjs/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -0
  25. package/dist/cjs/ControlGroup/index.cjs +10 -9
  26. package/dist/cjs/ControlGroup/index.native.js +10 -10
  27. package/dist/cjs/ControlGroup/index.native.js.map +1 -1
  28. package/dist/cjs/DescriptionList/index.cjs +416 -0
  29. package/dist/cjs/DescriptionList/index.native.js +441 -0
  30. package/dist/cjs/DescriptionList/index.native.js.map +1 -0
  31. package/dist/cjs/FieldDisplay/index.cjs +103 -43
  32. package/dist/cjs/FieldDisplay/index.native.js +107 -44
  33. package/dist/cjs/FieldDisplay/index.native.js.map +1 -1
  34. package/dist/cjs/FieldGroup.cjs +13 -3
  35. package/dist/cjs/FieldGroup.native.js +13 -3
  36. package/dist/cjs/FieldGroup.native.js.map +1 -1
  37. package/dist/cjs/FloatingPanel/index.cjs +32 -8
  38. package/dist/cjs/FloatingPanel/index.native.js +229 -46
  39. package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
  40. package/dist/cjs/FloatingPanel/useFloatingPanel.cjs +26 -9
  41. package/dist/cjs/FloatingPanel/useFloatingPanel.native.js +26 -9
  42. package/dist/cjs/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  43. package/dist/cjs/Form/index.cjs +51 -28
  44. package/dist/cjs/Form/index.native.js +56 -28
  45. package/dist/cjs/Form/index.native.js.map +1 -1
  46. package/dist/cjs/FormGrid.cjs +11 -4
  47. package/dist/cjs/FormGrid.native.js +11 -4
  48. package/dist/cjs/FormGrid.native.js.map +1 -1
  49. package/dist/cjs/FormSection.cjs +10 -3
  50. package/dist/cjs/FormSection.native.js +10 -3
  51. package/dist/cjs/FormSection.native.js.map +1 -1
  52. package/dist/cjs/InputParts/index.cjs +77 -58
  53. package/dist/cjs/InputParts/index.native.js +77 -61
  54. package/dist/cjs/InputParts/index.native.js.map +1 -1
  55. package/dist/cjs/Label/index.cjs +1 -0
  56. package/dist/cjs/Label/index.native.js +1 -0
  57. package/dist/cjs/Label/index.native.js.map +1 -1
  58. package/dist/cjs/Spinner/index.cjs +1 -0
  59. package/dist/cjs/Spinner/index.native.js +14 -1
  60. package/dist/cjs/Spinner/index.native.js.map +1 -1
  61. package/dist/cjs/Wheel/WheelEdgeFade.cjs +30 -0
  62. package/dist/cjs/Wheel/WheelEdgeFade.native.js +116 -0
  63. package/dist/cjs/Wheel/WheelEdgeFade.native.js.map +1 -0
  64. package/dist/cjs/Wheel/haptic.cjs +35 -0
  65. package/dist/cjs/Wheel/haptic.native.js +39 -0
  66. package/dist/cjs/Wheel/haptic.native.js.map +1 -0
  67. package/dist/cjs/Wheel/index.cjs +293 -109
  68. package/dist/cjs/Wheel/index.native.js +311 -112
  69. package/dist/cjs/Wheel/index.native.js.map +1 -1
  70. package/dist/cjs/fieldDefaults.cjs +4 -0
  71. package/dist/cjs/fieldDefaults.native.js +6 -0
  72. package/dist/cjs/fieldDefaults.native.js.map +1 -1
  73. package/dist/cjs/fieldLayout.cjs +11 -7
  74. package/dist/cjs/fieldLayout.native.js +11 -7
  75. package/dist/cjs/fieldLayout.native.js.map +1 -1
  76. package/dist/cjs/fields/Barcode/BarcodePreview.cjs +80 -18
  77. package/dist/cjs/fields/Barcode/BarcodePreview.native.js +86 -18
  78. package/dist/cjs/fields/Barcode/BarcodePreview.native.js.map +1 -1
  79. package/dist/cjs/fields/Barcode/index.cjs +8 -2
  80. package/dist/cjs/fields/Barcode/index.native.js +8 -2
  81. package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
  82. package/dist/cjs/fields/Barcode/qr.cjs +406 -0
  83. package/dist/cjs/fields/Barcode/qr.native.js +637 -0
  84. package/dist/cjs/fields/Barcode/qr.native.js.map +1 -0
  85. package/dist/cjs/fields/Barcode/scannerTypes.cjs +6 -1
  86. package/dist/cjs/fields/Barcode/scannerTypes.native.js +6 -1
  87. package/dist/cjs/fields/Barcode/scannerTypes.native.js.map +1 -1
  88. package/dist/cjs/fields/Checkbox/Checkbox.cjs +12 -6
  89. package/dist/cjs/fields/Checkbox/Checkbox.native.js +14 -6
  90. package/dist/cjs/fields/Checkbox/Checkbox.native.js.map +1 -1
  91. package/dist/cjs/fields/Checkbox/CheckboxBox.cjs +18 -1
  92. package/dist/cjs/fields/Checkbox/CheckboxBox.native.js +21 -1
  93. package/dist/cjs/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  94. package/dist/cjs/fields/Checkbox/CheckboxCard.cjs +0 -1
  95. package/dist/cjs/fields/Checkbox/CheckboxCard.native.js +0 -1
  96. package/dist/cjs/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  97. package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.cjs +1 -0
  98. package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js +1 -0
  99. package/dist/cjs/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  100. package/dist/cjs/fields/Checkbox/CheckboxGroup.cjs +6 -3
  101. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js +7 -4
  102. package/dist/cjs/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  103. package/dist/cjs/fields/Checkbox/index.cjs +11 -3
  104. package/dist/cjs/fields/Checkbox/index.native.js +11 -3
  105. package/dist/cjs/fields/Checkbox/index.native.js.map +1 -1
  106. package/dist/cjs/fields/ColorPicker/index.cjs +13 -10
  107. package/dist/cjs/fields/ColorPicker/index.native.js +15 -11
  108. package/dist/cjs/fields/ColorPicker/index.native.js.map +1 -1
  109. package/dist/cjs/fields/ColorPicker/parts.cjs +10 -6
  110. package/dist/cjs/fields/ColorPicker/parts.native.js +10 -6
  111. package/dist/cjs/fields/ColorPicker/parts.native.js.map +1 -1
  112. package/dist/cjs/fields/Combobox/index.cjs +58 -53
  113. package/dist/cjs/fields/Combobox/index.native.js +69 -73
  114. package/dist/cjs/fields/Combobox/index.native.js.map +1 -1
  115. package/dist/cjs/fields/DatePicker/Calendar.cjs +12 -4
  116. package/dist/cjs/fields/DatePicker/Calendar.native.js +12 -4
  117. package/dist/cjs/fields/DatePicker/Calendar.native.js.map +1 -1
  118. package/dist/cjs/fields/DatePicker/DateRangePicker.cjs +19 -5
  119. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +21 -5
  120. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  121. package/dist/cjs/fields/DatePicker/DatetimePicker.cjs +22 -136
  122. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +24 -150
  123. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  124. package/dist/cjs/fields/DatePicker/MonthPicker.cjs +2 -0
  125. package/dist/cjs/fields/DatePicker/MonthPicker.native.js +4 -0
  126. package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
  127. package/dist/cjs/fields/DatePicker/MultiDatePicker.cjs +26 -9
  128. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +28 -9
  129. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  130. package/dist/cjs/fields/DatePicker/index.cjs +2 -0
  131. package/dist/cjs/fields/DatePicker/index.native.js +4 -0
  132. package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
  133. package/dist/cjs/fields/DatePicker/parts.cjs +65 -38
  134. package/dist/cjs/fields/DatePicker/parts.native.js +72 -38
  135. package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
  136. package/dist/cjs/fields/Duration/durationMath.cjs +93 -0
  137. package/dist/cjs/fields/Duration/durationMath.native.js +115 -0
  138. package/dist/cjs/fields/Duration/durationMath.native.js.map +1 -0
  139. package/dist/cjs/fields/Duration/index.cjs +80 -111
  140. package/dist/cjs/fields/Duration/index.native.js +87 -118
  141. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  142. package/dist/cjs/fields/FileUpload/filePickerTypes.cjs +18 -0
  143. package/dist/cjs/fields/FileUpload/filePickerTypes.native.js +21 -0
  144. package/dist/cjs/fields/FileUpload/filePickerTypes.native.js.map +1 -0
  145. package/dist/cjs/fields/FileUpload/index.cjs +346 -154
  146. package/dist/cjs/fields/FileUpload/index.native.js +435 -164
  147. package/dist/cjs/fields/FileUpload/index.native.js.map +1 -1
  148. package/dist/cjs/fields/FileUpload/nativeFilePicker.cjs +37 -0
  149. package/dist/cjs/fields/FileUpload/nativeFilePicker.native.js +174 -0
  150. package/dist/cjs/fields/FileUpload/nativeFilePicker.native.js.map +1 -0
  151. package/dist/cjs/fields/FileUpload/nativePickerLoader.cjs +62 -0
  152. package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js +65 -0
  153. package/dist/cjs/fields/FileUpload/nativePickerLoader.native.js.map +1 -0
  154. package/dist/cjs/fields/Icon/drawnSet.cjs +388 -0
  155. package/dist/cjs/fields/Icon/drawnSet.native.js +398 -0
  156. package/dist/cjs/fields/Icon/drawnSet.native.js.map +1 -0
  157. package/dist/cjs/fields/Icon/index.cjs +380 -0
  158. package/dist/cjs/fields/Icon/index.native.js +398 -0
  159. package/dist/cjs/fields/Icon/index.native.js.map +1 -0
  160. package/dist/cjs/fields/ImageField/index.cjs +18 -25
  161. package/dist/cjs/fields/ImageField/index.native.js +18 -26
  162. package/dist/cjs/fields/ImageField/index.native.js.map +1 -1
  163. package/dist/cjs/fields/Input/index.cjs +5 -1
  164. package/dist/cjs/fields/Input/index.native.js +5 -1
  165. package/dist/cjs/fields/Input/index.native.js.map +1 -1
  166. package/dist/cjs/fields/MentionInput/index.cjs +127 -57
  167. package/dist/cjs/fields/MentionInput/index.native.js +152 -80
  168. package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
  169. package/dist/cjs/fields/OTPInput/index.cjs +9 -3
  170. package/dist/cjs/fields/OTPInput/index.native.js +9 -3
  171. package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
  172. package/dist/cjs/fields/PhoneInput/index.cjs +4 -2
  173. package/dist/cjs/fields/PhoneInput/index.native.js +4 -2
  174. package/dist/cjs/fields/PhoneInput/index.native.js.map +1 -1
  175. package/dist/cjs/fields/Progress/index.cjs +29 -19
  176. package/dist/cjs/fields/Progress/index.native.js +31 -19
  177. package/dist/cjs/fields/Progress/index.native.js.map +1 -1
  178. package/dist/cjs/fields/RadioGroup/index.cjs +15 -14
  179. package/dist/cjs/fields/RadioGroup/index.native.js +15 -14
  180. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  181. package/dist/cjs/fields/Rating/index.cjs +31 -23
  182. package/dist/cjs/fields/Rating/index.native.js +33 -25
  183. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  184. package/dist/cjs/fields/Rating/ratingMath.cjs +36 -0
  185. package/dist/cjs/fields/Rating/ratingMath.native.js +39 -0
  186. package/dist/cjs/fields/Rating/ratingMath.native.js.map +1 -0
  187. package/dist/cjs/fields/SearchInput/index.cjs +216 -151
  188. package/dist/cjs/fields/SearchInput/index.native.js +225 -155
  189. package/dist/cjs/fields/SearchInput/index.native.js.map +1 -1
  190. package/dist/cjs/fields/Select/index.cjs +36 -19
  191. package/dist/cjs/fields/Select/index.native.js +38 -25
  192. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  193. package/dist/cjs/fields/Signature/index.cjs +26 -18
  194. package/dist/cjs/fields/Signature/index.native.js +26 -18
  195. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  196. package/dist/cjs/fields/Slider/index.cjs +39 -11
  197. package/dist/cjs/fields/Slider/index.native.js +60 -14
  198. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  199. package/dist/cjs/fields/Stepper/index.cjs +17 -7
  200. package/dist/cjs/fields/Stepper/index.native.js +17 -7
  201. package/dist/cjs/fields/Stepper/index.native.js.map +1 -1
  202. package/dist/cjs/fields/Stepper/resolveStepperPlacement.cjs +32 -0
  203. package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js +35 -0
  204. package/dist/cjs/fields/Stepper/resolveStepperPlacement.native.js.map +1 -0
  205. package/dist/cjs/fields/Switch/index.cjs +134 -46
  206. package/dist/cjs/fields/Switch/index.native.js +154 -47
  207. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  208. package/dist/cjs/fields/TextArea/index.cjs +33 -35
  209. package/dist/cjs/fields/TextArea/index.native.js +33 -38
  210. package/dist/cjs/fields/TextArea/index.native.js.map +1 -1
  211. package/dist/cjs/fields/TimePicker/index.cjs +6 -2
  212. package/dist/cjs/fields/TimePicker/index.native.js +8 -2
  213. package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
  214. package/dist/cjs/fields/TimePicker/parts.cjs +54 -495
  215. package/dist/cjs/fields/TimePicker/parts.native.js +59 -526
  216. package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
  217. package/dist/cjs/fields/TimeRangeScrubber/geometry.cjs +288 -0
  218. package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js +352 -0
  219. package/dist/cjs/fields/TimeRangeScrubber/geometry.native.js.map +1 -0
  220. package/dist/cjs/fields/TimeRangeScrubber/index.cjs +855 -0
  221. package/dist/cjs/fields/TimeRangeScrubber/index.native.js +936 -0
  222. package/dist/cjs/fields/TimeRangeScrubber/index.native.js.map +1 -0
  223. package/dist/cjs/fields/ToggleGroup/index.cjs +56 -46
  224. package/dist/cjs/fields/ToggleGroup/index.native.js +59 -51
  225. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  226. package/dist/cjs/fields/selectedOrder.cjs +36 -0
  227. package/dist/cjs/fields/selectedOrder.native.js +46 -0
  228. package/dist/cjs/fields/selectedOrder.native.js.map +1 -0
  229. package/dist/cjs/index.cjs +47 -11
  230. package/dist/cjs/index.native.js +47 -11
  231. package/dist/cjs/index.native.js.map +1 -1
  232. package/dist/cjs/shared/TimeColumn.cjs +122 -80
  233. package/dist/cjs/shared/TimeColumn.native.js +146 -88
  234. package/dist/cjs/shared/TimeColumn.native.js.map +1 -1
  235. package/dist/cjs/shared/colorRamps.cjs +23 -1
  236. package/dist/cjs/shared/colorRamps.native.js +23 -1
  237. package/dist/cjs/shared/colorRamps.native.js.map +1 -1
  238. package/dist/cjs/shared/floatingList.cjs +17 -4
  239. package/dist/cjs/shared/floatingList.native.js +17 -4
  240. package/dist/cjs/shared/floatingList.native.js.map +1 -1
  241. package/dist/cjs/shared/useKeyboardInset.cjs +48 -0
  242. package/dist/cjs/shared/useKeyboardInset.native.js +53 -0
  243. package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -0
  244. package/dist/cjs/shared/utils.cjs +79 -73
  245. package/dist/cjs/shared/utils.native.js +127 -75
  246. package/dist/cjs/shared/utils.native.js.map +1 -1
  247. package/dist/cjs/themedPrimitives.cjs +4 -2
  248. package/dist/cjs/themedPrimitives.native.js +4 -2
  249. package/dist/cjs/themedPrimitives.native.js.map +1 -1
  250. package/dist/esm/AdaptivePopup/index.mjs +138 -20
  251. package/dist/esm/AdaptivePopup/index.mjs.map +1 -1
  252. package/dist/esm/AdaptivePopup/index.native.js +138 -21
  253. package/dist/esm/AdaptivePopup/index.native.js.map +1 -1
  254. package/dist/esm/Button/index.mjs +14 -5
  255. package/dist/esm/Button/index.mjs.map +1 -1
  256. package/dist/esm/Button/index.native.js +20 -5
  257. package/dist/esm/Button/index.native.js.map +1 -1
  258. package/dist/esm/Chip/index.mjs +7 -3
  259. package/dist/esm/Chip/index.mjs.map +1 -1
  260. package/dist/esm/Chip/index.native.js +7 -3
  261. package/dist/esm/Chip/index.native.js.map +1 -1
  262. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.mjs +118 -0
  263. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.mjs.map +1 -0
  264. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js +123 -0
  265. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -0
  266. package/dist/esm/ContextualSaveBar/clientKnownIdentity.mjs +12 -0
  267. package/dist/esm/ContextualSaveBar/clientKnownIdentity.mjs.map +1 -0
  268. package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js +12 -0
  269. package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -0
  270. package/dist/esm/ContextualSaveBar/commitImmediateField.mjs +25 -0
  271. package/dist/esm/ContextualSaveBar/commitImmediateField.mjs.map +1 -0
  272. package/dist/esm/ContextualSaveBar/commitImmediateField.native.js +27 -0
  273. package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -0
  274. package/dist/esm/ContextualSaveBar/index.mjs +274 -0
  275. package/dist/esm/ContextualSaveBar/index.mjs.map +1 -0
  276. package/dist/esm/ContextualSaveBar/index.native.js +295 -0
  277. package/dist/esm/ContextualSaveBar/index.native.js.map +1 -0
  278. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.mjs +24 -0
  279. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.mjs.map +1 -0
  280. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js +27 -0
  281. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -0
  282. package/dist/esm/ControlGroup/index.mjs +11 -10
  283. package/dist/esm/ControlGroup/index.mjs.map +1 -1
  284. package/dist/esm/ControlGroup/index.native.js +11 -11
  285. package/dist/esm/ControlGroup/index.native.js.map +1 -1
  286. package/dist/esm/DescriptionList/index.mjs +389 -0
  287. package/dist/esm/DescriptionList/index.mjs.map +1 -0
  288. package/dist/esm/DescriptionList/index.native.js +411 -0
  289. package/dist/esm/DescriptionList/index.native.js.map +1 -0
  290. package/dist/esm/ErrorSummary.native.js.map +1 -1
  291. package/dist/esm/FieldDisplay/editMode.native.js.map +1 -1
  292. package/dist/esm/FieldDisplay/formatters.native.js.map +1 -1
  293. package/dist/esm/FieldDisplay/index.mjs +103 -45
  294. package/dist/esm/FieldDisplay/index.mjs.map +1 -1
  295. package/dist/esm/FieldDisplay/index.native.js +107 -46
  296. package/dist/esm/FieldDisplay/index.native.js.map +1 -1
  297. package/dist/esm/FieldGroup.mjs +14 -4
  298. package/dist/esm/FieldGroup.mjs.map +1 -1
  299. package/dist/esm/FieldGroup.native.js +14 -4
  300. package/dist/esm/FieldGroup.native.js.map +1 -1
  301. package/dist/esm/FloatingPanel/index.mjs +33 -11
  302. package/dist/esm/FloatingPanel/index.mjs.map +1 -1
  303. package/dist/esm/FloatingPanel/index.native.js +231 -48
  304. package/dist/esm/FloatingPanel/index.native.js.map +1 -1
  305. package/dist/esm/FloatingPanel/useFloatingPanel.mjs +27 -11
  306. package/dist/esm/FloatingPanel/useFloatingPanel.mjs.map +1 -1
  307. package/dist/esm/FloatingPanel/useFloatingPanel.native.js +27 -11
  308. package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  309. package/dist/esm/Form/index.mjs +50 -29
  310. package/dist/esm/Form/index.mjs.map +1 -1
  311. package/dist/esm/Form/index.native.js +55 -29
  312. package/dist/esm/Form/index.native.js.map +1 -1
  313. package/dist/esm/Form/validateOn.native.js.map +1 -1
  314. package/dist/esm/FormGrid.mjs +11 -4
  315. package/dist/esm/FormGrid.mjs.map +1 -1
  316. package/dist/esm/FormGrid.native.js +11 -4
  317. package/dist/esm/FormGrid.native.js.map +1 -1
  318. package/dist/esm/FormSection.mjs +10 -3
  319. package/dist/esm/FormSection.mjs.map +1 -1
  320. package/dist/esm/FormSection.native.js +10 -3
  321. package/dist/esm/FormSection.native.js.map +1 -1
  322. package/dist/esm/InputParts/index.mjs +75 -60
  323. package/dist/esm/InputParts/index.mjs.map +1 -1
  324. package/dist/esm/InputParts/index.native.js +75 -63
  325. package/dist/esm/InputParts/index.native.js.map +1 -1
  326. package/dist/esm/Label/index.mjs +1 -0
  327. package/dist/esm/Label/index.mjs.map +1 -1
  328. package/dist/esm/Label/index.native.js +1 -0
  329. package/dist/esm/Label/index.native.js.map +1 -1
  330. package/dist/esm/Skeleton/index.native.js.map +1 -1
  331. package/dist/esm/Spinner/SpinnerGlyph.native.js.map +1 -1
  332. package/dist/esm/Spinner/index.mjs +1 -0
  333. package/dist/esm/Spinner/index.mjs.map +1 -1
  334. package/dist/esm/Spinner/index.native.js +16 -3
  335. package/dist/esm/Spinner/index.native.js.map +1 -1
  336. package/dist/esm/Spinner/spinnerSize.native.js.map +1 -1
  337. package/dist/esm/Table/index.native.js.map +1 -1
  338. package/dist/esm/Wheel/WheelEdgeFade.mjs +5 -0
  339. package/dist/esm/Wheel/WheelEdgeFade.mjs.map +1 -0
  340. package/dist/esm/Wheel/WheelEdgeFade.native.js +88 -0
  341. package/dist/esm/Wheel/WheelEdgeFade.native.js.map +1 -0
  342. package/dist/esm/Wheel/haptic.mjs +10 -0
  343. package/dist/esm/Wheel/haptic.mjs.map +1 -0
  344. package/dist/esm/Wheel/haptic.native.js +11 -0
  345. package/dist/esm/Wheel/haptic.native.js.map +1 -0
  346. package/dist/esm/Wheel/index.mjs +294 -110
  347. package/dist/esm/Wheel/index.mjs.map +1 -1
  348. package/dist/esm/Wheel/index.native.js +312 -113
  349. package/dist/esm/Wheel/index.native.js.map +1 -1
  350. package/dist/esm/actionLabel.native.js.map +1 -1
  351. package/dist/esm/fieldDefaults.mjs +3 -1
  352. package/dist/esm/fieldDefaults.mjs.map +1 -1
  353. package/dist/esm/fieldDefaults.native.js +5 -1
  354. package/dist/esm/fieldDefaults.native.js.map +1 -1
  355. package/dist/esm/fieldLayout.mjs +12 -8
  356. package/dist/esm/fieldLayout.mjs.map +1 -1
  357. package/dist/esm/fieldLayout.native.js +12 -8
  358. package/dist/esm/fieldLayout.native.js.map +1 -1
  359. package/dist/esm/fields/Barcode/BarcodePreview.mjs +80 -19
  360. package/dist/esm/fields/Barcode/BarcodePreview.mjs.map +1 -1
  361. package/dist/esm/fields/Barcode/BarcodePreview.native.js +86 -19
  362. package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
  363. package/dist/esm/fields/Barcode/code128.native.js.map +1 -1
  364. package/dist/esm/fields/Barcode/index.mjs +8 -2
  365. package/dist/esm/fields/Barcode/index.mjs.map +1 -1
  366. package/dist/esm/fields/Barcode/index.native.js +8 -2
  367. package/dist/esm/fields/Barcode/index.native.js.map +1 -1
  368. package/dist/esm/fields/Barcode/qr.mjs +379 -0
  369. package/dist/esm/fields/Barcode/qr.mjs.map +1 -0
  370. package/dist/esm/fields/Barcode/qr.native.js +607 -0
  371. package/dist/esm/fields/Barcode/qr.native.js.map +1 -0
  372. package/dist/esm/fields/Barcode/scannerTypes.mjs +6 -2
  373. package/dist/esm/fields/Barcode/scannerTypes.mjs.map +1 -1
  374. package/dist/esm/fields/Barcode/scannerTypes.native.js +6 -2
  375. package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
  376. package/dist/esm/fields/Checkbox/Checkbox.mjs +14 -8
  377. package/dist/esm/fields/Checkbox/Checkbox.mjs.map +1 -1
  378. package/dist/esm/fields/Checkbox/Checkbox.native.js +16 -8
  379. package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
  380. package/dist/esm/fields/Checkbox/CheckboxBox.mjs +15 -1
  381. package/dist/esm/fields/Checkbox/CheckboxBox.mjs.map +1 -1
  382. package/dist/esm/fields/Checkbox/CheckboxBox.native.js +18 -1
  383. package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  384. package/dist/esm/fields/Checkbox/CheckboxCard.mjs +0 -1
  385. package/dist/esm/fields/Checkbox/CheckboxCard.mjs.map +1 -1
  386. package/dist/esm/fields/Checkbox/CheckboxCard.native.js +0 -1
  387. package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  388. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.mjs +1 -0
  389. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.mjs.map +1 -1
  390. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js +1 -0
  391. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  392. package/dist/esm/fields/Checkbox/CheckboxGroup.mjs +8 -5
  393. package/dist/esm/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
  394. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js +9 -6
  395. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  396. package/dist/esm/fields/Checkbox/index.mjs +8 -4
  397. package/dist/esm/fields/Checkbox/index.mjs.map +1 -1
  398. package/dist/esm/fields/Checkbox/index.native.js +8 -4
  399. package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
  400. package/dist/esm/fields/ColorPicker/index.mjs +13 -10
  401. package/dist/esm/fields/ColorPicker/index.mjs.map +1 -1
  402. package/dist/esm/fields/ColorPicker/index.native.js +15 -11
  403. package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
  404. package/dist/esm/fields/ColorPicker/parts.mjs +8 -7
  405. package/dist/esm/fields/ColorPicker/parts.mjs.map +1 -1
  406. package/dist/esm/fields/ColorPicker/parts.native.js +8 -7
  407. package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
  408. package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
  409. package/dist/esm/fields/Combobox/index.mjs +60 -55
  410. package/dist/esm/fields/Combobox/index.mjs.map +1 -1
  411. package/dist/esm/fields/Combobox/index.native.js +71 -75
  412. package/dist/esm/fields/Combobox/index.native.js.map +1 -1
  413. package/dist/esm/fields/DatePicker/Calendar.mjs +12 -4
  414. package/dist/esm/fields/DatePicker/Calendar.mjs.map +1 -1
  415. package/dist/esm/fields/DatePicker/Calendar.native.js +12 -4
  416. package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
  417. package/dist/esm/fields/DatePicker/DateRangePicker.mjs +20 -6
  418. package/dist/esm/fields/DatePicker/DateRangePicker.mjs.map +1 -1
  419. package/dist/esm/fields/DatePicker/DateRangePicker.native.js +22 -6
  420. package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  421. package/dist/esm/fields/DatePicker/DatetimePicker.mjs +25 -139
  422. package/dist/esm/fields/DatePicker/DatetimePicker.mjs.map +1 -1
  423. package/dist/esm/fields/DatePicker/DatetimePicker.native.js +27 -153
  424. package/dist/esm/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  425. package/dist/esm/fields/DatePicker/MonthPicker.mjs +2 -0
  426. package/dist/esm/fields/DatePicker/MonthPicker.mjs.map +1 -1
  427. package/dist/esm/fields/DatePicker/MonthPicker.native.js +4 -0
  428. package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
  429. package/dist/esm/fields/DatePicker/MultiDatePicker.mjs +27 -10
  430. package/dist/esm/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
  431. package/dist/esm/fields/DatePicker/MultiDatePicker.native.js +29 -10
  432. package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  433. package/dist/esm/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  434. package/dist/esm/fields/DatePicker/index.mjs +2 -0
  435. package/dist/esm/fields/DatePicker/index.mjs.map +1 -1
  436. package/dist/esm/fields/DatePicker/index.native.js +4 -0
  437. package/dist/esm/fields/DatePicker/index.native.js.map +1 -1
  438. package/dist/esm/fields/DatePicker/parts.mjs +52 -26
  439. package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
  440. package/dist/esm/fields/DatePicker/parts.native.js +59 -26
  441. package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
  442. package/dist/esm/fields/DatePicker/utils.native.js.map +1 -1
  443. package/dist/esm/fields/Duration/durationMath.mjs +64 -0
  444. package/dist/esm/fields/Duration/durationMath.mjs.map +1 -0
  445. package/dist/esm/fields/Duration/durationMath.native.js +83 -0
  446. package/dist/esm/fields/Duration/durationMath.native.js.map +1 -0
  447. package/dist/esm/fields/Duration/index.mjs +70 -102
  448. package/dist/esm/fields/Duration/index.mjs.map +1 -1
  449. package/dist/esm/fields/Duration/index.native.js +77 -109
  450. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  451. package/dist/esm/fields/FileUpload/filePickerTypes.mjs +2 -0
  452. package/dist/esm/fields/FileUpload/filePickerTypes.mjs.map +1 -0
  453. package/dist/esm/fields/FileUpload/filePickerTypes.native.js +2 -0
  454. package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -0
  455. package/dist/esm/fields/FileUpload/index.mjs +349 -157
  456. package/dist/esm/fields/FileUpload/index.mjs.map +1 -1
  457. package/dist/esm/fields/FileUpload/index.native.js +438 -167
  458. package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
  459. package/dist/esm/fields/FileUpload/nativeFilePicker.mjs +11 -0
  460. package/dist/esm/fields/FileUpload/nativeFilePicker.mjs.map +1 -0
  461. package/dist/esm/fields/FileUpload/nativeFilePicker.native.js +143 -0
  462. package/dist/esm/fields/FileUpload/nativeFilePicker.native.js.map +1 -0
  463. package/dist/esm/fields/FileUpload/nativePickerLoader.mjs +35 -0
  464. package/dist/esm/fields/FileUpload/nativePickerLoader.mjs.map +1 -0
  465. package/dist/esm/fields/FileUpload/nativePickerLoader.native.js +35 -0
  466. package/dist/esm/fields/FileUpload/nativePickerLoader.native.js.map +1 -0
  467. package/dist/esm/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  468. package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
  469. package/dist/esm/fields/Geolocation/mapMath.native.js.map +1 -1
  470. package/dist/esm/fields/Geolocation/mapTypes.native.js.map +1 -1
  471. package/dist/esm/fields/Icon/drawnSet.mjs +358 -0
  472. package/dist/esm/fields/Icon/drawnSet.mjs.map +1 -0
  473. package/dist/esm/fields/Icon/drawnSet.native.js +365 -0
  474. package/dist/esm/fields/Icon/drawnSet.native.js.map +1 -0
  475. package/dist/esm/fields/Icon/index.mjs +349 -0
  476. package/dist/esm/fields/Icon/index.mjs.map +1 -0
  477. package/dist/esm/fields/Icon/index.native.js +364 -0
  478. package/dist/esm/fields/Icon/index.native.js.map +1 -0
  479. package/dist/esm/fields/ImageField/index.mjs +20 -27
  480. package/dist/esm/fields/ImageField/index.mjs.map +1 -1
  481. package/dist/esm/fields/ImageField/index.native.js +20 -28
  482. package/dist/esm/fields/ImageField/index.native.js.map +1 -1
  483. package/dist/esm/fields/Input/index.mjs +5 -1
  484. package/dist/esm/fields/Input/index.mjs.map +1 -1
  485. package/dist/esm/fields/Input/index.native.js +5 -1
  486. package/dist/esm/fields/Input/index.native.js.map +1 -1
  487. package/dist/esm/fields/MentionInput/index.mjs +127 -58
  488. package/dist/esm/fields/MentionInput/index.mjs.map +1 -1
  489. package/dist/esm/fields/MentionInput/index.native.js +152 -81
  490. package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
  491. package/dist/esm/fields/OTPInput/index.mjs +10 -4
  492. package/dist/esm/fields/OTPInput/index.mjs.map +1 -1
  493. package/dist/esm/fields/OTPInput/index.native.js +10 -4
  494. package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
  495. package/dist/esm/fields/OTPInput/otpCellCss.native.js.map +1 -1
  496. package/dist/esm/fields/PhoneInput/dialCodes.native.js.map +1 -1
  497. package/dist/esm/fields/PhoneInput/index.mjs +5 -3
  498. package/dist/esm/fields/PhoneInput/index.mjs.map +1 -1
  499. package/dist/esm/fields/PhoneInput/index.native.js +5 -3
  500. package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
  501. package/dist/esm/fields/PhoneInput/phone.native.js.map +1 -1
  502. package/dist/esm/fields/Progress/index.mjs +29 -19
  503. package/dist/esm/fields/Progress/index.mjs.map +1 -1
  504. package/dist/esm/fields/Progress/index.native.js +31 -19
  505. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  506. package/dist/esm/fields/RadioGroup/index.mjs +16 -15
  507. package/dist/esm/fields/RadioGroup/index.mjs.map +1 -1
  508. package/dist/esm/fields/RadioGroup/index.native.js +16 -15
  509. package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
  510. package/dist/esm/fields/Rating/index.mjs +29 -22
  511. package/dist/esm/fields/Rating/index.mjs.map +1 -1
  512. package/dist/esm/fields/Rating/index.native.js +31 -24
  513. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  514. package/dist/esm/fields/Rating/ratingMath.mjs +11 -0
  515. package/dist/esm/fields/Rating/ratingMath.mjs.map +1 -0
  516. package/dist/esm/fields/Rating/ratingMath.native.js +11 -0
  517. package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -0
  518. package/dist/esm/fields/Rating/types.native.js.map +1 -1
  519. package/dist/esm/fields/SearchInput/index.mjs +220 -155
  520. package/dist/esm/fields/SearchInput/index.mjs.map +1 -1
  521. package/dist/esm/fields/SearchInput/index.native.js +229 -159
  522. package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
  523. package/dist/esm/fields/Select/index.mjs +39 -22
  524. package/dist/esm/fields/Select/index.mjs.map +1 -1
  525. package/dist/esm/fields/Select/index.native.js +41 -28
  526. package/dist/esm/fields/Select/index.native.js.map +1 -1
  527. package/dist/esm/fields/Signature/index.mjs +26 -18
  528. package/dist/esm/fields/Signature/index.mjs.map +1 -1
  529. package/dist/esm/fields/Signature/index.native.js +26 -18
  530. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  531. package/dist/esm/fields/Slider/index.mjs +40 -12
  532. package/dist/esm/fields/Slider/index.mjs.map +1 -1
  533. package/dist/esm/fields/Slider/index.native.js +61 -15
  534. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  535. package/dist/esm/fields/Slider/jumpMotion.native.js.map +1 -1
  536. package/dist/esm/fields/Stepper/index.mjs +17 -8
  537. package/dist/esm/fields/Stepper/index.mjs.map +1 -1
  538. package/dist/esm/fields/Stepper/index.native.js +17 -8
  539. package/dist/esm/fields/Stepper/index.native.js.map +1 -1
  540. package/dist/esm/fields/Stepper/resolveStepperPlacement.mjs +7 -0
  541. package/dist/esm/fields/Stepper/resolveStepperPlacement.mjs.map +1 -0
  542. package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js +7 -0
  543. package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -0
  544. package/dist/esm/fields/Switch/index.mjs +135 -47
  545. package/dist/esm/fields/Switch/index.mjs.map +1 -1
  546. package/dist/esm/fields/Switch/index.native.js +155 -48
  547. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  548. package/dist/esm/fields/TextArea/index.mjs +34 -36
  549. package/dist/esm/fields/TextArea/index.mjs.map +1 -1
  550. package/dist/esm/fields/TextArea/index.native.js +34 -39
  551. package/dist/esm/fields/TextArea/index.native.js.map +1 -1
  552. package/dist/esm/fields/TimePicker/index.mjs +7 -3
  553. package/dist/esm/fields/TimePicker/index.mjs.map +1 -1
  554. package/dist/esm/fields/TimePicker/index.native.js +9 -3
  555. package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
  556. package/dist/esm/fields/TimePicker/parts.mjs +58 -499
  557. package/dist/esm/fields/TimePicker/parts.mjs.map +1 -1
  558. package/dist/esm/fields/TimePicker/parts.native.js +63 -530
  559. package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
  560. package/dist/esm/fields/TimeRangeScrubber/geometry.mjs +229 -0
  561. package/dist/esm/fields/TimeRangeScrubber/geometry.mjs.map +1 -0
  562. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js +290 -0
  563. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -0
  564. package/dist/esm/fields/TimeRangeScrubber/index.mjs +822 -0
  565. package/dist/esm/fields/TimeRangeScrubber/index.mjs.map +1 -0
  566. package/dist/esm/fields/TimeRangeScrubber/index.native.js +900 -0
  567. package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -0
  568. package/dist/esm/fields/ToggleGroup/index.mjs +58 -48
  569. package/dist/esm/fields/ToggleGroup/index.mjs.map +1 -1
  570. package/dist/esm/fields/ToggleGroup/index.native.js +61 -53
  571. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  572. package/dist/esm/fields/selectedOrder.mjs +11 -0
  573. package/dist/esm/fields/selectedOrder.mjs.map +1 -0
  574. package/dist/esm/fields/selectedOrder.native.js +18 -0
  575. package/dist/esm/fields/selectedOrder.native.js.map +1 -0
  576. package/dist/esm/formSpacing.native.js.map +1 -1
  577. package/dist/esm/hooks/useFocusManagement.native.js.map +1 -1
  578. package/dist/esm/index.mjs +15 -8
  579. package/dist/esm/index.mjs.map +1 -1
  580. package/dist/esm/index.native.js +15 -8
  581. package/dist/esm/index.native.js.map +1 -1
  582. package/dist/esm/requiredMarking.native.js.map +1 -1
  583. package/dist/esm/shared/TimeColumn.mjs +123 -80
  584. package/dist/esm/shared/TimeColumn.mjs.map +1 -1
  585. package/dist/esm/shared/TimeColumn.native.js +147 -88
  586. package/dist/esm/shared/TimeColumn.native.js.map +1 -1
  587. package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
  588. package/dist/esm/shared/colorRamps.mjs +23 -2
  589. package/dist/esm/shared/colorRamps.mjs.map +1 -1
  590. package/dist/esm/shared/colorRamps.native.js +23 -2
  591. package/dist/esm/shared/colorRamps.native.js.map +1 -1
  592. package/dist/esm/shared/devWarn.native.js.map +1 -1
  593. package/dist/esm/shared/floatingList.mjs +18 -5
  594. package/dist/esm/shared/floatingList.mjs.map +1 -1
  595. package/dist/esm/shared/floatingList.native.js +18 -5
  596. package/dist/esm/shared/floatingList.native.js.map +1 -1
  597. package/dist/esm/shared/focusManagement.native.js.map +1 -1
  598. package/dist/esm/shared/groupContext.native.js.map +1 -1
  599. package/dist/esm/shared/i18n.native.js.map +1 -1
  600. package/dist/esm/shared/t.native.js.map +1 -1
  601. package/dist/esm/shared/tableCellContext.native.js.map +1 -1
  602. package/dist/esm/shared/useDragScroll.native.js.map +1 -1
  603. package/dist/esm/shared/useKeyboardInset.mjs +23 -0
  604. package/dist/esm/shared/useKeyboardInset.mjs.map +1 -0
  605. package/dist/esm/shared/useKeyboardInset.native.js +25 -0
  606. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -0
  607. package/dist/esm/shared/useSheetEscapeDismiss.native.js.map +1 -1
  608. package/dist/esm/shared/useWheelIncrement.native.js.map +1 -1
  609. package/dist/esm/shared/utils.mjs +80 -74
  610. package/dist/esm/shared/utils.mjs.map +1 -1
  611. package/dist/esm/shared/utils.native.js +128 -76
  612. package/dist/esm/shared/utils.native.js.map +1 -1
  613. package/dist/esm/shared/zIndex.native.js.map +1 -1
  614. package/dist/esm/themedPrimitives.mjs +5 -3
  615. package/dist/esm/themedPrimitives.mjs.map +1 -1
  616. package/dist/esm/themedPrimitives.native.js +5 -3
  617. package/dist/esm/themedPrimitives.native.js.map +1 -1
  618. package/dist/esm/types.native.js.map +1 -1
  619. package/dist/esm/utils/LinkCell.native.js.map +1 -1
  620. package/dist/jsx/AdaptivePopup/index.mjs +138 -20
  621. package/dist/jsx/AdaptivePopup/index.mjs.map +1 -1
  622. package/dist/jsx/AdaptivePopup/index.native.js +139 -21
  623. package/dist/jsx/AdaptivePopup/index.native.js.map +1 -1
  624. package/dist/jsx/Button/index.mjs +14 -5
  625. package/dist/jsx/Button/index.mjs.map +1 -1
  626. package/dist/jsx/Button/index.native.js +20 -5
  627. package/dist/jsx/Button/index.native.js.map +1 -1
  628. package/dist/jsx/Chip/index.mjs +7 -3
  629. package/dist/jsx/Chip/index.mjs.map +1 -1
  630. package/dist/jsx/Chip/index.native.js +7 -3
  631. package/dist/jsx/Chip/index.native.js.map +1 -1
  632. package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.mjs +118 -0
  633. package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.mjs.map +1 -0
  634. package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.native.js +151 -0
  635. package/dist/jsx/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -0
  636. package/dist/jsx/ContextualSaveBar/clientKnownIdentity.mjs +12 -0
  637. package/dist/jsx/ContextualSaveBar/clientKnownIdentity.mjs.map +1 -0
  638. package/dist/jsx/ContextualSaveBar/clientKnownIdentity.native.js +40 -0
  639. package/dist/jsx/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -0
  640. package/dist/jsx/ContextualSaveBar/commitImmediateField.mjs +25 -0
  641. package/dist/jsx/ContextualSaveBar/commitImmediateField.mjs.map +1 -0
  642. package/dist/jsx/ContextualSaveBar/commitImmediateField.native.js +55 -0
  643. package/dist/jsx/ContextualSaveBar/commitImmediateField.native.js.map +1 -0
  644. package/dist/jsx/ContextualSaveBar/index.mjs +274 -0
  645. package/dist/jsx/ContextualSaveBar/index.mjs.map +1 -0
  646. package/dist/jsx/ContextualSaveBar/index.native.js +325 -0
  647. package/dist/jsx/ContextualSaveBar/index.native.js.map +1 -0
  648. package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.mjs +24 -0
  649. package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.mjs.map +1 -0
  650. package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.native.js +55 -0
  651. package/dist/jsx/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -0
  652. package/dist/jsx/ControlGroup/index.mjs +11 -10
  653. package/dist/jsx/ControlGroup/index.mjs.map +1 -1
  654. package/dist/jsx/ControlGroup/index.native.js +10 -10
  655. package/dist/jsx/ControlGroup/index.native.js.map +1 -1
  656. package/dist/jsx/DescriptionList/index.mjs +389 -0
  657. package/dist/jsx/DescriptionList/index.mjs.map +1 -0
  658. package/dist/jsx/DescriptionList/index.native.js +441 -0
  659. package/dist/jsx/DescriptionList/index.native.js.map +1 -0
  660. package/dist/jsx/FieldDisplay/index.mjs +103 -45
  661. package/dist/jsx/FieldDisplay/index.mjs.map +1 -1
  662. package/dist/jsx/FieldDisplay/index.native.js +107 -44
  663. package/dist/jsx/FieldDisplay/index.native.js.map +1 -1
  664. package/dist/jsx/FieldGroup.mjs +14 -4
  665. package/dist/jsx/FieldGroup.mjs.map +1 -1
  666. package/dist/jsx/FieldGroup.native.js +13 -3
  667. package/dist/jsx/FieldGroup.native.js.map +1 -1
  668. package/dist/jsx/FloatingPanel/index.mjs +33 -11
  669. package/dist/jsx/FloatingPanel/index.mjs.map +1 -1
  670. package/dist/jsx/FloatingPanel/index.native.js +229 -46
  671. package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
  672. package/dist/jsx/FloatingPanel/useFloatingPanel.mjs +27 -11
  673. package/dist/jsx/FloatingPanel/useFloatingPanel.mjs.map +1 -1
  674. package/dist/jsx/FloatingPanel/useFloatingPanel.native.js +26 -9
  675. package/dist/jsx/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  676. package/dist/jsx/Form/index.mjs +50 -29
  677. package/dist/jsx/Form/index.mjs.map +1 -1
  678. package/dist/jsx/Form/index.native.js +56 -28
  679. package/dist/jsx/Form/index.native.js.map +1 -1
  680. package/dist/jsx/FormGrid.mjs +11 -4
  681. package/dist/jsx/FormGrid.mjs.map +1 -1
  682. package/dist/jsx/FormGrid.native.js +11 -4
  683. package/dist/jsx/FormGrid.native.js.map +1 -1
  684. package/dist/jsx/FormSection.mjs +10 -3
  685. package/dist/jsx/FormSection.mjs.map +1 -1
  686. package/dist/jsx/FormSection.native.js +10 -3
  687. package/dist/jsx/FormSection.native.js.map +1 -1
  688. package/dist/jsx/InputParts/index.mjs +75 -60
  689. package/dist/jsx/InputParts/index.mjs.map +1 -1
  690. package/dist/jsx/InputParts/index.native.js +77 -61
  691. package/dist/jsx/InputParts/index.native.js.map +1 -1
  692. package/dist/jsx/Label/index.mjs +1 -0
  693. package/dist/jsx/Label/index.mjs.map +1 -1
  694. package/dist/jsx/Label/index.native.js +1 -0
  695. package/dist/jsx/Label/index.native.js.map +1 -1
  696. package/dist/jsx/Spinner/index.mjs +1 -0
  697. package/dist/jsx/Spinner/index.mjs.map +1 -1
  698. package/dist/jsx/Spinner/index.native.js +14 -1
  699. package/dist/jsx/Spinner/index.native.js.map +1 -1
  700. package/dist/jsx/Wheel/WheelEdgeFade.mjs +5 -0
  701. package/dist/jsx/Wheel/WheelEdgeFade.mjs.map +1 -0
  702. package/dist/jsx/Wheel/WheelEdgeFade.native.js +116 -0
  703. package/dist/jsx/Wheel/WheelEdgeFade.native.js.map +1 -0
  704. package/dist/jsx/Wheel/haptic.mjs +10 -0
  705. package/dist/jsx/Wheel/haptic.mjs.map +1 -0
  706. package/dist/jsx/Wheel/haptic.native.js +39 -0
  707. package/dist/jsx/Wheel/haptic.native.js.map +1 -0
  708. package/dist/jsx/Wheel/index.mjs +294 -110
  709. package/dist/jsx/Wheel/index.mjs.map +1 -1
  710. package/dist/jsx/Wheel/index.native.js +311 -112
  711. package/dist/jsx/Wheel/index.native.js.map +1 -1
  712. package/dist/jsx/fieldDefaults.mjs +3 -1
  713. package/dist/jsx/fieldDefaults.mjs.map +1 -1
  714. package/dist/jsx/fieldDefaults.native.js +6 -0
  715. package/dist/jsx/fieldDefaults.native.js.map +1 -1
  716. package/dist/jsx/fieldLayout.mjs +12 -8
  717. package/dist/jsx/fieldLayout.mjs.map +1 -1
  718. package/dist/jsx/fieldLayout.native.js +11 -7
  719. package/dist/jsx/fieldLayout.native.js.map +1 -1
  720. package/dist/jsx/fields/Barcode/BarcodePreview.mjs +80 -19
  721. package/dist/jsx/fields/Barcode/BarcodePreview.mjs.map +1 -1
  722. package/dist/jsx/fields/Barcode/BarcodePreview.native.js +86 -18
  723. package/dist/jsx/fields/Barcode/BarcodePreview.native.js.map +1 -1
  724. package/dist/jsx/fields/Barcode/index.mjs +8 -2
  725. package/dist/jsx/fields/Barcode/index.mjs.map +1 -1
  726. package/dist/jsx/fields/Barcode/index.native.js +8 -2
  727. package/dist/jsx/fields/Barcode/index.native.js.map +1 -1
  728. package/dist/jsx/fields/Barcode/qr.mjs +379 -0
  729. package/dist/jsx/fields/Barcode/qr.mjs.map +1 -0
  730. package/dist/jsx/fields/Barcode/qr.native.js +637 -0
  731. package/dist/jsx/fields/Barcode/qr.native.js.map +1 -0
  732. package/dist/jsx/fields/Barcode/scannerTypes.mjs +6 -2
  733. package/dist/jsx/fields/Barcode/scannerTypes.mjs.map +1 -1
  734. package/dist/jsx/fields/Barcode/scannerTypes.native.js +6 -1
  735. package/dist/jsx/fields/Barcode/scannerTypes.native.js.map +1 -1
  736. package/dist/jsx/fields/Checkbox/Checkbox.mjs +14 -8
  737. package/dist/jsx/fields/Checkbox/Checkbox.mjs.map +1 -1
  738. package/dist/jsx/fields/Checkbox/Checkbox.native.js +14 -6
  739. package/dist/jsx/fields/Checkbox/Checkbox.native.js.map +1 -1
  740. package/dist/jsx/fields/Checkbox/CheckboxBox.mjs +15 -1
  741. package/dist/jsx/fields/Checkbox/CheckboxBox.mjs.map +1 -1
  742. package/dist/jsx/fields/Checkbox/CheckboxBox.native.js +21 -1
  743. package/dist/jsx/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  744. package/dist/jsx/fields/Checkbox/CheckboxCard.mjs +0 -1
  745. package/dist/jsx/fields/Checkbox/CheckboxCard.mjs.map +1 -1
  746. package/dist/jsx/fields/Checkbox/CheckboxCard.native.js +0 -1
  747. package/dist/jsx/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  748. package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.mjs +1 -0
  749. package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.mjs.map +1 -1
  750. package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.native.js +1 -0
  751. package/dist/jsx/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  752. package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs +8 -5
  753. package/dist/jsx/fields/Checkbox/CheckboxGroup.mjs.map +1 -1
  754. package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js +7 -4
  755. package/dist/jsx/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  756. package/dist/jsx/fields/Checkbox/index.mjs +8 -4
  757. package/dist/jsx/fields/Checkbox/index.mjs.map +1 -1
  758. package/dist/jsx/fields/Checkbox/index.native.js +11 -3
  759. package/dist/jsx/fields/Checkbox/index.native.js.map +1 -1
  760. package/dist/jsx/fields/ColorPicker/index.mjs +13 -10
  761. package/dist/jsx/fields/ColorPicker/index.mjs.map +1 -1
  762. package/dist/jsx/fields/ColorPicker/index.native.js +15 -11
  763. package/dist/jsx/fields/ColorPicker/index.native.js.map +1 -1
  764. package/dist/jsx/fields/ColorPicker/parts.mjs +8 -7
  765. package/dist/jsx/fields/ColorPicker/parts.mjs.map +1 -1
  766. package/dist/jsx/fields/ColorPicker/parts.native.js +10 -6
  767. package/dist/jsx/fields/ColorPicker/parts.native.js.map +1 -1
  768. package/dist/jsx/fields/Combobox/index.mjs +60 -55
  769. package/dist/jsx/fields/Combobox/index.mjs.map +1 -1
  770. package/dist/jsx/fields/Combobox/index.native.js +69 -73
  771. package/dist/jsx/fields/Combobox/index.native.js.map +1 -1
  772. package/dist/jsx/fields/DatePicker/Calendar.mjs +12 -4
  773. package/dist/jsx/fields/DatePicker/Calendar.mjs.map +1 -1
  774. package/dist/jsx/fields/DatePicker/Calendar.native.js +12 -4
  775. package/dist/jsx/fields/DatePicker/Calendar.native.js.map +1 -1
  776. package/dist/jsx/fields/DatePicker/DateRangePicker.mjs +20 -6
  777. package/dist/jsx/fields/DatePicker/DateRangePicker.mjs.map +1 -1
  778. package/dist/jsx/fields/DatePicker/DateRangePicker.native.js +21 -5
  779. package/dist/jsx/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  780. package/dist/jsx/fields/DatePicker/DatetimePicker.mjs +25 -139
  781. package/dist/jsx/fields/DatePicker/DatetimePicker.mjs.map +1 -1
  782. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +24 -150
  783. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  784. package/dist/jsx/fields/DatePicker/MonthPicker.mjs +2 -0
  785. package/dist/jsx/fields/DatePicker/MonthPicker.mjs.map +1 -1
  786. package/dist/jsx/fields/DatePicker/MonthPicker.native.js +4 -0
  787. package/dist/jsx/fields/DatePicker/MonthPicker.native.js.map +1 -1
  788. package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs +27 -10
  789. package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
  790. package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js +28 -9
  791. package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  792. package/dist/jsx/fields/DatePicker/index.mjs +2 -0
  793. package/dist/jsx/fields/DatePicker/index.mjs.map +1 -1
  794. package/dist/jsx/fields/DatePicker/index.native.js +4 -0
  795. package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
  796. package/dist/jsx/fields/DatePicker/parts.mjs +52 -26
  797. package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
  798. package/dist/jsx/fields/DatePicker/parts.native.js +72 -38
  799. package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
  800. package/dist/jsx/fields/Duration/durationMath.mjs +64 -0
  801. package/dist/jsx/fields/Duration/durationMath.mjs.map +1 -0
  802. package/dist/jsx/fields/Duration/durationMath.native.js +115 -0
  803. package/dist/jsx/fields/Duration/durationMath.native.js.map +1 -0
  804. package/dist/jsx/fields/Duration/index.mjs +70 -102
  805. package/dist/jsx/fields/Duration/index.mjs.map +1 -1
  806. package/dist/jsx/fields/Duration/index.native.js +87 -118
  807. package/dist/jsx/fields/Duration/index.native.js.map +1 -1
  808. package/dist/jsx/fields/FileUpload/filePickerTypes.mjs +2 -0
  809. package/dist/jsx/fields/FileUpload/filePickerTypes.mjs.map +1 -0
  810. package/dist/jsx/fields/FileUpload/filePickerTypes.native.js +21 -0
  811. package/dist/jsx/fields/FileUpload/filePickerTypes.native.js.map +1 -0
  812. package/dist/jsx/fields/FileUpload/index.mjs +349 -157
  813. package/dist/jsx/fields/FileUpload/index.mjs.map +1 -1
  814. package/dist/jsx/fields/FileUpload/index.native.js +435 -164
  815. package/dist/jsx/fields/FileUpload/index.native.js.map +1 -1
  816. package/dist/jsx/fields/FileUpload/nativeFilePicker.mjs +11 -0
  817. package/dist/jsx/fields/FileUpload/nativeFilePicker.mjs.map +1 -0
  818. package/dist/jsx/fields/FileUpload/nativeFilePicker.native.js +174 -0
  819. package/dist/jsx/fields/FileUpload/nativeFilePicker.native.js.map +1 -0
  820. package/dist/jsx/fields/FileUpload/nativePickerLoader.mjs +35 -0
  821. package/dist/jsx/fields/FileUpload/nativePickerLoader.mjs.map +1 -0
  822. package/dist/jsx/fields/FileUpload/nativePickerLoader.native.js +65 -0
  823. package/dist/jsx/fields/FileUpload/nativePickerLoader.native.js.map +1 -0
  824. package/dist/jsx/fields/Icon/drawnSet.mjs +358 -0
  825. package/dist/jsx/fields/Icon/drawnSet.mjs.map +1 -0
  826. package/dist/jsx/fields/Icon/drawnSet.native.js +398 -0
  827. package/dist/jsx/fields/Icon/drawnSet.native.js.map +1 -0
  828. package/dist/jsx/fields/Icon/index.mjs +349 -0
  829. package/dist/jsx/fields/Icon/index.mjs.map +1 -0
  830. package/dist/jsx/fields/Icon/index.native.js +398 -0
  831. package/dist/jsx/fields/Icon/index.native.js.map +1 -0
  832. package/dist/jsx/fields/ImageField/index.mjs +20 -27
  833. package/dist/jsx/fields/ImageField/index.mjs.map +1 -1
  834. package/dist/jsx/fields/ImageField/index.native.js +18 -26
  835. package/dist/jsx/fields/ImageField/index.native.js.map +1 -1
  836. package/dist/jsx/fields/Input/index.mjs +5 -1
  837. package/dist/jsx/fields/Input/index.mjs.map +1 -1
  838. package/dist/jsx/fields/Input/index.native.js +5 -1
  839. package/dist/jsx/fields/Input/index.native.js.map +1 -1
  840. package/dist/jsx/fields/MentionInput/index.mjs +127 -58
  841. package/dist/jsx/fields/MentionInput/index.mjs.map +1 -1
  842. package/dist/jsx/fields/MentionInput/index.native.js +152 -80
  843. package/dist/jsx/fields/MentionInput/index.native.js.map +1 -1
  844. package/dist/jsx/fields/OTPInput/index.mjs +10 -4
  845. package/dist/jsx/fields/OTPInput/index.mjs.map +1 -1
  846. package/dist/jsx/fields/OTPInput/index.native.js +9 -3
  847. package/dist/jsx/fields/OTPInput/index.native.js.map +1 -1
  848. package/dist/jsx/fields/PhoneInput/index.mjs +5 -3
  849. package/dist/jsx/fields/PhoneInput/index.mjs.map +1 -1
  850. package/dist/jsx/fields/PhoneInput/index.native.js +4 -2
  851. package/dist/jsx/fields/PhoneInput/index.native.js.map +1 -1
  852. package/dist/jsx/fields/Progress/index.mjs +29 -19
  853. package/dist/jsx/fields/Progress/index.mjs.map +1 -1
  854. package/dist/jsx/fields/Progress/index.native.js +31 -19
  855. package/dist/jsx/fields/Progress/index.native.js.map +1 -1
  856. package/dist/jsx/fields/RadioGroup/index.mjs +16 -15
  857. package/dist/jsx/fields/RadioGroup/index.mjs.map +1 -1
  858. package/dist/jsx/fields/RadioGroup/index.native.js +15 -14
  859. package/dist/jsx/fields/RadioGroup/index.native.js.map +1 -1
  860. package/dist/jsx/fields/Rating/index.mjs +29 -22
  861. package/dist/jsx/fields/Rating/index.mjs.map +1 -1
  862. package/dist/jsx/fields/Rating/index.native.js +33 -25
  863. package/dist/jsx/fields/Rating/index.native.js.map +1 -1
  864. package/dist/jsx/fields/Rating/ratingMath.mjs +11 -0
  865. package/dist/jsx/fields/Rating/ratingMath.mjs.map +1 -0
  866. package/dist/jsx/fields/Rating/ratingMath.native.js +39 -0
  867. package/dist/jsx/fields/Rating/ratingMath.native.js.map +1 -0
  868. package/dist/jsx/fields/SearchInput/index.mjs +220 -155
  869. package/dist/jsx/fields/SearchInput/index.mjs.map +1 -1
  870. package/dist/jsx/fields/SearchInput/index.native.js +225 -155
  871. package/dist/jsx/fields/SearchInput/index.native.js.map +1 -1
  872. package/dist/jsx/fields/Select/index.mjs +39 -22
  873. package/dist/jsx/fields/Select/index.mjs.map +1 -1
  874. package/dist/jsx/fields/Select/index.native.js +38 -25
  875. package/dist/jsx/fields/Select/index.native.js.map +1 -1
  876. package/dist/jsx/fields/Signature/index.mjs +26 -18
  877. package/dist/jsx/fields/Signature/index.mjs.map +1 -1
  878. package/dist/jsx/fields/Signature/index.native.js +26 -18
  879. package/dist/jsx/fields/Signature/index.native.js.map +1 -1
  880. package/dist/jsx/fields/Slider/index.mjs +40 -12
  881. package/dist/jsx/fields/Slider/index.mjs.map +1 -1
  882. package/dist/jsx/fields/Slider/index.native.js +60 -14
  883. package/dist/jsx/fields/Slider/index.native.js.map +1 -1
  884. package/dist/jsx/fields/Stepper/index.mjs +17 -8
  885. package/dist/jsx/fields/Stepper/index.mjs.map +1 -1
  886. package/dist/jsx/fields/Stepper/index.native.js +17 -7
  887. package/dist/jsx/fields/Stepper/index.native.js.map +1 -1
  888. package/dist/jsx/fields/Stepper/resolveStepperPlacement.mjs +7 -0
  889. package/dist/jsx/fields/Stepper/resolveStepperPlacement.mjs.map +1 -0
  890. package/dist/jsx/fields/Stepper/resolveStepperPlacement.native.js +35 -0
  891. package/dist/jsx/fields/Stepper/resolveStepperPlacement.native.js.map +1 -0
  892. package/dist/jsx/fields/Switch/index.mjs +135 -47
  893. package/dist/jsx/fields/Switch/index.mjs.map +1 -1
  894. package/dist/jsx/fields/Switch/index.native.js +154 -47
  895. package/dist/jsx/fields/Switch/index.native.js.map +1 -1
  896. package/dist/jsx/fields/TextArea/index.mjs +34 -36
  897. package/dist/jsx/fields/TextArea/index.mjs.map +1 -1
  898. package/dist/jsx/fields/TextArea/index.native.js +33 -38
  899. package/dist/jsx/fields/TextArea/index.native.js.map +1 -1
  900. package/dist/jsx/fields/TimePicker/index.mjs +7 -3
  901. package/dist/jsx/fields/TimePicker/index.mjs.map +1 -1
  902. package/dist/jsx/fields/TimePicker/index.native.js +8 -2
  903. package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
  904. package/dist/jsx/fields/TimePicker/parts.mjs +58 -499
  905. package/dist/jsx/fields/TimePicker/parts.mjs.map +1 -1
  906. package/dist/jsx/fields/TimePicker/parts.native.js +59 -526
  907. package/dist/jsx/fields/TimePicker/parts.native.js.map +1 -1
  908. package/dist/jsx/fields/TimeRangeScrubber/geometry.mjs +229 -0
  909. package/dist/jsx/fields/TimeRangeScrubber/geometry.mjs.map +1 -0
  910. package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js +352 -0
  911. package/dist/jsx/fields/TimeRangeScrubber/geometry.native.js.map +1 -0
  912. package/dist/jsx/fields/TimeRangeScrubber/index.mjs +822 -0
  913. package/dist/jsx/fields/TimeRangeScrubber/index.mjs.map +1 -0
  914. package/dist/jsx/fields/TimeRangeScrubber/index.native.js +936 -0
  915. package/dist/jsx/fields/TimeRangeScrubber/index.native.js.map +1 -0
  916. package/dist/jsx/fields/ToggleGroup/index.mjs +58 -48
  917. package/dist/jsx/fields/ToggleGroup/index.mjs.map +1 -1
  918. package/dist/jsx/fields/ToggleGroup/index.native.js +59 -51
  919. package/dist/jsx/fields/ToggleGroup/index.native.js.map +1 -1
  920. package/dist/jsx/fields/selectedOrder.mjs +11 -0
  921. package/dist/jsx/fields/selectedOrder.mjs.map +1 -0
  922. package/dist/jsx/fields/selectedOrder.native.js +46 -0
  923. package/dist/jsx/fields/selectedOrder.native.js.map +1 -0
  924. package/dist/jsx/index.js +15 -8
  925. package/dist/jsx/index.js.map +1 -1
  926. package/dist/jsx/index.mjs +15 -8
  927. package/dist/jsx/index.mjs.map +1 -1
  928. package/dist/jsx/index.native.js +47 -11
  929. package/dist/jsx/index.native.js.map +1 -1
  930. package/dist/jsx/shared/TimeColumn.mjs +123 -80
  931. package/dist/jsx/shared/TimeColumn.mjs.map +1 -1
  932. package/dist/jsx/shared/TimeColumn.native.js +146 -88
  933. package/dist/jsx/shared/TimeColumn.native.js.map +1 -1
  934. package/dist/jsx/shared/colorRamps.mjs +23 -2
  935. package/dist/jsx/shared/colorRamps.mjs.map +1 -1
  936. package/dist/jsx/shared/colorRamps.native.js +23 -1
  937. package/dist/jsx/shared/colorRamps.native.js.map +1 -1
  938. package/dist/jsx/shared/floatingList.mjs +18 -5
  939. package/dist/jsx/shared/floatingList.mjs.map +1 -1
  940. package/dist/jsx/shared/floatingList.native.js +17 -4
  941. package/dist/jsx/shared/floatingList.native.js.map +1 -1
  942. package/dist/jsx/shared/useKeyboardInset.mjs +23 -0
  943. package/dist/jsx/shared/useKeyboardInset.mjs.map +1 -0
  944. package/dist/jsx/shared/useKeyboardInset.native.js +53 -0
  945. package/dist/jsx/shared/useKeyboardInset.native.js.map +1 -0
  946. package/dist/jsx/shared/utils.mjs +80 -74
  947. package/dist/jsx/shared/utils.mjs.map +1 -1
  948. package/dist/jsx/shared/utils.native.js +127 -75
  949. package/dist/jsx/shared/utils.native.js.map +1 -1
  950. package/dist/jsx/themedPrimitives.mjs +5 -3
  951. package/dist/jsx/themedPrimitives.mjs.map +1 -1
  952. package/dist/jsx/themedPrimitives.native.js +4 -2
  953. package/dist/jsx/themedPrimitives.native.js.map +1 -1
  954. package/package.json +21 -7
  955. package/src/AdaptivePopup/AdaptivePopup.spec.tsx +213 -2
  956. package/src/AdaptivePopup/AdaptivePopup.stories.tsx +42 -1
  957. package/src/AdaptivePopup/index.tsx +162 -24
  958. package/src/Button/Button.density.spec.tsx +78 -0
  959. package/src/Button/Button.filledBorder.spec.tsx +74 -0
  960. package/src/Button/Button.labelInk.spec.tsx +143 -0
  961. package/src/Button/Button.stories.tsx +33 -15
  962. package/src/Button/index.tsx +31 -9
  963. package/src/Chip/index.tsx +7 -3
  964. package/src/ContextualSaveBar/ContextualSaveBar.spec.tsx +269 -0
  965. package/src/ContextualSaveBar/ContextualSaveBar.stories.tsx +72 -0
  966. package/src/ContextualSaveBar/UnsavedChangesDialog.tsx +119 -0
  967. package/src/ContextualSaveBar/clientKnownIdentity.ts +15 -0
  968. package/src/ContextualSaveBar/commitImmediateField.ts +31 -0
  969. package/src/ContextualSaveBar/index.tsx +327 -0
  970. package/src/ContextualSaveBar/useUnsavedChangesGuard.ts +38 -0
  971. package/src/ControlGroup/ControlGroup.spec.tsx +86 -0
  972. package/src/ControlGroup/index.tsx +16 -8
  973. package/src/DescriptionList/DescriptionList.spec.tsx +254 -0
  974. package/src/DescriptionList/DescriptionList.stories.tsx +244 -0
  975. package/src/DescriptionList/index.tsx +503 -0
  976. package/src/FieldDisplay/FieldDisplay.spec.tsx +8 -0
  977. package/src/FieldDisplay/index.tsx +150 -41
  978. package/src/FieldGroup.spec.tsx +63 -0
  979. package/src/FieldGroup.tsx +17 -4
  980. package/src/Fieldset.spec.tsx +39 -0
  981. package/src/FloatingPanel/index.native.tsx +253 -46
  982. package/src/FloatingPanel/index.tsx +71 -11
  983. package/src/FloatingPanel/panelWidthContract.spec.ts +57 -0
  984. package/src/FloatingPanel/useFloatingPanel.spec.tsx +127 -18
  985. package/src/FloatingPanel/useFloatingPanel.ts +62 -18
  986. package/src/Form/Form.stories.tsx +19 -0
  987. package/src/Form/form.spec.tsx +4 -2
  988. package/src/Form/index.tsx +66 -28
  989. package/src/FormGrid.spec.tsx +13 -1
  990. package/src/FormGrid.tsx +11 -4
  991. package/src/FormSection.tsx +14 -4
  992. package/src/FormsIntegration.stories.tsx +329 -344
  993. package/src/InputParts/InputButton.spec.tsx +60 -0
  994. package/src/InputParts/index.spec.tsx +41 -1
  995. package/src/InputParts/index.tsx +123 -60
  996. package/src/Label/Label.spec.tsx +8 -0
  997. package/src/Label/index.tsx +1 -0
  998. package/src/Spinner/Spinner.spec.tsx +14 -0
  999. package/src/Spinner/index.native.tsx +16 -3
  1000. package/src/Spinner/index.tsx +1 -0
  1001. package/src/Wheel/Wheel.spec.tsx +292 -0
  1002. package/src/Wheel/WheelEdgeFade.native.tsx +67 -0
  1003. package/src/Wheel/WheelEdgeFade.tsx +7 -0
  1004. package/src/Wheel/haptic.ts +15 -0
  1005. package/src/Wheel/index.tsx +389 -146
  1006. package/src/fieldDefaults.spec.ts +7 -0
  1007. package/src/fieldDefaults.ts +13 -0
  1008. package/src/fieldLayout.spec.tsx +39 -0
  1009. package/src/fieldLayout.tsx +17 -7
  1010. package/src/fields/Barcode/Barcode.spec.tsx +30 -0
  1011. package/src/fields/Barcode/Barcode.stories.tsx +18 -0
  1012. package/src/fields/Barcode/BarcodePreview.spec.tsx +76 -1
  1013. package/src/fields/Barcode/BarcodePreview.tsx +114 -20
  1014. package/src/fields/Barcode/index.tsx +9 -1
  1015. package/src/fields/Barcode/qr.spec.ts +332 -0
  1016. package/src/fields/Barcode/qr.ts +590 -0
  1017. package/src/fields/Barcode/scannerTypes.ts +12 -1
  1018. package/src/fields/Checkbox/Checkbox.spec.tsx +101 -2
  1019. package/src/fields/Checkbox/Checkbox.stories.tsx +23 -0
  1020. package/src/fields/Checkbox/Checkbox.tsx +25 -6
  1021. package/src/fields/Checkbox/CheckboxBox.tsx +33 -0
  1022. package/src/fields/Checkbox/CheckboxCard.tsx +0 -1
  1023. package/src/fields/Checkbox/CheckboxFieldFrame.tsx +1 -0
  1024. package/src/fields/Checkbox/CheckboxGroup.tsx +12 -5
  1025. package/src/fields/Checkbox/index.tsx +16 -4
  1026. package/src/fields/ColorPicker/ColorPicker.spec.tsx +93 -2
  1027. package/src/fields/ColorPicker/ColorPicker.stories.tsx +29 -0
  1028. package/src/fields/ColorPicker/index.tsx +15 -19
  1029. package/src/fields/ColorPicker/parts.tsx +13 -13
  1030. package/src/fields/Combobox/Combobox.spec.tsx +129 -0
  1031. package/src/fields/Combobox/Combobox.stories.tsx +46 -0
  1032. package/src/fields/Combobox/index.tsx +139 -93
  1033. package/src/fields/DatePicker/Calendar.spec.tsx +157 -2
  1034. package/src/fields/DatePicker/Calendar.tsx +11 -1
  1035. package/src/fields/DatePicker/DatePicker.stories.tsx +28 -0
  1036. package/src/fields/DatePicker/DateRangePicker.spec.tsx +53 -0
  1037. package/src/fields/DatePicker/DateRangePicker.stories.tsx +41 -0
  1038. package/src/fields/DatePicker/DateRangePicker.tsx +17 -3
  1039. package/src/fields/DatePicker/DatetimePicker.spec.tsx +17 -0
  1040. package/src/fields/DatePicker/DatetimePicker.stories.tsx +29 -1
  1041. package/src/fields/DatePicker/DatetimePicker.tsx +42 -147
  1042. package/src/fields/DatePicker/MonthPicker.tsx +3 -6
  1043. package/src/fields/DatePicker/MultiDatePicker.spec.tsx +29 -0
  1044. package/src/fields/DatePicker/MultiDatePicker.stories.tsx +33 -0
  1045. package/src/fields/DatePicker/MultiDatePicker.tsx +26 -2
  1046. package/src/fields/DatePicker/index.tsx +2 -0
  1047. package/src/fields/DatePicker/parts.tsx +79 -40
  1048. package/src/fields/Duration/Duration.spec.tsx +135 -6
  1049. package/src/fields/Duration/Duration.stories.tsx +30 -1
  1050. package/src/fields/Duration/durationMath.spec.ts +67 -0
  1051. package/src/fields/Duration/durationMath.ts +78 -0
  1052. package/src/fields/Duration/index.tsx +89 -112
  1053. package/src/fields/FileUpload/FileUpload.spec.tsx +320 -1
  1054. package/src/fields/FileUpload/FileUpload.stories.tsx +71 -1
  1055. package/src/fields/FileUpload/filePickerTypes.ts +42 -0
  1056. package/src/fields/FileUpload/index.tsx +508 -182
  1057. package/src/fields/FileUpload/nativeFilePicker.native.spec.ts +168 -0
  1058. package/src/fields/FileUpload/nativeFilePicker.native.ts +150 -0
  1059. package/src/fields/FileUpload/nativeFilePicker.ts +21 -0
  1060. package/src/fields/FileUpload/nativePickerLoader.ts +65 -0
  1061. package/src/fields/Geolocation/Geolocation.stories.tsx +29 -0
  1062. package/src/fields/Icon/Icon.spec.tsx +67 -0
  1063. package/src/fields/Icon/Icon.stories.tsx +59 -0
  1064. package/src/fields/Icon/drawnSet.spec.ts +47 -0
  1065. package/src/fields/Icon/drawnSet.tsx +288 -0
  1066. package/src/fields/Icon/index.tsx +465 -0
  1067. package/src/fields/ImageField/ImageField.spec.tsx +84 -2
  1068. package/src/fields/ImageField/ImageField.stories.tsx +30 -1
  1069. package/src/fields/ImageField/index.tsx +35 -31
  1070. package/src/fields/Input/Input.copy.spec.tsx +113 -0
  1071. package/src/fields/Input/Input.spec.tsx +57 -0
  1072. package/src/fields/Input/Input.stories.tsx +39 -0
  1073. package/src/fields/Input/index.tsx +10 -4
  1074. package/src/fields/MentionInput/MentionInput.spec.tsx +140 -38
  1075. package/src/fields/MentionInput/MentionInput.stories.tsx +39 -2
  1076. package/src/fields/MentionInput/index.tsx +157 -81
  1077. package/src/fields/OTPInput/OtpInput.spec.tsx +66 -3
  1078. package/src/fields/OTPInput/OtpInput.stories.tsx +28 -0
  1079. package/src/fields/OTPInput/index.tsx +17 -4
  1080. package/src/fields/PhoneInput/PhoneInput.spec.tsx +109 -0
  1081. package/src/fields/PhoneInput/PhoneInput.stories.tsx +28 -0
  1082. package/src/fields/PhoneInput/index.tsx +4 -3
  1083. package/src/fields/Progress/Progress.spec.tsx +132 -18
  1084. package/src/fields/Progress/Progress.stories.tsx +32 -3
  1085. package/src/fields/Progress/index.tsx +38 -15
  1086. package/src/fields/RadioGroup/RadioGroup.spec.tsx +58 -0
  1087. package/src/fields/RadioGroup/RadioGroup.stories.tsx +42 -7
  1088. package/src/fields/RadioGroup/index.tsx +26 -18
  1089. package/src/fields/Rating/Rating.spec.tsx +71 -1
  1090. package/src/fields/Rating/Rating.stories.tsx +28 -0
  1091. package/src/fields/Rating/index.tsx +39 -25
  1092. package/src/fields/Rating/ratingMath.spec.ts +24 -0
  1093. package/src/fields/Rating/ratingMath.ts +14 -0
  1094. package/src/fields/SearchInput/SearchInput.spec.tsx +86 -0
  1095. package/src/fields/SearchInput/SearchInput.stories.tsx +14 -0
  1096. package/src/fields/SearchInput/index.tsx +255 -154
  1097. package/src/fields/Select/Select.stories.tsx +91 -42
  1098. package/src/fields/Select/index.tsx +62 -23
  1099. package/src/fields/Signature/Signature.spec.tsx +70 -0
  1100. package/src/fields/Signature/Signature.stories.tsx +29 -0
  1101. package/src/fields/Signature/index.tsx +27 -20
  1102. package/src/fields/Slider/Slider.spec.tsx +57 -0
  1103. package/src/fields/Slider/Slider.stories.tsx +28 -0
  1104. package/src/fields/Slider/index.tsx +38 -15
  1105. package/src/fields/Stepper/Stepper.spec.tsx +8 -0
  1106. package/src/fields/Stepper/Stepper.stories.tsx +28 -0
  1107. package/src/fields/Stepper/index.tsx +28 -18
  1108. package/src/fields/Stepper/resolveStepperPlacement.spec.ts +21 -0
  1109. package/src/fields/Stepper/resolveStepperPlacement.ts +14 -0
  1110. package/src/fields/Switch/Switch.radius.spec.tsx +114 -0
  1111. package/src/fields/Switch/Switch.stories.tsx +23 -0
  1112. package/src/fields/Switch/index.tsx +157 -52
  1113. package/src/fields/TextArea/TextArea.spec.tsx +103 -0
  1114. package/src/fields/TextArea/TextArea.stories.tsx +28 -0
  1115. package/src/fields/TextArea/index.tsx +36 -42
  1116. package/src/fields/TimePicker/TimePicker.spec.tsx +73 -11
  1117. package/src/fields/TimePicker/TimePicker.stories.tsx +29 -1
  1118. package/src/fields/TimePicker/index.tsx +8 -2
  1119. package/src/fields/TimePicker/parts.tsx +74 -584
  1120. package/src/fields/TimeRangeScrubber/TimeRangeScrubber.spec.tsx +483 -0
  1121. package/src/fields/TimeRangeScrubber/TimeRangeScrubber.stories.tsx +151 -0
  1122. package/src/fields/TimeRangeScrubber/geometry.ts +285 -0
  1123. package/src/fields/TimeRangeScrubber/index.tsx +1049 -0
  1124. package/src/fields/ToggleGroup/ToggleGroup.spec.tsx +118 -2
  1125. package/src/fields/ToggleGroup/ToggleGroup.stories.tsx +41 -0
  1126. package/src/fields/ToggleGroup/index.tsx +70 -67
  1127. package/src/fields/selectedOrder.spec.ts +29 -0
  1128. package/src/fields/selectedOrder.ts +26 -0
  1129. package/src/index.ts +71 -8
  1130. package/src/shared/TimeColumn.tsx +135 -87
  1131. package/src/shared/TimeWheels.spec.tsx +39 -0
  1132. package/src/shared/colorRamps.ts +35 -1
  1133. package/src/shared/floatingList.spec.tsx +65 -0
  1134. package/src/shared/floatingList.tsx +18 -5
  1135. package/src/shared/useKeyboardInset.ts +43 -0
  1136. package/src/shared/utils.spec.ts +75 -8
  1137. package/src/shared/utils.ts +146 -71
  1138. package/src/themedPrimitives.tsx +5 -3
  1139. package/types/AdaptivePopup/index.d.ts +19 -1
  1140. package/types/AdaptivePopup/index.d.ts.map +1 -1
  1141. package/types/Button/index.d.ts.map +1 -1
  1142. package/types/Chip/index.d.ts +1 -1
  1143. package/types/Chip/index.d.ts.map +1 -1
  1144. package/types/ContextualSaveBar/UnsavedChangesDialog.d.ts +13 -0
  1145. package/types/ContextualSaveBar/UnsavedChangesDialog.d.ts.map +1 -0
  1146. package/types/ContextualSaveBar/clientKnownIdentity.d.ts +7 -0
  1147. package/types/ContextualSaveBar/clientKnownIdentity.d.ts.map +1 -0
  1148. package/types/ContextualSaveBar/commitImmediateField.d.ts +8 -0
  1149. package/types/ContextualSaveBar/commitImmediateField.d.ts.map +1 -0
  1150. package/types/ContextualSaveBar/index.d.ts +27 -0
  1151. package/types/ContextualSaveBar/index.d.ts.map +1 -0
  1152. package/types/ContextualSaveBar/useUnsavedChangesGuard.d.ts +9 -0
  1153. package/types/ContextualSaveBar/useUnsavedChangesGuard.d.ts.map +1 -0
  1154. package/types/ControlGroup/index.d.ts.map +1 -1
  1155. package/types/DescriptionList/index.d.ts +69 -0
  1156. package/types/DescriptionList/index.d.ts.map +1 -0
  1157. package/types/FieldDisplay/index.d.ts +26 -5
  1158. package/types/FieldDisplay/index.d.ts.map +1 -1
  1159. package/types/FieldGroup.d.ts +2 -0
  1160. package/types/FieldGroup.d.ts.map +1 -1
  1161. package/types/FloatingPanel/index.d.ts +30 -5
  1162. package/types/FloatingPanel/index.d.ts.map +1 -1
  1163. package/types/FloatingPanel/index.native.d.ts +1 -1
  1164. package/types/FloatingPanel/index.native.d.ts.map +1 -1
  1165. package/types/FloatingPanel/useFloatingPanel.d.ts +30 -7
  1166. package/types/FloatingPanel/useFloatingPanel.d.ts.map +1 -1
  1167. package/types/Form/index.d.ts +19 -3
  1168. package/types/Form/index.d.ts.map +1 -1
  1169. package/types/FormGrid.d.ts.map +1 -1
  1170. package/types/FormSection.d.ts +2 -2
  1171. package/types/FormSection.d.ts.map +1 -1
  1172. package/types/InputParts/index.d.ts +42 -12
  1173. package/types/InputParts/index.d.ts.map +1 -1
  1174. package/types/Label/index.d.ts.map +1 -1
  1175. package/types/Spinner/index.d.ts.map +1 -1
  1176. package/types/Spinner/index.native.d.ts.map +1 -1
  1177. package/types/Wheel/WheelEdgeFade.d.ts +8 -0
  1178. package/types/Wheel/WheelEdgeFade.d.ts.map +1 -0
  1179. package/types/Wheel/WheelEdgeFade.native.d.ts +8 -0
  1180. package/types/Wheel/WheelEdgeFade.native.d.ts.map +1 -0
  1181. package/types/Wheel/haptic.d.ts +6 -0
  1182. package/types/Wheel/haptic.d.ts.map +1 -0
  1183. package/types/Wheel/index.d.ts +19 -1
  1184. package/types/Wheel/index.d.ts.map +1 -1
  1185. package/types/fieldDefaults.d.ts +7 -0
  1186. package/types/fieldDefaults.d.ts.map +1 -1
  1187. package/types/fieldLayout.d.ts.map +1 -1
  1188. package/types/fields/Barcode/BarcodePreview.d.ts +34 -10
  1189. package/types/fields/Barcode/BarcodePreview.d.ts.map +1 -1
  1190. package/types/fields/Barcode/index.d.ts.map +1 -1
  1191. package/types/fields/Barcode/qr.d.ts +53 -0
  1192. package/types/fields/Barcode/qr.d.ts.map +1 -0
  1193. package/types/fields/Barcode/scannerTypes.d.ts +7 -0
  1194. package/types/fields/Barcode/scannerTypes.d.ts.map +1 -1
  1195. package/types/fields/Checkbox/Checkbox.d.ts.map +1 -1
  1196. package/types/fields/Checkbox/CheckboxBox.d.ts +16 -0
  1197. package/types/fields/Checkbox/CheckboxBox.d.ts.map +1 -1
  1198. package/types/fields/Checkbox/CheckboxCard.d.ts.map +1 -1
  1199. package/types/fields/Checkbox/CheckboxFieldFrame.d.ts.map +1 -1
  1200. package/types/fields/Checkbox/CheckboxGroup.d.ts.map +1 -1
  1201. package/types/fields/Checkbox/index.d.ts +5 -4
  1202. package/types/fields/Checkbox/index.d.ts.map +1 -1
  1203. package/types/fields/ColorPicker/index.d.ts.map +1 -1
  1204. package/types/fields/ColorPicker/parts.d.ts +9 -6
  1205. package/types/fields/ColorPicker/parts.d.ts.map +1 -1
  1206. package/types/fields/Combobox/index.d.ts +7 -1
  1207. package/types/fields/Combobox/index.d.ts.map +1 -1
  1208. package/types/fields/DatePicker/Calendar.d.ts.map +1 -1
  1209. package/types/fields/DatePicker/DateRangePicker.d.ts.map +1 -1
  1210. package/types/fields/DatePicker/DatetimePicker.d.ts.map +1 -1
  1211. package/types/fields/DatePicker/MonthPicker.d.ts.map +1 -1
  1212. package/types/fields/DatePicker/MultiDatePicker.d.ts.map +1 -1
  1213. package/types/fields/DatePicker/index.d.ts.map +1 -1
  1214. package/types/fields/DatePicker/parts.d.ts +15 -3
  1215. package/types/fields/DatePicker/parts.d.ts.map +1 -1
  1216. package/types/fields/Duration/durationMath.d.ts +17 -0
  1217. package/types/fields/Duration/durationMath.d.ts.map +1 -0
  1218. package/types/fields/Duration/index.d.ts +3 -11
  1219. package/types/fields/Duration/index.d.ts.map +1 -1
  1220. package/types/fields/FileUpload/filePickerTypes.d.ts +39 -0
  1221. package/types/fields/FileUpload/filePickerTypes.d.ts.map +1 -0
  1222. package/types/fields/FileUpload/index.d.ts +38 -0
  1223. package/types/fields/FileUpload/index.d.ts.map +1 -1
  1224. package/types/fields/FileUpload/nativeFilePicker.d.ts +10 -0
  1225. package/types/fields/FileUpload/nativeFilePicker.d.ts.map +1 -0
  1226. package/types/fields/FileUpload/nativeFilePicker.native.d.ts +23 -0
  1227. package/types/fields/FileUpload/nativeFilePicker.native.d.ts.map +1 -0
  1228. package/types/fields/FileUpload/nativePickerLoader.d.ts +15 -0
  1229. package/types/fields/FileUpload/nativePickerLoader.d.ts.map +1 -0
  1230. package/types/fields/Icon/drawnSet.d.ts +17 -0
  1231. package/types/fields/Icon/drawnSet.d.ts.map +1 -0
  1232. package/types/fields/Icon/index.d.ts +20 -0
  1233. package/types/fields/Icon/index.d.ts.map +1 -0
  1234. package/types/fields/ImageField/index.d.ts +5 -0
  1235. package/types/fields/ImageField/index.d.ts.map +1 -1
  1236. package/types/fields/Input/index.d.ts +11 -11
  1237. package/types/fields/Input/index.d.ts.map +1 -1
  1238. package/types/fields/MentionInput/index.d.ts +11 -4
  1239. package/types/fields/MentionInput/index.d.ts.map +1 -1
  1240. package/types/fields/OTPInput/index.d.ts.map +1 -1
  1241. package/types/fields/PhoneInput/index.d.ts.map +1 -1
  1242. package/types/fields/Progress/index.d.ts +9 -2
  1243. package/types/fields/Progress/index.d.ts.map +1 -1
  1244. package/types/fields/RadioGroup/index.d.ts +5 -2
  1245. package/types/fields/RadioGroup/index.d.ts.map +1 -1
  1246. package/types/fields/Rating/index.d.ts +1 -0
  1247. package/types/fields/Rating/index.d.ts.map +1 -1
  1248. package/types/fields/Rating/ratingMath.d.ts +7 -0
  1249. package/types/fields/Rating/ratingMath.d.ts.map +1 -0
  1250. package/types/fields/SearchInput/index.d.ts +15 -3
  1251. package/types/fields/SearchInput/index.d.ts.map +1 -1
  1252. package/types/fields/Select/index.d.ts +7 -1
  1253. package/types/fields/Select/index.d.ts.map +1 -1
  1254. package/types/fields/Signature/index.d.ts +3 -3
  1255. package/types/fields/Signature/index.d.ts.map +1 -1
  1256. package/types/fields/Slider/index.d.ts.map +1 -1
  1257. package/types/fields/Stepper/index.d.ts +4 -4
  1258. package/types/fields/Stepper/index.d.ts.map +1 -1
  1259. package/types/fields/Stepper/resolveStepperPlacement.d.ts +7 -0
  1260. package/types/fields/Stepper/resolveStepperPlacement.d.ts.map +1 -0
  1261. package/types/fields/Switch/index.d.ts.map +1 -1
  1262. package/types/fields/TextArea/index.d.ts +3 -1
  1263. package/types/fields/TextArea/index.d.ts.map +1 -1
  1264. package/types/fields/TimePicker/index.d.ts.map +1 -1
  1265. package/types/fields/TimePicker/parts.d.ts +5 -13
  1266. package/types/fields/TimePicker/parts.d.ts.map +1 -1
  1267. package/types/fields/TimeRangeScrubber/geometry.d.ts +87 -0
  1268. package/types/fields/TimeRangeScrubber/geometry.d.ts.map +1 -0
  1269. package/types/fields/TimeRangeScrubber/index.d.ts +51 -0
  1270. package/types/fields/TimeRangeScrubber/index.d.ts.map +1 -0
  1271. package/types/fields/ToggleGroup/index.d.ts.map +1 -1
  1272. package/types/fields/selectedOrder.d.ts +15 -0
  1273. package/types/fields/selectedOrder.d.ts.map +1 -0
  1274. package/types/index.d.ts +26 -13
  1275. package/types/index.d.ts.map +1 -1
  1276. package/types/shared/TimeColumn.d.ts +15 -13
  1277. package/types/shared/TimeColumn.d.ts.map +1 -1
  1278. package/types/shared/colorRamps.d.ts +28 -1
  1279. package/types/shared/colorRamps.d.ts.map +1 -1
  1280. package/types/shared/floatingList.d.ts.map +1 -1
  1281. package/types/shared/useKeyboardInset.d.ts +16 -0
  1282. package/types/shared/useKeyboardInset.d.ts.map +1 -0
  1283. package/types/shared/utils.d.ts +36 -6
  1284. package/types/shared/utils.d.ts.map +1 -1
  1285. package/types/themedPrimitives.d.ts +1 -1
  1286. package/types/themedPrimitives.d.ts.map +1 -1
@@ -31,6 +31,7 @@ import {
31
31
  ensureKeyboardModalityTracking,
32
32
  keyboardFocusRingProps,
33
33
  menuRowFrame,
34
+ useGlyphColor,
34
35
  useResolvedKnobs,
35
36
  } from "@multiplatform.one/theme";
36
37
  import type { LabelProps, SizeTokens } from "tamagui";
@@ -41,7 +42,7 @@ import { Skeleton } from "../../Skeleton";
41
42
  import { Field, FieldLayout, useFieldA11y, useFieldDescribedBy } from "../../fieldLayout";
42
43
  import { Input as InputParts } from "../../InputParts";
43
44
  import { Spinner } from "../../Spinner";
44
- import { formCommonColors, formInputColors } from "../../shared/colorRamps";
45
+ import { formCommonColors, formInputColors, formSelectedColors } from "../../shared/colorRamps";
45
46
  import {
46
47
  getFieldError,
47
48
  getFieldHeight,
@@ -64,6 +65,7 @@ import {
64
65
  import { zIndex } from "../../shared/zIndex";
65
66
  import { useDragScroll } from "../../shared/useDragScroll";
66
67
  import { useIsInTableCell } from "../../shared/tableCellContext";
68
+ import { orderOptionsBySelected, type SelectedOrder } from "../selectedOrder";
67
69
 
68
70
  // ── Styled row ───────────────────────────────────────────────
69
71
 
@@ -105,6 +107,29 @@ function listItemRingProps(keyboardRing: boolean) {
105
107
  return keyboardRing ? keyboardFocusRingProps : { outlineWidth: 0 as const };
106
108
  }
107
109
 
110
+ /**
111
+ * Resolve the LC-05 selected-mark token to a real paint (MPO-63).
112
+ *
113
+ * MPO-65 put `formSelectedColors.mark` ("$accentBackground") on the tick, but a
114
+ * phosphor glyph is NOT a Tamagui styled component: its IconBase writes the
115
+ * prop straight into `<svg fill>`. On web "$accentBackground" is not a valid
116
+ * paint, so the declaration is dropped and `fill` falls back to its initial
117
+ * value — an opaque BLACK tick, measured 1.19:1 against the `$color2` selected
118
+ * row. On native the shim can only resolve a token the theme in scope actually
119
+ * carries, and the component sub-themes carry no `accentBackground` at all.
120
+ * Resolve it here, where the value becomes a paint — the same shape as
121
+ * `mutedColor` for the search glyph. Keyed off the ramp constant so the token
122
+ * stays declared once in colorRamps, and degrading to `$color` ink rather than
123
+ * black when a narrow sub-theme has no accent step.
124
+ */
125
+ function useSelectedMarkColor(): string {
126
+ const theme = useTheme();
127
+ const entry = (theme as unknown as Record<string, { val?: string } | undefined>)[
128
+ formSelectedColors.mark.slice(1)
129
+ ];
130
+ return entry?.val ?? theme.color?.val ?? "currentColor";
131
+ }
132
+
108
133
  const GroupHeader = styled(Text, {
109
134
  name: "ComboboxGroupHeader",
110
135
  paddingHorizontal: "$3",
@@ -180,6 +205,11 @@ export interface ComboboxProps {
180
205
  popoverWidth?: number;
181
206
  tabIndex?: number;
182
207
  multiple?: boolean;
208
+ /**
209
+ * Multi-select list order. `selected-first` (default) pins chosen rows to the
210
+ * top, alphabetically among themselves. `stable` keeps `options` order.
211
+ */
212
+ selectedOrder?: SelectedOrder;
183
213
  /** Show dismiss button on badges to remove selected items (only applies when multiple=true) */
184
214
  dismissible?: boolean;
185
215
  /** When true, renders a skeleton placeholder instead of the combobox */
@@ -281,6 +311,8 @@ interface ComboboxItemHandlers {
281
311
  onItemKeyDown?: (e: React.KeyboardEvent, index: number) => void;
282
312
  knobProps: KnobProps;
283
313
  textColor: string;
314
+ /** LC-05 selected mark, already resolved to a paint. */
315
+ markColor: string;
284
316
  listItemsRef: React.RefObject<Array<HTMLElement | null>>;
285
317
  }
286
318
 
@@ -395,7 +427,7 @@ const ComboboxItem = memo(function ComboboxItem({
395
427
  {option.label}
396
428
  </Text>
397
429
  )}
398
- {isSelected && <CheckIcon size={14} />}
430
+ {isSelected && <CheckIcon size={14} color={ctx.markColor} />}
399
431
  </ComboboxRow>
400
432
  );
401
433
  });
@@ -426,6 +458,7 @@ interface FloatingComboboxCoreProps {
426
458
  trigger?: (selected: ComboboxOption | ComboboxOption[] | undefined, open: boolean) => ReactNode;
427
459
  knobProps: KnobProps;
428
460
  multiple?: boolean;
461
+ selectedOrder?: SelectedOrder;
429
462
  dismissible?: boolean;
430
463
  creatable?: boolean;
431
464
  onCreate?: (value: string) => ComboboxOption | void;
@@ -460,6 +493,7 @@ function FloatingComboboxCore({
460
493
  trigger: triggerRender,
461
494
  knobProps,
462
495
  multiple,
496
+ selectedOrder,
463
497
  dismissible,
464
498
  creatable,
465
499
  onCreate,
@@ -473,6 +507,7 @@ function FloatingComboboxCore({
473
507
  const { t } = useTranslation();
474
508
  const inTableCell = useIsInTableCell();
475
509
  const describedBy = useFieldDescribedBy();
510
+ const glyphColor = useGlyphColor();
476
511
  const [internalOpen, setInternalOpen] = useState(false);
477
512
  // Use external open state when provided (controlled), otherwise use internal state
478
513
  const open = openProp !== undefined ? openProp : internalOpen;
@@ -492,6 +527,7 @@ function FloatingComboboxCore({
492
527
  const [activeIndex, setActiveIndex] = useState<number | null>(null);
493
528
 
494
529
  const textColor = knobProps.textAccentColor;
530
+ const markColor = useSelectedMarkColor();
495
531
 
496
532
  const labelCacheRef = useRef<Map<string, string>>(new Map());
497
533
  for (const o of options) labelCacheRef.current.set(o.value, o.label);
@@ -578,22 +614,17 @@ function FloatingComboboxCore({
578
614
  if (hasSearchedRef.current) return filtered; // user searched then cleared; keep natural order
579
615
  if (initialOrderRef.current === null) {
580
616
  const current = Array.isArray(value) ? value : value ? [value] : [];
581
- const snap = new Set(current);
582
- if (snap.size === 0) {
583
- initialOrderRef.current = filtered;
584
- } else {
585
- const first = filtered
586
- .filter((o) => snap.has(o.value))
587
- .sort((a, b) => a.label.localeCompare(b.label));
588
- const rest = filtered.filter((o) => !snap.has(o.value));
589
- initialOrderRef.current = [...first, ...rest];
590
- }
617
+ initialOrderRef.current = orderOptionsBySelected(filtered, current, selectedOrder);
591
618
  }
592
619
  return initialOrderRef.current;
593
- }, [filtered, filter, open, multiple, value]);
594
-
595
- // Group options for rendering with headers (only when not in multiple mode)
596
- const { items: groupedItems, flatOptions: _flatOptions } = useMemo(
620
+ }, [filtered, filter, open, multiple, value, selectedOrder]);
621
+
622
+ // Group for render. `activeIndex` indexes `navigableOptions` selectable
623
+ // rows in that same order not `sortedFiltered`. `groupComboboxOptions`
624
+ // clusters by group and assigns `flatIndex` on the reordered list; keeping
625
+ // activeIndex on sortedFiltered while rendering headers silently breaks
626
+ // ArrowUp/ArrowDown (MPO-38 AC-6).
627
+ const { items: groupedItems, flatOptions: navigableOptions } = useMemo(
597
628
  () => groupComboboxOptions(sortedFiltered),
598
629
  [sortedFiltered],
599
630
  );
@@ -686,8 +717,8 @@ function FloatingComboboxCore({
686
717
  // Document-level Enter/Escape to close (catches keys when focus is on list, not just search)
687
718
  const activeIndexRef = useRef(activeIndex);
688
719
  activeIndexRef.current = activeIndex;
689
- const sortedFilteredRef = useRef(sortedFiltered);
690
- sortedFilteredRef.current = sortedFiltered;
720
+ const navigableOptionsRef = useRef(navigableOptions);
721
+ navigableOptionsRef.current = navigableOptions;
691
722
  const showCreateOptionRef = useRef(showCreateOption);
692
723
  showCreateOptionRef.current = showCreateOption;
693
724
  const multipleRef = useRef(multiple);
@@ -726,20 +757,33 @@ function FloatingComboboxCore({
726
757
  const contentHeight = searchBarHeight + listContentHeight + borderHeight;
727
758
 
728
759
  const isDropup = panel.placement.startsWith("top");
760
+ // Cover ruling (MPO-38). A single-value Combobox covers its trigger:
761
+ // the trigger shows one label, and the panel replaces it in place
762
+ // (macOS-style aligned listbox). A MULTI-select trigger carries live
763
+ // state — the selected chips and the query you are typing — so a panel
764
+ // drawn over it hides the very thing you are editing. Measured before
765
+ // this landed: panel top == trigger top and panel width == trigger
766
+ // width with `multiple` set, chips and filter text both covered.
767
+ // A trigger carrying live state keeps its own surface; the panel
768
+ // attaches flush on its BOTTOM edge instead.
769
+ const coversTrigger = !multipleRef.current;
729
770
  let top: number;
730
771
 
731
772
  if (searchTopRef.current === null) {
773
+ // The edge the panel hangs from: the trigger's far edge when it
774
+ // covers, its near edge when it only attaches (MPO-38).
775
+ const dropupAnchor = coversTrigger ? triggerBounds.bottom : triggerBounds.top;
732
776
  if (isDropup) {
733
- const availableAbove = triggerBounds.bottom - panelViewportPadding;
777
+ const availableAbove = dropupAnchor - panelViewportPadding;
734
778
  const initialHeight = Math.min(contentHeight, availableAbove);
735
- top = triggerBounds.bottom - initialHeight;
779
+ top = dropupAnchor - initialHeight;
736
780
  } else {
737
- top = triggerBounds.top;
781
+ top = coversTrigger ? triggerBounds.top : triggerBounds.bottom;
738
782
  }
739
783
  searchTopRef.current = top;
740
784
 
741
785
  const maxAvailable = isDropup
742
- ? triggerBounds.bottom - top
786
+ ? dropupAnchor - top
743
787
  : viewportHeight - top - panelViewportPadding;
744
788
  let height = Math.min(contentHeight, maxAvailable);
745
789
  height = Math.max(120, height);
@@ -796,13 +840,17 @@ function FloatingComboboxCore({
796
840
  // For dropdowns: don't move the panel below the trigger
797
841
  // For dropups: don't move the panel above where it started
798
842
  if (!isDropup) {
799
- // Keep the panel starting at or above the trigger
800
- top = Math.min(top, triggerTop);
843
+ // Keep the panel starting at or above the trigger. A non-covering
844
+ // (multi-select) panel may not grow upward at all — that is what
845
+ // would swallow the chips (MPO-38).
846
+ top = coversTrigger ? Math.min(top, triggerTop) : triggerBottom;
801
847
  } else {
802
- // Keep the panel ending at or below the trigger
848
+ // Keep the panel ending at or below the trigger; a non-covering
849
+ // drop-up stops at the trigger's TOP edge.
850
+ const floor = coversTrigger ? triggerBottom : triggerTop;
803
851
  const panelBottom = top + height;
804
- if (panelBottom < triggerBottom) {
805
- top = triggerBottom - height;
852
+ if (panelBottom < floor) {
853
+ top = floor - height;
806
854
  }
807
855
  }
808
856
  searchTopRef.current = top;
@@ -931,7 +979,7 @@ function FloatingComboboxCore({
931
979
  if (!el || !floating.contains(el)) return;
932
980
  const row = el.closest?.("[data-combobox-index]");
933
981
  const actualIndex = row?.getAttribute("data-combobox-index");
934
- const list = sortedFilteredRef.current;
982
+ const list = navigableOptionsRef.current;
935
983
  const len = list.length + (showCreateOptionRef.current ? 1 : 0);
936
984
  const activeIdx = activeIndexRef.current;
937
985
  const n = actualIndex != null ? Number(actualIndex) : null;
@@ -949,7 +997,7 @@ function FloatingComboboxCore({
949
997
  // After filter, the list remounts (Fragment key=filter) so mouseenter often doesn't fire for
950
998
  // elements that appear under a stationary cursor. Use elementFromPoint to set the correct index.
951
999
  useLayoutEffect(() => {
952
- const len = sortedFiltered.length + (showCreateOption ? 1 : 0);
1000
+ const len = navigableOptions.length + (showCreateOption ? 1 : 0);
953
1001
  listItemsRef.current.length = len;
954
1002
  justResetFromFilterRef.current = true;
955
1003
 
@@ -970,7 +1018,7 @@ function FloatingComboboxCore({
970
1018
  } else {
971
1019
  setActiveIndex(0);
972
1020
  }
973
- }, [filter, sortedFiltered.length, showCreateOption]);
1021
+ }, [filter, navigableOptions.length, showCreateOption]);
974
1022
 
975
1023
  const click = useClick(panel.context, { event: "mousedown", keyboardHandlers: false });
976
1024
  const dismiss = useDismiss(panel.context);
@@ -1010,7 +1058,7 @@ function FloatingComboboxCore({
1010
1058
  if (event?.shiftKey && lastSelectedIndexRef.current != null) {
1011
1059
  const from = Math.min(lastSelectedIndexRef.current, index);
1012
1060
  const to = Math.max(lastSelectedIndexRef.current, index);
1013
- const rangeValues = sortedFiltered.slice(from, to + 1).map((o) => o.value);
1061
+ const rangeValues = navigableOptions.slice(from, to + 1).map((o) => o.value);
1014
1062
  const merged = new Set([...current, ...rangeValues]);
1015
1063
  onValueChange?.([...merged]);
1016
1064
  } else {
@@ -1025,7 +1073,7 @@ function FloatingComboboxCore({
1025
1073
  setOpen(false);
1026
1074
  }
1027
1075
  },
1028
- [onValueChange, multiple, value, sortedFiltered],
1076
+ [onValueChange, multiple, value, navigableOptions],
1029
1077
  );
1030
1078
 
1031
1079
  const handleListMouseMove = useCallback(
@@ -1038,7 +1086,7 @@ function FloatingComboboxCore({
1038
1086
  const el = document.elementFromPoint(clientX, clientY);
1039
1087
  const row = el?.closest?.("[data-combobox-index]");
1040
1088
  const actualIndex = row?.getAttribute("data-combobox-index");
1041
- const list = sortedFilteredRef.current;
1089
+ const list = navigableOptionsRef.current;
1042
1090
  const len = list.length + (showCreateOptionRef.current ? 1 : 0);
1043
1091
  const activeIdx = activeIndexRef.current;
1044
1092
  const n = actualIndex != null ? Number(actualIndex) : null;
@@ -1084,7 +1132,7 @@ function FloatingComboboxCore({
1084
1132
  e.preventDefault();
1085
1133
  e.stopPropagation();
1086
1134
  const idx = activeIndexRef.current;
1087
- const list = sortedFilteredRef.current;
1135
+ const list = navigableOptionsRef.current;
1088
1136
  const createIdx = showCreateOptionRef.current ? list.length : -1;
1089
1137
  if (idx === createIdx && showCreateOptionRef.current) {
1090
1138
  handleCreate();
@@ -1149,8 +1197,8 @@ function FloatingComboboxCore({
1149
1197
  if (describedBy) boxEventProps["aria-describedby"] = describedBy;
1150
1198
 
1151
1199
  // Total navigable items includes the create option if shown
1152
- const totalNavigableItems = sortedFiltered.length + (showCreateOption ? 1 : 0);
1153
- const createOptionIndex = showCreateOption ? sortedFiltered.length : -1;
1200
+ const totalNavigableItems = navigableOptions.length + (showCreateOption ? 1 : 0);
1201
+ const createOptionIndex = showCreateOption ? navigableOptions.length : -1;
1154
1202
 
1155
1203
  const handleItemKeyDown = useCallback(
1156
1204
  (e: React.KeyboardEvent, _index: number) => {
@@ -1190,6 +1238,7 @@ function FloatingComboboxCore({
1190
1238
  onItemKeyDown: handleItemKeyDown,
1191
1239
  knobProps,
1192
1240
  textColor,
1241
+ markColor,
1193
1242
  listItemsRef,
1194
1243
  };
1195
1244
 
@@ -1231,8 +1280,8 @@ function FloatingComboboxCore({
1231
1280
  handleCreate();
1232
1281
  } else if (event.key === "Enter" && multiple && hasSelectedSinceOpenRef.current) {
1233
1282
  setOpen(false);
1234
- } else if (activeIndex != null && sortedFiltered[activeIndex]) {
1235
- handleSelect(sortedFiltered[activeIndex], activeIndex);
1283
+ } else if (activeIndex != null && navigableOptions[activeIndex]) {
1284
+ handleSelect(navigableOptions[activeIndex], activeIndex);
1236
1285
  if (event.key === "Enter" || !multiple) setOpen(false);
1237
1286
  } else {
1238
1287
  setOpen(false);
@@ -1245,7 +1294,7 @@ function FloatingComboboxCore({
1245
1294
  }
1246
1295
  },
1247
1296
  [
1248
- sortedFiltered,
1297
+ navigableOptions,
1249
1298
  activeIndex,
1250
1299
  handleSelect,
1251
1300
  handleCreate,
@@ -1318,10 +1367,12 @@ function FloatingComboboxCore({
1318
1367
  cursor={disabled ? "not-allowed" : "pointer"}
1319
1368
  disabled={disabled}
1320
1369
  size={knobProps.sizeToken}
1321
- // One surface owner (OVERLAY_ANCHOR_GAP rule): the open panel covers
1322
- // this trigger (panel top = trigger top), so the trigger's outer focus
1323
- // ring must not paint — it would ghost around the panel's corners.
1324
- suppressFocusRing={open}
1370
+ // One surface owner: a single-value panel COVERS this trigger (panel
1371
+ // top = trigger top), so the trigger's outer focus ring must not paint
1372
+ // — it would ghost around the panel's corners. A multi-select panel
1373
+ // attaches below instead (MPO-38), leaving the trigger on screen and
1374
+ // focusable, so it keeps its ring.
1375
+ suppressFocusRing={open && !multiple}
1325
1376
  {...(inTableCell
1326
1377
  ? // Chromeless in cells, but keep a ≥44px pressable target (SP-FIXED).
1327
1378
  { minHeight: 44 }
@@ -1408,7 +1459,7 @@ function FloatingComboboxCore({
1408
1459
  </View>
1409
1460
  )}
1410
1461
  <View paddingInlineEnd="$2" alignSelf="center">
1411
- <CaretDownIcon size={16} />
1462
+ <CaretDownIcon size={16} color={glyphColor} />
1412
1463
  </View>
1413
1464
  </InputParts.Box>
1414
1465
  );
@@ -1524,41 +1575,31 @@ function FloatingComboboxCore({
1524
1575
  {searchError}
1525
1576
  </Text>
1526
1577
  </View>
1527
- ) : sortedFiltered.length > 0 ? (
1578
+ ) : navigableOptions.length > 0 ? (
1528
1579
  <Fragment key={filter}>
1529
- {multiple
1530
- ? sortedFiltered.map((option, index) => (
1531
- <ComboboxItem
1532
- key={option.value}
1533
- option={option}
1534
- index={index}
1535
- optionId={comboboxOptionId(id, index)}
1536
- isSelected={isSelected(option.value)}
1537
- isActive={index === activeIndex}
1538
- keyboardRing={index === activeIndex && listKeyboardRing}
1539
- suppressHover={activeIndex != null}
1540
- handlers={handlersRef}
1541
- />
1542
- ))
1543
- : groupedItems.map((item, _i) =>
1544
- item.type === "header" ? (
1545
- <GroupHeader key={`header-${item.label}`} color={textColor}>
1546
- {item.label}
1547
- </GroupHeader>
1548
- ) : (
1549
- <ComboboxItem
1550
- key={item.option.value}
1551
- option={item.option}
1552
- index={item.flatIndex}
1553
- optionId={comboboxOptionId(id, item.flatIndex)}
1554
- isSelected={isSelected(item.option.value)}
1555
- isActive={item.flatIndex === activeIndex}
1556
- keyboardRing={item.flatIndex === activeIndex && listKeyboardRing}
1557
- suppressHover={activeIndex != null}
1558
- handlers={handlersRef}
1559
- />
1560
- ),
1561
- )}
1580
+ {groupedItems.map((item) =>
1581
+ item.type === "header" ? (
1582
+ <GroupHeader
1583
+ key={`header-${item.label}`}
1584
+ color={textColor}
1585
+ data-combobox-group-header=""
1586
+ >
1587
+ {item.label}
1588
+ </GroupHeader>
1589
+ ) : (
1590
+ <ComboboxItem
1591
+ key={item.option.value}
1592
+ option={item.option}
1593
+ index={item.flatIndex}
1594
+ optionId={comboboxOptionId(id, item.flatIndex)}
1595
+ isSelected={isSelected(item.option.value)}
1596
+ isActive={item.flatIndex === activeIndex}
1597
+ keyboardRing={item.flatIndex === activeIndex && listKeyboardRing}
1598
+ suppressHover={activeIndex != null}
1599
+ handlers={handlersRef}
1600
+ />
1601
+ ),
1602
+ )}
1562
1603
  {showCreateOption && (
1563
1604
  <ComboboxRow
1564
1605
  role="option"
@@ -1747,6 +1788,7 @@ function NativeComboboxCore({
1747
1788
  trigger: triggerRender,
1748
1789
  knobProps,
1749
1790
  multiple,
1791
+ selectedOrder,
1750
1792
  dismissible,
1751
1793
  creatable,
1752
1794
  onCreate,
@@ -1760,6 +1802,7 @@ function NativeComboboxCore({
1760
1802
  const { t } = useTranslation();
1761
1803
  const inTableCell = useIsInTableCell();
1762
1804
  const describedBy = useFieldDescribedBy();
1805
+ const glyphColor = useGlyphColor();
1763
1806
  const [internalOpen, setInternalOpen] = useState(false);
1764
1807
  // Use external open state when provided (controlled), otherwise use internal state
1765
1808
  const open = openProp !== undefined ? openProp : internalOpen;
@@ -1787,6 +1830,7 @@ function NativeComboboxCore({
1787
1830
  const textColor = knobProps.textAccentColor;
1788
1831
  const theme = useTheme();
1789
1832
  const mutedColor = theme.color7?.val ?? "$color7";
1833
+ const markColor = useSelectedMarkColor();
1790
1834
 
1791
1835
  const labelCacheRef = useRef<Map<string, string>>(new Map());
1792
1836
  for (const o of options) labelCacheRef.current.set(o.value, o.label);
@@ -1867,17 +1911,12 @@ function NativeComboboxCore({
1867
1911
  const hasScrollableContent = Boolean(onSearch) || filtered.length > 6;
1868
1912
  const sheetTransition = knobProps.transition ?? "medium";
1869
1913
 
1870
- // Selected item(s) at top when filter empty (single + multi); reset to normal order when searching
1914
+ // Selected item(s) at top when filter empty (single + multi); `stable` never rearranges
1871
1915
  const sortedFiltered = useMemo(() => {
1872
1916
  if (filter.trim()) return filtered;
1873
1917
  const current = Array.isArray(value) ? value : value ? [value] : [];
1874
- if (current.length === 0) return filtered;
1875
- const first = filtered
1876
- .filter((o) => current.includes(o.value))
1877
- .sort((a, b) => getLabel(a.value).localeCompare(getLabel(b.value)));
1878
- const rest = filtered.filter((o) => !current.includes(o.value));
1879
- return [...first, ...rest];
1880
- }, [filtered, value, filter, getLabel]);
1918
+ return orderOptionsBySelected(filtered, current, selectedOrder);
1919
+ }, [filtered, value, filter, selectedOrder]);
1881
1920
 
1882
1921
  const searchCleanupRef = useRef<(() => void) | null>(null);
1883
1922
  useEffect(() => {
@@ -2181,12 +2220,16 @@ function NativeComboboxCore({
2181
2220
  {option.label}
2182
2221
  </Text>
2183
2222
  )}
2184
- {selected && <CheckIcon size={14} />}
2223
+ {selected && <CheckIcon size={14} color={markColor} />}
2185
2224
  </View>
2186
2225
  );
2187
2226
  return (
2188
2227
  <View key={option.value}>
2189
- {showGroupHeader && <GroupHeader color={textColor}>{option.group}</GroupHeader>}
2228
+ {showGroupHeader && (
2229
+ <GroupHeader color={textColor} data-combobox-group-header="">
2230
+ {option.group}
2231
+ </GroupHeader>
2232
+ )}
2190
2233
  {isWeb ? (
2191
2234
  optionRow
2192
2235
  ) : (
@@ -2336,10 +2379,11 @@ function NativeComboboxCore({
2336
2379
  cursor={disabled ? "not-allowed" : "pointer"}
2337
2380
  disabled={disabled}
2338
2381
  size={knobProps.sizeToken}
2339
- // One surface owner (OVERLAY_ANCHOR_GAP rule): the open FloatingPanel
2340
- // covers this trigger (panel top = trigger top), so the trigger's outer
2341
- // focus ring must not paint — it would ghost around the panel's corners.
2342
- suppressFocusRing={open}
2382
+ // One surface owner: a single-value FloatingPanel COVERS this trigger
2383
+ // (panel top = trigger top), so the trigger's outer focus ring must not
2384
+ // paint — it would ghost around the panel's corners. A multi-select
2385
+ // panel attaches below instead (MPO-38), so it keeps its ring.
2386
+ suppressFocusRing={open && !multiple}
2343
2387
  {...(inTableCell
2344
2388
  ? // Chromeless in cells, but keep a ≥44px pressable target (SP-FIXED).
2345
2389
  { minHeight: 44 }
@@ -2448,7 +2492,7 @@ function NativeComboboxCore({
2448
2492
  </View>
2449
2493
  )}
2450
2494
  <View paddingInlineEnd="$2" alignSelf="center">
2451
- <CaretDownIcon size={16} />
2495
+ <CaretDownIcon size={16} color={glyphColor} />
2452
2496
  </View>
2453
2497
  </InputParts.Box>
2454
2498
  );
@@ -2529,6 +2573,7 @@ export function Combobox({
2529
2573
  popoverWidth,
2530
2574
  tabIndex: tabIndexProp,
2531
2575
  multiple,
2576
+ selectedOrder,
2532
2577
  dismissible,
2533
2578
  skeleton,
2534
2579
  compact,
@@ -2646,6 +2691,7 @@ export function Combobox({
2646
2691
  trigger={trigger}
2647
2692
  knobProps={knobProps}
2648
2693
  multiple={multiple}
2694
+ selectedOrder={selectedOrder}
2649
2695
  dismissible={dismissible}
2650
2696
  creatable={creatable}
2651
2697
  onCreate={onCreate}