+ This helper simply collects its arguments into a document fragment.
+ One may think of it as Array.from, except it collects HTML elements into a fragment instead.
+
+
+ const list = ["b", "i", "u"].map(name => html.[name](name))
+ return text`Some ${fragment(...list)} other text`
+
+
+
The bind helper
diff --git a/skooma.js b/skooma.js
index 2abea39..f20c0e7 100644
--- a/skooma.js
+++ b/skooma.js
@@ -113,6 +113,13 @@ export const handle = fn => event => { event.preventDefault(); return fn(event)
export const html = nameSpacedProxy({nameFilter: name => name.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase()})
export const svg = nameSpacedProxy({xmlns: "http://www.w3.org/2000/svg"})
+export const fragment = (...elements) => {
+ const fragment = new DocumentFragment()
+ for (element of elements)
+ fragment.append(element)
+ return fragment
+}
+
const textFromTemplate = (literals, items) => {
const fragment = new DocumentFragment()
for (const key in items) {