{"version":3,"file":"usitsdasdesign-dds-ng-status-tag.mjs","sources":["../../src/app/dds/status-tag/status-tag/constants.ts","../../src/app/dds/status-tag/status-tag/status-tag.component.ts","../../src/app/dds/status-tag/status-tag/status-tag.component.html","../../src/app/dds/status-tag/status-tag.module.ts","../../src/app/dds/status-tag/usitsdasdesign-dds-ng-status-tag.ts"],"sourcesContent":["import { ThemeClassesMap, ThemeMapEnum } from '@usitsdasdesign/dds-ng/core/theme';\nimport { ExtThemes, Size } from '@usitsdasdesign/dds-ng/shared';\n\nexport const themeClassesMap: ThemeClassesMap = {\n  [ThemeMapEnum.Size]: {\n    [Size.sm]: 'dds-status-tag_sm',\n    [Size.lg]: 'dds-status-tag_lg',\n  },\n  [ThemeMapEnum.Themes]: {\n    [ExtThemes.green]: 'dds-status-tag_approved',\n    [ExtThemes.danger]: 'dds-status-tag_declined',\n    [ExtThemes.blue]: 'dds-status-tag_under-review',\n  },\n};\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\nimport { ThemeClassesMap, ThemeModule } from '@usitsdasdesign/dds-ng/core/theme';\nimport { AdditionalClass, ExtThemes, Size } from '@usitsdasdesign/dds-ng/shared';\nimport { DdsConfigService } from '@usitsdasdesign/dds-ng/shared/dds-config';\nimport { themeClassesMap } from './constants';\n\n@Component({\n  selector: 'dds-status-tag',\n  templateUrl: './status-tag.component.html',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  standalone: true,\n  imports: [CommonModule, ThemeModule],\n})\nexport class StatusTagComponent {\n  // Binds the `disabled` class to the host element when the `disabled` input is true.\n  @HostBinding(`class.${AdditionalClass.disabled}`) @Input() disabled: boolean | undefined;\n\n  // The icon to be displayed in the status tag.\n  @Input() icon: string | undefined;\n\n  // Custom CSS class to be applied to the status tag.\n  @Input() customClass: string | undefined;\n\n  // The theme of the status tag. Defaults to the theme from the DDS configuration.\n  @Input() theme: ExtThemes | string | undefined = this.ddsConfig.getConfig().theme;\n\n  // The size of the status tag. Defaults to the size from the DDS configuration.\n  @Input() size: Size | string | undefined = this.ddsConfig.getConfig().size;\n\n  // Configuration map for theme classes.\n  public themeConfig: ThemeClassesMap = themeClassesMap;\n\n  // Returns the icon to be displayed based on the `icon` input or the `theme` input.\n  // If `icon` is provided, it returns the `icon` value.\n  // Otherwise, it returns a default icon based on the `theme`.\n  get isIcon(): string {\n    if (this.icon) {\n      return this.icon;\n    } else {\n      switch (this.theme) {\n        case ExtThemes.blue:\n          return 'dds-icon_bookmark';\n        case ExtThemes.danger:\n          return 'dds-icon_close';\n        case ExtThemes.green:\n          return 'dds-icon_check';\n        default:\n          return 'dds-icon_close';\n      }\n    }\n  }\n\n  constructor(private ddsConfig: DdsConfigService) { }\n}\n","<div [ngClass]=\"{\n          'dds-status-tag_disabled': disabled\n        }\"\n     [theme]=\"theme\"\n     [size]=\"size\"\n     [ddsTheme]=\"themeConfig\"\n     [attr.aria-disabled]=\"disabled\"\n     role=\"status\"\n     class=\"dds-status-tag {{customClass}}\">\n  <span class=\"dds-status-tag__icon dds-icon {{isIcon}}\"></span>\n  <span class=\"dds-status-tag__text\">\n    <ng-content></ng-content>\n  </span>\n</div>","import { NgModule } from '@angular/core';\nimport { StatusTagComponent } from './status-tag/status-tag.component';\n\n@NgModule({\n  declarations: [],\n  imports: [StatusTagComponent],\n  exports: [StatusTagComponent],\n})\nexport class StatusTagModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}