angular-dynamic-forms-lite
Version:
Efficient dynamic and customizable Angular 7+ forms.
47 lines • 4 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { InjectionToken } from "@angular/core";
/** @type {?} */
export const FIELD_METADATA = new InjectionToken("metadata");
/** @type {?} */
export const FIELD_FORM_CONTROL = new InjectionToken("form control");
/** @type {?} */
export const FIELD_DYNAMIC_CONTROLLER = new InjectionToken("dynamic controller");
/** @type {?} */
export const FIELD_NAME = new InjectionToken("form field name");
export class FormFieldInjector {
/**
* @param {?} _parentInjector
* @param {?} _additionalTokens
*/
constructor(_parentInjector, _additionalTokens) {
this._parentInjector = _parentInjector;
this._additionalTokens = _additionalTokens;
}
/**
* @param {?} token
* @param {?=} notFoundValue
* @param {?=} flags
* @return {?}
*/
get(token, notFoundValue, flags) {
/** @type {?} */
const value = this._additionalTokens.get(token);
return value !== undefined ? value : this._parentInjector.get(token, notFoundValue, flags);
}
}
if (false) {
/**
* @type {?}
* @private
*/
FormFieldInjector.prototype._parentInjector;
/**
* @type {?}
* @private
*/
FormFieldInjector.prototype._additionalTokens;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC1pbmplY3Rvci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItZHluYW1pYy1mb3Jtcy1saXRlLyIsInNvdXJjZXMiOlsibGliL2Zvcm0tZmllbGQvZm9ybS1maWVsZC1pbmplY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBK0IsTUFBTSxlQUFlLENBQUM7O0FBSTVFLE1BQU0sT0FBTyxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQU0sVUFBVSxDQUFDOztBQUNqRSxNQUFNLE9BQU8sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQWtCLGNBQWMsQ0FBQzs7QUFDckYsTUFBTSxPQUFPLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUFvQixvQkFBb0IsQ0FBQzs7QUFDbkcsTUFBTSxPQUFPLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBUyxpQkFBaUIsQ0FBQztBQUV2RSxNQUFNLE9BQU8saUJBQWlCOzs7OztJQUM1QixZQUFvQixlQUF5QixFQUFVLGlCQUFvQztRQUF2RSxvQkFBZSxHQUFmLGVBQWUsQ0FBVTtRQUFVLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFBRyxDQUFDOzs7Ozs7O0lBSy9GLEdBQUcsQ0FBQyxLQUFVLEVBQUUsYUFBbUIsRUFBRSxLQUFXOztjQUN4QyxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7UUFDL0MsT0FBTyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFNLEtBQUssRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbEcsQ0FBQztDQUNGOzs7Ozs7SUFUYSw0Q0FBaUM7Ozs7O0lBQUUsOENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIEluamVjdG9yLCBUeXBlLCBJbmplY3RGbGFncyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IER5bmFtaWNDb250cm9sbGVyIH0gZnJvbSBcIi4vZHluYW1pYy1jb250cm9sbGVyXCI7XG5cbmV4cG9ydCBjb25zdCBGSUVMRF9NRVRBREFUQSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxhbnk+KFwibWV0YWRhdGFcIik7XG5leHBvcnQgY29uc3QgRklFTERfRk9STV9DT05UUk9MID0gbmV3IEluamVjdGlvblRva2VuPEFic3RyYWN0Q29udHJvbD4oXCJmb3JtIGNvbnRyb2xcIik7XG5leHBvcnQgY29uc3QgRklFTERfRFlOQU1JQ19DT05UUk9MTEVSID0gbmV3IEluamVjdGlvblRva2VuPER5bmFtaWNDb250cm9sbGVyPihcImR5bmFtaWMgY29udHJvbGxlclwiKTtcbmV4cG9ydCBjb25zdCBGSUVMRF9OQU1FID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oXCJmb3JtIGZpZWxkIG5hbWVcIik7XG5cbmV4cG9ydCBjbGFzcyBGb3JtRmllbGRJbmplY3RvciBpbXBsZW1lbnRzIEluamVjdG9yIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfcGFyZW50SW5qZWN0b3I6IEluamVjdG9yLCBwcml2YXRlIF9hZGRpdGlvbmFsVG9rZW5zOiBXZWFrTWFwPGFueSwgYW55Pikge31cblxuICBnZXQ8VD4odG9rZW46IFR5cGU8VD4gfCBJbmplY3Rpb25Ub2tlbjxUPiwgbm90Rm91bmRWYWx1ZT86IFQsIGZsYWdzPzogSW5qZWN0RmxhZ3MpOiBUO1xuICBnZXQodG9rZW46IGFueSwgbm90Rm91bmRWYWx1ZT86IGFueSk7XG5cbiAgZ2V0KHRva2VuOiBhbnksIG5vdEZvdW5kVmFsdWU/OiBhbnksIGZsYWdzPzogYW55KSB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLl9hZGRpdGlvbmFsVG9rZW5zLmdldCh0b2tlbik7XG4gICAgcmV0dXJuIHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IHRoaXMuX3BhcmVudEluamVjdG9yLmdldDxhbnk+KHRva2VuLCBub3RGb3VuZFZhbHVlLCBmbGFncyk7XG4gIH1cbn1cbiJdfQ==