tenebrous-dicebot/api/node_modules/ts-protoc-gen/lib/util.js

178 lines
5.3 KiB
JavaScript
Raw Normal View History

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var querystring_1 = require("querystring");
var parameters_1 = require("./parameters");
function filePathToPseudoNamespace(filePath) {
return filePath.replace(".proto", "").replace(/\//g, "_").replace(/\./g, "_").replace(/\-/g, "_") + "_pb";
}
exports.filePathToPseudoNamespace = filePathToPseudoNamespace;
function stripPrefix(str, prefix) {
if (str.substr(0, prefix.length) === prefix) {
return str.substr(prefix.length);
}
return str;
}
exports.stripPrefix = stripPrefix;
function snakeToCamel(str) {
return str.replace(/(\_\w)/g, function (m) {
return m[1].toUpperCase();
});
}
exports.snakeToCamel = snakeToCamel;
function uppercaseFirst(str) {
return str.charAt(0).toUpperCase() + str.slice(1);
}
exports.uppercaseFirst = uppercaseFirst;
var PROTO2_SYNTAX = "proto2";
function isProto2(fileDescriptor) {
return (fileDescriptor.getSyntax() === "" || fileDescriptor.getSyntax() === PROTO2_SYNTAX);
}
exports.isProto2 = isProto2;
function oneOfName(name) {
return uppercaseFirst(snakeToCamel(name.toLowerCase()));
}
exports.oneOfName = oneOfName;
function generateIndent(indentLevel) {
var indent = "";
for (var i = 0; i < indentLevel; i++) {
indent += " ";
}
return indent;
}
exports.generateIndent = generateIndent;
function getPathToRoot(fileName) {
var depth = fileName.split("/").length;
return depth === 1 ? "./" : new Array(depth).join("../");
}
exports.getPathToRoot = getPathToRoot;
function withinNamespaceFromExportEntry(name, exportEntry) {
return exportEntry.pkg ? name.substring(exportEntry.pkg.length + 1) : name;
}
exports.withinNamespaceFromExportEntry = withinNamespaceFromExportEntry;
function replaceProtoSuffix(protoFilePath) {
var suffix = ".proto";
var hasProtoSuffix = protoFilePath.slice(protoFilePath.length - suffix.length) === suffix;
return hasProtoSuffix
? protoFilePath.slice(0, -suffix.length) + "_pb"
: protoFilePath;
}
exports.replaceProtoSuffix = replaceProtoSuffix;
function withAllStdIn(callback) {
var ret = [];
var len = 0;
var stdin = process.stdin;
stdin.on("readable", function () {
var chunk;
while ((chunk = stdin.read())) {
if (!(chunk instanceof Buffer))
throw new Error("Did not receive buffer");
ret.push(chunk);
len += chunk.length;
}
});
stdin.on("end", function () {
callback(Buffer.concat(ret, len));
});
}
exports.withAllStdIn = withAllStdIn;
function normaliseFieldObjectName(name) {
switch (name) {
case "abstract":
case "boolean":
case "break":
case "byte":
case "case":
case "catch":
case "char":
case "class":
case "const":
case "continue":
case "debugger":
case "default":
case "delete":
case "do":
case "double":
case "else":
case "enum":
case "export":
case "extends":
case "false":
case "final":
case "finally":
case "float":
case "for":
case "function":
case "goto":
case "if":
case "implements":
case "import":
case "in":
case "instanceof":
case "int":
case "interface":
case "long":
case "native":
case "new":
case "null":
case "package":
case "private":
case "protected":
case "public":
case "return":
case "short":
case "static":
case "super":
case "switch":
case "synchronized":
case "this":
case "throw":
case "throws":
case "transient":
case "try":
case "typeof":
case "var":
case "void":
case "volatile":
case "while":
case "with":
return "pb_" + name;
}
return name;
}
exports.normaliseFieldObjectName = normaliseFieldObjectName;
function getServiceParameter(service) {
switch (service) {
case "true":
console.warn("protoc-gen-ts warning: The service=true parameter has been deprecated. Use service=grpc-web instead.");
return parameters_1.ServiceParameter.GrpcWeb;
case "grpc-web":
return parameters_1.ServiceParameter.GrpcWeb;
case "grpc-node":
return parameters_1.ServiceParameter.GrpcNode;
case undefined:
return parameters_1.ServiceParameter.None;
default:
throw new Error("Unrecognised service parameter: " + service);
}
}
exports.getServiceParameter = getServiceParameter;
function getModeParameter(mode) {
switch (mode) {
case "grpc-js":
return parameters_1.ModeParameter.GrpcJs;
case undefined:
return parameters_1.ModeParameter.None;
default:
throw new Error("Unrecognised mode parameter: " + mode);
}
}
exports.getModeParameter = getModeParameter;
function getParameterEnums(parameter) {
var _a = querystring_1.parse(parameter, ","), service = _a.service, mode = _a.mode;
return {
service: getServiceParameter(service),
mode: getModeParameter(mode)
};
}
exports.getParameterEnums = getParameterEnums;
//# sourceMappingURL=util.js.map