UNPKG

@attio/react-native-bottom-sheet-toolbox-dev-tools

Version:
40 lines (39 loc) 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useConnectClientToAdapter = useConnectClientToAdapter; var _devtools = require("expo/devtools"); var _react = _interopRequireDefault(require("react")); var _reactNativeBottomSheetToolbox = require("@attio/react-native-bottom-sheet-toolbox"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function useConnectClientToAdapter() { const client = (0, _devtools.useDevToolsPluginClient)("react-native-bottom-sheet-toolbox"); const isConnected = client?.isConnected() ?? false; _react.default.useEffect(() => { if (!client || !isConnected) return; const removeAdapter = _reactNativeBottomSheetToolbox.BOTTOM_SHEET_DEV_TOOLS.addAdapter({ sendMessage(method, parameters) { if (!client.isConnected()) { removeAdapter(); return; } client.sendMessage(method, parameters); }, addMessageListener(method, listener) { if (!client.isConnected()) { removeAdapter(); return () => {}; } const subscription = client.addMessageListener(method, listener); return () => { subscription.remove(); }; } }); return () => { removeAdapter(); }; }, [client, isConnected]); } //# sourceMappingURL=use-connect-client-to-adapter.js.map