diff --git a/lib/dom.js b/lib/dom.js index dd25b46..9a371fa 100644 --- a/lib/dom.js +++ b/lib/dom.js @@ -34,10 +34,17 @@ const tokenize = node => { const map = new Map() for (const [key, current] of search(node).entries()) { + const { nodeName } = current - if (current.nodeName === 'TITLE') { + if (nodeName === 'TITLE') { const tokens = identify(escaped, current.innerHTML) + if (tokens.length) { + map.set(key, { tokens }) + } + } else if (nodeName === 'SCRIPT') { + const tokens = identify(escaped, current.textContent) + if (tokens.length) { map.set(key, { tokens }) } @@ -193,10 +200,16 @@ const content = (tokens, node, template) => { } const pick = node => { - if (node.nodeName === 'TITLE') { + const { nodeName } = node + + if (nodeName === 'TITLE') { return [node.firstChild, node.innerHTML] } + if (nodeName === 'SCRIPT') { + return [node, node.textContent] + } + return [node, node.nodeValue] } diff --git a/package-lock.json b/package-lock.json index 815f727..b299026 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@lcf.vs/dom-engine", - "version": "5.2.5", + "version": "5.3.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@lcf.vs/dom-engine", - "version": "5.2.5", + "version": "5.3.0", "license": "MIT", "dependencies": { "jsdom": "^16.6.0" diff --git a/package.json b/package.json index b5ac644..e761216 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@lcf.vs/dom-engine", - "version": "5.2.5", + "version": "5.3.0", "description": "A composable DOM based template engine", "type": "module", "exports": {