react-iiif-vault 1.3.6 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,31 +1,107 @@
1
- import { S as SimpleViewerContext, a as SimpleViewerProps } from './index-B6kdyv-j.cjs';
2
- export { C as CanvasPanel, c as SimpleViewerActions, d as SimpleViewerActionsType, b as SimpleViewerReducerState } from './index-B6kdyv-j.cjs';
3
- import * as React$1 from 'react';
4
- import React__default, { ReactNode, FunctionComponent, RefObject } from 'react';
1
+ import { A as AudioComponentProps, V as VideoComponentProps, S as SimpleViewerContext, a as SimpleViewerProps } from './index-Cs7EchlV.cjs';
2
+ export { C as CanvasPanel, c as SimpleViewerActions, d as SimpleViewerActionsType, b as SimpleViewerReducerState } from './index-Cs7EchlV.cjs';
5
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
6
- import { InternationalString, ImageService, ImageSize, AuthProbeService2, Auth2LocationResource, Auth2SubstituteResource, AuthAccessService2, AuthAccessTokenService2, AuthAccessToken2, SearchServiceQueryParams, SearchServiceSearchResponse, SearchService as SearchService$1, SearchServiceAutocomplete, Reference, Annotation } from '@iiif/presentation-3';
7
- import { RegionParameter, RotationParameter, SizeParameter, ImageServiceLoader, ImageCandidateRequest, ImageCandidate } from '@atlas-viewer/iiif-image-api';
4
+ import * as React$1 from 'react';
5
+ import React__default, { ReactNode, FunctionComponent, RefObject, Context } from 'react';
6
+ import { R as RenderingStrategy, b as StrategyActions, M as MediaStrategy, c as SingleImageStrategy, E as EmptyStrategy, C as ComplexTimelineStrategy, I as ImageWithOptionalService, T as TimelineKeyframe, U as UnknownStrategy, d as ImageServiceLoaderType } from './useRenderingStrategy-B03X9rQS.cjs';
7
+ export { f as AnnotationPageDescription, A as AudioSequence, n as ChoiceEvents, k as Single3DModelStrategy, S as SingleAudio, a as SingleVideo, e as SingleYouTubeVideo, i as TextContent, h as TextualContentStrategy, m as UseRenderingStrategy, o as UseRenderingStrategyOptions, V as VideoSequence, l as get3dStrategy, g as getImageStrategy, j as getTextualContentStrategy, u as useLoadImageService, p as useRenderingStrategy } from './useRenderingStrategy-B03X9rQS.cjs';
8
+ import * as _iiif_helpers from '@iiif/helpers';
9
+ import { ChoiceDescription, Paintables, Vault as Vault$1, ComplexChoice } from '@iiif/helpers';
10
+ import { BoxStyle, AtlasProps, Preset } from '@atlas-viewer/atlas';
11
+ import { InternationalString, ImageService as ImageService$1, ImageSize, AuthProbeService2, Auth2LocationResource, Auth2SubstituteResource, AuthAccessService2, AuthAccessTokenService2, AuthAccessToken2, SearchServiceQueryParams, SearchServiceSearchResponse, SearchService as SearchService$1, SearchServiceAutocomplete, Reference, Annotation } from '@iiif/presentation-3';
12
+ import { RegionParameter, RotationParameter, SizeParameter } from '@iiif/parser/image-3';
8
13
  import * as polygon_editor from 'polygon-editor';
9
14
  import { RenderState, InputShape, SlowState } from 'polygon-editor';
10
- import { BoxStyle, Preset } from '@atlas-viewer/atlas';
11
15
  import * as zustand_vanilla from 'zustand/vanilla';
12
16
  import { StoreApi } from 'zustand/vanilla';
13
17
  import * as zustand from 'zustand';
14
18
  import { StoreApi as StoreApi$1 } from 'zustand';
15
- import { C as ComplexTimelineStrategy, T as TimelineKeyframe, U as UnknownStrategy, M as MediaStrategy, d as ImageServiceLoaderType } from './useRenderingStrategy-2EaRC2Nc.cjs';
16
- export { f as AnnotationPageDescription, A as AudioSequence, n as ChoiceEvents, E as EmptyStrategy, I as ImageWithOptionalService, R as RenderingStrategy, k as Single3DModelStrategy, b as SingleAudio, a as SingleImageStrategy, c as SingleVideo, e as SingleYouTubeVideo, S as StrategyActions, i as TextContent, h as TextualContentStrategy, m as UseRenderingStrategy, o as UseRenderingStrategyOptions, V as VideoSequence, l as get3dStrategy, g as getImageStrategy, j as getTextualContentStrategy, u as useLoadImageService, p as useRenderingStrategy } from './useRenderingStrategy-2EaRC2Nc.cjs';
17
19
  import * as mitt from 'mitt';
18
20
  import { Emitter, EventType, Handler } from 'mitt';
19
21
  import { Vault, VaultOptions, NormalizedEntity, IIIFStore } from '@iiif/helpers/vault';
20
- import * as _iiif_helpers from '@iiif/helpers';
21
- import { Paintables, ComplexChoice } from '@iiif/helpers';
22
22
  import { CanvasNormalized, AnnotationNormalized, AnnotationPageNormalized, CollectionNormalized, ManifestNormalized, RangeNormalized } from '@iiif/presentation-3-normalized';
23
+ import { ImageServiceLoader, ImageCandidateRequest, ImageCandidate } from '@iiif/helpers/image-service';
23
24
  export { emptyActions, emptyStrategy, getParsedTargetSelector, getRenderingStrategy, parseSpecificResource, unknownResponse, unsupportedStrategy } from './utils.cjs';
24
25
  import { VaultZustandStore } from '@iiif/helpers/vault/store';
25
26
  import * as _iiif_helpers_painting_annotations from '@iiif/helpers/painting-annotations';
26
27
  import * as _iiif_helpers_styles from '@iiif/helpers/styles';
27
28
  export * from '@iiif/helpers/annotation-targets';
28
29
 
30
+ interface CanvasStrategyProviderProps {
31
+ onChoiceChange?: (choice?: ChoiceDescription) => void;
32
+ strategies?: Array<RenderingStrategy['type']>;
33
+ registerActions?: (actions: StrategyActions) => void;
34
+ defaultChoices?: Array<{
35
+ id: string;
36
+ opacity?: number;
37
+ }>;
38
+ children: ReactNode;
39
+ renderMediaControls?: (strategy: MediaStrategy) => ReactNode;
40
+ viewControlsDeps?: any[];
41
+ renderViewerControls?: (strategy: SingleImageStrategy | EmptyStrategy) => ReactNode;
42
+ renderComplexTimelineControls?: (strategy: ComplexTimelineStrategy) => ReactNode;
43
+ complexTimelineControlsDeps?: any[];
44
+ mediaControlsDeps?: any[];
45
+ throwOnUnknown?: boolean;
46
+ }
47
+ declare function CanvasStrategyProvider({ strategies, registerActions, defaultChoices, onChoiceChange, mediaControlsDeps, renderMediaControls, renderViewerControls, viewControlsDeps, renderComplexTimelineControls, complexTimelineControlsDeps, throwOnUnknown, children, }: CanvasStrategyProviderProps): react_jsx_runtime.JSX.Element;
48
+
49
+ interface CanvasWorldObjectProps {
50
+ x?: number;
51
+ y?: number;
52
+ keepCanvasScale?: boolean;
53
+ children?: ReactNode;
54
+ }
55
+ declare function CanvasWorldObject({ x, y, keepCanvasScale, children }: CanvasWorldObjectProps): react_jsx_runtime.JSX.Element | null;
56
+
57
+ declare function ThumbnailFallbackImage({ x, y }: {
58
+ x?: number;
59
+ y?: number;
60
+ }): react_jsx_runtime.JSX.Element | null;
61
+
62
+ interface RenderEmptyStrategyProps {
63
+ backgroundStyle?: BoxStyle;
64
+ alwaysShowBackground?: boolean;
65
+ }
66
+ declare function RenderEmptyStrategy({ backgroundStyle, alwaysShowBackground }: RenderEmptyStrategyProps): react_jsx_runtime.JSX.Element | null;
67
+
68
+ declare function RenderComplexTimelineStrategy(): react_jsx_runtime.JSX.Element | null;
69
+
70
+ interface TextualContextStrategyProps {
71
+ onClickPaintingAnnotation?: (id: string, e: any) => void;
72
+ children?: ReactNode;
73
+ }
74
+ declare function RenderTextualContentStrategy({ onClickPaintingAnnotation, children }: TextualContextStrategyProps): react_jsx_runtime.JSX.Element | null;
75
+
76
+ interface ImageStrategyProps {
77
+ isStatic?: boolean;
78
+ enableSizes?: boolean;
79
+ onClickPaintingAnnotation?: (id: string, image: ImageWithOptionalService, e: any) => void;
80
+ children?: ReactNode;
81
+ }
82
+ declare function RenderImageStrategy({ isStatic, enableSizes, onClickPaintingAnnotation, children, }: ImageStrategyProps): react_jsx_runtime.JSX.Element | null;
83
+
84
+ declare function Render3DModelStrategy(): react_jsx_runtime.JSX.Element | null;
85
+
86
+ interface AnnotationStrategyProps {
87
+ children?: ReactNode;
88
+ }
89
+ declare function RenderAnnotationStrategy({ children }: AnnotationStrategyProps): react_jsx_runtime.JSX.Element | null;
90
+
91
+ interface RenderAudioStrategyProps {
92
+ as?: React.ComponentType<AudioComponentProps>;
93
+ }
94
+ declare function RenderAudioStrategy({ as: CustomAudio }: RenderAudioStrategyProps): react_jsx_runtime.JSX.Element | null;
95
+
96
+ declare function RenderAccompanyingCanvas(): react_jsx_runtime.JSX.Element;
97
+
98
+ interface RenderVideoStrategyProps {
99
+ as?: React__default.ComponentType<VideoComponentProps>;
100
+ }
101
+ declare function RenderVideoStrategy({ as: CustomVideo }: RenderVideoStrategyProps): react_jsx_runtime.JSX.Element | null;
102
+
103
+ declare function RenderYouTubeStrategy(): react_jsx_runtime.JSX.Element | null;
104
+
29
105
  declare const CanvasAnnotations: React$1.ForwardRefExoticComponent<{
30
106
  canvasId?: string | undefined;
31
107
  } & React$1.RefAttributes<{
@@ -79,7 +155,7 @@ type CombinedMetadataProps = Omit<MetadataProps, 'metadata'>;
79
155
  declare function CombinedMetadata(props: CombinedMetadataProps): react_jsx_runtime.JSX.Element;
80
156
 
81
157
  interface ImageProps {
82
- src: string | ImageService;
158
+ src: string | ImageService$1;
83
159
  alt?: string;
84
160
  size?: Partial<ImageSize>;
85
161
  region?: RegionParameter;
@@ -314,6 +390,21 @@ interface PolygonSelectorProps {
314
390
  }
315
391
  declare function PolygonSelector(props: PolygonSelectorProps): react_jsx_runtime.JSX.Element | null;
316
392
 
393
+ interface ImageServiceProps {
394
+ src: string;
395
+ atlas?: AtlasProps;
396
+ errorFallback?: React__default.FC;
397
+ interactive?: boolean;
398
+ skipSizes?: boolean;
399
+ renderViewerControls?: (strategy: SingleImageStrategy | EmptyStrategy) => ReactNode;
400
+ viewControlsDeps?: any[];
401
+ fluid?: boolean;
402
+ x?: number;
403
+ y?: number;
404
+ children?: React__default.ReactNode;
405
+ }
406
+ declare function ImageService({ src, errorFallback, interactive, skipSizes, children, renderViewerControls, viewControlsDeps, fluid, x, y, ...atlasProps }: ImageServiceProps & Omit<AtlasProps, 'children'>): react_jsx_runtime.JSX.Element | null;
407
+
317
408
  declare function AnnotationContext({ annotation, children }: {
318
409
  annotation: string;
319
410
  children: ReactNode;
@@ -599,6 +690,20 @@ interface Search1Store {
599
690
  nextResult: () => void;
600
691
  }
601
692
 
693
+ declare function useCustomContextBridge(): Record<string, {
694
+ value: any;
695
+ Provider: React__default.Provider<any>;
696
+ }>;
697
+ declare function CustomContextBridge(props: Record<string, {
698
+ value: any;
699
+ Provider: React__default.Provider<any>;
700
+ }> & {
701
+ children: React__default.ReactNode;
702
+ }): ReactNode;
703
+ declare function CustomContextBridgeProvider(props: {
704
+ providers: Record<string, Context<any>>;
705
+ children: React__default.ReactNode;
706
+ }): react_jsx_runtime.JSX.Element;
602
707
  declare function useContextBridge(): {
603
708
  VaultContext: {
604
709
  vault: _iiif_helpers.Vault | null;
@@ -615,6 +720,7 @@ declare function useContextBridge(): {
615
720
  };
616
721
  declare function ContextBridge(props: {
617
722
  bridge: ReturnType<typeof useContextBridge>;
723
+ custom?: ReturnType<typeof useCustomContextBridge>;
618
724
  children: ReactNode;
619
725
  }): react_jsx_runtime.JSX.Element;
620
726
 
@@ -727,9 +833,27 @@ declare function AnnotationStyleProvider({ theme, children, }: {
727
833
  children: React.ReactNode;
728
834
  }): react_jsx_runtime.JSX.Element;
729
835
 
730
- declare function getVideoStrategy(canvas: CanvasNormalized, paintables: Paintables): UnknownStrategy | MediaStrategy;
836
+ interface StrategyContext {
837
+ strategy: RenderingStrategy;
838
+ choices: ChoiceDescription | null;
839
+ }
840
+ declare const StrategyReactContext: React$1.Context<StrategyContext | null>;
841
+ declare function useStrategy(): StrategyContext;
842
+
843
+ interface ControlsContext {
844
+ renderMediaControls?: (strategy: MediaStrategy) => ReactNode;
845
+ viewControlsDeps: any[];
846
+ renderViewerControls?: (strategy: SingleImageStrategy | EmptyStrategy) => ReactNode;
847
+ mediaControlsDeps: any[];
848
+ renderComplexTimelineControls?: (strategy: ComplexTimelineStrategy) => ReactNode;
849
+ complexTimelineControlsDeps: any[];
850
+ }
851
+ declare const ControlsReactContext: React$1.Context<ControlsContext | null>;
852
+ declare function useRenderControls(): ControlsContext;
853
+
854
+ declare function getVideoStrategy(canvas: CanvasNormalized, paintables: Paintables, vault: Vault$1): UnknownStrategy | MediaStrategy;
731
855
 
732
- declare function getComplexTimelineStrategy(canvas: CanvasNormalized, paintables: Paintables, loadImageService: ImageServiceLoaderType): ComplexTimelineStrategy;
856
+ declare function getComplexTimelineStrategy(canvas: CanvasNormalized, paintables: Paintables, loadImageService: ImageServiceLoaderType, vault: Vault$1): ComplexTimelineStrategy;
733
857
 
734
858
  declare function useAnnotation(options?: {
735
859
  id: string;
@@ -850,7 +974,7 @@ declare function useExternalManifest(idOrRef: string | {
850
974
  manifest?: ManifestNormalized;
851
975
  };
852
976
 
853
- declare function useImage(service: ImageService | undefined, data?: {
977
+ declare function useImage(service: ImageService$1 | undefined, data?: {
854
978
  size?: Partial<ImageSize>;
855
979
  selector?: RegionParameter;
856
980
  rotation?: number | RotationParameter;
@@ -868,7 +992,7 @@ interface ImageServiceRequestOptions {
868
992
  * @note It is better to use the hook useRenderingStrategy for rendering.
869
993
  */
870
994
  declare function useImageService({ cacheKey }?: ImageServiceRequestOptions): {
871
- data: ImageService | undefined;
995
+ data: ImageService$1 | undefined;
872
996
  isFetching: boolean;
873
997
  status: 'error' | 'success' | 'loading' | 'idle';
874
998
  };
@@ -879,7 +1003,7 @@ declare function useImageTile(): {
879
1003
  id: string | undefined;
880
1004
  width: number | null | undefined;
881
1005
  height: number | null | undefined;
882
- imageService: ImageService;
1006
+ imageService: ImageService$1;
883
1007
  thumbnail: undefined;
884
1008
  } | null;
885
1009
  };
@@ -1120,4 +1244,4 @@ declare function findAllCanvasesInRange(vault: Vault, range: RangeNormalized): A
1120
1244
  declare function findManifestSelectedRange(vault: Vault, manifest: ManifestNormalized, canvasId: string): null | RangeNormalized;
1121
1245
  declare function findSelectedRange(vault: Vault, range: RangeNormalized, canvasId: string): null | RangeNormalized;
1122
1246
 
1123
- export { AnnotationContext, AnnotationPageContext, AnnotationStyleProvider, type AnnotationStyles, type AnnotationThemeDefinition, Auth, type AuthAccessState, type AuthContextActions, type AuthContextCurrentActions, type AuthContextState, AuthProvider, AuthRContext, AuthReactContext, AuthReactContextActions, type AuthState, CanvasAnnotations, CanvasContext, CollectionContext, CombinedMetadata, ComplexTimelineProvider, ComplexTimelineStrategy, ContextBridge, CreateCustomShape, type CreateCustomShapeProps, EventsProvider, Image, type ImageProps, ImageServiceLoaderContext, ImageServiceLoaderType, type ImageServiceRequestOptions, InnerViewerProvider, LanguageProvider, LanguageString, LocaleString, ManifestContext, ManifestMetadata, type MediaPlayerActions, MediaPlayerProvider, type MediaPlayerState, MediaStrategy, Metadata, type MetadataProps, PolygonSelector, type PolygonSelectorProps, type ProbeStore, RangeContext, ReactEventContext, ReactVaultContext, RenderSvgEditorControls, type ResourceContextType, ResourceProvider, ResourceReactContext, type ResourceRequestOptions, SelectorControllerProvider, type SelectorHelperEventTypes, SequenceThumbnails, SimpleViewerContext, SimpleViewerProps, SimpleViewerProvider, SimpleViewerReactContext, SingleCanvasThumbnail, type SvgTheme, TimelineKeyframe, TranslationProvider, TransliterationProvider, UnknownStrategy, type VaultActivatedAnnotation, VaultProvider, ViewerPresetContext, VirtualAnnotationProvider, VisibleCanvasReactContext, authDetailsForResource, createAuthStateStore, createProbe, defaultEmitter, findAllCanvasesInRange, findFirstCanvasFromRange, findManifestSelectedRange, findSelectedRange, flattenAnnotationPageIds, formatTime, getComplexTimelineStrategy, getDefaultAnnotationStyles, getManifestSequence, getVideoStrategy, getVisibleCanvasesFromCanvasId, hasAuth, makeAccessServiceRequest, makeAccessTokenRequest, svgThemes, useAnnotation, useAnnotationPage, useAnnotationPageManager, useAnnotationStyles, useAnnotationsAtTime, useAuthActions, useAuthService, useAuthStore, useAuthToken, useAuthTokens, useCanvas, useCanvasChoices, useCanvasClock, useCanvasSequence, useCanvasStartTime, useCanvasSubset, useClosestLanguage, useCollection, useComplexTimeline, useContextBridge, useCreateLocaleString, useCurrentAuth, useDispatch, useEventEmitter, useEventListener, useExistingVault, useExternalCollection, useExternalManifest, useExternalResource, useIIIFLanguage, useImage, useImageService, useImageServiceLoader, useImageTile, useIsAuthEnabled, useLocaleString, useManifest, useMediaActions, useMediaElements, useMediaState, usePaintables, usePaintingAnnotations, usePolygonHelper, useRange, useResourceContext, useResourceEvents, useResources, useSearchService, useSelectorController, useSelectorEmitter, useSelectorEvents, useSelectorHelper, useSimpleMediaPlayer, useSimpleViewer, useStyleHelper, useStyles, useSvgEditor, useThumbnail, useTranslations, useTransliteration, useVault, useVaultEffect, useVaultSelector, useViewerPreset, useVirtualAnnotationPage, useVirtualAnnotationPageContext, useVisibleCanvases };
1247
+ export { AnnotationContext, AnnotationPageContext, type AnnotationStrategyProps, AnnotationStyleProvider, type AnnotationStyles, type AnnotationThemeDefinition, Auth, type AuthAccessState, type AuthContextActions, type AuthContextCurrentActions, type AuthContextState, AuthProvider, AuthRContext, AuthReactContext, AuthReactContextActions, type AuthState, CanvasAnnotations, CanvasContext, CanvasStrategyProvider, CanvasWorldObject, CollectionContext, CombinedMetadata, ComplexTimelineProvider, ComplexTimelineStrategy, ContextBridge, type ControlsContext, ControlsReactContext, CreateCustomShape, type CreateCustomShapeProps, CustomContextBridge, CustomContextBridgeProvider, EmptyStrategy, EventsProvider, Image, type ImageProps, ImageService, ImageServiceLoaderContext, ImageServiceLoaderType, type ImageServiceRequestOptions, type ImageStrategyProps, ImageWithOptionalService, InnerViewerProvider, LanguageProvider, LanguageString, LocaleString, ManifestContext, ManifestMetadata, type MediaPlayerActions, MediaPlayerProvider, type MediaPlayerState, MediaStrategy, Metadata, type MetadataProps, PolygonSelector, type PolygonSelectorProps, type ProbeStore, RangeContext, ReactEventContext, ReactVaultContext, Render3DModelStrategy, RenderAccompanyingCanvas, RenderAnnotationStrategy, RenderAudioStrategy, RenderComplexTimelineStrategy, RenderEmptyStrategy, RenderImageStrategy, RenderSvgEditorControls, RenderTextualContentStrategy, RenderVideoStrategy, RenderYouTubeStrategy, RenderingStrategy, type ResourceContextType, ResourceProvider, ResourceReactContext, type ResourceRequestOptions, SelectorControllerProvider, type SelectorHelperEventTypes, SequenceThumbnails, SimpleViewerContext, SimpleViewerProps, SimpleViewerProvider, SimpleViewerReactContext, SingleCanvasThumbnail, SingleImageStrategy, StrategyActions, type StrategyContext, StrategyReactContext, type SvgTheme, ThumbnailFallbackImage, TimelineKeyframe, TranslationProvider, TransliterationProvider, UnknownStrategy, type VaultActivatedAnnotation, VaultProvider, ViewerPresetContext, VirtualAnnotationProvider, VisibleCanvasReactContext, authDetailsForResource, createAuthStateStore, createProbe, defaultEmitter, findAllCanvasesInRange, findFirstCanvasFromRange, findManifestSelectedRange, findSelectedRange, flattenAnnotationPageIds, formatTime, getComplexTimelineStrategy, getDefaultAnnotationStyles, getManifestSequence, getVideoStrategy, getVisibleCanvasesFromCanvasId, hasAuth, makeAccessServiceRequest, makeAccessTokenRequest, svgThemes, useAnnotation, useAnnotationPage, useAnnotationPageManager, useAnnotationStyles, useAnnotationsAtTime, useAuthActions, useAuthService, useAuthStore, useAuthToken, useAuthTokens, useCanvas, useCanvasChoices, useCanvasClock, useCanvasSequence, useCanvasStartTime, useCanvasSubset, useClosestLanguage, useCollection, useComplexTimeline, useContextBridge, useCreateLocaleString, useCurrentAuth, useCustomContextBridge, useDispatch, useEventEmitter, useEventListener, useExistingVault, useExternalCollection, useExternalManifest, useExternalResource, useIIIFLanguage, useImage, useImageService, useImageServiceLoader, useImageTile, useIsAuthEnabled, useLocaleString, useManifest, useMediaActions, useMediaElements, useMediaState, usePaintables, usePaintingAnnotations, usePolygonHelper, useRange, useRenderControls, useResourceContext, useResourceEvents, useResources, useSearchService, useSelectorController, useSelectorEmitter, useSelectorEvents, useSelectorHelper, useSimpleMediaPlayer, useSimpleViewer, useStrategy, useStyleHelper, useStyles, useSvgEditor, useThumbnail, useTranslations, useTransliteration, useVault, useVaultEffect, useVaultSelector, useViewerPreset, useVirtualAnnotationPage, useVirtualAnnotationPageContext, useVisibleCanvases };
package/dist/index.d.ts CHANGED
@@ -1,31 +1,107 @@
1
- import { S as SimpleViewerContext, a as SimpleViewerProps } from './index-D1lST-Xy.js';
2
- export { C as CanvasPanel, c as SimpleViewerActions, d as SimpleViewerActionsType, b as SimpleViewerReducerState } from './index-D1lST-Xy.js';
3
- import * as React$1 from 'react';
4
- import React__default, { ReactNode, FunctionComponent, RefObject } from 'react';
1
+ import { A as AudioComponentProps, V as VideoComponentProps, S as SimpleViewerContext, a as SimpleViewerProps } from './index-DZK6q9iO.js';
2
+ export { C as CanvasPanel, c as SimpleViewerActions, d as SimpleViewerActionsType, b as SimpleViewerReducerState } from './index-DZK6q9iO.js';
5
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
6
- import { InternationalString, ImageService, ImageSize, AuthProbeService2, Auth2LocationResource, Auth2SubstituteResource, AuthAccessService2, AuthAccessTokenService2, AuthAccessToken2, SearchServiceQueryParams, SearchServiceSearchResponse, SearchService as SearchService$1, SearchServiceAutocomplete, Reference, Annotation } from '@iiif/presentation-3';
7
- import { RegionParameter, RotationParameter, SizeParameter, ImageServiceLoader, ImageCandidateRequest, ImageCandidate } from '@atlas-viewer/iiif-image-api';
4
+ import * as React$1 from 'react';
5
+ import React__default, { ReactNode, FunctionComponent, RefObject, Context } from 'react';
6
+ import { R as RenderingStrategy, b as StrategyActions, M as MediaStrategy, c as SingleImageStrategy, E as EmptyStrategy, C as ComplexTimelineStrategy, I as ImageWithOptionalService, T as TimelineKeyframe, U as UnknownStrategy, d as ImageServiceLoaderType } from './useRenderingStrategy-B03X9rQS.js';
7
+ export { f as AnnotationPageDescription, A as AudioSequence, n as ChoiceEvents, k as Single3DModelStrategy, S as SingleAudio, a as SingleVideo, e as SingleYouTubeVideo, i as TextContent, h as TextualContentStrategy, m as UseRenderingStrategy, o as UseRenderingStrategyOptions, V as VideoSequence, l as get3dStrategy, g as getImageStrategy, j as getTextualContentStrategy, u as useLoadImageService, p as useRenderingStrategy } from './useRenderingStrategy-B03X9rQS.js';
8
+ import * as _iiif_helpers from '@iiif/helpers';
9
+ import { ChoiceDescription, Paintables, Vault as Vault$1, ComplexChoice } from '@iiif/helpers';
10
+ import { BoxStyle, AtlasProps, Preset } from '@atlas-viewer/atlas';
11
+ import { InternationalString, ImageService as ImageService$1, ImageSize, AuthProbeService2, Auth2LocationResource, Auth2SubstituteResource, AuthAccessService2, AuthAccessTokenService2, AuthAccessToken2, SearchServiceQueryParams, SearchServiceSearchResponse, SearchService as SearchService$1, SearchServiceAutocomplete, Reference, Annotation } from '@iiif/presentation-3';
12
+ import { RegionParameter, RotationParameter, SizeParameter } from '@iiif/parser/image-3';
8
13
  import * as polygon_editor from 'polygon-editor';
9
14
  import { RenderState, InputShape, SlowState } from 'polygon-editor';
10
- import { BoxStyle, Preset } from '@atlas-viewer/atlas';
11
15
  import * as zustand_vanilla from 'zustand/vanilla';
12
16
  import { StoreApi } from 'zustand/vanilla';
13
17
  import * as zustand from 'zustand';
14
18
  import { StoreApi as StoreApi$1 } from 'zustand';
15
- import { C as ComplexTimelineStrategy, T as TimelineKeyframe, U as UnknownStrategy, M as MediaStrategy, d as ImageServiceLoaderType } from './useRenderingStrategy-2EaRC2Nc.js';
16
- export { f as AnnotationPageDescription, A as AudioSequence, n as ChoiceEvents, E as EmptyStrategy, I as ImageWithOptionalService, R as RenderingStrategy, k as Single3DModelStrategy, b as SingleAudio, a as SingleImageStrategy, c as SingleVideo, e as SingleYouTubeVideo, S as StrategyActions, i as TextContent, h as TextualContentStrategy, m as UseRenderingStrategy, o as UseRenderingStrategyOptions, V as VideoSequence, l as get3dStrategy, g as getImageStrategy, j as getTextualContentStrategy, u as useLoadImageService, p as useRenderingStrategy } from './useRenderingStrategy-2EaRC2Nc.js';
17
19
  import * as mitt from 'mitt';
18
20
  import { Emitter, EventType, Handler } from 'mitt';
19
21
  import { Vault, VaultOptions, NormalizedEntity, IIIFStore } from '@iiif/helpers/vault';
20
- import * as _iiif_helpers from '@iiif/helpers';
21
- import { Paintables, ComplexChoice } from '@iiif/helpers';
22
22
  import { CanvasNormalized, AnnotationNormalized, AnnotationPageNormalized, CollectionNormalized, ManifestNormalized, RangeNormalized } from '@iiif/presentation-3-normalized';
23
+ import { ImageServiceLoader, ImageCandidateRequest, ImageCandidate } from '@iiif/helpers/image-service';
23
24
  export { emptyActions, emptyStrategy, getParsedTargetSelector, getRenderingStrategy, parseSpecificResource, unknownResponse, unsupportedStrategy } from './utils.js';
24
25
  import { VaultZustandStore } from '@iiif/helpers/vault/store';
25
26
  import * as _iiif_helpers_painting_annotations from '@iiif/helpers/painting-annotations';
26
27
  import * as _iiif_helpers_styles from '@iiif/helpers/styles';
27
28
  export * from '@iiif/helpers/annotation-targets';
28
29
 
30
+ interface CanvasStrategyProviderProps {
31
+ onChoiceChange?: (choice?: ChoiceDescription) => void;
32
+ strategies?: Array<RenderingStrategy['type']>;
33
+ registerActions?: (actions: StrategyActions) => void;
34
+ defaultChoices?: Array<{
35
+ id: string;
36
+ opacity?: number;
37
+ }>;
38
+ children: ReactNode;
39
+ renderMediaControls?: (strategy: MediaStrategy) => ReactNode;
40
+ viewControlsDeps?: any[];
41
+ renderViewerControls?: (strategy: SingleImageStrategy | EmptyStrategy) => ReactNode;
42
+ renderComplexTimelineControls?: (strategy: ComplexTimelineStrategy) => ReactNode;
43
+ complexTimelineControlsDeps?: any[];
44
+ mediaControlsDeps?: any[];
45
+ throwOnUnknown?: boolean;
46
+ }
47
+ declare function CanvasStrategyProvider({ strategies, registerActions, defaultChoices, onChoiceChange, mediaControlsDeps, renderMediaControls, renderViewerControls, viewControlsDeps, renderComplexTimelineControls, complexTimelineControlsDeps, throwOnUnknown, children, }: CanvasStrategyProviderProps): react_jsx_runtime.JSX.Element;
48
+
49
+ interface CanvasWorldObjectProps {
50
+ x?: number;
51
+ y?: number;
52
+ keepCanvasScale?: boolean;
53
+ children?: ReactNode;
54
+ }
55
+ declare function CanvasWorldObject({ x, y, keepCanvasScale, children }: CanvasWorldObjectProps): react_jsx_runtime.JSX.Element | null;
56
+
57
+ declare function ThumbnailFallbackImage({ x, y }: {
58
+ x?: number;
59
+ y?: number;
60
+ }): react_jsx_runtime.JSX.Element | null;
61
+
62
+ interface RenderEmptyStrategyProps {
63
+ backgroundStyle?: BoxStyle;
64
+ alwaysShowBackground?: boolean;
65
+ }
66
+ declare function RenderEmptyStrategy({ backgroundStyle, alwaysShowBackground }: RenderEmptyStrategyProps): react_jsx_runtime.JSX.Element | null;
67
+
68
+ declare function RenderComplexTimelineStrategy(): react_jsx_runtime.JSX.Element | null;
69
+
70
+ interface TextualContextStrategyProps {
71
+ onClickPaintingAnnotation?: (id: string, e: any) => void;
72
+ children?: ReactNode;
73
+ }
74
+ declare function RenderTextualContentStrategy({ onClickPaintingAnnotation, children }: TextualContextStrategyProps): react_jsx_runtime.JSX.Element | null;
75
+
76
+ interface ImageStrategyProps {
77
+ isStatic?: boolean;
78
+ enableSizes?: boolean;
79
+ onClickPaintingAnnotation?: (id: string, image: ImageWithOptionalService, e: any) => void;
80
+ children?: ReactNode;
81
+ }
82
+ declare function RenderImageStrategy({ isStatic, enableSizes, onClickPaintingAnnotation, children, }: ImageStrategyProps): react_jsx_runtime.JSX.Element | null;
83
+
84
+ declare function Render3DModelStrategy(): react_jsx_runtime.JSX.Element | null;
85
+
86
+ interface AnnotationStrategyProps {
87
+ children?: ReactNode;
88
+ }
89
+ declare function RenderAnnotationStrategy({ children }: AnnotationStrategyProps): react_jsx_runtime.JSX.Element | null;
90
+
91
+ interface RenderAudioStrategyProps {
92
+ as?: React.ComponentType<AudioComponentProps>;
93
+ }
94
+ declare function RenderAudioStrategy({ as: CustomAudio }: RenderAudioStrategyProps): react_jsx_runtime.JSX.Element | null;
95
+
96
+ declare function RenderAccompanyingCanvas(): react_jsx_runtime.JSX.Element;
97
+
98
+ interface RenderVideoStrategyProps {
99
+ as?: React__default.ComponentType<VideoComponentProps>;
100
+ }
101
+ declare function RenderVideoStrategy({ as: CustomVideo }: RenderVideoStrategyProps): react_jsx_runtime.JSX.Element | null;
102
+
103
+ declare function RenderYouTubeStrategy(): react_jsx_runtime.JSX.Element | null;
104
+
29
105
  declare const CanvasAnnotations: React$1.ForwardRefExoticComponent<{
30
106
  canvasId?: string | undefined;
31
107
  } & React$1.RefAttributes<{
@@ -79,7 +155,7 @@ type CombinedMetadataProps = Omit<MetadataProps, 'metadata'>;
79
155
  declare function CombinedMetadata(props: CombinedMetadataProps): react_jsx_runtime.JSX.Element;
80
156
 
81
157
  interface ImageProps {
82
- src: string | ImageService;
158
+ src: string | ImageService$1;
83
159
  alt?: string;
84
160
  size?: Partial<ImageSize>;
85
161
  region?: RegionParameter;
@@ -314,6 +390,21 @@ interface PolygonSelectorProps {
314
390
  }
315
391
  declare function PolygonSelector(props: PolygonSelectorProps): react_jsx_runtime.JSX.Element | null;
316
392
 
393
+ interface ImageServiceProps {
394
+ src: string;
395
+ atlas?: AtlasProps;
396
+ errorFallback?: React__default.FC;
397
+ interactive?: boolean;
398
+ skipSizes?: boolean;
399
+ renderViewerControls?: (strategy: SingleImageStrategy | EmptyStrategy) => ReactNode;
400
+ viewControlsDeps?: any[];
401
+ fluid?: boolean;
402
+ x?: number;
403
+ y?: number;
404
+ children?: React__default.ReactNode;
405
+ }
406
+ declare function ImageService({ src, errorFallback, interactive, skipSizes, children, renderViewerControls, viewControlsDeps, fluid, x, y, ...atlasProps }: ImageServiceProps & Omit<AtlasProps, 'children'>): react_jsx_runtime.JSX.Element | null;
407
+
317
408
  declare function AnnotationContext({ annotation, children }: {
318
409
  annotation: string;
319
410
  children: ReactNode;
@@ -599,6 +690,20 @@ interface Search1Store {
599
690
  nextResult: () => void;
600
691
  }
601
692
 
693
+ declare function useCustomContextBridge(): Record<string, {
694
+ value: any;
695
+ Provider: React__default.Provider<any>;
696
+ }>;
697
+ declare function CustomContextBridge(props: Record<string, {
698
+ value: any;
699
+ Provider: React__default.Provider<any>;
700
+ }> & {
701
+ children: React__default.ReactNode;
702
+ }): ReactNode;
703
+ declare function CustomContextBridgeProvider(props: {
704
+ providers: Record<string, Context<any>>;
705
+ children: React__default.ReactNode;
706
+ }): react_jsx_runtime.JSX.Element;
602
707
  declare function useContextBridge(): {
603
708
  VaultContext: {
604
709
  vault: _iiif_helpers.Vault | null;
@@ -615,6 +720,7 @@ declare function useContextBridge(): {
615
720
  };
616
721
  declare function ContextBridge(props: {
617
722
  bridge: ReturnType<typeof useContextBridge>;
723
+ custom?: ReturnType<typeof useCustomContextBridge>;
618
724
  children: ReactNode;
619
725
  }): react_jsx_runtime.JSX.Element;
620
726
 
@@ -727,9 +833,27 @@ declare function AnnotationStyleProvider({ theme, children, }: {
727
833
  children: React.ReactNode;
728
834
  }): react_jsx_runtime.JSX.Element;
729
835
 
730
- declare function getVideoStrategy(canvas: CanvasNormalized, paintables: Paintables): UnknownStrategy | MediaStrategy;
836
+ interface StrategyContext {
837
+ strategy: RenderingStrategy;
838
+ choices: ChoiceDescription | null;
839
+ }
840
+ declare const StrategyReactContext: React$1.Context<StrategyContext | null>;
841
+ declare function useStrategy(): StrategyContext;
842
+
843
+ interface ControlsContext {
844
+ renderMediaControls?: (strategy: MediaStrategy) => ReactNode;
845
+ viewControlsDeps: any[];
846
+ renderViewerControls?: (strategy: SingleImageStrategy | EmptyStrategy) => ReactNode;
847
+ mediaControlsDeps: any[];
848
+ renderComplexTimelineControls?: (strategy: ComplexTimelineStrategy) => ReactNode;
849
+ complexTimelineControlsDeps: any[];
850
+ }
851
+ declare const ControlsReactContext: React$1.Context<ControlsContext | null>;
852
+ declare function useRenderControls(): ControlsContext;
853
+
854
+ declare function getVideoStrategy(canvas: CanvasNormalized, paintables: Paintables, vault: Vault$1): UnknownStrategy | MediaStrategy;
731
855
 
732
- declare function getComplexTimelineStrategy(canvas: CanvasNormalized, paintables: Paintables, loadImageService: ImageServiceLoaderType): ComplexTimelineStrategy;
856
+ declare function getComplexTimelineStrategy(canvas: CanvasNormalized, paintables: Paintables, loadImageService: ImageServiceLoaderType, vault: Vault$1): ComplexTimelineStrategy;
733
857
 
734
858
  declare function useAnnotation(options?: {
735
859
  id: string;
@@ -850,7 +974,7 @@ declare function useExternalManifest(idOrRef: string | {
850
974
  manifest?: ManifestNormalized;
851
975
  };
852
976
 
853
- declare function useImage(service: ImageService | undefined, data?: {
977
+ declare function useImage(service: ImageService$1 | undefined, data?: {
854
978
  size?: Partial<ImageSize>;
855
979
  selector?: RegionParameter;
856
980
  rotation?: number | RotationParameter;
@@ -868,7 +992,7 @@ interface ImageServiceRequestOptions {
868
992
  * @note It is better to use the hook useRenderingStrategy for rendering.
869
993
  */
870
994
  declare function useImageService({ cacheKey }?: ImageServiceRequestOptions): {
871
- data: ImageService | undefined;
995
+ data: ImageService$1 | undefined;
872
996
  isFetching: boolean;
873
997
  status: 'error' | 'success' | 'loading' | 'idle';
874
998
  };
@@ -879,7 +1003,7 @@ declare function useImageTile(): {
879
1003
  id: string | undefined;
880
1004
  width: number | null | undefined;
881
1005
  height: number | null | undefined;
882
- imageService: ImageService;
1006
+ imageService: ImageService$1;
883
1007
  thumbnail: undefined;
884
1008
  } | null;
885
1009
  };
@@ -1120,4 +1244,4 @@ declare function findAllCanvasesInRange(vault: Vault, range: RangeNormalized): A
1120
1244
  declare function findManifestSelectedRange(vault: Vault, manifest: ManifestNormalized, canvasId: string): null | RangeNormalized;
1121
1245
  declare function findSelectedRange(vault: Vault, range: RangeNormalized, canvasId: string): null | RangeNormalized;
1122
1246
 
1123
- export { AnnotationContext, AnnotationPageContext, AnnotationStyleProvider, type AnnotationStyles, type AnnotationThemeDefinition, Auth, type AuthAccessState, type AuthContextActions, type AuthContextCurrentActions, type AuthContextState, AuthProvider, AuthRContext, AuthReactContext, AuthReactContextActions, type AuthState, CanvasAnnotations, CanvasContext, CollectionContext, CombinedMetadata, ComplexTimelineProvider, ComplexTimelineStrategy, ContextBridge, CreateCustomShape, type CreateCustomShapeProps, EventsProvider, Image, type ImageProps, ImageServiceLoaderContext, ImageServiceLoaderType, type ImageServiceRequestOptions, InnerViewerProvider, LanguageProvider, LanguageString, LocaleString, ManifestContext, ManifestMetadata, type MediaPlayerActions, MediaPlayerProvider, type MediaPlayerState, MediaStrategy, Metadata, type MetadataProps, PolygonSelector, type PolygonSelectorProps, type ProbeStore, RangeContext, ReactEventContext, ReactVaultContext, RenderSvgEditorControls, type ResourceContextType, ResourceProvider, ResourceReactContext, type ResourceRequestOptions, SelectorControllerProvider, type SelectorHelperEventTypes, SequenceThumbnails, SimpleViewerContext, SimpleViewerProps, SimpleViewerProvider, SimpleViewerReactContext, SingleCanvasThumbnail, type SvgTheme, TimelineKeyframe, TranslationProvider, TransliterationProvider, UnknownStrategy, type VaultActivatedAnnotation, VaultProvider, ViewerPresetContext, VirtualAnnotationProvider, VisibleCanvasReactContext, authDetailsForResource, createAuthStateStore, createProbe, defaultEmitter, findAllCanvasesInRange, findFirstCanvasFromRange, findManifestSelectedRange, findSelectedRange, flattenAnnotationPageIds, formatTime, getComplexTimelineStrategy, getDefaultAnnotationStyles, getManifestSequence, getVideoStrategy, getVisibleCanvasesFromCanvasId, hasAuth, makeAccessServiceRequest, makeAccessTokenRequest, svgThemes, useAnnotation, useAnnotationPage, useAnnotationPageManager, useAnnotationStyles, useAnnotationsAtTime, useAuthActions, useAuthService, useAuthStore, useAuthToken, useAuthTokens, useCanvas, useCanvasChoices, useCanvasClock, useCanvasSequence, useCanvasStartTime, useCanvasSubset, useClosestLanguage, useCollection, useComplexTimeline, useContextBridge, useCreateLocaleString, useCurrentAuth, useDispatch, useEventEmitter, useEventListener, useExistingVault, useExternalCollection, useExternalManifest, useExternalResource, useIIIFLanguage, useImage, useImageService, useImageServiceLoader, useImageTile, useIsAuthEnabled, useLocaleString, useManifest, useMediaActions, useMediaElements, useMediaState, usePaintables, usePaintingAnnotations, usePolygonHelper, useRange, useResourceContext, useResourceEvents, useResources, useSearchService, useSelectorController, useSelectorEmitter, useSelectorEvents, useSelectorHelper, useSimpleMediaPlayer, useSimpleViewer, useStyleHelper, useStyles, useSvgEditor, useThumbnail, useTranslations, useTransliteration, useVault, useVaultEffect, useVaultSelector, useViewerPreset, useVirtualAnnotationPage, useVirtualAnnotationPageContext, useVisibleCanvases };
1247
+ export { AnnotationContext, AnnotationPageContext, type AnnotationStrategyProps, AnnotationStyleProvider, type AnnotationStyles, type AnnotationThemeDefinition, Auth, type AuthAccessState, type AuthContextActions, type AuthContextCurrentActions, type AuthContextState, AuthProvider, AuthRContext, AuthReactContext, AuthReactContextActions, type AuthState, CanvasAnnotations, CanvasContext, CanvasStrategyProvider, CanvasWorldObject, CollectionContext, CombinedMetadata, ComplexTimelineProvider, ComplexTimelineStrategy, ContextBridge, type ControlsContext, ControlsReactContext, CreateCustomShape, type CreateCustomShapeProps, CustomContextBridge, CustomContextBridgeProvider, EmptyStrategy, EventsProvider, Image, type ImageProps, ImageService, ImageServiceLoaderContext, ImageServiceLoaderType, type ImageServiceRequestOptions, type ImageStrategyProps, ImageWithOptionalService, InnerViewerProvider, LanguageProvider, LanguageString, LocaleString, ManifestContext, ManifestMetadata, type MediaPlayerActions, MediaPlayerProvider, type MediaPlayerState, MediaStrategy, Metadata, type MetadataProps, PolygonSelector, type PolygonSelectorProps, type ProbeStore, RangeContext, ReactEventContext, ReactVaultContext, Render3DModelStrategy, RenderAccompanyingCanvas, RenderAnnotationStrategy, RenderAudioStrategy, RenderComplexTimelineStrategy, RenderEmptyStrategy, RenderImageStrategy, RenderSvgEditorControls, RenderTextualContentStrategy, RenderVideoStrategy, RenderYouTubeStrategy, RenderingStrategy, type ResourceContextType, ResourceProvider, ResourceReactContext, type ResourceRequestOptions, SelectorControllerProvider, type SelectorHelperEventTypes, SequenceThumbnails, SimpleViewerContext, SimpleViewerProps, SimpleViewerProvider, SimpleViewerReactContext, SingleCanvasThumbnail, SingleImageStrategy, StrategyActions, type StrategyContext, StrategyReactContext, type SvgTheme, ThumbnailFallbackImage, TimelineKeyframe, TranslationProvider, TransliterationProvider, UnknownStrategy, type VaultActivatedAnnotation, VaultProvider, ViewerPresetContext, VirtualAnnotationProvider, VisibleCanvasReactContext, authDetailsForResource, createAuthStateStore, createProbe, defaultEmitter, findAllCanvasesInRange, findFirstCanvasFromRange, findManifestSelectedRange, findSelectedRange, flattenAnnotationPageIds, formatTime, getComplexTimelineStrategy, getDefaultAnnotationStyles, getManifestSequence, getVideoStrategy, getVisibleCanvasesFromCanvasId, hasAuth, makeAccessServiceRequest, makeAccessTokenRequest, svgThemes, useAnnotation, useAnnotationPage, useAnnotationPageManager, useAnnotationStyles, useAnnotationsAtTime, useAuthActions, useAuthService, useAuthStore, useAuthToken, useAuthTokens, useCanvas, useCanvasChoices, useCanvasClock, useCanvasSequence, useCanvasStartTime, useCanvasSubset, useClosestLanguage, useCollection, useComplexTimeline, useContextBridge, useCreateLocaleString, useCurrentAuth, useCustomContextBridge, useDispatch, useEventEmitter, useEventListener, useExistingVault, useExternalCollection, useExternalManifest, useExternalResource, useIIIFLanguage, useImage, useImageService, useImageServiceLoader, useImageTile, useIsAuthEnabled, useLocaleString, useManifest, useMediaActions, useMediaElements, useMediaState, usePaintables, usePaintingAnnotations, usePolygonHelper, useRange, useRenderControls, useResourceContext, useResourceEvents, useResources, useSearchService, useSelectorController, useSelectorEmitter, useSelectorEvents, useSelectorHelper, useSimpleMediaPlayer, useSimpleViewer, useStrategy, useStyleHelper, useStyles, useSvgEditor, useThumbnail, useTranslations, useTransliteration, useVault, useVaultEffect, useVaultSelector, useViewerPreset, useVirtualAnnotationPage, useVirtualAnnotationPageContext, useVisibleCanvases };