@tamagui/web 1.74.3 → 1.74.5

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 (213) hide show
  1. package/dist/cjs/helpers/getAnimationDriver.js +28 -0
  2. package/dist/cjs/helpers/getAnimationDriver.js.map +6 -0
  3. package/dist/cjs/helpers/getAnimationDriver.native.js +29 -0
  4. package/dist/cjs/helpers/getAnimationDriver.native.js.map +6 -0
  5. package/dist/cjs/helpers/propMapper.js +24 -19
  6. package/dist/cjs/helpers/propMapper.js.map +1 -1
  7. package/dist/cjs/helpers/propMapper.native.js +24 -19
  8. package/dist/cjs/helpers/propMapper.native.js.map +1 -1
  9. package/dist/cjs/hooks/useAnimationDriver.js +26 -0
  10. package/dist/cjs/hooks/useAnimationDriver.js.map +6 -0
  11. package/dist/cjs/hooks/useAnimationDriver.native.js +27 -0
  12. package/dist/cjs/hooks/useAnimationDriver.native.js.map +6 -0
  13. package/dist/cjs/hooks/useStyle.js +47 -0
  14. package/dist/cjs/hooks/useStyle.js.map +6 -0
  15. package/dist/cjs/hooks/useStyle.native.js +48 -0
  16. package/dist/cjs/hooks/useStyle.native.js.map +6 -0
  17. package/dist/cjs/hooks/useTheme.js +1 -1
  18. package/dist/cjs/hooks/useTheme.js.map +1 -1
  19. package/dist/cjs/hooks/useTheme.native.js +2 -2
  20. package/dist/cjs/hooks/useTheme.native.js.map +1 -1
  21. package/dist/cjs/views/AnimationDriverProvider.js +26 -0
  22. package/dist/cjs/views/AnimationDriverProvider.js.map +6 -0
  23. package/dist/cjs/views/AnimationDriverProvider.native.js +27 -0
  24. package/dist/cjs/views/AnimationDriverProvider.native.js.map +6 -0
  25. package/dist/esm/Tamagui.native.js +36 -0
  26. package/dist/esm/Tamagui.native.js.map +6 -0
  27. package/dist/esm/config.native.js +62 -0
  28. package/dist/esm/config.native.js.map +6 -0
  29. package/dist/esm/constants/accessibilityDirectMap.native.js +59 -0
  30. package/dist/esm/constants/accessibilityDirectMap.native.js.map +6 -0
  31. package/dist/esm/constants/constants.native.js +9 -0
  32. package/dist/esm/constants/constants.native.js.map +6 -0
  33. package/dist/esm/constants/isDevTools.native.js +12 -0
  34. package/dist/esm/constants/isDevTools.native.js.map +6 -0
  35. package/dist/esm/contexts/ComponentContext.native.js +22 -0
  36. package/dist/esm/contexts/ComponentContext.native.js.map +6 -0
  37. package/dist/esm/createComponent.native.js +683 -0
  38. package/dist/esm/createComponent.native.js.map +6 -0
  39. package/dist/esm/createFont.native.js +38 -0
  40. package/dist/esm/createFont.native.js.map +6 -0
  41. package/dist/esm/createShorthands.native.js +7 -0
  42. package/dist/esm/createShorthands.native.js.map +6 -0
  43. package/dist/esm/createTamagui.native.js +181 -0
  44. package/dist/esm/createTamagui.native.js.map +6 -0
  45. package/dist/esm/createTheme.native.js +5 -0
  46. package/dist/esm/createTheme.native.js.map +6 -0
  47. package/dist/esm/createTokens.native.js +8 -0
  48. package/dist/esm/createTokens.native.js.map +6 -0
  49. package/dist/esm/createVariable.native.js +57 -0
  50. package/dist/esm/createVariable.native.js.map +6 -0
  51. package/dist/esm/createVariables.native.js +34 -0
  52. package/dist/esm/createVariables.native.js.map +6 -0
  53. package/dist/esm/defaultComponentState.native.js +19 -0
  54. package/dist/esm/defaultComponentState.native.js.map +6 -0
  55. package/dist/esm/helpers/ThemeManager.native.js +157 -0
  56. package/dist/esm/helpers/ThemeManager.native.js.map +6 -0
  57. package/dist/esm/helpers/ThemeManagerContext.native.js +6 -0
  58. package/dist/esm/helpers/ThemeManagerContext.native.js.map +6 -0
  59. package/dist/esm/helpers/createChainedWeakCache.native.js +33 -0
  60. package/dist/esm/helpers/createChainedWeakCache.native.js.map +6 -0
  61. package/dist/esm/helpers/createMediaStyle.native.js +52 -0
  62. package/dist/esm/helpers/createMediaStyle.native.js.map +6 -0
  63. package/dist/esm/helpers/createProxy.native.js +14 -0
  64. package/dist/esm/helpers/createProxy.native.js.map +6 -0
  65. package/dist/esm/helpers/createShallowSetState.native.js +14 -0
  66. package/dist/esm/helpers/createShallowSetState.native.js.map +6 -0
  67. package/dist/esm/helpers/createStyledContext.native.js +30 -0
  68. package/dist/esm/helpers/createStyledContext.native.js.map +6 -0
  69. package/dist/esm/helpers/defaultOffset.native.js +5 -0
  70. package/dist/esm/helpers/defaultOffset.native.js.map +6 -0
  71. package/dist/esm/helpers/expandStyle.native.js +43 -0
  72. package/dist/esm/helpers/expandStyle.native.js.map +6 -0
  73. package/dist/esm/helpers/expandStyles.native.js +37 -0
  74. package/dist/esm/helpers/expandStyles.native.js.map +6 -0
  75. package/dist/esm/helpers/getAnimationDriver.js +8 -0
  76. package/dist/esm/helpers/getAnimationDriver.js.map +6 -0
  77. package/dist/esm/helpers/getExpandedShorthands.native.js +14 -0
  78. package/dist/esm/helpers/getExpandedShorthands.native.js.map +6 -0
  79. package/dist/esm/helpers/getFontLanguage.native.js +5 -0
  80. package/dist/esm/helpers/getFontLanguage.native.js.map +6 -0
  81. package/dist/esm/helpers/getGroupPropParts.native.js +11 -0
  82. package/dist/esm/helpers/getGroupPropParts.native.js.map +6 -0
  83. package/dist/esm/helpers/getSplitStyles.native.js +539 -0
  84. package/dist/esm/helpers/getSplitStyles.native.js.map +6 -0
  85. package/dist/esm/helpers/getStylesAtomic.native.js +10 -0
  86. package/dist/esm/helpers/getStylesAtomic.native.js.map +6 -0
  87. package/dist/esm/helpers/getThemeCSSRules.native.js +7 -0
  88. package/dist/esm/helpers/getThemeCSSRules.native.js.map +6 -0
  89. package/dist/esm/helpers/getVariantExtras.native.js +51 -0
  90. package/dist/esm/helpers/getVariantExtras.native.js.map +6 -0
  91. package/dist/esm/helpers/insertStyleRule.native.js +195 -0
  92. package/dist/esm/helpers/insertStyleRule.native.js.map +6 -0
  93. package/dist/esm/helpers/isObj.native.js +5 -0
  94. package/dist/esm/helpers/isObj.native.js.map +6 -0
  95. package/dist/esm/helpers/isTamaguiComponent.native.js +8 -0
  96. package/dist/esm/helpers/isTamaguiComponent.native.js.map +6 -0
  97. package/dist/esm/helpers/isTamaguiElement.native.js +7 -0
  98. package/dist/esm/helpers/isTamaguiElement.native.js.map +6 -0
  99. package/dist/esm/helpers/matchMedia.native.js +20 -0
  100. package/dist/esm/helpers/matchMedia.native.js.map +6 -0
  101. package/dist/esm/helpers/mergeProps.native.js +28 -0
  102. package/dist/esm/helpers/mergeProps.native.js.map +6 -0
  103. package/dist/esm/helpers/mergeVariants.native.js +35 -0
  104. package/dist/esm/helpers/mergeVariants.native.js.map +6 -0
  105. package/dist/esm/helpers/normalizeColor.native.js +20 -0
  106. package/dist/esm/helpers/normalizeColor.native.js.map +6 -0
  107. package/dist/esm/helpers/normalizeShadow.native.js +28 -0
  108. package/dist/esm/helpers/normalizeShadow.native.js.map +6 -0
  109. package/dist/esm/helpers/normalizeStylePropKeys.native.js +16 -0
  110. package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +6 -0
  111. package/dist/esm/helpers/normalizeValueWithProperty.native.js +40 -0
  112. package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +6 -0
  113. package/dist/esm/helpers/objectIdentityKey.native.js +22 -0
  114. package/dist/esm/helpers/objectIdentityKey.native.js.map +6 -0
  115. package/dist/esm/helpers/propMapper.js +24 -19
  116. package/dist/esm/helpers/propMapper.js.map +1 -1
  117. package/dist/esm/helpers/propMapper.native.js +213 -0
  118. package/dist/esm/helpers/propMapper.native.js.map +6 -0
  119. package/dist/esm/helpers/proxyThemeToParents.native.js +40 -0
  120. package/dist/esm/helpers/proxyThemeToParents.native.js.map +6 -0
  121. package/dist/esm/helpers/proxyThemeVariables.native.js +16 -0
  122. package/dist/esm/helpers/proxyThemeVariables.native.js.map +6 -0
  123. package/dist/esm/helpers/pseudoDescriptors.native.js +37 -0
  124. package/dist/esm/helpers/pseudoDescriptors.native.js.map +6 -0
  125. package/dist/esm/helpers/registerCSSVariable.native.js +10 -0
  126. package/dist/esm/helpers/registerCSSVariable.native.js.map +6 -0
  127. package/dist/esm/helpers/themeable.native.js +29 -0
  128. package/dist/esm/helpers/themeable.native.js.map +6 -0
  129. package/dist/esm/helpers/themes.native.js +17 -0
  130. package/dist/esm/helpers/themes.native.js.map +6 -0
  131. package/dist/esm/helpers/timer.native.js +11 -0
  132. package/dist/esm/helpers/timer.native.js.map +6 -0
  133. package/dist/esm/helpers/withStaticProperties.native.js +20 -0
  134. package/dist/esm/helpers/withStaticProperties.native.js.map +6 -0
  135. package/dist/esm/hooks/getThemeUnwrapped.native.js +6 -0
  136. package/dist/esm/hooks/getThemeUnwrapped.native.js.map +6 -0
  137. package/dist/esm/hooks/useAnimationDriver.js +8 -0
  138. package/dist/esm/hooks/useAnimationDriver.js.map +6 -0
  139. package/dist/esm/hooks/useConfiguration.native.js +15 -0
  140. package/dist/esm/hooks/useConfiguration.native.js.map +6 -0
  141. package/dist/esm/hooks/useDisableSSR.native.js +15 -0
  142. package/dist/esm/hooks/useDisableSSR.native.js.map +6 -0
  143. package/dist/esm/hooks/useId.native.js +5 -0
  144. package/dist/esm/hooks/useId.native.js.map +6 -0
  145. package/dist/esm/hooks/useIsTouchDevice.native.js +7 -0
  146. package/dist/esm/hooks/useIsTouchDevice.native.js.map +6 -0
  147. package/dist/esm/hooks/useMedia.native.js +155 -0
  148. package/dist/esm/hooks/useMedia.native.js.map +6 -0
  149. package/dist/esm/hooks/useMemoDebug.native.js +10 -0
  150. package/dist/esm/hooks/useMemoDebug.native.js.map +6 -0
  151. package/dist/esm/hooks/useProps.native.js +49 -0
  152. package/dist/esm/hooks/useProps.native.js.map +6 -0
  153. package/dist/esm/hooks/useStyle.js +32 -0
  154. package/dist/esm/hooks/useStyle.js.map +6 -0
  155. package/dist/esm/hooks/useTheme.js +1 -1
  156. package/dist/esm/hooks/useTheme.js.map +1 -1
  157. package/dist/esm/hooks/useTheme.native.js +224 -0
  158. package/dist/esm/hooks/useTheme.native.js.map +6 -0
  159. package/dist/esm/hooks/useThemeName.native.js +17 -0
  160. package/dist/esm/hooks/useThemeName.native.js.map +6 -0
  161. package/dist/esm/index.native.js +90 -0
  162. package/dist/esm/index.native.js.map +6 -0
  163. package/dist/esm/inject-styles.native.js +12 -0
  164. package/dist/esm/inject-styles.native.js.map +6 -0
  165. package/dist/esm/insertFont.native.js +48 -0
  166. package/dist/esm/insertFont.native.js.map +6 -0
  167. package/dist/esm/interfaces/CSSColorNames.native.js +1 -0
  168. package/dist/esm/interfaces/CSSColorNames.native.js.map +6 -0
  169. package/dist/esm/interfaces/GetRef.native.js +1 -0
  170. package/dist/esm/interfaces/GetRef.native.js.map +6 -0
  171. package/dist/esm/interfaces/Role.native.js +1 -0
  172. package/dist/esm/interfaces/Role.native.js.map +6 -0
  173. package/dist/esm/setupHooks.native.js +9 -0
  174. package/dist/esm/setupHooks.native.js.map +6 -0
  175. package/dist/esm/setupReactNative.native.js +30 -0
  176. package/dist/esm/setupReactNative.native.js.map +6 -0
  177. package/dist/esm/styled.native.js +56 -0
  178. package/dist/esm/styled.native.js.map +6 -0
  179. package/dist/esm/types.native.js +1 -0
  180. package/dist/esm/types.native.js.map +6 -0
  181. package/dist/esm/views/AnimationDriverProvider.js +7 -0
  182. package/dist/esm/views/AnimationDriverProvider.js.map +6 -0
  183. package/dist/esm/views/Configuration.native.js +7 -0
  184. package/dist/esm/views/Configuration.native.js.map +6 -0
  185. package/dist/esm/views/FontLanguage.native.js +11 -0
  186. package/dist/esm/views/FontLanguage.native.js.map +6 -0
  187. package/dist/esm/views/FontLanguage.types.native.js +1 -0
  188. package/dist/esm/views/FontLanguage.types.native.js.map +6 -0
  189. package/dist/esm/views/Slot.native.js +40 -0
  190. package/dist/esm/views/Slot.native.js.map +6 -0
  191. package/dist/esm/views/Stack.native.js +12 -0
  192. package/dist/esm/views/Stack.native.js.map +6 -0
  193. package/dist/esm/views/TamaguiProvider.native.js +34 -0
  194. package/dist/esm/views/TamaguiProvider.native.js.map +6 -0
  195. package/dist/esm/views/Text.native.js +32 -0
  196. package/dist/esm/views/Text.native.js.map +6 -0
  197. package/dist/esm/views/Theme.native.js +85 -0
  198. package/dist/esm/views/Theme.native.js.map +6 -0
  199. package/dist/esm/views/ThemeDebug.native.js +11 -0
  200. package/dist/esm/views/ThemeDebug.native.js.map +6 -0
  201. package/dist/esm/views/ThemeProvider.native.js +26 -0
  202. package/dist/esm/views/ThemeProvider.native.js.map +6 -0
  203. package/dist/esm/views/View.native.js +13 -0
  204. package/dist/esm/views/View.native.js.map +6 -0
  205. package/package.json +9 -9
  206. package/src/helpers/propMapper.ts +36 -25
  207. package/src/hooks/useTheme.tsx +20 -3
  208. package/src/types.tsx +1 -1
  209. package/types/helpers/propMapper.d.ts.map +1 -1
  210. package/types/hooks/useTheme.d.ts +11 -1
  211. package/types/hooks/useTheme.d.ts.map +1 -1
  212. package/types/types.d.ts +1 -1
  213. package/types/types.d.ts.map +1 -1
@@ -0,0 +1,195 @@
1
+ import { isClient } from "@tamagui/constants";
2
+ import { createVariable } from "../createVariable";
3
+ const scannedCache = /* @__PURE__ */ new WeakMap(), totalSelectorsInserted = /* @__PURE__ */ new Map(), allSelectors = {}, allRules = {}, insertedTransforms = {}, getAllSelectors = () => allSelectors, getAllRules = () => Object.values(allRules), getAllTransforms = () => insertedTransforms;
4
+ function addTransform(identifier, css, rule) {
5
+ const s = css.indexOf("transform:");
6
+ if (s === -1) {
7
+ process.env.NODE_ENV === "development" && console.error(`\u274C Invalid transform, likely used deg/% improperly ${identifier}`);
8
+ return;
9
+ }
10
+ const startI = s + 10, endI = css.indexOf(";"), value = css.slice(startI, endI);
11
+ if (!insertedTransforms[identifier])
12
+ return insertedTransforms[identifier] = value, !0;
13
+ }
14
+ function listenForSheetChanges() {
15
+ if (!isClient)
16
+ return;
17
+ new MutationObserver((entries) => {
18
+ for (const entry of entries)
19
+ if (entry instanceof HTMLStyleElement && entry.sheet || entry instanceof HTMLLinkElement && entry.href.endsWith(".css")) {
20
+ scanAllSheets();
21
+ break;
22
+ }
23
+ }).observe(document.head, {
24
+ childList: !0
25
+ });
26
+ }
27
+ let lastScannedSheets = null;
28
+ function scanAllSheets(collectThemes = !1, tokens) {
29
+ if (process.env.NODE_ENV === "test" || !isClient)
30
+ return;
31
+ let themes;
32
+ const sheets = document.styleSheets || [], prev = lastScannedSheets, current = new Set(sheets);
33
+ if (document.styleSheets) {
34
+ for (const sheet2 of current)
35
+ if (sheet2) {
36
+ const out = updateSheetStyles(sheet2, !1, collectThemes, tokens);
37
+ out && (themes = out);
38
+ }
39
+ lastScannedSheets = current;
40
+ }
41
+ if (prev)
42
+ for (const sheet2 of prev)
43
+ sheet2 && !current.has(sheet2) && updateSheetStyles(sheet2, !0);
44
+ return themes;
45
+ }
46
+ function track(id, remove = !1) {
47
+ const next = (totalSelectorsInserted.get(id) || 0) + (remove ? -1 : 1);
48
+ return totalSelectorsInserted.set(id, next), next;
49
+ }
50
+ const bailAfterEnv = process.env.TAMAGUI_BAIL_AFTER_SCANNING_X_CSS_RULES, bailAfter = bailAfterEnv ? +bailAfterEnv : 250;
51
+ function updateSheetStyles(sheet2, remove = !1, collectThemes = !1, tokens) {
52
+ let rules;
53
+ try {
54
+ if (rules = sheet2.cssRules, !rules)
55
+ return;
56
+ } catch {
57
+ return;
58
+ }
59
+ const firstSelector = getTamaguiSelector(rules[0], collectThemes)?.[0], lastSelector = getTamaguiSelector(rules[rules.length - 1], collectThemes)?.[0], cacheKey = `${rules.length}${firstSelector}${lastSelector}`, lastScanned = scannedCache.get(sheet2);
60
+ if (!remove && lastScanned === cacheKey)
61
+ return;
62
+ const len = rules.length;
63
+ let fails = 0, dedupedThemes;
64
+ for (let i = 0; i < len; i++) {
65
+ const rule = rules[i];
66
+ if (!(rule instanceof CSSStyleRule))
67
+ continue;
68
+ const response = getTamaguiSelector(rule, collectThemes);
69
+ if (response)
70
+ fails = 0;
71
+ else {
72
+ if (fails++, fails > bailAfter)
73
+ return;
74
+ continue;
75
+ }
76
+ const [identifier, cssRule, isTheme] = response;
77
+ if (isTheme) {
78
+ const deduped = addThemesFromCSS(cssRule, tokens);
79
+ deduped && (dedupedThemes ||= [], dedupedThemes.push(deduped));
80
+ continue;
81
+ }
82
+ const total = track(identifier, remove);
83
+ remove ? total === 0 && delete allSelectors[identifier] : identifier in allSelectors || (!identifier.startsWith("_transform") || addTransform(identifier, cssRule.cssText, cssRule)) && (allSelectors[identifier] = cssRule.cssText);
84
+ }
85
+ return scannedCache.set(sheet2, cacheKey), dedupedThemes;
86
+ }
87
+ let colorVarToVal, rootComputedStyle = null;
88
+ function addThemesFromCSS(cssStyleRule, tokens) {
89
+ const selectors = cssStyleRule.selectorText.split(",");
90
+ if (!selectors.length)
91
+ return;
92
+ if (tokens && !colorVarToVal) {
93
+ colorVarToVal = {};
94
+ for (const key in tokens.color) {
95
+ const token = tokens.color[key];
96
+ colorVarToVal[token.name] = token.val;
97
+ }
98
+ }
99
+ const rules = (cssStyleRule.cssText || "").slice(cssStyleRule.selectorText.length + 2, -1).trim().split(";"), values = {};
100
+ for (const rule of rules) {
101
+ const sepI = rule.indexOf(":");
102
+ if (sepI === -1)
103
+ continue;
104
+ const key = rule.slice(rule.indexOf("--") + 2, sepI), val = rule.slice(sepI + 2);
105
+ let value;
106
+ if (val[3] === "(") {
107
+ const varName = val.slice(6, -1), tokenVal = colorVarToVal[varName];
108
+ tokenVal ? value = tokenVal : (rootComputedStyle ||= getComputedStyle(document.body), value = rootComputedStyle.getPropertyValue("--" + varName));
109
+ } else
110
+ value = val;
111
+ values[key] = createVariable(
112
+ {
113
+ key,
114
+ name: key,
115
+ val: value
116
+ },
117
+ !0
118
+ );
119
+ }
120
+ const dedupedEntry = {
121
+ names: [],
122
+ theme: values
123
+ };
124
+ for (const selector of selectors) {
125
+ let scheme = selector.includes("t_dark") ? "dark" : selector.includes("t_light") ? "light" : "", name = selector.slice(selector.lastIndexOf(".t_") + 3);
126
+ name.startsWith(scheme) && (name = name.slice(scheme.length + 1)), scheme === name && (scheme = "");
127
+ const themeName = `${scheme}${scheme && name ? "_" : ""}${name}`;
128
+ dedupedEntry.names.includes(themeName) || dedupedEntry.names.push(themeName);
129
+ }
130
+ return dedupedEntry;
131
+ }
132
+ function getTamaguiSelector(rule, collectThemes = !1) {
133
+ if (rule instanceof CSSStyleRule) {
134
+ const text = rule.selectorText;
135
+ if (text[0] === ":" && text[1] === "r") {
136
+ if (text.startsWith(":root ._"))
137
+ return [getIdentifierFromTamaguiSelector(text), rule];
138
+ if (collectThemes && (text.startsWith(":root.t_") || text.startsWith(":root .t_")))
139
+ return [
140
+ text.slice(0, 20),
141
+ // just used as uid
142
+ rule,
143
+ !0
144
+ ];
145
+ }
146
+ } else if (rule instanceof CSSMediaRule)
147
+ return rule.cssRules.length > 1 ? void 0 : getTamaguiSelector(rule.cssRules[0]);
148
+ }
149
+ const getIdentifierFromTamaguiSelector = (selector) => {
150
+ let res = selector.slice(7);
151
+ return selector.includes(":") ? res.replace(/:[a-z]+$/, "") : res;
152
+ }, sheet = isClient ? document.head.appendChild(document.createElement("style")).sheet : null;
153
+ function updateRules(identifier, rules) {
154
+ return identifier in allRules ? !1 : (allRules[identifier] = rules.join(" "), identifier.startsWith("_transform") ? addTransform(identifier, rules[0]) : !0);
155
+ }
156
+ function insertStyleRules(rulesToInsert) {
157
+ if (!(!rulesToInsert.length || !sheet)) {
158
+ for (const { identifier, rules } of rulesToInsert)
159
+ if (shouldInsertStyleRules(identifier)) {
160
+ allSelectors[identifier] = rules.join(`
161
+ `), track(identifier), updateRules(identifier, rules);
162
+ for (const rule of rules)
163
+ if (process.env.NODE_ENV === "production")
164
+ sheet.insertRule(rule, sheet.cssRules.length);
165
+ else
166
+ try {
167
+ sheet.insertRule(rule, sheet.cssRules.length);
168
+ } catch (err) {
169
+ console.groupCollapsed(
170
+ `Error inserting rule into CSSStyleSheet: ${String(err)}`
171
+ ), console.log({ rule, rulesToInsert }), console.trace(), console.groupEnd();
172
+ }
173
+ }
174
+ }
175
+ }
176
+ function shouldInsertStyleRules(identifier) {
177
+ if (process.env.IS_STATIC === "is_static")
178
+ return !0;
179
+ const total = totalSelectorsInserted.get(identifier);
180
+ return process.env.NODE_ENV === "development" && totalSelectorsInserted.size > +(process.env.TAMAGUI_STYLE_INSERTION_WARNING_LIMIT || 5e4) && console.warn(
181
+ 'Warning: inserting many CSS rules, you may be animating something and generating many CSS insertions, which can degrade performance. Instead, try using the "disableClassName" property on elements that change styles often. To disable this warning set TAMAGUI_STYLE_INSERTION_WARNING_LIMIT from 50000 to something higher'
182
+ ), total === void 0 || total < 2;
183
+ }
184
+ export {
185
+ getAllRules,
186
+ getAllSelectors,
187
+ getAllTransforms,
188
+ insertStyleRules,
189
+ insertedTransforms,
190
+ listenForSheetChanges,
191
+ scanAllSheets,
192
+ shouldInsertStyleRules,
193
+ updateRules
194
+ };
195
+ //# sourceMappingURL=insertStyleRule.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/insertStyleRule.tsx"],
4
+ "mappings": "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",
5
+ "names": ["sheet"]
6
+ }
@@ -0,0 +1,5 @@
1
+ const isObj = (x) => x && !Array.isArray(x) && typeof x == "object";
2
+ export {
3
+ isObj
4
+ };
5
+ //# sourceMappingURL=isObj.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/isObj.ts"],
4
+ "mappings": "AAAO,MAAM,QAAQ,CAAC,MAAW,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,OAAO,KAAM;",
5
+ "names": []
6
+ }
@@ -0,0 +1,8 @@
1
+ function isTamaguiComponent(comp, name) {
2
+ const config = comp?.staticConfig;
3
+ return !!(config && (!name || name === config.componentName));
4
+ }
5
+ export {
6
+ isTamaguiComponent
7
+ };
8
+ //# sourceMappingURL=isTamaguiComponent.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/isTamaguiComponent.tsx"],
4
+ "mappings": "AAEO,SAAS,mBACd,MACA,MAGA;AACA,QAAM,SAAS,MAAO;AACtB,SAAO,GAAQ,WAAW,SAAO,SAAS,OAAO;AACnD;",
5
+ "names": []
6
+ }
@@ -0,0 +1,7 @@
1
+ import { isValidElement } from "react";
2
+ import { isTamaguiComponent } from "./isTamaguiComponent";
3
+ const isTamaguiElement = (child, name) => isValidElement(child) && isTamaguiComponent(child.type, name);
4
+ export {
5
+ isTamaguiElement
6
+ };
7
+ //# sourceMappingURL=isTamaguiElement.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/isTamaguiElement.tsx"],
4
+ "mappings": "AAAA,SAAS,sBAAsB;AAG/B,SAAS,0BAA0B;AAE5B,MAAM,mBAAmB,CAC9B,OACA,SAEO,eAAe,KAAK,KAAK,mBAAmB,MAAM,MAAM,IAAI;",
5
+ "names": []
6
+ }
@@ -0,0 +1,20 @@
1
+ let matchMediaImpl = matchMediaFallback;
2
+ const matchMedia = (...args) => matchMediaImpl(...args);
3
+ function matchMediaFallback(query) {
4
+ return process.env.NODE_ENV === "development" && console.warn("warning: matchMedia implementation is not provided."), {
5
+ match: (a, b) => !1,
6
+ addListener: () => {
7
+ },
8
+ removeListener: () => {
9
+ },
10
+ matches: !1
11
+ };
12
+ }
13
+ function setupMatchMedia(_) {
14
+ matchMediaImpl = _, globalThis.matchMedia = _;
15
+ }
16
+ export {
17
+ matchMedia,
18
+ setupMatchMedia
19
+ };
20
+ //# sourceMappingURL=matchMedia.native.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/matchMedia.native.ts"],
4
+ "mappings": "AAEA,IAAI,iBAA6B;AAE1B,MAAM,aAAyB,IAAI,SAAS,eAAe,GAAG,IAAI;AAEzE,SAAS,mBAAmB,OAA+B;AACzD,SAAI,QAAQ,IAAI,aAAa,iBAC3B,QAAQ,KAAK,qDAAqD,GAE7D;AAAA,IACL,OAAO,CAAC,GAAG,MAAM;AAAA,IACjB,aAAa,MAAM;AAAA,IAAC;AAAA,IACpB,gBAAgB,MAAM;AAAA,IAAC;AAAA,IACvB,SAAS;AAAA,EACX;AACF;AAEO,SAAS,gBAAgB,GAAe;AAC7C,mBAAiB,GAEjB,WAAW,aAAgB;AAC7B;",
5
+ "names": []
6
+ }
@@ -0,0 +1,28 @@
1
+ import { pseudoDescriptors } from "./pseudoDescriptors";
2
+ const mergeProps = (a, b, inverseShorthands) => {
3
+ const out = {};
4
+ for (const key in a)
5
+ mergeProp(out, a, b, key, inverseShorthands);
6
+ if (b)
7
+ for (const key in b)
8
+ mergeProp(out, b, void 0, key, inverseShorthands);
9
+ return out;
10
+ };
11
+ function mergeProp(out, a, b, key, inverseShorthands) {
12
+ const shorthand = inverseShorthands?.[key] || null;
13
+ if (b && (key in b || shorthand && shorthand in b))
14
+ return;
15
+ const val = a[key];
16
+ if (key in pseudoDescriptors) {
17
+ out[key] = {
18
+ ...out[key],
19
+ ...val
20
+ };
21
+ return;
22
+ }
23
+ out[shorthand || key] = val;
24
+ }
25
+ export {
26
+ mergeProps
27
+ };
28
+ //# sourceMappingURL=mergeProps.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/mergeProps.ts"],
4
+ "mappings": "AAcA,SAAS,yBAAyB;AAI3B,MAAM,aAAa,CAAC,GAAW,GAAY,sBAAkC;AAClF,QAAM,MAAiB,CAAC;AACxB,aAAW,OAAO;AAChB,cAAU,KAAK,GAAG,GAAG,KAAK,iBAAiB;AAE7C,MAAI;AACF,eAAW,OAAO;AAChB,gBAAU,KAAK,GAAG,QAAW,KAAK,iBAAiB;AAGvD,SAAO;AACT;AAEA,SAAS,UACP,KACA,GACA,GACA,KACA,mBACA;AACA,QAAM,YAAY,oBAAoB,GAAG,KAAK;AAC9C,MAAI,MAAM,OAAO,KAAM,aAAa,aAAa;AAC/C;AAEF,QAAM,MAAM,EAAE,GAAG;AACjB,MAAI,OAAO,mBAAmB;AAC5B,QAAI,GAAG,IAAI;AAAA,MACT,GAAG,IAAI,GAAG;AAAA,MACV,GAAG;AAAA,IACL;AACA;AAAA,EACF;AACA,MAAI,aAAa,GAAG,IAAI;AAC1B;",
5
+ "names": []
6
+ }
@@ -0,0 +1,35 @@
1
+ const mergeVariants = (parentVariants, ourVariants) => {
2
+ const variants = {};
3
+ for (const key in ourVariants) {
4
+ const parentVariant = parentVariants?.[key], ourVariant = ourVariants[key];
5
+ if (!parentVariant || typeof ourVariant == "function") {
6
+ variants[key] = ourVariant;
7
+ continue;
8
+ }
9
+ if (parentVariant && !ourVariant) {
10
+ variants[key] = parentVariant[key];
11
+ continue;
12
+ }
13
+ variants[key] = {};
14
+ for (const subKey in ourVariant) {
15
+ const val = ourVariant[subKey], parentVal = parentVariant?.[subKey];
16
+ typeof val == "function" || !parentVal || typeof parentVal == "function" ? variants[key][subKey] = val : variants[key][subKey] = {
17
+ // keep order
18
+ ...parentVal,
19
+ ...val
20
+ };
21
+ }
22
+ parentVariant && (variants[key] = {
23
+ ...parentVariant,
24
+ ...variants[key]
25
+ });
26
+ }
27
+ return {
28
+ ...parentVariants,
29
+ ...variants
30
+ };
31
+ };
32
+ export {
33
+ mergeVariants
34
+ };
35
+ //# sourceMappingURL=mergeVariants.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/mergeVariants.ts"],
4
+ "mappings": "AAKO,MAAM,gBAAgB,CAC3B,gBACA,gBACG;AACH,QAAM,WAAW,CAAC;AAElB,aAAW,OAAO,aAAa;AAC7B,UAAM,gBAAgB,iBAAiB,GAAG,GACpC,aAAa,YAAY,GAAG;AAGlC,QAAI,CAAC,iBAAiB,OAAO,cAAe,YAAY;AACtD,eAAS,GAAG,IAAI;AAChB;AAAA,IACF;AAGA,QAAI,iBAAiB,CAAC,YAAY;AAChC,eAAS,GAAG,IAAI,cAAc,GAAG;AACjC;AAAA,IACF;AAEA,aAAS,GAAG,IAAI,CAAC;AAEjB,eAAW,UAAU,YAAY;AAC/B,YAAM,MAAM,WAAW,MAAM,GACvB,YAAY,gBAAgB,MAAM;AACxC,MAAI,OAAO,OAAQ,cAER,CAAC,aAAa,OAAO,aAAc,aAD5C,SAAS,GAAG,EAAE,MAAM,IAAI,MAIxB,SAAS,GAAG,EAAE,MAAM,IAAI;AAAA;AAAA,QAEtB,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,IAEJ;AAGA,IAAI,kBACF,SAAS,GAAG,IAAI;AAAA,MACd,GAAG;AAAA,MACH,GAAG,SAAS,GAAG;AAAA,IACjB;AAAA,EAEJ;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,20 @@
1
+ import { isWeb } from "@tamagui/constants";
2
+ import { normalizeCSSColor, rgba } from "@tamagui/normalize-css-color";
3
+ import { rgba as rgba2 } from "@tamagui/normalize-css-color";
4
+ const normalizeColor = (color, opacity) => {
5
+ if (!color)
6
+ return;
7
+ if (color[0] === "$" || color[0] === "v" && color.startsWith("var(") || isWeb && opacity === 1)
8
+ return color;
9
+ const colorProcessed = normalizeCSSColor(color);
10
+ if (colorProcessed != null) {
11
+ const { r, g, b, a } = rgba(colorProcessed), alpha = (opacity ?? a ?? 1).toFixed(2);
12
+ return `rgba(${r},${g},${b},${alpha})`;
13
+ }
14
+ process.env.NODE_ENV === "development" && console.warn(`Unknown color value: ${color}`);
15
+ };
16
+ export {
17
+ normalizeColor,
18
+ rgba2 as rgba
19
+ };
20
+ //# sourceMappingURL=normalizeColor.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/normalizeColor.ts"],
4
+ "mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,mBAAmB,YAAY;AAExC,SAAS,QAAAA,aAAY;AAEd,MAAM,iBAAiB,CAAC,OAAuB,YAAqB;AACzE,MAAI,CAAC;AAAO;AAIZ,MAHI,MAAM,CAAC,MAAM,OAAQ,MAAM,CAAC,MAAM,OAAO,MAAM,WAAW,MAAM,KAGhE,SAAS,YAAY;AACvB,WAAO;AAET,QAAM,iBAAiB,kBAAkB,KAAK;AAC9C,MAAI,kBAAkB,MAAM;AAC1B,UAAM,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,KAAK,cAAc,GAEpC,SADI,WAAW,KAAK,GACV,QAAQ,CAAC;AACzB,WAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK;AAAA,EACrC;AACA,EAAI,QAAQ,IAAI,aAAa,iBAC3B,QAAQ,KAAK,wBAAwB,KAAK,EAAE;AAQhD;",
5
+ "names": ["rgba"]
6
+ }
@@ -0,0 +1,28 @@
1
+ import { normalizeCSSColor } from "@tamagui/normalize-css-color";
2
+ import { defaultOffset } from "./defaultOffset";
3
+ import { rgba } from "./normalizeColor";
4
+ import { normalizeValueWithProperty } from "./normalizeValueWithProperty";
5
+ function normalizeShadow({
6
+ shadowColor,
7
+ shadowOffset,
8
+ shadowOpacity,
9
+ shadowRadius
10
+ }) {
11
+ const { height, width } = shadowOffset || defaultOffset, colorStr = String(shadowColor || "black"), val = normalizeCSSColor(colorStr);
12
+ if (typeof val != "number")
13
+ throw new Error(`invalid shadow color ${colorStr}`);
14
+ const { r, g, b, a } = rgba(val);
15
+ return {
16
+ shadowOffset: {
17
+ width: normalizeValueWithProperty(width || 0),
18
+ height: normalizeValueWithProperty(height || 0)
19
+ },
20
+ shadowRadius: normalizeValueWithProperty(shadowRadius || 0),
21
+ shadowColor: `rgb(${r},${g},${b})`,
22
+ shadowOpacity: shadowOpacity ?? a
23
+ };
24
+ }
25
+ export {
26
+ normalizeShadow
27
+ };
28
+ //# sourceMappingURL=normalizeShadow.native.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/normalizeShadow.native.ts"],
4
+ "mappings": "AAAA,SAAS,yBAAyB;AAElC,SAAS,qBAAqB;AAC9B,SAAS,YAAY;AACrB,SAAS,kCAAkC;AAEpC,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAwB;AACtB,QAAM,EAAE,QAAQ,MAAM,IAAI,gBAAgB,eACpC,WAAW,OAAO,eAAe,OAAO,GACxC,MAAM,kBAAkB,QAAQ;AACtC,MAAI,OAAO,OAAQ;AACjB,UAAM,IAAI,MAAM,wBAAwB,QAAQ,EAAE;AAEpD,QAAM,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,KAAK,GAAG;AAC/B,SAAO;AAAA,IACL,cAAc;AAAA,MACZ,OAAO,2BAA2B,SAAS,CAAC;AAAA,MAC5C,QAAQ,2BAA2B,UAAU,CAAC;AAAA,IAChD;AAAA,IACA,cAAc,2BAA2B,gBAAgB,CAAC;AAAA,IAC1D,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AAAA,IAC/B,eAAe,iBAAiB;AAAA,EAClC;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,16 @@
1
+ const normalizeStylePropKeys = {
2
+ backgroundColor: !0,
3
+ borderColor: !0,
4
+ borderTopColor: !0,
5
+ borderRightColor: !0,
6
+ borderBottomColor: !0,
7
+ borderLeftColor: !0,
8
+ color: !0,
9
+ shadowColor: !0,
10
+ textDecorationColor: !0,
11
+ textShadowColor: !0
12
+ };
13
+ export {
14
+ normalizeStylePropKeys
15
+ };
16
+ //# sourceMappingURL=normalizeStylePropKeys.native.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/normalizeStylePropKeys.native.ts"],
4
+ "mappings": "AAAO,MAAM,yBAAyB;AAAA,EACpC,iBAAiB;AAAA,EACjB,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,OAAO;AAAA,EACP,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,iBAAiB;AACnB;",
5
+ "names": []
6
+ }
@@ -0,0 +1,40 @@
1
+ import { isWeb } from "@tamagui/constants";
2
+ import { stylePropsAll, stylePropsUnitless } from "@tamagui/helpers";
3
+ import { getAllSelectors } from "./insertStyleRule";
4
+ const stylePropsAllPlusTransforms = {
5
+ ...stylePropsAll,
6
+ translateX: !0,
7
+ translateY: !0
8
+ };
9
+ function normalizeValueWithProperty(value, property) {
10
+ if (!isWeb || typeof value == "boolean" || property && property in stylePropsUnitless || property && !(property in stylePropsAllPlusTransforms))
11
+ return value;
12
+ let res = value;
13
+ return value && typeof value == "object" ? value : (typeof value == "number" ? res = `${value}px` : property && (res = `${res}`), res);
14
+ }
15
+ const rcache = {};
16
+ function reverseMapClassNameToValue(key, className) {
17
+ const cssRule = getAllSelectors()[className];
18
+ if (rcache[cssRule])
19
+ return rcache[cssRule];
20
+ if (!cssRule) {
21
+ process.env.NODE_ENV === "development" && console.warn(
22
+ `No CSS rule found for ${key} looking for selector ".${className}", you may not be injecting extracted CSS`
23
+ );
24
+ return;
25
+ }
26
+ const cssVal = cssRule.replace(/.*:/, "").replace(/;.*/, "").trim();
27
+ let res;
28
+ return cssVal.startsWith("var(") ? res = cssVal : stylePropsUnitless[key] ? res = +cssVal : cssVal.endsWith("px") ? res = +cssVal.replace("px", "") : res = cssVal, rcache[cssRule] = res, process.env.NODE_ENV === "development" && typeof res == "number" && isNaN(res) && console.log("Tamagui invalid parsed value, NaN:", {
29
+ res,
30
+ cssVal,
31
+ cssRule,
32
+ key,
33
+ className
34
+ }), res;
35
+ }
36
+ export {
37
+ normalizeValueWithProperty,
38
+ reverseMapClassNameToValue
39
+ };
40
+ //# sourceMappingURL=normalizeValueWithProperty.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/normalizeValueWithProperty.ts"],
4
+ "mappings": "AAKA,SAAS,aAAa;AACtB,SAAS,eAAe,0BAAuC;AAE/D,SAAS,uBAAuB;AAIhC,MAAM,8BAA8B;AAAA,EAClC,GAAG;AAAA,EACH,YAAY;AAAA,EACZ,YAAY;AACd;AAEO,SAAS,2BAA2B,OAAY,UAAwB;AAQ7E,MAPI,CAAC,SACD,OAAO,SAAU,aAGjB,YAAY,YAAY,sBAGxB,YAAY,EAAE,YAAY;AAC5B,WAAO;AAET,MAAI,MAAM;AAEV,SAAI,SAAS,OAAO,SAAU,WAAiB,SAC3C,OAAO,SAAU,WACnB,MAAM,GAAG,KAAK,OACL,aACT,MAAM,GAAG,GAAG,KAEP;AACT;AAIA,MAAM,SAAS,CAAC;AACT,SAAS,2BAA2B,KAAa,WAAmB;AAEzE,QAAM,UADY,gBAAgB,EACR,SAAS;AACnC,MAAI,OAAO,OAAO;AAChB,WAAO,OAAO,OAAO;AAGvB,MAAI,CAAC,SAAS;AACZ,IAAI,QAAQ,IAAI,aAAa,iBAC3B,QAAQ;AAAA,MACN,yBAAyB,GAAG,2BAA2B,SAAS;AAAA,IAClE;AAEF;AAAA,EACF;AACA,QAAM,SAAS,QAAQ,QAAQ,OAAO,EAAE,EAAE,QAAQ,OAAO,EAAE,EAAE,KAAK;AAClE,MAAI;AACJ,SAAI,OAAO,WAAW,MAAM,IAC1B,MAAM,SACG,mBAAmB,GAAG,IAC/B,MAAM,CAAC,SACE,OAAO,SAAS,IAAI,IAC7B,MAAM,CAAC,OAAO,QAAQ,MAAM,EAAE,IAE9B,MAAM,QAER,OAAO,OAAO,IAAI,KACd,QAAQ,IAAI,aAAa,iBAEvB,OAAO,OAAQ,YAAY,MAAM,GAAG,KAEtC,QAAQ,IAAI,sCAAsC;AAAA,IAChD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC,GAGE;AACT;",
5
+ "names": []
6
+ }
@@ -0,0 +1,22 @@
1
+ function objectIdentityKey(obj) {
2
+ let k = "";
3
+ for (const key in obj) {
4
+ k += key;
5
+ const arg = obj[key];
6
+ let type = typeof arg;
7
+ if (!arg || type !== "object")
8
+ k += type + arg;
9
+ else if (cache.has(arg))
10
+ k += cache.get(arg);
11
+ else {
12
+ let v = Math.random();
13
+ cache.set(arg, v), k += v;
14
+ }
15
+ }
16
+ return k;
17
+ }
18
+ const cache = /* @__PURE__ */ new WeakMap();
19
+ export {
20
+ objectIdentityKey
21
+ };
22
+ //# sourceMappingURL=objectIdentityKey.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/helpers/objectIdentityKey.tsx"],
4
+ "mappings": "AAAO,SAAS,kBAAkB,KAAa;AAC7C,MAAI,IAAI;AACR,aAAW,OAAO,KAAK;AACrB,SAAK;AACL,UAAM,MAAM,IAAI,GAAG;AACnB,QAAI,OAAO,OAAO;AAClB,QAAI,CAAC,OAAO,SAAS;AACnB,WAAK,OAAO;AAAA,aACH,MAAM,IAAI,GAAG;AACtB,WAAK,MAAM,IAAI,GAAG;AAAA,SACb;AACL,UAAI,IAAI,KAAK,OAAO;AACpB,YAAM,IAAI,KAAK,CAAC,GAChB,KAAK;AAAA,IACP;AAAA,EACF;AACA,SAAO;AACT;AAEA,MAAM,QAAQ,oBAAI,QAAQ;",
5
+ "names": []
6
+ }
@@ -27,7 +27,7 @@ const propMapper = (key, value, styleStateIn, subPropsIn) => {
27
27
  return variantValue;
28
28
  }
29
29
  let shouldReturn = !1;
30
- if (styleProps.disableExpandShorthands || key in conf.shorthands && (shouldReturn = !0, key = conf.shorthands[key]), value && (value[0] === "$" ? value = getTokenForKey(key, value, styleProps.resolveValues, styleState) : isVariable(value) && (value = resolveVariableValue(value, styleProps.resolveValues))), shouldReturn || value != null)
30
+ if (styleProps.disableExpandShorthands || key in conf.shorthands && (shouldReturn = !0, key = conf.shorthands[key]), value && (value[0] === "$" ? value = getTokenForKey(key, value, styleProps.resolveValues, styleState) : isVariable(value) && (value = resolveVariableValue(key, value, styleProps.resolveValues))), shouldReturn || value != null)
31
31
  return (styleProps.noExpand ? null : expandStyle(key, value)) || [[key, value]];
32
32
  }, resolveVariants = (key, value, styleProps, styleState, parentVariantKey) => {
33
33
  const { staticConfig, conf, debug } = styleState, { variants } = staticConfig;
@@ -85,16 +85,16 @@ function getFontFamilyFromNameOrVariable(input, conf) {
85
85
  const variableToFontNameCache = /* @__PURE__ */ new WeakMap(), fontFamilyCache = /* @__PURE__ */ new WeakMap(), getPropMappedFontFamily = (expanded) => expanded && fontFamilyCache.get(expanded), resolveTokensAndVariants = (key, value, styleProps, styleState, parentVariantKey) => {
86
86
  const { conf, staticConfig, debug, theme } = styleState, { variants } = staticConfig, res = {};
87
87
  process.env.NODE_ENV === "development" && debug === "verbose" && console.log(" - resolveTokensAndVariants", key, value);
88
- for (const rKey in value) {
89
- const fKey = conf.shorthands[rKey] || rKey, val = value[rKey];
88
+ for (const _key in value) {
89
+ const subKey = conf.shorthands[_key] || _key, val = value[_key];
90
90
  if (styleProps.noExpand)
91
- res[fKey] = val;
92
- else if (variants && fKey in variants) {
93
- if (styleState.curProps[fKey] = val, parentVariantKey && parentVariantKey === key)
94
- res[fKey] = // SYNC WITH *1
95
- val[0] === "$" ? getTokenForKey(fKey, val, styleProps.resolveValues, styleState) : val;
91
+ res[subKey] = val;
92
+ else if (variants && subKey in variants) {
93
+ if (styleState.curProps[subKey] = val, parentVariantKey && parentVariantKey === key)
94
+ res[subKey] = // SYNC WITH *1
95
+ val[0] === "$" ? getTokenForKey(subKey, val, styleProps.resolveValues, styleState) : val;
96
96
  else {
97
- const variantOut = resolveVariants(fKey, val, styleProps, styleState, key);
97
+ const variantOut = resolveVariants(subKey, val, styleProps, styleState, key);
98
98
  if (variantOut)
99
99
  for (const [key2, val2] of variantOut)
100
100
  val2 != null && (key2 in pseudoDescriptors ? (res[key2] ??= {}, Object.assign(res[key2], val2)) : res[key2] = val2);
@@ -102,23 +102,28 @@ const variableToFontNameCache = /* @__PURE__ */ new WeakMap(), fontFamilyCache =
102
102
  continue;
103
103
  }
104
104
  if (isVariable(val)) {
105
- res[fKey] = resolveVariableValue(val, styleProps.resolveValues);
105
+ res[subKey] = resolveVariableValue(subKey, val, styleProps.resolveValues);
106
106
  continue;
107
107
  }
108
108
  if (typeof val == "string") {
109
109
  const fVal = (
110
110
  // SYNC WITH *1
111
- val[0] === "$" ? getTokenForKey(fKey, val, styleProps.resolveValues, styleState) : val
111
+ val[0] === "$" ? getTokenForKey(subKey, val, styleProps.resolveValues, styleState) : val
112
112
  );
113
- res[fKey] = fVal;
113
+ res[subKey] = fVal;
114
114
  continue;
115
115
  }
116
116
  if (isObj(val)) {
117
- const subObject = resolveTokensAndVariants(fKey, val, styleProps, styleState, key);
118
- process.env.NODE_ENV === "development" && debug === "verbose" && console.log("object", fKey, subObject), res[fKey] ??= {}, Object.assign(res[fKey], subObject);
117
+ const subObject = resolveTokensAndVariants(subKey, val, styleProps, styleState, key);
118
+ process.env.NODE_ENV === "development" && debug === "verbose" && console.log("object", subKey, subObject), res[subKey] ??= {}, Object.assign(res[subKey], subObject);
119
119
  } else
120
- res[fKey] = val;
121
- process.env.NODE_ENV === "development" && debug && res[fKey]?.[0] === "$" && console.warn(`\u26A0\uFE0F Missing token in theme ${theme.name}:`, fKey, res[fKey], theme);
120
+ res[subKey] = val;
121
+ process.env.NODE_ENV === "development" && debug && res[subKey]?.[0] === "$" && console.warn(
122
+ `\u26A0\uFE0F Missing token in theme ${theme.name}:`,
123
+ subKey,
124
+ res[subKey],
125
+ theme
126
+ );
122
127
  }
123
128
  return res;
124
129
  }, tokenCats = ["size", "color", "radius", "space", "zIndex"].map((name) => ({
@@ -183,19 +188,19 @@ const fontShorthand = {
183
188
  }
184
189
  }
185
190
  if (hasSet) {
186
- const out = resolveVariableValue(valOrVar, resolveAs);
191
+ const out = resolveVariableValue(key, valOrVar, resolveAs);
187
192
  return process.env.NODE_ENV === "development" && styleState.debug === "verbose" && console.log("resolved", resolveAs, valOrVar.get, out), out;
188
193
  }
189
194
  return process.env.NODE_ENV === "development" && isDevTools && styleState.debug === "verbose" && (console.groupCollapsed(" \uFE52 propMap (val)", key, value), console.log({ valOrVar, theme, hasSet }, theme ? theme[key] : ""), console.groupEnd()), value;
190
195
  };
191
- function resolveVariableValue(valOrVar, resolveValues) {
196
+ function resolveVariableValue(key, valOrVar, resolveValues) {
192
197
  if (resolveValues === "none")
193
198
  return valOrVar;
194
199
  if (isVariable(valOrVar)) {
195
200
  if (resolveValues === "value")
196
201
  return valOrVar.val;
197
202
  const get = valOrVar.get;
198
- return typeof get == "function" ? get() : valOrVar.variable;
203
+ return typeof get == "function" ? get(resolveValues === "web" ? "web" : void 0) : valOrVar.variable;
199
204
  }
200
205
  return valOrVar;
201
206
  }