{"version":3,"file":"ng-cw-v20-loading.mjs","sources":["../../../projects/components/loading/loading.component.ts","../../../projects/components/loading/loading.component.html","../../../projects/components/loading/loading.module.ts","../../../projects/components/loading/ng-cw-v20-loading.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\r\n\r\nfunction ncNumberAttribute(value: unknown, fallback = 0): number {\r\n  if (value === null || value === undefined || value === '') {\r\n    return fallback;\r\n  }\r\n\r\n  const parsed = Number(value);\r\n  return Number.isNaN(parsed) ? fallback : parsed;\r\n}\r\n\r\nexport type NcSizeType = 'mini' | 'small' | 'default' | 'large';\r\n\r\n@Component({\r\n  selector: 'nc-loading',\r\n  templateUrl: './loading.component.html',\r\n  styleUrl: './loading.component.less',\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class LoadingComponent {\r\n  /** 加载类型 */\r\n  ncType = input(1, { transform: (value: unknown) => ncNumberAttribute(value, 1) });\r\n  /** 加载大小 */\r\n  ncSize = input<NcSizeType>('default');\r\n  /** 加载提示 */\r\n  ncTips = input('');\r\n  /** 加载提示颜色 */\r\n  ncTipsColor = input('#1890ff');\r\n  /** 加载提示字体粗细 */\r\n  ncTipsWeight = input('400');\r\n\r\n  readonly tipsClass = computed(() => `ncTips_${this.ncSize()}`);\r\n\r\n  readonly loaderClass = computed(() => {\r\n    const size = this.ncSize();\r\n\r\n    switch (this.ncType()) {\r\n      case 1:\r\n        return `ballArrangement_${size}`;\r\n      case 2:\r\n        return `colorfulBounce_${size}`;\r\n      case 3:\r\n        return `rotatingBreathing_${size}`;\r\n      case 4:\r\n        return `colorfulBall_${size}`;\r\n      case 5:\r\n        return `heartBeating_${size}`;\r\n      case 6:\r\n        return `gearbox_${size}`;\r\n      case 7:\r\n        return `bouncingBall_${size}`;\r\n      case 8:\r\n        return `sliderLoading_${size}`;\r\n      case 9:\r\n        return `containerFilling_${size}`;\r\n      case 10:\r\n        return `blockJump_${size}`;\r\n      default:\r\n        if (this.ncType() >= 11 && this.ncType() <= 40) {\r\n          return `spin${this.ncType()}_${size}`;\r\n        }\r\n\r\n        if (this.ncType() >= 41 && this.ncType() <= 50) {\r\n          return `hypnotic${this.ncType()}_${size}`;\r\n        }\r\n\r\n        return `ballArrangement_${size}`;\r\n    }\r\n  });\r\n\r\n  readonly repeatItems = [1, 2, 3, 4, 5, 6];\r\n  readonly fiveItems = [1, 2, 3, 4, 5];\r\n  readonly sevenItems = [0, 1, 2, 3, 4, 5, 6];\r\n  readonly nineItems = [1, 2, 3, 4, 5, 6, 7, 8, 9];\r\n  readonly fourItems = [1, 2, 3, 4];\r\n}\r\n","<div class=\"nc-loading\">\r\n  @switch (ncType()) {\r\n    @case (1) {\r\n      <div [class]=\"loaderClass()\">\r\n        <div class=\"cs-loader\">\r\n          <div class=\"cs-loader-inner\">\r\n            @for (item of repeatItems; track item) {\r\n              <div [style.--j]=\"item\"></div>\r\n            }\r\n          </div>\r\n        </div>\r\n      </div>\r\n    }\r\n    @case (2) {\r\n      <div [class]=\"loaderClass()\">\r\n        <div class=\"ball-row\">\r\n          @for (item of fiveItems; track item; let index = $index) {\r\n            <span class=\"ball\" [style.--i]=\"item\" [style.--ii]=\"index\"></span>\r\n          }\r\n        </div>\r\n        <div class=\"shadow-row\">\r\n          @for (item of fiveItems; track item; let index = $index) {\r\n            <span class=\"shadow\" [style.--i]=\"item\" [style.--ii]=\"index\"></span>\r\n          }\r\n        </div>\r\n      </div>\r\n    }\r\n    @case (3) {\r\n      <div [class]=\"loaderClass()\">\r\n        <div class=\"box\">\r\n          <div class=\"circle\"></div>\r\n          <div class=\"circle\"></div>\r\n        </div>\r\n      </div>\r\n    }\r\n    @case (4) {\r\n      <div [class]=\"loaderClass()\">\r\n        @for (item of sevenItems; track item) {\r\n          <span [style.--i]=\"item\"></span>\r\n        }\r\n      </div>\r\n    }\r\n    @case (5) {\r\n      <div [class]=\"loaderClass()\">\r\n        @for (item of nineItems; track item) {\r\n          <span></span>\r\n        }\r\n      </div>\r\n    }\r\n    @case (6) {\r\n      <div [class]=\"loaderClass()\">\r\n        <div class=\"overlay\"></div>\r\n        <div class=\"gear one\">\r\n          <div class=\"gear-inner\">\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n          </div>\r\n        </div>\r\n        <div class=\"gear two\">\r\n          <div class=\"gear-inner\">\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n          </div>\r\n        </div>\r\n        <div class=\"gear three\">\r\n          <div class=\"gear-inner\">\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n          </div>\r\n        </div>\r\n        <div class=\"gear four large\">\r\n          <div class=\"gear-inner\">\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n            <div class=\"bar\"></div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    }\r\n    @case (10) {\r\n      <div [class]=\"loaderClass()\">\r\n        @for (item of fourItems; track item) {\r\n          <span></span>\r\n        }\r\n      </div>\r\n    }\r\n    @default {\r\n      <div [class]=\"loaderClass()\"></div>\r\n    }\r\n  }\r\n\r\n  @if (ncTips()) {\r\n    <div\r\n      [class]=\"tipsClass()\"\r\n      [style.color]=\"ncTipsColor()\"\r\n      [style.font-weight]=\"ncTipsWeight()\"\r\n    >\r\n      {{ ncTips() }}\r\n    </div>\r\n  }\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { LoadingComponent } from './loading.component';\r\n\r\n@NgModule({\r\n  imports: [LoadingComponent],\r\n  exports: [LoadingComponent],\r\n})\r\nexport class NcLoadingModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}