react-native-bootsplash 4.5.3 → 4.7.0

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.
Files changed (34) hide show
  1. package/README.md +23 -17
  2. package/RNBootSplash.podspec +11 -5
  3. package/{RNBootsplash.res → RNBootSplash.res} +2 -2
  4. package/android/build.gradle +29 -23
  5. package/android/src/main/java/com/zoontek/rnbootsplash/RNBootSplash.java +1 -1
  6. package/android/src/main/java/com/zoontek/rnbootsplash/{RNBootSplashModule.java → RNBootSplashModuleImpl.java} +10 -23
  7. package/android/src/main/java/com/zoontek/rnbootsplash/RNBootSplashPackage.java +32 -13
  8. package/android/src/newarch/com/zoontek/rnbootsplash/RNBootSplashModule.java +31 -0
  9. package/android/src/oldarch/com/zoontek/rnbootsplash/RNBootSplashModule.java +33 -0
  10. package/dist/commonjs/NativeRNBootSplash.js +10 -0
  11. package/dist/commonjs/NativeRNBootSplash.js.map +1 -0
  12. package/dist/commonjs/generate.js +15 -10
  13. package/dist/commonjs/generate.js.map +1 -1
  14. package/dist/commonjs/index.js +4 -4
  15. package/dist/commonjs/index.js.map +1 -1
  16. package/dist/module/NativeRNBootSplash.js +3 -0
  17. package/dist/module/NativeRNBootSplash.js.map +1 -0
  18. package/dist/module/generate.js +15 -10
  19. package/dist/module/generate.js.map +1 -1
  20. package/dist/module/index.js +1 -2
  21. package/dist/module/index.js.map +1 -1
  22. package/dist/typescript/NativeRNBootSplash.d.ts +9 -0
  23. package/dist/typescript/NativeRNBootSplash.d.ts.map +1 -0
  24. package/dist/typescript/generate.d.ts.map +1 -1
  25. package/dist/typescript/index.d.ts +2 -1
  26. package/dist/typescript/index.d.ts.map +1 -1
  27. package/ios/RNBootSplash.h +9 -2
  28. package/ios/{RNBootSplash.m → RNBootSplash.mm} +80 -46
  29. package/ios/RNBootSplash.xcodeproj/xcshareddata/xcschemes/RNBootSplash.xcscheme +1 -1
  30. package/package.json +20 -11
  31. package/react-native.config.js +20 -12
  32. package/src/NativeRNBootSplash.ts +11 -0
  33. package/src/generate.ts +18 -14
  34. package/src/index.ts +2 -7
package/README.md CHANGED
@@ -81,7 +81,7 @@ dependencies {
81
81
  3. Add the import and link the package in `MainApplication.java`:
82
82
 
83
83
  ```java
84
- import com.zoontek.rnbootsplash.RNBootSplashPackage; // <- add the RNBootSplashPackage import
84
+ import com.zoontek.rnbootsplash.RNBootSplashPackage; // ⬅️ add the RNBootSplashPackage import
85
85
 
86
86
  public class MainApplication extends Application implements ReactApplication {
87
87
 
@@ -104,8 +104,6 @@ public class MainApplication extends Application implements ReactApplication {
104
104
 
105
105
  ## Setup
106
106
 
107
- ℹ️ For `react-native` < `0.71` setup, follow the [`v4.4.0 README.md`](https://github.com/zoontek/react-native-bootsplash/blob/4.4.0/README.md).
108
-
109
107
  ### Assets generation
110
108
 
111
109
  In order to speed up the setup, we provide a **CLI** to generate assets, create the Android Drawable XML file and the iOS Storyboard file automatically ✨.
@@ -128,6 +126,7 @@ Options:
128
126
  --logo-width <width> logo width at @1x (in dp - we recommend approximately ~100) (default: 100)
129
127
  --assets-path [path] path to your static assets directory (useful to require the logo file in JS)
130
128
  --flavor <flavor> [android only] flavor build variant (outputs in an android resource directory other than "main")
129
+ --platforms <platforms> platforms to generate assets for (comma separated) (default: "android,ios")
131
130
  -h, --help output usage information
132
131
  ```
133
132
 
@@ -138,7 +137,8 @@ yarn react-native generate-bootsplash assets/bootsplash_logo_original.png \
138
137
  --background-color=F5FCFF \
139
138
  --logo-width=100 \
140
139
  --assets-path=assets \
141
- --flavor=main
140
+ --flavor=main \
141
+ --platforms=android,ios
142
142
  ```
143
143
 
144
144
  ![](https://raw.githubusercontent.com/zoontek/react-native-bootsplash/master/docs/cli_tool.png?raw=true)
@@ -168,7 +168,7 @@ ios/YourProjectName/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo@3x.p
168
168
 
169
169
  ### iOS
170
170
 
171
- _⚠️  Only `.storyboard` files are supported ([Apple has deprecated other methods in April 2020](https://developer.apple.com/news/?id=01132020b))._
171
+ _ℹ️ For `react-native` < `0.71` setup, follow the [`v4.4.0 README.md`](https://github.com/zoontek/react-native-bootsplash/blob/4.4.0/README.md)._
172
172
 
173
173
  ---
174
174
 
@@ -176,22 +176,28 @@ Edit the `ios/YourProjectName/AppDelegate.mm` file:
176
176
 
177
177
  ```obj-c
178
178
  #import "AppDelegate.h"
179
- #import "RNBootSplash.h" // <- add the header import
179
+ #import "RNBootSplash.h" // ⬅️ add the header import
180
180
 
181
181
  // …
182
182
 
183
183
  @implementation AppDelegate
184
184
 
185
- - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
186
- {
187
- self.moduleName = @"RNBootSplashExample";
188
- self.initialProps = @{};
189
- [super application:application didFinishLaunchingWithOptions:launchOptions];
185
+ //
190
186
 
191
- [RNBootSplash initWithStoryboard:@"BootSplash" rootView:self.window.rootViewController.view]; // <- initialization using the storyboard file name
187
+ // ⬇️ Add this before file @end
188
+ - (UIView *)createRootViewWithBridge:(RCTBridge *)bridge
189
+ moduleName:(NSString *)moduleName
190
+ initProps:(NSDictionary *)initProps {
191
+ UIView *rootView = [super createRootViewWithBridge:bridge
192
+ moduleName:moduleName
193
+ initProps:initProps];
192
194
 
193
- return YES;
195
+ [RNBootSplash initWithStoryboard:@"BootSplash" rootView:rootView]; // ⬅️ initialize the splash screen
196
+
197
+ return rootView;
194
198
  }
199
+
200
+ @end
195
201
  ```
196
202
 
197
203
  Set the `BootSplash.storyboard` as launch screen file:
@@ -213,7 +219,7 @@ dependencies {
213
219
  // …
214
220
 
215
221
  implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0")
216
- implementation("androidx.core:core-splashscreen:1.0.0") // Add this line
222
+ implementation("androidx.core:core-splashscreen:1.0.0") // add this line
217
223
 
218
224
  // …
219
225
  ```
@@ -265,7 +271,7 @@ _⚠️  Don't forget going into the `android` directory to execute a `./gradl
265
271
  ```java
266
272
  // …
267
273
 
268
- // Add these required imports:
274
+ // add these required imports:
269
275
  import android.os.Bundle;
270
276
  import com.zoontek.rnbootsplash.RNBootSplash;
271
277
 
@@ -275,7 +281,7 @@ public class MainActivity extends ReactActivity {
275
281
 
276
282
  @Override
277
283
  protected void onCreate(Bundle savedInstanceState) {
278
- RNBootSplash.init(this); // <- initialize the splash screen
284
+ RNBootSplash.init(this); // ⬅️ initialize the splash screen
279
285
  super.onCreate(savedInstanceState); // or super.onCreate(null) with react-native-screens
280
286
  }
281
287
  }
@@ -335,7 +341,7 @@ function App() {
335
341
 
336
342
  init().finally(async () => {
337
343
  await RNBootSplash.hide({ fade: true, duration: 500 });
338
- console.log("Bootsplash has been hidden successfully");
344
+ console.log("BootSplash has been hidden successfully");
339
345
  });
340
346
  }, []);
341
347
 
@@ -1,19 +1,25 @@
1
- require 'json'
2
- package = JSON.parse(File.read('./package.json'))
1
+ require "json"
2
+
3
+ package = JSON.parse(File.read(File.join(__dir__, "package.json")))
3
4
 
4
5
  Pod::Spec.new do |s|
5
6
  s.name = "RNBootSplash"
6
- s.dependency "React-Core"
7
7
 
8
8
  s.version = package["version"]
9
9
  s.license = package["license"]
10
10
  s.summary = package["description"]
11
- s.authors = package["author"]
11
+ s.author = package["author"]
12
12
  s.homepage = package["homepage"]
13
13
 
14
14
  s.platforms = { :ios => "11.0", :tvos => "11.0" }
15
15
  s.requires_arc = true
16
16
 
17
17
  s.source = { :git => package["repository"]["url"], :tag => s.version }
18
- s.source_files = "ios/*.{h,m}"
18
+ s.source_files = "ios/**/*.{h,m,mm}"
19
+
20
+ if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
21
+ install_modules_dependencies(s)
22
+ else
23
+ s.dependency "React-Core"
24
+ end
19
25
  end
@@ -12,13 +12,13 @@ external getVisibilityStatus: unit => Js.Promise.t<visibilityStatus> = "getVisib
12
12
  ## Usage
13
13
 
14
14
  ```rescript
15
- RNBootsplash.hide({fade: true})->ignore
15
+ RNBootSplash.hide({fade: true})->ignore
16
16
  ```
17
17
 
18
18
  Or
19
19
 
20
20
  ```rescript
21
- RNBootsplash.hide({fade: true})->Js.Promise.then_(() => {
21
+ RNBootSplash.hide({fade: true})->Js.Promise.then_(() => {
22
22
  Js.log("RN BootSplash: fading is over")
23
23
  Js.Promise.resolve()
24
24
  }, _)->Js.Promise.catch(error => {
@@ -1,49 +1,55 @@
1
- def safeExtGet(prop, fallback) {
2
- rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
3
- }
4
-
5
1
  buildscript {
6
- // The Android Gradle plugin is only required when opening the android folder stand-alone.
7
- // This avoids unnecessary downloads and potential conflicts when the library is included as a
8
- // module dependency in an application project.
9
- if (project == rootProject) {
10
- repositories {
11
- google()
12
- mavenCentral()
13
- }
14
- dependencies {
15
- classpath("com.android.tools.build:gradle:7.3.1")
16
- }
2
+ ext.safeExtGet = {prop, fallback ->
3
+ rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
17
4
  }
5
+ repositories {
6
+ google()
7
+ gradlePluginPortal()
8
+ }
9
+ dependencies {
10
+ classpath("com.android.tools.build:gradle:7.3.1")
11
+ }
12
+ }
13
+
14
+ def isNewArchitectureEnabled() {
15
+ return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true"
18
16
  }
19
17
 
20
18
  apply plugin: "com.android.library"
21
19
 
20
+ if (isNewArchitectureEnabled()) {
21
+ apply plugin: "com.facebook.react"
22
+ }
23
+
22
24
  android {
23
25
  compileSdkVersion safeExtGet("compileSdkVersion", 33)
24
26
  buildToolsVersion safeExtGet("buildToolsVersion", "33.0.0")
25
27
  defaultConfig {
26
- minSdkVersion safeExtGet("minSdkVersion", 23)
28
+ buildConfigField("boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString())
29
+ minSdkVersion safeExtGet("minSdkVersion", 21)
27
30
  targetSdkVersion safeExtGet("targetSdkVersion", 33)
28
31
  }
29
32
  lintOptions {
30
33
  abortOnError false
31
34
  }
35
+ sourceSets {
36
+ main {
37
+ if (isNewArchitectureEnabled()) {
38
+ java.srcDirs += ["src/newarch"]
39
+ } else {
40
+ java.srcDirs += ["src/oldarch"]
41
+ }
42
+ }
43
+ }
32
44
  }
33
45
 
34
46
  repositories {
35
- mavenCentral()
36
- mavenLocal()
37
47
  maven {
38
48
  // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
39
49
  url("$rootDir/../node_modules/react-native/android")
40
50
  }
41
- maven {
42
- // Android JSC is installed from npm
43
- url("$rootDir/../node_modules/jsc-android/dist")
44
- }
51
+ mavenCentral()
45
52
  google()
46
- maven { url "https://www.jitpack.io" }
47
53
  }
48
54
 
49
55
  dependencies {
@@ -7,6 +7,6 @@ import androidx.annotation.NonNull;
7
7
  public class RNBootSplash {
8
8
 
9
9
  public static void init(@NonNull final Activity activity) {
10
- RNBootSplashModule.init(activity);
10
+ RNBootSplashModuleImpl.init(activity);
11
11
  }
12
12
  }
@@ -16,17 +16,13 @@ import androidx.core.splashscreen.SplashScreenViewProvider;
16
16
  import com.facebook.common.logging.FLog;
17
17
  import com.facebook.react.bridge.Promise;
18
18
  import com.facebook.react.bridge.ReactApplicationContext;
19
- import com.facebook.react.bridge.ReactContextBaseJavaModule;
20
- import com.facebook.react.bridge.ReactMethod;
21
19
  import com.facebook.react.bridge.UiThreadUtil;
22
20
  import com.facebook.react.common.ReactConstants;
23
- import com.facebook.react.module.annotations.ReactModule;
24
21
 
25
22
  import java.util.Timer;
26
23
  import java.util.TimerTask;
27
24
 
28
- @ReactModule(name = RNBootSplashModule.NAME)
29
- public class RNBootSplashModule extends ReactContextBaseJavaModule {
25
+ public class RNBootSplashModuleImpl {
30
26
 
31
27
  public static final String NAME = "RNBootSplash";
32
28
 
@@ -44,15 +40,6 @@ public class RNBootSplashModule extends ReactContextBaseJavaModule {
44
40
  private static int mFadeDuration = 0;
45
41
  private static boolean mShouldKeepOnScreen = true;
46
42
 
47
- public RNBootSplashModule(ReactApplicationContext reactContext) {
48
- super(reactContext);
49
- }
50
-
51
- @Override
52
- public String getName() {
53
- return NAME;
54
- }
55
-
56
43
  protected static void init(@Nullable final Activity activity) {
57
44
  if (activity == null) {
58
45
  FLog.w(
@@ -100,7 +87,7 @@ public class RNBootSplashModule extends ReactContextBaseJavaModule {
100
87
  });
101
88
  }
102
89
 
103
- private void clearPromiseQueue() {
90
+ private static void clearPromiseQueue() {
104
91
  while (!mPromiseQueue.isEmpty()) {
105
92
  Promise promise = mPromiseQueue.shift();
106
93
 
@@ -109,7 +96,7 @@ public class RNBootSplashModule extends ReactContextBaseJavaModule {
109
96
  }
110
97
  }
111
98
 
112
- private void hideAndResolveAll() {
99
+ private static void hideAndResolveAll(final ReactApplicationContext reactContext) {
113
100
  if (mSplashScreen == null || mStatus == Status.HIDDEN) {
114
101
  clearPromiseQueue();
115
102
  return;
@@ -118,7 +105,7 @@ public class RNBootSplashModule extends ReactContextBaseJavaModule {
118
105
  UiThreadUtil.runOnUiThread(new Runnable() {
119
106
  @Override
120
107
  public void run() {
121
- final Activity activity = getReactApplicationContext().getCurrentActivity();
108
+ final Activity activity = reactContext.getCurrentActivity();
122
109
 
123
110
  if (activity == null || activity.isFinishing()) {
124
111
  // Wait for activity to be ready
@@ -127,7 +114,7 @@ public class RNBootSplashModule extends ReactContextBaseJavaModule {
127
114
  timer.schedule(new TimerTask() {
128
115
  @Override
129
116
  public void run() {
130
- hideAndResolveAll();
117
+ hideAndResolveAll(reactContext);
131
118
  timer.cancel();
132
119
  }
133
120
  }, 250);
@@ -155,15 +142,15 @@ public class RNBootSplashModule extends ReactContextBaseJavaModule {
155
142
  });
156
143
  }
157
144
 
158
- @ReactMethod
159
- public void hide(final double duration, final Promise promise) {
145
+ public static void hide(final ReactApplicationContext reactContext,
146
+ final double duration,
147
+ final Promise promise) {
160
148
  mFadeDuration = (int) Math.round(duration);
161
149
  mPromiseQueue.push(promise);
162
- hideAndResolveAll();
150
+ hideAndResolveAll(reactContext);
163
151
  }
164
152
 
165
- @ReactMethod
166
- public void getVisibilityStatus(final Promise promise) {
153
+ public static void getVisibilityStatus(final Promise promise) {
167
154
  switch (mStatus) {
168
155
  case VISIBLE:
169
156
  promise.resolve("visible");
@@ -1,27 +1,46 @@
1
1
  package com.zoontek.rnbootsplash;
2
2
 
3
- import androidx.annotation.NonNull;
3
+ import androidx.annotation.Nullable;
4
4
 
5
- import com.facebook.react.ReactPackage;
5
+ import com.facebook.react.TurboReactPackage;
6
6
  import com.facebook.react.bridge.NativeModule;
7
7
  import com.facebook.react.bridge.ReactApplicationContext;
8
- import com.facebook.react.uimanager.ViewManager;
8
+ import com.facebook.react.module.model.ReactModuleInfo;
9
+ import com.facebook.react.module.model.ReactModuleInfoProvider;
9
10
 
10
- import java.util.Arrays;
11
- import java.util.Collections;
12
- import java.util.List;
11
+ import java.util.HashMap;
12
+ import java.util.Map;
13
13
 
14
- public class RNBootSplashPackage implements ReactPackage {
14
+ public class RNBootSplashPackage extends TurboReactPackage {
15
15
 
16
- @NonNull
16
+ @Nullable
17
17
  @Override
18
- public List<NativeModule> createNativeModules(@NonNull ReactApplicationContext reactContext) {
19
- return Arrays.<NativeModule>asList(new RNBootSplashModule(reactContext));
18
+ public NativeModule getModule(String name, ReactApplicationContext reactContext) {
19
+ if (name.equals(RNBootSplashModuleImpl.NAME)) {
20
+ return new RNBootSplashModule(reactContext);
21
+ } else {
22
+ return null;
23
+ }
20
24
  }
21
25
 
22
- @NonNull
23
26
  @Override
24
- public List<ViewManager> createViewManagers(@NonNull ReactApplicationContext reactContext) {
25
- return Collections.emptyList();
27
+ public ReactModuleInfoProvider getReactModuleInfoProvider() {
28
+ return () -> {
29
+ final Map<String, ReactModuleInfo> moduleInfos = new HashMap<>();
30
+ boolean isTurboModule = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
31
+
32
+ ReactModuleInfo moduleInfo = new ReactModuleInfo(
33
+ RNBootSplashModuleImpl.NAME,
34
+ RNBootSplashModuleImpl.NAME,
35
+ false,
36
+ false,
37
+ true,
38
+ false,
39
+ isTurboModule
40
+ );
41
+
42
+ moduleInfos.put(RNBootSplashModuleImpl.NAME, moduleInfo);
43
+ return moduleInfos;
44
+ };
26
45
  }
27
46
  }
@@ -0,0 +1,31 @@
1
+ package com.zoontek.rnbootsplash;
2
+
3
+ import androidx.annotation.NonNull;
4
+
5
+ import com.facebook.react.bridge.Promise;
6
+ import com.facebook.react.bridge.ReactApplicationContext;
7
+ import com.facebook.react.module.annotations.ReactModule;
8
+
9
+ @ReactModule(name = RNBootSplashModuleImpl.NAME)
10
+ public class RNBootSplashModule extends NativeRNBootSplashSpec {
11
+
12
+ public RNBootSplashModule(ReactApplicationContext reactContext) {
13
+ super(reactContext);
14
+ }
15
+
16
+ @Override
17
+ @NonNull
18
+ public String getName() {
19
+ return RNBootSplashModuleImpl.NAME;
20
+ }
21
+
22
+ @Override
23
+ public void hide(double duration, Promise promise) {
24
+ RNBootSplashModuleImpl.hide(getReactApplicationContext(), duration, promise);
25
+ }
26
+
27
+ @Override
28
+ public void getVisibilityStatus(Promise promise) {
29
+ RNBootSplashModuleImpl.getVisibilityStatus(promise);
30
+ }
31
+ }
@@ -0,0 +1,33 @@
1
+ package com.zoontek.rnbootsplash;
2
+
3
+ import androidx.annotation.NonNull;
4
+
5
+ import com.facebook.react.bridge.Promise;
6
+ import com.facebook.react.bridge.ReactApplicationContext;
7
+ import com.facebook.react.bridge.ReactContextBaseJavaModule;
8
+ import com.facebook.react.bridge.ReactMethod;
9
+ import com.facebook.react.module.annotations.ReactModule;
10
+
11
+ @ReactModule(name = RNBootSplashModuleImpl.NAME)
12
+ public class RNBootSplashModule extends ReactContextBaseJavaModule {
13
+
14
+ public RNBootSplashModule(ReactApplicationContext reactContext) {
15
+ super(reactContext);
16
+ }
17
+
18
+ @NonNull
19
+ @Override
20
+ public String getName() {
21
+ return RNBootSplashModuleImpl.NAME;
22
+ }
23
+
24
+ @ReactMethod
25
+ public void hide(final double duration, final Promise promise) {
26
+ RNBootSplashModuleImpl.hide(getReactApplicationContext(), duration, promise);
27
+ }
28
+
29
+ @ReactMethod
30
+ public void getVisibilityStatus(final Promise promise) {
31
+ RNBootSplashModuleImpl.getVisibilityStatus(promise);
32
+ }
33
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _default = _reactNative.TurboModuleRegistry.getEnforcing("RNBootSplash");
9
+ exports.default = _default;
10
+ //# sourceMappingURL=NativeRNBootSplash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_default","TurboModuleRegistry","getEnforcing","exports","default"],"sourceRoot":"../../src","sources":["NativeRNBootSplash.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GASpCC,gCAAmB,CAACC,YAAY,CAAO,cAAc,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAJ,QAAA"}
@@ -43,9 +43,9 @@ const getStoryboard = _ref => {
43
43
  width,
44
44
  backgroundColor: hex
45
45
  } = _ref;
46
- const r = (parseInt(hex[1] + hex[2], 16) / 255).toPrecision(15);
47
- const g = (parseInt(hex[3] + hex[4], 16) / 255).toPrecision(15);
48
- const b = (parseInt(hex[5] + hex[6], 16) / 255).toPrecision(15);
46
+ const r = (parseInt("" + hex[1] + hex[2], 16) / 255).toPrecision(15);
47
+ const g = (parseInt("" + hex[3] + hex[4], 16) / 255).toPrecision(15);
48
+ const b = (parseInt("" + hex[5] + hex[6], 16) / 255).toPrecision(15);
49
49
  return `<?xml version="1.0" encoding="UTF-8"?>
50
50
  <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
51
51
  <device id="retina4_7" orientation="portrait" appearance="light"/>
@@ -98,11 +98,16 @@ const log = {
98
98
  text: text => console.log(text),
99
99
  warn: text => console.log(_picocolors.default.yellow(text))
100
100
  };
101
- const isValidHexadecimal = value => /^#?([0-9A-F]{3}){1,2}$/i.test(value);
102
101
  const toFullHexadecimal = hex => {
103
- const prefixed = hex[0] === "#" ? hex : `#${hex}`;
104
- const up = prefixed.toUpperCase();
105
- return up.length === 4 ? "#" + up[1] + up[1] + up[2] + up[2] + up[3] + up[3] : up;
102
+ const up = hex.toUpperCase().replace(/[^0-9A-F]/g, "");
103
+ if (up.length === 6) {
104
+ return "#" + up;
105
+ }
106
+ if (up.length === 3) {
107
+ return "#" + up[0] + up[0] + up[1] + up[1] + up[2] + up[2];
108
+ }
109
+ log.error("--background-color value is not a valid hexadecimal color.");
110
+ process.exit(1);
106
111
  };
107
112
  const generate = async _ref2 => {
108
113
  let {
@@ -115,12 +120,12 @@ const generate = async _ref2 => {
115
120
  flavor,
116
121
  assetsPath
117
122
  } = _ref2;
118
- if (!isValidHexadecimal(backgroundColor)) {
119
- log.error("--background-color value is not a valid hexadecimal color.");
123
+ if (!android && !ios) {
124
+ log.error("--platforms value does not include at least one supported platform.");
120
125
  process.exit(1);
121
126
  }
122
- const image = (0, _sharp.default)(logoPath);
123
127
  const backgroundColorHex = toFullHexadecimal(backgroundColor);
128
+ const image = (0, _sharp.default)(logoPath);
124
129
  const {
125
130
  format
126
131
  } = await image.metadata();
@@ -1 +1 @@
1
- {"version":3,"names":["_fsExtra","_interopRequireDefault","require","_path","_picocolors","_sharp","obj","__esModule","default","logoFileName","xcassetName","androidColorName","androidColorRegex","ContentsJson","getStoryboard","_ref","height","width","backgroundColor","hex","r","parseInt","toPrecision","g","b","log","error","text","console","pc","red","warn","yellow","isValidHexadecimal","value","test","toFullHexadecimal","prefixed","up","toUpperCase","length","generate","_ref2","android","ios","workingPath","logoPath","logoWidth","flavor","assetsPath","process","exit","image","sharp","backgroundColorHex","format","metadata","logoHeight","clone","resize","toBuffer","then","buffer","_ref3","shouldSkipAndroid","logAbove288","dimension","message","logAbove192","logWrite","emoji","filePath","dimensions","path","relative","fs","existsSync","underline","Promise","all","ratio","suffix","map","_ref4","fileName","resolve","png","quality","toFile","_ref5","appPath","appName","sourceDir","resPath","valuesPath","ensureDirSync","colorsXmlPath","colorsXmlEntry","colorsXml","readFileSync","match","writeFileSync","replace","directory","_ref6","canvasSize","canvas","create","channels","background","alpha","input","composite","projectPath","imagesPath","storyboardPath","imageSetPath","_ref7","_ref8","blue","bold","exports"],"sourceRoot":"../../src","sources":["generate.ts"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAE1B,MAAMG,YAAY,GAAG,iBAAiB;AACtC,MAAMC,WAAW,GAAG,gBAAgB;AACpC,MAAMC,gBAAgB,GAAG,uBAAuB;AAChD,MAAMC,iBAAiB,GAAG,oDAAoD;AAE9E,MAAMC,YAAY,GAAI;AACtB;AACA;AACA;AACA,qBAAqBJ,YAAa;AAClC;AACA;AACA;AACA;AACA,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMK,aAAa,GAAGC,IAAA,IAQhB;EAAA,IARiB;IACrBC,MAAM;IACNC,KAAK;IACLC,eAAe,EAAEC;EAKnB,CAAC,GAAAJ,IAAA;EACC,MAAMK,CAAC,GAAG,CAACC,QAAQ,CAACF,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEG,WAAW,CAAC,EAAE,CAAC;EAC/D,MAAMC,CAAC,GAAG,CAACF,QAAQ,CAACF,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEG,WAAW,CAAC,EAAE,CAAC;EAC/D,MAAME,CAAC,GAAG,CAACH,QAAQ,CAACF,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEG,WAAW,CAAC,EAAE,CAAC;EAE/D,OAAQ;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,CAAC,GAAG,GAAGL,KAAK,IAAI,CAAE,QACrE,CAAC,GAAG,GAAGD,MAAM,IAAI,CAClB,YAAWC,KAAM,aAAYD,MAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4DI,CAAE,YAAWG,CAAE,WAAUC,CAAE;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuBd,WAAY,YAAWO,KAAM,aAAYD,MAAO;AACvE;AACA;AACA,CAAC;AACD,CAAC;AAED,MAAMS,GAAG,GAAG;EACVC,KAAK,EAAGC,IAAY,IAAKC,OAAO,CAACH,GAAG,CAACI,mBAAE,CAACC,GAAG,CAACH,IAAI,CAAC,CAAC;EAClDA,IAAI,EAAGA,IAAY,IAAKC,OAAO,CAACH,GAAG,CAACE,IAAI,CAAC;EACzCI,IAAI,EAAGJ,IAAY,IAAKC,OAAO,CAACH,GAAG,CAACI,mBAAE,CAACG,MAAM,CAACL,IAAI,CAAC;AACrD,CAAC;AAED,MAAMM,kBAAkB,GAAIC,KAAa,IACvC,yBAAyB,CAACC,IAAI,CAACD,KAAK,CAAC;AAEvC,MAAME,iBAAiB,GAAIjB,GAAW,IAAK;EACzC,MAAMkB,QAAQ,GAAGlB,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,GAAGA,GAAG,GAAI,IAAGA,GAAI,EAAC;EACjD,MAAMmB,EAAE,GAAGD,QAAQ,CAACE,WAAW,EAAE;EAEjC,OAAOD,EAAE,CAACE,MAAM,KAAK,CAAC,GAClB,GAAG,GAAGF,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GACnDA,EAAE;AACR,CAAC;AAEM,MAAMG,QAAQ,GAAG,MAAAC,KAAA,IA0BlB;EAAA,IA1ByB;IAC7BC,OAAO;IACPC,GAAG;IAEHC,WAAW;IACXC,QAAQ;IACR5B,eAAe;IACf6B,SAAS;IACTC,MAAM;IACNC;EAiBF,CAAC,GAAAP,KAAA;EACC,IAAI,CAACT,kBAAkB,CAACf,eAAe,CAAC,EAAE;IACxCO,GAAG,CAACC,KAAK,CAAC,4DAA4D,CAAC;IACvEwB,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAMC,KAAK,GAAG,IAAAC,cAAK,EAACP,QAAQ,CAAC;EAC7B,MAAMQ,kBAAkB,GAAGlB,iBAAiB,CAAClB,eAAe,CAAC;EAC7D,MAAM;IAAEqC;EAAO,CAAC,GAAG,MAAMH,KAAK,CAACI,QAAQ,EAAE;EAEzC,IAAID,MAAM,KAAK,KAAK,IAAIA,MAAM,KAAK,KAAK,EAAE;IACxC9B,GAAG,CAACC,KAAK,CAAC,2CAA2C,CAAC;IACtDwB,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAMM,UAAU,GAAG,MAAML,KAAK,CAC3BM,KAAK,EAAE,CACPC,MAAM,CAACZ,SAAS,CAAC,CACjBa,QAAQ,EAAE,CACVC,IAAI,CAAEC,MAAM,IAAK,IAAAT,cAAK,EAACS,MAAM,CAAC,CAACN,QAAQ,EAAE,CAAC,CAC1CK,IAAI,CAACE,KAAA;IAAA,IAAC;MAAE/C,MAAM,GAAG;IAAE,CAAC,GAAA+C,KAAA;IAAA,OAAK/C,MAAM;EAAA,EAAC;EAEnC,MAAMgD,iBAAiB,GAAGjB,SAAS,GAAG,GAAG,IAAIU,UAAU,GAAG,GAAG;EAE7D,MAAMQ,WAAW,GAAIC,SAA6B,IAAK;IACrD,MAAMC,OAAO,GAAI,aAAYD,SAAU,wFAAuF;IAC9HzC,GAAG,CAACM,IAAI,CAACoC,OAAO,CAAC;EACnB,CAAC;EAED,MAAMC,WAAW,GAAIF,SAA6B,IAAK;IACrD,MAAMC,OAAO,GAAI,aAAYD,SAAU,gDAA+C;IACtFzC,GAAG,CAACM,IAAI,CAACoC,OAAO,CAAC;EACnB,CAAC;EAED,IAAIpB,SAAS,GAAG,GAAG,EAAE;IACnBkB,WAAW,CAAC,OAAO,CAAC;EACtB,CAAC,MAAM,IAAIR,UAAU,GAAG,GAAG,EAAE;IAC3BQ,WAAW,CAAC,QAAQ,CAAC;EACvB,CAAC,MAAM,IAAIlB,SAAS,GAAG,GAAG,EAAE;IAC1BqB,WAAW,CAAC,OAAO,CAAC;EACtB,CAAC,MAAM,IAAIX,UAAU,GAAG,GAAG,EAAE;IAC3BW,WAAW,CAAC,QAAQ,CAAC;EACvB;EAEA,MAAMC,QAAQ,GAAGA,CACfC,KAAa,EACbC,QAAgB,EAChBC,UAA8C,KAE9C/C,GAAG,CAACE,IAAI,CACL,GAAE2C,KAAM,KAAIG,aAAI,CAACC,QAAQ,CAAC7B,WAAW,EAAE0B,QAAQ,CAAE,EAAC,IAChDC,UAAU,IAAI,IAAI,GACd,KAAIA,UAAU,CAACvD,KAAM,IAAGuD,UAAU,CAACxD,MAAO,GAAE,GAC7C,EAAE,CAAC,CACV;EAEH,IAAIiC,UAAU,IAAI0B,gBAAE,CAACC,UAAU,CAAC3B,UAAU,CAAC,EAAE;IAC3CxB,GAAG,CAACE,IAAI,CAAE,SAAQE,mBAAE,CAACgD,SAAS,CAAC,QAAQ,CAAE,EAAC,CAAC;IAE3C,MAAMC,OAAO,CAACC,GAAG,CACf,CACE;MAAEC,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAG,CAAC,EACxB;MAAED,KAAK,EAAE,GAAG;MAAEC,MAAM,EAAE;IAAQ,CAAC,EAC/B;MAAED,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,EAC3B;MAAED,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,EAC3B;MAAED,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,CAC5B,CAACC,GAAG,CAACC,KAAA,IAAuB;MAAA,IAAtB;QAAEH,KAAK;QAAEC;MAAO,CAAC,GAAAE,KAAA;MACtB,MAAMC,QAAQ,GAAI,GAAE3E,YAAa,GAAEwE,MAAO,MAAK;MAC/C,MAAMV,QAAQ,GAAGE,aAAI,CAACY,OAAO,CAACpC,UAAU,EAAEmC,QAAQ,CAAC;MAEnD,OAAOhC,KAAK,CACTM,KAAK,EAAE,CACPC,MAAM,CAACZ,SAAS,GAAGiC,KAAK,CAAC,CACzBM,GAAG,CAAC;QAAEC,OAAO,EAAE;MAAI,CAAC,CAAC,CACrBC,MAAM,CAACjB,QAAQ,CAAC,CAChBV,IAAI,CAAC4B,KAAA,IAAuB;QAAA,IAAtB;UAAExE,KAAK;UAAED;QAAO,CAAC,GAAAyE,KAAA;QACtBpB,QAAQ,CAAC,GAAG,EAAEE,QAAQ,EAAE;UAAEtD,KAAK;UAAED;QAAO,CAAC,CAAC;MAC5C,CAAC,CAAC;IACN,CAAC,CAAC,CACH;EACH;EAEA,IAAI2B,OAAO,IAAI,CAACqB,iBAAiB,EAAE;IACjCvC,GAAG,CAACE,IAAI,CAAE,SAAQE,mBAAE,CAACgD,SAAS,CAAC,SAAS,CAAE,EAAC,CAAC;IAE5C,MAAMa,OAAO,GAAG/C,OAAO,CAACgD,OAAO,GAC3BlB,aAAI,CAACY,OAAO,CAAC1C,OAAO,CAACiD,SAAS,EAAEjD,OAAO,CAACgD,OAAO,CAAC,GAChDlB,aAAI,CAACY,OAAO,CAAC1C,OAAO,CAACiD,SAAS,CAAC,CAAC,CAAC;;IAErC,MAAMC,OAAO,GAAGpB,aAAI,CAACY,OAAO,CAACK,OAAO,EAAE,KAAK,EAAE1C,MAAM,EAAE,KAAK,CAAC;IAC3D,MAAM8C,UAAU,GAAGrB,aAAI,CAACY,OAAO,CAACQ,OAAO,EAAE,QAAQ,CAAC;IAElDlB,gBAAE,CAACoB,aAAa,CAACD,UAAU,CAAC;IAE5B,MAAME,aAAa,GAAGvB,aAAI,CAACY,OAAO,CAACS,UAAU,EAAE,YAAY,CAAC;IAC5D,MAAMG,cAAc,GAAI,gBAAetF,gBAAiB,KAAI2C,kBAAmB,UAAS;IAExF,IAAIqB,gBAAE,CAACC,UAAU,CAACoB,aAAa,CAAC,EAAE;MAChC,MAAME,SAAS,GAAGvB,gBAAE,CAACwB,YAAY,CAACH,aAAa,EAAE,OAAO,CAAC;MAEzD,IAAIE,SAAS,CAACE,KAAK,CAACxF,iBAAiB,CAAC,EAAE;QACtC+D,gBAAE,CAAC0B,aAAa,CACdL,aAAa,EACbE,SAAS,CAACI,OAAO,CAAC1F,iBAAiB,EAAEqF,cAAc,CAAC,EACpD,OAAO,CACR;MACH,CAAC,MAAM;QACLtB,gBAAE,CAAC0B,aAAa,CACdL,aAAa,EACbE,SAAS,CAACI,OAAO,CACf,gBAAgB,EACf,OAAML,cAAe,gBAAe,CACtC,EACD,OAAO,CACR;MACH;MAEA5B,QAAQ,CAAC,KAAK,EAAE2B,aAAa,CAAC;IAChC,CAAC,MAAM;MACLrB,gBAAE,CAAC0B,aAAa,CACdL,aAAa,EACZ,oBAAmBC,cAAe,kBAAiB,EACpD,OAAO,CACR;MAED5B,QAAQ,CAAC,GAAG,EAAE2B,aAAa,CAAC;IAC9B;IAEA,MAAMlB,OAAO,CAACC,GAAG,CACf,CACE;MAAEC,KAAK,EAAE,CAAC;MAAEuB,SAAS,EAAE;IAAc,CAAC,EACtC;MAAEvB,KAAK,EAAE,GAAG;MAAEuB,SAAS,EAAE;IAAc,CAAC,EACxC;MAAEvB,KAAK,EAAE,CAAC;MAAEuB,SAAS,EAAE;IAAe,CAAC,EACvC;MAAEvB,KAAK,EAAE,CAAC;MAAEuB,SAAS,EAAE;IAAgB,CAAC,EACxC;MAAEvB,KAAK,EAAE,CAAC;MAAEuB,SAAS,EAAE;IAAiB,CAAC,CAC1C,CAACrB,GAAG,CAACsB,KAAA,IAA0B;MAAA,IAAzB;QAAExB,KAAK;QAAEuB;MAAU,CAAC,GAAAC,KAAA;MACzB,MAAMpB,QAAQ,GAAI,GAAE3E,YAAa,MAAK;MACtC,MAAM8D,QAAQ,GAAGE,aAAI,CAACY,OAAO,CAACQ,OAAO,EAAEU,SAAS,EAAEnB,QAAQ,CAAC;MAC3D;MACA,MAAMqB,UAAU,GAAG,GAAG,GAAGzB,KAAK;;MAE9B;MACA,MAAM0B,MAAM,GAAG,IAAArD,cAAK,EAAC;QACnBsD,MAAM,EAAE;UACN1F,KAAK,EAAEwF,UAAU;UACjBzF,MAAM,EAAEyF,UAAU;UAClBG,QAAQ,EAAE,CAAC;UACXC,UAAU,EAAE;YACVzF,CAAC,EAAE,GAAG;YACNG,CAAC,EAAE,GAAG;YACNC,CAAC,EAAE,GAAG;YACNsF,KAAK,EAAE;UACT;QACF;MACF,CAAC,CAAC;MAEF,OAAO1D,KAAK,CACTM,KAAK,EAAE,CACPC,MAAM,CAACZ,SAAS,GAAGiC,KAAK,CAAC,CACzBpB,QAAQ,EAAE,CACVC,IAAI,CAAEkD,KAAK,IACVL,MAAM,CACHM,SAAS,CAAC,CAAC;QAAED;MAAM,CAAC,CAAC,CAAC,CACtBzB,GAAG,CAAC;QAAEC,OAAO,EAAE;MAAI,CAAC,CAAC,CACrBC,MAAM,CAACjB,QAAQ,CAAC,CACpB,CACAV,IAAI,CAAC,MAAM;QACVQ,QAAQ,CAAC,GAAG,EAAEE,QAAQ,EAAE;UAAEtD,KAAK,EAAEwF,UAAU;UAAEzF,MAAM,EAAEyF;QAAW,CAAC,CAAC;MACpE,CAAC,CAAC;IACN,CAAC,CAAC,CACH;EACH;EAEA,IAAI7D,GAAG,EAAE;IACPnB,GAAG,CAACE,IAAI,CAAE,SAAQE,mBAAE,CAACgD,SAAS,CAAC,KAAK,CAAE,EAAC,CAAC;IAExC,MAAM;MAAEoC;IAAY,CAAC,GAAGrE,GAAG;IAC3B,MAAMsE,UAAU,GAAGzC,aAAI,CAACY,OAAO,CAAC4B,WAAW,EAAE,iBAAiB,CAAC;IAE/D,IAAItC,gBAAE,CAACC,UAAU,CAACqC,WAAW,CAAC,EAAE;MAC9B,MAAME,cAAc,GAAG1C,aAAI,CAACY,OAAO,CAAC4B,WAAW,EAAE,uBAAuB,CAAC;MAEzEtC,gBAAE,CAAC0B,aAAa,CACdc,cAAc,EACdrG,aAAa,CAAC;QACZE,MAAM,EAAEyC,UAAU;QAClBxC,KAAK,EAAE8B,SAAS;QAChB7B,eAAe,EAAEoC;MACnB,CAAC,CAAC,EACF,OAAO,CACR;MAEDe,QAAQ,CAAC,GAAG,EAAE8C,cAAc,CAAC;IAC/B,CAAC,MAAM;MACL1F,GAAG,CAACE,IAAI,CACL,OAAMsF,WAAY,wDAAuD,CAC3E;IACH;IAEA,IAAItC,gBAAE,CAACC,UAAU,CAACsC,UAAU,CAAC,EAAE;MAC7B,MAAME,YAAY,GAAG3C,aAAI,CAACY,OAAO,CAAC6B,UAAU,EAAExG,WAAW,GAAG,WAAW,CAAC;MACxEiE,gBAAE,CAACoB,aAAa,CAACqB,YAAY,CAAC;MAE9BzC,gBAAE,CAAC0B,aAAa,CACd5B,aAAI,CAACY,OAAO,CAAC+B,YAAY,EAAE,eAAe,CAAC,EAC3CvG,YAAY,EACZ,OAAO,CACR;MAED,MAAMiE,OAAO,CAACC,GAAG,CACf,CACE;QAAEC,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAG,CAAC,EACxB;QAAED,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAM,CAAC,EAC3B;QAAED,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAM,CAAC,CAC5B,CAACC,GAAG,CAACmC,KAAA,IAAuB;QAAA,IAAtB;UAAErC,KAAK;UAAEC;QAAO,CAAC,GAAAoC,KAAA;QACtB,MAAMjC,QAAQ,GAAI,GAAE3E,YAAa,GAAEwE,MAAO,MAAK;QAC/C,MAAMV,QAAQ,GAAGE,aAAI,CAACY,OAAO,CAAC+B,YAAY,EAAEhC,QAAQ,CAAC;QAErD,OAAOhC,KAAK,CACTM,KAAK,EAAE,CACPC,MAAM,CAACZ,SAAS,GAAGiC,KAAK,CAAC,CACzBM,GAAG,CAAC;UAAEC,OAAO,EAAE;QAAI,CAAC,CAAC,CACrBC,MAAM,CAACjB,QAAQ,CAAC,CAChBV,IAAI,CAACyD,KAAA,IAAuB;UAAA,IAAtB;YAAErG,KAAK;YAAED;UAAO,CAAC,GAAAsG,KAAA;UACtBjD,QAAQ,CAAC,GAAG,EAAEE,QAAQ,EAAE;YAAEtD,KAAK;YAAED;UAAO,CAAC,CAAC;QAC5C,CAAC,CAAC;MACN,CAAC,CAAC,CACH;IACH,CAAC,MAAM;MACLS,GAAG,CAACE,IAAI,CACL,OAAMuF,UAAW,oDAAmD,CACtE;IACH;EACF;EAEAzF,GAAG,CAACE,IAAI,CAAE;AACZ,GAAGE,mBAAE,CAAC0F,IAAI,CAAC,mDAAmD,CAAE;AAChE,GAAG1F,mBAAE,CAAC0F,IAAI,CAAC,GAAG,CAAE,SAAQ1F,mBAAE,CAAC2F,IAAI,CAC3B,yCAAyC,CACzC,KAAI3F,mBAAE,CAAC0F,IAAI,CAAC,GAAG,CAAE;AACrB,GAAG1F,mBAAE,CAAC0F,IAAI,CAAC,GAAG,CAAE,KAAI1F,mBAAE,CAACgD,SAAS,CAC5B,qCAAqC,CACrC,aAAYhD,mBAAE,CAAC0F,IAAI,CAAC,GAAG,CAAE;AAC7B,GAAG1F,mBAAE,CAAC0F,IAAI,CAAC,mDAAmD,CAAE;AAChE,CAAC,CAAC;EAEA9F,GAAG,CAACE,IAAI,CACL,6BAA4BE,mBAAE,CAACgD,SAAS,CAAC,yBAAyB,CAAE,GAAE,CACxE;AACH,CAAC;AAAC4C,OAAA,CAAAhF,QAAA,GAAAA,QAAA"}
1
+ {"version":3,"names":["_fsExtra","_interopRequireDefault","require","_path","_picocolors","_sharp","obj","__esModule","default","logoFileName","xcassetName","androidColorName","androidColorRegex","ContentsJson","getStoryboard","_ref","height","width","backgroundColor","hex","r","parseInt","toPrecision","g","b","log","error","text","console","pc","red","warn","yellow","toFullHexadecimal","up","toUpperCase","replace","length","process","exit","generate","_ref2","android","ios","workingPath","logoPath","logoWidth","flavor","assetsPath","backgroundColorHex","image","sharp","format","metadata","logoHeight","clone","resize","toBuffer","then","buffer","_ref3","shouldSkipAndroid","logAbove288","dimension","message","logAbove192","logWrite","emoji","filePath","dimensions","path","relative","fs","existsSync","underline","Promise","all","ratio","suffix","map","_ref4","fileName","resolve","png","quality","toFile","_ref5","appPath","appName","sourceDir","resPath","valuesPath","ensureDirSync","colorsXmlPath","colorsXmlEntry","colorsXml","readFileSync","match","writeFileSync","directory","_ref6","canvasSize","canvas","create","channels","background","alpha","input","composite","projectPath","imagesPath","storyboardPath","imageSetPath","_ref7","_ref8","blue","bold","exports"],"sourceRoot":"../../src","sources":["generate.ts"],"mappings":"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"}
@@ -6,18 +6,18 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  exports.getVisibilityStatus = getVisibilityStatus;
8
8
  exports.hide = hide;
9
- var _reactNative = require("react-native");
10
- const NativeModule = _reactNative.NativeModules.RNBootSplash;
9
+ var _NativeRNBootSplash = _interopRequireDefault(require("./NativeRNBootSplash"));
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
  function hide() {
12
12
  let config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
13
13
  const {
14
14
  fade = false,
15
15
  duration = 0
16
16
  } = config;
17
- return NativeModule.hide(fade ? Math.max(duration, 220) : 0).then(() => {});
17
+ return _NativeRNBootSplash.default.hide(fade ? Math.max(duration, 220) : 0).then(() => {});
18
18
  }
19
19
  function getVisibilityStatus() {
20
- return NativeModule.getVisibilityStatus();
20
+ return _NativeRNBootSplash.default.getVisibilityStatus();
21
21
  }
22
22
  var _default = {
23
23
  hide,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","NativeModule","NativeModules","RNBootSplash","hide","config","arguments","length","undefined","fade","duration","Math","max","then","getVisibilityStatus","_default","exports","default"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAKA,MAAMC,YAGL,GAAGC,0BAAa,CAACC,YAAY;AAEvB,SAASC,IAAIA,CAAA,EAAqC;EAAA,IAApCC,MAAc,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACtC,MAAM;IAAEG,IAAI,GAAG,KAAK;IAAEC,QAAQ,GAAG;EAAE,CAAC,GAAGL,MAAM;EAC7C,OAAOJ,YAAY,CAACG,IAAI,CAACK,IAAI,GAAGE,IAAI,CAACC,GAAG,CAACF,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAACG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7E;AAEO,SAASC,mBAAmBA,CAAA,EAA8B;EAC/D,OAAOb,YAAY,CAACa,mBAAmB,EAAE;AAC3C;AAAC,IAAAC,QAAA,GAEc;EACbX,IAAI;EACJU;AACF,CAAC;AAAAE,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"names":["_NativeRNBootSplash","_interopRequireDefault","require","obj","__esModule","default","hide","config","arguments","length","undefined","fade","duration","NativeModule","Math","max","then","getVisibilityStatus","_default","exports"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;AAAA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAsE,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAK/D,SAASG,IAAIA,CAAA,EAAqC;EAAA,IAApCC,MAAc,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACtC,MAAM;IAAEG,IAAI,GAAG,KAAK;IAAEC,QAAQ,GAAG;EAAE,CAAC,GAAGL,MAAM;EAC7C,OAAOM,2BAAY,CAACP,IAAI,CAACK,IAAI,GAAGG,IAAI,CAACC,GAAG,CAACH,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAACI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7E;AAEO,SAASC,mBAAmBA,CAAA,EAA8B;EAC/D,OAAOJ,2BAAY,CAACI,mBAAmB,CAAC,CAAC;AAC3C;AAAC,IAAAC,QAAA,GAEc;EACbZ,IAAI;EACJW;AACF,CAAC;AAAAE,OAAA,CAAAd,OAAA,GAAAa,QAAA"}
@@ -0,0 +1,3 @@
1
+ import { TurboModuleRegistry } from "react-native";
2
+ export default TurboModuleRegistry.getEnforcing("RNBootSplash");
3
+ //# sourceMappingURL=NativeRNBootSplash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeRNBootSplash.ts"],"mappings":"AACA,SAASA,mBAAmB,QAAQ,cAAc;AASlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,cAAc,CAAC"}
@@ -36,9 +36,9 @@ const getStoryboard = _ref => {
36
36
  width,
37
37
  backgroundColor: hex
38
38
  } = _ref;
39
- const r = (parseInt(hex[1] + hex[2], 16) / 255).toPrecision(15);
40
- const g = (parseInt(hex[3] + hex[4], 16) / 255).toPrecision(15);
41
- const b = (parseInt(hex[5] + hex[6], 16) / 255).toPrecision(15);
39
+ const r = (parseInt("" + hex[1] + hex[2], 16) / 255).toPrecision(15);
40
+ const g = (parseInt("" + hex[3] + hex[4], 16) / 255).toPrecision(15);
41
+ const b = (parseInt("" + hex[5] + hex[6], 16) / 255).toPrecision(15);
42
42
  return `<?xml version="1.0" encoding="UTF-8"?>
43
43
  <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
44
44
  <device id="retina4_7" orientation="portrait" appearance="light"/>
@@ -91,11 +91,16 @@ const log = {
91
91
  text: text => console.log(text),
92
92
  warn: text => console.log(pc.yellow(text))
93
93
  };
94
- const isValidHexadecimal = value => /^#?([0-9A-F]{3}){1,2}$/i.test(value);
95
94
  const toFullHexadecimal = hex => {
96
- const prefixed = hex[0] === "#" ? hex : `#${hex}`;
97
- const up = prefixed.toUpperCase();
98
- return up.length === 4 ? "#" + up[1] + up[1] + up[2] + up[2] + up[3] + up[3] : up;
95
+ const up = hex.toUpperCase().replace(/[^0-9A-F]/g, "");
96
+ if (up.length === 6) {
97
+ return "#" + up;
98
+ }
99
+ if (up.length === 3) {
100
+ return "#" + up[0] + up[0] + up[1] + up[1] + up[2] + up[2];
101
+ }
102
+ log.error("--background-color value is not a valid hexadecimal color.");
103
+ process.exit(1);
99
104
  };
100
105
  export const generate = async _ref2 => {
101
106
  let {
@@ -108,12 +113,12 @@ export const generate = async _ref2 => {
108
113
  flavor,
109
114
  assetsPath
110
115
  } = _ref2;
111
- if (!isValidHexadecimal(backgroundColor)) {
112
- log.error("--background-color value is not a valid hexadecimal color.");
116
+ if (!android && !ios) {
117
+ log.error("--platforms value does not include at least one supported platform.");
113
118
  process.exit(1);
114
119
  }
115
- const image = sharp(logoPath);
116
120
  const backgroundColorHex = toFullHexadecimal(backgroundColor);
121
+ const image = sharp(logoPath);
117
122
  const {
118
123
  format
119
124
  } = await image.metadata();
@@ -1 +1 @@
1
- {"version":3,"names":["fs","path","pc","sharp","logoFileName","xcassetName","androidColorName","androidColorRegex","ContentsJson","getStoryboard","_ref","height","width","backgroundColor","hex","r","parseInt","toPrecision","g","b","log","error","text","console","red","warn","yellow","isValidHexadecimal","value","test","toFullHexadecimal","prefixed","up","toUpperCase","length","generate","_ref2","android","ios","workingPath","logoPath","logoWidth","flavor","assetsPath","process","exit","image","backgroundColorHex","format","metadata","logoHeight","clone","resize","toBuffer","then","buffer","_ref3","shouldSkipAndroid","logAbove288","dimension","message","logAbove192","logWrite","emoji","filePath","dimensions","relative","existsSync","underline","Promise","all","ratio","suffix","map","_ref4","fileName","resolve","png","quality","toFile","_ref5","appPath","appName","sourceDir","resPath","valuesPath","ensureDirSync","colorsXmlPath","colorsXmlEntry","colorsXml","readFileSync","match","writeFileSync","replace","directory","_ref6","canvasSize","canvas","create","channels","background","alpha","input","composite","projectPath","imagesPath","storyboardPath","imageSetPath","_ref7","_ref8","blue","bold"],"sourceRoot":"../../src","sources":["generate.ts"],"mappings":"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"}
1
+ {"version":3,"names":["fs","path","pc","sharp","logoFileName","xcassetName","androidColorName","androidColorRegex","ContentsJson","getStoryboard","_ref","height","width","backgroundColor","hex","r","parseInt","toPrecision","g","b","log","error","text","console","red","warn","yellow","toFullHexadecimal","up","toUpperCase","replace","length","process","exit","generate","_ref2","android","ios","workingPath","logoPath","logoWidth","flavor","assetsPath","backgroundColorHex","image","format","metadata","logoHeight","clone","resize","toBuffer","then","buffer","_ref3","shouldSkipAndroid","logAbove288","dimension","message","logAbove192","logWrite","emoji","filePath","dimensions","relative","existsSync","underline","Promise","all","ratio","suffix","map","_ref4","fileName","resolve","png","quality","toFile","_ref5","appPath","appName","sourceDir","resPath","valuesPath","ensureDirSync","colorsXmlPath","colorsXmlEntry","colorsXml","readFileSync","match","writeFileSync","directory","_ref6","canvasSize","canvas","create","channels","background","alpha","input","composite","projectPath","imagesPath","storyboardPath","imageSetPath","_ref7","_ref8","blue","bold"],"sourceRoot":"../../src","sources":["generate.ts"],"mappings":"AAAA,OAAOA,EAAE,MAAM,UAAU;AACzB,OAAOC,IAAI,MAAM,MAAM;AACvB,OAAOC,EAAE,MAAM,YAAY;AAC3B,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,YAAY,GAAG,iBAAiB;AACtC,MAAMC,WAAW,GAAG,gBAAgB;AACpC,MAAMC,gBAAgB,GAAG,uBAAuB;AAChD,MAAMC,iBAAiB,GAAG,oDAAoD;AAE9E,MAAMC,YAAY,GAAI;AACtB;AACA;AACA;AACA,qBAAqBJ,YAAa;AAClC;AACA;AACA;AACA;AACA,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMK,aAAa,GAAGC,IAAA,IAQhB;EAAA,IARiB;IACrBC,MAAM;IACNC,KAAK;IACLC,eAAe,EAAEC;EAKnB,CAAC,GAAAJ,IAAA;EACC,MAAMK,CAAC,GAAG,CAACC,QAAQ,CAAC,EAAE,GAAGF,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEG,WAAW,CAAC,EAAE,CAAC;EACpE,MAAMC,CAAC,GAAG,CAACF,QAAQ,CAAC,EAAE,GAAGF,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEG,WAAW,CAAC,EAAE,CAAC;EACpE,MAAME,CAAC,GAAG,CAACH,QAAQ,CAAC,EAAE,GAAGF,GAAG,CAAC,CAAC,CAAC,GAAGA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,EAAEG,WAAW,CAAC,EAAE,CAAC;EAEpE,OAAQ;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,CAAC,GAAG,GAAGL,KAAK,IAAI,CAAE,QACrE,CAAC,GAAG,GAAGD,MAAM,IAAI,CAClB,YAAWC,KAAM,aAAYD,MAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4DI,CAAE,YAAWG,CAAE,WAAUC,CAAE;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuBd,WAAY,YAAWO,KAAM,aAAYD,MAAO;AACvE;AACA;AACA,CAAC;AACD,CAAC;AAED,MAAMS,GAAG,GAAG;EACVC,KAAK,EAAGC,IAAY,IAAKC,OAAO,CAACH,GAAG,CAAClB,EAAE,CAACsB,GAAG,CAACF,IAAI,CAAC,CAAC;EAClDA,IAAI,EAAGA,IAAY,IAAKC,OAAO,CAACH,GAAG,CAACE,IAAI,CAAC;EACzCG,IAAI,EAAGH,IAAY,IAAKC,OAAO,CAACH,GAAG,CAAClB,EAAE,CAACwB,MAAM,CAACJ,IAAI,CAAC;AACrD,CAAC;AAED,MAAMK,iBAAiB,GAAIb,GAAW,IAAK;EACzC,MAAMc,EAAE,GAAGd,GAAG,CAACe,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;EAEtD,IAAIF,EAAE,CAACG,MAAM,KAAK,CAAC,EAAE;IACnB,OAAO,GAAG,GAAGH,EAAE;EACjB;EACA,IAAIA,EAAE,CAACG,MAAM,KAAK,CAAC,EAAE;IACnB,OAAO,GAAG,GAAGH,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC,GAAGA,EAAE,CAAC,CAAC,CAAC;EAC5D;EAEAR,GAAG,CAACC,KAAK,CAAC,4DAA4D,CAAC;EACvEW,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,OAAO,MAAMC,QAAQ,GAAG,MAAAC,KAAA,IA0BlB;EAAA,IA1ByB;IAC7BC,OAAO;IACPC,GAAG;IAEHC,WAAW;IACXC,QAAQ;IACR1B,eAAe;IACf2B,SAAS;IACTC,MAAM;IACNC;EAiBF,CAAC,GAAAP,KAAA;EACC,IAAI,CAACC,OAAO,IAAI,CAACC,GAAG,EAAE;IACpBjB,GAAG,CAACC,KAAK,CACP,qEACF,CAAC;IACDW,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAMU,kBAAkB,GAAGhB,iBAAiB,CAACd,eAAe,CAAC;EAC7D,MAAM+B,KAAK,GAAGzC,KAAK,CAACoC,QAAQ,CAAC;EAC7B,MAAM;IAAEM;EAAO,CAAC,GAAG,MAAMD,KAAK,CAACE,QAAQ,CAAC,CAAC;EAEzC,IAAID,MAAM,KAAK,KAAK,IAAIA,MAAM,KAAK,KAAK,EAAE;IACxCzB,GAAG,CAACC,KAAK,CAAC,2CAA2C,CAAC;IACtDW,OAAO,CAACC,IAAI,CAAC,CAAC,CAAC;EACjB;EAEA,MAAMc,UAAU,GAAG,MAAMH,KAAK,CAC3BI,KAAK,CAAC,CAAC,CACPC,MAAM,CAACT,SAAS,CAAC,CACjBU,QAAQ,CAAC,CAAC,CACVC,IAAI,CAAEC,MAAM,IAAKjD,KAAK,CAACiD,MAAM,CAAC,CAACN,QAAQ,CAAC,CAAC,CAAC,CAC1CK,IAAI,CAACE,KAAA;IAAA,IAAC;MAAE1C,MAAM,GAAG;IAAE,CAAC,GAAA0C,KAAA;IAAA,OAAK1C,MAAM;EAAA,EAAC;EAEnC,MAAM2C,iBAAiB,GAAGd,SAAS,GAAG,GAAG,IAAIO,UAAU,GAAG,GAAG;EAE7D,MAAMQ,WAAW,GAAIC,SAA6B,IAAK;IACrD,MAAMC,OAAO,GAAI,aAAYD,SAAU,wFAAuF;IAC9HpC,GAAG,CAACK,IAAI,CAACgC,OAAO,CAAC;EACnB,CAAC;EAED,MAAMC,WAAW,GAAIF,SAA6B,IAAK;IACrD,MAAMC,OAAO,GAAI,aAAYD,SAAU,gDAA+C;IACtFpC,GAAG,CAACK,IAAI,CAACgC,OAAO,CAAC;EACnB,CAAC;EAED,IAAIjB,SAAS,GAAG,GAAG,EAAE;IACnBe,WAAW,CAAC,OAAO,CAAC;EACtB,CAAC,MAAM,IAAIR,UAAU,GAAG,GAAG,EAAE;IAC3BQ,WAAW,CAAC,QAAQ,CAAC;EACvB,CAAC,MAAM,IAAIf,SAAS,GAAG,GAAG,EAAE;IAC1BkB,WAAW,CAAC,OAAO,CAAC;EACtB,CAAC,MAAM,IAAIX,UAAU,GAAG,GAAG,EAAE;IAC3BW,WAAW,CAAC,QAAQ,CAAC;EACvB;EAEA,MAAMC,QAAQ,GAAGA,CACfC,KAAa,EACbC,QAAgB,EAChBC,UAA8C,KAE9C1C,GAAG,CAACE,IAAI,CACL,GAAEsC,KAAM,KAAI3D,IAAI,CAAC8D,QAAQ,CAACzB,WAAW,EAAEuB,QAAQ,CAAE,EAAC,IAChDC,UAAU,IAAI,IAAI,GACd,KAAIA,UAAU,CAAClD,KAAM,IAAGkD,UAAU,CAACnD,MAAO,GAAE,GAC7C,EAAE,CACV,CAAC;EAEH,IAAI+B,UAAU,IAAI1C,EAAE,CAACgE,UAAU,CAACtB,UAAU,CAAC,EAAE;IAC3CtB,GAAG,CAACE,IAAI,CAAE,SAAQpB,EAAE,CAAC+D,SAAS,CAAC,QAAQ,CAAE,EAAC,CAAC;IAE3C,MAAMC,OAAO,CAACC,GAAG,CACf,CACE;MAAEC,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAG,CAAC,EACxB;MAAED,KAAK,EAAE,GAAG;MAAEC,MAAM,EAAE;IAAQ,CAAC,EAC/B;MAAED,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,EAC3B;MAAED,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,EAC3B;MAAED,KAAK,EAAE,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,CAC5B,CAACC,GAAG,CAACC,KAAA,IAAuB;MAAA,IAAtB;QAAEH,KAAK;QAAEC;MAAO,CAAC,GAAAE,KAAA;MACtB,MAAMC,QAAQ,GAAI,GAAEpE,YAAa,GAAEiE,MAAO,MAAK;MAC/C,MAAMR,QAAQ,GAAG5D,IAAI,CAACwE,OAAO,CAAC/B,UAAU,EAAE8B,QAAQ,CAAC;MAEnD,OAAO5B,KAAK,CACTI,KAAK,CAAC,CAAC,CACPC,MAAM,CAACT,SAAS,GAAG4B,KAAK,CAAC,CACzBM,GAAG,CAAC;QAAEC,OAAO,EAAE;MAAI,CAAC,CAAC,CACrBC,MAAM,CAACf,QAAQ,CAAC,CAChBV,IAAI,CAAC0B,KAAA,IAAuB;QAAA,IAAtB;UAAEjE,KAAK;UAAED;QAAO,CAAC,GAAAkE,KAAA;QACtBlB,QAAQ,CAAC,GAAG,EAAEE,QAAQ,EAAE;UAAEjD,KAAK;UAAED;QAAO,CAAC,CAAC;MAC5C,CAAC,CAAC;IACN,CAAC,CACH,CAAC;EACH;EAEA,IAAIyB,OAAO,IAAI,CAACkB,iBAAiB,EAAE;IACjClC,GAAG,CAACE,IAAI,CAAE,SAAQpB,EAAE,CAAC+D,SAAS,CAAC,SAAS,CAAE,EAAC,CAAC;IAE5C,MAAMa,OAAO,GAAG1C,OAAO,CAAC2C,OAAO,GAC3B9E,IAAI,CAACwE,OAAO,CAACrC,OAAO,CAAC4C,SAAS,EAAE5C,OAAO,CAAC2C,OAAO,CAAC,GAChD9E,IAAI,CAACwE,OAAO,CAACrC,OAAO,CAAC4C,SAAS,CAAC,CAAC,CAAC;;IAErC,MAAMC,OAAO,GAAGhF,IAAI,CAACwE,OAAO,CAACK,OAAO,EAAE,KAAK,EAAErC,MAAM,EAAE,KAAK,CAAC;IAC3D,MAAMyC,UAAU,GAAGjF,IAAI,CAACwE,OAAO,CAACQ,OAAO,EAAE,QAAQ,CAAC;IAElDjF,EAAE,CAACmF,aAAa,CAACD,UAAU,CAAC;IAE5B,MAAME,aAAa,GAAGnF,IAAI,CAACwE,OAAO,CAACS,UAAU,EAAE,YAAY,CAAC;IAC5D,MAAMG,cAAc,GAAI,gBAAe/E,gBAAiB,KAAIqC,kBAAmB,UAAS;IAExF,IAAI3C,EAAE,CAACgE,UAAU,CAACoB,aAAa,CAAC,EAAE;MAChC,MAAME,SAAS,GAAGtF,EAAE,CAACuF,YAAY,CAACH,aAAa,EAAE,OAAO,CAAC;MAEzD,IAAIE,SAAS,CAACE,KAAK,CAACjF,iBAAiB,CAAC,EAAE;QACtCP,EAAE,CAACyF,aAAa,CACdL,aAAa,EACbE,SAAS,CAACxD,OAAO,CAACvB,iBAAiB,EAAE8E,cAAc,CAAC,EACpD,OACF,CAAC;MACH,CAAC,MAAM;QACLrF,EAAE,CAACyF,aAAa,CACdL,aAAa,EACbE,SAAS,CAACxD,OAAO,CACf,gBAAgB,EACf,OAAMuD,cAAe,gBACxB,CAAC,EACD,OACF,CAAC;MACH;MAEA1B,QAAQ,CAAC,KAAK,EAAEyB,aAAa,CAAC;IAChC,CAAC,MAAM;MACLpF,EAAE,CAACyF,aAAa,CACdL,aAAa,EACZ,oBAAmBC,cAAe,kBAAiB,EACpD,OACF,CAAC;MAED1B,QAAQ,CAAC,GAAG,EAAEyB,aAAa,CAAC;IAC9B;IAEA,MAAMlB,OAAO,CAACC,GAAG,CACf,CACE;MAAEC,KAAK,EAAE,CAAC;MAAEsB,SAAS,EAAE;IAAc,CAAC,EACtC;MAAEtB,KAAK,EAAE,GAAG;MAAEsB,SAAS,EAAE;IAAc,CAAC,EACxC;MAAEtB,KAAK,EAAE,CAAC;MAAEsB,SAAS,EAAE;IAAe,CAAC,EACvC;MAAEtB,KAAK,EAAE,CAAC;MAAEsB,SAAS,EAAE;IAAgB,CAAC,EACxC;MAAEtB,KAAK,EAAE,CAAC;MAAEsB,SAAS,EAAE;IAAiB,CAAC,CAC1C,CAACpB,GAAG,CAACqB,KAAA,IAA0B;MAAA,IAAzB;QAAEvB,KAAK;QAAEsB;MAAU,CAAC,GAAAC,KAAA;MACzB,MAAMnB,QAAQ,GAAI,GAAEpE,YAAa,MAAK;MACtC,MAAMyD,QAAQ,GAAG5D,IAAI,CAACwE,OAAO,CAACQ,OAAO,EAAES,SAAS,EAAElB,QAAQ,CAAC;MAC3D;MACA,MAAMoB,UAAU,GAAG,GAAG,GAAGxB,KAAK;;MAE9B;MACA,MAAMyB,MAAM,GAAG1F,KAAK,CAAC;QACnB2F,MAAM,EAAE;UACNlF,KAAK,EAAEgF,UAAU;UACjBjF,MAAM,EAAEiF,UAAU;UAClBG,QAAQ,EAAE,CAAC;UACXC,UAAU,EAAE;YACVjF,CAAC,EAAE,GAAG;YACNG,CAAC,EAAE,GAAG;YACNC,CAAC,EAAE,GAAG;YACN8E,KAAK,EAAE;UACT;QACF;MACF,CAAC,CAAC;MAEF,OAAOrD,KAAK,CACTI,KAAK,CAAC,CAAC,CACPC,MAAM,CAACT,SAAS,GAAG4B,KAAK,CAAC,CACzBlB,QAAQ,CAAC,CAAC,CACVC,IAAI,CAAE+C,KAAK,IACVL,MAAM,CACHM,SAAS,CAAC,CAAC;QAAED;MAAM,CAAC,CAAC,CAAC,CACtBxB,GAAG,CAAC;QAAEC,OAAO,EAAE;MAAI,CAAC,CAAC,CACrBC,MAAM,CAACf,QAAQ,CACpB,CAAC,CACAV,IAAI,CAAC,MAAM;QACVQ,QAAQ,CAAC,GAAG,EAAEE,QAAQ,EAAE;UAAEjD,KAAK,EAAEgF,UAAU;UAAEjF,MAAM,EAAEiF;QAAW,CAAC,CAAC;MACpE,CAAC,CAAC;IACN,CAAC,CACH,CAAC;EACH;EAEA,IAAIvD,GAAG,EAAE;IACPjB,GAAG,CAACE,IAAI,CAAE,SAAQpB,EAAE,CAAC+D,SAAS,CAAC,KAAK,CAAE,EAAC,CAAC;IAExC,MAAM;MAAEmC;IAAY,CAAC,GAAG/D,GAAG;IAC3B,MAAMgE,UAAU,GAAGpG,IAAI,CAACwE,OAAO,CAAC2B,WAAW,EAAE,iBAAiB,CAAC;IAE/D,IAAIpG,EAAE,CAACgE,UAAU,CAACoC,WAAW,CAAC,EAAE;MAC9B,MAAME,cAAc,GAAGrG,IAAI,CAACwE,OAAO,CAAC2B,WAAW,EAAE,uBAAuB,CAAC;MAEzEpG,EAAE,CAACyF,aAAa,CACda,cAAc,EACd7F,aAAa,CAAC;QACZE,MAAM,EAAEoC,UAAU;QAClBnC,KAAK,EAAE4B,SAAS;QAChB3B,eAAe,EAAE8B;MACnB,CAAC,CAAC,EACF,OACF,CAAC;MAEDgB,QAAQ,CAAC,GAAG,EAAE2C,cAAc,CAAC;IAC/B,CAAC,MAAM;MACLlF,GAAG,CAACE,IAAI,CACL,OAAM8E,WAAY,wDACrB,CAAC;IACH;IAEA,IAAIpG,EAAE,CAACgE,UAAU,CAACqC,UAAU,CAAC,EAAE;MAC7B,MAAME,YAAY,GAAGtG,IAAI,CAACwE,OAAO,CAAC4B,UAAU,EAAEhG,WAAW,GAAG,WAAW,CAAC;MACxEL,EAAE,CAACmF,aAAa,CAACoB,YAAY,CAAC;MAE9BvG,EAAE,CAACyF,aAAa,CACdxF,IAAI,CAACwE,OAAO,CAAC8B,YAAY,EAAE,eAAe,CAAC,EAC3C/F,YAAY,EACZ,OACF,CAAC;MAED,MAAM0D,OAAO,CAACC,GAAG,CACf,CACE;QAAEC,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAG,CAAC,EACxB;QAAED,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAM,CAAC,EAC3B;QAAED,KAAK,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAM,CAAC,CAC5B,CAACC,GAAG,CAACkC,KAAA,IAAuB;QAAA,IAAtB;UAAEpC,KAAK;UAAEC;QAAO,CAAC,GAAAmC,KAAA;QACtB,MAAMhC,QAAQ,GAAI,GAAEpE,YAAa,GAAEiE,MAAO,MAAK;QAC/C,MAAMR,QAAQ,GAAG5D,IAAI,CAACwE,OAAO,CAAC8B,YAAY,EAAE/B,QAAQ,CAAC;QAErD,OAAO5B,KAAK,CACTI,KAAK,CAAC,CAAC,CACPC,MAAM,CAACT,SAAS,GAAG4B,KAAK,CAAC,CACzBM,GAAG,CAAC;UAAEC,OAAO,EAAE;QAAI,CAAC,CAAC,CACrBC,MAAM,CAACf,QAAQ,CAAC,CAChBV,IAAI,CAACsD,KAAA,IAAuB;UAAA,IAAtB;YAAE7F,KAAK;YAAED;UAAO,CAAC,GAAA8F,KAAA;UACtB9C,QAAQ,CAAC,GAAG,EAAEE,QAAQ,EAAE;YAAEjD,KAAK;YAAED;UAAO,CAAC,CAAC;QAC5C,CAAC,CAAC;MACN,CAAC,CACH,CAAC;IACH,CAAC,MAAM;MACLS,GAAG,CAACE,IAAI,CACL,OAAM+E,UAAW,oDACpB,CAAC;IACH;EACF;EAEAjF,GAAG,CAACE,IAAI,CAAE;AACZ,GAAGpB,EAAE,CAACwG,IAAI,CAAC,mDAAmD,CAAE;AAChE,GAAGxG,EAAE,CAACwG,IAAI,CAAC,GAAG,CAAE,SAAQxG,EAAE,CAACyG,IAAI,CAC3B,yCACF,CAAE,KAAIzG,EAAE,CAACwG,IAAI,CAAC,GAAG,CAAE;AACrB,GAAGxG,EAAE,CAACwG,IAAI,CAAC,GAAG,CAAE,KAAIxG,EAAE,CAAC+D,SAAS,CAC5B,qCACF,CAAE,aAAY/D,EAAE,CAACwG,IAAI,CAAC,GAAG,CAAE;AAC7B,GAAGxG,EAAE,CAACwG,IAAI,CAAC,mDAAmD,CAAE;AAChE,CAAC,CAAC;EAEAtF,GAAG,CAACE,IAAI,CACL,6BAA4BpB,EAAE,CAAC+D,SAAS,CAAC,yBAAyB,CAAE,GACvE,CAAC;AACH,CAAC"}
@@ -1,5 +1,4 @@
1
- import { NativeModules } from "react-native";
2
- const NativeModule = NativeModules.RNBootSplash;
1
+ import NativeModule from "./NativeRNBootSplash";
3
2
  export function hide() {
4
3
  let config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5
4
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","NativeModule","RNBootSplash","hide","config","arguments","length","undefined","fade","duration","Math","max","then","getVisibilityStatus"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAK5C,MAAMC,YAGL,GAAGD,aAAa,CAACE,YAAY;AAE9B,OAAO,SAASC,IAAIA,CAAA,EAAqC;EAAA,IAApCC,MAAc,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACtC,MAAM;IAAEG,IAAI,GAAG,KAAK;IAAEC,QAAQ,GAAG;EAAE,CAAC,GAAGL,MAAM;EAC7C,OAAOH,YAAY,CAACE,IAAI,CAACK,IAAI,GAAGE,IAAI,CAACC,GAAG,CAACF,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAACG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7E;AAEA,OAAO,SAASC,mBAAmBA,CAAA,EAA8B;EAC/D,OAAOZ,YAAY,CAACY,mBAAmB,EAAE;AAC3C;AAEA,eAAe;EACbV,IAAI;EACJU;AACF,CAAC"}
1
+ {"version":3,"names":["NativeModule","hide","config","arguments","length","undefined","fade","duration","Math","max","then","getVisibilityStatus"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,OAAOA,YAAY,MAA4B,sBAAsB;AAKrE,OAAO,SAASC,IAAIA,CAAA,EAAqC;EAAA,IAApCC,MAAc,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACtC,MAAM;IAAEG,IAAI,GAAG,KAAK;IAAEC,QAAQ,GAAG;EAAE,CAAC,GAAGL,MAAM;EAC7C,OAAOF,YAAY,CAACC,IAAI,CAACK,IAAI,GAAGE,IAAI,CAACC,GAAG,CAACF,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAACG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7E;AAEA,OAAO,SAASC,mBAAmBA,CAAA,EAA8B;EAC/D,OAAOX,YAAY,CAACW,mBAAmB,CAAC,CAAC;AAC3C;AAEA,eAAe;EACbV,IAAI;EACJU;AACF,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { TurboModule } from "react-native";
2
+ export type VisibilityStatus = "visible" | "hidden" | "transitioning";
3
+ export interface Spec extends TurboModule {
4
+ hide(duration: number): Promise<void>;
5
+ getVisibilityStatus(): Promise<VisibilityStatus>;
6
+ }
7
+ declare const _default: Spec;
8
+ export default _default;
9
+ //# sourceMappingURL=NativeRNBootSplash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeRNBootSplash.d.ts","sourceRoot":"","sources":["../../src/NativeRNBootSplash.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;AAEtE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAClD;;AAED,wBAAsE"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":"AAoHA,eAAO,MAAM,QAAQ;aAWV;QACP,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI;SACH;QACH,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,IAAI;iBAEK,MAAM;cACT,MAAM;;qBAGC,MAAM;YACf,MAAM;eACH,MAAM;mBA0PlB,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":"AAsHA,eAAO,MAAM,QAAQ;aAWV;QACP,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI;SACH;QACH,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,IAAI;iBAEK,MAAM;cACT,MAAM;;qBAGC,MAAM;YACf,MAAM;eACH,MAAM;mBA4PlB,CAAC"}
@@ -1,4 +1,5 @@
1
- export type VisibilityStatus = "visible" | "hidden" | "transitioning";
1
+ import { VisibilityStatus } from "./NativeRNBootSplash";
2
+ export type { VisibilityStatus } from "./NativeRNBootSplash";
2
3
  export type Config = {
3
4
  fade?: boolean;
4
5
  duration?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;AACtE,MAAM,MAAM,MAAM,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAO3D,wBAAgB,IAAI,CAAC,MAAM,GAAE,MAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvD;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAE/D;;;;;AAED,wBAGE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAqB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,MAAM,MAAM,MAAM,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,wBAAgB,IAAI,CAAC,MAAM,GAAE,MAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvD;AAED,wBAAgB,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAE/D;;;;;AAED,wBAGE"}
@@ -1,8 +1,15 @@
1
- #import <React/RCTBridgeModule.h>
2
- #import <React/RCTRootView.h>
1
+ #ifdef RCT_NEW_ARCH_ENABLED
2
+
3
+ #import <RNBootSplashSpec/RNBootSplashSpec.h>
4
+ @interface RNBootSplash : NSObject <NativeRNBootSplashSpec>
5
+
6
+ #else
3
7
 
8
+ #import <React/RCTBridgeModule.h>
4
9
  @interface RNBootSplash : NSObject <RCTBridgeModule>
5
10
 
11
+ #endif
12
+
6
13
  + (void)initWithStoryboard:(NSString * _Nonnull)storyboardName
7
14
  rootView:(UIView * _Nullable)rootView;
8
15
 
@@ -1,10 +1,17 @@
1
1
  #import "RNBootSplash.h"
2
2
 
3
- #import <React/RCTBridge.h>
4
3
  #import <React/RCTUtils.h>
5
4
 
6
- static NSMutableArray<RCTPromiseResolveBlock> *_resolverQueue = nil;
7
- static RCTRootView *_rootView = nil;
5
+ #if RCT_NEW_ARCH_ENABLED
6
+ #import <React/RCTFabricSurfaceHostingProxyRootView.h>
7
+ #import <React/RCTSurfaceHostingView.h>
8
+ #else
9
+ #import <React/RCTRootView.h>
10
+ #endif
11
+
12
+ static NSMutableArray<RCTPromiseResolveBlock> *_resolveQueue = nil;
13
+ static UIView *_loadingView = nil;
14
+ static UIView *_rootView = nil;
8
15
  static float _duration = 0;
9
16
  static bool _nativeHidden = false;
10
17
  static bool _transitioning = false;
@@ -13,44 +20,34 @@ static bool _transitioning = false;
13
20
 
14
21
  RCT_EXPORT_MODULE();
15
22
 
16
- + (BOOL)requiresMainQueueSetup {
17
- return NO;
18
- }
19
-
20
23
  - (dispatch_queue_t)methodQueue {
21
24
  return dispatch_get_main_queue();
22
25
  }
23
26
 
24
27
  + (bool)isLoadingViewHidden {
25
- return _rootView == nil || _rootView.loadingView == nil || [_rootView.loadingView isHidden];
28
+ return _loadingView == nil || [_loadingView isHidden];
26
29
  }
27
30
 
28
- + (bool)hasResolverQueue {
29
- return _resolverQueue != nil;
31
+ + (bool)hasResolveQueue {
32
+ return _resolveQueue != nil;
30
33
  }
31
34
 
32
- + (void)clearResolverQueue {
33
- if (![self hasResolverQueue])
35
+ + (void)clearResolveQueue {
36
+ if (![self hasResolveQueue])
34
37
  return;
35
38
 
36
- while ([_resolverQueue count] > 0) {
37
- RCTPromiseResolveBlock resolve = [_resolverQueue objectAtIndex:0];
38
- [_resolverQueue removeObjectAtIndex:0];
39
+ while ([_resolveQueue count] > 0) {
40
+ RCTPromiseResolveBlock resolve = [_resolveQueue objectAtIndex:0];
41
+ [_resolveQueue removeObjectAtIndex:0];
39
42
  resolve(@(true));
40
43
  }
41
44
  }
42
45
 
43
46
  + (void)hideLoadingView {
44
47
  if ([self isLoadingViewHidden])
45
- return [RNBootSplash clearResolverQueue];
48
+ return [RNBootSplash clearResolveQueue];
46
49
 
47
- if (_duration <= 0) {
48
- _rootView.loadingView.hidden = YES;
49
- [_rootView.loadingView removeFromSuperview];
50
- _rootView.loadingView = nil;
51
-
52
- return [RNBootSplash clearResolverQueue];
53
- } else {
50
+ if (_duration > 0) {
54
51
  dispatch_async(dispatch_get_main_queue(), ^{
55
52
  _transitioning = true;
56
53
 
@@ -58,38 +55,51 @@ RCT_EXPORT_MODULE();
58
55
  duration:_duration / 1000.0
59
56
  options:UIViewAnimationOptionTransitionCrossDissolve
60
57
  animations:^{
61
- _rootView.loadingView.hidden = YES;
58
+ _loadingView.hidden = YES;
62
59
  }
63
60
  completion:^(__unused BOOL finished) {
64
- [_rootView.loadingView removeFromSuperview];
65
- _rootView.loadingView = nil;
61
+ [_loadingView removeFromSuperview];
62
+ _loadingView = nil;
66
63
 
67
64
  _transitioning = false;
68
- return [RNBootSplash clearResolverQueue];
65
+ return [RNBootSplash clearResolveQueue];
69
66
  }];
70
67
  });
68
+ } else {
69
+ _loadingView.hidden = YES;
70
+ [_loadingView removeFromSuperview];
71
+ _loadingView = nil;
72
+
73
+ return [RNBootSplash clearResolveQueue];
71
74
  }
72
75
  }
73
76
 
74
77
  + (void)initWithStoryboard:(NSString * _Nonnull)storyboardName
75
78
  rootView:(UIView * _Nullable)rootView {
76
79
  if (rootView == nil
80
+ #ifdef RCT_NEW_ARCH_ENABLED
81
+ || ![rootView isKindOfClass:[RCTFabricSurfaceHostingProxyRootView class]]
82
+ #else
77
83
  || ![rootView isKindOfClass:[RCTRootView class]]
84
+ #endif
78
85
  || _rootView != nil
79
- || [self hasResolverQueue] // hide has already been called, abort init
86
+ || [self hasResolveQueue] // hide has already been called, abort init
80
87
  || RCTRunningInAppExtension())
81
88
  return;
82
89
 
90
+ #ifdef RCT_NEW_ARCH_ENABLED
91
+ RCTFabricSurfaceHostingProxyRootView *proxy = (RCTFabricSurfaceHostingProxyRootView *)rootView;
92
+ _rootView = (RCTSurfaceHostingView *)proxy.surface.view;
93
+ #else
83
94
  _rootView = (RCTRootView *)rootView;
84
-
85
- [[NSNotificationCenter defaultCenter] removeObserver:rootView
86
- name:RCTContentDidAppearNotification
87
- object:rootView];
95
+ #endif
88
96
 
89
97
  UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle:nil];
90
- UIView *loadingView = [[storyboard instantiateInitialViewController] view];
91
98
 
92
- [_rootView setLoadingView:loadingView];
99
+ _loadingView = [[storyboard instantiateInitialViewController] view];
100
+ _loadingView.hidden = NO;
101
+
102
+ [_rootView addSubview:_loadingView];
93
103
 
94
104
  [NSTimer scheduledTimerWithTimeInterval:0.35
95
105
  repeats:NO
@@ -98,7 +108,7 @@ RCT_EXPORT_MODULE();
98
108
  _nativeHidden = true;
99
109
 
100
110
  // hide has been called before native launch screen fade out
101
- if ([self hasResolverQueue])
111
+ if ([self hasResolveQueue])
102
112
  [self hideLoadingView];
103
113
  }];
104
114
 
@@ -122,17 +132,16 @@ RCT_EXPORT_MODULE();
122
132
  [[NSNotificationCenter defaultCenter] removeObserver:self];
123
133
  }
124
134
 
125
- RCT_REMAP_METHOD(hide,
126
- hideWithDuration:(double)duration
127
- resolver:(RCTPromiseResolveBlock)resolve
128
- rejecter:(RCTPromiseRejectBlock)reject) {
129
- if (_resolverQueue == nil)
130
- _resolverQueue = [[NSMutableArray alloc] init];
135
+ - (void)hide:(double)duration
136
+ resolve:(RCTPromiseResolveBlock)resolve
137
+ reject:(RCTPromiseRejectBlock)reject {
138
+ if (_resolveQueue == nil)
139
+ _resolveQueue = [[NSMutableArray alloc] init];
131
140
 
132
- [_resolverQueue addObject:resolve];
141
+ [_resolveQueue addObject:resolve];
133
142
 
134
143
  if ([RNBootSplash isLoadingViewHidden] || RCTRunningInAppExtension())
135
- return [RNBootSplash clearResolverQueue];
144
+ return [RNBootSplash clearResolveQueue];
136
145
 
137
146
  _duration = lroundf((float)duration);
138
147
 
@@ -140,9 +149,8 @@ RCT_REMAP_METHOD(hide,
140
149
  return [RNBootSplash hideLoadingView];
141
150
  }
142
151
 
143
- RCT_REMAP_METHOD(getVisibilityStatus,
144
- getVisibilityStatusWithResolver:(RCTPromiseResolveBlock)resolve
145
- rejecter:(RCTPromiseRejectBlock)reject) {
152
+ - (void)getVisibilityStatus:(RCTPromiseResolveBlock)resolve
153
+ reject:(RCTPromiseRejectBlock)reject {
146
154
  if ([RNBootSplash isLoadingViewHidden])
147
155
  return resolve(@"hidden");
148
156
  else if (_transitioning)
@@ -151,4 +159,30 @@ RCT_REMAP_METHOD(getVisibilityStatus,
151
159
  return resolve(@"visible");
152
160
  }
153
161
 
162
+ #ifdef RCT_NEW_ARCH_ENABLED
163
+
164
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const facebook::react::ObjCTurboModule::InitParams &)params {
165
+ return std::make_shared<facebook::react::NativeRNBootSplashSpecJSI>(params);
166
+ }
167
+
168
+ #else
169
+
170
+ RCT_REMAP_METHOD(hide,
171
+ hideWithDuration:(double)duration
172
+ resolve:(RCTPromiseResolveBlock)resolve
173
+ rejecte:(RCTPromiseRejectBlock)reject) {
174
+ [self hide:duration
175
+ resolve:resolve
176
+ reject:reject];
177
+ }
178
+
179
+ RCT_REMAP_METHOD(getVisibilityStatus,
180
+ getVisibilityStatusWithResolve:(RCTPromiseResolveBlock)resolve
181
+ rejecte:(RCTPromiseRejectBlock)reject) {
182
+ [self getVisibilityStatus:resolve
183
+ reject:reject];
184
+ }
185
+
186
+ #endif
187
+
154
188
  @end
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <Scheme
3
- LastUpgradeVersion = "1020"
3
+ LastUpgradeVersion = "1410"
4
4
  version = "1.3">
5
5
  <BuildAction
6
6
  parallelizeBuildables = "YES"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-bootsplash",
3
- "version": "4.5.3",
3
+ "version": "4.7.0",
4
4
  "license": "MIT",
5
5
  "description": "Display a bootsplash on your app starts. Hide it when you want.",
6
6
  "author": "Mathieu Acthernoene <zoontek@gmail.com>",
@@ -38,7 +38,8 @@
38
38
  "scripts": {
39
39
  "format": "prettier '**/*' -u -w",
40
40
  "setup-hooks": "git config --local core.hooksPath .hooks",
41
- "prepack": "bob build"
41
+ "prepack": "bob build",
42
+ "typecheck": "tsc --project ./ --noEmit"
42
43
  },
43
44
  "react-native-builder-bob": {
44
45
  "source": "src",
@@ -59,22 +60,30 @@
59
60
  "react-native": ">=0.65.0"
60
61
  },
61
62
  "dependencies": {
62
- "fs-extra": "^11.1.0",
63
- "sharp": "^0.31.3",
63
+ "fs-extra": "^11.1.1",
64
+ "sharp": "^0.32.1",
64
65
  "picocolors": "^1.0.0"
65
66
  },
66
67
  "devDependencies": {
67
- "@babel/core": "^7.21.0",
68
+ "@babel/core": "^7.20.0",
68
69
  "@types/fs-extra": "^11.0.1",
69
- "@types/react": "^18.0.28",
70
+ "@types/react": "^18.2.5",
70
71
  "@types/sharp": "^0.31.1",
71
- "lint-staged": "^13.1.2",
72
- "prettier": "^2.8.4",
72
+ "lint-staged": "^13.2.2",
73
+ "prettier": "^2.8.8",
73
74
  "prettier-plugin-organize-imports": "^3.2.2",
74
75
  "react": "18.2.0",
75
- "react-native": "0.71.3",
76
+ "react-native": "0.71.7",
76
77
  "react-native-builder-bob": "^0.20.4",
77
- "rescript": "^10.1.2",
78
- "typescript": "^4.9.5"
78
+ "rescript": "^10.1.4",
79
+ "typescript": "^5.0.4"
80
+ },
81
+ "codegenConfig": {
82
+ "name": "RNBootSplashSpec",
83
+ "type": "modules",
84
+ "jsSrcsDir": "./src",
85
+ "android": {
86
+ "javaPackageName": "com.zoontek.rnbootsplash"
87
+ }
79
88
  }
80
89
  }
@@ -32,28 +32,36 @@ module.exports = {
32
32
  '[android only] flavor build variant (outputs in an android resource directory other than "main")',
33
33
  default: "main",
34
34
  },
35
+ {
36
+ name: "--platforms <platforms>",
37
+ description:
38
+ "platforms to generate the splash screen for (android, ios)",
39
+ default: "android,ios",
40
+ parse: (value) => value.split(","),
41
+ },
35
42
  ],
36
43
  func: (
37
44
  [logoPath],
38
45
  { project: { android, ios } },
39
- { backgroundColor, logoWidth, assetsPath, flavor },
46
+ { backgroundColor, logoWidth, assetsPath, flavor, platforms },
40
47
  ) => {
41
48
  const workingPath =
42
49
  process.env.INIT_CWD || process.env.PWD || process.cwd();
43
50
 
44
51
  return generate({
45
- android,
52
+ android: platforms.includes("android") && android ? android : null,
46
53
 
47
- ios: ios
48
- ? {
49
- ...ios,
50
- // Fix to support previous CLI versions
51
- projectPath: (ios.xcodeProject
52
- ? path.resolve(ios.sourceDir, ios.xcodeProject.name)
53
- : ios.projectPath
54
- ).replace(/\.(xcodeproj|xcworkspace)$/, ""),
55
- }
56
- : null,
54
+ ios:
55
+ platforms.includes("ios") && ios
56
+ ? {
57
+ ...ios,
58
+ // Fix to support previous CLI versions
59
+ projectPath: (ios.xcodeProject
60
+ ? path.resolve(ios.sourceDir, ios.xcodeProject.name)
61
+ : ios.projectPath
62
+ ).replace(/\.(xcodeproj|xcworkspace)$/, ""),
63
+ }
64
+ : null,
57
65
 
58
66
  workingPath,
59
67
  logoPath: path.resolve(workingPath, logoPath),
@@ -0,0 +1,11 @@
1
+ import type { TurboModule } from "react-native";
2
+ import { TurboModuleRegistry } from "react-native";
3
+
4
+ export type VisibilityStatus = "visible" | "hidden" | "transitioning";
5
+
6
+ export interface Spec extends TurboModule {
7
+ hide(duration: number): Promise<void>;
8
+ getVisibilityStatus(): Promise<VisibilityStatus>;
9
+ }
10
+
11
+ export default TurboModuleRegistry.getEnforcing<Spec>("RNBootSplash");
package/src/generate.ts CHANGED
@@ -42,9 +42,9 @@ const getStoryboard = ({
42
42
  width: number;
43
43
  backgroundColor: string;
44
44
  }) => {
45
- const r = (parseInt(hex[1] + hex[2], 16) / 255).toPrecision(15);
46
- const g = (parseInt(hex[3] + hex[4], 16) / 255).toPrecision(15);
47
- const b = (parseInt(hex[5] + hex[6], 16) / 255).toPrecision(15);
45
+ const r = (parseInt("" + hex[1] + hex[2], 16) / 255).toPrecision(15);
46
+ const g = (parseInt("" + hex[3] + hex[4], 16) / 255).toPrecision(15);
47
+ const b = (parseInt("" + hex[5] + hex[6], 16) / 255).toPrecision(15);
48
48
 
49
49
  return `<?xml version="1.0" encoding="UTF-8"?>
50
50
  <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
@@ -102,16 +102,18 @@ const log = {
102
102
  warn: (text: string) => console.log(pc.yellow(text)),
103
103
  };
104
104
 
105
- const isValidHexadecimal = (value: string) =>
106
- /^#?([0-9A-F]{3}){1,2}$/i.test(value);
107
-
108
105
  const toFullHexadecimal = (hex: string) => {
109
- const prefixed = hex[0] === "#" ? hex : `#${hex}`;
110
- const up = prefixed.toUpperCase();
106
+ const up = hex.toUpperCase().replace(/[^0-9A-F]/g, "");
107
+
108
+ if (up.length === 6) {
109
+ return "#" + up;
110
+ }
111
+ if (up.length === 3) {
112
+ return "#" + up[0] + up[0] + up[1] + up[1] + up[2] + up[2];
113
+ }
111
114
 
112
- return up.length === 4
113
- ? "#" + up[1] + up[1] + up[2] + up[2] + up[3] + up[3]
114
- : up;
115
+ log.error("--background-color value is not a valid hexadecimal color.");
116
+ process.exit(1);
115
117
  };
116
118
 
117
119
  export const generate = async ({
@@ -141,13 +143,15 @@ export const generate = async ({
141
143
  flavor: string;
142
144
  logoWidth: number;
143
145
  }) => {
144
- if (!isValidHexadecimal(backgroundColor)) {
145
- log.error("--background-color value is not a valid hexadecimal color.");
146
+ if (!android && !ios) {
147
+ log.error(
148
+ "--platforms value does not include at least one supported platform.",
149
+ );
146
150
  process.exit(1);
147
151
  }
148
152
 
149
- const image = sharp(logoPath);
150
153
  const backgroundColorHex = toFullHexadecimal(backgroundColor);
154
+ const image = sharp(logoPath);
151
155
  const { format } = await image.metadata();
152
156
 
153
157
  if (format !== "png" && format !== "svg") {
package/src/index.ts CHANGED
@@ -1,13 +1,8 @@
1
- import { NativeModules } from "react-native";
1
+ import NativeModule, { VisibilityStatus } from "./NativeRNBootSplash";
2
2
 
3
- export type VisibilityStatus = "visible" | "hidden" | "transitioning";
3
+ export type { VisibilityStatus } from "./NativeRNBootSplash";
4
4
  export type Config = { fade?: boolean; duration?: number };
5
5
 
6
- const NativeModule: {
7
- hide: (duration: number) => Promise<true>;
8
- getVisibilityStatus: () => Promise<VisibilityStatus>;
9
- } = NativeModules.RNBootSplash;
10
-
11
6
  export function hide(config: Config = {}): Promise<void> {
12
7
  const { fade = false, duration = 0 } = config;
13
8
  return NativeModule.hide(fade ? Math.max(duration, 220) : 0).then(() => {});