Add convenience box command
This commit is contained in:
@ -76,6 +76,7 @@ struct PageContentGenerator {
|
||||
// For videos: 
|
||||
// For svg with custom area: 
|
||||
// For downloads: 
|
||||
// For a simple boxes: 
|
||||
// External pages: 
|
||||
let fileAndTitle = markdown.between("(", and: ")")
|
||||
let alt = markdown.between("[", and: "]").nonEmpty
|
||||
@ -86,6 +87,8 @@ struct PageContentGenerator {
|
||||
return handleExternalButtons(page: page, content: fileAndTitle)
|
||||
case "html":
|
||||
return handleExternalHTML(page: page, file: fileAndTitle)
|
||||
case "box":
|
||||
return handleSimpleBox(page: page, content: fileAndTitle)
|
||||
default:
|
||||
break
|
||||
}
|
||||
@ -231,4 +234,15 @@ struct PageContentGenerator {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
private func handleSimpleBox(page: Element, content: String) -> String {
|
||||
let parts = content.components(separatedBy: ";")
|
||||
guard parts.count > 1 else {
|
||||
log.add(error: "Invalid box specification", source: page.path)
|
||||
return ""
|
||||
}
|
||||
let title = parts[0]
|
||||
let text = parts.dropFirst().joined(separator: ";")
|
||||
return factory.makePlaceholder(title: title, text: text)
|
||||
}
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ struct PageGenerator {
|
||||
} else {
|
||||
let (content, includesCode) = PageContentGenerator(factory: factory.factory)
|
||||
.generate(page: page, language: language, content: metadata.placeholderText)
|
||||
let placeholder = factory.makePlaceholder(title: metadata.placeholderTitle, text: content)
|
||||
let placeholder = factory.factory.makePlaceholder(title: metadata.placeholderTitle, text: content)
|
||||
return (placeholder, includesCode, true)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user