ng2-simple-forms
Version:
A simple(ish) module for creating accessible, reactive forms.
1 lines • 191 kB
JSON
{"__symbolic":"module","version":4,"metadata":{"SimpleFormsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":40,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":42,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":43,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":44,"character":4}],"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"ɵp"},{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵba"},{"__symbolic":"reference","name":"ɵbb"},{"__symbolic":"reference","name":"ɵbc"},{"__symbolic":"reference","name":"ɵbd"},{"__symbolic":"reference","name":"ɵbe"},{"__symbolic":"reference","name":"ɵbf"},{"__symbolic":"reference","name":"ɵbg"},{"__symbolic":"reference","name":"ɵbh"},{"__symbolic":"reference","name":"ɵbi"},{"__symbolic":"reference","name":"ɵbj"}],"exports":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵo"},{"__symbolic":"reference","name":"ɵp"},{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵba"},{"__symbolic":"reference","name":"ɵbb"},{"__symbolic":"reference","name":"ɵbi"},{"__symbolic":"reference","name":"ɵbj"}]}]}],"members":{}},"FormElement":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":24,"character":20,"module":"./src/app/modules/simple-forms/simple-forms.types"}]}]}},"ComponentValue":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":97,"character":20,"module":"./src/app/modules/simple-forms/simple-forms.types"}]}]}},"ElementOption":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":108,"character":20,"module":"./src/app/modules/simple-forms/simple-forms.types"}]}]}},"ElementOptionGroup":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":118,"character":20,"module":"./src/app/modules/simple-forms/simple-forms.types"}]}]}},"ObjectGroup":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":129,"character":20,"module":"./src/app/modules/simple-forms/simple-forms.types"}]}]}},"FormDetails":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":143,"character":21,"module":"./src/app/modules/simple-forms/simple-forms.types"}]}]}},"FormElementOptions":{"__symbolic":"interface"},"Elements":{"__symbolic":"class","members":{},"statics":{"Text":"text","Select":"select","Checkbox":"checkbox","Radio":"radio","Password":"password","Datepicker":"date","Range":"range","Textarea":"textarea","ObjectSelector":"object","FormArray":"formArray"}},"Properties":{"__symbolic":"class","members":{},"statics":{"InputId":"inputId","Required":"required","MinLength":"minLength","MaxLength":"maxLength","Regex":"regex","HelpText":"helpText","ErrorText":"errorText","Options":"options","OptionGroups":"optionGroups"}},"FormElementConfig":{"__symbolic":"interface"},"Config":{"__symbolic":"class","members":{},"statics":{"RequiredMarker":"requiredMarker","ReadOnly":"readOnly","ObjectDisplayProperty":"objectDisplayProperty","ObjectGroupProperty":"objectGroupProperty","ShouldGroupObjects":"shouldGroupObjects"}},"FormElementAccessibilityConfig":{"__symbolic":"interface"},"Accessibility":{"__symbolic":"class","members":{},"statics":{"AriaLabel":"ariaLabel","AriaDescribedBy":"ariaDescribedBy","AriaLabelledBy":"ariaLabelledBy","AriaReadOnly":"ariaReadOnly"}},"FormElementStyleConfig":{"__symbolic":"interface"},"Styles":{"__symbolic":"class","members":{},"statics":{"ElementWrapper":"wrapperCssClass","GroupLabel":"groupLabelCssClass","ElementLabel":"elementLabelCssClass","ElementInput":"elementInputCssClass","Fieldset":"fieldsetCssClass","Legend":"legendCssClass","OptionLabel":"optionLabelCssClass"}},"LabelConfig":{"__symbolic":"interface"},"SimpleFormBuilder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor"}]},"statics":{"formBuilder":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":5,"character":40}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"app-form","template":"<app-form-wrapper [wrapperCssClass]=\"formOptions.wrapperCssClass\">\n <h1>{{ formTitle }}</h1>\n <h2>{{ formSubtitle }}</h2>\n <app-form-element\n *ngFor=\"let element of form.elements\"\n [formGroup]=\"form.formGroup\"\n [formElement]=\"element.element\">\n </app-form-element>\n <span class=\"controls\">\n <button\n class=\"{{ formOptions.buttonCssClass || 'btn btn-primary' }}\"\n [ngClass]=\"{ 'disabled' : !isValid() }\"\n (click)=\"submit()\">\n {{ formOptions.submitButtonLabel || 'Submit' }}\n </button>\n <button *ngIf=\"!hideClear\" class=\"{{ formOptions.buttonCssClass || 'btn btn-primary' }}\" (click)=\"clear()\">{{ formOptions.clearButtonLabel || 'Clear' }}</button>\n </span>\n</app-form-wrapper>\n","styles":["h2{\n font-size:12px;\n color:#5b6b8c;\n margin-top:-20px; }\n\n.controls{\n margin-top:15px;\n display:block; }\n\n.disabled{\n background-color:lightgray;\n color:black;\n cursor:not-allowed; }\n"]}]}],"members":{"formTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":3}}]}],"formSubtitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3}}]}],"form":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":3}}]}],"hideClear":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3}}]}],"formOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3}}]}],"defaultFormData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3}}]}],"formData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":56,"character":3}}]}],"changeEmitter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":58,"character":3}}]}],"submitEmitter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"setElementConfig":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"isValid":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"app-form-element","template":"<div *ngIf=\"formElement\" [ngSwitch]=\"formElement.type.toLowerCase()\">\n\n <!-- TEXT INPUT FIELD -->\n <app-text-input\n *ngSwitchCase=\"'text'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\"\n ></app-text-input>\n\n <!-- TEXT AREA FIELD -->\n <app-text-area\n *ngSwitchCase=\"'textarea'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\"\n ></app-text-area>\n\n <!-- DATE PICKER FIELD -->\n <app-date-picker\n *ngSwitchCase=\"'date'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-date-picker>\n\n <!-- PASSWORD INPUT FIELD -->\n <app-password-input\n *ngSwitchCase=\"'password'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-password-input>\n\n <!-- SELECT INPUT FIELD -->\n <app-dropdown-question\n *ngSwitchCase=\"'select'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-dropdown-question>\n\n <!-- CHECKBOX GROUP FIELD -->\n <app-checkbox\n *ngSwitchCase=\"'checkbox'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-checkbox>\n\n <!-- RADIO GROUP FIELD -->\n <app-radio-question\n *ngSwitchCase=\"'radio'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-radio-question>\n\n <!-- RANGE FIELD -->\n <app-range\n *ngSwitchCase=\"'range'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-range>\n\n <!-- OBJECT SELECTOR -->\n <app-object-selector\n *ngSwitchCase=\"'object'\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-object-selector>\n\n <!-- FORM ARRAY -->\n <app-form-array-element\n *ngSwitchCase=\"'formarray'\"\n [formValue]=\"formElement.formArrayValue\"\n [formGroup]=\"formGroup\"\n [elementData]=\"formElement\">\n </app-form-array-element>\n\n</div>\n","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":86,"character":3}}]}],"formElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":87,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"app-error-message","template":"<span role=\"alert\" [attr.aria-expanded]=\"true\" class=\"error-text\">{{ message }}</span>\n","styles":[".error-text{\n display:block;\n position:absolute;\n background-color:#e3272e;\n font-size:12px;\n color:white;\n padding:5px 10px;\n text-align:center;\n border-radius:5px;\n z-index:2;\n bottom:-32px;\n left:25%;\n min-width:50%;\n min-height:40px; }\n .error-text::after{\n content:\" \";\n position:absolute;\n bottom:100%;\n left:50%;\n margin-left:-5px;\n border-width:5px;\n border-style:solid;\n border-color:transparent transparent #e3272e transparent; }\n"]}]}],"members":{"message":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"app-form-wrapper","template":"<div class=\"{{wrapperCssClass || 'default-theme'}}\">\n <ng-content></ng-content>\n</div>\n","styles":[".form-wrapper{\n background-color:white;\n padding:30px;\n border-radius:8px;\n margin-bottom:30px; }\n"]}]}],"members":{"wrapperCssClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"app-checkbox","template":"<app-grouped-checkbox-question\n *ngIf=\"elementData.optionGroups\"\n [formGroup]=\"formGroup\"\n [elementData]=\"elementData\">\n</app-grouped-checkbox-question>\n\n<app-ungrouped-checkbox-question\n *ngIf=\"!elementData.optionGroups\"\n [formGroup]=\"formGroup\"\n [elementData]=\"elementData\">\n</app-ungrouped-checkbox-question>\n","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"updateParentFormGroup":[{"__symbolic":"method"}],"isValid":[{"__symbolic":"method"}],"showCheckboxError":[{"__symbolic":"method"}],"isTouched":[{"__symbolic":"method"}],"getDefaultTotalOptions":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"app-element-base","template":"","styles":[""]}]}],"members":{"formGroup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"elementData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"changeEmitter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"initElement":[{"__symbolic":"method"}],"getId":[{"__symbolic":"method"}],"setElementStyles":[{"__symbolic":"method"}],"emit":[{"__symbolic":"method"}],"getElementData":[{"__symbolic":"method"}],"getLabelConfig":[{"__symbolic":"method"}],"getFormGroup":[{"__symbolic":"method"}],"toOwnFormgroup":[{"__symbolic":"method"}],"hasFocus":[{"__symbolic":"method"}],"hasConfig":[{"__symbolic":"method"}],"getRequiredMarker":[{"__symbolic":"method"}],"toggleFocus":[{"__symbolic":"method"}],"activateValidationListener":[{"__symbolic":"method"}],"getElement":[{"__symbolic":"method"}],"toInputId":[{"__symbolic":"method"}],"valid":[{"__symbolic":"method"}],"invalid":[{"__symbolic":"method"}],"touched":[{"__symbolic":"method"}],"hasValue":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"app-date-picker","template":"<div class=\"field form-group {{elementWrapperClass}}\" [formGroup]=\"formGroup\">\n\n <!-- INPUT LABEL -->\n <app-label\n [labelConfig]=\"getLabelConfig()\">\n </app-label>\n\n <!-- INPUT FIELD -->\n <input\n [appDefaultAccessibility]=\"getElementData()\"\n [attr.aria-invalid]=\"!valid()\"\n\n id=\"{{getId()}}\"\n formControlName=\"{{elementData.inputId}}\"\n type=\"date\"\n\n (focus)=\"toggleFocus(true)\"\n (blur)=\"toggleFocus(false)\"\n\n class=\"form-control {{elementInputClass}}\"\n\n [ngClass]='{\n valid: valid(),\n invalid: invalid()\n }'/>\n\n <!-- VALIDATION MESSAGES -->\n <app-validation-messages [elementData]=\"elementData\" [hasError]=\"invalid()\" [hasFocus]=\"hasFocus()\"></app-validation-messages>\n\n</div>\n","styles":["fieldset{\n padding:0;\n margin:0;\n border:0;\n min-width:0; }\n\nlegend{\n display:block;\n width:100%;\n padding:0;\n margin-bottom:20px;\n font-size:21px;\n line-height:inherit;\n color:#333333;\n border:0;\n border-bottom:1px solid #e5e5e5; }\n\nlabel{\n display:inline-block;\n max-width:100%;\n margin-bottom:5px;\n font-weight:bold; }\n\ninput[type=\"search\"]{\n -webkit-box-sizing:border-box;\n box-sizing:border-box; }\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"]{\n margin:4px 0 0;\n margin-top:1px \\9;\n line-height:normal; }\n\ninput[type=\"file\"]{\n display:block; }\n\ninput[type=\"range\"]{\n display:block;\n width:100%; }\n\nselect[multiple],\nselect[size]{\n height:auto; }\n\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus{\n outline:5px auto -webkit-focus-ring-color;\n outline-offset:-2px; }\n\noutput{\n display:block;\n padding-top:7px;\n font-size:14px;\n line-height:1.42857;\n color:#555555; }\n\n.form-control{\n display:block;\n width:100%;\n height:34px;\n padding:6px 12px;\n font-size:14px;\n line-height:1.42857;\n color:#555555;\n background-color:#fff;\n background-image:none;\n border:1px solid #ccc;\n border-radius:4px;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -webkit-transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s; }\n .form-control:focus{\n border-color:#66afe9;\n outline:0;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .form-control::-moz-placeholder{\n color:#999;\n opacity:1; }\n .form-control:-ms-input-placeholder{\n color:#999; }\n .form-control::-webkit-input-placeholder{\n color:#999; }\n .form-control::-ms-expand{\n border:0;\n background-color:transparent; }\n .form-control[disabled], .form-control[readonly],\n fieldset[disabled] .form-control{\n background-color:#eeeeee;\n opacity:1; }\n .form-control[disabled],\n fieldset[disabled] .form-control{\n cursor:not-allowed; }\n\ntextarea.form-control{\n height:auto; }\n\ninput[type=\"search\"]{\n -webkit-appearance:none; }\n\n@media screen and (-webkit-min-device-pixel-ratio: 0){\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control{\n line-height:34px; }\n input[type=\"date\"].input-sm,\n .input-group-sm input[type=\"date\"],\n input[type=\"time\"].input-sm,\n .input-group-sm\n input[type=\"time\"],\n input[type=\"datetime-local\"].input-sm,\n .input-group-sm\n input[type=\"datetime-local\"],\n input[type=\"month\"].input-sm,\n .input-group-sm\n input[type=\"month\"]{\n line-height:30px; }\n input[type=\"date\"].input-lg,\n .input-group-lg input[type=\"date\"],\n input[type=\"time\"].input-lg,\n .input-group-lg\n input[type=\"time\"],\n input[type=\"datetime-local\"].input-lg,\n .input-group-lg\n input[type=\"datetime-local\"],\n input[type=\"month\"].input-lg,\n .input-group-lg\n input[type=\"month\"]{\n line-height:46px; } }\n\n.form-group{\n margin-bottom:15px; }\n\n.radio,\n.checkbox{\n position:relative;\n display:block;\n margin-top:10px;\n margin-bottom:10px; }\n .radio label,\n .checkbox label{\n min-height:20px;\n padding-left:20px;\n margin-bottom:0;\n font-weight:normal;\n cursor:pointer; }\n\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"]{\n position:absolute;\n margin-left:-20px;\n margin-top:4px \\9; }\n\n.radio + .radio,\n.checkbox + .checkbox{\n margin-top:-5px; }\n\n.radio-inline,\n.checkbox-inline{\n position:relative;\n display:inline-block;\n padding-left:20px;\n margin-bottom:0;\n vertical-align:middle;\n font-weight:normal;\n cursor:pointer; }\n\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline{\n margin-top:0;\n margin-left:10px; }\n\ninput[type=\"radio\"][disabled], input[type=\"radio\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled]\ninput[type=\"checkbox\"]{\n cursor:not-allowed; }\n\n.radio-inline.disabled,\nfieldset[disabled] .radio-inline,\n.checkbox-inline.disabled,\nfieldset[disabled]\n.checkbox-inline{\n cursor:not-allowed; }\n\n.radio.disabled label,\nfieldset[disabled] .radio label,\n.checkbox.disabled label,\nfieldset[disabled]\n.checkbox label{\n cursor:not-allowed; }\n\n.form-control-static{\n padding-top:7px;\n padding-bottom:7px;\n margin-bottom:0;\n min-height:34px; }\n .form-control-static.input-lg, .form-control-static.input-sm{\n padding-left:0;\n padding-right:0; }\n\n.input-sm{\n height:30px;\n padding:5px 10px;\n font-size:12px;\n line-height:1.5;\n border-radius:3px; }\n\nselect.input-sm{\n height:30px;\n line-height:30px; }\n\ntextarea.input-sm,\nselect[multiple].input-sm{\n height:auto; }\n\n.form-group-sm .form-control{\n height:30px;\n padding:5px 10px;\n font-size:12px;\n line-height:1.5;\n border-radius:3px; }\n\n.form-group-sm select.form-control{\n height:30px;\n line-height:30px; }\n\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control{\n height:auto; }\n\n.form-group-sm .form-control-static{\n height:30px;\n min-height:32px;\n padding:6px 10px;\n font-size:12px;\n line-height:1.5; }\n\n.input-lg{\n height:46px;\n padding:10px 16px;\n font-size:18px;\n line-height:1.33333;\n border-radius:6px; }\n\nselect.input-lg{\n height:46px;\n line-height:46px; }\n\ntextarea.input-lg,\nselect[multiple].input-lg{\n height:auto; }\n\n.form-group-lg .form-control{\n height:46px;\n padding:10px 16px;\n font-size:18px;\n line-height:1.33333;\n border-radius:6px; }\n\n.form-group-lg select.form-control{\n height:46px;\n line-height:46px; }\n\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control{\n height:auto; }\n\n.form-group-lg .form-control-static{\n height:46px;\n min-height:38px;\n padding:11px 16px;\n font-size:18px;\n line-height:1.33333; }\n\n.has-feedback{\n position:relative; }\n .has-feedback .form-control{\n padding-right:42.5px; }\n\n.form-control-feedback{\n position:absolute;\n top:0;\n right:0;\n z-index:2;\n display:block;\n width:34px;\n height:34px;\n line-height:34px;\n text-align:center;\n pointer-events:none; }\n\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback{\n width:46px;\n height:46px;\n line-height:46px; }\n\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback{\n width:30px;\n height:30px;\n line-height:30px; }\n\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label{\n color:#3c763d; }\n\n.has-success .form-control{\n border-color:#3c763d;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); }\n .has-success .form-control:focus{\n border-color:#2b542c;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }\n\n.has-success .input-group-addon{\n color:#3c763d;\n border-color:#3c763d;\n background-color:#dff0d8; }\n\n.has-success .form-control-feedback{\n color:#3c763d; }\n\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label{\n color:#8a6d3b; }\n\n.has-warning .form-control{\n border-color:#8a6d3b;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); }\n .has-warning .form-control:focus{\n border-color:#66512c;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }\n\n.has-warning .input-group-addon{\n color:#8a6d3b;\n border-color:#8a6d3b;\n background-color:#fcf8e3; }\n\n.has-warning .form-control-feedback{\n color:#8a6d3b; }\n\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label{\n color:#a94442; }\n\n.has-error .form-control{\n border-color:#a94442;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); }\n .has-error .form-control:focus{\n border-color:#843534;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }\n\n.has-error .input-group-addon{\n color:#a94442;\n border-color:#a94442;\n background-color:#f2dede; }\n\n.has-error .form-control-feedback{\n color:#a94442; }\n\n.has-feedback label ~ .form-control-feedback{\n top:25px; }\n\n.has-feedback label.sr-only ~ .form-control-feedback{\n top:0; }\n\n.help-block{\n display:block;\n margin-top:5px;\n margin-bottom:10px;\n color:#737373; }\n\n@media (min-width: 768px){\n .form-inline .form-group{\n display:inline-block;\n margin-bottom:0;\n vertical-align:middle; }\n .form-inline .form-control{\n display:inline-block;\n width:auto;\n vertical-align:middle; }\n .form-inline .form-control-static{\n display:inline-block; }\n .form-inline .input-group{\n display:inline-table;\n vertical-align:middle; }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control{\n width:auto; }\n .form-inline .input-group > .form-control{\n width:100%; }\n .form-inline .control-label{\n margin-bottom:0;\n vertical-align:middle; }\n .form-inline .radio,\n .form-inline .checkbox{\n display:inline-block;\n margin-top:0;\n margin-bottom:0;\n vertical-align:middle; }\n .form-inline .radio label,\n .form-inline .checkbox label{\n padding-left:0; }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"]{\n position:relative;\n margin-left:0; }\n .form-inline .has-feedback .form-control-feedback{\n top:0; } }\n\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline{\n margin-top:0;\n margin-bottom:0;\n padding-top:7px; }\n\n.form-horizontal .radio,\n.form-horizontal .checkbox{\n min-height:27px; }\n\n.form-horizontal .form-group{\n margin-left:-15px;\n margin-right:-15px; }\n .form-horizontal .form-group:before, .form-horizontal .form-group:after{\n content:\" \";\n display:table; }\n .form-horizontal .form-group:after{\n clear:both; }\n\n@media (min-width: 768px){\n .form-horizontal .control-label{\n text-align:right;\n margin-bottom:0;\n padding-top:7px; } }\n\n.form-horizontal .has-feedback .form-control-feedback{\n right:15px; }\n\n@media (min-width: 768px){\n .form-horizontal .form-group-lg .control-label{\n padding-top:11px;\n font-size:18px; } }\n\n@media (min-width: 768px){\n .form-horizontal .form-group-sm .control-label{\n padding-top:6px;\n font-size:12px; } }\n\nfieldset{\n display:block;\n width:100%;\n padding:6px 12px;\n font-size:14px;\n line-height:1.42857143;\n color:#555555;\n background-color:#fff;\n background-image:none;\n border:1px solid #ccc;\n border-radius:4px;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -webkit-transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s; }\n\n.field{\n position:relative; }\n\n.form-group{\n display:block; }\n\n.form-control.valid{\n border-color:#7bb752; }\n .form-control.valid:focus{\n border-color:#28a745;\n -webkit-box-shadow:0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n box-shadow:0 0 0 0.2rem rgba(40, 167, 69, 0.25); }\n\n.form-control.invalid{\n border-color:red; }\n .form-control.invalid:focus{\n border-color:#dc3545;\n -webkit-box-shadow:0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n box-shadow:0 0 0 0.2rem rgba(220, 53, 69, 0.25); }\n",""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"app-dropdown-question","template":"<app-grouped-dropdown-question [formGroup]=\"formGroup\" *ngIf=\"elementData.optionGroups\" [elementData]=\"elementData\"></app-grouped-dropdown-question>\n<app-ungrouped-dropdown-question [formGroup]=\"formGroup\" *ngIf=\"!elementData.optionGroups\" [elementData]=\"elementData\"></app-ungrouped-dropdown-question>\n\n\n","styles":["select{\n width:100%;\n padding:15px;\n margin-bottom:3px; }\n\n.field{\n position:relative; }\n"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"app-password-input","template":"<div class=\"form-group {{elementWrapperClass}}\" [formGroup]=\"formGroup\">\n\n <!-- INPUT LABEL -->\n <app-label\n [labelConfig]=\"getLabelConfig()\">\n </app-label>\n\n <!-- INPUT FIELD -->\n <input\n [appDefaultAccessibility]=\"getElementData()\"\n [attr.aria-invalid]=\"!valid()\"\n\n id=\"{{getId()}}\"\n formControlName=\"{{elementData.inputId}}\"\n\n (focus)=\"toggleFocus(true)\"\n (blur)=\"toggleFocus(false)\"\n type=\"password\"\n class=\"form-control {{elementInputClass}}\"\n\n [ngClass]='{\n valid: valid(),\n invalid: invalid()\n }'/>\n\n <!-- VALIDATION MESSAGES -->\n <app-validation-messages [elementData]=\"elementData\" [hasError]=\"invalid()\" [hasFocus]=\"hasFocus()\"></app-validation-messages>\n\n</div>\n","styles":["fieldset{\n padding:0;\n margin:0;\n border:0;\n min-width:0; }\n\nlegend{\n display:block;\n width:100%;\n padding:0;\n margin-bottom:20px;\n font-size:21px;\n line-height:inherit;\n color:#333333;\n border:0;\n border-bottom:1px solid #e5e5e5; }\n\nlabel{\n display:inline-block;\n max-width:100%;\n margin-bottom:5px;\n font-weight:bold; }\n\ninput[type=\"search\"]{\n -webkit-box-sizing:border-box;\n box-sizing:border-box; }\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"]{\n margin:4px 0 0;\n margin-top:1px \\9;\n line-height:normal; }\n\ninput[type=\"file\"]{\n display:block; }\n\ninput[type=\"range\"]{\n display:block;\n width:100%; }\n\nselect[multiple],\nselect[size]{\n height:auto; }\n\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus{\n outline:5px auto -webkit-focus-ring-color;\n outline-offset:-2px; }\n\noutput{\n display:block;\n padding-top:7px;\n font-size:14px;\n line-height:1.42857;\n color:#555555; }\n\n.form-control{\n display:block;\n width:100%;\n height:34px;\n padding:6px 12px;\n font-size:14px;\n line-height:1.42857;\n color:#555555;\n background-color:#fff;\n background-image:none;\n border:1px solid #ccc;\n border-radius:4px;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -webkit-transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s; }\n .form-control:focus{\n border-color:#66afe9;\n outline:0;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }\n .form-control::-moz-placeholder{\n color:#999;\n opacity:1; }\n .form-control:-ms-input-placeholder{\n color:#999; }\n .form-control::-webkit-input-placeholder{\n color:#999; }\n .form-control::-ms-expand{\n border:0;\n background-color:transparent; }\n .form-control[disabled], .form-control[readonly],\n fieldset[disabled] .form-control{\n background-color:#eeeeee;\n opacity:1; }\n .form-control[disabled],\n fieldset[disabled] .form-control{\n cursor:not-allowed; }\n\ntextarea.form-control{\n height:auto; }\n\ninput[type=\"search\"]{\n -webkit-appearance:none; }\n\n@media screen and (-webkit-min-device-pixel-ratio: 0){\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control{\n line-height:34px; }\n input[type=\"date\"].input-sm,\n .input-group-sm input[type=\"date\"],\n input[type=\"time\"].input-sm,\n .input-group-sm\n input[type=\"time\"],\n input[type=\"datetime-local\"].input-sm,\n .input-group-sm\n input[type=\"datetime-local\"],\n input[type=\"month\"].input-sm,\n .input-group-sm\n input[type=\"month\"]{\n line-height:30px; }\n input[type=\"date\"].input-lg,\n .input-group-lg input[type=\"date\"],\n input[type=\"time\"].input-lg,\n .input-group-lg\n input[type=\"time\"],\n input[type=\"datetime-local\"].input-lg,\n .input-group-lg\n input[type=\"datetime-local\"],\n input[type=\"month\"].input-lg,\n .input-group-lg\n input[type=\"month\"]{\n line-height:46px; } }\n\n.form-group{\n margin-bottom:15px; }\n\n.radio,\n.checkbox{\n position:relative;\n display:block;\n margin-top:10px;\n margin-bottom:10px; }\n .radio label,\n .checkbox label{\n min-height:20px;\n padding-left:20px;\n margin-bottom:0;\n font-weight:normal;\n cursor:pointer; }\n\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"]{\n position:absolute;\n margin-left:-20px;\n margin-top:4px \\9; }\n\n.radio + .radio,\n.checkbox + .checkbox{\n margin-top:-5px; }\n\n.radio-inline,\n.checkbox-inline{\n position:relative;\n display:inline-block;\n padding-left:20px;\n margin-bottom:0;\n vertical-align:middle;\n font-weight:normal;\n cursor:pointer; }\n\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline{\n margin-top:0;\n margin-left:10px; }\n\ninput[type=\"radio\"][disabled], input[type=\"radio\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled]\ninput[type=\"checkbox\"]{\n cursor:not-allowed; }\n\n.radio-inline.disabled,\nfieldset[disabled] .radio-inline,\n.checkbox-inline.disabled,\nfieldset[disabled]\n.checkbox-inline{\n cursor:not-allowed; }\n\n.radio.disabled label,\nfieldset[disabled] .radio label,\n.checkbox.disabled label,\nfieldset[disabled]\n.checkbox label{\n cursor:not-allowed; }\n\n.form-control-static{\n padding-top:7px;\n padding-bottom:7px;\n margin-bottom:0;\n min-height:34px; }\n .form-control-static.input-lg, .form-control-static.input-sm{\n padding-left:0;\n padding-right:0; }\n\n.input-sm{\n height:30px;\n padding:5px 10px;\n font-size:12px;\n line-height:1.5;\n border-radius:3px; }\n\nselect.input-sm{\n height:30px;\n line-height:30px; }\n\ntextarea.input-sm,\nselect[multiple].input-sm{\n height:auto; }\n\n.form-group-sm .form-control{\n height:30px;\n padding:5px 10px;\n font-size:12px;\n line-height:1.5;\n border-radius:3px; }\n\n.form-group-sm select.form-control{\n height:30px;\n line-height:30px; }\n\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control{\n height:auto; }\n\n.form-group-sm .form-control-static{\n height:30px;\n min-height:32px;\n padding:6px 10px;\n font-size:12px;\n line-height:1.5; }\n\n.input-lg{\n height:46px;\n padding:10px 16px;\n font-size:18px;\n line-height:1.33333;\n border-radius:6px; }\n\nselect.input-lg{\n height:46px;\n line-height:46px; }\n\ntextarea.input-lg,\nselect[multiple].input-lg{\n height:auto; }\n\n.form-group-lg .form-control{\n height:46px;\n padding:10px 16px;\n font-size:18px;\n line-height:1.33333;\n border-radius:6px; }\n\n.form-group-lg select.form-control{\n height:46px;\n line-height:46px; }\n\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control{\n height:auto; }\n\n.form-group-lg .form-control-static{\n height:46px;\n min-height:38px;\n padding:11px 16px;\n font-size:18px;\n line-height:1.33333; }\n\n.has-feedback{\n position:relative; }\n .has-feedback .form-control{\n padding-right:42.5px; }\n\n.form-control-feedback{\n position:absolute;\n top:0;\n right:0;\n z-index:2;\n display:block;\n width:34px;\n height:34px;\n line-height:34px;\n text-align:center;\n pointer-events:none; }\n\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback{\n width:46px;\n height:46px;\n line-height:46px; }\n\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback{\n width:30px;\n height:30px;\n line-height:30px; }\n\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label{\n color:#3c763d; }\n\n.has-success .form-control{\n border-color:#3c763d;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); }\n .has-success .form-control:focus{\n border-color:#2b542c;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }\n\n.has-success .input-group-addon{\n color:#3c763d;\n border-color:#3c763d;\n background-color:#dff0d8; }\n\n.has-success .form-control-feedback{\n color:#3c763d; }\n\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label{\n color:#8a6d3b; }\n\n.has-warning .form-control{\n border-color:#8a6d3b;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); }\n .has-warning .form-control:focus{\n border-color:#66512c;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }\n\n.has-warning .input-group-addon{\n color:#8a6d3b;\n border-color:#8a6d3b;\n background-color:#fcf8e3; }\n\n.has-warning .form-control-feedback{\n color:#8a6d3b; }\n\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label{\n color:#a94442; }\n\n.has-error .form-control{\n border-color:#a94442;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075); }\n .has-error .form-control:focus{\n border-color:#843534;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }\n\n.has-error .input-group-addon{\n color:#a94442;\n border-color:#a94442;\n background-color:#f2dede; }\n\n.has-error .form-control-feedback{\n color:#a94442; }\n\n.has-feedback label ~ .form-control-feedback{\n top:25px; }\n\n.has-feedback label.sr-only ~ .form-control-feedback{\n top:0; }\n\n.help-block{\n display:block;\n margin-top:5px;\n margin-bottom:10px;\n color:#737373; }\n\n@media (min-width: 768px){\n .form-inline .form-group{\n display:inline-block;\n margin-bottom:0;\n vertical-align:middle; }\n .form-inline .form-control{\n display:inline-block;\n width:auto;\n vertical-align:middle; }\n .form-inline .form-control-static{\n display:inline-block; }\n .form-inline .input-group{\n display:inline-table;\n vertical-align:middle; }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control{\n width:auto; }\n .form-inline .input-group > .form-control{\n width:100%; }\n .form-inline .control-label{\n margin-bottom:0;\n vertical-align:middle; }\n .form-inline .radio,\n .form-inline .checkbox{\n display:inline-block;\n margin-top:0;\n margin-bottom:0;\n vertical-align:middle; }\n .form-inline .radio label,\n .form-inline .checkbox label{\n padding-left:0; }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"]{\n position:relative;\n margin-left:0; }\n .form-inline .has-feedback .form-control-feedback{\n top:0; } }\n\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline{\n margin-top:0;\n margin-bottom:0;\n padding-top:7px; }\n\n.form-horizontal .radio,\n.form-horizontal .checkbox{\n min-height:27px; }\n\n.form-horizontal .form-group{\n margin-left:-15px;\n margin-right:-15px; }\n .form-horizontal .form-group:before, .form-horizontal .form-group:after{\n content:\" \";\n display:table; }\n .form-horizontal .form-group:after{\n clear:both; }\n\n@media (min-width: 768px){\n .form-horizontal .control-label{\n text-align:right;\n margin-bottom:0;\n padding-top:7px; } }\n\n.form-horizontal .has-feedback .form-control-feedback{\n right:15px; }\n\n@media (min-width: 768px){\n .form-horizontal .form-group-lg .control-label{\n padding-top:11px;\n font-size:18px; } }\n\n@media (min-width: 768px){\n .form-horizontal .form-group-sm .control-label{\n padding-top:6px;\n font-size:12px; } }\n\nfieldset{\n display:block;\n width:100%;\n padding:6px 12px;\n font-size:14px;\n line-height:1.42857143;\n color:#555555;\n background-color:#fff;\n background-image:none;\n border:1px solid #ccc;\n border-radius:4px;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -webkit-transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s; }\n\n.field{\n position:relative; }\n\n.form-group{\n display:block; }\n\n.form-control.valid{\n border-color:#7bb752; }\n .form-control.valid:focus{\n border-color:#28a745;\n -webkit-box-shadow:0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n box-shadow:0 0 0 0.2rem rgba(40, 167, 69, 0.25); }\n\n.form-control.invalid{\n border-color:red; }\n .form-control.invalid:focus{\n border-color:#dc3545;\n -webkit-box-shadow:0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n box-shadow:0 0 0 0.2rem rgba(220, 53, 69, 0.25); }\n",".asterisk{\n color:red; }\n"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"app-text-input","template":"<div class=\"form-group {{elementWrapperClass}}\" [formGroup]=\"formGroup\">\n\n <!-- INPUT LABEL -->\n <app-label\n [labelConfig]=\"getLabelConfig()\">\n </app-label>\n\n <!-- INPUT FIELD -->\n <input\n [appDefaultAccessibility]=\"getElementData()\"\n [attr.aria-invalid]=\"!valid()\"\n\n id=\"{{getId()}}\"\n formControlName=\"{{elementData.inputId}}\"\n\n (focus)=\"toggleFocus(true)\"\n (blur)=\"toggleFocus(false)\"\n\n class=\"form-control {{elementInputClass}}\"\n type=\"text\"\n\n [ngClass]='{\n valid: valid(),\n invalid: invalid()\n }'/>\n\n <!-- VALIDATION MESSAGES -->\n <app-validation-messages [elementData]=\"elementData\" [hasError]=\"invalid()\" [hasFocus]=\"hasFocus()\"></app-validation-messages>\n\n</div>\n","styles":["fieldset{\n padding:0;\n margin:0;\n border:0;\n min-width:0; }\n\nlegend{\n display:block;\n width:100%;\n padding:0;\n margin-bottom:20px;\n font-size:21px;\n line-height:inherit;\n color:#333333;\n border:0;\n border-bottom:1px solid #e5e5e5; }\n\nlabel{\n display:inline-block;\n max-width:100%;\n margin-bottom:5px;\n font-weight:bold; }\n\ninput[type=\"search\"]{\n -webkit-box-sizing:border-box;\n box-sizing:border-box; }\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"]{\n margin:4px 0 0;\n margin-top:1px \\9;\n line-height:normal; }\n\ninput[type=\"file\"]{\n display:block; }\n\ninput[type=\"range\"]{\n display:block;\n width:100%; }\n\nselect[multiple],\nselect[size]{\n height:auto; }\n\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus{\n outline:5px auto -webkit-focus-ring-color;\n outline-offset:-2px; }\n\noutput{\n display:block;\n padding-top:7px;\n font-size:14px;\n line-height:1.42857;\n color:#555555; }\n\n.form-control{\n display:block;\n width:100%;\n height:34px;\n padding:6px 12px;\n font-size:14px;\n line-height:1.42857;\n color:#555555;\n background-color:#fff;\n background-image:none;\n border:1px solid #ccc;\n border-radius:4px;\n -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n -webkit-transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;\n transition:border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;\n tra