@tstdl/base 0.71.57 → 0.71.58

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.
@@ -27,10 +27,10 @@ export declare const imageFormatSchema: import("superstruct").Struct<"png" | "jp
27
27
  export declare type ImageFormat = Infer<typeof imageFormatSchema>;
28
28
  export declare const imageOptionsSchema: import("superstruct").Struct<{
29
29
  origin?: "center" | "smart" | "top" | "left" | "right" | "bottom" | "topleft" | "topright" | "bottomleft" | "bottomright" | undefined;
30
- format?: "png" | "jpg" | "jpeg" | "webp" | "avif" | undefined;
31
- resizeMode?: "fill" | "fit" | undefined;
32
30
  width?: number | undefined;
33
31
  height?: number | undefined;
32
+ format?: "png" | "jpg" | "jpeg" | "webp" | "avif" | undefined;
33
+ resizeMode?: "fill" | "fit" | undefined;
34
34
  quality?: number | undefined;
35
35
  cacheBuster?: string | undefined;
36
36
  }, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tstdl/base",
3
- "version": "0.71.57",
3
+ "version": "0.71.58",
4
4
  "author": "Patrick Hein",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -3,6 +3,21 @@ import { afterResolve } from "../container";
3
3
  import type { AsyncDisposable } from "../disposable/disposable";
4
4
  import { disposeAsync } from "../disposable/disposable";
5
5
  import { TemplateService } from "../templates";
6
+ export declare type PdfRenderOptions = {
7
+ omitDefaultBackground?: boolean;
8
+ renderBackground?: boolean;
9
+ landscape?: boolean;
10
+ format?: 'letter' | 'legal' | 'tabloid' | 'ledger' | 'a0' | 'a1' | 'a2' | 'a3' | 'a4' | 'a5' | 'a6';
11
+ width?: string | number;
12
+ height?: string | number;
13
+ scale?: number;
14
+ margin?: {
15
+ top?: number | string;
16
+ bottom?: number | string;
17
+ right?: number | string;
18
+ left?: number | string;
19
+ };
20
+ };
6
21
  export declare class PdfService implements AsyncDisposable, AfterResolve {
7
22
  private readonly templateService;
8
23
  private readonly pool;
@@ -10,8 +25,8 @@ export declare class PdfService implements AsyncDisposable, AfterResolve {
10
25
  [afterResolve](): void;
11
26
  [disposeAsync](): Promise<void>;
12
27
  dispose(): Promise<void>;
13
- renderHtml(html: string): Promise<Uint8Array>;
14
- renderUrl(url: string): Promise<Uint8Array>;
15
- renderTemplate(key: string, templateContext: object): Promise<Uint8Array>;
28
+ renderHtml(html: string, options?: PdfRenderOptions): Promise<Uint8Array>;
29
+ renderUrl(url: string, options?: PdfRenderOptions): Promise<Uint8Array>;
30
+ renderTemplate(key: string, templateContext?: object, options?: PdfRenderOptions): Promise<Uint8Array>;
16
31
  private render;
17
32
  }
@@ -30,22 +30,32 @@ let PdfService = class PdfService {
30
30
  async dispose() {
31
31
  return this.pool.dispose();
32
32
  }
33
- async renderHtml(html) {
34
- return this.render(async (page) => page.setContent(html, { waitUntil: 'networkidle2' }));
33
+ async renderHtml(html, options) {
34
+ return this.render(async (page) => page.setContent(html, { waitUntil: 'networkidle2' }), options);
35
35
  }
36
- async renderUrl(url) {
37
- return this.render(async (page) => page.goto(url, { waitUntil: 'networkidle2' }));
36
+ async renderUrl(url, options) {
37
+ return this.render(async (page) => page.goto(url, { waitUntil: 'networkidle2' }), options);
38
38
  }
39
- async renderTemplate(key, templateContext) {
39
+ async renderTemplate(key, templateContext, options) {
40
40
  const html = await this.templateService.render(key, templateContext);
41
- return this.renderHtml(html);
41
+ return this.renderHtml(html, options);
42
42
  }
43
- async render(handler) {
43
+ async render(handler, options) {
44
44
  return this.pool.use(async (browser) => {
45
+ var _a;
45
46
  const page = await browser.newPage();
46
47
  try {
47
48
  await handler(page);
48
- const result = await page.pdf({ format: 'a4' });
49
+ const result = await page.pdf({
50
+ format: (_a = options === null || options === void 0 ? void 0 : options.format) !== null && _a !== void 0 ? _a : 'a4',
51
+ scale: options === null || options === void 0 ? void 0 : options.scale,
52
+ landscape: options === null || options === void 0 ? void 0 : options.landscape,
53
+ width: options === null || options === void 0 ? void 0 : options.width,
54
+ height: options === null || options === void 0 ? void 0 : options.height,
55
+ omitBackground: options === null || options === void 0 ? void 0 : options.omitDefaultBackground,
56
+ printBackground: options === null || options === void 0 ? void 0 : options.renderBackground,
57
+ margin: options === null || options === void 0 ? void 0 : options.margin
58
+ });
49
59
  return result;
50
60
  }
51
61
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"pdf.service.js","sourceRoot":"","sources":["../../source/pdf/pdf.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,4CAAsD;AACtD,kCAAkC;AAElC,yDAAuD;AACvD,kCAA8B;AAC9B,4CAA8C;AAC9C,uCAAuC;AAGvC,IAAa,UAAU,GAAvB,MAAa,UAAU;IAIrB,YAAY,eAAgC;QAC1C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAI,CAClB,KAAK,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAC9B,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CACnC,CAAC;IACJ,CAAC;IAED,CAAC,wBAAY,CAAC;QACZ,eAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,CAAC,yBAAY,CAAC;QAClB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAW;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,eAAuB;QACvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,OAA0C;QAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;YAErC,IAAI;gBACF,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAChD,OAAO,MAAM,CAAC;aACf;oBACO;gBACN,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;aACpB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AApDY,UAAU;IADtB,IAAA,qBAAS,GAAE;qCAKmB,2BAAe;GAJjC,UAAU,CAoDtB;AApDY,gCAAU"}
1
+ {"version":3,"file":"pdf.service.js","sourceRoot":"","sources":["../../source/pdf/pdf.service.ts"],"names":[],"mappings":"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"}