ng-dynamic-component
Version:
> Dynamic components with full life-cycle support for inputs and outputs
31 lines • 3.45 kB
JavaScript
import { Directive, Input } from '@angular/core';
import { IoService } from '../io';
import * as i0 from "@angular/core";
import * as i1 from "../io";
/**
* @public
*/
export class DynamicIoDirective {
constructor(ioService) {
this.ioService = ioService;
}
ngDoCheck() {
this.ioService.update(this.ndcDynamicInputs, this.ndcDynamicOutputs);
}
}
/** @nocollapse */ DynamicIoDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DynamicIoDirective, deps: [{ token: i1.IoService }], target: i0.ɵɵFactoryTarget.Directive });
/** @nocollapse */ DynamicIoDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.1.3", type: DynamicIoDirective, isStandalone: true, selector: "[ndcDynamicInputs],[ndcDynamicOutputs]", inputs: { ndcDynamicInputs: "ndcDynamicInputs", ndcDynamicOutputs: "ndcDynamicOutputs" }, providers: [IoService], exportAs: ["ndcDynamicIo"], ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: DynamicIoDirective, decorators: [{
type: Directive,
args: [{
selector: '[ndcDynamicInputs],[ndcDynamicOutputs]',
exportAs: 'ndcDynamicIo',
standalone: true,
providers: [IoService],
}]
}], ctorParameters: function () { return [{ type: i1.IoService }]; }, propDecorators: { ndcDynamicInputs: [{
type: Input
}], ndcDynamicOutputs: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1pby5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1keW5hbWljLWNvbXBvbmVudC9zcmMvbGliL2R5bmFtaWMtaW8vZHluYW1pYy1pby5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVyxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUQsT0FBTyxFQUFjLFNBQVMsRUFBZSxNQUFNLE9BQU8sQ0FBQzs7O0FBRTNEOztHQUVHO0FBT0gsTUFBTSxPQUFPLGtCQUFrQjtJQU03QixZQUFvQixTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO0lBQUcsQ0FBQztJQUU1QyxTQUFTO1FBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7O2tJQVZVLGtCQUFrQjtzSEFBbEIsa0JBQWtCLCtLQUZsQixDQUFDLFNBQVMsQ0FBQzsyRkFFWCxrQkFBa0I7a0JBTjlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxTQUFTLENBQUM7aUJBQ3ZCO2dHQUdDLGdCQUFnQjtzQkFEZixLQUFLO2dCQUdOLGlCQUFpQjtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRG9DaGVjaywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgSW5wdXRzVHlwZSwgSW9TZXJ2aWNlLCBPdXRwdXRzVHlwZSB9IGZyb20gJy4uL2lvJztcblxuLyoqXG4gKiBAcHVibGljXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZGNEeW5hbWljSW5wdXRzXSxbbmRjRHluYW1pY091dHB1dHNdJyxcbiAgZXhwb3J0QXM6ICduZGNEeW5hbWljSW8nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFtJb1NlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljSW9EaXJlY3RpdmUgaW1wbGVtZW50cyBEb0NoZWNrIHtcbiAgQElucHV0KClcbiAgbmRjRHluYW1pY0lucHV0cz86IElucHV0c1R5cGUgfCBudWxsO1xuICBASW5wdXQoKVxuICBuZGNEeW5hbWljT3V0cHV0cz86IE91dHB1dHNUeXBlIHwgbnVsbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGlvU2VydmljZTogSW9TZXJ2aWNlKSB7fVxuXG4gIG5nRG9DaGVjaygpIHtcbiAgICB0aGlzLmlvU2VydmljZS51cGRhdGUodGhpcy5uZGNEeW5hbWljSW5wdXRzLCB0aGlzLm5kY0R5bmFtaWNPdXRwdXRzKTtcbiAgfVxufVxuIl19