Generate pages, image descriptions

This commit is contained in:
Christoph Hagen
2024-12-06 21:59:36 +01:00
parent 18eb64f289
commit 5fb689ac7c
42 changed files with 1653 additions and 273 deletions

View File

@ -1,49 +0,0 @@
import Foundation
enum FileType {
case image(ImageType)
case file
case video
case resource
init(fileExtension: String) {
switch fileExtension.lowercased() {
case "jpg", "jpeg":
self = .image(.jpg)
case "png":
self = .image(.png)
case "avif":
self = .image(.avif)
case "webp":
self = .image(.webp)
case "gif":
self = .image(.gif)
case "html", "stl", "f3d", "step", "f3z", "zip", "json", "conf", "css", "js", "cpp", "cddx", "svg", "glb", "mp3", "pdf", "swift":
self = .file
case "mp4":
self = .video
case "key", "psd":
self = .resource
default:
print("Unhandled file type: \(fileExtension)")
self = .resource
}
}
var fileExtension: String {
switch self {
case .image(let imageType): return imageType.fileExtension
default:
return "" // TODO: Fix
}
}
var isImage: Bool {
if case .image = self {
return true
}
return false
}
}

View File

@ -0,0 +1,13 @@
struct ImageDescriptions {
let imageId: String
let german: String?
let english: String?
}
extension ImageDescriptions: Codable {
}