angular-dynamic-forms-lite
Version:
Efficient dynamic and customizable Angular 7+ forms.
40 lines • 2.79 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { DynamicFormType, DEFAULT_SUB_TYPE } from "../form-field/form-field-type";
/**
* Describes a form field using its type and sub type.
*/
export class SubType {
/**
* @param {?=} type
* @param {?=} subType
*/
constructor(type = DynamicFormType.SINGLE, subType = DEFAULT_SUB_TYPE) {
this.type = type;
this.subType = subType;
}
/**
* @param {?} type
* @param {?=} subType
* @return {?}
*/
static of(type, subType) {
return new SubType(type, subType);
}
/**
* @param {?} fieldType
* @return {?}
*/
static toSubType(fieldType) {
return fieldType instanceof SubType ? fieldType : SubType.of(fieldType);
}
}
if (false) {
/** @type {?} */
SubType.prototype.type;
/** @type {?} */
SubType.prototype.subType;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLXR5cGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWR5bmFtaWMtZm9ybXMtbGl0ZS8iLCJzb3VyY2VzIjpbImxpYi9mb3JtLXNldHRpbmdzL3N1Yi10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7QUFNbEYsTUFBTSxPQUFPLE9BQU87Ozs7O0lBQ2xCLFlBQW1CLE9BQXdCLGVBQWUsQ0FBQyxNQUFNLEVBQVMsVUFBa0IsZ0JBQWdCO1FBQXpGLFNBQUksR0FBSixJQUFJLENBQTBDO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBMkI7SUFBRyxDQUFDOzs7Ozs7SUFFekcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFxQixFQUFFLE9BQWdCO1FBQ3RELE9BQU8sSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Ozs7O0lBRU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUErQjtRQUNyRCxPQUFPLFNBQVMsWUFBWSxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxRSxDQUFDO0NBQ0Y7OztJQVRhLHVCQUFxRDs7SUFBRSwwQkFBeUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljRm9ybVR5cGUsIERFRkFVTFRfU1VCX1RZUEUgfSBmcm9tIFwiLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkLXR5cGVcIjtcbmltcG9ydCB7IEZvcm1GaWVsZFNldHRpbmdUeXBlIH0gZnJvbSBcIi4vZm9ybS1maWVsZC1zZXR0aW5nXCI7XG5cbi8qKlxuICogRGVzY3JpYmVzIGEgZm9ybSBmaWVsZCB1c2luZyBpdHMgdHlwZSBhbmQgc3ViIHR5cGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdWJUeXBlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHR5cGU6IER5bmFtaWNGb3JtVHlwZSA9IER5bmFtaWNGb3JtVHlwZS5TSU5HTEUsIHB1YmxpYyBzdWJUeXBlOiBzdHJpbmcgPSBERUZBVUxUX1NVQl9UWVBFKSB7fVxuXG4gIHB1YmxpYyBzdGF0aWMgb2YodHlwZTogRHluYW1pY0Zvcm1UeXBlLCBzdWJUeXBlPzogc3RyaW5nKTogU3ViVHlwZSB7XG4gICAgcmV0dXJuIG5ldyBTdWJUeXBlKHR5cGUsIHN1YlR5cGUpO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyB0b1N1YlR5cGUoZmllbGRUeXBlOiBGb3JtRmllbGRTZXR0aW5nVHlwZSk6IFN1YlR5cGUge1xuICAgIHJldHVybiBmaWVsZFR5cGUgaW5zdGFuY2VvZiBTdWJUeXBlID8gZmllbGRUeXBlIDogU3ViVHlwZS5vZihmaWVsZFR5cGUpO1xuICB9XG59XG4iXX0=