@tamagui/web 1.123.6 → 1.123.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/helpers/getCSSStylesAtomic.cjs +176 -0
- package/dist/cjs/helpers/getCSSStylesAtomic.js +152 -0
- package/dist/cjs/helpers/getCSSStylesAtomic.js.map +6 -0
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js +203 -0
- package/dist/cjs/helpers/getCSSStylesAtomic.native.js.map +6 -0
- package/dist/cjs/helpers/getSplitStyles.cjs +5 -5
- package/dist/cjs/helpers/getSplitStyles.js +5 -5
- package/dist/cjs/helpers/getSplitStyles.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.native.js +4 -4
- package/dist/cjs/helpers/getSplitStyles.native.js.map +2 -2
- package/dist/cjs/helpers/getStylesAtomic.native.js +3 -3
- package/dist/cjs/helpers/getStylesAtomic.native.js.map +2 -2
- package/dist/cjs/helpers/transformsToString.cjs +1 -0
- package/dist/cjs/helpers/transformsToString.js +1 -0
- package/dist/cjs/helpers/transformsToString.js.map +1 -1
- package/dist/cjs/helpers/transformsToString.native.js +1 -0
- package/dist/cjs/helpers/transformsToString.native.js.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +2 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/helpers/getCSSStylesAtomic.js +143 -0
- package/dist/esm/helpers/getCSSStylesAtomic.js.map +6 -0
- package/dist/esm/helpers/getCSSStylesAtomic.mjs +151 -0
- package/dist/esm/helpers/getCSSStylesAtomic.mjs.map +1 -0
- package/dist/esm/helpers/getCSSStylesAtomic.native.js +187 -0
- package/dist/esm/helpers/getCSSStylesAtomic.native.js.map +6 -0
- package/dist/esm/helpers/getSplitStyles.js +3 -3
- package/dist/esm/helpers/getSplitStyles.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +3 -3
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +2 -2
- package/dist/esm/helpers/getSplitStyles.native.js.map +2 -2
- package/dist/esm/helpers/getStylesAtomic.native.js +2 -2
- package/dist/esm/helpers/getStylesAtomic.native.js.map +2 -2
- package/dist/esm/helpers/transformsToString.js +1 -0
- package/dist/esm/helpers/transformsToString.js.map +1 -1
- package/dist/esm/helpers/transformsToString.mjs +1 -0
- package/dist/esm/helpers/transformsToString.mjs.map +1 -1
- package/dist/esm/helpers/transformsToString.native.js +1 -0
- package/dist/esm/helpers/transformsToString.native.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/index.native.js +1 -1
- package/package.json +11 -11
- package/src/helpers/{getStylesAtomic.ts → getCSSStylesAtomic.ts} +1 -1
- package/src/helpers/getSplitStyles.tsx +4 -4
- package/src/helpers/getStylesAtomic.native.ts +1 -1
- package/src/helpers/transformsToString.ts +1 -0
- package/src/index.ts +1 -1
- package/types/helpers/getStylesAtomic.d.ts +10 -7
- package/types/helpers/getStylesAtomic.native.d.ts +4 -4
- package/types/index.d.ts +91 -72
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { simpleHash } from "@tamagui/helpers";
|
|
2
|
+
import { getConfigMaybe } from "../config";
|
|
3
|
+
import { defaultOffset } from "./defaultOffset";
|
|
4
|
+
import { normalizeColor } from "./normalizeColor";
|
|
5
|
+
import { normalizeValueWithProperty } from "./normalizeValueWithProperty";
|
|
6
|
+
import { pseudoDescriptors } from "./pseudoDescriptors";
|
|
7
|
+
import { transformsToString } from "./transformsToString";
|
|
8
|
+
import { isMediaKey } from "../hooks/useMedia";
|
|
9
|
+
function getCSSStylesAtomic(style) {
|
|
10
|
+
styleToCSS(style);
|
|
11
|
+
const out = [];
|
|
12
|
+
for (const key in style) {
|
|
13
|
+
if (key === "$$css") continue;
|
|
14
|
+
const val = style[key];
|
|
15
|
+
if (key in pseudoDescriptors)
|
|
16
|
+
val && out.push(...getStyleAtomic(val, pseudoDescriptors[key]));
|
|
17
|
+
else if (isMediaKey(key))
|
|
18
|
+
for (const subKey in val) {
|
|
19
|
+
const so = getStyleObject(val, subKey);
|
|
20
|
+
so && (so[0] = key, out.push(so));
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
const so = getStyleObject(style, key);
|
|
24
|
+
so && out.push(so);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return out;
|
|
28
|
+
}
|
|
29
|
+
const getStyleAtomic = (style, pseudo) => {
|
|
30
|
+
styleToCSS(style);
|
|
31
|
+
const out = [];
|
|
32
|
+
for (const key in style) {
|
|
33
|
+
const so = getStyleObject(style, key, pseudo);
|
|
34
|
+
so && out.push(so);
|
|
35
|
+
}
|
|
36
|
+
return out;
|
|
37
|
+
};
|
|
38
|
+
let conf = null;
|
|
39
|
+
const getStyleObject = (style, key, pseudo) => {
|
|
40
|
+
let val = style[key];
|
|
41
|
+
if (val == null) return;
|
|
42
|
+
key === "transform" && Array.isArray(style.transform) && (val = transformsToString(val));
|
|
43
|
+
const value = normalizeValueWithProperty(val, key), hash = simpleHash(typeof value == "string" ? value : `${value}`), pseudoPrefix = pseudo ? `0${pseudo.name}-` : "";
|
|
44
|
+
conf ||= getConfigMaybe();
|
|
45
|
+
const identifier = `_${conf?.inverseShorthands[key] || key}-${pseudoPrefix}${hash}`, rules = createAtomicRules(identifier, key, value, pseudo);
|
|
46
|
+
return [
|
|
47
|
+
// array for performance
|
|
48
|
+
key,
|
|
49
|
+
value,
|
|
50
|
+
identifier,
|
|
51
|
+
pseudo?.name,
|
|
52
|
+
rules
|
|
53
|
+
];
|
|
54
|
+
};
|
|
55
|
+
function styleToCSS(style) {
|
|
56
|
+
const { shadowOffset, shadowRadius, shadowColor, shadowOpacity } = style;
|
|
57
|
+
if (shadowRadius || shadowColor) {
|
|
58
|
+
const offset = shadowOffset || defaultOffset, width = normalizeValueWithProperty(offset.width), height = normalizeValueWithProperty(offset.height), radius = normalizeValueWithProperty(shadowRadius), color = normalizeColor(shadowColor, shadowOpacity), shadow = `${width} ${height} ${radius} ${color}`;
|
|
59
|
+
style.boxShadow = style.boxShadow ? `${style.boxShadow}, ${shadow}` : shadow, delete style.shadowOffset, delete style.shadowRadius, delete style.shadowColor, delete style.shadowOpacity;
|
|
60
|
+
}
|
|
61
|
+
const { textShadowColor, textShadowOffset, textShadowRadius } = style;
|
|
62
|
+
if (textShadowColor || textShadowOffset || textShadowRadius) {
|
|
63
|
+
const { height, width } = textShadowOffset || defaultOffset, radius = textShadowRadius || 0, color = normalizeValueWithProperty(textShadowColor, "textShadowColor");
|
|
64
|
+
if (color && (height !== 0 || width !== 0 || radius !== 0)) {
|
|
65
|
+
const blurRadius = normalizeValueWithProperty(radius), offsetX = normalizeValueWithProperty(width), offsetY = normalizeValueWithProperty(height);
|
|
66
|
+
style.textShadow = `${offsetX} ${offsetY} ${blurRadius} ${color}`;
|
|
67
|
+
}
|
|
68
|
+
delete style.textShadowColor, delete style.textShadowOffset, delete style.textShadowRadius;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
function createDeclarationBlock(style, important = !1) {
|
|
72
|
+
let next = "";
|
|
73
|
+
for (const [key, value] of style)
|
|
74
|
+
next += `${hyphenateStyleName(key)}:${value}${important ? " !important" : ""};`;
|
|
75
|
+
return `{${next}}`;
|
|
76
|
+
}
|
|
77
|
+
const hcache = {}, toHyphenLower = (match) => `-${match.toLowerCase()}`, hyphenateStyleName = (key) => {
|
|
78
|
+
if (key in hcache) return hcache[key];
|
|
79
|
+
const val = key.replace(/[A-Z]/g, toHyphenLower);
|
|
80
|
+
return hcache[key] = val, val;
|
|
81
|
+
}, selectorPriority = (() => {
|
|
82
|
+
const res = {};
|
|
83
|
+
for (const key in pseudoDescriptors) {
|
|
84
|
+
const pseudo = pseudoDescriptors[key];
|
|
85
|
+
res[pseudo.name] = `${[...Array(pseudo.priority)].map(() => ":root").join("")} `;
|
|
86
|
+
}
|
|
87
|
+
return res;
|
|
88
|
+
})();
|
|
89
|
+
function createAtomicRules(identifier, property, value, pseudo) {
|
|
90
|
+
const pseudoIdPostfix = pseudo ? pseudo.name === "disabled" ? "[aria-disabled]" : `:${pseudo.name}` : "", pseudoSelector = pseudo?.selector;
|
|
91
|
+
let selector = pseudo ? pseudoSelector ? `${pseudoSelector} .${identifier}` : `${selectorPriority[pseudo.name]} .${identifier}${pseudoIdPostfix}` : `:root .${identifier}`;
|
|
92
|
+
pseudoSelector === pseudoDescriptors.enterStyle.selector && (selector = `${selector}, .${identifier}${pseudoSelector}`);
|
|
93
|
+
const important = !!pseudo;
|
|
94
|
+
let rules = [];
|
|
95
|
+
switch (property) {
|
|
96
|
+
// Equivalent to using '::placeholder'
|
|
97
|
+
case "placeholderTextColor": {
|
|
98
|
+
const block = createDeclarationBlock(
|
|
99
|
+
[
|
|
100
|
+
["color", value],
|
|
101
|
+
["opacity", 1]
|
|
102
|
+
],
|
|
103
|
+
important
|
|
104
|
+
);
|
|
105
|
+
rules.push(`${selector}::placeholder${block}`);
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
// all webkit prefixed rules
|
|
109
|
+
case "backgroundClip":
|
|
110
|
+
case "userSelect": {
|
|
111
|
+
const webkitProperty = `Webkit${`${property[0].toUpperCase()}${property.slice(1)}`}`, block = createDeclarationBlock(
|
|
112
|
+
[
|
|
113
|
+
[property, value],
|
|
114
|
+
[webkitProperty, value]
|
|
115
|
+
],
|
|
116
|
+
important
|
|
117
|
+
);
|
|
118
|
+
rules.push(`${selector}${block}`);
|
|
119
|
+
break;
|
|
120
|
+
}
|
|
121
|
+
// Polyfill for additional 'pointer-events' values
|
|
122
|
+
case "pointerEvents": {
|
|
123
|
+
let finalValue = value;
|
|
124
|
+
value === "auto" || value === "box-only" ? (finalValue = "auto", value === "box-only" && rules.push(`${selector}>*${boxOnly}`)) : (value === "none" || value === "box-none") && (finalValue = "none", value === "box-none" && rules.push(`${selector}>*${boxNone}`));
|
|
125
|
+
const block = createDeclarationBlock([["pointerEvents", finalValue]], !0);
|
|
126
|
+
rules.push(`${selector}${block}`);
|
|
127
|
+
break;
|
|
128
|
+
}
|
|
129
|
+
default: {
|
|
130
|
+
const block = createDeclarationBlock([[property, value]], important);
|
|
131
|
+
rules.push(`${selector}${block}`);
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return pseudo?.name === "hover" && (rules = rules.map((r) => `@media (hover) {${r}}`)), rules;
|
|
136
|
+
}
|
|
137
|
+
const boxNone = createDeclarationBlock([["pointerEvents", "auto"]], !0), boxOnly = createDeclarationBlock([["pointerEvents", "none"]], !0);
|
|
138
|
+
export {
|
|
139
|
+
getCSSStylesAtomic,
|
|
140
|
+
getStyleAtomic,
|
|
141
|
+
styleToCSS
|
|
142
|
+
};
|
|
143
|
+
//# sourceMappingURL=getCSSStylesAtomic.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/helpers/getCSSStylesAtomic.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { simpleHash } from "@tamagui/helpers";
|
|
2
|
+
import { getConfigMaybe } from "../config.mjs";
|
|
3
|
+
import { defaultOffset } from "./defaultOffset.mjs";
|
|
4
|
+
import { normalizeColor } from "./normalizeColor.mjs";
|
|
5
|
+
import { normalizeValueWithProperty } from "./normalizeValueWithProperty.mjs";
|
|
6
|
+
import { pseudoDescriptors } from "./pseudoDescriptors.mjs";
|
|
7
|
+
import { transformsToString } from "./transformsToString.mjs";
|
|
8
|
+
import { isMediaKey } from "../hooks/useMedia.mjs";
|
|
9
|
+
function getCSSStylesAtomic(style) {
|
|
10
|
+
styleToCSS(style);
|
|
11
|
+
const out = [];
|
|
12
|
+
for (const key in style) {
|
|
13
|
+
if (key === "$$css") continue;
|
|
14
|
+
const val = style[key];
|
|
15
|
+
if (key in pseudoDescriptors) val && out.push(...getStyleAtomic(val, pseudoDescriptors[key]));else if (isMediaKey(key)) for (const subKey in val) {
|
|
16
|
+
const so = getStyleObject(val, subKey);
|
|
17
|
+
so && (so[0] = key, out.push(so));
|
|
18
|
+
} else {
|
|
19
|
+
const so = getStyleObject(style, key);
|
|
20
|
+
so && out.push(so);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return out;
|
|
24
|
+
}
|
|
25
|
+
const getStyleAtomic = (style, pseudo) => {
|
|
26
|
+
styleToCSS(style);
|
|
27
|
+
const out = [];
|
|
28
|
+
for (const key in style) {
|
|
29
|
+
const so = getStyleObject(style, key, pseudo);
|
|
30
|
+
so && out.push(so);
|
|
31
|
+
}
|
|
32
|
+
return out;
|
|
33
|
+
};
|
|
34
|
+
let conf = null;
|
|
35
|
+
const getStyleObject = (style, key, pseudo) => {
|
|
36
|
+
let val = style[key];
|
|
37
|
+
if (val == null) return;
|
|
38
|
+
key === "transform" && Array.isArray(style.transform) && (val = transformsToString(val));
|
|
39
|
+
const value = normalizeValueWithProperty(val, key),
|
|
40
|
+
hash = simpleHash(typeof value == "string" ? value : `${value}`),
|
|
41
|
+
pseudoPrefix = pseudo ? `0${pseudo.name}-` : "";
|
|
42
|
+
conf ||= getConfigMaybe();
|
|
43
|
+
const identifier = `_${conf?.inverseShorthands[key] || key}-${pseudoPrefix}${hash}`,
|
|
44
|
+
rules = createAtomicRules(identifier, key, value, pseudo);
|
|
45
|
+
return [
|
|
46
|
+
// array for performance
|
|
47
|
+
key, value, identifier, pseudo?.name, rules];
|
|
48
|
+
};
|
|
49
|
+
function styleToCSS(style) {
|
|
50
|
+
const {
|
|
51
|
+
shadowOffset,
|
|
52
|
+
shadowRadius,
|
|
53
|
+
shadowColor,
|
|
54
|
+
shadowOpacity
|
|
55
|
+
} = style;
|
|
56
|
+
if (shadowRadius || shadowColor) {
|
|
57
|
+
const offset = shadowOffset || defaultOffset,
|
|
58
|
+
width = normalizeValueWithProperty(offset.width),
|
|
59
|
+
height = normalizeValueWithProperty(offset.height),
|
|
60
|
+
radius = normalizeValueWithProperty(shadowRadius),
|
|
61
|
+
color = normalizeColor(shadowColor, shadowOpacity),
|
|
62
|
+
shadow = `${width} ${height} ${radius} ${color}`;
|
|
63
|
+
style.boxShadow = style.boxShadow ? `${style.boxShadow}, ${shadow}` : shadow, delete style.shadowOffset, delete style.shadowRadius, delete style.shadowColor, delete style.shadowOpacity;
|
|
64
|
+
}
|
|
65
|
+
const {
|
|
66
|
+
textShadowColor,
|
|
67
|
+
textShadowOffset,
|
|
68
|
+
textShadowRadius
|
|
69
|
+
} = style;
|
|
70
|
+
if (textShadowColor || textShadowOffset || textShadowRadius) {
|
|
71
|
+
const {
|
|
72
|
+
height,
|
|
73
|
+
width
|
|
74
|
+
} = textShadowOffset || defaultOffset,
|
|
75
|
+
radius = textShadowRadius || 0,
|
|
76
|
+
color = normalizeValueWithProperty(textShadowColor, "textShadowColor");
|
|
77
|
+
if (color && (height !== 0 || width !== 0 || radius !== 0)) {
|
|
78
|
+
const blurRadius = normalizeValueWithProperty(radius),
|
|
79
|
+
offsetX = normalizeValueWithProperty(width),
|
|
80
|
+
offsetY = normalizeValueWithProperty(height);
|
|
81
|
+
style.textShadow = `${offsetX} ${offsetY} ${blurRadius} ${color}`;
|
|
82
|
+
}
|
|
83
|
+
delete style.textShadowColor, delete style.textShadowOffset, delete style.textShadowRadius;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
function createDeclarationBlock(style, important = !1) {
|
|
87
|
+
let next = "";
|
|
88
|
+
for (const [key, value] of style) next += `${hyphenateStyleName(key)}:${value}${important ? " !important" : ""};`;
|
|
89
|
+
return `{${next}}`;
|
|
90
|
+
}
|
|
91
|
+
const hcache = {},
|
|
92
|
+
toHyphenLower = match => `-${match.toLowerCase()}`,
|
|
93
|
+
hyphenateStyleName = key => {
|
|
94
|
+
if (key in hcache) return hcache[key];
|
|
95
|
+
const val = key.replace(/[A-Z]/g, toHyphenLower);
|
|
96
|
+
return hcache[key] = val, val;
|
|
97
|
+
},
|
|
98
|
+
selectorPriority = (() => {
|
|
99
|
+
const res = {};
|
|
100
|
+
for (const key in pseudoDescriptors) {
|
|
101
|
+
const pseudo = pseudoDescriptors[key];
|
|
102
|
+
res[pseudo.name] = `${[...Array(pseudo.priority)].map(() => ":root").join("")} `;
|
|
103
|
+
}
|
|
104
|
+
return res;
|
|
105
|
+
})();
|
|
106
|
+
function createAtomicRules(identifier, property, value, pseudo) {
|
|
107
|
+
const pseudoIdPostfix = pseudo ? pseudo.name === "disabled" ? "[aria-disabled]" : `:${pseudo.name}` : "",
|
|
108
|
+
pseudoSelector = pseudo?.selector;
|
|
109
|
+
let selector = pseudo ? pseudoSelector ? `${pseudoSelector} .${identifier}` : `${selectorPriority[pseudo.name]} .${identifier}${pseudoIdPostfix}` : `:root .${identifier}`;
|
|
110
|
+
pseudoSelector === pseudoDescriptors.enterStyle.selector && (selector = `${selector}, .${identifier}${pseudoSelector}`);
|
|
111
|
+
const important = !!pseudo;
|
|
112
|
+
let rules = [];
|
|
113
|
+
switch (property) {
|
|
114
|
+
// Equivalent to using '::placeholder'
|
|
115
|
+
case "placeholderTextColor":
|
|
116
|
+
{
|
|
117
|
+
const block = createDeclarationBlock([["color", value], ["opacity", 1]], important);
|
|
118
|
+
rules.push(`${selector}::placeholder${block}`);
|
|
119
|
+
break;
|
|
120
|
+
}
|
|
121
|
+
// all webkit prefixed rules
|
|
122
|
+
case "backgroundClip":
|
|
123
|
+
case "userSelect":
|
|
124
|
+
{
|
|
125
|
+
const webkitProperty = `Webkit${`${property[0].toUpperCase()}${property.slice(1)}`}`,
|
|
126
|
+
block = createDeclarationBlock([[property, value], [webkitProperty, value]], important);
|
|
127
|
+
rules.push(`${selector}${block}`);
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
// Polyfill for additional 'pointer-events' values
|
|
131
|
+
case "pointerEvents":
|
|
132
|
+
{
|
|
133
|
+
let finalValue = value;
|
|
134
|
+
value === "auto" || value === "box-only" ? (finalValue = "auto", value === "box-only" && rules.push(`${selector}>*${boxOnly}`)) : (value === "none" || value === "box-none") && (finalValue = "none", value === "box-none" && rules.push(`${selector}>*${boxNone}`));
|
|
135
|
+
const block = createDeclarationBlock([["pointerEvents", finalValue]], !0);
|
|
136
|
+
rules.push(`${selector}${block}`);
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
default:
|
|
140
|
+
{
|
|
141
|
+
const block = createDeclarationBlock([[property, value]], important);
|
|
142
|
+
rules.push(`${selector}${block}`);
|
|
143
|
+
break;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
return pseudo?.name === "hover" && (rules = rules.map(r => `@media (hover) {${r}}`)), rules;
|
|
147
|
+
}
|
|
148
|
+
const boxNone = createDeclarationBlock([["pointerEvents", "auto"]], !0),
|
|
149
|
+
boxOnly = createDeclarationBlock([["pointerEvents", "none"]], !0);
|
|
150
|
+
export { getCSSStylesAtomic, getStyleAtomic, styleToCSS };
|
|
151
|
+
//# sourceMappingURL=getCSSStylesAtomic.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["simpleHash","getConfigMaybe","defaultOffset","normalizeColor","normalizeValueWithProperty","pseudoDescriptors","transformsToString","isMediaKey","getCSSStylesAtomic","style","styleToCSS","out","key","val","push","getStyleAtomic","subKey","so","getStyleObject","pseudo","conf","Array","isArray","transform","value","hash","pseudoPrefix","name","identifier","inverseShorthands","rules","createAtomicRules","shadowOffset","shadowRadius","shadowColor","shadowOpacity","offset","width","height","radius","color","shadow","boxShadow","textShadowColor","textShadowOffset","textShadowRadius","blurRadius","offsetX","offsetY","textShadow","createDeclarationBlock","important","next","hyphenateStyleName","hcache","toHyphenLower","match","toLowerCase","replace","selectorPriority","res","priority","map","join","property","pseudoIdPostfix","pseudoSelector","selector","enterStyle","block","webkitProperty","toUpperCase","slice","finalValue","boxOnly","boxNone","r"],"sources":["../../../src/helpers/getCSSStylesAtomic.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { simpleHash } from "@tamagui/helpers";
|
|
2
|
+
import { getConfigMaybe } from "../config";
|
|
3
|
+
import { defaultOffset } from "./defaultOffset";
|
|
4
|
+
import { normalizeColor } from "./normalizeColor";
|
|
5
|
+
import { normalizeValueWithProperty } from "./normalizeValueWithProperty";
|
|
6
|
+
import { pseudoDescriptors } from "./pseudoDescriptors";
|
|
7
|
+
import { transformsToString } from "./transformsToString";
|
|
8
|
+
import { isMediaKey } from "../hooks/useMedia";
|
|
9
|
+
function getCSSStylesAtomic(style) {
|
|
10
|
+
styleToCSS(style);
|
|
11
|
+
var out = [];
|
|
12
|
+
for (var key in style)
|
|
13
|
+
if (key !== "$$css") {
|
|
14
|
+
var val = style[key];
|
|
15
|
+
if (key in pseudoDescriptors)
|
|
16
|
+
val && out.push(...getStyleAtomic(val, pseudoDescriptors[key]));
|
|
17
|
+
else if (isMediaKey(key))
|
|
18
|
+
for (var subKey in val) {
|
|
19
|
+
var so = getStyleObject(val, subKey);
|
|
20
|
+
so && (so[0] = key, out.push(so));
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
var so1 = getStyleObject(style, key);
|
|
24
|
+
so1 && out.push(so1);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return out;
|
|
28
|
+
}
|
|
29
|
+
var getStyleAtomic = function(style, pseudo) {
|
|
30
|
+
styleToCSS(style);
|
|
31
|
+
var out = [];
|
|
32
|
+
for (var key in style) {
|
|
33
|
+
var so = getStyleObject(style, key, pseudo);
|
|
34
|
+
so && out.push(so);
|
|
35
|
+
}
|
|
36
|
+
return out;
|
|
37
|
+
}, conf = null, getStyleObject = function(style, key, pseudo) {
|
|
38
|
+
var val = style[key];
|
|
39
|
+
if (val != null) {
|
|
40
|
+
key === "transform" && Array.isArray(style.transform) && (val = transformsToString(val));
|
|
41
|
+
var value = normalizeValueWithProperty(val, key), hash = simpleHash(typeof value == "string" ? value : `${value}`), pseudoPrefix = pseudo ? `0${pseudo.name}-` : "";
|
|
42
|
+
conf || (conf = getConfigMaybe());
|
|
43
|
+
var shortProp = conf?.inverseShorthands[key] || key, identifier = `_${shortProp}-${pseudoPrefix}${hash}`, rules = createAtomicRules(identifier, key, value, pseudo);
|
|
44
|
+
return [
|
|
45
|
+
// array for performance
|
|
46
|
+
key,
|
|
47
|
+
value,
|
|
48
|
+
identifier,
|
|
49
|
+
pseudo?.name,
|
|
50
|
+
rules
|
|
51
|
+
];
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
function styleToCSS(style) {
|
|
55
|
+
var { shadowOffset, shadowRadius, shadowColor, shadowOpacity } = style;
|
|
56
|
+
if (shadowRadius || shadowColor) {
|
|
57
|
+
var offset = shadowOffset || defaultOffset, width = normalizeValueWithProperty(offset.width), height = normalizeValueWithProperty(offset.height), radius = normalizeValueWithProperty(shadowRadius), color = normalizeColor(shadowColor, shadowOpacity), shadow = `${width} ${height} ${radius} ${color}`;
|
|
58
|
+
style.boxShadow = style.boxShadow ? `${style.boxShadow}, ${shadow}` : shadow, delete style.shadowOffset, delete style.shadowRadius, delete style.shadowColor, delete style.shadowOpacity;
|
|
59
|
+
}
|
|
60
|
+
var { textShadowColor, textShadowOffset, textShadowRadius } = style;
|
|
61
|
+
if (textShadowColor || textShadowOffset || textShadowRadius) {
|
|
62
|
+
var { height: height1, width: width1 } = textShadowOffset || defaultOffset, radius1 = textShadowRadius || 0, color1 = normalizeValueWithProperty(textShadowColor, "textShadowColor");
|
|
63
|
+
if (color1 && (height1 !== 0 || width1 !== 0 || radius1 !== 0)) {
|
|
64
|
+
var blurRadius = normalizeValueWithProperty(radius1), offsetX = normalizeValueWithProperty(width1), offsetY = normalizeValueWithProperty(height1);
|
|
65
|
+
style.textShadow = `${offsetX} ${offsetY} ${blurRadius} ${color1}`;
|
|
66
|
+
}
|
|
67
|
+
delete style.textShadowColor, delete style.textShadowOffset, delete style.textShadowRadius;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
function createDeclarationBlock(style) {
|
|
71
|
+
var important = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1, next = "", _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
|
|
72
|
+
try {
|
|
73
|
+
for (var _iterator = style[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
74
|
+
var [key, value] = _step.value;
|
|
75
|
+
next += `${hyphenateStyleName(key)}:${value}${important ? " !important" : ""};`;
|
|
76
|
+
}
|
|
77
|
+
} catch (err) {
|
|
78
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
79
|
+
} finally {
|
|
80
|
+
try {
|
|
81
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
82
|
+
} finally {
|
|
83
|
+
if (_didIteratorError)
|
|
84
|
+
throw _iteratorError;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return `{${next}}`;
|
|
88
|
+
}
|
|
89
|
+
var hcache = {}, toHyphenLower = function(match) {
|
|
90
|
+
return `-${match.toLowerCase()}`;
|
|
91
|
+
}, hyphenateStyleName = function(key) {
|
|
92
|
+
if (key in hcache) return hcache[key];
|
|
93
|
+
var val = key.replace(/[A-Z]/g, toHyphenLower);
|
|
94
|
+
return hcache[key] = val, val;
|
|
95
|
+
}, selectorPriority = function() {
|
|
96
|
+
var res = {};
|
|
97
|
+
for (var key in pseudoDescriptors) {
|
|
98
|
+
var pseudo = pseudoDescriptors[key];
|
|
99
|
+
res[pseudo.name] = `${[
|
|
100
|
+
...Array(pseudo.priority)
|
|
101
|
+
].map(function() {
|
|
102
|
+
return ":root";
|
|
103
|
+
}).join("")} `;
|
|
104
|
+
}
|
|
105
|
+
return res;
|
|
106
|
+
}();
|
|
107
|
+
function createAtomicRules(identifier, property, value, pseudo) {
|
|
108
|
+
var pseudoIdPostfix = pseudo ? pseudo.name === "disabled" ? "[aria-disabled]" : `:${pseudo.name}` : "", pseudoSelector = pseudo?.selector, selector = pseudo ? pseudoSelector ? `${pseudoSelector} .${identifier}` : `${selectorPriority[pseudo.name]} .${identifier}${pseudoIdPostfix}` : `:root .${identifier}`;
|
|
109
|
+
pseudoSelector === pseudoDescriptors.enterStyle.selector && (selector = `${selector}, .${identifier}${pseudoSelector}`);
|
|
110
|
+
var important = !!pseudo, rules = [];
|
|
111
|
+
switch (property) {
|
|
112
|
+
// Equivalent to using '::placeholder'
|
|
113
|
+
case "placeholderTextColor": {
|
|
114
|
+
var block = createDeclarationBlock([
|
|
115
|
+
[
|
|
116
|
+
"color",
|
|
117
|
+
value
|
|
118
|
+
],
|
|
119
|
+
[
|
|
120
|
+
"opacity",
|
|
121
|
+
1
|
|
122
|
+
]
|
|
123
|
+
], important);
|
|
124
|
+
rules.push(`${selector}::placeholder${block}`);
|
|
125
|
+
break;
|
|
126
|
+
}
|
|
127
|
+
// all webkit prefixed rules
|
|
128
|
+
case "backgroundClip":
|
|
129
|
+
case "userSelect": {
|
|
130
|
+
var propertyCapitalized = `${property[0].toUpperCase()}${property.slice(1)}`, webkitProperty = `Webkit${propertyCapitalized}`, block1 = createDeclarationBlock([
|
|
131
|
+
[
|
|
132
|
+
property,
|
|
133
|
+
value
|
|
134
|
+
],
|
|
135
|
+
[
|
|
136
|
+
webkitProperty,
|
|
137
|
+
value
|
|
138
|
+
]
|
|
139
|
+
], important);
|
|
140
|
+
rules.push(`${selector}${block1}`);
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
// Polyfill for additional 'pointer-events' values
|
|
144
|
+
case "pointerEvents": {
|
|
145
|
+
var finalValue = value;
|
|
146
|
+
value === "auto" || value === "box-only" ? (finalValue = "auto", value === "box-only" && rules.push(`${selector}>*${boxOnly}`)) : (value === "none" || value === "box-none") && (finalValue = "none", value === "box-none" && rules.push(`${selector}>*${boxNone}`));
|
|
147
|
+
var block2 = createDeclarationBlock([
|
|
148
|
+
[
|
|
149
|
+
"pointerEvents",
|
|
150
|
+
finalValue
|
|
151
|
+
]
|
|
152
|
+
], !0);
|
|
153
|
+
rules.push(`${selector}${block2}`);
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
default: {
|
|
157
|
+
var block3 = createDeclarationBlock([
|
|
158
|
+
[
|
|
159
|
+
property,
|
|
160
|
+
value
|
|
161
|
+
]
|
|
162
|
+
], important);
|
|
163
|
+
rules.push(`${selector}${block3}`);
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return pseudo?.name === "hover" && (rules = rules.map(function(r) {
|
|
168
|
+
return `@media (hover) {${r}}`;
|
|
169
|
+
})), rules;
|
|
170
|
+
}
|
|
171
|
+
var boxNone = createDeclarationBlock([
|
|
172
|
+
[
|
|
173
|
+
"pointerEvents",
|
|
174
|
+
"auto"
|
|
175
|
+
]
|
|
176
|
+
], !0), boxOnly = createDeclarationBlock([
|
|
177
|
+
[
|
|
178
|
+
"pointerEvents",
|
|
179
|
+
"none"
|
|
180
|
+
]
|
|
181
|
+
], !0);
|
|
182
|
+
export {
|
|
183
|
+
getCSSStylesAtomic,
|
|
184
|
+
getStyleAtomic,
|
|
185
|
+
styleToCSS
|
|
186
|
+
};
|
|
187
|
+
//# sourceMappingURL=getCSSStylesAtomic.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/helpers/Users/n8/tamagui/code/core/web/src/helpers/getCSSStylesAtomic.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["simpleHash", "getConfigMaybe", "defaultOffset", "normalizeColor", "normalizeValueWithProperty", "pseudoDescriptors", "transformsToString", "isMediaKey", "getCSSStylesAtomic", "style", "styleToCSS", "out", "key", "val", "push", "getStyleAtomic", "subKey", "so", "getStyleObject", "pseudo", "conf", "Array", "isArray", "transform", "value", "hash", "pseudoPrefix", "name", "shortProp", "inverseShorthands", "identifier", "rules", "createAtomicRules", "shadowOffset", "shadowRadius", "shadowColor", "shadowOpacity", "offset", "width", "height", "radius", "color", "shadow", "boxShadow", "textShadowColor", "textShadowOffset", "textShadowRadius", "blurRadius", "offsetX", "offsetY", "textShadow", "createDeclarationBlock", "important", "next", "hyphenateStyleName", "hcache", "toHyphenLower", "match", "toLowerCase", "replace", "selectorPriority", "res", "priority", "map", "join", "property", "pseudoIdPostfix", "pseudoSelector", "selector", "enterStyle", "block", "propertyCapitalized", "toUpperCase", "slice", "webkitProperty", "finalValue", "boxOnly", "boxNone", "r"]
|
|
6
|
+
}
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
import { createMediaStyle } from "./createMediaStyle";
|
|
26
26
|
import { fixStyles } from "./expandStyles";
|
|
27
27
|
import { getGroupPropParts } from "./getGroupPropParts";
|
|
28
|
-
import { getStyleAtomic,
|
|
28
|
+
import { getStyleAtomic, getCSSStylesAtomic, styleToCSS } from "./getCSSStylesAtomic";
|
|
29
29
|
import {
|
|
30
30
|
insertStyleRules,
|
|
31
31
|
insertedTransforms,
|
|
@@ -331,7 +331,7 @@ const getSplitStyles = (props, staticConfig, theme, themeName, componentState, s
|
|
|
331
331
|
`Found more important space for current media ${mediaKeyShort}: ${val} (importance: ${importance})`
|
|
332
332
|
));
|
|
333
333
|
}
|
|
334
|
-
const mediaStyles =
|
|
334
|
+
const mediaStyles = getCSSStylesAtomic(mediaStyle), priority = mediaStylesSeen;
|
|
335
335
|
mediaStylesSeen += 1;
|
|
336
336
|
for (const style of mediaStyles) {
|
|
337
337
|
const property = style[StyleObjectProperty], isSubStyle = property[0] === "$";
|
|
@@ -457,7 +457,7 @@ const getSplitStyles = (props, staticConfig, theme, themeName, componentState, s
|
|
|
457
457
|
if (!styleProps.noNormalize && !staticConfig.isReactNative && !staticConfig.isHOC && (!styleProps.isAnimated || conf.animations.supportsCSSVars) && Array.isArray(styleState.style?.transform) && (styleState.style.transform = transformsToString(styleState.style.transform)), styleState.style && shouldDoClasses) {
|
|
458
458
|
let retainedStyles, shouldRetain = !1;
|
|
459
459
|
if (!styleState.style.$$css) {
|
|
460
|
-
const atomic =
|
|
460
|
+
const atomic = getCSSStylesAtomic(styleState.style);
|
|
461
461
|
for (const atomicStyle of atomic) {
|
|
462
462
|
const [key, value, identifier] = atomicStyle, isAnimatedAndAnimateOnly = styleProps.isAnimated && styleProps.noClass && props.animateOnly?.includes(key), nonAnimatedAnimateOnly = !isAnimatedAndAnimateOnly && !styleProps.isAnimated && props.animateOnly?.includes(key);
|
|
463
463
|
isAnimatedAndAnimateOnly ? (retainedStyles ||= {}, retainedStyles[key] = styleState.style[key]) : nonAnimatedAnimateOnly ? (retainedStyles ||= {}, retainedStyles[key] = value, shouldRetain = !0) : (addStyleToInsertRules(rulesToInsert, atomicStyle), mergeClassName(transforms, classNames, key, identifier, !1, !0));
|