1// Copyright 2018-present 650 Industries. All rights reserved
2
3#import "AppDelegate.h"
4
5#import <React/RCTBundleURLProvider.h>
6#import <React/RCTLinkingManager.h>
7
8#import <ExpoModulesCore-Swift.h>
9
10#if DEBUG
11#import <EXDevLauncher/EXDevLauncherController.h>
12#import <EXDevLauncher-Swift.h>
13#import <EXDevMenuInterface-Swift.h>
14#import <EXDevMenu-Swift.h>
15#endif
16
17@implementation AppDelegate
18
19- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
20{
21#if DEBUG
22  BOOL useDevClient = NO;
23
24  if (!useDevClient) {
25    ExpoDevLauncherReactDelegateHandler.enableAutoSetup = NO;
26
27    // Uncomment to use the default dev-menu from react-native
28    // ExpoDevMenuReactDelegateHandler.enableAutoSetup = NO;
29  }
30#endif
31
32  self.moduleName = @"main";
33
34  // You can add your custom initial props in the dictionary below.
35  // They will be passed down to the ViewController used by React Native.
36  self.initialProps = @{};
37
38  return [super application:application didFinishLaunchingWithOptions:launchOptions];
39}
40
41- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
42{
43#if DEBUG
44  return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@".expo/.virtual-metro-entry"];
45#else
46  return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
47#endif
48}
49
50// Linking API
51- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
52  return [super application:application openURL:url options:options] || [RCTLinkingManager application:application openURL:url options:options];
53}
54
55// Universal Links
56- (BOOL)application:(UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
57  BOOL result = [RCTLinkingManager application:application continueUserActivity:userActivity restorationHandler:restorationHandler];
58  return [super application:application continueUserActivity:userActivity restorationHandler:restorationHandler] || result;
59}
60
61@end
62