UNPKG

ng-zorro-antd

Version:

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

62 lines 6.58 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 { ChangeDetectionStrategy, Component, ElementRef, Input, ViewEncapsulation } from '@angular/core'; export class NzTableSortersComponent { constructor(elementRef) { this.elementRef = elementRef; this.sortDirections = ['ascend', 'descend', null]; this.sortOrder = null; this.contentTemplate = null; this.isUp = false; this.isDown = false; // TODO: move to host after View Engine deprecation this.elementRef.nativeElement.classList.add('ant-table-column-sorters'); } ngOnChanges(changes) { const { sortDirections } = changes; if (sortDirections) { this.isUp = this.sortDirections.indexOf('ascend') !== -1; this.isDown = this.sortDirections.indexOf('descend') !== -1; } } } NzTableSortersComponent.decorators = [ { type: Component, args: [{ selector: 'nz-table-sorters', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: ` <span class="ant-table-column-title"><ng-template [ngTemplateOutlet]="contentTemplate"></ng-template></span> <span class="ant-table-column-sorter" [class.ant-table-column-sorter-full]="isDown && isUp"> <span class="ant-table-column-sorter-inner"> <i nz-icon nzType="caret-up" *ngIf="isUp" class="ant-table-column-sorter-up" [class.active]="sortOrder === 'ascend'" ></i> <i nz-icon nzType="caret-down" *ngIf="isDown" class="ant-table-column-sorter-down" [class.active]="sortOrder === 'descend'" ></i> </span> </span> ` },] } ]; NzTableSortersComponent.ctorParameters = () => [ { type: ElementRef } ]; NzTableSortersComponent.propDecorators = { sortDirections: [{ type: Input }], sortOrder: [{ type: Input }], contentTemplate: [{ type: Input }] }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzL3RhYmxlL3NyYy9hZGRvbi9zb3J0ZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUlMLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQWlDdkIsTUFBTSxPQUFPLHVCQUF1QjtJQU9sQyxZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBTmpDLG1CQUFjLEdBQXVCLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRSxjQUFTLEdBQXFCLElBQUksQ0FBQztRQUNuQyxvQkFBZSxHQUFrQyxJQUFJLENBQUM7UUFDL0QsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFHYixtREFBbUQ7UUFDbkQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUNuQyxJQUFJLGNBQWMsRUFBRTtZQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDN0Q7SUFDSCxDQUFDOzs7WUE3Q0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLG1CQUFtQixFQUFFLEtBQUs7Z0JBQzFCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtnQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CVDthQUNGOzs7WUF0Q0MsVUFBVTs7OzZCQXdDVCxLQUFLO3dCQUNMLEtBQUs7OEJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9naXRodWIuY29tL05HLVpPUlJPL25nLXpvcnJvLWFudGQvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTnpTYWZlQW55IH0gZnJvbSAnbmctem9ycm8tYW50ZC9jb3JlL3R5cGVzJztcblxuaW1wb3J0IHsgTnpUYWJsZVNvcnRPcmRlciB9IGZyb20gJy4uL3RhYmxlLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbnotdGFibGUtc29ydGVycycsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c3BhbiBjbGFzcz1cImFudC10YWJsZS1jb2x1bW4tdGl0bGVcIj48bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJhbnQtdGFibGUtY29sdW1uLXNvcnRlclwiIFtjbGFzcy5hbnQtdGFibGUtY29sdW1uLXNvcnRlci1mdWxsXT1cImlzRG93biAmJiBpc1VwXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cImFudC10YWJsZS1jb2x1bW4tc29ydGVyLWlubmVyXCI+XG4gICAgICAgIDxpXG4gICAgICAgICAgbnotaWNvblxuICAgICAgICAgIG56VHlwZT1cImNhcmV0LXVwXCJcbiAgICAgICAgICAqbmdJZj1cImlzVXBcIlxuICAgICAgICAgIGNsYXNzPVwiYW50LXRhYmxlLWNvbHVtbi1zb3J0ZXItdXBcIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwic29ydE9yZGVyID09PSAnYXNjZW5kJ1wiXG4gICAgICAgID48L2k+XG4gICAgICAgIDxpXG4gICAgICAgICAgbnotaWNvblxuICAgICAgICAgIG56VHlwZT1cImNhcmV0LWRvd25cIlxuICAgICAgICAgICpuZ0lmPVwiaXNEb3duXCJcbiAgICAgICAgICBjbGFzcz1cImFudC10YWJsZS1jb2x1bW4tc29ydGVyLWRvd25cIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwic29ydE9yZGVyID09PSAnZGVzY2VuZCdcIlxuICAgICAgICA+PC9pPlxuICAgICAgPC9zcGFuPlxuICAgIDwvc3Bhbj5cbiAgYFxufSlcbmV4cG9ydCBjbGFzcyBOelRhYmxlU29ydGVyc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHNvcnREaXJlY3Rpb25zOiBOelRhYmxlU29ydE9yZGVyW10gPSBbJ2FzY2VuZCcsICdkZXNjZW5kJywgbnVsbF07XG4gIEBJbnB1dCgpIHNvcnRPcmRlcjogTnpUYWJsZVNvcnRPcmRlciA9IG51bGw7XG4gIEBJbnB1dCgpIGNvbnRlbnRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8TnpTYWZlQW55PiB8IG51bGwgPSBudWxsO1xuICBpc1VwID0gZmFsc2U7XG4gIGlzRG93biA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIC8vIFRPRE86IG1vdmUgdG8gaG9zdCBhZnRlciBWaWV3IEVuZ2luZSBkZXByZWNhdGlvblxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2FudC10YWJsZS1jb2x1bW4tc29ydGVycycpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IHsgc29ydERpcmVjdGlvbnMgfSA9IGNoYW5nZXM7XG4gICAgaWYgKHNvcnREaXJlY3Rpb25zKSB7XG4gICAgICB0aGlzLmlzVXAgPSB0aGlzLnNvcnREaXJlY3Rpb25zLmluZGV4T2YoJ2FzY2VuZCcpICE9PSAtMTtcbiAgICAgIHRoaXMuaXNEb3duID0gdGhpcy5zb3J0RGlyZWN0aW9ucy5pbmRleE9mKCdkZXNjZW5kJykgIT09IC0xO1xuICAgIH1cbiAgfVxufVxuIl19