/** * STXImage component: Represents a single image for the STXImageUpload component * * @interface STXImage * @member {string} mediaId database reference id of media object (optional) * @member {string} imageId id connecting uploady item and image (optional) * @member {string} title image title, default: file name * @member {string} storageUrl url where image is stored in file system/cloud service etc. * @member {string} downloadUrl url where image can be downloaded to disk * @member {string} thumbnailUrl url where thumbnail of image can be retrieved * @member {number} width original image width * @member {number} height original image height * @member {number} fileSize original image's file size in bytes * @member {string} category enum for categorization, default: '' * @member {number} order order within the category, default: 1 */ export interface STXImage { mediaId?: string; imageId?: string; title: string; storageUrl: string; downloadUrl: string; thumbnailUrl: string; type: string; width: number; height: number; fileSize: number; tag: string; sort: number; } /** * STXImageGallery component: Display, add, delete, move STXImages in a responsive way * * @interface STXImageGallery * @member {number} rows size of the gallery in thumbnail rows. Default: "0 = auto" * @member {STXImage[]} images array of STXImages * @member {string[]} categories list of categories to filter the supplied STXImages by, optional * @member {boolean} enableMultiple if enabled, allows multiple STXImage uploads. Otherwise, only a single STXImage can be uploaded * @member {boolean} enableAdd allow adding an image. Default: true * @member {boolean} enableDelete allow deleting images (= showing a deletion icon on each image). Default: true * @member {boolean} enableMove allow switching the order of items via drag & drop. Default: true * @member {boolean} enableDrop allow dropping images onto the control. Default: true * @member {function} onAddImage called when a file has been selected to be added * @member {function} onAddImages called when multiple files have been selected to be added * @member {function} onErrorImage called when an erroneous file upload is cancelled */ export interface STXImageGallery { images: STXImage[]; tag: string; rows?: number; previewHeight?: number; previewPadding?: number; tagFilter?: string[]; enableMultiple?: boolean; enableAdd?: boolean; enableDelete?: boolean; enableMove?: boolean; enableDrop?: boolean; onAddImage?: (item: any, tag: string) => void; onDeleteImage?: (image: STXImage) => void; onUpdateImage?: (image: STXImage) => void; onErrorImage?: (imageId: string) => void; }