UNPKG

@lcap/asl

Version:

NetEase Application Specific Language

34 lines 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.genFinalCode = exports.entitiesMap = exports.vertexsMap = void 0; exports.vertexsMap = new Map(); exports.entitiesMap = new Map(); function genFinalCode(code, finalCode = true) { if (!finalCode) return code; if (typeof code !== 'string') return code; // ID_ENUMVALUE_只需要返回ENUM的item的value值 if (code.includes('ID_ENUMVALUE_')) { code = code.replace(/ID_([\w-]+).ID_ENUMVALUE_([\w-]+)/g, (m) => { const id = m.split('.').pop().replace('ID_ENUMVALUE_', ''); const param = exports.vertexsMap.get(id); return param && `'${param.value}'` || `'${id}'`; }); } if (code.includes('ID_ENUM_LIST_')) { code = code.replace(/ID_ENUM_LIST_([\w-]+)/g, (m, id) => { const param = exports.vertexsMap.get(id); return `$utils.EnumList('${param && param.name}')`; }); } // @TODO: 最好后端把 ID 中的 - 都去掉 return code.replace(/ID_([\w-]+)/g, (m, id) => { const param = exports.vertexsMap.get(id); return param?.name || param?.asName || id; }); } exports.genFinalCode = genFinalCode; //# sourceMappingURL=cacheData.js.map