{"version":3,"file":"alyle-ui-skeleton.mjs","sources":["../../../lib/skeleton/skeleton.ts","../../../lib/skeleton/skeleton.module.ts","../../../lib/skeleton/alyle-ui-skeleton.ts"],"sourcesContent":["import { Directive, Input } from '@angular/core';\nimport {\n  ThemeVariables,\n  keyframesUniqueId,\n  StyleRenderer,\n  Dir } from '@alyle/ui';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\nconst STYLE_PRIORITY = -0.5;\nexport const STYLES = (theme: ThemeVariables) => {\n  const id = keyframesUniqueId.next();\n  const { primary, secondary, tertiary } = theme.background;\n  const dir = theme.direction === Dir.ltr ? -1 : 1;\n  const lum = primary.default.luminance();\n  let one = (lum < .5\n    ? tertiary\n    : secondary);\n  let two = (lum < .5\n    ? secondary\n    : tertiary);\n  one = one.darken(1 * (lum < .5 ? -.5 : 0));\n  two = two.darken(.25 * (lum < .5 ? -1 : 1));\n\n  return {\n    $name: LySkeleton.и,\n    $priority: STYLE_PRIORITY,\n    $global: (_className: string) => `@keyframes ${id}{0%{background-position:${-dir * 200}% 50%;}100%{background-position:${dir * 200}% 50%;}}`,\n    root: (_className: string) => `${_className}{content:'';background:${\n        `linear-gradient(270deg, ${\n          one\n        }, ${\n          two\n        }, ${\n          two\n        }, ${\n          one\n        })`};background-size:400% 400%;animation:${id} 8s ease-in-out infinite;color:transparent;cursor:progress;user-select:none;}`\n  };\n};\n\n@Directive({\n  selector: '[lySkeleton]',\n  providers: [\n    StyleRenderer\n  ],\n  exportAs: 'lySkeleton',\n  standalone: false\n})\nexport class LySkeleton {\n  /** @docs-private */\n  static readonly и = 'LySkeleton';\n  /** @docs-private */\n  readonly classes = this.sRenderer.renderSheet(STYLES);\n\n  @Input('lySkeleton')\n  get skeleton() {\n    return this._skeleton;\n  }\n  set skeleton(val: BooleanInput) {\n    const newVal = coerceBooleanProperty(val);\n    this._skeleton = newVal;\n    this.sRenderer.toggleClass(this.classes.root, newVal);\n  }\n  private _skeleton: boolean;\n\n  constructor(\n    readonly sRenderer: StyleRenderer\n  ) { }\n}\n","import { NgModule } from '@angular/core';\nimport { LySkeleton } from './skeleton';\n\n@NgModule({\n  declarations: [LySkeleton],\n  exports: [LySkeleton]\n})\nexport class LySkeletonModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}