{"version":3,"file":"ng-cw-v20-wave-progress.mjs","sources":["../../../projects/components/wave-progress/wave-progress.component.ts","../../../projects/components/wave-progress/wave-progress.component.html","../../../projects/components/wave-progress/wave-progress.module.ts","../../../projects/components/wave-progress/ng-cw-v20-wave-progress.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\nexport type NcSpeedType = 'verySlow' | 'slow' | 'default' | 'fast' | 'veryFast';\n\nconst SPEED_DURATIONS: Record<NcSpeedType, number> = {\n  veryFast: 2,\n  fast: 4,\n  default: 6,\n  slow: 8,\n  verySlow: 10,\n};\n\nfunction ncBooleanAttribute(value: unknown): boolean {\n  return value !== null && value !== undefined && value !== false && value !== 'false';\n}\n\n@Component({\n  selector: 'nc-wave-progress',\n  templateUrl: './wave-progress.component.html',\n  styleUrl: './wave-progress.component.less',\n  changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class WaveProgressComponent {\n  /** 进度 */\n  ncPercent = input(0);\n  /** 宽度 */\n  ncWidth = input(132);\n  /** 边框颜色 */\n  ncBorderColor = input('#1890ff');\n  /** 文字颜色 */\n  ncColor = input('#000000d9');\n  /** 波浪颜色 */\n  ncWaveColor = input('#74bcff');\n  /** 是否显示文字 */\n  ncShowInfo = input(true, { transform: ncBooleanAttribute });\n  /** 波浪速度 */\n  ncSpeed = input<NcSpeedType>('default');\n\n  borderWidth = computed(() => Math.round(this.ncWidth() * 0.038));\n  fontSize = computed(() => Math.round(this.ncWidth() * 0.24));\n  waveTop = computed(() => this.ncWidth() * (1 - this.ncPercent() / 100));\n  speedDuration = computed(() => SPEED_DURATIONS[this.ncSpeed()] ?? SPEED_DURATIONS.default);\n}\n","<div class=\"main\" [style.width.px]=\"ncWidth()\" [style.border-width.px]=\"borderWidth()\" [style.border-color]=\"ncBorderColor()\">\n    @if (ncShowInfo()) {\n        <div class=\"main-number\" [style.color]=\"ncColor()\" [style.font-size.px]=\"fontSize()\">\n            {{ncPercent()}}%\n        </div>\n    }\n    <div class=\"wave\" [style.width.px]=\"ncWidth() * 2\" [style.top.px]=\"waveTop()\"\n        [style.background-color]=\"ncWaveColor()\" [style.animation-duration]=\"speedDuration() + 's'\">\n    </div>\n</div>\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { WaveProgressComponent } from './wave-progress.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n        WaveProgressComponent,\r\n        CommonModule\r\n    ],\r\n    exports: [\r\n        WaveProgressComponent\r\n    ]\r\n})\r\nexport class NcWaveProgressModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}