Skip to content

Commit a81e2bb

Browse files
authored
Merge pull request #48 from OlegEremenko991/develop/refactor
Исправление сетки фотографий после удаления фото
2 parents 1974f55 + bddaf33 commit a81e2bb

File tree

20 files changed

+92
-77
lines changed

20 files changed

+92
-77
lines changed

SwiftUI-WorkoutApp.xcodeproj/project.pbxproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@
6565
675A37112854B04400DAE071 /* TextEntryOption.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675A37102854B04400DAE071 /* TextEntryOption.swift */; };
6666
675A37132854B0BC00DAE071 /* MessageType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675A37122854B0BC00DAE071 /* MessageType.swift */; };
6767
675A37152854B11300DAE071 /* Gender.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675A37142854B11300DAE071 /* Gender.swift */; };
68+
675E5618297D21D400B4981A /* Array+.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675E5617297D21D400B4981A /* Array+.swift */; };
6869
675EC649281289FB00C2E229 /* SportsGroundSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675EC648281289FB00C2E229 /* SportsGroundSize.swift */; };
6970
675EC64B28128B7E00C2E229 /* SportsGroundGrade.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675EC64A28128B7E00C2E229 /* SportsGroundGrade.swift */; };
7071
675EC64F2814126800C2E229 /* TextEntryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 675EC64E2814126800C2E229 /* TextEntryView.swift */; };
@@ -80,7 +81,6 @@
8081
67627759283A6149009C203F /* JournalEntryResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67627758283A6148009C203F /* JournalEntryResponse.swift */; };
8182
6762775B283A87AD009C203F /* JournalEntryCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6762775A283A87AD009C203F /* JournalEntryCell.swift */; };
8283
6766A036284603CA0033F1E8 /* TabViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6766A035284603CA0033F1E8 /* TabViewModel.swift */; };
83-
6766A038284604B40033F1E8 /* Tab.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6766A037284604B40033F1E8 /* Tab.swift */; };
8484
676B3AFA283507E900DB4ADA /* EventDetailsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 676B3AF9283507E900DB4ADA /* EventDetailsViewModel.swift */; };
8585
6773111A2965FFAA003CD13A /* PreviewContent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 677311192965FFAA003CD13A /* PreviewContent.swift */; };
8686
6773111C296607AA003CD13A /* FriendAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6773111B296607AA003CD13A /* FriendAction.swift */; };
@@ -230,6 +230,7 @@
230230
675A37102854B04400DAE071 /* TextEntryOption.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextEntryOption.swift; sourceTree = "<group>"; };
231231
675A37122854B0BC00DAE071 /* MessageType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageType.swift; sourceTree = "<group>"; };
232232
675A37142854B11300DAE071 /* Gender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Gender.swift; sourceTree = "<group>"; };
233+
675E5617297D21D400B4981A /* Array+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Array+.swift"; sourceTree = "<group>"; };
233234
675EC648281289FB00C2E229 /* SportsGroundSize.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundSize.swift; sourceTree = "<group>"; };
234235
675EC64A28128B7E00C2E229 /* SportsGroundGrade.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SportsGroundGrade.swift; sourceTree = "<group>"; };
235236
675EC64E2814126800C2E229 /* TextEntryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextEntryView.swift; sourceTree = "<group>"; };
@@ -246,7 +247,6 @@
246247
67627758283A6148009C203F /* JournalEntryResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JournalEntryResponse.swift; sourceTree = "<group>"; };
247248
6762775A283A87AD009C203F /* JournalEntryCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JournalEntryCell.swift; sourceTree = "<group>"; };
248249
6766A035284603CA0033F1E8 /* TabViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TabViewModel.swift; sourceTree = "<group>"; };
249-
6766A037284604B40033F1E8 /* Tab.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tab.swift; sourceTree = "<group>"; };
250250
676B3AF9283507E900DB4ADA /* EventDetailsViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventDetailsViewModel.swift; sourceTree = "<group>"; };
251251
677311192965FFAA003CD13A /* PreviewContent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreviewContent.swift; sourceTree = "<group>"; };
252252
6773111B296607AA003CD13A /* FriendAction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FriendAction.swift; sourceTree = "<group>"; };
@@ -512,6 +512,7 @@
512512
671D7DEE282112140068E728 /* Text+.swift */,
513513
6705E7EB283B5DCF00DABCC8 /* View+.swift */,
514514
6758463A2965B0F6000BA5E0 /* UIImage+.swift */,
515+
675E5617297D21D400B4981A /* Array+.swift */,
515516
);
516517
path = Extensions;
517518
sourceTree = "<group>";
@@ -708,7 +709,6 @@
708709
6751569A2841316400501346 /* MediaFile.swift */,
709710
67A9C90428427D06005D6A36 /* SportsGroundFilter.swift */,
710711
67C87FD728438F1600D6377D /* PhotoContainer.swift */,
711-
6766A037284604B40033F1E8 /* Tab.swift */,
712712
675A37102854B04400DAE071 /* TextEntryOption.swift */,
713713
6773111B296607AA003CD13A /* FriendAction.swift */,
714714
679F3B0B296B0A3500BB3590 /* BlacklistOption.swift */,
@@ -1123,12 +1123,12 @@
11231123
6758B92C281D9283001D83D8 /* EventFormViewModel.swift in Sources */,
11241124
6705E7F2283B880A00DABCC8 /* JournalSettingsViewModel.swift in Sources */,
11251125
675A37152854B11300DAE071 /* Gender.swift in Sources */,
1126+
675E5618297D21D400B4981A /* Array+.swift in Sources */,
11261127
67891E36283E945100B10802 /* SportsGroundFormViewModel.swift in Sources */,
11271128
67FBF64F28338A2E008A7968 /* EventDetailsView.swift in Sources */,
11281129
67891E3A283EB15300B10802 /* SportsGroundResult.swift in Sources */,
11291130
6758B934281DC198001D83D8 /* UserResponse.swift in Sources */,
11301131
679F3AFB2968105A00BB3590 /* TextFieldInForm.swift in Sources */,
1131-
6766A038284604B40033F1E8 /* Tab.swift in Sources */,
11321132
6766A036284603CA0033F1E8 /* TabViewModel.swift in Sources */,
11331133
67891E33283E8E6900B10802 /* SportsGroundForm.swift in Sources */,
11341134
67D916862838F0DD0098D3CB /* DialogView.swift in Sources */,
@@ -1437,7 +1437,7 @@
14371437
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
14381438
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
14391439
CODE_SIGN_STYLE = Automatic;
1440-
CURRENT_PROJECT_VERSION = 1;
1440+
CURRENT_PROJECT_VERSION = 2;
14411441
DEVELOPMENT_ASSET_PATHS = "SwiftUI-WorkoutApp/Preview\\ Content/PreviewContent.swift SwiftUI-WorkoutApp/Preview\\ Content";
14421442
DEVELOPMENT_TEAM = CR68PP2Z3F;
14431443
ENABLE_PREVIEWS = YES;
@@ -1473,7 +1473,7 @@
14731473
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
14741474
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
14751475
CODE_SIGN_STYLE = Automatic;
1476-
CURRENT_PROJECT_VERSION = 1;
1476+
CURRENT_PROJECT_VERSION = 2;
14771477
DEVELOPMENT_ASSET_PATHS = "SwiftUI-WorkoutApp/Preview\\ Content/PreviewContent.swift SwiftUI-WorkoutApp/Preview\\ Content";
14781478
DEVELOPMENT_TEAM = CR68PP2Z3F;
14791479
ENABLE_PREVIEWS = YES;
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import Foundation
2+
import UIKit.UIImage
3+
4+
extension Array where Element: UIImage {
5+
/// Создает список медиафайлов из картинок для отправки на сервер
6+
var toMediaFiles: [MediaFile] {
7+
enumerated().compactMap { index, image in
8+
guard let imageData = image.jpegData(compressionQuality: 1) else { return nil }
9+
return .init(imageData: imageData, forKey: "\(index + 1)")
10+
}
11+
}
12+
}

SwiftUI-WorkoutApp/Models/EventForm.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ struct EventForm: Codable {
77
var date: Date
88
var sportsGround: SportsGround
99
let photosCount: Int
10-
var newImagesData = [MediaFile]()
10+
var newMediaFiles = [MediaFile]()
1111

1212
init(_ event: EventResponse?) {
1313
self.title = (event?.formattedTitle).valueOrEmpty
1414
self.description = (event?.formattedDescription).valueOrEmpty
1515
self.date = DateFormatterService.dateFromIsoString(event?.beginDate, format: .isoDateTimeSec)
1616
self.sportsGround = event?.sportsGround ?? .emptyValue
17-
self.photosCount = (event?.photos?.count).valueOrZero
17+
self.photosCount = (event?.photos.count).valueOrZero
1818
}
1919
}
2020

SwiftUI-WorkoutApp/Models/EventResponse.swift

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ struct EventResponse: Codable, Identifiable {
2121
var participantsOptional: [UserResponse]?
2222
/// `true` - предстоящее мероприятие, `false` - прошедшее
2323
let isCurrent: Bool?
24-
let photos: [Photo]?
24+
var photosOptional: [Photo]?
2525
/// Логин автора мероприятия
2626
let authorName: String?
2727
let author: UserResponse?
@@ -31,7 +31,7 @@ struct EventResponse: Codable, Identifiable {
3131
var trainHereOptional: Bool?
3232

3333
enum CodingKeys: String, CodingKey {
34-
case id, title, latitude, longitude, photos, author
34+
case id, title, latitude, longitude, author
3535
case authorName = "name"
3636
case fullAddress = "address"
3737
case previewImageStringURL = "preview"
@@ -45,6 +45,7 @@ struct EventResponse: Codable, Identifiable {
4545
case sportsGroundID = "area_id"
4646
case participantsCount = "user_count"
4747
case isCurrent = "is_current"
48+
case photosOptional = "photos"
4849
case participantsOptional = "training_users"
4950
case trainHereOptional = "train_here"
5051
case commentsOptional = "comments"
@@ -86,7 +87,7 @@ extension EventResponse {
8687
}
8788
var sportsGround: SportsGround {
8889
get {
89-
.init(id: sportsGroundID.valueOrZero, typeID: .zero, sizeID: .zero, address: fullAddress, author: author, cityID: cityID, commentsCount: nil, countryID: countryID, createDate: nil, modifyDate: nil, latitude: latitude.valueOrEmpty, longitude: longitude.valueOrEmpty, name: nil, photos: nil, preview: nil, usersTrainHereCount: nil, commentsOptional: nil, usersTrainHere: nil, trainHere: nil)
90+
.init(id: sportsGroundID.valueOrZero, typeID: .zero, sizeID: .zero, address: fullAddress, author: author, cityID: cityID, commentsCount: nil, countryID: countryID, createDate: nil, modifyDate: nil, latitude: latitude.valueOrEmpty, longitude: longitude.valueOrEmpty, name: nil, photosOptional: nil, preview: nil, usersTrainHereCount: nil, commentsOptional: nil, usersTrainHere: nil, trainHere: nil)
9091
}
9192
set {}
9293
}
@@ -100,6 +101,10 @@ extension EventResponse {
100101
get { commentsOptional ?? [] }
101102
set { commentsOptional = newValue }
102103
}
104+
var photos: [Photo] {
105+
get { photosOptional ?? [] }
106+
set { photosOptional = newValue }
107+
}
103108
/// Список участников мероприятия
104109
var participants: [UserResponse] {
105110
get { participantsOptional ?? [] }
@@ -119,6 +124,6 @@ extension EventResponse {
119124
|| commentsCount.valueOrZero > .zero && !comments.isEmpty
120125
}
121126
static var emptyValue: EventResponse {
122-
.init(id: .zero, title: nil, eventDescription: nil, fullAddress: nil, createDate: nil, modifyDate: nil, beginDate: nil, countryID: nil, cityID: nil, commentsCount: nil, commentsOptional: nil, previewImageStringURL: nil, sportsGroundID: nil, latitude: nil, longitude: nil, participantsCount: nil, participantsOptional: nil, isCurrent: nil, photos: nil, authorName: nil, author: nil, trainHereOptional: nil)
127+
.init(id: .zero, title: nil, eventDescription: nil, fullAddress: nil, createDate: nil, modifyDate: nil, beginDate: nil, countryID: nil, cityID: nil, commentsCount: nil, commentsOptional: nil, previewImageStringURL: nil, sportsGroundID: nil, latitude: nil, longitude: nil, participantsCount: nil, participantsOptional: nil, isCurrent: nil, photosOptional: nil, authorName: nil, author: nil, trainHereOptional: nil)
123128
}
124129
}
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,15 @@
11
import Foundation
2-
import UIKit.UIImage
32

43
struct MediaFile: Codable {
54
let key: String
65
let filename: String
76
let data: Data
87
let mimeType: String
98

10-
init(withImage image: UIImage, forKey key: String) {
9+
init(imageData: Data, forKey key: String) {
1110
self.key = "photo\(key)"
1211
self.mimeType = "image/jpeg"
1312
self.filename = "photo\(key).jpg"
14-
self.data = image.jpegData(compressionQuality: 1) ?? .init()
13+
self.data = imageData
1514
}
1615
}

SwiftUI-WorkoutApp/Models/SportsGround.swift

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ final class SportsGround: NSObject, Codable, MKAnnotation, Identifiable {
1111
let createDate, modifyDate: String?
1212
let latitude, longitude: String
1313
let name: String?
14-
let photos: [Photo]?
14+
var photosOptional: [Photo]?
1515
let preview: String?
1616
let usersTrainHereCount: Int?
1717
var usersTrainHereText: String {
@@ -65,16 +65,17 @@ final class SportsGround: NSObject, Codable, MKAnnotation, Identifiable {
6565
case commentsCount = "comments_count"
6666
case countryID = "country_id"
6767
case createDate = "create_date"
68-
case id, latitude, longitude, name, photos, preview
68+
case id, latitude, longitude, name, preview
6969
case usersTrainHereCount = "trainings"
7070
case commentsOptional = "comments"
71+
case photosOptional = "photos"
7172
case modifyDate = "modify_date"
7273
case typeID = "type_id"
7374
case trainHereOptional = "train_here"
7475
case usersTrainHere = "users_train_here"
7576
}
7677

77-
init(id: Int, typeID: Int, sizeID: Int, address: String?, author: UserResponse?, cityID: Int?, commentsCount: Int?, countryID: Int?, createDate: String?, modifyDate: String?, latitude: String, longitude: String, name: String?, photos: [Photo]?, preview: String?, usersTrainHereCount: Int?, commentsOptional: [CommentResponse]?, usersTrainHere: [UserResponse]?, trainHere: Bool?) {
78+
init(id: Int, typeID: Int, sizeID: Int, address: String?, author: UserResponse?, cityID: Int?, commentsCount: Int?, countryID: Int?, createDate: String?, modifyDate: String?, latitude: String, longitude: String, name: String?, photosOptional: [Photo]?, preview: String?, usersTrainHereCount: Int?, commentsOptional: [CommentResponse]?, usersTrainHere: [UserResponse]?, trainHere: Bool?) {
7879
self.id = id
7980
self.typeID = typeID
8081
self.sizeID = sizeID
@@ -88,7 +89,7 @@ final class SportsGround: NSObject, Codable, MKAnnotation, Identifiable {
8889
self.latitude = latitude
8990
self.longitude = longitude
9091
self.name = name
91-
self.photos = photos
92+
self.photosOptional = photosOptional
9293
self.preview = preview
9394
self.usersTrainHereCount = usersTrainHereCount
9495
self.commentsOptional = commentsOptional
@@ -97,7 +98,7 @@ final class SportsGround: NSObject, Codable, MKAnnotation, Identifiable {
9798
}
9899

99100
convenience init(id: Int) {
100-
self.init(id: id, typeID: .zero, sizeID: .zero, address: nil, author: nil, cityID: nil, commentsCount: nil, countryID: nil, createDate: nil, modifyDate: nil, latitude: "", longitude: "", name: nil, photos: nil, preview: nil, usersTrainHereCount: nil, commentsOptional: nil, usersTrainHere: nil, trainHere: nil)
101+
self.init(id: id, typeID: .zero, sizeID: .zero, address: nil, author: nil, cityID: nil, commentsCount: nil, countryID: nil, createDate: nil, modifyDate: nil, latitude: "", longitude: "", name: nil, photosOptional: nil, preview: nil, usersTrainHereCount: nil, commentsOptional: nil, usersTrainHere: nil, trainHere: nil)
101102
}
102103
}
103104

@@ -135,6 +136,10 @@ struct CommentResponse: Codable, Identifiable, Hashable {
135136
}
136137

137138
extension SportsGround {
139+
var photos: [Photo] {
140+
get { photosOptional ?? [] }
141+
set { photosOptional = newValue }
142+
}
138143
var comments: [CommentResponse] {
139144
get { commentsOptional ?? [] }
140145
set { commentsOptional = newValue }
@@ -155,6 +160,6 @@ extension SportsGround {
155160
|| commentsCount.valueOrZero > .zero && !comments.isEmpty
156161
}
157162
static var emptyValue: SportsGround {
158-
.init(id: .zero, typeID: .zero, sizeID: .zero, address: nil, author: .emptyValue, cityID: nil, commentsCount: nil, countryID: nil, createDate: nil, modifyDate: nil, latitude: "", longitude: "", name: nil, photos: [], preview: nil, usersTrainHereCount: .zero, commentsOptional: nil, usersTrainHere: [], trainHere: nil)
163+
.init(id: .zero, typeID: .zero, sizeID: .zero, address: nil, author: .emptyValue, cityID: nil, commentsCount: nil, countryID: nil, createDate: nil, modifyDate: nil, latitude: "", longitude: "", name: nil, photosOptional: [], preview: nil, usersTrainHereCount: .zero, commentsOptional: nil, usersTrainHere: [], trainHere: nil)
159164
}
160165
}

SwiftUI-WorkoutApp/Models/SportsGroundForm.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ struct SportsGroundForm: Codable {
99
var typeID: Int
1010
var sizeID: Int
1111
let photosCount: Int
12-
var newImagesData = [MediaFile]()
12+
var newMediaFiles = [MediaFile]()
1313

1414
init(_ sportsGround: SportsGround) {
1515
address = sportsGround.address.valueOrEmpty
@@ -18,7 +18,7 @@ struct SportsGroundForm: Codable {
1818
cityID = sportsGround.cityID.valueOrZero
1919
typeID = sportsGround.typeID
2020
sizeID = sportsGround.sizeID
21-
photosCount = (sportsGround.photos?.count).valueOrZero
21+
photosCount = sportsGround.photos.count
2222
}
2323

2424
init(

SwiftUI-WorkoutApp/Models/Tab.swift

Lines changed: 0 additions & 5 deletions
This file was deleted.

SwiftUI-WorkoutApp/Preview Content/PreviewContent.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ extension SportsGround {
3434
latitude: "55.795396",
3535
longitude: "37.762597",
3636
name: "№3 Средняя Легендарная",
37-
photos: [.preview],
37+
photosOptional: [.preview],
3838
preview: "https://workout.su/uploads/userfiles/измайлово.jpg",
3939
usersTrainHereCount: nil,
4040
commentsOptional: [.preview],
@@ -89,7 +89,7 @@ extension EventResponse {
8989
longitude: "37.50063106774381",
9090
participantsCount: 3,
9191
isCurrent: false,
92-
photos: [
92+
photosOptional: [
9393
.init(
9494
id: 1,
9595
stringURL: "https://workout.su/uploads/userfiles/2022/10/2022-10-12-21-10-42-skz.jpg"

SwiftUI-WorkoutApp/Screens/Common/PhotoSection/PhotoSectionCell.swift

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,19 @@ struct PhotoSectionCell: View {
66
@EnvironmentObject private var network: NetworkStatus
77
let photo: Photo
88
let canDelete: Bool
9-
let reportClbk: (Photo) -> Void
9+
let reportClbk: () -> Void
1010
var onTapClbk: (UIImage) -> Void
11-
var deleteClbk: (Photo) -> Void
11+
var deleteClbk: (Int) -> Void
1212

1313
var body: some View {
1414
CachedAsyncImage(url: photo.imageURL) { uiImage in
1515
Image(uiImage: uiImage)
1616
.resizable()
17-
.frame(maxWidth: .infinity, maxHeight: .infinity)
17+
.scaledToFit()
1818
.onTapGesture { onTapClbk(uiImage) }
1919
} placeholder: {
2020
RoundedDefaultImage(size: CachedImage.Mode.gridPhoto.size)
2121
}
22-
.scaledToFit()
2322
.cornerRadius(8)
2423
.overlay(alignment: .topTrailing) { menuButton }
2524
}
@@ -30,14 +29,12 @@ private extension PhotoSectionCell {
3029
Menu {
3130
if canDelete {
3231
Button(role: .destructive) {
33-
deleteClbk(photo)
32+
deleteClbk(photo.id)
3433
} label: {
3534
Label("Удалить", systemImage: "trash")
3635
}
3736
} else {
38-
Button(role: .destructive) {
39-
reportClbk(photo)
40-
} label: {
37+
Button(role: .destructive, action: reportClbk) {
4138
Label("Пожаловаться", systemImage: "exclamationmark.triangle")
4239
}
4340
}
@@ -58,7 +55,7 @@ struct PhotoSectionCell_Previews: PreviewProvider {
5855
PhotoSectionCell(
5956
photo: .preview,
6057
canDelete: true,
61-
reportClbk: { _ in },
58+
reportClbk: {},
6259
onTapClbk: { _ in },
6360
deleteClbk: { _ in }
6461
)

0 commit comments

Comments
 (0)