{"version":3,"file":"sv.mjs","sources":["../../../../packages/abc/sv/sv-container.component.ts","../../../../packages/abc/sv/sv-value.component.ts","../../../../packages/abc/sv/sv.component.ts","../../../../packages/abc/sv/sv.component.html","../../../../packages/abc/sv/sv.module.ts","../../../../packages/abc/sv/sv.ts"],"sourcesContent":["import { NgStyle } from '@angular/common';\nimport {\n  ChangeDetectionStrategy,\n  Component,\n  ElementRef,\n  Input,\n  OnInit,\n  Renderer2,\n  TemplateRef,\n  ViewEncapsulation,\n  booleanAttribute,\n  inject,\n  numberAttribute\n} from '@angular/core';\n\nimport type { REP_TYPE } from '@delon/theme';\nimport { AlainConfigService } from '@delon/util/config';\nimport { NzStringTemplateOutletDirective } from 'ng-zorro-antd/core/outlet';\n\n@Component({\n  selector: 'sv-title, [sv-title]',\n  exportAs: 'svTitle',\n  template: '<ng-content />',\n  host: {\n    '[class.sv__title]': 'true'\n  },\n  preserveWhitespaces: false,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  standalone: true\n})\nexport class SVTitleComponent implements OnInit {\n  private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n  private readonly parentComp = inject(SVContainerComponent, { host: true, optional: true });\n  private readonly ren = inject(Renderer2);\n\n  constructor() {\n    if (this.parentComp == null) {\n      throw new Error(`[sv-title] must include 'sv-container' component`);\n    }\n  }\n\n  private setClass(): void {\n    const gutter = this.parentComp!.gutter;\n    const el = this.el;\n    this.ren.setStyle(el, 'padding-left', `${gutter / 2}px`);\n    this.ren.setStyle(el, 'padding-right', `${gutter / 2}px`);\n  }\n\n  ngOnInit(): void {\n    this.setClass();\n  }\n}\n\n@Component({\n  selector: 'sv-container, [sv-container]',\n  exportAs: 'svContainer',\n  template: `\n    <div class=\"ant-row\" [ngStyle]=\"margin\">\n      @if (title) {\n        <sv-title>\n          <ng-container *nzStringTemplateOutlet=\"title\">{{ title }}</ng-container>\n        </sv-title>\n      }\n      <ng-content />\n    </div>\n  `,\n  host: {\n    '[class.sv__container]': 'true',\n    '[class.sv__horizontal]': `layout === 'horizontal'`,\n    '[class.sv__vertical]': `layout === 'vertical'`,\n    '[class.sv__small]': `size === 'small'`,\n    '[class.sv__large]': `size === 'large'`,\n    '[class.sv__bordered]': `bordered`,\n    '[class.clearfix]': `true`\n  },\n  preserveWhitespaces: false,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  standalone: true,\n  imports: [NgStyle, SVTitleComponent, NzStringTemplateOutletDirective]\n})\nexport class SVContainerComponent {\n  @Input({ alias: 'sv-container', transform: (v: unknown) => (v == null ? null : numberAttribute(v)) })\n  colInCon?: REP_TYPE;\n  @Input() title?: string | TemplateRef<void>;\n  @Input() size?: 'small' | 'large' | 'default';\n  /** 列表项间距，单位为 `px` */\n  @Input({ transform: numberAttribute }) gutter!: number;\n  @Input() layout!: 'horizontal' | 'vertical';\n  @Input({ transform: numberAttribute }) labelWidth?: number;\n  /** 指定信息最多分几列展示，最终一行几列由 col 配置结合响应式规则决定 */\n  @Input({ transform: numberAttribute }) col!: number;\n  @Input({ transform: booleanAttribute }) default!: boolean;\n  @Input({ transform: booleanAttribute }) noColon = false;\n  @Input({ transform: booleanAttribute }) bordered = false;\n\n  get margin(): { [k: string]: number } {\n    return this.bordered ? {} : { 'margin-left.px': -(this.gutter / 2), 'margin-right.px': -(this.gutter / 2) };\n  }\n\n  constructor(configSrv: AlainConfigService) {\n    configSrv.attach(this, 'sv', {\n      size: 'large',\n      gutter: 32,\n      layout: 'horizontal',\n      col: 3,\n      default: true\n    });\n  }\n}\n","import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\n\nimport type { NzTSType } from 'ng-zorro-antd/core/types';\nimport { NzTooltipDirective } from 'ng-zorro-antd/tooltip';\n\n@Component({\n  selector: 'sv-value, [sv-value]',\n  exportAs: 'svValue',\n  template: `\n    @if (prefix) {\n      <em class=\"sv__value-prefix\" [innerHTML]=\"prefix\"></em>\n    }\n    <span nz-tooltip [nzTooltipTitle]=\"tooltip\" class=\"sv__value-text\"><ng-content /></span>\n    @if (unit) {\n      <em class=\"sv__value-unit\" [innerHTML]=\"unit\"></em>\n    }\n  `,\n  host: {\n    '[class.sv__value]': 'true',\n    '[class.sv__value-small]': `size === 'small'`,\n    '[class.sv__value-large]': `size === 'large'`\n  },\n  preserveWhitespaces: false,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  standalone: true,\n  imports: [NzTooltipDirective]\n})\nexport class SVValueComponent {\n  @Input() prefix?: string;\n  @Input() unit?: string;\n  @Input() tooltip?: NzTSType | null;\n  @Input() size: 'large' | 'small' | 'default' = 'default';\n}\n","import { CdkObserveContent } from '@angular/cdk/observers';\nimport {\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  Component,\n  ElementRef,\n  Input,\n  OnChanges,\n  Renderer2,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation,\n  booleanAttribute,\n  inject,\n  numberAttribute\n} from '@angular/core';\n\nimport { ResponsiveService } from '@delon/theme';\nimport { isEmpty } from '@delon/util/browser';\nimport { NzStringTemplateOutletDirective } from 'ng-zorro-antd/core/outlet';\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\nimport { NzTooltipDirective } from 'ng-zorro-antd/tooltip';\n\nimport { SVContainerComponent } from './sv-container.component';\n\nconst prefixCls = `sv`;\n\n@Component({\n  selector: 'sv, [sv]',\n  exportAs: 'sv',\n  templateUrl: './sv.component.html',\n  host: {\n    '[style.padding-left.px]': 'paddingValue',\n    '[style.padding-right.px]': 'paddingValue'\n  },\n  preserveWhitespaces: false,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  standalone: true,\n  imports: [NzStringTemplateOutletDirective, NzTooltipDirective, NzIconDirective, CdkObserveContent]\n})\nexport class SVComponent implements AfterViewInit, OnChanges {\n  private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n  private readonly parentComp = inject(SVContainerComponent, { host: true, optional: true });\n  private readonly rep = inject(ResponsiveService);\n  private readonly ren = inject(Renderer2);\n\n  @ViewChild('conEl', { static: false })\n  private readonly conEl!: ElementRef<HTMLElement>;\n  private clsMap: string[] = [];\n  _noColon = false;\n\n  // #region fields\n\n  @Input() optional?: string | TemplateRef<void> | null;\n  @Input() optionalHelp?: string | TemplateRef<void> | null;\n  @Input() optionalHelpColor?: string;\n  @Input() label?: string | TemplateRef<void> | null;\n  @Input() unit?: string | TemplateRef<void> | null;\n  @Input({ transform: (v: unknown) => (v == null ? null : numberAttribute(v)) }) col?: number | null;\n  @Input({ transform: (v: unknown) => (v == null ? null : booleanAttribute(v)) }) default?: boolean | null;\n  @Input() type?: 'primary' | 'success' | 'danger' | 'warning';\n  @Input({ transform: (v: unknown) => (v == null ? null : booleanAttribute(v)) }) noColon?: boolean | null;\n  @Input({ transform: booleanAttribute }) hideLabel = false;\n\n  // #endregion\n\n  get paddingValue(): number | null {\n    if (this.parentComp!.bordered) return null;\n    return this.parentComp!.gutter / 2;\n  }\n\n  get labelWidth(): number | null | undefined {\n    const { labelWidth, layout } = this.parentComp!;\n    return layout === 'horizontal' ? labelWidth : null;\n  }\n\n  constructor() {\n    if (this.parentComp == null) {\n      throw new Error(`[sv] must include 'sv-container' component`);\n    }\n  }\n\n  private setClass(): void {\n    const { ren, col, clsMap, type, rep, noColon } = this;\n    const parent = this.parentComp!;\n    const el = this.el;\n    this._noColon = parent.bordered ? true : noColon != null ? noColon : parent.noColon;\n    clsMap.forEach(cls => ren.removeClass(el, cls));\n    clsMap.length = 0;\n    const parentCol = parent.colInCon || parent.col;\n    clsMap.push(...rep.genCls(col != null ? col : parentCol, parentCol));\n    clsMap.push(`${prefixCls}__item`);\n    if (parent.labelWidth) clsMap.push(`${prefixCls}__item-fixed`);\n    if (type) clsMap.push(`${prefixCls}__type-${type}`);\n    clsMap.forEach(cls => ren.addClass(el, cls));\n  }\n\n  ngAfterViewInit(): void {\n    this.setClass();\n    this.checkContent();\n  }\n\n  ngOnChanges(): void {\n    this.setClass();\n  }\n\n  checkContent(): void {\n    const { conEl } = this;\n    const def = this.default;\n    if (!(def != null ? def : this.parentComp?.default)) {\n      return;\n    }\n    const el = conEl.nativeElement as HTMLElement;\n    const cls = `sv__default`;\n    if (el.classList.contains(cls)) {\n      el.classList.remove(cls);\n    }\n    if (isEmpty(el)) {\n      el.classList.add(cls);\n    }\n  }\n}\n","@if (!hideLabel) {\n  <div\n    class=\"sv__label\"\n    [class.sv__label-empty]=\"!label\"\n    [class.sv__label-width]=\"labelWidth !== null && labelWidth !== undefined\"\n    [class.sv__no-colon]=\"_noColon\"\n    [style.width.px]=\"labelWidth\"\n  >\n    <span class=\"sv__label-text\">\n      <ng-container *nzStringTemplateOutlet=\"label\">{{ label }}</ng-container>\n    </span>\n    @if (optional || optionalHelp) {\n      <span class=\"sv__label-optional\" [class.sv__label-optional-no-text]=\"!optional\">\n        <ng-container *nzStringTemplateOutlet=\"optional\">{{ optional }}</ng-container>\n        @if (optionalHelp) {\n          <i\n            nz-tooltip\n            [nzTooltipTitle]=\"optionalHelp\"\n            [nzTooltipColor]=\"optionalHelpColor\"\n            nz-icon\n            nzType=\"question-circle\"\n          ></i>\n        }\n      </span>\n    }\n  </div>\n}\n<div class=\"sv__detail\">\n  <span (cdkObserveContent)=\"checkContent()\" #conEl>\n    <ng-content />\n  </span>\n  @if (!!unit) {\n    <span class=\"sv__unit\" *nzStringTemplateOutlet=\"unit\">{{ unit }}</span>\n  }\n</div>\n","import { ObserversModule } from '@angular/cdk/observers';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\nimport { SVContainerComponent, SVTitleComponent } from './sv-container.component';\nimport { SVValueComponent } from './sv-value.component';\nimport { SVComponent } from './sv.component';\n\nconst COMPONENTS = [SVContainerComponent, SVComponent, SVTitleComponent, SVValueComponent];\n\n@NgModule({\n  imports: [CommonModule, ObserversModule, NzToolTipModule, NzIconModule, NzOutletModule, ...COMPONENTS],\n  exports: COMPONENTS\n})\nexport class SVModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}