@lcap/asl
Version:
NetEase Application Specific Language
75 lines • 3.01 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.preParentAttr = exports.prePosIndex = exports.postServiceType = exports.createPreServiceType = exports.ReverseServiceType = exports.ServiceType = void 0;
const utils = __importStar(require("../../types/utils"));
exports.ServiceType = {
web: 'WEB',
service: 'MICROSERVICE',
micro: 'MICROSERVICE',
external: 'EXTERNAL',
export: 'EXPORT',
entity: 'ENTITY',
};
exports.ReverseServiceType = {};
Object.keys(exports.ServiceType).forEach((key) => exports.ReverseServiceType[exports.ServiceType[key]] = key);
Object.keys(exports.ServiceType).forEach((key) => exports.ReverseServiceType[key] = key);
const createPreServiceType = (inWhich) => (info) => {
const params = info.url[inWhich];
if (exports.ServiceType[params?.serviceType])
params.serviceType = exports.ServiceType[params.serviceType];
return info;
};
exports.createPreServiceType = createPreServiceType;
/* 兼容接口的小写 */
const postServiceType = (item) => {
if (item.serviceType === 'microservice') {
return item.serviceType = 'micro';
}
return item.serviceType = exports.ReverseServiceType[item.serviceType];
};
exports.postServiceType = postServiceType;
const prePosIndex = (info) => {
const body = info.url.body;
utils.traverse((current) => {
if (!current.node)
return;
if (current.node.level === 'element' && current.index !== undefined) {
current.node._posIndex = current.index || 0;
}
}, { node: body }, { mode: 'anyObject' });
return info;
};
exports.prePosIndex = prePosIndex;
const preParentAttr = (info) => {
const body = info.url.body;
utils.traverse((current) => {
if (!current.node)
return;
if (current.node.level === 'logicNode' || current.node.level === 'expressionNode') {
if (!current.node.parentAttr)
current.node.parentAttr = current.key;
}
}, { node: body }, { mode: 'anyObject' });
return info;
};
exports.preParentAttr = preParentAttr;
//# sourceMappingURL=preprocess.js.map