From ff454a0f8c57aca0bd5bda17cb341e6304a1c5b3 Mon Sep 17 00:00:00 2001 From: Dirk Holtwick Date: Mon, 8 Jan 2024 13:57:16 +0100 Subject: [PATCH 1/2] feat: safeHTML --- src/index.browser.ts | 2 +- src/serialize-safehtml.ts | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/index.browser.ts b/src/index.browser.ts index 3e48a40..32bad4b 100644 --- a/src/index.browser.ts +++ b/src/index.browser.ts @@ -12,4 +12,4 @@ export { xml } from './xml' export { handleHTML } from './manipulate' export { serializeMarkdown } from './serialize-markdown' export { serializePlaintext } from './serialize-plaintext' -export { serializeSafeHTML } from './serialize-safehtml' +export { serializeSafeHTML, safeHTML } from './serialize-safehtml' diff --git a/src/serialize-safehtml.ts b/src/serialize-safehtml.ts index ee2b7a6..105ec0d 100644 --- a/src/serialize-safehtml.ts +++ b/src/serialize-safehtml.ts @@ -1,5 +1,6 @@ import { escapeHTML } from './encoding' import { VNode, isVElement } from './vdom' +import { parseHTML } from './vdomparser' export const SELECTOR_BLOCK_ELEMENTS = 'p,h1,h2,h3,h4,h5,h6,blockquote,div,ul,ol,li,article,section,footer,nav,hr,form' @@ -47,3 +48,7 @@ function serialize(node: VNode, context: SerializeContext = { export function serializeSafeHTML(node: VNode): string { return serialize(node).trim() } + +export function safeHTML(html: string) { + return serializeSafeHTML(parseHTML(html)) +} From 7d56821c6947a299d813c2a3558a4958e714d5c8 Mon Sep 17 00:00:00 2001 From: Dirk Holtwick Date: Mon, 8 Jan 2024 13:57:18 +0100 Subject: [PATCH 2/2] 0.12.9 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index da1d567..008fd27 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "zeed-dom", "type": "module", - "version": "0.12.8", + "version": "0.12.9", "description": "🌱 Lightweight offline DOM", "author": { "name": "Dirk Holtwick",