ngx-bit
Version:
A flexible NG-ZORRO helper library
35 lines • 3.79 kB
JavaScript
import { Directive } from '@angular/core';
import { FormGroupName } from '@angular/forms';
import { BitService } from 'ngx-bit';
export class BitI18nUpdateDirective {
constructor(bit, formGroupName) {
this.bit = bit;
this.formGroupName = formGroupName;
}
ngOnInit() {
this.changes = this.formGroupName.valueChanges.subscribe((value) => {
const emptyI18n = [];
for (const ID in value) {
if (value.hasOwnProperty(ID)) {
if (!value[ID]) {
emptyI18n.push(ID);
}
}
}
Reflect.set(this.bit.i18nTooltip, this.formGroupName.name, emptyI18n);
});
}
ngOnDestroy() {
this.changes.unsubscribe();
}
}
BitI18nUpdateDirective.decorators = [
{ type: Directive, args: [{
selector: '[formGroupName][bitI18nUpdate]'
},] }
];
BitI18nUpdateDirective.ctorParameters = () => [
{ type: BitService },
{ type: FormGroupName }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWkxOG4tdXBkYXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1iaXQvZGlyZWN0aXZlL2JpdC1pMThuLXVwZGF0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFLckMsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUNVLEdBQWUsRUFDZixhQUE0QjtRQUQ1QixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ2Ysa0JBQWEsR0FBYixhQUFhLENBQWU7SUFFdEMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2pFLE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNyQixLQUFLLE1BQU0sRUFBRSxJQUFJLEtBQUssRUFBRTtnQkFDdEIsSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFO3dCQUNkLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7cUJBQ3BCO2lCQUNGO2FBQ0Y7WUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7OztZQTVCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdDQUFnQzthQUMzQzs7O1lBSlEsVUFBVTtZQUZWLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cE5hbWUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBCaXRTZXJ2aWNlIH0gZnJvbSAnbmd4LWJpdCc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tmb3JtR3JvdXBOYW1lXVtiaXRJMThuVXBkYXRlXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEJpdEkxOG5VcGRhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSBjaGFuZ2VzOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBiaXQ6IEJpdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGZvcm1Hcm91cE5hbWU6IEZvcm1Hcm91cE5hbWVcclxuICApIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFuZ2VzID0gdGhpcy5mb3JtR3JvdXBOYW1lLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgIGNvbnN0IGVtcHR5STE4biA9IFtdO1xyXG4gICAgICBmb3IgKGNvbnN0IElEIGluIHZhbHVlKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlLmhhc093blByb3BlcnR5KElEKSkge1xyXG4gICAgICAgICAgaWYgKCF2YWx1ZVtJRF0pIHtcclxuICAgICAgICAgICAgZW1wdHlJMThuLnB1c2goSUQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBSZWZsZWN0LnNldCh0aGlzLmJpdC5pMThuVG9vbHRpcCwgdGhpcy5mb3JtR3JvdXBOYW1lLm5hbWUsIGVtcHR5STE4bik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jaGFuZ2VzLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==