@react-native-firebase/app-check 23.8.0 → 23.8.2
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 +788 -0
- package/RNFBAppCheck.podspec +50 -0
- package/android/.editorconfig +10 -0
- package/android/build.gradle +110 -0
- package/android/lint.xml +5 -0
- package/android/settings.gradle +1 -0
- package/android/src/main/AndroidManifest.xml +7 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckModule.java +281 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckPackage.java +41 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckProvider.java +97 -0
- package/android/src/main/java/io/invertase/firebase/appcheck/ReactNativeFirebaseAppCheckProviderFactory.java +67 -0
- package/app.plugin.js +1 -0
- package/dist/commonjs/version.js +1 -1
- package/dist/commonjs/web/RNFBAppCheckModule.android.js +3 -2
- package/dist/commonjs/web/RNFBAppCheckModule.android.js.map +1 -2
- package/dist/commonjs/web/RNFBAppCheckModule.ios.js +3 -2
- package/dist/commonjs/web/RNFBAppCheckModule.ios.js.map +1 -2
- package/dist/commonjs/web/RNFBAppCheckModule.js +5 -11
- package/dist/commonjs/web/RNFBAppCheckModule.js.map +1 -1
- package/dist/module/version.js +1 -1
- package/dist/module/web/RNFBAppCheckModule.android.js +3 -2
- package/dist/module/web/RNFBAppCheckModule.android.js.map +1 -2
- package/dist/module/web/RNFBAppCheckModule.ios.js +3 -2
- package/dist/module/web/RNFBAppCheckModule.ios.js.map +1 -2
- package/dist/module/web/RNFBAppCheckModule.js +6 -7
- package/dist/module/web/RNFBAppCheckModule.js.map +1 -1
- package/dist/typescript/commonjs/lib/namespaced.d.ts +1 -1
- package/dist/typescript/commonjs/lib/version.d.ts +1 -1
- package/dist/typescript/module/lib/namespaced.d.ts +1 -1
- package/dist/typescript/module/lib/version.d.ts +1 -1
- package/ios/RNFBAppCheck/RNFBAppCheckModule.h +30 -0
- package/ios/RNFBAppCheck/RNFBAppCheckModule.m +171 -0
- package/ios/RNFBAppCheck/RNFBAppCheckProvider.h +33 -0
- package/ios/RNFBAppCheck/RNFBAppCheckProvider.m +90 -0
- package/ios/RNFBAppCheck/RNFBAppCheckProviderFactory.h +28 -0
- package/ios/RNFBAppCheck/RNFBAppCheckProviderFactory.m +61 -0
- package/ios/RNFBAppCheck.xcodeproj/project.pbxproj +349 -0
- package/ios/RNFBAppCheck.xcodeproj/xcshareddata/IDETemplateMacros.plist +24 -0
- package/lib/version.ts +1 -1
- package/package.json +5 -15
- package/plugin/build/index.d.ts +3 -0
- package/plugin/build/index.js +15 -0
- package/plugin/build/ios/appDelegate.d.ts +6 -0
- package/plugin/build/ios/appDelegate.js +137 -0
- package/plugin/build/ios/index.d.ts +2 -0
- package/plugin/build/ios/index.js +5 -0
- package/plugin/tsconfig.tsbuildinfo +1 -0
- package/lib/web/RNFBAppCheckModule.android.js +0 -2
- package/lib/web/RNFBAppCheckModule.ios.js +0 -2
- package/lib/web/RNFBAppCheckModule.js +0 -95
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
getApp,
|
|
3
|
-
initializeAppCheck,
|
|
4
|
-
getToken,
|
|
5
|
-
getLimitedUseToken,
|
|
6
|
-
setTokenAutoRefreshEnabled,
|
|
7
|
-
CustomProvider,
|
|
8
|
-
onTokenChanged,
|
|
9
|
-
makeIDBAvailable,
|
|
10
|
-
} from '@react-native-firebase/app/lib/internal/web/firebaseAppCheck';
|
|
11
|
-
import { guard, emitEvent } from '@react-native-firebase/app/lib/internal/web/utils';
|
|
12
|
-
|
|
13
|
-
let appCheckInstances = {};
|
|
14
|
-
let listenersForApp = {};
|
|
15
|
-
|
|
16
|
-
function getAppCheckInstanceForApp(appName) {
|
|
17
|
-
if (!appCheckInstances[appName]) {
|
|
18
|
-
throw new Error(
|
|
19
|
-
`firebase AppCheck instance for app ${appName} has not been initialized, ensure you have called initializeAppCheck() first.`,
|
|
20
|
-
);
|
|
21
|
-
}
|
|
22
|
-
return appCheckInstances[appName];
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* This is a 'NativeModule' for the web platform.
|
|
27
|
-
* Methods here are identical to the ones found in
|
|
28
|
-
* the native android/ios modules e.g. `@ReactMethod` annotated
|
|
29
|
-
* java methods on Android.
|
|
30
|
-
*/
|
|
31
|
-
export default {
|
|
32
|
-
initializeAppCheck(appName, options) {
|
|
33
|
-
makeIDBAvailable();
|
|
34
|
-
return guard(async () => {
|
|
35
|
-
if (appCheckInstances[appName]) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
const { provider, isTokenAutoRefreshEnabled } = options;
|
|
39
|
-
const _provider = new CustomProvider({
|
|
40
|
-
getToken() {
|
|
41
|
-
return provider.getToken();
|
|
42
|
-
},
|
|
43
|
-
});
|
|
44
|
-
appCheckInstances[appName] = initializeAppCheck(getApp(appName), {
|
|
45
|
-
provider: _provider,
|
|
46
|
-
isTokenAutoRefreshEnabled,
|
|
47
|
-
});
|
|
48
|
-
return null;
|
|
49
|
-
});
|
|
50
|
-
},
|
|
51
|
-
setTokenAutoRefreshEnabled(appName, isTokenAutoRefreshEnabled) {
|
|
52
|
-
return guard(async () => {
|
|
53
|
-
const instance = getAppCheckInstanceForApp(appName);
|
|
54
|
-
setTokenAutoRefreshEnabled(instance, isTokenAutoRefreshEnabled);
|
|
55
|
-
return null;
|
|
56
|
-
});
|
|
57
|
-
},
|
|
58
|
-
getLimitedUseToken(appName) {
|
|
59
|
-
return guard(async () => {
|
|
60
|
-
const instance = getAppCheckInstanceForApp(appName);
|
|
61
|
-
return getLimitedUseToken(instance);
|
|
62
|
-
});
|
|
63
|
-
},
|
|
64
|
-
getToken(appName, forceRefresh) {
|
|
65
|
-
return guard(async () => {
|
|
66
|
-
const instance = getAppCheckInstanceForApp(appName);
|
|
67
|
-
return getToken(instance, forceRefresh);
|
|
68
|
-
});
|
|
69
|
-
},
|
|
70
|
-
addAppCheckListener(appName) {
|
|
71
|
-
return guard(async () => {
|
|
72
|
-
if (listenersForApp[appName]) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
const instance = getAppCheckInstanceForApp(appName);
|
|
76
|
-
listenersForApp[appName] = onTokenChanged(instance, tokenResult => {
|
|
77
|
-
emitEvent('appCheck_token_changed', {
|
|
78
|
-
appName,
|
|
79
|
-
...tokenResult,
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
return null;
|
|
83
|
-
});
|
|
84
|
-
},
|
|
85
|
-
removeAppCheckListener(appName) {
|
|
86
|
-
return guard(async () => {
|
|
87
|
-
if (!listenersForApp[appName]) {
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
listenersForApp[appName]();
|
|
91
|
-
delete listenersForApp[appName];
|
|
92
|
-
return null;
|
|
93
|
-
});
|
|
94
|
-
},
|
|
95
|
-
};
|