react-iiif-vault 1.1.0 → 1.2.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/bundle.d.ts CHANGED
@@ -10,9 +10,13 @@ import { BoxSelector, TemporalBoxSelector, TemporalSelector } from '@iiif/helper
10
10
  export * from '@iiif/helpers/annotation-targets';
11
11
  import { ImageCandidate, RegionParameter, RotationParameter, SizeParameter, ImageServiceLoader, ImageCandidateRequest } from '@atlas-viewer/iiif-image-api';
12
12
  import { Vault, VaultOptions, NormalizedEntity, IIIFStore } from '@iiif/helpers/vault';
13
+ import * as polygon_editor from 'polygon-editor';
14
+ import { RenderState, InputShape, SlowState } from 'polygon-editor';
13
15
  import * as zustand_vanilla from 'zustand/vanilla';
14
16
  import { StoreApi } from 'zustand/vanilla';
15
17
  import * as zustand from 'zustand';
18
+ import * as mitt from 'mitt';
19
+ import { Handler } from 'mitt';
16
20
  import * as _iiif_helpers_painting_annotations from '@iiif/helpers/painting-annotations';
17
21
  import { Paintables as Paintables$1 } from '@iiif/helpers/painting-annotations';
18
22
  import { VaultZustandStore } from '@iiif/helpers/vault/store';
@@ -451,6 +455,177 @@ interface SingleCanvasThumbnailProps {
451
455
  }
452
456
  declare function SingleCanvasThumbnail(props: SingleCanvasThumbnailProps): react_jsx_runtime.JSX.Element;
453
457
 
458
+ interface SvgEditorOptions {
459
+ image: {
460
+ height: number;
461
+ width: number;
462
+ };
463
+ currentShape: InputShape | null;
464
+ onChange: (e: InputShape) => void;
465
+ hideShapeLines?: boolean;
466
+ }
467
+ declare function useSvgEditor(options: SvgEditorOptions, deps: any[]): {
468
+ helper: {
469
+ draw: {
470
+ enable(): void;
471
+ disable(): void;
472
+ toggle(): void;
473
+ };
474
+ state: RenderState;
475
+ modifiers: {
476
+ reset(): void;
477
+ getForType(type: string | null): Record<string, string>;
478
+ set(modifier: string): void;
479
+ unset(modifier: string): void;
480
+ };
481
+ stamps: {
482
+ set(selectedStamp: InputShape | null): void;
483
+ clear(): void;
484
+ square(): void;
485
+ triangle(): void;
486
+ pentagon(): void;
487
+ hexagon(): void;
488
+ };
489
+ key: {
490
+ down(key: string): true | undefined;
491
+ up(key: string): void;
492
+ };
493
+ setScale: (scale: number) => void;
494
+ clock: {
495
+ set: (renderFunc: polygon_editor.RenderFunc) => void;
496
+ start: (renderFunc?: polygon_editor.RenderFunc | undefined, setStateFunc?: polygon_editor.SetState | undefined) => void;
497
+ stop: () => void;
498
+ step: (deltaTime?: number | undefined) => void;
499
+ };
500
+ pointer: (pointers: ([number, number] | [number, number, number, number, number, number])[]) => void;
501
+ blur: () => void;
502
+ pointerDown: () => void;
503
+ pointerUp: () => void;
504
+ setShape: (shape: InputShape | null) => void;
505
+ modes: {
506
+ toggleLineBoxMode: () => void;
507
+ toggleLineMode: () => void;
508
+ enableLineMode(): void;
509
+ disableLineMode(): void;
510
+ enableLineBoxMode(): void;
511
+ disableLineBoxMode(): void;
512
+ };
513
+ label: (type: string | null) => string;
514
+ };
515
+ state: SlowState;
516
+ isAddingPoint: boolean;
517
+ isSplitting: boolean;
518
+ isStamping: boolean | null;
519
+ isHoveringPoint: boolean;
520
+ transitionDirection: string | null;
521
+ transitionRotate: boolean;
522
+ defs: react_jsx_runtime.JSX.Element;
523
+ editor: react_jsx_runtime.JSX.Element | null;
524
+ };
525
+
526
+ type HelperType$1 = ReturnType<typeof useSvgEditor>['helper'];
527
+ type StateType$1 = ReturnType<typeof useSvgEditor>['state'];
528
+ interface RenderSvgEditorControlsProps {
529
+ helper: HelperType$1;
530
+ state: StateType$1;
531
+ showShapes: boolean;
532
+ classNames?: Partial<{
533
+ button: string;
534
+ }>;
535
+ enabled?: {
536
+ draw?: boolean;
537
+ polygon?: boolean;
538
+ line?: boolean;
539
+ lineBox?: boolean;
540
+ square?: boolean;
541
+ triangle?: boolean;
542
+ hexagon?: boolean;
543
+ circle?: boolean;
544
+ delete?: boolean;
545
+ };
546
+ icons?: Partial<{
547
+ DrawIcon: ReactNode;
548
+ PolygonIcon: ReactNode;
549
+ LineIcon: ReactNode;
550
+ LineBoxIcon: ReactNode;
551
+ ShapesIcon: ReactNode;
552
+ SquareIcon: ReactNode;
553
+ TriangleIcon: ReactNode;
554
+ HexagonIcon: ReactNode;
555
+ CircleIcon: ReactNode;
556
+ DeleteForeverIcon: ReactNode;
557
+ }>;
558
+ }
559
+ declare function RenderSvgEditorControls({ helper, showShapes, state, enabled, classNames, icons, }: RenderSvgEditorControlsProps): react_jsx_runtime.JSX.Element;
560
+
561
+ declare const svgThemes: ({
562
+ name: string;
563
+ outer: {
564
+ borderWidth: number;
565
+ borderColor: string;
566
+ };
567
+ inner: {
568
+ borderWidth: number;
569
+ borderColor: string;
570
+ };
571
+ } | {
572
+ name: string;
573
+ outer: {
574
+ borderWidth: string;
575
+ borderColor: string;
576
+ };
577
+ inner: {
578
+ borderWidth: string;
579
+ borderColor: string;
580
+ };
581
+ } | {
582
+ name: string;
583
+ outer: {
584
+ borderWidth: string;
585
+ borderColor: string;
586
+ };
587
+ inner: {
588
+ borderWidth?: undefined;
589
+ borderColor?: undefined;
590
+ };
591
+ })[];
592
+ type HelperType = ReturnType<typeof useSvgEditor>['helper'];
593
+ type StateType = ReturnType<typeof useSvgEditor>['state'];
594
+ type SvgTheme = {
595
+ name?: string;
596
+ outer: BoxStyle;
597
+ inner: BoxStyle;
598
+ };
599
+ interface CreateCustomShapeProps {
600
+ image: {
601
+ width: number;
602
+ height: number;
603
+ };
604
+ shape?: any;
605
+ updateShape: any;
606
+ theme?: {
607
+ name?: string;
608
+ outer: BoxStyle;
609
+ inner: BoxStyle;
610
+ };
611
+ controlsHtmlId?: string;
612
+ renderControls?: (helper: HelperType, state: StateType, showShapes: boolean) => any;
613
+ }
614
+ declare function CreateCustomShape(props: CreateCustomShapeProps): react_jsx_runtime.JSX.Element;
615
+
616
+ interface PolygonSelectorProps {
617
+ id: string;
618
+ polygon: InputShape;
619
+ annotationBucket?: string;
620
+ isHighlighted?: boolean;
621
+ updatePolygon?: (shape: InputShape) => void;
622
+ readOnly?: boolean;
623
+ theme?: SvgTheme;
624
+ controlsHtmlId?: string;
625
+ renderControls?: CreateCustomShapeProps['renderControls'];
626
+ }
627
+ declare function PolygonSelector(props: PolygonSelectorProps): react_jsx_runtime.JSX.Element | null;
628
+
454
629
  declare function AnnotationContext({ annotation, children }: {
455
630
  annotation: string;
456
631
  children: ReactNode;
@@ -545,6 +720,7 @@ declare function AuthProvider({ children }: {
545
720
  declare function AuthProvider_Old({ children }: {
546
721
  children: ReactNode;
547
722
  }): react_jsx_runtime.JSX.Element;
723
+ declare function useIsAuthEnabled(): boolean;
548
724
  declare function useAuthStore(): StoreApi<AuthContextState & AuthContextCurrentActions & AuthContextActions>;
549
725
  declare function useAuthActions(): {
550
726
  login: () => void;
@@ -721,6 +897,106 @@ declare function useViewerPreset(): Preset | null | undefined;
721
897
  declare const ImageServiceLoaderContext: React__default.Context<ImageServiceLoader>;
722
898
  declare function useImageServiceLoader(): ImageServiceLoader;
723
899
 
900
+ type SelectorHelperEventTypes = 'click' | 'hover' | 'selector-updated' | 'highlight' | 'clear-highlight' | 'zoom-to' | 'event-listener' | 'remove-event-listener' | 'image-preview-request';
901
+ declare function SelectorControllerProvider({ children }: {
902
+ children: ReactNode;
903
+ }): react_jsx_runtime.JSX.Element;
904
+ declare function useSelectorEmitter(): mitt.Emitter<Record<mitt.EventType, unknown>>;
905
+ declare function useSelectorEvents(id: string): {
906
+ controller: {
907
+ withSelector(selectorId: string): {
908
+ on<T extends {
909
+ selectorId: string;
910
+ } = any>(type: SelectorHelperEventTypes, handler: Handler<T>): () => void;
911
+ emit<T_1 = any>(type: SelectorHelperEventTypes, event: T_1): void;
912
+ };
913
+ on<T_2 extends {
914
+ selectorId: string;
915
+ } = any>(type: SelectorHelperEventTypes, handler: Handler<T_2>): () => void;
916
+ emit<T_3 extends {
917
+ selectorId: string;
918
+ } = any>(type: SelectorHelperEventTypes, event: T_3): void;
919
+ };
920
+ onClick: (e?: {
921
+ x: number;
922
+ y: number;
923
+ width: number;
924
+ height: number;
925
+ }) => void;
926
+ onHover: (e?: {
927
+ x: number;
928
+ y: number;
929
+ width: number;
930
+ height: number;
931
+ }) => void;
932
+ isHighlighted: boolean;
933
+ };
934
+ declare function useSelectorController(): {
935
+ withSelector(selectorId: string): {
936
+ on<T extends {
937
+ selectorId: string;
938
+ } = any>(type: SelectorHelperEventTypes, handler: Handler<T>): () => void;
939
+ emit<T_1 = any>(type: SelectorHelperEventTypes, event: T_1): void;
940
+ };
941
+ on<T_2 extends {
942
+ selectorId: string;
943
+ } = any>(type: SelectorHelperEventTypes, handler: Handler<T_2>): () => void;
944
+ emit<T_3 extends {
945
+ selectorId: string;
946
+ } = any>(type: SelectorHelperEventTypes, event: T_3): void;
947
+ };
948
+ declare function useSelectorHelper(): {
949
+ withSelector(selectorId: string): {
950
+ highlight(): void;
951
+ clearHighlight(): void;
952
+ zoomTo(): void;
953
+ addEventListener(name: string, callback: () => void): () => void;
954
+ getImagePreview(): Promise<any>;
955
+ on<T extends {
956
+ selectorId: string;
957
+ } = any>(type: SelectorHelperEventTypes, handler: Handler<T>): () => void;
958
+ };
959
+ highlight(selectorId: string): void;
960
+ clearHighlight(selectorId: string): void;
961
+ zoomTo(selectorId: string): void;
962
+ addEventListener(selectorId: string, name: string, callback: () => void): () => void;
963
+ getImagePreview(selectorId: string): Promise<any>;
964
+ on<T_1 extends {
965
+ selectorId: string;
966
+ } = any>(type: SelectorHelperEventTypes, handler: Handler<T_1>): () => void;
967
+ };
968
+
969
+ interface AnnotationStyles {
970
+ id: number;
971
+ name: string;
972
+ creator?: {
973
+ id: number;
974
+ name: string;
975
+ };
976
+ createdAt: Date;
977
+ theme: {
978
+ default: AnnotationThemeDefinition;
979
+ hidden: AnnotationThemeDefinition;
980
+ highlighted: AnnotationThemeDefinition;
981
+ } & Record<string, AnnotationThemeDefinition>;
982
+ }
983
+ type AnnotationThemeDefinition = BoxStyle & {
984
+ hidden?: boolean;
985
+ interactive?: boolean;
986
+ hotspot?: boolean;
987
+ hotspotSize?: 'lg' | 'md' | 'sm';
988
+ };
989
+ declare function getDefaultAnnotationStyles(): AnnotationStyles['theme'];
990
+ declare function useAnnotationStyles(): {
991
+ default: AnnotationThemeDefinition;
992
+ hidden: AnnotationThemeDefinition;
993
+ highlighted: AnnotationThemeDefinition;
994
+ } & Record<string, AnnotationThemeDefinition>;
995
+ declare function AnnotationStyleProvider({ theme, children, }: {
996
+ theme?: AnnotationStyles['theme'];
997
+ children: React.ReactNode;
998
+ }): react_jsx_runtime.JSX.Element;
999
+
724
1000
  /**
725
1001
  * Parse specific resource.
726
1002
  *
@@ -953,6 +1229,57 @@ declare function VirtualAnnotationProvider({ children }: {
953
1229
  children: any;
954
1230
  }): react_jsx_runtime.JSX.Element;
955
1231
 
1232
+ declare function usePolygonHelper(data: any, render: (t: any, s: any) => void, commitShape: (shape: InputShape) => void): {
1233
+ state: SlowState;
1234
+ helper: {
1235
+ draw: {
1236
+ enable(): void;
1237
+ disable(): void;
1238
+ toggle(): void;
1239
+ };
1240
+ state: polygon_editor.RenderState;
1241
+ modifiers: {
1242
+ reset(): void;
1243
+ getForType(type: string | null): Record<string, string>;
1244
+ set(modifier: string): void;
1245
+ unset(modifier: string): void;
1246
+ };
1247
+ stamps: {
1248
+ set(selectedStamp: InputShape | null): void;
1249
+ clear(): void;
1250
+ square(): void;
1251
+ triangle(): void;
1252
+ pentagon(): void;
1253
+ hexagon(): void;
1254
+ };
1255
+ key: {
1256
+ down(key: string): true | undefined;
1257
+ up(key: string): void;
1258
+ };
1259
+ setScale: (scale: number) => void;
1260
+ clock: {
1261
+ set: (renderFunc: polygon_editor.RenderFunc) => void;
1262
+ start: (renderFunc?: polygon_editor.RenderFunc | undefined, setStateFunc?: polygon_editor.SetState | undefined) => void;
1263
+ stop: () => void;
1264
+ step: (deltaTime?: number | undefined) => void;
1265
+ };
1266
+ pointer: (pointers: ([number, number] | [number, number, number, number, number, number])[]) => void;
1267
+ blur: () => void;
1268
+ pointerDown: () => void;
1269
+ pointerUp: () => void;
1270
+ setShape: (shape: InputShape | null) => void;
1271
+ modes: {
1272
+ toggleLineBoxMode: () => void;
1273
+ toggleLineMode: () => void;
1274
+ enableLineMode(): void;
1275
+ disableLineMode(): void;
1276
+ enableLineBoxMode(): void;
1277
+ disableLineBoxMode(): void;
1278
+ };
1279
+ label: (type: string | null) => string;
1280
+ };
1281
+ };
1282
+
956
1283
  declare function flattenAnnotationPageIds({ canvas, manifest, all, canvases, }: {
957
1284
  manifest?: ManifestNormalized;
958
1285
  canvas?: CanvasNormalized;
@@ -960,11 +1287,16 @@ declare function flattenAnnotationPageIds({ canvas, manifest, all, canvases, }:
960
1287
  all?: boolean;
961
1288
  }): string[];
962
1289
 
1290
+ declare function TranslationProvider(props: {
1291
+ translations: Record<string, string>;
1292
+ children: ReactNode;
1293
+ }): react_jsx_runtime.JSX.Element;
963
1294
  declare function LanguageProvider(props: {
964
1295
  language: string;
965
1296
  children: ReactNode;
966
1297
  }): react_jsx_runtime.JSX.Element;
967
1298
  declare function useIIIFLanguage(): string;
1299
+ declare function useTranslations(): Record<string, string>;
968
1300
  type LanguageStringProps = {
969
1301
  [key: string]: any;
970
1302
  } & {
@@ -974,8 +1306,8 @@ type LanguageStringProps = {
974
1306
  };
975
1307
  declare function LanguageString({ as: Component, language, children, viewingDirection, ...props }: LanguageStringProps): react_jsx_runtime.JSX.Element;
976
1308
  declare const useClosestLanguage: (getLanguages: () => string[], deps?: any[]) => string | undefined;
977
- declare function useLocaleString(inputText: InternationalString | string | null | undefined, defaultText?: string, separator?: string): readonly [string, string | undefined];
978
- declare function useCreateLocaleString(): (inputText: InternationalString | string | null | undefined, defaultText?: string, separator?: string) => string;
1309
+ declare function useLocaleString(inputText: InternationalString | string | null | undefined, defaultText?: string, separator?: string, translations?: Record<string, string>): readonly [string, string | undefined];
1310
+ declare function useCreateLocaleString(): (inputText: InternationalString | string | null | undefined, defaultText?: string, separator?: string, translations?: Record<string, string>) => string;
979
1311
  type LocaleStringProps = {
980
1312
  as?: string | React__default.FC<any>;
981
1313
  defaultText?: string;
@@ -1055,4 +1387,4 @@ declare function findAllCanvasesInRange(vault: Vault, range: RangeNormalized): A
1055
1387
  declare function findManifestSelectedRange(vault: Vault, manifest: ManifestNormalized, canvasId: string): null | RangeNormalized;
1056
1388
  declare function findSelectedRange(vault: Vault, range: RangeNormalized, canvasId: string): null | RangeNormalized;
1057
1389
 
1058
- export { AnnotationContext, AnnotationPageContext, type AnnotationPageDescription, type AudioSequence, Auth, type AuthAccessState, type AuthContextActions, type AuthContextCurrentActions, type AuthContextState, AuthProvider, AuthProvider_Old, AuthRContext, AuthReactContext, AuthReactContextActions, type AuthState, CanvasAnnotations, CanvasContext, CanvasPanel, CollectionContext, CombinedMetadata, type ComplexTimelineStrategy, ContextBridge, type EmptyStrategy, Image, type ImageProps, ImageServiceLoaderContext, type ImageServiceLoaderType, type ImageServiceRequestOptions, type ImageWithOptionalService, InnerViewerProvider, LanguageProvider, LanguageString, LocaleString, ManifestContext, ManifestMetadata, type MediaPlayerActions, MediaPlayerProvider, type MediaPlayerState, type MediaStrategy, Metadata, type MetadataProps, type ProbeStore, RangeContext, ReactVaultContext, type RenderingStrategy, type ResourceContextType, ResourceProvider, ResourceReactContext, type ResourceRequestOptions, SequenceThumbnails, type SimpleViewerActions, type SimpleViewerActionsType, type SimpleViewerContext, type SimpleViewerProps, SimpleViewerProvider, SimpleViewerReactContext, type SimpleViewerReducerState, type Single3DModelStrategy, type SingleAudio, SingleCanvasThumbnail, type SingleImageStrategy, type SingleVideo, type SingleYouTubeVideo, type StrategyActions, type TextualContentStrategy, type UnknownStrategy, type UseRenderingStrategy, type UseRenderingStrategyOptions, type VaultActivatedAnnotation, VaultProvider, type VideoSequence, ViewerPresetContext, VirtualAnnotationProvider, VisibleCanvasReactContext, authDetailsForResource, createAuthStateStore, createProbe, emptyActions, emptyStrategy, findAllCanvasesInRange, findFirstCanvasFromRange, findManifestSelectedRange, findSelectedRange, flattenAnnotationPageIds, formatTime, get3dStrategy, getImageStrategy, getManifestSequence, getParsedTargetSelector, getRenderingStrategy, getTextualContentStrategy, getVideoStrategy, getVisibleCanvasesFromCanvasId, hasAuth, makeAccessServiceRequest, makeAccessTokenRequest, parseSpecificResource, unknownResponse, unsupportedStrategy, useAnnotation, useAnnotationPage, useAnnotationPageManager, useAnnotationsAtTime, useAuthActions, useAuthActions_old, useAuthService, useAuthService_old, useAuthStore, useAuthToken, useAuthToken_old, useAuthTokens, useAuthTokens_old, useCanvas, useCanvasClock, useCanvasSequence, useCanvasSubset, useClosestLanguage, useCollection, useContextBridge, useCreateLocaleString, useCurrentAuth, useCurrentAuth_old, useDispatch, useEventListener, useExistingVault, useExternalCollection, useExternalManifest, useExternalResource, useIIIFLanguage, useImage, useImageService, useImageServiceLoader, useImageTile, useLoadImageService, useLocaleString, useManifest, useMediaActions, useMediaElements, useMediaState, usePaintables, usePaintingAnnotations, useRange, useRenderingStrategy, useResourceContext, useResourceEvents, useResources, useSearchService, useSimpleMediaPlayer, useSimpleViewer, useStyleHelper, useStyles, useThumbnail, useVault, useVaultEffect, useVaultSelector, useViewerPreset, useVirtualAnnotationPage, useVirtualAnnotationPageContext, useVisibleCanvases };
1390
+ export { AnnotationContext, AnnotationPageContext, type AnnotationPageDescription, AnnotationStyleProvider, type AnnotationStyles, type AnnotationThemeDefinition, type AudioSequence, Auth, type AuthAccessState, type AuthContextActions, type AuthContextCurrentActions, type AuthContextState, AuthProvider, AuthProvider_Old, AuthRContext, AuthReactContext, AuthReactContextActions, type AuthState, CanvasAnnotations, CanvasContext, CanvasPanel, CollectionContext, CombinedMetadata, type ComplexTimelineStrategy, ContextBridge, CreateCustomShape, type CreateCustomShapeProps, type EmptyStrategy, Image, type ImageProps, ImageServiceLoaderContext, type ImageServiceLoaderType, type ImageServiceRequestOptions, type ImageWithOptionalService, InnerViewerProvider, LanguageProvider, LanguageString, LocaleString, ManifestContext, ManifestMetadata, type MediaPlayerActions, MediaPlayerProvider, type MediaPlayerState, type MediaStrategy, Metadata, type MetadataProps, PolygonSelector, type PolygonSelectorProps, type ProbeStore, RangeContext, ReactVaultContext, RenderSvgEditorControls, type RenderingStrategy, type ResourceContextType, ResourceProvider, ResourceReactContext, type ResourceRequestOptions, SelectorControllerProvider, type SelectorHelperEventTypes, SequenceThumbnails, type SimpleViewerActions, type SimpleViewerActionsType, type SimpleViewerContext, type SimpleViewerProps, SimpleViewerProvider, SimpleViewerReactContext, type SimpleViewerReducerState, type Single3DModelStrategy, type SingleAudio, SingleCanvasThumbnail, type SingleImageStrategy, type SingleVideo, type SingleYouTubeVideo, type StrategyActions, type SvgTheme, type TextualContentStrategy, TranslationProvider, type UnknownStrategy, type UseRenderingStrategy, type UseRenderingStrategyOptions, type VaultActivatedAnnotation, VaultProvider, type VideoSequence, ViewerPresetContext, VirtualAnnotationProvider, VisibleCanvasReactContext, authDetailsForResource, createAuthStateStore, createProbe, emptyActions, emptyStrategy, findAllCanvasesInRange, findFirstCanvasFromRange, findManifestSelectedRange, findSelectedRange, flattenAnnotationPageIds, formatTime, get3dStrategy, getDefaultAnnotationStyles, getImageStrategy, getManifestSequence, getParsedTargetSelector, getRenderingStrategy, getTextualContentStrategy, getVideoStrategy, getVisibleCanvasesFromCanvasId, hasAuth, makeAccessServiceRequest, makeAccessTokenRequest, parseSpecificResource, svgThemes, unknownResponse, unsupportedStrategy, useAnnotation, useAnnotationPage, useAnnotationPageManager, useAnnotationStyles, useAnnotationsAtTime, useAuthActions, useAuthActions_old, useAuthService, useAuthService_old, useAuthStore, useAuthToken, useAuthToken_old, useAuthTokens, useAuthTokens_old, useCanvas, useCanvasClock, useCanvasSequence, useCanvasSubset, useClosestLanguage, useCollection, useContextBridge, useCreateLocaleString, useCurrentAuth, useCurrentAuth_old, useDispatch, useEventListener, useExistingVault, useExternalCollection, useExternalManifest, useExternalResource, useIIIFLanguage, useImage, useImageService, useImageServiceLoader, useImageTile, useIsAuthEnabled, useLoadImageService, useLocaleString, useManifest, useMediaActions, useMediaElements, useMediaState, usePaintables, usePaintingAnnotations, usePolygonHelper, useRange, useRenderingStrategy, useResourceContext, useResourceEvents, useResources, useSearchService, useSelectorController, useSelectorEmitter, useSelectorEvents, useSelectorHelper, useSimpleMediaPlayer, useSimpleViewer, useStyleHelper, useStyles, useSvgEditor, useThumbnail, useTranslations, useVault, useVaultEffect, useVaultSelector, useViewerPreset, useVirtualAnnotationPage, useVirtualAnnotationPageContext, useVisibleCanvases };