ng-pli-commons 0.0.1908 → 1.0.1

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 (471) hide show
  1. package/esm2022/lib/components/backoffice.commons.component.mjs +40 -0
  2. package/esm2022/lib/components/common.lists.component.mjs +194 -0
  3. package/{esm2020 → esm2022}/lib/components/configuration-token/configuration-token-subject.service.mjs +23 -23
  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 +40 -0
  8. package/{esm2020 → esm2022}/lib/components/dashboard.commons.component.mjs +84 -84
  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 +86 -0
  12. package/esm2022/lib/components/pdf-analyzer/pdf-analyzer.component.mjs +162 -0
  13. package/{esm2020 → esm2022}/lib/components/pdf-config/pdf-config.component.mjs +170 -170
  14. package/esm2022/lib/components/pdf-generator/pdf-generator.component.mjs +223 -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 +199 -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 +1006 -0
  22. package/esm2022/lib/components/tokens-calculator/tokens-calculator.component.mjs +128 -0
  23. package/{esm2020 → esm2022}/lib/directives/currency-colfuturo-formatter.directive.mjs +47 -47
  24. package/{esm2020 → esm2022}/lib/directives/currency-decimal-colfuturo-formatter.directive.mjs +34 -34
  25. package/esm2022/lib/ng-pli-commons.module.mjs +387 -0
  26. package/{esm2020 → esm2022}/lib/ng-pli-commons.service.mjs +14 -14
  27. package/esm2022/lib/pipes/currency-colfuturo.pipe.mjs +35 -0
  28. package/{esm2020 → esm2022}/lib/pipes/currency-decimal-colfuturo.pipe.mjs +36 -36
  29. package/{esm2020 → esm2022}/lib/pipes/currency-print-colfuturo.pipe.mjs +33 -33
  30. package/esm2022/lib/pipes/thousands.pipe.mjs +60 -0
  31. package/{esm2020 → esm2022}/lib/services/application-fill-percentage.service.mjs +30 -30
  32. package/{esm2020 → esm2022}/lib/services/application-tag.service.mjs +56 -56
  33. package/{esm2020 → esm2022}/lib/services/application.service.mjs +247 -247
  34. package/esm2022/lib/services/authentication.service.mjs +133 -0
  35. package/{esm2020 → esm2022}/lib/services/blocked-beneficiary.service.mjs +42 -42
  36. package/esm2022/lib/services/budget-application.service.mjs +265 -0
  37. package/{esm2020 → esm2022}/lib/services/budget-simulation.service.mjs +61 -61
  38. package/esm2022/lib/services/budget.service.mjs +205 -0
  39. package/{esm2020 → esm2022}/lib/services/closure-wallet.service.mjs +39 -39
  40. package/{esm2020 → esm2022}/lib/services/cnf-correspondence-document-manager.service.mjs +39 -39
  41. package/{esm2020 → esm2022}/lib/services/committee-money.service.mjs +44 -44
  42. package/{esm2020 → esm2022}/lib/services/committee-pdf.service.mjs +27 -27
  43. package/{esm2020 → esm2022}/lib/services/committee-snapshot.service.mjs +60 -60
  44. package/{esm2020 → esm2022}/lib/services/common-info.service.mjs +51 -51
  45. package/esm2022/lib/services/common.service.mjs +291 -0
  46. package/esm2022/lib/services/configuration-document.service.mjs +297 -0
  47. package/{esm2020 → esm2022}/lib/services/configuration-minisite.service.mjs +26 -26
  48. package/{esm2020 → esm2022}/lib/services/configuration.service.mjs +53 -53
  49. package/{esm2020 → esm2022}/lib/services/correspondence-document-category.service.mjs +31 -31
  50. package/{esm2020 → esm2022}/lib/services/correspondence-manager.service.mjs +67 -67
  51. package/{esm2020 → esm2022}/lib/services/credit-score.service.mjs +48 -48
  52. package/{esm2020 → esm2022}/lib/services/credit-study.service.mjs +292 -292
  53. package/{esm2020 → esm2022}/lib/services/cube.service.mjs +27 -27
  54. package/{esm2020 → esm2022}/lib/services/data-form-history.service.mjs +25 -25
  55. package/{esm2020 → esm2022}/lib/services/data-form.service.mjs +176 -176
  56. package/{esm2020 → esm2022}/lib/services/data-letter-segmentation.service.mjs +64 -64
  57. package/{esm2020 → esm2022}/lib/services/document-analysis-auto.service.mjs +27 -27
  58. package/{esm2020 → esm2022}/lib/services/document-history.service.mjs +43 -43
  59. package/{esm2020 → esm2022}/lib/services/document-management.service.mjs +57 -57
  60. package/{esm2020 → esm2022}/lib/services/document-validation-attempt.service.mjs +32 -32
  61. package/{esm2020 → esm2022}/lib/services/document.service.mjs +131 -131
  62. package/esm2022/lib/services/documentary.type.service.mjs +69 -0
  63. package/{esm2020 → esm2022}/lib/services/email.service.mjs +30 -30
  64. package/{esm2020 → esm2022}/lib/services/evaluation.service.mjs +181 -181
  65. package/{esm2020 → esm2022}/lib/services/export-excel.service.mjs +32 -32
  66. package/esm2022/lib/services/file.service.mjs +153 -0
  67. package/{esm2020 → esm2022}/lib/services/form.service.mjs +112 -112
  68. package/{esm2020 → esm2022}/lib/services/gic-client-disbursement-metadata.service.mjs +31 -31
  69. package/{esm2020 → esm2022}/lib/services/gic-client.service.mjs +49 -49
  70. package/{esm2020 → esm2022}/lib/services/gic-cnf-bankvision-transaction.service.mjs +31 -31
  71. package/{esm2020 → esm2022}/lib/services/gic-cnf-closing-date.service.mjs +34 -34
  72. package/{esm2020 → esm2022}/lib/services/gic-cnf-maintenance.service.mjs +30 -30
  73. package/{esm2020 → esm2022}/lib/services/gic-collection.service.mjs +53 -53
  74. package/{esm2020 → esm2022}/lib/services/gic-disbursement.service.mjs +39 -39
  75. package/{esm2020 → esm2022}/lib/services/gic-extract.service.mjs +41 -41
  76. package/{esm2020 → esm2022}/lib/services/gic-log.service.mjs +41 -41
  77. package/{esm2020 → esm2022}/lib/services/gic-payment-application.service.mjs +35 -35
  78. package/{esm2020 → esm2022}/lib/services/gic-payment-plan-cube.service.mjs +27 -27
  79. package/{esm2020 → esm2022}/lib/services/gic-payment-plan.service.mjs +32 -32
  80. package/{esm2020 → esm2022}/lib/services/gic-trm.service.mjs +27 -27
  81. package/{esm2020 → esm2022}/lib/services/global.show.task.service.mjs +37 -37
  82. package/{esm2020 → esm2022}/lib/services/guarantee-document.service.mjs +52 -52
  83. package/{esm2020 → esm2022}/lib/services/guarantee-enrollment.service.mjs +37 -37
  84. package/esm2022/lib/services/guarantee.service.mjs +128 -0
  85. package/{esm2020 → esm2022}/lib/services/hash.service.mjs +36 -36
  86. package/{esm2020 → esm2022}/lib/services/import-data.service.mjs +27 -27
  87. package/{esm2020 → esm2022}/lib/services/import-excel-gic.service.mjs +45 -45
  88. package/{esm2020 → esm2022}/lib/services/initial-configuration-gic-parameters.service.mjs +51 -51
  89. package/{esm2020 → esm2022}/lib/services/initial-record.service.mjs +51 -51
  90. package/{esm2020 → esm2022}/lib/services/integration-ado.service.mjs +54 -54
  91. package/{esm2020 → esm2022}/lib/services/interaction-application-user.service.mjs +81 -81
  92. package/{esm2020 → esm2022}/lib/services/interest-adjustment.service.mjs +34 -34
  93. package/esm2022/lib/services/keys-assignation.service.mjs +127 -0
  94. package/{esm2020 → esm2022}/lib/services/legalization.service.mjs +150 -150
  95. package/{esm2020 → esm2022}/lib/services/letter-campaing.service.mjs +49 -49
  96. package/{esm2020 → esm2022}/lib/services/letter-task-mapping.service.mjs +40 -40
  97. package/{esm2020 → esm2022}/lib/services/log.service.mjs +41 -41
  98. package/{esm2020 → esm2022}/lib/services/maintenance.service.mjs +66 -66
  99. package/{esm2020 → esm2022}/lib/services/master-category.service.mjs +66 -66
  100. package/{esm2020 → esm2022}/lib/services/master-program.service.mjs +78 -78
  101. package/{esm2020 → esm2022}/lib/services/master-university.service.mjs +68 -68
  102. package/{esm2020 → esm2022}/lib/services/migration-plis.service.mjs +27 -27
  103. package/{esm2020 → esm2022}/lib/services/migration-survey-queue.service.mjs +24 -24
  104. package/{esm2020 → esm2022}/lib/services/page.service.mjs +38 -38
  105. package/{esm2020 → esm2022}/lib/services/partner-system.service.mjs +30 -30
  106. package/{esm2020 → esm2022}/lib/services/partner.service.mjs +34 -34
  107. package/{esm2020 → esm2022}/lib/services/pdf-analyzer.service.mjs +33 -33
  108. package/{esm2020 → esm2022}/lib/services/people-master.service.mjs +42 -42
  109. package/{esm2020 → esm2022}/lib/services/permission.service.mjs +29 -29
  110. package/{esm2020 → esm2022}/lib/services/pli-cnf-acuity-fields.service.mjs +34 -34
  111. package/{esm2020 → esm2022}/lib/services/pli-cnf-app-card-filter.service.mjs +40 -40
  112. package/{esm2020 → esm2022}/lib/services/pli-cnf-appointment-type.service.mjs +41 -41
  113. package/{esm2020 → esm2022}/lib/services/pli-cnf-budget-program-type.service.mjs +54 -54
  114. package/{esm2020 → esm2022}/lib/services/pli-cnf-budget.service.mjs +31 -31
  115. package/{esm2020 → esm2022}/lib/services/pli-cnf-cloning.service.mjs +27 -27
  116. package/{esm2020 → esm2022}/lib/services/pli-cnf-committee-pdf-config-table-config.service.mjs +47 -47
  117. package/{esm2020 → esm2022}/lib/services/pli-cnf-committee-pdf-gen-status.service.mjs +30 -30
  118. package/{esm2020 → esm2022}/lib/services/pli-cnf-committee-valpro-columns.service.mjs +42 -42
  119. package/{esm2020 → esm2022}/lib/services/pli-cnf-committee-visualization-mode.service.mjs +42 -42
  120. package/{esm2020 → esm2022}/lib/services/pli-cnf-committee.service.mjs +51 -51
  121. package/{esm2020 → esm2022}/lib/services/pli-cnf-config-minisite.service.mjs +90 -90
  122. package/{esm2020 → esm2022}/lib/services/pli-cnf-configuration-credit-study.service.mjs +41 -41
  123. package/{esm2020 → esm2022}/lib/services/pli-cnf-document-management.service.mjs +40 -40
  124. package/{esm2020 → esm2022}/lib/services/pli-cnf-dynamic-keys-assign.service.mjs +52 -52
  125. package/{esm2020 → esm2022}/lib/services/pli-cnf-evaluation-task-mailing.service.mjs +31 -31
  126. package/esm2022/lib/services/pli-cnf-evaluation-task.service.mjs +112 -0
  127. package/{esm2020 → esm2022}/lib/services/pli-cnf-evaluation-template.service.mjs +95 -95
  128. package/{esm2020 → esm2022}/lib/services/pli-cnf-form-edit.service.mjs +68 -68
  129. package/{esm2020 → esm2022}/lib/services/pli-cnf-form-multiaplicacion.service.mjs +46 -46
  130. package/{esm2020 → esm2022}/lib/services/pli-cnf-guarantee-documents-template.service.mjs +40 -40
  131. package/{esm2020 → esm2022}/lib/services/pli-cnf-guarantee-token.service.mjs +42 -42
  132. package/{esm2020 → esm2022}/lib/services/pli-cnf-header.service.mjs +39 -39
  133. package/{esm2020 → esm2022}/lib/services/pli-cnf-indicator.service.mjs +39 -39
  134. package/{esm2020 → esm2022}/lib/services/pli-cnf-information-system.service.mjs +24 -24
  135. package/{esm2020 → esm2022}/lib/services/pli-cnf-interaction.service.mjs +78 -78
  136. package/{esm2020 → esm2022}/lib/services/pli-cnf-letter-template-type.service.mjs +29 -29
  137. package/{esm2020 → esm2022}/lib/services/pli-cnf-letter-template.service.mjs +48 -48
  138. package/{esm2020 → esm2022}/lib/services/pli-cnf-look-and-feel.service.mjs +28 -28
  139. package/{esm2020 → esm2022}/lib/services/pli-cnf-mail.service.mjs +30 -30
  140. package/{esm2020 → esm2022}/lib/services/pli-cnf-menu-form.service.mjs +34 -34
  141. package/{esm2020 → esm2022}/lib/services/pli-cnf-migration-plis-field-budget.service.mjs +33 -33
  142. package/{esm2020 → esm2022}/lib/services/pli-cnf-migration-plis-field.service.mjs +47 -47
  143. package/{esm2020 → esm2022}/lib/services/pli-cnf-migration-status-plis.service.mjs +44 -44
  144. package/{esm2020 → esm2022}/lib/services/pli-cnf-page-section-form.service.mjs +66 -66
  145. package/{esm2020 → esm2022}/lib/services/pli-cnf-page-sub-process.service.mjs +25 -25
  146. package/{esm2020 → esm2022}/lib/services/pli-cnf-pdfs.service.mjs +31 -31
  147. package/{esm2020 → esm2022}/lib/services/pli-cnf-profile-form.service.mjs +40 -40
  148. package/{esm2020 → esm2022}/lib/services/pli-cnf-profile-user.service.mjs +49 -49
  149. package/{esm2020 → esm2022}/lib/services/pli-cnf-project-summary.service.mjs +39 -39
  150. package/{esm2020 → esm2022}/lib/services/pli-cnf-scenario.service.mjs +47 -47
  151. package/{esm2020 → esm2022}/lib/services/pli-cnf-segmentation.service.mjs +72 -72
  152. package/{esm2020 → esm2022}/lib/services/pli-cnf-snapshot-token.service.mjs +42 -42
  153. package/{esm2020 → esm2022}/lib/services/pli-cnf-status-flow-interaction.service.mjs +74 -74
  154. package/{esm2020 → esm2022}/lib/services/pli-cnf-status-flow.service.mjs +56 -56
  155. package/{esm2020 → esm2022}/lib/services/pli-cnf-support-document-category.service.mjs +47 -47
  156. package/{esm2020 → esm2022}/lib/services/pli-cnf-support-document.service.mjs +56 -56
  157. package/{esm2020 → esm2022}/lib/services/pli-cnf-survey-document.service.mjs +37 -37
  158. package/{esm2020 → esm2022}/lib/services/pli-cnf-survey-pdf.service.mjs +34 -34
  159. package/{esm2020 → esm2022}/lib/services/pli-cnf-survey.service.mjs +46 -46
  160. package/{esm2020 → esm2022}/lib/services/pli-cnf-task-group.service.mjs +33 -33
  161. package/{esm2020 → esm2022}/lib/services/pli-cnf-text-category.service.mjs +38 -38
  162. package/{esm2020 → esm2022}/lib/services/pli-cnf-text-option.service.mjs +39 -39
  163. package/{esm2020 → esm2022}/lib/services/pli-cnf-text.service.mjs +62 -62
  164. package/{esm2020 → esm2022}/lib/services/pli-cnf-type-text.service.mjs +45 -45
  165. package/{esm2020 → esm2022}/lib/services/pli-cnf-university-article.service.mjs +39 -39
  166. package/{esm2020 → esm2022}/lib/services/pli-cnf-user-calendar.service.mjs +36 -36
  167. package/{esm2020 → esm2022}/lib/services/pli-cnf-user-workspace.service.mjs +35 -35
  168. package/{esm2020 → esm2022}/lib/services/pli-cnf-valpro-keys.service.mjs +35 -35
  169. package/{esm2020 → esm2022}/lib/services/pli-cnf-workspace-segmentation.service.mjs +31 -31
  170. package/{esm2020 → esm2022}/lib/services/pli-message-type.service.mjs +40 -40
  171. package/{esm2020 → esm2022}/lib/services/pli-multiple-value-filter.service.mjs +39 -39
  172. package/{esm2020 → esm2022}/lib/services/pli-promocion-username.service.mjs +57 -57
  173. package/{esm2020 → esm2022}/lib/services/pli-seg-action-user.service.mjs +37 -37
  174. package/{esm2020 → esm2022}/lib/services/pli-segmentation.service.mjs +130 -130
  175. package/{esm2020 → esm2022}/lib/services/pli-tag-assignment.service.mjs +36 -36
  176. package/{esm2020 → esm2022}/lib/services/pli-tag.service.mjs +55 -55
  177. package/{esm2020 → esm2022}/lib/services/pli-user.service.mjs +51 -51
  178. package/{esm2020 → esm2022}/lib/services/plis-beneficiario.service.mjs +29 -29
  179. package/{esm2020 → esm2022}/lib/services/plis-estatus-change.service.mjs +30 -30
  180. package/esm2022/lib/services/ppp.service.mjs +360 -0
  181. package/{esm2020 → esm2022}/lib/services/profile.service.mjs +60 -60
  182. package/esm2022/lib/services/progress-bar.service.mjs +40 -0
  183. package/{esm2020 → esm2022}/lib/services/promotion-score.service.mjs +44 -44
  184. package/{esm2020 → esm2022}/lib/services/registry-identifier.service.mjs +39 -39
  185. package/{esm2020 → esm2022}/lib/services/return-refund.service.mjs +53 -53
  186. package/esm2022/lib/services/segmentation-tokens.service.mjs +43 -0
  187. package/{esm2020 → esm2022}/lib/services/segmentation-user-service.service.mjs +90 -90
  188. package/{esm2020 → esm2022}/lib/services/segmentation.service.mjs +31 -31
  189. package/esm2022/lib/services/send-application.service.mjs +492 -0
  190. package/{esm2020 → esm2022}/lib/services/sesion-form.service.mjs +31 -31
  191. package/{esm2020 → esm2022}/lib/services/sesion.service.mjs +48 -48
  192. package/{esm2020 → esm2022}/lib/services/spinner.service.mjs +16 -16
  193. package/{esm2020 → esm2022}/lib/services/sponsorship-letter.service.mjs +68 -68
  194. package/{esm2020 → esm2022}/lib/services/status.service.mjs +100 -100
  195. package/{esm2020 → esm2022}/lib/services/summary-budget.service.mjs +24 -24
  196. package/{esm2020 → esm2022}/lib/services/survey-metadata.service.mjs +28 -28
  197. package/{esm2020 → esm2022}/lib/services/survey-queue.service.mjs +24 -24
  198. package/{esm2020 → esm2022}/lib/services/survey.service.mjs +52 -52
  199. package/{esm2020 → esm2022}/lib/services/tasa.cambio.service.mjs +35 -35
  200. package/{esm2020 → esm2022}/lib/services/token-transformation.service.mjs +62 -62
  201. package/esm2022/lib/services/token.service.mjs +1345 -0
  202. package/{esm2020 → esm2022}/lib/services/university.service.mjs +50 -50
  203. package/esm2022/lib/services/upload-documents.service.mjs +60 -0
  204. package/{esm2020 → esm2022}/lib/services/user.service.mjs +28 -28
  205. package/{esm2020 → esm2022}/lib/services/visualization-committee.service.mjs +84 -84
  206. package/esm2022/lib/utils/custom-validator.mjs +95 -0
  207. package/esm2022/lib/utils/form-util.mjs +35 -0
  208. package/esm2022/lib/utils/formio-util.mjs +582 -0
  209. package/{esm2020 → esm2022}/lib/utils/version-commons.mjs +9 -9
  210. package/{esm2020 → esm2022}/ng-pli-commons.mjs +4 -4
  211. package/{esm2020 → esm2022}/public-api.mjs +214 -214
  212. package/{esm2020 → esm2022}/version.mjs +29 -29
  213. package/{fesm2020 → fesm2022}/ng-pli-commons.mjs +16724 -16725
  214. package/fesm2022/ng-pli-commons.mjs.map +1 -0
  215. package/{ng-pli-commons.d.ts → index.d.ts} +5 -5
  216. package/lib/components/backoffice.commons.component.d.ts +15 -15
  217. package/lib/components/common.lists.component.d.ts +61 -61
  218. package/lib/components/configuration-token/configuration-token-subject.service.d.ts +10 -10
  219. package/lib/components/configuration-token/configuration-token.component.d.ts +124 -124
  220. package/lib/components/configuration-token/guarantee-token/guarantee-token.component.d.ts +33 -33
  221. package/lib/components/configuration-token/snapshot-token/snapshot-token.component.d.ts +37 -37
  222. package/lib/components/configuration.commons.component.d.ts +15 -15
  223. package/lib/components/dashboard.commons.component.d.ts +39 -39
  224. package/lib/components/dynamic-filter/dynamic-filter.component.d.ts +50 -50
  225. package/lib/components/excel-to-json/excel-to-json.component.d.ts +12 -12
  226. package/lib/components/frontoffice.commons.component.d.ts +26 -26
  227. package/lib/components/pdf-analyzer/pdf-analyzer.component.d.ts +36 -36
  228. package/lib/components/pdf-config/pdf-config.component.d.ts +78 -78
  229. package/lib/components/pdf-generator/pdf-generator.component.d.ts +69 -69
  230. package/lib/components/pdf-merge-visualizer/pdf-merge-visualizer.component.d.ts +114 -114
  231. package/lib/components/pdf-visualizer/pdf-visualizer.component.d.ts +147 -147
  232. package/lib/components/progress-bar/progress-bar.component.d.ts +30 -30
  233. package/lib/components/segmentation-tokens/segmentation-tokens.component.d.ts +48 -48
  234. package/lib/components/select-ppp/select-ppp.component.d.ts +42 -42
  235. package/lib/components/show-hide-columns/show-hide-columns-table.component.d.ts +39 -39
  236. package/lib/components/token/token.component.d.ts +99 -99
  237. package/lib/components/tokens-calculator/tokens-calculator.component.d.ts +37 -37
  238. package/lib/directives/currency-colfuturo-formatter.directive.d.ts +14 -14
  239. package/lib/directives/currency-decimal-colfuturo-formatter.directive.d.ts +13 -13
  240. package/lib/ng-pli-commons.module.d.ts +47 -47
  241. package/lib/ng-pli-commons.service.d.ts +6 -6
  242. package/lib/pipes/currency-colfuturo.pipe.d.ts +12 -12
  243. package/lib/pipes/currency-decimal-colfuturo.pipe.d.ts +11 -11
  244. package/lib/pipes/currency-print-colfuturo.pipe.d.ts +11 -11
  245. package/lib/pipes/thousands.pipe.d.ts +9 -9
  246. package/lib/services/application-fill-percentage.service.d.ts +15 -15
  247. package/lib/services/application-tag.service.d.ts +23 -23
  248. package/lib/services/application.service.d.ts +107 -107
  249. package/lib/services/authentication.service.d.ts +45 -45
  250. package/lib/services/blocked-beneficiary.service.d.ts +17 -17
  251. package/lib/services/budget-application.service.d.ts +52 -52
  252. package/lib/services/budget-simulation.service.d.ts +32 -32
  253. package/lib/services/budget.service.d.ts +65 -65
  254. package/lib/services/closure-wallet.service.d.ts +16 -16
  255. package/lib/services/cnf-correspondence-document-manager.service.d.ts +14 -14
  256. package/lib/services/committee-money.service.d.ts +12 -12
  257. package/lib/services/committee-pdf.service.d.ts +13 -13
  258. package/lib/services/committee-snapshot.service.d.ts +24 -24
  259. package/lib/services/common-info.service.d.ts +30 -30
  260. package/lib/services/common.service.d.ts +103 -103
  261. package/lib/services/configuration-document.service.d.ts +84 -84
  262. package/lib/services/configuration-minisite.service.d.ts +13 -13
  263. package/lib/services/configuration.service.d.ts +15 -15
  264. package/lib/services/correspondence-document-category.service.d.ts +12 -12
  265. package/lib/services/correspondence-manager.service.d.ts +21 -21
  266. package/lib/services/credit-score.service.d.ts +14 -14
  267. package/lib/services/credit-study.service.d.ts +52 -52
  268. package/lib/services/cube.service.d.ts +14 -14
  269. package/lib/services/data-form-history.service.d.ts +13 -13
  270. package/lib/services/data-form.service.d.ts +82 -82
  271. package/lib/services/data-letter-segmentation.service.d.ts +20 -20
  272. package/lib/services/document-analysis-auto.service.d.ts +14 -14
  273. package/lib/services/document-history.service.d.ts +18 -18
  274. package/lib/services/document-management.service.d.ts +22 -22
  275. package/lib/services/document-validation-attempt.service.d.ts +13 -13
  276. package/lib/services/document.service.d.ts +51 -51
  277. package/lib/services/documentary.type.service.d.ts +23 -23
  278. package/lib/services/email.service.d.ts +15 -15
  279. package/lib/services/evaluation.service.d.ts +58 -58
  280. package/lib/services/export-excel.service.d.ts +8 -8
  281. package/lib/services/file.service.d.ts +63 -63
  282. package/lib/services/form.service.d.ts +39 -39
  283. package/lib/services/gic-client-disbursement-metadata.service.d.ts +12 -12
  284. package/lib/services/gic-client.service.d.ts +20 -20
  285. package/lib/services/gic-cnf-bankvision-transaction.service.d.ts +13 -13
  286. package/lib/services/gic-cnf-closing-date.service.d.ts +15 -15
  287. package/lib/services/gic-cnf-maintenance.service.d.ts +13 -13
  288. package/lib/services/gic-collection.service.d.ts +19 -19
  289. package/lib/services/gic-disbursement.service.d.ts +16 -16
  290. package/lib/services/gic-extract.service.d.ts +15 -15
  291. package/lib/services/gic-log.service.d.ts +17 -17
  292. package/lib/services/gic-payment-application.service.d.ts +15 -15
  293. package/lib/services/gic-payment-plan-cube.service.d.ts +13 -13
  294. package/lib/services/gic-payment-plan.service.d.ts +19 -19
  295. package/lib/services/gic-trm.service.d.ts +14 -14
  296. package/lib/services/global.show.task.service.d.ts +20 -20
  297. package/lib/services/guarantee-document.service.d.ts +17 -17
  298. package/lib/services/guarantee-enrollment.service.d.ts +14 -14
  299. package/lib/services/guarantee.service.d.ts +34 -34
  300. package/lib/services/hash.service.d.ts +18 -18
  301. package/lib/services/import-data.service.d.ts +14 -14
  302. package/lib/services/import-excel-gic.service.d.ts +22 -22
  303. package/lib/services/initial-configuration-gic-parameters.service.d.ts +19 -19
  304. package/lib/services/initial-record.service.d.ts +24 -24
  305. package/lib/services/integration-ado.service.d.ts +15 -15
  306. package/lib/services/interaction-application-user.service.d.ts +28 -28
  307. package/lib/services/interest-adjustment.service.d.ts +16 -16
  308. package/lib/services/keys-assignation.service.d.ts +33 -33
  309. package/lib/services/legalization.service.d.ts +46 -46
  310. package/lib/services/letter-campaing.service.d.ts +24 -24
  311. package/lib/services/letter-task-mapping.service.d.ts +22 -22
  312. package/lib/services/log.service.d.ts +17 -17
  313. package/lib/services/maintenance.service.d.ts +23 -23
  314. package/lib/services/master-category.service.d.ts +40 -40
  315. package/lib/services/master-program.service.d.ts +45 -45
  316. package/lib/services/master-university.service.d.ts +40 -40
  317. package/lib/services/migration-plis.service.d.ts +14 -14
  318. package/lib/services/migration-survey-queue.service.d.ts +12 -12
  319. package/lib/services/page.service.d.ts +18 -18
  320. package/lib/services/partner-system.service.d.ts +13 -13
  321. package/lib/services/partner.service.d.ts +17 -17
  322. package/lib/services/pdf-analyzer.service.d.ts +11 -11
  323. package/lib/services/people-master.service.d.ts +14 -14
  324. package/lib/services/permission.service.d.ts +14 -14
  325. package/lib/services/pli-cnf-acuity-fields.service.d.ts +14 -14
  326. package/lib/services/pli-cnf-app-card-filter.service.d.ts +20 -20
  327. package/lib/services/pli-cnf-appointment-type.service.d.ts +16 -16
  328. package/lib/services/pli-cnf-budget-program-type.service.d.ts +18 -18
  329. package/lib/services/pli-cnf-budget.service.d.ts +13 -13
  330. package/lib/services/pli-cnf-cloning.service.d.ts +12 -12
  331. package/lib/services/pli-cnf-committee-pdf-config-table-config.service.d.ts +19 -19
  332. package/lib/services/pli-cnf-committee-pdf-gen-status.service.d.ts +13 -13
  333. package/lib/services/pli-cnf-committee-valpro-columns.service.d.ts +15 -15
  334. package/lib/services/pli-cnf-committee-visualization-mode.service.d.ts +17 -17
  335. package/lib/services/pli-cnf-committee.service.d.ts +21 -21
  336. package/lib/services/pli-cnf-config-minisite.service.d.ts +26 -26
  337. package/lib/services/pli-cnf-configuration-credit-study.service.d.ts +16 -16
  338. package/lib/services/pli-cnf-document-management.service.d.ts +15 -15
  339. package/lib/services/pli-cnf-dynamic-keys-assign.service.d.ts +21 -21
  340. package/lib/services/pli-cnf-evaluation-task-mailing.service.d.ts +13 -13
  341. package/lib/services/pli-cnf-evaluation-task.service.d.ts +35 -35
  342. package/lib/services/pli-cnf-evaluation-template.service.d.ts +44 -44
  343. package/lib/services/pli-cnf-form-edit.service.d.ts +29 -29
  344. package/lib/services/pli-cnf-form-multiaplicacion.service.d.ts +21 -21
  345. package/lib/services/pli-cnf-guarantee-documents-template.service.d.ts +17 -17
  346. package/lib/services/pli-cnf-guarantee-token.service.d.ts +16 -16
  347. package/lib/services/pli-cnf-header.service.d.ts +18 -18
  348. package/lib/services/pli-cnf-indicator.service.d.ts +20 -20
  349. package/lib/services/pli-cnf-information-system.service.d.ts +12 -12
  350. package/lib/services/pli-cnf-interaction.service.d.ts +31 -31
  351. package/lib/services/pli-cnf-letter-template-type.service.d.ts +15 -15
  352. package/lib/services/pli-cnf-letter-template.service.d.ts +22 -22
  353. package/lib/services/pli-cnf-look-and-feel.service.d.ts +13 -13
  354. package/lib/services/pli-cnf-mail.service.d.ts +13 -13
  355. package/lib/services/pli-cnf-menu-form.service.d.ts +16 -16
  356. package/lib/services/pli-cnf-migration-plis-field-budget.service.d.ts +14 -14
  357. package/lib/services/pli-cnf-migration-plis-field.service.d.ts +17 -17
  358. package/lib/services/pli-cnf-migration-status-plis.service.d.ts +17 -17
  359. package/lib/services/pli-cnf-page-section-form.service.d.ts +24 -24
  360. package/lib/services/pli-cnf-page-sub-process.service.d.ts +12 -12
  361. package/lib/services/pli-cnf-pdfs.service.d.ts +14 -14
  362. package/lib/services/pli-cnf-profile-form.service.d.ts +20 -20
  363. package/lib/services/pli-cnf-profile-user.service.d.ts +24 -24
  364. package/lib/services/pli-cnf-project-summary.service.d.ts +16 -16
  365. package/lib/services/pli-cnf-scenario.service.d.ts +23 -23
  366. package/lib/services/pli-cnf-segmentation.service.d.ts +32 -32
  367. package/lib/services/pli-cnf-snapshot-token.service.d.ts +16 -16
  368. package/lib/services/pli-cnf-status-flow-interaction.service.d.ts +28 -28
  369. package/lib/services/pli-cnf-status-flow.service.d.ts +26 -26
  370. package/lib/services/pli-cnf-support-document-category.service.d.ts +17 -17
  371. package/lib/services/pli-cnf-support-document.service.d.ts +23 -23
  372. package/lib/services/pli-cnf-survey-document.service.d.ts +16 -16
  373. package/lib/services/pli-cnf-survey-pdf.service.d.ts +15 -15
  374. package/lib/services/pli-cnf-survey.service.d.ts +19 -19
  375. package/lib/services/pli-cnf-task-group.service.d.ts +15 -15
  376. package/lib/services/pli-cnf-text-category.service.d.ts +15 -15
  377. package/lib/services/pli-cnf-text-option.service.d.ts +15 -15
  378. package/lib/services/pli-cnf-text.service.d.ts +21 -21
  379. package/lib/services/pli-cnf-type-text.service.d.ts +16 -16
  380. package/lib/services/pli-cnf-university-article.service.d.ts +20 -20
  381. package/lib/services/pli-cnf-user-calendar.service.d.ts +16 -16
  382. package/lib/services/pli-cnf-user-workspace.service.d.ts +18 -18
  383. package/lib/services/pli-cnf-valpro-keys.service.d.ts +18 -18
  384. package/lib/services/pli-cnf-workspace-segmentation.service.d.ts +16 -16
  385. package/lib/services/pli-message-type.service.d.ts +15 -15
  386. package/lib/services/pli-multiple-value-filter.service.d.ts +17 -17
  387. package/lib/services/pli-promocion-username.service.d.ts +26 -26
  388. package/lib/services/pli-seg-action-user.service.d.ts +20 -20
  389. package/lib/services/pli-segmentation.service.d.ts +48 -48
  390. package/lib/services/pli-tag-assignment.service.d.ts +15 -15
  391. package/lib/services/pli-tag.service.d.ts +21 -21
  392. package/lib/services/pli-user.service.d.ts +24 -24
  393. package/lib/services/plis-beneficiario.service.d.ts +10 -10
  394. package/lib/services/plis-estatus-change.service.d.ts +13 -13
  395. package/lib/services/ppp.service.d.ts +77 -77
  396. package/lib/services/profile.service.d.ts +26 -26
  397. package/lib/services/progress-bar.service.d.ts +14 -14
  398. package/lib/services/promotion-score.service.d.ts +14 -14
  399. package/lib/services/registry-identifier.service.d.ts +16 -16
  400. package/lib/services/return-refund.service.d.ts +20 -20
  401. package/lib/services/segmentation-tokens.service.d.ts +22 -22
  402. package/lib/services/segmentation-user-service.service.d.ts +26 -26
  403. package/lib/services/segmentation.service.d.ts +16 -16
  404. package/lib/services/send-application.service.d.ts +71 -71
  405. package/lib/services/sesion-form.service.d.ts +16 -16
  406. package/lib/services/sesion.service.d.ts +27 -27
  407. package/lib/services/spinner.service.d.ts +6 -6
  408. package/lib/services/sponsorship-letter.service.d.ts +34 -34
  409. package/lib/services/status.service.d.ts +31 -31
  410. package/lib/services/summary-budget.service.d.ts +11 -11
  411. package/lib/services/survey-metadata.service.d.ts +13 -13
  412. package/lib/services/survey-queue.service.d.ts +12 -12
  413. package/lib/services/survey.service.d.ts +17 -17
  414. package/lib/services/tasa.cambio.service.d.ts +14 -14
  415. package/lib/services/token-transformation.service.d.ts +19 -19
  416. package/lib/services/token.service.d.ts +270 -270
  417. package/lib/services/university.service.d.ts +28 -28
  418. package/lib/services/upload-documents.service.d.ts +21 -21
  419. package/lib/services/user.service.d.ts +12 -12
  420. package/lib/services/visualization-committee.service.d.ts +32 -32
  421. package/lib/utils/custom-validator.d.ts +19 -19
  422. package/lib/utils/form-util.d.ts +11 -11
  423. package/lib/utils/formio-util.d.ts +105 -105
  424. package/lib/utils/version-commons.d.ts +4 -4
  425. package/package.json +10 -16
  426. package/public-api.d.ts +210 -210
  427. package/version.d.ts +25 -25
  428. package/esm2020/lib/components/backoffice.commons.component.mjs +0 -40
  429. package/esm2020/lib/components/common.lists.component.mjs +0 -194
  430. package/esm2020/lib/components/configuration-token/configuration-token.component.mjs +0 -665
  431. package/esm2020/lib/components/configuration-token/guarantee-token/guarantee-token.component.mjs +0 -103
  432. package/esm2020/lib/components/configuration-token/snapshot-token/snapshot-token.component.mjs +0 -108
  433. package/esm2020/lib/components/configuration.commons.component.mjs +0 -40
  434. package/esm2020/lib/components/dynamic-filter/dynamic-filter.component.mjs +0 -131
  435. package/esm2020/lib/components/excel-to-json/excel-to-json.component.mjs +0 -54
  436. package/esm2020/lib/components/frontoffice.commons.component.mjs +0 -86
  437. package/esm2020/lib/components/pdf-analyzer/pdf-analyzer.component.mjs +0 -162
  438. package/esm2020/lib/components/pdf-generator/pdf-generator.component.mjs +0 -223
  439. package/esm2020/lib/components/pdf-merge-visualizer/pdf-merge-visualizer.component.mjs +0 -307
  440. package/esm2020/lib/components/pdf-visualizer/pdf-visualizer.component.mjs +0 -387
  441. package/esm2020/lib/components/progress-bar/progress-bar.component.mjs +0 -92
  442. package/esm2020/lib/components/segmentation-tokens/segmentation-tokens.component.mjs +0 -199
  443. package/esm2020/lib/components/select-ppp/select-ppp.component.mjs +0 -199
  444. package/esm2020/lib/components/show-hide-columns/show-hide-columns-table.component.mjs +0 -116
  445. package/esm2020/lib/components/token/token.component.mjs +0 -1006
  446. package/esm2020/lib/components/tokens-calculator/tokens-calculator.component.mjs +0 -128
  447. package/esm2020/lib/ng-pli-commons.module.mjs +0 -390
  448. package/esm2020/lib/pipes/currency-colfuturo.pipe.mjs +0 -35
  449. package/esm2020/lib/pipes/thousands.pipe.mjs +0 -60
  450. package/esm2020/lib/services/authentication.service.mjs +0 -133
  451. package/esm2020/lib/services/budget-application.service.mjs +0 -265
  452. package/esm2020/lib/services/budget.service.mjs +0 -205
  453. package/esm2020/lib/services/common.service.mjs +0 -291
  454. package/esm2020/lib/services/configuration-document.service.mjs +0 -297
  455. package/esm2020/lib/services/documentary.type.service.mjs +0 -69
  456. package/esm2020/lib/services/file.service.mjs +0 -153
  457. package/esm2020/lib/services/guarantee.service.mjs +0 -128
  458. package/esm2020/lib/services/keys-assignation.service.mjs +0 -127
  459. package/esm2020/lib/services/pli-cnf-evaluation-task.service.mjs +0 -112
  460. package/esm2020/lib/services/ppp.service.mjs +0 -360
  461. package/esm2020/lib/services/progress-bar.service.mjs +0 -40
  462. package/esm2020/lib/services/segmentation-tokens.service.mjs +0 -43
  463. package/esm2020/lib/services/send-application.service.mjs +0 -492
  464. package/esm2020/lib/services/token.service.mjs +0 -1345
  465. package/esm2020/lib/services/upload-documents.service.mjs +0 -60
  466. package/esm2020/lib/utils/custom-validator.mjs +0 -95
  467. package/esm2020/lib/utils/form-util.mjs +0 -35
  468. package/esm2020/lib/utils/formio-util.mjs +0 -580
  469. package/fesm2015/ng-pli-commons.mjs +0 -17373
  470. package/fesm2015/ng-pli-commons.mjs.map +0 -1
  471. package/fesm2020/ng-pli-commons.mjs.map +0 -1
@@ -1,292 +1,292 @@
1
- import { HttpHeaders, HttpParams } from '@angular/common/http';
2
- import { Inject, Injectable } from '@angular/core';
3
- import { Subject } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common/http";
6
- export class CreditStudyService {
7
- constructor(environment, httpClient) {
8
- this.environment = environment;
9
- this.httpClient = httpClient;
10
- this.headerJson = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };
11
- this.creditStudySubjectValidation = new Subject();
12
- }
13
- getCreditStudySubjectValidation() {
14
- return this.creditStudySubjectValidation.asObservable();
15
- }
16
- setCreditStudySubjectValidation(isComplete, pageSectionKey) {
17
- this.creditStudySubjectValidation.next({ isComplete, pageSectionKey });
18
- }
19
- getCreditStudyByApplicationId(applicationId) {
20
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCreditStudy', {
21
- params: new HttpParams().set('applicationId', applicationId)
22
- });
23
- }
24
- getListCodebtors(applicationId) {
25
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCodebtors', {
26
- params: new HttpParams().set('applicationId', applicationId)
27
- });
28
- }
29
- getCodebtorByIdentification(applicationId, identification) {
30
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCodebtorByIdentification', {
31
- params: new HttpParams()
32
- .set('applicationId', applicationId)
33
- .set('identification', identification)
34
- });
35
- }
36
- getCodebtorByApplicationIdAndIdentification(applicationId, identification) {
37
- return this.httpClient.get(this.environment.host.backend.frontoffice +
38
- 'creditStudy/getCodebtorByApplicationIdAndIdentification', {
39
- params: new HttpParams()
40
- .set('applicationId', applicationId)
41
- .set('identification', identification)
42
- });
43
- }
44
- saveCodebtorDocument(applicationId, identification, doc) {
45
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorDocument', doc, {
46
- params: new HttpParams()
47
- .set('applicationId', applicationId)
48
- .set('identification', identification),
49
- headers: this.headerJson.headers
50
- });
51
- }
52
- saveSelectedReviewerDocument(applicationId, doc) {
53
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveSelectedReviewerDocument', doc, {
54
- params: new HttpParams().set('applicationId', applicationId),
55
- headers: this.headerJson.headers
56
- });
57
- }
58
- saveCodebtorResponsabilitiesAnswer(applicationId, identification, answer) {
59
- return this.httpClient.post(this.environment.host.backend.frontoffice +
60
- 'creditStudy/saveCodebtorResponsabilitiesAnswer', {}, {
61
- params: new HttpParams()
62
- .set('applicationId', applicationId)
63
- .set('identification', identification)
64
- .set('answer', answer.toString()),
65
- headers: this.headerJson.headers
66
- });
67
- }
68
- removeCodebtorResponsabilitiesAnswer(applicationId, identification) {
69
- return this.httpClient.post(this.environment.host.backend.frontoffice +
70
- 'creditStudy/removeCodebtorResponsabilitiesAnswer', {}, {
71
- params: new HttpParams()
72
- .set('applicationId', applicationId)
73
- .set('identification', identification),
74
- headers: this.headerJson.headers
75
- });
76
- }
77
- saveCodebtorHabeasDataAnswer(applicationId, identification, answer) {
78
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorHabeasDataAnswer', {}, {
79
- params: new HttpParams()
80
- .set('applicationId', applicationId)
81
- .set('identification', identification)
82
- .set('answer', answer.toString()),
83
- headers: this.headerJson.headers
84
- });
85
- }
86
- saveCreditReviewerDocument(applicationId, identification, doc) {
87
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCreditReviewerDocument', doc, {
88
- params: new HttpParams()
89
- .set('applicationId', applicationId)
90
- .set('identification', identification),
91
- headers: this.headerJson.headers
92
- });
93
- }
94
- getSelectedCreditReviewerDocuments(applicationId) {
95
- return this.httpClient.get(this.environment.host.backend.frontoffice +
96
- 'creditStudy/getSelectedCreditReviewerDocuments', {
97
- params: new HttpParams().set('applicationId', applicationId.toString())
98
- });
99
- }
100
- getSelectedCreditReviewerDocumentByConfigurationDocumentId(applicationId, configurationDocumentId) {
101
- return this.httpClient.get(this.environment.host.backend.frontoffice +
102
- 'creditStudy/getSelectedCreditReviewerDocumentByConfigurationDocumentId', {
103
- params: new HttpParams()
104
- .set('applicationId', applicationId.toString())
105
- .set('configurationDocumentId', configurationDocumentId.toString())
106
- });
107
- }
108
- getCodebtorDocuments(applicationId, identification) {
109
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCodebtorDocuments', {
110
- params: new HttpParams()
111
- .set('applicationId', applicationId.toString())
112
- .set('identification', identification.toString())
113
- });
114
- }
115
- getCodebtorDocumentByConfigurationDocumentId(applicationId, identification, configurationDocumentId) {
116
- return this.httpClient.get(this.environment.host.backend.frontoffice +
117
- 'creditStudy/getCodebtorDocumentByConfigurationDocumentId', {
118
- params: new HttpParams()
119
- .set('applicationId', applicationId.toString())
120
- .set('identification', identification.toString())
121
- .set('configurationDocumentId', configurationDocumentId.toString())
122
- });
123
- }
124
- getCodebtorCreditReviewerDocuments(applicationId, identification) {
125
- return this.httpClient.get(this.environment.host.backend.frontoffice +
126
- 'creditStudy/getCodebtorCreditReviewerDocuments', {
127
- params: new HttpParams()
128
- .set('applicationId', applicationId.toString())
129
- .set('identification', identification.toString())
130
- });
131
- }
132
- getCodebtorCreditReviewerDocumentByConfigurationDocumentId(applicationId, identification, configurationDocumentId) {
133
- return this.httpClient.get(this.environment.host.backend.frontoffice +
134
- 'creditStudy/getCodebtorCreditReviewerDocumentByConfigurationDocumentId', {
135
- params: new HttpParams()
136
- .set('applicationId', applicationId.toString())
137
- .set('identification', identification.toString())
138
- .set('configurationDocumentId', configurationDocumentId.toString())
139
- });
140
- }
141
- saveCodebtorCreditReviewerObservation(applicationId, identification, codebtor) {
142
- return this.httpClient.post(this.environment.host.backend.frontoffice +
143
- 'creditStudy/saveCodebtorCreditReviewerObservation', codebtor, {
144
- params: new HttpParams()
145
- .set('applicationId', applicationId)
146
- .set('identification', identification),
147
- headers: this.headerJson.headers
148
- });
149
- }
150
- saveCodebtorFormData(applicationId, codebtor) {
151
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorFormData', codebtor, {
152
- params: new HttpParams().set('applicationId', applicationId),
153
- headers: this.headerJson.headers
154
- });
155
- }
156
- updateCodebtorState(applicationId, codebtor) {
157
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/updateCodebtorState', codebtor, {
158
- params: new HttpParams().set('applicationId', applicationId),
159
- headers: this.headerJson.headers
160
- });
161
- }
162
- updateCompletedFlag(application, completed, idFlag) {
163
- return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/updateCompletedFlag', application, {
164
- params: new HttpParams()
165
- .set('completed', completed.toString())
166
- .set('idFlag', idFlag.toString()),
167
- headers: this.headerJson.headers
168
- });
169
- }
170
- acceptConsultation(application, response) {
171
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/acceptConsultation', application, {
172
- params: new HttpParams().set('response', response.toString()),
173
- headers: this.headerJson.headers
174
- });
175
- }
176
- saveCodebtor(applicationId, codebtor) {
177
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtor', codebtor, {
178
- params: new HttpParams().set('applicationId', applicationId),
179
- headers: this.headerJson.headers
180
- });
181
- }
182
- removeCodebtor(applicationId, identification) {
183
- return this.httpClient.delete(this.environment.host.backend.frontoffice + 'creditStudy/removeCodebtor', {
184
- params: new HttpParams()
185
- .set('applicationId', applicationId)
186
- .set('identification', identification.toString()),
187
- headers: this.headerJson.headers
188
- });
189
- }
190
- saveCodebtorCheckSum(applicationId, codebtor) {
191
- return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorCheckSum', codebtor, {
192
- params: new HttpParams().set('applicationId', applicationId),
193
- headers: this.headerJson.headers
194
- });
195
- }
196
- updateCodebtorDateForm(applicationId, codebtor) {
197
- return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/updateCodebtorDateForm', codebtor, {
198
- params: new HttpParams().set('applicationId', applicationId),
199
- headers: this.headerJson.headers
200
- });
201
- }
202
- saveAllCodebtors(applicationId, lCodebtor) {
203
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveAllCodebtors', lCodebtor, {
204
- params: new HttpParams().set('applicationId', applicationId),
205
- headers: this.headerJson.headers
206
- });
207
- }
208
- codebtorsSendInitialEmail(applicationId) {
209
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/codebtorsSendInitialEmail', null, {
210
- params: new HttpParams().set('applicationId', applicationId),
211
- headers: this.headerJson.headers
212
- });
213
- }
214
- saveBeneficiaryCreditReviewerObservation(applicationId, lObservations) {
215
- return this.httpClient.post(this.environment.host.backend.frontoffice +
216
- 'creditStudy/saveBeneficiaryCreditReviewerObservation', lObservations, {
217
- params: new HttpParams().set('applicationId', applicationId),
218
- headers: this.headerJson.headers
219
- });
220
- }
221
- getBeneficiaryCreditReviewerObservation(applicationId) {
222
- return this.httpClient.get(this.environment.host.backend.frontoffice +
223
- 'creditStudy/getBeneficiaryCreditReviewerObservation', {
224
- params: new HttpParams().set('applicationId', applicationId),
225
- headers: this.headerJson.headers
226
- });
227
- }
228
- acceptConsultationCodebtor(application, codebtorIdentification, response) {
229
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/acceptConsultationCodebtor', application, {
230
- params: new HttpParams()
231
- .set('response', response.toString())
232
- .set('codebtorIdentification', codebtorIdentification.toString()),
233
- headers: this.headerJson.headers
234
- });
235
- }
236
- enableCodebtor(applicationId, codebtor, changeStatusByCategoryDto) {
237
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/enableCodebtor', changeStatusByCategoryDto, {
238
- params: new HttpParams()
239
- .set('applicationId', applicationId)
240
- .set('codebtor', codebtor),
241
- headers: this.headerJson.headers
242
- });
243
- }
244
- completeCreditStudyInfo(applicationId) {
245
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/completeCreditStudyInfo', null, {
246
- params: new HttpParams().set('applicationId', applicationId),
247
- headers: this.headerJson.headers
248
- });
249
- }
250
- getApprovedCodebtors(applicationId, promCodigo) {
251
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getApprovedCodebtors', {
252
- params: new HttpParams()
253
- .set('applicationId', String(applicationId))
254
- .set('promCodigo', String(promCodigo))
255
- });
256
- }
257
- getApprovedCodebtorsByAppId(lAppId, promCodigo) {
258
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/getApprovedCodebtorsByAppId', lAppId, {
259
- params: new HttpParams().set('promCodigo', promCodigo.toString())
260
- });
261
- }
262
- checkCreditStudyFinalStatus(applicationId) {
263
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/checkCreditStudyFinalStatus', {
264
- params: new HttpParams().set('applicationId', applicationId)
265
- });
266
- }
267
- updateCreditStudyDocuments(lCreditStudyDocumentTO) {
268
- return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/updateCreditStudyDocuments', lCreditStudyDocumentTO, {
269
- headers: this.headerJson.headers
270
- });
271
- }
272
- externalReviewerRejectCreditStudy(applicationId, promCodigo, changeStatusByCategoryDto) {
273
- return this.httpClient.post(this.environment.host.backend.frontoffice +
274
- 'creditStudy/externalReviewerRejectCreditStudy', changeStatusByCategoryDto, {
275
- params: new HttpParams()
276
- .set('applicationId', applicationId)
277
- .set('promCodigo', promCodigo.toString())
278
- });
279
- }
280
- }
281
- CreditStudyServicefac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CreditStudyService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
282
- CreditStudyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CreditStudyService, providedIn: 'root' });
283
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: CreditStudyService, decorators: [{
284
- type: Injectable,
285
- args: [{
286
- providedIn: 'root'
287
- }]
288
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
289
- type: Inject,
290
- args: ['environment']
291
- }] }, { type: i1.HttpClient }]; } });
292
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGl0LXN0dWR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wbGktY29tbW9ucy9zcmMvbGliL3NlcnZpY2VzL2NyZWRpdC1zdHVkeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFRbkQsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBSzNDLE1BQU0sT0FBTyxrQkFBa0I7SUFLOUIsWUFBMkMsV0FBZ0IsRUFBVSxVQUFzQjtRQUFoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFKbkYsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO1FBRWxGLGlDQUE0QixHQUFHLElBQUksT0FBTyxFQUFPLENBQUM7SUFFb0MsQ0FBQztJQUUvRiwrQkFBK0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsNEJBQTRCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELCtCQUErQixDQUFDLFVBQW1CLEVBQUUsY0FBc0I7UUFDMUUsSUFBSSxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxhQUFxQjtRQUNsRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLDRCQUE0QixFQUN4RTtZQUNDLE1BQU0sRUFBRSxJ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QUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMxQyxDQUNELENBQUM7SUFDSCxDQUFDOzsrR0FwZVcsa0JBQWtCLGtCQUtWLGFBQWE7bUhBTHJCLGtCQUFrQixjQUZsQixNQUFNOzJGQUVOLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEI7OzBCQU1hLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuXHRBcHBsaWNhdGlvbixcclxuXHRDaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvLFxyXG5cdENvZGVidG9yLFxyXG5cdENyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24sXHJcblx0RG9jdW1lbnRcclxufSBmcm9tICduZy1wbGktdXRpbCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWRpdFN0dWR5U2VydmljZSB7XHJcblx0cHJpdmF0ZSBoZWFkZXJKc29uID0geyBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pIH07XHJcblxyXG5cdHByaXZhdGUgY3JlZGl0U3R1ZHlTdWJqZWN0VmFsaWRhdGlvbiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcblx0Y29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50OiBhbnksIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCkge31cclxuXHJcblx0Z2V0Q3JlZGl0U3R1ZHlTdWJqZWN0VmFsaWRhdGlvbigpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuY3JlZGl0U3R1ZHlTdWJqZWN0VmFsaWRhdGlvbi5hc09ic2VydmFibGUoKTtcclxuXHR9XHJcblxyXG5cdHNldENyZWRpdFN0dWR5U3ViamVjdFZhbGlkYXRpb24oaXNDb21wbGV0ZTogYm9vbGVhbiwgcGFnZVNlY3Rpb25LZXk6IHN0cmluZykge1xyXG5cdFx0dGhpcy5jcmVkaXRTdHVkeVN1YmplY3RWYWxpZGF0aW9uLm5leHQoeyBpc0NvbXBsZXRlLCBwYWdlU2VjdGlvbktleSB9KTtcclxuXHR9XHJcblxyXG5cdGdldENyZWRpdFN0dWR5QnlBcHBsaWNhdGlvbklkKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0Q3JlZGl0U3R1ZHknLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRMaXN0Q29kZWJ0b3JzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0Q29kZWJ0b3JzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q29kZWJ0b3JCeUlkZW50aWZpY2F0aW9uKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgaWRlbnRpZmljYXRpb246IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L2dldENvZGVidG9yQnlJZGVudGlmaWNhdGlvbicsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbilcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldENvZGVidG9yQnlBcHBsaWNhdGlvbklkQW5kSWRlbnRpZmljYXRpb24oXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nXHJcblx0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArXHJcblx0XHRcdFx0J2NyZWRpdFN0dWR5L2dldENvZGVidG9yQnlBcHBsaWNhdGlvbklkQW5kSWRlbnRpZmljYXRpb24nLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQ29kZWJ0b3JEb2N1bWVudChhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGlkZW50aWZpY2F0aW9uOiBzdHJpbmcsIGRvYzogRG9jdW1lbnQpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yRG9jdW1lbnQnLFxyXG5cdFx0XHRkb2MsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbiksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVTZWxlY3RlZFJldmlld2VyRG9jdW1lbnQoYXBwbGljYXRpb25JZDogc3RyaW5nLCBkb2M6IERvY3VtZW50KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3NhdmVTZWxlY3RlZFJldmlld2VyRG9jdW1lbnQnLFxyXG5cdFx0XHRkb2MsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZCksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvclJlc3BvbnNhYmlsaXRpZXNBbnN3ZXIoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0YW5zd2VyOiBib29sZWFuXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yUmVzcG9uc2FiaWxpdGllc0Fuc3dlcicsXHJcblx0XHRcdHt9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pXHJcblx0XHRcdFx0XHQuc2V0KCdhbnN3ZXInLCBhbnN3ZXIudG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHJlbW92ZUNvZGVidG9yUmVzcG9uc2FiaWxpdGllc0Fuc3dlcihhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGlkZW50aWZpY2F0aW9uOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9yZW1vdmVDb2RlYnRvclJlc3BvbnNhYmlsaXRpZXNBbnN3ZXInLFxyXG5cdFx0XHR7fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdpZGVudGlmaWNhdGlvbicsIGlkZW50aWZpY2F0aW9uKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUNvZGVidG9ySGFiZWFzRGF0YUFuc3dlcihhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGlkZW50aWZpY2F0aW9uOiBzdHJpbmcsIGFuc3dlcjogYm9vbGVhbikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQ29kZWJ0b3JIYWJlYXNEYXRhQW5zd2VyJyxcclxuXHRcdFx0e30sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbilcclxuXHRcdFx0XHRcdC5zZXQoJ2Fuc3dlcicsIGFuc3dlci50b1N0cmluZygpKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUNyZWRpdFJldmlld2VyRG9jdW1lbnQoYXBwbGljYXRpb25JZDogc3RyaW5nLCBpZGVudGlmaWNhdGlvbjogc3RyaW5nLCBkb2M6IERvY3VtZW50KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3NhdmVDcmVkaXRSZXZpZXdlckRvY3VtZW50JyxcclxuXHRcdFx0ZG9jLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRCeUNvbmZpZ3VyYXRpb25Eb2N1bWVudElkKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0Y29uZmlndXJhdGlvbkRvY3VtZW50SWQ6IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRCeUNvbmZpZ3VyYXRpb25Eb2N1bWVudElkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2NvbmZpZ3VyYXRpb25Eb2N1bWVudElkJywgY29uZmlndXJhdGlvbkRvY3VtZW50SWQudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldENvZGVidG9yRG9jdW1lbnRzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgaWRlbnRpZmljYXRpb246IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0Q29kZWJ0b3JEb2N1bWVudHMnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZC50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbi50b1N0cmluZygpKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q29kZWJ0b3JEb2N1bWVudEJ5Q29uZmlndXJhdGlvbkRvY3VtZW50SWQoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0Y29uZmlndXJhdGlvbkRvY3VtZW50SWQ6IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRDb2RlYnRvckRvY3VtZW50QnlDb25maWd1cmF0aW9uRG9jdW1lbnRJZCcsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdpZGVudGlmaWNhdGlvbicsIGlkZW50aWZpY2F0aW9uLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdjb25maWd1cmF0aW9uRG9jdW1lbnRJZCcsIGNvbmZpZ3VyYXRpb25Eb2N1bWVudElkLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRDb2RlYnRvckNyZWRpdFJldmlld2VyRG9jdW1lbnRzKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0aWRlbnRpZmljYXRpb246IHN0cmluZ1xyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRDb2RlYnRvckNyZWRpdFJldmlld2VyRG9jdW1lbnRzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldENvZGVidG9yQ3JlZGl0UmV2aWV3ZXJEb2N1bWVudEJ5Q29uZmlndXJhdGlvbkRvY3VtZW50SWQoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0Y29uZmlndXJhdGlvbkRvY3VtZW50SWQ6IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRDb2RlYnRvckNyZWRpdFJldmlld2VyRG9jdW1lbnRCeUNvbmZpZ3VyYXRpb25Eb2N1bWVudElkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2NvbmZpZ3VyYXRpb25Eb2N1bWVudElkJywgY29uZmlndXJhdGlvbkRvY3VtZW50SWQudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvckNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24oXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0Y29kZWJ0b3I6IENvZGVidG9yXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yQ3JlZGl0UmV2aWV3ZXJPYnNlcnZhdGlvbicsXHJcblx0XHRcdGNvZGVidG9yLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQ29kZWJ0b3JGb3JtRGF0YShhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGNvZGVidG9yOiBDb2RlYnRvcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQ29kZWJ0b3JGb3JtRGF0YScsXHJcblx0XHRcdGNvZGVidG9yLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHR1cGRhdGVDb2RlYnRvclN0YXRlKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgY29kZWJ0b3I6IENvZGVidG9yKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3VwZGF0ZUNvZGVidG9yU3RhdGUnLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQ29tcGxldGVkRmxhZyhhcHBsaWNhdGlvbjogQXBwbGljYXRpb24sIGNvbXBsZXRlZDogYm9vbGVhbiwgaWRGbGFnOiBudW1iZXIpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucHV0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS91cGRhdGVDb21wbGV0ZWRGbGFnJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2NvbXBsZXRlZCcsIGNvbXBsZXRlZC50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRGbGFnJywgaWRGbGFnLnRvU3RyaW5nKCkpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRhY2NlcHRDb25zdWx0YXRpb24oYXBwbGljYXRpb246IEFwcGxpY2F0aW9uLCByZXNwb25zZTogYm9vbGVhbikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9hY2NlcHRDb25zdWx0YXRpb24nLFxyXG5cdFx0XHRhcHBsaWNhdGlvbixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3Jlc3BvbnNlJywgcmVzcG9uc2UudG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvcihhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGNvZGVidG9yOiBDb2RlYnRvcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQ29kZWJ0b3InLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0cmVtb3ZlQ29kZWJ0b3IoYXBwbGljYXRpb25JZDogc3RyaW5nLCBpZGVudGlmaWNhdGlvbjogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmRlbGV0ZShcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvcmVtb3ZlQ29kZWJ0b3InLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvckNoZWNrU3VtKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgY29kZWJ0b3I6IENvZGVidG9yKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnB1dChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yQ2hlY2tTdW0nLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQ29kZWJ0b3JEYXRlRm9ybShhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGNvZGVidG9yOiBDb2RlYnRvcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3VwZGF0ZUNvZGVidG9yRGF0ZUZvcm0nLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUFsbENvZGVidG9ycyhhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGxDb2RlYnRvcjogQ29kZWJ0b3JbXSkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQWxsQ29kZWJ0b3JzJyxcclxuXHRcdFx0bENvZGVidG9yLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRjb2RlYnRvcnNTZW5kSW5pdGlhbEVtYWlsKGFwcGxpY2F0aW9uSWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9jb2RlYnRvcnNTZW5kSW5pdGlhbEVtYWlsJyxcclxuXHRcdFx0bnVsbCxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUJlbmVmaWNpYXJ5Q3JlZGl0UmV2aWV3ZXJPYnNlcnZhdGlvbihcclxuXHRcdGFwcGxpY2F0aW9uSWQ6IHN0cmluZyxcclxuXHRcdGxPYnNlcnZhdGlvbnM6IENyZWRpdFJldmlld2VyT2JzZXJ2YXRpb25bXVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArXHJcblx0XHRcdFx0J2NyZWRpdFN0dWR5L3NhdmVCZW5lZmljaWFyeUNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24nLFxyXG5cdFx0XHRsT2JzZXJ2YXRpb25zLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRCZW5lZmljaWFyeUNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24oYXBwbGljYXRpb25JZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRCZW5lZmljaWFyeUNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24nLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cdGFjY2VwdENvbnN1bHRhdGlvbkNvZGVidG9yKFxyXG5cdFx0YXBwbGljYXRpb246IEFwcGxpY2F0aW9uLFxyXG5cdFx0Y29kZWJ0b3JJZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0cmVzcG9uc2U6IGJvb2xlYW5cclxuXHQpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvYWNjZXB0Q29uc3VsdGF0aW9uQ29kZWJ0b3InLFxyXG5cdFx0XHRhcHBsaWNhdGlvbixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgncmVzcG9uc2UnLCByZXNwb25zZS50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnY29kZWJ0b3JJZGVudGlmaWNhdGlvbicsIGNvZGVidG9ySWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGVuYWJsZUNvZGVidG9yKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0Y29kZWJ0b3I6IHN0cmluZyxcclxuXHRcdGNoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG86IENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG9cclxuXHQpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZW5hYmxlQ29kZWJ0b3InLFxyXG5cdFx0XHRjaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2NvZGVidG9yJywgY29kZWJ0b3IpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRjb21wbGV0ZUNyZWRpdFN0dWR5SW5mbyhhcHBsaWNhdGlvbklkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvY29tcGxldGVDcmVkaXRTdHVkeUluZm8nLFxyXG5cdFx0XHRudWxsLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRBcHByb3ZlZENvZGVidG9ycyhhcHBsaWNhdGlvbklkOiBzdHJpbmcsIHByb21Db2RpZ286IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0QXBwcm92ZWRDb2RlYnRvcnMnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgU3RyaW5nKGFwcGxpY2F0aW9uSWQpKVxyXG5cdFx0XHRcdFx0LnNldCgncHJvbUNvZGlnbycsIFN0cmluZyhwcm9tQ29kaWdvKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldEFwcHJvdmVkQ29kZWJ0b3JzQnlBcHBJZChsQXBwSWQ6IHN0cmluZ1tdLCBwcm9tQ29kaWdvOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9nZXRBcHByb3ZlZENvZGVidG9yc0J5QXBwSWQnLFxyXG5cdFx0XHRsQXBwSWQsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Y2hlY2tDcmVkaXRTdHVkeUZpbmFsU3RhdHVzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvY2hlY2tDcmVkaXRTdHVkeUZpbmFsU3RhdHVzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQ3JlZGl0U3R1ZHlEb2N1bWVudHMobENyZWRpdFN0dWR5RG9jdW1lbnRUTzogYW55W10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3VwZGF0ZUNyZWRpdFN0dWR5RG9jdW1lbnRzJyxcclxuXHRcdFx0bENyZWRpdFN0dWR5RG9jdW1lbnRUTyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRleHRlcm5hbFJldmlld2VyUmVqZWN0Q3JlZGl0U3R1ZHkoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRwcm9tQ29kaWdvOiBudW1iZXIsXHJcblx0XHRjaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvOiBDaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnY3JlZGl0U3R1ZHkvZXh0ZXJuYWxSZXZpZXdlclJlamVjdENyZWRpdFN0dWR5JyxcclxuXHRcdFx0Y2hhbmdlU3RhdHVzQnlDYXRlZ29yeUR0byxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxufVxyXG4iXX0=
1
+ import { HttpHeaders, HttpParams } from '@angular/common/http';
2
+ import { Inject, Injectable } from '@angular/core';
3
+ import { Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ export class CreditStudyService {
7
+ constructor(environment, httpClient) {
8
+ this.environment = environment;
9
+ this.httpClient = httpClient;
10
+ this.headerJson = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };
11
+ this.creditStudySubjectValidation = new Subject();
12
+ }
13
+ getCreditStudySubjectValidation() {
14
+ return this.creditStudySubjectValidation.asObservable();
15
+ }
16
+ setCreditStudySubjectValidation(isComplete, pageSectionKey) {
17
+ this.creditStudySubjectValidation.next({ isComplete, pageSectionKey });
18
+ }
19
+ getCreditStudyByApplicationId(applicationId) {
20
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCreditStudy', {
21
+ params: new HttpParams().set('applicationId', applicationId)
22
+ });
23
+ }
24
+ getListCodebtors(applicationId) {
25
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCodebtors', {
26
+ params: new HttpParams().set('applicationId', applicationId)
27
+ });
28
+ }
29
+ getCodebtorByIdentification(applicationId, identification) {
30
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCodebtorByIdentification', {
31
+ params: new HttpParams()
32
+ .set('applicationId', applicationId)
33
+ .set('identification', identification)
34
+ });
35
+ }
36
+ getCodebtorByApplicationIdAndIdentification(applicationId, identification) {
37
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
38
+ 'creditStudy/getCodebtorByApplicationIdAndIdentification', {
39
+ params: new HttpParams()
40
+ .set('applicationId', applicationId)
41
+ .set('identification', identification)
42
+ });
43
+ }
44
+ saveCodebtorDocument(applicationId, identification, doc) {
45
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorDocument', doc, {
46
+ params: new HttpParams()
47
+ .set('applicationId', applicationId)
48
+ .set('identification', identification),
49
+ headers: this.headerJson.headers
50
+ });
51
+ }
52
+ saveSelectedReviewerDocument(applicationId, doc) {
53
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveSelectedReviewerDocument', doc, {
54
+ params: new HttpParams().set('applicationId', applicationId),
55
+ headers: this.headerJson.headers
56
+ });
57
+ }
58
+ saveCodebtorResponsabilitiesAnswer(applicationId, identification, answer) {
59
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
60
+ 'creditStudy/saveCodebtorResponsabilitiesAnswer', {}, {
61
+ params: new HttpParams()
62
+ .set('applicationId', applicationId)
63
+ .set('identification', identification)
64
+ .set('answer', answer.toString()),
65
+ headers: this.headerJson.headers
66
+ });
67
+ }
68
+ removeCodebtorResponsabilitiesAnswer(applicationId, identification) {
69
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
70
+ 'creditStudy/removeCodebtorResponsabilitiesAnswer', {}, {
71
+ params: new HttpParams()
72
+ .set('applicationId', applicationId)
73
+ .set('identification', identification),
74
+ headers: this.headerJson.headers
75
+ });
76
+ }
77
+ saveCodebtorHabeasDataAnswer(applicationId, identification, answer) {
78
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorHabeasDataAnswer', {}, {
79
+ params: new HttpParams()
80
+ .set('applicationId', applicationId)
81
+ .set('identification', identification)
82
+ .set('answer', answer.toString()),
83
+ headers: this.headerJson.headers
84
+ });
85
+ }
86
+ saveCreditReviewerDocument(applicationId, identification, doc) {
87
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCreditReviewerDocument', doc, {
88
+ params: new HttpParams()
89
+ .set('applicationId', applicationId)
90
+ .set('identification', identification),
91
+ headers: this.headerJson.headers
92
+ });
93
+ }
94
+ getSelectedCreditReviewerDocuments(applicationId) {
95
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
96
+ 'creditStudy/getSelectedCreditReviewerDocuments', {
97
+ params: new HttpParams().set('applicationId', applicationId.toString())
98
+ });
99
+ }
100
+ getSelectedCreditReviewerDocumentByConfigurationDocumentId(applicationId, configurationDocumentId) {
101
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
102
+ 'creditStudy/getSelectedCreditReviewerDocumentByConfigurationDocumentId', {
103
+ params: new HttpParams()
104
+ .set('applicationId', applicationId.toString())
105
+ .set('configurationDocumentId', configurationDocumentId.toString())
106
+ });
107
+ }
108
+ getCodebtorDocuments(applicationId, identification) {
109
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getCodebtorDocuments', {
110
+ params: new HttpParams()
111
+ .set('applicationId', applicationId.toString())
112
+ .set('identification', identification.toString())
113
+ });
114
+ }
115
+ getCodebtorDocumentByConfigurationDocumentId(applicationId, identification, configurationDocumentId) {
116
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
117
+ 'creditStudy/getCodebtorDocumentByConfigurationDocumentId', {
118
+ params: new HttpParams()
119
+ .set('applicationId', applicationId.toString())
120
+ .set('identification', identification.toString())
121
+ .set('configurationDocumentId', configurationDocumentId.toString())
122
+ });
123
+ }
124
+ getCodebtorCreditReviewerDocuments(applicationId, identification) {
125
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
126
+ 'creditStudy/getCodebtorCreditReviewerDocuments', {
127
+ params: new HttpParams()
128
+ .set('applicationId', applicationId.toString())
129
+ .set('identification', identification.toString())
130
+ });
131
+ }
132
+ getCodebtorCreditReviewerDocumentByConfigurationDocumentId(applicationId, identification, configurationDocumentId) {
133
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
134
+ 'creditStudy/getCodebtorCreditReviewerDocumentByConfigurationDocumentId', {
135
+ params: new HttpParams()
136
+ .set('applicationId', applicationId.toString())
137
+ .set('identification', identification.toString())
138
+ .set('configurationDocumentId', configurationDocumentId.toString())
139
+ });
140
+ }
141
+ saveCodebtorCreditReviewerObservation(applicationId, identification, codebtor) {
142
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
143
+ 'creditStudy/saveCodebtorCreditReviewerObservation', codebtor, {
144
+ params: new HttpParams()
145
+ .set('applicationId', applicationId)
146
+ .set('identification', identification),
147
+ headers: this.headerJson.headers
148
+ });
149
+ }
150
+ saveCodebtorFormData(applicationId, codebtor) {
151
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorFormData', codebtor, {
152
+ params: new HttpParams().set('applicationId', applicationId),
153
+ headers: this.headerJson.headers
154
+ });
155
+ }
156
+ updateCodebtorState(applicationId, codebtor) {
157
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/updateCodebtorState', codebtor, {
158
+ params: new HttpParams().set('applicationId', applicationId),
159
+ headers: this.headerJson.headers
160
+ });
161
+ }
162
+ updateCompletedFlag(application, completed, idFlag) {
163
+ return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/updateCompletedFlag', application, {
164
+ params: new HttpParams()
165
+ .set('completed', completed.toString())
166
+ .set('idFlag', idFlag.toString()),
167
+ headers: this.headerJson.headers
168
+ });
169
+ }
170
+ acceptConsultation(application, response) {
171
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/acceptConsultation', application, {
172
+ params: new HttpParams().set('response', response.toString()),
173
+ headers: this.headerJson.headers
174
+ });
175
+ }
176
+ saveCodebtor(applicationId, codebtor) {
177
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtor', codebtor, {
178
+ params: new HttpParams().set('applicationId', applicationId),
179
+ headers: this.headerJson.headers
180
+ });
181
+ }
182
+ removeCodebtor(applicationId, identification) {
183
+ return this.httpClient.delete(this.environment.host.backend.frontoffice + 'creditStudy/removeCodebtor', {
184
+ params: new HttpParams()
185
+ .set('applicationId', applicationId)
186
+ .set('identification', identification.toString()),
187
+ headers: this.headerJson.headers
188
+ });
189
+ }
190
+ saveCodebtorCheckSum(applicationId, codebtor) {
191
+ return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/saveCodebtorCheckSum', codebtor, {
192
+ params: new HttpParams().set('applicationId', applicationId),
193
+ headers: this.headerJson.headers
194
+ });
195
+ }
196
+ updateCodebtorDateForm(applicationId, codebtor) {
197
+ return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/updateCodebtorDateForm', codebtor, {
198
+ params: new HttpParams().set('applicationId', applicationId),
199
+ headers: this.headerJson.headers
200
+ });
201
+ }
202
+ saveAllCodebtors(applicationId, lCodebtor) {
203
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/saveAllCodebtors', lCodebtor, {
204
+ params: new HttpParams().set('applicationId', applicationId),
205
+ headers: this.headerJson.headers
206
+ });
207
+ }
208
+ codebtorsSendInitialEmail(applicationId) {
209
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/codebtorsSendInitialEmail', null, {
210
+ params: new HttpParams().set('applicationId', applicationId),
211
+ headers: this.headerJson.headers
212
+ });
213
+ }
214
+ saveBeneficiaryCreditReviewerObservation(applicationId, lObservations) {
215
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
216
+ 'creditStudy/saveBeneficiaryCreditReviewerObservation', lObservations, {
217
+ params: new HttpParams().set('applicationId', applicationId),
218
+ headers: this.headerJson.headers
219
+ });
220
+ }
221
+ getBeneficiaryCreditReviewerObservation(applicationId) {
222
+ return this.httpClient.get(this.environment.host.backend.frontoffice +
223
+ 'creditStudy/getBeneficiaryCreditReviewerObservation', {
224
+ params: new HttpParams().set('applicationId', applicationId),
225
+ headers: this.headerJson.headers
226
+ });
227
+ }
228
+ acceptConsultationCodebtor(application, codebtorIdentification, response) {
229
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/acceptConsultationCodebtor', application, {
230
+ params: new HttpParams()
231
+ .set('response', response.toString())
232
+ .set('codebtorIdentification', codebtorIdentification.toString()),
233
+ headers: this.headerJson.headers
234
+ });
235
+ }
236
+ enableCodebtor(applicationId, codebtor, changeStatusByCategoryDto) {
237
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/enableCodebtor', changeStatusByCategoryDto, {
238
+ params: new HttpParams()
239
+ .set('applicationId', applicationId)
240
+ .set('codebtor', codebtor),
241
+ headers: this.headerJson.headers
242
+ });
243
+ }
244
+ completeCreditStudyInfo(applicationId) {
245
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/completeCreditStudyInfo', null, {
246
+ params: new HttpParams().set('applicationId', applicationId),
247
+ headers: this.headerJson.headers
248
+ });
249
+ }
250
+ getApprovedCodebtors(applicationId, promCodigo) {
251
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/getApprovedCodebtors', {
252
+ params: new HttpParams()
253
+ .set('applicationId', String(applicationId))
254
+ .set('promCodigo', String(promCodigo))
255
+ });
256
+ }
257
+ getApprovedCodebtorsByAppId(lAppId, promCodigo) {
258
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'creditStudy/getApprovedCodebtorsByAppId', lAppId, {
259
+ params: new HttpParams().set('promCodigo', promCodigo.toString())
260
+ });
261
+ }
262
+ checkCreditStudyFinalStatus(applicationId) {
263
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'creditStudy/checkCreditStudyFinalStatus', {
264
+ params: new HttpParams().set('applicationId', applicationId)
265
+ });
266
+ }
267
+ updateCreditStudyDocuments(lCreditStudyDocumentTO) {
268
+ return this.httpClient.put(this.environment.host.backend.frontoffice + 'creditStudy/updateCreditStudyDocuments', lCreditStudyDocumentTO, {
269
+ headers: this.headerJson.headers
270
+ });
271
+ }
272
+ externalReviewerRejectCreditStudy(applicationId, promCodigo, changeStatusByCategoryDto) {
273
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
274
+ 'creditStudy/externalReviewerRejectCreditStudy', changeStatusByCategoryDto, {
275
+ params: new HttpParams()
276
+ .set('applicationId', applicationId)
277
+ .set('promCodigo', promCodigo.toString())
278
+ });
279
+ }
280
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreditStudyService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
281
+ static { thisprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreditStudyService, providedIn: 'root' }); }
282
+ }
283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: CreditStudyService, decorators: [{
284
+ type: Injectable,
285
+ args: [{
286
+ providedIn: 'root'
287
+ }]
288
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
289
+ type: Inject,
290
+ args: ['environment']
291
+ }] }, { type: i1.HttpClient }] });
292
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGl0LXN0dWR5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wbGktY29tbW9ucy9zcmMvbGliL3NlcnZpY2VzL2NyZWRpdC1zdHVkeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFRbkQsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBSzNDLE1BQU0sT0FBTyxrQkFBa0I7SUFLOUIsWUFBMkMsV0FBZ0IsRUFBVSxVQUFzQjtRQUFoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFKbkYsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO1FBRWxGLGlDQUE0QixHQUFHLElBQUksT0FBTyxFQUFPLENBQUM7SUFFb0MsQ0FBQztJQUUvRiwrQkFBK0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsNEJBQTRCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELCtCQUErQixDQUFDLFVBQW1CLEVBQUUsY0FBc0I7UUFDMUUsSUFBSSxDQUFDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCw2QkFBNkIsQ0FBQyxhQUFxQjtRQUNsRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLDRCQUE0QixFQUN4RTtZQUNDLE1BQU0sRUFBRSxJ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QUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMxQyxDQUNELENBQUM7SUFDSCxDQUFDOytHQXBlVyxrQkFBa0Isa0JBS1YsYUFBYTttSEFMckIsa0JBQWtCLGNBRmxCLE1BQU07OzRGQUVOLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEI7OzBCQU1hLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuXHRBcHBsaWNhdGlvbixcclxuXHRDaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvLFxyXG5cdENvZGVidG9yLFxyXG5cdENyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24sXHJcblx0RG9jdW1lbnRcclxufSBmcm9tICduZy1wbGktdXRpbCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENyZWRpdFN0dWR5U2VydmljZSB7XHJcblx0cHJpdmF0ZSBoZWFkZXJKc29uID0geyBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pIH07XHJcblxyXG5cdHByaXZhdGUgY3JlZGl0U3R1ZHlTdWJqZWN0VmFsaWRhdGlvbiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcblx0Y29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50OiBhbnksIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCkge31cclxuXHJcblx0Z2V0Q3JlZGl0U3R1ZHlTdWJqZWN0VmFsaWRhdGlvbigpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuY3JlZGl0U3R1ZHlTdWJqZWN0VmFsaWRhdGlvbi5hc09ic2VydmFibGUoKTtcclxuXHR9XHJcblxyXG5cdHNldENyZWRpdFN0dWR5U3ViamVjdFZhbGlkYXRpb24oaXNDb21wbGV0ZTogYm9vbGVhbiwgcGFnZVNlY3Rpb25LZXk6IHN0cmluZykge1xyXG5cdFx0dGhpcy5jcmVkaXRTdHVkeVN1YmplY3RWYWxpZGF0aW9uLm5leHQoeyBpc0NvbXBsZXRlLCBwYWdlU2VjdGlvbktleSB9KTtcclxuXHR9XHJcblxyXG5cdGdldENyZWRpdFN0dWR5QnlBcHBsaWNhdGlvbklkKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0Q3JlZGl0U3R1ZHknLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRMaXN0Q29kZWJ0b3JzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0Q29kZWJ0b3JzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q29kZWJ0b3JCeUlkZW50aWZpY2F0aW9uKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgaWRlbnRpZmljYXRpb246IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L2dldENvZGVidG9yQnlJZGVudGlmaWNhdGlvbicsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbilcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldENvZGVidG9yQnlBcHBsaWNhdGlvbklkQW5kSWRlbnRpZmljYXRpb24oXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nXHJcblx0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArXHJcblx0XHRcdFx0J2NyZWRpdFN0dWR5L2dldENvZGVidG9yQnlBcHBsaWNhdGlvbklkQW5kSWRlbnRpZmljYXRpb24nLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQ29kZWJ0b3JEb2N1bWVudChhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGlkZW50aWZpY2F0aW9uOiBzdHJpbmcsIGRvYzogRG9jdW1lbnQpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yRG9jdW1lbnQnLFxyXG5cdFx0XHRkb2MsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbiksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVTZWxlY3RlZFJldmlld2VyRG9jdW1lbnQoYXBwbGljYXRpb25JZDogc3RyaW5nLCBkb2M6IERvY3VtZW50KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3NhdmVTZWxlY3RlZFJldmlld2VyRG9jdW1lbnQnLFxyXG5cdFx0XHRkb2MsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZCksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvclJlc3BvbnNhYmlsaXRpZXNBbnN3ZXIoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0YW5zd2VyOiBib29sZWFuXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yUmVzcG9uc2FiaWxpdGllc0Fuc3dlcicsXHJcblx0XHRcdHt9LFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pXHJcblx0XHRcdFx0XHQuc2V0KCdhbnN3ZXInLCBhbnN3ZXIudG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHJlbW92ZUNvZGVidG9yUmVzcG9uc2FiaWxpdGllc0Fuc3dlcihhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGlkZW50aWZpY2F0aW9uOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9yZW1vdmVDb2RlYnRvclJlc3BvbnNhYmlsaXRpZXNBbnN3ZXInLFxyXG5cdFx0XHR7fSxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdpZGVudGlmaWNhdGlvbicsIGlkZW50aWZpY2F0aW9uKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUNvZGVidG9ySGFiZWFzRGF0YUFuc3dlcihhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGlkZW50aWZpY2F0aW9uOiBzdHJpbmcsIGFuc3dlcjogYm9vbGVhbikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQ29kZWJ0b3JIYWJlYXNEYXRhQW5zd2VyJyxcclxuXHRcdFx0e30sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbilcclxuXHRcdFx0XHRcdC5zZXQoJ2Fuc3dlcicsIGFuc3dlci50b1N0cmluZygpKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUNyZWRpdFJldmlld2VyRG9jdW1lbnQoYXBwbGljYXRpb25JZDogc3RyaW5nLCBpZGVudGlmaWNhdGlvbjogc3RyaW5nLCBkb2M6IERvY3VtZW50KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3NhdmVDcmVkaXRSZXZpZXdlckRvY3VtZW50JyxcclxuXHRcdFx0ZG9jLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRCeUNvbmZpZ3VyYXRpb25Eb2N1bWVudElkKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0Y29uZmlndXJhdGlvbkRvY3VtZW50SWQ6IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRTZWxlY3RlZENyZWRpdFJldmlld2VyRG9jdW1lbnRCeUNvbmZpZ3VyYXRpb25Eb2N1bWVudElkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2NvbmZpZ3VyYXRpb25Eb2N1bWVudElkJywgY29uZmlndXJhdGlvbkRvY3VtZW50SWQudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldENvZGVidG9yRG9jdW1lbnRzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgaWRlbnRpZmljYXRpb246IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0Q29kZWJ0b3JEb2N1bWVudHMnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZC50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRlbnRpZmljYXRpb24nLCBpZGVudGlmaWNhdGlvbi50b1N0cmluZygpKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q29kZWJ0b3JEb2N1bWVudEJ5Q29uZmlndXJhdGlvbkRvY3VtZW50SWQoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0Y29uZmlndXJhdGlvbkRvY3VtZW50SWQ6IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRDb2RlYnRvckRvY3VtZW50QnlDb25maWd1cmF0aW9uRG9jdW1lbnRJZCcsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdpZGVudGlmaWNhdGlvbicsIGlkZW50aWZpY2F0aW9uLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdjb25maWd1cmF0aW9uRG9jdW1lbnRJZCcsIGNvbmZpZ3VyYXRpb25Eb2N1bWVudElkLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRDb2RlYnRvckNyZWRpdFJldmlld2VyRG9jdW1lbnRzKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0aWRlbnRpZmljYXRpb246IHN0cmluZ1xyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRDb2RlYnRvckNyZWRpdFJldmlld2VyRG9jdW1lbnRzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldENvZGVidG9yQ3JlZGl0UmV2aWV3ZXJEb2N1bWVudEJ5Q29uZmlndXJhdGlvbkRvY3VtZW50SWQoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0Y29uZmlndXJhdGlvbkRvY3VtZW50SWQ6IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRDb2RlYnRvckNyZWRpdFJldmlld2VyRG9jdW1lbnRCeUNvbmZpZ3VyYXRpb25Eb2N1bWVudElkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2NvbmZpZ3VyYXRpb25Eb2N1bWVudElkJywgY29uZmlndXJhdGlvbkRvY3VtZW50SWQudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvckNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24oXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRpZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0Y29kZWJ0b3I6IENvZGVidG9yXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yQ3JlZGl0UmV2aWV3ZXJPYnNlcnZhdGlvbicsXHJcblx0XHRcdGNvZGVidG9yLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24pLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQ29kZWJ0b3JGb3JtRGF0YShhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGNvZGVidG9yOiBDb2RlYnRvcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQ29kZWJ0b3JGb3JtRGF0YScsXHJcblx0XHRcdGNvZGVidG9yLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHR1cGRhdGVDb2RlYnRvclN0YXRlKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgY29kZWJ0b3I6IENvZGVidG9yKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3VwZGF0ZUNvZGVidG9yU3RhdGUnLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQ29tcGxldGVkRmxhZyhhcHBsaWNhdGlvbjogQXBwbGljYXRpb24sIGNvbXBsZXRlZDogYm9vbGVhbiwgaWRGbGFnOiBudW1iZXIpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucHV0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS91cGRhdGVDb21wbGV0ZWRGbGFnJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ2NvbXBsZXRlZCcsIGNvbXBsZXRlZC50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnaWRGbGFnJywgaWRGbGFnLnRvU3RyaW5nKCkpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRhY2NlcHRDb25zdWx0YXRpb24oYXBwbGljYXRpb246IEFwcGxpY2F0aW9uLCByZXNwb25zZTogYm9vbGVhbikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9hY2NlcHRDb25zdWx0YXRpb24nLFxyXG5cdFx0XHRhcHBsaWNhdGlvbixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3Jlc3BvbnNlJywgcmVzcG9uc2UudG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvcihhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGNvZGVidG9yOiBDb2RlYnRvcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQ29kZWJ0b3InLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0cmVtb3ZlQ29kZWJ0b3IoYXBwbGljYXRpb25JZDogc3RyaW5nLCBpZGVudGlmaWNhdGlvbjogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmRlbGV0ZShcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvcmVtb3ZlQ29kZWJ0b3InLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2lkZW50aWZpY2F0aW9uJywgaWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHNhdmVDb2RlYnRvckNoZWNrU3VtKGFwcGxpY2F0aW9uSWQ6IHN0cmluZywgY29kZWJ0b3I6IENvZGVidG9yKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnB1dChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvc2F2ZUNvZGVidG9yQ2hlY2tTdW0nLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQ29kZWJ0b3JEYXRlRm9ybShhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGNvZGVidG9yOiBDb2RlYnRvcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3VwZGF0ZUNvZGVidG9yRGF0ZUZvcm0nLFxyXG5cdFx0XHRjb2RlYnRvcixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUFsbENvZGVidG9ycyhhcHBsaWNhdGlvbklkOiBzdHJpbmcsIGxDb2RlYnRvcjogQ29kZWJ0b3JbXSkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9zYXZlQWxsQ29kZWJ0b3JzJyxcclxuXHRcdFx0bENvZGVidG9yLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRjb2RlYnRvcnNTZW5kSW5pdGlhbEVtYWlsKGFwcGxpY2F0aW9uSWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9jb2RlYnRvcnNTZW5kSW5pdGlhbEVtYWlsJyxcclxuXHRcdFx0bnVsbCxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2F2ZUJlbmVmaWNpYXJ5Q3JlZGl0UmV2aWV3ZXJPYnNlcnZhdGlvbihcclxuXHRcdGFwcGxpY2F0aW9uSWQ6IHN0cmluZyxcclxuXHRcdGxPYnNlcnZhdGlvbnM6IENyZWRpdFJldmlld2VyT2JzZXJ2YXRpb25bXVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArXHJcblx0XHRcdFx0J2NyZWRpdFN0dWR5L3NhdmVCZW5lZmljaWFyeUNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24nLFxyXG5cdFx0XHRsT2JzZXJ2YXRpb25zLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRCZW5lZmljaWFyeUNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24oYXBwbGljYXRpb25JZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgK1xyXG5cdFx0XHRcdCdjcmVkaXRTdHVkeS9nZXRCZW5lZmljaWFyeUNyZWRpdFJldmlld2VyT2JzZXJ2YXRpb24nLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cdGFjY2VwdENvbnN1bHRhdGlvbkNvZGVidG9yKFxyXG5cdFx0YXBwbGljYXRpb246IEFwcGxpY2F0aW9uLFxyXG5cdFx0Y29kZWJ0b3JJZGVudGlmaWNhdGlvbjogc3RyaW5nLFxyXG5cdFx0cmVzcG9uc2U6IGJvb2xlYW5cclxuXHQpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvYWNjZXB0Q29uc3VsdGF0aW9uQ29kZWJ0b3InLFxyXG5cdFx0XHRhcHBsaWNhdGlvbixcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgncmVzcG9uc2UnLCByZXNwb25zZS50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnY29kZWJ0b3JJZGVudGlmaWNhdGlvbicsIGNvZGVidG9ySWRlbnRpZmljYXRpb24udG9TdHJpbmcoKSksXHJcblx0XHRcdFx0aGVhZGVyczogdGhpcy5oZWFkZXJKc29uLmhlYWRlcnNcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGVuYWJsZUNvZGVidG9yKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0Y29kZWJ0b3I6IHN0cmluZyxcclxuXHRcdGNoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG86IENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG9cclxuXHQpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZW5hYmxlQ29kZWJ0b3InLFxyXG5cdFx0XHRjaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgYXBwbGljYXRpb25JZClcclxuXHRcdFx0XHRcdC5zZXQoJ2NvZGVidG9yJywgY29kZWJ0b3IpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRjb21wbGV0ZUNyZWRpdFN0dWR5SW5mbyhhcHBsaWNhdGlvbklkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvY29tcGxldGVDcmVkaXRTdHVkeUluZm8nLFxyXG5cdFx0XHRudWxsLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXRBcHByb3ZlZENvZGVidG9ycyhhcHBsaWNhdGlvbklkOiBzdHJpbmcsIHByb21Db2RpZ286IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvZ2V0QXBwcm92ZWRDb2RlYnRvcnMnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdhcHBsaWNhdGlvbklkJywgU3RyaW5nKGFwcGxpY2F0aW9uSWQpKVxyXG5cdFx0XHRcdFx0LnNldCgncHJvbUNvZGlnbycsIFN0cmluZyhwcm9tQ29kaWdvKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldEFwcHJvdmVkQ29kZWJ0b3JzQnlBcHBJZChsQXBwSWQ6IHN0cmluZ1tdLCBwcm9tQ29kaWdvOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdjcmVkaXRTdHVkeS9nZXRBcHByb3ZlZENvZGVidG9yc0J5QXBwSWQnLFxyXG5cdFx0XHRsQXBwSWQsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Y2hlY2tDcmVkaXRTdHVkeUZpbmFsU3RhdHVzKGFwcGxpY2F0aW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnY3JlZGl0U3R1ZHkvY2hlY2tDcmVkaXRTdHVkeUZpbmFsU3RhdHVzJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQ3JlZGl0U3R1ZHlEb2N1bWVudHMobENyZWRpdFN0dWR5RG9jdW1lbnRUTzogYW55W10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2NyZWRpdFN0dWR5L3VwZGF0ZUNyZWRpdFN0dWR5RG9jdW1lbnRzJyxcclxuXHRcdFx0bENyZWRpdFN0dWR5RG9jdW1lbnRUTyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRleHRlcm5hbFJldmlld2VyUmVqZWN0Q3JlZGl0U3R1ZHkoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBzdHJpbmcsXHJcblx0XHRwcm9tQ29kaWdvOiBudW1iZXIsXHJcblx0XHRjaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvOiBDaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnY3JlZGl0U3R1ZHkvZXh0ZXJuYWxSZXZpZXdlclJlamVjdENyZWRpdFN0dWR5JyxcclxuXHRcdFx0Y2hhbmdlU3RhdHVzQnlDYXRlZ29yeUR0byxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxufVxyXG4iXX0=