import {AfterContentChecked, Directive, ElementRef, Input} from '@angular/core';
import {FeatureFlagService} from "../../service/featureFlag.service";
import * as _ from 'lodash';
/************************************************************************
Feature Flag Directive
Example:
"'>
************************************************************************/
@Directive({
selector: '[featureFlag]'
})
export class BasicFeatureFlagDirective implements AfterContentChecked {
@Input() flagName: string;
element: ElementRef;
constructor(el: ElementRef, private _featureToggleService: FeatureFlagService) {
this.element = el;
}
ngAfterContentChecked(): void {
if (!_.isNil(this.element)) {
const isFeatureOn: boolean = this._featureToggleService.isFeatureOn(this.flagName);
if(!isFeatureOn){
this._featureToggleService.hideElement(this.element)
}
}
}
}