ng-devui
Version:
DevUI components based on Angular
42 lines • 5.56 kB
JavaScript
import { Directive, Input, Self } from '@angular/core';
import { NgControl } from '@angular/forms';
import { DValidateSyncService } from '../services/d-validate-sync.service';
import * as i0 from "@angular/core";
import * as i1 from "@angular/forms";
import * as i2 from "../services/d-validate-sync.service";
export class DValidateSyncDirective {
constructor(_cd, syncService) {
this._cd = _cd;
this.syncService = syncService;
this._added = false;
}
ngOnChanges() {
if (this.key && this._cd.control && !this._added) {
this.syncService.addControl(this.key, this._cd.control);
this._added = true;
}
}
ngOnDestroy() {
if (this.key && this._cd.control) {
this.syncService.removeControl(this.key, this._cd.control);
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DValidateSyncDirective, deps: [{ token: i1.NgControl, self: true }, { token: i2.DValidateSyncService }], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DValidateSyncDirective, selector: "[dValidateSyncKey][formControlName],[dValidateSyncKey][ngModel],[dValidateSyncKey][formControl],\n [dValidateSyncKey][formGroupName],[dValidateSyncKey][formArrayName],[dValidateSyncKey][ngModelGroup],\n [dValidateSyncKey][formGroup],[dValidateSyncKey]form:not([ngNoForm]),[dValidateSyncKey][ngForm]\n ", inputs: { key: ["dValidateSyncKey", "key"] }, exportAs: ["dValidateSync"], usesOnChanges: true, ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DValidateSyncDirective, decorators: [{
type: Directive,
args: [{
selector: `[dValidateSyncKey][formControlName],[dValidateSyncKey][ngModel],[dValidateSyncKey][formControl],
[dValidateSyncKey][formGroupName],[dValidateSyncKey][formArrayName],[dValidateSyncKey][ngModelGroup],
[dValidateSyncKey][formGroup],[dValidateSyncKey]form:not([ngNoForm]),[dValidateSyncKey][ngForm]
`,
exportAs: 'dValidateSync'
}]
}], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
type: Self
}] }, { type: i2.DValidateSyncService }], propDecorators: { key: [{
type: Input,
args: ['dValidateSyncKey']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZC12YWxpZGF0ZS1zeW5jLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2RldnVpL2Zvcm0vdmFsaWRhdG9yLWRpcmVjdGl2ZS9kLXZhbGlkYXRlLXN5bmMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF3QixJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7O0FBVTNFLE1BQU0sT0FBTyxzQkFBc0I7SUFNakMsWUFBNEIsR0FBYyxFQUFVLFdBQWlDO1FBQXpELFFBQUcsR0FBSCxHQUFHLENBQVc7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBc0I7UUFKN0UsV0FBTSxHQUFHLEtBQUssQ0FBQztJQUlpRSxDQUFDO0lBRXpGLFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RCxDQUFDO0lBQ0gsQ0FBQzsrR0FuQlUsc0JBQXNCO21HQUF0QixzQkFBc0I7OzRGQUF0QixzQkFBc0I7a0JBUmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7R0FHVDtvQkFDRCxRQUFRLEVBQUUsZUFBZTtpQkFDMUI7OzBCQVFjLElBQUk7NEVBRlUsR0FBRztzQkFBN0IsS0FBSzt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRFZhbGlkYXRlU3luY1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9kLXZhbGlkYXRlLXN5bmMuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFtkVmFsaWRhdGVTeW5jS2V5XVtmb3JtQ29udHJvbE5hbWVdLFtkVmFsaWRhdGVTeW5jS2V5XVtuZ01vZGVsXSxbZFZhbGlkYXRlU3luY0tleV1bZm9ybUNvbnRyb2xdLFxuICAgIFtkVmFsaWRhdGVTeW5jS2V5XVtmb3JtR3JvdXBOYW1lXSxbZFZhbGlkYXRlU3luY0tleV1bZm9ybUFycmF5TmFtZV0sW2RWYWxpZGF0ZVN5bmNLZXldW25nTW9kZWxHcm91cF0sXG4gICAgW2RWYWxpZGF0ZVN5bmNLZXldW2Zvcm1Hcm91cF0sW2RWYWxpZGF0ZVN5bmNLZXldZm9ybTpub3QoW25nTm9Gb3JtXSksW2RWYWxpZGF0ZVN5bmNLZXldW25nRm9ybV1cbiAgYCxcbiAgZXhwb3J0QXM6ICdkVmFsaWRhdGVTeW5jJ1xufSlcblxuZXhwb3J0IGNsYXNzIERWYWxpZGF0ZVN5bmNEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfYWRkZWQgPSBmYWxzZTtcblxuICBASW5wdXQoJ2RWYWxpZGF0ZVN5bmNLZXknKSBrZXk6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihAU2VsZigpIHByaXZhdGUgX2NkOiBOZ0NvbnRyb2wsIHByaXZhdGUgc3luY1NlcnZpY2U6IERWYWxpZGF0ZVN5bmNTZXJ2aWNlKSB7fVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmtleSAmJiB0aGlzLl9jZC5jb250cm9sICYmICF0aGlzLl9hZGRlZCkge1xuICAgICAgdGhpcy5zeW5jU2VydmljZS5hZGRDb250cm9sKHRoaXMua2V5LCB0aGlzLl9jZC5jb250cm9sKTtcbiAgICAgIHRoaXMuX2FkZGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5rZXkgJiYgdGhpcy5fY2QuY29udHJvbCkge1xuICAgICAgdGhpcy5zeW5jU2VydmljZS5yZW1vdmVDb250cm9sKHRoaXMua2V5LCB0aGlzLl9jZC5jb250cm9sKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==