projects/ng-dynamic-forms/core/src/lib/model/dynamic-input-control.model.ts
        
                        DynamicFormValueControlModelConfig
            
                            Properties | 
                    
                            
  | 
                    
| autoComplete | 
                                        autoComplete:         
                                     | 
                                
                                            Type :         string
                                         | 
                                    
| Optional | 
| autoFocus | 
                                        autoFocus:         
                                     | 
                                
                                            Type :         boolean
                                         | 
                                    
| Optional | 
| maxLength | 
                                        maxLength:         
                                     | 
                                
                                            Type :         number
                                         | 
                                    
| Optional | 
| minLength | 
                                        minLength:         
                                     | 
                                
                                            Type :         number
                                         | 
                                    
| Optional | 
| placeholder | 
                                        placeholder:         
                                     | 
                                
                                            Type :         string
                                         | 
                                    
| Optional | 
| prefix | 
                                        prefix:         
                                     | 
                                
                                            Type :         string
                                         | 
                                    
| Optional | 
| readOnly | 
                                        readOnly:         
                                     | 
                                
                                            Type :         boolean
                                         | 
                                    
| Optional | 
| spellCheck | 
                                        spellCheck:         
                                     | 
                                
                                            Type :         boolean
                                         | 
                                    
| Optional | 
| suffix | 
                                        suffix:         
                                     | 
                                
                                            Type :         string
                                         | 
                                    
| Optional | 
import { DynamicFormValueControlModel, DynamicFormValueControlModelConfig } from "./dynamic-form-value-control.model";
import { DynamicFormControlLayout } from "./misc/dynamic-form-control-layout.model";
import { serializable } from "../decorator/serializable.decorator";
import { isBoolean, isNumber } from "../utils/core.utils";
export interface DynamicInputControlModelConfig<T> extends DynamicFormValueControlModelConfig<T> {
    autoComplete?: string;
    autoFocus?: boolean;
    maxLength?: number;
    minLength?: number;
    placeholder?: string;
    prefix?: string;
    readOnly?: boolean;
    spellCheck?: boolean;
    suffix?: string;
}
export abstract class DynamicInputControlModel<T> extends DynamicFormValueControlModel<T> {
    @serializable() autoComplete: string;
    @serializable() autoFocus: boolean;
    @serializable() maxLength: number | null;
    @serializable() minLength: number | null;
    @serializable() placeholder: string;
    @serializable() prefix: string | null;
    @serializable() readOnly: boolean;
    @serializable() spellCheck: boolean;
    @serializable() suffix: string | null;
    protected constructor(config: DynamicInputControlModelConfig<T>, layout?: DynamicFormControlLayout) {
        super(config, layout);
        this.autoComplete = config.autoComplete || "on";
        this.autoFocus = isBoolean(config.autoFocus) ? config.autoFocus : false;
        this.maxLength = isNumber(config.maxLength) ? config.maxLength : null;
        this.minLength = isNumber(config.minLength) ? config.minLength : null;
        this.placeholder = config.placeholder || "";
        this.prefix = config.prefix || null;
        this.readOnly = isBoolean(config.readOnly) ? config.readOnly : false;
        this.spellCheck = isBoolean(config.spellCheck) ? config.spellCheck : false;
        this.suffix = config.suffix || null;
    }
}