@react-native-firebase/app-check 25.1.0 → 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.
Files changed (67) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/RNFBAppCheck.podspec +18 -6
  3. package/android/build.gradle +19 -0
  4. package/android/src/main/java/io/invertase/firebase/appcheck/{ReactNativeFirebaseAppCheckModule.java → NativeRNFBTurboAppCheck.java} +46 -34
  5. package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckPackage.java +1 -1
  6. package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckProvider.java +9 -0
  7. package/android/src/main/java/io/invertase/firebase/appcheck/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboAppCheckSpec.java +67 -0
  8. package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/CMakeLists.txt +36 -0
  9. package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/RNFBAppCheckTurboModules-generated.cpp +74 -0
  10. package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/RNFBAppCheckTurboModules.h +31 -0
  11. package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/react/renderer/components/RNFBAppCheckTurboModules/RNFBAppCheckTurboModulesJSI-generated.cpp +85 -0
  12. package/android/src/main/java/io/invertase/firebase/appcheck/generated/jni/react/renderer/components/RNFBAppCheckTurboModules/RNFBAppCheckTurboModulesJSI.h +174 -0
  13. package/app.plugin.js +1 -1
  14. package/dist/module/index.js +210 -6
  15. package/dist/module/index.js.map +1 -1
  16. package/dist/module/version.js +1 -1
  17. package/dist/typescript/lib/index.d.ts +19 -4
  18. package/dist/typescript/lib/index.d.ts.map +1 -1
  19. package/dist/typescript/lib/types/appcheck.d.ts +5 -0
  20. package/dist/typescript/lib/types/appcheck.d.ts.map +1 -1
  21. package/dist/typescript/lib/types/internal.d.ts +1 -1
  22. package/dist/typescript/lib/types/internal.d.ts.map +1 -1
  23. package/dist/typescript/lib/version.d.ts +1 -1
  24. package/ios/RNFBAppCheck/RNFBAppCheckModule.h +3 -8
  25. package/ios/RNFBAppCheck/{RNFBAppCheckModule.m → RNFBAppCheckModule.mm} +66 -43
  26. package/ios/RNFBAppCheck/RNFBAppCheckProvider.m +11 -1
  27. package/ios/RNFBAppCheck.xcodeproj/project.pbxproj +8 -8
  28. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  29. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  30. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  31. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  32. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  33. package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
  34. package/ios/generated/RNFBAppCheckTurboModules/RNFBAppCheckTurboModules-generated.mm +88 -0
  35. package/ios/generated/RNFBAppCheckTurboModules/RNFBAppCheckTurboModules.h +85 -0
  36. package/ios/generated/RNFBAppCheckTurboModulesJSI-generated.cpp +85 -0
  37. package/ios/generated/RNFBAppCheckTurboModulesJSI.h +174 -0
  38. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  39. package/lib/index.ts +335 -8
  40. package/lib/types/appcheck.ts +6 -0
  41. package/lib/types/internal.ts +1 -1
  42. package/lib/version.ts +1 -1
  43. package/package.json +30 -5
  44. package/plugin/build/app.plugin.d.ts +2 -0
  45. package/plugin/build/app.plugin.js +6 -0
  46. package/plugin/build/ios/appDelegate.js +18 -4
  47. package/plugin/src/app.plugin.ts +3 -0
  48. package/plugin/src/ios/appDelegate.ts +23 -4
  49. package/plugin/tsconfig.tsbuildinfo +1 -1
  50. package/react-native.config.js +10 -0
  51. package/specs/NativeRNFBTurboAppCheck.ts +27 -0
  52. package/typedoc.json +1 -1
  53. package/dist/module/modular.js +0 -93
  54. package/dist/module/modular.js.map +0 -1
  55. package/dist/module/namespaced.js +0 -194
  56. package/dist/module/namespaced.js.map +0 -1
  57. package/dist/module/types/namespaced.js +0 -60
  58. package/dist/module/types/namespaced.js.map +0 -1
  59. package/dist/typescript/lib/modular.d.ts +0 -56
  60. package/dist/typescript/lib/modular.d.ts.map +0 -1
  61. package/dist/typescript/lib/namespaced.d.ts +0 -12
  62. package/dist/typescript/lib/namespaced.d.ts.map +0 -1
  63. package/dist/typescript/lib/types/namespaced.d.ts +0 -358
  64. package/dist/typescript/lib/types/namespaced.d.ts.map +0 -1
  65. package/lib/modular.ts +0 -157
  66. package/lib/namespaced.ts +0 -286
  67. 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
- - (dispatch_queue_t)methodQueue {
33
- return dispatch_get_main_queue();
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
- #pragma mark -
48
- #pragma mark Firebase AppCheck Methods
60
+ - (void)invalidate {
61
+ }
49
62
 
50
- RCT_EXPORT_METHOD(activate
51
- : (FIRApp *)firebaseApp
52
- : (nonnull NSString *)siteKeyOrProvider
53
- : (BOOL)isTokenAutoRefreshEnabled
54
- : (RCTPromiseResolveBlock)resolve rejecter
55
- : (RCTPromiseRejectBlock)reject) {
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
- RCT_EXPORT_METHOD(configureProvider
68
- : (FIRApp *)firebaseApp
69
- : (nonnull NSString *)providerName
70
- : (nullable NSString *)debugToken
71
- : (RCTPromiseResolveBlock)resolve rejecter
72
- : (RCTPromiseRejectBlock)reject) {
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
- [[RNFBAppCheckModule sharedInstance].providerFactory configure:firebaseApp
76
- providerName:providerName
77
- debugToken:debugToken];
78
- resolve([NSNull null]);
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
- RCT_EXPORT_METHOD(setTokenAutoRefreshEnabled
82
- : (FIRApp *)firebaseApp
83
- : (BOOL)isTokenAutoRefreshEnabled) {
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
- // Not present in JS or Android - it is iOS-specific so we only call this in testing - it is not in
90
- // index.d.ts
91
- RCT_EXPORT_METHOD(isTokenAutoRefreshEnabled
92
- : (FIRApp *)firebaseApp
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
- RCT_EXPORT_METHOD(getToken
102
- : (FIRApp *)firebaseApp
103
- : (BOOL)forceRefresh
104
- : (RCTPromiseResolveBlock)resolve
105
- : (RCTPromiseRejectBlock)reject) {
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
- RCT_EXPORT_METHOD(getLimitedUseToken
138
- : (FIRApp *)firebaseApp
139
- : (RCTPromiseResolveBlock)resolve
140
- : (RCTPromiseRejectBlock)reject) {
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
- // - determine if debugToken is provided via nullable arg
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.m in Sources */ = {isa = PBXBuildFile; fileRef = 2744B98521F45429004F8E3F /* RNFBAppCheckModule.m */; };
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.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = RNFBAppCheckModule.m; path = RNFBAppCheck/RNFBAppCheckModule.m; sourceTree = SOURCE_ROOT; };
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.m */,
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.m in Sources */,
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 = 10.0;
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 = 10.0;
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 = 10.0;
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 = 10.0;
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 &params)
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 &params);
81
+ };
82
+ } // namespace facebook::react
83
+
84
+ NS_ASSUME_NONNULL_END
85
+ #endif // RNFBAppCheckTurboModules_H