@embedpdf/plugin-stamp 2.15.0 → 3.0.0-next.1

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 (66) hide show
  1. package/LICENSE +192 -21
  2. package/dist/index.cjs +591 -2
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.d.cts +187 -0
  5. package/dist/index.d.ts +187 -1
  6. package/dist/index.js +584 -975
  7. package/dist/index.js.map +1 -1
  8. package/package.json +23 -61
  9. package/dist/lib/actions.d.ts +0 -14
  10. package/dist/lib/defaults/name-map.d.ts +0 -2
  11. package/dist/lib/handlers/rubber-stamp.handler.d.ts +0 -4
  12. package/dist/lib/index.d.ts +0 -11
  13. package/dist/lib/manifest.d.ts +0 -4
  14. package/dist/lib/reducer.d.ts +0 -5
  15. package/dist/lib/stamp-plugin.d.ts +0 -54
  16. package/dist/lib/tools.d.ts +0 -58
  17. package/dist/lib/types.d.ts +0 -130
  18. package/dist/preact/adapter.d.ts +0 -5
  19. package/dist/preact/annotation.d.ts +0 -1
  20. package/dist/preact/core.d.ts +0 -1
  21. package/dist/preact/index.cjs +0 -2
  22. package/dist/preact/index.cjs.map +0 -1
  23. package/dist/preact/index.d.ts +0 -1
  24. package/dist/preact/index.js +0 -116
  25. package/dist/preact/index.js.map +0 -1
  26. package/dist/react/adapter.d.ts +0 -2
  27. package/dist/react/annotation.d.ts +0 -1
  28. package/dist/react/core.d.ts +0 -1
  29. package/dist/react/index.cjs +0 -2
  30. package/dist/react/index.cjs.map +0 -1
  31. package/dist/react/index.d.ts +0 -1
  32. package/dist/react/index.js +0 -115
  33. package/dist/react/index.js.map +0 -1
  34. package/dist/shared/components/index.d.ts +0 -1
  35. package/dist/shared/components/stamp-img.d.ts +0 -10
  36. package/dist/shared/hooks/index.d.ts +0 -1
  37. package/dist/shared/hooks/use-stamp.d.ts +0 -18
  38. package/dist/shared/index.d.ts +0 -4
  39. package/dist/shared-preact/components/index.d.ts +0 -1
  40. package/dist/shared-preact/components/stamp-img.d.ts +0 -10
  41. package/dist/shared-preact/hooks/index.d.ts +0 -1
  42. package/dist/shared-preact/hooks/use-stamp.d.ts +0 -18
  43. package/dist/shared-preact/index.d.ts +0 -4
  44. package/dist/shared-react/components/index.d.ts +0 -1
  45. package/dist/shared-react/components/stamp-img.d.ts +0 -10
  46. package/dist/shared-react/hooks/index.d.ts +0 -1
  47. package/dist/shared-react/hooks/use-stamp.d.ts +0 -18
  48. package/dist/shared-react/index.d.ts +0 -4
  49. package/dist/svelte/components/StampImg.svelte.d.ts +0 -10
  50. package/dist/svelte/components/index.d.ts +0 -1
  51. package/dist/svelte/hooks/index.d.ts +0 -1
  52. package/dist/svelte/hooks/use-stamp.svelte.d.ts +0 -23
  53. package/dist/svelte/index.cjs +0 -2
  54. package/dist/svelte/index.cjs.map +0 -1
  55. package/dist/svelte/index.d.ts +0 -4
  56. package/dist/svelte/index.js +0 -187
  57. package/dist/svelte/index.js.map +0 -1
  58. package/dist/vue/components/index.d.ts +0 -1
  59. package/dist/vue/components/stamp-img.vue.d.ts +0 -9
  60. package/dist/vue/hooks/index.d.ts +0 -1
  61. package/dist/vue/hooks/use-stamp.d.ts +0 -460
  62. package/dist/vue/index.cjs +0 -2
  63. package/dist/vue/index.cjs.map +0 -1
  64. package/dist/vue/index.d.ts +0 -4
  65. package/dist/vue/index.js +0 -189
  66. package/dist/vue/index.js.map +0 -1
@@ -1,130 +0,0 @@
1
- import { BasePluginConfig, EventHook } from '@embedpdf/core';
2
- import { PdfAnnotationName, PdfAnnotationObject, PdfDocumentObject, PdfTask, Rotation } from '@embedpdf/models';
3
- export interface RubberStampToolContext {
4
- appearance: ArrayBuffer;
5
- ghostUrl: string;
6
- stampSize: {
7
- width: number;
8
- height: number;
9
- };
10
- libraryId: string;
11
- stamp: StampDefinition;
12
- pageRotation: Rotation;
13
- }
14
- declare module '@embedpdf/plugin-annotation' {
15
- interface ToolContextMap {
16
- rubberStamp: RubberStampToolContext;
17
- }
18
- }
19
- export interface StampDefinition {
20
- id: string;
21
- pageIndex: number;
22
- name: PdfAnnotationName;
23
- subject: string;
24
- subjectKey?: string;
25
- label?: string;
26
- categories?: string[];
27
- }
28
- export type StampDefinitionUpdate = Partial<Pick<StampDefinition, 'subject' | 'subjectKey' | 'categories'>>;
29
- export interface StampLibraryConfig {
30
- id?: string;
31
- name: string;
32
- nameKey?: string;
33
- pdf: string | ArrayBuffer;
34
- stamps: StampDefinition[];
35
- categories?: string[];
36
- readonly?: boolean;
37
- }
38
- export type StampLibraryUpdate = Partial<Pick<StampLibrary, 'name' | 'nameKey' | 'categories' | 'readonly'>>;
39
- export interface StampLibrary {
40
- id: string;
41
- name: string;
42
- nameKey?: string;
43
- document: PdfDocumentObject;
44
- stamps: StampDefinition[];
45
- categories?: string[];
46
- readonly: boolean;
47
- }
48
- export interface ResolvedStamp {
49
- library: StampLibrary;
50
- stamp: StampDefinition;
51
- }
52
- export interface ExportedStampLibrary {
53
- name: string;
54
- pdf: ArrayBuffer;
55
- stamps: StampDefinition[];
56
- categories?: string[];
57
- }
58
- export interface StampManifestSource {
59
- url: string;
60
- fallbackLocale?: string;
61
- }
62
- export interface StampManifest {
63
- id?: string;
64
- name: string;
65
- nameKey?: string;
66
- pdf: string;
67
- stamps: StampManifestEntry[];
68
- categories?: string[];
69
- }
70
- export interface StampManifestEntry {
71
- id?: string;
72
- pageIndex: number;
73
- name?: string;
74
- subject: string;
75
- subjectKey?: string;
76
- label?: string;
77
- categories?: string[];
78
- }
79
- export interface DefaultLibraryConfig {
80
- id?: string;
81
- name?: string;
82
- nameKey?: string;
83
- categories?: string[];
84
- }
85
- export interface StampPluginConfig extends BasePluginConfig {
86
- libraries?: StampLibraryConfig[];
87
- manifests?: StampManifestSource[];
88
- defaultLibrary?: DefaultLibraryConfig | false;
89
- }
90
- export interface StampState {
91
- libraryIds: string[];
92
- }
93
- export interface ActiveStampInfo {
94
- libraryId: string;
95
- stamp: StampDefinition;
96
- }
97
- export interface ActiveStampChangeEvent {
98
- documentId: string;
99
- activeStamp: ActiveStampInfo | null;
100
- }
101
- export interface StampScope {
102
- createStampFromAnnotation(annotation: PdfAnnotationObject, stamp: Omit<StampDefinition, 'id' | 'pageIndex'>, libraryId?: string): PdfTask<void>;
103
- createStampFromAnnotations(annotations: PdfAnnotationObject[], stamp: Omit<StampDefinition, 'id' | 'pageIndex'>, libraryId?: string): PdfTask<void>;
104
- activateStampPlacement(libraryId: string, stamp: StampDefinition): PdfTask<void>;
105
- activateStampPlacementById(libraryId: string, stampId: string): PdfTask<void>;
106
- getActiveStamp(): ActiveStampInfo | null;
107
- onActiveStampChange: EventHook<ActiveStampInfo | null>;
108
- }
109
- export interface StampCapability {
110
- getLibraries(): StampLibrary[];
111
- getStampsByCategory(category: string): ResolvedStamp[];
112
- renderStamp(libraryId: string, pageIndex: number, width: number, dpr?: number): PdfTask<Blob>;
113
- loadLibrary(config: StampLibraryConfig): PdfTask<string>;
114
- loadLibraryFromManifest(url: string): PdfTask<string>;
115
- createNewLibrary(name: string, options?: {
116
- categories?: string[];
117
- id?: string;
118
- nameKey?: string;
119
- readonly?: boolean;
120
- }): PdfTask<string>;
121
- addStampToLibrary(libraryId: string, stamp: Omit<StampDefinition, 'id' | 'pageIndex'>, pdf: ArrayBuffer): PdfTask<void>;
122
- removeStampFromLibrary(libraryId: string, stampId: string): PdfTask<void>;
123
- updateStamp(libraryId: string, stampId: string, updates: StampDefinitionUpdate): PdfTask<void>;
124
- updateLibrary(libraryId: string, updates: StampLibraryUpdate): PdfTask<void>;
125
- removeLibrary(id: string): PdfTask<void>;
126
- exportLibrary(id: string): PdfTask<ExportedStampLibrary>;
127
- forDocument(documentId: string): StampScope;
128
- onActiveStampChange: EventHook<ActiveStampChangeEvent>;
129
- onLibraryChange: EventHook<StampLibrary[]>;
130
- }
@@ -1,5 +0,0 @@
1
- export { Fragment } from 'preact';
2
- export { useEffect, useRef, useState, useCallback, useMemo } from 'preact/hooks';
3
- export type { ComponentChildren as ReactNode } from 'preact';
4
- export type CSSProperties = import('preact').JSX.CSSProperties;
5
- export type HTMLAttributes<T = any> = import('preact').JSX.HTMLAttributes<T extends EventTarget ? T : never>;
@@ -1 +0,0 @@
1
- export * from '@embedpdf/plugin-annotation/preact';
@@ -1 +0,0 @@
1
- export * from '@embedpdf/core/preact';
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/core"),r=require("@embedpdf/plugin-stamp"),t=require("@embedpdf/core/preact");require("preact");const s=require("preact/hooks"),n=require("preact/jsx-runtime"),a=require("@embedpdf/models"),i=()=>t.useCapability(r.StampPlugin.id);const o=e.createPluginPackage(r.StampPluginPackage).build();exports.StampImg=function({libraryId:e,pageIndex:r,width:t,dpr:o,style:u,...c}){const{provides:p}=i(),[l,d]=s.useState(),f=s.useRef(null);return s.useEffect(()=>{if(!p)return;const s=p.renderStamp(e,r,t,o??window.devicePixelRatio);return s.wait(e=>{const r=URL.createObjectURL(e);f.current=r,d(r)},a.ignore),()=>{f.current?(URL.revokeObjectURL(f.current),f.current=null):s.abort({code:a.PdfErrorCode.Cancelled,message:"canceled stamp render task"})}},[p,e,r,t,o]),l?n.jsx("img",{src:l,onLoad:()=>{f.current&&(URL.revokeObjectURL(f.current),f.current=null)},style:u,...c}):null},exports.StampPluginPackage=o,exports.useActiveStamp=e=>{const{provides:r}=i(),[t,n]=s.useState(null);return s.useEffect(()=>{if(!r)return;const t=r.forDocument(e);return n(t.getActiveStamp()),t.onActiveStampChange(n)},[r,e]),t},exports.useStampCapability=i,exports.useStampLibraries=()=>{const{provides:e}=i(),[r,t]=s.useState((null==e?void 0:e.getLibraries())??[]);return s.useEffect(()=>{if(e)return t(e.getLibraries()),e.onLibraryChange(e=>{t(e)})},[e]),{libraries:r,provides:e}},exports.useStampPlugin=()=>t.usePlugin(r.StampPlugin.id),exports.useStampsByCategory=e=>{const{provides:r}=i(),[t,n]=s.useState([]);return s.useEffect(()=>{if(r)return n(r.getStampsByCategory(e)),r.onLibraryChange(()=>{n(r.getStampsByCategory(e))})},[r,e]),t},exports.useStampsByLibrary=(e,r)=>{const{provides:t}=i(),[n,a]=s.useState([]);return s.useEffect(()=>{if(!t)return;const s=()=>{var s,n;const i=t.getLibraries(),o=[];for(const t of i)if(!e||"all"===e||t.id===e)for(const e of t.stamps){if(r){const a=(null==(s=t.categories)?void 0:s.includes(r))??!1,i=(null==(n=e.categories)?void 0:n.includes(r))??!1;if(!a&&!i)continue}o.push({library:t,stamp:e})}a(o)};return s(),t.onLibraryChange(s)},[t,e,r]),n},Object.keys(r).forEach(e=>{"default"===e||Object.prototype.hasOwnProperty.call(exports,e)||Object.defineProperty(exports,e,{enumerable:!0,get:()=>r[e]})});
2
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/shared/hooks/use-stamp.ts","../../src/shared/index.ts","../../src/shared/components/stamp-img.tsx"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '@embedpdf/plugin-stamp';\nimport { useState, useEffect } from '@framework';\n\nexport const useStampPlugin = () => usePlugin<StampPlugin>(StampPlugin.id);\nexport const useStampCapability = () => useCapability<StampPlugin>(StampPlugin.id);\n\nexport const useStampLibraries = () => {\n const { provides } = useStampCapability();\n const [libraries, setLibraries] = useState<StampLibrary[]>(provides?.getLibraries() ?? []);\n\n useEffect(() => {\n if (!provides) return;\n setLibraries(provides.getLibraries());\n return provides.onLibraryChange((libs) => {\n setLibraries(libs);\n });\n }, [provides]);\n\n return { libraries, provides };\n};\n\nexport const useStampsByCategory = (category: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n setStamps(provides.getStampsByCategory(category));\n return provides.onLibraryChange(() => {\n setStamps(provides.getStampsByCategory(category));\n });\n }, [provides, category]);\n\n return stamps;\n};\n\nexport const useStampsByLibrary = (libraryId?: string, category?: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n\n const derive = () => {\n const libraries = provides.getLibraries();\n const results: ResolvedStamp[] = [];\n\n for (const library of libraries) {\n if (libraryId && libraryId !== 'all' && library.id !== libraryId) continue;\n\n for (const stamp of library.stamps) {\n if (category) {\n const libraryMatches = library.categories?.includes(category) ?? false;\n const stampMatches = stamp.categories?.includes(category) ?? false;\n if (!libraryMatches && !stampMatches) continue;\n }\n results.push({ library, stamp });\n }\n }\n\n setStamps(results);\n };\n\n derive();\n return provides.onLibraryChange(derive);\n }, [provides, libraryId, category]);\n\n return stamps;\n};\n\nexport const useActiveStamp = (documentId: string) => {\n const { provides: stamp } = useStampCapability();\n const [activeStamp, setActiveStamp] = useState<ActiveStampInfo | null>(null);\n\n useEffect(() => {\n if (!stamp) return;\n const scope = stamp.forDocument(documentId);\n setActiveStamp(scope.getActiveStamp());\n return scope.onActiveStampChange(setActiveStamp);\n }, [stamp, documentId]);\n\n return activeStamp;\n};\n","import { createPluginPackage } from '@embedpdf/core';\nimport { StampPluginPackage as BaseStampPackage } from '@embedpdf/plugin-stamp';\n\nexport * from './hooks';\nexport * from './components';\nexport * from '@embedpdf/plugin-stamp';\n\nexport const StampPluginPackage = createPluginPackage(BaseStampPackage).build();\n","import { useEffect, useState, useRef, HTMLAttributes, CSSProperties } from '@framework';\nimport { ignore, PdfErrorCode } from '@embedpdf/models';\nimport { useStampCapability } from '../hooks';\n\ntype StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {\n libraryId: string;\n pageIndex: number;\n width: number;\n dpr?: number;\n style?: CSSProperties;\n};\n\nexport function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps) {\n const { provides } = useStampCapability();\n const [url, setUrl] = useState<string>();\n const urlRef = useRef<string | null>(null);\n\n useEffect(() => {\n if (!provides) return;\n\n const task = provides.renderStamp(libraryId, pageIndex, width, dpr ?? window.devicePixelRatio);\n\n task.wait((blob) => {\n const objectUrl = URL.createObjectURL(blob);\n urlRef.current = objectUrl;\n setUrl(objectUrl);\n }, ignore);\n\n return () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n } else {\n task.abort({\n code: PdfErrorCode.Cancelled,\n message: 'canceled stamp render task',\n });\n }\n };\n }, [provides, libraryId, pageIndex, width, dpr]);\n\n const handleImageLoad = () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n }\n };\n\n return url ? <img src={url} onLoad={handleImageLoad} style={style} {...props} /> : null;\n}\n"],"names":["useStampCapability","useCapability","StampPlugin","id","StampPluginPackage","createPluginPackage","BaseStampPackage","build","libraryId","pageIndex","width","dpr","style","props","provides","url","setUrl","useState","urlRef","useRef","useEffect","task","renderStamp","window","devicePixelRatio","wait","blob","objectUrl","URL","createObjectURL","current","ignore","revokeObjectURL","abort","code","PdfErrorCode","Cancelled","message","jsx","src","onLoad","documentId","stamp","activeStamp","setActiveStamp","scope","forDocument","getActiveStamp","onActiveStampChange","libraries","setLibraries","getLibraries","onLibraryChange","libs","usePlugin","category","stamps","setStamps","getStampsByCategory","derive","results","library","libraryMatches","_a","categories","includes","stampMatches","_b","push"],"mappings":"ySAKaA,EAAqB,IAAMC,gBAA2BC,EAAAA,YAAYC,ICExE,MAAMC,EAAqBC,EAAAA,oBAAoBC,EAAAA,oBAAkBC,yBCKjE,UAAkBC,UAAEA,EAAAC,UAAWA,EAAAC,MAAWA,MAAOC,EAAAC,MAAKA,KAAUC,IACrE,MAAMC,SAAEA,GAAad,KACde,EAAKC,GAAUC,aAChBC,EAASC,EAAAA,OAAsB,MAiCrC,OA/BAC,EAAAA,UAAU,KACR,IAAKN,EAAU,OAEf,MAAMO,EAAOP,EAASQ,YAAYd,EAAWC,EAAWC,EAAOC,GAAOY,OAAOC,kBAQ7E,OANAH,EAAKI,KAAMC,IACT,MAAMC,EAAYC,IAAIC,gBAAgBH,GACtCR,EAAOY,QAAUH,EACjBX,EAAOW,IACNI,EAAAA,QAEI,KACDb,EAAOY,SACTF,IAAII,gBAAgBd,EAAOY,SAC3BZ,EAAOY,QAAU,MAEjBT,EAAKY,MAAM,CACTC,KAAMC,EAAAA,aAAaC,UACnBC,QAAS,iCAId,CAACvB,EAAUN,EAAWC,EAAWC,EAAOC,IASpCI,EAAMuB,EAAAA,IAAC,MAAA,CAAIC,IAAKxB,EAAKyB,OAPJ,KAClBtB,EAAOY,UACTF,IAAII,gBAAgBd,EAAOY,SAC3BZ,EAAOY,QAAU,OAIgClB,WAAkBC,IAAY,IACrF,sDFsB+B4B,IAC7B,MAAQ3B,SAAU4B,GAAU1C,KACrB2C,EAAaC,GAAkB3B,EAAAA,SAAiC,MASvE,OAPAG,EAAAA,UAAU,KACR,IAAKsB,EAAO,OACZ,MAAMG,EAAQH,EAAMI,YAAYL,GAEhC,OADAG,EAAeC,EAAME,kBACdF,EAAMG,oBAAoBJ,IAChC,CAACF,EAAOD,IAEJE,0DA3EwB,KAC/B,MAAM7B,SAAEA,GAAad,KACdiD,EAAWC,GAAgBjC,EAAAA,UAAyB,MAAAH,OAAA,EAAAA,EAAUqC,iBAAkB,IAUvF,OARA/B,EAAAA,UAAU,KACR,GAAKN,EAEL,OADAoC,EAAapC,EAASqC,gBACfrC,EAASsC,gBAAiBC,IAC/BH,EAAaG,MAEd,CAACvC,IAEG,CAAEmC,YAAWnC,oCAfQ,IAAMwC,YAAuBpD,EAAAA,YAAYC,gCAkBnCoD,IAClC,MAAMzC,SAAEA,GAAad,KACdwD,EAAQC,GAAaxC,EAAAA,SAA0B,IAUtD,OARAG,EAAAA,UAAU,KACR,GAAKN,EAEL,OADA2C,EAAU3C,EAAS4C,oBAAoBH,IAChCzC,EAASsC,gBAAgB,KAC9BK,EAAU3C,EAAS4C,oBAAoBH,OAExC,CAACzC,EAAUyC,IAEPC,8BAGyB,CAAChD,EAAoB+C,KACrD,MAAMzC,SAAEA,GAAad,KACdwD,EAAQC,GAAaxC,EAAAA,SAA0B,IA6BtD,OA3BAG,EAAAA,UAAU,KACR,IAAKN,EAAU,OAEf,MAAM6C,EAAS,aACb,MAAMV,EAAYnC,EAASqC,eACrBS,EAA2B,GAEjC,IAAA,MAAWC,KAAWZ,EACpB,IAAIzC,GAA2B,QAAdA,GAAuBqD,EAAQ1D,KAAOK,EAEvD,IAAA,MAAWkC,KAASmB,EAAQL,OAAQ,CAClC,GAAID,EAAU,CACZ,MAAMO,GAAiB,OAAAC,EAAAF,EAAQG,iBAAR,EAAAD,EAAoBE,SAASV,MAAa,EAC3DW,GAAe,OAAAC,EAAAzB,EAAMsB,iBAAN,EAAAG,EAAkBF,SAASV,MAAa,EAC7D,IAAKO,IAAmBI,EAAc,QACxC,CACAN,EAAQQ,KAAK,CAAEP,UAASnB,SAC1B,CAGFe,EAAUG,IAIZ,OADAD,IACO7C,EAASsC,gBAAgBO,IAC/B,CAAC7C,EAAUN,EAAW+C,IAElBC"}
@@ -1 +0,0 @@
1
- export * from '../shared-preact';
@@ -1,116 +0,0 @@
1
- import { createPluginPackage } from "@embedpdf/core";
2
- import { StampPlugin, StampPluginPackage as StampPluginPackage$1 } from "@embedpdf/plugin-stamp";
3
- export * from "@embedpdf/plugin-stamp";
4
- import { useCapability, usePlugin } from "@embedpdf/core/preact";
5
- import "preact";
6
- import { useState, useEffect, useRef } from "preact/hooks";
7
- import { jsx } from "preact/jsx-runtime";
8
- import { ignore, PdfErrorCode } from "@embedpdf/models";
9
- const useStampPlugin = () => usePlugin(StampPlugin.id);
10
- const useStampCapability = () => useCapability(StampPlugin.id);
11
- const useStampLibraries = () => {
12
- const { provides } = useStampCapability();
13
- const [libraries, setLibraries] = useState((provides == null ? void 0 : provides.getLibraries()) ?? []);
14
- useEffect(() => {
15
- if (!provides) return;
16
- setLibraries(provides.getLibraries());
17
- return provides.onLibraryChange((libs) => {
18
- setLibraries(libs);
19
- });
20
- }, [provides]);
21
- return { libraries, provides };
22
- };
23
- const useStampsByCategory = (category) => {
24
- const { provides } = useStampCapability();
25
- const [stamps, setStamps] = useState([]);
26
- useEffect(() => {
27
- if (!provides) return;
28
- setStamps(provides.getStampsByCategory(category));
29
- return provides.onLibraryChange(() => {
30
- setStamps(provides.getStampsByCategory(category));
31
- });
32
- }, [provides, category]);
33
- return stamps;
34
- };
35
- const useStampsByLibrary = (libraryId, category) => {
36
- const { provides } = useStampCapability();
37
- const [stamps, setStamps] = useState([]);
38
- useEffect(() => {
39
- if (!provides) return;
40
- const derive = () => {
41
- var _a, _b;
42
- const libraries = provides.getLibraries();
43
- const results = [];
44
- for (const library of libraries) {
45
- if (libraryId && libraryId !== "all" && library.id !== libraryId) continue;
46
- for (const stamp of library.stamps) {
47
- if (category) {
48
- const libraryMatches = ((_a = library.categories) == null ? void 0 : _a.includes(category)) ?? false;
49
- const stampMatches = ((_b = stamp.categories) == null ? void 0 : _b.includes(category)) ?? false;
50
- if (!libraryMatches && !stampMatches) continue;
51
- }
52
- results.push({ library, stamp });
53
- }
54
- }
55
- setStamps(results);
56
- };
57
- derive();
58
- return provides.onLibraryChange(derive);
59
- }, [provides, libraryId, category]);
60
- return stamps;
61
- };
62
- const useActiveStamp = (documentId) => {
63
- const { provides: stamp } = useStampCapability();
64
- const [activeStamp, setActiveStamp] = useState(null);
65
- useEffect(() => {
66
- if (!stamp) return;
67
- const scope = stamp.forDocument(documentId);
68
- setActiveStamp(scope.getActiveStamp());
69
- return scope.onActiveStampChange(setActiveStamp);
70
- }, [stamp, documentId]);
71
- return activeStamp;
72
- };
73
- function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }) {
74
- const { provides } = useStampCapability();
75
- const [url, setUrl] = useState();
76
- const urlRef = useRef(null);
77
- useEffect(() => {
78
- if (!provides) return;
79
- const task = provides.renderStamp(libraryId, pageIndex, width, dpr ?? window.devicePixelRatio);
80
- task.wait((blob) => {
81
- const objectUrl = URL.createObjectURL(blob);
82
- urlRef.current = objectUrl;
83
- setUrl(objectUrl);
84
- }, ignore);
85
- return () => {
86
- if (urlRef.current) {
87
- URL.revokeObjectURL(urlRef.current);
88
- urlRef.current = null;
89
- } else {
90
- task.abort({
91
- code: PdfErrorCode.Cancelled,
92
- message: "canceled stamp render task"
93
- });
94
- }
95
- };
96
- }, [provides, libraryId, pageIndex, width, dpr]);
97
- const handleImageLoad = () => {
98
- if (urlRef.current) {
99
- URL.revokeObjectURL(urlRef.current);
100
- urlRef.current = null;
101
- }
102
- };
103
- return url ? /* @__PURE__ */ jsx("img", { src: url, onLoad: handleImageLoad, style, ...props }) : null;
104
- }
105
- const StampPluginPackage = createPluginPackage(StampPluginPackage$1).build();
106
- export {
107
- StampImg,
108
- StampPluginPackage,
109
- useActiveStamp,
110
- useStampCapability,
111
- useStampLibraries,
112
- useStampPlugin,
113
- useStampsByCategory,
114
- useStampsByLibrary
115
- };
116
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/shared/hooks/use-stamp.ts","../../src/shared/components/stamp-img.tsx","../../src/shared/index.ts"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '@embedpdf/plugin-stamp';\nimport { useState, useEffect } from '@framework';\n\nexport const useStampPlugin = () => usePlugin<StampPlugin>(StampPlugin.id);\nexport const useStampCapability = () => useCapability<StampPlugin>(StampPlugin.id);\n\nexport const useStampLibraries = () => {\n const { provides } = useStampCapability();\n const [libraries, setLibraries] = useState<StampLibrary[]>(provides?.getLibraries() ?? []);\n\n useEffect(() => {\n if (!provides) return;\n setLibraries(provides.getLibraries());\n return provides.onLibraryChange((libs) => {\n setLibraries(libs);\n });\n }, [provides]);\n\n return { libraries, provides };\n};\n\nexport const useStampsByCategory = (category: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n setStamps(provides.getStampsByCategory(category));\n return provides.onLibraryChange(() => {\n setStamps(provides.getStampsByCategory(category));\n });\n }, [provides, category]);\n\n return stamps;\n};\n\nexport const useStampsByLibrary = (libraryId?: string, category?: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n\n const derive = () => {\n const libraries = provides.getLibraries();\n const results: ResolvedStamp[] = [];\n\n for (const library of libraries) {\n if (libraryId && libraryId !== 'all' && library.id !== libraryId) continue;\n\n for (const stamp of library.stamps) {\n if (category) {\n const libraryMatches = library.categories?.includes(category) ?? false;\n const stampMatches = stamp.categories?.includes(category) ?? false;\n if (!libraryMatches && !stampMatches) continue;\n }\n results.push({ library, stamp });\n }\n }\n\n setStamps(results);\n };\n\n derive();\n return provides.onLibraryChange(derive);\n }, [provides, libraryId, category]);\n\n return stamps;\n};\n\nexport const useActiveStamp = (documentId: string) => {\n const { provides: stamp } = useStampCapability();\n const [activeStamp, setActiveStamp] = useState<ActiveStampInfo | null>(null);\n\n useEffect(() => {\n if (!stamp) return;\n const scope = stamp.forDocument(documentId);\n setActiveStamp(scope.getActiveStamp());\n return scope.onActiveStampChange(setActiveStamp);\n }, [stamp, documentId]);\n\n return activeStamp;\n};\n","import { useEffect, useState, useRef, HTMLAttributes, CSSProperties } from '@framework';\nimport { ignore, PdfErrorCode } from '@embedpdf/models';\nimport { useStampCapability } from '../hooks';\n\ntype StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {\n libraryId: string;\n pageIndex: number;\n width: number;\n dpr?: number;\n style?: CSSProperties;\n};\n\nexport function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps) {\n const { provides } = useStampCapability();\n const [url, setUrl] = useState<string>();\n const urlRef = useRef<string | null>(null);\n\n useEffect(() => {\n if (!provides) return;\n\n const task = provides.renderStamp(libraryId, pageIndex, width, dpr ?? window.devicePixelRatio);\n\n task.wait((blob) => {\n const objectUrl = URL.createObjectURL(blob);\n urlRef.current = objectUrl;\n setUrl(objectUrl);\n }, ignore);\n\n return () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n } else {\n task.abort({\n code: PdfErrorCode.Cancelled,\n message: 'canceled stamp render task',\n });\n }\n };\n }, [provides, libraryId, pageIndex, width, dpr]);\n\n const handleImageLoad = () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n }\n };\n\n return url ? <img src={url} onLoad={handleImageLoad} style={style} {...props} /> : null;\n}\n","import { createPluginPackage } from '@embedpdf/core';\nimport { StampPluginPackage as BaseStampPackage } from '@embedpdf/plugin-stamp';\n\nexport * from './hooks';\nexport * from './components';\nexport * from '@embedpdf/plugin-stamp';\n\nexport const StampPluginPackage = createPluginPackage(BaseStampPackage).build();\n"],"names":["BaseStampPackage"],"mappings":";;;;;;;;AAIO,MAAM,iBAAiB,MAAM,UAAuB,YAAY,EAAE;AAClE,MAAM,qBAAqB,MAAM,cAA2B,YAAY,EAAE;AAE1E,MAAM,oBAAoB,MAAM;AACrC,QAAM,EAAE,SAAA,IAAa,mBAAA;AACrB,QAAM,CAAC,WAAW,YAAY,IAAI,UAAyB,qCAAU,mBAAkB,EAAE;AAEzF,YAAU,MAAM;AACd,QAAI,CAAC,SAAU;AACf,iBAAa,SAAS,cAAc;AACpC,WAAO,SAAS,gBAAgB,CAAC,SAAS;AACxC,mBAAa,IAAI;AAAA,IACnB,CAAC;AAAA,EACH,GAAG,CAAC,QAAQ,CAAC;AAEb,SAAO,EAAE,WAAW,SAAA;AACtB;AAEO,MAAM,sBAAsB,CAAC,aAAqB;AACvD,QAAM,EAAE,SAAA,IAAa,mBAAA;AACrB,QAAM,CAAC,QAAQ,SAAS,IAAI,SAA0B,CAAA,CAAE;AAExD,YAAU,MAAM;AACd,QAAI,CAAC,SAAU;AACf,cAAU,SAAS,oBAAoB,QAAQ,CAAC;AAChD,WAAO,SAAS,gBAAgB,MAAM;AACpC,gBAAU,SAAS,oBAAoB,QAAQ,CAAC;AAAA,IAClD,CAAC;AAAA,EACH,GAAG,CAAC,UAAU,QAAQ,CAAC;AAEvB,SAAO;AACT;AAEO,MAAM,qBAAqB,CAAC,WAAoB,aAAsB;AAC3E,QAAM,EAAE,SAAA,IAAa,mBAAA;AACrB,QAAM,CAAC,QAAQ,SAAS,IAAI,SAA0B,CAAA,CAAE;AAExD,YAAU,MAAM;AACd,QAAI,CAAC,SAAU;AAEf,UAAM,SAAS,MAAM;;AACnB,YAAM,YAAY,SAAS,aAAA;AAC3B,YAAM,UAA2B,CAAA;AAEjC,iBAAW,WAAW,WAAW;AAC/B,YAAI,aAAa,cAAc,SAAS,QAAQ,OAAO,UAAW;AAElE,mBAAW,SAAS,QAAQ,QAAQ;AAClC,cAAI,UAAU;AACZ,kBAAM,mBAAiB,aAAQ,eAAR,mBAAoB,SAAS,cAAa;AACjE,kBAAM,iBAAe,WAAM,eAAN,mBAAkB,SAAS,cAAa;AAC7D,gBAAI,CAAC,kBAAkB,CAAC,aAAc;AAAA,UACxC;AACA,kBAAQ,KAAK,EAAE,SAAS,MAAA,CAAO;AAAA,QACjC;AAAA,MACF;AAEA,gBAAU,OAAO;AAAA,IACnB;AAEA,WAAA;AACA,WAAO,SAAS,gBAAgB,MAAM;AAAA,EACxC,GAAG,CAAC,UAAU,WAAW,QAAQ,CAAC;AAElC,SAAO;AACT;AAEO,MAAM,iBAAiB,CAAC,eAAuB;AACpD,QAAM,EAAE,UAAU,MAAA,IAAU,mBAAA;AAC5B,QAAM,CAAC,aAAa,cAAc,IAAI,SAAiC,IAAI;AAE3E,YAAU,MAAM;AACd,QAAI,CAAC,MAAO;AACZ,UAAM,QAAQ,MAAM,YAAY,UAAU;AAC1C,mBAAe,MAAM,gBAAgB;AACrC,WAAO,MAAM,oBAAoB,cAAc;AAAA,EACjD,GAAG,CAAC,OAAO,UAAU,CAAC;AAEtB,SAAO;AACT;ACvEO,SAAS,SAAS,EAAE,WAAW,WAAW,OAAO,KAAK,OAAO,GAAG,SAAwB;AAC7F,QAAM,EAAE,SAAA,IAAa,mBAAA;AACrB,QAAM,CAAC,KAAK,MAAM,IAAI,SAAA;AACtB,QAAM,SAAS,OAAsB,IAAI;AAEzC,YAAU,MAAM;AACd,QAAI,CAAC,SAAU;AAEf,UAAM,OAAO,SAAS,YAAY,WAAW,WAAW,OAAO,OAAO,OAAO,gBAAgB;AAE7F,SAAK,KAAK,CAAC,SAAS;AAClB,YAAM,YAAY,IAAI,gBAAgB,IAAI;AAC1C,aAAO,UAAU;AACjB,aAAO,SAAS;AAAA,IAClB,GAAG,MAAM;AAET,WAAO,MAAM;AACX,UAAI,OAAO,SAAS;AAClB,YAAI,gBAAgB,OAAO,OAAO;AAClC,eAAO,UAAU;AAAA,MACnB,OAAO;AACL,aAAK,MAAM;AAAA,UACT,MAAM,aAAa;AAAA,UACnB,SAAS;AAAA,QAAA,CACV;AAAA,MACH;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,WAAW,WAAW,OAAO,GAAG,CAAC;AAE/C,QAAM,kBAAkB,MAAM;AAC5B,QAAI,OAAO,SAAS;AAClB,UAAI,gBAAgB,OAAO,OAAO;AAClC,aAAO,UAAU;AAAA,IACnB;AAAA,EACF;AAEA,SAAO,MAAM,oBAAC,OAAA,EAAI,KAAK,KAAK,QAAQ,iBAAiB,OAAe,GAAG,MAAA,CAAO,IAAK;AACrF;AC1CO,MAAM,qBAAqB,oBAAoBA,oBAAgB,EAAE,MAAA;"}
@@ -1,2 +0,0 @@
1
- export { Fragment, useEffect, useRef, useState, useCallback, useMemo } from 'react';
2
- export type { ReactNode, HTMLAttributes, CSSProperties } from 'react';
@@ -1 +0,0 @@
1
- export * from '@embedpdf/plugin-annotation/react';
@@ -1 +0,0 @@
1
- export * from '@embedpdf/core/react';
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/core"),r=require("@embedpdf/plugin-stamp"),t=require("@embedpdf/core/react"),s=require("react"),n=require("react/jsx-runtime"),a=require("@embedpdf/models"),i=()=>t.useCapability(r.StampPlugin.id);const o=e.createPluginPackage(r.StampPluginPackage).build();exports.StampImg=function({libraryId:e,pageIndex:r,width:t,dpr:o,style:u,...c}){const{provides:p}=i(),[l,d]=s.useState(),f=s.useRef(null);return s.useEffect(()=>{if(!p)return;const s=p.renderStamp(e,r,t,o??window.devicePixelRatio);return s.wait(e=>{const r=URL.createObjectURL(e);f.current=r,d(r)},a.ignore),()=>{f.current?(URL.revokeObjectURL(f.current),f.current=null):s.abort({code:a.PdfErrorCode.Cancelled,message:"canceled stamp render task"})}},[p,e,r,t,o]),l?n.jsx("img",{src:l,onLoad:()=>{f.current&&(URL.revokeObjectURL(f.current),f.current=null)},style:u,...c}):null},exports.StampPluginPackage=o,exports.useActiveStamp=e=>{const{provides:r}=i(),[t,n]=s.useState(null);return s.useEffect(()=>{if(!r)return;const t=r.forDocument(e);return n(t.getActiveStamp()),t.onActiveStampChange(n)},[r,e]),t},exports.useStampCapability=i,exports.useStampLibraries=()=>{const{provides:e}=i(),[r,t]=s.useState((null==e?void 0:e.getLibraries())??[]);return s.useEffect(()=>{if(e)return t(e.getLibraries()),e.onLibraryChange(e=>{t(e)})},[e]),{libraries:r,provides:e}},exports.useStampPlugin=()=>t.usePlugin(r.StampPlugin.id),exports.useStampsByCategory=e=>{const{provides:r}=i(),[t,n]=s.useState([]);return s.useEffect(()=>{if(r)return n(r.getStampsByCategory(e)),r.onLibraryChange(()=>{n(r.getStampsByCategory(e))})},[r,e]),t},exports.useStampsByLibrary=(e,r)=>{const{provides:t}=i(),[n,a]=s.useState([]);return s.useEffect(()=>{if(!t)return;const s=()=>{var s,n;const i=t.getLibraries(),o=[];for(const t of i)if(!e||"all"===e||t.id===e)for(const e of t.stamps){if(r){const a=(null==(s=t.categories)?void 0:s.includes(r))??!1,i=(null==(n=e.categories)?void 0:n.includes(r))??!1;if(!a&&!i)continue}o.push({library:t,stamp:e})}a(o)};return s(),t.onLibraryChange(s)},[t,e,r]),n},Object.keys(r).forEach(e=>{"default"===e||Object.prototype.hasOwnProperty.call(exports,e)||Object.defineProperty(exports,e,{enumerable:!0,get:()=>r[e]})});
2
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/shared/hooks/use-stamp.ts","../../src/shared/index.ts","../../src/shared/components/stamp-img.tsx"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '@embedpdf/plugin-stamp';\nimport { useState, useEffect } from '@framework';\n\nexport const useStampPlugin = () => usePlugin<StampPlugin>(StampPlugin.id);\nexport const useStampCapability = () => useCapability<StampPlugin>(StampPlugin.id);\n\nexport const useStampLibraries = () => {\n const { provides } = useStampCapability();\n const [libraries, setLibraries] = useState<StampLibrary[]>(provides?.getLibraries() ?? []);\n\n useEffect(() => {\n if (!provides) return;\n setLibraries(provides.getLibraries());\n return provides.onLibraryChange((libs) => {\n setLibraries(libs);\n });\n }, [provides]);\n\n return { libraries, provides };\n};\n\nexport const useStampsByCategory = (category: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n setStamps(provides.getStampsByCategory(category));\n return provides.onLibraryChange(() => {\n setStamps(provides.getStampsByCategory(category));\n });\n }, [provides, category]);\n\n return stamps;\n};\n\nexport const useStampsByLibrary = (libraryId?: string, category?: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n\n const derive = () => {\n const libraries = provides.getLibraries();\n const results: ResolvedStamp[] = [];\n\n for (const library of libraries) {\n if (libraryId && libraryId !== 'all' && library.id !== libraryId) continue;\n\n for (const stamp of library.stamps) {\n if (category) {\n const libraryMatches = library.categories?.includes(category) ?? false;\n const stampMatches = stamp.categories?.includes(category) ?? false;\n if (!libraryMatches && !stampMatches) continue;\n }\n results.push({ library, stamp });\n }\n }\n\n setStamps(results);\n };\n\n derive();\n return provides.onLibraryChange(derive);\n }, [provides, libraryId, category]);\n\n return stamps;\n};\n\nexport const useActiveStamp = (documentId: string) => {\n const { provides: stamp } = useStampCapability();\n const [activeStamp, setActiveStamp] = useState<ActiveStampInfo | null>(null);\n\n useEffect(() => {\n if (!stamp) return;\n const scope = stamp.forDocument(documentId);\n setActiveStamp(scope.getActiveStamp());\n return scope.onActiveStampChange(setActiveStamp);\n }, [stamp, documentId]);\n\n return activeStamp;\n};\n","import { createPluginPackage } from '@embedpdf/core';\nimport { StampPluginPackage as BaseStampPackage } from '@embedpdf/plugin-stamp';\n\nexport * from './hooks';\nexport * from './components';\nexport * from '@embedpdf/plugin-stamp';\n\nexport const StampPluginPackage = createPluginPackage(BaseStampPackage).build();\n","import { useEffect, useState, useRef, HTMLAttributes, CSSProperties } from '@framework';\nimport { ignore, PdfErrorCode } from '@embedpdf/models';\nimport { useStampCapability } from '../hooks';\n\ntype StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {\n libraryId: string;\n pageIndex: number;\n width: number;\n dpr?: number;\n style?: CSSProperties;\n};\n\nexport function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps) {\n const { provides } = useStampCapability();\n const [url, setUrl] = useState<string>();\n const urlRef = useRef<string | null>(null);\n\n useEffect(() => {\n if (!provides) return;\n\n const task = provides.renderStamp(libraryId, pageIndex, width, dpr ?? window.devicePixelRatio);\n\n task.wait((blob) => {\n const objectUrl = URL.createObjectURL(blob);\n urlRef.current = objectUrl;\n setUrl(objectUrl);\n }, ignore);\n\n return () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n } else {\n task.abort({\n code: PdfErrorCode.Cancelled,\n message: 'canceled stamp render task',\n });\n }\n };\n }, [provides, libraryId, pageIndex, width, dpr]);\n\n const handleImageLoad = () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n }\n };\n\n return url ? <img src={url} onLoad={handleImageLoad} style={style} {...props} /> : null;\n}\n"],"names":["useStampCapability","useCapability","StampPlugin","id","StampPluginPackage","createPluginPackage","BaseStampPackage","build","libraryId","pageIndex","width","dpr","style","props","provides","url","setUrl","useState","urlRef","useRef","useEffect","task","renderStamp","window","devicePixelRatio","wait","blob","objectUrl","URL","createObjectURL","current","ignore","revokeObjectURL","abort","code","PdfErrorCode","Cancelled","message","jsx","src","onLoad","documentId","stamp","activeStamp","setActiveStamp","scope","forDocument","getActiveStamp","onActiveStampChange","libraries","setLibraries","getLibraries","onLibraryChange","libs","usePlugin","category","stamps","setStamps","getStampsByCategory","derive","results","library","libraryMatches","_a","categories","includes","stampMatches","_b","push"],"mappings":"wQAKaA,EAAqB,IAAMC,gBAA2BC,EAAAA,YAAYC,ICExE,MAAMC,EAAqBC,EAAAA,oBAAoBC,EAAAA,oBAAkBC,yBCKjE,UAAkBC,UAAEA,EAAAC,UAAWA,EAAAC,MAAWA,MAAOC,EAAAC,MAAKA,KAAUC,IACrE,MAAMC,SAAEA,GAAad,KACde,EAAKC,GAAUC,aAChBC,EAASC,EAAAA,OAAsB,MAiCrC,OA/BAC,EAAAA,UAAU,KACR,IAAKN,EAAU,OAEf,MAAMO,EAAOP,EAASQ,YAAYd,EAAWC,EAAWC,EAAOC,GAAOY,OAAOC,kBAQ7E,OANAH,EAAKI,KAAMC,IACT,MAAMC,EAAYC,IAAIC,gBAAgBH,GACtCR,EAAOY,QAAUH,EACjBX,EAAOW,IACNI,EAAAA,QAEI,KACDb,EAAOY,SACTF,IAAII,gBAAgBd,EAAOY,SAC3BZ,EAAOY,QAAU,MAEjBT,EAAKY,MAAM,CACTC,KAAMC,EAAAA,aAAaC,UACnBC,QAAS,iCAId,CAACvB,EAAUN,EAAWC,EAAWC,EAAOC,IASpCI,EAAMuB,EAAAA,IAAC,MAAA,CAAIC,IAAKxB,EAAKyB,OAPJ,KAClBtB,EAAOY,UACTF,IAAII,gBAAgBd,EAAOY,SAC3BZ,EAAOY,QAAU,OAIgClB,WAAkBC,IAAY,IACrF,sDFsB+B4B,IAC7B,MAAQ3B,SAAU4B,GAAU1C,KACrB2C,EAAaC,GAAkB3B,EAAAA,SAAiC,MASvE,OAPAG,EAAAA,UAAU,KACR,IAAKsB,EAAO,OACZ,MAAMG,EAAQH,EAAMI,YAAYL,GAEhC,OADAG,EAAeC,EAAME,kBACdF,EAAMG,oBAAoBJ,IAChC,CAACF,EAAOD,IAEJE,0DA3EwB,KAC/B,MAAM7B,SAAEA,GAAad,KACdiD,EAAWC,GAAgBjC,EAAAA,UAAyB,MAAAH,OAAA,EAAAA,EAAUqC,iBAAkB,IAUvF,OARA/B,EAAAA,UAAU,KACR,GAAKN,EAEL,OADAoC,EAAapC,EAASqC,gBACfrC,EAASsC,gBAAiBC,IAC/BH,EAAaG,MAEd,CAACvC,IAEG,CAAEmC,YAAWnC,oCAfQ,IAAMwC,YAAuBpD,EAAAA,YAAYC,gCAkBnCoD,IAClC,MAAMzC,SAAEA,GAAad,KACdwD,EAAQC,GAAaxC,EAAAA,SAA0B,IAUtD,OARAG,EAAAA,UAAU,KACR,GAAKN,EAEL,OADA2C,EAAU3C,EAAS4C,oBAAoBH,IAChCzC,EAASsC,gBAAgB,KAC9BK,EAAU3C,EAAS4C,oBAAoBH,OAExC,CAACzC,EAAUyC,IAEPC,8BAGyB,CAAChD,EAAoB+C,KACrD,MAAMzC,SAAEA,GAAad,KACdwD,EAAQC,GAAaxC,EAAAA,SAA0B,IA6BtD,OA3BAG,EAAAA,UAAU,KACR,IAAKN,EAAU,OAEf,MAAM6C,EAAS,aACb,MAAMV,EAAYnC,EAASqC,eACrBS,EAA2B,GAEjC,IAAA,MAAWC,KAAWZ,EACpB,IAAIzC,GAA2B,QAAdA,GAAuBqD,EAAQ1D,KAAOK,EAEvD,IAAA,MAAWkC,KAASmB,EAAQL,OAAQ,CAClC,GAAID,EAAU,CACZ,MAAMO,GAAiB,OAAAC,EAAAF,EAAQG,iBAAR,EAAAD,EAAoBE,SAASV,MAAa,EAC3DW,GAAe,OAAAC,EAAAzB,EAAMsB,iBAAN,EAAAG,EAAkBF,SAASV,MAAa,EAC7D,IAAKO,IAAmBI,EAAc,QACxC,CACAN,EAAQQ,KAAK,CAAEP,UAASnB,SAC1B,CAGFe,EAAUG,IAIZ,OADAD,IACO7C,EAASsC,gBAAgBO,IAC/B,CAAC7C,EAAUN,EAAW+C,IAElBC"}
@@ -1 +0,0 @@
1
- export * from '../shared-react';
@@ -1,115 +0,0 @@
1
- import { createPluginPackage } from "@embedpdf/core";
2
- import { StampPlugin, StampPluginPackage as StampPluginPackage$1 } from "@embedpdf/plugin-stamp";
3
- export * from "@embedpdf/plugin-stamp";
4
- import { useCapability, usePlugin } from "@embedpdf/core/react";
5
- import { useState, useEffect, useRef } from "react";
6
- import { jsx } from "react/jsx-runtime";
7
- import { ignore, PdfErrorCode } from "@embedpdf/models";
8
- const useStampPlugin = () => usePlugin(StampPlugin.id);
9
- const useStampCapability = () => useCapability(StampPlugin.id);
10
- const useStampLibraries = () => {
11
- const { provides } = useStampCapability();
12
- const [libraries, setLibraries] = useState((provides == null ? void 0 : provides.getLibraries()) ?? []);
13
- useEffect(() => {
14
- if (!provides) return;
15
- setLibraries(provides.getLibraries());
16
- return provides.onLibraryChange((libs) => {
17
- setLibraries(libs);
18
- });
19
- }, [provides]);
20
- return { libraries, provides };
21
- };
22
- const useStampsByCategory = (category) => {
23
- const { provides } = useStampCapability();
24
- const [stamps, setStamps] = useState([]);
25
- useEffect(() => {
26
- if (!provides) return;
27
- setStamps(provides.getStampsByCategory(category));
28
- return provides.onLibraryChange(() => {
29
- setStamps(provides.getStampsByCategory(category));
30
- });
31
- }, [provides, category]);
32
- return stamps;
33
- };
34
- const useStampsByLibrary = (libraryId, category) => {
35
- const { provides } = useStampCapability();
36
- const [stamps, setStamps] = useState([]);
37
- useEffect(() => {
38
- if (!provides) return;
39
- const derive = () => {
40
- var _a, _b;
41
- const libraries = provides.getLibraries();
42
- const results = [];
43
- for (const library of libraries) {
44
- if (libraryId && libraryId !== "all" && library.id !== libraryId) continue;
45
- for (const stamp of library.stamps) {
46
- if (category) {
47
- const libraryMatches = ((_a = library.categories) == null ? void 0 : _a.includes(category)) ?? false;
48
- const stampMatches = ((_b = stamp.categories) == null ? void 0 : _b.includes(category)) ?? false;
49
- if (!libraryMatches && !stampMatches) continue;
50
- }
51
- results.push({ library, stamp });
52
- }
53
- }
54
- setStamps(results);
55
- };
56
- derive();
57
- return provides.onLibraryChange(derive);
58
- }, [provides, libraryId, category]);
59
- return stamps;
60
- };
61
- const useActiveStamp = (documentId) => {
62
- const { provides: stamp } = useStampCapability();
63
- const [activeStamp, setActiveStamp] = useState(null);
64
- useEffect(() => {
65
- if (!stamp) return;
66
- const scope = stamp.forDocument(documentId);
67
- setActiveStamp(scope.getActiveStamp());
68
- return scope.onActiveStampChange(setActiveStamp);
69
- }, [stamp, documentId]);
70
- return activeStamp;
71
- };
72
- function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }) {
73
- const { provides } = useStampCapability();
74
- const [url, setUrl] = useState();
75
- const urlRef = useRef(null);
76
- useEffect(() => {
77
- if (!provides) return;
78
- const task = provides.renderStamp(libraryId, pageIndex, width, dpr ?? window.devicePixelRatio);
79
- task.wait((blob) => {
80
- const objectUrl = URL.createObjectURL(blob);
81
- urlRef.current = objectUrl;
82
- setUrl(objectUrl);
83
- }, ignore);
84
- return () => {
85
- if (urlRef.current) {
86
- URL.revokeObjectURL(urlRef.current);
87
- urlRef.current = null;
88
- } else {
89
- task.abort({
90
- code: PdfErrorCode.Cancelled,
91
- message: "canceled stamp render task"
92
- });
93
- }
94
- };
95
- }, [provides, libraryId, pageIndex, width, dpr]);
96
- const handleImageLoad = () => {
97
- if (urlRef.current) {
98
- URL.revokeObjectURL(urlRef.current);
99
- urlRef.current = null;
100
- }
101
- };
102
- return url ? /* @__PURE__ */ jsx("img", { src: url, onLoad: handleImageLoad, style, ...props }) : null;
103
- }
104
- const StampPluginPackage = createPluginPackage(StampPluginPackage$1).build();
105
- export {
106
- StampImg,
107
- StampPluginPackage,
108
- useActiveStamp,
109
- useStampCapability,
110
- useStampLibraries,
111
- useStampPlugin,
112
- useStampsByCategory,
113
- useStampsByLibrary
114
- };
115
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/shared/hooks/use-stamp.ts","../../src/shared/components/stamp-img.tsx","../../src/shared/index.ts"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '@embedpdf/plugin-stamp';\nimport { useState, useEffect } from '@framework';\n\nexport const useStampPlugin = () => usePlugin<StampPlugin>(StampPlugin.id);\nexport const useStampCapability = () => useCapability<StampPlugin>(StampPlugin.id);\n\nexport const useStampLibraries = () => {\n const { provides } = useStampCapability();\n const [libraries, setLibraries] = useState<StampLibrary[]>(provides?.getLibraries() ?? []);\n\n useEffect(() => {\n if (!provides) return;\n setLibraries(provides.getLibraries());\n return provides.onLibraryChange((libs) => {\n setLibraries(libs);\n });\n }, [provides]);\n\n return { libraries, provides };\n};\n\nexport const useStampsByCategory = (category: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n setStamps(provides.getStampsByCategory(category));\n return provides.onLibraryChange(() => {\n setStamps(provides.getStampsByCategory(category));\n });\n }, [provides, category]);\n\n return stamps;\n};\n\nexport const useStampsByLibrary = (libraryId?: string, category?: string) => {\n const { provides } = useStampCapability();\n const [stamps, setStamps] = useState<ResolvedStamp[]>([]);\n\n useEffect(() => {\n if (!provides) return;\n\n const derive = () => {\n const libraries = provides.getLibraries();\n const results: ResolvedStamp[] = [];\n\n for (const library of libraries) {\n if (libraryId && libraryId !== 'all' && library.id !== libraryId) continue;\n\n for (const stamp of library.stamps) {\n if (category) {\n const libraryMatches = library.categories?.includes(category) ?? false;\n const stampMatches = stamp.categories?.includes(category) ?? false;\n if (!libraryMatches && !stampMatches) continue;\n }\n results.push({ library, stamp });\n }\n }\n\n setStamps(results);\n };\n\n derive();\n return provides.onLibraryChange(derive);\n }, [provides, libraryId, category]);\n\n return stamps;\n};\n\nexport const useActiveStamp = (documentId: string) => {\n const { provides: stamp } = useStampCapability();\n const [activeStamp, setActiveStamp] = useState<ActiveStampInfo | null>(null);\n\n useEffect(() => {\n if (!stamp) return;\n const scope = stamp.forDocument(documentId);\n setActiveStamp(scope.getActiveStamp());\n return scope.onActiveStampChange(setActiveStamp);\n }, [stamp, documentId]);\n\n return activeStamp;\n};\n","import { useEffect, useState, useRef, HTMLAttributes, CSSProperties } from '@framework';\nimport { ignore, PdfErrorCode } from '@embedpdf/models';\nimport { useStampCapability } from '../hooks';\n\ntype StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {\n libraryId: string;\n pageIndex: number;\n width: number;\n dpr?: number;\n style?: CSSProperties;\n};\n\nexport function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps) {\n const { provides } = useStampCapability();\n const [url, setUrl] = useState<string>();\n const urlRef = useRef<string | null>(null);\n\n useEffect(() => {\n if (!provides) return;\n\n const task = provides.renderStamp(libraryId, pageIndex, width, dpr ?? window.devicePixelRatio);\n\n task.wait((blob) => {\n const objectUrl = URL.createObjectURL(blob);\n urlRef.current = objectUrl;\n setUrl(objectUrl);\n }, ignore);\n\n return () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n } else {\n task.abort({\n code: PdfErrorCode.Cancelled,\n message: 'canceled stamp render task',\n });\n }\n };\n }, [provides, libraryId, pageIndex, width, dpr]);\n\n const handleImageLoad = () => {\n if (urlRef.current) {\n URL.revokeObjectURL(urlRef.current);\n urlRef.current = null;\n }\n };\n\n return url ? <img src={url} onLoad={handleImageLoad} style={style} {...props} /> : null;\n}\n","import { createPluginPackage } from '@embedpdf/core';\nimport { StampPluginPackage as BaseStampPackage } from '@embedpdf/plugin-stamp';\n\nexport * from './hooks';\nexport * from './components';\nexport * from '@embedpdf/plugin-stamp';\n\nexport const StampPluginPackage = createPluginPackage(BaseStampPackage).build();\n"],"names":["BaseStampPackage"],"mappings":"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"}
@@ -1 +0,0 @@
1
- export * from './stamp-img';
@@ -1,10 +0,0 @@
1
- import { HTMLAttributes, CSSProperties } from '../../react/adapter.ts';
2
- type StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {
3
- libraryId: string;
4
- pageIndex: number;
5
- width: number;
6
- dpr?: number;
7
- style?: CSSProperties;
8
- };
9
- export declare function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps): import("react/jsx-runtime").JSX.Element | null;
10
- export {};
@@ -1 +0,0 @@
1
- export * from './use-stamp';
@@ -1,18 +0,0 @@
1
- import { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '../../index.ts';
2
- export declare const useStampPlugin: () => {
3
- plugin: StampPlugin | null;
4
- isLoading: boolean;
5
- ready: Promise<void>;
6
- };
7
- export declare const useStampCapability: () => {
8
- provides: Readonly<import('../../index.ts').StampCapability> | null;
9
- isLoading: boolean;
10
- ready: Promise<void>;
11
- };
12
- export declare const useStampLibraries: () => {
13
- libraries: StampLibrary[];
14
- provides: Readonly<import('../../index.ts').StampCapability> | null;
15
- };
16
- export declare const useStampsByCategory: (category: string) => ResolvedStamp[];
17
- export declare const useStampsByLibrary: (libraryId?: string, category?: string) => ResolvedStamp[];
18
- export declare const useActiveStamp: (documentId: string) => ActiveStampInfo | null;
@@ -1,4 +0,0 @@
1
- export * from './hooks';
2
- export * from './components';
3
- export * from '../index.ts';
4
- export declare const StampPluginPackage: import('@embedpdf/core').WithAutoMount<import('@embedpdf/core').PluginPackage<import('../index.ts').StampPlugin, import('../index.ts').StampPluginConfig, import('../index.ts').StampState, import('../index.ts').StampAction>>;
@@ -1 +0,0 @@
1
- export * from './stamp-img';
@@ -1,10 +0,0 @@
1
- import { HTMLAttributes, CSSProperties } from '../../preact/adapter.ts';
2
- type StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {
3
- libraryId: string;
4
- pageIndex: number;
5
- width: number;
6
- dpr?: number;
7
- style?: CSSProperties;
8
- };
9
- export declare function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps): import("preact").JSX.Element | null;
10
- export {};
@@ -1 +0,0 @@
1
- export * from './use-stamp';
@@ -1,18 +0,0 @@
1
- import { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '../../lib/index.ts';
2
- export declare const useStampPlugin: () => {
3
- plugin: StampPlugin | null;
4
- isLoading: boolean;
5
- ready: Promise<void>;
6
- };
7
- export declare const useStampCapability: () => {
8
- provides: Readonly<import('../../lib/index.ts').StampCapability> | null;
9
- isLoading: boolean;
10
- ready: Promise<void>;
11
- };
12
- export declare const useStampLibraries: () => {
13
- libraries: StampLibrary[];
14
- provides: Readonly<import('../../lib/index.ts').StampCapability> | null;
15
- };
16
- export declare const useStampsByCategory: (category: string) => ResolvedStamp[];
17
- export declare const useStampsByLibrary: (libraryId?: string, category?: string) => ResolvedStamp[];
18
- export declare const useActiveStamp: (documentId: string) => ActiveStampInfo | null;
@@ -1,4 +0,0 @@
1
- export * from './hooks';
2
- export * from './components';
3
- export * from '../lib/index.ts';
4
- export declare const StampPluginPackage: import('@embedpdf/core').WithAutoMount<import('@embedpdf/core').PluginPackage<import('../lib/index.ts').StampPlugin, import('../lib/index.ts').StampPluginConfig, import('../lib/index.ts').StampState, import('../lib/index.ts').StampAction>>;
@@ -1 +0,0 @@
1
- export * from './stamp-img';
@@ -1,10 +0,0 @@
1
- import { HTMLAttributes, CSSProperties } from '../../react/adapter.ts';
2
- type StampImgProps = Omit<HTMLAttributes<HTMLImageElement>, 'style'> & {
3
- libraryId: string;
4
- pageIndex: number;
5
- width: number;
6
- dpr?: number;
7
- style?: CSSProperties;
8
- };
9
- export declare function StampImg({ libraryId, pageIndex, width, dpr, style, ...props }: StampImgProps): import("react/jsx-runtime").JSX.Element | null;
10
- export {};
@@ -1 +0,0 @@
1
- export * from './use-stamp';
@@ -1,18 +0,0 @@
1
- import { StampPlugin, StampLibrary, ResolvedStamp, ActiveStampInfo } from '../../lib/index.ts';
2
- export declare const useStampPlugin: () => {
3
- plugin: StampPlugin | null;
4
- isLoading: boolean;
5
- ready: Promise<void>;
6
- };
7
- export declare const useStampCapability: () => {
8
- provides: Readonly<import('../../lib/index.ts').StampCapability> | null;
9
- isLoading: boolean;
10
- ready: Promise<void>;
11
- };
12
- export declare const useStampLibraries: () => {
13
- libraries: StampLibrary[];
14
- provides: Readonly<import('../../lib/index.ts').StampCapability> | null;
15
- };
16
- export declare const useStampsByCategory: (category: string) => ResolvedStamp[];
17
- export declare const useStampsByLibrary: (libraryId?: string, category?: string) => ResolvedStamp[];
18
- export declare const useActiveStamp: (documentId: string) => ActiveStampInfo | null;
@@ -1,4 +0,0 @@
1
- export * from './hooks';
2
- export * from './components';
3
- export * from '../lib/index.ts';
4
- export declare const StampPluginPackage: import('@embedpdf/core').WithAutoMount<import('@embedpdf/core').PluginPackage<import('../lib/index.ts').StampPlugin, import('../lib/index.ts').StampPluginConfig, import('../lib/index.ts').StampState, import('../lib/index.ts').StampAction>>;
@@ -1,10 +0,0 @@
1
- import { HTMLImgAttributes } from 'svelte/elements';
2
- interface Props extends HTMLImgAttributes {
3
- libraryId: string;
4
- pageIndex: number;
5
- width: number;
6
- dpr?: number;
7
- }
8
- declare const StampImg: import('svelte', { with: { "resolution-mode": "import" } }).Component<Props, {}, "">;
9
- type StampImg = ReturnType<typeof StampImg>;
10
- export default StampImg;
@@ -1 +0,0 @@
1
- export { default as StampImg } from './StampImg.svelte';
@@ -1 +0,0 @@
1
- export * from './use-stamp.svelte';