ngx-vector-components 5.172.0 → 6.0.0

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 (168) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/assets/styles/_primeng-custom-theme.scss +697 -141
  3. package/assets/styles/_spinner.scss +2 -1
  4. package/assets/styles/_styles.scss +20 -1
  5. package/assets/styles/_variables.scss +35 -1
  6. package/fesm2022/ngx-vector-components.mjs +397 -273
  7. package/fesm2022/ngx-vector-components.mjs.map +1 -1
  8. package/lib/components/drawer/drawer.component.d.ts +21 -0
  9. package/lib/components/drawer/drawer.module.d.ts +9 -0
  10. package/lib/components/drawer/index.d.ts +2 -0
  11. package/lib/components/fields/data-table/data-table.component.d.ts +2 -2
  12. package/lib/components/fields/fields.module.d.ts +5 -5
  13. package/lib/components/fields/input-switch-field/input-switch-field.component.d.ts +3 -2
  14. package/lib/components/fields/select-button-field/select-button-field.component.d.ts +4 -1
  15. package/lib/components/fields/text-field/text-field.component.d.ts +1 -1
  16. package/lib/components/index.d.ts +1 -0
  17. package/lib/config/index.d.ts +14 -0
  18. package/lib/models/profile.model.d.ts +2 -1
  19. package/package.json +13 -14
  20. package/public-api.d.ts +1 -0
  21. package/esm2022/lib/components/badge/badge.component.mjs +0 -39
  22. package/esm2022/lib/components/badge/badge.module.mjs +0 -19
  23. package/esm2022/lib/components/badge/index.mjs +0 -3
  24. package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +0 -74
  25. package/esm2022/lib/components/breadcrumb/breadcrumb.module.mjs +0 -18
  26. package/esm2022/lib/components/breadcrumb/index.mjs +0 -3
  27. package/esm2022/lib/components/crud-base/crud-base.component.mjs +0 -47
  28. package/esm2022/lib/components/crud-base/index.mjs +0 -2
  29. package/esm2022/lib/components/crud-footer/crud-footer.component.mjs +0 -40
  30. package/esm2022/lib/components/crud-footer/crud-footer.module.mjs +0 -20
  31. package/esm2022/lib/components/crud-footer/index.mjs +0 -3
  32. package/esm2022/lib/components/crud-header/crud-header.component.mjs +0 -30
  33. package/esm2022/lib/components/crud-header/crud-header.module.mjs +0 -19
  34. package/esm2022/lib/components/crud-header/index.mjs +0 -3
  35. package/esm2022/lib/components/crud-history/crud-history.component.mjs +0 -100
  36. package/esm2022/lib/components/crud-history/crud-history.module.mjs +0 -21
  37. package/esm2022/lib/components/crud-history/index.mjs +0 -3
  38. package/esm2022/lib/components/fields/button/button.component.mjs +0 -48
  39. package/esm2022/lib/components/fields/button/index.mjs +0 -2
  40. package/esm2022/lib/components/fields/calendar-field/calendar-field.component.mjs +0 -107
  41. package/esm2022/lib/components/fields/calendar-field/index.mjs +0 -2
  42. package/esm2022/lib/components/fields/checkbox-field/checkbox-field.component.mjs +0 -62
  43. package/esm2022/lib/components/fields/checkbox-field/index.mjs +0 -2
  44. package/esm2022/lib/components/fields/currency-field/currency-field.component.mjs +0 -103
  45. package/esm2022/lib/components/fields/currency-field/index.mjs +0 -2
  46. package/esm2022/lib/components/fields/data-table/data-table.component.mjs +0 -454
  47. package/esm2022/lib/components/fields/data-table/index.mjs +0 -2
  48. package/esm2022/lib/components/fields/dropdown-field/dropdown-field.component.mjs +0 -308
  49. package/esm2022/lib/components/fields/dropdown-field/index.mjs +0 -2
  50. package/esm2022/lib/components/fields/field-error-message/field-error-message.component.mjs +0 -35
  51. package/esm2022/lib/components/fields/field-error-message/index.mjs +0 -2
  52. package/esm2022/lib/components/fields/fields.module.mjs +0 -229
  53. package/esm2022/lib/components/fields/filters/filters.component.mjs +0 -212
  54. package/esm2022/lib/components/fields/filters/index.mjs +0 -2
  55. package/esm2022/lib/components/fields/index.mjs +0 -21
  56. package/esm2022/lib/components/fields/input-number-field/index.mjs +0 -2
  57. package/esm2022/lib/components/fields/input-number-field/input-number-field.component.mjs +0 -88
  58. package/esm2022/lib/components/fields/input-otp/index.mjs +0 -2
  59. package/esm2022/lib/components/fields/input-otp/input-otp.component.mjs +0 -50
  60. package/esm2022/lib/components/fields/input-switch-field/index.mjs +0 -2
  61. package/esm2022/lib/components/fields/input-switch-field/input-switch-field.component.mjs +0 -21
  62. package/esm2022/lib/components/fields/multiselect-field/index.mjs +0 -2
  63. package/esm2022/lib/components/fields/multiselect-field/multiselect-field.component.mjs +0 -315
  64. package/esm2022/lib/components/fields/percentage-field/index.mjs +0 -2
  65. package/esm2022/lib/components/fields/percentage-field/percentage-field.component.mjs +0 -54
  66. package/esm2022/lib/components/fields/radio-button-field/index.mjs +0 -2
  67. package/esm2022/lib/components/fields/radio-button-field/radio-button-field.component.mjs +0 -62
  68. package/esm2022/lib/components/fields/range-value/index.mjs +0 -2
  69. package/esm2022/lib/components/fields/range-value/range-value.component.mjs +0 -72
  70. package/esm2022/lib/components/fields/search-field/index.mjs +0 -2
  71. package/esm2022/lib/components/fields/search-field/search-field.component.mjs +0 -33
  72. package/esm2022/lib/components/fields/select-button-field/index.mjs +0 -2
  73. package/esm2022/lib/components/fields/select-button-field/select-button-field.component.mjs +0 -23
  74. package/esm2022/lib/components/fields/text-field/index.mjs +0 -2
  75. package/esm2022/lib/components/fields/text-field/text-field.component.mjs +0 -277
  76. package/esm2022/lib/components/fields/textarea-field/index.mjs +0 -2
  77. package/esm2022/lib/components/fields/textarea-field/textarea-field.component.mjs +0 -81
  78. package/esm2022/lib/components/generic-error-modal/generic-error-modal.component.mjs +0 -33
  79. package/esm2022/lib/components/generic-error-modal/generic-error-modal.module.mjs +0 -20
  80. package/esm2022/lib/components/generic-error-modal/index.mjs +0 -3
  81. package/esm2022/lib/components/generic-modal/generic-modal.component.mjs +0 -66
  82. package/esm2022/lib/components/generic-modal/generic-modal.module.mjs +0 -20
  83. package/esm2022/lib/components/generic-modal/index.mjs +0 -3
  84. package/esm2022/lib/components/index.mjs +0 -15
  85. package/esm2022/lib/components/menu/index.mjs +0 -4
  86. package/esm2022/lib/components/menu/menu.component.mjs +0 -306
  87. package/esm2022/lib/components/menu/menu.module.mjs +0 -20
  88. package/esm2022/lib/components/menu/sub-menus-list/sub-menus-list.component.mjs +0 -41
  89. package/esm2022/lib/components/panel/index.mjs +0 -3
  90. package/esm2022/lib/components/panel/panel.component.mjs +0 -15
  91. package/esm2022/lib/components/panel/panel.module.mjs +0 -19
  92. package/esm2022/lib/components/score/index.mjs +0 -3
  93. package/esm2022/lib/components/score/score.component.mjs +0 -17
  94. package/esm2022/lib/components/score/score.module.mjs +0 -16
  95. package/esm2022/lib/components/stepper/index.mjs +0 -3
  96. package/esm2022/lib/components/stepper/stepper.component.mjs +0 -47
  97. package/esm2022/lib/components/stepper/stepper.module.mjs +0 -19
  98. package/esm2022/lib/components/top-bar/index.mjs +0 -3
  99. package/esm2022/lib/components/top-bar/top-bar.component.mjs +0 -158
  100. package/esm2022/lib/components/top-bar/top-bar.module.mjs +0 -21
  101. package/esm2022/lib/guards/crud-list-has-items.guard.mjs +0 -11
  102. package/esm2022/lib/guards/get-token-by-guid.guard.mjs +0 -41
  103. package/esm2022/lib/guards/has-permission.guard.mjs +0 -15
  104. package/esm2022/lib/guards/index.mjs +0 -6
  105. package/esm2022/lib/guards/role.guard.mjs +0 -14
  106. package/esm2022/lib/guards/token-is-present.guard.mjs +0 -14
  107. package/esm2022/lib/injections/index.mjs +0 -5
  108. package/esm2022/lib/interceptors/http-interceptor.mjs +0 -186
  109. package/esm2022/lib/interceptors/index.mjs +0 -2
  110. package/esm2022/lib/models/app-name.enum.mjs +0 -10
  111. package/esm2022/lib/models/boolean-type.enum.mjs +0 -6
  112. package/esm2022/lib/models/crud-history.model.mjs +0 -3
  113. package/esm2022/lib/models/crud-mode.enum.mjs +0 -7
  114. package/esm2022/lib/models/currency.enum.mjs +0 -7
  115. package/esm2022/lib/models/data-table.model.mjs +0 -23
  116. package/esm2022/lib/models/document-type.enum.mjs +0 -6
  117. package/esm2022/lib/models/filters.model.mjs +0 -2
  118. package/esm2022/lib/models/generic-modal.model.mjs +0 -2
  119. package/esm2022/lib/models/http-response.model.mjs +0 -2
  120. package/esm2022/lib/models/index.mjs +0 -19
  121. package/esm2022/lib/models/ip-info.enum.mjs +0 -2
  122. package/esm2022/lib/models/list-item.model.mjs +0 -2
  123. package/esm2022/lib/models/locale.enum.mjs +0 -7
  124. package/esm2022/lib/models/menu-item.model.mjs +0 -2
  125. package/esm2022/lib/models/message-status.enum.mjs +0 -8
  126. package/esm2022/lib/models/profile.model.mjs +0 -711
  127. package/esm2022/lib/models/role.enum.mjs +0 -5
  128. package/esm2022/lib/models/status.enum.mjs +0 -9
  129. package/esm2022/lib/models/topbar.model.mjs +0 -2
  130. package/esm2022/lib/models/vector-app.model.mjs +0 -2
  131. package/esm2022/lib/models/vector-notification.model.mjs +0 -2
  132. package/esm2022/lib/models/view.enum.mjs +0 -9
  133. package/esm2022/lib/pipes/currency-brl.pipe.mjs +0 -18
  134. package/esm2022/lib/pipes/format-document.pipe.mjs +0 -17
  135. package/esm2022/lib/pipes/index.mjs +0 -9
  136. package/esm2022/lib/pipes/mask.pipe.mjs +0 -21
  137. package/esm2022/lib/pipes/not-hidden.pipe.mjs +0 -16
  138. package/esm2022/lib/pipes/only-active.pipe.mjs +0 -16
  139. package/esm2022/lib/pipes/pipes.module.mjs +0 -50
  140. package/esm2022/lib/pipes/remove-last-child.pipe.mjs +0 -18
  141. package/esm2022/lib/pipes/unread-notifications.pipe.mjs +0 -15
  142. package/esm2022/lib/resolvers/get-selected-crud-item.resolver.mjs +0 -17
  143. package/esm2022/lib/resolvers/index.mjs +0 -2
  144. package/esm2022/lib/services/auth.service.mjs +0 -78
  145. package/esm2022/lib/services/base-dropdown.mjs +0 -2
  146. package/esm2022/lib/services/breadcrumb.service.mjs +0 -22
  147. package/esm2022/lib/services/crud-base.service.mjs +0 -14
  148. package/esm2022/lib/services/enum.service.mjs +0 -43
  149. package/esm2022/lib/services/error-message.service.mjs +0 -16
  150. package/esm2022/lib/services/geolocation.service.mjs +0 -23
  151. package/esm2022/lib/services/index.mjs +0 -14
  152. package/esm2022/lib/services/loading.service.mjs +0 -15
  153. package/esm2022/lib/services/menu.service.mjs +0 -154
  154. package/esm2022/lib/services/modal.service.mjs +0 -15
  155. package/esm2022/lib/services/notifications.service.mjs +0 -64
  156. package/esm2022/lib/services/profile.service.mjs +0 -115
  157. package/esm2022/lib/services/storage.service.mjs +0 -104
  158. package/esm2022/lib/shared/shared.module.mjs +0 -19
  159. package/esm2022/lib/utils/cpf-cnpj-validator.util.mjs +0 -109
  160. package/esm2022/lib/utils/file.util.mjs +0 -15
  161. package/esm2022/lib/utils/index.mjs +0 -8
  162. package/esm2022/lib/utils/mask.util.mjs +0 -82
  163. package/esm2022/lib/utils/object.util.mjs +0 -27
  164. package/esm2022/lib/utils/string.util.mjs +0 -52
  165. package/esm2022/lib/utils/validation.util.mjs +0 -279
  166. package/esm2022/lib/utils/window.util.mjs +0 -9
  167. package/esm2022/ngx-vector-components.mjs +0 -5
  168. package/esm2022/public-api.mjs +0 -10
@@ -1,277 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { Subscription } from 'rxjs';
3
- import { DocumentType } from '../../../models';
4
- import { MaskUtil } from '../../../utils';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/forms";
8
- import * as i3 from "primeng/keyfilter";
9
- import * as i4 from "primeng/inputtext";
10
- import * as i5 from "primeng/inputmask";
11
- import * as i6 from "../button/button.component";
12
- import * as i7 from "../field-error-message/field-error-message.component";
13
- export class TextFieldComponent {
14
- constructor() {
15
- this.isRequired = false;
16
- this.label = '';
17
- this.maxlength = '';
18
- this.isPassword = false;
19
- this.numeric = false;
20
- this.numericPositive = false;
21
- this.numericDotComma = false;
22
- this.decimal = false;
23
- this.onlyText = false;
24
- this.noSpecialCharacters = false;
25
- this.alphaNumeric = false;
26
- this.alphaNumericAndWhitespace = false;
27
- this.autoClear = true;
28
- this.readonly = false;
29
- this.rightIcon = '';
30
- this.centered = false;
31
- this._enableDocumentTypeChoice = false;
32
- this.hiddenErrorMessage = false;
33
- this.slotChar = '_';
34
- this.disabled = false;
35
- this.pattern = '';
36
- this.blurEvent = new EventEmitter();
37
- this.inputEvent = new EventEmitter();
38
- this.enterKeyPress = new EventEmitter();
39
- this.backSpaceKeyPress = new EventEmitter();
40
- this.focusEvent = new EventEmitter();
41
- this.onDocumentTypeChange = new EventEmitter();
42
- this.isPasswordVisible = false;
43
- this.validateOnly = false;
44
- this.documentTypes = [
45
- {
46
- name: 'CPF',
47
- code: DocumentType.CPF,
48
- },
49
- {
50
- name: 'CNPJ',
51
- code: DocumentType.CNPJ,
52
- },
53
- ];
54
- this.selectedDocumentType = this.documentTypes[1];
55
- this.lastBlurValue = '';
56
- this.lastTypedValue = '';
57
- this.subscription = new Subscription();
58
- this.controlSubscription = new Subscription();
59
- }
60
- set enableDocumentTypeChoice(value) {
61
- this._enableDocumentTypeChoice = value;
62
- this.handleDocumentTypeChange();
63
- }
64
- get enableDocumentTypeChoice() {
65
- return this._enableDocumentTypeChoice;
66
- }
67
- set control(_control) {
68
- this._control = _control;
69
- if (this._enableDocumentTypeChoice) {
70
- this.handleInitialDocumentTypeState();
71
- }
72
- if (this.controlSubscription) {
73
- this.controlSubscription.unsubscribe();
74
- this.controlSubscription = new Subscription();
75
- }
76
- this.controlSubscription.add(this.control.valueChanges.subscribe((value) => {
77
- if (this._enableDocumentTypeChoice && !this.lastTypedValue && value?.length > 11) {
78
- this.handleInitialDocumentTypeState();
79
- }
80
- this.lastTypedValue = value;
81
- }));
82
- }
83
- get placeholder() {
84
- if (!this.label) {
85
- return '';
86
- }
87
- return `${this.label}${this.isRequired ? '*' : ''}`;
88
- }
89
- get keyfilter() {
90
- this.validateOnly = false;
91
- if (this.numeric) {
92
- return 'int';
93
- }
94
- if (this.numericPositive) {
95
- return 'pint';
96
- }
97
- if (this.decimal) {
98
- this.validateOnly = true;
99
- return /^(\d+(?:[\,]\d{2})?)$/;
100
- }
101
- if (this.onlyText) {
102
- this.validateOnly = true;
103
- return /^[a-zA-ZÀ-ú\s]*$/gm;
104
- }
105
- if (this.alphaNumeric) {
106
- return 'alphanum';
107
- }
108
- if (this.alphaNumericAndWhitespace) {
109
- return /^[A-Za-zÀ-ú0-9 ]*$/gm;
110
- }
111
- if (this.numericDotComma) {
112
- return 'money';
113
- }
114
- if (this.noSpecialCharacters) {
115
- return /^[a-zA-ZÀ-ÖØ-öø-ÿ0-9\s]+$/;
116
- }
117
- return /[\s\S]*/;
118
- }
119
- get control() {
120
- return this._control;
121
- }
122
- get showPasswordIcon() {
123
- return this.isPasswordVisible ? 'fas fa-eye' : 'fas fa-eye-slash';
124
- }
125
- ngOnInit() {
126
- if (this._enableDocumentTypeChoice) {
127
- this.setDocumentType(this.selectedDocumentType.code);
128
- }
129
- }
130
- ngOnDestroy() {
131
- this.subscription.unsubscribe();
132
- this.controlSubscription.unsubscribe();
133
- }
134
- onBlur() {
135
- this.control.markAsTouched();
136
- if (this.lastBlurValue !== this.control.value) {
137
- this.lastBlurValue = this.control.value;
138
- setTimeout(() => {
139
- this.blurEvent.emit(this.control.value);
140
- });
141
- }
142
- }
143
- onInput($event) {
144
- const target = $event.target;
145
- this.inputEvent.emit(target.value);
146
- }
147
- onEnterPress() {
148
- this.onBlur();
149
- this.enterKeyPress.emit();
150
- }
151
- onBackSpacePress() {
152
- this.onBlur();
153
- this.backSpaceKeyPress.emit();
154
- }
155
- onFocus($event) {
156
- const target = $event.target;
157
- if (this.mask) {
158
- const firstUnderscore = target?.value.indexOf('_');
159
- const selectionIndex = (firstUnderscore >= 0 ? firstUnderscore : target?.value.length) || 0;
160
- target?.setSelectionRange(selectionIndex, selectionIndex);
161
- }
162
- this.focusEvent.emit(target?.value);
163
- }
164
- toggleShowPassword() {
165
- this.isPasswordVisible = !this.isPasswordVisible;
166
- }
167
- handleDocumentTypeChange() {
168
- if (this.selectedDocumentType.code === DocumentType.CNPJ) {
169
- this.setDocumentType(DocumentType.CPF);
170
- }
171
- else {
172
- this.setDocumentType(DocumentType.CNPJ);
173
- }
174
- }
175
- handleInitialDocumentTypeState() {
176
- if (this.control?.value) {
177
- if (this.control.value.length === 11) {
178
- this.setDocumentType(DocumentType.CPF);
179
- }
180
- else {
181
- this.setDocumentType(DocumentType.CNPJ);
182
- }
183
- }
184
- else {
185
- this.setDocumentType(DocumentType.CPF);
186
- }
187
- }
188
- setDocumentType(documentType) {
189
- if (this._enableDocumentTypeChoice) {
190
- switch (documentType) {
191
- case DocumentType.CNPJ:
192
- this.selectedDocumentType = this.documentTypes[1];
193
- this.mask = MaskUtil.CNPJ_TEXT_FIELD_PATTERN;
194
- break;
195
- case DocumentType.CPF:
196
- this.selectedDocumentType = this.documentTypes[0];
197
- this.mask = MaskUtil.CPF_TEXT_FIELD_PATTERN;
198
- break;
199
- }
200
- }
201
- else {
202
- this.mask = '';
203
- }
204
- this.onDocumentTypeChange.emit(this.selectedDocumentType);
205
- }
206
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
207
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TextFieldComponent, selector: "vector-text-field", inputs: { isRequired: "isRequired", label: "label", maxlength: "maxlength", isPassword: "isPassword", numeric: "numeric", numericPositive: "numericPositive", numericDotComma: "numericDotComma", decimal: "decimal", onlyText: "onlyText", noSpecialCharacters: "noSpecialCharacters", alphaNumeric: "alphaNumeric", alphaNumericAndWhitespace: "alphaNumericAndWhitespace", mask: "mask", autoClear: "autoClear", readonly: "readonly", rightIcon: "rightIcon", centered: "centered", _enableDocumentTypeChoice: "_enableDocumentTypeChoice", enableDocumentTypeChoice: "enableDocumentTypeChoice", hiddenErrorMessage: "hiddenErrorMessage", leftLabel: "leftLabel", control: "control", inputId: "inputId", slotChar: "slotChar", disabled: "disabled", pattern: "pattern" }, outputs: { blurEvent: "blurEvent", inputEvent: "inputEvent", enterKeyPress: "enterKeyPress", backSpaceKeyPress: "backSpaceKeyPress", focusEvent: "focusEvent", onDocumentTypeChange: "onDocumentTypeChange" }, ngImport: i0, template: "<form class=\"input-container p-input-icon-right\">\n <i *ngIf=\"rightIcon\" [class]=\"rightIcon\"></i>\n <i *ngIf=\"isPassword\" class=\"show-password-icon {{ showPasswordIcon }}\" (click)=\"toggleShowPassword()\"></i>\n <div class=\"p-inputgroup\" *ngIf=\"!inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <div class=\"p-inputgroup\" *ngIf=\"inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n [id]=\"inputId\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</form>\n", styles: [".input-container{width:100%;display:block!important}.input-container .password-field{-webkit-text-security:disc}.input-container .input-error{font-size:.7em;color:var(--error-color);position:absolute;width:max-content}.input-container .show-password-icon{font-size:1.4em;margin-right:5px;cursor:pointer}.input-container .text-centered{text-align:center}.input-container .left-label{min-height:100%;display:flex;align-items:center;justify-content:center;padding:0 10px;white-space:nowrap;font-size:13px;background-color:var(--gray-light);color:var(--theme-primary)}\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.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.KeyFilter, selector: "[pKeyFilter]", inputs: ["pValidateOnly", "pKeyFilter"], outputs: ["ngModelChange"] }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i5.InputMask, selector: "p-inputMask", inputs: ["type", "slotChar", "autoClear", "showClear", "style", "inputId", "styleClass", "placeholder", "size", "maxlength", "tabindex", "title", "variant", "ariaLabel", "ariaLabelledBy", "ariaRequired", "disabled", "readonly", "unmask", "name", "required", "characterPattern", "autofocus", "autoFocus", "autocomplete", "keepBuffer", "mask"], outputs: ["onComplete", "onFocus", "onBlur", "onInput", "onKeydown", "onClear"] }, { kind: "component", type: i6.ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "component", type: i7.FieldErrorMessageComponent, selector: "vector-field-error-message", inputs: ["control"] }] }); }
208
- }
209
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextFieldComponent, decorators: [{
210
- type: Component,
211
- args: [{ selector: 'vector-text-field', template: "<form class=\"input-container p-input-icon-right\">\n <i *ngIf=\"rightIcon\" [class]=\"rightIcon\"></i>\n <i *ngIf=\"isPassword\" class=\"show-password-icon {{ showPasswordIcon }}\" (click)=\"toggleShowPassword()\"></i>\n <div class=\"p-inputgroup\" *ngIf=\"!inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <div class=\"p-inputgroup\" *ngIf=\"inputId\">\n <vector-button\n *ngIf=\"enableDocumentTypeChoice\"\n leftIcon=\"fas fa-exchange-alt\"\n type=\"success\"\n [label]=\"selectedDocumentType.name\"\n [disabled]=\"control.disabled\"\n [noShadow]=\"true\"\n (onClick)=\"handleDocumentTypeChange()\"\n ></vector-button>\n\n <span *ngIf=\"leftLabel\" class=\"left-label\">\n {{ leftLabel }}\n </span>\n\n <input\n *ngIf=\"!mask\"\n [id]=\"inputId\"\n pInputText\n type=\"text\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [pValidateOnly]=\"validateOnly\"\n [pKeyFilter]=\"keyfilter\"\n [ngClass]=\"{ 'password-field': isPassword && !isPasswordVisible, 'text-centered': centered }\"\n (blur)=\"onBlur()\"\n (input)=\"onInput($event)\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n (click)=\"onFocus($event)\"\n [readonly]=\"readonly ? true : null\"\n [pattern]=\"pattern\"\n />\n <p-inputMask\n *ngIf=\"mask\"\n type=\"text\"\n [inputId]=\"inputId || 'mask-field'\"\n [formControl]=\"control\"\n [mask]=\"mask\"\n [placeholder]=\"placeholder\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (keydown.backspace)=\"onBackSpacePress()\"\n [autoClear]=\"autoClear\"\n [unmask]=\"true\"\n [styleClass]=\"centered ? 'text-centered' : ''\"\n [slotChar]=\"slotChar\"\n (click)=\"onFocus($event)\"\n [pattern]=\"pattern\"\n ></p-inputMask>\n </div>\n <vector-field-error-message *ngIf=\"!hiddenErrorMessage\" [control]=\"control\"></vector-field-error-message>\n</form>\n", styles: [".input-container{width:100%;display:block!important}.input-container .password-field{-webkit-text-security:disc}.input-container .input-error{font-size:.7em;color:var(--error-color);position:absolute;width:max-content}.input-container .show-password-icon{font-size:1.4em;margin-right:5px;cursor:pointer}.input-container .text-centered{text-align:center}.input-container .left-label{min-height:100%;display:flex;align-items:center;justify-content:center;padding:0 10px;white-space:nowrap;font-size:13px;background-color:var(--gray-light);color:var(--theme-primary)}\n"] }]
212
- }], propDecorators: { isRequired: [{
213
- type: Input
214
- }], label: [{
215
- type: Input
216
- }], maxlength: [{
217
- type: Input
218
- }], isPassword: [{
219
- type: Input
220
- }], numeric: [{
221
- type: Input
222
- }], numericPositive: [{
223
- type: Input
224
- }], numericDotComma: [{
225
- type: Input
226
- }], decimal: [{
227
- type: Input
228
- }], onlyText: [{
229
- type: Input
230
- }], noSpecialCharacters: [{
231
- type: Input
232
- }], alphaNumeric: [{
233
- type: Input
234
- }], alphaNumericAndWhitespace: [{
235
- type: Input
236
- }], mask: [{
237
- type: Input
238
- }], autoClear: [{
239
- type: Input
240
- }], readonly: [{
241
- type: Input
242
- }], rightIcon: [{
243
- type: Input
244
- }], centered: [{
245
- type: Input
246
- }], _enableDocumentTypeChoice: [{
247
- type: Input
248
- }], enableDocumentTypeChoice: [{
249
- type: Input
250
- }], hiddenErrorMessage: [{
251
- type: Input
252
- }], leftLabel: [{
253
- type: Input
254
- }], control: [{
255
- type: Input
256
- }], inputId: [{
257
- type: Input
258
- }], slotChar: [{
259
- type: Input
260
- }], disabled: [{
261
- type: Input
262
- }], pattern: [{
263
- type: Input
264
- }], blurEvent: [{
265
- type: Output
266
- }], inputEvent: [{
267
- type: Output
268
- }], enterKeyPress: [{
269
- type: Output
270
- }], backSpaceKeyPress: [{
271
- type: Output
272
- }], focusEvent: [{
273
- type: Output
274
- }], onDocumentTypeChange: [{
275
- type: Output
276
- }] } });
277
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2ZpZWxkcy90ZXh0LWZpZWxkL3RleHQtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9maWVsZHMvdGV4dC1maWVsZC90ZXh0LWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBTzFDLE1BQU0sT0FBTyxrQkFBa0I7SUFML0I7UUFPUyxlQUFVLEdBQVksS0FBSyxDQUFDO1FBRTVCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFFbkIsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUV2QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5CLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFaEIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFeEIsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFeEIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVoQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRWpCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUU1QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVyQiw4QkFBeUIsR0FBRyxLQUFLLENBQUM7UUFJbEMsY0FBUyxHQUFHLElB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c0JBQXBDLEtBQUs7Z0JBUUMsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUdDLFNBQVM7c0JBRGYsS0FBSztnQkFHRixPQUFPO3NCQURWLEtBQUs7Z0JBcUJDLE9BQU87c0JBRGIsS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBR0MsUUFBUTtzQkFEZCxLQUFLO2dCQUdDLE9BQU87c0JBRGIsS0FBSztnQkFHQyxTQUFTO3NCQURmLE1BQU07Z0JBR0EsVUFBVTtzQkFEaEIsTUFBTTtnQkFHQSxhQUFhO3NCQURuQixNQUFNO2dCQUdBLGlCQUFpQjtzQkFEdkIsTUFBTTtnQkFHQSxVQUFVO3NCQURoQixNQUFNO2dCQUdBLG9CQUFvQjtzQkFEMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEb2N1bWVudFR5cGUsIExpc3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IE1hc2tVdGlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2ZWN0b3ItdGV4dC1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGV4dC1maWVsZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUZXh0RmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpc1JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhsZW5ndGg6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgaXNQYXNzd29yZCA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbnVtZXJpYyA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbnVtZXJpY1Bvc2l0aXZlID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBudW1lcmljRG90Q29tbWEgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIGRlY2ltYWwgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIG9ubHlUZXh0ID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBub1NwZWNpYWxDaGFyYWN0ZXJzID0gZmFsc2U7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbHBoYU51bWVyaWMgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIGFscGhhTnVtZXJpY0FuZFdoaXRlc3BhY2UgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIG1hc2s/OiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhdXRvQ2xlYXIgPSB0cnVlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIHJpZ2h0SWNvbiA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgY2VudGVyZWQgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIF9lbmFibGVEb2N1bWVudFR5cGVDaG9pY2UgPSBmYWxzZTtcbiAgQElucHV0KCkgc2V0IGVuYWJsZURvY3VtZW50VHlwZUNob2ljZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2VuYWJsZURvY3VtZW50VHlwZUNob2ljZSA9IHZhbHVlO1xuICAgIHRoaXMuaGFuZGxlRG9jdW1lbnRUeXBlQ2hhbmdlKCk7XG4gIH1cbiAgZ2V0IGVuYWJsZURvY3VtZW50VHlwZUNob2ljZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlRG9jdW1lbnRUeXBlQ2hvaWNlO1xuICB9XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoaWRkZW5FcnJvck1lc3NhZ2U6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIGxlZnRMYWJlbD86IHN0cmluZztcbiAgQElucHV0KClcbiAgc2V0IGNvbnRyb2woX2NvbnRyb2w6IGFueSkge1xuICAgIHRoaXMuX2NvbnRyb2wgPSBfY29udHJvbDtcbiAgICBpZiAodGhpcy5fZW5hYmxlRG9jdW1lbnRUeXBlQ2hvaWNlKSB7XG4gICAgICB0aGlzLmhhbmRsZUluaXRpYWxEb2N1bWVudFR5cGVTdGF0ZSgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbnRyb2xTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuY29udHJvbFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5jb250cm9sU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICAgIH1cbiAgICB0aGlzLmNvbnRyb2xTdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX2VuYWJsZURvY3VtZW50VHlwZUNob2ljZSAmJiAhdGhpcy5sYXN0VHlwZWRWYWx1ZSAmJiB2YWx1ZT8ubGVuZ3RoID4gMTEpIHtcbiAgICAgICAgICB0aGlzLmhhbmRsZUluaXRpYWxEb2N1bWVudFR5cGVTdGF0ZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubGFzdFR5cGVkVmFsdWUgPSB2YWx1ZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5wdXRJZD86IHN0cmluZztcbiAgQElucHV0KClcbiAgcHVibGljIHNsb3RDaGFyID0gJ18nO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KClcbiAgcHVibGljIHBhdHRlcm46IHN0cmluZyA9ICcnO1xuICBAT3V0cHV0KClcbiAgcHVibGljIGJsdXJFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBpbnB1dEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KClcbiAgcHVibGljIGVudGVyS2V5UHJlc3MgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgYmFja1NwYWNlS2V5UHJlc3MgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZm9jdXNFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvbkRvY3VtZW50VHlwZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TGlzdEl0ZW0+KCk7XG5cbiAgcHVibGljIGlzUGFzc3dvcmRWaXNpYmxlID0gZmFsc2U7XG4gIHB1YmxpYyB2YWxpZGF0ZU9ubHkgPSBmYWxzZTtcblxuICBnZXQgcGxhY2Vob2xkZXIoKSB7XG4gICAgaWYgKCF0aGlzLmxhYmVsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLmxhYmVsfSR7dGhpcy5pc1JlcXVpcmVkID8gJyonIDogJyd9YDtcbiAgfVxuXG4gIGdldCBrZXlmaWx0ZXIoKSB7XG4gICAgdGhpcy52YWxpZGF0ZU9ubHkgPSBmYWxzZTtcbiAgICBpZiAodGhpcy5udW1lcmljKSB7XG4gICAgICByZXR1cm4gJ2ludCc7XG4gICAgfVxuICAgIGlmICh0aGlzLm51bWVyaWNQb3NpdGl2ZSkge1xuICAgICAgcmV0dXJuICdwaW50JztcbiAgICB9XG4gICAgaWYgKHRoaXMuZGVjaW1hbCkge1xuICAgICAgdGhpcy52YWxpZGF0ZU9ubHkgPSB0cnVlO1xuICAgICAgcmV0dXJuIC9eKFxcZCsoPzpbXFwsXVxcZHsyfSk/KSQvO1xuICAgIH1cbiAgICBpZiAodGhpcy5vbmx5VGV4dCkge1xuICAgICAgdGhpcy52YWxpZGF0ZU9ubHkgPSB0cnVlO1xuICAgICAgcmV0dXJuIC9eW2EtekEtWsOALcO6XFxzXSokL2dtO1xuICAgIH1cbiAgICBpZiAodGhpcy5hbHBoYU51bWVyaWMpIHtcbiAgICAgIHJldHVybiAnYWxwaGFudW0nO1xuICAgIH1cbiAgICBpZiAodGhpcy5hbHBoYU51bWVyaWNBbmRXaGl0ZXNwYWNlKSB7XG4gICAgICByZXR1cm4gL15bQS1aYS16w4Atw7owLTkgXSokL2dtO1xuICAgIH1cbiAgICBpZiAodGhpcy5udW1lcmljRG90Q29tbWEpIHtcbiAgICAgIHJldHVybiAnbW9uZXknO1xuICAgIH1cbiAgICBpZiAodGhpcy5ub1NwZWNpYWxDaGFyYWN0ZXJzKSB7XG4gICAgICByZXR1cm4gL15bYS16QS1aw4Atw5bDmC3DtsO4LcO/MC05XFxzXSskLztcbiAgICB9XG4gICAgcmV0dXJuIC9bXFxzXFxTXSovO1xuICB9XG5cbiAgZ2V0IGNvbnRyb2woKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRyb2w7XG4gIH1cblxuICBnZXQgc2hvd1Bhc3N3b3JkSWNvbigpIHtcbiAgICByZXR1cm4gdGhpcy5pc1Bhc3N3b3JkVmlzaWJsZSA/ICdmYXMgZmEtZXllJyA6ICdmYXMgZmEtZXllLXNsYXNoJztcbiAgfVxuXG4gIHB1YmxpYyBkb2N1bWVudFR5cGVzOiBMaXN0SXRlbVtdID0gW1xuICAgIHtcbiAgICAgIG5hbWU6ICdDUEYnLFxuICAgICAgY29kZTogRG9jdW1lbnRUeXBlLkNQRixcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdDTlBKJyxcbiAgICAgIGNvZGU6IERvY3VtZW50VHlwZS5DTlBKLFxuICAgIH0sXG4gIF07XG5cbiAgcHVibGljIHNlbGVjdGVkRG9jdW1lbnRUeXBlID0gdGhpcy5kb2N1bWVudFR5cGVzWzFdO1xuXG4gIHByaXZhdGUgbGFzdEJsdXJWYWx1ZSA9ICcnO1xuICBwcml2YXRlIGxhc3RUeXBlZFZhbHVlID0gJyc7XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICBwcml2YXRlIGNvbnRyb2xTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIHByaXZhdGUgX2NvbnRyb2w6IGFueTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5fZW5hYmxlRG9jdW1lbnRUeXBlQ2hvaWNlKSB7XG4gICAgICB0aGlzLnNldERvY3VtZW50VHlwZSh0aGlzLnNlbGVjdGVkRG9jdW1lbnRUeXBlLmNvZGUpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5jb250cm9sU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgb25CbHVyKCkge1xuICAgIHRoaXMuY29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgaWYgKHRoaXMubGFzdEJsdXJWYWx1ZSAhPT0gdGhpcy5jb250cm9sLnZhbHVlKSB7XG4gICAgICB0aGlzLmxhc3RCbHVyVmFsdWUgPSB0aGlzLmNvbnRyb2wudmFsdWU7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5ibHVyRXZlbnQuZW1pdCh0aGlzLmNvbnRyb2wudmFsdWUpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uSW5wdXQoJGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IHRhcmdldCA9ICRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICB0aGlzLmlucHV0RXZlbnQuZW1pdCh0YXJnZXQudmFsdWUpO1xuICB9XG5cbiAgcHVibGljIG9uRW50ZXJQcmVzcygpIHtcbiAgICB0aGlzLm9uQmx1cigpO1xuICAgIHRoaXMuZW50ZXJLZXlQcmVzcy5lbWl0KCk7XG4gIH1cbiAgcHVibGljIG9uQmFja1NwYWNlUHJlc3MoKSB7XG4gICAgdGhpcy5vbkJsdXIoKTtcbiAgICB0aGlzLmJhY2tTcGFjZUtleVByZXNzLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZvY3VzKCRldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSAkZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgaWYgKHRoaXMubWFzaykge1xuICAgICAgY29uc3QgZmlyc3RVbmRlcnNjb3JlID0gdGFyZ2V0Py52YWx1ZS5pbmRleE9mKCdfJyk7XG4gICAgICBjb25zdCBzZWxlY3Rpb25JbmRleCA9IChmaXJzdFVuZGVyc2NvcmUgPj0gMCA/IGZpcnN0VW5kZXJzY29yZSA6IHRhcmdldD8udmFsdWUubGVuZ3RoKSB8fCAwO1xuICAgICAgdGFyZ2V0Py5zZXRTZWxlY3Rpb25SYW5nZShzZWxlY3Rpb25JbmRleCwgc2VsZWN0aW9uSW5kZXgpO1xuICAgIH1cbiAgICB0aGlzLmZvY3VzRXZlbnQuZW1pdCh0YXJnZXQ/LnZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVTaG93UGFzc3dvcmQoKSB7XG4gICAgdGhpcy5pc1Bhc3N3b3JkVmlzaWJsZSA9ICF0aGlzLmlzUGFzc3dvcmRWaXNpYmxlO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZURvY3VtZW50VHlwZUNoYW5nZSgpIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZS5jb2RlID09PSBEb2N1bWVudFR5cGUuQ05QSikge1xuICAgICAgdGhpcy5zZXREb2N1bWVudFR5cGUoRG9jdW1lbnRUeXBlLkNQRik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0RG9jdW1lbnRUeXBlKERvY3VtZW50VHlwZS5DTlBKKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUluaXRpYWxEb2N1bWVudFR5cGVTdGF0ZSgpIHtcbiAgICBpZiAodGhpcy5jb250cm9sPy52YWx1ZSkge1xuICAgICAgaWYgKHRoaXMuY29udHJvbC52YWx1ZS5sZW5ndGggPT09IDExKSB7XG4gICAgICAgIHRoaXMuc2V0RG9jdW1lbnRUeXBlKERvY3VtZW50VHlwZS5DUEYpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZXREb2N1bWVudFR5cGUoRG9jdW1lbnRUeXBlLkNOUEopO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNldERvY3VtZW50VHlwZShEb2N1bWVudFR5cGUuQ1BGKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldERvY3VtZW50VHlwZShkb2N1bWVudFR5cGU6IERvY3VtZW50VHlwZSkge1xuICAgIGlmICh0aGlzLl9lbmFibGVEb2N1bWVudFR5cGVDaG9pY2UpIHtcbiAgICAgIHN3aXRjaCAoZG9jdW1lbnRUeXBlKSB7XG4gICAgICAgIGNhc2UgRG9jdW1lbnRUeXBlLkNOUEo6XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZSA9IHRoaXMuZG9jdW1lbnRUeXBlc1sxXTtcbiAgICAgICAgICB0aGlzLm1hc2sgPSBNYXNrVXRpbC5DTlBKX1RFWFRfRklFTERfUEFUVEVSTjtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBEb2N1bWVudFR5cGUuQ1BGOlxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWREb2N1bWVudFR5cGUgPSB0aGlzLmRvY3VtZW50VHlwZXNbMF07XG4gICAgICAgICAgdGhpcy5tYXNrID0gTWFza1V0aWwuQ1BGX1RFWFRfRklFTERfUEFUVEVSTjtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tYXNrID0gJyc7XG4gICAgfVxuICAgIHRoaXMub25Eb2N1bWVudFR5cGVDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkRG9jdW1lbnRUeXBlKTtcbiAgfVxufVxuIiwiPGZvcm0gY2xhc3M9XCJpbnB1dC1jb250YWluZXIgcC1pbnB1dC1pY29uLXJpZ2h0XCI+XG4gIDxpICpuZ0lmPVwicmlnaHRJY29uXCIgW2NsYXNzXT1cInJpZ2h0SWNvblwiPjwvaT5cbiAgPGkgKm5nSWY9XCJpc1Bhc3N3b3JkXCIgY2xhc3M9XCJzaG93LXBhc3N3b3JkLWljb24ge3sgc2hvd1Bhc3N3b3JkSWNvbiB9fVwiIChjbGljayk9XCJ0b2dnbGVTaG93UGFzc3dvcmQoKVwiPjwvaT5cbiAgPGRpdiBjbGFzcz1cInAtaW5wdXRncm91cFwiICpuZ0lmPVwiIWlucHV0SWRcIj5cbiAgICA8dmVjdG9yLWJ1dHRvblxuICAgICAgKm5nSWY9XCJlbmFibGVEb2N1bWVudFR5cGVDaG9pY2VcIlxuICAgICAgbGVmdEljb249XCJmYXMgZmEtZXhjaGFuZ2UtYWx0XCJcbiAgICAgIHR5cGU9XCJzdWNjZXNzXCJcbiAgICAgIFtsYWJlbF09XCJzZWxlY3RlZERvY3VtZW50VHlwZS5uYW1lXCJcbiAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCJcbiAgICAgIFtub1NoYWRvd109XCJ0cnVlXCJcbiAgICAgIChvbkNsaWNrKT1cImhhbmRsZURvY3VtZW50VHlwZUNoYW5nZSgpXCJcbiAgICA+PC92ZWN0b3ItYnV0dG9uPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJsZWZ0TGFiZWxcIiBjbGFzcz1cImxlZnQtbGFiZWxcIj5cbiAgICAgIHt7IGxlZnRMYWJlbCB9fVxuICAgIDwvc3Bhbj5cblxuICAgIDxpbnB1dFxuICAgICAgKm5nSWY9XCIhbWFza1wiXG4gICAgICBwSW5wdXRUZXh0XG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbcFZhbGlkYXRlT25seV09XCJ2YWxpZGF0ZU9ubHlcIlxuICAgICAgW3BLZXlGaWx0ZXJdPVwia2V5ZmlsdGVyXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ3Bhc3N3b3JkLWZpZWxkJzogaXNQYXNzd29yZCAmJiAhaXNQYXNzd29yZFZpc2libGUsICd0ZXh0LWNlbnRlcmVkJzogY2VudGVyZWQgfVwiXG4gICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uRW50ZXJQcmVzcygpXCJcbiAgICAgIChrZXlkb3duLmJhY2tzcGFjZSk9XCJvbkJhY2tTcGFjZVByZXNzKClcIlxuICAgICAgKGNsaWNrKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgPyB0cnVlIDogbnVsbFwiXG4gICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICAvPlxuICAgIDxwLWlucHV0TWFza1xuICAgICAgKm5nSWY9XCJtYXNrXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIFtpbnB1dElkXT1cImlucHV0SWQgfHwgJ21hc2stZmllbGQnXCJcbiAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgIFttYXNrXT1cIm1hc2tcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIChvbkJsdXIpPVwib25CbHVyKClcIlxuICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlclByZXNzKClcIlxuICAgICAgKGtleWRvd24uYmFja3NwYWNlKT1cIm9uQmFja1NwYWNlUHJlc3MoKVwiXG4gICAgICBbYXV0b0NsZWFyXT1cImF1dG9DbGVhclwiXG4gICAgICBbdW5tYXNrXT1cInRydWVcIlxuICAgICAgW3N0eWxlQ2xhc3NdPVwiY2VudGVyZWQgPyAndGV4dC1jZW50ZXJlZCcgOiAnJ1wiXG4gICAgICBbc2xvdENoYXJdPVwic2xvdENoYXJcIlxuICAgICAgKGNsaWNrKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICA+PC9wLWlucHV0TWFzaz5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJwLWlucHV0Z3JvdXBcIiAqbmdJZj1cImlucHV0SWRcIj5cbiAgICA8dmVjdG9yLWJ1dHRvblxuICAgICAgKm5nSWY9XCJlbmFibGVEb2N1bWVudFR5cGVDaG9pY2VcIlxuICAgICAgbGVmdEljb249XCJmYXMgZmEtZXhjaGFuZ2UtYWx0XCJcbiAgICAgIHR5cGU9XCJzdWNjZXNzXCJcbiAgICAgIFtsYWJlbF09XCJzZWxlY3RlZERvY3VtZW50VHlwZS5uYW1lXCJcbiAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sLmRpc2FibGVkXCJcbiAgICAgIFtub1NoYWRvd109XCJ0cnVlXCJcbiAgICAgIChvbkNsaWNrKT1cImhhbmRsZURvY3VtZW50VHlwZUNoYW5nZSgpXCJcbiAgICA+PC92ZWN0b3ItYnV0dG9uPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJsZWZ0TGFiZWxcIiBjbGFzcz1cImxlZnQtbGFiZWxcIj5cbiAgICAgIHt7IGxlZnRMYWJlbCB9fVxuICAgIDwvc3Bhbj5cblxuICAgIDxpbnB1dFxuICAgICAgKm5nSWY9XCIhbWFza1wiXG4gICAgICBbaWRdPVwiaW5wdXRJZFwiXG4gICAgICBwSW5wdXRUZXh0XG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbcFZhbGlkYXRlT25seV09XCJ2YWxpZGF0ZU9ubHlcIlxuICAgICAgW3BLZXlGaWx0ZXJdPVwia2V5ZmlsdGVyXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ3Bhc3N3b3JkLWZpZWxkJzogaXNQYXNzd29yZCAmJiAhaXNQYXNzd29yZFZpc2libGUsICd0ZXh0LWNlbnRlcmVkJzogY2VudGVyZWQgfVwiXG4gICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXG4gICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uRW50ZXJQcmVzcygpXCJcbiAgICAgIChrZXlkb3duLmJhY2tzcGFjZSk9XCJvbkJhY2tTcGFjZVByZXNzKClcIlxuICAgICAgKGNsaWNrKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgPyB0cnVlIDogbnVsbFwiXG4gICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICAvPlxuICAgIDxwLWlucHV0TWFza1xuICAgICAgKm5nSWY9XCJtYXNrXCJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgIFtpbnB1dElkXT1cImlucHV0SWQgfHwgJ21hc2stZmllbGQnXCJcbiAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgIFttYXNrXT1cIm1hc2tcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIChvbkJsdXIpPVwib25CbHVyKClcIlxuICAgICAgKGtleWRvd24uZW50ZXIpPVwib25FbnRlclByZXNzKClcIlxuICAgICAgKGtleWRvd24uYmFja3NwYWNlKT1cIm9uQmFja1NwYWNlUHJlc3MoKVwiXG4gICAgICBbYXV0b0NsZWFyXT1cImF1dG9DbGVhclwiXG4gICAgICBbdW5tYXNrXT1cInRydWVcIlxuICAgICAgW3N0eWxlQ2xhc3NdPVwiY2VudGVyZWQgPyAndGV4dC1jZW50ZXJlZCcgOiAnJ1wiXG4gICAgICBbc2xvdENoYXJdPVwic2xvdENoYXJcIlxuICAgICAgKGNsaWNrKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICBbcGF0dGVybl09XCJwYXR0ZXJuXCJcbiAgICA+PC9wLWlucHV0TWFzaz5cbiAgPC9kaXY+XG4gIDx2ZWN0b3ItZmllbGQtZXJyb3ItbWVzc2FnZSAqbmdJZj1cIiFoaWRkZW5FcnJvck1lc3NhZ2VcIiBbY29udHJvbF09XCJjb250cm9sXCI+PC92ZWN0b3ItZmllbGQtZXJyb3ItbWVzc2FnZT5cbjwvZm9ybT5cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './textarea-field.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2ZpZWxkcy90ZXh0YXJlYS1maWVsZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90ZXh0YXJlYS1maWVsZC5jb21wb25lbnQnO1xuIl19
@@ -1,81 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/forms";
4
- import * as i2 from "primeng/inputtextarea";
5
- export class TextareaFieldComponent {
6
- constructor() {
7
- this.isRequired = false;
8
- this.label = '';
9
- this.maxlength = '';
10
- this.rows = 5;
11
- this.cols = 10;
12
- this.blurEvent = new EventEmitter();
13
- this.enterKeyPress = new EventEmitter();
14
- this.focusEvent = new EventEmitter();
15
- this.lastBlurValue = '';
16
- }
17
- get placeholder() {
18
- if (!this.label) {
19
- return '';
20
- }
21
- return `${this.label}${this.isRequired ? '*' : ''}`;
22
- }
23
- ngOnInit() { }
24
- fieldErrorLabel() {
25
- if (this.control && this.control.invalid && this.control.touched) {
26
- if (this.control.hasError('required')) {
27
- return 'Campo obrigatório';
28
- }
29
- if (this.control.hasError('minlength')) {
30
- return `Tamanho mínimo: ${this.control.errors['minlength'].requiredLength}`;
31
- }
32
- if (this.control.hasError('maxlength')) {
33
- return `Tamanho máximo permitido: ${this.control.errors['maxlength'].requiredLength}`;
34
- }
35
- return typeof this.control.errors['invalid'] === 'string' ? this.control.errors['invalid'] : 'Campo inválido';
36
- }
37
- return '';
38
- }
39
- onBlur() {
40
- this.control.markAsTouched();
41
- if (this.lastBlurValue !== this.control.value) {
42
- this.lastBlurValue = this.control.value;
43
- setTimeout(() => {
44
- this.blurEvent.emit(this.control.value);
45
- });
46
- }
47
- }
48
- onEnterPress() {
49
- this.onBlur();
50
- this.enterKeyPress.emit();
51
- }
52
- onFocus($event) {
53
- const target = $event.target;
54
- this.focusEvent.emit(target?.value);
55
- }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextareaFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TextareaFieldComponent, selector: "vector-textarea-field", inputs: { isRequired: "isRequired", label: "label", maxlength: "maxlength", rows: "rows", cols: "cols", control: "control" }, outputs: { blurEvent: "blurEvent", enterKeyPress: "enterKeyPress", focusEvent: "focusEvent" }, ngImport: i0, template: "<form class=\"input-container\">\n <textarea\n pInputTextarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [autoResize]=\"false\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (click)=\"onFocus($event)\"\n >\n </textarea>\n <span class=\"length-control\">{{ control?.value?.length || 0 }} / {{ maxlength }}</span>\n</form>\n", styles: [".input-container{width:100%;position:relative}.input-container .length-control{position:absolute;right:15px;bottom:15px;opacity:.8;font-size:.6rem}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }] }); }
58
- }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextareaFieldComponent, decorators: [{
60
- type: Component,
61
- args: [{ selector: 'vector-textarea-field', template: "<form class=\"input-container\">\n <textarea\n pInputTextarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [formControl]=\"control\"\n [attr.maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [autoResize]=\"false\"\n (onBlur)=\"onBlur()\"\n (keydown.enter)=\"onEnterPress()\"\n (click)=\"onFocus($event)\"\n >\n </textarea>\n <span class=\"length-control\">{{ control?.value?.length || 0 }} / {{ maxlength }}</span>\n</form>\n", styles: [".input-container{width:100%;position:relative}.input-container .length-control{position:absolute;right:15px;bottom:15px;opacity:.8;font-size:.6rem}\n"] }]
62
- }], propDecorators: { isRequired: [{
63
- type: Input
64
- }], label: [{
65
- type: Input
66
- }], maxlength: [{
67
- type: Input
68
- }], rows: [{
69
- type: Input
70
- }], cols: [{
71
- type: Input
72
- }], control: [{
73
- type: Input
74
- }], blurEvent: [{
75
- type: Output
76
- }], enterKeyPress: [{
77
- type: Output
78
- }], focusEvent: [{
79
- type: Output
80
- }] } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9maWVsZHMvdGV4dGFyZWEtZmllbGQvdGV4dGFyZWEtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZlY3Rvci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9maWVsZHMvdGV4dGFyZWEtZmllbGQvdGV4dGFyZWEtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQU8vRSxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBT1MsZUFBVSxHQUF3QixLQUFLLENBQUM7UUFFeEMsVUFBSyxHQUF1QixFQUFFLENBQUM7UUFFL0IsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUV2QixTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBRWpCLFNBQUksR0FBVyxFQUFFLENBQUM7UUFJbEIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFL0Isa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRW5DLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBUy9CLGtCQUFhLEdBQUcsRUFBRSxDQUFDO0tBMkM1QjtJQWxEQyxJQUFJLFdBQVc7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFJRCxRQUFRLEtBQUksQ0FBQztJQUVOLGVBQWU7UUFDcEIsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ2hFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ3JDLE9BQU8sbUJBQW1CLENBQUM7YUFDNUI7WUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUN0QyxPQUFPLG1CQUFtQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQzthQUM3RTtZQUVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQ3RDLE9BQU8sNkJBQTZCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQ3ZGO1lBRUQsT0FBTyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDO1NBQy9HO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFO1lBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDeEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxPQUFPLENBQUMsTUFBYTtRQUMxQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBNkIsQ0FBQztRQUNwRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQzsrR0FyRVUsc0JBQXNCO21HQUF0QixzQkFBc0IsMFJDUG5DLCtjQWdCQTs7NEZEVGEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFNMUIsVUFBVTtzQkFEaEIsS0FBSztnQkFHQyxLQUFLO3NCQURYLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLO2dCQUdDLElBQUk7c0JBRFYsS0FBSztnQkFHQyxJQUFJO3NCQURWLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUdDLFNBQVM7c0JBRGYsTUFBTTtnQkFHQSxhQUFhO3NCQURuQixNQUFNO2dCQUdBLFVBQVU7c0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZlY3Rvci10ZXh0YXJlYS1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0YXJlYS1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RleHRhcmVhLWZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRleHRhcmVhRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBwdWJsaWMgaXNSZXF1aXJlZDogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWF4bGVuZ3RoOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KClcbiAgcHVibGljIHJvd3M6IG51bWJlciA9IDU7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xzOiBudW1iZXIgPSAxMDtcbiAgQElucHV0KClcbiAgcHVibGljIGNvbnRyb2w6IGFueTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBibHVyRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZW50ZXJLZXlQcmVzcyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmb2N1c0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGdldCBwbGFjZWhvbGRlcigpIHtcbiAgICBpZiAoIXRoaXMubGFiZWwpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgcmV0dXJuIGAke3RoaXMubGFiZWx9JHt0aGlzLmlzUmVxdWlyZWQgPyAnKicgOiAnJ31gO1xuICB9XG5cbiAgcHJpdmF0ZSBsYXN0Qmx1clZhbHVlID0gJyc7XG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIHB1YmxpYyBmaWVsZEVycm9yTGFiZWwoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5jb250cm9sICYmIHRoaXMuY29udHJvbC5pbnZhbGlkICYmIHRoaXMuY29udHJvbC50b3VjaGVkKSB7XG4gICAgICBpZiAodGhpcy5jb250cm9sLmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICAgIHJldHVybiAnQ2FtcG8gb2JyaWdhdMOzcmlvJztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuY29udHJvbC5oYXNFcnJvcignbWlubGVuZ3RoJykpIHtcbiAgICAgICAgcmV0dXJuIGBUYW1hbmhvIG3DrW5pbW86ICR7dGhpcy5jb250cm9sLmVycm9yc1snbWlubGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh9YDtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuY29udHJvbC5oYXNFcnJvcignbWF4bGVuZ3RoJykpIHtcbiAgICAgICAgcmV0dXJuIGBUYW1hbmhvIG3DoXhpbW8gcGVybWl0aWRvOiAke3RoaXMuY29udHJvbC5lcnJvcnNbJ21heGxlbmd0aCddLnJlcXVpcmVkTGVuZ3RofWA7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0eXBlb2YgdGhpcy5jb250cm9sLmVycm9yc1snaW52YWxpZCddID09PSAnc3RyaW5nJyA/IHRoaXMuY29udHJvbC5lcnJvcnNbJ2ludmFsaWQnXSA6ICdDYW1wbyBpbnbDoWxpZG8nO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHB1YmxpYyBvbkJsdXIoKSB7XG4gICAgdGhpcy5jb250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICBpZiAodGhpcy5sYXN0Qmx1clZhbHVlICE9PSB0aGlzLmNvbnRyb2wudmFsdWUpIHtcbiAgICAgIHRoaXMubGFzdEJsdXJWYWx1ZSA9IHRoaXMuY29udHJvbC52YWx1ZTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmJsdXJFdmVudC5lbWl0KHRoaXMuY29udHJvbC52YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25FbnRlclByZXNzKCkge1xuICAgIHRoaXMub25CbHVyKCk7XG4gICAgdGhpcy5lbnRlcktleVByZXNzLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZvY3VzKCRldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCB0YXJnZXQgPSAkZXZlbnQudGFyZ2V0IGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQ7XG4gICAgdGhpcy5mb2N1c0V2ZW50LmVtaXQodGFyZ2V0Py52YWx1ZSk7XG4gIH1cbn1cbiIsIjxmb3JtIGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gIDx0ZXh0YXJlYVxuICAgIHBJbnB1dFRleHRhcmVhXG4gICAgW3Jvd3NdPVwicm93c1wiXG4gICAgW2NvbHNdPVwiY29sc1wiXG4gICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgW2F1dG9SZXNpemVdPVwiZmFsc2VcIlxuICAgIChvbkJsdXIpPVwib25CbHVyKClcIlxuICAgIChrZXlkb3duLmVudGVyKT1cIm9uRW50ZXJQcmVzcygpXCJcbiAgICAoY2xpY2spPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgPlxuICA8L3RleHRhcmVhPlxuICA8c3BhbiBjbGFzcz1cImxlbmd0aC1jb250cm9sXCI+e3sgY29udHJvbD8udmFsdWU/Lmxlbmd0aCB8fCAwIH19IC8ge3sgbWF4bGVuZ3RoIH19PC9zcGFuPlxuPC9mb3JtPlxuIl19
@@ -1,33 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { Subscription } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../services";
5
- import * as i2 from "primeng/dialog";
6
- import * as i3 from "../fields/button/button.component";
7
- export class GenericErrorModalComponent {
8
- constructor(errorService) {
9
- this.errorService = errorService;
10
- this.skipMessages = [];
11
- this.message = '';
12
- this.subscription = new Subscription();
13
- this.subscription.add(this.errorService.genericModalErrorMessage$.pipe().subscribe((message) => {
14
- this.message = message;
15
- }));
16
- }
17
- ngOnInit() { }
18
- ngOnDestroy() {
19
- this.subscription.unsubscribe();
20
- }
21
- close() {
22
- this.message = '';
23
- }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericErrorModalComponent, deps: [{ token: i1.ErrorMessageService }], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: GenericErrorModalComponent, selector: "vector-generic-error-modal", inputs: { skipMessages: "skipMessages" }, ngImport: i0, template: "<p-dialog\n [visible]=\"!!message\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"true\"\n>\n <div class=\"content-container\">\n <img class=\"emote\" src=\".././../../assets/images/emote_bad.svg\" />\n <p class=\"title\">Algo deu errado!</p>\n <p class=\"message\">{{ message }}</p>\n\n <div class=\"actions\">\n <vector-button (click)=\"close()\" label=\"Voltar\"></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".content-container{display:flex;flex-direction:column;justify-content:center;align-items:center}.content-container .title{text-align:center;color:var(--theme-dark);font-weight:600;margin-bottom:20px}.content-container .emote{height:40px;width:40px}@media (min-width: 991px){.content-container .emote{height:60px;width:60px}}.content-container .actions{margin-top:20px;width:100%;display:flex;flex-direction:row;justify-content:center;align-items:center}.content-container .actions vector-button{width:75%}\n"], dependencies: [{ kind: "component", type: i2.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: i3.ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }] }); }
26
- }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericErrorModalComponent, decorators: [{
28
- type: Component,
29
- args: [{ selector: 'vector-generic-error-modal', template: "<p-dialog\n [visible]=\"!!message\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"true\"\n>\n <div class=\"content-container\">\n <img class=\"emote\" src=\".././../../assets/images/emote_bad.svg\" />\n <p class=\"title\">Algo deu errado!</p>\n <p class=\"message\">{{ message }}</p>\n\n <div class=\"actions\">\n <vector-button (click)=\"close()\" label=\"Voltar\"></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".content-container{display:flex;flex-direction:column;justify-content:center;align-items:center}.content-container .title{text-align:center;color:var(--theme-dark);font-weight:600;margin-bottom:20px}.content-container .emote{height:40px;width:40px}@media (min-width: 991px){.content-container .emote{height:60px;width:60px}}.content-container .actions{margin-top:20px;width:100%;display:flex;flex-direction:row;justify-content:center;align-items:center}.content-container .actions vector-button{width:75%}\n"] }]
30
- }], ctorParameters: () => [{ type: i1.ErrorMessageService }], propDecorators: { skipMessages: [{
31
- type: Input
32
- }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1lcnJvci1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2dlbmVyaWMtZXJyb3ItbW9kYWwvZ2VuZXJpYy1lcnJvci1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2dlbmVyaWMtZXJyb3ItbW9kYWwvZ2VuZXJpYy1lcnJvci1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFRcEMsTUFBTSxPQUFPLDBCQUEwQjtJQU9yQyxZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFMOUMsaUJBQVksR0FBYSxFQUFFLENBQUM7UUFDNUIsWUFBTyxHQUFZLEVBQUUsQ0FBQztRQUVyQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQ25CLElBQUksQ0FBQyxZQUFZLENBQUMseUJBQXlCLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDdkUsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3BCLENBQUM7K0dBdkJVLDBCQUEwQjttR0FBMUIsMEJBQTBCLDRHQ1R2QyxrbUJBcUJBOzs0RkRaYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsNEJBQTRCO3dGQU0vQixZQUFZO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVjdG9yLWdlbmVyaWMtZXJyb3ItbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1lcnJvci1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dlbmVyaWMtZXJyb3ItbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR2VuZXJpY0Vycm9yTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBza2lwTWVzc2FnZXM6IHN0cmluZ1tdID0gW107XG4gIHB1YmxpYyBtZXNzYWdlPzogc3RyaW5nID0gJyc7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlcnJvclNlcnZpY2U6IEVycm9yTWVzc2FnZVNlcnZpY2UpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLmVycm9yU2VydmljZS5nZW5lcmljTW9kYWxFcnJvck1lc3NhZ2UkLnBpcGUoKS5zdWJzY3JpYmUoKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgdGhpcy5tZXNzYWdlID0gbWVzc2FnZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGNsb3NlKCkge1xuICAgIHRoaXMubWVzc2FnZSA9ICcnO1xuICB9XG59XG4iLCI8cC1kaWFsb2dcbiAgW3Zpc2libGVdPVwiISFtZXNzYWdlXCJcbiAgW21vZGFsXT1cInRydWVcIlxuICBbYnJlYWtwb2ludHNdPVwieyAnNDQwcHgnOiAnOTV2dycgfVwiXG4gIFtzdHlsZV09XCJ7IHdpZHRoOiAnNDAwcHgnIH1cIlxuICBbZHJhZ2dhYmxlXT1cImZhbHNlXCJcbiAgW3Jlc2l6YWJsZV09XCJmYWxzZVwiXG4gIFtibG9ja1Njcm9sbF09XCJ0cnVlXCJcbiAgW2Nsb3NlT25Fc2NhcGVdPVwiZmFsc2VcIlxuICBbY2xvc2FibGVdPVwidHJ1ZVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJjb250ZW50LWNvbnRhaW5lclwiPlxuICAgIDxpbWcgY2xhc3M9XCJlbW90ZVwiIHNyYz1cIi4uLy4vLi4vLi4vYXNzZXRzL2ltYWdlcy9lbW90ZV9iYWQuc3ZnXCIgLz5cbiAgICA8cCBjbGFzcz1cInRpdGxlXCI+QWxnbyBkZXUgZXJyYWRvITwvcD5cbiAgICA8cCBjbGFzcz1cIm1lc3NhZ2VcIj57eyBtZXNzYWdlIH19PC9wPlxuXG4gICAgPGRpdiBjbGFzcz1cImFjdGlvbnNcIj5cbiAgICAgIDx2ZWN0b3ItYnV0dG9uIChjbGljayk9XCJjbG9zZSgpXCIgbGFiZWw9XCJWb2x0YXJcIj48L3ZlY3Rvci1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9wLWRpYWxvZz5cbiJdfQ==
@@ -1,20 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { DialogModule } from 'primeng/dialog';
3
- import { SharedModule } from '../../shared/shared.module';
4
- import { FieldsModule } from '../fields/fields.module';
5
- import { GenericErrorModalComponent } from './generic-error-modal.component';
6
- import * as i0 from "@angular/core";
7
- export class GenericErrorModalModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericErrorModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: GenericErrorModalModule, declarations: [GenericErrorModalComponent], imports: [SharedModule, DialogModule, FieldsModule], exports: [GenericErrorModalComponent] }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericErrorModalModule, imports: [SharedModule, DialogModule, FieldsModule] }); }
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericErrorModalModule, decorators: [{
13
- type: NgModule,
14
- args: [{
15
- declarations: [GenericErrorModalComponent],
16
- imports: [SharedModule, DialogModule, FieldsModule],
17
- exports: [GenericErrorModalComponent],
18
- }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1lcnJvci1tb2RhbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2dlbmVyaWMtZXJyb3ItbW9kYWwvZ2VuZXJpYy1lcnJvci1tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFNN0UsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO2dIQUF2Qix1QkFBdUIsaUJBSm5CLDBCQUEwQixhQUMvQixZQUFZLEVBQUUsWUFBWSxFQUFFLFlBQVksYUFDeEMsMEJBQTBCO2dIQUV6Qix1QkFBdUIsWUFIeEIsWUFBWSxFQUFFLFlBQVksRUFBRSxZQUFZOzs0RkFHdkMsdUJBQXVCO2tCQUxuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUMxQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLFlBQVksQ0FBQztvQkFDbkQsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWxvZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZGlhbG9nJztcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcbmltcG9ydCB7IEZpZWxkc01vZHVsZSB9IGZyb20gJy4uL2ZpZWxkcy9maWVsZHMubW9kdWxlJztcbmltcG9ydCB7IEdlbmVyaWNFcnJvck1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmljLWVycm9yLW1vZGFsLmNvbXBvbmVudCc7XG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtHZW5lcmljRXJyb3JNb2RhbENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtTaGFyZWRNb2R1bGUsIERpYWxvZ01vZHVsZSwgRmllbGRzTW9kdWxlXSxcbiAgZXhwb3J0czogW0dlbmVyaWNFcnJvck1vZGFsQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgR2VuZXJpY0Vycm9yTW9kYWxNb2R1bGUge31cbiJdfQ==
@@ -1,3 +0,0 @@
1
- export * from './generic-error-modal.component';
2
- export * from './generic-error-modal.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2dlbmVyaWMtZXJyb3ItbW9kYWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nZW5lcmljLWVycm9yLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2dlbmVyaWMtZXJyb3ItbW9kYWwubW9kdWxlJztcbiJdfQ==
@@ -1,66 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/router";
4
- import * as i2 from "primeng/dialog";
5
- import * as i3 from "../fields/button/button.component";
6
- import * as i4 from "@angular/common";
7
- export class GenericModalComponent {
8
- constructor(router) {
9
- this.router = router;
10
- this.modalMessage = {
11
- fileIcon: 'alert_icon',
12
- title: '',
13
- message: [],
14
- confirmButton: { label: 'Confirmar', clickFunction: () => { } },
15
- cancelButton: { label: 'Voltar', clickFunction: () => { } },
16
- };
17
- this.isClosable = true;
18
- this.hiddenActions = false;
19
- this.linkLabel = '';
20
- this.linkUrl = '';
21
- this.maxWidth = '';
22
- this.lineBreak = '';
23
- this.displayChange = new EventEmitter();
24
- this.onCloseModal = new EventEmitter();
25
- }
26
- ngOnInit() { }
27
- routerLink(url) {
28
- this.router.navigate([url]);
29
- }
30
- confirm() {
31
- this.display = false;
32
- this.displayChange.emit(this.display);
33
- }
34
- hideModal() {
35
- this.display = false;
36
- this.displayChange.emit(this.display);
37
- this.onCloseModal.emit();
38
- }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericModalComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: GenericModalComponent, selector: "vector-generic-modal", inputs: { modalMessage: "modalMessage", isClosable: "isClosable", hiddenActions: "hiddenActions", linkLabel: "linkLabel", linkUrl: "linkUrl", display: "display", maxWidth: "maxWidth", lineBreak: "lineBreak" }, outputs: { displayChange: "displayChange", onCloseModal: "onCloseModal" }, ngImport: i0, template: "<p-dialog\n [(visible)]=\"display\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"isClosable\"\n (onHide)=\"hideModal()\"\n [ngStyle]=\"{ 'max-width': maxWidth, 'line-break': lineBreak }\"\n>\n <div class=\"grid modal-generic\">\n <div class=\"col-12\">\n <img\n *ngIf=\"modalMessage.fileIcon\"\n class=\"flex mx-auto mb-3\"\n [ngClass]=\"!isClosable ? 'mt-4' : ''\"\n src=\"assets/images/{{ modalMessage.fileIcon }}.svg\"\n />\n <h1 *ngIf=\"modalMessage.title\">{{ modalMessage.title }}</h1>\n <p *ngFor=\"let text of modalMessage.message\" [innerHTML]=\"text\"></p>\n </div>\n </div>\n\n <div *ngIf=\"linkLabel\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\">\n <vector-button [label]=\"linkLabel\" (click)=\"routerLink(linkUrl)\"></vector-button>\n </div>\n </div>\n\n <div *ngIf=\"!hiddenActions\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.cancelButton\">\n <vector-button\n (onClick)=\"modalMessage.cancelButton && modalMessage.cancelButton.clickFunction()\"\n [label]=\"modalMessage.cancelButton.label\"\n [type]=\"modalMessage.cancelButton.type ? modalMessage.cancelButton.type : 'default'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.confirmButton\">\n <vector-button\n (onClick)=\"modalMessage.confirmButton && modalMessage.confirmButton.clickFunction()\"\n [label]=\"modalMessage.confirmButton.label\"\n [type]=\"modalMessage.confirmButton.type ? modalMessage.confirmButton.type : 'default-filled'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".modal-generic{font-style:normal;font-family:Poppins;text-align:center!important}.modal-generic h1{margin:1em auto!important;font-weight:700;font-size:1.42em!important;line-height:1.2em;letter-spacing:1px;color:#262338}.modal-generic p{margin:0 auto;font-weight:400;font-size:1.07em;line-height:1.5em;letter-spacing:.053em;color:#4e4b66}\n"], dependencies: [{ kind: "component", type: i2.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "component", type: i3.ButtonComponent, selector: "vector-button", inputs: ["disabled", "label", "type", "leftIcon", "rightIcon", "noShadow", "round", "style", "loading"], outputs: ["onClick"] }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
41
- }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: GenericModalComponent, decorators: [{
43
- type: Component,
44
- args: [{ selector: 'vector-generic-modal', template: "<p-dialog\n [(visible)]=\"display\"\n [modal]=\"true\"\n [breakpoints]=\"{ '440px': '95vw' }\"\n [style]=\"{ width: '400px' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n [blockScroll]=\"true\"\n [closeOnEscape]=\"false\"\n [closable]=\"isClosable\"\n (onHide)=\"hideModal()\"\n [ngStyle]=\"{ 'max-width': maxWidth, 'line-break': lineBreak }\"\n>\n <div class=\"grid modal-generic\">\n <div class=\"col-12\">\n <img\n *ngIf=\"modalMessage.fileIcon\"\n class=\"flex mx-auto mb-3\"\n [ngClass]=\"!isClosable ? 'mt-4' : ''\"\n src=\"assets/images/{{ modalMessage.fileIcon }}.svg\"\n />\n <h1 *ngIf=\"modalMessage.title\">{{ modalMessage.title }}</h1>\n <p *ngFor=\"let text of modalMessage.message\" [innerHTML]=\"text\"></p>\n </div>\n </div>\n\n <div *ngIf=\"linkLabel\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\">\n <vector-button [label]=\"linkLabel\" (click)=\"routerLink(linkUrl)\"></vector-button>\n </div>\n </div>\n\n <div *ngIf=\"!hiddenActions\" class=\"grid mt-2 justify-content-center\">\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.cancelButton\">\n <vector-button\n (onClick)=\"modalMessage.cancelButton && modalMessage.cancelButton.clickFunction()\"\n [label]=\"modalMessage.cancelButton.label\"\n [type]=\"modalMessage.cancelButton.type ? modalMessage.cancelButton.type : 'default'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n\n <div class=\"col-12 md:col-6\" *ngIf=\"modalMessage.confirmButton\">\n <vector-button\n (onClick)=\"modalMessage.confirmButton && modalMessage.confirmButton.clickFunction()\"\n [label]=\"modalMessage.confirmButton.label\"\n [type]=\"modalMessage.confirmButton.type ? modalMessage.confirmButton.type : 'default-filled'\"\n [round]=\"true\"\n ></vector-button>\n </div>\n </div>\n</p-dialog>\n", styles: [".modal-generic{font-style:normal;font-family:Poppins;text-align:center!important}.modal-generic h1{margin:1em auto!important;font-weight:700;font-size:1.42em!important;line-height:1.2em;letter-spacing:1px;color:#262338}.modal-generic p{margin:0 auto;font-weight:400;font-size:1.07em;line-height:1.5em;letter-spacing:.053em;color:#4e4b66}\n"] }]
45
- }], ctorParameters: () => [{ type: i1.Router }], propDecorators: { modalMessage: [{
46
- type: Input
47
- }], isClosable: [{
48
- type: Input
49
- }], hiddenActions: [{
50
- type: Input
51
- }], linkLabel: [{
52
- type: Input
53
- }], linkUrl: [{
54
- type: Input
55
- }], display: [{
56
- type: Input
57
- }], maxWidth: [{
58
- type: Input
59
- }], lineBreak: [{
60
- type: Input
61
- }], displayChange: [{
62
- type: Output
63
- }], onCloseModal: [{
64
- type: Output
65
- }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2dlbmVyaWMtbW9kYWwvZ2VuZXJpYy1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmVjdG9yLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2dlbmVyaWMtbW9kYWwvZ2VuZXJpYy1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFTL0UsTUFBTSxPQUFPLHFCQUFxQjtJQTRCaEMsWUFBbUIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUExQjFCLGlCQUFZLEdBQXdCO1lBQ3pDLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxhQUFhLEVBQUUsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQUU7WUFDOUQsWUFBWSxFQUFFLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxFQUFFO1NBQzNELENBQUM7UUFFSyxlQUFVLEdBQVksSUFBSSxDQUFDO1FBRTNCLGtCQUFhLEdBQVksS0FBSyxDQUFDO1FBRS9CLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFFdkIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUlyQixhQUFRLEdBQVksRUFBRSxDQUFDO1FBRXZCLGNBQVMsR0FBWSxFQUFFLENBQUM7UUFFeEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVMLENBQUM7SUFFckMsUUFBUSxLQUFVLENBQUM7SUFFWixVQUFVLENBQUMsR0FBVztRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVNLFNBQVM7UUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMzQixDQUFDOytHQTdDVSxxQkFBcUI7bUdBQXJCLHFCQUFxQix5VkNUbEMsMjZEQW9EQTs7NEZEM0NhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxzQkFBc0I7MkVBTXpCLFlBQVk7c0JBRGxCLEtBQUs7Z0JBU0MsVUFBVTtzQkFEaEIsS0FBSztnQkFHQyxhQUFhO3NCQURuQixLQUFLO2dCQUdDLFNBQVM7c0JBRGYsS0FBSztnQkFHQyxPQUFPO3NCQURiLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUdDLFFBQVE7c0JBRGQsS0FBSztnQkFHQyxTQUFTO3NCQURmLEtBQUs7Z0JBR0MsYUFBYTtzQkFEbkIsTUFBTTtnQkFHQSxZQUFZO3NCQURsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEdlbmVyaWNNb2RhbE1lc3NhZ2UgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2VuZXJpYy1tb2RhbC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZlY3Rvci1nZW5lcmljLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dlbmVyaWMtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9nZW5lcmljLW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtb2RhbE1lc3NhZ2U6IEdlbmVyaWNNb2RhbE1lc3NhZ2UgPSB7XG4gICAgZmlsZUljb246ICdhbGVydF9pY29uJyxcbiAgICB0aXRsZTogJycsXG4gICAgbWVzc2FnZTogW10sXG4gICAgY29uZmlybUJ1dHRvbjogeyBsYWJlbDogJ0NvbmZpcm1hcicsIGNsaWNrRnVuY3Rpb246ICgpID0+IHt9IH0sXG4gICAgY2FuY2VsQnV0dG9uOiB7IGxhYmVsOiAnVm9sdGFyJywgY2xpY2tGdW5jdGlvbjogKCkgPT4ge30gfSxcbiAgfTtcbiAgQElucHV0KClcbiAgcHVibGljIGlzQ2xvc2FibGU6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgaGlkZGVuQWN0aW9uczogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbGlua0xhYmVsOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KClcbiAgcHVibGljIGxpbmtVcmw6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlzcGxheSE6IGJvb2xlYW47XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhXaWR0aD86IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKVxuICBwdWJsaWMgbGluZUJyZWFrPzogc3RyaW5nID0gJyc7XG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZGlzcGxheUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvbkNsb3NlTW9kYWwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJvdXRlcjogUm91dGVyKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBwdWJsaWMgcm91dGVyTGluayh1cmw6IHN0cmluZykge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt1cmxdKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maXJtKCkge1xuICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xuICAgIHRoaXMuZGlzcGxheUNoYW5nZS5lbWl0KHRoaXMuZGlzcGxheSk7XG4gIH1cblxuICBwdWJsaWMgaGlkZU1vZGFsKCkge1xuICAgIHRoaXMuZGlzcGxheSA9IGZhbHNlO1xuICAgIHRoaXMuZGlzcGxheUNoYW5nZS5lbWl0KHRoaXMuZGlzcGxheSk7XG4gICAgdGhpcy5vbkNsb3NlTW9kYWwuZW1pdCgpO1xuICB9XG59XG4iLCI8cC1kaWFsb2dcbiAgWyh2aXNpYmxlKV09XCJkaXNwbGF5XCJcbiAgW21vZGFsXT1cInRydWVcIlxuICBbYnJlYWtwb2ludHNdPVwieyAnNDQwcHgnOiAnOTV2dycgfVwiXG4gIFtzdHlsZV09XCJ7IHdpZHRoOiAnNDAwcHgnIH1cIlxuICBbZHJhZ2dhYmxlXT1cImZhbHNlXCJcbiAgW3Jlc2l6YWJsZV09XCJmYWxzZVwiXG4gIFtibG9ja1Njcm9sbF09XCJ0cnVlXCJcbiAgW2Nsb3NlT25Fc2NhcGVdPVwiZmFsc2VcIlxuICBbY2xvc2FibGVdPVwiaXNDbG9zYWJsZVwiXG4gIChvbkhpZGUpPVwiaGlkZU1vZGFsKClcIlxuICBbbmdTdHlsZV09XCJ7ICdtYXgtd2lkdGgnOiBtYXhXaWR0aCwgJ2xpbmUtYnJlYWsnOiBsaW5lQnJlYWsgfVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJncmlkIG1vZGFsLWdlbmVyaWNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XG4gICAgICA8aW1nXG4gICAgICAgICpuZ0lmPVwibW9kYWxNZXNzYWdlLmZpbGVJY29uXCJcbiAgICAgICAgY2xhc3M9XCJmbGV4IG14LWF1dG8gbWItM1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cIiFpc0Nsb3NhYmxlID8gJ210LTQnIDogJydcIlxuICAgICAgICBzcmM9XCJhc3NldHMvaW1hZ2VzL3t7IG1vZGFsTWVzc2FnZS5maWxlSWNvbiB9fS5zdmdcIlxuICAgICAgLz5cbiAgICAgIDxoMSAqbmdJZj1cIm1vZGFsTWVzc2FnZS50aXRsZVwiPnt7IG1vZGFsTWVzc2FnZS50aXRsZSB9fTwvaDE+XG4gICAgICA8cCAqbmdGb3I9XCJsZXQgdGV4dCBvZiBtb2RhbE1lc3NhZ2UubWVzc2FnZVwiIFtpbm5lckhUTUxdPVwidGV4dFwiPjwvcD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiAqbmdJZj1cImxpbmtMYWJlbFwiIGNsYXNzPVwiZ3JpZCBtdC0yIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC02XCI+XG4gICAgICA8dmVjdG9yLWJ1dHRvbiBbbGFiZWxdPVwibGlua0xhYmVsXCIgKGNsaWNrKT1cInJvdXRlckxpbmsobGlua1VybClcIj48L3ZlY3Rvci1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgKm5nSWY9XCIhaGlkZGVuQWN0aW9uc1wiIGNsYXNzPVwiZ3JpZCBtdC0yIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC02XCIgKm5nSWY9XCJtb2RhbE1lc3NhZ2UuY2FuY2VsQnV0dG9uXCI+XG4gICAgICA8dmVjdG9yLWJ1dHRvblxuICAgICAgICAob25DbGljayk9XCJtb2RhbE1lc3NhZ2UuY2FuY2VsQnV0dG9uICYmIG1vZGFsTWVzc2FnZS5jYW5jZWxCdXR0b24uY2xpY2tGdW5jdGlvbigpXCJcbiAgICAgICAgW2xhYmVsXT1cIm1vZGFsTWVzc2FnZS5jYW5jZWxCdXR0b24ubGFiZWxcIlxuICAgICAgICBbdHlwZV09XCJtb2RhbE1lc3NhZ2UuY2FuY2VsQnV0dG9uLnR5cGUgPyBtb2RhbE1lc3NhZ2UuY2FuY2VsQnV0dG9uLnR5cGUgOiAnZGVmYXVsdCdcIlxuICAgICAgICBbcm91bmRdPVwidHJ1ZVwiXG4gICAgICA+PC92ZWN0b3ItYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtNlwiICpuZ0lmPVwibW9kYWxNZXNzYWdlLmNvbmZpcm1CdXR0b25cIj5cbiAgICAgIDx2ZWN0b3ItYnV0dG9uXG4gICAgICAgIChvbkNsaWNrKT1cIm1vZGFsTWVzc2FnZS5jb25maXJtQnV0dG9uICYmIG1vZGFsTWVzc2FnZS5jb25maXJtQnV0dG9uLmNsaWNrRnVuY3Rpb24oKVwiXG4gICAgICAgIFtsYWJlbF09XCJtb2RhbE1lc3NhZ2UuY29uZmlybUJ1dHRvbi5sYWJlbFwiXG4gICAgICAgIFt0eXBlXT1cIm1vZGFsTWVzc2FnZS5jb25maXJtQnV0dG9uLnR5cGUgPyBtb2RhbE1lc3NhZ2UuY29uZmlybUJ1dHRvbi50eXBlIDogJ2RlZmF1bHQtZmlsbGVkJ1wiXG4gICAgICAgIFtyb3VuZF09XCJ0cnVlXCJcbiAgICAgID48L3ZlY3Rvci1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9wLWRpYWxvZz5cbiJdfQ==