@shznet/pdf-sign-control 1.0.1 → 1.1.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.
- package/dist/index.js +1645 -1429
- package/dist/lib/engine/PdfPageView.d.ts +9 -0
- package/dist/lib/engine/PdfPageView.d.ts.map +1 -1
- package/dist/lib/engine/PdfViewer.d.ts.map +1 -1
- package/dist/lib/layers/CanvasLayer.d.ts +4 -0
- package/dist/lib/layers/CanvasLayer.d.ts.map +1 -1
- package/dist/lib/strategies/ScrollStrategy.d.ts +17 -2
- package/dist/lib/strategies/ScrollStrategy.d.ts.map +1 -1
- package/dist/lib/utils/lazyDebug.d.ts +10 -0
- package/dist/lib/utils/lazyDebug.d.ts.map +1 -0
- package/package.json +3 -2
|
@@ -16,11 +16,20 @@ export declare class PdfPageView {
|
|
|
16
16
|
private canvasLayer;
|
|
17
17
|
private signatureLayer;
|
|
18
18
|
private pdfPage;
|
|
19
|
+
/** Unscaled PDF size (points) from metadata — keeps layout when the page is not loaded. */
|
|
20
|
+
private metadataDimensions;
|
|
19
21
|
readonly pageIndex: number;
|
|
20
22
|
private scale;
|
|
21
23
|
private eventBus;
|
|
22
24
|
element: HTMLElement;
|
|
23
25
|
constructor(options: PdfPageViewOptions);
|
|
26
|
+
/** True when PDF.js page is attached and canvas may render bitmaps. */
|
|
27
|
+
isPdfPageAttached(): boolean;
|
|
28
|
+
private applyShellFromMetadata;
|
|
29
|
+
/**
|
|
30
|
+
* Release PDF page + canvas to save memory; keeps shell size and signature fields.
|
|
31
|
+
*/
|
|
32
|
+
unloadPdfPage(): void;
|
|
24
33
|
setPdfPage(pdfPage: PDFPageProxy): void;
|
|
25
34
|
setFields(fields: SignatureField[]): void;
|
|
26
35
|
selectField(fieldId: string | null): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PdfPageView.d.ts","sourceRoot":"","sources":["../../../src/lib/engine/PdfPageView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"PdfPageView.d.ts","sourceRoot":"","sources":["../../../src/lib/engine/PdfPageView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,WAAW,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD;AAED,qBAAa,WAAW;IACpB,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAA6B;IAC5C,2FAA2F;IAC3F,OAAO,CAAC,kBAAkB,CAAkD;IAC5E,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAW;IAEpB,OAAO,EAAE,WAAW,CAAC;gBAEhB,OAAO,EAAE,kBAAkB;IAsCvC,uEAAuE;IACvE,iBAAiB,IAAI,OAAO;IAI5B,OAAO,CAAC,sBAAsB;IAc9B;;OAEG;IACH,aAAa,IAAI,IAAI;IAqBrB,UAAU,CAAC,OAAO,EAAE,YAAY;IAwBhC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE;IAIlC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM5B,MAAM;IAcZ;;OAEG;IACG,aAAa;IAanB;;OAEG;IACG,UAAU;IAahB,WAAW,CAAC,KAAK,EAAE,MAAM;IASzB;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAShC;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM;IAS7B,OAAO;CAKV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PdfViewer.d.ts","sourceRoot":"","sources":["../../../src/lib/engine/PdfViewer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"PdfViewer.d.ts","sourceRoot":"","sources":["../../../src/lib/engine/PdfViewer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAczE,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,WAAW,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,QAAQ,CAA6D;IAC7E,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,YAAY,CAAO;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAuB;gBAElC,OAAO,EAAE,gBAAgB;IAgD/B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YA6BtD,YAAY;IA4B1B,OAAO,CAAC,cAAc;IAUhB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,WAAW,IAAI,QAAQ;IAIvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,QAAQ,IAAI,IAAI;IAIhB,YAAY,IAAI,IAAI;IAIpB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAkC7F,OAAO,CAAC,MAAM,CAAwB;IAEtC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI;IAKzC,SAAS,IAAI,cAAc,EAAE;IAIvB,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmEpD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAUlC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAUpE,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAqBzC,WAAW,IAAI,IAAI;IAOnB,OAAO,CAAC,eAAe;IA0FvB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAI9C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAIzC,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiMlE,OAAO;CAQV"}
|
|
@@ -18,6 +18,10 @@ export declare class CanvasLayer {
|
|
|
18
18
|
* @param isPreview - If true, renders at lower quality for quick preview
|
|
19
19
|
*/
|
|
20
20
|
render(scale: number, isPreview?: boolean): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Drop the PDF page reference and clear the canvas (memory-friendly lazy unload).
|
|
23
|
+
*/
|
|
24
|
+
releasePage(): void;
|
|
21
25
|
destroy(): void;
|
|
22
26
|
}
|
|
23
27
|
//# sourceMappingURL=CanvasLayer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasLayer.d.ts","sourceRoot":"","sources":["../../../src/lib/layers/CanvasLayer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CanvasLayer.d.ts","sourceRoot":"","sources":["../../../src/lib/layers/CanvasLayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAc,MAAM,YAAY,CAAC;AAKtD,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,GAAG,CAAkC;IAC7C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,UAAU,CAA2B;;IAW7C,UAAU,IAAI,iBAAiB;IAI/B,OAAO,CAAC,IAAI,EAAE,YAAY;IAI1B;;OAEG;IACH,YAAY,IAAI,IAAI;IAOpB,OAAO,CAAC,mBAAmB,CAA8B;IAEzD;;;;OAIG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAiF7D;;OAEG;IACH,WAAW,IAAI,IAAI;IAanB,OAAO;CAKV"}
|
|
@@ -14,7 +14,12 @@ export declare class ScrollStrategy implements IViewModeStrategy {
|
|
|
14
14
|
private scale;
|
|
15
15
|
private pageViews;
|
|
16
16
|
private fields;
|
|
17
|
-
|
|
17
|
+
/** Which page is most visible (toolbar / indicators). */
|
|
18
|
+
private pageIndicatorObserver;
|
|
19
|
+
/** Near-viewport pages get PDF bytes; far pages unload to save memory. */
|
|
20
|
+
private lazyVisibilityObserver;
|
|
21
|
+
private pageLoadPromises;
|
|
22
|
+
private unloadTimers;
|
|
18
23
|
private zoomTimeout;
|
|
19
24
|
private isDestroyed;
|
|
20
25
|
private pageInfo;
|
|
@@ -24,7 +29,17 @@ export declare class ScrollStrategy implements IViewModeStrategy {
|
|
|
24
29
|
}>): Promise<void>;
|
|
25
30
|
private initContainer;
|
|
26
31
|
private renderAllPages;
|
|
27
|
-
private
|
|
32
|
+
private setupPageIndicatorObserver;
|
|
33
|
+
private setupLazyVisibilityObserver;
|
|
34
|
+
private cancelScheduledUnload;
|
|
35
|
+
private scheduleUnloadIfFar;
|
|
36
|
+
private isPageNearViewport;
|
|
37
|
+
/**
|
|
38
|
+
* If prefetch loaded more than MAX_ATTACHED_PDF_PAGES, unload the farthest pages from the
|
|
39
|
+
* scroll center (never the page we just attached; prefer pages outside the strict viewport).
|
|
40
|
+
*/
|
|
41
|
+
private enforceAttachedPageLimit;
|
|
42
|
+
private schedulePageLoad;
|
|
28
43
|
goToPage(pageNumber: number): void;
|
|
29
44
|
nextPage(): void;
|
|
30
45
|
previousPage(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollStrategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/ScrollStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ScrollStrategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/ScrollStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAU7C;;GAEG;AACH,qBAAa,cAAe,YAAW,iBAAiB;IACpD,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAY;IAE5B,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,KAAK,CAAO;IAEpB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,MAAM,CAAwB;IACtC,yDAAyD;IACzD,OAAO,CAAC,qBAAqB,CAAqC;IAClE,0EAA0E;IAC1E,OAAO,CAAC,sBAAsB,CAAqC;IACnE,OAAO,CAAC,gBAAgB,CAAoC;IAC5D,OAAO,CAAC,YAAY,CAAoD;IACxE,OAAO,CAAC,WAAW,CAA8C;IACjE,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAA6D;IAEvE,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBtL,OAAO,CAAC,aAAa;YAYP,cAAc;IAiC5B,OAAO,CAAC,0BAA0B;IAuClC,OAAO,CAAC,2BAA2B;IAmCnC,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,kBAAkB;IAW1B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAiDhC,OAAO,CAAC,gBAAgB;IA2DxB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAmBlC,QAAQ,IAAI,IAAI;IAIhB,YAAY,IAAI,IAAI;IAIpB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IA0E7B,QAAQ,IAAI,MAAM;IAIlB,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI;IASzC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAMzC,OAAO,IAAI,IAAI;CAqBlB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Opt-in debug logs for scroll lazy-load / unload.
|
|
3
|
+
* Enable in the browser console:
|
|
4
|
+
* localStorage.setItem('pdf-sign-debug', '1'); location.reload();
|
|
5
|
+
* Or before creating the viewer:
|
|
6
|
+
* (globalThis as any).__PDF_SIGN_DEBUG__ = true;
|
|
7
|
+
*/
|
|
8
|
+
export declare function isPdfSignLazyDebugEnabled(): boolean;
|
|
9
|
+
export declare function pdfSignLazyDebug(tag: string, detail: Record<string, unknown>): void;
|
|
10
|
+
//# sourceMappingURL=lazyDebug.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazyDebug.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/lazyDebug.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,OAAO,CAenD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAGnF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shznet/pdf-sign-control",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "Core PDF signing logic for @shznet/pdf-sign",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"@shznet/source": "./src/index.ts",
|
|
23
23
|
"types": "./dist/index.d.ts",
|
|
24
24
|
"import": "./dist/index.js",
|
|
25
|
+
"require": "./dist/index.js",
|
|
25
26
|
"default": "./dist/index.js"
|
|
26
27
|
}
|
|
27
28
|
},
|
|
@@ -33,6 +34,6 @@
|
|
|
33
34
|
"access": "public"
|
|
34
35
|
},
|
|
35
36
|
"dependencies": {
|
|
36
|
-
"pdfjs-dist": "
|
|
37
|
+
"pdfjs-dist": "5.4.530"
|
|
37
38
|
}
|
|
38
39
|
}
|