teddy
Version:
🧸 Teddy is the most readable and easy to learn templating language there is!
1 lines • 107 kB
Source Map (JSON)
{"version":3,"file":"teddy.client.mjs","mappings":"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","sources":["webpack://teddy/./cheerioPolyfill.js","webpack://teddy/webpack/bootstrap","webpack://teddy/webpack/runtime/define property getters","webpack://teddy/webpack/runtime/hasOwnProperty shorthand","webpack://teddy/webpack/runtime/make namespace object","webpack://teddy/./teddy.js"],"sourcesContent":["// stub out cheerio using native dom methods for frontend so we don't have to bundle cheerio on the frontend\nexport function load (html) {\n const doc = parseTeddyDOMFromString(html) // create a DOM\n\n // return a querySelector function with function chains\n // e.g. dom('include') or dom(el) from teddy\n const $ = function (query) { // query can be a string, or a dom object\n // if query is a string, we need to create a dom object from the string: an object with elements in it, e.g. a list of include tag objects\n if (typeof query === 'string') {\n const els = doc.querySelectorAll(query)\n return els // return the object collection\n }\n\n // if query is an object, it's assumed we're trying to perform operations on a single dom node\n const el = query\n return {\n\n // e.g. dom(el).children() from teddy\n children: function () {\n return el.childNodes\n },\n\n // e.g. dom(el).find() from teddy\n find: function (selector) {\n return el.querySelectorAll(selector)\n },\n\n // e.g. dom(arg).html() from teddy\n html: function () {\n return getTeddyDOMInnerHTML(el)\n },\n\n // e.g. dom(arg).toString() from teddy\n toString: function () {\n return getTeddyDOMOuterHTML(el)\n },\n\n // e.g. dom(el).attr('teddydeferreddynamicinclude', 'true') from teddy\n attr: function (attr, val) {\n return el.setAttribute(attr, val)\n },\n\n // dom(el).removeAttr(attr) from teddy\n removeAttr: function (attr) {\n return el.removeAttribute(attr)\n },\n\n // e.g. dom(el).replaceWith(localDom.html()) from teddy\n replaceWith: function (html) {\n // can either be a string or an array of elements\n if (typeof html === 'object') {\n let newHtml = ''\n for (const el of html) {\n if (el.nodeType === window.Node.COMMENT_NODE) newHtml += '<!--' + el.textContent + '-->'\n else newHtml += el.outerHTML || el.textContent\n }\n html = newHtml\n }\n const temp = document.createElement('div')\n temp.innerHTML = html\n el.replaceWith(...temp.childNodes)\n },\n\n // e.g. dom(el).remove() from teddy\n remove: function () {\n return el.remove()\n }\n }\n }\n\n // e.g. dom.html() from teddy\n $.html = function () {\n return getTeddyDOMInnerHTML(doc)\n }\n\n // e.g. dom.toString() from teddy\n $.toString = function () {\n return getTeddyDOMOuterHTML(doc)\n }\n\n return $\n}\n\nload.isCheerioPolyfill = true\n\n// DOM parser function like DOMParser's parseFromString but allows Teddy elements to exist in places where they otherwise wouldn't be allowed, like inside of <select> elements\nfunction parseTeddyDOMFromString (html) {\n const selfClosingTags = new Set(['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source', 'track', 'wbr'])\n const root = document.createElement('body')\n const dom = [root]\n const openTags = [] // stack to track open tags\n const tagAndCommentRegex = /<\\/?([a-zA-Z0-9]+)([^>]*)>|<!--([\\s\\S]*?)-->/g\n const attrRegex = /([a-zA-Z0-9-:._]+)(?:=([\"'])(.*?)\\2|([^>\\s]+))?/g\n let lastIndex = 0\n let match\n\n // loop through each match and build a DOM\n while ((match = tagAndCommentRegex.exec(html)) !== null) {\n if (!dom[dom.length - 1]) throw new Error('Error parsing your template. There may be a coding mistake in your HTML. Look for extra closing </tags> and other common mistakes.')\n const textBeforeMatch = html.slice(lastIndex, match.index)\n\n // append text nodes\n if (textBeforeMatch.trim()) {\n const textNode = document.createTextNode(textBeforeMatch)\n dom[dom.length - 1].appendChild(textNode)\n }\n\n if (match[0].startsWith('<!--')) {\n // handle comments\n const commentNode = document.createComment(match[3])\n dom[dom.length - 1].appendChild(commentNode)\n } else {\n // handle tags\n const [fullMatch, tagName, attrString] = match\n const lowerCaseTagName = tagName.toLowerCase()\n const isClosingTag = fullMatch.startsWith('</')\n if (isClosingTag) {\n if (selfClosingTags.has(lowerCaseTagName)) {\n // convert incorrect closing tag for self-closing tag to self-closing tag\n const element = document.createElement(tagName)\n dom[dom.length - 1].appendChild(element)\n } else {\n // check if the closing tag matches the most recent open tag\n if (openTags.length > 0 && openTags[openTags.length - 1] === lowerCaseTagName) {\n openTags.pop()\n dom.pop()\n }\n }\n } else {\n // create a new element\n const element = document.createElement(tagName)\n\n // set attributes\n let attrMatch\n const attrMap = new Map()\n while ((attrMatch = attrRegex.exec(attrString)) !== null) {\n const attrName = attrMatch[1]\n const attrValue = attrMatch[3] || attrMatch[4] || ''\n\n // handle duplicate attributes for special tags\n if (attrMap.has(attrName)) {\n let count = 1\n let newAttrName\n do {\n newAttrName = `${attrName}-teddyduplicate${count}`\n count++\n } while (attrMap.has(newAttrName))\n attrMap.set(newAttrName, attrValue)\n } else attrMap.set(attrName, attrValue)\n }\n\n // apply attributes to the element\n for (const [name, value] of attrMap) {\n try {\n // replace elements with `src` attributes with `data-teddy-defer-attr-src` so the browser doesn't try to prefetch the asset\n // this is needed because the value of the `src` attribute could be a {teddyVariable} and that fetch won't resolve\n switch (lowerCaseTagName) {\n case 'img':\n case 'video':\n case 'audio':\n case 'iframe':\n case 'script':\n if (name === 'src') element.setAttribute('data-teddy-defer-attr-src', value) // replace src with data-teddy-defer-attr-src\n else element.setAttribute(name, value || '')\n break\n case 'link':\n if (name === 'href') element.setAttribute('data-teddy-defer-attr-href', value) // replace src with data-teddy-defer-attr-href\n else element.setAttribute(name, value || '')\n break\n default:\n element.setAttribute(name, value || '')\n }\n } catch (e) {\n console.warn('Error parsing an element attribute. You might have a typo in your HTML. A common cause is two spaces between element attributes.')\n }\n }\n\n // append the new element to the current parent\n dom[dom.length - 1].appendChild(element)\n\n // push the new element to the dom if it's not self-closing\n if (!selfClosingTags.has(lowerCaseTagName) && !fullMatch.endsWith('/>')) {\n dom.push(element)\n openTags.push(lowerCaseTagName)\n }\n }\n }\n\n lastIndex = tagAndCommentRegex.lastIndex\n }\n\n // append any remaining text after the last match\n if (lastIndex < html.length) {\n const remainingText = html.slice(lastIndex)\n if (remainingText.trim()) {\n const textNode = document.createTextNode(remainingText)\n dom[dom.length - 1].appendChild(textNode)\n }\n }\n\n return root\n}\n\n// custom functions to get inner/outer HTML without escaping various things to prevent teddy from infinitely escaping them\nconst doublyEncodedEntities = {\n '&amp;': '&',\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '"',\n '&#39;': ''',\n '&#x2F;': '/'\n}\nconst entityEntries = Object.entries(doublyEncodedEntities)\nfunction getTeddyDOMInnerHTML (node) {\n // build html string\n let html = ''\n for (const child of node.childNodes) {\n if (child.nodeType === window.Node.ELEMENT_NODE) {\n let outerHTML = child.outerHTML\n for (const [doublyEncoded, singleEncoded] of entityEntries) outerHTML = outerHTML.replace(new RegExp(doublyEncoded, 'g'), singleEncoded)\n html += outerHTML\n } else if (child.nodeType === window.Node.TEXT_NODE) {\n let textContent = child.textContent\n for (const [doublyEncoded, singleEncoded] of entityEntries) textContent = textContent.replace(new RegExp(doublyEncoded, 'g'), singleEncoded)\n html += textContent\n } else if (child.nodeType === window.Node.COMMENT_NODE) {\n let commentContent = child.textContent\n for (const [doublyEncoded, singleEncoded] of entityEntries) commentContent = commentContent.replace(new RegExp(doublyEncoded, 'g'), singleEncoded)\n html += `<!--${commentContent}-->`\n }\n }\n\n return html\n}\nfunction getTeddyDOMOuterHTML (node) {\n // start with the outerHTML of the node\n let outerHTML = ''\n\n if (node.nodeType === window.Node.ELEMENT_NODE) {\n outerHTML = node.outerHTML\n } else if (node.nodeType === window.Node.TEXT_NODE) {\n outerHTML = node.textContent\n } else if (node.nodeType === window.Node.COMMENT_NODE) {\n outerHTML = `<!--${node.textContent}-->`\n }\n\n // replace doubly encoded entities\n for (const [doublyEncoded, singleEncoded] of entityEntries) outerHTML = outerHTML.replace(new RegExp(doublyEncoded, 'g'), singleEncoded)\n\n return outerHTML\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// #region globals\n\nimport fs from 'fs' // node filesystem module\nimport path from 'path' // node path module\nimport { load as cheerioLoad } from 'cheerio/slim' // dom parser\n\nconst cheerioOptions = { xml: { xmlMode: false, lowerCaseAttributeNames: false, decodeEntities: false } }\nconst browser = cheerioLoad.isCheerioPolyfill // true if we are executing in the browser context\nconst params = {} // teddy parameters\nsetDefaultParams() // set params to the defaults\nlet templates = {} // loaded templates are stored as object collections, e.g. { \"myTemplate.html\": \"<p>some markup</p>\"}\nconst caches = {} // a place to store cached portions of templates\nconst templateCaches = {} // a place to store cached full templates\n\n// #endregion\n\n// #region private methods\n\n// loads the template from the filesystem\nfunction loadTemplate (template) {\n // ensure template is a string\n if (typeof template !== 'string') {\n if (params.verbosity > 1) console.warn('teddy.loadTemplate attempted to load a template which is not a string.')\n return ''\n }\n const name = template\n let register = false\n if (!templates[template] && template.indexOf('<') === -1 && fs && fs.readFileSync) {\n // template is not found, it is not code, and we're in the node.js context\n register = true\n // append extension if not present\n if (template.slice(-5) !== '.html') template += '.html'\n try {\n template = fs.readFileSync(template, 'utf8')\n } catch (e) {\n try {\n template = fs.readFileSync(params.templateRoot + template, 'utf8')\n } catch (e) {\n try {\n template = fs.readFileSync(params.templateRoot + '/' + template, 'utf8')\n } catch (e) {\n // do nothing, attempt to render it as code\n register = false\n }\n }\n }\n } else {\n if (templates[template]) {\n template = templates[template]\n register = true\n } else {\n // didn't find it; append extension if not present and check it again\n if (template.slice(-5) !== '.html') {\n template += '.html'\n }\n if (templates[template]) {\n template = templates[template]\n register = true\n }\n template = removeTeddyComments(template)\n }\n }\n if (register) {\n // register the new template and return the code\n template = removeTeddyComments(template)\n templates[name] = template\n return template\n } else {\n // return the template name which is presumed to be code\n return template.slice(-5) === '.html' ? template.substring(0, template.length - 5) : template\n }\n}\n\n// remove teddy {! comments !} and <!--! comments -->; also replace <!--# content --> with <escape>content</escape>\nfunction removeTeddyComments (renderedTemplate) {\n let oldTemplate\n do {\n oldTemplate = renderedTemplate\n let vars\n\n try {\n vars = matchByDelimiter(renderedTemplate, '{!', '!}')\n } catch (e) {\n return renderedTemplate // it will match {! comments {! with comments in them !} !} but if there are unbalanced brackets, just return the original text\n }\n for (let i = 0; i < vars.length; i++) renderedTemplate = renderedTemplate.replace(`{!${vars[i]}!}`, '')\n\n try {\n vars = matchByDelimiter(renderedTemplate, '<!--!', '-->')\n } catch (e) {\n return renderedTemplate\n }\n for (let i = 0; i < vars.length; i++) renderedTemplate = renderedTemplate.replace(`<!--!${vars[i]}-->`, '')\n\n try {\n vars = matchByDelimiter(renderedTemplate, '<!--#', '-->')\n } catch (e) {\n return renderedTemplate\n }\n for (let i = 0; i < vars.length; i++) renderedTemplate = renderedTemplate.replace(`<!--#${vars[i]}-->`, `<escape>${vars[i]}</escape>`)\n } while (oldTemplate !== renderedTemplate)\n return renderedTemplate\n}\n\n// find all cache elements and replace them with the rendered contents of their cache, then remove the cache element\nfunction replaceCacheElements (dom, model) {\n let parsedTags\n do {\n parsedTags = 0\n const tags = dom('cache:not([defer])')\n if (tags.length > 0) {\n for (const el of tags) {\n if (browser) el.attribs = getAttribs(el)\n const name = el.attribs.name\n if (name.includes('{')) continue\n const key = el.attribs.key || 'none'\n if (key.includes('{')) continue\n const cache = caches[name]\n if (cache && cache.entries) {\n const keyVal = el.attribs.key ? getOrSetObjectByDotNotation(model, key) : 'none'\n if (cache.entries[keyVal]) {\n const now = Date.now()\n // if max age is not set, then there is no max age and the cache content is still valid\n // or if last accessed + max age > now then the cache is not stale and the cache is still valid\n if (!(cache.maxAge && !cache.maxage) || cache.entries[keyVal].lastAccessed + (cache.maxAge || cache.maxage) > now) {\n const cacheContent = cache.entries[keyVal].markup\n cache.entries[keyVal].lastAccessed = now\n dom(el).replaceWith(cacheContent)\n } else {\n // if last accessed + max age <= now then the cache is stale and the cache is no longer valid\n delete caches[name].entries[keyVal]\n dom(el).attr('defer', 'true') // create a new cache\n }\n } else dom(el).attr('defer', 'true') // no cache exists for this yet; create after the template renders\n } else dom(el).attr('defer', 'true') // no cache exists for this yet; create after the template renders\n parsedTags++\n }\n }\n } while (parsedTags)\n return dom\n}\n\n// add an id to all <noteddy> or <noparse> tags, then remove their content temporarily until the template is fully parsed\nfunction tagNoParseBlocks (dom, model) {\n let parsedTags\n do {\n parsedTags = 0\n let tags = dom('noteddy:not([id]), noparse:not([id])')\n if (tags.length > 0) {\n for (const el of tags) {\n const id = model._noTeddyBlocks.push(dom(el).html()) - 1\n dom(el).replaceWith(`<noteddy id=\"${id}\"></noteddy>`)\n parsedTags++\n }