yeet
This commit is contained in:
18
node_modules/unimodules-app-loader/ios/UMAppLoader.podspec
generated
vendored
Normal file
18
node_modules/unimodules-app-loader/ios/UMAppLoader.podspec
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
require 'json'
|
||||
|
||||
package = JSON.parse(File.read(File.join(__dir__, '..', 'package.json')))
|
||||
|
||||
Pod::Spec.new do |s|
|
||||
s.name = 'UMAppLoader'
|
||||
s.version = package['version']
|
||||
s.summary = package['description']
|
||||
s.description = package['description']
|
||||
s.license = package['license']
|
||||
s.author = package['author']
|
||||
s.homepage = package['homepage']
|
||||
s.platform = :ios, '10.0'
|
||||
s.source = { git: 'https://github.com/expo/expo.git' }
|
||||
s.source_files = 'UMAppLoader/**/*.{h,m}'
|
||||
s.preserve_paths = 'UMAppLoader/**/*.{h,m}'
|
||||
s.requires_arc = true
|
||||
end
|
11
node_modules/unimodules-app-loader/ios/UMAppLoader/Interfaces/UMAppLoaderInterface.h
generated
vendored
Normal file
11
node_modules/unimodules-app-loader/ios/UMAppLoader/Interfaces/UMAppLoaderInterface.h
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
// Copyright 2018-present 650 Industries. All rights reserved.
|
||||
|
||||
#import <UMAppLoader/UMAppRecordInterface.h>
|
||||
|
||||
@protocol UMAppLoaderInterface <NSObject>
|
||||
|
||||
- (nonnull id<UMAppRecordInterface>)loadAppWithUrl:(nonnull NSString *)url
|
||||
options:(nullable NSDictionary *)options
|
||||
callback:(nullable void(^)(BOOL success, NSError * _Nullable error))callback;
|
||||
|
||||
@end
|
7
node_modules/unimodules-app-loader/ios/UMAppLoader/Interfaces/UMAppRecordInterface.h
generated
vendored
Normal file
7
node_modules/unimodules-app-loader/ios/UMAppLoader/Interfaces/UMAppRecordInterface.h
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
// Copyright 2018-present 650 Industries. All rights reserved.
|
||||
|
||||
@protocol UMAppRecordInterface <NSObject>
|
||||
|
||||
- (void)invalidate;
|
||||
|
||||
@end
|
21
node_modules/unimodules-app-loader/ios/UMAppLoader/UMAppLoaderProvider.h
generated
vendored
Normal file
21
node_modules/unimodules-app-loader/ios/UMAppLoader/UMAppLoaderProvider.h
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright 2018-present 650 Industries. All rights reserved.
|
||||
|
||||
#import <UMAppLoader/UMAppLoaderInterface.h>
|
||||
|
||||
#define UM_REGISTER_APP_LOADER_WITH_CUSTOM_LOAD(loader_name, _custom_load_code) \
|
||||
extern void UMRegisterAppLoader(NSString *, Class); \
|
||||
+ (void)load { \
|
||||
UMRegisterAppLoader(@#loader_name, self); \
|
||||
_custom_load_code \
|
||||
}
|
||||
|
||||
#define UM_REGISTER_APP_LOADER(loader_name) \
|
||||
UM_REGISTER_APP_LOADER_WITH_CUSTOM_LOAD(loader_name,)
|
||||
|
||||
@interface UMAppLoaderProvider : NSObject
|
||||
|
||||
- (nullable id<UMAppLoaderInterface>)createAppLoader:(nonnull NSString *)loaderName;
|
||||
|
||||
+ (nonnull instancetype)sharedInstance;
|
||||
|
||||
@end
|
42
node_modules/unimodules-app-loader/ios/UMAppLoader/UMAppLoaderProvider.m
generated
vendored
Normal file
42
node_modules/unimodules-app-loader/ios/UMAppLoader/UMAppLoaderProvider.m
generated
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
// Copyright 2018-present 650 Industries. All rights reserved.
|
||||
|
||||
#import <UMAppLoader/UMAppLoaderProvider.h>
|
||||
#import <UMAppLoader/UMAppLoaderInterface.h>
|
||||
|
||||
static NSMutableDictionary<NSString *, Class> *UMProvidedAppLoaderClasses;
|
||||
|
||||
extern void UMRegisterAppLoader(NSString *, Class);
|
||||
extern void UMRegisterAppLoader(NSString *loaderName, Class loaderClass)
|
||||
{
|
||||
if ([loaderClass conformsToProtocol:@protocol(UMAppLoaderInterface)]) {
|
||||
if (!UMProvidedAppLoaderClasses) {
|
||||
UMProvidedAppLoaderClasses = [NSMutableDictionary new];
|
||||
}
|
||||
UMProvidedAppLoaderClasses[loaderName] = loaderClass;
|
||||
} else {
|
||||
NSLog(@"UMAppLoader class (%@) doesn't conform to the UMAppLoaderInterface protocol.", NSStringFromClass(loaderClass));
|
||||
}
|
||||
}
|
||||
|
||||
@implementation UMAppLoaderProvider
|
||||
|
||||
- (nullable id<UMAppLoaderInterface>)createAppLoader:(NSString *)loaderName
|
||||
{
|
||||
Class loaderClass = UMProvidedAppLoaderClasses[loaderName];
|
||||
return [loaderClass new];
|
||||
}
|
||||
|
||||
# pragma mark - static
|
||||
|
||||
+ (nonnull instancetype)sharedInstance
|
||||
{
|
||||
static UMAppLoaderProvider *loaderProvider;
|
||||
static dispatch_once_t once;
|
||||
|
||||
dispatch_once(&once, ^{
|
||||
loaderProvider = [[UMAppLoaderProvider alloc] init];
|
||||
});
|
||||
return loaderProvider;
|
||||
}
|
||||
|
||||
@end
|
Reference in New Issue
Block a user