@tamagui/core 1.0.0-beta.181 → 1.0.0-beta.193
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/Tamagui.js +0 -0
- package/dist/cjs/Tamagui.js.map +0 -0
- package/dist/cjs/ThemeContext.js +0 -0
- package/dist/cjs/ThemeContext.js.map +0 -0
- package/dist/cjs/ThemeManager.js +0 -0
- package/dist/cjs/ThemeManager.js.map +0 -0
- package/dist/cjs/conf.js +0 -0
- package/dist/cjs/conf.js.map +0 -0
- package/dist/cjs/constants/constants.js +0 -0
- package/dist/cjs/constants/constants.js.map +0 -0
- package/dist/cjs/constants/platform.js +3 -0
- package/dist/cjs/constants/platform.js.map +2 -2
- package/dist/cjs/constants/rnw.js +0 -0
- package/dist/cjs/constants/rnw.js.map +0 -0
- package/dist/cjs/contexts/ButtonInsideButtonContext.js +0 -0
- package/dist/cjs/contexts/ButtonInsideButtonContext.js.map +0 -0
- package/dist/cjs/createComponent.js +5 -3
- package/dist/cjs/createComponent.js.map +2 -2
- package/dist/cjs/createFont.js +0 -0
- package/dist/cjs/createFont.js.map +0 -0
- package/dist/cjs/createShorthands.js +0 -0
- package/dist/cjs/createShorthands.js.map +0 -0
- package/dist/cjs/createTamagui.js +26 -18
- package/dist/cjs/createTamagui.js.map +2 -2
- package/dist/cjs/createTheme.js +0 -0
- package/dist/cjs/createTheme.js.map +0 -0
- package/dist/cjs/createTokens.js +2 -6
- package/dist/cjs/createTokens.js.map +2 -2
- package/dist/cjs/createVariable.js +9 -2
- package/dist/cjs/createVariable.js.map +2 -2
- package/dist/cjs/defaultComponentState.js +0 -0
- package/dist/cjs/defaultComponentState.js.map +0 -0
- package/dist/cjs/helpers/RNComponents.js +0 -0
- package/dist/cjs/helpers/RNComponents.js.map +0 -0
- package/dist/cjs/helpers/addStylesUsingClassname.js +0 -0
- package/dist/cjs/helpers/addStylesUsingClassname.js.map +0 -0
- package/dist/cjs/helpers/areEqualSets.js +0 -0
- package/dist/cjs/helpers/areEqualSets.js.map +0 -0
- package/dist/cjs/helpers/createMediaStyle.js +0 -0
- package/dist/cjs/helpers/createMediaStyle.js.map +0 -0
- package/dist/cjs/helpers/createPropMapper.js +9 -8
- package/dist/cjs/helpers/createPropMapper.js.map +2 -2
- package/dist/cjs/helpers/createShallowUpdate.js +0 -0
- package/dist/cjs/helpers/createShallowUpdate.js.map +0 -0
- package/dist/cjs/helpers/createTamaguiProvider.js +0 -0
- package/dist/cjs/helpers/createTamaguiProvider.js.map +0 -0
- package/dist/cjs/helpers/extendStaticConfig.js +1 -0
- package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
- package/dist/cjs/helpers/fixNativeShadow.js +0 -0
- package/dist/cjs/helpers/fixNativeShadow.js.map +0 -0
- package/dist/cjs/helpers/fixNativeShadow.native.js +0 -0
- package/dist/cjs/helpers/fixNativeShadow.native.js.map +0 -0
- package/dist/cjs/helpers/getExpandedShorthands.js +0 -0
- package/dist/cjs/helpers/getExpandedShorthands.js.map +0 -0
- package/dist/cjs/helpers/getSplitStyles.js +33 -30
- package/dist/cjs/helpers/getSplitStyles.js.map +2 -2
- package/dist/cjs/helpers/getStylesAtomic.js +0 -0
- package/dist/cjs/helpers/getStylesAtomic.js.map +0 -0
- package/dist/cjs/helpers/getStylesAtomic.native.js +0 -0
- package/dist/cjs/helpers/getStylesAtomic.native.js.map +0 -0
- package/dist/cjs/helpers/insertStyleRule.js +1 -1
- package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
- package/dist/cjs/helpers/isObj.js +0 -0
- package/dist/cjs/helpers/isObj.js.map +0 -0
- package/dist/cjs/helpers/isTamaguiElement.js +0 -0
- package/dist/cjs/helpers/isTamaguiElement.js.map +0 -0
- package/dist/cjs/helpers/matchMedia.js +0 -0
- package/dist/cjs/helpers/matchMedia.js.map +0 -0
- package/dist/cjs/helpers/matchMedia.native.js +0 -0
- package/dist/cjs/helpers/matchMedia.native.js.map +0 -0
- package/dist/cjs/helpers/proxyThemeVariables.js +40 -0
- package/dist/cjs/helpers/proxyThemeVariables.js.map +7 -0
- package/dist/cjs/helpers/themeable.js +0 -1
- package/dist/cjs/helpers/themeable.js.map +2 -2
- package/dist/cjs/helpers/validate.js +14 -13
- package/dist/cjs/helpers/validate.js.map +2 -2
- package/dist/cjs/helpers/withStaticProperties.js +0 -0
- package/dist/cjs/helpers/withStaticProperties.js.map +0 -0
- package/dist/cjs/helpers/wrapThemeManagerContext.js +0 -0
- package/dist/cjs/helpers/wrapThemeManagerContext.js.map +0 -0
- package/dist/cjs/hooks/useConstant.js +0 -0
- package/dist/cjs/hooks/useConstant.js.map +0 -0
- package/dist/cjs/hooks/useFeatures.js +0 -0
- package/dist/cjs/hooks/useFeatures.js.map +0 -0
- package/dist/cjs/hooks/useIsMounted.js +0 -0
- package/dist/cjs/hooks/useIsMounted.js.map +0 -0
- package/dist/cjs/hooks/useIsTouchDevice.js +0 -0
- package/dist/cjs/hooks/useIsTouchDevice.js.map +0 -0
- package/dist/cjs/hooks/useMedia.js +0 -0
- package/dist/cjs/hooks/useMedia.js.map +0 -0
- package/dist/cjs/hooks/usePressable.js +0 -0
- package/dist/cjs/hooks/usePressable.js.map +0 -0
- package/dist/cjs/hooks/useTheme.js +14 -16
- package/dist/cjs/hooks/useTheme.js.map +2 -2
- package/dist/cjs/hooks/useUnmountEffect.js +0 -0
- package/dist/cjs/hooks/useUnmountEffect.js.map +0 -0
- package/dist/cjs/index.js +0 -0
- package/dist/cjs/index.js.map +0 -0
- package/dist/cjs/static.js +3 -0
- package/dist/cjs/static.js.map +2 -2
- package/dist/cjs/styled.js +0 -0
- package/dist/cjs/styled.js.map +0 -0
- package/dist/cjs/types-rnw.js +0 -0
- package/dist/cjs/types-rnw.js.map +0 -0
- package/dist/cjs/types.js +0 -0
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/views/Stack.js +0 -0
- package/dist/cjs/views/Stack.js.map +0 -0
- package/dist/cjs/views/Text.js +0 -0
- package/dist/cjs/views/Text.js.map +0 -0
- package/dist/cjs/views/TextAncestorContext.js +0 -0
- package/dist/cjs/views/TextAncestorContext.js.map +0 -0
- package/dist/cjs/views/Theme.js +0 -3
- package/dist/cjs/views/Theme.js.map +2 -2
- package/dist/cjs/views/ThemeInverse.js +0 -0
- package/dist/cjs/views/ThemeInverse.js.map +0 -0
- package/dist/cjs/views/ThemeProvider.js +0 -0
- package/dist/cjs/views/ThemeProvider.js.map +0 -0
- package/dist/cjs/views/ThemeReset.js +0 -0
- package/dist/cjs/views/ThemeReset.js.map +0 -0
- package/dist/esm/Tamagui.js +0 -0
- package/dist/esm/Tamagui.js.map +0 -0
- package/dist/esm/ThemeContext.js +0 -0
- package/dist/esm/ThemeContext.js.map +0 -0
- package/dist/esm/ThemeManager.js +0 -0
- package/dist/esm/ThemeManager.js.map +0 -0
- package/dist/esm/conf.js +0 -0
- package/dist/esm/conf.js.map +0 -0
- package/dist/esm/constants/constants.js +0 -0
- package/dist/esm/constants/constants.js.map +0 -0
- package/dist/esm/constants/platform.js +2 -0
- package/dist/esm/constants/platform.js.map +2 -2
- package/dist/esm/constants/rnw.js +0 -0
- package/dist/esm/constants/rnw.js.map +0 -0
- package/dist/esm/contexts/ButtonInsideButtonContext.js +0 -0
- package/dist/esm/contexts/ButtonInsideButtonContext.js.map +0 -0
- package/dist/esm/createComponent.js +5 -3
- package/dist/esm/createComponent.js.map +2 -2
- package/dist/esm/createFont.js +0 -0
- package/dist/esm/createFont.js.map +0 -0
- package/dist/esm/createShorthands.js +0 -0
- package/dist/esm/createShorthands.js.map +0 -0
- package/dist/esm/createTamagui.js +26 -18
- package/dist/esm/createTamagui.js.map +2 -2
- package/dist/esm/createTheme.js +0 -0
- package/dist/esm/createTheme.js.map +0 -0
- package/dist/esm/createTokens.js +2 -6
- package/dist/esm/createTokens.js.map +2 -2
- package/dist/esm/createVariable.js +8 -2
- package/dist/esm/createVariable.js.map +2 -2
- package/dist/esm/defaultComponentState.js +0 -0
- package/dist/esm/defaultComponentState.js.map +0 -0
- package/dist/esm/helpers/RNComponents.js +0 -0
- package/dist/esm/helpers/RNComponents.js.map +0 -0
- package/dist/esm/helpers/addStylesUsingClassname.js +0 -0
- package/dist/esm/helpers/addStylesUsingClassname.js.map +0 -0
- package/dist/esm/helpers/areEqualSets.js +0 -0
- package/dist/esm/helpers/areEqualSets.js.map +0 -0
- package/dist/esm/helpers/createMediaStyle.js +0 -0
- package/dist/esm/helpers/createMediaStyle.js.map +0 -0
- package/dist/esm/helpers/createPropMapper.js +9 -8
- package/dist/esm/helpers/createPropMapper.js.map +2 -2
- package/dist/esm/helpers/createShallowUpdate.js +0 -0
- package/dist/esm/helpers/createShallowUpdate.js.map +0 -0
- package/dist/esm/helpers/createTamaguiProvider.js +0 -0
- package/dist/esm/helpers/createTamaguiProvider.js.map +0 -0
- package/dist/esm/helpers/extendStaticConfig.js +4 -0
- package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
- package/dist/esm/helpers/fixNativeShadow.js +0 -0
- package/dist/esm/helpers/fixNativeShadow.js.map +0 -0
- package/dist/esm/helpers/fixNativeShadow.native.js +0 -0
- package/dist/esm/helpers/fixNativeShadow.native.js.map +0 -0
- package/dist/esm/helpers/getExpandedShorthands.js +0 -0
- package/dist/esm/helpers/getExpandedShorthands.js.map +0 -0
- package/dist/esm/helpers/getSplitStyles.js +34 -31
- package/dist/esm/helpers/getSplitStyles.js.map +2 -2
- package/dist/esm/helpers/getStylesAtomic.js +0 -0
- package/dist/esm/helpers/getStylesAtomic.js.map +0 -0
- package/dist/esm/helpers/getStylesAtomic.native.js +0 -0
- package/dist/esm/helpers/getStylesAtomic.native.js.map +0 -0
- package/dist/esm/helpers/insertStyleRule.js +1 -1
- package/dist/esm/helpers/insertStyleRule.js.map +2 -2
- package/dist/esm/helpers/isObj.js +0 -0
- package/dist/esm/helpers/isObj.js.map +0 -0
- package/dist/esm/helpers/isTamaguiElement.js +0 -0
- package/dist/esm/helpers/isTamaguiElement.js.map +0 -0
- package/dist/esm/helpers/matchMedia.js +0 -0
- package/dist/esm/helpers/matchMedia.js.map +0 -0
- package/dist/esm/helpers/matchMedia.native.js +0 -0
- package/dist/esm/helpers/matchMedia.native.js.map +0 -0
- package/dist/esm/helpers/proxyThemeVariables.js +18 -0
- package/dist/esm/helpers/proxyThemeVariables.js.map +7 -0
- package/dist/esm/helpers/themeable.js +0 -1
- package/dist/esm/helpers/themeable.js.map +2 -2
- package/dist/esm/helpers/validate.js +17 -16
- package/dist/esm/helpers/validate.js.map +2 -2
- package/dist/esm/helpers/withStaticProperties.js +0 -0
- package/dist/esm/helpers/withStaticProperties.js.map +0 -0
- package/dist/esm/helpers/wrapThemeManagerContext.js +0 -0
- package/dist/esm/helpers/wrapThemeManagerContext.js.map +0 -0
- package/dist/esm/hooks/useConstant.js +0 -0
- package/dist/esm/hooks/useConstant.js.map +0 -0
- package/dist/esm/hooks/useFeatures.js +0 -0
- package/dist/esm/hooks/useFeatures.js.map +0 -0
- package/dist/esm/hooks/useIsMounted.js +0 -0
- package/dist/esm/hooks/useIsMounted.js.map +0 -0
- package/dist/esm/hooks/useIsTouchDevice.js +0 -0
- package/dist/esm/hooks/useIsTouchDevice.js.map +0 -0
- package/dist/esm/hooks/useMedia.js +0 -0
- package/dist/esm/hooks/useMedia.js.map +0 -0
- package/dist/esm/hooks/usePressable.js +0 -0
- package/dist/esm/hooks/usePressable.js.map +0 -0
- package/dist/esm/hooks/useTheme.js +14 -16
- package/dist/esm/hooks/useTheme.js.map +2 -2
- package/dist/esm/hooks/useUnmountEffect.js +0 -0
- package/dist/esm/hooks/useUnmountEffect.js.map +0 -0
- package/dist/esm/index.js +0 -0
- package/dist/esm/index.js.map +0 -0
- package/dist/esm/static.js +3 -0
- package/dist/esm/static.js.map +2 -2
- package/dist/esm/styled.js +0 -0
- package/dist/esm/styled.js.map +0 -0
- package/dist/esm/types-rnw.js +0 -0
- package/dist/esm/types-rnw.js.map +0 -0
- package/dist/esm/types.js +0 -0
- package/dist/esm/types.js.map +0 -0
- package/dist/esm/views/Stack.js +0 -0
- package/dist/esm/views/Stack.js.map +0 -0
- package/dist/esm/views/Text.js +0 -0
- package/dist/esm/views/Text.js.map +0 -0
- package/dist/esm/views/TextAncestorContext.js +0 -0
- package/dist/esm/views/TextAncestorContext.js.map +0 -0
- package/dist/esm/views/Theme.js +0 -3
- package/dist/esm/views/Theme.js.map +2 -2
- package/dist/esm/views/ThemeInverse.js +0 -0
- package/dist/esm/views/ThemeInverse.js.map +0 -0
- package/dist/esm/views/ThemeProvider.js +0 -0
- package/dist/esm/views/ThemeProvider.js.map +0 -0
- package/dist/esm/views/ThemeReset.js +0 -0
- package/dist/esm/views/ThemeReset.js.map +0 -0
- package/dist/jsx/Tamagui.js +0 -0
- package/dist/jsx/ThemeContext.js +0 -0
- package/dist/jsx/ThemeManager.js +0 -0
- package/dist/jsx/conf.js +0 -0
- package/dist/jsx/constants/constants.js +0 -0
- package/dist/jsx/constants/platform.js +2 -0
- package/dist/jsx/constants/rnw.js +0 -0
- package/dist/jsx/contexts/ButtonInsideButtonContext.js +0 -0
- package/dist/jsx/createComponent.js +5 -3
- package/dist/jsx/createFont.js +0 -0
- package/dist/jsx/createShorthands.js +0 -0
- package/dist/jsx/createTamagui.js +26 -18
- package/dist/jsx/createTheme.js +0 -0
- package/dist/jsx/createTokens.js +2 -6
- package/dist/jsx/createVariable.js +8 -2
- package/dist/jsx/defaultComponentState.js +0 -0
- package/dist/jsx/helpers/RNComponents.js +0 -0
- package/dist/jsx/helpers/addStylesUsingClassname.js +0 -0
- package/dist/jsx/helpers/areEqualSets.js +0 -0
- package/dist/jsx/helpers/createMediaStyle.js +0 -0
- package/dist/jsx/helpers/createPropMapper.js +9 -8
- package/dist/jsx/helpers/createShallowUpdate.js +0 -0
- package/dist/jsx/helpers/createTamaguiProvider.js +0 -0
- package/dist/jsx/helpers/extendStaticConfig.js +4 -0
- package/dist/jsx/helpers/fixNativeShadow.js +0 -0
- package/dist/jsx/helpers/fixNativeShadow.native.js +0 -0
- package/dist/jsx/helpers/getExpandedShorthands.js +0 -0
- package/dist/jsx/helpers/getSplitStyles.js +34 -31
- package/dist/jsx/helpers/getStylesAtomic.js +0 -0
- package/dist/jsx/helpers/getStylesAtomic.native.js +0 -0
- package/dist/jsx/helpers/insertStyleRule.js +1 -1
- package/dist/jsx/helpers/isObj.js +0 -0
- package/dist/jsx/helpers/isTamaguiElement.js +0 -0
- package/dist/jsx/helpers/matchMedia.js +0 -0
- package/dist/jsx/helpers/matchMedia.native.js +0 -0
- package/dist/jsx/helpers/proxyThemeVariables.js +17 -0
- package/dist/jsx/helpers/themeable.js +0 -1
- package/dist/jsx/helpers/validate.js +17 -16
- package/dist/jsx/helpers/withStaticProperties.js +0 -0
- package/dist/jsx/helpers/wrapThemeManagerContext.js +0 -0
- package/dist/jsx/hooks/useConstant.js +0 -0
- package/dist/jsx/hooks/useFeatures.js +0 -0
- package/dist/jsx/hooks/useIsMounted.js +0 -0
- package/dist/jsx/hooks/useIsTouchDevice.js +0 -0
- package/dist/jsx/hooks/useMedia.js +0 -0
- package/dist/jsx/hooks/usePressable.js +0 -0
- package/dist/jsx/hooks/useTheme.js +14 -16
- package/dist/jsx/hooks/useUnmountEffect.js +0 -0
- package/dist/jsx/index.js +0 -0
- package/dist/jsx/static.js +3 -0
- package/dist/jsx/styled.js +0 -0
- package/dist/jsx/types-rnw.js +0 -0
- package/dist/jsx/types.js +0 -0
- package/dist/jsx/views/Stack.js +0 -0
- package/dist/jsx/views/Text.js +0 -0
- package/dist/jsx/views/TextAncestorContext.js +0 -0
- package/dist/jsx/views/Theme.js +0 -3
- package/dist/jsx/views/ThemeInverse.js +0 -0
- package/dist/jsx/views/ThemeProvider.js +0 -0
- package/dist/jsx/views/ThemeReset.js +0 -0
- package/package.json +6 -6
- package/types/Tamagui.d.ts +2 -0
- package/types/Tamagui.d.ts.map +1 -1
- package/types/conf.d.ts +2 -0
- package/types/conf.d.ts.map +1 -1
- package/types/constants/platform.d.ts +1 -0
- package/types/constants/platform.d.ts.map +1 -1
- package/types/createComponent.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 +0 -34
- package/types/createTokens.d.ts.map +1 -1
- package/types/createVariable.d.ts +1 -0
- package/types/createVariable.d.ts.map +1 -1
- package/types/helpers/createPropMapper.d.ts.map +1 -1
- package/types/helpers/extendStaticConfig.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts +3 -1
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/proxyThemeVariables.d.ts +2 -0
- package/types/helpers/proxyThemeVariables.d.ts.map +1 -0
- package/types/helpers/themeable.d.ts.map +1 -1
- package/types/hooks/useTheme.d.ts.map +1 -1
- package/types/static.d.ts +3 -0
- package/types/static.d.ts.map +1 -1
- package/types/types.d.ts +21 -14
- package/types/types.d.ts.map +1 -1
- package/types/views/Theme.d.ts.map +1 -1
- package/dist/cjs/constants/pseudos.js +0 -37
- package/dist/cjs/constants/pseudos.js.map +0 -7
- package/dist/cjs/createShallowUpdate.js +0 -1
- package/dist/cjs/createShallowUpdate.js.map +0 -7
- package/dist/cjs/devtools.js +0 -32
- package/dist/cjs/devtools.js.map +0 -7
- package/dist/cjs/spacedChildren.js +0 -86
- package/dist/cjs/spacedChildren.js.map +0 -7
- package/dist/cjs/tamagui-base.css +0 -8
- package/dist/cjs/tamagui-base.css.map +0 -7
- package/dist/esm/constants/pseudos.js +0 -18
- package/dist/esm/constants/pseudos.js.map +0 -7
- package/dist/esm/createShallowUpdate.js +0 -1
- package/dist/esm/createShallowUpdate.js.map +0 -7
- package/dist/esm/devtools.js +0 -14
- package/dist/esm/devtools.js.map +0 -7
- package/dist/esm/spacedChildren.js +0 -52
- package/dist/esm/spacedChildren.js.map +0 -7
- package/dist/esm/tamagui-base.css +0 -8
- package/dist/esm/tamagui-base.css.map +0 -7
- package/dist/jsx/constants/pseudos.js +0 -17
- package/dist/jsx/createShallowUpdate.js +0 -0
- package/dist/jsx/devtools.js +0 -13
- package/dist/jsx/spacedChildren.js +0 -44
- package/dist/jsx/tamagui-base.css +0 -7
- package/types/spacedChildren.d.ts +0 -9
- package/types/spacedChildren.d.ts.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useTheme.tsx"],
|
|
4
|
-
"sourcesContent": ["import { useForceUpdate } from '@tamagui/use-force-update'\nimport React, { useContext, useLayoutEffect, useMemo, useRef, useState } from 'react'\n\nimport { getConfig } from '../conf'\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\nimport { areEqualSets } from '../helpers/areEqualSets'\nimport { ThemeContext } from '../ThemeContext'\nimport { ThemeManager, ThemeManagerContext, emptyManager } from '../ThemeManager'\nimport { ThemeObject } from '../types'\nimport { useConstant } from './useConstant'\n\ntype UseThemeState = {\n uuid: Object\n keys: Set<string>\n isRendering: boolean\n}\n\nexport const useTheme = (\n themeName?: string | null,\n componentName?: string,\n props?: any,\n forceUpdate?: any\n): ThemeObject => {\n const { name, theme, themes, themeManager, className, didChangeTheme } = useChangeThemeEffect(\n themeName,\n componentName,\n props,\n forceUpdate\n )\n\n if (process.env.NODE_ENV === 'development') {\n if (props?.['debug'] === 'verbose') {\n console.log(' \u00BB useTheme', { themeName, componentName, name, className })\n }\n }\n\n const state = useRef() as React.MutableRefObject<UseThemeState>\n if (!state.current) {\n state.current = {\n uuid: {},\n keys: new Set(),\n isRendering: true,\n }\n }\n state.current.isRendering = true\n\n // track usage\n useIsomorphicLayoutEffect(() => {\n const st = state.current\n st.isRendering = false\n const cur = themeManager?.keys.get(st.uuid)\n if (!cur || !areEqualSets(st.keys, cur)) {\n themeManager?.track(st.uuid, st.keys)\n }\n })\n\n return useMemo(() => {\n if (!theme) {\n if (process.env.NODE_ENV === 'development') {\n console.warn('No theme', { themeName, theme, componentName, className })\n }\n return themes[getConfig().defaultTheme || 'light' || Object.keys(themes)[0]]\n }\n return new Proxy(theme, {\n has(_, key) {\n if (typeof key === 'string') {\n if (key[0] === '$') {\n key = key.slice(1)\n }\n }\n return Reflect.has(theme, key)\n },\n get(_, key) {\n if (!name || key === '__proto__' || typeof key === 'symbol') {\n // TODO make this pattern better\n if (key === GetThemeManager) {\n if (process.env.NODE_ENV === 'development') {\n if (props['debug']) {\n // prettier-ignore\n console.log('did change', { themeName, didChangeTheme, name, componentName }, themeManager?.parentName)\n }\n }\n if (!didChangeTheme) {\n return null\n }\n // TODO\n // console.log('DID CHANGE THEME')\n return themeManager\n }\n return Reflect.get(_, key)\n }\n if (typeof key !== 'string' || key === '$typeof') {\n return Reflect.get(_, key)\n }\n if (process.env.NODE_ENV === 'development') {\n if (key === '__state') {\n return state.current\n }\n }\n if (key === 'name') {\n return name\n }\n if (key === 'className') {\n return className\n }\n if (!themeManager) {\n console.error('No themeManager')\n return\n }\n
|
|
5
|
-
"mappings": ";;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAQO,MAAM,WAAW,wBACtB,WACA,eACA,OACA,gBACgB;AAChB,QAAM,EAAE,MAAM,OAAO,QAAQ,cAAc,WAAW,mBAAmB,qBACvE,WACA,eACA,OACA,WACF;AAEA,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,gCAAQ,cAAa,WAAW;AAClC,cAAQ,IAAI,mBAAgB,EAAE,WAAW,eAAe,MAAM,UAAU,CAAC;AAAA,IAC3E;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO;AACrB,MAAI,CAAC,MAAM,SAAS;AAClB,UAAM,UAAU;AAAA,MACd,MAAM,CAAC;AAAA,MACP,MAAM,oBAAI,IAAI;AAAA,MACd,aAAa;AAAA,IACf;AAAA,EACF;AACA,QAAM,QAAQ,cAAc;AAG5B,4BAA0B,MAAM;AAC9B,UAAM,KAAK,MAAM;AACjB,OAAG,cAAc;AACjB,UAAM,MAAM,6CAAc,KAAK,IAAI,GAAG;AACtC,QAAI,CAAC,OAAO,CAAC,aAAa,GAAG,MAAM,GAAG,GAAG;AACvC,mDAAc,MAAM,GAAG,MAAM,GAAG;AAAA,IAClC;AAAA,EACF,CAAC;AAED,SAAO,QAAQ,MAAM;AACnB,QAAI,CAAC,OAAO;AACV,UAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,gBAAQ,KAAK,YAAY,EAAE,WAAW,OAAO,eAAe,UAAU,CAAC;AAAA,MACzE;AACA,aAAO,OAAO,UAAU,EAAE,gBAAgB;AAAA,IAC5C;AACA,WAAO,IAAI,MAAM,OAAO;AAAA,MACtB,IAAI,GAAG,KAAK;AACV,YAAI,OAAO,QAAQ,UAAU;AAC3B,cAAI,IAAI,OAAO,KAAK;AAClB,kBAAM,IAAI,MAAM,CAAC;AAAA,UACnB;AAAA,QACF;AACA,eAAO,QAAQ,IAAI,OAAO,GAAG;AAAA,MAC/B;AAAA,MACA,IAAI,GAAG,KAAK;AACV,YAAI,CAAC,QAAQ,QAAQ,eAAe,OAAO,QAAQ,UAAU;AAE3D,cAAI,QAAQ,iBAAiB;AAC3B,gBAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,kBAAI,MAAM,UAAU;AAElB,wBAAQ,IAAI,cAAc,EAAE,WAAW,gBAAgB,MAAM,cAAc,GAAG,6CAAc,UAAU;AAAA,cACxG;AAAA,YACF;AACA,gBAAI,CAAC,gBAAgB;AACnB,qBAAO;AAAA,YACT;AAGA,mBAAO;AAAA,UACT;AACA,iBAAO,QAAQ,IAAI,GAAG,GAAG;AAAA,QAC3B;AACA,YAAI,OAAO,QAAQ,YAAY,QAAQ,WAAW;AAChD,iBAAO,QAAQ,IAAI,GAAG,GAAG;AAAA,QAC3B;AACA,YAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,cAAI,QAAQ,WAAW;AACrB,mBAAO,MAAM;AAAA,UACf;AAAA,QACF;AACA,YAAI,QAAQ,QAAQ;AAClB,iBAAO;AAAA,QACT;AACA,YAAI,QAAQ,aAAa;AACvB,iBAAO;AAAA,QACT;AACA,YAAI,CAAC,cAAc;AACjB,kBAAQ,MAAM,iBAAiB;AAC/B;AAAA,QACF;
|
|
4
|
+
"sourcesContent": ["import { useForceUpdate } from '@tamagui/use-force-update'\nimport React, { useContext, useLayoutEffect, useMemo, useRef, useState } from 'react'\n\nimport { getConfig } from '../conf'\nimport { useIsomorphicLayoutEffect } from '../constants/platform'\nimport { areEqualSets } from '../helpers/areEqualSets'\nimport { ThemeContext } from '../ThemeContext'\nimport { ThemeManager, ThemeManagerContext, emptyManager } from '../ThemeManager'\nimport { ThemeObject } from '../types'\nimport { useConstant } from './useConstant'\n\ntype UseThemeState = {\n uuid: Object\n keys: Set<string>\n isRendering: boolean\n}\n\nexport const useTheme = (\n themeName?: string | null,\n componentName?: string,\n props?: any,\n forceUpdate?: any\n): ThemeObject => {\n const { name, theme, themes, themeManager, className, didChangeTheme } = useChangeThemeEffect(\n themeName,\n componentName,\n props,\n forceUpdate\n )\n\n if (process.env.NODE_ENV === 'development') {\n if (props?.['debug'] === 'verbose') {\n console.log(' \u00BB useTheme', { themeName, componentName, name, className })\n }\n }\n\n const state = useRef() as React.MutableRefObject<UseThemeState>\n if (!state.current) {\n state.current = {\n uuid: {},\n keys: new Set(),\n isRendering: true,\n }\n }\n state.current.isRendering = true\n\n // track usage\n useIsomorphicLayoutEffect(() => {\n const st = state.current\n st.isRendering = false\n const cur = themeManager?.keys.get(st.uuid)\n if (!cur || !areEqualSets(st.keys, cur)) {\n themeManager?.track(st.uuid, st.keys)\n }\n })\n\n return useMemo(() => {\n if (!theme) {\n if (process.env.NODE_ENV === 'development') {\n console.warn('No theme', { themeName, theme, componentName, className })\n }\n return themes[getConfig().defaultTheme || 'light' || Object.keys(themes)[0]]\n }\n return new Proxy(theme, {\n has(_, key) {\n if (typeof key === 'string') {\n if (key[0] === '$') {\n key = key.slice(1)\n }\n }\n return Reflect.has(theme, key)\n },\n get(_, key) {\n if (!name || key === '__proto__' || typeof key === 'symbol') {\n // TODO make this pattern better\n if (key === GetThemeManager) {\n if (process.env.NODE_ENV === 'development') {\n if (props['debug']) {\n // prettier-ignore\n console.log('did change', { themeName, didChangeTheme, name, componentName }, themeManager?.parentName)\n }\n }\n if (!didChangeTheme) {\n return null\n }\n // TODO\n // console.log('DID CHANGE THEME')\n return themeManager\n }\n return Reflect.get(_, key)\n }\n if (typeof key !== 'string' || key === '$typeof') {\n return Reflect.get(_, key)\n }\n if (process.env.NODE_ENV === 'development') {\n if (key === '__state') {\n return state.current\n }\n }\n if (key === 'name') {\n return name\n }\n if (key === 'className') {\n return className\n }\n if (!themeManager) {\n console.error('No themeManager')\n return\n }\n // auto convert variables to plain\n if (key[0] === '$') {\n key = key.slice(1)\n }\n const val = themeManager.getValue(key)\n if (val) {\n if (state.current.isRendering) {\n state.current.keys.add(key)\n if (process.env.NODE_ENV === 'development') {\n if (props?.['debug'] === 'verbose') {\n console.log(' \u00BB tracking theme key', key)\n }\n }\n }\n return val\n }\n // react native debuger uses toJSON\n if (process.env.NODE_ENV === 'development') {\n console.log(`No theme value \"${String(key)}\" in ${name}`)\n }\n return Reflect.get(_, key)\n },\n })\n }, [name, theme, className, didChangeTheme])\n}\n\nconst GetThemeManager = Symbol('GetThemeManager')\n\nexport const getThemeManagerIfChanged = (theme: any) => {\n return theme?.[GetThemeManager]\n}\n\nexport const useThemeName = (opts?: { parent?: true }) => {\n const parent = useContext(ThemeManagerContext)\n const [name, setName] = useState(parent?.name || '')\n\n useIsomorphicLayoutEffect(() => {\n if (!parent) return\n return parent.onChangeTheme((next, manager) => {\n const name = opts?.parent ? manager.parentName || next : next\n if (!name) return\n setName(name)\n })\n }, [parent])\n\n return name\n}\n\nexport const useDefaultThemeName = () => {\n return useContext(ThemeContext)?.defaultTheme\n}\n\nexport const useChangeThemeEffect = (\n name?: string | null,\n componentName?: string,\n props?: any,\n forceUpdateProp?: any\n) => {\n const debug = props && props['debug']\n const parentManager = useContext(ThemeManagerContext) || emptyManager\n const { themes } = useContext(ThemeContext)!\n const next = parentManager.getNextTheme({ name, componentName, themes }, props)\n const forceUpdate = forceUpdateProp || useForceUpdate()\n const themeManager = useConstant<ThemeManager | null>(() => {\n if (!next) {\n return null\n }\n return new ThemeManager(next.name, next.theme, parentManager)\n })\n\n if (typeof document !== 'undefined') {\n useLayoutEffect(() => {\n if (!themeManager) return\n if (next?.name) {\n themeManager.update(next)\n }\n return parentManager.onChangeTheme(() => {\n const next = parentManager.getNextTheme({ name, componentName, themes }, debug)\n if (!next) return\n if (themeManager.update(next)) {\n forceUpdate()\n }\n })\n }, [themes, name, componentName, debug, next?.name])\n }\n\n const didChangeTheme = next && parentManager && next.name !== parentManager.fullName\n\n return {\n ...(parentManager && {\n name: parentManager.name,\n theme: parentManager.theme,\n }),\n ...next,\n didChangeTheme,\n themes,\n themeManager,\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
File without changes
|
|
File without changes
|
package/dist/esm/index.js
CHANGED
|
File without changes
|
package/dist/esm/index.js.map
CHANGED
|
File without changes
|
package/dist/esm/static.js
CHANGED
|
@@ -3,12 +3,15 @@ export * from "./createComponent";
|
|
|
3
3
|
export * from "./createFont";
|
|
4
4
|
export * from "./createTokens";
|
|
5
5
|
export * from "./createTamagui";
|
|
6
|
+
export * from "./createVariable";
|
|
6
7
|
export * from "./constants/constants";
|
|
7
8
|
export * from "./hooks/useMedia";
|
|
8
9
|
export * from "./hooks/useTheme";
|
|
9
10
|
export * from "./helpers/isObj";
|
|
10
11
|
export * from "./helpers/getStylesAtomic";
|
|
12
|
+
export * from "./helpers/proxyThemeVariables";
|
|
11
13
|
export * from "./helpers/getSplitStyles";
|
|
12
14
|
export * from "@tamagui/helpers";
|
|
13
15
|
export * from "./constants/rnw";
|
|
16
|
+
export * from "./types";
|
|
14
17
|
//# sourceMappingURL=static.js.map
|
package/dist/esm/static.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/static.ts"],
|
|
4
|
-
"sourcesContent": ["// only stuff that gets extracted or needed by tamagui-static\n\nexport * from './styled'\nexport * from './createComponent'\nexport * from './createFont'\nexport * from './createTokens'\nexport * from './createTamagui'\nexport * from './constants/constants'\n\nexport * from './hooks/useMedia'\nexport * from './hooks/useTheme'\n\nexport * from './helpers/isObj'\nexport * from './helpers/getStylesAtomic'\nexport * from './helpers/getSplitStyles'\nexport * from '@tamagui/helpers'\n\nexport * from './constants/rnw'\n"],
|
|
5
|
-
"mappings": "AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AAEA;",
|
|
4
|
+
"sourcesContent": ["// only stuff that gets extracted or needed by tamagui-static\n\nexport * from './styled'\nexport * from './createComponent'\nexport * from './createFont'\nexport * from './createTokens'\nexport * from './createTamagui'\nexport * from './createVariable'\nexport * from './constants/constants'\n\nexport * from './hooks/useMedia'\nexport * from './hooks/useTheme'\n\nexport * from './helpers/isObj'\nexport * from './helpers/getStylesAtomic'\nexport * from './helpers/proxyThemeVariables'\nexport * from './helpers/getSplitStyles'\nexport * from '@tamagui/helpers'\n\nexport * from './constants/rnw'\n\nexport * from './types'\n"],
|
|
5
|
+
"mappings": "AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAEA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/esm/styled.js
CHANGED
|
File without changes
|
package/dist/esm/styled.js.map
CHANGED
|
File without changes
|
package/dist/esm/types-rnw.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/esm/types.js
CHANGED
|
File without changes
|
package/dist/esm/types.js.map
CHANGED
|
File without changes
|
package/dist/esm/views/Stack.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/esm/views/Text.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/esm/views/Theme.js
CHANGED
|
@@ -15,9 +15,6 @@ const Theme = memo(/* @__PURE__ */ __name(function Theme2(props) {
|
|
|
15
15
|
return props.children;
|
|
16
16
|
}
|
|
17
17
|
const contents = useMemo(() => wrapThemeManagerContext(props.children, themeManager), [props.children, themeManager]);
|
|
18
|
-
if (props.componentName === "Drawer") {
|
|
19
|
-
console.log("ok?", className, themeManager);
|
|
20
|
-
}
|
|
21
18
|
if (isWeb) {
|
|
22
19
|
return /* @__PURE__ */ React.createElement("span", {
|
|
23
20
|
className: [
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/views/Theme.tsx"],
|
|
4
|
-
"sourcesContent": ["import React, { memo, useMemo } from 'react'\n\nimport { isWeb } from '../constants/platform'\nimport { wrapThemeManagerContext } from '../helpers/wrapThemeManagerContext'\nimport { useChangeThemeEffect } from '../hooks/useTheme'\nimport { ThemeName } from '../types'\n\n// bugfix esbuild strips react jsx: 'preserve'\nReact['createElement']\n\nexport type ThemeProps = {\n className?: string\n disableThemeClass?: boolean\n name: Exclude<ThemeName, number> | null\n componentName?: string\n children?: any\n debug?: boolean\n}\n\nexport const Theme = memo(function Theme(props: ThemeProps) {\n const { name, theme, themeManager, themes, className } = useChangeThemeEffect(\n props.name,\n props.componentName,\n props\n )\n\n if (!themes || !name || !theme) {\n if (name && !theme && process.env.NODE_ENV === 'development') {\n console.warn(`No theme found by name ${name}`)\n }\n return props.children\n }\n\n // memo here, changing theme without re-rendering all children is a critical optimization\n // may require some effort of end user to memoize but without this memo they'd have no option\n const contents = useMemo(\n () => wrapThemeManagerContext(props.children, themeManager),\n [props.children, themeManager]\n )\n\n if (
|
|
5
|
-
"mappings": ";;AAAA;AAEA;AACA;AACA;AAIA,MAAM;AAWC,MAAM,QAAQ,KAAK,uCAAe,OAAmB;AAnB5D;AAoBE,QAAM,EAAE,MAAM,OAAO,cAAc,QAAQ,cAAc,qBACvD,MAAM,MACN,MAAM,eACN,KACF;AAEA,MAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;AAC9B,QAAI,QAAQ,CAAC,SAAS,QAAQ,IAAI,aAAa,eAAe;AAC5D,cAAQ,KAAK,0BAA0B,MAAM;AAAA,IAC/C;AACA,WAAO,MAAM;AAAA,EACf;AAIA,QAAM,WAAW,QACf,MAAM,wBAAwB,MAAM,UAAU,YAAY,GAC1D,CAAC,MAAM,UAAU,YAAY,CAC/B;AAEA,MAAI,
|
|
4
|
+
"sourcesContent": ["import React, { memo, useMemo } from 'react'\n\nimport { isWeb } from '../constants/platform'\nimport { wrapThemeManagerContext } from '../helpers/wrapThemeManagerContext'\nimport { useChangeThemeEffect } from '../hooks/useTheme'\nimport { ThemeName } from '../types'\n\n// bugfix esbuild strips react jsx: 'preserve'\nReact['createElement']\n\nexport type ThemeProps = {\n className?: string\n disableThemeClass?: boolean\n name: Exclude<ThemeName, number> | null\n componentName?: string\n children?: any\n debug?: boolean\n}\n\nexport const Theme = memo(function Theme(props: ThemeProps) {\n const { name, theme, themeManager, themes, className } = useChangeThemeEffect(\n props.name,\n props.componentName,\n props\n )\n\n if (!themes || !name || !theme) {\n if (name && !theme && process.env.NODE_ENV === 'development') {\n console.warn(`No theme found by name ${name}`)\n }\n return props.children\n }\n\n // memo here, changing theme without re-rendering all children is a critical optimization\n // may require some effort of end user to memoize but without this memo they'd have no option\n const contents = useMemo(\n () => wrapThemeManagerContext(props.children, themeManager),\n [props.children, themeManager]\n )\n\n if (isWeb) {\n return (\n <span\n className={[\n `tui_Theme`,\n ...(!props.disableThemeClass ? [props.className, className].filter(Boolean) : []),\n ].join(' ')}\n style={{\n display: 'contents',\n // in order to provide currentColor, set color by default\n color: themes[name]?.color?.toString(),\n }}\n >\n {contents}\n </span>\n )\n }\n\n return contents\n})\n"],
|
|
5
|
+
"mappings": ";;AAAA;AAEA;AACA;AACA;AAIA,MAAM;AAWC,MAAM,QAAQ,KAAK,uCAAe,OAAmB;AAnB5D;AAoBE,QAAM,EAAE,MAAM,OAAO,cAAc,QAAQ,cAAc,qBACvD,MAAM,MACN,MAAM,eACN,KACF;AAEA,MAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO;AAC9B,QAAI,QAAQ,CAAC,SAAS,QAAQ,IAAI,aAAa,eAAe;AAC5D,cAAQ,KAAK,0BAA0B,MAAM;AAAA,IAC/C;AACA,WAAO,MAAM;AAAA,EACf;AAIA,QAAM,WAAW,QACf,MAAM,wBAAwB,MAAM,UAAU,YAAY,GAC1D,CAAC,MAAM,UAAU,YAAY,CAC/B;AAEA,MAAI,OAAO;AACT,WACE,oCAAC;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA,GAAI,CAAC,MAAM,oBAAoB,CAAC,MAAM,WAAW,SAAS,EAAE,OAAO,OAAO,IAAI,CAAC;AAAA,MACjF,EAAE,KAAK,GAAG;AAAA,MACV,OAAO;AAAA,QACL,SAAS;AAAA,QAET,OAAO,mBAAO,UAAP,mBAAc,UAAd,mBAAqB;AAAA,MAC9B;AAAA,OAEC,QACH;AAAA,EAEJ;AAEA,SAAO;AACT,GAxC0B,QAwCzB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/jsx/Tamagui.js
CHANGED
|
File without changes
|
package/dist/jsx/ThemeContext.js
CHANGED
|
File without changes
|
package/dist/jsx/ThemeManager.js
CHANGED
|
File without changes
|
package/dist/jsx/conf.js
CHANGED
|
File without changes
|
|
File without changes
|
|
@@ -5,6 +5,7 @@ const isAndroid = ((_a = Platform) == null ? void 0 : _a.OS) === "android";
|
|
|
5
5
|
const isIOS = ((_b = Platform) == null ? void 0 : _b.OS) === "ios";
|
|
6
6
|
const isWeb = process.env.TAMAGUI_TARGET !== "native" && (process.env.TAMAGUI_TARGET === "web" || ((_c = Platform) == null ? void 0 : _c.OS) === "web");
|
|
7
7
|
const isSSR = isWeb && typeof window === "undefined";
|
|
8
|
+
const isClient = isWeb && typeof window !== "undefined";
|
|
8
9
|
const useIsomorphicLayoutEffect = isSSR ? useEffect : useLayoutEffect;
|
|
9
10
|
const isChrome = typeof navigator !== "undefined" && /Chrome/.test(navigator.userAgent || "");
|
|
10
11
|
const supportsTouchWeb = typeof window !== "undefined" && "ontouchstart" in window;
|
|
@@ -13,6 +14,7 @@ const isWebIOS = isWeb && typeof navigator !== "undefined" && (/iPad|iPhone|iPod
|
|
|
13
14
|
export {
|
|
14
15
|
isAndroid,
|
|
15
16
|
isChrome,
|
|
17
|
+
isClient,
|
|
16
18
|
isIOS,
|
|
17
19
|
isSSR,
|
|
18
20
|
isTouchDevice,
|
|
File without changes
|
|
File without changes
|
|
@@ -23,6 +23,7 @@ import { createShallowUpdate } from "./helpers/createShallowUpdate";
|
|
|
23
23
|
import { extendStaticConfig, parseStaticConfig } from "./helpers/extendStaticConfig";
|
|
24
24
|
import { getSplitStyles } from "./helpers/getSplitStyles";
|
|
25
25
|
import { getAllSelectors } from "./helpers/insertStyleRule";
|
|
26
|
+
import { proxyThemeVariables } from "./helpers/proxyThemeVariables";
|
|
26
27
|
import { wrapThemeManagerContext } from "./helpers/wrapThemeManagerContext";
|
|
27
28
|
import { useFeatures } from "./hooks/useFeatures";
|
|
28
29
|
import { usePressable } from "./hooks/usePressable";
|
|
@@ -50,6 +51,7 @@ function mergeShorthands({ defaultProps }, { shorthands }) {
|
|
|
50
51
|
}
|
|
51
52
|
}
|
|
52
53
|
__name(mergeShorthands, "mergeShorthands");
|
|
54
|
+
let initialTheme;
|
|
53
55
|
function createComponent(configIn, ParentComponent) {
|
|
54
56
|
const staticConfig = (() => {
|
|
55
57
|
const config = extendStaticConfig(configIn, ParentComponent);
|
|
@@ -66,7 +68,6 @@ function createComponent(configIn, ParentComponent) {
|
|
|
66
68
|
let avoidClasses = true;
|
|
67
69
|
let defaultNativeStyle;
|
|
68
70
|
let defaultNativeStyleSheet;
|
|
69
|
-
let initialTheme;
|
|
70
71
|
let initialSplitStyles;
|
|
71
72
|
function addPseudoToStyles(styles, name, pseudos) {
|
|
72
73
|
const pseudoStyle = pseudos[name];
|
|
@@ -439,14 +440,15 @@ function createComponent(configIn, ParentComponent) {
|
|
|
439
440
|
avoidClasses = !!((_a = tamaguiConfig.animations) == null ? void 0 : _a.avoidClasses);
|
|
440
441
|
AnimatedText = (_b = tamaguiConfig.animations) == null ? void 0 : _b.Text;
|
|
441
442
|
AnimatedView = (_c = tamaguiConfig == null ? void 0 : tamaguiConfig.animations) == null ? void 0 : _c.View;
|
|
442
|
-
initialTheme = conf.themes[conf.defaultTheme || Object.keys(conf.themes)[0]];
|
|
443
|
+
initialTheme = initialTheme || proxyThemeVariables(conf.themes[conf.defaultTheme || Object.keys(conf.themes)[0]]);
|
|
443
444
|
initialSplitStyles = getSplitStyles(staticConfig.defaultProps, staticConfig, initialTheme, {
|
|
444
445
|
mounted: true,
|
|
445
446
|
hover: false,
|
|
446
447
|
press: false,
|
|
447
448
|
pressIn: false,
|
|
448
449
|
focus: false,
|
|
449
|
-
resolveVariablesAs: "both"
|
|
450
|
+
resolveVariablesAs: "both",
|
|
451
|
+
keepVariantsAsProps: true
|
|
450
452
|
});
|
|
451
453
|
const { style, viewProps } = initialSplitStyles;
|
|
452
454
|
defaultNativeStyle = {};
|
package/dist/jsx/createFont.js
CHANGED
|
File without changes
|
|
File without changes
|
|
@@ -47,6 +47,7 @@ function createTamagui(config) {
|
|
|
47
47
|
addVar(val[fkey]);
|
|
48
48
|
} else {
|
|
49
49
|
for (const fskey in val[fkey]) {
|
|
50
|
+
console.log("add", fkey, fskey, val[fkey][fskey]);
|
|
50
51
|
addVar(val[fkey][fskey]);
|
|
51
52
|
}
|
|
52
53
|
}
|
|
@@ -106,11 +107,35 @@ ${vars}
|
|
|
106
107
|
};
|
|
107
108
|
})();
|
|
108
109
|
const tokensParsed = parseTokens(config.tokens);
|
|
110
|
+
const fontsParsed = (() => {
|
|
111
|
+
if (!config.fonts) {
|
|
112
|
+
throw new Error(`No fonts defined!`);
|
|
113
|
+
}
|
|
114
|
+
const res = {};
|
|
115
|
+
for (const familyName in config.fonts) {
|
|
116
|
+
const family = config.fonts[familyName];
|
|
117
|
+
const parsed = {};
|
|
118
|
+
for (const attrKey in family) {
|
|
119
|
+
const attr = family[attrKey];
|
|
120
|
+
if (attrKey === "family") {
|
|
121
|
+
parsed[attrKey] = attr;
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
parsed[attrKey] = Object.keys(attr).reduce((acc, cur) => {
|
|
125
|
+
acc[`$${cur}`] = attr[cur];
|
|
126
|
+
return acc;
|
|
127
|
+
}, {});
|
|
128
|
+
}
|
|
129
|
+
res[`$${familyName}`] = parsed;
|
|
130
|
+
}
|
|
131
|
+
return res;
|
|
132
|
+
})();
|
|
109
133
|
const getCSS = /* @__PURE__ */ __name(() => {
|
|
110
134
|
return `${themeConfig.css}
|
|
111
135
|
${getInsertedRules().join("\n")}`;
|
|
112
136
|
}, "getCSS");
|
|
113
137
|
const next = {
|
|
138
|
+
fonts: {},
|
|
114
139
|
animations: {},
|
|
115
140
|
shorthands: {},
|
|
116
141
|
media: {},
|
|
@@ -120,6 +145,7 @@ ${getInsertedRules().join("\n")}`;
|
|
|
120
145
|
defaultTheme: "light",
|
|
121
146
|
...config
|
|
122
147
|
}),
|
|
148
|
+
fontsParsed,
|
|
123
149
|
themeConfig,
|
|
124
150
|
tokensParsed,
|
|
125
151
|
parsed: true,
|
|
@@ -138,24 +164,6 @@ const parseTokens = /* @__PURE__ */ __name((tokens) => {
|
|
|
138
164
|
const res = {};
|
|
139
165
|
for (const key in tokens) {
|
|
140
166
|
res[key] = {};
|
|
141
|
-
if (key === "font") {
|
|
142
|
-
for (const family in tokens.font) {
|
|
143
|
-
const obj = {};
|
|
144
|
-
res.font[`$${family}`] = obj;
|
|
145
|
-
for (const attrKey in tokens.font[family]) {
|
|
146
|
-
const attr = tokens.font[family][attrKey];
|
|
147
|
-
if (attrKey === "family") {
|
|
148
|
-
obj[attrKey] = attr;
|
|
149
|
-
continue;
|
|
150
|
-
}
|
|
151
|
-
obj[attrKey] = Object.keys(attr).reduce((acc, cur) => {
|
|
152
|
-
acc[`$${cur}`] = attr[cur];
|
|
153
|
-
return acc;
|
|
154
|
-
}, {});
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
continue;
|
|
158
|
-
}
|
|
159
167
|
for (const skey in tokens[key]) {
|
|
160
168
|
res[key][`$${skey}`] = tokens[key][skey];
|
|
161
169
|
}
|
package/dist/jsx/createTheme.js
CHANGED
|
File without changes
|
package/dist/jsx/createTokens.js
CHANGED
|
@@ -6,17 +6,13 @@ function createTokens(tokens) {
|
|
|
6
6
|
if (process.env.NODE_ENV === "development") {
|
|
7
7
|
validateTokens(tokens);
|
|
8
8
|
}
|
|
9
|
-
return setupTokens(tokens);
|
|
10
|
-
}
|
|
11
|
-
__name(createTokens, "createTokens");
|
|
12
|
-
function setupTokens(tokens) {
|
|
13
9
|
return mapTokensToVariables(tokens);
|
|
14
10
|
}
|
|
15
|
-
__name(
|
|
11
|
+
__name(createTokens, "createTokens");
|
|
16
12
|
const mapTokensToVariables = /* @__PURE__ */ __name((tokens, parentPath = "") => {
|
|
17
13
|
const res = {};
|
|
18
14
|
for (const key in tokens) {
|
|
19
|
-
|
|
15
|
+
let val = tokens[key];
|
|
20
16
|
const name = parentPath ? `${parentPath}-${key}` : key;
|
|
21
17
|
if (val && typeof val === "object") {
|
|
22
18
|
res[key] = mapTokensToVariables(tokens[key], name);
|
|
@@ -22,12 +22,17 @@ function isVariable(v) {
|
|
|
22
22
|
}
|
|
23
23
|
__name(isVariable, "isVariable");
|
|
24
24
|
function getVariableValue(v) {
|
|
25
|
-
if (isVariable(v))
|
|
25
|
+
if (isVariable(v))
|
|
26
26
|
return v.val;
|
|
27
|
-
}
|
|
28
27
|
return v;
|
|
29
28
|
}
|
|
30
29
|
__name(getVariableValue, "getVariableValue");
|
|
30
|
+
function getVariableName(v) {
|
|
31
|
+
if (isVariable(v))
|
|
32
|
+
return v.name;
|
|
33
|
+
return v;
|
|
34
|
+
}
|
|
35
|
+
__name(getVariableName, "getVariableName");
|
|
31
36
|
const createCSSVariable = /* @__PURE__ */ __name((val, includeVar = true) => {
|
|
32
37
|
const name = val.replace(/[^a-z0-9\_\-]+/i, "_");
|
|
33
38
|
return includeVar ? `var(--${name})` : name;
|
|
@@ -37,6 +42,7 @@ export {
|
|
|
37
42
|
Variable,
|
|
38
43
|
createCSSVariable,
|
|
39
44
|
createVariable,
|
|
45
|
+
getVariableName,
|
|
40
46
|
getVariableValue,
|
|
41
47
|
isVariable
|
|
42
48
|
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -43,7 +43,9 @@ const createPropMapper = /* @__PURE__ */ __name((staticConfig) => {
|
|
|
43
43
|
let variantValue = getVariantFunction(variant, key, value);
|
|
44
44
|
if (variantValue) {
|
|
45
45
|
if (typeof variantValue === "function") {
|
|
46
|
-
|
|
46
|
+
const fn = variantValue;
|
|
47
|
+
variantValue = fn(value, {
|
|
48
|
+
fonts: conf.fontsParsed,
|
|
47
49
|
tokens: conf.tokensParsed,
|
|
48
50
|
theme,
|
|
49
51
|
props: avoidDefaultProps ? props : new Proxy(props, {
|
|
@@ -114,25 +116,24 @@ const fontShorthand = {
|
|
|
114
116
|
fontSize: "size",
|
|
115
117
|
fontWeight: "weight"
|
|
116
118
|
};
|
|
117
|
-
const getToken = /* @__PURE__ */ __name((key, value, { tokensParsed }, theme, fontFamily = "$body", resolveAs) => {
|
|
119
|
+
const getToken = /* @__PURE__ */ __name((key, value, { tokensParsed, fontsParsed }, theme, fontFamily = "$body", resolveAs) => {
|
|
118
120
|
var _a, _b, _c;
|
|
119
121
|
let valOrVar;
|
|
120
122
|
let hasSet = false;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
valOrVar = theme[valueName];
|
|
123
|
+
if (value in theme) {
|
|
124
|
+
valOrVar = theme[value];
|
|
124
125
|
hasSet = true;
|
|
125
126
|
} else {
|
|
126
127
|
switch (key) {
|
|
127
128
|
case "fontFamily":
|
|
128
|
-
valOrVar = ((_a =
|
|
129
|
+
valOrVar = ((_a = fontsParsed[value]) == null ? void 0 : _a.family) || value;
|
|
129
130
|
hasSet = true;
|
|
130
131
|
break;
|
|
131
132
|
case "fontSize":
|
|
132
133
|
case "lineHeight":
|
|
133
134
|
case "letterSpacing":
|
|
134
135
|
case "fontWeight":
|
|
135
|
-
valOrVar = ((_c = (_b =
|
|
136
|
+
valOrVar = ((_c = (_b = fontsParsed[fontFamily]) == null ? void 0 : _b[fontShorthand[key] || key]) == null ? void 0 : _c[value]) || value;
|
|
136
137
|
hasSet = true;
|
|
137
138
|
break;
|
|
138
139
|
}
|
|
@@ -158,7 +159,7 @@ const getToken = /* @__PURE__ */ __name((key, value, { tokensParsed }, theme, fo
|
|
|
158
159
|
}
|
|
159
160
|
if (process.env.NODE_ENV === "development") {
|
|
160
161
|
if (value && value[0] === "$") {
|
|
161
|
-
console.warn(`\u26A0\uFE0F Missing token
|
|
162
|
+
console.warn(`\u26A0\uFE0F Missing token:`, key, value, fontFamily, theme, fontsParsed);
|
|
162
163
|
return null;
|
|
163
164
|
}
|
|
164
165
|
}
|
|
File without changes
|
|
File without changes
|
|
@@ -35,6 +35,10 @@ function extendStaticConfig(config, parent) {
|
|
|
35
35
|
...parent.staticConfig.validStyles,
|
|
36
36
|
...config.validStyles
|
|
37
37
|
} : parent.staticConfig.validStyles || stylePropsView,
|
|
38
|
+
defaultVariants: {
|
|
39
|
+
...parent.staticConfig.defaultVariants,
|
|
40
|
+
...config.defaultVariants
|
|
41
|
+
},
|
|
38
42
|
defaultProps: {
|
|
39
43
|
...parent.staticConfig.defaultProps,
|
|
40
44
|
...parent.staticConfig.defaultVariants,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
validStyles
|
|
9
9
|
} from "@tamagui/helpers";
|
|
10
10
|
import { getConfig } from "../conf";
|
|
11
|
-
import { isWeb } from "../constants/platform";
|
|
11
|
+
import { isClient, isWeb } from "../constants/platform";
|
|
12
12
|
import { mediaQueryConfig, mediaState } from "../hooks/useMedia";
|
|
13
13
|
import { createMediaStyle } from "./createMediaStyle";
|
|
14
14
|
import { fixNativeShadow } from "./fixNativeShadow";
|
|
@@ -37,38 +37,42 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
37
37
|
let cur = null;
|
|
38
38
|
let transforms = {};
|
|
39
39
|
function mergeClassName(key, val) {
|
|
40
|
-
if (!val)
|
|
40
|
+
if (!val) {
|
|
41
41
|
return;
|
|
42
|
+
}
|
|
42
43
|
if (val.startsWith("_transform-")) {
|
|
43
44
|
const isMediaOrPseudo = key !== "transform";
|
|
44
45
|
const isMedia = isMediaOrPseudo && key[11] === "_";
|
|
45
46
|
const isPsuedo = isMediaOrPseudo && key[11] === "0" || key.endsWith("Style");
|
|
46
47
|
const namespace = isMedia ? key.split("_")[2] : isPsuedo ? key.split("-")[1] : "transform";
|
|
47
48
|
let transform = insertedTransforms[val];
|
|
48
|
-
if (
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
if (!transform) {
|
|
53
|
-
if (isWeb && val[0] !== "_") {
|
|
54
|
-
transform = val;
|
|
55
|
-
} else {
|
|
56
|
-
console.log("?", key, val);
|
|
49
|
+
if (isClient) {
|
|
50
|
+
if (!transform) {
|
|
51
|
+
updateInserted();
|
|
52
|
+
transform = insertedTransforms[val];
|
|
57
53
|
}
|
|
58
|
-
}
|
|
59
|
-
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
60
|
-
console.log(" \xBB getSplitStyles mergeClassName transform", { key, val, namespace, transform, insertedTransforms });
|
|
61
|
-
}
|
|
62
|
-
if (process.env.NODE_ENV === "development") {
|
|
63
54
|
if (!transform) {
|
|
64
|
-
|
|
55
|
+
if (isWeb && val[0] !== "_") {
|
|
56
|
+
transform = val;
|
|
57
|
+
} else {
|
|
58
|
+
console.trace("?", key, val, cur, props, state);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (process.env.NODE_ENV === "development" && props["debug"] === "verbose") {
|
|
62
|
+
console.log(" \xBB getSplitStyles mergeClassName transform", { key, val, namespace, transform, insertedTransforms });
|
|
63
|
+
}
|
|
64
|
+
if (process.env.NODE_ENV === "development") {
|
|
65
|
+
if (!transform) {
|
|
66
|
+
console.trace("NO TRANSFORM?", { key, val, transform });
|
|
67
|
+
}
|
|
65
68
|
}
|
|
66
69
|
}
|
|
67
70
|
transforms[namespace] = transforms[namespace] || ["", ""];
|
|
68
71
|
const identifier = val.replace("_transform", "");
|
|
69
|
-
console.warn("?bug2", key, val, transform, insertedTransforms[val]);
|
|
70
72
|
transforms[namespace][0] += identifier;
|
|
71
|
-
|
|
73
|
+
if (transform) {
|
|
74
|
+
transforms[namespace][1] += transform;
|
|
75
|
+
}
|
|
72
76
|
} else {
|
|
73
77
|
classNames[key] = val;
|
|
74
78
|
}
|
|
@@ -85,8 +89,8 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
85
89
|
const atomic = getStylesAtomic(cur);
|
|
86
90
|
for (const atomicStyle of atomic) {
|
|
87
91
|
if (!state.noClassNames) {
|
|
88
|
-
mergeClassName(atomicStyle.property, atomicStyle.identifier);
|
|
89
92
|
insertStyleRule(atomicStyle.identifier, atomicStyle.rules[0]);
|
|
93
|
+
mergeClassName(atomicStyle.property, atomicStyle.identifier);
|
|
90
94
|
} else {
|
|
91
95
|
style[atomicStyle.property] = atomicStyle.value;
|
|
92
96
|
}
|
|
@@ -114,13 +118,11 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
114
118
|
if (keyInit === "className" || validStyleProps[keyInit] && valInit && valInit[0] === "_") {
|
|
115
119
|
push();
|
|
116
120
|
mergeClassName(keyInit, valInit);
|
|
117
|
-
if (cur) {
|
|
118
|
-
if (cur[keyInit])
|
|
119
|
-
console.warn("just want to see how used");
|
|
120
|
-
delete cur[keyInit];
|
|
121
|
-
}
|
|
122
121
|
continue;
|
|
123
122
|
}
|
|
123
|
+
if (state.keepVariantsAsProps && staticConfig.defaultVariants && keyInit in staticConfig.defaultVariants) {
|
|
124
|
+
viewProps[keyInit] = valInit;
|
|
125
|
+
}
|
|
124
126
|
if (!isMedia && !isPseudo && !((_a = staticConfig.variants) == null ? void 0 : _a[keyInit]) && !validStyleProps[keyInit] && !conf.shorthands[keyInit]) {
|
|
125
127
|
viewProps[keyInit] = valInit;
|
|
126
128
|
continue;
|
|
@@ -154,8 +156,8 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
154
156
|
if (isWeb && !state.noClassNames) {
|
|
155
157
|
const pseudoStyles = getStylesAtomic({ [key]: pseudos[key] });
|
|
156
158
|
for (const style2 of pseudoStyles) {
|
|
157
|
-
mergeClassName(`${style2.property}-${key}`, style2.identifier);
|
|
158
159
|
insertStyleRule(style2.identifier, style2.rules[0]);
|
|
160
|
+
mergeClassName(`${style2.property}-${key}`, style2.identifier);
|
|
159
161
|
}
|
|
160
162
|
}
|
|
161
163
|
continue;
|
|
@@ -176,8 +178,8 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
176
178
|
const mediaStyles = getStylesAtomic(mediaStyle);
|
|
177
179
|
for (const style2 of mediaStyles) {
|
|
178
180
|
const out2 = createMediaStyle(style2, mediaKeyShort, mediaQueryConfig);
|
|
179
|
-
mergeClassName(`${out2.identifier}-${mediaKey}`, out2.identifier);
|
|
180
181
|
insertStyleRule(out2.identifier, out2.styleRule);
|
|
182
|
+
mergeClassName(`${out2.identifier}-${mediaKey}`, out2.identifier);
|
|
181
183
|
}
|
|
182
184
|
} else {
|
|
183
185
|
if (mediaState[mediaKey]) {
|
|
@@ -217,10 +219,11 @@ const getSplitStyles = /* @__PURE__ */ __name((props, staticConfig, theme, state
|
|
|
217
219
|
for (const namespace in transforms) {
|
|
218
220
|
const [hash, val] = transforms[namespace];
|
|
219
221
|
const identifier = `_transform${hash}`;
|
|
220
|
-
if (
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
222
|
+
if (isClient) {
|
|
223
|
+
if (!insertedTransforms[identifier]) {
|
|
224
|
+
const rule = `.${identifier} { transform: ${val}; }`;
|
|
225
|
+
insertStyleRule(identifier, rule);
|
|
226
|
+
}
|
|
224
227
|
}
|
|
225
228
|
classNames[namespace] = identifier;
|
|
226
229
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|