cdkdx
Version:
Zero-config CLI for aws cdk development
25 lines • 2.95 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GitIgnore = void 0;
const file_base_1 = require("./file-base");
class GitIgnore extends file_base_1.FileBase {
constructor(project) {
super(project, '.gitignore');
this.excludes = new Array();
this.includes = new Array();
}
excludesFromString(gitignore) {
gitignore.split('\n').forEach((line) => this.exclude(line));
}
exclude(...patterns) {
this.excludes.push(...patterns);
}
include(...patterns) {
this.includes.push(...patterns.map((inc) => `!${inc}`));
}
get data() {
return [...this.excludes, ...this.includes].join('\n');
}
}
exports.GitIgnore = GitIgnore;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0LWlnbm9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZW1wbGF0ZXMvZ2l0LWlnbm9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyQ0FBdUM7QUFFdkMsTUFBYSxTQUFVLFNBQVEsb0JBQVE7SUFJckMsWUFBWSxPQUFnQjtRQUMxQixLQUFLLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBSmQsYUFBUSxHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFDL0IsYUFBUSxHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7SUFJaEQsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFNBQWlCO1FBQ3pDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLE9BQU8sQ0FBQyxHQUFHLFFBQWtCO1FBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLE9BQU8sQ0FBQyxHQUFHLFFBQWtCO1FBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQWMsSUFBSTtRQUNoQixPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0Y7QUF2QkQsOEJBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJy4vcHJvamVjdCc7XG5pbXBvcnQgeyBGaWxlQmFzZSB9IGZyb20gJy4vZmlsZS1iYXNlJztcblxuZXhwb3J0IGNsYXNzIEdpdElnbm9yZSBleHRlbmRzIEZpbGVCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBleGNsdWRlcyA9IG5ldyBBcnJheTxzdHJpbmc+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5jbHVkZXMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QpIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnLmdpdGlnbm9yZScpO1xuICB9XG5cbiAgcHVibGljIGV4Y2x1ZGVzRnJvbVN0cmluZyhnaXRpZ25vcmU6IHN0cmluZyk6IHZvaWQge1xuICAgIGdpdGlnbm9yZS5zcGxpdCgnXFxuJykuZm9yRWFjaCgobGluZSkgPT4gdGhpcy5leGNsdWRlKGxpbmUpKTtcbiAgfVxuXG4gIHB1YmxpYyBleGNsdWRlKC4uLnBhdHRlcm5zOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuZXhjbHVkZXMucHVzaCguLi5wYXR0ZXJucyk7XG4gIH1cblxuICBwdWJsaWMgaW5jbHVkZSguLi5wYXR0ZXJuczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICB0aGlzLmluY2x1ZGVzLnB1c2goLi4ucGF0dGVybnMubWFwKChpbmMpID0+IGAhJHtpbmN9YCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBkYXRhKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFsuLi50aGlzLmV4Y2x1ZGVzLCAuLi50aGlzLmluY2x1ZGVzXS5qb2luKCdcXG4nKTtcbiAgfVxufVxuIl19