@tstdl/base 0.84.33 → 0.84.34

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": "@tstdl/base",
3
- "version": "0.84.33",
3
+ "version": "0.84.34",
4
4
  "author": "Patrick Hein",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -11,7 +11,18 @@ import { Template, TemplateService } from '../templates/index.js';
11
11
  export declare class PdfServiceRenderOptions extends PdfRenderOptions {
12
12
  browserContext?: BrowserContextController;
13
13
  locale?: string;
14
+ /**
15
+ * @default true
16
+ */
14
17
  waitForNetworkIdle?: boolean;
18
+ /**
19
+ * Delay pdf creation to ensure content has finished rendering
20
+ * @default 50
21
+ */
22
+ delay?: number;
23
+ /**
24
+ * @default false
25
+ */
15
26
  log?: boolean | LogLevel;
16
27
  }
17
28
  export type PdfTemplateOptions = PdfRenderOptions;
@@ -35,6 +35,7 @@ var import_templates = require("../templates/index.js");
35
35
  var import_finalize_stream = require("../utils/stream/finalize-stream.js");
36
36
  var import_readable_stream_from_promise = require("../utils/stream/readable-stream-from-promise.js");
37
37
  var import_stream_reader = require("../utils/stream/stream-reader.js");
38
+ var import_timing = require("../utils/timing.js");
38
39
  var import_type_guards = require("../utils/type-guards.js");
39
40
  var __decorate = function(decorators, target, key, desc) {
40
41
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -58,7 +59,18 @@ var __param = function(paramIndex, decorator) {
58
59
  class PdfServiceRenderOptions extends import_pdf_options.PdfRenderOptions {
59
60
  browserContext;
60
61
  locale;
62
+ /**
63
+ * @default true
64
+ */
61
65
  waitForNetworkIdle;
66
+ /**
67
+ * Delay pdf creation to ensure content has finished rendering
68
+ * @default 50
69
+ */
70
+ delay;
71
+ /**
72
+ * @default false
73
+ */
62
74
  log;
63
75
  }
64
76
  __decorate([
@@ -73,6 +85,10 @@ __decorate([
73
85
  (0, import_schema.Optional)(),
74
86
  __metadata("design:type", Boolean)
75
87
  ], PdfServiceRenderOptions.prototype, "waitForNetworkIdle", void 0);
88
+ __decorate([
89
+ (0, import_schema.Optional)(),
90
+ __metadata("design:type", Number)
91
+ ], PdfServiceRenderOptions.prototype, "delay", void 0);
76
92
  __decorate([
77
93
  (0, import_schema.Optional)(),
78
94
  __metadata("design:type", Object)
@@ -102,7 +118,7 @@ let PdfService = class PdfService2 {
102
118
  * @returns pdf stream
103
119
  */
104
120
  renderHtmlStream(html, options) {
105
- return this.renderStream(async (page) => page.setContent(html, { waitUntil: options?.waitForNetworkIdle == true ? "networkidle" : "load" }), options);
121
+ return this.renderStream(async (page) => page.setContent(html), options);
106
122
  }
107
123
  /**
108
124
  * Renders HTML to pdf
@@ -122,7 +138,7 @@ let PdfService = class PdfService2 {
122
138
  */
123
139
  renderUrlStream(url, options) {
124
140
  return this.renderStream(async (controller) => {
125
- await controller.navigate(url, { waitUntil: options?.waitForNetworkIdle == true ? "networkidle" : "load" });
141
+ await controller.navigate(url);
126
142
  }, options);
127
143
  }
128
144
  /**
@@ -145,7 +161,7 @@ let PdfService = class PdfService2 {
145
161
  renderTemplateStream(keyOrTemplate, templateContext, options) {
146
162
  return this.renderStream(async (page) => {
147
163
  const { fields: { header, body, footer }, options: optionsFromTemplate } = await this.templateService.render(keyOrTemplate, templateContext);
148
- await page.setContent(body, { timeout: options?.timeout, waitUntil: options?.waitForNetworkIdle == true ? "networkidle" : "load" });
164
+ await page.setContent(body);
149
165
  return { ...optionsFromTemplate, headerTemplate: header, footerTemplate: footer };
150
166
  }, options);
151
167
  }
@@ -170,6 +186,10 @@ let PdfService = class PdfService2 {
170
186
  page.attachLogger(logger);
171
187
  }
172
188
  const optionsFromHandler = await handler(page);
189
+ if (options.waitForNetworkIdle != false) {
190
+ await page.waitForLoadState("networkidle");
191
+ }
192
+ await (0, import_timing.timeout)(options.delay ?? 50);
173
193
  const pdfStream = page.renderPdfStream({ ...optionsFromHandler, ...options });
174
194
  const close = async () => {
175
195
  if ((0, import_type_guards.isDefined)(options.browserContext)) {