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
@@ -0,0 +1,360 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { HttpParams, HttpHeaders } from '@angular/common/http';
3
+ import { BehaviorSubject } from 'rxjs';
4
+ import { PliPatrocinador, PliPrograma, PliPromocion, JwtUtil, NumberUtil, AuthenticationUtil } from 'ng-pli-util';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common/http";
7
+ export class PppService {
8
+ /** It contains the key of the json web token */
9
+ static { this.TOKEN_PPP = 'tokenPpp'; }
10
+ constructor(environment, httpClient) {
11
+ this.environment = environment;
12
+ this.httpClient = httpClient;
13
+ this.headerJson = { headers: new HttpHeaders({ 'Content-Type': 'application/json' }) };
14
+ /** This observable allows to verify if ppp is created */
15
+ this.subjectPpp = new BehaviorSubject(undefined);
16
+ /** This observable allows to verify if list ppp is generated */
17
+ this.subjectListPpp = new BehaviorSubject(undefined);
18
+ }
19
+ /** It has an observable to notify if the ppp is changed */
20
+ onChangePpp() {
21
+ return this.subjectPpp.asObservable();
22
+ }
23
+ /** It sets the new ppp */
24
+ setPpp(ppp) {
25
+ if (ppp) {
26
+ if (typeof ppp === 'string') {
27
+ if (NumberUtil.isNumber(ppp)) {
28
+ ppp = parseInt(ppp);
29
+ }
30
+ else {
31
+ ppp = 0;
32
+ }
33
+ }
34
+ else if (typeof ppp !== 'number') {
35
+ ppp = 0;
36
+ }
37
+ }
38
+ this.subjectPpp.next(ppp);
39
+ }
40
+ /** It returns a list of patrocinador */
41
+ getListPatrocinador() {
42
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/patrocinador/getAll');
43
+ }
44
+ /** It returns a patrocinador by id */
45
+ getPatrocinadorById(id) {
46
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/patrocinador/getById', { params: new HttpParams().set('patCodigo', id.toString()) });
47
+ }
48
+ /** It saves a patrocinador */
49
+ savePatrocinador(oldPatrocinador, patrocinador) {
50
+ //pliUsuario: {usuLogin : AuthenticationUtil.getUsername()};
51
+ let object = {
52
+ pliPatrocinadorBefore: oldPatrocinador,
53
+ pliPatrocinador: patrocinador,
54
+ pliUsuario: { usuLogin: AuthenticationUtil.getUsername() }
55
+ };
56
+ return this.httpClient.post(this.environment.host.backend.plis + 'config/patrocinador/save', object, this.headerJson);
57
+ }
58
+ /** It returns the list of tipo patrocinador */
59
+ getListTipoPatrocinador() {
60
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/tipo-patrocinador/getAll');
61
+ }
62
+ /** It returns the list of tipo programa */
63
+ getListTipoPrograma() {
64
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/tipo-programa/getAll');
65
+ }
66
+ /** It returns the list of paises */
67
+ getPaises() {
68
+ return this.httpClient.get(this.environment.host.backend.plis + 'pais/getAll');
69
+ }
70
+ /** It returns the list of programas by patrocinador id */
71
+ getListProgramasBypatCodigo(patCodigo) {
72
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/programa/getAllByPatrocinador', { params: new HttpParams().set('patCodigo', patCodigo.toString()) });
73
+ }
74
+ /** It returns programa by id */
75
+ getProgramaById(id) {
76
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/programa/getById', {
77
+ params: new HttpParams().set('progCodigo', id.toString())
78
+ });
79
+ }
80
+ /** It saves a programa */
81
+ savePrograma(oldPrograma, programa) {
82
+ let object = {
83
+ pliProgramaBefore: oldPrograma,
84
+ pliPrograma: programa,
85
+ pliUsuario: { usuLogin: AuthenticationUtil.getUsername() }
86
+ };
87
+ return this.httpClient.post(this.environment.host.backend.plis + 'config/programa/save', object, this.headerJson);
88
+ }
89
+ /** It returns the list of programas by programa id */
90
+ getListPromocionesByprogCodigo(progCodigo) {
91
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/promocion/getAllByPrograma', { params: new HttpParams().set('progCodigo', progCodigo.toString()) });
92
+ }
93
+ /** It returns the list of programas by patrocinador id */
94
+ getListPromocionesBypatCodigo(patCodigo) {
95
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/promocion/getAllByPatrocinador', { params: new HttpParams().set('patCodigo', patCodigo.toString()) });
96
+ }
97
+ /** It returns the list of programas by patrocinador id and without configuracion */
98
+ getListPromocionesBypatCodigoWithoutConfiguracion(patCodigo) {
99
+ return this.httpClient.get(this.environment.host.backend.plis +
100
+ 'config/promocion/getByPatrocinador/withoutConfiguracion', { params: new HttpParams().set('patCodigo', patCodigo.toString()) });
101
+ }
102
+ /** It returns promocion by id */
103
+ getPromocionById(id) {
104
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/promocion/getById', { params: new HttpParams().set('promCodigo', id.toString()) });
105
+ }
106
+ /** It saves a promocion */
107
+ savePromocion(oldPromocion, promocion) {
108
+ let object = {
109
+ pliPromocionBefore: oldPromocion,
110
+ pliPromocion: promocion,
111
+ pliUsuario: { usuLogin: AuthenticationUtil.getUsername() }
112
+ };
113
+ return this.httpClient.post(this.environment.host.backend.plis + 'config/promocion/save', object, this.headerJson);
114
+ }
115
+ /** It returns a list of pliCnfConfiguracion by patCodigo */
116
+ getConfiguracionBypatCodigo(patCodigo, cargarListas) {
117
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/configuracion/getAllByPatrocinador', {
118
+ params: new HttpParams()
119
+ .set('patCodigo', patCodigo.toString())
120
+ .set('cargarListas', cargarListas.toString())
121
+ });
122
+ }
123
+ /** It returns configuracion by id */
124
+ getConfiguracionById(id, cargarListas) {
125
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/configuracion/getById', {
126
+ params: new HttpParams()
127
+ .set('cconCodigo', id.toString())
128
+ .set('cargarListas', cargarListas.toString())
129
+ });
130
+ }
131
+ /** It saves a configuracion */
132
+ saveConfiguracion(oldConfiguracion, configuracion) {
133
+ let object = {
134
+ pliCnfConfiguracionBefore: oldConfiguracion,
135
+ pliCnfConfiguracion: configuracion,
136
+ pliUsuario: { usuLogin: AuthenticationUtil.getUsername() }
137
+ };
138
+ return this.httpClient.post(this.environment.host.backend.plis + 'config/configuracion/save', object, this.headerJson);
139
+ }
140
+ /** It updates de code of configuracion to a list of codes of promocion */
141
+ updateConfiguracionPliPromocion(cconCodigo, listaPromCodigo) {
142
+ let object = {
143
+ cconCodigo: cconCodigo,
144
+ listaPromCodigo: listaPromCodigo
145
+ };
146
+ return this.httpClient.put(this.environment.host.backend.plis + 'config/promocion/updateConfigurationMassive', object, this.headerJson);
147
+ }
148
+ /** It has an observable to notify if the list ppp is generated*/
149
+ getListPpp() {
150
+ setTimeout(() => {
151
+ this.generate();
152
+ }, 300);
153
+ return this.subjectListPpp.asObservable();
154
+ }
155
+ /** It returns a list of available pliPromocion by patCodigo */
156
+ getAvailablePromocion(patCodigo) {
157
+ if (!patCodigo) {
158
+ patCodigo = 0;
159
+ }
160
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/promocion/getAvailableByPatCodigo', { params: new HttpParams().set('patCodigo', patCodigo.toString()) });
161
+ }
162
+ /** It returns a list of pliPromocion */
163
+ getAll() {
164
+ return this.httpClient.get(this.environment.host.backend.plis + 'config/promocion/getAll');
165
+ }
166
+ /** it returns list of patrocinador depends of token info*/
167
+ getlPatrocinadorByToken() {
168
+ let tokenPpp = localStorage.getItem(PppService.TOKEN_PPP);
169
+ if (tokenPpp && tokenPpp.length) {
170
+ const ppp = JwtUtil.parseJwt(tokenPpp);
171
+ if (ppp && ppp.ppp) {
172
+ let lPliPatrocinador = Array();
173
+ for (let pat of ppp.ppp) {
174
+ let pliPat = new PliPatrocinador();
175
+ pliPat.patCodigo = pat.patCodigo;
176
+ pliPat.patNombre = pat.patNombre;
177
+ pliPat.patNombreCorto = pat.patNombreCorto;
178
+ if (pat.listaPliPrograma && pat.listaPliPrograma.length > 0) {
179
+ pliPat.lPliPrograma = Array();
180
+ for (let prog of pat.listaPliPrograma) {
181
+ let pliProg = new PliPrograma();
182
+ pliProg.progCodigo = prog.progCodigo;
183
+ pliProg.progNombre = prog.progNombre;
184
+ pliProg.progNombreCorto = prog.progNombreCorto;
185
+ if (prog.listaPliPromocion && prog.listaPliPromocion.length > 0) {
186
+ pliProg.lPliPromocion = Array();
187
+ for (let prom of prog.listaPliPromocion) {
188
+ let pliProm = new PliPromocion();
189
+ pliProm.promCodigo = prom.promCodigo;
190
+ pliProm.promNombre = prom.promNombre;
191
+ pliProm.promNombreCorto = prom.promNombreCorto;
192
+ pliProm.promFechaCreacion = prom.promFechaCreacion;
193
+ pliProg.lPliPromocion.push(pliProm);
194
+ }
195
+ }
196
+ pliPat.lPliPrograma.push(pliProg);
197
+ }
198
+ }
199
+ lPliPatrocinador.push(pliPat);
200
+ }
201
+ return lPliPatrocinador;
202
+ }
203
+ }
204
+ return null;
205
+ }
206
+ getAllPromociones() {
207
+ let lPromociones = [];
208
+ let tokenPpp = localStorage.getItem(PppService.TOKEN_PPP);
209
+ if (tokenPpp && tokenPpp.length) {
210
+ const ppp = JwtUtil.parseJwt(tokenPpp);
211
+ if (ppp && ppp.ppp) {
212
+ for (let pat of ppp.ppp) {
213
+ let pliPat = new PliPatrocinador();
214
+ pliPat.patCodigo = pat.patCodigo;
215
+ pliPat.patNombre = pat.patNombre;
216
+ pliPat.patNombreCorto = pat.patNombreCorto;
217
+ if (pat.listaPliPrograma && pat.listaPliPrograma.length > 0) {
218
+ pliPat.lPliPrograma = Array();
219
+ for (let prog of pat.listaPliPrograma) {
220
+ let pliProg = new PliPrograma();
221
+ pliProg.progCodigo = prog.progCodigo;
222
+ pliProg.progNombre = prog.progNombre;
223
+ pliProg.progNombreCorto = prog.progNombreCorto;
224
+ if (prog.listaPliPromocion && prog.listaPliPromocion.length > 0) {
225
+ pliProg.lPliPromocion = Array();
226
+ for (let prom of prog.listaPliPromocion) {
227
+ let pliProm = new PliPromocion();
228
+ pliProm.promCodigo = prom.promCodigo;
229
+ pliProm.promNombre = prom.promNombre;
230
+ pliProm.promNombreCorto = prom.promNombreCorto;
231
+ pliProm.promFechaCreacion = prom.promFechaCreacion;
232
+ lPromociones.push(pliProm);
233
+ }
234
+ }
235
+ }
236
+ }
237
+ }
238
+ return lPromociones;
239
+ }
240
+ }
241
+ return null;
242
+ }
243
+ /** it returns the patcodigo by promCodigo */
244
+ getPatCodigoByPromCodigo(promCodigo) {
245
+ let tokenPpp = localStorage.getItem(PppService.TOKEN_PPP);
246
+ if (tokenPpp && tokenPpp.length) {
247
+ const ppp = JwtUtil.parseJwt(tokenPpp);
248
+ if (ppp && ppp.ppp)
249
+ for (const patrocinador of ppp.ppp)
250
+ for (const programa of patrocinador.listaPliPrograma)
251
+ for (const promocion of programa.listaPliPromocion)
252
+ if (promocion.promCodigo == promCodigo)
253
+ return patrocinador.patCodigo;
254
+ return undefined;
255
+ }
256
+ }
257
+ /** it returns the patcodigo by promCodigo */
258
+ getProgCodigoByPromCodigo(promCodigo) {
259
+ let tokenPpp = localStorage.getItem(PppService.TOKEN_PPP);
260
+ if (tokenPpp && tokenPpp.length) {
261
+ const ppp = JwtUtil.parseJwt(tokenPpp);
262
+ if (ppp && ppp.ppp)
263
+ for (const patrocinador of ppp.ppp)
264
+ for (const programa of patrocinador.listaPliPrograma)
265
+ for (const promocion of programa.listaPliPromocion)
266
+ if (promocion.promCodigo == promCodigo)
267
+ return programa.progCodigo;
268
+ return undefined;
269
+ }
270
+ }
271
+ /** It generated a light list of ppp */
272
+ generate() {
273
+ // 1. it verifies tokenPpp
274
+ let tokenPpp = localStorage.getItem(PppService.TOKEN_PPP);
275
+ if (tokenPpp && tokenPpp.length) {
276
+ const ppp = JwtUtil.parseJwt(tokenPpp);
277
+ if (ppp && ppp.ppp)
278
+ this.subjectListPpp.next(ppp.ppp);
279
+ }
280
+ else {
281
+ // 2. it retrieves the list ppp
282
+ let authorities = AuthenticationUtil.getAuthorities();
283
+ if (authorities && authorities.length > 0) {
284
+ let listPatCodigo = [];
285
+ for (const authority of authorities)
286
+ listPatCodigo.push(authority.patCodigo);
287
+ if (listPatCodigo)
288
+ this.httpClient
289
+ .get(this.environment.host.backend.plis +
290
+ 'config/patrocinador/getLightByListPatrocinador', { params: new HttpParams().set('patCodigos', listPatCodigo.toString()) })
291
+ .subscribe((result) => {
292
+ if (result && result.tokenPpp) {
293
+ localStorage.setItem(PppService.TOKEN_PPP, result.tokenPpp);
294
+ this.generate();
295
+ }
296
+ else {
297
+ this.subjectListPpp.next([]);
298
+ }
299
+ }, (error) => {
300
+ console.error('ERROR consulting ppp', error);
301
+ this.subjectListPpp.next([]);
302
+ });
303
+ }
304
+ }
305
+ }
306
+ /** it returns the PPP from the token */
307
+ getPPPInfoFromToken() {
308
+ let tokenPpp = localStorage.getItem(PppService.TOKEN_PPP);
309
+ const lPliPatrocinador = [];
310
+ if (tokenPpp && tokenPpp.length) {
311
+ const ppp = JwtUtil.parseJwt(tokenPpp);
312
+ if (ppp && ppp.ppp)
313
+ for (const patrocinador of ppp.ppp) {
314
+ const pliPatrocinador = new PliPatrocinador();
315
+ const lPliPrograma = [];
316
+ for (const programa of patrocinador.listaPliPrograma) {
317
+ const pliPrograma = new PliPrograma();
318
+ pliPrograma.progCodigo = programa.progCodigo;
319
+ pliPrograma.progNombreCorto = programa.progNombreCorto;
320
+ pliPrograma.progNombre = programa.progNombre;
321
+ const lPliPromocion = [];
322
+ for (const promocion of programa.listaPliPromocion) {
323
+ const pliPromocion = new PliPromocion();
324
+ pliPromocion.promCodigo = promocion.promCodigo;
325
+ pliPromocion.promNombreCorto = promocion.promNombreCorto;
326
+ pliPromocion.promNombre = promocion.promNombre;
327
+ pliPromocion.promAnio = promocion.promAnio;
328
+ lPliPromocion.push(pliPromocion);
329
+ }
330
+ pliPrograma.lPliPromocion = lPliPromocion;
331
+ lPliPrograma.push(pliPrograma);
332
+ }
333
+ pliPatrocinador.lPliPrograma = lPliPrograma;
334
+ lPliPatrocinador.push(pliPatrocinador);
335
+ }
336
+ }
337
+ return lPliPatrocinador;
338
+ }
339
+ pppRollback(pppRequest) {
340
+ return this.httpClient.post(this.environment.host.backend.configuration + 'pppRollback', pppRequest, this.headerJson);
341
+ }
342
+ deleteBudgetByProm(promCodigo) {
343
+ let object = {
344
+ promCodigo: promCodigo
345
+ };
346
+ return this.httpClient.post(this.environment.host.backend.plis + 'config/promocion/deleteBudgetByProm', object, this.headerJson);
347
+ }
348
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PppService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
349
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PppService, providedIn: 'root' }); }
350
+ }
351
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PppService, decorators: [{
352
+ type: Injectable,
353
+ args: [{
354
+ providedIn: 'root'
355
+ }]
356
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
357
+ type: Inject,
358
+ args: ['environment']
359
+ }] }, { type: i1.HttpClient }] });
360
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHBwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wbGktY29tbW9ucy9zcmMvbGliL3NlcnZpY2VzL3BwcC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBYyxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFjLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQ04sZUFBZSxFQUNmLFdBQVcsRUFDWCxZQUFZLEVBRVosT0FBTyxFQUNQLFVBQVUsRUFDVixrQkFBa0IsRUFFbEIsTUFBTSxhQUFhLENBQUM7OztBQUtyQixNQUFNLE9BQU8sVUFBVTtJQUd0QixnREFBZ0Q7YUFDekMsY0FBUyxHQUFHLFVBQVUsQUFBYixDQUFjO0lBUTlCLFlBQTJDLFdBQWdCLEVBQVUsVUFBc0I7UUFBaEQsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBWG5GLGVBQVUsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUsxRix5REFBeUQ7UUFDakQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFTLFNBQVMsQ0FBQyxDQUFDO1FBRTVELGdFQUFnRTtRQUN4RCxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFhLFNBQVMsQ0FBQyxDQUFDO0lBRTBCLENBQUM7SUFFL0YsNERBQTREO0lBQzVELFdBQVc7UUFDVixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELDBCQUEwQjtJQUMxQixNQUFNLENBQUMsR0FBVztRQUNqQixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1QsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQzlCLEdBQUcsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3JCLENBQUM7cUJBQU0sQ0FBQztvQkFDUCxHQUFHLEdBQUcsQ0FBQyxDQUFDO2dCQUNULENBQUM7WUFDRixDQUFDO2lCQUFNLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3BDLEdBQUcsR0FBRyxDQUFDLENBQUM7WUFDVCxDQUFDO1FBQ0YsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCx3Q0FBd0M7SUFDeEMsbUJBQW1CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsNEJBQTRCLENBQ2pFLENBQUM7SUFDSCxDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLG1CQUFtQixDQUFDLEVBQVU7UUFDN0IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyw2QkFBNkIsRUFDbEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQzVELENBQUM7SUFDSCxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLGdCQUFnQixDQUFDLGVBQWdDLEVBQUUsWUFBNkI7UUFDL0UsNERBQTREO1FBQzVELElBQUksTUFBTSxHQUFHO1lBQ1oscUJBQXFCLEVBQUUsZUFBZTtZQUN0QyxlQUFlLEVBQUUsWUFBWTtZQUM3QixVQUFVLEVBQUUsRUFBRSxRQUFRLEVBQUUsa0JBQWtCLENBQUMsV0FBVyxFQUFFLEVBQUU7U0FDMUQsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsMEJBQTBCLEVBQy9ELE1BQU0sRUFDTixJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQsK0NBQStDO0lBQy9DLHVCQUF1QjtRQUN0QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLGlDQUFpQyxDQUN0RSxDQUFDO0lBQ0gsQ0FBQztJQUVELDJDQUEyQztJQUMzQyxtQkFBbUI7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyw2QkFBNkIsQ0FDbEUsQ0FBQztJQUNILENBQUM7SUFFRCxvQ0FBb0M7SUFDcEMsU0FBUztRQUNSLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxhQUFhLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsMERBQTBEO0lBQzFELDJCQUEyQixDQUFDLFNBQWlCO1FBQzVDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsc0NBQXNDLEVBQzNFLEVBQUUsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUNuRSxDQUFDO0lBQ0gsQ0FBQztJQUVELGdDQUFnQztJQUNoQyxlQUFlLENBQUMsRUFBVTtRQUN6QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcseUJBQXlCLEVBQUU7WUFDMUYsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDekQsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELDBCQUEwQjtJQUMxQixZQUFZLENBQUMsV0FBd0IsRUFBRSxRQUFxQjtRQUMzRCxJQUFJLE1BQU0sR0FBRztZQUNaLGlCQUFpQixFQUFFLFdBQVc7WUFDOUIsV0FBVyxFQUFFLFFBQVE7WUFDckIsVUFBVSxFQUFFLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxFQUFFO1NBQzFELENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLHNCQUFzQixFQUMzRCxNQUFNLEVBQ04sSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELHNEQUFzRDtJQUN0RCw4QkFBOEIsQ0FBQyxVQUFrQjtRQUNoRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLG1DQUFtQyxFQUN4RSxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FDckUsQ0FBQztJQUNILENBQUM7SUFFRCwwREFBMEQ7SUFDMUQsNkJBQTZCLENBQUMsU0FBaUI7UUFDOUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyx1Q0FBdUMsRUFDNUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ25FLENBQUM7SUFDSCxDQUFDO0lBRUQsb0ZBQW9GO0lBQ3BGLGlEQUFpRCxDQUFDLFNBQWlCO1FBQ2xFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJO1lBQ2pDLHlEQUF5RCxFQUMxRCxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FDbkUsQ0FBQztJQUNILENBQUM7SUFFRCxpQ0FBaUM7SUFDakMsZ0JBQWdCLENBQUMsRUFBVTtRQUMxQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLDBCQUEwQixFQUMvRCxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FDN0QsQ0FBQztJQUNILENBQUM7SUFFRCwyQkFBMkI7SUFDM0IsYUFBYSxDQUFDLFlBQTBCLEVBQUUsU0FBdUI7UUFDaEUsSUFBSSxNQUFNLEdBQUc7WUFDWixrQkFBa0IsRUFBRSxZQUFZO1lBQ2hDLFlBQVksRUFBRSxTQUFTO1lBQ3ZCLFVBQVUsRUFBRSxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsRUFBRTtTQUMxRCxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyx1QkFBdUIsRUFDNUQsTUFBTSxFQUNOLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCw0REFBNEQ7SUFDNUQsMkJBQTJCLENBQUMsU0FBaUIsRUFBRSxZQUFxQjtRQUNuRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLDJDQUEyQyxFQUNoRjtZQUNDLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRTtpQkFDdEIsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7aUJBQ3RDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQzlDLENBQ0QsQ0FBQztJQUNILENBQUM7SUFFRCxxQ0FBcUM7SUFDckMsb0JBQW9CLENBQUMsRUFBVSxFQUFFLFlBQXFCO1FBQ3JELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsOEJBQThCLEVBQ25FO1lBQ0MsTUFBTSxFQUFFLElBQUksVUFBVSxFQUFFO2lCQUN0QixHQUFHLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDaEMsR0FBRyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDOUMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVELCtCQUErQjtJQUMvQixpQkFBaUIsQ0FBQyxnQkFBcUMsRUFBRSxhQUFrQztRQUMxRixJQUFJLE1BQU0sR0FBRztZQUNaLHlCQUF5QixFQUFFLGdCQUFnQjtZQUMzQyxtQkFBbUIsRUFBRSxhQUFhO1lBQ2xDLFVBQVUsRUFBRSxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsRUFBRTtTQUMxRCxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRywyQkFBMkIsRUFDaEUsTUFBTSxFQUNOLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCwwRUFBMEU7SUFDMUUsK0JBQStCLENBQUMsVUFBa0IsRUFBRSxlQUE4QjtRQUNqRixJQUFJLE1BQU0sR0FBRztZQUNaLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLGVBQWUsRUFBRSxlQUFlO1NBQ2hDLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLDZDQUE2QyxFQUNsRixNQUFNLEVBQ04sSUFBSSxDQUFDLFVBQVUsQ0FDZixDQUFDO0lBQ0gsQ0FBQztJQUVELGlFQUFpRTtJQUNqRSxVQUFVO1FBQ1QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNmLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDUixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELCtEQUErRDtJQUMvRCxxQkFBcUIsQ0FBQyxTQUFpQjtRQUN0QyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDaEIsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNmLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLDBDQUEwQyxFQUMvRSxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FDbkUsQ0FBQztJQUNILENBQUM7SUFFRCx3Q0FBd0M7SUFDeEMsTUFBTTtRQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsdUJBQXVCO1FBQ3RCLElBQUksUUFBUSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFELElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNqQyxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxnQkFBZ0IsR0FBRyxLQUFLLEVBQW1CLENBQUM7Z0JBQ2hELEtBQUssSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUN6QixJQUFJLE1BQU0sR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO29CQUNuQyxNQUFNLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7b0JBQ2pDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQztvQkFDakMsTUFBTSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDO29CQUMzQyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUM3RCxNQUFNLENBQUMsWUFBWSxHQUFHLEtBQUssRUFBZSxDQUFDO3dCQUMzQyxLQUFLLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDOzRCQUN2QyxJQUFJLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDOzRCQUNoQyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7NEJBQ3JDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQzs0QkFDckMsT0FBTyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDOzRCQUMvQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dDQUNqRSxPQUFPLENBQUMsYUFBYSxHQUFHLEtBQUssRUFBZ0IsQ0FBQztnQ0FDOUMsS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztvQ0FDekMsSUFBSSxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztvQ0FDakMsT0FBTyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO29DQUNyQyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7b0NBQ3JDLE9BQU8sQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztvQ0FDL0MsT0FBTyxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztvQ0FDbkQsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7Z0NBQ3JDLENBQUM7NEJBQ0YsQ0FBQzs0QkFDRCxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzt3QkFDbkMsQ0FBQztvQkFDRixDQUFDO29CQUNELGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDL0IsQ0FBQztnQkFDRCxPQUFPLGdCQUFnQixDQUFDO1lBQ3pCLENBQUM7UUFDRixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDYixDQUFDO0lBRUQsaUJBQWlCO1FBQ2hCLElBQUksWUFBWSxHQUFtQixFQUFFLENBQUM7UUFDdEMsSUFBSSxRQUFRLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUQsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUNwQixLQUFLLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDekIsSUFBSSxNQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztvQkFDbkMsTUFBTSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDO29CQUNqQyxNQUFNLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7b0JBQ2pDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQztvQkFDM0MsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQzt3QkFDN0QsTUFBTSxDQUFDLFlBQVksR0FBRyxLQUFLLEVBQWUsQ0FBQzt3QkFDM0MsS0FBSyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQzs0QkFDdkMsSUFBSSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQzs0QkFDaEMsT0FBTyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDOzRCQUNyQyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7NEJBQ3JDLE9BQU8sQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQzs0QkFDL0MsSUFBSSxJQUFJLENBQUMsaUJBQWlCLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQ0FDakUsT0FBTyxDQUFDLGFBQWEsR0FBRyxLQUFLLEVBQWdCLENBQUM7Z0NBQzlDLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7b0NBQ3pDLElBQUksT0FBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7b0NBQ2pDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztvQ0FDckMsT0FBTyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO29DQUNyQyxPQUFPLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7b0NBQy9DLE9BQU8sQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7b0NBQ25ELFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7Z0NBQzVCLENBQUM7NEJBQ0YsQ0FBQzt3QkFDRixDQUFDO29CQUNGLENBQUM7Z0JBQ0YsQ0FBQztnQkFDRCxPQUFPLFlBQVksQ0FBQztZQUNyQixDQUFDO1FBQ0YsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2IsQ0FBQztJQUVELDZDQUE2QztJQUM3Qyx3QkFBd0IsQ0FBQyxVQUFVO1FBQ2xDLElBQUksUUFBUSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFELElBQUksUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNqQyxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHO2dCQUNqQixLQUFLLE1BQU0sWUFBWSxJQUFJLEdBQUcsQ0FBQyxHQUFHO29CQUNqQyxLQUFLLE1BQU0sUUFBUSxJQUFJLFlBQVksQ0FBQyxnQkFBZ0I7d0JBQ25ELEtBQUssTUFBTSxTQUFTLElBQUksUUFBUSxDQUFDLGlCQUFpQjs0QkFDakQsSUFBSSxTQUFTLENBQUMsVUFBVSxJQUFJLFVBQVU7Z0NBQUUsT0FBTyxZQUFZLENBQUMsU0FBUyxDQUFDO1lBQzFFLE9BQU8sU0FBUyxDQUFDO1FBQ2xCLENBQUM7SUFDRixDQUFDO0lBRUQsNkNBQTZDO0lBQzdDLHlCQUF5QixDQUFDLFVBQVU7UUFDbkMsSUFBSSxRQUFRLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUQsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUc7Z0JBQ2pCLEtBQUssTUFBTSxZQUFZLElBQUksR0FBRyxDQUFDLEdBQUc7b0JBQ2pDLEtBQUssTUFBTSxRQUFRLElBQUksWUFBWSxDQUFDLGdCQUFnQjt3QkFDbkQsS0FBSyxNQUFNLFNBQVMsSUFBSSxRQUFRLENBQUMsaUJBQWlCOzRCQUNqRCxJQUFJLFNBQVMsQ0FBQyxVQUFVLElBQUksVUFBVTtnQ0FBRSxPQUFPLFFBQVEsQ0FBQyxVQUFVLENBQUM7WUFDdkUsT0FBTyxTQUFTLENBQUM7UUFDbEIsQ0FBQztJQUNGLENBQUM7SUFDRCx1Q0FBdUM7SUFDL0IsUUFBUTtRQUNmLDBCQUEwQjtRQUMxQixJQUFJLFFBQVEsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxRCxJQUFJLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakMsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2QyxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRztnQkFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkQsQ0FBQzthQUFNLENBQUM7WUFDUCwrQkFBK0I7WUFDL0IsSUFBSSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdEQsSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDM0MsSUFBSSxhQUFhLEdBQUcsRUFBRSxDQUFDO2dCQUN2QixLQUFLLE1BQU0sU0FBUyxJQUFJLFdBQVc7b0JBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBRTdFLElBQUksYUFBYTtvQkFDaEIsSUFBSSxDQUFDLFVBQVU7eUJBQ2IsR0FBRyxDQUNILElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJO3dCQUNqQyxnREFBZ0QsRUFDakQsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ3hFO3lCQUNBLFNBQVMsQ0FDVCxDQUFDLE1BQVcsRUFBRSxFQUFFO3dCQUNmLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQzs0QkFDL0IsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQzs0QkFDNUQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO3dCQUNqQixDQUFDOzZCQUFNLENBQUM7NEJBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQzlCLENBQUM7b0JBQ0YsQ0FBQyxFQUNELENBQUMsS0FBSyxFQUFFLEVBQUU7d0JBQ1QsT0FBTyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FBQzt3QkFDN0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQzlCLENBQUMsQ0FDRCxDQUFDO1lBQ0wsQ0FBQztRQUNGLENBQUM7SUFDRixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLG1CQUFtQjtRQUNsQixJQUFJLFFBQVEsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxRCxNQUFNLGdCQUFnQixHQUFzQixFQUFFLENBQUM7UUFDL0MsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUc7Z0JBQ2pCLEtBQUssTUFBTSxZQUFZLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUNwQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO29CQUM5QyxNQUFNLFlBQVksR0FBa0IsRUFBRSxDQUFDO29CQUN2QyxLQUFLLE1BQU0sUUFBUSxJQUFJLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO3dCQUN0RCxNQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO3dCQUN0QyxXQUFXLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7d0JBQzdDLFdBQVcsQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQzt3QkFDdkQsV0FBVyxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO3dCQUM3QyxNQUFNLGFBQWEsR0FBbUIsRUFBRSxDQUFDO3dCQUN6QyxLQUFLLE1BQU0sU0FBUyxJQUFJLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDOzRCQUNwRCxNQUFNLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDOzRCQUN4QyxZQUFZLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUM7NEJBQy9DLFlBQVksQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FBQzs0QkFDekQsWUFBWSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDOzRCQUMvQyxZQUFZLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUM7NEJBQzNDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7d0JBQ2xDLENBQUM7d0JBQ0QsV0FBVyxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7d0JBQzFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQ2hDLENBQUM7b0JBQ0QsZUFBZSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7b0JBQzVDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDeEMsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLGdCQUFnQixDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsVUFBc0I7UUFFakMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxhQUFhLEVBQzNELFVBQVUsRUFDVixJQUFJLENBQUMsVUFBVSxDQUNmLENBQUM7SUFDSCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsVUFBa0I7UUFDcEMsSUFBSSxNQUFNLEdBQUc7WUFDWixVQUFVLEVBQUUsVUFBVTtTQUN0QixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxxQ0FBcUMsRUFDMUUsTUFBTSxFQUNOLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7K0dBaGJXLFVBQVUsa0JBWUYsYUFBYTttSEFackIsVUFBVSxjQUZWLE1BQU07OzRGQUVOLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFhYSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcywgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHtcclxuXHRQbGlQYXRyb2NpbmFkb3IsXHJcblx0UGxpUHJvZ3JhbWEsXHJcblx0UGxpUHJvbW9jaW9uLFxyXG5cdFBsaUNuZkNvbmZpZ3VyYWNpb24sXHJcblx0Snd0VXRpbCxcclxuXHROdW1iZXJVdGlsLFxyXG5cdEF1dGhlbnRpY2F0aW9uVXRpbCxcclxuXHRQcHBSZXF1ZXN0XHJcbn0gZnJvbSAnbmctcGxpLXV0aWwnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUHBwU2VydmljZSB7XHJcblx0cHJpdmF0ZSBoZWFkZXJKc29uID0geyBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0pIH07XHJcblxyXG5cdC8qKiBJdCBjb250YWlucyB0aGUga2V5IG9mIHRoZSBqc29uIHdlYiB0b2tlbiAqL1xyXG5cdHN0YXRpYyBUT0tFTl9QUFAgPSAndG9rZW5QcHAnO1xyXG5cclxuXHQvKiogVGhpcyBvYnNlcnZhYmxlIGFsbG93cyB0byB2ZXJpZnkgaWYgcHBwIGlzIGNyZWF0ZWQgKi9cclxuXHRwcml2YXRlIHN1YmplY3RQcHAgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4odW5kZWZpbmVkKTtcclxuXHJcblx0LyoqIFRoaXMgb2JzZXJ2YWJsZSBhbGxvd3MgdG8gdmVyaWZ5IGlmIGxpc3QgcHBwIGlzIGdlbmVyYXRlZCAqL1xyXG5cdHByaXZhdGUgc3ViamVjdExpc3RQcHAgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFycmF5PGFueT4+KHVuZGVmaW5lZCk7XHJcblxyXG5cdGNvbnN0cnVjdG9yKEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55LCBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHt9XHJcblxyXG5cdC8qKiAgSXQgaGFzIGFuIG9ic2VydmFibGUgdG8gbm90aWZ5IGlmIHRoZSBwcHAgaXMgY2hhbmdlZCAqL1xyXG5cdG9uQ2hhbmdlUHBwKCk6IE9ic2VydmFibGU8bnVtYmVyPiB7XHJcblx0XHRyZXR1cm4gdGhpcy5zdWJqZWN0UHBwLmFzT2JzZXJ2YWJsZSgpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHNldHMgdGhlIG5ldyBwcHAgKi9cclxuXHRzZXRQcHAocHBwOiBudW1iZXIpIHtcclxuXHRcdGlmIChwcHApIHtcclxuXHRcdFx0aWYgKHR5cGVvZiBwcHAgPT09ICdzdHJpbmcnKSB7XHJcblx0XHRcdFx0aWYgKE51bWJlclV0aWwuaXNOdW1iZXIocHBwKSkge1xyXG5cdFx0XHRcdFx0cHBwID0gcGFyc2VJbnQocHBwKTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0cHBwID0gMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0gZWxzZSBpZiAodHlwZW9mIHBwcCAhPT0gJ251bWJlcicpIHtcclxuXHRcdFx0XHRwcHAgPSAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHR0aGlzLnN1YmplY3RQcHAubmV4dChwcHApO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgYSBsaXN0IG9mIHBhdHJvY2luYWRvciAqL1xyXG5cdGdldExpc3RQYXRyb2NpbmFkb3IoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvcGF0cm9jaW5hZG9yL2dldEFsbCdcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhIHBhdHJvY2luYWRvciBieSBpZCAqL1xyXG5cdGdldFBhdHJvY2luYWRvckJ5SWQoaWQ6IG51bWJlcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3BhdHJvY2luYWRvci9nZXRCeUlkJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwYXRDb2RpZ28nLCBpZC50b1N0cmluZygpKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHNhdmVzIGEgcGF0cm9jaW5hZG9yICovXHJcblx0c2F2ZVBhdHJvY2luYWRvcihvbGRQYXRyb2NpbmFkb3I6IFBsaVBhdHJvY2luYWRvciwgcGF0cm9jaW5hZG9yOiBQbGlQYXRyb2NpbmFkb3IpIHtcclxuXHRcdC8vcGxpVXN1YXJpbzoge3VzdUxvZ2luIDogQXV0aGVudGljYXRpb25VdGlsLmdldFVzZXJuYW1lKCl9O1xyXG5cdFx0bGV0IG9iamVjdCA9IHtcclxuXHRcdFx0cGxpUGF0cm9jaW5hZG9yQmVmb3JlOiBvbGRQYXRyb2NpbmFkb3IsXHJcblx0XHRcdHBsaVBhdHJvY2luYWRvcjogcGF0cm9jaW5hZG9yLFxyXG5cdFx0XHRwbGlVc3VhcmlvOiB7IHVzdUxvZ2luOiBBdXRoZW50aWNhdGlvblV0aWwuZ2V0VXNlcm5hbWUoKSB9XHJcblx0XHR9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5wbGlzICsgJ2NvbmZpZy9wYXRyb2NpbmFkb3Ivc2F2ZScsXHJcblx0XHRcdG9iamVjdCxcclxuXHRcdFx0dGhpcy5oZWFkZXJKc29uXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgdGlwbyBwYXRyb2NpbmFkb3IgKi9cclxuXHRnZXRMaXN0VGlwb1BhdHJvY2luYWRvcigpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5wbGlzICsgJ2NvbmZpZy90aXBvLXBhdHJvY2luYWRvci9nZXRBbGwnXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgdGlwbyBwcm9ncmFtYSAqL1xyXG5cdGdldExpc3RUaXBvUHJvZ3JhbWEoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvdGlwby1wcm9ncmFtYS9nZXRBbGwnXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgcGFpc2VzICovXHJcblx0Z2V0UGFpc2VzKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdwYWlzL2dldEFsbCcpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgdGhlIGxpc3Qgb2YgcHJvZ3JhbWFzIGJ5IHBhdHJvY2luYWRvciBpZCAqL1xyXG5cdGdldExpc3RQcm9ncmFtYXNCeXBhdENvZGlnbyhwYXRDb2RpZ286IG51bWJlcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3Byb2dyYW1hL2dldEFsbEJ5UGF0cm9jaW5hZG9yJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwYXRDb2RpZ28nLCBwYXRDb2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHByb2dyYW1hIGJ5IGlkICovXHJcblx0Z2V0UHJvZ3JhbWFCeUlkKGlkOiBudW1iZXIpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3Byb2dyYW1hL2dldEJ5SWQnLCB7XHJcblx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3Byb2dDb2RpZ28nLCBpZC50b1N0cmluZygpKVxyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgc2F2ZXMgYSBwcm9ncmFtYSAqL1xyXG5cdHNhdmVQcm9ncmFtYShvbGRQcm9ncmFtYTogUGxpUHJvZ3JhbWEsIHByb2dyYW1hOiBQbGlQcm9ncmFtYSkge1xyXG5cdFx0bGV0IG9iamVjdCA9IHtcclxuXHRcdFx0cGxpUHJvZ3JhbWFCZWZvcmU6IG9sZFByb2dyYW1hLFxyXG5cdFx0XHRwbGlQcm9ncmFtYTogcHJvZ3JhbWEsXHJcblx0XHRcdHBsaVVzdWFyaW86IHsgdXN1TG9naW46IEF1dGhlbnRpY2F0aW9uVXRpbC5nZXRVc2VybmFtZSgpIH1cclxuXHRcdH07XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3Byb2dyYW1hL3NhdmUnLFxyXG5cdFx0XHRvYmplY3QsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBsaXN0IG9mIHByb2dyYW1hcyBieSBwcm9ncmFtYSBpZCAqL1xyXG5cdGdldExpc3RQcm9tb2Npb25lc0J5cHJvZ0NvZGlnbyhwcm9nQ29kaWdvOiBudW1iZXIpIHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5wbGlzICsgJ2NvbmZpZy9wcm9tb2Npb24vZ2V0QWxsQnlQcm9ncmFtYScsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncHJvZ0NvZGlnbycsIHByb2dDb2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBsaXN0IG9mIHByb2dyYW1hcyBieSBwYXRyb2NpbmFkb3IgaWQgKi9cclxuXHRnZXRMaXN0UHJvbW9jaW9uZXNCeXBhdENvZGlnbyhwYXRDb2RpZ286IG51bWJlcikge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3Byb21vY2lvbi9nZXRBbGxCeVBhdHJvY2luYWRvcicsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncGF0Q29kaWdvJywgcGF0Q29kaWdvLnRvU3RyaW5nKCkpIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgbGlzdCBvZiBwcm9ncmFtYXMgYnkgcGF0cm9jaW5hZG9yIGlkIGFuZCB3aXRob3V0IGNvbmZpZ3VyYWNpb24gKi9cclxuXHRnZXRMaXN0UHJvbW9jaW9uZXNCeXBhdENvZGlnb1dpdGhvdXRDb25maWd1cmFjaW9uKHBhdENvZGlnbzogbnVtYmVyKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArXHJcblx0XHRcdFx0J2NvbmZpZy9wcm9tb2Npb24vZ2V0QnlQYXRyb2NpbmFkb3Ivd2l0aG91dENvbmZpZ3VyYWNpb24nLFxyXG5cdFx0XHR7IHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3BhdENvZGlnbycsIHBhdENvZGlnby50b1N0cmluZygpKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgcHJvbW9jaW9uIGJ5IGlkICovXHJcblx0Z2V0UHJvbW9jaW9uQnlJZChpZDogbnVtYmVyKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvcHJvbW9jaW9uL2dldEJ5SWQnLFxyXG5cdFx0XHR7IHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ3Byb21Db2RpZ28nLCBpZC50b1N0cmluZygpKSB9XHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHNhdmVzIGEgcHJvbW9jaW9uICovXHJcblx0c2F2ZVByb21vY2lvbihvbGRQcm9tb2Npb246IFBsaVByb21vY2lvbiwgcHJvbW9jaW9uOiBQbGlQcm9tb2Npb24pIHtcclxuXHRcdGxldCBvYmplY3QgPSB7XHJcblx0XHRcdHBsaVByb21vY2lvbkJlZm9yZTogb2xkUHJvbW9jaW9uLFxyXG5cdFx0XHRwbGlQcm9tb2Npb246IHByb21vY2lvbixcclxuXHRcdFx0cGxpVXN1YXJpbzogeyB1c3VMb2dpbjogQXV0aGVudGljYXRpb25VdGlsLmdldFVzZXJuYW1lKCkgfVxyXG5cdFx0fTtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvcHJvbW9jaW9uL3NhdmUnLFxyXG5cdFx0XHRvYmplY3QsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIGEgbGlzdCBvZiBwbGlDbmZDb25maWd1cmFjaW9uIGJ5IHBhdENvZGlnbyAqL1xyXG5cdGdldENvbmZpZ3VyYWNpb25CeXBhdENvZGlnbyhwYXRDb2RpZ286IG51bWJlciwgY2FyZ2FyTGlzdGFzOiBib29sZWFuKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvY29uZmlndXJhY2lvbi9nZXRBbGxCeVBhdHJvY2luYWRvcicsXHJcblx0XHRcdHtcclxuXHRcdFx0XHRwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKClcclxuXHRcdFx0XHRcdC5zZXQoJ3BhdENvZGlnbycsIHBhdENvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnY2FyZ2FyTGlzdGFzJywgY2FyZ2FyTGlzdGFzLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBjb25maWd1cmFjaW9uIGJ5IGlkICovXHJcblx0Z2V0Q29uZmlndXJhY2lvbkJ5SWQoaWQ6IG51bWJlciwgY2FyZ2FyTGlzdGFzOiBib29sZWFuKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvY29uZmlndXJhY2lvbi9nZXRCeUlkJyxcclxuXHRcdFx0e1xyXG5cdFx0XHRcdHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKVxyXG5cdFx0XHRcdFx0LnNldCgnY2NvbkNvZGlnbycsIGlkLnRvU3RyaW5nKCkpXHJcblx0XHRcdFx0XHQuc2V0KCdjYXJnYXJMaXN0YXMnLCBjYXJnYXJMaXN0YXMudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCBzYXZlcyBhIGNvbmZpZ3VyYWNpb24gKi9cclxuXHRzYXZlQ29uZmlndXJhY2lvbihvbGRDb25maWd1cmFjaW9uOiBQbGlDbmZDb25maWd1cmFjaW9uLCBjb25maWd1cmFjaW9uOiBQbGlDbmZDb25maWd1cmFjaW9uKSB7XHJcblx0XHRsZXQgb2JqZWN0ID0ge1xyXG5cdFx0XHRwbGlDbmZDb25maWd1cmFjaW9uQmVmb3JlOiBvbGRDb25maWd1cmFjaW9uLFxyXG5cdFx0XHRwbGlDbmZDb25maWd1cmFjaW9uOiBjb25maWd1cmFjaW9uLFxyXG5cdFx0XHRwbGlVc3VhcmlvOiB7IHVzdUxvZ2luOiBBdXRoZW50aWNhdGlvblV0aWwuZ2V0VXNlcm5hbWUoKSB9XHJcblx0XHR9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5wbGlzICsgJ2NvbmZpZy9jb25maWd1cmFjaW9uL3NhdmUnLFxyXG5cdFx0XHRvYmplY3QsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCB1cGRhdGVzIGRlIGNvZGUgb2YgY29uZmlndXJhY2lvbiB0byBhIGxpc3Qgb2YgY29kZXMgb2YgcHJvbW9jaW9uICovXHJcblx0dXBkYXRlQ29uZmlndXJhY2lvblBsaVByb21vY2lvbihjY29uQ29kaWdvOiBudW1iZXIsIGxpc3RhUHJvbUNvZGlnbzogQXJyYXk8bnVtYmVyPikge1xyXG5cdFx0bGV0IG9iamVjdCA9IHtcclxuXHRcdFx0Y2NvbkNvZGlnbzogY2NvbkNvZGlnbyxcclxuXHRcdFx0bGlzdGFQcm9tQ29kaWdvOiBsaXN0YVByb21Db2RpZ29cclxuXHRcdH07XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnB1dChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvcHJvbW9jaW9uL3VwZGF0ZUNvbmZpZ3VyYXRpb25NYXNzaXZlJyxcclxuXHRcdFx0b2JqZWN0LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgaGFzIGFuIG9ic2VydmFibGUgdG8gbm90aWZ5IGlmIHRoZSBsaXN0IHBwcCBpcyBnZW5lcmF0ZWQqL1xyXG5cdGdldExpc3RQcHAoKTogT2JzZXJ2YWJsZTxBcnJheTxhbnk+PiB7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5nZW5lcmF0ZSgpO1xyXG5cdFx0fSwgMzAwKTtcclxuXHRcdHJldHVybiB0aGlzLnN1YmplY3RMaXN0UHBwLmFzT2JzZXJ2YWJsZSgpO1xyXG5cdH1cclxuXHJcblx0LyoqIEl0IHJldHVybnMgYSBsaXN0IG9mIGF2YWlsYWJsZSBwbGlQcm9tb2Npb24gYnkgcGF0Q29kaWdvICovXHJcblx0Z2V0QXZhaWxhYmxlUHJvbW9jaW9uKHBhdENvZGlnbzogbnVtYmVyKSB7XHJcblx0XHRpZiAoIXBhdENvZGlnbykge1xyXG5cdFx0XHRwYXRDb2RpZ28gPSAwO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLnBsaXMgKyAnY29uZmlnL3Byb21vY2lvbi9nZXRBdmFpbGFibGVCeVBhdENvZGlnbycsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgncGF0Q29kaWdvJywgcGF0Q29kaWdvLnRvU3RyaW5nKCkpIH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyBhIGxpc3Qgb2YgcGxpUHJvbW9jaW9uICovXHJcblx0Z2V0QWxsKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArICdjb25maWcvcHJvbW9jaW9uL2dldEFsbCcpO1xyXG5cdH1cclxuXHJcblx0LyoqIGl0IHJldHVybnMgbGlzdCBvZiBwYXRyb2NpbmFkb3IgZGVwZW5kcyBvZiB0b2tlbiBpbmZvKi9cclxuXHRnZXRsUGF0cm9jaW5hZG9yQnlUb2tlbigpOiBQbGlQYXRyb2NpbmFkb3JbXSB7XHJcblx0XHRsZXQgdG9rZW5QcHAgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShQcHBTZXJ2aWNlLlRPS0VOX1BQUCk7XHJcblx0XHRpZiAodG9rZW5QcHAgJiYgdG9rZW5QcHAubGVuZ3RoKSB7XHJcblx0XHRcdGNvbnN0IHBwcCA9IEp3dFV0aWwucGFyc2VKd3QodG9rZW5QcHApO1xyXG5cdFx0XHRpZiAocHBwICYmIHBwcC5wcHApIHtcclxuXHRcdFx0XHRsZXQgbFBsaVBhdHJvY2luYWRvciA9IEFycmF5PFBsaVBhdHJvY2luYWRvcj4oKTtcclxuXHRcdFx0XHRmb3IgKGxldCBwYXQgb2YgcHBwLnBwcCkge1xyXG5cdFx0XHRcdFx0bGV0IHBsaVBhdCA9IG5ldyBQbGlQYXRyb2NpbmFkb3IoKTtcclxuXHRcdFx0XHRcdHBsaVBhdC5wYXRDb2RpZ28gPSBwYXQucGF0Q29kaWdvO1xyXG5cdFx0XHRcdFx0cGxpUGF0LnBhdE5vbWJyZSA9IHBhdC5wYXROb21icmU7XHJcblx0XHRcdFx0XHRwbGlQYXQucGF0Tm9tYnJlQ29ydG8gPSBwYXQucGF0Tm9tYnJlQ29ydG87XHJcblx0XHRcdFx0XHRpZiAocGF0Lmxpc3RhUGxpUHJvZ3JhbWEgJiYgcGF0Lmxpc3RhUGxpUHJvZ3JhbWEubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdFx0XHRwbGlQYXQubFBsaVByb2dyYW1hID0gQXJyYXk8UGxpUHJvZ3JhbWE+KCk7XHJcblx0XHRcdFx0XHRcdGZvciAobGV0IHByb2cgb2YgcGF0Lmxpc3RhUGxpUHJvZ3JhbWEpIHtcclxuXHRcdFx0XHRcdFx0XHRsZXQgcGxpUHJvZyA9IG5ldyBQbGlQcm9ncmFtYSgpO1xyXG5cdFx0XHRcdFx0XHRcdHBsaVByb2cucHJvZ0NvZGlnbyA9IHByb2cucHJvZ0NvZGlnbztcclxuXHRcdFx0XHRcdFx0XHRwbGlQcm9nLnByb2dOb21icmUgPSBwcm9nLnByb2dOb21icmU7XHJcblx0XHRcdFx0XHRcdFx0cGxpUHJvZy5wcm9nTm9tYnJlQ29ydG8gPSBwcm9nLnByb2dOb21icmVDb3J0bztcclxuXHRcdFx0XHRcdFx0XHRpZiAocHJvZy5saXN0YVBsaVByb21vY2lvbiAmJiBwcm9nLmxpc3RhUGxpUHJvbW9jaW9uLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0XHRcdFx0XHRcdHBsaVByb2cubFBsaVByb21vY2lvbiA9IEFycmF5PFBsaVByb21vY2lvbj4oKTtcclxuXHRcdFx0XHRcdFx0XHRcdGZvciAobGV0IHByb20gb2YgcHJvZy5saXN0YVBsaVByb21vY2lvbikge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRsZXQgcGxpUHJvbSA9IG5ldyBQbGlQcm9tb2Npb24oKTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGxpUHJvbS5wcm9tQ29kaWdvID0gcHJvbS5wcm9tQ29kaWdvO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRwbGlQcm9tLnByb21Ob21icmUgPSBwcm9tLnByb21Ob21icmU7XHJcblx0XHRcdFx0XHRcdFx0XHRcdHBsaVByb20ucHJvbU5vbWJyZUNvcnRvID0gcHJvbS5wcm9tTm9tYnJlQ29ydG87XHJcblx0XHRcdFx0XHRcdFx0XHRcdHBsaVByb20ucHJvbUZlY2hhQ3JlYWNpb24gPSBwcm9tLnByb21GZWNoYUNyZWFjaW9uO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRwbGlQcm9nLmxQbGlQcm9tb2Npb24ucHVzaChwbGlQcm9tKTtcclxuXHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0cGxpUGF0LmxQbGlQcm9ncmFtYS5wdXNoKHBsaVByb2cpO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRsUGxpUGF0cm9jaW5hZG9yLnB1c2gocGxpUGF0KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIGxQbGlQYXRyb2NpbmFkb3I7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdHJldHVybiBudWxsO1xyXG5cdH1cclxuXHJcblx0Z2V0QWxsUHJvbW9jaW9uZXMoKTogUGxpUHJvbW9jaW9uW10ge1xyXG5cdFx0bGV0IGxQcm9tb2Npb25lczogUGxpUHJvbW9jaW9uW10gPSBbXTtcclxuXHRcdGxldCB0b2tlblBwcCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFBwcFNlcnZpY2UuVE9LRU5fUFBQKTtcclxuXHRcdGlmICh0b2tlblBwcCAmJiB0b2tlblBwcC5sZW5ndGgpIHtcclxuXHRcdFx0Y29uc3QgcHBwID0gSnd0VXRpbC5wYXJzZUp3dCh0b2tlblBwcCk7XHJcblx0XHRcdGlmIChwcHAgJiYgcHBwLnBwcCkge1xyXG5cdFx0XHRcdGZvciAobGV0IHBhdCBvZiBwcHAucHBwKSB7XHJcblx0XHRcdFx0XHRsZXQgcGxpUGF0ID0gbmV3IFBsaVBhdHJvY2luYWRvcigpO1xyXG5cdFx0XHRcdFx0cGxpUGF0LnBhdENvZGlnbyA9IHBhdC5wYXRDb2RpZ287XHJcblx0XHRcdFx0XHRwbGlQYXQucGF0Tm9tYnJlID0gcGF0LnBhdE5vbWJyZTtcclxuXHRcdFx0XHRcdHBsaVBhdC5wYXROb21icmVDb3J0byA9IHBhdC5wYXROb21icmVDb3J0bztcclxuXHRcdFx0XHRcdGlmIChwYXQubGlzdGFQbGlQcm9ncmFtYSAmJiBwYXQubGlzdGFQbGlQcm9ncmFtYS5sZW5ndGggPiAwKSB7XHJcblx0XHRcdFx0XHRcdHBsaVBhdC5sUGxpUHJvZ3JhbWEgPSBBcnJheTxQbGlQcm9ncmFtYT4oKTtcclxuXHRcdFx0XHRcdFx0Zm9yIChsZXQgcHJvZyBvZiBwYXQubGlzdGFQbGlQcm9ncmFtYSkge1xyXG5cdFx0XHRcdFx0XHRcdGxldCBwbGlQcm9nID0gbmV3IFBsaVByb2dyYW1hKCk7XHJcblx0XHRcdFx0XHRcdFx0cGxpUHJvZy5wcm9nQ29kaWdvID0gcHJvZy5wcm9nQ29kaWdvO1xyXG5cdFx0XHRcdFx0XHRcdHBsaVByb2cucHJvZ05vbWJyZSA9IHByb2cucHJvZ05vbWJyZTtcclxuXHRcdFx0XHRcdFx0XHRwbGlQcm9nLnByb2dOb21icmVDb3J0byA9IHByb2cucHJvZ05vbWJyZUNvcnRvO1xyXG5cdFx0XHRcdFx0XHRcdGlmIChwcm9nLmxpc3RhUGxpUHJvbW9jaW9uICYmIHByb2cubGlzdGFQbGlQcm9tb2Npb24ubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdFx0XHRcdFx0cGxpUHJvZy5sUGxpUHJvbW9jaW9uID0gQXJyYXk8UGxpUHJvbW9jaW9uPigpO1xyXG5cdFx0XHRcdFx0XHRcdFx0Zm9yIChsZXQgcHJvbSBvZiBwcm9nLmxpc3RhUGxpUHJvbW9jaW9uKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGxldCBwbGlQcm9tID0gbmV3IFBsaVByb21vY2lvbigpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRwbGlQcm9tLnByb21Db2RpZ28gPSBwcm9tLnByb21Db2RpZ287XHJcblx0XHRcdFx0XHRcdFx0XHRcdHBsaVByb20ucHJvbU5vbWJyZSA9IHByb20ucHJvbU5vbWJyZTtcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGxpUHJvbS5wcm9tTm9tYnJlQ29ydG8gPSBwcm9tLnByb21Ob21icmVDb3J0bztcclxuXHRcdFx0XHRcdFx0XHRcdFx0cGxpUHJvbS5wcm9tRmVjaGFDcmVhY2lvbiA9IHByb20ucHJvbUZlY2hhQ3JlYWNpb247XHJcblx0XHRcdFx0XHRcdFx0XHRcdGxQcm9tb2Npb25lcy5wdXNoKHBsaVByb20pO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRyZXR1cm4gbFByb21vY2lvbmVzO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gbnVsbDtcclxuXHR9XHJcblxyXG5cdC8qKiBpdCByZXR1cm5zIHRoZSBwYXRjb2RpZ28gYnkgcHJvbUNvZGlnbyAqL1xyXG5cdGdldFBhdENvZGlnb0J5UHJvbUNvZGlnbyhwcm9tQ29kaWdvKTogbnVtYmVyIHtcclxuXHRcdGxldCB0b2tlblBwcCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFBwcFNlcnZpY2UuVE9LRU5fUFBQKTtcclxuXHRcdGlmICh0b2tlblBwcCAmJiB0b2tlblBwcC5sZW5ndGgpIHtcclxuXHRcdFx0Y29uc3QgcHBwID0gSnd0VXRpbC5wYXJzZUp3dCh0b2tlblBwcCk7XHJcblx0XHRcdGlmIChwcHAgJiYgcHBwLnBwcClcclxuXHRcdFx0XHRmb3IgKGNvbnN0IHBhdHJvY2luYWRvciBvZiBwcHAucHBwKVxyXG5cdFx0XHRcdFx0Zm9yIChjb25zdCBwcm9ncmFtYSBvZiBwYXRyb2NpbmFkb3IubGlzdGFQbGlQcm9ncmFtYSlcclxuXHRcdFx0XHRcdFx0Zm9yIChjb25zdCBwcm9tb2Npb24gb2YgcHJvZ3JhbWEubGlzdGFQbGlQcm9tb2Npb24pXHJcblx0XHRcdFx0XHRcdFx0aWYgKHByb21vY2lvbi5wcm9tQ29kaWdvID09IHByb21Db2RpZ28pIHJldHVybiBwYXRyb2NpbmFkb3IucGF0Q29kaWdvO1xyXG5cdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LyoqIGl0IHJldHVybnMgdGhlIHBhdGNvZGlnbyBieSBwcm9tQ29kaWdvICovXHJcblx0Z2V0UHJvZ0NvZGlnb0J5UHJvbUNvZGlnbyhwcm9tQ29kaWdvKTogbnVtYmVyIHtcclxuXHRcdGxldCB0b2tlblBwcCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFBwcFNlcnZpY2UuVE9LRU5fUFBQKTtcclxuXHRcdGlmICh0b2tlblBwcCAmJiB0b2tlblBwcC5sZW5ndGgpIHtcclxuXHRcdFx0Y29uc3QgcHBwID0gSnd0VXRpbC5wYXJzZUp3dCh0b2tlblBwcCk7XHJcblx0XHRcdGlmIChwcHAgJiYgcHBwLnBwcClcclxuXHRcdFx0XHRmb3IgKGNvbnN0IHBhdHJvY2luYWRvciBvZiBwcHAucHBwKVxyXG5cdFx0XHRcdFx0Zm9yIChjb25zdCBwcm9ncmFtYSBvZiBwYXRyb2NpbmFkb3IubGlzdGFQbGlQcm9ncmFtYSlcclxuXHRcdFx0XHRcdFx0Zm9yIChjb25zdCBwcm9tb2Npb24gb2YgcHJvZ3JhbWEubGlzdGFQbGlQcm9tb2Npb24pXHJcblx0XHRcdFx0XHRcdFx0aWYgKHByb21vY2lvbi5wcm9tQ29kaWdvID09IHByb21Db2RpZ28pIHJldHVybiBwcm9ncmFtYS5wcm9nQ29kaWdvO1xyXG5cdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQvKiogSXQgZ2VuZXJhdGVkIGEgbGlnaHQgbGlzdCBvZiBwcHAgKi9cclxuXHRwcml2YXRlIGdlbmVyYXRlKCkge1xyXG5cdFx0Ly8gMS4gaXQgdmVyaWZpZXMgdG9rZW5QcHBcclxuXHRcdGxldCB0b2tlblBwcCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFBwcFNlcnZpY2UuVE9LRU5fUFBQKTtcclxuXHRcdGlmICh0b2tlblBwcCAmJiB0b2tlblBwcC5sZW5ndGgpIHtcclxuXHRcdFx0Y29uc3QgcHBwID0gSnd0VXRpbC5wYXJzZUp3dCh0b2tlblBwcCk7XHJcblx0XHRcdGlmIChwcHAgJiYgcHBwLnBwcCkgdGhpcy5zdWJqZWN0TGlzdFBwcC5uZXh0KHBwcC5wcHApO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0Ly8gMi4gaXQgcmV0cmlldmVzIHRoZSBsaXN0IHBwcFxyXG5cdFx0XHRsZXQgYXV0aG9yaXRpZXMgPSBBdXRoZW50aWNhdGlvblV0aWwuZ2V0QXV0aG9yaXRpZXMoKTtcclxuXHRcdFx0aWYgKGF1dGhvcml0aWVzICYmIGF1dGhvcml0aWVzLmxlbmd0aCA+IDApIHtcclxuXHRcdFx0XHRsZXQgbGlzdFBhdENvZGlnbyA9IFtdO1xyXG5cdFx0XHRcdGZvciAoY29uc3QgYXV0aG9yaXR5IG9mIGF1dGhvcml0aWVzKSBsaXN0UGF0Q29kaWdvLnB1c2goYXV0aG9yaXR5LnBhdENvZGlnbyk7XHJcblxyXG5cdFx0XHRcdGlmIChsaXN0UGF0Q29kaWdvKVxyXG5cdFx0XHRcdFx0dGhpcy5odHRwQ2xpZW50XHJcblx0XHRcdFx0XHRcdC5nZXQoXHJcblx0XHRcdFx0XHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQucGxpcyArXHJcblx0XHRcdFx0XHRcdFx0XHQnY29uZmlnL3BhdHJvY2luYWRvci9nZXRMaWdodEJ5TGlzdFBhdHJvY2luYWRvcicsXHJcblx0XHRcdFx0XHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwYXRDb2RpZ29zJywgbGlzdFBhdENvZGlnby50b1N0cmluZygpKSB9XHJcblx0XHRcdFx0XHRcdClcclxuXHRcdFx0XHRcdFx0LnN1YnNjcmliZShcclxuXHRcdFx0XHRcdFx0XHQocmVzdWx0OiBhbnkpID0+IHtcclxuXHRcdFx0XHRcdFx0XHRcdGlmIChyZXN1bHQgJiYgcmVzdWx0LnRva2VuUHBwKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdGxvY2FsU3RvcmFnZS5zZXRJdGVtKFBwcFNlcnZpY2UuVE9LRU5fUFBQLCByZXN1bHQudG9rZW5QcHApO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLmdlbmVyYXRlKCk7XHJcblx0XHRcdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR0aGlzLnN1YmplY3RMaXN0UHBwLm5leHQoW10pO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRcdFx0KGVycm9yKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0XHRjb25zb2xlLmVycm9yKCdFUlJPUiBjb25zdWx0aW5nIHBwcCcsIGVycm9yKTtcclxuXHRcdFx0XHRcdFx0XHRcdHRoaXMuc3ViamVjdExpc3RQcHAubmV4dChbXSk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHQpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvKiogaXQgcmV0dXJucyB0aGUgUFBQIGZyb20gdGhlIHRva2VuICovXHJcblx0Z2V0UFBQSW5mb0Zyb21Ub2tlbigpOiBQbGlQYXRyb2NpbmFkb3JbXSB7XHJcblx0XHRsZXQgdG9rZW5QcHAgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShQcHBTZXJ2aWNlLlRPS0VOX1BQUCk7XHJcblx0XHRjb25zdCBsUGxpUGF0cm9jaW5hZG9yOiBQbGlQYXRyb2NpbmFkb3JbXSA9IFtdO1xyXG5cdFx0aWYgKHRva2VuUHBwICYmIHRva2VuUHBwLmxlbmd0aCkge1xyXG5cdFx0XHRjb25zdCBwcHAgPSBKd3RVdGlsLnBhcnNlSnd0KHRva2VuUHBwKTtcclxuXHRcdFx0aWYgKHBwcCAmJiBwcHAucHBwKVxyXG5cdFx0XHRcdGZvciAoY29uc3QgcGF0cm9jaW5hZG9yIG9mIHBwcC5wcHApIHtcclxuXHRcdFx0XHRcdGNvbnN0IHBsaVBhdHJvY2luYWRvciA9IG5ldyBQbGlQYXRyb2NpbmFkb3IoKTtcclxuXHRcdFx0XHRcdGNvbnN0IGxQbGlQcm9ncmFtYTogUGxpUHJvZ3JhbWFbXSA9IFtdO1xyXG5cdFx0XHRcdFx0Zm9yIChjb25zdCBwcm9ncmFtYSBvZiBwYXRyb2NpbmFkb3IubGlzdGFQbGlQcm9ncmFtYSkge1xyXG5cdFx0XHRcdFx0XHRjb25zdCBwbGlQcm9ncmFtYSA9IG5ldyBQbGlQcm9ncmFtYSgpO1xyXG5cdFx0XHRcdFx0XHRwbGlQcm9ncmFtYS5wcm9nQ29kaWdvID0gcHJvZ3JhbWEucHJvZ0NvZGlnbztcclxuXHRcdFx0XHRcdFx0cGxpUHJvZ3JhbWEucHJvZ05vbWJyZUNvcnRvID0gcHJvZ3JhbWEucHJvZ05vbWJyZUNvcnRvO1xyXG5cdFx0XHRcdFx0XHRwbGlQcm9ncmFtYS5wcm9nTm9tYnJlID0gcHJvZ3JhbWEucHJvZ05vbWJyZTtcclxuXHRcdFx0XHRcdFx0Y29uc3QgbFBsaVByb21vY2lvbjogUGxpUHJvbW9jaW9uW10gPSBbXTtcclxuXHRcdFx0XHRcdFx0Zm9yIChjb25zdCBwcm9tb2Npb24gb2YgcHJvZ3JhbWEubGlzdGFQbGlQcm9tb2Npb24pIHtcclxuXHRcdFx0XHRcdFx0XHRjb25zdCBwbGlQcm9tb2Npb24gPSBuZXcgUGxpUHJvbW9jaW9uKCk7XHJcblx0XHRcdFx0XHRcdFx0cGxpUHJvbW9jaW9uLnByb21Db2RpZ28gPSBwcm9tb2Npb24ucHJvbUNvZGlnbztcclxuXHRcdFx0XHRcdFx0XHRwbGlQcm9tb2Npb24ucHJvbU5vbWJyZUNvcnRvID0gcHJvbW9jaW9uLnByb21Ob21icmVDb3J0bztcclxuXHRcdFx0XHRcdFx0XHRwbGlQcm9tb2Npb24ucHJvbU5vbWJyZSA9IHByb21vY2lvbi5wcm9tTm9tYnJlO1xyXG5cdFx0XHRcdFx0XHRcdHBsaVByb21vY2lvbi5wcm9tQW5pbyA9IHByb21vY2lvbi5wcm9tQW5pbztcclxuXHRcdFx0XHRcdFx0XHRsUGxpUHJvbW9jaW9uLnB1c2gocGxpUHJvbW9jaW9uKTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRwbGlQcm9ncmFtYS5sUGxpUHJvbW9jaW9uID0gbFBsaVByb21vY2lvbjtcclxuXHRcdFx0XHRcdFx0bFBsaVByb2dyYW1hLnB1c2gocGxpUHJvZ3JhbWEpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0cGxpUGF0cm9jaW5hZG9yLmxQbGlQcm9ncmFtYSA9IGxQbGlQcm9ncmFtYTtcclxuXHRcdFx0XHRcdGxQbGlQYXRyb2NpbmFkb3IucHVzaChwbGlQYXRyb2NpbmFkb3IpO1xyXG5cdFx0XHRcdH1cclxuXHRcdH1cclxuXHRcdHJldHVybiBsUGxpUGF0cm9jaW5hZG9yO1xyXG5cdH1cclxuXHJcblx0cHBwUm9sbGJhY2socHBwUmVxdWVzdDogUHBwUmVxdWVzdCkge1xyXG5cdFx0XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QoXHJcblx0XHRcdHRoaXMuZW52aXJvbm1lbnQuaG9zdC5iYWNrZW5kLmNvbmZpZ3VyYXRpb24gKyAncHBwUm9sbGJhY2snLFxyXG5cdFx0XHRwcHBSZXF1ZXN0LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRkZWxldGVCdWRnZXRCeVByb20ocHJvbUNvZGlnbzogbnVtYmVyKSB7XHJcblx0XHRsZXQgb2JqZWN0ID0ge1xyXG5cdFx0XHRwcm9tQ29kaWdvOiBwcm9tQ29kaWdvXHJcblx0XHR9O1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5wbGlzICsgJ2NvbmZpZy9wcm9tb2Npb24vZGVsZXRlQnVkZ2V0QnlQcm9tJyxcclxuXHRcdFx0b2JqZWN0LFxyXG5cdFx0XHR0aGlzLmhlYWRlckpzb25cclxuXHRcdCk7XHJcblx0fVxyXG59XHJcbiJdfQ==
@@ -1,60 +1,60 @@
1
- import { Injectable, Inject } from '@angular/core';
2
- import { HttpParams, HttpHeaders } from '@angular/common/http';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common/http";
5
- export class ProfileService {
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 the profile by id */
12
- getAll() {
13
- return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getAll');
14
- }
15
- /** It returns the profile by id */
16
- getById(id) {
17
- return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getById', { params: new HttpParams().set('id', id.toString()) });
18
- }
19
- /** It returns the profile by userId and patCodigo */
20
- getByUserIdAndPatCodigo(userId, patCodigo, cargarListas) {
21
- return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getByUserIdAndPatCodigo', {
22
- params: new HttpParams()
23
- .set('userId', userId.toString())
24
- .set('patCodigo', patCodigo.toString())
25
- .set('cargarListas', cargarListas.toString())
26
- });
27
- }
28
- /** It returns the profile by patCodigo */
29
- getByPatCodigo(patCodigo) {
30
- return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getByPatCodigo', { params: new HttpParams().set('patCodigo', patCodigo.toString()) });
31
- }
32
- /** It returns the profile by form id */
33
- getByFormId(formId, cargarListas) {
34
- return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getByFormId', {
35
- params: new HttpParams()
36
- .set('formId', formId)
37
- .set('cargarListas', cargarListas.toString())
38
- });
39
- }
40
- /** It saves a profile */
41
- save(profile) {
42
- return this.httpClient.post(this.environment.host.backend.configuration + 'profile/save', profile, this.headerJson);
43
- }
44
- /** It deletes a form by id */
45
- delete(id) {
46
- return this.httpClient.delete(this.environment.host.backend.configuration + 'profile/delete', { params: new HttpParams().set('id', id) });
47
- }
48
- }
49
- ProfileServicefac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ProfileService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
50
- ProfileService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ProfileService, providedIn: 'root' });
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ProfileService, decorators: [{
52
- type: Injectable,
53
- args: [{
54
- providedIn: 'root'
55
- }]
56
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
57
- type: Inject,
58
- args: ['environment']
59
- }] }, { type: i1.HttpClient }]; } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcGxpLWNvbW1vbnMvc3JjL2xpYi9zZXJ2aWNlcy9wcm9maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBTTNFLE1BQU0sT0FBTyxjQUFjO0lBRzFCLFlBQTJDLFdBQVcsRUFBVSxVQUFzQjtRQUEzQyxnQkFBVyxHQUFYLFdBQVcsQ0FBQTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGOUUsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO0lBRUQsQ0FBQztJQUUxRixtQ0FBbUM7SUFDbkMsTUFBTTtRQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFRCxtQ0FBbUM7SUFDbkMsT0FBTyxDQUFDLEVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxpQkFBaUIsRUFDL0QsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ3JELENBQUM7SUFDSCxDQUFDO0lBRUQscURBQXFEO0lBQ3JELHVCQUF1QixDQUN0QixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsWUFBcUI7UUFFckIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxpQ0FBaUMsRUFDL0U7WUFDQyxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUU7aUJBQ3RCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO2lCQUNoQyxHQUFHLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDdEMsR0FBRyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDOUMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxjQUFjLENBQUMsU0FBaUI7UUFDL0IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyx3QkFBd0IsRUFDdEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ25FLENBQUM7SUFDSCxDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLFdBQVcsQ0FBQyxNQUFjLEVBQUUsWUFBcUI7UUFDaEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsRUFDbkU7WUFDQyxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUU7aUJBQ3RCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO2lCQUNyQixHQUFHLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUM5QyxDQUNELENBQUM7SUFDSCxDQUFDO0lBRUQseUJBQXlCO0lBQ3pCLElBQUksQ0FBQyxPQUFzQjtRQUMxQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLGNBQWMsRUFDNUQsT0FBTyxFQUNQLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsTUFBTSxDQUFDLEVBQUU7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLGdCQUFnQixFQUM5RCxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FDMUMsQ0FBQztJQUNILENBQUM7OzJHQXRFVyxjQUFjLGtCQUdOLGFBQWE7K0dBSHJCLGNBQWMsY0FGZCxNQUFNOzJGQUVOLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFJYSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zLCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgUGxpQ25mUHJvZmlsZSB9IGZyb20gJ25nLXBsaS11dGlsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2ZpbGVTZXJ2aWNlIHtcclxuXHRwcml2YXRlIGhlYWRlckpzb24gPSB7IGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSkgfTtcclxuXHJcblx0Y29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50LCBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHt9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBwcm9maWxlIGJ5IGlkICovXHJcblx0Z2V0QWxsKCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvZ2V0QWxsJyk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgcHJvZmlsZSBieSBpZCAqL1xyXG5cdGdldEJ5SWQoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuY29uZmlndXJhdGlvbiArICdwcm9maWxlL2dldEJ5SWQnLFxyXG5cdFx0XHR7IHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2lkJywgaWQudG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBwcm9maWxlIGJ5IHVzZXJJZCBhbmQgcGF0Q29kaWdvICovXHJcblx0Z2V0QnlVc2VySWRBbmRQYXRDb2RpZ28oXHJcblx0XHR1c2VySWQ6IG51bWJlcixcclxuXHRcdHBhdENvZGlnbzogbnVtYmVyLFxyXG5cdFx0Y2FyZ2FyTGlzdGFzOiBib29sZWFuXHJcblx0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvZ2V0QnlVc2VySWRBbmRQYXRDb2RpZ28nLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCd1c2VySWQnLCB1c2VySWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ3BhdENvZGlnbycsIHBhdENvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnY2FyZ2FyTGlzdGFzJywgY2FyZ2FyTGlzdGFzLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgcHJvZmlsZSBieSBwYXRDb2RpZ28gKi9cclxuXHRnZXRCeVBhdENvZGlnbyhwYXRDb2RpZ286IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuY29uZmlndXJhdGlvbiArICdwcm9maWxlL2dldEJ5UGF0Q29kaWdvJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwYXRDb2RpZ28nLCBwYXRDb2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBwcm9maWxlIGJ5IGZvcm0gaWQgKi9cclxuXHRnZXRCeUZvcm1JZChmb3JtSWQ6IHN0cmluZywgY2FyZ2FyTGlzdGFzOiBib29sZWFuKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvZ2V0QnlGb3JtSWQnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdmb3JtSWQnLCBmb3JtSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdjYXJnYXJMaXN0YXMnLCBjYXJnYXJMaXN0YXMudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCBzYXZlcyBhIHByb2ZpbGUgKi9cclxuXHRzYXZlKHByb2ZpbGU6IFBsaUNuZlByb2ZpbGUpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvc2F2ZScsXHJcblx0XHRcdHByb2ZpbGUsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCBkZWxldGVzIGEgZm9ybSBieSBpZCAqL1xyXG5cdGRlbGV0ZShpZCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmRlbGV0ZShcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuY29uZmlndXJhdGlvbiArICdwcm9maWxlL2RlbGV0ZScsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnaWQnLCBpZCkgfVxyXG5cdFx0KTtcclxuXHR9XHJcbn1cclxuIl19
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { HttpParams, HttpHeaders } from '@angular/common/http';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ export class ProfileService {
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 the profile by id */
12
+ getAll() {
13
+ return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getAll');
14
+ }
15
+ /** It returns the profile by id */
16
+ getById(id) {
17
+ return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getById', { params: new HttpParams().set('id', id.toString()) });
18
+ }
19
+ /** It returns the profile by userId and patCodigo */
20
+ getByUserIdAndPatCodigo(userId, patCodigo, cargarListas) {
21
+ return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getByUserIdAndPatCodigo', {
22
+ params: new HttpParams()
23
+ .set('userId', userId.toString())
24
+ .set('patCodigo', patCodigo.toString())
25
+ .set('cargarListas', cargarListas.toString())
26
+ });
27
+ }
28
+ /** It returns the profile by patCodigo */
29
+ getByPatCodigo(patCodigo) {
30
+ return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getByPatCodigo', { params: new HttpParams().set('patCodigo', patCodigo.toString()) });
31
+ }
32
+ /** It returns the profile by form id */
33
+ getByFormId(formId, cargarListas) {
34
+ return this.httpClient.get(this.environment.host.backend.configuration + 'profile/getByFormId', {
35
+ params: new HttpParams()
36
+ .set('formId', formId)
37
+ .set('cargarListas', cargarListas.toString())
38
+ });
39
+ }
40
+ /** It saves a profile */
41
+ save(profile) {
42
+ return this.httpClient.post(this.environment.host.backend.configuration + 'profile/save', profile, this.headerJson);
43
+ }
44
+ /** It deletes a form by id */
45
+ delete(id) {
46
+ return this.httpClient.delete(this.environment.host.backend.configuration + 'profile/delete', { params: new HttpParams().set('id', id) });
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ProfileService, deps: [{ token: 'environment' }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
49
+ static { thisprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ProfileService, providedIn: 'root' }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ProfileService, decorators: [{
52
+ type: Injectable,
53
+ args: [{
54
+ providedIn: 'root'
55
+ }]
56
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
57
+ type: Inject,
58
+ args: ['environment']
59
+ }] }, { type: i1.HttpClient }] });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcGxpLWNvbW1vbnMvc3JjL2xpYi9zZXJ2aWNlcy9wcm9maWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBTTNFLE1BQU0sT0FBTyxjQUFjO0lBRzFCLFlBQTJDLFdBQVcsRUFBVSxVQUFzQjtRQUEzQyxnQkFBVyxHQUFYLFdBQVcsQ0FBQTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFGOUUsZUFBVSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO0lBRUQsQ0FBQztJQUUxRixtQ0FBbUM7SUFDbkMsTUFBTTtRQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzVGLENBQUM7SUFFRCxtQ0FBbUM7SUFDbkMsT0FBTyxDQUFDLEVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxpQkFBaUIsRUFDL0QsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ3JELENBQUM7SUFDSCxDQUFDO0lBRUQscURBQXFEO0lBQ3JELHVCQUF1QixDQUN0QixNQUFjLEVBQ2QsU0FBaUIsRUFDakIsWUFBcUI7UUFFckIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxpQ0FBaUMsRUFDL0U7WUFDQyxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUU7aUJBQ3RCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO2lCQUNoQyxHQUFHLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztpQkFDdEMsR0FBRyxDQUFDLGNBQWMsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDOUMsQ0FDRCxDQUFDO0lBQ0gsQ0FBQztJQUVELDBDQUEwQztJQUMxQyxjQUFjLENBQUMsU0FBaUI7UUFDL0IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyx3QkFBd0IsRUFDdEUsRUFBRSxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLENBQ25FLENBQUM7SUFDSCxDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLFdBQVcsQ0FBQyxNQUFjLEVBQUUsWUFBcUI7UUFDaEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsRUFDbkU7WUFDQyxNQUFNLEVBQUUsSUFBSSxVQUFVLEVBQUU7aUJBQ3RCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDO2lCQUNyQixHQUFHLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUM5QyxDQUNELENBQUM7SUFDSCxDQUFDO0lBRUQseUJBQXlCO0lBQ3pCLElBQUksQ0FBQyxPQUFzQjtRQUMxQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLGNBQWMsRUFDNUQsT0FBTyxFQUNQLElBQUksQ0FBQyxVQUFVLENBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsTUFBTSxDQUFDLEVBQUU7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxHQUFHLGdCQUFnQixFQUM5RCxFQUFFLE1BQU0sRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FDMUMsQ0FBQztJQUNILENBQUM7K0dBdEVXLGNBQWMsa0JBR04sYUFBYTttSEFIckIsY0FBYyxjQUZkLE1BQU07OzRGQUVOLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1gsVUFBVSxFQUFFLE1BQU07aUJBQ2xCOzswQkFJYSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zLCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgUGxpQ25mUHJvZmlsZSB9IGZyb20gJ25nLXBsaS11dGlsJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFByb2ZpbGVTZXJ2aWNlIHtcclxuXHRwcml2YXRlIGhlYWRlckpzb24gPSB7IGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSkgfTtcclxuXHJcblx0Y29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50LCBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQpIHt9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBwcm9maWxlIGJ5IGlkICovXHJcblx0Z2V0QWxsKCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvZ2V0QWxsJyk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgcHJvZmlsZSBieSBpZCAqL1xyXG5cdGdldEJ5SWQoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuY29uZmlndXJhdGlvbiArICdwcm9maWxlL2dldEJ5SWQnLFxyXG5cdFx0XHR7IHBhcmFtczogbmV3IEh0dHBQYXJhbXMoKS5zZXQoJ2lkJywgaWQudG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBwcm9maWxlIGJ5IHVzZXJJZCBhbmQgcGF0Q29kaWdvICovXHJcblx0Z2V0QnlVc2VySWRBbmRQYXRDb2RpZ28oXHJcblx0XHR1c2VySWQ6IG51bWJlcixcclxuXHRcdHBhdENvZGlnbzogbnVtYmVyLFxyXG5cdFx0Y2FyZ2FyTGlzdGFzOiBib29sZWFuXHJcblx0KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvZ2V0QnlVc2VySWRBbmRQYXRDb2RpZ28nLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCd1c2VySWQnLCB1c2VySWQudG9TdHJpbmcoKSlcclxuXHRcdFx0XHRcdC5zZXQoJ3BhdENvZGlnbycsIHBhdENvZGlnby50b1N0cmluZygpKVxyXG5cdFx0XHRcdFx0LnNldCgnY2FyZ2FyTGlzdGFzJywgY2FyZ2FyTGlzdGFzLnRvU3RyaW5nKCkpXHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHQvKiogSXQgcmV0dXJucyB0aGUgcHJvZmlsZSBieSBwYXRDb2RpZ28gKi9cclxuXHRnZXRCeVBhdENvZGlnbyhwYXRDb2RpZ286IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldChcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuY29uZmlndXJhdGlvbiArICdwcm9maWxlL2dldEJ5UGF0Q29kaWdvJyxcclxuXHRcdFx0eyBwYXJhbXM6IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdwYXRDb2RpZ28nLCBwYXRDb2RpZ28udG9TdHJpbmcoKSkgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCByZXR1cm5zIHRoZSBwcm9maWxlIGJ5IGZvcm0gaWQgKi9cclxuXHRnZXRCeUZvcm1JZChmb3JtSWQ6IHN0cmluZywgY2FyZ2FyTGlzdGFzOiBib29sZWFuKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuXHRcdHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvZ2V0QnlGb3JtSWQnLFxyXG5cdFx0XHR7XHJcblx0XHRcdFx0cGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpXHJcblx0XHRcdFx0XHQuc2V0KCdmb3JtSWQnLCBmb3JtSWQpXHJcblx0XHRcdFx0XHQuc2V0KCdjYXJnYXJMaXN0YXMnLCBjYXJnYXJMaXN0YXMudG9TdHJpbmcoKSlcclxuXHRcdFx0fVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCBzYXZlcyBhIHByb2ZpbGUgKi9cclxuXHRzYXZlKHByb2ZpbGU6IFBsaUNuZlByb2ZpbGUpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG5cdFx0cmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KFxyXG5cdFx0XHR0aGlzLmVudmlyb25tZW50Lmhvc3QuYmFja2VuZC5jb25maWd1cmF0aW9uICsgJ3Byb2ZpbGUvc2F2ZScsXHJcblx0XHRcdHByb2ZpbGUsXHJcblx0XHRcdHRoaXMuaGVhZGVySnNvblxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdC8qKiBJdCBkZWxldGVzIGEgZm9ybSBieSBpZCAqL1xyXG5cdGRlbGV0ZShpZCk6IE9ic2VydmFibGU8YW55PiB7XHJcblx0XHRyZXR1cm4gdGhpcy5odHRwQ2xpZW50LmRlbGV0ZShcclxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudC5ob3N0LmJhY2tlbmQuY29uZmlndXJhdGlvbiArICdwcm9maWxlL2RlbGV0ZScsXHJcblx0XHRcdHsgcGFyYW1zOiBuZXcgSHR0cFBhcmFtcygpLnNldCgnaWQnLCBpZCkgfVxyXG5cdFx0KTtcclxuXHR9XHJcbn1cclxuIl19