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,247 +1,247 @@
1
- import { HttpHeaders, HttpParams } from '@angular/common/http';
2
- import { Inject, Injectable } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common/http";
5
- export class ApplicationService {
6
- constructor(environment, httpClient) {
7
- this.environment = environment;
8
- this.httpClient = httpClient;
9
- this.headerJson = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };
10
- }
11
- /** It returns an application by id */
12
- getById(id) {
13
- return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getById', { params: new HttpParams().set('id', id) });
14
- }
15
- /** It returns an application by id with basic properties */
16
- getByIdLight(id) {
17
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getByIdLight', { params: new HttpParams().set('id', id) });
18
- }
19
- /** It returns an application by id with the Budget Simulation */
20
- getBudgetSimulationById(id) {
21
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getBudgetSimulationById', { params: new HttpParams().set('id', id) });
22
- }
23
- /** It returns an application by id with basic properties */
24
- getByIdLightIn(idList) {
25
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/getByIdLightIn', idList);
26
- }
27
- /** It returns the list of application by dataTableParameters */
28
- getApplicationsByDataTableParameters(dataTableParameters) {
29
- return this.httpClient.post(this.environment.host.backend.backoffice +
30
- 'application/getApplicationsByDataTableParameters', dataTableParameters);
31
- }
32
- /** It returns the list of application by prom codigo */
33
- getByPromCodigo(promCodigo) {
34
- return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getByPromCodigo', { params: new HttpParams().set('promCodigo', promCodigo.toString()) });
35
- }
36
- /** It returns the list of application by username */
37
- getByUsername(username) {
38
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getByUsername', { params: new HttpParams().set('username', username) });
39
- }
40
- /** It saves an application */
41
- save(application) {
42
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/save', application, this.headerJson);
43
- }
44
- /** it returns the last number */
45
- getLastNumber(promCodigo) {
46
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getLastNumber', { params: new HttpParams().set('promCodigo', promCodigo.toString()) });
47
- }
48
- /** it changes the status */
49
- changeStatusByCategory(lChangeStatusByCategoryDto) {
50
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/changeStatusByCategory', lChangeStatusByCategoryDto, this.headerJson);
51
- }
52
- /** it changes the status */
53
- changeMassiveStatus(lApplication) {
54
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/changeMassiveStatus', lApplication, this.headerJson);
55
- }
56
- changeColor(applicationList, color) {
57
- const params = { applicationId: applicationList, color: color };
58
- return this.httpClient.put(`${this.environment.host.backend.backoffice}application/changeColor`, params);
59
- }
60
- /** it gets the history state */
61
- getHistoryState(applicationId) {
62
- return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getHistoryState', { params: new HttpParams().set('applicationId', applicationId.toString()) });
63
- }
64
- /** it saves massively */
65
- saveMassive(listApplicationDataFormRequest, applicationsToVerifyDocument, promCodigo, statusRadicado) {
66
- let listDataApplication = {
67
- listApplicationDataFormRequest: listApplicationDataFormRequest,
68
- applicationsToVerifyDocument: applicationsToVerifyDocument,
69
- promCodigo: promCodigo,
70
- statusRadicado: statusRadicado
71
- };
72
- return this.httpClient.post(this.environment.host.backend.configuration + 'application-dataform/saveMultiple', listDataApplication, this.headerJson);
73
- }
74
- /**
75
- * save multiple records
76
- * @param listData +
77
- */
78
- getByDataTablesParameters(dataTableParameters) {
79
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/getByDataTablesParameters', dataTableParameters, this.headerJson);
80
- }
81
- /**
82
- * It gets the basic information of the application to show in assign task
83
- * @param taskId
84
- * @param promCodigo
85
- * @param reviewer
86
- */
87
- getByTaskIdPromCodigoAndReviewer(dataTableParameters) {
88
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByTaskPromCodigoAndReviewer', dataTableParameters, this.headerJson);
89
- }
90
- /**
91
- * It gets applications by datatable parameters from backoffice
92
- * @param dataTableParameters
93
- */
94
- getBackAppByDataTablesParameters(dataTableParameters) {
95
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByDataTablesParameters', dataTableParameters, this.headerJson);
96
- }
97
- /**
98
- * save multiple records
99
- * @param listData +
100
- */
101
- getByDataTablesParametersApp(dataTableParameters) {
102
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByDataTablesParametersApp', dataTableParameters, this.headerJson);
103
- }
104
- /** It returns the list of application by prom codigo */
105
- getByNumberAndPromCodigo(promCodigo, number) {
106
- return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getByNumberAndPromCodigo', {
107
- params: new HttpParams()
108
- .set('promCodigo', promCodigo.toString())
109
- .set('number', number.toString())
110
- });
111
- }
112
- acceptCredit(application) {
113
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/acceptCredit', application, this.headerJson);
114
- }
115
- confirmBudgetAppointment(application) {
116
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/confirmBudgetAppointment', application, this.headerJson);
117
- }
118
- initGuaranteeProcess(application) {
119
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/initGuaranteeProcess', application, this.headerJson);
120
- }
121
- getLegalizationAndEnsuranceByApplicationId(applicationId) {
122
- return this.httpClient.post(this.environment.host.backend.backoffice +
123
- 'application/getLegalizationAndEnsuranceByApplicationId', applicationId, this.headerJson);
124
- }
125
- generateBankVisionFiles(applicationId) {
126
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/generateBankVisionFiles', applicationId, this.headerJson);
127
- }
128
- saveAcceptDataProcessing(application) {
129
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/saveAcceptDataProcessing', application, this.headerJson);
130
- }
131
- /**
132
- * Save total budget amounts, the creditAccepted could be null, the service search this.
133
- * @param applicationBudgetTotalAmount An json object with: applicationBudgetTotal, applicationId:string, creditAccepted:boolean
134
- */
135
- saveBudgetTotalAmount(applicationBudgetTotalAmount) {
136
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/saveBudgetTotalAmount', applicationBudgetTotalAmount, this.headerJson);
137
- }
138
- /**
139
- * Save financing observation in budget application.
140
- * @param ApplicationBudgetObservation An json object with: observation:string, applicationId:string
141
- */
142
- saveObservationFinancingBudget(ApplicationBudgetObservation) {
143
- return this.httpClient.post(this.environment.host.backend.frontoffice +
144
- 'application/saveObservationFinancingBudget', ApplicationBudgetObservation, this.headerJson);
145
- }
146
- blockBudget(applicationId) {
147
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/blockBudget', applicationId, this.headerJson);
148
- }
149
- unblockBudget(applicationId, observation) {
150
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/unblockBudget', { applicationId: applicationId, observation: observation }, this.headerJson);
151
- }
152
- isBlockBudget(applicationId) {
153
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/isBlockBudget', applicationId, this.headerJson);
154
- }
155
- sendCodebtorResponseByStaticInteraction(applicationId, interaction, promCodigo, response, codebtor, changeStatusByCategoryDto, sendEmailToCodebtor) {
156
- return this.httpClient.post(this.environment.host.backend.frontoffice +
157
- 'application/sendCodebtorResponseByStaticInteraction', changeStatusByCategoryDto, {
158
- params: new HttpParams()
159
- .set('applicationId', applicationId)
160
- .set('codebtor', codebtor)
161
- .set('response', response.toString())
162
- .set('promCodigo', promCodigo.toString())
163
- .set('interaction', interaction.toString())
164
- .set('sendEmailToCodebtor', sendEmailToCodebtor.toString()),
165
- headers: this.headerJson.headers
166
- });
167
- }
168
- /**
169
- * Get unsent applications
170
- * @param promCodigo
171
- * @param budgetTypeId
172
- * @param formIds
173
- */
174
- getFullNotSubmittedByPromCodigo(promCodigo, budgetTypeId, formIds, stateId, atLeastOneDocument = false) {
175
- return this.httpClient.post(this.environment.host.backend.backoffice +
176
- 'application/getFullNotSubmittedByPromCodigo', formIds, {
177
- params: new HttpParams()
178
- .set('promCodigo', promCodigo)
179
- .set('budgetTypeId', budgetTypeId)
180
- .set('stateId', String(stateId))
181
- .set('atLeastOneDocument', String(atLeastOneDocument)),
182
- headers: this.headerJson.headers
183
- });
184
- }
185
- getNotSubmittedByFullDocuments(promCodigo, stateId) {
186
- return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getNotSubmittedByFullDocuments', {
187
- params: new HttpParams()
188
- .set('promCodigo', promCodigo)
189
- .set('stateId', String(stateId))
190
- });
191
- }
192
- /**
193
- *
194
- * @param applicationId
195
- */
196
- getMassiveDataByApplicationId(applicationId) {
197
- return this.httpClient.get(this.environment.host.backend.frontoffice + 'budget/getMassiveDataByApplicationId', {
198
- params: new HttpParams().set('applicationId', applicationId)
199
- });
200
- }
201
- getByUsernameAndPromCodigo(username, promCodigos) {
202
- const applicationRequest = { username, promCodigos };
203
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/getByUsernameAndPromCodigos', applicationRequest);
204
- }
205
- updateAllInitialRecord(initialRecord) {
206
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/updateAllInitialRecord', initialRecord, this.headerJson);
207
- }
208
- updateSingleApplicationValue(applicationValueRequestTO) {
209
- return this.httpClient.put(`${this.environment.host.backend.frontoffice}application/updateSingleApplicationValue`, applicationValueRequestTO);
210
- }
211
- /** It returns the list by dataTableParameters for automatic document analysis*/
212
- getByByDocumentValidation(dataTableParameters) {
213
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByByDocumentValidation', dataTableParameters);
214
- }
215
- /** Change document status manually.*/
216
- updateStatusValidationDocument(changeStatusDocumenValidationRequest) {
217
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/updateStatusValidationDocument', changeStatusDocumenValidationRequest);
218
- }
219
- updateAnalysisDocumentInfo(applicationFormTO) {
220
- return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/updateAnalysisDocumentInfo', applicationFormTO);
221
- }
222
- verifyAutoAnalysisDoc(sendDocAnalysisAutoDto) {
223
- return this.httpClient.post(this.environment.host.backend.backoffice + 'application/verifyAutoAnalysisDoc', sendDocAnalysisAutoDto);
224
- }
225
- getAppCountByPromCodigo(promCodigo) {
226
- return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getAppCountByPromCodigo', { params: new HttpParams().set('promCodigo', promCodigo) });
227
- }
228
- getPeaceAndSafetyRiskCentersByApplicationId(applicationId, promCodigo) {
229
- return this.httpClient.post(this.environment.host.backend.backoffice +
230
- 'application/getPeaceAndSafetyRiskCentersByApplicationId', applicationId, {
231
- headers: this.headerJson.headers,
232
- params: new HttpParams().set('promCodigo', promCodigo)
233
- });
234
- }
235
- }
236
- ApplicationServicefac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ApplicationService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
237
- ApplicationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ApplicationService, providedIn: 'root' });
238
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ApplicationService, decorators: [{
239
- type: Injectable,
240
- args: [{
241
- providedIn: 'root'
242
- }]
243
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
244
- type: Inject,
245
- args: ['environment']
246
- }] }, { type: i1.HttpClient }]; } });
247
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvc2VydmljZXMvYXBwbGljYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFpQm5ELE1BQU0sT0FBTyxrQkFBa0I7SUFHOUIsWUFBMkMsV0FBZ0IsRUFBVSxVQUFzQjtRQUFoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGbkYsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO0lBRUksQ0FBQztJQUUvRixzQ0FBc0M7SUFDdEMsT0FBTyxDQUFDLEVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxxQkFBcUIsRUFDaEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsNERBQTREO0lBQzVELFlBQVksQ0FBQyxFQUFVO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsMEJBQTBCLEVBQ3RFLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLElB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LEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztTQUN0RCxDQUNELENBQUM7SUFDSCxDQUFDOzsrR0FwY1csa0JBQWtCLGtCQUdWLGFBQWE7bUhBSHJCLGtCQUFrQixjQUZsQixNQUFNOzJGQUVOLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEI7OzBCQUlhLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuXHRBcHBsaWNhdGlvbixcclxuXHRBcHBsaWNhdGlvbkRhdGFGb3JtUmVxdWVzdCxcclxuXHRBcHBsaWNhdGlvbkZvcm1UTyxcclxuXHRBcHBsaWNhdGlvblZhbHVlUmVxdWVzdFRPLFxyXG5cdENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG8sXHJcblx0Q2hhbmdlU3RhdHVzRG9jdW1lblZhbGlkYXRpb25SZXF1ZXN0LFxyXG5cdERhdGFUYWJsZVBhcmFtZXRlcnMsXHJcblx0SW5pdGlhbFJlY29yZCxcclxuXHRTZW5kRG9jQW5hbHlzaXNBdXRvRHRvXHJcbn0gZnJvbSAnbmctcGxpLXV0aWwnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvblNlcnZpY2Uge1xyXG5cdHByaXZhdGUgaGVhZGVySnNvbiA9IHsgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9KSB9O1xyXG5cclxuXHRjb25zdHJ1Y3RvcihASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQ6IGFueSwgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhbiBhcHBsaWNhdGlvbiBieSBpZCAqL1xyXG5cdGdldEJ5SWQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArICdhcHBsaWNhdGlvbi9nZXRCeUlkJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdpZCcsIGlkKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgYW4gYXBwbGljYXRpb24gYnkgaWQgd2l0aCBiYXNpYyBwcm9wZXJ0aWVzICovXHJcblx0Z2V0QnlJZExpZ2h0KGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5SWRMaWdodCcsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnaWQnLCBpZCkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIGFuIGFwcGxpY2F0aW9uIGJ5IGlkIHdpdGggdGhlIEJ1ZGdldCBTaW11bGF0aW9uICovXHJcblx0Z2V0QnVkZ2V0U2ltdWxhdGlvbkJ5SWQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2V0QnVkZ2V0U2ltdWxhdGlvbkJ5SWQnLFxyXG5cdFx0XHR7IHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2lkJywgaWQpIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhbiBhcHBsaWNhdGlvbiBieSBpZCB3aXRoIGJhc2ljIHByb3BlcnRpZXMgKi9cclxuXHRnZXRCeUlkTGlnaHRJbihpZExpc3Q6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2V0QnlJZExpZ2h0SW4nLFxyXG5cdFx0XHRpZExpc3RcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgbGlzdCBvZiBhcHBsaWNhdGlvbiBieSBkYXRhVGFibGVQYXJhbWV0ZXJzICovXHJcblx0Z2V0QXBwbGljYXRpb25zQnlEYXRhVGFibGVQYXJhbWV0ZXJzKFxyXG5cdFx0ZGF0YVRhYmxlUGFyYW1ldGVyczogRGF0YVRhYmxlUGFyYW1ldGVyc1xyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCdhcHBsaWNhdGlvbi9nZXRBcHBsaWNhdGlvbnNCeURhdGFUYWJsZVBhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgYXBwbGljYXRpb24gYnkgcHJvbSBjb2RpZ28gKi9cclxuXHRnZXRCeVByb21Db2RpZ28ocHJvbUNvZGlnbzogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5UHJvbUNvZGlnbycsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncHJvbUNvZGlnbycsIHByb21Db2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBsaXN0IG9mIGFwcGxpY2F0aW9uIGJ5IHVzZXJuYW1lICovXHJcblx0Z2V0QnlVc2VybmFtZSh1c2VybmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9nZXRCeVVzZXJuYW1lJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCd1c2VybmFtZScsIHVzZXJuYW1lKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHNhdmVzIGFuIGFwcGxpY2F0aW9uICovXHJcblx0c2F2ZShhcHBsaWNhdGlvbjogQXBwbGljYXRpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9zYXZlJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCByZXR1cm5zIHRoZSBsYXN0IG51bWJlciAqL1xyXG5cdGdldExhc3ROdW1iZXIocHJvbUNvZGlnbzogbnVtYmVyKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2V0TGFzdE51bWJlcicsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncHJvbUNvZGlnbycsIHByb21Db2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCBjaGFuZ2VzIHRoZSBzdGF0dXMgKi9cclxuXHRjaGFuZ2VTdGF0dXNCeUNhdGVnb3J5KFxyXG5cdFx0bENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG86IENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG9bXVxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnYXBwbGljYXRpb24vY2hhbmdlU3RhdHVzQnlDYXRlZ29yeScsXHJcblx0XHRcdGxDaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogaXQgY2hhbmdlcyB0aGUgc3RhdHVzICovXHJcblx0Y2hhbmdlTWFzc2l2ZVN0YXR1cyhsQXBwbGljYXRpb246IEFwcGxpY2F0aW9uW10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2NoYW5nZU1hc3NpdmVTdGF0dXMnLFxyXG5cdFx0XHRsQXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBjaGFuZ2VDb2xvcihhcHBsaWNhdGlvbkxpc3Q6IHN0cmluZ1tdLCBjb2xvcjogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdGNvbnN0IHBhcmFtcyA9IHsgYXBwbGljYXRpb25JZDogYXBwbGljYXRpb25MaXN0LCBjb2xvcjogY29sb3IgfTtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucHV0KFxyXG5cdFx0XHRgJHt0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlfWFwcGxpY2F0aW9uL2NoYW5nZUNvbG9yYCxcclxuXHRcdFx0cGFyYW1zXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIGl0IGdldHMgdGhlIGhpc3Rvcnkgc3RhdGUgKi9cclxuXHRnZXRIaXN0b3J5U3RhdGUoYXBwbGljYXRpb25JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEhpc3RvcnlTdGF0ZScsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCBzYXZlcyBtYXNzaXZlbHkgKi9cclxuXHRzYXZlTWFzc2l2ZShcclxuXHRcdGxpc3RBcHBsaWNhdGlvbkRhdGFGb3JtUmVxdWVzdDogQXBwbGljYXRpb25EYXRhRm9ybVJlcXVlc3RbXSxcclxuXHRcdGFwcGxpY2F0aW9uc1RvVmVyaWZ5RG9jdW1lbnQ6IFN0cmluZ1tdLFxyXG5cdFx0cHJvbUNvZGlnbzogbnVtYmVyLFxyXG5cdFx0c3RhdHVzUmFkaWNhZG86IGJvb2xlYW5cclxuXHQpIHtcclxuXHRcdGxldCBsaXN0RGF0YUFwcGxpY2F0aW9uID0ge1xyXG5cdFx0XHRsaXN0QXBwbGljYXRpb25EYXRhRm9ybVJlcXVlc3Q6IGxpc3RBcHBsaWNhdGlvbkRhdGFGb3JtUmVxdWVzdCxcclxuXHRcdFx0YXBwbGljYXRpb25zVG9WZXJpZnlEb2N1bWVudDogYXBwbGljYXRpb25zVG9WZXJpZnlEb2N1bWVudCxcclxuXHRcdFx0cHJvbUNvZGlnbzogcHJvbUNvZGlnbyxcclxuXHRcdFx0c3RhdHVzUmFkaWNhZG86IHN0YXR1c1JhZGljYWRvXHJcblx0XHR9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ2FwcGxpY2F0aW9uLWRhdGFmb3JtL3NhdmVNdWx0aXBsZScsXHJcblx0XHRcdGxpc3REYXRhQXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIHNhdmUgbXVsdGlwbGUgcmVjb3Jkc1xyXG5cdCAqIEBwYXJhbSBsaXN0RGF0YSArXHJcblx0ICovXHJcblx0Z2V0QnlEYXRhVGFibGVzUGFyYW1ldGVycyhkYXRhVGFibGVQYXJhbWV0ZXJzOiBEYXRhVGFibGVQYXJhbWV0ZXJzKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBJdCBnZXRzIHRoZSBiYXNpYyBpbmZvcm1hdGlvbiBvZiB0aGUgYXBwbGljYXRpb24gdG8gc2hvdyBpbiBhc3NpZ24gdGFza1xyXG5cdCAqIEBwYXJhbSB0YXNrSWRcclxuXHQgKiBAcGFyYW0gcHJvbUNvZGlnb1xyXG5cdCAqIEBwYXJhbSByZXZpZXdlclxyXG5cdCAqL1xyXG5cdGdldEJ5VGFza0lkUHJvbUNvZGlnb0FuZFJldmlld2VyKGRhdGFUYWJsZVBhcmFtZXRlcnM6IERhdGFUYWJsZVBhcmFtZXRlcnMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5VGFza1Byb21Db2RpZ29BbmRSZXZpZXdlcicsXHJcblx0XHRcdGRhdGFUYWJsZVBhcmFtZXRlcnMsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIEl0IGdldHMgYXBwbGljYXRpb25zIGJ5IGRhdGF0YWJsZSBwYXJhbWV0ZXJzIGZyb20gYmFja29mZmljZVxyXG5cdCAqIEBwYXJhbSBkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0ICovXHJcblx0Z2V0QmFja0FwcEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMoZGF0YVRhYmxlUGFyYW1ldGVyczogRGF0YVRhYmxlUGFyYW1ldGVycykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBzYXZlIG11bHRpcGxlIHJlY29yZHNcclxuXHQgKiBAcGFyYW0gbGlzdERhdGEgK1xyXG5cdCAqL1xyXG5cdGdldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnNBcHAoZGF0YVRhYmxlUGFyYW1ldGVyczogRGF0YVRhYmxlUGFyYW1ldGVycykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnNBcHAnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgbGlzdCBvZiBhcHBsaWNhdGlvbiBieSBwcm9tIGNvZGlnbyAqL1xyXG5cdGdldEJ5TnVtYmVyQW5kUHJvbUNvZGlnbyhwcm9tQ29kaWdvOiBudW1iZXIsIG51bWJlcjogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5TnVtYmVyQW5kUHJvbUNvZGlnbycsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ3Byb21Db2RpZ28nLCBwcm9tQ29kaWdvLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdudW1iZXInLCBudW1iZXIudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGFjY2VwdENyZWRpdChhcHBsaWNhdGlvbjogQXBwbGljYXRpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9hY2NlcHRDcmVkaXQnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbixcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Y29uZmlybUJ1ZGdldEFwcG9pbnRtZW50KGFwcGxpY2F0aW9uOiBBcHBsaWNhdGlvbik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2NvbmZpcm1CdWRnZXRBcHBvaW50bWVudCcsXHJcblx0XHRcdGFwcGxpY2F0aW9uLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRpbml0R3VhcmFudGVlUHJvY2VzcyhhcHBsaWNhdGlvbjogQXBwbGljYXRpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2luaXRHdWFyYW50ZWVQcm9jZXNzJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldExlZ2FsaXphdGlvbkFuZEVuc3VyYW5jZUJ5QXBwbGljYXRpb25JZChhcHBsaWNhdGlvbklkOiBTdHJpbmdbXSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCdhcHBsaWNhdGlvbi9nZXRMZWdhbGl6YXRpb25BbmRFbnN1cmFuY2VCeUFwcGxpY2F0aW9uSWQnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbklkLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZW5lcmF0ZUJhbmtWaXNpb25GaWxlcyhhcHBsaWNhdGlvbklkOiBTdHJpbmdbXSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2VuZXJhdGVCYW5rVmlzaW9uRmlsZXMnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbklkLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQWNjZXB0RGF0YVByb2Nlc3NpbmcoYXBwbGljYXRpb246IEFwcGxpY2F0aW9uKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vc2F2ZUFjY2VwdERhdGFQcm9jZXNzaW5nJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFNhdmUgdG90YWwgYnVkZ2V0IGFtb3VudHMsIHRoZSBjcmVkaXRBY2NlcHRlZCBjb3VsZCBiZSBudWxsLCB0aGUgc2VydmljZSBzZWFyY2ggdGhpcy5cclxuXHQgKiBAcGFyYW0gYXBwbGljYXRpb25CdWRnZXRUb3RhbEFtb3VudCBBbiBqc29uIG9iamVjdCB3aXRoOiBhcHBsaWNhdGlvbkJ1ZGdldFRvdGFsLCBhcHBsaWNhdGlvbklkOnN0cmluZywgY3JlZGl0QWNjZXB0ZWQ6Ym9vbGVhblxyXG5cdCAqL1xyXG5cdHNhdmVCdWRnZXRUb3RhbEFtb3VudChhcHBsaWNhdGlvbkJ1ZGdldFRvdGFsQW1vdW50OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9zYXZlQnVkZ2V0VG90YWxBbW91bnQnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbkJ1ZGdldFRvdGFsQW1vdW50LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBTYXZlIGZpbmFuY2luZyBvYnNlcnZhdGlvbiBpbiBidWRnZXQgYXBwbGljYXRpb24uXHJcblx0ICogQHBhcmFtIEFwcGxpY2F0aW9uQnVkZ2V0T2JzZXJ2YXRpb24gQW4ganNvbiBvYmplY3Qgd2l0aDogb2JzZXJ2YXRpb246c3RyaW5nLCBhcHBsaWNhdGlvbklkOnN0cmluZ1xyXG5cdCAqL1xyXG5cdHNhdmVPYnNlcnZhdGlvbkZpbmFuY2luZ0J1ZGdldChBcHBsaWNhdGlvbkJ1ZGdldE9ic2VydmF0aW9uOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArXHJcblx0XHRcdFx0J2FwcGxpY2F0aW9uL3NhdmVPYnNlcnZhdGlvbkZpbmFuY2luZ0J1ZGdldCcsXHJcblx0XHRcdEFwcGxpY2F0aW9uQnVkZ2V0T2JzZXJ2YXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGJsb2NrQnVkZ2V0KGFwcGxpY2F0aW9uSWQ6IFN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9ibG9ja0J1ZGdldCcsXHJcblx0XHRcdGFwcGxpY2F0aW9uSWQsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHVuYmxvY2tCdWRnZXQoYXBwbGljYXRpb25JZDogU3RyaW5nLCBvYnNlcnZhdGlvbjogU3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL3VuYmxvY2tCdWRnZXQnLFxyXG5cdFx0XHR7IGFwcGxpY2F0aW9uSWQ6IGFwcGxpY2F0aW9uSWQsIG9ic2VydmF0aW9uOiBvYnNlcnZhdGlvbiB9LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRpc0Jsb2NrQnVkZ2V0KGFwcGxpY2F0aW9uSWQ6IFN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9pc0Jsb2NrQnVkZ2V0JyxcclxuXHRcdFx0YXBwbGljYXRpb25JZCxcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2VuZENvZGVidG9yUmVzcG9uc2VCeVN0YXRpY0ludGVyYWN0aW9uKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0aW50ZXJhY3Rpb246IG51bWJlcixcclxuXHRcdHByb21Db2RpZ286IG51bWJlcixcclxuXHRcdHJlc3BvbnNlOiBib29sZWFuLFxyXG5cdFx0Y29kZWJ0b3I6IHN0cmluZyxcclxuXHRcdGNoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG86IENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG8sXHJcblx0XHRzZW5kRW1haWxUb0NvZGVidG9yOiBib29sZWFuXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnYXBwbGljYXRpb24vc2VuZENvZGVidG9yUmVzcG9uc2VCeVN0YXRpY0ludGVyYWN0aW9uJyxcclxuXHRcdFx0Y2hhbmdlU3RhdHVzQnlDYXRlZ29yeUR0byxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdjb2RlYnRvcicsIGNvZGVidG9yKVxyXG5cdFx0XHRcdFx0LnNldCgncmVzcG9uc2UnLCByZXNwb25zZS50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgncHJvbUNvZGlnbycsIHByb21Db2RpZ28udG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2ludGVyYWN0aW9uJywgaW50ZXJhY3Rpb24udG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ3NlbmRFbWFpbFRvQ29kZWJ0b3InLCBzZW5kRW1haWxUb0NvZGVidG9yLnRvU3RyaW5nKCkpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBHZXQgdW5zZW50IGFwcGxpY2F0aW9uc1xyXG5cdCAqIEBwYXJhbSBwcm9tQ29kaWdvXHJcblx0ICogQHBhcmFtIGJ1ZGdldFR5cGVJZFxyXG5cdCAqIEBwYXJhbSBmb3JtSWRzXHJcblx0ICovXHJcblx0Z2V0RnVsbE5vdFN1Ym1pdHRlZEJ5UHJvbUNvZGlnbyhcclxuXHRcdHByb21Db2RpZ286IHN0cmluZyxcclxuXHRcdGJ1ZGdldFR5cGVJZDogc3RyaW5nLFxyXG5cdFx0Zm9ybUlkczogc3RyaW5nW10sXHJcblx0XHRzdGF0ZUlkOiBudW1iZXIsXHJcblx0XHRhdExlYXN0T25lRG9jdW1lbnQgPSBmYWxzZVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICtcclxuXHRcdFx0XHQnYXBwbGljYXRpb24vZ2V0RnVsbE5vdFN1Ym1pdHRlZEJ5UHJvbUNvZGlnbycsXHJcblx0XHRcdGZvcm1JZHMsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ3Byb21Db2RpZ28nLCBwcm9tQ29kaWdvKVxyXG5cdFx0XHRcdFx0LnNldCgnYnVkZ2V0VHlwZUlkJywgYnVkZ2V0VHlwZUlkKVxyXG5cdFx0XHRcdFx0LnNldCgnc3RhdGVJZCcsIFN0cmluZyhzdGF0ZUlkKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2F0TGVhc3RPbmVEb2N1bWVudCcsIFN0cmluZyhhdExlYXN0T25lRG9jdW1lbnQpKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm90U3VibWl0dGVkQnlGdWxsRG9jdW1lbnRzKHByb21Db2RpZ286IHN0cmluZywgc3RhdGVJZDogbnVtYmVyKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArICdhcHBsaWNhdGlvbi9nZXROb3RTdWJtaXR0ZWRCeUZ1bGxEb2N1bWVudHMnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnbylcclxuXHRcdFx0XHRcdC5zZXQoJ3N0YXRlSWQnLCBTdHJpbmcoc3RhdGVJZCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKlxyXG5cdCAqIEBwYXJhbSBhcHBsaWNhdGlvbklkXHJcblx0ICovXHJcblx0Z2V0TWFzc2l2ZURhdGFCeUFwcGxpY2F0aW9uSWQoYXBwbGljYXRpb25JZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYnVkZ2V0L2dldE1hc3NpdmVEYXRhQnlBcHBsaWNhdGlvbklkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0QnlVc2VybmFtZUFuZFByb21Db2RpZ28odXNlcm5hbWU6IHN0cmluZywgcHJvbUNvZGlnb3M6IG51bWJlcltdKTogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbltdPiB7XHJcblx0XHRjb25zdCBhcHBsaWNhdGlvblJlcXVlc3QgPSB7IHVzZXJuYW1lLCBwcm9tQ29kaWdvcyB9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PEFwcGxpY2F0aW9uW10+KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9nZXRCeVVzZXJuYW1lQW5kUHJvbUNvZGlnb3MnLFxyXG5cdFx0XHRhcHBsaWNhdGlvblJlcXVlc3RcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHR1cGRhdGVBbGxJbml0aWFsUmVjb3JkKGluaXRpYWxSZWNvcmQ6IEluaXRpYWxSZWNvcmQpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi91cGRhdGVBbGxJbml0aWFsUmVjb3JkJyxcclxuXHRcdFx0aW5pdGlhbFJlY29yZCxcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlU2luZ2xlQXBwbGljYXRpb25WYWx1ZShcclxuXHRcdGFwcGxpY2F0aW9uVmFsdWVSZXF1ZXN0VE86IEFwcGxpY2F0aW9uVmFsdWVSZXF1ZXN0VE9cclxuXHQpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQoXHJcblx0XHRcdGAke3RoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlfWFwcGxpY2F0aW9uL3VwZGF0ZVNpbmdsZUFwcGxpY2F0aW9uVmFsdWVgLFxyXG5cdFx0XHRhcHBsaWNhdGlvblZhbHVlUmVxdWVzdFRPXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3QgYnkgZGF0YVRhYmxlUGFyYW1ldGVycyBmb3IgYXV0b21hdGljIGRvY3VtZW50IGFuYWx5c2lzKi9cclxuXHRnZXRCeUJ5RG9jdW1lbnRWYWxpZGF0aW9uKGRhdGFUYWJsZVBhcmFtZXRlcnM6IERhdGFUYWJsZVBhcmFtZXRlcnMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5QnlEb2N1bWVudFZhbGlkYXRpb24nLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIENoYW5nZSBkb2N1bWVudCBzdGF0dXMgbWFudWFsbHkuKi9cclxuXHR1cGRhdGVTdGF0dXNWYWxpZGF0aW9uRG9jdW1lbnQoXHJcblx0XHRjaGFuZ2VTdGF0dXNEb2N1bWVuVmFsaWRhdGlvblJlcXVlc3Q6IENoYW5nZVN0YXR1c0RvY3VtZW5WYWxpZGF0aW9uUmVxdWVzdFxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnYXBwbGljYXRpb24vdXBkYXRlU3RhdHVzVmFsaWRhdGlvbkRvY3VtZW50JyxcclxuXHRcdFx0Y2hhbmdlU3RhdHVzRG9jdW1lblZhbGlkYXRpb25SZXF1ZXN0XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQW5hbHlzaXNEb2N1bWVudEluZm8oYXBwbGljYXRpb25Gb3JtVE86IEFwcGxpY2F0aW9uRm9ybVRPKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vdXBkYXRlQW5hbHlzaXNEb2N1bWVudEluZm8nLFxyXG5cdFx0XHRhcHBsaWNhdGlvbkZvcm1UT1xyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHZlcmlmeUF1dG9BbmFseXNpc0RvYyhzZW5kRG9jQW5hbHlzaXNBdXRvRHRvOiBTZW5kRG9jQW5hbHlzaXNBdXRvRHRvKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArICdhcHBsaWNhdGlvbi92ZXJpZnlBdXRvQW5hbHlzaXNEb2MnLFxyXG5cdFx0XHRzZW5kRG9jQW5hbHlzaXNBdXRvRHRvXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0QXBwQ291bnRCeVByb21Db2RpZ28ocHJvbUNvZGlnbzogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEFwcENvdW50QnlQcm9tQ29kaWdvJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnbykgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldFBlYWNlQW5kU2FmZXR5Umlza0NlbnRlcnNCeUFwcGxpY2F0aW9uSWQoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBTdHJpbmdbXSxcclxuXHRcdHByb21Db2RpZ286IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCdhcHBsaWNhdGlvbi9nZXRQZWFjZUFuZFNhZmV0eVJpc2tDZW50ZXJzQnlBcHBsaWNhdGlvbklkJyxcclxuXHRcdFx0YXBwbGljYXRpb25JZCxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzLFxyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3Byb21Db2RpZ28nLCBwcm9tQ29kaWdvKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxufVxyXG4iXX0=
1
+ import { HttpHeaders, HttpParams } from '@angular/common/http';
2
+ import { Inject, Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class ApplicationService {
6
+ constructor(environment, httpClient) {
7
+ this.environment = environment;
8
+ this.httpClient = httpClient;
9
+ this.headerJson = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };
10
+ }
11
+ /** It returns an application by id */
12
+ getById(id) {
13
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getById', { params: new HttpParams().set('id', id) });
14
+ }
15
+ /** It returns an application by id with basic properties */
16
+ getByIdLight(id) {
17
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getByIdLight', { params: new HttpParams().set('id', id) });
18
+ }
19
+ /** It returns an application by id with the Budget Simulation */
20
+ getBudgetSimulationById(id) {
21
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getBudgetSimulationById', { params: new HttpParams().set('id', id) });
22
+ }
23
+ /** It returns an application by id with basic properties */
24
+ getByIdLightIn(idList) {
25
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/getByIdLightIn', idList);
26
+ }
27
+ /** It returns the list of application by dataTableParameters */
28
+ getApplicationsByDataTableParameters(dataTableParameters) {
29
+ return this.httpClient.post(this.environment.host.backend.backoffice +
30
+ 'application/getApplicationsByDataTableParameters', dataTableParameters);
31
+ }
32
+ /** It returns the list of application by prom codigo */
33
+ getByPromCodigo(promCodigo) {
34
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getByPromCodigo', { params: new HttpParams().set('promCodigo', promCodigo.toString()) });
35
+ }
36
+ /** It returns the list of application by username */
37
+ getByUsername(username) {
38
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getByUsername', { params: new HttpParams().set('username', username) });
39
+ }
40
+ /** It saves an application */
41
+ save(application) {
42
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/save', application, this.headerJson);
43
+ }
44
+ /** it returns the last number */
45
+ getLastNumber(promCodigo) {
46
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'application/getLastNumber', { params: new HttpParams().set('promCodigo', promCodigo.toString()) });
47
+ }
48
+ /** it changes the status */
49
+ changeStatusByCategory(lChangeStatusByCategoryDto) {
50
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/changeStatusByCategory', lChangeStatusByCategoryDto, this.headerJson);
51
+ }
52
+ /** it changes the status */
53
+ changeMassiveStatus(lApplication) {
54
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/changeMassiveStatus', lApplication, this.headerJson);
55
+ }
56
+ changeColor(applicationList, color) {
57
+ const params = { applicationId: applicationList, color: color };
58
+ return this.httpClient.put(`${this.environment.host.backend.backoffice}application/changeColor`, params);
59
+ }
60
+ /** it gets the history state */
61
+ getHistoryState(applicationId) {
62
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getHistoryState', { params: new HttpParams().set('applicationId', applicationId.toString()) });
63
+ }
64
+ /** it saves massively */
65
+ saveMassive(listApplicationDataFormRequest, applicationsToVerifyDocument, promCodigo, statusRadicado) {
66
+ let listDataApplication = {
67
+ listApplicationDataFormRequest: listApplicationDataFormRequest,
68
+ applicationsToVerifyDocument: applicationsToVerifyDocument,
69
+ promCodigo: promCodigo,
70
+ statusRadicado: statusRadicado
71
+ };
72
+ return this.httpClient.post(this.environment.host.backend.configuration + 'application-dataform/saveMultiple', listDataApplication, this.headerJson);
73
+ }
74
+ /**
75
+ * save multiple records
76
+ * @param listData +
77
+ */
78
+ getByDataTablesParameters(dataTableParameters) {
79
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/getByDataTablesParameters', dataTableParameters, this.headerJson);
80
+ }
81
+ /**
82
+ * It gets the basic information of the application to show in assign task
83
+ * @param taskId
84
+ * @param promCodigo
85
+ * @param reviewer
86
+ */
87
+ getByTaskIdPromCodigoAndReviewer(dataTableParameters) {
88
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByTaskPromCodigoAndReviewer', dataTableParameters, this.headerJson);
89
+ }
90
+ /**
91
+ * It gets applications by datatable parameters from backoffice
92
+ * @param dataTableParameters
93
+ */
94
+ getBackAppByDataTablesParameters(dataTableParameters) {
95
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByDataTablesParameters', dataTableParameters, this.headerJson);
96
+ }
97
+ /**
98
+ * save multiple records
99
+ * @param listData +
100
+ */
101
+ getByDataTablesParametersApp(dataTableParameters) {
102
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByDataTablesParametersApp', dataTableParameters, this.headerJson);
103
+ }
104
+ /** It returns the list of application by prom codigo */
105
+ getByNumberAndPromCodigo(promCodigo, number) {
106
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getByNumberAndPromCodigo', {
107
+ params: new HttpParams()
108
+ .set('promCodigo', promCodigo.toString())
109
+ .set('number', number.toString())
110
+ });
111
+ }
112
+ acceptCredit(application) {
113
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/acceptCredit', application, this.headerJson);
114
+ }
115
+ confirmBudgetAppointment(application) {
116
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/confirmBudgetAppointment', application, this.headerJson);
117
+ }
118
+ initGuaranteeProcess(application) {
119
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/initGuaranteeProcess', application, this.headerJson);
120
+ }
121
+ getLegalizationAndEnsuranceByApplicationId(applicationId) {
122
+ return this.httpClient.post(this.environment.host.backend.backoffice +
123
+ 'application/getLegalizationAndEnsuranceByApplicationId', applicationId, this.headerJson);
124
+ }
125
+ generateBankVisionFiles(applicationId) {
126
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/generateBankVisionFiles', applicationId, this.headerJson);
127
+ }
128
+ saveAcceptDataProcessing(application) {
129
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/saveAcceptDataProcessing', application, this.headerJson);
130
+ }
131
+ /**
132
+ * Save total budget amounts, the creditAccepted could be null, the service search this.
133
+ * @param applicationBudgetTotalAmount An json object with: applicationBudgetTotal, applicationId:string, creditAccepted:boolean
134
+ */
135
+ saveBudgetTotalAmount(applicationBudgetTotalAmount) {
136
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/saveBudgetTotalAmount', applicationBudgetTotalAmount, this.headerJson);
137
+ }
138
+ /**
139
+ * Save financing observation in budget application.
140
+ * @param ApplicationBudgetObservation An json object with: observation:string, applicationId:string
141
+ */
142
+ saveObservationFinancingBudget(ApplicationBudgetObservation) {
143
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
144
+ 'application/saveObservationFinancingBudget', ApplicationBudgetObservation, this.headerJson);
145
+ }
146
+ blockBudget(applicationId) {
147
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/blockBudget', applicationId, this.headerJson);
148
+ }
149
+ unblockBudget(applicationId, observation) {
150
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/unblockBudget', { applicationId: applicationId, observation: observation }, this.headerJson);
151
+ }
152
+ isBlockBudget(applicationId) {
153
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/isBlockBudget', applicationId, this.headerJson);
154
+ }
155
+ sendCodebtorResponseByStaticInteraction(applicationId, interaction, promCodigo, response, codebtor, changeStatusByCategoryDto, sendEmailToCodebtor) {
156
+ return this.httpClient.post(this.environment.host.backend.frontoffice +
157
+ 'application/sendCodebtorResponseByStaticInteraction', changeStatusByCategoryDto, {
158
+ params: new HttpParams()
159
+ .set('applicationId', applicationId)
160
+ .set('codebtor', codebtor)
161
+ .set('response', response.toString())
162
+ .set('promCodigo', promCodigo.toString())
163
+ .set('interaction', interaction.toString())
164
+ .set('sendEmailToCodebtor', sendEmailToCodebtor.toString()),
165
+ headers: this.headerJson.headers
166
+ });
167
+ }
168
+ /**
169
+ * Get unsent applications
170
+ * @param promCodigo
171
+ * @param budgetTypeId
172
+ * @param formIds
173
+ */
174
+ getFullNotSubmittedByPromCodigo(promCodigo, budgetTypeId, formIds, stateId, atLeastOneDocument = false) {
175
+ return this.httpClient.post(this.environment.host.backend.backoffice +
176
+ 'application/getFullNotSubmittedByPromCodigo', formIds, {
177
+ params: new HttpParams()
178
+ .set('promCodigo', promCodigo)
179
+ .set('budgetTypeId', budgetTypeId)
180
+ .set('stateId', String(stateId))
181
+ .set('atLeastOneDocument', String(atLeastOneDocument)),
182
+ headers: this.headerJson.headers
183
+ });
184
+ }
185
+ getNotSubmittedByFullDocuments(promCodigo, stateId) {
186
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getNotSubmittedByFullDocuments', {
187
+ params: new HttpParams()
188
+ .set('promCodigo', promCodigo)
189
+ .set('stateId', String(stateId))
190
+ });
191
+ }
192
+ /**
193
+ *
194
+ * @param applicationId
195
+ */
196
+ getMassiveDataByApplicationId(applicationId) {
197
+ return this.httpClient.get(this.environment.host.backend.frontoffice + 'budget/getMassiveDataByApplicationId', {
198
+ params: new HttpParams().set('applicationId', applicationId)
199
+ });
200
+ }
201
+ getByUsernameAndPromCodigo(username, promCodigos) {
202
+ const applicationRequest = { username, promCodigos };
203
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/getByUsernameAndPromCodigos', applicationRequest);
204
+ }
205
+ updateAllInitialRecord(initialRecord) {
206
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/updateAllInitialRecord', initialRecord, this.headerJson);
207
+ }
208
+ updateSingleApplicationValue(applicationValueRequestTO) {
209
+ return this.httpClient.put(`${this.environment.host.backend.frontoffice}application/updateSingleApplicationValue`, applicationValueRequestTO);
210
+ }
211
+ /** It returns the list by dataTableParameters for automatic document analysis*/
212
+ getByByDocumentValidation(dataTableParameters) {
213
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/getByByDocumentValidation', dataTableParameters);
214
+ }
215
+ /** Change document status manually.*/
216
+ updateStatusValidationDocument(changeStatusDocumenValidationRequest) {
217
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/updateStatusValidationDocument', changeStatusDocumenValidationRequest);
218
+ }
219
+ updateAnalysisDocumentInfo(applicationFormTO) {
220
+ return this.httpClient.post(this.environment.host.backend.frontoffice + 'application/updateAnalysisDocumentInfo', applicationFormTO);
221
+ }
222
+ verifyAutoAnalysisDoc(sendDocAnalysisAutoDto) {
223
+ return this.httpClient.post(this.environment.host.backend.backoffice + 'application/verifyAutoAnalysisDoc', sendDocAnalysisAutoDto);
224
+ }
225
+ getAppCountByPromCodigo(promCodigo) {
226
+ return this.httpClient.get(this.environment.host.backend.backoffice + 'application/getAppCountByPromCodigo', { params: new HttpParams().set('promCodigo', promCodigo) });
227
+ }
228
+ getPeaceAndSafetyRiskCentersByApplicationId(applicationId, promCodigo) {
229
+ return this.httpClient.post(this.environment.host.backend.backoffice +
230
+ 'application/getPeaceAndSafetyRiskCentersByApplicationId', applicationId, {
231
+ headers: this.headerJson.headers,
232
+ params: new HttpParams().set('promCodigo', promCodigo)
233
+ });
234
+ }
235
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ApplicationService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
236
+ static { thisprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ApplicationService, providedIn: 'root' }); }
237
+ }
238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ApplicationService, decorators: [{
239
+ type: Injectable,
240
+ args: [{
241
+ providedIn: 'root'
242
+ }]
243
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
244
+ type: Inject,
245
+ args: ['environment']
246
+ }] }, { type: i1.HttpClient }] });
247
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvc2VydmljZXMvYXBwbGljYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFpQm5ELE1BQU0sT0FBTyxrQkFBa0I7SUFHOUIsWUFBMkMsV0FBZ0IsRUFBVSxVQUFzQjtRQUFoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGbkYsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO0lBRUksQ0FBQztJQUUvRixzQ0FBc0M7SUFDdEMsT0FBTyxDQUFDLEVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxxQkFBcUIsRUFDaEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsNERBQTREO0lBQzVELFlBQVksQ0FBQyxFQUFVO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsMEJBQTBCLEVBQ3RFLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsRUFBRSxDQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGlFQUFpRTtJQUNqRSx1QkFBdUIsQ0FBQyxFQUFVO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcscUNBQXFDLEVBQ2pGLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsRUFBRSxDQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELDREQUE0RDtJQUM1RCxjQUFjLENBQUMsTUFBZ0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyw0QkFBNEIsRUFDeEUsTUFBTSxDQUNOLENBQUM7SUFDSCxDQUFDO0lBRUQsZ0VBQWdFO0lBQ2hFLG9DQUFvQyxDQUNuQyxtQkFBd0M7UUFFeEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVU7WUFDdkMsa0RBQWtELEVBQ25ELG1CQUFtQixDQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVELHdEQUF3RDtJQUN4RCxlQUFlLENBQUMsVUFBa0I7UUFDakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyw2QkFBNkIsRUFDeEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ3JFLENBQUM7SUFDSCxDQUFDO0lBRUQscURBQXFEO0lBQ3JELGFBQWEsQ0FBQyxRQUFnQjtRQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLDJCQUEyQixFQUN2RSxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FDdEQsQ0FBQztJQUNILENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsSUFBSSxDQUFDLFdBQXdCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsa0JBQWtCLEVBQzlELFdBQVcsRUFDWCxJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQsaUNBQWlDO0lBQ2pDLGFBQWEsQ0FBQyxVQUFrQjtRQUMvQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLDJCQUEyQixFQUN2RSxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FDckUsQ0FBQztJQUNILENBQUM7SUFFRCw0QkFBNEI7SUFDNUIsc0JBQXNCLENBQ3JCLDBCQUF1RDtRQUV2RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLG9DQUFvQyxFQUMvRSwwQkFBMEIsRUFDMUIsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELDRCQUE0QjtJQUM1QixtQkFBbUIsQ0FBQyxZQUEyQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLGlDQUFpQyxFQUM1RSxZQUFZLEVBQ1osSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVNLFdBQVcsQ0FBQyxlQUF5QixFQUFFLEtBQWE7UUFDMUQsTUFBTSxNQUFNLEdBQUcsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUNoRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLHlCQUF5QixFQUNwRSxNQUFNLENBQ04sQ0FBQztJQUNILENBQUM7SUFFRCxnQ0FBZ0M7SUFDaEMsZUFBZSxDQUFDLGFBQXFCO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsNkJBQTZCLEVBQ3hFLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUMzRSxDQUFDO0lBQ0gsQ0FBQztJQUVELHlCQUF5QjtJQUN6QixXQUFXLENBQ1YsOEJBQTRELEVBQzVELDRCQUFzQyxFQUN0QyxVQUFrQixFQUNsQixjQUF1QjtRQUV2QixJQUFJLG1CQUFtQixHQUFHO1lBQ3pCLDhCQUE4QixFQUFFLDhCQUE4QjtZQUM5RCw0QkFBNEIsRUFBRSw0QkFBNEI7WUFDMUQsVUFBVSxFQUFFLFVBQVU7WUFDdEIsY0FBYyxFQUFFLGNBQWM7U0FDOUIsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEdBQUcsbUNBQW1DLEVBQ2pGLG1CQUFtQixFQUNuQixJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gseUJBQXlCLENBQUMsbUJBQXdDO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsdUNBQXVDLEVBQ25GLG1CQUFtQixFQUNuQixJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxnQ0FBZ0MsQ0FBQyxtQkFBd0M7UUFDeEUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyw0Q0FBNEMsRUFDdkYsbUJBQW1CLEVBQ25CLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxnQ0FBZ0MsQ0FBQyxtQkFBd0M7UUFDeEUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyx1Q0FBdUMsRUFDbEYsbUJBQW1CLEVBQ25CLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCw0QkFBNEIsQ0FBQyxtQkFBd0M7UUFDcEUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRywwQ0FBMEMsRUFDckYsbUJBQW1CLEVBQ25CLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCx3REFBd0Q7SUFDeEQsd0JBQXdCLENBQUMsVUFBa0IsRUFBRSxNQUFjO1FBQzFELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsc0NBQXNDLEVBQ2pGO1lBQ0MsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFO2lCQUN0QixHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDeEMsR0FBRyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDbEMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVksQ0FBQyxXQUF3QjtRQUNwQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLDBCQUEwQixFQUN0RSxXQUFXLEVBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELHdCQUF3QixDQUFDLFdBQXdCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsc0NBQXNDLEVBQ2xGLFdBQVcsRUFDWCxJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsV0FBd0I7UUFDNUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxrQ0FBa0MsRUFDN0UsV0FBVyxFQUNYLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCwwQ0FBMEMsQ0FBQyxhQUF1QjtRQUNqRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVTtZQUN2Qyx3REFBd0QsRUFDekQsYUFBYSxFQUNiLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxhQUF1QjtRQUM5QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLHFDQUFxQyxFQUNoRixhQUFhLEVBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELHdCQUF3QixDQUFDLFdBQXdCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsc0NBQXNDLEVBQ2xGLFdBQVcsRUFDWCxJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gscUJBQXFCLENBQUMsNEJBQWlDO1FBQ3RELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsbUNBQW1DLEVBQy9FLDRCQUE0QixFQUM1QixJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsOEJBQThCLENBQUMsNEJBQWlDO1FBQy9ELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1lBQ3hDLDRDQUE0QyxFQUM3Qyw0QkFBNEIsRUFDNUIsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxhQUFxQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLHlCQUF5QixFQUNyRSxhQUFhLEVBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxhQUFxQixFQUFFLFdBQW1CO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsMkJBQTJCLEVBQ3ZFLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLEVBQzFELElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsYUFBcUI7UUFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRywyQkFBMkIsRUFDdkUsYUFBYSxFQUNiLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCx1Q0FBdUMsQ0FDdEMsYUFBcUIsRUFDckIsV0FBbUIsRUFDbkIsVUFBa0IsRUFDbEIsUUFBaUIsRUFDakIsUUFBZ0IsRUFDaEIseUJBQW9ELEVBQ3BELG1CQUE0QjtRQUU1QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVztZQUN4QyxxREFBcUQsRUFDdEQseUJBQXlCLEVBQ3pCO1lBQ0MsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFO2lCQUN0QixHQUFHLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQztpQkFDbkMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7aUJBQ3pCLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2lCQUNwQyxHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDeEMsR0FBRyxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7aUJBQzFDLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1RCxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPO1NBQ2hDLENBQ0QsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILCtCQUErQixDQUM5QixVQUFrQixFQUNsQixZQUFvQixFQUNwQixPQUFpQixFQUNqQixPQUFlLEVBQ2Ysa0JBQWtCLEdBQUcsS0FBSztRQUUxQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVTtZQUN2Qyw2Q0FBNkMsRUFDOUMsT0FBTyxFQUNQO1lBQ0MsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFO2lCQUN0QixHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztpQkFDN0IsR0FBRyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUM7aUJBQ2pDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUMvQixHQUFHLENBQUMsb0JBQW9CLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDdkQsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTztTQUNoQyxDQUNELENBQUM7SUFDSCxDQUFDO0lBRUQsOEJBQThCLENBQUMsVUFBa0IsRUFBRSxPQUFlO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsNENBQTRDLEVBQ3ZGO1lBQ0MsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFO2lCQUN0QixHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztpQkFDN0IsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILDZCQUE2QixDQUFDLGFBQXFCO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsc0NBQXNDLEVBQ2xGO1lBQ0MsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxhQUFhLENBQUM7U0FDNUQsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVELDBCQUEwQixDQUFDLFFBQWdCLEVBQUUsV0FBcUI7UUFDakUsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNyRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLHlDQUF5QyxFQUNyRixrQkFBa0IsQ0FDbEIsQ0FBQztJQUNILENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxhQUE0QjtRQUNsRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLG9DQUFvQyxFQUNoRixhQUFhLEVBQ2IsSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELDRCQUE0QixDQUMzQix5QkFBb0Q7UUFFcEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVywwQ0FBMEMsRUFDdEYseUJBQXlCLENBQ3pCLENBQUM7SUFDSCxDQUFDO0lBRUQsZ0ZBQWdGO0lBQ2hGLHlCQUF5QixDQUFDLG1CQUF3QztRQUNqRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLHVDQUF1QyxFQUNsRixtQkFBbUIsQ0FDbkIsQ0FBQztJQUNILENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsOEJBQThCLENBQzdCLG9DQUEwRTtRQUUxRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLDRDQUE0QyxFQUN2RixvQ0FBb0MsQ0FDcEMsQ0FBQztJQUNILENBQUM7SUFFRCwwQkFBMEIsQ0FBQyxpQkFBb0M7UUFDOUQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsR0FBRyx3Q0FBd0MsRUFDcEYsaUJBQWlCLENBQ2pCLENBQUM7SUFDSCxDQUFDO0lBRUQscUJBQXFCLENBQUMsc0JBQThDO1FBQ25FLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsbUNBQW1DLEVBQzlFLHNCQUFzQixDQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUVELHVCQUF1QixDQUFDLFVBQWtCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcscUNBQXFDLEVBQ2hGLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsRUFBRSxDQUMxRCxDQUFDO0lBQ0gsQ0FBQztJQUVELDJDQUEyQyxDQUMxQyxhQUF1QixFQUN2QixVQUFrQjtRQUVsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVTtZQUN2Qyx5REFBeUQsRUFDMUQsYUFBYSxFQUNiO1lBQ0MsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTztZQUNoQyxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztTQUN0RCxDQUNELENBQUM7SUFDSCxDQUFDOytHQXBjVyxrQkFBa0Isa0JBR1YsYUFBYTttSEFIckIsa0JBQWtCLGNBRmxCLE1BQU07OzRGQUVOLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEI7OzBCQUlhLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuXHRBcHBsaWNhdGlvbixcclxuXHRBcHBsaWNhdGlvbkRhdGFGb3JtUmVxdWVzdCxcclxuXHRBcHBsaWNhdGlvbkZvcm1UTyxcclxuXHRBcHBsaWNhdGlvblZhbHVlUmVxdWVzdFRPLFxyXG5cdENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG8sXHJcblx0Q2hhbmdlU3RhdHVzRG9jdW1lblZhbGlkYXRpb25SZXF1ZXN0LFxyXG5cdERhdGFUYWJsZVBhcmFtZXRlcnMsXHJcblx0SW5pdGlhbFJlY29yZCxcclxuXHRTZW5kRG9jQW5hbHlzaXNBdXRvRHRvXHJcbn0gZnJvbSAnbmctcGxpLXV0aWwnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvblNlcnZpY2Uge1xyXG5cdHByaXZhdGUgaGVhZGVySnNvbiA9IHsgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9KSB9O1xyXG5cclxuXHRjb25zdHJ1Y3RvcihASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQ6IGFueSwgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhbiBhcHBsaWNhdGlvbiBieSBpZCAqL1xyXG5cdGdldEJ5SWQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArICdhcHBsaWNhdGlvbi9nZXRCeUlkJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdpZCcsIGlkKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgYW4gYXBwbGljYXRpb24gYnkgaWQgd2l0aCBiYXNpYyBwcm9wZXJ0aWVzICovXHJcblx0Z2V0QnlJZExpZ2h0KGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5SWRMaWdodCcsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnaWQnLCBpZCkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIGFuIGFwcGxpY2F0aW9uIGJ5IGlkIHdpdGggdGhlIEJ1ZGdldCBTaW11bGF0aW9uICovXHJcblx0Z2V0QnVkZ2V0U2ltdWxhdGlvbkJ5SWQoaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2V0QnVkZ2V0U2ltdWxhdGlvbkJ5SWQnLFxyXG5cdFx0XHR7IHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2lkJywgaWQpIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhbiBhcHBsaWNhdGlvbiBieSBpZCB3aXRoIGJhc2ljIHByb3BlcnRpZXMgKi9cclxuXHRnZXRCeUlkTGlnaHRJbihpZExpc3Q6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2V0QnlJZExpZ2h0SW4nLFxyXG5cdFx0XHRpZExpc3RcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgbGlzdCBvZiBhcHBsaWNhdGlvbiBieSBkYXRhVGFibGVQYXJhbWV0ZXJzICovXHJcblx0Z2V0QXBwbGljYXRpb25zQnlEYXRhVGFibGVQYXJhbWV0ZXJzKFxyXG5cdFx0ZGF0YVRhYmxlUGFyYW1ldGVyczogRGF0YVRhYmxlUGFyYW1ldGVyc1xyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCdhcHBsaWNhdGlvbi9nZXRBcHBsaWNhdGlvbnNCeURhdGFUYWJsZVBhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgYXBwbGljYXRpb24gYnkgcHJvbSBjb2RpZ28gKi9cclxuXHRnZXRCeVByb21Db2RpZ28ocHJvbUNvZGlnbzogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5UHJvbUNvZGlnbycsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncHJvbUNvZGlnbycsIHByb21Db2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBsaXN0IG9mIGFwcGxpY2F0aW9uIGJ5IHVzZXJuYW1lICovXHJcblx0Z2V0QnlVc2VybmFtZSh1c2VybmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9nZXRCeVVzZXJuYW1lJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCd1c2VybmFtZScsIHVzZXJuYW1lKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHNhdmVzIGFuIGFwcGxpY2F0aW9uICovXHJcblx0c2F2ZShhcHBsaWNhdGlvbjogQXBwbGljYXRpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9zYXZlJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCByZXR1cm5zIHRoZSBsYXN0IG51bWJlciAqL1xyXG5cdGdldExhc3ROdW1iZXIocHJvbUNvZGlnbzogbnVtYmVyKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2V0TGFzdE51bWJlcicsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncHJvbUNvZGlnbycsIHByb21Db2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCBjaGFuZ2VzIHRoZSBzdGF0dXMgKi9cclxuXHRjaGFuZ2VTdGF0dXNCeUNhdGVnb3J5KFxyXG5cdFx0bENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG86IENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG9bXVxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnYXBwbGljYXRpb24vY2hhbmdlU3RhdHVzQnlDYXRlZ29yeScsXHJcblx0XHRcdGxDaGFuZ2VTdGF0dXNCeUNhdGVnb3J5RHRvLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogaXQgY2hhbmdlcyB0aGUgc3RhdHVzICovXHJcblx0Y2hhbmdlTWFzc2l2ZVN0YXR1cyhsQXBwbGljYXRpb246IEFwcGxpY2F0aW9uW10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2NoYW5nZU1hc3NpdmVTdGF0dXMnLFxyXG5cdFx0XHRsQXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBjaGFuZ2VDb2xvcihhcHBsaWNhdGlvbkxpc3Q6IHN0cmluZ1tdLCBjb2xvcjogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdGNvbnN0IHBhcmFtcyA9IHsgYXBwbGljYXRpb25JZDogYXBwbGljYXRpb25MaXN0LCBjb2xvcjogY29sb3IgfTtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucHV0KFxyXG5cdFx0XHRgJHt0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlfWFwcGxpY2F0aW9uL2NoYW5nZUNvbG9yYCxcclxuXHRcdFx0cGFyYW1zXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIGl0IGdldHMgdGhlIGhpc3Rvcnkgc3RhdGUgKi9cclxuXHRnZXRIaXN0b3J5U3RhdGUoYXBwbGljYXRpb25JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEhpc3RvcnlTdGF0ZScsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQudG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCBzYXZlcyBtYXNzaXZlbHkgKi9cclxuXHRzYXZlTWFzc2l2ZShcclxuXHRcdGxpc3RBcHBsaWNhdGlvbkRhdGFGb3JtUmVxdWVzdDogQXBwbGljYXRpb25EYXRhRm9ybVJlcXVlc3RbXSxcclxuXHRcdGFwcGxpY2F0aW9uc1RvVmVyaWZ5RG9jdW1lbnQ6IFN0cmluZ1tdLFxyXG5cdFx0cHJvbUNvZGlnbzogbnVtYmVyLFxyXG5cdFx0c3RhdHVzUmFkaWNhZG86IGJvb2xlYW5cclxuXHQpIHtcclxuXHRcdGxldCBsaXN0RGF0YUFwcGxpY2F0aW9uID0ge1xyXG5cdFx0XHRsaXN0QXBwbGljYXRpb25EYXRhRm9ybVJlcXVlc3Q6IGxpc3RBcHBsaWNhdGlvbkRhdGFGb3JtUmVxdWVzdCxcclxuXHRcdFx0YXBwbGljYXRpb25zVG9WZXJpZnlEb2N1bWVudDogYXBwbGljYXRpb25zVG9WZXJpZnlEb2N1bWVudCxcclxuXHRcdFx0cHJvbUNvZGlnbzogcHJvbUNvZGlnbyxcclxuXHRcdFx0c3RhdHVzUmFkaWNhZG86IHN0YXR1c1JhZGljYWRvXHJcblx0XHR9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ2FwcGxpY2F0aW9uLWRhdGFmb3JtL3NhdmVNdWx0aXBsZScsXHJcblx0XHRcdGxpc3REYXRhQXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIHNhdmUgbXVsdGlwbGUgcmVjb3Jkc1xyXG5cdCAqIEBwYXJhbSBsaXN0RGF0YSArXHJcblx0ICovXHJcblx0Z2V0QnlEYXRhVGFibGVzUGFyYW1ldGVycyhkYXRhVGFibGVQYXJhbWV0ZXJzOiBEYXRhVGFibGVQYXJhbWV0ZXJzKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBJdCBnZXRzIHRoZSBiYXNpYyBpbmZvcm1hdGlvbiBvZiB0aGUgYXBwbGljYXRpb24gdG8gc2hvdyBpbiBhc3NpZ24gdGFza1xyXG5cdCAqIEBwYXJhbSB0YXNrSWRcclxuXHQgKiBAcGFyYW0gcHJvbUNvZGlnb1xyXG5cdCAqIEBwYXJhbSByZXZpZXdlclxyXG5cdCAqL1xyXG5cdGdldEJ5VGFza0lkUHJvbUNvZGlnb0FuZFJldmlld2VyKGRhdGFUYWJsZVBhcmFtZXRlcnM6IERhdGFUYWJsZVBhcmFtZXRlcnMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5VGFza1Byb21Db2RpZ29BbmRSZXZpZXdlcicsXHJcblx0XHRcdGRhdGFUYWJsZVBhcmFtZXRlcnMsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIEl0IGdldHMgYXBwbGljYXRpb25zIGJ5IGRhdGF0YWJsZSBwYXJhbWV0ZXJzIGZyb20gYmFja29mZmljZVxyXG5cdCAqIEBwYXJhbSBkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0ICovXHJcblx0Z2V0QmFja0FwcEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMoZGF0YVRhYmxlUGFyYW1ldGVyczogRGF0YVRhYmxlUGFyYW1ldGVycykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnMnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBzYXZlIG11bHRpcGxlIHJlY29yZHNcclxuXHQgKiBAcGFyYW0gbGlzdERhdGEgK1xyXG5cdCAqL1xyXG5cdGdldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnNBcHAoZGF0YVRhYmxlUGFyYW1ldGVyczogRGF0YVRhYmxlUGFyYW1ldGVycykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5RGF0YVRhYmxlc1BhcmFtZXRlcnNBcHAnLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgbGlzdCBvZiBhcHBsaWNhdGlvbiBieSBwcm9tIGNvZGlnbyAqL1xyXG5cdGdldEJ5TnVtYmVyQW5kUHJvbUNvZGlnbyhwcm9tQ29kaWdvOiBudW1iZXIsIG51bWJlcjogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5TnVtYmVyQW5kUHJvbUNvZGlnbycsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ3Byb21Db2RpZ28nLCBwcm9tQ29kaWdvLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdudW1iZXInLCBudW1iZXIudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGFjY2VwdENyZWRpdChhcHBsaWNhdGlvbjogQXBwbGljYXRpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9hY2NlcHRDcmVkaXQnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbixcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Y29uZmlybUJ1ZGdldEFwcG9pbnRtZW50KGFwcGxpY2F0aW9uOiBBcHBsaWNhdGlvbik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2NvbmZpcm1CdWRnZXRBcHBvaW50bWVudCcsXHJcblx0XHRcdGFwcGxpY2F0aW9uLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRpbml0R3VhcmFudGVlUHJvY2VzcyhhcHBsaWNhdGlvbjogQXBwbGljYXRpb24pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2luaXRHdWFyYW50ZWVQcm9jZXNzJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldExlZ2FsaXphdGlvbkFuZEVuc3VyYW5jZUJ5QXBwbGljYXRpb25JZChhcHBsaWNhdGlvbklkOiBTdHJpbmdbXSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCdhcHBsaWNhdGlvbi9nZXRMZWdhbGl6YXRpb25BbmRFbnN1cmFuY2VCeUFwcGxpY2F0aW9uSWQnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbklkLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZW5lcmF0ZUJhbmtWaXNpb25GaWxlcyhhcHBsaWNhdGlvbklkOiBTdHJpbmdbXSk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnYXBwbGljYXRpb24vZ2VuZXJhdGVCYW5rVmlzaW9uRmlsZXMnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbklkLFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRzYXZlQWNjZXB0RGF0YVByb2Nlc3NpbmcoYXBwbGljYXRpb246IEFwcGxpY2F0aW9uKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vc2F2ZUFjY2VwdERhdGFQcm9jZXNzaW5nJyxcclxuXHRcdFx0YXBwbGljYXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFNhdmUgdG90YWwgYnVkZ2V0IGFtb3VudHMsIHRoZSBjcmVkaXRBY2NlcHRlZCBjb3VsZCBiZSBudWxsLCB0aGUgc2VydmljZSBzZWFyY2ggdGhpcy5cclxuXHQgKiBAcGFyYW0gYXBwbGljYXRpb25CdWRnZXRUb3RhbEFtb3VudCBBbiBqc29uIG9iamVjdCB3aXRoOiBhcHBsaWNhdGlvbkJ1ZGdldFRvdGFsLCBhcHBsaWNhdGlvbklkOnN0cmluZywgY3JlZGl0QWNjZXB0ZWQ6Ym9vbGVhblxyXG5cdCAqL1xyXG5cdHNhdmVCdWRnZXRUb3RhbEFtb3VudChhcHBsaWNhdGlvbkJ1ZGdldFRvdGFsQW1vdW50OiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9zYXZlQnVkZ2V0VG90YWxBbW91bnQnLFxyXG5cdFx0XHRhcHBsaWNhdGlvbkJ1ZGdldFRvdGFsQW1vdW50LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBTYXZlIGZpbmFuY2luZyBvYnNlcnZhdGlvbiBpbiBidWRnZXQgYXBwbGljYXRpb24uXHJcblx0ICogQHBhcmFtIEFwcGxpY2F0aW9uQnVkZ2V0T2JzZXJ2YXRpb24gQW4ganNvbiBvYmplY3Qgd2l0aDogb2JzZXJ2YXRpb246c3RyaW5nLCBhcHBsaWNhdGlvbklkOnN0cmluZ1xyXG5cdCAqL1xyXG5cdHNhdmVPYnNlcnZhdGlvbkZpbmFuY2luZ0J1ZGdldChBcHBsaWNhdGlvbkJ1ZGdldE9ic2VydmF0aW9uOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArXHJcblx0XHRcdFx0J2FwcGxpY2F0aW9uL3NhdmVPYnNlcnZhdGlvbkZpbmFuY2luZ0J1ZGdldCcsXHJcblx0XHRcdEFwcGxpY2F0aW9uQnVkZ2V0T2JzZXJ2YXRpb24sXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGJsb2NrQnVkZ2V0KGFwcGxpY2F0aW9uSWQ6IFN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9ibG9ja0J1ZGdldCcsXHJcblx0XHRcdGFwcGxpY2F0aW9uSWQsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHVuYmxvY2tCdWRnZXQoYXBwbGljYXRpb25JZDogU3RyaW5nLCBvYnNlcnZhdGlvbjogU3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICsgJ2FwcGxpY2F0aW9uL3VuYmxvY2tCdWRnZXQnLFxyXG5cdFx0XHR7IGFwcGxpY2F0aW9uSWQ6IGFwcGxpY2F0aW9uSWQsIG9ic2VydmF0aW9uOiBvYnNlcnZhdGlvbiB9LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRpc0Jsb2NrQnVkZ2V0KGFwcGxpY2F0aW9uSWQ6IFN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9pc0Jsb2NrQnVkZ2V0JyxcclxuXHRcdFx0YXBwbGljYXRpb25JZCxcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0c2VuZENvZGVidG9yUmVzcG9uc2VCeVN0YXRpY0ludGVyYWN0aW9uKFxyXG5cdFx0YXBwbGljYXRpb25JZDogc3RyaW5nLFxyXG5cdFx0aW50ZXJhY3Rpb246IG51bWJlcixcclxuXHRcdHByb21Db2RpZ286IG51bWJlcixcclxuXHRcdHJlc3BvbnNlOiBib29sZWFuLFxyXG5cdFx0Y29kZWJ0b3I6IHN0cmluZyxcclxuXHRcdGNoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG86IENoYW5nZVN0YXR1c0J5Q2F0ZWdvcnlEdG8sXHJcblx0XHRzZW5kRW1haWxUb0NvZGVidG9yOiBib29sZWFuXHJcblx0KSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlICtcclxuXHRcdFx0XHQnYXBwbGljYXRpb24vc2VuZENvZGVidG9yUmVzcG9uc2VCeVN0YXRpY0ludGVyYWN0aW9uJyxcclxuXHRcdFx0Y2hhbmdlU3RhdHVzQnlDYXRlZ29yeUR0byxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnYXBwbGljYXRpb25JZCcsIGFwcGxpY2F0aW9uSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdjb2RlYnRvcicsIGNvZGVidG9yKVxyXG5cdFx0XHRcdFx0LnNldCgncmVzcG9uc2UnLCByZXNwb25zZS50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgncHJvbUNvZGlnbycsIHByb21Db2RpZ28udG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2ludGVyYWN0aW9uJywgaW50ZXJhY3Rpb24udG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ3NlbmRFbWFpbFRvQ29kZWJ0b3InLCBzZW5kRW1haWxUb0NvZGVidG9yLnRvU3RyaW5nKCkpLFxyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBHZXQgdW5zZW50IGFwcGxpY2F0aW9uc1xyXG5cdCAqIEBwYXJhbSBwcm9tQ29kaWdvXHJcblx0ICogQHBhcmFtIGJ1ZGdldFR5cGVJZFxyXG5cdCAqIEBwYXJhbSBmb3JtSWRzXHJcblx0ICovXHJcblx0Z2V0RnVsbE5vdFN1Ym1pdHRlZEJ5UHJvbUNvZGlnbyhcclxuXHRcdHByb21Db2RpZ286IHN0cmluZyxcclxuXHRcdGJ1ZGdldFR5cGVJZDogc3RyaW5nLFxyXG5cdFx0Zm9ybUlkczogc3RyaW5nW10sXHJcblx0XHRzdGF0ZUlkOiBudW1iZXIsXHJcblx0XHRhdExlYXN0T25lRG9jdW1lbnQgPSBmYWxzZVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICtcclxuXHRcdFx0XHQnYXBwbGljYXRpb24vZ2V0RnVsbE5vdFN1Ym1pdHRlZEJ5UHJvbUNvZGlnbycsXHJcblx0XHRcdGZvcm1JZHMsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ3Byb21Db2RpZ28nLCBwcm9tQ29kaWdvKVxyXG5cdFx0XHRcdFx0LnNldCgnYnVkZ2V0VHlwZUlkJywgYnVkZ2V0VHlwZUlkKVxyXG5cdFx0XHRcdFx0LnNldCgnc3RhdGVJZCcsIFN0cmluZyhzdGF0ZUlkKSlcclxuXHRcdFx0XHRcdC5zZXQoJ2F0TGVhc3RPbmVEb2N1bWVudCcsIFN0cmluZyhhdExlYXN0T25lRG9jdW1lbnQpKSxcclxuXHRcdFx0XHRoZWFkZXJzOiB0aGlzLmhlYWRlckpzb24uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm90U3VibWl0dGVkQnlGdWxsRG9jdW1lbnRzKHByb21Db2RpZ286IHN0cmluZywgc3RhdGVJZDogbnVtYmVyKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArICdhcHBsaWNhdGlvbi9nZXROb3RTdWJtaXR0ZWRCeUZ1bGxEb2N1bWVudHMnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnbylcclxuXHRcdFx0XHRcdC5zZXQoJ3N0YXRlSWQnLCBTdHJpbmcoc3RhdGVJZCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKlxyXG5cdCAqIEBwYXJhbSBhcHBsaWNhdGlvbklkXHJcblx0ICovXHJcblx0Z2V0TWFzc2l2ZURhdGFCeUFwcGxpY2F0aW9uSWQoYXBwbGljYXRpb25JZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYnVkZ2V0L2dldE1hc3NpdmVEYXRhQnlBcHBsaWNhdGlvbklkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2FwcGxpY2F0aW9uSWQnLCBhcHBsaWNhdGlvbklkKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0QnlVc2VybmFtZUFuZFByb21Db2RpZ28odXNlcm5hbWU6IHN0cmluZywgcHJvbUNvZGlnb3M6IG51bWJlcltdKTogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbltdPiB7XHJcblx0XHRjb25zdCBhcHBsaWNhdGlvblJlcXVlc3QgPSB7IHVzZXJuYW1lLCBwcm9tQ29kaWdvcyB9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PEFwcGxpY2F0aW9uW10+KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi9nZXRCeVVzZXJuYW1lQW5kUHJvbUNvZGlnb3MnLFxyXG5cdFx0XHRhcHBsaWNhdGlvblJlcXVlc3RcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHR1cGRhdGVBbGxJbml0aWFsUmVjb3JkKGluaXRpYWxSZWNvcmQ6IEluaXRpYWxSZWNvcmQpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5mcm9udG9mZmljZSArICdhcHBsaWNhdGlvbi91cGRhdGVBbGxJbml0aWFsUmVjb3JkJyxcclxuXHRcdFx0aW5pdGlhbFJlY29yZCxcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlU2luZ2xlQXBwbGljYXRpb25WYWx1ZShcclxuXHRcdGFwcGxpY2F0aW9uVmFsdWVSZXF1ZXN0VE86IEFwcGxpY2F0aW9uVmFsdWVSZXF1ZXN0VE9cclxuXHQpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wdXQoXHJcblx0XHRcdGAke3RoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmZyb250b2ZmaWNlfWFwcGxpY2F0aW9uL3VwZGF0ZVNpbmdsZUFwcGxpY2F0aW9uVmFsdWVgLFxyXG5cdFx0XHRhcHBsaWNhdGlvblZhbHVlUmVxdWVzdFRPXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3QgYnkgZGF0YVRhYmxlUGFyYW1ldGVycyBmb3IgYXV0b21hdGljIGRvY3VtZW50IGFuYWx5c2lzKi9cclxuXHRnZXRCeUJ5RG9jdW1lbnRWYWxpZGF0aW9uKGRhdGFUYWJsZVBhcmFtZXRlcnM6IERhdGFUYWJsZVBhcmFtZXRlcnMpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEJ5QnlEb2N1bWVudFZhbGlkYXRpb24nLFxyXG5cdFx0XHRkYXRhVGFibGVQYXJhbWV0ZXJzXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIENoYW5nZSBkb2N1bWVudCBzdGF0dXMgbWFudWFsbHkuKi9cclxuXHR1cGRhdGVTdGF0dXNWYWxpZGF0aW9uRG9jdW1lbnQoXHJcblx0XHRjaGFuZ2VTdGF0dXNEb2N1bWVuVmFsaWRhdGlvblJlcXVlc3Q6IENoYW5nZVN0YXR1c0RvY3VtZW5WYWxpZGF0aW9uUmVxdWVzdFxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgKyAnYXBwbGljYXRpb24vdXBkYXRlU3RhdHVzVmFsaWRhdGlvbkRvY3VtZW50JyxcclxuXHRcdFx0Y2hhbmdlU3RhdHVzRG9jdW1lblZhbGlkYXRpb25SZXF1ZXN0XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0dXBkYXRlQW5hbHlzaXNEb2N1bWVudEluZm8oYXBwbGljYXRpb25Gb3JtVE86IEFwcGxpY2F0aW9uRm9ybVRPKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuZnJvbnRvZmZpY2UgKyAnYXBwbGljYXRpb24vdXBkYXRlQW5hbHlzaXNEb2N1bWVudEluZm8nLFxyXG5cdFx0XHRhcHBsaWNhdGlvbkZvcm1UT1xyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHZlcmlmeUF1dG9BbmFseXNpc0RvYyhzZW5kRG9jQW5hbHlzaXNBdXRvRHRvOiBTZW5kRG9jQW5hbHlzaXNBdXRvRHRvKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuYmFja29mZmljZSArICdhcHBsaWNhdGlvbi92ZXJpZnlBdXRvQW5hbHlzaXNEb2MnLFxyXG5cdFx0XHRzZW5kRG9jQW5hbHlzaXNBdXRvRHRvXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0Z2V0QXBwQ291bnRCeVByb21Db2RpZ28ocHJvbUNvZGlnbzogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5iYWNrb2ZmaWNlICsgJ2FwcGxpY2F0aW9uL2dldEFwcENvdW50QnlQcm9tQ29kaWdvJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwcm9tQ29kaWdvJywgcHJvbUNvZGlnbykgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGdldFBlYWNlQW5kU2FmZXR5Umlza0NlbnRlcnNCeUFwcGxpY2F0aW9uSWQoXHJcblx0XHRhcHBsaWNhdGlvbklkOiBTdHJpbmdbXSxcclxuXHRcdHByb21Db2RpZ286IG51bWJlclxyXG5cdCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmJhY2tvZmZpY2UgK1xyXG5cdFx0XHRcdCdhcHBsaWNhdGlvbi9nZXRQZWFjZUFuZFNhZmV0eVJpc2tDZW50ZXJzQnlBcHBsaWNhdGlvbklkJyxcclxuXHRcdFx0YXBwbGljYXRpb25JZCxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdGhlYWRlcnM6IHRoaXMuaGVhZGVySnNvbi5oZWFkZXJzLFxyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3Byb21Db2RpZ28nLCBwcm9tQ29kaWdvKVxyXG5cdFx0XHR9XHJcblx0XHQpO1xyXG5cdH1cclxufVxyXG4iXX0=