@embedpdf/plugin-viewport 1.3.16 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ export * from './viewport';
@@ -0,0 +1,6 @@
1
+ import { ReactNode, HTMLAttributes } from '../../react/adapter.ts';
2
+ type ViewportProps = HTMLAttributes<HTMLDivElement> & {
3
+ children: ReactNode;
4
+ };
5
+ export declare function Viewport({ children, ...props }: ViewportProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './use-viewport';
2
+ export * from './use-viewport-ref';
@@ -0,0 +1 @@
1
+ export declare function useViewportRef(): import('react').RefObject<HTMLDivElement>;
@@ -0,0 +1,12 @@
1
+ import { ScrollActivity, ViewportPlugin } from '../../index.ts';
2
+ export declare const useViewportPlugin: () => {
3
+ plugin: ViewportPlugin | null;
4
+ isLoading: boolean;
5
+ ready: Promise<void>;
6
+ };
7
+ export declare const useViewportCapability: () => {
8
+ provides: Readonly<import('../../index.ts').ViewportCapability> | null;
9
+ isLoading: boolean;
10
+ ready: Promise<void>;
11
+ };
12
+ export declare const useViewportScrollActivity: () => ScrollActivity;
@@ -0,0 +1,3 @@
1
+ export * from './components';
2
+ export * from './hooks';
3
+ export * from '../index.ts';
@@ -0,0 +1,9 @@
1
+ import { HTMLAttributes } from 'svelte/elements';
2
+ import { Snippet } from 'svelte';
3
+ type ViewportProps = HTMLAttributes<HTMLDivElement> & {
4
+ children: Snippet;
5
+ class?: string;
6
+ };
7
+ declare const Viewport: import('svelte', { with: { "resolution-mode": "import" } }).Component<ViewportProps, {}, "">;
8
+ type Viewport = ReturnType<typeof Viewport>;
9
+ export default Viewport;
@@ -0,0 +1 @@
1
+ export { default as Viewport } from './Viewport.svelte';
@@ -0,0 +1,2 @@
1
+ export * from './use-viewport';
2
+ export * from './use-viewport-ref.svelte';
@@ -0,0 +1,3 @@
1
+ export declare function useViewportRef(): {
2
+ containerRef: HTMLDivElement | null;
3
+ };
@@ -0,0 +1,11 @@
1
+ import { ViewportPlugin } from '../../lib/index.ts';
2
+ export declare const useViewportPlugin: () => {
3
+ plugin: ViewportPlugin | null;
4
+ isLoading: boolean;
5
+ ready: Promise<void>;
6
+ };
7
+ export declare const useViewportCapability: () => {
8
+ provides: Readonly<import('../../lib/index.ts').ViewportCapability> | null;
9
+ isLoading: boolean;
10
+ ready: Promise<void>;
11
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),require("svelte/internal/disclose-version");const e=require("svelte/internal/client"),t=require("@embedpdf/core/svelte"),r=require("@embedpdf/plugin-viewport");function i(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const r in e)if("default"!==r){const i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:()=>e[r]})}return t.default=e,Object.freeze(t)}const o=i(e),l=()=>t.usePlugin(r.ViewportPlugin.id),n=()=>t.useCapability(r.ViewportPlugin.id);function s(){const{plugin:e}=l();let t=o.state(null);return o.user_pre_effect((()=>{if(!e)return;const r=o.get(t);if(!r)return;e.registerBoundingRectProvider((()=>{const e=r.getBoundingClientRect();return{origin:{x:e.left,y:e.top},size:{width:e.width,height:e.height}}}));const i=()=>{null==e||e.setViewportScrollMetrics({scrollTop:r.scrollTop,scrollLeft:r.scrollLeft})};r.addEventListener("scroll",i);const l=new ResizeObserver((()=>{null==e||e.setViewportResizeMetrics({width:r.offsetWidth,height:r.offsetHeight,clientWidth:r.clientWidth,clientHeight:r.clientHeight,scrollTop:r.scrollTop,scrollLeft:r.scrollLeft,scrollWidth:r.scrollWidth,scrollHeight:r.scrollHeight})}));l.observe(r);const n=e.onScrollRequest((({x:e,y:t,behavior:i="auto"})=>{requestAnimationFrame((()=>{r.scrollTo({left:e,top:t,behavior:i})}))}));return()=>{null==e||e.registerBoundingRectProvider(null),r.removeEventListener("scroll",i),l.disconnect(),n()}})),{get containerRef(){return o.get(t)},set containerRef(e){o.set(t,e,!0)}}}var c=o.from_html("<div><!></div>");exports.Viewport=function(e,t){o.push(t,!0);let r=o.rest_props(t,["$$slots","$$events","$$legacy","children","class"]),i=o.state(0),l=o.derived(s);const u=o.derived(n),p=o.derived((()=>o.get(u).provides));o.user_effect((()=>{o.get(p)&&o.set(i,o.get(p).getViewportGap(),!0)}));var d=c();o.attribute_effect(d,(e=>({...r,class:t.class,[o.STYLE]:e})),[()=>({width:"100%",height:"100%",overflow:"auto",padding:`${o.get(i)}px`})]);var a=o.child(d);o.snippet(a,(()=>t.children)),o.reset(d),o.bind_this(d,(e=>o.get(l).containerRef=e),(()=>{var e;return null==(e=o.get(l))?void 0:e.containerRef})),o.append(e,d),o.pop()},exports.useViewportCapability=n,exports.useViewportPlugin=l,exports.useViewportRef=s,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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":["../../src/svelte/hooks/use-viewport.ts","../../src/svelte/hooks/use-viewport-ref.svelte.ts","../../src/svelte/components/Viewport.svelte"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/svelte';\nimport { ViewportPlugin } from '@embedpdf/plugin-viewport';\n\nexport const useViewportPlugin = () => usePlugin<ViewportPlugin>(ViewportPlugin.id);\nexport const useViewportCapability = () => useCapability<ViewportPlugin>(ViewportPlugin.id);\n","import { type Rect } from '@embedpdf/models';\nimport { useViewportPlugin } from './use-viewport';\n\n\nexport function useViewportRef() {\n const {plugin} = useViewportPlugin();\n let containerRef = $state<HTMLDivElement | null>(null);\n\n $effect.pre(() => {\n if (!plugin) return;\n\n const container = containerRef;\n if (!container) return;\n\n /* ---------- live rect provider --------------------------------- */\n const provideRect = (): Rect => {\n const r = container.getBoundingClientRect();\n return {\n origin: { x: r.left, y: r.top },\n size: { width: r.width, height: r.height }\n };\n };\n plugin.registerBoundingRectProvider(provideRect);\n\n // Example: On scroll, call setMetrics\n const onScroll = () => {\n plugin?.setViewportScrollMetrics({\n scrollTop: container.scrollTop,\n scrollLeft: container.scrollLeft\n });\n };\n container.addEventListener('scroll', onScroll);\n\n // Example: On resize, call setMetrics\n const resizeObserver = new ResizeObserver(() => {\n plugin?.setViewportResizeMetrics({\n width: container.offsetWidth,\n height: container.offsetHeight,\n clientWidth: container.clientWidth,\n clientHeight: container.clientHeight,\n scrollTop: container.scrollTop,\n scrollLeft: container.scrollLeft,\n scrollWidth: container.scrollWidth,\n scrollHeight: container.scrollHeight\n });\n });\n resizeObserver.observe(container);\n\n const unsubscribeScrollRequest = plugin.onScrollRequest(({ x, y, behavior = 'auto' }) => {\n requestAnimationFrame(() => {\n container.scrollTo({ left: x, top: y, behavior });\n });\n });\n\n // Cleanup\n return () => {\n plugin?.registerBoundingRectProvider(null);\n container.removeEventListener('scroll', onScroll);\n resizeObserver.disconnect();\n unsubscribeScrollRequest();\n };\n });\n\n // Return the ref so your Svelte code can attach it to a div\n return {\n get containerRef() {\n return containerRef;\n },\n set containerRef(el: HTMLDivElement | null) {\n containerRef = el;\n }\n };\n}\n","<script lang=\"ts\">\n import { useViewportCapability, useViewportRef } from '../hooks';\n import type { HTMLAttributes } from 'svelte/elements';\n import type { Snippet } from 'svelte';\n\n type ViewportProps = HTMLAttributes<HTMLDivElement> & {\n children: Snippet;\n class?: string;\n };\n\n let { children, class: propsClass, ...restProps }: ViewportProps = $props();\n\n let viewportGap = $state(0);\n\n let viewportRef = $derived(useViewportRef());\n\n const { provides } = $derived(useViewportCapability());\n\n $effect(() => {\n if (provides) {\n viewportGap = provides.getViewportGap();\n }\n });\n</script>\n\n<div\n {...restProps}\n bind:this={viewportRef.containerRef}\n style:width=\"100%\"\n style:height=\"100%\"\n style:overflow=\"auto\"\n style:padding={`${viewportGap}px`}\n class={propsClass}\n>\n {@render children()}\n</div>\n"],"names":["useViewportPlugin","usePlugin","ViewportPlugin","id","useViewportCapability","useCapability","useViewportRef","plugin","containerRef","$","user_pre_effect","container","registerBoundingRectProvider","r","getBoundingClientRect","origin","x","left","y","top","size","width","height","onScroll","setViewportScrollMetrics","scrollTop","scrollLeft","addEventListener","resizeObserver","ResizeObserver","setViewportResizeMetrics","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","observe","unsubscribeScrollRequest","onScrollRequest","behavior","requestAnimationFrame","scrollTo","removeEventListener","disconnect","el","$__namespace","set","restProps","rest_props","$$props","viewportGap","viewportRef","provides","user_effect","get","getViewportGap","class","STYLE","$0","bind_this","div","$$value","_a"],"mappings":"wgBAGaA,EAAoB,IAAMC,YAA0BC,EAAAA,eAAeC,IACnEC,EAAwB,IAAMC,gBAA8BH,EAAAA,eAAeC,ICAxE,SAAAG,IACP,MAAAC,OAAAA,GAAUP,IACb,IAAAQ,UAA6C,aAEjDC,EAAAC,0BACOH,EAAQ,OAEP,MAAAI,QAAYH,OACbG,EAAW,OAUhBJ,EAAOK,mCANC,MAAAC,EAAIF,EAAUG,+BAElBC,QAAUC,EAAGH,EAAEI,KAAMC,EAAGL,EAAEM,KAC1BC,MAAQC,MAAOR,EAAEQ,MAAOC,OAAQT,EAAES,YAMhC,MAAAC,OACJ,MAAAhB,GAAAA,EAAQiB,yBAAyB,CAC/BC,UAAWd,EAAUc,UACrBC,WAAYf,EAAUe,cAGhBf,EAAAgB,iBAAiB,SAAUJ,GAG/B,MAAAK,EAAA,IAAqBC,gBAAA,KACzB,MAAAtB,GAAAA,EAAQuB,yBAAyB,CAC/BT,MAAOV,EAAUoB,YACjBT,OAAQX,EAAUqB,aAClBC,YAAatB,EAAUsB,YACvBC,aAAcvB,EAAUuB,aACxBT,UAAWd,EAAUc,UACrBC,WAAYf,EAAUe,WACtBS,YAAaxB,EAAUwB,YACvBC,aAAczB,EAAUyB,kBAG5BR,EAAeS,QAAQ1B,GAEjB,MAAA2B,EAA2B/B,EAAOgC,iBAAmB,EAAAvB,IAAGE,IAAGsB,WAAW,WAC1EC,4BACE9B,EAAU+B,UAAWzB,KAAMD,EAAGG,IAAKD,EAAGsB,eACvC,eAKD,MAAAjC,GAAAA,EAAQK,6BAA6B,MAC3BD,EAAAgC,oBAAoB,SAAUpB,GACxCK,EAAegB,aACUN,GAAA,CAC3B,KAKI,gBAAA9B,gBACKA,EACT,kBACIA,CAAaqC,GACAC,EAAAC,IAAAvC,EAAAqC,GAAA,IAGrB,iFC9DwC,IAAAG,EAASvC,EAAAwC,WAAAC,EAAA,CAAA,UAAA,WAAA,WAAA,WAAA,UAE3CC,UAAqB,GAErBC,YAAuB9C,qBAEGF,GAAtBiD,0BAAAA,WAER5C,EAAA6C,aAAc,KACR7C,EAAA8C,IAAAF,UACFF,EAAW1C,EAAA8C,IAAGF,GAASG,kBAAc,EACvC,4CAKER,EAASS,MAAAP,EAAAO,MAAA,CAAAhD,EAAAiD,OAAAC,KAAA,mEAKKR,qEAJPL,EAAAc,UAAAC,GAAAC,GAAArD,EAAA8C,IAAAH,GAAY5C,aAAZsD,IAAA,WAAA,OAAArD,OAAAsD,EAAAjB,EAAAS,IAAAH,SAAY,EAAAW,EAAAvD,YAAA,yBAJzB"}
@@ -0,0 +1,3 @@
1
+ export { Viewport } from './components';
2
+ export * from './hooks';
3
+ export * from '../lib/index.ts';
@@ -0,0 +1,101 @@
1
+ import "svelte/internal/disclose-version";
2
+ import * as $ from "svelte/internal/client";
3
+ import { useCapability, usePlugin } from "@embedpdf/core/svelte";
4
+ import { ViewportPlugin } from "@embedpdf/plugin-viewport";
5
+ export * from "@embedpdf/plugin-viewport";
6
+ const useViewportPlugin = () => usePlugin(ViewportPlugin.id);
7
+ const useViewportCapability = () => useCapability(ViewportPlugin.id);
8
+ function useViewportRef() {
9
+ const { plugin } = useViewportPlugin();
10
+ let containerRef = $.state(null);
11
+ $.user_pre_effect(() => {
12
+ if (!plugin) return;
13
+ const container = $.get(containerRef);
14
+ if (!container) return;
15
+ const provideRect = () => {
16
+ const r = container.getBoundingClientRect();
17
+ return {
18
+ origin: { x: r.left, y: r.top },
19
+ size: { width: r.width, height: r.height }
20
+ };
21
+ };
22
+ plugin.registerBoundingRectProvider(provideRect);
23
+ const onScroll = () => {
24
+ plugin == null ? void 0 : plugin.setViewportScrollMetrics({
25
+ scrollTop: container.scrollTop,
26
+ scrollLeft: container.scrollLeft
27
+ });
28
+ };
29
+ container.addEventListener("scroll", onScroll);
30
+ const resizeObserver = new ResizeObserver(() => {
31
+ plugin == null ? void 0 : plugin.setViewportResizeMetrics({
32
+ width: container.offsetWidth,
33
+ height: container.offsetHeight,
34
+ clientWidth: container.clientWidth,
35
+ clientHeight: container.clientHeight,
36
+ scrollTop: container.scrollTop,
37
+ scrollLeft: container.scrollLeft,
38
+ scrollWidth: container.scrollWidth,
39
+ scrollHeight: container.scrollHeight
40
+ });
41
+ });
42
+ resizeObserver.observe(container);
43
+ const unsubscribeScrollRequest = plugin.onScrollRequest(({ x, y, behavior = "auto" }) => {
44
+ requestAnimationFrame(() => {
45
+ container.scrollTo({ left: x, top: y, behavior });
46
+ });
47
+ });
48
+ return () => {
49
+ plugin == null ? void 0 : plugin.registerBoundingRectProvider(null);
50
+ container.removeEventListener("scroll", onScroll);
51
+ resizeObserver.disconnect();
52
+ unsubscribeScrollRequest();
53
+ };
54
+ });
55
+ return {
56
+ get containerRef() {
57
+ return $.get(containerRef);
58
+ },
59
+ set containerRef(el) {
60
+ $.set(containerRef, el, true);
61
+ }
62
+ };
63
+ }
64
+ var root = $.from_html(`<div><!></div>`);
65
+ function Viewport($$anchor, $$props) {
66
+ $.push($$props, true);
67
+ let restProps = $.rest_props($$props, ["$$slots", "$$events", "$$legacy", "children", "class"]);
68
+ let viewportGap = $.state(0);
69
+ let viewportRef = $.derived(useViewportRef);
70
+ const $$d = $.derived(useViewportCapability), provides = $.derived(() => $.get($$d).provides);
71
+ $.user_effect(() => {
72
+ if ($.get(provides)) {
73
+ $.set(viewportGap, $.get(provides).getViewportGap(), true);
74
+ }
75
+ });
76
+ var div = root();
77
+ $.attribute_effect(div, ($0) => ({ ...restProps, class: $$props.class, [$.STYLE]: $0 }), [
78
+ () => ({
79
+ width: "100%",
80
+ height: "100%",
81
+ overflow: "auto",
82
+ padding: `${$.get(viewportGap)}px`
83
+ })
84
+ ]);
85
+ var node = $.child(div);
86
+ $.snippet(node, () => $$props.children);
87
+ $.reset(div);
88
+ $.bind_this(div, ($$value) => $.get(viewportRef).containerRef = $$value, () => {
89
+ var _a;
90
+ return (_a = $.get(viewportRef)) == null ? void 0 : _a.containerRef;
91
+ });
92
+ $.append($$anchor, div);
93
+ $.pop();
94
+ }
95
+ export {
96
+ Viewport,
97
+ useViewportCapability,
98
+ useViewportPlugin,
99
+ useViewportRef
100
+ };
101
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/svelte/hooks/use-viewport.ts","../../src/svelte/hooks/use-viewport-ref.svelte.ts","../../src/svelte/components/Viewport.svelte"],"sourcesContent":["import { useCapability, usePlugin } from '@embedpdf/core/svelte';\nimport { ViewportPlugin } from '@embedpdf/plugin-viewport';\n\nexport const useViewportPlugin = () => usePlugin<ViewportPlugin>(ViewportPlugin.id);\nexport const useViewportCapability = () => useCapability<ViewportPlugin>(ViewportPlugin.id);\n","import { type Rect } from '@embedpdf/models';\nimport { useViewportPlugin } from './use-viewport';\n\n\nexport function useViewportRef() {\n const {plugin} = useViewportPlugin();\n let containerRef = $state<HTMLDivElement | null>(null);\n\n $effect.pre(() => {\n if (!plugin) return;\n\n const container = containerRef;\n if (!container) return;\n\n /* ---------- live rect provider --------------------------------- */\n const provideRect = (): Rect => {\n const r = container.getBoundingClientRect();\n return {\n origin: { x: r.left, y: r.top },\n size: { width: r.width, height: r.height }\n };\n };\n plugin.registerBoundingRectProvider(provideRect);\n\n // Example: On scroll, call setMetrics\n const onScroll = () => {\n plugin?.setViewportScrollMetrics({\n scrollTop: container.scrollTop,\n scrollLeft: container.scrollLeft\n });\n };\n container.addEventListener('scroll', onScroll);\n\n // Example: On resize, call setMetrics\n const resizeObserver = new ResizeObserver(() => {\n plugin?.setViewportResizeMetrics({\n width: container.offsetWidth,\n height: container.offsetHeight,\n clientWidth: container.clientWidth,\n clientHeight: container.clientHeight,\n scrollTop: container.scrollTop,\n scrollLeft: container.scrollLeft,\n scrollWidth: container.scrollWidth,\n scrollHeight: container.scrollHeight\n });\n });\n resizeObserver.observe(container);\n\n const unsubscribeScrollRequest = plugin.onScrollRequest(({ x, y, behavior = 'auto' }) => {\n requestAnimationFrame(() => {\n container.scrollTo({ left: x, top: y, behavior });\n });\n });\n\n // Cleanup\n return () => {\n plugin?.registerBoundingRectProvider(null);\n container.removeEventListener('scroll', onScroll);\n resizeObserver.disconnect();\n unsubscribeScrollRequest();\n };\n });\n\n // Return the ref so your Svelte code can attach it to a div\n return {\n get containerRef() {\n return containerRef;\n },\n set containerRef(el: HTMLDivElement | null) {\n containerRef = el;\n }\n };\n}\n","<script lang=\"ts\">\n import { useViewportCapability, useViewportRef } from '../hooks';\n import type { HTMLAttributes } from 'svelte/elements';\n import type { Snippet } from 'svelte';\n\n type ViewportProps = HTMLAttributes<HTMLDivElement> & {\n children: Snippet;\n class?: string;\n };\n\n let { children, class: propsClass, ...restProps }: ViewportProps = $props();\n\n let viewportGap = $state(0);\n\n let viewportRef = $derived(useViewportRef());\n\n const { provides } = $derived(useViewportCapability());\n\n $effect(() => {\n if (provides) {\n viewportGap = provides.getViewportGap();\n }\n });\n</script>\n\n<div\n {...restProps}\n bind:this={viewportRef.containerRef}\n style:width=\"100%\"\n style:height=\"100%\"\n style:overflow=\"auto\"\n style:padding={`${viewportGap}px`}\n class={propsClass}\n>\n {@render children()}\n</div>\n"],"names":[],"mappings":";;;;;AAGO,MAAM,oBAAoB,MAAM,UAA0B,eAAe,EAAE;AAC3E,MAAM,wBAAwB,MAAM,cAA8B,eAAe,EAAE;ACA1E,SAAA,iBAAiB;AACxB,QAAA,EAAA,WAAU,kBAAkB;AAC/B,MAAA,uBAA6C,IAAI;AAErD,IAAA,sBAAkB;SACX,OAAQ;AAEP,UAAA,kBAAY,YAAA;SACb,UAAW;AAGV,UAAA,oBAA0B;YACxB,IAAI,UAAU,sBAAsB;;QAExC,UAAU,GAAG,EAAE,MAAM,GAAG,EAAE,IAAI;AAAA,QAC9B,QAAQ,OAAO,EAAE,OAAO,QAAQ,EAAE,OAAO;AAAA;IAE7C;AACA,WAAO,6BAA6B,WAAW;AAGzC,UAAA,iBAAiB;AACrB,uCAAQ,yBAAyB;AAAA,QAC/B,WAAW,UAAU;AAAA,QACrB,YAAY,UAAU;AAAA;IAE1B;AACU,cAAA,iBAAiB,UAAU,QAAQ;UAGvC,iBAAA,IAAqB,eAAA,MAAqB;AAC9C,uCAAQ,yBAAyB;AAAA,QAC/B,OAAO,UAAU;AAAA,QACjB,QAAQ,UAAU;AAAA,QAClB,aAAa,UAAU;AAAA,QACvB,cAAc,UAAU;AAAA,QACxB,WAAW,UAAU;AAAA,QACrB,YAAY,UAAU;AAAA,QACtB,aAAa,UAAU;AAAA,QACvB,cAAc,UAAU;AAAA;KAE3B;AACD,mBAAe,QAAQ,SAAS;AAE1B,UAAA,2BAA2B,OAAO,gBAAmB,CAAA,EAAA,GAAG,GAAG,WAAW,aAAa;AACvF,kCAA4B;AAC1B,kBAAU,WAAW,MAAM,GAAG,KAAK,GAAG;OACvC;AAAA,KACF;iBAGY;AACX,uCAAQ,6BAA6B;AAC3B,gBAAA,oBAAoB,UAAU,QAAQ;AAChD,qBAAe,WAAW;AACD,+BAAA;AAAA,IAC3B;AAAA,GACD;;IAIK,IAAA,eAAe;mBACV,YAAA;AAAA,IACT;AAAA,QACI,aAAa,IAA2B;AAC3B,QAAA,IAAA,cAAA,IAAA,IAAA;AAAA;;AAGrB;;qCCxEA;;MAUwC,YAAS,EAAA,WAAA,SAAA,CAAA,WAAA,YAAA,YAAA,YAAA,OAAA,CAAA;AAE3C,MAAA,sBAAqB,CAAC;AAEtB,MAAA,wBAAuB,cAAc;wBAEX,qBAAqB,GAA3C,sCAAA,QAAQ;AAEhB,IAAA,YAAc,MAAA;AACR,QAAA,EAAA,IAAA,QAAQ,GAAE;YACZ,aAAW,EAAA,IAAG,QAAQ,EAAC,eAAc,GAAA,IAAA;AAAA,IACvC;AAAA,GACD;;wCAIG,WAAS,OAAA,QAAA,OAAA,CAAA,EAAA,KAAA,GAAA,GAAA,IAAA;AAAA;;;;wBAKK,WAAW,CAAA;AAAA;;;;;AAJlB,IAAA,UAAA,KAAA,CAAA,YAAA,EAAA,IAAA,WAAW,EAAC,eAAZ,SAAA,MAAA;;AAAA,mBAAA,IAAA,WAAW,MAAX,mBAAY;AAAA,GAAY;;;AAJrC;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@embedpdf/plugin-viewport",
3
- "version": "1.3.16",
3
+ "version": "1.4.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "main": "./dist/index.cjs",
@@ -26,23 +26,30 @@
26
26
  "types": "./dist/vue/index.d.ts",
27
27
  "import": "./dist/vue/index.js",
28
28
  "require": "./dist/vue/index.cjs"
29
+ },
30
+ "./svelte": {
31
+ "types": "./dist/svelte/index.d.ts",
32
+ "svelte": "./dist/svelte/index.js",
33
+ "import": "./dist/svelte/index.js",
34
+ "require": "./dist/svelte/index.cjs"
29
35
  }
30
36
  },
31
37
  "dependencies": {
32
- "@embedpdf/models": "1.3.16"
38
+ "@embedpdf/models": "1.4.0"
33
39
  },
34
40
  "devDependencies": {
35
41
  "@types/react": "^18.2.0",
36
42
  "typescript": "^5.0.0",
37
- "@embedpdf/core": "1.3.16",
38
- "@embedpdf/build": "1.0.1"
43
+ "@embedpdf/build": "1.1.0",
44
+ "@embedpdf/core": "1.4.0"
39
45
  },
40
46
  "peerDependencies": {
41
47
  "react": ">=16.8.0",
42
48
  "react-dom": ">=16.8.0",
43
49
  "preact": "^10.26.4",
44
50
  "vue": ">=3.2.0",
45
- "@embedpdf/core": "1.3.16"
51
+ "svelte": ">=5 <6",
52
+ "@embedpdf/core": "1.4.0"
46
53
  },
47
54
  "files": [
48
55
  "dist",
@@ -65,7 +72,8 @@
65
72
  "build:react": "vite build --mode react",
66
73
  "build:preact": "vite build --mode preact",
67
74
  "build:vue": "vite build --mode vue",
68
- "build": "pnpm run clean && concurrently -c auto -n base,react,preact,vue \"vite build --mode base\" \"vite build --mode react\" \"vite build --mode preact\" \"vite build --mode vue\"",
75
+ "build:svelte": "vite build --mode svelte",
76
+ "build": "pnpm run clean && concurrently -c auto -n base,react,preact,vue,svelte \"vite build --mode base\" \"vite build --mode react\" \"vite build --mode preact\" \"vite build --mode vue\" \"vite build --mode svelte\"",
69
77
  "clean": "rimraf dist",
70
78
  "lint": "eslint src --color",
71
79
  "lint:fix": "eslint src --color --fix"