@taiga-ui/cdk
Version:
Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance
37 lines • 4.32 kB
JavaScript
import { Directive, inject, Input, ViewContainerRef, } from '@angular/core';
import * as i0 from "@angular/core";
/**
* @deprecated use modern control flow (`@for`) syntax instead
*/
class TuiFor {
constructor() {
this.vcr = inject(ViewContainerRef);
this.ngForOf = [];
}
ngOnChanges() {
this.ref?.destroy();
if (this.ngForOf?.length === 0 && this.ngForEmpty) {
this.ref = this.vcr.createEmbeddedView(this.ngForEmpty);
}
else if (!this.ngForOf && this.ngForElse) {
this.ref = this.vcr.createEmbeddedView(this.ngForElse);
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiFor, isStandalone: true, selector: "[ngFor][ngForOf][ngForElse],[ngFor][ngForOf][ngForEmpty]", inputs: { ngForOf: "ngForOf", ngForElse: "ngForElse", ngForEmpty: "ngForEmpty" }, usesOnChanges: true, ngImport: i0 }); }
}
export { TuiFor };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFor, decorators: [{
type: Directive,
args: [{
standalone: true,
selector: '[ngFor][ngForOf][ngForElse],[ngFor][ngForOf][ngForEmpty]',
}]
}], propDecorators: { ngForOf: [{
type: Input
}], ngForElse: [{
type: Input
}], ngForEmpty: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9kaXJlY3RpdmVzL2Zvci9mb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsTUFBTSxFQUNOLEtBQUssRUFHTCxnQkFBZ0IsR0FDbkIsTUFBTSxlQUFlLENBQUM7O0FBRXZCOztHQUVHO0FBQ0gsTUFJYSxNQUFNO0lBSm5CO1FBS3FCLFFBQUcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUt6QyxZQUFPLEdBQThCLEVBQUUsQ0FBQztLQWlCbEQ7SUFUVSxXQUFXO1FBQ2QsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUVwQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQy9DLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDM0Q7YUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDMUQ7SUFDTCxDQUFDOytHQXRCUSxNQUFNO21HQUFOLE1BQU07O1NBQU4sTUFBTTs0RkFBTixNQUFNO2tCQUpsQixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsMERBQTBEO2lCQUN2RTs4QkFPVSxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICB0eXBlIEVtYmVkZGVkVmlld1JlZixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgdHlwZSBPbkNoYW5nZXMsXG4gICAgdHlwZSBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgbW9kZXJuIGNvbnRyb2wgZmxvdyAoYEBmb3JgKSBzeW50YXggaW5zdGVhZFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW25nRm9yXVtuZ0Zvck9mXVtuZ0ZvckVsc2VdLFtuZ0Zvcl1bbmdGb3JPZl1bbmdGb3JFbXB0eV0nLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlGb3I8VCwgSyA9IHVua25vd24+IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZjciA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcblxuICAgIHByaXZhdGUgcmVmPzogRW1iZWRkZWRWaWV3UmVmPHVua25vd24+O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbmdGb3JPZjogVFtdIHwgcmVhZG9ubHkgVFtdIHwgbnVsbCA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbmdGb3JFbHNlPzogVGVtcGxhdGVSZWY8Sz47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBuZ0ZvckVtcHR5PzogVGVtcGxhdGVSZWY8Sz47XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmPy5kZXN0cm95KCk7XG5cbiAgICAgICAgaWYgKHRoaXMubmdGb3JPZj8ubGVuZ3RoID09PSAwICYmIHRoaXMubmdGb3JFbXB0eSkge1xuICAgICAgICAgICAgdGhpcy5yZWYgPSB0aGlzLnZjci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy5uZ0ZvckVtcHR5KTtcbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5uZ0Zvck9mICYmIHRoaXMubmdGb3JFbHNlKSB7XG4gICAgICAgICAgICB0aGlzLnJlZiA9IHRoaXMudmNyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLm5nRm9yRWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=