ssap_app/node_modules/@expo/fingerprint/build/utils/SpawnIPC.js

29 lines
1.1 KiB
JavaScript

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.spawnWithIpcAsync = spawnWithIpcAsync;
const spawn_async_1 = __importDefault(require("@expo/spawn-async"));
const node_assert_1 = __importDefault(require("node:assert"));
async function spawnWithIpcAsync(command, args, options
// @ts-expect-error: spawnAsync returns a customized Promise
) {
(0, node_assert_1.default)(options?.stdio == null, 'Cannot override stdio when using IPC');
const promise = (0, spawn_async_1.default)(command, args, {
...options,
stdio: ['pipe', 'pipe', 'pipe', 'ipc'],
});
const messageChunks = [];
const appendMessage = (message) => {
messageChunks.push(message);
};
promise.child.on('message', appendMessage);
const result = await promise;
promise.child.off('message', appendMessage);
return {
...result,
message: messageChunks.join(''),
};
}
//# sourceMappingURL=SpawnIPC.js.map