2025-01-02 11:56:51 +01:00

29 lines
724 B
Swift

import Foundation
struct GenericPage {
let header: PageHeader
let additionalFooter: String
let insertedContent: (inout String) -> Void
init(header: PageHeader,
additionalFooter: String,
insertedContent: @escaping (inout String) -> Void) {
self.header = header
self.additionalFooter = additionalFooter
self.insertedContent = insertedContent
}
var content: String {
var result = ""
header.populate(&result) // Opens <html><body><main>
insertedContent(&result)
result += "</main>" // Close <main>
result += additionalFooter
result += "</body></html>" // Close <body><html>
return result
}
}