123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = void 0;
- var Walker = /*#__PURE__*/function () {
- function Walker(order) {
- this.order = order;
- this.stack = [];
- }
- var _proto = Walker.prototype;
- _proto.visit = function visit(node, callback) {
- if (!node) {
- return;
- }
- this.stack.push(node);
- if (this.order === 'post') {
- this.children(node, callback);
- callback(node, this);
- } else {
- callback(node, this);
- this.children(node, callback);
- }
- this.stack.pop();
- };
- _proto.children = function children(node, callback) {
- switch (node.type) {
- case 'Block':
- case 'Template':
- return visitors.Program(this, node, callback);
- case 'ElementNode':
- return visitors.ElementNode(this, node, callback);
- case 'BlockStatement':
- return visitors.BlockStatement(this, node, callback);
- default:
- return;
- }
- };
- return Walker;
- }();
- exports.default = Walker;
- var visitors = {
- Program: function Program(walker, node, callback) {
- for (var i = 0; i < node.body.length; i++) {
- walker.visit(node.body[i], callback);
- }
- },
- Template: function Template(walker, node, callback) {
- for (var i = 0; i < node.body.length; i++) {
- walker.visit(node.body[i], callback);
- }
- },
- Block: function Block(walker, node, callback) {
- for (var i = 0; i < node.body.length; i++) {
- walker.visit(node.body[i], callback);
- }
- },
- ElementNode: function ElementNode(walker, node, callback) {
- for (var i = 0; i < node.children.length; i++) {
- walker.visit(node.children[i], callback);
- }
- },
- BlockStatement: function BlockStatement(walker, node, callback) {
- walker.visit(node.program, callback);
- walker.visit(node.inverse || null, callback);
- }
- };
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3N5bnRheC9saWIvdHJhdmVyc2FsL3dhbGtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0lBTWMsTTtBQUVaLFdBQUEsTUFBQSxDQUFBLEtBQUEsRUFBa0M7QUFBZixTQUFBLEtBQUEsR0FBQSxLQUFBO0FBRFosU0FBQSxLQUFBLEdBQUEsRUFBQTtBQUMrQjs7OztTQUV0QyxLLEdBQUEsU0FBQSxLQUFBLENBQUEsSUFBQSxFQUFBLFFBQUEsRUFBc0U7QUFDcEUsUUFBSSxDQUFKLElBQUEsRUFBVztBQUNUO0FBQ0Q7O0FBRUQsU0FBQSxLQUFBLENBQUEsSUFBQSxDQUFBLElBQUE7O0FBRUEsUUFBSSxLQUFBLEtBQUEsS0FBSixNQUFBLEVBQTJCO0FBQ3pCLFdBQUEsUUFBQSxDQUFBLElBQUEsRUFBQSxRQUFBO0FBQ0EsTUFBQSxRQUFRLENBQUEsSUFBQSxFQUFSLElBQVEsQ0FBUjtBQUZGLEtBQUEsTUFHTztBQUNMLE1BQUEsUUFBUSxDQUFBLElBQUEsRUFBUixJQUFRLENBQVI7QUFDQSxXQUFBLFFBQUEsQ0FBQSxJQUFBLEVBQUEsUUFBQTtBQUNEOztBQUVELFNBQUEsS0FBQSxDQUFBLEdBQUE7OztTQUdGLFEsR0FBQSxTQUFBLFFBQUEsQ0FBQSxJQUFBLEVBQUEsUUFBQSxFQUV3QztBQUV0QyxZQUFRLElBQUksQ0FBWixJQUFBO0FBQ0UsV0FBQSxPQUFBO0FBQ0EsV0FBQSxVQUFBO0FBQ0UsZUFBTyxRQUFRLENBQVIsT0FBQSxDQUFBLElBQUEsRUFBQSxJQUFBLEVBQVAsUUFBTyxDQUFQOztBQUNGLFdBQUEsYUFBQTtBQUNFLGVBQU8sUUFBUSxDQUFSLFdBQUEsQ0FBQSxJQUFBLEVBQUEsSUFBQSxFQUFQLFFBQU8sQ0FBUDs7QUFDRixXQUFBLGdCQUFBO0FBQ0UsZUFBTyxRQUFRLENBQVIsY0FBQSxDQUFBLElBQUEsRUFBQSxJQUFBLEVBQVAsUUFBTyxDQUFQOztBQUNGO0FBQ0U7QUFUSjs7Ozs7OztBQWNKLElBQU0sUUFBUSxHQUFHO0FBQ2YsRUFBQSxPQURlLEVBQUEsU0FBQSxPQUFBLENBQUEsTUFBQSxFQUFBLElBQUEsRUFBQSxRQUFBLEVBQ2dFO0FBQzdFLFNBQUssSUFBSSxDQUFDLEdBQVYsQ0FBQSxFQUFnQixDQUFDLEdBQUcsSUFBSSxDQUFKLElBQUEsQ0FBcEIsTUFBQSxFQUFzQyxDQUF0QyxFQUFBLEVBQTJDO0FBQ3pDLE1BQUEsTUFBTSxDQUFOLEtBQUEsQ0FBYSxJQUFJLENBQUosSUFBQSxDQUFiLENBQWEsQ0FBYixFQUFBLFFBQUE7QUFDRDtBQUpZLEdBQUE7QUFPZixFQUFBLFFBUGUsRUFBQSxTQUFBLFFBQUEsQ0FBQSxNQUFBLEVBQUEsSUFBQSxFQUFBLFFBQUEsRUFPa0U7QUFDL0UsU0FBSyxJQUFJLENBQUMsR0FBVixDQUFBLEVBQWdCLENBQUMsR0FBRyxJQUFJLENBQUosSUFBQSxDQUFwQixNQUFBLEVBQXNDLENBQXRDLEVBQUEsRUFBMkM7QUFDekMsTUFBQSxNQUFNLENBQU4sS0FBQSxDQUFhLElBQUksQ0FBSixJQUFBLENBQWIsQ0FBYSxDQUFiLEVBQUEsUUFBQTtBQUNEO0FBVlksR0FBQTtBQWFmLEVBQUEsS0FiZSxFQUFBLFNBQUEsS0FBQSxDQUFBLE1BQUEsRUFBQSxJQUFBLEVBQUEsUUFBQSxFQWE0RDtBQUN6RSxTQUFLLElBQUksQ0FBQyxHQUFWLENBQUEsRUFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBSixJQUFBLENBQXBCLE1BQUEsRUFBc0MsQ0FBdEMsRUFBQSxFQUEyQztBQUN6QyxNQUFBLE1BQU0sQ0FBTixLQUFBLENBQWEsSUFBSSxDQUFKLElBQUEsQ0FBYixDQUFhLENBQWIsRUFBQSxRQUFBO0FBQ0Q7QUFoQlksR0FBQTtBQW1CZixFQUFBLFdBbkJlLEVBQUEsU0FBQSxXQUFBLENBQUEsTUFBQSxFQUFBLElBQUEsRUFBQSxRQUFBLEVBbUJ3RTtBQUNyRixTQUFLLElBQUksQ0FBQyxHQUFWLENBQUEsRUFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBSixRQUFBLENBQXBCLE1BQUEsRUFBMEMsQ0FBMUMsRUFBQSxFQUErQztBQUM3QyxNQUFBLE1BQU0sQ0FBTixLQUFBLENBQWEsSUFBSSxDQUFKLFFBQUEsQ0FBYixDQUFhLENBQWIsRUFBQSxRQUFBO0FBQ0Q7QUF0QlksR0FBQTtBQXlCZixFQUFBLGNBekJlLEVBQUEsU0FBQSxjQUFBLENBQUEsTUFBQSxFQUFBLElBQUEsRUFBQSxRQUFBLEVBeUIrRTtBQUM1RixJQUFBLE1BQU0sQ0FBTixLQUFBLENBQWEsSUFBSSxDQUFqQixPQUFBLEVBQUEsUUFBQTtBQUNBLElBQUEsTUFBTSxDQUFOLEtBQUEsQ0FBYSxJQUFJLENBQUosT0FBQSxJQUFiLElBQUEsRUFBQSxRQUFBO0FBQ0Q7QUE1QmMsQ0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb24gfSBmcm9tICdAZ2xpbW1lci9pbnRlcmZhY2VzJztcblxuaW1wb3J0ICogYXMgQVNUdjEgZnJvbSAnLi4vdjEvYXBpJztcblxuZXhwb3J0IHR5cGUgTm9kZUNhbGxiYWNrPE4gZXh0ZW5kcyBBU1R2MS5Ob2RlPiA9IChub2RlOiBOLCB3YWxrZXI6IFdhbGtlcikgPT4gdm9pZDtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV2Fsa2VyIHtcbiAgcHVibGljIHN0YWNrOiB1bmtub3duW10gPSBbXTtcbiAgY29uc3RydWN0b3IocHVibGljIG9yZGVyPzogdW5rbm93bikge31cblxuICB2aXNpdDxOIGV4dGVuZHMgQVNUdjEuTm9kZT4obm9kZTogT3B0aW9uPE4+LCBjYWxsYmFjazogTm9kZUNhbGxiYWNrPE4+KTogdm9pZCB7XG4gICAgaWYgKCFub2RlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdGFjay5wdXNoKG5vZGUpO1xuXG4gICAgaWYgKHRoaXMub3JkZXIgPT09ICdwb3N0Jykge1xuICAgICAgdGhpcy5jaGlsZHJlbihub2RlLCBjYWxsYmFjayk7XG4gICAgICBjYWxsYmFjayhub2RlLCB0aGlzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2FsbGJhY2sobm9kZSwgdGhpcyk7XG4gICAgICB0aGlzLmNoaWxkcmVuKG5vZGUsIGNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICB0aGlzLnN0YWNrLnBvcCgpO1xuICB9XG5cbiAgY2hpbGRyZW48TiBleHRlbmRzIEFTVHYxLk5vZGU+KFxuICAgIG5vZGU6IE4gJiBBU1R2MS5Ob2RlLFxuICAgIGNhbGxiYWNrOiBOb2RlQ2FsbGJhY2s8TiAmIEFTVHYxLk5vZGU+XG4gICk6IHZvaWQge1xuICAgIHN3aXRjaCAobm9kZS50eXBlKSB7XG4gICAgICBjYXNlICdCbG9jayc6XG4gICAgICBjYXNlICdUZW1wbGF0ZSc6XG4gICAgICAgIHJldHVybiB2aXNpdG9ycy5Qcm9ncmFtKHRoaXMsIChub2RlIGFzIHVua25vd24pIGFzIEFTVHYxLlByb2dyYW0sIGNhbGxiYWNrKTtcbiAgICAgIGNhc2UgJ0VsZW1lbnROb2RlJzpcbiAgICAgICAgcmV0dXJuIHZpc2l0b3JzLkVsZW1lbnROb2RlKHRoaXMsIG5vZGUsIGNhbGxiYWNrKTtcbiAgICAgIGNhc2UgJ0Jsb2NrU3RhdGVtZW50JzpcbiAgICAgICAgcmV0dXJuIHZpc2l0b3JzLkJsb2NrU3RhdGVtZW50KHRoaXMsIG5vZGUsIGNhbGxiYWNrKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgdmlzaXRvcnMgPSB7XG4gIFByb2dyYW0od2Fsa2VyOiBXYWxrZXIsIG5vZGU6IEFTVHYxLlByb2dyYW0sIGNhbGxiYWNrOiBOb2RlQ2FsbGJhY2s8QVNUdjEuTm9kZT4pIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuYm9keS5sZW5ndGg7IGkrKykge1xuICAgICAgd2Fsa2VyLnZpc2l0KG5vZGUuYm9keVtpXSwgY2FsbGJhY2spO1xuICAgIH1cbiAgfSxcblxuICBUZW1wbGF0ZSh3YWxrZXI6IFdhbGtlciwgbm9kZTogQVNUdjEuVGVtcGxhdGUsIGNhbGxiYWNrOiBOb2RlQ2FsbGJhY2s8QVNUdjEuTm9kZT4pIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuYm9keS5sZW5ndGg7IGkrKykge1xuICAgICAgd2Fsa2VyLnZpc2l0KG5vZGUuYm9keVtpXSwgY2FsbGJhY2spO1xuICAgIH1cbiAgfSxcblxuICBCbG9jayh3YWxrZXI6IFdhbGtlciwgbm9kZTogQVNUdjEuQmxvY2ssIGNhbGxiYWNrOiBOb2RlQ2FsbGJhY2s8QVNUdjEuTm9kZT4pIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuYm9keS5sZW5ndGg7IGkrKykge1xuICAgICAgd2Fsa2VyLnZpc2l0KG5vZGUuYm9keVtpXSwgY2FsbGJhY2spO1xuICAgIH1cbiAgfSxcblxuICBFbGVtZW50Tm9kZSh3YWxrZXI6IFdhbGtlciwgbm9kZTogQVNUdjEuRWxlbWVudE5vZGUsIGNhbGxiYWNrOiBOb2RlQ2FsbGJhY2s8QVNUdjEuTm9kZT4pIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vZGUuY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgIHdhbGtlci52aXNpdChub2RlLmNoaWxkcmVuW2ldLCBjYWxsYmFjayk7XG4gICAgfVxuICB9LFxuXG4gIEJsb2NrU3RhdGVtZW50KHdhbGtlcjogV2Fsa2VyLCBub2RlOiBBU1R2MS5CbG9ja1N0YXRlbWVudCwgY2FsbGJhY2s6IE5vZGVDYWxsYmFjazxBU1R2MS5CbG9jaz4pIHtcbiAgICB3YWxrZXIudmlzaXQobm9kZS5wcm9ncmFtLCBjYWxsYmFjayk7XG4gICAgd2Fsa2VyLnZpc2l0KG5vZGUuaW52ZXJzZSB8fCBudWxsLCBjYWxsYmFjayk7XG4gIH0sXG59IGFzIGNvbnN0O1xuIl0sInNvdXJjZVJvb3QiOiIifQ==
|