ng-pli-commons 1.0.3 → 1.0.6-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/README.md +24 -24
  2. package/fesm2022/ng-pli-commons.mjs +2933 -2280
  3. package/fesm2022/ng-pli-commons.mjs.map +1 -1
  4. package/lib/components/backoffice.commons.component.d.ts +1 -1
  5. package/lib/components/common.lists.component.d.ts +0 -1
  6. package/lib/components/configuration.commons.component.d.ts +1 -1
  7. package/lib/components/pdf-generator/pdf-generator.component.d.ts +3 -16
  8. package/lib/components/pdf-visualizer/pdf-visualizer.component.d.ts +2 -0
  9. package/lib/components/token/token.component.d.ts +12 -4
  10. package/lib/ng-pli-commons.module.d.ts +12 -13
  11. package/lib/services/application-pdf-form.service.d.ts +14 -0
  12. package/lib/services/application.service.d.ts +3 -1
  13. package/lib/services/assign-task.service.d.ts +16 -0
  14. package/lib/services/budget-setup.service.d.ts +12 -0
  15. package/lib/services/budget-simulation.service.d.ts +2 -0
  16. package/lib/services/codebtors.service.d.ts +14 -0
  17. package/lib/services/committee-assistant.service.d.ts +19 -0
  18. package/lib/services/common.service.d.ts +1 -7
  19. package/lib/services/correspondence-manager.service.d.ts +1 -0
  20. package/lib/services/document-process.service.d.ts +12 -0
  21. package/lib/services/document.service.d.ts +5 -4
  22. package/lib/services/guarantees-summary-service.d.ts +13 -0
  23. package/lib/services/import-excel-gic.service.d.ts +2 -0
  24. package/lib/services/maintenance.service.d.ts +4 -0
  25. package/lib/services/master-university.service.d.ts +7 -0
  26. package/lib/services/openkm-document.service.d.ts +11 -0
  27. package/lib/services/pli-cnf-committee.service.d.ts +2 -0
  28. package/lib/services/pli-cnf-evaluation-task-template.service.d.ts +20 -0
  29. package/lib/services/post-selection.service.d.ts +11 -0
  30. package/lib/services/registry-identifier.service.d.ts +2 -1
  31. package/lib/services/segmentation-user-service.service.d.ts +1 -0
  32. package/lib/services/send-application.service.d.ts +2 -2
  33. package/lib/services/status.service.d.ts +1 -0
  34. package/lib/services/tag-management.service.d.ts +23 -0
  35. package/lib/services/token.service.d.ts +3 -0
  36. package/lib/services/visualization-committee.service.d.ts +5 -4
  37. package/package.json +3 -6
  38. package/public-api.d.ts +11 -0
  39. package/version.d.ts +1 -1
  40. package/esm2022/lib/components/backoffice.commons.component.mjs +0 -40
  41. package/esm2022/lib/components/common.lists.component.mjs +0 -194
  42. package/esm2022/lib/components/configuration-token/configuration-token-subject.service.mjs +0 -23
  43. package/esm2022/lib/components/configuration-token/configuration-token.component.mjs +0 -665
  44. package/esm2022/lib/components/configuration-token/guarantee-token/guarantee-token.component.mjs +0 -103
  45. package/esm2022/lib/components/configuration-token/snapshot-token/snapshot-token.component.mjs +0 -108
  46. package/esm2022/lib/components/configuration.commons.component.mjs +0 -40
  47. package/esm2022/lib/components/dashboard.commons.component.mjs +0 -84
  48. package/esm2022/lib/components/dynamic-filter/dynamic-filter.component.mjs +0 -131
  49. package/esm2022/lib/components/excel-to-json/excel-to-json.component.mjs +0 -54
  50. package/esm2022/lib/components/frontoffice.commons.component.mjs +0 -86
  51. package/esm2022/lib/components/pdf-analyzer/pdf-analyzer.component.mjs +0 -162
  52. package/esm2022/lib/components/pdf-config/pdf-config.component.mjs +0 -170
  53. package/esm2022/lib/components/pdf-generator/pdf-generator.component.mjs +0 -223
  54. package/esm2022/lib/components/pdf-merge-visualizer/pdf-merge-visualizer.component.mjs +0 -307
  55. package/esm2022/lib/components/pdf-visualizer/pdf-visualizer.component.mjs +0 -387
  56. package/esm2022/lib/components/progress-bar/progress-bar.component.mjs +0 -92
  57. package/esm2022/lib/components/segmentation-tokens/segmentation-tokens.component.mjs +0 -199
  58. package/esm2022/lib/components/select-ppp/select-ppp.component.mjs +0 -199
  59. package/esm2022/lib/components/show-hide-columns/show-hide-columns-table.component.mjs +0 -116
  60. package/esm2022/lib/components/token/token.component.mjs +0 -1006
  61. package/esm2022/lib/components/tokens-calculator/tokens-calculator.component.mjs +0 -128
  62. package/esm2022/lib/directives/currency-colfuturo-formatter.directive.mjs +0 -47
  63. package/esm2022/lib/directives/currency-decimal-colfuturo-formatter.directive.mjs +0 -34
  64. package/esm2022/lib/ng-pli-commons.module.mjs +0 -387
  65. package/esm2022/lib/ng-pli-commons.service.mjs +0 -14
  66. package/esm2022/lib/pipes/currency-colfuturo.pipe.mjs +0 -35
  67. package/esm2022/lib/pipes/currency-decimal-colfuturo.pipe.mjs +0 -36
  68. package/esm2022/lib/pipes/currency-print-colfuturo.pipe.mjs +0 -33
  69. package/esm2022/lib/pipes/thousands.pipe.mjs +0 -60
  70. package/esm2022/lib/services/application-fill-percentage.service.mjs +0 -30
  71. package/esm2022/lib/services/application-tag.service.mjs +0 -56
  72. package/esm2022/lib/services/application.service.mjs +0 -247
  73. package/esm2022/lib/services/authentication.service.mjs +0 -133
  74. package/esm2022/lib/services/blocked-beneficiary.service.mjs +0 -42
  75. package/esm2022/lib/services/budget-application.service.mjs +0 -265
  76. package/esm2022/lib/services/budget-simulation.service.mjs +0 -61
  77. package/esm2022/lib/services/budget.service.mjs +0 -205
  78. package/esm2022/lib/services/closure-wallet.service.mjs +0 -39
  79. package/esm2022/lib/services/cnf-correspondence-document-manager.service.mjs +0 -39
  80. package/esm2022/lib/services/committee-money.service.mjs +0 -44
  81. package/esm2022/lib/services/committee-pdf.service.mjs +0 -27
  82. package/esm2022/lib/services/committee-snapshot.service.mjs +0 -60
  83. package/esm2022/lib/services/common-info.service.mjs +0 -51
  84. package/esm2022/lib/services/common.service.mjs +0 -291
  85. package/esm2022/lib/services/configuration-document.service.mjs +0 -297
  86. package/esm2022/lib/services/configuration-minisite.service.mjs +0 -26
  87. package/esm2022/lib/services/configuration.service.mjs +0 -53
  88. package/esm2022/lib/services/correspondence-document-category.service.mjs +0 -31
  89. package/esm2022/lib/services/correspondence-manager.service.mjs +0 -67
  90. package/esm2022/lib/services/credit-score.service.mjs +0 -48
  91. package/esm2022/lib/services/credit-study.service.mjs +0 -292
  92. package/esm2022/lib/services/cube.service.mjs +0 -27
  93. package/esm2022/lib/services/data-form-history.service.mjs +0 -25
  94. package/esm2022/lib/services/data-form.service.mjs +0 -176
  95. package/esm2022/lib/services/data-letter-segmentation.service.mjs +0 -64
  96. package/esm2022/lib/services/document-analysis-auto.service.mjs +0 -27
  97. package/esm2022/lib/services/document-history.service.mjs +0 -43
  98. package/esm2022/lib/services/document-management.service.mjs +0 -57
  99. package/esm2022/lib/services/document-validation-attempt.service.mjs +0 -32
  100. package/esm2022/lib/services/document.service.mjs +0 -131
  101. package/esm2022/lib/services/documentary.type.service.mjs +0 -69
  102. package/esm2022/lib/services/email.service.mjs +0 -30
  103. package/esm2022/lib/services/evaluation.service.mjs +0 -181
  104. package/esm2022/lib/services/export-excel.service.mjs +0 -32
  105. package/esm2022/lib/services/file.service.mjs +0 -153
  106. package/esm2022/lib/services/form.service.mjs +0 -112
  107. package/esm2022/lib/services/gic-client-disbursement-metadata.service.mjs +0 -31
  108. package/esm2022/lib/services/gic-client.service.mjs +0 -49
  109. package/esm2022/lib/services/gic-cnf-bankvision-transaction.service.mjs +0 -31
  110. package/esm2022/lib/services/gic-cnf-closing-date.service.mjs +0 -34
  111. package/esm2022/lib/services/gic-cnf-maintenance.service.mjs +0 -30
  112. package/esm2022/lib/services/gic-collection.service.mjs +0 -53
  113. package/esm2022/lib/services/gic-disbursement.service.mjs +0 -39
  114. package/esm2022/lib/services/gic-extract.service.mjs +0 -41
  115. package/esm2022/lib/services/gic-log.service.mjs +0 -41
  116. package/esm2022/lib/services/gic-payment-application.service.mjs +0 -35
  117. package/esm2022/lib/services/gic-payment-plan-cube.service.mjs +0 -27
  118. package/esm2022/lib/services/gic-payment-plan.service.mjs +0 -32
  119. package/esm2022/lib/services/gic-trm.service.mjs +0 -27
  120. package/esm2022/lib/services/global.show.task.service.mjs +0 -37
  121. package/esm2022/lib/services/guarantee-document.service.mjs +0 -52
  122. package/esm2022/lib/services/guarantee-enrollment.service.mjs +0 -37
  123. package/esm2022/lib/services/guarantee.service.mjs +0 -128
  124. package/esm2022/lib/services/hash.service.mjs +0 -36
  125. package/esm2022/lib/services/import-data.service.mjs +0 -27
  126. package/esm2022/lib/services/import-excel-gic.service.mjs +0 -45
  127. package/esm2022/lib/services/initial-configuration-gic-parameters.service.mjs +0 -51
  128. package/esm2022/lib/services/initial-record.service.mjs +0 -51
  129. package/esm2022/lib/services/integration-ado.service.mjs +0 -54
  130. package/esm2022/lib/services/interaction-application-user.service.mjs +0 -81
  131. package/esm2022/lib/services/interest-adjustment.service.mjs +0 -34
  132. package/esm2022/lib/services/keys-assignation.service.mjs +0 -127
  133. package/esm2022/lib/services/legalization.service.mjs +0 -150
  134. package/esm2022/lib/services/letter-campaing.service.mjs +0 -49
  135. package/esm2022/lib/services/letter-task-mapping.service.mjs +0 -40
  136. package/esm2022/lib/services/log.service.mjs +0 -41
  137. package/esm2022/lib/services/maintenance.service.mjs +0 -66
  138. package/esm2022/lib/services/master-category.service.mjs +0 -66
  139. package/esm2022/lib/services/master-program.service.mjs +0 -78
  140. package/esm2022/lib/services/master-university.service.mjs +0 -68
  141. package/esm2022/lib/services/migration-plis.service.mjs +0 -27
  142. package/esm2022/lib/services/migration-survey-queue.service.mjs +0 -24
  143. package/esm2022/lib/services/page.service.mjs +0 -38
  144. package/esm2022/lib/services/partner-system.service.mjs +0 -30
  145. package/esm2022/lib/services/partner.service.mjs +0 -34
  146. package/esm2022/lib/services/pdf-analyzer.service.mjs +0 -33
  147. package/esm2022/lib/services/people-master.service.mjs +0 -42
  148. package/esm2022/lib/services/permission.service.mjs +0 -29
  149. package/esm2022/lib/services/pli-cnf-acuity-fields.service.mjs +0 -34
  150. package/esm2022/lib/services/pli-cnf-app-card-filter.service.mjs +0 -40
  151. package/esm2022/lib/services/pli-cnf-appointment-type.service.mjs +0 -41
  152. package/esm2022/lib/services/pli-cnf-budget-program-type.service.mjs +0 -54
  153. package/esm2022/lib/services/pli-cnf-budget.service.mjs +0 -31
  154. package/esm2022/lib/services/pli-cnf-cloning.service.mjs +0 -27
  155. package/esm2022/lib/services/pli-cnf-committee-pdf-config-table-config.service.mjs +0 -47
  156. package/esm2022/lib/services/pli-cnf-committee-pdf-gen-status.service.mjs +0 -30
  157. package/esm2022/lib/services/pli-cnf-committee-valpro-columns.service.mjs +0 -42
  158. package/esm2022/lib/services/pli-cnf-committee-visualization-mode.service.mjs +0 -42
  159. package/esm2022/lib/services/pli-cnf-committee.service.mjs +0 -51
  160. package/esm2022/lib/services/pli-cnf-config-minisite.service.mjs +0 -90
  161. package/esm2022/lib/services/pli-cnf-configuration-credit-study.service.mjs +0 -41
  162. package/esm2022/lib/services/pli-cnf-document-management.service.mjs +0 -40
  163. package/esm2022/lib/services/pli-cnf-dynamic-keys-assign.service.mjs +0 -52
  164. package/esm2022/lib/services/pli-cnf-evaluation-task-mailing.service.mjs +0 -31
  165. package/esm2022/lib/services/pli-cnf-evaluation-task.service.mjs +0 -112
  166. package/esm2022/lib/services/pli-cnf-evaluation-template.service.mjs +0 -95
  167. package/esm2022/lib/services/pli-cnf-form-edit.service.mjs +0 -68
  168. package/esm2022/lib/services/pli-cnf-form-multiaplicacion.service.mjs +0 -46
  169. package/esm2022/lib/services/pli-cnf-guarantee-documents-template.service.mjs +0 -40
  170. package/esm2022/lib/services/pli-cnf-guarantee-token.service.mjs +0 -42
  171. package/esm2022/lib/services/pli-cnf-header.service.mjs +0 -39
  172. package/esm2022/lib/services/pli-cnf-indicator.service.mjs +0 -39
  173. package/esm2022/lib/services/pli-cnf-information-system.service.mjs +0 -24
  174. package/esm2022/lib/services/pli-cnf-interaction.service.mjs +0 -78
  175. package/esm2022/lib/services/pli-cnf-letter-template-type.service.mjs +0 -29
  176. package/esm2022/lib/services/pli-cnf-letter-template.service.mjs +0 -48
  177. package/esm2022/lib/services/pli-cnf-look-and-feel.service.mjs +0 -28
  178. package/esm2022/lib/services/pli-cnf-mail.service.mjs +0 -30
  179. package/esm2022/lib/services/pli-cnf-menu-form.service.mjs +0 -34
  180. package/esm2022/lib/services/pli-cnf-migration-plis-field-budget.service.mjs +0 -34
  181. package/esm2022/lib/services/pli-cnf-migration-plis-field.service.mjs +0 -47
  182. package/esm2022/lib/services/pli-cnf-migration-status-plis.service.mjs +0 -44
  183. package/esm2022/lib/services/pli-cnf-page-section-form.service.mjs +0 -66
  184. package/esm2022/lib/services/pli-cnf-page-sub-process.service.mjs +0 -25
  185. package/esm2022/lib/services/pli-cnf-pdfs.service.mjs +0 -31
  186. package/esm2022/lib/services/pli-cnf-profile-form.service.mjs +0 -40
  187. package/esm2022/lib/services/pli-cnf-profile-user.service.mjs +0 -49
  188. package/esm2022/lib/services/pli-cnf-project-summary.service.mjs +0 -39
  189. package/esm2022/lib/services/pli-cnf-scenario.service.mjs +0 -47
  190. package/esm2022/lib/services/pli-cnf-segmentation.service.mjs +0 -72
  191. package/esm2022/lib/services/pli-cnf-snapshot-token.service.mjs +0 -42
  192. package/esm2022/lib/services/pli-cnf-status-flow-interaction.service.mjs +0 -74
  193. package/esm2022/lib/services/pli-cnf-status-flow.service.mjs +0 -56
  194. package/esm2022/lib/services/pli-cnf-support-document-category.service.mjs +0 -47
  195. package/esm2022/lib/services/pli-cnf-support-document.service.mjs +0 -56
  196. package/esm2022/lib/services/pli-cnf-survey-document.service.mjs +0 -37
  197. package/esm2022/lib/services/pli-cnf-survey-pdf.service.mjs +0 -34
  198. package/esm2022/lib/services/pli-cnf-survey.service.mjs +0 -46
  199. package/esm2022/lib/services/pli-cnf-task-group.service.mjs +0 -33
  200. package/esm2022/lib/services/pli-cnf-text-category.service.mjs +0 -38
  201. package/esm2022/lib/services/pli-cnf-text-option.service.mjs +0 -39
  202. package/esm2022/lib/services/pli-cnf-text.service.mjs +0 -62
  203. package/esm2022/lib/services/pli-cnf-type-text.service.mjs +0 -45
  204. package/esm2022/lib/services/pli-cnf-university-article.service.mjs +0 -39
  205. package/esm2022/lib/services/pli-cnf-user-calendar.service.mjs +0 -36
  206. package/esm2022/lib/services/pli-cnf-user-workspace.service.mjs +0 -35
  207. package/esm2022/lib/services/pli-cnf-valpro-keys.service.mjs +0 -35
  208. package/esm2022/lib/services/pli-cnf-workspace-segmentation.service.mjs +0 -31
  209. package/esm2022/lib/services/pli-message-type.service.mjs +0 -40
  210. package/esm2022/lib/services/pli-multiple-value-filter.service.mjs +0 -39
  211. package/esm2022/lib/services/pli-promocion-username.service.mjs +0 -57
  212. package/esm2022/lib/services/pli-seg-action-user.service.mjs +0 -37
  213. package/esm2022/lib/services/pli-segmentation.service.mjs +0 -130
  214. package/esm2022/lib/services/pli-tag-assignment.service.mjs +0 -36
  215. package/esm2022/lib/services/pli-tag.service.mjs +0 -55
  216. package/esm2022/lib/services/pli-user.service.mjs +0 -51
  217. package/esm2022/lib/services/plis-beneficiario.service.mjs +0 -29
  218. package/esm2022/lib/services/plis-estatus-change.service.mjs +0 -30
  219. package/esm2022/lib/services/ppp.service.mjs +0 -360
  220. package/esm2022/lib/services/profile.service.mjs +0 -60
  221. package/esm2022/lib/services/progress-bar.service.mjs +0 -40
  222. package/esm2022/lib/services/promotion-score.service.mjs +0 -44
  223. package/esm2022/lib/services/registry-identifier.service.mjs +0 -39
  224. package/esm2022/lib/services/return-refund.service.mjs +0 -53
  225. package/esm2022/lib/services/segmentation-tokens.service.mjs +0 -43
  226. package/esm2022/lib/services/segmentation-user-service.service.mjs +0 -90
  227. package/esm2022/lib/services/segmentation.service.mjs +0 -31
  228. package/esm2022/lib/services/send-application.service.mjs +0 -492
  229. package/esm2022/lib/services/sesion-form.service.mjs +0 -31
  230. package/esm2022/lib/services/sesion.service.mjs +0 -48
  231. package/esm2022/lib/services/spinner.service.mjs +0 -16
  232. package/esm2022/lib/services/sponsorship-letter.service.mjs +0 -68
  233. package/esm2022/lib/services/status.service.mjs +0 -100
  234. package/esm2022/lib/services/summary-budget.service.mjs +0 -24
  235. package/esm2022/lib/services/survey-metadata.service.mjs +0 -28
  236. package/esm2022/lib/services/survey-queue.service.mjs +0 -24
  237. package/esm2022/lib/services/survey.service.mjs +0 -52
  238. package/esm2022/lib/services/tasa.cambio.service.mjs +0 -35
  239. package/esm2022/lib/services/token-transformation.service.mjs +0 -62
  240. package/esm2022/lib/services/token.service.mjs +0 -1345
  241. package/esm2022/lib/services/university.service.mjs +0 -50
  242. package/esm2022/lib/services/upload-documents.service.mjs +0 -60
  243. package/esm2022/lib/services/user.service.mjs +0 -28
  244. package/esm2022/lib/services/visualization-committee.service.mjs +0 -84
  245. package/esm2022/lib/utils/custom-validator.mjs +0 -95
  246. package/esm2022/lib/utils/form-util.mjs +0 -35
  247. package/esm2022/lib/utils/formio-util.mjs +0 -582
  248. package/esm2022/lib/utils/version-commons.mjs +0 -10
  249. package/esm2022/ng-pli-commons.mjs +0 -5
  250. package/esm2022/public-api.mjs +0 -215
  251. package/esm2022/version.mjs +0 -29
@@ -1,223 +0,0 @@
1
- import { Component, HostListener, Input, ViewChild, Output, EventEmitter } from '@angular/core';
2
- import { RequestPdf } from 'ng-pli-util';
3
- import * as PDFJS_ from 'pdfjs-dist/build/pdf';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/platform-browser";
6
- import * as i2 from "../../services/data-form.service";
7
- import * as i3 from "../../services/application.service";
8
- import * as i4 from "../../services/ppp.service";
9
- import * as i5 from "../../services/common.service";
10
- import * as i6 from "../../services/pli-cnf-look-and-feel.service";
11
- import * as i7 from "../../services/pli-cnf-header.service";
12
- import * as i8 from "@angular/router";
13
- import * as i9 from "../../services/form.service";
14
- import * as i10 from "../../services/pli-cnf-pdfs.service";
15
- import * as i11 from "../../services/token-transformation.service";
16
- import * as i12 from "@angular/common";
17
- import * as i13 from "formioangular-colfuturo";
18
- import * as i14 from "primeng/tieredmenu";
19
- const PDFJS = PDFJS_;
20
- export class PdfGeneratorComponent {
21
- set configurations(cnfPdf) {
22
- this.items = cnfPdf.map((c) => ({
23
- label: c.name,
24
- command: async () => {
25
- this.configuration = c;
26
- await this.htmltoPDF();
27
- }
28
- }));
29
- }
30
- set applicationId(value) {
31
- this._applicationId = value;
32
- }
33
- onClick(event) {
34
- if (!this._applicationId) {
35
- this._applicationId = this.getElementIdFromEvent(event.composedPath());
36
- }
37
- }
38
- constructor(sanitizer, dataFormService, applicationService, pppService, commonService, lookAndFeelService, header, resolver, activatedRoute, formService, pliCnfPdfService, pliCnfHeaderService, tokenTransformationService) {
39
- this.sanitizer = sanitizer;
40
- this.dataFormService = dataFormService;
41
- this.applicationService = applicationService;
42
- this.pppService = pppService;
43
- this.commonService = commonService;
44
- this.lookAndFeelService = lookAndFeelService;
45
- this.header = header;
46
- this.resolver = resolver;
47
- this.activatedRoute = activatedRoute;
48
- this.formService = formService;
49
- this.pliCnfPdfService = pliCnfPdfService;
50
- this.pliCnfHeaderService = pliCnfHeaderService;
51
- this.tokenTransformationService = tokenTransformationService;
52
- this.showLabel = false;
53
- this.actionClass = 'referenceClass';
54
- this.display = true;
55
- this.items = [];
56
- this.dataForms = [];
57
- this.allDataForms = [];
58
- this.forms = [];
59
- /** it contains the id of canvas */
60
- this.id_canvas = 'pdf-canvas';
61
- this.ready = false;
62
- this.onDownload = new EventEmitter();
63
- }
64
- getElementIdFromEvent(path) {
65
- const element = this.getElement(path);
66
- return element ? element.getAttribute('data-element-id') : '';
67
- }
68
- getElement(pathList) {
69
- return pathList.find((element) => element.classList && element.classList.contains(this.actionClass));
70
- }
71
- async htmltoPDF() {
72
- const applicationData = await this.applicationService
73
- .getById(this._applicationId)
74
- .toPromise();
75
- const promCodigo = applicationData.promCodigo;
76
- this.allDataForms = await this.dataFormService
77
- .getByApplicationId(this._applicationId)
78
- .toPromise();
79
- //get patCode
80
- const patCode = this.pppService.getPatCodigoByPromCodigo(this.promCode);
81
- //get header
82
- if (this.configuration.header) {
83
- const header = await this.pliCnfHeaderService
84
- .getByPromCodigo(this.promCode)
85
- .toPromise();
86
- const text = await this.tokenTransformationService
87
- .transformAndKeepToken(this.configuration.header, promCodigo, this._applicationId, true, 'es')
88
- .toPromise();
89
- this.headerHtml = text.txt;
90
- }
91
- //get footer
92
- if (this.configuration.footer) {
93
- const text = await this.tokenTransformationService
94
- .transformAndKeepToken(this.configuration.footer, promCodigo, this._applicationId, true, 'es')
95
- .toPromise();
96
- this.footerHtml = text.txt;
97
- }
98
- if (this.configuration.body) {
99
- const text = await this.tokenTransformationService
100
- .transformAndKeepToken(this.configuration.body, promCodigo, this._applicationId, true, 'es')
101
- .toPromise();
102
- this.BodyHtml = text.txt;
103
- }
104
- await this.exportAsPDF();
105
- }
106
- async exportAsPDF() {
107
- // if html was changed
108
- let requestPdf = new RequestPdf();
109
- requestPdf.html = this.BodyHtml;
110
- requestPdf.header = this.headerHtml;
111
- requestPdf.footer = this.footerHtml;
112
- requestPdf.lang = 'es';
113
- requestPdf.marginTop = this.configuration.marginTop;
114
- requestPdf.marginRight = this.configuration.marginRight;
115
- requestPdf.marginBottom = this.configuration.marginBottom;
116
- requestPdf.marginLeft = this.configuration.marginLeft;
117
- requestPdf.repeatHeader = true;
118
- requestPdf.repeatFooter = true;
119
- requestPdf.showPager = true;
120
- this.commonService.getBase64Pdf(requestPdf).subscribe((result) => {
121
- this.showBase64Pdf(result);
122
- }, (error) => {
123
- console.log('Error trying to render PDF', error);
124
- });
125
- }
126
- download() {
127
- const contentType = 'application/pdf';
128
- const b64Data = this.base64;
129
- const blob = this.b64toBlob(b64Data, contentType);
130
- const blobUrl = URL.createObjectURL(blob);
131
- var a = document.createElement('a');
132
- document.body.appendChild(a);
133
- a.style.display = 'none';
134
- a.href = blobUrl;
135
- a.download = 'resumenPdf';
136
- a.click();
137
- setTimeout(() => {
138
- window.URL.revokeObjectURL(blobUrl);
139
- document.body.removeChild(a);
140
- this.onDownload.emit({
141
- base64: this.base64
142
- });
143
- }, 200);
144
- }
145
- b64toBlob(b64Data, contentType = '', sliceSize = 512) {
146
- const byteArrays = [];
147
- const byteCharacters = atob(b64Data);
148
- for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
149
- const slice = byteCharacters.slice(offset, offset + sliceSize);
150
- const byteNumbers = new Array(slice.length);
151
- for (let i = 0; i < slice.length; i++) {
152
- byteNumbers[i] = slice.charCodeAt(i);
153
- }
154
- const byteArray = new Uint8Array(byteNumbers);
155
- byteArrays.push(byteArray);
156
- }
157
- const blob = new Blob(byteArrays, { type: contentType });
158
- return blob;
159
- }
160
- renderPage(num) {
161
- this.pdfDocument.pageRendering = true;
162
- // assign variables out of scope
163
- let selfPdfDocument = this.pdfDocument;
164
- let self = this;
165
- // Using promise to fetch the page
166
- this.pdfDocument.pdfDoc.getPage(num).then(function (page) {
167
- var scale = selfPdfDocument.scale ? selfPdfDocument.scale : 1.5;
168
- var viewport = page.getViewport({ scale: scale });
169
- selfPdfDocument.canvas.height = viewport.height;
170
- selfPdfDocument.canvas.width = viewport.width;
171
- // Render PDF page into canvas context
172
- var renderContext = {
173
- canvasContext: selfPdfDocument.canvas.getContext('2d'),
174
- viewport: viewport
175
- };
176
- var renderTask = page.render(renderContext);
177
- // Wait for rendering to finish
178
- renderTask.promise.then(function () {
179
- selfPdfDocument.pageRendering = false;
180
- if (selfPdfDocument.pageNumPending !== null) {
181
- // New page rendering is pending
182
- this.renderPage(selfPdfDocument.pageNumPending);
183
- selfPdfDocument.pageNumPending = null;
184
- }
185
- });
186
- });
187
- }
188
- showBase64Pdf(result) {
189
- this.base64 = result.base64;
190
- this.download();
191
- }
192
- deleteButtons(doc) {
193
- const buttons = doc.querySelectorAll('button');
194
- for (let i = 0; i < buttons.length; i++) {
195
- buttons[i].style.display = 'none';
196
- }
197
- }
198
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PdfGeneratorComponent, deps: [{ token: i1.DomSanitizer }, { token: i2.DataFormService }, { token: i3.ApplicationService }, { token: i4.PppService }, { token: i5.CommonService }, { token: i6.PliCnfLookAndFeelService }, { token: i7.PliCnfHeaderService }, { token: i0.ComponentFactoryResolver }, { token: i8.ActivatedRoute }, { token: i9.FormService }, { token: i10.PliCnfPdfsService }, { token: i7.PliCnfHeaderService }, { token: i11.TokenTransformationService }], target: i0.ɵɵFactoryTarget.Component }); }
199
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PdfGeneratorComponent, selector: "pli-pdf-generator", inputs: { configurations: "configurations", applicationId: "applicationId", showLabel: "showLabel", actionClass: "actionClass", promCode: "promCode" }, outputs: { onDownload: "onDownload" }, host: { listeners: { "click": "onClick($event)" } }, viewQueries: [{ propertyName: "contentElement", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<div #content id=\"content\" class=\"main-content\" [class.main-content--show]=\"display\">\r\n\t<div class=\"header\">\r\n\t\t<div class=\"header-item\">\r\n\t\t\t<img [src]=\"urlLogo\" alt=\"logo\" class=\"img-logo\" />\r\n\t\t</div>\r\n\t\t<div class=\"header-item\">\r\n\t\t\t<div [innerHTML]=\"headerHtml\"></div>\r\n\t\t</div>\r\n\t</div>\r\n\t<div *ngFor=\"let f of dataForms; index as i\">\r\n\t\t<formio [form]=\"forms[i]\" [submission]=\"dataForms[i]\"></formio>\r\n\t\t<div class=\"html2pdf__page-break\"></div>\r\n\t</div>\r\n\t<div [innerHTML]=\"footerHtml\"></div>\r\n</div>\r\n<div class=\"btn btn-default\">\r\n\t<button type=\"button\" class=\"fa fa-file-pdf btn-sm\" (click)=\"menu.toggle($event)\" title=\"PDF\">\r\n\t\t{{ showLabel ? 'Generar PDF' : '' }}\r\n\t</button>\r\n</div>\r\n<p-tieredMenu #menu [model]=\"items\" appendTo=\"body\" [popup]=\"true\"></p-tieredMenu>\r\n", styles: ["@charset \"UTF-8\";@import\"https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700\";@import\"https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700&display=swap\";.text-menu,a.help_menu,a.letter,.mat-drawer-inner-container .mat-list-base .mat-list-item{color:#000;height:auto!important;padding:.3em 0;margin-bottom:0;border-left:0;font-size:15px;font-weight:300;line-height:17px;font-family:Roboto,sans-serif;min-height:20px!important}.text-menu:hover,a.help_menu:hover,a.letter:hover,.mat-drawer-inner-container .mat-list-base .mat-list-item:hover{color:#00a5e6!important;background-color:transparent}.text-menu:focus,a.help_menu:focus,a.letter:focus,.mat-drawer-inner-container .mat-list-base .mat-list-item:focus{color:#fff;background-color:#da291c}body{margin:auto;display:block;max-width:1280px;background-color:#fafafa}.sin-padding{padding:0!important}.mat-toolbar-single-row{height:72px!important}.mat-drawer-content{position:relative}.img-logo{max-width:100%}.card p{color:#666;font-size:16px;font-weight:300;line-height:22px;font-family:Roboto,sans-serif;margin-top:0;margin-bottom:15px}.mat-drawer-inner-container .mat-list-base{border:1px solid #cccccc;margin-top:20px;padding-top:0!important;padding-bottom:15px;background-color:#f7f7f7;cursor:auto}.mat-toolbar.mat-primary{border-bottom:2px solid #da291c!important}.mat-toolbar.mat-primary .button-close-session{background-color:transparent}mat-toolbar.mat-toolbar{margin-bottom:0!important}.mat-drawer-side{border-right:0}#list-home{margin-bottom:0!important}.formio-form{padding:0 15px}mat-toolbar.mat-toolbar,.mat-drawer{position:relative!important}.mat-toolbar{background-color:transparent}.mat-toolbar.header--light{padding:0}.mat-toolbar h3{width:100%;display:block;font-size:27px;font-weight:400;font-family:Roboto,sans-serif;margin-top:0;margin-bottom:0;padding-bottom:6px;border-bottom:1px solid #cccccc}mat-toolbar.mat-toolbar{box-shadow:none;margin-bottom:0}.mat-drawer-container{background-color:#fff}.mat-sidenav-content,.mat-drawer-inner-container{padding-top:0}.mat-drawer.mat-drawer-side{float:left}.button-close-session{position:absolute!important;right:5px;height:40px;color:#fff;border-radius:0;border-left:1px solid #bbb}.button-close-session:before{content:\"\";width:25px;height:22px;position:absolute;background-image:url(http://apps.colfuturo.org/PLIS/plantilla/img/otrocerrar.png)}.button-close-session:hover{color:#fff}.button-close-session:hover:before{background-image:url(http://apps.colfuturo.org/PLIS/plantilla/img/otrocerrar.png)}.card{border:0!important;border-bottom:1px solid #ccc!important;background-color:#fff;border-radius:0}.card .card-header{padding:0;border-bottom:0;background-color:#fff}.card h4.card-title{font-size:19px;font-family:Roboto,sans-serif;font-weight:400;margin-top:5px;margin-bottom:5px!important}.card .card-body{padding:.3rem 15px}.stats h4.panel-title{font-size:15px}.stats label.control-label--hidden{display:none}.stats.required h4.panel-title{position:relative}.stats.required h4.panel-title:after{content:\"*\";color:#da291c;margin-right:.5em;height:30px}.card.No_border{border-bottom:0!important}.mat-drawer-inner-container .mat-list-base{margin-top:0;padding-bottom:0}.menu .mat-list-item.active:hover{background-color:#da291c!important;color:#fff!important}.menu .mat-list-item.active:hover .mat-list-item-content{color:#fff!important}a.letter{display:block;padding-left:10px;margin-top:10px}a.letter:hover{text-decoration:none;background-color:transparent!important;color:#00a5e6!important}a.letter img{margin-right:.3em}a.help_menu{display:block;padding-left:10px;margin-top:5px}a.help_menu img{margin-right:.3em}a.help_menu:hover{text-decoration:none}a.mat-list-item.letter.active,a.mat-list-item.help_menu.active{color:#da291c!important;background-color:transparent}.mat-drawer.mat-drawer-end{position:fixed!important}.mat-drawer-inner-container .mat-list-base .mat-list-item .mat-list-item-content{padding-right:0!important}.send .mat-list-item-content{padding-left:0!important}label{color:#333;font-size:14px;font-weight:300;font-family:Roboto,sans-serif;margin-bottom:0;position:relative}label i.fa-question-circle{position:relative;left:2px}label.control-label--hidden:after{position:absolute;right:inherit;left:0;font-size:15px;line-height:13px}.no_label label.control-label--hidden{position:relative;right:inherit;left:0;float:left;width:15px;height:10px;margin-right:inherit!important}.no_label input[type=text]{width:90%}.no_label div.choices{margin-left:15px}.form-group{margin-bottom:8px;margin-top:8px}.form-group .form-control{height:22px;font-size:14px;font-weight:300;font-family:Roboto,sans-serif;padding:4px;border-radius:0!important}.form-group textarea.form-control{min-height:50px;height:auto!important}.form-group select.form-control{height:22px;line-height:22px;padding:0}.form-group .choices.form-group.formio-choices .form-control{padding:0 10px}.form-group .button-copy{color:#08c;font-size:15px;font-weight:400;padding:0}.n_margin .form-group,.form-group.formio-choices{margin-top:0;margin-bottom:0}.n_padding,.n_padding_card .card-body{padding:0}.form-control[readonly]{background-color:#f5f5f5}.form-control:disabled{background-color:transparent!important;border:0!important}input{border:1px solid #CCCCCC;line-height:1;font-family:Roboto,sans-serif}textarea:focus,input:focus{box-shadow:0 0 0 .1rem #8daee5!important;border-color:#8daee5!important;background-color:#fff6de!important}.sidenav{width:230px}.btn{padding:3px 10px!important;font-size:14px!important;font-weight:400!important;font-family:Roboto,sans-serif!important;min-width:initial;width:auto;border-radius:0!important}.btn:focus{box-shadow:none}.btn-info,.btn-info:hover{background-color:#08c;border:0;background-image:none!important}.btn-success,.btn-primary{border:0;border-radius:0;background-image:none}.btn-success:hover,.btn-primary:hover{border:0!important;background-image:none;background-color:#d20000}.btn-primary{background-color:#08c}.editgrid-add .btn{width:23px;height:23px;border-radius:50%!important;font-size:20px!important;line-height:1px;font-weight:400!important;border:2px solid #449d44;color:#449d44;background-color:transparent;text-align:center;padding:2px!important;transition:all .3s}.editgrid-add .btn:hover,.editgrid-add .btn:active{background-color:#449d44;color:#fff;box-shadow:none!important;border:1px solid #FFF!important}.editgrid-listgroup .list-group-header{background-color:#e3e3e3!important;border-radius:0!important}.editgrid-listgroup .list-group-header div{border-left:1px solid #fff;border-right:1px solid #fff;font-family:Roboto Condensed,sans-serif;font-weight:300;font-size:14px}.editgrid-listgroup .list-group-header:nth-child(1){border-right:0}.editgrid-listgroup .list-group-item{border:0;position:relative;padding:0 5px!important;background-color:transparent}.editgrid-listgroup .list-group-item small{font-size:14px;font-weight:300}.editgrid-listgroup .list-group-item small strong{font-weight:300!important}.editgrid-listgroup .list-group-item .btn-group.pull-right button{background-color:transparent;background-image:none;position:relative;padding:3px 0;border:0;color:#fff}.editgrid-listgroup .list-group-item .btn-group.pull-right button.editRow{left:-5px;width:35px}.editgrid-listgroup .list-group-item .btn-group.pull-right button.editRow:before{content:\"\";position:absolute;width:14px;height:14px;background-size:cover;background-image:url(http://apps.colfuturo.org/PLIS/plantilla/img/lapiz.png)}.editgrid-listgroup .list-group-item .btn-group.pull-right button.removeRow:before{width:14px;height:14px;content:\"\";position:absolute;background-size:cover;background-image:url(http://apps.colfuturo.org/PLIS/img/delete_h.png)}.editgrid-listgroup .list-group-item .btn-group.pull-right button.removeRow:hover:before{background-image:url(http://apps.colfuturo.org/PLIS/img/delete.png)}.editgrid-listgroup .list-group-item .right_edit{position:absolute;right:0}.editgrid-listgroup .editgrid-actions{margin-top:8px;margin-bottom:8px}.editgrid-listgroup .editgrid-actions .btn-primary{border:0px;padding:.375rem .75rem;font-size:.8125rem;background-image:none;background-color:#08c}.editgrid-listgroup .editgrid-actions .btn-primary:hover{border:1px solid #016293;background-image:none;background-color:#016293}.global-footer .container{padding:15px;margin-top:0;background-color:#e3e3e3}.global-footer .container p{font-size:15px;text-align:left;margin-bottom:0}button .fa{display:none}button.btn.btn-success{margin:0;font-size:16px!important;padding:5px 20px!important;background-color:#449d44}.fwwb-active{background:#4796d6;color:#fff!important}.toast{opacity:1!important}.toast-success{background-color:#51a351!important}.toast-error{background-color:#bd362f!important}.toast-info{background-color:#2f96b4!important}.toast-warning{background-color:#f89406!important}.has-error.alert-danger .checkbox,.has-error.alert-danger .checkbox-inline,.has-error.alert-danger .control-label,.has-error.alert-danger .help-block,.has-error.alert-danger .radio,.has-error.alert-danger .radio-inline,.has-error.alert-danger.checkbox label,.has-error.alert-danger.checkbox-inline label,.has-error.alert-danger.radio label,.has-error.alert-danger.radio-inline label{color:#ed1d24!important}.choices__list--single .choices__item span{white-space:nowrap}.editgrid-listgroup .editgrid-actions .btn-danger{background-color:#da291c;border:1px solid #da291c;transition:all .3s;text-transform:none!important}.editgrid-listgroup .editgrid-actions .btn-danger:hover{background-color:#981d14;color:#fff}p.Alert{color:#da291c}.editgrid-body{padding:10px 0}.choices__list--single .choices__item{overflow:hidden}.checkbox-inline label,.radio-inline label{font-weight:300!important}.sin-p{padding:0!important}.n_p-right .col-sm-2,.n_p-right .col-sm-7,.n_p-right .col-sm-5,.n_p-right .col-sm-6{padding-right:0!important}.n_p .col-xs-5{padding:0!important}.choices[data-type*=select-one] .choices__button{margin-right:1px!important;background:#fff;opacity:1!important;width:15px!important}.choices[data-type*=select-one]:after{right:5px!important}.Label-left .form-check.radio{float:left;margin:0 .3em}.has-feedback .form-control{padding-right:5px!important}.tooltip-inner{text-align:left!important;background-color:#6d6d6d;color:#fff!important;max-width:300px;min-width:150px;padding:.6em;font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol;font-size:.7109375rem}.alert-danger{background-color:#fffcf8;border:0!important;padding:1em 0}.alert-danger p{font-size:13px;margin-bottom:0;margin-top:1em}.card p{font-size:13px}.was-validated .form-control:invalid,.form-control.is-invalid{background-image:none}.editgrid-listgroup .list-group-header div,.editgrid-listgroup .list-group-header div:first-child{border-left:0!important}.editgrid-listgroup .list-group-header div:last-child{border-right:0!important}.editgrid-listgroup .list-group-item{padding:0 5px}.Ensayo label:after,.required_label label:after,.N_Left label:after{right:-10px}.list-group-item div{font-weight:300;font-family:Roboto,sans-serif;font-size:14px;color:#333}.list-group-item .body_table div{padding-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.help-block{color:#ed1d24!important;clear:both}.editgrid-listgroup .editgrid-actions .btn-danger{background-color:#da291c;color:#fff;border:1px solid #f5f5f5;background-image:none}.editgrid-listgroup .editgrid-actions .btn-danger:hover{background-color:#971b12}.editgrid-listgroup.bloque_laboral{width:55%!important}.cortado .form-group .form-check{float:left;width:50%!important;padding:0 1em}.btn-group.pull-right{padding:0!important}.editgrid-edit{width:980px}.choices__list--dropdown{width:auto!important}.choices__list--dropdown .choices__item{font-weight:300!important;font-weight:13px!important;padding:4px 10px!important;font-family:Roboto Condensed,sans-serif}.Phone input{width:55%!important}.date_full-1 .input-group{width:65%!important}.date_full-2 .input-group{width:60%!important}.date_full-3 .input-group{width:47%!important}button.btn.btn-default.editRow,button.btn.btn-danger.removeRow{padding-right:0!important;padding-left:0!important}.Statistics .form-group .form-group{padding:0 17px}.row_2{margin-left:-15px}.mat-tab-label{min-width:120px}.mat-toolbar.mat-primary button.mat-icon-button{display:none}p{font-size:14px;font-weight:300;font-family:Roboto,sans-serif}.margin_bottom{margin-bottom:20px;margin-top:20px}.p-10{padding:10px!important}.pl-30{padding-left:30px!important}.mat-card-header .mat-card-header-text{margin:0!important}input[type=radio],input[type=checkbox]{box-shadow:none!important;border-color:transparent!important}.choices__list--dropdown{word-break:normal!important}.field-required:after{font-size:12px;position:relative;left:2px}.form-group .choices.form-group.formio-choices .form-control{overflow:hidden}.formio-component-submit{padding-left:15px}.date .input-group input.form-control{margin-right:0}.input-group-addon{float:right;width:30px}.input-group-addon .glyphicon{width:16px;height:16px;position:absolute;right:7px;top:3px;background-size:cover;background-repeat:no-repeat}.input-group-addon .glyphicon-calendar{background-image:url(http://apps.colfuturo.org/PLIS/img/calendar.svg)}.numInputWrapper span{opacity:1!important}.flatpickr-current-month .numInputWrapper{width:60px!important}.flatpickr-months .flatpickr-month{height:39px!important}.n_margin-to,.mt-0{margin-top:0!important}.group-item label{font-weight:300;font-family:Roboto,sans-serif;font-size:14px;color:#333;float:left;margin-right:1em}.group-item{float:left;margin-right:.4em;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:-o-flex;display:flex}.mat-card,.mat-elevation-z8{box-shadow:none!important}.relative{position:relative}mat-card-content h4{margin-bottom:1.5rem}.mat-select-panel .mat-option{height:20px!important}.mat-select-arrow{border-top:5px solid #757575!important}input.mat-input-element{font-family:Roboto,sans-serif;font-weight:300;font-size:14px}.mat-form-field-hide-placeholder .mat-select-placeholder{color:#666!important;-webkit-text-fill-color:#666!important}.mat-vertical-stepper-header{height:auto!important;padding:8px 24px!important;margin-top:5px}.mat-vertical-content{padding:5px 25px 0!important}.mat-form-field{margin-right:1em!important}.mat-form-field-infix{margin-top:0;border:1px solid #bbb;width:auto!important;height:22px;line-height:22px;padding:0!important;min-width:55px!important}.mat-select-value{padding:0 3px;overflow:visible!important;font-size:14px;color:#7a7a7a;font-weight:300}table.ng-star-inserted th,table.ng-star-inserted td{vertical-align:top!important;padding:10px 15px 0 0;font-weight:300;font-family:Roboto,sans-serif;font-size:14px;color:#666}table.ng-star-inserted .subcategory{padding-right:15px;width:130px}table.ng-star-inserted .select-repeat,table.ng-star-inserted .mat-form-field.input-money{margin-right:0!important}table.summary .last{border-left:1px solid #ccc}table.summary tr:last-child .last{border-left:1px solid #fff}.select-currency{margin-bottom:.3em}.mat-icon-button{padding:0 0 0 1em!important;width:auto!important;height:20px!important;line-height:20px!important}.inner{overflow-x:scroll;margin-left:124px;margin-right:170px}.presupuesto_detalle .table thead th{border-bottom:0px solid transparent!important;border-left:1px solid #ccc}.presupuesto_detalle .table tbody tr.Last th{border-right:1px solid white!important;background-color:#cacaca!important}.presupuesto_detalle .table tbody tr.Last th.Last{border-left:1px solid white}.presupuesto_detalle .table tbody tr:hover .col1{color:#00a5e6!important}.col1,.col2{position:absolute;top:auto}.col1{width:125px;left:0;font-weight:400!important;border-right:1px solid #ccc;border-left:0!important}.col2{min-width:85px!important;font-weight:700!important;text-align:right;border-left:1px solid #ccc}.tabla_fija .mat-tab-body-wrapper,.mat-tab-body-content{overflow:visible!important;height:auto!important}.mat-tab-body.mat-tab-body-active{overflow-y:inherit!important}.mat-form-field-appearance-legacy .mat-form-field-underline{height:0!important}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-empty.mat-form-field-label{display:none!important}input.mat-input-element{padding-right:5px}.mat-step-header .mat-step-icon-state-edit{background:#00aa1a!important}.mat-tab-label{height:40px!important;min-width:90px!important}.mat-tab-label .mat-tab-label-content{font-size:17px;font-weight:400}.mat-raised-button.mat-primary{padding:5px 20px!important;font-size:16px!important;background-color:#449d44}.mat-flat-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{background:#08c}.mat-flat-button.mat-primary:hover,.mat-raised-button.mat-primary:hover,.mat-fab.mat-primary:hover,.mat-mini-fab.mat-primary:hover{background-color:#d20000}.mat-raised-button{min-width:inherit!important;padding:0 10px!important;line-height:27px!important;border-radius:0!important;margin-top:20px!important}.mat-raised-button:not([class*=mat-elevation-z]){box-shadow:none!important}.table th{font-weight:300}.mat-stroked-button:not([class*=mat-elevation-z]),.mat-flat-button:not([class*=mat-elevation-z]){box-shadow:none;border-radius:0;line-height:27px;padding:0 10px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{height:auto!important;margin-bottom:10px}.mat-list-base{padding-top:0!important}mat-icon.add,button.add span{color:#449d44}button.remove{color:#da291c}.icon-hover{display:none!important}.icon-with-hover:hover .icon-hover{display:inline!important}.icon-with-hover:hover .icon-active{display:none}mat-icon.edit{color:#f3ab46}tr.mat-header-row{height:35px!important}.mat-header-cell{font-size:14px;font-weight:300}.mat-radio-container,.mat-radio-outer-circle,.mat-radio-inner-circle{height:12px!important;width:12px!important}.mat-radio-outer-circle{border-width:1px!important}.mat-radio-outer-circle{border-color:#a8a8a8!important;background-color:#dedede}.mat-radio-button:not(.mat-radio-disabled).cdk-focused .mat-radio-persistent-ripple{opacity:0!important}.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#666!important}mat-radio-group{display:inline-block!important}mat-radio-button{margin:0 10px 5px!important}.mat-icon{background-color:#fff}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:.35em}.mat-form-field-appearance-legacy .mat-form-field-underline{display:none!important}input.mat-input-element{padding-left:5px}.mat-step-icon .mat-icon,.mat-step-icon-content{transform:translate(-45%,-53%)!important}.mat-step-header .mat-step-icon{background:#aaa;position:relative;z-index:2}.mat-step-label{font-size:19px!important;line-height:26px;font-family:Roboto Condensed,sans-serif;font-weight:400}.letter .mat-form-field{margin-right:0;min-width:210px}.btn-info{transition:all .3s}.btn-info span{color:#fff}.btn-info:hover{cursor:pointer;background-color:#d20000}.btn-info:disabled{background-color:#ccc!important;border-color:#ccc!important}.mat-standard-chip{padding:0!important;background-color:#fff!important;justify-content:center;width:100%}.mat-standard-chip:hover:after{background:transparent!important}.mat-select-panel{min-width:calc(100% + 10px)!important}.mat-button-focus-overlay{background-color:transparent!important}button.delete:focus{outline:0}.mat-step-header .mat-step-icon-selected{background-color:#da291c!important}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button{margin:0!important}.mat-card>.mat-card-actions:last-child{margin-bottom:0!important}@media screen and (max-width: 1260px){.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.col-auto,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm,.col-sm-auto,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md,.col-md-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg,.col-lg-auto,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl,.col-xl-auto{padding-right:5px}.Form_2{margin:20px 4px!important}}@media screen and (max-width: 1250px){label{font-size:13px!important}}@media screen and (max-width: 1220px){.mat-drawer.sidenav{position:absolute!important}.row.formio-component{margin-left:0;margin-right:0}.card .card-header h4.card-title{text-align:center}.card .card-body{padding:.3rem 0!important}label{width:100%!important;margin:.3em 1em .3em 0!important}label:after{position:relative}.form-group .form-control,.form-group .input-group{margin-left:0!important;margin-right:0!important;width:100%!important}.formio-choices.form-group{float:left;margin-left:0!important;margin-top:0!important}.mat-toolbar-row,.mat-toolbar-single-row{height:75px!important}.col{padding-left:5px!important;padding-right:5px!important}.block .row{display:block}.mat-toolbar.mat-primary button.mat-icon-button{display:block;margin-right:2em}.no_label label.control-label--hidden{width:auto!important;margin-right:1em!important}.hidden-responsive{display:none}}@media screen and (max-width: 991px){.col{flex:100%!important;max-width:inherit!important;padding-left:0!important;padding-right:0!important}.form-group .input-group{width:40%!important}.mat-toolbar.mat-primary .button-close-session{width:40px}.row_2{margin-left:0}.mat-vertical-content{padding:5px 5px 0!important}.mat-vertical-content{overflow:hidden}}.main-content{position:fixed;z-index:-1;overflow:visible;display:none;opacity:0;margin-top:10px;margin-bottom:10px;text-align:left!important}.main-content--show{top:0;left:0;display:block}.main-content hr{display:block;border-style:inset;border-width:1px;color:red}.header{display:flex;align-items:stretch}.header-item{margin:0 5px}button.fa-file-pdf{font-size:2em}\n"], dependencies: [{ kind: "directive", type: i12.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i13.FormioComponent, selector: "formio" }, { kind: "component", type: i14.TieredMenu, selector: "p-tieredMenu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "autoDisplay", "showTransitionOptions", "hideTransitionOptions", "id", "ariaLabel", "ariaLabelledBy", "disabled", "tabindex"], outputs: ["onShow", "onHide"] }] }); }
200
- }
201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PdfGeneratorComponent, decorators: [{
202
- type: Component,
203
- args: [{ selector: 'pli-pdf-generator', template: "<div #content id=\"content\" class=\"main-content\" [class.main-content--show]=\"display\">\r\n\t<div class=\"header\">\r\n\t\t<div class=\"header-item\">\r\n\t\t\t<img [src]=\"urlLogo\" alt=\"logo\" class=\"img-logo\" />\r\n\t\t</div>\r\n\t\t<div class=\"header-item\">\r\n\t\t\t<div [innerHTML]=\"headerHtml\"></div>\r\n\t\t</div>\r\n\t</div>\r\n\t<div *ngFor=\"let f of dataForms; index as i\">\r\n\t\t<formio [form]=\"forms[i]\" [submission]=\"dataForms[i]\"></formio>\r\n\t\t<div class=\"html2pdf__page-break\"></div>\r\n\t</div>\r\n\t<div [innerHTML]=\"footerHtml\"></div>\r\n</div>\r\n<div class=\"btn btn-default\">\r\n\t<button type=\"button\" class=\"fa fa-file-pdf btn-sm\" (click)=\"menu.toggle($event)\" title=\"PDF\">\r\n\t\t{{ showLabel ? 'Generar PDF' : '' }}\r\n\t</button>\r\n</div>\r\n<p-tieredMenu #menu [model]=\"items\" appendTo=\"body\" [popup]=\"true\"></p-tieredMenu>\r\n", styles: ["@charset \"UTF-8\";@import\"https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700\";@import\"https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700&display=swap\";.text-menu,a.help_menu,a.letter,.mat-drawer-inner-container .mat-list-base .mat-list-item{color:#000;height:auto!important;padding:.3em 0;margin-bottom:0;border-left:0;font-size:15px;font-weight:300;line-height:17px;font-family:Roboto,sans-serif;min-height:20px!important}.text-menu:hover,a.help_menu:hover,a.letter:hover,.mat-drawer-inner-container .mat-list-base .mat-list-item:hover{color:#00a5e6!important;background-color:transparent}.text-menu:focus,a.help_menu:focus,a.letter:focus,.mat-drawer-inner-container .mat-list-base .mat-list-item:focus{color:#fff;background-color:#da291c}body{margin:auto;display:block;max-width:1280px;background-color:#fafafa}.sin-padding{padding:0!important}.mat-toolbar-single-row{height:72px!important}.mat-drawer-content{position:relative}.img-logo{max-width:100%}.card p{color:#666;font-size:16px;font-weight:300;line-height:22px;font-family:Roboto,sans-serif;margin-top:0;margin-bottom:15px}.mat-drawer-inner-container .mat-list-base{border:1px solid #cccccc;margin-top:20px;padding-top:0!important;padding-bottom:15px;background-color:#f7f7f7;cursor:auto}.mat-toolbar.mat-primary{border-bottom:2px solid #da291c!important}.mat-toolbar.mat-primary .button-close-session{background-color:transparent}mat-toolbar.mat-toolbar{margin-bottom:0!important}.mat-drawer-side{border-right:0}#list-home{margin-bottom:0!important}.formio-form{padding:0 15px}mat-toolbar.mat-toolbar,.mat-drawer{position:relative!important}.mat-toolbar{background-color:transparent}.mat-toolbar.header--light{padding:0}.mat-toolbar h3{width:100%;display:block;font-size:27px;font-weight:400;font-family:Roboto,sans-serif;margin-top:0;margin-bottom:0;padding-bottom:6px;border-bottom:1px solid #cccccc}mat-toolbar.mat-toolbar{box-shadow:none;margin-bottom:0}.mat-drawer-container{background-color:#fff}.mat-sidenav-content,.mat-drawer-inner-container{padding-top:0}.mat-drawer.mat-drawer-side{float:left}.button-close-session{position:absolute!important;right:5px;height:40px;color:#fff;border-radius:0;border-left:1px solid #bbb}.button-close-session:before{content:\"\";width:25px;height:22px;position:absolute;background-image:url(http://apps.colfuturo.org/PLIS/plantilla/img/otrocerrar.png)}.button-close-session:hover{color:#fff}.button-close-session:hover:before{background-image:url(http://apps.colfuturo.org/PLIS/plantilla/img/otrocerrar.png)}.card{border:0!important;border-bottom:1px solid #ccc!important;background-color:#fff;border-radius:0}.card .card-header{padding:0;border-bottom:0;background-color:#fff}.card h4.card-title{font-size:19px;font-family:Roboto,sans-serif;font-weight:400;margin-top:5px;margin-bottom:5px!important}.card .card-body{padding:.3rem 15px}.stats h4.panel-title{font-size:15px}.stats label.control-label--hidden{display:none}.stats.required h4.panel-title{position:relative}.stats.required h4.panel-title:after{content:\"*\";color:#da291c;margin-right:.5em;height:30px}.card.No_border{border-bottom:0!important}.mat-drawer-inner-container .mat-list-base{margin-top:0;padding-bottom:0}.menu .mat-list-item.active:hover{background-color:#da291c!important;color:#fff!important}.menu .mat-list-item.active:hover .mat-list-item-content{color:#fff!important}a.letter{display:block;padding-left:10px;margin-top:10px}a.letter:hover{text-decoration:none;background-color:transparent!important;color:#00a5e6!important}a.letter img{margin-right:.3em}a.help_menu{display:block;padding-left:10px;margin-top:5px}a.help_menu img{margin-right:.3em}a.help_menu:hover{text-decoration:none}a.mat-list-item.letter.active,a.mat-list-item.help_menu.active{color:#da291c!important;background-color:transparent}.mat-drawer.mat-drawer-end{position:fixed!important}.mat-drawer-inner-container .mat-list-base .mat-list-item .mat-list-item-content{padding-right:0!important}.send .mat-list-item-content{padding-left:0!important}label{color:#333;font-size:14px;font-weight:300;font-family:Roboto,sans-serif;margin-bottom:0;position:relative}label i.fa-question-circle{position:relative;left:2px}label.control-label--hidden:after{position:absolute;right:inherit;left:0;font-size:15px;line-height:13px}.no_label label.control-label--hidden{position:relative;right:inherit;left:0;float:left;width:15px;height:10px;margin-right:inherit!important}.no_label input[type=text]{width:90%}.no_label div.choices{margin-left:15px}.form-group{margin-bottom:8px;margin-top:8px}.form-group .form-control{height:22px;font-size:14px;font-weight:300;font-family:Roboto,sans-serif;padding:4px;border-radius:0!important}.form-group textarea.form-control{min-height:50px;height:auto!important}.form-group select.form-control{height:22px;line-height:22px;padding:0}.form-group .choices.form-group.formio-choices .form-control{padding:0 10px}.form-group .button-copy{color:#08c;font-size:15px;font-weight:400;padding:0}.n_margin .form-group,.form-group.formio-choices{margin-top:0;margin-bottom:0}.n_padding,.n_padding_card .card-body{padding:0}.form-control[readonly]{background-color:#f5f5f5}.form-control:disabled{background-color:transparent!important;border:0!important}input{border:1px solid #CCCCCC;line-height:1;font-family:Roboto,sans-serif}textarea:focus,input:focus{box-shadow:0 0 0 .1rem #8daee5!important;border-color:#8daee5!important;background-color:#fff6de!important}.sidenav{width:230px}.btn{padding:3px 10px!important;font-size:14px!important;font-weight:400!important;font-family:Roboto,sans-serif!important;min-width:initial;width:auto;border-radius:0!important}.btn:focus{box-shadow:none}.btn-info,.btn-info:hover{background-color:#08c;border:0;background-image:none!important}.btn-success,.btn-primary{border:0;border-radius:0;background-image:none}.btn-success:hover,.btn-primary:hover{border:0!important;background-image:none;background-color:#d20000}.btn-primary{background-color:#08c}.editgrid-add .btn{width:23px;height:23px;border-radius:50%!important;font-size:20px!important;line-height:1px;font-weight:400!important;border:2px solid #449d44;color:#449d44;background-color:transparent;text-align:center;padding:2px!important;transition:all .3s}.editgrid-add .btn:hover,.editgrid-add .btn:active{background-color:#449d44;color:#fff;box-shadow:none!important;border:1px solid #FFF!important}.editgrid-listgroup .list-group-header{background-color:#e3e3e3!important;border-radius:0!important}.editgrid-listgroup .list-group-header div{border-left:1px solid #fff;border-right:1px solid #fff;font-family:Roboto Condensed,sans-serif;font-weight:300;font-size:14px}.editgrid-listgroup .list-group-header:nth-child(1){border-right:0}.editgrid-listgroup .list-group-item{border:0;position:relative;padding:0 5px!important;background-color:transparent}.editgrid-listgroup .list-group-item small{font-size:14px;font-weight:300}.editgrid-listgroup .list-group-item small strong{font-weight:300!important}.editgrid-listgroup .list-group-item .btn-group.pull-right button{background-color:transparent;background-image:none;position:relative;padding:3px 0;border:0;color:#fff}.editgrid-listgroup .list-group-item .btn-group.pull-right button.editRow{left:-5px;width:35px}.editgrid-listgroup .list-group-item .btn-group.pull-right button.editRow:before{content:\"\";position:absolute;width:14px;height:14px;background-size:cover;background-image:url(http://apps.colfuturo.org/PLIS/plantilla/img/lapiz.png)}.editgrid-listgroup .list-group-item .btn-group.pull-right button.removeRow:before{width:14px;height:14px;content:\"\";position:absolute;background-size:cover;background-image:url(http://apps.colfuturo.org/PLIS/img/delete_h.png)}.editgrid-listgroup .list-group-item .btn-group.pull-right button.removeRow:hover:before{background-image:url(http://apps.colfuturo.org/PLIS/img/delete.png)}.editgrid-listgroup .list-group-item .right_edit{position:absolute;right:0}.editgrid-listgroup .editgrid-actions{margin-top:8px;margin-bottom:8px}.editgrid-listgroup .editgrid-actions .btn-primary{border:0px;padding:.375rem .75rem;font-size:.8125rem;background-image:none;background-color:#08c}.editgrid-listgroup .editgrid-actions .btn-primary:hover{border:1px solid #016293;background-image:none;background-color:#016293}.global-footer .container{padding:15px;margin-top:0;background-color:#e3e3e3}.global-footer .container p{font-size:15px;text-align:left;margin-bottom:0}button .fa{display:none}button.btn.btn-success{margin:0;font-size:16px!important;padding:5px 20px!important;background-color:#449d44}.fwwb-active{background:#4796d6;color:#fff!important}.toast{opacity:1!important}.toast-success{background-color:#51a351!important}.toast-error{background-color:#bd362f!important}.toast-info{background-color:#2f96b4!important}.toast-warning{background-color:#f89406!important}.has-error.alert-danger .checkbox,.has-error.alert-danger .checkbox-inline,.has-error.alert-danger .control-label,.has-error.alert-danger .help-block,.has-error.alert-danger .radio,.has-error.alert-danger .radio-inline,.has-error.alert-danger.checkbox label,.has-error.alert-danger.checkbox-inline label,.has-error.alert-danger.radio label,.has-error.alert-danger.radio-inline label{color:#ed1d24!important}.choices__list--single .choices__item span{white-space:nowrap}.editgrid-listgroup .editgrid-actions .btn-danger{background-color:#da291c;border:1px solid #da291c;transition:all .3s;text-transform:none!important}.editgrid-listgroup .editgrid-actions .btn-danger:hover{background-color:#981d14;color:#fff}p.Alert{color:#da291c}.editgrid-body{padding:10px 0}.choices__list--single .choices__item{overflow:hidden}.checkbox-inline label,.radio-inline label{font-weight:300!important}.sin-p{padding:0!important}.n_p-right .col-sm-2,.n_p-right .col-sm-7,.n_p-right .col-sm-5,.n_p-right .col-sm-6{padding-right:0!important}.n_p .col-xs-5{padding:0!important}.choices[data-type*=select-one] .choices__button{margin-right:1px!important;background:#fff;opacity:1!important;width:15px!important}.choices[data-type*=select-one]:after{right:5px!important}.Label-left .form-check.radio{float:left;margin:0 .3em}.has-feedback .form-control{padding-right:5px!important}.tooltip-inner{text-align:left!important;background-color:#6d6d6d;color:#fff!important;max-width:300px;min-width:150px;padding:.6em;font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol;font-size:.7109375rem}.alert-danger{background-color:#fffcf8;border:0!important;padding:1em 0}.alert-danger p{font-size:13px;margin-bottom:0;margin-top:1em}.card p{font-size:13px}.was-validated .form-control:invalid,.form-control.is-invalid{background-image:none}.editgrid-listgroup .list-group-header div,.editgrid-listgroup .list-group-header div:first-child{border-left:0!important}.editgrid-listgroup .list-group-header div:last-child{border-right:0!important}.editgrid-listgroup .list-group-item{padding:0 5px}.Ensayo label:after,.required_label label:after,.N_Left label:after{right:-10px}.list-group-item div{font-weight:300;font-family:Roboto,sans-serif;font-size:14px;color:#333}.list-group-item .body_table div{padding-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.help-block{color:#ed1d24!important;clear:both}.editgrid-listgroup .editgrid-actions .btn-danger{background-color:#da291c;color:#fff;border:1px solid #f5f5f5;background-image:none}.editgrid-listgroup .editgrid-actions .btn-danger:hover{background-color:#971b12}.editgrid-listgroup.bloque_laboral{width:55%!important}.cortado .form-group .form-check{float:left;width:50%!important;padding:0 1em}.btn-group.pull-right{padding:0!important}.editgrid-edit{width:980px}.choices__list--dropdown{width:auto!important}.choices__list--dropdown .choices__item{font-weight:300!important;font-weight:13px!important;padding:4px 10px!important;font-family:Roboto Condensed,sans-serif}.Phone input{width:55%!important}.date_full-1 .input-group{width:65%!important}.date_full-2 .input-group{width:60%!important}.date_full-3 .input-group{width:47%!important}button.btn.btn-default.editRow,button.btn.btn-danger.removeRow{padding-right:0!important;padding-left:0!important}.Statistics .form-group .form-group{padding:0 17px}.row_2{margin-left:-15px}.mat-tab-label{min-width:120px}.mat-toolbar.mat-primary button.mat-icon-button{display:none}p{font-size:14px;font-weight:300;font-family:Roboto,sans-serif}.margin_bottom{margin-bottom:20px;margin-top:20px}.p-10{padding:10px!important}.pl-30{padding-left:30px!important}.mat-card-header .mat-card-header-text{margin:0!important}input[type=radio],input[type=checkbox]{box-shadow:none!important;border-color:transparent!important}.choices__list--dropdown{word-break:normal!important}.field-required:after{font-size:12px;position:relative;left:2px}.form-group .choices.form-group.formio-choices .form-control{overflow:hidden}.formio-component-submit{padding-left:15px}.date .input-group input.form-control{margin-right:0}.input-group-addon{float:right;width:30px}.input-group-addon .glyphicon{width:16px;height:16px;position:absolute;right:7px;top:3px;background-size:cover;background-repeat:no-repeat}.input-group-addon .glyphicon-calendar{background-image:url(http://apps.colfuturo.org/PLIS/img/calendar.svg)}.numInputWrapper span{opacity:1!important}.flatpickr-current-month .numInputWrapper{width:60px!important}.flatpickr-months .flatpickr-month{height:39px!important}.n_margin-to,.mt-0{margin-top:0!important}.group-item label{font-weight:300;font-family:Roboto,sans-serif;font-size:14px;color:#333;float:left;margin-right:1em}.group-item{float:left;margin-right:.4em;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:-o-flex;display:flex}.mat-card,.mat-elevation-z8{box-shadow:none!important}.relative{position:relative}mat-card-content h4{margin-bottom:1.5rem}.mat-select-panel .mat-option{height:20px!important}.mat-select-arrow{border-top:5px solid #757575!important}input.mat-input-element{font-family:Roboto,sans-serif;font-weight:300;font-size:14px}.mat-form-field-hide-placeholder .mat-select-placeholder{color:#666!important;-webkit-text-fill-color:#666!important}.mat-vertical-stepper-header{height:auto!important;padding:8px 24px!important;margin-top:5px}.mat-vertical-content{padding:5px 25px 0!important}.mat-form-field{margin-right:1em!important}.mat-form-field-infix{margin-top:0;border:1px solid #bbb;width:auto!important;height:22px;line-height:22px;padding:0!important;min-width:55px!important}.mat-select-value{padding:0 3px;overflow:visible!important;font-size:14px;color:#7a7a7a;font-weight:300}table.ng-star-inserted th,table.ng-star-inserted td{vertical-align:top!important;padding:10px 15px 0 0;font-weight:300;font-family:Roboto,sans-serif;font-size:14px;color:#666}table.ng-star-inserted .subcategory{padding-right:15px;width:130px}table.ng-star-inserted .select-repeat,table.ng-star-inserted .mat-form-field.input-money{margin-right:0!important}table.summary .last{border-left:1px solid #ccc}table.summary tr:last-child .last{border-left:1px solid #fff}.select-currency{margin-bottom:.3em}.mat-icon-button{padding:0 0 0 1em!important;width:auto!important;height:20px!important;line-height:20px!important}.inner{overflow-x:scroll;margin-left:124px;margin-right:170px}.presupuesto_detalle .table thead th{border-bottom:0px solid transparent!important;border-left:1px solid #ccc}.presupuesto_detalle .table tbody tr.Last th{border-right:1px solid white!important;background-color:#cacaca!important}.presupuesto_detalle .table tbody tr.Last th.Last{border-left:1px solid white}.presupuesto_detalle .table tbody tr:hover .col1{color:#00a5e6!important}.col1,.col2{position:absolute;top:auto}.col1{width:125px;left:0;font-weight:400!important;border-right:1px solid #ccc;border-left:0!important}.col2{min-width:85px!important;font-weight:700!important;text-align:right;border-left:1px solid #ccc}.tabla_fija .mat-tab-body-wrapper,.mat-tab-body-content{overflow:visible!important;height:auto!important}.mat-tab-body.mat-tab-body-active{overflow-y:inherit!important}.mat-form-field-appearance-legacy .mat-form-field-underline{height:0!important}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-empty.mat-form-field-label{display:none!important}input.mat-input-element{padding-right:5px}.mat-step-header .mat-step-icon-state-edit{background:#00aa1a!important}.mat-tab-label{height:40px!important;min-width:90px!important}.mat-tab-label .mat-tab-label-content{font-size:17px;font-weight:400}.mat-raised-button.mat-primary{padding:5px 20px!important;font-size:16px!important;background-color:#449d44}.mat-flat-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{background:#08c}.mat-flat-button.mat-primary:hover,.mat-raised-button.mat-primary:hover,.mat-fab.mat-primary:hover,.mat-mini-fab.mat-primary:hover{background-color:#d20000}.mat-raised-button{min-width:inherit!important;padding:0 10px!important;line-height:27px!important;border-radius:0!important;margin-top:20px!important}.mat-raised-button:not([class*=mat-elevation-z]){box-shadow:none!important}.table th{font-weight:300}.mat-stroked-button:not([class*=mat-elevation-z]),.mat-flat-button:not([class*=mat-elevation-z]){box-shadow:none;border-radius:0;line-height:27px;padding:0 10px}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{height:auto!important;margin-bottom:10px}.mat-list-base{padding-top:0!important}mat-icon.add,button.add span{color:#449d44}button.remove{color:#da291c}.icon-hover{display:none!important}.icon-with-hover:hover .icon-hover{display:inline!important}.icon-with-hover:hover .icon-active{display:none}mat-icon.edit{color:#f3ab46}tr.mat-header-row{height:35px!important}.mat-header-cell{font-size:14px;font-weight:300}.mat-radio-container,.mat-radio-outer-circle,.mat-radio-inner-circle{height:12px!important;width:12px!important}.mat-radio-outer-circle{border-width:1px!important}.mat-radio-outer-circle{border-color:#a8a8a8!important;background-color:#dedede}.mat-radio-button:not(.mat-radio-disabled).cdk-focused .mat-radio-persistent-ripple{opacity:0!important}.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#666!important}mat-radio-group{display:inline-block!important}mat-radio-button{margin:0 10px 5px!important}.mat-icon{background-color:#fff}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:.35em}.mat-form-field-appearance-legacy .mat-form-field-underline{display:none!important}input.mat-input-element{padding-left:5px}.mat-step-icon .mat-icon,.mat-step-icon-content{transform:translate(-45%,-53%)!important}.mat-step-header .mat-step-icon{background:#aaa;position:relative;z-index:2}.mat-step-label{font-size:19px!important;line-height:26px;font-family:Roboto Condensed,sans-serif;font-weight:400}.letter .mat-form-field{margin-right:0;min-width:210px}.btn-info{transition:all .3s}.btn-info span{color:#fff}.btn-info:hover{cursor:pointer;background-color:#d20000}.btn-info:disabled{background-color:#ccc!important;border-color:#ccc!important}.mat-standard-chip{padding:0!important;background-color:#fff!important;justify-content:center;width:100%}.mat-standard-chip:hover:after{background:transparent!important}.mat-select-panel{min-width:calc(100% + 10px)!important}.mat-button-focus-overlay{background-color:transparent!important}button.delete:focus{outline:0}.mat-step-header .mat-step-icon-selected{background-color:#da291c!important}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button{margin:0!important}.mat-card>.mat-card-actions:last-child{margin-bottom:0!important}@media screen and (max-width: 1260px){.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.col-auto,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm,.col-sm-auto,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md,.col-md-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg,.col-lg-auto,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl,.col-xl-auto{padding-right:5px}.Form_2{margin:20px 4px!important}}@media screen and (max-width: 1250px){label{font-size:13px!important}}@media screen and (max-width: 1220px){.mat-drawer.sidenav{position:absolute!important}.row.formio-component{margin-left:0;margin-right:0}.card .card-header h4.card-title{text-align:center}.card .card-body{padding:.3rem 0!important}label{width:100%!important;margin:.3em 1em .3em 0!important}label:after{position:relative}.form-group .form-control,.form-group .input-group{margin-left:0!important;margin-right:0!important;width:100%!important}.formio-choices.form-group{float:left;margin-left:0!important;margin-top:0!important}.mat-toolbar-row,.mat-toolbar-single-row{height:75px!important}.col{padding-left:5px!important;padding-right:5px!important}.block .row{display:block}.mat-toolbar.mat-primary button.mat-icon-button{display:block;margin-right:2em}.no_label label.control-label--hidden{width:auto!important;margin-right:1em!important}.hidden-responsive{display:none}}@media screen and (max-width: 991px){.col{flex:100%!important;max-width:inherit!important;padding-left:0!important;padding-right:0!important}.form-group .input-group{width:40%!important}.mat-toolbar.mat-primary .button-close-session{width:40px}.row_2{margin-left:0}.mat-vertical-content{padding:5px 5px 0!important}.mat-vertical-content{overflow:hidden}}.main-content{position:fixed;z-index:-1;overflow:visible;display:none;opacity:0;margin-top:10px;margin-bottom:10px;text-align:left!important}.main-content--show{top:0;left:0;display:block}.main-content hr{display:block;border-style:inset;border-width:1px;color:red}.header{display:flex;align-items:stretch}.header-item{margin:0 5px}button.fa-file-pdf{font-size:2em}\n"] }]
204
- }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i2.DataFormService }, { type: i3.ApplicationService }, { type: i4.PppService }, { type: i5.CommonService }, { type: i6.PliCnfLookAndFeelService }, { type: i7.PliCnfHeaderService }, { type: i0.ComponentFactoryResolver }, { type: i8.ActivatedRoute }, { type: i9.FormService }, { type: i10.PliCnfPdfsService }, { type: i7.PliCnfHeaderService }, { type: i11.TokenTransformationService }], propDecorators: { configurations: [{
205
- type: Input
206
- }], applicationId: [{
207
- type: Input
208
- }], contentElement: [{
209
- type: ViewChild,
210
- args: ['content']
211
- }], showLabel: [{
212
- type: Input
213
- }], actionClass: [{
214
- type: Input
215
- }], promCode: [{
216
- type: Input
217
- }], onDownload: [{
218
- type: Output
219
- }], onClick: [{
220
- type: HostListener,
221
- args: ['click', ['$event']]
222
- }] } });
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWdlbmVyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wbGktY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcGRmLWdlbmVyYXRvci9wZGYtZ2VuZXJhdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXBsaS1jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wZGYtZ2VuZXJhdG9yL3BkZi1nZW5lcmF0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFHVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFLTixVQUFVLEVBQ1YsTUFBTSxhQUFhLENBQUM7QUFjckIsT0FBTyxLQUFLLE1BQU0sTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUM7QUFPckIsTUFBTSxPQUFPLHFCQUFxQjtJQUNqQyxJQUNJLGNBQWMsQ0FBQyxNQUFtQjtRQUNyQyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDL0IsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJO1lBQ2IsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO2dCQUNuQixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztnQkFDdkIsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDeEIsQ0FBQztTQUNELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQ0ksYUFBYSxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDN0IsQ0FBQztJ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R0FoUFcscUJBQXFCO21HQUFyQixxQkFBcUIsd1pDMUNsQyxrNEJBcUJBOzs0RkRxQmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNDLG1CQUFtQjt5ZEFNekIsY0FBYztzQkFEakIsS0FBSztnQkFZRixhQUFhO3NCQURoQixLQUFLO2dCQUtnQixjQUFjO3NCQUFuQyxTQUFTO3VCQUFDLFNBQVM7Z0JBQ1gsU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBc0JJLFVBQVU7c0JBQW5CLE1BQU07Z0JBRVAsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q29tcG9uZW50LFxyXG5cdENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuXHRFbGVtZW50UmVmLFxyXG5cdEhvc3RMaXN0ZW5lcixcclxuXHRJbnB1dCxcclxuXHRWaWV3Q2hpbGQsXHJcblx0T3V0cHV0LFxyXG5cdEV2ZW50RW1pdHRlclxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sLCBTYWZlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCBodG1sMmNhbnZhcyBmcm9tICdodG1sMmNhbnZhcyc7XHJcbmltcG9ydCBodG1sMnBkZiBmcm9tICdodG1sMnBkZi5qcyc7XHJcbmltcG9ydCB7XHJcblx0QXBwbGljYXRpb24sXHJcblx0RGF0YUZvcm1BcHBsaWNhdGlvbixcclxuXHRQZGZEb2N1bWVudCxcclxuXHRQbGlDbmZMb29rQW5kRmVlbCxcclxuXHRSZXF1ZXN0UGRmXHJcbn0gZnJvbSAnbmctcGxpLXV0aWwnO1xyXG5pbXBvcnQgeyBQbGlDbmZQZGYgfSBmcm9tICduZy1wbGktdXRpbC9saWIvbW9kZWxzL3BsaS1jbmYtcGRmJztcclxuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcblxyXG5pbXBvcnQgeyBBcHBsaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hcHBsaWNhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YS1mb3JtLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQbGlDbmZIZWFkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGxpLWNuZi1oZWFkZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFBwcFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wcHAuc2VydmljZSc7XHJcbmltcG9ydCB7IFBsaUNuZkxvb2tBbmRGZWVsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BsaS1jbmYtbG9vay1hbmQtZmVlbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbW1vbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XHJcbmltcG9ydCB7IFBsaUNuZlBkZnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGxpLWNuZi1wZGZzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUb2tlblRyYW5zZm9ybWF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Rva2VuLXRyYW5zZm9ybWF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyBQREZKU18gZnJvbSAncGRmanMtZGlzdC9idWlsZC9wZGYnO1xyXG5cclxuY29uc3QgUERGSlMgPSBQREZKU187XHJcbmltcG9ydCBQYW56b29tIGZyb20gJ3Bhbnpvb20vZGlzdC9wYW56b29tJztcclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdwbGktcGRmLWdlbmVyYXRvcicsXHJcblx0dGVtcGxhdGVVcmw6ICcuL3BkZi1nZW5lcmF0b3IuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL3BkZi1nZW5lcmF0b3IuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGRmR2VuZXJhdG9yQ29tcG9uZW50IHtcclxuXHRASW5wdXQoKVxyXG5cdHNldCBjb25maWd1cmF0aW9ucyhjbmZQZGY6IFBsaUNuZlBkZltdKSB7XHJcblx0XHR0aGlzLml0ZW1zID0gY25mUGRmLm1hcCgoYykgPT4gKHtcclxuXHRcdFx0bGFiZWw6IGMubmFtZSxcclxuXHRcdFx0Y29tbWFuZDogYXN5bmMgKCkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuY29uZmlndXJhdGlvbiA9IGM7XHJcblx0XHRcdFx0YXdhaXQgdGhpcy5odG1sdG9QREYoKTtcclxuXHRcdFx0fVxyXG5cdFx0fSkpO1xyXG5cdH1cclxuXHJcblx0QElucHV0KClcclxuXHRzZXQgYXBwbGljYXRpb25JZCh2YWx1ZTogc3RyaW5nKSB7XHJcblx0XHR0aGlzLl9hcHBsaWNhdGlvbklkID0gdmFsdWU7XHJcblx0fVxyXG5cclxuXHRAVmlld0NoaWxkKCdjb250ZW50JykgY29udGVudEVsZW1lbnQ6IEVsZW1lbnRSZWY8YW55PjtcclxuXHRASW5wdXQoKSBzaG93TGFiZWwgPSBmYWxzZTtcclxuXHRASW5wdXQoKSBhY3Rpb25DbGFzcyA9ICdyZWZlcmVuY2VDbGFzcyc7XHJcblx0QElucHV0KCkgcHJvbUNvZGU6IG51bWJlcjtcclxuXHJcblx0ZGlzcGxheTogYm9vbGVhbiA9IHRydWU7XHJcblx0aXRlbXM6IE1lbnVJdGVtW10gPSBbXTtcclxuXHRjb25maWd1cmF0aW9uOiBQbGlDbmZQZGY7XHJcblx0aGVhZGVySHRtbDogc3RyaW5nO1xyXG5cdGZvb3Rlckh0bWw6IHN0cmluZztcclxuXHRCb2R5SHRtbDogc3RyaW5nO1xyXG5cdHVybExvZ286IFNhZmVVcmw7XHJcblx0X2FwcGxpY2F0aW9uSWQ6IHN0cmluZztcclxuXHRwZGZEb2N1bWVudDogUGRmRG9jdW1lbnQ7XHJcblx0bG9va0FuZEZlZWxNb2RlbDogUGxpQ25mTG9va0FuZEZlZWw7XHJcblx0ZGF0YUZvcm1zOiBEYXRhRm9ybUFwcGxpY2F0aW9uW10gPSBbXTtcclxuXHRhbGxEYXRhRm9ybXM6IERhdGFGb3JtQXBwbGljYXRpb25bXSA9IFtdO1xyXG5cdGZvcm1zOiBhbnlbXSA9IFtdO1xyXG5cdC8qKiBiYXNlNjQgYXMgcmVzdWx0IG9mIGh0bWwgMiBwZGYgKi9cclxuXHRiYXNlNjQ6IHN0cmluZztcclxuXHJcblx0LyoqIGl0IGNvbnRhaW5zIHRoZSBpZCBvZiBjYW52YXMgKi9cclxuXHRpZF9jYW52YXM6IHN0cmluZyA9ICdwZGYtY2FudmFzJztcclxuXHJcblx0cmVhZHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRAT3V0cHV0KCkgb25Eb3dubG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHRASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXHJcblx0b25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG5cdFx0aWYgKCF0aGlzLl9hcHBsaWNhdGlvbklkKSB7XHJcblx0XHRcdHRoaXMuX2FwcGxpY2F0aW9uSWQgPSB0aGlzLmdldEVsZW1lbnRJZEZyb21FdmVudChldmVudC5jb21wb3NlZFBhdGgoKSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGRhdGFGb3JtU2VydmljZTogRGF0YUZvcm1TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBhcHBsaWNhdGlvblNlcnZpY2U6IEFwcGxpY2F0aW9uU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHBwU2VydmljZTogUHBwU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgY29tbW9uU2VydmljZTogQ29tbW9uU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgbG9va0FuZEZlZWxTZXJ2aWNlOiBQbGlDbmZMb29rQW5kRmVlbFNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGhlYWRlcjogUGxpQ25mSGVhZGVyU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuXHRcdHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG5cdFx0cHJpdmF0ZSBmb3JtU2VydmljZTogRm9ybVNlcnZpY2UsXHJcblx0XHRwcml2YXRlIHBsaUNuZlBkZlNlcnZpY2U6IFBsaUNuZlBkZnNTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBwbGlDbmZIZWFkZXJTZXJ2aWNlOiBQbGlDbmZIZWFkZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB0b2tlblRyYW5zZm9ybWF0aW9uU2VydmljZTogVG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2VcclxuXHQpIHt9XHJcblxyXG5cdHByaXZhdGUgZ2V0RWxlbWVudElkRnJvbUV2ZW50KHBhdGg6IGFueVtdKTogc3RyaW5nIHtcclxuXHRcdGNvbnN0IGVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQocGF0aCk7XHJcblx0XHRyZXR1cm4gZWxlbWVudCA/IGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLWVsZW1lbnQtaWQnKSA6ICcnO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBnZXRFbGVtZW50KHBhdGhMaXN0OiBhbnlbXSkge1xyXG5cdFx0cmV0dXJuIHBhdGhMaXN0LmZpbmQoXHJcblx0XHRcdChlbGVtZW50KSA9PiBlbGVtZW50LmNsYXNzTGlzdCAmJiBlbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyh0aGlzLmFjdGlvbkNsYXNzKVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGh0bWx0b1BERigpIHtcclxuXHRcdGNvbnN0IGFwcGxpY2F0aW9uRGF0YSA9IGF3YWl0IHRoaXMuYXBwbGljYXRpb25TZXJ2aWNlXHJcblx0XHRcdC5nZXRCeUlkKHRoaXMuX2FwcGxpY2F0aW9uSWQpXHJcblx0XHRcdC50b1Byb21pc2UoKTtcclxuXHJcblx0XHRjb25zdCBwcm9tQ29kaWdvID0gYXBwbGljYXRpb25EYXRhLnByb21Db2RpZ287XHJcblxyXG5cdFx0dGhpcy5hbGxEYXRhRm9ybXMgPSBhd2FpdCB0aGlzLmRhdGFGb3JtU2VydmljZVxyXG5cdFx0XHQuZ2V0QnlBcHBsaWNhdGlvbklkKHRoaXMuX2FwcGxpY2F0aW9uSWQpXHJcblx0XHRcdC50b1Byb21pc2UoKTtcclxuXHRcdC8vZ2V0IHBhdENvZGVcclxuXHRcdGNvbnN0IHBhdENvZGUgPSB0aGlzLnBwcFNlcnZpY2UuZ2V0UGF0Q29kaWdvQnlQcm9tQ29kaWdvKHRoaXMucHJvbUNvZGUpO1xyXG5cdFx0Ly9nZXQgaGVhZGVyXHJcblxyXG5cdFx0aWYgKHRoaXMuY29uZmlndXJhdGlvbi5oZWFkZXIpIHtcclxuXHRcdFx0Y29uc3QgaGVhZGVyOiBhbnkgPSBhd2FpdCB0aGlzLnBsaUNuZkhlYWRlclNlcnZpY2VcclxuXHRcdFx0XHQuZ2V0QnlQcm9tQ29kaWdvKHRoaXMucHJvbUNvZGUpXHJcblx0XHRcdFx0LnRvUHJvbWlzZSgpO1xyXG5cdFx0XHRjb25zdCB0ZXh0ID0gYXdhaXQgdGhpcy50b2tlblRyYW5zZm9ybWF0aW9uU2VydmljZVxyXG5cdFx0XHRcdC50cmFuc2Zvcm1BbmRLZWVwVG9rZW4oXHJcblx0XHRcdFx0XHR0aGlzLmNvbmZpZ3VyYXRpb24uaGVhZGVyLFxyXG5cdFx0XHRcdFx0cHJvbUNvZGlnbyxcclxuXHRcdFx0XHRcdHRoaXMuX2FwcGxpY2F0aW9uSWQsXHJcblx0XHRcdFx0XHR0cnVlLFxyXG5cdFx0XHRcdFx0J2VzJ1xyXG5cdFx0XHRcdClcclxuXHRcdFx0XHQudG9Qcm9taXNlKCk7XHJcblx0XHRcdHRoaXMuaGVhZGVySHRtbCA9IHRleHQudHh0O1xyXG5cdFx0fVxyXG5cclxuXHRcdC8vZ2V0IGZvb3RlclxyXG5cdFx0aWYgKHRoaXMuY29uZmlndXJhdGlvbi5mb290ZXIpIHtcclxuXHRcdFx0Y29uc3QgdGV4dCA9IGF3YWl0IHRoaXMudG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2VcclxuXHRcdFx0XHQudHJhbnNmb3JtQW5kS2VlcFRva2VuKFxyXG5cdFx0XHRcdFx0dGhpcy5jb25maWd1cmF0aW9uLmZvb3RlcixcclxuXHRcdFx0XHRcdHByb21Db2RpZ28sXHJcblx0XHRcdFx0XHR0aGlzLl9hcHBsaWNhdGlvbklkLFxyXG5cdFx0XHRcdFx0dHJ1ZSxcclxuXHRcdFx0XHRcdCdlcydcclxuXHRcdFx0XHQpXHJcblx0XHRcdFx0LnRvUHJvbWlzZSgpO1xyXG5cdFx0XHR0aGlzLmZvb3Rlckh0bWwgPSB0ZXh0LnR4dDtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAodGhpcy5jb25maWd1cmF0aW9uLmJvZHkpIHtcclxuXHRcdFx0Y29uc3QgdGV4dCA9IGF3YWl0IHRoaXMudG9rZW5UcmFuc2Zvcm1hdGlvblNlcnZpY2VcclxuXHRcdFx0XHQudHJhbnNmb3JtQW5kS2VlcFRva2VuKFxyXG5cdFx0XHRcdFx0dGhpcy5jb25maWd1cmF0aW9uLmJvZHksXHJcblx0XHRcdFx0XHRwcm9tQ29kaWdvLFxyXG5cdFx0XHRcdFx0dGhpcy5fYXBwbGljYXRpb25JZCxcclxuXHRcdFx0XHRcdHRydWUsXHJcblx0XHRcdFx0XHQnZXMnXHJcblx0XHRcdFx0KVxyXG5cdFx0XHRcdC50b1Byb21pc2UoKTtcclxuXHRcdFx0dGhpcy5Cb2R5SHRtbCA9IHRleHQudHh0O1xyXG5cdFx0fVxyXG5cclxuXHRcdGF3YWl0IHRoaXMuZXhwb3J0QXNQREYoKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGV4cG9ydEFzUERGKCkge1xyXG5cdFx0Ly8gaWYgaHRtbCB3YXMgY2hhbmdlZFxyXG5cdFx0bGV0IHJlcXVlc3RQZGY6IFJlcXVlc3RQZGYgPSBuZXcgUmVxdWVzdFBkZigpO1xyXG5cdFx0cmVxdWVzdFBkZi5odG1sID0gdGhpcy5Cb2R5SHRtbDtcclxuXHRcdHJlcXVlc3RQZGYuaGVhZGVyID0gdGhpcy5oZWFkZXJIdG1sO1xyXG5cdFx0cmVxdWVzdFBkZi5mb290ZXIgPSB0aGlzLmZvb3Rlckh0bWw7XHJcblx0XHRyZXF1ZXN0UGRmLmxhbmcgPSAnZXMnO1xyXG5cdFx0cmVxdWVzdFBkZi5tYXJnaW5Ub3AgPSB0aGlzLmNvbmZpZ3VyYXRpb24ubWFyZ2luVG9wO1xyXG5cdFx0cmVxdWVzdFBkZi5tYXJnaW5SaWdodCA9IHRoaXMuY29uZmlndXJhdGlvbi5tYXJnaW5SaWdodDtcclxuXHRcdHJlcXVlc3RQZGYubWFyZ2luQm90dG9tID0gdGhpcy5jb25maWd1cmF0aW9uLm1hcmdpbkJvdHRvbTtcclxuXHRcdHJlcXVlc3RQZGYubWFyZ2luTGVmdCA9IHRoaXMuY29uZmlndXJhdGlvbi5tYXJnaW5MZWZ0O1xyXG5cclxuXHRcdHJlcXVlc3RQZGYucmVwZWF0SGVhZGVyID0gdHJ1ZTtcclxuXHRcdHJlcXVlc3RQZGYucmVwZWF0Rm9vdGVyID0gdHJ1ZTtcclxuXHRcdHJlcXVlc3RQZGYuc2hvd1BhZ2VyID0gdHJ1ZTtcclxuXHJcblx0XHR0aGlzLmNvbW1vblNlcnZpY2UuZ2V0QmFzZTY0UGRmKHJlcXVlc3RQZGYpLnN1YnNjcmliZShcclxuXHRcdFx0KHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuc2hvd0Jhc2U2NFBkZihyZXN1bHQpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHQoZXJyb3IpID0+IHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnRXJyb3IgdHJ5aW5nIHRvIHJlbmRlciBQREYnLCBlcnJvcik7XHJcblx0XHRcdH1cclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRkb3dubG9hZCgpIHtcclxuXHRcdGNvbnN0IGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL3BkZic7XHJcblx0XHRjb25zdCBiNjREYXRhID0gdGhpcy5iYXNlNjQ7XHJcblx0XHRjb25zdCBibG9iID0gdGhpcy5iNjR0b0Jsb2IoYjY0RGF0YSwgY29udGVudFR5cGUpO1xyXG5cdFx0Y29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcblxyXG5cdFx0dmFyIGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcblx0XHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpO1xyXG5cdFx0YS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG5cdFx0YS5ocmVmID0gYmxvYlVybDtcclxuXHRcdGEuZG93bmxvYWQgPSAncmVzdW1lblBkZic7XHJcblx0XHRhLmNsaWNrKCk7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0d2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwoYmxvYlVybCk7XHJcblx0XHRcdGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XHJcblx0XHRcdHRoaXMub25Eb3dubG9hZC5lbWl0KHtcclxuXHRcdFx0XHRiYXNlNjQ6IHRoaXMuYmFzZTY0XHJcblx0XHRcdH0pO1xyXG5cdFx0fSwgMjAwKTtcclxuXHR9XHJcblxyXG5cdGI2NHRvQmxvYihiNjREYXRhLCBjb250ZW50VHlwZSA9ICcnLCBzbGljZVNpemUgPSA1MTIpIHtcclxuXHRcdGNvbnN0IGJ5dGVBcnJheXMgPSBbXTtcclxuXHRcdGNvbnN0IGJ5dGVDaGFyYWN0ZXJzID0gYXRvYihiNjREYXRhKTtcclxuXHRcdGZvciAobGV0IG9mZnNldCA9IDA7IG9mZnNldCA8IGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aDsgb2Zmc2V0ICs9IHNsaWNlU2l6ZSkge1xyXG5cdFx0XHRjb25zdCBzbGljZSA9IGJ5dGVDaGFyYWN0ZXJzLnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgc2xpY2VTaXplKTtcclxuXHRcdFx0Y29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoc2xpY2UubGVuZ3RoKTtcclxuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBzbGljZS5sZW5ndGg7IGkrKykge1xyXG5cdFx0XHRcdGJ5dGVOdW1iZXJzW2ldID0gc2xpY2UuY2hhckNvZGVBdChpKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcblx0XHRcdGJ5dGVBcnJheXMucHVzaChieXRlQXJyYXkpO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgYmxvYiA9IG5ldyBCbG9iKGJ5dGVBcnJheXMsIHsgdHlwZTogY29udGVudFR5cGUgfSk7XHJcblx0XHRyZXR1cm4gYmxvYjtcclxuXHR9XHJcblxyXG5cdHJlbmRlclBhZ2UobnVtKSB7XHJcblx0XHR0aGlzLnBkZkRvY3VtZW50LnBhZ2VSZW5kZXJpbmcgPSB0cnVlO1xyXG5cdFx0Ly8gYXNzaWduIHZhcmlhYmxlcyBvdXQgb2Ygc2NvcGVcclxuXHRcdGxldCBzZWxmUGRmRG9jdW1lbnQ6IFBkZkRvY3VtZW50ID0gdGhpcy5wZGZEb2N1bWVudDtcclxuXHRcdGxldCBzZWxmID0gdGhpcztcclxuXHRcdC8vIFVzaW5nIHByb21pc2UgdG8gZmV0Y2ggdGhlIHBhZ2VcclxuXHRcdHRoaXMucGRmRG9jdW1lbnQucGRmRG9jLmdldFBhZ2UobnVtKS50aGVuKGZ1bmN0aW9uIChwYWdlKSB7XHJcblx0XHRcdHZhciBzY2FsZSA9IHNlbGZQZGZEb2N1bWVudC5zY2FsZSA/IHNlbGZQZGZEb2N1bWVudC5zY2FsZSA6IDEuNTtcclxuXHRcdFx0dmFyIHZpZXdwb3J0ID0gcGFnZS5nZXRWaWV3cG9ydCh7IHNjYWxlOiBzY2FsZSB9KTtcclxuXHRcdFx0c2VsZlBkZkRvY3VtZW50LmNhbnZhcy5oZWlnaHQgPSB2aWV3cG9ydC5oZWlnaHQ7XHJcblx0XHRcdHNlbGZQZGZEb2N1bWVudC5jYW52YXMud2lkdGggPSB2aWV3cG9ydC53aWR0aDtcclxuXHJcblx0XHRcdC8vIFJlbmRlciBQREYgcGFnZSBpbnRvIGNhbnZhcyBjb250ZXh0XHJcblx0XHRcdHZhciByZW5kZXJDb250ZXh0ID0ge1xyXG5cdFx0XHRcdGNhbnZhc0NvbnRleHQ6IHNlbGZQZGZEb2N1bWVudC5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKSxcclxuXHRcdFx0XHR2aWV3cG9ydDogdmlld3BvcnRcclxuXHRcdFx0fTtcclxuXHRcdFx0dmFyIHJlbmRlclRhc2sgPSBwYWdlLnJlbmRlcihyZW5kZXJDb250ZXh0KTtcclxuXHJcblx0XHRcdC8vIFdhaXQgZm9yIHJlbmRlcmluZyB0byBmaW5pc2hcclxuXHRcdFx0cmVuZGVyVGFzay5wcm9taXNlLnRoZW4oZnVuY3Rpb24gKCkge1xyXG5cdFx0XHRcdHNlbGZQZGZEb2N1bWVudC5wYWdlUmVuZGVyaW5nID0gZmFsc2U7XHJcblx0XHRcdFx0aWYgKHNlbGZQZGZEb2N1bWVudC5wYWdlTnVtUGVuZGluZyAhPT0gbnVsbCkge1xyXG5cdFx0XHRcdFx0Ly8gTmV3IHBhZ2UgcmVuZGVyaW5nIGlzIHBlbmRpbmdcclxuXHRcdFx0XHRcdHRoaXMucmVuZGVyUGFnZShzZWxmUGRmRG9jdW1lbnQucGFnZU51bVBlbmRpbmcpO1xyXG5cdFx0XHRcdFx0c2VsZlBkZkRvY3VtZW50LnBhZ2VOdW1QZW5kaW5nID0gbnVsbDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRzaG93QmFzZTY0UGRmKHJlc3VsdCkge1xyXG5cdFx0dGhpcy5iYXNlNjQgPSByZXN1bHQuYmFzZTY0O1xyXG5cdFx0dGhpcy5kb3dubG9hZCgpO1xyXG5cdH1cclxuXHRkZWxldGVCdXR0b25zKGRvYykge1xyXG5cdFx0Y29uc3QgYnV0dG9ucyA9IGRvYy5xdWVyeVNlbGVjdG9yQWxsKCdidXR0b24nKTtcclxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgYnV0dG9ucy5sZW5ndGg7IGkrKykge1xyXG5cdFx0XHRidXR0b25zW2ldLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgI2NvbnRlbnQgaWQ9XCJjb250ZW50XCIgY2xhc3M9XCJtYWluLWNvbnRlbnRcIiBbY2xhc3MubWFpbi1jb250ZW50LS1zaG93XT1cImRpc3BsYXlcIj5cclxuXHQ8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcblx0XHQ8ZGl2IGNsYXNzPVwiaGVhZGVyLWl0ZW1cIj5cclxuXHRcdFx0PGltZyBbc3JjXT1cInVybExvZ29cIiBhbHQ9XCJsb2dvXCIgY2xhc3M9XCJpbWctbG9nb1wiIC8+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxkaXYgY2xhc3M9XCJoZWFkZXItaXRlbVwiPlxyXG5cdFx0XHQ8ZGl2IFtpbm5lckhUTUxdPVwiaGVhZGVySHRtbFwiPjwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblx0PGRpdiAqbmdGb3I9XCJsZXQgZiBvZiBkYXRhRm9ybXM7IGluZGV4IGFzIGlcIj5cclxuXHRcdDxmb3JtaW8gW2Zvcm1dPVwiZm9ybXNbaV1cIiBbc3VibWlzc2lvbl09XCJkYXRhRm9ybXNbaV1cIj48L2Zvcm1pbz5cclxuXHRcdDxkaXYgY2xhc3M9XCJodG1sMnBkZl9fcGFnZS1icmVha1wiPjwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDxkaXYgW2lubmVySFRNTF09XCJmb290ZXJIdG1sXCI+PC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0XCI+XHJcblx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJmYSBmYS1maWxlLXBkZiBidG4tc21cIiAoY2xpY2spPVwibWVudS50b2dnbGUoJGV2ZW50KVwiIHRpdGxlPVwiUERGXCI+XHJcblx0XHR7eyBzaG93TGFiZWwgPyAnR2VuZXJhciBQREYnIDogJycgfX1cclxuXHQ8L2J1dHRvbj5cclxuPC9kaXY+XHJcbjxwLXRpZXJlZE1lbnUgI21lbnUgW21vZGVsXT1cIml0ZW1zXCIgYXBwZW5kVG89XCJib2R5XCIgW3BvcHVwXT1cInRydWVcIj48L3AtdGllcmVkTWVudT5cclxuIl19