/* * 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 #if RCT_DEV || RCT_REMOTE_PROFILE #import "RCTCxxInspectorWebSocketAdapter.h" #import #import #import #import namespace facebook::react::jsinspector_modern { /** * Glue between C++ and Objective-C for InspectorPackagerConnectionDelegate. */ class RCTCxxInspectorPackagerConnectionDelegate : public InspectorPackagerConnectionDelegate { class WebSocket : public IWebSocket { public: WebSocket(RCTCxxInspectorWebSocketAdapter* adapter); virtual void send(std::string_view message) override; virtual ~WebSocket() override; private: RCTCxxInspectorWebSocketAdapter* const _adapter; }; public: virtual std::unique_ptr connectWebSocket( const std::string& url, std::weak_ptr delegate) override; virtual void scheduleCallback( std::function callback, std::chrono::milliseconds delayMs) override; }; } // namespace facebook::react::jsinspector_modern #endif