@tamagui/web 1.88.13 → 1.88.14
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/LICENSE +21 -0
- package/dist/cjs/createComponent.js +2 -2
- package/dist/cjs/createComponent.js.map +1 -1
- package/dist/cjs/createComponent.native.js +1 -1
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createTamagui.js.map +1 -1
- package/dist/cjs/createTamagui.native.js.map +1 -1
- package/dist/cjs/createVariables.js.map +1 -1
- package/dist/cjs/createVariables.native.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.js +15 -19
- package/dist/cjs/helpers/getSplitStyles.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.native.js +12 -18
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/getStylesAtomic.js.map +1 -1
- package/dist/cjs/helpers/getThemeCSSRules.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.js +3 -3
- package/dist/cjs/helpers/insertStyleRule.js.map +1 -1
- package/dist/cjs/helpers/insertStyleRule.native.js +3 -3
- package/dist/cjs/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/cjs/helpers/propMapper.js.map +1 -1
- package/dist/cjs/helpers/propMapper.native.js.map +1 -1
- package/dist/cjs/helpers/registerCSSVariable.js.map +1 -1
- package/dist/cjs/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/cjs/hooks/getThemeProxied.js +66 -0
- package/dist/cjs/hooks/getThemeProxied.js.map +6 -0
- package/dist/cjs/hooks/getThemeProxied.native.js +100 -0
- package/dist/cjs/hooks/getThemeProxied.native.js.map +6 -0
- package/dist/cjs/hooks/useTheme.js.map +1 -1
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/cjs/insertFont.js.map +1 -1
- package/dist/cjs/insertFont.native.js.map +1 -1
- package/dist/cjs/setupHooks.js.map +1 -1
- package/dist/cjs/setupHooks.native.js.map +1 -1
- package/dist/cjs/views/FontLanguage.native.js.map +1 -1
- package/dist/cjs/views/Slot.js.map +1 -1
- package/dist/cjs/views/Slot.native.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.js +5 -5
- package/dist/cjs/views/TamaguiProvider.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.native.js +5 -5
- package/dist/cjs/views/TamaguiProvider.native.js.map +1 -1
- package/dist/cjs/views/Theme.js.map +1 -1
- package/dist/cjs/views/Theme.native.js.map +1 -1
- package/dist/esm/Tamagui.mjs +43 -0
- package/dist/esm/config.mjs +51 -0
- package/dist/esm/constants/accessibilityDirectMap.mjs +50 -0
- package/dist/esm/constants/constants.mjs +16 -0
- package/dist/esm/constants/isDevTools.mjs +7 -0
- package/dist/esm/contexts/ComponentContext.mjs +13 -0
- package/dist/esm/createComponent.js +2 -2
- package/dist/esm/createComponent.js.map +1 -1
- package/dist/esm/createComponent.mjs +771 -0
- package/dist/esm/createComponent.native.js +1 -1
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createFont.mjs +18 -0
- package/dist/esm/createShorthands.mjs +4 -0
- package/dist/esm/createTamagui.js.map +1 -1
- package/dist/esm/createTamagui.mjs +206 -0
- package/dist/esm/createTamagui.native.js.map +1 -1
- package/dist/esm/createTheme.mjs +2 -0
- package/dist/esm/createTokens.mjs +5 -0
- package/dist/esm/createVariable.mjs +48 -0
- package/dist/esm/createVariables.js.map +1 -1
- package/dist/esm/createVariables.mjs +35 -0
- package/dist/esm/createVariables.native.js.map +1 -1
- package/dist/esm/defaultComponentState.mjs +16 -0
- package/dist/esm/helpers/ThemeManager.mjs +156 -0
- package/dist/esm/helpers/ThemeManagerContext.mjs +3 -0
- package/dist/esm/helpers/createMediaStyle.mjs +71 -0
- package/dist/esm/helpers/createShallowSetState.mjs +17 -0
- package/dist/esm/helpers/createStyledContext.mjs +35 -0
- package/dist/esm/helpers/defaultOffset.mjs +5 -0
- package/dist/esm/helpers/expandStyle.mjs +38 -0
- package/dist/esm/helpers/expandStyles.mjs +15 -0
- package/dist/esm/helpers/getExpandedShorthands.mjs +9 -0
- package/dist/esm/helpers/getFontLanguage.mjs +2 -0
- package/dist/esm/helpers/getGroupPropParts.mjs +13 -0
- package/dist/esm/helpers/getSplitStyles.js +15 -18
- package/dist/esm/helpers/getSplitStyles.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +638 -0
- package/dist/esm/helpers/getSplitStyles.native.js +12 -18
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/getStylesAtomic.js +1 -4
- package/dist/esm/helpers/getStylesAtomic.js.map +1 -1
- package/dist/esm/helpers/getStylesAtomic.mjs +150 -0
- package/dist/esm/helpers/getThemeCSSRules.js.map +1 -1
- package/dist/esm/helpers/getThemeCSSRules.mjs +87 -0
- package/dist/esm/helpers/getVariantExtras.mjs +43 -0
- package/dist/esm/helpers/insertStyleRule.js +3 -3
- package/dist/esm/helpers/insertStyleRule.js.map +1 -1
- package/dist/esm/helpers/insertStyleRule.mjs +177 -0
- package/dist/esm/helpers/insertStyleRule.native.js +3 -3
- package/dist/esm/helpers/insertStyleRule.native.js.map +1 -1
- package/dist/esm/helpers/isObj.mjs +2 -0
- package/dist/esm/helpers/isTamaguiComponent.mjs +5 -0
- package/dist/esm/helpers/isTamaguiElement.mjs +4 -0
- package/dist/esm/helpers/log.mjs +4 -0
- package/dist/esm/helpers/matchMedia.mjs +11 -0
- package/dist/esm/helpers/mergeProps.mjs +21 -0
- package/dist/esm/helpers/mergeVariants.mjs +16 -0
- package/dist/esm/helpers/normalizeColor.mjs +17 -0
- package/dist/esm/helpers/normalizeShadow.mjs +23 -0
- package/dist/esm/helpers/normalizeStyle.mjs +23 -0
- package/dist/esm/helpers/normalizeStylePropKeys.mjs +2 -0
- package/dist/esm/helpers/normalizeValueWithProperty.mjs +32 -0
- package/dist/esm/helpers/objectIdentityKey.mjs +15 -0
- package/dist/esm/helpers/propMapper.js.map +1 -1
- package/dist/esm/helpers/propMapper.mjs +239 -0
- package/dist/esm/helpers/propMapper.native.js.map +1 -1
- package/dist/esm/helpers/proxyThemeToParents.mjs +36 -0
- package/dist/esm/helpers/proxyThemeVariables.mjs +12 -0
- package/dist/esm/helpers/pseudoDescriptors.mjs +34 -0
- package/dist/esm/helpers/registerCSSVariable.js.map +1 -1
- package/dist/esm/helpers/registerCSSVariable.mjs +7 -0
- package/dist/esm/helpers/registerCSSVariable.native.js.map +1 -1
- package/dist/esm/helpers/themeable.mjs +33 -0
- package/dist/esm/helpers/themes.mjs +14 -0
- package/dist/esm/helpers/timer.mjs +8 -0
- package/dist/esm/hooks/getThemeProxied.js +52 -0
- package/dist/esm/hooks/getThemeProxied.js.map +6 -0
- package/dist/esm/hooks/getThemeProxied.mjs +41 -0
- package/dist/esm/hooks/getThemeProxied.native.js +100 -0
- package/dist/esm/hooks/getThemeProxied.native.js.map +6 -0
- package/dist/esm/hooks/useConfiguration.mjs +20 -0
- package/dist/esm/hooks/useDisableSSR.mjs +5 -0
- package/dist/esm/hooks/useIsTouchDevice.mjs +4 -0
- package/dist/esm/hooks/useMedia.mjs +146 -0
- package/dist/esm/hooks/useProps.mjs +40 -0
- package/dist/esm/hooks/useTheme.js +1 -4
- package/dist/esm/hooks/useTheme.js.map +1 -1
- package/dist/esm/hooks/useTheme.mjs +222 -0
- package/dist/esm/hooks/useTheme.native.js.map +1 -1
- package/dist/esm/hooks/useThemeName.mjs +15 -0
- package/dist/esm/index.mjs +61 -0
- package/dist/esm/inject-styles.mjs +13 -0
- package/dist/esm/insertFont.js.map +1 -1
- package/dist/esm/insertFont.mjs +44 -0
- package/dist/esm/insertFont.native.js.map +1 -1
- package/dist/esm/interfaces/CSSColorNames.mjs +0 -0
- package/dist/esm/interfaces/GetRef.mjs +0 -0
- package/dist/esm/interfaces/KeyTypes.mjs +0 -0
- package/dist/esm/interfaces/RNExclusiveTypes.mjs +0 -0
- package/dist/esm/interfaces/Role.mjs +0 -0
- package/dist/esm/interfaces/TamaguiComponentEvents.mjs +0 -0
- package/dist/esm/interfaces/TamaguiComponentPropsBaseBase.mjs +0 -0
- package/dist/esm/interfaces/TamaguiComponentState.mjs +0 -0
- package/dist/esm/interfaces/WebOnlyPressEvents.mjs +0 -0
- package/dist/esm/internalWithTheme.mjs +14 -0
- package/dist/esm/setupHooks.js.map +1 -1
- package/dist/esm/setupHooks.mjs +5 -0
- package/dist/esm/setupHooks.native.js.map +1 -1
- package/dist/esm/setupReactNative.mjs +24 -0
- package/dist/esm/styled.mjs +56 -0
- package/dist/esm/type-utils.mjs +0 -0
- package/dist/esm/types.mjs +2 -0
- package/dist/esm/views/Configuration.mjs +12 -0
- package/dist/esm/views/FontLanguage.mjs +13 -0
- package/dist/esm/views/FontLanguage.native.js.map +1 -1
- package/dist/esm/views/FontLanguage.types.mjs +0 -0
- package/dist/esm/views/Slot.js.map +1 -1
- package/dist/esm/views/Slot.mjs +53 -0
- package/dist/esm/views/Slot.native.js.map +1 -1
- package/dist/esm/views/Stack.mjs +10 -0
- package/dist/esm/views/TamaguiProvider.js +5 -5
- package/dist/esm/views/TamaguiProvider.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.mjs +32 -0
- package/dist/esm/views/TamaguiProvider.native.js +5 -5
- package/dist/esm/views/TamaguiProvider.native.js.map +1 -1
- package/dist/esm/views/Text.mjs +64 -0
- package/dist/esm/views/Theme.js.map +1 -1
- package/dist/esm/views/Theme.mjs +104 -0
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/dist/esm/views/ThemeDebug.mjs +57 -0
- package/dist/esm/views/ThemeProvider.mjs +20 -0
- package/dist/esm/views/View.mjs +9 -0
- package/package.json +11 -11
- package/src/config.ts +1 -1
- package/src/contexts/ComponentContext.tsx +1 -1
- package/src/createComponent.tsx +7 -5
- package/src/createFont.ts +1 -1
- package/src/createShorthands.ts +1 -1
- package/src/createTamagui.ts +4 -3
- package/src/createTokens.ts +2 -2
- package/src/createVariables.ts +2 -1
- package/src/defaultComponentState.tsx +1 -1
- package/src/helpers/ThemeManager.tsx +1 -1
- package/src/helpers/createShallowSetState.tsx +2 -2
- package/src/helpers/expandStyle.ts +1 -1
- package/src/helpers/getExpandedShorthands.ts +1 -1
- package/src/helpers/getSplitStyles.tsx +33 -26
- package/src/helpers/getStylesAtomic.ts +4 -6
- package/src/helpers/getThemeCSSRules.ts +2 -1
- package/src/helpers/getVariantExtras.tsx +2 -2
- package/src/helpers/insertStyleRule.tsx +8 -3
- package/src/helpers/isTamaguiComponent.tsx +1 -1
- package/src/helpers/isTamaguiElement.tsx +1 -1
- package/src/helpers/matchMedia.native.ts +1 -1
- package/src/helpers/matchMedia.ts +1 -1
- package/src/helpers/propMapper.ts +2 -1
- package/src/helpers/proxyThemeToParents.ts +1 -1
- package/src/helpers/registerCSSVariable.ts +3 -2
- package/src/helpers/themeable.tsx +1 -1
- package/src/hooks/useDisableSSR.tsx +1 -1
- package/src/hooks/useProps.tsx +1 -1
- package/src/hooks/useTheme.tsx +4 -6
- package/src/hooks/useThemeName.tsx +1 -1
- package/src/insertFont.ts +4 -3
- package/src/interfaces/GetRef.tsx +2 -2
- package/src/interfaces/TamaguiComponentPropsBaseBase.tsx +2 -2
- package/src/interfaces/TamaguiComponentState.tsx +1 -1
- package/src/interfaces/WebOnlyPressEvents.tsx +1 -1
- package/src/setupHooks.ts +4 -8
- package/src/setupReactNative.ts +1 -1
- package/src/styled.tsx +1 -1
- package/src/types.tsx +9 -9
- package/src/views/FontLanguage.native.tsx +0 -1
- package/src/views/FontLanguage.types.ts +2 -2
- package/src/views/Slot.tsx +2 -1
- package/src/views/TamaguiProvider.tsx +8 -5
- package/src/views/Text.tsx +1 -1
- package/src/views/Theme.tsx +2 -1
- package/src/views/ThemeDebug.native.tsx +2 -2
- package/src/views/ThemeDebug.tsx +2 -2
- package/types/config.d.ts +1 -1
- package/types/config.d.ts.map +1 -1
- package/types/contexts/ComponentContext.d.ts +1 -1
- package/types/contexts/ComponentContext.d.ts.map +1 -1
- package/types/createComponent.d.ts +1 -1
- package/types/createComponent.d.ts.map +1 -1
- package/types/createFont.d.ts +1 -1
- package/types/createFont.d.ts.map +1 -1
- package/types/createShorthands.d.ts +1 -1
- package/types/createShorthands.d.ts.map +1 -1
- package/types/createTamagui.d.ts +1 -1
- package/types/createTamagui.d.ts.map +1 -1
- package/types/createTokens.d.ts +2 -2
- package/types/createTokens.d.ts.map +1 -1
- package/types/createVariables.d.ts +1 -1
- package/types/createVariables.d.ts.map +1 -1
- package/types/defaultComponentState.d.ts +1 -1
- package/types/defaultComponentState.d.ts.map +1 -1
- package/types/helpers/ThemeManager.d.ts +1 -1
- package/types/helpers/ThemeManager.d.ts.map +1 -1
- package/types/helpers/createShallowSetState.d.ts +2 -2
- package/types/helpers/createShallowSetState.d.ts.map +1 -1
- package/types/helpers/expandStyle.d.ts +1 -1
- package/types/helpers/expandStyle.d.ts.map +1 -1
- package/types/helpers/getExpandedShorthands.d.ts +1 -1
- package/types/helpers/getExpandedShorthands.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/getStylesAtomic.d.ts +2 -2
- package/types/helpers/getStylesAtomic.d.ts.map +1 -1
- package/types/helpers/getThemeCSSRules.d.ts.map +1 -1
- package/types/helpers/getVariantExtras.d.ts +2 -2
- package/types/helpers/getVariantExtras.d.ts.map +1 -1
- package/types/helpers/insertStyleRule.d.ts.map +1 -1
- package/types/helpers/isTamaguiComponent.d.ts +1 -1
- package/types/helpers/isTamaguiComponent.d.ts.map +1 -1
- package/types/helpers/isTamaguiElement.d.ts +1 -1
- package/types/helpers/isTamaguiElement.d.ts.map +1 -1
- package/types/helpers/matchMedia.d.ts +1 -1
- package/types/helpers/matchMedia.d.ts.map +1 -1
- package/types/helpers/matchMedia.native.d.ts +1 -1
- package/types/helpers/matchMedia.native.d.ts.map +1 -1
- package/types/helpers/propMapper.d.ts.map +1 -1
- package/types/helpers/proxyThemeToParents.d.ts +1 -1
- package/types/helpers/proxyThemeToParents.d.ts.map +1 -1
- package/types/helpers/registerCSSVariable.d.ts +2 -2
- package/types/helpers/registerCSSVariable.d.ts.map +1 -1
- package/types/helpers/themeable.d.ts +1 -1
- package/types/helpers/themeable.d.ts.map +1 -1
- package/types/hooks/getThemeProxied.d.ts.map +1 -0
- package/types/hooks/useDisableSSR.d.ts +1 -1
- package/types/hooks/useDisableSSR.d.ts.map +1 -1
- package/types/hooks/useProps.d.ts +1 -1
- package/types/hooks/useProps.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts +3 -2
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/hooks/useThemeName.d.ts +1 -1
- package/types/hooks/useThemeName.d.ts.map +1 -1
- package/types/insertFont.d.ts +2 -2
- package/types/insertFont.d.ts.map +1 -1
- package/types/interfaces/GetRef.d.ts +2 -2
- package/types/interfaces/GetRef.d.ts.map +1 -1
- package/types/interfaces/TamaguiComponentPropsBaseBase.d.ts +2 -2
- package/types/interfaces/TamaguiComponentPropsBaseBase.d.ts.map +1 -1
- package/types/interfaces/TamaguiComponentState.d.ts +1 -1
- package/types/interfaces/TamaguiComponentState.d.ts.map +1 -1
- package/types/interfaces/WebOnlyPressEvents.d.ts +1 -1
- package/types/interfaces/WebOnlyPressEvents.d.ts.map +1 -1
- package/types/setupHooks.d.ts +3 -3
- package/types/setupHooks.d.ts.map +1 -1
- package/types/setupReactNative.d.ts +1 -1
- package/types/setupReactNative.d.ts.map +1 -1
- package/types/styled.d.ts +1 -1
- package/types/styled.d.ts.map +1 -1
- package/types/types.d.ts +9 -9
- package/types/types.d.ts.map +1 -1
- package/types/views/FontLanguage.native.d.ts.map +1 -1
- package/types/views/FontLanguage.types.d.ts +2 -2
- package/types/views/FontLanguage.types.d.ts.map +1 -1
- package/types/views/Slot.d.ts +1 -1
- package/types/views/Slot.d.ts.map +1 -1
- package/types/views/TamaguiProvider.d.ts.map +1 -1
- package/types/views/Text.d.ts +1 -1
- package/types/views/Text.d.ts.map +1 -1
- package/types/views/Theme.d.ts +1 -1
- package/types/views/Theme.d.ts.map +1 -1
- package/types/views/ThemeDebug.d.ts +2 -2
- package/types/views/ThemeDebug.d.ts.map +1 -1
- package/types/views/ThemeDebug.native.d.ts +2 -2
- package/types/views/ThemeDebug.native.d.ts.map +1 -1
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { isClient } from "@tamagui/constants";
|
|
2
|
+
import { createVariable } from "../createVariable.mjs";
|
|
3
|
+
const scannedCache = /* @__PURE__ */new WeakMap(),
|
|
4
|
+
totalSelectorsInserted = /* @__PURE__ */new Map(),
|
|
5
|
+
allSelectors = {},
|
|
6
|
+
allRules = {},
|
|
7
|
+
insertedTransforms = {},
|
|
8
|
+
getAllSelectors = () => allSelectors,
|
|
9
|
+
getAllRules = () => Object.values(allRules),
|
|
10
|
+
getAllTransforms = () => insertedTransforms;
|
|
11
|
+
function addTransform(identifier, css, rule) {
|
|
12
|
+
const s = css.indexOf("transform:");
|
|
13
|
+
if (s === -1) {
|
|
14
|
+
process.env.NODE_ENV === "development" && console.error(`\u274C Invalid transform, likely used deg/% improperly ${identifier}`);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const startI = s + 10,
|
|
18
|
+
endI = css.indexOf(";"),
|
|
19
|
+
value = css.slice(startI, endI);
|
|
20
|
+
if (!insertedTransforms[identifier]) return insertedTransforms[identifier] = value, !0;
|
|
21
|
+
}
|
|
22
|
+
function listenForSheetChanges() {
|
|
23
|
+
if (!isClient) return;
|
|
24
|
+
new MutationObserver(entries => {
|
|
25
|
+
for (const entry of entries) if (entry instanceof HTMLStyleElement && entry.sheet || entry instanceof HTMLLinkElement && entry.href.endsWith(".css")) {
|
|
26
|
+
scanAllSheets();
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
}).observe(document.head, {
|
|
30
|
+
childList: !0
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
let lastScannedSheets = null;
|
|
34
|
+
function scanAllSheets(collectThemes = !1, tokens) {
|
|
35
|
+
if (process.env.NODE_ENV === "test" || !isClient) return;
|
|
36
|
+
let themes;
|
|
37
|
+
const sheets = document.styleSheets || [],
|
|
38
|
+
prev = lastScannedSheets,
|
|
39
|
+
current = new Set(sheets);
|
|
40
|
+
if (document.styleSheets) {
|
|
41
|
+
for (const sheet2 of current) if (sheet2) {
|
|
42
|
+
const out = updateSheetStyles(sheet2, !1, collectThemes, tokens);
|
|
43
|
+
out && (themes = out);
|
|
44
|
+
}
|
|
45
|
+
lastScannedSheets = current;
|
|
46
|
+
}
|
|
47
|
+
if (prev) for (const sheet2 of prev) sheet2 && !current.has(sheet2) && updateSheetStyles(sheet2, !0);
|
|
48
|
+
return themes;
|
|
49
|
+
}
|
|
50
|
+
function track(id, remove = !1) {
|
|
51
|
+
const next = (totalSelectorsInserted.get(id) || 0) + (remove ? -1 : 1);
|
|
52
|
+
return totalSelectorsInserted.set(id, next), next;
|
|
53
|
+
}
|
|
54
|
+
const bailAfterEnv = process.env.TAMAGUI_BAIL_AFTER_SCANNING_X_CSS_RULES,
|
|
55
|
+
bailAfter = bailAfterEnv ? +bailAfterEnv : 250;
|
|
56
|
+
function updateSheetStyles(sheet2, remove = !1, collectThemes = !1, tokens) {
|
|
57
|
+
let rules;
|
|
58
|
+
try {
|
|
59
|
+
if (rules = sheet2.cssRules, !rules) return;
|
|
60
|
+
} catch {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const firstSelector = getTamaguiSelector(rules[0], collectThemes)?.[0],
|
|
64
|
+
lastSelector = getTamaguiSelector(rules[rules.length - 1], collectThemes)?.[0],
|
|
65
|
+
cacheKey = `${rules.length}${firstSelector}${lastSelector}`,
|
|
66
|
+
lastScanned = scannedCache.get(sheet2);
|
|
67
|
+
if (!remove && lastScanned === cacheKey) return;
|
|
68
|
+
const len = rules.length;
|
|
69
|
+
let fails = 0,
|
|
70
|
+
dedupedThemes;
|
|
71
|
+
for (let i = 0; i < len; i++) {
|
|
72
|
+
const rule = rules[i];
|
|
73
|
+
if (!(rule instanceof CSSStyleRule)) continue;
|
|
74
|
+
const response = getTamaguiSelector(rule, collectThemes);
|
|
75
|
+
if (response) fails = 0;else {
|
|
76
|
+
if (fails++, fails > bailAfter) return;
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
const [identifier, cssRule, isTheme] = response;
|
|
80
|
+
if (isTheme) {
|
|
81
|
+
const deduped = addThemesFromCSS(cssRule, tokens);
|
|
82
|
+
deduped && (dedupedThemes ||= [], dedupedThemes.push(deduped));
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
const total = track(identifier, remove);
|
|
86
|
+
remove ? total === 0 && delete allSelectors[identifier] : identifier in allSelectors || (!identifier.startsWith("_transform-") || addTransform(identifier, cssRule.cssText, cssRule)) && (allSelectors[identifier] = cssRule.cssText);
|
|
87
|
+
}
|
|
88
|
+
return scannedCache.set(sheet2, cacheKey), dedupedThemes;
|
|
89
|
+
}
|
|
90
|
+
let colorVarToVal,
|
|
91
|
+
rootComputedStyle = null;
|
|
92
|
+
function addThemesFromCSS(cssStyleRule, tokens) {
|
|
93
|
+
const selectors = cssStyleRule.selectorText.split(",");
|
|
94
|
+
if (!selectors.length) return;
|
|
95
|
+
if (tokens && !colorVarToVal) {
|
|
96
|
+
colorVarToVal = {};
|
|
97
|
+
for (const key in tokens.color) {
|
|
98
|
+
const token = tokens.color[key];
|
|
99
|
+
colorVarToVal[token.name] = token.val;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
const rules = (cssStyleRule.cssText || "").slice(cssStyleRule.selectorText.length + 2, -1).trim().split(";"),
|
|
103
|
+
values = {};
|
|
104
|
+
for (const rule of rules) {
|
|
105
|
+
const sepI = rule.indexOf(":");
|
|
106
|
+
if (sepI === -1) continue;
|
|
107
|
+
const key = rule.slice(rule.indexOf("--") + 2, sepI),
|
|
108
|
+
val = rule.slice(sepI + 2);
|
|
109
|
+
let value;
|
|
110
|
+
if (val.startsWith("var(")) {
|
|
111
|
+
const varName = val.slice(6, -1),
|
|
112
|
+
tokenVal = colorVarToVal[varName];
|
|
113
|
+
tokenVal ? value = tokenVal : (rootComputedStyle ||= getComputedStyle(document.body), value = rootComputedStyle.getPropertyValue("--" + varName));
|
|
114
|
+
} else value = val;
|
|
115
|
+
values[key] = createVariable({
|
|
116
|
+
key,
|
|
117
|
+
name: key,
|
|
118
|
+
val: value
|
|
119
|
+
}, !0);
|
|
120
|
+
}
|
|
121
|
+
const dedupedEntry = {
|
|
122
|
+
names: [],
|
|
123
|
+
theme: values
|
|
124
|
+
};
|
|
125
|
+
for (const selector of selectors) {
|
|
126
|
+
const matches = selector.match(/(.t_(light|dark))?[\s]?(.t_([a-z0-9_]+))[\s]*$/i) || [],
|
|
127
|
+
[_0, _1, scheme, _2, name] = matches,
|
|
128
|
+
themeName = name && scheme && scheme !== name ? `${scheme}_${name}` : name || scheme;
|
|
129
|
+
!themeName || dedupedEntry.names.includes(themeName) || themeName === "light_dark" || themeName === "dark_light" || dedupedEntry.names.push(themeName);
|
|
130
|
+
}
|
|
131
|
+
return dedupedEntry;
|
|
132
|
+
}
|
|
133
|
+
function getTamaguiSelector(rule, collectThemes = !1) {
|
|
134
|
+
if (rule instanceof CSSStyleRule) {
|
|
135
|
+
const text = rule.selectorText;
|
|
136
|
+
if (text[0] === ":" && text[1] === "r") {
|
|
137
|
+
if (text.startsWith(":root ._")) return [getIdentifierFromTamaguiSelector(text), rule];
|
|
138
|
+
if (collectThemes && (text.startsWith(":root.t_") || text.startsWith(":root .t_"))) return [text.slice(0, 20),
|
|
139
|
+
// just used as uid
|
|
140
|
+
rule, !0];
|
|
141
|
+
}
|
|
142
|
+
} else if (rule instanceof CSSMediaRule) return rule.cssRules.length > 1 ? void 0 : getTamaguiSelector(rule.cssRules[0]);
|
|
143
|
+
}
|
|
144
|
+
const getIdentifierFromTamaguiSelector = selector => {
|
|
145
|
+
let res = selector.slice(7);
|
|
146
|
+
return selector.includes(":") ? res.replace(/:[a-z]+$/, "") : res;
|
|
147
|
+
},
|
|
148
|
+
sheet = isClient ? document.head.appendChild(document.createElement("style")).sheet : null;
|
|
149
|
+
function updateRules(identifier, rules) {
|
|
150
|
+
return identifier in allRules ? !1 : (allRules[identifier] = rules.join(" "), identifier.startsWith("_transform-") ? addTransform(identifier, rules[0]) : !0);
|
|
151
|
+
}
|
|
152
|
+
function insertStyleRules(rulesToInsert) {
|
|
153
|
+
if (!(!rulesToInsert.length || !sheet)) {
|
|
154
|
+
for (const {
|
|
155
|
+
identifier,
|
|
156
|
+
rules
|
|
157
|
+
} of rulesToInsert) if (shouldInsertStyleRules(identifier)) {
|
|
158
|
+
allSelectors[identifier] = rules.join(`
|
|
159
|
+
`), track(identifier), updateRules(identifier, rules);
|
|
160
|
+
for (const rule of rules) if (process.env.NODE_ENV === "production") sheet.insertRule(rule, sheet.cssRules.length);else try {
|
|
161
|
+
sheet.insertRule(rule, sheet.cssRules.length);
|
|
162
|
+
} catch (err) {
|
|
163
|
+
console.groupCollapsed(`Error inserting rule into CSSStyleSheet: ${String(err)}`), console.info({
|
|
164
|
+
rule,
|
|
165
|
+
rulesToInsert
|
|
166
|
+
}), console.trace(), console.groupEnd();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
const minInsertAmt = process.env.TAMAGUI_INSERT_SELECTOR_TRIES ? +process.env.TAMAGUI_INSERT_SELECTOR_TRIES : 2;
|
|
172
|
+
function shouldInsertStyleRules(identifier) {
|
|
173
|
+
if (process.env.IS_STATIC === "is_static") return !0;
|
|
174
|
+
const total = totalSelectorsInserted.get(identifier);
|
|
175
|
+
return process.env.NODE_ENV === "development" && totalSelectorsInserted.size > +(process.env.TAMAGUI_STYLE_INSERTION_WARNING_LIMIT || 1e4) && console.warn('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'), total === void 0 || total < minInsertAmt;
|
|
176
|
+
}
|
|
177
|
+
export { getAllRules, getAllSelectors, getAllTransforms, insertStyleRules, insertedTransforms, listenForSheetChanges, scanAllSheets, shouldInsertStyleRules, updateRules };
|
|
@@ -108,7 +108,7 @@ function updateSheetStyles(sheet2, remove = !1, collectThemes = !1, tokens) {
|
|
|
108
108
|
continue;
|
|
109
109
|
}
|
|
110
110
|
const total = track(identifier, remove);
|
|
111
|
-
remove ? total === 0 && delete allSelectors[identifier] : identifier in allSelectors || (!identifier.startsWith("_transform") || addTransform(identifier, cssRule.cssText, cssRule)) && (allSelectors[identifier] = cssRule.cssText);
|
|
111
|
+
remove ? total === 0 && delete allSelectors[identifier] : identifier in allSelectors || (!identifier.startsWith("_transform-") || addTransform(identifier, cssRule.cssText, cssRule)) && (allSelectors[identifier] = cssRule.cssText);
|
|
112
112
|
}
|
|
113
113
|
return scannedCache.set(sheet2, cacheKey), dedupedThemes;
|
|
114
114
|
}
|
|
@@ -151,7 +151,7 @@ function addThemesFromCSS(cssStyleRule, tokens) {
|
|
|
151
151
|
};
|
|
152
152
|
for (const selector of selectors) {
|
|
153
153
|
const matches = selector.match(/(.t_(light|dark))?[\s]?(.t_([a-z0-9_]+))[\s]*$/i) || [], [_0, _1, scheme, _2, name] = matches, themeName = name && scheme && scheme !== name ? `${scheme}_${name}` : name || scheme;
|
|
154
|
-
dedupedEntry.names.includes(themeName) || themeName === "light_dark" || dedupedEntry.names.push(themeName);
|
|
154
|
+
!themeName || dedupedEntry.names.includes(themeName) || themeName === "light_dark" || themeName === "dark_light" || dedupedEntry.names.push(themeName);
|
|
155
155
|
}
|
|
156
156
|
return dedupedEntry;
|
|
157
157
|
}
|
|
@@ -177,7 +177,7 @@ const getIdentifierFromTamaguiSelector = (selector) => {
|
|
|
177
177
|
return selector.includes(":") ? res.replace(/:[a-z]+$/, "") : res;
|
|
178
178
|
}, sheet = import_constants.isClient ? document.head.appendChild(document.createElement("style")).sheet : null;
|
|
179
179
|
function updateRules(identifier, rules) {
|
|
180
|
-
return identifier in allRules ? !1 : (allRules[identifier] = rules.join(" "), identifier.startsWith("_transform") ? addTransform(identifier, rules[0]) : !0);
|
|
180
|
+
return identifier in allRules ? !1 : (allRules[identifier] = rules.join(" "), identifier.startsWith("_transform-") ? addTransform(identifier, rules[0]) : !0);
|
|
181
181
|
}
|
|
182
182
|
function insertStyleRules(rulesToInsert) {
|
|
183
183
|
if (!(!rulesToInsert.length || !sheet)) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/insertStyleRule.tsx"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAyB,+BAEzB,wBAA+B;AAW/B,MAAM,eAAe,oBAAI,QAA+B,GAClD,yBAAyB,oBAAI,IAAoB,GACjD,eAAuC,CAAC,GACxC,WAAmC,CAAC,GAC7B,qBAAqB,CAAC,GAEtB,kBAAkB,MAAM,cACxB,cAAc,MAAM,OAAO,OAAO,QAAQ,GAC1C,mBAAmB,MAAM;AAGtC,SAAS,aAAa,YAAoB,KAAa,MAAgB;AACrE,QAAM,IAAI,IAAI,QAAQ,YAAY;AAClC,MAAI,MAAM,IAAI;AACZ,IAAI,QAAQ,IAAI,aAAa,iBAC3B,QAAQ,MAAM,0DAAqD,UAAU,EAAE;AAEjF;AAAA,EACF;AACA,QAAM,SAAS,IAAI,IACb,OAAO,IAAI,QAAQ,GAAG,GACtB,QAAQ,IAAI,MAAM,QAAQ,IAAI;AACpC,MAAI,CAAC,mBAAmB,UAAU;AAChC,8BAAmB,UAAU,IAAI,OAC1B;AAEX;AAWO,SAAS,wBAAwB;AACtC,MAAI,CAAC;AAAU;AAcf,EAZW,IAAI,iBAAiB,CAAC,YAAY;AAC3C,eAAW,SAAS;AAClB,UACG,iBAAiB,oBAAoB,MAAM,SAC3C,iBAAiB,mBAAmB,MAAM,KAAK,SAAS,MAAM,GAC/D;AACA,sBAAc;AACd;AAAA,MACF;AAAA,EAEJ,CAAC,EAEE,QAAQ,SAAS,MAAM;AAAA,IACxB,WAAW;AAAA,EACb,CAAC;AACH;AAEA,IAAI,oBAA+C;AAE5C,SAAS,cACd,gBAAgB,IAChB,QAC2B;AAE3B,MADI,QAAQ,IAAI,aAAa,UACzB,CAAC;AAAU;AAEf,MAAI;AAEJ,QAAM,SAAS,SAAS,eAAe,CAAC,GAClC,OAAO,mBACP,UAAU,IAAI,IAAI,MAAgC;AACxD,MAAI,SAAS,aAAa;AACxB,eAAWA,UAAS;AAClB,UAAIA,QAAO;AACT,cAAM,MAAM,kBAAkBA,QAAO,IAAO,eAAe,MAAM;AACjE,QAAI,QACF,SAAS;AAAA,MAEb;AAEF,wBAAoB;AAAA,EACtB;AAEA,MAAI;AACF,eAAWA,UAAS;AAClB,MAAIA,UAAS,CAAC,QAAQ,IAAIA,MAAK,KAC7B,kBAAkBA,QAAO,EAAI;AAKnC,SAAO;AACT;AAEA,SAAS,MAAM,IAAY,SAAS,IAAO;AACzC,QAAM,QAAQ,uBAAuB,IAAI,EAAE,KAAK,MAAM,SAAS,KAAK;AACpE,gCAAuB,IAAI,IAAI,IAAI,GAC5B;AACT;AAEA,MAAM,eAAe,QAAQ,IAAI,yCAC3B,YAAY,eAAe,CAAC,eAAe;AAEjD,SAAS,kBACPA,QACA,SAAS,IACT,gBAAgB,IAChB,QAC2B;AAzH7B;AA4HE,MAAI;AACJ,MAAI;AAEF,QADA,QAAQA,OAAM,UACV,CAAC;AACH;AAAA,EAEJ,QAAQ;AACN;AAAA,EACF;AAEA,QAAM,iBAAgB,wBAAmB,MAAM,CAAC,GAAG,aAAa,MAA1C,mBAA8C,IAC9D,gBAAe,wBAAmB,MAAM,MAAM,SAAS,CAAC,GAAG,aAAa,MAAzD,mBAA6D,IAC5E,WAAW,GAAG,MAAM,MAAM,GAAG,aAAa,GAAG,YAAY,IACzD,cAAc,aAAa,IAAIA,MAAK;AAE1C,MAAI,CAAC,UAEC,gBAAgB;AAClB;AAIJ,QAAM,MAAM,MAAM;AAClB,MAAI,QAAQ,GAER;AAEJ,WAAS,IAAI,GAAG,IAAI,KAAK,KAAK;AAC5B,UAAM,OAAO,MAAM,CAAC;AACpB,QAAI,EAAE,gBAAgB;AAAe;AAErC,UAAM,WAAW,mBAAmB,MAAM,aAAa;AAEvD,QAAI;AAEF,cAAQ;AAAA,SACH;AAEL,UADA,SACI,QAAQ;AAEV;AAEF;AAAA,IACF;AAEA,UAAM,CAAC,YAAY,SAAS,OAAO,IAAI;AAEvC,QAAI,SAAS;AACX,YAAM,UAAU,iBAAiB,SAAS,MAAM;AAChD,MAAI,YACF,kCAAkB,CAAC,IACnB,cAAc,KAAK,OAAO;AAE5B;AAAA,IACF;AAGA,UAAM,QAAQ,MAAM,YAAY,MAAM;AAEtC,IAAI,SACE,UAAU,KACZ,OAAO,aAAa,UAAU,IAErB,cAAc,iBACL,YAAW,WAAW,aAAa,KAEnD,aAAa,YAAY,QAAQ,SAAS,OAAO,OAGnD,aAAa,UAAU,IAAI,QAAQ;AAAA,EAGzC;AAEA,sBAAa,IAAIA,QAAO,QAAQ,GAEzB;AACT;AAEA,IAAI,eACA,oBAAgD;AAEpD,SAAS,iBAAiB,cAA4B,QAAuB;AAC3E,QAAM,YAAY,aAAa,aAAa,MAAM,GAAG;AAErD,MAAI,CAAC,UAAU;AAAQ;AAEvB,MAAI,UAAU,CAAC,eAAe;AAC5B,oBAAgB,CAAC;AACjB,eAAW,OAAO,OAAO,OAAO;AAC9B,YAAM,QAAQ,OAAO,MAAM,GAAG;AAC9B,oBAAc,MAAM,IAAI,IAAI,MAAM;AAAA,IACpC;AAAA,EACF;AAKA,QAAM,SAHmB,aAAa,WAAW,IAC9C,MAAM,aAAa,aAAa,SAAS,GAAG,EAAE,EAC9C,KAAK,EACsB,MAAM,GAAG,GAGjC,SAAsB,CAAC;AAE7B,aAAW,QAAQ,OAAO;AACxB,UAAM,OAAO,KAAK,QAAQ,GAAG;AAC7B,QAAI,SAAS;AAAI;AACjB,UAAM,MAAM,KAAK,MAAM,KAAK,QAAQ,IAAI,IAAI,GAAG,IAAI,GAC7C,MAAM,KAAK,MAAM,OAAO,CAAC;AAE/B,QAAI;AACJ,QAAI,IAAI,WAAW,MAAM,GAAG;AAE1B,YAAM,UAAU,IAAI,MAAM,GAAG,EAAE,GACzB,WAAW,cAAc,OAAO;AAEtC,MAAI,WACF,QAAQ,YAER,0CAAsB,iBAAiB,SAAS,IAAI,IACpD,QAAQ,kBAAkB,iBAAiB,OAAO,OAAO;AAAA,IAE7D;AACE,cAAQ;AAEV,WAAO,GAAG,QAAI;AAAA,MACZ;AAAA,QACE;AAAA,QACA,MAAM;AAAA,QACN,KAAK;AAAA,MACP;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,QAAM,eAA6B;AAAA,IACjC,OAAO,CAAC;AAAA,IACR,OAAO;AAAA,EACT;AAGA,aAAW,YAAY,WAAW;AAChC,UAAM,UACJ,SAAS,MAAM,iDAAiD,KAC/D,CAAC,GACE,CAAC,IAAI,IAAI,QAAQ,IAAI,IAAI,IAAI,SAC7B,YACJ,QAAQ,UAAU,WAAW,OAAO,GAAG,MAAM,IAAI,IAAI,KAAK,QAAQ;AACpE,IACE,CAAC,aACD,aAAa,MAAM,SAAS,SAAS,KACrC,cAAc,gBACd,cAAc,gBAIhB,aAAa,MAAM,KAAK,SAAS;AAAA,EACnC;AAEA,SAAO;AACT;AAEA,SAAS,mBACP,MACA,gBAAgB,IAC4D;AAC5E,MAAI,gBAAgB,cAAc;AAChC,UAAM,OAAO,KAAK;AAClB,QAAI,KAAK,CAAC,MAAM,OAAO,KAAK,CAAC,MAAM,KAAK;AACtC,UAAI,KAAK,WAAW,UAAU;AAC5B,eAAO,CAAC,iCAAiC,IAAI,GAAG,IAAI;AAEtD,UAAI,kBACE,KAAK,WAAW,UAAU,KAAK,KAAK,WAAW,WAAW;AAC5D,eAAO;AAAA,UACL,KAAK,MAAM,GAAG,EAAE;AAAA;AAAA,UAChB;AAAA,UACA;AAAA,QACF;AAAA,IAGN;AAAA,EACF,WAAW,gBAAgB;AAEzB,WAAI,KAAK,SAAS,SAAS,IAAG,SACvB,mBAAmB,KAAK,SAAS,CAAC,CAAC;AAE9C;AAEA,MAAM,mCAAmC,CAAC,aAAqB;AAC7D,MAAI,MAAM,SAAS,MAAM,CAAC;AAC1B,SAAI,SAAS,SAAS,GAAG,IAChB,IAAI,QAAQ,YAAY,EAAE,IAE5B;AACT,GAEM,QAAQ,4BACV,SAAS,KAAK,YAAY,SAAS,cAAc,OAAO,CAAC,EAAE,QAC3D;AAEG,SAAS,YAAY,YAAoB,OAAiB;AAC/D,SAAI,cAAc,WACT,MAET,SAAS,UAAU,IAAI,MAAM,KAAK,GAAG,GACjC,WAAW,WAAW,aAAa,IAC9B,aAAa,YAAY,MAAM,CAAC,CAAC,IAEnC;AACT;AAEO,SAAS,iBAAiB,eAA8B;AAC7D,MAAI,GAAC,cAAc,UAAU,CAAC;AAI9B,eAAW,EAAE,YAAY,MAAM,KAAK;AAClC,UAAK,uBAAuB,UAAU,GAItC;AAAA,qBAAa,UAAU,IAAI,MAAM,KAAK;AAAA,CAAI,GAC1C,MAAM,UAAU,GAChB,YAAY,YAAY,KAAK;AAE7B,mBAAW,QAAQ;AACjB,cAAI,QAAQ,IAAI,aAAa;AAC3B,kBAAM,WAAW,MAAM,MAAM,SAAS,MAAM;AAAA;AAE5C,gBAAI;AACF,oBAAM,WAAW,MAAM,MAAM,SAAS,MAAM;AAAA,YAC9C,SAAS,KAAK;AACZ,sBAAQ;AAAA,gBACN,4CAA4C,OAAO,GAAG,CAAC;AAAA,cACzD,GACA,QAAQ,KAAK,EAAE,MAAM,cAAc,CAAC,GACpC,QAAQ,MAAM,GACd,QAAQ,SAAS;AAAA,YACnB;AAAA;AAAA;AAIR;AAMA,MAAM,eAAe,QAAQ,IAAI,gCAC7B,CAAC,QAAQ,IAAI,gCACb;AAEG,SAAS,uBAAuB,YAAoB;AACzD,MAAI,QAAQ,IAAI,cAAc;AAC5B,WAAO;AAET,QAAM,QAAQ,uBAAuB,IAAI,UAAU;AAEnD,SAAI,QAAQ,IAAI,aAAa,iBAEzB,uBAAuB,OACvB,EAAE,QAAQ,IAAI,yCAAyC,QAEvD,QAAQ;AAAA,IACN;AAAA,EACF,GAKG,UAAU,UAAa,QAAQ;AACxC;",
|
|
5
5
|
"names": ["sheet"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const matchMedia = typeof window < "u" && window.matchMedia || matchMediaFallback;
|
|
2
|
+
function matchMediaFallback(_) {
|
|
3
|
+
return {
|
|
4
|
+
match: (a, b) => !1,
|
|
5
|
+
addListener() {},
|
|
6
|
+
removeListener() {},
|
|
7
|
+
matches: !1
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
function setupMatchMedia(_) {}
|
|
11
|
+
export { matchMedia, setupMatchMedia };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { mediaKeys } from "../hooks/useMedia.mjs";
|
|
2
|
+
import { pseudoDescriptors } from "./pseudoDescriptors.mjs";
|
|
3
|
+
const mergeProps = (a, b, inverseShorthands) => {
|
|
4
|
+
const out = {};
|
|
5
|
+
for (const key in a) mergeProp(out, a, b, key, inverseShorthands);
|
|
6
|
+
if (b) for (const key in b) mergeProp(out, b, void 0, key, inverseShorthands);
|
|
7
|
+
return out;
|
|
8
|
+
};
|
|
9
|
+
function mergeProp(out, a, b, key, inverseShorthands) {
|
|
10
|
+
const longhand = inverseShorthands?.[key] || null,
|
|
11
|
+
val = a[key];
|
|
12
|
+
if (key in pseudoDescriptors || mediaKeys.has(key)) {
|
|
13
|
+
out[key] = {
|
|
14
|
+
...out[key],
|
|
15
|
+
...val
|
|
16
|
+
};
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
b && (key in b || longhand && longhand in b) || (out[longhand || key] = val);
|
|
20
|
+
}
|
|
21
|
+
export { mergeProps };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const mergeVariants = (parentVariants, ourVariants, level = 0) => {
|
|
2
|
+
const variants = {};
|
|
3
|
+
for (const key in ourVariants) {
|
|
4
|
+
const parentVariant = parentVariants?.[key],
|
|
5
|
+
ourVariant = ourVariants[key];
|
|
6
|
+
!parentVariant || typeof ourVariant == "function" ? variants[key] = ourVariant : parentVariant && !ourVariant ? variants[key] = parentVariant[key] : level === 0 ? variants[key] = mergeVariants(parentVariant, ourVariant, level + 1) : variants[key] = {
|
|
7
|
+
...parentVariant,
|
|
8
|
+
...ourVariant
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
return {
|
|
12
|
+
...parentVariants,
|
|
13
|
+
...variants
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export { mergeVariants };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { normalizeCSSColor, rgba } from "@tamagui/normalize-css-color";
|
|
2
|
+
import { rgba as rgba2 } from "@tamagui/normalize-css-color";
|
|
3
|
+
const normalizeColor = (color, opacity) => {
|
|
4
|
+
if (!color) return;
|
|
5
|
+
if (color[0] === "$" || color.startsWith("var(")) return color;
|
|
6
|
+
const rgba3 = getRgba(color);
|
|
7
|
+
if (rgba3) {
|
|
8
|
+
const colors = `${rgba3.r},${rgba3.g},${rgba3.b}`;
|
|
9
|
+
return opacity === 1 ? `rgb(${colors})` : `rgba(${colors},${opacity ?? rgba3.a ?? 1})`;
|
|
10
|
+
}
|
|
11
|
+
return color;
|
|
12
|
+
},
|
|
13
|
+
getRgba = color => {
|
|
14
|
+
const colorNum = normalizeCSSColor(color);
|
|
15
|
+
if (colorNum != null) return rgba(colorNum);
|
|
16
|
+
};
|
|
17
|
+
export { getRgba, normalizeColor, rgba2 as rgba };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { defaultOffset } from "./defaultOffset.mjs";
|
|
2
|
+
import { getRgba, normalizeColor } from "./normalizeColor.mjs";
|
|
3
|
+
function normalizeShadow({
|
|
4
|
+
shadowColor,
|
|
5
|
+
shadowOffset,
|
|
6
|
+
shadowOpacity,
|
|
7
|
+
shadowRadius
|
|
8
|
+
}) {
|
|
9
|
+
const {
|
|
10
|
+
height,
|
|
11
|
+
width
|
|
12
|
+
} = shadowOffset || defaultOffset;
|
|
13
|
+
return {
|
|
14
|
+
shadowOffset: {
|
|
15
|
+
width: width || 0,
|
|
16
|
+
height: height || 0
|
|
17
|
+
},
|
|
18
|
+
shadowRadius: shadowRadius || 0,
|
|
19
|
+
shadowColor: normalizeColor(shadowColor, 1),
|
|
20
|
+
shadowOpacity: shadowOpacity ?? (shadowColor ? getRgba(shadowColor)?.a : 1)
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export { normalizeShadow };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { expandStyle } from "./expandStyle.mjs";
|
|
2
|
+
import { fixStyles } from "./expandStyles.mjs";
|
|
3
|
+
import { isObj } from "./isObj.mjs";
|
|
4
|
+
import { normalizeValueWithProperty } from "./normalizeValueWithProperty.mjs";
|
|
5
|
+
import { pseudoDescriptors } from "./pseudoDescriptors.mjs";
|
|
6
|
+
function normalizeStyle(style, disableNormalize = !1) {
|
|
7
|
+
const res = {};
|
|
8
|
+
for (let key in style) {
|
|
9
|
+
const prop = style[key];
|
|
10
|
+
if (prop == null) continue;
|
|
11
|
+
if (key in pseudoDescriptors ||
|
|
12
|
+
// this should capture all parent-based styles like media, group, etc
|
|
13
|
+
key[0] === "$" && isObj(prop)) {
|
|
14
|
+
res[key] = normalizeStyle(prop, disableNormalize);
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
const value = disableNormalize ? prop : normalizeValueWithProperty(prop, key),
|
|
18
|
+
out = expandStyle(key, value);
|
|
19
|
+
out ? Object.assign(res, Object.fromEntries(out)) : res[key] = value;
|
|
20
|
+
}
|
|
21
|
+
return fixStyles(res), res;
|
|
22
|
+
}
|
|
23
|
+
export { normalizeStyle };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { isWeb } from "@tamagui/constants";
|
|
2
|
+
import { stylePropsAll, stylePropsUnitless } from "@tamagui/helpers";
|
|
3
|
+
import { getAllSelectors } from "./insertStyleRule.mjs";
|
|
4
|
+
const stylePropsAllPlusTransforms = {
|
|
5
|
+
...stylePropsAll,
|
|
6
|
+
translateX: !0,
|
|
7
|
+
translateY: !0
|
|
8
|
+
};
|
|
9
|
+
function normalizeValueWithProperty(value, property = "") {
|
|
10
|
+
if (!isWeb || stylePropsUnitless[property] || property && !stylePropsAllPlusTransforms[property] || typeof value == "boolean") return value;
|
|
11
|
+
let res = value;
|
|
12
|
+
return value && typeof value == "object" ? value : (typeof value == "number" ? res = `${value}px` : property && (res = `${res}`), res);
|
|
13
|
+
}
|
|
14
|
+
const rcache = {};
|
|
15
|
+
function reverseMapClassNameToValue(key, className) {
|
|
16
|
+
const cssRule = getAllSelectors()[className];
|
|
17
|
+
if (rcache[cssRule]) return rcache[cssRule];
|
|
18
|
+
if (!cssRule) {
|
|
19
|
+
process.env.NODE_ENV === "development" && console.warn(`No CSS rule found for ${key} looking for selector ".${className}", you may not be injecting extracted CSS`);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const cssVal = cssRule.replace(/.*:/, "").replace(/;.*/, "").trim();
|
|
23
|
+
let res;
|
|
24
|
+
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" && Number.isNaN(res) && console.info("Tamagui invalid parsed value, NaN:", {
|
|
25
|
+
res,
|
|
26
|
+
cssVal,
|
|
27
|
+
cssRule,
|
|
28
|
+
key,
|
|
29
|
+
className
|
|
30
|
+
}), res;
|
|
31
|
+
}
|
|
32
|
+
export { normalizeValueWithProperty, reverseMapClassNameToValue };
|
|
@@ -0,0 +1,15 @@
|
|
|
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" && type !== "function") k += type + arg;else if (cache.has(arg)) k += cache.get(arg);else {
|
|
8
|
+
let v = Math.random();
|
|
9
|
+
cache.set(arg, v), k += v;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return k;
|
|
13
|
+
}
|
|
14
|
+
const cache = /* @__PURE__ */new WeakMap();
|
|
15
|
+
export { objectIdentityKey };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/propMapper.ts"],
|
|
4
|
-
"mappings": "AAAA,OAA0B;AAC1B,SAAS,uBAAuB;AAEhC,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["key", "val"]
|
|
6
6
|
}
|