diff --git a/samples/SampleApp/SampleApp/HtmlViews.fs b/samples/SampleApp/SampleApp/HtmlViews.fs
index d32ce62e..770c5657 100644
--- a/samples/SampleApp/SampleApp/HtmlViews.fs
+++ b/samples/SampleApp/SampleApp/HtmlViews.fs
@@ -6,18 +6,18 @@ open SampleApp.Models
let layout (content: XmlNode list) =
html [] [
head [] [
- title [] (encodedText "Giraffe")
+ title [] [ encodedText "Giraffe" ]
]
body [] content
]
let partial () =
- p [] (encodedText "Some partial text.")
+ p [] [ encodedText "Some partial text." ]
let personView (model : Person) =
[
div [] [
- h3 [] (sprintf "Hello, %s" model.Name |> encodedText)
+ h3 [] [ sprintf "Hello, %s" model.Name |> encodedText ]
]
div [] [partial()]
] |> layout
\ No newline at end of file
diff --git a/src/Giraffe/Giraffe.fsproj b/src/Giraffe/Giraffe.fsproj
index 9b593059..6540d922 100644
--- a/src/Giraffe/Giraffe.fsproj
+++ b/src/Giraffe/Giraffe.fsproj
@@ -2,7 +2,7 @@
Giraffe
- 0.1.0-alpha022
+ 0.1.0-alpha023
A native functional ASP.NET Core web framework for F# developers.
Copyright 2017 Dustin Moris Gorski
en-GB
diff --git a/src/Giraffe/XmlViewEngine.fs b/src/Giraffe/XmlViewEngine.fs
index d01adda3..9c4599ee 100644
--- a/src/Giraffe/XmlViewEngine.fs
+++ b/src/Giraffe/XmlViewEngine.fs
@@ -49,10 +49,10 @@ let voidTag (tagName : string)
(attributes : XmlAttribute list) =
VoidElement (tagName, Array.ofList attributes)
-let encodedText (content : string) = [ EncodedText content ]
-let rawText (content : string) = [ RawText content ]
+let encodedText (content : string) = EncodedText content
+let rawText (content : string) = RawText content
let emptyText = rawText ""
-let comment (content : string) = RawText (sprintf "" content)
+let comment (content : string) = rawText (sprintf "" content)
/// ---------------------------
/// Default HTML elements
@@ -226,10 +226,21 @@ let rec private nodeToString (htmlStyle : bool) (node : XmlNode) =
| ParentNode (e, nodes) -> parentNodeToString (e, nodes)
| VoidElement e -> startElementToString true e
-let renderXmlString = nodeToString false
-let renderHtmlString = nodeToString true
+let renderXmlNode = nodeToString false
+
+let renderXmlNodes (nodes : XmlNode list) =
+ nodes
+ |> List.map renderXmlNode
+ |> String.Concat
+
+let renderHtmlNode = nodeToString true
+
+let renderHtmlNodes (nodes : XmlNode list) =
+ nodes
+ |> List.map renderHtmlNode
+ |> String.Concat
let renderHtmlDocument (document : XmlNode) =
document
- |> renderHtmlString
+ |> renderHtmlNode
|> sprintf "%s%s" Environment.NewLine
\ No newline at end of file
diff --git a/template/giraffe-template.nuspec b/template/giraffe-template.nuspec
index b8d5d9c4..84d7232d 100644
--- a/template/giraffe-template.nuspec
+++ b/template/giraffe-template.nuspec
@@ -2,7 +2,7 @@
giraffe-template
- 0.1.5
+ 0.1.6
Giraffe Template for dotnet-new
A dotnet-new template for Giraffe web applications.
A dotnet-new template for Giraffe web applications.
diff --git a/tests/Giraffe.Tests/HttpHandlerTests.fs b/tests/Giraffe.Tests/HttpHandlerTests.fs
index e54ec809..25aa52c6 100644
--- a/tests/Giraffe.Tests/HttpHandlerTests.fs
+++ b/tests/Giraffe.Tests/HttpHandlerTests.fs
@@ -743,10 +743,10 @@ let ``GET "/person" returns rendered HTML view`` () =
let personView model =
html [] [
head [] [
- title [] (encodedText "Html Node")
+ title [] [ encodedText "Html Node" ]
]
body [] [
- p [] (sprintf "%s %s is %i years old." model.Foo model.Bar model.Age |> encodedText)
+ p [] [ sprintf "%s %s is %i years old." model.Foo model.Bar model.Age |> encodedText ]
]
]
diff --git a/tests/Giraffe.Tests/XmlViewEngineTests.fs b/tests/Giraffe.Tests/XmlViewEngineTests.fs
index 1a28bd87..3cf385f0 100644
--- a/tests/Giraffe.Tests/XmlViewEngineTests.fs
+++ b/tests/Giraffe.Tests/XmlViewEngineTests.fs
@@ -19,8 +19,8 @@ let ``Single html root should compile`` () =
[]
let ``Anchor should contain href, target and content`` () =
let anchor =
- a [ "href", "http://example.org"; "target", "_blank" ] (encodedText "Example")
- let html = renderXmlString anchor
+ a [ "href", "http://example.org"; "target", "_blank" ] [ encodedText "Example" ]
+ let html = renderXmlNode anchor
Assert.Equal("Example", html)
[]
@@ -28,24 +28,24 @@ let ``Nested content should render correctly`` () =
let nested =
div [] [
comment "this is a test"
- h1 [] (encodedText "Header")
+ h1 [] [ encodedText "Header" ]
p [] [
EncodedText "Lorem "
- strong [] (encodedText "Ipsum")
+ strong [] [ encodedText "Ipsum" ]
RawText " dollar"
] ]
let html =
nested
- |> renderXmlString
+ |> renderXmlNode
|> removeNewLines
Assert.Equal("", html)
[]
let ``Void tag in XML should be self closing tag`` () =
- let unary = br [] |> renderXmlString
+ let unary = br [] |> renderXmlNode
Assert.Equal("
", unary)
[]
let ``Void tag in HTML should be unary tag`` () =
- let unary = br [] |> renderHtmlString
+ let unary = br [] |> renderHtmlNode
Assert.Equal("
", unary)
\ No newline at end of file