48 lines
2.6 KiB
JavaScript
48 lines
2.6 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var fileDescriptorTSD_1 = require("./ts/fileDescriptorTSD");
|
|
var ExportMap_1 = require("./ExportMap");
|
|
var util_1 = require("./util");
|
|
var plugin_pb_1 = require("google-protobuf/google/protobuf/compiler/plugin_pb");
|
|
var grpcweb_1 = require("./service/grpcweb");
|
|
var grpcnode_1 = require("./service/grpcnode");
|
|
var parameters_1 = require("./parameters");
|
|
util_1.withAllStdIn(function (inputBuff) {
|
|
try {
|
|
var typedInputBuff = new Uint8Array(inputBuff.length);
|
|
typedInputBuff.set(inputBuff);
|
|
var codeGenRequest = plugin_pb_1.CodeGeneratorRequest.deserializeBinary(typedInputBuff);
|
|
var codeGenResponse_1 = new plugin_pb_1.CodeGeneratorResponse();
|
|
var exportMap_1 = new ExportMap_1.ExportMap();
|
|
var fileNameToDescriptor_1 = {};
|
|
var parameter = codeGenRequest.getParameter();
|
|
var _a = util_1.getParameterEnums(parameter), service = _a.service, mode_1 = _a.mode;
|
|
var generateGrpcWebServices_1 = service === parameters_1.ServiceParameter.GrpcWeb;
|
|
var generateGrpcNodeServices_1 = service === parameters_1.ServiceParameter.GrpcNode;
|
|
codeGenRequest.getProtoFileList().forEach(function (protoFileDescriptor) {
|
|
fileNameToDescriptor_1[protoFileDescriptor.getName()] = protoFileDescriptor;
|
|
exportMap_1.addFileDescriptor(protoFileDescriptor);
|
|
});
|
|
codeGenRequest.getFileToGenerateList().forEach(function (fileName) {
|
|
var outputFileName = util_1.replaceProtoSuffix(fileName);
|
|
var thisFile = new plugin_pb_1.CodeGeneratorResponse.File();
|
|
thisFile.setName(outputFileName + ".d.ts");
|
|
thisFile.setContent(fileDescriptorTSD_1.printFileDescriptorTSD(fileNameToDescriptor_1[fileName], exportMap_1));
|
|
codeGenResponse_1.addFile(thisFile);
|
|
if (generateGrpcWebServices_1) {
|
|
grpcweb_1.generateGrpcWebService(outputFileName, fileNameToDescriptor_1[fileName], exportMap_1)
|
|
.forEach(function (file) { return codeGenResponse_1.addFile(file); });
|
|
}
|
|
else if (generateGrpcNodeServices_1) {
|
|
var file = grpcnode_1.generateGrpcNodeService(outputFileName, fileNameToDescriptor_1[fileName], exportMap_1, mode_1);
|
|
codeGenResponse_1.addFile(file);
|
|
}
|
|
});
|
|
process.stdout.write(Buffer.from(codeGenResponse_1.serializeBinary()));
|
|
}
|
|
catch (err) {
|
|
console.error("protoc-gen-ts error: " + err.stack + "\n");
|
|
process.exit(1);
|
|
}
|
|
});
|
|
//# sourceMappingURL=index.js.map
|