@tamagui/core 1.0.0-beta.9 → 1.0.1-beta.101

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 (582) hide show
  1. package/dist/cjs/Pressability.js +28 -0
  2. package/dist/cjs/Pressability.js.map +7 -0
  3. package/dist/cjs/Pressability.native.js +28 -0
  4. package/dist/cjs/Pressability.native.js.map +7 -0
  5. package/dist/cjs/Tamagui.js +6 -8
  6. package/dist/cjs/Tamagui.js.map +2 -2
  7. package/dist/cjs/ThemeManager.js +25 -32
  8. package/dist/cjs/ThemeManager.js.map +2 -2
  9. package/dist/cjs/conf.js +20 -15
  10. package/dist/cjs/conf.js.map +2 -2
  11. package/dist/cjs/constants/constants.js +1 -1
  12. package/dist/cjs/constants/constants.js.map +1 -1
  13. package/dist/cjs/constants/platform.js +9 -9
  14. package/dist/cjs/constants/platform.js.map +2 -2
  15. package/dist/cjs/constants/rnw.js +5 -19
  16. package/dist/cjs/constants/rnw.js.map +2 -2
  17. package/dist/cjs/constants/rnw.native.js +28 -0
  18. package/dist/cjs/constants/rnw.native.js.map +7 -0
  19. package/dist/cjs/createComponent.js +612 -295
  20. package/dist/cjs/createComponent.js.map +2 -2
  21. package/dist/cjs/createFont.js +2 -3
  22. package/dist/cjs/createFont.js.map +2 -2
  23. package/dist/cjs/createShorthands.js +0 -2
  24. package/dist/cjs/createShorthands.js.map +1 -1
  25. package/dist/cjs/createTamagui.js +147 -100
  26. package/dist/cjs/createTamagui.js.map +2 -2
  27. package/dist/cjs/createTheme.js +3 -2
  28. package/dist/cjs/createTheme.js.map +2 -2
  29. package/dist/cjs/createTokens.js +4 -21
  30. package/dist/cjs/createTokens.js.map +2 -2
  31. package/dist/cjs/createVariable.js +39 -14
  32. package/dist/cjs/createVariable.js.map +2 -2
  33. package/dist/cjs/createVariables.js +55 -0
  34. package/dist/cjs/createVariables.js.map +7 -0
  35. package/dist/cjs/helpers/areEqualSets.js +2 -3
  36. package/dist/cjs/helpers/areEqualSets.js.map +1 -1
  37. package/dist/cjs/helpers/assignNativePropsToWeb.js +187 -0
  38. package/dist/cjs/helpers/assignNativePropsToWeb.js.map +7 -0
  39. package/dist/cjs/helpers/assignNativePropsToWeb.native.js +29 -0
  40. package/dist/cjs/helpers/assignNativePropsToWeb.native.js.map +7 -0
  41. package/dist/cjs/helpers/calc.js +70 -0
  42. package/dist/cjs/helpers/calc.js.map +7 -0
  43. package/dist/cjs/helpers/createMediaStyle.js +4 -4
  44. package/dist/cjs/helpers/createMediaStyle.js.map +2 -2
  45. package/dist/cjs/helpers/createPropMapper.js +133 -113
  46. package/dist/cjs/helpers/createPropMapper.js.map +2 -2
  47. package/dist/cjs/helpers/createShallowUpdate.js +3 -4
  48. package/dist/cjs/helpers/createShallowUpdate.js.map +2 -2
  49. package/dist/cjs/helpers/createTamaguiProvider.js +16 -18
  50. package/dist/cjs/helpers/createTamaguiProvider.js.map +2 -2
  51. package/dist/cjs/helpers/cssHash.js +50 -0
  52. package/dist/cjs/helpers/cssHash.js.map +7 -0
  53. package/dist/cjs/helpers/expandStyle.js +111 -0
  54. package/dist/cjs/helpers/expandStyle.js.map +7 -0
  55. package/dist/cjs/helpers/expandStyles.js +126 -0
  56. package/dist/cjs/helpers/expandStyles.js.map +7 -0
  57. package/dist/cjs/helpers/extendStaticConfig.js +25 -17
  58. package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
  59. package/dist/cjs/helpers/fixNativeShadow.js +2 -3
  60. package/dist/cjs/helpers/fixNativeShadow.js.map +1 -1
  61. package/dist/cjs/helpers/getExpandedShorthands.js +0 -2
  62. package/dist/cjs/helpers/getExpandedShorthands.js.map +1 -1
  63. package/dist/cjs/helpers/getFont.js +61 -0
  64. package/dist/cjs/helpers/getFont.js.map +7 -0
  65. package/dist/cjs/helpers/getSize.js +17 -9
  66. package/dist/cjs/helpers/getSize.js.map +2 -2
  67. package/dist/cjs/helpers/getSplitStyles.js +268 -168
  68. package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
  69. package/dist/cjs/helpers/getStackSize.js +45 -0
  70. package/dist/cjs/helpers/getStackSize.js.map +7 -0
  71. package/dist/cjs/helpers/getStylesAtomic.js +178 -118
  72. package/dist/cjs/helpers/getStylesAtomic.js.map +2 -2
  73. package/dist/cjs/helpers/getStylesAtomic.native.js +0 -2
  74. package/dist/cjs/helpers/getStylesAtomic.native.js.map +1 -1
  75. package/dist/cjs/helpers/getTextSize.js +3 -4
  76. package/dist/cjs/helpers/getTextSize.js.map +2 -2
  77. package/dist/cjs/helpers/getVariantExtras.js +46 -0
  78. package/dist/cjs/helpers/getVariantExtras.js.map +7 -0
  79. package/dist/cjs/helpers/insertStyleRule.js +55 -37
  80. package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
  81. package/dist/cjs/helpers/isObj.js +1 -2
  82. package/dist/cjs/helpers/isObj.js.map +1 -1
  83. package/dist/cjs/helpers/isTamaguiComponent.js +36 -0
  84. package/dist/cjs/helpers/isTamaguiComponent.js.map +7 -0
  85. package/dist/cjs/helpers/isTamaguiElement.js +4 -5
  86. package/dist/cjs/helpers/isTamaguiElement.js.map +2 -2
  87. package/dist/cjs/helpers/matchMedia.js +2 -3
  88. package/dist/cjs/helpers/matchMedia.js.map +1 -1
  89. package/dist/cjs/helpers/matchMedia.native.js +1 -2
  90. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  91. package/dist/cjs/helpers/mergeProps.js +49 -0
  92. package/dist/cjs/helpers/mergeProps.js.map +7 -0
  93. package/dist/cjs/helpers/mergeTransform.js +41 -0
  94. package/dist/cjs/helpers/mergeTransform.js.map +7 -0
  95. package/dist/cjs/helpers/nativeGestureHandler.native.js +18 -0
  96. package/dist/cjs/helpers/nativeGestureHandler.native.js.map +7 -0
  97. package/dist/cjs/helpers/normalizeColor.js +76 -0
  98. package/dist/cjs/helpers/normalizeColor.js.map +7 -0
  99. package/dist/cjs/helpers/normalizeValueWithProperty.js +90 -0
  100. package/dist/cjs/helpers/normalizeValueWithProperty.js.map +7 -0
  101. package/dist/cjs/helpers/proxyThemeVariables.js +1 -3
  102. package/dist/cjs/helpers/proxyThemeVariables.js.map +1 -1
  103. package/dist/cjs/helpers/pseudoDescriptors.js +41 -0
  104. package/dist/cjs/helpers/pseudoDescriptors.js.map +7 -0
  105. package/dist/cjs/helpers/registerCSSVariable.js +40 -0
  106. package/dist/cjs/helpers/registerCSSVariable.js.map +7 -0
  107. package/dist/cjs/helpers/themeable.js +3 -5
  108. package/dist/cjs/helpers/themeable.js.map +2 -2
  109. package/dist/cjs/helpers/validate.js +39 -37
  110. package/dist/cjs/helpers/validate.js.map +2 -2
  111. package/dist/cjs/helpers/withStaticProperties.js +2 -3
  112. package/dist/cjs/helpers/withStaticProperties.js.map +1 -1
  113. package/dist/cjs/helpers/wrapThemeManagerContext.js +0 -2
  114. package/dist/cjs/helpers/wrapThemeManagerContext.js.map +2 -2
  115. package/dist/cjs/hooks/useConstant.js +0 -2
  116. package/dist/cjs/hooks/useConstant.js.map +1 -1
  117. package/dist/cjs/hooks/useEvent.js +34 -0
  118. package/dist/cjs/hooks/useEvent.js.map +7 -0
  119. package/dist/cjs/hooks/useFeatures.js +22 -20
  120. package/dist/cjs/hooks/useFeatures.js.map +2 -2
  121. package/dist/cjs/hooks/useGet.js +39 -0
  122. package/dist/cjs/hooks/useGet.js.map +7 -0
  123. package/dist/cjs/hooks/useId.js +5 -6
  124. package/dist/cjs/hooks/useId.js.map +2 -2
  125. package/dist/cjs/hooks/useIsMounted.js +2 -4
  126. package/dist/cjs/hooks/useIsMounted.js.map +2 -2
  127. package/dist/cjs/hooks/useIsTouchDevice.js +3 -4
  128. package/dist/cjs/hooks/useIsTouchDevice.js.map +2 -2
  129. package/dist/cjs/hooks/useMedia.js +11 -15
  130. package/dist/cjs/hooks/useMedia.js.map +1 -1
  131. package/dist/cjs/hooks/usePressable.js +2 -3
  132. package/dist/cjs/hooks/usePressable.js.map +1 -1
  133. package/dist/cjs/hooks/usePrevious.js +1 -0
  134. package/dist/cjs/hooks/usePrevious.js.map +7 -0
  135. package/dist/cjs/hooks/useTheme.js +21 -33
  136. package/dist/cjs/hooks/useTheme.js.map +2 -2
  137. package/dist/cjs/hooks/useUnmountEffect.js +0 -2
  138. package/dist/cjs/hooks/useUnmountEffect.js.map +1 -1
  139. package/dist/cjs/index.js +23 -12
  140. package/dist/cjs/index.js.map +2 -2
  141. package/dist/cjs/insertFont.js +89 -0
  142. package/dist/cjs/insertFont.js.map +7 -0
  143. package/dist/cjs/static.js +3 -1
  144. package/dist/cjs/static.js.map +2 -2
  145. package/dist/cjs/styled.js +0 -2
  146. package/dist/cjs/styled.js.map +2 -2
  147. package/dist/cjs/types-rnw.js.map +1 -1
  148. package/dist/cjs/types.js.map +1 -1
  149. package/dist/cjs/views/Slot.js +40 -26
  150. package/dist/cjs/views/Slot.js.map +2 -2
  151. package/dist/cjs/views/Text.js +11 -15
  152. package/dist/cjs/views/Text.js.map +2 -2
  153. package/dist/cjs/views/TextAncestorContext.js +4 -6
  154. package/dist/cjs/views/TextAncestorContext.js.map +2 -2
  155. package/dist/cjs/views/Theme.js +6 -9
  156. package/dist/cjs/views/Theme.js.map +2 -2
  157. package/dist/cjs/views/ThemeInverse.js +7 -5
  158. package/dist/cjs/views/ThemeInverse.js.map +2 -2
  159. package/dist/cjs/views/ThemeProvider.js +6 -6
  160. package/dist/cjs/views/ThemeProvider.js.map +2 -2
  161. package/dist/cjs/views/ThemeReset.js +3 -3
  162. package/dist/cjs/views/ThemeReset.js.map +2 -2
  163. package/dist/esm/Pressability.js +5 -0
  164. package/dist/esm/Pressability.js.map +7 -0
  165. package/dist/esm/Pressability.native.js +5 -0
  166. package/dist/esm/Pressability.native.js.map +7 -0
  167. package/dist/esm/Tamagui.js +5 -8
  168. package/dist/esm/Tamagui.js.map +2 -2
  169. package/dist/esm/ThemeManager.js +25 -33
  170. package/dist/esm/ThemeManager.js.map +2 -2
  171. package/dist/esm/conf.js +18 -15
  172. package/dist/esm/conf.js.map +2 -2
  173. package/dist/esm/constants/constants.js +24 -9
  174. package/dist/esm/constants/constants.js.map +2 -2
  175. package/dist/esm/constants/platform.js +7 -7
  176. package/dist/esm/constants/platform.js.map +2 -2
  177. package/dist/esm/constants/rnw.js +2 -20
  178. package/dist/esm/constants/rnw.js.map +2 -2
  179. package/dist/esm/constants/rnw.native.js +5 -0
  180. package/dist/esm/constants/rnw.native.js.map +7 -0
  181. package/dist/esm/createComponent.js +705 -331
  182. package/dist/esm/createComponent.js.map +2 -2
  183. package/dist/esm/createFont.js +2 -4
  184. package/dist/esm/createFont.js.map +2 -2
  185. package/dist/esm/createShorthands.js +0 -3
  186. package/dist/esm/createShorthands.js.map +1 -1
  187. package/dist/esm/createTamagui.js +172 -105
  188. package/dist/esm/createTamagui.js.map +2 -2
  189. package/dist/esm/createTheme.js +3 -3
  190. package/dist/esm/createTheme.js.map +2 -2
  191. package/dist/esm/createTokens.js +3 -20
  192. package/dist/esm/createTokens.js.map +2 -2
  193. package/dist/esm/createVariable.js +38 -14
  194. package/dist/esm/createVariable.js.map +2 -2
  195. package/dist/esm/createVariables.js +32 -0
  196. package/dist/esm/createVariables.js.map +7 -0
  197. package/dist/esm/helpers/areEqualSets.js +2 -4
  198. package/dist/esm/helpers/areEqualSets.js.map +1 -1
  199. package/dist/esm/helpers/assignNativePropsToWeb.js +164 -0
  200. package/dist/esm/helpers/assignNativePropsToWeb.js.map +7 -0
  201. package/dist/esm/helpers/assignNativePropsToWeb.native.js +6 -0
  202. package/dist/esm/helpers/assignNativePropsToWeb.native.js.map +7 -0
  203. package/dist/esm/helpers/calc.js +47 -0
  204. package/dist/esm/helpers/calc.js.map +7 -0
  205. package/dist/esm/helpers/createMediaStyle.js +4 -5
  206. package/dist/esm/helpers/createMediaStyle.js.map +2 -2
  207. package/dist/esm/helpers/createPropMapper.js +131 -114
  208. package/dist/esm/helpers/createPropMapper.js.map +2 -2
  209. package/dist/esm/helpers/createShallowUpdate.js +19 -5
  210. package/dist/esm/helpers/createShallowUpdate.js.map +2 -2
  211. package/dist/esm/helpers/createTamaguiProvider.js +46 -19
  212. package/dist/esm/helpers/createTamaguiProvider.js.map +2 -2
  213. package/dist/esm/helpers/cssHash.js +27 -0
  214. package/dist/esm/helpers/cssHash.js.map +7 -0
  215. package/dist/esm/helpers/expandStyle.js +90 -0
  216. package/dist/esm/helpers/expandStyle.js.map +7 -0
  217. package/dist/esm/helpers/expandStyles.js +103 -0
  218. package/dist/esm/helpers/expandStyles.js.map +7 -0
  219. package/dist/esm/helpers/extendStaticConfig.js +46 -40
  220. package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
  221. package/dist/esm/helpers/fixNativeShadow.js +2 -4
  222. package/dist/esm/helpers/fixNativeShadow.js.map +1 -1
  223. package/dist/esm/helpers/getExpandedShorthands.js +0 -3
  224. package/dist/esm/helpers/getExpandedShorthands.js.map +1 -1
  225. package/dist/{jsx/helpers/getTextSize.js → esm/helpers/getFont.js} +12 -7
  226. package/dist/esm/helpers/getFont.js.map +7 -0
  227. package/dist/esm/helpers/getSize.js +15 -9
  228. package/dist/esm/helpers/getSize.js.map +2 -2
  229. package/dist/esm/helpers/getSplitStyles.js +282 -176
  230. package/dist/esm/helpers/getSplitStyles.js.map +2 -2
  231. package/dist/esm/helpers/getStackSize.js +22 -0
  232. package/dist/esm/helpers/getStackSize.js.map +7 -0
  233. package/dist/esm/helpers/getStylesAtomic.js +188 -110
  234. package/dist/esm/helpers/getStylesAtomic.js.map +2 -2
  235. package/dist/esm/helpers/getStylesAtomic.native.js +0 -3
  236. package/dist/esm/helpers/getStylesAtomic.native.js.map +1 -1
  237. package/dist/esm/helpers/getTextSize.js +3 -5
  238. package/dist/esm/helpers/getTextSize.js.map +2 -2
  239. package/dist/esm/helpers/getVariantExtras.js +23 -0
  240. package/dist/esm/helpers/getVariantExtras.js.map +7 -0
  241. package/dist/esm/helpers/insertStyleRule.js +55 -38
  242. package/dist/esm/helpers/insertStyleRule.js.map +2 -2
  243. package/dist/esm/helpers/isObj.js +1 -3
  244. package/dist/esm/helpers/isObj.js.map +1 -1
  245. package/dist/esm/helpers/isTamaguiComponent.js +13 -0
  246. package/dist/esm/helpers/isTamaguiComponent.js.map +7 -0
  247. package/dist/esm/helpers/isTamaguiElement.js +4 -6
  248. package/dist/esm/helpers/isTamaguiElement.js.map +2 -2
  249. package/dist/esm/helpers/matchMedia.js +2 -4
  250. package/dist/esm/helpers/matchMedia.js.map +1 -1
  251. package/dist/esm/helpers/matchMedia.native.js +1 -3
  252. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  253. package/dist/esm/helpers/mergeProps.js +26 -0
  254. package/dist/esm/helpers/mergeProps.js.map +7 -0
  255. package/dist/esm/helpers/mergeTransform.js +17 -0
  256. package/dist/esm/helpers/mergeTransform.js.map +7 -0
  257. package/dist/esm/helpers/nativeGestureHandler.native.js +2 -0
  258. package/dist/esm/helpers/nativeGestureHandler.native.js.map +7 -0
  259. package/dist/esm/helpers/normalizeColor.js +49 -0
  260. package/dist/esm/helpers/normalizeColor.js.map +7 -0
  261. package/dist/esm/helpers/normalizeValueWithProperty.js +67 -0
  262. package/dist/esm/helpers/normalizeValueWithProperty.js.map +7 -0
  263. package/dist/esm/helpers/proxyThemeVariables.js +1 -4
  264. package/dist/esm/helpers/proxyThemeVariables.js.map +1 -1
  265. package/dist/esm/helpers/pseudoDescriptors.js +18 -0
  266. package/dist/esm/helpers/pseudoDescriptors.js.map +7 -0
  267. package/dist/esm/helpers/registerCSSVariable.js +15 -0
  268. package/dist/esm/helpers/registerCSSVariable.js.map +7 -0
  269. package/dist/esm/helpers/themeable.js +34 -5
  270. package/dist/esm/helpers/themeable.js.map +2 -2
  271. package/dist/esm/helpers/validate.js +42 -19
  272. package/dist/esm/helpers/validate.js.map +2 -2
  273. package/dist/esm/helpers/withStaticProperties.js +2 -4
  274. package/dist/esm/helpers/withStaticProperties.js.map +1 -1
  275. package/dist/esm/helpers/wrapThemeManagerContext.js +0 -3
  276. package/dist/esm/helpers/wrapThemeManagerContext.js.map +2 -2
  277. package/dist/esm/hooks/useConstant.js +0 -3
  278. package/dist/esm/hooks/useConstant.js.map +1 -1
  279. package/dist/esm/hooks/useEvent.js +11 -0
  280. package/dist/esm/hooks/useEvent.js.map +7 -0
  281. package/dist/esm/hooks/useFeatures.js +59 -26
  282. package/dist/esm/hooks/useFeatures.js.map +2 -2
  283. package/dist/esm/hooks/useGet.js +16 -0
  284. package/dist/esm/hooks/useGet.js.map +7 -0
  285. package/dist/esm/hooks/useId.js +8 -11
  286. package/dist/esm/hooks/useId.js.map +2 -2
  287. package/dist/esm/hooks/useIsMounted.js +1 -4
  288. package/dist/esm/hooks/useIsMounted.js.map +2 -2
  289. package/dist/esm/hooks/useIsTouchDevice.js +4 -6
  290. package/dist/esm/hooks/useIsTouchDevice.js.map +2 -2
  291. package/dist/esm/hooks/useMedia.js +28 -21
  292. package/dist/esm/hooks/useMedia.js.map +1 -1
  293. package/dist/esm/hooks/usePressable.js +18 -5
  294. package/dist/esm/hooks/usePressable.js.map +1 -1
  295. package/dist/esm/hooks/usePrevious.js +1 -0
  296. package/dist/esm/hooks/usePrevious.js.map +7 -0
  297. package/dist/esm/hooks/useTheme.js +45 -41
  298. package/dist/esm/hooks/useTheme.js.map +2 -2
  299. package/dist/esm/hooks/useUnmountEffect.js +0 -3
  300. package/dist/esm/hooks/useUnmountEffect.js.map +1 -1
  301. package/dist/esm/index.js +20 -9
  302. package/dist/esm/index.js.map +2 -2
  303. package/dist/esm/insertFont.js +64 -0
  304. package/dist/esm/insertFont.js.map +7 -0
  305. package/dist/esm/static.js +3 -1
  306. package/dist/esm/static.js.map +2 -2
  307. package/dist/esm/styled.js +37 -11
  308. package/dist/esm/styled.js.map +2 -2
  309. package/dist/esm/views/Slot.js +74 -34
  310. package/dist/esm/views/Slot.js.map +2 -2
  311. package/dist/esm/views/Stack.js +21 -3
  312. package/dist/esm/views/Stack.js.map +1 -1
  313. package/dist/esm/views/Text.js +27 -19
  314. package/dist/esm/views/Text.js.map +2 -2
  315. package/dist/esm/views/TextAncestorContext.js +4 -7
  316. package/dist/esm/views/TextAncestorContext.js.map +2 -2
  317. package/dist/esm/views/Theme.js +6 -10
  318. package/dist/esm/views/Theme.js.map +2 -2
  319. package/dist/esm/views/ThemeInverse.js +8 -7
  320. package/dist/esm/views/ThemeInverse.js.map +2 -2
  321. package/dist/esm/views/ThemeProvider.js +6 -7
  322. package/dist/esm/views/ThemeProvider.js.map +2 -2
  323. package/dist/esm/views/ThemeReset.js +3 -4
  324. package/dist/esm/views/ThemeReset.js.map +2 -2
  325. package/package.json +19 -11
  326. package/reset.css +41 -0
  327. package/types/Pressability.d.ts +2 -0
  328. package/types/Pressability.d.ts.map +1 -0
  329. package/types/Pressability.native.d.ts +2 -0
  330. package/types/Pressability.native.d.ts.map +1 -0
  331. package/types/Tamagui.d.ts +4 -6
  332. package/types/Tamagui.d.ts.map +1 -1
  333. package/types/ThemeContext.d.ts +0 -0
  334. package/types/ThemeContext.d.ts.map +0 -0
  335. package/types/ThemeManager.d.ts +10 -7
  336. package/types/ThemeManager.d.ts.map +1 -1
  337. package/types/conf.d.ts +3 -4
  338. package/types/conf.d.ts.map +1 -1
  339. package/types/constants/constants.d.ts +1 -1
  340. package/types/constants/constants.d.ts.map +1 -1
  341. package/types/constants/platform.d.ts +4 -4
  342. package/types/constants/platform.d.ts.map +1 -1
  343. package/types/constants/rnw.d.ts +1 -1
  344. package/types/constants/rnw.d.ts.map +1 -1
  345. package/types/constants/rnw.native.d.ts +2 -0
  346. package/types/constants/rnw.native.d.ts.map +1 -0
  347. package/types/contexts/ButtonInsideButtonContext.d.ts +0 -0
  348. package/types/contexts/ButtonInsideButtonContext.d.ts.map +0 -0
  349. package/types/createComponent.d.ts +40 -15
  350. package/types/createComponent.d.ts.map +1 -1
  351. package/types/createFont.d.ts +0 -0
  352. package/types/createFont.d.ts.map +0 -0
  353. package/types/createShorthands.d.ts +0 -0
  354. package/types/createShorthands.d.ts.map +0 -0
  355. package/types/createTamagui.d.ts +10 -2
  356. package/types/createTamagui.d.ts.map +1 -1
  357. package/types/createTheme.d.ts +1 -1
  358. package/types/createTheme.d.ts.map +1 -1
  359. package/types/createTokens.d.ts +0 -1
  360. package/types/createTokens.d.ts.map +1 -1
  361. package/types/createVariable.d.ts +16 -11
  362. package/types/createVariable.d.ts.map +1 -1
  363. package/types/createVariables.d.ts +10 -0
  364. package/types/createVariables.d.ts.map +1 -0
  365. package/types/defaultComponentState.d.ts +0 -0
  366. package/types/defaultComponentState.d.ts.map +0 -0
  367. package/types/helpers/RNComponents.d.ts +0 -0
  368. package/types/helpers/RNComponents.d.ts.map +0 -0
  369. package/types/helpers/areEqualSets.d.ts +0 -0
  370. package/types/helpers/areEqualSets.d.ts.map +0 -0
  371. package/types/helpers/assignNativePropsToWeb.d.ts +2 -0
  372. package/types/helpers/assignNativePropsToWeb.d.ts.map +1 -0
  373. package/types/helpers/assignNativePropsToWeb.native.d.ts +2 -0
  374. package/types/helpers/assignNativePropsToWeb.native.d.ts.map +1 -0
  375. package/types/helpers/calc.d.ts +12 -0
  376. package/types/helpers/calc.d.ts.map +1 -0
  377. package/types/helpers/createMediaStyle.d.ts +1 -1
  378. package/types/helpers/createMediaStyle.d.ts.map +1 -1
  379. package/types/helpers/createPropMapper.d.ts +4 -3
  380. package/types/helpers/createPropMapper.d.ts.map +1 -1
  381. package/types/helpers/createShallowUpdate.d.ts +1 -2
  382. package/types/helpers/createShallowUpdate.d.ts.map +1 -1
  383. package/types/helpers/createTamaguiProvider.d.ts +2 -5
  384. package/types/helpers/createTamaguiProvider.d.ts.map +1 -1
  385. package/types/helpers/cssHash.d.ts +2 -0
  386. package/types/helpers/cssHash.d.ts.map +1 -0
  387. package/types/helpers/expandStyle.d.ts +2 -0
  388. package/types/helpers/expandStyle.d.ts.map +1 -0
  389. package/types/helpers/expandStyles.d.ts +7 -0
  390. package/types/helpers/expandStyles.d.ts.map +1 -0
  391. package/types/helpers/extendStaticConfig.d.ts +0 -0
  392. package/types/helpers/extendStaticConfig.d.ts.map +1 -1
  393. package/types/helpers/fixNativeShadow.d.ts +0 -0
  394. package/types/helpers/fixNativeShadow.d.ts.map +0 -0
  395. package/types/helpers/getExpandedShorthands.d.ts +0 -0
  396. package/types/helpers/getExpandedShorthands.d.ts.map +0 -0
  397. package/types/helpers/getFont.d.ts +3 -0
  398. package/types/helpers/getFont.d.ts.map +1 -0
  399. package/types/helpers/getSize.d.ts +3 -2
  400. package/types/helpers/getSize.d.ts.map +1 -1
  401. package/types/helpers/getSplitStyles.d.ts +10 -7
  402. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  403. package/types/helpers/getStackSize.d.ts +8 -0
  404. package/types/helpers/getStackSize.d.ts.map +1 -0
  405. package/types/helpers/getStylesAtomic.d.ts +7 -17
  406. package/types/helpers/getStylesAtomic.d.ts.map +1 -1
  407. package/types/helpers/getStylesAtomic.native.d.ts +0 -0
  408. package/types/helpers/getStylesAtomic.native.d.ts.map +0 -0
  409. package/types/helpers/getVariantExtras.d.ts +7 -0
  410. package/types/helpers/getVariantExtras.d.ts.map +1 -0
  411. package/types/helpers/insertStyleRule.d.ts +1 -1
  412. package/types/helpers/insertStyleRule.d.ts.map +1 -1
  413. package/types/helpers/isObj.d.ts +0 -0
  414. package/types/helpers/isObj.d.ts.map +0 -0
  415. package/types/helpers/isTamaguiComponent.d.ts +5 -0
  416. package/types/helpers/isTamaguiComponent.d.ts.map +1 -0
  417. package/types/helpers/isTamaguiElement.d.ts +1 -1
  418. package/types/helpers/isTamaguiElement.d.ts.map +1 -1
  419. package/types/helpers/matchMedia.d.ts +0 -0
  420. package/types/helpers/matchMedia.d.ts.map +0 -0
  421. package/types/helpers/matchMedia.native.d.ts +0 -0
  422. package/types/helpers/matchMedia.native.d.ts.map +0 -0
  423. package/types/helpers/mergeProps.d.ts +2 -0
  424. package/types/helpers/mergeProps.d.ts.map +1 -0
  425. package/types/helpers/mergeTransform.d.ts +7 -0
  426. package/types/helpers/mergeTransform.d.ts.map +1 -0
  427. package/types/helpers/nativeGestureHandler.native.d.ts +2 -0
  428. package/types/helpers/nativeGestureHandler.native.d.ts.map +1 -0
  429. package/types/helpers/normalizeColor.d.ts +3 -0
  430. package/types/helpers/normalizeColor.d.ts.map +1 -0
  431. package/types/helpers/normalizeValueWithProperty.d.ts +2 -0
  432. package/types/helpers/normalizeValueWithProperty.d.ts.map +1 -0
  433. package/types/helpers/proxyThemeVariables.d.ts +0 -0
  434. package/types/helpers/proxyThemeVariables.d.ts.map +0 -0
  435. package/types/helpers/pseudoDescriptors.d.ts +16 -0
  436. package/types/helpers/pseudoDescriptors.d.ts.map +1 -0
  437. package/types/helpers/registerCSSVariable.d.ts +5 -0
  438. package/types/helpers/registerCSSVariable.d.ts.map +1 -0
  439. package/types/helpers/themeable.d.ts +0 -0
  440. package/types/helpers/themeable.d.ts.map +1 -1
  441. package/types/helpers/validate.d.ts +0 -0
  442. package/types/helpers/validate.d.ts.map +0 -0
  443. package/types/helpers/withStaticProperties.d.ts +0 -0
  444. package/types/helpers/withStaticProperties.d.ts.map +0 -0
  445. package/types/helpers/wrapThemeManagerContext.d.ts +0 -0
  446. package/types/helpers/wrapThemeManagerContext.d.ts.map +0 -0
  447. package/types/hooks/useConstant.d.ts +0 -0
  448. package/types/hooks/useConstant.d.ts.map +0 -0
  449. package/types/hooks/useEvent.d.ts +4 -0
  450. package/types/hooks/useEvent.d.ts.map +1 -0
  451. package/types/hooks/useFeatures.d.ts +11 -5
  452. package/types/hooks/useFeatures.d.ts.map +1 -1
  453. package/types/hooks/useGet.d.ts +2 -0
  454. package/types/hooks/useGet.d.ts.map +1 -0
  455. package/types/hooks/useId.d.ts +0 -0
  456. package/types/hooks/useId.d.ts.map +1 -1
  457. package/types/hooks/useIsMounted.d.ts +0 -0
  458. package/types/hooks/useIsMounted.d.ts.map +1 -1
  459. package/types/hooks/useIsTouchDevice.d.ts +0 -0
  460. package/types/hooks/useIsTouchDevice.d.ts.map +0 -0
  461. package/types/hooks/useMedia.d.ts +0 -0
  462. package/types/hooks/useMedia.d.ts.map +0 -0
  463. package/types/hooks/usePressable.d.ts +0 -0
  464. package/types/hooks/usePressable.d.ts.map +0 -0
  465. package/types/hooks/usePrevious.d.ts +1 -0
  466. package/types/hooks/usePrevious.d.ts.map +1 -0
  467. package/types/hooks/useTheme.d.ts +15 -6
  468. package/types/hooks/useTheme.d.ts.map +1 -1
  469. package/types/hooks/useUnmountEffect.d.ts +0 -0
  470. package/types/hooks/useUnmountEffect.d.ts.map +0 -0
  471. package/types/index.d.ts +18 -6
  472. package/types/index.d.ts.map +1 -1
  473. package/types/insertFont.d.ts +6 -0
  474. package/types/insertFont.d.ts.map +1 -0
  475. package/types/static.d.ts +3 -1
  476. package/types/static.d.ts.map +1 -1
  477. package/types/styled.d.ts +2 -2
  478. package/types/styled.d.ts.map +1 -1
  479. package/types/types-rnw.d.ts +0 -0
  480. package/types/types-rnw.d.ts.map +1 -1
  481. package/types/types.d.ts +71 -51
  482. package/types/types.d.ts.map +1 -1
  483. package/types/views/Slot.d.ts +1 -0
  484. package/types/views/Slot.d.ts.map +1 -1
  485. package/types/views/Stack.d.ts +0 -0
  486. package/types/views/Stack.d.ts.map +0 -0
  487. package/types/views/Text.d.ts +0 -0
  488. package/types/views/Text.d.ts.map +1 -1
  489. package/types/views/TextAncestorContext.d.ts +0 -0
  490. package/types/views/TextAncestorContext.d.ts.map +1 -1
  491. package/types/views/Theme.d.ts +1 -9
  492. package/types/views/Theme.d.ts.map +1 -1
  493. package/types/views/ThemeInverse.d.ts +0 -1
  494. package/types/views/ThemeInverse.d.ts.map +1 -1
  495. package/types/views/ThemeProvider.d.ts +2 -0
  496. package/types/views/ThemeProvider.d.ts.map +1 -1
  497. package/types/views/ThemeReset.d.ts +0 -0
  498. package/types/views/ThemeReset.d.ts.map +0 -0
  499. package/dist/cjs/helpers/addStylesUsingClassname.js +0 -87
  500. package/dist/cjs/helpers/addStylesUsingClassname.js.map +0 -7
  501. package/dist/cjs/helpers/fixNativeShadow.native.js +0 -63
  502. package/dist/cjs/helpers/fixNativeShadow.native.js.map +0 -7
  503. package/dist/cjs/helpers/getButtonSize.js +0 -45
  504. package/dist/cjs/helpers/getButtonSize.js.map +0 -7
  505. package/dist/esm/helpers/addStylesUsingClassname.js +0 -64
  506. package/dist/esm/helpers/addStylesUsingClassname.js.map +0 -7
  507. package/dist/esm/helpers/fixNativeShadow.native.js +0 -41
  508. package/dist/esm/helpers/fixNativeShadow.native.js.map +0 -7
  509. package/dist/esm/helpers/getButtonSize.js +0 -24
  510. package/dist/esm/helpers/getButtonSize.js.map +0 -7
  511. package/dist/jsx/Tamagui.js +0 -41
  512. package/dist/jsx/ThemeContext.js +0 -5
  513. package/dist/jsx/ThemeManager.js +0 -186
  514. package/dist/jsx/conf.js +0 -35
  515. package/dist/jsx/constants/constants.js +0 -17
  516. package/dist/jsx/constants/platform.js +0 -25
  517. package/dist/jsx/constants/rnw.js +0 -23
  518. package/dist/jsx/contexts/ButtonInsideButtonContext.js +0 -5
  519. package/dist/jsx/createComponent.js +0 -617
  520. package/dist/jsx/createFont.js +0 -27
  521. package/dist/jsx/createShorthands.js +0 -9
  522. package/dist/jsx/createTamagui.js +0 -201
  523. package/dist/jsx/createTheme.js +0 -6
  524. package/dist/jsx/createTokens.js +0 -28
  525. package/dist/jsx/createVariable.js +0 -48
  526. package/dist/jsx/defaultComponentState.js +0 -0
  527. package/dist/jsx/helpers/RNComponents.js +0 -11
  528. package/dist/jsx/helpers/addStylesUsingClassname.js +0 -63
  529. package/dist/jsx/helpers/areEqualSets.js +0 -15
  530. package/dist/jsx/helpers/createMediaStyle.js +0 -30
  531. package/dist/jsx/helpers/createPropMapper.js +0 -237
  532. package/dist/jsx/helpers/createShallowUpdate.js +0 -18
  533. package/dist/jsx/helpers/createTamaguiProvider.js +0 -34
  534. package/dist/jsx/helpers/extendStaticConfig.js +0 -61
  535. package/dist/jsx/helpers/fixNativeShadow.js +0 -7
  536. package/dist/jsx/helpers/fixNativeShadow.native.js +0 -40
  537. package/dist/jsx/helpers/getButtonSize.js +0 -23
  538. package/dist/jsx/helpers/getExpandedShorthands.js +0 -18
  539. package/dist/jsx/helpers/getSize.js +0 -12
  540. package/dist/jsx/helpers/getSplitStyles.js +0 -302
  541. package/dist/jsx/helpers/getStylesAtomic.js +0 -130
  542. package/dist/jsx/helpers/getStylesAtomic.native.js +0 -9
  543. package/dist/jsx/helpers/insertStyleRule.js +0 -94
  544. package/dist/jsx/helpers/isObj.js +0 -6
  545. package/dist/jsx/helpers/isTamaguiElement.js +0 -10
  546. package/dist/jsx/helpers/matchMedia.js +0 -17
  547. package/dist/jsx/helpers/matchMedia.native.js +0 -8
  548. package/dist/jsx/helpers/proxyThemeVariables.js +0 -17
  549. package/dist/jsx/helpers/themeable.js +0 -24
  550. package/dist/jsx/helpers/validate.js +0 -75
  551. package/dist/jsx/helpers/withStaticProperties.js +0 -9
  552. package/dist/jsx/helpers/wrapThemeManagerContext.js +0 -10
  553. package/dist/jsx/hooks/useConstant.js +0 -14
  554. package/dist/jsx/hooks/useFeatures.js +0 -167
  555. package/dist/jsx/hooks/useId.js +0 -34
  556. package/dist/jsx/hooks/useIsMounted.js +0 -18
  557. package/dist/jsx/hooks/useIsTouchDevice.js +0 -16
  558. package/dist/jsx/hooks/useMedia.js +0 -158
  559. package/dist/jsx/hooks/usePressable.js +0 -13
  560. package/dist/jsx/hooks/useTheme.js +0 -177
  561. package/dist/jsx/hooks/useUnmountEffect.js +0 -10
  562. package/dist/jsx/index.js +0 -54
  563. package/dist/jsx/static.js +0 -16
  564. package/dist/jsx/styled.js +0 -47
  565. package/dist/jsx/types-rnw.js +0 -0
  566. package/dist/jsx/types.js +0 -0
  567. package/dist/jsx/views/Slot.js +0 -56
  568. package/dist/jsx/views/Stack.js +0 -12
  569. package/dist/jsx/views/Text.js +0 -61
  570. package/dist/jsx/views/TextAncestorContext.js +0 -15
  571. package/dist/jsx/views/Theme.js +0 -31
  572. package/dist/jsx/views/ThemeInverse.js +0 -22
  573. package/dist/jsx/views/ThemeProvider.js +0 -35
  574. package/dist/jsx/views/ThemeReset.js +0 -34
  575. package/types/helpers/addStylesUsingClassname.d.ts +0 -3
  576. package/types/helpers/addStylesUsingClassname.d.ts.map +0 -1
  577. package/types/helpers/fixNativeShadow.native.d.ts +0 -2
  578. package/types/helpers/fixNativeShadow.native.d.ts.map +0 -1
  579. package/types/helpers/getButtonSize.d.ts +0 -8
  580. package/types/helpers/getButtonSize.d.ts.map +0 -1
  581. package/types/helpers/getTextSize.d.ts +0 -3
  582. package/types/helpers/getTextSize.d.ts.map +0 -1
@@ -0,0 +1,34 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var useEvent_exports = {};
19
+ __export(useEvent_exports, {
20
+ useEvent: () => useEvent
21
+ });
22
+ module.exports = __toCommonJS(useEvent_exports);
23
+ var import_useGet = require("./useGet");
24
+ function useEvent(callback) {
25
+ return (0, import_useGet.useGet)(callback, defaultValue, true);
26
+ }
27
+ const defaultValue = () => {
28
+ throw new Error("Cannot call an event handler while rendering.");
29
+ };
30
+ // Annotate the CommonJS export names for ESM import in node:
31
+ 0 && (module.exports = {
32
+ useEvent
33
+ });
34
+ //# sourceMappingURL=useEvent.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useEvent.tsx"],
4
+ "sourcesContent": ["import { useGet } from './useGet'\n\ntype AnyFunction = (...args: any[]) => any\n\nexport function useEvent<T extends AnyFunction>(callback?: T): T {\n return useGet(callback, defaultValue, true) as T\n}\n\nconst defaultValue = () => {\n throw new Error('Cannot call an event handler while rendering.')\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAuB;AAIhB,kBAAyC,UAAiB;AAC/D,SAAO,0BAAO,UAAU,cAAc,IAAI;AAC5C;AAEA,MAAM,eAAe,MAAM;AACzB,QAAM,IAAI,MAAM,+CAA+C;AACjE;",
6
+ "names": []
7
+ }
@@ -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 __name = (target, value) => __defProp(target, "name", { value, configurable: true });
25
24
  var __objRest = (source, exclude) => {
26
25
  var target = {};
27
26
  for (var prop in source)
@@ -54,42 +53,49 @@ __export(useFeatures_exports, {
54
53
  });
55
54
  module.exports = __toCommonJS(useFeatures_exports);
56
55
  var import_react = __toESM(require("react"));
56
+ var import_conf = require("../conf");
57
57
  var import_platform = require("../constants/platform");
58
58
  var import_getSplitStyles = require("../helpers/getSplitStyles");
59
59
  var import_useMedia = require("./useMedia");
60
- const createDefinition = /* @__PURE__ */ __name(({
60
+ const createDefinition = ({
61
61
  Component,
62
62
  propNames
63
63
  }) => ({
64
64
  isEnabled: (props) => propNames.some((name) => !!props[name]),
65
65
  Component
66
- }), "createDefinition");
66
+ });
67
67
  let featureDefinitions = null;
68
- const useFeatures = /* @__PURE__ */ __name((props, utils) => {
68
+ let tamaguiConfig;
69
+ const useFeatures = (props, utils) => {
69
70
  if (!featureDefinitions) {
70
71
  featureDefinitions = loadFeatures();
71
72
  }
72
- const features = [];
73
+ const elements = [];
74
+ const enabled = {};
73
75
  for (const name in featureDefinitions) {
74
76
  const { isEnabled, Component } = featureDefinitions[name];
75
77
  if (isEnabled(props) && Component) {
76
- features.push(/* @__PURE__ */ import_react.default.createElement(Component, __spreadProps(__spreadValues({
78
+ enabled[name] = true;
79
+ elements.push(/* @__PURE__ */ import_react.default.createElement(Component, __spreadProps(__spreadValues({
77
80
  key: name
78
81
  }, props), {
79
82
  _utils: utils
80
83
  })));
81
84
  }
82
85
  }
83
- return features;
84
- }, "useFeatures");
86
+ return {
87
+ elements,
88
+ enabled
89
+ };
90
+ };
85
91
  function loadFeatures() {
86
92
  return {
87
93
  animation: loadAnimationFeature(),
88
94
  mediaQuery: loadMediaQueryFeature()
89
95
  };
90
96
  }
91
- __name(loadFeatures, "loadFeatures");
92
97
  function loadAnimationFeature() {
98
+ tamaguiConfig = tamaguiConfig || (0, import_conf.getConfig)();
93
99
  return createDefinition({
94
100
  Component: (_a) => {
95
101
  var _b = _a, { _utils } = _b, props = __objRest(_b, ["_utils"]);
@@ -113,11 +119,11 @@ function loadAnimationFeature() {
113
119
  pseudos,
114
120
  onDidAnimate,
115
121
  staticConfig,
116
- getStyle({ isEntering, exitVariant, enterVariant } = {}) {
122
+ getStyle({ isExiting, isEntering, exitVariant, enterVariant } = {}) {
117
123
  var _a2, _b2, _c, _d;
118
124
  const style = inStyle || {};
119
- const enterStyle = isEntering === true || state.mounted === false ? enterVariant && ((_a2 = staticConfig.variants) == null ? void 0 : _a2[enterVariant]["true"]) ? (0, import_getSplitStyles.getSubStyle)((_b2 = staticConfig.variants) == null ? void 0 : _b2[enterVariant]["true"], staticConfig, theme, props, state) || pseudos.enterStyle : pseudos.enterStyle : null;
120
- const exitStyle = isEntering === false ? exitVariant && ((_c = staticConfig.variants) == null ? void 0 : _c[exitVariant]["true"]) ? (0, import_getSplitStyles.getSubStyle)((_d = staticConfig.variants) == null ? void 0 : _d[exitVariant]["true"], staticConfig, theme, props, state) || pseudos.exitStyle : pseudos.exitStyle : null;
125
+ const enterStyle = isEntering ? enterVariant && ((_a2 = staticConfig.variants) == null ? void 0 : _a2[enterVariant]["true"]) ? (0, import_getSplitStyles.getSubStyle)((_b2 = staticConfig.variants) == null ? void 0 : _b2[enterVariant]["true"], staticConfig, theme, props, state, tamaguiConfig) || pseudos.enterStyle : pseudos.enterStyle : null;
126
+ const exitStyle = isExiting ? exitVariant && ((_c = staticConfig.variants) == null ? void 0 : _c[exitVariant]["true"]) ? (0, import_getSplitStyles.getSubStyle)((_d = staticConfig.variants) == null ? void 0 : _d[exitVariant]["true"], staticConfig, theme, props, state, tamaguiConfig) || pseudos.exitStyle : pseudos.exitStyle : null;
121
127
  ensureBaseHasDefaults(style, enterStyle, pseudos.hoverStyle, pseudos.focusStyle, pseudos.pressStyle, pseudos.pressStyle);
122
128
  enterStyle && merge(style, enterStyle);
123
129
  state.hover && pseudos.hoverStyle && merge(style, pseudos.hoverStyle);
@@ -137,7 +143,6 @@ function loadAnimationFeature() {
137
143
  propNames: ["animation"]
138
144
  });
139
145
  }
140
- __name(loadAnimationFeature, "loadAnimationFeature");
141
146
  const defaults = {
142
147
  left: 0,
143
148
  right: 0,
@@ -181,7 +186,6 @@ function ensureBaseHasDefaults(base, ...pseudos) {
181
186
  }
182
187
  }
183
188
  }
184
- __name(ensureBaseHasDefaults, "ensureBaseHasDefaults");
185
189
  function merge(base, next) {
186
190
  if (!next.transform || !base.transform) {
187
191
  Object.assign(base, next);
@@ -199,28 +203,26 @@ function merge(base, next) {
199
203
  }
200
204
  }
201
205
  }
202
- __name(merge, "merge");
203
206
  function loadMediaQueryFeature() {
204
207
  const mediaPropNames = Object.keys(import_useMedia.mediaState);
205
208
  return createDefinition({
206
209
  Component: (props) => {
207
- const keys = mediaPropNames.filter((x) => x in props);
210
+ const mediaKeys = mediaPropNames.filter((x) => x in props);
208
211
  (0, import_platform.useIsomorphicLayoutEffect)(() => {
209
- for (const key of keys) {
212
+ for (const key of mediaKeys) {
210
213
  (0, import_useMedia.addMediaQueryListener)(key, props._utils.forceUpdate);
211
214
  }
212
215
  return () => {
213
- for (const key of keys) {
216
+ for (const key of mediaKeys) {
214
217
  (0, import_useMedia.removeMediaQueryListener)(key, props._utils.forceUpdate);
215
218
  }
216
219
  };
217
- }, [keys.join(",")]);
220
+ }, [mediaKeys.join(",")]);
218
221
  return null;
219
222
  },
220
223
  propNames: mediaPropNames
221
224
  });
222
225
  }
223
- __name(loadMediaQueryFeature, "loadMediaQueryFeature");
224
226
  // Annotate the CommonJS export names for ESM import in node:
225
227
  0 && (module.exports = {
226
228
  useFeatures
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useFeatures.tsx"],
4
- "sourcesContent": ["import React from 'react'\nimport { ViewStyle } from 'react-native'\n\nimport { isWeb, useIsomorphicLayoutEffect } from '../constants/platform'\nimport { getSubStyle } from '../helpers/getSplitStyles'\nimport { PseudoStyles, SplitStyleState } from '../types'\nimport {\n StaticConfig,\n StaticConfigParsed,\n TamaguiComponentState,\n UseAnimationHook,\n UseAnimationProps,\n} from '../types'\nimport { addMediaQueryListener, mediaState, removeMediaQueryListener } from './useMedia'\n\ntype FeatureDefinition = {\n isEnabled: (props: any) => boolean\n Component: any\n}\n\ntype FeatureUtils = {\n forceUpdate: Function\n state: SplitStyleState\n setStateShallow: (next: Partial<TamaguiComponentState>) => void\n useAnimations?: UseAnimationHook\n pseudos: PseudoStyles\n style: ViewStyle | null | undefined\n staticConfig: StaticConfigParsed\n theme: any\n onDidAnimate?: () => void\n}\n\nconst createDefinition = ({\n Component,\n propNames,\n}: {\n Component: (props: { _utils: FeatureUtils; [key: string]: any }) => void\n propNames: string[]\n}): FeatureDefinition => ({\n isEnabled: (props: any) => propNames.some((name) => !!props[name]),\n Component,\n})\n\nlet featureDefinitions: Record<string, FeatureDefinition> | null = null\n\nexport const useFeatures = (props: any, utils?: FeatureUtils) => {\n if (!featureDefinitions) {\n featureDefinitions = loadFeatures()\n }\n const features: JSX.Element[] = []\n for (const name in featureDefinitions) {\n const { isEnabled, Component } = featureDefinitions[name]\n if (isEnabled(props) && Component) {\n features.push(<Component key={name} {...props} _utils={utils} />)\n }\n }\n return features\n}\n\nfunction loadFeatures(): Record<string, FeatureDefinition> {\n return {\n // loads animations and sets state with the results\n animation: loadAnimationFeature(),\n\n // will update the parent whenever media query changes\n // no need on web, media queries are inserted and run in css\n mediaQuery: loadMediaQueryFeature(),\n }\n}\n\nfunction loadAnimationFeature() {\n return createDefinition({\n Component: ({ _utils, ...props }) => {\n const {\n state,\n useAnimations,\n pseudos,\n style: inStyle,\n setStateShallow,\n staticConfig,\n theme,\n onDidAnimate,\n } = _utils\n\n if (!useAnimations) {\n console.error('no useAnimations hook provided')\n return null\n }\n\n // const animatedStyleIn =\n\n // we always have .animation set\n const propsWithAnimation = props as UseAnimationProps\n\n const res = useAnimations(propsWithAnimation, {\n state,\n pseudos,\n onDidAnimate,\n staticConfig,\n getStyle({ isEntering, exitVariant, enterVariant } = {}) {\n // we have to merge such that transforms keys all exist\n const style = inStyle || {}\n\n const enterStyle =\n isEntering === true || state.mounted === false\n ? enterVariant && staticConfig.variants?.[enterVariant]['true']\n ? getSubStyle(\n staticConfig.variants?.[enterVariant]['true'],\n staticConfig,\n theme,\n props,\n state\n ) || pseudos.enterStyle\n : null || pseudos.enterStyle\n : null\n\n const exitStyle =\n isEntering === false\n ? exitVariant && staticConfig.variants?.[exitVariant]['true']\n ? getSubStyle(\n staticConfig.variants?.[exitVariant]['true'],\n staticConfig,\n theme,\n props,\n state\n ) || pseudos.exitStyle\n : null || pseudos.exitStyle\n : null\n\n // if you have hoverStyle={{ scale: 1.1 }} and don't have scale set on the base style\n // no animation will run! this is really confusing. this will look at all variants,\n // and fill in base styles if they don't exist. eg:\n // input:\n // base: {}\n // hoverStyle: { scale: 2 }\n // enterStyle: { x: 100 }\n // output:\n // base: { x: 0, scale: 1 }\n ensureBaseHasDefaults(\n style,\n enterStyle,\n pseudos.hoverStyle,\n pseudos.focusStyle,\n pseudos.pressStyle,\n pseudos.pressStyle\n )\n\n enterStyle && merge(style, enterStyle)\n state.hover && pseudos.hoverStyle && merge(style, pseudos.hoverStyle)\n state.focus && pseudos.focusStyle && merge(style, pseudos.focusStyle)\n state.press && pseudos.pressStyle && merge(style, pseudos.pressStyle)\n exitStyle && merge(style, exitStyle)\n\n return style\n },\n //, delay\n })\n\n useIsomorphicLayoutEffect(() => {\n setStateShallow({\n animation: res,\n })\n }, [res])\n\n return null\n },\n propNames: ['animation'],\n })\n}\n\nconst defaults = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n opacity: 1,\n translateX: 0,\n translateY: 0,\n skew: 0,\n skewX: 0,\n skewY: 0,\n scale: 1,\n rotate: '0deg',\n rotateY: '0deg',\n rotateX: '0deg',\n}\n\nfunction ensureBaseHasDefaults(base: ViewStyle, ...pseudos: (ViewStyle | null | undefined)[]) {\n for (const pseudo of pseudos) {\n if (!pseudo) continue\n for (const key in pseudo) {\n const val = pseudo[key]\n if (key === 'transform') {\n for (const t of val) {\n const tkey = Object.keys(t)[0]\n const defaultVal = defaults[tkey]\n const tDefaultVal = { [tkey]: defaultVal } as any\n if (!base.transform) {\n base.transform = [tDefaultVal]\n } else {\n if (!base.transform.find((x) => x[tkey])) {\n base.transform.push(tDefaultVal)\n }\n }\n }\n } else {\n if (!(key in base)) {\n base[key] = defaults[key]\n }\n }\n }\n }\n}\n\nfunction merge(base: ViewStyle, next: ViewStyle) {\n if (!next.transform || !base.transform) {\n Object.assign(base, next)\n return\n }\n const { transform, ...rest } = next\n Object.assign(base, rest)\n for (const t of transform) {\n const key = Object.keys(t)[0]\n const existing = base.transform.find((x) => key in x)\n if (existing) {\n existing[key] = t[key]\n } else {\n base.transform.push(t)\n }\n }\n}\n\nfunction loadMediaQueryFeature() {\n const mediaPropNames = Object.keys(mediaState)\n\n return createDefinition({\n Component: (props: any) => {\n const keys = mediaPropNames.filter((x) => x in props)\n\n useIsomorphicLayoutEffect(() => {\n for (const key of keys) {\n addMediaQueryListener(key, props._utils.forceUpdate)\n }\n return () => {\n for (const key of keys) {\n removeMediaQueryListener(key, props._utils.forceUpdate)\n }\n }\n }, [keys.join(',')])\n\n return null\n },\n propNames: mediaPropNames,\n })\n}\n\n// TODO\n// measureLayout: createDefinition({\n// Component: (props) => {\n// console.log('measure', props)\n// return null\n// },\n// propNames: ['onLayout'],\n// }),\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import React from 'react'\nimport { RefObject } from 'react'\nimport { View, ViewStyle } from 'react-native'\n\nimport { getConfig } from '../conf'\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\nimport { getSubStyle } from '../helpers/getSplitStyles'\nimport {\n PseudoStyles,\n SplitStyleState,\n StaticConfigParsed,\n TamaguiComponentState,\n TamaguiInternalConfig,\n UseAnimationHook,\n UseAnimationProps,\n} from '../types'\nimport { addMediaQueryListener, mediaState, removeMediaQueryListener } from './useMedia'\n\ntype FeatureDefinition = {\n isEnabled: (props: any) => boolean\n Component: any\n}\n\ntype FeatureUtils = {\n forceUpdate: Function\n state: SplitStyleState\n setStateShallow: (next: Partial<TamaguiComponentState>) => void\n useAnimations?: UseAnimationHook\n pseudos: PseudoStyles\n style: ViewStyle | null | undefined\n staticConfig: StaticConfigParsed\n theme: any\n onDidAnimate?: () => void\n hostRef: RefObject<HTMLElement | View>\n}\n\nconst createDefinition = ({\n Component,\n propNames,\n}: {\n Component: (props: { _utils: FeatureUtils; [key: string]: any }) => void\n propNames: string[]\n}): FeatureDefinition => ({\n isEnabled: (props: any) => propNames.some((name) => !!props[name]),\n Component,\n})\n\nlet featureDefinitions: Record<string, FeatureDefinition> | null = null\nlet tamaguiConfig: TamaguiInternalConfig\n\ntype FeatureKeys = keyof ReturnType<typeof loadFeatures>\n\nexport const useFeatures = (props: any, utils?: FeatureUtils) => {\n if (!featureDefinitions) {\n featureDefinitions = loadFeatures()\n }\n const elements: JSX.Element[] = []\n const enabled: { [key in FeatureKeys]?: boolean } = {}\n for (const name in featureDefinitions) {\n const { isEnabled, Component } = featureDefinitions[name]\n if (isEnabled(props) && Component) {\n enabled[name] = true\n elements.push(<Component key={name} {...props} _utils={utils} />)\n }\n }\n return {\n elements,\n enabled,\n }\n}\n\nfunction loadFeatures() {\n return {\n // loads animations and sets state with the results\n animation: loadAnimationFeature(),\n\n // will update the parent whenever media query changes\n // no need on web, media queries are inserted and run in css\n mediaQuery: loadMediaQueryFeature(),\n } as const\n}\n\nfunction loadAnimationFeature() {\n tamaguiConfig = tamaguiConfig || getConfig()\n\n return createDefinition({\n Component: ({ _utils, ...props }) => {\n const {\n state,\n useAnimations,\n pseudos,\n style: inStyle,\n setStateShallow,\n staticConfig,\n theme,\n onDidAnimate,\n } = _utils\n\n if (!useAnimations) {\n console.error('no useAnimations hook provided')\n return null\n }\n\n // we always have .animation set\n const propsWithAnimation = props as UseAnimationProps\n\n const res = useAnimations(propsWithAnimation, {\n state,\n pseudos,\n onDidAnimate,\n staticConfig,\n getStyle({ isExiting, isEntering, exitVariant, enterVariant } = {}) {\n // we have to merge such that transforms keys all exist\n const style = inStyle || {}\n\n const enterStyle = isEntering\n ? enterVariant && staticConfig.variants?.[enterVariant]['true']\n ? getSubStyle(\n staticConfig.variants?.[enterVariant]['true'],\n staticConfig,\n theme,\n props,\n state,\n tamaguiConfig\n ) || pseudos.enterStyle\n : null || pseudos.enterStyle\n : null\n\n const exitStyle = isExiting\n ? exitVariant && staticConfig.variants?.[exitVariant]['true']\n ? getSubStyle(\n staticConfig.variants?.[exitVariant]['true'],\n staticConfig,\n theme,\n props,\n state,\n tamaguiConfig\n ) || pseudos.exitStyle\n : null || pseudos.exitStyle\n : null\n\n // if you have hoverStyle={{ scale: 1.1 }} and don't have scale set on the base style\n // no animation will run! this is really confusing. this will look at all variants,\n // and fill in base styles if they don't exist. eg:\n // input:\n // base: {}\n // hoverStyle: { scale: 2 }\n // enterStyle: { x: 100 }\n // output:\n // base: { x: 0, scale: 1 }\n ensureBaseHasDefaults(\n style,\n enterStyle,\n pseudos.hoverStyle,\n pseudos.focusStyle,\n pseudos.pressStyle,\n pseudos.pressStyle\n )\n\n enterStyle && merge(style, enterStyle)\n state.hover && pseudos.hoverStyle && merge(style, pseudos.hoverStyle)\n state.focus && pseudos.focusStyle && merge(style, pseudos.focusStyle)\n state.press && pseudos.pressStyle && merge(style, pseudos.pressStyle)\n exitStyle && merge(style, exitStyle)\n\n return style\n },\n //, delay\n })\n\n useIsomorphicLayoutEffect(() => {\n setStateShallow({\n animation: res,\n })\n }, [res])\n\n return null\n },\n propNames: ['animation'],\n })\n}\n\nconst defaults = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n opacity: 1,\n translateX: 0,\n translateY: 0,\n skew: 0,\n skewX: 0,\n skewY: 0,\n scale: 1,\n rotate: '0deg',\n rotateY: '0deg',\n rotateX: '0deg',\n}\n\nfunction ensureBaseHasDefaults(base: ViewStyle, ...pseudos: (ViewStyle | null | undefined)[]) {\n for (const pseudo of pseudos) {\n if (!pseudo) continue\n for (const key in pseudo) {\n const val = pseudo[key]\n if (key === 'transform') {\n for (const t of val) {\n const tkey = Object.keys(t)[0]\n const defaultVal = defaults[tkey]\n const tDefaultVal = { [tkey]: defaultVal } as any\n if (!base.transform) {\n base.transform = [tDefaultVal]\n } else {\n if (!base.transform.find((x) => x[tkey])) {\n base.transform.push(tDefaultVal)\n }\n }\n }\n } else {\n if (!(key in base)) {\n base[key] = defaults[key]\n }\n }\n }\n }\n}\n\nfunction merge(base: ViewStyle, next: ViewStyle) {\n if (!next.transform || !base.transform) {\n Object.assign(base, next)\n return\n }\n const { transform, ...rest } = next\n Object.assign(base, rest)\n for (const t of transform) {\n const key = Object.keys(t)[0]\n const existing = base.transform.find((x) => key in x)\n if (existing) {\n existing[key] = t[key]\n } else {\n base.transform.push(t)\n }\n }\n}\n\nfunction loadMediaQueryFeature() {\n const mediaPropNames = Object.keys(mediaState)\n\n return createDefinition({\n Component: (props: any) => {\n const mediaKeys = mediaPropNames.filter((x) => x in props)\n\n useIsomorphicLayoutEffect(() => {\n for (const key of mediaKeys) {\n addMediaQueryListener(key, props._utils.forceUpdate)\n }\n return () => {\n for (const key of mediaKeys) {\n removeMediaQueryListener(key, props._utils.forceUpdate)\n }\n }\n }, [mediaKeys.join(',')])\n\n return null\n },\n propNames: mediaPropNames,\n })\n}\n\n// TODO\n// measureLayout: createDefinition({\n// Component: (props) => {\n// console.log('measure', props)\n// return null\n// },\n// propNames: ['onLayout'],\n// }),\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,39 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var useGet_exports = {};
19
+ __export(useGet_exports, {
20
+ useGet: () => useGet
21
+ });
22
+ module.exports = __toCommonJS(useGet_exports);
23
+ var import_react = require("react");
24
+ var import_platform = require("../constants/platform");
25
+ function useGet(currentValue, initialValue, forwardToFunction) {
26
+ const curRef = (0, import_react.useRef)(initialValue ?? currentValue);
27
+ (0, import_platform.useIsomorphicLayoutEffect)(() => {
28
+ curRef.current = currentValue;
29
+ });
30
+ return (0, import_react.useCallback)(forwardToFunction ? (...args) => {
31
+ var _a;
32
+ return (_a = curRef.current) == null ? void 0 : _a.apply(null, args);
33
+ } : () => curRef.current, []);
34
+ }
35
+ // Annotate the CommonJS export names for ESM import in node:
36
+ 0 && (module.exports = {
37
+ useGet
38
+ });
39
+ //# sourceMappingURL=useGet.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useGet.tsx"],
4
+ "sourcesContent": ["import { useCallback, useRef } from 'react'\n\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\n\n// keeps a reference to the current value easily\n\nexport function useGet<A>(\n currentValue: A,\n initialValue?: any,\n forwardToFunction?: boolean\n): () => A {\n const curRef = useRef<any>(initialValue ?? currentValue)\n useIsomorphicLayoutEffect(() => {\n curRef.current = currentValue\n })\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useCallback(\n forwardToFunction ? (...args) => curRef.current?.apply(null, args) : () => curRef.current,\n []\n )\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAoC;AAEpC,sBAA0C;AAInC,gBACL,cACA,cACA,mBACS;AACT,QAAM,SAAS,yBAAY,gBAAgB,YAAY;AACvD,iDAA0B,MAAM;AAC9B,WAAO,UAAU;AAAA,EACnB,CAAC;AAED,SAAO,8BACL,oBAAoB,IAAI,SAAM;AAjBlC;AAiBqC,wBAAO,YAAP,mBAAgB,MAAM,MAAM;AAAA,MAAQ,MAAM,OAAO,SAClF,CAAC,CACH;AACF;",
6
+ "names": []
7
+ }
@@ -4,7 +4,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __getProtoOf = Object.getPrototypeOf;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
7
  var __export = (target, all) => {
9
8
  for (var name in all)
10
9
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -31,11 +30,12 @@ let id = 0;
31
30
  function genId() {
32
31
  return ++id;
33
32
  }
34
- __name(genId, "genId");
35
33
  function useId(providedId) {
36
- if (typeof React.useId === "function") {
37
- let id3 = React.useId(providedId);
38
- return providedId != null ? providedId : id3;
34
+ if (import_platform.isWeb) {
35
+ if (typeof React.useId === "function") {
36
+ let id3 = React.useId();
37
+ return providedId != null ? providedId : id3;
38
+ }
39
39
  }
40
40
  let initialId = providedId ?? (serverHandoffComplete ? genId() : null);
41
41
  let [id2, setId] = React.useState(initialId);
@@ -51,7 +51,6 @@ function useId(providedId) {
51
51
  }, []);
52
52
  return providedId ?? id2 ?? void 0;
53
53
  }
54
- __name(useId, "useId");
55
54
  // Annotate the CommonJS export names for ESM import in node:
56
55
  0 && (module.exports = {
57
56
  useId
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useId.tsx"],
4
- "sourcesContent": ["/*\n * Welcome to @reach/auto-id!\n\n * Let's see if we can make sense of why this hook exists and its\n * implementation.\n *\n * Some background:\n * 1. Accessibility APIs rely heavily on element IDs\n * 2. Requiring developers to put IDs on every element in Reach UI is both\n * cumbersome and error-prone\n * 3. With a component model, we can generate IDs for them!\n *\n * Solution 1: Generate random IDs.\n *\n * This works great as long as you don't server render your app. When React (in\n * the client) tries to reuse the markup from the server, the IDs won't match\n * and React will then recreate the entire DOM tree.\n *\n * Solution 2: Increment an integer\n *\n * This sounds great. Since we're rendering the exact same tree on the server\n * and client, we can increment a counter and get a deterministic result between\n * client and server. Also, JS integers can go up to nine-quadrillion. I'm\n * pretty sure the tab will be closed before an app never needs\n * 10 quadrillion IDs!\n *\n * Problem solved, right?\n *\n * Ah, but there's a catch! React's concurrent rendering makes this approach\n * non-deterministic. While the client and server will end up with the same\n * elements in the end, depending on suspense boundaries (and possibly some user\n * input during the initial render) the incrementing integers won't always match\n * up.\n *\n * Solution 3: Don't use IDs at all on the server; patch after first render.\n *\n * What we've done here is solution 2 with some tricks. With this approach, the\n * ID returned is an empty string on the first render. This way the server and\n * client have the same markup no matter how wild the concurrent rendering may\n * have gotten.\n *\n * After the render, we patch up the components with an incremented ID. This\n * causes a double render on any components with `useId`. Shouldn't be a problem\n * since the components using this hook should be small, and we're only updating\n * the ID attribute on the DOM, nothing big is happening.\n *\n * It doesn't have to be an incremented number, though--we could do generate\n * random strings instead, but incrementing a number is probably the cheapest\n * thing we can do.\n *\n * Additionally, we only do this patchup on the very first client render ever.\n * Any calls to `useId` that happen dynamically in the client will be\n * populated immediately with a value. So, we only get the double render after\n * server hydration and never again, SO BACK OFF ALRIGHT?\n */\n\nimport * as React from 'react'\n\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\n\nlet serverHandoffComplete = false\nlet id = 0\nfunction genId() {\n return ++id\n}\n\n/* eslint-disable react-hooks/rules-of-hooks */\n\n/**\n * useId\n *\n * Autogenerate IDs to facilitate WAI-ARIA and server rendering.\n *\n * Note: The returned ID will initially be `null` and will update after a\n * component mounts. Users may need to supply their own ID if they need\n * consistent values for SSR.\n *\n * @see Docs https://reach.tech/auto-id\n */\nfunction useId(idFromProps: string): string\nfunction useId(idFromProps: number): number\nfunction useId(idFromProps: string | number): string | number\nfunction useId(idFromProps: string | undefined | null): string | undefined\nfunction useId(idFromProps: number | undefined | null): number | undefined\nfunction useId(idFromProps: string | number | undefined | null): string | number | undefined\nfunction useId(): string | undefined\n\nfunction useId(providedId?: number | string | undefined | null) {\n // TODO: Remove error flag when updating internal deps to React 18. None of\n // our tricks will play well with concurrent rendering anyway.\n // @ts-expect-error\n if (typeof React.useId === 'function') {\n // @ts-expect-error\n let id = React.useId(providedId)\n return providedId != null ? providedId : id\n }\n\n // If this instance isn't part of the initial render, we don't have to do the\n // double render/patch-up dance. We can just generate the ID and return it.\n let initialId = providedId ?? (serverHandoffComplete ? genId() : null)\n let [id, setId] = React.useState(initialId)\n\n useIsomorphicLayoutEffect(() => {\n if (id === null) {\n // Patch the ID after render. We do this in `useLayoutEffect` to avoid any\n // rendering flicker, though it'll make the first render slower (unlikely\n // to matter, but you're welcome to measure your app and let us know if\n // it's a problem).\n setId(genId())\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n React.useEffect(() => {\n if (serverHandoffComplete === false) {\n // Flag all future uses of `useId` to skip the update dance. This is in\n // `useEffect` because it goes after `useLayoutEffect`, ensuring we don't\n // accidentally bail out of the patch-up dance prematurely.\n serverHandoffComplete = true\n }\n }, [])\n\n return providedId ?? id ?? undefined\n}\n\nexport { useId }\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAwDA,YAAuB;AAEvB,sBAA0C;AAE1C,IAAI,wBAAwB;AAC5B,IAAI,KAAK;AACT,iBAAiB;AACf,SAAO,EAAE;AACX;AAFS;AAyBT,eAAe,YAAiD;AAI9D,MAAI,OAAO,MAAM,UAAU,YAAY;AAErC,QAAI,MAAK,MAAM,MAAM,UAAU;AAC/B,WAAO,cAAc,OAAO,aAAa;AAAA,EAC3C;AAIA,MAAI,YAAY,cAAe,yBAAwB,MAAM,IAAI;AACjE,MAAI,CAAC,KAAI,SAAS,MAAM,SAAS,SAAS;AAE1C,iDAA0B,MAAM;AAC9B,QAAI,QAAO,MAAM;AAKf,YAAM,MAAM,CAAC;AAAA,IACf;AAAA,EAEF,GAAG,CAAC,CAAC;AAEL,QAAM,UAAU,MAAM;AACpB,QAAI,0BAA0B,OAAO;AAInC,8BAAwB;AAAA,IAC1B;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO,cAAc,OAAM;AAC7B;AApCS;",
4
+ "sourcesContent": ["/*\n * Welcome to @reach/auto-id!\n\n * Let's see if we can make sense of why this hook exists and its\n * implementation.\n *\n * Some background:\n * 1. Accessibility APIs rely heavily on element IDs\n * 2. Requiring developers to put IDs on every element in Reach UI is both\n * cumbersome and error-prone\n * 3. With a component model, we can generate IDs for them!\n *\n * Solution 1: Generate random IDs.\n *\n * This works great as long as you don't server render your app. When React (in\n * the client) tries to reuse the markup from the server, the IDs won't match\n * and React will then recreate the entire DOM tree.\n *\n * Solution 2: Increment an integer\n *\n * This sounds great. Since we're rendering the exact same tree on the server\n * and client, we can increment a counter and get a deterministic result between\n * client and server. Also, JS integers can go up to nine-quadrillion. I'm\n * pretty sure the tab will be closed before an app never needs\n * 10 quadrillion IDs!\n *\n * Problem solved, right?\n *\n * Ah, but there's a catch! React's concurrent rendering makes this approach\n * non-deterministic. While the client and server will end up with the same\n * elements in the end, depending on suspense boundaries (and possibly some user\n * input during the initial render) the incrementing integers won't always match\n * up.\n *\n * Solution 3: Don't use IDs at all on the server; patch after first render.\n *\n * What we've done here is solution 2 with some tricks. With this approach, the\n * ID returned is an empty string on the first render. This way the server and\n * client have the same markup no matter how wild the concurrent rendering may\n * have gotten.\n *\n * After the render, we patch up the components with an incremented ID. This\n * causes a double render on any components with `useId`. Shouldn't be a problem\n * since the components using this hook should be small, and we're only updating\n * the ID attribute on the DOM, nothing big is happening.\n *\n * It doesn't have to be an incremented number, though--we could do generate\n * random strings instead, but incrementing a number is probably the cheapest\n * thing we can do.\n *\n * Additionally, we only do this patchup on the very first client render ever.\n * Any calls to `useId` that happen dynamically in the client will be\n * populated immediately with a value. So, we only get the double render after\n * server hydration and never again, SO BACK OFF ALRIGHT?\n */\n\nimport * as React from 'react'\n\nimport { isWeb, useIsomorphicLayoutEffect } from '../constants/platform'\n\nlet serverHandoffComplete = false\nlet id = 0\nfunction genId() {\n return ++id\n}\n\n/* eslint-disable react-hooks/rules-of-hooks */\n\n/**\n * useId\n *\n * Autogenerate IDs to facilitate WAI-ARIA and server rendering.\n *\n * Note: The returned ID will initially be `null` and will update after a\n * component mounts. Users may need to supply their own ID if they need\n * consistent values for SSR.\n *\n * @see Docs https://reach.tech/auto-id\n */\nfunction useId(idFromProps: string): string\nfunction useId(idFromProps: number): number\nfunction useId(idFromProps: string | number): string | number\nfunction useId(idFromProps: string | undefined | null): string | undefined\nfunction useId(idFromProps: number | undefined | null): number | undefined\nfunction useId(idFromProps: string | number | undefined | null): string | number | undefined\nfunction useId(): string | undefined\n\nfunction useId(providedId?: number | string | undefined | null) {\n // TODO: Remove error flag when updating internal deps to React 18. None of\n // our tricks will play well with concurrent rendering anyway.\n\n // native doesn't support until next react-native version, need to remove eventually\n if (isWeb) {\n if (typeof React.useId === 'function') {\n let id = React.useId()\n return providedId != null ? providedId : id\n }\n }\n\n // If this instance isn't part of the initial render, we don't have to do the\n // double render/patch-up dance. We can just generate the ID and return it.\n let initialId = providedId ?? (serverHandoffComplete ? genId() : null)\n let [id, setId] = React.useState(initialId)\n\n useIsomorphicLayoutEffect(() => {\n if (id === null) {\n // Patch the ID after render. We do this in `useLayoutEffect` to avoid any\n // rendering flicker, though it'll make the first render slower (unlikely\n // to matter, but you're welcome to measure your app and let us know if\n // it's a problem).\n setId(genId())\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n React.useEffect(() => {\n if (serverHandoffComplete === false) {\n // Flag all future uses of `useId` to skip the update dance. This is in\n // `useEffect` because it goes after `useLayoutEffect`, ensuring we don't\n // accidentally bail out of the patch-up dance prematurely.\n serverHandoffComplete = true\n }\n }, [])\n\n return providedId ?? id ?? undefined\n}\n\nexport { useId }\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAwDA,YAAuB;AAEvB,sBAAiD;AAEjD,IAAI,wBAAwB;AAC5B,IAAI,KAAK;AACT,iBAAiB;AACf,SAAO,EAAE;AACX;AAuBA,eAAe,YAAiD;AAK9D,MAAI,uBAAO;AACT,QAAI,OAAO,MAAM,UAAU,YAAY;AACrC,UAAI,MAAK,MAAM,MAAM;AACrB,aAAO,cAAc,OAAO,aAAa;AAAA,IAC3C;AAAA,EACF;AAIA,MAAI,YAAY,cAAe,yBAAwB,MAAM,IAAI;AACjE,MAAI,CAAC,KAAI,SAAS,MAAM,SAAS,SAAS;AAE1C,iDAA0B,MAAM;AAC9B,QAAI,QAAO,MAAM;AAKf,YAAM,MAAM,CAAC;AAAA,IACf;AAAA,EAEF,GAAG,CAAC,CAAC;AAEL,QAAM,UAAU,MAAM;AACpB,QAAI,0BAA0B,OAAO;AAInC,8BAAwB;AAAA,IAC1B;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO,cAAc,OAAM;AAC7B;",
6
6
  "names": []
7
7
  }
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
2
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
5
  var __export = (target, all) => {
7
6
  for (var name in all)
8
7
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -21,11 +20,11 @@ __export(useIsMounted_exports, {
21
20
  useIsMounted: () => useIsMounted
22
21
  });
23
22
  module.exports = __toCommonJS(useIsMounted_exports);
24
- var import_core = require("@tamagui/core");
25
23
  var import_react = require("react");
24
+ var import_platform = require("../constants/platform");
26
25
  function useIsMounted() {
27
26
  const isMounted = (0, import_react.useRef)(false);
28
- (0, import_core.useIsomorphicLayoutEffect)(() => {
27
+ (0, import_platform.useIsomorphicLayoutEffect)(() => {
29
28
  isMounted.current = true;
30
29
  return () => {
31
30
  isMounted.current = false;
@@ -33,7 +32,6 @@ function useIsMounted() {
33
32
  }, []);
34
33
  return isMounted;
35
34
  }
36
- __name(useIsMounted, "useIsMounted");
37
35
  // Annotate the CommonJS export names for ESM import in node:
38
36
  0 && (module.exports = {
39
37
  useIsMounted
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useIsMounted.ts"],
4
- "sourcesContent": ["import { useIsomorphicLayoutEffect } from '@tamagui/core'\nimport { useRef } from 'react'\n\nexport function useIsMounted() {\n const isMounted = useRef(false)\n\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true\n\n return () => {\n isMounted.current = false\n }\n }, [])\n\n return isMounted\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA0C;AAC1C,mBAAuB;AAEhB,wBAAwB;AAC7B,QAAM,YAAY,yBAAO,KAAK;AAE9B,6CAA0B,MAAM;AAC9B,cAAU,UAAU;AAEpB,WAAO,MAAM;AACX,gBAAU,UAAU;AAAA,IACtB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO;AACT;AAZgB;",
4
+ "sourcesContent": ["import { useRef } from 'react'\n\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\n\nexport function useIsMounted() {\n const isMounted = useRef(false)\n\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true\n\n return () => {\n isMounted.current = false\n }\n }, [])\n\n return isMounted\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAuB;AAEvB,sBAA0C;AAEnC,wBAAwB;AAC7B,QAAM,YAAY,yBAAO,KAAK;AAE9B,iDAA0B,MAAM;AAC9B,cAAU,UAAU;AAEpB,WAAO,MAAM;AACX,gBAAU,UAAU;AAAA,IACtB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -2,7 +2,6 @@ var __defProp = Object.defineProperty;
2
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
5
  var __export = (target, all) => {
7
6
  for (var name in all)
8
7
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -23,15 +22,15 @@ __export(useIsTouchDevice_exports, {
23
22
  module.exports = __toCommonJS(useIsTouchDevice_exports);
24
23
  var import_react = require("react");
25
24
  var import_platform = require("../constants/platform");
26
- const useIsTouchDevice = /* @__PURE__ */ __name(() => {
25
+ const useIsTouchDevice = () => {
27
26
  const [touchOnly, setTouchOnly] = (0, import_react.useState)(false);
28
27
  (0, import_platform.useIsomorphicLayoutEffect)(() => {
29
- if (import_platform.isTouchDevice) {
28
+ if (import_platform.isTouchable) {
30
29
  setTouchOnly(true);
31
30
  }
32
31
  }, []);
33
32
  return touchOnly;
34
- }, "useIsTouchDevice");
33
+ };
35
34
  // Annotate the CommonJS export names for ESM import in node:
36
35
  0 && (module.exports = {
37
36
  useIsTouchDevice
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useIsTouchDevice.tsx"],
4
- "sourcesContent": ["import { useState } from 'react'\n\nimport { isTouchDevice, useIsomorphicLayoutEffect } from '../constants/platform'\n\n// ssr friendly\n\nexport const useIsTouchDevice = () => {\n const [touchOnly, setTouchOnly] = useState(false)\n\n useIsomorphicLayoutEffect(() => {\n if (isTouchDevice) {\n setTouchOnly(true)\n }\n }, [])\n\n return touchOnly\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAEzB,sBAAyD;AAIlD,MAAM,mBAAmB,6BAAM;AACpC,QAAM,CAAC,WAAW,gBAAgB,2BAAS,KAAK;AAEhD,iDAA0B,MAAM;AAC9B,QAAI,+BAAe;AACjB,mBAAa,IAAI;AAAA,IACnB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO;AACT,GAVgC;",
4
+ "sourcesContent": ["import { useState } from 'react'\n\nimport { isTouchable, useIsomorphicLayoutEffect } from '../constants/platform'\n\n// ssr friendly\n\nexport const useIsTouchDevice = () => {\n const [touchOnly, setTouchOnly] = useState(false)\n\n useIsomorphicLayoutEffect(() => {\n if (isTouchable) {\n setTouchOnly(true)\n }\n }, [])\n\n return touchOnly\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyB;AAEzB,sBAAuD;AAIhD,MAAM,mBAAmB,MAAM;AACpC,QAAM,CAAC,WAAW,gBAAgB,2BAAS,KAAK;AAEhD,iDAA0B,MAAM;AAC9B,QAAI,6BAAa;AACf,mBAAa,IAAI;AAAA,IACnB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -16,7 +16,6 @@ var __spreadValues = (a, b) => {
16
16
  }
17
17
  return a;
18
18
  };
19
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
20
19
  var __export = (target, all) => {
21
20
  for (var name in all)
22
21
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -49,20 +48,20 @@ var import_matchMedia = require("../helpers/matchMedia");
49
48
  var import_useConstant = require("./useConstant");
50
49
  const mediaState = {};
51
50
  const mediaQueryListeners = {};
52
- const addMediaQueryListener = /* @__PURE__ */ __name((key, cb) => {
51
+ const addMediaQueryListener = (key, cb) => {
53
52
  mediaQueryListeners[key] = mediaQueryListeners[key] || /* @__PURE__ */ new Set();
54
53
  mediaQueryListeners[key].add(cb);
55
- }, "addMediaQueryListener");
56
- const removeMediaQueryListener = /* @__PURE__ */ __name((key, cb) => {
54
+ };
55
+ const removeMediaQueryListener = (key, cb) => {
57
56
  var _a;
58
57
  (_a = mediaQueryListeners[key]) == null ? void 0 : _a.delete(cb);
59
- }, "removeMediaQueryListener");
58
+ };
60
59
  let hasConfigured = false;
61
60
  const mediaQueryConfig = {};
62
- const getMedia = /* @__PURE__ */ __name(() => {
61
+ const getMedia = () => {
63
62
  return mediaState;
64
- }, "getMedia");
65
- const configureMedia = /* @__PURE__ */ __name(({
63
+ };
64
+ const configureMedia = ({
66
65
  queries,
67
66
  defaultActive = ["sm", "xs"]
68
67
  } = {}) => {
@@ -89,8 +88,7 @@ const configureMedia = /* @__PURE__ */ __name(({
89
88
  }
90
89
  }
91
90
  };
92
- __name(update, "update");
93
- const getMatch = /* @__PURE__ */ __name(() => (0, import_matchMedia.matchMedia)(str), "getMatch");
91
+ const getMatch = () => (0, import_matchMedia.matchMedia)(str);
94
92
  const match = getMatch();
95
93
  if (!match || typeof match.addListener !== "function") {
96
94
  throw new Error("\u26A0\uFE0F No match (seeing this in RN sometimes)");
@@ -104,8 +102,8 @@ const configureMedia = /* @__PURE__ */ __name(({
104
102
  mediaState[propKey] = isDefaultActive;
105
103
  }
106
104
  }
107
- }, "configureMedia");
108
- const useMedia = /* @__PURE__ */ __name(() => {
105
+ };
106
+ const useMedia = () => {
109
107
  const forceUpdate = (0, import_use_force_update.useForceUpdate)();
110
108
  const state = (0, import_react.useRef)();
111
109
  if (!state.current) {
@@ -163,11 +161,10 @@ const useMedia = /* @__PURE__ */ __name(() => {
163
161
  }
164
162
  });
165
163
  });
166
- }, "useMedia");
164
+ };
167
165
  function camelToHyphen(str) {
168
166
  return str.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`).toLowerCase();
169
167
  }
170
- __name(camelToHyphen, "camelToHyphen");
171
168
  function mediaObjectToString(query) {
172
169
  if (typeof query === "string") {
173
170
  return query;
@@ -183,7 +180,6 @@ function mediaObjectToString(query) {
183
180
  return `(${feature}: ${value})`;
184
181
  }).join(" and ");
185
182
  }
186
- __name(mediaObjectToString, "mediaObjectToString");
187
183
  // Annotate the CommonJS export names for ESM import in node:
188
184
  0 && (module.exports = {
189
185
  addMediaQueryListener,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/useMedia.tsx"],
4
4
  "sourcesContent": ["import { useForceUpdate } from '@tamagui/use-force-update'\nimport { useRef } from 'react'\n\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\nimport { matchMedia } from '../helpers/matchMedia'\nimport {\n ConfigureMediaQueryOptions,\n MediaQueries,\n MediaQueryKey,\n MediaQueryObject,\n MediaQueryState,\n} from '../types'\nimport { useConstant } from './useConstant'\n\nexport const mediaState: MediaQueryState = {} as any\nconst mediaQueryListeners: { [key: string]: Set<Function> } = {}\n\nexport const addMediaQueryListener = (key: string, cb: any) => {\n mediaQueryListeners[key] = mediaQueryListeners[key] || new Set()\n mediaQueryListeners[key].add(cb)\n}\n\nexport const removeMediaQueryListener = (key: string, cb: any) => {\n mediaQueryListeners[key]?.delete(cb)\n}\n\nlet hasConfigured = false\nexport const mediaQueryConfig: MediaQueries = {}\n\nexport const getMedia = () => {\n return mediaState\n}\n\nexport const configureMedia = ({\n queries,\n defaultActive = ['sm', 'xs'],\n}: ConfigureMediaQueryOptions = {}) => {\n if (hasConfigured) {\n console.warn(\n `Already configured mediaQueries once (you may have called getMedia() before configureMedia())`\n )\n }\n\n if (queries) {\n Object.assign(mediaQueryConfig, queries)\n hasConfigured = true\n }\n\n // setup\n for (const key in queries) {\n const str = mediaObjectToString(queries[key])\n const propKey = `$${key}`\n try {\n const getMatch = () => matchMedia(str)\n const match = getMatch()\n if (!match || typeof match.addListener !== 'function') {\n // caught below\n throw new Error('\u26A0\uFE0F No match (seeing this in RN sometimes)')\n }\n mediaState[propKey] = !!match.matches\n match.addListener(update)\n\n function update() {\n const next = !!getMatch().matches\n if (next === mediaState[propKey]) return\n mediaState[propKey] = next\n const listeners = mediaQueryListeners[propKey]\n if (listeners?.size) {\n for (const cb of [...listeners]) {\n cb()\n }\n }\n }\n\n update()\n } catch (err: any) {\n console.error('Error running media query', str, err.message, err.stack)\n const isDefaultActive = defaultActive?.includes(key as any) ?? true\n mediaState[propKey] = isDefaultActive\n }\n }\n}\n\ntype UseMediaState = {\n selections: { [key: string]: boolean }\n nextSelections: { [key: string]: boolean }\n isRendering: boolean\n isUnmounted: boolean\n}\n\nexport const useMedia = () => {\n const forceUpdate = useForceUpdate()\n const state = useRef() as React.MutableRefObject<UseMediaState>\n if (!state.current) {\n state.current = {\n selections: {},\n nextSelections: {},\n isUnmounted: false,\n isRendering: true,\n }\n }\n state.current.isRendering = true\n\n // track usage\n useIsomorphicLayoutEffect(() => {\n const st = state.current\n st.isRendering = false\n // delete old\n for (const key in st.selections) {\n if (!(key in st.nextSelections)) {\n removeMediaQueryListener(key, forceUpdate)\n }\n }\n // add new\n for (const key in st.nextSelections) {\n if (!(key in st.selections)) {\n addMediaQueryListener(key, forceUpdate)\n }\n }\n })\n\n // unmount\n useIsomorphicLayoutEffect(() => {\n return () => {\n const st = state.current\n st.isUnmounted = true\n const allKeys = {\n ...st.selections,\n ...st.nextSelections,\n }\n for (const key in allKeys) {\n removeMediaQueryListener(key, forceUpdate)\n }\n }\n }, [])\n\n return useConstant(() => {\n const st = state.current\n return new Proxy(\n mediaState as {\n [key in MediaQueryKey]: boolean\n },\n {\n get(target, key: string) {\n if (key[0] !== '$') {\n key = `$${key}`\n }\n if (!(key in mediaState)) {\n return Reflect.get(target, key)\n }\n if (!st.isUnmounted) {\n if (st.isRendering) {\n st.nextSelections[key] = true\n }\n }\n if (key in mediaState) {\n return mediaState[key]\n }\n return Reflect.get(mediaState, key)\n },\n }\n )\n })\n}\n\nfunction camelToHyphen(str: string) {\n return str.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`).toLowerCase()\n}\n\nexport function mediaObjectToString(query: string | MediaQueryObject) {\n if (typeof query === 'string') {\n return query\n }\n return Object.entries(query)\n .map(([feature, value]) => {\n feature = camelToHyphen(feature)\n if (typeof value === 'string') {\n return `(${feature}: ${value})`\n }\n if (typeof value === 'number' && /[height|width]$/.test(feature)) {\n value = `${value}px`\n }\n return `(${feature}: ${value})`\n })\n .join(' and ')\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -4,7 +4,6 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
6
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
7
  var __objRest = (source, exclude) => {
9
8
  var target = {};
10
9
  for (var prop in source)
@@ -38,11 +37,11 @@ module.exports = __toCommonJS(usePressable_exports);
38
37
  var import_react_native = require("react-native");
39
38
  var _a, _b;
40
39
  const getPressable = (_b = (_a = import_react_native.Pressable) == null ? void 0 : _a["type"]) == null ? void 0 : _b["render"];
41
- const usePressable = /* @__PURE__ */ __name((props) => {
40
+ const usePressable = (props) => {
42
41
  const out = getPressable(props);
43
42
  const _a2 = out.props, { children, style } = _a2, pressableProps = __objRest(_a2, ["children", "style"]);
44
43
  return [pressableProps, style];
45
- }, "usePressable");
44
+ };
46
45
  // Annotate the CommonJS export names for ESM import in node:
47
46
  0 && (module.exports = {
48
47
  usePressable
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/hooks/usePressable.tsx"],
4
4
  "sourcesContent": ["import { Pressable, PressableProps } from 'react-native'\n\nconst getPressable = Pressable?.['type']?.['render']\n\nexport const usePressable = (props: PressableProps) => {\n const out = getPressable(props)\n const { children, style, ...pressableProps } = out.props\n return [pressableProps, style] as const\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAA0C;AAA1C;AAEA,MAAM,eAAe,iEAAY,YAAZ,mBAAsB;AAEpC,MAAM,eAAe,wBAAC,UAA0B;AACrD,QAAM,MAAM,aAAa,KAAK;AAC9B,QAA+C,UAAI,OAA3C,YAAU,UAA6B,KAAnB,2BAAmB,KAAnB,CAApB,YAAU;AAClB,SAAO,CAAC,gBAAgB,KAAK;AAC/B,GAJ4B;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAA0C;AAA1C;AAEA,MAAM,eAAe,iEAAY,YAAZ,mBAAsB;AAEpC,MAAM,eAAe,CAAC,UAA0B;AACrD,QAAM,MAAM,aAAa,KAAK;AAC9B,QAA+C,UAAI,OAA3C,YAAU,UAA6B,KAAnB,2BAAmB,KAAnB,CAApB,YAAU;AAClB,SAAO,CAAC,gBAAgB,KAAK;AAC/B;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=usePrevious.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }