@tamagui/core 1.0.1-beta.192 → 1.0.1-beta.194
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 +4 -2
- package/dist/cjs/Tamagui.js.map +2 -2
- package/dist/cjs/config.js +1 -2
- package/dist/cjs/config.js.map +2 -2
- package/dist/cjs/constants/constants.js +13 -8
- package/dist/cjs/constants/constants.js.map +2 -2
- package/dist/cjs/contexts/TextAncestorContext.js +3 -16
- package/dist/cjs/contexts/TextAncestorContext.js.map +3 -3
- package/dist/cjs/createComponent.js +196 -284
- package/dist/cjs/createComponent.js.map +2 -2
- package/dist/cjs/createTamagui.js +15 -16
- package/dist/cjs/createTamagui.js.map +3 -3
- package/dist/cjs/createVariable.js +1 -2
- package/dist/cjs/createVariable.js.map +2 -2
- package/dist/cjs/helpers/ThemeManager.js +7 -14
- package/dist/cjs/helpers/ThemeManager.js.map +2 -2
- package/dist/cjs/helpers/{createShallowUpdate.js → cache.js} +20 -21
- package/dist/cjs/helpers/cache.js.map +7 -0
- package/dist/cjs/helpers/createMediaStyle.js +14 -8
- package/dist/cjs/helpers/createMediaStyle.js.map +2 -2
- package/dist/cjs/helpers/extendStaticConfig.js +0 -1
- package/dist/cjs/helpers/extendStaticConfig.js.map +2 -2
- package/dist/cjs/helpers/getSplitStyles.js +214 -94
- package/dist/cjs/helpers/getSplitStyles.js.map +3 -3
- package/dist/cjs/helpers/getStylesAtomic.js +16 -36
- package/dist/cjs/helpers/getStylesAtomic.js.map +3 -3
- package/dist/cjs/helpers/getVariantExtras.js +2 -1
- package/dist/cjs/helpers/getVariantExtras.js.map +2 -2
- package/dist/cjs/helpers/insertStyleRule.js +14 -6
- package/dist/cjs/helpers/insertStyleRule.js.map +2 -2
- package/dist/cjs/helpers/matchMedia.js.map +2 -2
- package/dist/cjs/helpers/mergeTransform.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.js +32 -2
- package/dist/cjs/helpers/normalizeValueWithProperty.js.map +2 -2
- package/dist/cjs/helpers/proxyThemeVariables.js +2 -7
- package/dist/cjs/helpers/proxyThemeVariables.js.map +2 -2
- package/dist/cjs/helpers/useShallowSetState.js.map +2 -2
- package/dist/cjs/hooks/getThemeUnwrapped.js +1 -3
- package/dist/cjs/hooks/getThemeUnwrapped.js.map +2 -2
- package/dist/cjs/hooks/useElementLayout.js +92 -0
- package/dist/cjs/hooks/useElementLayout.js.map +7 -0
- package/dist/cjs/hooks/useIsTouchDevice.js +2 -10
- package/dist/cjs/hooks/useIsTouchDevice.js.map +2 -2
- package/dist/cjs/hooks/useMedia.js +79 -85
- package/dist/cjs/hooks/useMedia.js.map +2 -2
- package/dist/cjs/hooks/useMedia.test.js +2 -0
- package/dist/cjs/{helpers/validate.js.map → hooks/useMedia.test.js.map} +0 -0
- package/dist/cjs/hooks/usePressablePressResponder.js +370 -0
- package/dist/cjs/hooks/usePressablePressResponder.js.map +7 -0
- package/dist/cjs/hooks/useSafeRef.js +13 -15
- package/dist/cjs/hooks/useSafeRef.js.map +2 -2
- package/dist/cjs/hooks/useTheme.js +5 -5
- package/dist/cjs/hooks/useTheme.js.map +2 -2
- package/dist/cjs/index.js +1 -17
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/static.js +0 -20
- package/dist/cjs/static.js.map +2 -2
- package/dist/cjs/styled.js +4 -22
- package/dist/cjs/styled.js.map +2 -2
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/{hooks/useIsSSR.js → views/AbsoluteFill.js} +18 -23
- package/dist/cjs/views/AbsoluteFill.js.map +7 -0
- package/dist/cjs/views/AbsoluteFill.native.js +45 -0
- package/dist/cjs/views/AbsoluteFill.native.js.map +7 -0
- package/dist/cjs/views/FontLanguage.native.js.map +2 -2
- package/dist/cjs/views/Stack.js.map +1 -1
- package/dist/cjs/views/TamaguiProvider.js +3 -2
- package/dist/cjs/views/TamaguiProvider.js.map +2 -2
- package/dist/cjs/views/Text.js.map +1 -1
- package/dist/cjs/views/ThemeReset.js +10 -10
- package/dist/cjs/views/ThemeReset.js.map +2 -2
- package/dist/esm/Tamagui.js +4 -2
- package/dist/esm/Tamagui.js.map +2 -2
- package/dist/esm/config.js +1 -2
- package/dist/esm/config.js.map +2 -2
- package/dist/esm/constants/constants.js +11 -7
- package/dist/esm/constants/constants.js.map +2 -2
- package/dist/esm/contexts/TextAncestorContext.js +2 -13
- package/dist/esm/contexts/TextAncestorContext.js.map +2 -2
- package/dist/esm/createComponent.js +195 -286
- package/dist/esm/createComponent.js.map +2 -2
- package/dist/esm/createTamagui.js +15 -16
- package/dist/esm/createTamagui.js.map +3 -3
- package/dist/esm/createVariable.js +1 -2
- package/dist/esm/createVariable.js.map +2 -2
- package/dist/esm/helpers/ThemeManager.js +7 -14
- package/dist/esm/helpers/ThemeManager.js.map +2 -2
- package/dist/esm/helpers/cache.js +18 -0
- package/dist/esm/helpers/cache.js.map +7 -0
- package/dist/esm/helpers/createMediaStyle.js +14 -8
- package/dist/esm/helpers/createMediaStyle.js.map +2 -2
- package/dist/esm/helpers/extendStaticConfig.js +0 -1
- package/dist/esm/helpers/extendStaticConfig.js.map +2 -2
- package/dist/esm/helpers/getSplitStyles.js +223 -95
- package/dist/esm/helpers/getSplitStyles.js.map +3 -3
- package/dist/esm/helpers/getStylesAtomic.js +13 -26
- package/dist/esm/helpers/getStylesAtomic.js.map +2 -2
- package/dist/esm/helpers/getVariantExtras.js +2 -1
- package/dist/esm/helpers/getVariantExtras.js.map +2 -2
- package/dist/esm/helpers/insertStyleRule.js +14 -6
- package/dist/esm/helpers/insertStyleRule.js.map +2 -2
- package/dist/esm/helpers/matchMedia.js.map +2 -2
- package/dist/esm/helpers/mergeTransform.js.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.js +30 -1
- package/dist/esm/helpers/normalizeValueWithProperty.js.map +2 -2
- package/dist/esm/helpers/proxyThemeVariables.js +2 -7
- package/dist/esm/helpers/proxyThemeVariables.js.map +2 -2
- package/dist/esm/helpers/useShallowSetState.js.map +2 -2
- package/dist/esm/hooks/getThemeUnwrapped.js +1 -3
- package/dist/esm/hooks/getThemeUnwrapped.js.map +2 -2
- package/dist/esm/hooks/useElementLayout.js +66 -0
- package/dist/esm/hooks/useElementLayout.js.map +7 -0
- package/dist/esm/hooks/useIsTouchDevice.js +3 -11
- package/dist/esm/hooks/useIsTouchDevice.js.map +2 -2
- package/dist/esm/hooks/useMedia.js +76 -84
- package/dist/esm/hooks/useMedia.js.map +2 -2
- package/dist/esm/hooks/useMedia.test.js +1 -0
- package/dist/esm/{helpers/validate.js.map → hooks/useMedia.test.js.map} +0 -0
- package/dist/esm/hooks/usePressablePressResponder.js +346 -0
- package/dist/esm/hooks/usePressablePressResponder.js.map +7 -0
- package/dist/esm/hooks/useSafeRef.js +13 -15
- package/dist/esm/hooks/useSafeRef.js.map +2 -2
- package/dist/esm/hooks/useTheme.js +5 -5
- package/dist/esm/hooks/useTheme.js.map +2 -2
- package/dist/esm/index.js +1 -14
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/static.js +0 -14
- package/dist/esm/static.js.map +2 -2
- package/dist/esm/styled.js +4 -22
- package/dist/esm/styled.js.map +2 -2
- package/dist/esm/views/AbsoluteFill.js +17 -0
- package/dist/esm/views/AbsoluteFill.js.map +7 -0
- package/dist/esm/views/AbsoluteFill.native.js +21 -0
- package/dist/esm/views/AbsoluteFill.native.js.map +7 -0
- package/dist/esm/views/FontLanguage.native.js.map +2 -2
- package/dist/esm/views/Stack.js.map +1 -1
- package/dist/esm/views/TamaguiProvider.js +5 -4
- package/dist/esm/views/TamaguiProvider.js.map +2 -2
- package/dist/esm/views/Text.js.map +1 -1
- package/dist/esm/views/ThemeReset.js +10 -10
- package/dist/esm/views/ThemeReset.js.map +2 -2
- package/package.json +14 -14
- package/src/Tamagui.ts +7 -3
- package/src/config.ts +2 -3
- package/src/constants/constants.ts +10 -6
- package/src/contexts/TextAncestorContext.tsx +1 -8
- package/src/createComponent.tsx +250 -412
- package/src/createTamagui.ts +16 -19
- package/src/createVariable.ts +1 -3
- package/src/helpers/ThemeManager.tsx +7 -15
- package/src/helpers/cache.ts +18 -0
- package/src/helpers/createMediaStyle.ts +16 -9
- package/src/helpers/createProxy.ts +16 -0
- package/src/helpers/extendStaticConfig.ts +0 -1
- package/src/helpers/getSplitStyles.tsx +259 -152
- package/src/helpers/getStylesAtomic.ts +14 -34
- package/src/helpers/getVariantExtras.tsx +2 -1
- package/src/helpers/insertStyleRule.tsx +16 -8
- package/src/helpers/matchMedia.ts +1 -0
- package/src/helpers/mergeTransform.ts +1 -1
- package/src/helpers/normalizeValueWithProperty.ts +30 -0
- package/src/helpers/proxyThemeVariables.tsx +3 -8
- package/src/helpers/useShallowSetState.tsx +0 -1
- package/src/hooks/getThemeUnwrapped.tsx +1 -2
- package/src/hooks/useElementLayout.tsx +90 -0
- package/src/hooks/useIsTouchDevice.tsx +3 -17
- package/src/hooks/useMedia.tsx +82 -88
- package/src/hooks/useSafeRef.ts +17 -18
- package/src/hooks/useTheme.tsx +6 -5
- package/src/index.ts +1 -11
- package/src/static.ts +0 -10
- package/src/styled.tsx +15 -33
- package/src/types.tsx +58 -55
- package/src/views/FontLanguage.native.tsx +1 -0
- package/src/views/Stack.tsx +1 -1
- package/src/views/TamaguiProvider.tsx +5 -5
- package/src/views/Text.tsx +1 -1
- package/src/views/ThemeReset.tsx +11 -11
- package/types/Tamagui.d.ts +6 -4
- package/types/constants/constants.d.ts +14 -3
- package/types/contexts/TextAncestorContext.d.ts +1 -3
- package/types/createComponent.d.ts +0 -15
- package/types/helpers/ThemeManager.d.ts +2 -3
- package/types/helpers/cache.d.ts +12 -0
- package/types/helpers/calc.d.ts +0 -16
- package/types/helpers/createMediaStyle.d.ts +1 -1
- package/types/helpers/createProxy.d.ts +2 -0
- package/types/helpers/getSplitStyles.d.ts +6 -10
- package/types/helpers/getStylesAtomic.d.ts +1 -5
- package/types/helpers/insertStyleRule.d.ts +2 -2
- package/types/helpers/mergeTransform.d.ts +1 -1
- package/types/helpers/normalizeValueWithProperty.d.ts +1 -0
- package/types/hooks/useElementLayout.d.ts +27 -0
- package/types/hooks/useMedia.d.ts +3 -1
- package/types/hooks/useMedia.test.d.ts +1 -0
- package/types/hooks/usePressablePressResponder.d.ts +84 -0
- package/types/index.d.ts +1 -11
- package/types/static.d.ts +0 -1
- package/types/types.d.ts +42 -44
- package/types/views/AbsoluteFill.d.ts +5 -0
- package/types/views/AbsoluteFill.native.d.ts +3 -0
- package/types/views/Stack.d.ts +1 -1
- package/types/views/Text.d.ts +1 -1
- package/dist/cjs/constants/platform.js +0 -74
- package/dist/cjs/constants/platform.js.map +0 -7
- package/dist/cjs/constants/platform.native.js +0 -62
- package/dist/cjs/constants/platform.native.js.map +0 -7
- package/dist/cjs/helpers/createShallowUpdate.js.map +0 -7
- package/dist/cjs/helpers/validate.js +0 -2
- package/dist/cjs/hooks/useDidFinishSSR.js +0 -60
- package/dist/cjs/hooks/useDidFinishSSR.js.map +0 -7
- package/dist/cjs/hooks/useIsSSR.js.map +0 -7
- package/dist/esm/constants/platform.js +0 -39
- package/dist/esm/constants/platform.js.map +0 -7
- package/dist/esm/constants/platform.native.js +0 -28
- package/dist/esm/constants/platform.native.js.map +0 -7
- package/dist/esm/helpers/createShallowUpdate.js +0 -20
- package/dist/esm/helpers/createShallowUpdate.js.map +0 -7
- package/dist/esm/helpers/validate.js +0 -1
- package/dist/esm/hooks/useDidFinishSSR.js +0 -35
- package/dist/esm/hooks/useDidFinishSSR.js.map +0 -7
- package/dist/esm/hooks/useIsSSR.js +0 -22
- package/dist/esm/hooks/useIsSSR.js.map +0 -7
- package/src/helpers/assignNativePropsToWeb.tsx +0 -178
- package/src/helpers/calc.ts +0 -68
- package/src/helpers/getFont.tsx +0 -43
- package/src/helpers/getStackSize.ts +0 -22
- package/src/helpers/startTransition.ts +0 -4
- package/src/hooks/useConstant.tsx +0 -19
- package/src/hooks/useIsMounted.ts +0 -16
- package/src/hooks/usePressable.tsx +0 -9
- package/src/hooks/useUnmountEffect.ts +0 -5
|
@@ -22,7 +22,6 @@ __export(getSplitStyles_exports, {
|
|
|
22
22
|
getSplitStyles: () => getSplitStyles,
|
|
23
23
|
getSubStyle: () => getSubStyle,
|
|
24
24
|
insertSplitStyles: () => insertSplitStyles,
|
|
25
|
-
pseudoCNInverse: () => pseudoCNInverse,
|
|
26
25
|
useSplitStyles: () => useSplitStyles
|
|
27
26
|
});
|
|
28
27
|
module.exports = __toCommonJS(getSplitStyles_exports);
|
|
@@ -34,6 +33,7 @@ var import_isDevTools = require("../constants/isDevTools");
|
|
|
34
33
|
var import_useMedia = require("../hooks/useMedia");
|
|
35
34
|
var import_createMediaStyle = require("./createMediaStyle");
|
|
36
35
|
var import_createPropMapper = require("./createPropMapper");
|
|
36
|
+
var import_createProxy = require("./createProxy");
|
|
37
37
|
var import_expandStyles = require("./expandStyles");
|
|
38
38
|
var import_getStylesAtomic = require("./getStylesAtomic");
|
|
39
39
|
var import_insertStyleRule = require("./insertStyleRule");
|
|
@@ -44,11 +44,12 @@ const skipProps = {
|
|
|
44
44
|
animation: true,
|
|
45
45
|
animateOnly: true,
|
|
46
46
|
debug: true,
|
|
47
|
-
componentName: true
|
|
47
|
+
componentName: true,
|
|
48
|
+
role: true,
|
|
49
|
+
tag: true
|
|
48
50
|
};
|
|
49
51
|
if (process.env.TAMAGUI_TARGET === "native") {
|
|
50
52
|
Object.assign(skipProps, {
|
|
51
|
-
tag: true,
|
|
52
53
|
whiteSpace: true,
|
|
53
54
|
wordWrap: true,
|
|
54
55
|
textOverflow: true,
|
|
@@ -61,15 +62,67 @@ if (process.env.TAMAGUI_TARGET === "native") {
|
|
|
61
62
|
boxShadow: true
|
|
62
63
|
});
|
|
63
64
|
}
|
|
65
|
+
const accessibilityDirectMap = {};
|
|
66
|
+
if (process.env.TAMAGUI_TARGET === "web") {
|
|
67
|
+
const items = {
|
|
68
|
+
Hidden: true,
|
|
69
|
+
ActiveDescendant: true,
|
|
70
|
+
Atomic: true,
|
|
71
|
+
AutoComplete: true,
|
|
72
|
+
Busy: true,
|
|
73
|
+
Checked: true,
|
|
74
|
+
ColumnCount: "colcount",
|
|
75
|
+
ColumnIndex: "colindex",
|
|
76
|
+
ColumnSpan: "colspan",
|
|
77
|
+
Current: true,
|
|
78
|
+
Details: true,
|
|
79
|
+
ErrorMessage: true,
|
|
80
|
+
Expanded: true,
|
|
81
|
+
HasPopup: true,
|
|
82
|
+
Invalid: true,
|
|
83
|
+
Label: true,
|
|
84
|
+
Level: true,
|
|
85
|
+
Modal: true,
|
|
86
|
+
Multiline: true,
|
|
87
|
+
MultiSelectable: true,
|
|
88
|
+
Orientation: true,
|
|
89
|
+
Owns: true,
|
|
90
|
+
Placeholder: true,
|
|
91
|
+
PosInSet: true,
|
|
92
|
+
Pressed: true,
|
|
93
|
+
RoleDescription: true,
|
|
94
|
+
RowCount: true,
|
|
95
|
+
RowIndex: true,
|
|
96
|
+
RowSpan: true,
|
|
97
|
+
Selected: true,
|
|
98
|
+
SetSize: true,
|
|
99
|
+
Sort: true,
|
|
100
|
+
ValueMax: true,
|
|
101
|
+
ValueMin: true,
|
|
102
|
+
ValueNow: true,
|
|
103
|
+
ValueText: true
|
|
104
|
+
};
|
|
105
|
+
for (const key in items) {
|
|
106
|
+
let val = items[key];
|
|
107
|
+
if (val === true) {
|
|
108
|
+
val = key.toLowerCase();
|
|
109
|
+
}
|
|
110
|
+
accessibilityDirectMap[`accessibility${key}`] = `aria-${val}`;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
64
113
|
let conf;
|
|
65
114
|
const PROP_SPLIT = "-";
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
115
|
+
const accessibilityRoleToWebRole = {
|
|
116
|
+
adjustable: "slider",
|
|
117
|
+
header: "heading",
|
|
118
|
+
image: "img",
|
|
119
|
+
link: "link",
|
|
120
|
+
none: "presentation",
|
|
121
|
+
summary: "region"
|
|
70
122
|
};
|
|
71
|
-
const
|
|
72
|
-
|
|
123
|
+
const isMediaKey = (key) => Boolean(key[0] === "$" && import_useMedia.mediaQueryConfig[key.slice(1)]);
|
|
124
|
+
const getSplitStyles = (props, staticConfig, theme, state, parentSplitStyles, languageContext, elementType, debug) => {
|
|
125
|
+
var _a, _b, _c, _d, _e;
|
|
73
126
|
conf = conf || (0, import_config.getConfig)();
|
|
74
127
|
const validStyleProps = staticConfig.isText ? import_helpers.stylePropsText : import_helpers.validStyles;
|
|
75
128
|
const mediaKeys = [];
|
|
@@ -77,15 +130,12 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
77
130
|
const pseudos = {};
|
|
78
131
|
const medias = {};
|
|
79
132
|
const mediaState = state.mediaState || import_useMedia.mediaState;
|
|
80
|
-
const usedKeys =
|
|
133
|
+
const usedKeys = {};
|
|
81
134
|
const propKeys = Object.keys(props);
|
|
82
|
-
const shouldDoClasses = staticConfig.acceptsClassName && (import_constants.isWeb || process.env.IS_STATIC === "is_static") && !state.noClassNames
|
|
135
|
+
const shouldDoClasses = staticConfig.acceptsClassName && (import_constants.isWeb || process.env.IS_STATIC === "is_static") && !state.noClassNames;
|
|
83
136
|
const len = propKeys.length;
|
|
84
137
|
const rulesToInsert = [];
|
|
85
138
|
const style = {};
|
|
86
|
-
if (state.hasTextAncestor) {
|
|
87
|
-
style.display = "inline-flex";
|
|
88
|
-
}
|
|
89
139
|
const classNames = {};
|
|
90
140
|
const transforms = {};
|
|
91
141
|
let fontFamily;
|
|
@@ -96,7 +146,7 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
96
146
|
if (expandedKey) {
|
|
97
147
|
keyInit = expandedKey;
|
|
98
148
|
}
|
|
99
|
-
if (usedKeys
|
|
149
|
+
if (usedKeys[keyInit])
|
|
100
150
|
continue;
|
|
101
151
|
if (skipProps[keyInit])
|
|
102
152
|
continue;
|
|
@@ -105,24 +155,97 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
105
155
|
if (keyInit === "style" || keyInit.startsWith("_style")) {
|
|
106
156
|
if (!valInit)
|
|
107
157
|
continue;
|
|
108
|
-
|
|
109
|
-
|
|
158
|
+
const styles = Array.isArray(valInit) ? valInit : [valInit];
|
|
159
|
+
const styleLen = styles.length;
|
|
160
|
+
for (let j = styleLen; j >= 0; j--) {
|
|
161
|
+
const cur = styles[j];
|
|
162
|
+
if (!cur)
|
|
110
163
|
continue;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
style[skey] = valInit[skey];
|
|
117
|
-
}
|
|
118
|
-
} else {
|
|
119
|
-
usedKeys.add(key);
|
|
120
|
-
style[key] = valInit;
|
|
164
|
+
for (const key in cur) {
|
|
165
|
+
if (usedKeys[key])
|
|
166
|
+
continue;
|
|
167
|
+
usedKeys[key] = 1;
|
|
168
|
+
style[key] = cur[key];
|
|
121
169
|
}
|
|
122
170
|
}
|
|
123
171
|
continue;
|
|
124
172
|
}
|
|
125
173
|
if (process.env.TAMAGUI_TARGET === "web") {
|
|
174
|
+
if (keyInit === "disabled" && valInit === true) {
|
|
175
|
+
usedKeys[keyInit] = 1;
|
|
176
|
+
viewProps["aria-disabled"] = true;
|
|
177
|
+
if (elementType === "button" || elementType === "form" || elementType === "input" || elementType === "select" || elementType === "textarea") {
|
|
178
|
+
viewProps.disabled = true;
|
|
179
|
+
}
|
|
180
|
+
continue;
|
|
181
|
+
}
|
|
182
|
+
if (accessibilityDirectMap[keyInit]) {
|
|
183
|
+
viewProps[accessibilityDirectMap[keyInit]] = valInit;
|
|
184
|
+
usedKeys[keyInit] = 1;
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
let didUseKeyInit = true;
|
|
188
|
+
switch (keyInit) {
|
|
189
|
+
case "nativeID": {
|
|
190
|
+
viewProps.id = valInit;
|
|
191
|
+
break;
|
|
192
|
+
}
|
|
193
|
+
case "accessibilityRole": {
|
|
194
|
+
if (valInit === "none") {
|
|
195
|
+
viewProps.role = "presentation";
|
|
196
|
+
} else {
|
|
197
|
+
viewProps.role = accessibilityRoleToWebRole[valInit] || valInit;
|
|
198
|
+
}
|
|
199
|
+
break;
|
|
200
|
+
}
|
|
201
|
+
case "accessibilityControls": {
|
|
202
|
+
viewProps["aria-controls"] = processIDRefList(valInit);
|
|
203
|
+
break;
|
|
204
|
+
}
|
|
205
|
+
case "accessibilityDescribedBy": {
|
|
206
|
+
viewProps["aria-describedby"] = processIDRefList(valInit);
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
case "accessibilityFlowTo": {
|
|
210
|
+
viewProps["aria-flowto"] = processIDRefList(valInit);
|
|
211
|
+
break;
|
|
212
|
+
}
|
|
213
|
+
case "accessibilityLabelledBy": {
|
|
214
|
+
viewProps["aria-labelledby"] = processIDRefList(valInit);
|
|
215
|
+
break;
|
|
216
|
+
}
|
|
217
|
+
case "accessibilityKeyShortcuts": {
|
|
218
|
+
if (Array.isArray(valInit)) {
|
|
219
|
+
viewProps["aria-keyshortcuts"] = valInit.join(" ");
|
|
220
|
+
}
|
|
221
|
+
break;
|
|
222
|
+
}
|
|
223
|
+
case "accessibilityLiveRegion": {
|
|
224
|
+
viewProps["aria-live"] = valInit === "none" ? "off" : valInit;
|
|
225
|
+
break;
|
|
226
|
+
}
|
|
227
|
+
case "accessibilityReadOnly": {
|
|
228
|
+
viewProps["aria-readonly"] = valInit;
|
|
229
|
+
if (elementType === "input" || elementType === "select" || elementType === "textarea") {
|
|
230
|
+
viewProps.readOnly = true;
|
|
231
|
+
}
|
|
232
|
+
break;
|
|
233
|
+
}
|
|
234
|
+
case "accessibilityRequired": {
|
|
235
|
+
viewProps["aria-required"] = valInit;
|
|
236
|
+
if (elementType === "input" || elementType === "select" || elementType === "textarea") {
|
|
237
|
+
viewProps.required = true;
|
|
238
|
+
}
|
|
239
|
+
break;
|
|
240
|
+
}
|
|
241
|
+
default: {
|
|
242
|
+
didUseKeyInit = false;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
if (didUseKeyInit) {
|
|
246
|
+
usedKeys[keyInit] = 1;
|
|
247
|
+
continue;
|
|
248
|
+
}
|
|
126
249
|
if (keyInit === "className") {
|
|
127
250
|
let nonTamaguis = "";
|
|
128
251
|
if (!valInit)
|
|
@@ -132,7 +255,7 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
132
255
|
const [shorthand, mediaOrPseudo] = cn.slice(1).split("-");
|
|
133
256
|
const isMedia2 = mediaOrPseudo[0] === "_";
|
|
134
257
|
const isPseudo2 = mediaOrPseudo[0] === "0";
|
|
135
|
-
const
|
|
258
|
+
const isMediaOrPseudo = isMedia2 || isPseudo2;
|
|
136
259
|
let fullKey = conf.shorthands[shorthand];
|
|
137
260
|
if (isMedia2) {
|
|
138
261
|
let mediaShortKey = mediaOrPseudo.slice(1);
|
|
@@ -142,24 +265,24 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
142
265
|
const pseudoShortKey = mediaOrPseudo.slice(1);
|
|
143
266
|
fullKey += `${PROP_SPLIT}${pseudoShortKey}`;
|
|
144
267
|
}
|
|
145
|
-
usedKeys
|
|
146
|
-
mergeClassName(transforms, classNames, fullKey, cn,
|
|
268
|
+
usedKeys[fullKey] = 1;
|
|
269
|
+
mergeClassName(transforms, classNames, fullKey, cn, isMediaOrPseudo);
|
|
147
270
|
} else {
|
|
148
271
|
nonTamaguis += " " + cn;
|
|
149
272
|
}
|
|
150
273
|
}
|
|
151
274
|
if (nonTamaguis) {
|
|
152
|
-
usedKeys
|
|
275
|
+
usedKeys[keyInit] = 1;
|
|
153
276
|
mergeClassName(transforms, classNames, keyInit, nonTamaguis);
|
|
154
277
|
}
|
|
155
278
|
continue;
|
|
156
279
|
}
|
|
157
280
|
if (valInit && valInit[0] === "_") {
|
|
158
281
|
const isValidClassName = import_helpers.validStyles[keyInit];
|
|
159
|
-
const
|
|
160
|
-
if (isValidClassName ||
|
|
161
|
-
usedKeys
|
|
162
|
-
mergeClassName(transforms, classNames, keyInit, valInit,
|
|
282
|
+
const isMediaOrPseudo = !isValidClassName && keyInit.includes(PROP_SPLIT) && import_helpers.validStyles[keyInit.split(PROP_SPLIT)[0]];
|
|
283
|
+
if (isValidClassName || isMediaOrPseudo) {
|
|
284
|
+
usedKeys[keyInit] = 1;
|
|
285
|
+
mergeClassName(transforms, classNames, keyInit, valInit, isMediaOrPseudo);
|
|
163
286
|
continue;
|
|
164
287
|
}
|
|
165
288
|
}
|
|
@@ -169,11 +292,10 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
169
292
|
viewProps[keyInit] = valInit;
|
|
170
293
|
}
|
|
171
294
|
}
|
|
172
|
-
let isMedia = keyInit
|
|
295
|
+
let isMedia = isMediaKey(keyInit);
|
|
173
296
|
let isPseudo = import_helpers.validPseudoKeys[keyInit];
|
|
174
|
-
let isMediaOrPseudo = isMedia || isPseudo;
|
|
175
297
|
if (!isMedia && !isPseudo && !((_a = staticConfig.variants) == null ? void 0 : _a[keyInit]) && !validStyleProps[keyInit] && !conf.shorthands[keyInit]) {
|
|
176
|
-
usedKeys
|
|
298
|
+
usedKeys[keyInit] = 1;
|
|
177
299
|
viewProps[keyInit] = valInit;
|
|
178
300
|
continue;
|
|
179
301
|
}
|
|
@@ -194,25 +316,25 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
194
316
|
fontFamily = (0, import_createPropMapper.getPropMappedFontFamily)(expanded);
|
|
195
317
|
}
|
|
196
318
|
if (process.env.NODE_ENV === "development" && debug === "verbose") {
|
|
197
|
-
|
|
198
|
-
|
|
319
|
+
if (import_constants.isClient) {
|
|
320
|
+
console.log("expanded", expanded);
|
|
321
|
+
console.log("usedKeys", usedKeys);
|
|
322
|
+
}
|
|
199
323
|
console.groupEnd();
|
|
200
324
|
}
|
|
201
|
-
if (!expanded)
|
|
325
|
+
if (!expanded)
|
|
202
326
|
continue;
|
|
203
|
-
}
|
|
204
327
|
for (const [key, val] of expanded) {
|
|
205
328
|
if (val === void 0)
|
|
206
329
|
continue;
|
|
207
|
-
isMedia = key
|
|
330
|
+
isMedia = isMediaKey(key);
|
|
208
331
|
isPseudo = import_helpers.validPseudoKeys[key];
|
|
209
|
-
isMediaOrPseudo = isMedia || isPseudo;
|
|
210
|
-
if (!isMediaOrPseudo) {
|
|
211
|
-
|
|
212
|
-
continue;
|
|
332
|
+
const isMediaOrPseudo = isMedia || isPseudo;
|
|
333
|
+
if (!isMediaOrPseudo && usedKeys[key]) {
|
|
334
|
+
continue;
|
|
213
335
|
}
|
|
214
|
-
if (staticConfig.deoptProps
|
|
215
|
-
usedKeys
|
|
336
|
+
if (((_b = staticConfig.deoptProps) == null ? void 0 : _b.has(key)) || ((_c = staticConfig.inlineProps) == null ? void 0 : _c.has(key)) || ((_d = staticConfig.inlineWhenUnflattened) == null ? void 0 : _d.has(key))) {
|
|
337
|
+
usedKeys[key] = 1;
|
|
216
338
|
viewProps[key] = props[key] ?? val;
|
|
217
339
|
}
|
|
218
340
|
if (isPseudo) {
|
|
@@ -221,7 +343,7 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
221
343
|
if (key === "enterStyle" && state.mounted) {
|
|
222
344
|
continue;
|
|
223
345
|
}
|
|
224
|
-
pseudos[key]
|
|
346
|
+
pseudos[key] ?? (pseudos[key] = {});
|
|
225
347
|
const pseudoStyleObject = getSubStyle(
|
|
226
348
|
key,
|
|
227
349
|
val,
|
|
@@ -237,17 +359,21 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
237
359
|
...pseudoStyleObject,
|
|
238
360
|
...pseudos[key]
|
|
239
361
|
};
|
|
240
|
-
if (
|
|
362
|
+
if (key === "enterStyle" || key === "exitStyle") {
|
|
363
|
+
continue;
|
|
364
|
+
}
|
|
365
|
+
if (shouldDoClasses) {
|
|
241
366
|
const pseudoStyles = (0, import_getStylesAtomic.getAtomicStyle)(pseudoStyleObject, import_pseudoDescriptors.pseudoDescriptors[key]);
|
|
242
367
|
for (const style2 of pseudoStyles) {
|
|
243
|
-
const postfix = ((
|
|
368
|
+
const postfix = ((_e = import_pseudoDescriptors.pseudoDescriptors[key]) == null ? void 0 : _e.name) || key;
|
|
244
369
|
const fullKey = `${style2.property}${PROP_SPLIT}${postfix}`;
|
|
245
|
-
if (!usedKeys
|
|
246
|
-
usedKeys
|
|
370
|
+
if (!usedKeys[fullKey]) {
|
|
371
|
+
usedKeys[fullKey] = 1;
|
|
247
372
|
addStyleToInsertRules(rulesToInsert, style2);
|
|
248
373
|
mergeClassName(transforms, classNames, fullKey, style2.identifier, isMediaOrPseudo);
|
|
249
374
|
}
|
|
250
375
|
}
|
|
376
|
+
} else {
|
|
251
377
|
}
|
|
252
378
|
continue;
|
|
253
379
|
}
|
|
@@ -255,18 +381,6 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
255
381
|
const mediaKey = key;
|
|
256
382
|
const mediaKeyShort = mediaKey.slice(1);
|
|
257
383
|
mediaKeys.push(mediaKeyShort);
|
|
258
|
-
if (!import_useMedia.mediaQueryConfig[mediaKeyShort]) {
|
|
259
|
-
if (process.env.NODE_ENV === "development" && debug) {
|
|
260
|
-
console.warn(
|
|
261
|
-
`Warning: using a $ prefixed prop that doesn't match to a media query, may be an error`,
|
|
262
|
-
key
|
|
263
|
-
);
|
|
264
|
-
}
|
|
265
|
-
if (!usedKeys.has(key)) {
|
|
266
|
-
viewProps[key] = val;
|
|
267
|
-
}
|
|
268
|
-
continue;
|
|
269
|
-
}
|
|
270
384
|
const mediaStyle = getSubStyle(
|
|
271
385
|
key,
|
|
272
386
|
val,
|
|
@@ -285,34 +399,24 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
285
399
|
for (const style2 of mediaStyles) {
|
|
286
400
|
const out = (0, import_createMediaStyle.createMediaStyle)(style2, mediaKeyShort, import_useMedia.mediaQueryConfig);
|
|
287
401
|
const fullKey = `${style2.property}${PROP_SPLIT}${mediaKeyShort}`;
|
|
288
|
-
if (!usedKeys
|
|
289
|
-
usedKeys
|
|
402
|
+
if (!usedKeys[fullKey]) {
|
|
403
|
+
usedKeys[fullKey] = 1;
|
|
290
404
|
addStyleToInsertRules(rulesToInsert, out);
|
|
291
405
|
mergeClassName(transforms, classNames, fullKey, out.identifier, true);
|
|
292
406
|
}
|
|
293
407
|
}
|
|
294
|
-
} else {
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
if (shouldDoClasses) {
|
|
300
|
-
Object.assign(medias, mediaStyle);
|
|
301
|
-
} else {
|
|
302
|
-
for (const key2 in mediaStyle) {
|
|
303
|
-
usedKeys.add(key2);
|
|
304
|
-
style[key2] = mediaStyle[key2];
|
|
305
|
-
if (key2 === "fontFamily") {
|
|
306
|
-
fontFamily = mediaStyle[key2];
|
|
307
|
-
}
|
|
308
|
-
}
|
|
408
|
+
} else if (mediaState[mediaKeyShort]) {
|
|
409
|
+
for (const key2 in mediaStyle) {
|
|
410
|
+
const didMerge = (0, import_useMedia.mergeMediaByImportance)(style, key2, mediaStyle[key2], usedKeys);
|
|
411
|
+
if (didMerge && key2 === "fontFamily") {
|
|
412
|
+
fontFamily = mediaStyle[key2];
|
|
309
413
|
}
|
|
310
414
|
}
|
|
311
415
|
}
|
|
312
416
|
continue;
|
|
313
417
|
}
|
|
314
418
|
if (!import_constants.isWeb && key === "pointerEvents") {
|
|
315
|
-
usedKeys
|
|
419
|
+
usedKeys[key] = 1;
|
|
316
420
|
viewProps[key] = val;
|
|
317
421
|
continue;
|
|
318
422
|
}
|
|
@@ -320,7 +424,7 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
320
424
|
fontFamily = valInit[0] === "$" ? valInit : val;
|
|
321
425
|
}
|
|
322
426
|
if (validStyleProps[key]) {
|
|
323
|
-
usedKeys
|
|
427
|
+
usedKeys[key] = 1;
|
|
324
428
|
if (val && val[0] === "_") {
|
|
325
429
|
classNames[key] = val;
|
|
326
430
|
} else if (key in import_helpers.stylePropsTransform) {
|
|
@@ -333,7 +437,7 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
333
437
|
if (!staticConfig.variants || !(key in staticConfig.variants)) {
|
|
334
438
|
if (!skipProps[key]) {
|
|
335
439
|
viewProps[key] = val;
|
|
336
|
-
usedKeys
|
|
440
|
+
usedKeys[key] = 1;
|
|
337
441
|
}
|
|
338
442
|
}
|
|
339
443
|
}
|
|
@@ -342,10 +446,26 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
342
446
|
if (import_constants.isWeb) {
|
|
343
447
|
(0, import_getStylesAtomic.styleToCSS)(style);
|
|
344
448
|
}
|
|
345
|
-
if (
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
449
|
+
if (parentSplitStyles) {
|
|
450
|
+
if (process.env.TAMAGUI_TARGET === "web") {
|
|
451
|
+
for (const key in parentSplitStyles.classNames) {
|
|
452
|
+
if (key in classNames)
|
|
453
|
+
continue;
|
|
454
|
+
if (key in style)
|
|
455
|
+
continue;
|
|
456
|
+
const val = parentSplitStyles.classNames[key];
|
|
457
|
+
if (!shouldDoClasses) {
|
|
458
|
+
style[key] = (0, import_normalizeValueWithProperty.reverseMapClassNameToValue)(key, val);
|
|
459
|
+
} else {
|
|
460
|
+
classNames[key] = val;
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
if (!shouldDoClasses) {
|
|
465
|
+
for (const key in parentSplitStyles.style) {
|
|
466
|
+
if (key in style)
|
|
467
|
+
continue;
|
|
468
|
+
style[key] = parentSplitStyles.style[key];
|
|
349
469
|
}
|
|
350
470
|
}
|
|
351
471
|
}
|
|
@@ -358,8 +478,6 @@ const getSplitStyles = (props, staticConfig, theme, state, defaultClassNames, la
|
|
|
358
478
|
mergeClassName(transforms, classNames, key, atomicStyle.identifier);
|
|
359
479
|
}
|
|
360
480
|
}
|
|
361
|
-
}
|
|
362
|
-
if (process.env.TAMAGUI_TARGET === "web") {
|
|
363
481
|
if (transforms) {
|
|
364
482
|
for (const namespace in transforms) {
|
|
365
483
|
if (!transforms[namespace]) {
|
|
@@ -447,7 +565,7 @@ function getSubStyleProxiedProps(defaultProps, baseProps, specificProps) {
|
|
|
447
565
|
if (propProxies.has(specificProps)) {
|
|
448
566
|
return propProxies.get(specificProps);
|
|
449
567
|
}
|
|
450
|
-
const next =
|
|
568
|
+
const next = (0, import_createProxy.createProxy)(specificProps, {
|
|
451
569
|
has(_, key) {
|
|
452
570
|
return key in defaultProps || key in specificProps || key in baseProps;
|
|
453
571
|
},
|
|
@@ -510,13 +628,15 @@ function addStyleToInsertRules(rulesToInsert, styleObject) {
|
|
|
510
628
|
rulesToInsert.push(styleObject);
|
|
511
629
|
}
|
|
512
630
|
}
|
|
631
|
+
function processIDRefList(idRefList) {
|
|
632
|
+
return Array.isArray(idRefList) ? idRefList.join(" ") : idRefList;
|
|
633
|
+
}
|
|
513
634
|
// Annotate the CommonJS export names for ESM import in node:
|
|
514
635
|
0 && (module.exports = {
|
|
515
636
|
PROP_SPLIT,
|
|
516
637
|
getSplitStyles,
|
|
517
638
|
getSubStyle,
|
|
518
639
|
insertSplitStyles,
|
|
519
|
-
pseudoCNInverse,
|
|
520
640
|
useSplitStyles
|
|
521
641
|
});
|
|
522
642
|
//# sourceMappingURL=getSplitStyles.js.map
|