@noaestudio/forms
Version:
Dynamic forms extension for Covalent
85 lines (84 loc) • 7.01 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import { Component, forwardRef } from '@angular/core';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { AbstractControlValueAccessor } from '../abstract-control-value-accesor';
export const /** @type {?} */ INPUT_INPUT_CONTROL_VALUE_ACCESSOR = {
provide: NG_VALUE_ACCESSOR,
useExisting: forwardRef(() => TdDynamicInputComponent),
multi: true,
};
export class TdDynamicInputComponent extends AbstractControlValueAccessor {
constructor() {
super(...arguments);
this.label = '';
this.type = undefined;
this.required = undefined;
this.min = undefined;
this.max = undefined;
this.minLength = undefined;
this.maxLength = undefined;
this.step = undefined;
this.autocomplete = 'off';
}
/**
* @return {?}
*/
ngOnInit() {
if (this.type == 'password') {
this.autocomplete = 'new-password';
}
else {
this.autocomplete = 'off';
}
}
}
TdDynamicInputComponent.decorators = [
{ type: Component, args: [{
providers: [INPUT_INPUT_CONTROL_VALUE_ACCESSOR],
selector: 'td-dynamic-input',
styles: [`.td-dynamic-input-wrapper{-ms-flex-direction:row;flex-direction:row;display:-ms-flexbox;display:flex;box-sizing:border-box}.td-dynamic-input-wrapper .td-dynamic-input-field{-ms-flex:1;flex:1;box-sizing:border-box}`],
template: `<div class="td-dynamic-input-wrapper">
<mat-form-field class="td-dynamic-input-field">
<input #elementInput matInput [(ngModel)]="value" [formControl]="control" [placeholder]="label"
[type]="type" [autocomplete]="autocomplete" [required]="required" [attr.min]="min" [attr.max]="max"
[attr.minLength]="minLength" [attr.maxLength]="maxLength" [attr.step]="step" />
</mat-form-field>
</div>
`,
},] },
];
/** @nocollapse */
TdDynamicInputComponent.ctorParameters = () => [];
function TdDynamicInputComponent_tsickle_Closure_declarations() {
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
TdDynamicInputComponent.decorators;
/**
* @nocollapse
* @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}
*/
TdDynamicInputComponent.ctorParameters;
/** @type {?} */
TdDynamicInputComponent.prototype.control;
/** @type {?} */
TdDynamicInputComponent.prototype.label;
/** @type {?} */
TdDynamicInputComponent.prototype.type;
/** @type {?} */
TdDynamicInputComponent.prototype.required;
/** @type {?} */
TdDynamicInputComponent.prototype.min;
/** @type {?} */
TdDynamicInputComponent.prototype.max;
/** @type {?} */
TdDynamicInputComponent.prototype.minLength;
/** @type {?} */
TdDynamicInputComponent.prototype.maxLength;
/** @type {?} */
TdDynamicInputComponent.prototype.step;
/** @type {?} */
TdDynamicInputComponent.prototype.autocomplete;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY292YWxlbnQvZHluYW1pYy1mb3Jtcy8iLCJzb3VyY2VzIjpbImR5bmFtaWMtZWxlbWVudHMvZHluYW1pYy1pbnB1dC9keW5hbWljLWlucHV0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFxQyxNQUFNLGdCQUFnQixDQUFDO0FBRXRGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRWpGLE1BQU0sQ0FBQyx1QkFBTSxrQ0FBa0MsR0FBUTtJQUN0RCxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7SUFDdEQsS0FBSyxFQUFFLElBQUk7Q0FDWCxDQUFDO0FBZUYsTUFBTSw4QkFBK0IsU0FBUSw0QkFBNEI7OztxQkFJeEQsRUFBRTtvQkFFSCxTQUFTO3dCQUVKLFNBQVM7bUJBRWYsU0FBUzttQkFFVCxTQUFTO3lCQUVILFNBQVM7eUJBRVQsU0FBUztvQkFFZCxTQUFTOzRCQUVBLEtBQUs7Ozs7O0lBRTdCLFFBQVE7UUFDUCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxjQUFjLENBQUM7U0FDbkM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNQLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1NBQzFCO0tBQ0Q7OztZQXpDRCxTQUFTLFNBQUM7Z0JBQ1YsU0FBUyxFQUFFLENBQUUsa0NBQWtDLENBQUU7Z0JBQ2pELFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLE1BQU0sRUFBRSxDQUFDLHVOQUF1TixDQUFDO2dCQUNqTyxRQUFRLEVBQUU7Ozs7Ozs7Q0FPVjthQUNBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuLi9hYnN0cmFjdC1jb250cm9sLXZhbHVlLWFjY2Vzb3InO1xyXG5cclxuZXhwb3J0IGNvbnN0IElOUFVUX0lOUFVUX0NPTlRST0xfVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcclxuXHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuXHR1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUZER5bmFtaWNJbnB1dENvbXBvbmVudCksXHJcblx0bXVsdGk6IHRydWUsXHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRwcm92aWRlcnM6IFsgSU5QVVRfSU5QVVRfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUiBdLFxyXG5cdHNlbGVjdG9yOiAndGQtZHluYW1pYy1pbnB1dCcsXHJcblx0c3R5bGVzOiBbYC50ZC1keW5hbWljLWlucHV0LXdyYXBwZXJ7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3c7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7Ym94LXNpemluZzpib3JkZXItYm94fS50ZC1keW5hbWljLWlucHV0LXdyYXBwZXIgLnRkLWR5bmFtaWMtaW5wdXQtZmllbGR7LW1zLWZsZXg6MTtmbGV4OjE7Ym94LXNpemluZzpib3JkZXItYm94fWBdLFxyXG5cdHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cInRkLWR5bmFtaWMtaW5wdXQtd3JhcHBlclwiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwidGQtZHluYW1pYy1pbnB1dC1maWVsZFwiPlxyXG4gICAgICAgIDxpbnB1dCAjZWxlbWVudElucHV0IG1hdElucHV0IFsobmdNb2RlbCldPVwidmFsdWVcIiBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiIFtwbGFjZWhvbGRlcl09XCJsYWJlbFwiXHJcbiAgICAgICAgW3R5cGVdPVwidHlwZVwiIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgW2F0dHIubWluXT1cIm1pblwiIFthdHRyLm1heF09XCJtYXhcIlxyXG4gICAgICAgIFthdHRyLm1pbkxlbmd0aF09XCJtaW5MZW5ndGhcIiBbYXR0ci5tYXhMZW5ndGhdPVwibWF4TGVuZ3RoXCIgW2F0dHIuc3RlcF09XCJzdGVwXCIgLz5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZGl2PlxyXG5gLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGREeW5hbWljSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdENvbnRyb2xWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XHJcblxyXG5cdGNvbnRyb2w6IEZvcm1Db250cm9sO1xyXG5cclxuXHRsYWJlbDogc3RyaW5nID0gJyc7XHJcblxyXG5cdHR5cGU6IHN0cmluZyA9IHVuZGVmaW5lZDtcclxuXHJcblx0cmVxdWlyZWQ6IGJvb2xlYW4gPSB1bmRlZmluZWQ7XHJcblxyXG5cdG1pbjogbnVtYmVyID0gdW5kZWZpbmVkO1xyXG5cclxuXHRtYXg6IG51bWJlciA9IHVuZGVmaW5lZDtcclxuXHJcblx0bWluTGVuZ3RoOiBudW1iZXIgPSB1bmRlZmluZWQ7XHJcblxyXG5cdG1heExlbmd0aDogbnVtYmVyID0gdW5kZWZpbmVkO1xyXG5cclxuXHRzdGVwOiBudW1iZXIgPSB1bmRlZmluZWQ7XHJcblxyXG5cdGF1dG9jb21wbGV0ZSA6IHN0cmluZyA9ICdvZmYnO1xyXG5cclxuXHRuZ09uSW5pdCgpIHtcclxuXHRcdGlmICh0aGlzLnR5cGUgPT0gJ3Bhc3N3b3JkJykge1xyXG5cdFx0XHR0aGlzLmF1dG9jb21wbGV0ZSA9ICduZXctcGFzc3dvcmQnO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy5hdXRvY29tcGxldGUgPSAnb2ZmJztcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIl19