diff --git a/packages/gradle-plugin/react-native-gradle-plugin/src/main/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTask.kt b/packages/gradle-plugin/react-native-gradle-plugin/src/main/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTask.kt index 6127d48008dc..8fbcdb559b8d 100644 --- a/packages/gradle-plugin/react-native-gradle-plugin/src/main/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTask.kt +++ b/packages/gradle-plugin/react-native-gradle-plugin/src/main/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTask.kt @@ -65,8 +65,6 @@ abstract class GenerateCodegenSchemaTask : Exec() { .cliPath(workingDir), "--platform", "android", - "--exclude", - "NativeSampleTurboModule", generatedSchemaFile.get().asFile.cliPath(workingDir), jsRootDir.asFile.get().cliPath(workingDir), ) diff --git a/packages/gradle-plugin/react-native-gradle-plugin/src/test/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTaskTest.kt b/packages/gradle-plugin/react-native-gradle-plugin/src/test/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTaskTest.kt index 7b3508bde6d7..8b2e9dd9bd1c 100644 --- a/packages/gradle-plugin/react-native-gradle-plugin/src/test/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTaskTest.kt +++ b/packages/gradle-plugin/react-native-gradle-plugin/src/test/kotlin/com/facebook/react/tasks/GenerateCodegenSchemaTaskTest.kt @@ -94,8 +94,6 @@ class GenerateCodegenSchemaTaskTest { File(codegenDir, "lib/cli/combine/combine-js-to-schema-cli.js").toString(), "--platform", "android", - "--exclude", - "NativeSampleTurboModule", File(outputDir, "schema.json").toString(), jsRootDir.toString(), ) @@ -131,8 +129,6 @@ class GenerateCodegenSchemaTaskTest { .path, "--platform", "android", - "--exclude", - "NativeSampleTurboModule", File(outputDir, "schema.json").relativeTo(project.projectDir).path, jsRootDir.relativeTo(project.projectDir).path, ) diff --git a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java deleted file mode 100644 index 4fa8d6862175..000000000000 --- a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -// NOTE: This entire file should be codegen'ed. - -package com.facebook.fbreact.specs; - -import com.facebook.proguard.annotations.DoNotStrip; -import com.facebook.react.bridge.Callback; -import com.facebook.react.bridge.Promise; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReactContextBaseJavaModule; -import com.facebook.react.bridge.ReactMethod; -import com.facebook.react.bridge.ReadableArray; -import com.facebook.react.bridge.ReadableMap; -import com.facebook.react.bridge.WritableArray; -import com.facebook.react.bridge.WritableMap; -import com.facebook.react.common.build.ReactBuildConfig; -import com.facebook.react.turbomodule.core.interfaces.TurboModule; -import java.util.Arrays; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -public abstract class NativeSampleTurboModuleSpec extends ReactContextBaseJavaModule - implements TurboModule { - public static final String NAME = "SampleTurboModule"; - - public NativeSampleTurboModuleSpec(ReactApplicationContext reactContext) { - super(reactContext); - } - - @Override - public @Nonnull String getName() { - return NAME; - } - - protected final void emitOnPress() { - mEventEmitterCallback.invoke("onPress"); - } - - protected final void emitOnClick(String value) { - mEventEmitterCallback.invoke("onClick", value); - } - - protected final void emitOnChange(ReadableMap value) { - mEventEmitterCallback.invoke("onChange", value); - } - - protected final void emitOnSubmit(ReadableArray value) { - mEventEmitterCallback.invoke("onSubmit", value); - } - - protected abstract Map getTypedExportedConstants(); - - @Override - @DoNotStrip - public final @Nullable Map getConstants() { - Map constants = getTypedExportedConstants(); - if (ReactBuildConfig.DEBUG || ReactBuildConfig.IS_INTERNAL_BUILD) { - Set obligatoryFlowConstants = - new HashSet<>(Arrays.asList("const1", "const2", "const3")); - Set optionalFlowConstants = new HashSet<>(); - Set undeclaredConstants = new HashSet<>(constants.keySet()); - undeclaredConstants.removeAll(obligatoryFlowConstants); - undeclaredConstants.removeAll(optionalFlowConstants); - if (!undeclaredConstants.isEmpty()) { - throw new IllegalStateException( - String.format("Native Module Flow doesn't declare constants: %s", undeclaredConstants)); - } - undeclaredConstants = obligatoryFlowConstants; - undeclaredConstants.removeAll(constants.keySet()); - if (!undeclaredConstants.isEmpty()) { - throw new IllegalStateException( - String.format("Native Module doesn't fill in constants: %s", undeclaredConstants)); - } - } - return constants; - } - - @ReactMethod - @DoNotStrip - public abstract void voidFunc(); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract boolean getBool(boolean arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public double getEnum(double arg) { - return 0; - } - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract double getNumber(double arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract String getString(String arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract WritableArray getArray(ReadableArray arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract WritableMap getObject(ReadableMap arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract WritableMap getUnsafeObject(ReadableMap arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract double getRootTag(double arg); - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public abstract WritableMap getValue(double x, String y, ReadableMap z); - - @ReactMethod - @DoNotStrip - public abstract void getValueWithCallback(Callback callback); - - @ReactMethod - @DoNotStrip - public abstract void getValueWithPromise(boolean error, Promise promise); - - @ReactMethod - @DoNotStrip - public void voidFuncThrows() {} - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public WritableMap getObjectThrows(ReadableMap arg) { - return null; - } - - @ReactMethod - @DoNotStrip - public void promiseThrows(Promise promise) {} - - @ReactMethod - @DoNotStrip - public void voidFuncAssert() {} - - @ReactMethod(isBlockingSynchronousMethod = true) - @DoNotStrip - public WritableMap getObjectAssert(ReadableMap arg) { - return null; - } - - @ReactMethod - @DoNotStrip - public void promiseAssert(Promise promise) {} - - @ReactMethod - @DoNotStrip - public void getImageUrl(Promise promise) {} -} diff --git a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp deleted file mode 100644 index f004350f4383..000000000000 --- a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +++ /dev/null @@ -1,416 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -// NOTE: This entire file should be codegen'ed. - -#include - -namespace facebook::react { -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getConstants( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ObjectKind, - "getConstants", - "()Ljava/util/Map;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_voidFunc( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, VoidKind, "voidFunc", "()V", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getBool( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, BooleanKind, "getBool", "(Z)Z", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getEnum( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, NumberKind, "getEnum", "(D)D", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getNumber( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, NumberKind, "getNumber", "(D)D", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getString( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - StringKind, - "getString", - "(Ljava/lang/String;)Ljava/lang/String;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getArray( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ArrayKind, - "getArray", - "(Lcom/facebook/react/bridge/ReadableArray;)Lcom/facebook/react/bridge/WritableArray;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getObject( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ObjectKind, - "getObject", - "(Lcom/facebook/react/bridge/ReadableMap;)Lcom/facebook/react/bridge/WritableMap;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getUnsafeObject( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ObjectKind, - "getUnsafeObject", - "(Lcom/facebook/react/bridge/ReadableMap;)Lcom/facebook/react/bridge/WritableMap;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getRootTag( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, NumberKind, "getRootTag", "(D)D", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getValue( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ObjectKind, - "getValue", - "(DLjava/lang/String;Lcom/facebook/react/bridge/ReadableMap;)Lcom/facebook/react/bridge/WritableMap;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithCallback( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - VoidKind, - "getValueWithCallback", - "(Lcom/facebook/react/bridge/Callback;)V", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithPromise( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - PromiseKind, - "getValueWithPromise", - "(ZLcom/facebook/react/bridge/Promise;)V", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncThrows( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, VoidKind, "voidFuncThrows", "()V", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getObjectThrows( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ObjectKind, - "getObjectThrows", - "(Lcom/facebook/react/bridge/ReadableMap;)Lcom/facebook/react/bridge/WritableMap;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_promiseThrows( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - PromiseKind, - "promiseThrows", - "(Lcom/facebook/react/bridge/Promise;)V", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncAssert( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, VoidKind, "voidFuncAssert", "()V", args, count, cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getObjectAssert( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - ObjectKind, - "getObjectAssert", - "(Lcom/facebook/react/bridge/ReadableMap;)Lcom/facebook/react/bridge/WritableMap;", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_promiseAssert( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - PromiseKind, - "promiseAssert", - "(Lcom/facebook/react/bridge/Promise;)V", - args, - count, - cachedMethodId); -} - -static facebook::jsi::Value -__hostFunction_NativeSampleTurboModuleSpecJSI_getImageUrl( - facebook::jsi::Runtime& rt, - TurboModule& turboModule, - const facebook::jsi::Value* args, - size_t count) { - static jmethodID cachedMethodId = nullptr; - return static_cast(turboModule) - .invokeJavaMethod( - rt, - PromiseKind, - "getImageUrl", - "(Lcom/facebook/react/bridge/Promise;)V", - args, - count, - cachedMethodId); -} - -NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI( - const JavaTurboModule::InitParams& params) - : JavaTurboModule(params) { - methodMap_["getConstants"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getConstants}; - methodMap_["voidFunc"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_voidFunc}; - methodMap_["getBool"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getBool}; - methodMap_["getEnum"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getEnum}; - methodMap_["getNumber"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getNumber}; - methodMap_["getString"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getString}; - methodMap_["getArray"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getArray}; - methodMap_["getObject"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getObject}; - methodMap_["getUnsafeObject"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getUnsafeObject}; - methodMap_["getRootTag"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getRootTag}; - methodMap_["getValue"] = MethodMetadata{ - .argCount = 3, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getValue}; - methodMap_["getValueWithCallback"] = MethodMetadata{ - .argCount = 1, - .invoker = - __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithCallback}; - methodMap_["getValueWithPromise"] = MethodMetadata{ - .argCount = 1, - .invoker = - __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithPromise}; - methodMap_["voidFuncThrows"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncThrows}; - methodMap_["getObjectThrows"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getObjectThrows}; - methodMap_["promiseThrows"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_promiseThrows}; - methodMap_["voidFuncAssert"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncAssert}; - methodMap_["getObjectAssert"] = MethodMetadata{ - .argCount = 1, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getObjectAssert}; - methodMap_["promiseAssert"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_promiseAssert}; - methodMap_["getImageUrl"] = MethodMetadata{ - .argCount = 0, - .invoker = __hostFunction_NativeSampleTurboModuleSpecJSI_getImageUrl}; - eventEmitterMap_["onPress"] = - std::make_shared>(); - eventEmitterMap_["onClick"] = - std::make_shared>(); - eventEmitterMap_["onChange"] = - std::make_shared>(); - eventEmitterMap_["onSubmit"] = - std::make_shared>(); - configureEventEmitterCallback(); -} - -std::shared_ptr SampleTurboModuleSpec_ModuleProvider( - const std::string& moduleName, - const JavaTurboModule::InitParams& params) { - if (moduleName == "SampleTurboModule") { - return std::make_shared(params); - } - return nullptr; -} - -} // namespace facebook::react diff --git a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h deleted file mode 100644 index 9662cc9b4f69..000000000000 --- a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -// NOTE: This entire file should be codegen'ed. - -#pragma once - -#include -#include -#include - -namespace facebook::react { - -/** - * JNI C++ class for module 'NativeSampleTurboModule' - */ -class JSI_EXPORT NativeSampleTurboModuleSpecJSI : public JavaTurboModule { - public: - NativeSampleTurboModuleSpecJSI(const JavaTurboModule::InitParams ¶ms); -}; - -JSI_EXPORT -std::shared_ptr SampleTurboModuleSpec_ModuleProvider( - const std::string &moduleName, - const JavaTurboModule::InitParams ¶ms); - -} // namespace facebook::react diff --git a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h deleted file mode 100644 index 142cdd2f4748..000000000000 --- a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -// NOTE: This entire file should be codegen'ed. - -#import - -#ifndef __cplusplus -#error This file must be compiled as Obj-C++. If you are importing it, you must change your file extension to .mm. -#endif - -#import -#import -#import -#import -#import -#import - -NS_ASSUME_NONNULL_BEGIN - -namespace JS::NativeSampleTurboModule { -struct Constants { - struct Builder { - using ResultT = Constants; - - struct Input { - RCTRequired const1; - RCTRequired const2; - RCTRequired const3; - }; - - /** Initialize with a set of values */ - Builder(const Input i); - /** Initialize with an existing Constants */ - Builder(Constants i); - /** Builds the object. Generally used only by the infrastructure. */ - NSDictionary *buildUnsafeRawValue() const - { - return _factory(); - }; - - private: - NSDictionary * (^_factory)(void); - }; - - static Constants fromUnsafeRawValue(NSDictionary *const v) - { - return {v}; - } - NSDictionary *unsafeRawValue() const - { - return _v; - } - - private: - Constants(NSDictionary *const v) : _v(v) {} - NSDictionary *_v; -}; - -} // namespace JS::NativeSampleTurboModule - -inline JS::NativeSampleTurboModule::Constants::Builder::Builder(const Input i) - : _factory(^{ - NSMutableDictionary *d = [NSMutableDictionary new]; - auto const1 = i.const1.get(); - d[@"const1"] = @(const1); - auto const2 = i.const2.get(); - d[@"const2"] = @(const2); - auto const3 = i.const3.get(); - d[@"const3"] = const3; - return d; - }) -{ -} -inline JS::NativeSampleTurboModule::Constants::Builder::Builder(Constants i) - : _factory(^{ - return i.unsafeRawValue(); - }) -{ -} - -@protocol NativeSampleTurboModuleSpec - -- (void)voidFunc; -- (NSNumber *)getBool:(BOOL)arg; -- (NSNumber *)getEnum:(double)arg; -- (NSNumber *)getNumber:(double)arg; -- (NSString *)getString:(NSString *)arg; -- (NSArray> *)getArray:(NSArray *)arg; -- (NSDictionary *)getObject:(NSDictionary *)arg; -- (NSDictionary *)getUnsafeObject:(NSDictionary *)arg; -- (NSNumber *)getRootTag:(double)arg; -- (NSDictionary *)getValue:(double)x y:(NSString *)y z:(NSDictionary *)z; -- (void)getValueWithCallback:(RCTResponseSenderBlock)callback; -- (void)getValueWithPromise:(BOOL)error resolve:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject; -- (void)voidFuncThrows; -- (NSDictionary *)getObjectThrows:(NSDictionary *)arg; -- (void)promiseThrows:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject; -- (void)voidFuncAssert; -- (NSDictionary *)getObjectAssert:(NSDictionary *)arg; -- (void)promiseAssert:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject; -- (void)getImageUrl:(RCTPromiseResolveBlock)resolve reject:(RCTPromiseRejectBlock)reject; -- (facebook::react::ModuleConstants)constantsToExport; -- (facebook::react::ModuleConstants)getConstants; - -@end - -@interface NativeSampleTurboModuleSpecBase : NSObject { - @protected - facebook::react::EventEmitterCallback _eventEmitterCallback; -} -- (void)setEventEmitterCallback:(EventEmitterCallbackWrapper *)eventEmitterCallbackWrapper; - -- (void)emitOnPress; -- (void)emitOnClick:(NSString *_Nonnull)value; -- (void)emitOnChange:(NSDictionary *)value; -- (void)emitOnSubmit:(NSArray> *)value; -@end - -namespace facebook::react { -/** - * ObjC++ class for module 'NativeSampleTurboModule' - */ -class JSI_EXPORT NativeSampleTurboModuleSpecJSI : public ObjCTurboModule { - public: - NativeSampleTurboModuleSpecJSI(const ObjCTurboModule::InitParams ¶ms); -}; -} // namespace facebook::react - -NS_ASSUME_NONNULL_END diff --git a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm deleted file mode 100644 index 1f5dd37ad138..000000000000 --- a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +++ /dev/null @@ -1,290 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -#import "RCTNativeSampleTurboModuleSpec.h" - -@implementation NativeSampleTurboModuleSpecBase -- (void)emitOnPress -{ - _eventEmitterCallback("onPress", nil); -} -- (void)emitOnClick:(NSString *_Nonnull)value -{ - _eventEmitterCallback("onClick", value); -} -- (void)emitOnChange:(NSDictionary *)value -{ - _eventEmitterCallback("onChange", value); -} -- (void)emitOnSubmit:(NSArray> *)value -{ - _eventEmitterCallback("onSubmit", value); -} - -- (void)setEventEmitterCallback:(EventEmitterCallbackWrapper *)eventEmitterCallbackWrapper -{ - _eventEmitterCallback = std::move(eventEmitterCallbackWrapper->_eventEmitterCallback); -} -@end - -namespace facebook::react { - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_voidFunc( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, VoidKind, "voidFunc", @selector(voidFunc), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getBool( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, BooleanKind, "getBool", @selector(getBool:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getEnum( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, NumberKind, "getEnum", @selector(getEnum:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getNumber( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, NumberKind, "getNumber", @selector(getNumber:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getString( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, StringKind, "getString", @selector(getString:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getArray( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ArrayKind, "getArray", @selector(getArray:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getObject( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ObjectKind, "getObject", @selector(getObject:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getUnsafeObject( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ObjectKind, "getUnsafeObject", @selector(getUnsafeObject:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getRootTag( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, NumberKind, "getRootTag", @selector(getRootTag:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getValue( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ObjectKind, "getValue", @selector(getValue:y:z:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithCallback( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, VoidKind, "getValueWithCallback", @selector(getValueWithCallback:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithPromise( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod( - rt, PromiseKind, "getValueWithPromise", @selector(getValueWithPromise:resolve:reject:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncThrows( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, VoidKind, "voidFuncThrows", @selector(voidFuncThrows), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getObjectThrows( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ObjectKind, "getObjectThrows", @selector(getObjectThrows:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_promiseThrows( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, PromiseKind, "promiseThrows", @selector(promiseThrows:reject:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncAssert( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, VoidKind, "voidFuncAssert", @selector(voidFuncAssert), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getObjectAssert( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ObjectKind, "getObjectAssert", @selector(getObjectAssert:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_promiseAssert( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, PromiseKind, "promiseAssert", @selector(promiseAssert:reject:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getImageUrl( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, PromiseKind, "getImageUrl", @selector(getImageUrl:reject:), args, count); -} - -static facebook::jsi::Value __hostFunction_NativeSampleTurboModuleSpecJSI_getConstants( - facebook::jsi::Runtime &rt, - TurboModule &turboModule, - const facebook::jsi::Value *args, - size_t count) -{ - return static_cast(turboModule) - .invokeObjCMethod(rt, ObjectKind, "getConstants", @selector(getConstants), args, count); -} - -NativeSampleTurboModuleSpecJSI::NativeSampleTurboModuleSpecJSI(const ObjCTurboModule::InitParams ¶ms) - : ObjCTurboModule(params) -{ - methodMap_["voidFunc"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_voidFunc}; - - methodMap_["getBool"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getBool}; - - methodMap_["getEnum"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getEnum}; - - methodMap_["getNumber"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getNumber}; - - methodMap_["getString"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getString}; - - methodMap_["getArray"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getArray}; - - methodMap_["getObject"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getObject}; - - methodMap_["getUnsafeObject"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getUnsafeObject}; - - methodMap_["getRootTag"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getRootTag}; - - methodMap_["getValue"] = MethodMetadata{3, __hostFunction_NativeSampleTurboModuleSpecJSI_getValue}; - - methodMap_["getValueWithCallback"] = - MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithCallback}; - - methodMap_["getValueWithPromise"] = - MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getValueWithPromise}; - - methodMap_["voidFuncThrows"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncThrows}; - - methodMap_["getObjectThrows"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getObjectThrows}; - - methodMap_["promiseThrows"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_promiseThrows}; - - methodMap_["voidFuncAssert"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_voidFuncAssert}; - - methodMap_["getObjectAssert"] = MethodMetadata{1, __hostFunction_NativeSampleTurboModuleSpecJSI_getObjectAssert}; - - methodMap_["promiseAssert"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_promiseAssert}; - - methodMap_["getImageUrl"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_getImageUrl}; - - methodMap_["getConstants"] = MethodMetadata{0, __hostFunction_NativeSampleTurboModuleSpecJSI_getConstants}; - - eventEmitterMap_["onPress"] = std::make_shared>(); - eventEmitterMap_["onClick"] = std::make_shared>(); - eventEmitterMap_["onChange"] = std::make_shared>(); - eventEmitterMap_["onSubmit"] = std::make_shared>(); - setEventEmitterCallback([&](const std::string &name, id value) { - static_cast &>(*eventEmitterMap_[name]).emit(value); - }); -} -} // namespace facebook::react diff --git a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h index 137047d2cd9a..cc45cbee0813 100644 --- a/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h +++ b/packages/react-native/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h @@ -7,7 +7,7 @@ #import -#import "RCTNativeSampleTurboModuleSpec.h" +#import /** * Sample iOS-specific impl of a TurboModule, conforming to the spec protocol. diff --git a/packages/react-native/package.json b/packages/react-native/package.json index b37ebc0897d2..c5102ea9a476 100644 --- a/packages/react-native/package.json +++ b/packages/react-native/package.json @@ -217,6 +217,9 @@ "PlatformConstants": { "unstableRequiresMainQueueSetup": true }, + "SampleTurboModule": { + "unstableRequiresMainQueueSetup": true + }, "StatusBarManager": { "unstableRequiresMainQueueSetup": true } diff --git a/packages/react-native/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js b/packages/react-native/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js index 183626a8183f..74115633b535 100644 --- a/packages/react-native/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +++ b/packages/react-native/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js @@ -45,7 +45,6 @@ function generateSchemaInfo( schema: CodegenUtils.getCombineJSToSchema().combineSchemasInFileList( [pathToJavaScriptSources], platform, - /NativeSampleTurboModule/, ), }; } diff --git a/packages/react-native/scripts/react_native_pods_utils/script_phases.sh b/packages/react-native/scripts/react_native_pods_utils/script_phases.sh index 0878b9d6a8cf..4606f35fbe69 100755 --- a/packages/react-native/scripts/react_native_pods_utils/script_phases.sh +++ b/packages/react-native/scripts/react_native_pods_utils/script_phases.sh @@ -76,7 +76,7 @@ generateCodegenSchemaFromJavaScript () { # shellcheck disable=SC2086 # $JS_SRCS not having double quotations is intentional - "$NODE_BINARY" "$CODEGEN_CLI_PATH/lib/cli/combine/combine-js-to-schema-cli.js" --exclude NativeSampleTurboModule "$GENERATED_SCHEMA_FILE" $JS_SRCS + "$NODE_BINARY" "$CODEGEN_CLI_PATH/lib/cli/combine/combine-js-to-schema-cli.js" "$GENERATED_SCHEMA_FILE" $JS_SRCS } generateCodegenArtifactsFromSchema () { diff --git a/packages/rn-tester/android/app/src/main/jni/OnLoad.cpp b/packages/rn-tester/android/app/src/main/jni/OnLoad.cpp index ea913a669fc8..72d62fb09590 100644 --- a/packages/rn-tester/android/app/src/main/jni/OnLoad.cpp +++ b/packages/rn-tester/android/app/src/main/jni/OnLoad.cpp @@ -10,7 +10,6 @@ #include #include #include -#include #include #include @@ -42,18 +41,13 @@ std::shared_ptr cxxModuleProvider( std::shared_ptr javaModuleProvider( const std::string& name, const JavaTurboModule::InitParams& params) { - auto module = SampleTurboModuleSpec_ModuleProvider(name, params); - if (module != nullptr) { - return module; - }; #ifdef REACT_NATIVE_APP_MODULE_PROVIDER - module = REACT_NATIVE_APP_MODULE_PROVIDER(name, params); + auto module = REACT_NATIVE_APP_MODULE_PROVIDER(name, params); if (module != nullptr) { return module; } #endif - // We first try to look up core modules if (auto module = FBReactNativeSpec_ModuleProvider(name, params)) { return module; } diff --git a/packages/rn-tester/package.json b/packages/rn-tester/package.json index 3ac391f44698..9c053cbd7bed 100644 --- a/packages/rn-tester/package.json +++ b/packages/rn-tester/package.json @@ -43,11 +43,6 @@ "javaPackageName": "com.facebook.fbreact.specs" }, "ios": { - "modules": { - "SampleTurboModule": { - "unstableRequiresMainQueueSetup": true - } - }, "components": { "RNTMyNativeView": { "className": "RNTMyNativeViewComponentView" diff --git a/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api b/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api index 54d994781de4..677c2fcb1fed 100644 --- a/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAndroidDebugCxx.api @@ -3818,6 +3818,10 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::JavaTurboMo public NativeRedBoxSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } +class facebook::react::NativeSampleTurboModuleSpecJSI : public facebook::react::JavaTurboModule { + public NativeSampleTurboModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); +} + class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::JavaTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -6248,6 +6252,11 @@ enum facebook::react::ModalHostViewSupportedOrientations : facebook::react::Moda PortraitUpsideDown, } +enum facebook::react::NativeSampleTurboModuleEnumInt { + A, + B, +} + enum facebook::react::NullValueStrategy { Ignore, Override, @@ -8476,6 +8485,14 @@ struct facebook::react::NativeMutationObserverNativeMutationObserverObserveOptio public bool operator==(const facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions& other) const; } +template +struct facebook::react::NativeSampleTurboModuleObjectStruct { + public P0 a; + public P1 b; + public P2 c; + public bool operator==(const facebook::react::NativeSampleTurboModuleObjectStruct& other) const; +} + template struct facebook::react::NativeAnimatedModuleEventMapping { public P0 nativeEventPath; @@ -8902,6 +8919,19 @@ class facebook::react::NativeRedBoxCxxSpec : public facebook::react::TurboModule public static constexpr std::string_view kModuleName; } +template +class facebook::react::NativeSampleTurboModuleCxxSpec : public facebook::react::TurboModule { + protected NativeSampleTurboModuleCxxSpec(std::shared_ptr jsInvoker); + protected void emitOnPress(); + public static constexpr std::string_view kModuleName; + template + protected void emitOnChange(OnChangeType value); + template + protected void emitOnClick(OnClickType value); + template + protected void emitOnSubmit(std::vector value); +} + template class facebook::react::NativeSegmentFetcherCxxSpec : public facebook::react::TurboModule { protected NativeSegmentFetcherCxxSpec(std::shared_ptr jsInvoker); @@ -9360,6 +9390,16 @@ struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfile public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } +template +struct facebook::react::NativeSampleTurboModuleObjectStructBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static double aToJs(facebook::jsi::Runtime& rt, decltype(types.a) value); + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); + public static facebook::jsi::String bToJs(facebook::jsi::Runtime& rt, decltype(types.b) value); + public static std::optional cToJs(facebook::jsi::Runtime& rt, decltype(types.c) value); +} + template struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -9579,6 +9619,11 @@ struct facebook::react::Bridging struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { } +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::NativeSampleTurboModuleEnumInt value); + public static facebook::react::NativeSampleTurboModuleEnumInt fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& rawValue); +} + struct facebook::react::Bridging { public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); diff --git a/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api b/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api index 6a0a48343467..ac9d13f45e44 100644 --- a/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAndroidReleaseCxx.api @@ -3815,6 +3815,10 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::JavaTurboMo public NativeRedBoxSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } +class facebook::react::NativeSampleTurboModuleSpecJSI : public facebook::react::JavaTurboModule { + public NativeSampleTurboModuleSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); +} + class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::JavaTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::JavaTurboModule::InitParams& params); } @@ -6239,6 +6243,11 @@ enum facebook::react::ModalHostViewSupportedOrientations : facebook::react::Moda PortraitUpsideDown, } +enum facebook::react::NativeSampleTurboModuleEnumInt { + A, + B, +} + enum facebook::react::NullValueStrategy { Ignore, Override, @@ -8467,6 +8476,14 @@ struct facebook::react::NativeMutationObserverNativeMutationObserverObserveOptio public bool operator==(const facebook::react::NativeMutationObserverNativeMutationObserverObserveOptions& other) const; } +template +struct facebook::react::NativeSampleTurboModuleObjectStruct { + public P0 a; + public P1 b; + public P2 c; + public bool operator==(const facebook::react::NativeSampleTurboModuleObjectStruct& other) const; +} + template struct facebook::react::NativeAnimatedModuleEventMapping { public P0 nativeEventPath; @@ -8893,6 +8910,19 @@ class facebook::react::NativeRedBoxCxxSpec : public facebook::react::TurboModule public static constexpr std::string_view kModuleName; } +template +class facebook::react::NativeSampleTurboModuleCxxSpec : public facebook::react::TurboModule { + protected NativeSampleTurboModuleCxxSpec(std::shared_ptr jsInvoker); + protected void emitOnPress(); + public static constexpr std::string_view kModuleName; + template + protected void emitOnChange(OnChangeType value); + template + protected void emitOnClick(OnClickType value); + template + protected void emitOnSubmit(std::vector value); +} + template class facebook::react::NativeSegmentFetcherCxxSpec : public facebook::react::TurboModule { protected NativeSegmentFetcherCxxSpec(std::shared_ptr jsInvoker); @@ -9217,6 +9247,13 @@ struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfile public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } +template +struct facebook::react::NativeSampleTurboModuleObjectStructBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); +} + template struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -9435,6 +9472,11 @@ struct facebook::react::Bridging struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { } +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::NativeSampleTurboModuleEnumInt value); + public static facebook::react::NativeSampleTurboModuleEnumInt fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& rawValue); +} + struct facebook::react::Bridging { public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); diff --git a/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api b/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api index bb3a74b3522e..365c02f331da 100644 --- a/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAppleDebugCxx.api @@ -537,6 +537,15 @@ interface NativeRedBoxSpecBase : public NSObject { public virtual void setEventEmitterCallback:(EventEmitterCallbackWrapper* eventEmitterCallbackWrapper); } +interface NativeSampleTurboModuleSpecBase : public NSObject { + protected facebook::react::EventEmitterCallback _eventEmitterCallback; + public virtual void emitOnChange:(NSDictionary* value); + public virtual void emitOnClick:(NSString* _Nonnull value); + public virtual void emitOnPress(); + public virtual void emitOnSubmit:(NSArray>* value); + public virtual void setEventEmitterCallback:(EventEmitterCallbackWrapper* eventEmitterCallbackWrapper); +} + interface NativeSegmentFetcherSpecBase : public NSObject { protected facebook::react::EventEmitterCallback _eventEmitterCallback; public virtual void setEventEmitterCallback:(EventEmitterCallbackWrapper* eventEmitterCallbackWrapper); @@ -2838,6 +2847,30 @@ protocol NativeRedBoxSpec : public NSObjectRCTBridgeModule, public RCTTurboModul public virtual void setExtraData:forIdentifier:(NSDictionary* extraData, NSString* forIdentifier); } +protocol NativeSampleTurboModuleSpec : public NSObjectRCTBridgeModule, public RCTTurboModule { + public virtual NSArray>* getArray:(NSArray* arg); + public virtual NSDictionary* getObject:(NSDictionary* arg); + public virtual NSDictionary* getObjectAssert:(NSDictionary* arg); + public virtual NSDictionary* getObjectThrows:(NSDictionary* arg); + public virtual NSDictionary* getUnsafeObject:(NSDictionary* arg); + public virtual NSDictionary* getValue:y:z:(double x, NSString* y, NSDictionary* z); + public virtual NSNumber* getBool:(BOOL arg); + public virtual NSNumber* getEnum:(double arg); + public virtual NSNumber* getNumber:(double arg); + public virtual NSNumber* getRootTag:(double arg); + public virtual NSString* getString:(NSString* arg); + public virtual facebook::react::ModuleConstants constantsToExport(); + public virtual facebook::react::ModuleConstants getConstants(); + public virtual void getImageUrl:reject:(RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void getValueWithCallback:(RCTResponseSenderBlock callback); + public virtual void getValueWithPromise:resolve:reject:(BOOL error, RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void promiseAssert:reject:(RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void promiseThrows:reject:(RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void voidFunc(); + public virtual void voidFuncAssert(); + public virtual void voidFuncThrows(); +} + protocol NativeSegmentFetcherSpec : public NSObjectRCTBridgeModule, public RCTTurboModule { public virtual void fetchSegment:options:callback:(double segmentId, NSDictionary* options, RCTResponseSenderBlock callback); public virtual void getSegment:options:callback:(double segmentId, NSDictionary* options, RCTResponseSenderBlock callback); @@ -6360,6 +6393,10 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::ObjCTurboMo public NativeRedBoxSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } +class facebook::react::NativeSampleTurboModuleSpecJSI : public facebook::react::ObjCTurboModule { + public NativeSampleTurboModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); +} + class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::ObjCTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -8799,6 +8836,11 @@ enum facebook::react::ModalHostViewSupportedOrientations : facebook::react::Moda PortraitUpsideDown, } +enum facebook::react::NativeSampleTurboModuleEnumInt { + A, + B, +} + enum facebook::react::NullValueStrategy { Ignore, Override, @@ -10832,6 +10874,14 @@ struct facebook::react::NativePushNotificationManagerIOSPermissions { public bool operator==(const facebook::react::NativePushNotificationManagerIOSPermissions& other) const; } +template +struct facebook::react::NativeSampleTurboModuleObjectStruct { + public P0 a; + public P1 b; + public P2 c; + public bool operator==(const facebook::react::NativeSampleTurboModuleObjectStruct& other) const; +} + template struct facebook::react::NativeAnimatedModuleEventMapping { public P0 nativeEventPath; @@ -11221,6 +11271,19 @@ class facebook::react::NativeRedBoxCxxSpec : public facebook::react::TurboModule public static constexpr std::string_view kModuleName; } +template +class facebook::react::NativeSampleTurboModuleCxxSpec : public facebook::react::TurboModule { + protected NativeSampleTurboModuleCxxSpec(std::shared_ptr jsInvoker); + protected void emitOnPress(); + public static constexpr std::string_view kModuleName; + template + protected void emitOnChange(OnChangeType value); + template + protected void emitOnClick(OnClickType value); + template + protected void emitOnSubmit(std::vector value); +} + template class facebook::react::NativeSegmentFetcherCxxSpec : public facebook::react::TurboModule { protected NativeSegmentFetcherCxxSpec(std::shared_ptr jsInvoker); @@ -11649,6 +11712,16 @@ struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfile public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } +template +struct facebook::react::NativeSampleTurboModuleObjectStructBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static double aToJs(facebook::jsi::Runtime& rt, decltype(types.a) value); + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); + public static facebook::jsi::String bToJs(facebook::jsi::Runtime& rt, decltype(types.b) value); + public static std::optional cToJs(facebook::jsi::Runtime& rt, decltype(types.c) value); +} + template struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -11868,6 +11941,11 @@ struct facebook::react::Bridging struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { } +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::NativeSampleTurboModuleEnumInt value); + public static facebook::react::NativeSampleTurboModuleEnumInt fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& rawValue); +} + struct facebook::react::Bridging { public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); @@ -16036,6 +16114,25 @@ struct JS::NativeReactDevToolsRuntimeSettingsModule::PartialReloadAndProfileConf } +struct JS::NativeSampleTurboModule::Constants { + protected NSDictionary* unsafeRawValue() const; + protected static JS::NativeSampleTurboModule::Constants fromUnsafeRawValue(NSDictionary* const v); +} + +struct JS::NativeSampleTurboModule::Constants::Builder { + protected Builder(JS::NativeSampleTurboModule::Constants i); + protected Builder(const JS::NativeSampleTurboModule::Constants::Builder::Input i); + protected NSDictionary* buildUnsafeRawValue() const; + protected using ResultT = JS::NativeSampleTurboModule::Constants; +} + +struct JS::NativeSampleTurboModule::Constants::Builder::Input { + protected RCTRequired const3; + protected RCTRequired const1; + protected RCTRequired const2; +} + + struct JS::NativeSettingsManager::Constants { protected NSDictionary* unsafeRawValue() const; protected static JS::NativeSettingsManager::Constants fromUnsafeRawValue(NSDictionary* const v); diff --git a/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api b/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api index 53f03430fc4b..171c2dba8087 100644 --- a/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api +++ b/scripts/cxx-api/api-snapshots/ReactAppleReleaseCxx.api @@ -537,6 +537,15 @@ interface NativeRedBoxSpecBase : public NSObject { public virtual void setEventEmitterCallback:(EventEmitterCallbackWrapper* eventEmitterCallbackWrapper); } +interface NativeSampleTurboModuleSpecBase : public NSObject { + protected facebook::react::EventEmitterCallback _eventEmitterCallback; + public virtual void emitOnChange:(NSDictionary* value); + public virtual void emitOnClick:(NSString* _Nonnull value); + public virtual void emitOnPress(); + public virtual void emitOnSubmit:(NSArray>* value); + public virtual void setEventEmitterCallback:(EventEmitterCallbackWrapper* eventEmitterCallbackWrapper); +} + interface NativeSegmentFetcherSpecBase : public NSObject { protected facebook::react::EventEmitterCallback _eventEmitterCallback; public virtual void setEventEmitterCallback:(EventEmitterCallbackWrapper* eventEmitterCallbackWrapper); @@ -2838,6 +2847,30 @@ protocol NativeRedBoxSpec : public NSObjectRCTBridgeModule, public RCTTurboModul public virtual void setExtraData:forIdentifier:(NSDictionary* extraData, NSString* forIdentifier); } +protocol NativeSampleTurboModuleSpec : public NSObjectRCTBridgeModule, public RCTTurboModule { + public virtual NSArray>* getArray:(NSArray* arg); + public virtual NSDictionary* getObject:(NSDictionary* arg); + public virtual NSDictionary* getObjectAssert:(NSDictionary* arg); + public virtual NSDictionary* getObjectThrows:(NSDictionary* arg); + public virtual NSDictionary* getUnsafeObject:(NSDictionary* arg); + public virtual NSDictionary* getValue:y:z:(double x, NSString* y, NSDictionary* z); + public virtual NSNumber* getBool:(BOOL arg); + public virtual NSNumber* getEnum:(double arg); + public virtual NSNumber* getNumber:(double arg); + public virtual NSNumber* getRootTag:(double arg); + public virtual NSString* getString:(NSString* arg); + public virtual facebook::react::ModuleConstants constantsToExport(); + public virtual facebook::react::ModuleConstants getConstants(); + public virtual void getImageUrl:reject:(RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void getValueWithCallback:(RCTResponseSenderBlock callback); + public virtual void getValueWithPromise:resolve:reject:(BOOL error, RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void promiseAssert:reject:(RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void promiseThrows:reject:(RCTPromiseResolveBlock resolve, RCTPromiseRejectBlock reject); + public virtual void voidFunc(); + public virtual void voidFuncAssert(); + public virtual void voidFuncThrows(); +} + protocol NativeSegmentFetcherSpec : public NSObjectRCTBridgeModule, public RCTTurboModule { public virtual void fetchSegment:options:callback:(double segmentId, NSDictionary* options, RCTResponseSenderBlock callback); public virtual void getSegment:options:callback:(double segmentId, NSDictionary* options, RCTResponseSenderBlock callback); @@ -6357,6 +6390,10 @@ class facebook::react::NativeRedBoxSpecJSI : public facebook::react::ObjCTurboMo public NativeRedBoxSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } +class facebook::react::NativeSampleTurboModuleSpecJSI : public facebook::react::ObjCTurboModule { + public NativeSampleTurboModuleSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); +} + class facebook::react::NativeSegmentFetcherSpecJSI : public facebook::react::ObjCTurboModule { public NativeSegmentFetcherSpecJSI(const facebook::react::ObjCTurboModule::InitParams& params); } @@ -8790,6 +8827,11 @@ enum facebook::react::ModalHostViewSupportedOrientations : facebook::react::Moda PortraitUpsideDown, } +enum facebook::react::NativeSampleTurboModuleEnumInt { + A, + B, +} + enum facebook::react::NullValueStrategy { Ignore, Override, @@ -10823,6 +10865,14 @@ struct facebook::react::NativePushNotificationManagerIOSPermissions { public bool operator==(const facebook::react::NativePushNotificationManagerIOSPermissions& other) const; } +template +struct facebook::react::NativeSampleTurboModuleObjectStruct { + public P0 a; + public P1 b; + public P2 c; + public bool operator==(const facebook::react::NativeSampleTurboModuleObjectStruct& other) const; +} + template struct facebook::react::NativeAnimatedModuleEventMapping { public P0 nativeEventPath; @@ -11212,6 +11262,19 @@ class facebook::react::NativeRedBoxCxxSpec : public facebook::react::TurboModule public static constexpr std::string_view kModuleName; } +template +class facebook::react::NativeSampleTurboModuleCxxSpec : public facebook::react::TurboModule { + protected NativeSampleTurboModuleCxxSpec(std::shared_ptr jsInvoker); + protected void emitOnPress(); + public static constexpr std::string_view kModuleName; + template + protected void emitOnChange(OnChangeType value); + template + protected void emitOnClick(OnClickType value); + template + protected void emitOnSubmit(std::vector value); +} + template class facebook::react::NativeSegmentFetcherCxxSpec : public facebook::react::TurboModule { protected NativeSegmentFetcherCxxSpec(std::shared_ptr jsInvoker); @@ -11516,6 +11579,13 @@ struct facebook::react::NativeReactDevToolsRuntimeSettingsModuleReloadAndProfile public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); } +template +struct facebook::react::NativeSampleTurboModuleObjectStructBridging { + public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); + public static T types; + public static facebook::jsi::Object toJs(facebook::jsi::Runtime& rt, const T& value, const std::shared_ptr& jsInvoker); +} + template struct facebook::react::NativeSourceCodeSourceCodeConstantsBridging { public static T fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Object& value, const std::shared_ptr& jsInvoker); @@ -11734,6 +11804,11 @@ struct facebook::react::Bridging struct facebook::react::Bridging : public facebook::react::NativeIdleCallbacksRequestIdleCallbackOptionsBridging { } +struct facebook::react::Bridging { + public static facebook::jsi::Value toJs(facebook::jsi::Runtime& rt, facebook::react::NativeSampleTurboModuleEnumInt value); + public static facebook::react::NativeSampleTurboModuleEnumInt fromJs(facebook::jsi::Runtime& rt, const facebook::jsi::Value& rawValue); +} + struct facebook::react::Bridging { public static facebook::react::PerformanceEntryType fromJs(facebook::jsi::Runtime&, const facebook::jsi::Value& value); public static int toJs(facebook::jsi::Runtime&, const facebook::react::PerformanceEntryType& value); @@ -15902,6 +15977,25 @@ struct JS::NativeReactDevToolsRuntimeSettingsModule::PartialReloadAndProfileConf } +struct JS::NativeSampleTurboModule::Constants { + protected NSDictionary* unsafeRawValue() const; + protected static JS::NativeSampleTurboModule::Constants fromUnsafeRawValue(NSDictionary* const v); +} + +struct JS::NativeSampleTurboModule::Constants::Builder { + protected Builder(JS::NativeSampleTurboModule::Constants i); + protected Builder(const JS::NativeSampleTurboModule::Constants::Builder::Input i); + protected NSDictionary* buildUnsafeRawValue() const; + protected using ResultT = JS::NativeSampleTurboModule::Constants; +} + +struct JS::NativeSampleTurboModule::Constants::Builder::Input { + protected RCTRequired const3; + protected RCTRequired const1; + protected RCTRequired const2; +} + + struct JS::NativeSettingsManager::Constants { protected NSDictionary* unsafeRawValue() const; protected static JS::NativeSettingsManager::Constants fromUnsafeRawValue(NSDictionary* const v);