@dotglitch/ngx-common
Version:
Angular components and utilities that are commonly used.
21 lines • 3.51 kB
JavaScript
export class RecursionDepth {
constructor(options, fileRecursionDepth = 0, packageRecursionDepth = 0) {
this.options = options;
this.fileRecursionDepth = fileRecursionDepth;
this.packageRecursionDepth = packageRecursionDepth;
}
nextPackage() {
return new RecursionDepth(this.options, this.fileRecursionDepth, this.packageRecursionDepth + 1);
}
nextFile() {
return new RecursionDepth(this.options, this.fileRecursionDepth + 1, this.packageRecursionDepth);
}
same() {
return new RecursionDepth(this.options, this.fileRecursionDepth, this.packageRecursionDepth);
}
shouldStop() {
return ((this.options.fileRecursionDepth > 0 && this.fileRecursionDepth >= this.options.fileRecursionDepth) ||
(this.options.packageRecursionDepth > 0 && this.packageRecursionDepth >= this.options.packageRecursionDepth));
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdXJzaW9uLWRlcHRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9jb21wb25lbnRzL3ZzY29kZS90cy10eXBlLXJlc29sdmVyL3JlY3Vyc2lvbi1kZXB0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sY0FBYztJQUN2QixZQUFvQixPQUFnQixFQUFVLHFCQUFxQixDQUFDLEVBQVUsd0JBQXdCLENBQUM7UUFBbkYsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUFVLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBSTtRQUFVLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBSTtJQUFHLENBQUM7SUFFcEcsV0FBVztRQUNkLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFTSxRQUFRO1FBQ1gsT0FBTyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVNLElBQUk7UUFDUCxPQUFPLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFTSxVQUFVO1FBQ2IsT0FBTyxDQUNILENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUM7WUFDbkcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUMvRyxDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgUmVjdXJzaW9uRGVwdGgge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgb3B0aW9uczogT3B0aW9ucywgcHJpdmF0ZSBmaWxlUmVjdXJzaW9uRGVwdGggPSAwLCBwcml2YXRlIHBhY2thZ2VSZWN1cnNpb25EZXB0aCA9IDApIHt9XG5cbiAgICBwdWJsaWMgbmV4dFBhY2thZ2UoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUmVjdXJzaW9uRGVwdGgodGhpcy5vcHRpb25zLCB0aGlzLmZpbGVSZWN1cnNpb25EZXB0aCwgdGhpcy5wYWNrYWdlUmVjdXJzaW9uRGVwdGggKyAxKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmV4dEZpbGUoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUmVjdXJzaW9uRGVwdGgodGhpcy5vcHRpb25zLCB0aGlzLmZpbGVSZWN1cnNpb25EZXB0aCArIDEsIHRoaXMucGFja2FnZVJlY3Vyc2lvbkRlcHRoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2FtZSgpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBSZWN1cnNpb25EZXB0aCh0aGlzLm9wdGlvbnMsIHRoaXMuZmlsZVJlY3Vyc2lvbkRlcHRoLCB0aGlzLnBhY2thZ2VSZWN1cnNpb25EZXB0aCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFN0b3AoKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAodGhpcy5vcHRpb25zLmZpbGVSZWN1cnNpb25EZXB0aCA+IDAgJiYgdGhpcy5maWxlUmVjdXJzaW9uRGVwdGggPj0gdGhpcy5vcHRpb25zLmZpbGVSZWN1cnNpb25EZXB0aCkgfHxcbiAgICAgICAgICAgICh0aGlzLm9wdGlvbnMucGFja2FnZVJlY3Vyc2lvbkRlcHRoID4gMCAmJiB0aGlzLnBhY2thZ2VSZWN1cnNpb25EZXB0aCA+PSB0aGlzLm9wdGlvbnMucGFja2FnZVJlY3Vyc2lvbkRlcHRoKVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==