/* * 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 "RCTClipboard.h" #import #import #import "CoreModulesPlugins.h" using namespace facebook::react; @interface RCTClipboard () @end @implementation RCTClipboard RCT_EXPORT_MODULE() - (dispatch_queue_t)methodQueue { return dispatch_get_main_queue(); } RCT_EXPORT_METHOD(setString : (NSString *)content) { UIPasteboard *clipboard = [UIPasteboard generalPasteboard]; clipboard.string = (content ?: @""); } RCT_EXPORT_METHOD(getString : (RCTPromiseResolveBlock)resolve reject : (__unused RCTPromiseRejectBlock)reject) { UIPasteboard *clipboard = [UIPasteboard generalPasteboard]; resolve((clipboard.string ?: @"")); } - (std::shared_ptr)getTurboModule:(const ObjCTurboModule::InitParams &)params { return std::make_shared(params); } @end Class RCTClipboardCls(void) { return RCTClipboard.class; }