mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-07 08:18:41 +09:00
41 lines
1.2 KiB
Swift
41 lines
1.2 KiB
Swift
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
import Foundation
|
|
|
|
struct ReadingListServerRecord {
|
|
let serverMetadata: ReadingListServerMetadata?
|
|
|
|
let url: String
|
|
let title: String
|
|
let addedBy: String
|
|
let unread: Bool
|
|
let archived: Bool
|
|
let favorite: Bool
|
|
|
|
/// Initializer for when a record is loaded from server-sent json
|
|
init?(json: [String: Any]?) {
|
|
guard let json = json,
|
|
let serverMetadata = ReadingListServerMetadata(json: json),
|
|
let url = json["url"] as? String,
|
|
let title = json["title"] as? String,
|
|
let addedBy = json["added_by"] as? String,
|
|
let unread = json["unread"] as? Bool,
|
|
let archived = json["archived"] as? Bool,
|
|
let favorite = json["favorite"] as? Bool else {
|
|
return nil
|
|
}
|
|
|
|
self.serverMetadata = serverMetadata
|
|
|
|
self.url = url
|
|
self.title = title
|
|
self.addedBy = addedBy
|
|
|
|
self.unread = unread
|
|
self.archived = archived
|
|
self.favorite = favorite
|
|
}
|
|
|
|
}
|