@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.
- package/dist/cjs/helpers/getAnimationDriver.js +28 -0
- package/dist/cjs/helpers/getAnimationDriver.js.map +6 -0
- package/dist/cjs/helpers/getAnimationDriver.native.js +29 -0
- package/dist/cjs/helpers/getAnimationDriver.native.js.map +6 -0
- package/dist/cjs/helpers/propMapper.js +24 -19
- package/dist/cjs/helpers/propMapper.js.map +1 -1
- package/dist/cjs/helpers/propMapper.native.js +24 -19
- package/dist/cjs/helpers/propMapper.native.js.map +1 -1
- package/dist/cjs/hooks/useAnimationDriver.js +26 -0
- package/dist/cjs/hooks/useAnimationDriver.js.map +6 -0
- package/dist/cjs/hooks/useAnimationDriver.native.js +27 -0
- package/dist/cjs/hooks/useAnimationDriver.native.js.map +6 -0
- package/dist/cjs/hooks/useStyle.js +47 -0
- package/dist/cjs/hooks/useStyle.js.map +6 -0
- package/dist/cjs/hooks/useStyle.native.js +48 -0
- package/dist/cjs/hooks/useStyle.native.js.map +6 -0
- package/dist/cjs/hooks/useTheme.js +1 -1
- package/dist/cjs/hooks/useTheme.js.map +1 -1
- package/dist/cjs/hooks/useTheme.native.js +2 -2
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/views/AnimationDriverProvider.js +26 -0
- package/dist/cjs/views/AnimationDriverProvider.js.map +6 -0
- package/dist/cjs/views/AnimationDriverProvider.native.js +27 -0
- package/dist/cjs/views/AnimationDriverProvider.native.js.map +6 -0
- package/dist/esm/Tamagui.native.js +36 -0
- package/dist/esm/Tamagui.native.js.map +6 -0
- package/dist/esm/config.native.js +62 -0
- package/dist/esm/config.native.js.map +6 -0
- package/dist/esm/constants/accessibilityDirectMap.native.js +59 -0
- package/dist/esm/constants/accessibilityDirectMap.native.js.map +6 -0
- package/dist/esm/constants/constants.native.js +9 -0
- package/dist/esm/constants/constants.native.js.map +6 -0
- package/dist/esm/constants/isDevTools.native.js +12 -0
- package/dist/esm/constants/isDevTools.native.js.map +6 -0
- package/dist/esm/contexts/ComponentContext.native.js +22 -0
- package/dist/esm/contexts/ComponentContext.native.js.map +6 -0
- package/dist/esm/createComponent.native.js +683 -0
- package/dist/esm/createComponent.native.js.map +6 -0
- package/dist/esm/createFont.native.js +38 -0
- package/dist/esm/createFont.native.js.map +6 -0
- package/dist/esm/createShorthands.native.js +7 -0
- package/dist/esm/createShorthands.native.js.map +6 -0
- package/dist/esm/createTamagui.native.js +181 -0
- package/dist/esm/createTamagui.native.js.map +6 -0
- package/dist/esm/createTheme.native.js +5 -0
- package/dist/esm/createTheme.native.js.map +6 -0
- package/dist/esm/createTokens.native.js +8 -0
- package/dist/esm/createTokens.native.js.map +6 -0
- package/dist/esm/createVariable.native.js +57 -0
- package/dist/esm/createVariable.native.js.map +6 -0
- package/dist/esm/createVariables.native.js +34 -0
- package/dist/esm/createVariables.native.js.map +6 -0
- package/dist/esm/defaultComponentState.native.js +19 -0
- package/dist/esm/defaultComponentState.native.js.map +6 -0
- package/dist/esm/helpers/ThemeManager.native.js +157 -0
- package/dist/esm/helpers/ThemeManager.native.js.map +6 -0
- package/dist/esm/helpers/ThemeManagerContext.native.js +6 -0
- package/dist/esm/helpers/ThemeManagerContext.native.js.map +6 -0
- package/dist/esm/helpers/createChainedWeakCache.native.js +33 -0
- package/dist/esm/helpers/createChainedWeakCache.native.js.map +6 -0
- package/dist/esm/helpers/createMediaStyle.native.js +52 -0
- package/dist/esm/helpers/createMediaStyle.native.js.map +6 -0
- package/dist/esm/helpers/createProxy.native.js +14 -0
- package/dist/esm/helpers/createProxy.native.js.map +6 -0
- package/dist/esm/helpers/createShallowSetState.native.js +14 -0
- package/dist/esm/helpers/createShallowSetState.native.js.map +6 -0
- package/dist/esm/helpers/createStyledContext.native.js +30 -0
- package/dist/esm/helpers/createStyledContext.native.js.map +6 -0
- package/dist/esm/helpers/defaultOffset.native.js +5 -0
- package/dist/esm/helpers/defaultOffset.native.js.map +6 -0
- package/dist/esm/helpers/expandStyle.native.js +43 -0
- package/dist/esm/helpers/expandStyle.native.js.map +6 -0
- package/dist/esm/helpers/expandStyles.native.js +37 -0
- package/dist/esm/helpers/expandStyles.native.js.map +6 -0
- package/dist/esm/helpers/getAnimationDriver.js +8 -0
- package/dist/esm/helpers/getAnimationDriver.js.map +6 -0
- package/dist/esm/helpers/getExpandedShorthands.native.js +14 -0
- package/dist/esm/helpers/getExpandedShorthands.native.js.map +6 -0
- package/dist/esm/helpers/getFontLanguage.native.js +5 -0
- package/dist/esm/helpers/getFontLanguage.native.js.map +6 -0
- package/dist/esm/helpers/getGroupPropParts.native.js +11 -0
- package/dist/esm/helpers/getGroupPropParts.native.js.map +6 -0
- package/dist/esm/helpers/getSplitStyles.native.js +539 -0
- package/dist/esm/helpers/getSplitStyles.native.js.map +6 -0
- package/dist/esm/helpers/getStylesAtomic.native.js +10 -0
- package/dist/esm/helpers/getStylesAtomic.native.js.map +6 -0
- package/dist/esm/helpers/getThemeCSSRules.native.js +7 -0
- package/dist/esm/helpers/getThemeCSSRules.native.js.map +6 -0
- package/dist/esm/helpers/getVariantExtras.native.js +51 -0
- package/dist/esm/helpers/getVariantExtras.native.js.map +6 -0
- package/dist/esm/helpers/insertStyleRule.native.js +195 -0
- package/dist/esm/helpers/insertStyleRule.native.js.map +6 -0
- package/dist/esm/helpers/isObj.native.js +5 -0
- package/dist/esm/helpers/isObj.native.js.map +6 -0
- package/dist/esm/helpers/isTamaguiComponent.native.js +8 -0
- package/dist/esm/helpers/isTamaguiComponent.native.js.map +6 -0
- package/dist/esm/helpers/isTamaguiElement.native.js +7 -0
- package/dist/esm/helpers/isTamaguiElement.native.js.map +6 -0
- package/dist/esm/helpers/matchMedia.native.js +20 -0
- package/dist/esm/helpers/matchMedia.native.js.map +6 -0
- package/dist/esm/helpers/mergeProps.native.js +28 -0
- package/dist/esm/helpers/mergeProps.native.js.map +6 -0
- package/dist/esm/helpers/mergeVariants.native.js +35 -0
- package/dist/esm/helpers/mergeVariants.native.js.map +6 -0
- package/dist/esm/helpers/normalizeColor.native.js +20 -0
- package/dist/esm/helpers/normalizeColor.native.js.map +6 -0
- package/dist/esm/helpers/normalizeShadow.native.js +28 -0
- package/dist/esm/helpers/normalizeShadow.native.js.map +6 -0
- package/dist/esm/helpers/normalizeStylePropKeys.native.js +16 -0
- package/dist/esm/helpers/normalizeStylePropKeys.native.js.map +6 -0
- package/dist/esm/helpers/normalizeValueWithProperty.native.js +40 -0
- package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +6 -0
- package/dist/esm/helpers/objectIdentityKey.native.js +22 -0
- package/dist/esm/helpers/objectIdentityKey.native.js.map +6 -0
- package/dist/esm/helpers/propMapper.js +24 -19
- package/dist/esm/helpers/propMapper.js.map +1 -1
- package/dist/esm/helpers/propMapper.native.js +213 -0
- package/dist/esm/helpers/propMapper.native.js.map +6 -0
- package/dist/esm/helpers/proxyThemeToParents.native.js +40 -0
- package/dist/esm/helpers/proxyThemeToParents.native.js.map +6 -0
- package/dist/esm/helpers/proxyThemeVariables.native.js +16 -0
- package/dist/esm/helpers/proxyThemeVariables.native.js.map +6 -0
- package/dist/esm/helpers/pseudoDescriptors.native.js +37 -0
- package/dist/esm/helpers/pseudoDescriptors.native.js.map +6 -0
- package/dist/esm/helpers/registerCSSVariable.native.js +10 -0
- package/dist/esm/helpers/registerCSSVariable.native.js.map +6 -0
- package/dist/esm/helpers/themeable.native.js +29 -0
- package/dist/esm/helpers/themeable.native.js.map +6 -0
- package/dist/esm/helpers/themes.native.js +17 -0
- package/dist/esm/helpers/themes.native.js.map +6 -0
- package/dist/esm/helpers/timer.native.js +11 -0
- package/dist/esm/helpers/timer.native.js.map +6 -0
- package/dist/esm/helpers/withStaticProperties.native.js +20 -0
- package/dist/esm/helpers/withStaticProperties.native.js.map +6 -0
- package/dist/esm/hooks/getThemeUnwrapped.native.js +6 -0
- package/dist/esm/hooks/getThemeUnwrapped.native.js.map +6 -0
- package/dist/esm/hooks/useAnimationDriver.js +8 -0
- package/dist/esm/hooks/useAnimationDriver.js.map +6 -0
- package/dist/esm/hooks/useConfiguration.native.js +15 -0
- package/dist/esm/hooks/useConfiguration.native.js.map +6 -0
- package/dist/esm/hooks/useDisableSSR.native.js +15 -0
- package/dist/esm/hooks/useDisableSSR.native.js.map +6 -0
- package/dist/esm/hooks/useId.native.js +5 -0
- package/dist/esm/hooks/useId.native.js.map +6 -0
- package/dist/esm/hooks/useIsTouchDevice.native.js +7 -0
- package/dist/esm/hooks/useIsTouchDevice.native.js.map +6 -0
- package/dist/esm/hooks/useMedia.native.js +155 -0
- package/dist/esm/hooks/useMedia.native.js.map +6 -0
- package/dist/esm/hooks/useMemoDebug.native.js +10 -0
- package/dist/esm/hooks/useMemoDebug.native.js.map +6 -0
- package/dist/esm/hooks/useProps.native.js +49 -0
- package/dist/esm/hooks/useProps.native.js.map +6 -0
- package/dist/esm/hooks/useStyle.js +32 -0
- package/dist/esm/hooks/useStyle.js.map +6 -0
- package/dist/esm/hooks/useTheme.js +1 -1
- package/dist/esm/hooks/useTheme.js.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +224 -0
- package/dist/esm/hooks/useTheme.native.js.map +6 -0
- package/dist/esm/hooks/useThemeName.native.js +17 -0
- package/dist/esm/hooks/useThemeName.native.js.map +6 -0
- package/dist/esm/index.native.js +90 -0
- package/dist/esm/index.native.js.map +6 -0
- package/dist/esm/inject-styles.native.js +12 -0
- package/dist/esm/inject-styles.native.js.map +6 -0
- package/dist/esm/insertFont.native.js +48 -0
- package/dist/esm/insertFont.native.js.map +6 -0
- package/dist/esm/interfaces/CSSColorNames.native.js +1 -0
- package/dist/esm/interfaces/CSSColorNames.native.js.map +6 -0
- package/dist/esm/interfaces/GetRef.native.js +1 -0
- package/dist/esm/interfaces/GetRef.native.js.map +6 -0
- package/dist/esm/interfaces/Role.native.js +1 -0
- package/dist/esm/interfaces/Role.native.js.map +6 -0
- package/dist/esm/setupHooks.native.js +9 -0
- package/dist/esm/setupHooks.native.js.map +6 -0
- package/dist/esm/setupReactNative.native.js +30 -0
- package/dist/esm/setupReactNative.native.js.map +6 -0
- package/dist/esm/styled.native.js +56 -0
- package/dist/esm/styled.native.js.map +6 -0
- package/dist/esm/types.native.js +1 -0
- package/dist/esm/types.native.js.map +6 -0
- package/dist/esm/views/AnimationDriverProvider.js +7 -0
- package/dist/esm/views/AnimationDriverProvider.js.map +6 -0
- package/dist/esm/views/Configuration.native.js +7 -0
- package/dist/esm/views/Configuration.native.js.map +6 -0
- package/dist/esm/views/FontLanguage.native.js +11 -0
- package/dist/esm/views/FontLanguage.native.js.map +6 -0
- package/dist/esm/views/FontLanguage.types.native.js +1 -0
- package/dist/esm/views/FontLanguage.types.native.js.map +6 -0
- package/dist/esm/views/Slot.native.js +40 -0
- package/dist/esm/views/Slot.native.js.map +6 -0
- package/dist/esm/views/Stack.native.js +12 -0
- package/dist/esm/views/Stack.native.js.map +6 -0
- package/dist/esm/views/TamaguiProvider.native.js +34 -0
- package/dist/esm/views/TamaguiProvider.native.js.map +6 -0
- package/dist/esm/views/Text.native.js +32 -0
- package/dist/esm/views/Text.native.js.map +6 -0
- package/dist/esm/views/Theme.native.js +85 -0
- package/dist/esm/views/Theme.native.js.map +6 -0
- package/dist/esm/views/ThemeDebug.native.js +11 -0
- package/dist/esm/views/ThemeDebug.native.js.map +6 -0
- package/dist/esm/views/ThemeProvider.native.js +26 -0
- package/dist/esm/views/ThemeProvider.native.js.map +6 -0
- package/dist/esm/views/View.native.js +13 -0
- package/dist/esm/views/View.native.js.map +6 -0
- package/package.json +9 -9
- package/src/helpers/propMapper.ts +36 -25
- package/src/hooks/useTheme.tsx +20 -3
- package/src/types.tsx +1 -1
- package/types/helpers/propMapper.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +11 -1
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/types.d.ts +1 -1
- 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,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,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
|
|
89
|
-
const
|
|
88
|
+
for (const _key in value) {
|
|
89
|
+
const subKey = conf.shorthands[_key] || _key, val = value[_key];
|
|
90
90
|
if (styleProps.noExpand)
|
|
91
|
-
res[
|
|
92
|
-
else if (variants &&
|
|
93
|
-
if (styleState.curProps[
|
|
94
|
-
res[
|
|
95
|
-
val[0] === "$" ? getTokenForKey(
|
|
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(
|
|
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[
|
|
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(
|
|
111
|
+
val[0] === "$" ? getTokenForKey(subKey, val, styleProps.resolveValues, styleState) : val
|
|
112
112
|
);
|
|
113
|
-
res[
|
|
113
|
+
res[subKey] = fVal;
|
|
114
114
|
continue;
|
|
115
115
|
}
|
|
116
116
|
if (isObj(val)) {
|
|
117
|
-
const subObject = resolveTokensAndVariants(
|
|
118
|
-
process.env.NODE_ENV === "development" && debug === "verbose" && console.log("object",
|
|
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[
|
|
121
|
-
process.env.NODE_ENV === "development" && debug && res[
|
|
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
|
}
|