react-native-css 3.0.0-nightly.27bd5e2 → 3.0.0-nightly.4af17f5
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/commonjs/compiler/atRules.js +6 -2
- package/dist/commonjs/compiler/atRules.js.map +1 -1
- package/dist/commonjs/compiler/attributes.test.js +1 -1
- package/dist/commonjs/compiler/attributes.test.js.map +1 -1
- package/dist/commonjs/compiler/compiler.js +57 -18
- package/dist/commonjs/compiler/compiler.js.map +1 -1
- package/dist/commonjs/compiler/declarations.js +177 -74
- package/dist/commonjs/compiler/declarations.js.map +1 -1
- package/dist/commonjs/compiler/inheritance.test.js +7 -7
- package/dist/commonjs/compiler/inheritance.test.js.map +1 -1
- package/dist/commonjs/compiler/selector-builder.js +457 -0
- package/dist/commonjs/compiler/selector-builder.js.map +1 -0
- package/dist/commonjs/compiler/selectors.js +10 -6
- package/dist/commonjs/compiler/selectors.js.map +1 -1
- package/dist/commonjs/compiler/stylesheet.js +125 -40
- package/dist/commonjs/compiler/stylesheet.js.map +1 -1
- package/dist/commonjs/jest/index.js +24 -25
- package/dist/commonjs/jest/index.js.map +1 -1
- package/dist/commonjs/metro/index.js +7 -5
- package/dist/commonjs/metro/index.js.map +1 -1
- package/dist/commonjs/poison.pill.js +4 -1
- package/dist/commonjs/poison.pill.js.map +1 -1
- package/dist/commonjs/runtime/native/conditions/attributes.js +42 -0
- package/dist/commonjs/runtime/native/conditions/attributes.js.map +1 -0
- package/dist/commonjs/runtime/native/conditions/container-query.js +28 -21
- package/dist/commonjs/runtime/native/conditions/container-query.js.map +1 -1
- package/dist/commonjs/runtime/native/conditions/guards.js.map +1 -1
- package/dist/commonjs/runtime/native/conditions/index.js +10 -46
- package/dist/commonjs/runtime/native/conditions/index.js.map +1 -1
- package/dist/commonjs/runtime/native/conditions/media-query.js +17 -17
- package/dist/commonjs/runtime/native/conditions/media-query.js.map +1 -1
- package/dist/commonjs/runtime/native/injection.js +3 -2
- package/dist/commonjs/runtime/native/injection.js.map +1 -1
- package/dist/commonjs/runtime/native/react/interaction.js +10 -10
- package/dist/commonjs/runtime/native/react/interaction.js.map +1 -1
- package/dist/commonjs/runtime/native/react/rules.js +9 -9
- package/dist/commonjs/runtime/native/react/rules.js.map +1 -1
- package/dist/commonjs/runtime/native/react/useNativeCss.js +1 -0
- package/dist/commonjs/runtime/native/react/useNativeCss.js.map +1 -1
- package/dist/commonjs/runtime/native/reactivity.js +1 -12
- package/dist/commonjs/runtime/native/reactivity.js.map +1 -1
- package/dist/commonjs/runtime/native/root.js +28 -0
- package/dist/commonjs/runtime/native/root.js.map +1 -0
- package/dist/commonjs/runtime/native/styles/calculate-props.js +53 -48
- package/dist/commonjs/runtime/native/styles/calculate-props.js.map +1 -1
- package/dist/commonjs/runtime/native/styles/index.js +12 -12
- package/dist/commonjs/runtime/native/styles/index.js.map +1 -1
- package/dist/commonjs/runtime/native/styles/units.js +6 -3
- package/dist/commonjs/runtime/native/styles/units.js.map +1 -1
- package/dist/commonjs/runtime/native/styles/variables.js +3 -2
- package/dist/commonjs/runtime/native/styles/variables.js.map +1 -1
- package/dist/commonjs/runtime/utils/specificity.js +2 -1
- package/dist/commonjs/runtime/utils/specificity.js.map +1 -1
- package/dist/module/compiler/atRules.js +6 -2
- package/dist/module/compiler/atRules.js.map +1 -1
- package/dist/module/compiler/attributes.test.js +1 -1
- package/dist/module/compiler/attributes.test.js.map +1 -1
- package/dist/module/compiler/compiler.js +57 -18
- package/dist/module/compiler/compiler.js.map +1 -1
- package/dist/module/compiler/compiler.types.js.map +1 -1
- package/dist/module/compiler/declarations.js +172 -70
- package/dist/module/compiler/declarations.js.map +1 -1
- package/dist/module/compiler/inheritance.test.js +7 -7
- package/dist/module/compiler/inheritance.test.js.map +1 -1
- package/dist/module/compiler/selector-builder.js +452 -0
- package/dist/module/compiler/selector-builder.js.map +1 -0
- package/dist/module/compiler/selectors.js +10 -6
- package/dist/module/compiler/selectors.js.map +1 -1
- package/dist/module/compiler/stylesheet.js +124 -39
- package/dist/module/compiler/stylesheet.js.map +1 -1
- package/dist/module/jest/index.js +25 -10
- package/dist/module/jest/index.js.map +1 -1
- package/dist/module/metro/index.js +7 -5
- package/dist/module/metro/index.js.map +1 -1
- package/dist/module/poison.pill.js +4 -1
- package/dist/module/poison.pill.js.map +1 -1
- package/dist/module/runtime/native/conditions/attributes.js +38 -0
- package/dist/module/runtime/native/conditions/attributes.js.map +1 -0
- package/dist/module/runtime/native/conditions/container-query.js +28 -21
- package/dist/module/runtime/native/conditions/container-query.js.map +1 -1
- package/dist/module/runtime/native/conditions/guards.js.map +1 -1
- package/dist/module/runtime/native/conditions/index.js +10 -46
- package/dist/module/runtime/native/conditions/index.js.map +1 -1
- package/dist/module/runtime/native/conditions/media-query.js +17 -17
- package/dist/module/runtime/native/conditions/media-query.js.map +1 -1
- package/dist/module/runtime/native/injection.js +2 -1
- package/dist/module/runtime/native/injection.js.map +1 -1
- package/dist/module/runtime/native/react/interaction.js +10 -10
- package/dist/module/runtime/native/react/interaction.js.map +1 -1
- package/dist/module/runtime/native/react/rules.js +9 -9
- package/dist/module/runtime/native/react/rules.js.map +1 -1
- package/dist/module/runtime/native/react/useNativeCss.js +1 -0
- package/dist/module/runtime/native/react/useNativeCss.js.map +1 -1
- package/dist/module/runtime/native/reactivity.js +0 -11
- package/dist/module/runtime/native/reactivity.js.map +1 -1
- package/dist/module/runtime/native/root.js +24 -0
- package/dist/module/runtime/native/root.js.map +1 -0
- package/dist/module/runtime/native/styles/calculate-props.js +53 -48
- package/dist/module/runtime/native/styles/calculate-props.js.map +1 -1
- package/dist/module/runtime/native/styles/index.js +12 -12
- package/dist/module/runtime/native/styles/index.js.map +1 -1
- package/dist/module/runtime/native/styles/units.js +6 -3
- package/dist/module/runtime/native/styles/units.js.map +1 -1
- package/dist/module/runtime/native/styles/variables.js +2 -1
- package/dist/module/runtime/native/styles/variables.js.map +1 -1
- package/dist/module/runtime/utils/specificity.js +2 -1
- package/dist/module/runtime/utils/specificity.js.map +1 -1
- package/dist/typescript/commonjs/example/app.config.d.ts +4 -0
- package/dist/typescript/commonjs/example/app.config.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/compiler/compiler.d.ts +9 -2
- package/dist/typescript/commonjs/src/compiler/compiler.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts +5 -4
- package/dist/typescript/commonjs/src/compiler/compiler.types.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/compiler/declarations.d.ts +16 -19
- package/dist/typescript/commonjs/src/compiler/declarations.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts +23 -0
- package/dist/typescript/commonjs/src/compiler/selector-builder.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/compiler/selectors.d.ts +3 -2
- package/dist/typescript/commonjs/src/compiler/selectors.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts +23 -5
- package/dist/typescript/commonjs/src/compiler/stylesheet.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/jest/index.d.ts +11 -5
- package/dist/typescript/commonjs/src/jest/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/metro/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/poison.pill.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/conditions/attributes.d.ts +5 -0
- package/dist/typescript/commonjs/src/runtime/native/conditions/attributes.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/runtime/native/conditions/container-query.d.ts +3 -3
- package/dist/typescript/commonjs/src/runtime/native/conditions/container-query.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/conditions/guards.d.ts +2 -2
- package/dist/typescript/commonjs/src/runtime/native/conditions/guards.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/conditions/index.d.ts +2 -2
- package/dist/typescript/commonjs/src/runtime/native/conditions/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/conditions/media-query.d.ts +2 -2
- package/dist/typescript/commonjs/src/runtime/native/conditions/media-query.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/injection.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/react/interaction.d.ts +2 -2
- package/dist/typescript/commonjs/src/runtime/native/react/interaction.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/react/useNativeCss.d.ts +2 -1
- package/dist/typescript/commonjs/src/runtime/native/react/useNativeCss.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts +2 -10
- package/dist/typescript/commonjs/src/runtime/native/reactivity.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/root.d.ts +11 -0
- package/dist/typescript/commonjs/src/runtime/native/root.d.ts.map +1 -0
- package/dist/typescript/commonjs/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/styles/units.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/native/styles/variables.d.ts.map +1 -1
- package/dist/typescript/commonjs/src/runtime/utils/specificity.d.ts +1 -0
- package/dist/typescript/commonjs/src/runtime/utils/specificity.d.ts.map +1 -1
- package/dist/typescript/module/example/app.config.d.ts +4 -0
- package/dist/typescript/module/example/app.config.d.ts.map +1 -0
- package/dist/typescript/module/src/compiler/compiler.d.ts +9 -2
- package/dist/typescript/module/src/compiler/compiler.d.ts.map +1 -1
- package/dist/typescript/module/src/compiler/compiler.types.d.ts +5 -4
- package/dist/typescript/module/src/compiler/compiler.types.d.ts.map +1 -1
- package/dist/typescript/module/src/compiler/declarations.d.ts +16 -19
- package/dist/typescript/module/src/compiler/declarations.d.ts.map +1 -1
- package/dist/typescript/module/src/compiler/selector-builder.d.ts +23 -0
- package/dist/typescript/module/src/compiler/selector-builder.d.ts.map +1 -0
- package/dist/typescript/module/src/compiler/selectors.d.ts +3 -2
- package/dist/typescript/module/src/compiler/selectors.d.ts.map +1 -1
- package/dist/typescript/module/src/compiler/stylesheet.d.ts +23 -5
- package/dist/typescript/module/src/compiler/stylesheet.d.ts.map +1 -1
- package/dist/typescript/module/src/jest/index.d.ts +11 -5
- package/dist/typescript/module/src/jest/index.d.ts.map +1 -1
- package/dist/typescript/module/src/metro/index.d.ts.map +1 -1
- package/dist/typescript/module/src/poison.pill.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/conditions/attributes.d.ts +5 -0
- package/dist/typescript/module/src/runtime/native/conditions/attributes.d.ts.map +1 -0
- package/dist/typescript/module/src/runtime/native/conditions/container-query.d.ts +3 -3
- package/dist/typescript/module/src/runtime/native/conditions/container-query.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/conditions/guards.d.ts +2 -2
- package/dist/typescript/module/src/runtime/native/conditions/guards.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/conditions/index.d.ts +2 -2
- package/dist/typescript/module/src/runtime/native/conditions/index.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/conditions/media-query.d.ts +2 -2
- package/dist/typescript/module/src/runtime/native/conditions/media-query.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/injection.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/react/interaction.d.ts +2 -2
- package/dist/typescript/module/src/runtime/native/react/interaction.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/react/useNativeCss.d.ts +2 -1
- package/dist/typescript/module/src/runtime/native/react/useNativeCss.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/reactivity.d.ts +2 -10
- package/dist/typescript/module/src/runtime/native/reactivity.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/root.d.ts +11 -0
- package/dist/typescript/module/src/runtime/native/root.d.ts.map +1 -0
- package/dist/typescript/module/src/runtime/native/styles/calculate-props.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/styles/units.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/native/styles/variables.d.ts.map +1 -1
- package/dist/typescript/module/src/runtime/utils/specificity.d.ts +1 -0
- package/dist/typescript/module/src/runtime/utils/specificity.d.ts.map +1 -1
- package/package.json +28 -4
- package/src/compiler/atRules.ts +7 -2
- package/src/compiler/attributes.test.ts +1 -1
- package/src/compiler/compiler.ts +63 -33
- package/src/compiler/compiler.types.ts +7 -5
- package/src/compiler/declarations.ts +300 -69
- package/src/compiler/inheritance.test.ts +6 -6
- package/src/compiler/selector-builder.ts +531 -0
- package/src/compiler/selectors.ts +20 -6
- package/src/compiler/stylesheet.ts +168 -38
- package/src/jest/index.ts +34 -11
- package/src/metro/index.ts +12 -6
- package/src/poison.pill.ts +5 -1
- package/src/runtime/native/conditions/attributes.ts +52 -0
- package/src/runtime/native/conditions/container-query.ts +27 -22
- package/src/runtime/native/conditions/guards.ts +1 -2
- package/src/runtime/native/conditions/index.ts +12 -66
- package/src/runtime/native/conditions/media-query.ts +18 -20
- package/src/runtime/native/injection.ts +1 -1
- package/src/runtime/native/react/interaction.ts +12 -12
- package/src/runtime/native/react/rules.ts +9 -9
- package/src/runtime/native/react/useNativeCss.ts +3 -0
- package/src/runtime/native/reactivity.ts +2 -21
- package/src/runtime/native/root.ts +31 -0
- package/src/runtime/native/styles/calculate-props.ts +59 -49
- package/src/runtime/native/styles/index.ts +12 -12
- package/src/runtime/native/styles/units.ts +7 -3
- package/src/runtime/native/styles/variables.ts +2 -6
- package/src/runtime/utils/specificity.ts +1 -0
- package/types.d.ts +70 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["debug","transform","lightningcss","maybeMutateReactNativeOptions","parsePropAtRule","parseContainerCondition","parseDeclaration","extractKeyFrames","parseMediaQuery","
|
|
1
|
+
{"version":3,"names":["inspect","debug","transform","lightningcss","maybeMutateReactNativeOptions","parsePropAtRule","parseContainerCondition","parseDeclaration","extractKeyFrames","parseMediaQuery","StylesheetBuilder","defaultLogger","compile","code","options","logger","isLoggerEnabled","enabled","Boolean","features","Object","assign","selectorPrefix","startsWith","slice","JSON","stringify","process","env","NODE_ENV","toString","builder","customAtRules","body","visitor","Rule","rule","StyleSheetExit","sheet","rules","length","depth","colors","compact","extractRule","stripUnusedVariables","onVarUsage","token","type","value","arguments","forEach","varUsage","add","name","ident","fallback","fallbackValues","varObj","Declaration","decl","property","filename","TextEncoder","encode","stylesheet","getNativeStyleSheet","warnings","getWarnings","extractContainer","extractMedia","declarationBlock","declarations","newNestedRule","declaration","applyRuleToSelectors","importantDeclarations","important","mapping","fork","selectors","newRule","nestedRule","layerRule","mediaRule","media","mediaQuery","query","mediaQueries","mediaType","qualifier","condition","push","m","containerRule","n","addContainerQuery"],"sourceRoot":"../../../src","sources":["compiler/compiler.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VAR_SYMBOL"],"sourceRoot":"../../../src","sources":["compiler/compiler.types.ts"],"mappings":";;AAAA;;AAIA,SAASA,UAAU,QAAQ,iCAA8B;;AAkBzD;AACA;AACA;;AAkBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA0FA;;
|
|
1
|
+
{"version":3,"names":["VAR_SYMBOL"],"sourceRoot":"../../../src","sources":["compiler/compiler.types.ts"],"mappings":";;AAAA;;AAIA,SAASA,UAAU,QAAQ,iCAA8B;;AAkBzD;AACA;AACA;;AAkBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA0FA;;AAeA;;AAMA;;AAwCS;;AAMkE;;AAI3E;;AAUA;;AAEA;AACA;AACA;AACA;AACA;;AAIA;;AAKA;;AAEA;;AAGA;AACA;AACA;;AAKA;AACA;AACA","ignoreList":[]}
|
|
@@ -29,37 +29,44 @@ const parsers = {
|
|
|
29
29
|
"block-size": parseSizeDeclaration,
|
|
30
30
|
"border": parseBorder,
|
|
31
31
|
"border-block": parseBorderBlock,
|
|
32
|
-
"border-block-color":
|
|
32
|
+
"border-block-color": parseBorderColor,
|
|
33
33
|
"border-block-end": parseBorderBlockEnd,
|
|
34
34
|
"border-block-end-color": parseColorDeclaration,
|
|
35
35
|
"border-block-end-width": parseBorderSideWidthDeclaration,
|
|
36
36
|
"border-block-start": parseBorderBlockStart,
|
|
37
37
|
"border-block-start-color": parseColorDeclaration,
|
|
38
38
|
"border-block-start-width": parseBorderSideWidthDeclaration,
|
|
39
|
+
"border-block-style": parseBorderBlockStyle,
|
|
39
40
|
"border-block-width": parseBorderBlockWidth,
|
|
40
41
|
"border-bottom": parseBorderSide,
|
|
41
42
|
"border-bottom-color": parseColorDeclaration,
|
|
42
43
|
"border-bottom-left-radius": parseSize2DDimensionPercentageDeclaration,
|
|
43
44
|
"border-bottom-right-radius": parseSize2DDimensionPercentageDeclaration,
|
|
45
|
+
"border-bottom-style": parseBorderStyleDeclaration,
|
|
44
46
|
"border-bottom-width": parseBorderSideWidthDeclaration,
|
|
45
47
|
"border-color": parseBorderColor,
|
|
46
48
|
"border-end-end-radius": parseSize2DDimensionPercentageDeclaration,
|
|
47
49
|
"border-end-start-radius": parseSize2DDimensionPercentageDeclaration,
|
|
48
50
|
"border-inline": parseBorderInline,
|
|
49
|
-
"border-inline-color":
|
|
51
|
+
"border-inline-color": parseBorderColor,
|
|
50
52
|
"border-inline-end": parseBorderInlineEnd,
|
|
51
53
|
"border-inline-end-color": parseColorDeclaration,
|
|
54
|
+
"border-inline-end-style": parseBorderInlineStyle,
|
|
52
55
|
"border-inline-end-width": parseBorderSideWidthDeclaration,
|
|
53
56
|
"border-inline-start": parseBorderInlineStart,
|
|
54
57
|
"border-inline-start-color": parseColorDeclaration,
|
|
58
|
+
"border-inline-start-style": parseBorderInlineStyle,
|
|
55
59
|
"border-inline-start-width": parseBorderSideWidthDeclaration,
|
|
56
|
-
"border-inline-
|
|
60
|
+
"border-inline-style": parseBorderInlineStyle,
|
|
61
|
+
"border-inline-width": parseBorderInlineWidth,
|
|
57
62
|
"border-left": parseBorderSide,
|
|
58
63
|
"border-left-color": parseColorDeclaration,
|
|
64
|
+
"border-left-style": parseBorderStyleDeclaration,
|
|
59
65
|
"border-left-width": parseBorderSideWidthDeclaration,
|
|
60
66
|
"border-radius": parseBorderRadius,
|
|
61
67
|
"border-right": parseBorderSide,
|
|
62
68
|
"border-right-color": parseColorDeclaration,
|
|
69
|
+
"border-right-style": parseBorderStyleDeclaration,
|
|
63
70
|
"border-right-width": parseBorderSideWidthDeclaration,
|
|
64
71
|
"border-start-end-radius": parseSize2DDimensionPercentageDeclaration,
|
|
65
72
|
"border-start-start-radius": parseSize2DDimensionPercentageDeclaration,
|
|
@@ -68,11 +75,12 @@ const parsers = {
|
|
|
68
75
|
"border-top-color": parseColorDeclaration,
|
|
69
76
|
"border-top-left-radius": parseSize2DDimensionPercentageDeclaration,
|
|
70
77
|
"border-top-right-radius": parseSize2DDimensionPercentageDeclaration,
|
|
78
|
+
"border-top-style": parseBorderStyleDeclaration,
|
|
71
79
|
"border-top-width": parseBorderSideWidthDeclaration,
|
|
72
80
|
"border-width": parseBorderWidth,
|
|
73
81
|
"bottom": parseSizeDeclaration,
|
|
74
82
|
"box-shadow": parseBoxShadow,
|
|
75
|
-
"caret-color":
|
|
83
|
+
"caret-color": parseCaretColor,
|
|
76
84
|
"color": parseFontColorDeclaration,
|
|
77
85
|
"column-gap": parseGap,
|
|
78
86
|
"container": parseContainer,
|
|
@@ -183,6 +191,12 @@ const parsers = {
|
|
|
183
191
|
// This is missing LightningCSS types
|
|
184
192
|
parsers["pointer-events"] = parsePointerEvents;
|
|
185
193
|
const validProperties = new Set(Object.keys(parsers));
|
|
194
|
+
function parseCaretColor(declaration, builder) {
|
|
195
|
+
builder.addMapping({
|
|
196
|
+
[declaration.property]: ["cursorColor"]
|
|
197
|
+
});
|
|
198
|
+
builder.addDescriptor("caret-color", parseColorOrAutoDeclaration(declaration, builder));
|
|
199
|
+
}
|
|
186
200
|
export function parseDeclaration(declaration, builder) {
|
|
187
201
|
if ("vendorPrefix" in declaration && declaration.vendorPrefix.length) {
|
|
188
202
|
return;
|
|
@@ -191,9 +205,9 @@ export function parseDeclaration(declaration, builder) {
|
|
|
191
205
|
return;
|
|
192
206
|
}
|
|
193
207
|
if (declaration.property === "unparsed") {
|
|
194
|
-
|
|
208
|
+
parseUnparsedDeclaration(declaration, builder);
|
|
195
209
|
} else if (declaration.property === "custom") {
|
|
196
|
-
|
|
210
|
+
parseCustomDeclaration(declaration, builder);
|
|
197
211
|
} else {
|
|
198
212
|
parseWithParser(declaration, builder);
|
|
199
213
|
}
|
|
@@ -202,6 +216,7 @@ function parseWithParser(declaration, builder) {
|
|
|
202
216
|
if (declaration.property in parsers) {
|
|
203
217
|
const parser = parsers[declaration.property];
|
|
204
218
|
builder.descriptorProperty = declaration.property;
|
|
219
|
+
builder.setWarningProperty(declaration.property);
|
|
205
220
|
const value = parser(declaration, builder, declaration.property);
|
|
206
221
|
if (value !== undefined) {
|
|
207
222
|
builder.addDescriptor(propertyRename[declaration.property] ?? declaration.property, value);
|
|
@@ -246,15 +261,25 @@ function parseBorderRadius({
|
|
|
246
261
|
"border-top-right-radius": parseSize2DDimensionPercentage(value.topRight, builder)
|
|
247
262
|
});
|
|
248
263
|
}
|
|
249
|
-
function parseBorderColor({
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
264
|
+
function parseBorderColor(declaration, builder) {
|
|
265
|
+
switch (declaration.property) {
|
|
266
|
+
case "border-color":
|
|
267
|
+
builder.addShorthand("border-color", {
|
|
268
|
+
"border-top-color": parseColor(declaration.value.top, builder),
|
|
269
|
+
"border-bottom-color": parseColor(declaration.value.bottom, builder),
|
|
270
|
+
"border-left-color": parseColor(declaration.value.left, builder),
|
|
271
|
+
"border-right-color": parseColor(declaration.value.right, builder)
|
|
272
|
+
});
|
|
273
|
+
break;
|
|
274
|
+
case "border-block-color":
|
|
275
|
+
builder.addDescriptor("border-top-color", parseColor(declaration.value.start, builder));
|
|
276
|
+
builder.addDescriptor("border-bottom-color", parseColor(declaration.value.end, builder));
|
|
277
|
+
break;
|
|
278
|
+
case "border-inline-color":
|
|
279
|
+
builder.addDescriptor("border-left-color", parseColor(declaration.value.start, builder));
|
|
280
|
+
builder.addDescriptor("border-right-color", parseColor(declaration.value.end, builder));
|
|
281
|
+
break;
|
|
282
|
+
}
|
|
258
283
|
}
|
|
259
284
|
function parseBorderWidth({
|
|
260
285
|
value
|
|
@@ -322,6 +347,19 @@ function parseBorderInlineEnd({
|
|
|
322
347
|
builder.addDescriptor("border-right-color", parseColor(value.color, builder));
|
|
323
348
|
builder.addDescriptor("border-right-width", parseBorderSideWidth(value.width, builder));
|
|
324
349
|
}
|
|
350
|
+
export function parseBorderInlineWidth(declaration, builder) {
|
|
351
|
+
builder.addDescriptor("border-left-width", parseBorderSideWidth(declaration.value.start, builder));
|
|
352
|
+
builder.addDescriptor("border-right-width", parseBorderSideWidth(declaration.value.end, builder));
|
|
353
|
+
}
|
|
354
|
+
export function parseBorderInlineStyle(declaration, builder) {
|
|
355
|
+
if (typeof declaration.value === "string") {
|
|
356
|
+
builder.addDescriptor("border-style", parseBorderStyle(declaration.value, builder));
|
|
357
|
+
} else if (declaration.value.start === declaration.value.end) {
|
|
358
|
+
builder.addDescriptor("border-style", parseBorderStyle(declaration.value.start, builder));
|
|
359
|
+
} else {
|
|
360
|
+
builder.addWarning("property", "border-inline-style");
|
|
361
|
+
}
|
|
362
|
+
}
|
|
325
363
|
function parseFlexFlow({
|
|
326
364
|
value
|
|
327
365
|
}, builder) {
|
|
@@ -481,7 +519,11 @@ function parseLetterSpacing({
|
|
|
481
519
|
if (value.type === "normal") {
|
|
482
520
|
return;
|
|
483
521
|
}
|
|
484
|
-
|
|
522
|
+
const descriptor = parseLength(value.value, builder);
|
|
523
|
+
if (Array.isArray(descriptor) && descriptor[1] === "em" && typeof descriptor[2] === "number") {
|
|
524
|
+
return descriptor[2];
|
|
525
|
+
}
|
|
526
|
+
return descriptor;
|
|
485
527
|
}
|
|
486
528
|
function parseTextDecoration({
|
|
487
529
|
value
|
|
@@ -499,7 +541,8 @@ function parseZIndex({
|
|
|
499
541
|
return;
|
|
500
542
|
}
|
|
501
543
|
}
|
|
502
|
-
function parseContainerType(
|
|
544
|
+
function parseContainerType(_declaration, builder) {
|
|
545
|
+
builder.addContainer(["___default___"]);
|
|
503
546
|
return;
|
|
504
547
|
}
|
|
505
548
|
function parseContainerName({
|
|
@@ -514,12 +557,13 @@ function parseContainer({
|
|
|
514
557
|
builder.addContainer(value.name.type === "none" ? false : value.name.value);
|
|
515
558
|
return;
|
|
516
559
|
}
|
|
517
|
-
export function
|
|
560
|
+
export function parseUnparsedDeclaration(declaration, builder) {
|
|
518
561
|
let property = declaration.value.propertyId.property;
|
|
519
562
|
if (!(property in parsers)) {
|
|
520
563
|
builder.addWarning("property", property);
|
|
521
564
|
return;
|
|
522
565
|
}
|
|
566
|
+
builder.setWarningProperty(property);
|
|
523
567
|
|
|
524
568
|
/**
|
|
525
569
|
* React Native doesn't support all the logical properties
|
|
@@ -534,14 +578,14 @@ export function parseDeclarationUnparsed(declaration, builder) {
|
|
|
534
578
|
*/
|
|
535
579
|
builder.descriptorProperty = property;
|
|
536
580
|
if (unparsedRuntimeParsing.has(property)) {
|
|
537
|
-
const args = parseUnparsed(declaration.value.value, builder);
|
|
581
|
+
const args = parseUnparsed(declaration.value.value, builder, property);
|
|
538
582
|
if (property === "animation") {
|
|
539
583
|
builder.addDescriptor("animation", [{}, `@${toRNProperty(property)}`, args]);
|
|
540
584
|
} else {
|
|
541
585
|
builder.addDescriptor(property, [{}, `@${toRNProperty(property)}`, args, 1]);
|
|
542
586
|
}
|
|
543
587
|
} else {
|
|
544
|
-
const value = parseUnparsed(declaration.value.value, builder);
|
|
588
|
+
const value = parseUnparsed(declaration.value.value, builder, property);
|
|
545
589
|
builder.addDescriptor(property, value);
|
|
546
590
|
if (property === "font-size") {
|
|
547
591
|
builder.addDescriptor("--__rn-css-em", value);
|
|
@@ -551,16 +595,21 @@ export function parseDeclarationUnparsed(declaration, builder) {
|
|
|
551
595
|
}
|
|
552
596
|
}
|
|
553
597
|
}
|
|
554
|
-
export function
|
|
598
|
+
export function parseCustomDeclaration(declaration, builder) {
|
|
555
599
|
const property = declaration.value.name;
|
|
556
600
|
if (validProperties.has(property) || property.startsWith("--") || property.startsWith("-rn-")) {
|
|
557
|
-
builder.addDescriptor(property, parseUnparsed(declaration.value.value, builder,
|
|
601
|
+
builder.addDescriptor(property, parseUnparsed(declaration.value.value, builder, property));
|
|
602
|
+
} else if (property === "-webkit-line-clamp") {
|
|
603
|
+
builder.addMapping({
|
|
604
|
+
[property]: ["numberOfLines"]
|
|
605
|
+
});
|
|
606
|
+
builder.addDescriptor(property, parseUnparsed(declaration.value.value, builder, property));
|
|
558
607
|
} else {
|
|
559
608
|
builder.addWarning("property", declaration.value.name);
|
|
560
609
|
}
|
|
561
610
|
}
|
|
562
|
-
export function reduceParseUnparsed(tokenOrValues, builder) {
|
|
563
|
-
const result = tokenOrValues.map(tokenOrValue => parseUnparsed(tokenOrValue, builder)).filter(v => v !== undefined);
|
|
611
|
+
export function reduceParseUnparsed(tokenOrValues, builder, property, allowAuto) {
|
|
612
|
+
const result = tokenOrValues.map(tokenOrValue => parseUnparsed(tokenOrValue, builder, property, allowAuto)).filter(v => v !== undefined);
|
|
564
613
|
if (result.length === 0) {
|
|
565
614
|
return undefined;
|
|
566
615
|
}
|
|
@@ -574,6 +623,9 @@ export function reduceParseUnparsed(tokenOrValues, builder) {
|
|
|
574
623
|
currentGroup.push(value);
|
|
575
624
|
}
|
|
576
625
|
}
|
|
626
|
+
|
|
627
|
+
// Groups are the tokens grouped together by comma location
|
|
628
|
+
// If a group only has 1 item, it shouldn't be an array
|
|
577
629
|
groups = groups.flatMap(group => {
|
|
578
630
|
if (!Array.isArray(group)) {
|
|
579
631
|
return [];
|
|
@@ -587,21 +639,26 @@ export function reduceParseUnparsed(tokenOrValues, builder) {
|
|
|
587
639
|
} else {
|
|
588
640
|
return [first];
|
|
589
641
|
}
|
|
642
|
+
} else if (
|
|
643
|
+
// This is a special case for <ratio> values
|
|
644
|
+
group.includes("/") && group.every(item => typeof item === "string" && item === "/" ? item : typeof item === "number")) {
|
|
645
|
+
// eslint-disable-next-line @typescript-eslint/no-base-to-string
|
|
646
|
+
return [group.join(" ")];
|
|
590
647
|
} else {
|
|
591
648
|
return [group];
|
|
592
649
|
}
|
|
593
650
|
});
|
|
594
651
|
return groups.length === 1 ? groups[0] : groups;
|
|
595
652
|
}
|
|
596
|
-
export function unparsedFunction(token, builder) {
|
|
597
|
-
return [{}, token.value.name, reduceParseUnparsed(token.value.arguments, builder)];
|
|
653
|
+
export function unparsedFunction(token, builder, property, allowAuto) {
|
|
654
|
+
return [{}, token.value.name, reduceParseUnparsed(token.value.arguments, builder, property, allowAuto)];
|
|
598
655
|
}
|
|
599
656
|
|
|
600
657
|
/**
|
|
601
658
|
* When the CSS cannot be parsed (often due to a runtime condition like a CSS variable)
|
|
602
659
|
* This export function best efforts parsing it into a export function that we can evaluate at runtime
|
|
603
660
|
*/
|
|
604
|
-
export function parseUnparsed(tokenOrValue, builder, allowAuto =
|
|
661
|
+
export function parseUnparsed(tokenOrValue, builder, property, allowAuto = allowAutoProperties.has(property)) {
|
|
605
662
|
if (tokenOrValue === undefined || tokenOrValue === null) {
|
|
606
663
|
return;
|
|
607
664
|
}
|
|
@@ -620,7 +677,7 @@ export function parseUnparsed(tokenOrValue, builder, allowAuto = false) {
|
|
|
620
677
|
return round(tokenOrValue);
|
|
621
678
|
}
|
|
622
679
|
if (Array.isArray(tokenOrValue)) {
|
|
623
|
-
const args = reduceParseUnparsed(tokenOrValue, builder);
|
|
680
|
+
const args = reduceParseUnparsed(tokenOrValue, builder, property, allowAuto);
|
|
624
681
|
if (!args) return;
|
|
625
682
|
if (Array.isArray(args) && args.length === 1) return args[0];
|
|
626
683
|
return args;
|
|
@@ -628,12 +685,12 @@ export function parseUnparsed(tokenOrValue, builder, allowAuto = false) {
|
|
|
628
685
|
switch (tokenOrValue.type) {
|
|
629
686
|
case "unresolved-color":
|
|
630
687
|
{
|
|
631
|
-
return parseUnresolvedColor(tokenOrValue.value, builder);
|
|
688
|
+
return parseUnresolvedColor(tokenOrValue.value, builder, property, allowAuto);
|
|
632
689
|
}
|
|
633
690
|
case "var":
|
|
634
691
|
{
|
|
635
692
|
let args = tokenOrValue.value.name.ident.slice(2);
|
|
636
|
-
const fallback = parseUnparsed(tokenOrValue.value.fallback, builder);
|
|
693
|
+
const fallback = parseUnparsed(tokenOrValue.value.fallback, builder, property, allowAuto);
|
|
637
694
|
if (fallback !== undefined) {
|
|
638
695
|
args = [args, fallback];
|
|
639
696
|
}
|
|
@@ -654,7 +711,8 @@ export function parseUnparsed(tokenOrValue, builder, allowAuto = false) {
|
|
|
654
711
|
case "translateX":
|
|
655
712
|
case "translateY":
|
|
656
713
|
tokenOrValue.value.name = `@${tokenOrValue.value.name}`;
|
|
657
|
-
return unparsedFunction(tokenOrValue, builder);
|
|
714
|
+
return unparsedFunction(tokenOrValue, builder, property, allowAuto);
|
|
715
|
+
case "blur":
|
|
658
716
|
case "brightness":
|
|
659
717
|
case "contrast":
|
|
660
718
|
case "cubic-bezier":
|
|
@@ -678,17 +736,17 @@ export function parseUnparsed(tokenOrValue, builder, allowAuto = false) {
|
|
|
678
736
|
case "sepia":
|
|
679
737
|
case "shadow":
|
|
680
738
|
case "steps":
|
|
681
|
-
return unparsedFunction(tokenOrValue, builder);
|
|
739
|
+
return unparsedFunction(tokenOrValue, builder, property, allowAuto);
|
|
682
740
|
case "hairlineWidth":
|
|
683
741
|
return [{}, tokenOrValue.value.name, []];
|
|
684
742
|
case "calc":
|
|
685
743
|
case "max":
|
|
686
744
|
case "min":
|
|
687
745
|
case "clamp":
|
|
688
|
-
return parseCalcFn(tokenOrValue.value.name, tokenOrValue.value.arguments, builder);
|
|
746
|
+
return parseCalcFn(tokenOrValue.value.name, tokenOrValue.value.arguments, builder, property);
|
|
689
747
|
default:
|
|
690
748
|
{
|
|
691
|
-
builder.addWarning("
|
|
749
|
+
builder.addWarning("value", `${tokenOrValue.value.name}()`);
|
|
692
750
|
return;
|
|
693
751
|
}
|
|
694
752
|
}
|
|
@@ -717,6 +775,8 @@ export function parseUnparsed(tokenOrValue, builder, allowAuto = false) {
|
|
|
717
775
|
return true;
|
|
718
776
|
} else if (value === "false") {
|
|
719
777
|
return false;
|
|
778
|
+
} else if (value === "infinity") {
|
|
779
|
+
return Number.MAX_SAFE_INTEGER;
|
|
720
780
|
} else {
|
|
721
781
|
return value;
|
|
722
782
|
}
|
|
@@ -734,11 +794,17 @@ export function parseUnparsed(tokenOrValue, builder, allowAuto = false) {
|
|
|
734
794
|
return parseDimension(tokenOrValue.value, builder);
|
|
735
795
|
case "comma":
|
|
736
796
|
return CommaSeparator;
|
|
797
|
+
case "delim":
|
|
798
|
+
{
|
|
799
|
+
if (property === "aspect-ratio" && tokenOrValue.value.value === "/") {
|
|
800
|
+
return tokenOrValue.value.value;
|
|
801
|
+
}
|
|
802
|
+
return;
|
|
803
|
+
}
|
|
737
804
|
case "at-keyword":
|
|
738
805
|
case "hash":
|
|
739
806
|
case "id-hash":
|
|
740
807
|
case "unquoted-url":
|
|
741
|
-
case "delim":
|
|
742
808
|
case "white-space":
|
|
743
809
|
case "comment":
|
|
744
810
|
case "colon":
|
|
@@ -791,22 +857,32 @@ export function parseLength(length, builder) {
|
|
|
791
857
|
inlineRem = 14
|
|
792
858
|
} = builder.getOptions();
|
|
793
859
|
if (typeof length === "number") {
|
|
794
|
-
return length;
|
|
860
|
+
return round(length);
|
|
795
861
|
}
|
|
796
862
|
if ("unit" in length) {
|
|
797
863
|
switch (length.unit) {
|
|
798
864
|
case "px":
|
|
799
|
-
|
|
865
|
+
{
|
|
866
|
+
if (length.value === Infinity) {
|
|
867
|
+
return 9999;
|
|
868
|
+
} else if (length.value === -Infinity) {
|
|
869
|
+
return -9999;
|
|
870
|
+
} else {
|
|
871
|
+
// Normalize large values to safe integers, e.g. `calc(infinity * 1px)`
|
|
872
|
+
const value = Math.max(Math.min(length.value, Number.MAX_SAFE_INTEGER), Number.MIN_SAFE_INTEGER);
|
|
873
|
+
return round(value);
|
|
874
|
+
}
|
|
875
|
+
}
|
|
800
876
|
case "rem":
|
|
801
877
|
if (typeof inlineRem === "number") {
|
|
802
878
|
return length.value * inlineRem;
|
|
803
879
|
} else {
|
|
804
|
-
return [{}, "rem", length.value];
|
|
880
|
+
return [{}, "rem", round(length.value)];
|
|
805
881
|
}
|
|
806
882
|
case "vw":
|
|
807
883
|
case "vh":
|
|
808
884
|
case "em":
|
|
809
|
-
return [{}, length.unit, length.value, 1];
|
|
885
|
+
return [{}, length.unit, round(length.value), 1];
|
|
810
886
|
case "in":
|
|
811
887
|
case "cm":
|
|
812
888
|
case "mm":
|
|
@@ -891,7 +967,7 @@ export function parseAngle(angle, builder) {
|
|
|
891
967
|
case "rad":
|
|
892
968
|
return `${angle.value}${angle.type}`;
|
|
893
969
|
default:
|
|
894
|
-
builder.addWarning("value", angle.value);
|
|
970
|
+
builder.addWarning("value", `${angle.value} ${angle.type}`);
|
|
895
971
|
return undefined;
|
|
896
972
|
}
|
|
897
973
|
}
|
|
@@ -949,7 +1025,7 @@ export function parseSize(size, builder, options, {
|
|
|
949
1025
|
}
|
|
950
1026
|
return;
|
|
951
1027
|
}
|
|
952
|
-
export function
|
|
1028
|
+
export function parseColorOrAutoDeclaration({
|
|
953
1029
|
value
|
|
954
1030
|
}, builder) {
|
|
955
1031
|
if (value.type === "auto") {
|
|
@@ -1339,19 +1415,27 @@ export function parseBorderStyle(value, builder) {
|
|
|
1339
1415
|
builder.addWarning("value", value.top);
|
|
1340
1416
|
return undefined;
|
|
1341
1417
|
}
|
|
1342
|
-
export function parseBorderBlockColor({
|
|
1343
|
-
value
|
|
1344
|
-
}, builder) {
|
|
1345
|
-
builder.addDescriptor("border-top-color", parseColor(value.start, builder));
|
|
1346
|
-
builder.addDescriptor("border-bottom-color", parseColor(value.end, builder));
|
|
1347
|
-
return;
|
|
1348
|
-
}
|
|
1349
1418
|
export function parseBorderBlockWidth(declaration, builder) {
|
|
1350
1419
|
builder.addDescriptor("border-top-width", parseBorderSideWidth(declaration.value.start, builder));
|
|
1351
1420
|
builder.addDescriptor("border-bottom-width", parseBorderSideWidth(declaration.value.end, builder));
|
|
1352
1421
|
}
|
|
1422
|
+
function parseBorderBlockStyle(declaration, builder) {
|
|
1423
|
+
if (declaration.value.start === declaration.value.end) {
|
|
1424
|
+
builder.addDescriptor("border-style", parseBorderStyle(declaration.value.start, builder));
|
|
1425
|
+
} else {
|
|
1426
|
+
builder.addWarning("property", "border-block-style");
|
|
1427
|
+
}
|
|
1428
|
+
}
|
|
1353
1429
|
export function parseBorderSideWidthDeclaration(declaration, builder) {
|
|
1354
|
-
|
|
1430
|
+
if (declaration.property.includes("block")) {
|
|
1431
|
+
builder.addDescriptor(`border-${declaration.property.includes("start") ? "top" : "bottom"}-width`, parseBorderSideWidth(declaration.value, builder));
|
|
1432
|
+
return;
|
|
1433
|
+
} else if (declaration.property.includes("inline")) {
|
|
1434
|
+
builder.addDescriptor(`border-${declaration.property.includes("start") ? "left" : "right"}-width`, parseBorderSideWidth(declaration.value, builder));
|
|
1435
|
+
return;
|
|
1436
|
+
} else {
|
|
1437
|
+
return parseBorderSideWidth(declaration.value, builder);
|
|
1438
|
+
}
|
|
1355
1439
|
}
|
|
1356
1440
|
export function parseBorderSideWidth(value, builder) {
|
|
1357
1441
|
if (value.type === "length") {
|
|
@@ -1396,7 +1480,7 @@ export function parseLineHeight(value, builder) {
|
|
|
1396
1480
|
return parseLength(length, builder);
|
|
1397
1481
|
case "percentage":
|
|
1398
1482
|
case "calc":
|
|
1399
|
-
builder.addWarning("
|
|
1483
|
+
builder.addWarning("style", "line-height", typeof length.value === "number" ? length.value : JSON.stringify(length.value));
|
|
1400
1484
|
return;
|
|
1401
1485
|
default:
|
|
1402
1486
|
{
|
|
@@ -1466,8 +1550,8 @@ export function parseLengthOrCoercePercentageToRuntime(value, builder) {
|
|
|
1466
1550
|
}
|
|
1467
1551
|
export function parseGap(declaration, builder) {
|
|
1468
1552
|
if ("column" in declaration.value) {
|
|
1469
|
-
builder.addDescriptor("row-gap",
|
|
1470
|
-
builder.addDescriptor("column-gap",
|
|
1553
|
+
builder.addDescriptor("row-gap", parseGapValue(declaration.value.row, builder));
|
|
1554
|
+
builder.addDescriptor("column-gap", parseGapValue(declaration.value.column, builder));
|
|
1471
1555
|
return;
|
|
1472
1556
|
} else {
|
|
1473
1557
|
if (declaration.value.type === "normal") {
|
|
@@ -1477,6 +1561,13 @@ export function parseGap(declaration, builder) {
|
|
|
1477
1561
|
return parseLength(declaration.value.value, builder);
|
|
1478
1562
|
}
|
|
1479
1563
|
}
|
|
1564
|
+
function parseGapValue(value, builder) {
|
|
1565
|
+
if (value.type === "normal") {
|
|
1566
|
+
return;
|
|
1567
|
+
} else {
|
|
1568
|
+
return parseLength(value.value, builder);
|
|
1569
|
+
}
|
|
1570
|
+
}
|
|
1480
1571
|
export function parseTextAlign({
|
|
1481
1572
|
value
|
|
1482
1573
|
}, builder) {
|
|
@@ -1576,7 +1667,11 @@ export function parseDimension({
|
|
|
1576
1667
|
}, builder) {
|
|
1577
1668
|
switch (unit) {
|
|
1578
1669
|
case "px":
|
|
1579
|
-
|
|
1670
|
+
if (value === Infinity) {
|
|
1671
|
+
return 9999;
|
|
1672
|
+
} else {
|
|
1673
|
+
return value;
|
|
1674
|
+
}
|
|
1580
1675
|
case "%":
|
|
1581
1676
|
return `${value}%`;
|
|
1582
1677
|
case "rnh":
|
|
@@ -1601,17 +1696,24 @@ export function parseUserSelect({
|
|
|
1601
1696
|
}
|
|
1602
1697
|
}
|
|
1603
1698
|
export function parseSVGPaint({
|
|
1604
|
-
value
|
|
1699
|
+
value,
|
|
1700
|
+
property
|
|
1605
1701
|
}, builder) {
|
|
1702
|
+
let parsedValue;
|
|
1606
1703
|
if (value.type === "none") {
|
|
1607
|
-
|
|
1704
|
+
parsedValue = "transparent";
|
|
1608
1705
|
} else if (value.type === "color") {
|
|
1609
|
-
|
|
1706
|
+
parsedValue = parseColor(value.value, builder);
|
|
1707
|
+
} else {
|
|
1708
|
+
return;
|
|
1610
1709
|
}
|
|
1611
|
-
|
|
1710
|
+
builder.addMapping({
|
|
1711
|
+
[property]: [property]
|
|
1712
|
+
});
|
|
1713
|
+
builder.addDescriptor(property, parsedValue);
|
|
1612
1714
|
}
|
|
1613
1715
|
export function round(number) {
|
|
1614
|
-
return Math.round((number + Number.EPSILON) *
|
|
1716
|
+
return Math.round((number + Number.EPSILON) * 10000) / 10000;
|
|
1615
1717
|
}
|
|
1616
1718
|
export function parseDimensionPercentageFor_LengthValue(value, builder) {
|
|
1617
1719
|
if (value.type === "calc") {
|
|
@@ -1622,7 +1724,7 @@ export function parseDimensionPercentageFor_LengthValue(value, builder) {
|
|
|
1622
1724
|
return parseLength(value.value, builder);
|
|
1623
1725
|
}
|
|
1624
1726
|
}
|
|
1625
|
-
const
|
|
1727
|
+
const allowAutoProperties = new Set(["pointer-events"]);
|
|
1626
1728
|
export function parseEnv(value, builder) {
|
|
1627
1729
|
switch (value.name.type) {
|
|
1628
1730
|
case "ua":
|
|
@@ -1631,7 +1733,7 @@ export function parseEnv(value, builder) {
|
|
|
1631
1733
|
case "safe-area-inset-right":
|
|
1632
1734
|
case "safe-area-inset-bottom":
|
|
1633
1735
|
case "safe-area-inset-left":
|
|
1634
|
-
return [{}, "var", [`--react-native-css-${value.name.value}`, parseUnparsed(value.fallback, builder)], 1];
|
|
1736
|
+
return [{}, "var", [`--react-native-css-${value.name.value}`, parseUnparsed(value.fallback, builder, value.name.value)], 1];
|
|
1635
1737
|
case "viewport-segment-width":
|
|
1636
1738
|
case "viewport-segment-height":
|
|
1637
1739
|
case "viewport-segment-top":
|
|
@@ -1645,14 +1747,14 @@ export function parseEnv(value, builder) {
|
|
|
1645
1747
|
}
|
|
1646
1748
|
return;
|
|
1647
1749
|
}
|
|
1648
|
-
export function parseCalcFn(name, tokens, builder) {
|
|
1649
|
-
const args = parseCalcArguments(tokens, builder);
|
|
1750
|
+
export function parseCalcFn(name, tokens, builder, property) {
|
|
1751
|
+
const args = parseCalcArguments(tokens, builder, property);
|
|
1650
1752
|
if (args) {
|
|
1651
1753
|
return [{}, name, args];
|
|
1652
1754
|
}
|
|
1653
1755
|
return;
|
|
1654
1756
|
}
|
|
1655
|
-
export function parseCalcArguments([...args], builder) {
|
|
1757
|
+
export function parseCalcArguments([...args], builder, property) {
|
|
1656
1758
|
const parsed = [];
|
|
1657
1759
|
let mode;
|
|
1658
1760
|
for (const [currentIndex, arg] of args.entries()) {
|
|
@@ -1666,7 +1768,7 @@ export function parseCalcArguments([...args], builder) {
|
|
|
1666
1768
|
case "function":
|
|
1667
1769
|
case "unresolved-color":
|
|
1668
1770
|
{
|
|
1669
|
-
const value = parseUnparsed(arg, builder);
|
|
1771
|
+
const value = parseUnparsed(arg, builder, property);
|
|
1670
1772
|
if (value === undefined) {
|
|
1671
1773
|
return undefined;
|
|
1672
1774
|
}
|
|
@@ -1735,7 +1837,7 @@ export function parseCalcArguments([...args], builder) {
|
|
|
1735
1837
|
.splice(currentIndex, closeParenthesisIndex - currentIndex + 1)
|
|
1736
1838
|
// Then drop the surrounding parenthesis
|
|
1737
1839
|
.slice(1, -1);
|
|
1738
|
-
parsed.push(parseCalcFn("calc", innerCalcArgs, builder));
|
|
1840
|
+
parsed.push(parseCalcFn("calc", innerCalcArgs, builder, property));
|
|
1739
1841
|
break;
|
|
1740
1842
|
}
|
|
1741
1843
|
case "close-parenthesis":
|
|
@@ -1776,20 +1878,20 @@ export function parseTranslateProp(value, prop, builder) {
|
|
|
1776
1878
|
}
|
|
1777
1879
|
return parseLength(value[prop], builder);
|
|
1778
1880
|
}
|
|
1779
|
-
export function parseUnresolvedColor(color, builder) {
|
|
1881
|
+
export function parseUnresolvedColor(color, builder, property, allowAuto) {
|
|
1780
1882
|
switch (color.type) {
|
|
1781
1883
|
case "rgb":
|
|
1782
|
-
return [{}, "rgba", [round(color.r * 255), round(color.g * 255), round(color.b * 255), parseUnparsed(color.alpha, builder)]];
|
|
1884
|
+
return [{}, "rgba", [round(color.r * 255), round(color.g * 255), round(color.b * 255), parseUnparsed(color.alpha, builder, property)]];
|
|
1783
1885
|
case "hsl":
|
|
1784
|
-
return [{}, color.type, [color.h, color.s, color.l, parseUnparsed(color.alpha, builder)]];
|
|
1886
|
+
return [{}, color.type, [color.h, color.s, color.l, parseUnparsed(color.alpha, builder, property)]];
|
|
1785
1887
|
case "light-dark":
|
|
1786
1888
|
{
|
|
1787
1889
|
const extraRule = builder.extendRule({
|
|
1788
1890
|
m: [["=", "prefers-color-scheme", "dark"]]
|
|
1789
1891
|
});
|
|
1790
|
-
builder.addUnnamedDescriptor(reduceParseUnparsed(color.dark, builder), false, extraRule);
|
|
1892
|
+
builder.addUnnamedDescriptor(reduceParseUnparsed(color.dark, builder, property, allowAuto), false, extraRule);
|
|
1791
1893
|
builder.addExtraRule(extraRule);
|
|
1792
|
-
return reduceParseUnparsed(color.light, builder);
|
|
1894
|
+
return reduceParseUnparsed(color.light, builder, property, allowAuto);
|
|
1793
1895
|
}
|
|
1794
1896
|
default:
|
|
1795
1897
|
color;
|