react-native-unistyles 3.0.14 → 3.0.15
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 +2 -2
- package/cxx/common/Helpers.h +11 -2
- package/cxx/common/UnistylesConstants.h +1 -0
- package/cxx/parser/Parser.cpp +3 -3
- package/lib/commonjs/web/state.js +4 -6
- package/lib/commonjs/web/state.js.map +1 -1
- package/lib/module/web/state.js +4 -6
- package/lib/module/web/state.js.map +1 -1
- package/lib/typescript/src/web/state.d.ts.map +1 -1
- package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.cpp +1 -1
- package/nitrogen/generated/ios/Unistyles-Swift-Cxx-Bridge.hpp +1 -1
- package/nitrogen/generated/shared/c++/Dimensions.hpp +8 -0
- package/nitrogen/generated/shared/c++/Insets.hpp +8 -0
- package/nitrogen/generated/shared/c++/UnistylesCxxMiniRuntime.hpp +8 -0
- package/nitrogen/generated/shared/c++/UnistylesNativeMiniRuntime.hpp +8 -0
- package/package.json +3 -3
- package/src/web/state.ts +5 -8
package/README.md
CHANGED
@@ -21,14 +21,14 @@ yarn add react-native-unistyles
|
|
21
21
|
Install dependencies:
|
22
22
|
|
23
23
|
```shell
|
24
|
-
yarn add react-native-edge-to-edge react-native-nitro-modules@0.
|
24
|
+
yarn add react-native-edge-to-edge react-native-nitro-modules@0.30.0
|
25
25
|
```
|
26
26
|
|
27
27
|
> To avoid unexpected behavior, always use a fixed version of `react-native-nitro-modules`
|
28
28
|
|
29
29
|
| react-native-unistyles | react-native-nitro-modules |
|
30
30
|
|------------------------|----------------------------|
|
31
|
-
| 3.0.0 | 0.
|
31
|
+
| 3.0.0 | 0.30.0 |
|
32
32
|
|
33
33
|
Then follow [installation guides](https://unistyl.es/v3/start/getting-started) for your platform.
|
34
34
|
|
package/cxx/common/Helpers.h
CHANGED
@@ -5,6 +5,7 @@
|
|
5
5
|
#include <folly/dynamic.h>
|
6
6
|
#include "NativePlatform.h"
|
7
7
|
#include <unordered_set>
|
8
|
+
#include "UnistylesConstants.h"
|
8
9
|
|
9
10
|
using namespace facebook;
|
10
11
|
|
@@ -179,7 +180,7 @@ inline std::vector<folly::dynamic> parseDynamicFunctionArguments(jsi::Runtime& r
|
|
179
180
|
}
|
180
181
|
|
181
182
|
if (arg.isUndefined()) {
|
182
|
-
parsedArgument.push_back(folly::dynamic());
|
183
|
+
parsedArgument.push_back(folly::dynamic(UNDEFINED_MARKER));
|
183
184
|
|
184
185
|
continue;
|
185
186
|
}
|
@@ -207,6 +208,14 @@ inline std::vector<folly::dynamic> parseDynamicFunctionArguments(jsi::Runtime& r
|
|
207
208
|
return parsedArgument;
|
208
209
|
}
|
209
210
|
|
211
|
+
inline jsi::Value dynamicToJSIValue(jsi::Runtime& rt, const folly::dynamic& arg) {
|
212
|
+
if (arg.isString() && arg.asString() == UNDEFINED_MARKER) {
|
213
|
+
return jsi::Value::undefined();
|
214
|
+
}
|
215
|
+
|
216
|
+
return jsi::valueFromDynamic(rt, arg);
|
217
|
+
}
|
218
|
+
|
210
219
|
inline jsi::Array functionArgumentsToArray(jsi::Runtime& rt, const jsi::Value* args, size_t count) {
|
211
220
|
auto arr = jsi::Array(rt, count);
|
212
221
|
|
@@ -317,7 +326,7 @@ inline void debugPrintJSIObject(jsi::Runtime& rt, std::string& name, jsi::Object
|
|
317
326
|
inline void debugPrintFollyDynamic(jsi::Runtime& rt, const std::string& name, const folly::dynamic& obj) {
|
318
327
|
auto console = rt.global().getPropertyAsObject(rt, "console");
|
319
328
|
auto log = console.getPropertyAsFunction(rt, "log");
|
320
|
-
|
329
|
+
|
321
330
|
std::function<void(const std::string&, const folly::dynamic&)> parser = [&](const std::string& key, const folly::dynamic& value) {
|
322
331
|
if (value.isBool()) {
|
323
332
|
std::string output = key + ": " + (value.getBool() ? "true" : "false");
|
@@ -11,5 +11,6 @@ static const std::string WEB_STYLE_KEY = "_web";
|
|
11
11
|
static const std::string EXOTIC_STYLE_KEY = "_exotic";
|
12
12
|
static const std::string ARGUMENTS = "__uni__args";
|
13
13
|
static const std::string GET_STYLES = "uni__getStyles";
|
14
|
+
static const std::string UNDEFINED_MARKER = "__unistyles_undefined__";
|
14
15
|
|
15
16
|
}
|
package/cxx/parser/Parser.cpp
CHANGED
@@ -98,7 +98,7 @@ void parser::Parser::rebuildUnistyleWithScopedTheme(jsi::Runtime& rt, jsi::Value
|
|
98
98
|
for (int i = 0; i < arguments.size(); i++) {
|
99
99
|
folly::dynamic& arg = arguments.at(i);
|
100
100
|
|
101
|
-
args.emplace_back(
|
101
|
+
args.emplace_back(helpers::dynamicToJSIValue(rt, arg));
|
102
102
|
}
|
103
103
|
|
104
104
|
const jsi::Value *argStart = args.data();
|
@@ -193,7 +193,7 @@ void parser::Parser::rebuildUnistyleWithVariants(jsi::Runtime& rt, std::shared_p
|
|
193
193
|
for (int i = 0; i < arguments.size(); i++) {
|
194
194
|
folly::dynamic& arg = arguments.at(i);
|
195
195
|
|
196
|
-
args.emplace_back(
|
196
|
+
args.emplace_back(helpers::dynamicToJSIValue(rt, arg));
|
197
197
|
}
|
198
198
|
|
199
199
|
const jsi::Value *argStart = args.data();
|
@@ -350,7 +350,7 @@ void parser::Parser::rebuildUnistyle(jsi::Runtime& rt, Unistyle::Shared unistyle
|
|
350
350
|
for (int i = 0; i < dynamicFunctionMetadata.size(); i++) {
|
351
351
|
folly::dynamic& arg = dynamicFunctionMetadata.at(i);
|
352
352
|
|
353
|
-
args.emplace_back(
|
353
|
+
args.emplace_back(helpers::dynamicToJSIValue(rt, arg));
|
354
354
|
}
|
355
355
|
|
356
356
|
const jsi::Value *argStart = args.data();
|
@@ -29,9 +29,7 @@ class UnistylesState {
|
|
29
29
|
this.isInitialized = true;
|
30
30
|
this.initThemes(config.themes, config.settings?.CSSVars);
|
31
31
|
this.initBreakpoints(config.breakpoints);
|
32
|
-
|
33
|
-
this.initSettings(config.settings);
|
34
|
-
}
|
32
|
+
this.initSettings(config.settings);
|
35
33
|
if ((0, _utils.isServer)()) {
|
36
34
|
return;
|
37
35
|
}
|
@@ -60,19 +58,19 @@ class UnistylesState {
|
|
60
58
|
};
|
61
59
|
initSettings = settings => {
|
62
60
|
this.hasAdaptiveThemes = settings?.adaptiveThemes ?? false;
|
63
|
-
if (settings
|
61
|
+
if (settings?.initialTheme && settings.adaptiveThemes) {
|
64
62
|
throw (0, _utils.error)('You\'re trying to set initial theme and enable adaptiveThemes, but these options are mutually exclusive.');
|
65
63
|
}
|
66
64
|
|
67
65
|
// Adaptive themes
|
68
|
-
if (settings
|
66
|
+
if (settings?.adaptiveThemes) {
|
69
67
|
if (!this.themes.get('light') || !this.themes.get('dark')) {
|
70
68
|
throw (0, _utils.error)(`You're trying to enable adaptiveThemes, but you didn't register both 'light' and 'dark' themes.`);
|
71
69
|
}
|
72
70
|
this.themeName = (0, _utils.schemeToTheme)(this.services.runtime.colorScheme);
|
73
71
|
return;
|
74
72
|
}
|
75
|
-
if (settings
|
73
|
+
if (settings?.initialTheme) {
|
76
74
|
const initialTheme = typeof settings.initialTheme === 'function' ? settings.initialTheme() : settings.initialTheme;
|
77
75
|
if (!this.themes.get(initialTheme)) {
|
78
76
|
throw (0, _utils.error)(`You're trying to select theme "${initialTheme}" but it wasn't registered.`);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_NativePlatform","require","_utils","UnistylesState","isInitialized","themes","Map","cssThemes","CSSVars","matchingBreakpoints","_config","breakpoint","currentBreakpoint","Array","from","reverse","find","_key","value","hasAdaptiveThemes","constructor","services","init","config","initThemes","settings","initBreakpoints","breakpoints","initSettings","isServer","themeName","document","querySelector","classList","add","listener","initListeners","Object","entries","forEach","theme","set","registry","css","addTheme","fromEntries","map","key","convertTheme","adaptiveThemes","initialTheme","error","get","schemeToTheme","runtime","colorScheme","size","keys","next","breakpointsEntries","length","sort","a","b","mediaQuery","window","matchMedia","matches","addEventListener","event","emitChange","UnistyleDependency","Breakpoints","getConfig","exports"],"sourceRoot":"../../../src","sources":["web/state.ts"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AAKO,MAAME,cAAc,CAAC;EACxBC,aAAa,GAAG,KAAK;EACrBC,MAAM,GAAG,IAAIC,GAAG,CAAyB,CAAC;EAC1CC,SAAS,GAAG,IAAID,GAAG,CAAyB,CAAC;EAE7CE,OAAO,GAAG,IAAI;EAENC,mBAAmB,GAAG,IAAIH,GAAG,CAAkB,CAAC;EAChDI,OAAO,GAAoB,CAAC,CAAC;EAErC,IAAIC,UAAUA,CAAA,EAAG;IACb,MAAM,CAACC,iBAAiB,CAAC,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACL,mBAAmB,CAAC,CAC3DM,OAAO,CAAC,CAAC,CACTC,IAAI,CAAC,CAAC,CAACC,IAAI,EAAEC,KAAK,CAAC,KAAKA,KAAK,CAAC,IAAI,EAAE;IAEzC,OAAON,iBAAiB;EAC5B;EAIAO,iBAAiB,GAAG,KAAK;EAEzBC,WAAWA,CAASC,QAA2B,EAAE;IAAA,KAA7BA,QAA2B,GAA3BA,QAA2B;EAAG;EAElDC,IAAI,GAAIC,MAAuB,IAAK;IAChC,IAAI,IAAI,CAACnB,aAAa,EAAE;MACpB;IACJ;IAEA,IAAI,CAACM,OAAO,GAAGa,MAAM;IACrB,IAAI,CAACnB,aAAa,GAAG,IAAI;IACzB,IAAI,CAACoB,UAAU,CAACD,MAAM,CAAClB,MAAM,EAAEkB,MAAM,CAACE,QAAQ,EAAEjB,OAAO,CAAC;IACxD,IAAI,CAACkB,eAAe,CAACH,MAAM,CAACI,WAAW,CAAC;
|
1
|
+
{"version":3,"names":["_NativePlatform","require","_utils","UnistylesState","isInitialized","themes","Map","cssThemes","CSSVars","matchingBreakpoints","_config","breakpoint","currentBreakpoint","Array","from","reverse","find","_key","value","hasAdaptiveThemes","constructor","services","init","config","initThemes","settings","initBreakpoints","breakpoints","initSettings","isServer","themeName","document","querySelector","classList","add","listener","initListeners","Object","entries","forEach","theme","set","registry","css","addTheme","fromEntries","map","key","convertTheme","adaptiveThemes","initialTheme","error","get","schemeToTheme","runtime","colorScheme","size","keys","next","breakpointsEntries","length","sort","a","b","mediaQuery","window","matchMedia","matches","addEventListener","event","emitChange","UnistyleDependency","Breakpoints","getConfig","exports"],"sourceRoot":"../../../src","sources":["web/state.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/web/state.js
CHANGED
@@ -25,9 +25,7 @@ export class UnistylesState {
|
|
25
25
|
this.isInitialized = true;
|
26
26
|
this.initThemes(config.themes, config.settings?.CSSVars);
|
27
27
|
this.initBreakpoints(config.breakpoints);
|
28
|
-
|
29
|
-
this.initSettings(config.settings);
|
30
|
-
}
|
28
|
+
this.initSettings(config.settings);
|
31
29
|
if (isServer()) {
|
32
30
|
return;
|
33
31
|
}
|
@@ -56,19 +54,19 @@ export class UnistylesState {
|
|
56
54
|
};
|
57
55
|
initSettings = settings => {
|
58
56
|
this.hasAdaptiveThemes = settings?.adaptiveThemes ?? false;
|
59
|
-
if (settings
|
57
|
+
if (settings?.initialTheme && settings.adaptiveThemes) {
|
60
58
|
throw error('You\'re trying to set initial theme and enable adaptiveThemes, but these options are mutually exclusive.');
|
61
59
|
}
|
62
60
|
|
63
61
|
// Adaptive themes
|
64
|
-
if (settings
|
62
|
+
if (settings?.adaptiveThemes) {
|
65
63
|
if (!this.themes.get('light') || !this.themes.get('dark')) {
|
66
64
|
throw error(`You're trying to enable adaptiveThemes, but you didn't register both 'light' and 'dark' themes.`);
|
67
65
|
}
|
68
66
|
this.themeName = schemeToTheme(this.services.runtime.colorScheme);
|
69
67
|
return;
|
70
68
|
}
|
71
|
-
if (settings
|
69
|
+
if (settings?.initialTheme) {
|
72
70
|
const initialTheme = typeof settings.initialTheme === 'function' ? settings.initialTheme() : settings.initialTheme;
|
73
71
|
if (!this.themes.get(initialTheme)) {
|
74
72
|
throw error(`You're trying to select theme "${initialTheme}" but it wasn't registered.`);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["UnistyleDependency","convertTheme","error","isServer","schemeToTheme","UnistylesState","isInitialized","themes","Map","cssThemes","CSSVars","matchingBreakpoints","_config","breakpoint","currentBreakpoint","Array","from","reverse","find","_key","value","hasAdaptiveThemes","constructor","services","init","config","initThemes","settings","initBreakpoints","breakpoints","initSettings","themeName","document","querySelector","classList","add","listener","initListeners","Object","entries","forEach","theme","set","registry","css","addTheme","fromEntries","map","key","adaptiveThemes","initialTheme","get","runtime","colorScheme","size","keys","next","breakpointsEntries","length","sort","a","b","mediaQuery","window","matchMedia","matches","addEventListener","event","emitChange","Breakpoints","getConfig"],"sourceRoot":"../../../src","sources":["web/state.ts"],"mappings":";;AACA,SAASA,kBAAkB,QAAQ,yBAAyB;AAM5D,SAASC,YAAY,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,aAAa,QAAQ,SAAS;AAKtE,OAAO,MAAMC,cAAc,CAAC;EACxBC,aAAa,GAAG,KAAK;EACrBC,MAAM,GAAG,IAAIC,GAAG,CAAyB,CAAC;EAC1CC,SAAS,GAAG,IAAID,GAAG,CAAyB,CAAC;EAE7CE,OAAO,GAAG,IAAI;EAENC,mBAAmB,GAAG,IAAIH,GAAG,CAAkB,CAAC;EAChDI,OAAO,GAAoB,CAAC,CAAC;EAErC,IAAIC,UAAUA,CAAA,EAAG;IACb,MAAM,CAACC,iBAAiB,CAAC,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACL,mBAAmB,CAAC,CAC3DM,OAAO,CAAC,CAAC,CACTC,IAAI,CAAC,CAAC,CAACC,IAAI,EAAEC,KAAK,CAAC,KAAKA,KAAK,CAAC,IAAI,EAAE;IAEzC,OAAON,iBAAiB;EAC5B;EAIAO,iBAAiB,GAAG,KAAK;EAEzBC,WAAWA,CAASC,QAA2B,EAAE;IAAA,KAA7BA,QAA2B,GAA3BA,QAA2B;EAAG;EAElDC,IAAI,GAAIC,MAAuB,IAAK;IAChC,IAAI,IAAI,CAACnB,aAAa,EAAE;MACpB;IACJ;IAEA,IAAI,CAACM,OAAO,GAAGa,MAAM;IACrB,IAAI,CAACnB,aAAa,GAAG,IAAI;IACzB,IAAI,CAACoB,UAAU,CAACD,MAAM,CAAClB,MAAM,EAAEkB,MAAM,CAACE,QAAQ,EAAEjB,OAAO,CAAC;IACxD,IAAI,CAACkB,eAAe,CAACH,MAAM,CAACI,WAAW,CAAC;
|
1
|
+
{"version":3,"names":["UnistyleDependency","convertTheme","error","isServer","schemeToTheme","UnistylesState","isInitialized","themes","Map","cssThemes","CSSVars","matchingBreakpoints","_config","breakpoint","currentBreakpoint","Array","from","reverse","find","_key","value","hasAdaptiveThemes","constructor","services","init","config","initThemes","settings","initBreakpoints","breakpoints","initSettings","themeName","document","querySelector","classList","add","listener","initListeners","Object","entries","forEach","theme","set","registry","css","addTheme","fromEntries","map","key","adaptiveThemes","initialTheme","get","runtime","colorScheme","size","keys","next","breakpointsEntries","length","sort","a","b","mediaQuery","window","matchMedia","matches","addEventListener","event","emitChange","Breakpoints","getConfig"],"sourceRoot":"../../../src","sources":["web/state.ts"],"mappings":";;AACA,SAASA,kBAAkB,QAAQ,yBAAyB;AAM5D,SAASC,YAAY,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,aAAa,QAAQ,SAAS;AAKtE,OAAO,MAAMC,cAAc,CAAC;EACxBC,aAAa,GAAG,KAAK;EACrBC,MAAM,GAAG,IAAIC,GAAG,CAAyB,CAAC;EAC1CC,SAAS,GAAG,IAAID,GAAG,CAAyB,CAAC;EAE7CE,OAAO,GAAG,IAAI;EAENC,mBAAmB,GAAG,IAAIH,GAAG,CAAkB,CAAC;EAChDI,OAAO,GAAoB,CAAC,CAAC;EAErC,IAAIC,UAAUA,CAAA,EAAG;IACb,MAAM,CAACC,iBAAiB,CAAC,GAAGC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACL,mBAAmB,CAAC,CAC3DM,OAAO,CAAC,CAAC,CACTC,IAAI,CAAC,CAAC,CAACC,IAAI,EAAEC,KAAK,CAAC,KAAKA,KAAK,CAAC,IAAI,EAAE;IAEzC,OAAON,iBAAiB;EAC5B;EAIAO,iBAAiB,GAAG,KAAK;EAEzBC,WAAWA,CAASC,QAA2B,EAAE;IAAA,KAA7BA,QAA2B,GAA3BA,QAA2B;EAAG;EAElDC,IAAI,GAAIC,MAAuB,IAAK;IAChC,IAAI,IAAI,CAACnB,aAAa,EAAE;MACpB;IACJ;IAEA,IAAI,CAACM,OAAO,GAAGa,MAAM;IACrB,IAAI,CAACnB,aAAa,GAAG,IAAI;IACzB,IAAI,CAACoB,UAAU,CAACD,MAAM,CAAClB,MAAM,EAAEkB,MAAM,CAACE,QAAQ,EAAEjB,OAAO,CAAC;IACxD,IAAI,CAACkB,eAAe,CAACH,MAAM,CAACI,WAAW,CAAC;IACxC,IAAI,CAACC,YAAY,CAACL,MAAM,CAACE,QAAyC,CAAC;IAEnE,IAAIxB,QAAQ,CAAC,CAAC,EAAE;MACZ;IACJ;;IAEA;IACA;IACA,IAAI,CAAC,IAAI,CAACkB,iBAAiB,IAAI,IAAI,CAACX,OAAO,IAAI,IAAI,CAACqB,SAAS,EAAE;MAC3DC,QAAQ,CAACC,aAAa,CAAC,OAAO,CAAC,EAAEC,SAAS,CAACC,GAAG,CAAC,IAAI,CAACJ,SAAS,CAAC;IAClE;IAEA,IAAI,CAACR,QAAQ,CAACa,QAAQ,CAACC,aAAa,CAAC,CAAC;EAC1C,CAAC;EAEOX,UAAU,GAAGA,CAACnB,MAAwB,EAAEG,OAAO,GAAG,IAAI,KAAK;IAC/D,IAAI,CAACH,MAAM,EAAE;MACT;IACJ;IAEA,IAAI,CAACG,OAAO,GAAGA,OAAO;IAEtB4B,MAAM,CAACC,OAAO,CAAChC,MAAM,CAAC,CAACiC,OAAO,CAAC,CAAC,CAACT,SAAS,EAAEU,KAAK,CAAC,KAAK;MACnD,IAAI,CAAClC,MAAM,CAACmC,GAAG,CAACX,SAAS,EAAEU,KAAiB,CAAC;MAE7C,IAAI/B,OAAO,EAAE;QACT,IAAI,CAACa,QAAQ,CAACoB,QAAQ,CAACC,GAAG,CAACC,QAAQ,CAACd,SAAS,EAAEU,KAAK,CAAC;QACrD,IAAI,CAAChC,SAAS,CAACiC,GAAG,CACdX,SAAS,EACTO,MAAM,CAACQ,WAAW,CAACR,MAAM,CAACC,OAAO,CAACE,KAAK,CAAC,CAACM,GAAG,CAAC,CAAC,CAACC,GAAG,EAAE5B,KAAK,CAAC,KAAK;UAC3D,OAAOnB,YAAY,CAAC+C,GAAG,EAAE5B,KAAK,CAAC;QACnC,CAAC,CAAC,CACN,CAAC;MACL;IACJ,CAAC,CAAC;EACN,CAAC;EAEOU,YAAY,GAAIH,QAA4B,IAAK;IACrD,IAAI,CAACN,iBAAiB,GAAGM,QAAQ,EAAEsB,cAAc,IAAI,KAAK;IAE1D,IAAItB,QAAQ,EAAEuB,YAAY,IAAIvB,QAAQ,CAACsB,cAAc,EAAE;MACnD,MAAM/C,KAAK,CAAC,0GAA0G,CAAC;IAC3H;;IAEA;IACA,IAAIyB,QAAQ,EAAEsB,cAAc,EAAE;MAC1B,IAAI,CAAC,IAAI,CAAC1C,MAAM,CAAC4C,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC5C,MAAM,CAAC4C,GAAG,CAAC,MAAM,CAAC,EAAE;QACvD,MAAMjD,KAAK,CAAC,iGAAiG,CAAC;MAClH;MAEA,IAAI,CAAC6B,SAAS,GAAG3B,aAAa,CAAC,IAAI,CAACmB,QAAQ,CAAC6B,OAAO,CAACC,WAAW,CAAiB;MAEjF;IACJ;IAEA,IAAI1B,QAAQ,EAAEuB,YAAY,EAAE;MACxB,MAAMA,YAAY,GAAG,OAAOvB,QAAQ,CAACuB,YAAY,KAAK,UAAU,GAC1DvB,QAAQ,CAACuB,YAAY,CAAC,CAAC,GACvBvB,QAAQ,CAACuB,YAAY;MAE3B,IAAI,CAAC,IAAI,CAAC3C,MAAM,CAAC4C,GAAG,CAACD,YAAY,CAAC,EAAE;QAChC,MAAMhD,KAAK,CAAC,kCAAkCgD,YAAY,6BAA6B,CAAC;MAC5F;MAEA,IAAI,CAACnB,SAAS,GAAGmB,YAAY;MAE7B;IACJ;IAEA,IAAI,IAAI,CAAC3C,MAAM,CAAC+C,IAAI,KAAK,CAAC,EAAE;MACxB,IAAI,CAACvB,SAAS,GAAG,IAAI,CAACxB,MAAM,CAACgD,IAAI,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,CAACpC,KAAuB;IACtE;EACJ,CAAC;EAEOQ,eAAe,GAAIC,WAAkC,IAAK;IAC9D,IAAI,CAACA,WAAW,EAAE;MACd;IACJ;IAEA,IAAI,CAACA,WAAW,GAAGA,WAAW;IAC9B,MAAM4B,kBAAkB,GAAGnB,MAAM,CAACC,OAAO,CAACV,WAAW,CAAC;IAEtD,IAAI4B,kBAAkB,CAACC,MAAM,KAAK,CAAC,EAAE;MACjC,MAAMxD,KAAK,CAAC,sDAAsD,CAAC;IACvE;IAEA,IAAIuD,kBAAkB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE;MACpC,MAAMvD,KAAK,CAAC,6DAA6D,CAAC;IAC9E;IAEAuD,kBAAkB,CACbE,IAAI,CAAC,CAAC,GAAGC,CAAC,CAAC,EAAE,GAAGC,CAAC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC,CAC7BrB,OAAO,CAAC,CAAC,CAAC3B,UAAU,EAAEO,KAAK,CAAC,KAAK;MAC9B,IAAIjB,QAAQ,CAAC,CAAC,EAAE;QACZ;MACJ;MAEA,MAAM2D,UAAU,GAAGC,MAAM,CAACC,UAAU,CAAC,eAAe5C,KAAK,KAAK,CAAC;MAC/D,IAAI,CAACT,mBAAmB,CAAC+B,GAAG,CAAC7B,UAAU,EAAEiD,UAAU,CAACG,OAAO,CAAC;MAE5DH,UAAU,CAACI,gBAAgB,CAAC,QAAQ,EAAEC,KAAK,IAAI;QAC3C,IAAI,CAACxD,mBAAmB,CAAC+B,GAAG,CAAC7B,UAAU,EAAEsD,KAAK,CAACF,OAAO,CAAC;QACvD,IAAI,CAAC1C,QAAQ,CAACa,QAAQ,CAACgC,UAAU,CAACpE,kBAAkB,CAACqE,WAAW,CAAC;MACrE,CAAC,CAAC;IACN,CAAC,CAAC;EACV,CAAC;EAEDC,SAAS,GAAGA,CAAA,KAAM,IAAI,CAAC1D,OAAO;AAClC","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/web/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAmB,MAAM,WAAW,CAAA;AAEtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAY,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAMhD,qBAAa,cAAc;IAsBX,OAAO,CAAC,QAAQ;IArB5B,aAAa,UAAQ;IACrB,MAAM,qBAAoC;IAC1C,SAAS,qBAAoC;IAC7C,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,OAAO,UAAO;IAEd,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,OAAO,CAAsB;IAErC,IAAI,UAAU,IAKkB,aAAa,GAAG,SAAS,CACxD;IAED,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAElC,iBAAiB,UAAQ;gBAEL,QAAQ,EAAE,iBAAiB;IAE/C,IAAI,GAAI,QAAQ,eAAe,
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../src/web/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAmB,MAAM,WAAW,CAAA;AAEtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAY,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAMhD,qBAAa,cAAc;IAsBX,OAAO,CAAC,QAAQ;IArB5B,aAAa,UAAQ;IACrB,MAAM,qBAAoC;IAC1C,SAAS,qBAAoC;IAC7C,SAAS,CAAC,EAAE,YAAY,CAAA;IACxB,OAAO,UAAO;IAEd,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,OAAO,CAAsB;IAErC,IAAI,UAAU,IAKkB,aAAa,GAAG,SAAS,CACxD;IAED,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAElC,iBAAiB,UAAQ;gBAEL,QAAQ,EAAE,iBAAiB;IAE/C,IAAI,GAAI,QAAQ,eAAe,UAsB9B;IAED,OAAO,CAAC,UAAU,CAoBjB;IAED,OAAO,CAAC,YAAY,CAmCnB;IAED,OAAO,CAAC,eAAe,CA+BtB;IAED,SAAS,wBAAqB;CACjC"}
|
@@ -34,7 +34,7 @@ namespace margelo::nitro::unistyles::bridge::swift {
|
|
34
34
|
Unistyles::HybridNativePlatformSpec_cxx swiftPart = Unistyles::HybridNativePlatformSpec_cxx::fromUnsafe(swiftUnsafePointer);
|
35
35
|
return std::make_shared<margelo::nitro::unistyles::HybridNativePlatformSpecSwift>(swiftPart);
|
36
36
|
}
|
37
|
-
void* NON_NULL get_std__shared_ptr_HybridNativePlatformSpec_(std__shared_ptr_HybridNativePlatformSpec_ cppType)
|
37
|
+
void* NON_NULL get_std__shared_ptr_HybridNativePlatformSpec_(std__shared_ptr_HybridNativePlatformSpec_ cppType) {
|
38
38
|
std::shared_ptr<margelo::nitro::unistyles::HybridNativePlatformSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::unistyles::HybridNativePlatformSpecSwift>(cppType);
|
39
39
|
#ifdef NITRO_DEBUG
|
40
40
|
if (swiftWrapper == nullptr) [[unlikely]] {
|
@@ -111,7 +111,7 @@ namespace margelo::nitro::unistyles::bridge::swift {
|
|
111
111
|
*/
|
112
112
|
using std__shared_ptr_HybridNativePlatformSpec_ = std::shared_ptr<HybridNativePlatformSpec>;
|
113
113
|
std::shared_ptr<HybridNativePlatformSpec> create_std__shared_ptr_HybridNativePlatformSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
|
114
|
-
void* NON_NULL get_std__shared_ptr_HybridNativePlatformSpec_(std__shared_ptr_HybridNativePlatformSpec_ cppType)
|
114
|
+
void* NON_NULL get_std__shared_ptr_HybridNativePlatformSpec_(std__shared_ptr_HybridNativePlatformSpec_ cppType);
|
115
115
|
|
116
116
|
// pragma MARK: std::weak_ptr<HybridNativePlatformSpec>
|
117
117
|
using std__weak_ptr_HybridNativePlatformSpec_ = std::weak_ptr<HybridNativePlatformSpec>;
|
@@ -17,6 +17,11 @@
|
|
17
17
|
#else
|
18
18
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
19
19
|
#endif
|
20
|
+
#if __has_include(<NitroModules/JSIHelpers.hpp>)
|
21
|
+
#include <NitroModules/JSIHelpers.hpp>
|
22
|
+
#else
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
24
|
+
#endif
|
20
25
|
|
21
26
|
|
22
27
|
|
@@ -62,6 +67,9 @@ namespace margelo::nitro {
|
|
62
67
|
return false;
|
63
68
|
}
|
64
69
|
jsi::Object obj = value.getObject(runtime);
|
70
|
+
if (!nitro::isPlainObject(runtime, obj)) {
|
71
|
+
return false;
|
72
|
+
}
|
65
73
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "width"))) return false;
|
66
74
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "height"))) return false;
|
67
75
|
return true;
|
@@ -17,6 +17,11 @@
|
|
17
17
|
#else
|
18
18
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
19
19
|
#endif
|
20
|
+
#if __has_include(<NitroModules/JSIHelpers.hpp>)
|
21
|
+
#include <NitroModules/JSIHelpers.hpp>
|
22
|
+
#else
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
24
|
+
#endif
|
20
25
|
|
21
26
|
|
22
27
|
|
@@ -71,6 +76,9 @@ namespace margelo::nitro {
|
|
71
76
|
return false;
|
72
77
|
}
|
73
78
|
jsi::Object obj = value.getObject(runtime);
|
79
|
+
if (!nitro::isPlainObject(runtime, obj)) {
|
80
|
+
return false;
|
81
|
+
}
|
74
82
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "top"))) return false;
|
75
83
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "bottom"))) return false;
|
76
84
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "left"))) return false;
|
@@ -17,6 +17,11 @@
|
|
17
17
|
#else
|
18
18
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
19
19
|
#endif
|
20
|
+
#if __has_include(<NitroModules/JSIHelpers.hpp>)
|
21
|
+
#include <NitroModules/JSIHelpers.hpp>
|
22
|
+
#else
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
24
|
+
#endif
|
20
25
|
|
21
26
|
// Forward declaration of `ColorScheme` to properly resolve imports.
|
22
27
|
namespace margelo::nitro::unistyles { enum class ColorScheme; }
|
@@ -107,6 +112,9 @@ namespace margelo::nitro {
|
|
107
112
|
return false;
|
108
113
|
}
|
109
114
|
jsi::Object obj = value.getObject(runtime);
|
115
|
+
if (!nitro::isPlainObject(runtime, obj)) {
|
116
|
+
return false;
|
117
|
+
}
|
110
118
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "themeName"))) return false;
|
111
119
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "breakpoint"))) return false;
|
112
120
|
if (!JSIConverter<bool>::canConvert(runtime, obj.getProperty(runtime, "hasAdaptiveThemes"))) return false;
|
@@ -17,6 +17,11 @@
|
|
17
17
|
#else
|
18
18
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
19
19
|
#endif
|
20
|
+
#if __has_include(<NitroModules/JSIHelpers.hpp>)
|
21
|
+
#include <NitroModules/JSIHelpers.hpp>
|
22
|
+
#else
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
24
|
+
#endif
|
20
25
|
|
21
26
|
// Forward declaration of `ColorScheme` to properly resolve imports.
|
22
27
|
namespace margelo::nitro::unistyles { enum class ColorScheme; }
|
@@ -97,6 +102,9 @@ namespace margelo::nitro {
|
|
97
102
|
return false;
|
98
103
|
}
|
99
104
|
jsi::Object obj = value.getObject(runtime);
|
105
|
+
if (!nitro::isPlainObject(runtime, obj)) {
|
106
|
+
return false;
|
107
|
+
}
|
100
108
|
if (!JSIConverter<margelo::nitro::unistyles::ColorScheme>::canConvert(runtime, obj.getProperty(runtime, "colorScheme"))) return false;
|
101
109
|
if (!JSIConverter<margelo::nitro::unistyles::Dimensions>::canConvert(runtime, obj.getProperty(runtime, "screen"))) return false;
|
102
110
|
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "contentSizeCategory"))) return false;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "react-native-unistyles",
|
3
|
-
"version": "3.0.
|
3
|
+
"version": "3.0.15",
|
4
4
|
"description": "Level up your React Native StyleSheet",
|
5
5
|
"scripts": {
|
6
6
|
"test": "NODE_ENV=babel-test jest ./plugin",
|
@@ -148,11 +148,11 @@
|
|
148
148
|
"husky": "9.1.7",
|
149
149
|
"jest": "29.7.0",
|
150
150
|
"metro-react-native-babel-preset": "0.77.0",
|
151
|
-
"nitrogen": "0.
|
151
|
+
"nitrogen": "0.30.0",
|
152
152
|
"react": "19.1.0",
|
153
153
|
"react-native": "0.79.2",
|
154
154
|
"react-native-builder-bob": "0.40.10",
|
155
|
-
"react-native-nitro-modules": "0.
|
155
|
+
"react-native-nitro-modules": "0.30.0",
|
156
156
|
"react-native-reanimated": "3.17.5",
|
157
157
|
"react-native-web": "0.20.0",
|
158
158
|
"react-test-renderer": "19.1.0",
|
package/src/web/state.ts
CHANGED
@@ -43,10 +43,7 @@ export class UnistylesState {
|
|
43
43
|
this.isInitialized = true
|
44
44
|
this.initThemes(config.themes, config.settings?.CSSVars)
|
45
45
|
this.initBreakpoints(config.breakpoints)
|
46
|
-
|
47
|
-
if (config.settings) {
|
48
|
-
this.initSettings(config.settings as UnistylesSettings)
|
49
|
-
}
|
46
|
+
this.initSettings(config.settings as UnistylesSettings | undefined)
|
50
47
|
|
51
48
|
if (isServer()) {
|
52
49
|
return
|
@@ -83,15 +80,15 @@ export class UnistylesState {
|
|
83
80
|
})
|
84
81
|
}
|
85
82
|
|
86
|
-
private initSettings = (settings
|
83
|
+
private initSettings = (settings?: UnistylesSettings) => {
|
87
84
|
this.hasAdaptiveThemes = settings?.adaptiveThemes ?? false
|
88
85
|
|
89
|
-
if (settings
|
86
|
+
if (settings?.initialTheme && settings.adaptiveThemes) {
|
90
87
|
throw error('You\'re trying to set initial theme and enable adaptiveThemes, but these options are mutually exclusive.')
|
91
88
|
}
|
92
89
|
|
93
90
|
// Adaptive themes
|
94
|
-
if (settings
|
91
|
+
if (settings?.adaptiveThemes) {
|
95
92
|
if (!this.themes.get('light') || !this.themes.get('dark')) {
|
96
93
|
throw error(`You're trying to enable adaptiveThemes, but you didn't register both 'light' and 'dark' themes.`)
|
97
94
|
}
|
@@ -101,7 +98,7 @@ export class UnistylesState {
|
|
101
98
|
return
|
102
99
|
}
|
103
100
|
|
104
|
-
if (settings
|
101
|
+
if (settings?.initialTheme) {
|
105
102
|
const initialTheme = typeof settings.initialTheme === 'function'
|
106
103
|
? settings.initialTheme()
|
107
104
|
: settings.initialTheme
|