{"version":3,"file":"ng-nest-ui-card.mjs","sources":["../../../../lib/ng-nest/ui/card/card.property.ts","../../../../lib/ng-nest/ui/card/card.component.ts","../../../../lib/ng-nest/ui/card/card.component.html","../../../../lib/ng-nest/ui/card/card.module.ts","../../../../lib/ng-nest/ui/card/ng-nest-ui-card.ts"],"sourcesContent":["import { XPropertyFunction, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, input } from '@angular/core';\r\nimport type { XTemplate, XNumber, XShadow } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Card\r\n * @selector x-card\r\n * @decorator component\r\n */\r\nexport const XCardPrefix = 'x-card';\r\nconst X_CARD_CONFIG_NAME = 'card';\r\n\r\n/**\r\n * Card Property\r\n */\r\n@Component({ selector: `${XCardPrefix}-property`, template: '' })\r\nexport class XCardProperty extends XPropertyFunction(X_CARD_CONFIG_NAME) {\r\n  /**\r\n   * @zh_CN 卡片宽度\r\n   * @en_US Card width\r\n   * @example\r\n   *\r\n   * ```html\r\n   * <x-card width=\"20rem\">Card</div>\r\n   * ```\r\n   *\r\n   */\r\n  readonly width = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n  /**\r\n   * @zh_CN 内容样式\r\n   * @en_US Content style\r\n   * @example\r\n   *\r\n   * ```html\r\n   * <x-card [bodyStyle]=\"{ padding: 0 }\">Card</div>\r\n   * ```\r\n   *\r\n   */\r\n  readonly bodyStyle = input<XCardBodyStyle>({});\r\n  /**\r\n   * @zh_CN 头部模板\r\n   * @en_US Head template\r\n   * @example\r\n   *\r\n   * ```html\r\n   * <x-card width=\"20rem\" [header]=\"header\">\r\n   *   <ng-template #header>\r\n   *     <span>Title</span>\r\n   *     <x-button type=\"text\">action</x-button>\r\n   *   </ng-template>\r\n   *   Card\r\n   * </x-card>\r\n   * ```\r\n   *\r\n   */\r\n  readonly header = input<XTemplate>();\r\n  /**\r\n   * @zh_CN 阴影显示方式\r\n   * @en_US Shadow display method\r\n   * @example\r\n   *\r\n   * ```html\r\n   * <x-card shadow=\"always\">Always</x-card>\r\n   * <x-card shadow=\"hover\">Hover</x-card>\r\n   * <x-card shadow=\"never\">Never</x-card>\r\n   * ```\r\n   *\r\n   */\r\n  readonly shadow = input<XCardShadow>(this.config?.shadow ?? 'never');\r\n  /**\r\n   * @zh_CN 形态变体\r\n   * @en_US Card variant\r\n   */\r\n  readonly variant = input<XCardVariant>(this.config?.variant ?? 'outlined');\r\n}\r\n\r\n/**\r\n * @zh_CN 阴影显示配置\r\n * @en_US Shadow display configuration\r\n */\r\nexport type XCardShadow = XShadow;\r\n\r\n/**\r\n * @zh_CN 形态变体\r\n * @en_US Card variant\r\n */\r\nexport type XCardVariant = 'outlined' | 'filled' | 'shadow' | 'borderless';\r\n\r\n/**\r\n * @zh_CN 卡片内容样式类型\r\n * @en_US Card content style type\r\n */\r\nexport type XCardBodyStyle = { [property: string]: XNumber };\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, computed } from '@angular/core';\r\nimport { XCardPrefix, XCardProperty } from './card.property';\r\nimport { XIsEmpty } from '@ng-nest/ui/core';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { NgClass, NgStyle } from '@angular/common';\r\n\r\n@Component({\r\n  selector: `${XCardPrefix}`,\r\n  imports: [NgClass, NgStyle, XOutletDirective],\r\n  templateUrl: './card.component.html',\r\n  styleUrls: ['./card.component.scss'],\r\n  encapsulation: ViewEncapsulation.None,\r\n  changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCardComponent extends XCardProperty {\r\n  classMap = computed(() => ({\r\n    [`${XCardPrefix}-${this.shadow()}`]: !XIsEmpty(this.shadow()),\r\n    [`${XCardPrefix}-${this.variant()}`]: !XIsEmpty(this.variant())\r\n  }));\r\n}\r\n","<div #card class=\"x-card\" [ngClass]=\"classMap()\" [style.width]=\"width()\">\r\n  @if (header()) {\r\n    <div class=\"x-card-header\">\r\n      <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n    </div>\r\n  }\r\n  <div class=\"x-card-body\" [ngStyle]=\"bodyStyle()\">\r\n    <ng-content></ng-content>\r\n  </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XCardComponent } from './card.component';\r\n\r\n@NgModule({\r\n  exports: [XCardComponent],\r\n  imports: [XCardComponent]\r\n})\r\nexport class XCardModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}