ng2-formobject
Version:
Create forms from objects with Angular2
63 lines (62 loc) • 1.7 kB
TypeScript
/**
* Created by haiko on 18-4-16.
*
* Creates a ControlGroup and Controls for fields from given Object. Traverses object tree until primary type are encountered ( string, number, boolean ).
*/
import { Control, ControlGroup } from '@angular/common';
import 'rxjs/add/operator/debounceTime';
export declare class FormObjectBuilder<T> {
controlGroup: ControlGroup;
private controls;
private formModel;
/**
* Construct a new ControlGroup and Controls for given object.
* Names for controls
*
* @param object
*/
constructor(object: any);
/**
* Retrieve FormObject.
*/
getFormObject<T extends Object>(): any;
getControlGroup(): ControlGroup;
/**
* Return Control for given key
*
* @param name key for Control.
* @returns {Control}
*/
getControl(name: string): Control;
/**
* Mark all controls dirty.
*/
dirtyControls(): void;
/**
* Return all invalid controls with propertyname as key.
*
* @returns {key:Control}
*/
getInvalidControls(): {
[key: string]: Control;
};
/**
* Create controls for properties of object and nested object
*
* NULL and UNDEFINED values throws errors!!
*
* @param object an Object
* @param prefix creating navigating path on object to get property.
* @private
*/
_createControls(object: any, prefix: string): void;
private _addValidators(object, property, validatorComponents);
/**
* Check properties on given object.
*
* @param object
* @param property
* @returns {boolean|boolean}
*/
private _isPrimitive(object, property);
}