@react-native-firebase/ml 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 (53) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/RNFBML.podspec +7 -6
  3. package/android/build.gradle +19 -0
  4. package/{dist/module/modular.js → android/src/reactnative/java/io/invertase/firebase/ml/NativeRNFBTurboML.java} +7 -13
  5. package/android/src/reactnative/java/io/invertase/firebase/ml/ReactNativeFirebaseMLPackage.java +1 -0
  6. package/android/src/reactnative/java/io/invertase/firebase/ml/generated/java/com/facebook/fbreact/specs/NativeRNFBTurboMLSpec.java +35 -0
  7. package/android/src/reactnative/java/io/invertase/firebase/ml/generated/jni/CMakeLists.txt +36 -0
  8. package/android/src/reactnative/java/io/invertase/firebase/ml/generated/jni/RNFBMLTurboModules-generated.cpp +29 -0
  9. package/android/src/reactnative/java/io/invertase/firebase/ml/generated/jni/RNFBMLTurboModules.h +31 -0
  10. package/android/src/reactnative/java/io/invertase/firebase/ml/generated/jni/react/renderer/components/RNFBMLTurboModules/RNFBMLTurboModulesJSI-generated.cpp +22 -0
  11. package/android/src/reactnative/java/io/invertase/firebase/ml/generated/jni/react/renderer/components/RNFBMLTurboModules/RNFBMLTurboModulesJSI.h +64 -0
  12. package/dist/module/index.js +30 -3
  13. package/dist/module/index.js.map +1 -1
  14. package/dist/module/version.js +1 -1
  15. package/dist/typescript/lib/index.d.ts +15 -4
  16. package/dist/typescript/lib/index.d.ts.map +1 -1
  17. package/dist/typescript/lib/types/internal.d.ts +1 -1
  18. package/dist/typescript/lib/types/internal.d.ts.map +1 -1
  19. package/dist/typescript/lib/version.d.ts +1 -1
  20. package/ios/RNFBML/RNFBMLModule.h +23 -0
  21. package/{lib/modular.ts → ios/RNFBML/RNFBMLModule.mm} +15 -14
  22. package/ios/RNFBML.xcodeproj/project.pbxproj +4 -4
  23. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  24. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  25. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  26. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  27. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  28. package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
  29. package/ios/generated/RNFBMLTurboModules/RNFBMLTurboModules-generated.mm +34 -0
  30. package/ios/generated/RNFBMLTurboModules/RNFBMLTurboModules.h +62 -0
  31. package/ios/generated/RNFBMLTurboModulesJSI-generated.cpp +22 -0
  32. package/ios/generated/RNFBMLTurboModulesJSI.h +64 -0
  33. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  34. package/lib/index.ts +37 -5
  35. package/lib/types/internal.ts +1 -1
  36. package/lib/version.ts +1 -1
  37. package/package.json +22 -4
  38. package/react-native.config.js +10 -0
  39. package/specs/NativeRNFBTurboML.ts +6 -0
  40. package/typedoc.json +1 -1
  41. package/dist/module/modular.js.map +0 -1
  42. package/dist/module/namespaced.js +0 -47
  43. package/dist/module/namespaced.js.map +0 -1
  44. package/dist/module/types/namespaced.js +0 -62
  45. package/dist/module/types/namespaced.js.map +0 -1
  46. package/dist/typescript/lib/modular.d.ts +0 -9
  47. package/dist/typescript/lib/modular.d.ts.map +0 -1
  48. package/dist/typescript/lib/namespaced.d.ts +0 -12
  49. package/dist/typescript/lib/namespaced.d.ts.map +0 -1
  50. package/dist/typescript/lib/types/namespaced.d.ts +0 -77
  51. package/dist/typescript/lib/types/namespaced.d.ts.map +0 -1
  52. package/lib/namespaced.ts +0 -71
  53. package/lib/types/namespaced.ts +0 -99
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
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
+ - **ml:** migrate ml to TurboModules
11
+
12
+ ### Features
13
+
14
+ - **ml:** migrate ml to TurboModules ([c13259a](https://github.com/invertase/react-native-firebase/commit/c13259a91f177ef7b047ddf668491ad00b4e5bd3))
15
+
16
+ ### Bug Fixes
17
+
18
+ - add codegen verify and spec-native parity tests ([49d9f1b](https://github.com/invertase/react-native-firebase/commit/49d9f1baba4fc83c1dd4983f582bbd7352d78809))
19
+ - **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)
20
+
21
+ ## [25.1.0](https://github.com/invertase/react-native-firebase/compare/v25.0.1...v25.1.0) (2026-06-25)
22
+
23
+ **Note:** Version bump only for package @react-native-firebase/ml
24
+
6
25
  ## [25.0.1](https://github.com/invertase/react-native-firebase/compare/v25.0.0...v25.0.1) (2026-06-23)
7
26
 
8
27
  **Note:** Version bump only for package @react-native-firebase/ml
package/RNFBML.podspec CHANGED
@@ -29,15 +29,16 @@ Pod::Spec.new do |s|
29
29
  s.ios.deployment_target = firebase_ios_target
30
30
  s.macos.deployment_target = firebase_macos_target
31
31
  s.tvos.deployment_target = firebase_tvos_target
32
- s.source_files = 'ios/**/*.{h,m}'
32
+ s.source_files = 'ios/**/*.{h,m,mm,cpp,swift}'
33
+ s.private_header_files = "ios/**/*.h"
34
+ s.exclude_files = 'ios/generated/RCTThirdPartyComponentsProvider.*', 'ios/generated/RCTAppDependencyProvider.*', 'ios/generated/RCTModuleProviders.*', 'ios/generated/RCTModulesConformingToProtocolsProvider.*', 'ios/generated/RCTUnstableModulesRequiringMainQueueSetupProvider.*'
33
35
 
34
36
  s.dependency 'RNFBApp'
35
37
 
36
- # React Native dependencies
37
- if defined?(install_modules_dependencies()) != nil
38
- install_modules_dependencies(s);
39
- else
40
- s.dependency "React-Core"
38
+ install_modules_dependencies(s);
39
+
40
+ if defined?(ENV["RCT_NEW_ARCH_ENABLED"]) != nil && (ENV["RCT_NEW_ARCH_ENABLED"] == '0')
41
+ raise "#{s.name} requires New Architecture. Enable New Architecture to use this module"
41
42
  end
42
43
 
43
44
  if defined?($FirebaseSDKVersion)
@@ -81,6 +81,7 @@ android {
81
81
  sourceSets {
82
82
  main {
83
83
  java.srcDirs = ['src/main/java', 'src/reactnative/java']
84
+ java.excludes = ['**/generated/jni/**']
84
85
  }
85
86
  }
86
87
  }
@@ -100,3 +101,21 @@ ReactNative.shared.applyPackageVersion()
100
101
  ReactNative.shared.applyDefaultExcludes()
101
102
  ReactNative.module.applyAndroidVersions()
102
103
  ReactNative.module.applyReactNativeDependency("api")
104
+
105
+ def isNewArchitectureDisabled() {
106
+ return project.hasProperty("newArchEnabled") && project.newArchEnabled != "true"
107
+ }
108
+
109
+ if (isNewArchitectureDisabled()) {
110
+ def ANSI_RED = "\u001B[31m";
111
+ def ANSI_RESET = "\u001B[0m";
112
+
113
+ println("\n\n\n")
114
+ println(ANSI_RED + "**************************************************************************************************************")
115
+ println("\n\n\n")
116
+ println("New Architecture support is required for @react-native-firebase/ml")
117
+ println("\n\n\n")
118
+ println("**************************************************************************************************************" + ANSI_RESET)
119
+ println("\n\n\n")
120
+ System.exit(1)
121
+ }
@@ -1,4 +1,4 @@
1
- "use strict";
1
+ package io.invertase.firebase.ml;
2
2
 
3
3
  /*
4
4
  * Copyright (c) 2016-present Invertase Limited & Contributors
@@ -17,17 +17,11 @@
17
17
  *
18
18
  */
19
19
 
20
- import { getApp } from '@react-native-firebase/app';
21
- /**
22
- * Returns the {@link FirebaseML} instance for the default or given {@link FirebaseApp}.
23
- *
24
- * @param app - The Firebase `FirebaseApp` to use. When omitted, the default app is used.
25
- * @returns The ML service instance for that app.
26
- */
27
- export function getML(app) {
28
- if (app) {
29
- return getApp(app.name).ml();
20
+ import com.facebook.fbreact.specs.NativeRNFBTurboMLSpec;
21
+ import com.facebook.react.bridge.ReactApplicationContext;
22
+
23
+ public class NativeRNFBTurboML extends NativeRNFBTurboMLSpec {
24
+ public NativeRNFBTurboML(ReactApplicationContext reactContext) {
25
+ super(reactContext);
30
26
  }
31
- return getApp().ml();
32
27
  }
33
- //# sourceMappingURL=modular.js.map
@@ -32,6 +32,7 @@ public class ReactNativeFirebaseMLPackage implements ReactPackage {
32
32
  @Override
33
33
  public List<NativeModule> createNativeModules(@Nonnull ReactApplicationContext reactContext) {
34
34
  List<NativeModule> modules = new ArrayList<>();
35
+ modules.add(new NativeRNFBTurboML(reactContext));
35
36
  return modules;
36
37
  }
37
38
 
@@ -0,0 +1,35 @@
1
+
2
+ /**
3
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
4
+ *
5
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
6
+ * once the code is regenerated.
7
+ *
8
+ * @generated by codegen project: GenerateModuleJavaSpec.js
9
+ *
10
+ * @nolint
11
+ */
12
+
13
+ package com.facebook.fbreact.specs;
14
+
15
+ import com.facebook.proguard.annotations.DoNotStrip;
16
+ import com.facebook.react.bridge.ReactApplicationContext;
17
+ import com.facebook.react.bridge.ReactContextBaseJavaModule;
18
+ import com.facebook.react.bridge.ReactMethod;
19
+ import com.facebook.react.turbomodule.core.interfaces.TurboModule;
20
+ import javax.annotation.Nonnull;
21
+
22
+ public abstract class NativeRNFBTurboMLSpec extends ReactContextBaseJavaModule implements TurboModule {
23
+ public static final String NAME = "NativeRNFBTurboML";
24
+
25
+ public NativeRNFBTurboMLSpec(ReactApplicationContext reactContext) {
26
+ super(reactContext);
27
+ }
28
+
29
+ @Override
30
+ public @Nonnull String getName() {
31
+ return NAME;
32
+ }
33
+
34
+
35
+ }
@@ -0,0 +1,36 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ #
3
+ # This source code is licensed under the MIT license found in the
4
+ # LICENSE file in the root directory of this source tree.
5
+
6
+ cmake_minimum_required(VERSION 3.13)
7
+ set(CMAKE_VERBOSE_MAKEFILE on)
8
+
9
+ file(GLOB react_codegen_SRCS CONFIGURE_DEPENDS *.cpp react/renderer/components/RNFBMLTurboModules/*.cpp)
10
+
11
+ add_library(
12
+ react_codegen_RNFBMLTurboModules
13
+ OBJECT
14
+ ${react_codegen_SRCS}
15
+ )
16
+
17
+ target_include_directories(react_codegen_RNFBMLTurboModules PUBLIC . react/renderer/components/RNFBMLTurboModules)
18
+
19
+ target_link_libraries(
20
+ react_codegen_RNFBMLTurboModules
21
+ fbjni
22
+ jsi
23
+ # We need to link different libraries based on whether we are building rncore or not, that's necessary
24
+ # because we want to break a circular dependency between react_codegen_rncore and reactnative
25
+ reactnative
26
+ )
27
+
28
+ target_compile_options(
29
+ react_codegen_RNFBMLTurboModules
30
+ PRIVATE
31
+ -DLOG_TAG=\"ReactNative\"
32
+ -fexceptions
33
+ -frtti
34
+ -std=c++20
35
+ -Wall
36
+ )
@@ -0,0 +1,29 @@
1
+
2
+ /**
3
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
4
+ *
5
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
6
+ * once the code is regenerated.
7
+ *
8
+ * @generated by codegen project: GenerateModuleJniCpp.js
9
+ */
10
+
11
+ #include "RNFBMLTurboModules.h"
12
+
13
+ namespace facebook::react {
14
+
15
+
16
+
17
+ NativeRNFBTurboMLSpecJSI::NativeRNFBTurboMLSpecJSI(const JavaTurboModule::InitParams &params)
18
+ : JavaTurboModule(params) {
19
+
20
+ }
21
+
22
+ std::shared_ptr<TurboModule> RNFBMLTurboModules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params) {
23
+ if (moduleName == "NativeRNFBTurboML") {
24
+ return std::make_shared<NativeRNFBTurboMLSpecJSI>(params);
25
+ }
26
+ return nullptr;
27
+ }
28
+
29
+ } // namespace facebook::react
@@ -0,0 +1,31 @@
1
+
2
+ /**
3
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
4
+ *
5
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
6
+ * once the code is regenerated.
7
+ *
8
+ * @generated by codegen project: GenerateModuleJniH.js
9
+ */
10
+
11
+ #pragma once
12
+
13
+ #include <ReactCommon/JavaTurboModule.h>
14
+ #include <ReactCommon/TurboModule.h>
15
+ #include <jsi/jsi.h>
16
+
17
+ namespace facebook::react {
18
+
19
+ /**
20
+ * JNI C++ class for module 'NativeRNFBTurboML'
21
+ */
22
+ class JSI_EXPORT NativeRNFBTurboMLSpecJSI : public JavaTurboModule {
23
+ public:
24
+ NativeRNFBTurboMLSpecJSI(const JavaTurboModule::InitParams &params);
25
+ };
26
+
27
+
28
+ JSI_EXPORT
29
+ std::shared_ptr<TurboModule> RNFBMLTurboModules_ModuleProvider(const std::string &moduleName, const JavaTurboModule::InitParams &params);
30
+
31
+ } // namespace facebook::react
@@ -0,0 +1,22 @@
1
+ /**
2
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
+ *
4
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
5
+ * once the code is regenerated.
6
+ *
7
+ * @generated by codegen project: GenerateModuleCpp.js
8
+ */
9
+
10
+ #include "RNFBMLTurboModulesJSI.h"
11
+
12
+ namespace facebook::react {
13
+
14
+
15
+
16
+ NativeRNFBTurboMLCxxSpecJSI::NativeRNFBTurboMLCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker)
17
+ : TurboModule("NativeRNFBTurboML", jsInvoker) {
18
+
19
+ }
20
+
21
+
22
+ } // namespace facebook::react
@@ -0,0 +1,64 @@
1
+ /**
2
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
+ *
4
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
5
+ * once the code is regenerated.
6
+ *
7
+ * @generated by codegen project: GenerateModuleH.js
8
+ */
9
+
10
+ #pragma once
11
+
12
+ #include <ReactCommon/TurboModule.h>
13
+ #include <react/bridging/Bridging.h>
14
+
15
+ namespace facebook::react {
16
+
17
+
18
+ class JSI_EXPORT NativeRNFBTurboMLCxxSpecJSI : public TurboModule {
19
+ protected:
20
+ NativeRNFBTurboMLCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker);
21
+
22
+ public:
23
+
24
+
25
+ };
26
+
27
+ template <typename T>
28
+ class JSI_EXPORT NativeRNFBTurboMLCxxSpec : public TurboModule {
29
+ public:
30
+ jsi::Value create(jsi::Runtime &rt, const jsi::PropNameID &propName) override {
31
+ return delegate_.create(rt, propName);
32
+ }
33
+
34
+ std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime& runtime) override {
35
+ return delegate_.getPropertyNames(runtime);
36
+ }
37
+
38
+ static constexpr std::string_view kModuleName = "NativeRNFBTurboML";
39
+
40
+ protected:
41
+ NativeRNFBTurboMLCxxSpec(std::shared_ptr<CallInvoker> jsInvoker)
42
+ : TurboModule(std::string{NativeRNFBTurboMLCxxSpec::kModuleName}, jsInvoker),
43
+ delegate_(reinterpret_cast<T*>(this), jsInvoker) {}
44
+
45
+
46
+ private:
47
+ class Delegate : public NativeRNFBTurboMLCxxSpecJSI {
48
+ public:
49
+ Delegate(T *instance, std::shared_ptr<CallInvoker> jsInvoker) :
50
+ NativeRNFBTurboMLCxxSpecJSI(std::move(jsInvoker)), instance_(instance) {
51
+
52
+ }
53
+
54
+
55
+
56
+ private:
57
+ friend class NativeRNFBTurboMLCxxSpec;
58
+ T *instance_;
59
+ };
60
+
61
+ Delegate delegate_;
62
+ };
63
+
64
+ } // namespace facebook::react
@@ -17,7 +17,34 @@
17
17
  *
18
18
  */
19
19
 
20
- export * from "./modular.js";
21
- export * from "./namespaced.js";
22
- export { default } from "./namespaced.js";
20
+ import { FirebaseModule, getOrCreateModularInstance } from '@react-native-firebase/app/dist/module/internal';
21
+ import "./types/internal.js";
22
+ import { version } from "./version.js";
23
+ const nativeModuleName = 'NativeRNFBTurboML';
24
+ class FirebaseMLModule extends FirebaseModule {}
25
+ const config = {
26
+ namespace: 'ml',
27
+ nativeModuleName,
28
+ nativeEvents: false,
29
+ hasMultiAppSupport: true,
30
+ hasCustomUrlOrRegionSupport: false,
31
+ turboModule: true
32
+ };
33
+
34
+ /**
35
+ * RN Firebase package version string exported from the modular entry point.
36
+ *
37
+ * The firebase-js-sdk does not ship a `firebase/ml` modular entry point or `SDK_VERSION` export.
38
+ */
39
+ export const SDK_VERSION = version;
40
+
41
+ /**
42
+ * Returns the {@link FirebaseML} instance for the default or given {@link FirebaseApp}.
43
+ *
44
+ * @param app - The Firebase `FirebaseApp` to use. When omitted, the default app is used.
45
+ * @returns The ML service instance for that app.
46
+ */
47
+ export function getML(app) {
48
+ return getOrCreateModularInstance(FirebaseMLModule, config, app);
49
+ }
23
50
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default"],"sourceRoot":"../../lib","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,cAAW;AAMzB,cAAc,iBAAc;AAC5B,SAASA,OAAO,QAAQ,iBAAc","ignoreList":[]}
1
+ {"version":3,"names":["FirebaseModule","getOrCreateModularInstance","version","nativeModuleName","FirebaseMLModule","config","namespace","nativeEvents","hasMultiAppSupport","hasCustomUrlOrRegionSupport","turboModule","SDK_VERSION","getML","app"],"sourceRoot":"../../lib","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SACEA,cAAc,EACdC,0BAA0B,QACrB,iDAAiD;AAExD,OAAO,qBAAkB;AAEzB,SAASC,OAAO,QAAQ,cAAW;AAEnC,MAAMC,gBAAgB,GAAG,mBAAmB;AAE5C,MAAMC,gBAAgB,SAASJ,cAAc,CAA0B;AAEvE,MAAMK,MAAoB,GAAG;EAC3BC,SAAS,EAAE,IAAI;EACfH,gBAAgB;EAChBI,YAAY,EAAE,KAAK;EACnBC,kBAAkB,EAAE,IAAI;EACxBC,2BAA2B,EAAE,KAAK;EAClCC,WAAW,EAAE;AACf,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAGT,OAAO;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASU,KAAKA,CAACC,GAAiB,EAAc;EACnD,OAAOZ,0BAA0B,CAACG,gBAAgB,EAAEC,MAAM,EAAEQ,GAAG,CAAC;AAClE","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
 
3
3
  // Generated by genversion.
4
- export const version = '25.0.1';
4
+ export const version = '26.0.0';
5
5
  //# sourceMappingURL=version.js.map
@@ -1,6 +1,17 @@
1
- export * from './modular';
1
+ import './types/internal';
2
+ import type { FirebaseApp, FirebaseML } from './types/ml';
3
+ /**
4
+ * RN Firebase package version string exported from the modular entry point.
5
+ *
6
+ * The firebase-js-sdk does not ship a `firebase/ml` modular entry point or `SDK_VERSION` export.
7
+ */
8
+ export declare const SDK_VERSION = "26.0.0";
9
+ /**
10
+ * Returns the {@link FirebaseML} instance for the default or given {@link FirebaseApp}.
11
+ *
12
+ * @param app - The Firebase `FirebaseApp` to use. When omitted, the default app is used.
13
+ * @returns The ML service instance for that app.
14
+ */
15
+ export declare function getML(app?: FirebaseApp): FirebaseML;
2
16
  export type { FirebaseApp, FirebaseML } from './types/ml';
3
- export type { FirebaseMLTypes } from './types/namespaced';
4
- export * from './namespaced';
5
- export { default } from './namespaced';
6
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"AAiBA,cAAc,WAAW,CAAC;AAE1B,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1D,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"AAsBA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAgB1D;;;;GAIG;AACH,eAAO,MAAM,WAAW,WAAU,CAAC;AAEnC;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,GAAG,UAAU,CAEnD;AAED,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
@@ -7,7 +7,7 @@ export interface RNFBMLModule {
7
7
  }
8
8
  declare module '@react-native-firebase/app/dist/module/internal/NativeModules' {
9
9
  interface ReactNativeFirebaseNativeModules {
10
- RNFBMLModule: RNFBMLModule;
10
+ NativeRNFBTurboML: RNFBMLModule;
11
11
  }
12
12
  }
13
13
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../lib/types/internal.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,MAAM,WAAW,YAAY;CAAG;AAEhC,OAAO,QAAQ,+DAA+D,CAAC;IAC7E,UAAU,gCAAgC;QACxC,YAAY,EAAE,YAAY,CAAC;KAC5B;CACF"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../lib/types/internal.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,MAAM,WAAW,YAAY;CAAG;AAEhC,OAAO,QAAQ,+DAA+D,CAAC;IAC7E,UAAU,gCAAgC;QACxC,iBAAiB,EAAE,YAAY,CAAC;KACjC;CACF"}
@@ -1,2 +1,2 @@
1
- export declare const version = "25.0.1";
1
+ export declare const version = "26.0.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1,23 @@
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 "RNFBMLTurboModules.h"
20
+
21
+ @interface RNFBMLModule : NSObject <NativeRNFBTurboMLSpec>
22
+
23
+ @end
@@ -1,4 +1,4 @@
1
- /*
1
+ /**
2
2
  * Copyright (c) 2016-present Invertase Limited & Contributors
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,18 +15,19 @@
15
15
  *
16
16
  */
17
17
 
18
- import { getApp } from '@react-native-firebase/app';
19
- import type { FirebaseApp, FirebaseML } from './types/ml';
18
+ #import "RNFBMLModule.h"
20
19
 
21
- /**
22
- * Returns the {@link FirebaseML} instance for the default or given {@link FirebaseApp}.
23
- *
24
- * @param app - The Firebase `FirebaseApp` to use. When omitted, the default app is used.
25
- * @returns The ML service instance for that app.
26
- */
27
- export function getML(app?: FirebaseApp): FirebaseML {
28
- if (app) {
29
- return getApp(app.name).ml();
30
- }
31
- return getApp().ml();
20
+ @implementation RNFBMLModule
21
+
22
+ RCT_EXPORT_MODULE(NativeRNFBTurboML)
23
+
24
+ + (BOOL)requiresMainQueueSetup {
25
+ return NO;
26
+ }
27
+
28
+ - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
29
+ (const facebook::react::ObjCTurboModule::InitParams &)params {
30
+ return std::make_shared<facebook::react::NativeRNFBTurboMLSpecJSI>(params);
32
31
  }
32
+
33
+ @end
@@ -182,7 +182,7 @@
182
182
  );
183
183
  GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
184
184
  GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
185
- IPHONEOS_DEPLOYMENT_TARGET = 10.0;
185
+ IPHONEOS_DEPLOYMENT_TARGET = 15.0;
186
186
  MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
187
187
  MTL_FAST_MATH = YES;
188
188
  OTHER_LDFLAGS = "-ObjC";
@@ -216,7 +216,7 @@
216
216
  GCC_C_LANGUAGE_STANDARD = gnu11;
217
217
  GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
218
218
  GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
219
- IPHONEOS_DEPLOYMENT_TARGET = 10.0;
219
+ IPHONEOS_DEPLOYMENT_TARGET = 15.0;
220
220
  MTL_ENABLE_DEBUG_INFO = NO;
221
221
  MTL_FAST_MATH = YES;
222
222
  OTHER_LDFLAGS = "-ObjC";
@@ -277,7 +277,7 @@
277
277
  "$(SRCROOT)/../../../node_modules/react-native-firebase/ios/**",
278
278
  "$(SRCROOT)/../../../packages/app/ios/**",
279
279
  );
280
- IPHONEOS_DEPLOYMENT_TARGET = 10.0;
280
+ IPHONEOS_DEPLOYMENT_TARGET = 15.0;
281
281
  LIBRARY_SEARCH_PATHS = "$(inherited)";
282
282
  MACH_O_TYPE = staticlib;
283
283
  OTHER_LDFLAGS = "$(inherited)";
@@ -335,7 +335,7 @@
335
335
  "$(SRCROOT)/../../../node_modules/react-native-firebase/ios/**",
336
336
  "$(SRCROOT)/../../../packages/app/ios/**",
337
337
  );
338
- IPHONEOS_DEPLOYMENT_TARGET = 10.0;
338
+ IPHONEOS_DEPLOYMENT_TARGET = 15.0;
339
339
  LIBRARY_SEARCH_PATHS = "$(inherited)";
340
340
  MACH_O_TYPE = staticlib;
341
341
  ONLY_ACTIVE_ARCH = YES;
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+
9
+ #import <Foundation/Foundation.h>
10
+
11
+ #if __has_include(<React-RCTAppDelegate/RCTDependencyProvider.h>)
12
+ #import <React-RCTAppDelegate/RCTDependencyProvider.h>
13
+ #elif __has_include(<React_RCTAppDelegate/RCTDependencyProvider.h>)
14
+ #import <React_RCTAppDelegate/RCTDependencyProvider.h>
15
+ #else
16
+ #import "RCTDependencyProvider.h"
17
+ #endif
18
+
19
+ NS_ASSUME_NONNULL_BEGIN
20
+
21
+ @interface RCTAppDependencyProvider : NSObject <RCTDependencyProvider>
22
+
23
+ @end
24
+
25
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,55 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #import "RCTAppDependencyProvider.h"
9
+ #import <ReactCodegen/RCTModulesConformingToProtocolsProvider.h>
10
+ #import <ReactCodegen/RCTThirdPartyComponentsProvider.h>
11
+
12
+ @implementation RCTAppDependencyProvider {
13
+ NSArray<NSString *> * _URLRequestHandlerClassNames;
14
+ NSArray<NSString *> * _imageDataDecoderClassNames;
15
+ NSArray<NSString *> * _imageURLLoaderClassNames;
16
+ NSDictionary<NSString *,Class<RCTComponentViewProtocol>> * _thirdPartyFabricComponents;
17
+ }
18
+
19
+ - (nonnull NSArray<NSString *> *)URLRequestHandlerClassNames {
20
+ static dispatch_once_t requestUrlToken;
21
+ dispatch_once(&requestUrlToken, ^{
22
+ self->_URLRequestHandlerClassNames = RCTModulesConformingToProtocolsProvider.URLRequestHandlerClassNames;
23
+ });
24
+
25
+ return _URLRequestHandlerClassNames;
26
+ }
27
+
28
+ - (nonnull NSArray<NSString *> *)imageDataDecoderClassNames {
29
+ static dispatch_once_t dataDecoderToken;
30
+ dispatch_once(&dataDecoderToken, ^{
31
+ _imageDataDecoderClassNames = RCTModulesConformingToProtocolsProvider.imageDataDecoderClassNames;
32
+ });
33
+
34
+ return _imageDataDecoderClassNames;
35
+ }
36
+
37
+ - (nonnull NSArray<NSString *> *)imageURLLoaderClassNames {
38
+ static dispatch_once_t urlLoaderToken;
39
+ dispatch_once(&urlLoaderToken, ^{
40
+ _imageURLLoaderClassNames = RCTModulesConformingToProtocolsProvider.imageURLLoaderClassNames;
41
+ });
42
+
43
+ return _imageURLLoaderClassNames;
44
+ }
45
+
46
+ - (nonnull NSDictionary<NSString *,Class<RCTComponentViewProtocol>> *)thirdPartyFabricComponents {
47
+ static dispatch_once_t nativeComponentsToken;
48
+ dispatch_once(&nativeComponentsToken, ^{
49
+ _thirdPartyFabricComponents = RCTThirdPartyComponentsProvider.thirdPartyFabricComponents;
50
+ });
51
+
52
+ return _thirdPartyFabricComponents;
53
+ }
54
+
55
+ @end
@@ -0,0 +1,18 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #import <Foundation/Foundation.h>
9
+
10
+ @interface RCTModulesConformingToProtocolsProvider: NSObject
11
+
12
+ +(NSArray<NSString *> *)imageURLLoaderClassNames;
13
+
14
+ +(NSArray<NSString *> *)imageDataDecoderClassNames;
15
+
16
+ +(NSArray<NSString *> *)URLRequestHandlerClassNames;
17
+
18
+ @end