@react-native-firebase/database 25.1.0 → 26.1.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 (136) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/RNFBDatabase.podspec +20 -7
  3. package/android/build.gradle +19 -0
  4. package/android/src/main/java/io/invertase/firebase/database/UniversalFirebaseDatabaseModule.java +4 -14
  5. package/android/src/reactnative/java/io/invertase/firebase/database/DatabaseTurboModuleSupport.java +56 -0
  6. package/android/src/reactnative/java/io/invertase/firebase/database/{ReactNativeFirebaseDatabaseModule.java → NativeRNFBTurboDatabase.java} +16 -36
  7. package/android/src/reactnative/java/io/invertase/firebase/database/{ReactNativeFirebaseDatabaseOnDisconnectModule.java → NativeRNFBTurboDatabaseOnDisconnect.java} +19 -14
  8. package/android/src/reactnative/java/io/invertase/firebase/database/{ReactNativeFirebaseDatabaseQueryModule.java → NativeRNFBTurboDatabaseQuery.java} +41 -105
  9. package/android/src/reactnative/java/io/invertase/firebase/database/{ReactNativeFirebaseDatabaseReferenceModule.java → NativeRNFBTurboDatabaseReference.java} +27 -20
  10. package/android/src/reactnative/java/io/invertase/firebase/database/{ReactNativeFirebaseDatabaseTransactionModule.java → NativeRNFBTurboDatabaseTransaction.java} +41 -19
  11. package/android/src/reactnative/java/io/invertase/firebase/database/ReactNativeFirebaseDatabasePackage.java +5 -5
  12. package/android/src/reactnative/java/io/invertase/firebase/database/ReactNativeFirebaseDatabaseTransactionHandler.java +11 -0
  13. package/android/src/reactnative/java/io/invertase/firebase/database/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboDatabaseOnDisconnectSpec.java +55 -0
  14. package/android/src/reactnative/java/io/invertase/firebase/database/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboDatabaseQuerySpec.java +52 -0
  15. package/android/src/reactnative/java/io/invertase/firebase/database/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboDatabaseReferenceSpec.java +55 -0
  16. package/android/src/reactnative/java/io/invertase/firebase/database/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboDatabaseSpec.java +57 -0
  17. package/android/src/reactnative/java/io/invertase/firebase/database/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboDatabaseTransactionSpec.java +42 -0
  18. package/android/src/reactnative/java/io/invertase/firebase/database/generated/jni/CMakeLists.txt +36 -0
  19. package/android/src/reactnative/java/io/invertase/firebase/database/generated/jni/RNFBDatabaseTurboModules-generated.cpp +182 -0
  20. package/android/src/reactnative/java/io/invertase/firebase/database/generated/jni/RNFBDatabaseTurboModules.h +63 -0
  21. package/android/src/reactnative/java/io/invertase/firebase/database/generated/jni/react/renderer/components/RNFBDatabaseTurboModules/RNFBDatabaseTurboModulesJSI-generated.cpp +257 -0
  22. package/android/src/reactnative/java/io/invertase/firebase/database/generated/jni/react/renderer/components/RNFBDatabaseTurboModules/RNFBDatabaseTurboModulesJSI.h +440 -0
  23. package/dist/module/DatabaseDataSnapshot.js +20 -6
  24. package/dist/module/DatabaseDataSnapshot.js.map +1 -1
  25. package/dist/module/DatabaseOnDisconnect.js.map +1 -1
  26. package/dist/module/DatabaseQuery.js +13 -16
  27. package/dist/module/DatabaseQuery.js.map +1 -1
  28. package/dist/module/DatabaseReference.js +16 -15
  29. package/dist/module/DatabaseReference.js.map +1 -1
  30. package/dist/module/DatabaseSyncTree.js +5 -4
  31. package/dist/module/DatabaseSyncTree.js.map +1 -1
  32. package/dist/module/DatabaseThenableReference.js +1 -2
  33. package/dist/module/DatabaseThenableReference.js.map +1 -1
  34. package/dist/module/index.js +210 -5
  35. package/dist/module/index.js.map +1 -1
  36. package/dist/module/modular/query.js +14 -15
  37. package/dist/module/modular/query.js.map +1 -1
  38. package/dist/module/modular/transaction.js +1 -2
  39. package/dist/module/modular/transaction.js.map +1 -1
  40. package/dist/module/version.js +1 -1
  41. package/dist/module/web/RNFBDatabaseModule.js +4 -8
  42. package/dist/module/web/RNFBDatabaseModule.js.map +1 -1
  43. package/dist/typescript/lib/DatabaseDataSnapshot.d.ts +9 -7
  44. package/dist/typescript/lib/DatabaseDataSnapshot.d.ts.map +1 -1
  45. package/dist/typescript/lib/DatabaseOnDisconnect.d.ts +3 -3
  46. package/dist/typescript/lib/DatabaseOnDisconnect.d.ts.map +1 -1
  47. package/dist/typescript/lib/DatabaseQuery.d.ts +18 -18
  48. package/dist/typescript/lib/DatabaseQuery.d.ts.map +1 -1
  49. package/dist/typescript/lib/DatabaseReference.d.ts +8 -8
  50. package/dist/typescript/lib/DatabaseReference.d.ts.map +1 -1
  51. package/dist/typescript/lib/DatabaseSyncTree.d.ts +2 -2
  52. package/dist/typescript/lib/DatabaseSyncTree.d.ts.map +1 -1
  53. package/dist/typescript/lib/DatabaseThenableReference.d.ts +8 -8
  54. package/dist/typescript/lib/DatabaseThenableReference.d.ts.map +1 -1
  55. package/dist/typescript/lib/index.d.ts +57 -4
  56. package/dist/typescript/lib/index.d.ts.map +1 -1
  57. package/dist/typescript/lib/modular/query.d.ts.map +1 -1
  58. package/dist/typescript/lib/modular/transaction.d.ts.map +1 -1
  59. package/dist/typescript/lib/types/database.d.ts +5 -5
  60. package/dist/typescript/lib/types/database.d.ts.map +1 -1
  61. package/dist/typescript/lib/types/internal.d.ts +32 -31
  62. package/dist/typescript/lib/types/internal.d.ts.map +1 -1
  63. package/dist/typescript/lib/version.d.ts +1 -1
  64. package/dist/typescript/lib/web/RNFBDatabaseModule.d.ts.map +1 -1
  65. package/ios/RNFBDatabase/RNFBDatabaseCommon.h +13 -6
  66. package/ios/RNFBDatabase/RNFBDatabaseCommon.m +2 -10
  67. package/ios/RNFBDatabase/RNFBDatabaseConstants.h +25 -0
  68. package/ios/RNFBDatabase/RNFBDatabaseModule.mm +90 -0
  69. package/ios/RNFBDatabase/RNFBDatabaseModuleHelper.h +39 -0
  70. package/ios/RNFBDatabase/RNFBDatabaseModuleHelper.m +64 -0
  71. package/ios/RNFBDatabase/RNFBDatabaseOnDisconnectHelper.h +59 -0
  72. package/ios/RNFBDatabase/{RNFBDatabaseOnDisconnectModule.m → RNFBDatabaseOnDisconnectHelper.m} +41 -47
  73. package/ios/RNFBDatabase/RNFBDatabaseOnDisconnectModule.mm +121 -0
  74. package/ios/RNFBDatabase/RNFBDatabaseQuery.h +11 -0
  75. package/ios/RNFBDatabase/RNFBDatabaseQueryHelper.h +49 -0
  76. package/ios/RNFBDatabase/{RNFBDatabaseQueryModule.m → RNFBDatabaseQueryHelper.m} +77 -91
  77. package/ios/RNFBDatabase/RNFBDatabaseQueryModule.h +5 -1
  78. package/ios/RNFBDatabase/RNFBDatabaseQueryModule.mm +105 -0
  79. package/ios/RNFBDatabase/RNFBDatabaseQueue.h +29 -0
  80. package/ios/RNFBDatabase/RNFBDatabaseQueue.m +31 -0
  81. package/ios/RNFBDatabase/RNFBDatabaseReferenceHelper.h +59 -0
  82. package/ios/RNFBDatabase/{RNFBDatabaseReferenceModule.m → RNFBDatabaseReferenceHelper.m} +42 -48
  83. package/ios/RNFBDatabase/RNFBDatabaseReferenceModule.mm +125 -0
  84. package/ios/RNFBDatabase/RNFBDatabaseTransactionHelper.h +38 -0
  85. package/ios/RNFBDatabase/{RNFBDatabaseTransactionModule.m → RNFBDatabaseTransactionHelper.m} +52 -51
  86. package/ios/RNFBDatabase/RNFBDatabaseTransactionModule.h +0 -1
  87. package/ios/RNFBDatabase/RNFBDatabaseTransactionModule.mm +86 -0
  88. package/ios/RNFBDatabase.xcodeproj/project.pbxproj +24 -24
  89. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  90. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  91. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  92. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  93. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  94. package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
  95. package/ios/generated/RNFBDatabaseTurboModules/RNFBDatabaseTurboModules-generated.mm +254 -0
  96. package/ios/generated/RNFBDatabaseTurboModules/RNFBDatabaseTurboModules.h +264 -0
  97. package/ios/generated/RNFBDatabaseTurboModulesJSI-generated.cpp +257 -0
  98. package/ios/generated/RNFBDatabaseTurboModulesJSI.h +440 -0
  99. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  100. package/lib/DatabaseDataSnapshot.ts +43 -38
  101. package/lib/DatabaseOnDisconnect.ts +3 -3
  102. package/lib/DatabaseQuery.ts +45 -77
  103. package/lib/DatabaseReference.ts +37 -66
  104. package/lib/DatabaseSyncTree.ts +8 -11
  105. package/lib/DatabaseThenableReference.ts +9 -17
  106. package/lib/index.ts +325 -6
  107. package/lib/modular/query.ts +14 -70
  108. package/lib/modular/transaction.ts +1 -4
  109. package/lib/types/database.ts +5 -5
  110. package/lib/types/internal.ts +31 -56
  111. package/lib/version.ts +1 -1
  112. package/lib/web/RNFBDatabaseModule.ts +6 -10
  113. package/package.json +26 -4
  114. package/react-native.config.js +10 -0
  115. package/specs/NativeRNFBTurboDatabase.ts +13 -0
  116. package/specs/NativeRNFBTurboDatabaseOnDisconnect.ts +18 -0
  117. package/specs/NativeRNFBTurboDatabaseQuery.ts +25 -0
  118. package/specs/NativeRNFBTurboDatabaseReference.ts +13 -0
  119. package/specs/NativeRNFBTurboDatabaseTransaction.ts +16 -0
  120. package/typedoc.json +1 -1
  121. package/dist/module/modular.js +0 -76
  122. package/dist/module/modular.js.map +0 -1
  123. package/dist/module/namespaced.js +0 -147
  124. package/dist/module/namespaced.js.map +0 -1
  125. package/dist/module/types/namespaced.js +0 -67
  126. package/dist/module/types/namespaced.js.map +0 -1
  127. package/dist/typescript/lib/modular.d.ts +0 -24
  128. package/dist/typescript/lib/modular.d.ts.map +0 -1
  129. package/dist/typescript/lib/namespaced.d.ts +0 -13
  130. package/dist/typescript/lib/namespaced.d.ts.map +0 -1
  131. package/dist/typescript/lib/types/namespaced.d.ts +0 -1230
  132. package/dist/typescript/lib/types/namespaced.d.ts.map +0 -1
  133. package/ios/RNFBDatabase/RNFBDatabaseModule.m +0 -100
  134. package/lib/modular.ts +0 -134
  135. package/lib/namespaced.ts +0 -253
  136. package/lib/types/namespaced.ts +0 -1366
@@ -1,9 +1,6 @@
1
1
  import type { ReactNativeFirebase } from '@react-native-firebase/app';
2
2
  import type { DataSnapshot, Database, DatabaseReference, EventType, EmulatorMockTokenOptions, ListenOptions, OnDisconnect, Query, QueryConstraint, QueryConstraintType, ThenableReference, TransactionResult } from './database';
3
- import type { FirebaseDatabaseTypes } from './namespaced';
4
3
  import type { DatabaseQueryModifier } from '../DatabaseQueryModifiers';
5
- /** Optional final argument passed by modular API wrappers (MODULAR_DEPRECATION_ARG). */
6
- export type DatabaseModularDeprecationArg = string;
7
4
  /** App instance with database() method (e.g. from getApp() when used for getDatabase()). */
8
5
  export interface AppWithDatabaseInternal {
9
6
  database(url?: string): Database;
@@ -12,15 +9,15 @@ export interface AppWithDatabaseInternal {
12
9
  export interface DatabaseWithMethodsInternal extends Database {
13
10
  useEmulator(host: string, port: number, options?: {
14
11
  mockUserToken?: EmulatorMockTokenOptions | string;
15
- }, deprecationArg?: DatabaseModularDeprecationArg): unknown;
16
- goOffline(deprecationArg?: DatabaseModularDeprecationArg): unknown;
17
- goOnline(deprecationArg?: DatabaseModularDeprecationArg): unknown;
18
- ref(path?: string, deprecationArg?: DatabaseModularDeprecationArg): DatabaseReference;
19
- refFromURL(url: string, deprecationArg?: DatabaseModularDeprecationArg): DatabaseReference;
20
- setPersistenceEnabled(enabled: boolean, deprecationArg?: DatabaseModularDeprecationArg): unknown;
21
- setLoggingEnabled(enabled: boolean, deprecationArg?: DatabaseModularDeprecationArg): unknown;
22
- setPersistenceCacheSizeBytes(bytes: number, deprecationArg?: DatabaseModularDeprecationArg): unknown;
23
- getServerTime(deprecationArg?: DatabaseModularDeprecationArg): Date;
12
+ }): unknown;
13
+ goOffline(): unknown;
14
+ goOnline(): unknown;
15
+ ref(path?: string): DatabaseReference;
16
+ refFromURL(url: string): DatabaseReference;
17
+ setPersistenceEnabled(enabled: boolean): unknown;
18
+ setLoggingEnabled(enabled: boolean): unknown;
19
+ setPersistenceCacheSizeBytes(bytes: number): unknown;
20
+ getServerTime(): Date;
24
21
  }
25
22
  /** Native emitter subscription returned by addListener. */
26
23
  export interface DatabaseEmitterSubscriptionInternal {
@@ -85,8 +82,8 @@ export interface DatabaseEventEmitterInternal {
85
82
  }
86
83
  /** Wrapped native module interface for database. */
87
84
  export interface RNFBDatabaseModule {
88
- goOnline(): Promise<void>;
89
- goOffline(): Promise<void>;
85
+ goOnline(): void;
86
+ goOffline(): void;
90
87
  setPersistenceEnabled(enabled: boolean): Promise<void>;
91
88
  setLoggingEnabled(enabled: boolean): Promise<void>;
92
89
  setPersistenceCacheSizeBytes(bytes: number): Promise<void>;
@@ -105,7 +102,7 @@ export interface RNFBDatabaseModule {
105
102
  setPriority(path: string, props: {
106
103
  priority: string | number | null;
107
104
  }): Promise<void>;
108
- once(path: string, modifiers: DatabaseQueryModifier[], eventType: FirebaseDatabaseTypes.EventType): Promise<DatabaseSnapshotInternal | DatabaseChildSnapshotResultInternal>;
105
+ once(path: string, modifiers: DatabaseQueryModifier[], eventType: EventType): Promise<DatabaseSnapshotInternal | DatabaseChildSnapshotResultInternal>;
109
106
  on(props: DatabaseListenPropsInternal): void;
110
107
  off(queryKey: string, eventRegistrationKey: string): void | Promise<void>;
111
108
  keepSynced(queryKey: string, path: string, modifiers: DatabaseQueryModifier[], value: boolean): Promise<void>;
@@ -126,21 +123,25 @@ export interface RNFBDatabaseModule {
126
123
  }
127
124
  declare module '@react-native-firebase/app/dist/module/internal/NativeModules' {
128
125
  interface ReactNativeFirebaseNativeModules {
129
- RNFBDatabaseModule: RNFBDatabaseModule;
126
+ NativeRNFBTurboDatabase: RNFBDatabaseModule;
127
+ NativeRNFBTurboDatabaseReference: RNFBDatabaseModule;
128
+ NativeRNFBTurboDatabaseQuery: RNFBDatabaseModule;
129
+ NativeRNFBTurboDatabaseOnDisconnect: RNFBDatabaseModule;
130
+ NativeRNFBTurboDatabaseTransaction: RNFBDatabaseModule;
130
131
  }
131
132
  }
132
133
  /** Legacy DatabaseReference shape needed by namespaced/runtime helpers before full TS port. */
133
134
  export interface DatabaseReferenceInternal {
134
135
  readonly path: string;
135
- on(eventType: FirebaseDatabaseTypes.EventType, callback: (data: FirebaseDatabaseTypes.DataSnapshot, previousChildKey?: string | null) => void, cancelCallbackOrContext?: ((a: Error) => void) | Record<string, any> | DatabaseModularDeprecationArg | null, context?: Record<string, any> | null): (a: FirebaseDatabaseTypes.DataSnapshot | null, b?: string | null) => void;
136
+ on(eventType: EventType, callback: (data: DataSnapshot, previousChildKey?: string | null) => void, cancelCallbackOrContext?: ((a: Error) => void) | Record<string, any> | null, context?: Record<string, any> | null): (a: DataSnapshot | null, b?: string | null) => void;
136
137
  }
137
138
  /** Query instance viewed through the chainable query modifier methods. */
138
139
  export type QueryWithModifiersInternal = Query & Record<QueryConstraintType, (...args: Array<unknown>) => Query>;
139
140
  /** Query instance viewed through the subscription helpers used by modular wrappers. */
140
141
  export interface QueryWithSubscriptionMethodsInternal extends Query {
141
- on(eventType: EventType, callback: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, cancelCallbackOrContext?: ((error: Error) => unknown) | ListenOptions | DatabaseModularDeprecationArg, context?: ListenOptions | null, deprecationArg?: DatabaseModularDeprecationArg): unknown;
142
- off(eventType?: EventType, callback?: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, context?: null, deprecationArg?: DatabaseModularDeprecationArg): void;
143
- once(eventType: EventType, successCallback?: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, failureCallbackContext?: ((error: Error) => void) | null, context?: ListenOptions, deprecationArg?: DatabaseModularDeprecationArg): Promise<DataSnapshot>;
142
+ on(eventType: EventType, callback: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, cancelCallbackOrContext?: ((error: Error) => unknown) | ListenOptions, context?: ListenOptions | null): unknown;
143
+ off(eventType?: EventType, callback?: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, context?: null): void;
144
+ once(eventType: EventType, successCallback?: (snapshot: DataSnapshot, previousChildName?: string | null) => unknown, failureCallbackContext?: ((error: Error) => void) | null, context?: ListenOptions): Promise<DataSnapshot>;
144
145
  }
145
146
  /** Query constraint instance that can apply itself to a query. */
146
147
  export interface QueryConstraintWithApplyInternal extends QueryConstraint {
@@ -148,15 +149,15 @@ export interface QueryConstraintWithApplyInternal extends QueryConstraint {
148
149
  }
149
150
  /** Database reference viewed through the mutating modular helpers. */
150
151
  export interface DatabaseReferenceWithMethodsInternal extends DatabaseReference {
151
- set(value: unknown, onComplete?: () => void, deprecationArg?: DatabaseModularDeprecationArg): Promise<void>;
152
- setPriority(priority: string | number | null, onComplete?: () => void, deprecationArg?: DatabaseModularDeprecationArg): Promise<void>;
153
- setWithPriority(value: unknown, priority: string | number | null, onComplete?: () => void, deprecationArg?: DatabaseModularDeprecationArg): Promise<void>;
154
- child(path: string, deprecationArg?: DatabaseModularDeprecationArg): DatabaseReference;
155
- onDisconnect(deprecationArg?: DatabaseModularDeprecationArg): OnDisconnect;
156
- keepSynced(value: boolean, deprecationArg?: DatabaseModularDeprecationArg): Promise<void>;
157
- push(value?: unknown, onComplete?: undefined, deprecationArg?: DatabaseModularDeprecationArg): ThenableReference;
158
- remove(deprecationArg?: DatabaseModularDeprecationArg): Promise<void>;
159
- update(values: object, deprecationArg?: DatabaseModularDeprecationArg): Promise<void>;
152
+ set(value: unknown, onComplete?: (error: Error | null) => void): Promise<void>;
153
+ setPriority(priority: string | number | null, onComplete?: (error: Error | null) => void): Promise<void>;
154
+ setWithPriority(value: unknown, priority: string | number | null, onComplete?: (error: Error | null) => void): Promise<void>;
155
+ child(path: string): DatabaseReference;
156
+ onDisconnect(): OnDisconnect;
157
+ keepSynced(value: boolean): Promise<void>;
158
+ push(value?: unknown, onComplete?: undefined): ThenableReference;
159
+ remove(): Promise<void>;
160
+ update(values: object): Promise<void>;
160
161
  }
161
162
  /** Minimal transaction handler contract used by DatabaseReference and namespaced module. */
162
163
  export interface DatabaseTransactionInternal {
@@ -179,11 +180,11 @@ export interface DatabaseInternal extends Database, DatabaseModuleInternal {
179
180
  }
180
181
  /** Database reference viewed through the transaction modular helper. */
181
182
  export interface DatabaseReferenceWithTransactionInternal extends DatabaseReference {
182
- transaction(transactionUpdate: (currentData: any) => unknown, onComplete?: undefined, applyLocally?: boolean, deprecationArg?: DatabaseModularDeprecationArg): Promise<TransactionResult>;
183
+ transaction(transactionUpdate: (currentData: any) => unknown, onComplete?: undefined, applyLocally?: boolean): Promise<TransactionResult>;
183
184
  }
184
185
  /** Runtime ServerValue object shape used by modular wrappers. */
185
186
  export interface ServerValueStaticInternal {
186
187
  TIMESTAMP: object;
187
- increment(delta: number, deprecationArg?: DatabaseModularDeprecationArg): object;
188
+ increment(delta: number): object;
188
189
  }
189
190
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../lib/types/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../lib/types/internal.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const version = "25.1.0";
1
+ export declare const version = "26.1.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RNFBDatabaseModule.d.ts","sourceRoot":"","sources":["../../../../lib/web/RNFBDatabaseModule.ts"],"names":[],"mappings":"AA+HA,QAAA,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAoZnD,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"RNFBDatabaseModule.d.ts","sourceRoot":"","sources":["../../../../lib/web/RNFBDatabaseModule.ts"],"names":[],"mappings":"AA+HA,QAAA,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAgZnD,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -15,15 +15,26 @@
15
15
  *
16
16
  */
17
17
 
18
+ #if __has_include(<Firebase/Firebase.h>)
18
19
  #import <Firebase/Firebase.h>
20
+ #elif __has_include(<FirebaseDatabase/FirebaseDatabase-Swift.h>)
21
+ // SPM: the declared product is the thin Swift wrapper `FirebaseDatabase`
22
+ // (which depends on `FirebaseDatabaseInternal`, not exposed to us directly).
23
+ // Its generated ObjC interface header is what's importable here.
24
+ #import <FirebaseCore/FirebaseCore.h>
25
+ #import <FirebaseDatabase/FirebaseDatabase-Swift.h>
26
+ #else
27
+ @import FirebaseCore;
28
+ @import FirebaseDatabaseInternal;
29
+ #endif
19
30
  #import <React/RCTBridgeModule.h>
20
31
 
32
+ #import "RNFBDatabaseConstants.h"
33
+
21
34
  @interface RNFBDatabaseCommon : NSObject
22
35
 
23
36
  + (FIRDatabase *)getDatabaseForApp:(FIRApp *)firebaseApp dbURL:(NSString *)dbURL;
24
37
 
25
- + (dispatch_queue_t)getDispatchQueue;
26
-
27
38
  + (void)setDatabaseConfig:(FIRDatabase *)firDatabase dbURL:(NSString *)dbURL;
28
39
 
29
40
  + (FIRDatabaseReference *)getReferenceForDatabase:(FIRDatabase *)firebaseDatabase
@@ -49,7 +60,3 @@
49
60
  + (NSMutableArray *)getSnapshotChildKeys:(FIRDataSnapshot *)dataSnapshot;
50
61
 
51
62
  @end
52
-
53
- extern NSString *const DATABASE_PERSISTENCE_ENABLED;
54
- extern NSString *const DATABASE_LOGGING_ENABLED;
55
- extern NSString *const DATABASE_PERSISTENCE_CACHE_SIZE;
@@ -17,6 +17,7 @@
17
17
 
18
18
  #import "RNFBDatabaseCommon.h"
19
19
  #import "RNFBApp/RNFBSharedUtils.h"
20
+ #import "RNFBDatabaseQueue.h"
20
21
  #import "RNFBPreferences.h"
21
22
 
22
23
  static __strong NSMutableDictionary *references;
@@ -36,15 +37,6 @@ NSString *const childKeysKey = @"childKeys";
36
37
  configSettingsLock = [NSMutableDictionary dictionary];
37
38
  }
38
39
 
39
- + (dispatch_queue_t)getDispatchQueue {
40
- static dispatch_once_t once;
41
- __strong static dispatch_queue_t sharedInstance;
42
- dispatch_once(&once, ^{
43
- sharedInstance = dispatch_queue_create("io.invertase.firebase.database", DISPATCH_QUEUE_SERIAL);
44
- });
45
- return sharedInstance;
46
- }
47
-
48
40
  + (FIRDatabase *)getDatabaseForApp:(FIRApp *)firebaseApp dbURL:(NSString *)dbURL {
49
41
  FIRDatabase *firDatabase;
50
42
 
@@ -75,7 +67,7 @@ NSString *const childKeysKey = @"childKeys";
75
67
  RNFBPreferences *preferences = [RNFBPreferences shared];
76
68
 
77
69
  @try {
78
- firDatabase.callbackQueue = [RNFBDatabaseCommon getDispatchQueue];
70
+ firDatabase.callbackQueue = [RNFBDatabaseQueue getDispatchQueue];
79
71
  // Persistence enabled
80
72
  BOOL *persistenceEnabled = (BOOL *)[preferences getBooleanValue:DATABASE_PERSISTENCE_ENABLED
81
73
  defaultValue:false];
@@ -0,0 +1,25 @@
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
+
18
+ #import <Foundation/Foundation.h>
19
+
20
+ // Deliberately Firebase-free (see RNFBDatabaseQueue.h) so Objective-C++
21
+ // (.mm) modules can reference these preference keys without importing
22
+ // Firebase Database headers. Defined in RNFBDatabaseCommon.m.
23
+ extern NSString *const DATABASE_PERSISTENCE_ENABLED;
24
+ extern NSString *const DATABASE_LOGGING_ENABLED;
25
+ extern NSString *const DATABASE_PERSISTENCE_CACHE_SIZE;
@@ -0,0 +1,90 @@
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
+
18
+ #import <React/RCTUtils.h>
19
+
20
+ #import "RNFBDatabaseConstants.h"
21
+ #import "RNFBDatabaseModule.h"
22
+ #import "RNFBDatabaseModuleHelper.h"
23
+ #import "RNFBDatabaseQueue.h"
24
+ #import "RNFBDatabaseTurboModules.h"
25
+ #import "RNFBPreferences.h"
26
+
27
+ // NOTE: This module deliberately never imports Firebase Database headers -
28
+ // `FirebaseDatabase` is a Swift-only SPM product, and `@import` for
29
+ // Swift-only products cannot be used from Objective-C++ (.mm) files when
30
+ // C++ modules are disabled (required for compatibility with React Native's
31
+ // JSI headers). All Firebase Database calls are delegated to the plain
32
+ // Objective-C `RNFBDatabaseModuleHelper`. See docs/ios-spm.mdx and
33
+ // okf-bundle/ios-spm-native-imports.md for details.
34
+
35
+ @interface RNFBDatabaseModule () <NativeRNFBTurboDatabaseSpec, RCTBridgeModule>
36
+ @end
37
+
38
+ @implementation RNFBDatabaseModule
39
+ #pragma mark -
40
+ #pragma mark Module Setup
41
+
42
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
43
+ (const facebook::react::ObjCTurboModule::InitParams &)params {
44
+ return std::make_shared<facebook::react::NativeRNFBTurboDatabaseSpecJSI>(params);
45
+ }
46
+
47
+ RCT_EXPORT_MODULE(NativeRNFBTurboDatabase);
48
+
49
+ + (BOOL)requiresMainQueueSetup {
50
+ return NO;
51
+ }
52
+
53
+ - (dispatch_queue_t)methodQueue {
54
+ return [RNFBDatabaseQueue getDispatchQueue];
55
+ }
56
+
57
+ #pragma mark -
58
+ #pragma mark Firebase Database
59
+
60
+ - (void)goOnline:(NSString *)app dbURL:(NSString *)dbURL {
61
+ [RNFBDatabaseModuleHelper goOnline:app dbURL:dbURL];
62
+ }
63
+
64
+ - (void)goOffline:(NSString *)app dbURL:(NSString *)dbURL {
65
+ [RNFBDatabaseModuleHelper goOffline:app dbURL:dbURL];
66
+ }
67
+
68
+ - (void)useEmulator:(NSString *)app
69
+ dbURL:(NSString *)dbURL
70
+ host:(NSString *)host
71
+ port:(double)port {
72
+ [RNFBDatabaseModuleHelper useEmulator:app dbURL:dbURL host:host port:(NSInteger)port];
73
+ }
74
+
75
+ - (void)setPersistenceEnabled:(NSString *)app dbURL:(NSString *)dbURL enabled:(BOOL)enabled {
76
+ [[RNFBPreferences shared] setBooleanValue:DATABASE_PERSISTENCE_ENABLED boolValue:enabled];
77
+ }
78
+
79
+ - (void)setLoggingEnabled:(NSString *)app dbURL:(NSString *)dbURL enabled:(BOOL)enabled {
80
+ [[RNFBPreferences shared] setBooleanValue:DATABASE_LOGGING_ENABLED boolValue:enabled];
81
+ }
82
+
83
+ - (void)setPersistenceCacheSizeBytes:(NSString *)app
84
+ dbURL:(NSString *)dbURL
85
+ cacheSizeBytes:(double)cacheSizeBytes {
86
+ [[RNFBPreferences shared] setIntegerValue:DATABASE_PERSISTENCE_CACHE_SIZE
87
+ integerValue:(NSInteger)cacheSizeBytes];
88
+ }
89
+
90
+ @end
@@ -0,0 +1,39 @@
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
+
18
+ #import <Foundation/Foundation.h>
19
+
20
+ // Plain Objective-C helper (see docs/ios-spm.mdx and
21
+ // okf-bundle/ios-spm-native-imports.md) that owns every call touching
22
+ // `FIRDatabase`/`FIRDatabaseReference` for the main database module. This
23
+ // keeps `RNFBDatabaseModule.mm` free of Firebase Database imports, which is
24
+ // required because `FirebaseDatabase` is a Swift-only SPM product and
25
+ // `@import` for Swift-only products is unusable from Objective-C++ (.mm)
26
+ // files when C++ modules are disabled (required by React Native's JSI
27
+ // headers).
28
+ @interface RNFBDatabaseModuleHelper : NSObject
29
+
30
+ + (void)goOnline:(NSString *)app dbURL:(NSString *)dbURL;
31
+
32
+ + (void)goOffline:(NSString *)app dbURL:(NSString *)dbURL;
33
+
34
+ + (void)useEmulator:(NSString *)app
35
+ dbURL:(NSString *)dbURL
36
+ host:(NSString *)host
37
+ port:(NSInteger)port;
38
+
39
+ @end
@@ -0,0 +1,64 @@
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
+
18
+ #if __has_include(<Firebase/Firebase.h>)
19
+ #import <Firebase/Firebase.h>
20
+ #else
21
+ @import FirebaseCore;
22
+ @import FirebaseDatabaseInternal;
23
+ #endif
24
+
25
+ #import "RNFBApp/RCTConvert+FIRApp.h"
26
+ #import "RNFBDatabaseCommon.h"
27
+ #import "RNFBDatabaseModuleHelper.h"
28
+
29
+ static __strong NSMutableDictionary *emulatorSettings;
30
+
31
+ @implementation RNFBDatabaseModuleHelper
32
+
33
+ + (void)goOnline:(NSString *)app dbURL:(NSString *)dbURL {
34
+ FIRApp *firebaseApp = [RCTConvert firAppFromString:app];
35
+ [[RNFBDatabaseCommon getDatabaseForApp:firebaseApp dbURL:dbURL] goOnline];
36
+ }
37
+
38
+ + (void)goOffline:(NSString *)app dbURL:(NSString *)dbURL {
39
+ FIRApp *firebaseApp = [RCTConvert firAppFromString:app];
40
+ [[RNFBDatabaseCommon getDatabaseForApp:firebaseApp dbURL:dbURL] goOffline];
41
+ }
42
+
43
+ + (void)useEmulator:(NSString *)app
44
+ dbURL:(NSString *)dbURL
45
+ host:(NSString *)host
46
+ port:(NSInteger)port {
47
+ FIRApp *firebaseApp = [RCTConvert firAppFromString:app];
48
+ if (emulatorSettings == nil) {
49
+ emulatorSettings = [NSMutableDictionary dictionary];
50
+ }
51
+
52
+ NSMutableString *configKey = [firebaseApp.name mutableCopy];
53
+ if (dbURL != nil && dbURL.length > 0) {
54
+ [configKey appendString:dbURL];
55
+ }
56
+
57
+ if (!emulatorSettings[configKey]) {
58
+ [[RNFBDatabaseCommon getDatabaseForApp:firebaseApp dbURL:dbURL] useEmulatorWithHost:host
59
+ port:port];
60
+ emulatorSettings[configKey] = @YES;
61
+ }
62
+ }
63
+
64
+ @end
@@ -0,0 +1,59 @@
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
+
18
+ #import <Foundation/Foundation.h>
19
+ #import <React/RCTBridgeModule.h>
20
+
21
+ // See RNFBDatabaseModuleHelper.h for rationale: plain Objective-C helper
22
+ // that owns all `onDisconnect*` `FIRDatabaseReference` calls for
23
+ // RNFBDatabaseOnDisconnectModule.
24
+ @interface RNFBDatabaseOnDisconnectHelper : NSObject
25
+
26
+ + (void)onDisconnectCancel:(NSString *)app
27
+ dbURL:(NSString *)dbURL
28
+ path:(NSString *)path
29
+ resolve:(RCTPromiseResolveBlock)resolve
30
+ reject:(RCTPromiseRejectBlock)reject;
31
+
32
+ + (void)onDisconnectRemove:(NSString *)app
33
+ dbURL:(NSString *)dbURL
34
+ path:(NSString *)path
35
+ resolve:(RCTPromiseResolveBlock)resolve
36
+ reject:(RCTPromiseRejectBlock)reject;
37
+
38
+ + (void)onDisconnectSet:(NSString *)app
39
+ dbURL:(NSString *)dbURL
40
+ path:(NSString *)path
41
+ props:(NSDictionary *)props
42
+ resolve:(RCTPromiseResolveBlock)resolve
43
+ reject:(RCTPromiseRejectBlock)reject;
44
+
45
+ + (void)onDisconnectSetWithPriority:(NSString *)app
46
+ dbURL:(NSString *)dbURL
47
+ path:(NSString *)path
48
+ props:(NSDictionary *)props
49
+ resolve:(RCTPromiseResolveBlock)resolve
50
+ reject:(RCTPromiseRejectBlock)reject;
51
+
52
+ + (void)onDisconnectUpdate:(NSString *)app
53
+ dbURL:(NSString *)dbURL
54
+ path:(NSString *)path
55
+ props:(NSDictionary *)props
56
+ resolve:(RCTPromiseResolveBlock)resolve
57
+ reject:(RCTPromiseRejectBlock)reject;
58
+
59
+ @end