@measurequick/measurequick-report-generator 1.2.26 → 1.2.28

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@measurequick/measurequick-report-generator",
3
- "version": "1.2.26",
3
+ "version": "1.2.28",
4
4
  "description": "Generates PDF documents for various MeasureQuick applications.",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -5,13 +5,16 @@ import * as util from '../util.js';
5
5
  export async function getReport(payload) { console.log("Cover Page");
6
6
  const pdfDoc = await PDFDocument.load(util._base64ToArrayBuffer(pdf.base64));
7
7
  let profilePicture, companyLogo;
8
- if (payload.photos.profile_image_base64) {
9
- if (payload.photos.profile_image_base64.includes("image/jpeg")) profilePicture = await pdfDoc.embedJpg(util._base64ToArrayBuffer(payload.photos.profile_image_base64));
10
- else if (payload.photos.profile_image_base64.includes("image/png")) profilePicture = await pdfDoc.embedPng(util._base64ToArrayBuffer(payload.photos.profile_image_base64));
8
+ if (payload.meta.pdf_settings.shapeProfilePic && payload.meta.profile_settings.profilePicCircleBase64) {
9
+ if (payload.photos.profilePicCircleBase64.includes("image/jpeg")) profilePicture = await pdfDoc.embedJpg(util._base64ToArrayBuffer(payload.photos.profilePicCircleBase64));
10
+ else if (payload.photos.profilePicCircleBase64.includes("image/png")) profilePicture = await pdfDoc.embedPng(util._base64ToArrayBuffer(payload.photos.profilePicCircleBase64));
11
+ } else if (payload.meta.profile_settings.profilePicSquareBase64) {
12
+ if (payload.photos.profilePicSquareBase64.includes("image/jpeg")) profilePicture = await pdfDoc.embedJpg(util._base64ToArrayBuffer(payload.photos.profilePicSquareBase64));
13
+ else if (payload.photos.profilePicSquareBase64.includes("image/png")) profilePicture = await pdfDoc.embedPng(util._base64ToArrayBuffer(payload.photos.profilePicSquareBase64));
11
14
  }
12
- if (payload.photos.company_logo_base64) {
13
- if (payload.photos.company_logo_base64.includes("image/jpeg")) companyLogo = await pdfDoc.embedJpg(util._base64ToArrayBuffer(payload.photos.company_logo_base64));
14
- else if (payload.photos.company_logo_base64.includes("image/png")) companyLogo = await pdfDoc.embedPng(util._base64ToArrayBuffer(payload.photos.company_logo_base64));
15
+ if (payload.meta.profile_settings.companyLogoBase64) {
16
+ if (payload.meta.profile_settings.companyLogoBase64.includes("image/jpeg")) companyLogo = await pdfDoc.embedJpg(util._base64ToArrayBuffer(payload.meta.profile_settings.companyLogoBase64));
17
+ else if (payload.meta.profile_settings.companyLogoBase64.includes("image/png")) companyLogo = await pdfDoc.embedPng(util._base64ToArrayBuffer(payload.meta.profile_settings.companyLogoBase64));
15
18
  }
16
19
  const form = pdfDoc.getForm();
17
20
  form.getTextField("Report Title").setText(payload.meta.report_title);
@@ -17,48 +17,63 @@ let forms = [];
17
17
 
18
18
  export async function getReport(payload) { console.log("Full Report");
19
19
 
20
- let coverPageBase64 = payload.meta.pdf_settings.includeCoverPage ? await coverPage.getReport(payload) : false;
21
- const coverPageDoc = coverPageBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(coverPageBase64)) : false;
22
-
23
- let photosReportBase64 = (payload.meta.pdf_settings.includePhotos && payload.meta.photo_count > 0) ? await photosReport.getReport(payload.photos) : false;
24
- const photosReportDoc = photosReportBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(photosReportBase64)) : false;
25
-
26
- if (payload.tests && payload.tests[0] && payload.tests[0].testInfo && payload.tests[0].testInfo.data && payload.tests[0].testInfo.data.canGenerateVitals) {
27
- let vitalsReportBase64 = payload.meta.report_mode == "cooling" ? await vitalsCoolingReport.getReport(payload) : await vitalsHeatingReport.getReport(payload);
28
- const vitalsReportDoc = await PDFDocument.load(util._base64ToArrayBuffer(vitalsReportBase64));
29
- }
30
-
31
- let measurementDetailsBase64 = await measurementDetails.getReport(payload);
32
- const measurementDetailsDoc = measurementDetailsBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(measurementDetailsBase64)) : false;
33
-
34
- let correctiveMeasuresBase64 = await correctiveMeasures.getReport(payload);
35
- const correctiveMeasuresDoc = correctiveMeasuresBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(correctiveMeasuresBase64)) : false;
36
-
37
20
  const coreDoc = await PDFDocument.create();
38
21
 
39
- if (payload.tests && payload.tests[0] && payload.tests[0].testInfo && payload.tests[0].testInfo.data && payload.tests[0].testInfo.data.canGenerateVitals) {
40
- const [_vitalsReportPg1] = await coreDoc.copyPages(vitalsReportDoc, [0]);
41
- const [_vitalsReportPg2] = await coreDoc.copyPages(vitalsReportDoc, [1]);
42
- const [_vitalsReportPg3] = await coreDoc.copyPages(vitalsReportDoc, [2]);
43
- coreDoc.insertPage(coreDoc.getPages().length, _vitalsReportPg1);
44
- coreDoc.insertPage(coreDoc.getPages().length, _vitalsReportPg2);
45
- coreDoc.insertPage(coreDoc.getPages().length, _vitalsReportPg3);
22
+ try {
23
+ let coverPageBase64 = payload.meta.pdf_settings.includeCoverPage ? await coverPage.getReport(payload) : false;
24
+ const coverPageDoc = coverPageBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(coverPageBase64)) : false;
25
+ const [_coverPageDoc] = coverPageDoc ? await coreDoc.copyPages(coverPageDoc, [0]) : false;
26
+ if (_coverPageDoc) coreDoc.insertPage(coreDoc.getPages().length, _coverPageDoc);
27
+ } catch (err) {
28
+ console.log("Cover Page Error: " + JSON.stringify(err));
46
29
  }
47
30
 
48
- const [_measurementDetailsDoc] = measurementDetailsDoc ? await coreDoc.copyPages(measurementDetailsDoc, [0]) : false;
49
- if (_measurementDetailsDoc) coreDoc.insertPage(coreDoc.getPages().length, _measurementDetailsDoc);
31
+ try {
32
+ if (payload.tests && payload.tests[0] && payload.tests[0].testInfo && payload.tests[0].testInfo.data && payload.tests[0].testInfo.data.canGenerateVitals) {
33
+ let vitalsReportBase64 = payload.meta.report_mode == "cooling" ? await vitalsCoolingReport.getReport(payload) : await vitalsHeatingReport.getReport(payload);
34
+ const vitalsReportDoc = await PDFDocument.load(util._base64ToArrayBuffer(vitalsReportBase64));
35
+ const [_vitalsReportPg1] = await coreDoc.copyPages(vitalsReportDoc, [0]);
36
+ const [_vitalsReportPg2] = await coreDoc.copyPages(vitalsReportDoc, [1]);
37
+ const [_vitalsReportPg3] = await coreDoc.copyPages(vitalsReportDoc, [2]);
38
+ coreDoc.insertPage(coreDoc.getPages().length, _vitalsReportPg1);
39
+ coreDoc.insertPage(coreDoc.getPages().length, _vitalsReportPg2);
40
+ coreDoc.insertPage(coreDoc.getPages().length, _vitalsReportPg3);
41
+ }
42
+ } catch (err) {
43
+ console.log("Vitals Error: " + JSON.stringify(err));
44
+ }
50
45
 
51
- if (payload.tests.length > 1) {
52
- const [_measurementDetailsDocPg2] = measurementDetailsDoc ? await coreDoc.copyPages(measurementDetailsDoc, [1]) : false;
53
- if (_measurementDetailsDocPg2) coreDoc.insertPage(coreDoc.getPages().length, _measurementDetailsDocPg2);
46
+ try {
47
+ let measurementDetailsBase64 = await measurementDetails.getReport(payload);
48
+ const measurementDetailsDoc = measurementDetailsBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(measurementDetailsBase64)) : false;
49
+ const [_measurementDetailsDoc] = measurementDetailsDoc ? await coreDoc.copyPages(measurementDetailsDoc, [0]) : false;
50
+ if (_measurementDetailsDoc) coreDoc.insertPage(coreDoc.getPages().length, _measurementDetailsDoc);
51
+ if (payload.tests.length > 1) {
52
+ const [_measurementDetailsDocPg2] = measurementDetailsDoc ? await coreDoc.copyPages(measurementDetailsDoc, [1]) : false;
53
+ if (_measurementDetailsDocPg2) coreDoc.insertPage(coreDoc.getPages().length, _measurementDetailsDocPg2);
54
+ }
55
+ } catch (err) {
56
+ console.log("Measurement Details Error: " + JSON.stringify(err));
54
57
  }
55
58
 
56
- const [_correctiveMeasuresDoc] = correctiveMeasuresDoc ? await coreDoc.copyPages(correctiveMeasuresDoc, [0]) : false;
57
- if (_correctiveMeasuresDoc) coreDoc.insertPage(coreDoc.getPages().length, _correctiveMeasuresDoc);
59
+ try {
60
+ let correctiveMeasuresBase64 = await correctiveMeasures.getReport(payload);
61
+ const correctiveMeasuresDoc = correctiveMeasuresBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(correctiveMeasuresBase64)) : false;
62
+ const [_correctiveMeasuresDoc] = correctiveMeasuresDoc ? await coreDoc.copyPages(correctiveMeasuresDoc, [0]) : false;
63
+ if (_correctiveMeasuresDoc) coreDoc.insertPage(coreDoc.getPages().length, _correctiveMeasuresDoc);
64
+ } catch (err) {
65
+ console.log("Corrective Measures Error: " + JSON.stringify(err));
66
+ }
58
67
 
59
- for (let i = 0; (photosReportDoc && i < photosReportDoc.getPages().length); i++) {
68
+ try {
69
+ let photosReportBase64 = (payload.meta.pdf_settings.includePhotos && payload.meta.photo_count > 0) ? await photosReport.getReport(payload.photos) : false;
70
+ const photosReportDoc = photosReportBase64 ? await PDFDocument.load(util._base64ToArrayBuffer(photosReportBase64)) : false;
71
+ for (let i = 0; (photosReportDoc && i < photosReportDoc.getPages().length); i++) {
60
72
  const [_photosReport] = await coreDoc.copyPages(photosReportDoc, [i]);
61
73
  coreDoc.insertPage(coreDoc.getPages().length, _photosReport);
74
+ }
75
+ } catch (err) {
76
+ console.log("Photo Page Error: " + JSON.stringify(err));
62
77
  }
63
78
 
64
79
  return await coreDoc.saveAsBase64({ dataUri: true });