LiTranslate-iOS/LiTranslate/Presentation/Component/Bookmarks/BookmarkButton.swift
Viktor Kalyniuk 823b3abe77 release v1.0
2022-09-10 20:46:05 +03:00

41 lines
1.3 KiB
Swift

//
// BookmarkButton.swift
// LiTranslate
//
// Created by Viktor Kalyniuk on 25.08.2022.
//
import SwiftUI
struct BookmarkButton: View {
@EnvironmentObject var bookmarksData: BookmarksData
var bookmarkModel: BookmarkModel
var body: some View {
Button {
if bookmarksData.isDataInArray(bookmarkModel: bookmarkModel) {
bookmarksData.removeDataInArray(bookmarkModel: bookmarkModel)
} else {
bookmarksData.array.insert(bookmarkModel, at: Numbers.zero)
}
} label: {
if bookmarksData.isDataInArray(bookmarkModel: bookmarkModel) {
Image(systemName: SystemNames.bookmarkFill)
} else {
Image(systemName: SystemNames.bookmark)
}
}
.foregroundColor(Colors.Foreground.primaryButton)
.opacity(Double(bookmarkModel.outputText.isEmpty ? Numbers.zero : Numbers.one))
.disabled(bookmarkModel.outputText.isEmpty)
}
}
struct BookmarkButton_Previews: PreviewProvider {
static var previews: some View {
let testBookMarkModel: BookmarkModel = BookmarkModel.getTestModel()
BookmarkButton(bookmarkModel: testBookMarkModel)
.environmentObject(BookmarksData())
}
}