@react-native-firebase/app-check 25.0.1 → 26.0.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.
- package/CHANGELOG.md +36 -0
- package/RNFBAppCheck.podspec +18 -6
- package/android/build.gradle +19 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/{ReactNativeFirebaseAppCheckModule.java → NativeRNFBTurboAppCheck.java} +46 -34
- package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckPackage.java +1 -1
- package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckProvider.java +9 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboAppCheckSpec.java +67 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/CMakeLists.txt +36 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/RNFBAppCheckTurboModules-generated.cpp +74 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/RNFBAppCheckTurboModules.h +31 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/react/renderer/components/RNFBAppCheckTurboModules/RNFBAppCheckTurboModulesJSI-generated.cpp +85 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/react/renderer/components/RNFBAppCheckTurboModules/RNFBAppCheckTurboModulesJSI.h +174 -0
- package/app.plugin.js +1 -1
- package/dist/module/index.js +210 -6
- package/dist/module/index.js.map +1 -1
- package/dist/module/version.js +1 -1
- package/dist/typescript/lib/index.d.ts +19 -4
- package/dist/typescript/lib/index.d.ts.map +1 -1
- package/dist/typescript/lib/types/appcheck.d.ts +5 -0
- package/dist/typescript/lib/types/appcheck.d.ts.map +1 -1
- package/dist/typescript/lib/types/internal.d.ts +1 -1
- package/dist/typescript/lib/types/internal.d.ts.map +1 -1
- package/dist/typescript/lib/version.d.ts +1 -1
- package/ios/RNFBAppCheck/RNFBAppCheckModule.h +3 -8
- package/ios/RNFBAppCheck/{RNFBAppCheckModule.m → RNFBAppCheckModule.mm} +66 -43
- package/ios/RNFBAppCheck/RNFBAppCheckProvider.m +11 -1
- package/ios/RNFBAppCheck.xcodeproj/project.pbxproj +8 -8
- package/ios/generated/RCTAppDependencyProvider.h +25 -0
- package/ios/generated/RCTAppDependencyProvider.mm +55 -0
- package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
- package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
- package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
- package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
- package/ios/generated/RNFBAppCheckTurboModules/RNFBAppCheckTurboModules-generated.mm +88 -0
- package/ios/generated/RNFBAppCheckTurboModules/RNFBAppCheckTurboModules.h +85 -0
- package/ios/generated/RNFBAppCheckTurboModulesJSI-generated.cpp +85 -0
- package/ios/generated/RNFBAppCheckTurboModulesJSI.h +174 -0
- package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
- package/lib/index.ts +335 -8
- package/lib/types/appcheck.ts +6 -0
- package/lib/types/internal.ts +1 -1
- package/lib/version.ts +1 -1
- package/package.json +30 -5
- package/plugin/build/app.plugin.d.ts +2 -0
- package/plugin/build/app.plugin.js +6 -0
- package/plugin/build/ios/appDelegate.js +18 -4
- package/plugin/src/app.plugin.ts +3 -0
- package/plugin/src/ios/appDelegate.ts +23 -4
- package/plugin/tsconfig.tsbuildinfo +1 -1
- package/react-native.config.js +10 -0
- package/specs/NativeRNFBTurboAppCheck.ts +27 -0
- package/typedoc.json +1 -1
- package/dist/module/modular.js +0 -93
- package/dist/module/modular.js.map +0 -1
- package/dist/module/namespaced.js +0 -194
- package/dist/module/namespaced.js.map +0 -1
- package/dist/module/types/namespaced.js +0 -60
- package/dist/module/types/namespaced.js.map +0 -1
- package/dist/typescript/lib/modular.d.ts +0 -56
- package/dist/typescript/lib/modular.d.ts.map +0 -1
- package/dist/typescript/lib/namespaced.d.ts +0 -12
- package/dist/typescript/lib/namespaced.d.ts.map +0 -1
- package/dist/typescript/lib/types/namespaced.d.ts +0 -358
- package/dist/typescript/lib/types/namespaced.d.ts.map +0 -1
- package/lib/modular.ts +0 -157
- package/lib/namespaced.ts +0 -286
- package/lib/types/namespaced.ts +0 -422
|
@@ -18,19 +18,32 @@
|
|
|
18
18
|
#import <Firebase/Firebase.h>
|
|
19
19
|
#import <FirebaseAppCheck/FIRAppCheck.h>
|
|
20
20
|
|
|
21
|
+
#import <React/RCTInvalidating.h>
|
|
21
22
|
#import <React/RCTUtils.h>
|
|
22
23
|
|
|
24
|
+
#import "RNFBApp/RCTConvert+FIRApp.h"
|
|
23
25
|
#import "RNFBApp/RNFBSharedUtils.h"
|
|
24
26
|
#import "RNFBAppCheckModule.h"
|
|
27
|
+
#import "RNFBAppCheckProviderFactory.h"
|
|
28
|
+
#import "RNFBAppCheckTurboModules.h"
|
|
29
|
+
|
|
30
|
+
@interface RNFBAppCheckModule () <NativeRNFBTurboAppCheckSpec, RCTInvalidating>
|
|
31
|
+
|
|
32
|
+
@property RNFBAppCheckProviderFactory *_Nullable providerFactory;
|
|
33
|
+
|
|
34
|
+
@end
|
|
25
35
|
|
|
26
36
|
@implementation RNFBAppCheckModule
|
|
27
|
-
#pragma mark -
|
|
28
|
-
#pragma mark Module Setup
|
|
29
37
|
|
|
30
|
-
RCT_EXPORT_MODULE()
|
|
38
|
+
RCT_EXPORT_MODULE(NativeRNFBTurboAppCheck)
|
|
31
39
|
|
|
32
|
-
|
|
33
|
-
return
|
|
40
|
+
+ (BOOL)requiresMainQueueSetup {
|
|
41
|
+
return NO;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
|
|
45
|
+
(const facebook::react::ObjCTurboModule::InitParams &)params {
|
|
46
|
+
return std::make_shared<facebook::react::NativeRNFBTurboAppCheckSpecJSI>(params);
|
|
34
47
|
}
|
|
35
48
|
|
|
36
49
|
+ (instancetype)sharedInstance {
|
|
@@ -44,15 +57,15 @@ RCT_EXPORT_MODULE();
|
|
|
44
57
|
return sharedInstance;
|
|
45
58
|
}
|
|
46
59
|
|
|
47
|
-
|
|
48
|
-
|
|
60
|
+
- (void)invalidate {
|
|
61
|
+
}
|
|
49
62
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
63
|
+
- (void)activate:(NSString *)appName
|
|
64
|
+
siteKeyProvider:(NSString *)siteKeyProvider
|
|
65
|
+
isTokenAutoRefreshEnabled:(BOOL)isTokenAutoRefreshEnabled
|
|
66
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
67
|
+
reject:(RCTPromiseRejectBlock)reject {
|
|
68
|
+
FIRApp *firebaseApp = [RCTConvert firAppFromString:appName];
|
|
56
69
|
DLog(@"deprecated API, provider will be deviceCheck / token refresh %d for app %@",
|
|
57
70
|
isTokenAutoRefreshEnabled, firebaseApp.name);
|
|
58
71
|
[[RNFBAppCheckModule sharedInstance].providerFactory configure:firebaseApp
|
|
@@ -64,52 +77,57 @@ RCT_EXPORT_METHOD(activate
|
|
|
64
77
|
resolve([NSNull null]);
|
|
65
78
|
}
|
|
66
79
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
:
|
|
71
|
-
|
|
72
|
-
|
|
80
|
+
- (void)configureProvider:(NSString *)appName
|
|
81
|
+
providerName:(NSString *)providerName
|
|
82
|
+
debugToken:(NSString *)debugToken
|
|
83
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
84
|
+
reject:(RCTPromiseRejectBlock)reject {
|
|
85
|
+
FIRApp *firebaseApp = [RCTConvert firAppFromString:appName];
|
|
73
86
|
DLog(@"appName/providerName/debugToken: %@/%@/%@", firebaseApp.name, providerName,
|
|
74
87
|
(debugToken == nil ? @"null" : @"(not shown)"));
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
88
|
+
@try {
|
|
89
|
+
[[RNFBAppCheckModule sharedInstance].providerFactory configure:firebaseApp
|
|
90
|
+
providerName:providerName
|
|
91
|
+
debugToken:debugToken];
|
|
92
|
+
resolve([NSNull null]);
|
|
93
|
+
} @catch (NSException *exception) {
|
|
94
|
+
[RNFBSharedUtils rejectPromiseWithUserInfo:reject
|
|
95
|
+
userInfo:(NSMutableDictionary *)@{
|
|
96
|
+
@"code" : @"unknown",
|
|
97
|
+
@"message" : exception.reason ?: @"internal-error",
|
|
98
|
+
}];
|
|
99
|
+
}
|
|
79
100
|
}
|
|
80
101
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
102
|
+
- (void)setTokenAutoRefreshEnabled:(NSString *)appName
|
|
103
|
+
isTokenAutoRefreshEnabled:(BOOL)isTokenAutoRefreshEnabled {
|
|
104
|
+
FIRApp *firebaseApp = [RCTConvert firAppFromString:appName];
|
|
84
105
|
DLog(@"app/isTokenAutoRefreshEnabled: %@/%d", firebaseApp.name, isTokenAutoRefreshEnabled);
|
|
85
106
|
FIRAppCheck *appCheck = [FIRAppCheck appCheckWithApp:firebaseApp];
|
|
86
107
|
appCheck.isTokenAutoRefreshEnabled = isTokenAutoRefreshEnabled;
|
|
87
108
|
}
|
|
88
109
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
: (RCTPromiseResolveBlock)resolve rejecter
|
|
94
|
-
: (RCTPromiseRejectBlock)reject) {
|
|
110
|
+
- (void)isTokenAutoRefreshEnabled:(NSString *)appName
|
|
111
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
112
|
+
reject:(RCTPromiseRejectBlock)reject {
|
|
113
|
+
FIRApp *firebaseApp = [RCTConvert firAppFromString:appName];
|
|
95
114
|
FIRAppCheck *appCheck = [FIRAppCheck appCheckWithApp:firebaseApp];
|
|
96
115
|
BOOL isTokenAutoRefreshEnabled = appCheck.isTokenAutoRefreshEnabled;
|
|
97
116
|
DLog(@"app/isTokenAutoRefreshEnabled: %@/%d", firebaseApp.name, isTokenAutoRefreshEnabled);
|
|
98
117
|
resolve([NSNumber numberWithBool:isTokenAutoRefreshEnabled]);
|
|
99
118
|
}
|
|
100
119
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
120
|
+
- (void)getToken:(NSString *)appName
|
|
121
|
+
forceRefresh:(BOOL)forceRefresh
|
|
122
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
123
|
+
reject:(RCTPromiseRejectBlock)reject {
|
|
124
|
+
FIRApp *firebaseApp = [RCTConvert firAppFromString:appName];
|
|
106
125
|
FIRAppCheck *appCheck = [FIRAppCheck appCheckWithApp:firebaseApp];
|
|
107
126
|
DLog(@"appName %@", firebaseApp.name);
|
|
108
127
|
[appCheck
|
|
109
128
|
tokenForcingRefresh:forceRefresh
|
|
110
129
|
completion:^(FIRAppCheckToken *_Nullable token, NSError *_Nullable error) {
|
|
111
130
|
if (error != nil) {
|
|
112
|
-
// Handle any errors if the token was not retrieved.
|
|
113
131
|
DLog(@"RNFBAppCheck - getToken - Unable to retrieve App Check token: %@", error);
|
|
114
132
|
[RNFBSharedUtils rejectPromiseWithUserInfo:reject
|
|
115
133
|
userInfo:(NSMutableDictionary *)@{
|
|
@@ -134,16 +152,15 @@ RCT_EXPORT_METHOD(getToken
|
|
|
134
152
|
}];
|
|
135
153
|
}
|
|
136
154
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
155
|
+
- (void)getLimitedUseToken:(NSString *)appName
|
|
156
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
157
|
+
reject:(RCTPromiseRejectBlock)reject {
|
|
158
|
+
FIRApp *firebaseApp = [RCTConvert firAppFromString:appName];
|
|
141
159
|
FIRAppCheck *appCheck = [FIRAppCheck appCheckWithApp:firebaseApp];
|
|
142
160
|
DLog(@"appName %@", firebaseApp.name);
|
|
143
161
|
[appCheck limitedUseTokenWithCompletion:^(FIRAppCheckToken *_Nullable token,
|
|
144
162
|
NSError *_Nullable error) {
|
|
145
163
|
if (error != nil) {
|
|
146
|
-
// Handle any errors if the token was not retrieved.
|
|
147
164
|
DLog(@"RNFBAppCheck - getLimitedUseToken - Unable to retrieve App Check token: %@", error);
|
|
148
165
|
[RNFBSharedUtils rejectPromiseWithUserInfo:reject
|
|
149
166
|
userInfo:(NSMutableDictionary *)@{
|
|
@@ -168,4 +185,10 @@ RCT_EXPORT_METHOD(getLimitedUseToken
|
|
|
168
185
|
}];
|
|
169
186
|
}
|
|
170
187
|
|
|
188
|
+
- (void)addAppCheckListener:(NSString *)appName {
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
- (void)removeAppCheckListener:(NSString *)appName {
|
|
192
|
+
}
|
|
193
|
+
|
|
171
194
|
@end
|
|
@@ -36,7 +36,8 @@
|
|
|
36
36
|
|
|
37
37
|
DLog(@"appName %@", app.name);
|
|
38
38
|
|
|
39
|
-
|
|
39
|
+
self.delegateProvider = nil;
|
|
40
|
+
|
|
40
41
|
if ([providerName isEqualToString:@"debug"]) {
|
|
41
42
|
// The firebase-ios-sdk debug app check provider will take a token from environment if it
|
|
42
43
|
// exists:
|
|
@@ -73,6 +74,15 @@
|
|
|
73
74
|
self.delegateProvider = [[FIRDeviceCheckProvider alloc] initWithApp:app];
|
|
74
75
|
}
|
|
75
76
|
}
|
|
77
|
+
|
|
78
|
+
if (self.delegateProvider == nil) {
|
|
79
|
+
NSString *message =
|
|
80
|
+
[NSString stringWithFormat:@"Unknown provider name \"%@\". Valid providers are: debug, "
|
|
81
|
+
"deviceCheck, appAttest, appAttestWithDeviceCheckFallback.",
|
|
82
|
+
providerName ?: @"(null)"];
|
|
83
|
+
NSLog(@"RNFBAppCheck: %@", message);
|
|
84
|
+
@throw [NSException exceptionWithName:@"RNFBAppCheckException" reason:message userInfo:nil];
|
|
85
|
+
}
|
|
76
86
|
}
|
|
77
87
|
|
|
78
88
|
- (void)getTokenWithCompletion:(nonnull void (^)(FIRAppCheckToken *_Nullable,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
objects = {
|
|
8
8
|
|
|
9
9
|
/* Begin PBXBuildFile section */
|
|
10
|
-
2744B98621F45429004F8E3F /* RNFBAppCheckModule.
|
|
10
|
+
2744B98621F45429004F8E3F /* RNFBAppCheckModule.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744B98521F45429004F8E3F /* RNFBAppCheckModule.mm */; };
|
|
11
11
|
/* End PBXBuildFile section */
|
|
12
12
|
|
|
13
13
|
/* Begin PBXCopyFilesBuildPhase section */
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
/* Begin PBXFileReference section */
|
|
26
26
|
2744B98221F45429004F8E3F /* libRNFBAppCheck.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNFBAppCheck.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
|
27
27
|
2744B98421F45429004F8E3F /* RNFBAppCheckModule.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RNFBAppCheckModule.h; path = RNFBAppCheck/RNFBAppCheckModule.h; sourceTree = SOURCE_ROOT; };
|
|
28
|
-
2744B98521F45429004F8E3F /* RNFBAppCheckModule.
|
|
28
|
+
2744B98521F45429004F8E3F /* RNFBAppCheckModule.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = RNFBAppCheckModule.mm; path = RNFBAppCheck/RNFBAppCheckModule.mm; sourceTree = SOURCE_ROOT; };
|
|
29
29
|
/* End PBXFileReference section */
|
|
30
30
|
|
|
31
31
|
/* Begin PBXFrameworksBuildPhase section */
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
2744B9A121F48736004F8E3F /* converters */,
|
|
54
54
|
2744B98C21F45C64004F8E3F /* common */,
|
|
55
55
|
2744B98421F45429004F8E3F /* RNFBAppCheckModule.h */,
|
|
56
|
-
2744B98521F45429004F8E3F /* RNFBAppCheckModule.
|
|
56
|
+
2744B98521F45429004F8E3F /* RNFBAppCheckModule.mm */,
|
|
57
57
|
);
|
|
58
58
|
path = RNFBAppCheck;
|
|
59
59
|
sourceTree = "<group>";
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
isa = PBXSourcesBuildPhase;
|
|
125
125
|
buildActionMask = 2147483647;
|
|
126
126
|
files = (
|
|
127
|
-
2744B98621F45429004F8E3F /* RNFBAppCheckModule.
|
|
127
|
+
2744B98621F45429004F8E3F /* RNFBAppCheckModule.mm in Sources */,
|
|
128
128
|
);
|
|
129
129
|
runOnlyForDeploymentPostprocessing = 0;
|
|
130
130
|
};
|
|
@@ -159,7 +159,7 @@
|
|
|
159
159
|
);
|
|
160
160
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
|
161
161
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
|
162
|
-
IPHONEOS_DEPLOYMENT_TARGET =
|
|
162
|
+
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
|
163
163
|
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
|
|
164
164
|
MTL_FAST_MATH = YES;
|
|
165
165
|
OTHER_LDFLAGS = "-ObjC";
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
|
194
194
|
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
|
195
195
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
|
196
|
-
IPHONEOS_DEPLOYMENT_TARGET =
|
|
196
|
+
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
|
197
197
|
MTL_ENABLE_DEBUG_INFO = NO;
|
|
198
198
|
MTL_FAST_MATH = YES;
|
|
199
199
|
OTHER_LDFLAGS = "-ObjC";
|
|
@@ -254,7 +254,7 @@
|
|
|
254
254
|
"$(SRCROOT)/../../../node_modules/react-native-firebase/ios/**",
|
|
255
255
|
"$(SRCROOT)/../../../packages/app/ios/**",
|
|
256
256
|
);
|
|
257
|
-
IPHONEOS_DEPLOYMENT_TARGET =
|
|
257
|
+
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
|
258
258
|
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
|
259
259
|
MACH_O_TYPE = staticlib;
|
|
260
260
|
OTHER_LDFLAGS = "$(inherited)";
|
|
@@ -312,7 +312,7 @@
|
|
|
312
312
|
"$(SRCROOT)/../../../node_modules/react-native-firebase/ios/**",
|
|
313
313
|
"$(SRCROOT)/../../../packages/app/ios/**",
|
|
314
314
|
);
|
|
315
|
-
IPHONEOS_DEPLOYMENT_TARGET =
|
|
315
|
+
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
|
316
316
|
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
|
317
317
|
MACH_O_TYPE = staticlib;
|
|
318
318
|
ONLY_ACTIVE_ARCH = YES;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
#import <Foundation/Foundation.h>
|
|
10
|
+
|
|
11
|
+
#if __has_include(<React-RCTAppDelegate/RCTDependencyProvider.h>)
|
|
12
|
+
#import <React-RCTAppDelegate/RCTDependencyProvider.h>
|
|
13
|
+
#elif __has_include(<React_RCTAppDelegate/RCTDependencyProvider.h>)
|
|
14
|
+
#import <React_RCTAppDelegate/RCTDependencyProvider.h>
|
|
15
|
+
#else
|
|
16
|
+
#import "RCTDependencyProvider.h"
|
|
17
|
+
#endif
|
|
18
|
+
|
|
19
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
20
|
+
|
|
21
|
+
@interface RCTAppDependencyProvider : NSObject <RCTDependencyProvider>
|
|
22
|
+
|
|
23
|
+
@end
|
|
24
|
+
|
|
25
|
+
NS_ASSUME_NONNULL_END
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#import "RCTAppDependencyProvider.h"
|
|
9
|
+
#import <ReactCodegen/RCTModulesConformingToProtocolsProvider.h>
|
|
10
|
+
#import <ReactCodegen/RCTThirdPartyComponentsProvider.h>
|
|
11
|
+
|
|
12
|
+
@implementation RCTAppDependencyProvider {
|
|
13
|
+
NSArray<NSString *> * _URLRequestHandlerClassNames;
|
|
14
|
+
NSArray<NSString *> * _imageDataDecoderClassNames;
|
|
15
|
+
NSArray<NSString *> * _imageURLLoaderClassNames;
|
|
16
|
+
NSDictionary<NSString *,Class<RCTComponentViewProtocol>> * _thirdPartyFabricComponents;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
- (nonnull NSArray<NSString *> *)URLRequestHandlerClassNames {
|
|
20
|
+
static dispatch_once_t requestUrlToken;
|
|
21
|
+
dispatch_once(&requestUrlToken, ^{
|
|
22
|
+
self->_URLRequestHandlerClassNames = RCTModulesConformingToProtocolsProvider.URLRequestHandlerClassNames;
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
return _URLRequestHandlerClassNames;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
- (nonnull NSArray<NSString *> *)imageDataDecoderClassNames {
|
|
29
|
+
static dispatch_once_t dataDecoderToken;
|
|
30
|
+
dispatch_once(&dataDecoderToken, ^{
|
|
31
|
+
_imageDataDecoderClassNames = RCTModulesConformingToProtocolsProvider.imageDataDecoderClassNames;
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
return _imageDataDecoderClassNames;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
- (nonnull NSArray<NSString *> *)imageURLLoaderClassNames {
|
|
38
|
+
static dispatch_once_t urlLoaderToken;
|
|
39
|
+
dispatch_once(&urlLoaderToken, ^{
|
|
40
|
+
_imageURLLoaderClassNames = RCTModulesConformingToProtocolsProvider.imageURLLoaderClassNames;
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
return _imageURLLoaderClassNames;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
- (nonnull NSDictionary<NSString *,Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents {
|
|
47
|
+
static dispatch_once_t nativeComponentsToken;
|
|
48
|
+
dispatch_once(&nativeComponentsToken, ^{
|
|
49
|
+
_thirdPartyFabricComponents = RCTThirdPartyComponentsProvider.thirdPartyFabricComponents;
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
return _thirdPartyFabricComponents;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
@interface RCTModulesConformingToProtocolsProvider: NSObject
|
|
11
|
+
|
|
12
|
+
+(NSArray<NSString *> *)imageURLLoaderClassNames;
|
|
13
|
+
|
|
14
|
+
+(NSArray<NSString *> *)imageDataDecoderClassNames;
|
|
15
|
+
|
|
16
|
+
+(NSArray<NSString *> *)URLRequestHandlerClassNames;
|
|
17
|
+
|
|
18
|
+
@end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#import "RCTModulesConformingToProtocolsProvider.h"
|
|
9
|
+
|
|
10
|
+
@implementation RCTModulesConformingToProtocolsProvider
|
|
11
|
+
|
|
12
|
+
+(NSArray<NSString *> *)imageURLLoaderClassNames
|
|
13
|
+
{
|
|
14
|
+
return @[
|
|
15
|
+
|
|
16
|
+
];
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
+(NSArray<NSString *> *)imageDataDecoderClassNames
|
|
20
|
+
{
|
|
21
|
+
return @[
|
|
22
|
+
|
|
23
|
+
];
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
+(NSArray<NSString *> *)URLRequestHandlerClassNames
|
|
27
|
+
{
|
|
28
|
+
return @[
|
|
29
|
+
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
@protocol RCTComponentViewProtocol;
|
|
11
|
+
|
|
12
|
+
@interface RCTThirdPartyComponentsProvider: NSObject
|
|
13
|
+
|
|
14
|
+
+ (NSDictionary<NSString *, Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents;
|
|
15
|
+
|
|
16
|
+
@end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
#import <Foundation/Foundation.h>
|
|
10
|
+
|
|
11
|
+
#import "RCTThirdPartyComponentsProvider.h"
|
|
12
|
+
#import <React/RCTComponentViewProtocol.h>
|
|
13
|
+
|
|
14
|
+
@implementation RCTThirdPartyComponentsProvider
|
|
15
|
+
|
|
16
|
+
+ (NSDictionary<NSString *, Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents
|
|
17
|
+
{
|
|
18
|
+
return @{
|
|
19
|
+
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@end
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
+
*
|
|
4
|
+
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
+
* once the code is regenerated.
|
|
6
|
+
*
|
|
7
|
+
* @generated by codegen project: GenerateModuleObjCpp
|
|
8
|
+
*
|
|
9
|
+
* We create an umbrella header (and corresponding implementation) here since
|
|
10
|
+
* Cxx compilation in BUCK has a limitation: source-code producing genrule()s
|
|
11
|
+
* must have a single output. More files => more genrule()s => slower builds.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
#import "RNFBAppCheckTurboModules.h"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@implementation NativeRNFBTurboAppCheckSpecBase
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
- (void)setEventEmitterCallback:(EventEmitterCallbackWrapper *)eventEmitterCallbackWrapper
|
|
21
|
+
{
|
|
22
|
+
_eventEmitterCallback = std::move(eventEmitterCallbackWrapper->_eventEmitterCallback);
|
|
23
|
+
}
|
|
24
|
+
@end
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
namespace facebook::react {
|
|
28
|
+
|
|
29
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_activate(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
30
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "activate", @selector(activate:siteKeyProvider:isTokenAutoRefreshEnabled:resolve:reject:), args, count);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_configureProvider(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
34
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "configureProvider", @selector(configureProvider:providerName:debugToken:resolve:reject:), args, count);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_setTokenAutoRefreshEnabled(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
38
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "setTokenAutoRefreshEnabled", @selector(setTokenAutoRefreshEnabled:isTokenAutoRefreshEnabled:), args, count);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_isTokenAutoRefreshEnabled(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
42
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "isTokenAutoRefreshEnabled", @selector(isTokenAutoRefreshEnabled:resolve:reject:), args, count);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_getToken(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
46
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "getToken", @selector(getToken:forceRefresh:resolve:reject:), args, count);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_getLimitedUseToken(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
50
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "getLimitedUseToken", @selector(getLimitedUseToken:resolve:reject:), args, count);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_addAppCheckListener(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
54
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "addAppCheckListener", @selector(addAppCheckListener:), args, count);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
static facebook::jsi::Value __hostFunction_NativeRNFBTurboAppCheckSpecJSI_removeAppCheckListener(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
|
|
58
|
+
return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, VoidKind, "removeAppCheckListener", @selector(removeAppCheckListener:), args, count);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
NativeRNFBTurboAppCheckSpecJSI::NativeRNFBTurboAppCheckSpecJSI(const ObjCTurboModule::InitParams ¶ms)
|
|
62
|
+
: ObjCTurboModule(params) {
|
|
63
|
+
|
|
64
|
+
methodMap_["activate"] = MethodMetadata {3, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_activate};
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
methodMap_["configureProvider"] = MethodMetadata {3, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_configureProvider};
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
methodMap_["setTokenAutoRefreshEnabled"] = MethodMetadata {2, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_setTokenAutoRefreshEnabled};
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
methodMap_["isTokenAutoRefreshEnabled"] = MethodMetadata {1, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_isTokenAutoRefreshEnabled};
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
methodMap_["getToken"] = MethodMetadata {2, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_getToken};
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
methodMap_["getLimitedUseToken"] = MethodMetadata {1, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_getLimitedUseToken};
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
methodMap_["addAppCheckListener"] = MethodMetadata {1, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_addAppCheckListener};
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
methodMap_["removeAppCheckListener"] = MethodMetadata {1, __hostFunction_NativeRNFBTurboAppCheckSpecJSI_removeAppCheckListener};
|
|
86
|
+
|
|
87
|
+
}
|
|
88
|
+
} // namespace facebook::react
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
+
*
|
|
4
|
+
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
+
* once the code is regenerated.
|
|
6
|
+
*
|
|
7
|
+
* @generated by codegen project: GenerateModuleObjCpp
|
|
8
|
+
*
|
|
9
|
+
* We create an umbrella header (and corresponding implementation) here since
|
|
10
|
+
* Cxx compilation in BUCK has a limitation: source-code producing genrule()s
|
|
11
|
+
* must have a single output. More files => more genrule()s => slower builds.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
#ifndef __cplusplus
|
|
15
|
+
#error This file must be compiled as Obj-C++. If you are importing it, you must change your file extension to .mm.
|
|
16
|
+
#endif
|
|
17
|
+
|
|
18
|
+
// Avoid multiple includes of RNFBAppCheckTurboModules symbols
|
|
19
|
+
#ifndef RNFBAppCheckTurboModules_H
|
|
20
|
+
#define RNFBAppCheckTurboModules_H
|
|
21
|
+
|
|
22
|
+
#import <Foundation/Foundation.h>
|
|
23
|
+
#import <RCTRequired/RCTRequired.h>
|
|
24
|
+
#import <RCTTypeSafety/RCTConvertHelpers.h>
|
|
25
|
+
#import <RCTTypeSafety/RCTTypedModuleConstants.h>
|
|
26
|
+
#import <React/RCTBridgeModule.h>
|
|
27
|
+
#import <React/RCTCxxConvert.h>
|
|
28
|
+
#import <React/RCTManagedPointer.h>
|
|
29
|
+
#import <ReactCommon/RCTTurboModule.h>
|
|
30
|
+
#import <optional>
|
|
31
|
+
#import <vector>
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
35
|
+
|
|
36
|
+
@protocol NativeRNFBTurboAppCheckSpec <RCTBridgeModule, RCTTurboModule>
|
|
37
|
+
|
|
38
|
+
- (void)activate:(NSString *)appName
|
|
39
|
+
siteKeyProvider:(NSString *)siteKeyProvider
|
|
40
|
+
isTokenAutoRefreshEnabled:(BOOL)isTokenAutoRefreshEnabled
|
|
41
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
42
|
+
reject:(RCTPromiseRejectBlock)reject;
|
|
43
|
+
- (void)configureProvider:(NSString *)appName
|
|
44
|
+
providerName:(NSString *)providerName
|
|
45
|
+
debugToken:(NSString * _Nullable)debugToken
|
|
46
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
47
|
+
reject:(RCTPromiseRejectBlock)reject;
|
|
48
|
+
- (void)setTokenAutoRefreshEnabled:(NSString *)appName
|
|
49
|
+
isTokenAutoRefreshEnabled:(BOOL)isTokenAutoRefreshEnabled;
|
|
50
|
+
- (void)isTokenAutoRefreshEnabled:(NSString *)appName
|
|
51
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
52
|
+
reject:(RCTPromiseRejectBlock)reject;
|
|
53
|
+
- (void)getToken:(NSString *)appName
|
|
54
|
+
forceRefresh:(BOOL)forceRefresh
|
|
55
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
56
|
+
reject:(RCTPromiseRejectBlock)reject;
|
|
57
|
+
- (void)getLimitedUseToken:(NSString *)appName
|
|
58
|
+
resolve:(RCTPromiseResolveBlock)resolve
|
|
59
|
+
reject:(RCTPromiseRejectBlock)reject;
|
|
60
|
+
- (void)addAppCheckListener:(NSString *)appName;
|
|
61
|
+
- (void)removeAppCheckListener:(NSString *)appName;
|
|
62
|
+
|
|
63
|
+
@end
|
|
64
|
+
|
|
65
|
+
@interface NativeRNFBTurboAppCheckSpecBase : NSObject {
|
|
66
|
+
@protected
|
|
67
|
+
facebook::react::EventEmitterCallback _eventEmitterCallback;
|
|
68
|
+
}
|
|
69
|
+
- (void)setEventEmitterCallback:(EventEmitterCallbackWrapper *)eventEmitterCallbackWrapper;
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
@end
|
|
73
|
+
|
|
74
|
+
namespace facebook::react {
|
|
75
|
+
/**
|
|
76
|
+
* ObjC++ class for module 'NativeRNFBTurboAppCheck'
|
|
77
|
+
*/
|
|
78
|
+
class JSI_EXPORT NativeRNFBTurboAppCheckSpecJSI : public ObjCTurboModule {
|
|
79
|
+
public:
|
|
80
|
+
NativeRNFBTurboAppCheckSpecJSI(const ObjCTurboModule::InitParams ¶ms);
|
|
81
|
+
};
|
|
82
|
+
} // namespace facebook::react
|
|
83
|
+
|
|
84
|
+
NS_ASSUME_NONNULL_END
|
|
85
|
+
#endif // RNFBAppCheckTurboModules_H
|