feat: ios mobil arayüz tasarımı

This commit is contained in:
2026-02-11 18:06:35 +03:00
parent 69884db0ab
commit 261b2f58cc
42 changed files with 2501 additions and 0 deletions

View 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 }
}
}