98 lines
2.6 KiB
Swift
98 lines
2.6 KiB
Swift
//
|
|
// Swiftfin is subject to the terms of the Mozilla Public
|
|
// License, v2.0. If a copy of the MPL was not distributed with this
|
|
// file, you can obtain one at https://mozilla.org/MPL/2.0/.
|
|
//
|
|
// Copyright (c) 2024 Jellyfin & Jellyfin Contributors
|
|
//
|
|
|
|
import Foundation
|
|
import JellyfinAPI
|
|
|
|
// TODO: No longer needed in 10.9+
|
|
public enum PersonKind: String, Codable, CaseIterable {
|
|
case unknown = "Unknown"
|
|
case actor = "Actor"
|
|
case director = "Director"
|
|
case composer = "Composer"
|
|
case writer = "Writer"
|
|
case guestStar = "GuestStar"
|
|
case producer = "Producer"
|
|
case conductor = "Conductor"
|
|
case lyricist = "Lyricist"
|
|
case arranger = "Arranger"
|
|
case engineer = "Engineer"
|
|
case mixer = "Mixer"
|
|
case remixer = "Remixer"
|
|
case creator = "Creator"
|
|
case artist = "Artist"
|
|
case albumArtist = "AlbumArtist"
|
|
case author = "Author"
|
|
case illustrator = "Illustrator"
|
|
case penciller = "Penciller"
|
|
case inker = "Inker"
|
|
case colorist = "Colorist"
|
|
case letterer = "Letterer"
|
|
case coverArtist = "CoverArtist"
|
|
case editor = "Editor"
|
|
case translator = "Translator"
|
|
}
|
|
|
|
// TODO: Still needed in 10.9+
|
|
extension PersonKind: Displayable {
|
|
var displayTitle: String {
|
|
switch self {
|
|
case .unknown:
|
|
return L10n.unknown
|
|
case .actor:
|
|
return L10n.actor
|
|
case .director:
|
|
return L10n.director
|
|
case .composer:
|
|
return L10n.composer
|
|
case .writer:
|
|
return L10n.writer
|
|
case .guestStar:
|
|
return L10n.guestStar
|
|
case .producer:
|
|
return L10n.producer
|
|
case .conductor:
|
|
return L10n.conductor
|
|
case .lyricist:
|
|
return L10n.lyricist
|
|
case .arranger:
|
|
return L10n.arranger
|
|
case .engineer:
|
|
return L10n.engineer
|
|
case .mixer:
|
|
return L10n.mixer
|
|
case .remixer:
|
|
return L10n.remixer
|
|
case .creator:
|
|
return L10n.creator
|
|
case .artist:
|
|
return L10n.artist
|
|
case .albumArtist:
|
|
return L10n.albumArtist
|
|
case .author:
|
|
return L10n.author
|
|
case .illustrator:
|
|
return L10n.illustrator
|
|
case .penciller:
|
|
return L10n.penciller
|
|
case .inker:
|
|
return L10n.inker
|
|
case .colorist:
|
|
return L10n.colorist
|
|
case .letterer:
|
|
return L10n.letterer
|
|
case .coverArtist:
|
|
return L10n.coverArtist
|
|
case .editor:
|
|
return L10n.editor
|
|
case .translator:
|
|
return L10n.translator
|
|
}
|
|
}
|
|
}
|