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 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.29.8
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.29.8 |
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
 
@@ -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
  }
@@ -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(jsi::valueFromDynamic(rt, arg));
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(jsi::valueFromDynamic(rt, arg));
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(jsi::valueFromDynamic(rt, arg));
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
- if (config.settings) {
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.initialTheme && settings.adaptiveThemes) {
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.adaptiveThemes) {
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.initialTheme) {
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":"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","ignoreList":[]}
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":[]}
@@ -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
- if (config.settings) {
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.initialTheme && settings.adaptiveThemes) {
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.adaptiveThemes) {
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.initialTheme) {
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":"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","ignoreList":[]}
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":"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","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,UAyB9B;IAED,OAAO,CAAC,UAAU,CAoBjB;IAED,OAAO,CAAC,YAAY,CAmCnB;IAED,OAAO,CAAC,eAAe,CA+BtB;IAED,SAAS,wBAAqB;CACjC"}
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) noexcept {
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) noexcept;
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.14",
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.29.8",
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.29.8",
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: UnistylesSettings) => {
83
+ private initSettings = (settings?: UnistylesSettings) => {
87
84
  this.hasAdaptiveThemes = settings?.adaptiveThemes ?? false
88
85
 
89
- if (settings.initialTheme && settings.adaptiveThemes) {
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.adaptiveThemes) {
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.initialTheme) {
101
+ if (settings?.initialTheme) {
105
102
  const initialTheme = typeof settings.initialTheme === 'function'
106
103
  ? settings.initialTheme()
107
104
  : settings.initialTheme