1
import 'package:vkdart/vkontakte.dart';
5
/// See https://dev.vk.com/ru/reference/objects/photo
6
class PhotoAttachmentModel extends CustomAttachmentModel {
7
// ignore: public_member_api_docs
8
PhotoAttachmentModel(super.payload) : super(attachType: 'photo');
10
/// The ID of the album in which the photo is located.
11
int? get albumId => payload['album_id'];
13
/// ID of the user who uploaded the photo.
14
int? get userId => payload['user_id'];
16
/// Photo description text.
17
String? get text => payload['text'];
19
/// Date added in Unixtime format.
20
int? get createdAt => payload['date'];
22
/// An array with copies of the image in different sizes.
23
List<PhotoCopyModel> get sizes => (payload['sizes'] as List)
24
.map((e) => PhotoCopyModel((e as Map).cast<String, dynamic>()))
27
/// The width of the original photo in pixels.
28
int? get width => payload['width'];
30
/// The height of the original photo in pixels.
31
int? get height => payload['height'];
33
/// ID of the record where the photo was uploaded.
35
/// see https://dev.vk.com/ru/reference/objects/attachments-wall#Фотография%20(type%20=%20photo)
36
int? get postId => payload['post_id'];
41
/// See https://dev.vk.com/ru/reference/objects/photo-sizes
43
// ignore: public_member_api_docs
44
PhotoCopyModel(this.photoObject);
47
final Map<String, dynamic> photoObject;
50
String get type => photoObject['type'];
53
String get url => photoObject['url'];
56
int get width => photoObject['width'];
59
int get height => photoObject['height'];