{"version":3,"file":"obliczeniowo-elementary-equalizer.mjs","sources":["../../../../projects/components/equalizer/components/equalizer/equalizer.component.ts","../../../../projects/components/equalizer/components/equalizer/equalizer.component.html","../../../../projects/components/equalizer/equalizer.module.ts","../../../../projects/components/equalizer/obliczeniowo-elementary-equalizer.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Input, SimpleChanges, ChangeDetectorRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/**\n * Display table of 20 values\n */\n@Component({\n    selector: 'obl-equalizer',\n    templateUrl: './equalizer.component.html',\n    styleUrls: ['./equalizer.component.scss'],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: [\n        {\n            provide: NG_VALUE_ACCESSOR,\n            multi: true,\n            useExisting: EqualizerComponent\n        },\n    ],\n    standalone: false\n})\nexport class EqualizerComponent implements ControlValueAccessor {\n  /**\n   * 20 numbers table for equalizer of value from range 0-1\n   */\n  @Input()\n  data: number[] = new Array<number>(20).fill(0);\n\n  protected random: string;\n\n  onChange = (value: { left: number; right: number }) => { };\n\n  onTouched = () => { };\n\n  registerOnValidatorChange(fn: () => void): void { this.onChange = fn; };\n\n  writeValue(set?: number[]): void {\n    this.data = set?.slice(0, 20) || new Array<number>(20).fill(0);\n    this.change.detectChanges();\n  }\n\n  registerOnChange(onChange: any): void {\n    this.onChange = onChange;\n  }\n\n  registerOnTouched(onTouched: any): void {\n    this.onTouched = onTouched;\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes.data) {\n      this.writeValue(this.data);\n    }\n  }\n\n  constructor(private readonly change: ChangeDetectorRef) {\n    this.random = Math.ceil(Math.random() * 100000000) + '-' + Math.ceil(Math.random() * 100000000) + '-' + Math.ceil(Math.random() * 100000000);\n  }\n\n  /**\n   * Return index id of clipBar\n   */\n  getId(index: number = 0): string {\n    return 'clipBar' + index + this.random;\n  }\n}\n","<svg width=\"100\" viewBox=\"0 0 52.122915 25.135417\">\n  <defs>\n    @for (item of data; track $index) {\n      <clipPath\n        [attr.id]=\"getId($index)\"\n      >\n        <rect\n          width=\"1.3229166\"\n          [attr.height]=\"22.489584 * item\"\n          [attr.x]=\"1.322917 + $index * 2.5\"\n          [attr.y]=\"282.44788 - 11.906257 + 22.489584 * (1 - item)\"\n        />\n      </clipPath>\n    }\n  </defs>\n  <g\n    transform=\"translate(0,-271.86456)\"\n  >\n    <path\n      style=\"\n        fill: none;\n        stroke: #575656;\n        stroke-width: 0.5;\n        stroke-linecap: round;\n        stroke-linejoin: round;\n      \"\n      d=\"m 0.52916627,272.9229 4e-7,23.28333 H 51.59375 V 272.9229\"\n    />\n    @for (items of data; track $index) {\n      <rect\n        class=\"background-bar\"\n        width=\"1.3229166\"\n        height=\"22.489584\"\n        [attr.x]=\"1.322917 + $index * 2.5\"\n        y=\"272.92291\"\n      />\n    }\n\n    @for (items of data; track $index) {\n      <rect\n        y=\"271.86456\"\n        [attr.x]=\"1.322917 + $index * 2.5\"\n        height=\"22.489584\"\n        width=\"1.3229166\"\n        class=\"bar-value\"\n        [attr.clip-path]=\"'url(#' + getId($index) + ')'\"\n        transform=\"translate(-1.3229163,1.0583333)\"\n      />\n    }\n  </g>\n</svg>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EqualizerComponent } from './components/equalizer/equalizer.component';\n\n@NgModule({\n  declarations: [\n    EqualizerComponent\n  ],\n  imports: [\n    CommonModule\n  ],\n  exports: [\n    EqualizerComponent\n  ]\n})\nexport class EqualizerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}