@webority/mobile-ui 0.0.39 → 0.1.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 (953) hide show
  1. package/lib/commonjs/components/Accordion/Accordion.js +1 -343
  2. package/lib/commonjs/components/Accordion/index.js +1 -26
  3. package/lib/commonjs/components/AmountSlider/AmountSlider.js +1 -209
  4. package/lib/commonjs/components/AmountSlider/index.js +1 -20
  5. package/lib/commonjs/components/AnimatePresence/AnimatePresence.js +1 -71
  6. package/lib/commonjs/components/AnimatePresence/index.js +1 -13
  7. package/lib/commonjs/components/AppBar/AppBar.js +1 -358
  8. package/lib/commonjs/components/AppBar/index.js +1 -20
  9. package/lib/commonjs/components/AppIcon/AppIcon.js +1 -155
  10. package/lib/commonjs/components/AppIcon/catalog/bold/a.g.js +1 -84
  11. package/lib/commonjs/components/AppIcon/catalog/bold/b.g.js +1 -89
  12. package/lib/commonjs/components/AppIcon/catalog/bold/c.g.js +1 -118
  13. package/lib/commonjs/components/AppIcon/catalog/bold/d.g.js +1 -68
  14. package/lib/commonjs/components/AppIcon/catalog/bold/e.g.js +1 -46
  15. package/lib/commonjs/components/AppIcon/catalog/bold/f.g.js +1 -52
  16. package/lib/commonjs/components/AppIcon/catalog/bold/g.g.js +1 -54
  17. package/lib/commonjs/components/AppIcon/catalog/bold/h.g.js +1 -52
  18. package/lib/commonjs/components/AppIcon/catalog/bold/i.g.js +1 -31
  19. package/lib/commonjs/components/AppIcon/catalog/bold/j.g.js +1 -18
  20. package/lib/commonjs/components/AppIcon/catalog/bold/k.g.js +1 -20
  21. package/lib/commonjs/components/AppIcon/catalog/bold/l.g.js +1 -52
  22. package/lib/commonjs/components/AppIcon/catalog/bold/m.g.js +1 -105
  23. package/lib/commonjs/components/AppIcon/catalog/bold/n.g.js +1 -34
  24. package/lib/commonjs/components/AppIcon/catalog/bold/o.g.js +1 -21
  25. package/lib/commonjs/components/AppIcon/catalog/bold/p.g.js +1 -60
  26. package/lib/commonjs/components/AppIcon/catalog/bold/q.g.js +1 -22
  27. package/lib/commonjs/components/AppIcon/catalog/bold/r.g.js +1 -59
  28. package/lib/commonjs/components/AppIcon/catalog/bold/s.g.js +1 -113
  29. package/lib/commonjs/components/AppIcon/catalog/bold/t.g.js +1 -74
  30. package/lib/commonjs/components/AppIcon/catalog/bold/u.g.js +1 -28
  31. package/lib/commonjs/components/AppIcon/catalog/bold/v.g.js +1 -40
  32. package/lib/commonjs/components/AppIcon/catalog/bold/w.g.js +1 -41
  33. package/lib/commonjs/components/AppIcon/catalog/bold/x.g.js +1 -18
  34. package/lib/commonjs/components/AppIcon/catalog/bold/y.g.js +1 -16
  35. package/lib/commonjs/components/AppIcon/catalog/bold/z.g.js +1 -17
  36. package/lib/commonjs/components/AppIcon/catalog/broken/a.g.js +1 -84
  37. package/lib/commonjs/components/AppIcon/catalog/broken/b.g.js +1 -89
  38. package/lib/commonjs/components/AppIcon/catalog/broken/c.g.js +1 -118
  39. package/lib/commonjs/components/AppIcon/catalog/broken/d.g.js +1 -68
  40. package/lib/commonjs/components/AppIcon/catalog/broken/e.g.js +1 -46
  41. package/lib/commonjs/components/AppIcon/catalog/broken/f.g.js +1 -52
  42. package/lib/commonjs/components/AppIcon/catalog/broken/g.g.js +1 -54
  43. package/lib/commonjs/components/AppIcon/catalog/broken/h.g.js +1 -52
  44. package/lib/commonjs/components/AppIcon/catalog/broken/i.g.js +1 -31
  45. package/lib/commonjs/components/AppIcon/catalog/broken/j.g.js +1 -18
  46. package/lib/commonjs/components/AppIcon/catalog/broken/k.g.js +1 -20
  47. package/lib/commonjs/components/AppIcon/catalog/broken/l.g.js +1 -52
  48. package/lib/commonjs/components/AppIcon/catalog/broken/m.g.js +1 -105
  49. package/lib/commonjs/components/AppIcon/catalog/broken/n.g.js +1 -34
  50. package/lib/commonjs/components/AppIcon/catalog/broken/o.g.js +1 -21
  51. package/lib/commonjs/components/AppIcon/catalog/broken/p.g.js +1 -60
  52. package/lib/commonjs/components/AppIcon/catalog/broken/q.g.js +1 -22
  53. package/lib/commonjs/components/AppIcon/catalog/broken/r.g.js +1 -59
  54. package/lib/commonjs/components/AppIcon/catalog/broken/s.g.js +1 -113
  55. package/lib/commonjs/components/AppIcon/catalog/broken/t.g.js +1 -74
  56. package/lib/commonjs/components/AppIcon/catalog/broken/u.g.js +1 -28
  57. package/lib/commonjs/components/AppIcon/catalog/broken/v.g.js +1 -40
  58. package/lib/commonjs/components/AppIcon/catalog/broken/w.g.js +1 -41
  59. package/lib/commonjs/components/AppIcon/catalog/broken/x.g.js +1 -18
  60. package/lib/commonjs/components/AppIcon/catalog/broken/y.g.js +1 -16
  61. package/lib/commonjs/components/AppIcon/catalog/broken/z.g.js +1 -17
  62. package/lib/commonjs/components/AppIcon/catalog/bulk/a.g.js +1 -84
  63. package/lib/commonjs/components/AppIcon/catalog/bulk/b.g.js +1 -89
  64. package/lib/commonjs/components/AppIcon/catalog/bulk/c.g.js +1 -118
  65. package/lib/commonjs/components/AppIcon/catalog/bulk/d.g.js +1 -68
  66. package/lib/commonjs/components/AppIcon/catalog/bulk/e.g.js +1 -46
  67. package/lib/commonjs/components/AppIcon/catalog/bulk/f.g.js +1 -52
  68. package/lib/commonjs/components/AppIcon/catalog/bulk/g.g.js +1 -54
  69. package/lib/commonjs/components/AppIcon/catalog/bulk/h.g.js +1 -52
  70. package/lib/commonjs/components/AppIcon/catalog/bulk/i.g.js +1 -31
  71. package/lib/commonjs/components/AppIcon/catalog/bulk/j.g.js +1 -18
  72. package/lib/commonjs/components/AppIcon/catalog/bulk/k.g.js +1 -20
  73. package/lib/commonjs/components/AppIcon/catalog/bulk/l.g.js +1 -52
  74. package/lib/commonjs/components/AppIcon/catalog/bulk/m.g.js +1 -105
  75. package/lib/commonjs/components/AppIcon/catalog/bulk/n.g.js +1 -34
  76. package/lib/commonjs/components/AppIcon/catalog/bulk/o.g.js +1 -21
  77. package/lib/commonjs/components/AppIcon/catalog/bulk/p.g.js +1 -60
  78. package/lib/commonjs/components/AppIcon/catalog/bulk/q.g.js +1 -22
  79. package/lib/commonjs/components/AppIcon/catalog/bulk/r.g.js +1 -59
  80. package/lib/commonjs/components/AppIcon/catalog/bulk/s.g.js +1 -113
  81. package/lib/commonjs/components/AppIcon/catalog/bulk/t.g.js +1 -74
  82. package/lib/commonjs/components/AppIcon/catalog/bulk/u.g.js +1 -28
  83. package/lib/commonjs/components/AppIcon/catalog/bulk/v.g.js +1 -40
  84. package/lib/commonjs/components/AppIcon/catalog/bulk/w.g.js +1 -41
  85. package/lib/commonjs/components/AppIcon/catalog/bulk/x.g.js +1 -18
  86. package/lib/commonjs/components/AppIcon/catalog/bulk/y.g.js +1 -16
  87. package/lib/commonjs/components/AppIcon/catalog/bulk/z.g.js +1 -17
  88. package/lib/commonjs/components/AppIcon/catalog/linear/a.g.js +1 -84
  89. package/lib/commonjs/components/AppIcon/catalog/linear/b.g.js +1 -89
  90. package/lib/commonjs/components/AppIcon/catalog/linear/c.g.js +1 -118
  91. package/lib/commonjs/components/AppIcon/catalog/linear/d.g.js +1 -68
  92. package/lib/commonjs/components/AppIcon/catalog/linear/e.g.js +1 -46
  93. package/lib/commonjs/components/AppIcon/catalog/linear/f.g.js +1 -52
  94. package/lib/commonjs/components/AppIcon/catalog/linear/g.g.js +1 -54
  95. package/lib/commonjs/components/AppIcon/catalog/linear/h.g.js +1 -52
  96. package/lib/commonjs/components/AppIcon/catalog/linear/i.g.js +1 -31
  97. package/lib/commonjs/components/AppIcon/catalog/linear/j.g.js +1 -18
  98. package/lib/commonjs/components/AppIcon/catalog/linear/k.g.js +1 -20
  99. package/lib/commonjs/components/AppIcon/catalog/linear/l.g.js +1 -52
  100. package/lib/commonjs/components/AppIcon/catalog/linear/m.g.js +1 -105
  101. package/lib/commonjs/components/AppIcon/catalog/linear/n.g.js +1 -34
  102. package/lib/commonjs/components/AppIcon/catalog/linear/o.g.js +1 -21
  103. package/lib/commonjs/components/AppIcon/catalog/linear/p.g.js +1 -60
  104. package/lib/commonjs/components/AppIcon/catalog/linear/q.g.js +1 -22
  105. package/lib/commonjs/components/AppIcon/catalog/linear/r.g.js +1 -59
  106. package/lib/commonjs/components/AppIcon/catalog/linear/s.g.js +1 -113
  107. package/lib/commonjs/components/AppIcon/catalog/linear/t.g.js +1 -74
  108. package/lib/commonjs/components/AppIcon/catalog/linear/u.g.js +1 -28
  109. package/lib/commonjs/components/AppIcon/catalog/linear/v.g.js +1 -40
  110. package/lib/commonjs/components/AppIcon/catalog/linear/w.g.js +1 -41
  111. package/lib/commonjs/components/AppIcon/catalog/linear/x.g.js +1 -18
  112. package/lib/commonjs/components/AppIcon/catalog/linear/y.g.js +1 -16
  113. package/lib/commonjs/components/AppIcon/catalog/linear/z.g.js +1 -17
  114. package/lib/commonjs/components/AppIcon/catalog/outline/a.g.js +1 -84
  115. package/lib/commonjs/components/AppIcon/catalog/outline/b.g.js +1 -89
  116. package/lib/commonjs/components/AppIcon/catalog/outline/c.g.js +1 -118
  117. package/lib/commonjs/components/AppIcon/catalog/outline/d.g.js +1 -68
  118. package/lib/commonjs/components/AppIcon/catalog/outline/e.g.js +1 -46
  119. package/lib/commonjs/components/AppIcon/catalog/outline/f.g.js +1 -52
  120. package/lib/commonjs/components/AppIcon/catalog/outline/g.g.js +1 -54
  121. package/lib/commonjs/components/AppIcon/catalog/outline/h.g.js +1 -52
  122. package/lib/commonjs/components/AppIcon/catalog/outline/i.g.js +1 -31
  123. package/lib/commonjs/components/AppIcon/catalog/outline/j.g.js +1 -18
  124. package/lib/commonjs/components/AppIcon/catalog/outline/k.g.js +1 -20
  125. package/lib/commonjs/components/AppIcon/catalog/outline/l.g.js +1 -52
  126. package/lib/commonjs/components/AppIcon/catalog/outline/m.g.js +1 -105
  127. package/lib/commonjs/components/AppIcon/catalog/outline/n.g.js +1 -34
  128. package/lib/commonjs/components/AppIcon/catalog/outline/o.g.js +1 -21
  129. package/lib/commonjs/components/AppIcon/catalog/outline/p.g.js +1 -60
  130. package/lib/commonjs/components/AppIcon/catalog/outline/q.g.js +1 -22
  131. package/lib/commonjs/components/AppIcon/catalog/outline/r.g.js +1 -59
  132. package/lib/commonjs/components/AppIcon/catalog/outline/s.g.js +1 -113
  133. package/lib/commonjs/components/AppIcon/catalog/outline/t.g.js +1 -74
  134. package/lib/commonjs/components/AppIcon/catalog/outline/u.g.js +1 -28
  135. package/lib/commonjs/components/AppIcon/catalog/outline/v.g.js +1 -40
  136. package/lib/commonjs/components/AppIcon/catalog/outline/w.g.js +1 -41
  137. package/lib/commonjs/components/AppIcon/catalog/outline/x.g.js +1 -18
  138. package/lib/commonjs/components/AppIcon/catalog/outline/y.g.js +1 -16
  139. package/lib/commonjs/components/AppIcon/catalog/outline/z.g.js +1 -17
  140. package/lib/commonjs/components/AppIcon/catalog/twotone/a.g.js +1 -84
  141. package/lib/commonjs/components/AppIcon/catalog/twotone/b.g.js +1 -89
  142. package/lib/commonjs/components/AppIcon/catalog/twotone/c.g.js +1 -118
  143. package/lib/commonjs/components/AppIcon/catalog/twotone/d.g.js +1 -68
  144. package/lib/commonjs/components/AppIcon/catalog/twotone/e.g.js +1 -46
  145. package/lib/commonjs/components/AppIcon/catalog/twotone/f.g.js +1 -52
  146. package/lib/commonjs/components/AppIcon/catalog/twotone/g.g.js +1 -54
  147. package/lib/commonjs/components/AppIcon/catalog/twotone/h.g.js +1 -52
  148. package/lib/commonjs/components/AppIcon/catalog/twotone/i.g.js +1 -31
  149. package/lib/commonjs/components/AppIcon/catalog/twotone/j.g.js +1 -18
  150. package/lib/commonjs/components/AppIcon/catalog/twotone/k.g.js +1 -20
  151. package/lib/commonjs/components/AppIcon/catalog/twotone/l.g.js +1 -52
  152. package/lib/commonjs/components/AppIcon/catalog/twotone/m.g.js +1 -105
  153. package/lib/commonjs/components/AppIcon/catalog/twotone/n.g.js +1 -34
  154. package/lib/commonjs/components/AppIcon/catalog/twotone/o.g.js +1 -21
  155. package/lib/commonjs/components/AppIcon/catalog/twotone/p.g.js +1 -60
  156. package/lib/commonjs/components/AppIcon/catalog/twotone/q.g.js +1 -22
  157. package/lib/commonjs/components/AppIcon/catalog/twotone/r.g.js +1 -59
  158. package/lib/commonjs/components/AppIcon/catalog/twotone/s.g.js +1 -113
  159. package/lib/commonjs/components/AppIcon/catalog/twotone/t.g.js +1 -74
  160. package/lib/commonjs/components/AppIcon/catalog/twotone/u.g.js +1 -28
  161. package/lib/commonjs/components/AppIcon/catalog/twotone/v.g.js +1 -40
  162. package/lib/commonjs/components/AppIcon/catalog/twotone/w.g.js +1 -41
  163. package/lib/commonjs/components/AppIcon/catalog/twotone/x.g.js +1 -18
  164. package/lib/commonjs/components/AppIcon/catalog/twotone/y.g.js +1 -16
  165. package/lib/commonjs/components/AppIcon/catalog/twotone/z.g.js +1 -17
  166. package/lib/commonjs/components/AppIcon/catalog.g.js +1 -187
  167. package/lib/commonjs/components/AppIcon/defaultIcons.js +1 -83
  168. package/lib/commonjs/components/AppIcon/glyphs.g.js +1 -160
  169. package/lib/commonjs/components/AppIcon/index.js +1 -64
  170. package/lib/commonjs/components/AppIcon/slotIcon.js +1 -67
  171. package/lib/commonjs/components/AppIcon/variants.g.js +1 -741
  172. package/lib/commonjs/components/AsyncBlock/AsyncBlock.js +1 -87
  173. package/lib/commonjs/components/AsyncBlock/index.js +1 -20
  174. package/lib/commonjs/components/AuthedImage/AuthedImage.js +1 -230
  175. package/lib/commonjs/components/AuthedImage/authedImageCache.js +1 -351
  176. package/lib/commonjs/components/AuthedImage/index.js +1 -45
  177. package/lib/commonjs/components/Autocomplete/Autocomplete.js +1 -227
  178. package/lib/commonjs/components/Autocomplete/index.js +1 -13
  179. package/lib/commonjs/components/Avatar/Avatar.js +1 -502
  180. package/lib/commonjs/components/Avatar/index.js +1 -32
  181. package/lib/commonjs/components/Badge/Badge.js +1 -298
  182. package/lib/commonjs/components/Badge/index.js +1 -20
  183. package/lib/commonjs/components/Banner/Banner.js +1 -401
  184. package/lib/commonjs/components/Banner/index.js +1 -20
  185. package/lib/commonjs/components/BottomNavigation/BottomNavigation.js +1 -893
  186. package/lib/commonjs/components/BottomNavigation/index.js +1 -20
  187. package/lib/commonjs/components/BottomSheet/BottomSheet.js +1 -732
  188. package/lib/commonjs/components/BottomSheet/index.js +1 -26
  189. package/lib/commonjs/components/Box/Box.js +1 -226
  190. package/lib/commonjs/components/Box/index.js +1 -37
  191. package/lib/commonjs/components/Button/Button.js +1 -561
  192. package/lib/commonjs/components/Button/index.js +1 -20
  193. package/lib/commonjs/components/Card/Card.js +1 -407
  194. package/lib/commonjs/components/Card/index.js +1 -20
  195. package/lib/commonjs/components/Carousel/Carousel.js +1 -587
  196. package/lib/commonjs/components/Carousel/index.js +1 -20
  197. package/lib/commonjs/components/Checkbox/Checkbox.js +1 -187
  198. package/lib/commonjs/components/Checkbox/index.js +1 -20
  199. package/lib/commonjs/components/Chip/Chip.js +1 -358
  200. package/lib/commonjs/components/Chip/index.js +1 -20
  201. package/lib/commonjs/components/ChoiceGroup/ChoiceGroup.js +1 -336
  202. package/lib/commonjs/components/ChoiceGroup/index.js +1 -20
  203. package/lib/commonjs/components/Confetti/Confetti.js +1 -382
  204. package/lib/commonjs/components/Confetti/index.js +1 -13
  205. package/lib/commonjs/components/DatePicker/DatePicker.js +1 -1054
  206. package/lib/commonjs/components/DatePicker/index.js +1 -20
  207. package/lib/commonjs/components/DateRangePicker/DateRangePicker.js +1 -794
  208. package/lib/commonjs/components/DateRangePicker/index.js +1 -20
  209. package/lib/commonjs/components/DecimalInput/DecimalInput.js +1 -0
  210. package/lib/commonjs/components/DecimalInput/index.js +1 -0
  211. package/lib/commonjs/components/Descriptions/Descriptions.js +1 -107
  212. package/lib/commonjs/components/Descriptions/index.js +1 -20
  213. package/lib/commonjs/components/Dialog/Dialog.js +1 -248
  214. package/lib/commonjs/components/Dialog/index.js +1 -20
  215. package/lib/commonjs/components/Divider/Divider.js +1 -117
  216. package/lib/commonjs/components/Divider/index.js +1 -20
  217. package/lib/commonjs/components/Drawer/Drawer.js +1 -382
  218. package/lib/commonjs/components/Drawer/index.js +1 -20
  219. package/lib/commonjs/components/EmptyState/EmptyState.js +1 -236
  220. package/lib/commonjs/components/EmptyState/index.js +1 -20
  221. package/lib/commonjs/components/ErrorBoundary/ErrorBoundary.js +1 -136
  222. package/lib/commonjs/components/ErrorBoundary/index.js +1 -27
  223. package/lib/commonjs/components/ErrorBoundary/useErrorHandler.js +1 -24
  224. package/lib/commonjs/components/ErrorBoundary/withErrorBoundary.js +1 -28
  225. package/lib/commonjs/components/FieldBase/Chevron.js +1 -75
  226. package/lib/commonjs/components/FieldBase/ChoiceText.js +1 -0
  227. package/lib/commonjs/components/FieldBase/FieldBase.js +1 -804
  228. package/lib/commonjs/components/FieldBase/index.js +1 -75
  229. package/lib/commonjs/components/FieldBase/useFloatingLabel.js +1 -181
  230. package/lib/commonjs/components/FilePicker/FilePicker.js +1 -797
  231. package/lib/commonjs/components/FilePicker/index.js +1 -26
  232. package/lib/commonjs/components/FileViewer/FileViewer.js +1 -259
  233. package/lib/commonjs/components/FileViewer/index.js +1 -13
  234. package/lib/commonjs/components/FloatingActionButton/FloatingActionButton.js +1 -696
  235. package/lib/commonjs/components/FloatingActionButton/index.js +1 -26
  236. package/lib/commonjs/components/ForceUpdateDialog/ForceUpdateDialog.js +1 -90
  237. package/lib/commonjs/components/ForceUpdateDialog/index.js +1 -20
  238. package/lib/commonjs/components/FormField/FormField.js +1 -170
  239. package/lib/commonjs/components/FormField/index.js +1 -20
  240. package/lib/commonjs/components/IconBadge/IconBadge.js +1 -0
  241. package/lib/commonjs/components/IconBadge/index.js +1 -0
  242. package/lib/commonjs/components/IconButton/IconButton.js +1 -198
  243. package/lib/commonjs/components/IconButton/index.js +1 -13
  244. package/lib/commonjs/components/ImageGallery/ImageGallery.js +1 -594
  245. package/lib/commonjs/components/ImageGallery/index.js +1 -20
  246. package/lib/commonjs/components/InlineSelect/InlineSelect.js +1 -190
  247. package/lib/commonjs/components/InlineSelect/index.js +1 -20
  248. package/lib/commonjs/components/Input/Input.js +1 -591
  249. package/lib/commonjs/components/Input/index.js +1 -20
  250. package/lib/commonjs/components/KeyboardAwareScrollView/KeyboardAwareScrollView.js +1 -168
  251. package/lib/commonjs/components/KeyboardAwareScrollView/index.js +1 -13
  252. package/lib/commonjs/components/KeyboardToolbar/KeyboardToolbar.js +1 -135
  253. package/lib/commonjs/components/KeyboardToolbar/index.js +1 -13
  254. package/lib/commonjs/components/ListItem/ListItem.js +1 -344
  255. package/lib/commonjs/components/ListItem/index.js +1 -20
  256. package/lib/commonjs/components/LoaderOverlay/LoaderOverlay.js +1 -203
  257. package/lib/commonjs/components/LoaderOverlay/index.js +1 -25
  258. package/lib/commonjs/components/Markdown/Markdown.js +1 -276
  259. package/lib/commonjs/components/Markdown/index.js +1 -13
  260. package/lib/commonjs/components/Markdown/parse.js +1 -229
  261. package/lib/commonjs/components/Modal/Modal.js +1 -376
  262. package/lib/commonjs/components/Modal/index.js +1 -26
  263. package/lib/commonjs/components/Notation/Notation.js +1 -0
  264. package/lib/commonjs/components/Notation/index.js +1 -0
  265. package/lib/commonjs/components/NumberInput/NumberInput.js +1 -386
  266. package/lib/commonjs/components/NumberInput/index.js +1 -20
  267. package/lib/commonjs/components/OTPInput/OTPInput.js +1 -448
  268. package/lib/commonjs/components/OTPInput/index.js +1 -20
  269. package/lib/commonjs/components/OptionSheet/OptionSheet.js +1 -718
  270. package/lib/commonjs/components/OptionSheet/index.js +1 -0
  271. package/lib/commonjs/components/PhoneNumberInput/PhoneNumberInput.js +1 -574
  272. package/lib/commonjs/components/PhoneNumberInput/index.js +1 -32
  273. package/lib/commonjs/components/PickerTrigger/PickerTrigger.js +1 -150
  274. package/lib/commonjs/components/PickerTrigger/index.js +1 -20
  275. package/lib/commonjs/components/ProfileCompletion/ProfileCompletion.js +1 -214
  276. package/lib/commonjs/components/ProfileCompletion/index.js +1 -20
  277. package/lib/commonjs/components/ProfilePicker/ProfilePicker.js +1 -531
  278. package/lib/commonjs/components/ProfilePicker/index.js +1 -20
  279. package/lib/commonjs/components/ProgressBar/ProgressBar.js +1 -202
  280. package/lib/commonjs/components/ProgressBar/index.js +1 -20
  281. package/lib/commonjs/components/ProgressRing/ProgressRing.js +1 -191
  282. package/lib/commonjs/components/ProgressRing/index.js +1 -20
  283. package/lib/commonjs/components/Radio/Radio.js +1 -127
  284. package/lib/commonjs/components/Radio/RadioDot.js +1 -108
  285. package/lib/commonjs/components/Radio/RadioGroup.js +1 -50
  286. package/lib/commonjs/components/Radio/index.js +1 -46
  287. package/lib/commonjs/components/Rating/Rating.js +1 -338
  288. package/lib/commonjs/components/Rating/index.js +1 -20
  289. package/lib/commonjs/components/Repeater/Repeater.js +1 -166
  290. package/lib/commonjs/components/Repeater/index.js +1 -20
  291. package/lib/commonjs/components/RichTextEditor/RichTextEditor.js +1 -314
  292. package/lib/commonjs/components/RichTextEditor/index.js +1 -20
  293. package/lib/commonjs/components/RichTextEditor/markdownActions.js +1 -213
  294. package/lib/commonjs/components/SearchBar/SearchBar.js +1 -244
  295. package/lib/commonjs/components/SearchBar/index.js +1 -20
  296. package/lib/commonjs/components/SectionHeader/SectionHeader.js +1 -0
  297. package/lib/commonjs/components/SectionHeader/index.js +1 -0
  298. package/lib/commonjs/components/SegmentedControl/SegmentedControl.js +1 -320
  299. package/lib/commonjs/components/SegmentedControl/index.js +1 -20
  300. package/lib/commonjs/components/Select/Select.js +1 -277
  301. package/lib/commonjs/components/Select/index.js +1 -20
  302. package/lib/commonjs/components/Skeleton/Skeleton.js +1 -285
  303. package/lib/commonjs/components/Skeleton/SkeletonClock.js +1 -118
  304. package/lib/commonjs/components/Skeleton/SkeletonContent.js +1 -309
  305. package/lib/commonjs/components/Skeleton/SkeletonList.js +1 -92
  306. package/lib/commonjs/components/Skeleton/SkeletonProvider.js +1 -114
  307. package/lib/commonjs/components/Skeleton/SkeletonSkip.js +1 -37
  308. package/lib/commonjs/components/Skeleton/index.js +1 -85
  309. package/lib/commonjs/components/SlideToConfirm/SlideToConfirm.js +1 -262
  310. package/lib/commonjs/components/SlideToConfirm/index.js +1 -13
  311. package/lib/commonjs/components/Slider/Slider.js +1 -809
  312. package/lib/commonjs/components/Slider/index.js +1 -20
  313. package/lib/commonjs/components/Slider/valueText.js +1 -266
  314. package/lib/commonjs/components/SliderField/SliderField.js +1 -360
  315. package/lib/commonjs/components/SliderField/index.js +1 -20
  316. package/lib/commonjs/components/Spinner/Spinner.js +1 -203
  317. package/lib/commonjs/components/Spinner/index.js +1 -20
  318. package/lib/commonjs/components/SquircleFill/SquircleFill.js +1 -116
  319. package/lib/commonjs/components/StatTile/StatTile.js +1 -0
  320. package/lib/commonjs/components/StatTile/index.js +1 -0
  321. package/lib/commonjs/components/StatusBadge/StatusBadge.js +1 -233
  322. package/lib/commonjs/components/StatusBadge/index.js +1 -20
  323. package/lib/commonjs/components/Stepper/Stepper.js +1 -779
  324. package/lib/commonjs/components/Stepper/index.js +1 -20
  325. package/lib/commonjs/components/Swipeable/Swipeable.js +1 -383
  326. package/lib/commonjs/components/Swipeable/index.js +1 -20
  327. package/lib/commonjs/components/Switch/Switch.js +1 -233
  328. package/lib/commonjs/components/Switch/index.js +1 -20
  329. package/lib/commonjs/components/Tabs/Tabs.js +1 -428
  330. package/lib/commonjs/components/Tabs/index.js +1 -20
  331. package/lib/commonjs/components/TagInput/TagInput.js +1 -185
  332. package/lib/commonjs/components/TagInput/index.js +1 -20
  333. package/lib/commonjs/components/Text/Text.js +1 -146
  334. package/lib/commonjs/components/Text/index.js +1 -13
  335. package/lib/commonjs/components/TimePicker/TimePicker.js +1 -732
  336. package/lib/commonjs/components/TimePicker/index.js +1 -20
  337. package/lib/commonjs/components/Timeline/Timeline.js +1 -263
  338. package/lib/commonjs/components/Timeline/index.js +1 -20
  339. package/lib/commonjs/components/Toast/Toast.js +1 -326
  340. package/lib/commonjs/components/Toast/ToastProvider.js +1 -200
  341. package/lib/commonjs/components/Toast/index.js +1 -39
  342. package/lib/commonjs/components/Tooltip/Tooltip.js +1 -412
  343. package/lib/commonjs/components/Tooltip/index.js +1 -20
  344. package/lib/commonjs/components/Tour/Tour.js +1 -342
  345. package/lib/commonjs/components/Tour/index.js +1 -20
  346. package/lib/commonjs/components/ZoomableImage/ZoomableImage.js +1 -204
  347. package/lib/commonjs/components/ZoomableImage/index.js +1 -13
  348. package/lib/commonjs/components/index.js +1 -748
  349. package/lib/commonjs/form/FormContext.js +1 -52
  350. package/lib/commonjs/form/HookFormField.js +1 -0
  351. package/lib/commonjs/form/equal.js +1 -56
  352. package/lib/commonjs/form/index.js +1 -81
  353. package/lib/commonjs/form/path.js +1 -91
  354. package/lib/commonjs/form/rules.js +1 -73
  355. package/lib/commonjs/form/types.js +1 -2
  356. package/lib/commonjs/form/useField.js +1 -66
  357. package/lib/commonjs/form/useForm.js +1 -379
  358. package/lib/commonjs/form/useFormCompletion.js +1 -73
  359. package/lib/commonjs/form/useHookFormField.js +1 -0
  360. package/lib/commonjs/hooks/index.js +1 -85
  361. package/lib/commonjs/hooks/useControllableState.js +1 -32
  362. package/lib/commonjs/hooks/useDebounce.js +1 -17
  363. package/lib/commonjs/hooks/useDragToDismiss.js +1 -142
  364. package/lib/commonjs/hooks/useFlickGuard.js +1 -60
  365. package/lib/commonjs/hooks/usePressAnimation.js +1 -130
  366. package/lib/commonjs/hooks/useReducedMotion.js +1 -33
  367. package/lib/commonjs/hooks/useToggle.js +1 -22
  368. package/lib/commonjs/index.js +1 -468
  369. package/lib/commonjs/initUI.js +1 -24
  370. package/lib/commonjs/network/NetworkStatusBanner.js +1 -89
  371. package/lib/commonjs/network/index.js +1 -13
  372. package/lib/commonjs/specs/NativePdfRasterizer.js +1 -9
  373. package/lib/commonjs/theme/Gradient.js +1 -59
  374. package/lib/commonjs/theme/ThemeContext.js +1 -101
  375. package/lib/commonjs/theme/animatedValue.js +1 -69
  376. package/lib/commonjs/theme/index.js +1 -149
  377. package/lib/commonjs/theme/merge.js +1 -30
  378. package/lib/commonjs/theme/textStyle.js +1 -39
  379. package/lib/commonjs/theme/tokens.js +1 -706
  380. package/lib/commonjs/theme/types.js +1 -6
  381. package/lib/commonjs/utils/color.js +1 -58
  382. package/lib/commonjs/utils/corners.js +1 -22
  383. package/lib/commonjs/utils/dimensions.js +1 -37
  384. package/lib/commonjs/utils/feedback.js +1 -76
  385. package/lib/commonjs/utils/hapticUtils.js +1 -94
  386. package/lib/commonjs/utils/hashString.js +1 -22
  387. package/lib/commonjs/utils/index.js +1 -178
  388. package/lib/commonjs/utils/mergeRefs.js +1 -24
  389. package/lib/commonjs/utils/responsive.js +1 -104
  390. package/lib/commonjs/utils/shadows.js +1 -61
  391. package/lib/commonjs/utils/spacing.js +1 -86
  392. package/lib/commonjs/utils/squircle.js +1 -158
  393. package/lib/commonjs/utils/warnUnknownProps.js +1 -46
  394. package/lib/module/components/Accordion/Accordion.js +1 -337
  395. package/lib/module/components/Accordion/index.js +1 -4
  396. package/lib/module/components/AmountSlider/AmountSlider.js +1 -205
  397. package/lib/module/components/AmountSlider/index.js +1 -4
  398. package/lib/module/components/AnimatePresence/AnimatePresence.js +1 -65
  399. package/lib/module/components/AnimatePresence/index.js +1 -4
  400. package/lib/module/components/AppBar/AppBar.js +1 -354
  401. package/lib/module/components/AppBar/index.js +1 -4
  402. package/lib/module/components/AppIcon/AppIcon.js +1 -136
  403. package/lib/module/components/AppIcon/catalog/bold/a.g.js +1 -80
  404. package/lib/module/components/AppIcon/catalog/bold/b.g.js +1 -85
  405. package/lib/module/components/AppIcon/catalog/bold/c.g.js +1 -114
  406. package/lib/module/components/AppIcon/catalog/bold/d.g.js +1 -64
  407. package/lib/module/components/AppIcon/catalog/bold/e.g.js +1 -42
  408. package/lib/module/components/AppIcon/catalog/bold/f.g.js +1 -48
  409. package/lib/module/components/AppIcon/catalog/bold/g.g.js +1 -50
  410. package/lib/module/components/AppIcon/catalog/bold/h.g.js +1 -48
  411. package/lib/module/components/AppIcon/catalog/bold/i.g.js +1 -27
  412. package/lib/module/components/AppIcon/catalog/bold/j.g.js +1 -14
  413. package/lib/module/components/AppIcon/catalog/bold/k.g.js +1 -16
  414. package/lib/module/components/AppIcon/catalog/bold/l.g.js +1 -48
  415. package/lib/module/components/AppIcon/catalog/bold/m.g.js +1 -101
  416. package/lib/module/components/AppIcon/catalog/bold/n.g.js +1 -30
  417. package/lib/module/components/AppIcon/catalog/bold/o.g.js +1 -17
  418. package/lib/module/components/AppIcon/catalog/bold/p.g.js +1 -56
  419. package/lib/module/components/AppIcon/catalog/bold/q.g.js +1 -18
  420. package/lib/module/components/AppIcon/catalog/bold/r.g.js +1 -55
  421. package/lib/module/components/AppIcon/catalog/bold/s.g.js +1 -109
  422. package/lib/module/components/AppIcon/catalog/bold/t.g.js +1 -70
  423. package/lib/module/components/AppIcon/catalog/bold/u.g.js +1 -24
  424. package/lib/module/components/AppIcon/catalog/bold/v.g.js +1 -36
  425. package/lib/module/components/AppIcon/catalog/bold/w.g.js +1 -37
  426. package/lib/module/components/AppIcon/catalog/bold/x.g.js +1 -14
  427. package/lib/module/components/AppIcon/catalog/bold/y.g.js +1 -12
  428. package/lib/module/components/AppIcon/catalog/bold/z.g.js +1 -13
  429. package/lib/module/components/AppIcon/catalog/broken/a.g.js +1 -80
  430. package/lib/module/components/AppIcon/catalog/broken/b.g.js +1 -85
  431. package/lib/module/components/AppIcon/catalog/broken/c.g.js +1 -114
  432. package/lib/module/components/AppIcon/catalog/broken/d.g.js +1 -64
  433. package/lib/module/components/AppIcon/catalog/broken/e.g.js +1 -42
  434. package/lib/module/components/AppIcon/catalog/broken/f.g.js +1 -48
  435. package/lib/module/components/AppIcon/catalog/broken/g.g.js +1 -50
  436. package/lib/module/components/AppIcon/catalog/broken/h.g.js +1 -48
  437. package/lib/module/components/AppIcon/catalog/broken/i.g.js +1 -27
  438. package/lib/module/components/AppIcon/catalog/broken/j.g.js +1 -14
  439. package/lib/module/components/AppIcon/catalog/broken/k.g.js +1 -16
  440. package/lib/module/components/AppIcon/catalog/broken/l.g.js +1 -48
  441. package/lib/module/components/AppIcon/catalog/broken/m.g.js +1 -101
  442. package/lib/module/components/AppIcon/catalog/broken/n.g.js +1 -30
  443. package/lib/module/components/AppIcon/catalog/broken/o.g.js +1 -17
  444. package/lib/module/components/AppIcon/catalog/broken/p.g.js +1 -56
  445. package/lib/module/components/AppIcon/catalog/broken/q.g.js +1 -18
  446. package/lib/module/components/AppIcon/catalog/broken/r.g.js +1 -55
  447. package/lib/module/components/AppIcon/catalog/broken/s.g.js +1 -109
  448. package/lib/module/components/AppIcon/catalog/broken/t.g.js +1 -70
  449. package/lib/module/components/AppIcon/catalog/broken/u.g.js +1 -24
  450. package/lib/module/components/AppIcon/catalog/broken/v.g.js +1 -36
  451. package/lib/module/components/AppIcon/catalog/broken/w.g.js +1 -37
  452. package/lib/module/components/AppIcon/catalog/broken/x.g.js +1 -14
  453. package/lib/module/components/AppIcon/catalog/broken/y.g.js +1 -12
  454. package/lib/module/components/AppIcon/catalog/broken/z.g.js +1 -13
  455. package/lib/module/components/AppIcon/catalog/bulk/a.g.js +1 -80
  456. package/lib/module/components/AppIcon/catalog/bulk/b.g.js +1 -85
  457. package/lib/module/components/AppIcon/catalog/bulk/c.g.js +1 -114
  458. package/lib/module/components/AppIcon/catalog/bulk/d.g.js +1 -64
  459. package/lib/module/components/AppIcon/catalog/bulk/e.g.js +1 -42
  460. package/lib/module/components/AppIcon/catalog/bulk/f.g.js +1 -48
  461. package/lib/module/components/AppIcon/catalog/bulk/g.g.js +1 -50
  462. package/lib/module/components/AppIcon/catalog/bulk/h.g.js +1 -48
  463. package/lib/module/components/AppIcon/catalog/bulk/i.g.js +1 -27
  464. package/lib/module/components/AppIcon/catalog/bulk/j.g.js +1 -14
  465. package/lib/module/components/AppIcon/catalog/bulk/k.g.js +1 -16
  466. package/lib/module/components/AppIcon/catalog/bulk/l.g.js +1 -48
  467. package/lib/module/components/AppIcon/catalog/bulk/m.g.js +1 -101
  468. package/lib/module/components/AppIcon/catalog/bulk/n.g.js +1 -30
  469. package/lib/module/components/AppIcon/catalog/bulk/o.g.js +1 -17
  470. package/lib/module/components/AppIcon/catalog/bulk/p.g.js +1 -56
  471. package/lib/module/components/AppIcon/catalog/bulk/q.g.js +1 -18
  472. package/lib/module/components/AppIcon/catalog/bulk/r.g.js +1 -55
  473. package/lib/module/components/AppIcon/catalog/bulk/s.g.js +1 -109
  474. package/lib/module/components/AppIcon/catalog/bulk/t.g.js +1 -70
  475. package/lib/module/components/AppIcon/catalog/bulk/u.g.js +1 -24
  476. package/lib/module/components/AppIcon/catalog/bulk/v.g.js +1 -36
  477. package/lib/module/components/AppIcon/catalog/bulk/w.g.js +1 -37
  478. package/lib/module/components/AppIcon/catalog/bulk/x.g.js +1 -14
  479. package/lib/module/components/AppIcon/catalog/bulk/y.g.js +1 -12
  480. package/lib/module/components/AppIcon/catalog/bulk/z.g.js +1 -13
  481. package/lib/module/components/AppIcon/catalog/linear/a.g.js +1 -80
  482. package/lib/module/components/AppIcon/catalog/linear/b.g.js +1 -85
  483. package/lib/module/components/AppIcon/catalog/linear/c.g.js +1 -114
  484. package/lib/module/components/AppIcon/catalog/linear/d.g.js +1 -64
  485. package/lib/module/components/AppIcon/catalog/linear/e.g.js +1 -42
  486. package/lib/module/components/AppIcon/catalog/linear/f.g.js +1 -48
  487. package/lib/module/components/AppIcon/catalog/linear/g.g.js +1 -50
  488. package/lib/module/components/AppIcon/catalog/linear/h.g.js +1 -48
  489. package/lib/module/components/AppIcon/catalog/linear/i.g.js +1 -27
  490. package/lib/module/components/AppIcon/catalog/linear/j.g.js +1 -14
  491. package/lib/module/components/AppIcon/catalog/linear/k.g.js +1 -16
  492. package/lib/module/components/AppIcon/catalog/linear/l.g.js +1 -48
  493. package/lib/module/components/AppIcon/catalog/linear/m.g.js +1 -101
  494. package/lib/module/components/AppIcon/catalog/linear/n.g.js +1 -30
  495. package/lib/module/components/AppIcon/catalog/linear/o.g.js +1 -17
  496. package/lib/module/components/AppIcon/catalog/linear/p.g.js +1 -56
  497. package/lib/module/components/AppIcon/catalog/linear/q.g.js +1 -18
  498. package/lib/module/components/AppIcon/catalog/linear/r.g.js +1 -55
  499. package/lib/module/components/AppIcon/catalog/linear/s.g.js +1 -109
  500. package/lib/module/components/AppIcon/catalog/linear/t.g.js +1 -70
  501. package/lib/module/components/AppIcon/catalog/linear/u.g.js +1 -24
  502. package/lib/module/components/AppIcon/catalog/linear/v.g.js +1 -36
  503. package/lib/module/components/AppIcon/catalog/linear/w.g.js +1 -37
  504. package/lib/module/components/AppIcon/catalog/linear/x.g.js +1 -14
  505. package/lib/module/components/AppIcon/catalog/linear/y.g.js +1 -12
  506. package/lib/module/components/AppIcon/catalog/linear/z.g.js +1 -13
  507. package/lib/module/components/AppIcon/catalog/outline/a.g.js +1 -80
  508. package/lib/module/components/AppIcon/catalog/outline/b.g.js +1 -85
  509. package/lib/module/components/AppIcon/catalog/outline/c.g.js +1 -114
  510. package/lib/module/components/AppIcon/catalog/outline/d.g.js +1 -64
  511. package/lib/module/components/AppIcon/catalog/outline/e.g.js +1 -42
  512. package/lib/module/components/AppIcon/catalog/outline/f.g.js +1 -48
  513. package/lib/module/components/AppIcon/catalog/outline/g.g.js +1 -50
  514. package/lib/module/components/AppIcon/catalog/outline/h.g.js +1 -48
  515. package/lib/module/components/AppIcon/catalog/outline/i.g.js +1 -27
  516. package/lib/module/components/AppIcon/catalog/outline/j.g.js +1 -14
  517. package/lib/module/components/AppIcon/catalog/outline/k.g.js +1 -16
  518. package/lib/module/components/AppIcon/catalog/outline/l.g.js +1 -48
  519. package/lib/module/components/AppIcon/catalog/outline/m.g.js +1 -101
  520. package/lib/module/components/AppIcon/catalog/outline/n.g.js +1 -30
  521. package/lib/module/components/AppIcon/catalog/outline/o.g.js +1 -17
  522. package/lib/module/components/AppIcon/catalog/outline/p.g.js +1 -56
  523. package/lib/module/components/AppIcon/catalog/outline/q.g.js +1 -18
  524. package/lib/module/components/AppIcon/catalog/outline/r.g.js +1 -55
  525. package/lib/module/components/AppIcon/catalog/outline/s.g.js +1 -109
  526. package/lib/module/components/AppIcon/catalog/outline/t.g.js +1 -70
  527. package/lib/module/components/AppIcon/catalog/outline/u.g.js +1 -24
  528. package/lib/module/components/AppIcon/catalog/outline/v.g.js +1 -36
  529. package/lib/module/components/AppIcon/catalog/outline/w.g.js +1 -37
  530. package/lib/module/components/AppIcon/catalog/outline/x.g.js +1 -14
  531. package/lib/module/components/AppIcon/catalog/outline/y.g.js +1 -12
  532. package/lib/module/components/AppIcon/catalog/outline/z.g.js +1 -13
  533. package/lib/module/components/AppIcon/catalog/twotone/a.g.js +1 -80
  534. package/lib/module/components/AppIcon/catalog/twotone/b.g.js +1 -85
  535. package/lib/module/components/AppIcon/catalog/twotone/c.g.js +1 -114
  536. package/lib/module/components/AppIcon/catalog/twotone/d.g.js +1 -64
  537. package/lib/module/components/AppIcon/catalog/twotone/e.g.js +1 -42
  538. package/lib/module/components/AppIcon/catalog/twotone/f.g.js +1 -48
  539. package/lib/module/components/AppIcon/catalog/twotone/g.g.js +1 -50
  540. package/lib/module/components/AppIcon/catalog/twotone/h.g.js +1 -48
  541. package/lib/module/components/AppIcon/catalog/twotone/i.g.js +1 -27
  542. package/lib/module/components/AppIcon/catalog/twotone/j.g.js +1 -14
  543. package/lib/module/components/AppIcon/catalog/twotone/k.g.js +1 -16
  544. package/lib/module/components/AppIcon/catalog/twotone/l.g.js +1 -48
  545. package/lib/module/components/AppIcon/catalog/twotone/m.g.js +1 -101
  546. package/lib/module/components/AppIcon/catalog/twotone/n.g.js +1 -30
  547. package/lib/module/components/AppIcon/catalog/twotone/o.g.js +1 -17
  548. package/lib/module/components/AppIcon/catalog/twotone/p.g.js +1 -56
  549. package/lib/module/components/AppIcon/catalog/twotone/q.g.js +1 -18
  550. package/lib/module/components/AppIcon/catalog/twotone/r.g.js +1 -55
  551. package/lib/module/components/AppIcon/catalog/twotone/s.g.js +1 -109
  552. package/lib/module/components/AppIcon/catalog/twotone/t.g.js +1 -70
  553. package/lib/module/components/AppIcon/catalog/twotone/u.g.js +1 -24
  554. package/lib/module/components/AppIcon/catalog/twotone/v.g.js +1 -36
  555. package/lib/module/components/AppIcon/catalog/twotone/w.g.js +1 -37
  556. package/lib/module/components/AppIcon/catalog/twotone/x.g.js +1 -14
  557. package/lib/module/components/AppIcon/catalog/twotone/y.g.js +1 -12
  558. package/lib/module/components/AppIcon/catalog/twotone/z.g.js +1 -13
  559. package/lib/module/components/AppIcon/catalog.g.js +1 -183
  560. package/lib/module/components/AppIcon/defaultIcons.js +1 -79
  561. package/lib/module/components/AppIcon/glyphs.g.js +1 -156
  562. package/lib/module/components/AppIcon/index.js +1 -6
  563. package/lib/module/components/AppIcon/slotIcon.js +1 -62
  564. package/lib/module/components/AppIcon/variants.g.js +1 -737
  565. package/lib/module/components/AsyncBlock/AsyncBlock.js +1 -81
  566. package/lib/module/components/AsyncBlock/index.js +1 -4
  567. package/lib/module/components/AuthedImage/AuthedImage.js +1 -226
  568. package/lib/module/components/AuthedImage/authedImageCache.js +1 -337
  569. package/lib/module/components/AuthedImage/index.js +1 -5
  570. package/lib/module/components/Autocomplete/Autocomplete.js +1 -222
  571. package/lib/module/components/Autocomplete/index.js +1 -4
  572. package/lib/module/components/Avatar/Avatar.js +1 -496
  573. package/lib/module/components/Avatar/index.js +1 -4
  574. package/lib/module/components/Badge/Badge.js +1 -294
  575. package/lib/module/components/Badge/index.js +1 -4
  576. package/lib/module/components/Banner/Banner.js +1 -397
  577. package/lib/module/components/Banner/index.js +1 -4
  578. package/lib/module/components/BottomNavigation/BottomNavigation.js +1 -889
  579. package/lib/module/components/BottomNavigation/index.js +1 -4
  580. package/lib/module/components/BottomSheet/BottomSheet.js +1 -727
  581. package/lib/module/components/BottomSheet/index.js +1 -4
  582. package/lib/module/components/Box/Box.js +1 -220
  583. package/lib/module/components/Box/index.js +1 -4
  584. package/lib/module/components/Button/Button.js +1 -557
  585. package/lib/module/components/Button/index.js +1 -4
  586. package/lib/module/components/Card/Card.js +1 -403
  587. package/lib/module/components/Card/index.js +1 -4
  588. package/lib/module/components/Carousel/Carousel.js +1 -583
  589. package/lib/module/components/Carousel/index.js +1 -4
  590. package/lib/module/components/Checkbox/Checkbox.js +1 -184
  591. package/lib/module/components/Checkbox/index.js +1 -4
  592. package/lib/module/components/Chip/Chip.js +1 -354
  593. package/lib/module/components/Chip/index.js +1 -4
  594. package/lib/module/components/ChoiceGroup/ChoiceGroup.js +1 -332
  595. package/lib/module/components/ChoiceGroup/index.js +1 -4
  596. package/lib/module/components/Confetti/Confetti.js +1 -377
  597. package/lib/module/components/Confetti/index.js +1 -4
  598. package/lib/module/components/DatePicker/DatePicker.js +1 -1049
  599. package/lib/module/components/DatePicker/index.js +1 -4
  600. package/lib/module/components/DateRangePicker/DateRangePicker.js +1 -791
  601. package/lib/module/components/DateRangePicker/index.js +1 -4
  602. package/lib/module/components/DecimalInput/DecimalInput.js +1 -0
  603. package/lib/module/components/DecimalInput/index.js +1 -0
  604. package/lib/module/components/Descriptions/Descriptions.js +1 -101
  605. package/lib/module/components/Descriptions/index.js +1 -4
  606. package/lib/module/components/Dialog/Dialog.js +1 -243
  607. package/lib/module/components/Dialog/index.js +1 -4
  608. package/lib/module/components/Divider/Divider.js +1 -114
  609. package/lib/module/components/Divider/index.js +1 -4
  610. package/lib/module/components/Drawer/Drawer.js +1 -378
  611. package/lib/module/components/Drawer/index.js +1 -4
  612. package/lib/module/components/EmptyState/EmptyState.js +1 -232
  613. package/lib/module/components/EmptyState/index.js +1 -4
  614. package/lib/module/components/ErrorBoundary/ErrorBoundary.js +1 -130
  615. package/lib/module/components/ErrorBoundary/index.js +1 -6
  616. package/lib/module/components/ErrorBoundary/useErrorHandler.js +1 -20
  617. package/lib/module/components/ErrorBoundary/withErrorBoundary.js +1 -23
  618. package/lib/module/components/FieldBase/Chevron.js +1 -69
  619. package/lib/module/components/FieldBase/ChoiceText.js +1 -0
  620. package/lib/module/components/FieldBase/FieldBase.js +1 -790
  621. package/lib/module/components/FieldBase/index.js +1 -5
  622. package/lib/module/components/FieldBase/useFloatingLabel.js +1 -177
  623. package/lib/module/components/FilePicker/FilePicker.js +1 -791
  624. package/lib/module/components/FilePicker/index.js +1 -4
  625. package/lib/module/components/FileViewer/FileViewer.js +1 -253
  626. package/lib/module/components/FileViewer/index.js +1 -4
  627. package/lib/module/components/FloatingActionButton/FloatingActionButton.js +1 -691
  628. package/lib/module/components/FloatingActionButton/index.js +1 -4
  629. package/lib/module/components/ForceUpdateDialog/ForceUpdateDialog.js +1 -84
  630. package/lib/module/components/ForceUpdateDialog/index.js +1 -4
  631. package/lib/module/components/FormField/FormField.js +1 -166
  632. package/lib/module/components/FormField/index.js +1 -4
  633. package/lib/module/components/IconBadge/IconBadge.js +1 -0
  634. package/lib/module/components/IconBadge/index.js +1 -0
  635. package/lib/module/components/IconButton/IconButton.js +1 -194
  636. package/lib/module/components/IconButton/index.js +1 -4
  637. package/lib/module/components/ImageGallery/ImageGallery.js +1 -589
  638. package/lib/module/components/ImageGallery/index.js +1 -4
  639. package/lib/module/components/InlineSelect/InlineSelect.js +1 -186
  640. package/lib/module/components/InlineSelect/index.js +1 -4
  641. package/lib/module/components/Input/Input.js +1 -587
  642. package/lib/module/components/Input/index.js +1 -4
  643. package/lib/module/components/KeyboardAwareScrollView/KeyboardAwareScrollView.js +1 -164
  644. package/lib/module/components/KeyboardAwareScrollView/index.js +1 -4
  645. package/lib/module/components/KeyboardToolbar/KeyboardToolbar.js +1 -130
  646. package/lib/module/components/KeyboardToolbar/index.js +1 -4
  647. package/lib/module/components/ListItem/ListItem.js +1 -340
  648. package/lib/module/components/ListItem/index.js +1 -4
  649. package/lib/module/components/LoaderOverlay/LoaderOverlay.js +1 -196
  650. package/lib/module/components/LoaderOverlay/index.js +1 -4
  651. package/lib/module/components/Markdown/Markdown.js +1 -270
  652. package/lib/module/components/Markdown/index.js +1 -4
  653. package/lib/module/components/Markdown/parse.js +1 -223
  654. package/lib/module/components/Modal/Modal.js +1 -372
  655. package/lib/module/components/Modal/index.js +1 -4
  656. package/lib/module/components/Notation/Notation.js +1 -0
  657. package/lib/module/components/Notation/index.js +1 -0
  658. package/lib/module/components/NumberInput/NumberInput.js +1 -382
  659. package/lib/module/components/NumberInput/index.js +1 -4
  660. package/lib/module/components/OTPInput/OTPInput.js +1 -445
  661. package/lib/module/components/OTPInput/index.js +1 -4
  662. package/lib/module/components/OptionSheet/OptionSheet.js +1 -714
  663. package/lib/module/components/OptionSheet/index.js +1 -0
  664. package/lib/module/components/PhoneNumberInput/PhoneNumberInput.js +1 -569
  665. package/lib/module/components/PhoneNumberInput/index.js +1 -4
  666. package/lib/module/components/PickerTrigger/PickerTrigger.js +1 -146
  667. package/lib/module/components/PickerTrigger/index.js +1 -4
  668. package/lib/module/components/ProfileCompletion/ProfileCompletion.js +1 -211
  669. package/lib/module/components/ProfileCompletion/index.js +1 -4
  670. package/lib/module/components/ProfilePicker/ProfilePicker.js +1 -526
  671. package/lib/module/components/ProfilePicker/index.js +1 -4
  672. package/lib/module/components/ProgressBar/ProgressBar.js +1 -199
  673. package/lib/module/components/ProgressBar/index.js +1 -4
  674. package/lib/module/components/ProgressRing/ProgressRing.js +1 -187
  675. package/lib/module/components/ProgressRing/index.js +1 -4
  676. package/lib/module/components/Radio/Radio.js +1 -123
  677. package/lib/module/components/Radio/RadioDot.js +1 -102
  678. package/lib/module/components/Radio/RadioGroup.js +1 -45
  679. package/lib/module/components/Radio/index.js +1 -6
  680. package/lib/module/components/Rating/Rating.js +1 -334
  681. package/lib/module/components/Rating/index.js +1 -4
  682. package/lib/module/components/Repeater/Repeater.js +1 -162
  683. package/lib/module/components/Repeater/index.js +1 -4
  684. package/lib/module/components/RichTextEditor/RichTextEditor.js +1 -309
  685. package/lib/module/components/RichTextEditor/index.js +1 -5
  686. package/lib/module/components/RichTextEditor/markdownActions.js +1 -207
  687. package/lib/module/components/SearchBar/SearchBar.js +1 -241
  688. package/lib/module/components/SearchBar/index.js +1 -4
  689. package/lib/module/components/SectionHeader/SectionHeader.js +1 -0
  690. package/lib/module/components/SectionHeader/index.js +1 -0
  691. package/lib/module/components/SegmentedControl/SegmentedControl.js +1 -317
  692. package/lib/module/components/SegmentedControl/index.js +1 -4
  693. package/lib/module/components/Select/Select.js +1 -273
  694. package/lib/module/components/Select/index.js +1 -4
  695. package/lib/module/components/Skeleton/Skeleton.js +1 -278
  696. package/lib/module/components/Skeleton/SkeletonClock.js +1 -111
  697. package/lib/module/components/Skeleton/SkeletonContent.js +1 -304
  698. package/lib/module/components/Skeleton/SkeletonList.js +1 -87
  699. package/lib/module/components/Skeleton/SkeletonProvider.js +1 -106
  700. package/lib/module/components/Skeleton/SkeletonSkip.js +1 -31
  701. package/lib/module/components/Skeleton/index.js +1 -9
  702. package/lib/module/components/SlideToConfirm/SlideToConfirm.js +1 -258
  703. package/lib/module/components/SlideToConfirm/index.js +1 -4
  704. package/lib/module/components/Slider/Slider.js +1 -805
  705. package/lib/module/components/Slider/index.js +1 -4
  706. package/lib/module/components/Slider/valueText.js +1 -258
  707. package/lib/module/components/SliderField/SliderField.js +1 -357
  708. package/lib/module/components/SliderField/index.js +1 -4
  709. package/lib/module/components/Spinner/Spinner.js +1 -199
  710. package/lib/module/components/Spinner/index.js +1 -4
  711. package/lib/module/components/SquircleFill/SquircleFill.js +1 -110
  712. package/lib/module/components/StatTile/StatTile.js +1 -0
  713. package/lib/module/components/StatTile/index.js +1 -0
  714. package/lib/module/components/StatusBadge/StatusBadge.js +1 -229
  715. package/lib/module/components/StatusBadge/index.js +1 -4
  716. package/lib/module/components/Stepper/Stepper.js +1 -775
  717. package/lib/module/components/Stepper/index.js +1 -4
  718. package/lib/module/components/Swipeable/Swipeable.js +1 -378
  719. package/lib/module/components/Swipeable/index.js +1 -4
  720. package/lib/module/components/Switch/Switch.js +1 -230
  721. package/lib/module/components/Switch/index.js +1 -4
  722. package/lib/module/components/Tabs/Tabs.js +1 -425
  723. package/lib/module/components/Tabs/index.js +1 -4
  724. package/lib/module/components/TagInput/TagInput.js +1 -181
  725. package/lib/module/components/TagInput/index.js +1 -4
  726. package/lib/module/components/Text/Text.js +1 -142
  727. package/lib/module/components/Text/index.js +1 -4
  728. package/lib/module/components/TimePicker/TimePicker.js +1 -726
  729. package/lib/module/components/TimePicker/index.js +1 -4
  730. package/lib/module/components/Timeline/Timeline.js +1 -257
  731. package/lib/module/components/Timeline/index.js +1 -4
  732. package/lib/module/components/Toast/Toast.js +1 -321
  733. package/lib/module/components/Toast/ToastProvider.js +1 -192
  734. package/lib/module/components/Toast/index.js +1 -5
  735. package/lib/module/components/Tooltip/Tooltip.js +1 -407
  736. package/lib/module/components/Tooltip/index.js +1 -4
  737. package/lib/module/components/Tour/Tour.js +1 -338
  738. package/lib/module/components/Tour/index.js +1 -4
  739. package/lib/module/components/ZoomableImage/ZoomableImage.js +1 -198
  740. package/lib/module/components/ZoomableImage/index.js +1 -4
  741. package/lib/module/components/index.js +1 -79
  742. package/lib/module/form/FormContext.js +1 -44
  743. package/lib/module/form/HookFormField.js +1 -0
  744. package/lib/module/form/equal.js +1 -51
  745. package/lib/module/form/index.js +1 -17
  746. package/lib/module/form/path.js +1 -84
  747. package/lib/module/form/rules.js +1 -59
  748. package/lib/module/form/types.js +0 -2
  749. package/lib/module/form/useField.js +1 -61
  750. package/lib/module/form/useForm.js +1 -375
  751. package/lib/module/form/useFormCompletion.js +1 -67
  752. package/lib/module/form/useHookFormField.js +1 -0
  753. package/lib/module/hooks/index.js +1 -10
  754. package/lib/module/hooks/useControllableState.js +1 -28
  755. package/lib/module/hooks/useDebounce.js +1 -12
  756. package/lib/module/hooks/useDragToDismiss.js +1 -137
  757. package/lib/module/hooks/useFlickGuard.js +1 -55
  758. package/lib/module/hooks/usePressAnimation.js +1 -126
  759. package/lib/module/hooks/useReducedMotion.js +1 -29
  760. package/lib/module/hooks/useToggle.js +1 -17
  761. package/lib/module/index.js +1 -18
  762. package/lib/module/initUI.js +1 -19
  763. package/lib/module/network/NetworkStatusBanner.js +1 -83
  764. package/lib/module/network/index.js +1 -4
  765. package/lib/module/specs/NativePdfRasterizer.js +1 -5
  766. package/lib/module/theme/Gradient.js +1 -52
  767. package/lib/module/theme/ThemeContext.js +1 -93
  768. package/lib/module/theme/animatedValue.js +1 -64
  769. package/lib/module/theme/index.js +1 -67
  770. package/lib/module/theme/merge.js +1 -25
  771. package/lib/module/theme/textStyle.js +1 -34
  772. package/lib/module/theme/tokens.js +1 -702
  773. package/lib/module/theme/types.js +1 -4
  774. package/lib/module/utils/color.js +1 -52
  775. package/lib/module/utils/corners.js +1 -18
  776. package/lib/module/utils/dimensions.js +1 -4
  777. package/lib/module/utils/feedback.js +1 -70
  778. package/lib/module/utils/hapticUtils.js +1 -86
  779. package/lib/module/utils/hashString.js +1 -17
  780. package/lib/module/utils/index.js +1 -13
  781. package/lib/module/utils/mergeRefs.js +1 -19
  782. package/lib/module/utils/responsive.js +1 -97
  783. package/lib/module/utils/shadows.js +1 -54
  784. package/lib/module/utils/spacing.js +1 -82
  785. package/lib/module/utils/squircle.js +1 -151
  786. package/lib/module/utils/warnUnknownProps.js +1 -42
  787. package/lib/typescript/commonjs/components/AppBar/AppBar.d.ts +42 -1
  788. package/lib/typescript/commonjs/components/AppIcon/AppIcon.d.ts +15 -2
  789. package/lib/typescript/commonjs/components/AppIcon/catalog.g.d.ts +1 -1
  790. package/lib/typescript/commonjs/components/AppIcon/glyphs.g.d.ts +62 -0
  791. package/lib/typescript/commonjs/components/AppIcon/index.d.ts +2 -2
  792. package/lib/typescript/commonjs/components/AppIcon/slotIcon.d.ts +9 -5
  793. package/lib/typescript/commonjs/components/AsyncBlock/AsyncBlock.d.ts +17 -1
  794. package/lib/typescript/commonjs/components/AsyncBlock/index.d.ts +1 -1
  795. package/lib/typescript/commonjs/components/AuthedImage/AuthedImage.d.ts +17 -2
  796. package/lib/typescript/commonjs/components/AuthedImage/authedImageCache.d.ts +12 -0
  797. package/lib/typescript/commonjs/components/Avatar/Avatar.d.ts +8 -5
  798. package/lib/typescript/commonjs/components/Banner/Banner.d.ts +28 -1
  799. package/lib/typescript/commonjs/components/Banner/index.d.ts +1 -1
  800. package/lib/typescript/commonjs/components/BottomSheet/BottomSheet.d.ts +44 -2
  801. package/lib/typescript/commonjs/components/BottomSheet/index.d.ts +1 -1
  802. package/lib/typescript/commonjs/components/Button/Button.d.ts +6 -0
  803. package/lib/typescript/commonjs/components/Card/Card.d.ts +31 -1
  804. package/lib/typescript/commonjs/components/Card/index.d.ts +1 -1
  805. package/lib/typescript/commonjs/components/Checkbox/Checkbox.d.ts +22 -4
  806. package/lib/typescript/commonjs/components/Chip/Chip.d.ts +19 -1
  807. package/lib/typescript/commonjs/components/Chip/index.d.ts +1 -1
  808. package/lib/typescript/commonjs/components/ChoiceGroup/ChoiceGroup.d.ts +31 -7
  809. package/lib/typescript/commonjs/components/ChoiceGroup/index.d.ts +1 -1
  810. package/lib/typescript/commonjs/components/DecimalInput/DecimalInput.d.ts +56 -0
  811. package/lib/typescript/commonjs/components/DecimalInput/index.d.ts +3 -0
  812. package/lib/typescript/commonjs/components/Descriptions/Descriptions.d.ts +15 -2
  813. package/lib/typescript/commonjs/components/Descriptions/index.d.ts +1 -1
  814. package/lib/typescript/commonjs/components/Dialog/Dialog.d.ts +6 -2
  815. package/lib/typescript/commonjs/components/EmptyState/EmptyState.d.ts +6 -0
  816. package/lib/typescript/commonjs/components/FieldBase/ChoiceText.d.ts +24 -0
  817. package/lib/typescript/commonjs/components/FieldBase/FieldBase.d.ts +24 -4
  818. package/lib/typescript/commonjs/components/FieldBase/index.d.ts +1 -1
  819. package/lib/typescript/commonjs/components/FieldBase/useFloatingLabel.d.ts +3 -1
  820. package/lib/typescript/commonjs/components/FormField/FormField.d.ts +15 -5
  821. package/lib/typescript/commonjs/components/IconBadge/IconBadge.d.ts +30 -0
  822. package/lib/typescript/commonjs/components/IconBadge/index.d.ts +3 -0
  823. package/lib/typescript/commonjs/components/IconButton/IconButton.d.ts +15 -8
  824. package/lib/typescript/commonjs/components/Input/Input.d.ts +33 -3
  825. package/lib/typescript/commonjs/components/KeyboardAwareScrollView/KeyboardAwareScrollView.d.ts +19 -22
  826. package/lib/typescript/commonjs/components/KeyboardAwareScrollView/index.d.ts +1 -1
  827. package/lib/typescript/commonjs/components/KeyboardToolbar/KeyboardToolbar.d.ts +15 -10
  828. package/lib/typescript/commonjs/components/ListItem/ListItem.d.ts +39 -2
  829. package/lib/typescript/commonjs/components/ListItem/index.d.ts +1 -1
  830. package/lib/typescript/commonjs/components/Notation/Notation.d.ts +27 -0
  831. package/lib/typescript/commonjs/components/Notation/index.d.ts +3 -0
  832. package/lib/typescript/commonjs/components/NumberInput/NumberInput.d.ts +11 -3
  833. package/lib/typescript/commonjs/components/OTPInput/OTPInput.d.ts +6 -0
  834. package/lib/typescript/commonjs/components/OptionSheet/OptionSheet.d.ts +11 -1
  835. package/lib/typescript/commonjs/components/OptionSheet/index.d.ts +3 -0
  836. package/lib/typescript/commonjs/components/PhoneNumberInput/PhoneNumberInput.d.ts +43 -7
  837. package/lib/typescript/commonjs/components/PhoneNumberInput/index.d.ts +2 -2
  838. package/lib/typescript/commonjs/components/PickerTrigger/PickerTrigger.d.ts +8 -6
  839. package/lib/typescript/commonjs/components/ProfilePicker/ProfilePicker.d.ts +3 -3
  840. package/lib/typescript/commonjs/components/ProgressBar/ProgressBar.d.ts +5 -0
  841. package/lib/typescript/commonjs/components/Radio/Radio.d.ts +4 -0
  842. package/lib/typescript/commonjs/components/Repeater/Repeater.d.ts +15 -1
  843. package/lib/typescript/commonjs/components/SearchBar/SearchBar.d.ts +2 -0
  844. package/lib/typescript/commonjs/components/SectionHeader/SectionHeader.d.ts +18 -0
  845. package/lib/typescript/commonjs/components/SectionHeader/index.d.ts +3 -0
  846. package/lib/typescript/commonjs/components/SegmentedControl/SegmentedControl.d.ts +7 -0
  847. package/lib/typescript/commonjs/components/Select/Select.d.ts +32 -2
  848. package/lib/typescript/commonjs/components/Slider/valueText.d.ts +3 -0
  849. package/lib/typescript/commonjs/components/StatTile/StatTile.d.ts +31 -0
  850. package/lib/typescript/commonjs/components/StatTile/index.d.ts +3 -0
  851. package/lib/typescript/commonjs/components/Stepper/Stepper.d.ts +7 -0
  852. package/lib/typescript/commonjs/components/Switch/Switch.d.ts +19 -0
  853. package/lib/typescript/commonjs/components/Switch/index.d.ts +1 -1
  854. package/lib/typescript/commonjs/components/Text/Text.d.ts +8 -3
  855. package/lib/typescript/commonjs/components/Toast/Toast.d.ts +6 -0
  856. package/lib/typescript/commonjs/components/Toast/ToastProvider.d.ts +24 -1
  857. package/lib/typescript/commonjs/components/Toast/index.d.ts +2 -2
  858. package/lib/typescript/commonjs/components/index.d.ts +26 -14
  859. package/lib/typescript/commonjs/form/FormContext.d.ts +10 -1
  860. package/lib/typescript/commonjs/form/HookFormField.d.ts +44 -0
  861. package/lib/typescript/commonjs/form/index.d.ts +4 -0
  862. package/lib/typescript/commonjs/form/useField.d.ts +6 -0
  863. package/lib/typescript/commonjs/form/useForm.d.ts +4 -0
  864. package/lib/typescript/commonjs/form/useHookFormField.d.ts +32 -0
  865. package/lib/typescript/commonjs/index.d.ts +5 -5
  866. package/lib/typescript/commonjs/network/NetworkStatusBanner.d.ts +6 -0
  867. package/lib/typescript/commonjs/theme/ThemeContext.d.ts +8 -0
  868. package/lib/typescript/commonjs/theme/index.d.ts +1 -1
  869. package/lib/typescript/commonjs/theme/types.d.ts +40 -1
  870. package/lib/typescript/module/components/AppBar/AppBar.d.ts +42 -1
  871. package/lib/typescript/module/components/AppIcon/AppIcon.d.ts +15 -2
  872. package/lib/typescript/module/components/AppIcon/catalog.g.d.ts +1 -1
  873. package/lib/typescript/module/components/AppIcon/glyphs.g.d.ts +62 -0
  874. package/lib/typescript/module/components/AppIcon/index.d.ts +2 -2
  875. package/lib/typescript/module/components/AppIcon/slotIcon.d.ts +9 -5
  876. package/lib/typescript/module/components/AsyncBlock/AsyncBlock.d.ts +17 -1
  877. package/lib/typescript/module/components/AsyncBlock/index.d.ts +1 -1
  878. package/lib/typescript/module/components/AuthedImage/AuthedImage.d.ts +17 -2
  879. package/lib/typescript/module/components/AuthedImage/authedImageCache.d.ts +12 -0
  880. package/lib/typescript/module/components/Avatar/Avatar.d.ts +8 -5
  881. package/lib/typescript/module/components/Banner/Banner.d.ts +28 -1
  882. package/lib/typescript/module/components/Banner/index.d.ts +1 -1
  883. package/lib/typescript/module/components/BottomSheet/BottomSheet.d.ts +44 -2
  884. package/lib/typescript/module/components/BottomSheet/index.d.ts +1 -1
  885. package/lib/typescript/module/components/Button/Button.d.ts +6 -0
  886. package/lib/typescript/module/components/Card/Card.d.ts +31 -1
  887. package/lib/typescript/module/components/Card/index.d.ts +1 -1
  888. package/lib/typescript/module/components/Checkbox/Checkbox.d.ts +22 -4
  889. package/lib/typescript/module/components/Chip/Chip.d.ts +19 -1
  890. package/lib/typescript/module/components/Chip/index.d.ts +1 -1
  891. package/lib/typescript/module/components/ChoiceGroup/ChoiceGroup.d.ts +31 -7
  892. package/lib/typescript/module/components/ChoiceGroup/index.d.ts +1 -1
  893. package/lib/typescript/module/components/DecimalInput/DecimalInput.d.ts +56 -0
  894. package/lib/typescript/module/components/DecimalInput/index.d.ts +3 -0
  895. package/lib/typescript/module/components/Descriptions/Descriptions.d.ts +15 -2
  896. package/lib/typescript/module/components/Descriptions/index.d.ts +1 -1
  897. package/lib/typescript/module/components/Dialog/Dialog.d.ts +6 -2
  898. package/lib/typescript/module/components/EmptyState/EmptyState.d.ts +6 -0
  899. package/lib/typescript/module/components/FieldBase/ChoiceText.d.ts +24 -0
  900. package/lib/typescript/module/components/FieldBase/FieldBase.d.ts +24 -4
  901. package/lib/typescript/module/components/FieldBase/index.d.ts +1 -1
  902. package/lib/typescript/module/components/FieldBase/useFloatingLabel.d.ts +3 -1
  903. package/lib/typescript/module/components/FormField/FormField.d.ts +15 -5
  904. package/lib/typescript/module/components/IconBadge/IconBadge.d.ts +30 -0
  905. package/lib/typescript/module/components/IconBadge/index.d.ts +3 -0
  906. package/lib/typescript/module/components/IconButton/IconButton.d.ts +15 -8
  907. package/lib/typescript/module/components/Input/Input.d.ts +33 -3
  908. package/lib/typescript/module/components/KeyboardAwareScrollView/KeyboardAwareScrollView.d.ts +19 -22
  909. package/lib/typescript/module/components/KeyboardAwareScrollView/index.d.ts +1 -1
  910. package/lib/typescript/module/components/KeyboardToolbar/KeyboardToolbar.d.ts +15 -10
  911. package/lib/typescript/module/components/ListItem/ListItem.d.ts +39 -2
  912. package/lib/typescript/module/components/ListItem/index.d.ts +1 -1
  913. package/lib/typescript/module/components/Notation/Notation.d.ts +27 -0
  914. package/lib/typescript/module/components/Notation/index.d.ts +3 -0
  915. package/lib/typescript/module/components/NumberInput/NumberInput.d.ts +11 -3
  916. package/lib/typescript/module/components/OTPInput/OTPInput.d.ts +6 -0
  917. package/lib/typescript/module/components/OptionSheet/OptionSheet.d.ts +11 -1
  918. package/lib/typescript/module/components/OptionSheet/index.d.ts +3 -0
  919. package/lib/typescript/module/components/PhoneNumberInput/PhoneNumberInput.d.ts +43 -7
  920. package/lib/typescript/module/components/PhoneNumberInput/index.d.ts +2 -2
  921. package/lib/typescript/module/components/PickerTrigger/PickerTrigger.d.ts +8 -6
  922. package/lib/typescript/module/components/ProfilePicker/ProfilePicker.d.ts +3 -3
  923. package/lib/typescript/module/components/ProgressBar/ProgressBar.d.ts +5 -0
  924. package/lib/typescript/module/components/Radio/Radio.d.ts +4 -0
  925. package/lib/typescript/module/components/Repeater/Repeater.d.ts +15 -1
  926. package/lib/typescript/module/components/SearchBar/SearchBar.d.ts +2 -0
  927. package/lib/typescript/module/components/SectionHeader/SectionHeader.d.ts +18 -0
  928. package/lib/typescript/module/components/SectionHeader/index.d.ts +3 -0
  929. package/lib/typescript/module/components/SegmentedControl/SegmentedControl.d.ts +7 -0
  930. package/lib/typescript/module/components/Select/Select.d.ts +32 -2
  931. package/lib/typescript/module/components/Slider/valueText.d.ts +3 -0
  932. package/lib/typescript/module/components/StatTile/StatTile.d.ts +31 -0
  933. package/lib/typescript/module/components/StatTile/index.d.ts +3 -0
  934. package/lib/typescript/module/components/Stepper/Stepper.d.ts +7 -0
  935. package/lib/typescript/module/components/Switch/Switch.d.ts +19 -0
  936. package/lib/typescript/module/components/Switch/index.d.ts +1 -1
  937. package/lib/typescript/module/components/Text/Text.d.ts +8 -3
  938. package/lib/typescript/module/components/Toast/Toast.d.ts +6 -0
  939. package/lib/typescript/module/components/Toast/ToastProvider.d.ts +24 -1
  940. package/lib/typescript/module/components/Toast/index.d.ts +2 -2
  941. package/lib/typescript/module/components/index.d.ts +26 -14
  942. package/lib/typescript/module/form/FormContext.d.ts +10 -1
  943. package/lib/typescript/module/form/HookFormField.d.ts +44 -0
  944. package/lib/typescript/module/form/index.d.ts +4 -0
  945. package/lib/typescript/module/form/useField.d.ts +6 -0
  946. package/lib/typescript/module/form/useForm.d.ts +4 -0
  947. package/lib/typescript/module/form/useHookFormField.d.ts +32 -0
  948. package/lib/typescript/module/index.d.ts +5 -5
  949. package/lib/typescript/module/network/NetworkStatusBanner.d.ts +6 -0
  950. package/lib/typescript/module/theme/ThemeContext.d.ts +8 -0
  951. package/lib/typescript/module/theme/index.d.ts +1 -1
  952. package/lib/typescript/module/theme/types.d.ts +40 -1
  953. package/package.json +14 -5
@@ -1,893 +1 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.BottomNavigation = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
8
- var _reactNative = require("react-native");
9
- var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
10
- var _index = require("../../theme/index.js");
11
- var _index2 = require("../../utils/index.js");
12
- var _corners = require("../../utils/corners.js");
13
- var _shadows = require("../../utils/shadows.js");
14
- var _index3 = require("../AppIcon/index.js");
15
- var _jsxRuntime = require("react/jsx-runtime");
16
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
- /**
18
- * Visual style of the bar.
19
- *
20
- * - `pill`: a soft tinted pill slides behind the active icon (default).
21
- * - `underline`: a line slides under (or over) the active tab cell.
22
- * - `floating`: the bar is a detached capsule, lifted off the bottom as well
23
- * as the sides; the pill slides inside it.
24
- * - `bubble`: the active icon lifts into a filled circle that pokes above
25
- * the bar; the circle slides between tabs.
26
- * - `expand`: the active tab widens into a pill showing icon and label side
27
- * by side; the other tabs collapse to icons.
28
- * - `solid`: the whole bar is brand-coloured; the active tab sits in a light
29
- * pill with inverted inks.
30
- * - `tile`: a detached capsule like `floating`, but the tinted pill takes
31
- * the whole active tab, icon and label together, up to 96 wide; inactive
32
- * tabs keep the primary text ink instead of the muted one.
33
- */
34
-
35
- /**
36
- * Corner radius of the bar surface in pixels, or `full`: half the surface's
37
- * own height, so the bar's ends are round whatever the bar's height comes to.
38
- */
39
-
40
- /**
41
- * Corner radius of the active tab's background: `auto` follows the bar's
42
- * radius, a number sets its own in pixels. Every value is capped at half the
43
- * background's own height, so a large number reads as fully round.
44
- */
45
-
46
- /** Shadow under the bar surface: a theme shadow level, or `none`. */
47
-
48
- /** What a tab knows about itself when it draws its icon. */
49
-
50
- /**
51
- * A tab icon speaks the library's slot language: an AppIcon name
52
- * (`icon: 'home'`), `{ name, variant }`, a render function that gets
53
- * `{ color, size, focused, disabled }`, or any node drawn as is. A bare name
54
- * with no `activeIcon` is drawn in the `bold` style while the tab is active.
55
- */
56
-
57
- /**
58
- * A button in the middle of the bar that is not a tab: pressing it runs its
59
- * own handler and leaves the active tab alone (a "new loan" or "scan" button).
60
- * It takes one cell in the middle of the row, so the tabs split around it,
61
- * the extra one going left when the count is odd.
62
- */
63
-
64
- const DEFAULT_ICON_SIZE = 18;
65
- /** Air the icon wrap adds around the icon, 2 a side. */
66
- const ICON_WRAP_AIR = 4;
67
- /** How much taller the active pill is than the icon wrap, 4 a side. */
68
- const PILL_AIR = 8;
69
- /**
70
- * The icon pill never grows past this, however wide its cell: a two-tab bar
71
- * keeps a pill the size of the icon it highlights (Material's indicator is
72
- * 64 wide too). The theme's `pillMaxWidth` overrides it.
73
- */
74
- const DEFAULT_PILL_MAX_WIDTH = 64;
75
- /** The tile's background never grows past this either; room for icon and label, not half a bar. */
76
- const TILE_MAX_WIDTH = 96;
77
- const DEFAULT_PILL_INSET = 16;
78
- const DEFAULT_UNDERLINE_HEIGHT = 3;
79
- const DEFAULT_FLOATING_MARGIN = 16;
80
- const DEFAULT_FLOATING_RADIUS = 28;
81
- const DEFAULT_BUBBLE_SIZE = 48;
82
- const DEFAULT_BUBBLE_LIFT = 14;
83
- const DEFAULT_CENTER_SIZE = 48;
84
- const DEFAULT_CENTER_ICON_SIZE = 24;
85
- /** Key of the centre cell; a tab key cannot collide with it in practice. */
86
- const CENTER_KEY = '__webority_center_action__';
87
- const TAB_PADDING_VERTICAL = 6;
88
- /** Air between the bar's edges and the tab row. The row is inset by it. */
89
- const BAR_PADDING_HORIZONTAL = 4;
90
- /** Bar padding above the tab row; the padding below matches it unless the safe-area inset is larger. */
91
- const BAR_PADDING_TOP = 6;
92
- const BAR_PADDING_TOP_BUBBLE = 8;
93
- /** Air between the floating capsule's edges and the tab row, above and below. */
94
- const FLOATING_BAR_PADDING_VERTICAL = 6;
95
- /** Air between the floating capsule's edges and the tab row, at the sides. */
96
- const FLOATING_BAR_PADDING_HORIZONTAL = 8;
97
- /**
98
- * How much wider the expanded tab is than a collapsed one (`expand` variant).
99
- * The pill inside hugs its icon and label, so whatever the cell has beyond
100
- * that shows as empty space beside the pill; 1.5 keeps that to about 13px a
101
- * side on a four-tab phone bar while a label like "Settings" still fits.
102
- */
103
- const EXPANDED_FLEX = 1.5;
104
- /** Ink opacity of inactive tabs on the `solid` bar. */
105
- const SOLID_INACTIVE_OPACITY = 0.7;
106
- /** Air between a `tile` pill and the edges of its tab cell. */
107
- const TILE_INSET = 2;
108
- /** Gap between icon and label inside a `tile` pill, tighter than the default so the pair reads as one block. */
109
- const TILE_LABEL_GAP = 2;
110
- const formatBadge = value => {
111
- if (value === null || value === undefined || value === false) {
112
- return null;
113
- }
114
- if (value === true || value === '·') {
115
- return {
116
- text: '',
117
- isDot: true
118
- };
119
- }
120
- if (typeof value === 'number') {
121
- if (value <= 0) {
122
- return null;
123
- }
124
- return {
125
- text: value > 99 ? '99+' : String(value),
126
- isDot: false
127
- };
128
- }
129
- if (typeof value === 'string') {
130
- if (value.length === 0) {
131
- return null;
132
- }
133
- return {
134
- text: value,
135
- isDot: false
136
- };
137
- }
138
- return null;
139
- };
140
- const badgeAccessibilitySuffix = value => {
141
- if (value === null || value === undefined || value === false) {
142
- return '';
143
- }
144
- if (typeof value === 'number') {
145
- return value > 0 ? `, ${value} unread` : '';
146
- }
147
- if (value === true || value === '·') {
148
- return ', new updates';
149
- }
150
- if (typeof value === 'string' && value.length > 0) {
151
- return `, ${value}`;
152
- }
153
- return '';
154
- };
155
- const BottomNavigation = exports.BottomNavigation = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
156
- const {
157
- tabs,
158
- centerAction,
159
- activeTab,
160
- onChange,
161
- haptic = 'selection',
162
- showLabels = true,
163
- variant = 'pill',
164
- indicatorPosition = 'bottom',
165
- radius,
166
- indicatorRadius: indicatorRadiusProp = 'auto',
167
- elevation,
168
- iconSize: iconSizeProp,
169
- marginHorizontal: marginHorizontalProp,
170
- marginVertical: marginVerticalProp,
171
- paddingHorizontal: paddingHorizontalProp,
172
- paddingVertical: paddingVerticalProp,
173
- border,
174
- style,
175
- indicatorStyle,
176
- labelStyle,
177
- testID
178
- } = props;
179
- const theme = (0, _index.useTheme)();
180
- const insets = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
181
- const styles = (0, _react.useMemo)(() => buildStyles(theme), [theme]);
182
- const tokens = theme.components.bottomNavigation;
183
- const iconSize = iconSizeProp ?? tokens?.iconSize ?? DEFAULT_ICON_SIZE;
184
- // The pill hugs the icon: 4px taller than the wrap on each side, so a
185
- // smaller icon gets a smaller pill (30 at 18, 36 at 24).
186
- const pillHeight = tokens?.pillHeight ?? iconSize + ICON_WRAP_AIR + PILL_AIR;
187
- const pillMaxWidth = tokens?.pillMaxWidth ?? DEFAULT_PILL_MAX_WIDTH;
188
- const pillInset = tokens?.pillInset ?? DEFAULT_PILL_INSET;
189
- const sideMargin = tokens?.floatingMargin ?? DEFAULT_FLOATING_MARGIN;
190
- const floatingRadius = tokens?.floatingRadius ?? DEFAULT_FLOATING_RADIUS;
191
- const bubbleSize = tokens?.bubbleSize ?? DEFAULT_BUBBLE_SIZE;
192
- const bubbleLift = tokens?.bubbleLift ?? DEFAULT_BUBBLE_LIFT;
193
- const isTile = variant === 'tile';
194
- // `tile` shares the floating capsule; only its pill and inks differ.
195
- const isFloating = variant === 'floating' || isTile;
196
- const isBubble = variant === 'bubble';
197
- const isExpand = variant === 'expand';
198
- const isSolid = variant === 'solid';
199
- const drawsPill = variant === 'pill' || isFloating || isSolid;
200
- const activeIndex = Math.max(0, tabs.findIndex(tab => tab.key === activeTab));
201
- const [rowWidth, setRowWidth] = _react.default.useState(0);
202
- const [rowHeight, setRowHeight] = _react.default.useState(0);
203
- // Derived on every render, never stored: the row's onLayout fires only
204
- // when the row's own size changes, and a change in the NUMBER of tabs
205
- // leaves that size alone. A stored `width / tabs.length` therefore went
206
- // stale the moment a tab was added or removed and the indicator sat
207
- // under the wrong tab.
208
- // A centre action takes a cell of its own, so the tabs split around it and
209
- // tabs before `centerSplit` sit in their own cell and the rest one cell
210
- // further right; the extra tab of an odd count goes left.
211
- const centerSplit = centerAction ? Math.ceil(tabs.length / 2) : tabs.length;
212
- const cellCount = tabs.length + (centerAction ? 1 : 0);
213
- // With a `gap` the centre cell hugs the button, with the gap as a margin on
214
- // each side, and the tabs share what is left; without one it is a cell as
215
- // wide as a tab's. `centerStep` is how far the button pushes the tabs past
216
- // it to the right.
217
- const [centerBox, setCenterBox] = _react.default.useState({
218
- width: 0,
219
- height: 0
220
- });
221
- const centerSize = centerAction?.size ?? DEFAULT_CENTER_SIZE;
222
- const hugsCenter = centerAction?.gap !== undefined;
223
- const centerGap = Math.max(0, centerAction?.gap ?? 0);
224
- const centerSpan = hugsCenter ? (centerBox.width || centerSize) + centerGap * 2 : 0;
225
- const tabWidth = hugsCenter ? tabs.length > 0 ? Math.max(0, rowWidth - centerSpan) / tabs.length : 0 : cellCount > 0 ? rowWidth / cellCount : 0;
226
- const centerStep = hugsCenter ? centerSpan : tabWidth;
227
-
228
- // Single Animated.Value holds the active tab INDEX; the pixel offset is an
229
- // interpolation over the measured tab width, rebuilt when the width changes.
230
- // Keeping the value in index units means a width change (a variant switch
231
- // re-lays the row out) is a plain re-render, never an animation on a view
232
- // that was mounted a moment ago: Android left such a view at its mount-time
233
- // transform, one cell short.
234
- const indicatorIndex = (0, _react.useRef)((0, _index.createAnimatedValue)(activeIndex)).current;
235
- const iconScales = (0, _react.useRef)({});
236
- // Per-tab 0..1 "is active" progress: lifts the bubble icon and widens the
237
- // expanded tab. JS-driven on purpose: flex is layout, which the native
238
- // driver cannot animate, and a native value attached to views that remount
239
- // when the variant switches (floating has a different root) throws from
240
- // Animated's makeNative cascade.
241
- const progressValues = (0, _react.useRef)({});
242
-
243
- // Ensure each tab has persistent animated values
244
- tabs.forEach(tab => {
245
- if (!iconScales.current[tab.key]) {
246
- iconScales.current[tab.key] = new _reactNative.Animated.Value(1);
247
- }
248
- if (!progressValues.current[tab.key]) {
249
- progressValues.current[tab.key] = (0, _index.createAnimatedValue)(tab.key === activeTab ? 1 : 0);
250
- }
251
- });
252
-
253
- // Pill width is intrinsic; we compute its rendered offset to keep it
254
- // centered within each tab cell. The offset is applied to the pill itself
255
- // (NOT folded into the shared indicatorTranslateX) so the underline indicator
256
- // — which spans the full tab cell — stays aligned with the tab boundary
257
- // instead of being shifted by the pill-centering math.
258
- // Every highlight is capped and centred so a wide cell does not stretch it:
259
- // the tile at 96 with room for icon and label, the icon pill at 64.
260
- const pillWidth = tabWidth > 0 ? isTile ? Math.min(tabWidth - TILE_INSET * 2, TILE_MAX_WIDTH) : Math.min(tabWidth - pillInset, pillMaxWidth) : 0;
261
- const pillOffset = tabWidth > 0 ? (tabWidth - pillWidth) / 2 : 0;
262
- const bubbleOffset = tabWidth > 0 ? (tabWidth - bubbleSize) / 2 : 0;
263
- const hasLabel = tab => showLabels && tab.showLabel !== false && tab.label.trim().length > 0;
264
-
265
- // The bubble is centred on where the lifted icon lands. A labelled tab's
266
- // icon wrap sits `tab.paddingVertical` below the row; an icon-only tab
267
- // centres its icon in the row, so the row's measured height decides.
268
- const activeTabConfig = tabs[activeIndex];
269
- const activeIconCentre = activeTabConfig && !hasLabel(activeTabConfig) && rowHeight > 0 ? rowHeight / 2 : TAB_PADDING_VERTICAL + (iconSize + ICON_WRAP_AIR) / 2;
270
- const bubbleTop = activeIconCentre - bubbleLift - bubbleSize / 2;
271
- const tileHeight = Math.max(0, rowHeight - TILE_INSET * 2);
272
- const pillTop = isTile ? TILE_INSET : activeIconCentre - pillHeight / 2;
273
-
274
- // Slide the indicator to the active tab. Pill and bubble modes apply their
275
- // centering offset via a static `left` style below; underline mode uses the
276
- // offset directly. A width change swaps the interpolation, which the native
277
- // driver re-attaches as a fresh node on the next render.
278
- const settledIndex = (0, _react.useRef)(activeIndex);
279
- (0, _react.useEffect)(() => {
280
- if (settledIndex.current === activeIndex) {
281
- return;
282
- }
283
- settledIndex.current = activeIndex;
284
- // Native-driven: the value only feeds transforms, and the tree keeps one
285
- // shape across variants, so nothing it is attached to remounts. Off the
286
- // JS thread, the slide no longer competes with the tab-change render.
287
- const anim = _reactNative.Animated.spring(indicatorIndex, {
288
- toValue: activeIndex,
289
- tension: 120,
290
- friction: 14,
291
- useNativeDriver: true
292
- });
293
- anim.start();
294
- return () => anim.stop();
295
- }, [activeIndex, indicatorIndex]);
296
-
297
- // One stop per tab, at the left edge of the cell it sits in, so a slide
298
- // across the centre action jumps its cell rather than landing on it.
299
- const lastIndex = Math.max(1, tabs.length - 1);
300
- const indicatorTranslateX = (0, _react.useMemo)(() => {
301
- const inputRange = [];
302
- const outputRange = [];
303
- for (let i = 0; i <= lastIndex; i++) {
304
- inputRange.push(i);
305
- outputRange.push(i < centerSplit ? i * tabWidth : i * tabWidth + centerStep);
306
- }
307
- return indicatorIndex.interpolate({
308
- inputRange,
309
- outputRange
310
- });
311
- }, [indicatorIndex, lastIndex, centerSplit, tabWidth, centerStep]);
312
-
313
- // Per-tab progress: the newly active tab springs to 1, the others to 0.
314
- // Keyed on the tab keys, not the array, so a parent that rebuilds `tabs`
315
- // every render does not restart the springs mid-flight. Only `bubble` and
316
- // `expand` read these values; the other variants just keep them current so
317
- // a runtime variant switch starts from the right place.
318
- const tabKeys = tabs.map(tab => tab.key).join(' ');
319
- const animatesProgress = isBubble || isExpand;
320
- (0, _react.useEffect)(() => {
321
- const anims = tabKeys.split(' ').flatMap(key => {
322
- const to = key === activeTab ? 1 : 0;
323
- const progress = progressValues.current[key];
324
- if (!progress) {
325
- return [];
326
- }
327
- if (!animatesProgress) {
328
- progress.setValue(to);
329
- return [];
330
- }
331
- return [_reactNative.Animated.spring(progress, {
332
- toValue: to,
333
- tension: 140,
334
- friction: 13,
335
- useNativeDriver: false
336
- })];
337
- });
338
- if (anims.length === 0) {
339
- return;
340
- }
341
- const group = _reactNative.Animated.parallel(anims);
342
- group.start();
343
- return () => group.stop();
344
- }, [activeTab, tabKeys, animatesProgress]);
345
- const handleLayout = e => {
346
- const {
347
- width,
348
- height
349
- } = e.nativeEvent.layout;
350
- setRowWidth(width);
351
- setRowHeight(height);
352
- };
353
-
354
- // The press pop every tab icon gets, and the centre action's icon too: a
355
- // quick grow, then a spring back to rest.
356
- const popIcon = scale => {
357
- _reactNative.Animated.sequence([_reactNative.Animated.timing(scale, {
358
- toValue: 1.15,
359
- duration: 120,
360
- useNativeDriver: true
361
- }), _reactNative.Animated.spring(scale, {
362
- toValue: 1,
363
- tension: 200,
364
- friction: 8,
365
- useNativeDriver: true
366
- })]).start();
367
- };
368
- const centerScale = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
369
- const handlePress = tab => {
370
- if (tab.key !== activeTab && haptic !== false) {
371
- (0, _index2.triggerHaptic)(haptic);
372
- }
373
- const scale = iconScales.current[tab.key];
374
- if (scale) {
375
- popIcon(scale);
376
- }
377
- onChange(tab.key);
378
- };
379
- const handleCenterPress = () => {
380
- if (!centerAction) {
381
- return;
382
- }
383
- const centerHaptic = centerAction.haptic ?? haptic;
384
- if (centerHaptic !== false) {
385
- (0, _index2.triggerHaptic)(centerHaptic);
386
- }
387
- popIcon(centerScale);
388
- centerAction.onPress();
389
- };
390
- const {
391
- colors
392
- } = theme;
393
- const barBackground = isSolid ? colors.primary : colors.background.elevated;
394
- const activeInk = isSolid ? colors.onPrimary : colors.primary;
395
- const inactiveInk = isSolid ? colors.onPrimary : isTile ? colors.text.primary : colors.text.tertiary;
396
- const pillBackground = isSolid ? colors.onPrimary : colors.primaryMuted;
397
- // The active icon sits on the pill (solid) or in the bubble, so it takes the
398
- // ink that reads on that fill rather than on the bar.
399
- const activeIconInk = isSolid ? colors.primary : isBubble ? colors.onPrimary : activeInk;
400
-
401
- // Below the tabs: the same air as above them, unless the safe-area inset
402
- // is larger (the labels then sit just above the home indicator). A bar
403
- // lifted off the bottom by a margin puts the inset into that lift instead,
404
- // the way the capsules always have.
405
- const marginHorizontal = marginHorizontalProp ?? sideMargin;
406
- const marginVertical = marginVerticalProp ?? (isFloating ? sideMargin : 0);
407
- const lifted = marginVertical > 0;
408
- const paddingTop = paddingVerticalProp ?? (isFloating ? FLOATING_BAR_PADDING_VERTICAL : isBubble ? BAR_PADDING_TOP_BUBBLE : BAR_PADDING_TOP);
409
- const innerPaddingHorizontal = paddingHorizontalProp ?? (isFloating ? FLOATING_BAR_PADDING_HORIZONTAL : BAR_PADDING_HORIZONTAL);
410
- const paddingBottom = lifted ? paddingTop : Math.max(paddingTop, insets.bottom);
411
- const liftBottom = lifted ? Math.max(marginVertical, insets.bottom) : 0;
412
-
413
- // One prop for "how round is the white surface", whichever view is holding
414
- // it: the docked bar, or the floating variant's detached capsule.
415
- // The tile capsule is round-ended so it stays concentric with its pill.
416
- //
417
- // `full` is half the surface's own height, never `theme.radius.full`: the
418
- // bar pads itself by its radius (below), so 9999 would leave the row no
419
- // width, and Android drops an oversized radius to square corners. The
420
- // surface is the measured row plus the padding the bar itself puts around
421
- // it; padding added through `style` is not counted. Until the row is
422
- // measured the bar keeps its 4px padding and lets the platform clamp the
423
- // full radius, so the first measured row is full width and the layout
424
- // settles in one more pass.
425
- const wantsFullRadius = radius === 'full';
426
- const surfaceHeight = isFloating ? rowHeight + paddingTop * 2 + _reactNative.StyleSheet.hairlineWidth * 2 : rowHeight + paddingTop + paddingBottom;
427
- const barRadius = wantsFullRadius ? rowHeight > 0 ? surfaceHeight / 2 : theme.radius.full : radius ?? tokens?.borderRadius ?? (isTile ? theme.radius.full : isFloating ? floatingRadius : 0);
428
- // The active background's radius, never more than half its own height (a
429
- // larger radius drops to square corners on Android). `auto` matches the bar
430
- // once an app rounds it and otherwise stays fully round, the look it has
431
- // always had; a number is the background's own.
432
- // `round` is each background's own fully round value.
433
- const barRadiusSet = radius !== undefined || tokens?.borderRadius !== undefined;
434
- const activeBgRadius = (height, round) => {
435
- if (typeof indicatorRadiusProp === 'number') {
436
- return Math.max(0, Math.min(indicatorRadiusProp, height / 2));
437
- }
438
- if (indicatorRadiusProp === 'auto' && barRadiusSet) {
439
- return Math.min(barRadius, height / 2);
440
- }
441
- return round;
442
- };
443
- // A rounded bar has no flat edge under its corners, and the underline sits on
444
- // that edge: hold the tab row out of the corners entirely rather than cutting
445
- // the line short on the two end tabs, which read as broken next to the others.
446
- // Inset by the radius and the row's own span IS the bar's flat band, so every
447
- // tab keeps a full-width line. Only the underline needs it: every other
448
- // indicator lives inside its tab cell, so those variants keep the bar's own
449
- // 4px and give the whole width to the tabs.
450
- const barPaddingHorizontal = variant === 'underline' ? Math.max(innerPaddingHorizontal, wantsFullRadius && rowHeight === 0 ? 0 : barRadius) : innerPaddingHorizontal;
451
- // Nothing is drawn around the surface unless asked: no shadow and no
452
- // border by default on any variant, so what an app sees is what it set.
453
- const elevationLevel = elevation ?? 'none';
454
- // A `boxShadow` where the platform draws one, as the Card does: Android's
455
- // `elevation` is a flat grey that cannot match iOS, and the legacy props
456
- // are ignored there. Android below API 28 keeps the token's `elevation`.
457
- const shadowToken = theme.shadows[elevationLevel];
458
- const barShadow = elevationLevel === 'none' ? null : (0, _shadows.supportsBoxShadow)() ? {
459
- boxShadow: (0, _shadows.toBoxShadow)(shadowToken)
460
- } : shadowToken;
461
- // A hairline outline on all four sides, on any variant, only when asked.
462
- // Every edge of the docked bar is set by name, never through the
463
- // `borderWidth` shorthand: Android resets a dropped `borderTopWidth` to
464
- // zero instead of falling back to the shorthand, and the top line vanishes.
465
- const hairline = border ? _reactNative.StyleSheet.hairlineWidth : 0;
466
- const borderColor = isSolid ? colors.primary : colors.border.primary;
467
-
468
- // The centre action is centred on the row and raised by `lift`. Whatever of
469
- // it pokes above the bar surface is added to the root's top padding, so the
470
- // raised part stays inside the component's own box: a touch outside a
471
- // parent's bounds is not something to rely on across both platforms, and a
472
- // screen laid out under the bar should not be covered by it either.
473
- const centerLift = centerAction?.lift ?? 0;
474
- const rowTopInSurface = paddingTop + hairline;
475
- const centerOverhang = centerAction && rowHeight > 0 ? Math.max(0, (centerBox.height || centerSize) / 2 + centerLift - rowHeight / 2 - rowTopInSurface) : 0;
476
- const centerNode = centerAction ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
477
- style: [styles.centerCell, hugsCenter ? {
478
- flex: 0,
479
- marginHorizontal: centerGap
480
- } : null],
481
- pointerEvents: "box-none",
482
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
483
- onPress: handleCenterPress,
484
- onLayout: e => {
485
- const {
486
- width,
487
- height
488
- } = e.nativeEvent.layout;
489
- setCenterBox(prev => prev.width === width && prev.height === height ? prev : {
490
- width,
491
- height
492
- });
493
- },
494
- accessibilityRole: "button",
495
- accessibilityLabel: centerAction.label,
496
- hitSlop: {
497
- top: 6,
498
- bottom: 6,
499
- left: 6,
500
- right: 6
501
- }
502
- // A relative `top`, not a transform, like the bubble's lift: the box
503
- // moves with it for layout and hit-testing alike.
504
- ,
505
- style: ({
506
- pressed
507
- }) => [{
508
- top: -centerLift
509
- }, pressed ? {
510
- opacity: 0.85
511
- } : null],
512
- testID: centerAction.testID ?? (testID ? `${testID}-center` : undefined),
513
- children: centerAction.content ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
514
- style: {
515
- transform: [{
516
- scale: centerScale
517
- }]
518
- },
519
- children: centerAction.content
520
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
521
- style: [styles.centerCircle, {
522
- width: centerSize,
523
- height: centerSize,
524
- borderRadius: centerSize / 2,
525
- ..._corners.smoothCorners,
526
- backgroundColor: centerAction.color ?? colors.primary
527
- }],
528
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
529
- style: {
530
- transform: [{
531
- scale: centerScale
532
- }]
533
- },
534
- children: (0, _index3.renderSlotIcon)(centerAction.icon ?? 'add', {
535
- color: centerAction.iconColor ?? colors.onPrimary,
536
- size: centerAction.iconSize ?? DEFAULT_CENTER_ICON_SIZE,
537
- disabled: false
538
- })
539
- })
540
- })
541
- })
542
- }, CENTER_KEY) : null;
543
- // The centre cell goes between the two halves of the tabs.
544
- const withCenter = nodes => centerNode ? [...nodes.slice(0, centerSplit), centerNode, ...nodes.slice(centerSplit)] : nodes;
545
- const tabRow = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
546
- style: styles.tabRow,
547
- onLayout: handleLayout,
548
- children: [drawsPill && pillWidth > 0 && (!isTile || tileHeight > 0) ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
549
- pointerEvents: "none",
550
- style: [styles.pill, {
551
- width: pillWidth,
552
- height: isTile ? tileHeight : pillHeight,
553
- left: pillOffset,
554
- top: pillTop,
555
- backgroundColor: pillBackground,
556
- // Half the height, not `radius.full`, for the tile: its pill is
557
- // tall, and an oversized radius drops to square corners on Android.
558
- borderRadius: isTile ? activeBgRadius(tileHeight, tileHeight / 2) : activeBgRadius(pillHeight, theme.radius.full),
559
- ..._corners.smoothCorners,
560
- transform: [{
561
- translateX: indicatorTranslateX
562
- }]
563
- }, indicatorStyle]
564
- }) : null, isBubble && tabWidth > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
565
- pointerEvents: "none",
566
- style: [styles.bubble, theme.shadows.md, {
567
- width: bubbleSize,
568
- height: bubbleSize,
569
- borderRadius: bubbleSize / 2,
570
- ..._corners.smoothCorners,
571
- left: bubbleOffset,
572
- top: bubbleTop,
573
- backgroundColor: colors.primary,
574
- borderColor: colors.background.elevated,
575
- transform: [{
576
- translateX: indicatorTranslateX
577
- }]
578
- }, indicatorStyle]
579
- }) : null, withCenter(tabs.map(tab => {
580
- const isActive = tab.key === activeTab;
581
- const color = isActive ? activeInk : inactiveInk;
582
- const iconColor = isActive ? activeIconInk : inactiveInk;
583
- const activeFallback = typeof tab.icon === 'string' ? {
584
- name: tab.icon,
585
- variant: 'bold'
586
- } : tab.icon;
587
- const tabIcon = isActive ? tab.activeIcon ?? activeFallback : tab.icon;
588
- const scale = iconScales.current[tab.key];
589
- const progress = progressValues.current[tab.key];
590
- const badge = formatBadge(tab.badge ?? null);
591
- const a11ySuffix = badgeAccessibilitySuffix(tab.badge ?? null);
592
- const inkOpacity = isSolid && !isActive ? SOLID_INACTIVE_OPACITY : 1;
593
- // The badge ring matches whatever the icon sits on.
594
- const badgeBorder = isBubble && isActive || isSolid ? colors.primary : colors.background.elevated;
595
- const labelled = hasLabel(tab);
596
- const showLabel = labelled && (!isExpand || isActive);
597
- const iconWrap = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Animated.View, {
598
- style: [styles.iconWrap, {
599
- width: iconSize + ICON_WRAP_AIR,
600
- height: iconSize + ICON_WRAP_AIR,
601
- opacity: inkOpacity,
602
- transform: [{
603
- scale
604
- }]
605
- }],
606
- children: [(0, _index3.renderSlotIcon)(tabIcon, {
607
- color: iconColor,
608
- size: iconSize,
609
- focused: isActive,
610
- disabled: false
611
- }), badge ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
612
- style: [badge.isDot ? styles.badgeDot : styles.badgePill, {
613
- backgroundColor: colors.error,
614
- borderColor: badgeBorder
615
- }],
616
- children: badge.isDot ? null : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
617
- style: [styles.badgeText, {
618
- color: colors.text.inverse
619
- }],
620
- numberOfLines: 1,
621
- children: badge.text
622
- })
623
- }) : null]
624
- });
625
- // The lift lives on its own node: `scale` runs on the native driver
626
- // and `progress` on the JS driver, and one node cannot mix the two.
627
- // It is a relative `top`, not a transform: on Android a transform on
628
- // this wrapper was ignored for a tab whose label is empty.
629
- const iconNode = isBubble ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
630
- style: {
631
- top: progress.interpolate({
632
- inputRange: [0, 1],
633
- outputRange: [0, -bubbleLift]
634
- })
635
- },
636
- children: iconWrap
637
- }) : iconWrap;
638
- const labelNode = showLabel ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.Text, {
639
- numberOfLines: 1,
640
- style: [styles.label, isExpand ? styles.labelInline : null, {
641
- color,
642
- opacity: isExpand ? progress : inkOpacity,
643
- fontWeight: isActive ? theme.typography.fontWeight.semibold : theme.typography.fontWeight.normal
644
- }, labelStyle],
645
- children: tab.label
646
- }) : null;
647
- const pressable = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
648
- onPress: () => handlePress(tab),
649
- accessibilityRole: "tab",
650
- accessibilityState: {
651
- selected: isActive
652
- },
653
- accessibilityLabel: `${tab.label}${a11ySuffix}`,
654
- accessibilityHint: `Switches to ${tab.label}`,
655
- hitSlop: {
656
- top: 6,
657
- bottom: 6,
658
- left: 6,
659
- right: 6
660
- },
661
- style: ({
662
- pressed
663
- }) => [styles.tab, isTile ? styles.tabTile : null, pressed ? {
664
- opacity: 0.85
665
- } : null],
666
- testID: testID ? `${testID}-tab-${tab.key}` : undefined,
667
- children: isExpand ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
668
- style: [styles.expandPill, {
669
- height: pillHeight,
670
- paddingHorizontal: isActive && labelled ? theme.spacing.md : Math.max(0, (pillHeight - (iconSize + ICON_WRAP_AIR)) / 2)
671
- }],
672
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
673
- pointerEvents: "none",
674
- style: [styles.expandFill, {
675
- // Half the height, not `radius.full`: Android drops an
676
- // oversized radius to square corners while the cell's
677
- // flex is being animated.
678
- borderRadius: activeBgRadius(pillHeight, pillHeight / 2),
679
- ..._corners.smoothCorners,
680
- backgroundColor: isActive ? colors.primaryMuted : 'transparent'
681
- }, isActive ? indicatorStyle : null]
682
- }), iconNode, labelNode]
683
- }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
684
- children: [iconNode, labelNode]
685
- })
686
- }, tab.key);
687
- if (!isExpand) {
688
- return pressable;
689
- }
690
- // The active cell grows so the pill has room for its label; flex is
691
- // layout, hence the JS-driven value.
692
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
693
- style: {
694
- // An icon-only tab has nothing to make room for, so it stays a plain cell.
695
- flex: progress.interpolate({
696
- inputRange: [0, 1],
697
- outputRange: [1, labelled ? EXPANDED_FLEX : 1]
698
- })
699
- },
700
- children: pressable
701
- }, tab.key);
702
- })), variant === 'underline' && tabWidth > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
703
- pointerEvents: "none",
704
- style: [styles.underline, indicatorPosition === 'top' ? styles.underlineTop : styles.underlineBottom,
705
- // On the padding's outer edge, which is the bar's own edge.
706
- indicatorPosition === 'top' ? {
707
- top: -paddingTop
708
- } : {
709
- bottom: -paddingTop
710
- }, {
711
- width: tabWidth,
712
- height: tokens?.underlineHeight ?? DEFAULT_UNDERLINE_HEIGHT,
713
- backgroundColor: colors.primary,
714
- transform: [{
715
- translateX: indicatorTranslateX
716
- }]
717
- }, indicatorStyle]
718
- }) : null]
719
- });
720
-
721
- // One tree shape for every variant: root → bar → row. React then keeps the
722
- // row (and its onLayout) on a variant switch instead of re-purposing the
723
- // capsule view as the row, which left `tabWidth` at the old width.
724
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
725
- ref: ref,
726
- testID: testID,
727
- accessibilityRole: "tablist"
728
- // Every variant keeps its margin at the sides, so a docked bar sits in
729
- // from the screen edges like the capsules do; a vertical margin lifts
730
- // it off the bottom the same way.
731
- ,
732
- style: [styles.outer, {
733
- paddingHorizontal: marginHorizontal,
734
- paddingTop: Math.max(marginVertical, centerOverhang),
735
- paddingBottom: liftBottom
736
- }, style],
737
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
738
- style: [isFloating ? styles.floatingBar : styles.dockedBar, barShadow, {
739
- backgroundColor: barBackground,
740
- borderColor,
741
- borderRadius: barRadius,
742
- ..._corners.smoothCorners
743
- }, isFloating ? {
744
- borderWidth: hairline,
745
- paddingHorizontal: innerPaddingHorizontal,
746
- paddingVertical: paddingTop
747
- } : {
748
- // Named per edge, never the shorthand (see `hairline`).
749
- borderTopWidth: hairline,
750
- borderBottomWidth: hairline,
751
- borderLeftWidth: hairline,
752
- borderRightWidth: hairline,
753
- paddingHorizontal: barPaddingHorizontal,
754
- paddingTop,
755
- paddingBottom
756
- }],
757
- children: tabRow
758
- })
759
- });
760
- });
761
- BottomNavigation.displayName = 'BottomNavigation';
762
- const buildStyles = theme => _reactNative.StyleSheet.create({
763
- outer: {
764
- backgroundColor: 'transparent'
765
- },
766
- dockedBar: {
767
- paddingHorizontal: BAR_PADDING_HORIZONTAL
768
- },
769
- floatingBar: {
770
- paddingVertical: FLOATING_BAR_PADDING_VERTICAL,
771
- paddingHorizontal: FLOATING_BAR_PADDING_HORIZONTAL
772
- },
773
- tabRow: {
774
- flexDirection: 'row',
775
- alignItems: 'stretch',
776
- position: 'relative'
777
- },
778
- tab: {
779
- flex: 1,
780
- minHeight: 44,
781
- alignItems: 'center',
782
- justifyContent: 'center',
783
- paddingVertical: TAB_PADDING_VERTICAL,
784
- // The pill ends 4px under the icon wrap, so the label's box starts where
785
- // the pill ends; the text's own leading is the air, tuned by eye on the
786
- // phone with the 18px icon.
787
- gap: 4
788
- },
789
- tabTile: {
790
- paddingVertical: TAB_PADDING_VERTICAL + TILE_INSET,
791
- gap: TILE_LABEL_GAP
792
- },
793
- centerCell: {
794
- flex: 1,
795
- minHeight: 44,
796
- alignItems: 'center',
797
- justifyContent: 'center'
798
- },
799
- centerCircle: {
800
- alignItems: 'center',
801
- justifyContent: 'center'
802
- },
803
- iconWrap: {
804
- alignItems: 'center',
805
- justifyContent: 'center',
806
- position: 'relative'
807
- },
808
- label: {
809
- fontSize: theme.typography.fontSize.xs,
810
- lineHeight: theme.typography.fontSize.xs * theme.typography.lineHeight.tight,
811
- textAlign: 'center',
812
- // Android pads text above its ascenders by default, which reads as a
813
- // wider gap under the icon than iOS shows.
814
- includeFontPadding: false
815
- },
816
- labelInline: {
817
- fontSize: theme.typography.fontSize.sm,
818
- lineHeight: theme.typography.fontSize.sm * theme.typography.lineHeight.tight,
819
- flexShrink: 1,
820
- includeFontPadding: false
821
- },
822
- expandPill: {
823
- flexDirection: 'row',
824
- alignItems: 'center',
825
- justifyContent: 'center',
826
- gap: theme.spacing.xs
827
- },
828
- expandFill: {
829
- position: 'absolute',
830
- top: 0,
831
- right: 0,
832
- bottom: 0,
833
- left: 0,
834
- overflow: 'hidden'
835
- },
836
- pill: {
837
- position: 'absolute',
838
- left: 0
839
- },
840
- bubble: {
841
- position: 'absolute',
842
- left: 0,
843
- borderWidth: 3
844
- },
845
- underline: {
846
- position: 'absolute',
847
- left: 0,
848
- height: DEFAULT_UNDERLINE_HEIGHT
849
- },
850
- underlineBottom: {
851
- borderTopLeftRadius: 2,
852
- borderTopRightRadius: 2,
853
- ..._corners.smoothCorners
854
- },
855
- underlineTop: {
856
- borderBottomLeftRadius: 2,
857
- borderBottomRightRadius: 2,
858
- ..._corners.smoothCorners
859
- },
860
- badgePill: {
861
- position: 'absolute',
862
- top: -4,
863
- right: -8,
864
- minWidth: 18,
865
- height: 18,
866
- borderRadius: 9,
867
- ..._corners.smoothCorners,
868
- paddingHorizontal: 4,
869
- paddingVertical: 2,
870
- alignItems: 'center',
871
- justifyContent: 'center',
872
- borderWidth: 1.5
873
- },
874
- badgeDot: {
875
- position: 'absolute',
876
- top: -2,
877
- right: -2,
878
- width: 10,
879
- height: 10,
880
- borderRadius: 5,
881
- ..._corners.smoothCorners,
882
- borderWidth: 1.5
883
- },
884
- badgeText: {
885
- fontSize: 10,
886
- fontWeight: '700',
887
- lineHeight: 12,
888
- textAlign: 'center',
889
- includeFontPadding: false
890
- }
891
- });
892
- var _default = exports.default = BottomNavigation;
893
- //# sourceMappingURL=BottomNavigation.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.BottomNavigation=void 0;var _react=_interopRequireWildcard(require("react")),_reactNative=require("react-native"),_reactNativeSafeAreaContext=require("react-native-safe-area-context"),_index=require("../../theme/index.js"),_index2=require("../../utils/index.js"),_corners=require("../../utils/corners.js"),_shadows=require("../../utils/shadows.js"),_index3=require("../AppIcon/index.js"),_jsxRuntime=require("react/jsx-runtime");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var i=new WeakMap,r=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var n,a,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?r:i){if(n.has(e))return n.get(e);n.set(e,o)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((a=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(a.get||a.set)?n(o,t,a):o[t]=e[t]);return o})(e,t)}const DEFAULT_ICON_SIZE=18,ICON_WRAP_AIR=4,PILL_AIR=8,DEFAULT_PILL_MAX_WIDTH=64,TILE_MAX_WIDTH=96,DEFAULT_PILL_INSET=16,DEFAULT_UNDERLINE_HEIGHT=3,DEFAULT_FLOATING_MARGIN=16,DEFAULT_FLOATING_RADIUS=28,DEFAULT_BUBBLE_SIZE=48,DEFAULT_BUBBLE_LIFT=14,DEFAULT_CENTER_SIZE=48,DEFAULT_CENTER_ICON_SIZE=24,CENTER_KEY="__webority_center_action__",TAB_PADDING_VERTICAL=6,BAR_PADDING_HORIZONTAL=4,BAR_PADDING_TOP=6,BAR_PADDING_TOP_BUBBLE=8,FLOATING_BAR_PADDING_VERTICAL=6,FLOATING_BAR_PADDING_HORIZONTAL=8,EXPANDED_FLEX=1.5,SOLID_INACTIVE_OPACITY=.7,TILE_INSET=2,TILE_LABEL_GAP=2,formatBadge=e=>null==e||!1===e?null:!0===e||"·"===e?{text:"",isDot:!0}:"number"==typeof e?e<=0?null:{text:e>99?"99+":String(e),isDot:!1}:"string"==typeof e?0===e.length?null:{text:e,isDot:!1}:null,badgeAccessibilitySuffix=e=>null==e||!1===e?"":"number"==typeof e?e>0?`, ${e} unread`:"":!0===e||"·"===e?", new updates":"string"==typeof e&&e.length>0?`, ${e}`:"",BottomNavigation=exports.BottomNavigation=(0,_react.forwardRef)((e,t)=>{const{tabs:i,centerAction:r,activeTab:n,onChange:a,haptic:o="selection",showLabels:l=!0,variant:s="pill",indicatorPosition:d="bottom",radius:c,indicatorRadius:u="auto",elevation:h,iconSize:p,marginHorizontal:_,marginVertical:g,paddingHorizontal:m,paddingVertical:b,border:f,style:y,indicatorStyle:x,labelStyle:v,testID:R}=e,N=(0,_index.useTheme)(),A=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)(),I=(0,_react.useMemo)(()=>buildStyles(N),[N]),j=N.components.bottomNavigation,w=p??j?.iconSize??18,E=j?.pillHeight??w+4+8,T=j?.pillMaxWidth??64,D=j?.pillInset??16,L=j?.floatingMargin??16,S=j?.floatingRadius??28,C=j?.bubbleSize??48,B=j?.bubbleLift??14,P="tile"===s,V="floating"===s||P,k="bubble"===s,M="expand"===s,H="solid"===s,W="pill"===s||V||H,z=Math.max(0,i.findIndex(e=>e.key===n)),[F,O]=_react.default.useState(0),[U,q]=_react.default.useState(0),G=r?Math.ceil(i.length/2):i.length,$=i.length+(r?1:0),[X,Z]=_react.default.useState({width:0,height:0}),Y=r?.size??48,K=void 0!==r?.gap,J=Math.max(0,r?.gap??0),Q=K?(X.width||Y)+2*J:0,ee=K?i.length>0?Math.max(0,F-Q)/i.length:0:$>0?F/$:0,te=K?Q:ee,ie=(0,_react.useRef)((0,_index.createAnimatedValue)(z)).current,re=(0,_react.useRef)({}),ne=(0,_react.useRef)({});i.forEach(e=>{re.current[e.key]||(re.current[e.key]=new _reactNative.Animated.Value(1)),ne.current[e.key]||(ne.current[e.key]=(0,_index.createAnimatedValue)(e.key===n?1:0))});const ae=ee>0?P?Math.min(ee-4,96):Math.min(ee-D,T):0,oe=ee>0?(ee-ae)/2:0,le=ee>0?(ee-C)/2:0,hasLabel=e=>l&&!1!==e.showLabel&&e.label.trim().length>0,se=i[z],de=se&&!hasLabel(se)&&U>0?U/2:6+(w+4)/2,ce=de-B-C/2,ue=Math.max(0,U-4),he=P?2:de-E/2,pe=(0,_react.useRef)(z);(0,_react.useEffect)(()=>{if(pe.current===z)return;pe.current=z;const e=_reactNative.Animated.spring(ie,{toValue:z,tension:120,friction:14,useNativeDriver:!0});return e.start(),()=>e.stop()},[z,ie]);const _e=Math.max(1,i.length-1),ge=(0,_react.useMemo)(()=>{const e=[],t=[];for(let i=0;i<=_e;i++)e.push(i),t.push(i<G?i*ee:i*ee+te);return ie.interpolate({inputRange:e,outputRange:t})},[ie,_e,G,ee,te]),me=i.map(e=>e.key).join(" "),be=k||M;(0,_react.useEffect)(()=>{const e=me.split(" ").flatMap(e=>{const t=e===n?1:0,i=ne.current[e];return i?be?[_reactNative.Animated.spring(i,{toValue:t,tension:140,friction:13,useNativeDriver:!1})]:(i.setValue(t),[]):[]});if(0===e.length)return;const t=_reactNative.Animated.parallel(e);return t.start(),()=>t.stop()},[n,me,be]);const popIcon=e=>{_reactNative.Animated.sequence([_reactNative.Animated.timing(e,{toValue:1.15,duration:120,useNativeDriver:!0}),_reactNative.Animated.spring(e,{toValue:1,tension:200,friction:8,useNativeDriver:!0})]).start()},fe=(0,_react.useRef)(new _reactNative.Animated.Value(1)).current,{colors:ye}=N,xe=H?ye.primary:ye.background.elevated,ve=H?ye.onPrimary:ye.primary,Re=H?ye.onPrimary:P?ye.text.primary:ye.text.tertiary,Ne=H?ye.onPrimary:ye.primaryMuted,Ae=H?ye.primary:k?ye.onPrimary:ve,Ie=_??L,je=g??(V?L:0),we=je>0,Ee=b??(V?6:k?8:6),Te=m??(V?8:4),De=we?Ee:Math.max(Ee,A.bottom),Le=we?Math.max(je,A.bottom):0,Se="full"===c,Ce=V?U+2*Ee+2*_reactNative.StyleSheet.hairlineWidth:U+Ee+De,Be=Se?U>0?Ce/2:N.radius.full:c??j?.borderRadius??(P?N.radius.full:V?S:0),Pe=void 0!==c||void 0!==j?.borderRadius,activeBgRadius=(e,t)=>"number"==typeof u?Math.max(0,Math.min(u,e/2)):"auto"===u&&Pe?Math.min(Be,e/2):t,Ve="underline"===s?Math.max(Te,Se&&0===U?0:Be):Te,ke=h??"none",Me=N.shadows[ke],He="none"===ke?null:(0,_shadows.supportsBoxShadow)()?{boxShadow:(0,_shadows.toBoxShadow)(Me)}:Me,We=f?_reactNative.StyleSheet.hairlineWidth:0,ze=H?ye.primary:ye.border.primary,Fe=r?.lift??0,Oe=Ee+We,Ue=r&&U>0?Math.max(0,(X.height||Y)/2+Fe-U/2-Oe):0,qe=r?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[I.centerCell,K?{flex:0,marginHorizontal:J}:null],pointerEvents:"box-none",children:(0,_jsxRuntime.jsx)(_reactNative.Pressable,{onPress:()=>{if(!r)return;const e=r.haptic??o;!1!==e&&(0,_index2.triggerHaptic)(e),popIcon(fe),r.onPress()},onLayout:e=>{const{width:t,height:i}=e.nativeEvent.layout;Z(e=>e.width===t&&e.height===i?e:{width:t,height:i})},accessibilityRole:"button",accessibilityLabel:r.label,hitSlop:{top:6,bottom:6,left:6,right:6},style:({pressed:e})=>[{top:-Fe},e?{opacity:.85}:null],testID:r.testID??(R?`${R}-center`:void 0),children:r.content?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:{transform:[{scale:fe}]},children:r.content}):(0,_jsxRuntime.jsx)(_reactNative.View,{style:[I.centerCircle,{width:Y,height:Y,borderRadius:Y/2,..._corners.smoothCorners,backgroundColor:r.color??ye.primary}],children:(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:{transform:[{scale:fe}]},children:(0,_index3.renderSlotIcon)(r.icon??"add",{color:r.iconColor??ye.onPrimary,size:r.iconSize??24,disabled:!1})})})})},CENTER_KEY):null,Ge=(0,_jsxRuntime.jsxs)(_reactNative.View,{style:I.tabRow,onLayout:e=>{const{width:t,height:i}=e.nativeEvent.layout;O(t),q(i)},children:[W&&ae>0&&(!P||ue>0)?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{pointerEvents:"none",style:[I.pill,{width:ae,height:P?ue:E,left:oe,top:he,backgroundColor:Ne,borderRadius:P?activeBgRadius(ue,ue/2):activeBgRadius(E,N.radius.full),..._corners.smoothCorners,transform:[{translateX:ge}]},x]}):null,k&&ee>0?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{pointerEvents:"none",style:[I.bubble,N.shadows.md,{width:C,height:C,borderRadius:C/2,..._corners.smoothCorners,left:le,top:ce,backgroundColor:ye.primary,borderColor:ye.background.elevated,transform:[{translateX:ge}]},x]}):null,($e=i.map(e=>{const t=e.key===n,i=t?ve:Re,r=t?Ae:Re,l="string"==typeof e.icon?{name:e.icon,variant:"bold"}:e.icon,s=t?e.activeIcon??l:e.icon,d=re.current[e.key],c=ne.current[e.key],u=formatBadge(e.badge??null),h=badgeAccessibilitySuffix(e.badge??null),p=H&&!t?.7:1,_=k&&t||H?ye.primary:ye.background.elevated,g=hasLabel(e),m=g&&(!M||t),b=(0,_jsxRuntime.jsxs)(_reactNative.Animated.View,{style:[I.iconWrap,{width:w+4,height:w+4,opacity:p,transform:[{scale:d}]}],children:[(0,_index3.renderSlotIcon)(s,{color:r,size:w,focused:t,disabled:!1}),u?(0,_jsxRuntime.jsx)(_reactNative.View,{style:[u.isDot?I.badgeDot:I.badgePill,{backgroundColor:ye.error,borderColor:_}],children:u.isDot?null:(0,_jsxRuntime.jsx)(_reactNative.Text,{style:[I.badgeText,{color:ye.onError}],numberOfLines:1,children:u.text})}):null]}),f=k?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:{top:c.interpolate({inputRange:[0,1],outputRange:[0,-B]})},children:b}):b,y=m?(0,_jsxRuntime.jsx)(_reactNative.Animated.Text,{numberOfLines:1,style:[I.label,M?I.labelInline:null,{color:i,opacity:M?c:p,fontWeight:t?N.typography.fontWeight.semibold:N.typography.fontWeight.normal},v],children:e.label}):null,A=(0,_jsxRuntime.jsx)(_reactNative.Pressable,{onPress:()=>(e=>{e.key!==n&&!1!==o&&(0,_index2.triggerHaptic)(o);const t=re.current[e.key];t&&popIcon(t),a(e.key)})(e),accessibilityRole:"tab",accessibilityState:{selected:t},accessibilityLabel:`${e.label}${h}`,accessibilityHint:`Switches to ${e.label}`,hitSlop:{top:6,bottom:6,left:6,right:6},style:({pressed:e})=>[I.tab,P?I.tabTile:null,e?{opacity:.85}:null],testID:R?`${R}-tab-${e.key}`:void 0,children:M?(0,_jsxRuntime.jsxs)(_reactNative.View,{style:[I.expandPill,{height:E,paddingHorizontal:t&&g?N.spacing.md:Math.max(0,(E-(w+4))/2)}],children:[(0,_jsxRuntime.jsx)(_reactNative.View,{pointerEvents:"none",style:[I.expandFill,{borderRadius:activeBgRadius(E,E/2),..._corners.smoothCorners,backgroundColor:t?ye.primaryMuted:"transparent"},t?x:null]}),f,y]}):(0,_jsxRuntime.jsxs)(_jsxRuntime.Fragment,{children:[f,y]})},e.key);return M?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{style:{flex:c.interpolate({inputRange:[0,1],outputRange:[1,g?1.5:1]})},children:A},e.key):A}),qe?[...$e.slice(0,G),qe,...$e.slice(G)]:$e),"underline"===s&&ee>0?(0,_jsxRuntime.jsx)(_reactNative.Animated.View,{pointerEvents:"none",style:[I.underline,"top"===d?I.underlineTop:I.underlineBottom,"top"===d?{top:-Ee}:{bottom:-Ee},{width:ee,height:j?.underlineHeight??3,backgroundColor:ye.primary,transform:[{translateX:ge}]},x]}):null]});var $e;return(0,_jsxRuntime.jsx)(_reactNative.View,{ref:t,testID:R,accessibilityRole:"tablist",style:[I.outer,{paddingHorizontal:Ie,paddingTop:Math.max(je,Ue),paddingBottom:Le},y],children:(0,_jsxRuntime.jsx)(_reactNative.View,{style:[V?I.floatingBar:I.dockedBar,He,{backgroundColor:xe,borderColor:ze,borderRadius:Be,..._corners.smoothCorners},V?{borderWidth:We,paddingHorizontal:Te,paddingVertical:Ee}:{borderTopWidth:We,borderBottomWidth:We,borderLeftWidth:We,borderRightWidth:We,paddingHorizontal:Ve,paddingTop:Ee,paddingBottom:De}],children:Ge})})});BottomNavigation.displayName="BottomNavigation";const buildStyles=e=>_reactNative.StyleSheet.create({outer:{backgroundColor:"transparent"},dockedBar:{paddingHorizontal:4},floatingBar:{paddingVertical:6,paddingHorizontal:8},tabRow:{flexDirection:"row",alignItems:"stretch",position:"relative"},tab:{flex:1,minHeight:44,alignItems:"center",justifyContent:"center",paddingVertical:6,gap:4},tabTile:{paddingVertical:8,gap:2},centerCell:{flex:1,minHeight:44,alignItems:"center",justifyContent:"center"},centerCircle:{alignItems:"center",justifyContent:"center"},iconWrap:{alignItems:"center",justifyContent:"center",position:"relative"},label:{fontSize:e.typography.fontSize.xs,lineHeight:e.typography.fontSize.xs*e.typography.lineHeight.tight,textAlign:"center",includeFontPadding:!1},labelInline:{fontSize:e.typography.fontSize.sm,lineHeight:e.typography.fontSize.sm*e.typography.lineHeight.tight,flexShrink:1,includeFontPadding:!1},expandPill:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:e.spacing.xs},expandFill:{position:"absolute",top:0,right:0,bottom:0,left:0,overflow:"hidden"},pill:{position:"absolute",left:0},bubble:{position:"absolute",left:0,borderWidth:3},underline:{position:"absolute",left:0,height:3},underlineBottom:{borderTopLeftRadius:2,borderTopRightRadius:2,..._corners.smoothCorners},underlineTop:{borderBottomLeftRadius:2,borderBottomRightRadius:2,..._corners.smoothCorners},badgePill:{position:"absolute",top:-4,right:-8,minWidth:18,height:18,borderRadius:9,..._corners.smoothCorners,paddingHorizontal:4,paddingVertical:2,alignItems:"center",justifyContent:"center",borderWidth:1.5},badgeDot:{position:"absolute",top:-2,right:-2,width:10,height:10,borderRadius:5,..._corners.smoothCorners,borderWidth:1.5},badgeText:{fontSize:10,fontWeight:"700",lineHeight:12,textAlign:"center",includeFontPadding:!1}});var _default=exports.default=BottomNavigation;