@tamagui/demos 1.11.2 → 1.12.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 (479) hide show
  1. package/dist/cjs/AddThemeDemo.js +1 -1
  2. package/dist/cjs/AddThemeDemo.js.map +2 -2
  3. package/dist/cjs/AlertDialogDemo.js +4 -4
  4. package/dist/cjs/AlertDialogDemo.js.map +2 -2
  5. package/dist/cjs/AnimationsDemo.js +7 -7
  6. package/dist/cjs/AnimationsDemo.js.map +2 -2
  7. package/dist/cjs/AnimationsEnterDemo.js +3 -3
  8. package/dist/cjs/AnimationsEnterDemo.js.map +2 -2
  9. package/dist/cjs/AnimationsHoverDemo.js +2 -2
  10. package/dist/cjs/AnimationsHoverDemo.js.map +2 -2
  11. package/dist/cjs/AnimationsPresenceDemo.js +6 -6
  12. package/dist/cjs/AnimationsPresenceDemo.js.map +2 -2
  13. package/dist/cjs/AnimationsTimingDemo.js +2 -2
  14. package/dist/cjs/AnimationsTimingDemo.js.map +2 -2
  15. package/dist/cjs/AvatarDemo.js +1 -1
  16. package/dist/cjs/AvatarDemo.js.map +2 -2
  17. package/dist/cjs/ButtonDemo.js +6 -6
  18. package/dist/cjs/ButtonDemo.js.map +2 -2
  19. package/dist/cjs/CardDemo.js +7 -7
  20. package/dist/cjs/CardDemo.js.map +2 -2
  21. package/dist/cjs/CheckboxDemo.js +2 -2
  22. package/dist/cjs/CheckboxDemo.js.map +2 -2
  23. package/dist/cjs/ColorsDemo.js +18 -18
  24. package/dist/cjs/ColorsDemo.js.map +2 -2
  25. package/dist/cjs/DialogDemo.js +8 -8
  26. package/dist/cjs/DialogDemo.js.map +2 -2
  27. package/dist/cjs/FormsDemo.js +7 -7
  28. package/dist/cjs/FormsDemo.js.map +2 -2
  29. package/dist/cjs/GroupDemo.js +1 -1
  30. package/dist/cjs/GroupDemo.js.map +2 -2
  31. package/dist/cjs/HeadingsDemo.js +1 -1
  32. package/dist/cjs/HeadingsDemo.js.map +2 -2
  33. package/dist/cjs/InputsDemo.js +4 -4
  34. package/dist/cjs/InputsDemo.js.map +2 -2
  35. package/dist/cjs/LabelDemo.js +6 -6
  36. package/dist/cjs/LabelDemo.js.map +2 -2
  37. package/dist/cjs/LinearGradientDemo.js +2 -2
  38. package/dist/cjs/LinearGradientDemo.js.map +2 -2
  39. package/dist/cjs/ListItemDemo.js +3 -3
  40. package/dist/cjs/ListItemDemo.js.map +2 -2
  41. package/dist/cjs/LucideIconsDemo.js +3 -3
  42. package/dist/cjs/LucideIconsDemo.js.map +2 -2
  43. package/dist/cjs/PopoverDemo.js +7 -7
  44. package/dist/cjs/PopoverDemo.js.map +2 -2
  45. package/dist/cjs/ProgressDemo.js +5 -5
  46. package/dist/cjs/ProgressDemo.js.map +2 -2
  47. package/dist/cjs/RadioGroupDemo.js +2 -2
  48. package/dist/cjs/RadioGroupDemo.js.map +2 -2
  49. package/dist/cjs/ScrollViewDemo.js +9 -9
  50. package/dist/cjs/ScrollViewDemo.js.map +2 -2
  51. package/dist/cjs/SelectDemo.js +8 -8
  52. package/dist/cjs/SelectDemo.js.map +2 -2
  53. package/dist/cjs/SeparatorDemo.js +5 -5
  54. package/dist/cjs/SeparatorDemo.js.map +2 -2
  55. package/dist/cjs/ShapesDemo.js +3 -3
  56. package/dist/cjs/ShapesDemo.js.map +2 -2
  57. package/dist/cjs/SheetDemo.js +4 -4
  58. package/dist/cjs/SheetDemo.js.map +2 -2
  59. package/dist/cjs/SliderDemo.js +1 -1
  60. package/dist/cjs/SliderDemo.js.map +2 -2
  61. package/dist/cjs/SpinnerDemo.js +1 -1
  62. package/dist/cjs/SpinnerDemo.js.map +2 -2
  63. package/dist/cjs/StacksDemo.js +48 -15
  64. package/dist/cjs/StacksDemo.js.map +2 -2
  65. package/dist/cjs/SwitchDemo.js +14 -4
  66. package/dist/cjs/SwitchDemo.js.map +2 -2
  67. package/dist/cjs/TabsAdvancedDemo.js +118 -23
  68. package/dist/cjs/TabsAdvancedDemo.js.map +3 -3
  69. package/dist/cjs/TabsDemo.js +94 -14
  70. package/dist/cjs/TabsDemo.js.map +2 -2
  71. package/dist/cjs/TextDemo.js +2 -2
  72. package/dist/cjs/TextDemo.js.map +2 -2
  73. package/dist/cjs/ThemeInverseDemo.js +1 -1
  74. package/dist/cjs/ThemeInverseDemo.js.map +2 -2
  75. package/dist/cjs/ToastDemo.js +30 -29
  76. package/dist/cjs/ToastDemo.js.map +2 -2
  77. package/dist/cjs/ToastDuplicateDemo.js +2 -2
  78. package/dist/cjs/ToastDuplicateDemo.js.map +2 -2
  79. package/dist/cjs/ToggleGroupDemo.js +7 -7
  80. package/dist/cjs/ToggleGroupDemo.js.map +2 -2
  81. package/dist/cjs/TokensDemo.js +9 -9
  82. package/dist/cjs/TokensDemo.js.map +2 -2
  83. package/dist/cjs/TooltipDemo.js +5 -5
  84. package/dist/cjs/TooltipDemo.js.map +2 -2
  85. package/dist/cjs/UpdateThemeDemo.js +1 -1
  86. package/dist/cjs/UpdateThemeDemo.js.map +2 -2
  87. package/dist/esm/AddThemeDemo.js +1 -1
  88. package/dist/esm/AddThemeDemo.js.map +2 -2
  89. package/dist/esm/AddThemeDemo.mjs +1 -1
  90. package/dist/esm/AddThemeDemo.mjs.map +2 -2
  91. package/dist/esm/AlertDialogDemo.js +4 -4
  92. package/dist/esm/AlertDialogDemo.js.map +2 -2
  93. package/dist/esm/AlertDialogDemo.mjs +4 -4
  94. package/dist/esm/AlertDialogDemo.mjs.map +2 -2
  95. package/dist/esm/AnimationsDemo.js +7 -7
  96. package/dist/esm/AnimationsDemo.js.map +2 -2
  97. package/dist/esm/AnimationsDemo.mjs +7 -7
  98. package/dist/esm/AnimationsDemo.mjs.map +2 -2
  99. package/dist/esm/AnimationsEnterDemo.js +3 -3
  100. package/dist/esm/AnimationsEnterDemo.js.map +2 -2
  101. package/dist/esm/AnimationsEnterDemo.mjs +3 -3
  102. package/dist/esm/AnimationsEnterDemo.mjs.map +2 -2
  103. package/dist/esm/AnimationsHoverDemo.js +2 -2
  104. package/dist/esm/AnimationsHoverDemo.js.map +2 -2
  105. package/dist/esm/AnimationsHoverDemo.mjs +2 -2
  106. package/dist/esm/AnimationsHoverDemo.mjs.map +2 -2
  107. package/dist/esm/AnimationsPresenceDemo.js +6 -6
  108. package/dist/esm/AnimationsPresenceDemo.js.map +2 -2
  109. package/dist/esm/AnimationsPresenceDemo.mjs +6 -6
  110. package/dist/esm/AnimationsPresenceDemo.mjs.map +2 -2
  111. package/dist/esm/AnimationsTimingDemo.js +2 -2
  112. package/dist/esm/AnimationsTimingDemo.js.map +2 -2
  113. package/dist/esm/AnimationsTimingDemo.mjs +2 -2
  114. package/dist/esm/AnimationsTimingDemo.mjs.map +2 -2
  115. package/dist/esm/AvatarDemo.js +1 -1
  116. package/dist/esm/AvatarDemo.js.map +2 -2
  117. package/dist/esm/AvatarDemo.mjs +1 -1
  118. package/dist/esm/AvatarDemo.mjs.map +2 -2
  119. package/dist/esm/ButtonDemo.js +6 -6
  120. package/dist/esm/ButtonDemo.js.map +2 -2
  121. package/dist/esm/ButtonDemo.mjs +6 -6
  122. package/dist/esm/ButtonDemo.mjs.map +2 -2
  123. package/dist/esm/CardDemo.js +7 -7
  124. package/dist/esm/CardDemo.js.map +2 -2
  125. package/dist/esm/CardDemo.mjs +7 -7
  126. package/dist/esm/CardDemo.mjs.map +2 -2
  127. package/dist/esm/CheckboxDemo.js +2 -2
  128. package/dist/esm/CheckboxDemo.js.map +2 -2
  129. package/dist/esm/CheckboxDemo.mjs +2 -2
  130. package/dist/esm/CheckboxDemo.mjs.map +2 -2
  131. package/dist/esm/ColorsDemo.js +18 -18
  132. package/dist/esm/ColorsDemo.js.map +2 -2
  133. package/dist/esm/ColorsDemo.mjs +18 -18
  134. package/dist/esm/ColorsDemo.mjs.map +2 -2
  135. package/dist/esm/DialogDemo.js +8 -8
  136. package/dist/esm/DialogDemo.js.map +2 -2
  137. package/dist/esm/DialogDemo.mjs +8 -8
  138. package/dist/esm/DialogDemo.mjs.map +2 -2
  139. package/dist/esm/FormsDemo.js +7 -7
  140. package/dist/esm/FormsDemo.js.map +2 -2
  141. package/dist/esm/FormsDemo.mjs +7 -7
  142. package/dist/esm/FormsDemo.mjs.map +2 -2
  143. package/dist/esm/GroupDemo.js +1 -1
  144. package/dist/esm/GroupDemo.js.map +2 -2
  145. package/dist/esm/GroupDemo.mjs +1 -1
  146. package/dist/esm/GroupDemo.mjs.map +2 -2
  147. package/dist/esm/HeadingsDemo.js +1 -1
  148. package/dist/esm/HeadingsDemo.js.map +2 -2
  149. package/dist/esm/HeadingsDemo.mjs +1 -1
  150. package/dist/esm/HeadingsDemo.mjs.map +2 -2
  151. package/dist/esm/InputsDemo.js +4 -4
  152. package/dist/esm/InputsDemo.js.map +2 -2
  153. package/dist/esm/InputsDemo.mjs +4 -4
  154. package/dist/esm/InputsDemo.mjs.map +2 -2
  155. package/dist/esm/LabelDemo.js +6 -6
  156. package/dist/esm/LabelDemo.js.map +2 -2
  157. package/dist/esm/LabelDemo.mjs +6 -6
  158. package/dist/esm/LabelDemo.mjs.map +2 -2
  159. package/dist/esm/LinearGradientDemo.js +2 -2
  160. package/dist/esm/LinearGradientDemo.js.map +2 -2
  161. package/dist/esm/LinearGradientDemo.mjs +2 -2
  162. package/dist/esm/LinearGradientDemo.mjs.map +2 -2
  163. package/dist/esm/ListItemDemo.js +3 -3
  164. package/dist/esm/ListItemDemo.js.map +2 -2
  165. package/dist/esm/ListItemDemo.mjs +3 -3
  166. package/dist/esm/ListItemDemo.mjs.map +2 -2
  167. package/dist/esm/LucideIconsDemo.js +3 -3
  168. package/dist/esm/LucideIconsDemo.js.map +2 -2
  169. package/dist/esm/LucideIconsDemo.mjs +3 -3
  170. package/dist/esm/LucideIconsDemo.mjs.map +2 -2
  171. package/dist/esm/PopoverDemo.js +7 -7
  172. package/dist/esm/PopoverDemo.js.map +2 -2
  173. package/dist/esm/PopoverDemo.mjs +7 -7
  174. package/dist/esm/PopoverDemo.mjs.map +2 -2
  175. package/dist/esm/ProgressDemo.js +5 -5
  176. package/dist/esm/ProgressDemo.js.map +2 -2
  177. package/dist/esm/ProgressDemo.mjs +5 -5
  178. package/dist/esm/ProgressDemo.mjs.map +2 -2
  179. package/dist/esm/RadioGroupDemo.js +2 -2
  180. package/dist/esm/RadioGroupDemo.js.map +2 -2
  181. package/dist/esm/RadioGroupDemo.mjs +2 -2
  182. package/dist/esm/RadioGroupDemo.mjs.map +2 -2
  183. package/dist/esm/ScrollViewDemo.js +9 -9
  184. package/dist/esm/ScrollViewDemo.js.map +2 -2
  185. package/dist/esm/ScrollViewDemo.mjs +9 -9
  186. package/dist/esm/ScrollViewDemo.mjs.map +2 -2
  187. package/dist/esm/SelectDemo.js +8 -8
  188. package/dist/esm/SelectDemo.js.map +2 -2
  189. package/dist/esm/SelectDemo.mjs +8 -8
  190. package/dist/esm/SelectDemo.mjs.map +2 -2
  191. package/dist/esm/SeparatorDemo.js +5 -5
  192. package/dist/esm/SeparatorDemo.js.map +2 -2
  193. package/dist/esm/SeparatorDemo.mjs +5 -5
  194. package/dist/esm/SeparatorDemo.mjs.map +2 -2
  195. package/dist/esm/ShapesDemo.js +3 -3
  196. package/dist/esm/ShapesDemo.js.map +2 -2
  197. package/dist/esm/ShapesDemo.mjs +3 -3
  198. package/dist/esm/ShapesDemo.mjs.map +2 -2
  199. package/dist/esm/SheetDemo.js +4 -4
  200. package/dist/esm/SheetDemo.js.map +2 -2
  201. package/dist/esm/SheetDemo.mjs +4 -4
  202. package/dist/esm/SheetDemo.mjs.map +2 -2
  203. package/dist/esm/SliderDemo.js +1 -1
  204. package/dist/esm/SliderDemo.js.map +2 -2
  205. package/dist/esm/SliderDemo.mjs +1 -1
  206. package/dist/esm/SliderDemo.mjs.map +2 -2
  207. package/dist/esm/SpinnerDemo.js +1 -1
  208. package/dist/esm/SpinnerDemo.js.map +2 -2
  209. package/dist/esm/SpinnerDemo.mjs +1 -1
  210. package/dist/esm/SpinnerDemo.mjs.map +2 -2
  211. package/dist/esm/StacksDemo.js +48 -15
  212. package/dist/esm/StacksDemo.js.map +2 -2
  213. package/dist/esm/StacksDemo.mjs +48 -15
  214. package/dist/esm/StacksDemo.mjs.map +2 -2
  215. package/dist/esm/SwitchDemo.js +14 -4
  216. package/dist/esm/SwitchDemo.js.map +2 -2
  217. package/dist/esm/SwitchDemo.mjs +14 -4
  218. package/dist/esm/SwitchDemo.mjs.map +2 -2
  219. package/dist/esm/TabsAdvancedDemo.js +122 -25
  220. package/dist/esm/TabsAdvancedDemo.js.map +3 -3
  221. package/dist/esm/TabsAdvancedDemo.mjs +122 -25
  222. package/dist/esm/TabsAdvancedDemo.mjs.map +3 -3
  223. package/dist/esm/TabsDemo.js +97 -17
  224. package/dist/esm/TabsDemo.js.map +2 -2
  225. package/dist/esm/TabsDemo.mjs +97 -17
  226. package/dist/esm/TabsDemo.mjs.map +2 -2
  227. package/dist/esm/TextDemo.js +2 -2
  228. package/dist/esm/TextDemo.js.map +2 -2
  229. package/dist/esm/TextDemo.mjs +2 -2
  230. package/dist/esm/TextDemo.mjs.map +2 -2
  231. package/dist/esm/ThemeInverseDemo.js +1 -1
  232. package/dist/esm/ThemeInverseDemo.js.map +2 -2
  233. package/dist/esm/ThemeInverseDemo.mjs +1 -1
  234. package/dist/esm/ThemeInverseDemo.mjs.map +2 -2
  235. package/dist/esm/ToastDemo.js +31 -39
  236. package/dist/esm/ToastDemo.js.map +2 -2
  237. package/dist/esm/ToastDemo.mjs +31 -39
  238. package/dist/esm/ToastDemo.mjs.map +2 -2
  239. package/dist/esm/ToastDuplicateDemo.js +2 -2
  240. package/dist/esm/ToastDuplicateDemo.js.map +2 -2
  241. package/dist/esm/ToastDuplicateDemo.mjs +2 -2
  242. package/dist/esm/ToastDuplicateDemo.mjs.map +2 -2
  243. package/dist/esm/ToggleGroupDemo.js +7 -7
  244. package/dist/esm/ToggleGroupDemo.js.map +2 -2
  245. package/dist/esm/ToggleGroupDemo.mjs +7 -7
  246. package/dist/esm/ToggleGroupDemo.mjs.map +2 -2
  247. package/dist/esm/TokensDemo.js +9 -9
  248. package/dist/esm/TokensDemo.js.map +2 -2
  249. package/dist/esm/TokensDemo.mjs +9 -9
  250. package/dist/esm/TokensDemo.mjs.map +2 -2
  251. package/dist/esm/TooltipDemo.js +5 -5
  252. package/dist/esm/TooltipDemo.js.map +2 -2
  253. package/dist/esm/TooltipDemo.mjs +5 -5
  254. package/dist/esm/TooltipDemo.mjs.map +2 -2
  255. package/dist/esm/UpdateThemeDemo.js +1 -1
  256. package/dist/esm/UpdateThemeDemo.js.map +2 -2
  257. package/dist/esm/UpdateThemeDemo.mjs +1 -1
  258. package/dist/esm/UpdateThemeDemo.mjs.map +2 -2
  259. package/dist/jsx/AddThemeDemo.js +1 -1
  260. package/dist/jsx/AddThemeDemo.js.map +2 -2
  261. package/dist/jsx/AddThemeDemo.mjs +1 -1
  262. package/dist/jsx/AddThemeDemo.mjs.map +2 -2
  263. package/dist/jsx/AlertDialogDemo.js +4 -4
  264. package/dist/jsx/AlertDialogDemo.js.map +2 -2
  265. package/dist/jsx/AlertDialogDemo.mjs +4 -4
  266. package/dist/jsx/AlertDialogDemo.mjs.map +2 -2
  267. package/dist/jsx/AnimationsDemo.js +7 -7
  268. package/dist/jsx/AnimationsDemo.js.map +2 -2
  269. package/dist/jsx/AnimationsDemo.mjs +7 -7
  270. package/dist/jsx/AnimationsDemo.mjs.map +2 -2
  271. package/dist/jsx/AnimationsEnterDemo.js +3 -3
  272. package/dist/jsx/AnimationsEnterDemo.js.map +2 -2
  273. package/dist/jsx/AnimationsEnterDemo.mjs +3 -3
  274. package/dist/jsx/AnimationsEnterDemo.mjs.map +2 -2
  275. package/dist/jsx/AnimationsHoverDemo.js +2 -2
  276. package/dist/jsx/AnimationsHoverDemo.js.map +2 -2
  277. package/dist/jsx/AnimationsHoverDemo.mjs +2 -2
  278. package/dist/jsx/AnimationsHoverDemo.mjs.map +2 -2
  279. package/dist/jsx/AnimationsPresenceDemo.js +6 -6
  280. package/dist/jsx/AnimationsPresenceDemo.js.map +2 -2
  281. package/dist/jsx/AnimationsPresenceDemo.mjs +6 -6
  282. package/dist/jsx/AnimationsPresenceDemo.mjs.map +2 -2
  283. package/dist/jsx/AnimationsTimingDemo.js +2 -2
  284. package/dist/jsx/AnimationsTimingDemo.js.map +2 -2
  285. package/dist/jsx/AnimationsTimingDemo.mjs +2 -2
  286. package/dist/jsx/AnimationsTimingDemo.mjs.map +2 -2
  287. package/dist/jsx/AvatarDemo.js +1 -1
  288. package/dist/jsx/AvatarDemo.js.map +2 -2
  289. package/dist/jsx/AvatarDemo.mjs +1 -1
  290. package/dist/jsx/AvatarDemo.mjs.map +2 -2
  291. package/dist/jsx/ButtonDemo.js +6 -6
  292. package/dist/jsx/ButtonDemo.js.map +2 -2
  293. package/dist/jsx/ButtonDemo.mjs +6 -6
  294. package/dist/jsx/ButtonDemo.mjs.map +2 -2
  295. package/dist/jsx/CardDemo.js +7 -7
  296. package/dist/jsx/CardDemo.js.map +2 -2
  297. package/dist/jsx/CardDemo.mjs +7 -7
  298. package/dist/jsx/CardDemo.mjs.map +2 -2
  299. package/dist/jsx/CheckboxDemo.js +2 -2
  300. package/dist/jsx/CheckboxDemo.js.map +2 -2
  301. package/dist/jsx/CheckboxDemo.mjs +2 -2
  302. package/dist/jsx/CheckboxDemo.mjs.map +2 -2
  303. package/dist/jsx/ColorsDemo.js +18 -18
  304. package/dist/jsx/ColorsDemo.js.map +2 -2
  305. package/dist/jsx/ColorsDemo.mjs +18 -18
  306. package/dist/jsx/ColorsDemo.mjs.map +2 -2
  307. package/dist/jsx/DialogDemo.js +8 -8
  308. package/dist/jsx/DialogDemo.js.map +2 -2
  309. package/dist/jsx/DialogDemo.mjs +8 -8
  310. package/dist/jsx/DialogDemo.mjs.map +2 -2
  311. package/dist/jsx/FormsDemo.js +7 -7
  312. package/dist/jsx/FormsDemo.js.map +2 -2
  313. package/dist/jsx/FormsDemo.mjs +7 -7
  314. package/dist/jsx/FormsDemo.mjs.map +2 -2
  315. package/dist/jsx/GroupDemo.js +1 -1
  316. package/dist/jsx/GroupDemo.js.map +2 -2
  317. package/dist/jsx/GroupDemo.mjs +1 -1
  318. package/dist/jsx/GroupDemo.mjs.map +2 -2
  319. package/dist/jsx/HeadingsDemo.js +1 -1
  320. package/dist/jsx/HeadingsDemo.js.map +2 -2
  321. package/dist/jsx/HeadingsDemo.mjs +1 -1
  322. package/dist/jsx/HeadingsDemo.mjs.map +2 -2
  323. package/dist/jsx/InputsDemo.js +4 -4
  324. package/dist/jsx/InputsDemo.js.map +2 -2
  325. package/dist/jsx/InputsDemo.mjs +4 -4
  326. package/dist/jsx/InputsDemo.mjs.map +2 -2
  327. package/dist/jsx/LabelDemo.js +6 -6
  328. package/dist/jsx/LabelDemo.js.map +2 -2
  329. package/dist/jsx/LabelDemo.mjs +6 -6
  330. package/dist/jsx/LabelDemo.mjs.map +2 -2
  331. package/dist/jsx/LinearGradientDemo.js +2 -2
  332. package/dist/jsx/LinearGradientDemo.js.map +2 -2
  333. package/dist/jsx/LinearGradientDemo.mjs +2 -2
  334. package/dist/jsx/LinearGradientDemo.mjs.map +2 -2
  335. package/dist/jsx/ListItemDemo.js +3 -3
  336. package/dist/jsx/ListItemDemo.js.map +2 -2
  337. package/dist/jsx/ListItemDemo.mjs +3 -3
  338. package/dist/jsx/ListItemDemo.mjs.map +2 -2
  339. package/dist/jsx/LucideIconsDemo.js +3 -3
  340. package/dist/jsx/LucideIconsDemo.js.map +2 -2
  341. package/dist/jsx/LucideIconsDemo.mjs +3 -3
  342. package/dist/jsx/LucideIconsDemo.mjs.map +2 -2
  343. package/dist/jsx/PopoverDemo.js +7 -7
  344. package/dist/jsx/PopoverDemo.js.map +2 -2
  345. package/dist/jsx/PopoverDemo.mjs +7 -7
  346. package/dist/jsx/PopoverDemo.mjs.map +2 -2
  347. package/dist/jsx/ProgressDemo.js +5 -5
  348. package/dist/jsx/ProgressDemo.js.map +2 -2
  349. package/dist/jsx/ProgressDemo.mjs +5 -5
  350. package/dist/jsx/ProgressDemo.mjs.map +2 -2
  351. package/dist/jsx/RadioGroupDemo.js +2 -2
  352. package/dist/jsx/RadioGroupDemo.js.map +2 -2
  353. package/dist/jsx/RadioGroupDemo.mjs +2 -2
  354. package/dist/jsx/RadioGroupDemo.mjs.map +2 -2
  355. package/dist/jsx/ScrollViewDemo.js +9 -9
  356. package/dist/jsx/ScrollViewDemo.js.map +2 -2
  357. package/dist/jsx/ScrollViewDemo.mjs +9 -9
  358. package/dist/jsx/ScrollViewDemo.mjs.map +2 -2
  359. package/dist/jsx/SelectDemo.js +8 -8
  360. package/dist/jsx/SelectDemo.js.map +2 -2
  361. package/dist/jsx/SelectDemo.mjs +8 -8
  362. package/dist/jsx/SelectDemo.mjs.map +2 -2
  363. package/dist/jsx/SeparatorDemo.js +5 -5
  364. package/dist/jsx/SeparatorDemo.js.map +2 -2
  365. package/dist/jsx/SeparatorDemo.mjs +5 -5
  366. package/dist/jsx/SeparatorDemo.mjs.map +2 -2
  367. package/dist/jsx/ShapesDemo.js +3 -3
  368. package/dist/jsx/ShapesDemo.js.map +2 -2
  369. package/dist/jsx/ShapesDemo.mjs +3 -3
  370. package/dist/jsx/ShapesDemo.mjs.map +2 -2
  371. package/dist/jsx/SheetDemo.js +4 -4
  372. package/dist/jsx/SheetDemo.js.map +2 -2
  373. package/dist/jsx/SheetDemo.mjs +4 -4
  374. package/dist/jsx/SheetDemo.mjs.map +2 -2
  375. package/dist/jsx/SliderDemo.js +1 -1
  376. package/dist/jsx/SliderDemo.js.map +2 -2
  377. package/dist/jsx/SliderDemo.mjs +1 -1
  378. package/dist/jsx/SliderDemo.mjs.map +2 -2
  379. package/dist/jsx/SpinnerDemo.js +1 -1
  380. package/dist/jsx/SpinnerDemo.js.map +2 -2
  381. package/dist/jsx/SpinnerDemo.mjs +1 -1
  382. package/dist/jsx/SpinnerDemo.mjs.map +2 -2
  383. package/dist/jsx/StacksDemo.js +35 -13
  384. package/dist/jsx/StacksDemo.js.map +2 -2
  385. package/dist/jsx/StacksDemo.mjs +35 -13
  386. package/dist/jsx/StacksDemo.mjs.map +2 -2
  387. package/dist/jsx/SwitchDemo.js +10 -4
  388. package/dist/jsx/SwitchDemo.js.map +2 -2
  389. package/dist/jsx/SwitchDemo.mjs +10 -4
  390. package/dist/jsx/SwitchDemo.mjs.map +2 -2
  391. package/dist/jsx/TabsAdvancedDemo.js +103 -24
  392. package/dist/jsx/TabsAdvancedDemo.js.map +3 -3
  393. package/dist/jsx/TabsAdvancedDemo.mjs +103 -24
  394. package/dist/jsx/TabsAdvancedDemo.mjs.map +3 -3
  395. package/dist/jsx/TabsDemo.js +68 -16
  396. package/dist/jsx/TabsDemo.js.map +2 -2
  397. package/dist/jsx/TabsDemo.mjs +68 -16
  398. package/dist/jsx/TabsDemo.mjs.map +2 -2
  399. package/dist/jsx/TextDemo.js +2 -2
  400. package/dist/jsx/TextDemo.js.map +2 -2
  401. package/dist/jsx/TextDemo.mjs +2 -2
  402. package/dist/jsx/TextDemo.mjs.map +2 -2
  403. package/dist/jsx/ThemeInverseDemo.js +1 -1
  404. package/dist/jsx/ThemeInverseDemo.js.map +2 -2
  405. package/dist/jsx/ThemeInverseDemo.mjs +1 -1
  406. package/dist/jsx/ThemeInverseDemo.mjs.map +2 -2
  407. package/dist/jsx/ToastDemo.js +28 -39
  408. package/dist/jsx/ToastDemo.js.map +2 -2
  409. package/dist/jsx/ToastDemo.mjs +28 -39
  410. package/dist/jsx/ToastDemo.mjs.map +2 -2
  411. package/dist/jsx/ToastDuplicateDemo.js +2 -2
  412. package/dist/jsx/ToastDuplicateDemo.js.map +2 -2
  413. package/dist/jsx/ToastDuplicateDemo.mjs +2 -2
  414. package/dist/jsx/ToastDuplicateDemo.mjs.map +2 -2
  415. package/dist/jsx/ToggleGroupDemo.js +7 -7
  416. package/dist/jsx/ToggleGroupDemo.js.map +2 -2
  417. package/dist/jsx/ToggleGroupDemo.mjs +7 -7
  418. package/dist/jsx/ToggleGroupDemo.mjs.map +2 -2
  419. package/dist/jsx/TokensDemo.js +9 -9
  420. package/dist/jsx/TokensDemo.js.map +2 -2
  421. package/dist/jsx/TokensDemo.mjs +9 -9
  422. package/dist/jsx/TokensDemo.mjs.map +2 -2
  423. package/dist/jsx/TooltipDemo.js +5 -5
  424. package/dist/jsx/TooltipDemo.js.map +2 -2
  425. package/dist/jsx/TooltipDemo.mjs +5 -5
  426. package/dist/jsx/TooltipDemo.mjs.map +2 -2
  427. package/dist/jsx/UpdateThemeDemo.js +1 -1
  428. package/dist/jsx/UpdateThemeDemo.js.map +2 -2
  429. package/dist/jsx/UpdateThemeDemo.mjs +1 -1
  430. package/dist/jsx/UpdateThemeDemo.mjs.map +2 -2
  431. package/package.json +17 -17
  432. package/src/AddThemeDemo.tsx +1 -1
  433. package/src/AlertDialogDemo.tsx +4 -4
  434. package/src/AnimationsDemo.tsx +7 -7
  435. package/src/AnimationsEnterDemo.tsx +3 -3
  436. package/src/AnimationsHoverDemo.tsx +2 -2
  437. package/src/AnimationsPresenceDemo.tsx +6 -6
  438. package/src/AnimationsTimingDemo.tsx +2 -2
  439. package/src/AvatarDemo.tsx +1 -1
  440. package/src/ButtonDemo.tsx +6 -6
  441. package/src/CardDemo.tsx +7 -7
  442. package/src/CheckboxDemo.tsx +2 -2
  443. package/src/ColorsDemo.tsx +18 -18
  444. package/src/DialogDemo.tsx +8 -8
  445. package/src/FormsDemo.tsx +7 -7
  446. package/src/GroupDemo.tsx +1 -1
  447. package/src/HeadingsDemo.tsx +1 -1
  448. package/src/InputsDemo.tsx +4 -4
  449. package/src/LabelDemo.tsx +6 -6
  450. package/src/LinearGradientDemo.tsx +2 -2
  451. package/src/ListItemDemo.tsx +3 -3
  452. package/src/LucideIconsDemo.tsx +3 -3
  453. package/src/PopoverDemo.tsx +7 -7
  454. package/src/ProgressDemo.tsx +5 -5
  455. package/src/RadioGroupDemo.tsx +2 -2
  456. package/src/ScrollViewDemo.tsx +10 -10
  457. package/src/SelectDemo.tsx +8 -8
  458. package/src/SeparatorDemo.tsx +5 -5
  459. package/src/ShapesDemo.tsx +3 -3
  460. package/src/SheetDemo.tsx +5 -5
  461. package/src/SliderDemo.tsx +1 -1
  462. package/src/SpinnerDemo.tsx +1 -1
  463. package/src/StacksDemo.tsx +35 -13
  464. package/src/SwitchDemo.tsx +10 -4
  465. package/src/TabsAdvancedDemo.tsx +175 -31
  466. package/src/TabsDemo.tsx +68 -18
  467. package/src/TextDemo.tsx +2 -2
  468. package/src/ThemeInverseDemo.tsx +1 -1
  469. package/src/ToastDemo.tsx +32 -45
  470. package/src/ToastDuplicateDemo.tsx +2 -2
  471. package/src/ToggleGroupDemo.tsx +15 -13
  472. package/src/TokensDemo.tsx +9 -9
  473. package/src/TooltipDemo.tsx +5 -5
  474. package/src/UpdateThemeDemo.tsx +1 -1
  475. package/types/StacksDemo.d.ts.map +1 -1
  476. package/types/TabsAdvancedDemo.d.ts.map +1 -1
  477. package/types/TabsDemo.d.ts.map +1 -1
  478. package/types/ToastDemo.d.ts.map +1 -1
  479. package/types/ToggleGroupDemo.d.ts.map +1 -1
package/src/SheetDemo.tsx CHANGED
@@ -33,9 +33,9 @@ export const SheetDemo = () => {
33
33
  >
34
34
  <Sheet.Overlay />
35
35
  <Sheet.Handle />
36
- <Sheet.Frame f={1} p="$4" jc="center" ai="center" space="$5">
36
+ <Sheet.Frame flex={1} padding="$4" justifyContent="center" alignItems="center" space="$5">
37
37
  <Button size="$6" circular icon={ChevronDown} onPress={() => setOpen(false)} />
38
- <Input w={200} />
38
+ <Input width={200} />
39
39
  {modal && (
40
40
  <>
41
41
  <InnerSheet open={innerOpen} onOpenChange={setInnerOpen} />
@@ -58,12 +58,12 @@ function InnerSheet(props: SheetProps) {
58
58
  <Sheet modal snapPoints={[90]} dismissOnSnapToBottom {...props}>
59
59
  <Sheet.Overlay />
60
60
  <Sheet.Handle />
61
- <Sheet.Frame f={1} jc="center" ai="center" space="$5">
62
- <Sheet.ScrollView p="$4" space>
61
+ <Sheet.Frame flex={1} justifyContent="center" alignItems="center" space="$5">
62
+ <Sheet.ScrollView padding="$4" space>
63
63
  <Button
64
64
  size="$8"
65
65
  circular
66
- als="center"
66
+ alignSelf="center"
67
67
  icon={ChevronDown}
68
68
  onPress={() => props.onOpenChange?.(false)}
69
69
  />
@@ -2,7 +2,7 @@ import { Slider, SliderProps, Spacer, XStack } from 'tamagui'
2
2
 
3
3
  export function SliderDemo() {
4
4
  return (
5
- <XStack height={200} ai="center" space="$8">
5
+ <XStack height={200} alignItems="center" space="$8">
6
6
  <SimpleSlider height={200} orientation="vertical" />
7
7
  <SimpleSlider width={200} />
8
8
  </XStack>
@@ -2,7 +2,7 @@ import { Spinner, YStack } from 'tamagui'
2
2
 
3
3
  export function SpinnerDemo() {
4
4
  return (
5
- <YStack p="$3" space="$4" ai="center">
5
+ <YStack padding="$3" space="$4" alignItems="center">
6
6
  <Spinner size="small" color="$green10" />
7
7
  <Spinner size="large" color="$orange10" />
8
8
  </YStack>
@@ -3,23 +3,45 @@ import { XStack, YStack, ZStack } from 'tamagui'
3
3
 
4
4
  export function StacksDemo() {
5
5
  return (
6
- <XStack maw={250} p="$2" als="center" space>
7
- <YStack flex={1} space="$2" bw={2} boc="$color" br="$4" p="$2">
8
- <YStack bc="$color" br="$3" p="$2" />
9
- <YStack bc="$color" br="$3" p="$2" />
10
- <YStack bc="$color" br="$3" p="$2" />
6
+ <XStack maxWidth={250} padding="$2" alignSelf="center" space>
7
+ <YStack
8
+ flex={1}
9
+ space="$2"
10
+ borderWidth={2}
11
+ borderColor="$color"
12
+ borderRadius="$4"
13
+ padding="$2"
14
+ >
15
+ <YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
16
+ <YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
17
+ <YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
11
18
  </YStack>
12
19
 
13
- <XStack flex={1} space="$2" bw={2} boc="$color" br="$4" p="$2">
14
- <YStack bc="$color" br="$3" p="$2" />
15
- <YStack bc="$color" br="$3" p="$2" />
16
- <YStack bc="$color" br="$3" p="$2" />
20
+ <XStack
21
+ flex={1}
22
+ space="$2"
23
+ borderWidth={2}
24
+ borderColor="$color"
25
+ borderRadius="$4"
26
+ padding="$2"
27
+ >
28
+ <YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
29
+ <YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
30
+ <YStack backgroundColor="$color" borderRadius="$3" padding="$2" />
17
31
  </XStack>
18
32
 
19
- <ZStack maw={50} mah={85} w={100} flex={1}>
20
- <YStack fullscreen bw={2} br="$4" p="$2" />
21
- <YStack fullscreen y={10} x={10} bw={2} br="$4" p="$2" />
22
- <YStack fullscreen y={20} x={20} bw={2} bc="$color" br="$4" p="$2" />
33
+ <ZStack maxWidth={50} maxHeight={85} width={100} flex={1}>
34
+ <YStack fullscreen borderWidth={2} borderRadius="$4" padding="$2" />
35
+ <YStack fullscreen y={10} x={10} borderWidth={2} borderRadius="$4" padding="$2" />
36
+ <YStack
37
+ fullscreen
38
+ y={20}
39
+ x={20}
40
+ borderWidth={2}
41
+ backgroundColor="$color"
42
+ borderRadius="$4"
43
+ padding="$2"
44
+ />
23
45
  </ZStack>
24
46
  </XStack>
25
47
  )
@@ -2,7 +2,7 @@ import { Label, Separator, SizeTokens, Switch, XStack, YStack, styled } from 'ta
2
2
 
3
3
  export function SwitchDemo() {
4
4
  return (
5
- <YStack w={200} ai="center" space="$3">
5
+ <YStack width={200} alignItems="center" space="$3">
6
6
  <SwitchWithLabel size="$2" />
7
7
  <SwitchWithLabel size="$3" />
8
8
  <SwitchWithLabel size="$4" />
@@ -14,11 +14,17 @@ export function SwitchDemo() {
14
14
  function SwitchWithLabel(props: { size: SizeTokens }) {
15
15
  const id = `switch-${props.size.toString().slice(1)}`
16
16
  return (
17
- <XStack w={200} ai="center" space="$4">
18
- <Label pr="$0" miw={90} jc="flex-end" size={props.size} htmlFor={id}>
17
+ <XStack width={200} alignItems="center" space="$4">
18
+ <Label
19
+ paddingRight="$0"
20
+ minWidth={90}
21
+ justifyContent="flex-end"
22
+ size={props.size}
23
+ htmlFor={id}
24
+ >
19
25
  Dark mode
20
26
  </Label>
21
- <Separator mih={20} vertical />
27
+ <Separator minHeight={20} vertical />
22
28
  <Switch id={id} size={props.size}>
23
29
  <Switch.Thumb animation="quick" />
24
30
  </Switch>
@@ -1,45 +1,188 @@
1
1
  import { useRef, useState } from 'react'
2
2
  import {
3
3
  AnimatePresence,
4
+ Button,
4
5
  H5,
5
6
  SizableText,
6
7
  Stack,
7
8
  TabTriggerLayout,
8
9
  Tabs,
9
10
  TabsTriggerProps,
11
+ XStack,
10
12
  YStack,
11
13
  styled,
12
14
  } from 'tamagui'
13
15
 
16
+ const demos = ['background', 'underline'] as const
17
+
14
18
  export const TabsAdvancedDemo = () => {
15
- const [currentTab, setCurrentTab] = useState('tab1')
19
+ const [demoIndex, setDemoIndex] = useState(0)
20
+ const demo = demos[demoIndex]
21
+ return (
22
+ <>
23
+ {demo === 'underline' ? <TabsAdvancedUnderline /> : <TabsAdvancedBackground />}
24
+
25
+ <XStack alignItems="center" space position="absolute" bottom="$3" left="$4" $xxs={{ display: 'none' }}>
26
+ <Button size="$2" onPress={() => setDemoIndex((x) => (x + 1) % demos.length)}>
27
+ {demo}
28
+ </Button>
29
+ </XStack>
30
+ </>
31
+ )
32
+ }
33
+
34
+ const TabsAdvancedBackground = () => {
35
+ const [tabState, setTabState] = useState<{
36
+ currentTab: string
37
+ /**
38
+ * Layout of the trigger user might intend to select (hovering / focusing)
39
+ */
40
+ intentAt: TabTriggerLayout | null
41
+ /**
42
+ * Layout of the trigger user selected
43
+ */
44
+ activeAt: TabTriggerLayout | null
45
+ /**
46
+ * Used to get the direction of activation for animating the active indicator
47
+ */
48
+ prevActiveAt: TabTriggerLayout | null
49
+ }>({
50
+ activeAt: null,
51
+ currentTab: 'tab1',
52
+ intentAt: null,
53
+ prevActiveAt: null,
54
+ })
55
+
56
+ const setCurrentTab = (currentTab: string) => setTabState({ ...tabState, currentTab })
57
+ const setIntentIndicator = (intentAt) => setTabState({ ...tabState, intentAt })
58
+ const setActiveIndicator = (activeAt) =>
59
+ setTabState({ ...tabState, prevActiveAt: tabState.activeAt, activeAt })
60
+ const { activeAt, intentAt, prevActiveAt, currentTab } = tabState
16
61
 
17
- // Layout of the trigger user might intend to select (hovering / focusing)
18
- const [intentIndicator, setIntentIndicator] = useState<TabTriggerLayout | null>(null)
62
+ /**
63
+ * -1: from left
64
+ * 0: n/a
65
+ * 1: from right
66
+ */
67
+ const direction = (() => {
68
+ if (!activeAt || !prevActiveAt || activeAt.x === prevActiveAt.x) {
69
+ return 0
70
+ }
71
+ return activeAt.x > prevActiveAt.x ? -1 : 1
72
+ })()
19
73
 
20
- // Layout of the trigger user selected
21
- const [selectIndicator, setSelectIndicator] = useState<TabTriggerLayout | null>(null)
22
- const prevSelectionIndicatorLayout = useRef<TabTriggerLayout | null>(null)
74
+ const enterVariant =
75
+ direction === 1 ? 'isLeft' : direction === -1 ? 'isRight' : 'defaultFade'
76
+ const exitVariant =
77
+ direction === 1 ? 'isRight' : direction === -1 ? 'isLeft' : 'defaultFade'
23
78
 
24
- const handleUpdateSelectionIndicator = (newSize: TabTriggerLayout | null) => {
25
- prevSelectionIndicatorLayout.current = selectIndicator
26
- setSelectIndicator(newSize)
79
+ const handleOnInteraction: TabsTriggerProps['onInteraction'] = (type, layout) => {
80
+ if (type === 'select') {
81
+ setActiveIndicator(layout)
82
+ } else {
83
+ setIntentIndicator(layout)
84
+ }
27
85
  }
28
86
 
87
+ return (
88
+ <Tabs
89
+ value={currentTab}
90
+ onValueChange={setCurrentTab}
91
+ orientation="horizontal"
92
+ size="$3"
93
+ padding="$2"
94
+ height={150}
95
+ flexDirection="column"
96
+ activationMode="manual"
97
+ >
98
+ <Tabs.List
99
+ loop={false}
100
+ aria-label="Manage your account"
101
+ disablePassBorderRadius
102
+ >
103
+ {intentAt && (
104
+ <TabsRovingIndicator
105
+ width={intentAt.width}
106
+ height={intentAt.height}
107
+ x={intentAt.x}
108
+ y={intentAt.y}
109
+ />
110
+ )}
111
+
112
+ {activeAt && (
113
+ <TabsRovingIndicator
114
+ theme="active"
115
+ width={activeAt.width}
116
+ height={activeAt.height}
117
+ x={activeAt.x}
118
+ y={activeAt.y}
119
+ />
120
+ )}
121
+
122
+ <Tabs.Trigger value="tab1" onInteraction={handleOnInteraction}>
123
+ <SizableText>Profile</SizableText>
124
+ </Tabs.Trigger>
125
+ <Tabs.Trigger value="tab2" onInteraction={handleOnInteraction}>
126
+ <SizableText>Connections</SizableText>
127
+ </Tabs.Trigger>
128
+ <Tabs.Trigger value="tab3" onInteraction={handleOnInteraction}>
129
+ <SizableText>Notifications</SizableText>
130
+ </Tabs.Trigger>
131
+ </Tabs.List>
132
+
133
+ <AnimatePresence
134
+ exitBeforeEnter
135
+ enterVariant={enterVariant}
136
+ exitVariant={exitVariant}
137
+ >
138
+ <AnimatedYStack key={currentTab} animation="100ms" x={0} opacity={1} flex={1}>
139
+ <Tabs.Content value={currentTab} forceMount flex={1} justifyContent="center">
140
+ <H5 textAlign="center">{currentTab}</H5>
141
+ </Tabs.Content>
142
+ </AnimatedYStack>
143
+ </AnimatePresence>
144
+ </Tabs>
145
+ )
146
+ }
147
+
148
+ const TabsAdvancedUnderline = () => {
149
+ const [tabState, setTabState] = useState<{
150
+ currentTab: string
151
+ /**
152
+ * Layout of the trigger user might intend to select (hovering / focusing)
153
+ */
154
+ intentAt: TabTriggerLayout | null
155
+ /**
156
+ * Layout of the trigger user selected
157
+ */
158
+ activeAt: TabTriggerLayout | null
159
+ /**
160
+ * Used to get the direction of activation for animating the active indicator
161
+ */
162
+ prevActiveAt: TabTriggerLayout | null
163
+ }>({
164
+ activeAt: null,
165
+ currentTab: 'tab1',
166
+ intentAt: null,
167
+ prevActiveAt: null,
168
+ })
169
+
170
+ const setCurrentTab = (currentTab: string) => setTabState({ ...tabState, currentTab })
171
+ const setIntentIndicator = (intentAt) => setTabState({ ...tabState, intentAt })
172
+ const setActiveIndicator = (activeAt) =>
173
+ setTabState({ ...tabState, prevActiveAt: tabState.activeAt, activeAt })
174
+ const { activeAt, intentAt, prevActiveAt, currentTab } = tabState
175
+
29
176
  /**
30
177
  * -1: from left
31
178
  * 0: n/a
32
179
  * 1: from right
33
180
  */
34
181
  const direction = (() => {
35
- if (
36
- !selectIndicator ||
37
- !prevSelectionIndicatorLayout.current ||
38
- selectIndicator.x === prevSelectionIndicatorLayout.current.x
39
- ) {
182
+ if (!activeAt || !prevActiveAt || activeAt.x === prevActiveAt.x) {
40
183
  return 0
41
184
  }
42
- return selectIndicator.x > prevSelectionIndicatorLayout.current.x ? -1 : 1
185
+ return activeAt.x > prevActiveAt.x ? -1 : 1
43
186
  })()
44
187
 
45
188
  const enterVariant =
@@ -49,7 +192,7 @@ export const TabsAdvancedDemo = () => {
49
192
 
50
193
  const handleOnInteraction: TabsTriggerProps['onInteraction'] = (type, layout) => {
51
194
  if (type === 'select') {
52
- handleUpdateSelectionIndicator(layout)
195
+ setActiveIndicator(layout)
53
196
  } else {
54
197
  setIntentIndicator(layout)
55
198
  }
@@ -60,9 +203,8 @@ export const TabsAdvancedDemo = () => {
60
203
  value={currentTab}
61
204
  onValueChange={setCurrentTab}
62
205
  orientation="horizontal"
63
- br="$4"
64
206
  size="$3"
65
- p="$2"
207
+ padding="$2"
66
208
  height={150}
67
209
  flexDirection="column"
68
210
  activationMode="manual"
@@ -72,25 +214,27 @@ export const TabsAdvancedDemo = () => {
72
214
  loop={false}
73
215
  aria-label="Manage your account"
74
216
  disablePassBorderRadius
75
- overflow="visible"
76
- pb="$1.5"
217
+ borderBottomLeftRadius={0}
218
+ borderBottomRightRadius={0}
219
+ paddingBottom="$1.5"
77
220
  >
78
- {intentIndicator && (
221
+ {intentAt && (
79
222
  <TabsRovingIndicator
80
- width={intentIndicator.width}
81
- height={intentIndicator.height}
82
- x={intentIndicator.x}
83
- y={intentIndicator.y}
223
+ width={intentAt.width}
224
+ height="$0.25"
225
+ x={intentAt.x}
226
+ borderRadius={0}
227
+ bottom={-3}
84
228
  />
85
229
  )}
86
230
 
87
- {selectIndicator && (
231
+ {activeAt && (
88
232
  <TabsRovingIndicator
89
233
  theme="active"
90
234
  active
91
- width={selectIndicator.width}
235
+ width={activeAt.width}
92
236
  height="$0.25"
93
- x={selectIndicator.x}
237
+ x={activeAt.x}
94
238
  borderRadius={0}
95
239
  bottom={-3}
96
240
  />
@@ -113,9 +257,9 @@ export const TabsAdvancedDemo = () => {
113
257
  enterVariant={enterVariant}
114
258
  exitVariant={exitVariant}
115
259
  >
116
- <AnimatedYStack key={currentTab} animation="100ms" x={0} o={1} f={1}>
117
- <Tabs.Content value={currentTab} forceMount f={1} jc="center">
118
- <H5 ta="center">{currentTab}</H5>
260
+ <AnimatedYStack key={currentTab} animation="100ms" x={0} opacity={1} flex={1}>
261
+ <Tabs.Content value={currentTab} forceMount flex={1} justifyContent="center">
262
+ <H5 textAlign="center">{currentTab}</H5>
119
263
  </Tabs.Content>
120
264
  </AnimatedYStack>
121
265
  </AnimatePresence>
package/src/TabsDemo.tsx CHANGED
@@ -1,5 +1,5 @@
1
1
  import { useState } from 'react'
2
- import { Button, H5, SizableText, Tabs, XStack } from 'tamagui'
2
+ import { Button, H5, SizableText, Tabs, XStack, YStack } from 'tamagui'
3
3
 
4
4
  const demos = ['horizontal', 'vertical'] as const
5
5
 
@@ -8,15 +8,23 @@ export function TabsDemo() {
8
8
  const demo = demos[demoIndex]
9
9
 
10
10
  return (
11
- <>
11
+ // web only fix for position relative
12
+ <YStack paddingHorizontal="$4" position={'unset' as any}>
12
13
  {demo === 'horizontal' ? <HorizontalTabs /> : <VerticalTabs />}
13
14
 
14
- <XStack ai="center" space pos="absolute" b="$3" l="$4" $xxs={{ dsp: 'none' }}>
15
+ <XStack
16
+ alignItems="center"
17
+ space
18
+ position="absolute"
19
+ bottom="$3"
20
+ left="$4"
21
+ $xxs={{ display: 'none' }}
22
+ >
15
23
  <Button size="$2" onPress={() => setDemoIndex((x) => (x + 1) % demos.length)}>
16
24
  {demo}
17
25
  </Button>
18
26
  </XStack>
19
- </>
27
+ </YStack>
20
28
  )
21
29
  }
22
30
 
@@ -28,29 +36,50 @@ const HorizontalTabs = () => {
28
36
  flexDirection="column"
29
37
  width={400}
30
38
  height={150}
31
- br="$4"
39
+ borderRadius="$4"
32
40
  >
33
41
  <Tabs.List disablePassBorderRadius="bottom" aria-label="Manage your account">
34
- <Tabs.Trigger theme="Button" f={1} value="tab1">
42
+ <Tabs.Trigger theme="Button" flex={1} value="tab1">
35
43
  <SizableText fontFamily="$body">Profile</SizableText>
36
44
  </Tabs.Trigger>
37
- <Tabs.Trigger theme="Button" f={1} value="tab2">
45
+ <Tabs.Trigger theme="Button" flex={1} value="tab2">
38
46
  <SizableText fontFamily="$body">Connections</SizableText>
39
47
  </Tabs.Trigger>
40
- <Tabs.Trigger theme="Button" f={1} value="tab3">
48
+ <Tabs.Trigger theme="Button" flex={1} value="tab3">
41
49
  <SizableText fontFamily="$body">Notifications</SizableText>
42
50
  </Tabs.Trigger>
43
51
  </Tabs.List>
44
52
 
45
- <Tabs.Content value="tab1" key="tab1" p="$5" ai="center" jc="center" f={1}>
53
+ <Tabs.Content
54
+ value="tab1"
55
+ key="tab1"
56
+ padding="$5"
57
+ alignItems="center"
58
+ justifyContent="center"
59
+ flex={1}
60
+ >
46
61
  <H5>Profile</H5>
47
62
  </Tabs.Content>
48
63
 
49
- <Tabs.Content value="tab2" key="tab2" p="$5" ai="center" jc="center" f={1}>
64
+ <Tabs.Content
65
+ value="tab2"
66
+ key="tab2"
67
+ padding="$5"
68
+ alignItems="center"
69
+ justifyContent="center"
70
+ flex={1}
71
+ >
50
72
  <H5>Connections</H5>
51
73
  </Tabs.Content>
52
74
 
53
- <Tabs.Content value="tab3" key="tab3" p="$5" ai="center" jc="center" f={1}>
75
+ <Tabs.Content
76
+ value="tab3"
77
+ key="tab3"
78
+ padding="$5"
79
+ alignItems="center"
80
+ justifyContent="center"
81
+ flex={1}
82
+ >
54
83
  <H5>Notifications</H5>
55
84
  </Tabs.Content>
56
85
  </Tabs>
@@ -64,7 +93,7 @@ const VerticalTabs = () => {
64
93
  flexDirection="row"
65
94
  orientation="vertical"
66
95
  width={400}
67
- br="$4"
96
+ borderRadius="$4"
68
97
  >
69
98
  <Tabs.List disablePassBorderRadius="end" aria-label="Manage your account">
70
99
  <Tabs.Trigger theme="Button" value="tab1">
@@ -77,14 +106,35 @@ const VerticalTabs = () => {
77
106
  <SizableText>Notifications</SizableText>
78
107
  </Tabs.Trigger>
79
108
  </Tabs.List>
80
- <Tabs.Content value="tab1" key="tab1" p="$2" ai="center" jc="center" f={1}>
81
- <H5 ta="center">Profile</H5>
109
+ <Tabs.Content
110
+ value="tab1"
111
+ key="tab1"
112
+ padding="$2"
113
+ alignItems="center"
114
+ justifyContent="center"
115
+ flex={1}
116
+ >
117
+ <H5 textAlign="center">Profile</H5>
82
118
  </Tabs.Content>
83
- <Tabs.Content value="tab2" key="tab2" p="$2" ai="center" jc="center" f={1}>
84
- <H5 ta="center">Connections</H5>
119
+ <Tabs.Content
120
+ value="tab2"
121
+ key="tab2"
122
+ padding="$2"
123
+ alignItems="center"
124
+ justifyContent="center"
125
+ flex={1}
126
+ >
127
+ <H5 textAlign="center">Connections</H5>
85
128
  </Tabs.Content>
86
- <Tabs.Content value="tab3" key="tab3" p="$2" ai="center" jc="center" f={1}>
87
- <H5 ta="center">Notifications</H5>
129
+ <Tabs.Content
130
+ value="tab3"
131
+ key="tab3"
132
+ padding="$2"
133
+ alignItems="center"
134
+ justifyContent="center"
135
+ flex={1}
136
+ >
137
+ <H5 textAlign="center">Notifications</H5>
88
138
  </Tabs.Content>
89
139
  </Tabs>
90
140
  )
package/src/TextDemo.tsx CHANGED
@@ -3,7 +3,7 @@ import { Paragraph, SizableText, Text, XStack, YStack } from 'tamagui'
3
3
 
4
4
  export function TextDemo() {
5
5
  return (
6
- <YStack space="$2" ai="center">
6
+ <YStack space="$2" alignItems="center">
7
7
  <SizableText size="$3">SizableText</SizableText>
8
8
  <XStack space>
9
9
  <SizableText theme="alt1" size="$3">
@@ -13,7 +13,7 @@ export function TextDemo() {
13
13
  alt2
14
14
  </SizableText>
15
15
  </XStack>
16
- <Paragraph size="$2" fow="800">
16
+ <Paragraph size="$2" fontWeight="800">
17
17
  Paragraph
18
18
  </Paragraph>
19
19
  </YStack>
@@ -13,7 +13,7 @@ export function ThemeInverseDemo() {
13
13
 
14
14
  function Buttons() {
15
15
  return (
16
- <YStack bc="$background" p="$3" br="$3" space>
16
+ <YStack backgroundColor="$background" padding="$3" borderRadius="$3" space>
17
17
  <Button>Dark</Button>
18
18
  <Button themeInverse>Inversed</Button>
19
19
  <Button theme="alt1">Alt1 Dark</Button>