UNPKG

ng-zorro-antd

Version:

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

53 lines 5.83 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'; import { badgePresetColors } from './preset-colors'; export class NzRibbonComponent { constructor(elementRef) { this.elementRef = elementRef; this.nzPlacement = 'end'; this.nzText = null; this.presetColor = null; // TODO: move to host after View Engine deprecation this.elementRef.nativeElement.classList.add('ant-ribbon-wrapper'); } ngOnChanges(changes) { const { nzColor } = changes; if (nzColor) { this.presetColor = this.nzColor && badgePresetColors.indexOf(this.nzColor) !== -1 ? this.nzColor : null; } } } NzRibbonComponent.decorators = [ { type: Component, args: [{ selector: 'nz-ribbon', exportAs: 'nzRibbon', preserveWhitespaces: false, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: ` <ng-content></ng-content> <div class="ant-ribbon" [class]="presetColor && 'ant-ribbon-color-' + presetColor" [class.ant-ribbon-placement-end]="nzPlacement === 'end'" [class.ant-ribbon-placement-start]="nzPlacement === 'start'" [style.background-color]="!presetColor && nzColor" > <ng-container *nzStringTemplateOutlet="nzText">{{ nzText }}</ng-container> <div class="ant-ribbon-corner" [style.color]="!presetColor && nzColor"></div> </div> ` },] } ]; NzRibbonComponent.ctorParameters = () => [ { type: ElementRef } ]; NzRibbonComponent.propDecorators = { nzColor: [{ type: Input }], nzPlacement: [{ type: Input }], nzText: [{ type: Input }] }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmliYm9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2NvbXBvbmVudHMvYmFkZ2UvcmliYm9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUlMLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQXNCcEQsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSmpDLGdCQUFXLEdBQW9CLEtBQUssQ0FBQztRQUNyQyxXQUFNLEdBQXNDLElBQUksQ0FBQztRQUMxRCxnQkFBVyxHQUFrQixJQUFJLENBQUM7UUFHaEMsbURBQW1EO1FBQ25ELElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDNUIsSUFBSSxPQUFPLEVBQUU7WUFDWCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ3pHO0lBQ0gsQ0FBQzs7O1lBcENGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsV0FBVztnQkFDckIsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLG1CQUFtQixFQUFFLEtBQUs7Z0JBQzFCLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2dCQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtnQkFDL0MsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7R0FZVDthQUNGOzs7WUE3QkMsVUFBVTs7O3NCQStCVCxLQUFLOzBCQUNMLEtBQUs7cUJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9naXRodWIuY29tL05HLVpPUlJPL25nLXpvcnJvLWFudGQvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgYmFkZ2VQcmVzZXRDb2xvcnMgfSBmcm9tICcuL3ByZXNldC1jb2xvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduei1yaWJib24nLFxuICBleHBvcnRBczogJ256UmliYm9uJyxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImFudC1yaWJib25cIlxuICAgICAgW2NsYXNzXT1cInByZXNldENvbG9yICYmICdhbnQtcmliYm9uLWNvbG9yLScgKyBwcmVzZXRDb2xvclwiXG4gICAgICBbY2xhc3MuYW50LXJpYmJvbi1wbGFjZW1lbnQtZW5kXT1cIm56UGxhY2VtZW50ID09PSAnZW5kJ1wiXG4gICAgICBbY2xhc3MuYW50LXJpYmJvbi1wbGFjZW1lbnQtc3RhcnRdPVwibnpQbGFjZW1lbnQgPT09ICdzdGFydCdcIlxuICAgICAgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiIXByZXNldENvbG9yICYmIG56Q29sb3JcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXIgKm56U3RyaW5nVGVtcGxhdGVPdXRsZXQ9XCJuelRleHRcIj57eyBuelRleHQgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgIDxkaXYgY2xhc3M9XCJhbnQtcmliYm9uLWNvcm5lclwiIFtzdHlsZS5jb2xvcl09XCIhcHJlc2V0Q29sb3IgJiYgbnpDb2xvclwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICBgXG59KVxuZXhwb3J0IGNsYXNzIE56UmliYm9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgbnpDb2xvcjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBuelBsYWNlbWVudDogJ3N0YXJ0JyB8ICdlbmQnID0gJ2VuZCc7XG4gIEBJbnB1dCgpIG56VGV4dDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dm9pZD4gfCBudWxsID0gbnVsbDtcbiAgcHJlc2V0Q29sb3I6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIC8vIFRPRE86IG1vdmUgdG8gaG9zdCBhZnRlciBWaWV3IEVuZ2luZSBkZXByZWNhdGlvblxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2FudC1yaWJib24td3JhcHBlcicpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IHsgbnpDb2xvciB9ID0gY2hhbmdlcztcbiAgICBpZiAobnpDb2xvcikge1xuICAgICAgdGhpcy5wcmVzZXRDb2xvciA9IHRoaXMubnpDb2xvciAmJiBiYWRnZVByZXNldENvbG9ycy5pbmRleE9mKHRoaXMubnpDb2xvcikgIT09IC0xID8gdGhpcy5uekNvbG9yIDogbnVsbDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==