diff --git a/BeReal/Browse/Views/BrowseView.swift b/BeReal/Browse/Views/BrowseView.swift index c655854..37f0882 100644 --- a/BeReal/Browse/Views/BrowseView.swift +++ b/BeReal/Browse/Views/BrowseView.swift @@ -12,50 +12,79 @@ struct BrowseView: View { var body: some View { List { Group { - FolderItem(name: "Some folder #1 name") - FolderItem(name: "Some folder #2 name") - FolderItem(name: "Some folder #3 name") - FolderItem(name: "Some folder #4 name") - FolderItem(name: "Some folder #5 name") - FolderItem(name: "Some folder #6 name") - FolderItem(name: "Some folder #7 name") + Group { + FolderItem(name: "Some folder #1 name") + FolderItem(name: "Some folder #2 name") + FolderItem(name: "Some folder #3 name") + FolderItem(name: "Some folder #4 name") + FolderItem(name: "Some folder #5 name") + FolderItem(name: "Some folder #6 name") + FolderItem(name: "Some folder #7 name") + } + Group { + DocumentItem( + name: "Some document #1 name", + lastModified: "3 months ago", + fileSize: "1,23 Mbytes" + ) + DocumentItem( + name: "Some document #2 name", + lastModified: "2 years ago", + fileSize: "123 Kbytes" + ) + DocumentItem( + name: "Some document #3 name", + lastModified: "13 days ago", + fileSize: "12 bytes" + ) + DocumentItem( + name: "Some document #4 name", + lastModified: "13 hours ago", + fileSize: "12,3 Gbytes" + ) + DocumentItem( + name: "Some document #5 name", + lastModified: "13 minutes ago", + fileSize: "123 Tbytes" + ) + DocumentItem( + name: "Some document #6 name", + lastModified: "13 seconds ago", + fileSize: "123 Tbytes" + ) + DocumentItem( + name: "Some document #7 name", + lastModified: "13 nanoseconds ago", + fileSize: "123 Tbytes" + ) + } } - Group { - DocumentItem( - name: "Some document #1 name", - lastModified: "3 months ago", - fileSize: "1,23 Mbytes" - ) - DocumentItem( - name: "Some document #2 name", - lastModified: "2 years ago", - fileSize: "123 Kbytes" - ) - DocumentItem( - name: "Some document #3 name", - lastModified: "13 days ago", - fileSize: "12 bytes" - ) - DocumentItem( - name: "Some document #4 name", - lastModified: "13 hours ago", - fileSize: "12,3 Gbytes" - ) - DocumentItem( - name: "Some document #5 name", - lastModified: "13 minutes ago", - fileSize: "123 Tbytes" - ) - DocumentItem( - name: "Some document #6 name", - lastModified: "13 seconds ago", - fileSize: "123 Tbytes" - ) - DocumentItem( - name: "Some document #7 name", - lastModified: "13 nanoseconds ago", - fileSize: "123 Tbytes" - ) + .swipeActions( + edge: .trailing, + allowsFullSwipe: true + ) { + Button { + // ... + } label: { + Label { + Text("Delete item") + } icon: { + Image.trash + } + } + .tint(.red) + + // TODO: allow download only if item is a file. + Button { + // ... + } label: { + Label { + Text("Download item") + } icon: { + Image.download + } + } + .tint(.orange) } } .listStyle(.inset) @@ -78,6 +107,8 @@ struct BrowseView: View { private extension Image { static let profile = Image(systemName: "person.crop.circle.fill") + static let trash = Image(systemName: "trash") + static let download = Image(systemName: "arrow.down.doc") } // MARK: - Previews