@tamagui/demos 2.7.7 → 3.0.0-beta.643.1

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 (683) hide show
  1. package/dist/cjs/AccordionDemo.cjs +76 -99
  2. package/dist/cjs/AccordionDemo.native.cjs +98 -0
  3. package/dist/cjs/AccordionDemo.native.js +82 -105
  4. package/dist/cjs/AccordionDemo.native.js.map +1 -1
  5. package/dist/cjs/AddThemeDemo.cjs +50 -56
  6. package/dist/cjs/AddThemeDemo.native.cjs +70 -0
  7. package/dist/cjs/AddThemeDemo.native.js +50 -55
  8. package/dist/cjs/AddThemeDemo.native.js.map +1 -1
  9. package/dist/cjs/AlertDialogDemo.cjs +54 -85
  10. package/dist/cjs/AlertDialogDemo.native.cjs +69 -0
  11. package/dist/cjs/AlertDialogDemo.native.js +54 -84
  12. package/dist/cjs/AlertDialogDemo.native.js.map +1 -1
  13. package/dist/cjs/AnimationsDelayDemo.cjs +56 -72
  14. package/dist/cjs/AnimationsDelayDemo.native.cjs +80 -0
  15. package/dist/cjs/AnimationsDelayDemo.native.js +60 -75
  16. package/dist/cjs/AnimationsDelayDemo.native.js.map +1 -1
  17. package/dist/cjs/AnimationsDemo.cjs +67 -86
  18. package/dist/cjs/AnimationsDemo.native.cjs +88 -0
  19. package/dist/cjs/AnimationsDemo.native.js +69 -87
  20. package/dist/cjs/AnimationsDemo.native.js.map +1 -1
  21. package/dist/cjs/AnimationsEnterDemo.cjs +40 -61
  22. package/dist/cjs/AnimationsEnterDemo.native.cjs +64 -0
  23. package/dist/cjs/AnimationsEnterDemo.native.js +43 -63
  24. package/dist/cjs/AnimationsEnterDemo.native.js.map +1 -1
  25. package/dist/cjs/AnimationsHoverDemo.cjs +25 -35
  26. package/dist/cjs/AnimationsHoverDemo.native.cjs +41 -0
  27. package/dist/cjs/AnimationsHoverDemo.native.js +25 -34
  28. package/dist/cjs/AnimationsHoverDemo.native.js.map +1 -1
  29. package/dist/cjs/AnimationsPresenceDemo.cjs +90 -100
  30. package/dist/cjs/AnimationsPresenceDemo.native.cjs +125 -0
  31. package/dist/cjs/AnimationsPresenceDemo.native.js +98 -107
  32. package/dist/cjs/AnimationsPresenceDemo.native.js.map +1 -1
  33. package/dist/cjs/AnimationsTimingDemo.cjs +24 -34
  34. package/dist/cjs/AnimationsTimingDemo.native.cjs +40 -0
  35. package/dist/cjs/AnimationsTimingDemo.native.js +24 -33
  36. package/dist/cjs/AnimationsTimingDemo.native.js.map +1 -1
  37. package/dist/cjs/AvatarDemo.cjs +37 -42
  38. package/dist/cjs/AvatarDemo.native.cjs +52 -0
  39. package/dist/cjs/AvatarDemo.native.js +37 -41
  40. package/dist/cjs/AvatarDemo.native.js.map +1 -1
  41. package/dist/cjs/BoxShadowTokenDemo.cjs +44 -44
  42. package/dist/cjs/BoxShadowTokenDemo.native.cjs +61 -0
  43. package/dist/cjs/BoxShadowTokenDemo.native.js +44 -45
  44. package/dist/cjs/BoxShadowTokenDemo.native.js.map +1 -1
  45. package/dist/cjs/BuildAButtonDemo.cjs +121 -113
  46. package/dist/cjs/BuildAButtonDemo.native.cjs +141 -0
  47. package/dist/cjs/BuildAButtonDemo.native.js +121 -112
  48. package/dist/cjs/BuildAButtonDemo.native.js.map +1 -1
  49. package/dist/cjs/ButtonDemo.cjs +73 -77
  50. package/dist/cjs/ButtonDemo.native.cjs +89 -0
  51. package/dist/cjs/ButtonDemo.native.js +73 -76
  52. package/dist/cjs/ButtonDemo.native.js.map +1 -1
  53. package/dist/cjs/CardDemo.cjs +63 -74
  54. package/dist/cjs/CardDemo.native.cjs +82 -0
  55. package/dist/cjs/CardDemo.native.js +63 -73
  56. package/dist/cjs/CardDemo.native.js.map +1 -1
  57. package/dist/cjs/CheckboxDemo.cjs +59 -64
  58. package/dist/cjs/CheckboxDemo.native.cjs +79 -0
  59. package/dist/cjs/CheckboxDemo.native.js +59 -63
  60. package/dist/cjs/CheckboxDemo.native.js.map +1 -1
  61. package/dist/cjs/CheckboxHeadlessDemo.cjs +59 -67
  62. package/dist/cjs/CheckboxHeadlessDemo.native.cjs +83 -0
  63. package/dist/cjs/CheckboxHeadlessDemo.native.js +60 -67
  64. package/dist/cjs/CheckboxHeadlessDemo.native.js.map +1 -1
  65. package/dist/cjs/ColorsDemo.cjs +100 -120
  66. package/dist/cjs/ColorsDemo.native.cjs +124 -0
  67. package/dist/cjs/ColorsDemo.native.js +102 -121
  68. package/dist/cjs/ColorsDemo.native.js.map +1 -1
  69. package/dist/cjs/ContextMenuDemo.cjs +174 -210
  70. package/dist/cjs/ContextMenuDemo.native.cjs +194 -0
  71. package/dist/cjs/ContextMenuDemo.native.js +174 -210
  72. package/dist/cjs/ContextMenuDemo.native.js.map +1 -1
  73. package/dist/cjs/DialogDemo.cjs +151 -197
  74. package/dist/cjs/DialogDemo.native.cjs +177 -0
  75. package/dist/cjs/DialogDemo.native.js +157 -202
  76. package/dist/cjs/DialogDemo.native.js.map +1 -1
  77. package/dist/cjs/FieldDemo.cjs +165 -0
  78. package/dist/cjs/FieldDemo.native.cjs +175 -0
  79. package/dist/cjs/FieldDemo.native.js +177 -0
  80. package/dist/cjs/FieldDemo.native.js.map +1 -0
  81. package/dist/cjs/FormsDemo.cjs +93 -73
  82. package/dist/cjs/FormsDemo.native.cjs +116 -0
  83. package/dist/cjs/FormsDemo.native.js +99 -76
  84. package/dist/cjs/FormsDemo.native.js.map +1 -1
  85. package/dist/cjs/Grid.cjs +48 -61
  86. package/dist/cjs/Grid.native.cjs +68 -0
  87. package/dist/cjs/Grid.native.js +48 -60
  88. package/dist/cjs/Grid.native.js.map +1 -1
  89. package/dist/cjs/GroupDemo.cjs +59 -80
  90. package/dist/cjs/GroupDemo.native.cjs +75 -0
  91. package/dist/cjs/GroupDemo.native.js +59 -81
  92. package/dist/cjs/GroupDemo.native.js.map +1 -1
  93. package/dist/cjs/HeadingsDemo.cjs +26 -34
  94. package/dist/cjs/HeadingsDemo.native.cjs +41 -0
  95. package/dist/cjs/HeadingsDemo.native.js +26 -33
  96. package/dist/cjs/HeadingsDemo.native.js.map +1 -1
  97. package/dist/cjs/ImageDemo.cjs +22 -27
  98. package/dist/cjs/ImageDemo.native.cjs +37 -0
  99. package/dist/cjs/ImageDemo.native.js +22 -26
  100. package/dist/cjs/ImageDemo.native.js.map +1 -1
  101. package/dist/cjs/InputsDemo.cjs +45 -49
  102. package/dist/cjs/InputsDemo.native.cjs +62 -0
  103. package/dist/cjs/InputsDemo.native.js +45 -48
  104. package/dist/cjs/InputsDemo.native.js.map +1 -1
  105. package/dist/cjs/LabelDemo.cjs +45 -54
  106. package/dist/cjs/LabelDemo.native.cjs +60 -0
  107. package/dist/cjs/LabelDemo.native.js +45 -53
  108. package/dist/cjs/LabelDemo.native.js.map +1 -1
  109. package/dist/cjs/LinearGradientDemo.cjs +33 -36
  110. package/dist/cjs/LinearGradientDemo.native.cjs +49 -0
  111. package/dist/cjs/LinearGradientDemo.native.js +33 -37
  112. package/dist/cjs/LinearGradientDemo.native.js.map +1 -1
  113. package/dist/cjs/ListItemDemo.cjs +83 -93
  114. package/dist/cjs/ListItemDemo.native.cjs +103 -0
  115. package/dist/cjs/ListItemDemo.native.js +83 -92
  116. package/dist/cjs/ListItemDemo.native.js.map +1 -1
  117. package/dist/cjs/LucideIconsDemo.cjs +63 -74
  118. package/dist/cjs/LucideIconsDemo.native.cjs +95 -0
  119. package/dist/cjs/LucideIconsDemo.native.js +72 -82
  120. package/dist/cjs/LucideIconsDemo.native.js.map +1 -1
  121. package/dist/cjs/MenuDemo.cjs +176 -211
  122. package/dist/cjs/MenuDemo.native.cjs +196 -0
  123. package/dist/cjs/MenuDemo.native.js +176 -213
  124. package/dist/cjs/MenuDemo.native.js.map +1 -1
  125. package/dist/cjs/MenuSkins.cjs +189 -0
  126. package/dist/cjs/MenuSkins.native.cjs +202 -0
  127. package/dist/cjs/MenuSkins.native.js +204 -0
  128. package/dist/cjs/MenuSkins.native.js.map +1 -0
  129. package/dist/cjs/NewInputsDemo.cjs +45 -50
  130. package/dist/cjs/NewInputsDemo.native.cjs +62 -0
  131. package/dist/cjs/NewInputsDemo.native.js +45 -49
  132. package/dist/cjs/NewInputsDemo.native.js.map +1 -1
  133. package/dist/cjs/PopoverDemo.cjs +126 -134
  134. package/dist/cjs/PopoverDemo.native.cjs +149 -0
  135. package/dist/cjs/PopoverDemo.native.js +128 -136
  136. package/dist/cjs/PopoverDemo.native.js.map +1 -1
  137. package/dist/cjs/ProgressDemo.cjs +58 -74
  138. package/dist/cjs/ProgressDemo.native.cjs +82 -0
  139. package/dist/cjs/ProgressDemo.native.js +62 -97
  140. package/dist/cjs/ProgressDemo.native.js.map +1 -1
  141. package/dist/cjs/RadioGroupCustomDemo.cjs +111 -0
  142. package/dist/cjs/RadioGroupCustomDemo.native.cjs +113 -0
  143. package/dist/cjs/RadioGroupCustomDemo.native.js +115 -0
  144. package/dist/cjs/RadioGroupCustomDemo.native.js.map +1 -0
  145. package/dist/cjs/RadioGroupDemo.cjs +62 -59
  146. package/dist/cjs/RadioGroupDemo.native.cjs +81 -0
  147. package/dist/cjs/RadioGroupDemo.native.js +62 -58
  148. package/dist/cjs/RadioGroupDemo.native.js.map +1 -1
  149. package/dist/cjs/RadioGroupHeadlessDemo.cjs +122 -144
  150. package/dist/cjs/RadioGroupHeadlessDemo.native.cjs +155 -0
  151. package/dist/cjs/RadioGroupHeadlessDemo.native.js +126 -147
  152. package/dist/cjs/RadioGroupHeadlessDemo.native.js.map +1 -1
  153. package/dist/cjs/ReplaceThemeDemo.cjs +55 -65
  154. package/dist/cjs/ReplaceThemeDemo.native.cjs +75 -0
  155. package/dist/cjs/ReplaceThemeDemo.native.js +55 -64
  156. package/dist/cjs/ReplaceThemeDemo.native.js.map +1 -1
  157. package/dist/cjs/ScrollViewDemo.cjs +69 -63
  158. package/dist/cjs/ScrollViewDemo.native.cjs +84 -0
  159. package/dist/cjs/ScrollViewDemo.native.js +69 -62
  160. package/dist/cjs/ScrollViewDemo.native.js.map +1 -1
  161. package/dist/cjs/SelectDemo.cjs +172 -217
  162. package/dist/cjs/SelectDemo.native.cjs +205 -0
  163. package/dist/cjs/SelectDemo.native.js +180 -227
  164. package/dist/cjs/SelectDemo.native.js.map +1 -1
  165. package/dist/cjs/SeparatorDemo.cjs +47 -49
  166. package/dist/cjs/SeparatorDemo.native.cjs +62 -0
  167. package/dist/cjs/SeparatorDemo.native.js +47 -48
  168. package/dist/cjs/SeparatorDemo.native.js.map +1 -1
  169. package/dist/cjs/ShapesDemo.cjs +28 -31
  170. package/dist/cjs/ShapesDemo.native.cjs +43 -0
  171. package/dist/cjs/ShapesDemo.native.js +28 -30
  172. package/dist/cjs/ShapesDemo.native.js.map +1 -1
  173. package/dist/cjs/SheetDemo.cjs +176 -177
  174. package/dist/cjs/SheetDemo.native.cjs +223 -0
  175. package/dist/cjs/SheetDemo.native.js +201 -199
  176. package/dist/cjs/SheetDemo.native.js.map +1 -1
  177. package/dist/cjs/SliderDemo.cjs +40 -46
  178. package/dist/cjs/SliderDemo.native.cjs +57 -0
  179. package/dist/cjs/SliderDemo.native.js +40 -45
  180. package/dist/cjs/SliderDemo.native.js.map +1 -1
  181. package/dist/cjs/SpinnerDemo.cjs +27 -30
  182. package/dist/cjs/SpinnerDemo.native.cjs +42 -0
  183. package/dist/cjs/SpinnerDemo.native.js +27 -29
  184. package/dist/cjs/SpinnerDemo.native.js.map +1 -1
  185. package/dist/cjs/StacksDemo.cjs +112 -96
  186. package/dist/cjs/StacksDemo.native.cjs +134 -0
  187. package/dist/cjs/StacksDemo.native.js +115 -103
  188. package/dist/cjs/StacksDemo.native.js.map +1 -1
  189. package/dist/cjs/SwitchDemo.cjs +75 -86
  190. package/dist/cjs/SwitchDemo.native.cjs +95 -0
  191. package/dist/cjs/SwitchDemo.native.js +76 -88
  192. package/dist/cjs/SwitchDemo.native.js.map +1 -1
  193. package/dist/cjs/SwitchHeadlessDemo.cjs +64 -84
  194. package/dist/cjs/SwitchHeadlessDemo.native.cjs +91 -0
  195. package/dist/cjs/SwitchHeadlessDemo.native.js +69 -88
  196. package/dist/cjs/SwitchHeadlessDemo.native.js.map +1 -1
  197. package/dist/cjs/TabsAdvancedDemo.cjs +288 -335
  198. package/dist/cjs/TabsAdvancedDemo.native.cjs +358 -0
  199. package/dist/cjs/TabsAdvancedDemo.native.js +332 -376
  200. package/dist/cjs/TabsAdvancedDemo.native.js.map +1 -1
  201. package/dist/cjs/TabsCustomDemo.cjs +118 -0
  202. package/dist/cjs/TabsCustomDemo.native.cjs +133 -0
  203. package/dist/cjs/TabsCustomDemo.native.js +135 -0
  204. package/dist/cjs/TabsCustomDemo.native.js.map +1 -0
  205. package/dist/cjs/TabsDemo.cjs +172 -195
  206. package/dist/cjs/TabsDemo.native.cjs +203 -0
  207. package/dist/cjs/TabsDemo.native.js +179 -201
  208. package/dist/cjs/TabsDemo.native.js.map +1 -1
  209. package/dist/cjs/TextDemo.cjs +37 -38
  210. package/dist/cjs/TextDemo.native.cjs +52 -0
  211. package/dist/cjs/TextDemo.native.js +37 -37
  212. package/dist/cjs/TextDemo.native.js.map +1 -1
  213. package/dist/cjs/ThemeBuilderDemo.cjs +193 -165
  214. package/dist/cjs/ThemeBuilderDemo.native.cjs +210 -0
  215. package/dist/cjs/ThemeBuilderDemo.native.js +193 -164
  216. package/dist/cjs/ThemeBuilderDemo.native.js.map +1 -1
  217. package/dist/cjs/ThemeInverseDemo.cjs +90 -88
  218. package/dist/cjs/ThemeInverseDemo.native.cjs +105 -0
  219. package/dist/cjs/ThemeInverseDemo.native.js +90 -87
  220. package/dist/cjs/ThemeInverseDemo.native.js.map +1 -1
  221. package/dist/cjs/ToastDemo.cjs +200 -215
  222. package/dist/cjs/ToastDemo.native.cjs +232 -0
  223. package/dist/cjs/ToastDemo.native.js +212 -228
  224. package/dist/cjs/ToastDemo.native.js.map +1 -1
  225. package/dist/cjs/ToastDuplicateDemo.cjs +41 -56
  226. package/dist/cjs/ToastDuplicateDemo.native.cjs +61 -0
  227. package/dist/cjs/ToastDuplicateDemo.native.js +45 -59
  228. package/dist/cjs/ToastDuplicateDemo.native.js.map +1 -1
  229. package/dist/cjs/ToggleGroupDemo.cjs +87 -106
  230. package/dist/cjs/ToggleGroupDemo.native.cjs +105 -0
  231. package/dist/cjs/ToggleGroupDemo.native.js +87 -105
  232. package/dist/cjs/ToggleGroupDemo.native.js.map +1 -1
  233. package/dist/cjs/TokensDemo.cjs +100 -110
  234. package/dist/cjs/TokensDemo.native.cjs +137 -0
  235. package/dist/cjs/TokensDemo.native.js +115 -124
  236. package/dist/cjs/TokensDemo.native.js.map +1 -1
  237. package/dist/cjs/TooltipDemo.cjs +116 -118
  238. package/dist/cjs/TooltipDemo.native.cjs +134 -0
  239. package/dist/cjs/TooltipDemo.native.js +116 -117
  240. package/dist/cjs/TooltipDemo.native.js.map +1 -1
  241. package/dist/cjs/UpdateThemeDemo.cjs +53 -66
  242. package/dist/cjs/UpdateThemeDemo.native.cjs +73 -0
  243. package/dist/cjs/UpdateThemeDemo.native.js +53 -65
  244. package/dist/cjs/UpdateThemeDemo.native.js.map +1 -1
  245. package/dist/cjs/WebNativeImageDemo.cjs +20 -23
  246. package/dist/cjs/WebNativeImageDemo.native.cjs +35 -0
  247. package/dist/cjs/WebNativeImageDemo.native.js +20 -22
  248. package/dist/cjs/WebNativeImageDemo.native.js.map +1 -1
  249. package/dist/cjs/index.cjs +12 -15
  250. package/dist/cjs/index.native.cjs +81 -0
  251. package/dist/cjs/index.native.js +13 -15
  252. package/dist/cjs/index.native.js.map +1 -1
  253. package/dist/cjs/tamagui.config.cjs +15 -18
  254. package/dist/cjs/tamagui.config.native.cjs +30 -0
  255. package/dist/cjs/tamagui.config.native.js +15 -17
  256. package/dist/cjs/tamagui.config.native.js.map +1 -1
  257. package/dist/cjs/useOnIntersecting.cjs +68 -69
  258. package/dist/cjs/useOnIntersecting.native.cjs +114 -0
  259. package/dist/cjs/useOnIntersecting.native.js +95 -98
  260. package/dist/cjs/useOnIntersecting.native.js.map +1 -1
  261. package/dist/esm/AccordionDemo.mjs +63 -81
  262. package/dist/esm/AccordionDemo.mjs.map +1 -1
  263. package/dist/esm/AccordionDemo.native.js +70 -89
  264. package/dist/esm/AccordionDemo.native.js.map +1 -1
  265. package/dist/esm/AddThemeDemo.mjs +34 -30
  266. package/dist/esm/AddThemeDemo.mjs.map +1 -1
  267. package/dist/esm/AddThemeDemo.native.js +35 -31
  268. package/dist/esm/AddThemeDemo.native.js.map +1 -1
  269. package/dist/esm/AlertDialogDemo.mjs +41 -67
  270. package/dist/esm/AlertDialogDemo.mjs.map +1 -1
  271. package/dist/esm/AlertDialogDemo.native.js +42 -68
  272. package/dist/esm/AlertDialogDemo.native.js.map +1 -1
  273. package/dist/esm/AnimationsDelayDemo.mjs +40 -46
  274. package/dist/esm/AnimationsDelayDemo.mjs.map +1 -1
  275. package/dist/esm/AnimationsDelayDemo.native.js +45 -51
  276. package/dist/esm/AnimationsDelayDemo.native.js.map +1 -1
  277. package/dist/esm/AnimationsDemo.mjs +55 -71
  278. package/dist/esm/AnimationsDemo.mjs.map +1 -1
  279. package/dist/esm/AnimationsDemo.native.js +57 -73
  280. package/dist/esm/AnimationsDemo.native.js.map +1 -1
  281. package/dist/esm/AnimationsEnterDemo.mjs +24 -35
  282. package/dist/esm/AnimationsEnterDemo.mjs.map +1 -1
  283. package/dist/esm/AnimationsEnterDemo.native.js +28 -39
  284. package/dist/esm/AnimationsEnterDemo.native.js.map +1 -1
  285. package/dist/esm/AnimationsHoverDemo.mjs +12 -17
  286. package/dist/esm/AnimationsHoverDemo.mjs.map +1 -1
  287. package/dist/esm/AnimationsHoverDemo.native.js +13 -18
  288. package/dist/esm/AnimationsHoverDemo.native.js.map +1 -1
  289. package/dist/esm/AnimationsPresenceDemo.mjs +73 -75
  290. package/dist/esm/AnimationsPresenceDemo.mjs.map +1 -1
  291. package/dist/esm/AnimationsPresenceDemo.native.js +82 -84
  292. package/dist/esm/AnimationsPresenceDemo.native.js.map +1 -1
  293. package/dist/esm/AnimationsTimingDemo.mjs +11 -16
  294. package/dist/esm/AnimationsTimingDemo.mjs.map +1 -1
  295. package/dist/esm/AnimationsTimingDemo.native.js +12 -17
  296. package/dist/esm/AnimationsTimingDemo.native.js.map +1 -1
  297. package/dist/esm/AvatarDemo.mjs +24 -24
  298. package/dist/esm/AvatarDemo.mjs.map +1 -1
  299. package/dist/esm/AvatarDemo.native.js +25 -25
  300. package/dist/esm/AvatarDemo.native.js.map +1 -1
  301. package/dist/esm/BoxShadowTokenDemo.mjs +32 -27
  302. package/dist/esm/BoxShadowTokenDemo.mjs.map +1 -1
  303. package/dist/esm/BoxShadowTokenDemo.native.js +33 -30
  304. package/dist/esm/BoxShadowTokenDemo.native.js.map +1 -1
  305. package/dist/esm/BuildAButtonDemo.mjs +108 -95
  306. package/dist/esm/BuildAButtonDemo.mjs.map +1 -1
  307. package/dist/esm/BuildAButtonDemo.native.js +109 -96
  308. package/dist/esm/BuildAButtonDemo.native.js.map +1 -1
  309. package/dist/esm/ButtonDemo.mjs +61 -60
  310. package/dist/esm/ButtonDemo.mjs.map +1 -1
  311. package/dist/esm/ButtonDemo.native.js +62 -61
  312. package/dist/esm/ButtonDemo.native.js.map +1 -1
  313. package/dist/esm/CardDemo.mjs +49 -57
  314. package/dist/esm/CardDemo.mjs.map +1 -1
  315. package/dist/esm/CardDemo.native.js +50 -58
  316. package/dist/esm/CardDemo.native.js.map +1 -1
  317. package/dist/esm/CheckboxDemo.mjs +46 -48
  318. package/dist/esm/CheckboxDemo.mjs.map +1 -1
  319. package/dist/esm/CheckboxDemo.native.js +47 -49
  320. package/dist/esm/CheckboxDemo.native.js.map +1 -1
  321. package/dist/esm/CheckboxHeadlessDemo.mjs +43 -41
  322. package/dist/esm/CheckboxHeadlessDemo.mjs.map +1 -1
  323. package/dist/esm/CheckboxHeadlessDemo.native.js +45 -43
  324. package/dist/esm/CheckboxHeadlessDemo.native.js.map +1 -1
  325. package/dist/esm/ColorsDemo.mjs +87 -102
  326. package/dist/esm/ColorsDemo.mjs.map +1 -1
  327. package/dist/esm/ColorsDemo.native.js +90 -105
  328. package/dist/esm/ColorsDemo.native.js.map +1 -1
  329. package/dist/esm/ContextMenuDemo.mjs +158 -184
  330. package/dist/esm/ContextMenuDemo.mjs.map +1 -1
  331. package/dist/esm/ContextMenuDemo.native.js +159 -186
  332. package/dist/esm/ContextMenuDemo.native.js.map +1 -1
  333. package/dist/esm/DialogDemo.mjs +138 -179
  334. package/dist/esm/DialogDemo.mjs.map +1 -1
  335. package/dist/esm/DialogDemo.native.js +145 -186
  336. package/dist/esm/DialogDemo.native.js.map +1 -1
  337. package/dist/esm/FieldDemo.mjs +136 -0
  338. package/dist/esm/FieldDemo.mjs.map +1 -0
  339. package/dist/esm/FieldDemo.native.js +144 -0
  340. package/dist/esm/FieldDemo.native.js.map +1 -0
  341. package/dist/esm/FormsDemo.mjs +78 -48
  342. package/dist/esm/FormsDemo.mjs.map +1 -1
  343. package/dist/esm/FormsDemo.native.js +85 -53
  344. package/dist/esm/FormsDemo.native.js.map +1 -1
  345. package/dist/esm/Grid.mjs +32 -35
  346. package/dist/esm/Grid.mjs.map +1 -1
  347. package/dist/esm/Grid.native.js +33 -36
  348. package/dist/esm/Grid.native.js.map +1 -1
  349. package/dist/esm/GroupDemo.mjs +46 -62
  350. package/dist/esm/GroupDemo.mjs.map +1 -1
  351. package/dist/esm/GroupDemo.native.js +47 -65
  352. package/dist/esm/GroupDemo.native.js.map +1 -1
  353. package/dist/esm/HeadingsDemo.mjs +13 -16
  354. package/dist/esm/HeadingsDemo.mjs.map +1 -1
  355. package/dist/esm/HeadingsDemo.native.js +14 -17
  356. package/dist/esm/HeadingsDemo.native.js.map +1 -1
  357. package/dist/esm/ImageDemo.mjs +9 -9
  358. package/dist/esm/ImageDemo.mjs.map +1 -1
  359. package/dist/esm/ImageDemo.native.js +10 -10
  360. package/dist/esm/ImageDemo.native.js.map +1 -1
  361. package/dist/esm/InputsDemo.mjs +32 -31
  362. package/dist/esm/InputsDemo.mjs.map +1 -1
  363. package/dist/esm/InputsDemo.native.js +33 -32
  364. package/dist/esm/InputsDemo.native.js.map +1 -1
  365. package/dist/esm/LabelDemo.mjs +32 -36
  366. package/dist/esm/LabelDemo.mjs.map +1 -1
  367. package/dist/esm/LabelDemo.native.js +33 -37
  368. package/dist/esm/LabelDemo.native.js.map +1 -1
  369. package/dist/esm/LinearGradientDemo.mjs +20 -18
  370. package/dist/esm/LinearGradientDemo.mjs.map +1 -1
  371. package/dist/esm/LinearGradientDemo.native.js +21 -21
  372. package/dist/esm/LinearGradientDemo.native.js.map +1 -1
  373. package/dist/esm/ListItemDemo.mjs +70 -75
  374. package/dist/esm/ListItemDemo.mjs.map +1 -1
  375. package/dist/esm/ListItemDemo.native.js +71 -76
  376. package/dist/esm/ListItemDemo.native.js.map +1 -1
  377. package/dist/esm/LucideIconsDemo.mjs +47 -48
  378. package/dist/esm/LucideIconsDemo.mjs.map +1 -1
  379. package/dist/esm/LucideIconsDemo.native.js +57 -58
  380. package/dist/esm/LucideIconsDemo.native.js.map +1 -1
  381. package/dist/esm/MenuDemo.mjs +160 -185
  382. package/dist/esm/MenuDemo.mjs.map +1 -1
  383. package/dist/esm/MenuDemo.native.js +161 -189
  384. package/dist/esm/MenuDemo.native.js.map +1 -1
  385. package/dist/esm/MenuSkins.mjs +166 -0
  386. package/dist/esm/MenuSkins.mjs.map +1 -0
  387. package/dist/esm/MenuSkins.native.js +171 -0
  388. package/dist/esm/MenuSkins.native.js.map +1 -0
  389. package/dist/esm/NewInputsDemo.mjs +33 -33
  390. package/dist/esm/NewInputsDemo.mjs.map +1 -1
  391. package/dist/esm/NewInputsDemo.native.js +34 -34
  392. package/dist/esm/NewInputsDemo.native.js.map +1 -1
  393. package/dist/esm/PopoverDemo.mjs +113 -118
  394. package/dist/esm/PopoverDemo.mjs.map +1 -1
  395. package/dist/esm/PopoverDemo.native.js +116 -122
  396. package/dist/esm/PopoverDemo.native.js.map +1 -1
  397. package/dist/esm/ProgressDemo.mjs +42 -48
  398. package/dist/esm/ProgressDemo.mjs.map +1 -1
  399. package/dist/esm/ProgressDemo.native.js +47 -73
  400. package/dist/esm/ProgressDemo.native.js.map +1 -1
  401. package/dist/esm/RadioGroupCustomDemo.mjs +91 -0
  402. package/dist/esm/RadioGroupCustomDemo.mjs.map +1 -0
  403. package/dist/esm/RadioGroupCustomDemo.native.js +91 -0
  404. package/dist/esm/RadioGroupCustomDemo.native.js.map +1 -0
  405. package/dist/esm/RadioGroupDemo.mjs +48 -42
  406. package/dist/esm/RadioGroupDemo.mjs.map +1 -1
  407. package/dist/esm/RadioGroupDemo.native.js +49 -43
  408. package/dist/esm/RadioGroupDemo.native.js.map +1 -1
  409. package/dist/esm/RadioGroupHeadlessDemo.mjs +106 -118
  410. package/dist/esm/RadioGroupHeadlessDemo.mjs.map +1 -1
  411. package/dist/esm/RadioGroupHeadlessDemo.native.js +111 -123
  412. package/dist/esm/RadioGroupHeadlessDemo.native.js.map +1 -1
  413. package/dist/esm/ReplaceThemeDemo.mjs +39 -39
  414. package/dist/esm/ReplaceThemeDemo.mjs.map +1 -1
  415. package/dist/esm/ReplaceThemeDemo.native.js +40 -40
  416. package/dist/esm/ReplaceThemeDemo.native.js.map +1 -1
  417. package/dist/esm/ScrollViewDemo.mjs +56 -45
  418. package/dist/esm/ScrollViewDemo.mjs.map +1 -1
  419. package/dist/esm/ScrollViewDemo.native.js +57 -46
  420. package/dist/esm/ScrollViewDemo.native.js.map +1 -1
  421. package/dist/esm/SelectDemo.mjs +156 -193
  422. package/dist/esm/SelectDemo.mjs.map +1 -1
  423. package/dist/esm/SelectDemo.native.js +164 -204
  424. package/dist/esm/SelectDemo.native.js.map +1 -1
  425. package/dist/esm/SeparatorDemo.mjs +34 -31
  426. package/dist/esm/SeparatorDemo.mjs.map +1 -1
  427. package/dist/esm/SeparatorDemo.native.js +35 -32
  428. package/dist/esm/SeparatorDemo.native.js.map +1 -1
  429. package/dist/esm/ShapesDemo.mjs +15 -13
  430. package/dist/esm/ShapesDemo.mjs.map +1 -1
  431. package/dist/esm/ShapesDemo.native.js +16 -14
  432. package/dist/esm/ShapesDemo.native.js.map +1 -1
  433. package/dist/esm/SheetDemo.mjs +161 -152
  434. package/dist/esm/SheetDemo.mjs.map +1 -1
  435. package/dist/esm/SheetDemo.native.js +187 -176
  436. package/dist/esm/SheetDemo.native.js.map +1 -1
  437. package/dist/esm/SliderDemo.mjs +27 -28
  438. package/dist/esm/SliderDemo.mjs.map +1 -1
  439. package/dist/esm/SliderDemo.native.js +28 -29
  440. package/dist/esm/SliderDemo.native.js.map +1 -1
  441. package/dist/esm/SpinnerDemo.mjs +14 -12
  442. package/dist/esm/SpinnerDemo.mjs.map +1 -1
  443. package/dist/esm/SpinnerDemo.native.js +15 -13
  444. package/dist/esm/SpinnerDemo.native.js.map +1 -1
  445. package/dist/esm/StacksDemo.mjs +99 -78
  446. package/dist/esm/StacksDemo.mjs.map +1 -1
  447. package/dist/esm/StacksDemo.native.js +101 -80
  448. package/dist/esm/StacksDemo.native.js.map +1 -1
  449. package/dist/esm/SwitchDemo.mjs +61 -69
  450. package/dist/esm/SwitchDemo.mjs.map +1 -1
  451. package/dist/esm/SwitchDemo.native.js +63 -73
  452. package/dist/esm/SwitchDemo.native.js.map +1 -1
  453. package/dist/esm/SwitchHeadlessDemo.mjs +48 -58
  454. package/dist/esm/SwitchHeadlessDemo.mjs.map +1 -1
  455. package/dist/esm/SwitchHeadlessDemo.native.js +54 -64
  456. package/dist/esm/SwitchHeadlessDemo.native.js.map +1 -1
  457. package/dist/esm/TabsAdvancedDemo.mjs +272 -309
  458. package/dist/esm/TabsAdvancedDemo.mjs.map +1 -1
  459. package/dist/esm/TabsAdvancedDemo.native.js +317 -352
  460. package/dist/esm/TabsAdvancedDemo.native.js.map +1 -1
  461. package/dist/esm/TabsCustomDemo.mjs +92 -0
  462. package/dist/esm/TabsCustomDemo.mjs.map +1 -0
  463. package/dist/esm/TabsCustomDemo.native.js +99 -0
  464. package/dist/esm/TabsCustomDemo.native.js.map +1 -0
  465. package/dist/esm/TabsDemo.mjs +157 -171
  466. package/dist/esm/TabsDemo.mjs.map +1 -1
  467. package/dist/esm/TabsDemo.native.js +164 -178
  468. package/dist/esm/TabsDemo.native.js.map +1 -1
  469. package/dist/esm/TextDemo.mjs +24 -20
  470. package/dist/esm/TextDemo.mjs.map +1 -1
  471. package/dist/esm/TextDemo.native.js +25 -21
  472. package/dist/esm/TextDemo.native.js.map +1 -1
  473. package/dist/esm/ThemeBuilderDemo.mjs +180 -147
  474. package/dist/esm/ThemeBuilderDemo.mjs.map +1 -1
  475. package/dist/esm/ThemeBuilderDemo.native.js +181 -148
  476. package/dist/esm/ThemeBuilderDemo.native.js.map +1 -1
  477. package/dist/esm/ThemeInverseDemo.mjs +77 -70
  478. package/dist/esm/ThemeInverseDemo.mjs.map +1 -1
  479. package/dist/esm/ThemeInverseDemo.native.js +78 -71
  480. package/dist/esm/ThemeInverseDemo.native.js.map +1 -1
  481. package/dist/esm/ToastDemo.mjs +187 -197
  482. package/dist/esm/ToastDemo.mjs.map +1 -1
  483. package/dist/esm/ToastDemo.native.js +200 -212
  484. package/dist/esm/ToastDemo.native.js.map +1 -1
  485. package/dist/esm/ToastDuplicateDemo.mjs +29 -39
  486. package/dist/esm/ToastDuplicateDemo.mjs.map +1 -1
  487. package/dist/esm/ToastDuplicateDemo.native.js +34 -44
  488. package/dist/esm/ToastDuplicateDemo.native.js.map +1 -1
  489. package/dist/esm/ToggleGroupDemo.mjs +75 -89
  490. package/dist/esm/ToggleGroupDemo.mjs.map +1 -1
  491. package/dist/esm/ToggleGroupDemo.native.js +76 -90
  492. package/dist/esm/ToggleGroupDemo.native.js.map +1 -1
  493. package/dist/esm/TokensDemo.mjs +84 -84
  494. package/dist/esm/TokensDemo.mjs.map +1 -1
  495. package/dist/esm/TokensDemo.native.js +100 -100
  496. package/dist/esm/TokensDemo.native.js.map +1 -1
  497. package/dist/esm/TooltipDemo.mjs +103 -100
  498. package/dist/esm/TooltipDemo.mjs.map +1 -1
  499. package/dist/esm/TooltipDemo.native.js +104 -101
  500. package/dist/esm/TooltipDemo.native.js.map +1 -1
  501. package/dist/esm/UpdateThemeDemo.mjs +38 -41
  502. package/dist/esm/UpdateThemeDemo.mjs.map +1 -1
  503. package/dist/esm/UpdateThemeDemo.native.js +39 -42
  504. package/dist/esm/UpdateThemeDemo.native.js.map +1 -1
  505. package/dist/esm/WebNativeImageDemo.mjs +7 -5
  506. package/dist/esm/WebNativeImageDemo.mjs.map +1 -1
  507. package/dist/esm/WebNativeImageDemo.native.js +8 -6
  508. package/dist/esm/WebNativeImageDemo.native.js.map +1 -1
  509. package/dist/esm/index.js +121 -64
  510. package/dist/esm/index.mjs +121 -64
  511. package/dist/esm/index.native.js +121 -64
  512. package/dist/esm/tamagui.config.mjs +2 -0
  513. package/dist/esm/tamagui.config.mjs.map +1 -1
  514. package/dist/esm/tamagui.config.native.js +2 -0
  515. package/dist/esm/tamagui.config.native.js.map +1 -1
  516. package/dist/esm/useOnIntersecting.mjs +54 -52
  517. package/dist/esm/useOnIntersecting.mjs.map +1 -1
  518. package/dist/esm/useOnIntersecting.native.js +81 -82
  519. package/dist/esm/useOnIntersecting.native.js.map +1 -1
  520. package/package.json +36 -37
  521. package/src/AccordionDemo.tsx +9 -9
  522. package/src/AddThemeDemo.tsx +2 -2
  523. package/src/AlertDialogDemo.tsx +10 -21
  524. package/src/AnimationsDelayDemo.tsx +9 -16
  525. package/src/AnimationsDemo.tsx +11 -29
  526. package/src/AnimationsEnterDemo.tsx +7 -12
  527. package/src/AnimationsHoverDemo.tsx +5 -10
  528. package/src/AnimationsPresenceDemo.tsx +17 -22
  529. package/src/AnimationsTimingDemo.tsx +4 -9
  530. package/src/AvatarDemo.tsx +5 -5
  531. package/src/BoxShadowTokenDemo.tsx +8 -8
  532. package/src/BuildAButtonDemo.tsx +12 -22
  533. package/src/ButtonDemo.tsx +13 -14
  534. package/src/CardDemo.tsx +9 -11
  535. package/src/CheckboxDemo.tsx +14 -8
  536. package/src/CheckboxHeadlessDemo.tsx +2 -2
  537. package/src/ColorsDemo.tsx +16 -34
  538. package/src/ContextMenuDemo.tsx +20 -24
  539. package/src/DialogDemo.tsx +27 -39
  540. package/src/FieldDemo.tsx +157 -0
  541. package/src/FormsDemo.tsx +52 -46
  542. package/src/GroupDemo.tsx +8 -8
  543. package/src/InputsDemo.tsx +5 -5
  544. package/src/LabelDemo.tsx +4 -4
  545. package/src/LinearGradientDemo.tsx +9 -9
  546. package/src/ListItemDemo.tsx +14 -14
  547. package/src/LucideIconsDemo.tsx +4 -4
  548. package/src/MenuDemo.tsx +20 -22
  549. package/src/MenuSkins.tsx +189 -0
  550. package/src/NewInputsDemo.tsx +6 -7
  551. package/src/PopoverDemo.tsx +22 -28
  552. package/src/ProgressDemo.tsx +10 -24
  553. package/src/{RadioGroupUnstyledDemo.tsx → RadioGroupCustomDemo.tsx} +23 -54
  554. package/src/RadioGroupDemo.tsx +6 -6
  555. package/src/RadioGroupHeadlessDemo.tsx +1 -1
  556. package/src/ReplaceThemeDemo.tsx +4 -4
  557. package/src/ScrollViewDemo.tsx +9 -9
  558. package/src/SelectDemo.tsx +32 -41
  559. package/src/ShapesDemo.tsx +3 -3
  560. package/src/SheetDemo.tsx +26 -27
  561. package/src/SliderDemo.tsx +1 -1
  562. package/src/SpinnerDemo.tsx +3 -3
  563. package/src/StacksDemo.tsx +33 -24
  564. package/src/SwitchDemo.tsx +16 -17
  565. package/src/SwitchHeadlessDemo.tsx +2 -2
  566. package/src/TabsAdvancedDemo.tsx +31 -53
  567. package/src/{TabsHeadlessDemo.tsx → TabsCustomDemo.tsx} +35 -41
  568. package/src/TabsDemo.tsx +30 -47
  569. package/src/TextDemo.tsx +3 -3
  570. package/src/ThemeBuilderDemo.tsx +71 -70
  571. package/src/ThemeInverseDemo.tsx +9 -9
  572. package/src/ToastDemo.tsx +16 -21
  573. package/src/ToastDuplicateDemo.tsx +5 -4
  574. package/src/ToggleGroupDemo.tsx +12 -12
  575. package/src/TokensDemo.tsx +8 -8
  576. package/src/TooltipDemo.tsx +17 -23
  577. package/src/UpdateThemeDemo.tsx +9 -7
  578. package/src/index.tsx +3 -5
  579. package/types/AccordionDemo.d.ts +2 -0
  580. package/types/AddThemeDemo.d.ts +2 -0
  581. package/types/AlertDialogDemo.d.ts +2 -0
  582. package/types/AnimationsDelayDemo.d.ts +2 -0
  583. package/types/AnimationsDemo.d.ts +12 -0
  584. package/types/AnimationsEnterDemo.d.ts +2 -0
  585. package/types/AnimationsHoverDemo.d.ts +2 -0
  586. package/types/AnimationsPresenceDemo.d.ts +3 -0
  587. package/types/AnimationsTimingDemo.d.ts +2 -0
  588. package/types/AvatarDemo.d.ts +2 -0
  589. package/types/BoxShadowTokenDemo.d.ts +2 -0
  590. package/types/BuildAButtonDemo.d.ts +2 -0
  591. package/types/ButtonDemo.d.ts +2 -0
  592. package/types/CardDemo.d.ts +4 -0
  593. package/types/CheckboxDemo.d.ts +6 -0
  594. package/types/CheckboxHeadlessDemo.d.ts +2 -0
  595. package/types/ColorsDemo.d.ts +2 -0
  596. package/types/ContextMenuDemo.d.ts +2 -0
  597. package/types/DialogDemo.d.ts +2 -0
  598. package/types/FormsDemo.d.ts +5 -0
  599. package/types/Grid.d.ts +8 -0
  600. package/types/GroupDemo.d.ts +2 -0
  601. package/types/HeadingsDemo.d.ts +2 -0
  602. package/types/ImageDemo.d.ts +2 -0
  603. package/types/InputsDemo.d.ts +2 -0
  604. package/types/LabelDemo.d.ts +2 -0
  605. package/types/LinearGradientDemo.d.ts +2 -0
  606. package/types/ListItemDemo.d.ts +2 -0
  607. package/types/LucideIconsDemo.d.ts +2 -0
  608. package/types/MenuDemo.d.ts +7 -0
  609. package/types/MenuSkins.d.ts +5 -0
  610. package/types/NewInputsDemo.d.ts +2 -0
  611. package/types/PopoverDemo.d.ts +8 -0
  612. package/types/ProgressDemo.d.ts +2 -0
  613. package/types/RadioGroupCustomDemo.d.ts +2 -0
  614. package/types/RadioGroupDemo.d.ts +8 -0
  615. package/types/RadioGroupHeadlessDemo.d.ts +2 -0
  616. package/types/ReplaceThemeDemo.d.ts +2 -0
  617. package/types/ScrollViewDemo.d.ts +2 -0
  618. package/types/SelectDemo.d.ts +54 -0
  619. package/types/SeparatorDemo.d.ts +2 -0
  620. package/types/ShapesDemo.d.ts +2 -0
  621. package/types/SheetDemo.d.ts +2 -0
  622. package/types/SliderDemo.d.ts +2 -0
  623. package/types/SpinnerDemo.d.ts +2 -0
  624. package/types/StacksDemo.d.ts +2 -0
  625. package/types/SwitchDemo.d.ts +8 -0
  626. package/types/SwitchHeadlessDemo.d.ts +2 -0
  627. package/types/TabsAdvancedDemo.d.ts +2 -0
  628. package/types/TabsCustomDemo.d.ts +228 -0
  629. package/types/TabsDemo.d.ts +2 -0
  630. package/types/TextDemo.d.ts +2 -0
  631. package/types/ThemeBuilderDemo.d.ts +2 -0
  632. package/types/ThemeInverseDemo.d.ts +2 -0
  633. package/types/ToastDemo.d.ts +2 -0
  634. package/types/ToastDuplicateDemo.d.ts +5 -0
  635. package/types/ToastV1Demo.d.ts +7 -0
  636. package/types/ToggleGroupDemo.d.ts +2 -0
  637. package/types/TokensDemo.d.ts +2 -0
  638. package/types/TooltipDemo.d.ts +2 -0
  639. package/types/UpdateThemeDemo.d.ts +2 -0
  640. package/types/WebNativeImageDemo.d.ts +2 -0
  641. package/types/index.d.ts +60 -0
  642. package/types/useOnIntersecting.d.ts +10 -0
  643. package/dist/cjs/CheckboxUnstyledDemo.cjs +0 -80
  644. package/dist/cjs/CheckboxUnstyledDemo.native.js +0 -83
  645. package/dist/cjs/CheckboxUnstyledDemo.native.js.map +0 -1
  646. package/dist/cjs/RadioGroupUnstyledDemo.cjs +0 -143
  647. package/dist/cjs/RadioGroupUnstyledDemo.native.js +0 -146
  648. package/dist/cjs/RadioGroupUnstyledDemo.native.js.map +0 -1
  649. package/dist/cjs/SwitchUnstyledDemo.cjs +0 -91
  650. package/dist/cjs/SwitchUnstyledDemo.native.js +0 -94
  651. package/dist/cjs/SwitchUnstyledDemo.native.js.map +0 -1
  652. package/dist/cjs/TabsHeadlessDemo.cjs +0 -134
  653. package/dist/cjs/TabsHeadlessDemo.native.js +0 -157
  654. package/dist/cjs/TabsHeadlessDemo.native.js.map +0 -1
  655. package/dist/cjs/ToastV1Demo.cjs +0 -155
  656. package/dist/cjs/ToastV1Demo.native.js +0 -166
  657. package/dist/cjs/ToastV1Demo.native.js.map +0 -1
  658. package/dist/esm/CheckboxUnstyledDemo.mjs +0 -54
  659. package/dist/esm/CheckboxUnstyledDemo.mjs.map +0 -1
  660. package/dist/esm/CheckboxUnstyledDemo.native.js +0 -54
  661. package/dist/esm/CheckboxUnstyledDemo.native.js.map +0 -1
  662. package/dist/esm/RadioGroupUnstyledDemo.mjs +0 -118
  663. package/dist/esm/RadioGroupUnstyledDemo.mjs.map +0 -1
  664. package/dist/esm/RadioGroupUnstyledDemo.native.js +0 -118
  665. package/dist/esm/RadioGroupUnstyledDemo.native.js.map +0 -1
  666. package/dist/esm/SwitchUnstyledDemo.mjs +0 -65
  667. package/dist/esm/SwitchUnstyledDemo.mjs.map +0 -1
  668. package/dist/esm/SwitchUnstyledDemo.native.js +0 -65
  669. package/dist/esm/SwitchUnstyledDemo.native.js.map +0 -1
  670. package/dist/esm/TabsHeadlessDemo.mjs +0 -107
  671. package/dist/esm/TabsHeadlessDemo.mjs.map +0 -1
  672. package/dist/esm/TabsHeadlessDemo.native.js +0 -114
  673. package/dist/esm/TabsHeadlessDemo.native.js.map +0 -1
  674. package/dist/esm/ToastV1Demo.mjs +0 -119
  675. package/dist/esm/ToastV1Demo.mjs.map +0 -1
  676. package/dist/esm/ToastV1Demo.native.js +0 -127
  677. package/dist/esm/ToastV1Demo.native.js.map +0 -1
  678. package/dist/esm/index.js.map +0 -1
  679. package/dist/esm/index.mjs.map +0 -1
  680. package/dist/esm/index.native.js.map +0 -1
  681. package/src/CheckboxUnstyledDemo.tsx +0 -49
  682. package/src/SwitchUnstyledDemo.tsx +0 -58
  683. package/src/ToastV1Demo.tsx +0 -121
package/src/FormsDemo.tsx CHANGED
@@ -1,60 +1,66 @@
1
- import React from 'react'
2
- import type { SizeTokens } from 'tamagui'
3
- import {
4
- Button,
5
- Form,
6
- H4,
7
- Spinner,
8
- AnimatePresence,
9
- Square,
10
- XStack,
11
- XGroup,
12
- Label,
13
- YStack,
14
- } from 'tamagui'
1
+ import * as React from 'react'
2
+ import { Button, Field, Form, Paragraph, Spinner, YStack } from 'tamagui'
3
+ import { FieldInput } from './FieldDemo'
15
4
 
16
- export function FormsDemo(props: { size: SizeTokens }) {
17
- const [status, setStatus] = React.useState<'off' | 'submitting' | 'submitted'>('off')
5
+ export function FormsDemo() {
6
+ const [status, setStatus] = React.useState<'idle' | 'submitting'>('idle')
18
7
 
19
8
  React.useEffect(() => {
20
- if (status === 'submitting') {
21
- const timer = setTimeout(() => setStatus('off'), 2000)
22
- return () => {
23
- clearTimeout(timer)
24
- }
9
+ if (status !== 'submitting') {
10
+ return
25
11
  }
12
+ const timer = setTimeout(() => setStatus('idle'), 1200)
13
+ return () => clearTimeout(timer)
26
14
  }, [status])
27
15
 
28
16
  return (
29
17
  <Form
30
- items="center"
31
- gap="$2"
32
- onSubmit={() => setStatus('submitting')}
18
+ width={350}
19
+ maxW="90%"
20
+ gap="4"
33
21
  borderWidth={1}
34
- rounded="$4"
35
- bg="$color2"
36
- borderColor="$borderColor"
37
- minW={350}
38
- p="$6"
22
+ rounded="7"
23
+ bg="color2"
24
+ borderColor="border-color"
25
+ p="6"
26
+ boxShadow="0 2px 3px rgba(0, 0, 0, 0.06), 0 14px 30px rgba(0, 0, 0, 0.10), 0 36px 72px rgba(0, 0, 0, 0.12)"
27
+ onSubmit={() => setStatus('submitting')}
39
28
  >
40
- <Form.Trigger asChild disabled={status !== 'off'}>
41
- <YStack gap="$4">
42
- <Button>Submit</Button>
43
- <YStack width="100%" height={40} justifyContent="center" alignItems="center">
44
- <AnimatePresence>
45
- {status === 'submitting' ? (
46
- <Spinner
47
- transition="medium"
48
- enterStyle={{ opacity: 0 }}
49
- alignSelf="center"
50
- key="spinner"
51
- width={8}
52
- />
53
- ) : null}
54
- </AnimatePresence>
55
- </YStack>
56
- </YStack>
29
+ <Field name="email" gap="2">
30
+ <Field.Label color="color11" fontWeight="500">
31
+ Email
32
+ </Field.Label>
33
+ <FieldInput type="email" placeholder="ada@example.com" required />
34
+ <Field.Description color="color9" fontSize="2">
35
+ Form collects this value by field name.
36
+ </Field.Description>
37
+ <Field.Error color="red10" fontSize="2" />
38
+ </Field>
39
+
40
+ <Form.Trigger asChild disabled={status !== 'idle'}>
41
+ <Button
42
+ self="flex-end"
43
+ height={40}
44
+ px="5"
45
+ rounded="5"
46
+ bg="color11 hover:color10"
47
+ color="color1"
48
+ fontSize="2"
49
+ fontWeight="500"
50
+ >
51
+ Submit
52
+ </Button>
57
53
  </Form.Trigger>
54
+
55
+ <YStack height={24} items="center" justify="center">
56
+ {status === 'submitting' ? (
57
+ <Spinner size="small" />
58
+ ) : (
59
+ <Paragraph color="color9" size="2">
60
+ Ready
61
+ </Paragraph>
62
+ )}
63
+ </YStack>
58
64
  </Form>
59
65
  )
60
66
  }
package/src/GroupDemo.tsx CHANGED
@@ -3,7 +3,7 @@ import { Button, Group, ListItem, Separator, XGroup, YGroup, YStack } from 'tama
3
3
 
4
4
  export function GroupDemo() {
5
5
  return (
6
- <YStack p="$3" gap="$2" items="center">
6
+ <YStack p="3" gap="2" items="center">
7
7
  <Group orientation="horizontal">
8
8
  <Group.Item>
9
9
  <Button>First</Button>
@@ -16,15 +16,15 @@ export function GroupDemo() {
16
16
  </Group.Item>
17
17
  </Group>
18
18
 
19
- {/* responsive size - children control their own size/radius */}
19
+ {/* children control their own size and radius */}
20
20
  <XGroup>
21
21
  <XGroup.Item>
22
- <Button size="$3" $gtSm={{ size: '$5' }} icon={Activity}>
22
+ <Button size="3" icon={Activity}>
23
23
  First
24
24
  </Button>
25
25
  </XGroup.Item>
26
26
  <XGroup.Item>
27
- <Button size="$3" $gtSm={{ size: '$5' }} icon={Airplay}>
27
+ <Button size="3" icon={Airplay}>
28
28
  Second
29
29
  </Button>
30
30
  </XGroup.Item>
@@ -33,20 +33,20 @@ export function GroupDemo() {
33
33
  {/* with separators - add them between items */}
34
34
  <YGroup>
35
35
  <YGroup.Item>
36
- <ListItem borderRadius="$6" theme="surface1" title="First" />
36
+ <ListItem borderRadius="6" theme="level2" title="First" />
37
37
  </YGroup.Item>
38
38
  <Separator />
39
39
  <YGroup.Item>
40
40
  <ListItem
41
- borderRadius="$6"
42
- theme="surface1"
41
+ borderRadius="6"
42
+ theme="level2"
43
43
  title="Second"
44
44
  subTitle="Second subtitle"
45
45
  />
46
46
  </YGroup.Item>
47
47
  <Separator />
48
48
  <YGroup.Item>
49
- <ListItem borderRadius="$6" theme="surface1">
49
+ <ListItem borderRadius="6" theme="level2">
50
50
  Third
51
51
  </ListItem>
52
52
  </YGroup.Item>
@@ -3,10 +3,10 @@ import { Button, Input, TextArea, XStack, YStack } from 'tamagui'
3
3
 
4
4
  export function InputsDemo() {
5
5
  return (
6
- <YStack width={200} minH={250} overflow="hidden" gap="$2" m="$3" p="$2">
7
- <InputDemo size="$2" />
8
- <InputDemo size="$3" />
9
- <InputDemo size="$4" />
6
+ <YStack width={200} minH={250} overflow="hidden" gap="2" m="3" p="2">
7
+ <InputDemo size="2" />
8
+ <InputDemo size="3" />
9
+ <InputDemo size="4" />
10
10
  <TextArea theme="surface1" placeholder="Enter your details..." />
11
11
  </YStack>
12
12
  )
@@ -14,7 +14,7 @@ export function InputsDemo() {
14
14
 
15
15
  function InputDemo(props: { size: SizeTokens }) {
16
16
  return (
17
- <XStack items="center" gap="$2">
17
+ <XStack items="center" gap="2">
18
18
  <Input
19
19
  theme="surface1"
20
20
  flex={1}
package/src/LabelDemo.tsx CHANGED
@@ -2,21 +2,21 @@ import { Input, Label, Switch, XStack, YStack } from 'tamagui'
2
2
 
3
3
  export function LabelDemo() {
4
4
  return (
5
- <YStack $maxMd={{ width: '100%' }} minW={300} gap="$4">
6
- <XStack items="center" gap="$4">
5
+ <YStack width="max-md:100%" minW={300} gap="4">
6
+ <XStack items="center" gap="4">
7
7
  <Label width={90} htmlFor="name">
8
8
  Name
9
9
  </Label>
10
10
  <Input flex={1} id="name" defaultValue="Nate Wienert" />
11
11
  </XStack>
12
12
 
13
- <XStack items="center" gap="$4">
13
+ <XStack items="center" gap="4">
14
14
  <Label width={90} htmlFor="notify">
15
15
  Notifications
16
16
  </Label>
17
17
  <Switch
18
18
  activeStyle={{
19
- backgroundColor: '$color8',
19
+ backgroundColor: 'color8',
20
20
  }}
21
21
  id="notify"
22
22
  >
@@ -3,25 +3,25 @@ import { LinearGradient } from '@tamagui/linear-gradient'
3
3
 
4
4
  export function LinearGradientDemo() {
5
5
  return (
6
- <XStack gap="$4">
6
+ <XStack gap="4">
7
7
  {/* tokens */}
8
8
  <LinearGradient
9
- width="$6"
10
- height="$6"
11
- rounded="$4"
12
- colors={['$red10', '$yellow10']}
9
+ width="6"
10
+ height="6"
11
+ rounded="4"
13
12
  start={[0, 1]}
14
13
  end={[0, 0]}
14
+ colors={['red10', 'yellow10']}
15
15
  />
16
16
 
17
17
  {/* theme values */}
18
18
  <LinearGradient
19
- width="$6"
20
- height="$6"
21
- rounded="$4"
22
- colors={['$background', '$color']}
19
+ width="6"
20
+ height="6"
21
+ rounded="4"
23
22
  start={[1, 1]}
24
23
  end={[0, 0]}
24
+ colors={['background', 'color']}
25
25
  />
26
26
  </XStack>
27
27
  )
@@ -3,8 +3,8 @@ import { ListItem, Separator, Theme, XStack, YGroup } from 'tamagui'
3
3
 
4
4
  export function ListItemDemo() {
5
5
  return (
6
- <Theme name="surface1">
7
- <XStack $maxMd={{ flexDirection: 'column' }} px="$4" gap="$4">
6
+ <Theme name="level2">
7
+ <XStack flexDirection="max-md:column" px="4" gap="4">
8
8
  <ListItemDemo1 />
9
9
  <ListItemDemo2 />
10
10
  </XStack>
@@ -17,15 +17,15 @@ function ListItemDemo1() {
17
17
  <YGroup
18
18
  self="center"
19
19
  borderWidth={1}
20
- borderColor="$borderColor"
21
- rounded="$4"
20
+ borderColor="border-color"
21
+ rounded="4"
22
22
  overflow="hidden"
23
23
  width={240}
24
- size="$4"
24
+ size="4"
25
25
  >
26
26
  <YGroup.Item>
27
27
  <ListItem
28
- gap="$3"
28
+ gap="3"
29
29
  icon={Star}
30
30
  title="Star"
31
31
  subTitle={<ListItem.Subtitle>Twinkles</ListItem.Subtitle>}
@@ -33,17 +33,17 @@ function ListItemDemo1() {
33
33
  />
34
34
  </YGroup.Item>
35
35
  <YGroup.Item>
36
- <ListItem gap="$3" icon={Moon}>
36
+ <ListItem gap="3" icon={Moon}>
37
37
  Moon
38
38
  </ListItem>
39
39
  </YGroup.Item>
40
40
  <YGroup.Item>
41
- <ListItem gap="$3" icon={Sun}>
41
+ <ListItem gap="3" icon={Sun}>
42
42
  Sun
43
43
  </ListItem>
44
44
  </YGroup.Item>
45
45
  <YGroup.Item>
46
- <ListItem gap="$3" icon={Cloud}>
46
+ <ListItem gap="3" icon={Cloud}>
47
47
  Cloud
48
48
  </ListItem>
49
49
  </YGroup.Item>
@@ -56,15 +56,15 @@ function ListItemDemo2() {
56
56
  <YGroup
57
57
  self="center"
58
58
  borderWidth={1}
59
- borderColor="$borderColor"
60
- rounded="$4"
59
+ borderColor="border-color"
60
+ rounded="4"
61
61
  overflow="hidden"
62
62
  width={240}
63
- size="$5"
63
+ size="5"
64
64
  >
65
65
  <YGroup.Item>
66
66
  <ListItem
67
- gap="$3"
67
+ gap="3"
68
68
  title="Star"
69
69
  subTitle="Subtitle"
70
70
  icon={Star}
@@ -74,7 +74,7 @@ function ListItemDemo2() {
74
74
  <Separator />
75
75
  <YGroup.Item>
76
76
  <ListItem
77
- gap="$3"
77
+ gap="3"
78
78
  title="Moon"
79
79
  subTitle="Subtitle"
80
80
  icon={Moon}
@@ -30,13 +30,13 @@ export function LucideIconsDemo() {
30
30
  <Icon size={size * 0.25} />
31
31
  <Spacer />
32
32
  <Paragraph
33
- height="$6"
33
+ height="6"
34
34
  wordWrap="break-word"
35
35
  maxW="100%"
36
36
  text="center"
37
- px="$2"
38
- size="$1"
37
+ px="2"
39
38
  opacity={0.5}
39
+ size="1"
40
40
  >
41
41
  {name}
42
42
  </Paragraph>
@@ -46,7 +46,7 @@ export function LucideIconsDemo() {
46
46
  )
47
47
 
48
48
  return (
49
- <YStack minW="100%" p="$4" pb="$0" gap="$4">
49
+ <YStack minW="100%" paddingTop="4" paddingRight="4" paddingLeft="4" pb="0" gap="4">
50
50
  <Input value={searchRaw} onChangeText={setSearch as any} placeholder="Search..." />
51
51
 
52
52
  <YStack height={420}>
package/src/MenuDemo.tsx CHANGED
@@ -7,9 +7,9 @@ import {
7
7
  RefreshCw,
8
8
  Trash2,
9
9
  } from '@tamagui/lucide-icons-2'
10
- import { Menu } from '@tamagui/menu'
11
10
  import React from 'react'
12
11
  import { Button } from 'tamagui'
12
+ import { Menu } from './MenuSkins'
13
13
 
14
14
  /**
15
15
  * Menu Demo using Tamagui Menu component.
@@ -17,10 +17,6 @@ import { Button } from 'tamagui'
17
17
  * No configuration needed - it just works!
18
18
  */
19
19
 
20
- /**
21
- * Note: you'll want to use createMenu() to customize further.
22
- */
23
-
24
20
  export function MenuDemo() {
25
21
  const [bookmarksChecked, setBookmarksChecked] = React.useState(true)
26
22
  const [native, setNative] = React.useState(true)
@@ -35,7 +31,7 @@ export function MenuDemo() {
35
31
  <>
36
32
  <Menu offset={8}>
37
33
  <Menu.Trigger asChild>
38
- <Button size="$4" icon={Backpack}>
34
+ <Button size="4" icon={Backpack}>
39
35
  Open
40
36
  </Button>
41
37
  </Menu.Trigger>
@@ -43,12 +39,13 @@ export function MenuDemo() {
43
39
  <Menu.Portal zIndex={100}>
44
40
  <Menu.Content
45
41
  transition="100ms"
46
- borderRadius="$4"
47
- enterStyle={{ scale: 0.9, opacity: 0, y: -5 }}
48
- exitStyle={{ scale: 0.95, opacity: 0, y: -3 }}
49
- boxShadow="0 4px 5px $shadowColor"
42
+ borderRadius="4"
43
+ scale="enter:0.9 exit:0.95"
44
+ opacity="enter:0 exit:0"
45
+ y="enter:-5px exit:-3px"
46
+ boxShadow="0 4px 5px shadow-color"
50
47
  >
51
- <Menu.Arrow size="$4" borderWidth={1} borderColor="$borderColor" />
48
+ <Menu.Arrow size={13} borderWidth={1} borderColor="border-color" />
52
49
 
53
50
  <Menu.ScrollView padding={5}>
54
51
  <Menu.Item onSelect={onSelect} key="about-notes">
@@ -98,19 +95,20 @@ export function MenuDemo() {
98
95
  textValue="Actions"
99
96
  >
100
97
  <Menu.ItemTitle>Actions</Menu.ItemTitle>
101
- <ChevronRight size={16} color="$color10" />
98
+ <ChevronRight size={16} color="color10" />
102
99
  </Menu.SubTrigger>
103
100
 
104
101
  <Menu.Portal zIndex={200}>
105
102
  <Menu.SubContent
106
103
  transition="100ms"
107
- borderRadius="$4"
108
- enterStyle={{ scale: 0.9, opacity: 0, y: -5 }}
109
- exitStyle={{ scale: 0.95, opacity: 0, y: -3 }}
110
- boxShadow="0 4px 5px $shadowColor"
104
+ borderRadius="4"
105
+ scale="enter:0.9 exit:0.95"
106
+ opacity="enter:0 exit:0"
107
+ y="enter:-5px exit:-3px"
108
+ boxShadow="0 4px 5px shadow-color"
111
109
  padding={5}
112
110
  >
113
- <Menu.Label padding={5} color="$color9" size="$3" select="none">
111
+ <Menu.Label padding={5} color="color9" fontSize="3" select="none">
114
112
  Note settings
115
113
  </Menu.Label>
116
114
  <Menu.Item
@@ -121,7 +119,7 @@ export function MenuDemo() {
121
119
  >
122
120
  <Menu.ItemTitle>Create note</Menu.ItemTitle>
123
121
  <Menu.ItemIcon>
124
- <FilePlus size={14} color="$color10" />
122
+ <FilePlus size={14} color="color10" />
125
123
  </Menu.ItemIcon>
126
124
  </Menu.Item>
127
125
  <Menu.Item
@@ -132,7 +130,7 @@ export function MenuDemo() {
132
130
  >
133
131
  <Menu.ItemTitle>Delete all notes</Menu.ItemTitle>
134
132
  <Menu.ItemIcon>
135
- <Trash2 size={14} color="$color10" />
133
+ <Trash2 size={14} color="color10" />
136
134
  </Menu.ItemIcon>
137
135
  </Menu.Item>
138
136
  <Menu.Item
@@ -143,7 +141,7 @@ export function MenuDemo() {
143
141
  >
144
142
  <Menu.ItemTitle>Sync notes</Menu.ItemTitle>
145
143
  <Menu.ItemIcon>
146
- <RefreshCw size={14} color="$color10" />
144
+ <RefreshCw size={14} color="color10" />
147
145
  </Menu.ItemIcon>
148
146
  </Menu.Item>
149
147
  </Menu.SubContent>
@@ -160,7 +158,7 @@ export function MenuDemo() {
160
158
  >
161
159
  <Menu.ItemTitle>Mark as read</Menu.ItemTitle>
162
160
  <Menu.ItemIndicator>
163
- <Check size={12} color="$color10" />
161
+ <Check size={12} color="color10" />
164
162
  </Menu.ItemIndicator>
165
163
  </Menu.CheckboxItem>
166
164
  <Menu.CheckboxItem
@@ -171,7 +169,7 @@ export function MenuDemo() {
171
169
  >
172
170
  <Menu.ItemTitle>Enable Native</Menu.ItemTitle>
173
171
  <Menu.ItemIndicator>
174
- <Check size={12} color="$color10" />
172
+ <Check size={12} color="color10" />
175
173
  </Menu.ItemIndicator>
176
174
  </Menu.CheckboxItem>
177
175
  </Menu.ScrollView>
@@ -0,0 +1,189 @@
1
+ import { ContextMenu as ContextMenuBehavior } from '@tamagui/context-menu'
2
+ import { Menu as MenuBehavior } from '@tamagui/menu'
3
+ import React from 'react'
4
+ import { styled, withStaticProperties } from 'tamagui'
5
+
6
+ const contentStyles = {
7
+ minWidth: 180,
8
+ backgroundColor: 'background',
9
+ borderColor: 'border-color',
10
+ borderWidth: 1,
11
+ boxShadow: '0 10px 20px shadow-color',
12
+ } as const
13
+
14
+ const itemStyles = {
15
+ displayName: 'DemoMenuItem',
16
+ width: '100%',
17
+ paddingHorizontal: 8,
18
+ paddingVertical: 4,
19
+ alignItems: 'center',
20
+ flexDirection: 'row',
21
+ borderRadius: 6,
22
+ cursor: 'pointer',
23
+
24
+ variants: {
25
+ disabled: {
26
+ true: {
27
+ cursor: 'not-allowed',
28
+ opacity: 0.45,
29
+ },
30
+ },
31
+ },
32
+ } as const
33
+
34
+ const titleStyles = {
35
+ displayName: 'DemoMenuItemTitle',
36
+ color: 'color',
37
+ cursor: 'default',
38
+ flexGrow: 1,
39
+ flexShrink: 1,
40
+ fontSize: 14,
41
+ } as const
42
+
43
+ const subtitleStyles = {
44
+ displayName: 'DemoMenuItemSubtitle',
45
+ color: 'color',
46
+ opacity: 0.6,
47
+ cursor: 'default',
48
+ fontSize: 14,
49
+ } as const
50
+
51
+ const iconStyles = {
52
+ displayName: 'DemoMenuItemIcon',
53
+ width: 20,
54
+ height: 20,
55
+ marginLeft: 'auto',
56
+ alignItems: 'center',
57
+ justifyContent: 'center',
58
+ } as const
59
+
60
+ const indicatorStyles = {
61
+ displayName: 'DemoMenuItemIndicator',
62
+ marginLeft: 'auto',
63
+ alignItems: 'center',
64
+ justifyContent: 'center',
65
+ } as const
66
+
67
+ const separatorStyles = {
68
+ displayName: 'DemoMenuSeparator',
69
+ height: 1,
70
+ marginHorizontal: 10,
71
+ marginVertical: 3,
72
+ backgroundColor: 'border-color',
73
+ } as const
74
+
75
+ const labelStyles = {
76
+ displayName: 'DemoMenuLabel',
77
+ paddingHorizontal: '2-5',
78
+ paddingVertical: '1-5',
79
+ color: 'color',
80
+ opacity: 0.6,
81
+ cursor: 'default',
82
+ fontSize: 14,
83
+ } as const
84
+
85
+ const groupStyles = {
86
+ displayName: 'DemoMenuGroup',
87
+ width: '100%',
88
+ } as const
89
+
90
+ const MenuContent = styled(MenuBehavior.Content, contentStyles)
91
+ const MenuSubContent = styled(MenuBehavior.SubContent, contentStyles)
92
+ const MenuGroup = styled(MenuBehavior.Group, groupStyles)
93
+ const MenuLabel = styled(MenuBehavior.Label, labelStyles)
94
+ const MenuItem = styled(MenuBehavior.Item, itemStyles)
95
+ const MenuCheckboxItem = styled(MenuBehavior.CheckboxItem, itemStyles)
96
+ const MenuRadioItem = styled(MenuBehavior.RadioItem, itemStyles)
97
+ const MenuSubTrigger = styled(MenuBehavior.SubTrigger, itemStyles)
98
+ const MenuItemTitle = styled(MenuBehavior.ItemTitle, titleStyles)
99
+ const MenuItemSubtitle = styled(MenuBehavior.ItemSubtitle, subtitleStyles)
100
+ const MenuItemIcon = styled(MenuBehavior.ItemIcon, iconStyles)
101
+ const MenuItemIndicator = styled(MenuBehavior.ItemIndicator, indicatorStyles)
102
+ const MenuSeparator = styled(MenuBehavior.Separator, separatorStyles)
103
+ const MenuArrow = styled(MenuBehavior.Arrow, {
104
+ displayName: 'DemoMenuArrow',
105
+ backgroundColor: 'background',
106
+ borderColor: 'border-color',
107
+ borderWidth: 1,
108
+ })
109
+ const MenuScrollView = styled(MenuBehavior.ScrollView, {
110
+ displayName: 'DemoMenuScrollView',
111
+ padding: '1',
112
+ })
113
+
114
+ const MenuRoot = (props: React.ComponentProps<typeof MenuBehavior>) => (
115
+ <MenuBehavior {...props} />
116
+ )
117
+
118
+ export const Menu = withStaticProperties(MenuRoot, {
119
+ Trigger: MenuBehavior.Trigger,
120
+ Portal: MenuBehavior.Portal,
121
+ Content: MenuContent,
122
+ Group: MenuGroup,
123
+ Label: MenuLabel,
124
+ Item: MenuItem,
125
+ CheckboxItem: MenuCheckboxItem,
126
+ RadioGroup: MenuBehavior.RadioGroup,
127
+ RadioItem: MenuRadioItem,
128
+ ItemIndicator: MenuItemIndicator,
129
+ Separator: MenuSeparator,
130
+ Arrow: MenuArrow,
131
+ Sub: MenuBehavior.Sub,
132
+ SubTrigger: MenuSubTrigger,
133
+ SubContent: MenuSubContent,
134
+ ItemTitle: MenuItemTitle,
135
+ ItemSubtitle: MenuItemSubtitle,
136
+ ItemIcon: MenuItemIcon,
137
+ ItemImage: MenuBehavior.ItemImage,
138
+ ScrollView: MenuScrollView,
139
+ }) as unknown as typeof MenuBehavior
140
+
141
+ const ContextMenuContent = styled(ContextMenuBehavior.Content, contentStyles)
142
+ const ContextMenuSubContent = styled(ContextMenuBehavior.SubContent, contentStyles)
143
+ const ContextMenuGroup = styled(ContextMenuBehavior.Group, groupStyles)
144
+ const ContextMenuLabel = styled(ContextMenuBehavior.Label, labelStyles)
145
+ const ContextMenuItem = styled(ContextMenuBehavior.Item, itemStyles)
146
+ const ContextMenuCheckboxItem = styled(ContextMenuBehavior.CheckboxItem, itemStyles)
147
+ const ContextMenuRadioItem = styled(ContextMenuBehavior.RadioItem, itemStyles)
148
+ const ContextMenuSubTrigger = styled(ContextMenuBehavior.SubTrigger, itemStyles)
149
+ const ContextMenuItemTitle = styled(ContextMenuBehavior.ItemTitle, titleStyles)
150
+ const ContextMenuItemSubtitle = styled(ContextMenuBehavior.ItemSubtitle, subtitleStyles)
151
+ const ContextMenuItemIcon = styled(ContextMenuBehavior.ItemIcon, iconStyles)
152
+ const ContextMenuItemIndicator = styled(
153
+ ContextMenuBehavior.ItemIndicator,
154
+ indicatorStyles
155
+ )
156
+ const ContextMenuSeparator = styled(ContextMenuBehavior.Separator, separatorStyles)
157
+ const ContextMenuArrow = styled(ContextMenuBehavior.Arrow, {
158
+ displayName: 'DemoContextMenuArrow',
159
+ backgroundColor: 'background',
160
+ borderColor: 'border-color',
161
+ borderWidth: 1,
162
+ })
163
+
164
+ const ContextMenuRoot = (props: React.ComponentProps<typeof ContextMenuBehavior>) => (
165
+ <ContextMenuBehavior {...props} />
166
+ )
167
+
168
+ export const ContextMenu = withStaticProperties(ContextMenuRoot, {
169
+ Trigger: ContextMenuBehavior.Trigger,
170
+ Portal: ContextMenuBehavior.Portal,
171
+ Content: ContextMenuContent,
172
+ Preview: ContextMenuBehavior.Preview,
173
+ Group: ContextMenuGroup,
174
+ Label: ContextMenuLabel,
175
+ Item: ContextMenuItem,
176
+ CheckboxItem: ContextMenuCheckboxItem,
177
+ RadioGroup: ContextMenuBehavior.RadioGroup,
178
+ RadioItem: ContextMenuRadioItem,
179
+ ItemIndicator: ContextMenuItemIndicator,
180
+ Separator: ContextMenuSeparator,
181
+ Arrow: ContextMenuArrow,
182
+ Sub: ContextMenuBehavior.Sub,
183
+ SubTrigger: ContextMenuSubTrigger,
184
+ SubContent: ContextMenuSubContent,
185
+ ItemTitle: ContextMenuItemTitle,
186
+ ItemSubtitle: ContextMenuItemSubtitle,
187
+ ItemIcon: ContextMenuItemIcon,
188
+ ItemImage: ContextMenuBehavior.ItemImage,
189
+ }) as unknown as typeof ContextMenuBehavior