react-native-unistyles 3.0.0-nightly-20250213 → 3.0.0-nightly-20250215

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.
@@ -49,7 +49,6 @@ jsi::Value HybridShadowRegistry::link(jsi::Runtime &rt, const jsi::Value &thisVa
49
49
  }
50
50
 
51
51
  auto parser = parser::Parser(this->_unistylesRuntime);
52
- auto parsedStyleSheet = jsi::Value::undefined();
53
52
  std::vector<std::shared_ptr<core::UnistyleData>> unistylesData{};
54
53
 
55
54
  // create unistyleData based on wrappers
@@ -78,9 +77,7 @@ jsi::Value HybridShadowRegistry::link(jsi::Runtime &rt, const jsi::Value &thisVa
78
77
 
79
78
  // before linking we need to check if given unistyle is affected by scoped theme
80
79
  if (scopedTheme.has_value()) {
81
- if (parsedStyleSheet.isUndefined()) {
82
- parsedStyleSheet = parser.getParsedStyleSheetForScopedTheme(rt, unistyle, scopedTheme.value());
83
- }
80
+ auto parsedStyleSheet = parser.getParsedStyleSheetForScopedTheme(rt, unistyle, scopedTheme.value());
84
81
 
85
82
  // if so we need to force update
86
83
  parser.rebuildUnistyleWithScopedTheme(rt, parsedStyleSheet, unistyleData);
@@ -62,10 +62,10 @@ jsi::Value parser::Parser::getParsedStyleSheetForScopedTheme(jsi::Runtime& rt, c
62
62
  .asObject(rt);
63
63
  }
64
64
 
65
- void parser::Parser::rebuildUnistyleWithScopedTheme(jsi::Runtime& rt, jsi::Value& jsScopedTheme, std::shared_ptr<core::UnistyleData> unistyleData) {
66
- auto parsedStyleSheet = jsScopedTheme.isUndefined()
65
+ void parser::Parser::rebuildUnistyleWithScopedTheme(jsi::Runtime& rt, jsi::Value& scopedStyleSheet, std::shared_ptr<core::UnistyleData> unistyleData) {
66
+ auto parsedStyleSheet = scopedStyleSheet.isUndefined()
67
67
  ? this->getParsedStyleSheetForScopedTheme(rt, unistyleData->unistyle, unistyleData->scopedTheme.value())
68
- : jsScopedTheme.asObject(rt);
68
+ : scopedStyleSheet.asObject(rt);
69
69
 
70
70
  if (parsedStyleSheet.isUndefined()) {
71
71
  return;
@@ -48,7 +48,7 @@ type FlatUnistylesValues = {
48
48
  export type UnistylesValues = FlatUnistylesValues & {} & VariantsAndCompoundVariants & {
49
49
  [propName in NestedKeys]?: UnistyleNestedStyles[propName];
50
50
  } & {
51
- _web?: CSSProperties & CustomClassName & {
51
+ _web?: ToDeepUnistyles<CSSProperties> & CustomClassName & {
52
52
  [propName in Pseudo]?: ToDeepUnistyles<CSSProperties>;
53
53
  };
54
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"stylesheet.d.ts","sourceRoot":"","sources":["../../../../src/types/stylesheet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stylesheet.d.ts","sourceRoot":"","sources":["../../../../src/types/stylesheet.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-unistyles",
3
- "version": "3.0.0-nightly-20250213",
3
+ "version": "3.0.0-nightly-20250215",
4
4
  "description": "Level up your React Native StyleSheet",
5
5
  "scripts": {
6
6
  "test": "jest",
@@ -9,9 +9,10 @@
9
9
  "lint": "biome lint",
10
10
  "check": "biome check --write",
11
11
  "check:ci": "biome check",
12
- "prepare": "husky && bob build",
12
+ "prepare": "husky && bob build && yarn plugin:build",
13
13
  "precommit": "concurrently 'yarn tsc' 'yarn lint' 'yarn check' 'yarn test'",
14
- "release": "release-it"
14
+ "release": "release-it",
15
+ "plugin:build": "node plugin/esbuild.js"
15
16
  },
16
17
  "main": "lib/commonjs/index.js",
17
18
  "module": "lib/module/index.js",
@@ -21,24 +22,25 @@
21
22
  ".": {
22
23
  "types": "./lib/typescript/src/index.d.ts",
23
24
  "module": "./lib/module/index.js",
24
- "default": "./lib/commonjs/index.js",
25
- "react-native": "./src/index"
25
+ "react-native": "./src/index.ts",
26
+ "default": "./lib/commonjs/index.js"
26
27
  },
27
28
  "./components/native/*": {
28
29
  "module": "./lib/module/components/native/*",
29
- "default": "./lib/commonjs/components/native/*",
30
- "react-native": "./src/components/native/*"
30
+ "react-native": "./src/components/native/*",
31
+ "default": "./lib/commonjs/components/native/*"
31
32
  },
32
33
  "./plugin": {
33
34
  "module": "./plugin/index.js",
35
+ "types": "./plugin/index.d.ts",
34
36
  "default": "./plugin/index.js"
35
37
  },
36
38
  "./package.json": "./package.json",
37
39
  "./server": {
38
40
  "types": "./lib/typescript/src/server/index.d.ts",
39
41
  "module": "./lib/module/server/index.js",
40
- "default": "./lib/commonjs/server/index.js",
41
- "react-native": "./src/server"
42
+ "react-native": "./src/server.ts",
43
+ "default": "./lib/commonjs/server/index.js"
42
44
  }
43
45
  },
44
46
  "files": [
@@ -54,6 +56,8 @@
54
56
  "react-native.config.js",
55
57
  "Unistyles.podspec",
56
58
  "!plugin/__tests__",
59
+ "!plugin/src",
60
+ "!plugin/esbuild.js",
57
61
  "!ios/build",
58
62
  "!android/build",
59
63
  "!android/gradle",
@@ -83,9 +87,11 @@
83
87
  "registry": "https://registry.npmjs.org/"
84
88
  },
85
89
  "devDependencies": {
90
+ "@babel/core": "7.26.8",
86
91
  "@babel/plugin-syntax-jsx": "7.25.9",
87
92
  "@babel/preset-flow": "7.25.9",
88
93
  "@babel/preset-typescript": "7.26.0",
94
+ "@babel/types": "7.26.8",
89
95
  "@biomejs/biome": "1.9.4",
90
96
  "@commitlint/config-conventional": "19.6.0",
91
97
  "@react-native/normalize-colors": "0.77.0",
@@ -95,6 +101,7 @@
95
101
  "babel-plugin-tester": "11.0.4",
96
102
  "commitlint": "19.6.1",
97
103
  "concurrently": "9.1.2",
104
+ "esbuild": "0.25.0",
98
105
  "husky": "9.1.7",
99
106
  "jest": "29.7.0",
100
107
  "metro-react-native-babel-preset": "0.77.0",
@@ -178,5 +185,8 @@
178
185
  "name": "TurboUnistyles",
179
186
  "type": "modules",
180
187
  "jsSrcsDir": "./src/specs/TurboUnistyles"
188
+ },
189
+ "resolutions": {
190
+ "@babel/types": "7.26.8"
181
191
  }
182
192
  }
package/plugin/index.d.ts CHANGED
@@ -1,18 +1,43 @@
1
- type RemapImport = {
1
+ interface RemapImport {
2
+ /**
3
+ * The target import name if `isDefault` is false.
4
+ */
2
5
  name?: string,
6
+
7
+ /**
8
+ * Whether the import is default.
9
+ */
3
10
  isDefault: boolean,
11
+
12
+ /**
13
+ * The path to the target import.
14
+ */
4
15
  path: string,
16
+
17
+ /**
18
+ * The name of the Unistyles component, check `react-native-unistyles/src/components/native`
19
+ */
5
20
  mapTo: string
6
21
  }
7
22
 
8
- type RemapConfig = {
23
+ /**
24
+ * A more powerful API that allows converting unmatched imports to Unistyles.
25
+ */
26
+ export interface RemapConfig {
27
+ /**
28
+ * The node_modules path.
29
+ */
9
30
  path: string,
31
+
32
+ /**
33
+ * An array of import objects with the following properties:
34
+ */
10
35
  imports: Array<RemapImport>
11
36
  }
12
37
 
13
38
  export interface UnistylesPluginOptions {
14
39
  /**
15
- * Example: "src" or "apps/mobile"
40
+ * Example: 'src' or 'apps/mobile'
16
41
  * Add this option if some of your components don't have `react-native-unistyles` import.
17
42
  * Babel plugin will automatically process all files under this root.
18
43
  */
@@ -25,29 +50,41 @@ export interface UnistylesPluginOptions {
25
50
  autoProcessImports?: Array<string>,
26
51
 
27
52
  /**
28
- * Example: [{
29
- * path: "node_modules/custom-library/components",
53
+ * Example:
54
+ * ```js
55
+ * [{
56
+ * path: 'node_modules/custom-library/components',
30
57
  * imports: [
31
58
  * {
32
- * name: "NativeText",
59
+ * name: 'NativeText',
33
60
  * isDefault: false,
34
- * path: "react-native/Libraries/Text/TextNativeComponent",
35
- * mapTo: "NativeText"
61
+ * path: 'react-native/Libraries/Text/TextNativeComponent',
62
+ * mapTo: 'NativeText'
36
63
  * },
37
64
  * {
38
65
  * isDefault: true,
39
- * path: "react-native/Libraries/Components/View/ViewNativeComponent",
40
- * mapTo: "NativeView"
66
+ * path: 'react-native/Libraries/Components/View/ViewNativeComponent',
67
+ * mapTo: 'NativeView'
41
68
  * }
42
69
  * ]
43
70
  * }]
71
+ * ```
44
72
  *
45
73
  * Will map:
46
- * import { NativeText } from "react-native/Libraries/Text/TextNativeComponent"
47
- * to Unistyles "NativeText"
48
74
  *
49
- * import View from "react-native/Libraries/Components/View/ViewNativeComponent"
50
- * to Unistyles "NativeView"
75
+ * ```js
76
+ * import { NativeText } from 'react-native/Libraries/Text/TextNativeComponent'
77
+ * ```
78
+ *
79
+ * to Unistyles 'NativeText'
80
+ *
81
+ * and
82
+ *
83
+ * ```js
84
+ * import View from 'react-native/Libraries/Components/View/ViewNativeComponent'
85
+ * ```
86
+ *
87
+ * to Unistyles 'NativeView'
51
88
  *
52
89
  * This is the most powerful way of remapping imports. If 3rd party library uses imports different from `react-native` we can remap them to `react-native-unistyles` factories.
53
90
  * Internally we do that for raw RCTView and RCTText components.
@@ -83,7 +120,3 @@ export interface UnistylesPluginOptions {
83
120
  */
84
121
  isLocal?: boolean
85
122
  }
86
-
87
- export interface UnistylesPluginPass {
88
- opts: UnistylesPluginOptions
89
- }