@tamagui/core 1.0.0-alpha.8 → 1.0.0-beta.0.207

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 (639) hide show
  1. package/dist/cjs/Tamagui.js +69 -0
  2. package/dist/cjs/Tamagui.js.map +7 -0
  3. package/dist/cjs/ThemeContext.js +29 -0
  4. package/dist/cjs/ThemeContext.js.map +7 -0
  5. package/dist/cjs/ThemeManager.js +211 -0
  6. package/dist/cjs/ThemeManager.js.map +7 -0
  7. package/dist/cjs/conf.js +64 -0
  8. package/dist/cjs/conf.js.map +7 -0
  9. package/dist/cjs/constants/constants.js +21 -15
  10. package/dist/cjs/constants/constants.js.map +2 -2
  11. package/dist/cjs/constants/platform.js +33 -18
  12. package/dist/cjs/constants/platform.js.map +2 -2
  13. package/dist/cjs/constants/rnw.js +21 -3
  14. package/dist/cjs/constants/rnw.js.map +2 -2
  15. package/dist/cjs/contexts/ButtonInsideButtonContext.js +29 -0
  16. package/dist/cjs/contexts/ButtonInsideButtonContext.js.map +7 -0
  17. package/dist/cjs/createComponent.js +371 -225
  18. package/dist/cjs/createComponent.js.map +2 -2
  19. package/dist/cjs/createFont.js +15 -15
  20. package/dist/cjs/createFont.js.map +1 -1
  21. package/dist/cjs/createShorthands.js +19 -3
  22. package/dist/cjs/createShorthands.js.map +1 -1
  23. package/dist/cjs/createTamagui.js +155 -122
  24. package/dist/cjs/createTamagui.js.map +2 -2
  25. package/dist/cjs/createTheme.js +15 -28
  26. package/dist/cjs/createTheme.js.map +2 -2
  27. package/dist/cjs/createTokens.js +19 -22
  28. package/dist/cjs/createTokens.js.map +2 -2
  29. package/dist/cjs/createVariable.js +49 -19
  30. package/dist/cjs/createVariable.js.map +2 -2
  31. package/dist/cjs/defaultComponentState.js +1 -0
  32. package/dist/{helpers/pseudos.js.map → cjs/defaultComponentState.js.map} +0 -0
  33. package/dist/cjs/helpers/RNComponents.js +38 -0
  34. package/dist/cjs/helpers/RNComponents.js.map +7 -0
  35. package/dist/cjs/helpers/addStylesUsingClassname.js +37 -29
  36. package/dist/cjs/helpers/addStylesUsingClassname.js.map +2 -2
  37. package/dist/cjs/helpers/areEqualSets.js +38 -0
  38. package/dist/cjs/helpers/areEqualSets.js.map +7 -0
  39. package/dist/cjs/helpers/createMediaStyle.js +19 -21
  40. package/dist/cjs/helpers/createMediaStyle.js.map +2 -2
  41. package/dist/cjs/helpers/createPropMapper.js +157 -119
  42. package/dist/cjs/helpers/createPropMapper.js.map +2 -2
  43. package/dist/cjs/helpers/createShallowUpdate.js +55 -0
  44. package/dist/cjs/helpers/createShallowUpdate.js.map +7 -0
  45. package/dist/cjs/helpers/createTamaguiProvider.js +45 -26
  46. package/dist/cjs/helpers/createTamaguiProvider.js.map +2 -2
  47. package/dist/cjs/helpers/extendStaticConfig.js +27 -27
  48. package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
  49. package/dist/cjs/helpers/fixNativeShadow.js +19 -3
  50. package/dist/cjs/helpers/fixNativeShadow.js.map +1 -1
  51. package/dist/cjs/helpers/fixNativeShadow.native.js +42 -22
  52. package/dist/cjs/helpers/fixNativeShadow.native.js.map +2 -2
  53. package/dist/cjs/helpers/getExpandedShorthands.js +41 -0
  54. package/dist/cjs/helpers/getExpandedShorthands.js.map +7 -0
  55. package/dist/cjs/helpers/getSize.js +35 -0
  56. package/dist/cjs/helpers/getSize.js.map +7 -0
  57. package/dist/cjs/helpers/getSplitStyles.js +225 -98
  58. package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
  59. package/dist/cjs/helpers/getStylesAtomic.js +116 -56
  60. package/dist/cjs/helpers/getStylesAtomic.js.map +2 -2
  61. package/dist/cjs/helpers/getStylesAtomic.native.js +19 -3
  62. package/dist/cjs/helpers/getStylesAtomic.native.js.map +1 -1
  63. package/dist/cjs/helpers/insertStyleRule.js +101 -25
  64. package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
  65. package/dist/cjs/helpers/isObj.js +19 -3
  66. package/dist/cjs/helpers/isObj.js.map +1 -1
  67. package/dist/cjs/helpers/isTamaguiElement.js +15 -15
  68. package/dist/cjs/helpers/isTamaguiElement.js.map +1 -1
  69. package/dist/cjs/helpers/matchMedia.js +19 -3
  70. package/dist/cjs/helpers/matchMedia.js.map +1 -1
  71. package/dist/cjs/helpers/matchMedia.native.js +16 -13
  72. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  73. package/dist/cjs/helpers/proxyThemeVariables.js +40 -0
  74. package/dist/cjs/helpers/proxyThemeVariables.js.map +7 -0
  75. package/dist/cjs/helpers/themeable.js +29 -24
  76. package/dist/cjs/helpers/themeable.js.map +2 -2
  77. package/dist/cjs/helpers/validate.js +88 -47
  78. package/dist/cjs/helpers/validate.js.map +2 -2
  79. package/dist/cjs/helpers/withStaticProperties.js +32 -0
  80. package/dist/cjs/helpers/withStaticProperties.js.map +7 -0
  81. package/dist/cjs/helpers/wrapThemeManagerContext.js +39 -0
  82. package/dist/cjs/helpers/wrapThemeManagerContext.js.map +7 -0
  83. package/dist/cjs/hooks/useConstant.js +15 -15
  84. package/dist/cjs/hooks/useConstant.js.map +1 -1
  85. package/dist/cjs/hooks/useFeatures.js +146 -18
  86. package/dist/cjs/hooks/useFeatures.js.map +2 -2
  87. package/dist/cjs/hooks/useIsMounted.js +41 -0
  88. package/dist/cjs/hooks/useIsMounted.js.map +7 -0
  89. package/dist/cjs/hooks/useIsTouchDevice.js +39 -0
  90. package/dist/cjs/hooks/useIsTouchDevice.js.map +7 -0
  91. package/dist/cjs/hooks/useMedia.js +54 -59
  92. package/dist/cjs/hooks/useMedia.js.map +2 -2
  93. package/dist/cjs/hooks/usePressable.js +15 -15
  94. package/dist/cjs/hooks/usePressable.js.map +1 -1
  95. package/dist/cjs/hooks/useTheme.js +175 -67
  96. package/dist/cjs/hooks/useTheme.js.map +2 -2
  97. package/dist/cjs/hooks/useUnmountEffect.js +33 -0
  98. package/dist/cjs/hooks/useUnmountEffect.js.map +7 -0
  99. package/dist/cjs/index.js +71 -43
  100. package/dist/cjs/index.js.map +2 -2
  101. package/dist/cjs/static.js +26 -27
  102. package/dist/cjs/static.js.map +2 -2
  103. package/dist/cjs/styled.js +42 -20
  104. package/dist/cjs/styled.js.map +3 -3
  105. package/dist/cjs/types-rnw.js +16 -0
  106. package/dist/cjs/types-rnw.js.map +7 -0
  107. package/dist/cjs/types.js +14 -2
  108. package/dist/cjs/types.js.map +2 -2
  109. package/dist/cjs/views/Stack.js +17 -16
  110. package/dist/cjs/views/Stack.js.map +2 -2
  111. package/dist/cjs/views/Text.js +23 -21
  112. package/dist/cjs/views/Text.js.map +2 -2
  113. package/dist/cjs/views/TextAncestorContext.js +25 -21
  114. package/dist/cjs/views/TextAncestorContext.js.map +2 -2
  115. package/dist/cjs/views/Theme.js +36 -64
  116. package/dist/cjs/views/Theme.js.map +2 -2
  117. package/dist/cjs/views/ThemeInverse.js +20 -16
  118. package/dist/cjs/views/ThemeInverse.js.map +2 -2
  119. package/dist/cjs/views/ThemeProvider.js +37 -37
  120. package/dist/cjs/views/ThemeProvider.js.map +2 -2
  121. package/dist/cjs/views/ThemeReset.js +63 -0
  122. package/dist/cjs/views/ThemeReset.js.map +7 -0
  123. package/dist/esm/Tamagui.js +42 -0
  124. package/dist/esm/Tamagui.js.map +7 -0
  125. package/dist/{views → esm}/ThemeContext.js +0 -0
  126. package/dist/esm/ThemeContext.js.map +7 -0
  127. package/dist/esm/ThemeManager.js +187 -0
  128. package/dist/esm/ThemeManager.js.map +7 -0
  129. package/dist/esm/conf.js +36 -0
  130. package/dist/esm/conf.js.map +7 -0
  131. package/dist/{constants → esm/constants}/constants.js +4 -0
  132. package/dist/esm/constants/constants.js.map +7 -0
  133. package/dist/{constants → esm/constants}/platform.js +8 -1
  134. package/dist/esm/constants/platform.js.map +7 -0
  135. package/dist/{constants → esm/constants}/rnw.js +2 -0
  136. package/dist/esm/constants/rnw.js.map +7 -0
  137. package/dist/esm/contexts/ButtonInsideButtonContext.js +6 -0
  138. package/dist/esm/contexts/ButtonInsideButtonContext.js.map +7 -0
  139. package/dist/esm/createComponent.js +606 -0
  140. package/dist/esm/createComponent.js.map +7 -0
  141. package/dist/{createFont.js → esm/createFont.js} +0 -0
  142. package/dist/{createFont.js.map → esm/createFont.js.map} +2 -2
  143. package/dist/{createShorthands.js → esm/createShorthands.js} +0 -0
  144. package/dist/{createShorthands.js.map → esm/createShorthands.js.map} +2 -2
  145. package/dist/esm/createTamagui.js +201 -0
  146. package/dist/esm/createTamagui.js.map +7 -0
  147. package/dist/esm/createTheme.js +7 -0
  148. package/dist/esm/createTheme.js.map +7 -0
  149. package/dist/{createTokens.js → esm/createTokens.js} +2 -6
  150. package/dist/esm/createTokens.js.map +7 -0
  151. package/dist/esm/createVariable.js +49 -0
  152. package/dist/esm/createVariable.js.map +7 -0
  153. package/dist/esm/defaultComponentState.js +1 -0
  154. package/dist/{types.js.map → esm/defaultComponentState.js.map} +0 -0
  155. package/dist/esm/helpers/RNComponents.js +12 -0
  156. package/dist/esm/helpers/RNComponents.js.map +7 -0
  157. package/dist/{helpers → esm/helpers}/addStylesUsingClassname.js +20 -13
  158. package/dist/esm/helpers/addStylesUsingClassname.js.map +7 -0
  159. package/dist/esm/helpers/areEqualSets.js +16 -0
  160. package/dist/esm/helpers/areEqualSets.js.map +7 -0
  161. package/dist/{helpers → esm/helpers}/createMediaStyle.js +3 -6
  162. package/dist/esm/helpers/createMediaStyle.js.map +7 -0
  163. package/dist/esm/helpers/createPropMapper.js +206 -0
  164. package/dist/esm/helpers/createPropMapper.js.map +7 -0
  165. package/dist/esm/helpers/createShallowUpdate.js +19 -0
  166. package/dist/esm/helpers/createShallowUpdate.js.map +7 -0
  167. package/dist/esm/helpers/createTamaguiProvider.js +40 -0
  168. package/dist/esm/helpers/createTamaguiProvider.js.map +7 -0
  169. package/dist/{helpers → esm/helpers}/extendStaticConfig.js +17 -14
  170. package/dist/esm/helpers/extendStaticConfig.js.map +7 -0
  171. package/dist/{helpers → esm/helpers}/fixNativeShadow.js +0 -0
  172. package/dist/{helpers → esm/helpers}/fixNativeShadow.js.map +2 -2
  173. package/dist/esm/helpers/fixNativeShadow.native.js +34 -0
  174. package/dist/esm/helpers/fixNativeShadow.native.js.map +7 -0
  175. package/dist/esm/helpers/getExpandedShorthands.js +19 -0
  176. package/dist/esm/helpers/getExpandedShorthands.js.map +7 -0
  177. package/dist/esm/helpers/getSize.js +13 -0
  178. package/dist/esm/helpers/getSize.js.map +7 -0
  179. package/dist/esm/helpers/getSplitStyles.js +278 -0
  180. package/dist/esm/helpers/getSplitStyles.js.map +7 -0
  181. package/dist/esm/helpers/getStylesAtomic.js +131 -0
  182. package/dist/esm/helpers/getStylesAtomic.js.map +7 -0
  183. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js +0 -0
  184. package/dist/{helpers → esm/helpers}/getStylesAtomic.native.js.map +2 -2
  185. package/dist/esm/helpers/insertStyleRule.js +94 -0
  186. package/dist/esm/helpers/insertStyleRule.js.map +7 -0
  187. package/dist/{helpers → esm/helpers}/isObj.js +0 -0
  188. package/dist/{helpers → esm/helpers}/isObj.js.map +2 -2
  189. package/dist/{helpers → esm/helpers}/isTamaguiElement.js +2 -1
  190. package/dist/{helpers → esm/helpers}/isTamaguiElement.js.map +2 -2
  191. package/dist/{helpers → esm/helpers}/matchMedia.js +0 -0
  192. package/dist/{helpers → esm/helpers}/matchMedia.js.map +2 -2
  193. package/dist/{helpers → esm/helpers}/matchMedia.native.js +0 -0
  194. package/dist/{helpers → esm/helpers}/matchMedia.native.js.map +2 -2
  195. package/dist/esm/helpers/proxyThemeVariables.js +18 -0
  196. package/dist/esm/helpers/proxyThemeVariables.js.map +7 -0
  197. package/dist/{helpers → esm/helpers}/themeable.js +12 -10
  198. package/dist/esm/helpers/themeable.js.map +7 -0
  199. package/dist/esm/helpers/validate.js +76 -0
  200. package/dist/esm/helpers/validate.js.map +7 -0
  201. package/dist/esm/helpers/withStaticProperties.js +10 -0
  202. package/dist/esm/helpers/withStaticProperties.js.map +7 -0
  203. package/dist/esm/helpers/wrapThemeManagerContext.js +14 -0
  204. package/dist/esm/helpers/wrapThemeManagerContext.js.map +7 -0
  205. package/dist/{hooks → esm/hooks}/useConstant.js +0 -0
  206. package/dist/{hooks → esm/hooks}/useConstant.js.map +2 -2
  207. package/dist/esm/hooks/useFeatures.js +173 -0
  208. package/dist/esm/hooks/useFeatures.js.map +7 -0
  209. package/dist/esm/hooks/useIsMounted.js +19 -0
  210. package/dist/esm/hooks/useIsMounted.js.map +7 -0
  211. package/dist/esm/hooks/useIsTouchDevice.js +17 -0
  212. package/dist/esm/hooks/useIsTouchDevice.js.map +7 -0
  213. package/dist/{hooks → esm/hooks}/useMedia.js +31 -42
  214. package/dist/esm/hooks/useMedia.js.map +7 -0
  215. package/dist/{hooks → esm/hooks}/usePressable.js +2 -1
  216. package/dist/{hooks → esm/hooks}/usePressable.js.map +2 -2
  217. package/dist/esm/hooks/useTheme.js +178 -0
  218. package/dist/esm/hooks/useTheme.js.map +7 -0
  219. package/dist/esm/hooks/useUnmountEffect.js +11 -0
  220. package/dist/esm/hooks/useUnmountEffect.js.map +7 -0
  221. package/dist/{index.js → esm/index.js} +25 -5
  222. package/dist/esm/index.js.map +7 -0
  223. package/dist/{static.js → esm/static.js} +4 -2
  224. package/dist/esm/static.js.map +7 -0
  225. package/dist/esm/styled.js +45 -0
  226. package/dist/esm/styled.js.map +7 -0
  227. package/dist/esm/types-rnw.js +1 -0
  228. package/dist/esm/types-rnw.js.map +7 -0
  229. package/dist/{types.js → esm/types.js} +0 -0
  230. package/dist/esm/types.js.map +7 -0
  231. package/dist/{views → esm/views}/Stack.js +1 -0
  232. package/dist/esm/views/Stack.js.map +7 -0
  233. package/dist/{views → esm/views}/Text.js +6 -4
  234. package/dist/esm/views/Text.js.map +7 -0
  235. package/dist/esm/views/TextAncestorContext.js +18 -0
  236. package/dist/esm/views/TextAncestorContext.js.map +7 -0
  237. package/dist/esm/views/Theme.js +35 -0
  238. package/dist/esm/views/Theme.js.map +7 -0
  239. package/dist/{views → esm/views}/ThemeInverse.js +1 -1
  240. package/dist/{views → esm/views}/ThemeInverse.js.map +3 -3
  241. package/dist/esm/views/ThemeProvider.js +42 -0
  242. package/dist/esm/views/ThemeProvider.js.map +7 -0
  243. package/dist/esm/views/ThemeReset.js +38 -0
  244. package/dist/esm/views/ThemeReset.js.map +7 -0
  245. package/dist/jsx/Tamagui.js +41 -0
  246. package/dist/jsx/ThemeContext.js +5 -0
  247. package/dist/jsx/ThemeManager.js +186 -0
  248. package/dist/jsx/conf.js +35 -0
  249. package/dist/jsx/constants/constants.js +17 -0
  250. package/dist/jsx/constants/platform.js +25 -0
  251. package/dist/jsx/constants/rnw.js +23 -0
  252. package/dist/jsx/contexts/ButtonInsideButtonContext.js +5 -0
  253. package/dist/jsx/createComponent.js +592 -0
  254. package/dist/jsx/createFont.js +27 -0
  255. package/dist/jsx/createShorthands.js +9 -0
  256. package/dist/jsx/createTamagui.js +200 -0
  257. package/dist/jsx/createTheme.js +6 -0
  258. package/dist/jsx/createTokens.js +28 -0
  259. package/dist/jsx/createVariable.js +48 -0
  260. package/dist/jsx/defaultComponentState.js +0 -0
  261. package/dist/jsx/helpers/RNComponents.js +11 -0
  262. package/dist/jsx/helpers/addStylesUsingClassname.js +63 -0
  263. package/dist/jsx/helpers/areEqualSets.js +15 -0
  264. package/dist/jsx/helpers/createMediaStyle.js +30 -0
  265. package/dist/jsx/helpers/createPropMapper.js +205 -0
  266. package/dist/jsx/helpers/createShallowUpdate.js +18 -0
  267. package/dist/jsx/helpers/createTamaguiProvider.js +34 -0
  268. package/dist/jsx/helpers/extendStaticConfig.js +61 -0
  269. package/dist/jsx/helpers/fixNativeShadow.js +7 -0
  270. package/dist/jsx/helpers/fixNativeShadow.native.js +33 -0
  271. package/dist/jsx/helpers/getExpandedShorthands.js +18 -0
  272. package/dist/jsx/helpers/getSize.js +12 -0
  273. package/dist/jsx/helpers/getSplitStyles.js +277 -0
  274. package/dist/jsx/helpers/getStylesAtomic.js +130 -0
  275. package/dist/jsx/helpers/getStylesAtomic.native.js +9 -0
  276. package/dist/jsx/helpers/insertStyleRule.js +93 -0
  277. package/dist/jsx/helpers/isObj.js +6 -0
  278. package/dist/jsx/helpers/isTamaguiElement.js +10 -0
  279. package/dist/jsx/helpers/matchMedia.js +17 -0
  280. package/dist/jsx/helpers/matchMedia.native.js +8 -0
  281. package/dist/jsx/helpers/proxyThemeVariables.js +17 -0
  282. package/dist/jsx/helpers/themeable.js +24 -0
  283. package/dist/jsx/helpers/validate.js +75 -0
  284. package/dist/jsx/helpers/withStaticProperties.js +9 -0
  285. package/dist/jsx/helpers/wrapThemeManagerContext.js +10 -0
  286. package/dist/jsx/hooks/useConstant.js +14 -0
  287. package/dist/jsx/hooks/useFeatures.js +167 -0
  288. package/dist/jsx/hooks/useIsMounted.js +18 -0
  289. package/dist/jsx/hooks/useIsTouchDevice.js +16 -0
  290. package/dist/jsx/hooks/useMedia.js +159 -0
  291. package/dist/jsx/hooks/usePressable.js +13 -0
  292. package/dist/jsx/hooks/useTheme.js +177 -0
  293. package/dist/jsx/hooks/useUnmountEffect.js +10 -0
  294. package/dist/jsx/index.js +51 -0
  295. package/dist/jsx/static.js +16 -0
  296. package/dist/jsx/styled.js +44 -0
  297. package/dist/jsx/types-rnw.js +0 -0
  298. package/dist/jsx/types.js +0 -0
  299. package/dist/jsx/views/Stack.js +12 -0
  300. package/dist/jsx/views/Text.js +61 -0
  301. package/dist/jsx/views/TextAncestorContext.js +15 -0
  302. package/dist/jsx/views/Theme.js +31 -0
  303. package/dist/jsx/views/ThemeInverse.js +22 -0
  304. package/dist/jsx/views/ThemeProvider.js +35 -0
  305. package/dist/jsx/views/ThemeReset.js +34 -0
  306. package/package.json +22 -20
  307. package/types/Tamagui.d.ts +30 -0
  308. package/types/Tamagui.d.ts.map +1 -0
  309. package/types/ThemeContext.d.ts +7 -0
  310. package/types/ThemeContext.d.ts.map +1 -0
  311. package/types/ThemeManager.d.ts +49 -0
  312. package/types/ThemeManager.d.ts.map +1 -0
  313. package/types/conf.d.ts +27 -0
  314. package/types/conf.d.ts.map +1 -0
  315. package/{dist/packages/core/src → types}/constants/constants.d.ts +2 -0
  316. package/types/constants/constants.d.ts.map +1 -0
  317. package/{dist/packages/core/src → types}/constants/platform.d.ts +3 -0
  318. package/types/constants/platform.d.ts.map +1 -0
  319. package/{dist/packages/core/src → types}/constants/rnw.d.ts +0 -0
  320. package/types/constants/rnw.d.ts.map +1 -0
  321. package/types/contexts/ButtonInsideButtonContext.d.ts +3 -0
  322. package/types/contexts/ButtonInsideButtonContext.d.ts.map +1 -0
  323. package/types/createComponent.d.ts +19 -0
  324. package/types/createComponent.d.ts.map +1 -0
  325. package/types/createFont.d.ts +3 -0
  326. package/types/createFont.d.ts.map +1 -0
  327. package/{dist/packages/core/src → types}/createShorthands.d.ts +0 -0
  328. package/types/createShorthands.d.ts.map +1 -0
  329. package/types/createTamagui.d.ts +17 -0
  330. package/types/createTamagui.d.ts.map +1 -0
  331. package/types/createTheme.d.ts +7 -0
  332. package/types/createTheme.d.ts.map +1 -0
  333. package/{dist/packages/core/src → types}/createTokens.d.ts +0 -16
  334. package/types/createTokens.d.ts.map +1 -0
  335. package/types/createVariable.d.ts +20 -0
  336. package/types/createVariable.d.ts.map +1 -0
  337. package/types/defaultComponentState.d.ts +1 -0
  338. package/types/defaultComponentState.d.ts.map +1 -0
  339. package/types/helpers/RNComponents.d.ts +2 -0
  340. package/types/helpers/RNComponents.d.ts.map +1 -0
  341. package/types/helpers/addStylesUsingClassname.d.ts +3 -0
  342. package/types/helpers/addStylesUsingClassname.d.ts.map +1 -0
  343. package/types/helpers/areEqualSets.d.ts +2 -0
  344. package/types/helpers/areEqualSets.d.ts.map +1 -0
  345. package/{dist/packages/core/src → types}/helpers/createMediaStyle.d.ts +1 -1
  346. package/types/helpers/createMediaStyle.d.ts.map +1 -0
  347. package/types/helpers/createPropMapper.d.ts +4 -0
  348. package/types/helpers/createPropMapper.d.ts.map +1 -0
  349. package/types/helpers/createShallowUpdate.d.ts +4 -0
  350. package/types/helpers/createShallowUpdate.d.ts.map +1 -0
  351. package/types/helpers/createTamaguiProvider.d.ts +7 -0
  352. package/types/helpers/createTamaguiProvider.d.ts.map +1 -0
  353. package/types/helpers/extendStaticConfig.d.ts +4 -0
  354. package/types/helpers/extendStaticConfig.d.ts.map +1 -0
  355. package/{dist/packages/core/src → types}/helpers/fixNativeShadow.d.ts +0 -0
  356. package/types/helpers/fixNativeShadow.d.ts.map +1 -0
  357. package/types/helpers/fixNativeShadow.native.d.ts +2 -0
  358. package/types/helpers/fixNativeShadow.native.d.ts.map +1 -0
  359. package/types/helpers/getExpandedShorthands.d.ts +3 -0
  360. package/types/helpers/getExpandedShorthands.d.ts.map +1 -0
  361. package/types/helpers/getSize.d.ts +3 -0
  362. package/types/helpers/getSize.d.ts.map +1 -0
  363. package/types/helpers/getSplitStyles.d.ts +19 -0
  364. package/types/helpers/getSplitStyles.d.ts.map +1 -0
  365. package/types/helpers/getStylesAtomic.d.ts +27 -0
  366. package/types/helpers/getStylesAtomic.d.ts.map +1 -0
  367. package/{dist/packages/core/src → types}/helpers/getStylesAtomic.native.d.ts +0 -0
  368. package/types/helpers/getStylesAtomic.native.d.ts.map +1 -0
  369. package/types/helpers/insertStyleRule.d.ts +8 -0
  370. package/types/helpers/insertStyleRule.d.ts.map +1 -0
  371. package/types/helpers/isObj.d.ts +2 -0
  372. package/types/helpers/isObj.d.ts.map +1 -0
  373. package/types/helpers/isTamaguiElement.d.ts +3 -0
  374. package/types/helpers/isTamaguiElement.d.ts.map +1 -0
  375. package/{dist/packages/core/src → types}/helpers/matchMedia.d.ts +0 -0
  376. package/types/helpers/matchMedia.d.ts.map +1 -0
  377. package/{dist/packages/core/src → types}/helpers/matchMedia.native.d.ts +0 -0
  378. package/types/helpers/matchMedia.native.d.ts.map +1 -0
  379. package/types/helpers/proxyThemeVariables.d.ts +2 -0
  380. package/types/helpers/proxyThemeVariables.d.ts.map +1 -0
  381. package/types/helpers/themeable.d.ts +12 -0
  382. package/types/helpers/themeable.d.ts.map +1 -0
  383. package/types/helpers/validate.d.ts +4 -0
  384. package/types/helpers/validate.d.ts.map +1 -0
  385. package/types/helpers/withStaticProperties.d.ts +2 -0
  386. package/types/helpers/withStaticProperties.d.ts.map +1 -0
  387. package/types/helpers/wrapThemeManagerContext.d.ts +3 -0
  388. package/types/helpers/wrapThemeManagerContext.d.ts.map +1 -0
  389. package/{dist/packages/core/src → types}/hooks/useConstant.d.ts +0 -0
  390. package/types/hooks/useConstant.d.ts.map +1 -0
  391. package/types/hooks/useFeatures.d.ts +18 -0
  392. package/types/hooks/useFeatures.d.ts.map +1 -0
  393. package/types/hooks/useIsMounted.d.ts +3 -0
  394. package/types/hooks/useIsMounted.d.ts.map +1 -0
  395. package/types/hooks/useIsTouchDevice.d.ts +2 -0
  396. package/types/hooks/useIsTouchDevice.d.ts.map +1 -0
  397. package/{dist/packages/core/src → types}/hooks/useMedia.d.ts +3 -3
  398. package/types/hooks/useMedia.d.ts.map +1 -0
  399. package/{dist/packages/core/src → types}/hooks/usePressable.d.ts +0 -0
  400. package/types/hooks/usePressable.d.ts.map +1 -0
  401. package/types/hooks/useTheme.d.ts +36 -0
  402. package/types/hooks/useTheme.d.ts.map +1 -0
  403. package/types/hooks/useUnmountEffect.d.ts +2 -0
  404. package/types/hooks/useUnmountEffect.d.ts.map +1 -0
  405. package/types/index.d.ts +42 -0
  406. package/types/index.d.ts.map +1 -0
  407. package/{dist/packages/core/src → types}/static.d.ts +7 -2
  408. package/types/static.d.ts.map +1 -0
  409. package/types/styled.d.ts +16 -0
  410. package/types/styled.d.ts.map +1 -0
  411. package/types/types-rnw.d.ts +74 -0
  412. package/types/types-rnw.d.ts.map +1 -0
  413. package/types/types.d.ts +406 -0
  414. package/types/types.d.ts.map +1 -0
  415. package/types/views/Stack.d.ts +4 -0
  416. package/types/views/Stack.d.ts.map +1 -0
  417. package/types/views/Text.d.ts +4 -0
  418. package/types/views/Text.d.ts.map +1 -0
  419. package/types/views/TextAncestorContext.d.ts +5 -0
  420. package/types/views/TextAncestorContext.d.ts.map +1 -0
  421. package/types/views/Theme.d.ts +12 -0
  422. package/types/views/Theme.d.ts.map +1 -0
  423. package/{dist/packages/core/src → types}/views/ThemeInverse.d.ts +0 -0
  424. package/types/views/ThemeInverse.d.ts.map +1 -0
  425. package/{dist/packages/core/src → types}/views/ThemeProvider.d.ts +1 -1
  426. package/types/views/ThemeProvider.d.ts.map +1 -0
  427. package/types/views/ThemeReset.d.ts +4 -0
  428. package/types/views/ThemeReset.d.ts.map +1 -0
  429. package/dist/cjs/constants/pseudos.js +0 -25
  430. package/dist/cjs/constants/pseudos.js.map +0 -7
  431. package/dist/cjs/static/postProcessStyles.js +0 -40
  432. package/dist/cjs/static/postProcessStyles.js.map +0 -7
  433. package/dist/cjs/views/Animated.js +0 -129
  434. package/dist/cjs/views/Animated.js.map +0 -7
  435. package/dist/cjs/views/ThemeContext.js +0 -29
  436. package/dist/cjs/views/ThemeContext.js.map +0 -7
  437. package/dist/cjs/views/ThemeManagerContext.js +0 -84
  438. package/dist/cjs/views/ThemeManagerContext.js.map +0 -7
  439. package/dist/constants/constants.js.map +0 -7
  440. package/dist/constants/platform.js.map +0 -7
  441. package/dist/constants/pseudos.js +0 -18
  442. package/dist/constants/pseudos.js.map +0 -7
  443. package/dist/constants/rnw.js.map +0 -7
  444. package/dist/constants/styleConstants.js +0 -46
  445. package/dist/constants/styleConstants.js.map +0 -7
  446. package/dist/createComponent.js +0 -463
  447. package/dist/createComponent.js.map +0 -7
  448. package/dist/createTamagui.js +0 -168
  449. package/dist/createTamagui.js.map +0 -7
  450. package/dist/createTheme.js +0 -20
  451. package/dist/createTheme.js.map +0 -7
  452. package/dist/createTokens.js.map +0 -7
  453. package/dist/createVariable.js +0 -25
  454. package/dist/createVariable.js.map +0 -7
  455. package/dist/helpers/addStylesUsingClassname.js.map +0 -7
  456. package/dist/helpers/createMediaStyle.js.map +0 -7
  457. package/dist/helpers/createPropMapper.js +0 -153
  458. package/dist/helpers/createPropMapper.js.map +0 -7
  459. package/dist/helpers/createTamaguiProvider.js +0 -25
  460. package/dist/helpers/createTamaguiProvider.js.map +0 -7
  461. package/dist/helpers/extendStaticConfig.js.map +0 -7
  462. package/dist/helpers/fixNativeShadow.native.js +0 -30
  463. package/dist/helpers/fixNativeShadow.native.js.map +0 -7
  464. package/dist/helpers/getSplitStyles.js +0 -150
  465. package/dist/helpers/getSplitStyles.js.map +0 -7
  466. package/dist/helpers/getStylesAtomic.js +0 -83
  467. package/dist/helpers/getStylesAtomic.js.map +0 -7
  468. package/dist/helpers/insertStyleRule.js +0 -24
  469. package/dist/helpers/insertStyleRule.js.map +0 -7
  470. package/dist/helpers/isComponent.js +0 -10
  471. package/dist/helpers/isComponent.js.map +0 -7
  472. package/dist/helpers/isTamaguiComponent.js +0 -10
  473. package/dist/helpers/isTamaguiComponent.js.map +0 -7
  474. package/dist/helpers/pseudos.js +0 -1
  475. package/dist/helpers/themeable.js.map +0 -7
  476. package/dist/helpers/validate.js +0 -60
  477. package/dist/helpers/validate.js.map +0 -7
  478. package/dist/helpers/validateConfig.js +0 -46
  479. package/dist/helpers/validateConfig.js.map +0 -7
  480. package/dist/helpers/validateTokens.js +0 -29
  481. package/dist/helpers/validateTokens.js.map +0 -7
  482. package/dist/hooks/useFeatures.js +0 -63
  483. package/dist/hooks/useFeatures.js.map +0 -7
  484. package/dist/hooks/useForceUpdate.js +0 -28
  485. package/dist/hooks/useForceUpdate.js.map +0 -7
  486. package/dist/hooks/useMedia.js.map +0 -7
  487. package/dist/hooks/useTheme.js +0 -89
  488. package/dist/hooks/useTheme.js.map +0 -7
  489. package/dist/index.cjs +0 -2202
  490. package/dist/index.cjs.map +0 -7
  491. package/dist/index.js.map +0 -7
  492. package/dist/packages/core/src/constants/constants.d.ts.map +0 -1
  493. package/dist/packages/core/src/constants/platform.d.ts.map +0 -1
  494. package/dist/packages/core/src/constants/pseudos.d.ts +0 -15
  495. package/dist/packages/core/src/constants/pseudos.d.ts.map +0 -1
  496. package/dist/packages/core/src/constants/rnw.d.ts.map +0 -1
  497. package/dist/packages/core/src/createComponent.d.ts +0 -16
  498. package/dist/packages/core/src/createComponent.d.ts.map +0 -1
  499. package/dist/packages/core/src/createShorthands.d.ts.map +0 -1
  500. package/dist/packages/core/src/createTamagui.d.ts +0 -37
  501. package/dist/packages/core/src/createTamagui.d.ts.map +0 -1
  502. package/dist/packages/core/src/createTheme.d.ts +0 -5
  503. package/dist/packages/core/src/createTheme.d.ts.map +0 -1
  504. package/dist/packages/core/src/createTokens.d.ts.map +0 -1
  505. package/dist/packages/core/src/createVariable.d.ts +0 -14
  506. package/dist/packages/core/src/createVariable.d.ts.map +0 -1
  507. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts +0 -2
  508. package/dist/packages/core/src/helpers/addStylesUsingClassname.d.ts.map +0 -1
  509. package/dist/packages/core/src/helpers/createMediaStyle.d.ts.map +0 -1
  510. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts +0 -5
  511. package/dist/packages/core/src/helpers/createTamaguiProvider.d.ts.map +0 -1
  512. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts +0 -5
  513. package/dist/packages/core/src/helpers/extendStaticConfig.d.ts.map +0 -1
  514. package/dist/packages/core/src/helpers/fixNativeShadow.d.ts.map +0 -1
  515. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts +0 -2
  516. package/dist/packages/core/src/helpers/fixNativeShadow.native.d.ts.map +0 -1
  517. package/dist/packages/core/src/helpers/getSplitStyles.d.ts +0 -15
  518. package/dist/packages/core/src/helpers/getSplitStyles.d.ts.map +0 -1
  519. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts +0 -3
  520. package/dist/packages/core/src/helpers/getStylesAtomic.d.ts.map +0 -1
  521. package/dist/packages/core/src/helpers/getStylesAtomic.native.d.ts.map +0 -1
  522. package/dist/packages/core/src/helpers/insertStyleRule.d.ts +0 -2
  523. package/dist/packages/core/src/helpers/insertStyleRule.d.ts.map +0 -1
  524. package/dist/packages/core/src/helpers/matchMedia.d.ts.map +0 -1
  525. package/dist/packages/core/src/helpers/matchMedia.native.d.ts.map +0 -1
  526. package/dist/packages/core/src/helpers/themeable.d.ts +0 -10
  527. package/dist/packages/core/src/helpers/themeable.d.ts.map +0 -1
  528. package/dist/packages/core/src/hooks/useConstant.d.ts.map +0 -1
  529. package/dist/packages/core/src/hooks/useFeatures.d.ts +0 -5
  530. package/dist/packages/core/src/hooks/useFeatures.d.ts.map +0 -1
  531. package/dist/packages/core/src/hooks/useForceUpdate.d.ts +0 -2
  532. package/dist/packages/core/src/hooks/useForceUpdate.d.ts.map +0 -1
  533. package/dist/packages/core/src/hooks/useMedia.d.ts.map +0 -1
  534. package/dist/packages/core/src/hooks/usePressable.d.ts.map +0 -1
  535. package/dist/packages/core/src/hooks/useTheme.d.ts +0 -18
  536. package/dist/packages/core/src/hooks/useTheme.d.ts.map +0 -1
  537. package/dist/packages/core/src/index.d.ts +0 -27
  538. package/dist/packages/core/src/index.d.ts.map +0 -1
  539. package/dist/packages/core/src/static/postProcessStyles.d.ts +0 -7
  540. package/dist/packages/core/src/static/postProcessStyles.d.ts.map +0 -1
  541. package/dist/packages/core/src/static.d.ts.map +0 -1
  542. package/dist/packages/core/src/styled.d.ts +0 -16
  543. package/dist/packages/core/src/styled.d.ts.map +0 -1
  544. package/dist/packages/core/src/types.d.ts +0 -305
  545. package/dist/packages/core/src/types.d.ts.map +0 -1
  546. package/dist/packages/core/src/views/Animated.d.ts +0 -15
  547. package/dist/packages/core/src/views/Animated.d.ts.map +0 -1
  548. package/dist/packages/core/src/views/Stack.d.ts +0 -3
  549. package/dist/packages/core/src/views/Stack.d.ts.map +0 -1
  550. package/dist/packages/core/src/views/Text.d.ts +0 -3
  551. package/dist/packages/core/src/views/Text.d.ts.map +0 -1
  552. package/dist/packages/core/src/views/TextAncestorContext.d.ts +0 -3
  553. package/dist/packages/core/src/views/TextAncestorContext.d.ts.map +0 -1
  554. package/dist/packages/core/src/views/Theme.d.ts +0 -8
  555. package/dist/packages/core/src/views/Theme.d.ts.map +0 -1
  556. package/dist/packages/core/src/views/ThemeContext.d.ts +0 -18
  557. package/dist/packages/core/src/views/ThemeContext.d.ts.map +0 -1
  558. package/dist/packages/core/src/views/ThemeInverse.d.ts.map +0 -1
  559. package/dist/packages/core/src/views/ThemeManagerContext.d.ts +0 -15
  560. package/dist/packages/core/src/views/ThemeManagerContext.d.ts.map +0 -1
  561. package/dist/packages/core/src/views/ThemeProvider.d.ts.map +0 -1
  562. package/dist/packages/helpers/src/AllRules.d.ts +0 -3
  563. package/dist/packages/helpers/src/AllRules.d.ts.map +0 -1
  564. package/dist/packages/helpers/src/concatClassName.d.ts +0 -2
  565. package/dist/packages/helpers/src/concatClassName.d.ts.map +0 -1
  566. package/dist/packages/helpers/src/index.d.ts +0 -5
  567. package/dist/packages/helpers/src/index.d.ts.map +0 -1
  568. package/dist/packages/helpers/src/types.d.ts +0 -8
  569. package/dist/packages/helpers/src/types.d.ts.map +0 -1
  570. package/dist/packages/helpers/src/validStyleProps.d.ts +0 -475
  571. package/dist/packages/helpers/src/validStyleProps.d.ts.map +0 -1
  572. package/dist/static/postProcessStyles.js +0 -18
  573. package/dist/static/postProcessStyles.js.map +0 -7
  574. package/dist/static.js.map +0 -7
  575. package/dist/styled.js +0 -21
  576. package/dist/styled.js.map +0 -7
  577. package/dist/views/Animated.js +0 -79
  578. package/dist/views/Animated.js.map +0 -7
  579. package/dist/views/SafeAreaProvider.js +0 -30
  580. package/dist/views/SafeAreaProvider.js.map +0 -7
  581. package/dist/views/Stack.js.map +0 -7
  582. package/dist/views/Text.js.map +0 -7
  583. package/dist/views/TextAncestorContext.js +0 -18
  584. package/dist/views/TextAncestorContext.js.map +0 -7
  585. package/dist/views/Theme.js +0 -65
  586. package/dist/views/Theme.js.map +0 -7
  587. package/dist/views/ThemeContext.js.map +0 -7
  588. package/dist/views/ThemeManagerContext.js +0 -61
  589. package/dist/views/ThemeManagerContext.js.map +0 -7
  590. package/dist/views/ThemeProvider.js +0 -45
  591. package/dist/views/ThemeProvider.js.map +0 -7
  592. package/src/constants/constants.ts +0 -12
  593. package/src/constants/platform.ts +0 -15
  594. package/src/constants/pseudos.ts +0 -14
  595. package/src/constants/rnw.tsx +0 -20
  596. package/src/createComponent.tsx +0 -612
  597. package/src/createFont.ts +0 -31
  598. package/src/createShorthands.ts +0 -5
  599. package/src/createTamagui.ts +0 -217
  600. package/src/createTheme.ts +0 -19
  601. package/src/createTokens.ts +0 -88
  602. package/src/createVariable.ts +0 -26
  603. package/src/helpers/addStylesUsingClassname.tsx +0 -60
  604. package/src/helpers/createMediaStyle.ts +0 -46
  605. package/src/helpers/createPropMapper.ts +0 -184
  606. package/src/helpers/createTamaguiProvider.tsx +0 -22
  607. package/src/helpers/extendStaticConfig.ts +0 -68
  608. package/src/helpers/fixNativeShadow.native.tsx +0 -27
  609. package/src/helpers/fixNativeShadow.tsx +0 -2
  610. package/src/helpers/getSplitStyles.tsx +0 -200
  611. package/src/helpers/getStylesAtomic.native.ts +0 -3
  612. package/src/helpers/getStylesAtomic.ts +0 -103
  613. package/src/helpers/insertStyleRule.tsx +0 -18
  614. package/src/helpers/isObj.ts +0 -1
  615. package/src/helpers/isTamaguiElement.tsx +0 -5
  616. package/src/helpers/matchMedia.native.ts +0 -6
  617. package/src/helpers/matchMedia.ts +0 -17
  618. package/src/helpers/themeable.tsx +0 -42
  619. package/src/helpers/validate.ts +0 -59
  620. package/src/hooks/useConstant.tsx +0 -10
  621. package/src/hooks/useFeatures.tsx +0 -79
  622. package/src/hooks/useMedia.tsx +0 -194
  623. package/src/hooks/usePressable.tsx +0 -9
  624. package/src/hooks/useTheme.tsx +0 -106
  625. package/src/index.ts +0 -32
  626. package/src/static/postProcessStyles.tsx +0 -20
  627. package/src/static.ts +0 -22
  628. package/src/styled.ts +0 -82
  629. package/src/types.tsx +0 -562
  630. package/src/views/Animated.tsx +0 -121
  631. package/src/views/Stack.tsx +0 -21
  632. package/src/views/Text.tsx +0 -66
  633. package/src/views/TextAncestorContext.tsx +0 -12
  634. package/src/views/Theme.tsx +0 -90
  635. package/src/views/ThemeContext.tsx +0 -5
  636. package/src/views/ThemeInverse.tsx +0 -22
  637. package/src/views/ThemeManagerContext.tsx +0 -62
  638. package/src/views/ThemeProvider.tsx +0 -52
  639. package/types.d.ts +0 -559
@@ -21,7 +21,6 @@ var __spreadValues = (a, b) => {
21
21
  return a;
22
22
  };
23
23
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
24
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
26
25
  var __objRest = (source, exclude) => {
27
26
  var target = {};
@@ -36,98 +35,132 @@ var __objRest = (source, exclude) => {
36
35
  return target;
37
36
  };
38
37
  var __export = (target, all) => {
39
- __markAsModule(target);
40
38
  for (var name in all)
41
39
  __defProp(target, name, { get: all[name], enumerable: true });
42
40
  };
43
- var __reExport = (target, module2, desc) => {
44
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
45
- for (let key of __getOwnPropNames(module2))
46
- if (!__hasOwnProp.call(target, key) && key !== "default")
47
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
41
+ var __copyProps = (to, from, except, desc) => {
42
+ if (from && typeof from === "object" || typeof from === "function") {
43
+ for (let key of __getOwnPropNames(from))
44
+ if (!__hasOwnProp.call(to, key) && key !== except)
45
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
48
46
  }
49
- return target;
50
- };
51
- var __toModule = (module2) => {
52
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
47
+ return to;
53
48
  };
54
- __export(exports, {
49
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
50
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
51
+ var createComponent_exports = {};
52
+ __export(createComponent_exports, {
53
+ AbsoluteFill: () => AbsoluteFill,
55
54
  Spacer: () => Spacer,
56
55
  createComponent: () => createComponent,
57
56
  mouseUps: () => mouseUps,
58
57
  spacedChildren: () => spacedChildren
59
58
  });
60
- var import_helpers = __toModule(require("@tamagui/helpers"));
61
- var import_use_force_update = __toModule(require("@tamagui/use-force-update"));
62
- var import_react = __toModule(require("react"));
63
- var import_react_native = __toModule(require("react-native"));
64
- var import_constants = __toModule(require("./constants/constants"));
65
- var import_platform = __toModule(require("./constants/platform"));
66
- var import_rnw = __toModule(require("./constants/rnw"));
67
- var import_createTamagui = __toModule(require("./createTamagui"));
68
- var import_addStylesUsingClassname = __toModule(require("./helpers/addStylesUsingClassname"));
69
- var import_extendStaticConfig = __toModule(require("./helpers/extendStaticConfig"));
70
- var import_getSplitStyles = __toModule(require("./helpers/getSplitStyles"));
71
- var import_useFeatures = __toModule(require("./hooks/useFeatures"));
72
- var import_usePressable = __toModule(require("./hooks/usePressable"));
73
- var import_TextAncestorContext = __toModule(require("./views/TextAncestorContext"));
74
- var import_ThemeManagerContext = __toModule(require("./views/ThemeManagerContext"));
75
- const mouseUps = new Set();
59
+ module.exports = __toCommonJS(createComponent_exports);
60
+ var import_helpers = require("@tamagui/helpers");
61
+ var import_use_force_update = require("@tamagui/use-force-update");
62
+ var import_react = __toESM(require("react"));
63
+ var import_react_native = require("react-native");
64
+ var import_conf = require("./conf");
65
+ var import_constants = require("./constants/constants");
66
+ var import_platform = require("./constants/platform");
67
+ var import_rnw = require("./constants/rnw");
68
+ var import_createVariable = require("./createVariable");
69
+ var import_createShallowUpdate = require("./helpers/createShallowUpdate");
70
+ var import_extendStaticConfig = require("./helpers/extendStaticConfig");
71
+ var import_getSplitStyles = require("./helpers/getSplitStyles");
72
+ var import_insertStyleRule = require("./helpers/insertStyleRule");
73
+ var import_proxyThemeVariables = require("./helpers/proxyThemeVariables");
74
+ var import_wrapThemeManagerContext = require("./helpers/wrapThemeManagerContext");
75
+ var import_useFeatures = require("./hooks/useFeatures");
76
+ var import_usePressable = require("./hooks/usePressable");
77
+ var import_useTheme = require("./hooks/useTheme");
78
+ var import_TextAncestorContext = require("./views/TextAncestorContext");
79
+ import_react.default["keep"];
80
+ const defaultComponentState = {
81
+ hover: false,
82
+ press: false,
83
+ pressIn: false,
84
+ focus: false,
85
+ mounted: false,
86
+ animation: null
87
+ };
88
+ const mouseUps = /* @__PURE__ */ new Set();
76
89
  if (typeof document !== "undefined") {
77
90
  document.addEventListener("mouseup", () => {
78
91
  mouseUps.forEach((x) => x());
79
92
  mouseUps.clear();
80
93
  });
81
94
  }
82
- function createComponent(configIn) {
83
- let staticConfig;
84
- if ("parsed" in configIn) {
85
- staticConfig = configIn;
86
- } else {
87
- staticConfig = (0, import_extendStaticConfig.parseStaticConfig)(configIn);
95
+ function mergeShorthands({ defaultProps }, { shorthands }) {
96
+ for (const key in defaultProps) {
97
+ defaultProps[shorthands[key] || key] = defaultProps[key];
88
98
  }
89
- const { Component, validStyles, isText, isZStack } = staticConfig;
90
- const validStyleProps = validStyles ?? import_helpers.stylePropsView;
91
- let defaultProps = null;
99
+ }
100
+ __name(mergeShorthands, "mergeShorthands");
101
+ let initialTheme;
102
+ function createComponent(configIn, ParentComponent) {
103
+ const staticConfig = (() => {
104
+ const config = (0, import_extendStaticConfig.extendStaticConfig)(configIn, ParentComponent);
105
+ if ("parsed" in config) {
106
+ return config;
107
+ } else {
108
+ return (0, import_extendStaticConfig.parseStaticConfig)(config);
109
+ }
110
+ })();
111
+ const componentClassName = `is_${staticConfig.componentName}`;
92
112
  let tamaguiConfig;
93
- let defaultsStyle;
94
- let defaultsClassName = "";
95
- let initialTheme;
113
+ let AnimatedText;
114
+ let AnimatedView;
115
+ let avoidClasses = true;
116
+ let defaultNativeStyle;
117
+ let defaultNativeStyleSheet;
118
+ let initialSplitStyles;
119
+ function addPseudoToStyles(styles, name, pseudos) {
120
+ const pseudoStyle = pseudos[name];
121
+ const shouldNestObject = import_platform.isWeb && name !== "enterStyle" && name !== "exitStyle";
122
+ if (pseudoStyle) {
123
+ styles.push(shouldNestObject ? { [name]: pseudoStyle } : pseudoStyle);
124
+ }
125
+ const defaultPseudoStyle = initialSplitStyles.pseudos[name];
126
+ if (defaultPseudoStyle) {
127
+ styles.push(shouldNestObject ? { [name]: defaultPseudoStyle } : defaultPseudoStyle);
128
+ }
129
+ }
130
+ __name(addPseudoToStyles, "addPseudoToStyles");
96
131
  const component = (0, import_react.forwardRef)((props, forwardedRef) => {
97
- var _b;
98
- const forceUpdate = (0, import_use_force_update.useForceUpdate)();
99
- const features = (0, import_useFeatures.useFeatures)(props, { forceUpdate });
100
- const manager = (0, import_react.useContext)(import_ThemeManagerContext.ThemeManagerContext);
101
- const [state, set_] = (0, import_react.useState)(() => ({
102
- hover: false,
103
- press: false,
104
- pressIn: false,
105
- theme: manager.name
106
- }));
107
- const set = /* @__PURE__ */ __name((next) => set_((prev) => {
108
- for (const key in next) {
109
- if (prev[key] !== next[key]) {
110
- return __spreadValues(__spreadValues({}, prev), next);
111
- }
132
+ var _a, _c, _d, _e;
133
+ const { Component, componentName, isText, isZStack } = staticConfig;
134
+ if (process.env.NODE_ENV === "development") {
135
+ if (props["debug"]) {
136
+ console.warn(staticConfig.componentName || (Component == null ? void 0 : Component.displayName) || (Component == null ? void 0 : Component.name) || "[Unnamed Component]", "debug on");
137
+ console.log("props in:", props);
138
+ if (props["debug"] === "break")
139
+ debugger;
112
140
  }
113
- return prev;
114
- }), "set");
115
- if (process.env.NODE_ENV === "development" && !isText && import_platform.isWeb) {
116
- import_react.Children.toArray(props.children).forEach((item) => {
117
- if (typeof item === "string") {
118
- console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <View>.`);
119
- }
120
- });
121
141
  }
122
- const hasTextAncestor = import_platform.isWeb ? (0, import_react.useContext)(import_TextAncestorContext.TextAncestorContext) : false;
123
- const hostRef = (0, import_react.useRef)(null);
124
- const {
125
- viewProps: viewPropsIn,
142
+ const forceUpdate = (0, import_use_force_update.useForceUpdate)();
143
+ const theme = (0, import_useTheme.useTheme)(props.theme, staticConfig.componentName, props, forceUpdate);
144
+ const [state, set_] = (0, import_react.useState)(defaultComponentState);
145
+ const setStateShallow = (0, import_createShallowUpdate.createShallowUpdate)(set_);
146
+ const shouldAvoidClasses = !!(props.animation && avoidClasses);
147
+ const splitStyles = (0, import_getSplitStyles.getSplitStyles)(props, staticConfig, theme, shouldAvoidClasses ? __spreadProps(__spreadValues({}, state), { noClassNames: true, resolveVariablesAs: "value" }) : state, shouldAvoidClasses ? null : initialSplitStyles.classNames);
148
+ const { viewProps: viewPropsIn, pseudos, medias, style, classNames } = splitStyles;
149
+ const useAnimations = (_a = tamaguiConfig.animations) == null ? void 0 : _a.useAnimations;
150
+ const isAnimated = !!(useAnimations && props.animation);
151
+ const hasEnterStyle = !!props.enterStyle;
152
+ const features = (0, import_useFeatures.useFeatures)(props, {
153
+ forceUpdate,
154
+ setStateShallow,
155
+ useAnimations,
156
+ state,
157
+ style: props.animation ? __spreadValues(__spreadValues({}, defaultNativeStyle), style) : null,
126
158
  pseudos,
127
- style,
128
- classNames
129
- } = (0, import_getSplitStyles.getSplitStyles)(props, staticConfig, manager.theme || initialTheme);
130
- const _a = viewPropsIn, {
159
+ staticConfig,
160
+ theme,
161
+ onDidAnimate: props.onDidAnimate
162
+ });
163
+ const _b = viewPropsIn, {
131
164
  tag,
132
165
  hitSlop,
133
166
  children,
@@ -159,11 +192,16 @@ function createComponent(configIn) {
159
192
  onStartShouldSetResponder,
160
193
  onStartShouldSetResponderCapture,
161
194
  onMouseDown,
162
- onClick,
195
+ nativeID,
163
196
  accessible,
164
197
  accessibilityRole,
198
+ collapsable,
199
+ focusable,
200
+ onClick,
201
+ theme: _themeProp,
202
+ defaultVariants,
165
203
  onLayout
166
- } = _a, viewProps = __objRest(_a, [
204
+ } = _b, viewPropsRest = __objRest(_b, [
167
205
  "tag",
168
206
  "hitSlop",
169
207
  "children",
@@ -195,11 +233,53 @@ function createComponent(configIn) {
195
233
  "onStartShouldSetResponder",
196
234
  "onStartShouldSetResponderCapture",
197
235
  "onMouseDown",
198
- "onClick",
236
+ "nativeID",
199
237
  "accessible",
200
238
  "accessibilityRole",
239
+ "collapsable",
240
+ "focusable",
241
+ "onClick",
242
+ "theme",
243
+ "defaultVariants",
201
244
  "onLayout"
202
245
  ]);
246
+ let viewProps = viewPropsRest;
247
+ if (process.env.NODE_ENV === "development" && !isText && import_platform.isWeb) {
248
+ import_react.Children.toArray(props.children).forEach((item) => {
249
+ if (typeof item === "string") {
250
+ console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <View>.`);
251
+ }
252
+ });
253
+ }
254
+ const hasTextAncestor = import_platform.isWeb ? (0, import_react.useContext)(import_TextAncestorContext.TextAncestorContext) : false;
255
+ const hostRef = (0, import_react.useRef)(null);
256
+ const internal = (0, import_react.useRef)();
257
+ if (!internal.current) {
258
+ internal.current = {
259
+ isMounted: true
260
+ };
261
+ }
262
+ (0, import_platform.useIsomorphicLayoutEffect)(() => {
263
+ if (typeof window !== "undefined" && (hasEnterStyle || props.animation)) {
264
+ setStateShallow({
265
+ mounted: true
266
+ });
267
+ }
268
+ internal.current.isMounted = true;
269
+ return () => {
270
+ mouseUps.delete(unPress);
271
+ internal.current.isMounted = false;
272
+ };
273
+ }, [hasEnterStyle, props.animation]);
274
+ if (nativeID) {
275
+ viewProps.id = nativeID;
276
+ }
277
+ if (import_platform.isAndroid) {
278
+ if (collapsable)
279
+ viewProps.collapsable = collapsable;
280
+ if (focusable)
281
+ viewProps.focusable = focusable;
282
+ }
203
283
  if (!import_platform.isWeb) {
204
284
  if (accessible)
205
285
  viewProps.accessible = accessible;
@@ -226,53 +306,51 @@ function createComponent(configIn) {
226
306
  onStartShouldSetResponderCapture
227
307
  });
228
308
  }
229
- const isTracking = (0, import_react.useRef)(false);
230
- const internal = (0, import_react.useRef)();
231
- if (!internal.current) {
232
- internal.current = {
233
- isMounted: true
234
- };
309
+ const isTaggable = !Component || typeof Component === "string";
310
+ const element = import_platform.isWeb ? isTaggable ? tag || Component : Component : Component;
311
+ const BaseTextComponent = !import_platform.isWeb ? import_react_native.Text : element || "span";
312
+ const BaseViewComponent = !import_platform.isWeb ? import_react_native.View : element || (hasTextAncestor ? "span" : "div");
313
+ let ViewComponent = isText ? (isAnimated ? AnimatedText || import_react_native.Text : null) || BaseTextComponent : (isAnimated ? AnimatedView || import_react_native.View : null) || BaseViewComponent;
314
+ ViewComponent = Component || ViewComponent;
315
+ let styles;
316
+ const isStringElement = typeof ViewComponent === "string";
317
+ const animationStyles = state.animation ? state.animation.style : null;
318
+ if (isStringElement && shouldAvoidClasses) {
319
+ styles = __spreadValues(__spreadValues(__spreadValues({}, defaultNativeStyle), animationStyles), medias);
320
+ } else {
321
+ styles = [
322
+ import_platform.isWeb ? null : defaultNativeStyleSheet ? defaultNativeStyleSheet.base : null,
323
+ animationStyles ? animationStyles : style,
324
+ medias
325
+ ];
326
+ if (!animationStyles) {
327
+ !state.mounted && addPseudoToStyles(styles, "enterStyle", pseudos);
328
+ state.hover && addPseudoToStyles(styles, "hoverStyle", pseudos);
329
+ state.focus && addPseudoToStyles(styles, "focusStyle", pseudos);
330
+ state.press && addPseudoToStyles(styles, "pressStyle", pseudos);
331
+ }
235
332
  }
236
- (0, import_react.useEffect)(() => {
237
- internal.current.isMounted = true;
238
- const dispose = manager == null ? void 0 : manager.onChangeTheme((name) => {
239
- if (isTracking.current) {
240
- set({ theme: name });
241
- }
242
- });
243
- return () => {
244
- dispose();
245
- mouseUps.delete(unPress);
246
- isTracking.current = false;
247
- internal.current.isMounted = false;
248
- };
249
- }, [manager]);
250
- const element = import_platform.isWeb ? !Component || typeof Component === "string" ? tag || Component : Component : Component;
251
- const ReactView = !import_platform.isWeb ? import_react_native.View : element || (hasTextAncestor ? "span" : "div");
252
- const ReactText = !import_platform.isWeb ? import_react_native.Text : element || "span";
253
- const ViewComponent = isText ? ReactText : ReactView;
254
- const isHovering = !import_platform.isTouchDevice && !disabled && pseudos && state.hover;
255
- const isPressing = !disabled && pseudos && state.press;
256
- const styles = [
257
- style,
258
- isHovering ? pseudos.hoverStyle || null : null,
259
- isPressing ? pseudos.pressStyle || null : null
260
- ];
261
333
  if (import_platform.isWeb) {
262
- const stylesClassNames = (0, import_addStylesUsingClassname.useStylesAsClassname)(styles);
263
- const classList = isText ? [
264
- defaultsClassName,
265
- classNames,
266
- stylesClassNames,
267
- props.className
268
- ] : [defaultsClassName, props.className, classNames, stylesClassNames];
269
- const className = (0, import_helpers.concatClassName)(...classList);
270
- if (process.env.NODE_ENV === "development") {
271
- if (props["debug"]) {
272
- console.log("\u{1F95A} className", { style, styles, classList, stylesClassNames, className });
334
+ if (!shouldAvoidClasses) {
335
+ const fontFamilyName = isText ? props.fontFamily || staticConfig.defaultProps.fontFamily : null;
336
+ const fontFamily = fontFamilyName && fontFamilyName[0] === "$" ? fontFamilyName.slice(1) : null;
337
+ const classList = [
338
+ componentName ? componentClassName : "",
339
+ fontFamily ? `font_${fontFamily}` : "",
340
+ theme.className,
341
+ classNames ? Object.values(classNames).join(" ") : ""
342
+ ];
343
+ const className = classList.join(" ");
344
+ if (process.env.NODE_ENV === "development") {
345
+ if (props["debug"]) {
346
+ console.log(" \xBB className", { isStringElement, pseudos, state, classNames, propsClassName: props.className, style, classList, className: className.trim().split(" "), themeClassName: theme.className, values: Object.fromEntries(Object.entries(classNames).map(([k, v]) => [v, (0, import_insertStyleRule.getAllSelectors)()[v]])) });
347
+ }
273
348
  }
349
+ viewProps.className = className;
350
+ viewProps.style = animationStyles;
351
+ } else {
352
+ viewProps.style = styles;
274
353
  }
275
- viewProps.className = className;
276
354
  } else {
277
355
  viewProps.style = styles;
278
356
  }
@@ -282,7 +360,13 @@ function createComponent(configIn) {
282
360
  if (import_platform.isWeb) {
283
361
  const platformMethodsRef = import_rnw.rnw.usePlatformMethods(viewProps);
284
362
  const setRef = import_rnw.rnw.useMergeRefs(hostRef, platformMethodsRef, forwardedRef);
285
- viewProps.ref = setRef;
363
+ if (!isAnimated) {
364
+ viewProps.ref = setRef;
365
+ } else {
366
+ if (forwardedRef) {
367
+ viewProps.ref = forwardedRef;
368
+ }
369
+ }
286
370
  if (props.href != null && hrefAttrs != null) {
287
371
  const { download, rel, target } = hrefAttrs;
288
372
  if (download != null) {
@@ -300,16 +384,16 @@ function createComponent(configIn) {
300
384
  viewProps.ref = forwardedRef;
301
385
  }
302
386
  }
303
- const attachPress = !!(pseudos && pseudos.pressStyle || onPress || onPressOut || onPressIn || onClick);
304
- const attachHover = import_platform.isWeb && !import_platform.isTouchDevice && !!(pseudos && pseudos.hoverStyle || onHoverIn || onHoverOut || onMouseEnter || onMouseLeave);
305
- const shouldAttach = internal.current.hasEverHadEvents || attachPress || attachHover || "pressStyle" in props || "onPress" in props || "onPressIn" in props || "onPressOut" in props || import_platform.isWeb && ("hoverStyle" in props || "onClick" in props || "onHoverIn" in props || "onHoverOut" in props || "onMouseEnter" in props || "onMouseLeave" in props);
306
- if (shouldAttach) {
307
- internal.current.hasEverHadEvents = true;
308
- }
387
+ const initialPseudos = initialSplitStyles.pseudos;
388
+ const attachPress = !!(pseudos && pseudos.pressStyle || initialPseudos && initialPseudos.pressStyle || onPress || onPressOut || onPressIn || onClick);
389
+ const isHoverable = import_platform.isWeb && !import_platform.isTouchDevice;
390
+ const attachHover = isHoverable && !!(pseudos && pseudos.hoverStyle || onHoverIn || onHoverOut || onMouseEnter || onMouseLeave);
391
+ const pressEventKey = isStringElement ? "onClick" : "onPress";
392
+ const shouldAttach = attachPress || attachHover || "pressStyle" in props || "onPress" in props || "onPressIn" in props || "onPressOut" in props || import_platform.isWeb && ("hoverStyle" in props || "onHoverIn" in props || "onHoverOut" in props || "onMouseEnter" in props || "onMouseLeave" in props);
309
393
  const unPress = (0, import_react.useCallback)(() => {
310
394
  if (!internal.current.isMounted)
311
395
  return;
312
- set({
396
+ setStateShallow({
313
397
  press: false,
314
398
  pressIn: false
315
399
  });
@@ -319,8 +403,8 @@ function createComponent(configIn) {
319
403
  unPress();
320
404
  onPressOut == null ? void 0 : onPressOut(e);
321
405
  }
322
- }), import_platform.isWeb && !import_platform.isTouchDevice && {
323
- onMouseEnter: attachHover || attachPress ? (e) => {
406
+ }), isHoverable && {
407
+ onMouseEnter: attachHover ? (e) => {
324
408
  let next = {};
325
409
  if (attachHover) {
326
410
  next.hover = true;
@@ -329,12 +413,12 @@ function createComponent(configIn) {
329
413
  next.press = true;
330
414
  }
331
415
  if (Object.keys(next).length) {
332
- set(next);
416
+ setStateShallow(next);
333
417
  }
334
418
  onHoverIn == null ? void 0 : onHoverIn(e);
335
419
  onMouseEnter == null ? void 0 : onMouseEnter(e);
336
420
  } : void 0,
337
- onMouseLeave: attachHover || attachPress ? (e) => {
421
+ onMouseLeave: attachHover ? (e) => {
338
422
  let next = {};
339
423
  mouseUps.add(unPress);
340
424
  if (attachHover) {
@@ -345,114 +429,153 @@ function createComponent(configIn) {
345
429
  next.pressIn = false;
346
430
  }
347
431
  if (Object.keys(next).length) {
348
- set(next);
432
+ setStateShallow(next);
349
433
  }
350
434
  onHoverOut == null ? void 0 : onHoverOut(e);
351
435
  onMouseLeave == null ? void 0 : onMouseLeave(e);
352
436
  } : void 0
353
437
  }), {
354
438
  onMouseDown: attachPress ? (e) => {
355
- set({
439
+ setStateShallow({
356
440
  press: true,
357
441
  pressIn: true
358
442
  });
359
443
  onPressIn == null ? void 0 : onPressIn(e);
360
444
  onMouseDown == null ? void 0 : onMouseDown(e);
361
- } : onPressIn,
362
- onClick: attachPress ? (e) => {
445
+ } : null,
446
+ [pressEventKey]: attachPress ? (e) => {
363
447
  onPress == null ? void 0 : onPress(e);
364
- onClick == null ? void 0 : onClick(e);
365
448
  unPress();
366
449
  onPressOut == null ? void 0 : onPressOut(e);
367
- } : onPressOut
450
+ onClick == null ? void 0 : onClick(e);
451
+ } : null
368
452
  }) : null;
369
- if (events) {
370
- if (typeof ViewComponent !== "string") {
371
- const [pressProps] = (0, import_usePressable.usePressable)({
372
- disabled,
373
- hitSlop,
374
- onPressIn: events.onMouseDown,
375
- onPressOut: events.onPressOut,
376
- onPress: events.onClick
377
- });
378
- Object.assign(viewProps, pressProps);
379
- } else {
380
- Object.assign(viewProps, events);
381
- }
382
- }
383
- const childEls = spacedChildren({
453
+ let childEls = !children ? children : (0, import_wrapThemeManagerContext.wrapThemeManagerContext)(spacedChildren({
384
454
  children,
385
455
  space,
386
- flexDirection: props.flexDirection || (defaultProps == null ? void 0 : defaultProps.flexDirection),
456
+ flexDirection: props.flexDirection || ((_c = staticConfig.defaultProps) == null ? void 0 : _c.flexDirection),
387
457
  isZStack
458
+ }), (0, import_useTheme.getThemeManagerIfChanged)(theme));
459
+ const [pressProps] = (0, import_usePressable.usePressable)(events ? __spreadProps(__spreadValues({
460
+ disabled
461
+ }, hitSlop && {
462
+ hitSlop
463
+ }), {
464
+ onPressIn: events.onMouseDown,
465
+ onPressOut: events.onPressOut,
466
+ onPress: events[pressEventKey]
467
+ }) : {
468
+ disabled: true
388
469
  });
389
470
  let content;
390
- if (import_platform.isWeb && import_rnw.rnw) {
391
- const domProps = import_rnw.rnw.createDOMProps(viewProps);
392
- const className = domProps.className && domProps.className !== viewProps.className ? `${domProps.className} ${viewProps.className}` : viewProps.className;
393
- Object.assign(viewProps, domProps);
394
- viewProps.className = className;
395
- content = (0, import_react.createElement)(ViewComponent, viewProps, childEls);
396
- } else {
397
- content = (0, import_react.createElement)(ViewComponent, viewProps, childEls);
471
+ if (import_platform.isWeb) {
472
+ if (staticConfig.isReactNativeWeb) {
473
+ viewProps.dataSet = __spreadProps(__spreadValues({}, viewProps.dataSet), {
474
+ className: viewProps.className
475
+ });
476
+ } else {
477
+ const rnProps = import_rnw.rnw.createDOMProps(viewProps);
478
+ const className = rnProps.className && rnProps.className !== viewProps.className ? `${rnProps.className} ${viewProps.className}` : viewProps.className;
479
+ Object.assign(viewProps, rnProps);
480
+ if (className) {
481
+ viewProps.className = className;
482
+ }
483
+ }
398
484
  }
399
- const shouldWrapTextAncestor = import_platform.isWeb && isText && !hasTextAncestor;
400
- if (shouldWrapTextAncestor) {
401
- content = (0, import_react.createElement)(import_TextAncestorContext.TextAncestorContext.Provider, { value: true }, content);
485
+ if (events) {
486
+ if (!isStringElement) {
487
+ Object.assign(viewProps, pressProps);
488
+ } else {
489
+ Object.assign(viewProps, events);
490
+ }
491
+ }
492
+ content = (0, import_react.createElement)(ViewComponent, viewProps, childEls);
493
+ if (import_platform.isWeb && events && attachHover) {
494
+ content = /* @__PURE__ */ import_react.default.createElement("span", {
495
+ className: "tui_Hoverable",
496
+ style: {
497
+ display: "contents"
498
+ },
499
+ onMouseEnter: events.onMouseEnter,
500
+ onMouseLeave: events.onMouseLeave
501
+ }, content);
402
502
  }
403
503
  if (process.env.NODE_ENV === "development") {
404
504
  if (props["debug"]) {
405
505
  viewProps["debug"] = true;
406
- console.log("\u{1F95A} props in:", props);
407
- console.log("\u{1F95A} props out:", viewProps);
408
- console.log((_b = props.onClick) == null ? void 0 : _b.toString());
409
- console.log("\u{1F95A} etc:", { shouldAttach, ViewComponent, viewProps, styles, pseudos, content, childEls });
410
- if (import_platform.isWeb) {
411
- console.log("\u{1F95A} component info", { staticConfig, tamaguiConfig });
412
- }
506
+ console.log(" \xBB ", __spreadValues({ propsIn: __spreadValues({}, props), propsOut: __spreadValues({}, viewProps), state, splitStyles, animationStyles, isStringElement, classNamesIn: (_d = props.className) == null ? void 0 : _d.split(" "), classNamesOut: (_e = viewProps.className) == null ? void 0 : _e.split(" "), pressProps, events, shouldAttach, ViewComponent, viewProps, styles, pseudos, content, childEls, shouldAvoidClasses, avoidClasses, animation: props.animation, style, defaultNativeStyle, initialSplitStyles }, typeof window !== "undefined" ? { theme, themeState: theme.__state, themeClassName: theme.className, staticConfig, tamaguiConfig } : null));
413
507
  }
414
508
  }
415
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, features, content);
509
+ if (features.length) {
510
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, features, content);
511
+ }
512
+ return content;
416
513
  });
417
- (0, import_createTamagui.onConfiguredOnce)((conf) => {
418
- var _a;
514
+ component.displayName = staticConfig.componentName;
515
+ (0, import_conf.onConfiguredOnce)((conf) => {
516
+ var _a, _b, _c, _d;
517
+ if (process.env.IS_STATIC === "is_static") {
518
+ return;
519
+ }
419
520
  tamaguiConfig = conf;
420
- initialTheme = conf.themes[conf.defaultTheme || Object.keys(conf.themes)[0]];
421
- const next = (0, import_getSplitStyles.getSplitStyles)(staticConfig.defaultProps, staticConfig, initialTheme, true);
422
- if (import_platform.isWeb) {
423
- if (next.classNames) {
424
- defaultsClassName += next.classNames + " ";
425
- }
426
- defaultsClassName += (0, import_addStylesUsingClassname.addStylesUsingClassname)([next.style, next.pseudos]);
427
- } else {
428
- if (!hasWarnedOnce) {
429
- hasWarnedOnce = true;
430
- console.log("\u26A0\uFE0F TODO account for default styles for media queries");
431
- }
521
+ mergeShorthands(staticConfig, tamaguiConfig);
522
+ avoidClasses = !!((_a = tamaguiConfig.animations) == null ? void 0 : _a.avoidClasses);
523
+ AnimatedText = (_b = tamaguiConfig.animations) == null ? void 0 : _b.Text;
524
+ AnimatedView = (_c = tamaguiConfig == null ? void 0 : tamaguiConfig.animations) == null ? void 0 : _c.View;
525
+ initialTheme = initialTheme || (0, import_proxyThemeVariables.proxyThemeVariables)(conf.themes[conf.defaultTheme || Object.keys(conf.themes)[0]]);
526
+ initialSplitStyles = (0, import_getSplitStyles.getSplitStyles)(staticConfig.defaultProps, staticConfig, initialTheme, {
527
+ mounted: true,
528
+ hover: false,
529
+ press: false,
530
+ pressIn: false,
531
+ focus: false,
532
+ resolveVariablesAs: "both",
533
+ keepVariantsAsProps: true
534
+ });
535
+ const { style, viewProps } = initialSplitStyles;
536
+ defaultNativeStyle = {};
537
+ for (const key in style) {
538
+ const v = style[key];
539
+ defaultNativeStyle[key] = (0, import_createVariable.isVariable)(v) ? v.val : v;
432
540
  }
433
- component.defaultProps = __spreadValues(__spreadValues({}, next.viewProps), component.defaultProps);
434
- if (process.env.NODE_ENV === "development") {
435
- if ((_a = staticConfig.defaultProps) == null ? void 0 : _a.debug) {
436
- console.log("tamagui debug component:", next, defaultsClassName, component.defaultProps);
541
+ defaultNativeStyleSheet = import_react_native.StyleSheet.create({
542
+ base: defaultNativeStyle
543
+ });
544
+ component.defaultProps = __spreadValues(__spreadValues({}, viewProps), component.defaultProps);
545
+ if (process.env.NODE_ENV === "development" && ((_d = staticConfig.defaultProps) == null ? void 0 : _d.debug)) {
546
+ if (process.env.IS_STATIC !== "is_static") {
547
+ console.log(`\u{1F41B} [${staticConfig.componentName || "Component"}]`, {
548
+ staticConfig,
549
+ initialSplitStyles
550
+ });
437
551
  }
438
552
  }
439
553
  });
440
- component["staticConfig"] = __spreadValues({
441
- validStyles: validStyleProps
554
+ let res = component;
555
+ if (configIn.memo) {
556
+ res = (0, import_react.memo)(res);
557
+ }
558
+ res["staticConfig"] = __spreadValues({
559
+ validStyles: staticConfig.validStyles || import_helpers.stylePropsView
442
560
  }, staticConfig);
443
- const res = component;
444
- res["extractable"] = (Component2, conf) => {
445
- Component2["staticConfig"] = (0, import_extendStaticConfig.extendStaticConfig)(res, __spreadProps(__spreadValues({}, conf), {
561
+ if (process.env.NODE_ENV === "development") {
562
+ res["whyDidYouRender"] = true;
563
+ }
564
+ res["extractable"] = (Component, conf) => {
565
+ Component["staticConfig"] = (0, import_extendStaticConfig.extendStaticConfig)(__spreadProps(__spreadValues({
566
+ Component
567
+ }, conf), {
446
568
  neverFlatten: true,
447
- defaultProps: __spreadValues(__spreadValues({}, Component2.defaultProps), conf == null ? void 0 : conf.defaultProps)
448
- }));
449
- return Component2;
569
+ defaultProps: __spreadValues(__spreadValues({}, Component.defaultProps), conf == null ? void 0 : conf.defaultProps)
570
+ }), res);
571
+ return Component;
450
572
  };
451
573
  return res;
452
574
  }
453
575
  __name(createComponent, "createComponent");
454
- let hasWarnedOnce = false;
455
576
  const Spacer = createComponent({
577
+ memo: true,
578
+ componentName: "Spacer",
456
579
  defaultProps: __spreadProps(__spreadValues({}, import_constants.stackDefaultStyles), {
457
580
  size: true
458
581
  }),
@@ -460,18 +583,28 @@ const Spacer = createComponent({
460
583
  size: {
461
584
  "...size": (size, { tokens }) => {
462
585
  size = size == true ? "$true" : size;
586
+ const sizePx = tokens.size[size] ?? size;
463
587
  return {
464
- width: tokens.size[size] ?? size,
465
- height: tokens.size[size] ?? size
588
+ width: sizePx,
589
+ height: sizePx,
590
+ minWidth: sizePx,
591
+ minHeight: sizePx
466
592
  };
467
593
  }
468
594
  },
595
+ flex: {
596
+ true: {
597
+ flex: 1
598
+ }
599
+ },
469
600
  direction: {
470
601
  horizontal: {
471
- height: 0
602
+ height: 0,
603
+ minHeight: 0
472
604
  },
473
605
  vertical: {
474
- width: 0
606
+ width: 0,
607
+ minWidth: 0
475
608
  }
476
609
  }
477
610
  }
@@ -480,52 +613,65 @@ function spacedChildren({
480
613
  isZStack,
481
614
  children,
482
615
  space,
483
- flexDirection
616
+ flexDirection,
617
+ spaceFlex
484
618
  }) {
485
619
  var _a;
486
- if (!space && !isZStack) {
487
- return children;
488
- }
489
620
  const childrenList = import_react.Children.toArray(children);
490
621
  const len = childrenList.length;
491
622
  if (len === 1) {
492
- return children;
623
+ return childrenList;
493
624
  }
494
625
  const next = [];
495
626
  for (const [index, child] of childrenList.entries()) {
496
627
  if (child === null || child === void 0) {
497
628
  continue;
498
629
  }
499
- const key = `${(child == null ? void 0 : child["key"]) ?? index}`;
500
- next.push(/* @__PURE__ */ import_react.default.createElement(import_react.Fragment, {
501
- key
502
- }, isZStack ? /* @__PURE__ */ import_react.default.createElement(Absolute, null, child) : child));
503
- if ((_a = child == null ? void 0 : child["type"]) == null ? void 0 : _a["isVisuallyHidden"]) {
630
+ if (!child || child["key"] && !isZStack) {
631
+ next.push(child);
632
+ } else {
633
+ next.push(/* @__PURE__ */ import_react.default.createElement(import_react.Fragment, {
634
+ key: index
635
+ }, isZStack ? /* @__PURE__ */ import_react.default.createElement(AbsoluteFill, null, child) : child));
636
+ }
637
+ if ((_a = child["type"]) == null ? void 0 : _a["isVisuallyHidden"]) {
504
638
  continue;
505
639
  }
506
640
  if (index !== len - 1) {
507
641
  if (space) {
508
- next.push(/* @__PURE__ */ import_react.default.createElement(Spacer, {
509
- key: `${key}_spacer`,
642
+ next.push(/* @__PURE__ */ import_react.default.createElement(Spacer, __spreadValues({
643
+ key: `_${index}_spacer`,
510
644
  direction: flexDirection === "row" || flexDirection === "row-reverse" ? "horizontal" : "vertical",
511
645
  size: space
512
- }));
646
+ }, spaceFlex && {
647
+ flex: spaceFlex
648
+ })));
513
649
  }
514
650
  }
515
651
  }
516
652
  return next;
517
653
  }
518
654
  __name(spacedChildren, "spacedChildren");
519
- const Absolute = /* @__PURE__ */ __name(({ children }) => /* @__PURE__ */ import_react.default.createElement(import_react_native.View, {
520
- style: sheet.fullscreen
521
- }, children), "Absolute");
522
- const sheet = import_react_native.StyleSheet.create({
523
- fullscreen: {
524
- position: "absolute",
525
- top: 0,
526
- left: 0,
527
- right: 0,
528
- bottom: 0
529
- }
655
+ function AbsoluteFill(props) {
656
+ return import_platform.isWeb ? /* @__PURE__ */ import_react.default.createElement("div", {
657
+ style: {
658
+ position: "absolute",
659
+ top: 0,
660
+ left: 0,
661
+ right: 0,
662
+ bottom: 0
663
+ }
664
+ }, props.children) : /* @__PURE__ */ import_react.default.createElement(import_react_native.View, {
665
+ style: import_react_native.StyleSheet.absoluteFill
666
+ }, props.child);
667
+ }
668
+ __name(AbsoluteFill, "AbsoluteFill");
669
+ // Annotate the CommonJS export names for ESM import in node:
670
+ 0 && (module.exports = {
671
+ AbsoluteFill,
672
+ Spacer,
673
+ createComponent,
674
+ mouseUps,
675
+ spacedChildren
530
676
  });
531
677
  //# sourceMappingURL=createComponent.js.map