brainloper-ui 14.1.3 → 14.1.5

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 (97) hide show
  1. package/esm2020/brainloper-ui.mjs +4 -4
  2. package/esm2020/public_api.mjs +56 -56
  3. package/esm2020/src/app/modules/brainloper-ui/brainloper-ui.module.mjs +310 -310
  4. package/esm2020/src/app/modules/brainloper-ui/components/bread-crumb/bread-crumb.component.mjs +29 -29
  5. package/esm2020/src/app/modules/brainloper-ui/components/buttons/button-icon/button-icon.component.mjs +23 -23
  6. package/esm2020/src/app/modules/brainloper-ui/components/buttons/button-label/button-label.component.mjs +83 -83
  7. package/esm2020/src/app/modules/brainloper-ui/components/carousel/carousel.component.mjs +40 -40
  8. package/esm2020/src/app/modules/brainloper-ui/components/combos/combos.component.mjs +176 -176
  9. package/esm2020/src/app/modules/brainloper-ui/components/data-table/data-table.component.mjs +728 -728
  10. package/esm2020/src/app/modules/brainloper-ui/components/data-table/table-modal/table-modal.component.mjs +118 -118
  11. package/esm2020/src/app/modules/brainloper-ui/components/file-input/file-input.component.mjs +186 -186
  12. package/esm2020/src/app/modules/brainloper-ui/components/file-input/imagenes/doc.mjs +1 -1
  13. package/esm2020/src/app/modules/brainloper-ui/components/file-input/imagenes/fondoTransparente.mjs +1 -1
  14. package/esm2020/src/app/modules/brainloper-ui/components/file-input/imagenes/pdf.mjs +1 -1
  15. package/esm2020/src/app/modules/brainloper-ui/components/filters/filters.component.mjs +222 -222
  16. package/esm2020/src/app/modules/brainloper-ui/components/report/generate-pdf/generate-pdf.component.mjs +81 -80
  17. package/esm2020/src/app/modules/brainloper-ui/components/report/template-fuel/template-fuel.component.mjs +82 -81
  18. package/esm2020/src/app/modules/brainloper-ui/components/select-filter/select-filter.component.mjs +108 -108
  19. package/esm2020/src/app/modules/directives/carousel-item.directive.mjs +18 -18
  20. package/esm2020/src/app/modules/interfaces/buttons/button-icon.mjs +2 -2
  21. package/esm2020/src/app/modules/interfaces/buttons/button-lavel-edit.mjs +2 -2
  22. package/esm2020/src/app/modules/interfaces/combos/combos-configuration.mjs +2 -2
  23. package/esm2020/src/app/modules/interfaces/data-table/params.mjs +2 -2
  24. package/esm2020/src/app/modules/interfaces/data-table/rules.mjs +2 -2
  25. package/esm2020/src/app/modules/interfaces/data-table/table-columns.mjs +2 -2
  26. package/esm2020/src/app/modules/interfaces/data-table/table-configuration.mjs +2 -2
  27. package/esm2020/src/app/modules/interfaces/enum/enumActions.mjs +8 -8
  28. package/esm2020/src/app/modules/interfaces/enum/enumRules.mjs +8 -8
  29. package/esm2020/src/app/modules/interfaces/file-forms-service/file-forms-params.mjs +2 -2
  30. package/esm2020/src/app/modules/interfaces/file-forms-service/file-input-params.mjs +2 -2
  31. package/esm2020/src/app/modules/interfaces/filters/header-filters.mjs +2 -2
  32. package/esm2020/src/app/modules/interfaces/menu-break-crumb/menu-break-crumb.mjs +8 -8
  33. package/esm2020/src/app/modules/interfaces/report/template-pdf-base.mjs +2 -0
  34. package/esm2020/src/app/modules/interfaces/report/template-pdf-ot.mjs +2 -2
  35. package/esm2020/src/app/modules/interfaces/report/template-pfd-fo.mjs +2 -2
  36. package/esm2020/src/app/modules/services/crypto.service.mjs +37 -37
  37. package/esm2020/src/app/modules/services/export-data.service.mjs +166 -166
  38. package/esm2020/src/app/modules/services/file-forms.service.mjs +24 -24
  39. package/esm2020/src/app/modules/services/functions.service.mjs +54 -54
  40. package/esm2020/src/app/modules/services/generate-pdf.service.mjs +58 -58
  41. package/esm2020/src/app/modules/services/http.service.mjs +97 -97
  42. package/esm2020/src/app/modules/services/loading/loading.component.mjs +28 -28
  43. package/esm2020/src/app/modules/services/local-storage.service.mjs +115 -115
  44. package/esm2020/src/app/modules/services/message.service.mjs +200 -200
  45. package/esm2020/src/app/modules/services/screen-size-util.mjs +6 -6
  46. package/esm2020/src/app/modules/services/session.service.mjs +42 -42
  47. package/fesm2015/brainloper-ui.mjs +2814 -2812
  48. package/fesm2015/brainloper-ui.mjs.map +1 -1
  49. package/fesm2020/brainloper-ui.mjs +2774 -2772
  50. package/fesm2020/brainloper-ui.mjs.map +1 -1
  51. package/index.d.ts +5 -5
  52. package/package.json +1 -1
  53. package/public_api.d.ts +55 -55
  54. package/src/app/modules/brainloper-ui/brainloper-ui.module.d.ts +62 -62
  55. package/src/app/modules/brainloper-ui/components/bread-crumb/bread-crumb.component.d.ts +13 -13
  56. package/src/app/modules/brainloper-ui/components/buttons/button-icon/button-icon.component.d.ts +10 -10
  57. package/src/app/modules/brainloper-ui/components/buttons/button-label/button-label.component.d.ts +24 -24
  58. package/src/app/modules/brainloper-ui/components/carousel/carousel.component.d.ts +16 -16
  59. package/src/app/modules/brainloper-ui/components/combos/combos.component.d.ts +46 -46
  60. package/src/app/modules/brainloper-ui/components/data-table/data-table.component.d.ts +125 -125
  61. package/src/app/modules/brainloper-ui/components/data-table/table-modal/table-modal.component.d.ts +21 -21
  62. package/src/app/modules/brainloper-ui/components/file-input/file-input.component.d.ts +42 -42
  63. package/src/app/modules/brainloper-ui/components/file-input/imagenes/doc.d.ts +2 -2
  64. package/src/app/modules/brainloper-ui/components/file-input/imagenes/fondoTransparente.d.ts +2 -2
  65. package/src/app/modules/brainloper-ui/components/file-input/imagenes/pdf.d.ts +2 -2
  66. package/src/app/modules/brainloper-ui/components/filters/filters.component.d.ts +30 -30
  67. package/src/app/modules/brainloper-ui/components/report/generate-pdf/generate-pdf.component.d.ts +36 -35
  68. package/src/app/modules/brainloper-ui/components/report/template-fuel/template-fuel.component.d.ts +37 -36
  69. package/src/app/modules/brainloper-ui/components/select-filter/select-filter.component.d.ts +26 -26
  70. package/src/app/modules/directives/carousel-item.directive.d.ts +9 -9
  71. package/src/app/modules/interfaces/buttons/button-icon.d.ts +9 -9
  72. package/src/app/modules/interfaces/buttons/button-lavel-edit.d.ts +6 -6
  73. package/src/app/modules/interfaces/combos/combos-configuration.d.ts +13 -13
  74. package/src/app/modules/interfaces/data-table/params.d.ts +7 -7
  75. package/src/app/modules/interfaces/data-table/rules.d.ts +8 -8
  76. package/src/app/modules/interfaces/data-table/table-columns.d.ts +25 -25
  77. package/src/app/modules/interfaces/data-table/table-configuration.d.ts +26 -26
  78. package/src/app/modules/interfaces/enum/enumActions.d.ts +6 -6
  79. package/src/app/modules/interfaces/enum/enumRules.d.ts +6 -6
  80. package/src/app/modules/interfaces/file-forms-service/file-forms-params.d.ts +4 -4
  81. package/src/app/modules/interfaces/file-forms-service/file-input-params.d.ts +13 -13
  82. package/src/app/modules/interfaces/filters/header-filters.d.ts +13 -13
  83. package/src/app/modules/interfaces/menu-break-crumb/menu-break-crumb.d.ts +10 -10
  84. package/src/app/modules/interfaces/report/template-pdf-base.d.ts +17 -0
  85. package/src/app/modules/interfaces/report/template-pdf-ot.d.ts +6 -19
  86. package/src/app/modules/interfaces/report/template-pfd-fo.d.ts +7 -20
  87. package/src/app/modules/services/crypto.service.d.ts +10 -10
  88. package/src/app/modules/services/export-data.service.d.ts +18 -18
  89. package/src/app/modules/services/file-forms.service.d.ts +7 -7
  90. package/src/app/modules/services/functions.service.d.ts +13 -13
  91. package/src/app/modules/services/generate-pdf.service.d.ts +12 -12
  92. package/src/app/modules/services/http.service.d.ts +22 -22
  93. package/src/app/modules/services/loading/loading.component.d.ts +15 -15
  94. package/src/app/modules/services/local-storage.service.d.ts +49 -49
  95. package/src/app/modules/services/message.service.d.ts +23 -23
  96. package/src/app/modules/services/screen-size-util.d.ts +3 -3
  97. package/src/app/modules/services/session.service.d.ts +14 -14
@@ -1,80 +1,81 @@
1
- import { Component, Inject } from '@angular/core';
2
- import jsPDF from 'jspdf';
3
- import html2canvas from 'html2canvas';
4
- import { MAT_DIALOG_DATA } from '@angular/material/dialog';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/material/dialog";
7
- import * as i2 from "../../../../services/message.service";
8
- import * as i3 from "@angular/material/button";
9
- export class GeneratePdfComponent {
10
- constructor(dialogRef, dataModal, dialog, message) {
11
- this.dialogRef = dialogRef;
12
- this.dataModal = dataModal;
13
- this.dialog = dialog;
14
- this.message = message;
15
- this.data = {
16
- name: '',
17
- nit: '',
18
- address: '',
19
- telephone: '',
20
- mail: '',
21
- image: '',
22
- code: '',
23
- date: '',
24
- responsible: '',
25
- third: '',
26
- odometer: '',
27
- approved_by: '',
28
- description: '',
29
- consecutive: '',
30
- nameProvider: '',
31
- addressProvider: '',
32
- area: '',
33
- };
34
- }
35
- ngOnInit() {
36
- this.data = this.dataModal.data;
37
- }
38
- ngAfterViewInit() {
39
- if (this.dataModal.autoGenerate) {
40
- this.downloadPDF();
41
- }
42
- }
43
- downloadPDF() {
44
- this.message.openLoading("Cargando", "Generando PDF");
45
- const DATA = document.getElementById('templateOT');
46
- const doc = new jsPDF('p', 'pt', 'a4');
47
- const options = {
48
- background: 'white',
49
- scale: 3
50
- };
51
- html2canvas(DATA, options)
52
- .then((canvas) => {
53
- const img = canvas.toDataURL('image/PNG');
54
- //add img canvas to pdf
55
- const bufferX = 15;
56
- const bufferY = 15;
57
- const imgProps = doc.getImageProperties(img);
58
- const pdfWidth = doc.internal.pageSize.getWidth() - 2 * bufferX;
59
- const pdfHeight = (imgProps.height * pdfWidth) / imgProps.width;
60
- doc.addImage(img, 'PNG', bufferX, bufferY, pdfWidth, pdfHeight, undefined, 'FAST');
61
- return doc;
62
- })
63
- .then((docResult) => {
64
- //docResult.save(`${new Date().toISOString()}_reporte.pdf`);
65
- docResult.output('dataurlnewwindow', { filename: 'reporte.pdf' });
66
- this.dialog.closeAll();
67
- this.message.closeLoading();
68
- });
69
- }
70
- }
71
- GeneratePdfComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GeneratePdfComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1.MatDialog }, { token: i2.MessageService }], target: i0.ɵɵFactoryTarget.Component });
72
- GeneratePdfComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: GeneratePdfComponent, selector: "app-generate-pdf", ngImport: i0, template: "<div id=\"templateOT\" #templateOT>\n <div class=\"template-ot\" style=\"display: flex; flex-direction: column; width:100%; margin:0; background-color: white;\">\n\n <!-- Encabezado -->\n <div class=\"borde\" style=\"width:100%; height:30mm; display:flex; flex-direction: row; align-items: center; \">\n <div style=\"width:70%; display:flex; flex-direction:column; align-items: center;\">\n <h2 style=\"margin:0; padding:0; text-align: center; text-transform: uppercase;\">{{data.name}}</h2>\n <h2 style=\"margin:0; padding:0; text-align: center; \">NIT: {{data.nit}}</h2>\n <div style=\"width:70%; display:flex; flex-direction:row; justify-content: space-around;\">\n <h3 style=\"margin:0; padding:0; text-align: center; \">{{data.address}}</h3>\n <h3 style=\"margin:0; padding:0; text-align: center; \">TEL: {{data.telephone}}</h3>\n </div>\n </div>\n <div style=\"width:30%;\">\n <div class=\"img\"\n style=\"width:90%; height:100px; margin: 10px; padding: 15px; background-image: url({{data.image}});\">\n </div>\n </div>\n\n\n </div>\n <div class=\"borde\"\n style=\"width:100%; height:10mm; display:flex; flex-direction: row; justify-content: space-around; align-items: center; background: #F0F4FF;\">\n <h2 style=\"margin:0; padding:0;\">ORDEN DE TRABAJO</h2>\n <h2 style=\"margin:0; padding:0;\">N\u00B0: {{data.consecutive}}</h2>\n\n </div>\n\n <!-- Cuerpo -->\n <div class=\"borde\" style=\"width:100%; height:11mm; display:flex; flex-direction:row; align-items: center\">\n <div style=\"width:13%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">Fecha:</h2>\n </div>\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">{{data.date}}</h2>\n </div>\n <div style=\"width:13%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">C\u00F3digo:</h2>\n </div>\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">{{data.code}}</h2>\n </div>\n <div style=\"width:12%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">\u00C1rea:</h2>\n </div>\n <div style=\"width:32%\">\n <h2 style=\"text-align: center; margin-top:20px; padding:0;\">{{data.area}}</h2>\n </div>\n\n </div>\n\n <div class=\"borde\" style=\"width:100%; height:11mm; display:flex; flex-direction:row; align-items: center\">\n <div style=\"width:13%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">Operario:</h2>\n </div>\n <div style=\"width:47%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">{{data.responsible}}</h2>\n </div>\n <div style=\"width:18%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">Od\u00F3metro:</h2>\n </div>\n <div style=\"width:22%\">\n <h2 style=\"text-align: center; margin-top:15px; padding:0\">{{data.odometer}}</h2>\n </div>\n </div>\n <div class=\"borde\" style=\"width:100%; height:10m; background: #F0F4FF;\">\n <h3 style=\"margin:0; padding:0; text-align: center;\">Datos del proveedor</h3>\n </div>\n <div class=\"borde\" style=\"width:100%; height:11mm; display:flex; flex-direction:row ; align-items: center\">\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">Nombre:</h2>\n </div>\n <div style=\"width:35%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">{{data.nameProvider}}</h2>\n </div>\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">Direcci\u00F3n:</h2>\n </div>\n <div style=\"width:35%\">\n <h2 style=\"text-align: center; margin-top:20px; padding:0;\">{{data.addressProvider}}</h2>\n </div>\n\n </div>\n <div class=\"borde\" style=\"width:100%; height:8mm; background: #F0F4FF;\">\n <h3 style=\"margin:0; padding:0; text-align: center;\">Detalles del servicio</h3>\n </div>\n <div class=\"borde\" style=\"width:100%; height:20mm;\">\n <h3 style=\"margin-top:11px; padding:0;\">{{data.description}}</h3>\n </div>\n\n <div class=\"borde\" style=\"width:100%; height:10mm; display:flex; flex-direction:row; align-items: center\">\n <div style=\"width:35%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin:1px; padding:0;\">AUTORIZADA POR:</h2>\n </div>\n <div style=\"width:65%\">\n <h2 style=\"text-align: center; margin:5px; padding:0;\">{{data.approved_by}}</h2>\n </div>\n\n </div>\n\n <!-- piso -->\n <div class=\"borde\"\n style=\"width:100%; height:15mm; display: flex; flex-direction: column; justify-content: center;\">\n <h3 style=\"margin:0; padding:0; text-align: center;\">Favor adjuntar la orden a la factura o cuenta de cobro\n </h3>\n <h3 style=\"margin:0; padding:0; text-align: center;\">{{data.mail}}</h3>\n\n </div>\n\n </div>\n</div>\n\n\n<div style=\"display: flex; justify-content: center; margin-top: 15px;\">\n <button (click)=\"downloadPDF()\" color='primary' mat-raised-button>Generar PDF</button>\n</div>", styles: [".img{background-size:100%;background-repeat:no-repeat;background-position:center;background-size:contain}h2{font-size:1rem}.borde{border:1px solid blue}\n"], dependencies: [{ kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GeneratePdfComponent, decorators: [{
74
- type: Component,
75
- args: [{ selector: 'app-generate-pdf', template: "<div id=\"templateOT\" #templateOT>\n <div class=\"template-ot\" style=\"display: flex; flex-direction: column; width:100%; margin:0; background-color: white;\">\n\n <!-- Encabezado -->\n <div class=\"borde\" style=\"width:100%; height:30mm; display:flex; flex-direction: row; align-items: center; \">\n <div style=\"width:70%; display:flex; flex-direction:column; align-items: center;\">\n <h2 style=\"margin:0; padding:0; text-align: center; text-transform: uppercase;\">{{data.name}}</h2>\n <h2 style=\"margin:0; padding:0; text-align: center; \">NIT: {{data.nit}}</h2>\n <div style=\"width:70%; display:flex; flex-direction:row; justify-content: space-around;\">\n <h3 style=\"margin:0; padding:0; text-align: center; \">{{data.address}}</h3>\n <h3 style=\"margin:0; padding:0; text-align: center; \">TEL: {{data.telephone}}</h3>\n </div>\n </div>\n <div style=\"width:30%;\">\n <div class=\"img\"\n style=\"width:90%; height:100px; margin: 10px; padding: 15px; background-image: url({{data.image}});\">\n </div>\n </div>\n\n\n </div>\n <div class=\"borde\"\n style=\"width:100%; height:10mm; display:flex; flex-direction: row; justify-content: space-around; align-items: center; background: #F0F4FF;\">\n <h2 style=\"margin:0; padding:0;\">ORDEN DE TRABAJO</h2>\n <h2 style=\"margin:0; padding:0;\">N\u00B0: {{data.consecutive}}</h2>\n\n </div>\n\n <!-- Cuerpo -->\n <div class=\"borde\" style=\"width:100%; height:11mm; display:flex; flex-direction:row; align-items: center\">\n <div style=\"width:13%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">Fecha:</h2>\n </div>\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">{{data.date}}</h2>\n </div>\n <div style=\"width:13%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">C\u00F3digo:</h2>\n </div>\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">{{data.code}}</h2>\n </div>\n <div style=\"width:12%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">\u00C1rea:</h2>\n </div>\n <div style=\"width:32%\">\n <h2 style=\"text-align: center; margin-top:20px; padding:0;\">{{data.area}}</h2>\n </div>\n\n </div>\n\n <div class=\"borde\" style=\"width:100%; height:11mm; display:flex; flex-direction:row; align-items: center\">\n <div style=\"width:13%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">Operario:</h2>\n </div>\n <div style=\"width:47%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:5px; padding:0;\">{{data.responsible}}</h2>\n </div>\n <div style=\"width:18%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">Od\u00F3metro:</h2>\n </div>\n <div style=\"width:22%\">\n <h2 style=\"text-align: center; margin-top:15px; padding:0\">{{data.odometer}}</h2>\n </div>\n </div>\n <div class=\"borde\" style=\"width:100%; height:10m; background: #F0F4FF;\">\n <h3 style=\"margin:0; padding:0; text-align: center;\">Datos del proveedor</h3>\n </div>\n <div class=\"borde\" style=\"width:100%; height:11mm; display:flex; flex-direction:row ; align-items: center\">\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">Nombre:</h2>\n </div>\n <div style=\"width:35%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">{{data.nameProvider}}</h2>\n </div>\n <div style=\"width:15%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin-top:3px; padding:0;\">Direcci\u00F3n:</h2>\n </div>\n <div style=\"width:35%\">\n <h2 style=\"text-align: center; margin-top:20px; padding:0;\">{{data.addressProvider}}</h2>\n </div>\n\n </div>\n <div class=\"borde\" style=\"width:100%; height:8mm; background: #F0F4FF;\">\n <h3 style=\"margin:0; padding:0; text-align: center;\">Detalles del servicio</h3>\n </div>\n <div class=\"borde\" style=\"width:100%; height:20mm;\">\n <h3 style=\"margin-top:11px; padding:0;\">{{data.description}}</h3>\n </div>\n\n <div class=\"borde\" style=\"width:100%; height:10mm; display:flex; flex-direction:row; align-items: center\">\n <div style=\"width:35%; border-right:1px solid blue; height: 100%;\">\n <h2 style=\"text-align: center; margin:1px; padding:0;\">AUTORIZADA POR:</h2>\n </div>\n <div style=\"width:65%\">\n <h2 style=\"text-align: center; margin:5px; padding:0;\">{{data.approved_by}}</h2>\n </div>\n\n </div>\n\n <!-- piso -->\n <div class=\"borde\"\n style=\"width:100%; height:15mm; display: flex; flex-direction: column; justify-content: center;\">\n <h3 style=\"margin:0; padding:0; text-align: center;\">Favor adjuntar la orden a la factura o cuenta de cobro\n </h3>\n <h3 style=\"margin:0; padding:0; text-align: center;\">{{data.mail}}</h3>\n\n </div>\n\n </div>\n</div>\n\n\n<div style=\"display: flex; justify-content: center; margin-top: 15px;\">\n <button (click)=\"downloadPDF()\" color='primary' mat-raised-button>Generar PDF</button>\n</div>", styles: [".img{background-size:100%;background-repeat:no-repeat;background-position:center;background-size:contain}h2{font-size:1rem}.borde{border:1px solid blue}\n"] }]
76
- }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
77
- type: Inject,
78
- args: [MAT_DIALOG_DATA]
79
- }] }, { type: i1.MatDialog }, { type: i2.MessageService }]; } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcGRmLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9icmFpbmxvcGVyLXVpL2NvbXBvbmVudHMvcmVwb3J0L2dlbmVyYXRlLXBkZi9nZW5lcmF0ZS1wZGYuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2JyYWlubG9wZXItdWkvY29tcG9uZW50cy9yZXBvcnQvZ2VuZXJhdGUtcGRmL2dlbmVyYXRlLXBkZi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxXQUFXLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFBMkIsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBT3BGLE1BQU0sT0FBTyxvQkFBb0I7SUFzQi9CLFlBQ1MsU0FBNkMsRUFDcEIsU0FBUyxFQUNqQyxNQUFnQixFQUNqQixPQUF1QjtRQUh2QixjQUFTLEdBQVQsU0FBUyxDQUFvQztRQUNwQixjQUFTLEdBQVQsU0FBUyxDQUFBO1FBQ2pDLFdBQU0sR0FBTixNQUFNLENBQVU7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUF4QmhDLFNBQUksR0FBRztZQUNMLElBQUksRUFBRSxFQUFFO1lBQ1IsR0FBRyxFQUFFLEVBQUU7WUFDUCxPQUFPLEVBQUUsRUFBRTtZQUNYLFNBQVMsRUFBRSxFQUFFO1lBQ2IsSUFBSSxFQUFFLEVBQUU7WUFDUixLQUFLLEVBQUUsRUFBRTtZQUNULElBQUksRUFBRSxFQUFFO1lBQ1IsSUFBSSxFQUFFLEVBQUU7WUFDUixXQUFXLEVBQUUsRUFBRTtZQUNmLEtBQUssRUFBRSxFQUFFO1lBQ1QsUUFBUSxFQUFFLEVBQUU7WUFDWixXQUFXLEVBQUUsRUFBRTtZQUNmLFdBQVcsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsRUFBRTtZQUNoQixlQUFlLEVBQUUsRUFBRTtZQUNuQixJQUFJLEVBQUUsRUFBRTtTQUNULENBQUE7SUFPRyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUE7SUFDakMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFDO1lBQzdCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtTQUNuQjtJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQTtRQUNyRCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25ELE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkMsTUFBTSxPQUFPLEdBQUc7WUFDZCxVQUFVLEVBQUUsT0FBTztZQUNuQixLQUFLLEVBQUUsQ0FBQztTQUNULENBQUM7UUFDRixXQUFXLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQzthQUN2QixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNoQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRTNDLHVCQUF1QjtZQUN2QixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbkIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ25CLE1BQU0sUUFBUSxHQUFJLEdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0RCxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsR0FBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO1lBQy9ELE1BQU0sU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ2hFLEdBQUcsQ0FBQyxRQUFRLENBQ1YsR0FBRyxFQUNILEtBQUssRUFDTCxPQUFPLEVBQ1AsT0FBTyxFQUNQLFFBQVEsRUFDUixTQUFTLEVBQ1QsU0FBUyxFQUNULE1BQU0sQ0FDUCxDQUFDO1lBQ0YsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUM7YUFDRCxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNuQiw0REFBNEQ7WUFDM0QsU0FBUyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxFQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUMsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUE7WUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O2lIQTNFVSxvQkFBb0IsOENBd0JyQixlQUFlO3FHQXhCZCxvQkFBb0Isd0RDWGpDLHF4TUFtSE07MkZEeEdPLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQTRCekIsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGpzUERGIGZyb20gJ2pzcGRmJztcbmltcG9ydCBodG1sMmNhbnZhcyBmcm9tICdodG1sMmNhbnZhcyc7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWdlbmVyYXRlLXBkZicsXG4gIHRlbXBsYXRlVXJsOiAnLi9nZW5lcmF0ZS1wZGYuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9nZW5lcmF0ZS1wZGYuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHZW5lcmF0ZVBkZkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZGF0YSA9IHtcbiAgICBuYW1lOiAnJyxcbiAgICBuaXQ6ICcnLFxuICAgIGFkZHJlc3M6ICcnLFxuICAgIHRlbGVwaG9uZTogJycsXG4gICAgbWFpbDogJycsXG4gICAgaW1hZ2U6ICcnLFxuICAgIGNvZGU6ICcnLFxuICAgIGRhdGU6ICcnLFxuICAgIHJlc3BvbnNpYmxlOiAnJyxcbiAgICB0aGlyZDogJycsXG4gICAgb2RvbWV0ZXI6ICcnLFxuICAgIGFwcHJvdmVkX2J5OiAnJyxcbiAgICBkZXNjcmlwdGlvbjogJycsXG4gICAgY29uc2VjdXRpdmU6ICcnLFxuICAgIG5hbWVQcm92aWRlcjogJycsXG4gICAgYWRkcmVzc1Byb3ZpZGVyOiAnJyxcbiAgICBhcmVhOiAnJyxcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxHZW5lcmF0ZVBkZkNvbXBvbmVudD4sXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhTW9kYWwsXG4gICAgcHJpdmF0ZSBkaWFsb2c6TWF0RGlhbG9nLFxuICAgIHB1YmxpYyBtZXNzYWdlOiBNZXNzYWdlU2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YU1vZGFsLmRhdGFcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpe1xuICAgIGlmKHRoaXMuZGF0YU1vZGFsLmF1dG9HZW5lcmF0ZSl7XG4gICAgICB0aGlzLmRvd25sb2FkUERGKClcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZG93bmxvYWRQREYoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlLm9wZW5Mb2FkaW5nKFwiQ2FyZ2FuZG9cIiwgXCJHZW5lcmFuZG8gUERGXCIpXG4gICAgY29uc3QgREFUQSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZW1wbGF0ZU9UJyk7XG4gICAgY29uc3QgZG9jID0gbmV3IGpzUERGKCdwJywgJ3B0JywgJ2E0Jyk7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIGJhY2tncm91bmQ6ICd3aGl0ZScsXG4gICAgICBzY2FsZTogM1xuICAgIH07XG4gICAgaHRtbDJjYW52YXMoREFUQSwgb3B0aW9ucylcbiAgICAgIC50aGVuKChjYW52YXMpID0+IHtcbiAgICAgICBjb25zdCBpbWcgPSBjYW52YXMudG9EYXRhVVJMKCdpbWFnZS9QTkcnKTtcblxuICAgICAgLy9hZGQgaW1nIGNhbnZhcyB0byBwZGZcbiAgICAgIGNvbnN0IGJ1ZmZlclggPSAxNTtcbiAgICAgIGNvbnN0IGJ1ZmZlclkgPSAxNTtcbiAgICAgIGNvbnN0IGltZ1Byb3BzID0gKGRvYyBhcyBhbnkpLmdldEltYWdlUHJvcGVydGllcyhpbWcpO1xuICAgICAgY29uc3QgcGRmV2lkdGggPSBkb2MuaW50ZXJuYWwucGFnZVNpemUuZ2V0V2lkdGgoKSAtMiAqIGJ1ZmZlclg7XG4gICAgICBjb25zdCBwZGZIZWlnaHQgPSAoaW1nUHJvcHMuaGVpZ2h0ICogcGRmV2lkdGgpIC8gaW1nUHJvcHMud2lkdGg7XG4gICAgICBkb2MuYWRkSW1hZ2UoXG4gICAgICAgIGltZyxcbiAgICAgICAgJ1BORycsXG4gICAgICAgIGJ1ZmZlclgsXG4gICAgICAgIGJ1ZmZlclksXG4gICAgICAgIHBkZldpZHRoLFxuICAgICAgICBwZGZIZWlnaHQsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgJ0ZBU1QnXG4gICAgICApO1xuICAgICAgcmV0dXJuIGRvYztcbiAgICB9KVxuICAgIC50aGVuKChkb2NSZXN1bHQpID0+IHtcbiAgICAgLy9kb2NSZXN1bHQuc2F2ZShgJHtuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCl9X3JlcG9ydGUucGRmYCk7XG4gICAgICBkb2NSZXN1bHQub3V0cHV0KCdkYXRhdXJsbmV3d2luZG93Jywge2ZpbGVuYW1lOiAncmVwb3J0ZS5wZGYnfSk7XG4gICAgICB0aGlzLmRpYWxvZy5jbG9zZUFsbCgpXG4gICAgICB0aGlzLm1lc3NhZ2UuY2xvc2VMb2FkaW5nKClcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBpZD1cInRlbXBsYXRlT1RcIiAjdGVtcGxhdGVPVD5cbiAgICA8ZGl2IGNsYXNzPVwidGVtcGxhdGUtb3RcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IHdpZHRoOjEwMCU7IG1hcmdpbjowOyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcIj5cblxuICAgICAgICA8IS0tIEVuY2FiZXphZG8gIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVcIiBzdHlsZT1cIndpZHRoOjEwMCU7IGhlaWdodDozMG1tOyBkaXNwbGF5OmZsZXg7IGZsZXgtZGlyZWN0aW9uOiByb3c7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IFwiPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjcwJTsgZGlzcGxheTpmbGV4OyBmbGV4LWRpcmVjdGlvbjpjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7XCI+XG4gICAgICAgICAgICAgICAgPGgyIHN0eWxlPVwibWFyZ2luOjA7IHBhZGRpbmc6MDsgdGV4dC1hbGlnbjogY2VudGVyOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1wiPnt7ZGF0YS5uYW1lfX08L2gyPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cIm1hcmdpbjowOyBwYWRkaW5nOjA7IHRleHQtYWxpZ246IGNlbnRlcjsgXCI+TklUOiB7e2RhdGEubml0fX08L2gyPlxuICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDo3MCU7IGRpc3BsYXk6ZmxleDsgZmxleC1kaXJlY3Rpb246cm93OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcIj5cbiAgICAgICAgICAgICAgICAgICAgPGgzIHN0eWxlPVwibWFyZ2luOjA7IHBhZGRpbmc6MDsgdGV4dC1hbGlnbjogY2VudGVyOyBcIj57e2RhdGEuYWRkcmVzc319PC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPGgzIHN0eWxlPVwibWFyZ2luOjA7IHBhZGRpbmc6MDsgdGV4dC1hbGlnbjogY2VudGVyOyBcIj5URUw6IHt7ZGF0YS50ZWxlcGhvbmV9fTwvaDM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDozMCU7XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZ1wiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6OTAlOyBoZWlnaHQ6MTAwcHg7IG1hcmdpbjogMTBweDsgICBwYWRkaW5nOiAxNXB4OyAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHt7ZGF0YS5pbWFnZX19KTtcIj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZVwiXG4gICAgICAgICAgICBzdHlsZT1cIndpZHRoOjEwMCU7IGhlaWdodDoxMG1tOyBkaXNwbGF5OmZsZXg7IGZsZXgtZGlyZWN0aW9uOiByb3c7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyBhbGlnbi1pdGVtczogY2VudGVyOyBiYWNrZ3JvdW5kOiAjRjBGNEZGO1wiPlxuICAgICAgICAgICAgPGgyIHN0eWxlPVwibWFyZ2luOjA7IHBhZGRpbmc6MDtcIj5PUkRFTiBERSBUUkFCQUpPPC9oMj5cbiAgICAgICAgICAgIDxoMiBzdHlsZT1cIm1hcmdpbjowOyBwYWRkaW5nOjA7XCI+TsKwOiB7e2RhdGEuY29uc2VjdXRpdmV9fTwvaDI+XG5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSBDdWVycG8gLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZVwiIHN0eWxlPVwid2lkdGg6MTAwJTsgaGVpZ2h0OjExbW07IGRpc3BsYXk6ZmxleDsgZmxleC1kaXJlY3Rpb246cm93OyBhbGlnbi1pdGVtczogY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6MTMlOyBib3JkZXItcmlnaHQ6MXB4IHNvbGlkIGJsdWU7IGhlaWdodDogMTAwJTtcIj5cbiAgICAgICAgICAgICAgICA8aDIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi10b3A6NXB4OyBwYWRkaW5nOjA7XCI+RmVjaGE6PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjE1JTsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAgYmx1ZTsgaGVpZ2h0OiAxMDAlO1wiPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDo1cHg7IHBhZGRpbmc6MDtcIj57e2RhdGEuZGF0ZX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjEzJTsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAgYmx1ZTsgaGVpZ2h0OiAxMDAlO1wiPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDo1cHg7IHBhZGRpbmc6MDtcIj5Dw7NkaWdvOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDoxNSU7IGJvcmRlci1yaWdodDoxcHggc29saWQgIGJsdWU7IGhlaWdodDogMTAwJTtcIj5cbiAgICAgICAgICAgICAgICA8aDIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi10b3A6NXB4OyBwYWRkaW5nOjA7XCI+e3tkYXRhLmNvZGV9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDoxMiU7IGJvcmRlci1yaWdodDoxcHggc29saWQgIGJsdWU7IGhlaWdodDogMTAwJTtcIj5cbiAgICAgICAgICAgICAgICA8aDIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi10b3A6NXB4OyBwYWRkaW5nOjA7XCI+w4FyZWE6PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjMyJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDoyMHB4OyBwYWRkaW5nOjA7XCI+e3tkYXRhLmFyZWF9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVcIiBzdHlsZT1cIndpZHRoOjEwMCU7IGhlaWdodDoxMW1tOyBkaXNwbGF5OmZsZXg7IGZsZXgtZGlyZWN0aW9uOnJvdzsgYWxpZ24taXRlbXM6IGNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjEzJTsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAgYmx1ZTsgaGVpZ2h0OiAxMDAlO1wiPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDo1cHg7IHBhZGRpbmc6MDtcIj5PcGVyYXJpbzo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6NDclOyBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICBibHVlOyBoZWlnaHQ6IDEwMCU7XCI+XG4gICAgICAgICAgICAgICAgPGgyIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tdG9wOjVweDsgcGFkZGluZzowO1wiPnt7ZGF0YS5yZXNwb25zaWJsZX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjE4JTsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAgYmx1ZTsgaGVpZ2h0OiAxMDAlO1wiPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDozcHg7IHBhZGRpbmc6MDtcIj5PZMOzbWV0cm86PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjIyJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLXRvcDoxNXB4OyBwYWRkaW5nOjBcIj57e2RhdGEub2RvbWV0ZXJ9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZVwiIHN0eWxlPVwid2lkdGg6MTAwJTsgaGVpZ2h0OjEwbTsgYmFja2dyb3VuZDogI0YwRjRGRjtcIj5cbiAgICAgICAgICAgIDxoMyBzdHlsZT1cIm1hcmdpbjowOyBwYWRkaW5nOjA7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5EYXRvcyBkZWwgcHJvdmVlZG9yPC9oMz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZVwiIHN0eWxlPVwid2lkdGg6MTAwJTsgaGVpZ2h0OjExbW07IGRpc3BsYXk6ZmxleDsgZmxleC1kaXJlY3Rpb246cm93IDsgYWxpZ24taXRlbXM6IGNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjE1JTsgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCBibHVlOyBoZWlnaHQ6IDEwMCU7XCI+XG4gICAgICAgICAgICAgICAgPGgyIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tdG9wOjNweDsgcGFkZGluZzowO1wiPk5vbWJyZTo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6MzUlOyBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICBibHVlOyBoZWlnaHQ6IDEwMCU7XCI+XG4gICAgICAgICAgICAgICAgPGgyIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tdG9wOjNweDsgcGFkZGluZzowO1wiPnt7ZGF0YS5uYW1lUHJvdmlkZXJ9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDoxNSU7IGJvcmRlci1yaWdodDoxcHggc29saWQgIGJsdWU7IGhlaWdodDogMTAwJTtcIj5cbiAgICAgICAgICAgICAgICA8aDIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi10b3A6M3B4OyBwYWRkaW5nOjA7XCI+RGlyZWNjacOzbjo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6MzUlXCI+XG4gICAgICAgICAgICAgICAgPGgyIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tdG9wOjIwcHg7IHBhZGRpbmc6MDtcIj57e2RhdGEuYWRkcmVzc1Byb3ZpZGVyfX08L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZVwiIHN0eWxlPVwid2lkdGg6MTAwJTsgaGVpZ2h0OjhtbTsgYmFja2dyb3VuZDogI0YwRjRGRjtcIj5cbiAgICAgICAgICAgIDxoMyBzdHlsZT1cIm1hcmdpbjowOyBwYWRkaW5nOjA7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5EZXRhbGxlcyBkZWwgc2VydmljaW88L2gzPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlXCIgc3R5bGU9XCJ3aWR0aDoxMDAlOyBoZWlnaHQ6MjBtbTtcIj5cbiAgICAgICAgICAgIDxoMyBzdHlsZT1cIm1hcmdpbi10b3A6MTFweDsgcGFkZGluZzowO1wiPnt7ZGF0YS5kZXNjcmlwdGlvbn19PC9oMz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlXCIgc3R5bGU9XCJ3aWR0aDoxMDAlOyBoZWlnaHQ6MTBtbTsgZGlzcGxheTpmbGV4OyBmbGV4LWRpcmVjdGlvbjpyb3c7IGFsaWduLWl0ZW1zOiBjZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDozNSU7IGJvcmRlci1yaWdodDoxcHggc29saWQgYmx1ZTsgIGhlaWdodDogMTAwJTtcIj5cbiAgICAgICAgICAgICAgICA8aDIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbjoxcHg7IHBhZGRpbmc6MDtcIj5BVVRPUklaQURBIFBPUjo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6NjUlXCI+XG4gICAgICAgICAgICAgICAgPGgyIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW46NXB4OyBwYWRkaW5nOjA7XCI+e3tkYXRhLmFwcHJvdmVkX2J5fX08L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSBwaXNvIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVcIlxuICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDoxMDAlOyBoZWlnaHQ6MTVtbTsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XCI+XG4gICAgICAgICAgICA8aDMgc3R5bGU9XCJtYXJnaW46MDsgcGFkZGluZzowOyB0ZXh0LWFsaWduOiBjZW50ZXI7XCI+RmF2b3IgYWRqdW50YXIgbGEgb3JkZW4gYSBsYSBmYWN0dXJhIG8gY3VlbnRhIGRlIGNvYnJvXG4gICAgICAgICAgICA8L2gzPlxuICAgICAgICAgICAgPGgzIHN0eWxlPVwibWFyZ2luOjA7IHBhZGRpbmc6MDsgdGV4dC1hbGlnbjogY2VudGVyO1wiPnt7ZGF0YS5tYWlsfX08L2gzPlxuXG4gICAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG48L2Rpdj5cblxuXG48ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IG1hcmdpbi10b3A6IDE1cHg7XCI+XG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiZG93bmxvYWRQREYoKVwiIGNvbG9yPSdwcmltYXJ5JyBtYXQtcmFpc2VkLWJ1dHRvbj5HZW5lcmFyIFBERjwvYnV0dG9uPlxuPC9kaXY+Il19
1
+ import { Component, Inject } from '@angular/core';
2
+ import jsPDF from 'jspdf';
3
+ import html2canvas from 'html2canvas';
4
+ import { MAT_DIALOG_DATA } from '@angular/material/dialog';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/material/dialog";
7
+ import * as i2 from "../../../../services/message.service";
8
+ import * as i3 from "@angular/material/button";
9
+ export class GeneratePdfComponent {
10
+ constructor(dialogRef, dataModal, dialog, message) {
11
+ this.dialogRef = dialogRef;
12
+ this.dataModal = dataModal;
13
+ this.dialog = dialog;
14
+ this.message = message;
15
+ this.data = {
16
+ name: '',
17
+ nit: '',
18
+ address: '',
19
+ telephone: '',
20
+ mail: '',
21
+ image: '',
22
+ code: '',
23
+ date: '',
24
+ responsible: '',
25
+ third: '',
26
+ odometer: '',
27
+ approved_by: '',
28
+ description: '',
29
+ consecutive: '',
30
+ nameProvider: '',
31
+ addressProvider: '',
32
+ area: '',
33
+ invoiceReference: '',
34
+ };
35
+ }
36
+ ngOnInit() {
37
+ this.data = this.dataModal.data;
38
+ }
39
+ ngAfterViewInit() {
40
+ if (this.dataModal.autoGenerate) {
41
+ this.downloadPDF();
42
+ }
43
+ }
44
+ downloadPDF() {
45
+ this.message.openLoading("Cargando", "Generando PDF");
46
+ const DATA = document.getElementById('templateOT');
47
+ const doc = new jsPDF('p', 'pt', 'a4');
48
+ const options = {
49
+ background: 'white',
50
+ scale: 3
51
+ };
52
+ html2canvas(DATA, options)
53
+ .then((canvas) => {
54
+ const img = canvas.toDataURL('image/PNG');
55
+ //add img canvas to pdf
56
+ const bufferX = 15;
57
+ const bufferY = 15;
58
+ const imgProps = doc.getImageProperties(img);
59
+ const pdfWidth = doc.internal.pageSize.getWidth() - 2 * bufferX;
60
+ const pdfHeight = (imgProps.height * pdfWidth) / imgProps.width;
61
+ doc.addImage(img, 'PNG', bufferX, bufferY, pdfWidth, pdfHeight, undefined, 'FAST');
62
+ return doc;
63
+ })
64
+ .then((docResult) => {
65
+ //docResult.save(`${new Date().toISOString()}_reporte.pdf`);
66
+ docResult.output('dataurlnewwindow', { filename: 'reporte.pdf' });
67
+ this.dialog.closeAll();
68
+ this.message.closeLoading();
69
+ });
70
+ }
71
+ }
72
+ GeneratePdfComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GeneratePdfComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1.MatDialog }, { token: i2.MessageService }], target: i0.ɵɵFactoryTarget.Component });
73
+ GeneratePdfComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: GeneratePdfComponent, selector: "app-generate-pdf", ngImport: i0, template: "<div id=\"templateOT\" #templateOT>\r\n <div class=\"d-flex flex-column w-100 white-background\">\r\n\r\n <!-- Encabezado -->\r\n <div class=\"borde w-100 d-flex flex-row align-items-center header-section\">\r\n <div class=\"d-flex flex-column align-items-center text-content\" style=\"width:80%\">\r\n <h2 class=\"text-header text-uppercase wrap-text\">{{data.name}}</h2>\r\n <h2 class=\"text-header wrap-text\">NIT: {{data.nit}}</h2>\r\n <div class=\"w-100 d-flex flex-row justify-content-evenly\">\r\n <h3 class=\"text-header wrap-text\">{{data.address}}</h3>\r\n <h3 class=\"text-header wrap-text\">TEL: {{data.telephone}}</h3>\r\n </div>\r\n </div>\r\n <div style=\"width:20%\">\r\n <div class=\"img w-100\" [style.background-image]=\"'url(' + data.image + ')'\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde container-headers\">\r\n <h2>Orden de trabajo</h2>\r\n <h2 class=\"wrap-text\">N\u00B0: {{data.consecutive}}</h2>\r\n </div>\r\n\r\n <!-- Cuerpo -->\r\n <div class=\"borde w-100 flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">\u00C1rea:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\r\n <h2 class=\"wrap-text\">{{data.area}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">C\u00F3digo:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.code}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Fecha:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.date}}</h2>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde w-100 flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Operario:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\r\n <h2 class=\"wrap-text\">{{data.responsible}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Od\u00F3metro:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.odometer}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Referencia Factura:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.invoiceReference}}</h2>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde container-headers\">\r\n <h2>Datos del proveedor</h2>\r\n </div>\r\n\r\n <div class=\"borde flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:15%\">\r\n <h2 class=\"fw-bold\">Nombre:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:35%\">\r\n <h2 class=\"wrap-text\">{{data.nameProvider}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:15%\">\r\n <h2 class=\"fw-bold\">Direcci\u00F3n:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:35%\">\r\n <h2 class=\"wrap-text\">{{data.addressProvider}}</h2>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde container-headers\">\r\n <h2>Detalles del servicio</h2>\r\n </div>\r\n\r\n <div class=\"borde w-100 description-section\">\r\n <h2 class=\"wrap-text text-start\">{{data.description}}</h2>\r\n </div>\r\n\r\n <div class=\"borde w-100 flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:35%\">\r\n <h2 class=\"fw-bold\">AUTORIZADA POR:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:65%\">\r\n <h2 class=\"wrap-text\">{{data.approved_by}}</h2>\r\n </div>\r\n </div>\r\n\r\n <!-- piso -->\r\n <div class=\"borde d-flex flex-column align-items-center justify-content-center w-100 footer-section\">\r\n <h2>Favor adjuntar la orden a la factura o cuenta de cobro</h2>\r\n <h2 class=\"wrap-text\">{{data.mail}}</h2>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n\r\n<div class=\"download-container\">\r\n <button (click)=\"downloadPDF()\" color='primary' mat-raised-button>Generar PDF</button>\r\n</div>", styles: [".img{background-size:100%;background-repeat:no-repeat;background-position:center;background-size:contain;height:22mm;margin:10px;padding:15px}h2{font-size:1rem;line-height:1.2;margin:0;padding:0;text-align:center}h3{line-height:1.2;margin:0;padding:0;text-align:center}.text-header{line-height:1.5;font-weight:700}.text-uppercase{text-transform:uppercase}.wrap-text{white-space:pre-wrap}.text-content{padding:5px;word-wrap:break-word;overflow-wrap:break-word}.borde{border:1px solid blue}.border-r{border-right:1px solid blue;min-height:100%;align-self:stretch}.container-text{display:flex;justify-content:center;align-items:center;min-height:inherit}.container-headers{display:flex;align-items:center;justify-content:space-evenly;width:100%;min-height:8mm;background:rgba(240,244,255,.6117647059);padding:5px;word-wrap:break-word;overflow-wrap:break-word}.container-headers h2{font-weight:700}.flexible-row{display:flex;flex-direction:row;align-items:stretch;min-height:11mm}.header-section{min-height:25mm}.footer-section{min-height:14mm;background:rgba(240,244,255,.35);padding:5px;word-wrap:break-word;overflow-wrap:break-word}.description-section{min-height:20mm;padding:10px;word-wrap:break-word;overflow-wrap:break-word}.w-100{width:100%!important}.text-start{text-align:start}.white-background{background-color:#fff}.download-container{display:flex;justify-content:center;margin-top:15px}\n"], dependencies: [{ kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: GeneratePdfComponent, decorators: [{
75
+ type: Component,
76
+ args: [{ selector: 'app-generate-pdf', template: "<div id=\"templateOT\" #templateOT>\r\n <div class=\"d-flex flex-column w-100 white-background\">\r\n\r\n <!-- Encabezado -->\r\n <div class=\"borde w-100 d-flex flex-row align-items-center header-section\">\r\n <div class=\"d-flex flex-column align-items-center text-content\" style=\"width:80%\">\r\n <h2 class=\"text-header text-uppercase wrap-text\">{{data.name}}</h2>\r\n <h2 class=\"text-header wrap-text\">NIT: {{data.nit}}</h2>\r\n <div class=\"w-100 d-flex flex-row justify-content-evenly\">\r\n <h3 class=\"text-header wrap-text\">{{data.address}}</h3>\r\n <h3 class=\"text-header wrap-text\">TEL: {{data.telephone}}</h3>\r\n </div>\r\n </div>\r\n <div style=\"width:20%\">\r\n <div class=\"img w-100\" [style.background-image]=\"'url(' + data.image + ')'\">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde container-headers\">\r\n <h2>Orden de trabajo</h2>\r\n <h2 class=\"wrap-text\">N\u00B0: {{data.consecutive}}</h2>\r\n </div>\r\n\r\n <!-- Cuerpo -->\r\n <div class=\"borde w-100 flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">\u00C1rea:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\r\n <h2 class=\"wrap-text\">{{data.area}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">C\u00F3digo:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.code}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Fecha:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.date}}</h2>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde w-100 flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Operario:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\r\n <h2 class=\"wrap-text\">{{data.responsible}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Od\u00F3metro:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.odometer}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:12%\">\r\n <h2 class=\"fw-bold\">Referencia Factura:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:16%\">\r\n <h2 class=\"wrap-text\">{{data.invoiceReference}}</h2>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde container-headers\">\r\n <h2>Datos del proveedor</h2>\r\n </div>\r\n\r\n <div class=\"borde flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:15%\">\r\n <h2 class=\"fw-bold\">Nombre:</h2>\r\n </div>\r\n <div class=\"border-r container-text text-content\" style=\"width:35%\">\r\n <h2 class=\"wrap-text\">{{data.nameProvider}}</h2>\r\n </div>\r\n <div class=\"border-r container-text\" style=\"width:15%\">\r\n <h2 class=\"fw-bold\">Direcci\u00F3n:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:35%\">\r\n <h2 class=\"wrap-text\">{{data.addressProvider}}</h2>\r\n </div>\r\n </div>\r\n\r\n <div class=\"borde container-headers\">\r\n <h2>Detalles del servicio</h2>\r\n </div>\r\n\r\n <div class=\"borde w-100 description-section\">\r\n <h2 class=\"wrap-text text-start\">{{data.description}}</h2>\r\n </div>\r\n\r\n <div class=\"borde w-100 flexible-row\">\r\n <div class=\"border-r container-text\" style=\"width:35%\">\r\n <h2 class=\"fw-bold\">AUTORIZADA POR:</h2>\r\n </div>\r\n <div class=\"container-text text-content\" style=\"width:65%\">\r\n <h2 class=\"wrap-text\">{{data.approved_by}}</h2>\r\n </div>\r\n </div>\r\n\r\n <!-- piso -->\r\n <div class=\"borde d-flex flex-column align-items-center justify-content-center w-100 footer-section\">\r\n <h2>Favor adjuntar la orden a la factura o cuenta de cobro</h2>\r\n <h2 class=\"wrap-text\">{{data.mail}}</h2>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n\r\n<div class=\"download-container\">\r\n <button (click)=\"downloadPDF()\" color='primary' mat-raised-button>Generar PDF</button>\r\n</div>", styles: [".img{background-size:100%;background-repeat:no-repeat;background-position:center;background-size:contain;height:22mm;margin:10px;padding:15px}h2{font-size:1rem;line-height:1.2;margin:0;padding:0;text-align:center}h3{line-height:1.2;margin:0;padding:0;text-align:center}.text-header{line-height:1.5;font-weight:700}.text-uppercase{text-transform:uppercase}.wrap-text{white-space:pre-wrap}.text-content{padding:5px;word-wrap:break-word;overflow-wrap:break-word}.borde{border:1px solid blue}.border-r{border-right:1px solid blue;min-height:100%;align-self:stretch}.container-text{display:flex;justify-content:center;align-items:center;min-height:inherit}.container-headers{display:flex;align-items:center;justify-content:space-evenly;width:100%;min-height:8mm;background:rgba(240,244,255,.6117647059);padding:5px;word-wrap:break-word;overflow-wrap:break-word}.container-headers h2{font-weight:700}.flexible-row{display:flex;flex-direction:row;align-items:stretch;min-height:11mm}.header-section{min-height:25mm}.footer-section{min-height:14mm;background:rgba(240,244,255,.35);padding:5px;word-wrap:break-word;overflow-wrap:break-word}.description-section{min-height:20mm;padding:10px;word-wrap:break-word;overflow-wrap:break-word}.w-100{width:100%!important}.text-start{text-align:start}.white-background{background-color:#fff}.download-container{display:flex;justify-content:center;margin-top:15px}\n"] }]
77
+ }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
78
+ type: Inject,
79
+ args: [MAT_DIALOG_DATA]
80
+ }] }, { type: i1.MatDialog }, { type: i2.MessageService }]; } });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcGRmLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9icmFpbmxvcGVyLXVpL2NvbXBvbmVudHMvcmVwb3J0L2dlbmVyYXRlLXBkZi9nZW5lcmF0ZS1wZGYuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2JyYWlubG9wZXItdWkvY29tcG9uZW50cy9yZXBvcnQvZ2VuZXJhdGUtcGRmL2dlbmVyYXRlLXBkZi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxXQUFXLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFBMkIsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBT3BGLE1BQU0sT0FBTyxvQkFBb0I7SUF1Qi9CLFlBQ1MsU0FBNkMsRUFDcEIsU0FBUyxFQUNqQyxNQUFnQixFQUNqQixPQUF1QjtRQUh2QixjQUFTLEdBQVQsU0FBUyxDQUFvQztRQUNwQixjQUFTLEdBQVQsU0FBUyxDQUFBO1FBQ2pDLFdBQU0sR0FBTixNQUFNLENBQVU7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUF6QmhDLFNBQUksR0FBRztZQUNMLElBQUksRUFBRSxFQUFFO1lBQ1IsR0FBRyxFQUFFLEVBQUU7WUFDUCxPQUFPLEVBQUUsRUFBRTtZQUNYLFNBQVMsRUFBRSxFQUFFO1lBQ2IsSUFBSSxFQUFFLEVBQUU7WUFDUixLQUFLLEVBQUUsRUFBRTtZQUNULElBQUksRUFBRSxFQUFFO1lBQ1IsSUFBSSxFQUFFLEVBQUU7WUFDUixXQUFXLEVBQUUsRUFBRTtZQUNmLEtBQUssRUFBRSxFQUFFO1lBQ1QsUUFBUSxFQUFFLEVBQUU7WUFDWixXQUFXLEVBQUUsRUFBRTtZQUNmLFdBQVcsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsRUFBRTtZQUNoQixlQUFlLEVBQUUsRUFBRTtZQUNuQixJQUFJLEVBQUUsRUFBRTtZQUNSLGdCQUFnQixFQUFFLEVBQUU7U0FDckIsQ0FBQTtJQU9HLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQTtJQUNqQyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUM7WUFDN0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFBO1NBQ25CO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFBO1FBQ3JELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2QyxNQUFNLE9BQU8sR0FBRztZQUNkLFVBQVUsRUFBRSxPQUFPO1lBQ25CLEtBQUssRUFBRSxDQUFDO1NBQ1QsQ0FBQztRQUNGLFdBQVcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO2FBQ3ZCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFM0MsdUJBQXVCO1lBQ3ZCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNuQixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbkIsTUFBTSxRQUFRLEdBQUksR0FBVyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxHQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7WUFDL0QsTUFBTSxTQUFTLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDaEUsR0FBRyxDQUFDLFFBQVEsQ0FDVixHQUFHLEVBQ0gsS0FBSyxFQUNMLE9BQU8sRUFDUCxPQUFPLEVBQ1AsUUFBUSxFQUNSLFNBQVMsRUFDVCxTQUFTLEVBQ1QsTUFBTSxDQUNQLENBQUM7WUFDRixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25CLDREQUE0RDtZQUMzRCxTQUFTLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLEVBQUMsUUFBUSxFQUFFLGFBQWEsRUFBQyxDQUFDLENBQUM7WUFDaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQTtZQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7aUhBNUVVLG9CQUFvQiw4Q0F5QnJCLGVBQWU7cUdBekJkLG9CQUFvQix3RENYakMsNHRLQWtITTsyRkR2R08sb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBNkJ6QixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGpzUERGIGZyb20gJ2pzcGRmJztcclxuaW1wb3J0IGh0bWwyY2FudmFzIGZyb20gJ2h0bWwyY2FudmFzJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1nZW5lcmF0ZS1wZGYnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9nZW5lcmF0ZS1wZGYuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2dlbmVyYXRlLXBkZi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBHZW5lcmF0ZVBkZkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGRhdGEgPSB7XHJcbiAgICBuYW1lOiAnJyxcclxuICAgIG5pdDogJycsXHJcbiAgICBhZGRyZXNzOiAnJyxcclxuICAgIHRlbGVwaG9uZTogJycsXHJcbiAgICBtYWlsOiAnJyxcclxuICAgIGltYWdlOiAnJyxcclxuICAgIGNvZGU6ICcnLFxyXG4gICAgZGF0ZTogJycsXHJcbiAgICByZXNwb25zaWJsZTogJycsXHJcbiAgICB0aGlyZDogJycsXHJcbiAgICBvZG9tZXRlcjogJycsXHJcbiAgICBhcHByb3ZlZF9ieTogJycsXHJcbiAgICBkZXNjcmlwdGlvbjogJycsXHJcbiAgICBjb25zZWN1dGl2ZTogJycsXHJcbiAgICBuYW1lUHJvdmlkZXI6ICcnLFxyXG4gICAgYWRkcmVzc1Byb3ZpZGVyOiAnJyxcclxuICAgIGFyZWE6ICcnLFxyXG4gICAgaW52b2ljZVJlZmVyZW5jZTogJycsXHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxHZW5lcmF0ZVBkZkNvbXBvbmVudD4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGFNb2RhbCxcclxuICAgIHByaXZhdGUgZGlhbG9nOk1hdERpYWxvZyxcclxuICAgIHB1YmxpYyBtZXNzYWdlOiBNZXNzYWdlU2VydmljZVxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhTW9kYWwuZGF0YVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCl7XHJcbiAgICBpZih0aGlzLmRhdGFNb2RhbC5hdXRvR2VuZXJhdGUpe1xyXG4gICAgICB0aGlzLmRvd25sb2FkUERGKClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBkb3dubG9hZFBERigpOiB2b2lkIHtcclxuICAgIHRoaXMubWVzc2FnZS5vcGVuTG9hZGluZyhcIkNhcmdhbmRvXCIsIFwiR2VuZXJhbmRvIFBERlwiKVxyXG4gICAgY29uc3QgREFUQSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZW1wbGF0ZU9UJyk7XHJcbiAgICBjb25zdCBkb2MgPSBuZXcganNQREYoJ3AnLCAncHQnLCAnYTQnKTtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICd3aGl0ZScsXHJcbiAgICAgIHNjYWxlOiAzXHJcbiAgICB9O1xyXG4gICAgaHRtbDJjYW52YXMoREFUQSwgb3B0aW9ucylcclxuICAgICAgLnRoZW4oKGNhbnZhcykgPT4ge1xyXG4gICAgICAgY29uc3QgaW1nID0gY2FudmFzLnRvRGF0YVVSTCgnaW1hZ2UvUE5HJyk7XHJcblxyXG4gICAgICAvL2FkZCBpbWcgY2FudmFzIHRvIHBkZlxyXG4gICAgICBjb25zdCBidWZmZXJYID0gMTU7XHJcbiAgICAgIGNvbnN0IGJ1ZmZlclkgPSAxNTtcclxuICAgICAgY29uc3QgaW1nUHJvcHMgPSAoZG9jIGFzIGFueSkuZ2V0SW1hZ2VQcm9wZXJ0aWVzKGltZyk7XHJcbiAgICAgIGNvbnN0IHBkZldpZHRoID0gZG9jLmludGVybmFsLnBhZ2VTaXplLmdldFdpZHRoKCkgLTIgKiBidWZmZXJYO1xyXG4gICAgICBjb25zdCBwZGZIZWlnaHQgPSAoaW1nUHJvcHMuaGVpZ2h0ICogcGRmV2lkdGgpIC8gaW1nUHJvcHMud2lkdGg7XHJcbiAgICAgIGRvYy5hZGRJbWFnZShcclxuICAgICAgICBpbWcsXHJcbiAgICAgICAgJ1BORycsXHJcbiAgICAgICAgYnVmZmVyWCxcclxuICAgICAgICBidWZmZXJZLFxyXG4gICAgICAgIHBkZldpZHRoLFxyXG4gICAgICAgIHBkZkhlaWdodCxcclxuICAgICAgICB1bmRlZmluZWQsXHJcbiAgICAgICAgJ0ZBU1QnXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBkb2M7XHJcbiAgICB9KVxyXG4gICAgLnRoZW4oKGRvY1Jlc3VsdCkgPT4ge1xyXG4gICAgIC8vZG9jUmVzdWx0LnNhdmUoYCR7bmV3IERhdGUoKS50b0lTT1N0cmluZygpfV9yZXBvcnRlLnBkZmApO1xyXG4gICAgICBkb2NSZXN1bHQub3V0cHV0KCdkYXRhdXJsbmV3d2luZG93Jywge2ZpbGVuYW1lOiAncmVwb3J0ZS5wZGYnfSk7XHJcbiAgICAgIHRoaXMuZGlhbG9nLmNsb3NlQWxsKClcclxuICAgICAgdGhpcy5tZXNzYWdlLmNsb3NlTG9hZGluZygpXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBpZD1cInRlbXBsYXRlT1RcIiAjdGVtcGxhdGVPVD5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gdy0xMDAgd2hpdGUtYmFja2dyb3VuZFwiPlxyXG5cclxuICAgICAgICA8IS0tIEVuY2FiZXphZG8gIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBkLWZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGhlYWRlci1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6ODAlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ0ZXh0LWhlYWRlciB0ZXh0LXVwcGVyY2FzZSB3cmFwLXRleHRcIj57e2RhdGEubmFtZX19PC9oMj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHQtaGVhZGVyIHdyYXAtdGV4dFwiPk5JVDoge3tkYXRhLm5pdH19PC9oMj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCBkLWZsZXggZmxleC1yb3cganVzdGlmeS1jb250ZW50LWV2ZW5seVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRleHQtaGVhZGVyIHdyYXAtdGV4dFwiPnt7ZGF0YS5hZGRyZXNzfX08L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRleHQtaGVhZGVyIHdyYXAtdGV4dFwiPlRFTDoge3tkYXRhLnRlbGVwaG9uZX19PC9oMz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjIwJVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltZyB3LTEwMFwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIGRhdGEuaW1hZ2UgKyAnKSdcIj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIGNvbnRhaW5lci1oZWFkZXJzXCI+XHJcbiAgICAgICAgICAgIDxoMj5PcmRlbiBkZSB0cmFiYWpvPC9oMj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+TsKwOiB7e2RhdGEuY29uc2VjdXRpdmV9fTwvaDI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gQ3VlcnBvIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBmbGV4aWJsZS1yb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj7DgXJlYTo8L2gyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MzIlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuYXJlYX19PC9oMj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5Dw7NkaWdvOjwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDoxNiVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5jb2RlfX08L2gyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5GZWNoYTo8L2gyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MTYlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuZGF0ZX19PC9oMj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBmbGV4aWJsZS1yb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5PcGVyYXJpbzo8L2gyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MzIlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEucmVzcG9uc2libGV9fTwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjEyJVwiPlxyXG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPk9kw7NtZXRybzo8L2gyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MTYlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEub2RvbWV0ZXJ9fTwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5SZWZlcmVuY2lhIEZhY3R1cmE6PC9oMj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjE2JVwiPlxyXG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmludm9pY2VSZWZlcmVuY2V9fTwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgY29udGFpbmVyLWhlYWRlcnNcIj5cclxuICAgICAgICAgICAgPGgyPkRhdG9zIGRlbCBwcm92ZWVkb3I8L2gyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgZmxleGlibGUtcm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTUlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJmdy1ib2xkXCI+Tm9tYnJlOjwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDozNSVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5uYW1lUHJvdmlkZXJ9fTwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjE1JVwiPlxyXG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPkRpcmVjY2nDs246PC9oMj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjM1JVwiPlxyXG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmFkZHJlc3NQcm92aWRlcn19PC9oMj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSBjb250YWluZXItaGVhZGVyc1wiPlxyXG4gICAgICAgICAgICA8aDI+RGV0YWxsZXMgZGVsIHNlcnZpY2lvPC9oMj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIHctMTAwIGRlc2NyaXB0aW9uLXNlY3Rpb25cIj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0IHRleHQtc3RhcnRcIj57e2RhdGEuZGVzY3JpcHRpb259fTwvaDI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBmbGV4aWJsZS1yb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDozNSVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5BVVRPUklaQURBIFBPUjo8L2gyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6NjUlXCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuYXBwcm92ZWRfYnl9fTwvaDI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tIHBpc28gLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIGQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlciB3LTEwMCBmb290ZXItc2VjdGlvblwiPlxyXG4gICAgICAgICAgICA8aDI+RmF2b3IgYWRqdW50YXIgbGEgb3JkZW4gYSBsYSBmYWN0dXJhIG8gY3VlbnRhIGRlIGNvYnJvPC9oMj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLm1haWx9fTwvaDI+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cImRvd25sb2FkLWNvbnRhaW5lclwiPlxyXG4gICAgPGJ1dHRvbiAoY2xpY2spPVwiZG93bmxvYWRQREYoKVwiIGNvbG9yPSdwcmltYXJ5JyBtYXQtcmFpc2VkLWJ1dHRvbj5HZW5lcmFyIFBERjwvYnV0dG9uPlxyXG48L2Rpdj4iXX0=