@tamagui/web 1.74.2 → 1.74.4
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/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/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 +4 -4
- package/dist/cjs/hooks/useTheme.js.map +1 -1
- package/dist/cjs/hooks/useTheme.native.js +5 -5
- 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.js.map +1 -1
- 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 +4 -4
- 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/createComponent.tsx +2 -0
- package/src/helpers/propMapper.ts +36 -25
- package/src/hooks/useTheme.tsx +23 -6
- package/src/types.tsx +1 -1
- package/types/createComponent.d.ts.map +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,85 @@
|
|
|
1
|
+
import { isWeb } from "@tamagui/constants";
|
|
2
|
+
import React, {
|
|
3
|
+
Children,
|
|
4
|
+
cloneElement,
|
|
5
|
+
forwardRef,
|
|
6
|
+
isValidElement,
|
|
7
|
+
useMemo,
|
|
8
|
+
useRef
|
|
9
|
+
} from "react";
|
|
10
|
+
import { variableToString } from "../createVariable";
|
|
11
|
+
import { ThemeManagerContext } from "../helpers/ThemeManagerContext";
|
|
12
|
+
import { useChangeThemeEffect } from "../hooks/useTheme";
|
|
13
|
+
import { ThemeDebug } from "./ThemeDebug";
|
|
14
|
+
import { jsx } from "react/jsx-runtime";
|
|
15
|
+
const Theme = forwardRef(function(props, ref) {
|
|
16
|
+
if (props.disable)
|
|
17
|
+
return props.children;
|
|
18
|
+
const isRoot = !!props._isRoot, disableDirectChildTheme = props["disable-child-theme"], themeState = useChangeThemeEffect(props, isRoot), children = useMemo(() => {
|
|
19
|
+
let children2 = disableDirectChildTheme ? Children.map(
|
|
20
|
+
props.children,
|
|
21
|
+
(child) => cloneElement(child, { "data-disable-theme": !0 })
|
|
22
|
+
) : props.children;
|
|
23
|
+
if (ref)
|
|
24
|
+
try {
|
|
25
|
+
React.Children.only(children2), children2 = cloneElement(children2, { ref });
|
|
26
|
+
} catch {
|
|
27
|
+
}
|
|
28
|
+
return process.env.NODE_ENV === "development" && props.debug === "visualize" && (children2 = /* @__PURE__ */ jsx(ThemeDebug, { themeState, themeProps: props, children: children2 })), children2;
|
|
29
|
+
}, [props.children, disableDirectChildTheme]);
|
|
30
|
+
return useThemedChildren(themeState, children, props, isRoot);
|
|
31
|
+
});
|
|
32
|
+
Theme.avoidForwardRef = !0;
|
|
33
|
+
function useThemedChildren(themeState, children, props, isRoot = !1) {
|
|
34
|
+
const { themeManager, isNewTheme } = themeState, { shallow, forceClassName } = props, hasEverThemed = useRef(!1);
|
|
35
|
+
if (isNewTheme && (hasEverThemed.current = !0), !(isNewTheme || props.inverse || hasEverThemed.current || forceClassName || isRoot))
|
|
36
|
+
return children;
|
|
37
|
+
let next = children;
|
|
38
|
+
shallow && themeManager && (next = Children.toArray(children).map((child) => isValidElement(child) ? cloneElement(
|
|
39
|
+
child,
|
|
40
|
+
void 0,
|
|
41
|
+
/* @__PURE__ */ jsx(Theme, { name: themeManager.state.parentName, children: child.props.children })
|
|
42
|
+
) : child));
|
|
43
|
+
const elementsWithContext = themeManager ? /* @__PURE__ */ jsx(ThemeManagerContext.Provider, { value: themeManager, children: next }) : next;
|
|
44
|
+
return forceClassName === !1 ? elementsWithContext : isWeb ? wrapThemeElements({
|
|
45
|
+
children: elementsWithContext,
|
|
46
|
+
themeState,
|
|
47
|
+
forceClassName,
|
|
48
|
+
isRoot
|
|
49
|
+
}) : elementsWithContext;
|
|
50
|
+
}
|
|
51
|
+
function wrapThemeElements({
|
|
52
|
+
children,
|
|
53
|
+
themeState,
|
|
54
|
+
forceClassName,
|
|
55
|
+
isRoot
|
|
56
|
+
}) {
|
|
57
|
+
if (isRoot && forceClassName === !1)
|
|
58
|
+
return children;
|
|
59
|
+
const inverse = themeState.state?.inverse;
|
|
60
|
+
if (!themeState.isNewTheme && !inverse && !forceClassName)
|
|
61
|
+
return /* @__PURE__ */ jsx("span", { className: "_dsp_contents is_Theme", children });
|
|
62
|
+
const themeColor = themeState.state?.theme && themeState.isNewTheme ? variableToString(themeState.state.theme.color) : "", colorStyle = themeColor ? {
|
|
63
|
+
color: themeColor
|
|
64
|
+
} : void 0;
|
|
65
|
+
let className = themeState.state?.className || "";
|
|
66
|
+
isRoot && (className = className.replace("t_sub_theme", ""));
|
|
67
|
+
let themedChildren = /* @__PURE__ */ jsx("span", { className: `${className} _dsp_contents is_Theme`, style: colorStyle, children });
|
|
68
|
+
if (inverse != null || forceClassName) {
|
|
69
|
+
const name = themeState.state?.name || "";
|
|
70
|
+
themedChildren = /* @__PURE__ */ jsx(
|
|
71
|
+
"span",
|
|
72
|
+
{
|
|
73
|
+
className: `${name.startsWith("light") ? "t_light" : name.startsWith("dark") ? "t_dark" : ""} _dsp_contents ${inverse ? "is_inversed" : ""}`,
|
|
74
|
+
children: themedChildren
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
return themedChildren;
|
|
79
|
+
}
|
|
80
|
+
export {
|
|
81
|
+
Theme,
|
|
82
|
+
useThemedChildren,
|
|
83
|
+
wrapThemeElements
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=Theme.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["children"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { isClient } from "@tamagui/constants";
|
|
2
|
+
import { useLayoutEffect } from "react";
|
|
3
|
+
import { THEME_CLASSNAME_PREFIX } from "../constants/constants";
|
|
4
|
+
import { Theme } from "./Theme";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
const ThemeProvider = (props) => (isClient && useLayoutEffect(() => {
|
|
7
|
+
if (props.disableRootThemeClass)
|
|
8
|
+
return;
|
|
9
|
+
const cn = `${THEME_CLASSNAME_PREFIX}${props.defaultTheme}`, target = props.themeClassNameOnRoot ? document.documentElement : document.body;
|
|
10
|
+
return target.classList.add(cn), () => {
|
|
11
|
+
target.classList.remove(cn);
|
|
12
|
+
};
|
|
13
|
+
}, [props.defaultTheme, props.disableRootThemeClass, props.themeClassNameOnRoot]), /* @__PURE__ */ jsx(
|
|
14
|
+
Theme,
|
|
15
|
+
{
|
|
16
|
+
className: props.className,
|
|
17
|
+
name: props.defaultTheme,
|
|
18
|
+
forceClassName: !props.disableRootThemeClass,
|
|
19
|
+
_isRoot: !0,
|
|
20
|
+
children: props.children
|
|
21
|
+
}
|
|
22
|
+
));
|
|
23
|
+
export {
|
|
24
|
+
ThemeProvider
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=ThemeProvider.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/views/ThemeProvider.tsx"],
|
|
4
|
+
"mappings": "AAAA,SAAS,gBAAgB;AACzB,SAAS,uBAAuB;AAEhC,SAAS,8BAA8B;AACvC,SAAS,aAAa;AA0BlB;AAfG,MAAM,gBAAgB,CAAC,WAExB,YACF,gBAAgB,MAAM;AACpB,MAAI,MAAM;AAAuB;AACjC,QAAM,KAAK,GAAG,sBAAsB,GAAG,MAAM,YAAY,IACnD,SAAS,MAAM,uBAAuB,SAAS,kBAAkB,SAAS;AAChF,gBAAO,UAAU,IAAI,EAAE,GAChB,MAAM;AACX,WAAO,UAAU,OAAO,EAAE;AAAA,EAC5B;AACF,GAAG,CAAC,MAAM,cAAc,MAAM,uBAAuB,MAAM,oBAAoB,CAAC,GAIhF;AAAA,EAAC;AAAA;AAAA,IACC,WAAW,MAAM;AAAA,IACjB,MAAM,MAAM;AAAA,IAEZ,gBAAgB,CAAC,MAAM;AAAA,IAEvB,SAAO;AAAA,IAEN,gBAAM;AAAA;AACT;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { validStyles } from "@tamagui/helpers";
|
|
2
|
+
import { createComponent } from "../createComponent";
|
|
3
|
+
const View = createComponent({
|
|
4
|
+
acceptsClassName: !0,
|
|
5
|
+
defaultProps: {
|
|
6
|
+
display: "flex"
|
|
7
|
+
},
|
|
8
|
+
validStyles
|
|
9
|
+
});
|
|
10
|
+
export {
|
|
11
|
+
View
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=View.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/web",
|
|
3
|
-
"version": "1.74.
|
|
3
|
+
"version": "1.74.4",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -27,19 +27,19 @@
|
|
|
27
27
|
"reset.css"
|
|
28
28
|
],
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@tamagui/compose-refs": "1.74.
|
|
31
|
-
"@tamagui/constants": "1.74.
|
|
32
|
-
"@tamagui/helpers": "1.74.
|
|
33
|
-
"@tamagui/normalize-css-color": "1.74.
|
|
34
|
-
"@tamagui/timer": "1.74.
|
|
35
|
-
"@tamagui/use-did-finish-ssr": "1.74.
|
|
36
|
-
"@tamagui/use-force-update": "1.74.
|
|
30
|
+
"@tamagui/compose-refs": "1.74.4",
|
|
31
|
+
"@tamagui/constants": "1.74.4",
|
|
32
|
+
"@tamagui/helpers": "1.74.4",
|
|
33
|
+
"@tamagui/normalize-css-color": "1.74.4",
|
|
34
|
+
"@tamagui/timer": "1.74.4",
|
|
35
|
+
"@tamagui/use-did-finish-ssr": "1.74.4",
|
|
36
|
+
"@tamagui/use-force-update": "1.74.4"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"react": "*"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@tamagui/build": "1.74.
|
|
42
|
+
"@tamagui/build": "1.74.4",
|
|
43
43
|
"@testing-library/react": "^14.0.0",
|
|
44
44
|
"csstype": "^3.0.10",
|
|
45
45
|
"react": "^18.2.0",
|
package/src/createComponent.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isAndroid
|
|
1
|
+
import { isAndroid } from '@tamagui/constants'
|
|
2
2
|
import { tokenCategories } from '@tamagui/helpers'
|
|
3
3
|
|
|
4
4
|
import { getConfig } from '../config'
|
|
@@ -8,7 +8,6 @@ import type {
|
|
|
8
8
|
GetStyleState,
|
|
9
9
|
PropMapper,
|
|
10
10
|
ResolveVariableAs,
|
|
11
|
-
SplitStyleProps,
|
|
12
11
|
StyleResolver,
|
|
13
12
|
TamaguiInternalConfig,
|
|
14
13
|
VariantSpreadFunction,
|
|
@@ -81,7 +80,7 @@ export const propMapper: PropMapper = (key, value, styleStateIn, subPropsIn) =>
|
|
|
81
80
|
if (value[0] === '$') {
|
|
82
81
|
value = getTokenForKey(key, value, styleProps.resolveValues, styleState)
|
|
83
82
|
} else if (isVariable(value)) {
|
|
84
|
-
value = resolveVariableValue(value, styleProps.resolveValues)
|
|
83
|
+
value = resolveVariableValue(key, value, styleProps.resolveValues)
|
|
85
84
|
}
|
|
86
85
|
}
|
|
87
86
|
|
|
@@ -228,27 +227,27 @@ const resolveTokensAndVariants: StyleResolver<Object> = (
|
|
|
228
227
|
console.log(` - resolveTokensAndVariants`, key, value)
|
|
229
228
|
}
|
|
230
229
|
|
|
231
|
-
for (const
|
|
232
|
-
const
|
|
233
|
-
const val = value[
|
|
230
|
+
for (const _key in value) {
|
|
231
|
+
const subKey = conf.shorthands[_key] || _key
|
|
232
|
+
const val = value[_key]
|
|
234
233
|
|
|
235
234
|
if (styleProps.noExpand) {
|
|
236
|
-
res[
|
|
235
|
+
res[subKey] = val
|
|
237
236
|
} else {
|
|
238
|
-
if (variants &&
|
|
237
|
+
if (variants && subKey in variants) {
|
|
239
238
|
// if its a variant expanded, attach to curProps
|
|
240
|
-
styleState.curProps[
|
|
239
|
+
styleState.curProps[subKey] = val
|
|
241
240
|
|
|
242
241
|
// avoids infinite loop if variant is matching a style prop
|
|
243
242
|
// eg: { variants: { flex: { true: { flex: 2 } } } }
|
|
244
243
|
if (parentVariantKey && parentVariantKey === key) {
|
|
245
|
-
res[
|
|
244
|
+
res[subKey] =
|
|
246
245
|
// SYNC WITH *1
|
|
247
246
|
val[0] === '$'
|
|
248
|
-
? getTokenForKey(
|
|
247
|
+
? getTokenForKey(subKey, val, styleProps.resolveValues, styleState)
|
|
249
248
|
: val
|
|
250
249
|
} else {
|
|
251
|
-
const variantOut = resolveVariants(
|
|
250
|
+
const variantOut = resolveVariants(subKey, val, styleProps, styleState, key)
|
|
252
251
|
|
|
253
252
|
// apply, merging sub-styles
|
|
254
253
|
if (variantOut) {
|
|
@@ -268,7 +267,7 @@ const resolveTokensAndVariants: StyleResolver<Object> = (
|
|
|
268
267
|
}
|
|
269
268
|
|
|
270
269
|
if (isVariable(val)) {
|
|
271
|
-
res[
|
|
270
|
+
res[subKey] = resolveVariableValue(subKey, val, styleProps.resolveValues)
|
|
272
271
|
continue
|
|
273
272
|
}
|
|
274
273
|
|
|
@@ -276,32 +275,38 @@ const resolveTokensAndVariants: StyleResolver<Object> = (
|
|
|
276
275
|
const fVal =
|
|
277
276
|
// SYNC WITH *1
|
|
278
277
|
val[0] === '$'
|
|
279
|
-
? getTokenForKey(
|
|
278
|
+
? getTokenForKey(subKey, val, styleProps.resolveValues, styleState)
|
|
280
279
|
: val
|
|
281
|
-
|
|
280
|
+
|
|
281
|
+
res[subKey] = fVal
|
|
282
282
|
continue
|
|
283
283
|
}
|
|
284
284
|
|
|
285
285
|
if (isObj(val)) {
|
|
286
|
-
const subObject = resolveTokensAndVariants(
|
|
286
|
+
const subObject = resolveTokensAndVariants(subKey, val, styleProps, styleState, key)
|
|
287
287
|
|
|
288
288
|
if (process.env.NODE_ENV === 'development' && debug === 'verbose') {
|
|
289
289
|
// biome-ignore lint/suspicious/noConsoleLog: <explanation>
|
|
290
|
-
console.log(`object`,
|
|
290
|
+
console.log(`object`, subKey, subObject)
|
|
291
291
|
}
|
|
292
292
|
|
|
293
293
|
// sub-objects: media queries, pseudos, shadowOffset
|
|
294
|
-
res[
|
|
295
|
-
Object.assign(res[
|
|
294
|
+
res[subKey] ??= {}
|
|
295
|
+
Object.assign(res[subKey], subObject)
|
|
296
296
|
} else {
|
|
297
297
|
// nullish values cant be tokens, need no extra parsing
|
|
298
|
-
res[
|
|
298
|
+
res[subKey] = val
|
|
299
299
|
}
|
|
300
300
|
|
|
301
301
|
if (process.env.NODE_ENV === 'development') {
|
|
302
302
|
if (debug) {
|
|
303
|
-
if (res[
|
|
304
|
-
console.warn(
|
|
303
|
+
if (res[subKey]?.[0] === '$') {
|
|
304
|
+
console.warn(
|
|
305
|
+
`⚠️ Missing token in theme ${theme.name}:`,
|
|
306
|
+
subKey,
|
|
307
|
+
res[subKey],
|
|
308
|
+
theme
|
|
309
|
+
)
|
|
305
310
|
}
|
|
306
311
|
}
|
|
307
312
|
}
|
|
@@ -418,7 +423,7 @@ export const getTokenForKey = (
|
|
|
418
423
|
}
|
|
419
424
|
|
|
420
425
|
if (hasSet) {
|
|
421
|
-
const out = resolveVariableValue(valOrVar, resolveAs)
|
|
426
|
+
const out = resolveVariableValue(key, valOrVar, resolveAs)
|
|
422
427
|
if (process.env.NODE_ENV === 'development' && styleState.debug === 'verbose') {
|
|
423
428
|
// biome-ignore lint/suspicious/noConsoleLog: <explanation>
|
|
424
429
|
console.log(`resolved`, resolveAs, valOrVar.get, out)
|
|
@@ -441,6 +446,7 @@ export const getTokenForKey = (
|
|
|
441
446
|
}
|
|
442
447
|
|
|
443
448
|
function resolveVariableValue(
|
|
449
|
+
key: string,
|
|
444
450
|
valOrVar: Variable | any,
|
|
445
451
|
resolveValues?: ResolveVariableAs
|
|
446
452
|
) {
|
|
@@ -451,9 +457,14 @@ function resolveVariableValue(
|
|
|
451
457
|
}
|
|
452
458
|
// @ts-expect-error this is fine until we can type better
|
|
453
459
|
const get = valOrVar.get
|
|
454
|
-
|
|
455
|
-
|
|
460
|
+
|
|
461
|
+
// shadowColor doesn't support dynamic style
|
|
462
|
+
if (process.env.TAMAGUI_TARGET !== 'native' || key !== 'shadowColor') {
|
|
463
|
+
if (typeof get === 'function') {
|
|
464
|
+
return get(resolveValues === 'web' ? 'web' : undefined)
|
|
465
|
+
}
|
|
456
466
|
}
|
|
467
|
+
|
|
457
468
|
return process.env.TAMAGUI_TARGET === 'native' ? valOrVar.val : valOrVar.variable
|
|
458
469
|
}
|
|
459
470
|
return valOrVar
|
package/src/hooks/useTheme.tsx
CHANGED
|
@@ -40,7 +40,19 @@ function getDefaultThemeProxied() {
|
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
export type ThemeGettable<Val> = Val & {
|
|
43
|
-
|
|
43
|
+
/**
|
|
44
|
+
* Tries to return an optimized value that avoids the need for re-rendering:
|
|
45
|
+
* On web a CSS variable, on iOS a dynamic color, on Android it doesn't
|
|
46
|
+
* optimize and returns the underyling value.
|
|
47
|
+
*
|
|
48
|
+
* See: https://reactnative.dev/docs/dynamiccolorios
|
|
49
|
+
*
|
|
50
|
+
* @param platform when "web" it will only return the dynamic value for web, avoiding the iOS dynamic value.
|
|
51
|
+
* For things like SVG, gradients, or other external components that don't support it, use this option.
|
|
52
|
+
*/
|
|
53
|
+
get: (
|
|
54
|
+
platform?: 'web'
|
|
55
|
+
) =>
|
|
44
56
|
| string
|
|
45
57
|
| (Val extends Variable<infer X>
|
|
46
58
|
? X extends VariableValGeneric
|
|
@@ -179,13 +191,18 @@ export function getThemeProxied(
|
|
|
179
191
|
// always track .val
|
|
180
192
|
track(keyString)
|
|
181
193
|
} else if (subkey === 'get') {
|
|
182
|
-
return () => {
|
|
194
|
+
return (platform?: 'web') => {
|
|
183
195
|
const outVal = getVariable(val)
|
|
184
196
|
|
|
185
197
|
if (process.env.TAMAGUI_TARGET === 'native') {
|
|
186
198
|
// ios can avoid re-rendering in some cases when we are using a root light/dark
|
|
187
199
|
// disabled in cases where we have animations
|
|
188
|
-
if (
|
|
200
|
+
if (
|
|
201
|
+
platform !== 'web' &&
|
|
202
|
+
isIos &&
|
|
203
|
+
!deopt &&
|
|
204
|
+
config.settings.fastSchemeChange
|
|
205
|
+
) {
|
|
189
206
|
const isDark = name.startsWith('dark')
|
|
190
207
|
const isLight = !isDark && name.startsWith('light')
|
|
191
208
|
if (isDark || isLight) {
|
|
@@ -317,13 +334,13 @@ export const useChangeThemeEffect = (
|
|
|
317
334
|
? props['disable-child-theme']
|
|
318
335
|
: undefined)
|
|
319
336
|
|
|
320
|
-
const
|
|
337
|
+
const shouldTryUpdate = force ?? Boolean(keys?.length || isNewTheme)
|
|
321
338
|
|
|
322
339
|
if (process.env.NODE_ENV === 'development' && props.debug) {
|
|
323
340
|
// biome-ignore lint/suspicious/noConsoleLog: <explanation>
|
|
324
341
|
console.log(` 🔸 onChange`, themeManager.id, {
|
|
325
342
|
force,
|
|
326
|
-
|
|
343
|
+
shouldTryUpdate,
|
|
327
344
|
props,
|
|
328
345
|
name,
|
|
329
346
|
manager,
|
|
@@ -331,7 +348,7 @@ export const useChangeThemeEffect = (
|
|
|
331
348
|
})
|
|
332
349
|
}
|
|
333
350
|
|
|
334
|
-
if (
|
|
351
|
+
if (shouldTryUpdate) {
|
|
335
352
|
setThemeState(createState)
|
|
336
353
|
}
|
|
337
354
|
}, themeManager.id)
|
package/src/types.tsx
CHANGED
|
@@ -1841,7 +1841,7 @@ export type TamaguiComponentState = {
|
|
|
1841
1841
|
group?: Record<string, GroupState>
|
|
1842
1842
|
}
|
|
1843
1843
|
|
|
1844
|
-
export type ResolveVariableAs = 'auto' | 'value' | 'variable' | 'none'
|
|
1844
|
+
export type ResolveVariableAs = 'auto' | 'value' | 'variable' | 'none' | 'web'
|
|
1845
1845
|
|
|
1846
1846
|
export type SplitStyleProps = {
|
|
1847
1847
|
mediaState?: Record<string, boolean>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAIA,OAAO,KAaN,MAAM,OAAO,CAAA;AAsBd,OAAO,EAEL,SAAS,EAKT,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,gBAAgB,EAGhB,cAAc,EAEd,SAAS,EAMV,MAAM,SAAS,CAAA;AAoBhB,eAAO,MAAM,QAAQ,eAAsB,CAAA;AA6D3C,wBAAgB,eAAe,CAC7B,kBAAkB,SAAS,UAAU,GAAG,SAAS,GAAG,EAAE,EACtD,GAAG,GAAG,cAAc,EACpB,SAAS,GAAG,KAAK,EACjB,YAAY,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAIA,OAAO,KAaN,MAAM,OAAO,CAAA;AAsBd,OAAO,EAEL,SAAS,EAKT,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,gBAAgB,EAGhB,cAAc,EAEd,SAAS,EAMV,MAAM,SAAS,CAAA;AAoBhB,eAAO,MAAM,QAAQ,eAAsB,CAAA;AA6D3C,wBAAgB,eAAe,CAC7B,kBAAkB,SAAS,UAAU,GAAG,SAAS,GAAG,EAAE,EACtD,GAAG,GAAG,cAAc,EACpB,SAAS,GAAG,KAAK,EACjB,YAAY,EAAE,YAAY,4DAkrC3B;AAoBD,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,OAEjD;AAiBD,eAAO,MAAM,MAAM,0DAqCjB,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC5B,SAAS,CAAC,EAAE,cAAc,CAAA;IAC1B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB,CAAA;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,mBAkGxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"propMapper.d.ts","sourceRoot":"","sources":["../../src/helpers/propMapper.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,iBAAiB,
|
|
1
|
+
{"version":3,"file":"propMapper.d.ts","sourceRoot":"","sources":["../../src/helpers/propMapper.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,iBAAiB,EAEjB,qBAAqB,EAEtB,MAAM,UAAU,CAAA;AAOjB,eAAO,MAAM,UAAU,EAAE,UAqExB,CAAA;AAgGD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,sBAkBtF;AAMD,eAAO,MAAM,uBAAuB,cAAe,GAAG,QAErD,CAAA;AA6ID,eAAO,MAAM,cAAc,QACpB,MAAM,SACJ,MAAM,wDAED,QAAQ,aAAa,CAAC,QAyFnC,CAAA"}
|
|
@@ -8,7 +8,17 @@ export type ChangedThemeResponse = {
|
|
|
8
8
|
mounted?: boolean;
|
|
9
9
|
};
|
|
10
10
|
export type ThemeGettable<Val> = Val & {
|
|
11
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Tries to return an optimized value that avoids the need for re-rendering:
|
|
13
|
+
* On web a CSS variable, on iOS a dynamic color, on Android it doesn't
|
|
14
|
+
* optimize and returns the underyling value.
|
|
15
|
+
*
|
|
16
|
+
* See: https://reactnative.dev/docs/dynamiccolorios
|
|
17
|
+
*
|
|
18
|
+
* @param platform when "web" it will only return the dynamic value for web, avoiding the iOS dynamic value.
|
|
19
|
+
* For things like SVG, gradients, or other external components that don't support it, use this option.
|
|
20
|
+
*/
|
|
21
|
+
get: (platform?: 'web') => string | (Val extends Variable<infer X> ? X extends VariableValGeneric ? any : Exclude<X, Variable> : Val extends VariableVal ? string | number : unknown);
|
|
12
22
|
};
|
|
13
23
|
export type UseThemeResult = {
|
|
14
24
|
[Key in keyof ThemeParsed]: ThemeGettable<ThemeParsed[Key]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/hooks/useTheme.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAe,MAAM,mBAAmB,CAAA;AAEzD,OAAO,EACL,YAAY,EACZ,iBAAiB,EAElB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EACnB,MAAM,UAAU,CAAA;AAGjB,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,iBAAiB,CAAA;IACzB,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAcD,MAAM,MAAM,aAAa,CAAC,GAAG,IAAI,GAAG,GAAG;IACrC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/hooks/useTheme.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAe,MAAM,mBAAmB,CAAA;AAEzD,OAAO,EACL,YAAY,EACZ,iBAAiB,EAElB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EACnB,MAAM,UAAU,CAAA;AAGjB,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,iBAAiB,CAAA;IACzB,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;IAClC,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAcD,MAAM,MAAM,aAAa,CAAC,GAAG,IAAI,GAAG,GAAG;IACrC;;;;;;;;;OASG;IACH,GAAG,EAAE,CACH,QAAQ,CAAC,EAAE,KAAK,KAEd,MAAM,GACN,CAAC,GAAG,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAC1B,CAAC,SAAS,kBAAkB,GAC1B,GAAG,GACH,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,GACtB,GAAG,SAAS,WAAW,GACvB,MAAM,GAAG,MAAM,GACf,OAAO,CAAC,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;KAC1B,GAAG,IAAI,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;CAC5D,CAAA;AAED,eAAO,MAAM,QAAQ,WAAW,UAAU,mBAIzC,CAAA;AAED,eAAO,MAAM,iBAAiB,UACrB,sBAAsB,KAC5B,CAAC,oBAAoB,EAAE,WAAW,CAyDpC,CAAA;AAED,wBAAgB,eAAe,CAC7B,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAClC,KAAK,UAAQ,EACb,YAAY,CAAC,EAAE,YAAY,EAC3B,IAAI,CAAC,EAAE,MAAM,EAAE,EACf,KAAK,CAAC,EAAE,SAAS,GAChB,cAAc,CAqGhB;AAED,eAAO,MAAM,mBAAmB,mBAA0B,CAAA;AAE1D,eAAO,MAAM,oBAAoB,UACxB,sBAAsB,2BAEtB,MAAM,EAAE,iBACA,MAAM,OAAO,GAAG,SAAS,KACvC,oBAwPF,CAAA"}
|
package/types/types.d.ts
CHANGED
|
@@ -960,7 +960,7 @@ export type TamaguiComponentState = {
|
|
|
960
960
|
};
|
|
961
961
|
group?: Record<string, GroupState>;
|
|
962
962
|
};
|
|
963
|
-
export type ResolveVariableAs = 'auto' | 'value' | 'variable' | 'none';
|
|
963
|
+
export type ResolveVariableAs = 'auto' | 'value' | 'variable' | 'none' | 'web';
|
|
964
964
|
export type SplitStyleProps = {
|
|
965
965
|
mediaState?: Record<string, boolean>;
|
|
966
966
|
noClassNames?: boolean;
|