UNPKG

@whisklabs/grpc

Version:

gRPC generator and http library for typescript

55 lines 2.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.method = exports.collectServices = exports.collectMessages = exports.collectEmuns = void 0; var typeguards_1 = require("@whisklabs/typeguards"); var utils_1 = require("./utils"); function collectEmuns(pack, out, items) { for (var _i = 0, items_1 = items; _i < items_1.length; _i++) { var msg = items_1[_i]; enu((0, utils_1.joinPath)(pack, msg.name), out, msg); } } exports.collectEmuns = collectEmuns; function enu(pack, out, item) { var eName = (0, utils_1.safeString)(pack); out.enumsList.add(eName); (0, utils_1.checkDublicate)(eName, out, "".concat(pack, ".").concat(item.name)); } function collectMessages(pack, out, items, parent) { for (var _i = 0, items_2 = items; _i < items_2.length; _i++) { var msg = items_2[_i]; var newPack = (0, utils_1.joinPath)(parent !== null && parent !== void 0 ? parent : pack, msg.name); message(pack, out, msg, parent); if (msg.messages.length > 0) { collectMessages(pack, out, msg.messages, newPack); } } } exports.collectMessages = collectMessages; function message(pack, out, item, parent) { var base = (0, utils_1.joinPath)(parent !== null && parent !== void 0 ? parent : pack, item.name); collectEmuns(base, out, item.enums); var baseName = (0, utils_1.safeString)(base); var packName = "".concat(pack, ".").concat(item.name); (0, utils_1.checkDublicate)(baseName, out, "".concat((0, typeguards_1.isString)(parent) ? "".concat(parent, ".") : '').concat(packName)); } function collectServices(pack, out, items) { if (items === void 0) { items = []; } for (var _i = 0, items_3 = items; _i < items_3.length; _i++) { var msg = items_3[_i]; service(pack, out, msg); } } exports.collectServices = collectServices; function service(pack, out, item) { for (var _i = 0, _a = item.methods; _i < _a.length; _i++) { var msg = _a[_i]; method(pack, out, msg, item); } } function method(pack, out, item, serv) { var sName = (0, utils_1.joinPath)(pack, serv.name, item.name); (0, utils_1.checkDublicate)(sName, out, "".concat(pack, ".").concat(serv.name, ".").concat(item.name)); } exports.method = method; //# sourceMappingURL=collect.js.map