1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00
pigallery2/frontend/app/ui/gallery/grid/GridMedia.ts
2019-03-10 20:57:27 +01:00

35 lines
874 B
TypeScript

import {Media} from '../Media';
import {MediaDTO} from '../../../../../common/entities/MediaDTO';
import {OrientationTypes} from 'ts-exif-parser';
import {PhotoDTO} from '../../../../../common/entities/PhotoDTO';
import {VideoDTO} from '../../../../../common/entities/VideoDTO';
export class GridMedia extends Media {
constructor(media: MediaDTO, renderWidth: number, renderHeight: number, public rowId: number) {
super(media, renderWidth, renderHeight);
}
public get Orientation(): OrientationTypes {
return (<PhotoDTO>this.media).metadata.orientation || OrientationTypes.TOP_LEFT;
}
isPhoto(): boolean {
return MediaDTO.isPhoto(this.media);
}
isVideo(): boolean {
return MediaDTO.isVideo(this.media);
}
get Video(): VideoDTO {
return <VideoDTO>this.media;
}
get Photo(): PhotoDTO {
return <PhotoDTO>this.media;
}
}