chromiumly 4.1.4 → 4.1.6
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/dist/chromium/converters/converter.js +4 -0
- package/dist/chromium/converters/converter.js.map +1 -1
- package/dist/chromium/converters/html.converter.js +28 -31
- package/dist/chromium/converters/html.converter.js.map +1 -1
- package/dist/chromium/converters/markdown.converter.js +26 -29
- package/dist/chromium/converters/markdown.converter.js.map +1 -1
- package/dist/chromium/converters/url.converter.js +26 -29
- package/dist/chromium/converters/url.converter.js.map +1 -1
- package/dist/chromium/screenshots/html.screenshot.js +18 -21
- package/dist/chromium/screenshots/html.screenshot.js.map +1 -1
- package/dist/chromium/screenshots/markdown.screenshot.js +19 -22
- package/dist/chromium/screenshots/markdown.screenshot.js.map +1 -1
- package/dist/chromium/screenshots/screenshot.js +4 -0
- package/dist/chromium/screenshots/screenshot.js.map +1 -1
- package/dist/chromium/screenshots/url.screenshot.js +19 -22
- package/dist/chromium/screenshots/url.screenshot.js.map +1 -1
- package/dist/chromium/utils/converter.utils.js +67 -70
- package/dist/chromium/utils/converter.utils.js.map +1 -1
- package/dist/chromium/utils/screenshot.utils.js +43 -46
- package/dist/chromium/utils/screenshot.utils.js.map +1 -1
- package/dist/common/gotenberg.utils.js +37 -40
- package/dist/common/gotenberg.utils.js.map +1 -1
- package/dist/gotenberg.js +41 -9
- package/dist/gotenberg.js.map +1 -1
- package/dist/libre-office/libre-office.js +17 -20
- package/dist/libre-office/libre-office.js.map +1 -1
- package/dist/libre-office/utils/libre-office.utils.js +80 -84
- package/dist/libre-office/utils/libre-office.utils.js.map +1 -1
- package/dist/main.config.js +68 -63
- package/dist/main.config.js.map +1 -1
- package/dist/pdf-engines/pdf-engines.js +58 -70
- package/dist/pdf-engines/pdf-engines.js.map +1 -1
- package/dist/pdf-engines/utils/pdf-engines.utils.js +42 -44
- package/dist/pdf-engines/utils/pdf-engines.utils.js.map +1 -1
- package/package.json +11 -11
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.LibreOfficeUtils = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
7
|
const fs_1 = require("fs");
|
|
6
|
-
const path_1 =
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
7
9
|
const consumers_1 = require("node:stream/consumers");
|
|
8
10
|
const common_1 = require("../../common");
|
|
9
11
|
const constants_1 = require("./constants");
|
|
@@ -11,20 +13,18 @@ const constants_1 = require("./constants");
|
|
|
11
13
|
* Utility class for handling common tasks related to LibreOffice conversions.
|
|
12
14
|
*/
|
|
13
15
|
class LibreOfficeUtils {
|
|
14
|
-
static getFileInfo(file) {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
});
|
|
16
|
+
static async getFileInfo(file) {
|
|
17
|
+
if (typeof file === 'string') {
|
|
18
|
+
await fs_1.promises.access(file, fs_1.constants.R_OK);
|
|
19
|
+
const filename = path_1.default.basename(path_1.default.parse(file).base);
|
|
20
|
+
return {
|
|
21
|
+
data: file,
|
|
22
|
+
ext: path_1.default.extname(filename).slice(1)
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return { data: file.data, ext: file.ext };
|
|
27
|
+
}
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
30
|
* Adds files to the FormData object for LibreOffice conversion.
|
|
@@ -33,29 +33,27 @@ class LibreOfficeUtils {
|
|
|
33
33
|
* @param {FormData} data - The FormData object to which files will be added.
|
|
34
34
|
* @throws {Error} Throws an error if the file extension is not supported.
|
|
35
35
|
*/
|
|
36
|
-
static addFiles(files, data) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
})));
|
|
58
|
-
});
|
|
36
|
+
static async addFiles(files, data) {
|
|
37
|
+
const paddingLength = String(files.length).length + 1;
|
|
38
|
+
await Promise.all(files.map(async (file, index) => {
|
|
39
|
+
const fileInfo = await this.getFileInfo(file);
|
|
40
|
+
if (!constants_1.LIBRE_OFFICE_EXTENSIONS.includes(fileInfo.ext)) {
|
|
41
|
+
throw new Error(`${fileInfo.ext} is not supported`);
|
|
42
|
+
}
|
|
43
|
+
const filename = `file${String(index + 1).padStart(paddingLength, '0')}.${fileInfo.ext}`;
|
|
44
|
+
if (Buffer.isBuffer(fileInfo.data)) {
|
|
45
|
+
data.append('files', new Blob([fileInfo.data]), filename);
|
|
46
|
+
}
|
|
47
|
+
else if (fileInfo.data instanceof fs_1.ReadStream) {
|
|
48
|
+
const content = await (0, consumers_1.blob)(fileInfo.data);
|
|
49
|
+
data.append('files', content, filename);
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
await fs_1.promises.access(fileInfo.data, fs_1.constants.R_OK);
|
|
53
|
+
const content = await (0, fs_1.openAsBlob)(fileInfo.data);
|
|
54
|
+
data.append('files', content, filename);
|
|
55
|
+
}
|
|
56
|
+
}));
|
|
59
57
|
}
|
|
60
58
|
/**
|
|
61
59
|
* Adds page properties to the FormData object based on the provided PageProperties.
|
|
@@ -130,52 +128,50 @@ class LibreOfficeUtils {
|
|
|
130
128
|
* @param {ConversionOptions} options - The conversion options to apply to the FormData.
|
|
131
129
|
* @returns {Promise<void>} A Promise that resolves once the customization is complete.
|
|
132
130
|
*/
|
|
133
|
-
static customize(data, options) {
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
data.append('splitUnify', String(options.split.unify));
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
if (options.flatten) {
|
|
176
|
-
data.append('flatten', String(options.flatten));
|
|
131
|
+
static async customize(data, options) {
|
|
132
|
+
if (options.pdfa) {
|
|
133
|
+
data.append('pdfa', options.pdfa);
|
|
134
|
+
}
|
|
135
|
+
if (options.pdfUA) {
|
|
136
|
+
data.append('pdfua', String(options.pdfUA));
|
|
137
|
+
}
|
|
138
|
+
if (options.merge) {
|
|
139
|
+
data.append('merge', String(options.merge));
|
|
140
|
+
}
|
|
141
|
+
if (options.metadata) {
|
|
142
|
+
data.append('metadata', JSON.stringify(options.metadata));
|
|
143
|
+
}
|
|
144
|
+
if (options.losslessImageCompression) {
|
|
145
|
+
data.append('losslessImageCompression', String(options.losslessImageCompression));
|
|
146
|
+
}
|
|
147
|
+
if (options.reduceImageResolution) {
|
|
148
|
+
data.append('reduceImageResolution', String(options.reduceImageResolution));
|
|
149
|
+
}
|
|
150
|
+
if (options.quality) {
|
|
151
|
+
common_1.GotenbergUtils.assert(options.quality >= 1 && options.quality <= 100, 'Invalid compression quality. Please provide a value between 1 and 100.');
|
|
152
|
+
data.append('quality', options.quality);
|
|
153
|
+
}
|
|
154
|
+
if (options.maxImageResolution) {
|
|
155
|
+
common_1.GotenbergUtils.assert(options.reduceImageResolution === true, 'Compression quality is only supported when the reduceImageResolution property is enabled.');
|
|
156
|
+
data.append('maxImageResolution', options.maxImageResolution);
|
|
157
|
+
}
|
|
158
|
+
if (options.downloadFrom) {
|
|
159
|
+
data.append('downloadFrom', JSON.stringify(options.downloadFrom));
|
|
160
|
+
}
|
|
161
|
+
if (options.properties) {
|
|
162
|
+
LibreOfficeUtils.addPageProperties(data, options.properties);
|
|
163
|
+
}
|
|
164
|
+
if (options.split) {
|
|
165
|
+
data.append('splitMode', options.split.mode);
|
|
166
|
+
data.append('splitSpan', options.split.span);
|
|
167
|
+
if (options.split.unify) {
|
|
168
|
+
common_1.GotenbergUtils.assert(options.split.mode === 'pages', 'split unify is only supported for pages mode');
|
|
169
|
+
data.append('splitUnify', String(options.split.unify));
|
|
177
170
|
}
|
|
178
|
-
}
|
|
171
|
+
}
|
|
172
|
+
if (options.flatten) {
|
|
173
|
+
data.append('flatten', String(options.flatten));
|
|
174
|
+
}
|
|
179
175
|
}
|
|
180
176
|
}
|
|
181
177
|
exports.LibreOfficeUtils = LibreOfficeUtils;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libre-office.utils.js","sourceRoot":"","sources":["../../../src/libre-office/utils/libre-office.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"libre-office.utils.js","sourceRoot":"","sources":["../../../src/libre-office/utils/libre-office.utils.ts"],"names":[],"mappings":"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"}
|
package/dist/main.config.js
CHANGED
|
@@ -37,6 +37,74 @@ var LibreOfficeRoute;
|
|
|
37
37
|
* Class providing constants and routes for interacting with the Gotenberg service and related engines.
|
|
38
38
|
*/
|
|
39
39
|
class Chromiumly {
|
|
40
|
+
/**
|
|
41
|
+
* The Gotenberg service endpoint.
|
|
42
|
+
* @type {string}
|
|
43
|
+
*/
|
|
44
|
+
static gotenbergEndpoint = gotenberg_1.Gotenberg.endpoint;
|
|
45
|
+
/**
|
|
46
|
+
* The username for basic authentication with the Gotenberg service.
|
|
47
|
+
* @type {string | undefined}
|
|
48
|
+
*/
|
|
49
|
+
static gotenbergApiBasicAuthUsername = gotenberg_1.Gotenberg.username;
|
|
50
|
+
/**
|
|
51
|
+
* The password for basic authentication with the Gotenberg service.
|
|
52
|
+
* @type {string | undefined}
|
|
53
|
+
*/
|
|
54
|
+
static gotenbergApiBasicAuthPassword = gotenberg_1.Gotenberg.password;
|
|
55
|
+
/**
|
|
56
|
+
* Custom HTTP headers to be sent with each request.
|
|
57
|
+
* @type {Record<string, string> | undefined}
|
|
58
|
+
*/
|
|
59
|
+
static customHttpHeaders;
|
|
60
|
+
/**
|
|
61
|
+
* The path for Chromium-related conversions.
|
|
62
|
+
* @type {string}
|
|
63
|
+
*/
|
|
64
|
+
static CHROMIUM_CONVERT_PATH = 'forms/chromium/convert';
|
|
65
|
+
/**
|
|
66
|
+
* The path for Chromium-related screenshots.
|
|
67
|
+
* @type {string}
|
|
68
|
+
*/
|
|
69
|
+
static CHROMIUM_SCREENSHOT_PATH = 'forms/chromium/screenshot';
|
|
70
|
+
/**
|
|
71
|
+
* The path for PDF engine-related operations.
|
|
72
|
+
* @type {string}
|
|
73
|
+
*/
|
|
74
|
+
static PDF_ENGINES_PATH = 'forms/pdfengines';
|
|
75
|
+
/**
|
|
76
|
+
* The path for LibreOffice-related conversions.
|
|
77
|
+
* @type {string}
|
|
78
|
+
*/
|
|
79
|
+
static LIBRE_OFFICE_PATH = 'forms/libreoffice';
|
|
80
|
+
/**
|
|
81
|
+
* Routes for Chromium conversions.
|
|
82
|
+
* @type {Object}
|
|
83
|
+
*/
|
|
84
|
+
static CHROMIUM_ROUTES = {
|
|
85
|
+
url: ChromiumRoute.URL,
|
|
86
|
+
html: ChromiumRoute.HTML,
|
|
87
|
+
markdown: ChromiumRoute.MARKDOWN
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* Routes for PDF engine operations.
|
|
91
|
+
* @type {Object}
|
|
92
|
+
*/
|
|
93
|
+
static PDF_ENGINE_ROUTES = {
|
|
94
|
+
convert: PdfEngineRoute.CONVERT,
|
|
95
|
+
merge: PdfEngineRoute.MERGE,
|
|
96
|
+
readMetadata: PdfEngineRoute.READ_METADATA,
|
|
97
|
+
writeMetadata: PdfEngineRoute.WRITE_METADATA,
|
|
98
|
+
split: PdfEngineRoute.SPLIT,
|
|
99
|
+
flatten: PdfEngineRoute.FLATTEN
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* Routes for LibreOffice conversions.
|
|
103
|
+
* @type {Object}
|
|
104
|
+
*/
|
|
105
|
+
static LIBRE_OFFICE_ROUTES = {
|
|
106
|
+
convert: LibreOfficeRoute.CONVERT
|
|
107
|
+
};
|
|
40
108
|
/**
|
|
41
109
|
* Configures the Gotenberg service endpoint and other optional parameters.
|
|
42
110
|
* @param {Object} config - Configuration object.
|
|
@@ -89,67 +157,4 @@ class Chromiumly {
|
|
|
89
157
|
}
|
|
90
158
|
}
|
|
91
159
|
exports.Chromiumly = Chromiumly;
|
|
92
|
-
/**
|
|
93
|
-
* The Gotenberg service endpoint.
|
|
94
|
-
* @type {string}
|
|
95
|
-
*/
|
|
96
|
-
Chromiumly.gotenbergEndpoint = gotenberg_1.Gotenberg.endpoint;
|
|
97
|
-
/**
|
|
98
|
-
* The username for basic authentication with the Gotenberg service.
|
|
99
|
-
* @type {string | undefined}
|
|
100
|
-
*/
|
|
101
|
-
Chromiumly.gotenbergApiBasicAuthUsername = gotenberg_1.Gotenberg.username;
|
|
102
|
-
/**
|
|
103
|
-
* The password for basic authentication with the Gotenberg service.
|
|
104
|
-
* @type {string | undefined}
|
|
105
|
-
*/
|
|
106
|
-
Chromiumly.gotenbergApiBasicAuthPassword = gotenberg_1.Gotenberg.password;
|
|
107
|
-
/**
|
|
108
|
-
* The path for Chromium-related conversions.
|
|
109
|
-
* @type {string}
|
|
110
|
-
*/
|
|
111
|
-
Chromiumly.CHROMIUM_CONVERT_PATH = 'forms/chromium/convert';
|
|
112
|
-
/**
|
|
113
|
-
* The path for Chromium-related screenshots.
|
|
114
|
-
* @type {string}
|
|
115
|
-
*/
|
|
116
|
-
Chromiumly.CHROMIUM_SCREENSHOT_PATH = 'forms/chromium/screenshot';
|
|
117
|
-
/**
|
|
118
|
-
* The path for PDF engine-related operations.
|
|
119
|
-
* @type {string}
|
|
120
|
-
*/
|
|
121
|
-
Chromiumly.PDF_ENGINES_PATH = 'forms/pdfengines';
|
|
122
|
-
/**
|
|
123
|
-
* The path for LibreOffice-related conversions.
|
|
124
|
-
* @type {string}
|
|
125
|
-
*/
|
|
126
|
-
Chromiumly.LIBRE_OFFICE_PATH = 'forms/libreoffice';
|
|
127
|
-
/**
|
|
128
|
-
* Routes for Chromium conversions.
|
|
129
|
-
* @type {Object}
|
|
130
|
-
*/
|
|
131
|
-
Chromiumly.CHROMIUM_ROUTES = {
|
|
132
|
-
url: ChromiumRoute.URL,
|
|
133
|
-
html: ChromiumRoute.HTML,
|
|
134
|
-
markdown: ChromiumRoute.MARKDOWN
|
|
135
|
-
};
|
|
136
|
-
/**
|
|
137
|
-
* Routes for PDF engine operations.
|
|
138
|
-
* @type {Object}
|
|
139
|
-
*/
|
|
140
|
-
Chromiumly.PDF_ENGINE_ROUTES = {
|
|
141
|
-
convert: PdfEngineRoute.CONVERT,
|
|
142
|
-
merge: PdfEngineRoute.MERGE,
|
|
143
|
-
readMetadata: PdfEngineRoute.READ_METADATA,
|
|
144
|
-
writeMetadata: PdfEngineRoute.WRITE_METADATA,
|
|
145
|
-
split: PdfEngineRoute.SPLIT,
|
|
146
|
-
flatten: PdfEngineRoute.FLATTEN
|
|
147
|
-
};
|
|
148
|
-
/**
|
|
149
|
-
* Routes for LibreOffice conversions.
|
|
150
|
-
* @type {Object}
|
|
151
|
-
*/
|
|
152
|
-
Chromiumly.LIBRE_OFFICE_ROUTES = {
|
|
153
|
-
convert: LibreOfficeRoute.CONVERT
|
|
154
|
-
};
|
|
155
160
|
//# sourceMappingURL=main.config.js.map
|
package/dist/main.config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.config.js","sourceRoot":"","sources":["../src/main.config.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC;;;GAGG;AACH,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,4BAAW,CAAA;IACX,8BAAa,CAAA;IACb,sCAAqB,CAAA;AACzB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED;;;GAGG;AACH,IAAK,cAOJ;AAPD,WAAK,cAAc;IACf,qCAAmB,CAAA;IACnB,iCAAe,CAAA;IACf,iDAA+B,CAAA;IAC/B,mDAAiC,CAAA;IACjC,iCAAe,CAAA;IACf,qCAAmB,CAAA;AACvB,CAAC,EAPI,cAAc,KAAd,cAAc,QAOlB;AAED;;;GAGG;AACH,IAAK,gBAEJ;AAFD,WAAK,gBAAgB;IACjB,uCAAmB,CAAA;AACvB,CAAC,EAFI,gBAAgB,KAAhB,gBAAgB,QAEpB;AAED;;GAEG;AACH,MAAa,UAAU;
|
|
1
|
+
{"version":3,"file":"main.config.js","sourceRoot":"","sources":["../src/main.config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.PDFEngines = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
7
|
const fs_1 = require("fs");
|
|
6
|
-
const path_1 =
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
7
9
|
const main_config_1 = require("../main.config");
|
|
8
10
|
const common_1 = require("../common");
|
|
9
11
|
const pdf_engines_utils_1 = require("./utils/pdf-engines.utils");
|
|
@@ -24,20 +26,18 @@ class PDFEngines {
|
|
|
24
26
|
*
|
|
25
27
|
* @returns {Promise<Buffer>} A Promise resolving to the merged PDF content as a buffer
|
|
26
28
|
*/
|
|
27
|
-
static merge(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
flatten
|
|
37
|
-
});
|
|
38
|
-
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.merge}`;
|
|
39
|
-
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
29
|
+
static async merge({ files, pdfa, pdfUA, metadata, downloadFrom, flatten }) {
|
|
30
|
+
const data = new FormData();
|
|
31
|
+
await pdf_engines_utils_1.PDFEnginesUtils.addFiles(files, data);
|
|
32
|
+
await pdf_engines_utils_1.PDFEnginesUtils.customize(data, {
|
|
33
|
+
pdfa,
|
|
34
|
+
pdfUA,
|
|
35
|
+
metadata,
|
|
36
|
+
downloadFrom,
|
|
37
|
+
flatten
|
|
40
38
|
});
|
|
39
|
+
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.merge}`;
|
|
40
|
+
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
43
|
* Converts various document formats to PDF.
|
|
@@ -49,18 +49,16 @@ class PDFEngines {
|
|
|
49
49
|
* @param {DownloadFrom} [options.downloadFrom] - Download a file from a URL. It must return a Content-Disposition header with a filename parameter.
|
|
50
50
|
* @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a buffer
|
|
51
51
|
*/
|
|
52
|
-
static convert(
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
downloadFrom
|
|
60
|
-
});
|
|
61
|
-
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.convert}`;
|
|
62
|
-
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
52
|
+
static async convert({ files, pdfa, pdfUA, downloadFrom }) {
|
|
53
|
+
const data = new FormData();
|
|
54
|
+
await pdf_engines_utils_1.PDFEnginesUtils.addFiles(files, data);
|
|
55
|
+
await pdf_engines_utils_1.PDFEnginesUtils.customize(data, {
|
|
56
|
+
pdfa,
|
|
57
|
+
pdfUA,
|
|
58
|
+
downloadFrom
|
|
63
59
|
});
|
|
60
|
+
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.convert}`;
|
|
61
|
+
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
64
62
|
}
|
|
65
63
|
/**
|
|
66
64
|
* Splits a PDF file into multiple PDF files.
|
|
@@ -70,22 +68,20 @@ class PDFEngines {
|
|
|
70
68
|
* @param {Split} options.options - Split configuration specifying mode ('pages' or 'intervals'), span, and unify options.
|
|
71
69
|
* @returns {Promise<Buffer>} A Promise resolving to the split PDF content as a buffer
|
|
72
70
|
*/
|
|
73
|
-
static split(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
88
|
-
});
|
|
71
|
+
static async split({ files, options }) {
|
|
72
|
+
const data = new FormData();
|
|
73
|
+
await pdf_engines_utils_1.PDFEnginesUtils.addFiles(files, data);
|
|
74
|
+
data.append('splitMode', options.mode);
|
|
75
|
+
data.append('splitSpan', options.span);
|
|
76
|
+
if (options.flatten) {
|
|
77
|
+
data.append('flatten', String(options.flatten));
|
|
78
|
+
}
|
|
79
|
+
if (options.unify) {
|
|
80
|
+
common_1.GotenbergUtils.assert(options.mode === 'pages', 'split unify is only supported for pages mode');
|
|
81
|
+
data.append('splitUnify', String(options.unify));
|
|
82
|
+
}
|
|
83
|
+
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.split}`;
|
|
84
|
+
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
89
85
|
}
|
|
90
86
|
/**
|
|
91
87
|
* Flattens a PDF file.
|
|
@@ -93,13 +89,11 @@ class PDFEngines {
|
|
|
93
89
|
* @param {PathLikeOrReadStream[]} files - An array of PathLikes or ReadStreams to the PDF files to be flattened.
|
|
94
90
|
* @returns {Promise<Buffer>} A Promise resolving to the flattened PDF content as a buffer
|
|
95
91
|
*/
|
|
96
|
-
static flatten(files) {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
102
|
-
});
|
|
92
|
+
static async flatten(files) {
|
|
93
|
+
const data = new FormData();
|
|
94
|
+
await pdf_engines_utils_1.PDFEnginesUtils.addFiles(files, data);
|
|
95
|
+
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.flatten}`;
|
|
96
|
+
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
103
97
|
}
|
|
104
98
|
/**
|
|
105
99
|
* Reads metadata from the provided files.
|
|
@@ -107,13 +101,11 @@ class PDFEngines {
|
|
|
107
101
|
* @param {PathLikeOrReadStream[]} files An array of PathLikes or ReadStreams to the PDF files.
|
|
108
102
|
* @returns {Promise<Buffer>} A Promise resolving to the metadata buffer.
|
|
109
103
|
*/
|
|
110
|
-
static readMetadata(files) {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
116
|
-
});
|
|
104
|
+
static async readMetadata(files) {
|
|
105
|
+
const data = new FormData();
|
|
106
|
+
await pdf_engines_utils_1.PDFEnginesUtils.addFiles(files, data);
|
|
107
|
+
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.readMetadata}`;
|
|
108
|
+
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
117
109
|
}
|
|
118
110
|
/**
|
|
119
111
|
* Writes metadata to the provided PDF files.
|
|
@@ -122,14 +114,12 @@ class PDFEngines {
|
|
|
122
114
|
* @param {Metadata} metadata - Metadata to be written.
|
|
123
115
|
* @returns {Promise<Buffer>} A Promise that resolves to the PDF file containing metadata as a buffer.
|
|
124
116
|
*/
|
|
125
|
-
static writeMetadata(
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
132
|
-
});
|
|
117
|
+
static async writeMetadata({ files, metadata }) {
|
|
118
|
+
const data = new FormData();
|
|
119
|
+
data.append('metadata', JSON.stringify(metadata));
|
|
120
|
+
await pdf_engines_utils_1.PDFEnginesUtils.addFiles(files, data);
|
|
121
|
+
const endpoint = `${main_config_1.Chromiumly.getGotenbergEndpoint()}/${main_config_1.Chromiumly.PDF_ENGINES_PATH}/${main_config_1.Chromiumly.PDF_ENGINE_ROUTES.writeMetadata}`;
|
|
122
|
+
return common_1.GotenbergUtils.fetch(endpoint, data, main_config_1.Chromiumly.getGotenbergApiBasicAuthUsername(), main_config_1.Chromiumly.getGotenbergApiBasicAuthPassword(), main_config_1.Chromiumly.getCustomHttpHeaders());
|
|
133
123
|
}
|
|
134
124
|
/**
|
|
135
125
|
* Generates a PDF file from a buffer and saves it to the "__generated__" directory.
|
|
@@ -138,12 +128,10 @@ class PDFEngines {
|
|
|
138
128
|
* @param {Buffer} buffer - The PDF content as a buffer
|
|
139
129
|
* @returns {Promise<void>} A Promise that resolves once the file is generated and saved.
|
|
140
130
|
*/
|
|
141
|
-
static generate(filename, buffer) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
yield fs_1.promises.writeFile(path_1.default.resolve(__generated__, filename), buffer);
|
|
146
|
-
});
|
|
131
|
+
static async generate(filename, buffer) {
|
|
132
|
+
const __generated__ = path_1.default.resolve(process.cwd(), '__generated__');
|
|
133
|
+
await fs_1.promises.mkdir(path_1.default.resolve(__generated__), { recursive: true });
|
|
134
|
+
await fs_1.promises.writeFile(path_1.default.resolve(__generated__, filename), buffer);
|
|
147
135
|
}
|
|
148
136
|
}
|
|
149
137
|
exports.PDFEngines = PDFEngines;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pdf-engines.js","sourceRoot":"","sources":["../../src/pdf-engines/pdf-engines.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pdf-engines.js","sourceRoot":"","sources":["../../src/pdf-engines/pdf-engines.ts"],"names":[],"mappings":"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"}
|