mirror of
git://jb55.com/damus
synced 2024-09-30 00:40:45 +00:00
909701ce7b
This will be completely fixed once we switch to stored note blocks
36 lines
862 B
Swift
36 lines
862 B
Swift
//
|
||
// NdbNote+.swift
|
||
// damus
|
||
//
|
||
// Created by Daniel D’Aquino on 2023-11-17.
|
||
//
|
||
|
||
import Foundation
|
||
|
||
// Extension to make NdbNote compatible with NostrEvent's original API
|
||
extension NdbNote {
|
||
func parse_inner_event() -> NdbNote? {
|
||
return NdbNote.owned_from_json_cstr(json: content_raw, json_len: content_len)
|
||
}
|
||
|
||
func get_cached_inner_event(cache: EventCache) -> NdbNote? {
|
||
guard self.known_kind == .boost else {
|
||
return nil
|
||
}
|
||
|
||
if self.content_len == 0, let id = self.referenced_ids.first {
|
||
// TODO: raw id cache lookups
|
||
return cache.lookup(id)
|
||
}
|
||
|
||
return nil
|
||
}
|
||
|
||
func get_inner_event(cache: EventCache) -> NdbNote? {
|
||
if let ev = get_cached_inner_event(cache: cache) {
|
||
return ev
|
||
}
|
||
return self.parse_inner_event()
|
||
}
|
||
}
|