Add highlight notes from the notebook

This commit is contained in:
Jackson Harper
2023-04-07 21:00:01 +08:00
parent 42a3b2fe87
commit f60ba672e7
3 changed files with 15 additions and 4 deletions

View File

@ -46,6 +46,7 @@
}.alert("Are you sure you want to delete the note?",
isPresented: $showConfirmNoteDelete) {
Button("Remove Item", role: .destructive) {
viewModel.deleteNote(dataService: dataService)
showConfirmNoteDelete = false
}
Button(LocalText.cancelGeneric, role: .cancel) {

View File

@ -55,13 +55,23 @@ struct NoteItemParams: Identifiable {
if let linkedItem = dataService.viewContext.object(with: itemObjectID) as? LinkedItem {
noteItem = NoteItemParams(highlightID: highlightId, annotation: annotation)
let highlight = dataService.createNote(shortId: shortId, highlightID: highlightId, articleId: linkedItem.unwrappedID, annotation: annotation)
let highlight = dataService.createNote(shortId: shortId,
highlightID: highlightId,
articleId: linkedItem.unwrappedID,
annotation: annotation)
} else {
//
}
}
}
func deleteNote(dataService: DataService) {
if let highlightID = noteItem?.highlightID {
dataService.deleteHighlight(highlightID: highlightID)
noteItem = nil
}
}
func deleteHighlight(highlightID: String, dataService: DataService) {
dataService.deleteHighlight(highlightID: highlightID)
highlightItems.removeAll { $0.highlightID == highlightID }

View File

@ -91,10 +91,10 @@ public extension DataService {
articleId: articleId,
highlightPositionAnchorIndex: OptionalArgument(highlight.positionAnchorIndex),
highlightPositionPercent: OptionalArgument(highlight.positionPercent), id: highlight.id,
patch: OptionalArgument(highlight.patch),
quote: OptionalArgument(highlight.quote),
patch: OptionalArgument(highlight.patch.isEmpty ? nil : highlight.patch),
quote: OptionalArgument(highlight.quote.isEmpty ? nil : highlight.quote),
shortId: highlight.shortId,
type: OptionalArgument(Enums.HighlightType.highlight)
type: OptionalArgument(highlight.type == "NOTE" ? Enums.HighlightType.note : Enums.HighlightType.highlight)
),
selection: selection
)