UNPKG

ng-zorro-antd

Version:

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

316 lines (306 loc) 11.9 kB
import { __decorate, __metadata } from 'tslib'; import { Directive, ElementRef, Input, Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, TemplateRef, ChangeDetectorRef, Optional, ContentChild, ContentChildren, NgModule } from '@angular/core'; import { InputBoolean } from 'ng-zorro-antd/core/util'; import { Directionality, BidiModule } from '@angular/cdk/bidi'; import { NzConfigService, WithConfig } from 'ng-zorro-antd/core/config'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; import { CommonModule } from '@angular/common'; import { NzOutletModule } from 'ng-zorro-antd/core/outlet'; /** * 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 */ class NzCardGridDirective { constructor(elementRef) { this.elementRef = elementRef; this.nzHoverable = true; // TODO: move to host after View Engine deprecation this.elementRef.nativeElement.classList.add('ant-card-grid'); } } NzCardGridDirective.decorators = [ { type: Directive, args: [{ selector: '[nz-card-grid]', exportAs: 'nzCardGrid', host: { '[class.ant-card-hoverable]': 'nzHoverable' } },] } ]; NzCardGridDirective.ctorParameters = () => [ { type: ElementRef } ]; NzCardGridDirective.propDecorators = { nzHoverable: [{ type: Input }] }; __decorate([ InputBoolean(), __metadata("design:type", Object) ], NzCardGridDirective.prototype, "nzHoverable", void 0); /** * 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 */ class NzCardTabComponent { } NzCardTabComponent.decorators = [ { type: Component, args: [{ selector: 'nz-card-tab', exportAs: 'nzCardTab', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: ` <ng-template> <ng-content></ng-content> </ng-template> ` },] } ]; NzCardTabComponent.propDecorators = { template: [{ type: ViewChild, args: [TemplateRef, { static: true },] }] }; /** * 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 */ const NZ_CONFIG_MODULE_NAME = 'card'; class NzCardComponent { constructor(nzConfigService, cdr, elementRef, directionality) { this.nzConfigService = nzConfigService; this.cdr = cdr; this.elementRef = elementRef; this.directionality = directionality; this._nzModuleName = NZ_CONFIG_MODULE_NAME; this.nzBordered = true; this.nzBorderless = false; this.nzLoading = false; this.nzHoverable = false; this.nzBodyStyle = null; this.nzActions = []; this.nzType = null; this.nzSize = 'default'; this.dir = 'ltr'; this.destroy$ = new Subject(); // TODO: move to host after View Engine deprecation this.elementRef.nativeElement.classList.add('ant-card'); this.nzConfigService .getConfigChangeEventForComponent(NZ_CONFIG_MODULE_NAME) .pipe(takeUntil(this.destroy$)) .subscribe(() => { this.cdr.markForCheck(); }); } ngOnInit() { var _a; (_a = this.directionality.change) === null || _a === void 0 ? void 0 : _a.pipe(takeUntil(this.destroy$)).subscribe((direction) => { this.dir = direction; this.cdr.detectChanges(); }); this.dir = this.directionality.value; } ngOnDestroy() { this.destroy$.next(); this.destroy$.complete(); } } NzCardComponent.decorators = [ { type: Component, args: [{ selector: 'nz-card', exportAs: 'nzCard', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: ` <div class="ant-card-head" *ngIf="nzTitle || nzExtra || listOfNzCardTabComponent"> <div class="ant-card-head-wrapper"> <div class="ant-card-head-title" *ngIf="nzTitle"> <ng-container *nzStringTemplateOutlet="nzTitle">{{ nzTitle }}</ng-container> </div> <div class="ant-card-extra" *ngIf="nzExtra"> <ng-container *nzStringTemplateOutlet="nzExtra">{{ nzExtra }}</ng-container> </div> </div> <ng-container *ngIf="listOfNzCardTabComponent"> <ng-template [ngTemplateOutlet]="listOfNzCardTabComponent.template"></ng-template> </ng-container> </div> <div class="ant-card-cover" *ngIf="nzCover"> <ng-template [ngTemplateOutlet]="nzCover"></ng-template> </div> <div class="ant-card-body" [ngStyle]="nzBodyStyle"> <ng-container *ngIf="!nzLoading; else loadingTemplate"> <ng-content></ng-content> </ng-container> <ng-template #loadingTemplate> <nz-card-loading></nz-card-loading> </ng-template> </div> <ul class="ant-card-actions" *ngIf="nzActions.length"> <li *ngFor="let action of nzActions" [style.width.%]="100 / nzActions.length"> <span><ng-template [ngTemplateOutlet]="action"></ng-template></span> </li> </ul> `, host: { '[class.ant-card-loading]': 'nzLoading', '[class.ant-card-bordered]': 'nzBorderless === false && nzBordered', '[class.ant-card-hoverable]': 'nzHoverable', '[class.ant-card-small]': 'nzSize === "small"', '[class.ant-card-contain-grid]': 'listOfNzCardGridDirective && listOfNzCardGridDirective.length', '[class.ant-card-type-inner]': 'nzType === "inner"', '[class.ant-card-contain-tabs]': '!!listOfNzCardTabComponent', '[class.ant-card-rtl]': `dir === 'rtl'` } },] } ]; NzCardComponent.ctorParameters = () => [ { type: NzConfigService }, { type: ChangeDetectorRef }, { type: ElementRef }, { type: Directionality, decorators: [{ type: Optional }] } ]; NzCardComponent.propDecorators = { nzBordered: [{ type: Input }], nzBorderless: [{ type: Input }], nzLoading: [{ type: Input }], nzHoverable: [{ type: Input }], nzBodyStyle: [{ type: Input }], nzCover: [{ type: Input }], nzActions: [{ type: Input }], nzType: [{ type: Input }], nzSize: [{ type: Input }], nzTitle: [{ type: Input }], nzExtra: [{ type: Input }], listOfNzCardTabComponent: [{ type: ContentChild, args: [NzCardTabComponent, { static: false },] }], listOfNzCardGridDirective: [{ type: ContentChildren, args: [NzCardGridDirective,] }] }; __decorate([ WithConfig(), InputBoolean(), __metadata("design:type", Boolean) ], NzCardComponent.prototype, "nzBordered", void 0); __decorate([ WithConfig(), InputBoolean(), __metadata("design:type", Boolean) ], NzCardComponent.prototype, "nzBorderless", void 0); __decorate([ InputBoolean(), __metadata("design:type", Object) ], NzCardComponent.prototype, "nzLoading", void 0); __decorate([ WithConfig(), InputBoolean(), __metadata("design:type", Boolean) ], NzCardComponent.prototype, "nzHoverable", void 0); __decorate([ WithConfig(), __metadata("design:type", String) ], NzCardComponent.prototype, "nzSize", void 0); /** * 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 */ class NzCardLoadingComponent { constructor(elementRef) { this.elementRef = elementRef; this.listOfLoading = [ ['ant-col-22'], ['ant-col-8', 'ant-col-15'], ['ant-col-6', 'ant-col-18'], ['ant-col-13', 'ant-col-9'], ['ant-col-4', 'ant-col-3', 'ant-col-16'], ['ant-col-8', 'ant-col-6', 'ant-col-8'] ]; // TODO: move to host after View Engine deprecation this.elementRef.nativeElement.classList.add('ant-card-loading-content'); } } NzCardLoadingComponent.decorators = [ { type: Component, args: [{ selector: 'nz-card-loading', exportAs: 'nzCardLoading', template: ` <div class="ant-card-loading-content"> <div class="ant-row" style="margin-left: -4px; margin-right: -4px;" *ngFor="let listOfClassName of listOfLoading"> <div *ngFor="let className of listOfClassName" [ngClass]="className" style="padding-left: 4px; padding-right: 4px;"> <div class="ant-card-loading-block"></div> </div> </div> </div> `, preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None },] } ]; NzCardLoadingComponent.ctorParameters = () => [ { type: ElementRef } ]; /** * 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 */ class NzCardMetaComponent { constructor(elementRef) { this.elementRef = elementRef; this.nzTitle = null; this.nzDescription = null; this.nzAvatar = null; // TODO: move to host after View Engine deprecation this.elementRef.nativeElement.classList.add('ant-card-meta'); } } NzCardMetaComponent.decorators = [ { type: Component, args: [{ selector: 'nz-card-meta', exportAs: 'nzCardMeta', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: ` <div class="ant-card-meta-avatar" *ngIf="nzAvatar"> <ng-template [ngTemplateOutlet]="nzAvatar"></ng-template> </div> <div class="ant-card-meta-detail" *ngIf="nzTitle || nzDescription"> <div class="ant-card-meta-title" *ngIf="nzTitle"> <ng-container *nzStringTemplateOutlet="nzTitle">{{ nzTitle }}</ng-container> </div> <div class="ant-card-meta-description" *ngIf="nzDescription"> <ng-container *nzStringTemplateOutlet="nzDescription">{{ nzDescription }}</ng-container> </div> </div> ` },] } ]; NzCardMetaComponent.ctorParameters = () => [ { type: ElementRef } ]; NzCardMetaComponent.propDecorators = { nzTitle: [{ type: Input }], nzDescription: [{ type: Input }], nzAvatar: [{ type: Input }] }; /** * 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 */ class NzCardModule { } NzCardModule.decorators = [ { type: NgModule, args: [{ imports: [CommonModule, NzOutletModule], declarations: [NzCardComponent, NzCardGridDirective, NzCardMetaComponent, NzCardLoadingComponent, NzCardTabComponent], exports: [BidiModule, NzCardComponent, NzCardGridDirective, NzCardMetaComponent, NzCardLoadingComponent, NzCardTabComponent] },] } ]; /** * 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 */ /** * Generated bundle index. Do not edit. */ export { NzCardComponent, NzCardGridDirective, NzCardLoadingComponent, NzCardMetaComponent, NzCardModule, NzCardTabComponent }; //# sourceMappingURL=ng-zorro-antd-card.js.map