ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
1 lines • 8.72 kB
Source Map (JSON)
{"version":3,"file":"ng-zorro-antd-tag.mjs","sources":["../../components/tag/tag.component.ts","../../components/tag/tag.module.ts","../../components/tag/public-api.ts","../../components/tag/ng-zorro-antd-tag.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Renderer2,\n SimpleChanges,\n ViewEncapsulation\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport {\n isPresetColor,\n isStatusColor,\n NzPresetColor,\n NzStatusColor,\n presetColors,\n statusColors\n} from 'ng-zorro-antd/core/color';\nimport { BooleanInput } from 'ng-zorro-antd/core/types';\nimport { InputBoolean } from 'ng-zorro-antd/core/util';\n\n@Component({\n selector: 'nz-tag',\n exportAs: 'nzTag',\n preserveWhitespaces: false,\n template: `\n <ng-content></ng-content>\n <i\n nz-icon\n nzType=\"close\"\n class=\"ant-tag-close-icon\"\n *ngIf=\"nzMode === 'closeable'\"\n tabindex=\"-1\"\n (click)=\"closeTag($event)\"\n ></i>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'ant-tag',\n '[style.background-color]': `isPresetColor ? '' : nzColor`,\n '[class.ant-tag-has-color]': `nzColor && !isPresetColor`,\n '[class.ant-tag-checkable]': `nzMode === 'checkable'`,\n '[class.ant-tag-checkable-checked]': `nzChecked`,\n '[class.ant-tag-rtl]': `dir === 'rtl'`,\n '(click)': 'updateCheckedStatus()'\n }\n})\nexport class NzTagComponent implements OnChanges, OnDestroy, OnInit {\n static ngAcceptInputType_nzChecked: BooleanInput;\n isPresetColor = false;\n @Input() nzMode: 'default' | 'closeable' | 'checkable' = 'default';\n @Input() nzColor?: string | NzStatusColor | NzPresetColor;\n @Input() @InputBoolean() nzChecked = false;\n @Output() readonly nzOnClose = new EventEmitter<MouseEvent>();\n @Output() readonly nzCheckedChange = new EventEmitter<boolean>();\n dir: Direction = 'ltr';\n private destroy$ = new Subject<void>();\n\n constructor(\n private cdr: ChangeDetectorRef,\n private renderer: Renderer2,\n private elementRef: ElementRef,\n @Optional() private directionality: Directionality\n ) {}\n\n updateCheckedStatus(): void {\n if (this.nzMode === 'checkable') {\n this.nzChecked = !this.nzChecked;\n this.nzCheckedChange.emit(this.nzChecked);\n }\n }\n\n closeTag(e: MouseEvent): void {\n this.nzOnClose.emit(e);\n if (!e.defaultPrevented) {\n this.renderer.removeChild(this.renderer.parentNode(this.elementRef.nativeElement), this.elementRef.nativeElement);\n }\n }\n\n private clearPresetColor(): void {\n const hostElement = this.elementRef.nativeElement as HTMLElement;\n // /(ant-tag-(?:pink|red|...))/g\n const regexp = new RegExp(`(ant-tag-(?:${[...presetColors, ...statusColors].join('|')}))`, 'g');\n const classname = hostElement.classList.toString();\n const matches: string[] = [];\n let match: RegExpExecArray | null = regexp.exec(classname);\n while (match !== null) {\n matches.push(match[1]);\n match = regexp.exec(classname);\n }\n hostElement.classList.remove(...matches);\n }\n\n private setPresetColor(): void {\n const hostElement = this.elementRef.nativeElement as HTMLElement;\n this.clearPresetColor();\n if (!this.nzColor) {\n this.isPresetColor = false;\n } else {\n this.isPresetColor = isPresetColor(this.nzColor) || isStatusColor(this.nzColor);\n }\n if (this.isPresetColor) {\n hostElement.classList.add(`ant-tag-${this.nzColor}`);\n }\n }\n\n ngOnInit(): void {\n this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n this.dir = direction;\n this.cdr.detectChanges();\n });\n\n this.dir = this.directionality.value;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { nzColor } = changes;\n if (nzColor) {\n this.setPresetColor();\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzTagComponent } from './tag.component';\n\n@NgModule({\n imports: [BidiModule, CommonModule, FormsModule, NzIconModule],\n declarations: [NzTagComponent],\n exports: [NzTagComponent]\n})\nexport class NzTagModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './tag.component';\nexport * from './tag.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}