@resolveio/server-lib 20.12.53 → 20.12.55
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/managers/mongo.manager.js +2 -1
- package/managers/mongo.manager.js.map +1 -1
- package/managers/subscription.manager.d.ts +1 -1
- package/managers/subscription.manager.js +12 -5
- package/managers/subscription.manager.js.map +1 -1
- package/methods/aws.js +124 -34
- package/methods/aws.js.map +1 -1
- package/methods/pdf.js +113 -92
- package/methods/pdf.js.map +1 -1
- package/methods.ts +3 -0
- package/package.json +1 -1
package/methods/pdf.js
CHANGED
|
@@ -91,6 +91,7 @@ exports.loadPDFMethods = loadPDFMethods;
|
|
|
91
91
|
var fs = require("fs");
|
|
92
92
|
var os = require("os");
|
|
93
93
|
var path = require("path");
|
|
94
|
+
var axios_1 = require("axios");
|
|
94
95
|
var pdf_lib_1 = require("pdf-lib");
|
|
95
96
|
var puppeteer = require("puppeteer");
|
|
96
97
|
var simpl_schema_1 = require("simpl-schema");
|
|
@@ -776,53 +777,84 @@ function loadPDFMethods(methodManager) {
|
|
|
776
777
|
}),
|
|
777
778
|
function: function (fileKeys, fileName, fileType) {
|
|
778
779
|
return __awaiter(this, void 0, void 0, function () {
|
|
779
|
-
var resSigneds,
|
|
780
|
-
var _this = this;
|
|
780
|
+
var resSigneds, err_3, mergedPdf, i, signedUrl, fileKey, response, err_4, contentTypeHeader, contentType, fileDataBuffer, fileKeyLower, isPdf, isJpg, isPng, pdf, copiedPages, pdf, img, page, imgDim, copiedPages, pdf, img, page, imgDim, copiedPages, err_5, mergedPDFUint8, mergedPDFBuffer;
|
|
781
781
|
return __generator(this, function (_a) {
|
|
782
782
|
switch (_a.label) {
|
|
783
783
|
case 0:
|
|
784
|
-
|
|
785
|
-
|
|
784
|
+
resSigneds = null;
|
|
785
|
+
_a.label = 1;
|
|
786
786
|
case 1:
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
promises_1 = [];
|
|
790
|
-
resSigneds.forEach(function (signedUrl) {
|
|
791
|
-
promises_1.push(_this.callMethod('getDataURIfromURL', signedUrl));
|
|
792
|
-
});
|
|
793
|
-
return [4 /*yield*/, Promise.all(promises_1)];
|
|
787
|
+
_a.trys.push([1, 3, , 4]);
|
|
788
|
+
return [4 /*yield*/, this.callMethod('getSignedUrls', fileKeys, 900)];
|
|
794
789
|
case 2:
|
|
795
|
-
|
|
796
|
-
return [
|
|
790
|
+
resSigneds = _a.sent();
|
|
791
|
+
return [3 /*break*/, 4];
|
|
797
792
|
case 3:
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
793
|
+
err_3 = _a.sent();
|
|
794
|
+
err_3.message = 'Error in Merge PDF Resolve: PDF Merge - Get Signed URLs - ' + err_3.message;
|
|
795
|
+
throw err_3;
|
|
801
796
|
case 4:
|
|
802
|
-
if (!
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
797
|
+
if (!resSigneds || !resSigneds.length) {
|
|
798
|
+
throw new Error('Error in Merge PDF Resolve: PDF Merge - No signed urls');
|
|
799
|
+
}
|
|
800
|
+
return [4 /*yield*/, pdf_lib_1.PDFDocument.create()];
|
|
806
801
|
case 5:
|
|
807
|
-
_a.
|
|
808
|
-
|
|
809
|
-
|
|
802
|
+
mergedPdf = _a.sent();
|
|
803
|
+
i = 0;
|
|
804
|
+
_a.label = 6;
|
|
810
805
|
case 6:
|
|
811
|
-
|
|
812
|
-
|
|
806
|
+
if (!(i < resSigneds.length)) return [3 /*break*/, 26];
|
|
807
|
+
signedUrl = resSigneds[i];
|
|
808
|
+
fileKey = fileKeys && fileKeys[i] ? fileKeys[i] : '';
|
|
809
|
+
response = null;
|
|
810
|
+
_a.label = 7;
|
|
813
811
|
case 7:
|
|
812
|
+
_a.trys.push([7, 9, , 10]);
|
|
813
|
+
return [4 /*yield*/, axios_1.default.get(signedUrl, {
|
|
814
|
+
responseType: 'arraybuffer'
|
|
815
|
+
})];
|
|
816
|
+
case 8:
|
|
817
|
+
response = _a.sent();
|
|
818
|
+
return [3 /*break*/, 10];
|
|
819
|
+
case 9:
|
|
820
|
+
err_4 = _a.sent();
|
|
821
|
+
err_4.message = "Error in Merge PDF Resolve: PDF Merge - Download failed (".concat(fileKey || 'unknown key', ") - ").concat(err_4.message);
|
|
822
|
+
throw err_4;
|
|
823
|
+
case 10:
|
|
824
|
+
if (!response || response.status !== 200) {
|
|
825
|
+
throw new Error("Error in Merge PDF Resolve: PDF Merge - Download failed (".concat(fileKey || 'unknown key', ") - status: ").concat(response ? response.status : 'unknown'));
|
|
826
|
+
}
|
|
827
|
+
contentTypeHeader = response.headers ? response.headers['content-type'] : '';
|
|
828
|
+
contentType = (contentTypeHeader ? String(contentTypeHeader) : '').toLowerCase().split(';')[0].trim();
|
|
829
|
+
fileDataBuffer = response.data;
|
|
830
|
+
if (!fileDataBuffer) {
|
|
831
|
+
throw new Error("Error in Merge PDF Resolve: PDF Merge - No file data returned (".concat(fileKey || 'unknown key', ")"));
|
|
832
|
+
}
|
|
833
|
+
fileKeyLower = fileKey ? fileKey.toLowerCase() : '';
|
|
834
|
+
isPdf = contentType === 'application/pdf' || contentType === 'application/x-pdf' || fileKeyLower.endsWith('.pdf');
|
|
835
|
+
isJpg = contentType === 'image/jpeg' || contentType === 'image/jpg' || fileKeyLower.endsWith('.jpg') || fileKeyLower.endsWith('.jpeg');
|
|
836
|
+
isPng = contentType === 'image/png' || fileKeyLower.endsWith('.png');
|
|
837
|
+
_a.label = 11;
|
|
838
|
+
case 11:
|
|
839
|
+
_a.trys.push([11, 24, , 25]);
|
|
840
|
+
if (!isPdf) return [3 /*break*/, 14];
|
|
841
|
+
return [4 /*yield*/, pdf_lib_1.PDFDocument.load(fileDataBuffer, { updateMetadata: false, parseSpeed: pdf_lib_1.ParseSpeeds.Fastest, ignoreEncryption: true })];
|
|
842
|
+
case 12:
|
|
843
|
+
pdf = _a.sent();
|
|
844
|
+
return [4 /*yield*/, mergedPdf.copyPages(pdf, pdf.getPageIndices())];
|
|
845
|
+
case 13:
|
|
814
846
|
copiedPages = _a.sent();
|
|
815
847
|
copiedPages.forEach(function (page) {
|
|
816
|
-
|
|
848
|
+
mergedPdf.addPage(page);
|
|
817
849
|
});
|
|
818
|
-
return [3 /*break*/,
|
|
819
|
-
case
|
|
820
|
-
if (!
|
|
850
|
+
return [3 /*break*/, 23];
|
|
851
|
+
case 14:
|
|
852
|
+
if (!isJpg) return [3 /*break*/, 18];
|
|
821
853
|
return [4 /*yield*/, pdf_lib_1.PDFDocument.create()];
|
|
822
|
-
case
|
|
854
|
+
case 15:
|
|
823
855
|
pdf = _a.sent();
|
|
824
|
-
return [4 /*yield*/, pdf.embedJpg(
|
|
825
|
-
case
|
|
856
|
+
return [4 /*yield*/, pdf.embedJpg(fileDataBuffer)];
|
|
857
|
+
case 16:
|
|
826
858
|
img = _a.sent();
|
|
827
859
|
page = pdf.addPage();
|
|
828
860
|
imgDim = img.scaleToFit(page.getWidth() * 0.75, page.getHeight() * 0.75);
|
|
@@ -832,20 +864,20 @@ function loadPDFMethods(methodManager) {
|
|
|
832
864
|
width: imgDim.width,
|
|
833
865
|
height: imgDim.height,
|
|
834
866
|
});
|
|
835
|
-
return [4 /*yield*/,
|
|
836
|
-
case
|
|
867
|
+
return [4 /*yield*/, mergedPdf.copyPages(pdf, pdf.getPageIndices())];
|
|
868
|
+
case 17:
|
|
837
869
|
copiedPages = _a.sent();
|
|
838
870
|
copiedPages.forEach(function (page) {
|
|
839
|
-
|
|
871
|
+
mergedPdf.addPage(page);
|
|
840
872
|
});
|
|
841
|
-
return [3 /*break*/,
|
|
842
|
-
case
|
|
843
|
-
if (!
|
|
873
|
+
return [3 /*break*/, 23];
|
|
874
|
+
case 18:
|
|
875
|
+
if (!isPng) return [3 /*break*/, 22];
|
|
844
876
|
return [4 /*yield*/, pdf_lib_1.PDFDocument.create()];
|
|
845
|
-
case
|
|
877
|
+
case 19:
|
|
846
878
|
pdf = _a.sent();
|
|
847
|
-
return [4 /*yield*/, pdf.embedPng(
|
|
848
|
-
case
|
|
879
|
+
return [4 /*yield*/, pdf.embedPng(fileDataBuffer)];
|
|
880
|
+
case 20:
|
|
849
881
|
img = _a.sent();
|
|
850
882
|
page = pdf.addPage();
|
|
851
883
|
imgDim = img.scaleToFit(page.getWidth() * 0.75, page.getHeight() * 0.75);
|
|
@@ -855,40 +887,29 @@ function loadPDFMethods(methodManager) {
|
|
|
855
887
|
width: imgDim.width,
|
|
856
888
|
height: imgDim.height,
|
|
857
889
|
});
|
|
858
|
-
return [4 /*yield*/,
|
|
859
|
-
case
|
|
890
|
+
return [4 /*yield*/, mergedPdf.copyPages(pdf, pdf.getPageIndices())];
|
|
891
|
+
case 21:
|
|
860
892
|
copiedPages = _a.sent();
|
|
861
893
|
copiedPages.forEach(function (page) {
|
|
862
|
-
|
|
894
|
+
mergedPdf.addPage(page);
|
|
863
895
|
});
|
|
864
|
-
return [3 /*break*/,
|
|
865
|
-
case
|
|
866
|
-
console.log('Error - unsupported!!',
|
|
867
|
-
throw new Error(
|
|
868
|
-
case
|
|
869
|
-
case
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
case 19: return [3 /*break*/, 21];
|
|
875
|
-
case 20:
|
|
876
|
-
console.log('Error - no filedata!!', fileData);
|
|
877
|
-
throw new Error('Error in Merge PDF Resolve: No File Data');
|
|
878
|
-
case 21:
|
|
896
|
+
return [3 /*break*/, 23];
|
|
897
|
+
case 22:
|
|
898
|
+
console.log('Error - unsupported!!', { fileKey: fileKey, contentType: contentType });
|
|
899
|
+
throw new Error("Error in Merge PDF Resolve: Unsupported document type (".concat(contentType || 'unknown content-type', ")"));
|
|
900
|
+
case 23: return [3 /*break*/, 25];
|
|
901
|
+
case 24:
|
|
902
|
+
err_5 = _a.sent();
|
|
903
|
+
err_5.message = "Error in Merge PDF Resolve: PDF Merge - Error processing file (".concat(fileKey || 'unknown key', ") - ").concat(err_5.message);
|
|
904
|
+
throw err_5;
|
|
905
|
+
case 25:
|
|
879
906
|
i++;
|
|
880
|
-
return [3 /*break*/,
|
|
881
|
-
case
|
|
882
|
-
case
|
|
907
|
+
return [3 /*break*/, 6];
|
|
908
|
+
case 26: return [4 /*yield*/, mergedPdf.save()];
|
|
909
|
+
case 27:
|
|
883
910
|
mergedPDFUint8 = _a.sent();
|
|
884
|
-
|
|
885
|
-
return [2 /*return*/, this.callMethod('
|
|
886
|
-
case 24: return [3 /*break*/, 26];
|
|
887
|
-
case 25:
|
|
888
|
-
err_3 = _a.sent();
|
|
889
|
-
err_3.message = 'Error in Merge PDF Resolve: PDF Merge - Get Signed URLs - ' + err_3.message;
|
|
890
|
-
throw err_3;
|
|
891
|
-
case 26: return [2 /*return*/];
|
|
911
|
+
mergedPDFBuffer = Buffer.from(mergedPDFUint8);
|
|
912
|
+
return [2 /*return*/, this.callMethod('uploadPDFBufferAndSave', fileName, mergedPDFBuffer, mergedPDFBuffer.byteLength, -1, fileType || 'pdf')];
|
|
892
913
|
}
|
|
893
914
|
});
|
|
894
915
|
});
|
|
@@ -909,7 +930,7 @@ function loadPDFMethods(methodManager) {
|
|
|
909
930
|
}),
|
|
910
931
|
function: function (fileKeys) {
|
|
911
932
|
return __awaiter(this, void 0, void 0, function () {
|
|
912
|
-
var resSigneds,
|
|
933
|
+
var resSigneds, promises_1, fileDatas, mergedPdf_1, i, fileData, pdf, copiedPages, pdf, img, page, imgDim, copiedPages, pdf, img, page, imgDim, copiedPages, error_1, mergedPDFUint8, b64PDF, err_6;
|
|
913
934
|
var _this = this;
|
|
914
935
|
return __generator(this, function (_a) {
|
|
915
936
|
switch (_a.label) {
|
|
@@ -919,16 +940,16 @@ function loadPDFMethods(methodManager) {
|
|
|
919
940
|
case 1:
|
|
920
941
|
resSigneds = _a.sent();
|
|
921
942
|
if (!(resSigneds && resSigneds.length)) return [3 /*break*/, 24];
|
|
922
|
-
|
|
943
|
+
promises_1 = [];
|
|
923
944
|
resSigneds.forEach(function (signedUrl) {
|
|
924
|
-
|
|
945
|
+
promises_1.push(_this.callMethod('getDataURIfromURL', signedUrl));
|
|
925
946
|
});
|
|
926
|
-
return [4 /*yield*/, Promise.all(
|
|
947
|
+
return [4 /*yield*/, Promise.all(promises_1)];
|
|
927
948
|
case 2:
|
|
928
949
|
fileDatas = _a.sent();
|
|
929
950
|
return [4 /*yield*/, pdf_lib_1.PDFDocument.create()];
|
|
930
951
|
case 3:
|
|
931
|
-
|
|
952
|
+
mergedPdf_1 = _a.sent();
|
|
932
953
|
i = 0;
|
|
933
954
|
_a.label = 4;
|
|
934
955
|
case 4:
|
|
@@ -942,11 +963,11 @@ function loadPDFMethods(methodManager) {
|
|
|
942
963
|
return [4 /*yield*/, pdf_lib_1.PDFDocument.load(fileData, { updateMetadata: false, parseSpeed: pdf_lib_1.ParseSpeeds.Fastest, ignoreEncryption: true })];
|
|
943
964
|
case 6:
|
|
944
965
|
pdf = _a.sent();
|
|
945
|
-
return [4 /*yield*/,
|
|
966
|
+
return [4 /*yield*/, mergedPdf_1.copyPages(pdf, pdf.getPageIndices())];
|
|
946
967
|
case 7:
|
|
947
968
|
copiedPages = _a.sent();
|
|
948
969
|
copiedPages.forEach(function (page) {
|
|
949
|
-
|
|
970
|
+
mergedPdf_1.addPage(page);
|
|
950
971
|
});
|
|
951
972
|
return [3 /*break*/, 17];
|
|
952
973
|
case 8:
|
|
@@ -965,11 +986,11 @@ function loadPDFMethods(methodManager) {
|
|
|
965
986
|
width: imgDim.width,
|
|
966
987
|
height: imgDim.height,
|
|
967
988
|
});
|
|
968
|
-
return [4 /*yield*/,
|
|
989
|
+
return [4 /*yield*/, mergedPdf_1.copyPages(pdf, pdf.getPageIndices())];
|
|
969
990
|
case 11:
|
|
970
991
|
copiedPages = _a.sent();
|
|
971
992
|
copiedPages.forEach(function (page) {
|
|
972
|
-
|
|
993
|
+
mergedPdf_1.addPage(page);
|
|
973
994
|
});
|
|
974
995
|
return [3 /*break*/, 17];
|
|
975
996
|
case 12:
|
|
@@ -988,11 +1009,11 @@ function loadPDFMethods(methodManager) {
|
|
|
988
1009
|
width: imgDim.width,
|
|
989
1010
|
height: imgDim.height,
|
|
990
1011
|
});
|
|
991
|
-
return [4 /*yield*/,
|
|
1012
|
+
return [4 /*yield*/, mergedPdf_1.copyPages(pdf, pdf.getPageIndices())];
|
|
992
1013
|
case 15:
|
|
993
1014
|
copiedPages = _a.sent();
|
|
994
1015
|
copiedPages.forEach(function (page) {
|
|
995
|
-
|
|
1016
|
+
mergedPdf_1.addPage(page);
|
|
996
1017
|
});
|
|
997
1018
|
return [3 /*break*/, 17];
|
|
998
1019
|
case 16:
|
|
@@ -1000,8 +1021,8 @@ function loadPDFMethods(methodManager) {
|
|
|
1000
1021
|
_a.label = 17;
|
|
1001
1022
|
case 17: return [3 /*break*/, 19];
|
|
1002
1023
|
case 18:
|
|
1003
|
-
|
|
1004
|
-
console.log('Error processing fileData:', fileData.slice(0, 60),
|
|
1024
|
+
error_1 = _a.sent();
|
|
1025
|
+
console.log('Error processing fileData:', fileData.slice(0, 60), error_1);
|
|
1005
1026
|
return [3 /*break*/, 19];
|
|
1006
1027
|
case 19: return [3 /*break*/, 21];
|
|
1007
1028
|
case 20:
|
|
@@ -1010,7 +1031,7 @@ function loadPDFMethods(methodManager) {
|
|
|
1010
1031
|
case 21:
|
|
1011
1032
|
i++;
|
|
1012
1033
|
return [3 /*break*/, 4];
|
|
1013
|
-
case 22: return [4 /*yield*/,
|
|
1034
|
+
case 22: return [4 /*yield*/, mergedPdf_1.save()];
|
|
1014
1035
|
case 23:
|
|
1015
1036
|
mergedPDFUint8 = _a.sent();
|
|
1016
1037
|
b64PDF = 'data:application/pdf;base64,' + Buffer.from(mergedPDFUint8).toString('base64');
|
|
@@ -1018,9 +1039,9 @@ function loadPDFMethods(methodManager) {
|
|
|
1018
1039
|
case 24: throw new Error('Error in Merge PDF Resolve No Save: No signed urls');
|
|
1019
1040
|
case 25: return [3 /*break*/, 27];
|
|
1020
1041
|
case 26:
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
throw
|
|
1042
|
+
err_6 = _a.sent();
|
|
1043
|
+
err_6.message = "Error in Merge PDF Resolve: ".concat(err_6.message);
|
|
1044
|
+
throw err_6;
|
|
1024
1045
|
case 27: return [2 /*return*/];
|
|
1025
1046
|
}
|
|
1026
1047
|
});
|
|
@@ -1053,7 +1074,7 @@ function loadPDFMethods(methodManager) {
|
|
|
1053
1074
|
}),
|
|
1054
1075
|
function: function (htmls_1, fileName_1, fileType_1) {
|
|
1055
1076
|
return __awaiter(this, arguments, void 0, function (htmls, fileName, fileType, save) {
|
|
1056
|
-
var mergedPdf, i, fileData, pdf, copiedPages, pdf, img, page, imgDim, copiedPages, pdf, img, page, imgDim, copiedPages,
|
|
1077
|
+
var mergedPdf, i, fileData, pdf, copiedPages, pdf, img, page, imgDim, copiedPages, pdf, img, page, imgDim, copiedPages, error_2, mergedPDFUint8, b64PDF;
|
|
1057
1078
|
if (save === void 0) { save = true; }
|
|
1058
1079
|
return __generator(this, function (_a) {
|
|
1059
1080
|
switch (_a.label) {
|
|
@@ -1131,10 +1152,10 @@ function loadPDFMethods(methodManager) {
|
|
|
1131
1152
|
throw new Error('Error in Merge PDF Resolve HTML: Unsupported file - ' + fileData.slice(0, 60));
|
|
1132
1153
|
case 15: return [3 /*break*/, 17];
|
|
1133
1154
|
case 16:
|
|
1134
|
-
|
|
1135
|
-
console.log('Error processing fileData:', fileData.slice(0, 60),
|
|
1136
|
-
|
|
1137
|
-
throw
|
|
1155
|
+
error_2 = _a.sent();
|
|
1156
|
+
console.log('Error processing fileData:', fileData.slice(0, 60), error_2);
|
|
1157
|
+
error_2.message = "Error in Merge PDF Resolve HTML: Error processing filedata - ".concat(error_2.message);
|
|
1158
|
+
throw error_2;
|
|
1138
1159
|
case 17: return [3 /*break*/, 19];
|
|
1139
1160
|
case 18:
|
|
1140
1161
|
console.log('Error - no filedata!!', fileData);
|