react-native-css 0.0.0-nightly.8a01f75 → 0.0.0-nightly.930095f

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/README.md CHANGED
@@ -117,7 +117,7 @@ export default function App() {
117
117
  return (
118
118
  <MyView className="container">
119
119
  <MyView className="box" />
120
- </View>
120
+ </MyView>
121
121
  );
122
122
  }
123
123
  ```
@@ -176,15 +176,15 @@ export default function App() {
176
176
  > This hook may not support all features of the library.
177
177
  > This hooks does not support container queries or inheritance for children elements.
178
178
 
179
- #### `useNativeCssVariable`
179
+ #### `useNativeVariable`
180
180
 
181
- If you just require a CSS variable value, you can use the `useNativeCssVariable` hook:
181
+ If you just require a CSS variable value, you can use the `useNativeVariable` hook:
182
182
 
183
183
  ```ts
184
- import { useNativeCssVariable } from 'react-native-css';
184
+ import { useNativeVariable } from 'react-native-css';
185
185
 
186
186
  export default function App() {
187
- const myColor = useNativeCssVariable("--my-color");
187
+ const myColor = useNativeVariable("--my-color");
188
188
 
189
189
  return (
190
190
  <View style={{ backgroundColor: myColor }}>
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "SafeAreaProvider", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _reactNativeSafeAreaContext.SafeAreaProvider;
10
+ }
11
+ });
12
+ var _reactNativeSafeAreaContext = require("react-native-css/components/react-native-safe-area-context");
13
+ //# sourceMappingURL=SafeAreaProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNativeSafeAreaContext","require"],"sourceRoot":"../../../src","sources":["components/SafeAreaProvider.tsx"],"mappings":";;;;;;;;;;;AAAA,IAAAA,2BAAA,GAAAC,OAAA","ignoreList":[]}
@@ -11,6 +11,126 @@ var _reactivity = require("../reactivity.js");
11
11
  var _calculateProps = require("./calculate-props.js");
12
12
  /* eslint-disable */
13
13
 
14
+ /**
15
+ * Checks if the left style object has any properties that are not present in the right style object.
16
+ * This is used to determine if styles need to be preserved in an array or if right can completely override left.
17
+ *
18
+ * Note: This intentionally only checks one direction (left → right). We don't need to check if right has
19
+ * properties that left doesn't have, because right will always be applied/merged. The question we're
20
+ * answering is: "Does left have any properties that would be lost if we just used right?" If yes, we
21
+ * create a style array [left, right] to preserve both. If no, right can safely replace left entirely.
22
+ *
23
+ * @param left - The left style object to check
24
+ * @param right - The right style object to compare against
25
+ * @returns true if left has at least one property key that doesn't exist in right, false otherwise
26
+ *
27
+ * @example
28
+ * hasNonOverlappingProperties({color: 'red', fontSize: 12}, {color: 'blue'}) // true - fontSize is not in right
29
+ * hasNonOverlappingProperties({color: 'red'}, {color: 'blue', fontSize: 12}) // false - all left keys exist in right
30
+ */
31
+ function hasNonOverlappingProperties(left, right) {
32
+ // Null safety check
33
+ if (!left || !right) {
34
+ return false;
35
+ }
36
+
37
+ // Only check own properties to avoid prototype pollution
38
+ for (const key in left) {
39
+ if (Object.prototype.hasOwnProperty.call(left, key)) {
40
+ if (!Object.prototype.hasOwnProperty.call(right, key)) {
41
+ return true;
42
+ }
43
+ }
44
+ }
45
+ return false;
46
+ }
47
+
48
+ /**
49
+ * Flattens a style array into a single object when possible, with rightmost values taking precedence.
50
+ * Returns the original array if it contains any non-plain objects, arrays, or CSS variable objects.
51
+ *
52
+ * Note: This function assumes the input array has already been filtered (e.g., by filterCssVariables),
53
+ * so empty arrays should not reach this function. If they do, they will be treated as non-flattenable.
54
+ *
55
+ * @param styleArray - The style array to potentially flatten
56
+ * @returns A single merged object if all items are plain objects, otherwise the original array
57
+ */
58
+ function flattenStyleArray(styleArray) {
59
+ // Check if we can flatten to a single object (all items are plain objects)
60
+ for (const item of styleArray) {
61
+ // Use explicit null check instead of !item to allow falsy values like 0 or false
62
+ if (item == null || typeof item !== "object" || Array.isArray(item) || Object.prototype.hasOwnProperty.call(item, _reactivity.VAR_SYMBOL)) {
63
+ return styleArray;
64
+ }
65
+ }
66
+
67
+ // Use reduce to avoid spread operator performance issues with large arrays
68
+ return styleArray.reduce((acc, item) => Object.assign(acc, item), {});
69
+ }
70
+
71
+ /**
72
+ * Recursively filters out CSS variable objects (with VAR_SYMBOL) from style values.
73
+ * This prevents CSS variable runtime objects from leaking into React Native component props.
74
+ *
75
+ * @param value - The value to filter (can be any type: object, array, primitive, etc.)
76
+ * @param depth - Internal recursion depth counter to prevent stack overflow (max 100)
77
+ * @returns The filtered value with CSS variables removed, or `undefined` if the entire value
78
+ * should be filtered out (e.g., empty arrays, objects with only VAR_SYMBOL properties)
79
+ *
80
+ * Filtering behavior:
81
+ * - Objects with VAR_SYMBOL property: returns `undefined` (completely filtered)
82
+ * - Arrays: filters out VAR_SYMBOL objects, returns `undefined` if empty after filtering
83
+ * - Objects: recursively filters properties, returns `undefined` if no properties remain
84
+ * - Primitives (null, undefined, numbers, strings, booleans): returned as-is
85
+ * - Symbol properties: intentionally filtered out for React Native compatibility
86
+ *
87
+ * @example
88
+ * filterCssVariables({fontSize: 16, color: {[VAR_SYMBOL]: true}}) // {fontSize: 16}
89
+ * filterCssVariables([{margin: 10}, {[VAR_SYMBOL]: true}]) // [{margin: 10}]
90
+ * filterCssVariables({color: {[VAR_SYMBOL]: true}}) // undefined (all props filtered)
91
+ */
92
+ function filterCssVariables(value, depth = 0) {
93
+ // Prevent stack overflow on deeply nested structures
94
+ if (depth > 100) {
95
+ return value;
96
+ }
97
+ if (value === null || value === undefined) {
98
+ return value;
99
+ }
100
+ if (Array.isArray(value)) {
101
+ // Single-pass filter with map operation
102
+ const filtered = [];
103
+ for (const item of value) {
104
+ const filteredItem = filterCssVariables(item, depth + 1);
105
+ if (filteredItem !== undefined && !(typeof filteredItem === "object" && filteredItem !== null && Object.prototype.hasOwnProperty.call(filteredItem, _reactivity.VAR_SYMBOL))) {
106
+ filtered.push(filteredItem);
107
+ }
108
+ }
109
+ return filtered.length > 0 ? filtered : undefined;
110
+ }
111
+ if (typeof value === "object") {
112
+ // If the object itself has VAR_SYMBOL, filter it out (check own property only)
113
+ if (Object.prototype.hasOwnProperty.call(value, _reactivity.VAR_SYMBOL)) {
114
+ return undefined;
115
+ }
116
+
117
+ // Otherwise, filter VAR_SYMBOL properties from nested objects
118
+ const filtered = {};
119
+ let hasProperties = false;
120
+
121
+ // Use Object.keys to only iterate own string properties (not inherited, not Symbols)
122
+ // This intentionally filters out Symbol properties for React Native compatibility
123
+ for (const key of Object.keys(value)) {
124
+ const filteredValue = filterCssVariables(value[key], depth + 1);
125
+ if (filteredValue !== undefined) {
126
+ filtered[key] = filteredValue;
127
+ hasProperties = true;
128
+ }
129
+ }
130
+ return hasProperties ? filtered : undefined;
131
+ }
132
+ return value;
133
+ }
14
134
  const stylesFamily = exports.stylesFamily = (0, _reactivity.family)((hash, rules) => {
15
135
  const sortedRules = Array.from(rules).sort(_utilities.specificityCompareFn);
16
136
  const obs = (0, _reactivity.observable)(read => (0, _calculateProps.calculateProps)(read, sortedRules));
@@ -66,9 +186,84 @@ function deepMergeConfig(config, left, right, rightIsInline = false) {
66
186
  ...left
67
187
  };
68
188
  }
69
- let result = config.target ? Object.assign({}, left, right) : {
70
- ...left
71
- };
189
+
190
+ // Handle style merging to support both className and inline style props
191
+ let result;
192
+ if (config.target) {
193
+ if (Array.isArray(config.target) && config.target.length === 1 && config.target[0] === "style") {
194
+ // Special handling for style target when we have inline styles
195
+ result = {
196
+ ...left,
197
+ ...right
198
+ };
199
+
200
+ // Handle null/undefined inline styles
201
+ if (right?.style === null || right?.style === undefined) {
202
+ if (left?.style) {
203
+ result.style = left.style;
204
+ }
205
+ } else if (rightIsInline && right?.style) {
206
+ // Filter inline styles if rightIsInline is true
207
+ const filteredRightStyle = filterCssVariables(right.style);
208
+ if (left?.style) {
209
+ if (!filteredRightStyle) {
210
+ // All inline styles were CSS variables, only use left
211
+ result.style = left.style;
212
+ } else {
213
+ const leftStyle = left.style;
214
+
215
+ // For arrays or objects, check if we need to create a style array
216
+ const leftIsObject = typeof leftStyle === "object" && !Array.isArray(leftStyle);
217
+ const rightIsObject = typeof filteredRightStyle === "object" && !Array.isArray(filteredRightStyle);
218
+ if (leftIsObject && rightIsObject) {
219
+ if (hasNonOverlappingProperties(leftStyle, filteredRightStyle)) {
220
+ result.style = [leftStyle, filteredRightStyle];
221
+ } else {
222
+ // All left properties are in right, right overrides
223
+ result.style = filteredRightStyle;
224
+ }
225
+ } else {
226
+ // One or both are arrays, merge them
227
+ result.style = [leftStyle, filteredRightStyle];
228
+ }
229
+ }
230
+ } else {
231
+ // No left style, just use filtered right
232
+ if (filteredRightStyle) {
233
+ result.style = filteredRightStyle;
234
+ } else {
235
+ // All filtered out, remove style prop
236
+ delete result.style;
237
+ }
238
+ }
239
+ } else if (!rightIsInline && right?.style) {
240
+ // Merging non-inline styles (e.g., important styles)
241
+ if (left?.style) {
242
+ // If left.style is an array, append right.style
243
+ if (Array.isArray(left.style)) {
244
+ const combined = [...left.style, right.style];
245
+ result.style = flattenStyleArray(combined);
246
+ } else if (typeof left.style === "object" && typeof right.style === "object") {
247
+ // Both are objects, check for overlaps
248
+ if (hasNonOverlappingProperties(left.style, right.style)) {
249
+ result.style = flattenStyleArray([left.style, right.style]);
250
+ } else {
251
+ // All left properties are overridden by right
252
+ result.style = right.style;
253
+ }
254
+ } else {
255
+ // One or both are arrays/mixed types
256
+ const combined = [left.style, right.style];
257
+ result.style = flattenStyleArray(combined);
258
+ }
259
+ }
260
+ }
261
+ } else {
262
+ result = Object.assign({}, left, right);
263
+ }
264
+ } else {
265
+ result = Object.assign({}, left, right);
266
+ }
72
267
  if (right && rightIsInline && config.source in right && config.target !== config.source) {
73
268
  delete result[config.source];
74
269
  }
@@ -96,18 +291,8 @@ function deepMergeConfig(config, left, right, rightIsInline = false) {
96
291
  let rightValue = right?.[target];
97
292
 
98
293
  // Strip any inline variables from the target
99
- if (rightIsInline && rightValue) {
100
- if (Array.isArray(rightValue)) {
101
- rightValue = rightValue.filter(v => {
102
- return typeof v !== "object" || !(v && _reactivity.VAR_SYMBOL in v);
103
- });
104
- if (rightValue.length === 0) {
105
- rightValue = undefined;
106
- }
107
- } else if (typeof rightValue === "object" && rightValue && _reactivity.VAR_SYMBOL in rightValue) {
108
- rightValue = undefined;
109
- delete result[target][_reactivity.VAR_SYMBOL];
110
- }
294
+ if (rightIsInline && rightValue !== undefined) {
295
+ rightValue = filterCssVariables(rightValue);
111
296
  }
112
297
  if (rightValue !== undefined) {
113
298
  result[target] = left && target in left ? [left[target], rightValue] : rightValue;
@@ -1 +1 @@
1
- {"version":3,"names":["_utilities","require","_interaction","_reactivity","_calculateProps","stylesFamily","exports","family","hash","rules","sortedRules","Array","from","sort","specificityCompareFn","obs","observable","read","calculateProps","Object","assign","cleanup","effect","observers","delete","size","getStyledProps","state","inline","result","styledProps","stylesObs","get","styleEffect","config","configs","deepMergeConfig","nativeStyleMapping","normal","important","hoverFamily","has","ruleEffectGetter","onHoverIn","getInteractionHandler","onHoverOut","activeFamily","onPress","onPressIn","onPressOut","focusFamily","onBlur","onFocus","containerLayoutFamily","onLayout","left","right","rightIsInline","target","source","isArray","i","length","key","undefined","slice","rightValue","filter","v","VAR_SYMBOL","props","tokens","lastToken","pop","token","path","entries","styleValue","split"],"sourceRoot":"../../../../src","sources":["native/styles/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_utilities","require","_interaction","_reactivity","_calculateProps","hasNonOverlappingProperties","left","right","key","Object","prototype","hasOwnProperty","call","flattenStyleArray","styleArray","item","Array","isArray","VAR_SYMBOL","reduce","acc","assign","filterCssVariables","value","depth","undefined","filtered","filteredItem","push","length","hasProperties","keys","filteredValue","stylesFamily","exports","family","hash","rules","sortedRules","from","sort","specificityCompareFn","obs","observable","read","calculateProps","cleanup","effect","observers","delete","size","getStyledProps","state","inline","result","styledProps","stylesObs","get","styleEffect","config","configs","deepMergeConfig","nativeStyleMapping","normal","important","hoverFamily","has","ruleEffectGetter","onHoverIn","getInteractionHandler","onHoverOut","activeFamily","onPress","onPressIn","onPressOut","focusFamily","onBlur","onFocus","containerLayoutFamily","onLayout","rightIsInline","target","style","filteredRightStyle","leftStyle","leftIsObject","rightIsObject","combined","source","i","slice","rightValue","props","tokens","lastToken","pop","token","path","entries","styleValue","split"],"sourceRoot":"../../../../src","sources":["native/styles/index.ts"],"mappings":"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","ignoreList":[]}
@@ -15,7 +15,7 @@ const defaultMapping = {
15
15
  };
16
16
  const styled = (baseComponent, mapping = defaultMapping, _options) => {
17
17
  return props => {
18
- return useCssElement(baseComponent, mapping, props);
18
+ return useCssElement(baseComponent, props, mapping);
19
19
  };
20
20
  };
21
21
  exports.styled = styled;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_assignStyle","_jsxRuntime","defaultMapping","className","styled","baseComponent","mapping","_options","props","useCssElement","exports","component","incomingProps","key","value","Object","entries","source","target","assignStyle","$$css","split","createElement","colorScheme","get","Appearance","getColorScheme","set","name","setColorScheme","vars","variables","$variables","startsWith","toString","VariableContextProvider","style","useMemo","display","fromEntries","map","jsx","children","useNativeVariable","Error","useUnstableNativeVariable"],"sourceRoot":"../../../src","sources":["web/api.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_assignStyle","_jsxRuntime","defaultMapping","className","styled","baseComponent","mapping","_options","props","useCssElement","exports","component","incomingProps","key","value","Object","entries","source","target","assignStyle","$$css","split","createElement","colorScheme","get","Appearance","getColorScheme","set","name","setColorScheme","vars","variables","$variables","startsWith","toString","VariableContextProvider","style","useMemo","display","fromEntries","map","jsx","children","useNativeVariable","Error","useUnstableNativeVariable"],"sourceRoot":"../../../src","sources":["web/api.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { SafeAreaProvider } from "react-native-css/components/react-native-safe-area-context";
4
+ //# sourceMappingURL=SafeAreaProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SafeAreaProvider"],"sourceRoot":"../../../src","sources":["components/SafeAreaProvider.tsx"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,4DAA4D","ignoreList":[]}
@@ -6,6 +6,127 @@ import { specificityCompareFn } from "react-native-css/utilities";
6
6
  import { getInteractionHandler } from "../react/interaction.js";
7
7
  import { activeFamily, containerLayoutFamily, family, focusFamily, hoverFamily, observable, VAR_SYMBOL } from "../reactivity.js";
8
8
  import { calculateProps } from "./calculate-props.js";
9
+
10
+ /**
11
+ * Checks if the left style object has any properties that are not present in the right style object.
12
+ * This is used to determine if styles need to be preserved in an array or if right can completely override left.
13
+ *
14
+ * Note: This intentionally only checks one direction (left → right). We don't need to check if right has
15
+ * properties that left doesn't have, because right will always be applied/merged. The question we're
16
+ * answering is: "Does left have any properties that would be lost if we just used right?" If yes, we
17
+ * create a style array [left, right] to preserve both. If no, right can safely replace left entirely.
18
+ *
19
+ * @param left - The left style object to check
20
+ * @param right - The right style object to compare against
21
+ * @returns true if left has at least one property key that doesn't exist in right, false otherwise
22
+ *
23
+ * @example
24
+ * hasNonOverlappingProperties({color: 'red', fontSize: 12}, {color: 'blue'}) // true - fontSize is not in right
25
+ * hasNonOverlappingProperties({color: 'red'}, {color: 'blue', fontSize: 12}) // false - all left keys exist in right
26
+ */
27
+ function hasNonOverlappingProperties(left, right) {
28
+ // Null safety check
29
+ if (!left || !right) {
30
+ return false;
31
+ }
32
+
33
+ // Only check own properties to avoid prototype pollution
34
+ for (const key in left) {
35
+ if (Object.prototype.hasOwnProperty.call(left, key)) {
36
+ if (!Object.prototype.hasOwnProperty.call(right, key)) {
37
+ return true;
38
+ }
39
+ }
40
+ }
41
+ return false;
42
+ }
43
+
44
+ /**
45
+ * Flattens a style array into a single object when possible, with rightmost values taking precedence.
46
+ * Returns the original array if it contains any non-plain objects, arrays, or CSS variable objects.
47
+ *
48
+ * Note: This function assumes the input array has already been filtered (e.g., by filterCssVariables),
49
+ * so empty arrays should not reach this function. If they do, they will be treated as non-flattenable.
50
+ *
51
+ * @param styleArray - The style array to potentially flatten
52
+ * @returns A single merged object if all items are plain objects, otherwise the original array
53
+ */
54
+ function flattenStyleArray(styleArray) {
55
+ // Check if we can flatten to a single object (all items are plain objects)
56
+ for (const item of styleArray) {
57
+ // Use explicit null check instead of !item to allow falsy values like 0 or false
58
+ if (item == null || typeof item !== "object" || Array.isArray(item) || Object.prototype.hasOwnProperty.call(item, VAR_SYMBOL)) {
59
+ return styleArray;
60
+ }
61
+ }
62
+
63
+ // Use reduce to avoid spread operator performance issues with large arrays
64
+ return styleArray.reduce((acc, item) => Object.assign(acc, item), {});
65
+ }
66
+
67
+ /**
68
+ * Recursively filters out CSS variable objects (with VAR_SYMBOL) from style values.
69
+ * This prevents CSS variable runtime objects from leaking into React Native component props.
70
+ *
71
+ * @param value - The value to filter (can be any type: object, array, primitive, etc.)
72
+ * @param depth - Internal recursion depth counter to prevent stack overflow (max 100)
73
+ * @returns The filtered value with CSS variables removed, or `undefined` if the entire value
74
+ * should be filtered out (e.g., empty arrays, objects with only VAR_SYMBOL properties)
75
+ *
76
+ * Filtering behavior:
77
+ * - Objects with VAR_SYMBOL property: returns `undefined` (completely filtered)
78
+ * - Arrays: filters out VAR_SYMBOL objects, returns `undefined` if empty after filtering
79
+ * - Objects: recursively filters properties, returns `undefined` if no properties remain
80
+ * - Primitives (null, undefined, numbers, strings, booleans): returned as-is
81
+ * - Symbol properties: intentionally filtered out for React Native compatibility
82
+ *
83
+ * @example
84
+ * filterCssVariables({fontSize: 16, color: {[VAR_SYMBOL]: true}}) // {fontSize: 16}
85
+ * filterCssVariables([{margin: 10}, {[VAR_SYMBOL]: true}]) // [{margin: 10}]
86
+ * filterCssVariables({color: {[VAR_SYMBOL]: true}}) // undefined (all props filtered)
87
+ */
88
+ function filterCssVariables(value, depth = 0) {
89
+ // Prevent stack overflow on deeply nested structures
90
+ if (depth > 100) {
91
+ return value;
92
+ }
93
+ if (value === null || value === undefined) {
94
+ return value;
95
+ }
96
+ if (Array.isArray(value)) {
97
+ // Single-pass filter with map operation
98
+ const filtered = [];
99
+ for (const item of value) {
100
+ const filteredItem = filterCssVariables(item, depth + 1);
101
+ if (filteredItem !== undefined && !(typeof filteredItem === "object" && filteredItem !== null && Object.prototype.hasOwnProperty.call(filteredItem, VAR_SYMBOL))) {
102
+ filtered.push(filteredItem);
103
+ }
104
+ }
105
+ return filtered.length > 0 ? filtered : undefined;
106
+ }
107
+ if (typeof value === "object") {
108
+ // If the object itself has VAR_SYMBOL, filter it out (check own property only)
109
+ if (Object.prototype.hasOwnProperty.call(value, VAR_SYMBOL)) {
110
+ return undefined;
111
+ }
112
+
113
+ // Otherwise, filter VAR_SYMBOL properties from nested objects
114
+ const filtered = {};
115
+ let hasProperties = false;
116
+
117
+ // Use Object.keys to only iterate own string properties (not inherited, not Symbols)
118
+ // This intentionally filters out Symbol properties for React Native compatibility
119
+ for (const key of Object.keys(value)) {
120
+ const filteredValue = filterCssVariables(value[key], depth + 1);
121
+ if (filteredValue !== undefined) {
122
+ filtered[key] = filteredValue;
123
+ hasProperties = true;
124
+ }
125
+ }
126
+ return hasProperties ? filtered : undefined;
127
+ }
128
+ return value;
129
+ }
9
130
  export const stylesFamily = family((hash, rules) => {
10
131
  const sortedRules = Array.from(rules).sort(specificityCompareFn);
11
132
  const obs = observable(read => calculateProps(read, sortedRules));
@@ -61,9 +182,84 @@ function deepMergeConfig(config, left, right, rightIsInline = false) {
61
182
  ...left
62
183
  };
63
184
  }
64
- let result = config.target ? Object.assign({}, left, right) : {
65
- ...left
66
- };
185
+
186
+ // Handle style merging to support both className and inline style props
187
+ let result;
188
+ if (config.target) {
189
+ if (Array.isArray(config.target) && config.target.length === 1 && config.target[0] === "style") {
190
+ // Special handling for style target when we have inline styles
191
+ result = {
192
+ ...left,
193
+ ...right
194
+ };
195
+
196
+ // Handle null/undefined inline styles
197
+ if (right?.style === null || right?.style === undefined) {
198
+ if (left?.style) {
199
+ result.style = left.style;
200
+ }
201
+ } else if (rightIsInline && right?.style) {
202
+ // Filter inline styles if rightIsInline is true
203
+ const filteredRightStyle = filterCssVariables(right.style);
204
+ if (left?.style) {
205
+ if (!filteredRightStyle) {
206
+ // All inline styles were CSS variables, only use left
207
+ result.style = left.style;
208
+ } else {
209
+ const leftStyle = left.style;
210
+
211
+ // For arrays or objects, check if we need to create a style array
212
+ const leftIsObject = typeof leftStyle === "object" && !Array.isArray(leftStyle);
213
+ const rightIsObject = typeof filteredRightStyle === "object" && !Array.isArray(filteredRightStyle);
214
+ if (leftIsObject && rightIsObject) {
215
+ if (hasNonOverlappingProperties(leftStyle, filteredRightStyle)) {
216
+ result.style = [leftStyle, filteredRightStyle];
217
+ } else {
218
+ // All left properties are in right, right overrides
219
+ result.style = filteredRightStyle;
220
+ }
221
+ } else {
222
+ // One or both are arrays, merge them
223
+ result.style = [leftStyle, filteredRightStyle];
224
+ }
225
+ }
226
+ } else {
227
+ // No left style, just use filtered right
228
+ if (filteredRightStyle) {
229
+ result.style = filteredRightStyle;
230
+ } else {
231
+ // All filtered out, remove style prop
232
+ delete result.style;
233
+ }
234
+ }
235
+ } else if (!rightIsInline && right?.style) {
236
+ // Merging non-inline styles (e.g., important styles)
237
+ if (left?.style) {
238
+ // If left.style is an array, append right.style
239
+ if (Array.isArray(left.style)) {
240
+ const combined = [...left.style, right.style];
241
+ result.style = flattenStyleArray(combined);
242
+ } else if (typeof left.style === "object" && typeof right.style === "object") {
243
+ // Both are objects, check for overlaps
244
+ if (hasNonOverlappingProperties(left.style, right.style)) {
245
+ result.style = flattenStyleArray([left.style, right.style]);
246
+ } else {
247
+ // All left properties are overridden by right
248
+ result.style = right.style;
249
+ }
250
+ } else {
251
+ // One or both are arrays/mixed types
252
+ const combined = [left.style, right.style];
253
+ result.style = flattenStyleArray(combined);
254
+ }
255
+ }
256
+ }
257
+ } else {
258
+ result = Object.assign({}, left, right);
259
+ }
260
+ } else {
261
+ result = Object.assign({}, left, right);
262
+ }
67
263
  if (right && rightIsInline && config.source in right && config.target !== config.source) {
68
264
  delete result[config.source];
69
265
  }
@@ -91,18 +287,8 @@ function deepMergeConfig(config, left, right, rightIsInline = false) {
91
287
  let rightValue = right?.[target];
92
288
 
93
289
  // Strip any inline variables from the target
94
- if (rightIsInline && rightValue) {
95
- if (Array.isArray(rightValue)) {
96
- rightValue = rightValue.filter(v => {
97
- return typeof v !== "object" || !(v && VAR_SYMBOL in v);
98
- });
99
- if (rightValue.length === 0) {
100
- rightValue = undefined;
101
- }
102
- } else if (typeof rightValue === "object" && rightValue && VAR_SYMBOL in rightValue) {
103
- rightValue = undefined;
104
- delete result[target][VAR_SYMBOL];
105
- }
290
+ if (rightIsInline && rightValue !== undefined) {
291
+ rightValue = filterCssVariables(rightValue);
106
292
  }
107
293
  if (rightValue !== undefined) {
108
294
  result[target] = left && target in left ? [left[target], rightValue] : rightValue;
@@ -1 +1 @@
1
- {"version":3,"names":["specificityCompareFn","getInteractionHandler","activeFamily","containerLayoutFamily","family","focusFamily","hoverFamily","observable","VAR_SYMBOL","calculateProps","stylesFamily","hash","rules","sortedRules","Array","from","sort","obs","read","Object","assign","cleanup","effect","observers","delete","size","getStyledProps","state","inline","result","styledProps","stylesObs","get","styleEffect","config","configs","deepMergeConfig","nativeStyleMapping","normal","important","has","ruleEffectGetter","onHoverIn","onHoverOut","onPress","onPressIn","onPressOut","onBlur","onFocus","onLayout","left","right","rightIsInline","target","source","isArray","i","length","key","undefined","slice","rightValue","filter","v","props","tokens","lastToken","pop","token","path","entries","styleValue","split"],"sourceRoot":"../../../../src","sources":["native/styles/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["specificityCompareFn","getInteractionHandler","activeFamily","containerLayoutFamily","family","focusFamily","hoverFamily","observable","VAR_SYMBOL","calculateProps","hasNonOverlappingProperties","left","right","key","Object","prototype","hasOwnProperty","call","flattenStyleArray","styleArray","item","Array","isArray","reduce","acc","assign","filterCssVariables","value","depth","undefined","filtered","filteredItem","push","length","hasProperties","keys","filteredValue","stylesFamily","hash","rules","sortedRules","from","sort","obs","read","cleanup","effect","observers","delete","size","getStyledProps","state","inline","result","styledProps","stylesObs","get","styleEffect","config","configs","deepMergeConfig","nativeStyleMapping","normal","important","has","ruleEffectGetter","onHoverIn","onHoverOut","onPress","onPressIn","onPressOut","onBlur","onFocus","onLayout","rightIsInline","target","style","filteredRightStyle","leftStyle","leftIsObject","rightIsObject","combined","source","i","slice","rightValue","props","tokens","lastToken","pop","token","path","entries","styleValue","split"],"sourceRoot":"../../../../src","sources":["native/styles/index.ts"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,7 @@ const defaultMapping = {
9
9
  };
10
10
  export const styled = (baseComponent, mapping = defaultMapping, _options) => {
11
11
  return props => {
12
- return useCssElement(baseComponent, mapping, props);
12
+ return useCssElement(baseComponent, props, mapping);
13
13
  };
14
14
  };
15
15
  export const useCssElement = (component, incomingProps, mapping) => {
@@ -1 +1 @@
1
- {"version":3,"names":["createElement","useMemo","Appearance","assignStyle","jsx","_jsx","defaultMapping","className","styled","baseComponent","mapping","_options","props","useCssElement","component","incomingProps","key","value","Object","entries","source","target","$$css","split","colorScheme","get","getColorScheme","set","name","setColorScheme","vars","variables","$variables","startsWith","toString","VariableContextProvider","style","display","fromEntries","map","children","useNativeVariable","Error","useUnstableNativeVariable"],"sourceRoot":"../../../src","sources":["web/api.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createElement","useMemo","Appearance","assignStyle","jsx","_jsx","defaultMapping","className","styled","baseComponent","mapping","_options","props","useCssElement","component","incomingProps","key","value","Object","entries","source","target","$$css","split","colorScheme","get","getColorScheme","set","name","setColorScheme","vars","variables","$variables","startsWith","toString","VariableContextProvider","style","display","fromEntries","map","children","useNativeVariable","Error","useUnstableNativeVariable"],"sourceRoot":"../../../src","sources":["web/api.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export { SafeAreaProvider } from "react-native-css/components/react-native-safe-area-context";
2
+ //# sourceMappingURL=SafeAreaProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SafeAreaProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components/SafeAreaProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/native/styles/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,KAAK,EAAE,cAAc,EAAU,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAQL,KAAK,MAAM,EACX,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAGvB,eAAO,MAAM,YAAY;;;;;;;;;sBAaD,MAAM;;;;CAQ7B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,mCAiF/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/native/styles/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,KAAK,EAAE,cAAc,EAAU,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAQL,KAAK,MAAM,EACX,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAkJvB,eAAO,MAAM,YAAY;;;;;;;;;sBAaD,MAAM;;;;CAQ7B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,mCAiF/C"}
@@ -0,0 +1,2 @@
1
+ export { SafeAreaProvider } from "react-native-css/components/react-native-safe-area-context";
2
+ //# sourceMappingURL=SafeAreaProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SafeAreaProvider.d.ts","sourceRoot":"","sources":["../../../../../src/components/SafeAreaProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/native/styles/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,KAAK,EAAE,cAAc,EAAU,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAQL,KAAK,MAAM,EACX,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAGvB,eAAO,MAAM,YAAY;;;;;;;;;sBAaD,MAAM;;;;CAQ7B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,mCAiF/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/native/styles/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,KAAK,EAAE,cAAc,EAAU,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAQL,KAAK,MAAM,EACX,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAkJvB,eAAO,MAAM,YAAY;;;;;;;;;sBAaD,MAAM;;;;CAQ7B,CAAC;AAEF,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,mCAiF/C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-css",
3
- "version": "0.0.0-nightly.8a01f75",
3
+ "version": "0.0.0-nightly.930095f",
4
4
  "description": "A CSS polyfill for React Native",
5
5
  "exports": {
6
6
  ".": {
@@ -47,6 +47,18 @@
47
47
  "types": "./dist/typescript/commonjs/src/components/index.d.ts"
48
48
  }
49
49
  },
50
+ "./components/react-native-safe-area-context": {
51
+ "source": "./src/components/react-native-safe-area-context.native.tsx",
52
+ "react-native": "./src/components/react-native-safe-area-context.native.tsx",
53
+ "import": {
54
+ "types": "./dist/typescript/module/src/components/react-native-safe-area-context.d.ts",
55
+ "default": "./dist/module/components/react-native-safe-area-context.js"
56
+ },
57
+ "require": {
58
+ "types": "./dist/typescript/commonjs/src/components/react-native-safe-area-context.d.ts",
59
+ "default": "./dist/commonjs/components/react-native-safe-area-context.js"
60
+ }
61
+ },
50
62
  "./components/*": {
51
63
  "source": "./src/components/*.tsx",
52
64
  "react-native": "./src/components/*.tsx",
@@ -0,0 +1 @@
1
+ export { SafeAreaProvider } from "react-native-css/components/react-native-safe-area-context";
@@ -17,6 +17,149 @@ import {
17
17
  } from "../reactivity";
18
18
  import { calculateProps } from "./calculate-props";
19
19
 
20
+ /**
21
+ * Checks if the left style object has any properties that are not present in the right style object.
22
+ * This is used to determine if styles need to be preserved in an array or if right can completely override left.
23
+ *
24
+ * Note: This intentionally only checks one direction (left → right). We don't need to check if right has
25
+ * properties that left doesn't have, because right will always be applied/merged. The question we're
26
+ * answering is: "Does left have any properties that would be lost if we just used right?" If yes, we
27
+ * create a style array [left, right] to preserve both. If no, right can safely replace left entirely.
28
+ *
29
+ * @param left - The left style object to check
30
+ * @param right - The right style object to compare against
31
+ * @returns true if left has at least one property key that doesn't exist in right, false otherwise
32
+ *
33
+ * @example
34
+ * hasNonOverlappingProperties({color: 'red', fontSize: 12}, {color: 'blue'}) // true - fontSize is not in right
35
+ * hasNonOverlappingProperties({color: 'red'}, {color: 'blue', fontSize: 12}) // false - all left keys exist in right
36
+ */
37
+ function hasNonOverlappingProperties(
38
+ left: Record<string, any>,
39
+ right: Record<string, any>,
40
+ ): boolean {
41
+ // Null safety check
42
+ if (!left || !right) {
43
+ return false;
44
+ }
45
+
46
+ // Only check own properties to avoid prototype pollution
47
+ for (const key in left) {
48
+ if (Object.prototype.hasOwnProperty.call(left, key)) {
49
+ if (!Object.prototype.hasOwnProperty.call(right, key)) {
50
+ return true;
51
+ }
52
+ }
53
+ }
54
+ return false;
55
+ }
56
+
57
+ /**
58
+ * Flattens a style array into a single object when possible, with rightmost values taking precedence.
59
+ * Returns the original array if it contains any non-plain objects, arrays, or CSS variable objects.
60
+ *
61
+ * Note: This function assumes the input array has already been filtered (e.g., by filterCssVariables),
62
+ * so empty arrays should not reach this function. If they do, they will be treated as non-flattenable.
63
+ *
64
+ * @param styleArray - The style array to potentially flatten
65
+ * @returns A single merged object if all items are plain objects, otherwise the original array
66
+ */
67
+ function flattenStyleArray(styleArray: any[]): any {
68
+ // Check if we can flatten to a single object (all items are plain objects)
69
+ for (const item of styleArray) {
70
+ // Use explicit null check instead of !item to allow falsy values like 0 or false
71
+ if (
72
+ item == null ||
73
+ typeof item !== "object" ||
74
+ Array.isArray(item) ||
75
+ Object.prototype.hasOwnProperty.call(item, VAR_SYMBOL)
76
+ ) {
77
+ return styleArray;
78
+ }
79
+ }
80
+
81
+ // Use reduce to avoid spread operator performance issues with large arrays
82
+ return styleArray.reduce((acc, item) => Object.assign(acc, item), {});
83
+ }
84
+
85
+ /**
86
+ * Recursively filters out CSS variable objects (with VAR_SYMBOL) from style values.
87
+ * This prevents CSS variable runtime objects from leaking into React Native component props.
88
+ *
89
+ * @param value - The value to filter (can be any type: object, array, primitive, etc.)
90
+ * @param depth - Internal recursion depth counter to prevent stack overflow (max 100)
91
+ * @returns The filtered value with CSS variables removed, or `undefined` if the entire value
92
+ * should be filtered out (e.g., empty arrays, objects with only VAR_SYMBOL properties)
93
+ *
94
+ * Filtering behavior:
95
+ * - Objects with VAR_SYMBOL property: returns `undefined` (completely filtered)
96
+ * - Arrays: filters out VAR_SYMBOL objects, returns `undefined` if empty after filtering
97
+ * - Objects: recursively filters properties, returns `undefined` if no properties remain
98
+ * - Primitives (null, undefined, numbers, strings, booleans): returned as-is
99
+ * - Symbol properties: intentionally filtered out for React Native compatibility
100
+ *
101
+ * @example
102
+ * filterCssVariables({fontSize: 16, color: {[VAR_SYMBOL]: true}}) // {fontSize: 16}
103
+ * filterCssVariables([{margin: 10}, {[VAR_SYMBOL]: true}]) // [{margin: 10}]
104
+ * filterCssVariables({color: {[VAR_SYMBOL]: true}}) // undefined (all props filtered)
105
+ */
106
+ function filterCssVariables(value: any, depth = 0): any | undefined {
107
+ // Prevent stack overflow on deeply nested structures
108
+ if (depth > 100) {
109
+ return value;
110
+ }
111
+
112
+ if (value === null || value === undefined) {
113
+ return value;
114
+ }
115
+
116
+ if (Array.isArray(value)) {
117
+ // Single-pass filter with map operation
118
+ const filtered: any[] = [];
119
+
120
+ for (const item of value) {
121
+ const filteredItem = filterCssVariables(item, depth + 1);
122
+ if (
123
+ filteredItem !== undefined &&
124
+ !(
125
+ typeof filteredItem === "object" &&
126
+ filteredItem !== null &&
127
+ Object.prototype.hasOwnProperty.call(filteredItem, VAR_SYMBOL)
128
+ )
129
+ ) {
130
+ filtered.push(filteredItem);
131
+ }
132
+ }
133
+
134
+ return filtered.length > 0 ? filtered : undefined;
135
+ }
136
+
137
+ if (typeof value === "object") {
138
+ // If the object itself has VAR_SYMBOL, filter it out (check own property only)
139
+ if (Object.prototype.hasOwnProperty.call(value, VAR_SYMBOL)) {
140
+ return undefined;
141
+ }
142
+
143
+ // Otherwise, filter VAR_SYMBOL properties from nested objects
144
+ const filtered: Record<string, any> = {};
145
+ let hasProperties = false;
146
+
147
+ // Use Object.keys to only iterate own string properties (not inherited, not Symbols)
148
+ // This intentionally filters out Symbol properties for React Native compatibility
149
+ for (const key of Object.keys(value)) {
150
+ const filteredValue = filterCssVariables(value[key], depth + 1);
151
+ if (filteredValue !== undefined) {
152
+ filtered[key] = filteredValue;
153
+ hasProperties = true;
154
+ }
155
+ }
156
+
157
+ return hasProperties ? filtered : undefined;
158
+ }
159
+
160
+ return value;
161
+ }
162
+
20
163
  export const stylesFamily = family(
21
164
  (
22
165
  hash: string,
@@ -135,7 +278,92 @@ function deepMergeConfig(
135
278
  return { ...left };
136
279
  }
137
280
 
138
- let result = config.target ? Object.assign({}, left, right) : { ...left };
281
+ // Handle style merging to support both className and inline style props
282
+ let result: Record<string, any>;
283
+ if (config.target) {
284
+ if (
285
+ Array.isArray(config.target) &&
286
+ config.target.length === 1 &&
287
+ config.target[0] === "style"
288
+ ) {
289
+ // Special handling for style target when we have inline styles
290
+ result = { ...left, ...right };
291
+
292
+ // Handle null/undefined inline styles
293
+ if (right?.style === null || right?.style === undefined) {
294
+ if (left?.style) {
295
+ result.style = left.style;
296
+ }
297
+ } else if (rightIsInline && right?.style) {
298
+ // Filter inline styles if rightIsInline is true
299
+ const filteredRightStyle = filterCssVariables(right.style);
300
+
301
+ if (left?.style) {
302
+ if (!filteredRightStyle) {
303
+ // All inline styles were CSS variables, only use left
304
+ result.style = left.style;
305
+ } else {
306
+ const leftStyle = left.style;
307
+
308
+ // For arrays or objects, check if we need to create a style array
309
+ const leftIsObject =
310
+ typeof leftStyle === "object" && !Array.isArray(leftStyle);
311
+ const rightIsObject =
312
+ typeof filteredRightStyle === "object" &&
313
+ !Array.isArray(filteredRightStyle);
314
+
315
+ if (leftIsObject && rightIsObject) {
316
+ if (hasNonOverlappingProperties(leftStyle, filteredRightStyle)) {
317
+ result.style = [leftStyle, filteredRightStyle];
318
+ } else {
319
+ // All left properties are in right, right overrides
320
+ result.style = filteredRightStyle;
321
+ }
322
+ } else {
323
+ // One or both are arrays, merge them
324
+ result.style = [leftStyle, filteredRightStyle];
325
+ }
326
+ }
327
+ } else {
328
+ // No left style, just use filtered right
329
+ if (filteredRightStyle) {
330
+ result.style = filteredRightStyle;
331
+ } else {
332
+ // All filtered out, remove style prop
333
+ delete result.style;
334
+ }
335
+ }
336
+ } else if (!rightIsInline && right?.style) {
337
+ // Merging non-inline styles (e.g., important styles)
338
+ if (left?.style) {
339
+ // If left.style is an array, append right.style
340
+ if (Array.isArray(left.style)) {
341
+ const combined = [...left.style, right.style];
342
+ result.style = flattenStyleArray(combined);
343
+ } else if (
344
+ typeof left.style === "object" &&
345
+ typeof right.style === "object"
346
+ ) {
347
+ // Both are objects, check for overlaps
348
+ if (hasNonOverlappingProperties(left.style, right.style)) {
349
+ result.style = flattenStyleArray([left.style, right.style]);
350
+ } else {
351
+ // All left properties are overridden by right
352
+ result.style = right.style;
353
+ }
354
+ } else {
355
+ // One or both are arrays/mixed types
356
+ const combined = [left.style, right.style];
357
+ result.style = flattenStyleArray(combined);
358
+ }
359
+ }
360
+ }
361
+ } else {
362
+ result = Object.assign({}, left, right);
363
+ }
364
+ } else {
365
+ result = Object.assign({}, left, right);
366
+ }
139
367
 
140
368
  if (
141
369
  right &&
@@ -177,23 +405,8 @@ function deepMergeConfig(
177
405
  let rightValue = right?.[target];
178
406
 
179
407
  // Strip any inline variables from the target
180
- if (rightIsInline && rightValue) {
181
- if (Array.isArray(rightValue)) {
182
- rightValue = rightValue.filter((v) => {
183
- return typeof v !== "object" || !(v && VAR_SYMBOL in v);
184
- });
185
-
186
- if (rightValue.length === 0) {
187
- rightValue = undefined;
188
- }
189
- } else if (
190
- typeof rightValue === "object" &&
191
- rightValue &&
192
- VAR_SYMBOL in rightValue
193
- ) {
194
- rightValue = undefined;
195
- delete result[target][VAR_SYMBOL];
196
- }
408
+ if (rightIsInline && rightValue !== undefined) {
409
+ rightValue = filterCssVariables(rightValue);
197
410
  }
198
411
 
199
412
  if (rightValue !== undefined) {
package/src/web/api.tsx CHANGED
@@ -31,7 +31,7 @@ export const styled = <
31
31
  _options?: StyledOptions,
32
32
  ) => {
33
33
  return (props: StyledProps<ComponentPropsWithRef<C>, M>) => {
34
- return useCssElement(baseComponent, mapping, props);
34
+ return useCssElement(baseComponent, props, mapping);
35
35
  };
36
36
  };
37
37