UNPKG

wechaty-puppet-service

Version:
45 lines 1.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.uuidifyFileBoxGrpc = void 0; const file_box_1 = require("file-box"); const wechaty_grpc_1 = require("wechaty-grpc"); const clone_class_1 = require("clone-class"); const uuidResolverGrpc = (grpcClient) => async function uuidResolver(uuid) { const request = new wechaty_grpc_1.puppet.DownloadRequest(); request.setId(uuid); const response = grpcClient().download(request); const stream = response .pipe((0, wechaty_grpc_1.chunkDecoder)()); return stream; }; const uuidRegisterGrpc = (grpcClient) => async function uuidRegister(stream) { const response = await new Promise((resolve, reject) => { const request = grpcClient().upload((err, response) => { if (err) { reject(err); } else { resolve(response); } }); // Huan(202203) FIXME: as unknown as stream .pipe((0, wechaty_grpc_1.chunkEncoder)(wechaty_grpc_1.puppet.UploadRequest)) .pipe(request); }); const uuid = response.getId(); return uuid; }; const uuidifyFileBoxGrpc = (grpcClient) => { /** * `as any`: * * Huan(202110): TypeError: Cannot read property 'valueDeclaration' of undefined #58 * https://github.com/huan/clone-class/issues/58 */ const FileBoxUuid = (0, clone_class_1.cloneClass)(file_box_1.FileBox); FileBoxUuid.setUuidLoader(uuidResolverGrpc(grpcClient)); FileBoxUuid.setUuidSaver(uuidRegisterGrpc(grpcClient)); return FileBoxUuid; }; exports.uuidifyFileBoxGrpc = uuidifyFileBoxGrpc; //# sourceMappingURL=uuidify-file-box-grpc.js.map