Add screen slider component
This commit is contained in:
@ -1,19 +1,25 @@
|
||||
|
||||
enum KnownHeaderElement: Int {
|
||||
enum KnownHeaderElement {
|
||||
|
||||
case codeHightlighting = 4
|
||||
case codeHightlighting
|
||||
|
||||
case modelViewer = 3
|
||||
case modelViewer
|
||||
|
||||
/// CSS File to style the audio player
|
||||
case audioPlayerCss = 1
|
||||
case audioPlayerCss
|
||||
|
||||
/// JavaScript file for the audio player
|
||||
case audioPlayerJs = 2
|
||||
case audioPlayerJs
|
||||
|
||||
case imageCompareJs = 5
|
||||
case imageCompareJs
|
||||
|
||||
case imageCompareCss = 6
|
||||
case imageCompareCss
|
||||
|
||||
case swiperCss
|
||||
|
||||
case swiperJs
|
||||
|
||||
case style(String)
|
||||
|
||||
func header(content: Content) -> HeaderElement? {
|
||||
switch self {
|
||||
@ -41,15 +47,32 @@ enum KnownHeaderElement: Int {
|
||||
if let file = content.settings.pages.imageCompareCssFile {
|
||||
return .css(file: file, order: HeaderElement.imageCompareCssOrder)
|
||||
}
|
||||
case .swiperCss:
|
||||
if let swiperCss = content.settings.posts.swiperCssFile {
|
||||
return .css(file: swiperCss, order: HeaderElement.swiperCssFileOrder)
|
||||
}
|
||||
case .swiperJs:
|
||||
if let swiperJs = content.settings.posts.swiperJsFile {
|
||||
return .js(file: swiperJs, defer: true)
|
||||
}
|
||||
case .style(let code):
|
||||
return .style(code)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
extension KnownHeaderElement: Comparable {
|
||||
extension KnownHeaderElement: Equatable {
|
||||
|
||||
static func < (lhs: KnownHeaderElement, rhs: KnownHeaderElement) -> Bool {
|
||||
lhs.rawValue < rhs.rawValue
|
||||
static func == (lhs: KnownHeaderElement, rhs: KnownHeaderElement) -> Bool {
|
||||
lhs.description == rhs.description
|
||||
}
|
||||
}
|
||||
|
||||
extension KnownHeaderElement: Hashable {
|
||||
|
||||
func hash(into hasher: inout Hasher) {
|
||||
hasher.combine(description)
|
||||
}
|
||||
}
|
||||
|
||||
@ -69,6 +92,12 @@ extension KnownHeaderElement: CustomStringConvertible {
|
||||
return "image-compare-js"
|
||||
case .imageCompareCss:
|
||||
return "image-compare-css"
|
||||
case .swiperCss:
|
||||
return "swiper-css"
|
||||
case .swiperJs:
|
||||
return "swiper-js"
|
||||
case .style(let style):
|
||||
return "style: " + style
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user