@glimmer/syntax
Version:
41 lines (33 loc) • 5.09 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.cannotRemoveNode = cannotRemoveNode;
exports.cannotReplaceNode = cannotReplaceNode;
exports.cannotReplaceOrRemoveInKeyHandlerYet = cannotReplaceOrRemoveInKeyHandlerYet;
exports.default = void 0;
const TraversalError = function () {
TraversalError.prototype = Object.create(Error.prototype);
TraversalError.prototype.constructor = TraversalError;
function TraversalError(message, node, parent, key) {
let error = Error.call(this, message);
this.key = key;
this.message = message;
this.node = node;
this.parent = parent;
this.stack = error.stack;
}
return TraversalError;
}();
var _default = TraversalError;
exports.default = _default;
function cannotRemoveNode(node, parent, key) {
return new TraversalError('Cannot remove a node unless it is part of an array', node, parent, key);
}
function cannotReplaceNode(node, parent, key) {
return new TraversalError('Cannot replace a node with multiple nodes unless it is part of an array', node, parent, key);
}
function cannotReplaceOrRemoveInKeyHandlerYet(node, key) {
return new TraversalError('Replacing and removing in key handlers is not yet supported.', node, null, key);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3N5bnRheC9saWIvdHJhdmVyc2FsL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBZ0JBLE1BQU0sY0FBYyxHQUErQixZQUFBO0FBQ2pELEVBQUEsY0FBYyxDQUFkLFNBQUEsR0FBMkIsTUFBTSxDQUFOLE1BQUEsQ0FBYyxLQUFLLENBQTlDLFNBQTJCLENBQTNCO0FBQ0EsRUFBQSxjQUFjLENBQWQsU0FBQSxDQUFBLFdBQUEsR0FBQSxjQUFBOztBQUVBLFdBQUEsY0FBQSxDQUFBLE9BQUEsRUFBQSxJQUFBLEVBQUEsTUFBQSxFQUFBLEdBQUEsRUFLYTtBQUVYLFFBQUksS0FBSyxHQUFHLEtBQUssQ0FBTCxJQUFBLENBQUEsSUFBQSxFQUFaLE9BQVksQ0FBWjtBQUVBLFNBQUEsR0FBQSxHQUFBLEdBQUE7QUFDQSxTQUFBLE9BQUEsR0FBQSxPQUFBO0FBQ0EsU0FBQSxJQUFBLEdBQUEsSUFBQTtBQUNBLFNBQUEsTUFBQSxHQUFBLE1BQUE7QUFDQSxTQUFBLEtBQUEsR0FBYSxLQUFLLENBQWxCLEtBQUE7QUFDRDs7QUFFRCxTQUFBLGNBQUE7QUFwQkYsQ0FBbUQsRUFBbkQ7O2VBdUJBLGM7OztBQUVNLFNBQUEsZ0JBQUEsQ0FBQSxJQUFBLEVBQUEsTUFBQSxFQUFBLEdBQUEsRUFHTztBQUVYLFNBQU8sSUFBQSxjQUFBLENBQUEsb0RBQUEsRUFBQSxJQUFBLEVBQUEsTUFBQSxFQUFQLEdBQU8sQ0FBUDtBQU1EOztBQUVLLFNBQUEsaUJBQUEsQ0FBQSxJQUFBLEVBQUEsTUFBQSxFQUFBLEdBQUEsRUFHTztBQUVYLFNBQU8sSUFBQSxjQUFBLENBQUEseUVBQUEsRUFBQSxJQUFBLEVBQUEsTUFBQSxFQUFQLEdBQU8sQ0FBUDtBQU1EOztBQUVLLFNBQUEsb0NBQUEsQ0FBQSxJQUFBLEVBQUEsR0FBQSxFQUVPO0FBRVgsU0FBTyxJQUFBLGNBQUEsQ0FBQSw4REFBQSxFQUFBLElBQUEsRUFBQSxJQUFBLEVBQVAsR0FBTyxDQUFQO0FBTUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb24gfSBmcm9tICdAZ2xpbW1lci9pbnRlcmZhY2VzJztcblxuaW1wb3J0ICogYXMgQVNUdjEgZnJvbSAnLi4vdjEvYXBpJztcblxuZXhwb3J0IGludGVyZmFjZSBUcmF2ZXJzYWxFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3I6IFRyYXZlcnNhbEVycm9yQ29uc3RydWN0b3I7XG4gIGtleTogc3RyaW5nO1xuICBub2RlOiBBU1R2MS5Ob2RlO1xuICBwYXJlbnQ6IE9wdGlvbjxBU1R2MS5Ob2RlPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmF2ZXJzYWxFcnJvckNvbnN0cnVjdG9yIHtcbiAgbmV3IChtZXNzYWdlOiBzdHJpbmcsIG5vZGU6IEFTVHYxLk5vZGUsIHBhcmVudDogT3B0aW9uPEFTVHYxLk5vZGU+LCBrZXk6IHN0cmluZyk6IFRyYXZlcnNhbEVycm9yO1xuICByZWFkb25seSBwcm90b3R5cGU6IFRyYXZlcnNhbEVycm9yO1xufVxuXG5jb25zdCBUcmF2ZXJzYWxFcnJvcjogVHJhdmVyc2FsRXJyb3JDb25zdHJ1Y3RvciA9IChmdW5jdGlvbiAoKSB7XG4gIFRyYXZlcnNhbEVycm9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKTtcbiAgVHJhdmVyc2FsRXJyb3IucHJvdG90eXBlLmNvbnN0cnVjdG9yID0gVHJhdmVyc2FsRXJyb3I7XG5cbiAgZnVuY3Rpb24gVHJhdmVyc2FsRXJyb3IoXG4gICAgdGhpczogVHJhdmVyc2FsRXJyb3IsXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIG5vZGU6IEFTVHYxLk5vZGUsXG4gICAgcGFyZW50OiBPcHRpb248QVNUdjEuTm9kZT4sXG4gICAga2V5OiBzdHJpbmdcbiAgKSB7XG4gICAgbGV0IGVycm9yID0gRXJyb3IuY2FsbCh0aGlzLCBtZXNzYWdlKTtcblxuICAgIHRoaXMua2V5ID0ga2V5O1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLnN0YWNrID0gZXJyb3Iuc3RhY2s7XG4gIH1cblxuICByZXR1cm4gKFRyYXZlcnNhbEVycm9yIGFzIHVua25vd24pIGFzIFRyYXZlcnNhbEVycm9yQ29uc3RydWN0b3I7XG59KSgpO1xuXG5leHBvcnQgZGVmYXVsdCBUcmF2ZXJzYWxFcnJvcjtcblxuZXhwb3J0IGZ1bmN0aW9uIGNhbm5vdFJlbW92ZU5vZGUoXG4gIG5vZGU6IEFTVHYxLk5vZGUsXG4gIHBhcmVudDogQVNUdjEuTm9kZSxcbiAga2V5OiBzdHJpbmdcbik6IFRyYXZlcnNhbEVycm9yIHtcbiAgcmV0dXJuIG5ldyBUcmF2ZXJzYWxFcnJvcihcbiAgICAnQ2Fubm90IHJlbW92ZSBhIG5vZGUgdW5sZXNzIGl0IGlzIHBhcnQgb2YgYW4gYXJyYXknLFxuICAgIG5vZGUsXG4gICAgcGFyZW50LFxuICAgIGtleVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2Fubm90UmVwbGFjZU5vZGUoXG4gIG5vZGU6IEFTVHYxLk5vZGUsXG4gIHBhcmVudDogQVNUdjEuTm9kZSxcbiAga2V5OiBzdHJpbmdcbik6IFRyYXZlcnNhbEVycm9yIHtcbiAgcmV0dXJuIG5ldyBUcmF2ZXJzYWxFcnJvcihcbiAgICAnQ2Fubm90IHJlcGxhY2UgYSBub2RlIHdpdGggbXVsdGlwbGUgbm9kZXMgdW5sZXNzIGl0IGlzIHBhcnQgb2YgYW4gYXJyYXknLFxuICAgIG5vZGUsXG4gICAgcGFyZW50LFxuICAgIGtleVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2Fubm90UmVwbGFjZU9yUmVtb3ZlSW5LZXlIYW5kbGVyWWV0KFxuICBub2RlOiBBU1R2MS5Ob2RlLFxuICBrZXk6IHN0cmluZ1xuKTogVHJhdmVyc2FsRXJyb3Ige1xuICByZXR1cm4gbmV3IFRyYXZlcnNhbEVycm9yKFxuICAgICdSZXBsYWNpbmcgYW5kIHJlbW92aW5nIGluIGtleSBoYW5kbGVycyBpcyBub3QgeWV0IHN1cHBvcnRlZC4nLFxuICAgIG5vZGUsXG4gICAgbnVsbCxcbiAgICBrZXlcbiAgKTtcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=