Files
hummingbird-docc/Sources/HummingbirdDocC/Internal/Enumerations/AssetFile.swift
T

41 lines
1.6 KiB
Swift

// ===----------------------------------------------------------------------===
//
// This source file is part of the Hummingbird DocC open source project
//
// Copyright (c) 2025 Röck+Cöde VoF. and the Hummingbird DocC project authors
// Licensed under Apache license v2.0
//
// See LICENSE for license information
// See CONTRIBUTORS for the list of Hummingbird DocC project authors
//
// SPDX-License-Identifier: Apache-2.0
//
// ===----------------------------------------------------------------------===
/// An enumeration that represents the essential static files that could be generated by the `DocC` building process.
enum AssetFile: String, CaseIterable {
/// A file defining all the documentation available, which will be used to redirect to the root of the documentation's root article.
case documentation = "documentation.json"
/// A file containing the icon in `.ico` format within the documentation generated by the `DocC` building process.
case faviconICO = "favicon.ico"
/// A file containing the icon in `.svg` format within the documentation generated by the `DocC` building process.
case faviconSVG = "favicon.svg"
/// A file containing the theme settings within the documentation generated by the `DocC` building process.
case themeSettings = "theme-settings.json"
}
// MARK: - Pathable
extension AssetFile: Pathable {
// MARK: Computed
var path: String {
switch self {
case .documentation: .init(format: .Format.Path.data, rawValue)
default: .init(format: .Format.Path.root, rawValue)
}
}
}