UNPKG

pk-template

Version:
46 lines 3.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const lazy_1 = require("../../lazy"); const common_1 = require("../../common"); const styleParser_1 = require("./styleParser"); exports.compileStyle = (vm, scope, object) => { const _ = lazy_1.getUnderscore(); common_1.forEachTreeObject(object, (node) => { const styles = []; for (const key of Object.keys(node)) { if (key.endsWith('^')) { const value = node[key]; if (value == null) { delete node[key]; continue; } if (key === '^') { if (Array.isArray(value)) { for (const item of value) { styles.push(...styleParser_1.parseEmptyStyles(item)); } } else { styles.push(...styleParser_1.parseEmptyStyles(value)); } } else { const styleType = key.substr(0, key.length - 1); if (Array.isArray(value)) { for (const item of value) { styles.push(...styleParser_1.parseParametericStyle(styleType, vm.runtime.evalTemplate(vm, scope, item))); } } else { styles.push(...styleParser_1.parseParametericStyle(styleType, vm.runtime.evalTemplate(vm, scope, value))); } } delete node[key]; } } if (styles.length != 0) { node['^'] = styles; } }); }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVDb21waWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BrLXRlbXBsYXRlL3N0eWxlcy9zdHlsZUNvbXBpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxQ0FBMkM7QUFDM0MseUNBQWlEO0FBQ2pELCtDQUFrRztBQUlyRixRQUFBLFlBQVksR0FBRyxDQUFDLEVBQTJCLEVBQUUsS0FBYSxFQUFFLE1BQVcsRUFBRSxFQUFFO0lBQ3RGLE1BQU0sQ0FBQyxHQUFHLG9CQUFhLEVBQUUsQ0FBQztJQUUxQiwwQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRTtRQUN0QyxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFDdkIsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ25DLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDckIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN4QixJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7b0JBQ2pCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUNqQixTQUFTO2lCQUNWO2dCQUVELElBQUksR0FBRyxLQUFLLEdBQUcsRUFBRTtvQkFDZixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7d0JBQ3hCLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFOzRCQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsOEJBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzt5QkFDeEM7cUJBQ0Y7eUJBQU07d0JBQ0wsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLDhCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7cUJBQ3pDO2lCQUNGO3FCQUFNO29CQUNMLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQ2hELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTt3QkFDeEIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7NEJBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxtQ0FBc0IsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7eUJBQzdGO3FCQUNGO3lCQUFNO3dCQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxtQ0FBc0IsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQzlGO2lCQUNGO2dCQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2xCO1NBQ0Y7UUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUM7U0FDcEI7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQSJ9