amazon-route-53-dns-zone-file
Version:
Makes DNS Zone File easy. Parses and validates BIND zone files and can be extended for custom features. Functionality is modular. Features are made open for extension and closed for runtime mutation. Written in TypeScript.
32 lines • 3.01 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
import { splitArgs } from './utils_parser';
var ParserNode = /** @class */ (function () {
function ParserNode(parser) {
var _this = this;
this.parser = parser;
this.index = 0;
this.lineContent = '';
this.lineParts = [];
this.addMeta = function (meta) {
_this.parser.parsingMeta.set(_this.index + 1, __assign({ lineContent: _this.lineContent }, meta));
};
}
ParserNode.prototype.update = function (lineContent, index) {
this.lineParts = splitArgs(lineContent);
this.index = index;
this.lineContent = lineContent;
};
return ParserNode;
}());
export { ParserNode };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VyX25vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFyc2VyL3BhcnNlcl9ub2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDO0lBS0Usb0JBQW9CLE1BQTRCO1FBQWhELGlCQUFvRDtRQUFoQyxXQUFNLEdBQU4sTUFBTSxDQUFzQjtRQUp6QyxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBQ3pCLGNBQVMsR0FBYSxFQUFFLENBQUM7UUFJekIsWUFBTyxHQUFHLFVBQXFDLElBQVU7WUFDOUQsS0FBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUEwQixLQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRSxXQUNuRSxXQUFXLEVBQUUsS0FBSSxDQUFDLFdBQVcsSUFDMUIsSUFBSSxDQUNELENBQUMsQ0FBQztRQUNaLENBQUMsQ0FBQztJQVBpRCxDQUFDO0lBUzdDLDJCQUFNLEdBQWIsVUFBYyxXQUFtQixFQUFFLEtBQWE7UUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUNILGlCQUFDO0FBQUQsQ0FBQyxBQW5CRCxJQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhcnNlclR5cGluZ3MgfSBmcm9tICcuL3R5cGVzX3BhcnNlcic7XG5pbXBvcnQgeyBzcGxpdEFyZ3MgfSBmcm9tICcuL3V0aWxzX3BhcnNlcic7XG5cbmV4cG9ydCBjbGFzcyBQYXJzZXJOb2RlIHtcbiAgcHVibGljIGluZGV4OiBudW1iZXIgPSAwO1xuICBwdWJsaWMgbGluZUNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgbGluZVBhcnRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGFyc2VyOiBQYXJzZXJUeXBpbmdzLlBhcnNlcikge31cblxuICBwdWJsaWMgYWRkTWV0YSA9IDxNZXRhIGV4dGVuZHMgUGFyc2VyVHlwaW5ncy5NZXRhQXJnPihtZXRhOiBNZXRhKTogdm9pZCA9PiB7XG4gICAgdGhpcy5wYXJzZXIucGFyc2luZ01ldGEuc2V0PE1ldGFbJ2luc3RydWN0aW9uVHlwZSddPih0aGlzLmluZGV4ICsgMSwge1xuICAgICAgbGluZUNvbnRlbnQ6IHRoaXMubGluZUNvbnRlbnQsXG4gICAgICAuLi5tZXRhLFxuICAgIH0gYXMgYW55KTtcbiAgfTtcblxuICBwdWJsaWMgdXBkYXRlKGxpbmVDb250ZW50OiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmxpbmVQYXJ0cyA9IHNwbGl0QXJncyhsaW5lQ29udGVudCk7XG4gICAgdGhpcy5pbmRleCA9IGluZGV4O1xuICAgIHRoaXMubGluZUNvbnRlbnQgPSBsaW5lQ29udGVudDtcbiAgfVxufVxuIl19