@knaw-huc/osd-iiif-viewer 0.1.7 → 0.1.9
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/ViewerStore.d.ts
CHANGED
|
@@ -3,5 +3,7 @@ import { ControlSlice } from './ControlSlice.ts';
|
|
|
3
3
|
import { ManifestSlice } from './manifest/ManifestSlice.ts';
|
|
4
4
|
import { CanvasSlice } from './manifest/CanvasSlice.ts';
|
|
5
5
|
import { Resettable } from './Resettable.ts';
|
|
6
|
-
export type ViewerStore = InstanceSlice & ControlSlice & ManifestSlice & CanvasSlice & Resettable
|
|
6
|
+
export type ViewerStore = InstanceSlice & ControlSlice & ManifestSlice & CanvasSlice & Resettable & {
|
|
7
|
+
resetViewer: () => void;
|
|
8
|
+
};
|
|
7
9
|
export declare const createViewerStore: () => import('zustand').StoreApi<ViewerStore>;
|
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,6 @@ export { useViewerReady } from './useViewerReady';
|
|
|
8
8
|
export { useViewerStore } from './useViewerStore';
|
|
9
9
|
export { useManifest, useLoadManifest } from './manifest/useManifest';
|
|
10
10
|
export { useCanvas } from './manifest/useCanvas';
|
|
11
|
-
export { useVault } from './manifest/useVault';
|
|
12
11
|
export { findTileSource } from './manifest/findTileSource';
|
|
13
12
|
export { findThumbnail } from './manifest/findThumbnail';
|
|
14
13
|
export { getImageServiceId } from './manifest/getImageServiceId';
|
package/dist/index.js
CHANGED
|
@@ -1799,6 +1799,7 @@ const defaultState$1 = {
|
|
|
1799
1799
|
}), defaultManifest = {
|
|
1800
1800
|
url: null,
|
|
1801
1801
|
isLoading: !1,
|
|
1802
|
+
isReady: !1,
|
|
1802
1803
|
error: null
|
|
1803
1804
|
}, createManifestSlice = (vault) => (set) => ({
|
|
1804
1805
|
vault,
|
|
@@ -1835,13 +1836,19 @@ const defaultState$1 = {
|
|
|
1835
1836
|
reset: () => set(defaultCanvas)
|
|
1836
1837
|
}), createViewerStore = () => {
|
|
1837
1838
|
const vault = new E(), resets = [], withReset = (slice) => (resets.push(slice.reset), slice);
|
|
1838
|
-
return createStore((...a2) =>
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1839
|
+
return createStore((...a2) => {
|
|
1840
|
+
const instance = withReset(createInstanceSlice(...a2)), control = withReset(createControlSlice(...a2));
|
|
1841
|
+
return {
|
|
1842
|
+
...instance,
|
|
1843
|
+
...control,
|
|
1844
|
+
...withReset(createManifestSlice(vault)(...a2)),
|
|
1845
|
+
...withReset(createCanvasSlice(...a2)),
|
|
1846
|
+
reset: () => resets.forEach((fn) => fn()),
|
|
1847
|
+
resetViewer: () => {
|
|
1848
|
+
instance.reset(), control.reset();
|
|
1849
|
+
}
|
|
1850
|
+
};
|
|
1851
|
+
});
|
|
1845
1852
|
}, ViewerContext = createContext(null);
|
|
1846
1853
|
function orThrow(msg) {
|
|
1847
1854
|
throw new Error(msg);
|
|
@@ -1941,11 +1948,15 @@ function useCanvas() {
|
|
|
1941
1948
|
}, [vault, url, isLoading, currentIndex]);
|
|
1942
1949
|
return { currentIndex, current, total, goTo, next, prev };
|
|
1943
1950
|
}
|
|
1944
|
-
function
|
|
1945
|
-
|
|
1951
|
+
function useManifest() {
|
|
1952
|
+
const vault = useViewerStoreSelector((s2) => s2.vault), url = useViewerStoreSelector((s2) => s2.url), isLoading = useViewerStoreSelector((s2) => s2.isLoading), error = useViewerStoreSelector((s2) => s2.error), loadManifest = useViewerStoreSelector((s2) => s2.loadManifest);
|
|
1953
|
+
return { vault, url, isLoading, error, isReady: !!url && !isLoading && !error, loadManifest };
|
|
1954
|
+
}
|
|
1955
|
+
function useLoadManifest() {
|
|
1956
|
+
return useViewerStoreSelector((s2) => s2.loadManifest);
|
|
1946
1957
|
}
|
|
1947
1958
|
function Viewer({ showControls = !0 }) {
|
|
1948
|
-
const containerRef = useRef(null), store = useViewerStore(), vault =
|
|
1959
|
+
const containerRef = useRef(null), store = useViewerStore(), { vault } = useManifest(), { current } = useCanvas(), tileSource = current ? findTileSource(vault, current) : null;
|
|
1949
1960
|
return useEffect(() => {
|
|
1950
1961
|
if (!containerRef.current)
|
|
1951
1962
|
return;
|
|
@@ -1965,7 +1976,7 @@ function Viewer({ showControls = !0 }) {
|
|
|
1965
1976
|
store.getState().setRotation(viewer.viewport.getRotation());
|
|
1966
1977
|
};
|
|
1967
1978
|
return viewer.addHandler("animation-start", onZoom), viewer.addHandler("animation-finish", onZoom), viewer.addHandler("rotate", onRotate), () => {
|
|
1968
|
-
viewer.destroy(), store.getState().
|
|
1979
|
+
viewer.destroy(), store.getState().resetViewer();
|
|
1969
1980
|
};
|
|
1970
1981
|
}, [showControls, store]), useEffect(() => {
|
|
1971
1982
|
const viewer = store.getState().viewer;
|
|
@@ -2052,13 +2063,6 @@ function useViewerControls(fullscreenRef) {
|
|
|
2052
2063
|
rotation
|
|
2053
2064
|
};
|
|
2054
2065
|
}
|
|
2055
|
-
function useManifest() {
|
|
2056
|
-
const url = useViewerStoreSelector((s2) => s2.url), isLoading = useViewerStoreSelector((s2) => s2.isLoading), error = useViewerStoreSelector((s2) => s2.error);
|
|
2057
|
-
return { url, isLoading, error, isReady: !!url && !isLoading && !error };
|
|
2058
|
-
}
|
|
2059
|
-
function useLoadManifest() {
|
|
2060
|
-
return useViewerStoreSelector((s2) => s2.loadManifest);
|
|
2061
|
-
}
|
|
2062
2066
|
function findThumbnail(vault, canvas, height = 120) {
|
|
2063
2067
|
return getImageServiceId(vault, canvas) ? `/full/,${height}/0/default.jpg` : null;
|
|
2064
2068
|
}
|
|
@@ -2073,7 +2077,6 @@ export {
|
|
|
2073
2077
|
useImageInfo,
|
|
2074
2078
|
useLoadManifest,
|
|
2075
2079
|
useManifest,
|
|
2076
|
-
useVault,
|
|
2077
2080
|
useViewer,
|
|
2078
2081
|
useViewerControls,
|
|
2079
2082
|
useViewerReady,
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export declare function useManifest(): {
|
|
2
|
+
vault: import('@iiif/helpers/vault').Vault;
|
|
2
3
|
url: string | null;
|
|
3
4
|
isLoading: boolean;
|
|
4
5
|
error: string | null;
|
|
5
6
|
isReady: boolean;
|
|
7
|
+
loadManifest: (url: string) => Promise<void>;
|
|
6
8
|
};
|
|
7
9
|
export declare function useLoadManifest(): (url: string) => Promise<void>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@knaw-huc/osd-iiif-viewer",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.9",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/knaw-huc/osd-iiif-viewer.git"
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
"dist"
|
|
19
19
|
],
|
|
20
20
|
"scripts": {
|
|
21
|
-
"start": "
|
|
22
|
-
"dev": "vite",
|
|
23
|
-
"build": "vite build",
|
|
21
|
+
"start": "npm run dev",
|
|
22
|
+
"dev": "vite --config vite.dev.config.ts",
|
|
23
|
+
"build": "vite build --config vite.build.config.ts",
|
|
24
24
|
"test": "vitest run",
|
|
25
25
|
"test:watch": "vitest",
|
|
26
26
|
"lint": "eslint .",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function useVault(): import('@iiif/helpers/vault').Vault;
|