@tamagui/web 3.0.0-beta.669.1 → 3.0.0-beta.728.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (841) hide show
  1. package/dist/cjs/Tamagui.cjs +0 -1
  2. package/dist/cjs/Tamagui.native.cjs +0 -1
  3. package/dist/cjs/Tamagui.native.js +0 -1
  4. package/dist/cjs/Tamagui.native.js.map +1 -1
  5. package/dist/cjs/_withNativeStyle.cjs +0 -1
  6. package/dist/cjs/_withNativeStyle.native.cjs +0 -1
  7. package/dist/cjs/_withNativeStyle.native.js +0 -1
  8. package/dist/cjs/_withNativeStyle.native.js.map +1 -1
  9. package/dist/cjs/_withStableStyle.cjs +0 -1
  10. package/dist/cjs/_withStableStyle.native.cjs +0 -1
  11. package/dist/cjs/_withStableStyle.native.js +0 -1
  12. package/dist/cjs/_withStableStyle.native.js.map +1 -1
  13. package/dist/cjs/config.cjs +7 -1
  14. package/dist/cjs/config.native.cjs +7 -1
  15. package/dist/cjs/config.native.js +7 -1
  16. package/dist/cjs/config.native.js.map +1 -1
  17. package/dist/cjs/constants/accessibilityDirectMap.cjs +0 -1
  18. package/dist/cjs/constants/accessibilityDirectMap.native.cjs +0 -1
  19. package/dist/cjs/constants/accessibilityDirectMap.native.js +0 -1
  20. package/dist/cjs/constants/accessibilityDirectMap.native.js.map +1 -1
  21. package/dist/cjs/constants/constants.cjs +0 -1
  22. package/dist/cjs/constants/constants.native.cjs +0 -1
  23. package/dist/cjs/constants/constants.native.js +0 -1
  24. package/dist/cjs/constants/constants.native.js.map +1 -1
  25. package/dist/cjs/constants/isDevTools.cjs +0 -1
  26. package/dist/cjs/constants/isDevTools.native.cjs +0 -1
  27. package/dist/cjs/constants/isDevTools.native.js +0 -1
  28. package/dist/cjs/constants/isDevTools.native.js.map +1 -1
  29. package/dist/cjs/contexts/ComponentContext.cjs +0 -1
  30. package/dist/cjs/contexts/ComponentContext.native.cjs +0 -1
  31. package/dist/cjs/contexts/ComponentContext.native.js +0 -1
  32. package/dist/cjs/contexts/ComponentContext.native.js.map +1 -1
  33. package/dist/cjs/contexts/GroupContext.cjs +0 -1
  34. package/dist/cjs/contexts/GroupContext.native.cjs +0 -1
  35. package/dist/cjs/contexts/GroupContext.native.js +0 -1
  36. package/dist/cjs/contexts/GroupContext.native.js.map +1 -1
  37. package/dist/cjs/createComponent.cjs +1 -2
  38. package/dist/cjs/createComponent.native.cjs +1 -2
  39. package/dist/cjs/createComponent.native.js +1 -2
  40. package/dist/cjs/createComponent.native.js.map +1 -1
  41. package/dist/cjs/createFont.cjs +0 -1
  42. package/dist/cjs/createFont.native.cjs +0 -1
  43. package/dist/cjs/createFont.native.js +0 -1
  44. package/dist/cjs/createFont.native.js.map +1 -1
  45. package/dist/cjs/createShorthands.cjs +0 -1
  46. package/dist/cjs/createShorthands.native.cjs +0 -1
  47. package/dist/cjs/createShorthands.native.js +0 -1
  48. package/dist/cjs/createShorthands.native.js.map +1 -1
  49. package/dist/cjs/createStyledHOC.cjs +0 -1
  50. package/dist/cjs/createStyledHOC.native.cjs +0 -1
  51. package/dist/cjs/createStyledHOC.native.js +0 -1
  52. package/dist/cjs/createStyledHOC.native.js.map +1 -1
  53. package/dist/cjs/createTamagui.cjs +3 -4
  54. package/dist/cjs/createTamagui.native.cjs +3 -4
  55. package/dist/cjs/createTamagui.native.js +3 -4
  56. package/dist/cjs/createTamagui.native.js.map +1 -1
  57. package/dist/cjs/createTokens.cjs +0 -1
  58. package/dist/cjs/createTokens.native.cjs +0 -1
  59. package/dist/cjs/createTokens.native.js +0 -1
  60. package/dist/cjs/createTokens.native.js.map +1 -1
  61. package/dist/cjs/createVariable.cjs +0 -1
  62. package/dist/cjs/createVariable.native.cjs +0 -1
  63. package/dist/cjs/createVariable.native.js +0 -1
  64. package/dist/cjs/createVariable.native.js.map +1 -1
  65. package/dist/cjs/createVariables.cjs +0 -1
  66. package/dist/cjs/createVariables.native.cjs +0 -1
  67. package/dist/cjs/createVariables.native.js +0 -1
  68. package/dist/cjs/createVariables.native.js.map +1 -1
  69. package/dist/cjs/defaultComponentState.cjs +0 -1
  70. package/dist/cjs/defaultComponentState.native.cjs +0 -1
  71. package/dist/cjs/defaultComponentState.native.js +0 -1
  72. package/dist/cjs/defaultComponentState.native.js.map +1 -1
  73. package/dist/cjs/dom/adapters.cjs +0 -1
  74. package/dist/cjs/dom/adapters.native.cjs +0 -1
  75. package/dist/cjs/dom/adapters.native.js +0 -1
  76. package/dist/cjs/dom/adapters.native.js.map +1 -1
  77. package/dist/cjs/dom/contract.cjs +0 -1
  78. package/dist/cjs/dom/contract.native.cjs +0 -1
  79. package/dist/cjs/dom/contract.native.js +0 -1
  80. package/dist/cjs/dom/contract.native.js.map +1 -1
  81. package/dist/cjs/dom/domEventProps.native.cjs +0 -1
  82. package/dist/cjs/dom/domEventProps.native.js +0 -1
  83. package/dist/cjs/dom/domEventProps.native.js.map +1 -1
  84. package/dist/cjs/dom/html.cjs +0 -1
  85. package/dist/cjs/dom/html.native.cjs +0 -1
  86. package/dist/cjs/dom/html.native.js +0 -1
  87. package/dist/cjs/dom/html.native.js.map +1 -1
  88. package/dist/cjs/dom/htmlRuntime.native.cjs +0 -1
  89. package/dist/cjs/dom/htmlRuntime.native.js +0 -1
  90. package/dist/cjs/dom/htmlRuntime.native.js.map +1 -1
  91. package/dist/cjs/dom/index.cjs +0 -1
  92. package/dist/cjs/dom/index.native.cjs +0 -1
  93. package/dist/cjs/dom/index.native.js +0 -1
  94. package/dist/cjs/dom/index.native.js.map +1 -1
  95. package/dist/cjs/dom/primitives.native.cjs +2 -3
  96. package/dist/cjs/dom/primitives.native.js +2 -3
  97. package/dist/cjs/dom/primitives.native.js.map +1 -1
  98. package/dist/cjs/dom/standalone.cjs +0 -1
  99. package/dist/cjs/dom/standalone.native.cjs +0 -1
  100. package/dist/cjs/dom/standalone.native.js +0 -1
  101. package/dist/cjs/dom/standalone.native.js.map +1 -1
  102. package/dist/cjs/dom/standaloneHtml.cjs +0 -1
  103. package/dist/cjs/dom/standaloneHtml.native.cjs +0 -1
  104. package/dist/cjs/dom/standaloneHtml.native.js +0 -1
  105. package/dist/cjs/dom/standaloneHtml.native.js.map +1 -1
  106. package/dist/cjs/dom/styleTypes.cjs +0 -1
  107. package/dist/cjs/dom/styleTypes.native.cjs +0 -1
  108. package/dist/cjs/dom/styleTypes.native.js +0 -1
  109. package/dist/cjs/dom/styleTypes.native.js.map +1 -1
  110. package/dist/cjs/eventDetails.cjs +0 -1
  111. package/dist/cjs/eventDetails.native.cjs +0 -1
  112. package/dist/cjs/eventDetails.native.js +0 -1
  113. package/dist/cjs/eventDetails.native.js.map +1 -1
  114. package/dist/cjs/eventHandling.cjs +0 -1
  115. package/dist/cjs/eventHandling.native.cjs +0 -1
  116. package/dist/cjs/eventHandling.native.js +0 -1
  117. package/dist/cjs/eventHandling.native.js.map +1 -1
  118. package/dist/cjs/helpers/componentDisplayName.cjs +0 -1
  119. package/dist/cjs/helpers/componentDisplayName.native.cjs +0 -1
  120. package/dist/cjs/helpers/componentDisplayName.native.js +0 -1
  121. package/dist/cjs/helpers/componentDisplayName.native.js.map +1 -1
  122. package/dist/cjs/helpers/configVariables.cjs +79 -0
  123. package/dist/cjs/helpers/configVariables.native.cjs +86 -0
  124. package/dist/cjs/helpers/configVariables.native.js +88 -0
  125. package/dist/cjs/helpers/configVariables.native.js.map +1 -0
  126. package/dist/cjs/helpers/consoleLog.native.cjs +0 -1
  127. package/dist/cjs/helpers/consoleLog.native.js +0 -1
  128. package/dist/cjs/helpers/consoleLog.native.js.map +1 -1
  129. package/dist/cjs/helpers/createDesignSystem.cjs +0 -1
  130. package/dist/cjs/helpers/createDesignSystem.native.cjs +0 -1
  131. package/dist/cjs/helpers/createDesignSystem.native.js +0 -1
  132. package/dist/cjs/helpers/createDesignSystem.native.js.map +1 -1
  133. package/dist/cjs/helpers/createStyledContext.cjs +0 -1
  134. package/dist/cjs/helpers/createStyledContext.native.cjs +0 -1
  135. package/dist/cjs/helpers/createStyledContext.native.js +0 -1
  136. package/dist/cjs/helpers/createStyledContext.native.js.map +1 -1
  137. package/dist/cjs/helpers/defaultAnimationDriver.cjs +1 -6
  138. package/dist/cjs/helpers/defaultAnimationDriver.native.cjs +0 -13
  139. package/dist/cjs/helpers/defaultAnimationDriver.native.js +0 -13
  140. package/dist/cjs/helpers/defaultAnimationDriver.native.js.map +1 -1
  141. package/dist/cjs/helpers/defaultOffset.cjs +0 -1
  142. package/dist/cjs/helpers/defaultOffset.native.cjs +0 -1
  143. package/dist/cjs/helpers/defaultOffset.native.js +0 -1
  144. package/dist/cjs/helpers/defaultOffset.native.js.map +1 -1
  145. package/dist/cjs/helpers/directStyle.cjs +258 -284
  146. package/dist/cjs/helpers/directStyle.native.cjs +274 -306
  147. package/dist/cjs/helpers/directStyle.native.js +274 -306
  148. package/dist/cjs/helpers/directStyle.native.js.map +1 -1
  149. package/dist/cjs/helpers/expandStyle.cjs +0 -1
  150. package/dist/cjs/helpers/expandStyle.native.cjs +0 -1
  151. package/dist/cjs/helpers/expandStyle.native.js +0 -1
  152. package/dist/cjs/helpers/expandStyle.native.js.map +1 -1
  153. package/dist/cjs/helpers/expandStyles.cjs +0 -1
  154. package/dist/cjs/helpers/expandStyles.native.cjs +0 -1
  155. package/dist/cjs/helpers/expandStyles.native.js +0 -1
  156. package/dist/cjs/helpers/expandStyles.native.js.map +1 -1
  157. package/dist/cjs/helpers/extractPseudoState.cjs +0 -1
  158. package/dist/cjs/helpers/extractPseudoState.native.cjs +0 -1
  159. package/dist/cjs/helpers/extractPseudoState.native.js +0 -1
  160. package/dist/cjs/helpers/extractPseudoState.native.js.map +1 -1
  161. package/dist/cjs/helpers/formatDiagnostic.cjs +0 -1
  162. package/dist/cjs/helpers/formatDiagnostic.native.cjs +0 -1
  163. package/dist/cjs/helpers/formatDiagnostic.native.js +0 -1
  164. package/dist/cjs/helpers/formatDiagnostic.native.js.map +1 -1
  165. package/dist/cjs/helpers/frontendProgram.cjs +0 -1
  166. package/dist/cjs/helpers/frontendProgram.native.cjs +0 -1
  167. package/dist/cjs/helpers/frontendProgram.native.js +0 -1
  168. package/dist/cjs/helpers/frontendProgram.native.js.map +1 -1
  169. package/dist/cjs/helpers/getCSSStylesAtomic.cjs +5 -2
  170. package/dist/cjs/helpers/getCSSStylesAtomic.native.cjs +0 -1
  171. package/dist/cjs/helpers/getCSSStylesAtomic.native.js +0 -1
  172. package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +1 -1
  173. package/dist/cjs/helpers/getDefaultProps.cjs +0 -1
  174. package/dist/cjs/helpers/getDefaultProps.native.cjs +0 -1
  175. package/dist/cjs/helpers/getDefaultProps.native.js +0 -1
  176. package/dist/cjs/helpers/getDefaultProps.native.js.map +1 -1
  177. package/dist/cjs/helpers/getDynamicVal.cjs +0 -1
  178. package/dist/cjs/helpers/getDynamicVal.native.cjs +0 -1
  179. package/dist/cjs/helpers/getDynamicVal.native.js +0 -1
  180. package/dist/cjs/helpers/getDynamicVal.native.js.map +1 -1
  181. package/dist/cjs/helpers/getExpandedShorthands.cjs +0 -1
  182. package/dist/cjs/helpers/getExpandedShorthands.native.cjs +0 -1
  183. package/dist/cjs/helpers/getExpandedShorthands.native.js +0 -1
  184. package/dist/cjs/helpers/getExpandedShorthands.native.js.map +1 -1
  185. package/dist/cjs/helpers/getFontLanguage.cjs +0 -1
  186. package/dist/cjs/helpers/getFontLanguage.native.cjs +0 -1
  187. package/dist/cjs/helpers/getFontLanguage.native.js +0 -1
  188. package/dist/cjs/helpers/getFontLanguage.native.js.map +1 -1
  189. package/dist/cjs/helpers/getShorthandValue.cjs +0 -1
  190. package/dist/cjs/helpers/getShorthandValue.native.cjs +0 -1
  191. package/dist/cjs/helpers/getShorthandValue.native.js +0 -1
  192. package/dist/cjs/helpers/getShorthandValue.native.js.map +1 -1
  193. package/dist/cjs/helpers/getSplitStyles.cjs +2 -10
  194. package/dist/cjs/helpers/getSplitStyles.native.cjs +2 -10
  195. package/dist/cjs/helpers/getSplitStyles.native.js +2 -10
  196. package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
  197. package/dist/cjs/helpers/getThemeCSSRules.cjs +0 -1
  198. package/dist/cjs/helpers/getThemeCSSRules.native.cjs +0 -1
  199. package/dist/cjs/helpers/getThemeCSSRules.native.js +0 -1
  200. package/dist/cjs/helpers/getThemeCSSRules.native.js.map +1 -1
  201. package/dist/cjs/helpers/getVariantExtras.cjs +0 -1
  202. package/dist/cjs/helpers/getVariantExtras.native.cjs +0 -1
  203. package/dist/cjs/helpers/getVariantExtras.native.js +0 -1
  204. package/dist/cjs/helpers/getVariantExtras.native.js.map +1 -1
  205. package/dist/cjs/helpers/grammarConfig.cjs +63 -14
  206. package/dist/cjs/helpers/grammarConfig.native.cjs +84 -18
  207. package/dist/cjs/helpers/grammarConfig.native.js +84 -18
  208. package/dist/cjs/helpers/grammarConfig.native.js.map +1 -1
  209. package/dist/cjs/helpers/insertStyleRule.cjs +0 -1
  210. package/dist/cjs/helpers/insertStyleRule.native.cjs +0 -1
  211. package/dist/cjs/helpers/insertStyleRule.native.js +0 -1
  212. package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
  213. package/dist/cjs/helpers/isObj.cjs +0 -1
  214. package/dist/cjs/helpers/isObj.native.cjs +0 -1
  215. package/dist/cjs/helpers/isObj.native.js +0 -1
  216. package/dist/cjs/helpers/isObj.native.js.map +1 -1
  217. package/dist/cjs/helpers/isTamaguiComponent.cjs +0 -1
  218. package/dist/cjs/helpers/isTamaguiComponent.native.cjs +0 -1
  219. package/dist/cjs/helpers/isTamaguiComponent.native.js +0 -1
  220. package/dist/cjs/helpers/isTamaguiComponent.native.js.map +1 -1
  221. package/dist/cjs/helpers/isTamaguiElement.cjs +0 -1
  222. package/dist/cjs/helpers/isTamaguiElement.native.cjs +0 -1
  223. package/dist/cjs/helpers/isTamaguiElement.native.js +0 -1
  224. package/dist/cjs/helpers/isTamaguiElement.native.js.map +1 -1
  225. package/dist/cjs/helpers/log.cjs +0 -1
  226. package/dist/cjs/helpers/log.native.cjs +0 -1
  227. package/dist/cjs/helpers/log.native.js +0 -1
  228. package/dist/cjs/helpers/log.native.js.map +1 -1
  229. package/dist/cjs/helpers/mainThreadPressEvents.cjs +0 -1
  230. package/dist/cjs/helpers/mainThreadPressEvents.native.cjs +0 -1
  231. package/dist/cjs/helpers/mainThreadPressEvents.native.js +0 -1
  232. package/dist/cjs/helpers/mainThreadPressEvents.native.js.map +1 -1
  233. package/dist/cjs/helpers/matchMedia.cjs +0 -1
  234. package/dist/cjs/helpers/matchMedia.native.cjs +0 -1
  235. package/dist/cjs/helpers/matchMedia.native.js +0 -1
  236. package/dist/cjs/helpers/matchMedia.native.js.map +1 -1
  237. package/dist/cjs/helpers/mediaObjectToString.cjs +0 -1
  238. package/dist/cjs/helpers/mediaObjectToString.native.cjs +0 -1
  239. package/dist/cjs/helpers/mediaObjectToString.native.js +0 -1
  240. package/dist/cjs/helpers/mediaObjectToString.native.js.map +1 -1
  241. package/dist/cjs/helpers/mediaState.cjs +0 -1
  242. package/dist/cjs/helpers/mediaState.native.cjs +0 -1
  243. package/dist/cjs/helpers/mediaState.native.js +0 -1
  244. package/dist/cjs/helpers/mediaState.native.js.map +1 -1
  245. package/dist/cjs/helpers/mergeProps.cjs +0 -1
  246. package/dist/cjs/helpers/mergeProps.native.cjs +0 -1
  247. package/dist/cjs/helpers/mergeProps.native.js +0 -1
  248. package/dist/cjs/helpers/mergeProps.native.js.map +1 -1
  249. package/dist/cjs/helpers/mergeRenderElementProps.cjs +0 -1
  250. package/dist/cjs/helpers/mergeRenderElementProps.native.cjs +0 -1
  251. package/dist/cjs/helpers/mergeRenderElementProps.native.js +0 -1
  252. package/dist/cjs/helpers/mergeRenderElementProps.native.js.map +1 -1
  253. package/dist/cjs/helpers/mergeSlotStyleProps.cjs +0 -1
  254. package/dist/cjs/helpers/mergeSlotStyleProps.native.cjs +0 -1
  255. package/dist/cjs/helpers/mergeSlotStyleProps.native.js +0 -1
  256. package/dist/cjs/helpers/mergeSlotStyleProps.native.js.map +1 -1
  257. package/dist/cjs/helpers/mergeVariants.cjs +1 -2
  258. package/dist/cjs/helpers/mergeVariants.native.cjs +1 -2
  259. package/dist/cjs/helpers/mergeVariants.native.js +1 -2
  260. package/dist/cjs/helpers/mergeVariants.native.js.map +1 -1
  261. package/dist/cjs/helpers/nativeOnlyProps.cjs +0 -1
  262. package/dist/cjs/helpers/nativeOnlyProps.native.cjs +0 -1
  263. package/dist/cjs/helpers/nativeOnlyProps.native.js +0 -1
  264. package/dist/cjs/helpers/nativeOnlyProps.native.js.map +1 -1
  265. package/dist/cjs/helpers/nativeStyleEngine.cjs +0 -1
  266. package/dist/cjs/helpers/nativeStyleEngine.native.cjs +0 -1
  267. package/dist/cjs/helpers/nativeStyleEngine.native.js +0 -1
  268. package/dist/cjs/helpers/nativeStyleEngine.native.js.map +1 -1
  269. package/dist/cjs/helpers/nativeTransitionTarget.cjs +0 -1
  270. package/dist/cjs/helpers/nativeTransitionTarget.native.cjs +0 -1
  271. package/dist/cjs/helpers/nativeTransitionTarget.native.js +0 -1
  272. package/dist/cjs/helpers/nativeTransitionTarget.native.js.map +1 -1
  273. package/dist/cjs/helpers/normalizeColor.cjs +0 -1
  274. package/dist/cjs/helpers/normalizeColor.native.cjs +0 -1
  275. package/dist/cjs/helpers/normalizeColor.native.js +0 -1
  276. package/dist/cjs/helpers/normalizeColor.native.js.map +1 -1
  277. package/dist/cjs/helpers/normalizeShadow.cjs +0 -1
  278. package/dist/cjs/helpers/normalizeShadow.native.cjs +0 -1
  279. package/dist/cjs/helpers/normalizeShadow.native.js +0 -1
  280. package/dist/cjs/helpers/normalizeShadow.native.js.map +1 -1
  281. package/dist/cjs/helpers/normalizeStyle.cjs +0 -1
  282. package/dist/cjs/helpers/normalizeStyle.native.cjs +0 -1
  283. package/dist/cjs/helpers/normalizeStyle.native.js +0 -1
  284. package/dist/cjs/helpers/normalizeStyle.native.js.map +1 -1
  285. package/dist/cjs/helpers/normalizeStylePropKeys.cjs +0 -1
  286. package/dist/cjs/helpers/normalizeStylePropKeys.native.cjs +0 -1
  287. package/dist/cjs/helpers/normalizeStylePropKeys.native.js +0 -1
  288. package/dist/cjs/helpers/normalizeStylePropKeys.native.js.map +1 -1
  289. package/dist/cjs/helpers/normalizeValueWithProperty.cjs +0 -1
  290. package/dist/cjs/helpers/normalizeValueWithProperty.native.cjs +0 -1
  291. package/dist/cjs/helpers/normalizeValueWithProperty.native.js +0 -1
  292. package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
  293. package/dist/cjs/helpers/noteOnce.cjs +0 -1
  294. package/dist/cjs/helpers/noteOnce.native.cjs +0 -1
  295. package/dist/cjs/helpers/noteOnce.native.js +0 -1
  296. package/dist/cjs/helpers/noteOnce.native.js.map +1 -1
  297. package/dist/cjs/helpers/objectIdentityKey.cjs +0 -1
  298. package/dist/cjs/helpers/objectIdentityKey.native.cjs +0 -1
  299. package/dist/cjs/helpers/objectIdentityKey.native.js +0 -1
  300. package/dist/cjs/helpers/objectIdentityKey.native.js.map +1 -1
  301. package/dist/cjs/helpers/parseBorderShorthand.cjs +0 -1
  302. package/dist/cjs/helpers/parseBorderShorthand.native.cjs +0 -1
  303. package/dist/cjs/helpers/parseBorderShorthand.native.js +0 -1
  304. package/dist/cjs/helpers/parseBorderShorthand.native.js.map +1 -1
  305. package/dist/cjs/helpers/parseNativeStyle.native.cjs +0 -1
  306. package/dist/cjs/helpers/parseNativeStyle.native.js +0 -1
  307. package/dist/cjs/helpers/parseNativeStyle.native.js.map +1 -1
  308. package/dist/cjs/helpers/parseNativeTransform.native.cjs +0 -1
  309. package/dist/cjs/helpers/parseNativeTransform.native.js +0 -1
  310. package/dist/cjs/helpers/parseNativeTransform.native.js.map +1 -1
  311. package/dist/cjs/helpers/parseOutlineShorthand.cjs +0 -1
  312. package/dist/cjs/helpers/parseOutlineShorthand.native.cjs +0 -1
  313. package/dist/cjs/helpers/parseOutlineShorthand.native.js +0 -1
  314. package/dist/cjs/helpers/parseOutlineShorthand.native.js.map +1 -1
  315. package/dist/cjs/helpers/pointerEvents.cjs +0 -1
  316. package/dist/cjs/helpers/pointerEvents.native.cjs +0 -1
  317. package/dist/cjs/helpers/pointerEvents.native.js +0 -1
  318. package/dist/cjs/helpers/pointerEvents.native.js.map +1 -1
  319. package/dist/cjs/helpers/propMapper.cjs +30 -39
  320. package/dist/cjs/helpers/propMapper.native.cjs +30 -39
  321. package/dist/cjs/helpers/propMapper.native.js +30 -39
  322. package/dist/cjs/helpers/propMapper.native.js.map +1 -1
  323. package/dist/cjs/helpers/proxyThemeToParents.cjs +0 -1
  324. package/dist/cjs/helpers/proxyThemeToParents.native.cjs +0 -1
  325. package/dist/cjs/helpers/proxyThemeToParents.native.js +0 -1
  326. package/dist/cjs/helpers/proxyThemeToParents.native.js.map +1 -1
  327. package/dist/cjs/helpers/registerCSSVariable.cjs +0 -1
  328. package/dist/cjs/helpers/registerCSSVariable.native.cjs +0 -1
  329. package/dist/cjs/helpers/registerCSSVariable.native.js +0 -1
  330. package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
  331. package/dist/cjs/helpers/resolveAnimationDriver.cjs +0 -1
  332. package/dist/cjs/helpers/resolveAnimationDriver.native.cjs +0 -1
  333. package/dist/cjs/helpers/resolveAnimationDriver.native.js +0 -1
  334. package/dist/cjs/helpers/resolveAnimationDriver.native.js.map +1 -1
  335. package/dist/cjs/helpers/resolveRem.cjs +0 -1
  336. package/dist/cjs/helpers/resolveRem.native.cjs +0 -1
  337. package/dist/cjs/helpers/resolveRem.native.js +0 -1
  338. package/dist/cjs/helpers/resolveRem.native.js.map +1 -1
  339. package/dist/cjs/helpers/resolveSafeArea.cjs +0 -1
  340. package/dist/cjs/helpers/resolveSafeArea.native.cjs +0 -1
  341. package/dist/cjs/helpers/resolveSafeArea.native.js +0 -1
  342. package/dist/cjs/helpers/resolveSafeArea.native.js.map +1 -1
  343. package/dist/cjs/helpers/resolveSafeAreaVariable.cjs +0 -1
  344. package/dist/cjs/helpers/resolveSafeAreaVariable.native.cjs +0 -1
  345. package/dist/cjs/helpers/resolveSafeAreaVariable.native.js +0 -1
  346. package/dist/cjs/helpers/resolveSafeAreaVariable.native.js.map +1 -1
  347. package/dist/cjs/helpers/resolveVariableValue.cjs +0 -1
  348. package/dist/cjs/helpers/resolveVariableValue.native.cjs +0 -1
  349. package/dist/cjs/helpers/resolveVariableValue.native.js +0 -1
  350. package/dist/cjs/helpers/resolveVariableValue.native.js.map +1 -1
  351. package/dist/cjs/helpers/setElementProps.cjs +0 -1
  352. package/dist/cjs/helpers/setElementProps.native.cjs +0 -1
  353. package/dist/cjs/helpers/setElementProps.native.js +0 -1
  354. package/dist/cjs/helpers/setElementProps.native.js.map +1 -1
  355. package/dist/cjs/helpers/skipProps.cjs +0 -1
  356. package/dist/cjs/helpers/skipProps.native.cjs +0 -1
  357. package/dist/cjs/helpers/skipProps.native.js +0 -1
  358. package/dist/cjs/helpers/skipProps.native.js.map +1 -1
  359. package/dist/cjs/helpers/sortString.cjs +0 -1
  360. package/dist/cjs/helpers/sortString.native.cjs +0 -1
  361. package/dist/cjs/helpers/sortString.native.js +0 -1
  362. package/dist/cjs/helpers/sortString.native.js.map +1 -1
  363. package/dist/cjs/helpers/styleFrontend.cjs +0 -1
  364. package/dist/cjs/helpers/styleFrontend.native.cjs +0 -1
  365. package/dist/cjs/helpers/styleFrontend.native.js +0 -1
  366. package/dist/cjs/helpers/styleFrontend.native.js.map +1 -1
  367. package/dist/cjs/helpers/styleOriginalValues.cjs +0 -1
  368. package/dist/cjs/helpers/styleOriginalValues.native.cjs +0 -1
  369. package/dist/cjs/helpers/styleOriginalValues.native.js +0 -1
  370. package/dist/cjs/helpers/styleOriginalValues.native.js.map +1 -1
  371. package/dist/cjs/helpers/styleProvenance.cjs +0 -1
  372. package/dist/cjs/helpers/styleProvenance.native.cjs +0 -1
  373. package/dist/cjs/helpers/styleProvenance.native.js +0 -1
  374. package/dist/cjs/helpers/styleProvenance.native.js.map +1 -1
  375. package/dist/cjs/helpers/subscribeToContextGroup.cjs +0 -1
  376. package/dist/cjs/helpers/subscribeToContextGroup.native.cjs +0 -1
  377. package/dist/cjs/helpers/subscribeToContextGroup.native.js +0 -1
  378. package/dist/cjs/helpers/subscribeToContextGroup.native.js.map +1 -1
  379. package/dist/cjs/helpers/themeRef.cjs +0 -1
  380. package/dist/cjs/helpers/themeRef.native.cjs +0 -1
  381. package/dist/cjs/helpers/themeRef.native.js +0 -1
  382. package/dist/cjs/helpers/themeRef.native.js.map +1 -1
  383. package/dist/cjs/helpers/themeUpdateState.cjs +24 -0
  384. package/dist/cjs/helpers/themeUpdateState.native.cjs +26 -0
  385. package/dist/cjs/helpers/themeUpdateState.native.js +28 -0
  386. package/dist/cjs/helpers/themeUpdateState.native.js.map +1 -0
  387. package/dist/cjs/helpers/themeable.cjs +0 -1
  388. package/dist/cjs/helpers/themeable.native.cjs +0 -1
  389. package/dist/cjs/helpers/themeable.native.js +0 -1
  390. package/dist/cjs/helpers/themeable.native.js.map +1 -1
  391. package/dist/cjs/helpers/themes.cjs +0 -1
  392. package/dist/cjs/helpers/themes.native.cjs +0 -1
  393. package/dist/cjs/helpers/themes.native.js +0 -1
  394. package/dist/cjs/helpers/themes.native.js.map +1 -1
  395. package/dist/cjs/helpers/timer.cjs +0 -1
  396. package/dist/cjs/helpers/timer.native.cjs +0 -1
  397. package/dist/cjs/helpers/timer.native.js +0 -1
  398. package/dist/cjs/helpers/timer.native.js.map +1 -1
  399. package/dist/cjs/helpers/tokenCategories.cjs +0 -1
  400. package/dist/cjs/helpers/tokenCategories.native.cjs +0 -1
  401. package/dist/cjs/helpers/tokenCategories.native.js +0 -1
  402. package/dist/cjs/helpers/tokenCategories.native.js.map +1 -1
  403. package/dist/cjs/helpers/transformsToString.cjs +0 -1
  404. package/dist/cjs/helpers/transformsToString.native.cjs +0 -1
  405. package/dist/cjs/helpers/transformsToString.native.js +0 -1
  406. package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
  407. package/dist/cjs/helpers/useRenderElement.cjs +0 -1
  408. package/dist/cjs/helpers/useRenderElement.native.cjs +0 -1
  409. package/dist/cjs/helpers/useRenderElement.native.js +0 -1
  410. package/dist/cjs/helpers/useRenderElement.native.js.map +1 -1
  411. package/dist/cjs/helpers/variableValue.cjs +66 -0
  412. package/dist/cjs/helpers/variableValue.native.cjs +88 -0
  413. package/dist/cjs/helpers/variableValue.native.js +90 -0
  414. package/dist/cjs/helpers/variableValue.native.js.map +1 -0
  415. package/dist/cjs/helpers/variables.cjs +95 -139
  416. package/dist/cjs/helpers/variables.native.cjs +97 -161
  417. package/dist/cjs/helpers/variables.native.js +97 -161
  418. package/dist/cjs/helpers/variables.native.js.map +1 -1
  419. package/dist/cjs/helpers/warnOnce.cjs +1 -2
  420. package/dist/cjs/helpers/warnOnce.native.cjs +1 -2
  421. package/dist/cjs/helpers/warnOnce.native.js +1 -2
  422. package/dist/cjs/helpers/warnOnce.native.js.map +1 -1
  423. package/dist/cjs/helpers/webPropsToSkip.cjs +0 -1
  424. package/dist/cjs/helpers/webPropsToSkip.native.cjs +0 -1
  425. package/dist/cjs/helpers/webPropsToSkip.native.js +0 -1
  426. package/dist/cjs/helpers/webPropsToSkip.native.js.map +1 -1
  427. package/dist/cjs/helpers/wrapStyleTags.cjs +0 -1
  428. package/dist/cjs/helpers/wrapStyleTags.native.cjs +0 -1
  429. package/dist/cjs/helpers/wrapStyleTags.native.js +0 -1
  430. package/dist/cjs/helpers/wrapStyleTags.native.js.map +1 -1
  431. package/dist/cjs/hooks/doesRootSchemeMatchSystem.cjs +0 -1
  432. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.cjs +0 -1
  433. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js +0 -1
  434. package/dist/cjs/hooks/doesRootSchemeMatchSystem.native.js.map +1 -1
  435. package/dist/cjs/hooks/getThemeProxied.cjs +1 -2
  436. package/dist/cjs/hooks/getThemeProxied.native.cjs +2 -3
  437. package/dist/cjs/hooks/getThemeProxied.native.js +2 -3
  438. package/dist/cjs/hooks/getThemeProxied.native.js.map +1 -1
  439. package/dist/cjs/hooks/isOptimizedForFirstRender.cjs +0 -1
  440. package/dist/cjs/hooks/isOptimizedForFirstRender.native.cjs +0 -1
  441. package/dist/cjs/hooks/isOptimizedForFirstRender.native.js +0 -1
  442. package/dist/cjs/hooks/isOptimizedForFirstRender.native.js.map +1 -1
  443. package/dist/cjs/hooks/useAnimationDriver.cjs +14 -9
  444. package/dist/cjs/hooks/useAnimationDriver.native.cjs +14 -9
  445. package/dist/cjs/hooks/useAnimationDriver.native.js +14 -9
  446. package/dist/cjs/hooks/useAnimationDriver.native.js.map +1 -1
  447. package/dist/cjs/hooks/useComponentState.cjs +27 -25
  448. package/dist/cjs/hooks/useComponentState.native.cjs +28 -25
  449. package/dist/cjs/hooks/useComponentState.native.js +28 -25
  450. package/dist/cjs/hooks/useComponentState.native.js.map +1 -1
  451. package/dist/cjs/hooks/useDisableSSR.cjs +0 -1
  452. package/dist/cjs/hooks/useDisableSSR.native.cjs +0 -1
  453. package/dist/cjs/hooks/useDisableSSR.native.js +0 -1
  454. package/dist/cjs/hooks/useDisableSSR.native.js.map +1 -1
  455. package/dist/cjs/hooks/useIsTouchDevice.cjs +0 -1
  456. package/dist/cjs/hooks/useIsTouchDevice.native.cjs +0 -1
  457. package/dist/cjs/hooks/useIsTouchDevice.native.js +0 -1
  458. package/dist/cjs/hooks/useIsTouchDevice.native.js.map +1 -1
  459. package/dist/cjs/hooks/useMedia.cjs +0 -1
  460. package/dist/cjs/hooks/useMedia.native.cjs +0 -1
  461. package/dist/cjs/hooks/useMedia.native.js +0 -1
  462. package/dist/cjs/hooks/useMedia.native.js.map +1 -1
  463. package/dist/cjs/hooks/usePortalThemeState.cjs +1 -2
  464. package/dist/cjs/hooks/usePortalThemeState.native.cjs +1 -2
  465. package/dist/cjs/hooks/usePortalThemeState.native.js +1 -2
  466. package/dist/cjs/hooks/usePortalThemeState.native.js.map +1 -1
  467. package/dist/cjs/hooks/useProps.cjs +1 -2
  468. package/dist/cjs/hooks/useProps.native.cjs +1 -2
  469. package/dist/cjs/hooks/useProps.native.js +1 -2
  470. package/dist/cjs/hooks/useProps.native.js.map +1 -1
  471. package/dist/cjs/hooks/useTheme.cjs +0 -1
  472. package/dist/cjs/hooks/useTheme.native.cjs +0 -1
  473. package/dist/cjs/hooks/useTheme.native.js +0 -1
  474. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  475. package/dist/cjs/hooks/useThemeName.cjs +0 -1
  476. package/dist/cjs/hooks/useThemeName.native.cjs +0 -1
  477. package/dist/cjs/hooks/useThemeName.native.js +0 -1
  478. package/dist/cjs/hooks/useThemeName.native.js.map +1 -1
  479. package/dist/cjs/hooks/useThemeState.cjs +11 -16
  480. package/dist/cjs/hooks/useThemeState.native.cjs +13 -18
  481. package/dist/cjs/hooks/useThemeState.native.js +13 -18
  482. package/dist/cjs/hooks/useThemeState.native.js.map +1 -1
  483. package/dist/cjs/index.cjs +0 -2
  484. package/dist/cjs/index.native.cjs +0 -2
  485. package/dist/cjs/index.native.js +0 -2
  486. package/dist/cjs/index.native.js.map +1 -1
  487. package/dist/cjs/inject-styles.cjs +0 -1
  488. package/dist/cjs/inject-styles.native.cjs +0 -1
  489. package/dist/cjs/inject-styles.native.js +0 -1
  490. package/dist/cjs/inject-styles.native.js.map +1 -1
  491. package/dist/cjs/insertFont.cjs +0 -1
  492. package/dist/cjs/insertFont.native.cjs +0 -1
  493. package/dist/cjs/insertFont.native.js +0 -1
  494. package/dist/cjs/insertFont.native.js.map +1 -1
  495. package/dist/cjs/interfaces/CSSColorNames.cjs +0 -1
  496. package/dist/cjs/interfaces/CSSColorNames.native.cjs +0 -1
  497. package/dist/cjs/interfaces/CSSColorNames.native.js +0 -1
  498. package/dist/cjs/interfaces/CSSColorNames.native.js.map +1 -1
  499. package/dist/cjs/interfaces/GetRef.cjs +0 -1
  500. package/dist/cjs/interfaces/GetRef.native.cjs +0 -1
  501. package/dist/cjs/interfaces/GetRef.native.js +0 -1
  502. package/dist/cjs/interfaces/GetRef.native.js.map +1 -1
  503. package/dist/cjs/interfaces/RNExclusiveTypes.cjs +0 -1
  504. package/dist/cjs/interfaces/RNExclusiveTypes.native.cjs +0 -1
  505. package/dist/cjs/interfaces/RNExclusiveTypes.native.js +0 -1
  506. package/dist/cjs/interfaces/RNExclusiveTypes.native.js.map +1 -1
  507. package/dist/cjs/interfaces/TamaguiComponentEvents.cjs +0 -1
  508. package/dist/cjs/interfaces/TamaguiComponentEvents.native.cjs +0 -1
  509. package/dist/cjs/interfaces/TamaguiComponentEvents.native.js +0 -1
  510. package/dist/cjs/interfaces/TamaguiComponentEvents.native.js.map +1 -1
  511. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.cjs +0 -1
  512. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.cjs +0 -1
  513. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js +0 -1
  514. package/dist/cjs/interfaces/TamaguiComponentPropsBaseBase.native.js.map +1 -1
  515. package/dist/cjs/internal-runtime.cjs +1 -4
  516. package/dist/cjs/internal-runtime.native.cjs +1 -4
  517. package/dist/cjs/internal-runtime.native.js +1 -4
  518. package/dist/cjs/internal-runtime.native.js.map +1 -1
  519. package/dist/cjs/internalRuntimeTypes.cjs +0 -1
  520. package/dist/cjs/internalRuntimeTypes.native.cjs +0 -1
  521. package/dist/cjs/internalRuntimeTypes.native.js +0 -1
  522. package/dist/cjs/internalRuntimeTypes.native.js.map +1 -1
  523. package/dist/cjs/setupHooks.cjs +0 -1
  524. package/dist/cjs/setupHooks.native.cjs +0 -1
  525. package/dist/cjs/setupHooks.native.js +0 -1
  526. package/dist/cjs/setupHooks.native.js.map +1 -1
  527. package/dist/cjs/setupReactNative.cjs +0 -1
  528. package/dist/cjs/setupReactNative.native.cjs +0 -1
  529. package/dist/cjs/setupReactNative.native.js +0 -1
  530. package/dist/cjs/setupReactNative.native.js.map +1 -1
  531. package/dist/cjs/styled.cjs +0 -1
  532. package/dist/cjs/styled.native.cjs +0 -1
  533. package/dist/cjs/styled.native.js +0 -1
  534. package/dist/cjs/styled.native.js.map +1 -1
  535. package/dist/cjs/theme-update.cjs +19 -0
  536. package/dist/cjs/theme-update.native.cjs +21 -0
  537. package/dist/cjs/theme-update.native.js +23 -0
  538. package/dist/cjs/theme-update.native.js.map +1 -0
  539. package/dist/cjs/type-utils.cjs +0 -1
  540. package/dist/cjs/type-utils.native.cjs +0 -1
  541. package/dist/cjs/type-utils.native.js +0 -1
  542. package/dist/cjs/type-utils.native.js.map +1 -1
  543. package/dist/cjs/types.cjs +0 -1
  544. package/dist/cjs/types.native.cjs +0 -1
  545. package/dist/cjs/types.native.js +0 -1
  546. package/dist/cjs/types.native.js.map +1 -1
  547. package/dist/cjs/views/ConfigRevisionCheck.cjs +0 -1
  548. package/dist/cjs/views/ConfigRevisionCheck.native.cjs +0 -1
  549. package/dist/cjs/views/ConfigRevisionCheck.native.js +0 -1
  550. package/dist/cjs/views/ConfigRevisionCheck.native.js.map +1 -1
  551. package/dist/cjs/views/Configuration.cjs +0 -1
  552. package/dist/cjs/views/Configuration.native.cjs +0 -1
  553. package/dist/cjs/views/Configuration.native.js +0 -1
  554. package/dist/cjs/views/Configuration.native.js.map +1 -1
  555. package/dist/cjs/views/FontLanguage.cjs +0 -1
  556. package/dist/cjs/views/FontLanguage.native.cjs +0 -1
  557. package/dist/cjs/views/FontLanguage.native.js +0 -1
  558. package/dist/cjs/views/FontLanguage.native.js.map +1 -1
  559. package/dist/cjs/views/SafeAreaTracker.cjs +0 -1
  560. package/dist/cjs/views/SafeAreaTracker.native.cjs +0 -1
  561. package/dist/cjs/views/SafeAreaTracker.native.js +0 -1
  562. package/dist/cjs/views/SafeAreaTracker.native.js.map +1 -1
  563. package/dist/cjs/views/Slot.cjs +0 -1
  564. package/dist/cjs/views/Slot.native.cjs +0 -1
  565. package/dist/cjs/views/Slot.native.js +0 -1
  566. package/dist/cjs/views/Slot.native.js.map +1 -1
  567. package/dist/cjs/views/TamaguiProvider.cjs +0 -1
  568. package/dist/cjs/views/TamaguiProvider.native.cjs +0 -1
  569. package/dist/cjs/views/TamaguiProvider.native.js +0 -1
  570. package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
  571. package/dist/cjs/views/TamaguiRoot.cjs +0 -1
  572. package/dist/cjs/views/TamaguiRoot.native.cjs +0 -1
  573. package/dist/cjs/views/TamaguiRoot.native.js +0 -1
  574. package/dist/cjs/views/TamaguiRoot.native.js.map +1 -1
  575. package/dist/cjs/views/Text.cjs +0 -1
  576. package/dist/cjs/views/Text.native.cjs +0 -1
  577. package/dist/cjs/views/Text.native.js +0 -1
  578. package/dist/cjs/views/Text.native.js.map +1 -1
  579. package/dist/cjs/views/Theme.cjs +7 -33
  580. package/dist/cjs/views/Theme.native.cjs +8 -20
  581. package/dist/cjs/views/Theme.native.js +8 -20
  582. package/dist/cjs/views/Theme.native.js.map +1 -1
  583. package/dist/cjs/views/ThemeDebug.cjs +0 -1
  584. package/dist/cjs/views/ThemeDebug.native.cjs +0 -1
  585. package/dist/cjs/views/ThemeDebug.native.js +0 -1
  586. package/dist/cjs/views/ThemeDebug.native.js.map +1 -1
  587. package/dist/cjs/views/ThemeProvider.cjs +0 -1
  588. package/dist/cjs/views/ThemeProvider.native.cjs +0 -1
  589. package/dist/cjs/views/ThemeProvider.native.js +0 -1
  590. package/dist/cjs/views/ThemeProvider.native.js.map +1 -1
  591. package/dist/cjs/views/ThemeUpdate.cjs +82 -0
  592. package/dist/cjs/views/ThemeUpdate.native.cjs +84 -0
  593. package/dist/cjs/views/ThemeUpdate.native.js +86 -0
  594. package/dist/cjs/views/ThemeUpdate.native.js.map +1 -0
  595. package/dist/cjs/views/View.cjs +0 -1
  596. package/dist/cjs/views/View.native.cjs +0 -1
  597. package/dist/cjs/views/View.native.js +0 -1
  598. package/dist/cjs/views/View.native.js.map +1 -1
  599. package/dist/esm/Tamagui.mjs.map +1 -1
  600. package/dist/esm/Tamagui.native.js.map +1 -1
  601. package/dist/esm/_withNativeStyle.mjs.map +1 -1
  602. package/dist/esm/config.mjs +7 -0
  603. package/dist/esm/config.mjs.map +1 -1
  604. package/dist/esm/config.native.js +7 -0
  605. package/dist/esm/config.native.js.map +1 -1
  606. package/dist/esm/constants/isDevTools.mjs.map +1 -1
  607. package/dist/esm/constants/isDevTools.native.js.map +1 -1
  608. package/dist/esm/createComponent.mjs +1 -1
  609. package/dist/esm/createComponent.mjs.map +1 -1
  610. package/dist/esm/createComponent.native.js +1 -1
  611. package/dist/esm/createComponent.native.js.map +1 -1
  612. package/dist/esm/createFont.mjs.map +1 -1
  613. package/dist/esm/createFont.native.js.map +1 -1
  614. package/dist/esm/createTamagui.mjs +2 -2
  615. package/dist/esm/createTamagui.mjs.map +1 -1
  616. package/dist/esm/createTamagui.native.js +2 -2
  617. package/dist/esm/createTamagui.native.js.map +1 -1
  618. package/dist/esm/createVariable.mjs.map +1 -1
  619. package/dist/esm/createVariable.native.js.map +1 -1
  620. package/dist/esm/dom/primitives.native.js +1 -1
  621. package/dist/esm/dom/primitives.native.js.map +1 -1
  622. package/dist/esm/eventHandling.native.js.map +1 -1
  623. package/dist/esm/helpers/configVariables.mjs +60 -0
  624. package/dist/esm/helpers/configVariables.mjs.map +1 -0
  625. package/dist/esm/helpers/configVariables.native.js +65 -0
  626. package/dist/esm/helpers/configVariables.native.js.map +1 -0
  627. package/dist/esm/helpers/createDesignSystem.mjs.map +1 -1
  628. package/dist/esm/helpers/createDesignSystem.native.js.map +1 -1
  629. package/dist/esm/helpers/createStyledContext.mjs.map +1 -1
  630. package/dist/esm/helpers/createStyledContext.native.js.map +1 -1
  631. package/dist/esm/helpers/defaultAnimationDriver.mjs +1 -5
  632. package/dist/esm/helpers/defaultAnimationDriver.mjs.map +1 -1
  633. package/dist/esm/helpers/defaultAnimationDriver.native.js +0 -12
  634. package/dist/esm/helpers/defaultAnimationDriver.native.js.map +1 -1
  635. package/dist/esm/helpers/directStyle.mjs +258 -283
  636. package/dist/esm/helpers/directStyle.mjs.map +1 -1
  637. package/dist/esm/helpers/directStyle.native.js +274 -305
  638. package/dist/esm/helpers/directStyle.native.js.map +1 -1
  639. package/dist/esm/helpers/expandStyle.mjs.map +1 -1
  640. package/dist/esm/helpers/expandStyle.native.js.map +1 -1
  641. package/dist/esm/helpers/expandStyles.native.js.map +1 -1
  642. package/dist/esm/helpers/extractPseudoState.mjs.map +1 -1
  643. package/dist/esm/helpers/formatDiagnostic.mjs.map +1 -1
  644. package/dist/esm/helpers/formatDiagnostic.native.js.map +1 -1
  645. package/dist/esm/helpers/getCSSStylesAtomic.mjs +5 -1
  646. package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -1
  647. package/dist/esm/helpers/getDynamicVal.mjs.map +1 -1
  648. package/dist/esm/helpers/getDynamicVal.native.js.map +1 -1
  649. package/dist/esm/helpers/getExpandedShorthands.mjs.map +1 -1
  650. package/dist/esm/helpers/getExpandedShorthands.native.js.map +1 -1
  651. package/dist/esm/helpers/getFontLanguage.mjs.map +1 -1
  652. package/dist/esm/helpers/getFontLanguage.native.js.map +1 -1
  653. package/dist/esm/helpers/getShorthandValue.mjs.map +1 -1
  654. package/dist/esm/helpers/getShorthandValue.native.js.map +1 -1
  655. package/dist/esm/helpers/getSplitStyles.mjs +2 -9
  656. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  657. package/dist/esm/helpers/getSplitStyles.native.js +2 -9
  658. package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
  659. package/dist/esm/helpers/getThemeCSSRules.mjs.map +1 -1
  660. package/dist/esm/helpers/getVariantExtras.mjs.map +1 -1
  661. package/dist/esm/helpers/getVariantExtras.native.js.map +1 -1
  662. package/dist/esm/helpers/grammarConfig.mjs +59 -13
  663. package/dist/esm/helpers/grammarConfig.mjs.map +1 -1
  664. package/dist/esm/helpers/grammarConfig.native.js +80 -17
  665. package/dist/esm/helpers/grammarConfig.native.js.map +1 -1
  666. package/dist/esm/helpers/insertStyleRule.mjs.map +1 -1
  667. package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
  668. package/dist/esm/helpers/matchMedia.native.js.map +1 -1
  669. package/dist/esm/helpers/mediaObjectToString.mjs.map +1 -1
  670. package/dist/esm/helpers/mediaObjectToString.native.js.map +1 -1
  671. package/dist/esm/helpers/mergeVariants.mjs +1 -1
  672. package/dist/esm/helpers/mergeVariants.mjs.map +1 -1
  673. package/dist/esm/helpers/mergeVariants.native.js +1 -1
  674. package/dist/esm/helpers/mergeVariants.native.js.map +1 -1
  675. package/dist/esm/helpers/nativeStyleEngine.mjs.map +1 -1
  676. package/dist/esm/helpers/nativeStyleEngine.native.js.map +1 -1
  677. package/dist/esm/helpers/normalizeStyle.native.js.map +1 -1
  678. package/dist/esm/helpers/parseBorderShorthand.native.js.map +1 -1
  679. package/dist/esm/helpers/parseNativeStyle.native.js.map +1 -1
  680. package/dist/esm/helpers/parseNativeTransform.native.js.map +1 -1
  681. package/dist/esm/helpers/parseOutlineShorthand.native.js.map +1 -1
  682. package/dist/esm/helpers/propMapper.mjs +31 -39
  683. package/dist/esm/helpers/propMapper.mjs.map +1 -1
  684. package/dist/esm/helpers/propMapper.native.js +31 -39
  685. package/dist/esm/helpers/propMapper.native.js.map +1 -1
  686. package/dist/esm/helpers/proxyThemeToParents.mjs.map +1 -1
  687. package/dist/esm/helpers/proxyThemeToParents.native.js.map +1 -1
  688. package/dist/esm/helpers/registerCSSVariable.mjs.map +1 -1
  689. package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
  690. package/dist/esm/helpers/resolveSafeAreaVariable.native.js.map +1 -1
  691. package/dist/esm/helpers/subscribeToContextGroup.native.js.map +1 -1
  692. package/dist/esm/helpers/themeRef.mjs.map +1 -1
  693. package/dist/esm/helpers/themeRef.native.js.map +1 -1
  694. package/dist/esm/helpers/themeUpdateState.mjs +4 -0
  695. package/dist/esm/helpers/themeUpdateState.mjs.map +1 -0
  696. package/dist/esm/helpers/themeUpdateState.native.js +4 -0
  697. package/dist/esm/helpers/themeUpdateState.native.js.map +1 -0
  698. package/dist/esm/helpers/timer.mjs.map +1 -1
  699. package/dist/esm/helpers/timer.native.js.map +1 -1
  700. package/dist/esm/helpers/tokenCategories.mjs.map +1 -1
  701. package/dist/esm/helpers/tokenCategories.native.js.map +1 -1
  702. package/dist/esm/helpers/transformsToString.native.js.map +1 -1
  703. package/dist/esm/helpers/useRenderElement.mjs.map +1 -1
  704. package/dist/esm/helpers/useRenderElement.native.js.map +1 -1
  705. package/dist/esm/helpers/variableValue.mjs +44 -0
  706. package/dist/esm/helpers/variableValue.mjs.map +1 -0
  707. package/dist/esm/helpers/variableValue.native.js +64 -0
  708. package/dist/esm/helpers/variableValue.native.js.map +1 -0
  709. package/dist/esm/helpers/variables.mjs +96 -136
  710. package/dist/esm/helpers/variables.mjs.map +1 -1
  711. package/dist/esm/helpers/variables.native.js +98 -158
  712. package/dist/esm/helpers/variables.native.js.map +1 -1
  713. package/dist/esm/helpers/warnOnce.mjs +1 -1
  714. package/dist/esm/helpers/warnOnce.mjs.map +1 -1
  715. package/dist/esm/helpers/warnOnce.native.js +1 -1
  716. package/dist/esm/helpers/warnOnce.native.js.map +1 -1
  717. package/dist/esm/hooks/getThemeProxied.mjs.map +1 -1
  718. package/dist/esm/hooks/getThemeProxied.native.js +2 -2
  719. package/dist/esm/hooks/getThemeProxied.native.js.map +1 -1
  720. package/dist/esm/hooks/useAnimationDriver.mjs +14 -8
  721. package/dist/esm/hooks/useAnimationDriver.mjs.map +1 -1
  722. package/dist/esm/hooks/useAnimationDriver.native.js +14 -8
  723. package/dist/esm/hooks/useAnimationDriver.native.js.map +1 -1
  724. package/dist/esm/hooks/useComponentState.mjs +27 -24
  725. package/dist/esm/hooks/useComponentState.mjs.map +1 -1
  726. package/dist/esm/hooks/useComponentState.native.js +28 -24
  727. package/dist/esm/hooks/useComponentState.native.js.map +1 -1
  728. package/dist/esm/hooks/useMedia.mjs.map +1 -1
  729. package/dist/esm/hooks/useMedia.native.js.map +1 -1
  730. package/dist/esm/hooks/usePortalThemeState.mjs +2 -2
  731. package/dist/esm/hooks/usePortalThemeState.mjs.map +1 -1
  732. package/dist/esm/hooks/usePortalThemeState.native.js +2 -2
  733. package/dist/esm/hooks/usePortalThemeState.native.js.map +1 -1
  734. package/dist/esm/hooks/useProps.mjs +1 -1
  735. package/dist/esm/hooks/useProps.mjs.map +1 -1
  736. package/dist/esm/hooks/useProps.native.js +1 -1
  737. package/dist/esm/hooks/useProps.native.js.map +1 -1
  738. package/dist/esm/hooks/useThemeName.mjs.map +1 -1
  739. package/dist/esm/hooks/useThemeState.mjs +12 -15
  740. package/dist/esm/hooks/useThemeState.mjs.map +1 -1
  741. package/dist/esm/hooks/useThemeState.native.js +14 -17
  742. package/dist/esm/hooks/useThemeState.native.js.map +1 -1
  743. package/dist/esm/index.js +0 -2
  744. package/dist/esm/index.mjs +0 -2
  745. package/dist/esm/index.native.js +0 -2
  746. package/dist/esm/insertFont.mjs.map +1 -1
  747. package/dist/esm/insertFont.native.js.map +1 -1
  748. package/dist/esm/internal-runtime.mjs +1 -3
  749. package/dist/esm/internal-runtime.mjs.map +1 -1
  750. package/dist/esm/internal-runtime.native.js +1 -3
  751. package/dist/esm/internal-runtime.native.js.map +1 -1
  752. package/dist/esm/styled.mjs.map +1 -1
  753. package/dist/esm/styled.native.js.map +1 -1
  754. package/dist/esm/theme-update.mjs +3 -0
  755. package/dist/esm/theme-update.native.js +3 -0
  756. package/dist/esm/views/FontLanguage.mjs.map +1 -1
  757. package/dist/esm/views/SafeAreaTracker.native.js.map +1 -1
  758. package/dist/esm/views/TamaguiProvider.mjs.map +1 -1
  759. package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
  760. package/dist/esm/views/Theme.mjs +8 -33
  761. package/dist/esm/views/Theme.mjs.map +1 -1
  762. package/dist/esm/views/Theme.native.js +9 -20
  763. package/dist/esm/views/Theme.native.js.map +1 -1
  764. package/dist/esm/views/ThemeUpdate.mjs +54 -0
  765. package/dist/esm/views/ThemeUpdate.mjs.map +1 -0
  766. package/dist/esm/views/ThemeUpdate.native.js +53 -0
  767. package/dist/esm/views/ThemeUpdate.native.js.map +1 -0
  768. package/package.json +26 -17
  769. package/src/config.ts +7 -0
  770. package/src/createComponent.tsx +1 -4
  771. package/src/createTamagui.ts +3 -8
  772. package/src/dom/primitives.native.tsx +1 -1
  773. package/src/helpers/configVariables.ts +64 -0
  774. package/src/helpers/defaultAnimationDriver.tsx +0 -4
  775. package/src/helpers/directStyle.ts +876 -477
  776. package/src/helpers/getCSSStylesAtomic.ts +5 -1
  777. package/src/helpers/getSplitStyles.tsx +2 -23
  778. package/src/helpers/grammarConfig.ts +82 -12
  779. package/src/helpers/mergeVariants.ts +1 -3
  780. package/src/helpers/nativeTransitionTarget.native.ts +1 -1
  781. package/src/helpers/nativeTransitionTarget.ts +1 -1
  782. package/src/helpers/propMapper.ts +42 -49
  783. package/src/helpers/themeUpdateState.ts +27 -0
  784. package/src/helpers/variableValue.ts +45 -0
  785. package/src/helpers/variables.ts +149 -195
  786. package/src/helpers/warnOnce.ts +2 -2
  787. package/src/hooks/getThemeProxied.ts +9 -7
  788. package/src/hooks/useAnimationDriver.ts +26 -11
  789. package/src/hooks/useComponentState.ts +44 -34
  790. package/src/hooks/usePortalThemeState.ts +8 -8
  791. package/src/hooks/useProps.tsx +1 -4
  792. package/src/hooks/useThemeState.ts +16 -37
  793. package/src/index.ts +0 -1
  794. package/src/internal-runtime.ts +1 -8
  795. package/src/theme-update.ts +2 -0
  796. package/src/types.tsx +13 -21
  797. package/src/views/Theme.tsx +18 -80
  798. package/src/views/ThemeUpdate.tsx +88 -0
  799. package/types/config.d.ts.map +1 -1
  800. package/types/createComponent.d.ts.map +1 -1
  801. package/types/helpers/configVariables.d.ts +3 -0
  802. package/types/helpers/configVariables.d.ts.map +1 -0
  803. package/types/helpers/defaultAnimationDriver.d.ts.map +1 -1
  804. package/types/helpers/directStyle.d.ts +2 -23
  805. package/types/helpers/directStyle.d.ts.map +1 -1
  806. package/types/helpers/getCSSStylesAtomic.d.ts.map +1 -1
  807. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  808. package/types/helpers/grammarConfig.d.ts +9 -0
  809. package/types/helpers/grammarConfig.d.ts.map +1 -1
  810. package/types/helpers/mergeVariants.d.ts.map +1 -1
  811. package/types/helpers/nativeTransitionTarget.d.ts +1 -1
  812. package/types/helpers/nativeTransitionTarget.d.ts.map +1 -1
  813. package/types/helpers/nativeTransitionTarget.native.d.ts +1 -1
  814. package/types/helpers/nativeTransitionTarget.native.d.ts.map +1 -1
  815. package/types/helpers/propMapper.d.ts.map +1 -1
  816. package/types/helpers/themeUpdateState.d.ts +23 -0
  817. package/types/helpers/themeUpdateState.d.ts.map +1 -0
  818. package/types/helpers/variableValue.d.ts +4 -0
  819. package/types/helpers/variableValue.d.ts.map +1 -0
  820. package/types/helpers/variables.d.ts +7 -24
  821. package/types/helpers/variables.d.ts.map +1 -1
  822. package/types/helpers/warnOnce.d.ts +1 -1
  823. package/types/hooks/getThemeProxied.d.ts.map +1 -1
  824. package/types/hooks/useAnimationDriver.d.ts.map +1 -1
  825. package/types/hooks/useComponentState.d.ts.map +1 -1
  826. package/types/hooks/usePortalThemeState.d.ts +5 -5
  827. package/types/hooks/usePortalThemeState.d.ts.map +1 -1
  828. package/types/hooks/useProps.d.ts.map +1 -1
  829. package/types/hooks/useThemeState.d.ts +2 -5
  830. package/types/hooks/useThemeState.d.ts.map +1 -1
  831. package/types/index.d.ts +0 -1
  832. package/types/index.d.ts.map +1 -1
  833. package/types/internal-runtime.d.ts.map +1 -1
  834. package/types/theme-update.d.ts +3 -0
  835. package/types/theme-update.d.ts.map +1 -0
  836. package/types/types.d.ts +6 -17
  837. package/types/types.d.ts.map +1 -1
  838. package/types/views/Theme.d.ts +2 -15
  839. package/types/views/Theme.d.ts.map +1 -1
  840. package/types/views/ThemeUpdate.d.ts +15 -0
  841. package/types/views/ThemeUpdate.d.ts.map +1 -0
@@ -1,4 +1,3 @@
1
-
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -28,9 +27,9 @@ __export(directStyle_exports, {
28
27
  contributeVariantClauseValue: () => contributeVariantClauseValue,
29
28
  directStyleSignature: () => directStyleSignature,
30
29
  flushDirectStyles: () => flushDirectStyles,
31
- getCondition: () => getCondition,
32
30
  getDirectDynamicThemeAccess: () => getDirectDynamicThemeAccess,
33
- platformMatches: () => platformMatches
31
+ platformMatches: () => platformMatches,
32
+ resolveClauseChain: () => resolveClauseChain
34
33
  });
35
34
  module.exports = __toCommonJS(directStyle_exports);
36
35
  var import_constants = require("@tamagui/constants");
@@ -41,9 +40,9 @@ var import_useMedia = require("../hooks/useMedia.cjs");
41
40
  var import_warnOnce = require("./warnOnce.cjs");
42
41
  var import_expandStyle = require("./expandStyle.cjs");
43
42
  var import_getCSSStylesAtomic = require("./getCSSStylesAtomic.cjs");
43
+ var import_grammarConfig = require("./grammarConfig.cjs");
44
44
  var import_getDynamicVal = require("./getDynamicVal.cjs");
45
45
  var import_insertStyleRule = require("./insertStyleRule.cjs");
46
- var import_mediaObjectToString = require("./mediaObjectToString.cjs");
47
46
  var import_normalizeColor = require("./normalizeColor.cjs");
48
47
  require("./parseNativeStyle.native.cjs");
49
48
  require("./parseNativeTransform.native.cjs");
@@ -53,18 +52,54 @@ var import_resolveSafeArea = require("./resolveSafeArea.cjs");
53
52
  var import_resolveVariableValue = require("./resolveVariableValue.cjs");
54
53
  var import_themeRef = require("./themeRef.cjs");
55
54
  var import_transformsToString = require("./transformsToString.cjs");
56
- const stateSelectors = {
57
- hover: ":hover",
58
- press: ":active",
59
- focus: ":focus",
60
- "focus-visible": ":focus-visible",
61
- "focus-within": ":focus-within",
62
- disabled: "[aria-disabled]",
63
- open: "[data-state=\"open\"]",
64
- checked: "[data-state=\"checked\"]",
65
- highlighted: "[data-highlighted]",
66
- selected: "[data-state=\"active\"]",
67
- invalid: "[aria-invalid=\"true\"]"
55
+ const directStyleHandler = {
56
+ segment(state, start, end, isBase, valid, source, chainStart, chainEnd, chainValid, chainCount, _result, failure, failureIndex, property, merge, originalValue, contextOnly) {
57
+ if (isBase) {
58
+ if (start === end) return;
59
+ if (!valid) {
60
+ if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, source, failure === "invalid-character" ? `"${source[failureIndex]}" would end the declaration or rule` : failure === "unterminated-string" ? "an unterminated string" : failure === "unterminated-comment" ? "an unterminated \"/*\" comment" : failure === "stray-comment-close" ? "a stray \"*/\"" : "an unterminated \"(\"");
61
+ return;
62
+ }
63
+ const value = source.slice(start, end);
64
+ emitValue(state, property, value, 0, "", void 0, "", "", merge, value, contextOnly);
65
+ return 5;
66
+ }
67
+ if (!chainValid) {
68
+ if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, source, failure === "invalid-character" ? `"${source[failureIndex]}" would end the declaration or rule` : failure === "unterminated-string" ? "an unterminated string" : failure === "unterminated-comment" ? "an unterminated \"/*\" comment" : failure === "stray-comment-close" ? "a stray \"*/\"" : "an unterminated \"(\"");
69
+ return;
70
+ }
71
+ if (start === end) {
72
+ if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, source, "a conditional clause has no value");
73
+ return;
74
+ }
75
+ if (property === "aspectRatio" && chainCount === 1) {
76
+ const left = Number(source.slice(chainStart, chainEnd));
77
+ const right = Number(source.slice(start, end));
78
+ if (chainStart < chainEnd && Number.isFinite(left) && left > 0 && Number.isFinite(right) && right > 0) return 12;
79
+ }
80
+ const condition = resolveClauseChain(state, source, chainStart, chainEnd, property, void 0, valid ? merge : void 0, void 0, contextOnly, start, end, 1);
81
+ if (!condition) return;
82
+ if (!valid) {
83
+ if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, source, failure === "invalid-character" ? `"${source[failureIndex]}" would end the declaration or rule` : failure === "unterminated-string" ? "an unterminated string" : failure === "unterminated-comment" ? "an unterminated \"/*\" comment" : failure === "stray-comment-close" ? "a stray \"*/\"" : "an unterminated \"(\"");
84
+ return;
85
+ }
86
+ return 4 | (condition & 12 ? 2 : 0);
87
+ },
88
+ chain() {
89
+ return true;
90
+ },
91
+ end(state, source, result, lastPayloadStart, chainCount, property, merge, originalValue, contextOnly) {
92
+ let hasBase = !!(result & 1);
93
+ if (result & 8 && chainCount === 1) {
94
+ emitValue(state, property, source, 0, "", void 0, "", "", merge, originalValue ?? source, contextOnly);
95
+ hasBase = true;
96
+ }
97
+ if (process.env.NODE_ENV === "development" && !hasBase && result & 4 && (property in import_helpers.tokenCategories.color || property in import_tokenCategories.tokenCategoryByProperty) && splitComponents(source.slice(lastPayloadStart)).length > 1) (0, import_warnOnce.warnOnce)(`${property}="${source}" has multiple values after its first conditional. Write the base value before the first conditional.`);
98
+ if ((!import_constants.isWeb || !state.flatShouldDoClasses) && result & 2 && !hasBase) {
99
+ const value = property === "opacity" ? 1 : property === "scale" || property === "scaleX" || property === "scaleY" ? 1 : property === "rotate" ? "0deg" : property === "x" || property === "y" ? 0 : null;
100
+ if (value !== null) emitValue(state, property, value, 0, "", void 0, "", "", merge, value, contextOnly);
101
+ }
102
+ }
68
103
  };
69
104
  const legacyTransformParts = /* @__PURE__ */ new Set([
70
105
  "matrix",
@@ -163,38 +198,6 @@ const borderStyleDefaults = {
163
198
  borderBottomWidth: "borderBottomStyle",
164
199
  borderLeftWidth: "borderLeftStyle"
165
200
  };
166
- const mediaQueries = /* @__PURE__ */ new WeakMap();
167
- const clausePrecedenceOrders = /* @__PURE__ */ new WeakMap();
168
- function queryFor(state, name) {
169
- let queries = mediaQueries.get(state.conf);
170
- if (!queries) {
171
- queries = {};
172
- const media = state.conf.media || {};
173
- for (const key in media) queries[key] = (0, import_mediaObjectToString.mediaObjectToString)(media[key]);
174
- mediaQueries.set(state.conf, queries);
175
- }
176
- return queries[name];
177
- }
178
- function precedenceOrderFor(state) {
179
- let order = clausePrecedenceOrders.get(state.conf);
180
- if (!order) {
181
- order = (0, import_runtime.createClausePrecedenceOrder)(state.conf.media);
182
- clausePrecedenceOrders.set(state.conf, order);
183
- }
184
- return order;
185
- }
186
- function stateIsActive(state, name) {
187
- const component = state.componentState;
188
- if (name === "hover") return !!component.hover;
189
- if (name === "press") return !!(component.press || component.pressIn);
190
- if (name === "focus") return !!component.focus;
191
- if (name === "focus-visible") return !!component.focusVisible;
192
- if (name === "focus-within") return !!component.focusWithin;
193
- if (name === "disabled") return !!(component.disabled || state.props.disabled);
194
- if (name === "enter") return !!component.unmounted;
195
- if (name === "exit") return !!state.styleProps.isExiting;
196
- return false;
197
- }
198
201
  function platformMatches(name) {
199
202
  if (name === "web") return import_constants.isWeb;
200
203
  if (name === "native") return !import_constants.isWeb;
@@ -204,115 +207,160 @@ function platformMatches(name) {
204
207
  if (name === "androidtv") return import_constants.isAndroid && import_constants.isTV;
205
208
  return name === "tv" && import_constants.isTV;
206
209
  }
207
- function groupCondition(state, modifier, out) {
208
- const slash = modifier.indexOf("/");
209
- const stateName = modifier.slice(6, slash === -1 ? void 0 : slash);
210
- const groupName = slash === -1 ? "true" : modifier.slice(slash + 1);
211
- const selector = stateSelectors[stateName];
212
- if (!selector || !groupName) return false;
213
- out.selector += `:where(.t_group_${groupName}${selector} *)`;
214
- if (stateName === "hover") (out.wrappers ||= []).push("@media (hover: hover)");
215
- const component = state.componentState.group?.[groupName];
216
- const context = state.flatGroupContext?.[groupName];
217
- out.active &&= !!(component?.pseudo ?? context?.state.pseudo)?.[stateName];
218
- (state.flatGroupKeys ||= /* @__PURE__ */ new Set()).add(groupName);
219
- return true;
220
- }
221
- function containerCondition(state, modifier, out) {
222
- const slash = modifier.indexOf("/");
223
- const size = modifier.slice(1, slash === -1 ? void 0 : slash);
224
- const name = slash === -1 ? null : modifier.slice(slash + 1);
225
- const query = queryFor(state, size);
226
- if (!query || name !== null && !name) return false;
227
- const key = name === null ? "@" : `@${name}`;
228
- (out.wrappers ||= []).push(name === null ? `@container ${query}` : `@container ${name} ${query}`);
229
- const component = state.componentState.group?.[key];
230
- const context = state.flatGroupContext?.[key];
231
- const active = component?.media?.[size];
232
- out.active &&= active === void 0 ? !!(context?.state.layout && (0, import_useMedia.mediaKeyMatch)(size, context.state.layout)) : !!active;
233
- (state.flatGroupKeys ||= /* @__PURE__ */ new Set()).add(key);
234
- (state.flatGroupMedia ||= /* @__PURE__ */ new Set()).add(size);
235
- return true;
236
- }
237
- function getCondition(state, source) {
238
- const out = {
239
- key: "",
240
- active: true,
241
- emit: true,
242
- selector: ""
243
- };
244
- const canonical = [];
245
- const kinds = [];
246
- const seenModifiers = /* @__PURE__ */ new Set();
210
+ function resolveClauseChain(state, source, start, end, property, raw, merge, originalValue, contextOnly = false, payloadStart = -1, payloadEnd = -1, warning = 0) {
211
+ const compiled = (0, import_grammarConfig.getConfigRevisionState)(state.conf);
212
+ const sourceStart = start;
213
+ let key = "";
214
+ let active = true;
215
+ let emit = true;
216
+ let selector = "";
217
+ let wrappers;
218
+ let theme = "";
219
+ let enter = false;
220
+ let exit = false;
221
+ let unsupportedState = "";
222
+ let platformRank = 0;
223
+ let depth = 0;
224
+ let categoryRank = 0;
225
+ let withinRank = 0;
247
226
  let selfStateSpecificity = 0;
248
- let start = 0;
249
- for (let index = 0; index <= source.length; index++) {
250
- if (index !== source.length && source.charCodeAt(index) !== 58) continue;
251
- let modifier = (0, import_runtime.canonicalClauseModifier)(source.slice(start, index));
227
+ for (let index = start; index <= end; index++) {
228
+ if (index !== end && source.charCodeAt(index) !== 58) continue;
229
+ let modifier = source.slice(start, index);
252
230
  start = index + 1;
253
- if (!modifier) return null;
254
- if (seenModifiers.has(modifier)) continue;
255
- seenModifiers.add(modifier);
256
- if (modifier.startsWith("group-")) {
257
- if (!groupCondition(state, modifier, out)) return null;
258
- canonical.push(modifier);
259
- kinds.push("group");
260
- continue;
261
- }
262
- if (modifier.charCodeAt(0) === 64) {
263
- if (!containerCondition(state, modifier, out)) return null;
264
- canonical.push(modifier);
265
- kinds.push("container");
266
- continue;
267
- }
268
- if (modifier in stateSelectors || modifier === "enter" || modifier === "exit") {
269
- canonical.push(modifier);
270
- kinds.push("state");
271
- selfStateSpecificity++;
272
- const selector = stateSelectors[modifier];
273
- if (!import_constants.isWeb && modifier !== "hover" && modifier !== "press" && modifier !== "focus" && modifier !== "focus-visible" && modifier !== "focus-within" && modifier !== "disabled" && modifier !== "enter" && modifier !== "exit") out.unsupportedState = modifier;
274
- if (modifier === "enter" || modifier === "exit") {
275
- const cls = modifier === "enter" ? ".t_unmounted" : ".t_exiting";
276
- out.selector += `:is(${cls}, ${cls} *)`;
277
- out[modifier] = true;
278
- } else if (selector) out.selector += selector;
279
- if (modifier === "hover") (out.wrappers ||= []).push("@media (hover: hover)");
280
- out.active &&= stateIsActive(state, modifier);
281
- if (modifier === "hover" || modifier === "press" || modifier === "focus" || modifier === "focus-visible" || modifier === "focus-within") (state.flatStateKeys ||= /* @__PURE__ */ new Set()).add(modifier);
282
- continue;
283
- }
284
- if (modifier in (state.conf.media || {})) {
285
- const query = queryFor(state, modifier);
286
- if (!query) return null;
287
- canonical.push(modifier);
288
- kinds.push("media");
289
- (out.wrappers ||= []).push(`@media ${query}`);
290
- out.active &&= !!state.flatMediaState?.[modifier];
291
- (state.flatMediaKeys ||= /* @__PURE__ */ new Set()).add(modifier);
292
- continue;
231
+ let code = compiled.modifiers[modifier];
232
+ let kind = code & 7;
233
+ let rank = code >> 3;
234
+ let stateSelector = "";
235
+ let conditionStateName = "";
236
+ let groupName = "";
237
+ let containerSize = "";
238
+ let containerName = "";
239
+ let containerQuery = "";
240
+ if (kind === import_runtime.modifierKindState) {
241
+ modifier = import_runtime.canonicalStateModifierNames[rank];
242
+ stateSelector = import_runtime.stateModifierSelectors[rank];
243
+ } else if (!kind && modifier.startsWith("group-")) {
244
+ const slash = modifier.indexOf("/");
245
+ const authoredState = modifier.slice(6, slash === -1 ? void 0 : slash);
246
+ code = compiled.modifiers[authoredState];
247
+ if ((code & 7) !== import_runtime.modifierKindState) kind = 0;
248
+ else {
249
+ rank = code >> 3;
250
+ groupName = slash === -1 ? "true" : modifier.slice(slash + 1);
251
+ if (rank === 6 || rank === 7 || slash !== -1 && !(0, import_runtime.isModifierName)(groupName, 0, groupName.length)) kind = 0;
252
+ else {
253
+ kind = 5;
254
+ const stateName = import_runtime.canonicalStateModifierNames[rank];
255
+ conditionStateName = stateName;
256
+ stateSelector = import_runtime.stateModifierSelectors[rank];
257
+ modifier = `group-${stateName}${slash === -1 ? "" : modifier.slice(slash)}`;
258
+ }
259
+ }
260
+ } else if (!kind && modifier.charCodeAt(0) === 64) {
261
+ const slash = modifier.indexOf("/");
262
+ containerSize = modifier.slice(1, slash === -1 ? void 0 : slash);
263
+ containerName = slash === -1 ? "" : modifier.slice(slash + 1);
264
+ if ((0, import_runtime.isModifierName)(containerSize, 0, containerSize.length) && (slash === -1 || (0, import_runtime.isModifierName)(containerName, 0, containerName.length)) && ((code = compiled.modifiers[containerSize]) & 7) === import_runtime.modifierKindMedia && (containerQuery = compiled.mediaQueries[containerSize]) && (0, import_runtime.isContainerSizeQueryText)(containerQuery)) {
265
+ kind = 6;
266
+ rank = code >> 3;
267
+ }
293
268
  }
294
- if ((0, import_runtime.isRootThemeName)(modifier) && modifier in (state.conf.themes || {})) {
295
- canonical.push(modifier);
296
- kinds.push("theme");
297
- out.theme = modifier;
298
- out.selector += `:where(.t_${modifier}, .t_${modifier} *)`;
299
- out.active &&= state.flatThemeName === modifier || state.flatThemeName?.startsWith(`${modifier}_`) === true;
300
- continue;
269
+ if (!kind) {
270
+ if (warning && process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, warning === 1 ? source : raw, `unknown modifier "${source.slice(sourceStart, end)}"`);
271
+ return 0;
272
+ }
273
+ let slotStart = 0;
274
+ let duplicate = false;
275
+ let inserted = !key;
276
+ if (!key) key = modifier;
277
+ else {
278
+ while (slotStart <= key.length) {
279
+ let slotEnd = key.indexOf(":", slotStart);
280
+ if (slotEnd === -1) slotEnd = key.length;
281
+ let order = 0;
282
+ const compareLength = Math.min(modifier.length, slotEnd - slotStart);
283
+ for (let offset = 0; offset < compareLength; offset++) {
284
+ order = modifier.charCodeAt(offset) - key.charCodeAt(slotStart + offset);
285
+ if (order) break;
286
+ }
287
+ order ||= modifier.length - (slotEnd - slotStart);
288
+ if (!order) {
289
+ duplicate = true;
290
+ break;
291
+ }
292
+ if (order < 0) {
293
+ key = `${key.slice(0, slotStart)}${modifier}:${key.slice(slotStart)}`;
294
+ inserted = true;
295
+ break;
296
+ }
297
+ if (slotEnd === key.length) break;
298
+ slotStart = slotEnd + 1;
299
+ }
300
+ if (!duplicate && !inserted) key += `:${modifier}`;
301
301
  }
302
- if (modifier === "web" || modifier === "native" || modifier === "ios" || modifier === "android" || modifier === "tv" || modifier === "tvos" || modifier === "androidtv") {
303
- canonical.push(modifier);
304
- kinds.push("platform");
302
+ if (duplicate) continue;
303
+ if (kind === import_runtime.modifierKindPlatform) {
304
+ if (rank > platformRank) platformRank = rank;
305
305
  const matches = platformMatches(modifier);
306
- out.active &&= matches;
307
- out.emit &&= matches;
306
+ active &&= matches;
307
+ emit &&= matches;
308
308
  continue;
309
309
  }
310
- return null;
311
- }
312
- out.key = (0, import_runtime.clauseConditionSetKey)(canonical);
313
- out.precedence = (0, import_runtime.getClausePrecedenceKeyFromKinds)(canonical, kinds, precedenceOrderFor(state));
314
- out.classRepetitions = (0, import_runtime.clauseSubjectClassRepetitions)(out.precedence, selfStateSpecificity);
315
- return out;
310
+ depth++;
311
+ const nextCategory = kind === import_runtime.modifierKindMedia ? 0 : kind === 6 ? 1 : kind === import_runtime.modifierKindTheme ? 2 : kind === 5 ? 3 : 4;
312
+ if (nextCategory > categoryRank) {
313
+ categoryRank = nextCategory;
314
+ withinRank = rank;
315
+ } else if (nextCategory === categoryRank && rank > withinRank) withinRank = rank;
316
+ if (kind === import_runtime.modifierKindMedia) {
317
+ const query = compiled.mediaQueries[modifier];
318
+ if (!query) return 0;
319
+ (wrappers ||= []).push(`@media ${query}`);
320
+ active &&= !!state.flatMediaState?.[modifier];
321
+ (state.flatMediaKeys ||= /* @__PURE__ */ new Set()).add(modifier);
322
+ } else if (kind === import_runtime.modifierKindTheme) {
323
+ theme = modifier;
324
+ selector += `:where(.t_${modifier}, .t_${modifier} *)`;
325
+ active &&= state.flatThemeName === modifier || state.flatThemeName?.startsWith(`${modifier}_`) === true;
326
+ } else if (kind === 5) {
327
+ selector += `:where(.t_group_${groupName}${stateSelector} *)`;
328
+ if (rank === 0) (wrappers ||= []).push("@media (hover: hover)");
329
+ const component = state.componentState.group?.[groupName];
330
+ const context = state.flatGroupContext?.[groupName];
331
+ active &&= !!(component?.pseudo ?? context?.state.pseudo)?.[conditionStateName];
332
+ (state.flatGroupKeys ||= /* @__PURE__ */ new Set()).add(groupName);
333
+ } else if (kind === 6) {
334
+ const groupKey = `@${containerName}`;
335
+ (wrappers ||= []).push(containerName ? `@container ${containerName} ${containerQuery}` : `@container ${containerQuery}`);
336
+ const component = state.componentState.group?.[groupKey];
337
+ const context = state.flatGroupContext?.[groupKey];
338
+ const match = component?.media?.[containerSize];
339
+ active &&= match === void 0 ? !!(context?.state.layout && (0, import_useMedia.mediaKeyMatch)(containerSize, context.state.layout)) : !!match;
340
+ (state.flatGroupKeys ||= /* @__PURE__ */ new Set()).add(groupKey);
341
+ (state.flatGroupMedia ||= /* @__PURE__ */ new Set()).add(containerSize);
342
+ } else {
343
+ selfStateSpecificity++;
344
+ if (!import_constants.isWeb && stateSelector[0] === "[" && modifier !== "disabled") unsupportedState = modifier;
345
+ if (stateSelector[0] === ".") {
346
+ selector += `:is(${stateSelector}, ${stateSelector} *)`;
347
+ if (rank === 6) enter = true;
348
+ else exit = true;
349
+ } else selector += stateSelector;
350
+ if (rank === 0) (wrappers ||= []).push("@media (hover: hover)");
351
+ const component = state.componentState;
352
+ active &&= rank === 0 ? !!component.hover : rank === 4 ? !!(component.press || component.pressIn) : rank === 2 ? !!component.focus : rank === 3 ? !!component.focusVisible : rank === 1 ? !!component.focusWithin : rank === 5 ? !!(component.disabled || state.props.disabled) : rank === 6 ? !!component.unmounted : rank === 7 ? !!state.styleProps.isExiting : false;
353
+ if (stateSelector[0] === ":") (state.flatStateKeys ||= /* @__PURE__ */ new Set()).add(modifier);
354
+ }
355
+ }
356
+ if (depth > 5) throw new Error(`a flat value clause supports at most 5 non-platform conditions; received ${depth} in "${source.slice(sourceStart, end)}:"`);
357
+ const condition = (platformRank << 26 | depth << 23 | categoryRank << 20 | withinRank) * 256 + selfStateSpecificity * 32 + 16 + (active ? 1 : 0) + (emit ? 2 : 0) + (enter ? 4 : 0) + (exit ? 8 : 0);
358
+ if (warning && unsupportedState && process.env.NODE_ENV === "development") (0, import_warnOnce.warnOnce)(`${property}: "${unsupportedState}:" has no native component-state source; dropping the clause`);
359
+ if (merge && property && condition & 2 && (condition & 1 || import_constants.isWeb && state.flatShouldDoClasses || warning === 1 && !import_constants.isWeb && theme && import_constants.supportsDynamicColorIOS && (0, import_getDynamicVal.isColorStyleKey)(property))) {
360
+ const value = payloadStart === -1 ? raw : source.slice(payloadStart, payloadEnd);
361
+ emitValue(state, property, value, condition, key, wrappers, selector, theme, merge, warning === 2 ? originalValue : originalValue ?? value, contextOnly);
362
+ }
363
+ return condition;
316
364
  }
317
365
  const tokenLookup = {
318
366
  value: void 0,
@@ -373,7 +421,7 @@ function configuredValue(state, property, raw) {
373
421
  opacity = amount;
374
422
  }
375
423
  }
376
- const safeArea = process.env.TAMAGUI_RUNTIME_SAFE_AREA === "disabled" ? void 0 : (0, import_resolveSafeAreaVariable.resolveSafeAreaVariable)(name);
424
+ const safeArea = (0, import_resolveSafeAreaVariable.resolveSafeAreaVariable)(name);
377
425
  if (safeArea !== void 0) {
378
426
  state.flatUsesSafeArea = true;
379
427
  return safeArea;
@@ -451,13 +499,13 @@ function normalizeTransitionNames(state, raw) {
451
499
  function directStyleSignature(property, value, conditionKey = "") {
452
500
  return `${property}${conditionKey}${String(value)}`;
453
501
  }
454
- function directAtomic(state, property, value, condition, isDefault = false) {
502
+ function directAtomic(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector, isDefault = false) {
455
503
  const atomics = state.flatAtomics ||= {};
456
504
  const atomicKey = property.startsWith("transition") ? "transition" : property;
457
505
  const existing = atomics[atomicKey];
458
- const contribution = directStyleSignature(property, value, condition?.key || "");
506
+ const contribution = directStyleSignature(property, value, conditionKey);
459
507
  const signature = existing ? existing.signature + contribution : contribution;
460
- const next = (0, import_getCSSStylesAtomic.getCSSStyleAtomic)(property, value, condition?.selector, condition?.wrappers, signature, true, atomicKey, condition?.classRepetitions);
508
+ const next = (0, import_getCSSStylesAtomic.getCSSStyleAtomic)(property, value, conditionSelector, conditionWrappers, signature, true, atomicKey, condition ? 1 + (Math.floor(condition / 256) >>> 23 & 7) + (Math.floor(condition / 256) >>> 26) * 6 - (condition >>> 5 & 7) : void 0);
461
509
  if (!next) return;
462
510
  const identifier = next[import_helpers.StyleObjectIdentifier];
463
511
  const nextRules = next[import_helpers.StyleObjectRules];
@@ -469,10 +517,10 @@ function directAtomic(state, property, value, condition, isDefault = false) {
469
517
  signature,
470
518
  styleObject: next
471
519
  };
472
- if (slotted) atomic.conditions = { [atomicKey === "transition" ? `${condition?.key || ""}\0${property}` : condition.key]: {
520
+ if (slotted) atomic.conditions = { [atomicKey === "transition" ? `${conditionKey}\0${property}` : conditionKey]: {
473
521
  count: nextRules.length,
474
522
  index: 0,
475
- precedence: condition?.precedence ?? 0,
523
+ precedence: condition ? Math.floor(condition / 256) : 0,
476
524
  default: isDefault
477
525
  } };
478
526
  atomics[atomicKey] = atomic;
@@ -495,7 +543,7 @@ function directAtomic(state, property, value, condition, isDefault = false) {
495
543
  for (let index = 0; index < rules.length; index++) rules[index] = rules[index].replaceAll(oldSelector, newSelector);
496
544
  }
497
545
  if (slotted) {
498
- const slot = atomicKey === "transition" ? `${condition?.key || ""}\0${property}` : condition.key;
546
+ const slot = atomicKey === "transition" ? `${conditionKey}\0${property}` : conditionKey;
499
547
  const previous = existing.conditions?.[slot];
500
548
  if (previous) {
501
549
  rules.splice(previous.index, previous.count);
@@ -505,7 +553,7 @@ function directAtomic(state, property, value, condition, isDefault = false) {
505
553
  }
506
554
  delete existing.conditions[slot];
507
555
  }
508
- const precedence = condition?.precedence ?? 0;
556
+ const precedence = condition ? Math.floor(condition / 256) : 0;
509
557
  let insertionIndex = rules.length;
510
558
  if (existing.conditions) {
511
559
  for (const key in existing.conditions) {
@@ -536,13 +584,13 @@ function directAtomic(state, property, value, condition, isDefault = false) {
536
584
  }
537
585
  state.classNames[atomicKey] = identifier;
538
586
  }
539
- function emitBorderStyleDefault(state, property, condition) {
587
+ function emitBorderStyleDefault(state, property, condition, conditionKey, conditionWrappers, conditionSelector) {
540
588
  if (!import_constants.isWeb || !state.flatShouldDoClasses || state.styleProps.noNormalize === false) return;
541
589
  const target = borderStyleDefaults[property];
542
590
  if (!target) return;
543
591
  const atomic = state.flatAtomics?.[target];
544
- if (atomic?.baseRules || state.classNames[target] && !atomic || condition && atomic?.conditions?.[condition.key]) return;
545
- directAtomic(state, target, "solid", condition, true);
592
+ if (atomic?.baseRules || state.classNames[target] && !atomic || condition && atomic?.conditions?.[conditionKey]) return;
593
+ directAtomic(state, target, "solid", condition, conditionKey, conditionWrappers, conditionSelector, true);
546
594
  }
547
595
  function flushDirectStyles(state, clear = false) {
548
596
  const direct = state;
@@ -561,21 +609,21 @@ function flushDirectStyles(state, clear = false) {
561
609
  function getDirectDynamicThemeAccess(state) {
562
610
  return state.flatDynamicThemeAccess;
563
611
  }
564
- function emitProperty(state, property, value, condition, merge, originalValue, contextOnly) {
612
+ function emitProperty(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly) {
565
613
  const direct = state;
566
- if (condition?.enter) (state.flatEnterKeys ||= /* @__PURE__ */ new Set()).add(property);
567
- if (condition?.exit) (state.flatExitKeys ||= /* @__PURE__ */ new Set()).add(property);
568
- if (!import_constants.isWeb && condition?.theme) {
614
+ if (condition & 4) (state.flatEnterKeys ||= /* @__PURE__ */ new Set()).add(property);
615
+ if (condition & 8) (state.flatExitKeys ||= /* @__PURE__ */ new Set()).add(property);
616
+ if (!import_constants.isWeb && conditionTheme) {
569
617
  if (import_constants.supportsDynamicColorIOS && (0, import_getDynamicVal.isColorStyleKey)(property)) {
570
618
  const schemes = (direct.flatDynamicColors ||= {})[property] ||= {};
571
- schemes[condition.theme] = typeof originalValue === "string" && /^[a-z]+$/i.test(originalValue) ? originalValue : value;
619
+ schemes[conditionTheme] = typeof originalValue === "string" && /^[a-z]+$/i.test(originalValue) ? originalValue : value;
572
620
  merge(state, property, { dynamic: { ...schemes } }, 1, false, originalValue);
573
621
  return;
574
622
  }
575
623
  direct.flatDynamicThemeAccess = true;
576
624
  }
577
625
  if (contextOnly) {
578
- if (!condition || condition.active) (state.overriddenContextProps ||= {})[property] = originalValue;
626
+ if (!condition || condition & 1) (state.overriddenContextProps ||= {})[property] = originalValue;
579
627
  return;
580
628
  }
581
629
  const shouldPromoteAnimatedStyle = import_constants.isWeb && !condition && !state.flatShouldDoClasses && !state.styleProps.noMergeStyle && state.styleProps.isAnimated && !state.animationDriver?.isReactNative && property in import_helpers.nonAnimatableStyleProps;
@@ -583,14 +631,15 @@ function emitProperty(state, property, value, condition, merge, originalValue, c
583
631
  if (!condition) {
584
632
  if (state.style) delete state.style[property];
585
633
  }
586
- directAtomic(state, property, value, condition);
634
+ directAtomic(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector);
587
635
  return;
588
636
  }
589
637
  if (condition) {
590
- if (!condition.active) return;
638
+ if (!(condition & 1)) return;
639
+ const precedence = Math.floor(condition / 256);
591
640
  const previous = direct.flatPrecedence?.[property];
592
- if (previous !== void 0 && condition.precedence < previous) return;
593
- (direct.flatPrecedence ||= {})[property] = condition.precedence;
641
+ if (previous !== void 0 && precedence < previous) return;
642
+ (direct.flatPrecedence ||= {})[property] = precedence;
594
643
  (state.flatActiveConditions ||= {})[property] = true;
595
644
  } else if (state.flatActiveConditions?.[property]) return;
596
645
  merge(state, property, value, 1, true, originalValue);
@@ -617,7 +666,7 @@ function splitComponents(value) {
617
666
  }
618
667
  return parts;
619
668
  }
620
- function emitBorder(state, property, raw, condition, merge, originalValue, contextOnly) {
669
+ function emitBorder(state, property, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly) {
621
670
  if (!import_constants.isWeb && (property === "borderBlock" || property === "borderInline")) {
622
671
  if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnOnce)(`RN has no logical border shorthand "${property}"; dropping it`);
623
672
  return;
@@ -633,15 +682,15 @@ function emitBorder(state, property, raw, condition, merge, originalValue, conte
633
682
  else color = part;
634
683
  }
635
684
  if (style === "none" && width === void 0) width = "0";
636
- if (width !== void 0) for (const target of targets.width) emitResolved(state, target, width, condition, merge, originalValue, contextOnly);
685
+ if (width !== void 0) for (const target of targets.width) emitResolved(state, target, width, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
637
686
  if (style !== void 0) {
638
687
  const styleTargets = !import_constants.isWeb && property === "border" ? ["borderStyle"] : targets.style;
639
- for (const target of styleTargets) emitProperty(state, target, style, condition, merge, originalValue, contextOnly);
688
+ for (const target of styleTargets) emitProperty(state, target, style, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
640
689
  }
641
- if (color !== void 0) for (const target of targets.color) emitResolved(state, target, color, condition, merge, originalValue, contextOnly);
690
+ if (color !== void 0) for (const target of targets.color) emitResolved(state, target, color, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
642
691
  }
643
- function emitTextDecoration(state, raw, condition, merge, originalValue, contextOnly) {
644
- for (const part of splitComponents(raw)) emitResolved(state, part === "solid" || part === "double" || part === "dotted" || part === "dashed" || part === "wavy" ? "textDecorationStyle" : part === "underline" || part === "overline" || part === "line-through" || part === "none" ? "textDecorationLine" : "textDecorationColor", part, condition, merge, originalValue, contextOnly);
692
+ function emitTextDecoration(state, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly) {
693
+ for (const part of splitComponents(raw)) emitResolved(state, part === "solid" || part === "double" || part === "dotted" || part === "dashed" || part === "wavy" ? "textDecorationStyle" : part === "underline" || part === "overline" || part === "line-through" || part === "none" ? "textDecorationLine" : "textDecorationColor", part, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
645
694
  }
646
695
  function addComposition(state, property) {
647
696
  if (state.classNames[property]) return;
@@ -656,12 +705,12 @@ function addComposition(state, property) {
656
705
  }
657
706
  state.classNames[property] = identifier;
658
707
  }
659
- function emitTransform(state, property, value, condition, merge, originalValue, contextOnly) {
708
+ function emitTransform(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly) {
660
709
  if (!import_constants.isWeb || !state.flatShouldDoClasses) {
661
710
  if (!import_constants.isWeb && property === "scale") {
662
- emitProperty(state, "scaleX", value, condition, merge, originalValue, contextOnly);
663
- emitProperty(state, "scaleY", value, condition, merge, originalValue, contextOnly);
664
- } else emitProperty(state, property, value, condition, merge, originalValue, contextOnly);
711
+ emitProperty(state, "scaleX", value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
712
+ emitProperty(state, "scaleY", value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
713
+ } else emitProperty(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
665
714
  return;
666
715
  }
667
716
  const targets = property === "scale" ? ["--t-scale-x", "--t-scale-y"] : [property === "x" ? "--t-x" : property === "y" ? "--t-y" : property === "scaleX" ? "--t-scale-x" : property === "scaleY" ? "--t-scale-y" : "rotate"];
@@ -671,19 +720,19 @@ function emitTransform(state, property, value, condition, merge, originalValue,
671
720
  if (target === "--t-x" || target === "--t-y") targetValue = `${targetValue}px`;
672
721
  else if (target === "rotate") targetValue = `${targetValue}deg`;
673
722
  }
674
- emitProperty(state, target, targetValue, condition, merge, originalValue, contextOnly);
723
+ emitProperty(state, target, targetValue, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
675
724
  if (target === "--t-x" || target === "--t-y") addComposition(state, "translate");
676
725
  else if (target.startsWith("--t-scale")) addComposition(state, "scale");
677
726
  }
678
727
  }
679
- function emitResolved(state, property, raw, condition, merge, originalValue, contextOnly) {
728
+ function emitResolved(state, property, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly) {
680
729
  let value = configuredValue(state, property, raw);
681
730
  if (value === raw && /[\s,(]/.test(raw)) value = resolveEmbeddedTokens(state, property, raw);
682
731
  if ((!import_constants.isWeb || !state.flatShouldDoClasses) && typeof value === "string") {
683
732
  if (/^-?(?:\d+\.?\d*|\.\d+)(?:px|dp)$/i.test(value)) value = Number.parseFloat(value);
684
733
  else if (value !== "" && Number.isFinite(Number(value))) value = Number(value);
685
734
  }
686
- emitProperty(state, property, value, condition, merge, originalValue, contextOnly);
735
+ emitProperty(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
687
736
  }
688
737
  function shadowUnit(part) {
689
738
  return typeof part === "number" ? `${part}px` : part || "0px";
@@ -698,7 +747,7 @@ function emitWebShadow(state, property, value, merge, originalValue, contextOnly
698
747
  const color = (0, import_normalizeColor.normalizeColor)(shadow.shadowColor, shadow.shadowOpacity ?? 1);
699
748
  if (!color) return;
700
749
  const next = `${shadowUnit(offset.width)} ${shadowUnit(offset.height)} ${shadowUnit(shadow.shadowRadius)} ${color}`;
701
- emitProperty(state, "boxShadow", state.flatBoxShadow ? `${state.flatBoxShadow}, ${next}` : next, null, merge, originalValue, contextOnly);
750
+ emitProperty(state, "boxShadow", state.flatBoxShadow ? `${state.flatBoxShadow}, ${next}` : next, 0, "", void 0, "", "", merge, originalValue, contextOnly);
702
751
  }
703
752
  function emitWebTextShadow(state, property, value, merge, originalValue, contextOnly) {
704
753
  const shadow = state.flatTextShadow ||= {};
@@ -708,12 +757,12 @@ function emitWebTextShadow(state, property, value, merge, originalValue, context
708
757
  height: 0
709
758
  };
710
759
  if (!shadow.textShadowColor) return;
711
- emitProperty(state, "textShadow", `${shadowUnit(offset.width)} ${shadowUnit(offset.height)} ${shadowUnit(shadow.textShadowRadius)} ${shadow.textShadowColor}`, null, merge, originalValue, contextOnly);
760
+ emitProperty(state, "textShadow", `${shadowUnit(offset.width)} ${shadowUnit(offset.height)} ${shadowUnit(shadow.textShadowRadius)} ${shadow.textShadowColor}`, 0, "", void 0, "", "", merge, originalValue, contextOnly);
712
761
  }
713
- function emitValue(state, property, raw, condition, merge, originalValue, contextOnly) {
762
+ function emitValue(state, property, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly) {
714
763
  if (typeof raw === "string") raw = raw.trim();
715
764
  if ((0, import_createVariable.isVariable)(raw)) raw = (0, import_resolveVariableValue.resolveVariableValue)(property, raw, import_constants.isWeb && !state.flatShouldDoClasses && state.styleProps.resolveValues === "auto" ? "value" : state.styleProps.resolveValues);
716
- emitBorderStyleDefault(state, property, condition);
765
+ emitBorderStyleDefault(state, property, condition, conditionKey, conditionWrappers, conditionSelector);
717
766
  if (typeof raw === "string" && (property === "transition" || property === "transitionProperty")) raw = normalizeTransitionNames(state, raw);
718
767
  if (legacyTransformParts.has(property)) {
719
768
  if (import_constants.isWeb && state.flatShouldDoClasses && state.classNames.transform) {
@@ -724,8 +773,8 @@ function emitValue(state, property, raw, condition, merge, originalValue, contex
724
773
  if (import_constants.isWeb && state.flatShouldDoClasses && !condition) {
725
774
  const direct = state;
726
775
  (direct.flatLegacyTransforms ||= {})[property] = value2;
727
- emitProperty(state, "transform", (0, import_transformsToString.transformsToString)(Object.keys(direct.flatLegacyTransforms).sort().map((key) => ({ [key]: direct.flatLegacyTransforms[key] }))), null, merge, originalValue, contextOnly);
728
- } else if (condition && import_constants.isWeb && state.flatShouldDoClasses) emitProperty(state, "transform", `${property}(${value2})`, condition, merge, originalValue, contextOnly);
776
+ emitProperty(state, "transform", (0, import_transformsToString.transformsToString)(Object.keys(direct.flatLegacyTransforms).sort().map((key) => ({ [key]: direct.flatLegacyTransforms[key] }))), 0, "", void 0, "", "", merge, originalValue, contextOnly);
777
+ } else if (condition && import_constants.isWeb && state.flatShouldDoClasses) emitProperty(state, "transform", `${property}(${value2})`, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
729
778
  else merge(state, property, value2, 1, false, originalValue);
730
779
  return;
731
780
  }
@@ -754,17 +803,17 @@ function emitValue(state, property, raw, condition, merge, originalValue, contex
754
803
  }
755
804
  if (import_constants.isWeb && state.flatShouldDoClasses && property === "transform" && Array.isArray(raw)) raw = (0, import_transformsToString.transformsToString)(raw);
756
805
  if (typeof raw === "string" && property in borderTargets) {
757
- emitBorder(state, property, raw, condition, merge, originalValue, contextOnly);
806
+ emitBorder(state, property, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
758
807
  return;
759
808
  }
760
809
  if (typeof raw === "string" && property === "textDecoration") {
761
- emitTextDecoration(state, raw, condition, merge, originalValue, contextOnly);
810
+ emitTextDecoration(state, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
762
811
  return;
763
812
  }
764
813
  if (typeof raw === "string" && property === "background") {
765
814
  const parts = splitComponents(raw);
766
815
  if (parts.length === 1 && !/^(?:url|image-set|.*gradient)\(/i.test(parts[0])) {
767
- emitResolved(state, "backgroundColor", parts[0], condition, merge, originalValue, contextOnly);
816
+ emitResolved(state, "backgroundColor", parts[0], condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
768
817
  return;
769
818
  }
770
819
  if (!import_constants.isWeb) {
@@ -777,18 +826,18 @@ function emitValue(state, property, raw, condition, merge, originalValue, contex
777
826
  if ((!import_constants.isWeb || !state.flatShouldDoClasses) && typeof value2 === "string" && !value2.startsWith(import_themeRef.THEME_REF_PREFIX)) {
778
827
  if (property === "rotate" && !/^-?(?:\d+\.?\d*|\.\d+)(?:deg|rad)$/i.test(value2)) {
779
828
  if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnOnce)(`native transform "${property}" cannot represent "${value2}"; dropping it`);
780
- if (condition?.active && state.flatTransforms) delete state.flatTransforms[property];
829
+ if (condition & 1 && state.flatTransforms) delete state.flatTransforms[property];
781
830
  return;
782
831
  }
783
832
  if (/^-?(?:\d+\.?\d*|\.\d+)(?:px|dp)$/i.test(value2)) value2 = Number.parseFloat(value2);
784
833
  else if (Number.isFinite(Number(value2))) value2 = Number(value2);
785
834
  }
786
- emitTransform(state, property, value2, condition, merge, originalValue, contextOnly);
835
+ emitTransform(state, property, value2, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
787
836
  return;
788
837
  }
789
838
  if (import_constants.isWeb && !state.flatShouldDoClasses && !condition && property === "borderRadius") {
790
- if (typeof raw === "string") emitResolved(state, property, raw, condition, merge, originalValue, contextOnly);
791
- else emitProperty(state, property, raw, condition, merge, originalValue, contextOnly);
839
+ if (typeof raw === "string") emitResolved(state, property, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
840
+ else emitProperty(state, property, raw, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
792
841
  return;
793
842
  }
794
843
  let value = raw;
@@ -804,7 +853,7 @@ function emitValue(state, property, raw, condition, merge, originalValue, contex
804
853
  if (!import_constants.isWeb && property === "fontVariant" && typeof value === "string") value = value.split(/[,\s]+/).filter(Boolean);
805
854
  const expanded = state.styleProps.noExpand ? null : (0, import_expandStyle.expandStyle)(property, value, state.conf.settings.styleCompat || "web");
806
855
  if (!expanded) {
807
- emitProperty(state, property, value, condition, merge, originalValue, contextOnly);
856
+ emitProperty(state, property, value, condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
808
857
  return;
809
858
  }
810
859
  if (typeof raw === "string" && expanded.length > 1) {
@@ -812,123 +861,48 @@ function emitValue(state, property, raw, condition, merge, originalValue, contex
812
861
  if (parts.length > 0 && parts.length <= (expanded.length === 4 ? 4 : 2)) {
813
862
  for (let index = 0; index < expanded.length; index++) {
814
863
  const partIndex = index === 0 || parts.length === 1 ? 0 : index === 1 || index === 3 && parts.length < 4 ? 1 : index === 2 && parts.length < 3 ? 0 : index;
815
- emitResolved(state, expanded[index][0], parts[partIndex], condition, merge, originalValue, contextOnly);
864
+ emitResolved(state, expanded[index][0], parts[partIndex], condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
816
865
  }
817
866
  return;
818
867
  }
819
868
  }
820
- for (let index = 0; index < expanded.length; index++) emitProperty(state, expanded[index][0], expanded[index][1], condition, merge, originalValue, contextOnly);
821
- }
822
- function emitSegment(state, property, source, start, end, condition, merge, originalValue, contextOnly) {
823
- while (start < end && source.charCodeAt(start) <= 32) start++;
824
- while (end > start && source.charCodeAt(end - 1) <= 32) end--;
825
- if (start === end) return false;
826
- if (!condition || condition.emit && (condition.active || import_constants.isWeb && state.flatShouldDoClasses || !import_constants.isWeb && condition.theme && import_constants.supportsDynamicColorIOS && (0, import_getDynamicVal.isColorStyleKey)(property))) {
827
- const value = source.slice(start, end);
828
- emitValue(state, property, value, condition, merge, value, contextOnly);
829
- }
830
- return true;
869
+ for (let index = 0; index < expanded.length; index++) emitProperty(state, expanded[index][0], expanded[index][1], condition, conditionKey, conditionWrappers, conditionSelector, conditionTheme, merge, originalValue, contextOnly);
831
870
  }
832
871
  function contributeStyleString(state, property, source, merge, originalValue, contextOnly = false) {
833
- if (process.env.TAMAGUI_RUNTIME_STYLE_VALUE_GRAMMAR === "disabled") {
834
- emitValue(state, property, source, null, merge, originalValue ?? source, contextOnly);
835
- return true;
836
- }
837
872
  if (import_constants.isWeb && source.indexOf(":") !== -1 && (webShadowParts.has(property) || legacyTransformParts.has(property))) {
838
873
  if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnOnce)(`conditional "${property}" needs its composite property; dropping it`);
839
874
  return true;
840
875
  }
841
876
  if (source.indexOf(":") === -1) {
842
- emitValue(state, property, source, null, merge, originalValue ?? source, contextOnly);
877
+ emitValue(state, property, source, 0, "", void 0, "", "", merge, originalValue ?? source, contextOnly);
843
878
  return true;
844
879
  }
845
- const conditions = [];
846
- const starts = [];
847
- const ends = [];
848
- let pending = null;
849
- let refused = "";
850
- let lifecycle = false;
851
- (0, import_runtime.scanFlatValue)(source, {
852
- segment(start, end, isBase) {
853
- if (start === end) {
854
- if (!isBase && !refused) refused = "a conditional clause has no value";
855
- return;
856
- }
857
- conditions.push(pending);
858
- starts.push(start);
859
- ends.push(end);
860
- },
861
- chain(start, end) {
862
- if (refused) return false;
863
- const next = getCondition(state, source.slice(start, end));
864
- if (!next) {
865
- refused = `unknown modifier "${source.slice(start, end)}"`;
866
- return false;
867
- }
868
- if (process.env.NODE_ENV === "development" && next.unsupportedState) (0, import_warnOnce.warnOnce)(`${property}: "${next.unsupportedState}:" has no native component-state source; dropping the clause`);
869
- pending = next;
870
- lifecycle ||= !!(next.enter || next.exit);
871
- return true;
872
- },
873
- error(code, index) {
874
- if (refused) return;
875
- refused = code === "invalid-character" ? `"${source[index]}" would end the declaration or rule` : code === "unterminated-string" ? "an unterminated string" : code === "unterminated-comment" ? "an unterminated \"/*\" comment" : code === "stray-comment-close" ? "a stray \"*/\"" : "an unterminated \"(\"";
876
- }
877
- });
878
- if (refused) {
879
- if (property === "aspectRatio") {
880
- emitValue(state, property, source, null, merge, originalValue ?? source, contextOnly);
881
- return true;
882
- }
883
- if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, source, refused);
884
- return true;
885
- }
886
- let hasBase = false;
887
- let lastPayloadStart = 0;
888
- for (let index = 0; index < conditions.length; index++) {
889
- const condition = conditions[index];
890
- lastPayloadStart = starts[index];
891
- const emitted = emitSegment(state, property, source, starts[index], ends[index], condition, merge, originalValue, contextOnly);
892
- if (!condition && emitted) hasBase = true;
893
- }
894
- if (process.env.NODE_ENV === "development" && !hasBase && conditions.length > 0 && (property in import_helpers.tokenCategories.color || property in import_tokenCategories.tokenCategoryByProperty) && splitComponents(source.slice(lastPayloadStart)).length > 1) (0, import_warnOnce.warnOnce)(`${property}="${source}" has multiple values after its first conditional. Write the base value before the first conditional.`);
895
- if ((!import_constants.isWeb || !state.flatShouldDoClasses) && lifecycle && !hasBase) {
896
- const value = property === "opacity" ? 1 : property === "scale" || property === "scaleX" || property === "scaleY" ? 1 : property === "rotate" ? "0deg" : property === "x" || property === "y" ? 0 : null;
897
- if (value !== null) emitValue(state, property, value, null, merge, value, contextOnly);
898
- }
880
+ (0, import_runtime.scanFlatValue)(source, directStyleHandler, state, property, merge, originalValue, contextOnly);
899
881
  return true;
900
882
  }
901
883
  function contributeFrontendValue(state, property, value, merge, contextOnly = false) {
902
- if (process.env.TAMAGUI_RUNTIME_STYLE_VALUE_GRAMMAR === "disabled") return false;
903
- if (value.base !== null) emitValue(state, property, value.base, null, merge, value.base, contextOnly);
884
+ if (value.base !== null) emitValue(state, property, value.base, 0, "", void 0, "", "", merge, value.base, contextOnly);
904
885
  for (const clause of value.clauses) {
905
- const condition = getCondition(state, clause.modifiers.join(":"));
906
- if (condition && condition.emit && (condition.active || import_constants.isWeb && state.flatShouldDoClasses)) emitValue(state, property, clause.payload, condition, merge, clause.payload, contextOnly);
886
+ const source = clause.modifiers.join(":");
887
+ resolveClauseChain(state, source, 0, source.length, property, clause.payload, merge, clause.payload, contextOnly);
907
888
  }
908
889
  return true;
909
890
  }
910
891
  function contributeVariantClauseValue(state, property, value, conditionSource, merge, originalValue, contextOnly = false) {
911
- if (process.env.TAMAGUI_RUNTIME_STYLE_VALUE_GRAMMAR === "disabled") return;
912
- const condition = getCondition(state, conditionSource);
913
- if (!condition) {
914
- if (process.env.NODE_ENV === "development") (0, import_warnOnce.warnRefusedValue)(property, value, `unknown modifier "${conditionSource}"`);
915
- return;
916
- }
917
- if (process.env.NODE_ENV === "development" && condition.unsupportedState) (0, import_warnOnce.warnOnce)(`${property}: "${condition.unsupportedState}:" has no native component-state source; dropping the clause`);
918
- if (condition.emit && (condition.active || import_constants.isWeb && state.flatShouldDoClasses)) emitValue(state, property, value, condition, merge, originalValue, contextOnly);
892
+ resolveClauseChain(state, conditionSource, 0, conditionSource.length, property, value, merge, originalValue, contextOnly, -1, -1, 2);
919
893
  }
920
894
  function contributeStyleValue(state, property, value, merge, originalValue, contextOnly = false) {
921
- if (process.env.TAMAGUI_RUNTIME_SAFE_AREA !== "disabled" && value === "safe" && (0, import_resolveSafeArea.isSafeAreaKey)(property)) {
895
+ if (value === "safe" && (0, import_resolveSafeArea.isSafeAreaKey)(property)) {
922
896
  const expanded = (0, import_resolveSafeArea.expandSafeAreaValue)(property);
923
897
  if (expanded) {
924
898
  state.flatUsesSafeArea = true;
925
- for (const [key, resolved] of expanded) emitValue(state, key, resolved, null, merge, originalValue ?? value, contextOnly);
899
+ for (const [key, resolved] of expanded) emitValue(state, key, resolved, 0, "", void 0, "", "", merge, originalValue ?? value, contextOnly);
926
900
  return true;
927
901
  }
928
902
  }
929
903
  if (typeof value === "string") return contributeStyleString(state, property, value, merge, originalValue, contextOnly);
930
904
  if (value != null) {
931
- emitValue(state, property, value, null, merge, originalValue ?? value, contextOnly);
905
+ emitValue(state, property, value, 0, "", void 0, "", "", merge, originalValue ?? value, contextOnly);
932
906
  return true;
933
907
  }
934
908
  return false;