@piserve-tech/form-submission 0.0.0-watch

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +24 -0
  2. package/element-type/element-type.module.d.ts +12 -0
  3. package/element-type/form-elements/form-elements.component.d.ts +7 -0
  4. package/element-type/question/question.component.d.ts +14 -0
  5. package/element-type/sub-form/sub-form.component.d.ts +6 -0
  6. package/esm2022/element-type/element-type.module.mjs +36 -0
  7. package/esm2022/element-type/form-elements/form-elements.component.mjs +23 -0
  8. package/esm2022/element-type/question/question.component.mjs +52 -0
  9. package/esm2022/element-type/sub-form/sub-form.component.mjs +17 -0
  10. package/esm2022/form-fields/check-box-fields/check-box-fields.component.mjs +198 -0
  11. package/esm2022/form-fields/date-time-fields/date-time-fields.component.mjs +155 -0
  12. package/esm2022/form-fields/drop-down-fields/drop-down-fields.component.mjs +147 -0
  13. package/esm2022/form-fields/file-picker-fields/file-picker-fields.component.mjs +77 -0
  14. package/esm2022/form-fields/form-fields.module.mjs +154 -0
  15. package/esm2022/form-fields/location-fields/location-fields.component.mjs +79 -0
  16. package/esm2022/form-fields/mail-fields/mail-fields.component.mjs +75 -0
  17. package/esm2022/form-fields/mobile-fields/mobile-fields.component.mjs +81 -0
  18. package/esm2022/form-fields/number-fields/number-fields.component.mjs +59 -0
  19. package/esm2022/form-fields/password-fields/password-fields.component.mjs +172 -0
  20. package/esm2022/form-fields/radio-button-fields/radio-button-fields.component.mjs +129 -0
  21. package/esm2022/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.mjs +89 -0
  22. package/esm2022/form-fields/section-fields/section-fields.component.mjs +16 -0
  23. package/esm2022/form-fields/selection-matrix-fields/selection-matrix-fields.component.mjs +27 -0
  24. package/esm2022/form-fields/signature-fields/signature-fields.component.mjs +29 -0
  25. package/esm2022/form-fields/slider-fields/slider-fields.component.mjs +60 -0
  26. package/esm2022/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.mjs +27 -0
  27. package/esm2022/form-fields/text-area-fields/text-area-fields.component.mjs +61 -0
  28. package/esm2022/form-fields/text-fields/text-fields.component.mjs +86 -0
  29. package/esm2022/form-fields/toggle-switch-fields/toggle-switch-fields.component.mjs +42 -0
  30. package/esm2022/form-fields/url-fields/url-fields.component.mjs +59 -0
  31. package/esm2022/form-submission/form-submission.module.mjs +42 -0
  32. package/esm2022/form-submission/header/header.component.mjs +16 -0
  33. package/esm2022/form-submission/logic/logic.component.mjs +17 -0
  34. package/esm2022/form-submission/navigation-tabs/navigation-tabs.component.mjs +27 -0
  35. package/esm2022/form-submission/next-prev-navigation/next-prev-navigation.component.mjs +42 -0
  36. package/esm2022/form-submission/submit-form/submit-form.component.mjs +157 -0
  37. package/esm2022/lib/form-submission.component.mjs +23 -0
  38. package/esm2022/lib/form-submission.module.mjs +45 -0
  39. package/esm2022/lib/form-submission.service.mjs +14 -0
  40. package/esm2022/logic/logic/logic.component.mjs +17 -0
  41. package/esm2022/logic/logic.module.mjs +20 -0
  42. package/esm2022/models/appearance.model.mjs +2 -0
  43. package/esm2022/models/elementOptionAPI.model.mjs +2 -0
  44. package/esm2022/models/elementOptionAPIData.model.mjs +2 -0
  45. package/esm2022/models/elementOptionDB.model.mjs +2 -0
  46. package/esm2022/models/elementOptionDBCriteria.model.mjs +2 -0
  47. package/esm2022/models/enum/condition.enum.mjs +18 -0
  48. package/esm2022/models/enum/elementType .enum.mjs +24 -0
  49. package/esm2022/models/enum/entityType.enum.mjs +12 -0
  50. package/esm2022/models/formConfiguration.model.mjs +2 -0
  51. package/esm2022/models/formElement.model.mjs +2 -0
  52. package/esm2022/models/formElementType.model.mjs +2 -0
  53. package/esm2022/models/grid.model.mjs +2 -0
  54. package/esm2022/models/logic.model.mjs +2 -0
  55. package/esm2022/models/option.model.mjs +2 -0
  56. package/esm2022/models/page.model.mjs +2 -0
  57. package/esm2022/models/publicForm.model.mjs +2 -0
  58. package/esm2022/models/question.model.mjs +2 -0
  59. package/esm2022/models/row.model.mjs +2 -0
  60. package/esm2022/models/section.model.mjs +2 -0
  61. package/esm2022/models/subForm.model.mjs +2 -0
  62. package/esm2022/models/validation.model.mjs +2 -0
  63. package/esm2022/piserve-tech-form-submission.mjs +5 -0
  64. package/esm2022/public-api.mjs +7 -0
  65. package/esm2022/services/countryService.mjs +65 -0
  66. package/esm2022/services/data.service.mjs +26 -0
  67. package/esm2022/services/form.service.mjs +43 -0
  68. package/esm2022/services/mapper.service.mjs +256 -0
  69. package/fesm2022/piserve-tech-form-submission.mjs +2558 -0
  70. package/fesm2022/piserve-tech-form-submission.mjs.map +1 -0
  71. package/form-fields/check-box-fields/check-box-fields.component.d.ts +42 -0
  72. package/form-fields/date-time-fields/date-time-fields.component.d.ts +41 -0
  73. package/form-fields/drop-down-fields/drop-down-fields.component.d.ts +45 -0
  74. package/form-fields/file-picker-fields/file-picker-fields.component.d.ts +24 -0
  75. package/form-fields/form-fields.module.d.ts +36 -0
  76. package/form-fields/location-fields/location-fields.component.d.ts +24 -0
  77. package/form-fields/mail-fields/mail-fields.component.d.ts +21 -0
  78. package/form-fields/mobile-fields/mobile-fields.component.d.ts +45 -0
  79. package/form-fields/number-fields/number-fields.component.d.ts +22 -0
  80. package/form-fields/password-fields/password-fields.component.d.ts +35 -0
  81. package/form-fields/radio-button-fields/radio-button-fields.component.d.ts +39 -0
  82. package/form-fields/rich-text-editor-fields/rich-text-editor-fields.component.d.ts +24 -0
  83. package/form-fields/section-fields/section-fields.component.d.ts +6 -0
  84. package/form-fields/selection-matrix-fields/selection-matrix-fields.component.d.ts +10 -0
  85. package/form-fields/signature-fields/signature-fields.component.d.ts +12 -0
  86. package/form-fields/slider-fields/slider-fields.component.d.ts +25 -0
  87. package/form-fields/terms-and-condition-fields/terms-and-condition-fields.component.d.ts +10 -0
  88. package/form-fields/text-area-fields/text-area-fields.component.d.ts +22 -0
  89. package/form-fields/text-fields/text-fields.component.d.ts +30 -0
  90. package/form-fields/toggle-switch-fields/toggle-switch-fields.component.d.ts +16 -0
  91. package/form-fields/url-fields/url-fields.component.d.ts +22 -0
  92. package/form-submission/form-submission.module.d.ts +14 -0
  93. package/form-submission/header/header.component.d.ts +6 -0
  94. package/form-submission/logic/logic.component.d.ts +6 -0
  95. package/form-submission/navigation-tabs/navigation-tabs.component.d.ts +10 -0
  96. package/form-submission/next-prev-navigation/next-prev-navigation.component.d.ts +15 -0
  97. package/form-submission/submit-form/submit-form.component.d.ts +43 -0
  98. package/index.d.ts +5 -0
  99. package/lib/form-submission.component.d.ts +10 -0
  100. package/lib/form-submission.module.d.ts +14 -0
  101. package/lib/form-submission.service.d.ts +6 -0
  102. package/logic/logic/logic.component.d.ts +6 -0
  103. package/logic/logic.module.d.ts +8 -0
  104. package/models/appearance.model.d.ts +48 -0
  105. package/models/elementOptionAPI.model.d.ts +11 -0
  106. package/models/elementOptionAPIData.model.d.ts +5 -0
  107. package/models/elementOptionDB.model.d.ts +7 -0
  108. package/models/elementOptionDBCriteria.model.d.ts +7 -0
  109. package/models/enum/condition.enum.d.ts +16 -0
  110. package/models/enum/elementType .enum.d.ts +22 -0
  111. package/models/enum/entityType.enum.d.ts +10 -0
  112. package/models/formConfiguration.model.d.ts +16 -0
  113. package/models/formElement.model.d.ts +12 -0
  114. package/models/formElementType.model.d.ts +5 -0
  115. package/models/grid.model.d.ts +8 -0
  116. package/models/logic.model.d.ts +8 -0
  117. package/models/option.model.d.ts +11 -0
  118. package/models/page.model.d.ts +5 -0
  119. package/models/publicForm.model.d.ts +7 -0
  120. package/models/question.model.d.ts +14 -0
  121. package/models/row.model.d.ts +4 -0
  122. package/models/section.model.d.ts +5 -0
  123. package/models/subForm.model.d.ts +8 -0
  124. package/models/validation.model.d.ts +44 -0
  125. package/package.json +43 -0
  126. package/public-api.d.ts +3 -0
  127. package/services/countryService.d.ts +21 -0
  128. package/services/data.service.d.ts +13 -0
  129. package/services/form.service.d.ts +17 -0
  130. package/services/mapper.service.d.ts +10 -0
@@ -0,0 +1,154 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { CheckBoxFieldsComponent } from './check-box-fields/check-box-fields.component';
4
+ import { DateTimeFieldsComponent } from './date-time-fields/date-time-fields.component';
5
+ import { DropDownFieldsComponent } from './drop-down-fields/drop-down-fields.component';
6
+ import { FilePickerFieldsComponent } from './file-picker-fields/file-picker-fields.component';
7
+ import { LocationFieldsComponent } from './location-fields/location-fields.component';
8
+ import { RadioButtonFieldsComponent } from './radio-button-fields/radio-button-fields.component';
9
+ import { RichTextEditorFieldsComponent } from './rich-text-editor-fields/rich-text-editor-fields.component';
10
+ import { SelectionMatrixFieldsComponent } from './selection-matrix-fields/selection-matrix-fields.component';
11
+ import { SignatureFieldsComponent } from './signature-fields/signature-fields.component';
12
+ import { SliderFieldsComponent } from './slider-fields/slider-fields.component';
13
+ import { TermsAndConditionFieldsComponent } from './terms-and-condition-fields/terms-and-condition-fields.component';
14
+ import { TextAreaFieldsComponent } from './text-area-fields/text-area-fields.component';
15
+ import { TextFieldsComponent } from './text-fields/text-fields.component';
16
+ import { ToggleSwitchFieldsComponent } from './toggle-switch-fields/toggle-switch-fields.component';
17
+ import { UrlFieldsComponent } from './url-fields/url-fields.component';
18
+ import { FormsModule } from '@angular/forms';
19
+ import { MailFieldsComponent } from './mail-fields/mail-fields.component';
20
+ import { MobileFieldsComponent } from './mobile-fields/mobile-fields.component';
21
+ import { NumberFieldsComponent } from './number-fields/number-fields.component';
22
+ import { PasswordFieldsComponent } from './password-fields/password-fields.component';
23
+ import { MatSliderModule } from "@angular/material/slider";
24
+ import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
25
+ import { AngularEditorModule } from '@kolkov/angular-editor';
26
+ import { DocUploadModule } from '@piserve-tech/file-upload';
27
+ import { BrowserModule } from '@angular/platform-browser';
28
+ import { GoogleMapsModule } from '@angular/google-maps';
29
+ import { DropdownModule } from '@piserve-tech/drop-down';
30
+ import { FilePreviewModule } from '@piserve-tech/file-preview';
31
+ import { SectionFieldsComponent } from './section-fields/section-fields.component';
32
+ import * as i0 from "@angular/core";
33
+ import * as i1 from "ngx-bootstrap/datepicker";
34
+ export class FormFieldsModule {
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
36
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: FormFieldsModule, declarations: [CheckBoxFieldsComponent,
37
+ DateTimeFieldsComponent,
38
+ DropDownFieldsComponent,
39
+ FilePickerFieldsComponent,
40
+ LocationFieldsComponent,
41
+ RadioButtonFieldsComponent,
42
+ RichTextEditorFieldsComponent,
43
+ SelectionMatrixFieldsComponent,
44
+ SignatureFieldsComponent,
45
+ SliderFieldsComponent,
46
+ TermsAndConditionFieldsComponent,
47
+ TextAreaFieldsComponent,
48
+ TextFieldsComponent,
49
+ ToggleSwitchFieldsComponent,
50
+ UrlFieldsComponent,
51
+ MailFieldsComponent,
52
+ MobileFieldsComponent,
53
+ NumberFieldsComponent,
54
+ PasswordFieldsComponent,
55
+ SectionFieldsComponent], imports: [CommonModule,
56
+ FormsModule,
57
+ MatSliderModule, i1.BsDatepickerModule, DropdownModule,
58
+ AngularEditorModule,
59
+ DocUploadModule,
60
+ BrowserModule,
61
+ GoogleMapsModule,
62
+ FilePreviewModule], exports: [CheckBoxFieldsComponent,
63
+ DateTimeFieldsComponent,
64
+ DropDownFieldsComponent,
65
+ FilePickerFieldsComponent,
66
+ LocationFieldsComponent,
67
+ MailFieldsComponent,
68
+ MobileFieldsComponent,
69
+ NumberFieldsComponent,
70
+ PasswordFieldsComponent,
71
+ RadioButtonFieldsComponent,
72
+ RichTextEditorFieldsComponent,
73
+ SelectionMatrixFieldsComponent,
74
+ SignatureFieldsComponent,
75
+ SliderFieldsComponent,
76
+ TermsAndConditionFieldsComponent,
77
+ TextAreaFieldsComponent,
78
+ TextFieldsComponent,
79
+ ToggleSwitchFieldsComponent,
80
+ UrlFieldsComponent,
81
+ SectionFieldsComponent] }); }
82
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldsModule, imports: [CommonModule,
83
+ FormsModule,
84
+ MatSliderModule,
85
+ BsDatepickerModule.forRoot(),
86
+ DropdownModule,
87
+ AngularEditorModule,
88
+ DocUploadModule,
89
+ BrowserModule,
90
+ GoogleMapsModule,
91
+ FilePreviewModule] }); }
92
+ }
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldsModule, decorators: [{
94
+ type: NgModule,
95
+ args: [{
96
+ declarations: [
97
+ CheckBoxFieldsComponent,
98
+ DateTimeFieldsComponent,
99
+ DropDownFieldsComponent,
100
+ FilePickerFieldsComponent,
101
+ LocationFieldsComponent,
102
+ RadioButtonFieldsComponent,
103
+ RichTextEditorFieldsComponent,
104
+ SelectionMatrixFieldsComponent,
105
+ SignatureFieldsComponent,
106
+ SliderFieldsComponent,
107
+ TermsAndConditionFieldsComponent,
108
+ TextAreaFieldsComponent,
109
+ TextFieldsComponent,
110
+ ToggleSwitchFieldsComponent,
111
+ UrlFieldsComponent,
112
+ MailFieldsComponent,
113
+ MobileFieldsComponent,
114
+ NumberFieldsComponent,
115
+ PasswordFieldsComponent,
116
+ SectionFieldsComponent
117
+ ],
118
+ imports: [
119
+ CommonModule,
120
+ FormsModule,
121
+ MatSliderModule,
122
+ BsDatepickerModule.forRoot(),
123
+ DropdownModule,
124
+ AngularEditorModule,
125
+ DocUploadModule,
126
+ BrowserModule,
127
+ GoogleMapsModule,
128
+ FilePreviewModule
129
+ ],
130
+ exports: [
131
+ CheckBoxFieldsComponent,
132
+ DateTimeFieldsComponent,
133
+ DropDownFieldsComponent,
134
+ FilePickerFieldsComponent,
135
+ LocationFieldsComponent,
136
+ MailFieldsComponent,
137
+ MobileFieldsComponent,
138
+ NumberFieldsComponent,
139
+ PasswordFieldsComponent,
140
+ RadioButtonFieldsComponent,
141
+ RichTextEditorFieldsComponent,
142
+ SelectionMatrixFieldsComponent,
143
+ SignatureFieldsComponent,
144
+ SliderFieldsComponent,
145
+ TermsAndConditionFieldsComponent,
146
+ TextAreaFieldsComponent,
147
+ TextFieldsComponent,
148
+ ToggleSwitchFieldsComponent,
149
+ UrlFieldsComponent,
150
+ SectionFieldsComponent
151
+ ]
152
+ }]
153
+ }] });
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZm9ybS1zdWJtaXNzaW9uL3NyYy9mb3JtLWZpZWxkcy9mb3JtLWZpZWxkcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDdEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDakcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDNUcsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFDN0csT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDckgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDcEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBa0VuRixNQUFNLE9BQU8sZ0JBQWdCOytHQUFoQixnQkFBZ0I7Z0hBQWhCLGdCQUFnQixpQkF6RHpCLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsdUJBQXVCO1lBQ3ZCLHlCQUF5QjtZQUN6Qix1QkFBdUI7WUFDdkIsMEJBQTBCO1lBQzFCLDZCQUE2QjtZQUM3Qiw4QkFBOEI7WUFDOUIsd0JBQXdCO1lBQ3hCLHFCQUFxQjtZQUNyQixnQ0FBZ0M7WUFDaEMsdUJBQXVCO1lBQ3ZCLG1CQUFtQjtZQUNuQiwyQkFBMkI7WUFDM0Isa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLHVCQUF1QjtZQUN2QixzQkFBc0IsYUFHdEIsWUFBWTtZQUNaLFdBQVc7WUFDWCxlQUFlLHlCQUVmLGNBQWM7WUFDZCxtQkFBbUI7WUFDbkIsZUFBZTtZQUNmLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsaUJBQWlCLGFBR2pCLHVCQUF1QjtZQUN2Qix1QkFBdUI7WUFDdkIsdUJBQXVCO1lBQ3ZCLHlCQUF5QjtZQUN6Qix1QkFBdUI7WUFDdkIsbUJBQW1CO1lBQ25CLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLDBCQUEwQjtZQUMxQiw2QkFBNkI7WUFDN0IsOEJBQThCO1lBQzlCLHdCQUF3QjtZQUN4QixxQkFBcUI7WUFDckIsZ0NBQWdDO1lBQ2hDLHVCQUF1QjtZQUN2QixtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLGtCQUFrQjtZQUNsQixzQkFBc0I7Z0hBSWIsZ0JBQWdCLFlBbkN6QixZQUFZO1lBQ1osV0FBVztZQUNYLGVBQWU7WUFDZixrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7WUFDNUIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixpQkFBaUI7OzRGQTBCUixnQkFBZ0I7a0JBM0Q1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLHVCQUF1Qjt3QkFDdkIsMEJBQTBCO3dCQUMxQiw2QkFBNkI7d0JBQzdCLDhCQUE4Qjt3QkFDOUIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLGdDQUFnQzt3QkFDaEMsdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLDJCQUEyQjt3QkFDM0Isa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxlQUFlO3dCQUNmLGtCQUFrQixDQUFDLE9BQU8sRUFBRTt3QkFDNUIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2Qix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLDBCQUEwQjt3QkFDMUIsNkJBQTZCO3dCQUM3Qiw4QkFBOEI7d0JBQzlCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixnQ0FBZ0M7d0JBQ2hDLHVCQUF1Qjt3QkFDdkIsbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3FCQUV2QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoZWNrQm94RmllbGRzQ29tcG9uZW50IH0gZnJvbSAnLi9jaGVjay1ib3gtZmllbGRzL2NoZWNrLWJveC1maWVsZHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0ZVRpbWVGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtdGltZS1maWVsZHMvZGF0ZS10aW1lLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcm9wRG93bkZpZWxkc0NvbXBvbmVudCB9IGZyb20gJy4vZHJvcC1kb3duLWZpZWxkcy9kcm9wLWRvd24tZmllbGRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpbGVQaWNrZXJGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtcGlja2VyLWZpZWxkcy9maWxlLXBpY2tlci1maWVsZHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9jYXRpb25GaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL2xvY2F0aW9uLWZpZWxkcy9sb2NhdGlvbi1maWVsZHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmFkaW9CdXR0b25GaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL3JhZGlvLWJ1dHRvbi1maWVsZHMvcmFkaW8tYnV0dG9uLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSaWNoVGV4dEVkaXRvckZpZWxkc0NvbXBvbmVudCB9IGZyb20gJy4vcmljaC10ZXh0LWVkaXRvci1maWVsZHMvcmljaC10ZXh0LWVkaXRvci1maWVsZHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VsZWN0aW9uTWF0cml4RmllbGRzQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3Rpb24tbWF0cml4LWZpZWxkcy9zZWxlY3Rpb24tbWF0cml4LWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaWduYXR1cmVGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL3NpZ25hdHVyZS1maWVsZHMvc2lnbmF0dXJlLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTbGlkZXJGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL3NsaWRlci1maWVsZHMvc2xpZGVyLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXJtc0FuZENvbmRpdGlvbkZpZWxkc0NvbXBvbmVudCB9IGZyb20gJy4vdGVybXMtYW5kLWNvbmRpdGlvbi1maWVsZHMvdGVybXMtYW5kLWNvbmRpdGlvbi1maWVsZHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGV4dEFyZWFGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYXJlYS1maWVsZHMvdGV4dC1hcmVhLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0RmllbGRzQ29tcG9uZW50IH0gZnJvbSAnLi90ZXh0LWZpZWxkcy90ZXh0LWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUb2dnbGVTd2l0Y2hGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL3RvZ2dsZS1zd2l0Y2gtZmllbGRzL3RvZ2dsZS1zd2l0Y2gtZmllbGRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVybEZpZWxkc0NvbXBvbmVudCB9IGZyb20gJy4vdXJsLWZpZWxkcy91cmwtZmllbGRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYWlsRmllbGRzQ29tcG9uZW50IH0gZnJvbSAnLi9tYWlsLWZpZWxkcy9tYWlsLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb2JpbGVGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL21vYmlsZS1maWVsZHMvbW9iaWxlLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOdW1iZXJGaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL251bWJlci1maWVsZHMvbnVtYmVyLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQYXNzd29yZEZpZWxkc0NvbXBvbmVudCB9IGZyb20gJy4vcGFzc3dvcmQtZmllbGRzL3Bhc3N3b3JkLWZpZWxkcy5jb21wb25lbnQnO1xyXG5pbXBvcnQge01hdFNsaWRlck1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NsaWRlclwiO1xyXG5pbXBvcnQgeyBCc0RhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBBbmd1bGFyRWRpdG9yTW9kdWxlIH0gZnJvbSAnQGtvbGtvdi9hbmd1bGFyLWVkaXRvcic7XHJcbmltcG9ydCB7IERvY1VwbG9hZE1vZHVsZSB9IGZyb20gJ0BwaXNlcnZlLXRlY2gvZmlsZS11cGxvYWQnO1xyXG5cclxuaW1wb3J0IHsgQnJvd3Nlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBHb29nbGVNYXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZ29vZ2xlLW1hcHMnO1xyXG5pbXBvcnQgeyBEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BwaXNlcnZlLXRlY2gvZHJvcC1kb3duJztcclxuaW1wb3J0IHsgRmlsZVByZXZpZXdNb2R1bGUgfSBmcm9tICdAcGlzZXJ2ZS10ZWNoL2ZpbGUtcHJldmlldyc7XHJcbmltcG9ydCB7IFNlY3Rpb25GaWVsZHNDb21wb25lbnQgfSBmcm9tICcuL3NlY3Rpb24tZmllbGRzL3NlY3Rpb24tZmllbGRzLmNvbXBvbmVudCc7XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBDaGVja0JveEZpZWxkc0NvbXBvbmVudCxcclxuICAgIERhdGVUaW1lRmllbGRzQ29tcG9uZW50LFxyXG4gICAgRHJvcERvd25GaWVsZHNDb21wb25lbnQsXHJcbiAgICBGaWxlUGlja2VyRmllbGRzQ29tcG9uZW50LFxyXG4gICAgTG9jYXRpb25GaWVsZHNDb21wb25lbnQsXHJcbiAgICBSYWRpb0J1dHRvbkZpZWxkc0NvbXBvbmVudCxcclxuICAgIFJpY2hUZXh0RWRpdG9yRmllbGRzQ29tcG9uZW50LFxyXG4gICAgU2VsZWN0aW9uTWF0cml4RmllbGRzQ29tcG9uZW50LFxyXG4gICAgU2lnbmF0dXJlRmllbGRzQ29tcG9uZW50LFxyXG4gICAgU2xpZGVyRmllbGRzQ29tcG9uZW50LFxyXG4gICAgVGVybXNBbmRDb25kaXRpb25GaWVsZHNDb21wb25lbnQsXHJcbiAgICBUZXh0QXJlYUZpZWxkc0NvbXBvbmVudCxcclxuICAgIFRleHRGaWVsZHNDb21wb25lbnQsXHJcbiAgICBUb2dnbGVTd2l0Y2hGaWVsZHNDb21wb25lbnQsXHJcbiAgICBVcmxGaWVsZHNDb21wb25lbnQsXHJcbiAgICBNYWlsRmllbGRzQ29tcG9uZW50LFxyXG4gICAgTW9iaWxlRmllbGRzQ29tcG9uZW50LFxyXG4gICAgTnVtYmVyRmllbGRzQ29tcG9uZW50LFxyXG4gICAgUGFzc3dvcmRGaWVsZHNDb21wb25lbnQsXHJcbiAgICBTZWN0aW9uRmllbGRzQ29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdFNsaWRlck1vZHVsZSxcclxuICAgIEJzRGF0ZXBpY2tlck1vZHVsZS5mb3JSb290KCksXHJcbiAgICBEcm9wZG93bk1vZHVsZSxcclxuICAgIEFuZ3VsYXJFZGl0b3JNb2R1bGUsXHJcbiAgICBEb2NVcGxvYWRNb2R1bGUsXHJcbiAgICBCcm93c2VyTW9kdWxlLFxyXG4gICAgR29vZ2xlTWFwc01vZHVsZSxcclxuICAgIEZpbGVQcmV2aWV3TW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBDaGVja0JveEZpZWxkc0NvbXBvbmVudCxcclxuICAgIERhdGVUaW1lRmllbGRzQ29tcG9uZW50LFxyXG4gICAgRHJvcERvd25GaWVsZHNDb21wb25lbnQsXHJcbiAgICBGaWxlUGlja2VyRmllbGRzQ29tcG9uZW50LFxyXG4gICAgTG9jYXRpb25GaWVsZHNDb21wb25lbnQsXHJcbiAgICBNYWlsRmllbGRzQ29tcG9uZW50LFxyXG4gICAgTW9iaWxlRmllbGRzQ29tcG9uZW50LFxyXG4gICAgTnVtYmVyRmllbGRzQ29tcG9uZW50LFxyXG4gICAgUGFzc3dvcmRGaWVsZHNDb21wb25lbnQsXHJcbiAgICBSYWRpb0J1dHRvbkZpZWxkc0NvbXBvbmVudCxcclxuICAgIFJpY2hUZXh0RWRpdG9yRmllbGRzQ29tcG9uZW50LFxyXG4gICAgU2VsZWN0aW9uTWF0cml4RmllbGRzQ29tcG9uZW50LFxyXG4gICAgU2lnbmF0dXJlRmllbGRzQ29tcG9uZW50LFxyXG4gICAgU2xpZGVyRmllbGRzQ29tcG9uZW50LFxyXG4gICAgVGVybXNBbmRDb25kaXRpb25GaWVsZHNDb21wb25lbnQsXHJcbiAgICBUZXh0QXJlYUZpZWxkc0NvbXBvbmVudCxcclxuICAgIFRleHRGaWVsZHNDb21wb25lbnQsXHJcbiAgICBUb2dnbGVTd2l0Y2hGaWVsZHNDb21wb25lbnQsXHJcbiAgICBVcmxGaWVsZHNDb21wb25lbnQsXHJcbiAgICBTZWN0aW9uRmllbGRzQ29tcG9uZW50XHJcblxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZHNNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,79 @@
1
+ import { Component, Input, ViewChild } from '@angular/core';
2
+ import { GoogleMap } from '@angular/google-maps';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@angular/google-maps";
6
+ export class LocationFieldsComponent {
7
+ constructor() {
8
+ this.question = {};
9
+ this.count = 0;
10
+ this.required = false;
11
+ this.hint = '';
12
+ this.defaultZoomLevel = 0;
13
+ this.setCurrentPosition = false;
14
+ this.allowFullScreen = false;
15
+ this.latitude = 0;
16
+ this.longitude = 0;
17
+ this.regionBoundary = false;
18
+ this.region = '';
19
+ this.mapConfigurations = {};
20
+ }
21
+ ngOnInit() {
22
+ this.count = this.question.count;
23
+ this.required = this.question.required;
24
+ this.hint = this.question.hint;
25
+ this.defaultZoomLevel =
26
+ this.question.formElement.appearance.defaultZoomLevel;
27
+ this.setCurrentPosition =
28
+ this.question.formElement.appearance.setCurrentPosition;
29
+ this.allowFullScreen = this.question.formElement.appearance.allowFullScreen;
30
+ this.latitude = this.question.formElement.appearance.latitude;
31
+ this.longitude = this.question.formElement.appearance.longitude;
32
+ this.regionBoundary = this.question.formElement.validation.regionBoundary;
33
+ this.region = this.question.formElement.validation.region;
34
+ this.mapConfigurations = {
35
+ disableDefaultUI: true,
36
+ fullscreenControl: this.allowFullScreen,
37
+ zoomControl: true,
38
+ };
39
+ }
40
+ ngAfterViewInit() {
41
+ const searchBox = new google.maps.places.SearchBox(this.searchField.nativeElement);
42
+ this.map.controls[google.maps.ControlPosition.TOP_CENTER].push(this.searchField.nativeElement);
43
+ searchBox.addListener('places_changed', () => {
44
+ const places = searchBox.getPlaces();
45
+ if (places?.length === 0) {
46
+ return;
47
+ }
48
+ const bounds = new google.maps.LatLngBounds();
49
+ places?.forEach((place) => {
50
+ if (!place.geometry || !place.geometry.location) {
51
+ return;
52
+ }
53
+ if (place.geometry.viewport) {
54
+ // Only geocodes have viewport.
55
+ bounds.union(place.geometry.viewport);
56
+ }
57
+ else {
58
+ bounds.extend(place.geometry.location);
59
+ }
60
+ });
61
+ this.map.fitBounds(bounds);
62
+ });
63
+ }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocationFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LocationFieldsComponent, selector: "lib-location-fields", inputs: { question: "question" }, viewQueries: [{ propertyName: "searchField", first: true, predicate: ["mapSearchField"], descendants: true }, { propertyName: "map", first: true, predicate: GoogleMap, descendants: true }], ngImport: i0, template: "<div [ngClass]=\"'col-' + count\" class=\"mb-4 px-3\">\r\n <div class=\"input-wrapper\">\r\n <label>{{ question.question }}</label>&nbsp;\r\n <span class=\"text-danger\" *ngIf=\"required\">*</span>\r\n <div class=\"svg-wrapper mb-2 hintIcon\" [attr.data-title]=\"hint\" *ngIf=\"hint\">\r\n <svg class=\"hintSvg\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 26.25V26.25C8.78625 26.25 3.75 21.2138 3.75 15V15C3.75 8.78625 8.78625 3.75 15 3.75V3.75C21.2138 3.75 26.25 8.78625 26.25 15V15C26.25 21.2138 21.2138 26.25 15 26.25Z\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M15 16.5623V16.2498C15 15.2285 15.6312 14.6748 16.2637 14.2498C16.8812 13.8335 17.5 13.291 17.5 12.291C17.5 10.9098 16.3813 9.79102 15 9.79102C13.6187 9.79102 12.5 10.9098 12.5 12.291\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M14.9988 20C14.8263 20 14.6863 20.14 14.6875 20.3125C14.6875 20.485 14.8275 20.625 15 20.625C15.1725 20.625 15.3125 20.485 15.3125 20.3125C15.3125 20.14 15.1725 20 14.9988 20\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n</div>\r\n <div class=\"input-group\">\r\n <input\r\n type=\"text\"\r\n class=\"form-control location-input\"\r\n placeholder=\"Enter location\"\r\n #locationInput\r\n />\r\n </div>\r\n\r\n <input #mapSearchField class=\"my-map-search-field\" type=\"text\"/>\r\n <google-map\r\n width=\"100%\"\r\n [options]=\"mapConfigurations\"\r\n ></google-map>\r\n</div>", styles: [".input-wrapper{display:flex;align-items:flex-start}.svg-wrapper{margin-left:auto;z-index:999}.hintIcon{position:relative;cursor:pointer}.hintIcon:hover:before{content:attr(data-title);position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:4px;background-color:#1d252d;color:#8e9aa0;font-size:14px;white-space:nowrap}.hintIcon:hover:after{content:\"\";position:absolute;top:calc(100% - 26px);left:50%;border:solid transparent;border-width:18px;border-bottom-color:#1d252d;transform:translate(-50%)}.height{height:42px}.invalid{border-color:red}.hintSvg{width:30px;height:30px;fill:none}.validationSvg{width:24px;height:24px;fill:none}.location-input{position:relative}.input-group-append{cursor:pointer;position:absolute;top:50%;right:10px;transform:translateY(-50%)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GoogleMap, selector: "google-map", inputs: ["height", "width", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }] }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocationFieldsComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'lib-location-fields', template: "<div [ngClass]=\"'col-' + count\" class=\"mb-4 px-3\">\r\n <div class=\"input-wrapper\">\r\n <label>{{ question.question }}</label>&nbsp;\r\n <span class=\"text-danger\" *ngIf=\"required\">*</span>\r\n <div class=\"svg-wrapper mb-2 hintIcon\" [attr.data-title]=\"hint\" *ngIf=\"hint\">\r\n <svg class=\"hintSvg\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 26.25V26.25C8.78625 26.25 3.75 21.2138 3.75 15V15C3.75 8.78625 8.78625 3.75 15 3.75V3.75C21.2138 3.75 26.25 8.78625 26.25 15V15C26.25 21.2138 21.2138 26.25 15 26.25Z\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M15 16.5623V16.2498C15 15.2285 15.6312 14.6748 16.2637 14.2498C16.8812 13.8335 17.5 13.291 17.5 12.291C17.5 10.9098 16.3813 9.79102 15 9.79102C13.6187 9.79102 12.5 10.9098 12.5 12.291\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M14.9988 20C14.8263 20 14.6863 20.14 14.6875 20.3125C14.6875 20.485 14.8275 20.625 15 20.625C15.1725 20.625 15.3125 20.485 15.3125 20.3125C15.3125 20.14 15.1725 20 14.9988 20\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n</div>\r\n <div class=\"input-group\">\r\n <input\r\n type=\"text\"\r\n class=\"form-control location-input\"\r\n placeholder=\"Enter location\"\r\n #locationInput\r\n />\r\n </div>\r\n\r\n <input #mapSearchField class=\"my-map-search-field\" type=\"text\"/>\r\n <google-map\r\n width=\"100%\"\r\n [options]=\"mapConfigurations\"\r\n ></google-map>\r\n</div>", styles: [".input-wrapper{display:flex;align-items:flex-start}.svg-wrapper{margin-left:auto;z-index:999}.hintIcon{position:relative;cursor:pointer}.hintIcon:hover:before{content:attr(data-title);position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:4px;background-color:#1d252d;color:#8e9aa0;font-size:14px;white-space:nowrap}.hintIcon:hover:after{content:\"\";position:absolute;top:calc(100% - 26px);left:50%;border:solid transparent;border-width:18px;border-bottom-color:#1d252d;transform:translate(-50%)}.height{height:42px}.invalid{border-color:red}.hintSvg{width:30px;height:30px;fill:none}.validationSvg{width:24px;height:24px;fill:none}.location-input{position:relative}.input-group-append{cursor:pointer;position:absolute;top:50%;right:10px;transform:translateY(-50%)}\n"] }]
70
+ }], propDecorators: { question: [{
71
+ type: Input
72
+ }], searchField: [{
73
+ type: ViewChild,
74
+ args: ['mapSearchField']
75
+ }], map: [{
76
+ type: ViewChild,
77
+ args: [GoogleMap]
78
+ }] } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24tZmllbGRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zvcm0tc3VibWlzc2lvbi9zcmMvZm9ybS1maWVsZHMvbG9jYXRpb24tZmllbGRzL2xvY2F0aW9uLWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL2xvY2F0aW9uLWZpZWxkcy9sb2NhdGlvbi1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQU9qRCxNQUFNLE9BQU8sdUJBQXVCO0lBTHBDO1FBTVcsYUFBUSxHQUFRLEVBQUUsQ0FBQztRQUs1QixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixxQkFBZ0IsR0FBVyxDQUFDLENBQUM7UUFDN0IsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBQ2pDLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBRXBCLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztLQXNEN0I7SUFwREMsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztRQUN2QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0I7WUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDO1FBQ3hELElBQUksQ0FBQyxrQkFBa0I7WUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQztRQUM1RSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7UUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQztRQUMxRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFDMUQsSUFBSSxDQUFDLGlCQUFpQixHQUFHO1lBQ3ZCLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDdkMsV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUMvQixDQUFDO1FBRUYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUM1RCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FDL0IsQ0FBQztRQUVGLFNBQVMsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxFQUFFO1lBQzNDLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNyQyxJQUFJLE1BQU0sRUFBRSxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUN4QixPQUFPO2FBQ1I7WUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDOUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFO29CQUMvQyxPQUFPO2lCQUNSO2dCQUVELElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7b0JBQzNCLCtCQUErQjtvQkFDL0IsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUN2QztxQkFBTTtvQkFDTCxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQ3hDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBdEVVLHVCQUF1QjttR0FBdkIsdUJBQXVCLGtPQUl2QixTQUFTLGdEQ1p0Qiw2ckRBMEJNOzs0RkRsQk8sdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQjs4QkFLdEIsUUFBUTtzQkFBaEIsS0FBSztnQkFFTixXQUFXO3NCQURWLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQUVMLEdBQUc7c0JBQXhCLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBHb29nbGVNYXAgfSBmcm9tICdAYW5ndWxhci9nb29nbGUtbWFwcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1sb2NhdGlvbi1maWVsZHMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2NhdGlvbi1maWVsZHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xvY2F0aW9uLWZpZWxkcy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9jYXRpb25GaWVsZHNDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uOiBhbnkgPSB7fTtcclxuICBAVmlld0NoaWxkKCdtYXBTZWFyY2hGaWVsZCcpXHJcbiAgc2VhcmNoRmllbGQhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoR29vZ2xlTWFwKSBtYXAhOiBHb29nbGVNYXA7XHJcblxyXG4gIGNvdW50OiBudW1iZXIgPSAwO1xyXG4gIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaGludDogc3RyaW5nID0gJyc7XHJcbiAgZGVmYXVsdFpvb21MZXZlbDogbnVtYmVyID0gMDtcclxuICBzZXRDdXJyZW50UG9zaXRpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBhbGxvd0Z1bGxTY3JlZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICBsYXRpdHVkZTogbnVtYmVyID0gMDtcclxuICBsb25naXR1ZGU6IG51bWJlciA9IDA7XHJcbiAgcmVnaW9uQm91bmRhcnk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICByZWdpb246IHN0cmluZyA9ICcnO1xyXG4gIHNob3dHb29nbGVNYXAhOiBib29sZWFuO1xyXG4gIG1hcENvbmZpZ3VyYXRpb25zOiBhbnkgPSB7fTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmNvdW50ID0gdGhpcy5xdWVzdGlvbi5jb3VudDtcclxuICAgIHRoaXMucmVxdWlyZWQgPSB0aGlzLnF1ZXN0aW9uLnJlcXVpcmVkO1xyXG4gICAgdGhpcy5oaW50ID0gdGhpcy5xdWVzdGlvbi5oaW50O1xyXG4gICAgdGhpcy5kZWZhdWx0Wm9vbUxldmVsID1cclxuICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmRlZmF1bHRab29tTGV2ZWw7XHJcbiAgICB0aGlzLnNldEN1cnJlbnRQb3NpdGlvbiA9XHJcbiAgICAgIHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5zZXRDdXJyZW50UG9zaXRpb247XHJcbiAgICB0aGlzLmFsbG93RnVsbFNjcmVlbiA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5hbGxvd0Z1bGxTY3JlZW47XHJcbiAgICB0aGlzLmxhdGl0dWRlID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmxhdGl0dWRlO1xyXG4gICAgdGhpcy5sb25naXR1ZGUgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UubG9uZ2l0dWRlO1xyXG4gICAgdGhpcy5yZWdpb25Cb3VuZGFyeSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5yZWdpb25Cb3VuZGFyeTtcclxuICAgIHRoaXMucmVnaW9uID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLnJlZ2lvbjtcclxuICAgIHRoaXMubWFwQ29uZmlndXJhdGlvbnMgPSB7XHJcbiAgICAgIGRpc2FibGVEZWZhdWx0VUk6IHRydWUsXHJcbiAgICAgIGZ1bGxzY3JlZW5Db250cm9sOiB0aGlzLmFsbG93RnVsbFNjcmVlbixcclxuICAgICAgem9vbUNvbnRyb2w6IHRydWUsXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc2VhcmNoQm94ID0gbmV3IGdvb2dsZS5tYXBzLnBsYWNlcy5TZWFyY2hCb3goXHJcbiAgICAgIHRoaXMuc2VhcmNoRmllbGQubmF0aXZlRWxlbWVudFxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLm1hcC5jb250cm9sc1tnb29nbGUubWFwcy5Db250cm9sUG9zaXRpb24uVE9QX0NFTlRFUl0ucHVzaChcclxuICAgICAgdGhpcy5zZWFyY2hGaWVsZC5uYXRpdmVFbGVtZW50XHJcbiAgICApO1xyXG5cclxuICAgIHNlYXJjaEJveC5hZGRMaXN0ZW5lcigncGxhY2VzX2NoYW5nZWQnLCAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHBsYWNlcyA9IHNlYXJjaEJveC5nZXRQbGFjZXMoKTtcclxuICAgICAgaWYgKHBsYWNlcz8ubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBib3VuZHMgPSBuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nQm91bmRzKCk7XHJcbiAgICAgIHBsYWNlcz8uZm9yRWFjaCgocGxhY2UpID0+IHtcclxuICAgICAgICBpZiAoIXBsYWNlLmdlb21ldHJ5IHx8ICFwbGFjZS5nZW9tZXRyeS5sb2NhdGlvbikge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHBsYWNlLmdlb21ldHJ5LnZpZXdwb3J0KSB7XHJcbiAgICAgICAgICAvLyBPbmx5IGdlb2NvZGVzIGhhdmUgdmlld3BvcnQuXHJcbiAgICAgICAgICBib3VuZHMudW5pb24ocGxhY2UuZ2VvbWV0cnkudmlld3BvcnQpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBib3VuZHMuZXh0ZW5kKHBsYWNlLmdlb21ldHJ5LmxvY2F0aW9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5tYXAuZml0Qm91bmRzKGJvdW5kcyk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBbbmdDbGFzc109XCInY29sLScgKyBjb3VudFwiIGNsYXNzPVwibWItNCBweC0zXCI+XHJcbiAgPGRpdiAgY2xhc3M9XCJpbnB1dC13cmFwcGVyXCI+XHJcbiAgPGxhYmVsPnt7IHF1ZXN0aW9uLnF1ZXN0aW9uIH19PC9sYWJlbD4mbmJzcDtcclxuICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgKm5nSWY9XCJyZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgPGRpdiBjbGFzcz1cInN2Zy13cmFwcGVyICBtYi0yIGhpbnRJY29uXCIgW2F0dHIuZGF0YS10aXRsZV09XCJoaW50XCIgKm5nSWY9XCJoaW50XCI+XHJcbiAgICA8c3ZnIGNsYXNzPVwiaGludFN2Z1wiICB2aWV3Qm94PVwiMCAwIDMwIDMwXCIgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTE1IDI2LjI1VjI2LjI1QzguNzg2MjUgMjYuMjUgMy43NSAyMS4yMTM4IDMuNzUgMTVWMTVDMy43NSA4Ljc4NjI1IDguNzg2MjUgMy43NSAxNSAzLjc1VjMuNzVDMjEuMjEzOCAzLjc1IDI2LjI1IDguNzg2MjUgMjYuMjUgMTVWMTVDMjYuMjUgMjEuMjEzOCAyMS4yMTM4IDI2LjI1IDE1IDI2LjI1WlwiIHN0cm9rZT1cIiMzMjMyMzJcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgIDxwYXRoIGQ9XCJNMTUgMTYuNTYyM1YxNi4yNDk4QzE1IDE1LjIyODUgMTUuNjMxMiAxNC42NzQ4IDE2LjI2MzcgMTQuMjQ5OEMxNi44ODEyIDEzLjgzMzUgMTcuNSAxMy4yOTEgMTcuNSAxMi4yOTFDMTcuNSAxMC45MDk4IDE2LjM4MTMgOS43OTEwMiAxNSA5Ljc5MTAyQzEzLjYxODcgOS43OTEwMiAxMi41IDEwLjkwOTggMTIuNSAxMi4yOTFcIiBzdHJva2U9XCIjMzIzMjMyXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICA8cGF0aCBkPVwiTTE0Ljk5ODggMjBDMTQuODI2MyAyMCAxNC42ODYzIDIwLjE0IDE0LjY4NzUgMjAuMzEyNUMxNC42ODc1IDIwLjQ4NSAxNC44Mjc1IDIwLjYyNSAxNSAyMC42MjVDMTUuMTcyNSAyMC42MjUgMTUuMzEyNSAyMC40ODUgMTUuMzEyNSAyMC4zMTI1QzE1LjMxMjUgMjAuMTQgMTUuMTcyNSAyMCAxNC45OTg4IDIwXCIgc3Ryb2tlPVwiIzMyMzIzMlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgIDwvc3ZnPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cclxuICAgIDxpbnB1dFxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGxvY2F0aW9uLWlucHV0XCJcclxuICAgICAgcGxhY2Vob2xkZXI9XCJFbnRlciBsb2NhdGlvblwiXHJcbiAgICAgICNsb2NhdGlvbklucHV0XHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8aW5wdXQgI21hcFNlYXJjaEZpZWxkIGNsYXNzPVwibXktbWFwLXNlYXJjaC1maWVsZFwiIHR5cGU9XCJ0ZXh0XCIvPlxyXG4gIDxnb29nbGUtbWFwXHJcbiAgICB3aWR0aD1cIjEwMCVcIlxyXG4gICAgW29wdGlvbnNdPVwibWFwQ29uZmlndXJhdGlvbnNcIlxyXG4gID48L2dvb2dsZS1tYXA+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,75 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/forms";
5
+ export class MailFieldsComponent {
6
+ constructor() {
7
+ this.question = {};
8
+ this.count = 0;
9
+ this.required = false;
10
+ this.hint = '';
11
+ this.placeholder = '';
12
+ this.expectedDomains = [];
13
+ this.regularExpression = '';
14
+ this.email = '';
15
+ this.validationFailed = false;
16
+ this.validationMessage = '';
17
+ this.validate = new EventEmitter();
18
+ }
19
+ ngOnInit() {
20
+ this.valueAssigned();
21
+ }
22
+ valueAssigned() {
23
+ this.count = this.question.count;
24
+ this.required = this.question.required;
25
+ this.hint = this.question.hint;
26
+ this.placeholder = this.question.formElement.appearance.placeholder;
27
+ this.expectedDomains =
28
+ this.question?.formElement?.validation?.expectedDomains
29
+ ?.split(',')
30
+ .map((domain) => domain.trim());
31
+ this.regularExpression =
32
+ this.question.formElement.validation.regularExpression;
33
+ }
34
+ validateEmail() {
35
+ this.validationFailed = false;
36
+ this.validationMessage = '';
37
+ const enteredEmail = this.email.trim().toLowerCase();
38
+ if (this.required && !this.email) {
39
+ this.validationFailed = true;
40
+ this.validationMessage = 'This is a required question';
41
+ this.validate.emit(this.validationFailed);
42
+ this.question.validation = false;
43
+ }
44
+ else if (this.expectedDomains) {
45
+ const isValidEmail = this.expectedDomains?.some((domain) => enteredEmail.endsWith(domain));
46
+ this.validationFailed = !isValidEmail;
47
+ this.validationMessage = 'Please enter valid email address';
48
+ if (this.validationFailed) {
49
+ this.validate.emit(this.validationFailed);
50
+ this.question.validation = false;
51
+ }
52
+ else {
53
+ this.question.validation = true;
54
+ }
55
+ }
56
+ else {
57
+ this.question.validation = true;
58
+ }
59
+ }
60
+ validateInput(event) {
61
+ this.question.answer = event.target.value;
62
+ this.validateEmail();
63
+ }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MailFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MailFieldsComponent, selector: "lib-mail-fields", inputs: { question: "question" }, outputs: { validate: "validate" }, ngImport: i0, template: "<div [ngClass]=\"'col-' + count\" class=\"mb-4 px-3\">\r\n <div class=\"input-wrapper\">\r\n <label>{{ question.question }}</label>&nbsp;\r\n <span class=\"text-danger\" *ngIf=\"required\">*</span>\r\n <div class=\"svg-wrapper mb-2 hintIcon\" [attr.data-title]=\"hint\" *ngIf=\"hint\">\r\n <svg class=\"hintSvg\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 26.25V26.25C8.78625 26.25 3.75 21.2138 3.75 15V15C3.75 8.78625 8.78625 3.75 15 3.75V3.75C21.2138 3.75 26.25 8.78625 26.25 15V15C26.25 21.2138 21.2138 26.25 15 26.25Z\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M15 16.5623V16.2498C15 15.2285 15.6312 14.6748 16.2637 14.2498C16.8812 13.8335 17.5 13.291 17.5 12.291C17.5 10.9098 16.3813 9.79102 15 9.79102C13.6187 9.79102 12.5 10.9098 12.5 12.291\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M14.9988 20C14.8263 20 14.6863 20.14 14.6875 20.3125C14.6875 20.485 14.8275 20.625 15 20.625C15.1725 20.625 15.3125 20.485 15.3125 20.3125C15.3125 20.14 15.1725 20 14.9988 20\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n</div>\r\n <input\r\n type=\"email\"\r\n class=\"form-control mb-2 height\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"email\"\r\n (blur)=\"validateEmail()\"\r\n (input)=\"validateInput($event)\"\r\n [class.invalid]=\"validationFailed\"\r\n />\r\n <div *ngIf=\"validationFailed\" class=\"text-danger\">\r\n <svg class=\"validationSvg\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M12.001 16.75C12.139 16.75 12.251 16.638 12.25 16.5C12.25 16.362 12.138 16.25 12 16.25C11.862 16.25 11.75 16.362 11.75 16.5C11.75 16.638 11.862 16.75 12.001 16.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 21C7.029 21 3 16.971 3 12C3 7.029 7.029 3 12 3C16.971 3 21 7.029 21 12C21 16.971 16.971 21 12 21Z\" fill=\"#FF0000\" stroke=\"#FF0000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M12 12.75L12 7.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"white\"/>\r\n </svg>\r\n {{validationMessage}}</div>\r\n</div>\r\n", styles: [".input-wrapper{display:flex;align-items:flex-start}.svg-wrapper{margin-left:auto;z-index:999}.hintIcon{position:relative;cursor:pointer}.hintIcon:hover:before{content:attr(data-title);position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:4px;background-color:#1d252d;color:#8e9aa0;font-size:14px;white-space:nowrap}.hintIcon:hover:after{content:\"\";position:absolute;top:calc(100% - 26px);left:50%;border:solid transparent;border-width:18px;border-bottom-color:#1d252d;transform:translate(-50%)}.height{height:42px}.invalid{border-color:red}.hintSvg{width:30px;height:30px;fill:none}.validationSvg{width:24px;height:24px;fill:none}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MailFieldsComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'lib-mail-fields', template: "<div [ngClass]=\"'col-' + count\" class=\"mb-4 px-3\">\r\n <div class=\"input-wrapper\">\r\n <label>{{ question.question }}</label>&nbsp;\r\n <span class=\"text-danger\" *ngIf=\"required\">*</span>\r\n <div class=\"svg-wrapper mb-2 hintIcon\" [attr.data-title]=\"hint\" *ngIf=\"hint\">\r\n <svg class=\"hintSvg\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 26.25V26.25C8.78625 26.25 3.75 21.2138 3.75 15V15C3.75 8.78625 8.78625 3.75 15 3.75V3.75C21.2138 3.75 26.25 8.78625 26.25 15V15C26.25 21.2138 21.2138 26.25 15 26.25Z\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M15 16.5623V16.2498C15 15.2285 15.6312 14.6748 16.2637 14.2498C16.8812 13.8335 17.5 13.291 17.5 12.291C17.5 10.9098 16.3813 9.79102 15 9.79102C13.6187 9.79102 12.5 10.9098 12.5 12.291\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M14.9988 20C14.8263 20 14.6863 20.14 14.6875 20.3125C14.6875 20.485 14.8275 20.625 15 20.625C15.1725 20.625 15.3125 20.485 15.3125 20.3125C15.3125 20.14 15.1725 20 14.9988 20\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n</div>\r\n <input\r\n type=\"email\"\r\n class=\"form-control mb-2 height\"\r\n [placeholder]=\"placeholder\"\r\n [(ngModel)]=\"email\"\r\n (blur)=\"validateEmail()\"\r\n (input)=\"validateInput($event)\"\r\n [class.invalid]=\"validationFailed\"\r\n />\r\n <div *ngIf=\"validationFailed\" class=\"text-danger\">\r\n <svg class=\"validationSvg\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M12.001 16.75C12.139 16.75 12.251 16.638 12.25 16.5C12.25 16.362 12.138 16.25 12 16.25C11.862 16.25 11.75 16.362 11.75 16.5C11.75 16.638 11.862 16.75 12.001 16.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 21C7.029 21 3 16.971 3 12C3 7.029 7.029 3 12 3C16.971 3 21 7.029 21 12C21 16.971 16.971 21 12 21Z\" fill=\"#FF0000\" stroke=\"#FF0000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M12 12.75L12 7.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"white\"/>\r\n </svg>\r\n {{validationMessage}}</div>\r\n</div>\r\n", styles: [".input-wrapper{display:flex;align-items:flex-start}.svg-wrapper{margin-left:auto;z-index:999}.hintIcon{position:relative;cursor:pointer}.hintIcon:hover:before{content:attr(data-title);position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:4px;background-color:#1d252d;color:#8e9aa0;font-size:14px;white-space:nowrap}.hintIcon:hover:after{content:\"\";position:absolute;top:calc(100% - 26px);left:50%;border:solid transparent;border-width:18px;border-bottom-color:#1d252d;transform:translate(-50%)}.height{height:42px}.invalid{border-color:red}.hintSvg{width:30px;height:30px;fill:none}.validationSvg{width:24px;height:24px;fill:none}\n"] }]
70
+ }], propDecorators: { question: [{
71
+ type: Input
72
+ }], validate: [{
73
+ type: Output
74
+ }] } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbC1maWVsZHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm9ybS1zdWJtaXNzaW9uL3NyYy9mb3JtLWZpZWxkcy9tYWlsLWZpZWxkcy9tYWlsLWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL21haWwtZmllbGRzL21haWwtZmllbGRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPdkUsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQU1XLGFBQVEsR0FBUSxFQUFFLENBQUM7UUFDNUIsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDbEIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsb0JBQWUsR0FBYSxFQUFFLENBQUM7UUFDL0Isc0JBQWlCLEdBQVcsRUFBRSxDQUFDO1FBQy9CLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIscUJBQWdCLEdBQVksS0FBSyxDQUFDO1FBQ2xDLHNCQUFpQixHQUFXLEVBQUUsQ0FBQztRQUVyQixhQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7S0FrRHpFO0lBaERDLFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUM7UUFDcEUsSUFBSSxDQUFDLGVBQWU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGVBQWU7Z0JBQ3JELEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQztpQkFDWCxHQUFHLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxpQkFBaUI7WUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDO0lBQzNELENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUM5QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1FBQzVCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckQsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNoQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1lBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyw2QkFBNkIsQ0FBQztZQUN2RCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7U0FDbEM7YUFBTSxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDL0IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUN6RCxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUM5QixDQUFDO1lBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsWUFBWSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxrQ0FBa0MsQ0FBQztZQUM1RCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQzthQUNsQztpQkFDSTtnQkFDSCxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7YUFDakM7U0FDRjthQUNJO1lBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUNELGFBQWEsQ0FBQyxLQUFVO1FBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQzFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDOytHQTdEVSxtQkFBbUI7bUdBQW5CLG1CQUFtQiw0SENQaEMsNmdGQThCQTs7NEZEdkJhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxpQkFBaUI7OEJBS2xCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBV0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1tYWlsLWZpZWxkcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21haWwtZmllbGRzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tYWlsLWZpZWxkcy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFpbEZpZWxkc0NvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgcXVlc3Rpb246IGFueSA9IHt9O1xyXG4gIGNvdW50OiBudW1iZXIgPSAwO1xyXG4gIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgaGludDogc3RyaW5nID0gJyc7XHJcbiAgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xyXG4gIGV4cGVjdGVkRG9tYWluczogc3RyaW5nW10gPSBbXTtcclxuICByZWd1bGFyRXhwcmVzc2lvbjogc3RyaW5nID0gJyc7XHJcbiAgZW1haWw6IHN0cmluZyA9ICcnO1xyXG4gIHZhbGlkYXRpb25GYWlsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBPdXRwdXQoKSB2YWxpZGF0ZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudmFsdWVBc3NpZ25lZCgpO1xyXG4gIH1cclxuXHJcbiAgdmFsdWVBc3NpZ25lZCgpIHtcclxuICAgIHRoaXMuY291bnQgPSB0aGlzLnF1ZXN0aW9uLmNvdW50O1xyXG4gICAgdGhpcy5yZXF1aXJlZCA9IHRoaXMucXVlc3Rpb24ucmVxdWlyZWQ7XHJcbiAgICB0aGlzLmhpbnQgPSB0aGlzLnF1ZXN0aW9uLmhpbnQ7XHJcbiAgICB0aGlzLnBsYWNlaG9sZGVyID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLnBsYWNlaG9sZGVyO1xyXG4gICAgdGhpcy5leHBlY3RlZERvbWFpbnMgPVxyXG4gICAgICB0aGlzLnF1ZXN0aW9uPy5mb3JtRWxlbWVudD8udmFsaWRhdGlvbj8uZXhwZWN0ZWREb21haW5zXHJcbiAgICAgICAgPy5zcGxpdCgnLCcpXHJcbiAgICAgICAgLm1hcCgoZG9tYWluOiBhbnkpID0+IGRvbWFpbi50cmltKCkpO1xyXG4gICAgdGhpcy5yZWd1bGFyRXhwcmVzc2lvbiA9XHJcbiAgICAgIHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5yZWd1bGFyRXhwcmVzc2lvbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlRW1haWwoKSB7XHJcbiAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSBmYWxzZTtcclxuICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnJztcclxuICAgIGNvbnN0IGVudGVyZWRFbWFpbCA9IHRoaXMuZW1haWwudHJpbSgpLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy5lbWFpbCkge1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJ1RoaXMgaXMgYSByZXF1aXJlZCBxdWVzdGlvbic7XHJcbiAgICAgIHRoaXMudmFsaWRhdGUuZW1pdCh0aGlzLnZhbGlkYXRpb25GYWlsZWQpO1xyXG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSBmYWxzZTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5leHBlY3RlZERvbWFpbnMpIHtcclxuICAgICAgY29uc3QgaXNWYWxpZEVtYWlsID0gdGhpcy5leHBlY3RlZERvbWFpbnM/LnNvbWUoKGRvbWFpbikgPT5cclxuICAgICAgICBlbnRlcmVkRW1haWwuZW5kc1dpdGgoZG9tYWluKVxyXG4gICAgICApO1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25GYWlsZWQgPSAhaXNWYWxpZEVtYWlsO1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlID0gJ1BsZWFzZSBlbnRlciB2YWxpZCBlbWFpbCBhZGRyZXNzJztcclxuICAgICAgaWYgKHRoaXMudmFsaWRhdGlvbkZhaWxlZCkge1xyXG4gICAgICAgIHRoaXMudmFsaWRhdGUuZW1pdCh0aGlzLnZhbGlkYXRpb25GYWlsZWQpO1xyXG4gICAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMucXVlc3Rpb24udmFsaWRhdGlvbiA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnF1ZXN0aW9uLnZhbGlkYXRpb24gPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuICB2YWxpZGF0ZUlucHV0KGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMucXVlc3Rpb24uYW5zd2VyID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgdGhpcy52YWxpZGF0ZUVtYWlsKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgW25nQ2xhc3NdPVwiJ2NvbC0nICsgY291bnRcIiBjbGFzcz1cIm1iLTQgcHgtM1wiPlxyXG4gIDxkaXYgIGNsYXNzPVwiaW5wdXQtd3JhcHBlclwiPlxyXG4gIDxsYWJlbD57eyBxdWVzdGlvbi5xdWVzdGlvbiB9fTwvbGFiZWw+Jm5ic3A7XHJcbiAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRhbmdlclwiICpuZ0lmPVwicmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gIDxkaXYgY2xhc3M9XCJzdmctd3JhcHBlciAgbWItMiBoaW50SWNvblwiIFthdHRyLmRhdGEtdGl0bGVdPVwiaGludFwiICpuZ0lmPVwiaGludFwiPlxyXG4gICAgPHN2ZyBjbGFzcz1cImhpbnRTdmdcIiAgdmlld0JveD1cIjAgMCAzMCAzMFwiICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xNSAyNi4yNVYyNi4yNUM4Ljc4NjI1IDI2LjI1IDMuNzUgMjEuMjEzOCAzLjc1IDE1VjE1QzMuNzUgOC43ODYyNSA4Ljc4NjI1IDMuNzUgMTUgMy43NVYzLjc1QzIxLjIxMzggMy43NSAyNi4yNSA4Ljc4NjI1IDI2LjI1IDE1VjE1QzI2LjI1IDIxLjIxMzggMjEuMjEzOCAyNi4yNSAxNSAyNi4yNVpcIiBzdHJva2U9XCIjMzIzMjMyXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICA8cGF0aCBkPVwiTTE1IDE2LjU2MjNWMTYuMjQ5OEMxNSAxNS4yMjg1IDE1LjYzMTIgMTQuNjc0OCAxNi4yNjM3IDE0LjI0OThDMTYuODgxMiAxMy44MzM1IDE3LjUgMTMuMjkxIDE3LjUgMTIuMjkxQzE3LjUgMTAuOTA5OCAxNi4zODEzIDkuNzkxMDIgMTUgOS43OTEwMkMxMy42MTg3IDkuNzkxMDIgMTIuNSAxMC45MDk4IDEyLjUgMTIuMjkxXCIgc3Ryb2tlPVwiIzMyMzIzMlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgPHBhdGggZD1cIk0xNC45OTg4IDIwQzE0LjgyNjMgMjAgMTQuNjg2MyAyMC4xNCAxNC42ODc1IDIwLjMxMjVDMTQuNjg3NSAyMC40ODUgMTQuODI3NSAyMC42MjUgMTUgMjAuNjI1QzE1LjE3MjUgMjAuNjI1IDE1LjMxMjUgMjAuNDg1IDE1LjMxMjUgMjAuMzEyNUMxNS4zMTI1IDIwLjE0IDE1LjE3MjUgMjAgMTQuOTk4OCAyMFwiIHN0cm9rZT1cIiMzMjMyMzJcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICA8L3N2Zz5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiAgPGlucHV0XHJcbiAgICB0eXBlPVwiZW1haWxcIlxyXG4gICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgbWItMiBoZWlnaHRcIlxyXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgIFsobmdNb2RlbCldPVwiZW1haWxcIlxyXG4gICAgKGJsdXIpPVwidmFsaWRhdGVFbWFpbCgpXCJcclxuICAgIChpbnB1dCk9XCJ2YWxpZGF0ZUlucHV0KCRldmVudClcIlxyXG4gICAgW2NsYXNzLmludmFsaWRdPVwidmFsaWRhdGlvbkZhaWxlZFwiXHJcbiAgLz5cclxuICA8ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkZhaWxlZFwiIGNsYXNzPVwidGV4dC1kYW5nZXJcIj5cclxuICAgIDxzdmcgY2xhc3M9XCJ2YWxpZGF0aW9uU3ZnXCIgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgIDxwYXRoIGQ9XCJNMTIuMDAxIDE2Ljc1QzEyLjEzOSAxNi43NSAxMi4yNTEgMTYuNjM4IDEyLjI1IDE2LjVDMTIuMjUgMTYuMzYyIDEyLjEzOCAxNi4yNSAxMiAxNi4yNUMxMS44NjIgMTYuMjUgMTEuNzUgMTYuMzYyIDExLjc1IDE2LjVDMTEuNzUgMTYuNjM4IDExLjg2MiAxNi43NSAxMi4wMDEgMTYuNzVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEyIDIxQzcuMDI5IDIxIDMgMTYuOTcxIDMgMTJDMyA3LjAyOSA3LjAyOSAzIDEyIDNDMTYuOTcxIDMgMjEgNy4wMjkgMjEgMTJDMjEgMTYuOTcxIDE2Ljk3MSAyMSAxMiAyMVpcIiBmaWxsPVwiI0ZGMDAwMFwiIHN0cm9rZT1cIiNGRjAwMDBcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgIDxwYXRoIGQ9XCJNMTIgMTIuNzVMMTIgNy43NVwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjE2XCIgcj1cIjFcIiBmaWxsPVwid2hpdGVcIi8+XHJcbiAgICAgIDwvc3ZnPlxyXG4gICAgICB7e3ZhbGlkYXRpb25NZXNzYWdlfX08L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -0,0 +1,81 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../services/countryService";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "@angular/forms";
6
+ import * as i4 from "@piserve-tech/drop-down";
7
+ export class MobileFieldsComponent {
8
+ constructor(countryService) {
9
+ this.countryService = countryService;
10
+ this.question = {};
11
+ this.count = 0;
12
+ this.required = false;
13
+ this.hint = '';
14
+ this.placeholder = '';
15
+ this.displayCountryCode = true;
16
+ this.displayFlag = true;
17
+ this.displayCode = true;
18
+ this.showCountryName = true;
19
+ this.beautifyNumbers = true;
20
+ this.countryWiseValidation = true;
21
+ this.restrictCountry = true;
22
+ this.allowedCountry = [];
23
+ this.blockedCountry = [];
24
+ this.countryDetails = [];
25
+ this.selectedCountry = [];
26
+ this.validationFailed = false;
27
+ this.validationMessage = '';
28
+ this.mobileNumber = '';
29
+ this.filteredCountry = [];
30
+ this.validate = new EventEmitter();
31
+ }
32
+ ngOnInit() {
33
+ this.valueAssigned();
34
+ }
35
+ valueAssigned() {
36
+ this.count = this.question.count;
37
+ this.required = this.question.required;
38
+ this.hint = this.question.hint;
39
+ this.placeholder = this.question.formElement.appearance.placeholder;
40
+ this.displayCountryCode =
41
+ this.question.formElement.appearance.displayCountryCode;
42
+ this.displayFlag = this.question.formElement.appearance.displayFlag;
43
+ this.displayCode = this.question.formElement.appearance.displayCode;
44
+ this.showCountryName = this.question.formElement.appearance.showCountryName;
45
+ this.beautifyNumbers = this.question.formElement.appearance.beautifyNumbers;
46
+ this.countryWiseValidation =
47
+ this.question.formElement.validation.countryWiseValidation;
48
+ this.restrictCountry = this.question.formElement.validation.restrictCountry;
49
+ this.allowedCountry = this.question.formElement.validation.allowedCountry;
50
+ this.blockedCountry = this.question.formElement.validation.blockedCountry;
51
+ this.countryService.loadCountryDetails().subscribe((data) => {
52
+ this.filteredCountry = data.result;
53
+ if (this.restrictCountry && (this.allowedCountry || this.blockedCountry)) {
54
+ this.filteredCountry = this.filteredCountry.filter(country => {
55
+ return (this.allowedCountry.includes(country.name) || !this.blockedCountry.includes(country.name));
56
+ });
57
+ }
58
+ this.countryDetails = this.countryService.processCountryDetails(this.filteredCountry, this.displayFlag, this.displayCode, this.showCountryName);
59
+ });
60
+ }
61
+ validateMobile() {
62
+ this.validationFailed = false;
63
+ this.validationMessage = '';
64
+ if (this.required && (!this.mobileNumber || this.selectedCountry.length === 0)) {
65
+ this.validationFailed = true;
66
+ this.validationMessage = 'This is a required question';
67
+ this.validate.emit(this.validationFailed);
68
+ }
69
+ }
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MobileFieldsComponent, deps: [{ token: i1.CountryService }], target: i0.ɵɵFactoryTarget.Component }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MobileFieldsComponent, selector: "lib-mobile-fields", inputs: { question: "question" }, outputs: { validate: "validate" }, ngImport: i0, template: "<div [ngClass]=\"'col-' + count\" class=\"mb-4 px-3\">\r\n <div class=\"input-wrapper\">\r\n <label>{{ question.question }}</label>&nbsp;\r\n <span class=\"text-danger\" *ngIf=\"required\">*</span>\r\n <div class=\"svg-wrapper mb-2 hintIcon\" [attr.data-title]=\"hint\" *ngIf=\"hint\">\r\n <svg class=\"hintSvg\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 26.25V26.25C8.78625 26.25 3.75 21.2138 3.75 15V15C3.75 8.78625 8.78625 3.75 15 3.75V3.75C21.2138 3.75 26.25 8.78625 26.25 15V15C26.25 21.2138 21.2138 26.25 15 26.25Z\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M15 16.5623V16.2498C15 15.2285 15.6312 14.6748 16.2637 14.2498C16.8812 13.8335 17.5 13.291 17.5 12.291C17.5 10.9098 16.3813 9.79102 15 9.79102C13.6187 9.79102 12.5 10.9098 12.5 12.291\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M14.9988 20C14.8263 20 14.6863 20.14 14.6875 20.3125C14.6875 20.485 14.8275 20.625 15 20.625C15.1725 20.625 15.3125 20.485 15.3125 20.3125C15.3125 20.14 15.1725 20 14.9988 20\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n</div>\r\n <div class=\"input-group mb-2\">\r\n <div class=\"col-xs-5 col-5 col-md-3 px-0 pe-2\">\r\n <lib-dropdown\r\n [items]=\"countryDetails\"\r\n [multiple] = \"false\"\r\n [(selectedItems)]=\"selectedCountry\"></lib-dropdown>\r\n </div>\r\n <input\r\n type=\"number\"\r\n class=\"form-control col-xs-7 col-7 col-md-9 height mobileField\" \r\n [placeholder]=\"placeholder\"\r\n aria-label=\"Mobile Number\"\r\n [class.invalid]=\"validationFailed\"\r\n (blur)=\"validateMobile()\"\r\n [(ngModel)]=\"mobileNumber\"\r\n />\r\n </div>\r\n <div *ngIf=\"validationFailed\" class=\"text-danger\">\r\n <svg class=\"validationSvg\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M12.001 16.75C12.139 16.75 12.251 16.638 12.25 16.5C12.25 16.362 12.138 16.25 12 16.25C11.862 16.25 11.75 16.362 11.75 16.5C11.75 16.638 11.862 16.75 12.001 16.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 21C7.029 21 3 16.971 3 12C3 7.029 7.029 3 12 3C16.971 3 21 7.029 21 12C21 16.971 16.971 21 12 21Z\" fill=\"#FF0000\" stroke=\"#FF0000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M12 12.75L12 7.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"white\"/>\r\n </svg>\r\n {{validationMessage}}</div>\r\n</div>\r\n", styles: [".input-wrapper{display:flex;align-items:flex-start}.svg-wrapper{margin-left:auto;z-index:999}.hintIcon{position:relative;cursor:pointer}.hintIcon:hover:before{content:attr(data-title);position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:4px;background-color:#1d252d;color:#8e9aa0;font-size:14px;white-space:nowrap}.hintIcon:hover:after{content:\"\";position:absolute;top:calc(100% - 26px);left:50%;border:solid transparent;border-width:18px;border-bottom-color:#1d252d;transform:translate(-50%)}.height{height:42px}.invalid{border-color:red}.hintSvg{width:30px;height:30px;fill:none}.validationSvg{width:24px;height:24px;fill:none}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mobileField{border-radius:6px!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.DropdownComponent, selector: "lib-dropdown", inputs: ["multiple", "scrollable", "selectedItems", "placeholder", "items", "showCreateNew", "selectedValues", "customButtons", "showBorder"], outputs: ["buttonClick", "selectedItemsChange", "onScroll", "onCreateNew", "onSearch"] }] }); }
72
+ }
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MobileFieldsComponent, decorators: [{
74
+ type: Component,
75
+ args: [{ selector: 'lib-mobile-fields', template: "<div [ngClass]=\"'col-' + count\" class=\"mb-4 px-3\">\r\n <div class=\"input-wrapper\">\r\n <label>{{ question.question }}</label>&nbsp;\r\n <span class=\"text-danger\" *ngIf=\"required\">*</span>\r\n <div class=\"svg-wrapper mb-2 hintIcon\" [attr.data-title]=\"hint\" *ngIf=\"hint\">\r\n <svg class=\"hintSvg\" viewBox=\"0 0 30 30\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M15 26.25V26.25C8.78625 26.25 3.75 21.2138 3.75 15V15C3.75 8.78625 8.78625 3.75 15 3.75V3.75C21.2138 3.75 26.25 8.78625 26.25 15V15C26.25 21.2138 21.2138 26.25 15 26.25Z\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M15 16.5623V16.2498C15 15.2285 15.6312 14.6748 16.2637 14.2498C16.8812 13.8335 17.5 13.291 17.5 12.291C17.5 10.9098 16.3813 9.79102 15 9.79102C13.6187 9.79102 12.5 10.9098 12.5 12.291\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M14.9988 20C14.8263 20 14.6863 20.14 14.6875 20.3125C14.6875 20.485 14.8275 20.625 15 20.625C15.1725 20.625 15.3125 20.485 15.3125 20.3125C15.3125 20.14 15.1725 20 14.9988 20\" stroke=\"#323232\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n</div>\r\n <div class=\"input-group mb-2\">\r\n <div class=\"col-xs-5 col-5 col-md-3 px-0 pe-2\">\r\n <lib-dropdown\r\n [items]=\"countryDetails\"\r\n [multiple] = \"false\"\r\n [(selectedItems)]=\"selectedCountry\"></lib-dropdown>\r\n </div>\r\n <input\r\n type=\"number\"\r\n class=\"form-control col-xs-7 col-7 col-md-9 height mobileField\" \r\n [placeholder]=\"placeholder\"\r\n aria-label=\"Mobile Number\"\r\n [class.invalid]=\"validationFailed\"\r\n (blur)=\"validateMobile()\"\r\n [(ngModel)]=\"mobileNumber\"\r\n />\r\n </div>\r\n <div *ngIf=\"validationFailed\" class=\"text-danger\">\r\n <svg class=\"validationSvg\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M12.001 16.75C12.139 16.75 12.251 16.638 12.25 16.5C12.25 16.362 12.138 16.25 12 16.25C11.862 16.25 11.75 16.362 11.75 16.5C11.75 16.638 11.862 16.75 12.001 16.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M12 21C7.029 21 3 16.971 3 12C3 7.029 7.029 3 12 3C16.971 3 21 7.029 21 12C21 16.971 16.971 21 12 21Z\" fill=\"#FF0000\" stroke=\"#FF0000\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M12 12.75L12 7.75\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <circle cx=\"12\" cy=\"16\" r=\"1\" fill=\"white\"/>\r\n </svg>\r\n {{validationMessage}}</div>\r\n</div>\r\n", styles: [".input-wrapper{display:flex;align-items:flex-start}.svg-wrapper{margin-left:auto;z-index:999}.hintIcon{position:relative;cursor:pointer}.hintIcon:hover:before{content:attr(data-title);position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);padding:4px 8px;border-radius:4px;background-color:#1d252d;color:#8e9aa0;font-size:14px;white-space:nowrap}.hintIcon:hover:after{content:\"\";position:absolute;top:calc(100% - 26px);left:50%;border:solid transparent;border-width:18px;border-bottom-color:#1d252d;transform:translate(-50%)}.height{height:42px}.invalid{border-color:red}.hintSvg{width:30px;height:30px;fill:none}.validationSvg{width:24px;height:24px;fill:none}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mobileField{border-radius:6px!important}\n"] }]
76
+ }], ctorParameters: function () { return [{ type: i1.CountryService }]; }, propDecorators: { question: [{
77
+ type: Input
78
+ }], validate: [{
79
+ type: Output
80
+ }] } });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9iaWxlLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL21vYmlsZS1maWVsZHMvbW9iaWxlLWZpZWxkcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLXN1Ym1pc3Npb24vc3JjL2Zvcm0tZmllbGRzL21vYmlsZS1maWVsZHMvbW9iaWxlLWZpZWxkcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFTLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFxQjlFLE1BQU0sT0FBTyxxQkFBcUI7SUF3QmhDLFlBQW9CLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQXZCekMsYUFBUSxHQUFRLEVBQUUsQ0FBQztRQUM1QixVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUNsQixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6Qix1QkFBa0IsR0FBWSxJQUFJLENBQUM7UUFDbkMsZ0JBQVcsR0FBWSxJQUFJLENBQUM7UUFDNUIsZ0JBQVcsR0FBWSxJQUFJLENBQUM7UUFDNUIsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsMEJBQXFCLEdBQVksSUFBSSxDQUFDO1FBQ3RDLG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBQ2hDLG1CQUFjLEdBQWEsRUFBRSxDQUFDO1FBQzlCLG1CQUFjLEdBQWEsRUFBRSxDQUFDO1FBQzlCLG1CQUFjLEdBQWtCLEVBQUUsQ0FBQztRQUNuQyxvQkFBZSxHQUFlLEVBQUUsQ0FBQztRQUNqQyxxQkFBZ0IsR0FBUyxLQUFL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QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1FBQzVCLElBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sS0FBRyxDQUFDLENBQUMsRUFBQztZQUMxRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUMsSUFBSSxDQUFDO1lBQzNCLElBQUksQ0FBQyxpQkFBaUIsR0FBQyw2QkFBNkIsQ0FBQztZQUNyRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7K0dBMUVVLHFCQUFxQjttR0FBckIscUJBQXFCLDhIQ3JCbEMsdzFGQXNDQTs7NEZEakJhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUI7cUdBS3BCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBcUJJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ291bnRyeVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb3VudHJ5U2VydmljZSc7XHJcblxyXG5pbnRlcmZhY2UgQ291bnRyeURhdGEge1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgbGFiZWw6IHN0cmluZztcclxuICBpbWFnZTogc3RyaW5nO1xyXG59XHJcblxyXG5pbnRlcmZhY2UgZmlsdGVyZWRDb3VudHJ5e1xyXG4gIG5hbWU6c3RyaW5nO1xyXG4gIGZsYWc6IHN0cmluZztcclxuICBpc2Q6e307XHJcbiAgbGFuZ3VhZ2VzOnt9O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1tb2JpbGUtZmllbGRzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbW9iaWxlLWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbW9iaWxlLWZpZWxkcy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9iaWxlRmllbGRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uOiBhbnkgPSB7fTtcclxuICBjb3VudDogbnVtYmVyID0gMDtcclxuICByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGhpbnQ6IHN0cmluZyA9ICcnO1xyXG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnJztcclxuICBkaXNwbGF5Q291bnRyeUNvZGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGRpc3BsYXlGbGFnOiBib29sZWFuID0gdHJ1ZTtcclxuICBkaXNwbGF5Q29kZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgc2hvd0NvdW50cnlOYW1lOiBib29sZWFuID0gdHJ1ZTtcclxuICBiZWF1dGlmeU51bWJlcnM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGNvdW50cnlXaXNlVmFsaWRhdGlvbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgcmVzdHJpY3RDb3VudHJ5OiBib29sZWFuID0gdHJ1ZTtcclxuICBhbGxvd2VkQ291bnRyeTogc3RyaW5nW10gPSBbXTtcclxuICBibG9ja2VkQ291bnRyeTogc3RyaW5nW10gPSBbXTtcclxuICBjb3VudHJ5RGV0YWlsczogQ291bnRyeURhdGFbXSA9IFtdO1xyXG4gIHNlbGVjdGVkQ291bnRyeTpDb3VudHJ5RGF0YVtdPVtdO1xyXG4gIHZhbGlkYXRpb25GYWlsZWQ6Ym9vbGVhbj1mYWxzZTtcclxuICB2YWxpZGF0aW9uTWVzc2FnZTpzdHJpbmc9Jyc7XHJcbiAgbW9iaWxlTnVtYmVyOnN0cmluZz0nJztcclxuICBmaWx0ZXJlZENvdW50cnk6ZmlsdGVyZWRDb3VudHJ5W109W107XHJcblxyXG4gIEBPdXRwdXQoKSB2YWxpZGF0ZSA6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb3VudHJ5U2VydmljZTogQ291bnRyeVNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy52YWx1ZUFzc2lnbmVkKCk7XHJcbiAgfVxyXG5cclxuICB2YWx1ZUFzc2lnbmVkKCkge1xyXG4gICAgdGhpcy5jb3VudCA9IHRoaXMucXVlc3Rpb24uY291bnQ7XHJcbiAgICB0aGlzLnJlcXVpcmVkID0gdGhpcy5xdWVzdGlvbi5yZXF1aXJlZDtcclxuICAgIHRoaXMuaGludCA9IHRoaXMucXVlc3Rpb24uaGludDtcclxuICAgIHRoaXMucGxhY2Vob2xkZXIgPSB0aGlzLnF1ZXN0aW9uLmZvcm1FbGVtZW50LmFwcGVhcmFuY2UucGxhY2Vob2xkZXI7XHJcbiAgICB0aGlzLmRpc3BsYXlDb3VudHJ5Q29kZSA9XHJcbiAgICAgIHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5kaXNwbGF5Q291bnRyeUNvZGU7XHJcbiAgICB0aGlzLmRpc3BsYXlGbGFnID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmRpc3BsYXlGbGFnO1xyXG4gICAgdGhpcy5kaXNwbGF5Q29kZSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQuYXBwZWFyYW5jZS5kaXNwbGF5Q29kZTtcclxuICAgIHRoaXMuc2hvd0NvdW50cnlOYW1lID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLnNob3dDb3VudHJ5TmFtZTtcclxuICAgIHRoaXMuYmVhdXRpZnlOdW1iZXJzID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC5hcHBlYXJhbmNlLmJlYXV0aWZ5TnVtYmVycztcclxuICAgIHRoaXMuY291bnRyeVdpc2VWYWxpZGF0aW9uID1cclxuICAgICAgdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLmNvdW50cnlXaXNlVmFsaWRhdGlvbjtcclxuICAgIHRoaXMucmVzdHJpY3RDb3VudHJ5ID0gdGhpcy5xdWVzdGlvbi5mb3JtRWxlbWVudC52YWxpZGF0aW9uLnJlc3RyaWN0Q291bnRyeTtcclxuICAgIFxyXG4gICAgdGhpcy5hbGxvd2VkQ291bnRyeSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5hbGxvd2VkQ291bnRyeTtcclxuICAgIFxyXG4gICAgdGhpcy5ibG9ja2VkQ291bnRyeSA9IHRoaXMucXVlc3Rpb24uZm9ybUVsZW1lbnQudmFsaWRhdGlvbi5ibG9ja2VkQ291bnRyeTtcclxuICAgIFxyXG5cclxuICAgIHRoaXMuY291bnRyeVNlcnZpY2UubG9hZENvdW50cnlEZXRhaWxzKCkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRDb3VudHJ5PWRhdGEucmVzdWx0O1xyXG4gICAgICBpZih0aGlzLnJlc3RyaWN0Q291bnRyeSAmJiAoIHRoaXMuYWxsb3dlZENvdW50cnkgfHwgdGhpcy5ibG9ja2VkQ291bnRyeSApKXtcclxuICAgICAgICB0aGlzLmZpbHRlcmVkQ291bnRyeSA9IHRoaXMuZmlsdGVyZWRDb3VudHJ5LmZpbHRlcihjb3VudHJ5ID0+eyAgICAgICAgICBcclxuICAgICAgICAgcmV0dXJuICh0aGlzLmFsbG93ZWRDb3VudHJ5LmluY2x1ZGVzKGNvdW50cnkubmFtZSkgfHwgIXRoaXMuYmxvY2tlZENvdW50cnkuaW5jbHVkZXMoY291bnRyeS5uYW1lKSlcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNvdW50cnlEZXRhaWxzID0gdGhpcy5jb3VudHJ5U2VydmljZS5wcm9jZXNzQ291bnRyeURldGFpbHMoXHJcbiAgICAgICAgdGhpcy5maWx0ZXJlZENvdW50cnksXHJcbiAgICAgICAgdGhpcy5kaXNwbGF5RmxhZyxcclxuICAgICAgICB0aGlzLmRpc3BsYXlDb2RlLFxyXG4gICAgICAgIHRoaXMuc2hvd0NvdW50cnlOYW1lXHJcbiAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGVNb2JpbGUoKXtcclxuICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZCA9IGZhbHNlOyBcclxuICAgIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2UgPSAnJztcclxuICAgIGlmKHRoaXMucmVxdWlyZWQgJiYgKCF0aGlzLm1vYmlsZU51bWJlciB8fCB0aGlzLnNlbGVjdGVkQ291bnRyeS5sZW5ndGg9PT0wKSl7XHJcbiAgICAgIHRoaXMudmFsaWRhdGlvbkZhaWxlZD10cnVlO1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25NZXNzYWdlPSdUaGlzIGlzIGEgcmVxdWlyZWQgcXVlc3Rpb24nO1xyXG4gICAgICB0aGlzLnZhbGlkYXRlLmVtaXQodGhpcy52YWxpZGF0aW9uRmFpbGVkKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBbbmdDbGFzc109XCInY29sLScgKyBjb3VudFwiIGNsYXNzPVwibWItNCBweC0zXCI+XHJcbiAgPGRpdiAgY2xhc3M9XCJpbnB1dC13cmFwcGVyXCI+XHJcbiAgPGxhYmVsPnt7IHF1ZXN0aW9uLnF1ZXN0aW9uIH19PC9sYWJlbD4mbmJzcDtcclxuICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCIgKm5nSWY9XCJyZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgPGRpdiBjbGFzcz1cInN2Zy13cmFwcGVyICBtYi0yIGhpbnRJY29uXCIgW2F0dHIuZGF0YS10aXRsZV09XCJoaW50XCIgKm5nSWY9XCJoaW50XCI+XHJcbiAgICA8c3ZnIGNsYXNzPVwiaGludFN2Z1wiICB2aWV3Qm94PVwiMCAwIDMwIDMwXCIgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTE1IDI2LjI1VjI2LjI1QzguNzg2MjUgMjYuMjUgMy43NSAyMS4yMTM4IDMuNzUgMTVWMTVDMy43NSA4Ljc4NjI1IDguNzg2MjUgMy43NSAxNSAzLjc1VjMuNzVDMjEuMjEzOCAzLjc1IDI2LjI1IDguNzg2MjUgMjYuMjUgMTVWMTVDMjYuMjUgMjEuMjEzOCAyMS4yMTM4IDI2LjI1IDE1IDI2LjI1WlwiIHN0cm9rZT1cIiMzMjMyMzJcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgIDxwYXRoIGQ9XCJNMTUgMTYuNTYyM1YxNi4yNDk4QzE1IDE1LjIyODUgMTUuNjMxMiAxNC42NzQ4IDE2LjI2MzcgMTQuMjQ5OEMxNi44ODEyIDEzLjgzMzUgMTcuNSAxMy4yOTEgMTcuNSAxMi4yOTFDMTcuNSAxMC45MDk4IDE2LjM4MTMgOS43OTEwMiAxNSA5Ljc5MTAyQzEzLjYxODcgOS43OTEwMiAxMi41IDEwLjkwOTggMTIuNSAxMi4yOTFcIiBzdHJva2U9XCIjMzIzMjMyXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICA8cGF0aCBkPVwiTTE0Ljk5ODggMjBDMTQuODI2MyAyMCAxNC42ODYzIDIwLjE0IDE0LjY4NzUgMjAuMzEyNUMxNC42ODc1IDIwLjQ4NSAxNC44Mjc1IDIwLjYyNSAxNSAyMC42MjVDMTUuMTcyNSAyMC42MjUgMTUuMzEyNSAyMC40ODUgMTUuMzEyNSAyMC4zMTI1QzE1LjMxMjUgMjAuMTQgMTUuMTcyNSAyMCAxNC45OTg4IDIwXCIgc3Ryb2tlPVwiIzMyMzIzMlwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgIDwvc3ZnPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgbWItMlwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC14cy01IGNvbC01IGNvbC1tZC0zIHB4LTAgcGUtMlwiPlxyXG4gICAgICA8bGliLWRyb3Bkb3duXHJcbiAgICAgICBbaXRlbXNdPVwiY291bnRyeURldGFpbHNcIlxyXG4gICAgICBbbXVsdGlwbGVdID0gXCJmYWxzZVwiXHJcbiAgICAgIFsoc2VsZWN0ZWRJdGVtcyldPVwic2VsZWN0ZWRDb3VudHJ5XCI+PC9saWItZHJvcGRvd24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxpbnB1dFxyXG4gICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgY29sLXhzLTcgY29sLTcgY29sLW1kLTkgIGhlaWdodCBtb2JpbGVGaWVsZFwiIFxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICBhcmlhLWxhYmVsPVwiTW9iaWxlIE51bWJlclwiXHJcbiAgICAgIFtjbGFzcy5pbnZhbGlkXT1cInZhbGlkYXRpb25GYWlsZWRcIlxyXG4gICAgICAoYmx1cik9XCJ2YWxpZGF0ZU1vYmlsZSgpXCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJtb2JpbGVOdW1iZXJcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwidmFsaWRhdGlvbkZhaWxlZFwiIGNsYXNzPVwidGV4dC1kYW5nZXJcIj5cclxuICAgIDxzdmcgY2xhc3M9XCJ2YWxpZGF0aW9uU3ZnXCIgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgIDxwYXRoIGQ9XCJNMTIuMDAxIDE2Ljc1QzEyLjEzOSAxNi43NSAxMi4yNTEgMTYuNjM4IDEyLjI1IDE2LjVDMTIuMjUgMTYuMzYyIDEyLjEzOCAxNi4yNSAxMiAxNi4yNUMxMS44NjIgMTYuMjUgMTEuNzUgMTYuMzYyIDExLjc1IDE2LjVDMTEuNzUgMTYuNjM4IDExLjg2MiAxNi43NSAxMi4wMDEgMTYuNzVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEyIDIxQzcuMDI5IDIxIDMgMTYuOTcxIDMgMTJDMyA3LjAyOSA3LjAyOSAzIDEyIDNDMTYuOTcxIDMgMjEgNy4wMjkgMjEgMTJDMjEgMTYuOTcxIDE2Ljk3MSAyMSAxMiAyMVpcIiBmaWxsPVwiI0ZGMDAwMFwiIHN0cm9rZT1cIiNGRjAwMDBcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgIDxwYXRoIGQ9XCJNMTIgMTIuNzVMMTIgNy43NVwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjE2XCIgcj1cIjFcIiBmaWxsPVwid2hpdGVcIi8+XHJcbiAgICAgIDwvc3ZnPlxyXG4gICAgICB7e3ZhbGlkYXRpb25NZXNzYWdlfX08L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==