ng-pli-commons 1.0.135 → 1.0.137

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 (226) hide show
  1. package/esm2022/lib/components/backoffice.commons.component.mjs +41 -0
  2. package/esm2022/lib/components/common.lists.component.mjs +177 -0
  3. package/esm2022/lib/components/configuration-token/configuration-token-subject.service.mjs +23 -0
  4. package/esm2022/lib/components/configuration-token/configuration-token.component.mjs +665 -0
  5. package/esm2022/lib/components/configuration-token/guarantee-token/guarantee-token.component.mjs +103 -0
  6. package/esm2022/lib/components/configuration-token/snapshot-token/snapshot-token.component.mjs +108 -0
  7. package/esm2022/lib/components/configuration.commons.component.mjs +41 -0
  8. package/esm2022/lib/components/dashboard.commons.component.mjs +85 -0
  9. package/esm2022/lib/components/dynamic-filter/dynamic-filter.component.mjs +131 -0
  10. package/esm2022/lib/components/excel-to-json/excel-to-json.component.mjs +54 -0
  11. package/esm2022/lib/components/frontoffice.commons.component.mjs +89 -0
  12. package/esm2022/lib/components/pdf-analyzer/pdf-analyzer.component.mjs +162 -0
  13. package/esm2022/lib/components/pdf-config/pdf-config.component.mjs +170 -0
  14. package/esm2022/lib/components/pdf-generator/pdf-generator.component.mjs +207 -0
  15. package/esm2022/lib/components/pdf-merge-visualizer/pdf-merge-visualizer.component.mjs +307 -0
  16. package/esm2022/lib/components/pdf-visualizer/pdf-visualizer.component.mjs +387 -0
  17. package/esm2022/lib/components/progress-bar/progress-bar.component.mjs +92 -0
  18. package/esm2022/lib/components/segmentation-tokens/segmentation-tokens.component.mjs +199 -0
  19. package/esm2022/lib/components/select-ppp/select-ppp.component.mjs +200 -0
  20. package/esm2022/lib/components/show-hide-columns/show-hide-columns-table.component.mjs +116 -0
  21. package/esm2022/lib/components/token/token.component.mjs +1047 -0
  22. package/esm2022/lib/components/tokens-calculator/tokens-calculator.component.mjs +128 -0
  23. package/esm2022/lib/directives/currency-colfuturo-formatter.directive.mjs +48 -0
  24. package/esm2022/lib/directives/currency-decimal-colfuturo-formatter.directive.mjs +35 -0
  25. package/esm2022/lib/ng-pli-commons.module.mjs +385 -0
  26. package/esm2022/lib/ng-pli-commons.service.mjs +14 -0
  27. package/esm2022/lib/pipes/currency-colfuturo.pipe.mjs +36 -0
  28. package/esm2022/lib/pipes/currency-decimal-colfuturo.pipe.mjs +39 -0
  29. package/esm2022/lib/pipes/currency-print-colfuturo.pipe.mjs +34 -0
  30. package/esm2022/lib/pipes/thousands.pipe.mjs +61 -0
  31. package/esm2022/lib/services/application-fill-percentage.service.mjs +30 -0
  32. package/esm2022/lib/services/application-pdf-form.service.mjs +27 -0
  33. package/esm2022/lib/services/application-tag.service.mjs +56 -0
  34. package/esm2022/lib/services/application.service.mjs +253 -0
  35. package/esm2022/lib/services/assign-task.service.mjs +30 -0
  36. package/esm2022/lib/services/authentication.service.mjs +133 -0
  37. package/esm2022/lib/services/blocked-beneficiary.service.mjs +42 -0
  38. package/esm2022/lib/services/budget-application.service.mjs +265 -0
  39. package/esm2022/lib/services/budget-setup.service.mjs +26 -0
  40. package/esm2022/lib/services/budget-simulation.service.mjs +65 -0
  41. package/esm2022/lib/services/budget.service.mjs +205 -0
  42. package/esm2022/lib/services/closure-wallet.service.mjs +39 -0
  43. package/esm2022/lib/services/cnf-correspondence-document-manager.service.mjs +39 -0
  44. package/esm2022/lib/services/codebtors.service.mjs +28 -0
  45. package/esm2022/lib/services/committee-assistant.service.mjs +55 -0
  46. package/esm2022/lib/services/committee-money.service.mjs +44 -0
  47. package/esm2022/lib/services/committee-pdf.service.mjs +27 -0
  48. package/esm2022/lib/services/committee-snapshot.service.mjs +60 -0
  49. package/esm2022/lib/services/common-info.service.mjs +51 -0
  50. package/esm2022/lib/services/common.service.mjs +285 -0
  51. package/esm2022/lib/services/configuration-document.service.mjs +297 -0
  52. package/esm2022/lib/services/configuration-minisite.service.mjs +26 -0
  53. package/esm2022/lib/services/configuration.service.mjs +53 -0
  54. package/esm2022/lib/services/correspondence-document-category.service.mjs +31 -0
  55. package/esm2022/lib/services/correspondence-manager.service.mjs +74 -0
  56. package/esm2022/lib/services/credit-score.service.mjs +48 -0
  57. package/esm2022/lib/services/credit-study.service.mjs +292 -0
  58. package/esm2022/lib/services/cube.service.mjs +27 -0
  59. package/esm2022/lib/services/data-form-history.service.mjs +25 -0
  60. package/esm2022/lib/services/data-form.service.mjs +176 -0
  61. package/esm2022/lib/services/data-letter-segmentation.service.mjs +64 -0
  62. package/esm2022/lib/services/document-analysis-auto.service.mjs +27 -0
  63. package/esm2022/lib/services/document-history.service.mjs +43 -0
  64. package/esm2022/lib/services/document-management.service.mjs +57 -0
  65. package/esm2022/lib/services/document-process.service.mjs +27 -0
  66. package/esm2022/lib/services/document-validation-attempt.service.mjs +32 -0
  67. package/esm2022/lib/services/document.service.mjs +144 -0
  68. package/esm2022/lib/services/documentary.type.service.mjs +69 -0
  69. package/esm2022/lib/services/email.service.mjs +30 -0
  70. package/esm2022/lib/services/evaluation.service.mjs +181 -0
  71. package/esm2022/lib/services/export-excel.service.mjs +32 -0
  72. package/esm2022/lib/services/file.service.mjs +153 -0
  73. package/esm2022/lib/services/form.service.mjs +112 -0
  74. package/esm2022/lib/services/gic-client-disbursement-metadata.service.mjs +31 -0
  75. package/esm2022/lib/services/gic-client.service.mjs +49 -0
  76. package/esm2022/lib/services/gic-cnf-bankvision-transaction.service.mjs +31 -0
  77. package/esm2022/lib/services/gic-cnf-closing-date.service.mjs +34 -0
  78. package/esm2022/lib/services/gic-cnf-maintenance.service.mjs +30 -0
  79. package/esm2022/lib/services/gic-collection.service.mjs +53 -0
  80. package/esm2022/lib/services/gic-disbursement.service.mjs +39 -0
  81. package/esm2022/lib/services/gic-extract.service.mjs +41 -0
  82. package/esm2022/lib/services/gic-log.service.mjs +41 -0
  83. package/esm2022/lib/services/gic-payment-application.service.mjs +35 -0
  84. package/esm2022/lib/services/gic-payment-plan-cube.service.mjs +27 -0
  85. package/esm2022/lib/services/gic-payment-plan.service.mjs +32 -0
  86. package/esm2022/lib/services/gic-trm.service.mjs +27 -0
  87. package/esm2022/lib/services/global.show.task.service.mjs +37 -0
  88. package/esm2022/lib/services/guarantee-document.service.mjs +52 -0
  89. package/esm2022/lib/services/guarantee-enrollment.service.mjs +37 -0
  90. package/esm2022/lib/services/guarantee.service.mjs +128 -0
  91. package/esm2022/lib/services/guarantees-summary-service.mjs +26 -0
  92. package/esm2022/lib/services/hash.service.mjs +36 -0
  93. package/esm2022/lib/services/import-data.service.mjs +27 -0
  94. package/esm2022/lib/services/import-excel-gic.service.mjs +53 -0
  95. package/esm2022/lib/services/initial-configuration-gic-parameters.service.mjs +51 -0
  96. package/esm2022/lib/services/initial-record.service.mjs +51 -0
  97. package/esm2022/lib/services/integration-ado.service.mjs +54 -0
  98. package/esm2022/lib/services/interaction-application-user.service.mjs +81 -0
  99. package/esm2022/lib/services/interest-adjustment.service.mjs +34 -0
  100. package/esm2022/lib/services/keys-assignation.service.mjs +127 -0
  101. package/esm2022/lib/services/legalization.service.mjs +150 -0
  102. package/esm2022/lib/services/letter-campaing.service.mjs +49 -0
  103. package/esm2022/lib/services/letter-task-mapping.service.mjs +40 -0
  104. package/esm2022/lib/services/log.service.mjs +41 -0
  105. package/esm2022/lib/services/maintenance.service.mjs +86 -0
  106. package/esm2022/lib/services/master-category.service.mjs +66 -0
  107. package/esm2022/lib/services/master-program.service.mjs +78 -0
  108. package/esm2022/lib/services/master-university.service.mjs +79 -0
  109. package/esm2022/lib/services/migration-plis.service.mjs +27 -0
  110. package/esm2022/lib/services/migration-survey-queue.service.mjs +24 -0
  111. package/esm2022/lib/services/openkm-document.service.mjs +27 -0
  112. package/esm2022/lib/services/page.service.mjs +38 -0
  113. package/esm2022/lib/services/partner-system.service.mjs +30 -0
  114. package/esm2022/lib/services/partner.service.mjs +34 -0
  115. package/esm2022/lib/services/pdf-analyzer.service.mjs +33 -0
  116. package/esm2022/lib/services/people-master.service.mjs +42 -0
  117. package/esm2022/lib/services/permission.service.mjs +29 -0
  118. package/esm2022/lib/services/pli-cnf-acuity-fields.service.mjs +34 -0
  119. package/esm2022/lib/services/pli-cnf-app-card-filter.service.mjs +40 -0
  120. package/esm2022/lib/services/pli-cnf-appointment-type.service.mjs +41 -0
  121. package/esm2022/lib/services/pli-cnf-budget-program-type.service.mjs +54 -0
  122. package/esm2022/lib/services/pli-cnf-budget.service.mjs +31 -0
  123. package/esm2022/lib/services/pli-cnf-cloning.service.mjs +27 -0
  124. package/esm2022/lib/services/pli-cnf-committee-pdf-config-table-config.service.mjs +47 -0
  125. package/esm2022/lib/services/pli-cnf-committee-pdf-gen-status.service.mjs +30 -0
  126. package/esm2022/lib/services/pli-cnf-committee-valpro-columns.service.mjs +42 -0
  127. package/esm2022/lib/services/pli-cnf-committee-visualization-mode.service.mjs +42 -0
  128. package/esm2022/lib/services/pli-cnf-committee.service.mjs +66 -0
  129. package/esm2022/lib/services/pli-cnf-config-minisite.service.mjs +90 -0
  130. package/esm2022/lib/services/pli-cnf-configuration-credit-study.service.mjs +41 -0
  131. package/esm2022/lib/services/pli-cnf-document-management.service.mjs +40 -0
  132. package/esm2022/lib/services/pli-cnf-dynamic-keys-assign.service.mjs +52 -0
  133. package/esm2022/lib/services/pli-cnf-evaluation-task-mailing.service.mjs +31 -0
  134. package/esm2022/lib/services/pli-cnf-evaluation-task-template.service.mjs +39 -0
  135. package/esm2022/lib/services/pli-cnf-evaluation-task.service.mjs +112 -0
  136. package/esm2022/lib/services/pli-cnf-evaluation-template.service.mjs +95 -0
  137. package/esm2022/lib/services/pli-cnf-form-edit.service.mjs +68 -0
  138. package/esm2022/lib/services/pli-cnf-form-multiaplicacion.service.mjs +46 -0
  139. package/esm2022/lib/services/pli-cnf-guarantee-documents-template.service.mjs +40 -0
  140. package/esm2022/lib/services/pli-cnf-guarantee-token.service.mjs +42 -0
  141. package/esm2022/lib/services/pli-cnf-header.service.mjs +39 -0
  142. package/esm2022/lib/services/pli-cnf-indicator.service.mjs +39 -0
  143. package/esm2022/lib/services/pli-cnf-information-system.service.mjs +24 -0
  144. package/esm2022/lib/services/pli-cnf-interaction.service.mjs +78 -0
  145. package/esm2022/lib/services/pli-cnf-letter-template-type.service.mjs +29 -0
  146. package/esm2022/lib/services/pli-cnf-letter-template.service.mjs +48 -0
  147. package/esm2022/lib/services/pli-cnf-look-and-feel.service.mjs +28 -0
  148. package/esm2022/lib/services/pli-cnf-mail.service.mjs +30 -0
  149. package/esm2022/lib/services/pli-cnf-menu-form.service.mjs +34 -0
  150. package/esm2022/lib/services/pli-cnf-migration-plis-field-budget.service.mjs +34 -0
  151. package/esm2022/lib/services/pli-cnf-migration-plis-field.service.mjs +47 -0
  152. package/esm2022/lib/services/pli-cnf-migration-status-plis.service.mjs +44 -0
  153. package/esm2022/lib/services/pli-cnf-page-section-form.service.mjs +66 -0
  154. package/esm2022/lib/services/pli-cnf-page-sub-process.service.mjs +25 -0
  155. package/esm2022/lib/services/pli-cnf-pdfs.service.mjs +31 -0
  156. package/esm2022/lib/services/pli-cnf-profile-form.service.mjs +40 -0
  157. package/esm2022/lib/services/pli-cnf-profile-user.service.mjs +49 -0
  158. package/esm2022/lib/services/pli-cnf-project-summary.service.mjs +39 -0
  159. package/esm2022/lib/services/pli-cnf-scenario.service.mjs +47 -0
  160. package/esm2022/lib/services/pli-cnf-segmentation.service.mjs +72 -0
  161. package/esm2022/lib/services/pli-cnf-snapshot-token.service.mjs +42 -0
  162. package/esm2022/lib/services/pli-cnf-status-flow-interaction.service.mjs +74 -0
  163. package/esm2022/lib/services/pli-cnf-status-flow.service.mjs +56 -0
  164. package/esm2022/lib/services/pli-cnf-support-document-category.service.mjs +47 -0
  165. package/esm2022/lib/services/pli-cnf-support-document.service.mjs +56 -0
  166. package/esm2022/lib/services/pli-cnf-survey-document.service.mjs +37 -0
  167. package/esm2022/lib/services/pli-cnf-survey-pdf.service.mjs +34 -0
  168. package/esm2022/lib/services/pli-cnf-survey.service.mjs +46 -0
  169. package/esm2022/lib/services/pli-cnf-task-group.service.mjs +33 -0
  170. package/esm2022/lib/services/pli-cnf-text-category.service.mjs +38 -0
  171. package/esm2022/lib/services/pli-cnf-text-option.service.mjs +39 -0
  172. package/esm2022/lib/services/pli-cnf-text.service.mjs +62 -0
  173. package/esm2022/lib/services/pli-cnf-type-text.service.mjs +45 -0
  174. package/esm2022/lib/services/pli-cnf-university-article.service.mjs +39 -0
  175. package/esm2022/lib/services/pli-cnf-user-calendar.service.mjs +36 -0
  176. package/esm2022/lib/services/pli-cnf-user-workspace.service.mjs +35 -0
  177. package/esm2022/lib/services/pli-cnf-valpro-keys.service.mjs +35 -0
  178. package/esm2022/lib/services/pli-cnf-workspace-segmentation.service.mjs +31 -0
  179. package/esm2022/lib/services/pli-message-type.service.mjs +40 -0
  180. package/esm2022/lib/services/pli-multiple-value-filter.service.mjs +39 -0
  181. package/esm2022/lib/services/pli-promocion-username.service.mjs +57 -0
  182. package/esm2022/lib/services/pli-seg-action-user.service.mjs +37 -0
  183. package/esm2022/lib/services/pli-segmentation.service.mjs +130 -0
  184. package/esm2022/lib/services/pli-tag-assignment.service.mjs +36 -0
  185. package/esm2022/lib/services/pli-tag.service.mjs +55 -0
  186. package/esm2022/lib/services/pli-user.service.mjs +51 -0
  187. package/esm2022/lib/services/plis-beneficiario.service.mjs +29 -0
  188. package/esm2022/lib/services/plis-estatus-change.service.mjs +30 -0
  189. package/esm2022/lib/services/post-selection.service.mjs +25 -0
  190. package/esm2022/lib/services/ppp.service.mjs +360 -0
  191. package/esm2022/lib/services/profile.service.mjs +60 -0
  192. package/esm2022/lib/services/progress-bar.service.mjs +40 -0
  193. package/esm2022/lib/services/promotion-score.service.mjs +44 -0
  194. package/esm2022/lib/services/registry-identifier.service.mjs +49 -0
  195. package/esm2022/lib/services/return-refund.service.mjs +53 -0
  196. package/esm2022/lib/services/segmentation-tokens.service.mjs +43 -0
  197. package/esm2022/lib/services/segmentation-user-service.service.mjs +94 -0
  198. package/esm2022/lib/services/segmentation.service.mjs +31 -0
  199. package/esm2022/lib/services/send-application.service.mjs +541 -0
  200. package/esm2022/lib/services/sesion-form.service.mjs +31 -0
  201. package/esm2022/lib/services/sesion.service.mjs +48 -0
  202. package/esm2022/lib/services/spinner.service.mjs +16 -0
  203. package/esm2022/lib/services/sponsorship-letter.service.mjs +68 -0
  204. package/esm2022/lib/services/status.service.mjs +104 -0
  205. package/esm2022/lib/services/summary-budget.service.mjs +24 -0
  206. package/esm2022/lib/services/survey-metadata.service.mjs +28 -0
  207. package/esm2022/lib/services/survey-queue.service.mjs +24 -0
  208. package/esm2022/lib/services/survey.service.mjs +52 -0
  209. package/esm2022/lib/services/tag-management.service.mjs +58 -0
  210. package/esm2022/lib/services/tasa.cambio.service.mjs +35 -0
  211. package/esm2022/lib/services/token-transformation.service.mjs +62 -0
  212. package/esm2022/lib/services/token.service.mjs +1477 -0
  213. package/esm2022/lib/services/university.service.mjs +50 -0
  214. package/esm2022/lib/services/upload-documents.service.mjs +60 -0
  215. package/esm2022/lib/services/user.service.mjs +28 -0
  216. package/esm2022/lib/services/visualization-committee.service.mjs +91 -0
  217. package/esm2022/lib/utils/custom-validator.mjs +95 -0
  218. package/esm2022/lib/utils/form-util.mjs +35 -0
  219. package/esm2022/lib/utils/formio-util.mjs +582 -0
  220. package/esm2022/lib/utils/version-commons.mjs +10 -0
  221. package/esm2022/ng-pli-commons.mjs +5 -0
  222. package/esm2022/public-api.mjs +226 -0
  223. package/esm2022/version.mjs +29 -0
  224. package/fesm2022/ng-pli-commons.mjs +657 -657
  225. package/fesm2022/ng-pli-commons.mjs.map +1 -1
  226. package/package.json +3 -1
@@ -0,0 +1,50 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { HttpHeaders, HttpParams } from '@angular/common/http';
3
+ import { HEADER_JSON } from 'ng-pli-util';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ export class UniversityService {
7
+ constructor(environment, httpClient) {
8
+ this.environment = environment;
9
+ this.httpClient = httpClient;
10
+ this.headerJson = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };
11
+ }
12
+ /** It returns the university by id */
13
+ getById(id) {
14
+ return this.httpClient.get(this.environment.host.backend.configuration + 'university/getById', { params: new HttpParams().set('id', id) });
15
+ }
16
+ /** It returns the university by fullname */
17
+ getUniversitiesByFullname(fullname) {
18
+ return this.httpClient.get(this.environment.host.backend.configuration + 'university/getUniversitiesByFullname', { params: new HttpParams().set('fullname', fullname) });
19
+ }
20
+ /** It returns the university by nativeName */
21
+ getUniversitiesByNativeName(nativeName) {
22
+ return this.httpClient.get(this.environment.host.backend.configuration + 'university/getUniversitiesByNativeName', { params: new HttpParams().set('nativeName', nativeName) });
23
+ }
24
+ /**
25
+ * Save the university
26
+ * @param university
27
+ */
28
+ save(university) {
29
+ return this.httpClient.post(this.environment.host.backend.configuration + 'university/save', university, HEADER_JSON);
30
+ }
31
+ /**
32
+ * get multiple records
33
+ * @param dataTableParameters
34
+ */
35
+ getByDataTablesParameters(dataTableParameters) {
36
+ return this.httpClient.post(this.environment.host.backend.configuration + 'university/getByDataTablesParameters', dataTableParameters, this.headerJson);
37
+ }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UniversityService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UniversityService, providedIn: 'root' }); }
40
+ }
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UniversityService, decorators: [{
42
+ type: Injectable,
43
+ args: [{
44
+ providedIn: 'root'
45
+ }]
46
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
47
+ type: Inject,
48
+ args: ['environment']
49
+ }] }, { type: i1.HttpClient }] });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pdmVyc2l0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcGxpLWNvbW1vbnMvc3JjL2xpYi9zZXJ2aWNlcy91bml2ZXJzaXR5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBYyxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUUzRSxPQUFPLEVBQXVCLFdBQVcsRUFBYyxNQUFNLGFBQWEsQ0FBQzs7O0FBSzNFLE1BQU0sT0FBTyxpQkFBaUI7SUFHN0IsWUFBMkMsV0FBZ0IsRUFBVSxVQUFzQjtRQUFoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGbkYsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO0lBRUksQ0FBQztJQUUvRixzQ0FBc0M7SUFDdEMsT0FBTyxDQUFDLEVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxvQkFBb0IsRUFDbEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsNENBQTRDO0lBQzVDLHlCQUF5QixDQUFDLFFBQWdCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEdBQUcsc0NBQXNDLEVBQ3BGLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsRUFBRSxDQUN0RCxDQUFDO0lBQ0gsQ0FBQztJQUVELDhDQUE4QztJQUM5QywyQkFBMkIsQ0FBQyxVQUFrQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLHdDQUF3QyxFQUN0RixFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLEVBQUUsQ0FDMUQsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLENBQUMsVUFBc0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxpQkFBaUIsRUFDL0QsVUFBVSxFQUNWLFdBQVcsQ0FDWCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILHlCQUF5QixDQUFDLG1CQUF3QztRQUNqRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLHNDQUFzQyxFQUNwRixtQkFBbUIsRUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQzsrR0FuRFcsaUJBQWlCLGtCQUdULGFBQWE7bUhBSHJCLGlCQUFpQixjQUZqQixNQUFNOzs0RkFFTixpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFJYSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cEhlYWRlcnMsIEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRGF0YVRhYmxlUGFyYW1ldGVycywgSEVBREVSX0pTT04sIFVuaXZlcnNpdHkgfSBmcm9tICduZy1wbGktdXRpbCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbml2ZXJzaXR5U2VydmljZSB7XHJcblx0cHJpdmF0ZSBoZWFkZXJKc29uID0geyBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pIH07XHJcblxyXG5cdGNvbnN0cnVjdG9yKEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55LCBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHt9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSB1bml2ZXJzaXR5IGJ5IGlkICovXHJcblx0Z2V0QnlJZChpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3VuaXZlcnNpdHkvZ2V0QnlJZCcsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnaWQnLCBpZCkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSB1bml2ZXJzaXR5IGJ5IGZ1bGxuYW1lICovXHJcblx0Z2V0VW5pdmVyc2l0aWVzQnlGdWxsbmFtZShmdWxsbmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3VuaXZlcnNpdHkvZ2V0VW5pdmVyc2l0aWVzQnlGdWxsbmFtZScsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnZnVsbG5hbWUnLCBmdWxsbmFtZSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSB1bml2ZXJzaXR5IGJ5IG5hdGl2ZU5hbWUgKi9cclxuXHRnZXRVbml2ZXJzaXRpZXNCeU5hdGl2ZU5hbWUobmF0aXZlTmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3VuaXZlcnNpdHkvZ2V0VW5pdmVyc2l0aWVzQnlOYXRpdmVOYW1lJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCduYXRpdmVOYW1lJywgbmF0aXZlTmFtZSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFNhdmUgdGhlIHVuaXZlcnNpdHlcclxuXHQgKiBAcGFyYW0gdW5pdmVyc2l0eVxyXG5cdCAqL1xyXG5cdHNhdmUodW5pdmVyc2l0eTogVW5pdmVyc2l0eSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmNvbmZpZ3VyYXRpb24gKyAndW5pdmVyc2l0eS9zYXZlJyxcclxuXHRcdFx0dW5pdmVyc2l0eSxcclxuXHRcdFx0SEVBREVSX0pTT05cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBnZXQgbXVsdGlwbGUgcmVjb3Jkc1xyXG5cdCAqIEBwYXJhbSBkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0ICovXHJcblx0Z2V0QnlEYXRhVGFibGVzUGFyYW1ldGVycyhkYXRhVGFibGVQYXJhbWV0ZXJzOiBEYXRhVGFibGVQYXJhbWV0ZXJzKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmNvbmZpZ3VyYXRpb24gKyAndW5pdmVyc2l0eS9nZXRCeURhdGFUYWJsZXNQYXJhbWV0ZXJzJyxcclxuXHRcdFx0ZGF0YVRhYmxlUGFyYW1ldGVycyxcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -0,0 +1,60 @@
1
+ import { Observable } from 'rxjs';
2
+ import { EProceso, Archive } from 'ng-pli-util';
3
+ import { Injectable } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "./file.service";
6
+ import * as i2 from "./ppp.service";
7
+ export class UploadDocumentsService {
8
+ constructor(fileService, pppService) {
9
+ this.fileService = fileService;
10
+ this.pppService = pppService;
11
+ }
12
+ initPpp(dataFormApplication) {
13
+ return Observable.create((initObserver) => {
14
+ if (dataFormApplication.promCodigo) {
15
+ this.dataFormApplication = dataFormApplication;
16
+ this.promCodigo = dataFormApplication.promCodigo;
17
+ this.pppService
18
+ .getPromocionById(this.promCodigo)
19
+ .subscribe((prom) => {
20
+ if (prom) {
21
+ this.patCodigo = prom.pliPrograma.pliPatrocinador.patCodigo;
22
+ this.progCodigo = prom.pliPrograma.progCodigo;
23
+ initObserver.next();
24
+ initObserver.complete();
25
+ }
26
+ });
27
+ }
28
+ return { unsubscribe() { } };
29
+ });
30
+ }
31
+ uploading(fileReturn, dataFormApplication) {
32
+ return Observable.create((observer) => {
33
+ this.initPpp(dataFormApplication).subscribe(() => {
34
+ const filePath = this.fileService.getPath(EProceso.CONVOCATORIA, this.patCodigo, this.progCodigo, this.promCodigo, this.dataFormApplication.applicationId, fileReturn.name);
35
+ this.fileService.upload(filePath, fileReturn).subscribe((url) => {
36
+ if (url) {
37
+ let archive = new Archive();
38
+ archive.name = fileReturn.name;
39
+ archive.url = url;
40
+ archive.documentManagementProcess = false;
41
+ observer.next(archive);
42
+ observer.complete();
43
+ }
44
+ }, (error) => {
45
+ console.error('Error trying to upload: ', error);
46
+ });
47
+ });
48
+ return { unsubscribe() { } };
49
+ });
50
+ }
51
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UploadDocumentsService, deps: [{ token: i1.FileService }, { token: i2.PppService }], target: i0.ɵɵFactoryTarget.Injectable }); }
52
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UploadDocumentsService, providedIn: 'root' }); }
53
+ }
54
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UploadDocumentsService, decorators: [{
55
+ type: Injectable,
56
+ args: [{
57
+ providedIn: 'root'
58
+ }]
59
+ }], ctorParameters: () => [{ type: i1.FileService }, { type: i2.PppService }] });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWRvY3VtZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcGxpLWNvbW1vbnMvc3JjL2xpYi9zZXJ2aWNlcy91cGxvYWQtZG9jdW1lbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQXFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHbkYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUszQyxNQUFNLE9BQU8sc0JBQXNCO0lBU2xDLFlBQW9CLFdBQXdCLEVBQVUsVUFBc0I7UUFBeEQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQUVoRixPQUFPLENBQUMsbUJBQXdDO1FBQy9DLE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQ3pDLElBQUksbUJBQW1CLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3BDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQztnQkFDL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxVQUFVO3FCQUNiLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7cUJBQ2pDLFNBQVMsQ0FBQyxDQUFDLElBQWtCLEVBQUUsRUFBRTtvQkFDakMsSUFBSSxJQUFJLEVBQUUsQ0FBQzt3QkFDVixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQzt3QkFDNUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQzt3QkFDOUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO3dCQUNwQixZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQ3pCLENBQUM7Z0JBQ0YsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsT0FBTyxFQUFFLFdBQVcsS0FBSSxDQUFDLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTLENBQUMsVUFBZSxFQUFFLG1CQUF3QztRQUNsRSxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDaEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQ3hDLFFBQVEsQ0FBQyxZQUFZLEVBQ3JCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsVUFBVSxFQUNmLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQ3RDLFVBQVUsQ0FBQyxJQUFJLENBQ2YsQ0FBQztnQkFDRixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUN0RCxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUNQLElBQUksR0FBRyxFQUFFLENBQUM7d0JBQ1QsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQzt3QkFDNUIsT0FBTyxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDO3dCQUMvQixPQUFPLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQzt3QkFDbEIsT0FBTyxDQUFDLHlCQUF5QixHQUFHLEtBQUssQ0FBQzt3QkFDMUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzt3QkFDdkIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNyQixDQUFDO2dCQUNGLENBQUMsRUFDRCxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUNULE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ2xELENBQUMsQ0FDRCxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLEVBQUUsV0FBVyxLQUFJLENBQUMsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzsrR0E1RFcsc0JBQXNCO21IQUF0QixzQkFBc0IsY0FGdEIsTUFBTTs7NEZBRU4sc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNYLFVBQVUsRUFBRSxNQUFNO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGxpUHJvbW9jaW9uLCBEYXRhRm9ybUFwcGxpY2F0aW9uLCBFUHJvY2VzbywgQXJjaGl2ZSB9IGZyb20gJ25nLXBsaS11dGlsJztcclxuaW1wb3J0IHsgUHBwU2VydmljZSB9IGZyb20gJy4vcHBwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWxlU2VydmljZSB9IGZyb20gJy4vZmlsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVXBsb2FkRG9jdW1lbnRzU2VydmljZSB7XHJcblx0LyoqIEl0IGNvbnRhaW5zIHRoZSBwcm9tIGNvZGlnbyAqL1xyXG5cdHJlc3VsdDogbnVtYmVyO1xyXG5cdHByb21Db2RpZ286IG51bWJlcjtcclxuXHRwYXRDb2RpZ286IG51bWJlcjtcclxuXHRwcm9nQ29kaWdvOiBudW1iZXI7XHJcblx0ZXhlY3V0ZVN1YnNjcmliZUFwcGxpY2F0aW9uOiBib29sZWFuO1xyXG5cdGRhdGFGb3JtQXBwbGljYXRpb246IERhdGFGb3JtQXBwbGljYXRpb247XHJcblxyXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgZmlsZVNlcnZpY2U6IEZpbGVTZXJ2aWNlLCBwcml2YXRlIHBwcFNlcnZpY2U6IFBwcFNlcnZpY2UpIHt9XHJcblxyXG5cdGluaXRQcHAoZGF0YUZvcm1BcHBsaWNhdGlvbjogRGF0YUZvcm1BcHBsaWNhdGlvbik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gT2JzZXJ2YWJsZS5jcmVhdGUoKGluaXRPYnNlcnZlcikgPT4ge1xyXG5cdFx0XHRpZiAoZGF0YUZvcm1BcHBsaWNhdGlvbi5wcm9tQ29kaWdvKSB7XHJcblx0XHRcdFx0dGhpcy5kYXRhRm9ybUFwcGxpY2F0aW9uID0gZGF0YUZvcm1BcHBsaWNhdGlvbjtcclxuXHRcdFx0XHR0aGlzLnByb21Db2RpZ28gPSBkYXRhRm9ybUFwcGxpY2F0aW9uLnByb21Db2RpZ287XHJcblx0XHRcdFx0dGhpcy5wcHBTZXJ2aWNlXHJcblx0XHRcdFx0XHQuZ2V0UHJvbW9jaW9uQnlJZCh0aGlzLnByb21Db2RpZ28pXHJcblx0XHRcdFx0XHQuc3Vic2NyaWJlKChwcm9tOiBQbGlQcm9tb2Npb24pID0+IHtcclxuXHRcdFx0XHRcdFx0aWYgKHByb20pIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnBhdENvZGlnbyA9IHByb20ucGxpUHJvZ3JhbWEucGxpUGF0cm9jaW5hZG9yLnBhdENvZGlnbztcclxuXHRcdFx0XHRcdFx0XHR0aGlzLnByb2dDb2RpZ28gPSBwcm9tLnBsaVByb2dyYW1hLnByb2dDb2RpZ287XHJcblx0XHRcdFx0XHRcdFx0aW5pdE9ic2VydmVyLm5leHQoKTtcclxuXHRcdFx0XHRcdFx0XHRpbml0T2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdH1cclxuXHRcdFx0cmV0dXJuIHsgdW5zdWJzY3JpYmUoKSB7fSB9O1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHR1cGxvYWRpbmcoZmlsZVJldHVybjogYW55LCBkYXRhRm9ybUFwcGxpY2F0aW9uOiBEYXRhRm9ybUFwcGxpY2F0aW9uKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiBPYnNlcnZhYmxlLmNyZWF0ZSgob2JzZXJ2ZXIpID0+IHtcclxuXHRcdFx0dGhpcy5pbml0UHBwKGRhdGFGb3JtQXBwbGljYXRpb24pLnN1YnNjcmliZSgoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3QgZmlsZVBhdGggPSB0aGlzLmZpbGVTZXJ2aWNlLmdldFBhdGgoXHJcblx0XHRcdFx0XHRFUHJvY2Vzby5DT05WT0NBVE9SSUEsXHJcblx0XHRcdFx0XHR0aGlzLnBhdENvZGlnbyxcclxuXHRcdFx0XHRcdHRoaXMucHJvZ0NvZGlnbyxcclxuXHRcdFx0XHRcdHRoaXMucHJvbUNvZGlnbyxcclxuXHRcdFx0XHRcdHRoaXMuZGF0YUZvcm1BcHBsaWNhdGlvbi5hcHBsaWNhdGlvbklkLFxyXG5cdFx0XHRcdFx0ZmlsZVJldHVybi5uYW1lXHJcblx0XHRcdFx0KTtcclxuXHRcdFx0XHR0aGlzLmZpbGVTZXJ2aWNlLnVwbG9hZChmaWxlUGF0aCwgZmlsZVJldHVybikuc3Vic2NyaWJlKFxyXG5cdFx0XHRcdFx0KHVybCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAodXJsKSB7XHJcblx0XHRcdFx0XHRcdFx0bGV0IGFyY2hpdmUgPSBuZXcgQXJjaGl2ZSgpO1xyXG5cdFx0XHRcdFx0XHRcdGFyY2hpdmUubmFtZSA9IGZpbGVSZXR1cm4ubmFtZTtcclxuXHRcdFx0XHRcdFx0XHRhcmNoaXZlLnVybCA9IHVybDtcclxuXHRcdFx0XHRcdFx0XHRhcmNoaXZlLmRvY3VtZW50TWFuYWdlbWVudFByb2Nlc3MgPSBmYWxzZTtcclxuXHRcdFx0XHRcdFx0XHRvYnNlcnZlci5uZXh0KGFyY2hpdmUpO1xyXG5cdFx0XHRcdFx0XHRcdG9ic2VydmVyLmNvbXBsZXRlKCk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHQoZXJyb3IpID0+IHtcclxuXHRcdFx0XHRcdFx0Y29uc29sZS5lcnJvcignRXJyb3IgdHJ5aW5nIHRvIHVwbG9hZDogJywgZXJyb3IpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdCk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHRyZXR1cm4geyB1bnN1YnNjcmliZSgpIHt9IH07XHJcblx0XHR9KTtcclxuXHR9XHJcbn1cclxuIl19
@@ -0,0 +1,28 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { HttpParams } from '@angular/common/http';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class UserService {
6
+ constructor(environment, httpClient) {
7
+ this.environment = environment;
8
+ this.httpClient = httpClient;
9
+ }
10
+ /** It returns the list of users */
11
+ getAll(cargarListas) {
12
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/usuario/getAll', {
13
+ params: new HttpParams().set('cargarListas', cargarListas.toString())
14
+ });
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UserService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
17
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UserService, providedIn: 'root' }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: UserService, decorators: [{
20
+ type: Injectable,
21
+ args: [{
22
+ providedIn: 'root'
23
+ }]
24
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
25
+ type: Inject,
26
+ args: ['environment']
27
+ }] }, { type: i1.HttpClient }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcGxpLWNvbW1vbnMvc3JjL2xpYi9zZXJ2aWNlcy91c2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFLOUQsTUFBTSxPQUFPLFdBQVc7SUFDdkIsWUFBMkMsV0FBVyxFQUFVLFVBQXNCO1FBQTNDLGdCQUFXLEdBQVgsV0FBVyxDQUFBO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFHLENBQUM7SUFFMUYsbUNBQW1DO0lBQ25DLE1BQU0sQ0FBQyxZQUFxQjtRQUMzQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsdUJBQXVCLEVBQUU7WUFDeEYsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDckUsQ0FBQyxDQUFDO0lBQ0osQ0FBQzsrR0FSVyxXQUFXLGtCQUNILGFBQWE7bUhBRHJCLFdBQVcsY0FGWCxNQUFNOzs0RkFFTixXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNYLFVBQVUsRUFBRSxNQUFNO2lCQUNsQjs7MEJBRWEsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFVzZXJTZXJ2aWNlIHtcclxuXHRjb25zdHJ1Y3RvcihASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQsIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCkge31cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgdXNlcnMgKi9cclxuXHRnZXRBbGwoY2FyZ2FyTGlzdGFzOiBib29sZWFuKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3VzdWFyaW8vZ2V0QWxsJywge1xyXG5cdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdjYXJnYXJMaXN0YXMnLCBjYXJnYXJMaXN0YXMudG9TdHJpbmcoKSlcclxuXHRcdH0pO1xyXG5cdH1cclxufVxyXG4iXX0=
@@ -0,0 +1,91 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { HttpParams } from '@angular/common/http';
3
+ import { BehaviorSubject, Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ export class VisualizationCommitteeService {
7
+ constructor(environment, httpClient) {
8
+ this.environment = environment;
9
+ this.httpClient = httpClient;
10
+ this.subjectCutlineName = new Subject();
11
+ this.subjectCommitteeName = new BehaviorSubject(null);
12
+ }
13
+ getByDataTablesParameters(dataTableParameters, idCommittee, statusIdList) {
14
+ let httpParams = new HttpParams();
15
+ httpParams = httpParams.set('idCommittee', String(idCommittee));
16
+ httpParams = httpParams.set('statusIdList', String(statusIdList));
17
+ return this.httpClient.post(this.environment.host.backend.backoffice +
18
+ 'visualization-committee/getByDataTablesParameters', dataTableParameters, { params: httpParams });
19
+ }
20
+ /** Get Grouped data */
21
+ getGroupedByDataTablesParameters(dataTableParameters, idCommittee, statusIdList) {
22
+ let httpParams = new HttpParams();
23
+ httpParams = httpParams.set('idCommittee', String(idCommittee));
24
+ httpParams = httpParams.set('statusIdList', String(statusIdList));
25
+ return this.httpClient.post(this.environment.host.backend.backoffice +
26
+ 'visualization-committee/getGroupedByDataTablesParameters', dataTableParameters, { params: httpParams });
27
+ }
28
+ /** It returns an IndicatorResponse */
29
+ generateIndicator(lIndicatorRequest, idCommittee, promCodigo, statusIdList) {
30
+ let httpParams = new HttpParams();
31
+ httpParams = httpParams.set('idCommittee', String(idCommittee));
32
+ httpParams = httpParams.set('promCodigo', String(promCodigo));
33
+ httpParams = httpParams.set('statusIdList', String(statusIdList));
34
+ return this.httpClient.post(this.environment.host.backend.backoffice +
35
+ 'visualization-committee/generateGenericIndicator', lIndicatorRequest, { params: httpParams });
36
+ }
37
+ generateGroupedIndicator(indicatorGroup) {
38
+ return this.httpClient.post(this.environment.host.backend.backoffice +
39
+ 'visualization-committee/generateGroupedIndicator', indicatorGroup);
40
+ }
41
+ /**
42
+ * Get Segmentation values by committee
43
+ * @param segmentationDimensionFormId FormId segmentation dimension
44
+ * @param segmentationDimensionKey Key segmentation Dimension
45
+ */
46
+ getSegmentationValues(segmentationDimensionFormId, segmentationDimensionKey) {
47
+ let httpParams = new HttpParams();
48
+ httpParams = httpParams.set('formId', String(segmentationDimensionFormId));
49
+ httpParams = httpParams.set('keyField', String(segmentationDimensionKey));
50
+ return this.httpClient.get(this.environment.host.backend.backoffice +
51
+ 'visualization-committee/getSegmentationValues', { params: httpParams });
52
+ }
53
+ getByCommitteeId(committeeId) {
54
+ let httpParams = new HttpParams();
55
+ httpParams = httpParams.set('committeeId', String(committeeId));
56
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'committee-consult/getByCommitteeId', { params: httpParams });
57
+ }
58
+ saveCommitteeConsult(lCommitteConsult) {
59
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'committee-consult/save', lCommitteConsult);
60
+ }
61
+ saveOrdinal(committeeOrdinalTO) {
62
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'visualization-committee/saveOrdinal', committeeOrdinalTO);
63
+ }
64
+ cloneCommitteeConsult(committeeIdOrigin, committeeIdTarget) {
65
+ return this.httpClient.post(`${this.environment.host.backend.backoffice}committee-consult/cloneCommitteeConsult?committeeOrigin=${committeeIdOrigin}&committeeTarget=${committeeIdTarget}`, {});
66
+ }
67
+ getDataCommitteeName() {
68
+ return this.subjectCommitteeName.asObservable();
69
+ }
70
+ dataCommitteeName(name) {
71
+ return this.subjectCommitteeName.next(name);
72
+ }
73
+ getDataCutlineName() {
74
+ return this.subjectCutlineName.asObservable();
75
+ }
76
+ setDataCutlineName(name) {
77
+ return this.subjectCutlineName.next(name);
78
+ }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VisualizationCommitteeService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
80
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VisualizationCommitteeService, providedIn: 'root' }); }
81
+ }
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VisualizationCommitteeService, decorators: [{
83
+ type: Injectable,
84
+ args: [{
85
+ providedIn: 'root'
86
+ }]
87
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
88
+ type: Inject,
89
+ args: ['environment']
90
+ }] }, { type: i1.HttpClient }] });
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzdWFsaXphdGlvbi1jb21taXR0ZWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvc2VydmljZXMvdmlzdWFsaXphdGlvbi1jb21taXR0ZWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFROUQsT0FBTyxFQUFjLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUs1RCxNQUFNLE9BQU8sNkJBQTZCO0lBR3pDLFlBQTJDLFdBQVcsRUFBVSxVQUFzQjtRQUEzQyxnQkFBVyxHQUFYLFdBQVcsQ0FBQTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGOUUsdUJBQWtCLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztRQStHeEMseUJBQW9CLEdBQXlCLElBQUksZUFBZSxDQUFNLElBQUksQ0FBQyxDQUFDO0lBN0dLLENBQUM7SUFFMUYseUJBQXlCLENBQ3hCLG1CQUF3QyxFQUN4QyxXQUFtQixFQUNuQixZQUFzQjtRQUV0QixJQUFJLFVBQVUsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2xDLFVBQVUsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNoRSxVQUFVLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDbEUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVU7WUFDdkMsbURBQW1ELEVBQ3BELG1C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QixNQUFNOzs0RkFFTiw2QkFBNkI7a0JBSHpDLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFJYSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQge1xyXG5cdEluZGljYXRvclJlcXVlc3QsXHJcblx0RGF0YVRhYmxlUGFyYW1ldGVycyxcclxuXHRDb21taXR0ZWVDb25zdWx0LFxyXG5cdENvbW1pdHRlZU9yZGluYWxUTyxcclxuXHRJbmljYXRvckdyb3VwZWRcclxufSBmcm9tICduZy1wbGktdXRpbCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVmlzdWFsaXphdGlvbkNvbW1pdHRlZVNlcnZpY2Uge1xyXG5cdHByaXZhdGUgc3ViamVjdEN1dGxpbmVOYW1lID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQsIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCkge31cclxuXHJcblx0Z2V0QnlEYXRhVGFibGVzUGFyYW1ldGVycyhcclxuXHRcdGRhdGFUYWJsZVBhcmFtZXRlcnM6IERhdGFUYWJsZVBhcmFtZXRlcnMsXHJcblx0XHRpZENvbW1pdHRlZTogbnVtYmVyLFxyXG5cdFx0c3RhdHVzSWRMaXN0OiBudW1iZXJbXVxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRsZXQgaHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XHJcblx0XHRodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ2lkQ29tbWl0dGVlJywgU3RyaW5nKGlkQ29tbWl0dGVlKSk7XHJcblx0XHRodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ3N0YXR1c0lkTGlzdCcsIFN0cmluZyhzdGF0dXNJZExpc3QpKTtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArXHJcblx0XHRcdFx0J3Zpc3VhbGl6YXRpb24tY29tbWl0dGVlL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR7IHBhcmFtczogaHR0cFBhcmFtcyB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEdldCBHcm91cGVkIGRhdGEgKi9cclxuXHRnZXRHcm91cGVkQnlEYXRhVGFibGVzUGFyYW1ldGVycyhcclxuXHRcdGRhdGFUYWJsZVBhcmFtZXRlcnM6IERhdGFUYWJsZVBhcmFtZXRlcnMsXHJcblx0XHRpZENvbW1pdHRlZTogbnVtYmVyLFxyXG5cdFx0c3RhdHVzSWRMaXN0OiBudW1iZXJbXVxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRsZXQgaHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XHJcblx0XHRodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ2lkQ29tbWl0dGVlJywgU3RyaW5nKGlkQ29tbWl0dGVlKSk7XHJcblx0XHRodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ3N0YXR1c0lkTGlzdCcsIFN0cmluZyhzdGF0dXNJZExpc3QpKTtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArXHJcblx0XHRcdFx0J3Zpc3VhbGl6YXRpb24tY29tbWl0dGVlL2dldEdyb3VwZWRCeURhdGFUYWJsZXNQYXJhbWV0ZXJzJyxcclxuXHRcdFx0ZGF0YVRhYmxlUGFyYW1ldGVycyxcclxuXHRcdFx0eyBwYXJhbXM6IGh0dHBQYXJhbXMgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIGFuIEluZGljYXRvclJlc3BvbnNlICovXHJcblx0Z2VuZXJhdGVJbmRpY2F0b3IoXHJcblx0XHRsSW5kaWNhdG9yUmVxdWVzdDogSW5kaWNhdG9yUmVxdWVzdFtdLFxyXG5cdFx0aWRDb21taXR0ZWU6IG51bWJlcixcclxuXHRcdHByb21Db2RpZ286IG51bWJlcixcclxuXHRcdHN0YXR1c0lkTGlzdDogbnVtYmVyW11cclxuXHQpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0bGV0IGh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG5cdFx0aHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCdpZENvbW1pdHRlZScsIFN0cmluZyhpZENvbW1pdHRlZSkpO1xyXG5cdFx0aHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCdwcm9tQ29kaWdvJywgU3RyaW5nKHByb21Db2RpZ28pKTtcclxuXHRcdGh0dHBQYXJhbXMgPSBodHRwUGFyYW1zLnNldCgnc3RhdHVzSWRMaXN0JywgU3RyaW5nKHN0YXR1c0lkTGlzdCkpO1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICtcclxuXHRcdFx0XHQndmlzdWFsaXphdGlvbi1jb21taXR0ZWUvZ2VuZXJhdGVHZW5lcmljSW5kaWNhdG9yJyxcclxuXHRcdFx0bEluZGljYXRvclJlcXVlc3QsXHJcblx0XHRcdHsgcGFyYW1zOiBodHRwUGFyYW1zIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZW5lcmF0ZUdyb3VwZWRJbmRpY2F0b3IoaW5kaWNhdG9yR3JvdXA6IEluaWNhdG9yR3JvdXBlZCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCd2aXN1YWxpemF0aW9uLWNvbW1pdHRlZS9nZW5lcmF0ZUdyb3VwZWRJbmRpY2F0b3InLFxyXG5cdFx0XHRpbmRpY2F0b3JHcm91cFxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIEdldCBTZWdtZW50YXRpb24gdmFsdWVzIGJ5IGNvbW1pdHRlZVxyXG5cdCAqIEBwYXJhbSBzZWdtZW50YXRpb25EaW1lbnNpb25Gb3JtSWQgRm9ybUlkIHNlZ21lbnRhdGlvbiBkaW1lbnNpb25cclxuXHQgKiBAcGFyYW0gc2VnbWVudGF0aW9uRGltZW5zaW9uS2V5IEtleSBzZWdtZW50YXRpb24gRGltZW5zaW9uXHJcblx0ICovXHJcblx0Z2V0U2VnbWVudGF0aW9uVmFsdWVzKHNlZ21lbnRhdGlvbkRpbWVuc2lvbkZvcm1JZDogc3RyaW5nLCBzZWdtZW50YXRpb25EaW1lbnNpb25LZXk6IHN0cmluZykge1xyXG5cdFx0bGV0IGh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG5cdFx0aHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCdmb3JtSWQnLCBTdHJpbmcoc2VnbWVudGF0aW9uRGltZW5zaW9uRm9ybUlkKSk7XHJcblx0XHRodHRwUGFyYW1zID0gaHR0cFBhcmFtcy5zZXQoJ2tleUZpZWxkJywgU3RyaW5nKHNlZ21lbnRhdGlvbkRpbWVuc2lvbktleSkpO1xyXG5cclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICtcclxuXHRcdFx0XHQndmlzdWFsaXphdGlvbi1jb21taXR0ZWUvZ2V0U2VnbWVudGF0aW9uVmFsdWVzJyxcclxuXHRcdFx0eyBwYXJhbXM6IGh0dHBQYXJhbXMgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldEJ5Q29tbWl0dGVlSWQoY29tbWl0dGVlSWQ6IG51bWJlcikge1xyXG5cdFx0bGV0IGh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG5cdFx0aHR0cFBhcmFtcyA9IGh0dHBQYXJhbXMuc2V0KCdjb21taXR0ZWVJZCcsIFN0cmluZyhjb21taXR0ZWVJZCkpO1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnY29tbWl0dGVlLWNvbnN1bHQvZ2V0QnlDb21taXR0ZWVJZCcsXHJcblx0XHRcdHsgcGFyYW1zOiBodHRwUGFyYW1zIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQ29tbWl0dGVlQ29uc3VsdChsQ29tbWl0dGVDb25zdWx0OiBDb21taXR0ZWVDb25zdWx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnY29tbWl0dGVlLWNvbnN1bHQvc2F2ZScsXHJcblx0XHRcdGxDb21taXR0ZUNvbnN1bHRcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlT3JkaW5hbChjb21taXR0ZWVPcmRpbmFsVE86IENvbW1pdHRlZU9yZGluYWxUTykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ3Zpc3VhbGl6YXRpb24tY29tbWl0dGVlL3NhdmVPcmRpbmFsJyxcclxuXHRcdFx0Y29tbWl0dGVlT3JkaW5hbFRPXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Y2xvbmVDb21taXR0ZWVDb25zdWx0KGNvbW1pdHRlZUlkT3JpZ2luOiBudW1iZXIsIGNvbW1pdHRlZUlkVGFyZ2V0OiBudW1iZXIpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0YCR7dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZX1jb21taXR0ZWUtY29uc3VsdC9jbG9uZUNvbW1pdHRlZUNvbnN1bHQ/Y29tbWl0dGVlT3JpZ2luPSR7Y29tbWl0dGVlSWRPcmlnaW59JmNvbW1pdHRlZVRhcmdldD0ke2NvbW1pdHRlZUlkVGFyZ2V0fWAsXHJcblx0XHRcdHt9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0Q29tbWl0dGVlTmFtZTogQmVoYXZpb3JTdWJqZWN0PGFueT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbCk7XHJcblxyXG5cdGdldERhdGFDb21taXR0ZWVOYW1lKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuc3ViamVjdENvbW1pdHRlZU5hbWUuYXNPYnNlcnZhYmxlKCk7XHJcblx0fVxyXG5cclxuXHRkYXRhQ29tbWl0dGVlTmFtZShuYW1lOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLnN1YmplY3RDb21taXR0ZWVOYW1lLm5leHQobmFtZSk7XHJcblx0fVxyXG5cclxuXHRnZXREYXRhQ3V0bGluZU5hbWUoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5zdWJqZWN0Q3V0bGluZU5hbWUuYXNPYnNlcnZhYmxlKCk7XHJcblx0fVxyXG5cclxuXHRzZXREYXRhQ3V0bGluZU5hbWUobmFtZTogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5zdWJqZWN0Q3V0bGluZU5hbWUubmV4dChuYW1lKTtcclxuXHR9XHJcbn1cclxuIl19
@@ -0,0 +1,95 @@
1
+ import { DateUtil, NumberUtil } from 'ng-pli-util';
2
+ export class CustomValidator {
3
+ /** It validates if a formcontrol value matches with another one */
4
+ static match(controlToCompare) {
5
+ const validator = (control) => {
6
+ if (control.value === controlToCompare.value)
7
+ return null;
8
+ return { 'match': true };
9
+ };
10
+ return validator;
11
+ }
12
+ /** It validates if a controlToCompare value is presented in values and the control value is valid */
13
+ static matchValues(controlToCompare, values) {
14
+ const validator = (control) => {
15
+ if (values.indexOf(Number(controlToCompare.value)) >= 0 && !control.value)
16
+ return { 'matchvalues': true };
17
+ return null;
18
+ };
19
+ return validator;
20
+ }
21
+ /** It validates required if the control has the value */
22
+ static requiredIf(controlToCompare, value) {
23
+ const validator = (control) => {
24
+ if (controlToCompare != null && controlToCompare != undefined) {
25
+ let valueControl = control.value;
26
+ let valueControlToCompare = controlToCompare.value;
27
+ if (valueControlToCompare == value && !valueControl)
28
+ return { 'requiredIf': true };
29
+ }
30
+ return null;
31
+ };
32
+ return validator;
33
+ }
34
+ /** It validates if the control date value is older than another one */
35
+ static mindate(controlToCompare) {
36
+ const validator = (control) => {
37
+ if (controlToCompare != null && controlToCompare != undefined) {
38
+ let value = control.value;
39
+ let valueToCompare = controlToCompare.value;
40
+ let date = DateUtil.getDate(value);
41
+ let dateToCompare = DateUtil.getDate(valueToCompare);
42
+ if (date != null && dateToCompare != null)
43
+ if (date.getTime() < dateToCompare.getTime())
44
+ return { 'mindate': true };
45
+ }
46
+ return null;
47
+ };
48
+ return validator;
49
+ }
50
+ /** It validates if the control date value is younger than another one */
51
+ static maxdate(controlToCompare) {
52
+ const validator = (control) => {
53
+ if (controlToCompare != null && controlToCompare != undefined) {
54
+ let value = control.value;
55
+ let valueToCompare = controlToCompare.value;
56
+ let date = DateUtil.getDate(value);
57
+ let dateToCompare = DateUtil.getDate(valueToCompare);
58
+ if (date != null && dateToCompare != null)
59
+ if (date.getTime() > dateToCompare.getTime())
60
+ return { 'maxdate': true };
61
+ }
62
+ return null;
63
+ };
64
+ return validator;
65
+ }
66
+ /** It validates if a formcontrol value matches with another one */
67
+ static number() {
68
+ const validator = (control) => {
69
+ if (!control.value || NumberUtil.isNumber(control.value))
70
+ return null;
71
+ return { 'number': true };
72
+ };
73
+ return validator;
74
+ }
75
+ static validNumberByCheck(controlCheckCompare) {
76
+ const validator = (control) => {
77
+ return controlCheckCompare.value != null &&
78
+ controlCheckCompare.value === true &&
79
+ (!control.value || !NumberUtil.isNumber(control.value))
80
+ ? { validnumberbycheck: true }
81
+ : null;
82
+ };
83
+ return validator;
84
+ }
85
+ static emailValidator(control) {
86
+ // RFC 2822 compliant regex
87
+ if (control.value.match(/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/)) {
88
+ return null;
89
+ }
90
+ else {
91
+ return { invalidEmailAddress: true };
92
+ }
93
+ }
94
+ }
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvdXRpbHMvY3VzdG9tLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUduRCxNQUFNLE9BQU8sZUFBZTtJQUV4QixtRUFBbUU7SUFDbkUsTUFBTSxDQUFDLEtBQUssQ0FBQyxnQkFBb0M7UUFDN0MsTUFBTSxTQUFTLEdBQUcsQ0FBQyxPQUF3QixFQUE4QixFQUFFO1lBQ3ZFLElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLO2dCQUN4QyxPQUFPLElBQUksQ0FBQztZQUNoQixPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQTtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxxR0FBcUc7SUFDckcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxnQkFBb0MsRUFBRSxNQUFxQjtRQUMxRSxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQXdCLEVBQThCLEVBQUU7WUFDdkUsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO2dCQUNyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ25DLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQTtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFRCwwREFBMEQ7SUFDMUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxnQkFBb0MsRUFBRSxLQUFVO1FBQzlELE1BQU0sU0FBUyxHQUFHLENBQUMsT0FBd0IsRUFBOEIsRUFBRTtZQUN2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LG1CQUFtQixDQUFDLEtBQUssSUFBSSxJQUFJO2dCQUN0QyxtQkFBbUIsQ0FBQyxLQUFLLEtBQUssSUFBSTtnQkFDbEMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdkQsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFO2dCQUM5QixDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ1gsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTztRQUMzQiwyQkFBMkI7UUFDM0IsSUFDRSxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FDakIsdUlBQXVJLENBQ3hJLEVBQ0QsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRGF0ZVV0aWwsIE51bWJlclV0aWwgfSBmcm9tICduZy1wbGktdXRpbCc7XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEN1c3RvbVZhbGlkYXRvciB7XHJcblxyXG4gICAgLyoqIEl0IHZhbGlkYXRlcyBpZiBhIGZvcm1jb250cm9sIHZhbHVlIG1hdGNoZXMgd2l0aCBhbm90aGVyIG9uZSAqL1xyXG4gICAgc3RhdGljIG1hdGNoKGNvbnRyb2xUb0NvbXBhcmU6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRvckZuIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3IgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPT4ge1xyXG4gICAgICAgICAgICBpZiAoY29udHJvbC52YWx1ZSA9PT0gY29udHJvbFRvQ29tcGFyZS52YWx1ZSlcclxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICByZXR1cm4geyAnbWF0Y2gnOiB0cnVlIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB2YWxpZGF0b3I7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEl0IHZhbGlkYXRlcyBpZiBhIGNvbnRyb2xUb0NvbXBhcmUgdmFsdWUgaXMgcHJlc2VudGVkIGluIHZhbHVlcyBhbmQgdGhlIGNvbnRyb2wgdmFsdWUgaXMgdmFsaWQgKi9cclxuICAgIHN0YXRpYyBtYXRjaFZhbHVlcyhjb250cm9sVG9Db21wYXJlOiBVbnR5cGVkRm9ybUNvbnRyb2wsIHZhbHVlczogQXJyYXk8bnVtYmVyPik6IFZhbGlkYXRvckZuIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3IgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPT4ge1xyXG4gICAgICAgICAgICBpZiAodmFsdWVzLmluZGV4T2YoTnVtYmVyKGNvbnRyb2xUb0NvbXBhcmUudmFsdWUpKSA+PSAwICYmICFjb250cm9sLnZhbHVlKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgJ21hdGNodmFsdWVzJzogdHJ1ZSB9O1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHZhbGlkYXRvcjtcclxuICAgIH1cclxuXHJcbiAgICAvKiogSXQgdmFsaWRhdGVzIHJlcXVpcmVkIGlmIHRoZSBjb250cm9sIGhhcyB0aGUgdmFsdWUgICovXHJcbiAgICBzdGF0aWMgcmVxdWlyZWRJZihjb250cm9sVG9Db21wYXJlOiBVbnR5cGVkRm9ybUNvbnRyb2wsIHZhbHVlOiBhbnkpOiBWYWxpZGF0b3JGbiB7XHJcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9ID0+IHtcclxuICAgICAgICAgICAgaWYgKGNvbnRyb2xUb0NvbXBhcmUgIT0gbnVsbCAmJiBjb250cm9sVG9Db21wYXJlICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlQ29udHJvbCA9IGNvbnRyb2wudmFsdWU7XHJcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWVDb250cm9sVG9Db21wYXJlID0gY29udHJvbFRvQ29tcGFyZS52YWx1ZTtcclxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZUNvbnRyb2xUb0NvbXBhcmUgPT0gdmFsdWUgJiYgIXZhbHVlQ29udHJvbClcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4geyAncmVxdWlyZWRJZic6IHRydWUgfTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB2YWxpZGF0b3I7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEl0IHZhbGlkYXRlcyBpZiB0aGUgY29udHJvbCBkYXRlIHZhbHVlIGlzIG9sZGVyIHRoYW4gYW5vdGhlciBvbmUgKi9cclxuICAgIHN0YXRpYyBtaW5kYXRlKGNvbnRyb2xUb0NvbXBhcmU6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRvckZuIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3IgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPT4ge1xyXG4gICAgICAgICAgICBpZiAoY29udHJvbFRvQ29tcGFyZSAhPSBudWxsICYmIGNvbnRyb2xUb0NvbXBhcmUgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlVG9Db21wYXJlID0gY29udHJvbFRvQ29tcGFyZS52YWx1ZTtcclxuICAgICAgICAgICAgICAgIGxldCBkYXRlID0gRGF0ZVV0aWwuZ2V0RGF0ZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICBsZXQgZGF0ZVRvQ29tcGFyZSA9IERhdGVVdGlsLmdldERhdGUodmFsdWVUb0NvbXBhcmUpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmIChkYXRlICE9IG51bGwgJiYgZGF0ZVRvQ29tcGFyZSAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRlLmdldFRpbWUoKSA8IGRhdGVUb0NvbXBhcmUuZ2V0VGltZSgpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4geyAnbWluZGF0ZSc6IHRydWUgfTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB2YWxpZGF0b3I7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKiBJdCB2YWxpZGF0ZXMgaWYgdGhlIGNvbnRyb2wgZGF0ZSB2YWx1ZSBpcyB5b3VuZ2VyIHRoYW4gYW5vdGhlciBvbmUgKi9cclxuICAgIHN0YXRpYyBtYXhkYXRlKGNvbnRyb2xUb0NvbXBhcmU6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRvckZuIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3IgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPT4ge1xyXG4gICAgICAgICAgICBpZiAoY29udHJvbFRvQ29tcGFyZSAhPSBudWxsICYmIGNvbnRyb2xUb0NvbXBhcmUgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlVG9Db21wYXJlID0gY29udHJvbFRvQ29tcGFyZS52YWx1ZTtcclxuICAgICAgICAgICAgICAgIGxldCBkYXRlID0gRGF0ZVV0aWwuZ2V0RGF0ZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICBsZXQgZGF0ZVRvQ29tcGFyZSA9IERhdGVVdGlsLmdldERhdGUodmFsdWVUb0NvbXBhcmUpO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmIChkYXRlICE9IG51bGwgJiYgZGF0ZVRvQ29tcGFyZSAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRlLmdldFRpbWUoKSA+IGRhdGVUb0NvbXBhcmUuZ2V0VGltZSgpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4geyAnbWF4ZGF0ZSc6IHRydWUgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHZhbGlkYXRvcjtcclxuICAgIH1cclxuXHJcbiAgICAvKiogSXQgdmFsaWRhdGVzIGlmIGEgZm9ybWNvbnRyb2wgdmFsdWUgbWF0Y2hlcyB3aXRoIGFub3RoZXIgb25lICovXHJcbiAgICBzdGF0aWMgbnVtYmVyKCk6IFZhbGlkYXRvckZuIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3IgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0gPT4ge1xyXG4gICAgICAgICAgICBpZiAoIWNvbnRyb2wudmFsdWUgfHwgTnVtYmVyVXRpbC5pc051bWJlcihjb250cm9sLnZhbHVlKSlcclxuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgICAgICByZXR1cm4geyAnbnVtYmVyJzogdHJ1ZSB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdmFsaWRhdG9yO1xyXG4gICAgfVxyXG5cclxuICBzdGF0aWMgdmFsaWROdW1iZXJCeUNoZWNrKGNvbnRyb2xDaGVja0NvbXBhcmU6IFVudHlwZWRGb3JtQ29udHJvbCk6IFZhbGlkYXRvckZuIHtcclxuICAgIGNvbnN0IHZhbGlkYXRvciA9IChcclxuICAgICAgY29udHJvbDogQWJzdHJhY3RDb250cm9sXHJcbiAgICApOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSA9PiB7XHJcbiAgICAgIHJldHVybiBjb250cm9sQ2hlY2tDb21wYXJlLnZhbHVlICE9IG51bGwgJiZcclxuICAgICAgICBjb250cm9sQ2hlY2tDb21wYXJlLnZhbHVlID09PSB0cnVlICYmXHJcbiAgICAgICAgKCFjb250cm9sLnZhbHVlIHx8ICFOdW1iZXJVdGlsLmlzTnVtYmVyKGNvbnRyb2wudmFsdWUpKVxyXG4gICAgICAgID8geyB2YWxpZG51bWJlcmJ5Y2hlY2s6IHRydWUgfVxyXG4gICAgICAgIDogbnVsbDtcclxuICAgIH07XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGVtYWlsVmFsaWRhdG9yKGNvbnRyb2wpIHtcclxuICAgIC8vIFJGQyAyODIyIGNvbXBsaWFudCByZWdleFxyXG4gICAgaWYgKFxyXG4gICAgICBjb250cm9sLnZhbHVlLm1hdGNoKFxyXG4gICAgICAgIC9bYS16MC05ISMkJSYnKisvPT9eX2B7fH1+LV0rKD86XFwuW2EtejAtOSEjJCUmJyorLz0/Xl9ge3x9fi1dKykqQCg/OlthLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT9cXC4pK1thLXowLTldKD86W2EtejAtOS1dKlthLXowLTldKT8vXHJcbiAgICAgIClcclxuICAgICkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB7IGludmFsaWRFbWFpbEFkZHJlc3M6IHRydWUgfTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,35 @@
1
+ import { UntypedFormGroup, UntypedFormControl } from '@angular/forms';
2
+ export class FormUtil {
3
+ /** It triggers the validation of every form-control from a formGroup */
4
+ static validateFormFields(formGroup) {
5
+ Object.keys(formGroup.controls).forEach((field) => {
6
+ var control = formGroup.get(field);
7
+ if (control instanceof UntypedFormControl) {
8
+ control.markAsTouched({ onlySelf: true });
9
+ }
10
+ else if (control instanceof UntypedFormGroup) {
11
+ FormUtil.validateFormFields(control);
12
+ }
13
+ });
14
+ }
15
+ /** It returns a set of invalid controls */
16
+ static getInvalidControls(formGroup) {
17
+ const invalid = [];
18
+ const controls = formGroup.controls;
19
+ for (const name in controls) {
20
+ if (controls[name].invalid) {
21
+ invalid.push(name);
22
+ }
23
+ }
24
+ return invalid;
25
+ }
26
+ /** It validates if a formcontrol has any error */
27
+ static hasErrors(formControl) {
28
+ return formControl && formControl.errors && (formControl.dirty || formControl.touched);
29
+ }
30
+ /** It validates if a formcontrol has a specific error */
31
+ static hasError(formControl, error) {
32
+ return FormUtil.hasErrors(formControl) && formControl.errors[error];
33
+ }
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcGxpLWNvbW1vbnMvc3JjL2xpYi91dGlscy9mb3JtLXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEUsTUFBTSxPQUFPLFFBQVE7SUFDcEIsd0VBQXdFO0lBQ3hFLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxTQUEyQjtRQUNwRCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNqRCxJQUFJLE9BQU8sR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25DLElBQUksT0FBTyxZQUFZLGtCQUFrQixFQUFFLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMzQyxDQUFDO2lCQUFNLElBQUksT0FBTyxZQUFZLGdCQUFnQixFQUFFLENBQUM7Z0JBQ2hELFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsMkNBQTJDO0lBQzNDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxTQUEyQjtRQUNwRCxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQztRQUNwQyxLQUFLLE1BQU0sSUFBSSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzdCLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BCLENBQUM7UUFDRixDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDaEIsQ0FBQztJQUVELGtEQUFrRDtJQUNsRCxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQStCO1FBQy9DLE9BQU8sV0FBVyxJQUFJLFdBQVcsQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQseURBQXlEO0lBQ3pELE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBK0IsRUFBRSxLQUFhO1FBQzdELE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxXQUFXLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JFLENBQUM7Q0FDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAsIFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBjbGFzcyBGb3JtVXRpbCB7XHJcblx0LyoqIEl0IHRyaWdnZXJzIHRoZSB2YWxpZGF0aW9uIG9mIGV2ZXJ5IGZvcm0tY29udHJvbCBmcm9tIGEgZm9ybUdyb3VwICovXHJcblx0c3RhdGljIHZhbGlkYXRlRm9ybUZpZWxkcyhmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXApIHtcclxuXHRcdE9iamVjdC5rZXlzKGZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaCgoZmllbGQpID0+IHtcclxuXHRcdFx0dmFyIGNvbnRyb2wgPSBmb3JtR3JvdXAuZ2V0KGZpZWxkKTtcclxuXHRcdFx0aWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBVbnR5cGVkRm9ybUNvbnRyb2wpIHtcclxuXHRcdFx0XHRjb250cm9sLm1hcmtBc1RvdWNoZWQoeyBvbmx5U2VsZjogdHJ1ZSB9KTtcclxuXHRcdFx0fSBlbHNlIGlmIChjb250cm9sIGluc3RhbmNlb2YgVW50eXBlZEZvcm1Hcm91cCkge1xyXG5cdFx0XHRcdEZvcm1VdGlsLnZhbGlkYXRlRm9ybUZpZWxkcyhjb250cm9sKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhIHNldCBvZiBpbnZhbGlkIGNvbnRyb2xzICovXHJcblx0c3RhdGljIGdldEludmFsaWRDb250cm9scyhmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXApIHtcclxuXHRcdGNvbnN0IGludmFsaWQgPSBbXTtcclxuXHRcdGNvbnN0IGNvbnRyb2xzID0gZm9ybUdyb3VwLmNvbnRyb2xzO1xyXG5cdFx0Zm9yIChjb25zdCBuYW1lIGluIGNvbnRyb2xzKSB7XHJcblx0XHRcdGlmIChjb250cm9sc1tuYW1lXS5pbnZhbGlkKSB7XHJcblx0XHRcdFx0aW52YWxpZC5wdXNoKG5hbWUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gaW52YWxpZDtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCB2YWxpZGF0ZXMgaWYgYSBmb3JtY29udHJvbCBoYXMgYW55IGVycm9yICovXHJcblx0c3RhdGljIGhhc0Vycm9ycyhmb3JtQ29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKSB7XHJcblx0XHRyZXR1cm4gZm9ybUNvbnRyb2wgJiYgZm9ybUNvbnRyb2wuZXJyb3JzICYmIChmb3JtQ29udHJvbC5kaXJ0eSB8fCBmb3JtQ29udHJvbC50b3VjaGVkKTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCB2YWxpZGF0ZXMgaWYgYSBmb3JtY29udHJvbCBoYXMgYSBzcGVjaWZpYyBlcnJvciAqL1xyXG5cdHN0YXRpYyBoYXNFcnJvcihmb3JtQ29udHJvbDogVW50eXBlZEZvcm1Db250cm9sLCBlcnJvcjogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gRm9ybVV0aWwuaGFzRXJyb3JzKGZvcm1Db250cm9sKSAmJiBmb3JtQ29udHJvbC5lcnJvcnNbZXJyb3JdO1xyXG5cdH1cclxufVxyXG4iXX0=