chromiumly 2.6.0 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/README.md +147 -42
  2. package/dist/chromium/converters/converter.d.ts +1 -1
  3. package/dist/chromium/converters/converter.js +1 -1
  4. package/dist/chromium/converters/converter.js.map +1 -1
  5. package/dist/chromium/converters/html.converter.d.ts +9 -4
  6. package/dist/chromium/converters/html.converter.js +7 -3
  7. package/dist/chromium/converters/html.converter.js.map +1 -1
  8. package/dist/chromium/converters/markdown.converter.d.ts +9 -4
  9. package/dist/chromium/converters/markdown.converter.js +7 -3
  10. package/dist/chromium/converters/markdown.converter.js.map +1 -1
  11. package/dist/chromium/converters/url.converter.d.ts +9 -4
  12. package/dist/chromium/converters/url.converter.js +6 -2
  13. package/dist/chromium/converters/url.converter.js.map +1 -1
  14. package/dist/chromium/index.d.ts +6 -3
  15. package/dist/chromium/index.js +7 -1
  16. package/dist/chromium/index.js.map +1 -1
  17. package/dist/chromium/interfaces/common.types.d.ts +13 -0
  18. package/dist/chromium/interfaces/common.types.js +3 -0
  19. package/dist/chromium/interfaces/common.types.js.map +1 -0
  20. package/dist/chromium/interfaces/converter.types.d.ts +4 -10
  21. package/dist/chromium/interfaces/screenshot.types.d.ts +10 -0
  22. package/dist/chromium/interfaces/screenshot.types.js +3 -0
  23. package/dist/chromium/interfaces/screenshot.types.js.map +1 -0
  24. package/dist/chromium/screenshots/html.screenshot.d.ts +54 -0
  25. package/dist/chromium/screenshots/html.screenshot.js +67 -0
  26. package/dist/chromium/screenshots/html.screenshot.js.map +1 -0
  27. package/dist/chromium/screenshots/markdown.screenshot.d.ts +52 -0
  28. package/dist/chromium/screenshots/markdown.screenshot.js +66 -0
  29. package/dist/chromium/screenshots/markdown.screenshot.js.map +1 -0
  30. package/dist/chromium/screenshots/screenshot.d.ts +18 -0
  31. package/dist/chromium/screenshots/screenshot.js +21 -0
  32. package/dist/chromium/screenshots/screenshot.js.map +1 -0
  33. package/dist/chromium/screenshots/url.screenshot.d.ts +50 -0
  34. package/dist/chromium/screenshots/url.screenshot.js +66 -0
  35. package/dist/chromium/screenshots/url.screenshot.js.map +1 -0
  36. package/dist/chromium/utils/converter.utils.d.ts +2 -12
  37. package/dist/chromium/utils/converter.utils.js +36 -50
  38. package/dist/chromium/utils/converter.utils.js.map +1 -1
  39. package/dist/chromium/utils/screenshot.utils.d.ts +22 -0
  40. package/dist/chromium/utils/screenshot.utils.js +75 -0
  41. package/dist/chromium/utils/screenshot.utils.js.map +1 -0
  42. package/dist/common/gotenberg.utils.d.ts +11 -1
  43. package/dist/common/gotenberg.utils.js +25 -2
  44. package/dist/common/gotenberg.utils.js.map +1 -1
  45. package/dist/common/index.d.ts +3 -3
  46. package/dist/common/index.js.map +1 -1
  47. package/dist/common/types.d.ts +1 -1
  48. package/dist/gotenberg.js +4 -3
  49. package/dist/gotenberg.js.map +1 -1
  50. package/dist/libre-office/index.d.ts +2 -2
  51. package/dist/libre-office/index.js.map +1 -1
  52. package/dist/libre-office/utils/constants.js +80 -76
  53. package/dist/libre-office/utils/constants.js.map +1 -1
  54. package/dist/libre-office/utils/libre-office.utils.d.ts +3 -3
  55. package/dist/libre-office/utils/libre-office.utils.js +5 -5
  56. package/dist/libre-office/utils/libre-office.utils.js.map +1 -1
  57. package/dist/main.config.d.ts +6 -1
  58. package/dist/main.config.js +11 -6
  59. package/dist/main.config.js.map +1 -1
  60. package/dist/main.d.ts +3 -3
  61. package/dist/main.js +4 -1
  62. package/dist/main.js.map +1 -1
  63. package/dist/pdf-engines/index.d.ts +1 -1
  64. package/dist/pdf-engines/index.js.map +1 -1
  65. package/dist/pdf-engines/pdf.engine.d.ts +3 -3
  66. package/dist/pdf-engines/pdf.engine.js +5 -5
  67. package/dist/pdf-engines/pdf.engine.js.map +1 -1
  68. package/dist/pdf-engines/utils/engine.utils.d.ts +2 -2
  69. package/dist/pdf-engines/utils/engine.utils.js +3 -3
  70. package/dist/pdf-engines/utils/engine.utils.js.map +1 -1
  71. package/package.json +20 -12
  72. package/src/.prettierrc.yml +4 -0
  73. package/src/chromium/converters/converter.ts +2 -2
  74. package/src/chromium/converters/html.converter.ts +37 -27
  75. package/src/chromium/converters/markdown.converter.ts +32 -26
  76. package/src/chromium/converters/tests/html.converter.test.ts +97 -73
  77. package/src/chromium/converters/tests/markdown.converter.test.ts +102 -77
  78. package/src/chromium/converters/tests/url.converter.test.ts +90 -66
  79. package/src/chromium/converters/url.converter.ts +31 -25
  80. package/src/chromium/index.ts +6 -3
  81. package/src/chromium/interfaces/common.types.ts +15 -0
  82. package/src/chromium/interfaces/converter.types.ts +4 -12
  83. package/src/chromium/interfaces/screenshot.types.ts +12 -0
  84. package/src/chromium/screenshots/html.screenshot.ts +100 -0
  85. package/src/chromium/screenshots/markdown.screenshot.ts +95 -0
  86. package/src/chromium/screenshots/screenshot.ts +22 -0
  87. package/src/chromium/screenshots/tests/html.screenshot.test.ts +192 -0
  88. package/src/chromium/screenshots/tests/markdown.screenshot.test.ts +176 -0
  89. package/src/chromium/screenshots/tests/url.screenshot.test.ts +166 -0
  90. package/src/chromium/screenshots/url.screenshot.ts +91 -0
  91. package/src/chromium/utils/converter.utils.ts +67 -60
  92. package/src/chromium/utils/screenshot.utils.ts +115 -0
  93. package/src/chromium/utils/tests/converter.utils.test.ts +250 -168
  94. package/src/chromium/utils/tests/screenshot.utils.test.ts +284 -0
  95. package/src/common/constants.ts +3 -3
  96. package/src/common/gotenberg.utils.ts +39 -8
  97. package/src/common/index.ts +3 -3
  98. package/src/common/tests/gotenberg.utils.test.ts +84 -31
  99. package/src/common/types.ts +2 -2
  100. package/src/gotenberg.ts +9 -9
  101. package/src/libre-office/index.ts +2 -2
  102. package/src/libre-office/utils/constants.ts +80 -76
  103. package/src/libre-office/utils/libre-office.utils.ts +21 -18
  104. package/src/libre-office/utils/tests/libre-office.utils.test.ts +58 -49
  105. package/src/main.config.ts +19 -13
  106. package/src/main.ts +10 -3
  107. package/src/pdf-engines/index.ts +1 -1
  108. package/src/pdf-engines/pdf.engine.ts +23 -19
  109. package/src/pdf-engines/tests/pdf.engine.test.ts +52 -49
  110. package/src/pdf-engines/utils/engine.utils.ts +12 -9
  111. package/src/pdf-engines/utils/tests/engine.utils.test.ts +23 -23
package/README.md CHANGED
@@ -11,6 +11,29 @@
11
11
  A lightweight Typescript library that interacts with [Gotenberg](https://gotenberg.dev/)'s different modules to convert
12
12
  a variety of document formats to PDF files.
13
13
 
14
+ # Table of Contents
15
+
16
+ 1. [Introduction](#introduction)
17
+ - [Install](#install)
18
+ - [Prerequisites](#prerequisites)
19
+ - [Get Started](#get-started)
20
+ 2. [Configuration](#configuration)
21
+ - [dotenv](#dotenv)
22
+ - [config](#config)
23
+ 3. [Modules](#modules)
24
+ - [Chromium](#chromium)
25
+ - [URL](#url)
26
+ - [HTML](#html)
27
+ - [Markdown](#markdown)
28
+ - [Customization](#customization)
29
+ - [Conversion](#conversion)
30
+ - [Screenshot](#screenshot)
31
+ - [PDF Engine](#pdf-engine)
32
+ - [convert](#convert)
33
+ - [merge](#merge)
34
+ - [generate](#generate)
35
+ 4. [Snippet](#snippet)
36
+
14
37
  ## Install
15
38
 
16
39
  Using npm:
@@ -33,7 +56,7 @@ so.
33
56
  After that, you can start a default Docker container of [Gotenberg](https://gotenberg.dev/) as follows:
34
57
 
35
58
  ```bash
36
- docker run --rm -p 3000:3000 gotenberg/gotenberg:7
59
+ docker run --rm -p 3000:3000 gotenberg/gotenberg:8
37
60
  ```
38
61
 
39
62
  ## Get Started
@@ -62,24 +85,35 @@ GOTENBERG_ENDPOINT=http://localhost:3000
62
85
  ## Modules
63
86
 
64
87
  Chromiumly introduces different classes that serve as wrappers to
65
- Gotenberg's [modules](https://gotenberg.dev/docs/modules/api#modules). These classes encompass methods featuring an
88
+ Gotenberg's [routes](https://gotenberg.dev/docs/routes). These classes encompass methods featuring an
66
89
  input file parameter, such as `html`, `header`, `footer`, and `markdown`, capable of accepting inputs in the form of a
67
90
  `string` (i.e. file path), `Buffer`, or `ReadStream`.
68
91
 
69
92
  ### Chormium
70
93
 
71
94
  There are three different classes that come with a single method (i.e.`convert`) which calls one of
72
- Chromium's [routes](https://gotenberg.dev/docs/modules/chromium#routes) to convert `html` and `markdown` files, or
95
+ Chromium's [Conversion routes](https://gotenberg.dev/docs/routes#convert-with-chromium) to convert `html` and `markdown` files, or
73
96
  a `url` to a `buffer` which contains the converted PDF file content.
74
97
 
98
+ Similarly, a new set of classes have been added to harness the recently introduced Gotenberg [Screenshot routes](https://gotenberg.dev/docs/routes#screenshots-route). These classes include a single method called `capture`, which allows capturing full-page screenshots of `html`, `markdown`, and `url`.
99
+
75
100
  #### URL
76
101
 
77
102
  ```typescript
78
- import {UrlConverter} from "chromiumly";
103
+ import { UrlConverter } from "chromiumly";
79
104
 
80
105
  const urlConverter = new UrlConverter();
81
106
  const buffer = await urlConverter.convert({
82
- url: "https://www.example.com/",
107
+ url: "https://www.example.com/",
108
+ });
109
+ ```
110
+
111
+ ```typescript
112
+ import { UrlScreenshot } from "chromiumly";
113
+
114
+ const screenshot = new UrlScreenshot();
115
+ const buffer = await screenshot.capture({
116
+ url: "https://www.example.com/",
83
117
  });
84
118
  ```
85
119
 
@@ -88,13 +122,21 @@ const buffer = await urlConverter.convert({
88
122
  The only requirement is that the file name should be `index.html`.
89
123
 
90
124
  ```typescript
91
- import {HtmlConverter} from "chromiumly";
125
+ import { HtmlConverter } from "chromiumly";
92
126
 
93
127
  const htmlConverter = new HtmlConverter();
94
128
  const buffer = await htmlConverter.convert({
95
- html: "path/to/index.html",
129
+ html: "path/to/index.html",
96
130
  });
131
+ ```
97
132
 
133
+ ```typescript
134
+ import { HtmlScreenshot } from "chromiumly";
135
+
136
+ const screenshot = new HtmlScreenshot();
137
+ const buffer = await screenshot.capture({
138
+ html: "path/to/index.html",
139
+ });
98
140
  ```
99
141
 
100
142
  #### Markdown
@@ -102,58 +144,121 @@ const buffer = await htmlConverter.convert({
102
144
  This route accepts an `index.html` file plus a markdown file.
103
145
 
104
146
  ```typescript
105
- import {MarkdownConverter} from "chromiumly";
147
+ import { MarkdownConverter } from "chromiumly";
106
148
 
107
149
  const markdownConverter = new MarkdownConverter();
108
150
  const buffer = await markdownConverter.convert({
109
- html: "path/to/index.html",
110
- markdown: "path/to/file.md",
151
+ html: "path/to/index.html",
152
+ markdown: "path/to/file.md",
153
+ });
154
+ ```
155
+
156
+ ```typescript
157
+ import { MarkdownScreenshot } from "chromiumly";
158
+
159
+ const screenshot = new MarkdownScreenshot();
160
+ const buffer = await screenshot.capture({
161
+ html: "path/to/index.html",
162
+ markdown: "path/to/file.md",
111
163
  });
112
164
  ```
113
165
 
114
166
  ### Customization
115
167
 
168
+ #### Conversion
169
+
116
170
  `convert()` method takes an optional `properties` parameter of the following type which dictates how the PDF generated
117
171
  file will look like.
118
172
 
119
173
  ```typescript
120
174
  type PageProperties = {
121
- size?: {
122
- width: number; // Paper width, in inches (default 8.5)
123
- height: number; //Paper height, in inches (default 11)
124
- };
125
- margins?: {
126
- top: number; // Top margin, in inches (default 0.39)
127
- bottom: number; // Bottom margin, in inches (default 0.39)
128
- left: number; // Left margin, in inches (default 0.39)
129
- right: number; // Right margin, in inches (default 0.39)
130
- };
131
- preferCssPageSize?: boolean; // Define whether to prefer page size as defined by CSS (default false)
132
- printBackground?: boolean; // Print the background graphics (default false)
133
- omitBackground?: boolean; // Hide the default white background and allow generating PDFs with transparency (default false)
134
- landscape?: boolean; // Set the paper orientation to landscape (default false)
135
- scale?: number; // The scale of the page rendering (default 1.0)
136
- nativePageRanges?: { from: number; to: number }; // Page ranges to print
175
+ singlePage?: boolean; // Print the entire content in one single page (default false)
176
+ size?: {
177
+ width: number; // Paper width, in inches (default 8.5)
178
+ height: number; //Paper height, in inches (default 11)
179
+ };
180
+ margins?: {
181
+ top: number; // Top margin, in inches (default 0.39)
182
+ bottom: number; // Bottom margin, in inches (default 0.39)
183
+ left: number; // Left margin, in inches (default 0.39)
184
+ right: number; // Right margin, in inches (default 0.39)
185
+ };
186
+ preferCssPageSize?: boolean; // Define whether to prefer page size as defined by CSS (default false)
187
+ printBackground?: boolean; // Print the background graphics (default false)
188
+ omitBackground?: boolean; // Hide the default white background and allow generating PDFs with transparency (default false)
189
+ landscape?: boolean; // Set the paper orientation to landscape (default false)
190
+ scale?: number; // The scale of the page rendering (default 1.0)
191
+ nativePageRanges?: { from: number; to: number }; // Page ranges to print
192
+ };
193
+ ```
194
+
195
+ In addition to the `PageProperties` customization options, the `convert()` method also accepts a set of parameters to further enhance the versatility of the conversion process. Here's an overview of the full list of parameters:
196
+
197
+ ```typescript
198
+ type ConversionOptions = {
199
+ properties?: PageProperties; // Customize the appearance of the generated PDF
200
+ pdfFormat?: PdfFormat; // Define the PDF format for the conversion
201
+ pdfUA?: boolean; // Enable PDF for Universal Access for optimal accessibility (default false)
202
+ userAgent?: string; // Customize the user agent string sent during conversion
203
+ header?: PathLikeOrReadStream; // Specify a custom header for the PDF
204
+ footer?: PathLikeOrReadStream; // Specify a custom footer for the PDF
205
+ emulatedMediaType?: EmulatedMediaType; // Specify the emulated media type for conversion
206
+ waitDelay?: string; // Duration (e.g., '5s') to wait when loading an HTML document before conversion
207
+ waitForExpression?: string; // JavaScript expression to wait before converting an HTML document into PDF
208
+ extraHttpHeaders?: Record<string, string>; // Include additional HTTP headers in the request
209
+ failOnHttpStatusCodes?: number[]; // List of HTTP status codes triggering a 409 Conflict response (default [499, 599])
210
+ failOnConsoleExceptions?: boolean; // Return a 409 Conflict response if there are exceptions in the Chromium console (default false)
211
+ skipNetworkIdleEvent?: boolean; // Do not wait for Chromium network to be idle (default false)
212
+ };
213
+ ```
214
+
215
+ #### Screenshot
216
+
217
+ Similarly, the `capture()` method takes an optional `properties` parameter of the specified type, influencing the appearance of the captured screenshot file.
218
+
219
+ ```typescript
220
+ type ImageProperties = {
221
+ format: "png" | "jpeg" | "webp"; //The image compression format, either "png", "jpeg" or "webp".
222
+ quality?: number; // The compression quality from range 0 to 100 (jpeg only).
223
+ omitBackground?: boolean; // Hide the default white background and allow generating screenshots with transparency.
224
+ };
225
+ ```
226
+
227
+ Furthermore, alongside the customization options offered by `ImageProperties`, the `capture()` method accommodates a variety of parameters to expand the versatility of the screenshot process. Below is a comprehensive overview of all parameters available:
228
+
229
+ ```typescript
230
+ type ScreenshotOptions = {
231
+ properties?: ImageProperties;
232
+ header?: PathLikeOrReadStream;
233
+ footer?: PathLikeOrReadStream;
234
+ emulatedMediaType?: EmulatedMediaType;
235
+ waitDelay?: string; // Duration (e.g, '5s') to wait when loading an HTML document before convertion.
236
+ waitForExpression?: string; // JavaScript's expression to wait before converting an HTML document into PDF until it returns true.
237
+ extraHttpHeaders?: Record<string, string>;
238
+ failOnHttpStatusCodes?: number[]; // Return a 409 Conflict response if the HTTP status code is in the list (default [499,599])
239
+ failOnConsoleExceptions?: boolean; // Return a 409 Conflict response if there are exceptions in the Chromium console (default false)
240
+ skipNetworkIdleEvent?: boolean; // Do not wait for Chromium network to be idle (default false)
241
+ optimizeForSpeed?: boolean; // Define whether to optimize image encoding for speed, not for resulting size.
137
242
  };
138
243
  ```
139
244
 
140
245
  ### PDF Engine
141
246
 
142
- The `PDFEngine` combines the functionality of both
143
- Gotenberg's [PDF Engines](https://gotenberg.dev/docs/modules/pdf-engines)
144
- and [LibreOffice](https://gotenberg.dev/docs/modules/libreoffice) modules to manipulate different file formats.
247
+ The `PDFEngine` combines the functionality of
248
+ Gotenberg's [PDF Engines](https://gotenberg.dev/docs/routes#convert-into-pdfa--pdfua-route)
249
+ and [LibreOffice](https://gotenberg.dev/docs/routes#convert-with-libreoffice) modules to manipulate different file formats.
145
250
 
146
251
  #### convert
147
252
 
148
- This method interacts with [LibreOffice](https://gotenberg.dev/docs/modules/libreoffice) module to convert different
253
+ This method interacts with [LibreOffice](https://gotenberg.dev/docs/routes#convert-with-libreoffice) module to convert different
149
254
  documents to PDF files. You can find the file extensions
150
- accepted [here](https://gotenberg.dev/docs/modules/libreoffice#route).
255
+ accepted [here](https://gotenberg.dev/docs/routes#convert-with-libreoffice#route).
151
256
 
152
257
  ```typescript
153
- import {PDFEngine} from "chromiumly";
258
+ import { PDFEngine } from "chromiumly";
154
259
 
155
260
  const buffer = await PDFEngine.convert({
156
- files: ["path/to/file.docx", "path/to/file.png"],
261
+ files: ["path/to/file.docx", "path/to/file.png"],
157
262
  });
158
263
  ```
159
264
 
@@ -165,16 +270,16 @@ Similarly to Chromium's module `convert` method, this method takes the following
165
270
 
166
271
  #### merge
167
272
 
168
- This method interacts with [PDF Engines](https://gotenberg.dev/docs/modules/pdf-engines) module which gathers different
273
+ This method interacts with [PDF Engines](https://gotenberg.dev/docs/routes#merge-pdfs-route) module which gathers different
169
274
  engines that can manipulate and merge PDF files such
170
275
  as: [PDFtk](https://gitlab.com/pdftk-java/pdftk), [PDFcpu](https://github.com/pdfcpu/pdfcpu), [QPDF](https://github.com/qpdf/qpdf),
171
276
  and [UNO](https://github.com/unoconv/unoconv).
172
277
 
173
278
  ```typescript
174
- import {PDFEngine} from "chromiumly";
279
+ import { PDFEngine } from "chromiumly";
175
280
 
176
281
  const buffer = await PDFEngine.merge({
177
- files: ["path/to/file.docx", "path/to/file.png"],
282
+ files: ["path/to/file.docx", "path/to/file.png"],
178
283
  });
179
284
  ```
180
285
 
@@ -190,15 +295,15 @@ Please note that all the PDF files can be found `__generated__` folder in the ro
190
295
  The following is a short snippet of how to use the library.
191
296
 
192
297
  ```typescript
193
- import {PDFEngine, UrlConverter} from "chromiumly";
298
+ import { PDFEngine, UrlConverter } from "chromiumly";
194
299
 
195
300
  async function run() {
196
- const urlConverter = new UrlConverter();
197
- const buffer = await urlConverter.convert({
198
- url: "https://gotenberg.dev/",
199
- });
301
+ const urlConverter = new UrlConverter();
302
+ const buffer = await urlConverter.convert({
303
+ url: "https://gotenberg.dev/",
304
+ });
200
305
 
201
- await PDFEngine.generate("gotenberg.pdf", buffer);
306
+ await PDFEngine.generate("gotenberg.pdf", buffer);
202
307
  }
203
308
 
204
309
  run();
@@ -1,4 +1,4 @@
1
- import { ChromiumRoute } from "../../main.config";
1
+ import { ChromiumRoute } from '../../main.config';
2
2
  /**
3
3
  * Abstract class representing a generic converter.
4
4
  * Concrete converter classes should extend this class and implement specific conversion logic.
@@ -14,7 +14,7 @@ class Converter {
14
14
  * @param {ChromiumRoute} route - The ChromiumRoute enum value representing the conversion route.
15
15
  */
16
16
  constructor(route) {
17
- this.endpoint = `${main_config_1.Chromiumly.GOTENBERG_ENDPOINT}/${main_config_1.Chromiumly.CHROMIUM_PATH}/${main_config_1.Chromiumly.CHROMIUM_ROUTES[route]}`;
17
+ this.endpoint = `${main_config_1.Chromiumly.GOTENBERG_ENDPOINT}/${main_config_1.Chromiumly.CHROMIUM_CONVERT_PATH}/${main_config_1.Chromiumly.CHROMIUM_ROUTES[route]}`;
18
18
  }
19
19
  }
20
20
  exports.Converter = Converter;
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/converter.ts"],"names":[],"mappings":";;;AAAA,mDAA4D;AAE5D;;;GAGG;AACH,MAAsB,SAAS;IAM3B;;;;;OAKG;IACH,YAAY,KAAoB;QAC5B,IAAI,CAAC,QAAQ,GAAG,GAAG,wBAAU,CAAC,kBAAkB,IAAI,wBAAU,CAAC,aAAa,IAAI,wBAAU,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;IACxH,CAAC;CACJ;AAfD,8BAeC"}
1
+ {"version":3,"file":"converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/converter.ts"],"names":[],"mappings":";;;AAAA,mDAA8D;AAE9D;;;GAGG;AACH,MAAsB,SAAS;IAM3B;;;;;OAKG;IACH,YAAY,KAAoB;QAC5B,IAAI,CAAC,QAAQ,GAAG,GAAG,wBAAU,CAAC,kBAAkB,IAAI,wBAAU,CAAC,qBAAqB,IAAI,wBAAU,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;IAChI,CAAC;CACJ;AAfD,8BAeC"}
@@ -1,7 +1,8 @@
1
1
  /// <reference types="node" />
2
- import { PathLikeOrReadStream, PdfFormat } from "../../common";
3
- import { EmulatedMediaType, PageProperties } from "../interfaces/converter.types";
4
- import { Converter } from "./converter";
2
+ import { PathLikeOrReadStream, PdfFormat } from '../../common';
3
+ import { PageProperties } from '../interfaces/converter.types';
4
+ import { Converter } from './converter';
5
+ import { EmulatedMediaType } from '../interfaces/common.types';
5
6
  /**
6
7
  * Class representing an HTML converter that extends the base Converter class.
7
8
  * This class is used to convert HTML content to PDF using Gotenberg service.
@@ -29,10 +30,12 @@ export declare class HtmlConverter extends Converter {
29
30
  * @param {string} [options.waitForExpression] - JavaScript expression to wait for before completing the conversion.
30
31
  * @param {string} [options.userAgent] - User agent string to use during the conversion.
31
32
  * @param {Record<string, string>} [options.extraHttpHeaders] - Additional HTTP headers for the conversion.
33
+ * @param {number[]} [options.failOnHttpStatusCodes] - Whether to fail on HTTP status code.
32
34
  * @param {boolean} [options.failOnConsoleExceptions] - Whether to fail on console exceptions during conversion.
35
+ * @param {boolean} [options.skipNetworkIdleEvent] - Whether to skip network idle event.
33
36
  * @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a Buffer.
34
37
  */
35
- convert({ html, assets, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnConsoleExceptions, }: {
38
+ convert({ html, assets, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnHttpStatusCodes, failOnConsoleExceptions, skipNetworkIdleEvent }: {
36
39
  html: PathLikeOrReadStream;
37
40
  assets?: {
38
41
  file: PathLikeOrReadStream;
@@ -48,6 +51,8 @@ export declare class HtmlConverter extends Converter {
48
51
  waitForExpression?: string;
49
52
  userAgent?: string;
50
53
  extraHttpHeaders?: Record<string, string>;
54
+ failOnHttpStatusCodes?: number[];
51
55
  failOnConsoleExceptions?: boolean;
56
+ skipNetworkIdleEvent?: boolean;
52
57
  }): Promise<Buffer>;
53
58
  }
@@ -36,15 +36,17 @@ class HtmlConverter extends converter_1.Converter {
36
36
  * @param {string} [options.waitForExpression] - JavaScript expression to wait for before completing the conversion.
37
37
  * @param {string} [options.userAgent] - User agent string to use during the conversion.
38
38
  * @param {Record<string, string>} [options.extraHttpHeaders] - Additional HTTP headers for the conversion.
39
+ * @param {number[]} [options.failOnHttpStatusCodes] - Whether to fail on HTTP status code.
39
40
  * @param {boolean} [options.failOnConsoleExceptions] - Whether to fail on console exceptions during conversion.
41
+ * @param {boolean} [options.skipNetworkIdleEvent] - Whether to skip network idle event.
40
42
  * @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a Buffer.
41
43
  */
42
- convert({ html, assets, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnConsoleExceptions, }) {
44
+ convert({ html, assets, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnHttpStatusCodes, failOnConsoleExceptions, skipNetworkIdleEvent }) {
43
45
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
44
46
  const data = new form_data_1.default();
45
- yield converter_utils_1.ConverterUtils.addFile(data, html, "index.html");
47
+ yield common_1.GotenbergUtils.addFile(data, html, 'index.html');
46
48
  if (assets === null || assets === void 0 ? void 0 : assets.length) {
47
- yield Promise.all(assets.map(({ file, name }) => converter_utils_1.ConverterUtils.addFile(data, file, name)));
49
+ yield Promise.all(assets.map(({ file, name }) => common_1.GotenbergUtils.addFile(data, file, name)));
48
50
  }
49
51
  yield converter_utils_1.ConverterUtils.customize(data, {
50
52
  header,
@@ -57,7 +59,9 @@ class HtmlConverter extends converter_1.Converter {
57
59
  waitForExpression,
58
60
  userAgent,
59
61
  extraHttpHeaders,
62
+ failOnHttpStatusCodes,
60
63
  failOnConsoleExceptions,
64
+ skipNetworkIdleEvent
61
65
  });
62
66
  return common_1.GotenbergUtils.fetch(this.endpoint, data);
63
67
  });
@@ -1 +1 @@
1
- {"version":3,"file":"html.converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/html.converter.ts"],"names":[],"mappings":";;;;AAAA,kEAAiC;AAEjC,yCAA6E;AAK7E,8DAAwD;AACxD,2CAAsC;AACtC,mDAAgD;AAEhD;;;;;GAKG;AACH,MAAa,aAAc,SAAQ,qBAAS;IACxC;;;OAGG;IACH;QACI,KAAK,CAAC,2BAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACG,OAAO,CAAC,EACI,IAAI,EACJ,MAAM,EACN,MAAM,EACN,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,uBAAuB,GAexC;;YACG,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAE5B,MAAM,gCAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YAEvD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,EAAE,CAAC;gBACjB,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,gCAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;YAC/F,CAAC;YAED,MAAM,gCAAc,CAAC,SAAS,CAAC,IAAI,EAAE;gBACjC,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,iBAAiB;gBACjB,SAAS;gBACT,iBAAiB;gBACjB,SAAS;gBACT,gBAAgB;gBAChB,uBAAuB;aAC1B,CAAC,CAAC;YAEH,OAAO,uBAAc,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;CACJ;AAhFD,sCAgFC"}
1
+ {"version":3,"file":"html.converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/html.converter.ts"],"names":[],"mappings":";;;;AAAA,kEAAiC;AAEjC,yCAA+E;AAE/E,8DAA0D;AAC1D,2CAAwC;AACxC,mDAAkD;AAGlD;;;;;GAKG;AACH,MAAa,aAAc,SAAQ,qBAAS;IACxC;;;OAGG;IACH;QACI,KAAK,CAAC,2BAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACG,OAAO,CAAC,EACV,IAAI,EACJ,MAAM,EACN,MAAM,EACN,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EAiBvB;;YACG,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAE5B,MAAM,uBAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YAEvD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,EAAE,CAAC;gBACjB,MAAM,OAAO,CAAC,GAAG,CACb,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAC1B,uBAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAC3C,CACJ,CAAC;YACN,CAAC;YAED,MAAM,gCAAc,CAAC,SAAS,CAAC,IAAI,EAAE;gBACjC,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,iBAAiB;gBACjB,SAAS;gBACT,iBAAiB;gBACjB,SAAS;gBACT,gBAAgB;gBAChB,qBAAqB;gBACrB,uBAAuB;gBACvB,oBAAoB;aACvB,CAAC,CAAC;YAEH,OAAO,uBAAc,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;CACJ;AA5FD,sCA4FC"}
@@ -1,7 +1,8 @@
1
1
  /// <reference types="node" />
2
- import { PdfFormat, PathLikeOrReadStream } from "../../common";
3
- import { EmulatedMediaType, PageProperties } from "../interfaces/converter.types";
4
- import { Converter } from "./converter";
2
+ import { PdfFormat, PathLikeOrReadStream } from '../../common';
3
+ import { PageProperties } from '../interfaces/converter.types';
4
+ import { Converter } from './converter';
5
+ import { EmulatedMediaType } from '../interfaces/common.types';
5
6
  /**
6
7
  * Class representing a Markdown converter that extends the base Converter class.
7
8
  * This class is used to convert HTML with markdown content to PDF using Gotenberg service.
@@ -30,10 +31,12 @@ export declare class MarkdownConverter extends Converter {
30
31
  * @param {string} [options.waitForExpression] - JavaScript expression to wait for before completing the conversion.
31
32
  * @param {string} [options.userAgent] - User agent string to use during the conversion.
32
33
  * @param {Record<string, string>} [options.extraHttpHeaders] - Additional HTTP headers for the conversion.
34
+ * @param {number []} [options.failOnHttpStatusCodes] - Whether to fail on HTTP status code.
33
35
  * @param {boolean} [options.failOnConsoleExceptions] - Whether to fail on console exceptions during conversion.
36
+ * @param {boolean} [options.skipNetworkIdleEvent] - Whether to skip network idle event.
34
37
  * @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a Buffer.
35
38
  */
36
- convert({ html, markdown, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnConsoleExceptions, }: {
39
+ convert({ html, markdown, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnHttpStatusCodes, failOnConsoleExceptions, skipNetworkIdleEvent }: {
37
40
  html: PathLikeOrReadStream;
38
41
  markdown: PathLikeOrReadStream;
39
42
  header?: PathLikeOrReadStream;
@@ -46,6 +49,8 @@ export declare class MarkdownConverter extends Converter {
46
49
  waitForExpression?: string;
47
50
  userAgent?: string;
48
51
  extraHttpHeaders?: Record<string, string>;
52
+ failOnHttpStatusCodes?: number[];
49
53
  failOnConsoleExceptions?: boolean;
54
+ skipNetworkIdleEvent?: boolean;
50
55
  }): Promise<Buffer>;
51
56
  }
@@ -37,14 +37,16 @@ class MarkdownConverter extends converter_1.Converter {
37
37
  * @param {string} [options.waitForExpression] - JavaScript expression to wait for before completing the conversion.
38
38
  * @param {string} [options.userAgent] - User agent string to use during the conversion.
39
39
  * @param {Record<string, string>} [options.extraHttpHeaders] - Additional HTTP headers for the conversion.
40
+ * @param {number []} [options.failOnHttpStatusCodes] - Whether to fail on HTTP status code.
40
41
  * @param {boolean} [options.failOnConsoleExceptions] - Whether to fail on console exceptions during conversion.
42
+ * @param {boolean} [options.skipNetworkIdleEvent] - Whether to skip network idle event.
41
43
  * @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a Buffer.
42
44
  */
43
- convert({ html, markdown, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnConsoleExceptions, }) {
45
+ convert({ html, markdown, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnHttpStatusCodes, failOnConsoleExceptions, skipNetworkIdleEvent }) {
44
46
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
45
47
  const data = new form_data_1.default();
46
- yield converter_utils_1.ConverterUtils.addFile(data, html, "index.html");
47
- yield converter_utils_1.ConverterUtils.addFile(data, markdown, "file.md");
48
+ yield common_1.GotenbergUtils.addFile(data, html, 'index.html');
49
+ yield common_1.GotenbergUtils.addFile(data, markdown, 'file.md');
48
50
  yield converter_utils_1.ConverterUtils.customize(data, {
49
51
  header,
50
52
  footer,
@@ -56,7 +58,9 @@ class MarkdownConverter extends converter_1.Converter {
56
58
  waitForExpression,
57
59
  userAgent,
58
60
  extraHttpHeaders,
61
+ failOnHttpStatusCodes,
59
62
  failOnConsoleExceptions,
63
+ skipNetworkIdleEvent
60
64
  });
61
65
  return common_1.GotenbergUtils.fetch(this.endpoint, data);
62
66
  });
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/markdown.converter.ts"],"names":[],"mappings":";;;;AAAA,kEAAiC;AAEjC,yCAA6E;AAK7E,8DAAwD;AACxD,2CAAsC;AACtC,mDAAgD;AAEhD;;;;;GAKG;AACH,MAAa,iBAAkB,SAAQ,qBAAS;IAC5C;;;OAGG;IACH;QACI,KAAK,CAAC,2BAAa,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACG,OAAO,CAAC,EACI,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,uBAAuB,GAexC;;YACG,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAE5B,MAAM,gCAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YAEvD,MAAM,gCAAc,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YAExD,MAAM,gCAAc,CAAC,SAAS,CAAC,IAAI,EAAE;gBACjC,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,iBAAiB;gBACjB,SAAS;gBACT,iBAAiB;gBACjB,SAAS;gBACT,gBAAgB;gBAChB,uBAAuB;aAC1B,CAAC,CAAC;YAEH,OAAO,uBAAc,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;CACJ;AA/ED,8CA+EC"}
1
+ {"version":3,"file":"markdown.converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/markdown.converter.ts"],"names":[],"mappings":";;;;AAAA,kEAAiC;AAEjC,yCAA+E;AAE/E,8DAA0D;AAC1D,2CAAwC;AACxC,mDAAkD;AAGlD;;;;;GAKG;AACH,MAAa,iBAAkB,SAAQ,qBAAS;IAC5C;;;OAGG;IACH;QACI,KAAK,CAAC,2BAAa,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,OAAO,CAAC,EACV,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EAiBvB;;YACG,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAE5B,MAAM,uBAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YAEvD,MAAM,uBAAc,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YAExD,MAAM,gCAAc,CAAC,SAAS,CAAC,IAAI,EAAE;gBACjC,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,iBAAiB;gBACjB,SAAS;gBACT,iBAAiB;gBACjB,SAAS;gBACT,gBAAgB;gBAChB,qBAAqB;gBACrB,uBAAuB;gBACvB,oBAAoB;aACvB,CAAC,CAAC;YAEH,OAAO,uBAAc,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;CACJ;AAvFD,8CAuFC"}
@@ -1,7 +1,8 @@
1
1
  /// <reference types="node" />
2
- import { PdfFormat, PathLikeOrReadStream } from "../../common";
3
- import { EmulatedMediaType, PageProperties } from "../interfaces/converter.types";
4
- import { Converter } from "./converter";
2
+ import { PdfFormat, PathLikeOrReadStream } from '../../common';
3
+ import { PageProperties } from '../interfaces/converter.types';
4
+ import { Converter } from './converter';
5
+ import { EmulatedMediaType } from '../interfaces/common.types';
5
6
  /**
6
7
  * Class representing a URL converter that extends the base Converter class.
7
8
  * This class is used to convert content from a URL to PDF using Gotenberg service.
@@ -29,10 +30,12 @@ export declare class UrlConverter extends Converter {
29
30
  * @param {string} [options.waitForExpression] - JavaScript expression to wait for before completing the conversion.
30
31
  * @param {string} [options.userAgent] - User agent string to use during the conversion.
31
32
  * @param {Record<string, string>} [options.extraHttpHeaders] - Additional HTTP headers for the conversion.
33
+ * @param {number[]} [options.failOnHttpStatusCodes] - Whether to fail on HTTP status code.
32
34
  * @param {boolean} [options.failOnConsoleExceptions] - Whether to fail on console exceptions during conversion.
35
+ * @param {boolean} [options.skipNetworkIdleEvent] - Whether to skip network idle event.
33
36
  * @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a Buffer.
34
37
  */
35
- convert({ url, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnConsoleExceptions, }: {
38
+ convert({ url, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnHttpStatusCodes, failOnConsoleExceptions, skipNetworkIdleEvent }: {
36
39
  url: string;
37
40
  header?: PathLikeOrReadStream;
38
41
  footer?: PathLikeOrReadStream;
@@ -44,6 +47,8 @@ export declare class UrlConverter extends Converter {
44
47
  waitForExpression?: string;
45
48
  userAgent?: string;
46
49
  extraHttpHeaders?: Record<string, string>;
50
+ failOnHttpStatusCodes?: number[];
47
51
  failOnConsoleExceptions?: boolean;
52
+ skipNetworkIdleEvent?: boolean;
48
53
  }): Promise<Buffer>;
49
54
  }
@@ -37,14 +37,16 @@ class UrlConverter extends converter_1.Converter {
37
37
  * @param {string} [options.waitForExpression] - JavaScript expression to wait for before completing the conversion.
38
38
  * @param {string} [options.userAgent] - User agent string to use during the conversion.
39
39
  * @param {Record<string, string>} [options.extraHttpHeaders] - Additional HTTP headers for the conversion.
40
+ * @param {number[]} [options.failOnHttpStatusCodes] - Whether to fail on HTTP status code.
40
41
  * @param {boolean} [options.failOnConsoleExceptions] - Whether to fail on console exceptions during conversion.
42
+ * @param {boolean} [options.skipNetworkIdleEvent] - Whether to skip network idle event.
41
43
  * @returns {Promise<Buffer>} A Promise resolving to the converted PDF content as a Buffer.
42
44
  */
43
- convert({ url, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnConsoleExceptions, }) {
45
+ convert({ url, header, footer, properties, pdfFormat, pdfUA, emulatedMediaType, waitDelay, waitForExpression, userAgent, extraHttpHeaders, failOnHttpStatusCodes, failOnConsoleExceptions, skipNetworkIdleEvent }) {
44
46
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
45
47
  const _url = new url_1.URL(url);
46
48
  const data = new form_data_1.default();
47
- data.append("url", _url.href);
49
+ data.append('url', _url.href);
48
50
  yield converter_utils_1.ConverterUtils.customize(data, {
49
51
  header,
50
52
  footer,
@@ -56,7 +58,9 @@ class UrlConverter extends converter_1.Converter {
56
58
  waitForExpression,
57
59
  userAgent,
58
60
  extraHttpHeaders,
61
+ failOnHttpStatusCodes,
59
62
  failOnConsoleExceptions,
63
+ skipNetworkIdleEvent
60
64
  });
61
65
  return common_1.GotenbergUtils.fetch(this.endpoint, data);
62
66
  });
@@ -1 +1 @@
1
- {"version":3,"file":"url.converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/url.converter.ts"],"names":[],"mappings":";;;;AAAA,6BAAwB;AACxB,kEAAiC;AACjC,yCAA6E;AAK7E,8DAAwD;AACxD,2CAAsC;AACtC,mDAAgD;AAEhD;;;;;GAKG;AACH,MAAa,YAAa,SAAQ,qBAAS;IACvC;;;OAGG;IACH;QACI,KAAK,CAAC,2BAAa,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACG,OAAO,CAAC,EACI,GAAG,EACH,MAAM,EACN,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,uBAAuB,GAcxC;;YACG,MAAM,IAAI,GAAG,IAAI,SAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAE5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAE9B,MAAM,gCAAc,CAAC,SAAS,CAAC,IAAI,EAAE;gBACjC,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,iBAAiB;gBACjB,SAAS;gBACT,iBAAiB;gBACjB,SAAS;gBACT,gBAAgB;gBAChB,uBAAuB;aAC1B,CAAC,CAAC;YAEH,OAAO,uBAAc,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;CACJ;AA3ED,oCA2EC"}
1
+ {"version":3,"file":"url.converter.js","sourceRoot":"","sources":["../../../src/chromium/converters/url.converter.ts"],"names":[],"mappings":";;;;AAAA,6BAA0B;AAC1B,kEAAiC;AACjC,yCAA+E;AAE/E,8DAA0D;AAC1D,2CAAwC;AACxC,mDAAkD;AAGlD;;;;;GAKG;AACH,MAAa,YAAa,SAAQ,qBAAS;IACvC;;;OAGG;IACH;QACI,KAAK,CAAC,2BAAa,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACG,OAAO,CAAC,EACV,GAAG,EACH,MAAM,EACN,MAAM,EACN,UAAU,EACV,SAAS,EACT,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EAgBvB;;YACG,MAAM,IAAI,GAAG,IAAI,SAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAE5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAE9B,MAAM,gCAAc,CAAC,SAAS,CAAC,IAAI,EAAE;gBACjC,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,SAAS;gBACT,KAAK;gBACL,iBAAiB;gBACjB,SAAS;gBACT,iBAAiB;gBACjB,SAAS;gBACT,gBAAgB;gBAChB,qBAAqB;gBACrB,uBAAuB;gBACvB,oBAAoB;aACvB,CAAC,CAAC;YAEH,OAAO,uBAAc,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;CACJ;AAnFD,oCAmFC"}
@@ -1,3 +1,6 @@
1
- export { HtmlConverter } from "./converters/html.converter";
2
- export { MarkdownConverter } from "./converters/markdown.converter";
3
- export { UrlConverter } from "./converters/url.converter";
1
+ export { UrlScreenshot } from './screenshots/url.screenshot';
2
+ export { MarkdownScreenshot } from './screenshots/markdown.screenshot';
3
+ export { HtmlScreenshot } from './screenshots/html.screenshot';
4
+ export { HtmlConverter } from './converters/html.converter';
5
+ export { MarkdownConverter } from './converters/markdown.converter';
6
+ export { UrlConverter } from './converters/url.converter';
@@ -1,6 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UrlConverter = exports.MarkdownConverter = exports.HtmlConverter = void 0;
3
+ exports.UrlConverter = exports.MarkdownConverter = exports.HtmlConverter = exports.HtmlScreenshot = exports.MarkdownScreenshot = exports.UrlScreenshot = void 0;
4
+ var url_screenshot_1 = require("./screenshots/url.screenshot");
5
+ Object.defineProperty(exports, "UrlScreenshot", { enumerable: true, get: function () { return url_screenshot_1.UrlScreenshot; } });
6
+ var markdown_screenshot_1 = require("./screenshots/markdown.screenshot");
7
+ Object.defineProperty(exports, "MarkdownScreenshot", { enumerable: true, get: function () { return markdown_screenshot_1.MarkdownScreenshot; } });
8
+ var html_screenshot_1 = require("./screenshots/html.screenshot");
9
+ Object.defineProperty(exports, "HtmlScreenshot", { enumerable: true, get: function () { return html_screenshot_1.HtmlScreenshot; } });
4
10
  var html_converter_1 = require("./converters/html.converter");
5
11
  Object.defineProperty(exports, "HtmlConverter", { enumerable: true, get: function () { return html_converter_1.HtmlConverter; } });
6
12
  var markdown_converter_1 = require("./converters/markdown.converter");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chromium/index.ts"],"names":[],"mappings":";;;AAAA,8DAA0D;AAAlD,+GAAA,aAAa,OAAA;AACrB,sEAAkE;AAA1D,uHAAA,iBAAiB,OAAA;AACzB,4DAAwD;AAAhD,6GAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/chromium/index.ts"],"names":[],"mappings":";;;AAAA,+DAA6D;AAApD,+GAAA,aAAa,OAAA;AACtB,yEAAuE;AAA9D,yHAAA,kBAAkB,OAAA;AAC3B,iEAA+D;AAAtD,iHAAA,cAAc,OAAA;AACvB,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,sEAAoE;AAA3D,uHAAA,iBAAiB,OAAA;AAC1B,4DAA0D;AAAjD,6GAAA,YAAY,OAAA"}
@@ -0,0 +1,13 @@
1
+ import { PathLikeOrReadStream } from '../../common';
2
+ export type EmulatedMediaType = 'screen' | 'print';
3
+ export type ChromiumOptions = {
4
+ header?: PathLikeOrReadStream;
5
+ footer?: PathLikeOrReadStream;
6
+ emulatedMediaType?: EmulatedMediaType;
7
+ waitDelay?: string;
8
+ waitForExpression?: string;
9
+ extraHttpHeaders?: Record<string, string>;
10
+ failOnHttpStatusCodes?: number[];
11
+ failOnConsoleExceptions?: boolean;
12
+ skipNetworkIdleEvent?: boolean;
13
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=common.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../../src/chromium/interfaces/common.types.ts"],"names":[],"mappings":""}
@@ -1,4 +1,5 @@
1
- import { PathLikeOrReadStream, PdfFormat } from "../../common";
1
+ import { PdfFormat } from '../../common';
2
+ import { ChromiumOptions } from './common.types';
2
3
  type PageSize = {
3
4
  width: number;
4
5
  height: number;
@@ -10,6 +11,7 @@ type PageMargins = {
10
11
  right: number;
11
12
  };
12
13
  export type PageProperties = {
14
+ singlePage?: boolean;
13
15
  size?: PageSize;
14
16
  margins?: PageMargins;
15
17
  preferCssPageSize?: boolean;
@@ -22,18 +24,10 @@ export type PageProperties = {
22
24
  to: number;
23
25
  };
24
26
  };
25
- export type EmulatedMediaType = "screen" | "print";
26
- export type ConversionOptions = {
27
- header?: PathLikeOrReadStream;
28
- footer?: PathLikeOrReadStream;
27
+ export type ConversionOptions = ChromiumOptions & {
29
28
  properties?: PageProperties;
30
29
  pdfFormat?: PdfFormat;
31
30
  pdfUA?: boolean;
32
- emulatedMediaType?: EmulatedMediaType;
33
- waitDelay?: string;
34
- waitForExpression?: string;
35
31
  userAgent?: string;
36
- extraHttpHeaders?: Record<string, string>;
37
- failOnConsoleExceptions?: boolean;
38
32
  };
39
33
  export {};