@webority/mobile-ui 0.104.1 → 0.107.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 (1240) hide show
  1. package/dist/canvas-kit/kit.js +13030 -12819
  2. package/dist/canvas-kit/manifest.json +984 -767
  3. package/dist/canvas-kit/release.json +6 -6
  4. package/lib/commonjs/components/Accordion/Accordion.js +1 -1
  5. package/lib/commonjs/components/AmountSlider/AmountSlider.js +1 -1
  6. package/lib/commonjs/components/AmountSlider/index.js +1 -1
  7. package/lib/commonjs/components/AnimatePresence/AnimatePresence.js +1 -1
  8. package/lib/commonjs/components/AppBar/AppBar.js +1 -1
  9. package/lib/commonjs/components/AppBar/index.js +1 -1
  10. package/lib/commonjs/components/AppIcon/AppIcon.js +1 -1
  11. package/lib/commonjs/components/AppLockOverlay/AppLockOverlay.js +1 -0
  12. package/lib/commonjs/components/AppLockOverlay/index.js +1 -0
  13. package/lib/commonjs/components/AsyncBlock/AsyncBlock.js +1 -1
  14. package/lib/commonjs/components/AsyncBlock/index.js +1 -1
  15. package/lib/commonjs/components/AuthedImage/AuthedImage.js +1 -1
  16. package/lib/commonjs/components/AuthedImage/authedImageCache.js +1 -1
  17. package/lib/commonjs/components/Autocomplete/Autocomplete.js +1 -1
  18. package/lib/commonjs/components/Autocomplete/index.js +1 -1
  19. package/lib/commonjs/components/Avatar/Avatar.js +1 -1
  20. package/lib/commonjs/components/Avatar/index.js +1 -1
  21. package/lib/commonjs/components/Badge/Badge.js +1 -1
  22. package/lib/commonjs/components/Badge/index.js +1 -1
  23. package/lib/commonjs/components/Banner/Banner.js +1 -1
  24. package/lib/commonjs/components/Banner/index.js +1 -1
  25. package/lib/commonjs/components/BarChart/BarChart.js +1 -1
  26. package/lib/commonjs/components/BarChart/index.js +1 -1
  27. package/lib/commonjs/components/BottomNavigation/BottomNavigation.js +1 -1
  28. package/lib/commonjs/components/BottomNavigation/index.js +1 -1
  29. package/lib/commonjs/components/BottomSheet/BottomSheet.js +1 -1
  30. package/lib/commonjs/components/BottomSheet/index.js +1 -1
  31. package/lib/commonjs/components/Button/Button.js +1 -1
  32. package/lib/commonjs/components/Calendar/Calendar.js +1 -1
  33. package/lib/commonjs/components/Calendar/CalendarDay.js +1 -1
  34. package/lib/commonjs/components/Calendar/calendarStyles.js +1 -1
  35. package/lib/commonjs/components/Calendar/index.js +1 -1
  36. package/lib/commonjs/components/Card/Card.js +1 -1
  37. package/lib/commonjs/components/Card/index.js +1 -1
  38. package/lib/commonjs/components/Carousel/Carousel.js +1 -1
  39. package/lib/commonjs/components/Carousel/index.js +1 -1
  40. package/lib/commonjs/components/Checkbox/Checkbox.js +1 -1
  41. package/lib/commonjs/components/Chip/Chip.js +1 -1
  42. package/lib/commonjs/components/Chip/index.js +1 -1
  43. package/lib/commonjs/components/ChoiceGroup/ChoiceGroup.js +1 -1
  44. package/lib/commonjs/components/Composer/Composer.js +1 -1
  45. package/lib/commonjs/components/Composer/index.js +1 -1
  46. package/lib/commonjs/components/Confetti/Confetti.js +1 -1
  47. package/lib/commonjs/components/Confirm/confirm.js +1 -0
  48. package/lib/commonjs/components/Confirm/index.js +1 -0
  49. package/lib/commonjs/components/DatePicker/DatePicker.js +1 -1
  50. package/lib/commonjs/components/DatePicker/index.js +1 -1
  51. package/lib/commonjs/components/DateRangePicker/DateRangePicker.js +1 -1
  52. package/lib/commonjs/components/DateRangePicker/index.js +1 -1
  53. package/lib/commonjs/components/DateSeparator/DateSeparator.js +1 -1
  54. package/lib/commonjs/components/DecimalInput/DecimalInput.js +1 -1
  55. package/lib/commonjs/components/DecimalInput/index.js +1 -1
  56. package/lib/commonjs/components/Descriptions/Descriptions.js +1 -1
  57. package/lib/commonjs/components/Dialog/Dialog.js +1 -1
  58. package/lib/commonjs/components/Divider/Divider.js +1 -1
  59. package/lib/commonjs/components/Drawer/Drawer.js +1 -1
  60. package/lib/commonjs/components/Drawer/index.js +1 -1
  61. package/lib/commonjs/components/EmptyState/EmptyState.js +1 -1
  62. package/lib/commonjs/components/ErrorBoundary/ErrorBoundary.js +1 -1
  63. package/lib/commonjs/components/ErrorBoundary/index.js +1 -1
  64. package/lib/commonjs/components/FieldBase/ChoiceText.js +1 -1
  65. package/lib/commonjs/components/FieldBase/FieldBase.js +1 -1
  66. package/lib/commonjs/components/FieldBase/useFloatingLabel.js +1 -1
  67. package/lib/commonjs/components/FilePicker/FilePicker.js +1 -1
  68. package/lib/commonjs/components/FilePicker/index.js +1 -1
  69. package/lib/commonjs/components/FilterChipRow/FilterChipRow.js +1 -1
  70. package/lib/commonjs/components/FloatingActionButton/FloatingActionButton.js +1 -1
  71. package/lib/commonjs/components/FloatingActionButton/index.js +1 -1
  72. package/lib/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.js +1 -1
  73. package/lib/commonjs/components/ForceUpdateDialog/index.js +1 -1
  74. package/lib/commonjs/components/FormField/FormField.js +1 -1
  75. package/lib/commonjs/components/FormField/index.js +1 -1
  76. package/lib/commonjs/components/IconBadge/IconBadge.js +1 -1
  77. package/lib/commonjs/components/IconButton/IconButton.js +1 -1
  78. package/lib/commonjs/components/ImageGallery/ImageGallery.js +1 -1
  79. package/lib/commonjs/components/ImageGallery/index.js +1 -1
  80. package/lib/commonjs/components/InlineSelect/InlineSelect.js +1 -1
  81. package/lib/commonjs/components/InlineSelect/index.js +1 -1
  82. package/lib/commonjs/components/Input/Input.js +1 -1
  83. package/lib/commonjs/components/Input/index.js +1 -1
  84. package/lib/commonjs/components/KeyboardToolbar/KeyboardToolbar.js +1 -1
  85. package/lib/commonjs/components/KeyboardToolbar/index.js +1 -1
  86. package/lib/commonjs/components/ListItem/ListItem.js +1 -1
  87. package/lib/commonjs/components/LoaderOverlay/LoaderOverlay.js +1 -1
  88. package/lib/commonjs/components/LoaderOverlay/index.js +1 -1
  89. package/lib/commonjs/components/Menu/Menu.js +1 -1
  90. package/lib/commonjs/components/Menu/MenuSurface.js +1 -1
  91. package/lib/commonjs/components/Menu/index.js +1 -1
  92. package/lib/commonjs/components/Menu/menuModel.js +1 -1
  93. package/lib/commonjs/components/Menu/useContextMenu.js +1 -1
  94. package/lib/commonjs/components/MessageBubble/MessageBubble.js +1 -1
  95. package/lib/commonjs/components/Modal/Modal.js +1 -1
  96. package/lib/commonjs/components/Modal/index.js +1 -1
  97. package/lib/commonjs/components/NumberInput/NumberInput.js +1 -1
  98. package/lib/commonjs/components/NumberInput/index.js +1 -1
  99. package/lib/commonjs/components/OTPInput/OTPInput.js +1 -1
  100. package/lib/commonjs/components/OTPInput/index.js +1 -1
  101. package/lib/commonjs/components/OnboardingPager/OnboardingPager.js +1 -1
  102. package/lib/commonjs/components/OnboardingPager/index.js +1 -1
  103. package/lib/commonjs/components/OptionSheet/OptionSheet.js +1 -1
  104. package/lib/commonjs/components/OptionSheet/index.js +1 -1
  105. package/lib/commonjs/components/PagedListFooter/PagedListFooter.js +1 -0
  106. package/lib/commonjs/components/PagedListFooter/index.js +1 -0
  107. package/lib/commonjs/components/PermissionPrompt/PermissionPrompt.js +1 -1
  108. package/lib/commonjs/components/PermissionPrompt/index.js +1 -1
  109. package/lib/commonjs/components/PhoneNumberInput/PhoneNumberInput.js +1 -1
  110. package/lib/commonjs/components/PhoneNumberInput/index.js +1 -1
  111. package/lib/commonjs/components/PickerTrigger/PickerTrigger.js +1 -1
  112. package/lib/commonjs/components/PickerTrigger/index.js +1 -1
  113. package/lib/commonjs/components/ProfileCompletion/ProfileCompletion.js +1 -1
  114. package/lib/commonjs/components/ProfileCompletion/index.js +1 -1
  115. package/lib/commonjs/components/ProfilePicker/ProfilePicker.js +1 -1
  116. package/lib/commonjs/components/ProfilePicker/index.js +1 -1
  117. package/lib/commonjs/components/ProgressBar/ProgressBar.js +1 -1
  118. package/lib/commonjs/components/ProgressBar/index.js +1 -1
  119. package/lib/commonjs/components/ProgressRing/ProgressRing.js +1 -1
  120. package/lib/commonjs/components/Radio/Radio.js +1 -1
  121. package/lib/commonjs/components/Radio/RadioGroup.js +1 -1
  122. package/lib/commonjs/components/Rating/Rating.js +1 -1
  123. package/lib/commonjs/components/Rating/index.js +1 -1
  124. package/lib/commonjs/components/Repeater/Repeater.js +1 -1
  125. package/lib/commonjs/components/Repeater/index.js +1 -1
  126. package/lib/commonjs/components/RichTextEditor/RichTextEditor.js +1 -1
  127. package/lib/commonjs/components/RichTextEditor/index.js +1 -1
  128. package/lib/commonjs/components/ScannerOverlay/ScannerOverlay.js +1 -1
  129. package/lib/commonjs/components/ScannerOverlay/index.js +1 -1
  130. package/lib/commonjs/components/Screen/Screen.js +1 -1
  131. package/lib/commonjs/components/SearchBar/SearchBar.js +1 -1
  132. package/lib/commonjs/components/SearchBar/SearchPanel.js +1 -1
  133. package/lib/commonjs/components/SearchBar/index.js +1 -1
  134. package/lib/commonjs/components/SectionHeader/SectionHeader.js +1 -1
  135. package/lib/commonjs/components/SectionHeader/index.js +1 -1
  136. package/lib/commonjs/components/SegmentedControl/SegmentedControl.js +1 -1
  137. package/lib/commonjs/components/Select/Select.js +1 -1
  138. package/lib/commonjs/components/Select/index.js +1 -1
  139. package/lib/commonjs/components/SignaturePad/SignaturePad.js +1 -1
  140. package/lib/commonjs/components/SignaturePad/index.js +1 -1
  141. package/lib/commonjs/components/Skeleton/Skeleton.js +1 -1
  142. package/lib/commonjs/components/Skeleton/SkeletonContent.js +1 -1
  143. package/lib/commonjs/components/Skeleton/SkeletonList.js +1 -1
  144. package/lib/commonjs/components/Skeleton/index.js +1 -1
  145. package/lib/commonjs/components/SlideToConfirm/SlideToConfirm.js +1 -1
  146. package/lib/commonjs/components/SlideToConfirm/index.js +1 -1
  147. package/lib/commonjs/components/Slider/Slider.js +1 -1
  148. package/lib/commonjs/components/Slider/valueText.js +1 -1
  149. package/lib/commonjs/components/SliderField/SliderField.js +1 -1
  150. package/lib/commonjs/components/SliderField/index.js +1 -1
  151. package/lib/commonjs/components/SortableList/SortableList.js +1 -1
  152. package/lib/commonjs/components/SortableList/index.js +1 -1
  153. package/lib/commonjs/components/Sparkline/Sparkline.js +1 -1
  154. package/lib/commonjs/components/Sparkline/index.js +1 -1
  155. package/lib/commonjs/components/Spinner/Spinner.js +1 -1
  156. package/lib/commonjs/components/Spinner/index.js +1 -1
  157. package/lib/commonjs/components/StatTile/StatTile.js +1 -1
  158. package/lib/commonjs/components/StatusBadge/StatusBadge.js +1 -1
  159. package/lib/commonjs/components/StatusBadge/statusMap.js +1 -0
  160. package/lib/commonjs/components/Stepper/Stepper.js +1 -1
  161. package/lib/commonjs/components/Stepper/index.js +1 -1
  162. package/lib/commonjs/components/Swipeable/Swipeable.js +1 -1
  163. package/lib/commonjs/components/Switch/Switch.js +1 -1
  164. package/lib/commonjs/components/Tabs/Tabs.js +1 -1
  165. package/lib/commonjs/components/TagInput/TagInput.js +1 -1
  166. package/lib/commonjs/components/Text/Text.js +1 -1
  167. package/lib/commonjs/components/TimePicker/TimePicker.js +1 -1
  168. package/lib/commonjs/components/TimePicker/index.js +1 -1
  169. package/lib/commonjs/components/Timeline/Timeline.js +1 -1
  170. package/lib/commonjs/components/Toast/Toast.js +1 -1
  171. package/lib/commonjs/components/Toast/ToastProvider.js +1 -1
  172. package/lib/commonjs/components/Toast/index.js +1 -1
  173. package/lib/commonjs/components/Tooltip/RichTooltipBody.js +1 -1
  174. package/lib/commonjs/components/Tooltip/Tooltip.js +1 -1
  175. package/lib/commonjs/components/Tooltip/index.js +1 -1
  176. package/lib/commonjs/components/Tour/Tour.js +1 -1
  177. package/lib/commonjs/components/Tour/index.js +1 -1
  178. package/lib/commonjs/components/TypingIndicator/TypingIndicator.js +1 -1
  179. package/lib/commonjs/components/TypingIndicator/index.js +1 -1
  180. package/lib/commonjs/components/WheelPicker/Wheel.js +1 -1
  181. package/lib/commonjs/components/WheelPicker/WheelPicker.js +1 -1
  182. package/lib/commonjs/components/WheelPicker/index.js +1 -1
  183. package/lib/commonjs/components/index.js +1 -1
  184. package/lib/commonjs/components/not-drawn.json +2 -1
  185. package/lib/commonjs/form/index.js +1 -1
  186. package/lib/commonjs/index.js +1 -1
  187. package/lib/commonjs/navigation/DiscardGuard.js +1 -0
  188. package/lib/commonjs/navigation/NavigationScreen.js +1 -0
  189. package/lib/commonjs/navigation/index.js +1 -0
  190. package/lib/commonjs/theme/index.js +1 -1
  191. package/lib/commonjs/theme/makeStyles.js +1 -0
  192. package/lib/commonjs/theme/merge.js +1 -1
  193. package/lib/commonjs/theme/tokens.generated.js +1 -1
  194. package/lib/commonjs/utils/placement.js +1 -1
  195. package/lib/commonjs/utils/warnInvalidValue.js +1 -1
  196. package/lib/module/components/Accordion/Accordion.js +1 -1
  197. package/lib/module/components/AmountSlider/AmountSlider.js +1 -1
  198. package/lib/module/components/AmountSlider/index.js +1 -1
  199. package/lib/module/components/AnimatePresence/AnimatePresence.js +1 -1
  200. package/lib/module/components/AppBar/AppBar.js +1 -1
  201. package/lib/module/components/AppBar/index.js +1 -1
  202. package/lib/module/components/AppIcon/AppIcon.js +1 -1
  203. package/lib/module/components/AppLockOverlay/AppLockOverlay.js +1 -0
  204. package/lib/module/components/AppLockOverlay/index.js +1 -0
  205. package/lib/module/components/AsyncBlock/AsyncBlock.js +1 -1
  206. package/lib/module/components/AsyncBlock/index.js +1 -1
  207. package/lib/module/components/AuthedImage/AuthedImage.js +1 -1
  208. package/lib/module/components/AuthedImage/authedImageCache.js +1 -1
  209. package/lib/module/components/Autocomplete/Autocomplete.js +1 -1
  210. package/lib/module/components/Autocomplete/index.js +1 -1
  211. package/lib/module/components/Avatar/Avatar.js +1 -1
  212. package/lib/module/components/Avatar/index.js +1 -1
  213. package/lib/module/components/Badge/Badge.js +1 -1
  214. package/lib/module/components/Badge/index.js +1 -1
  215. package/lib/module/components/Banner/Banner.js +1 -1
  216. package/lib/module/components/Banner/index.js +1 -1
  217. package/lib/module/components/BarChart/BarChart.js +1 -1
  218. package/lib/module/components/BarChart/index.js +1 -1
  219. package/lib/module/components/BottomNavigation/BottomNavigation.js +1 -1
  220. package/lib/module/components/BottomNavigation/index.js +1 -1
  221. package/lib/module/components/BottomSheet/BottomSheet.js +1 -1
  222. package/lib/module/components/BottomSheet/index.js +1 -1
  223. package/lib/module/components/Button/Button.js +1 -1
  224. package/lib/module/components/Calendar/Calendar.js +1 -1
  225. package/lib/module/components/Calendar/CalendarDay.js +1 -1
  226. package/lib/module/components/Calendar/calendarStyles.js +1 -1
  227. package/lib/module/components/Calendar/index.js +1 -1
  228. package/lib/module/components/Card/Card.js +1 -1
  229. package/lib/module/components/Card/index.js +1 -1
  230. package/lib/module/components/Carousel/Carousel.js +1 -1
  231. package/lib/module/components/Carousel/index.js +1 -1
  232. package/lib/module/components/Checkbox/Checkbox.js +1 -1
  233. package/lib/module/components/Chip/Chip.js +1 -1
  234. package/lib/module/components/Chip/index.js +1 -1
  235. package/lib/module/components/ChoiceGroup/ChoiceGroup.js +1 -1
  236. package/lib/module/components/Composer/Composer.js +1 -1
  237. package/lib/module/components/Composer/index.js +1 -1
  238. package/lib/module/components/Confetti/Confetti.js +1 -1
  239. package/lib/module/components/Confirm/confirm.js +1 -0
  240. package/lib/module/components/Confirm/index.js +1 -0
  241. package/lib/module/components/DatePicker/DatePicker.js +1 -1
  242. package/lib/module/components/DatePicker/index.js +1 -1
  243. package/lib/module/components/DateRangePicker/DateRangePicker.js +1 -1
  244. package/lib/module/components/DateRangePicker/index.js +1 -1
  245. package/lib/module/components/DateSeparator/DateSeparator.js +1 -1
  246. package/lib/module/components/DecimalInput/DecimalInput.js +1 -1
  247. package/lib/module/components/DecimalInput/index.js +1 -1
  248. package/lib/module/components/Descriptions/Descriptions.js +1 -1
  249. package/lib/module/components/Dialog/Dialog.js +1 -1
  250. package/lib/module/components/Divider/Divider.js +1 -1
  251. package/lib/module/components/Drawer/Drawer.js +1 -1
  252. package/lib/module/components/Drawer/index.js +1 -1
  253. package/lib/module/components/EmptyState/EmptyState.js +1 -1
  254. package/lib/module/components/ErrorBoundary/ErrorBoundary.js +1 -1
  255. package/lib/module/components/ErrorBoundary/index.js +1 -1
  256. package/lib/module/components/FieldBase/ChoiceText.js +1 -1
  257. package/lib/module/components/FieldBase/FieldBase.js +1 -1
  258. package/lib/module/components/FieldBase/useFloatingLabel.js +1 -1
  259. package/lib/module/components/FilePicker/FilePicker.js +1 -1
  260. package/lib/module/components/FilePicker/index.js +1 -1
  261. package/lib/module/components/FilterChipRow/FilterChipRow.js +1 -1
  262. package/lib/module/components/FloatingActionButton/FloatingActionButton.js +1 -1
  263. package/lib/module/components/FloatingActionButton/index.js +1 -1
  264. package/lib/module/components/ForceUpdateDialog/ForceUpdateDialog.js +1 -1
  265. package/lib/module/components/ForceUpdateDialog/index.js +1 -1
  266. package/lib/module/components/FormField/FormField.js +1 -1
  267. package/lib/module/components/FormField/index.js +1 -1
  268. package/lib/module/components/IconBadge/IconBadge.js +1 -1
  269. package/lib/module/components/IconButton/IconButton.js +1 -1
  270. package/lib/module/components/ImageGallery/ImageGallery.js +1 -1
  271. package/lib/module/components/ImageGallery/index.js +1 -1
  272. package/lib/module/components/InlineSelect/InlineSelect.js +1 -1
  273. package/lib/module/components/InlineSelect/index.js +1 -1
  274. package/lib/module/components/Input/Input.js +1 -1
  275. package/lib/module/components/Input/index.js +1 -1
  276. package/lib/module/components/KeyboardToolbar/KeyboardToolbar.js +1 -1
  277. package/lib/module/components/KeyboardToolbar/index.js +1 -1
  278. package/lib/module/components/ListItem/ListItem.js +1 -1
  279. package/lib/module/components/LoaderOverlay/LoaderOverlay.js +1 -1
  280. package/lib/module/components/LoaderOverlay/index.js +1 -1
  281. package/lib/module/components/Menu/Menu.js +1 -1
  282. package/lib/module/components/Menu/MenuSurface.js +1 -1
  283. package/lib/module/components/Menu/index.js +1 -1
  284. package/lib/module/components/Menu/menuModel.js +1 -1
  285. package/lib/module/components/Menu/useContextMenu.js +1 -1
  286. package/lib/module/components/MessageBubble/MessageBubble.js +1 -1
  287. package/lib/module/components/Modal/Modal.js +1 -1
  288. package/lib/module/components/Modal/index.js +1 -1
  289. package/lib/module/components/NumberInput/NumberInput.js +1 -1
  290. package/lib/module/components/NumberInput/index.js +1 -1
  291. package/lib/module/components/OTPInput/OTPInput.js +1 -1
  292. package/lib/module/components/OTPInput/index.js +1 -1
  293. package/lib/module/components/OnboardingPager/OnboardingPager.js +1 -1
  294. package/lib/module/components/OnboardingPager/index.js +1 -1
  295. package/lib/module/components/OptionSheet/OptionSheet.js +1 -1
  296. package/lib/module/components/OptionSheet/index.js +1 -1
  297. package/lib/module/components/PagedListFooter/PagedListFooter.js +1 -0
  298. package/lib/module/components/PagedListFooter/index.js +1 -0
  299. package/lib/module/components/PermissionPrompt/PermissionPrompt.js +1 -1
  300. package/lib/module/components/PermissionPrompt/index.js +1 -1
  301. package/lib/module/components/PhoneNumberInput/PhoneNumberInput.js +1 -1
  302. package/lib/module/components/PhoneNumberInput/index.js +1 -1
  303. package/lib/module/components/PickerTrigger/PickerTrigger.js +1 -1
  304. package/lib/module/components/PickerTrigger/index.js +1 -1
  305. package/lib/module/components/ProfileCompletion/ProfileCompletion.js +1 -1
  306. package/lib/module/components/ProfileCompletion/index.js +1 -1
  307. package/lib/module/components/ProfilePicker/ProfilePicker.js +1 -1
  308. package/lib/module/components/ProfilePicker/index.js +1 -1
  309. package/lib/module/components/ProgressBar/ProgressBar.js +1 -1
  310. package/lib/module/components/ProgressBar/index.js +1 -1
  311. package/lib/module/components/ProgressRing/ProgressRing.js +1 -1
  312. package/lib/module/components/Radio/Radio.js +1 -1
  313. package/lib/module/components/Radio/RadioGroup.js +1 -1
  314. package/lib/module/components/Rating/Rating.js +1 -1
  315. package/lib/module/components/Rating/index.js +1 -1
  316. package/lib/module/components/Repeater/Repeater.js +1 -1
  317. package/lib/module/components/Repeater/index.js +1 -1
  318. package/lib/module/components/RichTextEditor/RichTextEditor.js +1 -1
  319. package/lib/module/components/RichTextEditor/index.js +1 -1
  320. package/lib/module/components/ScannerOverlay/ScannerOverlay.js +1 -1
  321. package/lib/module/components/ScannerOverlay/index.js +1 -1
  322. package/lib/module/components/Screen/Screen.js +1 -1
  323. package/lib/module/components/SearchBar/SearchBar.js +1 -1
  324. package/lib/module/components/SearchBar/SearchPanel.js +1 -1
  325. package/lib/module/components/SearchBar/index.js +1 -1
  326. package/lib/module/components/SectionHeader/SectionHeader.js +1 -1
  327. package/lib/module/components/SectionHeader/index.js +1 -1
  328. package/lib/module/components/SegmentedControl/SegmentedControl.js +1 -1
  329. package/lib/module/components/Select/Select.js +1 -1
  330. package/lib/module/components/Select/index.js +1 -1
  331. package/lib/module/components/SignaturePad/SignaturePad.js +1 -1
  332. package/lib/module/components/SignaturePad/index.js +1 -1
  333. package/lib/module/components/Skeleton/Skeleton.js +1 -1
  334. package/lib/module/components/Skeleton/SkeletonContent.js +1 -1
  335. package/lib/module/components/Skeleton/SkeletonList.js +1 -1
  336. package/lib/module/components/Skeleton/index.js +1 -1
  337. package/lib/module/components/SlideToConfirm/SlideToConfirm.js +1 -1
  338. package/lib/module/components/SlideToConfirm/index.js +1 -1
  339. package/lib/module/components/Slider/Slider.js +1 -1
  340. package/lib/module/components/Slider/valueText.js +1 -1
  341. package/lib/module/components/SliderField/SliderField.js +1 -1
  342. package/lib/module/components/SliderField/index.js +1 -1
  343. package/lib/module/components/SortableList/SortableList.js +1 -1
  344. package/lib/module/components/SortableList/index.js +1 -1
  345. package/lib/module/components/Sparkline/Sparkline.js +1 -1
  346. package/lib/module/components/Sparkline/index.js +1 -1
  347. package/lib/module/components/Spinner/Spinner.js +1 -1
  348. package/lib/module/components/Spinner/index.js +1 -1
  349. package/lib/module/components/StatTile/StatTile.js +1 -1
  350. package/lib/module/components/StatusBadge/StatusBadge.js +1 -1
  351. package/lib/module/components/StatusBadge/statusMap.js +1 -0
  352. package/lib/module/components/Stepper/Stepper.js +1 -1
  353. package/lib/module/components/Stepper/index.js +1 -1
  354. package/lib/module/components/Swipeable/Swipeable.js +1 -1
  355. package/lib/module/components/Switch/Switch.js +1 -1
  356. package/lib/module/components/Tabs/Tabs.js +1 -1
  357. package/lib/module/components/TagInput/TagInput.js +1 -1
  358. package/lib/module/components/Text/Text.js +1 -1
  359. package/lib/module/components/TimePicker/TimePicker.js +1 -1
  360. package/lib/module/components/TimePicker/index.js +1 -1
  361. package/lib/module/components/Timeline/Timeline.js +1 -1
  362. package/lib/module/components/Toast/Toast.js +1 -1
  363. package/lib/module/components/Toast/ToastProvider.js +1 -1
  364. package/lib/module/components/Toast/index.js +1 -1
  365. package/lib/module/components/Tooltip/RichTooltipBody.js +1 -1
  366. package/lib/module/components/Tooltip/Tooltip.js +1 -1
  367. package/lib/module/components/Tooltip/index.js +1 -1
  368. package/lib/module/components/Tour/Tour.js +1 -1
  369. package/lib/module/components/Tour/index.js +1 -1
  370. package/lib/module/components/TypingIndicator/TypingIndicator.js +1 -1
  371. package/lib/module/components/TypingIndicator/index.js +1 -1
  372. package/lib/module/components/WheelPicker/Wheel.js +1 -1
  373. package/lib/module/components/WheelPicker/WheelPicker.js +1 -1
  374. package/lib/module/components/WheelPicker/index.js +1 -1
  375. package/lib/module/components/index.js +1 -1
  376. package/lib/module/components/not-drawn.json +2 -1
  377. package/lib/module/form/index.js +1 -1
  378. package/lib/module/index.js +1 -1
  379. package/lib/module/navigation/DiscardGuard.js +1 -0
  380. package/lib/module/navigation/NavigationScreen.js +1 -0
  381. package/lib/module/navigation/index.js +1 -0
  382. package/lib/module/theme/index.js +1 -1
  383. package/lib/module/theme/makeStyles.js +1 -0
  384. package/lib/module/theme/merge.js +1 -1
  385. package/lib/module/theme/tokens.generated.js +1 -1
  386. package/lib/module/utils/placement.js +1 -1
  387. package/lib/module/utils/warnInvalidValue.js +1 -1
  388. package/lib/typescript/commonjs/components/AmountSlider/AmountSlider.d.ts +24 -17
  389. package/lib/typescript/commonjs/components/AmountSlider/index.d.ts +2 -2
  390. package/lib/typescript/commonjs/components/AppBar/AppBar.d.ts +13 -8
  391. package/lib/typescript/commonjs/components/AppBar/index.d.ts +2 -2
  392. package/lib/typescript/commonjs/components/AppIcon/AppIcon.d.ts +2 -1
  393. package/lib/typescript/commonjs/components/AppLockOverlay/AppLockOverlay.d.ts +27 -0
  394. package/lib/typescript/commonjs/components/AppLockOverlay/index.d.ts +3 -0
  395. package/lib/typescript/commonjs/components/AsyncBlock/AsyncBlock.d.ts +13 -4
  396. package/lib/typescript/commonjs/components/AsyncBlock/index.d.ts +2 -2
  397. package/lib/typescript/commonjs/components/AuthedImage/AuthedImage.d.ts +12 -1
  398. package/lib/typescript/commonjs/components/AuthedImage/authedImageCache.d.ts +1 -1
  399. package/lib/typescript/commonjs/components/Autocomplete/Autocomplete.d.ts +9 -4
  400. package/lib/typescript/commonjs/components/Autocomplete/index.d.ts +2 -2
  401. package/lib/typescript/commonjs/components/Avatar/Avatar.d.ts +19 -8
  402. package/lib/typescript/commonjs/components/Avatar/index.d.ts +2 -2
  403. package/lib/typescript/commonjs/components/Badge/Badge.d.ts +9 -2
  404. package/lib/typescript/commonjs/components/Badge/index.d.ts +2 -2
  405. package/lib/typescript/commonjs/components/Banner/Banner.d.ts +16 -8
  406. package/lib/typescript/commonjs/components/Banner/index.d.ts +2 -2
  407. package/lib/typescript/commonjs/components/BarChart/BarChart.d.ts +12 -3
  408. package/lib/typescript/commonjs/components/BarChart/index.d.ts +2 -2
  409. package/lib/typescript/commonjs/components/BottomNavigation/BottomNavigation.d.ts +8 -0
  410. package/lib/typescript/commonjs/components/BottomNavigation/index.d.ts +2 -2
  411. package/lib/typescript/commonjs/components/BottomSheet/BottomSheet.d.ts +42 -58
  412. package/lib/typescript/commonjs/components/BottomSheet/index.d.ts +2 -4
  413. package/lib/typescript/commonjs/components/Button/Button.d.ts +13 -11
  414. package/lib/typescript/commonjs/components/Button/index.d.ts +1 -1
  415. package/lib/typescript/commonjs/components/Calendar/Calendar.d.ts +24 -15
  416. package/lib/typescript/commonjs/components/Calendar/CalendarDay.d.ts +1 -4
  417. package/lib/typescript/commonjs/components/Calendar/calendarStyles.d.ts +4 -7
  418. package/lib/typescript/commonjs/components/Calendar/index.d.ts +2 -2
  419. package/lib/typescript/commonjs/components/Card/Card.d.ts +13 -6
  420. package/lib/typescript/commonjs/components/Card/index.d.ts +2 -2
  421. package/lib/typescript/commonjs/components/Carousel/Carousel.d.ts +7 -0
  422. package/lib/typescript/commonjs/components/Carousel/index.d.ts +2 -2
  423. package/lib/typescript/commonjs/components/Checkbox/Checkbox.d.ts +10 -12
  424. package/lib/typescript/commonjs/components/Chip/Chip.d.ts +12 -6
  425. package/lib/typescript/commonjs/components/Chip/index.d.ts +2 -2
  426. package/lib/typescript/commonjs/components/ChoiceGroup/ChoiceGroup.d.ts +11 -4
  427. package/lib/typescript/commonjs/components/Composer/Composer.d.ts +8 -3
  428. package/lib/typescript/commonjs/components/Composer/index.d.ts +2 -2
  429. package/lib/typescript/commonjs/components/Confirm/confirm.d.ts +17 -0
  430. package/lib/typescript/commonjs/components/Confirm/index.d.ts +3 -0
  431. package/lib/typescript/commonjs/components/DatePicker/DatePicker.d.ts +22 -6
  432. package/lib/typescript/commonjs/components/DatePicker/index.d.ts +2 -2
  433. package/lib/typescript/commonjs/components/DateRangePicker/DateRangePicker.d.ts +12 -8
  434. package/lib/typescript/commonjs/components/DateRangePicker/index.d.ts +2 -2
  435. package/lib/typescript/commonjs/components/DecimalInput/DecimalInput.d.ts +11 -15
  436. package/lib/typescript/commonjs/components/DecimalInput/index.d.ts +2 -2
  437. package/lib/typescript/commonjs/components/Descriptions/Descriptions.d.ts +2 -1
  438. package/lib/typescript/commonjs/components/Dialog/Dialog.d.ts +7 -4
  439. package/lib/typescript/commonjs/components/Dialog/index.d.ts +1 -1
  440. package/lib/typescript/commonjs/components/Drawer/Drawer.d.ts +8 -1
  441. package/lib/typescript/commonjs/components/Drawer/index.d.ts +2 -2
  442. package/lib/typescript/commonjs/components/EmptyState/EmptyState.d.ts +7 -2
  443. package/lib/typescript/commonjs/components/ErrorBoundary/ErrorBoundary.d.ts +8 -0
  444. package/lib/typescript/commonjs/components/ErrorBoundary/index.d.ts +2 -2
  445. package/lib/typescript/commonjs/components/FieldBase/ChoiceText.d.ts +12 -9
  446. package/lib/typescript/commonjs/components/FieldBase/FieldBase.d.ts +5 -4
  447. package/lib/typescript/commonjs/components/FieldBase/useFloatingLabel.d.ts +3 -3
  448. package/lib/typescript/commonjs/components/FilePicker/FilePicker.d.ts +27 -25
  449. package/lib/typescript/commonjs/components/FilePicker/index.d.ts +2 -2
  450. package/lib/typescript/commonjs/components/FloatingActionButton/FloatingActionButton.d.ts +28 -11
  451. package/lib/typescript/commonjs/components/FloatingActionButton/index.d.ts +2 -2
  452. package/lib/typescript/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.d.ts +11 -6
  453. package/lib/typescript/commonjs/components/ForceUpdateDialog/index.d.ts +2 -2
  454. package/lib/typescript/commonjs/components/FormField/FormField.d.ts +8 -12
  455. package/lib/typescript/commonjs/components/FormField/index.d.ts +2 -2
  456. package/lib/typescript/commonjs/components/IconBadge/IconBadge.d.ts +3 -2
  457. package/lib/typescript/commonjs/components/IconButton/IconButton.d.ts +4 -3
  458. package/lib/typescript/commonjs/components/ImageGallery/ImageGallery.d.ts +12 -0
  459. package/lib/typescript/commonjs/components/ImageGallery/index.d.ts +2 -2
  460. package/lib/typescript/commonjs/components/InlineSelect/InlineSelect.d.ts +12 -2
  461. package/lib/typescript/commonjs/components/InlineSelect/index.d.ts +2 -2
  462. package/lib/typescript/commonjs/components/Input/Input.d.ts +11 -2
  463. package/lib/typescript/commonjs/components/Input/index.d.ts +2 -2
  464. package/lib/typescript/commonjs/components/KeyboardToolbar/KeyboardToolbar.d.ts +12 -10
  465. package/lib/typescript/commonjs/components/KeyboardToolbar/index.d.ts +2 -2
  466. package/lib/typescript/commonjs/components/ListItem/ListItem.d.ts +3 -3
  467. package/lib/typescript/commonjs/components/LoaderOverlay/LoaderOverlay.d.ts +7 -0
  468. package/lib/typescript/commonjs/components/LoaderOverlay/index.d.ts +2 -2
  469. package/lib/typescript/commonjs/components/Menu/Menu.d.ts +6 -8
  470. package/lib/typescript/commonjs/components/Menu/MenuSurface.d.ts +2 -3
  471. package/lib/typescript/commonjs/components/Menu/index.d.ts +2 -1
  472. package/lib/typescript/commonjs/components/Menu/menuModel.d.ts +6 -0
  473. package/lib/typescript/commonjs/components/Menu/useContextMenu.d.ts +4 -6
  474. package/lib/typescript/commonjs/components/Modal/Modal.d.ts +16 -3
  475. package/lib/typescript/commonjs/components/Modal/index.d.ts +2 -2
  476. package/lib/typescript/commonjs/components/NumberInput/NumberInput.d.ts +9 -1
  477. package/lib/typescript/commonjs/components/NumberInput/index.d.ts +2 -2
  478. package/lib/typescript/commonjs/components/OTPInput/OTPInput.d.ts +7 -1
  479. package/lib/typescript/commonjs/components/OTPInput/index.d.ts +2 -2
  480. package/lib/typescript/commonjs/components/OnboardingPager/OnboardingPager.d.ts +10 -9
  481. package/lib/typescript/commonjs/components/OnboardingPager/index.d.ts +1 -1
  482. package/lib/typescript/commonjs/components/OptionSheet/OptionSheet.d.ts +60 -44
  483. package/lib/typescript/commonjs/components/OptionSheet/index.d.ts +2 -2
  484. package/lib/typescript/commonjs/components/PagedListFooter/PagedListFooter.d.ts +15 -0
  485. package/lib/typescript/commonjs/components/PagedListFooter/index.d.ts +3 -0
  486. package/lib/typescript/commonjs/components/PermissionPrompt/PermissionPrompt.d.ts +12 -0
  487. package/lib/typescript/commonjs/components/PermissionPrompt/index.d.ts +2 -2
  488. package/lib/typescript/commonjs/components/PhoneNumberInput/PhoneNumberInput.d.ts +35 -25
  489. package/lib/typescript/commonjs/components/PhoneNumberInput/index.d.ts +2 -2
  490. package/lib/typescript/commonjs/components/PickerTrigger/PickerTrigger.d.ts +11 -3
  491. package/lib/typescript/commonjs/components/PickerTrigger/index.d.ts +2 -2
  492. package/lib/typescript/commonjs/components/ProfileCompletion/ProfileCompletion.d.ts +13 -5
  493. package/lib/typescript/commonjs/components/ProfileCompletion/index.d.ts +2 -2
  494. package/lib/typescript/commonjs/components/ProfilePicker/ProfilePicker.d.ts +21 -20
  495. package/lib/typescript/commonjs/components/ProfilePicker/index.d.ts +2 -2
  496. package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts +8 -3
  497. package/lib/typescript/commonjs/components/ProgressBar/index.d.ts +2 -2
  498. package/lib/typescript/commonjs/components/ProgressRing/ProgressRing.d.ts +2 -2
  499. package/lib/typescript/commonjs/components/ProgressRing/index.d.ts +1 -1
  500. package/lib/typescript/commonjs/components/Radio/Radio.d.ts +10 -7
  501. package/lib/typescript/commonjs/components/Radio/RadioGroup.d.ts +3 -3
  502. package/lib/typescript/commonjs/components/Rating/Rating.d.ts +8 -2
  503. package/lib/typescript/commonjs/components/Rating/index.d.ts +2 -2
  504. package/lib/typescript/commonjs/components/Repeater/Repeater.d.ts +16 -6
  505. package/lib/typescript/commonjs/components/Repeater/index.d.ts +2 -2
  506. package/lib/typescript/commonjs/components/RichTextEditor/RichTextEditor.d.ts +4 -0
  507. package/lib/typescript/commonjs/components/RichTextEditor/index.d.ts +2 -2
  508. package/lib/typescript/commonjs/components/ScannerOverlay/ScannerOverlay.d.ts +5 -2
  509. package/lib/typescript/commonjs/components/ScannerOverlay/index.d.ts +1 -1
  510. package/lib/typescript/commonjs/components/Screen/Screen.d.ts +33 -10
  511. package/lib/typescript/commonjs/components/Screen/index.d.ts +1 -1
  512. package/lib/typescript/commonjs/components/SearchBar/SearchBar.d.ts +22 -8
  513. package/lib/typescript/commonjs/components/SearchBar/SearchPanel.d.ts +3 -1
  514. package/lib/typescript/commonjs/components/SearchBar/index.d.ts +2 -2
  515. package/lib/typescript/commonjs/components/SearchBar/useRecentSearches.d.ts +1 -1
  516. package/lib/typescript/commonjs/components/SectionHeader/SectionHeader.d.ts +5 -0
  517. package/lib/typescript/commonjs/components/SectionHeader/index.d.ts +2 -2
  518. package/lib/typescript/commonjs/components/SegmentedControl/SegmentedControl.d.ts +3 -2
  519. package/lib/typescript/commonjs/components/Select/Select.d.ts +18 -8
  520. package/lib/typescript/commonjs/components/Select/index.d.ts +2 -2
  521. package/lib/typescript/commonjs/components/SignaturePad/SignaturePad.d.ts +3 -2
  522. package/lib/typescript/commonjs/components/SignaturePad/index.d.ts +1 -1
  523. package/lib/typescript/commonjs/components/Skeleton/Skeleton.d.ts +7 -0
  524. package/lib/typescript/commonjs/components/Skeleton/SkeletonContent.d.ts +3 -1
  525. package/lib/typescript/commonjs/components/Skeleton/SkeletonList.d.ts +3 -1
  526. package/lib/typescript/commonjs/components/Skeleton/index.d.ts +2 -2
  527. package/lib/typescript/commonjs/components/SlideToConfirm/SlideToConfirm.d.ts +12 -5
  528. package/lib/typescript/commonjs/components/SlideToConfirm/index.d.ts +2 -2
  529. package/lib/typescript/commonjs/components/Slider/Slider.d.ts +3 -2
  530. package/lib/typescript/commonjs/components/Slider/valueText.d.ts +2 -1
  531. package/lib/typescript/commonjs/components/SliderField/SliderField.d.ts +15 -3
  532. package/lib/typescript/commonjs/components/SliderField/index.d.ts +2 -2
  533. package/lib/typescript/commonjs/components/SortableList/SortableList.d.ts +6 -0
  534. package/lib/typescript/commonjs/components/SortableList/index.d.ts +2 -2
  535. package/lib/typescript/commonjs/components/Sparkline/Sparkline.d.ts +11 -3
  536. package/lib/typescript/commonjs/components/Sparkline/index.d.ts +2 -2
  537. package/lib/typescript/commonjs/components/Spinner/Spinner.d.ts +7 -1
  538. package/lib/typescript/commonjs/components/Spinner/index.d.ts +2 -2
  539. package/lib/typescript/commonjs/components/StatTile/StatTile.d.ts +10 -2
  540. package/lib/typescript/commonjs/components/StatusBadge/StatusBadge.d.ts +8 -5
  541. package/lib/typescript/commonjs/components/StatusBadge/statusMap.d.ts +8 -0
  542. package/lib/typescript/commonjs/components/Stepper/Stepper.d.ts +15 -1
  543. package/lib/typescript/commonjs/components/Stepper/index.d.ts +2 -2
  544. package/lib/typescript/commonjs/components/Swipeable/Swipeable.d.ts +4 -2
  545. package/lib/typescript/commonjs/components/Switch/Switch.d.ts +9 -11
  546. package/lib/typescript/commonjs/components/Tabs/Tabs.d.ts +5 -3
  547. package/lib/typescript/commonjs/components/TagInput/TagInput.d.ts +3 -4
  548. package/lib/typescript/commonjs/components/Text/Text.d.ts +6 -5
  549. package/lib/typescript/commonjs/components/TimePicker/TimePicker.d.ts +17 -4
  550. package/lib/typescript/commonjs/components/TimePicker/index.d.ts +2 -2
  551. package/lib/typescript/commonjs/components/Toast/Toast.d.ts +11 -5
  552. package/lib/typescript/commonjs/components/Toast/ToastProvider.d.ts +15 -14
  553. package/lib/typescript/commonjs/components/Toast/index.d.ts +2 -2
  554. package/lib/typescript/commonjs/components/Tooltip/Tooltip.d.ts +8 -2
  555. package/lib/typescript/commonjs/components/Tooltip/index.d.ts +2 -2
  556. package/lib/typescript/commonjs/components/Tour/Tour.d.ts +7 -5
  557. package/lib/typescript/commonjs/components/Tour/index.d.ts +1 -1
  558. package/lib/typescript/commonjs/components/TypingIndicator/TypingIndicator.d.ts +7 -2
  559. package/lib/typescript/commonjs/components/TypingIndicator/index.d.ts +2 -2
  560. package/lib/typescript/commonjs/components/WheelPicker/WheelPicker.d.ts +13 -6
  561. package/lib/typescript/commonjs/components/WheelPicker/index.d.ts +2 -2
  562. package/lib/typescript/commonjs/components/index.d.ts +125 -119
  563. package/lib/typescript/commonjs/form/HookFormField.d.ts +1 -1
  564. package/lib/typescript/commonjs/form/index.d.ts +0 -8
  565. package/lib/typescript/commonjs/index.d.ts +6 -5
  566. package/lib/typescript/commonjs/navigation/DiscardGuard.d.ts +26 -0
  567. package/lib/typescript/commonjs/navigation/NavigationScreen.d.ts +12 -0
  568. package/lib/typescript/commonjs/navigation/index.d.ts +5 -0
  569. package/lib/typescript/commonjs/theme/index.d.ts +1 -0
  570. package/lib/typescript/commonjs/theme/makeStyles.d.ts +5 -0
  571. package/lib/typescript/commonjs/theme/tokens.generated.d.ts +3 -1
  572. package/lib/typescript/commonjs/theme/types.d.ts +15 -2
  573. package/lib/typescript/commonjs/types/vocabulary.d.ts +10 -0
  574. package/lib/typescript/commonjs/utils/placement.d.ts +2 -0
  575. package/lib/typescript/commonjs/utils/warnInvalidValue.d.ts +1 -1
  576. package/lib/typescript/module/components/AmountSlider/AmountSlider.d.ts +24 -17
  577. package/lib/typescript/module/components/AmountSlider/index.d.ts +2 -2
  578. package/lib/typescript/module/components/AppBar/AppBar.d.ts +13 -8
  579. package/lib/typescript/module/components/AppBar/index.d.ts +2 -2
  580. package/lib/typescript/module/components/AppIcon/AppIcon.d.ts +2 -1
  581. package/lib/typescript/module/components/AppLockOverlay/AppLockOverlay.d.ts +27 -0
  582. package/lib/typescript/module/components/AppLockOverlay/index.d.ts +3 -0
  583. package/lib/typescript/module/components/AsyncBlock/AsyncBlock.d.ts +13 -4
  584. package/lib/typescript/module/components/AsyncBlock/index.d.ts +2 -2
  585. package/lib/typescript/module/components/AuthedImage/AuthedImage.d.ts +12 -1
  586. package/lib/typescript/module/components/AuthedImage/authedImageCache.d.ts +1 -1
  587. package/lib/typescript/module/components/Autocomplete/Autocomplete.d.ts +9 -4
  588. package/lib/typescript/module/components/Autocomplete/index.d.ts +2 -2
  589. package/lib/typescript/module/components/Avatar/Avatar.d.ts +19 -8
  590. package/lib/typescript/module/components/Avatar/index.d.ts +2 -2
  591. package/lib/typescript/module/components/Badge/Badge.d.ts +9 -2
  592. package/lib/typescript/module/components/Badge/index.d.ts +2 -2
  593. package/lib/typescript/module/components/Banner/Banner.d.ts +16 -8
  594. package/lib/typescript/module/components/Banner/index.d.ts +2 -2
  595. package/lib/typescript/module/components/BarChart/BarChart.d.ts +12 -3
  596. package/lib/typescript/module/components/BarChart/index.d.ts +2 -2
  597. package/lib/typescript/module/components/BottomNavigation/BottomNavigation.d.ts +8 -0
  598. package/lib/typescript/module/components/BottomNavigation/index.d.ts +2 -2
  599. package/lib/typescript/module/components/BottomSheet/BottomSheet.d.ts +42 -58
  600. package/lib/typescript/module/components/BottomSheet/index.d.ts +2 -4
  601. package/lib/typescript/module/components/Button/Button.d.ts +13 -11
  602. package/lib/typescript/module/components/Button/index.d.ts +1 -1
  603. package/lib/typescript/module/components/Calendar/Calendar.d.ts +24 -15
  604. package/lib/typescript/module/components/Calendar/CalendarDay.d.ts +1 -4
  605. package/lib/typescript/module/components/Calendar/calendarStyles.d.ts +4 -7
  606. package/lib/typescript/module/components/Calendar/index.d.ts +2 -2
  607. package/lib/typescript/module/components/Card/Card.d.ts +13 -6
  608. package/lib/typescript/module/components/Card/index.d.ts +2 -2
  609. package/lib/typescript/module/components/Carousel/Carousel.d.ts +7 -0
  610. package/lib/typescript/module/components/Carousel/index.d.ts +2 -2
  611. package/lib/typescript/module/components/Checkbox/Checkbox.d.ts +10 -12
  612. package/lib/typescript/module/components/Chip/Chip.d.ts +12 -6
  613. package/lib/typescript/module/components/Chip/index.d.ts +2 -2
  614. package/lib/typescript/module/components/ChoiceGroup/ChoiceGroup.d.ts +11 -4
  615. package/lib/typescript/module/components/Composer/Composer.d.ts +8 -3
  616. package/lib/typescript/module/components/Composer/index.d.ts +2 -2
  617. package/lib/typescript/module/components/Confirm/confirm.d.ts +17 -0
  618. package/lib/typescript/module/components/Confirm/index.d.ts +3 -0
  619. package/lib/typescript/module/components/DatePicker/DatePicker.d.ts +22 -6
  620. package/lib/typescript/module/components/DatePicker/index.d.ts +2 -2
  621. package/lib/typescript/module/components/DateRangePicker/DateRangePicker.d.ts +12 -8
  622. package/lib/typescript/module/components/DateRangePicker/index.d.ts +2 -2
  623. package/lib/typescript/module/components/DecimalInput/DecimalInput.d.ts +11 -15
  624. package/lib/typescript/module/components/DecimalInput/index.d.ts +2 -2
  625. package/lib/typescript/module/components/Descriptions/Descriptions.d.ts +2 -1
  626. package/lib/typescript/module/components/Dialog/Dialog.d.ts +7 -4
  627. package/lib/typescript/module/components/Dialog/index.d.ts +1 -1
  628. package/lib/typescript/module/components/Drawer/Drawer.d.ts +8 -1
  629. package/lib/typescript/module/components/Drawer/index.d.ts +2 -2
  630. package/lib/typescript/module/components/EmptyState/EmptyState.d.ts +7 -2
  631. package/lib/typescript/module/components/ErrorBoundary/ErrorBoundary.d.ts +8 -0
  632. package/lib/typescript/module/components/ErrorBoundary/index.d.ts +2 -2
  633. package/lib/typescript/module/components/FieldBase/ChoiceText.d.ts +12 -9
  634. package/lib/typescript/module/components/FieldBase/FieldBase.d.ts +5 -4
  635. package/lib/typescript/module/components/FieldBase/useFloatingLabel.d.ts +3 -3
  636. package/lib/typescript/module/components/FilePicker/FilePicker.d.ts +27 -25
  637. package/lib/typescript/module/components/FilePicker/index.d.ts +2 -2
  638. package/lib/typescript/module/components/FloatingActionButton/FloatingActionButton.d.ts +28 -11
  639. package/lib/typescript/module/components/FloatingActionButton/index.d.ts +2 -2
  640. package/lib/typescript/module/components/ForceUpdateDialog/ForceUpdateDialog.d.ts +11 -6
  641. package/lib/typescript/module/components/ForceUpdateDialog/index.d.ts +2 -2
  642. package/lib/typescript/module/components/FormField/FormField.d.ts +8 -12
  643. package/lib/typescript/module/components/FormField/index.d.ts +2 -2
  644. package/lib/typescript/module/components/IconBadge/IconBadge.d.ts +3 -2
  645. package/lib/typescript/module/components/IconButton/IconButton.d.ts +4 -3
  646. package/lib/typescript/module/components/ImageGallery/ImageGallery.d.ts +12 -0
  647. package/lib/typescript/module/components/ImageGallery/index.d.ts +2 -2
  648. package/lib/typescript/module/components/InlineSelect/InlineSelect.d.ts +12 -2
  649. package/lib/typescript/module/components/InlineSelect/index.d.ts +2 -2
  650. package/lib/typescript/module/components/Input/Input.d.ts +11 -2
  651. package/lib/typescript/module/components/Input/index.d.ts +2 -2
  652. package/lib/typescript/module/components/KeyboardToolbar/KeyboardToolbar.d.ts +12 -10
  653. package/lib/typescript/module/components/KeyboardToolbar/index.d.ts +2 -2
  654. package/lib/typescript/module/components/ListItem/ListItem.d.ts +3 -3
  655. package/lib/typescript/module/components/LoaderOverlay/LoaderOverlay.d.ts +7 -0
  656. package/lib/typescript/module/components/LoaderOverlay/index.d.ts +2 -2
  657. package/lib/typescript/module/components/Menu/Menu.d.ts +6 -8
  658. package/lib/typescript/module/components/Menu/MenuSurface.d.ts +2 -3
  659. package/lib/typescript/module/components/Menu/index.d.ts +2 -1
  660. package/lib/typescript/module/components/Menu/menuModel.d.ts +6 -0
  661. package/lib/typescript/module/components/Menu/useContextMenu.d.ts +4 -6
  662. package/lib/typescript/module/components/Modal/Modal.d.ts +16 -3
  663. package/lib/typescript/module/components/Modal/index.d.ts +2 -2
  664. package/lib/typescript/module/components/NumberInput/NumberInput.d.ts +9 -1
  665. package/lib/typescript/module/components/NumberInput/index.d.ts +2 -2
  666. package/lib/typescript/module/components/OTPInput/OTPInput.d.ts +7 -1
  667. package/lib/typescript/module/components/OTPInput/index.d.ts +2 -2
  668. package/lib/typescript/module/components/OnboardingPager/OnboardingPager.d.ts +10 -9
  669. package/lib/typescript/module/components/OnboardingPager/index.d.ts +1 -1
  670. package/lib/typescript/module/components/OptionSheet/OptionSheet.d.ts +60 -44
  671. package/lib/typescript/module/components/OptionSheet/index.d.ts +2 -2
  672. package/lib/typescript/module/components/PagedListFooter/PagedListFooter.d.ts +15 -0
  673. package/lib/typescript/module/components/PagedListFooter/index.d.ts +3 -0
  674. package/lib/typescript/module/components/PermissionPrompt/PermissionPrompt.d.ts +12 -0
  675. package/lib/typescript/module/components/PermissionPrompt/index.d.ts +2 -2
  676. package/lib/typescript/module/components/PhoneNumberInput/PhoneNumberInput.d.ts +35 -25
  677. package/lib/typescript/module/components/PhoneNumberInput/index.d.ts +2 -2
  678. package/lib/typescript/module/components/PickerTrigger/PickerTrigger.d.ts +11 -3
  679. package/lib/typescript/module/components/PickerTrigger/index.d.ts +2 -2
  680. package/lib/typescript/module/components/ProfileCompletion/ProfileCompletion.d.ts +13 -5
  681. package/lib/typescript/module/components/ProfileCompletion/index.d.ts +2 -2
  682. package/lib/typescript/module/components/ProfilePicker/ProfilePicker.d.ts +21 -20
  683. package/lib/typescript/module/components/ProfilePicker/index.d.ts +2 -2
  684. package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts +8 -3
  685. package/lib/typescript/module/components/ProgressBar/index.d.ts +2 -2
  686. package/lib/typescript/module/components/ProgressRing/ProgressRing.d.ts +2 -2
  687. package/lib/typescript/module/components/ProgressRing/index.d.ts +1 -1
  688. package/lib/typescript/module/components/Radio/Radio.d.ts +10 -7
  689. package/lib/typescript/module/components/Radio/RadioGroup.d.ts +3 -3
  690. package/lib/typescript/module/components/Rating/Rating.d.ts +8 -2
  691. package/lib/typescript/module/components/Rating/index.d.ts +2 -2
  692. package/lib/typescript/module/components/Repeater/Repeater.d.ts +16 -6
  693. package/lib/typescript/module/components/Repeater/index.d.ts +2 -2
  694. package/lib/typescript/module/components/RichTextEditor/RichTextEditor.d.ts +4 -0
  695. package/lib/typescript/module/components/RichTextEditor/index.d.ts +2 -2
  696. package/lib/typescript/module/components/ScannerOverlay/ScannerOverlay.d.ts +5 -2
  697. package/lib/typescript/module/components/ScannerOverlay/index.d.ts +1 -1
  698. package/lib/typescript/module/components/Screen/Screen.d.ts +33 -10
  699. package/lib/typescript/module/components/Screen/index.d.ts +1 -1
  700. package/lib/typescript/module/components/SearchBar/SearchBar.d.ts +22 -8
  701. package/lib/typescript/module/components/SearchBar/SearchPanel.d.ts +3 -1
  702. package/lib/typescript/module/components/SearchBar/index.d.ts +2 -2
  703. package/lib/typescript/module/components/SearchBar/useRecentSearches.d.ts +1 -1
  704. package/lib/typescript/module/components/SectionHeader/SectionHeader.d.ts +5 -0
  705. package/lib/typescript/module/components/SectionHeader/index.d.ts +2 -2
  706. package/lib/typescript/module/components/SegmentedControl/SegmentedControl.d.ts +3 -2
  707. package/lib/typescript/module/components/Select/Select.d.ts +18 -8
  708. package/lib/typescript/module/components/Select/index.d.ts +2 -2
  709. package/lib/typescript/module/components/SignaturePad/SignaturePad.d.ts +3 -2
  710. package/lib/typescript/module/components/SignaturePad/index.d.ts +1 -1
  711. package/lib/typescript/module/components/Skeleton/Skeleton.d.ts +7 -0
  712. package/lib/typescript/module/components/Skeleton/SkeletonContent.d.ts +3 -1
  713. package/lib/typescript/module/components/Skeleton/SkeletonList.d.ts +3 -1
  714. package/lib/typescript/module/components/Skeleton/index.d.ts +2 -2
  715. package/lib/typescript/module/components/SlideToConfirm/SlideToConfirm.d.ts +12 -5
  716. package/lib/typescript/module/components/SlideToConfirm/index.d.ts +2 -2
  717. package/lib/typescript/module/components/Slider/Slider.d.ts +3 -2
  718. package/lib/typescript/module/components/Slider/valueText.d.ts +2 -1
  719. package/lib/typescript/module/components/SliderField/SliderField.d.ts +15 -3
  720. package/lib/typescript/module/components/SliderField/index.d.ts +2 -2
  721. package/lib/typescript/module/components/SortableList/SortableList.d.ts +6 -0
  722. package/lib/typescript/module/components/SortableList/index.d.ts +2 -2
  723. package/lib/typescript/module/components/Sparkline/Sparkline.d.ts +11 -3
  724. package/lib/typescript/module/components/Sparkline/index.d.ts +2 -2
  725. package/lib/typescript/module/components/Spinner/Spinner.d.ts +7 -1
  726. package/lib/typescript/module/components/Spinner/index.d.ts +2 -2
  727. package/lib/typescript/module/components/StatTile/StatTile.d.ts +10 -2
  728. package/lib/typescript/module/components/StatusBadge/StatusBadge.d.ts +8 -5
  729. package/lib/typescript/module/components/StatusBadge/statusMap.d.ts +8 -0
  730. package/lib/typescript/module/components/Stepper/Stepper.d.ts +15 -1
  731. package/lib/typescript/module/components/Stepper/index.d.ts +2 -2
  732. package/lib/typescript/module/components/Swipeable/Swipeable.d.ts +4 -2
  733. package/lib/typescript/module/components/Switch/Switch.d.ts +9 -11
  734. package/lib/typescript/module/components/Tabs/Tabs.d.ts +5 -3
  735. package/lib/typescript/module/components/TagInput/TagInput.d.ts +3 -4
  736. package/lib/typescript/module/components/Text/Text.d.ts +6 -5
  737. package/lib/typescript/module/components/TimePicker/TimePicker.d.ts +17 -4
  738. package/lib/typescript/module/components/TimePicker/index.d.ts +2 -2
  739. package/lib/typescript/module/components/Toast/Toast.d.ts +11 -5
  740. package/lib/typescript/module/components/Toast/ToastProvider.d.ts +15 -14
  741. package/lib/typescript/module/components/Toast/index.d.ts +2 -2
  742. package/lib/typescript/module/components/Tooltip/Tooltip.d.ts +8 -2
  743. package/lib/typescript/module/components/Tooltip/index.d.ts +2 -2
  744. package/lib/typescript/module/components/Tour/Tour.d.ts +7 -5
  745. package/lib/typescript/module/components/Tour/index.d.ts +1 -1
  746. package/lib/typescript/module/components/TypingIndicator/TypingIndicator.d.ts +7 -2
  747. package/lib/typescript/module/components/TypingIndicator/index.d.ts +2 -2
  748. package/lib/typescript/module/components/WheelPicker/WheelPicker.d.ts +13 -6
  749. package/lib/typescript/module/components/WheelPicker/index.d.ts +2 -2
  750. package/lib/typescript/module/components/index.d.ts +125 -119
  751. package/lib/typescript/module/form/HookFormField.d.ts +1 -1
  752. package/lib/typescript/module/form/index.d.ts +0 -8
  753. package/lib/typescript/module/index.d.ts +6 -5
  754. package/lib/typescript/module/navigation/DiscardGuard.d.ts +26 -0
  755. package/lib/typescript/module/navigation/NavigationScreen.d.ts +12 -0
  756. package/lib/typescript/module/navigation/index.d.ts +5 -0
  757. package/lib/typescript/module/theme/index.d.ts +1 -0
  758. package/lib/typescript/module/theme/makeStyles.d.ts +5 -0
  759. package/lib/typescript/module/theme/tokens.generated.d.ts +3 -1
  760. package/lib/typescript/module/theme/types.d.ts +15 -2
  761. package/lib/typescript/module/types/vocabulary.d.ts +10 -0
  762. package/lib/typescript/module/utils/placement.d.ts +2 -0
  763. package/lib/typescript/module/utils/warnInvalidValue.d.ts +1 -1
  764. package/package.json +30 -8
  765. package/lib/commonjs/components/Accordion/Accordion.meta.js +0 -1
  766. package/lib/commonjs/components/Accordion/AccordionGroup.meta.js +0 -1
  767. package/lib/commonjs/components/AmountSlider/AmountSlider.meta.js +0 -1
  768. package/lib/commonjs/components/AnimatePresence/AnimatePresence.meta.js +0 -1
  769. package/lib/commonjs/components/AppBar/AppBar.meta.js +0 -1
  770. package/lib/commonjs/components/AppIcon/AppIcon.meta.js +0 -1
  771. package/lib/commonjs/components/AsyncBlock/AsyncBlock.meta.js +0 -1
  772. package/lib/commonjs/components/AuthedImage/AuthedImage.meta.js +0 -1
  773. package/lib/commonjs/components/Autocomplete/Autocomplete.meta.js +0 -1
  774. package/lib/commonjs/components/Avatar/Avatar.meta.js +0 -1
  775. package/lib/commonjs/components/Avatar/AvatarGroup.meta.js +0 -1
  776. package/lib/commonjs/components/Badge/Badge.meta.js +0 -1
  777. package/lib/commonjs/components/Banner/Banner.meta.js +0 -1
  778. package/lib/commonjs/components/BarChart/BarChart.meta.js +0 -1
  779. package/lib/commonjs/components/BottomNavigation/BottomNavigation.meta.js +0 -1
  780. package/lib/commonjs/components/BottomSheet/BottomSheet.meta.js +0 -1
  781. package/lib/commonjs/components/BottomSheet/useSheetSwap.js +0 -1
  782. package/lib/commonjs/components/Box/Spacer.meta.js +0 -1
  783. package/lib/commonjs/components/Button/Button.meta.js +0 -1
  784. package/lib/commonjs/components/Calendar/Calendar.meta.js +0 -1
  785. package/lib/commonjs/components/Card/Card.meta.js +0 -1
  786. package/lib/commonjs/components/Carousel/Carousel.meta.js +0 -1
  787. package/lib/commonjs/components/Checkbox/Checkbox.meta.js +0 -1
  788. package/lib/commonjs/components/Chip/Chip.meta.js +0 -1
  789. package/lib/commonjs/components/ChoiceGroup/ChoiceGroup.meta.js +0 -1
  790. package/lib/commonjs/components/Composer/Composer.meta.js +0 -1
  791. package/lib/commonjs/components/Confetti/Confetti.meta.js +0 -1
  792. package/lib/commonjs/components/DatePicker/DatePicker.meta.js +0 -1
  793. package/lib/commonjs/components/DateRangePicker/DateRangePicker.meta.js +0 -1
  794. package/lib/commonjs/components/DateSeparator/DateSeparator.meta.js +0 -1
  795. package/lib/commonjs/components/DecimalInput/DecimalInput.meta.js +0 -1
  796. package/lib/commonjs/components/Descriptions/Descriptions.meta.js +0 -1
  797. package/lib/commonjs/components/Dialog/Dialog.meta.js +0 -1
  798. package/lib/commonjs/components/Divider/Divider.meta.js +0 -1
  799. package/lib/commonjs/components/Drawer/Drawer.meta.js +0 -1
  800. package/lib/commonjs/components/EmptyState/EmptyState.meta.js +0 -1
  801. package/lib/commonjs/components/FilePicker/FilePicker.meta.js +0 -1
  802. package/lib/commonjs/components/FileViewer/FileViewer.meta.js +0 -1
  803. package/lib/commonjs/components/FilterChipRow/FilterChipRow.meta.js +0 -1
  804. package/lib/commonjs/components/FloatingActionButton/FloatingActionButton.meta.js +0 -1
  805. package/lib/commonjs/components/FloatingActionButton/FloatingActionButtonGroup.meta.js +0 -1
  806. package/lib/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.meta.js +0 -1
  807. package/lib/commonjs/components/FormField/FormField.meta.js +0 -1
  808. package/lib/commonjs/components/IconBadge/IconBadge.meta.js +0 -1
  809. package/lib/commonjs/components/IconButton/IconButton.meta.js +0 -1
  810. package/lib/commonjs/components/ImageGallery/ImageGallery.meta.js +0 -1
  811. package/lib/commonjs/components/InlineSelect/InlineSelect.meta.js +0 -1
  812. package/lib/commonjs/components/Input/Input.meta.js +0 -1
  813. package/lib/commonjs/components/KeyboardToolbar/KeyboardToolbar.meta.js +0 -1
  814. package/lib/commonjs/components/ListItem/ListItem.meta.js +0 -1
  815. package/lib/commonjs/components/LoaderOverlay/LoaderOverlay.meta.js +0 -1
  816. package/lib/commonjs/components/Markdown/Markdown.meta.js +0 -1
  817. package/lib/commonjs/components/Menu/Menu.meta.js +0 -1
  818. package/lib/commonjs/components/MessageBubble/MessageBubble.meta.js +0 -1
  819. package/lib/commonjs/components/MessageList/MessageList.meta.js +0 -1
  820. package/lib/commonjs/components/Modal/Modal.meta.js +0 -1
  821. package/lib/commonjs/components/Notation/Notation.meta.js +0 -1
  822. package/lib/commonjs/components/NumberInput/NumberInput.meta.js +0 -1
  823. package/lib/commonjs/components/OTPInput/OTPInput.meta.js +0 -1
  824. package/lib/commonjs/components/OnboardingPager/OnboardingPager.meta.js +0 -1
  825. package/lib/commonjs/components/OptionSheet/OptionSheet.meta.js +0 -1
  826. package/lib/commonjs/components/PaymentResult/PaymentResult.js +0 -1
  827. package/lib/commonjs/components/PaymentResult/PaymentResult.meta.js +0 -1
  828. package/lib/commonjs/components/PaymentResult/index.js +0 -1
  829. package/lib/commonjs/components/PermissionPrompt/PermissionPrompt.meta.js +0 -1
  830. package/lib/commonjs/components/PhoneNumberInput/PhoneNumberInput.meta.js +0 -1
  831. package/lib/commonjs/components/PickerTrigger/PickerTrigger.meta.js +0 -1
  832. package/lib/commonjs/components/ProfileCompletion/ProfileCompletion.meta.js +0 -1
  833. package/lib/commonjs/components/ProfilePicker/ProfilePicker.meta.js +0 -1
  834. package/lib/commonjs/components/ProgressBar/ProgressBar.meta.js +0 -1
  835. package/lib/commonjs/components/ProgressRing/ProgressRing.meta.js +0 -1
  836. package/lib/commonjs/components/Radio/Radio.meta.js +0 -1
  837. package/lib/commonjs/components/Radio/RadioGroup.meta.js +0 -1
  838. package/lib/commonjs/components/Rating/Rating.meta.js +0 -1
  839. package/lib/commonjs/components/Repeater/Repeater.meta.js +0 -1
  840. package/lib/commonjs/components/RichTextEditor/RichTextEditor.meta.js +0 -1
  841. package/lib/commonjs/components/ScannerOverlay/ScannerOverlay.meta.js +0 -1
  842. package/lib/commonjs/components/Screen/Screen.meta.js +0 -1
  843. package/lib/commonjs/components/SearchBar/SearchBar.meta.js +0 -1
  844. package/lib/commonjs/components/SectionHeader/SectionHeader.meta.js +0 -1
  845. package/lib/commonjs/components/SegmentedControl/SegmentedControl.meta.js +0 -1
  846. package/lib/commonjs/components/Select/Select.meta.js +0 -1
  847. package/lib/commonjs/components/SignaturePad/SignaturePad.meta.js +0 -1
  848. package/lib/commonjs/components/Skeleton/Skeleton.meta.js +0 -1
  849. package/lib/commonjs/components/Skeleton/SkeletonCircle.meta.js +0 -1
  850. package/lib/commonjs/components/Skeleton/SkeletonContent.meta.js +0 -1
  851. package/lib/commonjs/components/Skeleton/SkeletonList.meta.js +0 -1
  852. package/lib/commonjs/components/Skeleton/SkeletonText.meta.js +0 -1
  853. package/lib/commonjs/components/SlideToConfirm/SlideToConfirm.meta.js +0 -1
  854. package/lib/commonjs/components/Slider/Slider.meta.js +0 -1
  855. package/lib/commonjs/components/SliderField/SliderField.meta.js +0 -1
  856. package/lib/commonjs/components/SortableList/SortableList.meta.js +0 -1
  857. package/lib/commonjs/components/Sparkline/Sparkline.meta.js +0 -1
  858. package/lib/commonjs/components/Spinner/Spinner.meta.js +0 -1
  859. package/lib/commonjs/components/SquircleView/SquircleView.meta.js +0 -1
  860. package/lib/commonjs/components/StatTile/StatTile.meta.js +0 -1
  861. package/lib/commonjs/components/StatusBadge/StatusBadge.meta.js +0 -1
  862. package/lib/commonjs/components/Stepper/Stepper.meta.js +0 -1
  863. package/lib/commonjs/components/Swipeable/Swipeable.meta.js +0 -1
  864. package/lib/commonjs/components/Switch/Switch.meta.js +0 -1
  865. package/lib/commonjs/components/Tabs/Tabs.meta.js +0 -1
  866. package/lib/commonjs/components/TagInput/TagInput.meta.js +0 -1
  867. package/lib/commonjs/components/Text/Text.meta.js +0 -1
  868. package/lib/commonjs/components/TimePicker/TimePicker.meta.js +0 -1
  869. package/lib/commonjs/components/Timeline/Timeline.meta.js +0 -1
  870. package/lib/commonjs/components/Toast/Toast.meta.js +0 -1
  871. package/lib/commonjs/components/Tooltip/Tooltip.meta.js +0 -1
  872. package/lib/commonjs/components/Tour/Tour.meta.js +0 -1
  873. package/lib/commonjs/components/TypingIndicator/TypingIndicator.meta.js +0 -1
  874. package/lib/commonjs/components/WheelPicker/WheelPickerColumns.meta.js +0 -1
  875. package/lib/commonjs/components/WheelPicker/WheelPickerDuration.meta.js +0 -1
  876. package/lib/commonjs/components/WheelPicker/WheelPickerList.meta.js +0 -1
  877. package/lib/commonjs/components/ZoomableImage/ZoomableImage.meta.js +0 -1
  878. package/lib/commonjs/form/FormContext.js +0 -1
  879. package/lib/commonjs/form/equal.js +0 -1
  880. package/lib/commonjs/form/rules.js +0 -1
  881. package/lib/commonjs/form/useField.js +0 -1
  882. package/lib/commonjs/form/useForm.js +0 -1
  883. package/lib/module/components/Accordion/Accordion.meta.js +0 -1
  884. package/lib/module/components/Accordion/AccordionGroup.meta.js +0 -1
  885. package/lib/module/components/AmountSlider/AmountSlider.meta.js +0 -1
  886. package/lib/module/components/AnimatePresence/AnimatePresence.meta.js +0 -1
  887. package/lib/module/components/AppBar/AppBar.meta.js +0 -1
  888. package/lib/module/components/AppIcon/AppIcon.meta.js +0 -1
  889. package/lib/module/components/AsyncBlock/AsyncBlock.meta.js +0 -1
  890. package/lib/module/components/AuthedImage/AuthedImage.meta.js +0 -1
  891. package/lib/module/components/Autocomplete/Autocomplete.meta.js +0 -1
  892. package/lib/module/components/Avatar/Avatar.meta.js +0 -1
  893. package/lib/module/components/Avatar/AvatarGroup.meta.js +0 -1
  894. package/lib/module/components/Badge/Badge.meta.js +0 -1
  895. package/lib/module/components/Banner/Banner.meta.js +0 -1
  896. package/lib/module/components/BarChart/BarChart.meta.js +0 -1
  897. package/lib/module/components/BottomNavigation/BottomNavigation.meta.js +0 -1
  898. package/lib/module/components/BottomSheet/BottomSheet.meta.js +0 -1
  899. package/lib/module/components/BottomSheet/useSheetSwap.js +0 -1
  900. package/lib/module/components/Box/Spacer.meta.js +0 -1
  901. package/lib/module/components/Button/Button.meta.js +0 -1
  902. package/lib/module/components/Calendar/Calendar.meta.js +0 -1
  903. package/lib/module/components/Card/Card.meta.js +0 -1
  904. package/lib/module/components/Carousel/Carousel.meta.js +0 -1
  905. package/lib/module/components/Checkbox/Checkbox.meta.js +0 -1
  906. package/lib/module/components/Chip/Chip.meta.js +0 -1
  907. package/lib/module/components/ChoiceGroup/ChoiceGroup.meta.js +0 -1
  908. package/lib/module/components/Composer/Composer.meta.js +0 -1
  909. package/lib/module/components/Confetti/Confetti.meta.js +0 -1
  910. package/lib/module/components/DatePicker/DatePicker.meta.js +0 -1
  911. package/lib/module/components/DateRangePicker/DateRangePicker.meta.js +0 -1
  912. package/lib/module/components/DateSeparator/DateSeparator.meta.js +0 -1
  913. package/lib/module/components/DecimalInput/DecimalInput.meta.js +0 -1
  914. package/lib/module/components/Descriptions/Descriptions.meta.js +0 -1
  915. package/lib/module/components/Dialog/Dialog.meta.js +0 -1
  916. package/lib/module/components/Divider/Divider.meta.js +0 -1
  917. package/lib/module/components/Drawer/Drawer.meta.js +0 -1
  918. package/lib/module/components/EmptyState/EmptyState.meta.js +0 -1
  919. package/lib/module/components/FilePicker/FilePicker.meta.js +0 -1
  920. package/lib/module/components/FileViewer/FileViewer.meta.js +0 -1
  921. package/lib/module/components/FilterChipRow/FilterChipRow.meta.js +0 -1
  922. package/lib/module/components/FloatingActionButton/FloatingActionButton.meta.js +0 -1
  923. package/lib/module/components/FloatingActionButton/FloatingActionButtonGroup.meta.js +0 -1
  924. package/lib/module/components/ForceUpdateDialog/ForceUpdateDialog.meta.js +0 -1
  925. package/lib/module/components/FormField/FormField.meta.js +0 -1
  926. package/lib/module/components/IconBadge/IconBadge.meta.js +0 -1
  927. package/lib/module/components/IconButton/IconButton.meta.js +0 -1
  928. package/lib/module/components/ImageGallery/ImageGallery.meta.js +0 -1
  929. package/lib/module/components/InlineSelect/InlineSelect.meta.js +0 -1
  930. package/lib/module/components/Input/Input.meta.js +0 -1
  931. package/lib/module/components/KeyboardToolbar/KeyboardToolbar.meta.js +0 -1
  932. package/lib/module/components/ListItem/ListItem.meta.js +0 -1
  933. package/lib/module/components/LoaderOverlay/LoaderOverlay.meta.js +0 -1
  934. package/lib/module/components/Markdown/Markdown.meta.js +0 -1
  935. package/lib/module/components/Menu/Menu.meta.js +0 -1
  936. package/lib/module/components/MessageBubble/MessageBubble.meta.js +0 -1
  937. package/lib/module/components/MessageList/MessageList.meta.js +0 -1
  938. package/lib/module/components/Modal/Modal.meta.js +0 -1
  939. package/lib/module/components/Notation/Notation.meta.js +0 -1
  940. package/lib/module/components/NumberInput/NumberInput.meta.js +0 -1
  941. package/lib/module/components/OTPInput/OTPInput.meta.js +0 -1
  942. package/lib/module/components/OnboardingPager/OnboardingPager.meta.js +0 -1
  943. package/lib/module/components/OptionSheet/OptionSheet.meta.js +0 -1
  944. package/lib/module/components/PaymentResult/PaymentResult.js +0 -1
  945. package/lib/module/components/PaymentResult/PaymentResult.meta.js +0 -1
  946. package/lib/module/components/PaymentResult/index.js +0 -1
  947. package/lib/module/components/PermissionPrompt/PermissionPrompt.meta.js +0 -1
  948. package/lib/module/components/PhoneNumberInput/PhoneNumberInput.meta.js +0 -1
  949. package/lib/module/components/PickerTrigger/PickerTrigger.meta.js +0 -1
  950. package/lib/module/components/ProfileCompletion/ProfileCompletion.meta.js +0 -1
  951. package/lib/module/components/ProfilePicker/ProfilePicker.meta.js +0 -1
  952. package/lib/module/components/ProgressBar/ProgressBar.meta.js +0 -1
  953. package/lib/module/components/ProgressRing/ProgressRing.meta.js +0 -1
  954. package/lib/module/components/Radio/Radio.meta.js +0 -1
  955. package/lib/module/components/Radio/RadioGroup.meta.js +0 -1
  956. package/lib/module/components/Rating/Rating.meta.js +0 -1
  957. package/lib/module/components/Repeater/Repeater.meta.js +0 -1
  958. package/lib/module/components/RichTextEditor/RichTextEditor.meta.js +0 -1
  959. package/lib/module/components/ScannerOverlay/ScannerOverlay.meta.js +0 -1
  960. package/lib/module/components/Screen/Screen.meta.js +0 -1
  961. package/lib/module/components/SearchBar/SearchBar.meta.js +0 -1
  962. package/lib/module/components/SectionHeader/SectionHeader.meta.js +0 -1
  963. package/lib/module/components/SegmentedControl/SegmentedControl.meta.js +0 -1
  964. package/lib/module/components/Select/Select.meta.js +0 -1
  965. package/lib/module/components/SignaturePad/SignaturePad.meta.js +0 -1
  966. package/lib/module/components/Skeleton/Skeleton.meta.js +0 -1
  967. package/lib/module/components/Skeleton/SkeletonCircle.meta.js +0 -1
  968. package/lib/module/components/Skeleton/SkeletonContent.meta.js +0 -1
  969. package/lib/module/components/Skeleton/SkeletonList.meta.js +0 -1
  970. package/lib/module/components/Skeleton/SkeletonText.meta.js +0 -1
  971. package/lib/module/components/SlideToConfirm/SlideToConfirm.meta.js +0 -1
  972. package/lib/module/components/Slider/Slider.meta.js +0 -1
  973. package/lib/module/components/SliderField/SliderField.meta.js +0 -1
  974. package/lib/module/components/SortableList/SortableList.meta.js +0 -1
  975. package/lib/module/components/Sparkline/Sparkline.meta.js +0 -1
  976. package/lib/module/components/Spinner/Spinner.meta.js +0 -1
  977. package/lib/module/components/SquircleView/SquircleView.meta.js +0 -1
  978. package/lib/module/components/StatTile/StatTile.meta.js +0 -1
  979. package/lib/module/components/StatusBadge/StatusBadge.meta.js +0 -1
  980. package/lib/module/components/Stepper/Stepper.meta.js +0 -1
  981. package/lib/module/components/Swipeable/Swipeable.meta.js +0 -1
  982. package/lib/module/components/Switch/Switch.meta.js +0 -1
  983. package/lib/module/components/Tabs/Tabs.meta.js +0 -1
  984. package/lib/module/components/TagInput/TagInput.meta.js +0 -1
  985. package/lib/module/components/Text/Text.meta.js +0 -1
  986. package/lib/module/components/TimePicker/TimePicker.meta.js +0 -1
  987. package/lib/module/components/Timeline/Timeline.meta.js +0 -1
  988. package/lib/module/components/Toast/Toast.meta.js +0 -1
  989. package/lib/module/components/Tooltip/Tooltip.meta.js +0 -1
  990. package/lib/module/components/Tour/Tour.meta.js +0 -1
  991. package/lib/module/components/TypingIndicator/TypingIndicator.meta.js +0 -1
  992. package/lib/module/components/WheelPicker/WheelPickerColumns.meta.js +0 -1
  993. package/lib/module/components/WheelPicker/WheelPickerDuration.meta.js +0 -1
  994. package/lib/module/components/WheelPicker/WheelPickerList.meta.js +0 -1
  995. package/lib/module/components/ZoomableImage/ZoomableImage.meta.js +0 -1
  996. package/lib/module/form/FormContext.js +0 -1
  997. package/lib/module/form/equal.js +0 -1
  998. package/lib/module/form/rules.js +0 -1
  999. package/lib/module/form/useField.js +0 -1
  1000. package/lib/module/form/useForm.js +0 -1
  1001. package/lib/typescript/commonjs/components/Accordion/Accordion.meta.d.ts +0 -3
  1002. package/lib/typescript/commonjs/components/Accordion/AccordionGroup.meta.d.ts +0 -3
  1003. package/lib/typescript/commonjs/components/AmountSlider/AmountSlider.meta.d.ts +0 -3
  1004. package/lib/typescript/commonjs/components/AnimatePresence/AnimatePresence.meta.d.ts +0 -3
  1005. package/lib/typescript/commonjs/components/AppBar/AppBar.meta.d.ts +0 -3
  1006. package/lib/typescript/commonjs/components/AppIcon/AppIcon.meta.d.ts +0 -3
  1007. package/lib/typescript/commonjs/components/AsyncBlock/AsyncBlock.meta.d.ts +0 -3
  1008. package/lib/typescript/commonjs/components/AuthedImage/AuthedImage.meta.d.ts +0 -5
  1009. package/lib/typescript/commonjs/components/Autocomplete/Autocomplete.meta.d.ts +0 -3
  1010. package/lib/typescript/commonjs/components/Avatar/Avatar.meta.d.ts +0 -3
  1011. package/lib/typescript/commonjs/components/Avatar/AvatarGroup.meta.d.ts +0 -3
  1012. package/lib/typescript/commonjs/components/Badge/Badge.meta.d.ts +0 -3
  1013. package/lib/typescript/commonjs/components/Banner/Banner.meta.d.ts +0 -3
  1014. package/lib/typescript/commonjs/components/BarChart/BarChart.meta.d.ts +0 -3
  1015. package/lib/typescript/commonjs/components/BottomNavigation/BottomNavigation.meta.d.ts +0 -3
  1016. package/lib/typescript/commonjs/components/BottomSheet/BottomSheet.meta.d.ts +0 -3
  1017. package/lib/typescript/commonjs/components/BottomSheet/useSheetSwap.d.ts +0 -24
  1018. package/lib/typescript/commonjs/components/Box/Spacer.meta.d.ts +0 -3
  1019. package/lib/typescript/commonjs/components/Button/Button.meta.d.ts +0 -3
  1020. package/lib/typescript/commonjs/components/Calendar/Calendar.meta.d.ts +0 -3
  1021. package/lib/typescript/commonjs/components/Card/Card.meta.d.ts +0 -3
  1022. package/lib/typescript/commonjs/components/Carousel/Carousel.meta.d.ts +0 -3
  1023. package/lib/typescript/commonjs/components/Checkbox/Checkbox.meta.d.ts +0 -3
  1024. package/lib/typescript/commonjs/components/Chip/Chip.meta.d.ts +0 -3
  1025. package/lib/typescript/commonjs/components/ChoiceGroup/ChoiceGroup.meta.d.ts +0 -3
  1026. package/lib/typescript/commonjs/components/Composer/Composer.meta.d.ts +0 -3
  1027. package/lib/typescript/commonjs/components/Confetti/Confetti.meta.d.ts +0 -3
  1028. package/lib/typescript/commonjs/components/DatePicker/DatePicker.meta.d.ts +0 -3
  1029. package/lib/typescript/commonjs/components/DateRangePicker/DateRangePicker.meta.d.ts +0 -3
  1030. package/lib/typescript/commonjs/components/DateSeparator/DateSeparator.meta.d.ts +0 -3
  1031. package/lib/typescript/commonjs/components/DecimalInput/DecimalInput.meta.d.ts +0 -3
  1032. package/lib/typescript/commonjs/components/Descriptions/Descriptions.meta.d.ts +0 -3
  1033. package/lib/typescript/commonjs/components/Dialog/Dialog.meta.d.ts +0 -3
  1034. package/lib/typescript/commonjs/components/Divider/Divider.meta.d.ts +0 -3
  1035. package/lib/typescript/commonjs/components/Drawer/Drawer.meta.d.ts +0 -3
  1036. package/lib/typescript/commonjs/components/EmptyState/EmptyState.meta.d.ts +0 -3
  1037. package/lib/typescript/commonjs/components/FilePicker/FilePicker.meta.d.ts +0 -3
  1038. package/lib/typescript/commonjs/components/FileViewer/FileViewer.meta.d.ts +0 -3
  1039. package/lib/typescript/commonjs/components/FilterChipRow/FilterChipRow.meta.d.ts +0 -3
  1040. package/lib/typescript/commonjs/components/FloatingActionButton/FloatingActionButton.meta.d.ts +0 -3
  1041. package/lib/typescript/commonjs/components/FloatingActionButton/FloatingActionButtonGroup.meta.d.ts +0 -3
  1042. package/lib/typescript/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.meta.d.ts +0 -3
  1043. package/lib/typescript/commonjs/components/FormField/FormField.meta.d.ts +0 -3
  1044. package/lib/typescript/commonjs/components/IconBadge/IconBadge.meta.d.ts +0 -3
  1045. package/lib/typescript/commonjs/components/IconButton/IconButton.meta.d.ts +0 -3
  1046. package/lib/typescript/commonjs/components/ImageGallery/ImageGallery.meta.d.ts +0 -3
  1047. package/lib/typescript/commonjs/components/InlineSelect/InlineSelect.meta.d.ts +0 -3
  1048. package/lib/typescript/commonjs/components/Input/Input.meta.d.ts +0 -3
  1049. package/lib/typescript/commonjs/components/KeyboardToolbar/KeyboardToolbar.meta.d.ts +0 -3
  1050. package/lib/typescript/commonjs/components/ListItem/ListItem.meta.d.ts +0 -3
  1051. package/lib/typescript/commonjs/components/LoaderOverlay/LoaderOverlay.meta.d.ts +0 -3
  1052. package/lib/typescript/commonjs/components/Markdown/Markdown.meta.d.ts +0 -3
  1053. package/lib/typescript/commonjs/components/Menu/Menu.meta.d.ts +0 -3
  1054. package/lib/typescript/commonjs/components/MessageBubble/MessageBubble.meta.d.ts +0 -3
  1055. package/lib/typescript/commonjs/components/MessageList/MessageList.meta.d.ts +0 -5
  1056. package/lib/typescript/commonjs/components/Modal/Modal.meta.d.ts +0 -3
  1057. package/lib/typescript/commonjs/components/Notation/Notation.meta.d.ts +0 -3
  1058. package/lib/typescript/commonjs/components/NumberInput/NumberInput.meta.d.ts +0 -3
  1059. package/lib/typescript/commonjs/components/OTPInput/OTPInput.meta.d.ts +0 -3
  1060. package/lib/typescript/commonjs/components/OnboardingPager/OnboardingPager.meta.d.ts +0 -3
  1061. package/lib/typescript/commonjs/components/OptionSheet/OptionSheet.meta.d.ts +0 -3
  1062. package/lib/typescript/commonjs/components/PaymentResult/PaymentResult.d.ts +0 -71
  1063. package/lib/typescript/commonjs/components/PaymentResult/PaymentResult.meta.d.ts +0 -3
  1064. package/lib/typescript/commonjs/components/PaymentResult/index.d.ts +0 -3
  1065. package/lib/typescript/commonjs/components/PermissionPrompt/PermissionPrompt.meta.d.ts +0 -3
  1066. package/lib/typescript/commonjs/components/PhoneNumberInput/PhoneNumberInput.meta.d.ts +0 -3
  1067. package/lib/typescript/commonjs/components/PickerTrigger/PickerTrigger.meta.d.ts +0 -3
  1068. package/lib/typescript/commonjs/components/ProfileCompletion/ProfileCompletion.meta.d.ts +0 -3
  1069. package/lib/typescript/commonjs/components/ProfilePicker/ProfilePicker.meta.d.ts +0 -3
  1070. package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.meta.d.ts +0 -3
  1071. package/lib/typescript/commonjs/components/ProgressRing/ProgressRing.meta.d.ts +0 -3
  1072. package/lib/typescript/commonjs/components/Radio/Radio.meta.d.ts +0 -3
  1073. package/lib/typescript/commonjs/components/Radio/RadioGroup.meta.d.ts +0 -3
  1074. package/lib/typescript/commonjs/components/Rating/Rating.meta.d.ts +0 -3
  1075. package/lib/typescript/commonjs/components/Repeater/Repeater.meta.d.ts +0 -3
  1076. package/lib/typescript/commonjs/components/RichTextEditor/RichTextEditor.meta.d.ts +0 -3
  1077. package/lib/typescript/commonjs/components/ScannerOverlay/ScannerOverlay.meta.d.ts +0 -3
  1078. package/lib/typescript/commonjs/components/Screen/Screen.meta.d.ts +0 -3
  1079. package/lib/typescript/commonjs/components/SearchBar/SearchBar.meta.d.ts +0 -3
  1080. package/lib/typescript/commonjs/components/SectionHeader/SectionHeader.meta.d.ts +0 -3
  1081. package/lib/typescript/commonjs/components/SegmentedControl/SegmentedControl.meta.d.ts +0 -3
  1082. package/lib/typescript/commonjs/components/Select/Select.meta.d.ts +0 -3
  1083. package/lib/typescript/commonjs/components/SignaturePad/SignaturePad.meta.d.ts +0 -3
  1084. package/lib/typescript/commonjs/components/Skeleton/Skeleton.meta.d.ts +0 -3
  1085. package/lib/typescript/commonjs/components/Skeleton/SkeletonCircle.meta.d.ts +0 -3
  1086. package/lib/typescript/commonjs/components/Skeleton/SkeletonContent.meta.d.ts +0 -3
  1087. package/lib/typescript/commonjs/components/Skeleton/SkeletonList.meta.d.ts +0 -3
  1088. package/lib/typescript/commonjs/components/Skeleton/SkeletonText.meta.d.ts +0 -3
  1089. package/lib/typescript/commonjs/components/SlideToConfirm/SlideToConfirm.meta.d.ts +0 -3
  1090. package/lib/typescript/commonjs/components/Slider/Slider.meta.d.ts +0 -3
  1091. package/lib/typescript/commonjs/components/SliderField/SliderField.meta.d.ts +0 -3
  1092. package/lib/typescript/commonjs/components/SortableList/SortableList.meta.d.ts +0 -3
  1093. package/lib/typescript/commonjs/components/Sparkline/Sparkline.meta.d.ts +0 -3
  1094. package/lib/typescript/commonjs/components/Spinner/Spinner.meta.d.ts +0 -3
  1095. package/lib/typescript/commonjs/components/SquircleView/SquircleView.meta.d.ts +0 -2
  1096. package/lib/typescript/commonjs/components/StatTile/StatTile.meta.d.ts +0 -3
  1097. package/lib/typescript/commonjs/components/StatusBadge/StatusBadge.meta.d.ts +0 -3
  1098. package/lib/typescript/commonjs/components/Stepper/Stepper.meta.d.ts +0 -3
  1099. package/lib/typescript/commonjs/components/Swipeable/Swipeable.meta.d.ts +0 -3
  1100. package/lib/typescript/commonjs/components/Switch/Switch.meta.d.ts +0 -3
  1101. package/lib/typescript/commonjs/components/Tabs/Tabs.meta.d.ts +0 -3
  1102. package/lib/typescript/commonjs/components/TagInput/TagInput.meta.d.ts +0 -3
  1103. package/lib/typescript/commonjs/components/Text/Text.meta.d.ts +0 -3
  1104. package/lib/typescript/commonjs/components/TimePicker/TimePicker.meta.d.ts +0 -3
  1105. package/lib/typescript/commonjs/components/Timeline/Timeline.meta.d.ts +0 -3
  1106. package/lib/typescript/commonjs/components/Toast/Toast.meta.d.ts +0 -3
  1107. package/lib/typescript/commonjs/components/Tooltip/Tooltip.meta.d.ts +0 -3
  1108. package/lib/typescript/commonjs/components/Tour/Tour.meta.d.ts +0 -3
  1109. package/lib/typescript/commonjs/components/TypingIndicator/TypingIndicator.meta.d.ts +0 -3
  1110. package/lib/typescript/commonjs/components/WheelPicker/WheelPickerColumns.meta.d.ts +0 -3
  1111. package/lib/typescript/commonjs/components/WheelPicker/WheelPickerDuration.meta.d.ts +0 -3
  1112. package/lib/typescript/commonjs/components/WheelPicker/WheelPickerList.meta.d.ts +0 -3
  1113. package/lib/typescript/commonjs/components/ZoomableImage/ZoomableImage.meta.d.ts +0 -3
  1114. package/lib/typescript/commonjs/form/FormContext.d.ts +0 -36
  1115. package/lib/typescript/commonjs/form/equal.d.ts +0 -9
  1116. package/lib/typescript/commonjs/form/rules.d.ts +0 -37
  1117. package/lib/typescript/commonjs/form/types.d.ts +0 -94
  1118. package/lib/typescript/commonjs/form/useField.d.ts +0 -33
  1119. package/lib/typescript/commonjs/form/useForm.d.ts +0 -14
  1120. package/lib/typescript/module/components/Accordion/Accordion.meta.d.ts +0 -3
  1121. package/lib/typescript/module/components/Accordion/AccordionGroup.meta.d.ts +0 -3
  1122. package/lib/typescript/module/components/AmountSlider/AmountSlider.meta.d.ts +0 -3
  1123. package/lib/typescript/module/components/AnimatePresence/AnimatePresence.meta.d.ts +0 -3
  1124. package/lib/typescript/module/components/AppBar/AppBar.meta.d.ts +0 -3
  1125. package/lib/typescript/module/components/AppIcon/AppIcon.meta.d.ts +0 -3
  1126. package/lib/typescript/module/components/AsyncBlock/AsyncBlock.meta.d.ts +0 -3
  1127. package/lib/typescript/module/components/AuthedImage/AuthedImage.meta.d.ts +0 -5
  1128. package/lib/typescript/module/components/Autocomplete/Autocomplete.meta.d.ts +0 -3
  1129. package/lib/typescript/module/components/Avatar/Avatar.meta.d.ts +0 -3
  1130. package/lib/typescript/module/components/Avatar/AvatarGroup.meta.d.ts +0 -3
  1131. package/lib/typescript/module/components/Badge/Badge.meta.d.ts +0 -3
  1132. package/lib/typescript/module/components/Banner/Banner.meta.d.ts +0 -3
  1133. package/lib/typescript/module/components/BarChart/BarChart.meta.d.ts +0 -3
  1134. package/lib/typescript/module/components/BottomNavigation/BottomNavigation.meta.d.ts +0 -3
  1135. package/lib/typescript/module/components/BottomSheet/BottomSheet.meta.d.ts +0 -3
  1136. package/lib/typescript/module/components/BottomSheet/useSheetSwap.d.ts +0 -24
  1137. package/lib/typescript/module/components/Box/Spacer.meta.d.ts +0 -3
  1138. package/lib/typescript/module/components/Button/Button.meta.d.ts +0 -3
  1139. package/lib/typescript/module/components/Calendar/Calendar.meta.d.ts +0 -3
  1140. package/lib/typescript/module/components/Card/Card.meta.d.ts +0 -3
  1141. package/lib/typescript/module/components/Carousel/Carousel.meta.d.ts +0 -3
  1142. package/lib/typescript/module/components/Checkbox/Checkbox.meta.d.ts +0 -3
  1143. package/lib/typescript/module/components/Chip/Chip.meta.d.ts +0 -3
  1144. package/lib/typescript/module/components/ChoiceGroup/ChoiceGroup.meta.d.ts +0 -3
  1145. package/lib/typescript/module/components/Composer/Composer.meta.d.ts +0 -3
  1146. package/lib/typescript/module/components/Confetti/Confetti.meta.d.ts +0 -3
  1147. package/lib/typescript/module/components/DatePicker/DatePicker.meta.d.ts +0 -3
  1148. package/lib/typescript/module/components/DateRangePicker/DateRangePicker.meta.d.ts +0 -3
  1149. package/lib/typescript/module/components/DateSeparator/DateSeparator.meta.d.ts +0 -3
  1150. package/lib/typescript/module/components/DecimalInput/DecimalInput.meta.d.ts +0 -3
  1151. package/lib/typescript/module/components/Descriptions/Descriptions.meta.d.ts +0 -3
  1152. package/lib/typescript/module/components/Dialog/Dialog.meta.d.ts +0 -3
  1153. package/lib/typescript/module/components/Divider/Divider.meta.d.ts +0 -3
  1154. package/lib/typescript/module/components/Drawer/Drawer.meta.d.ts +0 -3
  1155. package/lib/typescript/module/components/EmptyState/EmptyState.meta.d.ts +0 -3
  1156. package/lib/typescript/module/components/FilePicker/FilePicker.meta.d.ts +0 -3
  1157. package/lib/typescript/module/components/FileViewer/FileViewer.meta.d.ts +0 -3
  1158. package/lib/typescript/module/components/FilterChipRow/FilterChipRow.meta.d.ts +0 -3
  1159. package/lib/typescript/module/components/FloatingActionButton/FloatingActionButton.meta.d.ts +0 -3
  1160. package/lib/typescript/module/components/FloatingActionButton/FloatingActionButtonGroup.meta.d.ts +0 -3
  1161. package/lib/typescript/module/components/ForceUpdateDialog/ForceUpdateDialog.meta.d.ts +0 -3
  1162. package/lib/typescript/module/components/FormField/FormField.meta.d.ts +0 -3
  1163. package/lib/typescript/module/components/IconBadge/IconBadge.meta.d.ts +0 -3
  1164. package/lib/typescript/module/components/IconButton/IconButton.meta.d.ts +0 -3
  1165. package/lib/typescript/module/components/ImageGallery/ImageGallery.meta.d.ts +0 -3
  1166. package/lib/typescript/module/components/InlineSelect/InlineSelect.meta.d.ts +0 -3
  1167. package/lib/typescript/module/components/Input/Input.meta.d.ts +0 -3
  1168. package/lib/typescript/module/components/KeyboardToolbar/KeyboardToolbar.meta.d.ts +0 -3
  1169. package/lib/typescript/module/components/ListItem/ListItem.meta.d.ts +0 -3
  1170. package/lib/typescript/module/components/LoaderOverlay/LoaderOverlay.meta.d.ts +0 -3
  1171. package/lib/typescript/module/components/Markdown/Markdown.meta.d.ts +0 -3
  1172. package/lib/typescript/module/components/Menu/Menu.meta.d.ts +0 -3
  1173. package/lib/typescript/module/components/MessageBubble/MessageBubble.meta.d.ts +0 -3
  1174. package/lib/typescript/module/components/MessageList/MessageList.meta.d.ts +0 -5
  1175. package/lib/typescript/module/components/Modal/Modal.meta.d.ts +0 -3
  1176. package/lib/typescript/module/components/Notation/Notation.meta.d.ts +0 -3
  1177. package/lib/typescript/module/components/NumberInput/NumberInput.meta.d.ts +0 -3
  1178. package/lib/typescript/module/components/OTPInput/OTPInput.meta.d.ts +0 -3
  1179. package/lib/typescript/module/components/OnboardingPager/OnboardingPager.meta.d.ts +0 -3
  1180. package/lib/typescript/module/components/OptionSheet/OptionSheet.meta.d.ts +0 -3
  1181. package/lib/typescript/module/components/PaymentResult/PaymentResult.d.ts +0 -71
  1182. package/lib/typescript/module/components/PaymentResult/PaymentResult.meta.d.ts +0 -3
  1183. package/lib/typescript/module/components/PaymentResult/index.d.ts +0 -3
  1184. package/lib/typescript/module/components/PermissionPrompt/PermissionPrompt.meta.d.ts +0 -3
  1185. package/lib/typescript/module/components/PhoneNumberInput/PhoneNumberInput.meta.d.ts +0 -3
  1186. package/lib/typescript/module/components/PickerTrigger/PickerTrigger.meta.d.ts +0 -3
  1187. package/lib/typescript/module/components/ProfileCompletion/ProfileCompletion.meta.d.ts +0 -3
  1188. package/lib/typescript/module/components/ProfilePicker/ProfilePicker.meta.d.ts +0 -3
  1189. package/lib/typescript/module/components/ProgressBar/ProgressBar.meta.d.ts +0 -3
  1190. package/lib/typescript/module/components/ProgressRing/ProgressRing.meta.d.ts +0 -3
  1191. package/lib/typescript/module/components/Radio/Radio.meta.d.ts +0 -3
  1192. package/lib/typescript/module/components/Radio/RadioGroup.meta.d.ts +0 -3
  1193. package/lib/typescript/module/components/Rating/Rating.meta.d.ts +0 -3
  1194. package/lib/typescript/module/components/Repeater/Repeater.meta.d.ts +0 -3
  1195. package/lib/typescript/module/components/RichTextEditor/RichTextEditor.meta.d.ts +0 -3
  1196. package/lib/typescript/module/components/ScannerOverlay/ScannerOverlay.meta.d.ts +0 -3
  1197. package/lib/typescript/module/components/Screen/Screen.meta.d.ts +0 -3
  1198. package/lib/typescript/module/components/SearchBar/SearchBar.meta.d.ts +0 -3
  1199. package/lib/typescript/module/components/SectionHeader/SectionHeader.meta.d.ts +0 -3
  1200. package/lib/typescript/module/components/SegmentedControl/SegmentedControl.meta.d.ts +0 -3
  1201. package/lib/typescript/module/components/Select/Select.meta.d.ts +0 -3
  1202. package/lib/typescript/module/components/SignaturePad/SignaturePad.meta.d.ts +0 -3
  1203. package/lib/typescript/module/components/Skeleton/Skeleton.meta.d.ts +0 -3
  1204. package/lib/typescript/module/components/Skeleton/SkeletonCircle.meta.d.ts +0 -3
  1205. package/lib/typescript/module/components/Skeleton/SkeletonContent.meta.d.ts +0 -3
  1206. package/lib/typescript/module/components/Skeleton/SkeletonList.meta.d.ts +0 -3
  1207. package/lib/typescript/module/components/Skeleton/SkeletonText.meta.d.ts +0 -3
  1208. package/lib/typescript/module/components/SlideToConfirm/SlideToConfirm.meta.d.ts +0 -3
  1209. package/lib/typescript/module/components/Slider/Slider.meta.d.ts +0 -3
  1210. package/lib/typescript/module/components/SliderField/SliderField.meta.d.ts +0 -3
  1211. package/lib/typescript/module/components/SortableList/SortableList.meta.d.ts +0 -3
  1212. package/lib/typescript/module/components/Sparkline/Sparkline.meta.d.ts +0 -3
  1213. package/lib/typescript/module/components/Spinner/Spinner.meta.d.ts +0 -3
  1214. package/lib/typescript/module/components/SquircleView/SquircleView.meta.d.ts +0 -2
  1215. package/lib/typescript/module/components/StatTile/StatTile.meta.d.ts +0 -3
  1216. package/lib/typescript/module/components/StatusBadge/StatusBadge.meta.d.ts +0 -3
  1217. package/lib/typescript/module/components/Stepper/Stepper.meta.d.ts +0 -3
  1218. package/lib/typescript/module/components/Swipeable/Swipeable.meta.d.ts +0 -3
  1219. package/lib/typescript/module/components/Switch/Switch.meta.d.ts +0 -3
  1220. package/lib/typescript/module/components/Tabs/Tabs.meta.d.ts +0 -3
  1221. package/lib/typescript/module/components/TagInput/TagInput.meta.d.ts +0 -3
  1222. package/lib/typescript/module/components/Text/Text.meta.d.ts +0 -3
  1223. package/lib/typescript/module/components/TimePicker/TimePicker.meta.d.ts +0 -3
  1224. package/lib/typescript/module/components/Timeline/Timeline.meta.d.ts +0 -3
  1225. package/lib/typescript/module/components/Toast/Toast.meta.d.ts +0 -3
  1226. package/lib/typescript/module/components/Tooltip/Tooltip.meta.d.ts +0 -3
  1227. package/lib/typescript/module/components/Tour/Tour.meta.d.ts +0 -3
  1228. package/lib/typescript/module/components/TypingIndicator/TypingIndicator.meta.d.ts +0 -3
  1229. package/lib/typescript/module/components/WheelPicker/WheelPickerColumns.meta.d.ts +0 -3
  1230. package/lib/typescript/module/components/WheelPicker/WheelPickerDuration.meta.d.ts +0 -3
  1231. package/lib/typescript/module/components/WheelPicker/WheelPickerList.meta.d.ts +0 -3
  1232. package/lib/typescript/module/components/ZoomableImage/ZoomableImage.meta.d.ts +0 -3
  1233. package/lib/typescript/module/form/FormContext.d.ts +0 -36
  1234. package/lib/typescript/module/form/equal.d.ts +0 -9
  1235. package/lib/typescript/module/form/rules.d.ts +0 -37
  1236. package/lib/typescript/module/form/types.d.ts +0 -94
  1237. package/lib/typescript/module/form/useField.d.ts +0 -33
  1238. package/lib/typescript/module/form/useForm.d.ts +0 -14
  1239. /package/lib/commonjs/{form/types.js → types/vocabulary.js} +0 -0
  1240. /package/lib/module/{form/types.js → types/vocabulary.js} +0 -0
@@ -1 +1 @@
1
- "use strict";import React,{forwardRef,useMemo,useRef,useState}from"react";import{Animated,Easing,Pressable,StyleSheet,Text,View}from"react-native";import{useFlickGuard}from"../../hooks/useFlickGuard.js";import{usePressAnimation}from"../../hooks/usePressAnimation.js";import{fontFor,Gradient,resolveButtonSize,useTheme}from"../../theme/index.js";import{createAnimatedValue}from"../../theme/animatedValue.js";import{ariaFromState}from"../../utils/ariaState.js";import{ACCENT_PRESSED_TINT,tintOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{triggerHaptic}from"../../utils/hapticUtils.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{renderSlotIcon}from"../AppIcon/slotIcon.js";import{Spinner}from"../Spinner/index.js";import{SquircleFill,useSquircle}from"../SquircleFill/SquircleFill.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const Button=forwardRef((e,t)=>{const{title:o,children:r,variant:s="solid",tone:i="primary",size:n="md",loading:l=!1,disabled:a=!1,fullWidth:d=!1,leftIcon:c,rightIcon:u,iconVariant:b,leftIconBadge:g=!1,haptic:p,rounded:h=!1,gradient:m,style:f,containerStyle:x,textStyle:y,pressAnimation:S,onPress:C,accessibilityLabel:I,accessibilityHint:_,accessibilityState:k,testID:w,onLayout:j,...T}=e;if(__DEV__&&hasTextChild(r))throw new Error('[@webority/mobile-ui] Button was given its label as text children. Pass it as `title` (<Button title="Save" />): text children draw a blank button with no accessible name.');const F=useTheme(),v=!a&&!l,L={...k,disabled:!v,busy:l},R="link"===s,O=S??(!R&&"scale"),P=usePressAnimation({preset:O||"scale",enabled:!1!==O&&v}),A=useFlickGuard(),W=useMemo(()=>buildStyles(F),[F]),V=useMemo(()=>resolveButtonSize(F,n),[F,n]),E=useMemo(()=>toneFor(F,i),[F,i]),z=useMemo(()=>variantFor(F,s,E,a),[F,s,E,a]),B=useMemo(()=>!m||a||"solid"!==s?null:"string"==typeof m?F.settings.gradients[m]??null:m,[m,a,s,F.settings.gradients]),D=StyleSheet.flatten(f)?.borderRadius,H=R?0:"number"==typeof D?D:h?F.radius.pill:V.radius,N=useSquircle(!B&&"link"!==s,H,j),M=useRef(createAnimatedValue(0)).current,[q,G]=useState(0),[K,U]=useState(null),X=R?e=>G(e.nativeEvent.layout.width):void 0,Y=I??o,J="outline"===s||"ghost"===s,Q=!J&&!R,Z={color:z.textColor,size:V.icon,disabled:a},$=g&&!R&&Boolean(c),ee=F.space.xs,te=V["min-height"]-2*ee-2*z.borderWidth,oe={color:z.badgeInk,size:V["badge-icon"],disabled:a},re=l?_jsx(Spinner,{variant:"circular",size:"sm",color:$?z.badgeInk:z.textColor,accessibilityLabel:"Loading"}):c?renderSlotIcon(c,$?oe:Z,b):null,se=_jsxs(View,{style:W.contentRow,children:[$?_jsx(View,{testID:"button-icon-badge",style:[W.iconLeft,W.iconBadge,{width:te,height:te,borderRadius:te/2,backgroundColor:z.badgeFill}],children:re}):re?_jsx(View,{style:W.iconLeft,children:re}):null,o?_jsxs(View,{onLayout:X,children:[_jsx(Text,{style:[W.label,{color:z.textColor,fontSize:V.text,...fontFor(F,"semibold")},y],numberOfLines:1,children:o}),R?_jsx(Animated.View,{pointerEvents:"none",testID:"button-link-underline",style:[W.linkUnderline,{backgroundColor:z.textColor,transform:[{translateX:M.interpolate({inputRange:[0,1],outputRange:[-q/2,0]})},{scaleX:M.interpolate({inputRange:[0,1],outputRange:[0,1]})}]}]}):null]}):r,u?_jsx(View,{style:W.iconRight,children:renderSlotIcon(u,Z,b)}):null]}),ie=R?null===K?LINK_HIT_SLOP:Math.max(LINK_HIT_SLOP,touchSlopFor(K)):touchSlopFor(V["min-height"]),ne={top:ie,bottom:ie,left:R?LINK_HIT_SLOP:0,right:R?LINK_HIT_SLOP:0};return _jsx(Animated.View,{style:[P.style,d?W.fullWidth:null,x],children:_jsx(Pressable,{ref:t,onPress:e=>{v&&!A.isFlick(e)&&(P.press(),p&&triggerHaptic(p),C?.(e))},onPressIn:e=>{A.onPressIn(e),P.pressIn(),R&&v&&(M.stopAnimation(),M.setValue(0),Animated.timing(M,{toValue:1,duration:F.motion.duration.slower,easing:Easing.bezier(...F.motion.ease.decelerate),useNativeDriver:!0}).start())},onPressOut:()=>{P.pressOut()},disabled:!v,hitSlop:ne,...hitSlopMarker(ne),accessibilityRole:"button",accessibilityLabel:Y,accessibilityHint:_,accessibilityState:L,...ariaFromState(L),testID:w,onLayout:e=>{N.onLayout(e),R&&U(e.nativeEvent.layout.height)},style:({pressed:e})=>[W.base,{paddingHorizontal:R?0:V["padding-x"],paddingVertical:R?0:$?ee:V["padding-y"],paddingLeft:$?ee:void 0,minHeight:R?void 0:V["min-height"],borderRadius:H,...smoothCorners,backgroundColor:B||N.active?"transparent":z.backgroundColor,borderWidth:z.borderWidth,borderColor:N.active?"transparent":z.borderColor,opacity:l?.55:1,overflow:N.active||R?"visible":"hidden"},e&&J&&!N.active?{backgroundColor:F.colors["surface-pressed"]}:null,d?W.fullWidth:null,f],...T,"aria-disabled":!v,"aria-busy":l,children:({pressed:e})=>_jsxs(_Fragment,{children:[N.active&&N.size?_jsx(SquircleFill,{width:N.size.width,height:N.size.height,radius:H,fill:e&&J?F.colors["surface-pressed"]:z.backgroundColor,stroke:z.borderColor,strokeWidth:z.borderWidth,outset:z.borderWidth}):null,B?_jsx(Gradient,{gradient:B,style:[StyleSheet.absoluteFill,{borderRadius:H,...smoothCorners}]}):null,e&&Q?N.active&&N.size?_jsx(SquircleFill,{width:N.size.width,height:N.size.height,radius:H,fill:z.pressedTint,outset:z.borderWidth,testID:"button-pressed"}):_jsx(View,{pointerEvents:"none",style:[W.pressedOverlay,{borderRadius:H,backgroundColor:z.pressedTint,...smoothCorners}],testID:"button-pressed"}):null,se]})})})});Button.displayName="Button";const hasTextChild=e=>React.Children.toArray(e).some(e=>"string"==typeof e||"number"==typeof e),SOFT_FILL_OPACITY=.14,toneFor=(e,t)=>{switch(t){case"primary":return{base:e.colors.primary,outline:e.colors.primary,on:e.colors["on-primary"],fg:e.colors["primary-text"],soft:tintOf(e.colors.primary,.14,e.colors["primary-soft"])};case"secondary":return{base:e.colors.neutral,outline:e.colors.border,on:e.colors["on-neutral"],fg:e.colors["on-neutral"],soft:e.colors.neutral};case"success":return{base:e.colors.success,outline:e.colors.success,on:e.colors["on-success"],fg:e.colors["success-text"],soft:tintOf(e.colors.success,.14,e.colors["bg-subtle"])};case"warning":return{base:e.colors.warning,outline:e.colors.warning,on:e.colors["on-warning"],fg:e.colors["warning-text"],soft:tintOf(e.colors.warning,.14,e.colors["bg-subtle"])};case"danger":return{base:e.colors.danger,outline:e.colors.danger,on:e.colors["on-danger"],fg:e.colors["danger-text"],soft:tintOf(e.colors.danger,.14,e.colors["bg-subtle"])};default:return{base:e.colors["bg-muted"],outline:e.colors.border,on:e.colors["text-body"],fg:e.colors["text-body"],soft:e.colors["bg-subtle"]}}},BUTTON_BORDER_WIDTH=1,MIN_TOUCH_TARGET=44,LINK_HIT_SLOP=8,touchSlopFor=e=>Math.max(0,Math.ceil((44-e)/2)),variantFor=(e,t,o,r)=>{const s=r?e.colors["text-disabled"]:o.fg,i={badgeFill:e.colors["surface-disabled"],badgeInk:e.colors["text-disabled"]},n=r?i:{badgeFill:o.on,badgeInk:o.base},l=r?i:{badgeFill:o.base,badgeInk:o.on};switch(t){case"solid":return{backgroundColor:r?e.colors["surface-disabled"]:o.base,borderColor:"transparent",borderWidth:1,textColor:r?e.colors["text-disabled"]:o.on,pressedTint:e.colors["surface-pressed"],...n};case"soft":return{backgroundColor:r?e.colors["surface-disabled"]:o.soft,borderColor:"transparent",borderWidth:1,textColor:s,pressedTint:e.colors["surface-pressed"],...l};case"outline":return{backgroundColor:"transparent",borderColor:r?e.colors.border:o.outline,borderWidth:1,textColor:s,pressedTint:e.colors["surface-pressed"],...l};case"ghost":return{backgroundColor:"transparent",borderColor:"transparent",borderWidth:1,textColor:s,pressedTint:e.colors["surface-pressed"],...l};case"link":return{backgroundColor:"transparent",borderColor:"transparent",borderWidth:0,textColor:r?e.colors["text-disabled"]:e.colors.link,pressedTint:e.colors["surface-pressed"],...l};case"glass":return{backgroundColor:e.colors["glass-fill"],borderColor:e.colors["glass-border"],borderWidth:1,textColor:r?e.colors["text-disabled"]:e.colors["on-glass"],pressedTint:ACCENT_PRESSED_TINT,badgeFill:e.colors["glass-badge"],badgeInk:r?e.colors["text-disabled"]:o.base};default:return{backgroundColor:o.base,borderColor:"transparent",borderWidth:1,textColor:o.on,pressedTint:e.colors["surface-pressed"],...n}}};export function buttonLabelInk(e,t){return variantFor(t,e.variant??"solid",toneFor(t,e.tone??"primary"),e.disabled??!1).textColor}const buildStyles=e=>StyleSheet.create({pressedOverlay:{position:"absolute",top:0,right:0,bottom:0,left:0},base:{alignItems:"center",justifyContent:"center",flexDirection:"row",overflow:"hidden"},contentRow:{flexDirection:"row",alignItems:"center",justifyContent:"center"},label:{textAlign:"center",includeFontPadding:!1,textAlignVertical:"center"},linkUnderline:{height:1.5,marginTop:1},iconLeft:{marginRight:e.space.sm},iconBadge:{alignItems:"center",justifyContent:"center"},iconRight:{marginLeft:e.space.sm},fullWidth:{alignSelf:"stretch"}});export{Button};export default Button;
1
+ "use strict";import{forwardRef,useMemo,useRef,useState}from"react";import{Animated,Easing,Pressable,StyleSheet,View}from"react-native";import{useFlickGuard}from"../../hooks/useFlickGuard.js";import{usePressAnimation}from"../../hooks/usePressAnimation.js";import{Gradient,resolveButtonSize,useTheme}from"../../theme/index.js";import{createAnimatedValue}from"../../theme/animatedValue.js";import{ariaFromState}from"../../utils/ariaState.js";import{ACCENT_PRESSED_TINT,tintOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{triggerHaptic}from"../../utils/hapticUtils.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{renderSlotIcon}from"../AppIcon/slotIcon.js";import{Spinner}from"../Spinner/index.js";import{SquircleFill,useSquircle}from"../SquircleFill/SquircleFill.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";export const DEFAULT_BUTTON_LABELS=Object.freeze({loading:"Loading"});const Button=forwardRef((e,o)=>{const{label:t,variant:r,tone:s="primary",size:i,loading:n=!1,disabled:l=!1,fullWidth:a=!1,leftIcon:d,rightIcon:c,iconVariant:u,leftIconBadge:b=!1,haptic:g,rounded:p=!1,gradient:m,style:f,containerStyle:h,textStyle:x,pressAnimation:y,onPress:S,accessibilityLabel:C,accessibilityHint:I,accessibilityState:_,testID:T,onLayout:k,labels:v,...w}=e;warnInvalidValue("Button","variant",e.variant,["solid","soft","outline","ghost","link","glass"]),warnInvalidValue("Button","tone",e.tone,["primary","success","warning","danger","info","neutral"]),warnInvalidValue("Button","size",e.size,["xs","sm","md","lg","xl"]);const j=useTheme(),F=j.settings.components.button,L=r??F?.defaultVariant??"solid",O=i??F?.defaultSize??"md",R=useMemo(()=>({...DEFAULT_BUTTON_LABELS,...v}),[v]),A=!l&&!n,V={..._,disabled:!A,busy:n},B="link"===L,P=y??F?.defaultPressAnimation??(!B&&"scale"),z=usePressAnimation({preset:P||"scale",enabled:!1!==P&&A}),W=useFlickGuard(),E=useMemo(()=>buildStyles(j),[j]),D=useMemo(()=>resolveButtonSize(j,O),[j,O]),N=useMemo(()=>toneFor(j,s),[j,s]),H=useMemo(()=>variantFor(j,L,N,l),[j,L,N,l]),M=useMemo(()=>!m||l||"solid"!==L?null:"string"==typeof m?j.settings.gradients[m]??null:m,[m,l,L,j.settings.gradients]),U=StyleSheet.flatten(f)?.borderRadius,q=B?0:"number"==typeof U?U:p?j.radius.pill:D.radius,G=useSquircle(!M&&"link"!==L,q,k),K=useRef(createAnimatedValue(0)).current,[X,Y]=useState(0),[J,Q]=useState(null),Z=B?e=>Y(e.nativeEvent.layout.width):void 0,$=C??t,ee="outline"===L||"ghost"===L,oe=!ee&&!B,te={color:H.textColor,size:D.icon,disabled:l},re=b&&!B&&Boolean(d),se=j.space.xs,ie=D["min-height"]-2*se-2*H.borderWidth,ne={color:H.badgeInk,size:D["badge-icon"],disabled:l},le=n?_jsx(Spinner,{variant:"circular",size:"sm",color:re?H.badgeInk:H.textColor,accessibilityLabel:R.loading}):d?renderSlotIcon(d,re?ne:te,u):null,ae=_jsxs(View,{style:E.contentRow,children:[re?_jsx(View,{testID:"button-icon-badge",style:[E.iconLeft,E.iconBadge,{width:ie,height:ie,borderRadius:ie/2,backgroundColor:H.badgeFill}],children:le}):le?_jsx(View,{style:E.iconLeft,children:le}):null,_jsxs(View,{onLayout:Z,children:[_jsx(Text,{variant:"label",weight:"semibold",numberOfLines:1,style:[E.label,{color:H.textColor,fontSize:D.text,lineHeight:Math.round(D.text*j.leading.body)},x],children:t}),B?_jsx(Animated.View,{pointerEvents:"none",testID:"button-link-underline",style:[E.linkUnderline,{backgroundColor:H.textColor,transform:[{translateX:K.interpolate({inputRange:[0,1],outputRange:[-X/2,0]})},{scaleX:K.interpolate({inputRange:[0,1],outputRange:[0,1]})}]}]}):null]}),c?_jsx(View,{style:E.iconRight,children:renderSlotIcon(c,te,u)}):null]}),de=B?null===J?LINK_HIT_SLOP:Math.max(LINK_HIT_SLOP,touchSlopFor(J)):touchSlopFor(D["min-height"]),ce={top:de,bottom:de,left:B?LINK_HIT_SLOP:0,right:B?LINK_HIT_SLOP:0};return _jsx(Animated.View,{style:[z.style,a?E.fullWidth:null,h],children:_jsx(Pressable,{ref:o,onPress:e=>{A&&!W.isFlick(e)&&(z.press(),g&&triggerHaptic(g),S?.(e))},onPressIn:e=>{W.onPressIn(e),z.pressIn(),B&&A&&(K.stopAnimation(),K.setValue(0),Animated.timing(K,{toValue:1,duration:j.motion.duration.slower,easing:Easing.bezier(...j.motion.ease.decelerate),useNativeDriver:!0}).start())},onPressOut:()=>{z.pressOut()},disabled:!A,hitSlop:ce,...hitSlopMarker(ce),accessibilityRole:"button",accessibilityLabel:$,accessibilityHint:I,accessibilityState:V,...ariaFromState(V),testID:T,onLayout:e=>{G.onLayout(e),B&&Q(e.nativeEvent.layout.height)},style:({pressed:e})=>[E.base,{paddingHorizontal:B?0:D["padding-x"],paddingVertical:B?0:re?se:D["padding-y"],paddingLeft:re?se:void 0,minHeight:B?void 0:D["min-height"],borderRadius:q,...smoothCorners,backgroundColor:M||G.active?"transparent":H.backgroundColor,borderWidth:H.borderWidth,borderColor:G.active?"transparent":H.borderColor,opacity:n?.55:1,overflow:G.active||B?"visible":"hidden"},e&&ee&&!G.active?{backgroundColor:j.colors["surface-pressed"]}:null,a?E.fullWidth:null,f],...w,"aria-disabled":!A,"aria-busy":n,children:({pressed:e})=>_jsxs(_Fragment,{children:[G.active&&G.size?_jsx(SquircleFill,{width:G.size.width,height:G.size.height,radius:q,fill:e&&ee?j.colors["surface-pressed"]:H.backgroundColor,stroke:H.borderColor,strokeWidth:H.borderWidth,outset:H.borderWidth}):null,M?_jsx(Gradient,{gradient:M,style:[StyleSheet.absoluteFill,{borderRadius:q,...smoothCorners}]}):null,e&&oe?G.active&&G.size?_jsx(SquircleFill,{width:G.size.width,height:G.size.height,radius:q,fill:H.pressedTint,outset:H.borderWidth,testID:"button-pressed"}):_jsx(View,{pointerEvents:"none",style:[E.pressedOverlay,{borderRadius:q,backgroundColor:H.pressedTint,...smoothCorners}],testID:"button-pressed"}):null,ae]})})})});Button.displayName="Button";const SOFT_FILL_OPACITY=.14,toneFor=(e,o)=>{switch(o){case"primary":return{base:e.colors.primary,outline:e.colors.primary,on:e.colors["on-primary"],fg:e.colors["primary-text"],soft:tintOf(e.colors.primary,.14,e.colors["primary-soft"])};case"success":return{base:e.colors.success,outline:e.colors.success,on:e.colors["on-success"],fg:e.colors["success-text"],soft:tintOf(e.colors.success,.14,e.colors["bg-subtle"])};case"warning":return{base:e.colors.warning,outline:e.colors.warning,on:e.colors["on-warning"],fg:e.colors["warning-text"],soft:tintOf(e.colors.warning,.14,e.colors["bg-subtle"])};case"danger":return{base:e.colors.danger,outline:e.colors.danger,on:e.colors["on-danger"],fg:e.colors["danger-text"],soft:tintOf(e.colors.danger,.14,e.colors["bg-subtle"])};case"info":return{base:e.colors.info,outline:e.colors.info,on:e.colors["on-info"],fg:e.colors["info-text"],soft:tintOf(e.colors.info,.14,e.colors["bg-subtle"])};default:return{base:e.colors["bg-muted"],outline:e.colors.border,on:e.colors["text-body"],fg:e.colors["text-body"],soft:e.colors["bg-subtle"]}}},BUTTON_BORDER_WIDTH=1,MIN_TOUCH_TARGET=44,LINK_HIT_SLOP=8,touchSlopFor=e=>Math.max(0,Math.ceil((44-e)/2)),variantFor=(e,o,t,r)=>{const s=r?e.colors["text-disabled"]:t.fg,i={badgeFill:e.colors["surface-disabled"],badgeInk:e.colors["text-disabled"]},n=r?i:{badgeFill:t.on,badgeInk:t.base},l=r?i:{badgeFill:t.base,badgeInk:t.on};switch(o){case"solid":return{backgroundColor:r?e.colors["surface-disabled"]:t.base,borderColor:"transparent",borderWidth:1,textColor:r?e.colors["text-disabled"]:t.on,pressedTint:e.colors["surface-pressed"],...n};case"soft":return{backgroundColor:r?e.colors["surface-disabled"]:t.soft,borderColor:"transparent",borderWidth:1,textColor:s,pressedTint:e.colors["surface-pressed"],...l};case"outline":return{backgroundColor:"transparent",borderColor:r?e.colors.border:t.outline,borderWidth:1,textColor:s,pressedTint:e.colors["surface-pressed"],...l};case"ghost":return{backgroundColor:"transparent",borderColor:"transparent",borderWidth:1,textColor:s,pressedTint:e.colors["surface-pressed"],...l};case"link":return{backgroundColor:"transparent",borderColor:"transparent",borderWidth:0,textColor:r?e.colors["text-disabled"]:e.colors.link,pressedTint:e.colors["surface-pressed"],...l};case"glass":return{backgroundColor:e.colors["glass-fill"],borderColor:e.colors["glass-border"],borderWidth:1,textColor:r?e.colors["text-disabled"]:e.colors["on-glass"],pressedTint:ACCENT_PRESSED_TINT,badgeFill:e.colors["glass-badge"],badgeInk:r?e.colors["text-disabled"]:t.base};default:return{backgroundColor:t.base,borderColor:"transparent",borderWidth:1,textColor:t.on,pressedTint:e.colors["surface-pressed"],...n}}};export function buttonLabelInk(e,o){return variantFor(o,e.variant??"solid",toneFor(o,e.tone??"primary"),e.disabled??!1).textColor}const buildStyles=e=>StyleSheet.create({pressedOverlay:{position:"absolute",top:0,right:0,bottom:0,left:0},base:{alignItems:"center",justifyContent:"center",flexDirection:"row",overflow:"hidden"},contentRow:{flexDirection:"row",alignItems:"center",justifyContent:"center"},label:{textAlign:"center",includeFontPadding:!1,textAlignVertical:"center"},linkUnderline:{height:1.5,marginTop:1},iconLeft:{marginRight:e.space.sm},iconBadge:{alignItems:"center",justifyContent:"center"},iconRight:{marginLeft:e.space.sm},fullWidth:{alignSelf:"stretch"}});export{Button};export default Button;
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useCallback,useEffect,useLayoutEffect,useMemo,useRef}from"react";import{AccessibilityInfo,Animated,Easing,Pressable,Text,View}from"react-native";import{useControllableState,usePresenceMotion}from"../../hooks/index.js";import{createAnimatedValue,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{CalendarDay}from"./CalendarDay.js";import{addMonths,buildMonthMatrix,GRID_CELLS,startOfDay,startOfMonth,toIso,weekdayLabels}from"./calendarDates.js";import{buildCalendarStyles,MIN_CELL_SIZE,NAV_BUTTON_SIZE}from"./calendarStyles.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const DEFAULT_TONE={holiday:"danger",event:"primary",pending:"warning"},MAX_DOTS=3,DAY_TEXT_MAX_SCALE=1.5,toneColor=(e,t)=>{switch(t){case"success":return e.colors.success;case"warning":return e.colors.warning;case"danger":return e.colors.danger;case"info":return e.colors.info;case"primary":return e.colors.primary;default:return e.colors["text-muted"]}},toneInk=(e,t)=>"neutral"===t?e.colors["text-muted"]:e.colors[`${t}-text`],Calendar=forwardRef((e,t)=>{const{mode:a="single",value:s,onChange:i,month:n,onMonthChange:r,minDate:l,maxDate:o,disabledDates:d,weekStartsOn:u=0,locale:c="en-IN",markedDates:m,strikeMarkedInRange:h=!1,cellSize:y,haptic:g,accessibilityLabel:p,style:f,headerLabelStyle:b,navButtonStyle:x,testID:M}=e,k=useTheme(),w=usePresenceMotion(),D=useMemo(()=>buildCalendarStyles(k),[k]),[S,T]=useControllableState({value:n?startOfMonth(n):void 0,defaultValue:startOfMonth(s?.start??new Date),onChange:r}),_=12*S.getFullYear()+S.getMonth(),v=s?.start?startOfDay(s.start):null,C="range"===a&&s?.end?startOfDay(s.end):null,I=v?.getTime()??null,L=C?.getTime()??null,E=toIso(new Date),j=l?startOfDay(l).getTime():null,A=o?startOfDay(o).getTime():null,V=useMemo(()=>new Set((d??[]).map(e=>toIso(e))),[d]),N=useCallback(e=>null!==j&&e.getTime()<j||null!==A&&e.getTime()>A||V.has(toIso(e)),[j,A,V]),R=useMemo(()=>{const e=new Map;for(const t of m??[]){const a=toIso(t.date);let s=e.get(a);s||(s={dots:[],holiday:!1,spoken:[]},e.set(a,s));const i=t.tone??DEFAULT_TONE[t.kind],n=toneColor(k,i);s.dots.length<3&&s.dots.push({key:`${t.kind}-${s.dots.length}`,color:n}),"holiday"===t.kind&&(s.holiday=!0,s.holidayInk??=toneInk(k,i)),t.label&&s.spoken.push(t.label),s.spoken.push(t.kind)}return e},[m,k]),O=useMemo(()=>buildMonthMatrix(new Date(Math.floor(_/12),_%12,1),u),[_,u]),F=useMemo(()=>weekdayLabels(c,u),[c,u]),P=useMemo(()=>new Intl.DateTimeFormat(c,{month:"long",year:"numeric"}),[c]),B=useMemo(()=>new Intl.DateTimeFormat(c,{weekday:"short",day:"numeric",month:"long"}),[c]),z=P.format(S),H=null===j||startOfMonth(new Date(j)).getTime()<S.getTime(),Z=null===A||startOfMonth(new Date(A)).getTime()>S.getTime(),X=useRef(createAnimatedValue(0)).current,$=useRef(createAnimatedValue(1)).current,U=useRef(null);useEffect(()=>()=>U.current?.stop(),[]);const q=useCallback(e=>{!1!==g&&triggerHaptic("impactLight");const t=k.motion.duration.fast,a=k.motion.duration.fast,[s]=w.range(32*-e,0),[i]=w.range(32*e,0),n=w.reduced?w.duration("fast"):t,r=w.reduced?w.duration("fast"):a;U.current?.stop(),U.current=Animated.sequence([Animated.parallel([Animated.timing(X,{toValue:s,duration:t,easing:Easing.out(Easing.quad),useNativeDriver:!0}),Animated.timing($,{toValue:0,duration:n,useNativeDriver:!0})]),Animated.timing(X,{toValue:i,duration:0,useNativeDriver:!0}),Animated.parallel([Animated.timing(X,{toValue:0,duration:a,easing:Easing.out(Easing.cubic),useNativeDriver:!0}),Animated.timing($,{toValue:1,duration:r,useNativeDriver:!0})])]),U.current.start();const l=addMonths(S,e);T(l),AccessibilityInfo.announceForAccessibility(P.format(l))},[g,S,$,P,X,w,T,k]),G=useCallback(()=>q(-1),[q]),Y=useCallback(()=>q(1),[q]),pressDay=e=>{if(N(e.date))return;const t=resolveHaptic(g,"selection");t&&triggerHaptic(t);const s=e.date;"single"===a||!v||C||s.getTime()<v.getTime()?i({start:s}):i({start:v,end:s}),e.inMonth||T(startOfMonth(s))},W=useRef(pressDay);useLayoutEffect(()=>{W.current=pressDay});const J=useCallback(e=>W.current(e),[]),K=void 0===y?void 0:Math.max(y,MIN_CELL_SIZE),Q=useMemo(()=>void 0===K?{flex:1}:{width:K},[K]),ee=useMemo(()=>void 0===K?{flex:1,aspectRatio:1,minHeight:MIN_CELL_SIZE}:{width:K,height:K},[K]),te=Math.max(k.space.sm,(MIN_CELL_SIZE-NAV_BUTTON_SIZE)/2),ae=Math.min(k.settings.maxFontSizeMultiplier??1.5,1.5),se=[];for(let e=0;e<GRID_CELLS;e+=7)se.push(O.slice(e,e+7));return _jsxs(View,{ref:t,style:[D.root,f],testID:M,children:[_jsxs(View,{style:D.headerRow,children:[_jsx(Pressable,{onPress:G,disabled:!H,style:({pressed:e})=>[D.navBtn,e&&D.navBtnPressed,!H&&D.navBtnDisabled,x],accessibilityRole:"button",accessibilityLabel:"Previous month",accessibilityState:{disabled:!H},"aria-disabled":!H,hitSlop:te,...hitSlopMarker(te),children:_jsx(Text,{style:D.navText,maxFontSizeMultiplier:ae,children:"‹"})}),_jsx(Animated.View,{style:[D.headerLabelWrap,{opacity:$,transform:[{translateX:X}]},b],children:_jsx(Text,{style:D.headerLabel,accessibilityRole:"header",accessibilityLabel:p?`${p}, ${z}`:void 0,maxFontSizeMultiplier:k.settings.maxFontSizeMultiplier,children:z})}),_jsx(Pressable,{onPress:Y,disabled:!Z,style:({pressed:e})=>[D.navBtn,e&&D.navBtnPressed,!Z&&D.navBtnDisabled,x],accessibilityRole:"button",accessibilityLabel:"Next month",accessibilityState:{disabled:!Z},"aria-disabled":!Z,hitSlop:te,...hitSlopMarker(te),children:_jsx(Text,{style:D.navText,maxFontSizeMultiplier:ae,children:"›"})})]}),_jsx(View,{style:D.weekdayRow,accessibilityElementsHidden:!0,importantForAccessibility:"no-hide-descendants",children:F.map(({weekday:e,label:t})=>_jsx(View,{style:[D.weekdayCell,Q],children:_jsx(Text,{style:D.weekdayText,maxFontSizeMultiplier:ae,children:t})},e))}),_jsx(Animated.View,{style:{opacity:$,transform:[{translateX:X}]},children:se.map(e=>_jsx(View,{style:D.gridRow,children:e.map(e=>{const t=e.date.getTime(),s=null!==I&&t===I,i=null!==L&&t===L,n=null!==I&&null!==L&&t>=I&&t<=L,r=n&&!s&&!i,l=e.iso===E,o=R.get(e.iso),d=h&&n&&!0===o?.holiday,u=[B.format(e.date),...o?.spoken??[]];return l&&u.push("today"),"range"===a&&(s&&i?u.push("start and end of your range"):s?u.push("start of your range"):i?u.push("end of your range"):r&&u.push("in your range")),d&&u.push("not counted"),_jsx(CalendarDay,{cell:e,accessibilityLabel:u.join(", "),disabled:N(e.date),edge:s||i,mid:r,barLeft:n&&(i||r)&&!(s&&i),barRight:n&&(s||r)&&!(s&&i),today:l,struck:d,dots:o?.dots,inkColor:o?.holidayInk,cellStyle:ee,styles:D,maxFontSizeMultiplier:ae,onPressDay:J},e.iso)})},e[0].iso))})]})});Calendar.displayName="Calendar";export{Calendar};export default Calendar;
1
+ "use strict";import{forwardRef,useCallback,useEffect,useLayoutEffect,useMemo,useRef}from"react";import{AccessibilityInfo,Animated,Easing,Pressable,View}from"react-native";import{useControllableState,usePresenceMotion}from"../../hooks/index.js";import{createAnimatedValue,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{Text}from"../Text/index.js";import{CalendarDay}from"./CalendarDay.js";import{addMonths,buildMonthMatrix,GRID_CELLS,startOfDay,startOfMonth,toIso,weekdayLabels}from"./calendarDates.js";import{buildCalendarStyles,MIN_CELL_SIZE,NAV_BUTTON_SIZE}from"./calendarStyles.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const DEFAULT_CALENDAR_LABELS=Object.freeze({previousMonth:"Previous month",nextMonth:"Next month",marked:"Marked"});const MAX_DOTS=3,DAY_TEXT_MAX_SCALE=1.5,toneColor=(e,t)=>{switch(t){case"success":return e.colors.success;case"warning":return e.colors.warning;case"danger":return e.colors.danger;case"info":return e.colors.info;case"primary":return e.colors.primary;default:return e.colors["text-muted"]}},Calendar=forwardRef((e,t)=>{const{selectionMode:a="single",value:s,onChange:i,month:n,onMonthChange:r,minDate:l,maxDate:o,disabledDates:d,weekStartsOn:u=0,locale:c="en-IN",marks:m,cellSize:h,haptic:y,accessibilityLabel:f,onTitlePress:p,labels:g,style:b,headerLabelStyle:M,navButtonStyle:x,testID:v}=e;warnInvalidValue("Calendar","selectionMode",e.selectionMode,["single","range"]);const _=useMemo(()=>({...DEFAULT_CALENDAR_LABELS,...g}),[g]),w=_.marked,S=useTheme(),D=usePresenceMotion(),L=useMemo(()=>buildCalendarStyles(S),[S]),[T,C]=useControllableState({value:n?startOfMonth(n):void 0,defaultValue:startOfMonth(s?.start??new Date),onChange:r}),A=12*T.getFullYear()+T.getMonth(),j=s?.start?startOfDay(s.start):null,E="range"===a&&s?.end?startOfDay(s.end):null,k=j?.getTime()??null,I=E?.getTime()??null,V=toIso(new Date),R=l?startOfDay(l).getTime():null,N=o?startOfDay(o).getTime():null,O=useMemo(()=>new Set((d??[]).map(e=>toIso(e))),[d]),P=useCallback(e=>null!==R&&e.getTime()<R||null!==N&&e.getTime()>N||O.has(toIso(e)),[R,N,O]),F=useMemo(()=>{const e=new Map;for(const t of m??[]){const a=t.date;let s=e.get(a);s||(s={dots:[],spoken:[]},e.set(a,s)),s.dots.length<3&&s.dots.push({key:`${t.tone}-${s.dots.length}`,color:toneColor(S,t.tone)}),s.spoken.push(t.label??w)}return e},[m,S,w]),B=useMemo(()=>buildMonthMatrix(new Date(Math.floor(A/12),A%12,1),u),[A,u]),z=useMemo(()=>weekdayLabels(c,u),[c,u]),H=useMemo(()=>new Intl.DateTimeFormat(c,{month:"long",year:"numeric"}),[c]),Z=useMemo(()=>new Intl.DateTimeFormat(c,{weekday:"short",day:"numeric",month:"long"}),[c]),$=H.format(T),X=null===R||startOfMonth(new Date(R)).getTime()<T.getTime(),U=null===N||startOfMonth(new Date(N)).getTime()>T.getTime(),q=useRef(createAnimatedValue(0)).current,G=useRef(createAnimatedValue(1)).current,Y=useRef(null);useEffect(()=>()=>Y.current?.stop(),[]);const W=useCallback(e=>{!1!==y&&triggerHaptic("impactLight");const t=S.motion.duration.fast,a=S.motion.duration.fast,[s]=D.range(32*-e,0),[i]=D.range(32*e,0),n=D.reduced?D.duration("fast"):t,r=D.reduced?D.duration("fast"):a;Y.current?.stop(),Y.current=Animated.sequence([Animated.parallel([Animated.timing(q,{toValue:s,duration:t,easing:Easing.out(Easing.quad),useNativeDriver:!0}),Animated.timing(G,{toValue:0,duration:n,useNativeDriver:!0})]),Animated.timing(q,{toValue:i,duration:0,useNativeDriver:!0}),Animated.parallel([Animated.timing(q,{toValue:0,duration:a,easing:Easing.out(Easing.cubic),useNativeDriver:!0}),Animated.timing(G,{toValue:1,duration:r,useNativeDriver:!0})])]),Y.current.start();const l=addMonths(T,e);C(l),AccessibilityInfo.announceForAccessibility(H.format(l))},[y,T,G,H,q,D,C,S]),J=useCallback(()=>W(-1),[W]),K=useCallback(()=>W(1),[W]),pressDay=e=>{if(P(e.date))return;const t=resolveHaptic(y,"selection");t&&triggerHaptic(t);const s=e.date;"single"===a||!j||E||s.getTime()<j.getTime()?i({start:s}):i({start:j,end:s}),e.inMonth||C(startOfMonth(s))},Q=useRef(pressDay);useLayoutEffect(()=>{Q.current=pressDay});const ee=useCallback(e=>Q.current(e),[]),te=void 0===h?void 0:Math.max(h,MIN_CELL_SIZE),ae=useMemo(()=>void 0===te?{flex:1}:{width:te},[te]),se=useMemo(()=>void 0===te?{flex:1,aspectRatio:1,minHeight:MIN_CELL_SIZE}:{width:te,height:te},[te]),ie=Math.max(S.space.sm,(MIN_CELL_SIZE-NAV_BUTTON_SIZE)/2),ne=Math.min(S.settings.maxFontSizeMultiplier??1.5,1.5),re=[];for(let e=0;e<GRID_CELLS;e+=7)re.push(B.slice(e,e+7));const le=_jsx(Text,{variant:"title",accessibilityRole:"header",accessibilityLabel:f?`${f}, ${$}`:void 0,style:L.headerLabel,children:$});return _jsxs(View,{ref:t,style:[L.root,b],testID:v,children:[_jsxs(View,{style:L.headerRow,children:[_jsx(Pressable,{onPress:J,disabled:!X,style:({pressed:e})=>[L.navBtn,e&&L.navBtnPressed,!X&&L.navBtnDisabled,x],accessibilityRole:"button",accessibilityLabel:_.previousMonth,accessibilityState:{disabled:!X},"aria-disabled":!X,hitSlop:ie,...hitSlopMarker(ie),children:_jsx(Text,{variant:"title",style:L.navText,maxFontSizeMultiplier:ne,children:"‹"})}),_jsx(Animated.View,{style:[L.headerLabelWrap,{opacity:G,transform:[{translateX:q}]},M],children:p?_jsx(Pressable,{onPress:p,accessibilityRole:"button",accessibilityLabel:f?`${f}, ${$}`:$,hitSlop:ie,...hitSlopMarker(ie),children:le}):le}),_jsx(Pressable,{onPress:K,disabled:!U,style:({pressed:e})=>[L.navBtn,e&&L.navBtnPressed,!U&&L.navBtnDisabled,x],accessibilityRole:"button",accessibilityLabel:_.nextMonth,accessibilityState:{disabled:!U},"aria-disabled":!U,hitSlop:ie,...hitSlopMarker(ie),children:_jsx(Text,{variant:"title",style:L.navText,maxFontSizeMultiplier:ne,children:"›"})})]}),_jsx(View,{style:L.weekdayRow,accessibilityElementsHidden:!0,importantForAccessibility:"no-hide-descendants",children:z.map(({weekday:e,label:t})=>_jsx(View,{style:[L.weekdayCell,ae],children:_jsx(Text,{variant:"caption",style:L.weekdayText,maxFontSizeMultiplier:ne,children:t})},e))}),_jsx(Animated.View,{style:{opacity:G,transform:[{translateX:q}]},children:re.map(e=>_jsx(View,{style:L.gridRow,children:e.map(e=>{const t=e.date.getTime(),s=null!==k&&t===k,i=null!==I&&t===I,n=null!==k&&null!==I&&t>=k&&t<=I,r=n&&!s&&!i,l=e.iso===V,o=F.get(e.iso),d=[Z.format(e.date),...o?.spoken??[]];return l&&d.push("today"),"range"===a&&(s&&i?d.push("start and end of your range"):s?d.push("start of your range"):i?d.push("end of your range"):r&&d.push("in your range")),_jsx(CalendarDay,{cell:e,accessibilityLabel:d.join(", "),disabled:P(e.date),edge:s||i,mid:r,barLeft:n&&(i||r)&&!(s&&i),barRight:n&&(s||r)&&!(s&&i),today:l,dots:o?.dots,cellStyle:se,styles:L,maxFontSizeMultiplier:ne,onPressDay:ee},e.iso)})},e[0].iso))})]})});Calendar.displayName="Calendar";export{Calendar};export default Calendar;
@@ -1 +1 @@
1
- "use strict";import{memo}from"react";import{Pressable,Text,View}from"react-native";import{useTheme}from"../../theme/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const DISABLED_OPACITY=.3,OUTSIDE_MONTH_OPACITY=.4,TODAY_RING_WIDTH=1.5,CalendarDayBase=({cell:e,accessibilityLabel:t,disabled:l,edge:s,mid:i,barLeft:r,barRight:a,today:n,struck:o,dots:d,inkColor:c,cellStyle:y,styles:b,maxFontSizeMultiplier:m,onPressDay:x})=>{const u=useTheme(),{colors:p}=u,_=s?p["on-primary"]:e.inMonth?l?p["text-disabled"]:c??p["text-body"]:p["text-subtle"],h=n&&!s;return _jsxs(Pressable,{disabled:l,onPress:()=>x(e),accessibilityRole:"button",accessibilityLabel:t,accessibilityState:{selected:s,disabled:l},"aria-selected":s,"aria-disabled":l,style:[b.dayCell,y],children:[r?_jsx(View,{pointerEvents:"none",style:[b.barLeft,b.rangeFill]}):null,a?_jsx(View,{pointerEvents:"none",style:[b.barRight,b.rangeFill]}):null,_jsxs(View,{style:[b.dayInner,s?b.dayEdge:i?b.rangeFill:null,i?b.dayMid:null,h?{borderColor:p.primary,borderWidth:1.5}:null,{opacity:l?.3:e.inMonth?1:.4}],children:[_jsx(Text,{style:[b.dayText,{color:_},o?b.dayStruck:null],maxFontSizeMultiplier:m,children:e.date.getDate()}),d&&d.length>0?_jsx(View,{pointerEvents:"none",style:b.dots,children:d.map(e=>_jsx(View,{style:[b.dot,{backgroundColor:s?p["on-primary"]:e.color}]},e.key))}):null]})]})};export const CalendarDay=memo(CalendarDayBase);
1
+ "use strict";import{memo}from"react";import{Pressable,View}from"react-native";import{useTheme}from"../../theme/index.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const DISABLED_OPACITY=.3,OUTSIDE_MONTH_OPACITY=.4,TODAY_RING_WIDTH=1.5,CalendarDayBase=({cell:e,accessibilityLabel:t,disabled:l,edge:s,mid:i,barLeft:a,barRight:r,today:n,dots:o,cellStyle:d,styles:y,maxFontSizeMultiplier:c,onPressDay:m})=>{const b=useTheme(),{colors:x}=b,p=s?x["on-primary"]:e.inMonth?l?x["text-disabled"]:x["text-body"]:x["text-subtle"],u=n&&!s;return _jsxs(Pressable,{disabled:l,onPress:()=>m(e),accessibilityRole:"button",accessibilityLabel:t,accessibilityState:{selected:s,disabled:l},"aria-selected":s,"aria-disabled":l,style:[y.dayCell,d],children:[a?_jsx(View,{pointerEvents:"none",style:[y.barLeft,y.rangeFill]}):null,r?_jsx(View,{pointerEvents:"none",style:[y.barRight,y.rangeFill]}):null,_jsxs(View,{style:[y.dayInner,s?y.dayEdge:i?y.rangeFill:null,i?y.dayMid:null,u?{borderColor:x.primary,borderWidth:1.5}:null,{opacity:l?.3:e.inMonth?1:.4}],children:[_jsx(Text,{variant:"bodySmall",style:[y.dayText,{color:p}],maxFontSizeMultiplier:c,children:e.date.getDate()}),o&&o.length>0?_jsx(View,{pointerEvents:"none",style:y.dots,children:o.map(e=>_jsx(View,{style:[y.dot,{backgroundColor:s?x["on-primary"]:e.color}]},e.key))}):null]})]})};export const CalendarDay=memo(CalendarDayBase);
@@ -1 +1 @@
1
- "use strict";import{StyleSheet}from"react-native";import{fontFor}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";export const MIN_CELL_SIZE=44;export const NAV_BUTTON_SIZE=36;const DOT_SIZE=5;export const buildCalendarStyles=e=>StyleSheet.create({root:{alignSelf:"stretch"},headerRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:e.space.md},navBtn:{width:36,height:36,borderRadius:e.radius.pill,...smoothCorners,alignItems:"center",justifyContent:"center",backgroundColor:e.colors["bg-subtle"]},navBtnPressed:{backgroundColor:e.colors["surface-pressed"]},navBtnDisabled:{opacity:.4},navText:{fontSize:e.text["2xl"].size,lineHeight:26,color:e.colors["text-body"],...fontFor(e,"semibold")},headerLabelWrap:{flex:1,alignItems:"center"},headerLabel:{fontSize:e.text.base.size,color:e.colors["text-body"],...fontFor(e,"semibold")},weekdayRow:{flexDirection:"row",justifyContent:"center",marginBottom:e.space.xs},weekdayCell:{alignItems:"center",paddingVertical:e.space.xs},weekdayText:{fontSize:e.text.xs.size,color:e.colors["text-subtle"],letterSpacing:e["letter-spacing"].wide,...fontFor(e,"medium")},gridRow:{flexDirection:"row",justifyContent:"center"},dayCell:{alignItems:"center",justifyContent:"center",padding:e.space.none},barLeft:{position:"absolute",left:0,right:"50%",top:"5%",bottom:"5%"},barRight:{position:"absolute",left:"50%",right:0,top:"5%",bottom:"5%"},rangeFill:{backgroundColor:e.colors["primary-soft"]},dayInner:{width:"90%",height:"90%",alignItems:"center",justifyContent:"center",borderRadius:e.radius.pill,...smoothCorners},dayEdge:{backgroundColor:e.colors.primary},dayMid:{borderRadius:e.radius.none},dayText:{fontSize:e.text.sm.size,...fontFor(e,"medium")},dayStruck:{textDecorationLine:"line-through"},dots:{position:"absolute",bottom:e.space.xs,flexDirection:"row",gap:e.space.xxs},dot:{width:5,height:5,borderRadius:e.radius.pill,...smoothCorners}});
1
+ "use strict";import{StyleSheet}from"react-native";import{fontFor}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";export const MIN_CELL_SIZE=44;export const NAV_BUTTON_SIZE=36;const DOT_SIZE=5;export const buildCalendarStyles=e=>StyleSheet.create({root:{alignSelf:"stretch"},headerRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:e.space.md},navBtn:{width:36,height:36,borderRadius:e.radius.pill,...smoothCorners,alignItems:"center",justifyContent:"center",backgroundColor:e.colors["bg-subtle"]},navBtnPressed:{backgroundColor:e.colors["surface-pressed"]},navBtnDisabled:{opacity:.4},navText:{fontSize:e.text["2xl"].size,lineHeight:26,color:e.colors["text-body"],...fontFor(e,"semibold")},headerLabelWrap:{flex:1,alignItems:"center"},headerLabel:{fontSize:e.text.base.size,color:e.colors["text-body"],...fontFor(e,"semibold")},weekdayRow:{flexDirection:"row",justifyContent:"center",marginBottom:e.space.xs},weekdayCell:{alignItems:"center",paddingVertical:e.space.xs},weekdayText:{fontSize:e.text.xs.size,color:e.colors["text-subtle"],letterSpacing:e["letter-spacing"].wide,...fontFor(e,"medium")},gridRow:{flexDirection:"row",justifyContent:"center"},dayCell:{alignItems:"center",justifyContent:"center",padding:e.space.none},barLeft:{position:"absolute",left:0,right:"50%",top:"5%",bottom:"5%"},barRight:{position:"absolute",left:"50%",right:0,top:"5%",bottom:"5%"},rangeFill:{backgroundColor:e.colors["primary-soft"]},dayInner:{width:"90%",height:"90%",alignItems:"center",justifyContent:"center",borderRadius:e.radius.pill,...smoothCorners},dayEdge:{backgroundColor:e.colors.primary},dayMid:{borderRadius:e.radius.none},dayText:{fontSize:e.text.sm.size,...fontFor(e,"medium")},dots:{position:"absolute",bottom:e.space.xs,flexDirection:"row",gap:e.space.xxs},dot:{width:5,height:5,borderRadius:e.radius.pill,...smoothCorners}});
@@ -1 +1 @@
1
- "use strict";export{Calendar,default}from"./Calendar.js";
1
+ "use strict";export{Calendar,DEFAULT_CALENDAR_LABELS,default}from"./Calendar.js";
@@ -1 +1 @@
1
- "use strict";import React,{forwardRef,useMemo}from"react";import{Animated,Image,Pressable,StyleSheet,View}from"react-native";import{useControllableState}from"../../hooks/useControllableState.js";import{usePressAnimation}from"../../hooks/usePressAnimation.js";import{fontFor,Gradient,useTheme}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";import{triggerHaptic}from"../../utils/hapticUtils.js";import{mergeRefs}from"../../utils/mergeRefs.js";import{supportsBoxShadow,toBoxShadow}from"../../utils/shadows.js";import{squircleHostRadius}from"../../utils/squircle.js";import{themeStyles}from"../../utils/themeStyles.js";import{AppIcon}from"../AppIcon/AppIcon.js";import{useContextMenu}from"../Menu/useContextMenu.js";import{Skeleton,SkeletonText}from"../Skeleton/index.js";import{SquircleFill,useSquircle}from"../SquircleFill/SquircleFill.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const BACKGROUND_TOKENS=["bg","bg-subtle","bg-muted","surface","scrim","surface-inverse"],paddingMap={none:"none",sm:"sm",md:"lg",lg:"xl",xl:"2xl"},Card=React.memo(forwardRef((e,t)=>{const{children:o,variant:i="elevated",elevation:s="card",radius:r="lg",padding:l="md",interactive:a=!1,bg:n,header:d,title:c,titleFont:u="sans",lead:h,action:m,headerActions:p,collapsible:b=!1,collapsed:g,defaultCollapsed:y=!1,onCollapsedChange:x,collapsedSummary:f,onRemove:S,removeLabel:j="Remove",separatorHeight:v=StyleSheet.hairlineWidth,footer:C,imageSource:_,imageHeight:w=160,imageAspectRatio:R,imageOverlay:A,loading:k=!1,gradient:T,onPress:F,haptic:B,contextMenu:I,accessibilityLabel:H,accessibilityHint:V,accessibilityRole:L,style:P,containerStyle:z,headerStyle:M,bodyStyle:q,footerStyle:O,borderRadius:W,testID:D,onLayout:N,...E}=e,G=useTheme(),K=a||"function"==typeof F,U=useContextMenu(I,{haptic:B||!1,testID:D,accessibilityActions:E.accessibilityActions,onAccessibilityAction:E.onAccessibilityAction}),$=useMemo(()=>mergeRefs(t,U.hostRef),[t,U.hostRef]),J=K||U.enabled,{style:Q,pressIn:X,pressOut:Y}=usePressAnimation({enabled:J}),Z=stylesFor(G),ee=Boolean(_),te=G.space[paddingMap[l]],oe=useMemo(()=>T?"string"==typeof T?G.settings.gradients[T]??null:T:null,[T,G.settings.gradients]),ie="flat"===i,se=ie?G.radius.none:W??G.radius[r],re=resolveBackground(G,n),[le,ae]=useControllableState({value:g,defaultValue:y,onChange:x}),ne=b&&le,de=hasBuiltInHeaderContent(e),ce=Boolean(d)||de,ue=useSquircle(!ee&&!oe&&!ie,se,N),he=StyleSheet.flatten([P,z])??{},me=he.backgroundColor,pe=he.borderColor,be=me??re??("filled"===i?G.colors["bg-subtle"]:G.colors.surface),ge="outlined"===i?G.size.border:0,ye=pe??G.colors.border,xe="none"===s?void 0:G.shadow[s],fe="elevated"===i&&supportsBoxShadow()&&xe?toBoxShadow(xe):void 0,Se=ue.active&&"elevated"===i&&!fe,je=ue.active&&!Se?{backgroundColor:"transparent",borderColor:"transparent"}:null,ve=useMemo(()=>{const e={borderRadius:Se&&ue.size?squircleHostRadius(ue.size.width,ue.size.height,se):se,...smoothCorners,padding:ee||ue.active?G.space.none:te,overflow:ue.active?"visible":"hidden"};switch(i){case"flat":return{...e,backgroundColor:re??G.colors.surface,borderBottomWidth:v,borderBottomColor:G.colors.border};case"outlined":return{...e,backgroundColor:ue.active?"transparent":re??G.colors.surface,borderWidth:G.size.border,borderColor:ue.active?"transparent":G.colors.border};case"filled":return{...e,backgroundColor:ue.active?"transparent":re??G.colors["bg-subtle"]};default:return{...e,backgroundColor:re??G.colors.surface,...fe?{boxShadow:fe}:xe}}},[G,i,xe,se,ee,te,ue.active,ue.size,fe,Se,re,v]),Ce=useMemo(()=>({..."number"==typeof R?{width:"100%",aspectRatio:R}:{width:"100%",height:w},borderTopLeftRadius:se,borderTopRightRadius:se,borderBottomLeftRadius:G.radius.none,borderBottomRightRadius:G.radius.none,...smoothCorners}),[G,se,R,w]),we="string"==typeof c?c:"",Re=_jsxs(_Fragment,{children:[_jsxs(View,{style:Z.titleColumn,children:["string"==typeof c?_jsx(Text,{variant:"title",accessibilityRole:"header",style:titleFaceFor(G,u),children:c}):c,h?_jsx(Text,{variant:"bodySmall",style:Z.lead,children:h}):null,ne&&f?_jsx(Text,{variant:"caption",style:Z.lead,children:f}):null]}),isCardTextAction(m)?_jsx(CardTextActionButton,{action:m,haptic:B}):m?_jsx(View,{style:Z.actionNode,children:m}):null,p,b?_jsx(CardIconAction,{icon:ne?"chevron-down":"chevron-up",label:`${ne?"Show":"Hide"} ${we}`.trim(),expanded:!ne,onPress:()=>ae(!ne),haptic:B}):null,S?_jsx(CardIconAction,{icon:"trash",label:j,onPress:S,color:G.colors["danger-text"],haptic:B}):null]}),Ae=_jsxs(_Fragment,{children:[ce?_jsx(View,{style:[Z.header,!d&&Z.headerRow,ne&&Z.headerFolded,M],children:d??Re}):null,ne?null:_jsx(View,{style:[ce||C?Z.body:null,q],children:o}),C&&!ne?_jsx(View,{style:[Z.footer,O],children:C}):null]}),ke=ee?_jsxs(_Fragment,{children:[_jsxs(View,{style:Z.imageWrapper,children:[_jsx(Image,{source:_,resizeMode:"cover",style:Ce,accessibilityLabel:"",accessible:!1}),A?_jsx(View,{pointerEvents:"box-none",style:Z.imageOverlay,children:A}):null]}),_jsx(View,{style:{padding:te},children:Ae})]}):Ae,Te=oe?_jsxs(_Fragment,{children:[_jsx(Gradient,{gradient:oe,style:StyleSheet.absoluteFill}),ke]}):ue.active&&ue.size?_jsxs(_Fragment,{children:[_jsx(SquircleFill,{width:ue.size.width,height:ue.size.height,radius:se,fill:be,stroke:ge?ye:void 0,strokeWidth:ge,outset:ge}),_jsx(View,{style:[Z.squircleClip,{padding:te,borderRadius:ue.size?squircleHostRadius(ue.size.width,ue.size.height,se):se}],children:ke})]}):ke;let Fe;if(J){const handlePress=e=>{K&&(B&&triggerHaptic(B),F?.(e))};Fe=_jsx(Animated.View,{style:Q,children:_jsx(Pressable,{ref:$,onPress:handlePress,onPressIn:X,onPressOut:Y,accessibilityRole:L??(K?"button":void 0),accessibilityLabel:H,accessibilityHint:V,testID:D,onLayout:ue.onLayout,style:[ve,P,z,je],...E,...U.hostProps,children:Te})})}else Fe=_jsx(View,{ref:t,accessibilityLabel:H,accessibilityHint:V,accessibilityRole:L,testID:D,onLayout:ue.onLayout,style:[ve,P,z,je],...E,children:Te});return k?_jsx(CardSkeleton,{...e}):U.enabled?_jsxs(_Fragment,{children:[Fe,U.renderSurface(_jsx(View,{style:[ve,P,z,je,Z.preview],children:Te}))]}):Fe}));Card.displayName="Card";const CardSkeleton=({variant:e="elevated",elevation:t,radius:o="lg",padding:i="md",bg:s,header:r,footer:l,imageSource:a,imageHeight:n=160,imageAspectRatio:d,borderRadius:c,containerStyle:u,headerStyle:h,bodyStyle:m,footerStyle:p,style:b,...g})=>{const y=useTheme(),x=paddingMap[i],f=y.space[x],S="flat"===e?y.radius.none:c??y.radius[o],j=void 0!==r||hasBuiltInHeaderContent(g),v=resolveBackground(y,s)??y.colors.surface,C="outlined"===e?1:0,_="outlined"===e?y.colors.border:void 0;return _jsxs(View,{style:[{backgroundColor:v,borderRadius:S,...smoothCorners,borderWidth:C,borderColor:_,overflow:"hidden"},u,b],accessibilityRole:"progressbar",accessibilityLabel:"Loading",accessibilityState:{busy:!0},"aria-busy":!0,children:[void 0!==a?_jsx(Skeleton,{width:"100%",height:d?void 0:n,style:d?{aspectRatio:d,width:"100%"}:void 0}):null,j?_jsx(View,{style:[{padding:f,paddingBottom:y.space.sm},h],children:_jsx(Skeleton,{shape:"text",width:"60%",height:18})}):null,_jsx(View,{style:[{padding:f},m],children:_jsx(SkeletonText,{lines:3,fontSize:y.text.base.size,lastLineWidth:"55%"})}),void 0!==l?_jsx(View,{style:[{padding:f,paddingTop:y.space.sm,flexDirection:"row"},p],children:_jsx(Skeleton,{width:88,height:32,shape:"rounded"})}):null]})};CardSkeleton.displayName="CardSkeleton",Card.Skeleton=CardSkeleton;const hasBuiltInHeaderContent=e=>Boolean(e.title||e.lead||e.action||e.headerActions||e.collapsible||e.onRemove),isCardTextAction=e=>"object"==typeof e&&null!==e&&!React.isValidElement(e)&&"label"in e&&"onPress"in e,HIT_TARGET=44,CardIconAction=({icon:e,label:t,onPress:o,expanded:i,color:s,haptic:r})=>{const l=useTheme();return _jsx(Pressable,{accessibilityRole:"button",accessibilityLabel:t,accessibilityState:void 0===i?void 0:{expanded:i},"aria-expanded":i,onPress:()=>{r&&triggerHaptic(r),o()},style:iconActionStyle,children:_jsx(AppIcon,{name:e,size:20,color:s??l.colors["text-body"]})})},CardTextActionButton=({action:e,haptic:t})=>{const o=useTheme();return _jsx(Pressable,{accessibilityRole:"button",accessibilityLabel:e.accessibilityLabel??e.label,onPress:()=>{t&&triggerHaptic(t),e.onPress()},style:textActionStyle,children:_jsx(Text,{variant:"label",weight:"semibold",color:o.colors.primary,children:e.label})})},iconActionStyle={width:44,height:44,alignItems:"center",justifyContent:"center"},textActionStyle={minWidth:44,minHeight:44,alignItems:"center",justifyContent:"center"},titleFaceFor=(e,t)=>"serif"===t?fontFor(e,"semibold","display"):{fontFamily:void 0,...fontFor(e,"semibold")},resolveBackground=(e,t)=>{if(null!=t)return BACKGROUND_TOKENS.includes(t)?e.colors[t]:t},buildStyles=e=>StyleSheet.create({header:{marginBottom:e.space.md},headerRow:{flexDirection:"row",alignItems:"center",gap:e.space.sm},headerFolded:{marginBottom:e.space.none},titleColumn:{flex:1},lead:{marginTop:e.space.xs},actionNode:{flexShrink:0},body:{flexShrink:1},footer:{marginTop:e.space.md},imageWrapper:{position:"relative"},imageOverlay:{...StyleSheet.absoluteFill},squircleClip:{flexGrow:1,overflow:"hidden",...smoothCorners},preview:{margin:e.space.none,marginTop:e.space.none,marginBottom:e.space.none,marginLeft:e.space.none,marginRight:e.space.none,marginStart:e.space.none,marginEnd:e.space.none,marginHorizontal:e.space.none,marginVertical:e.space.none,position:"relative",top:0,left:0,width:"100%",height:"100%"}}),stylesFor=themeStyles(buildStyles);export{Card};export default Card;
1
+ "use strict";import React,{forwardRef,useMemo}from"react";import{Animated,Image,Pressable,StyleSheet,View}from"react-native";import{useControllableState}from"../../hooks/useControllableState.js";import{usePressAnimation}from"../../hooks/usePressAnimation.js";import{fontFor,Gradient,useTheme}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";import{triggerHaptic}from"../../utils/hapticUtils.js";import{mergeRefs}from"../../utils/mergeRefs.js";import{supportsBoxShadow,toBoxShadow}from"../../utils/shadows.js";import{squircleHostRadius}from"../../utils/squircle.js";import{themeStyles}from"../../utils/themeStyles.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{AppIcon}from"../AppIcon/AppIcon.js";import{useContextMenu}from"../Menu/useContextMenu.js";import{Skeleton,SkeletonText}from"../Skeleton/index.js";import{SquircleFill,useSquircle}from"../SquircleFill/SquircleFill.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const BACKGROUND_TOKENS=["bg","bg-subtle","bg-muted","surface","scrim","surface-inverse"];export const DEFAULT_CARD_LABELS=Object.freeze({remove:"Remove",show:"Show",hide:"Hide",loading:"Loading"});const paddingMap={none:"none",sm:"sm",md:"lg",lg:"xl",xl:"2xl"},Card=React.memo(forwardRef((e,t)=>{const{children:i,variant:o="elevated",elevation:s="card",radius:r="lg",padding:a="md",interactive:l=!1,bg:n,header:d,title:c,titleFont:u="sans",lead:h,action:m,headerActions:p,collapsible:b=!1,collapsed:g,defaultCollapsed:y=!1,onCollapsedChange:x,collapsedSummary:f,onRemove:S,separatorHeight:v=StyleSheet.hairlineWidth,footer:j,imageSource:C,imageHeight:w=160,imageAspectRatio:_,imageOverlay:R,loading:A=!1,gradient:F,onPress:T,haptic:k,contextMenu:B,accessibilityLabel:I,accessibilityHint:L,accessibilityRole:V,style:H,containerStyle:P,headerStyle:z,bodyStyle:M,footerStyle:D,borderRadius:q,testID:E,labels:O,onLayout:W,...N}=e;warnInvalidValue("Card","variant",e.variant,["elevated","outline","filled","flat"]),warnInvalidValue("Card","radius",e.radius,["sm","md","lg","xl"]),warnInvalidValue("Card","padding",e.padding,["none","sm","md","lg","xl"]),warnInvalidValue("Card","titleFont",e.titleFont,["sans","serif"]);const G=useTheme(),U=useMemo(()=>({...DEFAULT_CARD_LABELS,...O}),[O]),K=l||"function"==typeof T,$=useContextMenu(B,{haptic:k||!1,testID:E,accessibilityActions:N.accessibilityActions,onAccessibilityAction:N.onAccessibilityAction}),J=useMemo(()=>mergeRefs(t,$.hostRef),[t,$.hostRef]),Q=K||$.enabled,{style:X,pressIn:Y,pressOut:Z}=usePressAnimation({enabled:Q}),ee=stylesFor(G),te=Boolean(C),ie=G.space[paddingMap[a]],oe=useMemo(()=>F?"string"==typeof F?G.settings.gradients[F]??null:F:null,[F,G.settings.gradients]),se="flat"===o,re=se?G.radius.none:q??G.radius[r],ae=resolveBackground(G,n),[le,ne]=useControllableState({value:g,defaultValue:y,onChange:x}),de=b&&le,ce=hasBuiltInHeaderContent(e),ue=Boolean(d)||ce,he=useSquircle(!te&&!oe&&!se,re,W),me=StyleSheet.flatten([H,P])??{},pe=me.backgroundColor,be=me.borderColor,ge=pe??ae??("filled"===o?G.colors["bg-subtle"]:G.colors.surface),ye="outline"===o?G.size.border:0,xe=be??G.colors.border,fe="none"===s?void 0:G.shadow[s],Se="elevated"===o&&supportsBoxShadow()&&fe?toBoxShadow(fe):void 0,ve=he.active&&"elevated"===o&&!Se,je=he.active&&!ve?{backgroundColor:"transparent",borderColor:"transparent"}:null,Ce=useMemo(()=>{const e={borderRadius:ve&&he.size?squircleHostRadius(he.size.width,he.size.height,re):re,...smoothCorners,padding:te||he.active?G.space.none:ie,overflow:he.active?"visible":"hidden"};switch(o){case"flat":return{...e,backgroundColor:ae??G.colors.surface,borderBottomWidth:v,borderBottomColor:G.colors.border};case"outline":return{...e,backgroundColor:he.active?"transparent":ae??G.colors.surface,borderWidth:G.size.border,borderColor:he.active?"transparent":G.colors.border};case"filled":return{...e,backgroundColor:he.active?"transparent":ae??G.colors["bg-subtle"]};default:return{...e,backgroundColor:ae??G.colors.surface,...Se?{boxShadow:Se}:fe}}},[G,o,fe,re,te,ie,he.active,he.size,Se,ve,ae,v]),we=useMemo(()=>({..."number"==typeof _?{width:"100%",aspectRatio:_}:{width:"100%",height:w},borderTopLeftRadius:re,borderTopRightRadius:re,borderBottomLeftRadius:G.radius.none,borderBottomRightRadius:G.radius.none,...smoothCorners}),[G,re,_,w]),Re=c??"",Ae=_jsxs(_Fragment,{children:[_jsxs(View,{style:ee.titleColumn,children:[c?_jsx(Text,{variant:"title",accessibilityRole:"header",style:titleFaceFor(G,u),children:c}):null,h?_jsx(Text,{variant:"bodySmall",style:ee.lead,children:h}):null,de&&f?_jsx(Text,{variant:"caption",style:ee.lead,children:f}):null]}),isCardTextAction(m)?_jsx(CardTextActionButton,{action:m,haptic:k}):m?_jsx(View,{style:ee.actionNode,children:m}):null,p,b?_jsx(CardIconAction,{icon:de?"chevron-down":"chevron-up",label:`${de?U.show:U.hide} ${Re}`.trim(),expanded:!de,onPress:()=>ne(!de),haptic:k}):null,S?_jsx(CardIconAction,{icon:"trash",label:U.remove,onPress:S,color:G.colors["danger-text"],haptic:k}):null]}),Fe=_jsxs(_Fragment,{children:[ue?_jsx(View,{style:[ee.header,!d&&ee.headerRow,de&&ee.headerFolded,z],children:d??Ae}):null,de?null:_jsx(View,{style:[ue||j?ee.body:null,M],children:i}),j&&!de?_jsx(View,{style:[ee.footer,D],children:j}):null]}),Te=te?_jsxs(_Fragment,{children:[_jsxs(View,{style:ee.imageWrapper,children:[_jsx(Image,{source:C,resizeMode:"cover",style:we,accessibilityLabel:"",accessible:!1}),R?_jsx(View,{pointerEvents:"box-none",style:ee.imageOverlay,children:R}):null]}),_jsx(View,{style:{padding:ie},children:Fe})]}):Fe,ke=oe?_jsxs(_Fragment,{children:[_jsx(Gradient,{gradient:oe,style:StyleSheet.absoluteFill}),Te]}):he.active&&he.size?_jsxs(_Fragment,{children:[_jsx(SquircleFill,{width:he.size.width,height:he.size.height,radius:re,fill:ge,stroke:ye?xe:void 0,strokeWidth:ye,outset:ye}),_jsx(View,{style:[ee.squircleClip,{padding:ie,borderRadius:he.size?squircleHostRadius(he.size.width,he.size.height,re):re}],children:Te})]}):Te;let Be;if(Q){const handlePress=e=>{K&&(k&&triggerHaptic(k),T?.(e))};Be=_jsx(Animated.View,{style:X,children:_jsx(Pressable,{ref:J,onPress:handlePress,onPressIn:Y,onPressOut:Z,accessibilityRole:V??(K?"button":void 0),accessibilityLabel:I,accessibilityHint:L,testID:E,onLayout:he.onLayout,style:[Ce,H,P,je],...N,...$.hostProps,children:ke})})}else Be=_jsx(View,{ref:t,accessibilityLabel:I,accessibilityHint:L,accessibilityRole:V,testID:E,onLayout:he.onLayout,style:[Ce,H,P,je],...N,children:ke});return A?_jsx(CardSkeleton,{...e}):$.enabled?_jsxs(_Fragment,{children:[Be,$.renderSurface(_jsx(View,{style:[Ce,H,P,je,ee.preview],children:ke}))]}):Be}));Card.displayName="Card";const CardSkeleton=({variant:e="elevated",elevation:t,radius:i="lg",padding:o="md",bg:s,header:r,footer:a,imageSource:l,imageHeight:n=160,imageAspectRatio:d,borderRadius:c,containerStyle:u,headerStyle:h,bodyStyle:m,footerStyle:p,style:b,labels:g,...y})=>{const x=useTheme(),f={...DEFAULT_CARD_LABELS,...g},S=paddingMap[o],v=x.space[S],j="flat"===e?x.radius.none:c??x.radius[i],C=void 0!==r||hasBuiltInHeaderContent(y),w=resolveBackground(x,s)??x.colors.surface,_="outline"===e?1:0,R="outline"===e?x.colors.border:void 0;return _jsxs(View,{style:[{backgroundColor:w,borderRadius:j,...smoothCorners,borderWidth:_,borderColor:R,overflow:"hidden"},u,b],accessibilityRole:"progressbar",accessibilityLabel:f.loading,accessibilityState:{busy:!0},"aria-busy":!0,children:[void 0!==l?_jsx(Skeleton,{width:"100%",height:d?void 0:n,style:d?{aspectRatio:d,width:"100%"}:void 0}):null,C?_jsx(View,{style:[{padding:v,paddingBottom:x.space.sm},h],children:_jsx(Skeleton,{shape:"text",width:"60%",height:18})}):null,_jsx(View,{style:[{padding:v},m],children:_jsx(SkeletonText,{lines:3,fontSize:x.text.base.size,lastLineWidth:"55%"})}),void 0!==a?_jsx(View,{style:[{padding:v,paddingTop:x.space.sm,flexDirection:"row"},p],children:_jsx(Skeleton,{width:88,height:32,shape:"rounded"})}):null]})};CardSkeleton.displayName="CardSkeleton",Card.Skeleton=CardSkeleton;const hasBuiltInHeaderContent=e=>Boolean(e.title||e.lead||e.action||e.headerActions||e.collapsible||e.onRemove),isCardTextAction=e=>"object"==typeof e&&null!==e&&!React.isValidElement(e)&&"label"in e&&"onPress"in e,HIT_TARGET=44,CardIconAction=({icon:e,label:t,onPress:i,expanded:o,color:s,haptic:r})=>{const a=useTheme();return _jsx(Pressable,{accessibilityRole:"button",accessibilityLabel:t,accessibilityState:void 0===o?void 0:{expanded:o},"aria-expanded":o,onPress:()=>{r&&triggerHaptic(r),i()},style:iconActionStyle,children:_jsx(AppIcon,{name:e,size:20,color:s??a.colors["text-body"]})})},CardTextActionButton=({action:e,haptic:t})=>_jsx(Pressable,{accessibilityRole:"button",accessibilityLabel:e.accessibilityLabel??e.label,onPress:()=>{t&&triggerHaptic(t),e.onPress()},style:textActionStyle,children:_jsx(Text,{variant:"label",weight:"semibold",color:"brand",children:e.label})}),iconActionStyle={width:44,height:44,alignItems:"center",justifyContent:"center"},textActionStyle={minWidth:44,minHeight:44,alignItems:"center",justifyContent:"center"},titleFaceFor=(e,t)=>"serif"===t?fontFor(e,"semibold","display"):{fontFamily:void 0,...fontFor(e,"semibold")},resolveBackground=(e,t)=>{if(null!=t)return BACKGROUND_TOKENS.includes(t)?e.colors[t]:t},buildStyles=e=>StyleSheet.create({header:{marginBottom:e.space.md},headerRow:{flexDirection:"row",alignItems:"center",gap:e.space.sm},headerFolded:{marginBottom:e.space.none},titleColumn:{flex:1},lead:{marginTop:e.space.xs},actionNode:{flexShrink:0},body:{flexShrink:1},footer:{marginTop:e.space.md},imageWrapper:{position:"relative"},imageOverlay:{...StyleSheet.absoluteFill},squircleClip:{flexGrow:1,overflow:"hidden",...smoothCorners},preview:{margin:e.space.none,marginTop:e.space.none,marginBottom:e.space.none,marginLeft:e.space.none,marginRight:e.space.none,marginStart:e.space.none,marginEnd:e.space.none,marginHorizontal:e.space.none,marginVertical:e.space.none,position:"relative",top:0,left:0,width:"100%",height:"100%"}}),stylesFor=themeStyles(buildStyles);export{Card};export default Card;
@@ -1 +1 @@
1
- "use strict";export{Card,default}from"./Card.js";
1
+ "use strict";export{Card,DEFAULT_CARD_LABELS,default}from"./Card.js";
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useCallback,useEffect,useImperativeHandle,useMemo,useRef,useState}from"react";import{Animated,AppState,Dimensions,FlatList,Image,Pressable,ScrollView,StyleSheet,Text,View}from"react-native";import{createAnimatedValue,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{smoothCorners}from"../../utils/corners.js";import{Skeleton}from"../Skeleton/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const CarouselInner=forwardRef((e,t)=>{const{data:n,renderItem:r,keyExtractor:i,index:s,defaultIndex:a=0,onIndexChange:l,onScrollOffsetChange:o,autoPlay:c=!1,autoPlayInterval:u=4e3,loop:d=!1,showPagination:m=!0,paginationStyle:h="dots",itemWidth:g="screen",spacing:p=0,containerStyle:b,accessibilityLabel:x,testID:f,showThumbnails:y=!1,haptic:S,renderThumbnail:w,loading:C=!1}=e,v=useTheme(),j="number"==typeof s,k=d||c,[I,T]=useState(()=>Dimensions.get("window").width),R="screen"===g?I:g,_=R+p,A=useRef(null),V=useRef(createAnimatedValue(0)).current,E=clamp(j?s:a,0,Math.max(0,n.length-1)),[H,z]=useState(E),M=useRef(null),P=useRef(null),D=useRef(!1),L=useRef(H);L.current=H;const W=useCallback(e=>{const t=clamp(e,0,Math.max(0,n.length-1));z(e=>e===t?e:(l?.(t),t))},[n.length,l]),$=useCallback((e,t=!0)=>{if(0===n.length)return;const r=clamp(e,0,n.length-1);A.current?.scrollToOffset({offset:r*_,animated:t}),W(r)},[n.length,_,W]),N=useCallback(()=>{if(0===n.length)return;const e=L.current+1;e>=n.length?k&&$(0,!1):$(e,!0)},[n.length,k,$]),O=useCallback(()=>{if(0===n.length)return;const e=L.current-1;e<0?k&&$(n.length-1,!1):$(e,!0)},[n.length,k,$]);useImperativeHandle(t,()=>({scrollTo:$,next:N,prev:O}),[$,N,O]),useEffect(()=>{j&&s!==H&&$(s,!0)},[s]);const F=useCallback(()=>{M.current&&(clearInterval(M.current),M.current=null)},[]),X=useCallback(()=>{!c||n.length<=1||(F(),M.current=setInterval(()=>{if(D.current)return;const e=L.current+1;e>=n.length?$(0,!1):$(e,!0)},u))},[c,u,n.length,$,F]);useEffect(()=>(X(),()=>{F(),P.current&&clearTimeout(P.current)}),[X,F]),useEffect(()=>{const e=AppState.addEventListener("change",e=>{"active"!==e?(F(),P.current&&(clearTimeout(P.current),P.current=null)):X()});return()=>e.remove()},[X,F]);const B=m&&n.length>1&&"numbers"!==h||void 0!==o,G=useMemo(()=>Animated.event([{nativeEvent:{contentOffset:{x:V}}}],{useNativeDriver:!1,listener:o?e=>o(e.nativeEvent.contentOffset.x):void 0}),[V,o]),q=useCallback(e=>{if(_<=0)return;const t=e.nativeEvent.contentOffset.x,n=Math.round(t/_);W(n)},[_,W]),J=useCallback(()=>{D.current=!0,F(),P.current&&(clearTimeout(P.current),P.current=null)},[F]),K=useCallback(()=>{D.current=!1,c&&(P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{X()},1e3))},[c,X]),Q=useCallback(e=>{switch(e.nativeEvent.actionName){case"increment":N();break;case"decrement":O()}},[N,O]),U=useMemo(()=>buildStyles(v),[v]),Y=useCallback(({item:e,index:t})=>_jsx(View,{style:{width:R,marginRight:t===n.length-1?0:p},accessibilityElementsHidden:t!==H,importantForAccessibility:t===H?"yes":"no-hide-descendants",children:r(e,t)}),[r,R,p,n.length,H]),Z=useCallback((e,t)=>String(t),[]),ee=useCallback((e,t)=>({length:_,offset:_*t,index:t}),[_]);return C?_jsx(CarouselSkeleton,{...e,containerWidth:I}):_jsxs(View,{style:[U.container,b],onLayout:e=>T(e.nativeEvent.layout.width),accessibilityRole:"adjustable",accessibilityLabel:x??"Carousel",accessibilityValue:{min:0,max:Math.max(0,n.length-1),now:H,text:`Slide ${H+1} of ${n.length}`},accessibilityActions:[{name:"increment"},{name:"decrement"}],onAccessibilityAction:Q,testID:f,children:[_jsx(FlatList,{ref:A,data:n,keyExtractor:i??Z,renderItem:Y,horizontal:!0,pagingEnabled:"screen"===g&&0===p,snapToInterval:_,snapToAlignment:"start",decelerationRate:"fast",showsHorizontalScrollIndicator:!1,onScroll:B?G:void 0,scrollEventThrottle:B?16:void 0,onMomentumScrollEnd:q,onScrollBeginDrag:J,onScrollEndDrag:K,getItemLayout:ee,initialScrollIndex:E,bounces:!1}),m&&n.length>1?_jsx(Pagination,{count:n.length,currentIndex:H,scrollX:V,slideStride:_,variant:h,theme:v}):null,y&&n.length>0?_jsx(ThumbnailStrip,{data:n,currentIndex:H,renderThumbnail:w,onSelect:e=>{const t=resolveHaptic(S,"selection");t&&triggerHaptic(t),$(e,!0)},theme:v}):null]})});CarouselInner.displayName="Carousel";const CarouselSkeleton=({itemWidth:e="screen",showPagination:t=!0,paginationStyle:n="dots",containerStyle:r,containerWidth:i})=>{const s=useTheme(),a="screen"===e?i||320:e;return _jsxs(View,{style:[carouselSkeletonStyles.container,r],children:[_jsx(Skeleton,{width:a,height:160,radius:"md"}),t?_jsx(View,{style:[carouselSkeletonStyles.paginationRow,{marginTop:s.space.md}],children:Array.from({length:3}).map((e,t)=>_jsx(Skeleton,"numbers"===n?{width:24,height:16,radius:"sm",style:{marginHorizontal:s.space.xs}}:"bars"===n?{width:20,height:4,radius:"pill",style:{marginHorizontal:s.space.xxs}}:{shape:"circle",width:8,height:8,style:{marginHorizontal:s.space.xs}},`sk-pg-${t}`))}):null]})};CarouselSkeleton.displayName="CarouselSkeleton";const carouselSkeletonStyles=StyleSheet.create({container:{alignItems:"center"},paginationRow:{flexDirection:"row",justifyContent:"center"}}),Carousel=CarouselInner;Carousel.Skeleton=CarouselSkeleton;const Pagination=({count:e,currentIndex:t,scrollX:n,slideStride:r,variant:i,theme:s})=>{const a=useMemo(()=>buildPaginationStyles(s),[s]);if("numbers"===i)return _jsx(View,{style:a.numbersWrap,children:_jsx(Text,{style:[a.numbersText,{color:s.colors["text-muted"],fontSize:s.text.sm.size,fontWeight:s.weight.medium}],accessibilityLabel:`Slide ${t+1} of ${e}`,children:`${t+1} / ${e}`})});const l=Array.from({length:e},(e,t)=>t),o="bars"===i,c=o?24:6,u=o?36:16,d=o?3:6;return _jsx(View,{style:a.dotRow,accessibilityElementsHidden:!0,importantForAccessibility:"no-hide-descendants",children:l.map(e=>{const i=[(e-1)*r,e*r,(e+1)*r],a=n.interpolate({inputRange:i,outputRange:[c,u,c],extrapolate:"clamp"}),l=n.interpolate({inputRange:i,outputRange:[.5,1,.5],extrapolate:"clamp"});return _jsx(Animated.View,{style:[{width:a,height:d,marginHorizontal:s.space.xs,borderRadius:s.radius.pill,...smoothCorners,backgroundColor:e===t?s.colors.primary:s.colors.border,opacity:l}]},e)})})},ThumbnailStrip=({data:e,currentIndex:t,renderThumbnail:n,onSelect:r,theme:i})=>{const s=useMemo(()=>buildThumbStyles(i),[i]);return _jsx(ScrollView,{horizontal:!0,showsHorizontalScrollIndicator:!1,contentContainerStyle:s.row,accessibilityRole:"tablist",children:e.map((e,a)=>_jsx(ThumbnailItem,{item:e,index:a,isActive:a===t,renderThumbnail:n,onPress:()=>r(a),theme:i,styles:s},a))})},ThumbnailItem=({item:e,index:t,isActive:n,renderThumbnail:r,onPress:i,theme:s,styles:a})=>{const l=useRef(createAnimatedValue(n?1.1:1)).current;useEffect(()=>{const e=Animated.spring(l,{toValue:n?1.1:1,useNativeDriver:!0,friction:6,tension:80});return e.start(),()=>e.stop()},[n,l]);const o=useMemo(()=>r?r(e,t):e&&"object"==typeof e&&"uri"in e&&"string"==typeof e.uri?_jsx(Image,{source:{uri:e.uri},style:a.image,resizeMode:"cover"}):_jsx(View,{style:[a.placeholder,{backgroundColor:s.colors["bg-subtle"]}],children:_jsx(Text,{style:{color:s.colors["text-muted"],fontSize:s.text.xs.size,fontWeight:s.weight.semibold},children:t+1})}),[e,t,r,s,a]);return _jsx(Pressable,{onPress:i,accessibilityRole:"tab",accessibilityState:{selected:n},"aria-selected":n,accessibilityLabel:`Go to slide ${t+1}`,children:_jsx(Animated.View,{style:[a.thumb,{borderColor:n?s.colors.primary:"transparent",transform:[{scale:l}]}],children:o})})},buildThumbStyles=e=>StyleSheet.create({row:{flexDirection:"row",alignItems:"center",paddingHorizontal:e.space.sm,paddingVertical:e.space.sm},thumb:{width:40,height:40,marginHorizontal:e.space.xs,borderRadius:e.radius.sm,...smoothCorners,borderWidth:2,overflow:"hidden"},image:{width:"100%",height:"100%"},placeholder:{flex:1,alignItems:"center",justifyContent:"center"}}),clamp=(e,t,n)=>Math.min(Math.max(e,t),n),buildStyles=e=>StyleSheet.create({container:{width:"100%"}}),buildPaginationStyles=e=>StyleSheet.create({dotRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:e.space.md},numbersWrap:{alignItems:"center",justifyContent:"center",paddingVertical:e.space.md},numbersText:{textAlign:"center"}});export{Carousel};export default Carousel;
1
+ "use strict";import{forwardRef,useCallback,useEffect,useImperativeHandle,useMemo,useRef,useState}from"react";import{Animated,AppState,Dimensions,FlatList,Image,Pressable,ScrollView,StyleSheet,View}from"react-native";import{createAnimatedValue,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{smoothCorners}from"../../utils/corners.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{Skeleton}from"../Skeleton/index.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const DEFAULT_CAROUSEL_LABELS=Object.freeze({carousel:"Carousel",slideOf:(e,t)=>`Slide ${e} of ${t}`,goToSlide:e=>`Go to slide ${e}`});const CarouselInner=forwardRef((e,t)=>{const{data:n,renderItem:r,keyExtractor:a,index:i,defaultIndex:l=0,onIndexChange:s,onScrollOffsetChange:o,autoPlay:c=!1,autoPlayInterval:u=4e3,loop:d=!1,showPagination:m=!0,paginationStyle:h="dots",itemWidth:g="screen",spacing:b=0,containerStyle:p,accessibilityLabel:f,testID:x,showThumbnails:y=!1,haptic:S,renderThumbnail:w,loading:v=!1,labels:C}=e;warnInvalidValue("Carousel","paginationStyle",e.paginationStyle,["dots","bars","numbers"]);const T=useMemo(()=>({...DEFAULT_CAROUSEL_LABELS,...C}),[C]),j=useTheme(),I="number"==typeof i,k=d||c,[_,A]=useState(()=>Dimensions.get("window").width),E="screen"===g?_:g,R=E+b,V=useRef(null),L=useRef(createAnimatedValue(0)).current,O=clamp(I?i:l,0,Math.max(0,n.length-1)),[H,D]=useState(O),M=useRef(null),P=useRef(null),z=useRef(!1),N=useRef(H);N.current=H;const W=useCallback(e=>{const t=clamp(e,0,Math.max(0,n.length-1));D(e=>e===t?e:(s?.(t),t))},[n.length,s]),F=useCallback((e,t=!0)=>{if(0===n.length)return;const r=clamp(e,0,n.length-1);V.current?.scrollToOffset({offset:r*R,animated:t}),W(r)},[n.length,R,W]),$=useCallback(()=>{if(0===n.length)return;const e=N.current+1;e>=n.length?k&&F(0,!1):F(e,!0)},[n.length,k,F]),U=useCallback(()=>{if(0===n.length)return;const e=N.current-1;e<0?k&&F(n.length-1,!1):F(e,!0)},[n.length,k,F]);useImperativeHandle(t,()=>({scrollTo:F,next:$,prev:U}),[F,$,U]),useEffect(()=>{I&&i!==H&&F(i,!0)},[i]);const B=useCallback(()=>{M.current&&(clearInterval(M.current),M.current=null)},[]),G=useCallback(()=>{!c||n.length<=1||(B(),M.current=setInterval(()=>{if(z.current)return;const e=N.current+1;e>=n.length?F(0,!1):F(e,!0)},u))},[c,u,n.length,F,B]);useEffect(()=>(G(),()=>{B(),P.current&&clearTimeout(P.current)}),[G,B]),useEffect(()=>{const e=AppState.addEventListener("change",e=>{"active"!==e?(B(),P.current&&(clearTimeout(P.current),P.current=null)):G()});return()=>e.remove()},[G,B]);const K=m&&n.length>1&&"numbers"!==h||void 0!==o,X=useMemo(()=>Animated.event([{nativeEvent:{contentOffset:{x:L}}}],{useNativeDriver:!1,listener:o?e=>o(e.nativeEvent.contentOffset.x):void 0}),[L,o]),q=useCallback(e=>{if(R<=0)return;const t=e.nativeEvent.contentOffset.x,n=Math.round(t/R);W(n)},[R,W]),J=useCallback(()=>{z.current=!0,B(),P.current&&(clearTimeout(P.current),P.current=null)},[B]),Q=useCallback(()=>{z.current=!1,c&&(P.current&&clearTimeout(P.current),P.current=setTimeout(()=>{G()},1e3))},[c,G]),Y=useCallback(e=>{switch(e.nativeEvent.actionName){case"increment":$();break;case"decrement":U()}},[$,U]),Z=useMemo(()=>buildStyles(j),[j]),ee=useCallback(({item:e,index:t})=>_jsx(View,{style:{width:E,marginRight:t===n.length-1?0:b},accessibilityElementsHidden:t!==H,importantForAccessibility:t===H?"yes":"no-hide-descendants",children:r(e,t)}),[r,E,b,n.length,H]),te=useCallback((e,t)=>String(t),[]),ne=useCallback((e,t)=>({length:R,offset:R*t,index:t}),[R]);return v?_jsx(CarouselSkeleton,{...e,containerWidth:_}):_jsxs(View,{style:[Z.container,p],onLayout:e=>A(e.nativeEvent.layout.width),accessibilityRole:"adjustable",accessibilityLabel:f??T.carousel,accessibilityValue:{min:0,max:Math.max(0,n.length-1),now:H,text:T.slideOf(H+1,n.length)},accessibilityActions:[{name:"increment"},{name:"decrement"}],onAccessibilityAction:Y,testID:x,children:[_jsx(FlatList,{ref:V,data:n,keyExtractor:a??te,renderItem:ee,horizontal:!0,pagingEnabled:"screen"===g&&0===b,snapToInterval:R,snapToAlignment:"start",decelerationRate:"fast",showsHorizontalScrollIndicator:!1,onScroll:K?X:void 0,scrollEventThrottle:K?16:void 0,onMomentumScrollEnd:q,onScrollBeginDrag:J,onScrollEndDrag:Q,getItemLayout:ne,initialScrollIndex:O,bounces:!1}),m&&n.length>1?_jsx(Pagination,{count:n.length,currentIndex:H,scrollX:L,slideStride:R,variant:h,theme:j,labels:T}):null,y&&n.length>0?_jsx(ThumbnailStrip,{data:n,currentIndex:H,renderThumbnail:w,labels:T,onSelect:e=>{const t=resolveHaptic(S,"selection");t&&triggerHaptic(t),F(e,!0)},theme:j}):null]})});CarouselInner.displayName="Carousel";const CarouselSkeleton=({itemWidth:e="screen",showPagination:t=!0,paginationStyle:n="dots",containerStyle:r,containerWidth:a})=>{const i=useTheme(),l="screen"===e?a||320:e;return _jsxs(View,{style:[carouselSkeletonStyles.container,r],children:[_jsx(Skeleton,{width:l,height:160,radius:"md"}),t?_jsx(View,{style:[carouselSkeletonStyles.paginationRow,{marginTop:i.space.md}],children:SKELETON_PAGINATION_DOTS.map(e=>_jsx(Skeleton,"numbers"===n?{width:24,height:16,radius:"sm",style:{marginHorizontal:i.space.xs}}:"bars"===n?{width:20,height:4,radius:"pill",style:{marginHorizontal:i.space.xxs}}:{shape:"circle",width:8,height:8,style:{marginHorizontal:i.space.xs}},e))}):null]})};CarouselSkeleton.displayName="CarouselSkeleton";const SKELETON_PAGINATION_DOTS=["first","second","third"],carouselSkeletonStyles=StyleSheet.create({container:{alignItems:"center"},paginationRow:{flexDirection:"row",justifyContent:"center"}}),Carousel=CarouselInner;Carousel.Skeleton=CarouselSkeleton;const Pagination=({count:e,currentIndex:t,scrollX:n,slideStride:r,variant:a,theme:i,labels:l})=>{const s=useMemo(()=>buildPaginationStyles(i),[i]);if("numbers"===a)return _jsx(View,{style:s.numbersWrap,children:_jsx(Text,{variant:"bodySmall",weight:"medium",color:"secondary",style:s.numbersText,accessibilityLabel:l.slideOf(t+1,e),children:`${t+1} / ${e}`})});const o=Array.from({length:e},(e,t)=>t),c="bars"===a,u=c?24:6,d=c?36:16,m=c?3:6;return _jsx(View,{style:s.dotRow,accessibilityElementsHidden:!0,importantForAccessibility:"no-hide-descendants",children:o.map(e=>{const a=[(e-1)*r,e*r,(e+1)*r],l=n.interpolate({inputRange:a,outputRange:[u,d,u],extrapolate:"clamp"}),s=n.interpolate({inputRange:a,outputRange:[.5,1,.5],extrapolate:"clamp"});return _jsx(Animated.View,{style:[{width:l,height:m,marginHorizontal:i.space.xs,borderRadius:i.radius.pill,...smoothCorners,backgroundColor:e===t?i.colors.primary:i.colors.border,opacity:s}]},e)})})},ThumbnailStrip=({data:e,currentIndex:t,renderThumbnail:n,onSelect:r,theme:a,labels:i})=>{const l=useMemo(()=>buildThumbStyles(a),[a]);return _jsx(ScrollView,{horizontal:!0,showsHorizontalScrollIndicator:!1,contentContainerStyle:l.row,accessibilityRole:"tablist",children:e.map((e,s)=>_jsx(ThumbnailItem,{item:e,index:s,isActive:s===t,renderThumbnail:n,onPress:()=>r(s),theme:a,styles:l,labels:i},s))})},ThumbnailItem=({item:e,index:t,isActive:n,renderThumbnail:r,onPress:a,theme:i,styles:l,labels:s})=>{const o=useRef(createAnimatedValue(n?1.1:1)).current;useEffect(()=>{const e=Animated.spring(o,{toValue:n?1.1:1,useNativeDriver:!0,friction:6,tension:80});return e.start(),()=>e.stop()},[n,o]);const c=useMemo(()=>r?r(e,t):e&&"object"==typeof e&&"uri"in e&&"string"==typeof e.uri?_jsx(Image,{source:{uri:e.uri},style:l.image,resizeMode:"cover"}):_jsx(View,{style:[l.placeholder,{backgroundColor:i.colors["bg-subtle"]}],children:_jsx(Text,{variant:"caption",weight:"semibold",color:"secondary",children:t+1})}),[e,t,r,i,l]);return _jsx(Pressable,{onPress:a,accessibilityRole:"tab",accessibilityState:{selected:n},"aria-selected":n,accessibilityLabel:s.goToSlide(t+1),children:_jsx(Animated.View,{style:[l.thumb,{borderColor:n?i.colors.primary:"transparent",transform:[{scale:o}]}],children:c})})},buildThumbStyles=e=>StyleSheet.create({row:{flexDirection:"row",alignItems:"center",paddingHorizontal:e.space.sm,paddingVertical:e.space.sm},thumb:{width:40,height:40,marginHorizontal:e.space.xs,borderRadius:e.radius.sm,...smoothCorners,borderWidth:2,overflow:"hidden"},image:{width:"100%",height:"100%"},placeholder:{flex:1,alignItems:"center",justifyContent:"center"}}),clamp=(e,t,n)=>Math.min(Math.max(e,t),n),buildStyles=e=>StyleSheet.create({container:{width:"100%"}}),buildPaginationStyles=e=>StyleSheet.create({dotRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:e.space.md},numbersWrap:{alignItems:"center",justifyContent:"center",paddingVertical:e.space.md},numbersText:{textAlign:"center"}});export{Carousel};export default Carousel;
@@ -1 +1 @@
1
- "use strict";export{Carousel,default}from"./Carousel.js";
1
+ "use strict";export{Carousel,DEFAULT_CAROUSEL_LABELS,default}from"./Carousel.js";
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useEffect,useMemo,useRef}from"react";import{Animated,Pressable,StyleSheet,View}from"react-native";import Svg,{Path}from"react-native-svg";import{useControllableState}from"../../hooks/index.js";import{createAnimatedValue,resolveCheckboxSize,spaceOf,useTheme}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";import{resolveHaptic,triggerHaptic}from"../../utils/hapticUtils.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{ChoiceText,hasChoiceDetail}from"../FieldBase/ChoiceText.js";import{fieldTextAsString,hasFieldText}from"../FieldBase/FieldBase.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const CHECKBOX_SHAPES=["circle"],toneColor=(e,r)=>{switch(r){case"success":return e.colors.success;case"warning":return e.colors.warning;case"danger":return e.colors.danger;default:return e.colors.primary}},toneOnColor=(e,r)=>{switch(r){case"success":return e.colors["on-success"];case"warning":return e.colors["on-warning"];case"danger":return e.colors["on-danger"];default:return e.colors["on-primary"]}},Checkbox=forwardRef((e,r)=>{const{checked:t,defaultChecked:s,onChange:o,indeterminate:i=!1,disabled:a=!1,label:l,description:n,error:c,help:d,labelLines:h,size:p="md",tone:u="primary",shape:m,accessibilityLabel:x,haptic:b,style:f,boxStyle:g,indeterminateBarStyle:y,containerStyle:C,labelStyle:S,testID:w,hitSlop:k,...j}=e,[v,T]=useControllableState({value:t,defaultValue:s??!1,onChange:o}),V=useTheme(),_=useMemo(()=>buildStyles(V),[V]),{"box-size":R}=useMemo(()=>resolveCheckboxSize(V,p),[V,p]),A=V.size.border,H=spaceOf(V,V.components.checkbox["label-gap"]),I=toneColor(V,u),L=k??6;warnInvalidValue("Checkbox","shape",m,CHECKBOX_SHAPES);const M="circle"===m,D=v||i,P=useRef(createAnimatedValue(D?1:0)).current;useEffect(()=>{const e=Animated.spring(P,{toValue:D?1:0,damping:V.motion.spring.snappy.damping,stiffness:V.motion.spring.snappy.stiffness,mass:V.motion.spring.snappy.mass,useNativeDriver:!0});return e.start(),()=>e.stop()},[D,P,V.motion.spring.snappy]);const B=P.interpolate({inputRange:[0,1],outputRange:[0,1]}),F=x??fieldTextAsString(l),O=!0===c||hasFieldText(c),E=D?I:a?V.colors.border:O?V.colors["field-border-error"]:V.colors.border,z=D?I:a?V.colors["surface-disabled"]:"transparent",W=a&&!D?V.colors["text-disabled"]:toneOnColor(V,u),K=Math.round(.72*R),N=Math.round(.55*R),X=Math.max(2,Math.round(.12*R)),U=_jsxs(Pressable,{ref:r,onPress:e=>{if(a)return;const r=resolveHaptic(b,"selection");r&&triggerHaptic(r),T(!v),j.onPressOut?.(e)},disabled:a,accessibilityRole:"checkbox",accessibilityLabel:F,accessibilityHint:j.accessibilityHint??fieldTextAsString(n),accessibilityState:{checked:i?"mixed":v,disabled:a},"aria-checked":i?"mixed":v,"aria-disabled":a,testID:w,hitSlop:L,...hitSlopMarker(L),...j,style:({pressed:e})=>[_.row,hasChoiceDetail(n,c)?_.rowTop:null,hasFieldText(d)?_.rowShrink:null,{opacity:a?.55:e?.85:1},C,f],children:[_jsx(View,{style:[_.box,{width:R,height:R,borderWidth:A,borderRadius:M?R/2:V.radius.sm,...M?{}:smoothCorners,borderColor:E,backgroundColor:z},g],children:_jsx(Animated.View,{style:[_.glyphWrap,{opacity:P,transform:[{scale:B}]}],children:i?_jsx(View,{style:[{width:N,height:X,borderRadius:V.radius.pill,...smoothCorners,backgroundColor:W},y]}):_jsx(Svg,{width:K,height:K,viewBox:"0 0 24 24",children:_jsx(Path,{d:"M5 12.5l4.5 4.5L19 7.5",stroke:W,strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})})})}),_jsx(ChoiceText,{label:l,description:n,error:c,disabled:a,labelLines:h||void 0,descriptionLines:h||void 0,style:{marginLeft:H},labelStyle:S})]});return hasFieldText(d)?_jsxs(View,{style:[_.helpRow,hasChoiceDetail(n,c)?_.rowTop:null],children:[U,_jsx(View,{style:[_.help,{marginLeft:V.space.xs}],children:d})]}):U});Checkbox.displayName="Checkbox";const buildStyles=e=>StyleSheet.create({row:{flexDirection:"row",alignItems:"center"},rowTop:{alignItems:"flex-start"},rowShrink:{flexShrink:1},helpRow:{flexDirection:"row",alignItems:"center"},help:{flexShrink:0},box:{alignItems:"center",justifyContent:"center"},glyphWrap:{alignItems:"center",justifyContent:"center"}});export{Checkbox};export default Checkbox;
1
+ "use strict";import{forwardRef,useEffect,useMemo,useRef}from"react";import{Animated,Pressable,StyleSheet,View}from"react-native";import Svg,{Path}from"react-native-svg";import{useControllableState}from"../../hooks/index.js";import{createAnimatedValue,resolveCheckboxSize,spaceOf,useTheme}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";import{resolveHaptic,triggerHaptic}from"../../utils/hapticUtils.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{ChoiceText,hasChoiceDetail}from"../FieldBase/ChoiceText.js";import{fieldTextAsString,hasFieldText}from"../FieldBase/FieldBase.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const CHECKBOX_SHAPES=["circle"],toneColor=(e,r)=>{switch(r){case"success":return e.colors.success;case"warning":return e.colors.warning;case"danger":return e.colors.danger;case"info":return e.colors.info;case"neutral":return e.colors["text-muted"];default:return e.colors.primary}},toneOnColor=(e,r)=>{switch(r){case"success":return e.colors["on-success"];case"warning":return e.colors["on-warning"];case"danger":return e.colors["on-danger"];case"info":return e.colors["on-info"];case"neutral":return e.colors["on-neutral"];default:return e.colors["on-primary"]}},Checkbox=forwardRef((e,r)=>{const{checked:t,defaultChecked:s,onChange:o,indeterminate:i=!1,disabled:a=!1,label:n,helperText:l,description:c,error:d,help:h,size:u="md",tone:p="primary",shape:m,accessibilityLabel:x,haptic:f,style:b,boxStyle:g,indeterminateBarStyle:y,containerStyle:C,labelStyle:w,testID:S,hitSlop:k,...j}=e,[v,T]=useControllableState({value:t,defaultValue:s??!1,onChange:o}),V=useTheme(),_=useMemo(()=>buildStyles(V),[V]),{"box-size":I}=useMemo(()=>resolveCheckboxSize(V,u),[V,u]),R=V.size.border,A=spaceOf(V,V.components.checkbox["label-gap"]),H=toneColor(V,p),M=k??6;warnInvalidValue("Checkbox","shape",m,CHECKBOX_SHAPES),warnInvalidValue("Checkbox","size",e.size,["sm","md","lg"]),warnInvalidValue("Checkbox","tone",e.tone,["primary","success","warning","danger","info","neutral"]);const D="circle"===m,P="string"==typeof d?d:void 0,z={description:c,helperText:l,error:P},B=v||i,F=useRef(createAnimatedValue(B?1:0)).current;useEffect(()=>{const e=Animated.spring(F,{toValue:B?1:0,damping:V.motion.spring.snappy.damping,stiffness:V.motion.spring.snappy.stiffness,mass:V.motion.spring.snappy.mass,useNativeDriver:!0});return e.start(),()=>e.stop()},[B,F,V.motion.spring.snappy]);const L=F.interpolate({inputRange:[0,1],outputRange:[0,1]}),O=x??fieldTextAsString(n),E=!0===d||hasFieldText(d),W=B?H:a?V.colors.border:E?V.colors["field-border-error"]:V.colors.border,K=B?H:a?V.colors["surface-disabled"]:"transparent",N=a&&!B?V.colors["text-disabled"]:toneOnColor(V,p),X=Math.round(.72*I),U=Math.round(.55*I),q=Math.max(2,Math.round(.12*I)),G=_jsxs(Pressable,{ref:r,onPress:e=>{if(a)return;const r=resolveHaptic(f,"selection");r&&triggerHaptic(r),T(!v),j.onPressOut?.(e)},disabled:a,accessibilityRole:"checkbox",accessibilityLabel:O,accessibilityHint:j.accessibilityHint??fieldTextAsString(l??c),accessibilityState:{checked:i?"mixed":v,disabled:a},"aria-checked":i?"mixed":v,"aria-disabled":a,testID:S,hitSlop:M,...hitSlopMarker(M),...j,style:({pressed:e})=>[_.row,hasChoiceDetail(z)?_.rowTop:null,hasFieldText(h)?_.rowShrink:null,{opacity:a?.55:e?.85:1},C,b],children:[_jsx(View,{style:[_.box,{width:I,height:I,borderWidth:R,borderRadius:D?I/2:V.radius.sm,...D?{}:smoothCorners,borderColor:W,backgroundColor:K},g],children:_jsx(Animated.View,{style:[_.glyphWrap,{opacity:F,transform:[{scale:L}]}],children:i?_jsx(View,{style:[{width:U,height:q,borderRadius:V.radius.pill,...smoothCorners,backgroundColor:N},y]}):_jsx(Svg,{width:X,height:X,viewBox:"0 0 24 24",children:_jsx(Path,{d:"M5 12.5l4.5 4.5L19 7.5",stroke:N,strokeWidth:3,strokeLinecap:"round",strokeLinejoin:"round",fill:"none"})})})}),_jsx(ChoiceText,{label:n,helperText:l,description:c,error:P,disabled:a,style:{marginLeft:A},labelStyle:w})]});return hasFieldText(h)?_jsxs(View,{style:[_.helpRow,hasChoiceDetail(z)?_.rowTop:null],children:[G,_jsx(View,{style:[_.help,{marginLeft:V.space.xs}],children:h})]}):G});Checkbox.displayName="Checkbox";const buildStyles=e=>StyleSheet.create({row:{flexDirection:"row",alignItems:"center"},rowTop:{alignItems:"flex-start"},rowShrink:{flexShrink:1},helpRow:{flexDirection:"row",alignItems:"center"},help:{flexShrink:0},box:{alignItems:"center",justifyContent:"center"},glyphWrap:{alignItems:"center",justifyContent:"center"}});export{Checkbox};export default Checkbox;
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useMemo}from"react";import{Animated,Pressable,StyleSheet,Text,View}from"react-native";import{usePressAnimation}from"../../hooks/usePressAnimation.js";import{fontFor,resolveChipSize,useTheme}from"../../theme/index.js";import{tintOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{resolveHaptic,triggerHaptic}from"../../utils/hapticUtils.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{renderSlotIcon}from"../AppIcon/slotIcon.js";import{Skeleton}from"../Skeleton/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const toneFor=(e,r)=>{switch(r){case"primary":return{base:e.colors["primary-soft"],on:e.colors.primary,ink:e.colors["primary-text"],border:e.colors.primary,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"success":return{base:e.colors["bg-muted"],on:e.colors.success,ink:e.colors["success-text"],border:e.colors.success,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"warning":return{base:e.colors["bg-muted"],on:e.colors.warning,ink:e.colors["warning-text"],border:e.colors.warning,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"danger":return{base:e.colors["bg-muted"],on:e.colors.danger,ink:e.colors["danger-text"],border:e.colors.danger,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"info":return{base:e.colors["bg-muted"],on:e.colors.info,ink:e.colors["info-text"],border:e.colors.info,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};default:return{base:e.colors["bg-muted"],on:e.colors["text-body"],ink:e.colors["text-body"],border:e.colors.border,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary}}},SOFT_FILL_OPACITY=.14,SOFT_SELECTED_FILL_OPACITY=.24,hasChipCount=e=>null!=e&&""!==e,Chip=forwardRef((e,r)=>{const{label:s,count:o,selected:t=!1,selectionMode:l="single",onPress:i,onClose:n,leftIcon:c,iconVariant:a,variant:d="filled",tone:p="neutral",size:m="md",disabled:u=!1,loading:h=!1,accessibilityLabel:b,haptic:y,style:f,textStyle:g,containerStyle:x,countStyle:S,closeButtonStyle:k,closeIconStyle:C,testID:j}=e,I=useTheme(),w=!!i&&!u,_="radio"===l,z=!!i&&(!u||_),O=hasChipCount(o),{style:v,pressIn:B,pressOut:L}=usePressAnimation({enabled:w}),M=useMemo(()=>toneFor(I,p),[I,p]),P=useMemo(()=>resolveChipSize(I,m),[I,m]),T=Math.max(0,Math.ceil((44-P["min-height"])/2)),F=_?{top:T,bottom:T}:void 0,R="filled"===d,A="soft"===d,H=(()=>{if(A){const e=t?M.selectedOn:M.on;return tintOf(e,t?.24:.14,t?M.selectedBg:M.base)}return t?R?M.selectedBg:"transparent":R?M.base:"transparent"})(),V=A?"transparent":t?M.selectedBorder:R?"transparent":M.border,D=u?I.colors["text-disabled"]:t?A?I.colors["text-body"]:M.selectedInk:M.ink,E=R||A?0:I.size.border,handlePress=()=>{if(!w)return;const e=resolveHaptic(y,"selection");e&&triggerHaptic(e),i?.()},$=b??(O?`${s}, ${o}`:s),N=_jsxs(View,{style:styles.row,children:[c?_jsx(View,{style:{marginRight:P.gap},children:renderSlotIcon(c,{color:D,size:P.icon,disabled:u},a)}):null,_jsx(Text,{style:[styles.label,{color:D,fontSize:P.text,...fontFor(I,"medium")},g],numberOfLines:1,children:s??" "}),O?_jsx(Text,{style:[styles.count,{color:D,fontSize:Math.min(I.text.xs.size,P.text),marginLeft:I.space.xs,...fontFor(I,"normal")},S],numberOfLines:1,children:o}):null,n?_jsx(Pressable,{onPress:()=>{u||(!1!==y&&triggerHaptic("impactLight"),n?.())},disabled:u,accessibilityRole:"button",accessibilityLabel:`Remove ${s}`,accessibilityState:{disabled:u},"aria-disabled":u,hitSlop:6,...hitSlopMarker(6),style:({pressed:e})=>[styles.close,{width:P["close-size"],height:P["close-size"],borderRadius:P["close-size"]/2,...smoothCorners,marginLeft:P.gap,backgroundColor:e?I.colors["surface-pressed"]:I.colors["surface-hover"]},k],children:_jsx(Text,{style:[{color:D,fontSize:P["close-text"],...fontFor(I,"bold"),lineHeight:P["close-text"]+2},C],maxFontSizeMultiplier:1,children:"×"})}):null]}),Y={paddingHorizontal:P["padding-x"],paddingVertical:P["padding-y"],minHeight:P["min-height"],borderRadius:I.radius.pill,...smoothCorners,overflow:"hidden",backgroundColor:H,borderWidth:E,borderColor:V,opacity:u?.55:1};let U;return U=z?_jsx(Animated.View,{style:[v,{alignSelf:"flex-start",borderRadius:I.radius.pill,...smoothCorners,overflow:"hidden"}],children:_jsx(Pressable,{ref:r,onPress:handlePress,onPressIn:B,onPressOut:L,disabled:!w,accessibilityRole:_?"radio":"multiple"===l?"checkbox":"button",accessibilityLabel:$,accessibilityState:_||"multiple"===l?{checked:t,disabled:u}:{selected:t,disabled:u},"aria-checked":_||"multiple"===l?t:void 0,"aria-selected":_||"multiple"===l?void 0:t,"aria-disabled":u,hitSlop:F,...F?hitSlopMarker(F):{},android_ripple:{color:I.colors["surface-pressed"],borderless:!1},testID:j,style:({pressed:e})=>[styles.base,Y,e&&"outlined"===d?{backgroundColor:I.colors["surface-pressed"]}:null,x,f],children:N})}):_jsx(View,{ref:r,style:[styles.base,Y,x,f],accessible:!0,accessibilityRole:"text",accessibilityLabel:$,accessibilityState:{selected:t,disabled:u},"aria-selected":t,"aria-disabled":u,testID:j,children:N}),h?_jsx(ChipSkeleton,{...e}):U});Chip.displayName="Chip";const ChipSkeleton=({label:e,count:r,size:s="md",leftIcon:o,onClose:t,style:l,containerStyle:i})=>{const n=useTheme(),c=resolveChipSize(n,s),a=Math.max(40,Math.min(120,7*(e??"").length)),d=c["min-height"],p=d/2,m=a+2*c["padding-x"]+(hasChipCount(r)?c.gap/2+7*String(r).length:0)+(void 0!==o?c.gap+14:0)+(void 0!==t?c.gap+c["close-size"]:0);return _jsx(Skeleton,{width:m,height:d,radius:p,style:[{alignSelf:"flex-start"},i,l]})};ChipSkeleton.displayName="ChipSkeleton",Chip.Skeleton=ChipSkeleton;const styles=StyleSheet.create({base:{alignSelf:"flex-start",flexDirection:"row",alignItems:"center",justifyContent:"center"},row:{flexDirection:"row",alignItems:"center"},label:{flexShrink:1,textAlign:"center"},count:{flexShrink:0,fontVariant:["tabular-nums"]},close:{alignItems:"center",justifyContent:"center"}});export{Chip};export default Chip;
1
+ "use strict";import{forwardRef,useMemo}from"react";import{Animated,Pressable,StyleSheet,View}from"react-native";import{usePressAnimation}from"../../hooks/usePressAnimation.js";import{resolveChipSize,useTheme}from"../../theme/index.js";import{tintOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{resolveHaptic,triggerHaptic}from"../../utils/hapticUtils.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{renderSlotIcon}from"../AppIcon/slotIcon.js";import{Skeleton}from"../Skeleton/index.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const DEFAULT_CHIP_LABELS=Object.freeze({remove:e=>`Remove ${e}`});const toneFor=(e,r)=>{switch(r){case"primary":return{base:e.colors["primary-soft"],on:e.colors.primary,ink:e.colors["primary-text"],border:e.colors.primary,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"success":return{base:e.colors["bg-muted"],on:e.colors.success,ink:e.colors["success-text"],border:e.colors.success,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"warning":return{base:e.colors["bg-muted"],on:e.colors.warning,ink:e.colors["warning-text"],border:e.colors.warning,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"danger":return{base:e.colors["bg-muted"],on:e.colors.danger,ink:e.colors["danger-text"],border:e.colors.danger,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};case"info":return{base:e.colors["bg-muted"],on:e.colors.info,ink:e.colors["info-text"],border:e.colors.info,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary};default:return{base:e.colors["bg-muted"],on:e.colors["text-body"],ink:e.colors["text-body"],border:e.colors.border,selectedBg:e.colors["primary-soft"],selectedOn:e.colors.primary,selectedInk:e.colors["primary-text"],selectedBorder:e.colors.primary}}},SOFT_FILL_OPACITY=.14,SOFT_SELECTED_FILL_OPACITY=.24,hasChipCount=e=>null!=e&&""!==e,Chip=forwardRef((e,r)=>{const{label:s,count:t,selected:o=!1,selectionMode:i="single",onPress:l,onRemove:n,leftIcon:a,iconVariant:c,variant:d="soft",tone:p="neutral",size:m="md",disabled:u=!1,loading:h=!1,accessibilityLabel:b,haptic:y,style:g,textStyle:f,containerStyle:x,countStyle:S,closeButtonStyle:C,closeIconStyle:k,labels:I,testID:v}=e;warnInvalidValue("Chip","variant",e.variant,["solid","soft","outline"]),warnInvalidValue("Chip","tone",e.tone,["primary","neutral","success","warning","danger","info"]),warnInvalidValue("Chip","size",e.size,["sm","md"]),warnInvalidValue("Chip","selectionMode",e.selectionMode,["single","multiple","radio"]);const j=useTheme(),w=useMemo(()=>({...DEFAULT_CHIP_LABELS,...I}),[I]),_=!!l&&!u,z="radio"===i,L=!!l&&(!u||z),B=hasChipCount(t),{style:O,pressIn:M,pressOut:P}=usePressAnimation({enabled:_}),T=useMemo(()=>toneFor(j,p),[j,p]),V=useMemo(()=>resolveChipSize(j,m),[j,m]),A=Math.max(0,Math.ceil((44-V["min-height"])/2)),R=z?{top:A,bottom:A}:void 0,H="solid"===d,F="soft"===d,D=(()=>{if(F){const e=o?T.selectedOn:T.on;return tintOf(e,o?.24:.14,o?T.selectedBg:T.base)}return o?H?T.selectedBg:"transparent":H?T.base:"transparent"})(),E=F?"transparent":o?T.selectedBorder:H?"transparent":T.border,U=u?j.colors["text-disabled"]:o?F?j.colors["text-body"]:T.selectedInk:T.ink,$=H||F?0:j.size.border,handlePress=()=>{if(!_)return;const e=resolveHaptic(y,"selection");e&&triggerHaptic(e),l?.()},N=b??(B?`${s}, ${t}`:s),Y=_jsxs(View,{style:styles.row,children:[a?_jsx(View,{style:{marginRight:V.gap},children:renderSlotIcon(a,{color:U,size:V.icon,disabled:u},c)}):null,_jsx(Text,{variant:"label",weight:"medium",numberOfLines:1,style:[styles.label,{color:U,fontSize:V.text,lineHeight:Math.round(V.text*j.leading.body)},f],children:s??" "}),B?_jsx(Text,{variant:"caption",numberOfLines:1,style:[styles.count,{color:U,fontSize:Math.min(j.text.xs.size,V.text),marginLeft:j.space.xs},S],children:t}):null,n?_jsx(Pressable,{onPress:()=>{u||(!1!==y&&triggerHaptic("impactLight"),n?.())},disabled:u,accessibilityRole:"button",accessibilityLabel:w.remove(s),accessibilityState:{disabled:u},"aria-disabled":u,hitSlop:6,...hitSlopMarker(6),style:({pressed:e})=>[styles.close,{width:V["close-size"],height:V["close-size"],borderRadius:V["close-size"]/2,...smoothCorners,marginLeft:V.gap,backgroundColor:e?j.colors["surface-pressed"]:j.colors["surface-hover"]},C],children:_jsx(Text,{variant:"label",weight:"bold",maxFontSizeMultiplier:1,style:[{color:U,fontSize:V["close-text"],lineHeight:V["close-text"]+2},k],children:"×"})}):null]}),W={paddingHorizontal:V["padding-x"],paddingVertical:V["padding-y"],minHeight:V["min-height"],borderRadius:j.radius.pill,...smoothCorners,overflow:"hidden",backgroundColor:D,borderWidth:$,borderColor:E,opacity:u?.55:1};let q;return q=L?_jsx(Animated.View,{style:[O,{alignSelf:"flex-start",borderRadius:j.radius.pill,...smoothCorners,overflow:"hidden"}],children:_jsx(Pressable,{ref:r,onPress:handlePress,onPressIn:M,onPressOut:P,disabled:!_,accessibilityRole:z?"radio":"multiple"===i?"checkbox":"button",accessibilityLabel:N,accessibilityState:z||"multiple"===i?{checked:o,disabled:u}:{selected:o,disabled:u},"aria-checked":z||"multiple"===i?o:void 0,"aria-selected":z||"multiple"===i?void 0:o,"aria-disabled":u,hitSlop:R,...R?hitSlopMarker(R):{},android_ripple:{color:j.colors["surface-pressed"],borderless:!1},testID:v,style:({pressed:e})=>[styles.base,W,e&&"outline"===d?{backgroundColor:j.colors["surface-pressed"]}:null,x,g],children:Y})}):_jsx(View,{ref:r,style:[styles.base,W,x,g],accessible:!0,accessibilityRole:"text",accessibilityLabel:N,accessibilityState:{selected:o,disabled:u},"aria-selected":o,"aria-disabled":u,testID:v,children:Y}),h?_jsx(ChipSkeleton,{...e}):q});Chip.displayName="Chip";const ChipSkeleton=({label:e,count:r,size:s="md",leftIcon:t,onRemove:o,style:i,containerStyle:l})=>{const n=useTheme(),a=resolveChipSize(n,s),c=Math.max(40,Math.min(120,7*(e??"").length)),d=a["min-height"],p=d/2,m=c+2*a["padding-x"]+(hasChipCount(r)?a.gap/2+7*String(r).length:0)+(void 0!==t?a.gap+14:0)+(void 0!==o?a.gap+a["close-size"]:0);return _jsx(Skeleton,{width:m,height:d,radius:p,style:[{alignSelf:"flex-start"},l,i]})};ChipSkeleton.displayName="ChipSkeleton",Chip.Skeleton=ChipSkeleton;const styles=StyleSheet.create({base:{alignSelf:"flex-start",flexDirection:"row",alignItems:"center",justifyContent:"center"},row:{flexDirection:"row",alignItems:"center"},label:{flexShrink:1,textAlign:"center"},count:{flexShrink:0,fontVariant:["tabular-nums"]},close:{alignItems:"center",justifyContent:"center"}});export{Chip};export default Chip;
@@ -1 +1 @@
1
- "use strict";export{Chip,default}from"./Chip.js";
1
+ "use strict";export{Chip,DEFAULT_CHIP_LABELS,default}from"./Chip.js";
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useCallback,useMemo}from"react";import{Pressable,StyleSheet,Text,View}from"react-native";import{useControllableState}from"../../hooks/index.js";import{fontFor,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{tintOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{renderSlotIcon}from"../AppIcon/slotIcon.js";import{RadioDot}from"../Radio/RadioDot.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const sizeTokensOf=e=>({sm:{paddingHorizontal:e.space.sm,chipPaddingHorizontal:e.space.md,paddingVertical:e.space.xs,fontSize:e.text.sm.size,minHeight:32,iconSize:14},md:{paddingHorizontal:e.space.md,chipPaddingHorizontal:e.space.lg,paddingVertical:e.space.sm,fontSize:e.text.base.size,minHeight:40,iconSize:16},lg:{paddingHorizontal:e.space.lg,chipPaddingHorizontal:e.space.xl,paddingVertical:e.space.md,fontSize:e.text.lg.size,minHeight:48,iconSize:18}}),ChoiceGroup=forwardRef((e,i)=>{const{options:o,getOptionLabel:t,getOptionValue:r,getOptionDisabled:l,getOptionDescription:s,getOptionIcon:a,getOptionColor:n,renderOption:c,variant:d="card",indicatorPosition:p="trailing",direction:u="row",gap:m,wrap:b=!1,fullWidth:g,disabled:h=!1,size:x="md",labelLines:f=1,descriptionLines:z=2,haptic:y,accessibilityLabel:C,style:S,optionStyle:j,testID:H}=e,V=useTheme(),k=useMemo(()=>buildStyles(V),[V]),w=useMemo(()=>sizeTokensOf(V)[x],[V,x]),O=useCallback(e=>t?t(e):e.label??"",[t]),_=useCallback(e=>r?r(e):e.value,[r]),v=useCallback(e=>l?l(e):!0===e.disabled,[l]),D=useCallback(e=>s?s(e):e.description,[s]),L=useCallback(e=>a?a(e):e.icon,[a]),T=useCallback(e=>n?n(e):e.color,[n]),P="multiple"===e.selectionMode,{min:R,max:I}=e,[F,G]=useControllableState({value:e.value,defaultValue:e.defaultValue??(P?[]:void 0),onChange:e.onChange}),M=Array.isArray(F)?F:[],W=useCallback(e=>{const i=_(e);if(P){const e=M.includes(i);if(e&&null!=R&&M.length<=R)return;if(!e&&null!=I&&M.length>=I)return;const o=resolveHaptic(y,"selection");return o&&triggerHaptic(o),void G(e?M.filter(e=>e!==i):[...M,i])}const o=resolveHaptic(y,"selection");o&&triggerHaptic(o),G(i)},[y,P,R,I,M,G,_]),A=g??("card"===d&&"row"===u&&!b),$=V.radius.md,surfaceFor=(e,i,o)=>i?{borderColor:V.colors.border,backgroundColor:V.colors["surface-disabled"]}:{borderColor:e?o:V.colors.border,backgroundColor:e?tintOf(o,.12,V.colors["surface-selected"]):V.colors.bg},renderIcon=(e,i,o,t)=>{const r=L(e);if(null==r)return null;return renderSlotIcon("string"==typeof r&&i?{name:r,variant:"bold"}:r,{color:o,size:w.iconSize,disabled:t})},renderChip=e=>{const{option:i,selected:o,disabled:t,color:r}=e,l=t?V.colors["text-disabled"]:o?r:V.colors["text-body"],s=renderIcon(i,o,l,t);return _jsxs(View,{style:[k.chip,{minHeight:w.minHeight,paddingHorizontal:w.chipPaddingHorizontal,paddingVertical:w.paddingVertical,borderRadius:V.radius.pill,...smoothCorners,borderWidth:V.size.border,...surfaceFor(o,t,r),columnGap:V.space.xs}],children:[s?_jsx(View,{children:s}):null,_jsx(Text,{style:[k.cardLabel,{color:l,fontSize:w.fontSize,...fontFor(V,"medium")}],numberOfLines:f,ellipsizeMode:"tail",children:O(i)})]})},renderDefaultCard=e=>{const{option:i,selected:o,disabled:t,color:r}=e,l=T(i),s=t?V.colors["text-disabled"]:l??V.colors["text-body"],a=D(i),n=renderIcon(i,o,s,t),c=_jsx(RadioDot,{selected:o,color:r,disabled:t,size:x});return _jsxs(View,{style:[k.card,{minHeight:w.minHeight,paddingHorizontal:w.paddingHorizontal,paddingVertical:w.paddingVertical,borderRadius:$,...smoothCorners,borderWidth:V.size.border,...surfaceFor(o,t,r),columnGap:V.space.sm}],children:["leading"===p?c:null,n?_jsx(View,{children:n}):null,_jsxs(View,{style:k.cardTextWrap,children:[_jsx(Text,{style:[k.cardLabel,{color:s,fontSize:w.fontSize,...fontFor(V,"medium")}],numberOfLines:f,ellipsizeMode:"tail",children:O(i)}),a?_jsx(Text,{style:[k.cardDescription,{color:o?V.colors["text-muted"]:V.colors["text-subtle"],fontSize:V.text.xs.size}],numberOfLines:z,ellipsizeMode:"tail",children:a}):null]}),"trailing"===p?c:null]})};return _jsx(View,{ref:i,accessibilityRole:P?void 0:"radiogroup",accessibilityLabel:C,accessibilityState:{disabled:h},"aria-disabled":h,testID:H,style:[{flexDirection:u,gap:m??V.space.sm,flexWrap:b?"wrap":"nowrap"},S],children:o.map((e,i)=>{const o=_(e),t=P?M.includes(o):F===o,r=P&&null!=I&&!t&&M.length>=I,l=h||r||v(e),s=T(e)??V.colors.primary,a=c||"card"!==d?void 0:D(e);return _jsx(Pressable,{onPress:()=>{l||W(e)},disabled:l,accessibilityRole:P?"checkbox":"radio",accessibilityLabel:a?`${O(e)}, ${a}`:O(e),accessibilityState:{checked:t,disabled:l},"aria-checked":t,"aria-disabled":l,style:[A?k.stretchOption:null,{opacity:l&&c?.55:1},j],children:({pressed:o})=>{const r={option:e,index:i,selected:t,pressed:o&&!l,disabled:l,color:s};return _jsx(_Fragment,{children:c?c(r):"chip"===d?renderChip(r):renderDefaultCard(r)})}},String(o))})})});ChoiceGroup.displayName="ChoiceGroup";const buildStyles=e=>StyleSheet.create({stretchOption:{flex:1},card:{flexDirection:"row",alignItems:"center"},chip:{flexDirection:"row",alignItems:"center",justifyContent:"center"},cardTextWrap:{flex:1},cardLabel:{includeFontPadding:!1},cardDescription:{includeFontPadding:!1,marginTop:e.space.xxs}});export{ChoiceGroup};export default ChoiceGroup;
1
+ "use strict";import{forwardRef,useCallback,useMemo}from"react";import{Pressable,StyleSheet,View}from"react-native";import{useControllableState}from"../../hooks/index.js";import{useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{tintOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{renderSlotIcon}from"../AppIcon/slotIcon.js";import{hasChoiceDetail}from"../FieldBase/ChoiceText.js";import{RadioDot}from"../Radio/RadioDot.js";import{Text}from"../Text/index.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const sizeTokensOf=e=>({sm:{paddingHorizontal:e.space.sm,chipPaddingHorizontal:e.space.md,paddingVertical:e.space.xs,fontSize:e.text.sm.size,minHeight:32,iconSize:14},md:{paddingHorizontal:e.space.md,chipPaddingHorizontal:e.space.lg,paddingVertical:e.space.sm,fontSize:e.text.base.size,minHeight:40,iconSize:16},lg:{paddingHorizontal:e.space.lg,chipPaddingHorizontal:e.space.xl,paddingVertical:e.space.md,fontSize:e.text.lg.size,minHeight:48,iconSize:18}}),ChoiceGroup=forwardRef((e,i)=>{const{options:o,getOptionLabel:t,getOptionValue:r,isOptionDisabled:l,getOptionDescription:a,getOptionIcon:s,getOptionColor:n,renderOption:d,variant:c="card",indicatorPosition:p="trailing",direction:u="row",gap:m,wrap:g=!1,fullWidth:h,disabled:b=!1,size:x="md",labelLines:f,descriptionLines:y=2,haptic:z,accessibilityLabel:C,style:j,optionStyle:v,description:S,helperText:w,error:H,testID:V}=e,T=useTheme(),_=useMemo(()=>buildStyles(T),[T]),k=useMemo(()=>sizeTokensOf(T)[x],[T,x]);warnInvalidValue("ChoiceGroup","variant",e.variant,["card","chip"]),warnInvalidValue("ChoiceGroup","size",e.size,["sm","md","lg"]),warnInvalidValue("ChoiceGroup","direction",e.direction,["row","column"]),warnInvalidValue("ChoiceGroup","indicatorPosition",e.indicatorPosition,["leading","trailing"]),warnInvalidValue("ChoiceGroup","selectionMode",e.selectionMode,["single","multiple"]);const I=useCallback(e=>t?t(e):e.label??"",[t]),O=useCallback(e=>r?r(e):e.value,[r]),D=useCallback(e=>l?l(e):!0===e.disabled,[l]),L=useCallback(e=>a?a(e):e.description,[a]),G=useCallback(e=>s?s(e):e.icon,[s]),M=useCallback(e=>n?n(e):e.color,[n]),P="multiple"===e.selectionMode,{min:R,max:F}=e,[W,A]=useControllableState({value:e.value,defaultValue:e.defaultValue??(P?[]:void 0),onChange:e.onChange}),B=Array.isArray(W)?W:[],$=useCallback(e=>{const i=O(e);if(P){const e=B.includes(i);if(e&&null!=R&&B.length<=R)return;if(!e&&null!=F&&B.length>=F)return;const o=resolveHaptic(z,"selection");return o&&triggerHaptic(o),void A(e?B.filter(e=>e!==i):[...B,i])}const o=resolveHaptic(z,"selection");o&&triggerHaptic(o),A(i)},[z,P,R,F,B,A,O]),N=h??("card"===c&&"row"===u&&!g),q=T.radius.md,surfaceFor=(e,i,o)=>i?{borderColor:T.colors.border,backgroundColor:T.colors["surface-disabled"]}:{borderColor:e?o:T.colors.border,backgroundColor:e?tintOf(o,.12,T.colors["surface-selected"]):T.colors.bg},renderIcon=(e,i,o,t)=>{const r=G(e);if(null==r)return null;return renderSlotIcon("string"==typeof r&&i?{name:r,variant:"bold"}:r,{color:o,size:k.iconSize,disabled:t})},renderChip=e=>{const{option:i,selected:o,disabled:t,color:r}=e,l=t?T.colors["text-disabled"]:o?r:T.colors["text-body"],a=renderIcon(i,o,l,t);return _jsxs(View,{style:[_.chip,{minHeight:k.minHeight,paddingHorizontal:k.chipPaddingHorizontal,paddingVertical:k.paddingVertical,borderRadius:T.radius.pill,...smoothCorners,borderWidth:T.size.border,...surfaceFor(o,t,r),columnGap:T.space.xs}],children:[a?_jsx(View,{children:a}):null,_jsx(Text,{weight:"medium",numberOfLines:f,ellipsizeMode:"tail",style:[_.cardLabel,{color:l,fontSize:k.fontSize,lineHeight:Math.round(k.fontSize*T.leading.body)}],children:I(i)})]})},renderDefaultCard=e=>{const{option:i,selected:o,disabled:t,color:r}=e,l=M(i),a=t?T.colors["text-disabled"]:l??T.colors["text-body"],s=L(i),n=renderIcon(i,o,a,t),d=_jsx(RadioDot,{selected:o,color:r,disabled:t,size:x});return _jsxs(View,{style:[_.card,{minHeight:k.minHeight,paddingHorizontal:k.paddingHorizontal,paddingVertical:k.paddingVertical,borderRadius:q,...smoothCorners,borderWidth:T.size.border,...surfaceFor(o,t,r),columnGap:T.space.sm}],children:["leading"===p?d:null,n?_jsx(View,{children:n}):null,_jsxs(View,{style:_.cardTextWrap,children:[_jsx(Text,{weight:"medium",numberOfLines:f,ellipsizeMode:"tail",style:[_.cardLabel,{color:a,fontSize:k.fontSize,lineHeight:Math.round(k.fontSize*T.leading.body)}],children:I(i)}),s?_jsx(Text,{numberOfLines:y,ellipsizeMode:"tail",style:[_.cardDescription,{color:o?T.colors["text-muted"]:T.colors["text-subtle"],fontSize:T.text.xs.size,lineHeight:Math.round(T.text.xs.size*T.leading.body)}],children:s}):null]}),"trailing"===p?d:null]})},E="string"==typeof H&&""!==H?H:void 0,J=!0===H||void 0!==E?null:w,K=_jsx(View,{ref:i,accessibilityRole:P?void 0:"radiogroup",accessibilityLabel:C,accessibilityState:{disabled:b},"aria-disabled":b,testID:V,style:[{flexDirection:u,gap:m??T.space.sm,flexWrap:g?"wrap":"nowrap"},j],children:o.map((e,i)=>{const o=O(e),t=P?B.includes(o):W===o,r=P&&null!=F&&!t&&B.length>=F,l=b||r||D(e),a=M(e)??T.colors.primary,s=d||"card"!==c?void 0:L(e);return _jsx(Pressable,{onPress:()=>{l||$(e)},disabled:l,accessibilityRole:P?"checkbox":"radio",accessibilityLabel:s?`${I(e)}, ${s}`:I(e),accessibilityState:{checked:t,disabled:l},"aria-checked":t,"aria-disabled":l,style:[N?_.stretchOption:null,{opacity:l&&d?.55:1},v],children:({pressed:o})=>{const r={option:e,index:i,selected:t,pressed:o&&!l,disabled:l,color:a};return _jsx(_Fragment,{children:d?d(r):"chip"===c?renderChip(r):renderDefaultCard(r)})}},String(o))})});return hasChoiceDetail({description:S,error:E,helperText:J??void 0})?_jsxs(View,{children:[S?_jsx(Text,{variant:"bodySmall",color:"secondary",style:{marginBottom:T.space.xs},children:S}):null,K,void 0!==E?_jsx(Text,{variant:"caption",color:"danger",accessibilityLiveRegion:"polite",style:{marginTop:T.space.xs},children:E}):J?_jsx(Text,{variant:"caption",color:"tertiary",style:{marginTop:T.space.xs},children:J}):null]}):K});ChoiceGroup.displayName="ChoiceGroup";const buildStyles=e=>StyleSheet.create({stretchOption:{flex:1},card:{flexDirection:"row",alignItems:"center"},chip:{flexDirection:"row",alignItems:"center",justifyContent:"center"},cardTextWrap:{flex:1},cardLabel:{includeFontPadding:!1},cardDescription:{includeFontPadding:!1,marginTop:e.space.xxs}});export{ChoiceGroup};export default ChoiceGroup;
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useCallback,useMemo,useState}from"react";import{Platform,StyleSheet,TextInput,View}from"react-native";import{KeyboardStickyView}from"react-native-keyboard-controller";import{useSafeAreaInsets}from"react-native-safe-area-context";import{useControllableState}from"../../hooks/useControllableState.js";import{useTheme}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";import{resolveFieldTextStyle}from"../FieldBase/FieldBase.js";import{IconButton}from"../IconButton/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const MIN_BOX=44;export const Composer=forwardRef(({onSend:e,value:o,onChangeText:t,placeholder:a="Message",accessibilityLabel:s,sendLabel:i="Send",busy:r=!1,disabled:l=!1,maxLength:n,maxLines:d=5,leading:c,trailing:b,above:m,below:p,keyboardAware:u=!0,keyboardOffset:h,safeArea:x=!0,autoFocus:f,haptic:g,style:y,testID:S},C)=>{const j=useTheme(),v=useSafeAreaInsets(),w=useMemo(()=>buildStyles(j),[j]),[I,k]=useControllableState({value:o,defaultValue:"",onChange:t}),T=I.trim(),V=r||l||""===T,_=x?v.bottom:0,z=h??_,B=resolveFieldTextStyle(j,{disabled:l}),D=j.text.base.size,F=Math.round(D*j.leading.body),L=(44-F)/2,M=F*d+2*L,[H,A]=useState(void 0),P=useCallback(e=>{const o=e.nativeEvent.contentSize.height+2*L;A(Math.min(Math.max(o,44),M))},[L,M]),O=useCallback(()=>{V||(k(""),e(T))},[V,k,e,T]),R=_jsxs(View,{style:[w.bar,{paddingBottom:j.space.sm+_},y],testID:S,children:[m,_jsxs(View,{style:w.row,children:[c,_jsx(View,{style:[w.box,l?w.boxDisabled:null],children:_jsx(TextInput,{ref:C,value:I,onChangeText:k,multiline:!0,maxLength:n,editable:!l,autoFocus:f,placeholder:a,placeholderTextColor:B.placeholderColor,selectionColor:j.colors["field-caret"],accessibilityLabel:s??a,accessibilityState:{disabled:l},"aria-disabled":l,onContentSizeChange:"web"===Platform.OS?P:void 0,style:[w.input,{color:B.color,...B.weightStyle,fontSize:D,lineHeight:F,paddingVertical:L,maxHeight:M,height:"web"===Platform.OS?H:void 0}],testID:S?`${S}-input`:void 0})}),b,_jsx(IconButton,{icon:"send",accessibilityLabel:i,variant:"solid",tone:"primary",disabled:V,loading:r,haptic:g,onPress:O,testID:S?`${S}-send`:void 0})]}),p]});return u?_jsx(KeyboardStickyView,{offset:{closed:0,opened:z},children:R}):R});Composer.displayName="Composer";const buildStyles=e=>StyleSheet.create({bar:{gap:e.space.xs,paddingHorizontal:e.space.md,paddingTop:e.space.sm,backgroundColor:e.colors.bg,borderTopWidth:StyleSheet.hairlineWidth,borderTopColor:e.colors["border-subtle"]},row:{flexDirection:"row",alignItems:"flex-end",gap:e.space.sm},box:{flex:1,minHeight:44,justifyContent:"center",backgroundColor:e.colors["field-bg"],borderRadius:e.radius.pill,...smoothCorners,paddingHorizontal:e.space.md},boxDisabled:{backgroundColor:e.colors["field-bg-disabled"]},input:{margin:e.space.none,paddingHorizontal:e.space.none,includeFontPadding:!1,textAlignVertical:"top"}});export default Composer;
1
+ "use strict";import{forwardRef,useCallback,useMemo,useState}from"react";import{Platform,StyleSheet,TextInput,View}from"react-native";import{KeyboardStickyView}from"react-native-keyboard-controller";import{useSafeAreaInsets}from"react-native-safe-area-context";import{useControllableState}from"../../hooks/useControllableState.js";import{useTheme}from"../../theme/index.js";import{smoothCorners}from"../../utils/corners.js";import{resolveFieldTextStyle}from"../FieldBase/FieldBase.js";import{IconButton}from"../IconButton/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const DEFAULT_COMPOSER_LABELS=Object.freeze({send:"Send",message:"Message"});const MIN_BOX=44;export const Composer=forwardRef(({onSend:e,value:o,onChangeText:t,placeholder:a,accessibilityLabel:s,labels:i,loading:r=!1,disabled:l=!1,maxLength:n,maxLines:d=5,leading:c,trailing:m,above:b,below:p,keyboardAware:u=!0,keyboardOffset:g,safeArea:h=!0,autoFocus:x,haptic:f,style:S,testID:y},C)=>{const j=useTheme(),v=useSafeAreaInsets(),w=useMemo(()=>buildStyles(j),[j]),L=i?{...DEFAULT_COMPOSER_LABELS,...i}:DEFAULT_COMPOSER_LABELS,[T,_]=useControllableState({value:o,defaultValue:"",onChange:t}),I=T.trim(),k=r||l||""===I,A=h?v.bottom:0,O=g??A,B=resolveFieldTextStyle(j,{disabled:l}),D=j.text.base.size,E=Math.round(D*j.leading.body),F=(44-E)/2,M=E*d+2*F,[V,z]=useState(void 0),P=useCallback(e=>{const o=e.nativeEvent.contentSize.height+2*F;z(Math.min(Math.max(o,44),M))},[F,M]),H=useCallback(()=>{k||(_(""),e(I))},[k,_,e,I]),R=_jsxs(View,{style:[w.bar,{paddingBottom:j.space.sm+A},S],testID:y,children:[b,_jsxs(View,{style:w.row,children:[c,_jsx(View,{style:[w.box,l?w.boxDisabled:null],children:_jsx(TextInput,{ref:C,value:T,onChangeText:_,multiline:!0,maxLength:n,editable:!l,autoFocus:x,placeholder:a??L.message,placeholderTextColor:B.placeholderColor,selectionColor:j.colors["field-caret"],accessibilityLabel:s??a??L.message,accessibilityState:{disabled:l},"aria-disabled":l,onContentSizeChange:"web"===Platform.OS?P:void 0,style:[w.input,{color:B.color,...B.weightStyle,fontSize:D,lineHeight:E,paddingVertical:F,maxHeight:M,height:"web"===Platform.OS?V:void 0}],testID:y?`${y}-input`:void 0})}),m,_jsx(IconButton,{icon:"send",accessibilityLabel:L.send,variant:"solid",tone:"primary",disabled:k,loading:r,haptic:f,onPress:H,testID:y?`${y}-send`:void 0})]}),p]});return u?_jsx(KeyboardStickyView,{offset:{closed:0,opened:O},children:R}):R});Composer.displayName="Composer";const buildStyles=e=>StyleSheet.create({bar:{gap:e.space.xs,paddingHorizontal:e.space.md,paddingTop:e.space.sm,backgroundColor:e.colors.bg,borderTopWidth:StyleSheet.hairlineWidth,borderTopColor:e.colors["border-subtle"]},row:{flexDirection:"row",alignItems:"flex-end",gap:e.space.sm},box:{flex:1,minHeight:44,justifyContent:"center",backgroundColor:e.colors["field-bg"],borderRadius:e.radius.pill,...smoothCorners,paddingHorizontal:e.space.md},boxDisabled:{backgroundColor:e.colors["field-bg-disabled"]},input:{margin:e.space.none,paddingHorizontal:e.space.none,includeFontPadding:!1,textAlignVertical:"top"}});export default Composer;
@@ -1 +1 @@
1
- "use strict";export{Composer,default}from"./Composer.js";
1
+ "use strict";export{Composer,DEFAULT_COMPOSER_LABELS,default}from"./Composer.js";
@@ -1 +1 @@
1
- "use strict";import{forwardRef,useCallback,useEffect,useImperativeHandle,useMemo,useState}from"react";import{StyleSheet,useWindowDimensions,View}from"react-native";import Animated,{cancelAnimation,Easing,runOnJS,useAnimatedStyle,useSharedValue,withRepeat,withTiming}from"react-native-reanimated";import Svg,{Path,Polygon}from"react-native-svg";import{useReducedMotion}from"../../hooks/index.js";import{useTheme}from"../../theme/index.js";import{jsx as _jsx}from"react/jsx-runtime";const TAU=2*Math.PI,DEG=Math.PI/180,SPEED_FACTOR={slow:1.6,normal:1,fast:.6};export const DEFAULT_PHYSICS={velocity:1,drag:1,fallSpeed:1,spread:0};const PRESET_SHAPES={pop:["strip","strip","strip","square","circle","triangle","star","streamer"],rain:["strip","strip","strip","circle","square"],fireworks:["circle","circle","star","star","triangle","strip"]},rand=(e,a)=>e+Math.random()*(a-e),pick=e=>e[Math.floor(Math.random()*e.length)]??e[0],commonPiece=(e,a)=>({color:e.colors[a%e.colors.length]??e.colors[0],size:e.baseSize*rand(.6,1.4),shape:pick(e.shapes),rotations:rand(1,5),rotateDir:Math.random()<.5?1:-1,flutterFreq:rand(2,5)}),popPiece=(e,a)=>{const r=e.physics.spread>0?e.physics.spread/2:100,t=(-90+rand(-r,r))*DEG,s=rand(1.8,4.2)*e.physics.velocity;return{...commonPiece(e,a),x0Frac:e.originXFrac,y0Frac:e.originYFrac,vxFrac:Math.cos(t)*s*.7,vyFrac:Math.sin(t)*s,drag:rand(5.5,7.5)*e.physics.drag,terminalFrac:rand(.22,.44)*e.physics.fallSpeed,delay:rand(0,.05),swayAmp:rand(4,16),swayFreq:rand(1,3)}},rainPiece=(e,a)=>({...commonPiece(e,a),x0Frac:Math.random(),y0Frac:-.05,vxFrac:rand(-.12,.12)*e.physics.velocity,vyFrac:rand(.05,.25)*e.physics.velocity,drag:rand(2.5,4)*e.physics.drag,terminalFrac:rand(.95,1.35)*e.physics.fallSpeed,delay:rand(0,.35),swayAmp:rand(10,30),swayFreq:rand(1,3)}),FIREWORK_BURSTS=4,buildFireworks=(e,a)=>{const r=Math.max(1,Math.round(e/4)),t=a.physics.spread>0?a.physics.spread/2:180,s=[];for(let i=0;i<4&&s.length<e;i+=1){const o=rand(.18,.82),n=rand(.18,.52),c=i/4*.5+rand(0,.06);for(let i=0;i<r&&s.length<e;i+=1){const e=rand(-t,t)*DEG,r=rand(1.4,3.4)*a.physics.velocity;s.push({...commonPiece(a,s.length),x0Frac:o,y0Frac:n,vxFrac:Math.cos(e)*r*.7,vyFrac:Math.sin(e)*r,drag:rand(6.5,8.5)*a.physics.drag,terminalFrac:rand(.18,.38)*a.physics.fallSpeed,delay:c,swayAmp:rand(3,12),swayFreq:rand(1,3)})}}return s};export const buildPieces=(e,a,r)=>{if("fireworks"===a)return buildFireworks(e,r);const t="rain"===a?rainPiece:popPiece;return Array.from({length:e},(e,a)=>t(r,a))};const SHAPE_BOX={strip:{w:1,h:.45},square:{w:1,h:1},circle:{w:1,h:1},triangle:{w:1,h:1},star:{w:1.2,h:1.2},streamer:{w:3,h:1.2}},TRIANGLE_POINTS="50,4 96,96 4,96",STAR_POINTS="50,2 61,36 97,36 68,58 79,94 50,72 21,94 32,58 3,36 39,36",STREAMER_PATH="M2,50 C20,6 44,94 62,50 S92,6 98,50",ShapeBody=({shape:e,color:a})=>"triangle"===e||"star"===e?_jsx(Svg,{width:"100%",height:"100%",viewBox:"0 0 100 100",children:_jsx(Polygon,{points:"star"===e?STAR_POINTS:TRIANGLE_POINTS,fill:a})}):"streamer"===e?_jsx(Svg,{width:"100%",height:"100%",viewBox:"0 0 100 100",preserveAspectRatio:"none",children:_jsx(Path,{d:STREAMER_PATH,stroke:a,strokeWidth:22,strokeLinecap:"round",fill:"none"})}):null,ConfettiPiece=({piece:e,progress:a,width:r,height:t,fadeOut:s})=>{const i=useAnimatedStyle(()=>{const i=1-e.delay,o=i<=0?0:Math.min(1,Math.max(0,(a.value-e.delay)/i)),n=(1-Math.exp(-e.drag*o))/e.drag,c=e.x0Frac*r+e.vxFrac*r*n,l=e.y0Frac*t+e.terminalFrac*t*o+(e.vyFrac-e.terminalFrac)*t*n,h=Math.sin(o*e.swayFreq*TAU)*e.swayAmp,d=e.rotateDir*e.rotations*360*o,p=.35+.65*Math.abs(Math.cos(o*e.flutterFreq*TAU));return{opacity:s?Math.max(0,1-Math.max(0,o-.75)/.25):1,transform:[{translateX:c+h},{translateY:l},{rotate:`${d}deg`},{scaleY:p}]}}),o=SHAPE_BOX[e.shape],n="triangle"===e.shape||"star"===e.shape||"streamer"===e.shape;return _jsx(Animated.View,{style:[{position:"absolute",width:e.size*o.w,height:e.size*o.h,borderRadius:"circle"===e.shape?e.size*o.h/2:1,backgroundColor:n?"transparent":e.color},i],children:_jsx(ShapeBody,{shape:e.shape,color:e.color})})},Confetti=forwardRef(({count:e=80,colors:a,preset:r="pop",shapes:t,speed:s="normal",physics:i,origin:o,duration:n=2800,fadeOut:c=!0,autoStart:l=!1,recycle:h=!1,size:d=10,onComplete:p,style:m,testID:u},y)=>{const g=useTheme(),S=useReducedMotion(),w=useWindowDimensions(),[f,F]=useState({width:w.width,height:w.height}),[x,P]=useState(!1),[A,v]=useState([]),E=useMemo(()=>a??[g.colors.primary,g.colors.neutral,g.colors.success,g.colors.warning,g.colors.danger,g.colors.info],[a,g.colors]),M=useSharedValue(0),T=n*SPEED_FACTOR[s],_=useCallback(()=>{P(!1),p?.()},[p]),R=useCallback(()=>{if(S)return void p?.();cancelAnimation(M),M.value=0,v(buildPieces(e,r,{colors:E,baseSize:d,originXFrac:o?o.x/Math.max(1,f.width):.5,originYFrac:o?o.y/Math.max(1,f.height):.5,physics:{...DEFAULT_PHYSICS,...i},shapes:t??PRESET_SHAPES[r]})),P(!0);const a=withTiming(1,{duration:T,easing:Easing.linear},e=>{"worklet";e&&!h&&runOnJS(_)()});M.value=h?withRepeat(a,-1,!1):a},[S,M,T,h,_,p,e,E,r,t,i,d,o,f.width,f.height]),C=useCallback(()=>{cancelAnimation(M),P(!1)},[M]);useImperativeHandle(y,()=>({start:R,stop:C}),[R,C]),useEffect(()=>(l&&R(),()=>cancelAnimation(M)),[]);const k=useCallback(e=>{const{width:a,height:r}=e.nativeEvent.layout;a>0&&r>0&&F({width:a,height:r})},[]);return _jsx(View,{style:[StyleSheet.absoluteFill,m],pointerEvents:"none",onLayout:k,testID:u,children:x?A.map((e,a)=>_jsx(ConfettiPiece,{piece:e,progress:M,width:f.width,height:f.height,fadeOut:c},a)):null})});Confetti.displayName="Confetti";export{Confetti};export default Confetti;
1
+ "use strict";import{forwardRef,useCallback,useEffect,useImperativeHandle,useMemo,useState}from"react";import{StyleSheet,useWindowDimensions,View}from"react-native";import Animated,{cancelAnimation,Easing,runOnJS,useAnimatedStyle,useSharedValue,withRepeat,withTiming}from"react-native-reanimated";import Svg,{Path,Polygon}from"react-native-svg";import{useReducedMotion}from"../../hooks/index.js";import{useTheme}from"../../theme/index.js";import{warnInvalidValue}from"../../utils/warnInvalidValue.js";import{jsx as _jsx}from"react/jsx-runtime";const TAU=2*Math.PI,DEG=Math.PI/180,SPEED_FACTOR={slow:1.6,normal:1,fast:.6};export const DEFAULT_PHYSICS={velocity:1,drag:1,fallSpeed:1,spread:0};const PRESET_SHAPES={pop:["strip","strip","strip","square","circle","triangle","star","streamer"],rain:["strip","strip","strip","circle","square"],fireworks:["circle","circle","star","star","triangle","strip"]},rand=(e,a)=>e+Math.random()*(a-e),pick=e=>e[Math.floor(Math.random()*e.length)]??e[0],commonPiece=(e,a)=>({color:e.colors[a%e.colors.length]??e.colors[0],size:e.baseSize*rand(.6,1.4),shape:pick(e.shapes),rotations:rand(1,5),rotateDir:Math.random()<.5?1:-1,flutterFreq:rand(2,5)}),popPiece=(e,a)=>{const r=e.physics.spread>0?e.physics.spread/2:100,t=(-90+rand(-r,r))*DEG,s=rand(1.8,4.2)*e.physics.velocity;return{...commonPiece(e,a),x0Frac:e.originXFrac,y0Frac:e.originYFrac,vxFrac:Math.cos(t)*s*.7,vyFrac:Math.sin(t)*s,drag:rand(5.5,7.5)*e.physics.drag,terminalFrac:rand(.22,.44)*e.physics.fallSpeed,delay:rand(0,.05),swayAmp:rand(4,16),swayFreq:rand(1,3)}},rainPiece=(e,a)=>({...commonPiece(e,a),x0Frac:Math.random(),y0Frac:-.05,vxFrac:rand(-.12,.12)*e.physics.velocity,vyFrac:rand(.05,.25)*e.physics.velocity,drag:rand(2.5,4)*e.physics.drag,terminalFrac:rand(.95,1.35)*e.physics.fallSpeed,delay:rand(0,.35),swayAmp:rand(10,30),swayFreq:rand(1,3)}),FIREWORK_BURSTS=4,buildFireworks=(e,a)=>{const r=Math.max(1,Math.round(e/4)),t=a.physics.spread>0?a.physics.spread/2:180,s=[];for(let i=0;i<4&&s.length<e;i+=1){const n=rand(.18,.82),o=rand(.18,.52),c=i/4*.5+rand(0,.06);for(let i=0;i<r&&s.length<e;i+=1){const e=rand(-t,t)*DEG,r=rand(1.4,3.4)*a.physics.velocity;s.push({...commonPiece(a,s.length),x0Frac:n,y0Frac:o,vxFrac:Math.cos(e)*r*.7,vyFrac:Math.sin(e)*r,drag:rand(6.5,8.5)*a.physics.drag,terminalFrac:rand(.18,.38)*a.physics.fallSpeed,delay:c,swayAmp:rand(3,12),swayFreq:rand(1,3)})}}return s};export const buildPieces=(e,a,r)=>{if("fireworks"===a)return buildFireworks(e,r);const t="rain"===a?rainPiece:popPiece;return Array.from({length:e},(e,a)=>t(r,a))};const SHAPE_BOX={strip:{w:1,h:.45},square:{w:1,h:1},circle:{w:1,h:1},triangle:{w:1,h:1},star:{w:1.2,h:1.2},streamer:{w:3,h:1.2}},TRIANGLE_POINTS="50,4 96,96 4,96",STAR_POINTS="50,2 61,36 97,36 68,58 79,94 50,72 21,94 32,58 3,36 39,36",STREAMER_PATH="M2,50 C20,6 44,94 62,50 S92,6 98,50",ShapeBody=({shape:e,color:a})=>"triangle"===e||"star"===e?_jsx(Svg,{width:"100%",height:"100%",viewBox:"0 0 100 100",children:_jsx(Polygon,{points:"star"===e?STAR_POINTS:TRIANGLE_POINTS,fill:a})}):"streamer"===e?_jsx(Svg,{width:"100%",height:"100%",viewBox:"0 0 100 100",preserveAspectRatio:"none",children:_jsx(Path,{d:STREAMER_PATH,stroke:a,strokeWidth:22,strokeLinecap:"round",fill:"none"})}):null,ConfettiPiece=({piece:e,progress:a,width:r,height:t,fadeOut:s})=>{const i=useAnimatedStyle(()=>{const i=1-e.delay,n=i<=0?0:Math.min(1,Math.max(0,(a.value-e.delay)/i)),o=(1-Math.exp(-e.drag*n))/e.drag,c=e.x0Frac*r+e.vxFrac*r*o,l=e.y0Frac*t+e.terminalFrac*t*n+(e.vyFrac-e.terminalFrac)*t*o,h=Math.sin(n*e.swayFreq*TAU)*e.swayAmp,d=e.rotateDir*e.rotations*360*n,p=.35+.65*Math.abs(Math.cos(n*e.flutterFreq*TAU));return{opacity:s?Math.max(0,1-Math.max(0,n-.75)/.25):1,transform:[{translateX:c+h},{translateY:l},{rotate:`${d}deg`},{scaleY:p}]}}),n=SHAPE_BOX[e.shape],o="triangle"===e.shape||"star"===e.shape||"streamer"===e.shape;return _jsx(Animated.View,{style:[{position:"absolute",width:e.size*n.w,height:e.size*n.h,borderRadius:"circle"===e.shape?e.size*n.h/2:1,backgroundColor:o?"transparent":e.color},i],children:_jsx(ShapeBody,{shape:e.shape,color:e.color})})},Confetti=forwardRef(({count:e=80,colors:a,preset:r="pop",shapes:t,speed:s="normal",physics:i,origin:n,duration:o=2800,fadeOut:c=!0,autoStart:l=!1,recycle:h=!1,size:d=10,onComplete:p,style:u,testID:m},y)=>{warnInvalidValue("Confetti","preset",r,["pop","rain","fireworks"]),warnInvalidValue("Confetti","speed",s,["slow","normal","fast"]);for(const e of t??[])warnInvalidValue("Confetti","shapes",e,["strip","square","circle","triangle","star","streamer"]);const g=useTheme(),w=useReducedMotion(),f=useWindowDimensions(),[S,F]=useState({width:f.width,height:f.height}),[v,x]=useState(!1),[P,A]=useState([]),E=useMemo(()=>a??[g.colors.primary,g.colors.neutral,g.colors.success,g.colors.warning,g.colors.danger,g.colors.info],[a,g.colors]),M=useSharedValue(0),T=o*SPEED_FACTOR[s],_=useCallback(()=>{x(!1),p?.()},[p]),R=useCallback(()=>{if(w)return void p?.();cancelAnimation(M),M.value=0,A(buildPieces(e,r,{colors:E,baseSize:d,originXFrac:n?n.x/Math.max(1,S.width):.5,originYFrac:n?n.y/Math.max(1,S.height):.5,physics:{...DEFAULT_PHYSICS,...i},shapes:t??PRESET_SHAPES[r]})),x(!0);const a=withTiming(1,{duration:T,easing:Easing.linear},e=>{"worklet";e&&!h&&runOnJS(_)()});M.value=h?withRepeat(a,-1,!1):a},[w,M,T,h,_,p,e,E,r,t,i,d,n,S.width,S.height]),C=useCallback(()=>{cancelAnimation(M),x(!1)},[M]);useImperativeHandle(y,()=>({start:R,stop:C}),[R,C]),useEffect(()=>(l&&R(),()=>cancelAnimation(M)),[]);const I=useCallback(e=>{const{width:a,height:r}=e.nativeEvent.layout;a>0&&r>0&&F({width:a,height:r})},[]);return _jsx(View,{style:[StyleSheet.absoluteFill,u],pointerEvents:"none",onLayout:I,testID:m,children:v?P.map((e,a)=>_jsx(ConfettiPiece,{piece:e,progress:M,width:S.width,height:S.height,fadeOut:c},a)):null})});Confetti.displayName="Confetti";export{Confetti};export default Confetti;
@@ -0,0 +1 @@
1
+ "use strict";import{Logger}from"@webority/mobile-core";import{useEffect,useMemo,useRef,useSyncExternalStore}from"react";import{Dialog}from"../Dialog/index.js";import{jsx as _jsx}from"react/jsx-runtime";const DEFAULT_CONFIRM_HOST_LABELS={cancel:"Cancel"};let queue=[],hostCount=0,nextId=0;const listeners=new Set,emit=()=>{for(const e of listeners)e()},subscribe=e=>(listeners.add(e),()=>{listeners.delete(e)}),getQueue=()=>queue,settle=(e,t)=>{const o=queue.find(t=>t.id===e);o&&(queue=queue.filter(t=>t.id!==e),emit(),o.resolve(t))};export function confirm(e){if(0===hostCount)throw new Error("[@webority/mobile-ui] confirm: mount <ConfirmHost /> once at the app root before calling confirm.");return new Promise(t=>{nextId+=1,queue=[...queue,{id:nextId,options:e,resolve:t}],emit()})}export function ConfirmHost({labels:e,testID:t}){const o=useMemo(()=>({...DEFAULT_CONFIRM_HOST_LABELS,...e}),[e]),s=useSyncExternalStore(subscribe,getQueue)[0],n=useRef(void 0);s&&(n.current=s),useEffect(()=>(hostCount+=1,hostCount>1&&Logger.warn("[@webority/mobile-ui] ConfirmHost: mounted more than once; mount one at the app root."),()=>{if(hostCount-=1,0===hostCount){const e=queue;queue=[],emit();for(const t of e)t.resolve(!1)}}),[]);const r=s??n.current;return r?_jsx(Dialog,{visible:void 0!==s,onClose:()=>settle(r.id,!1),title:r.options.title,message:r.options.message,dismissOnAction:!1,actions:[{label:o.cancel,tone:"neutral",onPress:()=>settle(r.id,!1)},{label:r.options.confirmLabel,tone:r.options.tone??"primary",onPress:()=>settle(r.id,!0)}],testID:t}):null}
@@ -0,0 +1 @@
1
+ "use strict";export{ConfirmHost,confirm}from"./confirm.js";
@@ -1 +1 @@
1
- "use strict";import{useCallback,useEffect,useMemo,useRef,useState}from"react";import{AccessibilityInfo,Animated,Easing,Modal,Pressable,StyleSheet,Text,View}from"react-native";import{GestureDetector,GestureHandlerRootView}from"react-native-gesture-handler";import{useDragToDismiss}from"../../hooks/useDragToDismiss.js";import{usePresenceMotion}from"../../hooks/usePresenceMotion.js";import{createAnimatedValue,setNativeValue,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{transparentOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{defaultIcons}from"../AppIcon/defaultIcons.js";import{ModalSafeArea,useModalInsets}from"../ModalSafeArea/ModalSafeArea.js";import{PickerTrigger}from"../PickerTrigger/index.js";import{ToastHost}from"../Toast/ToastProvider.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const NAV_BUTTON_SIZE=36,AnimatedGestureRoot=Animated.createAnimatedComponent(GestureHandlerRootView),GRID_SIZE=12,DECADE_SPAN=10,startOfDay=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),isSameDay=(e,t)=>e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),toIso=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`,addMonths=(e,t)=>new Date(e.getFullYear(),e.getMonth()+t,1),buildMonthMatrix=(e,t)=>{const a=e.getFullYear(),r=e.getMonth(),s=(new Date(a,r,1).getDay()-t+7)%7,i=[];for(let e=0;e<42;e+=1){const t=new Date(a,r,1-s+e);i.push({date:t,inMonth:t.getMonth()===r,iso:toIso(t)})}return i},weekdayLabels=(e,t)=>{const a=new Intl.DateTimeFormat(e,{weekday:"short"}),r=[];for(let e=0;e<7;e+=1){const s=new Date(1970,0,4+(t+e)%7);r.push(a.format(s))}return r},formatMonthYear=(e,t)=>new Intl.DateTimeFormat(t,{month:"long",year:"numeric"}).format(e),decadeStartFor=e=>10*Math.floor(e/10),buildYearCells=e=>{const t=e-4;return Array.from({length:12},(e,a)=>t+a)},buildDecadeCells=e=>{const t=decadeStartFor(e)-40;return Array.from({length:12},(e,a)=>t+10*a)},DatePicker=e=>{const{value:t,onChange:a,onClose:r,minDate:s,maxDate:i,disabledDates:o,mode:n="modal",locale:l="en-IN",weekStartsOn:c=0,title:d="Select Date",confirmLabel:u="Confirm",cancelLabel:m="Cancel",style:g,containerStyle:y,headerLabelStyle:h,navButtonStyle:p,footerButtonStyle:b,haptic:f,testID:x,label:w,placeholder:D,helperText:v,error:C,required:j,disabled:S,size:A,variant:V,clearable:T,onClear:_,formatValue:M,triggerStyle:R}=e,k=void 0!==e.visible,[I,P]=useState(!1),F=k?e.visible:I,N=k?x:x?`${x}-calendar`:void 0,Y=useTheme(),L=usePresenceMotion(),[z,B]=useModalInsets(),$=useMemo(()=>buildStyles(Y),[Y]),[E,H]=useState(()=>startOfDay(new Date));useEffect(()=>{F&&H(startOfDay(new Date))},[F]);const O=t?startOfDay(t):E,[W,G]=useState(O),[q,X]=useState(t?startOfDay(t):null),[Z,U]=useState("days"),J=useRef(createAnimatedValue(0)).current,K=useRef(createAnimatedValue(0)).current,Q=useRef(createAnimatedValue(0)).current,ee=useRef(0),te=useRef(createAnimatedValue(0)).current,ae=useRef(createAnimatedValue(1)).current,re=useRef(createAnimatedValue(1)).current,se=useRef(createAnimatedValue(1)).current,ie=useRef(createAnimatedValue(1)).current,oe=useRef(createAnimatedValue(1)).current;useEffect(()=>{if(t){const e=startOfDay(t);X(e),G(e)}else X(null)},[t]);const ne=useMemo(()=>{const e=new Set;return o?.forEach(t=>{e.add(toIso(startOfDay(t)))}),e},[o]),le=useMemo(()=>s?startOfDay(s):null,[s]),ce=useMemo(()=>i?startOfDay(i):null,[i]),de=useCallback(e=>!!(le&&e.getTime()<le.getTime())||(!!(ce&&e.getTime()>ce.getTime())||!!ne.has(toIso(e))),[le,ce,ne]),ue=useMemo(()=>buildMonthMatrix(W,c),[W,c]),me=useMemo(()=>buildYearCells(W.getFullYear()),[W]),ge=useMemo(()=>buildDecadeCells(W.getFullYear()),[W]),ye=useMemo(()=>weekdayLabels(l,c),[l,c]),he=useMemo(()=>new Intl.DateTimeFormat(l,{weekday:"long",year:"numeric",month:"long",day:"numeric"}),[l]),pe=useMemo(()=>{if("days"===Z)return formatMonthYear(W,l);if("years"===Z){return`${me[0]} - ${me[me.length-1]}`}return`${ge[0]} - ${ge[ge.length-1]+9}`},[W,ge,l,Z,me]),be=useCallback(e=>!!(le&&e<le.getFullYear())||!!(ce&&e>ce.getFullYear()),[le,ce]),fe=useCallback(e=>!!(le&&e+10-1<le.getFullYear())||!!(ce&&e>ce.getFullYear()),[le,ce]),xe=useCallback(e=>{!1!==f&&triggerHaptic("impactLight");const t=e>0?1:-1,a=Y.motion.duration.fast,r=Y.motion.duration.fast,[s]=L.range(32*-t,0),[i]=L.range(32*t,0),o=L.reduced?L.duration("fast"):a,n=L.reduced?L.duration("fast"):r;Animated.sequence([Animated.parallel([Animated.timing(te,{toValue:s,duration:a,easing:Easing.out(Easing.quad),useNativeDriver:!0}),Animated.timing(ae,{toValue:0,duration:o,useNativeDriver:!0})]),Animated.timing(te,{toValue:i,duration:0,useNativeDriver:!0}),Animated.parallel([Animated.timing(te,{toValue:0,duration:r,easing:Easing.out(Easing.cubic),useNativeDriver:!0}),Animated.timing(ae,{toValue:1,duration:n,useNativeDriver:!0})])]).start();const c=addMonths(W,e);G(c),AccessibilityInfo.announceForAccessibility(formatMonthYear(c,l))},[W,f,l,ae,te,L,Y.motion.duration.fast]),we=useCallback(()=>{"days"!==Z?(!1!==f&&triggerHaptic("impactLight"),G("years"===Z?e=>new Date(e.getFullYear()-12,e.getMonth(),1):e=>new Date(e.getFullYear()-120,e.getMonth(),1))):xe(-1)},[xe,Z,f]),De=useCallback(()=>{"days"!==Z?(!1!==f&&triggerHaptic("impactLight"),G("years"===Z?e=>new Date(e.getFullYear()+12,e.getMonth(),1):e=>new Date(e.getFullYear()+120,e.getMonth(),1))):xe(1)},[xe,Z,f]),ve=useCallback(()=>{const[e]=L.range(.9,1),t=L.reduced?L.duration("default"):Y.motion.duration.default;setNativeValue(se,0),setNativeValue(ie,e),Animated.parallel([Animated.timing(se,{toValue:1,duration:t,easing:Easing.out(Easing.cubic),useNativeDriver:!0}),Animated.timing(ie,{toValue:1,duration:t,easing:Easing.out(Easing.cubic),useNativeDriver:!0})]).start()},[se,ie,L,Y.motion.duration.default]),Ce=useCallback(()=>{const e=resolveHaptic(f,"selection");if(e&&triggerHaptic(e),!L.reduced){const e=80,t=100;Animated.sequence([Animated.timing(oe,{toValue:.96,duration:e,useNativeDriver:!0}),Animated.timing(oe,{toValue:1,duration:t,useNativeDriver:!0})]).start()}U(e=>"days"===e?"years":"years"===e?"decades":"years"),ve()},[ve,oe,f,L.reduced]),je=useCallback(e=>{const t=resolveHaptic(f,"selection");t&&triggerHaptic(t),G(t=>new Date(e,t.getMonth(),1)),U("days"),ve()},[ve,f]),Se=useCallback(e=>{const t=resolveHaptic(f,"selection");t&&triggerHaptic(t),G(t=>new Date(e+4,t.getMonth(),1)),U("years"),ve()},[ve,f]),Ae=useCallback(e=>{if(de(e.date))return;const t=resolveHaptic(f,"selection");t&&triggerHaptic(t),X(e.date),e.inMonth||G(new Date(e.date.getFullYear(),e.date.getMonth(),1)),L.reduced||(setNativeValue(re,.7),Animated.spring(re,{toValue:1,damping:Y.motion.spring.bouncy.damping,stiffness:Y.motion.spring.bouncy.stiffness,mass:Y.motion.spring.bouncy.mass,useNativeDriver:!0}).start())},[de,L.reduced,re,Y.motion.spring.bouncy,f]),Ve=useCallback(()=>{k||P(!1),r?.()},[k,r]),Te=useCallback(()=>{"modal"===n?Animated.parallel([Animated.timing(J,{toValue:0,duration:L.duration("default"),easing:Easing.bezier(...Y.motion.ease.accelerate),useNativeDriver:!1}),Animated.timing(K,{toValue:0,duration:L.duration("fast"),easing:Easing.bezier(...Y.motion.ease.accelerate),useNativeDriver:!0})]).start(()=>{Ve()}):Ve()},[J,n,Ve,L,K,Y.motion.ease.accelerate]),{handleGesture:Me,opacity:Re}=useDragToDismiss({drag:Q,travel:()=>ee.current||320,onDismiss:Te}),ke=useMemo(()=>Animated.multiply(K,Re),[K,Re]),Ie=useMemo(()=>J.interpolate({inputRange:[0,1],outputRange:[transparentOf(Y.colors.scrim),Y.colors.scrim]}),[J,Y.colors.scrim]);useEffect(()=>{if("modal"===n&&F){J.setValue(0),setNativeValue(K,0),setNativeValue(Q,0),setNativeValue(Re,1);const e=L.reduced?Animated.timing(K,{toValue:1,duration:L.duration("default"),useNativeDriver:!0}):Animated.spring(K,{toValue:1,damping:Y.motion.spring.gentle.damping,stiffness:Y.motion.spring.gentle.stiffness,mass:Y.motion.spring.gentle.mass,useNativeDriver:!0}),t=Animated.parallel([Animated.timing(J,{toValue:1,duration:L.duration("default"),easing:Easing.out(Easing.cubic),useNativeDriver:!1}),e]);return t.start(),()=>t.stop()}},[F,n,J,L,K,Q,Re,Y.motion]);const Pe=useCallback(()=>{!1!==f&&triggerHaptic("selection"),Te()},[Te,f]),Fe=useCallback(()=>{q&&(!1!==f&&triggerHaptic("notificationSuccess"),a?.(q),Te())},[Te,a,q,f]),Ne=K.interpolate({inputRange:[0,1],outputRange:L.range(320,0)}),Ye=_jsx(View,{style:$.titleRow,children:_jsx(Text,{style:$.title,accessibilityRole:"header",children:d})}),Le=_jsxs(View,{style:[$.card,g,y],accessibilityRole:"modal"===n?void 0:"none",accessible:!1,testID:N,children:["modal"===n?_jsx(GestureDetector,{gesture:Me,children:_jsxs(View,{style:$.grabArea,children:[_jsx(View,{style:$.handle}),Ye]})}):Ye,_jsxs(View,{style:$.headerRow,children:[_jsx(Pressable,{onPress:we,style:({pressed:e})=>[$.navBtn,e&&$.navBtnPressed,p],accessibilityRole:"button",accessibilityLabel:"days"===Z?"Previous month":"years"===Z?"Previous years":"Previous decades",hitSlop:8,...hitSlopMarker(8),children:_jsx(Text,{style:$.navText,children:"‹"})}),_jsx(Pressable,{onPress:Ce,style:[$.headerLabelWrap,h],accessibilityRole:"button",accessibilityLabel:"days"===Z?`${pe}, switch to year selection`:"years"===Z?`${pe}, switch to decade selection`:`${pe}, switch to year selection`,hitSlop:8,...hitSlopMarker(8),children:_jsxs(Animated.View,{style:[$.headerLabelInner,{transform:[{scale:oe}],opacity:"days"===Z?ae:1}],children:[_jsx(Animated.Text,{style:[$.headerLabel,{transform:[{translateX:"days"===Z?te:0}]}],accessibilityLiveRegion:"polite",children:pe}),_jsx(View,{style:$.headerCaret,children:(Y.settings.icons.chevronDown??defaultIcons.chevronDown)({size:Y.text.sm.size,color:Y.colors["text-muted"]})})]})}),_jsx(Pressable,{onPress:De,style:({pressed:e})=>[$.navBtn,e&&$.navBtnPressed,p],accessibilityRole:"button",accessibilityLabel:"days"===Z?"Next month":"years"===Z?"Next years":"Next decades",hitSlop:8,...hitSlopMarker(8),children:_jsx(Text,{style:$.navText,children:"›"})})]}),"days"===Z?_jsxs(_Fragment,{children:[_jsx(View,{style:$.weekdayRow,children:ye.map((e,t)=>_jsx(View,{style:$.weekdayCell,children:_jsx(Text,{style:$.weekdayText,children:e})},`${e}-${t}`))}),_jsx(Animated.View,{style:[$.grid,{opacity:ae,transform:[{translateX:te}]}],children:Array.from({length:6}).map((e,t)=>_jsx(View,{style:$.gridRow,children:ue.slice(7*t,7*t+7).map(e=>{const t=de(e.date),a=!!q&&isSameDay(e.date,q),r=isSameDay(e.date,E),s=a?Y.colors.primary:"transparent",i=r&&!a?Y.colors.primary:"transparent",o=a?Y.colors["on-primary"]:e.inMonth?t?Y.colors["text-disabled"]:Y.colors["text-body"]:Y.colors["text-subtle"],n=t?.3:e.inMonth?1:.4;return _jsx(Pressable,{disabled:t,onPress:()=>Ae(e),accessibilityRole:"button",accessibilityLabel:he.format(e.date),accessibilityState:{selected:a,disabled:t},"aria-selected":a,"aria-disabled":t,style:$.dayCell,children:_jsx(Animated.View,{style:[$.dayInner,{backgroundColor:s,borderColor:i,borderWidth:r&&!a?1.5:0,opacity:n},a?{transform:[{scale:re}]}:null],children:_jsx(Text,{style:[$.dayText,{color:o}],children:e.date.getDate()})})},e.iso)})},`r-${t}`))})]}):_jsx(Animated.View,"years"===Z?{style:[$.yearGrid,{opacity:se,transform:[{scale:ie}]}],children:Array.from({length:3}).map((e,t)=>_jsx(View,{style:$.gridRow,children:me.slice(4*t,4*t+4).map(e=>{const t=be(e),a=!!q&&q.getFullYear()===e,r=E.getFullYear()===e,s=a?Y.colors.primary:"transparent",i=r&&!a?Y.colors.primary:"transparent",o=a?Y.colors["on-primary"]:t?Y.colors["text-disabled"]:Y.colors["text-body"],n=t?.3:1;return _jsx(Pressable,{disabled:t,onPress:()=>je(e),accessibilityRole:"button",accessibilityLabel:`Year ${e}`,accessibilityState:{selected:a,disabled:t},"aria-selected":a,"aria-disabled":t,style:$.yearCell,children:_jsx(View,{style:[$.yearInner,{backgroundColor:s,borderColor:i,borderWidth:r&&!a?1.5:0,opacity:n}],children:_jsx(Text,{style:[$.yearText,{color:o}],children:e})})},`year-${e}`)})},`yr-${t}`))}:{style:[$.yearGrid,{opacity:se,transform:[{scale:ie}]}],children:Array.from({length:3}).map((e,t)=>_jsx(View,{style:$.gridRow,children:ge.slice(4*t,4*t+4).map(e=>{const t=e+10-1,a=fe(e),r=!!q&&decadeStartFor(q.getFullYear())===e,s=decadeStartFor(E.getFullYear())===e,i=r?Y.colors.primary:"transparent",o=s&&!r?Y.colors.primary:"transparent",n=r?Y.colors["on-primary"]:a?Y.colors["text-disabled"]:Y.colors["text-body"],l=a?.3:1;return _jsx(Pressable,{disabled:a,onPress:()=>Se(e),accessibilityRole:"button",accessibilityLabel:`Decade ${e} to ${t}`,accessibilityState:{selected:r,disabled:a},"aria-selected":r,"aria-disabled":a,style:$.yearCell,children:_jsxs(View,{style:[$.yearInner,{backgroundColor:i,borderColor:o,borderWidth:s&&!r?1.5:0,opacity:l}],children:[_jsx(Text,{style:[$.yearText,{color:n}],children:`${e}s`}),_jsx(Text,{style:[$.decadeRangeText,{color:r?Y.colors["on-primary"]:Y.colors["text-subtle"]}],children:`${e}-${t}`})]})},`decade-${e}`)})},`dec-${t}`))}),_jsxs(View,{style:$.footer,children:[_jsx(Pressable,{onPress:Pe,style:({pressed:e})=>[$.footerBtn,$.footerCancel,e&&$.footerBtnPressed,b],accessibilityRole:"button",accessibilityLabel:m,children:_jsx(Text,{style:[$.footerBtnText,{color:Y.colors["text-muted"]}],children:m})}),_jsx(Pressable,{onPress:Fe,disabled:!q,style:({pressed:e})=>[$.footerBtn,$.footerConfirm,{backgroundColor:Y.colors.primary,opacity:q?1:.5},e&&{backgroundColor:Y.colors["primary-hover"]},b],accessibilityRole:"button",accessibilityLabel:u,accessibilityState:{disabled:!q},"aria-disabled":!q,children:_jsx(Text,{style:[$.footerBtnText,{color:Y.colors["on-primary"]}],children:u})})]})]}),ze=t?(M??(e=>e.toLocaleDateString()))(t):void 0,Be=!k;if("inline"===n)return F||Be?Be?_jsxs(_Fragment,{children:[_jsx(PickerTrigger,{label:w,value:ze,placeholder:D,helperText:v,error:C,required:j,disabled:S,size:A,variant:V,clearable:T,onClear:_,onPress:()=>P(!0),triggerStyle:R,testID:x}),F?Le:null]}):Le:null;const $e=_jsx(Modal,{visible:F,transparent:!0,statusBarTranslucent:!0,navigationBarTranslucent:!0,animationType:"none",onRequestClose:Te,children:_jsx(ModalSafeArea,{onInsets:B,children:_jsxs(AnimatedGestureRoot,{collapsable:!1,style:[$.backdrop,{backgroundColor:Ie}],children:[_jsx(Pressable,{style:StyleSheet.absoluteFill,onPress:Te,accessibilityLabel:"Dismiss"}),_jsx(Animated.View,{style:[$.sheetWrap,{paddingBottom:Math.max(z.bottom,Y.space.lg),opacity:ke,transform:[{translateY:Animated.add(Ne,Q)}]}],onLayout:e=>{ee.current=e.nativeEvent.layout.height},accessibilityViewIsModal:!0,accessibilityRole:"none",children:Le}),_jsx(ToastHost,{})]})})});return Be?_jsxs(_Fragment,{children:[_jsx(PickerTrigger,{label:w,value:ze,placeholder:D,helperText:v,error:C,required:j,disabled:S,size:A,variant:V,clearable:T,onClear:_,onPress:()=>P(!0),triggerStyle:R,testID:x}),$e]}):$e},buildStyles=e=>{const t=e.shadow.popover;return StyleSheet.create({backdrop:{...StyleSheet.absoluteFill},sheetWrap:{position:"absolute",left:0,right:0,bottom:0,paddingHorizontal:e.space.md,paddingBottom:e.space.lg},card:{backgroundColor:e.colors.surface,borderRadius:e.radius.xl,...smoothCorners,padding:e.space.lg,shadowColor:t.shadowColor,shadowOffset:t.shadowOffset,shadowOpacity:t.shadowOpacity,shadowRadius:t.shadowRadius,elevation:t.elevation},grabArea:{marginTop:-e.space.lg,paddingTop:e.space.sm},handle:{alignSelf:"center",width:36,height:4,borderRadius:e.radius.pill,...smoothCorners,backgroundColor:e.colors["border-subtle"],marginBottom:e.space.sm},titleRow:{marginBottom:e.space.sm},title:{fontSize:e.text.lg.size,fontWeight:e.weight.semibold,color:e.colors["text-body"]},headerRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:e.space.md},navBtn:{width:36,height:36,borderRadius:e.radius.pill,...smoothCorners,alignItems:"center",justifyContent:"center",backgroundColor:e.colors["bg-subtle"]},navBtnPressed:{backgroundColor:e.colors["surface-pressed"]},navText:{fontSize:e.text["2xl"].size,lineHeight:26,color:e.colors["text-body"],fontWeight:e.weight.semibold},headerLabelWrap:{flex:1,alignItems:"center"},headerLabelInner:{flexDirection:"row",alignItems:"center",justifyContent:"center"},headerLabel:{fontSize:e.text.base.size,fontWeight:e.weight.semibold,color:e.colors["text-body"]},headerCaret:{marginLeft:e.space.xs,alignItems:"center",justifyContent:"center"},weekdayRow:{flexDirection:"row",marginBottom:e.space.xs},weekdayCell:{flex:1,alignItems:"center",paddingVertical:e.space.xs},weekdayText:{fontSize:e.text.xs.size,fontWeight:e.weight.medium,color:e.colors["text-subtle"],letterSpacing:e["letter-spacing"].wide},grid:{},gridRow:{flexDirection:"row"},dayCell:{flex:1,aspectRatio:1,alignItems:"center",justifyContent:"center",padding:e.space.xxs},dayInner:{width:"100%",height:"100%",borderRadius:e.radius.pill,...smoothCorners,alignItems:"center",justifyContent:"center"},dayText:{fontSize:e.text.sm.size,fontWeight:e.weight.medium},yearGrid:{},yearCell:{flex:1,aspectRatio:1.6,alignItems:"center",justifyContent:"center",padding:e.space.xs},yearInner:{width:"100%",height:"100%",borderRadius:e.radius.lg,...smoothCorners,alignItems:"center",justifyContent:"center"},yearText:{fontSize:e.text.base.size,fontWeight:e.weight.semibold},decadeRangeText:{fontSize:e.text.xs.size,fontWeight:e.weight.medium,marginTop:e.space.xxs},footer:{flexDirection:"row",justifyContent:"flex-end",alignItems:"center",marginTop:e.space.lg,gap:e.space.sm},footerBtn:{paddingHorizontal:e.space.lg,paddingVertical:e.space.sm,borderRadius:e.radius.md,...smoothCorners,minHeight:40,alignItems:"center",justifyContent:"center"},footerCancel:{backgroundColor:"transparent"},footerConfirm:{},footerBtnPressed:{opacity:.85},footerBtnText:{fontSize:e.text.sm.size,fontWeight:e.weight.semibold}})};export{DatePicker};export default DatePicker;
1
+ "use strict";import{useCallback,useEffect,useMemo,useRef,useState}from"react";import{Animated,Easing,Modal,Pressable,StyleSheet,View}from"react-native";import{GestureDetector,GestureHandlerRootView}from"react-native-gesture-handler";import{useDragToDismiss}from"../../hooks/useDragToDismiss.js";import{usePresenceMotion}from"../../hooks/usePresenceMotion.js";import{createAnimatedValue,setNativeValue,useTheme}from"../../theme/index.js";import{resolveHaptic,triggerHaptic}from"../../utils/index.js";import{transparentOf}from"../../utils/color.js";import{smoothCorners}from"../../utils/corners.js";import{hitSlopMarker}from"../../utils/hitSlop.js";import{defaultIcons}from"../AppIcon/defaultIcons.js";import{Calendar}from"../Calendar/index.js";import{ModalSafeArea,useModalInsets}from"../ModalSafeArea/ModalSafeArea.js";import{PickerTrigger}from"../PickerTrigger/index.js";import{Text}from"../Text/index.js";import{ToastHost}from"../Toast/ToastProvider.js";import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";const NAV_BUTTON_SIZE=36;export const DEFAULT_DATE_PICKER_LABELS=Object.freeze({title:"Select Date",confirm:"Confirm",cancel:"Cancel",dismiss:"Dismiss",previousMonth:"Previous month",nextMonth:"Next month",previousYears:"Previous years",nextYears:"Next years",previousDecades:"Previous decades",nextDecades:"Next decades",switchToYears:"switch to year selection",switchToDecades:"switch to decade selection",year:e=>`Year ${e}`,decade:(e,t)=>`Decade ${e} to ${t}`});const AnimatedGestureRoot=Animated.createAnimatedComponent(GestureHandlerRootView),GRID_SIZE=12,DECADE_SPAN=10,startOfDay=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),decadeStartFor=e=>10*Math.floor(e/10),buildYearCells=e=>{const t=e-4;return Array.from({length:12},(e,a)=>t+a)},buildDecadeCells=e=>{const t=decadeStartFor(e)-40;return Array.from({length:12},(e,a)=>t+10*a)},DatePicker=e=>{const{value:t,onChange:a,onClose:r,minDate:s,maxDate:i,disabledDates:o,inline:l=!1,locale:n="en-IN",weekStartsOn:c=0,title:d,labels:u,style:m,containerStyle:g,headerLabelStyle:h,navButtonStyle:b,footerButtonStyle:y,haptic:p,testID:f,label:x,placeholder:v,helperText:D,error:C,required:w,disabled:j,size:S,variant:_,clearable:T,onClear:A,formatValue:R,triggerStyle:M}=e,V=l?"inline":"modal",P=useMemo(()=>u?{...DEFAULT_DATE_PICKER_LABELS,...u}:DEFAULT_DATE_PICKER_LABELS,[u]),k=void 0!==e.visible,[I,L]=useState(!1),E=k?e.visible:I,B=k?f:f?`${f}-calendar`:void 0,F=useTheme(),z=usePresenceMotion(),[Y,H]=useModalInsets(),N=useMemo(()=>buildStyles(F),[F]),[O,$]=useState(()=>startOfDay(new Date));useEffect(()=>{E&&$(startOfDay(new Date))},[E]);const W=t?startOfDay(t):O,[G,q]=useState(W),[U,K]=useState(t?startOfDay(t):null),[Z,X]=useState("days"),J=useRef(createAnimatedValue(0)).current,Q=useRef(createAnimatedValue(0)).current,ee=useRef(createAnimatedValue(0)).current,te=useRef(0),ae=useRef(createAnimatedValue(1)).current,re=useRef(createAnimatedValue(1)).current,se=useRef(createAnimatedValue(1)).current;useEffect(()=>{if(t){const e=startOfDay(t);K(e),q(e)}else K(null)},[t]);const ie=useMemo(()=>s?startOfDay(s):null,[s]),oe=useMemo(()=>i?startOfDay(i):null,[i]),le=useMemo(()=>buildYearCells(G.getFullYear()),[G]),ne=useMemo(()=>buildDecadeCells(G.getFullYear()),[G]),ce=useMemo(()=>{if("years"===Z){return`${le[0]} - ${le[le.length-1]}`}return`${ne[0]} - ${ne[ne.length-1]+9}`},[ne,Z,le]),de=useCallback(e=>!!(ie&&e<ie.getFullYear())||!!(oe&&e>oe.getFullYear()),[ie,oe]),ue=useCallback(e=>!!(ie&&e+10-1<ie.getFullYear())||!!(oe&&e>oe.getFullYear()),[ie,oe]),me=useCallback(()=>{!1!==p&&triggerHaptic("impactLight"),q("years"===Z?e=>new Date(e.getFullYear()-12,e.getMonth(),1):e=>new Date(e.getFullYear()-120,e.getMonth(),1))},[Z,p]),ge=useCallback(()=>{!1!==p&&triggerHaptic("impactLight"),q("years"===Z?e=>new Date(e.getFullYear()+12,e.getMonth(),1):e=>new Date(e.getFullYear()+120,e.getMonth(),1))},[Z,p]),he=useCallback(()=>{const[e]=z.range(.9,1),t=z.reduced?z.duration("default"):F.motion.duration.default;setNativeValue(ae,0),setNativeValue(re,e),Animated.parallel([Animated.timing(ae,{toValue:1,duration:t,easing:Easing.out(Easing.cubic),useNativeDriver:!0}),Animated.timing(re,{toValue:1,duration:t,easing:Easing.out(Easing.cubic),useNativeDriver:!0})]).start()},[ae,re,z,F.motion.duration.default]),be=useCallback(()=>{const e=resolveHaptic(p,"selection");if(e&&triggerHaptic(e),!z.reduced){const e=80,t=100;Animated.sequence([Animated.timing(se,{toValue:.96,duration:e,useNativeDriver:!0}),Animated.timing(se,{toValue:1,duration:t,useNativeDriver:!0})]).start()}X(e=>"days"===e?"years":"years"===e?"decades":"years"),he()},[he,se,p,z.reduced]),ye=useCallback(e=>{const t=resolveHaptic(p,"selection");t&&triggerHaptic(t),q(t=>new Date(e,t.getMonth(),1)),X("days"),he()},[he,p]),pe=useCallback(e=>{const t=resolveHaptic(p,"selection");t&&triggerHaptic(t),q(t=>new Date(e+4,t.getMonth(),1)),X("years"),he()},[he,p]),fe=useCallback(e=>{K(e.start)},[]),xe=useCallback(()=>{k||L(!1),r?.()},[k,r]),ve=useCallback(()=>{"modal"===V?Animated.parallel([Animated.timing(J,{toValue:0,duration:z.duration("default"),easing:Easing.bezier(...F.motion.ease.accelerate),useNativeDriver:!1}),Animated.timing(Q,{toValue:0,duration:z.duration("fast"),easing:Easing.bezier(...F.motion.ease.accelerate),useNativeDriver:!0})]).start(()=>{xe()}):xe()},[J,V,xe,z,Q,F.motion.ease.accelerate]),{handleGesture:De,opacity:Ce}=useDragToDismiss({drag:ee,travel:()=>te.current||320,onDismiss:ve}),we=useMemo(()=>Animated.multiply(Q,Ce),[Q,Ce]),je=useMemo(()=>J.interpolate({inputRange:[0,1],outputRange:[transparentOf(F.colors.scrim),F.colors.scrim]}),[J,F.colors.scrim]);useEffect(()=>{if("modal"===V&&E){J.setValue(0),setNativeValue(Q,0),setNativeValue(ee,0),setNativeValue(Ce,1);const e=z.reduced?Animated.timing(Q,{toValue:1,duration:z.duration("default"),useNativeDriver:!0}):Animated.spring(Q,{toValue:1,damping:F.motion.spring.gentle.damping,stiffness:F.motion.spring.gentle.stiffness,mass:F.motion.spring.gentle.mass,useNativeDriver:!0}),t=Animated.parallel([Animated.timing(J,{toValue:1,duration:z.duration("default"),easing:Easing.out(Easing.cubic),useNativeDriver:!1}),e]);return t.start(),()=>t.stop()}},[E,V,J,z,Q,ee,Ce,F.motion]);const Se=useCallback(()=>{!1!==p&&triggerHaptic("selection"),ve()},[ve,p]),Te=useCallback(()=>{U&&(!1!==p&&triggerHaptic("notificationSuccess"),a?.(U),ve())},[ve,a,U,p]),Ae=Q.interpolate({inputRange:[0,1],outputRange:z.range(320,0)}),Re=_jsx(View,{style:N.titleRow,children:_jsx(Text,{style:N.title,variant:"title",accessibilityRole:"header",children:d??P.title})}),Me=_jsxs(View,{style:[N.card,m,g],accessibilityRole:"modal"===V?void 0:"none",accessible:!1,testID:B,children:["modal"===V?_jsx(GestureDetector,{gesture:De,children:_jsxs(View,{style:N.grabArea,children:[_jsx(View,{style:N.handle}),Re]})}):Re,"days"!==Z?_jsxs(View,{style:N.headerRow,children:[_jsx(Pressable,{onPress:me,style:({pressed:e})=>[N.navBtn,e&&N.navBtnPressed,b],accessibilityRole:"button",accessibilityLabel:"years"===Z?P.previousYears:P.previousDecades,hitSlop:8,...hitSlopMarker(8),children:_jsx(Text,{style:N.navText,variant:"title",children:"‹"})}),_jsx(Pressable,{onPress:be,style:[N.headerLabelWrap,h],accessibilityRole:"button",accessibilityLabel:`${ce}, ${"years"===Z?P.switchToDecades:P.switchToYears}`,hitSlop:8,...hitSlopMarker(8),children:_jsxs(Animated.View,{style:[N.headerLabelInner,{transform:[{scale:se}]}],children:[_jsx(Animated.Text,{style:[N.headerLabel,{transform:[{translateX:0}]}],accessibilityLiveRegion:"polite",children:ce}),_jsx(View,{style:N.headerCaret,children:(F.settings.icons.chevronDown??defaultIcons.chevronDown)({size:F.text.sm.size,color:F.colors["text-muted"]})})]})}),_jsx(Pressable,{onPress:ge,style:({pressed:e})=>[N.navBtn,e&&N.navBtnPressed,b],accessibilityRole:"button",accessibilityLabel:"years"===Z?P.nextYears:P.nextDecades,hitSlop:8,...hitSlopMarker(8),children:_jsx(Text,{style:N.navText,variant:"title",children:"›"})})]}):null,"days"===Z?_jsx(Calendar,{selectionMode:"single",value:U?{start:U}:null,onChange:fe,month:G,onMonthChange:q,minDate:s,maxDate:i,disabledDates:o,weekStartsOn:c,locale:n,haptic:p,headerLabelStyle:h,navButtonStyle:b,onTitlePress:be,labels:{previousMonth:P.previousMonth,nextMonth:P.nextMonth},testID:B?`${B}-grid`:void 0}):_jsx(Animated.View,"years"===Z?{style:[N.yearGrid,{opacity:ae,transform:[{scale:re}]}],children:Array.from({length:3},(e,t)=>le.slice(4*t,4*t+4)).map(e=>_jsx(View,{style:N.gridRow,children:e.map(e=>{const t=de(e),a=!!U&&U.getFullYear()===e,r=O.getFullYear()===e,s=a?F.colors.primary:"transparent",i=r&&!a?F.colors.primary:"transparent",o=a?F.colors["on-primary"]:t?F.colors["text-disabled"]:F.colors["text-body"],l=t?.3:1;return _jsx(Pressable,{disabled:t,onPress:()=>ye(e),accessibilityRole:"button",accessibilityLabel:P.year(e),accessibilityState:{selected:a,disabled:t},"aria-selected":a,"aria-disabled":t,style:N.yearCell,children:_jsx(View,{style:[N.yearInner,{backgroundColor:s,borderColor:i,borderWidth:r&&!a?1.5:0,opacity:l}],children:_jsx(Text,{style:[N.yearText,{color:o}],variant:"body",children:e})})},`year-${e}`)})},`yr-${e[0]}`))}:{style:[N.yearGrid,{opacity:ae,transform:[{scale:re}]}],children:Array.from({length:3},(e,t)=>ne.slice(4*t,4*t+4)).map(e=>_jsx(View,{style:N.gridRow,children:e.map(e=>{const t=e+10-1,a=ue(e),r=!!U&&decadeStartFor(U.getFullYear())===e,s=decadeStartFor(O.getFullYear())===e,i=r?F.colors.primary:"transparent",o=s&&!r?F.colors.primary:"transparent",l=r?F.colors["on-primary"]:a?F.colors["text-disabled"]:F.colors["text-body"],n=a?.3:1;return _jsx(Pressable,{disabled:a,onPress:()=>pe(e),accessibilityRole:"button",accessibilityLabel:P.decade(e,t),accessibilityState:{selected:r,disabled:a},"aria-selected":r,"aria-disabled":a,style:N.yearCell,children:_jsxs(View,{style:[N.yearInner,{backgroundColor:i,borderColor:o,borderWidth:s&&!r?1.5:0,opacity:n}],children:[_jsx(Text,{style:[N.yearText,{color:l}],variant:"body",children:`${e}s`}),_jsx(Text,{variant:"caption",style:[N.decadeRangeText,{color:r?F.colors["on-primary"]:F.colors["text-subtle"]}],children:`${e}-${t}`})]})},`decade-${e}`)})},`dec-${e[0]}`))}),_jsxs(View,{style:N.footer,children:[_jsx(Pressable,{onPress:Se,style:({pressed:e})=>[N.footerBtn,N.footerCancel,e&&N.footerBtnPressed,y],accessibilityRole:"button",accessibilityLabel:P.cancel,children:_jsx(Text,{style:[N.footerBtnText,{color:F.colors["text-muted"]}],variant:"label",weight:"semibold",children:P.cancel})}),_jsx(Pressable,{onPress:Te,disabled:!U,style:({pressed:e})=>[N.footerBtn,N.footerConfirm,{backgroundColor:F.colors.primary,opacity:U?1:.5},e&&{backgroundColor:F.colors["primary-hover"]},y],accessibilityRole:"button",accessibilityLabel:P.confirm,accessibilityState:{disabled:!U},"aria-disabled":!U,children:_jsx(Text,{style:[N.footerBtnText,{color:F.colors["on-primary"]}],variant:"label",weight:"semibold",children:P.confirm})})]})]}),Ve=t?(R??(e=>e.toLocaleDateString()))(t):void 0,Pe=!k;if("inline"===V)return E||Pe?Pe?_jsxs(_Fragment,{children:[_jsx(PickerTrigger,{label:x,value:Ve,placeholder:v,helperText:D,error:C,required:w,disabled:j,size:S,variant:_,clearable:T,onClear:A,onPress:()=>L(!0),triggerStyle:M,testID:f}),E?Me:null]}):Me:null;const ke=_jsx(Modal,{visible:E,transparent:!0,statusBarTranslucent:!0,navigationBarTranslucent:!0,animationType:"none",onRequestClose:ve,children:_jsx(ModalSafeArea,{onInsets:H,children:_jsxs(AnimatedGestureRoot,{collapsable:!1,style:[N.backdrop,{backgroundColor:je}],children:[_jsx(Pressable,{style:StyleSheet.absoluteFill,onPress:ve,accessibilityLabel:P.dismiss}),_jsx(Animated.View,{style:[N.sheetWrap,{paddingBottom:Math.max(Y.bottom,F.space.lg),opacity:we,transform:[{translateY:Animated.add(Ae,ee)}]}],onLayout:e=>{te.current=e.nativeEvent.layout.height},accessibilityViewIsModal:!0,accessibilityRole:"none",children:Me}),_jsx(ToastHost,{})]})})});return Pe?_jsxs(_Fragment,{children:[_jsx(PickerTrigger,{label:x,value:Ve,placeholder:v,helperText:D,error:C,required:w,disabled:j,size:S,variant:_,clearable:T,onClear:A,onPress:()=>L(!0),triggerStyle:M,testID:f}),ke]}):ke},buildStyles=e=>{const t=e.shadow.popover;return StyleSheet.create({backdrop:{...StyleSheet.absoluteFill},sheetWrap:{position:"absolute",left:0,right:0,bottom:0,paddingHorizontal:e.space.md,paddingBottom:e.space.lg},card:{backgroundColor:e.colors.surface,borderRadius:e.radius.xl,...smoothCorners,padding:e.space.lg,shadowColor:t.shadowColor,shadowOffset:t.shadowOffset,shadowOpacity:t.shadowOpacity,shadowRadius:t.shadowRadius,elevation:t.elevation},grabArea:{marginTop:-e.space.lg,paddingTop:e.space.sm},handle:{alignSelf:"center",width:36,height:4,borderRadius:e.radius.pill,...smoothCorners,backgroundColor:e.colors["border-subtle"],marginBottom:e.space.sm},titleRow:{marginBottom:e.space.sm},title:{fontSize:e.text.lg.size,lineHeight:Math.round(e.text.lg.size*e.leading.body),fontWeight:e.weight.semibold,color:e.colors["text-body"]},headerRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:e.space.md},navBtn:{width:36,height:36,borderRadius:e.radius.pill,...smoothCorners,alignItems:"center",justifyContent:"center",backgroundColor:e.colors["bg-subtle"]},navBtnPressed:{backgroundColor:e.colors["surface-pressed"]},navText:{fontSize:e.text["2xl"].size,lineHeight:26,color:e.colors["text-body"],fontWeight:e.weight.semibold},headerLabelWrap:{flex:1,alignItems:"center"},headerLabelInner:{flexDirection:"row",alignItems:"center",justifyContent:"center"},headerLabel:{fontSize:e.text.base.size,fontWeight:e.weight.semibold,color:e.colors["text-body"]},headerCaret:{marginLeft:e.space.xs,alignItems:"center",justifyContent:"center"},gridRow:{flexDirection:"row"},yearGrid:{},yearCell:{flex:1,aspectRatio:1.6,alignItems:"center",justifyContent:"center",padding:e.space.xs},yearInner:{width:"100%",height:"100%",borderRadius:e.radius.lg,...smoothCorners,alignItems:"center",justifyContent:"center"},yearText:{fontSize:e.text.base.size,lineHeight:Math.round(e.text.base.size*e.leading.body),fontWeight:e.weight.semibold},decadeRangeText:{fontSize:e.text.xs.size,lineHeight:Math.round(e.text.xs.size*e.leading.body),fontWeight:e.weight.medium,marginTop:e.space.xxs},footer:{flexDirection:"row",justifyContent:"flex-end",alignItems:"center",marginTop:e.space.lg,gap:e.space.sm},footerBtn:{paddingHorizontal:e.space.lg,paddingVertical:e.space.sm,borderRadius:e.radius.md,...smoothCorners,minHeight:40,alignItems:"center",justifyContent:"center"},footerCancel:{backgroundColor:"transparent"},footerConfirm:{},footerBtnPressed:{opacity:.85},footerBtnText:{fontSize:e.text.sm.size,lineHeight:Math.round(e.text.sm.size*e.leading.body),fontWeight:e.weight.semibold}})};export{DatePicker};export default DatePicker;
@@ -1 +1 @@
1
- "use strict";export{DatePicker,default}from"./DatePicker.js";
1
+ "use strict";export{DatePicker,DEFAULT_DATE_PICKER_LABELS,default}from"./DatePicker.js";