@react-native-firebase/app 23.7.0 → 23.8.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/dist/commonjs/FirebaseApp.js +85 -0
- package/dist/commonjs/FirebaseApp.js.map +1 -0
- package/dist/commonjs/common/Base64.js +106 -0
- package/dist/commonjs/common/Base64.js.map +1 -0
- package/dist/commonjs/common/MutatableParams.js +50 -0
- package/dist/commonjs/common/MutatableParams.js.map +1 -0
- package/dist/commonjs/common/ReferenceBase.js +49 -0
- package/dist/commonjs/common/ReferenceBase.js.map +1 -0
- package/dist/commonjs/common/deeps.js +82 -0
- package/dist/commonjs/common/deeps.js.map +1 -0
- package/dist/commonjs/common/id.js +88 -0
- package/dist/commonjs/common/id.js.map +1 -0
- package/dist/commonjs/common/index.js +799 -0
- package/dist/commonjs/common/index.js.map +1 -0
- package/dist/commonjs/common/path.js +133 -0
- package/dist/commonjs/common/path.js.map +1 -0
- package/dist/commonjs/common/promise.js +65 -0
- package/dist/commonjs/common/promise.js.map +1 -0
- package/dist/commonjs/common/serialize.js +48 -0
- package/dist/commonjs/common/serialize.js.map +1 -0
- package/dist/commonjs/common/unitTestUtils.js +54 -0
- package/dist/commonjs/common/unitTestUtils.js.map +1 -0
- package/dist/commonjs/common/validate.js +236 -0
- package/dist/commonjs/common/validate.js.map +1 -0
- package/dist/commonjs/index.js +42 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/internal/FirebaseModule.js +63 -0
- package/dist/commonjs/internal/FirebaseModule.js.map +1 -0
- package/dist/commonjs/internal/NativeFirebaseError.js +92 -0
- package/dist/commonjs/internal/NativeFirebaseError.js.map +1 -0
- package/dist/commonjs/internal/NativeModules.js +6 -0
- package/dist/commonjs/internal/NativeModules.js.map +1 -0
- package/dist/commonjs/internal/RNFBNativeEventEmitter.js +118 -0
- package/dist/commonjs/internal/RNFBNativeEventEmitter.js.map +1 -0
- package/dist/commonjs/internal/SharedEventEmitter.js +26 -0
- package/dist/commonjs/internal/SharedEventEmitter.js.map +1 -0
- package/dist/commonjs/internal/asyncStorage.js +83 -0
- package/dist/commonjs/internal/asyncStorage.js.map +1 -0
- package/dist/commonjs/internal/constants.js +27 -0
- package/dist/commonjs/internal/constants.js.map +1 -0
- package/dist/commonjs/internal/index.js +109 -0
- package/dist/commonjs/internal/index.js.map +1 -0
- package/dist/commonjs/internal/logger.js +256 -0
- package/dist/commonjs/internal/logger.js.map +1 -0
- package/dist/commonjs/internal/nativeModule.android.js +19 -0
- package/dist/commonjs/internal/nativeModule.android.js.map +1 -0
- package/dist/commonjs/internal/nativeModule.ios.js +19 -0
- package/dist/commonjs/internal/nativeModule.ios.js.map +1 -0
- package/dist/commonjs/internal/nativeModule.js +19 -0
- package/dist/commonjs/internal/nativeModule.js.map +1 -0
- package/dist/commonjs/internal/nativeModuleAndroidIos.js +51 -0
- package/dist/commonjs/internal/nativeModuleAndroidIos.js.map +1 -0
- package/dist/commonjs/internal/nativeModuleWeb.js +52 -0
- package/dist/commonjs/internal/nativeModuleWeb.js.map +1 -0
- package/dist/commonjs/internal/nullSerialization.js +162 -0
- package/dist/commonjs/internal/nullSerialization.js.map +1 -0
- package/dist/commonjs/internal/registry/app.js +238 -0
- package/dist/commonjs/internal/registry/app.js.map +1 -0
- package/dist/commonjs/internal/registry/namespace.js +269 -0
- package/dist/commonjs/internal/registry/namespace.js.map +1 -0
- package/dist/commonjs/internal/registry/nativeModule.js +224 -0
- package/dist/commonjs/internal/registry/nativeModule.js.map +1 -0
- package/dist/commonjs/internal/web/RNFBAppModule.js +273 -0
- package/dist/commonjs/internal/web/RNFBAppModule.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseApp.js +17 -0
- package/dist/commonjs/internal/web/firebaseApp.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseAppCheck.js +36 -0
- package/dist/commonjs/internal/web/firebaseAppCheck.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseAuth.js +28 -0
- package/dist/commonjs/internal/web/firebaseAuth.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseDatabase.js +28 -0
- package/dist/commonjs/internal/web/firebaseDatabase.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseFirestore.js +28 -0
- package/dist/commonjs/internal/web/firebaseFirestore.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseFunctions.js +28 -0
- package/dist/commonjs/internal/web/firebaseFunctions.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseInstallations.js +36 -0
- package/dist/commonjs/internal/web/firebaseInstallations.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseRemoteConfig.js +36 -0
- package/dist/commonjs/internal/web/firebaseRemoteConfig.js.map +1 -0
- package/dist/commonjs/internal/web/firebaseStorage.js +28 -0
- package/dist/commonjs/internal/web/firebaseStorage.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBCursor.js +479 -0
- package/dist/commonjs/internal/web/memidb/FDBCursor.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBCursorWithValue.js +19 -0
- package/dist/commonjs/internal/web/memidb/FDBCursorWithValue.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBDatabase.js +163 -0
- package/dist/commonjs/internal/web/memidb/FDBDatabase.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBFactory.js +264 -0
- package/dist/commonjs/internal/web/memidb/FDBFactory.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBIndex.js +191 -0
- package/dist/commonjs/internal/web/memidb/FDBIndex.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBKeyRange.js +78 -0
- package/dist/commonjs/internal/web/memidb/FDBKeyRange.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBObjectStore.js +383 -0
- package/dist/commonjs/internal/web/memidb/FDBObjectStore.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBOpenDBRequest.js +17 -0
- package/dist/commonjs/internal/web/memidb/FDBOpenDBRequest.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBRequest.js +41 -0
- package/dist/commonjs/internal/web/memidb/FDBRequest.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBTransaction.js +221 -0
- package/dist/commonjs/internal/web/memidb/FDBTransaction.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/FDBVersionChangeEvent.js +20 -0
- package/dist/commonjs/internal/web/memidb/FDBVersionChangeEvent.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/LICENSE +208 -0
- package/dist/commonjs/internal/web/memidb/index.js +45 -0
- package/dist/commonjs/internal/web/memidb/index.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/Database.js +38 -0
- package/dist/commonjs/internal/web/memidb/lib/Database.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/FakeDOMStringList.js +78 -0
- package/dist/commonjs/internal/web/memidb/lib/FakeDOMStringList.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/FakeEvent.js +45 -0
- package/dist/commonjs/internal/web/memidb/lib/FakeEvent.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/FakeEventTarget.js +111 -0
- package/dist/commonjs/internal/web/memidb/lib/FakeEventTarget.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/Index.js +164 -0
- package/dist/commonjs/internal/web/memidb/lib/Index.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/KeyGenerator.js +29 -0
- package/dist/commonjs/internal/web/memidb/lib/KeyGenerator.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/ObjectStore.js +180 -0
- package/dist/commonjs/internal/web/memidb/lib/ObjectStore.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/RecordStore.js +141 -0
- package/dist/commonjs/internal/web/memidb/lib/RecordStore.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/binarySearch.js +86 -0
- package/dist/commonjs/internal/web/memidb/lib/binarySearch.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/canInjectKey.js +30 -0
- package/dist/commonjs/internal/web/memidb/lib/canInjectKey.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/cmp.js +85 -0
- package/dist/commonjs/internal/web/memidb/lib/cmp.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/enforceRange.js +20 -0
- package/dist/commonjs/internal/web/memidb/lib/enforceRange.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/errors.js +95 -0
- package/dist/commonjs/internal/web/memidb/lib/errors.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/extractKey.js +46 -0
- package/dist/commonjs/internal/web/memidb/lib/extractKey.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/scheduling.js +37 -0
- package/dist/commonjs/internal/web/memidb/lib/scheduling.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/types.js +6 -0
- package/dist/commonjs/internal/web/memidb/lib/types.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/validateKeyPath.js +51 -0
- package/dist/commonjs/internal/web/memidb/lib/validateKeyPath.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/valueToKey.js +62 -0
- package/dist/commonjs/internal/web/memidb/lib/valueToKey.js.map +1 -0
- package/dist/commonjs/internal/web/memidb/lib/valueToKeyRange.js +26 -0
- package/dist/commonjs/internal/web/memidb/lib/valueToKeyRange.js.map +1 -0
- package/dist/commonjs/internal/web/structuredClone/index.js +239 -0
- package/dist/commonjs/internal/web/structuredClone/index.js.map +1 -0
- package/dist/commonjs/internal/web/utils.js +59 -0
- package/dist/commonjs/internal/web/utils.js.map +1 -0
- package/dist/commonjs/modular.js +190 -0
- package/dist/commonjs/modular.js.map +1 -0
- package/{android/src/reactnative/java/io/invertase/firebase/app/ReactNativeFirebaseAppRegistrar.java → dist/commonjs/namespaced.js} +17 -17
- package/dist/commonjs/namespaced.js.map +1 -0
- package/dist/commonjs/package.json +1 -0
- package/dist/commonjs/types/app.js +139 -0
- package/dist/commonjs/types/app.js.map +1 -0
- package/dist/commonjs/types/internal.js +6 -0
- package/dist/commonjs/types/internal.js.map +1 -0
- package/dist/commonjs/utils/UtilsStatics.js +59 -0
- package/dist/commonjs/utils/UtilsStatics.js.map +1 -0
- package/dist/commonjs/utils/index.js +94 -0
- package/dist/commonjs/utils/index.js.map +1 -0
- package/dist/commonjs/version.js +9 -0
- package/dist/commonjs/version.js.map +1 -0
- package/{lib → dist/module}/FirebaseApp.js +14 -14
- package/dist/module/FirebaseApp.js.map +1 -0
- package/dist/module/common/Base64.js +100 -0
- package/dist/module/common/Base64.js.map +1 -0
- package/{lib → dist/module}/common/MutatableParams.js +4 -6
- package/dist/module/common/MutatableParams.js.map +1 -0
- package/{lib → dist/module}/common/ReferenceBase.js +3 -2
- package/dist/module/common/ReferenceBase.js.map +1 -0
- package/{lib → dist/module}/common/deeps.js +5 -9
- package/dist/module/common/deeps.js.map +1 -0
- package/{lib → dist/module}/common/id.js +20 -11
- package/dist/module/common/id.js.map +1 -0
- package/dist/module/common/index.js +701 -0
- package/dist/module/common/index.js.map +1 -0
- package/{lib → dist/module}/common/path.js +4 -8
- package/dist/module/common/path.js.map +1 -0
- package/{lib → dist/module}/common/promise.js +21 -23
- package/dist/module/common/promise.js.map +1 -0
- package/dist/module/common/serialize.js +43 -0
- package/dist/module/common/serialize.js.map +1 -0
- package/dist/module/common/unitTestUtils.js +48 -0
- package/dist/module/common/unitTestUtils.js.map +1 -0
- package/{lib → dist/module}/common/validate.js +20 -16
- package/dist/module/common/validate.js.map +1 -0
- package/{ios/RNFBApp/RNFBVersion.m → dist/module/index.js} +6 -5
- package/dist/module/index.js.map +1 -0
- package/{lib → dist/module}/internal/FirebaseModule.js +6 -11
- package/dist/module/internal/FirebaseModule.js.map +1 -0
- package/{lib → dist/module}/internal/NativeFirebaseError.js +19 -24
- package/dist/module/internal/NativeFirebaseError.js.map +1 -0
- package/dist/module/internal/NativeModules.js +4 -0
- package/dist/module/internal/NativeModules.js.map +1 -0
- package/{lib → dist/module}/internal/RNFBNativeEventEmitter.js +30 -21
- package/dist/module/internal/RNFBNativeEventEmitter.js.map +1 -0
- package/{android/src/reactnative/java/io/invertase/firebase/app/ReactNativeFirebaseVersion.java → dist/module/internal/SharedEventEmitter.js} +5 -5
- package/dist/module/internal/SharedEventEmitter.js.map +1 -0
- package/dist/module/internal/asyncStorage.js +73 -0
- package/dist/module/internal/asyncStorage.js.map +1 -0
- package/dist/module/internal/constants.js +23 -0
- package/dist/module/internal/constants.js.map +1 -0
- package/dist/module/internal/index.js +30 -0
- package/dist/module/internal/index.js.map +1 -0
- package/{lib → dist/module}/internal/logger.js +65 -55
- package/dist/module/internal/logger.js.map +1 -0
- package/dist/module/internal/nativeModule.android.js +5 -0
- package/dist/module/internal/nativeModule.android.js.map +1 -0
- package/dist/module/internal/nativeModule.ios.js +5 -0
- package/dist/module/internal/nativeModule.ios.js.map +1 -0
- package/dist/module/internal/nativeModule.js +7 -0
- package/dist/module/internal/nativeModule.js.map +1 -0
- package/dist/module/internal/nativeModuleAndroidIos.js +46 -0
- package/dist/module/internal/nativeModuleAndroidIos.js.map +1 -0
- package/dist/module/internal/nativeModuleWeb.js +45 -0
- package/dist/module/internal/nativeModuleWeb.js.map +1 -0
- package/dist/module/internal/nullSerialization.js +158 -0
- package/dist/module/internal/nullSerialization.js.map +1 -0
- package/{lib → dist/module}/internal/registry/app.js +41 -79
- package/dist/module/internal/registry/app.js.map +1 -0
- package/dist/module/internal/registry/namespace.js +262 -0
- package/dist/module/internal/registry/namespace.js.map +1 -0
- package/{lib → dist/module}/internal/registry/nativeModule.js +46 -62
- package/dist/module/internal/registry/nativeModule.js.map +1 -0
- package/{lib → dist/module}/internal/web/RNFBAppModule.js +76 -67
- package/dist/module/internal/web/RNFBAppModule.js.map +1 -0
- package/{android/src/reactnative/java/io/invertase/firebase/interfaces/NativeEvent.java → dist/module/internal/web/firebaseApp.js} +5 -10
- package/dist/module/internal/web/firebaseApp.js.map +1 -0
- package/{android/src/reactnative/java/io/invertase/firebase/interfaces/NativeError.java → dist/module/internal/web/firebaseAppCheck.js} +8 -14
- package/dist/module/internal/web/firebaseAppCheck.js.map +1 -0
- package/dist/module/internal/web/firebaseAuth.js +24 -0
- package/dist/module/internal/web/firebaseAuth.js.map +1 -0
- package/dist/module/internal/web/firebaseDatabase.js +24 -0
- package/dist/module/internal/web/firebaseDatabase.js.map +1 -0
- package/dist/module/internal/web/firebaseFirestore.js +24 -0
- package/dist/module/internal/web/firebaseFirestore.js.map +1 -0
- package/dist/module/internal/web/firebaseFunctions.js +24 -0
- package/dist/module/internal/web/firebaseFunctions.js.map +1 -0
- package/dist/module/internal/web/firebaseInstallations.js +26 -0
- package/dist/module/internal/web/firebaseInstallations.js.map +1 -0
- package/{android/src/reactnative/java/io/invertase/firebase/interfaces/ContextProvider.java → dist/module/internal/web/firebaseRemoteConfig.js} +8 -12
- package/dist/module/internal/web/firebaseRemoteConfig.js.map +1 -0
- package/dist/module/internal/web/firebaseStorage.js +24 -0
- package/dist/module/internal/web/firebaseStorage.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBCursor.js +474 -0
- package/dist/module/internal/web/memidb/FDBCursor.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBCursorWithValue.js +14 -0
- package/dist/module/internal/web/memidb/FDBCursorWithValue.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBDatabase.js +158 -0
- package/dist/module/internal/web/memidb/FDBDatabase.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBFactory.js +259 -0
- package/dist/module/internal/web/memidb/FDBFactory.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBIndex.js +186 -0
- package/dist/module/internal/web/memidb/FDBIndex.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBKeyRange.js +74 -0
- package/dist/module/internal/web/memidb/FDBKeyRange.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBObjectStore.js +378 -0
- package/dist/module/internal/web/memidb/FDBObjectStore.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBOpenDBRequest.js +12 -0
- package/dist/module/internal/web/memidb/FDBOpenDBRequest.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBRequest.js +36 -0
- package/dist/module/internal/web/memidb/FDBRequest.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBTransaction.js +216 -0
- package/dist/module/internal/web/memidb/FDBTransaction.js.map +1 -0
- package/dist/module/internal/web/memidb/FDBVersionChangeEvent.js +15 -0
- package/dist/module/internal/web/memidb/FDBVersionChangeEvent.js.map +1 -0
- package/dist/module/internal/web/memidb/LICENSE +208 -0
- package/dist/module/internal/web/memidb/index.js +41 -0
- package/dist/module/internal/web/memidb/index.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/Database.js +35 -0
- package/dist/module/internal/web/memidb/lib/Database.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/FakeDOMStringList.js +75 -0
- package/dist/module/internal/web/memidb/lib/FakeDOMStringList.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/FakeEvent.js +41 -0
- package/dist/module/internal/web/memidb/lib/FakeEvent.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/FakeEventTarget.js +107 -0
- package/dist/module/internal/web/memidb/lib/FakeEventTarget.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/Index.js +160 -0
- package/dist/module/internal/web/memidb/lib/Index.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/KeyGenerator.js +25 -0
- package/dist/module/internal/web/memidb/lib/KeyGenerator.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/ObjectStore.js +175 -0
- package/dist/module/internal/web/memidb/lib/ObjectStore.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/RecordStore.js +136 -0
- package/dist/module/internal/web/memidb/lib/RecordStore.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/binarySearch.js +77 -0
- package/dist/module/internal/web/memidb/lib/binarySearch.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/canInjectKey.js +26 -0
- package/dist/module/internal/web/memidb/lib/canInjectKey.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/cmp.js +80 -0
- package/dist/module/internal/web/memidb/lib/cmp.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/enforceRange.js +16 -0
- package/dist/module/internal/web/memidb/lib/enforceRange.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/errors.js +81 -0
- package/dist/module/internal/web/memidb/lib/errors.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/extractKey.js +42 -0
- package/dist/module/internal/web/memidb/lib/extractKey.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/scheduling.js +32 -0
- package/dist/module/internal/web/memidb/lib/scheduling.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/types.js +4 -0
- package/dist/module/internal/web/memidb/lib/types.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/validateKeyPath.js +47 -0
- package/dist/module/internal/web/memidb/lib/validateKeyPath.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/valueToKey.js +58 -0
- package/dist/module/internal/web/memidb/lib/valueToKey.js.map +1 -0
- package/dist/module/internal/web/memidb/lib/valueToKeyRange.js +22 -0
- package/dist/module/internal/web/memidb/lib/valueToKeyRange.js.map +1 -0
- package/dist/module/internal/web/structuredClone/index.js +235 -0
- package/dist/module/internal/web/structuredClone/index.js.map +1 -0
- package/{lib → dist/module}/internal/web/utils.js +24 -5
- package/dist/module/internal/web/utils.js.map +1 -0
- package/dist/module/modular.js +172 -0
- package/dist/module/modular.js.map +1 -0
- package/dist/module/namespaced.js +25 -0
- package/dist/module/namespaced.js.map +1 -0
- package/dist/module/package.json +1 -0
- package/dist/module/types/app.js +135 -0
- package/dist/module/types/app.js.map +1 -0
- package/dist/module/types/internal.js +4 -0
- package/dist/module/types/internal.js.map +1 -0
- package/dist/module/utils/UtilsStatics.js +55 -0
- package/dist/module/utils/UtilsStatics.js.map +1 -0
- package/{lib → dist/module}/utils/index.js +13 -15
- package/dist/module/utils/index.js.map +1 -0
- package/dist/module/version.js +5 -0
- package/dist/module/version.js.map +1 -0
- package/dist/typescript/commonjs/lib/FirebaseApp.d.ts +21 -0
- package/dist/typescript/commonjs/lib/FirebaseApp.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/Base64.d.ts +23 -0
- package/dist/typescript/commonjs/lib/common/Base64.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/MutatableParams.d.ts +10 -0
- package/dist/typescript/commonjs/lib/common/MutatableParams.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/ReferenceBase.d.ts +12 -0
- package/dist/typescript/commonjs/lib/common/ReferenceBase.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/deeps.d.ts +19 -0
- package/dist/typescript/commonjs/lib/common/deeps.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/id.d.ts +12 -0
- package/dist/typescript/commonjs/lib/common/id.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/index.d.ts +33 -0
- package/dist/typescript/commonjs/lib/common/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/path.d.ts +51 -0
- package/dist/typescript/commonjs/lib/common/path.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/promise.d.ts +12 -0
- package/dist/typescript/commonjs/lib/common/promise.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/serialize.d.ts +4 -0
- package/dist/typescript/commonjs/lib/common/serialize.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/unitTestUtils.d.ts +4 -0
- package/dist/typescript/commonjs/lib/common/unitTestUtils.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/common/validate.d.ts +100 -0
- package/dist/typescript/commonjs/lib/common/validate.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/index.d.ts +4 -0
- package/dist/typescript/commonjs/lib/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/FirebaseModule.d.ts +17 -0
- package/dist/typescript/commonjs/lib/internal/FirebaseModule.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/NativeFirebaseError.d.ts +20 -0
- package/dist/typescript/commonjs/lib/internal/NativeFirebaseError.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/NativeModules.d.ts +83 -0
- package/dist/typescript/commonjs/lib/internal/NativeModules.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/RNFBNativeEventEmitter.d.ts +13 -0
- package/dist/typescript/commonjs/lib/internal/RNFBNativeEventEmitter.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/SharedEventEmitter.d.ts +4 -0
- package/dist/typescript/commonjs/lib/internal/SharedEventEmitter.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/asyncStorage.d.ts +10 -0
- package/dist/typescript/commonjs/lib/internal/asyncStorage.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/constants.d.ts +5 -0
- package/dist/typescript/commonjs/lib/internal/constants.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/index.d.ts +12 -0
- package/dist/typescript/commonjs/lib/internal/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/logger.d.ts +83 -0
- package/dist/typescript/commonjs/lib/internal/logger.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/nativeModule.android.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/nativeModule.android.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/nativeModule.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/nativeModule.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/nativeModule.ios.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/nativeModule.ios.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/nativeModuleAndroidIos.d.ts +10 -0
- package/dist/typescript/commonjs/lib/internal/nativeModuleAndroidIos.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/nativeModuleWeb.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/nativeModuleWeb.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/nullSerialization.d.ts +16 -0
- package/dist/typescript/commonjs/lib/internal/nullSerialization.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/registry/app.d.ts +47 -0
- package/dist/typescript/commonjs/lib/internal/registry/app.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/registry/namespace.d.ts +26 -0
- package/dist/typescript/commonjs/lib/internal/registry/namespace.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/registry/nativeModule.d.ts +17 -0
- package/dist/typescript/commonjs/lib/internal/registry/nativeModule.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/RNFBAppModule.d.ts +139 -0
- package/dist/typescript/commonjs/lib/internal/web/RNFBAppModule.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseApp.d.ts +2 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseApp.d.ts.map +1 -0
- package/{lib/internal/web/firebaseAppCheck.js → dist/typescript/commonjs/lib/internal/web/firebaseAppCheck.d.ts} +1 -2
- package/dist/typescript/commonjs/lib/internal/web/firebaseAppCheck.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseAuth.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseAuth.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseDatabase.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseDatabase.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseFirestore.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseFirestore.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseFunctions.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseFunctions.d.ts.map +1 -0
- package/{lib/internal/web/firebaseInstallations.js → dist/typescript/commonjs/lib/internal/web/firebaseInstallations.d.ts} +1 -2
- package/dist/typescript/commonjs/lib/internal/web/firebaseInstallations.d.ts.map +1 -0
- package/{lib/internal/web/firebaseRemoteConfig.js → dist/typescript/commonjs/lib/internal/web/firebaseRemoteConfig.d.ts} +1 -2
- package/dist/typescript/commonjs/lib/internal/web/firebaseRemoteConfig.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseStorage.d.ts +3 -0
- package/dist/typescript/commonjs/lib/internal/web/firebaseStorage.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/internal/web/utils.d.ts +13 -0
- package/dist/typescript/commonjs/lib/internal/web/utils.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/modular.d.ts +95 -0
- package/dist/typescript/commonjs/lib/modular.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/namespaced.d.ts +5 -0
- package/dist/typescript/commonjs/lib/namespaced.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/types/app.d.ts +561 -0
- package/dist/typescript/commonjs/lib/types/app.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/types/internal.d.ts +101 -0
- package/dist/typescript/commonjs/lib/types/internal.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/utils/UtilsStatics.d.ts +4 -0
- package/dist/typescript/commonjs/lib/utils/UtilsStatics.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/utils/index.d.ts +4 -0
- package/dist/typescript/commonjs/lib/utils/index.d.ts.map +1 -0
- package/dist/typescript/commonjs/lib/version.d.ts +2 -0
- package/dist/typescript/commonjs/lib/version.d.ts.map +1 -0
- package/dist/typescript/commonjs/package.json +1 -0
- package/dist/typescript/module/lib/FirebaseApp.d.ts +21 -0
- package/dist/typescript/module/lib/FirebaseApp.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/Base64.d.ts +23 -0
- package/dist/typescript/module/lib/common/Base64.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/MutatableParams.d.ts +10 -0
- package/dist/typescript/module/lib/common/MutatableParams.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/ReferenceBase.d.ts +12 -0
- package/dist/typescript/module/lib/common/ReferenceBase.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/deeps.d.ts +19 -0
- package/dist/typescript/module/lib/common/deeps.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/id.d.ts +12 -0
- package/dist/typescript/module/lib/common/id.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/index.d.ts +33 -0
- package/dist/typescript/module/lib/common/index.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/path.d.ts +51 -0
- package/dist/typescript/module/lib/common/path.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/promise.d.ts +12 -0
- package/dist/typescript/module/lib/common/promise.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/serialize.d.ts +4 -0
- package/dist/typescript/module/lib/common/serialize.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/unitTestUtils.d.ts +4 -0
- package/dist/typescript/module/lib/common/unitTestUtils.d.ts.map +1 -0
- package/dist/typescript/module/lib/common/validate.d.ts +100 -0
- package/dist/typescript/module/lib/common/validate.d.ts.map +1 -0
- package/dist/typescript/module/lib/index.d.ts +4 -0
- package/dist/typescript/module/lib/index.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/FirebaseModule.d.ts +17 -0
- package/dist/typescript/module/lib/internal/FirebaseModule.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/NativeFirebaseError.d.ts +20 -0
- package/dist/typescript/module/lib/internal/NativeFirebaseError.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/NativeModules.d.ts +83 -0
- package/dist/typescript/module/lib/internal/NativeModules.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/RNFBNativeEventEmitter.d.ts +13 -0
- package/dist/typescript/module/lib/internal/RNFBNativeEventEmitter.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/SharedEventEmitter.d.ts +4 -0
- package/dist/typescript/module/lib/internal/SharedEventEmitter.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/asyncStorage.d.ts +10 -0
- package/dist/typescript/module/lib/internal/asyncStorage.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/constants.d.ts +5 -0
- package/dist/typescript/module/lib/internal/constants.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/index.d.ts +12 -0
- package/dist/typescript/module/lib/internal/index.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/logger.d.ts +83 -0
- package/dist/typescript/module/lib/internal/logger.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/nativeModule.android.d.ts +3 -0
- package/dist/typescript/module/lib/internal/nativeModule.android.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/nativeModule.d.ts +3 -0
- package/dist/typescript/module/lib/internal/nativeModule.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/nativeModule.ios.d.ts +3 -0
- package/dist/typescript/module/lib/internal/nativeModule.ios.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/nativeModuleAndroidIos.d.ts +10 -0
- package/dist/typescript/module/lib/internal/nativeModuleAndroidIos.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/nativeModuleWeb.d.ts +3 -0
- package/dist/typescript/module/lib/internal/nativeModuleWeb.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/nullSerialization.d.ts +16 -0
- package/dist/typescript/module/lib/internal/nullSerialization.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/registry/app.d.ts +47 -0
- package/dist/typescript/module/lib/internal/registry/app.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/registry/namespace.d.ts +26 -0
- package/dist/typescript/module/lib/internal/registry/namespace.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/registry/nativeModule.d.ts +17 -0
- package/dist/typescript/module/lib/internal/registry/nativeModule.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/RNFBAppModule.d.ts +139 -0
- package/dist/typescript/module/lib/internal/web/RNFBAppModule.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseApp.d.ts +2 -0
- package/dist/typescript/module/lib/internal/web/firebaseApp.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseAppCheck.d.ts +5 -0
- package/dist/typescript/module/lib/internal/web/firebaseAppCheck.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseAuth.d.ts +3 -0
- package/dist/typescript/module/lib/internal/web/firebaseAuth.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseDatabase.d.ts +3 -0
- package/dist/typescript/module/lib/internal/web/firebaseDatabase.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseFirestore.d.ts +3 -0
- package/dist/typescript/module/lib/internal/web/firebaseFirestore.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseFunctions.d.ts +3 -0
- package/dist/typescript/module/lib/internal/web/firebaseFunctions.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseInstallations.d.ts +5 -0
- package/dist/typescript/module/lib/internal/web/firebaseInstallations.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseRemoteConfig.d.ts +5 -0
- package/dist/typescript/module/lib/internal/web/firebaseRemoteConfig.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/firebaseStorage.d.ts +3 -0
- package/dist/typescript/module/lib/internal/web/firebaseStorage.d.ts.map +1 -0
- package/dist/typescript/module/lib/internal/web/utils.d.ts +13 -0
- package/dist/typescript/module/lib/internal/web/utils.d.ts.map +1 -0
- package/dist/typescript/module/lib/modular.d.ts +95 -0
- package/dist/typescript/module/lib/modular.d.ts.map +1 -0
- package/dist/typescript/module/lib/namespaced.d.ts +5 -0
- package/dist/typescript/module/lib/namespaced.d.ts.map +1 -0
- package/dist/typescript/module/lib/types/app.d.ts +561 -0
- package/dist/typescript/module/lib/types/app.d.ts.map +1 -0
- package/dist/typescript/module/lib/types/internal.d.ts +101 -0
- package/dist/typescript/module/lib/types/internal.d.ts.map +1 -0
- package/dist/typescript/module/lib/utils/UtilsStatics.d.ts +4 -0
- package/dist/typescript/module/lib/utils/UtilsStatics.d.ts.map +1 -0
- package/dist/typescript/module/lib/utils/index.d.ts +4 -0
- package/dist/typescript/module/lib/utils/index.d.ts.map +1 -0
- package/dist/typescript/module/lib/version.d.ts +2 -0
- package/dist/typescript/module/lib/version.d.ts.map +1 -0
- package/dist/typescript/module/package.json +1 -0
- package/lib/FirebaseApp.ts +98 -0
- package/lib/common/{Base64.js → Base64.ts} +19 -11
- package/lib/common/MutatableParams.ts +50 -0
- package/lib/common/ReferenceBase.ts +45 -0
- package/lib/common/deeps.ts +92 -0
- package/lib/common/id.ts +91 -0
- package/lib/common/{index.js → index.ts} +60 -38
- package/lib/common/path.ts +124 -0
- package/lib/common/promise.ts +68 -0
- package/lib/common/{serialize.js → serialize.ts} +3 -2
- package/lib/common/unitTestUtils.ts +5 -4
- package/lib/common/validate.ts +232 -0
- package/lib/index.ts +27 -0
- package/lib/internal/FirebaseModule.ts +78 -0
- package/lib/internal/NativeFirebaseError.ts +111 -0
- package/lib/internal/NativeModules.ts +116 -0
- package/lib/internal/RNFBNativeEventEmitter.ts +139 -0
- package/lib/internal/asyncStorage.ts +76 -0
- package/lib/internal/{constants.js → constants.ts} +3 -1
- package/{ios/RNFBApp/RCTConvert+FIRApp.m → lib/internal/global.d.ts} +14 -12
- package/lib/internal/{index.js → index.ts} +2 -0
- package/lib/internal/logger.ts +270 -0
- package/lib/internal/nativeModuleAndroidIos.ts +55 -0
- package/lib/internal/nativeModuleWeb.ts +60 -0
- package/lib/internal/nullSerialization.ts +186 -0
- package/lib/internal/registry/app.ts +278 -0
- package/lib/internal/registry/{namespace.js → namespace.ts} +93 -54
- package/lib/internal/registry/nativeModule.ts +282 -0
- package/lib/internal/web/RNFBAppModule.ts +318 -0
- package/{ios/RNFBApp/RCTConvert+FIRApp.h → lib/internal/web/firebaseApp.ts} +4 -7
- package/lib/internal/web/firebaseAppCheck.ts +23 -0
- package/lib/internal/web/firebaseAuth.ts +21 -0
- package/lib/internal/web/firebaseDatabase.ts +21 -0
- package/{android/src/reactnative/java/io/invertase/firebase/app/ReactNativeFirebaseAppInitProvider.java → lib/internal/web/firebaseFirestore.ts} +4 -5
- package/lib/internal/web/firebaseFunctions.ts +21 -0
- package/lib/internal/web/firebaseInstallations.ts +23 -0
- package/lib/internal/web/firebaseRemoteConfig.ts +23 -0
- package/lib/internal/web/firebaseStorage.ts +21 -0
- package/{ios/RNFBApp/RNFBVersion.h → lib/internal/web/memidb/index.d.ts} +5 -4
- package/lib/internal/web/memidb/lib/errors.js +17 -0
- package/lib/internal/web/utils.ts +57 -0
- package/lib/modular.ts +219 -0
- package/lib/{index.js → namespaced.ts} +2 -2
- package/lib/{index.d.ts → types/app.ts} +81 -40
- package/lib/types/internal.ts +142 -0
- package/lib/utils/{UtilsStatics.js → UtilsStatics.ts} +20 -12
- package/lib/utils/index.ts +94 -0
- package/lib/version.ts +2 -0
- package/package.json +106 -9
- package/CHANGELOG.md +0 -1525
- package/RNFBApp.podspec +0 -49
- package/android/.editorconfig +0 -10
- package/android/build.gradle +0 -129
- package/android/firebase-json.gradle +0 -73
- package/android/gradle.properties +0 -2
- package/android/lint.xml +0 -5
- package/android/settings.gradle +0 -1
- package/android/src/main/AndroidManifest.xml +0 -24
- package/android/src/main/java/io/invertase/firebase/app/.gitkeep +0 -0
- package/android/src/main/java/io/invertase/firebase/common/TaskExecutorService.java +0 -124
- package/android/src/main/java/io/invertase/firebase/common/UniversalFirebaseModule.java +0 -62
- package/android/src/main/java/io/invertase/firebase/common/UniversalFirebasePreferences.java +0 -91
- package/android/src/main/java/io/invertase/firebase/interfaces/.gitkeep +0 -0
- package/android/src/reactnative/AndroidManifest.xml +0 -2
- package/android/src/reactnative/java/io/invertase/firebase/app/ReactNativeFirebaseApp.java +0 -46
- package/android/src/reactnative/java/io/invertase/firebase/app/ReactNativeFirebaseAppModule.java +0 -186
- package/android/src/reactnative/java/io/invertase/firebase/app/ReactNativeFirebaseAppPackage.java +0 -49
- package/android/src/reactnative/java/io/invertase/firebase/common/RCTConvertFirebase.java +0 -191
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseEvent.java +0 -53
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseEventEmitter.java +0 -151
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseInitProvider.java +0 -78
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseJSON.java +0 -107
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseMeta.java +0 -93
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebaseModule.java +0 -146
- package/android/src/reactnative/java/io/invertase/firebase/common/ReactNativeFirebasePreferences.java +0 -88
- package/android/src/reactnative/java/io/invertase/firebase/common/SharedUtils.java +0 -440
- package/android/src/reactnative/java/io/invertase/firebase/utils/ReactNativeFirebaseUtilsModule.java +0 -191
- package/app.plugin.js +0 -1
- package/firebase-schema.json +0 -149
- package/firebase_json.rb +0 -72
- package/ios/RNFBApp/RCTConvert+FIROptions.h +0 -23
- package/ios/RNFBApp/RCTConvert+FIROptions.m +0 -36
- package/ios/RNFBApp/RNFBAppModule.h +0 -28
- package/ios/RNFBApp/RNFBAppModule.m +0 -305
- package/ios/RNFBApp/RNFBJSON.h +0 -36
- package/ios/RNFBApp/RNFBJSON.m +0 -99
- package/ios/RNFBApp/RNFBMeta.h +0 -30
- package/ios/RNFBApp/RNFBMeta.m +0 -61
- package/ios/RNFBApp/RNFBPreferences.h +0 -44
- package/ios/RNFBApp/RNFBPreferences.m +0 -94
- package/ios/RNFBApp/RNFBRCTEventEmitter.h +0 -73
- package/ios/RNFBApp/RNFBRCTEventEmitter.m +0 -151
- package/ios/RNFBApp/RNFBSharedUtils.h +0 -65
- package/ios/RNFBApp/RNFBSharedUtils.m +0 -167
- package/ios/RNFBApp/RNFBUtilsModule.h +0 -30
- package/ios/RNFBApp/RNFBUtilsModule.m +0 -100
- package/ios/RNFBApp.xcodeproj/project.pbxproj +0 -405
- package/ios/RNFBApp.xcodeproj/xcshareddata/IDETemplateMacros.plist +0 -24
- package/ios_config.sh +0 -269
- package/lib/internal/asyncStorage.js +0 -47
- package/lib/internal/logger.d.ts +0 -85
- package/lib/internal/nativeModuleAndroidIos.js +0 -45
- package/lib/internal/nativeModuleWeb.js +0 -49
- package/lib/internal/web/firebaseApp.js +0 -3
- package/lib/internal/web/firebaseAuth.js +0 -4
- package/lib/internal/web/firebaseDatabase.js +0 -4
- package/lib/internal/web/firebaseFirestore.js +0 -4
- package/lib/internal/web/firebaseFunctions.js +0 -4
- package/lib/internal/web/firebaseStorage.js +0 -4
- package/lib/modular/index.d.ts +0 -131
- package/lib/modular/index.js +0 -150
- package/lib/version.js +0 -2
- package/plugin/build/android/applyPlugin.d.ts +0 -6
- package/plugin/build/android/applyPlugin.js +0 -29
- package/plugin/build/android/buildscriptDependency.d.ts +0 -6
- package/plugin/build/android/buildscriptDependency.js +0 -31
- package/plugin/build/android/constants.d.ts +0 -4
- package/plugin/build/android/constants.js +0 -8
- package/plugin/build/android/copyGoogleServices.d.ts +0 -5
- package/plugin/build/android/copyGoogleServices.js +0 -33
- package/plugin/build/android/index.d.ts +0 -4
- package/plugin/build/android/index.js +0 -9
- package/plugin/build/index.d.ts +0 -3
- package/plugin/build/index.js +0 -21
- package/plugin/build/ios/appDelegate.d.ts +0 -6
- package/plugin/build/ios/appDelegate.js +0 -116
- package/plugin/build/ios/googleServicesPlist.d.ts +0 -7
- package/plugin/build/ios/googleServicesPlist.js +0 -42
- package/plugin/build/ios/index.d.ts +0 -3
- package/plugin/build/ios/index.js +0 -7
- package/plugin/src/android/applyPlugin.ts +0 -30
- package/plugin/src/android/buildscriptDependency.ts +0 -33
- package/plugin/src/android/constants.ts +0 -7
- package/plugin/src/android/copyGoogleServices.ts +0 -36
- package/plugin/src/android/index.ts +0 -5
- package/plugin/src/index.ts +0 -27
- package/plugin/src/ios/appDelegate.ts +0 -140
- package/plugin/src/ios/googleServicesPlist.ts +0 -55
- package/plugin/src/ios/index.ts +0 -4
- package/plugin/tsconfig.json +0 -9
- package/plugin/tsconfig.tsbuildinfo +0 -1
- package/react-native.config.js +0 -19
- /package/lib/internal/{SharedEventEmitter.js → SharedEventEmitter.ts} +0 -0
- /package/lib/internal/{nativeModule.android.js → nativeModule.android.ts} +0 -0
- /package/lib/internal/{nativeModule.ios.js → nativeModule.ios.ts} +0 -0
- /package/lib/internal/{nativeModule.js → nativeModule.ts} +0 -0
|
@@ -17,9 +17,10 @@
|
|
|
17
17
|
|
|
18
18
|
import { isString, createDeprecationProxy } from '../../common';
|
|
19
19
|
import FirebaseApp from '../../FirebaseApp';
|
|
20
|
-
import SDK_VERSION from '../../version';
|
|
21
|
-
import { DEFAULT_APP_NAME, KNOWN_NAMESPACES } from '../constants';
|
|
20
|
+
import { version as SDK_VERSION } from '../../version';
|
|
21
|
+
import { DEFAULT_APP_NAME, KNOWN_NAMESPACES, type KnownNamespace } from '../constants';
|
|
22
22
|
import FirebaseModule from '../FirebaseModule';
|
|
23
|
+
import type { ModuleGetter, FirebaseRoot, NamespaceConfig } from '../../types/internal';
|
|
23
24
|
import {
|
|
24
25
|
getApp,
|
|
25
26
|
getApps,
|
|
@@ -31,12 +32,12 @@ import {
|
|
|
31
32
|
} from './app';
|
|
32
33
|
|
|
33
34
|
// firebase.X
|
|
34
|
-
let FIREBASE_ROOT = null;
|
|
35
|
+
let FIREBASE_ROOT: FirebaseRoot | null = null;
|
|
35
36
|
|
|
36
|
-
const NAMESPACE_REGISTRY = {};
|
|
37
|
-
const APP_MODULE_INSTANCE = {};
|
|
38
|
-
const MODULE_GETTER_FOR_APP = {};
|
|
39
|
-
const MODULE_GETTER_FOR_ROOT = {};
|
|
37
|
+
const NAMESPACE_REGISTRY: Record<string, NamespaceConfig | undefined> = {};
|
|
38
|
+
const APP_MODULE_INSTANCE: Record<string, Record<string, FirebaseModule<any>>> = {};
|
|
39
|
+
const MODULE_GETTER_FOR_APP: Record<string, Record<string, ModuleGetter>> = {};
|
|
40
|
+
const MODULE_GETTER_FOR_ROOT: Record<string, ModuleGetter> = {};
|
|
40
41
|
|
|
41
42
|
/**
|
|
42
43
|
* Attaches module namespace getters on every newly created app.
|
|
@@ -46,10 +47,12 @@ const MODULE_GETTER_FOR_ROOT = {};
|
|
|
46
47
|
setOnAppCreate(app => {
|
|
47
48
|
for (let i = 0; i < KNOWN_NAMESPACES.length; i++) {
|
|
48
49
|
const moduleNamespace = KNOWN_NAMESPACES[i];
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
if (moduleNamespace) {
|
|
51
|
+
Object.defineProperty(app, moduleNamespace, {
|
|
52
|
+
enumerable: false,
|
|
53
|
+
get: firebaseAppModuleProxy.bind(null, app, moduleNamespace),
|
|
54
|
+
});
|
|
55
|
+
}
|
|
53
56
|
}
|
|
54
57
|
});
|
|
55
58
|
|
|
@@ -70,17 +73,20 @@ setOnAppDestroy(app => {
|
|
|
70
73
|
* @param moduleNamespace
|
|
71
74
|
* @returns {*}
|
|
72
75
|
*/
|
|
73
|
-
function getOrCreateModuleForApp(app, moduleNamespace) {
|
|
74
|
-
if (MODULE_GETTER_FOR_APP[app.name] && MODULE_GETTER_FOR_APP[app.name][moduleNamespace]) {
|
|
75
|
-
return MODULE_GETTER_FOR_APP[app.name][moduleNamespace]
|
|
76
|
+
function getOrCreateModuleForApp(app: FirebaseApp, moduleNamespace: KnownNamespace): ModuleGetter {
|
|
77
|
+
if (MODULE_GETTER_FOR_APP[app.name] && MODULE_GETTER_FOR_APP[app.name]?.[moduleNamespace]) {
|
|
78
|
+
return MODULE_GETTER_FOR_APP[app.name]![moduleNamespace]!;
|
|
76
79
|
}
|
|
77
80
|
|
|
78
81
|
if (!MODULE_GETTER_FOR_APP[app.name]) {
|
|
79
82
|
MODULE_GETTER_FOR_APP[app.name] = {};
|
|
80
83
|
}
|
|
81
84
|
|
|
82
|
-
const
|
|
83
|
-
|
|
85
|
+
const config = NAMESPACE_REGISTRY[moduleNamespace];
|
|
86
|
+
if (!config) {
|
|
87
|
+
throw new Error(`Module namespace '${moduleNamespace}' is not registered.`);
|
|
88
|
+
}
|
|
89
|
+
const { hasCustomUrlOrRegionSupport, hasMultiAppSupport, ModuleClass } = config;
|
|
84
90
|
|
|
85
91
|
// modules such as analytics only run on the default app
|
|
86
92
|
if (!hasMultiAppSupport && app.name !== DEFAULT_APP_NAME) {
|
|
@@ -94,7 +100,7 @@ function getOrCreateModuleForApp(app, moduleNamespace) {
|
|
|
94
100
|
}
|
|
95
101
|
|
|
96
102
|
// e.g. firebase.storage(customUrlOrRegion), firebase.functions(customUrlOrRegion), firebase.firestore(databaseId), firebase.database(url)
|
|
97
|
-
function firebaseModuleWithArgs(customUrlOrRegionOrDatabaseId) {
|
|
103
|
+
function firebaseModuleWithArgs(customUrlOrRegionOrDatabaseId?: string): FirebaseModule<any> {
|
|
98
104
|
if (customUrlOrRegionOrDatabaseId !== undefined) {
|
|
99
105
|
if (!hasCustomUrlOrRegionSupport) {
|
|
100
106
|
// TODO throw Module does not support arguments error
|
|
@@ -113,19 +119,24 @@ function getOrCreateModuleForApp(app, moduleNamespace) {
|
|
|
113
119
|
APP_MODULE_INSTANCE[app.name] = {};
|
|
114
120
|
}
|
|
115
121
|
|
|
116
|
-
if (!APP_MODULE_INSTANCE[app.name][key]) {
|
|
122
|
+
if (!APP_MODULE_INSTANCE[app.name]?.[key]) {
|
|
123
|
+
const moduleConfig = NAMESPACE_REGISTRY[moduleNamespace];
|
|
124
|
+
if (!moduleConfig) {
|
|
125
|
+
throw new Error(`Module namespace '${moduleNamespace}' is not registered.`);
|
|
126
|
+
}
|
|
117
127
|
const module = createDeprecationProxy(
|
|
118
|
-
new ModuleClass(app,
|
|
119
|
-
)
|
|
128
|
+
new ModuleClass(app, moduleConfig, customUrlOrRegionOrDatabaseId),
|
|
129
|
+
) as unknown as FirebaseModule<any>;
|
|
120
130
|
|
|
121
|
-
APP_MODULE_INSTANCE[app.name][key] = module;
|
|
131
|
+
APP_MODULE_INSTANCE[app.name]![key] = module;
|
|
122
132
|
}
|
|
123
133
|
|
|
124
|
-
return APP_MODULE_INSTANCE[app.name][key]
|
|
134
|
+
return APP_MODULE_INSTANCE[app.name]![key]!;
|
|
125
135
|
}
|
|
126
136
|
|
|
127
|
-
MODULE_GETTER_FOR_APP[app.name][moduleNamespace] =
|
|
128
|
-
|
|
137
|
+
MODULE_GETTER_FOR_APP[app.name]![moduleNamespace] =
|
|
138
|
+
firebaseModuleWithArgs as unknown as ModuleGetter;
|
|
139
|
+
return MODULE_GETTER_FOR_APP[app.name]![moduleNamespace]!;
|
|
129
140
|
}
|
|
130
141
|
|
|
131
142
|
/**
|
|
@@ -133,18 +144,29 @@ function getOrCreateModuleForApp(app, moduleNamespace) {
|
|
|
133
144
|
* @param moduleNamespace
|
|
134
145
|
* @returns {*}
|
|
135
146
|
*/
|
|
136
|
-
function getOrCreateModuleForRoot(moduleNamespace) {
|
|
147
|
+
function getOrCreateModuleForRoot(moduleNamespace: KnownNamespace): ModuleGetter {
|
|
137
148
|
if (MODULE_GETTER_FOR_ROOT[moduleNamespace]) {
|
|
138
149
|
return MODULE_GETTER_FOR_ROOT[moduleNamespace];
|
|
139
150
|
}
|
|
140
151
|
|
|
141
|
-
const
|
|
152
|
+
const config = NAMESPACE_REGISTRY[moduleNamespace];
|
|
153
|
+
if (!config) {
|
|
154
|
+
throw new Error(`Module namespace '${moduleNamespace}' is not registered.`);
|
|
155
|
+
}
|
|
156
|
+
const { statics, hasMultiAppSupport, ModuleClass } = config;
|
|
142
157
|
|
|
143
158
|
// e.g. firebase.storage(app)
|
|
144
|
-
function firebaseModuleWithApp(app) {
|
|
159
|
+
function firebaseModuleWithApp(app?: FirebaseApp): FirebaseModule<any> {
|
|
145
160
|
const _app = app || getApp();
|
|
146
161
|
|
|
147
|
-
|
|
162
|
+
// Duck-type check for FirebaseApp (checking for required properties)
|
|
163
|
+
if (
|
|
164
|
+
!_app ||
|
|
165
|
+
typeof _app !== 'object' ||
|
|
166
|
+
!('name' in _app) ||
|
|
167
|
+
!('options' in _app) ||
|
|
168
|
+
typeof _app.name !== 'string'
|
|
169
|
+
) {
|
|
148
170
|
throw new Error(
|
|
149
171
|
[
|
|
150
172
|
`"firebase.${moduleNamespace}(app)" arg expects a FirebaseApp instance or undefined.`,
|
|
@@ -169,22 +191,28 @@ function getOrCreateModuleForRoot(moduleNamespace) {
|
|
|
169
191
|
APP_MODULE_INSTANCE[_app.name] = {};
|
|
170
192
|
}
|
|
171
193
|
|
|
172
|
-
if (!APP_MODULE_INSTANCE[_app.name][moduleNamespace]) {
|
|
194
|
+
if (!APP_MODULE_INSTANCE[_app.name]?.[moduleNamespace]) {
|
|
195
|
+
const moduleConfig = NAMESPACE_REGISTRY[moduleNamespace];
|
|
196
|
+
if (!moduleConfig) {
|
|
197
|
+
throw new Error(`Module namespace '${moduleNamespace}' is not registered.`);
|
|
198
|
+
}
|
|
173
199
|
const module = createDeprecationProxy(
|
|
174
|
-
new ModuleClass(_app,
|
|
175
|
-
)
|
|
176
|
-
APP_MODULE_INSTANCE[_app.name][moduleNamespace] = module;
|
|
200
|
+
new ModuleClass(_app, moduleConfig),
|
|
201
|
+
) as unknown as FirebaseModule<any>;
|
|
202
|
+
APP_MODULE_INSTANCE[_app.name]![moduleNamespace] = module;
|
|
177
203
|
}
|
|
178
204
|
|
|
179
|
-
return APP_MODULE_INSTANCE[_app.name][moduleNamespace]
|
|
205
|
+
return APP_MODULE_INSTANCE[_app.name]![moduleNamespace]!;
|
|
180
206
|
}
|
|
181
207
|
|
|
182
208
|
Object.assign(firebaseModuleWithApp, statics || {});
|
|
183
209
|
// Object.freeze(firebaseModuleWithApp);
|
|
184
210
|
// Wrap around statics, e.g. firebase.firestore.FieldValue, removed freeze as it stops proxy working. it is deprecated anyway
|
|
185
|
-
MODULE_GETTER_FOR_ROOT[moduleNamespace] = createDeprecationProxy(
|
|
211
|
+
MODULE_GETTER_FOR_ROOT[moduleNamespace] = createDeprecationProxy(
|
|
212
|
+
firebaseModuleWithApp,
|
|
213
|
+
) as unknown as ModuleGetter;
|
|
186
214
|
|
|
187
|
-
return MODULE_GETTER_FOR_ROOT[moduleNamespace]
|
|
215
|
+
return MODULE_GETTER_FOR_ROOT[moduleNamespace]!;
|
|
188
216
|
}
|
|
189
217
|
|
|
190
218
|
/**
|
|
@@ -193,12 +221,15 @@ function getOrCreateModuleForRoot(moduleNamespace) {
|
|
|
193
221
|
* @param moduleNamespace
|
|
194
222
|
* @returns {*}
|
|
195
223
|
*/
|
|
196
|
-
function firebaseRootModuleProxy(
|
|
224
|
+
function firebaseRootModuleProxy(
|
|
225
|
+
_firebaseNamespace: FirebaseRoot,
|
|
226
|
+
moduleNamespace: string,
|
|
227
|
+
): ModuleGetter {
|
|
197
228
|
if (NAMESPACE_REGISTRY[moduleNamespace]) {
|
|
198
|
-
return getOrCreateModuleForRoot(moduleNamespace);
|
|
229
|
+
return getOrCreateModuleForRoot(moduleNamespace as KnownNamespace);
|
|
199
230
|
}
|
|
200
231
|
|
|
201
|
-
moduleWithDashes = moduleNamespace
|
|
232
|
+
const moduleWithDashes = moduleNamespace
|
|
202
233
|
.split(/(?=[A-Z])/)
|
|
203
234
|
.join('-')
|
|
204
235
|
.toLowerCase();
|
|
@@ -218,13 +249,14 @@ function firebaseRootModuleProxy(_firebaseNamespace, moduleNamespace) {
|
|
|
218
249
|
* @param moduleNamespace
|
|
219
250
|
* @returns {*}
|
|
220
251
|
*/
|
|
221
|
-
export function firebaseAppModuleProxy(app, moduleNamespace) {
|
|
252
|
+
export function firebaseAppModuleProxy(app: FirebaseApp, moduleNamespace: string): ModuleGetter {
|
|
222
253
|
if (NAMESPACE_REGISTRY[moduleNamespace]) {
|
|
223
|
-
|
|
224
|
-
|
|
254
|
+
// Call private _checkDestroyed method
|
|
255
|
+
(app as unknown as { _checkDestroyed: () => void })._checkDestroyed();
|
|
256
|
+
return getOrCreateModuleForApp(app, moduleNamespace as KnownNamespace);
|
|
225
257
|
}
|
|
226
258
|
|
|
227
|
-
moduleWithDashes = moduleNamespace
|
|
259
|
+
const moduleWithDashes = moduleNamespace
|
|
228
260
|
.split(/(?=[A-Z])/)
|
|
229
261
|
.join('-')
|
|
230
262
|
.toLowerCase();
|
|
@@ -242,8 +274,9 @@ export function firebaseAppModuleProxy(app, moduleNamespace) {
|
|
|
242
274
|
*
|
|
243
275
|
* @returns {*}
|
|
244
276
|
*/
|
|
245
|
-
export function createFirebaseRoot() {
|
|
246
|
-
|
|
277
|
+
export function createFirebaseRoot(): FirebaseRoot {
|
|
278
|
+
// Create partial root object - module namespaces like 'utils' are added dynamically below
|
|
279
|
+
const root = {
|
|
247
280
|
initializeApp,
|
|
248
281
|
setReactNativeAsyncStorage,
|
|
249
282
|
get app() {
|
|
@@ -254,24 +287,27 @@ export function createFirebaseRoot() {
|
|
|
254
287
|
},
|
|
255
288
|
SDK_VERSION,
|
|
256
289
|
setLogLevel,
|
|
257
|
-
};
|
|
290
|
+
} as FirebaseRoot;
|
|
258
291
|
|
|
259
292
|
for (let i = 0; i < KNOWN_NAMESPACES.length; i++) {
|
|
260
293
|
const namespace = KNOWN_NAMESPACES[i];
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
294
|
+
if (namespace) {
|
|
295
|
+
Object.defineProperty(root, namespace, {
|
|
296
|
+
enumerable: false,
|
|
297
|
+
get: firebaseRootModuleProxy.bind(null, root, namespace),
|
|
298
|
+
});
|
|
299
|
+
}
|
|
265
300
|
}
|
|
266
301
|
|
|
267
|
-
|
|
302
|
+
FIREBASE_ROOT = root;
|
|
303
|
+
return root;
|
|
268
304
|
}
|
|
269
305
|
|
|
270
306
|
/**
|
|
271
307
|
*
|
|
272
308
|
* @returns {*}
|
|
273
309
|
*/
|
|
274
|
-
export function getFirebaseRoot() {
|
|
310
|
+
export function getFirebaseRoot(): FirebaseRoot {
|
|
275
311
|
if (FIREBASE_ROOT) {
|
|
276
312
|
return FIREBASE_ROOT;
|
|
277
313
|
}
|
|
@@ -283,17 +319,20 @@ export function getFirebaseRoot() {
|
|
|
283
319
|
* @param options
|
|
284
320
|
* @returns {*}
|
|
285
321
|
*/
|
|
286
|
-
export function createModuleNamespace(options
|
|
322
|
+
export function createModuleNamespace(options: NamespaceConfig): ModuleGetter {
|
|
287
323
|
const { namespace, ModuleClass } = options;
|
|
288
324
|
|
|
289
325
|
if (!NAMESPACE_REGISTRY[namespace]) {
|
|
290
326
|
// validation only for internal / module dev usage
|
|
291
|
-
|
|
327
|
+
const firebaseModuleExtended = (FirebaseModule as unknown as { __extended__: object })
|
|
328
|
+
.__extended__;
|
|
329
|
+
const moduleClassExtended = (ModuleClass as unknown as { __extended__: object }).__extended__;
|
|
330
|
+
if (firebaseModuleExtended !== moduleClassExtended) {
|
|
292
331
|
throw new Error('INTERNAL ERROR: ModuleClass must be an instance of FirebaseModule.');
|
|
293
332
|
}
|
|
294
333
|
|
|
295
334
|
NAMESPACE_REGISTRY[namespace] = Object.assign({}, options);
|
|
296
335
|
}
|
|
297
336
|
|
|
298
|
-
return getFirebaseRoot()[namespace];
|
|
337
|
+
return getFirebaseRoot()[namespace] as ModuleGetter;
|
|
299
338
|
}
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this library except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
import { APP_NATIVE_MODULE } from '../constants';
|
|
18
|
+
import NativeFirebaseError from '../NativeFirebaseError';
|
|
19
|
+
import type { NativeError } from '../../types/internal';
|
|
20
|
+
import RNFBNativeEventEmitter from '../RNFBNativeEventEmitter';
|
|
21
|
+
import SharedEventEmitter from '../SharedEventEmitter';
|
|
22
|
+
import { getReactNativeModule } from '../nativeModule';
|
|
23
|
+
import { isAndroid, isIOS } from '../../common';
|
|
24
|
+
import FirebaseModule from '../FirebaseModule';
|
|
25
|
+
import type { WrappedNativeModule, RNFBAppModuleInterface } from '../NativeModules';
|
|
26
|
+
import { encodeNullValues } from '../nullSerialization';
|
|
27
|
+
|
|
28
|
+
interface NativeEvent {
|
|
29
|
+
appName?: string;
|
|
30
|
+
databaseId?: string;
|
|
31
|
+
[key: string]: unknown;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const NATIVE_MODULE_REGISTRY: Record<string, WrappedNativeModule> = {};
|
|
35
|
+
const NATIVE_MODULE_EVENT_SUBSCRIPTIONS: Record<string, boolean> = {};
|
|
36
|
+
|
|
37
|
+
function nativeModuleKey(module: FirebaseModule): string {
|
|
38
|
+
return `${module._customUrlOrRegion || ''}:${module.app.name}:${module._config.namespace}`;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Wraps a native module method to provide
|
|
43
|
+
* auto prepended args and custom Error classes.
|
|
44
|
+
*
|
|
45
|
+
* @param namespace
|
|
46
|
+
* @param method
|
|
47
|
+
* @param argToPrepend
|
|
48
|
+
* @returns {Function}
|
|
49
|
+
*/
|
|
50
|
+
function nativeModuleMethodWrapped(
|
|
51
|
+
namespace: string,
|
|
52
|
+
method: (...args: unknown[]) => unknown,
|
|
53
|
+
argToPrepend: unknown[],
|
|
54
|
+
isTurboModule: boolean,
|
|
55
|
+
): (...args: unknown[]) => unknown {
|
|
56
|
+
return (...args: unknown[]) => {
|
|
57
|
+
// For iOS TurboModules, encode null values in arguments to work around
|
|
58
|
+
// the limitation where null values in object properties get stripped during serialization
|
|
59
|
+
// See: https://github.com/facebook/react-native/issues/52802
|
|
60
|
+
const processedArgs = isIOS && isTurboModule ? args.map(arg => encodeNullValues(arg)) : args;
|
|
61
|
+
const allArgs = [...argToPrepend, ...processedArgs];
|
|
62
|
+
const possiblePromise = method(...allArgs);
|
|
63
|
+
|
|
64
|
+
if (possiblePromise && typeof possiblePromise === 'object' && 'then' in possiblePromise) {
|
|
65
|
+
const jsStack = new Error().stack;
|
|
66
|
+
return (possiblePromise as Promise<unknown>).catch((nativeError: NativeError) =>
|
|
67
|
+
Promise.reject(new NativeFirebaseError(nativeError, jsStack as string, namespace)),
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return possiblePromise;
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Prepends all arguments in prependArgs to all native method calls
|
|
77
|
+
*
|
|
78
|
+
* @param namespace
|
|
79
|
+
* @param NativeModule - Raw native module from React Native
|
|
80
|
+
* @param argToPrepend
|
|
81
|
+
*/
|
|
82
|
+
function nativeModuleWrapped(
|
|
83
|
+
namespace: string,
|
|
84
|
+
NativeModule: Record<string, unknown> | undefined,
|
|
85
|
+
argToPrepend: unknown[],
|
|
86
|
+
isTurboModule: boolean,
|
|
87
|
+
): WrappedNativeModule {
|
|
88
|
+
const native: Record<string, unknown> = {};
|
|
89
|
+
if (!NativeModule) {
|
|
90
|
+
return NativeModule as unknown as WrappedNativeModule;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const nativeModuleObj = NativeModule;
|
|
94
|
+
let properties = Object.keys(Object.getPrototypeOf(nativeModuleObj));
|
|
95
|
+
if (!properties.length) properties = Object.keys(nativeModuleObj);
|
|
96
|
+
|
|
97
|
+
for (let i = 0, len = properties.length; i < len; i++) {
|
|
98
|
+
const property = properties[i];
|
|
99
|
+
if (!property) continue;
|
|
100
|
+
if (typeof nativeModuleObj[property] === 'function') {
|
|
101
|
+
native[property] = nativeModuleMethodWrapped(
|
|
102
|
+
namespace,
|
|
103
|
+
nativeModuleObj[property] as (...args: unknown[]) => unknown,
|
|
104
|
+
argToPrepend,
|
|
105
|
+
isTurboModule,
|
|
106
|
+
);
|
|
107
|
+
} else {
|
|
108
|
+
native[property] = nativeModuleObj[property];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
return native;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Initialises and wraps all the native module methods.
|
|
117
|
+
*
|
|
118
|
+
* @param module
|
|
119
|
+
* @returns {*}
|
|
120
|
+
*/
|
|
121
|
+
function initialiseNativeModule(module: FirebaseModule): WrappedNativeModule {
|
|
122
|
+
const config = module._config;
|
|
123
|
+
const key = nativeModuleKey(module);
|
|
124
|
+
const {
|
|
125
|
+
namespace,
|
|
126
|
+
nativeEvents,
|
|
127
|
+
nativeModuleName,
|
|
128
|
+
hasMultiAppSupport,
|
|
129
|
+
hasCustomUrlOrRegionSupport,
|
|
130
|
+
disablePrependCustomUrlOrRegion,
|
|
131
|
+
turboModule,
|
|
132
|
+
} = config;
|
|
133
|
+
const multiModuleRoot: WrappedNativeModule = {};
|
|
134
|
+
const isTurboModule = !!turboModule;
|
|
135
|
+
const multiModule = Array.isArray(nativeModuleName);
|
|
136
|
+
const nativeModuleNames = multiModule ? nativeModuleName : [nativeModuleName];
|
|
137
|
+
|
|
138
|
+
for (let i = 0; i < nativeModuleNames.length; i++) {
|
|
139
|
+
const moduleName = nativeModuleNames[i];
|
|
140
|
+
if (!moduleName) continue;
|
|
141
|
+
|
|
142
|
+
const nativeModule = getReactNativeModule(moduleName);
|
|
143
|
+
|
|
144
|
+
// only error if there's a single native module
|
|
145
|
+
// as multi modules can mean some are optional
|
|
146
|
+
if (!multiModule && !nativeModule) {
|
|
147
|
+
throw new Error(getMissingModuleHelpText(namespace));
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
if (multiModule) {
|
|
151
|
+
multiModuleRoot[moduleName] = !!nativeModule;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
const argToPrepend: Array<string> = [];
|
|
155
|
+
|
|
156
|
+
if (hasMultiAppSupport) {
|
|
157
|
+
argToPrepend.push(module.app.name);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
if (hasCustomUrlOrRegionSupport && !disablePrependCustomUrlOrRegion) {
|
|
161
|
+
argToPrepend.push(module._customUrlOrRegion as string);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
Object.assign(
|
|
165
|
+
multiModuleRoot,
|
|
166
|
+
nativeModuleWrapped(namespace, nativeModule, argToPrepend, isTurboModule),
|
|
167
|
+
);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
if (nativeEvents && Array.isArray(nativeEvents) && nativeEvents.length) {
|
|
171
|
+
for (let i = 0, len = nativeEvents.length; i < len; i++) {
|
|
172
|
+
const eventName = nativeEvents[i];
|
|
173
|
+
if (eventName) {
|
|
174
|
+
subscribeToNativeModuleEvent(eventName);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
Object.freeze(multiModuleRoot);
|
|
180
|
+
|
|
181
|
+
NATIVE_MODULE_REGISTRY[key] = multiModuleRoot;
|
|
182
|
+
|
|
183
|
+
return NATIVE_MODULE_REGISTRY[key];
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* Subscribe to a native event for js side distribution by appName
|
|
188
|
+
* React Native events are hard set at compile - cant do dynamic event names
|
|
189
|
+
* so we use a single event send it to js and js then internally can prefix it
|
|
190
|
+
* and distribute dynamically.
|
|
191
|
+
*
|
|
192
|
+
* @param eventName
|
|
193
|
+
* @private
|
|
194
|
+
*/
|
|
195
|
+
function subscribeToNativeModuleEvent(eventName: string): void {
|
|
196
|
+
if (!NATIVE_MODULE_EVENT_SUBSCRIPTIONS[eventName]) {
|
|
197
|
+
RNFBNativeEventEmitter.addListener(eventName, (...args: unknown[]) => {
|
|
198
|
+
const event = args[0] as NativeEvent;
|
|
199
|
+
if (event.appName && event.databaseId) {
|
|
200
|
+
// Firestore requires both appName and databaseId to prefix
|
|
201
|
+
SharedEventEmitter.emit(`${event.appName}-${event.databaseId}-${eventName}`, event);
|
|
202
|
+
} else if (event.appName) {
|
|
203
|
+
// native event has an appName property - auto prefix and internally emit
|
|
204
|
+
SharedEventEmitter.emit(`${event.appName}-${eventName}`, event);
|
|
205
|
+
} else {
|
|
206
|
+
// standard event - no need to prefix
|
|
207
|
+
SharedEventEmitter.emit(eventName, event);
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
|
|
211
|
+
NATIVE_MODULE_EVENT_SUBSCRIPTIONS[eventName] = true;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Help text for integrating the native counter parts for each firebase module.
|
|
217
|
+
*
|
|
218
|
+
* @param namespace
|
|
219
|
+
* @returns {string}
|
|
220
|
+
*/
|
|
221
|
+
function getMissingModuleHelpText(namespace: string): string {
|
|
222
|
+
const snippet = `firebase.${namespace}()`;
|
|
223
|
+
|
|
224
|
+
if (isIOS || isAndroid) {
|
|
225
|
+
return (
|
|
226
|
+
`You attempted to use a Firebase module that's not installed natively on your project by calling ${snippet}.` +
|
|
227
|
+
`\r\n\r\nEnsure you have installed the npm package '@react-native-firebase/${namespace}',` +
|
|
228
|
+
' have imported it in your project, and have rebuilt your native application.'
|
|
229
|
+
);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
return (
|
|
233
|
+
`You attempted to use a Firebase module that's not installed on your project by calling ${snippet}.` +
|
|
234
|
+
`\r\n\r\nEnsure you have installed the npm package '@react-native-firebase/${namespace}' and` +
|
|
235
|
+
' have imported it in your project.'
|
|
236
|
+
);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Gets a wrapped native module instance for the provided firebase module.
|
|
241
|
+
* Will attempt to create a new instance if non previously created.
|
|
242
|
+
*
|
|
243
|
+
* @param module
|
|
244
|
+
* @returns {*}
|
|
245
|
+
*/
|
|
246
|
+
export function getNativeModule(module: FirebaseModule): WrappedNativeModule {
|
|
247
|
+
const key = nativeModuleKey(module);
|
|
248
|
+
|
|
249
|
+
if (NATIVE_MODULE_REGISTRY[key]) {
|
|
250
|
+
return NATIVE_MODULE_REGISTRY[key];
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
return initialiseNativeModule(module);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Custom wrapped app module as it does not have it's own FirebaseModule based class.
|
|
258
|
+
*
|
|
259
|
+
* @returns {*}
|
|
260
|
+
*/
|
|
261
|
+
export function getAppModule(): RNFBAppModuleInterface {
|
|
262
|
+
if (NATIVE_MODULE_REGISTRY[APP_NATIVE_MODULE]) {
|
|
263
|
+
return NATIVE_MODULE_REGISTRY[APP_NATIVE_MODULE] as unknown as RNFBAppModuleInterface;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
const namespace = 'app';
|
|
267
|
+
const nativeModule = getReactNativeModule(APP_NATIVE_MODULE);
|
|
268
|
+
|
|
269
|
+
if (!nativeModule) {
|
|
270
|
+
throw new Error(getMissingModuleHelpText(namespace));
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
NATIVE_MODULE_REGISTRY[APP_NATIVE_MODULE] = nativeModuleWrapped(
|
|
274
|
+
namespace,
|
|
275
|
+
nativeModule,
|
|
276
|
+
[],
|
|
277
|
+
// TODO: change to true when we use TurboModules for app package
|
|
278
|
+
false,
|
|
279
|
+
);
|
|
280
|
+
|
|
281
|
+
return NATIVE_MODULE_REGISTRY[APP_NATIVE_MODULE] as unknown as RNFBAppModuleInterface;
|
|
282
|
+
}
|