{"version":3,"file":"kovalenko-material-color-picker.mjs","sources":["../../../projects/color-picker/src/lib/color-picker.component.ts","../../../projects/color-picker/src/lib/color-picker.module.ts","../../../projects/color-picker/src/public-api.ts","../../../projects/color-picker/src/kovalenko-material-color-picker.ts"],"sourcesContent":["import {Component, forwardRef, Input, OnDestroy, OnInit} from '@angular/core';\nimport {MatFormFieldControl} from '@angular/material/form-field';\nimport {BaseInputComponent} from '@kovalenko/base-components';\nimport {FormControl} from '@angular/forms';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Subscription} from 'rxjs';\n\n@Component({\n  selector: 'ngc-color-picker',\n  template: `\n    <div>\n      <div><input [disabled]=\"disabled\" type=\"color\" matInput [formControl]=\"control\" #matinput [class.op0]=\"!control.value\" (input)=\"onInput()\"></div>\n      <button *ngIf=\"control.value\" type=\"button\" mat-icon-button (click)=\"$event.stopPropagation(); $event.preventDefault(); control.setValue(null)\">\n        <mat-icon>cancel</mat-icon>\n      </button>\n    </div>\n  `,\n  styleUrls: ['./color-picker.component.scss'],\n  providers: [\n    {\n      provide: MatFormFieldControl,\n      useExisting: forwardRef(() => ColorPickerComponent),\n      multi: true,\n    },\n  ]\n})\nexport class ColorPickerComponent extends BaseInputComponent<string> implements OnInit, OnDestroy {\n  control = new FormControl();\n\n  @Input()\n  set disabled(value: boolean) {\n    this._disabled = coerceBooleanProperty(value);\n    if (this._disabled) {\n      this.control.disable();\n    } else {\n      this.control.enable();\n    }\n    this.stateChanges.next();\n  }\n\n  get disabled(): boolean {\n    return this._disabled;\n  }\n\n  set ngModel(v: string) {\n    this._ngModel = v;\n    this.control.setValue(v);\n  }\n\n  get ngModel(): string {\n    return this._ngModel;\n  }\n\n  private subs: Subscription;\n\n  constructor() {\n    super();\n\n    this.subs = this.control.valueChanges.subscribe(next => {\n      this._ngModel = next;\n      this.ngModelChange.emit(this._ngModel);\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.subs.unsubscribe();\n  }\n\n  onContainerClick(event: MouseEvent) {\n    super.onContainerClick(event);\n    this.input.nativeElement.click();\n  }\n\n  onInput() {\n    this.onTouched();\n  }\n\n}\n","import { NgModule } from '@angular/core';\nimport { ColorPickerComponent } from './color-picker.component';\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {MatInputModule} from '@angular/material/input';\nimport {MatButtonModule} from '@angular/material/button';\nimport {MatIconModule} from '@angular/material/icon';\nimport {CommonModule} from '@angular/common';\n\n@NgModule({\n  declarations: [\n    ColorPickerComponent\n  ],\n  imports: [\n    ReactiveFormsModule,\n    FormsModule,\n    MatInputModule,\n    MatButtonModule,\n    MatIconModule,\n    CommonModule,\n  ],\n  exports: [\n    ColorPickerComponent\n  ]\n})\nexport class ColorPickerModule { }\n","/*\n * Public API Surface of color-picker\n */\n\nexport * from './lib/color-picker.component';\nexport * from './lib/color-picker.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}