summaryrefslogtreecommitdiffstats
path: root/usecaseui-portal/src/app/core/Directives/disable-control.directive.ts
blob: 85495401aacea9e748adf8cec53133c7d24bcb50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import { Directive, Input } from '@angular/core';
import { NgControl } from '@angular/forms';

@Directive({
  selector: '[disableControl]'
})
export class DisableControlDirective {

  @Input()
  set disableControl(condition: boolean) {
    const action = condition ? 'enable' : 'disable';
    this.ngControl.control[action]();
  }

  constructor(private ngControl: NgControl) {
  }
}