guardia-messenger/node_modules/expo-modules-core/ios/JSI/EXJSIUtils.h
DESKTOP-TKLFCPRython f29f525c77 refactor: 101.79.17.164 → zioinfo.co.kr 전체 도메인 변환 + Manager UI 배포
- 37개 파일 IP → zioinfo.co.kr 치환 (소스/매뉴얼/설정/하네스)
- Manager DrConsole/NetworkConsole/CsapConsole 빌드 + /var/www/manager/ 배포
- 테스트: Manager HTTP 200, ITSM 신규 API 7개 전체 200

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-31 10:09:17 +09:00

67 lines
2.1 KiB
Objective-C

// Copyright 2018-present 650 Industries. All rights reserved.
#ifdef __cplusplus
#import <functional>
#import <jsi/jsi.h>
#import <ReactCommon/RCTTurboModule.h>
#import <ReactCommon/TurboModuleUtils.h>
#import <ExpoModulesCore/ObjectDeallocator.h>
namespace jsi = facebook::jsi;
namespace react = facebook::react;
namespace expo {
#pragma mark - Promises
using PromiseInvocationBlock = void (^)(RCTPromiseResolveBlock resolveWrapper, RCTPromiseRejectBlock rejectWrapper);
void callPromiseSetupWithBlock(jsi::Runtime &runtime, std::shared_ptr<react::CallInvoker> jsInvoker, std::shared_ptr<react::Promise> promise, PromiseInvocationBlock setupBlock);
#pragma mark - Weak objects
/**
Checks whether the `WeakRef` class is available in the given runtime.
According to the docs, it is unimplemented in JSC prior to iOS 14.5.
As of the time of writing this comment it's also unimplemented in Hermes
where you should use `jsi::WeakObject` instead.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakRef
*/
bool isWeakRefSupported(jsi::Runtime &runtime);
/**
Creates the `WeakRef` with given JSI object. You should first use `isWeakRefSupported`
to check whether this feature is supported by the runtime.
*/
std::shared_ptr<jsi::Object> createWeakRef(jsi::Runtime &runtime, std::shared_ptr<jsi::Object> object);
/**
Returns the `WeakRef` object's target object, or an empty pointer if the target object has been reclaimed.
*/
std::shared_ptr<jsi::Object> derefWeakRef(jsi::Runtime &runtime, std::shared_ptr<jsi::Object> object);
#pragma mark - Errors
jsi::Value makeCodedError(jsi::Runtime &runtime, NSString *code, NSString *message);
} // namespace expo
#endif
#import <ExpoModulesCore/EXJavaScriptObject.h>
#import <ExpoModulesCore/EXJavaScriptRuntime.h>
NS_SWIFT_NAME(JSIUtils)
@interface EXJSIUtils : NSObject
+ (nonnull EXJavaScriptObject *)createNativeModuleObject:(nonnull EXJavaScriptRuntime *)runtime;
+ (void)emitEvent:(nonnull NSString *)eventName
toObject:(nonnull EXJavaScriptObject *)object
withArguments:(nonnull NSArray<id> *)arguments
inRuntime:(nonnull EXJavaScriptRuntime *)runtime;
@end