rx-form-mapper
Version:
Proper decorator-based transformation / serialization / deserialization of plain javascript classes to angular reactive forms
17 lines • 1.74 kB
JavaScript
import { Injectable, InjectFlags, Injector } from '@angular/core';
export class CustomMapperResolver {
constructor(injector) {
this.injector = injector;
}
resolve(type) {
var _a;
return (_a = this.injector.get(type, null, InjectFlags.Optional)) !== null && _a !== void 0 ? _a : new type();
}
}
CustomMapperResolver.decorators = [
{ type: Injectable }
];
CustomMapperResolver.ctorParameters = () => [
{ type: Injector }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLW1hcHBlci1yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3J4LWZvcm0tbWFwcGVyL3NyYy9saWIvc2VydmljZXMvY3VzdG9tLW1hcHBlci1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFJeEUsTUFBTSxPQUFPLG9CQUFvQjtJQUNoQyxZQUFvQyxRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQUcsQ0FBQztJQUVuRCxPQUFPLENBQUMsSUFBK0I7O1FBQzdDLGFBQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLG1DQUFJLElBQUksSUFBSSxFQUFFLENBQUM7SUFDMUUsQ0FBQzs7O1lBTkQsVUFBVTs7O1lBSHVCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RGbGFncywgSW5qZWN0b3IsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEN1c3RvbUNvbnRyb2xNYXBwZXIgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEN1c3RvbU1hcHBlclJlc29sdmVyIHtcblx0cHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxuXG5cdHB1YmxpYyByZXNvbHZlKHR5cGU6IFR5cGU8Q3VzdG9tQ29udHJvbE1hcHBlcj4pOiBDdXN0b21Db250cm9sTWFwcGVyIHtcblx0XHRyZXR1cm4gdGhpcy5pbmplY3Rvci5nZXQodHlwZSwgbnVsbCwgSW5qZWN0RmxhZ3MuT3B0aW9uYWwpID8/IG5ldyB0eXBlKCk7XG5cdH1cbn1cbiJdfQ==