@tindtechnologies/universalviewer
Version:
The Universal Viewer is a community-developed open source project on a mission to help you share your 📚📜📰📽️📻🗿 with the 🌎
97 lines (96 loc) • 4.68 kB
TypeScript
import { BaseExtension } from "../../modules/uv-shared-module/BaseExtension";
import { ContentLeftPanel } from "../../modules/uv-contentleftpanel-module/ContentLeftPanel";
import { CroppedImageDimensions } from "./CroppedImageDimensions";
import { ExternalContentDialogue } from "../../modules/uv-dialogues-module/ExternalContentDialogue";
import { FooterPanel as MobileFooterPanel } from "../../modules/uv-osdmobilefooterpanel-module/MobileFooter";
import { FooterPanel } from "../../modules/uv-searchfooterpanel-module/FooterPanel";
import { HelpDialogue } from "../../modules/uv-dialogues-module/HelpDialogue";
import { Mode } from "./Mode";
import { MoreInfoRightPanel } from "../../modules/uv-moreinforightpanel-module/MoreInfoRightPanel";
import { MultiSelectDialogue } from "../../modules/uv-multiselectdialogue-module/MultiSelectDialogue";
import { PagingHeaderPanel } from "../../modules/uv-pagingheaderpanel-module/PagingHeaderPanel";
import { OpenSeadragonCenterPanel } from "../../modules/uv-openseadragoncenterpanel-module/OpenSeadragonCenterPanel";
import { SettingsDialogue } from "./SettingsDialogue";
import { ShareDialogue } from "./ShareDialogue";
import { AnnotationGroup, AnnotationRect } from "@iiif/manifold";
import { Canvas, TreeNode, Service, Size } from "manifesto.js";
import "./theme/theme.less";
import { Root } from "react-dom/client";
import { Config } from "./config/Config";
import { AdjustImageDialogue } from "../../modules/uv-dialogues-module/AdjustImageDialogue";
export default class OpenSeadragonExtension extends BaseExtension<Config> {
$downloadDialogue: JQuery;
$externalContentDialogue: JQuery;
$helpDialogue: JQuery;
$multiSelectDialogue: JQuery;
$settingsDialogue: JQuery;
$shareDialogue: JQuery;
$adjustImageDialogue: JQuery;
centerPanel: OpenSeadragonCenterPanel;
currentAnnotationRect: AnnotationRect | null;
currentRotation: number;
downloadDialogueRoot: Root;
externalContentDialogue: ExternalContentDialogue;
footerPanel: FooterPanel;
headerPanel: PagingHeaderPanel;
helpDialogue: HelpDialogue;
adjustImageDialogue: AdjustImageDialogue;
isAnnotating: boolean;
leftPanel: ContentLeftPanel;
mobileFooterPanel: MobileFooterPanel;
mode: Mode;
multiSelectDialogue: MultiSelectDialogue;
previousAnnotationRect: AnnotationRect | null;
rightPanel: MoreInfoRightPanel;
settingsDialogue: SettingsDialogue;
shareDialogue: ShareDialogue;
defaultConfig: Config;
create(): void;
createModules(): void;
render(): void;
renderDownloadDialogue(): void;
closeActiveDialogue(): void;
checkForTarget(): void;
checkForAnnotations(): void;
annotate(annotations: AnnotationGroup[], terms?: string): void;
groupWebAnnotationsByTarget(annotations: any): AnnotationGroup[];
groupOpenAnnotationsByTarget(annotations: any): AnnotationGroup[];
checkForSearchParam(): void;
checkForRotationParam(): void;
changeCanvas(canvasIndex: number): void;
getViewer(): any;
getMode(): Mode;
getViewportBounds(): string | null;
getViewerRotation(): number | null;
viewRange(path: string): void;
viewLabel(label: string): void;
treeNodeSelected(node: TreeNode): void;
clearAnnotations(): void;
prevSearchResult(): void;
nextSearchResult(): void;
bookmark(): void;
print(): void;
getCroppedImageDimensions(canvas: Canvas, viewer: any): CroppedImageDimensions | null;
getCroppedImageUri(canvas: Canvas, viewer: any): string | null;
getConfinedImageDimensions(canvas: Canvas, longestSide: number): Size;
getConfinedImageUri(canvas: Canvas, width: number): string | null;
getImageId(canvas: Canvas): string | null;
getImageBaseUri(canvas: Canvas): string;
getInfoUri(canvas: Canvas): string;
getEmbedScript(template: string, width: number, height: number, zoom: string, rotation: number): string;
isSearchEnabled(): boolean;
isPagingSettingEnabled(): boolean;
getAutoCompleteService(): Service | null;
getAutoCompleteUri(): string | null;
getSearchServiceUri(): string | null;
search(terms: string): void;
getSearchResults(searchUri: string, terms: string, searchResults: AnnotationGroup[], cb: (results: AnnotationGroup[]) => void): void;
getAnnotationRects(): AnnotationRect[];
getCurrentAnnotationRectIndex(): number;
getTotalAnnotationRects(): number;
isFirstAnnotationRect(): boolean;
getLastAnnotationRectIndex(): number;
getPrevPageIndex(canvasIndex?: number): number;
getNextPageIndex(canvasIndex?: number): number;
getPagedIndices(canvasIndex?: number): number[];
}