@embedpdf/plugin-spread 1.0.11 → 1.0.13
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.cjs +2 -166
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -47
- package/dist/index.js +15 -27
- package/dist/index.js.map +1 -1
- package/dist/lib/actions.d.ts +8 -0
- package/dist/lib/index.d.ts +8 -0
- package/dist/lib/manifest.d.ts +4 -0
- package/dist/lib/reducer.d.ts +5 -0
- package/dist/lib/spread-plugin.d.ts +16 -0
- package/dist/lib/types.d.ts +19 -0
- package/dist/preact/adapter.d.ts +2 -0
- package/dist/preact/core.d.ts +1 -0
- package/dist/preact/index.cjs +2 -54
- package/dist/preact/index.cjs.map +1 -1
- package/dist/preact/index.d.ts +1 -19
- package/dist/preact/index.js +9 -9
- package/dist/preact/index.js.map +1 -1
- package/dist/react/adapter.d.ts +1 -0
- package/dist/react/core.d.ts +1 -0
- package/dist/react/index.cjs +2 -54
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.ts +1 -19
- package/dist/react/index.js +8 -9
- package/dist/react/index.js.map +1 -1
- package/dist/shared-preact/hooks/index.d.ts +1 -0
- package/dist/shared-preact/hooks/use-spread.d.ts +15 -0
- package/dist/shared-preact/index.d.ts +1 -0
- package/dist/shared-react/hooks/index.d.ts +1 -0
- package/dist/shared-react/hooks/use-spread.d.ts +15 -0
- package/dist/shared-react/index.d.ts +1 -0
- package/package.json +15 -12
- package/dist/index.d.cts +0 -47
- package/dist/preact/index.d.cts +0 -19
- package/dist/react/index.d.cts +0 -19
package/dist/index.cjs
CHANGED
|
@@ -1,166 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/index.ts
|
|
21
|
-
var index_exports = {};
|
|
22
|
-
__export(index_exports, {
|
|
23
|
-
SPREAD_PLUGIN_ID: () => SPREAD_PLUGIN_ID,
|
|
24
|
-
SpreadMode: () => SpreadMode,
|
|
25
|
-
SpreadPlugin: () => SpreadPlugin,
|
|
26
|
-
SpreadPluginPackage: () => SpreadPluginPackage,
|
|
27
|
-
manifest: () => manifest
|
|
28
|
-
});
|
|
29
|
-
module.exports = __toCommonJS(index_exports);
|
|
30
|
-
|
|
31
|
-
// src/lib/spread-plugin.ts
|
|
32
|
-
var import_core = require("@embedpdf/core");
|
|
33
|
-
|
|
34
|
-
// src/lib/types.ts
|
|
35
|
-
var SpreadMode = /* @__PURE__ */ ((SpreadMode2) => {
|
|
36
|
-
SpreadMode2["None"] = "none";
|
|
37
|
-
SpreadMode2["Odd"] = "odd";
|
|
38
|
-
SpreadMode2["Even"] = "even";
|
|
39
|
-
return SpreadMode2;
|
|
40
|
-
})(SpreadMode || {});
|
|
41
|
-
|
|
42
|
-
// src/lib/actions.ts
|
|
43
|
-
var SET_SPREAD_MODE = "SET_SPREAD_MODE";
|
|
44
|
-
function setSpreadMode(mode) {
|
|
45
|
-
return {
|
|
46
|
-
type: SET_SPREAD_MODE,
|
|
47
|
-
payload: mode
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// src/lib/spread-plugin.ts
|
|
52
|
-
var SpreadPlugin = class extends import_core.BasePlugin {
|
|
53
|
-
constructor(id, registry, cfg) {
|
|
54
|
-
super(id, registry);
|
|
55
|
-
this.spreadEmitter$ = (0, import_core.createEmitter)();
|
|
56
|
-
this.resetReady();
|
|
57
|
-
this.dispatch(setSpreadMode(cfg.defaultSpreadMode ?? "none" /* None */));
|
|
58
|
-
const loaderPlugin = registry.getPlugin("loader");
|
|
59
|
-
loaderPlugin.provides().onDocumentLoaded((document) => this.documentLoaded(document));
|
|
60
|
-
}
|
|
61
|
-
async initialize(config) {
|
|
62
|
-
if (config.defaultSpreadMode) {
|
|
63
|
-
this.dispatch(setSpreadMode(config.defaultSpreadMode));
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
documentLoaded(document) {
|
|
67
|
-
this.dispatchCoreAction((0, import_core.setPages)(this.getSpreadPagesObjects(document.pages)));
|
|
68
|
-
this.markReady();
|
|
69
|
-
}
|
|
70
|
-
getSpreadPagesObjects(pages) {
|
|
71
|
-
if (!pages.length) return [];
|
|
72
|
-
switch (this.state.spreadMode) {
|
|
73
|
-
case "none" /* None */:
|
|
74
|
-
return pages.map((page) => [page]);
|
|
75
|
-
case "odd" /* Odd */:
|
|
76
|
-
return Array.from(
|
|
77
|
-
{ length: Math.ceil(pages.length / 2) },
|
|
78
|
-
(_, i) => pages.slice(i * 2, i * 2 + 2)
|
|
79
|
-
);
|
|
80
|
-
case "even" /* Even */:
|
|
81
|
-
return [
|
|
82
|
-
[pages[0]],
|
|
83
|
-
...Array.from(
|
|
84
|
-
{ length: Math.ceil((pages.length - 1) / 2) },
|
|
85
|
-
(_, i) => pages.slice(1 + i * 2, 1 + i * 2 + 2)
|
|
86
|
-
)
|
|
87
|
-
];
|
|
88
|
-
default:
|
|
89
|
-
return pages.map((page) => [page]);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
setSpreadMode(mode) {
|
|
93
|
-
const currentMode = this.state.spreadMode;
|
|
94
|
-
const document = this.coreState.core.document;
|
|
95
|
-
if (!document) {
|
|
96
|
-
throw new Error("Document not loaded");
|
|
97
|
-
}
|
|
98
|
-
if (currentMode !== mode) {
|
|
99
|
-
this.dispatch(setSpreadMode(mode));
|
|
100
|
-
this.dispatchCoreAction((0, import_core.setPages)(this.getSpreadPagesObjects(document.pages)));
|
|
101
|
-
this.notifySpreadChange(mode);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
notifySpreadChange(spreadMode) {
|
|
105
|
-
this.spreadEmitter$.emit(spreadMode);
|
|
106
|
-
}
|
|
107
|
-
buildCapability() {
|
|
108
|
-
return {
|
|
109
|
-
onSpreadChange: this.spreadEmitter$.on,
|
|
110
|
-
setSpreadMode: (mode) => this.setSpreadMode(mode),
|
|
111
|
-
getSpreadMode: () => this.state.spreadMode,
|
|
112
|
-
getSpreadPagesObjects: (pages) => this.getSpreadPagesObjects(pages)
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
async destroy() {
|
|
116
|
-
this.spreadEmitter$.clear();
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
SpreadPlugin.id = "spread";
|
|
120
|
-
|
|
121
|
-
// src/lib/manifest.ts
|
|
122
|
-
var SPREAD_PLUGIN_ID = "spread";
|
|
123
|
-
var manifest = {
|
|
124
|
-
id: SPREAD_PLUGIN_ID,
|
|
125
|
-
name: "Spread Plugin",
|
|
126
|
-
version: "1.0.0",
|
|
127
|
-
provides: ["spread"],
|
|
128
|
-
requires: ["loader"],
|
|
129
|
-
optional: [],
|
|
130
|
-
defaultConfig: {
|
|
131
|
-
enabled: true
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
|
|
135
|
-
// src/lib/reducer.ts
|
|
136
|
-
var initialState = {
|
|
137
|
-
spreadMode: "none" /* None */
|
|
138
|
-
};
|
|
139
|
-
var spreadReducer = (state = initialState, action) => {
|
|
140
|
-
switch (action.type) {
|
|
141
|
-
case SET_SPREAD_MODE:
|
|
142
|
-
return {
|
|
143
|
-
...state,
|
|
144
|
-
spreadMode: action.payload
|
|
145
|
-
};
|
|
146
|
-
default:
|
|
147
|
-
return state;
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
|
|
151
|
-
// src/lib/index.ts
|
|
152
|
-
var SpreadPluginPackage = {
|
|
153
|
-
manifest,
|
|
154
|
-
create: (registry, _engine, config) => new SpreadPlugin(SPREAD_PLUGIN_ID, registry, config),
|
|
155
|
-
reducer: spreadReducer,
|
|
156
|
-
initialState
|
|
157
|
-
};
|
|
158
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
159
|
-
0 && (module.exports = {
|
|
160
|
-
SPREAD_PLUGIN_ID,
|
|
161
|
-
SpreadMode,
|
|
162
|
-
SpreadPlugin,
|
|
163
|
-
SpreadPluginPackage,
|
|
164
|
-
manifest
|
|
165
|
-
});
|
|
166
|
-
//# sourceMappingURL=index.cjs.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/core");var t=(e=>(e.None="none",e.Odd="odd",e.Even="even",e))(t||{});const a="SET_SPREAD_MODE";function r(e){return{type:a,payload:e}}const s=class extends e.BasePlugin{constructor(a,s,d){super(a,s),this.spreadEmitter$=e.createEmitter(),this.resetReady(),this.dispatch(r(d.defaultSpreadMode??t.None));s.getPlugin("loader").provides().onDocumentLoaded((e=>this.documentLoaded(e)))}async initialize(e){e.defaultSpreadMode&&this.dispatch(r(e.defaultSpreadMode))}documentLoaded(t){this.dispatchCoreAction(e.setPages(this.getSpreadPagesObjects(t.pages))),this.markReady()}getSpreadPagesObjects(e){if(!e.length)return[];switch(this.state.spreadMode){case t.None:return e.map((e=>[e]));case t.Odd:return Array.from({length:Math.ceil(e.length/2)},((t,a)=>e.slice(2*a,2*a+2)));case t.Even:return[[e[0]],...Array.from({length:Math.ceil((e.length-1)/2)},((t,a)=>e.slice(1+2*a,1+2*a+2)))];default:return e.map((e=>[e]))}}setSpreadMode(t){const a=this.state.spreadMode,s=this.coreState.core.document;if(!s)throw new Error("Document not loaded");a!==t&&(this.dispatch(r(t)),this.dispatchCoreAction(e.setPages(this.getSpreadPagesObjects(s.pages))),this.notifySpreadChange(t))}notifySpreadChange(e){this.spreadEmitter$.emit(e)}buildCapability(){return{onSpreadChange:this.spreadEmitter$.on,setSpreadMode:e=>this.setSpreadMode(e),getSpreadMode:()=>this.state.spreadMode,getSpreadPagesObjects:e=>this.getSpreadPagesObjects(e)}}async destroy(){this.spreadEmitter$.clear()}};s.id="spread";let d=s;const o="spread",i={id:o,name:"Spread Plugin",version:"1.0.0",provides:["spread"],requires:["loader"],optional:[],defaultConfig:{enabled:!0}},n={spreadMode:t.None},p={manifest:i,create:(e,t,a)=>new d(o,e,a),reducer:(e=n,t)=>t.type===a?{...e,spreadMode:t.payload}:e,initialState:n};exports.SPREAD_PLUGIN_ID=o,exports.SpreadMode=t,exports.SpreadPlugin=d,exports.SpreadPluginPackage=p,exports.manifest=i;
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/lib/types.ts","../src/lib/actions.ts","../src/lib/spread-plugin.ts","../src/lib/manifest.ts","../src/lib/reducer.ts","../src/lib/index.ts"],"sourcesContent":["import { BasePluginConfig, EventHook } from '@embedpdf/core';\nimport { PdfPageObject } from '@embedpdf/models';\n\nexport interface SpreadPluginConfig extends BasePluginConfig {\n defaultSpreadMode?: SpreadMode;\n}\n\nexport enum SpreadMode {\n None = 'none',\n Odd = 'odd',\n Even = 'even',\n}\n\nexport interface SpreadCapability {\n onSpreadChange: EventHook<SpreadMode>;\n setSpreadMode(mode: SpreadMode): void;\n getSpreadMode(): SpreadMode;\n getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];\n}\n\nexport interface SpreadState {\n spreadMode: SpreadMode;\n}\n","import { SpreadMode } from './types';\n\nexport const SET_SPREAD_MODE = 'SET_SPREAD_MODE';\n\nexport interface SetSpreadModeAction {\n type: typeof SET_SPREAD_MODE;\n payload: SpreadMode;\n}\n\nexport type SpreadAction = SetSpreadModeAction;\n\nexport function setSpreadMode(mode: SpreadMode): SetSpreadModeAction {\n return {\n type: SET_SPREAD_MODE,\n payload: mode,\n };\n}\n","import { BasePlugin, createEmitter, PluginRegistry, setPages } from '@embedpdf/core';\nimport { PdfDocumentObject, PdfPageObject } from '@embedpdf/models';\nimport { LoaderPlugin } from '@embedpdf/plugin-loader';\nimport { SpreadCapability, SpreadMode, SpreadPluginConfig, SpreadState } from './types';\nimport { setSpreadMode } from './actions';\nimport { SpreadAction } from './actions';\n\nexport class SpreadPlugin extends BasePlugin<\n SpreadPluginConfig,\n SpreadCapability,\n SpreadState,\n SpreadAction\n> {\n static readonly id = 'spread' as const;\n\n private readonly spreadEmitter$ = createEmitter<SpreadMode>();\n\n constructor(id: string, registry: PluginRegistry, cfg: SpreadPluginConfig) {\n super(id, registry);\n this.resetReady();\n this.dispatch(setSpreadMode(cfg.defaultSpreadMode ?? SpreadMode.None));\n const loaderPlugin = registry.getPlugin<LoaderPlugin>('loader');\n loaderPlugin!.provides().onDocumentLoaded((document) => this.documentLoaded(document));\n }\n\n async initialize(config: SpreadPluginConfig): Promise<void> {\n if (config.defaultSpreadMode) {\n this.dispatch(setSpreadMode(config.defaultSpreadMode));\n }\n }\n\n private documentLoaded(document: PdfDocumentObject): void {\n this.dispatchCoreAction(setPages(this.getSpreadPagesObjects(document.pages)));\n this.markReady();\n }\n\n getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][] {\n if (!pages.length) return [];\n\n switch (this.state.spreadMode) {\n case SpreadMode.None:\n return pages.map((page) => [page]);\n\n case SpreadMode.Odd:\n return Array.from({ length: Math.ceil(pages.length / 2) }, (_, i) =>\n pages.slice(i * 2, i * 2 + 2),\n );\n\n case SpreadMode.Even:\n return [\n [pages[0]],\n ...Array.from({ length: Math.ceil((pages.length - 1) / 2) }, (_, i) =>\n pages.slice(1 + i * 2, 1 + i * 2 + 2),\n ),\n ];\n\n default:\n return pages.map((page) => [page]);\n }\n }\n\n setSpreadMode(mode: SpreadMode): void {\n const currentMode = this.state.spreadMode;\n const document = this.coreState.core.document;\n if (!document) {\n throw new Error('Document not loaded');\n }\n if (currentMode !== mode) {\n this.dispatch(setSpreadMode(mode));\n this.dispatchCoreAction(setPages(this.getSpreadPagesObjects(document.pages)));\n this.notifySpreadChange(mode);\n }\n }\n\n private notifySpreadChange(spreadMode: SpreadMode): void {\n this.spreadEmitter$.emit(spreadMode);\n }\n\n protected buildCapability(): SpreadCapability {\n return {\n onSpreadChange: this.spreadEmitter$.on,\n setSpreadMode: (mode) => this.setSpreadMode(mode),\n getSpreadMode: () => this.state.spreadMode,\n getSpreadPagesObjects: (pages) => this.getSpreadPagesObjects(pages),\n };\n }\n\n async destroy(): Promise<void> {\n this.spreadEmitter$.clear();\n }\n}\n","import { PluginManifest } from '@embedpdf/core';\nimport { SpreadPluginConfig } from './types';\n\nexport const SPREAD_PLUGIN_ID = 'spread';\n\nexport const manifest: PluginManifest<SpreadPluginConfig> = {\n id: SPREAD_PLUGIN_ID,\n name: 'Spread Plugin',\n version: '1.0.0',\n provides: ['spread'],\n requires: ['loader'],\n optional: [],\n defaultConfig: {\n enabled: true,\n },\n};\n","import { Reducer } from '@embedpdf/core';\nimport { SpreadState, SpreadMode } from './types';\nimport { SET_SPREAD_MODE, SetSpreadModeAction } from './actions';\n\nexport const initialState: SpreadState = {\n spreadMode: SpreadMode.None,\n};\n\nexport const spreadReducer: Reducer<SpreadState, SetSpreadModeAction> = (\n state = initialState,\n action,\n) => {\n switch (action.type) {\n case SET_SPREAD_MODE:\n return {\n ...state,\n spreadMode: action.payload,\n };\n default:\n return state;\n }\n};\n","import { PluginPackage } from '@embedpdf/core';\nimport { SpreadPlugin } from './spread-plugin';\nimport { manifest, SPREAD_PLUGIN_ID } from './manifest';\nimport { SpreadPluginConfig, SpreadState } from './types';\nimport { spreadReducer, initialState } from './reducer';\nimport { SpreadAction } from './actions';\n\nexport const SpreadPluginPackage: PluginPackage<\n SpreadPlugin,\n SpreadPluginConfig,\n SpreadState,\n SpreadAction\n> = {\n manifest,\n create: (registry, _engine, config) => new SpreadPlugin(SPREAD_PLUGIN_ID, registry, config),\n reducer: spreadReducer,\n initialState,\n};\n\nexport * from './spread-plugin';\nexport * from './types';\nexport * from './manifest';\n"],"names":["SpreadMode","SET_SPREAD_MODE","setSpreadMode","mode","type","payload","_SpreadPlugin","BasePlugin","constructor","id","registry","cfg","super","this","spreadEmitter$","createEmitter","resetReady","dispatch","defaultSpreadMode","None","getPlugin","provides","onDocumentLoaded","document","documentLoaded","initialize","config","dispatchCoreAction","setPages","getSpreadPagesObjects","pages","markReady","length","state","spreadMode","map","page","Odd","Array","from","Math","ceil","_","i","slice","Even","currentMode","coreState","core","Error","notifySpreadChange","emit","buildCapability","onSpreadChange","on","getSpreadMode","destroy","clear","SpreadPlugin","SPREAD_PLUGIN_ID","manifest","name","version","requires","optional","defaultConfig","enabled","initialState","SpreadPluginPackage","create","_engine","reducer","action"],"mappings":"kHAOY,IAAAA,GAAAA,IACVA,EAAO,KAAA,OACPA,EAAM,IAAA,MACNA,EAAO,KAAA,OAHGA,IAAAA,GAAA,CAAA,GCLL,MAAMC,EAAkB,kBASxB,SAASC,EAAcC,GACrB,MAAA,CACLC,KAAMH,EACNI,QAASF,EAEb,CCTO,MAAMG,EAAN,cAA2BC,EAAAA,WAUhC,WAAAC,CAAYC,EAAYC,EAA0BC,GAChDC,MAAMH,EAAIC,GAHKG,KAAAC,eAAiBC,kBAIhCF,KAAKG,aACLH,KAAKI,SAASf,EAAcS,EAAIO,mBAAqBlB,EAAWmB,OAC3CT,EAASU,UAAwB,UACxCC,WAAWC,kBAAkBC,GAAaV,KAAKW,eAAeD,IAAS,CAGvF,gBAAME,CAAWC,GACXA,EAAOR,mBACTL,KAAKI,SAASf,EAAcwB,EAAOR,mBACrC,CAGM,cAAAM,CAAeD,GAChBV,KAAAc,mBAAmBC,WAASf,KAAKgB,sBAAsBN,EAASO,SACrEjB,KAAKkB,WAAU,CAGjB,qBAAAF,CAAsBC,GACpB,IAAKA,EAAME,OAAQ,MAAO,GAElB,OAAAnB,KAAKoB,MAAMC,YACjB,KAAKlC,EAAWmB,KACd,OAAOW,EAAMK,KAAKC,GAAS,CAACA,KAE9B,KAAKpC,EAAWqC,IACd,OAAOC,MAAMC,KAAK,CAAEP,OAAQQ,KAAKC,KAAKX,EAAME,OAAS,KAAM,CAACU,EAAGC,IAC7Db,EAAMc,MAAU,EAAJD,EAAW,EAAJA,EAAQ,KAG/B,KAAK3C,EAAW6C,KACP,MAAA,CACL,CAACf,EAAM,OACJQ,MAAMC,KAAK,CAAEP,OAAQQ,KAAKC,MAAMX,EAAME,OAAS,GAAK,KAAM,CAACU,EAAGC,IAC/Db,EAAMc,MAAM,EAAQ,EAAJD,EAAO,EAAQ,EAAJA,EAAQ,MAIzC,QACE,OAAOb,EAAMK,KAAKC,GAAS,CAACA,KAChC,CAGF,aAAAlC,CAAcC,GACN,MAAA2C,EAAcjC,KAAKoB,MAAMC,WACzBX,EAAWV,KAAKkC,UAAUC,KAAKzB,SACrC,IAAKA,EACG,MAAA,IAAI0B,MAAM,uBAEdH,IAAgB3C,IACbU,KAAAI,SAASf,EAAcC,IACvBU,KAAAc,mBAAmBC,WAASf,KAAKgB,sBAAsBN,EAASO,SACrEjB,KAAKqC,mBAAmB/C,GAC1B,CAGM,kBAAA+C,CAAmBhB,GACpBrB,KAAAC,eAAeqC,KAAKjB,EAAU,CAG3B,eAAAkB,GACD,MAAA,CACLC,eAAgBxC,KAAKC,eAAewC,GACpCpD,cAAgBC,GAASU,KAAKX,cAAcC,GAC5CoD,cAAe,IAAM1C,KAAKoB,MAAMC,WAChCL,sBAAwBC,GAAUjB,KAAKgB,sBAAsBC,GAC/D,CAGF,aAAM0B,GACJ3C,KAAKC,eAAe2C,OAAM,GA3E5BnD,EAAgBG,GAAK,SANhB,IAAMiD,EAANpD,ECJA,MAAMqD,EAAmB,SAEnBC,EAA+C,CAC1DnD,GAAIkD,EACJE,KAAM,gBACNC,QAAS,QACTzC,SAAU,CAAC,UACX0C,SAAU,CAAC,UACXC,SAAU,GACVC,cAAe,CACbC,SAAS,ICTAC,EAA4B,CACvCjC,WAAYlC,EAAWmB,MCEZiD,EAKT,CACFR,WACAS,OAAQ,CAAC3D,EAAU4D,EAAS5C,IAAW,IAAIgC,EAAaC,EAAkBjD,EAAUgB,GACpF6C,QDPsE,CACtEtC,EAAQkC,EACRK,IAEQA,EAAOpE,OACRH,EACI,IACFgC,EACHC,WAAYsC,EAAOnE,SAGd4B,ECHXkC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,47 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { PdfPageObject } from '@embedpdf/models';
|
|
3
|
-
|
|
4
|
-
interface SpreadPluginConfig extends BasePluginConfig {
|
|
5
|
-
defaultSpreadMode?: SpreadMode;
|
|
6
|
-
}
|
|
7
|
-
declare enum SpreadMode {
|
|
8
|
-
None = "none",
|
|
9
|
-
Odd = "odd",
|
|
10
|
-
Even = "even"
|
|
11
|
-
}
|
|
12
|
-
interface SpreadCapability {
|
|
13
|
-
onSpreadChange: EventHook<SpreadMode>;
|
|
14
|
-
setSpreadMode(mode: SpreadMode): void;
|
|
15
|
-
getSpreadMode(): SpreadMode;
|
|
16
|
-
getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];
|
|
17
|
-
}
|
|
18
|
-
interface SpreadState {
|
|
19
|
-
spreadMode: SpreadMode;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
declare const SET_SPREAD_MODE = "SET_SPREAD_MODE";
|
|
23
|
-
interface SetSpreadModeAction {
|
|
24
|
-
type: typeof SET_SPREAD_MODE;
|
|
25
|
-
payload: SpreadMode;
|
|
26
|
-
}
|
|
27
|
-
type SpreadAction = SetSpreadModeAction;
|
|
28
|
-
|
|
29
|
-
declare class SpreadPlugin extends BasePlugin<SpreadPluginConfig, SpreadCapability, SpreadState, SpreadAction> {
|
|
30
|
-
static readonly id: "spread";
|
|
31
|
-
private readonly spreadEmitter$;
|
|
32
|
-
constructor(id: string, registry: PluginRegistry, cfg: SpreadPluginConfig);
|
|
33
|
-
initialize(config: SpreadPluginConfig): Promise<void>;
|
|
34
|
-
private documentLoaded;
|
|
35
|
-
getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];
|
|
36
|
-
setSpreadMode(mode: SpreadMode): void;
|
|
37
|
-
private notifySpreadChange;
|
|
38
|
-
protected buildCapability(): SpreadCapability;
|
|
39
|
-
destroy(): Promise<void>;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
declare const SPREAD_PLUGIN_ID = "spread";
|
|
43
|
-
declare const manifest: PluginManifest<SpreadPluginConfig>;
|
|
44
|
-
|
|
45
|
-
declare const SpreadPluginPackage: PluginPackage<SpreadPlugin, SpreadPluginConfig, SpreadState, SpreadAction>;
|
|
46
|
-
|
|
47
|
-
export { SPREAD_PLUGIN_ID, type SpreadCapability, SpreadMode, SpreadPlugin, type SpreadPluginConfig, SpreadPluginPackage, type SpreadState, manifest };
|
|
1
|
+
export * from './lib';
|
package/dist/index.js
CHANGED
|
@@ -1,30 +1,23 @@
|
|
|
1
|
-
// src/lib/spread-plugin.ts
|
|
2
1
|
import { BasePlugin, createEmitter, setPages } from "@embedpdf/core";
|
|
3
|
-
|
|
4
|
-
// src/lib/types.ts
|
|
5
2
|
var SpreadMode = /* @__PURE__ */ ((SpreadMode2) => {
|
|
6
3
|
SpreadMode2["None"] = "none";
|
|
7
4
|
SpreadMode2["Odd"] = "odd";
|
|
8
5
|
SpreadMode2["Even"] = "even";
|
|
9
6
|
return SpreadMode2;
|
|
10
7
|
})(SpreadMode || {});
|
|
11
|
-
|
|
12
|
-
// src/lib/actions.ts
|
|
13
|
-
var SET_SPREAD_MODE = "SET_SPREAD_MODE";
|
|
8
|
+
const SET_SPREAD_MODE = "SET_SPREAD_MODE";
|
|
14
9
|
function setSpreadMode(mode) {
|
|
15
10
|
return {
|
|
16
11
|
type: SET_SPREAD_MODE,
|
|
17
12
|
payload: mode
|
|
18
13
|
};
|
|
19
14
|
}
|
|
20
|
-
|
|
21
|
-
// src/lib/spread-plugin.ts
|
|
22
|
-
var SpreadPlugin = class extends BasePlugin {
|
|
15
|
+
const _SpreadPlugin = class _SpreadPlugin extends BasePlugin {
|
|
23
16
|
constructor(id, registry, cfg) {
|
|
24
17
|
super(id, registry);
|
|
25
18
|
this.spreadEmitter$ = createEmitter();
|
|
26
19
|
this.resetReady();
|
|
27
|
-
this.dispatch(setSpreadMode(cfg.defaultSpreadMode ??
|
|
20
|
+
this.dispatch(setSpreadMode(cfg.defaultSpreadMode ?? SpreadMode.None));
|
|
28
21
|
const loaderPlugin = registry.getPlugin("loader");
|
|
29
22
|
loaderPlugin.provides().onDocumentLoaded((document) => this.documentLoaded(document));
|
|
30
23
|
}
|
|
@@ -40,14 +33,14 @@ var SpreadPlugin = class extends BasePlugin {
|
|
|
40
33
|
getSpreadPagesObjects(pages) {
|
|
41
34
|
if (!pages.length) return [];
|
|
42
35
|
switch (this.state.spreadMode) {
|
|
43
|
-
case
|
|
36
|
+
case SpreadMode.None:
|
|
44
37
|
return pages.map((page) => [page]);
|
|
45
|
-
case
|
|
38
|
+
case SpreadMode.Odd:
|
|
46
39
|
return Array.from(
|
|
47
40
|
{ length: Math.ceil(pages.length / 2) },
|
|
48
41
|
(_, i) => pages.slice(i * 2, i * 2 + 2)
|
|
49
42
|
);
|
|
50
|
-
case
|
|
43
|
+
case SpreadMode.Even:
|
|
51
44
|
return [
|
|
52
45
|
[pages[0]],
|
|
53
46
|
...Array.from(
|
|
@@ -86,11 +79,10 @@ var SpreadPlugin = class extends BasePlugin {
|
|
|
86
79
|
this.spreadEmitter$.clear();
|
|
87
80
|
}
|
|
88
81
|
};
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
var manifest = {
|
|
82
|
+
_SpreadPlugin.id = "spread";
|
|
83
|
+
let SpreadPlugin = _SpreadPlugin;
|
|
84
|
+
const SPREAD_PLUGIN_ID = "spread";
|
|
85
|
+
const manifest = {
|
|
94
86
|
id: SPREAD_PLUGIN_ID,
|
|
95
87
|
name: "Spread Plugin",
|
|
96
88
|
version: "1.0.0",
|
|
@@ -101,12 +93,10 @@ var manifest = {
|
|
|
101
93
|
enabled: true
|
|
102
94
|
}
|
|
103
95
|
};
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
var initialState = {
|
|
107
|
-
spreadMode: "none" /* None */
|
|
96
|
+
const initialState = {
|
|
97
|
+
spreadMode: SpreadMode.None
|
|
108
98
|
};
|
|
109
|
-
|
|
99
|
+
const spreadReducer = (state = initialState, action) => {
|
|
110
100
|
switch (action.type) {
|
|
111
101
|
case SET_SPREAD_MODE:
|
|
112
102
|
return {
|
|
@@ -117,9 +107,7 @@ var spreadReducer = (state = initialState, action) => {
|
|
|
117
107
|
return state;
|
|
118
108
|
}
|
|
119
109
|
};
|
|
120
|
-
|
|
121
|
-
// src/lib/index.ts
|
|
122
|
-
var SpreadPluginPackage = {
|
|
110
|
+
const SpreadPluginPackage = {
|
|
123
111
|
manifest,
|
|
124
112
|
create: (registry, _engine, config) => new SpreadPlugin(SPREAD_PLUGIN_ID, registry, config),
|
|
125
113
|
reducer: spreadReducer,
|
|
@@ -132,4 +120,4 @@ export {
|
|
|
132
120
|
SpreadPluginPackage,
|
|
133
121
|
manifest
|
|
134
122
|
};
|
|
135
|
-
//# sourceMappingURL=index.js.map
|
|
123
|
+
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/lib/types.ts","../src/lib/actions.ts","../src/lib/spread-plugin.ts","../src/lib/manifest.ts","../src/lib/reducer.ts","../src/lib/index.ts"],"sourcesContent":["import { BasePluginConfig, EventHook } from '@embedpdf/core';\nimport { PdfPageObject } from '@embedpdf/models';\n\nexport interface SpreadPluginConfig extends BasePluginConfig {\n defaultSpreadMode?: SpreadMode;\n}\n\nexport enum SpreadMode {\n None = 'none',\n Odd = 'odd',\n Even = 'even',\n}\n\nexport interface SpreadCapability {\n onSpreadChange: EventHook<SpreadMode>;\n setSpreadMode(mode: SpreadMode): void;\n getSpreadMode(): SpreadMode;\n getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];\n}\n\nexport interface SpreadState {\n spreadMode: SpreadMode;\n}\n","import { SpreadMode } from './types';\n\nexport const SET_SPREAD_MODE = 'SET_SPREAD_MODE';\n\nexport interface SetSpreadModeAction {\n type: typeof SET_SPREAD_MODE;\n payload: SpreadMode;\n}\n\nexport type SpreadAction = SetSpreadModeAction;\n\nexport function setSpreadMode(mode: SpreadMode): SetSpreadModeAction {\n return {\n type: SET_SPREAD_MODE,\n payload: mode,\n };\n}\n","import { BasePlugin, createEmitter, PluginRegistry, setPages } from '@embedpdf/core';\nimport { PdfDocumentObject, PdfPageObject } from '@embedpdf/models';\nimport { LoaderPlugin } from '@embedpdf/plugin-loader';\nimport { SpreadCapability, SpreadMode, SpreadPluginConfig, SpreadState } from './types';\nimport { setSpreadMode } from './actions';\nimport { SpreadAction } from './actions';\n\nexport class SpreadPlugin extends BasePlugin<\n SpreadPluginConfig,\n SpreadCapability,\n SpreadState,\n SpreadAction\n> {\n static readonly id = 'spread' as const;\n\n private readonly spreadEmitter$ = createEmitter<SpreadMode>();\n\n constructor(id: string, registry: PluginRegistry, cfg: SpreadPluginConfig) {\n super(id, registry);\n this.resetReady();\n this.dispatch(setSpreadMode(cfg.defaultSpreadMode ?? SpreadMode.None));\n const loaderPlugin = registry.getPlugin<LoaderPlugin>('loader');\n loaderPlugin!.provides().onDocumentLoaded((document) => this.documentLoaded(document));\n }\n\n async initialize(config: SpreadPluginConfig): Promise<void> {\n if (config.defaultSpreadMode) {\n this.dispatch(setSpreadMode(config.defaultSpreadMode));\n }\n }\n\n private documentLoaded(document: PdfDocumentObject): void {\n this.dispatchCoreAction(setPages(this.getSpreadPagesObjects(document.pages)));\n this.markReady();\n }\n\n getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][] {\n if (!pages.length) return [];\n\n switch (this.state.spreadMode) {\n case SpreadMode.None:\n return pages.map((page) => [page]);\n\n case SpreadMode.Odd:\n return Array.from({ length: Math.ceil(pages.length / 2) }, (_, i) =>\n pages.slice(i * 2, i * 2 + 2),\n );\n\n case SpreadMode.Even:\n return [\n [pages[0]],\n ...Array.from({ length: Math.ceil((pages.length - 1) / 2) }, (_, i) =>\n pages.slice(1 + i * 2, 1 + i * 2 + 2),\n ),\n ];\n\n default:\n return pages.map((page) => [page]);\n }\n }\n\n setSpreadMode(mode: SpreadMode): void {\n const currentMode = this.state.spreadMode;\n const document = this.coreState.core.document;\n if (!document) {\n throw new Error('Document not loaded');\n }\n if (currentMode !== mode) {\n this.dispatch(setSpreadMode(mode));\n this.dispatchCoreAction(setPages(this.getSpreadPagesObjects(document.pages)));\n this.notifySpreadChange(mode);\n }\n }\n\n private notifySpreadChange(spreadMode: SpreadMode): void {\n this.spreadEmitter$.emit(spreadMode);\n }\n\n protected buildCapability(): SpreadCapability {\n return {\n onSpreadChange: this.spreadEmitter$.on,\n setSpreadMode: (mode) => this.setSpreadMode(mode),\n getSpreadMode: () => this.state.spreadMode,\n getSpreadPagesObjects: (pages) => this.getSpreadPagesObjects(pages),\n };\n }\n\n async destroy(): Promise<void> {\n this.spreadEmitter$.clear();\n }\n}\n","import { PluginManifest } from '@embedpdf/core';\nimport { SpreadPluginConfig } from './types';\n\nexport const SPREAD_PLUGIN_ID = 'spread';\n\nexport const manifest: PluginManifest<SpreadPluginConfig> = {\n id: SPREAD_PLUGIN_ID,\n name: 'Spread Plugin',\n version: '1.0.0',\n provides: ['spread'],\n requires: ['loader'],\n optional: [],\n defaultConfig: {\n enabled: true,\n },\n};\n","import { Reducer } from '@embedpdf/core';\nimport { SpreadState, SpreadMode } from './types';\nimport { SET_SPREAD_MODE, SetSpreadModeAction } from './actions';\n\nexport const initialState: SpreadState = {\n spreadMode: SpreadMode.None,\n};\n\nexport const spreadReducer: Reducer<SpreadState, SetSpreadModeAction> = (\n state = initialState,\n action,\n) => {\n switch (action.type) {\n case SET_SPREAD_MODE:\n return {\n ...state,\n spreadMode: action.payload,\n };\n default:\n return state;\n }\n};\n","import { PluginPackage } from '@embedpdf/core';\nimport { SpreadPlugin } from './spread-plugin';\nimport { manifest, SPREAD_PLUGIN_ID } from './manifest';\nimport { SpreadPluginConfig, SpreadState } from './types';\nimport { spreadReducer, initialState } from './reducer';\nimport { SpreadAction } from './actions';\n\nexport const SpreadPluginPackage: PluginPackage<\n SpreadPlugin,\n SpreadPluginConfig,\n SpreadState,\n SpreadAction\n> = {\n manifest,\n create: (registry, _engine, config) => new SpreadPlugin(SPREAD_PLUGIN_ID, registry, config),\n reducer: spreadReducer,\n initialState,\n};\n\nexport * from './spread-plugin';\nexport * from './types';\nexport * from './manifest';\n"],"names":["SpreadMode"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SpreadMode } from './types';
|
|
2
|
+
export declare const SET_SPREAD_MODE = "SET_SPREAD_MODE";
|
|
3
|
+
export interface SetSpreadModeAction {
|
|
4
|
+
type: typeof SET_SPREAD_MODE;
|
|
5
|
+
payload: SpreadMode;
|
|
6
|
+
}
|
|
7
|
+
export type SpreadAction = SetSpreadModeAction;
|
|
8
|
+
export declare function setSpreadMode(mode: SpreadMode): SetSpreadModeAction;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PluginPackage } from '@embedpdf/core';
|
|
2
|
+
import { SpreadPlugin } from './spread-plugin';
|
|
3
|
+
import { SpreadPluginConfig, SpreadState } from './types';
|
|
4
|
+
import { SpreadAction } from './actions';
|
|
5
|
+
export declare const SpreadPluginPackage: PluginPackage<SpreadPlugin, SpreadPluginConfig, SpreadState, SpreadAction>;
|
|
6
|
+
export * from './spread-plugin';
|
|
7
|
+
export * from './types';
|
|
8
|
+
export * from './manifest';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BasePlugin, PluginRegistry } from '@embedpdf/core';
|
|
2
|
+
import { PdfPageObject } from '@embedpdf/models';
|
|
3
|
+
import { SpreadCapability, SpreadMode, SpreadPluginConfig, SpreadState } from './types';
|
|
4
|
+
import { SpreadAction } from './actions';
|
|
5
|
+
export declare class SpreadPlugin extends BasePlugin<SpreadPluginConfig, SpreadCapability, SpreadState, SpreadAction> {
|
|
6
|
+
static readonly id: "spread";
|
|
7
|
+
private readonly spreadEmitter$;
|
|
8
|
+
constructor(id: string, registry: PluginRegistry, cfg: SpreadPluginConfig);
|
|
9
|
+
initialize(config: SpreadPluginConfig): Promise<void>;
|
|
10
|
+
private documentLoaded;
|
|
11
|
+
getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];
|
|
12
|
+
setSpreadMode(mode: SpreadMode): void;
|
|
13
|
+
private notifySpreadChange;
|
|
14
|
+
protected buildCapability(): SpreadCapability;
|
|
15
|
+
destroy(): Promise<void>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BasePluginConfig, EventHook } from '@embedpdf/core';
|
|
2
|
+
import { PdfPageObject } from '@embedpdf/models';
|
|
3
|
+
export interface SpreadPluginConfig extends BasePluginConfig {
|
|
4
|
+
defaultSpreadMode?: SpreadMode;
|
|
5
|
+
}
|
|
6
|
+
export declare enum SpreadMode {
|
|
7
|
+
None = "none",
|
|
8
|
+
Odd = "odd",
|
|
9
|
+
Even = "even"
|
|
10
|
+
}
|
|
11
|
+
export interface SpreadCapability {
|
|
12
|
+
onSpreadChange: EventHook<SpreadMode>;
|
|
13
|
+
setSpreadMode(mode: SpreadMode): void;
|
|
14
|
+
getSpreadMode(): SpreadMode;
|
|
15
|
+
getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];
|
|
16
|
+
}
|
|
17
|
+
export interface SpreadState {
|
|
18
|
+
spreadMode: SpreadMode;
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@embedpdf/core/preact';
|
package/dist/preact/index.cjs
CHANGED
|
@@ -1,54 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/preact/index.ts
|
|
21
|
-
var preact_exports = {};
|
|
22
|
-
__export(preact_exports, {
|
|
23
|
-
useSpread: () => useSpread,
|
|
24
|
-
useSpreadCapability: () => useSpreadCapability,
|
|
25
|
-
useSpreadPlugin: () => useSpreadPlugin
|
|
26
|
-
});
|
|
27
|
-
module.exports = __toCommonJS(preact_exports);
|
|
28
|
-
|
|
29
|
-
// src/preact/hooks/use-spread.ts
|
|
30
|
-
var import_preact = require("@embedpdf/core/preact");
|
|
31
|
-
var import_plugin_spread = require("@embedpdf/plugin-spread");
|
|
32
|
-
var import_hooks = require("preact/hooks");
|
|
33
|
-
var useSpreadPlugin = () => (0, import_preact.usePlugin)(import_plugin_spread.SpreadPlugin.id);
|
|
34
|
-
var useSpreadCapability = () => (0, import_preact.useCapability)(import_plugin_spread.SpreadPlugin.id);
|
|
35
|
-
var useSpread = () => {
|
|
36
|
-
const { provides: spreadProvider } = useSpreadCapability();
|
|
37
|
-
const [spreadMode, setSpreadMode] = (0, import_hooks.useState)(import_plugin_spread.SpreadMode.None);
|
|
38
|
-
(0, import_hooks.useEffect)(() => {
|
|
39
|
-
return spreadProvider?.onSpreadChange((spreadMode2) => {
|
|
40
|
-
setSpreadMode(spreadMode2);
|
|
41
|
-
});
|
|
42
|
-
}, [spreadProvider]);
|
|
43
|
-
return {
|
|
44
|
-
provides: spreadProvider,
|
|
45
|
-
spreadMode
|
|
46
|
-
};
|
|
47
|
-
};
|
|
48
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
49
|
-
0 && (module.exports = {
|
|
50
|
-
useSpread,
|
|
51
|
-
useSpreadCapability,
|
|
52
|
-
useSpreadPlugin
|
|
53
|
-
});
|
|
54
|
-
//# sourceMappingURL=index.cjs.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/core/preact"),r=require("@embedpdf/plugin-spread");require("preact");const p=require("preact/hooks"),d=()=>e.useCapability(r.SpreadPlugin.id);exports.useSpread=()=>{const{provides:e}=d(),[t,i]=p.useState(r.SpreadMode.None);return p.useEffect((()=>null==e?void 0:e.onSpreadChange((e=>{i(e)}))),[e]),{provides:e,spreadMode:t}},exports.useSpreadCapability=d,exports.useSpreadPlugin=()=>e.usePlugin(r.SpreadPlugin.id);
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../src/shared/hooks/use-spread.ts"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { SpreadMode, SpreadPlugin } from '@embedpdf/plugin-spread';\nimport { useEffect, useState } from '@framework';\n\nexport const useSpreadPlugin = () => usePlugin<SpreadPlugin>(SpreadPlugin.id);\nexport const useSpreadCapability = () => useCapability<SpreadPlugin>(SpreadPlugin.id);\n\nexport const useSpread = () => {\n const { provides: spreadProvider } = useSpreadCapability();\n const [spreadMode, setSpreadMode] = useState<SpreadMode>(SpreadMode.None);\n\n useEffect(() => {\n return spreadProvider?.onSpreadChange((spreadMode) => {\n setSpreadMode(spreadMode);\n });\n }, [spreadProvider]);\n\n return {\n provides: spreadProvider,\n spreadMode,\n };\n};\n"],"names":["useSpreadCapability","useCapability","SpreadPlugin","id","provides","spreadProvider","spreadMode","setSpreadMode","useState","SpreadMode","None","useEffect","onSpreadChange","usePlugin"],"mappings":"gNAKaA,EAAsB,IAAMC,gBAA4BC,EAAAA,aAAaC,sBAEzD,KACvB,MAAQC,SAAUC,GAAmBL,KAC9BM,EAAYC,GAAiBC,EAAAA,SAAqBC,EAAAA,WAAWC,MAQ7D,OANPC,EAAAA,WAAU,IACD,MAAAN,OAAA,EAAAA,EAAgBO,gBAAgBN,IACrCC,EAAcD,EAAU,KAEzB,CAACD,IAEG,CACLD,SAAUC,EACVC,aACF,wDAhB6B,IAAMO,YAAwBX,EAAAA,aAAaC"}
|
package/dist/preact/index.d.ts
CHANGED
|
@@ -1,19 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { SpreadPlugin, SpreadMode } from '@embedpdf/plugin-spread';
|
|
3
|
-
|
|
4
|
-
declare const useSpreadPlugin: () => {
|
|
5
|
-
plugin: SpreadPlugin | null;
|
|
6
|
-
isLoading: boolean;
|
|
7
|
-
ready: Promise<void>;
|
|
8
|
-
};
|
|
9
|
-
declare const useSpreadCapability: () => {
|
|
10
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
11
|
-
isLoading: boolean;
|
|
12
|
-
ready: Promise<void>;
|
|
13
|
-
};
|
|
14
|
-
declare const useSpread: () => {
|
|
15
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
16
|
-
spreadMode: SpreadMode;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export { useSpread, useSpreadCapability, useSpreadPlugin };
|
|
1
|
+
export * from '../shared-preact';
|
package/dist/preact/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { usePlugin, useCapability } from "@embedpdf/core/preact";
|
|
2
|
+
import { SpreadPlugin, SpreadMode } from "@embedpdf/plugin-spread";
|
|
3
|
+
import "preact";
|
|
4
|
+
import { useState, useEffect } from "preact/hooks";
|
|
5
|
+
const useSpreadPlugin = () => usePlugin(SpreadPlugin.id);
|
|
6
|
+
const useSpreadCapability = () => useCapability(SpreadPlugin.id);
|
|
7
|
+
const useSpread = () => {
|
|
8
8
|
const { provides: spreadProvider } = useSpreadCapability();
|
|
9
9
|
const [spreadMode, setSpreadMode] = useState(SpreadMode.None);
|
|
10
10
|
useEffect(() => {
|
|
11
|
-
return spreadProvider
|
|
11
|
+
return spreadProvider == null ? void 0 : spreadProvider.onSpreadChange((spreadMode2) => {
|
|
12
12
|
setSpreadMode(spreadMode2);
|
|
13
13
|
});
|
|
14
14
|
}, [spreadProvider]);
|
|
@@ -22,4 +22,4 @@ export {
|
|
|
22
22
|
useSpreadCapability,
|
|
23
23
|
useSpreadPlugin
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=index.js.map
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
package/dist/preact/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/shared/hooks/use-spread.ts"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { SpreadMode, SpreadPlugin } from '@embedpdf/plugin-spread';\nimport { useEffect, useState } from '@framework';\n\nexport const useSpreadPlugin = () => usePlugin<SpreadPlugin>(SpreadPlugin.id);\nexport const useSpreadCapability = () => useCapability<SpreadPlugin>(SpreadPlugin.id);\n\nexport const useSpread = () => {\n const { provides: spreadProvider } = useSpreadCapability();\n const [spreadMode, setSpreadMode] = useState<SpreadMode>(SpreadMode.None);\n\n useEffect(() => {\n return spreadProvider?.onSpreadChange((spreadMode) => {\n setSpreadMode(spreadMode);\n });\n }, [spreadProvider]);\n\n return {\n provides: spreadProvider,\n spreadMode,\n };\n};\n"],"names":["spreadMode"],"mappings":";;;;AAIO,MAAM,kBAAkB,MAAM,UAAwB,aAAa,EAAE;AACrE,MAAM,sBAAsB,MAAM,cAA4B,aAAa,EAAE;AAE7E,MAAM,YAAY,MAAM;AAC7B,QAAM,EAAE,UAAU,eAAe,IAAI,oBAAoB;AACzD,QAAM,CAAC,YAAY,aAAa,IAAI,SAAqB,WAAW,IAAI;AAExE,YAAU,MAAM;AACP,WAAA,iDAAgB,eAAe,CAACA,gBAAe;AACpD,oBAAcA,WAAU;AAAA,IAAA;AAAA,EACzB,GACA,CAAC,cAAc,CAAC;AAEZ,SAAA;AAAA,IACL,UAAU;AAAA,IACV;AAAA,EACF;AACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useEffect, useState } from 'react';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@embedpdf/core/react';
|
package/dist/react/index.cjs
CHANGED
|
@@ -1,54 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/react/index.ts
|
|
21
|
-
var react_exports = {};
|
|
22
|
-
__export(react_exports, {
|
|
23
|
-
useSpread: () => useSpread,
|
|
24
|
-
useSpreadCapability: () => useSpreadCapability,
|
|
25
|
-
useSpreadPlugin: () => useSpreadPlugin
|
|
26
|
-
});
|
|
27
|
-
module.exports = __toCommonJS(react_exports);
|
|
28
|
-
|
|
29
|
-
// src/react/hooks/use-spread.ts
|
|
30
|
-
var import_react = require("@embedpdf/core/react");
|
|
31
|
-
var import_plugin_spread = require("@embedpdf/plugin-spread");
|
|
32
|
-
var import_react2 = require("react");
|
|
33
|
-
var useSpreadPlugin = () => (0, import_react.usePlugin)(import_plugin_spread.SpreadPlugin.id);
|
|
34
|
-
var useSpreadCapability = () => (0, import_react.useCapability)(import_plugin_spread.SpreadPlugin.id);
|
|
35
|
-
var useSpread = () => {
|
|
36
|
-
const { provides: spreadProvider } = useSpreadCapability();
|
|
37
|
-
const [spreadMode, setSpreadMode] = (0, import_react2.useState)(import_plugin_spread.SpreadMode.None);
|
|
38
|
-
(0, import_react2.useEffect)(() => {
|
|
39
|
-
return spreadProvider?.onSpreadChange((spreadMode2) => {
|
|
40
|
-
setSpreadMode(spreadMode2);
|
|
41
|
-
});
|
|
42
|
-
}, [spreadProvider]);
|
|
43
|
-
return {
|
|
44
|
-
provides: spreadProvider,
|
|
45
|
-
spreadMode
|
|
46
|
-
};
|
|
47
|
-
};
|
|
48
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
49
|
-
0 && (module.exports = {
|
|
50
|
-
useSpread,
|
|
51
|
-
useSpreadCapability,
|
|
52
|
-
useSpreadPlugin
|
|
53
|
-
});
|
|
54
|
-
//# sourceMappingURL=index.cjs.map
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@embedpdf/core/react"),r=require("@embedpdf/plugin-spread"),d=require("react"),p=()=>e.useCapability(r.SpreadPlugin.id);exports.useSpread=()=>{const{provides:e}=p(),[i,t]=d.useState(r.SpreadMode.None);return d.useEffect((()=>null==e?void 0:e.onSpreadChange((e=>{t(e)}))),[e]),{provides:e,spreadMode:i}},exports.useSpreadCapability=p,exports.useSpreadPlugin=()=>e.usePlugin(r.SpreadPlugin.id);
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
package/dist/react/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../src/shared/hooks/use-spread.ts"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { SpreadMode, SpreadPlugin } from '@embedpdf/plugin-spread';\nimport { useEffect, useState } from '@framework';\n\nexport const useSpreadPlugin = () => usePlugin<SpreadPlugin>(SpreadPlugin.id);\nexport const useSpreadCapability = () => useCapability<SpreadPlugin>(SpreadPlugin.id);\n\nexport const useSpread = () => {\n const { provides: spreadProvider } = useSpreadCapability();\n const [spreadMode, setSpreadMode] = useState<SpreadMode>(SpreadMode.None);\n\n useEffect(() => {\n return spreadProvider?.onSpreadChange((spreadMode) => {\n setSpreadMode(spreadMode);\n });\n }, [spreadProvider]);\n\n return {\n provides: spreadProvider,\n spreadMode,\n };\n};\n"],"names":["useSpreadCapability","useCapability","SpreadPlugin","id","provides","spreadProvider","spreadMode","setSpreadMode","useState","SpreadMode","None","useEffect","onSpreadChange","usePlugin"],"mappings":"gLAKaA,EAAsB,IAAMC,gBAA4BC,EAAAA,aAAaC,sBAEzD,KACvB,MAAQC,SAAUC,GAAmBL,KAC9BM,EAAYC,GAAiBC,EAAAA,SAAqBC,EAAAA,WAAWC,MAQ7D,OANPC,EAAAA,WAAU,IACD,MAAAN,OAAA,EAAAA,EAAgBO,gBAAgBN,IACrCC,EAAcD,EAAU,KAEzB,CAACD,IAEG,CACLD,SAAUC,EACVC,aACF,wDAhB6B,IAAMO,YAAwBX,EAAAA,aAAaC"}
|
package/dist/react/index.d.ts
CHANGED
|
@@ -1,19 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { SpreadPlugin, SpreadMode } from '@embedpdf/plugin-spread';
|
|
3
|
-
|
|
4
|
-
declare const useSpreadPlugin: () => {
|
|
5
|
-
plugin: SpreadPlugin | null;
|
|
6
|
-
isLoading: boolean;
|
|
7
|
-
ready: Promise<void>;
|
|
8
|
-
};
|
|
9
|
-
declare const useSpreadCapability: () => {
|
|
10
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
11
|
-
isLoading: boolean;
|
|
12
|
-
ready: Promise<void>;
|
|
13
|
-
};
|
|
14
|
-
declare const useSpread: () => {
|
|
15
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
16
|
-
spreadMode: SpreadMode;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export { useSpread, useSpreadCapability, useSpreadPlugin };
|
|
1
|
+
export * from '../shared-react';
|
package/dist/react/index.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var useSpread = () => {
|
|
1
|
+
import { usePlugin, useCapability } from "@embedpdf/core/react";
|
|
2
|
+
import { SpreadPlugin, SpreadMode } from "@embedpdf/plugin-spread";
|
|
3
|
+
import { useState, useEffect } from "react";
|
|
4
|
+
const useSpreadPlugin = () => usePlugin(SpreadPlugin.id);
|
|
5
|
+
const useSpreadCapability = () => useCapability(SpreadPlugin.id);
|
|
6
|
+
const useSpread = () => {
|
|
8
7
|
const { provides: spreadProvider } = useSpreadCapability();
|
|
9
8
|
const [spreadMode, setSpreadMode] = useState(SpreadMode.None);
|
|
10
9
|
useEffect(() => {
|
|
11
|
-
return spreadProvider
|
|
10
|
+
return spreadProvider == null ? void 0 : spreadProvider.onSpreadChange((spreadMode2) => {
|
|
12
11
|
setSpreadMode(spreadMode2);
|
|
13
12
|
});
|
|
14
13
|
}, [spreadProvider]);
|
|
@@ -22,4 +21,4 @@ export {
|
|
|
22
21
|
useSpreadCapability,
|
|
23
22
|
useSpreadPlugin
|
|
24
23
|
};
|
|
25
|
-
//# sourceMappingURL=index.js.map
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
package/dist/react/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/shared/hooks/use-spread.ts"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/@framework';\nimport { SpreadMode, SpreadPlugin } from '@embedpdf/plugin-spread';\nimport { useEffect, useState } from '@framework';\n\nexport const useSpreadPlugin = () => usePlugin<SpreadPlugin>(SpreadPlugin.id);\nexport const useSpreadCapability = () => useCapability<SpreadPlugin>(SpreadPlugin.id);\n\nexport const useSpread = () => {\n const { provides: spreadProvider } = useSpreadCapability();\n const [spreadMode, setSpreadMode] = useState<SpreadMode>(SpreadMode.None);\n\n useEffect(() => {\n return spreadProvider?.onSpreadChange((spreadMode) => {\n setSpreadMode(spreadMode);\n });\n }, [spreadProvider]);\n\n return {\n provides: spreadProvider,\n spreadMode,\n };\n};\n"],"names":["spreadMode"],"mappings":";;;AAIO,MAAM,kBAAkB,MAAM,UAAwB,aAAa,EAAE;AACrE,MAAM,sBAAsB,MAAM,cAA4B,aAAa,EAAE;AAE7E,MAAM,YAAY,MAAM;AAC7B,QAAM,EAAE,UAAU,eAAe,IAAI,oBAAoB;AACzD,QAAM,CAAC,YAAY,aAAa,IAAI,SAAqB,WAAW,IAAI;AAExE,YAAU,MAAM;AACP,WAAA,iDAAgB,eAAe,CAACA,gBAAe;AACpD,oBAAcA,WAAU;AAAA,IAAA;AAAA,EACzB,GACA,CAAC,cAAc,CAAC;AAEZ,SAAA;AAAA,IACL,UAAU;AAAA,IACV;AAAA,EACF;AACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './use-spread';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SpreadMode, SpreadPlugin } from '../../lib/index.ts';
|
|
2
|
+
export declare const useSpreadPlugin: () => {
|
|
3
|
+
plugin: SpreadPlugin | null;
|
|
4
|
+
isLoading: boolean;
|
|
5
|
+
ready: Promise<void>;
|
|
6
|
+
};
|
|
7
|
+
export declare const useSpreadCapability: () => {
|
|
8
|
+
provides: Readonly<import('../../lib/index.ts').SpreadCapability> | null;
|
|
9
|
+
isLoading: boolean;
|
|
10
|
+
ready: Promise<void>;
|
|
11
|
+
};
|
|
12
|
+
export declare const useSpread: () => {
|
|
13
|
+
provides: Readonly<import('../../lib/index.ts').SpreadCapability> | null;
|
|
14
|
+
spreadMode: SpreadMode;
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './hooks';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './use-spread';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SpreadMode, SpreadPlugin } from '../../lib/index.ts';
|
|
2
|
+
export declare const useSpreadPlugin: () => {
|
|
3
|
+
plugin: SpreadPlugin | null;
|
|
4
|
+
isLoading: boolean;
|
|
5
|
+
ready: Promise<void>;
|
|
6
|
+
};
|
|
7
|
+
export declare const useSpreadCapability: () => {
|
|
8
|
+
provides: Readonly<import('../../lib/index.ts').SpreadCapability> | null;
|
|
9
|
+
isLoading: boolean;
|
|
10
|
+
ready: Promise<void>;
|
|
11
|
+
};
|
|
12
|
+
export declare const useSpread: () => {
|
|
13
|
+
provides: Readonly<import('../../lib/index.ts').SpreadCapability> | null;
|
|
14
|
+
spreadMode: SpreadMode;
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './hooks';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@embedpdf/plugin-spread",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.cjs",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -23,19 +23,21 @@
|
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@embedpdf/models": "1.0.
|
|
27
|
-
"@embedpdf/plugin-loader": "1.0.11"
|
|
26
|
+
"@embedpdf/models": "1.0.13"
|
|
28
27
|
},
|
|
29
28
|
"devDependencies": {
|
|
30
29
|
"@types/react": "^18.2.0",
|
|
31
|
-
"
|
|
32
|
-
"
|
|
30
|
+
"typescript": "^5.0.0",
|
|
31
|
+
"@embedpdf/build": "1.0.0",
|
|
32
|
+
"@embedpdf/plugin-loader": "1.0.13",
|
|
33
|
+
"@embedpdf/core": "1.0.13"
|
|
33
34
|
},
|
|
34
35
|
"peerDependencies": {
|
|
35
36
|
"react": ">=16.8.0",
|
|
36
37
|
"react-dom": ">=16.8.0",
|
|
37
38
|
"preact": "^10.26.4",
|
|
38
|
-
"@embedpdf/core": "1.0.
|
|
39
|
+
"@embedpdf/core": "1.0.13",
|
|
40
|
+
"@embedpdf/plugin-loader": "1.0.13"
|
|
39
41
|
},
|
|
40
42
|
"files": [
|
|
41
43
|
"dist",
|
|
@@ -54,11 +56,12 @@
|
|
|
54
56
|
"access": "public"
|
|
55
57
|
},
|
|
56
58
|
"scripts": {
|
|
57
|
-
"build": "
|
|
58
|
-
"build:
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
59
|
+
"build:base": "vite build --mode base",
|
|
60
|
+
"build:react": "vite build --mode react",
|
|
61
|
+
"build:preact": "vite build --mode preact",
|
|
62
|
+
"build": "pnpm run clean && concurrently -c auto -n base,react,preact \"vite build --mode base\" \"vite build --mode react\" \"vite build --mode preact\"",
|
|
63
|
+
"clean": "rimraf dist",
|
|
64
|
+
"lint": "eslint src --color",
|
|
65
|
+
"lint:fix": "eslint src --color --fix"
|
|
63
66
|
}
|
|
64
67
|
}
|
package/dist/index.d.cts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { BasePluginConfig, EventHook, BasePlugin, PluginRegistry, PluginManifest, PluginPackage } from '@embedpdf/core';
|
|
2
|
-
import { PdfPageObject } from '@embedpdf/models';
|
|
3
|
-
|
|
4
|
-
interface SpreadPluginConfig extends BasePluginConfig {
|
|
5
|
-
defaultSpreadMode?: SpreadMode;
|
|
6
|
-
}
|
|
7
|
-
declare enum SpreadMode {
|
|
8
|
-
None = "none",
|
|
9
|
-
Odd = "odd",
|
|
10
|
-
Even = "even"
|
|
11
|
-
}
|
|
12
|
-
interface SpreadCapability {
|
|
13
|
-
onSpreadChange: EventHook<SpreadMode>;
|
|
14
|
-
setSpreadMode(mode: SpreadMode): void;
|
|
15
|
-
getSpreadMode(): SpreadMode;
|
|
16
|
-
getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];
|
|
17
|
-
}
|
|
18
|
-
interface SpreadState {
|
|
19
|
-
spreadMode: SpreadMode;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
declare const SET_SPREAD_MODE = "SET_SPREAD_MODE";
|
|
23
|
-
interface SetSpreadModeAction {
|
|
24
|
-
type: typeof SET_SPREAD_MODE;
|
|
25
|
-
payload: SpreadMode;
|
|
26
|
-
}
|
|
27
|
-
type SpreadAction = SetSpreadModeAction;
|
|
28
|
-
|
|
29
|
-
declare class SpreadPlugin extends BasePlugin<SpreadPluginConfig, SpreadCapability, SpreadState, SpreadAction> {
|
|
30
|
-
static readonly id: "spread";
|
|
31
|
-
private readonly spreadEmitter$;
|
|
32
|
-
constructor(id: string, registry: PluginRegistry, cfg: SpreadPluginConfig);
|
|
33
|
-
initialize(config: SpreadPluginConfig): Promise<void>;
|
|
34
|
-
private documentLoaded;
|
|
35
|
-
getSpreadPagesObjects(pages: PdfPageObject[]): PdfPageObject[][];
|
|
36
|
-
setSpreadMode(mode: SpreadMode): void;
|
|
37
|
-
private notifySpreadChange;
|
|
38
|
-
protected buildCapability(): SpreadCapability;
|
|
39
|
-
destroy(): Promise<void>;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
declare const SPREAD_PLUGIN_ID = "spread";
|
|
43
|
-
declare const manifest: PluginManifest<SpreadPluginConfig>;
|
|
44
|
-
|
|
45
|
-
declare const SpreadPluginPackage: PluginPackage<SpreadPlugin, SpreadPluginConfig, SpreadState, SpreadAction>;
|
|
46
|
-
|
|
47
|
-
export { SPREAD_PLUGIN_ID, type SpreadCapability, SpreadMode, SpreadPlugin, type SpreadPluginConfig, SpreadPluginPackage, type SpreadState, manifest };
|
package/dist/preact/index.d.cts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import * as _embedpdf_plugin_spread from '@embedpdf/plugin-spread';
|
|
2
|
-
import { SpreadPlugin, SpreadMode } from '@embedpdf/plugin-spread';
|
|
3
|
-
|
|
4
|
-
declare const useSpreadPlugin: () => {
|
|
5
|
-
plugin: SpreadPlugin | null;
|
|
6
|
-
isLoading: boolean;
|
|
7
|
-
ready: Promise<void>;
|
|
8
|
-
};
|
|
9
|
-
declare const useSpreadCapability: () => {
|
|
10
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
11
|
-
isLoading: boolean;
|
|
12
|
-
ready: Promise<void>;
|
|
13
|
-
};
|
|
14
|
-
declare const useSpread: () => {
|
|
15
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
16
|
-
spreadMode: SpreadMode;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export { useSpread, useSpreadCapability, useSpreadPlugin };
|
package/dist/react/index.d.cts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import * as _embedpdf_plugin_spread from '@embedpdf/plugin-spread';
|
|
2
|
-
import { SpreadPlugin, SpreadMode } from '@embedpdf/plugin-spread';
|
|
3
|
-
|
|
4
|
-
declare const useSpreadPlugin: () => {
|
|
5
|
-
plugin: SpreadPlugin | null;
|
|
6
|
-
isLoading: boolean;
|
|
7
|
-
ready: Promise<void>;
|
|
8
|
-
};
|
|
9
|
-
declare const useSpreadCapability: () => {
|
|
10
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
11
|
-
isLoading: boolean;
|
|
12
|
-
ready: Promise<void>;
|
|
13
|
-
};
|
|
14
|
-
declare const useSpread: () => {
|
|
15
|
-
provides: Readonly<_embedpdf_plugin_spread.SpreadCapability> | null;
|
|
16
|
-
spreadMode: SpreadMode;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export { useSpread, useSpreadCapability, useSpreadPlugin };
|