// // Bookmark.swift // Zyquo Atlas // // Author: Simon-Pierre Boucher // Mail: contact@spboucher.ai // // Favorites model: a bookmark (url + title + notes + tags), optionally filed // in a folder, and a folder tree. Backed by BookmarksService; surfaced in the // bookmarks bar and the favorites manager (Phase 4.3 spec). // import Foundation struct Bookmark: Identifiable, Codable, Hashable { let id: UUID var title: String var url: String var notes: String var tags: [String] /// nil = top level / bookmarks bar. var folderID: UUID? /// Shown on the bookmarks bar when true. var onBar: Bool var createdAt: Date init(id: UUID = UUID(), title: String, url: String, notes: String = "", tags: [String] = [], folderID: UUID? = nil, onBar: Bool = false, createdAt: Date = Date()) { self.id = id self.title = title self.url = url self.notes = notes self.tags = tags self.folderID = folderID self.onBar = onBar self.createdAt = createdAt } } struct BookmarkFolder: Identifiable, Codable, Hashable { let id: UUID var name: String var createdAt: Date init(id: UUID = UUID(), name: String, createdAt: Date = Date()) { self.id = id self.name = name self.createdAt = createdAt } }