UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

43 lines 6.22 kB
/** * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE */ import { Directive } from '@angular/core'; import { map, startWith, tap } from 'rxjs/operators'; import * as i0 from "@angular/core"; import * as i1 from "ng-zorro-antd/cdk/resize-observer"; export class NzOverflowRestDirective { constructor(nzResizeObserver, elementRef, cdr) { this.nzResizeObserver = nzResizeObserver; this.elementRef = elementRef; this.cdr = cdr; this.restStyle = undefined; this.restWidth$ = this.nzResizeObserver.observe(this.elementRef.nativeElement).pipe(map(([item]) => item.target.offsetWidth), startWith(0), tap(width => (this.restWidth = width))); this.restWidth = 0; } setRestStyle(display, order) { const mergedHidden = !display; this.restStyle = { opacity: mergedHidden ? 0 : 1, height: mergedHidden ? 0 : undefined, overflowY: mergedHidden ? 'hidden' : undefined, order: order, pointerEvents: mergedHidden ? 'none' : undefined, position: mergedHidden ? 'absolute' : undefined }; this.cdr.detectChanges(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NzOverflowRestDirective, deps: [{ token: i1.NzResizeObserver }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: NzOverflowRestDirective, isStandalone: true, selector: "[nzOverflowRest]", host: { properties: { "style": "restStyle" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NzOverflowRestDirective, decorators: [{ type: Directive, args: [{ selector: '[nzOverflowRest]', host: { '[style]': 'restStyle' }, standalone: true }] }], ctorParameters: () => [{ type: i1.NzResizeObserver }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmZsb3ctcmVzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb21wb25lbnRzL2Nkay9vdmVyZmxvdy9vdmVyZmxvdy1yZXN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQXFCLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBV3JELE1BQU0sT0FBTyx1QkFBdUI7SUFRbEMsWUFDVSxnQkFBa0MsRUFDbEMsVUFBc0IsRUFDdEIsR0FBc0I7UUFGdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBVmhDLGNBQVMsR0FBK0QsU0FBUyxDQUFDO1FBQ2xGLGVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUM1RSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBRSxJQUFJLENBQUMsTUFBc0IsQ0FBQyxXQUFXLENBQUMsRUFDekQsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUNaLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUN2QyxDQUFDO1FBQ0YsY0FBUyxHQUFHLENBQUMsQ0FBQztJQUtYLENBQUM7SUFFSixZQUFZLENBQUMsT0FBZ0IsRUFBRSxLQUFhO1FBQzFDLE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDZixPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3BDLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUM5QyxLQUFLLEVBQUUsS0FBSztZQUNaLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNoRCxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDaEQsQ0FBQztRQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0F6QlUsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBUG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsSUFBSSxFQUFFO3dCQUNKLFNBQVMsRUFBRSxXQUFXO3FCQUN2QjtvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9ORy1aT1JSTy9uZy16b3Jyby1hbnRkL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqL1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBOelJlc2l6ZU9ic2VydmVyIH0gZnJvbSAnbmctem9ycm8tYW50ZC9jZGsvcmVzaXplLW9ic2VydmVyJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW256T3ZlcmZsb3dSZXN0XScsXG4gIGhvc3Q6IHtcbiAgICAnW3N0eWxlXSc6ICdyZXN0U3R5bGUnXG4gIH0sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTnpPdmVyZmxvd1Jlc3REaXJlY3RpdmUge1xuICByZXN0U3R5bGU6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkIH0gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gIHJlc3RXaWR0aCQgPSB0aGlzLm56UmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkucGlwZShcbiAgICBtYXAoKFtpdGVtXSkgPT4gKGl0ZW0udGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5vZmZzZXRXaWR0aCksXG4gICAgc3RhcnRXaXRoKDApLFxuICAgIHRhcCh3aWR0aCA9PiAodGhpcy5yZXN0V2lkdGggPSB3aWR0aCkpXG4gICk7XG4gIHJlc3RXaWR0aCA9IDA7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbnpSZXNpemVPYnNlcnZlcjogTnpSZXNpemVPYnNlcnZlcixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBzZXRSZXN0U3R5bGUoZGlzcGxheTogYm9vbGVhbiwgb3JkZXI6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IG1lcmdlZEhpZGRlbiA9ICFkaXNwbGF5O1xuICAgIHRoaXMucmVzdFN0eWxlID0ge1xuICAgICAgb3BhY2l0eTogbWVyZ2VkSGlkZGVuID8gMCA6IDEsXG4gICAgICBoZWlnaHQ6IG1lcmdlZEhpZGRlbiA/IDAgOiB1bmRlZmluZWQsXG4gICAgICBvdmVyZmxvd1k6IG1lcmdlZEhpZGRlbiA/ICdoaWRkZW4nIDogdW5kZWZpbmVkLFxuICAgICAgb3JkZXI6IG9yZGVyLFxuICAgICAgcG9pbnRlckV2ZW50czogbWVyZ2VkSGlkZGVuID8gJ25vbmUnIDogdW5kZWZpbmVkLFxuICAgICAgcG9zaXRpb246IG1lcmdlZEhpZGRlbiA/ICdhYnNvbHV0ZScgOiB1bmRlZmluZWRcbiAgICB9O1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIl19