{"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  booleanAttribute,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  EventEmitter,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\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 { NzIconModule } from 'ng-zorro-antd/icon';\n\n@Component({\n  selector: 'nz-tag',\n  exportAs: 'nzTag',\n  preserveWhitespaces: false,\n  template: `\n    <ng-content></ng-content>\n    @if (nzMode === 'closeable') {\n      <span nz-icon nzType=\"close\" class=\"ant-tag-close-icon\" tabindex=\"-1\" (click)=\"closeTag($event)\"></span>\n    }\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    '[class.ant-tag-borderless]': `!nzBordered`,\n    '(click)': 'updateCheckedStatus()'\n  },\n  imports: [NzIconModule],\n  standalone: true\n})\nexport class NzTagComponent implements OnChanges, OnDestroy, OnInit {\n  isPresetColor = false;\n  @Input() nzMode: 'default' | 'closeable' | 'checkable' = 'default';\n  @Input() nzColor?: string | NzStatusColor | NzPresetColor;\n  @Input({ transform: booleanAttribute }) nzChecked = false;\n  @Input({ transform: booleanAttribute }) nzBordered = true;\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    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 { NgModule } from '@angular/core';\n\nimport { NzTagComponent } from './tag.component';\n\n@NgModule({\n  imports: [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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"}