feat: ios mobil arayüz tasarımı
This commit is contained in:
63
ios/Bookibra/Models/LibraryBook.swift
Normal file
63
ios/Bookibra/Models/LibraryBook.swift
Normal file
@@ -0,0 +1,63 @@
|
||||
import Foundation
|
||||
import SwiftData
|
||||
|
||||
@Model
|
||||
final class LibraryBook {
|
||||
@Attribute(.unique) var localId: UUID
|
||||
var title: String
|
||||
var authorsString: String
|
||||
var coverUrlString: String?
|
||||
var isbn10: String?
|
||||
var isbn13: String?
|
||||
var publishedYear: Int?
|
||||
var categoriesString: String
|
||||
var summary: String?
|
||||
var dateAdded: Date
|
||||
var language: String?
|
||||
var sourceLocale: String?
|
||||
var remotePayloadJson: String?
|
||||
|
||||
init(
|
||||
localId: UUID = UUID(),
|
||||
title: String,
|
||||
authorsString: String,
|
||||
coverUrlString: String? = nil,
|
||||
isbn10: String? = nil,
|
||||
isbn13: String? = nil,
|
||||
publishedYear: Int? = nil,
|
||||
categoriesString: String = "",
|
||||
summary: String? = nil,
|
||||
dateAdded: Date = .now,
|
||||
language: String? = nil,
|
||||
sourceLocale: String? = nil,
|
||||
remotePayloadJson: String? = nil
|
||||
) {
|
||||
self.localId = localId
|
||||
self.title = title
|
||||
self.authorsString = authorsString
|
||||
self.coverUrlString = coverUrlString
|
||||
self.isbn10 = isbn10
|
||||
self.isbn13 = isbn13
|
||||
self.publishedYear = publishedYear
|
||||
self.categoriesString = categoriesString
|
||||
self.summary = summary
|
||||
self.dateAdded = dateAdded
|
||||
self.language = language
|
||||
self.sourceLocale = sourceLocale
|
||||
self.remotePayloadJson = remotePayloadJson
|
||||
}
|
||||
|
||||
var authors: [String] {
|
||||
authorsString
|
||||
.split(separator: ",")
|
||||
.map { $0.trimmingCharacters(in: .whitespacesAndNewlines) }
|
||||
.filter { !$0.isEmpty }
|
||||
}
|
||||
|
||||
var categories: [String] {
|
||||
categoriesString
|
||||
.split(separator: ",")
|
||||
.map { $0.trimmingCharacters(in: .whitespacesAndNewlines) }
|
||||
.filter { !$0.isEmpty }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user