@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
67 lines (66 loc) • 2.87 kB
TypeScript
import { IWebComponentInstance } from "../../../..";
import "../../ImageTransformer.css";
import { OmniaTheming, VueComponentBase } from "../../..";
import { ImageTransformerLocalization } from "../../loc/localize";
import { MediaPickerImageRatio, MediaPickerRenditionData, ImageCropzoneRect, MediaPickerCropTransformation, MediaPickerRollupImageRatio, MediaPickerBase64Image } from "../../../../models";
import { MultilingualStore, MediaPickerStore } from "../../../../stores";
import { MediaPickerService } from "../../../../services";
export interface ImageRollupProps {
sourceImage: MediaPickerBase64Image;
sourceRenditionData?: Array<MediaPickerRenditionData>;
rollupRatios: Array<MediaPickerRollupImageRatio>;
renditionDataChangedCallback?: (result: Array<MediaPickerRenditionData>) => void;
shareableRenditions?: Array<MediaPickerCropTransformation>;
selectedRenditionId?: {
value: number;
};
isShowWarningDialog?: {
value: boolean;
};
}
export declare class ImageRollup extends VueComponentBase<ImageRollupProps> implements IWebComponentInstance, ImageRollupProps {
sourceImage: MediaPickerBase64Image;
sourceRenditionData?: Array<MediaPickerRenditionData>;
rollupRatios: Array<MediaPickerRollupImageRatio>;
renditionDataChangedCallback?: (result: Array<MediaPickerRenditionData>) => void;
shareableRenditions: Array<MediaPickerCropTransformation>;
selectedRenditionId: {
value: number;
};
isShowWarningDialog: {
value: boolean;
};
omniaTheming: OmniaTheming;
multilingualStore: MultilingualStore;
loc: ImageTransformerLocalization.locInterface;
mediaPickerStore: MediaPickerStore;
mediaPickerService: MediaPickerService;
private editorInstance;
private selectedRatio;
private selectedRendition;
private editorId;
private maxImageHeight;
private maxImageWidth;
private availableImageRatios;
private sourceImageInformation;
private isLoading;
private editingRenditionData?;
sourceImageChanged(newValue: string, oldValue: string): void;
shareableRenditionsChanged(): void;
mounted(): void;
beforeDestroy(): void;
removeEditor(): void;
init(): void;
initImageEditor(): void;
resizeCanvasDimension(): Promise<void>;
ensureImageRenditionData(): void;
onInitCropperEvent(): void;
loadImage(): void;
setSelectedImageRatio(imageRatio: MediaPickerImageRatio): void;
setImageRenditionDataProps(cropRect: ImageCropzoneRect, imageRenditionData: MediaPickerRenditionData): void;
updateCurrentRenditionData(cropRect: ImageCropzoneRect): void;
updateRenditionDataChange(): void;
saveCropState(rendition: MediaPickerRenditionData): void;
getCropState(ratioId: number): MediaPickerCropTransformation;
render(): VueTsxSupport.JSX.Element;
}