@react-native-firebase/auth 25.0.1 → 26.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/RNFBAuth.podspec +14 -6
  3. package/android/build.gradle +23 -0
  4. package/android/src/main/java/io/invertase/firebase/auth/{ReactNativeFirebaseAuthModule.java → NativeRNFBTurboAuth.java} +122 -102
  5. package/android/src/main/java/io/invertase/firebase/auth/ReactNativeFirebaseAuthPackage.java +1 -1
  6. package/android/src/main/java/io/invertase/firebase/auth/ReactNativeFirebaseAuthSyncException.java +35 -0
  7. package/android/src/main/java/io/invertase/firebase/auth/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboAuthSpec.java +308 -0
  8. package/android/src/main/java/io/invertase/firebase/auth/generated/jni/CMakeLists.txt +36 -0
  9. package/android/src/main/java/io/invertase/firebase/auth/generated/jni/RNFBAuthTurboModules-generated.cpp +392 -0
  10. package/android/src/main/java/io/invertase/firebase/auth/generated/jni/RNFBAuthTurboModules.h +31 -0
  11. package/android/src/main/java/io/invertase/firebase/auth/generated/jni/react/renderer/components/RNFBAuthTurboModules/RNFBAuthTurboModulesJSI-generated.cpp +538 -0
  12. package/android/src/main/java/io/invertase/firebase/auth/generated/jni/react/renderer/components/RNFBAuthTurboModules/RNFBAuthTurboModulesJSI.h +611 -0
  13. package/app.plugin.js +1 -1
  14. package/dist/module/ActionCodeURL.js.map +1 -1
  15. package/dist/module/ConfirmationResult.js.map +1 -1
  16. package/dist/module/MultiFactorResolver.js.map +1 -1
  17. package/dist/module/PhoneAuthListener.js +3 -4
  18. package/dist/module/PhoneAuthListener.js.map +1 -1
  19. package/dist/module/TotpMultiFactorGenerator.js +1 -1
  20. package/dist/module/TotpMultiFactorGenerator.js.map +1 -1
  21. package/dist/module/TotpSecret.js +15 -9
  22. package/dist/module/TotpSecret.js.map +1 -1
  23. package/dist/module/User.js +1 -1
  24. package/dist/module/User.js.map +1 -1
  25. package/dist/module/credentials/EmailAuthCredential.js.map +1 -1
  26. package/dist/module/credentials/OAuthCredential.js.map +1 -1
  27. package/dist/module/getMultiFactorResolver.js +2 -2
  28. package/dist/module/getMultiFactorResolver.js.map +1 -1
  29. package/dist/module/index.js +1221 -6
  30. package/dist/module/index.js.map +1 -1
  31. package/dist/module/internal/syncNativeError.js +75 -0
  32. package/dist/module/internal/syncNativeError.js.map +1 -0
  33. package/dist/module/multiFactor.js +5 -3
  34. package/dist/module/multiFactor.js.map +1 -1
  35. package/dist/module/providers/OIDCAuthProvider.js.map +1 -1
  36. package/dist/module/providers/PhoneAuthProvider.js +4 -4
  37. package/dist/module/providers/PhoneAuthProvider.js.map +1 -1
  38. package/dist/module/types/auth.js.map +1 -1
  39. package/dist/module/version.js +1 -1
  40. package/dist/module/web/RNFBAuthModule.js +13 -7
  41. package/dist/module/web/RNFBAuthModule.js.map +1 -1
  42. package/dist/typescript/lib/ActionCodeURL.d.ts.map +1 -1
  43. package/dist/typescript/lib/ConfirmationResult.d.ts +2 -2
  44. package/dist/typescript/lib/ConfirmationResult.d.ts.map +1 -1
  45. package/dist/typescript/lib/MultiFactorResolver.d.ts +6 -6
  46. package/dist/typescript/lib/MultiFactorResolver.d.ts.map +1 -1
  47. package/dist/typescript/lib/PhoneAuthListener.d.ts +1 -4
  48. package/dist/typescript/lib/PhoneAuthListener.d.ts.map +1 -1
  49. package/dist/typescript/lib/TotpSecret.d.ts +2 -4
  50. package/dist/typescript/lib/TotpSecret.d.ts.map +1 -1
  51. package/dist/typescript/lib/User.d.ts +13 -13
  52. package/dist/typescript/lib/User.d.ts.map +1 -1
  53. package/dist/typescript/lib/credentials/EmailAuthCredential.d.ts.map +1 -1
  54. package/dist/typescript/lib/credentials/OAuthCredential.d.ts.map +1 -1
  55. package/dist/typescript/lib/getMultiFactorResolver.d.ts +5 -5
  56. package/dist/typescript/lib/getMultiFactorResolver.d.ts.map +1 -1
  57. package/dist/typescript/lib/index.d.ts +377 -4
  58. package/dist/typescript/lib/index.d.ts.map +1 -1
  59. package/dist/typescript/lib/internal/syncNativeError.d.ts +6 -0
  60. package/dist/typescript/lib/internal/syncNativeError.d.ts.map +1 -0
  61. package/dist/typescript/lib/multiFactor.d.ts +9 -9
  62. package/dist/typescript/lib/multiFactor.d.ts.map +1 -1
  63. package/dist/typescript/lib/providers/OIDCAuthProvider.d.ts.map +1 -1
  64. package/dist/typescript/lib/providers/PhoneAuthProvider.d.ts.map +1 -1
  65. package/dist/typescript/lib/types/auth.d.ts +13 -0
  66. package/dist/typescript/lib/types/auth.d.ts.map +1 -1
  67. package/dist/typescript/lib/types/internal.d.ts +44 -47
  68. package/dist/typescript/lib/types/internal.d.ts.map +1 -1
  69. package/dist/typescript/lib/version.d.ts +1 -1
  70. package/dist/typescript/lib/web/RNFBAuthModule.d.ts +4 -4
  71. package/dist/typescript/lib/web/RNFBAuthModule.d.ts.map +1 -1
  72. package/ios/RNFBAuth/RNFBAuthModule.h +2 -2
  73. package/ios/RNFBAuth/{RNFBAuthModule.m → RNFBAuthModule.mm} +408 -297
  74. package/ios/RNFBAuth.xcodeproj/project.pbxproj +8 -8
  75. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  76. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  77. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  78. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  79. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  80. package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
  81. package/ios/generated/RNFBAuthTurboModules/RNFBAuthTurboModules-generated.mm +459 -0
  82. package/ios/generated/RNFBAuthTurboModules/RNFBAuthTurboModules.h +341 -0
  83. package/ios/generated/RNFBAuthTurboModulesJSI-generated.cpp +538 -0
  84. package/ios/generated/RNFBAuthTurboModulesJSI.h +611 -0
  85. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  86. package/lib/ActionCodeURL.ts +3 -9
  87. package/lib/ConfirmationResult.ts +3 -6
  88. package/lib/MultiFactorResolver.ts +8 -8
  89. package/lib/PhoneAuthListener.ts +6 -10
  90. package/lib/TotpMultiFactorGenerator.ts +1 -1
  91. package/lib/TotpSecret.ts +22 -9
  92. package/lib/User.ts +38 -51
  93. package/lib/credentials/EmailAuthCredential.ts +1 -5
  94. package/lib/credentials/OAuthCredential.ts +4 -1
  95. package/lib/getMultiFactorResolver.ts +9 -9
  96. package/lib/index.ts +1836 -6
  97. package/lib/internal/syncNativeError.ts +89 -0
  98. package/lib/multiFactor.ts +24 -18
  99. package/lib/providers/OIDCAuthProvider.ts +1 -5
  100. package/lib/providers/PhoneAuthProvider.ts +9 -22
  101. package/lib/types/auth.ts +15 -0
  102. package/lib/types/internal.ts +68 -73
  103. package/lib/version.ts +1 -1
  104. package/lib/web/RNFBAuthModule.ts +13 -10
  105. package/package.json +30 -4
  106. package/plugin/build/app.plugin.d.ts +2 -0
  107. package/plugin/build/app.plugin.js +6 -0
  108. package/plugin/src/app.plugin.ts +3 -0
  109. package/plugin/tsconfig.tsbuildinfo +1 -1
  110. package/react-native.config.js +9 -0
  111. package/specs/NativeRNFBTurboAuth.ts +143 -0
  112. package/typedoc.json +0 -1
  113. package/dist/module/modular.js +0 -793
  114. package/dist/module/modular.js.map +0 -1
  115. package/dist/module/namespaced.js +0 -522
  116. package/dist/module/namespaced.js.map +0 -1
  117. package/dist/module/types/namespaced.js +0 -62
  118. package/dist/module/types/namespaced.js.map +0 -1
  119. package/dist/typescript/lib/modular.d.ts +0 -370
  120. package/dist/typescript/lib/modular.d.ts.map +0 -1
  121. package/dist/typescript/lib/namespaced.d.ts +0 -12
  122. package/dist/typescript/lib/namespaced.d.ts.map +0 -1
  123. package/dist/typescript/lib/types/namespaced.d.ts +0 -2185
  124. package/dist/typescript/lib/types/namespaced.d.ts.map +0 -1
  125. package/lib/modular.ts +0 -1172
  126. package/lib/namespaced.ts +0 -846
  127. package/lib/types/namespaced.ts +0 -2350
package/CHANGELOG.md CHANGED
@@ -3,6 +3,36 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [26.0.0](https://github.com/invertase/react-native-firebase/compare/v25.1.0...v26.0.0) (2026-07-29)
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ - **auth:** migrate auth to TurboModules
11
+ - **app:** App/Core modules native bridge requires New Architecture.
12
+
13
+ Migrate RNFBAppModule and RNFBUtilsModule to Codegen TurboModules with
14
+ unified resolver, lazy Proxy wrapper, and committed generated artifacts.
15
+ Includes functions codegenConfig rename (NewArch-AD-7), test harness
16
+ overrides, architecture decisions, and validation workflow hardening.
17
+
18
+ ### Features
19
+
20
+ - **app:** migrate app modules to TurboModules incl general migration infra ([978168d](https://github.com/invertase/react-native-firebase/commit/978168dacecf4925d347d9757eff73ee43e1484f))
21
+ - **auth:** migrate auth to TurboModules ([5fe09ac](https://github.com/invertase/react-native-firebase/commit/5fe09ac77b8df94631dbcfaa533cdcba0bfff98c))
22
+
23
+ ### Bug Fixes
24
+
25
+ - add ResultT codegen type alias ([ff2d68f](https://github.com/invertase/react-native-firebase/commit/ff2d68ff8f73092f8ba3c75e007049dd31be822f))
26
+ - **auth, android:** handle null id-tokens from google credential manager ([d800caf](https://github.com/invertase/react-native-firebase/commit/d800caf8b0ca8bf289d72fc84c0d74bda26c41bb))
27
+ - **ios:** set IPHONEOS_DEPLOYMENT_TARGET to 15.0, update platform support docs/conditionals ([#9108](https://github.com/invertase/react-native-firebase/issues/9108)) ([99d0899](https://github.com/invertase/react-native-firebase/commit/99d089908e3eec6155d73ecf05ff7274ad33c46e)), closes [#8882](https://github.com/invertase/react-native-firebase/issues/8882)
28
+ - resolve CI lint and spec-native parity failures ([6ff817e](https://github.com/invertase/react-native-firebase/commit/6ff817ed2154b2d4e77c5fd9709ec0eb95b408fa))
29
+
30
+ ## [25.1.0](https://github.com/invertase/react-native-firebase/compare/v25.0.1...v25.1.0) (2026-06-25)
31
+
32
+ ### Bug Fixes
33
+
34
+ - **auth, perf:** correctly export expo config plugin, add test for same ([dfb8126](https://github.com/invertase/react-native-firebase/commit/dfb8126be05e3c87c4d8ea228110aa8b8e7674cb))
35
+
6
36
  ## [25.0.1](https://github.com/invertase/react-native-firebase/compare/v25.0.0...v25.0.1) (2026-06-23)
7
37
 
8
38
  ### Bug Fixes
package/RNFBAuth.podspec CHANGED
@@ -27,15 +27,23 @@ Pod::Spec.new do |s|
27
27
  s.ios.deployment_target = firebase_ios_target
28
28
  s.macos.deployment_target = firebase_macos_target
29
29
  s.tvos.deployment_target = firebase_tvos_target
30
- s.source_files = 'ios/**/*.{h,m}'
30
+ s.source_files = 'ios/**/*.{h,m,mm,cpp}'
31
+ s.private_header_files = [
32
+ 'ios/RNFBAuth/RNFBAuthModule.h',
33
+ 'ios/generated/**/*.h',
34
+ ]
35
+ s.exclude_files = 'ios/generated/RCTThirdPartyComponentsProvider.*', 'ios/generated/RCTAppDependencyProvider.*', 'ios/generated/RCTModuleProviders.*', 'ios/generated/RCTModulesConformingToProtocolsProvider.*', 'ios/generated/RCTUnstableModulesRequiringMainQueueSetupProvider.*'
36
+
37
+ s.pod_target_xcconfig = {
38
+ "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/ios/generated/RNFBAuthTurboModules\" \"$(PODS_TARGET_SRCROOT)/ios/generated\"",
39
+ }
31
40
 
32
41
  s.dependency 'RNFBApp'
33
42
 
34
- # React Native dependencies
35
- if defined?(install_modules_dependencies()) != nil
36
- install_modules_dependencies(s);
37
- else
38
- s.dependency "React-Core"
43
+ install_modules_dependencies(s);
44
+
45
+ if defined?(ENV["RCT_NEW_ARCH_ENABLED"]) != nil && (ENV["RCT_NEW_ARCH_ENABLED"] == '0')
46
+ raise "#{s.name} requires New Architecture. Enable New Architecture to use this module"
39
47
  end
40
48
 
41
49
  if defined?($FirebaseSDKVersion)
@@ -75,6 +75,11 @@ android {
75
75
  targetCompatibility = JavaVersion.VERSION_11
76
76
  }
77
77
  }
78
+ sourceSets {
79
+ main {
80
+ java.excludes = ['**/generated/jni/**']
81
+ }
82
+ }
78
83
  }
79
84
 
80
85
  repositories {
@@ -92,3 +97,21 @@ ReactNative.shared.applyPackageVersion()
92
97
  ReactNative.shared.applyDefaultExcludes()
93
98
  ReactNative.module.applyAndroidVersions()
94
99
  ReactNative.module.applyReactNativeDependency("api")
100
+
101
+ def isNewArchitectureDisabled() {
102
+ return project.hasProperty("newArchEnabled") && project.newArchEnabled != "true"
103
+ }
104
+
105
+ if (isNewArchitectureDisabled()) {
106
+ def ANSI_RED = "\u001B[31m";
107
+ def ANSI_RESET = "\u001B[0m";
108
+
109
+ println("\n\n\n")
110
+ println(ANSI_RED + "**************************************************************************************************************")
111
+ println("\n\n\n")
112
+ println("New Architecture support is required for @react-native-firebase/auth")
113
+ println("\n\n\n")
114
+ println("**************************************************************************************************************" + ANSI_RESET)
115
+ println("\n\n\n")
116
+ System.exit(1)
117
+ }