@tamagui/web 1.13.3 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (518) hide show
  1. package/dist/cjs/Tamagui.js +1 -76
  2. package/dist/cjs/Tamagui.js.map +2 -2
  3. package/dist/cjs/addTheme.js +2 -77
  4. package/dist/cjs/addTheme.js.map +2 -2
  5. package/dist/cjs/config.js +1 -122
  6. package/dist/cjs/config.js.map +2 -2
  7. package/dist/cjs/constants/constants.js +1 -48
  8. package/dist/cjs/constants/constants.js.map +2 -2
  9. package/dist/cjs/constants/isDevTools.js +1 -36
  10. package/dist/cjs/constants/isDevTools.js.map +2 -2
  11. package/dist/cjs/contexts/AnimationDriverContext.js +1 -29
  12. package/dist/cjs/contexts/AnimationDriverContext.js.map +2 -2
  13. package/dist/cjs/contexts/ButtonNestingContext.js +1 -29
  14. package/dist/cjs/contexts/ButtonNestingContext.js.map +2 -2
  15. package/dist/cjs/contexts/FontLanguageContext.js +1 -29
  16. package/dist/cjs/contexts/FontLanguageContext.js.map +2 -2
  17. package/dist/cjs/contexts/TextAncestorContext.js +1 -29
  18. package/dist/cjs/contexts/TextAncestorContext.js.map +2 -2
  19. package/dist/cjs/createComponent.js +2 -874
  20. package/dist/cjs/createComponent.js.map +3 -3
  21. package/dist/cjs/createFont.js +1 -68
  22. package/dist/cjs/createFont.js.map +2 -2
  23. package/dist/cjs/createShorthands.js +1 -30
  24. package/dist/cjs/createShorthands.js.map +2 -2
  25. package/dist/cjs/createTamagui.js +5 -202
  26. package/dist/cjs/createTamagui.js.map +2 -2
  27. package/dist/cjs/createTheme.js +1 -30
  28. package/dist/cjs/createTheme.js.map +2 -2
  29. package/dist/cjs/createTokens.js +1 -38
  30. package/dist/cjs/createTokens.js.map +2 -2
  31. package/dist/cjs/createVariable.js +1 -110
  32. package/dist/cjs/createVariable.js.map +2 -2
  33. package/dist/cjs/createVariables.js +1 -59
  34. package/dist/cjs/createVariables.js.map +2 -2
  35. package/dist/cjs/helpers/ThemeManager.js +1 -236
  36. package/dist/cjs/helpers/ThemeManager.js.map +3 -3
  37. package/dist/cjs/helpers/ThemeManagerContext.js +1 -29
  38. package/dist/cjs/helpers/ThemeManagerContext.js.map +2 -2
  39. package/dist/cjs/helpers/createMediaStyle.js +1 -66
  40. package/dist/cjs/helpers/createMediaStyle.js.map +2 -2
  41. package/dist/cjs/helpers/createPropMapper.js +2 -431
  42. package/dist/cjs/helpers/createPropMapper.js.map +2 -2
  43. package/dist/cjs/helpers/createProxy.js +2 -41
  44. package/dist/cjs/helpers/createProxy.js.map +2 -2
  45. package/dist/cjs/helpers/defaultOffset.js +1 -28
  46. package/dist/cjs/helpers/defaultOffset.js.map +2 -2
  47. package/dist/cjs/helpers/expandStyle.js +1 -85
  48. package/dist/cjs/helpers/expandStyle.js.map +2 -2
  49. package/dist/cjs/helpers/expandStyles.js +1 -76
  50. package/dist/cjs/helpers/expandStyles.js.map +2 -2
  51. package/dist/cjs/helpers/extendStaticConfig.js +1 -91
  52. package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
  53. package/dist/cjs/helpers/getAnimationDriver.js +1 -31
  54. package/dist/cjs/helpers/getAnimationDriver.js.map +2 -2
  55. package/dist/cjs/helpers/getExpandedShorthands.js +1 -38
  56. package/dist/cjs/helpers/getExpandedShorthands.js.map +2 -2
  57. package/dist/cjs/helpers/getFontLanguage.js +1 -28
  58. package/dist/cjs/helpers/getFontLanguage.js.map +2 -2
  59. package/dist/cjs/helpers/getSplitStyles.js +3 -865
  60. package/dist/cjs/helpers/getSplitStyles.js.map +3 -3
  61. package/dist/cjs/helpers/getStylesAtomic.js +1 -226
  62. package/dist/cjs/helpers/getStylesAtomic.js.map +2 -2
  63. package/dist/cjs/helpers/getStylesAtomic.native.js +1 -37
  64. package/dist/cjs/helpers/getStylesAtomic.native.js.map +2 -2
  65. package/dist/cjs/helpers/getThemeCSSRules.js +4 -126
  66. package/dist/cjs/helpers/getThemeCSSRules.js.map +2 -2
  67. package/dist/cjs/helpers/getThemeCSSRules.native.js +1 -30
  68. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +2 -2
  69. package/dist/cjs/helpers/getVariantExtras.js +1 -91
  70. package/dist/cjs/helpers/getVariantExtras.js.map +2 -2
  71. package/dist/cjs/helpers/insertStyleRule.js +2 -222
  72. package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
  73. package/dist/cjs/helpers/isObj.js +1 -28
  74. package/dist/cjs/helpers/isObj.js.map +2 -2
  75. package/dist/cjs/helpers/isTamaguiComponent.js +1 -31
  76. package/dist/cjs/helpers/isTamaguiComponent.js.map +2 -2
  77. package/dist/cjs/helpers/isTamaguiElement.js +1 -32
  78. package/dist/cjs/helpers/isTamaguiElement.js.map +2 -2
  79. package/dist/cjs/helpers/matchMedia.js +1 -41
  80. package/dist/cjs/helpers/matchMedia.js.map +2 -2
  81. package/dist/cjs/helpers/matchMedia.native.js +1 -47
  82. package/dist/cjs/helpers/matchMedia.native.js.map +2 -2
  83. package/dist/cjs/helpers/mergeProps.js +1 -53
  84. package/dist/cjs/helpers/mergeProps.js.map +2 -2
  85. package/dist/cjs/helpers/normalizeColor.js +1 -66
  86. package/dist/cjs/helpers/normalizeColor.js.map +2 -2
  87. package/dist/cjs/helpers/normalizeShadow.js +1 -46
  88. package/dist/cjs/helpers/normalizeShadow.js.map +2 -2
  89. package/dist/cjs/helpers/normalizeShadow.native.js +1 -54
  90. package/dist/cjs/helpers/normalizeShadow.native.js.map +2 -2
  91. package/dist/cjs/helpers/normalizeStylePropKeys.js +1 -28
  92. package/dist/cjs/helpers/normalizeStylePropKeys.js.map +2 -2
  93. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +1 -39
  94. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +2 -2
  95. package/dist/cjs/helpers/normalizeValueWithProperty.js +1 -125
  96. package/dist/cjs/helpers/normalizeValueWithProperty.js.map +2 -2
  97. package/dist/cjs/helpers/proxyThemeVariables.js +1 -39
  98. package/dist/cjs/helpers/proxyThemeVariables.js.map +2 -2
  99. package/dist/cjs/helpers/pseudoDescriptors.js +1 -52
  100. package/dist/cjs/helpers/pseudoDescriptors.js.map +2 -2
  101. package/dist/cjs/helpers/registerCSSVariable.js +1 -39
  102. package/dist/cjs/helpers/registerCSSVariable.js.map +2 -2
  103. package/dist/cjs/helpers/themeable.js +1 -61
  104. package/dist/cjs/helpers/themeable.js.map +2 -2
  105. package/dist/cjs/helpers/themes.js +1 -75
  106. package/dist/cjs/helpers/themes.js.map +2 -2
  107. package/dist/cjs/helpers/timer.js +1 -34
  108. package/dist/cjs/helpers/timer.js.map +2 -2
  109. package/dist/cjs/helpers/useShallowSetState.js +1 -58
  110. package/dist/cjs/helpers/useShallowSetState.js.map +2 -2
  111. package/dist/cjs/helpers/warnOnce.js +1 -37
  112. package/dist/cjs/helpers/warnOnce.js.map +2 -2
  113. package/dist/cjs/helpers/withStaticProperties.js +1 -32
  114. package/dist/cjs/helpers/withStaticProperties.js.map +2 -2
  115. package/dist/cjs/hooks/getThemeUnwrapped.js +1 -33
  116. package/dist/cjs/hooks/getThemeUnwrapped.js.map +2 -2
  117. package/dist/cjs/hooks/useAnimationDriver.js +1 -33
  118. package/dist/cjs/hooks/useAnimationDriver.js.map +2 -2
  119. package/dist/cjs/hooks/useId.js +1 -28
  120. package/dist/cjs/hooks/useId.js.map +2 -2
  121. package/dist/cjs/hooks/useIsTouchDevice.js +1 -32
  122. package/dist/cjs/hooks/useIsTouchDevice.js.map +2 -2
  123. package/dist/cjs/hooks/useMedia.js +1 -264
  124. package/dist/cjs/hooks/useMedia.js.map +2 -2
  125. package/dist/cjs/hooks/useSafeRef.js +1 -58
  126. package/dist/cjs/hooks/useSafeRef.js.map +2 -2
  127. package/dist/cjs/hooks/useServerHooks.js +1 -35
  128. package/dist/cjs/hooks/useServerHooks.js.map +2 -2
  129. package/dist/cjs/hooks/useStyle.js +1 -60
  130. package/dist/cjs/hooks/useStyle.js.map +2 -2
  131. package/dist/cjs/hooks/useTheme.js +1 -229
  132. package/dist/cjs/hooks/useTheme.js.map +3 -3
  133. package/dist/cjs/hooks/useThemeName.js +1 -51
  134. package/dist/cjs/hooks/useThemeName.js.map +2 -2
  135. package/dist/cjs/index.js +1 -110
  136. package/dist/cjs/index.js.map +2 -2
  137. package/dist/cjs/inject-styles.js +1 -39
  138. package/dist/cjs/inject-styles.js.map +2 -2
  139. package/dist/cjs/insertFont.js +1 -92
  140. package/dist/cjs/insertFont.js.map +2 -2
  141. package/dist/cjs/setupHooks.js +1 -33
  142. package/dist/cjs/setupHooks.js.map +2 -2
  143. package/dist/cjs/setupReactNative.js +1 -50
  144. package/dist/cjs/setupReactNative.js.map +2 -2
  145. package/dist/cjs/styled.js +1 -93
  146. package/dist/cjs/styled.js.map +2 -2
  147. package/dist/cjs/types.js +1 -16
  148. package/dist/cjs/types.js.map +3 -3
  149. package/dist/cjs/updateTheme.js +1 -46
  150. package/dist/cjs/updateTheme.js.map +2 -2
  151. package/dist/cjs/views/AnimationDriverProvider.js +1 -32
  152. package/dist/cjs/views/AnimationDriverProvider.js.map +2 -2
  153. package/dist/cjs/views/FontLanguage.js +1 -40
  154. package/dist/cjs/views/FontLanguage.js.map +2 -2
  155. package/dist/cjs/views/FontLanguage.native.js +1 -34
  156. package/dist/cjs/views/FontLanguage.native.js.map +2 -2
  157. package/dist/cjs/views/FontLanguage.types.js +1 -16
  158. package/dist/cjs/views/FontLanguage.types.js.map +2 -2
  159. package/dist/cjs/views/Slot.js +1 -91
  160. package/dist/cjs/views/Slot.js.map +2 -2
  161. package/dist/cjs/views/Stack.js +1 -37
  162. package/dist/cjs/views/Stack.js.map +2 -2
  163. package/dist/cjs/views/TamaguiProvider.js +1 -90
  164. package/dist/cjs/views/TamaguiProvider.js.map +2 -2
  165. package/dist/cjs/views/Text.js +1 -95
  166. package/dist/cjs/views/Text.js.map +2 -2
  167. package/dist/cjs/views/Theme.js +1 -80
  168. package/dist/cjs/views/Theme.js.map +3 -3
  169. package/dist/cjs/views/ThemeProvider.js +1 -69
  170. package/dist/cjs/views/ThemeProvider.js.map +2 -2
  171. package/dist/esm/Tamagui.js +1 -44
  172. package/dist/esm/Tamagui.js.map +2 -2
  173. package/dist/esm/Tamagui.mjs +1 -44
  174. package/dist/esm/Tamagui.mjs.map +2 -2
  175. package/dist/esm/addTheme.js +2 -53
  176. package/dist/esm/addTheme.js.map +2 -2
  177. package/dist/esm/addTheme.mjs +2 -53
  178. package/dist/esm/addTheme.mjs.map +2 -2
  179. package/dist/esm/config.js +1 -89
  180. package/dist/esm/config.js.map +2 -2
  181. package/dist/esm/config.mjs +1 -89
  182. package/dist/esm/config.mjs.map +2 -2
  183. package/dist/esm/constants/constants.js +1 -21
  184. package/dist/esm/constants/constants.js.map +2 -2
  185. package/dist/esm/constants/constants.mjs +1 -21
  186. package/dist/esm/constants/constants.mjs.map +2 -2
  187. package/dist/esm/constants/isDevTools.js +1 -12
  188. package/dist/esm/constants/isDevTools.js.map +2 -2
  189. package/dist/esm/constants/isDevTools.mjs +1 -12
  190. package/dist/esm/constants/isDevTools.mjs.map +2 -2
  191. package/dist/esm/contexts/AnimationDriverContext.js +1 -5
  192. package/dist/esm/contexts/AnimationDriverContext.js.map +2 -2
  193. package/dist/esm/contexts/AnimationDriverContext.mjs +1 -5
  194. package/dist/esm/contexts/AnimationDriverContext.mjs.map +2 -2
  195. package/dist/esm/contexts/ButtonNestingContext.js +1 -5
  196. package/dist/esm/contexts/ButtonNestingContext.js.map +2 -2
  197. package/dist/esm/contexts/ButtonNestingContext.mjs +1 -5
  198. package/dist/esm/contexts/ButtonNestingContext.mjs.map +2 -2
  199. package/dist/esm/contexts/FontLanguageContext.js +1 -5
  200. package/dist/esm/contexts/FontLanguageContext.js.map +2 -2
  201. package/dist/esm/contexts/FontLanguageContext.mjs +1 -5
  202. package/dist/esm/contexts/FontLanguageContext.mjs.map +2 -2
  203. package/dist/esm/contexts/TextAncestorContext.js +1 -5
  204. package/dist/esm/contexts/TextAncestorContext.js.map +2 -2
  205. package/dist/esm/contexts/TextAncestorContext.mjs +1 -5
  206. package/dist/esm/contexts/TextAncestorContext.mjs.map +2 -2
  207. package/dist/esm/createComponent.js +2 -846
  208. package/dist/esm/createComponent.js.map +3 -3
  209. package/dist/esm/createComponent.mjs +2 -846
  210. package/dist/esm/createComponent.mjs.map +3 -3
  211. package/dist/esm/createFont.js +1 -44
  212. package/dist/esm/createFont.js.map +2 -2
  213. package/dist/esm/createFont.mjs +1 -44
  214. package/dist/esm/createFont.mjs.map +2 -2
  215. package/dist/esm/createShorthands.js +1 -6
  216. package/dist/esm/createShorthands.js.map +2 -2
  217. package/dist/esm/createShorthands.mjs +1 -6
  218. package/dist/esm/createShorthands.mjs.map +2 -2
  219. package/dist/esm/createTamagui.js +5 -186
  220. package/dist/esm/createTamagui.js.map +2 -2
  221. package/dist/esm/createTamagui.mjs +5 -186
  222. package/dist/esm/createTamagui.mjs.map +2 -2
  223. package/dist/esm/createTheme.js +1 -6
  224. package/dist/esm/createTheme.js.map +2 -2
  225. package/dist/esm/createTheme.mjs +1 -6
  226. package/dist/esm/createTheme.mjs.map +2 -2
  227. package/dist/esm/createTokens.js +1 -14
  228. package/dist/esm/createTokens.js.map +2 -2
  229. package/dist/esm/createTokens.mjs +1 -14
  230. package/dist/esm/createTokens.mjs.map +2 -2
  231. package/dist/esm/createVariable.js +1 -77
  232. package/dist/esm/createVariable.js.map +2 -2
  233. package/dist/esm/createVariable.mjs +1 -77
  234. package/dist/esm/createVariable.mjs.map +2 -2
  235. package/dist/esm/createVariables.js +1 -34
  236. package/dist/esm/createVariables.js.map +2 -2
  237. package/dist/esm/createVariables.mjs +1 -34
  238. package/dist/esm/createVariables.mjs.map +2 -2
  239. package/dist/esm/helpers/ThemeManager.js +1 -211
  240. package/dist/esm/helpers/ThemeManager.js.map +3 -3
  241. package/dist/esm/helpers/ThemeManager.mjs +1 -211
  242. package/dist/esm/helpers/ThemeManager.mjs.map +3 -3
  243. package/dist/esm/helpers/ThemeManagerContext.js +1 -5
  244. package/dist/esm/helpers/ThemeManagerContext.js.map +2 -2
  245. package/dist/esm/helpers/ThemeManagerContext.mjs +1 -5
  246. package/dist/esm/helpers/ThemeManagerContext.mjs.map +2 -2
  247. package/dist/esm/helpers/createMediaStyle.js +1 -41
  248. package/dist/esm/helpers/createMediaStyle.js.map +2 -2
  249. package/dist/esm/helpers/createMediaStyle.mjs +1 -41
  250. package/dist/esm/helpers/createMediaStyle.mjs.map +2 -2
  251. package/dist/esm/helpers/createPropMapper.js +2 -404
  252. package/dist/esm/helpers/createPropMapper.js.map +2 -2
  253. package/dist/esm/helpers/createPropMapper.mjs +2 -404
  254. package/dist/esm/helpers/createPropMapper.mjs.map +2 -2
  255. package/dist/esm/helpers/createProxy.js +2 -17
  256. package/dist/esm/helpers/createProxy.js.map +2 -2
  257. package/dist/esm/helpers/createProxy.mjs +2 -17
  258. package/dist/esm/helpers/createProxy.mjs.map +2 -2
  259. package/dist/esm/helpers/defaultOffset.js +1 -4
  260. package/dist/esm/helpers/defaultOffset.js.map +2 -2
  261. package/dist/esm/helpers/defaultOffset.mjs +1 -4
  262. package/dist/esm/helpers/defaultOffset.mjs.map +2 -2
  263. package/dist/esm/helpers/expandStyle.js +1 -61
  264. package/dist/esm/helpers/expandStyle.js.map +2 -2
  265. package/dist/esm/helpers/expandStyle.mjs +1 -61
  266. package/dist/esm/helpers/expandStyle.mjs.map +2 -2
  267. package/dist/esm/helpers/expandStyles.js +1 -51
  268. package/dist/esm/helpers/expandStyles.js.map +2 -2
  269. package/dist/esm/helpers/expandStyles.mjs +1 -51
  270. package/dist/esm/helpers/expandStyles.mjs.map +2 -2
  271. package/dist/esm/helpers/extendStaticConfig.js +1 -66
  272. package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
  273. package/dist/esm/helpers/extendStaticConfig.mjs +1 -66
  274. package/dist/esm/helpers/extendStaticConfig.mjs.map +2 -2
  275. package/dist/esm/helpers/getAnimationDriver.js +1 -7
  276. package/dist/esm/helpers/getAnimationDriver.js.map +2 -2
  277. package/dist/esm/helpers/getAnimationDriver.mjs +1 -7
  278. package/dist/esm/helpers/getAnimationDriver.mjs.map +2 -2
  279. package/dist/esm/helpers/getExpandedShorthands.js +1 -14
  280. package/dist/esm/helpers/getExpandedShorthands.js.map +2 -2
  281. package/dist/esm/helpers/getExpandedShorthands.mjs +1 -14
  282. package/dist/esm/helpers/getExpandedShorthands.mjs.map +2 -2
  283. package/dist/esm/helpers/getFontLanguage.js +1 -4
  284. package/dist/esm/helpers/getFontLanguage.js.map +2 -2
  285. package/dist/esm/helpers/getFontLanguage.mjs +1 -4
  286. package/dist/esm/helpers/getFontLanguage.mjs.map +2 -2
  287. package/dist/esm/helpers/getSplitStyles.js +3 -866
  288. package/dist/esm/helpers/getSplitStyles.js.map +3 -3
  289. package/dist/esm/helpers/getSplitStyles.mjs +3 -866
  290. package/dist/esm/helpers/getSplitStyles.mjs.map +3 -3
  291. package/dist/esm/helpers/getStylesAtomic.js +1 -200
  292. package/dist/esm/helpers/getStylesAtomic.js.map +2 -2
  293. package/dist/esm/helpers/getStylesAtomic.mjs +1 -200
  294. package/dist/esm/helpers/getStylesAtomic.mjs.map +2 -2
  295. package/dist/esm/helpers/getStylesAtomic.native.js +1 -11
  296. package/dist/esm/helpers/getStylesAtomic.native.js.map +2 -2
  297. package/dist/esm/helpers/getStylesAtomic.native.mjs +1 -11
  298. package/dist/esm/helpers/getStylesAtomic.native.mjs.map +2 -2
  299. package/dist/esm/helpers/getThemeCSSRules.js +4 -102
  300. package/dist/esm/helpers/getThemeCSSRules.js.map +2 -2
  301. package/dist/esm/helpers/getThemeCSSRules.mjs +4 -102
  302. package/dist/esm/helpers/getThemeCSSRules.mjs.map +2 -2
  303. package/dist/esm/helpers/getThemeCSSRules.native.js +1 -6
  304. package/dist/esm/helpers/getThemeCSSRules.native.js.map +2 -2
  305. package/dist/esm/helpers/getThemeCSSRules.native.mjs +1 -6
  306. package/dist/esm/helpers/getThemeCSSRules.native.mjs.map +2 -2
  307. package/dist/esm/helpers/getVariantExtras.js +1 -66
  308. package/dist/esm/helpers/getVariantExtras.js.map +2 -2
  309. package/dist/esm/helpers/getVariantExtras.mjs +1 -66
  310. package/dist/esm/helpers/getVariantExtras.mjs.map +2 -2
  311. package/dist/esm/helpers/insertStyleRule.js +2 -190
  312. package/dist/esm/helpers/insertStyleRule.js.map +2 -2
  313. package/dist/esm/helpers/insertStyleRule.mjs +2 -190
  314. package/dist/esm/helpers/insertStyleRule.mjs.map +2 -2
  315. package/dist/esm/helpers/isObj.js +1 -4
  316. package/dist/esm/helpers/isObj.js.map +2 -2
  317. package/dist/esm/helpers/isObj.mjs +1 -4
  318. package/dist/esm/helpers/isObj.mjs.map +2 -2
  319. package/dist/esm/helpers/isTamaguiComponent.js +1 -7
  320. package/dist/esm/helpers/isTamaguiComponent.js.map +2 -2
  321. package/dist/esm/helpers/isTamaguiComponent.mjs +1 -7
  322. package/dist/esm/helpers/isTamaguiComponent.mjs.map +2 -2
  323. package/dist/esm/helpers/isTamaguiElement.js +1 -8
  324. package/dist/esm/helpers/isTamaguiElement.js.map +2 -2
  325. package/dist/esm/helpers/isTamaguiElement.mjs +1 -8
  326. package/dist/esm/helpers/isTamaguiElement.mjs.map +2 -2
  327. package/dist/esm/helpers/matchMedia.js +1 -16
  328. package/dist/esm/helpers/matchMedia.js.map +2 -2
  329. package/dist/esm/helpers/matchMedia.mjs +1 -16
  330. package/dist/esm/helpers/matchMedia.mjs.map +2 -2
  331. package/dist/esm/helpers/matchMedia.native.js +1 -22
  332. package/dist/esm/helpers/matchMedia.native.js.map +2 -2
  333. package/dist/esm/helpers/matchMedia.native.mjs +1 -22
  334. package/dist/esm/helpers/matchMedia.native.mjs.map +2 -2
  335. package/dist/esm/helpers/mergeProps.js +1 -29
  336. package/dist/esm/helpers/mergeProps.js.map +2 -2
  337. package/dist/esm/helpers/mergeProps.mjs +1 -29
  338. package/dist/esm/helpers/mergeProps.mjs.map +2 -2
  339. package/dist/esm/helpers/normalizeColor.js +1 -30
  340. package/dist/esm/helpers/normalizeColor.js.map +2 -2
  341. package/dist/esm/helpers/normalizeColor.mjs +1 -30
  342. package/dist/esm/helpers/normalizeColor.mjs.map +2 -2
  343. package/dist/esm/helpers/normalizeShadow.js +1 -22
  344. package/dist/esm/helpers/normalizeShadow.js.map +2 -2
  345. package/dist/esm/helpers/normalizeShadow.mjs +1 -22
  346. package/dist/esm/helpers/normalizeShadow.mjs.map +2 -2
  347. package/dist/esm/helpers/normalizeShadow.native.js +1 -30
  348. package/dist/esm/helpers/normalizeShadow.native.js.map +2 -2
  349. package/dist/esm/helpers/normalizeShadow.native.mjs +1 -30
  350. package/dist/esm/helpers/normalizeShadow.native.mjs.map +2 -2
  351. package/dist/esm/helpers/normalizeStylePropKeys.js +1 -4
  352. package/dist/esm/helpers/normalizeStylePropKeys.js.map +2 -2
  353. package/dist/esm/helpers/normalizeStylePropKeys.mjs +1 -4
  354. package/dist/esm/helpers/normalizeStylePropKeys.mjs.map +2 -2
  355. package/dist/esm/helpers/normalizeStylePropKeys.native.js +1 -15
  356. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +2 -2
  357. package/dist/esm/helpers/normalizeStylePropKeys.native.mjs +1 -15
  358. package/dist/esm/helpers/normalizeStylePropKeys.native.mjs.map +2 -2
  359. package/dist/esm/helpers/normalizeValueWithProperty.js +1 -100
  360. package/dist/esm/helpers/normalizeValueWithProperty.js.map +2 -2
  361. package/dist/esm/helpers/normalizeValueWithProperty.mjs +1 -100
  362. package/dist/esm/helpers/normalizeValueWithProperty.mjs.map +2 -2
  363. package/dist/esm/helpers/proxyThemeVariables.js +1 -15
  364. package/dist/esm/helpers/proxyThemeVariables.js.map +2 -2
  365. package/dist/esm/helpers/proxyThemeVariables.mjs +1 -15
  366. package/dist/esm/helpers/proxyThemeVariables.mjs.map +2 -2
  367. package/dist/esm/helpers/pseudoDescriptors.js +1 -28
  368. package/dist/esm/helpers/pseudoDescriptors.js.map +2 -2
  369. package/dist/esm/helpers/pseudoDescriptors.mjs +1 -28
  370. package/dist/esm/helpers/pseudoDescriptors.mjs.map +2 -2
  371. package/dist/esm/helpers/registerCSSVariable.js +1 -13
  372. package/dist/esm/helpers/registerCSSVariable.js.map +2 -2
  373. package/dist/esm/helpers/registerCSSVariable.mjs +1 -13
  374. package/dist/esm/helpers/registerCSSVariable.mjs.map +2 -2
  375. package/dist/esm/helpers/themeable.js +1 -27
  376. package/dist/esm/helpers/themeable.js.map +2 -2
  377. package/dist/esm/helpers/themeable.mjs +1 -27
  378. package/dist/esm/helpers/themeable.mjs.map +2 -2
  379. package/dist/esm/helpers/themes.js +1 -50
  380. package/dist/esm/helpers/themes.js.map +2 -2
  381. package/dist/esm/helpers/themes.mjs +1 -50
  382. package/dist/esm/helpers/themes.mjs.map +2 -2
  383. package/dist/esm/helpers/timer.js +1 -10
  384. package/dist/esm/helpers/timer.js.map +2 -2
  385. package/dist/esm/helpers/timer.mjs +1 -10
  386. package/dist/esm/helpers/timer.mjs.map +2 -2
  387. package/dist/esm/helpers/useShallowSetState.js +1 -34
  388. package/dist/esm/helpers/useShallowSetState.js.map +2 -2
  389. package/dist/esm/helpers/useShallowSetState.mjs +1 -34
  390. package/dist/esm/helpers/useShallowSetState.mjs.map +2 -2
  391. package/dist/esm/helpers/warnOnce.js +1 -13
  392. package/dist/esm/helpers/warnOnce.js.map +2 -2
  393. package/dist/esm/helpers/warnOnce.mjs +1 -13
  394. package/dist/esm/helpers/warnOnce.mjs.map +2 -2
  395. package/dist/esm/helpers/withStaticProperties.js +1 -8
  396. package/dist/esm/helpers/withStaticProperties.js.map +2 -2
  397. package/dist/esm/helpers/withStaticProperties.mjs +1 -8
  398. package/dist/esm/helpers/withStaticProperties.mjs.map +2 -2
  399. package/dist/esm/hooks/getThemeUnwrapped.js +1 -8
  400. package/dist/esm/hooks/getThemeUnwrapped.js.map +2 -2
  401. package/dist/esm/hooks/getThemeUnwrapped.mjs +1 -8
  402. package/dist/esm/hooks/getThemeUnwrapped.mjs.map +2 -2
  403. package/dist/esm/hooks/useAnimationDriver.js +1 -9
  404. package/dist/esm/hooks/useAnimationDriver.js.map +2 -2
  405. package/dist/esm/hooks/useAnimationDriver.mjs +1 -9
  406. package/dist/esm/hooks/useAnimationDriver.mjs.map +2 -2
  407. package/dist/esm/hooks/useId.js +1 -4
  408. package/dist/esm/hooks/useId.js.map +2 -2
  409. package/dist/esm/hooks/useId.mjs +1 -4
  410. package/dist/esm/hooks/useId.mjs.map +2 -2
  411. package/dist/esm/hooks/useIsTouchDevice.js +1 -8
  412. package/dist/esm/hooks/useIsTouchDevice.js.map +2 -2
  413. package/dist/esm/hooks/useIsTouchDevice.mjs +1 -8
  414. package/dist/esm/hooks/useIsTouchDevice.mjs.map +2 -2
  415. package/dist/esm/hooks/useMedia.js +1 -225
  416. package/dist/esm/hooks/useMedia.js.map +2 -2
  417. package/dist/esm/hooks/useMedia.mjs +1 -225
  418. package/dist/esm/hooks/useMedia.mjs.map +2 -2
  419. package/dist/esm/hooks/useSafeRef.js +1 -34
  420. package/dist/esm/hooks/useSafeRef.js.map +2 -2
  421. package/dist/esm/hooks/useSafeRef.mjs +1 -34
  422. package/dist/esm/hooks/useSafeRef.mjs.map +2 -2
  423. package/dist/esm/hooks/useServerHooks.js +1 -10
  424. package/dist/esm/hooks/useServerHooks.js.map +2 -2
  425. package/dist/esm/hooks/useServerHooks.mjs +1 -10
  426. package/dist/esm/hooks/useServerHooks.mjs.map +2 -2
  427. package/dist/esm/hooks/useStyle.js +1 -36
  428. package/dist/esm/hooks/useStyle.js.map +2 -2
  429. package/dist/esm/hooks/useStyle.mjs +1 -36
  430. package/dist/esm/hooks/useStyle.mjs.map +2 -2
  431. package/dist/esm/hooks/useTheme.js +1 -204
  432. package/dist/esm/hooks/useTheme.js.map +3 -3
  433. package/dist/esm/hooks/useTheme.mjs +1 -204
  434. package/dist/esm/hooks/useTheme.mjs.map +3 -3
  435. package/dist/esm/hooks/useThemeName.js +1 -27
  436. package/dist/esm/hooks/useThemeName.js.map +2 -2
  437. package/dist/esm/hooks/useThemeName.mjs +1 -27
  438. package/dist/esm/hooks/useThemeName.mjs.map +2 -2
  439. package/dist/esm/index.js +1 -88
  440. package/dist/esm/index.js.map +2 -2
  441. package/dist/esm/index.mjs +1 -88
  442. package/dist/esm/index.mjs.map +2 -2
  443. package/dist/esm/inject-styles.js +1 -15
  444. package/dist/esm/inject-styles.js.map +2 -2
  445. package/dist/esm/inject-styles.mjs +1 -15
  446. package/dist/esm/inject-styles.mjs.map +2 -2
  447. package/dist/esm/insertFont.js +1 -66
  448. package/dist/esm/insertFont.js.map +2 -2
  449. package/dist/esm/insertFont.mjs +1 -66
  450. package/dist/esm/insertFont.mjs.map +2 -2
  451. package/dist/esm/setupHooks.js +1 -8
  452. package/dist/esm/setupHooks.js.map +2 -2
  453. package/dist/esm/setupHooks.mjs +1 -8
  454. package/dist/esm/setupHooks.mjs.map +2 -2
  455. package/dist/esm/setupReactNative.js +1 -24
  456. package/dist/esm/setupReactNative.js.map +2 -2
  457. package/dist/esm/setupReactNative.mjs +1 -24
  458. package/dist/esm/setupReactNative.mjs.map +2 -2
  459. package/dist/esm/styled.js +1 -69
  460. package/dist/esm/styled.js.map +2 -2
  461. package/dist/esm/styled.mjs +1 -69
  462. package/dist/esm/styled.mjs.map +2 -2
  463. package/dist/esm/updateTheme.js +1 -22
  464. package/dist/esm/updateTheme.js.map +2 -2
  465. package/dist/esm/updateTheme.mjs +1 -22
  466. package/dist/esm/updateTheme.mjs.map +2 -2
  467. package/dist/esm/views/AnimationDriverProvider.js +1 -8
  468. package/dist/esm/views/AnimationDriverProvider.js.map +2 -2
  469. package/dist/esm/views/AnimationDriverProvider.mjs +1 -8
  470. package/dist/esm/views/AnimationDriverProvider.mjs.map +2 -2
  471. package/dist/esm/views/FontLanguage.js +1 -16
  472. package/dist/esm/views/FontLanguage.js.map +2 -2
  473. package/dist/esm/views/FontLanguage.mjs +1 -16
  474. package/dist/esm/views/FontLanguage.mjs.map +2 -2
  475. package/dist/esm/views/FontLanguage.native.js +1 -10
  476. package/dist/esm/views/FontLanguage.native.js.map +2 -2
  477. package/dist/esm/views/FontLanguage.native.mjs +1 -10
  478. package/dist/esm/views/FontLanguage.native.mjs.map +2 -2
  479. package/dist/esm/views/Slot.js +1 -65
  480. package/dist/esm/views/Slot.js.map +2 -2
  481. package/dist/esm/views/Slot.mjs +1 -65
  482. package/dist/esm/views/Slot.mjs.map +2 -2
  483. package/dist/esm/views/Stack.js +1 -13
  484. package/dist/esm/views/Stack.js.map +2 -2
  485. package/dist/esm/views/Stack.mjs +1 -13
  486. package/dist/esm/views/Stack.mjs.map +2 -2
  487. package/dist/esm/views/TamaguiProvider.js +1 -56
  488. package/dist/esm/views/TamaguiProvider.js.map +2 -2
  489. package/dist/esm/views/TamaguiProvider.mjs +1 -56
  490. package/dist/esm/views/TamaguiProvider.mjs.map +2 -2
  491. package/dist/esm/views/Text.js +1 -71
  492. package/dist/esm/views/Text.js.map +2 -2
  493. package/dist/esm/views/Text.mjs +1 -71
  494. package/dist/esm/views/Text.mjs.map +2 -2
  495. package/dist/esm/views/Theme.js +1 -55
  496. package/dist/esm/views/Theme.js.map +3 -3
  497. package/dist/esm/views/Theme.mjs +1 -55
  498. package/dist/esm/views/Theme.mjs.map +3 -3
  499. package/dist/esm/views/ThemeProvider.js +1 -44
  500. package/dist/esm/views/ThemeProvider.js.map +2 -2
  501. package/dist/esm/views/ThemeProvider.mjs +1 -44
  502. package/dist/esm/views/ThemeProvider.mjs.map +2 -2
  503. package/package.json +9 -9
  504. package/src/createComponent.tsx +38 -5
  505. package/src/helpers/ThemeManager.tsx +40 -32
  506. package/src/helpers/getSplitStyles.tsx +0 -8
  507. package/src/hooks/useTheme.tsx +145 -93
  508. package/src/types.tsx +2 -2
  509. package/src/views/Theme.tsx +49 -27
  510. package/types/createComponent.d.ts.map +1 -1
  511. package/types/helpers/ThemeManager.d.ts +1 -0
  512. package/types/helpers/ThemeManager.d.ts.map +1 -1
  513. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  514. package/types/hooks/useTheme.d.ts +5 -7
  515. package/types/hooks/useTheme.d.ts.map +1 -1
  516. package/types/types.d.ts +2 -2
  517. package/types/types.d.ts.map +1 -1
  518. package/types/views/Theme.d.ts.map +1 -1
@@ -1,866 +1,4 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var getSplitStyles_exports = {};
20
- __export(getSplitStyles_exports, {
21
- PROP_SPLIT: () => PROP_SPLIT,
22
- getSplitStyles: () => getSplitStyles,
23
- getSubStyle: () => getSubStyle,
24
- useSplitStyles: () => useSplitStyles
25
- });
26
- module.exports = __toCommonJS(getSplitStyles_exports);
27
- var import_constants = require("@tamagui/constants");
28
- var import_helpers = require("@tamagui/helpers");
29
- var import_react = require("react");
30
- var import_config = require("../config.js");
31
- var import_isDevTools = require("../constants/isDevTools.js");
32
- var import_useMedia = require("../hooks/useMedia.js");
33
- var import_createMediaStyle = require("./createMediaStyle.js");
34
- var import_createPropMapper = require("./createPropMapper.js");
35
- var import_expandStyles = require("./expandStyles.js");
36
- var import_getStylesAtomic = require("./getStylesAtomic");
37
- var import_insertStyleRule = require("./insertStyleRule.js");
38
- var import_normalizeValueWithProperty = require("./normalizeValueWithProperty.js");
39
- var import_pseudoDescriptors = require("./pseudoDescriptors.js");
40
- const skipProps = {
41
- animation: true,
42
- space: true,
43
- animateOnly: true,
44
- debug: true,
45
- componentName: true,
46
- tag: true
47
- };
48
- if (process.env.NODE_ENV === "test") {
49
- skipProps["data-test-renders"] = true;
50
- }
51
- const IS_STATIC = process.env.IS_STATIC === "is_static";
52
- if (process.env.TAMAGUI_TARGET === "native") {
53
- Object.assign(skipProps, {
54
- whiteSpace: true,
55
- wordWrap: true,
56
- textOverflow: true,
57
- textDecorationDistance: true,
58
- cursor: true,
59
- contain: true,
60
- boxSizing: true,
61
- boxShadow: true
62
- });
63
- }
64
- const accessibilityDirectMap = {};
65
- if (process.env.TAMAGUI_TARGET === "web") {
66
- const items = {
67
- Hidden: true,
68
- ActiveDescendant: true,
69
- Atomic: true,
70
- AutoComplete: true,
71
- Busy: true,
72
- Checked: true,
73
- ColumnCount: "colcount",
74
- ColumnIndex: "colindex",
75
- ColumnSpan: "colspan",
76
- Current: true,
77
- Details: true,
78
- ErrorMessage: true,
79
- Expanded: true,
80
- HasPopup: true,
81
- Invalid: true,
82
- Label: true,
83
- Level: true,
84
- Modal: true,
85
- Multiline: true,
86
- MultiSelectable: true,
87
- Orientation: true,
88
- Owns: true,
89
- Placeholder: true,
90
- PosInSet: true,
91
- Pressed: true,
92
- RoleDescription: true,
93
- RowCount: true,
94
- RowIndex: true,
95
- RowSpan: true,
96
- Selected: true,
97
- SetSize: true,
98
- Sort: true,
99
- ValueMax: true,
100
- ValueMin: true,
101
- ValueNow: true,
102
- ValueText: true
103
- };
104
- for (const key in items) {
105
- let val = items[key];
106
- if (val === true) {
107
- val = key.toLowerCase();
108
- }
109
- accessibilityDirectMap[`accessibility${key}`] = `aria-${val}`;
110
- }
111
- }
112
- let conf;
113
- const PROP_SPLIT = "-";
114
- const accessibilityRoleToWebRole = {
115
- adjustable: "slider",
116
- header: "heading",
117
- image: "img",
118
- link: "link",
119
- none: "presentation",
120
- summary: "region"
121
- };
122
- const isMediaKey = (key) => Boolean(key[0] === "$" && import_useMedia.mediaKeysWithAndWithout$.has(key));
123
- const getSplitStyles = (props, staticConfig, theme, state, parentSplitStyles, languageContext, elementType, debug) => {
124
- var _a, _b, _c;
125
- if (cache.has(props)) {
126
- return cache.get(props);
127
- }
128
- conf = conf || (0, import_config.getConfig)();
129
- const { shorthands } = conf;
130
- const { variants, propMapper, isReactNative, inlineProps, inlineWhenUnflattened } = staticConfig;
131
- const validStyleProps = staticConfig.isText ? import_helpers.stylePropsText : import_helpers.validStyles;
132
- const viewProps = {};
133
- let pseudos = null;
134
- let psuedosUsed = null;
135
- const mediaState = state.mediaState || import_useMedia.mediaState;
136
- const usedKeys = {};
137
- const propKeys = Object.keys(props);
138
- let space = props.space;
139
- let hasMedia = false;
140
- const shouldDoClasses = staticConfig.acceptsClassName && (import_constants.isWeb || IS_STATIC) && !state.noClassNames;
141
- let style = {};
142
- const flatTransforms = {};
143
- const len = propKeys.length;
144
- const rulesToInsert = [];
145
- const classNames = {};
146
- let className = "";
147
- const transforms = {};
148
- let fontFamily;
149
- const styleState = {
150
- classNames,
151
- conf,
152
- props,
153
- state,
154
- staticConfig,
155
- style,
156
- theme,
157
- usedKeys,
158
- viewProps,
159
- languageContext
160
- };
161
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
162
- console.groupCollapsed("getSplitStyles (looping backwards)");
163
- console.log({ props, staticConfig, shouldDoClasses, state, IS_STATIC, propKeys, styleState });
164
- console.groupEnd();
165
- }
166
- if (props.className) {
167
- for (const cn of props.className.split(" ")) {
168
- if (cn[0] === "_") {
169
- const [shorthand, mediaOrPseudo] = cn.slice(1).split("-");
170
- const isMedia = mediaOrPseudo[0] === "_";
171
- const isPseudo = mediaOrPseudo[0] === "0";
172
- const isMediaOrPseudo = isMedia || isPseudo;
173
- let fullKey = shorthands[shorthand];
174
- if (isMedia) {
175
- let mediaShortKey = mediaOrPseudo.slice(1);
176
- mediaShortKey = mediaShortKey.slice(0, mediaShortKey.indexOf("_"));
177
- fullKey += `${PROP_SPLIT}${mediaShortKey}`;
178
- } else if (isPseudo) {
179
- const pseudoShortKey = mediaOrPseudo.slice(1);
180
- fullKey += `${PROP_SPLIT}${pseudoShortKey}`;
181
- }
182
- usedKeys[fullKey] = 1;
183
- mergeClassName(transforms, classNames, fullKey, cn, isMediaOrPseudo);
184
- } else if (cn) {
185
- className += ` ${cn}`;
186
- }
187
- }
188
- }
189
- const specialProps = [];
190
- function processProp(keyInit, valInit, special = false, fontFamilyOverride = null) {
191
- var _a2;
192
- if (keyInit === "className")
193
- return;
194
- if (keyInit in shorthands) {
195
- keyInit = shorthands[keyInit];
196
- }
197
- if (process.env.TAMAGUI_TARGET === "native") {
198
- if (keyInit === "userSelect") {
199
- keyInit = "selectable";
200
- valInit = valInit === "none" ? false : true;
201
- } else if (keyInit.startsWith("data-") || keyInit.startsWith("aria-")) {
202
- return;
203
- }
204
- }
205
- if (!staticConfig.isHOC) {
206
- if (keyInit in skipProps) {
207
- return;
208
- }
209
- }
210
- if (keyInit in usedKeys) {
211
- return;
212
- }
213
- if (typeof valInit === "string" && valInit[0] === "_") {
214
- if (keyInit in validStyleProps || keyInit.includes("-")) {
215
- if (shouldDoClasses) {
216
- classNames[keyInit] = valInit;
217
- } else {
218
- style[keyInit] = (0, import_normalizeValueWithProperty.reverseMapClassNameToValue)(keyInit, valInit);
219
- }
220
- usedKeys[keyInit] = 1;
221
- return;
222
- }
223
- }
224
- if (keyInit === "dataSet") {
225
- for (const key in valInit) {
226
- viewProps[`data-${hyphenate(key)}`] = valInit[key];
227
- }
228
- return;
229
- }
230
- const isMainStyle = keyInit === "style";
231
- if (isMainStyle || keyInit.startsWith("_style")) {
232
- if (!valInit)
233
- return;
234
- const styles = Array.isArray(valInit) ? valInit : [valInit];
235
- const styleLen = styles.length;
236
- for (let j = styleLen; j >= 0; j--) {
237
- const cur = styles[j];
238
- if (!cur)
239
- continue;
240
- for (const key in cur) {
241
- if (!isMainStyle && usedKeys[key]) {
242
- continue;
243
- }
244
- usedKeys[key] = 1;
245
- style[key] = cur[key];
246
- }
247
- }
248
- return;
249
- }
250
- if (process.env.TAMAGUI_TARGET === "web") {
251
- if (keyInit === "disabled" && valInit === true) {
252
- usedKeys[keyInit] = 1;
253
- viewProps["aria-disabled"] = true;
254
- if (elementType === "button" || elementType === "form" || elementType === "input" || elementType === "select" || elementType === "textarea") {
255
- viewProps.disabled = true;
256
- }
257
- if (!(variants == null ? void 0 : variants.disabled)) {
258
- return;
259
- }
260
- }
261
- if (keyInit === "testID") {
262
- usedKeys[keyInit] = 1;
263
- viewProps[isReactNative ? "testId" : "data-testid"] = valInit;
264
- return;
265
- }
266
- if (keyInit === "id" || keyInit === "nativeID") {
267
- usedKeys[keyInit] = 1;
268
- if (isReactNative) {
269
- viewProps.nativeID = valInit;
270
- } else {
271
- viewProps.id = valInit;
272
- }
273
- return;
274
- }
275
- let didUseKeyInit = false;
276
- if (isReactNative) {
277
- if (accessibilityDirectMap[keyInit] || keyInit.startsWith("accessibility")) {
278
- viewProps[keyInit] = valInit;
279
- usedKeys[keyInit] = 1;
280
- return;
281
- }
282
- } else {
283
- didUseKeyInit = true;
284
- if (accessibilityDirectMap[keyInit]) {
285
- viewProps[accessibilityDirectMap[keyInit]] = valInit;
286
- } else {
287
- switch (keyInit) {
288
- case "accessibilityRole": {
289
- if (valInit === "none") {
290
- viewProps.role = "presentation";
291
- } else {
292
- viewProps.role = accessibilityRoleToWebRole[valInit] || valInit;
293
- }
294
- return;
295
- }
296
- case "accessibilityLabelledBy":
297
- case "accessibilityFlowTo":
298
- case "accessibilityControls":
299
- case "accessibilityDescribedBy": {
300
- viewProps[`aria-${keyInit.replace("accessibility", "").toLowerCase()}`] = processIDRefList(valInit);
301
- return;
302
- }
303
- case "accessibilityKeyShortcuts": {
304
- if (Array.isArray(valInit)) {
305
- viewProps["aria-keyshortcuts"] = valInit.join(" ");
306
- }
307
- return;
308
- }
309
- case "accessibilityLiveRegion": {
310
- viewProps["aria-live"] = valInit === "none" ? "off" : valInit;
311
- return;
312
- }
313
- case "accessibilityReadOnly": {
314
- viewProps["aria-readonly"] = valInit;
315
- if (elementType === "input" || elementType === "select" || elementType === "textarea") {
316
- viewProps.readOnly = true;
317
- }
318
- return;
319
- }
320
- case "accessibilityRequired": {
321
- viewProps["aria-required"] = valInit;
322
- if (elementType === "input" || elementType === "select" || elementType === "textarea") {
323
- viewProps.required = valInit;
324
- }
325
- return;
326
- }
327
- default: {
328
- didUseKeyInit = false;
329
- }
330
- }
331
- }
332
- }
333
- if (didUseKeyInit) {
334
- usedKeys[keyInit] = 1;
335
- return;
336
- }
337
- if (valInit && valInit[0] === "_") {
338
- const isValidClassName = keyInit in import_helpers.validStyles;
339
- const isMediaOrPseudo = !isValidClassName && keyInit.includes(PROP_SPLIT) && import_helpers.validStyles[keyInit.split(PROP_SPLIT)[0]];
340
- if (isValidClassName || isMediaOrPseudo) {
341
- usedKeys[keyInit] = 1;
342
- if (process.env.NODE_ENV === "development" && debug) {
343
- console.log("tamagui classname props", keyInit, valInit);
344
- }
345
- mergeClassName(transforms, classNames, keyInit, valInit, isMediaOrPseudo);
346
- return;
347
- }
348
- }
349
- }
350
- let isMedia = isMediaKey(keyInit);
351
- let isPseudo = keyInit in import_helpers.validPseudoKeys;
352
- const isVariant = variants && keyInit in variants;
353
- const shouldPassProp = !(isMedia || isPseudo || isVariant || keyInit in validStyleProps || keyInit in shorthands);
354
- const parentHasVariant = ((_a2 = staticConfig.parentStaticConfig) == null ? void 0 : _a2.variants) && keyInit in staticConfig.parentStaticConfig;
355
- const isHOCShouldPassThrough = staticConfig.isHOC && (isMedia || isPseudo);
356
- const shouldPassThrough = shouldPassProp || isHOCShouldPassThrough || parentHasVariant;
357
- if (process.env.NODE_ENV === "development" && debug === "verbose" && shouldPassThrough) {
358
- console.log(` \u{1F539} pass through ${keyInit}`);
359
- }
360
- if (shouldPassThrough) {
361
- usedKeys[keyInit] = 1;
362
- viewProps[keyInit] = valInit;
363
- if (!isVariant) {
364
- return;
365
- }
366
- }
367
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
368
- console.groupCollapsed(" \u{1F539} styles", keyInit, valInit);
369
- }
370
- const expanded = isMedia || isPseudo ? [[keyInit, valInit]] : propMapper(
371
- keyInit,
372
- valInit,
373
- theme,
374
- special ? { ...props, fontFamily: fontFamilyOverride } : props,
375
- state,
376
- languageContext,
377
- void 0,
378
- debug
379
- );
380
- if (!fontFamily) {
381
- fontFamily = (0, import_createPropMapper.getPropMappedFontFamily)(expanded);
382
- }
383
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
384
- if (!import_constants.isServer && import_isDevTools.isDevTools) {
385
- console.log("expanded", expanded, "\nusedKeys", usedKeys, "\ncurrent", {
386
- ...style
387
- });
388
- }
389
- console.groupEnd();
390
- }
391
- if (!expanded)
392
- return;
393
- for (const [key, val] of expanded) {
394
- if (val === void 0)
395
- continue;
396
- if (key in import_helpers.stylePropsFont && !special && key !== "fontFamily") {
397
- specialProps.push([key, val]);
398
- continue;
399
- }
400
- isMedia = isMediaKey(key);
401
- isPseudo = key in import_helpers.validPseudoKeys;
402
- const isMediaOrPseudo = isMedia || isPseudo;
403
- if (!isMediaOrPseudo && usedKeys[key]) {
404
- if (process.env.NODE_ENV === "developmnet" && debug === "verbose") {
405
- console.log(`Used media/pseudo ${key}`);
406
- }
407
- continue;
408
- }
409
- if ((inlineProps == null ? void 0 : inlineProps.has(key)) || (inlineWhenUnflattened == null ? void 0 : inlineWhenUnflattened.has(key))) {
410
- usedKeys[key] = 1;
411
- viewProps[key] = props[key] ?? val;
412
- }
413
- if (isPseudo) {
414
- if (!val)
415
- continue;
416
- const pseudoStyleObject = getSubStyle(
417
- styleState,
418
- key,
419
- val,
420
- true,
421
- state.noClassNames
422
- );
423
- const descriptor = import_pseudoDescriptors.pseudoDescriptors[key];
424
- const isEnter = descriptor.name === "enter";
425
- const isExit = descriptor.name === "exit";
426
- if (!descriptor || isExit && !state.isExiting) {
427
- continue;
428
- }
429
- if (!shouldDoClasses || IS_STATIC) {
430
- pseudos || (pseudos = {});
431
- pseudos[key] || (pseudos[key] = {});
432
- Object.assign(pseudos[key], pseudoStyleObject);
433
- }
434
- if (shouldDoClasses && !isEnter && !isExit) {
435
- const pseudoStyles = (0, import_getStylesAtomic.getAtomicStyle)(pseudoStyleObject, descriptor);
436
- for (const psuedoStyle of pseudoStyles) {
437
- const fullKey = `${psuedoStyle.property}${PROP_SPLIT}${descriptor.name}`;
438
- if (!usedKeys[fullKey]) {
439
- usedKeys[fullKey] = 1;
440
- addStyleToInsertRules(rulesToInsert, psuedoStyle);
441
- mergeClassName(
442
- transforms,
443
- classNames,
444
- fullKey,
445
- psuedoStyle.identifier,
446
- isMediaOrPseudo
447
- );
448
- }
449
- }
450
- } else {
451
- if (usedKeys[key]) {
452
- continue;
453
- }
454
- let isDisabled = !state[descriptor.stateKey || descriptor.name];
455
- if (import_constants.isWeb && !import_constants.isClient && isEnter) {
456
- isDisabled = false;
457
- }
458
- if (!isDisabled) {
459
- if (valInit === staticConfig.defaultProps[keyInit]) {
460
- } else {
461
- usedKeys[key] || (usedKeys[key] = 1);
462
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
463
- console.log(`Setting used ${key}`);
464
- }
465
- }
466
- }
467
- psuedosUsed || (psuedosUsed = {});
468
- const importance = descriptor.priority;
469
- for (const pkey in pseudoStyleObject) {
470
- const val2 = pseudoStyleObject[pkey];
471
- if (isDisabled) {
472
- if (!(pkey in usedKeys) && pkey in animatableDefaults) {
473
- const defaultVal = animatableDefaults[pkey];
474
- mergeStyle(styleState, flatTransforms, pkey, defaultVal, true);
475
- }
476
- continue;
477
- }
478
- const curImportance = psuedosUsed[importance] || 0;
479
- const shouldMerge = importance >= curImportance;
480
- if (shouldMerge) {
481
- psuedosUsed[pkey] = importance;
482
- pseudos || (pseudos = {});
483
- pseudos[key] || (pseudos[key] = {});
484
- pseudos[key][pkey] = val2;
485
- mergeStyle(styleState, flatTransforms, pkey, val2);
486
- }
487
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
488
- console.log(" merge pseudo?", keyInit, shouldMerge, { importance, curImportance, pkey, val: val2 });
489
- }
490
- }
491
- }
492
- continue;
493
- }
494
- if (isMedia) {
495
- if (!val)
496
- continue;
497
- hasMedia || (hasMedia = true);
498
- const mediaStyle = getSubStyle(
499
- styleState,
500
- key,
501
- val,
502
- // TODO try true like pseudo
503
- false
504
- );
505
- const mediaKeyShort = key.slice(1);
506
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
507
- console.log(` \u{1F4FA} ${key}`, { key, mediaStyle, props, shouldDoClasses });
508
- }
509
- if ("space" in mediaStyle) {
510
- if (!Array.isArray(hasMedia)) {
511
- hasMedia = [];
512
- }
513
- hasMedia.push(mediaKeyShort);
514
- }
515
- if (shouldDoClasses) {
516
- if ("space" in mediaStyle) {
517
- delete mediaStyle["space"];
518
- if (mediaState[mediaKeyShort]) {
519
- const val2 = valInit.space;
520
- const importance = (0, import_useMedia.getMediaImportanceIfMoreImportant)(
521
- mediaKeyShort,
522
- "space",
523
- usedKeys
524
- );
525
- if (importance) {
526
- space = val2;
527
- usedKeys["space"] = importance;
528
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
529
- console.log(
530
- `Found more important space for current media ${mediaKeyShort}: ${val2} (importance: ${importance})`
531
- );
532
- }
533
- }
534
- }
535
- }
536
- const mediaStyles = (0, import_getStylesAtomic.getStylesAtomic)(mediaStyle);
537
- for (const style2 of mediaStyles) {
538
- const out = (0, import_createMediaStyle.createMediaStyle)(style2, mediaKeyShort, import_useMedia.mediaQueryConfig);
539
- const fullKey = `${style2.property}${PROP_SPLIT}${mediaKeyShort}`;
540
- if (!usedKeys[fullKey]) {
541
- usedKeys[fullKey] = 1;
542
- addStyleToInsertRules(rulesToInsert, out);
543
- mergeClassName(transforms, classNames, fullKey, out.identifier, true);
544
- }
545
- }
546
- } else if (mediaState[mediaKeyShort]) {
547
- for (const subKey in mediaStyle) {
548
- const importance = (0, import_useMedia.getMediaImportanceIfMoreImportant)(
549
- mediaKeyShort,
550
- subKey,
551
- usedKeys
552
- );
553
- if (importance === null)
554
- continue;
555
- if (subKey === "space") {
556
- space = valInit.space;
557
- continue;
558
- }
559
- (0, import_useMedia.mergeMediaByImportance)(
560
- style,
561
- mediaKeyShort,
562
- subKey,
563
- mediaStyle[subKey],
564
- usedKeys
565
- );
566
- if (key === "fontFamily") {
567
- fontFamily = mediaStyle.fontFamily;
568
- }
569
- }
570
- }
571
- continue;
572
- }
573
- if (process.env.TAMAGUI_TARGET === "native") {
574
- if (key === "pointerEvents") {
575
- usedKeys[key] = 1;
576
- viewProps[key] = val;
577
- continue;
578
- }
579
- }
580
- if (key === "fontFamily" && !fontFamily && valInit && val) {
581
- fontFamily = valInit[0] === "$" ? valInit : val;
582
- }
583
- if (key in validStyleProps) {
584
- mergeStyle(styleState, flatTransforms, key, val);
585
- continue;
586
- }
587
- if (!variants || !(key in variants)) {
588
- if (!(key in skipProps)) {
589
- viewProps[key] = val;
590
- usedKeys[key] = 1;
591
- }
592
- }
593
- }
594
- }
595
- for (let i = len - 1; i >= 0; i--) {
596
- const keyInit = propKeys[i];
597
- const valInit = props[keyInit];
598
- processProp(keyInit, valInit);
599
- }
600
- for (let i = 0; i < specialProps.length; i++) {
601
- const [key, value] = specialProps[i];
602
- processProp(key, value, true, fontFamily);
603
- }
604
- (0, import_expandStyles.fixStyles)(style);
605
- if (import_constants.isWeb) {
606
- (0, import_getStylesAtomic.styleToCSS)(style);
607
- }
608
- if (process.env.TAMAGUI_TARGET === "native") {
609
- if ("fontFamily" in style && style.fontFamily) {
610
- const faceInfo = (_a = (0, import_config.getFont)(style.fontFamily)) == null ? void 0 : _a.face;
611
- if (faceInfo) {
612
- const overrideFace = (_c = (_b = faceInfo[style.fontWeight]) == null ? void 0 : _b[style.fontStyle || "normal"]) == null ? void 0 : _c.val;
613
- if (overrideFace) {
614
- style.fontFamily = overrideFace;
615
- fontFamily = overrideFace;
616
- delete style.fontWeight;
617
- delete style.fontStyle;
618
- }
619
- }
620
- if (process.env.NODE_ENV === "development") {
621
- if (debug) {
622
- console.log(`Found fontFamily native: ${style.fontFamily}`, faceInfo);
623
- }
624
- }
625
- }
626
- }
627
- if (flatTransforms) {
628
- if (process.env.NODE_ENV === "development" && debug) {
629
- console.log(
630
- "Merging flat transforms, transform before",
631
- [...style.transform || []],
632
- flatTransforms
633
- );
634
- }
635
- mergeTransforms(style, flatTransforms, true);
636
- }
637
- if (parentSplitStyles) {
638
- if (process.env.TAMAGUI_TARGET === "web") {
639
- if (shouldDoClasses) {
640
- for (const key in parentSplitStyles.classNames) {
641
- const val = parentSplitStyles.classNames[key];
642
- if (key in style || key in classNames)
643
- continue;
644
- classNames[key] = val;
645
- }
646
- }
647
- }
648
- if (!shouldDoClasses) {
649
- for (const key in parentSplitStyles.style) {
650
- if (key in classNames || key in style)
651
- continue;
652
- style[key] = parentSplitStyles.style[key];
653
- }
654
- }
655
- }
656
- if (process.env.TAMAGUI_TARGET === "web") {
657
- if (shouldDoClasses) {
658
- const retainedStyles = {};
659
- if (style["$$css"]) {
660
- } else {
661
- const atomic = (0, import_getStylesAtomic.getStylesAtomic)(style);
662
- for (const atomicStyle of atomic) {
663
- const key = atomicStyle.property;
664
- if (props.animateOnly && props.animateOnly.includes(key)) {
665
- retainedStyles[key] = atomicStyle.value;
666
- } else {
667
- addStyleToInsertRules(rulesToInsert, atomicStyle);
668
- mergeClassName(transforms, classNames, key, atomicStyle.identifier);
669
- }
670
- }
671
- if (!IS_STATIC) {
672
- style = retainedStyles;
673
- }
674
- }
675
- }
676
- if (transforms) {
677
- for (const namespace in transforms) {
678
- if (!transforms[namespace]) {
679
- if (process.env.NODE_ENV === "development") {
680
- console.warn("Error no transform", transforms, namespace);
681
- }
682
- continue;
683
- }
684
- const [hash, val] = transforms[namespace];
685
- const identifier = `_transform${hash}`;
686
- if (import_constants.isClient && !import_insertStyleRule.insertedTransforms[identifier]) {
687
- const rule = `.${identifier} { transform: ${val}; }`;
688
- addStyleToInsertRules(rulesToInsert, {
689
- identifier,
690
- rules: [rule],
691
- property: namespace
692
- });
693
- }
694
- classNames[namespace] = identifier;
695
- }
696
- }
697
- }
698
- const nextViewProps = {};
699
- const ks = Object.keys(viewProps);
700
- const l = ks.length;
701
- for (let i = l - 1; i >= 0; i--) {
702
- nextViewProps[ks[i]] = viewProps[ks[i]];
703
- }
704
- const result = {
705
- space,
706
- hasMedia,
707
- fontFamily,
708
- viewProps: nextViewProps,
709
- style,
710
- pseudos,
711
- classNames,
712
- rulesToInsert
713
- };
714
- if (className) {
715
- classNames.className = className;
716
- }
717
- if (process.env.NODE_ENV === "development" && debug === "verbose") {
718
- if (import_isDevTools.isDevTools) {
719
- console.groupCollapsed(" \u{1F539} styles =>");
720
- const logs = { ...result, state, etc: { transforms, viewProps, rulesToInsert, parentSplitStyles, flatTransforms } };
721
- for (const key in logs) {
722
- console.log(key, logs[key]);
723
- }
724
- console.groupEnd();
725
- }
726
- }
727
- cache.set(props, result);
728
- return result;
729
- };
730
- function mergeClassName(transforms, classNames, key, val, isMediaOrPseudo = false) {
731
- if (process.env.TAMAGUI_TARGET === "web") {
732
- if (!val)
733
- return;
734
- if (val[0] === "_" && val.startsWith("_transform-")) {
735
- const ns = isMediaOrPseudo ? key : "transform";
736
- let transform = import_insertStyleRule.insertedTransforms[val];
737
- if (import_constants.isClient && !transform) {
738
- (0, import_insertStyleRule.scanAllSheets)();
739
- transform = import_insertStyleRule.insertedTransforms[val];
740
- if (!transform && import_constants.isWeb && val[0] !== "_") {
741
- transform = val;
742
- }
743
- }
744
- transforms[ns] || (transforms[ns] = ["", ""]);
745
- transforms[ns][0] += val.replace("_transform", "");
746
- if (transform) {
747
- transforms[ns][1] += transform;
748
- }
749
- } else {
750
- classNames[key] = val;
751
- }
752
- }
753
- }
754
- const cache = /* @__PURE__ */ new WeakMap();
755
- function getSubStyleProps(defaultProps, baseProps, specificProps) {
756
- const key = specificProps || baseProps;
757
- if (!cache.has(key)) {
758
- cache.set(key, {
759
- ...defaultProps,
760
- ...baseProps,
761
- ...specificProps
762
- });
763
- }
764
- return cache.get(key);
765
- }
766
- function mergeStyle({ usedKeys, classNames, viewProps, style }, flatTransforms, key, val, dontSetUsed = false) {
767
- if (!dontSetUsed) {
768
- usedKeys[key] || (usedKeys[key] = 1);
769
- }
770
- if (val && val[0] === "_") {
771
- classNames[key] = val;
772
- } else if (key in import_helpers.stylePropsTransform) {
773
- flatTransforms || (flatTransforms = {});
774
- flatTransforms[key] = val;
775
- } else {
776
- const out = (0, import_normalizeValueWithProperty.normalizeValueWithProperty)(val, key);
777
- if (key in import_helpers.validStylesOnBaseProps) {
778
- viewProps[key] = out;
779
- } else {
780
- style[key] = out;
781
- }
782
- }
783
- }
784
- const getSubStyle = (styleState, subKey, styleIn, avoidDefaultProps, avoidMergeTransform) => {
785
- const { staticConfig, theme, props, state, conf: conf2, languageContext } = styleState;
786
- const styleOut = {};
787
- for (let key in styleIn) {
788
- const val = styleIn[key];
789
- key = conf2.shorthands[key] || key;
790
- const expanded = staticConfig.propMapper(
791
- key,
792
- val,
793
- theme,
794
- getSubStyleProps(staticConfig.defaultProps, props, props[subKey]),
795
- state,
796
- languageContext,
797
- avoidDefaultProps
798
- );
799
- if (!expanded)
800
- continue;
801
- for (const [skey, sval] of expanded) {
802
- if (!avoidMergeTransform && skey in import_helpers.stylePropsTransform) {
803
- mergeTransform(styleOut, skey, sval);
804
- } else {
805
- styleOut[skey] = (0, import_normalizeValueWithProperty.normalizeValueWithProperty)(sval, key);
806
- }
807
- }
808
- }
809
- (0, import_expandStyles.fixStyles)(styleOut);
810
- return styleOut;
811
- };
812
- const useInsertEffectCompat = import_constants.isWeb ? import_react.useInsertionEffect || import_constants.useIsomorphicLayoutEffect : () => {
813
- };
814
- const useSplitStyles = (...args) => {
815
- const res = getSplitStyles(...args);
816
- if (!import_constants.isRSC) {
817
- useInsertEffectCompat(() => {
818
- (0, import_insertStyleRule.insertStyleRules)(res.rulesToInsert);
819
- }, [res.rulesToInsert]);
820
- }
821
- return res;
822
- };
823
- function addStyleToInsertRules(rulesToInsert, styleObject) {
824
- if (process.env.TAMAGUI_TARGET === "web") {
825
- if (!(0, import_insertStyleRule.shouldInsertStyleRules)(styleObject.identifier)) {
826
- return;
827
- }
828
- (0, import_insertStyleRule.updateRules)(styleObject.identifier, styleObject.rules);
829
- rulesToInsert.push(styleObject);
830
- }
831
- }
832
- function processIDRefList(idRefList) {
833
- return Array.isArray(idRefList) ? idRefList.join(" ") : idRefList;
834
- }
835
- const animatableDefaults = {
836
- opacity: 1,
837
- scale: 1,
838
- rotate: "0deg",
839
- rotateY: "0deg",
840
- rotateX: "0deg"
841
- };
842
- const lowercaseHyphenate = (match) => `-${match.toLowerCase()}`;
843
- const hyphenate = (str) => str.replace(/[A-Z]/g, lowercaseHyphenate);
844
- const mergeTransform = (obj, key, val, backwards = false) => {
845
- obj.transform || (obj.transform = []);
846
- obj.transform[backwards ? "unshift" : "push"]({
847
- [mapTransformKeys[key] || key]: val
848
- });
849
- };
850
- const mergeTransforms = (obj, flatTransforms, backwards = false) => {
851
- Object.entries(flatTransforms).forEach(([key, val]) => {
852
- mergeTransform(obj, key, val, backwards);
853
- });
854
- };
855
- const mapTransformKeys = {
856
- x: "translateX",
857
- y: "translateY"
858
- };
859
- // Annotate the CommonJS export names for ESM import in node:
860
- 0 && (module.exports = {
861
- PROP_SPLIT,
862
- getSplitStyles,
863
- getSubStyle,
864
- useSplitStyles
865
- });
1
+ "use strict";var ge=Object.defineProperty;var Be=Object.getOwnPropertyDescriptor;var qe=Object.getOwnPropertyNames;var ze=Object.prototype.hasOwnProperty;var Qe=(t,r)=>{for(var c in r)ge(t,c,{get:r[c],enumerable:!0})},Xe=(t,r,c,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let d of qe(r))!ze.call(t,d)&&d!==c&&ge(t,d,{get:()=>r[d],enumerable:!(n=Be(r,d))||n.enumerable});return t};var Ye=t=>Xe(ge({},"__esModule",{value:!0}),t);var nt={};Qe(nt,{PROP_SPLIT:()=>U,getSplitStyles:()=>Fe,getSubStyle:()=>he,useSplitStyles:()=>Ie});module.exports=Ye(nt);var T=require("@tamagui/constants"),h=require("@tamagui/helpers"),we=require("react"),ne=require("../config.js"),Se=require("../constants/isDevTools.js"),_=require("../hooks/useMedia.js"),$e=require("./createMediaStyle.js"),Ge=require("./createPropMapper.js"),Te=require("./expandStyles.js"),H=require("./getStylesAtomic"),R=require("./insertStyleRule.js"),k=require("./normalizeValueWithProperty.js"),Ve=require("./pseudoDescriptors.js");const ee={animation:!0,space:!0,animateOnly:!0,debug:!0,componentName:!0,tag:!0};process.env.NODE_ENV==="test"&&(ee["data-test-renders"]=!0);const te=process.env.IS_STATIC==="is_static";process.env.TAMAGUI_TARGET==="native"&&Object.assign(ee,{whiteSpace:!0,wordWrap:!0,textOverflow:!0,textDecorationDistance:!0,cursor:!0,contain:!0,boxSizing:!0,boxShadow:!0});const se={};if(process.env.TAMAGUI_TARGET==="web"){const t={Hidden:!0,ActiveDescendant:!0,Atomic:!0,AutoComplete:!0,Busy:!0,Checked:!0,ColumnCount:"colcount",ColumnIndex:"colindex",ColumnSpan:"colspan",Current:!0,Details:!0,ErrorMessage:!0,Expanded:!0,HasPopup:!0,Invalid:!0,Label:!0,Level:!0,Modal:!0,Multiline:!0,MultiSelectable:!0,Orientation:!0,Owns:!0,Placeholder:!0,PosInSet:!0,Pressed:!0,RoleDescription:!0,RowCount:!0,RowIndex:!0,RowSpan:!0,Selected:!0,SetSize:!0,Sort:!0,ValueMax:!0,ValueMin:!0,ValueNow:!0,ValueText:!0};for(const r in t){let c=t[r];c===!0&&(c=r.toLowerCase()),se[`accessibility${r}`]=`aria-${c}`}}let oe;const U="-",Ze={adjustable:"slider",header:"heading",image:"img",link:"link",none:"presentation",summary:"region"},Me=t=>Boolean(t[0]==="$"&&_.mediaKeysWithAndWithout$.has(t)),Fe=(t,r,c,n,d,p,l,m)=>{var Ne,Ae,Oe;if(X.has(t))return X.get(t);oe=oe||(0,ne.getConfig)();const{shorthands:v}=oe,{variants:D,propMapper:ie,isReactNative:K,inlineProps:M,inlineWhenUnflattened:Y}=r,B=r.isText?h.stylePropsText:h.validStyles,a={};let b=null,ae=null;const be=n.mediaState||_.mediaState,i={},ce=Object.keys(t);let le=t.space,Z=!1;const w=r.acceptsClassName&&(T.isWeb||te)&&!n.noClassNames;let f={};const q={},Ke=ce.length,z=[],P={};let fe="";const x={};let W;const Q={classNames:P,conf:oe,props:t,state:n,staticConfig:r,style:f,theme:c,usedKeys:i,viewProps:a,languageContext:p};if(process.env.NODE_ENV==="development"&&m==="verbose"&&(console.groupCollapsed("getSplitStyles (looping backwards)"),console.log({props:t,staticConfig:r,shouldDoClasses:w,state:n,IS_STATIC:te,propKeys:ce,styleState:Q}),console.groupEnd()),t.className)for(const e of t.className.split(" "))if(e[0]==="_"){const[s,g]=e.slice(1).split("-"),E=g[0]==="_",L=g[0]==="0",j=E||L;let C=v[s];if(E){let $=g.slice(1);$=$.slice(0,$.indexOf("_")),C+=`${U}${$}`}else if(L){const $=g.slice(1);C+=`${U}${$}`}i[C]=1,J(x,P,C,e,j)}else e&&(fe+=` ${e}`);const ue=[];function Pe(e,s,g=!1,E=null){var xe;if(e==="className")return;if(e in v&&(e=v[e]),process.env.TAMAGUI_TARGET==="native"){if(e==="userSelect")e="selectable",s=s!=="none";else if(e.startsWith("data-")||e.startsWith("aria-"))return}if(!r.isHOC&&e in ee||e in i)return;if(typeof s=="string"&&s[0]==="_"&&(e in B||e.includes("-"))){w?P[e]=s:f[e]=(0,k.reverseMapClassNameToValue)(e,s),i[e]=1;return}if(e==="dataSet"){for(const o in s)a[`data-${st(o)}`]=s[o];return}const L=e==="style";if(L||e.startsWith("_style")){if(!s)return;const o=Array.isArray(s)?s:[s],y=o.length;for(let G=y;G>=0;G--){const S=o[G];if(S)for(const u in S)!L&&i[u]||(i[u]=1,f[u]=S[u])}return}if(process.env.TAMAGUI_TARGET==="web"){if(e==="disabled"&&s===!0&&(i[e]=1,a["aria-disabled"]=!0,(l==="button"||l==="form"||l==="input"||l==="select"||l==="textarea")&&(a.disabled=!0),!(D!=null&&D.disabled)))return;if(e==="testID"){i[e]=1,a[K?"testId":"data-testid"]=s;return}if(e==="id"||e==="nativeID"){i[e]=1,K?a.nativeID=s:a.id=s;return}let o=!1;if(K){if(se[e]||e.startsWith("accessibility")){a[e]=s,i[e]=1;return}}else if(o=!0,se[e])a[se[e]]=s;else switch(e){case"accessibilityRole":{s==="none"?a.role="presentation":a.role=Ze[s]||s;return}case"accessibilityLabelledBy":case"accessibilityFlowTo":case"accessibilityControls":case"accessibilityDescribedBy":{a[`aria-${e.replace("accessibility","").toLowerCase()}`]=et(s);return}case"accessibilityKeyShortcuts":{Array.isArray(s)&&(a["aria-keyshortcuts"]=s.join(" "));return}case"accessibilityLiveRegion":{a["aria-live"]=s==="none"?"off":s;return}case"accessibilityReadOnly":{a["aria-readonly"]=s,(l==="input"||l==="select"||l==="textarea")&&(a.readOnly=!0);return}case"accessibilityRequired":{a["aria-required"]=s,(l==="input"||l==="select"||l==="textarea")&&(a.required=s);return}default:o=!1}if(o){i[e]=1;return}if(s&&s[0]==="_"){const y=e in h.validStyles,G=!y&&e.includes(U)&&h.validStyles[e.split(U)[0]];if(y||G){i[e]=1,process.env.NODE_ENV==="development"&&m&&console.log("tamagui classname props",e,s),J(x,P,e,s,G);return}}}let j=Me(e),C=e in h.validPseudoKeys;const $=D&&e in D,je=!(j||C||$||e in B||e in v),Le=((xe=r.parentStaticConfig)==null?void 0:xe.variants)&&e in r.parentStaticConfig,Ue=r.isHOC&&(j||C),Re=je||Ue||Le;if(process.env.NODE_ENV==="development"&&m==="verbose"&&Re&&console.log(` \u{1F539} pass through ${e}`),Re&&(i[e]=1,a[e]=s,!$))return;process.env.NODE_ENV==="development"&&m==="verbose"&&console.groupCollapsed(" \u{1F539} styles",e,s);const I=j||C?[[e,s]]:ie(e,s,c,g?{...t,fontFamily:E}:t,n,p,void 0,m);if(W||(W=(0,Ge.getPropMappedFontFamily)(I)),process.env.NODE_ENV==="development"&&m==="verbose"&&(!T.isServer&&Se.isDevTools&&console.log("expanded",I,`
2
+ usedKeys`,i,`
3
+ current`,{...f}),console.groupEnd()),!!I)for(const[o,y]of I){if(y===void 0)continue;if(o in h.stylePropsFont&&!g&&o!=="fontFamily"){ue.push([o,y]);continue}j=Me(o),C=o in h.validPseudoKeys;const G=j||C;if(!G&&i[o]){process.env.NODE_ENV==="developmnet"&&m==="verbose"&&console.log(`Used media/pseudo ${o}`);continue}if((M!=null&&M.has(o)||Y!=null&&Y.has(o))&&(i[o]=1,a[o]=t[o]??y),C){if(!y)continue;const S=he(Q,o,y,!0,n.noClassNames),u=Ve.pseudoDescriptors[o],V=u.name==="enter",F=u.name==="exit";if(!u||F&&!n.isExiting)continue;if((!w||te)&&(b||(b={}),b[o]||(b[o]={}),Object.assign(b[o],S)),w&&!V&&!F){const A=(0,H.getAtomicStyle)(S,u);for(const O of A){const N=`${O.property}${U}${u.name}`;i[N]||(i[N]=1,re(z,O),J(x,P,N,O.identifier,G))}}else{if(i[o])continue;let A=!n[u.stateKey||u.name];T.isWeb&&!T.isClient&&V&&(A=!1),A||s===r.defaultProps[e]||(i[o]||(i[o]=1),process.env.NODE_ENV==="development"&&m==="verbose"&&console.log(`Setting used ${o}`)),ae||(ae={});const O=u.priority;for(const N in S){const me=S[N];if(A){if(!(N in i)&&N in ve){const He=ve[N];ye(Q,q,N,He,!0)}continue}const Ce=ae[O]||0,_e=O>=Ce;_e&&(ae[N]=O,b||(b={}),b[o]||(b[o]={}),b[o][N]=me,ye(Q,q,N,me)),process.env.NODE_ENV==="development"&&m==="verbose"&&console.log(" merge pseudo?",e,_e,{importance:O,curImportance:Ce,pkey:N,val:me})}}continue}if(j){if(!y)continue;Z||(Z=!0);const S=he(Q,o,y,!1),u=o.slice(1);if(process.env.NODE_ENV==="development"&&m==="verbose"&&console.log(` \u{1F4FA} ${o}`,{key:o,mediaStyle:S,props:t,shouldDoClasses:w}),"space"in S&&(Array.isArray(Z)||(Z=[]),Z.push(u)),w){if("space"in S&&(delete S.space,be[u])){const F=s.space,A=(0,_.getMediaImportanceIfMoreImportant)(u,"space",i);A&&(le=F,i.space=A,process.env.NODE_ENV==="development"&&m==="verbose"&&console.log(`Found more important space for current media ${u}: ${F} (importance: ${A})`))}const V=(0,H.getStylesAtomic)(S);for(const F of V){const A=(0,$e.createMediaStyle)(F,u,_.mediaQueryConfig),O=`${F.property}${U}${u}`;i[O]||(i[O]=1,re(z,A),J(x,P,O,A.identifier,!0))}}else if(be[u]){for(const V in S)if((0,_.getMediaImportanceIfMoreImportant)(u,V,i)!==null){if(V==="space"){le=s.space;continue}(0,_.mergeMediaByImportance)(f,u,V,S[V],i),o==="fontFamily"&&(W=S.fontFamily)}}continue}if(process.env.TAMAGUI_TARGET==="native"&&o==="pointerEvents"){i[o]=1,a[o]=y;continue}if(o==="fontFamily"&&!W&&s&&y&&(W=s[0]==="$"?s:y),o in B){ye(Q,q,o,y);continue}(!D||!(o in D))&&(o in ee||(a[o]=y,i[o]=1))}}for(let e=Ke-1;e>=0;e--){const s=ce[e],g=t[s];Pe(s,g)}for(let e=0;e<ue.length;e++){const[s,g]=ue[e];Pe(s,g,!0,W)}if((0,Te.fixStyles)(f),T.isWeb&&(0,H.styleToCSS)(f),process.env.TAMAGUI_TARGET==="native"&&"fontFamily"in f&&f.fontFamily){const e=(Ne=(0,ne.getFont)(f.fontFamily))==null?void 0:Ne.face;if(e){const s=(Oe=(Ae=e[f.fontWeight])==null?void 0:Ae[f.fontStyle||"normal"])==null?void 0:Oe.val;s&&(f.fontFamily=s,W=s,delete f.fontWeight,delete f.fontStyle)}process.env.NODE_ENV==="development"&&m&&console.log(`Found fontFamily native: ${f.fontFamily}`,e)}if(q&&ot(f,q,!0),d){if(process.env.TAMAGUI_TARGET==="web"&&w)for(const e in d.classNames){const s=d.classNames[e];e in f||e in P||(P[e]=s)}if(!w)for(const e in d.style)e in P||e in f||(f[e]=d.style[e])}if(process.env.TAMAGUI_TARGET==="web"){if(w){const e={};if(!f.$$css){const s=(0,H.getStylesAtomic)(f);for(const g of s){const E=g.property;t.animateOnly&&t.animateOnly.includes(E)?e[E]=g.value:(re(z,g),J(x,P,E,g.identifier))}te||(f=e)}}if(x)for(const e in x){if(!x[e]){process.env.NODE_ENV==="development"&&console.warn("Error no transform",x,e);continue}const[s,g]=x[e],E=`_transform${s}`;if(T.isClient&&!R.insertedTransforms[E]){const L=`.${E} { transform: ${g}; }`;re(z,{identifier:E,rules:[L],property:e})}P[e]=E}}const Ee={},pe=Object.keys(a),We=pe.length;for(let e=We-1;e>=0;e--)Ee[pe[e]]=a[pe[e]];const de={space:le,hasMedia:Z,fontFamily:W,viewProps:Ee,style:f,pseudos:b,classNames:P,rulesToInsert:z};if(fe&&(P.className=fe),process.env.NODE_ENV==="development"&&m==="verbose"&&Se.isDevTools){console.groupCollapsed(" \u{1F539} styles =>");const e={...de,state:n,etc:{transforms:x,viewProps:a,rulesToInsert:z,parentSplitStyles:d,flatTransforms:q}};for(const s in e)console.log(s,e[s]);console.groupEnd()}return X.set(t,de),de};function J(t,r,c,n,d=!1){if(process.env.TAMAGUI_TARGET==="web"){if(!n)return;if(n[0]==="_"&&n.startsWith("_transform-")){const p=d?c:"transform";let l=R.insertedTransforms[n];T.isClient&&!l&&((0,R.scanAllSheets)(),l=R.insertedTransforms[n],!l&&T.isWeb&&n[0]!=="_"&&(l=n)),t[p]||(t[p]=["",""]),t[p][0]+=n.replace("_transform",""),l&&(t[p][1]+=l)}else r[c]=n}}const X=new WeakMap;function Je(t,r,c){const n=c||r;return X.has(n)||X.set(n,{...t,...r,...c}),X.get(n)}function ye({usedKeys:t,classNames:r,viewProps:c,style:n},d,p,l,m=!1){if(m||t[p]||(t[p]=1),l&&l[0]==="_")r[p]=l;else if(p in h.stylePropsTransform)d||(d={}),d[p]=l;else{const v=(0,k.normalizeValueWithProperty)(l,p);p in h.validStylesOnBaseProps?c[p]=v:n[p]=v}}const he=(t,r,c,n,d)=>{const{staticConfig:p,theme:l,props:m,state:v,conf:D,languageContext:ie}=t,K={};for(let M in c){const Y=c[M];M=D.shorthands[M]||M;const B=p.propMapper(M,Y,l,Je(p.defaultProps,m,m[r]),v,ie,n);if(B)for(const[a,b]of B)!d&&a in h.stylePropsTransform?De(K,a,b):K[a]=(0,k.normalizeValueWithProperty)(b,M)}return(0,Te.fixStyles)(K),K},ke=T.isWeb?we.useInsertionEffect||T.useIsomorphicLayoutEffect:()=>{},Ie=(...t)=>{const r=Fe(...t);return T.isRSC||ke(()=>{(0,R.insertStyleRules)(r.rulesToInsert)},[r.rulesToInsert]),r};function re(t,r){if(process.env.TAMAGUI_TARGET==="web"){if(!(0,R.shouldInsertStyleRules)(r.identifier))return;(0,R.updateRules)(r.identifier,r.rules),t.push(r)}}function et(t){return Array.isArray(t)?t.join(" "):t}const ve={opacity:1,scale:1,rotate:"0deg",rotateY:"0deg",rotateX:"0deg"},tt=t=>`-${t.toLowerCase()}`,st=t=>t.replace(/[A-Z]/g,tt),De=(t,r,c,n=!1)=>{t.transform||(t.transform=[]),t.transform[n?"unshift":"push"]({[rt[r]||r]:c})},ot=(t,r,c=!1)=>{Object.entries(r).forEach(([n,d])=>{De(t,n,d,c)})},rt={x:"translateX",y:"translateY"};0&&(module.exports={PROP_SPLIT,getSplitStyles,getSubStyle,useSplitStyles});
866
4
  //# sourceMappingURL=getSplitStyles.js.map