@multiplatform.one/forms 7.58.0 → 7.60.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 (331) hide show
  1. package/dist/cjs/FloatingPanel/index.native.js +8 -2
  2. package/dist/cjs/FloatingPanel/index.native.js.map +1 -1
  3. package/dist/cjs/fields/DatePicker/DateRangePicker.cjs +5 -9
  4. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js +5 -9
  5. package/dist/cjs/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  6. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.cjs +7 -11
  7. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js +7 -11
  8. package/dist/cjs/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  9. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js +5 -9
  10. package/dist/cjs/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  11. package/dist/cjs/fields/DatePicker/MonthPicker.cjs +5 -9
  12. package/dist/cjs/fields/DatePicker/MonthPicker.native.js +5 -9
  13. package/dist/cjs/fields/DatePicker/MonthPicker.native.js.map +1 -1
  14. package/dist/cjs/fields/DatePicker/MultiDatePicker.cjs +5 -9
  15. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js +5 -9
  16. package/dist/cjs/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  17. package/dist/cjs/fields/DatePicker/catalog.cjs +5 -9
  18. package/dist/cjs/fields/DatePicker/catalog.native.js +5 -9
  19. package/dist/cjs/fields/DatePicker/catalog.native.js.map +1 -1
  20. package/dist/cjs/fields/DatePicker/index.native.js +5 -9
  21. package/dist/cjs/fields/DatePicker/index.native.js.map +1 -1
  22. package/dist/cjs/fields/DatePicker/parts.cjs +46 -4
  23. package/dist/cjs/fields/DatePicker/parts.native.js +50 -5
  24. package/dist/cjs/fields/DatePicker/parts.native.js.map +1 -1
  25. package/dist/cjs/fields/Select/InlineChoices.cjs +148 -0
  26. package/dist/cjs/fields/Select/InlineChoices.native.js +163 -0
  27. package/dist/cjs/fields/Select/InlineChoices.native.js.map +1 -0
  28. package/dist/cjs/fields/Select/index.cjs +66 -15
  29. package/dist/cjs/fields/Select/index.native.js +73 -17
  30. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  31. package/dist/cjs/fields/Select/shouldInlineChoices.cjs +37 -0
  32. package/dist/cjs/fields/Select/shouldInlineChoices.native.js +43 -0
  33. package/dist/cjs/fields/Select/shouldInlineChoices.native.js.map +1 -0
  34. package/dist/cjs/fields/TimePicker/catalog.cjs +1 -1
  35. package/dist/cjs/fields/TimePicker/catalog.native.js +1 -1
  36. package/dist/cjs/fields/TimePicker/catalog.native.js.map +1 -1
  37. package/dist/cjs/fields/TimePicker/index.native.js +2 -2
  38. package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
  39. package/dist/cjs/fields/TimePicker/parts.cjs +13 -11
  40. package/dist/cjs/fields/TimePicker/parts.native.js +16 -13
  41. package/dist/cjs/fields/TimePicker/parts.native.js.map +1 -1
  42. package/dist/esm/AdaptivePopup/index.native.js.map +1 -1
  43. package/dist/esm/Button/index.native.js.map +1 -1
  44. package/dist/esm/Chip/index.native.js.map +1 -1
  45. package/dist/esm/ContextualSaveBar/UnsavedChangesDialog.native.js.map +1 -1
  46. package/dist/esm/ContextualSaveBar/clientKnownIdentity.native.js.map +1 -1
  47. package/dist/esm/ContextualSaveBar/commitImmediateField.native.js.map +1 -1
  48. package/dist/esm/ContextualSaveBar/index.native.js.map +1 -1
  49. package/dist/esm/ContextualSaveBar/useUnsavedChangesGuard.native.js.map +1 -1
  50. package/dist/esm/ControlGroup/index.native.js.map +1 -1
  51. package/dist/esm/DescriptionList/index.native.js.map +1 -1
  52. package/dist/esm/ErrorSummary.native.js.map +1 -1
  53. package/dist/esm/FieldDisplay/editMode.native.js.map +1 -1
  54. package/dist/esm/FieldDisplay/formatters.native.js.map +1 -1
  55. package/dist/esm/FieldDisplay/index.native.js.map +1 -1
  56. package/dist/esm/FieldGroup.native.js.map +1 -1
  57. package/dist/esm/FloatingPanel/compactFace.native.js.map +1 -1
  58. package/dist/esm/FloatingPanel/index.native.js +8 -2
  59. package/dist/esm/FloatingPanel/index.native.js.map +1 -1
  60. package/dist/esm/FloatingPanel/nestedAction.native.js.map +1 -1
  61. package/dist/esm/FloatingPanel/pointAnchor.native.js.map +1 -1
  62. package/dist/esm/FloatingPanel/trailingAction.native.js.map +1 -1
  63. package/dist/esm/FloatingPanel/useFloatingPanel.native.js.map +1 -1
  64. package/dist/esm/Form/index.native.js.map +1 -1
  65. package/dist/esm/Form/submissionController.native.js.map +1 -1
  66. package/dist/esm/Form/validateOn.native.js.map +1 -1
  67. package/dist/esm/FormGrid.native.js.map +1 -1
  68. package/dist/esm/FormSection.native.js.map +1 -1
  69. package/dist/esm/InputParts/PasswordReveal.native.js.map +1 -1
  70. package/dist/esm/InputParts/index.native.js.map +1 -1
  71. package/dist/esm/Label/index.native.js.map +1 -1
  72. package/dist/esm/MediaPicker/base64.native.js.map +1 -1
  73. package/dist/esm/MediaPicker/payload.native.js.map +1 -1
  74. package/dist/esm/MediaPicker/types.native.js.map +1 -1
  75. package/dist/esm/MediaPicker/useMediaPicker.native.js.map +1 -1
  76. package/dist/esm/Skeleton/index.native.js.map +1 -1
  77. package/dist/esm/Spinner/SpinnerGlyph.native.js.map +1 -1
  78. package/dist/esm/Spinner/spinnerSize.native.js.map +1 -1
  79. package/dist/esm/Table/index.native.js.map +1 -1
  80. package/dist/esm/Wheel/haptic.native.js.map +1 -1
  81. package/dist/esm/Wheel/index.native.js.map +1 -1
  82. package/dist/esm/Wheel/wheelShared.native.js.map +1 -1
  83. package/dist/esm/actionLabel.native.js.map +1 -1
  84. package/dist/esm/fieldDefaults.native.js.map +1 -1
  85. package/dist/esm/fieldLayout.native.js.map +1 -1
  86. package/dist/esm/fields/Barcode/BarcodePreview.native.js.map +1 -1
  87. package/dist/esm/fields/Barcode/code128.native.js.map +1 -1
  88. package/dist/esm/fields/Barcode/index.native.js.map +1 -1
  89. package/dist/esm/fields/Barcode/qr.native.js.map +1 -1
  90. package/dist/esm/fields/Barcode/scannerTypes.native.js.map +1 -1
  91. package/dist/esm/fields/Checkbox/Checkbox.native.js.map +1 -1
  92. package/dist/esm/fields/Checkbox/CheckboxBox.native.js.map +1 -1
  93. package/dist/esm/fields/Checkbox/CheckboxCard.native.js.map +1 -1
  94. package/dist/esm/fields/Checkbox/CheckboxFieldFrame.native.js.map +1 -1
  95. package/dist/esm/fields/Checkbox/CheckboxGroup.native.js.map +1 -1
  96. package/dist/esm/fields/Checkbox/checkboxGroupContext.native.js.map +1 -1
  97. package/dist/esm/fields/Checkbox/index.native.js.map +1 -1
  98. package/dist/esm/fields/ColorPicker/index.native.js.map +1 -1
  99. package/dist/esm/fields/ColorPicker/parts.native.js.map +1 -1
  100. package/dist/esm/fields/Combobox/authorOptions.native.js.map +1 -1
  101. package/dist/esm/fields/Combobox/index.native.js.map +1 -1
  102. package/dist/esm/fields/DatePicker/Calendar.native.js.map +1 -1
  103. package/dist/esm/fields/DatePicker/DateRangePicker.mjs +6 -10
  104. package/dist/esm/fields/DatePicker/DateRangePicker.mjs.map +1 -1
  105. package/dist/esm/fields/DatePicker/DateRangePicker.native.js +6 -10
  106. package/dist/esm/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  107. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs +8 -12
  108. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
  109. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js +8 -12
  110. package/dist/esm/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  111. package/dist/esm/fields/DatePicker/DatetimePicker.native.js +6 -10
  112. package/dist/esm/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  113. package/dist/esm/fields/DatePicker/MonthPicker.mjs +6 -10
  114. package/dist/esm/fields/DatePicker/MonthPicker.mjs.map +1 -1
  115. package/dist/esm/fields/DatePicker/MonthPicker.native.js +6 -10
  116. package/dist/esm/fields/DatePicker/MonthPicker.native.js.map +1 -1
  117. package/dist/esm/fields/DatePicker/MultiDatePicker.mjs +6 -10
  118. package/dist/esm/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
  119. package/dist/esm/fields/DatePicker/MultiDatePicker.native.js +6 -10
  120. package/dist/esm/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  121. package/dist/esm/fields/DatePicker/catalog.mjs +6 -10
  122. package/dist/esm/fields/DatePicker/catalog.mjs.map +1 -1
  123. package/dist/esm/fields/DatePicker/catalog.native.js +6 -10
  124. package/dist/esm/fields/DatePicker/catalog.native.js.map +1 -1
  125. package/dist/esm/fields/DatePicker/fieldValueSync.native.js.map +1 -1
  126. package/dist/esm/fields/DatePicker/index.native.js +6 -10
  127. package/dist/esm/fields/DatePicker/index.native.js.map +1 -1
  128. package/dist/esm/fields/DatePicker/parts.mjs +46 -5
  129. package/dist/esm/fields/DatePicker/parts.mjs.map +1 -1
  130. package/dist/esm/fields/DatePicker/parts.native.js +50 -6
  131. package/dist/esm/fields/DatePicker/parts.native.js.map +1 -1
  132. package/dist/esm/fields/DatePicker/utils.native.js.map +1 -1
  133. package/dist/esm/fields/Duration/durationMath.native.js.map +1 -1
  134. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  135. package/dist/esm/fields/FileUpload/filePickerTypes.native.js.map +1 -1
  136. package/dist/esm/fields/FileUpload/index.native.js.map +1 -1
  137. package/dist/esm/fields/FileUpload/nativePickerLoader.native.js.map +1 -1
  138. package/dist/esm/fields/Geolocation/expoMapsLoader.native.js.map +1 -1
  139. package/dist/esm/fields/Geolocation/geoValue.native.js.map +1 -1
  140. package/dist/esm/fields/Geolocation/geocoder.native.js.map +1 -1
  141. package/dist/esm/fields/Geolocation/geocoderContext.native.js.map +1 -1
  142. package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
  143. package/dist/esm/fields/Geolocation/mapMath.native.js.map +1 -1
  144. package/dist/esm/fields/Geolocation/mapTypes.native.js.map +1 -1
  145. package/dist/esm/fields/Geolocation/nativeSearchFocus.native.js.map +1 -1
  146. package/dist/esm/fields/Geolocation/photonGeocoder.native.js.map +1 -1
  147. package/dist/esm/fields/Icon/drawnSet.native.js.map +1 -1
  148. package/dist/esm/fields/Icon/index.native.js.map +1 -1
  149. package/dist/esm/fields/ImageField/index.native.js.map +1 -1
  150. package/dist/esm/fields/Input/index.native.js.map +1 -1
  151. package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
  152. package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
  153. package/dist/esm/fields/OTPInput/otpCellCss.native.js.map +1 -1
  154. package/dist/esm/fields/PhoneInput/dialCodes.native.js.map +1 -1
  155. package/dist/esm/fields/PhoneInput/index.native.js.map +1 -1
  156. package/dist/esm/fields/PhoneInput/phone.native.js.map +1 -1
  157. package/dist/esm/fields/PhoneInput/regionNames.native.js.map +1 -1
  158. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  159. package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
  160. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  161. package/dist/esm/fields/Rating/ratingMath.native.js.map +1 -1
  162. package/dist/esm/fields/Rating/types.native.js.map +1 -1
  163. package/dist/esm/fields/SearchInput/index.native.js.map +1 -1
  164. package/dist/esm/fields/Select/InlineChoices.mjs +123 -0
  165. package/dist/esm/fields/Select/InlineChoices.mjs.map +1 -0
  166. package/dist/esm/fields/Select/InlineChoices.native.js +135 -0
  167. package/dist/esm/fields/Select/InlineChoices.native.js.map +1 -0
  168. package/dist/esm/fields/Select/index.mjs +67 -16
  169. package/dist/esm/fields/Select/index.mjs.map +1 -1
  170. package/dist/esm/fields/Select/index.native.js +74 -18
  171. package/dist/esm/fields/Select/index.native.js.map +1 -1
  172. package/dist/esm/fields/Select/shouldInlineChoices.mjs +11 -0
  173. package/dist/esm/fields/Select/shouldInlineChoices.mjs.map +1 -0
  174. package/dist/esm/fields/Select/shouldInlineChoices.native.js +14 -0
  175. package/dist/esm/fields/Select/shouldInlineChoices.native.js.map +1 -0
  176. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  177. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  178. package/dist/esm/fields/Slider/jumpMotion.native.js.map +1 -1
  179. package/dist/esm/fields/Stepper/index.native.js.map +1 -1
  180. package/dist/esm/fields/Stepper/resolveStepperPlacement.native.js.map +1 -1
  181. package/dist/esm/fields/Switch/footprint.native.js.map +1 -1
  182. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  183. package/dist/esm/fields/TextArea/index.native.js.map +1 -1
  184. package/dist/esm/fields/TimePicker/catalog.mjs +1 -1
  185. package/dist/esm/fields/TimePicker/catalog.mjs.map +1 -1
  186. package/dist/esm/fields/TimePicker/catalog.native.js +1 -1
  187. package/dist/esm/fields/TimePicker/catalog.native.js.map +1 -1
  188. package/dist/esm/fields/TimePicker/index.native.js +2 -2
  189. package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
  190. package/dist/esm/fields/TimePicker/parts.mjs +13 -11
  191. package/dist/esm/fields/TimePicker/parts.mjs.map +1 -1
  192. package/dist/esm/fields/TimePicker/parts.native.js +16 -13
  193. package/dist/esm/fields/TimePicker/parts.native.js.map +1 -1
  194. package/dist/esm/fields/TimeRangeScrubber/geometry.native.js.map +1 -1
  195. package/dist/esm/fields/TimeRangeScrubber/index.native.js.map +1 -1
  196. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  197. package/dist/esm/fields/nativeDateTime/OsDateTimeSheet.native.js.map +1 -1
  198. package/dist/esm/fields/nativeDateTime/dateTimePickerLoader.native.js.map +1 -1
  199. package/dist/esm/fields/nativeDateTime/osDateTimeIosDisplay.native.js.map +1 -1
  200. package/dist/esm/fields/nativeSelect.native.js.map +1 -1
  201. package/dist/esm/fields/selectedOrder.native.js.map +1 -1
  202. package/dist/esm/formSpacing.native.js.map +1 -1
  203. package/dist/esm/hooks/useFocusManagement.native.js.map +1 -1
  204. package/dist/esm/index.native.js.map +1 -1
  205. package/dist/esm/keyboard/chain.native.js.map +1 -1
  206. package/dist/esm/keyboard/index.native.js.map +1 -1
  207. package/dist/esm/keyboard/types.native.js.map +1 -1
  208. package/dist/esm/requiredMarking.native.js.map +1 -1
  209. package/dist/esm/shared/TimeColumn.native.js.map +1 -1
  210. package/dist/esm/shared/capabilityPreflight.native.js.map +1 -1
  211. package/dist/esm/shared/choiceRowPress.native.js.map +1 -1
  212. package/dist/esm/shared/colorRamps.native.js.map +1 -1
  213. package/dist/esm/shared/devWarn.native.js.map +1 -1
  214. package/dist/esm/shared/floatingList.native.js.map +1 -1
  215. package/dist/esm/shared/focusManagement.native.js.map +1 -1
  216. package/dist/esm/shared/groupContext.native.js.map +1 -1
  217. package/dist/esm/shared/i18n.native.js.map +1 -1
  218. package/dist/esm/shared/instantMotion.native.js.map +1 -1
  219. package/dist/esm/shared/nativeA11y.native.js.map +1 -1
  220. package/dist/esm/shared/nativeAutoFocus.native.js.map +1 -1
  221. package/dist/esm/shared/overlayStack.native.js.map +1 -1
  222. package/dist/esm/shared/panelPortal.native.js.map +1 -1
  223. package/dist/esm/shared/pickerTriggerContract.native.js.map +1 -1
  224. package/dist/esm/shared/pressSlopProps.native.js.map +1 -1
  225. package/dist/esm/shared/restoreRetries.native.js.map +1 -1
  226. package/dist/esm/shared/t.native.js.map +1 -1
  227. package/dist/esm/shared/tableCellContext.native.js.map +1 -1
  228. package/dist/esm/shared/useDragScroll.native.js.map +1 -1
  229. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
  230. package/dist/esm/shared/useSheetEscapeDismiss.native.js.map +1 -1
  231. package/dist/esm/shared/useWheelIncrement.native.js.map +1 -1
  232. package/dist/esm/shared/utils.native.js.map +1 -1
  233. package/dist/esm/shared/zIndex.native.js.map +1 -1
  234. package/dist/esm/themedPrimitives.native.js.map +1 -1
  235. package/dist/esm/types.native.js.map +1 -1
  236. package/dist/esm/utils/LinkCell.native.js.map +1 -1
  237. package/dist/jsx/FloatingPanel/index.native.js +8 -2
  238. package/dist/jsx/FloatingPanel/index.native.js.map +1 -1
  239. package/dist/jsx/fields/DatePicker/DateRangePicker.mjs +6 -10
  240. package/dist/jsx/fields/DatePicker/DateRangePicker.mjs.map +1 -1
  241. package/dist/jsx/fields/DatePicker/DateRangePicker.native.js +5 -9
  242. package/dist/jsx/fields/DatePicker/DateRangePicker.native.js.map +1 -1
  243. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs +8 -12
  244. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.mjs.map +1 -1
  245. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js +7 -11
  246. package/dist/jsx/fields/DatePicker/DatetimePicker.catalog.native.js.map +1 -1
  247. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js +5 -9
  248. package/dist/jsx/fields/DatePicker/DatetimePicker.native.js.map +1 -1
  249. package/dist/jsx/fields/DatePicker/MonthPicker.mjs +6 -10
  250. package/dist/jsx/fields/DatePicker/MonthPicker.mjs.map +1 -1
  251. package/dist/jsx/fields/DatePicker/MonthPicker.native.js +5 -9
  252. package/dist/jsx/fields/DatePicker/MonthPicker.native.js.map +1 -1
  253. package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs +6 -10
  254. package/dist/jsx/fields/DatePicker/MultiDatePicker.mjs.map +1 -1
  255. package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js +5 -9
  256. package/dist/jsx/fields/DatePicker/MultiDatePicker.native.js.map +1 -1
  257. package/dist/jsx/fields/DatePicker/catalog.mjs +6 -10
  258. package/dist/jsx/fields/DatePicker/catalog.mjs.map +1 -1
  259. package/dist/jsx/fields/DatePicker/catalog.native.js +5 -9
  260. package/dist/jsx/fields/DatePicker/catalog.native.js.map +1 -1
  261. package/dist/jsx/fields/DatePicker/index.native.js +5 -9
  262. package/dist/jsx/fields/DatePicker/index.native.js.map +1 -1
  263. package/dist/jsx/fields/DatePicker/parts.mjs +46 -5
  264. package/dist/jsx/fields/DatePicker/parts.mjs.map +1 -1
  265. package/dist/jsx/fields/DatePicker/parts.native.js +50 -5
  266. package/dist/jsx/fields/DatePicker/parts.native.js.map +1 -1
  267. package/dist/jsx/fields/Select/InlineChoices.mjs +123 -0
  268. package/dist/jsx/fields/Select/InlineChoices.mjs.map +1 -0
  269. package/dist/jsx/fields/Select/InlineChoices.native.js +163 -0
  270. package/dist/jsx/fields/Select/InlineChoices.native.js.map +1 -0
  271. package/dist/jsx/fields/Select/index.mjs +67 -16
  272. package/dist/jsx/fields/Select/index.mjs.map +1 -1
  273. package/dist/jsx/fields/Select/index.native.js +73 -17
  274. package/dist/jsx/fields/Select/index.native.js.map +1 -1
  275. package/dist/jsx/fields/Select/shouldInlineChoices.mjs +11 -0
  276. package/dist/jsx/fields/Select/shouldInlineChoices.mjs.map +1 -0
  277. package/dist/jsx/fields/Select/shouldInlineChoices.native.js +43 -0
  278. package/dist/jsx/fields/Select/shouldInlineChoices.native.js.map +1 -0
  279. package/dist/jsx/fields/TimePicker/catalog.mjs +1 -1
  280. package/dist/jsx/fields/TimePicker/catalog.mjs.map +1 -1
  281. package/dist/jsx/fields/TimePicker/catalog.native.js +1 -1
  282. package/dist/jsx/fields/TimePicker/catalog.native.js.map +1 -1
  283. package/dist/jsx/fields/TimePicker/index.native.js +2 -2
  284. package/dist/jsx/fields/TimePicker/index.native.js.map +1 -1
  285. package/dist/jsx/fields/TimePicker/parts.mjs +13 -11
  286. package/dist/jsx/fields/TimePicker/parts.mjs.map +1 -1
  287. package/dist/jsx/fields/TimePicker/parts.native.js +16 -13
  288. package/dist/jsx/fields/TimePicker/parts.native.js.map +1 -1
  289. package/dist/jsx/index.native.js.map +1 -1
  290. package/package.json +8 -8
  291. package/src/FloatingPanel/FloatingPanel.menuFace.native.spec.tsx +13 -1
  292. package/src/FloatingPanel/index.native.tsx +8 -1
  293. package/src/fields/DatePicker/DatePicker.stories.tsx +6 -2
  294. package/src/fields/DatePicker/DateRangePicker.tsx +7 -10
  295. package/src/fields/DatePicker/DatetimePicker.catalog.tsx +9 -12
  296. package/src/fields/DatePicker/DatetimePicker.native.tsx +7 -11
  297. package/src/fields/DatePicker/DatetimePicker.stories.tsx +11 -2
  298. package/src/fields/DatePicker/MonthPicker.tsx +7 -10
  299. package/src/fields/DatePicker/MultiDatePicker.tsx +7 -10
  300. package/src/fields/DatePicker/catalog.tsx +7 -10
  301. package/src/fields/DatePicker/fieldStates.spec.tsx +120 -0
  302. package/src/fields/DatePicker/index.native.tsx +7 -11
  303. package/src/fields/DatePicker/parts.tsx +61 -2
  304. package/src/fields/Select/InlineChoices.tsx +156 -0
  305. package/src/fields/Select/index.tsx +64 -39
  306. package/src/fields/Select/shouldInlineChoices.spec.ts +25 -0
  307. package/src/fields/Select/shouldInlineChoices.ts +22 -0
  308. package/src/fields/TimePicker/TimePicker.stories.tsx +3 -4
  309. package/src/fields/TimePicker/catalog.tsx +1 -1
  310. package/src/fields/TimePicker/index.native.tsx +2 -2
  311. package/src/fields/TimePicker/parts.tsx +15 -9
  312. package/types/FloatingPanel/index.native.d.ts +1 -1
  313. package/types/FloatingPanel/index.native.d.ts.map +1 -1
  314. package/types/fields/Checkbox/index.d.ts +3 -3
  315. package/types/fields/DatePicker/DateRangePicker.d.ts.map +1 -1
  316. package/types/fields/DatePicker/DatetimePicker.catalog.d.ts.map +1 -1
  317. package/types/fields/DatePicker/DatetimePicker.native.d.ts.map +1 -1
  318. package/types/fields/DatePicker/MonthPicker.d.ts.map +1 -1
  319. package/types/fields/DatePicker/MultiDatePicker.d.ts.map +1 -1
  320. package/types/fields/DatePicker/catalog.d.ts.map +1 -1
  321. package/types/fields/DatePicker/index.native.d.ts.map +1 -1
  322. package/types/fields/DatePicker/parts.d.ts +14 -0
  323. package/types/fields/DatePicker/parts.d.ts.map +1 -1
  324. package/types/fields/Select/InlineChoices.d.ts +29 -0
  325. package/types/fields/Select/InlineChoices.d.ts.map +1 -0
  326. package/types/fields/Select/index.d.ts +6 -0
  327. package/types/fields/Select/index.d.ts.map +1 -1
  328. package/types/fields/Select/shouldInlineChoices.d.ts +16 -0
  329. package/types/fields/Select/shouldInlineChoices.d.ts.map +1 -0
  330. package/types/fields/TimePicker/parts.d.ts +3 -1
  331. package/types/fields/TimePicker/parts.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","parts_exports","CalendarChromeButton","CalendarDayCell","CalendarDaySlot","CalendarDays","CalendarHeader","CalendarPanelFrame","CalendarTextButton","CalendarViewSwitcher","CalendarWeekRow","DatePickerClearButton","DatePickerInputTrigger","DatePickerPopoverShell","MonthGrid","WeekView","YearGrid","dayCellRadius","formatDateDisplay","isSameDay","months","toWeeks","useCalendarData","useCalendarKnobs","useDateAnimation","useDateNavigation","weekdays","yearPageSize","module","exports","import_jsx_runtime","require","import_theme","import_react","import_theme2","import_react2","import_tamagui","import_FloatingPanel","import_InputParts","import_colorRamps","import_t","current","prev","useRef","direction","useMemo","useEffect","animation","enterStyle","opacity","x","exitStyle","animationKey","monthNames","getMonthNames","displayDate","year","getFullYear","month","getMonth","firstDay","Date","lastDay","startDate","setDate","getDate","getDay","endDate","days","push","monthName","today","initialDate","setDisplayDate","useState","navigateMonth","useCallback","next","setMonth","result","i","length","slice","a","b","toDateString","knobProps","style","borderRadius","pointy","useResolvedKnobs","param","children","px","nestedControl","jsx","View","flexDirection","alignItems","gap","minWidth","alignSelf","panelPadding","splitNestedControl","nested","hitSlop","box","calendarKeyHandler","onPress","e","_e_preventDefault","preventDefault","label","role","cursor","justifyContent","outlineWidth","focusStyle","focusVisibleStyle","ensureFocusVisibleRing","isWeb","tabIndex","onKeyDown","accessible","paddingVertical","paddingHorizontal","width","height","position","day","selected","disabled","visible","dimmed","selectedBackground","accentText","useAccentOnSurface","showTodayMark","resolvedTabIndex","String","onPress1","pointerEvents","backgroundColor","theme","borderWidth","borderColor","zIndex","outlineOffset","onKeyDown1","Text","textWeight","fontWeight","color","formCommonColors","text","calendarData","minDate","maxDate","isSelected","onSelect","skipEmptyWeeks","rangeStripe","onToday","selectionCapped","weeks","focusedDay","setFocusedDay","_ref","_ref1","find","moveFocus","delta","idx","findIndex","requestAnimationFrame","_document_querySelector_focus","_document_querySelector","document","querySelector","focus","todayOutOfRange","AnimatePresence","jsxs","transitionProps","motion","slide","t","map","week","hasCurrentMonthDay","some","d","toISOString","isCurrentMonth","isToday","isOutOfRange","isDisabled","cell","muted","textAlign","onPrevMonth","onNextMonth","onYearPress","onMonthPress","showPrev","showNext","glyphColor","useGlyphColor","CaretLeftIcon","size","controlIcon","SizableText","fontSize","heading","CaretRightIcon","currentYear","selectedMonth","onSelectMonth","cellW","flexWrap","index","maxWidth","minHeight","maxHeight","yearPageStart","selectedYear","onSelectYear","onPrevPage","onNextPage","years","onReset","Input","Action","floatingPanelActionProps","XIcon","onButtonPress","placeholder","id","open","glyph","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaRequired","ariaInvalid","handleTriggerKey","handleTriggerKey2","isNestedPanelAction","code","_e_preventDefault1","Glyph","ClockIcon","CalendarBlankIcon","Box","flex","elevation","Section","Icon","adornment","Area","readOnly","placeholderTextColor","onOpenChange","trigger","triggerEnd","triggerA11y","clearValue","onClear","nativeClear","FloatingPanel","sizing","contentPadding","widthMode","onSetDisplayDate","viewMode","setViewMode","setYearPageStart","handleSelectMonth","newDate","handleSelectYear","setFullYear","s","Fragment","date","formatAbsoluteDate"],"sources":["parts.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar parts_exports = {};\n__export(parts_exports, {\n CalendarChromeButton: () => CalendarChromeButton,\n CalendarDayCell: () => CalendarDayCell,\n CalendarDaySlot: () => CalendarDaySlot,\n CalendarDays: () => CalendarDays,\n CalendarHeader: () => CalendarHeader,\n CalendarPanelFrame: () => CalendarPanelFrame,\n CalendarTextButton: () => CalendarTextButton,\n CalendarViewSwitcher: () => CalendarViewSwitcher,\n CalendarWeekRow: () => CalendarWeekRow,\n DatePickerClearButton: () => DatePickerClearButton,\n DatePickerInputTrigger: () => DatePickerInputTrigger,\n DatePickerPopoverShell: () => DatePickerPopoverShell,\n MonthGrid: () => MonthGrid,\n WeekView: () => WeekView,\n YearGrid: () => YearGrid,\n dayCellRadius: () => dayCellRadius,\n formatDateDisplay: () => formatDateDisplay,\n isSameDay: () => isSameDay,\n months: () => months,\n toWeeks: () => toWeeks,\n useCalendarData: () => useCalendarData,\n useCalendarKnobs: () => useCalendarKnobs,\n useDateAnimation: () => useDateAnimation,\n useDateNavigation: () => useDateNavigation,\n weekdays: () => weekdays,\n yearPageSize: () => yearPageSize\n});\nmodule.exports = __toCommonJS(parts_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react = require(\"@phosphor-icons/react\");\nvar import_theme2 = require(\"@multiplatform.one/theme\");\nvar import_react2 = require(\"react\");\nvar import_tamagui = require(\"tamagui\");\nvar import_FloatingPanel = require(\"../../FloatingPanel\");\nvar import_InputParts = require(\"../../InputParts\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_t = require(\"../../shared/t\");\nvar weekdays = [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n];\nvar months = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar yearPageSize = 12;\nfunction useDateAnimation(current) {\n var prev = (0, import_react2.useRef)(null);\n var direction = (0, import_react2.useMemo)(function() {\n if (prev.current === null) return 0;\n return current > prev.current ? 1 : current < prev.current ? -1 : 0;\n }, [\n current\n ]);\n (0, import_react2.useEffect)(function() {\n prev.current = current;\n }, [\n current\n ]);\n var animation = (0, import_react2.useMemo)(function() {\n return {\n enterStyle: {\n opacity: 0,\n x: direction * 15\n },\n exitStyle: {\n opacity: 0,\n x: direction * -15\n }\n };\n }, [\n direction\n ]);\n return {\n animation,\n animationKey: current\n };\n}\nvar monthNames = (0, import_theme2.getMonthNames)();\nfunction useCalendarData(displayDate) {\n return (0, import_react2.useMemo)(function() {\n var year = displayDate.getFullYear();\n var month = displayDate.getMonth();\n var firstDay = new Date(year, month, 1);\n var lastDay = new Date(year, month + 1, 0);\n var startDate = new Date(firstDay);\n startDate.setDate(startDate.getDate() - firstDay.getDay());\n var endDate = new Date(lastDay);\n endDate.setDate(endDate.getDate() + (6 - lastDay.getDay()));\n var days = [];\n var current = new Date(startDate);\n while (current <= endDate) {\n days.push(new Date(current));\n current.setDate(current.getDate() + 1);\n }\n return {\n year,\n month,\n monthName: monthNames[month],\n days,\n today: /* @__PURE__ */ new Date()\n };\n }, [\n displayDate\n ]);\n}\nfunction useDateNavigation(initialDate) {\n var [displayDate, setDisplayDate] = (0, import_react2.useState)(initialDate !== null && initialDate !== void 0 ? initialDate : /* @__PURE__ */ new Date());\n var navigateMonth = (0, import_react2.useCallback)(function(direction) {\n setDisplayDate(function(prev) {\n var next = new Date(prev);\n next.setDate(1);\n next.setMonth(next.getMonth() + (direction === \"prev\" ? -1 : 1));\n return next;\n });\n }, []);\n return {\n displayDate,\n setDisplayDate,\n navigateMonth\n };\n}\nfunction toWeeks(days) {\n var result = [];\n for (var i = 0; i < days.length; i += 7) {\n result.push(days.slice(i, i + 7));\n }\n return result;\n}\nfunction isSameDay(a, b) {\n if (!a || !b) return false;\n return a.toDateString() === b.toDateString();\n}\nfunction dayCellRadius(knobProps) {\n return {\n style: {\n borderRadius: knobProps.pointy ? 0 : 9999\n }\n };\n}\nfunction useCalendarKnobs() {\n return (0, import_theme2.useResolvedKnobs)();\n}\nfunction CalendarPanelFrame(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"column\",\n alignItems: \"center\",\n ...knobProps.gap,\n minWidth: px * 7,\n alignSelf: \"center\",\n ...knobProps.panelPadding,\n \"data-testid\": \"date-picker-calendar\",\n children\n });\n}\nfunction splitNestedControl(nested) {\n var { px, hitSlop, ...box } = nested;\n return {\n px,\n hitSlop,\n box\n };\n}\nfunction calendarKeyHandler(onPress) {\n return function(e) {\n if (e.key === \"Enter\" || e.key === \" \") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onPress();\n }\n };\n}\nfunction CalendarChromeButton(param) {\n var { onPress, label, children } = param;\n var { knobProps } = useCalendarKnobs();\n var { hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n role: \"button\",\n \"aria-label\": label,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)(),\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarTextButton(param) {\n var { onPress, children } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n role: \"button\",\n cursor: \"pointer\",\n paddingVertical: 2,\n paddingHorizontal: 4,\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)(),\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarDaySlot(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n children\n });\n}\nfunction CalendarWeekRow(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n children\n });\n}\nfunction CalendarDayCell(param) {\n var { day, selected, today, disabled, visible = true, dimmed, tabIndex, onPress, onKeyDown, selectedBackground } = param;\n var { knobProps } = useCalendarKnobs();\n var accentText = (0, import_theme2.useAccentOnSurface)();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n if (!visible) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px\n });\n }\n var showTodayMark = !!today && !selected;\n var resolvedTabIndex = tabIndex !== null && tabIndex !== void 0 ? tabIndex : disabled ? -1 : 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n ...dayCellRadius(knobProps),\n role: \"button\",\n \"aria-label\": String(day.getDate()),\n \"aria-disabled\": disabled || void 0,\n \"aria-pressed\": selected || void 0,\n \"aria-current\": today ? \"date\" : void 0,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress: function onPress1() {\n if (!disabled) onPress();\n },\n // Adjacent-month spill uses this file's 0.45 day-cell dim.\n // Unavailable (min/max or multi-select cap) uses the 0.5 disabled\n // idiom from the Today control and the trigger Box. Unavailable\n // wins when both apply so an out-of-range adjacent day does not\n // look like a pickable spill-over day. Bento paints this state\n // identical to a choosable cell; we do not adopt that.\n opacity: disabled ? 0.5 : dimmed ? 0.45 : 1,\n pointerEvents: disabled ? \"none\" : \"auto\",\n backgroundColor: selected ? selectedBackground !== null && selectedBackground !== void 0 ? selectedBackground : \"$background\" : \"transparent\",\n theme: selected ? \"accent\" : void 0,\n borderWidth: showTodayMark ? 2 : 0,\n borderColor: showTodayMark ? accentText : \"transparent\",\n zIndex: 1,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n \"data-calendar-day\": `${day.getFullYear()}-${day.getMonth()}-${day.getDate()}`,\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: resolvedTabIndex,\n onKeyDown: function onKeyDown1(e) {\n if (!disabled) calendarKeyHandler(onPress)(e);\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n }\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n fontWeight: selected ? \"bold\" : knobProps.textWeight.fontWeight,\n color: selected ? void 0 : today ? accentText : import_colorRamps.formCommonColors.text,\n children: day.getDate()\n })\n });\n}\nfunction CalendarDays(param) {\n var { calendarData, minDate, maxDate, isSelected, onSelect, selectedBackground, skipEmptyWeeks, rangeStripe, onToday, selectionCapped } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(`${calendarData.year}-${calendarData.month}`);\n var weeks = toWeeks(calendarData.days);\n var { px } = knobProps.nestedControl;\n var [focusedDay, setFocusedDay] = (0, import_react2.useState)(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n return (_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null;\n });\n (0, import_react2.useEffect)(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n setFocusedDay((_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null);\n }, [\n calendarData.year,\n calendarData.month\n ]);\n var moveFocus = (0, import_react2.useCallback)(function(from, delta) {\n var idx = calendarData.days.findIndex(function(day) {\n return isSameDay(day, from);\n });\n var next = calendarData.days[idx + delta];\n if (!next) return;\n setFocusedDay(next);\n if (!import_tamagui.isWeb) return;\n var key = `${next.getFullYear()}-${next.getMonth()}-${next.getDate()}`;\n requestAnimationFrame(function() {\n var _document_querySelector_focus, _document_querySelector;\n (_document_querySelector = document.querySelector(`[data-calendar-day=\"${key}\"]`)) === null || _document_querySelector === void 0 ? void 0 : (_document_querySelector_focus = _document_querySelector.focus) === null || _document_querySelector_focus === void 0 ? void 0 : _document_querySelector_focus.call(_document_querySelector);\n });\n }, [\n calendarData.days\n ]);\n var todayOutOfRange = minDate != null && calendarData.today < minDate || maxDate != null && calendarData.today > maxDate;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.AnimatePresence, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n ...(0, import_theme.transitionProps)(knobProps.motion.slide),\n ...animation,\n alignSelf: \"center\",\n gap: \"$1\",\n width: px * 7,\n role: \"grid\",\n \"aria-label\": (0, import_t.t)(\"Calendar\"),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(WeekView, {}),\n weeks.map(function(week) {\n var hasCurrentMonthDay = week.some(function(d) {\n return d.getMonth() === calendarData.month;\n });\n if (skipEmptyWeeks && !hasCurrentMonthDay) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n height: \"$3\"\n }, week[0].toISOString());\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarWeekRow, {\n children: week.map(function(day) {\n var key = day.toISOString();\n var isCurrentMonth = day.getMonth() === calendarData.month;\n var isToday = isSameDay(calendarData.today, day);\n var isOutOfRange = minDate != null && day < minDate || maxDate != null && day > maxDate;\n var isDisabled = isOutOfRange || !!selectionCapped && !isSelected(day);\n var cell = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarDayCell, {\n day,\n selected: isCurrentMonth && isSelected(day),\n today: isToday,\n disabled: isDisabled,\n visible: true,\n dimmed: !isCurrentMonth,\n tabIndex: isSameDay(focusedDay, day) ? 0 : -1,\n onPress: function onPress() {\n return onSelect(day);\n },\n onKeyDown: function onKeyDown(e) {\n var _e_preventDefault;\n var delta = e.key === \"ArrowLeft\" ? -1 : e.key === \"ArrowRight\" ? 1 : e.key === \"ArrowUp\" ? -7 : e.key === \"ArrowDown\" ? 7 : 0;\n if (!delta) return;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n moveFocus(day, delta);\n },\n selectedBackground\n });\n if (!rangeStripe) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n children: cell\n }, key);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(CalendarDaySlot, {\n children: [\n rangeStripe(day),\n cell\n ]\n }, key);\n })\n }, week[0].toISOString());\n }),\n onToday ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarTextButton, {\n onPress: todayOutOfRange ? function() {\n } : onToday,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n color: todayOutOfRange ? import_colorRamps.formCommonColors.muted : import_colorRamps.formCommonColors.text,\n opacity: todayOutOfRange ? 0.5 : 1,\n children: (0, import_t.t)(\"Today\")\n })\n }) : null\n ]\n })\n }, animationKey);\n}\nfunction WeekView() {\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n children: weekdays.map(function(day) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n width: px,\n textAlign: \"center\",\n color: import_colorRamps.formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: (0, import_t.t)(day)\n }, day);\n })\n });\n}\nfunction CalendarHeader(param) {\n var { year, monthName, onPrevMonth, onNextMonth, onYearPress, onMonthPress, showPrev = true, showNext = true } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n showPrev && onPrevMonth ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onPrevMonth,\n label: (0, import_t.t)(\"Previous month\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarTextButton, {\n onPress: onMonthPress,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.SizableText, {\n color: \"$color\",\n size: knobProps.label.fontSize,\n ...knobProps.heading,\n children: monthName\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarTextButton, {\n onPress: onYearPress,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: year\n })\n })\n ]\n }),\n showNext && onNextMonth ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onNextMonth,\n label: (0, import_t.t)(\"Next month\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px\n })\n ]\n });\n}\nfunction MonthGrid(param) {\n var { currentYear, selectedMonth, onSelectMonth } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(currentYear);\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.AnimatePresence, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...animation,\n ...(0, import_theme.transitionProps)(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n alignSelf: \"center\",\n children: months.map(function(name, index) {\n var isSelected = selectedMonth === index;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectMonth(index);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectMonth(index);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : import_colorRamps.formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: (0, import_t.t)(name.slice(0, 3))\n })\n }, name);\n })\n })\n }, animationKey);\n}\nfunction YearGrid(param) {\n var { yearPageStart, selectedYear, onSelectYear, onPrevPage, onNextPage } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n var years = (0, import_react2.useMemo)(function() {\n var result = [];\n for (var i = 0; i < yearPageSize; i++) {\n result.push(yearPageStart + i);\n }\n return result;\n }, [\n yearPageStart\n ]);\n var { animation, animationKey } = useDateAnimation(yearPageStart);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n width: px * 7,\n alignSelf: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onPrevPage,\n label: (0, import_t.t)(\"Previous years\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n children: [\n years[0],\n \" \\u2013 \",\n years[years.length - 1]\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onNextPage,\n label: (0, import_t.t)(\"Next years\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.AnimatePresence, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...animation,\n ...(0, import_theme.transitionProps)(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n children: years.map(function(year) {\n var isSelected = year === selectedYear;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectYear(year);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectYear(year);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : import_colorRamps.formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: year\n })\n }, year);\n })\n })\n }, animationKey)\n ]\n });\n}\nfunction DatePickerClearButton(param) {\n var { onReset, disabled, label } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n ...import_FloatingPanel.floatingPanelActionProps,\n \"data-testid\": \"date-picker-clear\",\n label: label !== null && label !== void 0 ? label : (0, import_t.t)(\"Clear date\"),\n disabled,\n tabIndex: -1,\n onPress: onReset,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.XIcon, {})\n });\n}\nfunction DatePickerInputTrigger(param) {\n var { value, onButtonPress, onReset, disabled, placeholder, id, open, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-labelledby\": ariaLabelledBy, \"aria-describedby\": ariaDescribedBy, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid } = param;\n var handleTriggerKey = function handleTriggerKey2(e) {\n if (disabled || (0, import_FloatingPanel.isNestedPanelAction)(e)) return;\n var key = e.key;\n if (key === \"Enter\" || key === \" \" || key === \"ArrowDown\" || e.code === \"Space\") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onButtonPress();\n return;\n }\n if ((key === \"Backspace\" || key === \"Delete\") && value) {\n var _e_preventDefault1;\n (_e_preventDefault1 = e.preventDefault) === null || _e_preventDefault1 === void 0 ? void 0 : _e_preventDefault1.call(e);\n onReset();\n }\n };\n var Glyph = glyph === \"clock\" ? import_react.ClockIcon : import_react.CalendarBlankIcon;\n return (\n // LC-40: the disabled Box below is pointerEvents-none, so the cursor\n // affordance must ride this wrapper — the fragment's not-allowed never\n // reaches the pointer otherwise (the wrapper kept advertising\n // \"pointer\" on a disabled field).\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n // Native parents own the tap; expanded field paint must not consume it.\n pointerEvents: import_tamagui.isWeb ? void 0 : \"none\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n // Yoga has no intrinsic TextInput width to size this row child.\n ...import_tamagui.isWeb ? void 0 : {\n flex: 1,\n minWidth: 0\n },\n // Elevation is an overlay recipe: it belongs on the open panel, never\n // on the closed text-field trigger.\n elevation: void 0,\n \"data-testid\": \"date-picker-trigger\",\n id,\n onPress: import_tamagui.isWeb && !disabled ? onButtonPress : void 0,\n ...disabled ? {\n opacity: 0.5,\n pointerEvents: \"none\"\n } : void 0,\n ...import_tamagui.isWeb ? {\n role: \"combobox\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": !!open,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid,\n tabIndex: disabled ? -1 : 0,\n onKeyDown: handleTriggerKey\n } : void 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"leading\",\n color: import_colorRamps.formCommonColors.muted,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Glyph, {})\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Area, {\n readOnly: true,\n pointerEvents: \"none\",\n tabIndex: -1,\n value,\n placeholder,\n disabled,\n color: import_colorRamps.formCommonColors.text,\n placeholderTextColor: import_colorRamps.formCommonColors.muted\n })\n }),\n value && import_tamagui.isWeb ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DatePickerClearButton, {\n onReset,\n disabled\n })\n }) : null\n ]\n })\n })\n );\n}\nfunction DatePickerPopoverShell(param) {\n var { open, onOpenChange, trigger, triggerEnd, children, disabled, triggerA11y, clearValue, onClear } = param;\n var nativeClear = !import_tamagui.isWeb && clearValue && onClear ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DatePickerClearButton, {\n onReset: onClear,\n disabled\n }) : void 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FloatingPanel.FloatingPanel, {\n open,\n onOpenChange,\n trigger,\n triggerEnd: triggerEnd !== null && triggerEnd !== void 0 ? triggerEnd : nativeClear,\n disabled,\n sizing: \"grow\",\n contentPadding: \"none\",\n widthMode: \"fit-content\",\n triggerA11y,\n children\n });\n}\nfunction CalendarViewSwitcher(param) {\n var { calendarData, displayDate, onSetDisplayDate, viewMode, setViewMode, yearPageStart, setYearPageStart, children } = param;\n var { knobProps } = useCalendarKnobs();\n var handleSelectMonth = (0, import_react2.useCallback)(function(month) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setMonth(month);\n onSetDisplayDate(newDate);\n setViewMode(\"day\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n var handleSelectYear = (0, import_react2.useCallback)(function(year) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setFullYear(year);\n onSetDisplayDate(newDate);\n setViewMode(\"month\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n if (viewMode === \"month\") {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(CalendarPanelFrame, {\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n alignSelf: \"center\",\n ...knobProps.label,\n ...knobProps.textWeight,\n children: \"Select a month\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MonthGrid, {\n currentYear: calendarData.year,\n selectedMonth: calendarData.month,\n onSelectMonth: handleSelectMonth\n })\n ]\n });\n }\n if (viewMode === \"year\") {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarPanelFrame, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(YearGrid, {\n yearPageStart,\n selectedYear: calendarData.year,\n onSelectYear: handleSelectYear,\n onPrevPage: function onPrevPage() {\n return setYearPageStart(function(s) {\n return s - yearPageSize;\n });\n },\n onNextPage: function onNextPage() {\n return setYearPageStart(function(s) {\n return s + yearPageSize;\n });\n }\n })\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children\n });\n}\nfunction formatDateDisplay(date) {\n if (!date) return \"\";\n return (0, import_theme2.formatAbsoluteDate)(date, {\n year: \"always\"\n });\n}\n//# sourceMappingURL=parts.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","parts_exports","CalendarChromeButton","CalendarDayCell","CalendarDaySlot","CalendarDays","CalendarHeader","CalendarPanelFrame","CalendarTextButton","CalendarViewSwitcher","CalendarWeekRow","DatePickerClearButton","DatePickerInputTrigger","DatePickerPopoverShell","DatePickerReadOnlyField","MonthGrid","WeekView","YearGrid","dayCellRadius","formatDateDisplay","isSameDay","months","toWeeks","useCalendarData","useCalendarKnobs","useDateAnimation","useDateNavigation","weekdays","yearPageSize","module","exports","import_jsx_runtime","require","import_theme","import_react","import_theme2","import_react2","import_tamagui","import_FloatingPanel","import_InputParts","import_colorRamps","import_t","current","prev","useRef","direction","useMemo","useEffect","animation","enterStyle","opacity","x","exitStyle","animationKey","monthNames","getMonthNames","displayDate","year","getFullYear","month","getMonth","firstDay","Date","lastDay","startDate","setDate","getDate","getDay","endDate","days","push","monthName","today","initialDate","setDisplayDate","useState","navigateMonth","useCallback","next","setMonth","result","i","length","slice","a","b","toDateString","knobProps","style","borderRadius","pointy","useResolvedKnobs","param","children","px","nestedControl","jsx","View","flexDirection","alignItems","gap","minWidth","alignSelf","panelPadding","splitNestedControl","nested","hitSlop","box","calendarKeyHandler","onPress","e","_e_preventDefault","preventDefault","label","role","cursor","justifyContent","outlineWidth","focusStyle","focusVisibleStyle","ensureFocusVisibleRing","isWeb","tabIndex","onKeyDown","accessible","paddingVertical","paddingHorizontal","width","height","position","day","selected","disabled","visible","dimmed","selectedBackground","accentText","useAccentOnSurface","showTodayMark","resolvedTabIndex","String","onPress1","pointerEvents","backgroundColor","theme","borderWidth","borderColor","zIndex","outlineOffset","onKeyDown1","Text","textWeight","fontWeight","color","formCommonColors","text","calendarData","minDate","maxDate","isSelected","onSelect","skipEmptyWeeks","rangeStripe","onToday","selectionCapped","weeks","focusedDay","setFocusedDay","_ref","_ref1","find","moveFocus","delta","idx","findIndex","requestAnimationFrame","_document_querySelector_focus","_document_querySelector","document","querySelector","focus","todayOutOfRange","AnimatePresence","jsxs","transitionProps","motion","slide","t","map","week","hasCurrentMonthDay","some","d","toISOString","isCurrentMonth","isToday","isOutOfRange","isDisabled","cell","muted","textAlign","onPrevMonth","onNextMonth","onYearPress","onMonthPress","showPrev","showNext","glyphColor","useGlyphColor","CaretLeftIcon","size","controlIcon","SizableText","fontSize","heading","CaretRightIcon","currentYear","selectedMonth","onSelectMonth","cellW","flexWrap","index","maxWidth","minHeight","maxHeight","yearPageStart","selectedYear","onSelectYear","onPrevPage","onNextPage","years","onReset","Input","Action","floatingPanelActionProps","XIcon","onButtonPress","placeholder","id","open","glyph","ariaLabel","ariaLabelledBy","ariaDescribedBy","ariaRequired","ariaInvalid","handleTriggerKey","handleTriggerKey2","isNestedPanelAction","code","_e_preventDefault1","Glyph","ClockIcon","CalendarBlankIcon","Box","flex","elevation","Section","Icon","adornment","Area","readOnly","placeholderTextColor","onOpenChange","trigger","triggerEnd","triggerA11y","clearValue","onClear","nativeClear","FloatingPanel","sizing","contentPadding","widthMode","onSetDisplayDate","viewMode","setViewMode","setYearPageStart","handleSelectMonth","newDate","handleSelectYear","setFullYear","s","Fragment","date","formatAbsoluteDate"],"sources":["parts.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar parts_exports = {};\n__export(parts_exports, {\n CalendarChromeButton: () => CalendarChromeButton,\n CalendarDayCell: () => CalendarDayCell,\n CalendarDaySlot: () => CalendarDaySlot,\n CalendarDays: () => CalendarDays,\n CalendarHeader: () => CalendarHeader,\n CalendarPanelFrame: () => CalendarPanelFrame,\n CalendarTextButton: () => CalendarTextButton,\n CalendarViewSwitcher: () => CalendarViewSwitcher,\n CalendarWeekRow: () => CalendarWeekRow,\n DatePickerClearButton: () => DatePickerClearButton,\n DatePickerInputTrigger: () => DatePickerInputTrigger,\n DatePickerPopoverShell: () => DatePickerPopoverShell,\n DatePickerReadOnlyField: () => DatePickerReadOnlyField,\n MonthGrid: () => MonthGrid,\n WeekView: () => WeekView,\n YearGrid: () => YearGrid,\n dayCellRadius: () => dayCellRadius,\n formatDateDisplay: () => formatDateDisplay,\n isSameDay: () => isSameDay,\n months: () => months,\n toWeeks: () => toWeeks,\n useCalendarData: () => useCalendarData,\n useCalendarKnobs: () => useCalendarKnobs,\n useDateAnimation: () => useDateAnimation,\n useDateNavigation: () => useDateNavigation,\n weekdays: () => weekdays,\n yearPageSize: () => yearPageSize\n});\nmodule.exports = __toCommonJS(parts_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react = require(\"@phosphor-icons/react\");\nvar import_theme2 = require(\"@multiplatform.one/theme\");\nvar import_react2 = require(\"react\");\nvar import_tamagui = require(\"tamagui\");\nvar import_FloatingPanel = require(\"../../FloatingPanel\");\nvar import_InputParts = require(\"../../InputParts\");\nvar import_colorRamps = require(\"../../shared/colorRamps\");\nvar import_t = require(\"../../shared/t\");\nvar weekdays = [\n \"Su\",\n \"Mo\",\n \"Tu\",\n \"We\",\n \"Th\",\n \"Fr\",\n \"Sa\"\n];\nvar months = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar yearPageSize = 12;\nfunction useDateAnimation(current) {\n var prev = (0, import_react2.useRef)(null);\n var direction = (0, import_react2.useMemo)(function() {\n if (prev.current === null) return 0;\n return current > prev.current ? 1 : current < prev.current ? -1 : 0;\n }, [\n current\n ]);\n (0, import_react2.useEffect)(function() {\n prev.current = current;\n }, [\n current\n ]);\n var animation = (0, import_react2.useMemo)(function() {\n return {\n enterStyle: {\n opacity: 0,\n x: direction * 15\n },\n exitStyle: {\n opacity: 0,\n x: direction * -15\n }\n };\n }, [\n direction\n ]);\n return {\n animation,\n animationKey: current\n };\n}\nvar monthNames = (0, import_theme2.getMonthNames)();\nfunction useCalendarData(displayDate) {\n return (0, import_react2.useMemo)(function() {\n var year = displayDate.getFullYear();\n var month = displayDate.getMonth();\n var firstDay = new Date(year, month, 1);\n var lastDay = new Date(year, month + 1, 0);\n var startDate = new Date(firstDay);\n startDate.setDate(startDate.getDate() - firstDay.getDay());\n var endDate = new Date(lastDay);\n endDate.setDate(endDate.getDate() + (6 - lastDay.getDay()));\n var days = [];\n var current = new Date(startDate);\n while (current <= endDate) {\n days.push(new Date(current));\n current.setDate(current.getDate() + 1);\n }\n return {\n year,\n month,\n monthName: monthNames[month],\n days,\n today: /* @__PURE__ */ new Date()\n };\n }, [\n displayDate\n ]);\n}\nfunction useDateNavigation(initialDate) {\n var [displayDate, setDisplayDate] = (0, import_react2.useState)(initialDate !== null && initialDate !== void 0 ? initialDate : /* @__PURE__ */ new Date());\n var navigateMonth = (0, import_react2.useCallback)(function(direction) {\n setDisplayDate(function(prev) {\n var next = new Date(prev);\n next.setDate(1);\n next.setMonth(next.getMonth() + (direction === \"prev\" ? -1 : 1));\n return next;\n });\n }, []);\n return {\n displayDate,\n setDisplayDate,\n navigateMonth\n };\n}\nfunction toWeeks(days) {\n var result = [];\n for (var i = 0; i < days.length; i += 7) {\n result.push(days.slice(i, i + 7));\n }\n return result;\n}\nfunction isSameDay(a, b) {\n if (!a || !b) return false;\n return a.toDateString() === b.toDateString();\n}\nfunction dayCellRadius(knobProps) {\n return {\n style: {\n borderRadius: knobProps.pointy ? 0 : 9999\n }\n };\n}\nfunction useCalendarKnobs() {\n return (0, import_theme2.useResolvedKnobs)();\n}\nfunction CalendarPanelFrame(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"column\",\n alignItems: \"center\",\n ...knobProps.gap,\n minWidth: px * 7,\n alignSelf: \"center\",\n ...knobProps.panelPadding,\n \"data-testid\": \"date-picker-calendar\",\n children\n });\n}\nfunction splitNestedControl(nested) {\n var { px, hitSlop, ...box } = nested;\n return {\n px,\n hitSlop,\n box\n };\n}\nfunction calendarKeyHandler(onPress) {\n return function(e) {\n if (e.key === \"Enter\" || e.key === \" \") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onPress();\n }\n };\n}\nfunction CalendarChromeButton(param) {\n var { onPress, label, children } = param;\n var { knobProps } = useCalendarKnobs();\n var { hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n role: \"button\",\n \"aria-label\": label,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)(),\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarTextButton(param) {\n var { onPress, children } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n role: \"button\",\n cursor: \"pointer\",\n paddingVertical: 2,\n paddingHorizontal: 4,\n onPress,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)(),\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(onPress)\n } : {\n accessible: true\n },\n children\n });\n}\nfunction CalendarDaySlot(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px,\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"relative\",\n children\n });\n}\nfunction CalendarWeekRow(param) {\n var { children } = param;\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n children\n });\n}\nfunction CalendarDayCell(param) {\n var { day, selected, today, disabled, visible = true, dimmed, tabIndex, onPress, onKeyDown, selectedBackground } = param;\n var { knobProps } = useCalendarKnobs();\n var accentText = (0, import_theme2.useAccentOnSurface)();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n if (!visible) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px\n });\n }\n var showTodayMark = !!today && !selected;\n var resolvedTabIndex = tabIndex !== null && tabIndex !== void 0 ? tabIndex : disabled ? -1 : 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n ...dayCellRadius(knobProps),\n role: \"button\",\n \"aria-label\": String(day.getDate()),\n \"aria-disabled\": disabled || void 0,\n \"aria-pressed\": selected || void 0,\n \"aria-current\": today ? \"date\" : void 0,\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n onPress: function onPress1() {\n if (!disabled) onPress();\n },\n // Adjacent-month spill uses this file's 0.45 day-cell dim.\n // Unavailable (min/max or multi-select cap) uses the 0.5 disabled\n // idiom from the Today control and the trigger Box. Unavailable\n // wins when both apply so an out-of-range adjacent day does not\n // look like a pickable spill-over day. Bento paints this state\n // identical to a choosable cell; we do not adopt that.\n opacity: disabled ? 0.5 : dimmed ? 0.45 : 1,\n pointerEvents: disabled ? \"none\" : \"auto\",\n backgroundColor: selected ? selectedBackground !== null && selectedBackground !== void 0 ? selectedBackground : \"$background\" : \"transparent\",\n theme: selected ? \"accent\" : void 0,\n borderWidth: showTodayMark ? 2 : 0,\n borderColor: showTodayMark ? accentText : \"transparent\",\n zIndex: 1,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n \"data-calendar-day\": `${day.getFullYear()}-${day.getMonth()}-${day.getDate()}`,\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: resolvedTabIndex,\n onKeyDown: function onKeyDown1(e) {\n if (!disabled) calendarKeyHandler(onPress)(e);\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n }\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n fontWeight: selected ? \"bold\" : knobProps.textWeight.fontWeight,\n color: selected ? void 0 : today ? accentText : import_colorRamps.formCommonColors.text,\n children: day.getDate()\n })\n });\n}\nfunction CalendarDays(param) {\n var { calendarData, minDate, maxDate, isSelected, onSelect, selectedBackground, skipEmptyWeeks, rangeStripe, onToday, selectionCapped } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(`${calendarData.year}-${calendarData.month}`);\n var weeks = toWeeks(calendarData.days);\n var { px } = knobProps.nestedControl;\n var [focusedDay, setFocusedDay] = (0, import_react2.useState)(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n return (_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null;\n });\n (0, import_react2.useEffect)(function() {\n var _ref, _ref1;\n var selected = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSelected(day);\n });\n var today = calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month && isSameDay(calendarData.today, day);\n });\n setFocusedDay((_ref = (_ref1 = selected !== null && selected !== void 0 ? selected : today) !== null && _ref1 !== void 0 ? _ref1 : calendarData.days.find(function(day) {\n return day.getMonth() === calendarData.month;\n })) !== null && _ref !== void 0 ? _ref : null);\n }, [\n calendarData.year,\n calendarData.month\n ]);\n var moveFocus = (0, import_react2.useCallback)(function(from, delta) {\n var idx = calendarData.days.findIndex(function(day) {\n return isSameDay(day, from);\n });\n var next = calendarData.days[idx + delta];\n if (!next) return;\n setFocusedDay(next);\n if (!import_tamagui.isWeb) return;\n var key = `${next.getFullYear()}-${next.getMonth()}-${next.getDate()}`;\n requestAnimationFrame(function() {\n var _document_querySelector_focus, _document_querySelector;\n (_document_querySelector = document.querySelector(`[data-calendar-day=\"${key}\"]`)) === null || _document_querySelector === void 0 ? void 0 : (_document_querySelector_focus = _document_querySelector.focus) === null || _document_querySelector_focus === void 0 ? void 0 : _document_querySelector_focus.call(_document_querySelector);\n });\n }, [\n calendarData.days\n ]);\n var todayOutOfRange = minDate != null && calendarData.today < minDate || maxDate != null && calendarData.today > maxDate;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.AnimatePresence, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n ...(0, import_theme.transitionProps)(knobProps.motion.slide),\n ...animation,\n alignSelf: \"center\",\n gap: \"$1\",\n width: px * 7,\n role: \"grid\",\n \"aria-label\": (0, import_t.t)(\"Calendar\"),\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(WeekView, {}),\n weeks.map(function(week) {\n var hasCurrentMonthDay = week.some(function(d) {\n return d.getMonth() === calendarData.month;\n });\n if (skipEmptyWeeks && !hasCurrentMonthDay) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n height: \"$3\"\n }, week[0].toISOString());\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarWeekRow, {\n children: week.map(function(day) {\n var key = day.toISOString();\n var isCurrentMonth = day.getMonth() === calendarData.month;\n var isToday = isSameDay(calendarData.today, day);\n var isOutOfRange = minDate != null && day < minDate || maxDate != null && day > maxDate;\n var isDisabled = isOutOfRange || !!selectionCapped && !isSelected(day);\n var cell = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarDayCell, {\n day,\n selected: isCurrentMonth && isSelected(day),\n today: isToday,\n disabled: isDisabled,\n visible: true,\n dimmed: !isCurrentMonth,\n tabIndex: isSameDay(focusedDay, day) ? 0 : -1,\n onPress: function onPress() {\n return onSelect(day);\n },\n onKeyDown: function onKeyDown(e) {\n var _e_preventDefault;\n var delta = e.key === \"ArrowLeft\" ? -1 : e.key === \"ArrowRight\" ? 1 : e.key === \"ArrowUp\" ? -7 : e.key === \"ArrowDown\" ? 7 : 0;\n if (!delta) return;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n moveFocus(day, delta);\n },\n selectedBackground\n });\n if (!rangeStripe) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n children: cell\n }, key);\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(CalendarDaySlot, {\n children: [\n rangeStripe(day),\n cell\n ]\n }, key);\n })\n }, week[0].toISOString());\n }),\n onToday ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarTextButton, {\n onPress: todayOutOfRange ? function() {\n } : onToday,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n color: todayOutOfRange ? import_colorRamps.formCommonColors.muted : import_colorRamps.formCommonColors.text,\n opacity: todayOutOfRange ? 0.5 : 1,\n children: (0, import_t.t)(\"Today\")\n })\n }) : null\n ]\n })\n }, animationKey);\n}\nfunction WeekView() {\n var { knobProps } = useCalendarKnobs();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n children: weekdays.map(function(day) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n width: px,\n textAlign: \"center\",\n color: import_colorRamps.formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: (0, import_t.t)(day)\n }, day);\n })\n });\n}\nfunction CalendarHeader(param) {\n var { year, monthName, onPrevMonth, onNextMonth, onYearPress, onMonthPress, showPrev = true, showNext = true } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var { px } = knobProps.nestedControl;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n alignSelf: \"center\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n showPrev && onPrevMonth ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onPrevMonth,\n label: (0, import_t.t)(\"Previous month\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarTextButton, {\n onPress: onMonthPress,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.SizableText, {\n color: \"$color\",\n size: knobProps.label.fontSize,\n ...knobProps.heading,\n children: monthName\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarTextButton, {\n onPress: onYearPress,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_colorRamps.formCommonColors.muted,\n ...knobProps.label,\n ...knobProps.textWeight,\n children: year\n })\n })\n ]\n }),\n showNext && onNextMonth ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onNextMonth,\n label: (0, import_t.t)(\"Next month\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: px,\n height: px\n })\n ]\n });\n}\nfunction MonthGrid(param) {\n var { currentYear, selectedMonth, onSelectMonth } = param;\n var { knobProps } = useCalendarKnobs();\n var { animation, animationKey } = useDateAnimation(currentYear);\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.AnimatePresence, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...animation,\n ...(0, import_theme.transitionProps)(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n alignSelf: \"center\",\n children: months.map(function(name, index) {\n var isSelected = selectedMonth === index;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectMonth(index);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectMonth(index);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : import_colorRamps.formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: (0, import_t.t)(name.slice(0, 3))\n })\n }, name);\n })\n })\n }, animationKey);\n}\nfunction YearGrid(param) {\n var { yearPageStart, selectedYear, onSelectYear, onPrevPage, onNextPage } = param;\n var { knobProps } = useCalendarKnobs();\n var glyphColor = (0, import_theme2.useGlyphColor)();\n var { px, hitSlop, box } = splitNestedControl(knobProps.nestedControl);\n var cellW = px * 7 / 3;\n var years = (0, import_react2.useMemo)(function() {\n var result = [];\n for (var i = 0; i < yearPageSize; i++) {\n result.push(yearPageStart + i);\n }\n return result;\n }, [\n yearPageStart\n ]);\n var { animation, animationKey } = useDateAnimation(yearPageStart);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n width: px * 7,\n alignSelf: \"center\",\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n flexDirection: \"row\",\n width: px * 7,\n alignItems: \"center\",\n justifyContent: \"space-between\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onPrevPage,\n label: (0, import_t.t)(\"Previous years\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretLeftIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n children: [\n years[0],\n \" \\u2013 \",\n years[years.length - 1]\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarChromeButton, {\n onPress: onNextPage,\n label: (0, import_t.t)(\"Next years\"),\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.CaretRightIcon, {\n size: knobProps.controlIcon.width,\n color: glyphColor\n })\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.AnimatePresence, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...animation,\n ...(0, import_theme.transitionProps)(knobProps.motion.slide),\n flexDirection: \"row\",\n flexWrap: \"wrap\",\n width: px * 7,\n children: years.map(function(year) {\n var isSelected = year === selectedYear;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...box,\n width: cellW,\n maxWidth: cellW,\n minWidth: cellW,\n height: px,\n minHeight: px,\n maxHeight: px,\n role: \"button\",\n \"aria-pressed\": isSelected || void 0,\n cursor: \"pointer\",\n alignItems: \"center\",\n justifyContent: \"center\",\n theme: isSelected ? \"accent\" : void 0,\n backgroundColor: isSelected ? \"$background\" : \"transparent\",\n onPress: function onPress() {\n return onSelectYear(year);\n },\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: (0, import_theme2.ensureFocusVisibleRing)({\n outlineOffset: -2\n }),\n \"data-nested-px\": px,\n ...!import_tamagui.isWeb ? {\n hitSlop\n } : {},\n ...import_tamagui.isWeb ? {\n tabIndex: 0,\n onKeyDown: calendarKeyHandler(function() {\n return onSelectYear(year);\n })\n } : {\n accessible: true\n },\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n color: isSelected ? \"$color\" : import_colorRamps.formCommonColors.text,\n fontWeight: isSelected ? \"bold\" : \"400\",\n children: year\n })\n }, year);\n })\n })\n }, animationKey)\n ]\n });\n}\nfunction DatePickerClearButton(param) {\n var { onReset, disabled, label } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Action, {\n ...import_FloatingPanel.floatingPanelActionProps,\n \"data-testid\": \"date-picker-clear\",\n label: label !== null && label !== void 0 ? label : (0, import_t.t)(\"Clear date\"),\n disabled,\n tabIndex: -1,\n onPress: onReset,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.XIcon, {})\n });\n}\nfunction DatePickerInputTrigger(param) {\n var { value, onButtonPress, onReset, disabled, placeholder, id, open, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-labelledby\": ariaLabelledBy, \"aria-describedby\": ariaDescribedBy, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid } = param;\n var handleTriggerKey = function handleTriggerKey2(e) {\n if (disabled || (0, import_FloatingPanel.isNestedPanelAction)(e)) return;\n var key = e.key;\n if (key === \"Enter\" || key === \" \" || key === \"ArrowDown\" || e.code === \"Space\") {\n var _e_preventDefault;\n (_e_preventDefault = e.preventDefault) === null || _e_preventDefault === void 0 ? void 0 : _e_preventDefault.call(e);\n onButtonPress();\n return;\n }\n if ((key === \"Backspace\" || key === \"Delete\") && value) {\n var _e_preventDefault1;\n (_e_preventDefault1 = e.preventDefault) === null || _e_preventDefault1 === void 0 ? void 0 : _e_preventDefault1.call(e);\n onReset();\n }\n };\n var Glyph = glyph === \"clock\" ? import_react.ClockIcon : import_react.CalendarBlankIcon;\n return (\n // LC-40: the disabled Box below is pointerEvents-none, so the cursor\n // affordance must ride this wrapper — the fragment's not-allowed never\n // reaches the pointer otherwise (the wrapper kept advertising\n // \"pointer\" on a disabled field).\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n // Native parents own the tap; expanded field paint must not consume it.\n pointerEvents: import_tamagui.isWeb ? void 0 : \"none\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n // FZ-7853: the box fills its row on every platform, so an empty\n // trigger ends on the same inset as a filled one (Yoga also has no\n // intrinsic TextInput width to size it).\n flex: 1,\n minWidth: 0,\n // Elevation is an overlay recipe: it belongs on the open panel, never\n // on the closed text-field trigger.\n elevation: void 0,\n \"data-testid\": \"date-picker-trigger\",\n id,\n onPress: import_tamagui.isWeb && !disabled ? onButtonPress : void 0,\n ...disabled ? {\n opacity: 0.5,\n pointerEvents: \"none\"\n } : void 0,\n ...import_tamagui.isWeb ? {\n role: \"combobox\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": !!open,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid,\n tabIndex: disabled ? -1 : 0,\n onKeyDown: handleTriggerKey\n } : void 0,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"leading\",\n color: import_colorRamps.formCommonColors.muted,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Glyph, {})\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Area, {\n readOnly: true,\n pointerEvents: \"none\",\n tabIndex: -1,\n value,\n placeholder,\n disabled,\n color: import_colorRamps.formCommonColors.text,\n placeholderTextColor: import_colorRamps.formCommonColors.muted\n })\n }),\n value && import_tamagui.isWeb ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DatePickerClearButton, {\n onReset,\n disabled\n })\n }) : null\n ]\n })\n })\n );\n}\nfunction DatePickerReadOnlyField(param) {\n var { value, placeholder, id, glyph = \"calendar\", \"aria-label\": ariaLabel, \"aria-required\": ariaRequired, \"aria-invalid\": ariaInvalid } = param;\n var Glyph = glyph === \"clock\" ? import_react.ClockIcon : import_react.CalendarBlankIcon;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n flexDirection: \"row\",\n alignItems: \"center\",\n width: \"100%\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_InputParts.Input.Box, {\n flex: 1,\n minWidth: 0,\n elevation: void 0,\n \"data-testid\": \"date-picker-readonly\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n \"data-testid\": \"date-picker-glyph\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Icon, {\n adornment: \"leading\",\n color: import_colorRamps.formCommonColors.muted,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Glyph, {})\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Section, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_InputParts.Input.Area, {\n readOnly: true,\n id,\n value,\n placeholder,\n color: import_colorRamps.formCommonColors.text,\n placeholderTextColor: import_colorRamps.formCommonColors.muted,\n \"aria-label\": ariaLabel,\n \"aria-readonly\": \"true\",\n \"aria-required\": ariaRequired,\n \"aria-invalid\": ariaInvalid\n })\n })\n ]\n })\n });\n}\nfunction DatePickerPopoverShell(param) {\n var { open, onOpenChange, trigger, triggerEnd, children, disabled, triggerA11y, clearValue, onClear } = param;\n var nativeClear = !import_tamagui.isWeb && clearValue && onClear ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DatePickerClearButton, {\n onReset: onClear,\n disabled\n }) : void 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FloatingPanel.FloatingPanel, {\n open,\n onOpenChange,\n trigger,\n triggerEnd: triggerEnd !== null && triggerEnd !== void 0 ? triggerEnd : nativeClear,\n disabled,\n sizing: \"grow\",\n contentPadding: \"none\",\n widthMode: \"fit-content\",\n triggerA11y,\n children\n });\n}\nfunction CalendarViewSwitcher(param) {\n var { calendarData, displayDate, onSetDisplayDate, viewMode, setViewMode, yearPageStart, setYearPageStart, children } = param;\n var { knobProps } = useCalendarKnobs();\n var handleSelectMonth = (0, import_react2.useCallback)(function(month) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setMonth(month);\n onSetDisplayDate(newDate);\n setViewMode(\"day\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n var handleSelectYear = (0, import_react2.useCallback)(function(year) {\n var newDate = new Date(displayDate);\n newDate.setDate(1);\n newDate.setFullYear(year);\n onSetDisplayDate(newDate);\n setViewMode(\"month\");\n }, [\n displayDate,\n onSetDisplayDate,\n setViewMode\n ]);\n if (viewMode === \"month\") {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(CalendarPanelFrame, {\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n alignSelf: \"center\",\n ...knobProps.label,\n ...knobProps.textWeight,\n children: \"Select a month\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MonthGrid, {\n currentYear: calendarData.year,\n selectedMonth: calendarData.month,\n onSelectMonth: handleSelectMonth\n })\n ]\n });\n }\n if (viewMode === \"year\") {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CalendarPanelFrame, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(YearGrid, {\n yearPageStart,\n selectedYear: calendarData.year,\n onSelectYear: handleSelectYear,\n onPrevPage: function onPrevPage() {\n return setYearPageStart(function(s) {\n return s - yearPageSize;\n });\n },\n onNextPage: function onNextPage() {\n return setYearPageStart(function(s) {\n return s + yearPageSize;\n });\n }\n })\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children\n });\n}\nfunction formatDateDisplay(date) {\n if (!date) return \"\";\n return (0, import_theme2.formatAbsoluteDate)(date, {\n year: \"always\"\n });\n}\n//# sourceMappingURL=parts.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,148 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var InlineChoices_exports = {};
24
+ __export(InlineChoices_exports, {
25
+ InlineChoices: () => InlineChoices
26
+ });
27
+ module.exports = __toCommonJS(InlineChoices_exports);
28
+ var import_theme = require("@multiplatform.one/theme");
29
+ var import_react = require("@phosphor-icons/react");
30
+ var import_react2 = require("react");
31
+ var import_react_native = require("react-native-web");
32
+ var import_tamagui = require("tamagui");
33
+ var import_fieldLayout = require("../../fieldLayout.cjs");
34
+ var import_colorRamps = require("../../shared/colorRamps.cjs");
35
+ var import_nativeA11y = require("../../shared/nativeA11y.cjs");
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ const nextKeys = /* @__PURE__ */new Set(["ArrowDown", "ArrowRight"]);
38
+ const previousKeys = /* @__PURE__ */new Set(["ArrowUp", "ArrowLeft"]);
39
+ function InlineChoices({
40
+ options,
41
+ value,
42
+ onValueChange,
43
+ onBlur,
44
+ disabled,
45
+ id,
46
+ labelledBy,
47
+ "aria-label": ariaLabel,
48
+ knobProps,
49
+ markColor
50
+ }) {
51
+ const describedBy = (0, import_fieldLayout.useFieldDescribedBy)();
52
+ const rowsRef = (0, import_react2.useRef)([]);
53
+ const textColor = knobProps.textAccentColor;
54
+ const selectedIndex = options.findIndex(option => option.value === value);
55
+ const tabStop = selectedIndex >= 0 ? selectedIndex : 0;
56
+ const choose = index => {
57
+ const option = options[index];
58
+ if (disabled || !option || option.value === value) return;
59
+ onValueChange(option.value);
60
+ };
61
+ const onKeyDown = index => event => {
62
+ const step = nextKeys.has(event.key) ? 1 : previousKeys.has(event.key) ? -1 : 0;
63
+ if (step) {
64
+ event.preventDefault();
65
+ const next = (index + step + options.length) % options.length;
66
+ rowsRef.current[next]?.focus();
67
+ choose(next);
68
+ } else if (event.key === " " || event.key === "Enter") {
69
+ event.preventDefault();
70
+ choose(index);
71
+ }
72
+ };
73
+ const rowContent = (option, index, selected) => /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
74
+ alignItems: "center",
75
+ height: knobProps.menuRow.minHeight,
76
+ paddingHorizontal: knobProps.panelPadding.padding,
77
+ ...knobProps.gap,
78
+ ...(index === 0 ? void 0 : import_theme.hairline.top),
79
+ borderColor: import_colorRamps.formCommonColors.divider,
80
+ pointerEvents: "none",
81
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
82
+ flexShrink: 0,
83
+ alignItems: "center",
84
+ justifyContent: "center",
85
+ minWidth: 18,
86
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme.IconSlot, {
87
+ icon: option.icon,
88
+ color: textColor
89
+ })
90
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
91
+ fontFamily: knobProps.body.fontFamily,
92
+ fontWeight: knobProps.body.fontWeight,
93
+ color: textColor,
94
+ numberOfLines: 1,
95
+ flex: 1,
96
+ children: option.label
97
+ }), selected ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.CheckIcon, {
98
+ size: 14,
99
+ weight: "bold",
100
+ color: markColor
101
+ }) : null]
102
+ });
103
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
104
+ id,
105
+ role: "radiogroup",
106
+ "aria-labelledby": labelledBy,
107
+ "aria-label": labelledBy ? void 0 : ariaLabel,
108
+ "aria-describedby": describedBy,
109
+ "aria-disabled": disabled || void 0,
110
+ "data-testid": "select-inline-choices",
111
+ ...knobProps.borderRadius,
112
+ borderColor: import_colorRamps.formInputColors.border.base,
113
+ backgroundColor: import_colorRamps.formInputColors.background.base,
114
+ overflow: "hidden",
115
+ width: "100%",
116
+ children: options.map((option, index) => {
117
+ const selected = option.value === value;
118
+ if (import_tamagui.isWeb) {
119
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
120
+ ref: node => {
121
+ rowsRef.current[index] = node;
122
+ },
123
+ role: "radio",
124
+ "aria-checked": selected,
125
+ "aria-disabled": disabled || void 0,
126
+ tabIndex: !disabled && index === tabStop ? 0 : -1,
127
+ cursor: disabled ? "default" : "pointer",
128
+ onPress: () => choose(index),
129
+ onKeyDown: onKeyDown(index),
130
+ onBlur,
131
+ outlineWidth: 0,
132
+ focusVisibleStyle: import_theme.keyboardFocusRingProps,
133
+ children: rowContent(option, index, selected)
134
+ }, option.value);
135
+ }
136
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.Pressable, {
137
+ ...(0, import_nativeA11y.choiceItemA11y)({
138
+ name: option.label,
139
+ selected,
140
+ disabled: !!disabled
141
+ }),
142
+ disabled,
143
+ onPress: () => choose(index),
144
+ children: rowContent(option, index, selected)
145
+ }, option.value);
146
+ })
147
+ });
148
+ }